diff --git a/.android.json b/.android.json new file mode 100644 index 00000000..90264eb2 --- /dev/null +++ b/.android.json @@ -0,0 +1 @@ +{"orientation": "sensorLandscape", "include_pil": false, "icon_name": "WT Silver", "google_play_key": null, "layout": null, "source": false, "version": "1.4.1.4", "store": "all", "numeric_version": "1041000", "google_play_salt": null, "expansion": false, "heap_size": "20", "update_icons": true, "include_sqlite": false, "permissions": ["VIBRATE", "INTERNET"], "name": "Witch Trainer: Silver", "package": "com.silverstudiogames.wts", "update_always": true} \ No newline at end of file diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 00000000..837a07bc --- /dev/null +++ b/.editorconfig @@ -0,0 +1,14 @@ + +# EditorConfig https://editorconfig.org/ + +root = true + +[*] +charset = utf-8 +end_of_line = lf +insert_final_newline = true +trim_trailing_whitespace = true + +[*.{py,rpy}] +indent_size = 4 +indent_style = space diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..39a6fda9 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,9 @@ +* text=auto eol=lf +*.png filter=lfs diff=lfs merge=lfs -text +*.webp filter=lfs diff=lfs merge=lfs -text +*.ogg filter=lfs diff=lfs merge=lfs -text +*.webm filter=lfs diff=lfs merge=lfs -text +*.jpg filter=lfs diff=lfs merge=lfs -text +*.ico filter=lfs diff=lfs merge=lfs -text +*.icns filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..94baf20d --- /dev/null +++ b/.gitignore @@ -0,0 +1,62 @@ + +# General +*.tmp +*.log +*.bak + +# Windows/Mac garbage files +Thumbs.db +ehthumbs.db +Desktop.ini +$RECYCLE.BIN/ +.DS_Store + +# Python +*.py[cod] + +# Python packages +*.egg +*.egg-info +dist/ +build/ +eggs/ +parts/ +var/ +sdist/ +develop-eggs/ +.installed.cfg +pip-log.txt + +# VS Code +.vscode/ + +# Ren'py +*.rpyb +*.rpyc +*.rpymc + +# Ren'py data +game/saves/ +game/cache/ +project.json +android.json + +# Ren'py logs +traceback.txt +log.txt +errors.txt +image_cache.txt +lint.txt + +# Graphics +*.kra +*.kra~ +*.psd +*.psd~ +*.png~ +*.webp~ +*.sai2 + +# Patches +*.zip +old-game/ diff --git a/LICENSE b/LICENSE index c9287dd3..6df604b8 100644 --- a/LICENSE +++ b/LICENSE @@ -1,3 +1,8 @@ +############################################################################################### +# The following license applies to all code source files except files known as 'game assets', # +# or source files already containing another type of a license. # +############################################################################################### + GNU LESSER GENERAL PUBLIC LICENSE Version 3, 29 June 2007 diff --git a/README.md b/README.md index 44bd5802..5b57eb2f 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,38 @@ -# WT-Silver +![# Witch Trainer: Silver](https://1.bp.blogspot.com/--t9cxuok8JU/YUurd9fYbLI/AAAAAAAAABc/EbEFemd0TxUXoiQVeDArIY7hmCQPVw1jACNcBGAsYHQ/w400-h278/title.png) +This repository contains all of the game's source code. If you are searching for the most recent stable build, please [visit our website's download page](https://www.silverstudiogames.org/p/download.html) instead. + +The development takes place on the `dev` branch, and occasionally on feature branches, `main` branch is reserved for game releases. + +# Developers: +Johnny28, LoafyLemon, Boppin + +# Contributors: +MaiL, Mo, UE CatBug, Lineup, Soggy, Asease1, Linear, Lupin, Techy, Dr. Noodle, MadMerlin, DostojevskijSTG, STG Artguy, Crew, Ven, perniciousducks, Cleanzo, Darwin7, Pinguino, Sandmaster, Amadan, Heretic, Maverick, Anon, MedicBear, TropeCode, Booom313, CaptainNemo, and anonymous. + +# Requirements: +* Renpy 7.5+ +* Python 2.7 + +# Documentation +TBD + +# Translating +TBD + +# FAQ: + +#### Where can I support Witch Trainer: Silver? +You can support us on [patreon](https://www.patreon.com/SilverStudioGames). + +#### I have found a bug, how do I report it? +Please make a report on the [discord](https://discord.gg/UbQeTCJ5RW). + +#### Can I receive access to the issue tracker? +Yes, upon review we may grant you access to the repository. Contact us on [discord](https://discord.gg/UbQeTCJ5RW) for details. + +#### Can I make a pull request? +Bug fixes and enhancements are welcome, but content submissions must be thoroughly evaluated before they are accepted. + +#### Why is the registration closed? +Our server resources are limited, we need to conserve them. We may re-open registration in the future. diff --git a/android-icon_background.png b/android-icon_background.png new file mode 100644 index 00000000..cff50df6 --- /dev/null +++ b/android-icon_background.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5325282928f07bde993237dedcf112a7e03186eefdd7e3a81f266a900c229ba +size 55071 diff --git a/android-icon_foreground.png b/android-icon_foreground.png new file mode 100644 index 00000000..2ca7fa0e --- /dev/null +++ b/android-icon_foreground.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25fb97999b892101ed21b040b07cc03a681eaa0ed924de5d790ab51bc7eb9d6d +size 7446 diff --git a/android-presplash.jpg b/android-presplash.jpg new file mode 100644 index 00000000..d5065958 --- /dev/null +++ b/android-presplash.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2070b44b629d06f348f69b343ce6c68dc726fcd69651ae69f14d344bc39aaaa +size 225181 diff --git a/game/characters/astoria/body/armleft/on_hips.webp b/game/characters/astoria/body/armleft/on_hips.webp new file mode 100644 index 00000000..262c7f9d --- /dev/null +++ b/game/characters/astoria/body/armleft/on_hips.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f526f0c288aaee88c077af126a86513300994798eb9e3ddc9971b717229174e1 +size 13080 diff --git a/game/characters/astoria/body/armleft/on_hips_fix.webp b/game/characters/astoria/body/armleft/on_hips_fix.webp new file mode 100644 index 00000000..56458ffd --- /dev/null +++ b/game/characters/astoria/body/armleft/on_hips_fix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a32c1e69a75188f9cab0f3e31c7967f894a0126c3e1bc43fff431b0c015b7113 +size 4794 diff --git a/game/characters/astoria/body/armright/on_hips.webp b/game/characters/astoria/body/armright/on_hips.webp new file mode 100644 index 00000000..83895df3 --- /dev/null +++ b/game/characters/astoria/body/armright/on_hips.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d8ef470d7a0ad028df5dfaf19f443c5ee943fcbf05de4b2a46f7d763825172c +size 11832 diff --git a/game/characters/astoria/body/armright/on_hips_fix.webp b/game/characters/astoria/body/armright/on_hips_fix.webp new file mode 100644 index 00000000..8e2447be --- /dev/null +++ b/game/characters/astoria/body/armright/on_hips_fix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:329e18bfcffaca912bb15bd6cfa5f22c36e5e5322f0b539a1cc2c29b49fe960a +size 6846 diff --git a/game/characters/astoria/body/base/front.webp b/game/characters/astoria/body/base/front.webp new file mode 100644 index 00000000..d78b3d87 --- /dev/null +++ b/game/characters/astoria/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e47362e920b3f917cb6914855821faaedba4b7a278f62daa72b4ec577708a7a6 +size 49660 diff --git a/game/characters/astoria/body/breasts/normal.webp b/game/characters/astoria/body/breasts/normal.webp new file mode 100644 index 00000000..ef6f20e8 --- /dev/null +++ b/game/characters/astoria/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afe997a209491b6f4c0535813ad99782ad7f413c4964aa1a573b78c131d54973 +size 10144 diff --git a/game/characters/astoria/body/breasts/normal_tight.webp b/game/characters/astoria/body/breasts/normal_tight.webp new file mode 100644 index 00000000..cb800b05 --- /dev/null +++ b/game/characters/astoria/body/breasts/normal_tight.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:047330c77145308612801ad6fe313823eeb1048f1885d207c9c59a8eefc7ef03 +size 11072 diff --git a/game/characters/astoria/chibis/ag_robe.webp b/game/characters/astoria/chibis/ag_robe.webp new file mode 100644 index 00000000..2807d15c --- /dev/null +++ b/game/characters/astoria/chibis/ag_robe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c93a3024cbaf615611ffb3b79216112353b1171b8afc92caa692fd1942cf40f1 +size 13638 diff --git a/game/characters/astoria/chibis/ag_shoes.webp b/game/characters/astoria/chibis/ag_shoes.webp new file mode 100644 index 00000000..72345cf1 --- /dev/null +++ b/game/characters/astoria/chibis/ag_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:893430c149210a3175b647576b3661c71ae77dc934d6b2b8972552743a86e28b +size 2832 diff --git a/game/characters/astoria/chibis/ag_skirt.webp b/game/characters/astoria/chibis/ag_skirt.webp new file mode 100644 index 00000000..39170b7f --- /dev/null +++ b/game/characters/astoria/chibis/ag_skirt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91e2f5e8215012c708efc789be0154ca97629b0d332980a9b27524a79176d2ce +size 3422 diff --git a/game/characters/astoria/chibis/ag_stand_blink.webp b/game/characters/astoria/chibis/ag_stand_blink.webp new file mode 100644 index 00000000..8bcf334b --- /dev/null +++ b/game/characters/astoria/chibis/ag_stand_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f05d4c887493347b04260907bc46c980c95c275948688fce5cfd1e1738bb8c84 +size 17606 diff --git a/game/characters/astoria/chibis/ag_top.webp b/game/characters/astoria/chibis/ag_top.webp new file mode 100644 index 00000000..d63a1d1a --- /dev/null +++ b/game/characters/astoria/chibis/ag_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a90ca6e8ca10425f3ad08416ebe54768d23a406d637fd1d2c1f3a521dce297d +size 4816 diff --git a/game/characters/astoria/chibis/ag_walk_01.webp b/game/characters/astoria/chibis/ag_walk_01.webp new file mode 100644 index 00000000..0d8fc90f --- /dev/null +++ b/game/characters/astoria/chibis/ag_walk_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a501a2796c2f07ea82fb77cb9c62e3cb1db475a21361fde2e516b2d4137febd5 +size 17868 diff --git a/game/characters/astoria/chibis/ag_walk_01_shoes.webp b/game/characters/astoria/chibis/ag_walk_01_shoes.webp new file mode 100644 index 00000000..72345cf1 --- /dev/null +++ b/game/characters/astoria/chibis/ag_walk_01_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:893430c149210a3175b647576b3661c71ae77dc934d6b2b8972552743a86e28b +size 2832 diff --git a/game/characters/astoria/chibis/ag_walk_02.webp b/game/characters/astoria/chibis/ag_walk_02.webp new file mode 100644 index 00000000..c3c810cc --- /dev/null +++ b/game/characters/astoria/chibis/ag_walk_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90f1b2a619e08b862a5e29313daa3394552ea562bf8ac5bb743f416ccdcbc2ef +size 17178 diff --git a/game/characters/astoria/chibis/ag_walk_02_shoes.webp b/game/characters/astoria/chibis/ag_walk_02_shoes.webp new file mode 100644 index 00000000..fcc23632 --- /dev/null +++ b/game/characters/astoria/chibis/ag_walk_02_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b29a61e9c808869615f4c5387fc919958c538d384fc7f19114206110d1b02f8 +size 2392 diff --git a/game/characters/astoria/chibis/ag_walk_03.webp b/game/characters/astoria/chibis/ag_walk_03.webp new file mode 100644 index 00000000..0db1538c --- /dev/null +++ b/game/characters/astoria/chibis/ag_walk_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce313d6e398685ca5810d2e8ec89bd8aab15b7c917680cf16b4d579c40cba20e +size 18020 diff --git a/game/characters/astoria/chibis/ag_walk_03_shoes.webp b/game/characters/astoria/chibis/ag_walk_03_shoes.webp new file mode 100644 index 00000000..5f7808be --- /dev/null +++ b/game/characters/astoria/chibis/ag_walk_03_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6082274a9f4415f7dc2bcbfe3a04592eb887ad035f573ddbd9cce85bb10d90fa +size 2972 diff --git a/game/characters/astoria/chibis/ag_walk_04.webp b/game/characters/astoria/chibis/ag_walk_04.webp new file mode 100644 index 00000000..e14270fc --- /dev/null +++ b/game/characters/astoria/chibis/ag_walk_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:adb9f83b2c1d4e427b8a9960313ea73fdd511ea95df27dae716341c74a5ef33e +size 18204 diff --git a/game/characters/astoria/chibis/ag_walk_04_shoes.webp b/game/characters/astoria/chibis/ag_walk_04_shoes.webp new file mode 100644 index 00000000..146ed5a7 --- /dev/null +++ b/game/characters/astoria/chibis/ag_walk_04_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e5d2a8998f817fe5713199e72909df4b1b82c2960b11fa4181693ce79b547a4 +size 2964 diff --git a/game/characters/astoria/chibis/ag_walk_05.webp b/game/characters/astoria/chibis/ag_walk_05.webp new file mode 100644 index 00000000..16d8d030 --- /dev/null +++ b/game/characters/astoria/chibis/ag_walk_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db1eb0d482e13e4ba6c1225c046a9d2df5229eb6364635167a7b7ea38d22d5ae +size 18252 diff --git a/game/characters/astoria/chibis/ag_walk_05_shoes.webp b/game/characters/astoria/chibis/ag_walk_05_shoes.webp new file mode 100644 index 00000000..11705270 --- /dev/null +++ b/game/characters/astoria/chibis/ag_walk_05_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:477f39ccae1ad2bc9527c3300d9fdf5d6bb68cef1488b462697e360ff567ea58 +size 2992 diff --git a/game/characters/astoria/chibis/wand.webp b/game/characters/astoria/chibis/wand.webp new file mode 100644 index 00000000..8edd5834 --- /dev/null +++ b/game/characters/astoria/chibis/wand.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f998de199f4ed8f661750829445b591526272a2cb073bd11b8b82763defd663c +size 2086 diff --git a/game/characters/astoria/chibis/wand/ag_head_01.webp b/game/characters/astoria/chibis/wand/ag_head_01.webp new file mode 100644 index 00000000..59086bcd --- /dev/null +++ b/game/characters/astoria/chibis/wand/ag_head_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be6bb99d47e27e819796f9143bbb52145e0988b8f4cac77a99454fc68e1a6d6d +size 10592 diff --git a/game/characters/astoria/chibis/wand/ag_head_02.webp b/game/characters/astoria/chibis/wand/ag_head_02.webp new file mode 100644 index 00000000..fb85b16e --- /dev/null +++ b/game/characters/astoria/chibis/wand/ag_head_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c36f8d21af0cdfeb5e167ca471587e3313ff59af8feca5b70867bd7eda27bbbd +size 10322 diff --git a/game/characters/astoria/chibis/wand/ag_shoes.webp b/game/characters/astoria/chibis/wand/ag_shoes.webp new file mode 100644 index 00000000..32ff9b07 --- /dev/null +++ b/game/characters/astoria/chibis/wand/ag_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:595824052836f818394e7e87267f27b53ad3473c8673a50cc298993e9008d792 +size 2864 diff --git a/game/characters/astoria/chibis/wand/ag_skirt.webp b/game/characters/astoria/chibis/wand/ag_skirt.webp new file mode 100644 index 00000000..bb67e0e6 --- /dev/null +++ b/game/characters/astoria/chibis/wand/ag_skirt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0552811208dcc1c3e9491b22a230b5cfca6a2ac9f77dcab16238c1befe3d652d +size 3500 diff --git a/game/characters/astoria/chibis/wand/ag_stand_01.webp b/game/characters/astoria/chibis/wand/ag_stand_01.webp new file mode 100644 index 00000000..1800c1c2 --- /dev/null +++ b/game/characters/astoria/chibis/wand/ag_stand_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82dadc65e0425700784f2c32a9fbf764f9a9170fb27f16ad53bdc0e0e3267f37 +size 11754 diff --git a/game/characters/astoria/chibis/wand/ag_top.webp b/game/characters/astoria/chibis/wand/ag_top.webp new file mode 100644 index 00000000..dd9f6045 --- /dev/null +++ b/game/characters/astoria/chibis/wand/ag_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75594959c1d04afa32dc23f6171e0c8737aaf9e1fc098e2efc1224d6e6a13170 +size 4964 diff --git a/game/characters/astoria/chibis/wand_casting/ag_head_01.webp b/game/characters/astoria/chibis/wand_casting/ag_head_01.webp new file mode 100644 index 00000000..59086bcd --- /dev/null +++ b/game/characters/astoria/chibis/wand_casting/ag_head_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be6bb99d47e27e819796f9143bbb52145e0988b8f4cac77a99454fc68e1a6d6d +size 10592 diff --git a/game/characters/astoria/chibis/wand_casting/ag_head_02.webp b/game/characters/astoria/chibis/wand_casting/ag_head_02.webp new file mode 100644 index 00000000..fb85b16e --- /dev/null +++ b/game/characters/astoria/chibis/wand_casting/ag_head_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c36f8d21af0cdfeb5e167ca471587e3313ff59af8feca5b70867bd7eda27bbbd +size 10322 diff --git a/game/characters/astoria/chibis/wand_casting/ag_shoes.webp b/game/characters/astoria/chibis/wand_casting/ag_shoes.webp new file mode 100644 index 00000000..baf2e0dc --- /dev/null +++ b/game/characters/astoria/chibis/wand_casting/ag_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c8d6795b7fe9c2db755ad62aaceb7e27817ebd0841161f38e298b310a0fcbe8 +size 3026 diff --git a/game/characters/astoria/chibis/wand_casting/ag_skirt.webp b/game/characters/astoria/chibis/wand_casting/ag_skirt.webp new file mode 100644 index 00000000..45379867 --- /dev/null +++ b/game/characters/astoria/chibis/wand_casting/ag_skirt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25bec6687ffac195de3604a1f5371f53433020d28ffb1010a49a88a99e56a29d +size 3652 diff --git a/game/characters/astoria/chibis/wand_casting/ag_stand_01.webp b/game/characters/astoria/chibis/wand_casting/ag_stand_01.webp new file mode 100644 index 00000000..40ace2e8 --- /dev/null +++ b/game/characters/astoria/chibis/wand_casting/ag_stand_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:985782e34d61fc9c1911c644f83f657c02b1a04225297207340b3f97728c69ba +size 11738 diff --git a/game/characters/astoria/chibis/wand_casting/ag_stand_02.webp b/game/characters/astoria/chibis/wand_casting/ag_stand_02.webp new file mode 100644 index 00000000..a616a26f --- /dev/null +++ b/game/characters/astoria/chibis/wand_casting/ag_stand_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83e78a789feaee1103214694da42fe544c44d7a3c247cc9a2befea29329615e5 +size 12428 diff --git a/game/characters/astoria/chibis/wand_casting/ag_stand_03.webp b/game/characters/astoria/chibis/wand_casting/ag_stand_03.webp new file mode 100644 index 00000000..7e4b9ffc --- /dev/null +++ b/game/characters/astoria/chibis/wand_casting/ag_stand_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fecaf7f8882966151b2241522c63533b978675e299997e71f49b1ffb47c9a93f +size 12648 diff --git a/game/characters/astoria/chibis/wand_casting/ag_top.webp b/game/characters/astoria/chibis/wand_casting/ag_top.webp new file mode 100644 index 00000000..db90082b --- /dev/null +++ b/game/characters/astoria/chibis/wand_casting/ag_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:beb196e7b4e147774310436b1aedaa822484dbfe93f8d9289aabb636b5a26855 +size 5006 diff --git a/game/characters/astoria/chibis/wand_casting/sparkles.webp b/game/characters/astoria/chibis/wand_casting/sparkles.webp new file mode 100644 index 00000000..8bdea846 --- /dev/null +++ b/game/characters/astoria/chibis/wand_casting/sparkles.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e791c2e34b302d475db2857565ab512090d3a7430b495bd6c8ba01990068796 +size 420 diff --git a/game/characters/astoria/chibis/wand_imperio/ag_head_01.webp b/game/characters/astoria/chibis/wand_imperio/ag_head_01.webp new file mode 100644 index 00000000..59086bcd --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/ag_head_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be6bb99d47e27e819796f9143bbb52145e0988b8f4cac77a99454fc68e1a6d6d +size 10592 diff --git a/game/characters/astoria/chibis/wand_imperio/ag_head_02.webp b/game/characters/astoria/chibis/wand_imperio/ag_head_02.webp new file mode 100644 index 00000000..fb85b16e --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/ag_head_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c36f8d21af0cdfeb5e167ca471587e3313ff59af8feca5b70867bd7eda27bbbd +size 10322 diff --git a/game/characters/astoria/chibis/wand_imperio/ag_head_03.webp b/game/characters/astoria/chibis/wand_imperio/ag_head_03.webp new file mode 100644 index 00000000..ef46a1d5 --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/ag_head_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f657b711e64786089f99254302133f959036f14b45cd1db74984d5422357ff8 +size 10398 diff --git a/game/characters/astoria/chibis/wand_imperio/ag_shoes.webp b/game/characters/astoria/chibis/wand_imperio/ag_shoes.webp new file mode 100644 index 00000000..e24f5e65 --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/ag_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c14bcb0d3e95f12c2555356922962aa867e94d2d34e5d9611848e567e9fc5642 +size 2988 diff --git a/game/characters/astoria/chibis/wand_imperio/ag_shoes_04.webp b/game/characters/astoria/chibis/wand_imperio/ag_shoes_04.webp new file mode 100644 index 00000000..baf2e0dc --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/ag_shoes_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c8d6795b7fe9c2db755ad62aaceb7e27817ebd0841161f38e298b310a0fcbe8 +size 3026 diff --git a/game/characters/astoria/chibis/wand_imperio/ag_skirt.webp b/game/characters/astoria/chibis/wand_imperio/ag_skirt.webp new file mode 100644 index 00000000..45379867 --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/ag_skirt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25bec6687ffac195de3604a1f5371f53433020d28ffb1010a49a88a99e56a29d +size 3652 diff --git a/game/characters/astoria/chibis/wand_imperio/ag_stand_01.webp b/game/characters/astoria/chibis/wand_imperio/ag_stand_01.webp new file mode 100644 index 00000000..544a64c4 --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/ag_stand_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc7887bd6f4120973d3cb701615085c4a1c92f577100596aa26e40c83c821cac +size 13024 diff --git a/game/characters/astoria/chibis/wand_imperio/ag_stand_02.webp b/game/characters/astoria/chibis/wand_imperio/ag_stand_02.webp new file mode 100644 index 00000000..73caf901 --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/ag_stand_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e57dc3df59cb52b8f5ab7d78e01ed5c8fc94d7e60cf5e2bbcec15e89264ce226 +size 13728 diff --git a/game/characters/astoria/chibis/wand_imperio/ag_stand_03.webp b/game/characters/astoria/chibis/wand_imperio/ag_stand_03.webp new file mode 100644 index 00000000..303200ed --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/ag_stand_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c79506c2ee34cfa79e72ba66f4b05cf391d11d502a05660e8da111da142a098b +size 13960 diff --git a/game/characters/astoria/chibis/wand_imperio/ag_stand_04.webp b/game/characters/astoria/chibis/wand_imperio/ag_stand_04.webp new file mode 100644 index 00000000..a616a26f --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/ag_stand_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83e78a789feaee1103214694da42fe544c44d7a3c247cc9a2befea29329615e5 +size 12428 diff --git a/game/characters/astoria/chibis/wand_imperio/ag_top.webp b/game/characters/astoria/chibis/wand_imperio/ag_top.webp new file mode 100644 index 00000000..db90082b --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/ag_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:beb196e7b4e147774310436b1aedaa822484dbfe93f8d9289aabb636b5a26855 +size 5006 diff --git a/game/characters/astoria/chibis/wand_imperio/smoke.webp b/game/characters/astoria/chibis/wand_imperio/smoke.webp new file mode 100644 index 00000000..f4670a68 --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/smoke.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09b88545e9bafc29753efdfa4a7a2c9ac9ce289d23b7f70147fb701a7f60020e +size 2732 diff --git a/game/characters/astoria/chibis/wand_imperio/sparkles.webp b/game/characters/astoria/chibis/wand_imperio/sparkles.webp new file mode 100644 index 00000000..8bdea846 --- /dev/null +++ b/game/characters/astoria/chibis/wand_imperio/sparkles.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e791c2e34b302d475db2857565ab512090d3a7430b495bd6c8ba01990068796 +size 420 diff --git a/game/characters/astoria/clothes/accessory/ann_takamaki/0.webp b/game/characters/astoria/clothes/accessory/ann_takamaki/0.webp new file mode 100644 index 00000000..e20e54e9 --- /dev/null +++ b/game/characters/astoria/clothes/accessory/ann_takamaki/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42e221a9444038765a1436d031dea75a283fa8c744085e8f47a29684b23bcdb2 +size 3750 diff --git a/game/characters/astoria/clothes/accessory/ann_takamaki/1.webp b/game/characters/astoria/clothes/accessory/ann_takamaki/1.webp new file mode 100644 index 00000000..8c3a84be --- /dev/null +++ b/game/characters/astoria/clothes/accessory/ann_takamaki/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:542c36497366c946d2d42d1f47f064b19e01f2c6be60092d13b9d4e55b1cd89d +size 1414 diff --git a/game/characters/astoria/clothes/accessory/ann_takamaki/outline.webp b/game/characters/astoria/clothes/accessory/ann_takamaki/outline.webp new file mode 100644 index 00000000..28a80ba7 --- /dev/null +++ b/game/characters/astoria/clothes/accessory/ann_takamaki/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ee01c032bef76902e92c44e7a42c40a9da4583bfcb085a0e3ca1657ecf99c8b +size 6110 diff --git a/game/characters/astoria/clothes/bottom/pants_1/0.webp b/game/characters/astoria/clothes/bottom/pants_1/0.webp new file mode 100644 index 00000000..b54a8f0d --- /dev/null +++ b/game/characters/astoria/clothes/bottom/pants_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be069f6b61329b46237c3837815823154449253d75c643338eeb15bd33a22dd7 +size 7452 diff --git a/game/characters/astoria/clothes/bottom/pants_1/1.webp b/game/characters/astoria/clothes/bottom/pants_1/1.webp new file mode 100644 index 00000000..72b65e3c --- /dev/null +++ b/game/characters/astoria/clothes/bottom/pants_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae8e517d4f3da5e011cf0eec0df80cad1bc7731e689c01f4982097a791eee38a +size 686 diff --git a/game/characters/astoria/clothes/bottom/pants_1/extra.webp b/game/characters/astoria/clothes/bottom/pants_1/extra.webp new file mode 100644 index 00000000..3fd0518f --- /dev/null +++ b/game/characters/astoria/clothes/bottom/pants_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3b6c1731d60ae42723c2dca5961b49303bfe37277a52e456872f3db17526c5e +size 1844 diff --git a/game/characters/astoria/clothes/bottom/pants_1/outline.webp b/game/characters/astoria/clothes/bottom/pants_1/outline.webp new file mode 100644 index 00000000..5acec3ee --- /dev/null +++ b/game/characters/astoria/clothes/bottom/pants_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbd0325458152602f823cbbd1988375efc0ba81194c16714efb6ea7237334781 +size 10854 diff --git a/game/characters/astoria/clothes/bottom/pants_1/skin.webp b/game/characters/astoria/clothes/bottom/pants_1/skin.webp new file mode 100644 index 00000000..a694316a --- /dev/null +++ b/game/characters/astoria/clothes/bottom/pants_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f61a43d7c2713c9788ce04d3cbba6a6ffbfd65ee13742ff17de378826f0605e4 +size 1682 diff --git a/game/characters/astoria/clothes/bottom/pants_1_short/0.webp b/game/characters/astoria/clothes/bottom/pants_1_short/0.webp new file mode 100644 index 00000000..0edd42fe --- /dev/null +++ b/game/characters/astoria/clothes/bottom/pants_1_short/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c10f7747dd431dc93594ca187b4a90142d6619bb4b56d9851c70c1fa755207b6 +size 4548 diff --git a/game/characters/astoria/clothes/bottom/pants_1_short/1.webp b/game/characters/astoria/clothes/bottom/pants_1_short/1.webp new file mode 100644 index 00000000..6f980145 --- /dev/null +++ b/game/characters/astoria/clothes/bottom/pants_1_short/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b75917d6b7735f8bbafa83514df2e56b8f97c6e8190194bfebb119b6ce85d41d +size 594 diff --git a/game/characters/astoria/clothes/bottom/pants_1_short/extra.webp b/game/characters/astoria/clothes/bottom/pants_1_short/extra.webp new file mode 100644 index 00000000..7f8ce92d --- /dev/null +++ b/game/characters/astoria/clothes/bottom/pants_1_short/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75322eed42055c7afad8583dc8ed08fb36ea6f2f0a8dcc87086731ffcae8c01a +size 1236 diff --git a/game/characters/astoria/clothes/bottom/pants_1_short/outline.webp b/game/characters/astoria/clothes/bottom/pants_1_short/outline.webp new file mode 100644 index 00000000..d147a11f --- /dev/null +++ b/game/characters/astoria/clothes/bottom/pants_1_short/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16f77647c6c59c2ab3f20bb800b59bb9a208e2938758729b71730ebf743dc251 +size 7456 diff --git a/game/characters/astoria/clothes/bottom/pants_1_short/skin.webp b/game/characters/astoria/clothes/bottom/pants_1_short/skin.webp new file mode 100644 index 00000000..606caef6 --- /dev/null +++ b/game/characters/astoria/clothes/bottom/pants_1_short/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc3c1322b4b44e4b033aac9dabaf2b8a1580c7a6cb3aa2a94289aaf75faec4fb +size 3064 diff --git a/game/characters/astoria/clothes/bottom/school_skirt_1/0.webp b/game/characters/astoria/clothes/bottom/school_skirt_1/0.webp new file mode 100644 index 00000000..15b5f4cc --- /dev/null +++ b/game/characters/astoria/clothes/bottom/school_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b520abb6bd94edee17f65581847d40f93e9ae6dbc62f1c309a74a5563d4671c +size 20860 diff --git a/game/characters/astoria/clothes/bottom/school_skirt_1/1.webp b/game/characters/astoria/clothes/bottom/school_skirt_1/1.webp new file mode 100644 index 00000000..f4d30e2a --- /dev/null +++ b/game/characters/astoria/clothes/bottom/school_skirt_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00a6a13664bf12fd3c1736527627530271bb5f2524abca32e1d7ed80347bff76 +size 666 diff --git a/game/characters/astoria/clothes/bottom/school_skirt_1/outline.webp b/game/characters/astoria/clothes/bottom/school_skirt_1/outline.webp new file mode 100644 index 00000000..224b9aad --- /dev/null +++ b/game/characters/astoria/clothes/bottom/school_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6baeda66e814b99ac85f122c6461363af40f63df399bee90b9ce40ee00002c4a +size 21038 diff --git a/game/characters/astoria/clothes/bottom/school_skirt_2/0.webp b/game/characters/astoria/clothes/bottom/school_skirt_2/0.webp new file mode 100644 index 00000000..c999d80a --- /dev/null +++ b/game/characters/astoria/clothes/bottom/school_skirt_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6479f0a1e4e7609af84e00b3b4c38fe86d3c086b255ee9174bc9227c74c57bca +size 14840 diff --git a/game/characters/astoria/clothes/bottom/school_skirt_2/1.webp b/game/characters/astoria/clothes/bottom/school_skirt_2/1.webp new file mode 100644 index 00000000..f4d30e2a --- /dev/null +++ b/game/characters/astoria/clothes/bottom/school_skirt_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00a6a13664bf12fd3c1736527627530271bb5f2524abca32e1d7ed80347bff76 +size 666 diff --git a/game/characters/astoria/clothes/bottom/school_skirt_2/outline.webp b/game/characters/astoria/clothes/bottom/school_skirt_2/outline.webp new file mode 100644 index 00000000..69d2d210 --- /dev/null +++ b/game/characters/astoria/clothes/bottom/school_skirt_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e54e304046556f87d6b153f13a459eddf1aaa450289612b57d1d2b66917a055f +size 13818 diff --git a/game/characters/astoria/clothes/bottom/school_skirt_3/0.webp b/game/characters/astoria/clothes/bottom/school_skirt_3/0.webp new file mode 100644 index 00000000..54c807a9 --- /dev/null +++ b/game/characters/astoria/clothes/bottom/school_skirt_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c6c69ee6df2e3c62a5ea924b7a37d589a7cf0b79131835c0d92ba4f069bd795 +size 10878 diff --git a/game/characters/astoria/clothes/bottom/school_skirt_3/1.webp b/game/characters/astoria/clothes/bottom/school_skirt_3/1.webp new file mode 100644 index 00000000..f4d30e2a --- /dev/null +++ b/game/characters/astoria/clothes/bottom/school_skirt_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00a6a13664bf12fd3c1736527627530271bb5f2524abca32e1d7ed80347bff76 +size 666 diff --git a/game/characters/astoria/clothes/bottom/school_skirt_3/outline.webp b/game/characters/astoria/clothes/bottom/school_skirt_3/outline.webp new file mode 100644 index 00000000..bb0b092d --- /dev/null +++ b/game/characters/astoria/clothes/bottom/school_skirt_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8689d73d7108dc4da025f6641521444423c40495de8f0aa23c76f6905d685124 +size 9860 diff --git a/game/characters/astoria/clothes/bottom/school_skirt_4/0.webp b/game/characters/astoria/clothes/bottom/school_skirt_4/0.webp new file mode 100644 index 00000000..6b2f93cf --- /dev/null +++ b/game/characters/astoria/clothes/bottom/school_skirt_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5554f840696fa2b7baa90734566652ae88dd5b0e1098ffcd40d41e0057ea393 +size 8512 diff --git a/game/characters/astoria/clothes/bottom/school_skirt_4/1.webp b/game/characters/astoria/clothes/bottom/school_skirt_4/1.webp new file mode 100644 index 00000000..f4d30e2a --- /dev/null +++ b/game/characters/astoria/clothes/bottom/school_skirt_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00a6a13664bf12fd3c1736527627530271bb5f2524abca32e1d7ed80347bff76 +size 666 diff --git a/game/characters/astoria/clothes/bottom/school_skirt_4/outline.webp b/game/characters/astoria/clothes/bottom/school_skirt_4/outline.webp new file mode 100644 index 00000000..9a201ff7 --- /dev/null +++ b/game/characters/astoria/clothes/bottom/school_skirt_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac3d39de138b87251f894a5de2b6baa6f0ec5f439d1b9203a7de3e42e3c83883 +size 7930 diff --git a/game/characters/astoria/clothes/bra/basic_bra_1/0.webp b/game/characters/astoria/clothes/bra/basic_bra_1/0.webp new file mode 100644 index 00000000..fe935723 --- /dev/null +++ b/game/characters/astoria/clothes/bra/basic_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8501cf7b1234163ac30141951ee125469dababb54ea4b1c3354c5ec1d795fd9 +size 5750 diff --git a/game/characters/astoria/clothes/bra/basic_bra_1/1.webp b/game/characters/astoria/clothes/bra/basic_bra_1/1.webp new file mode 100644 index 00000000..9b8f1322 --- /dev/null +++ b/game/characters/astoria/clothes/bra/basic_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:672a5896ea3028e2994dfb3ecebfa5b6b249b8ee3f7fe087aae112e5ea8ed302 +size 4286 diff --git a/game/characters/astoria/clothes/bra/basic_bra_1/outline.webp b/game/characters/astoria/clothes/bra/basic_bra_1/outline.webp new file mode 100644 index 00000000..8a3e88cb --- /dev/null +++ b/game/characters/astoria/clothes/bra/basic_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb248c201cc302f0857d32325e10e3603f6d6067959c5618da21b316312eed7a +size 9596 diff --git a/game/characters/astoria/clothes/bra/basic_bra_1/skin.webp b/game/characters/astoria/clothes/bra/basic_bra_1/skin.webp new file mode 100644 index 00000000..0898b147 --- /dev/null +++ b/game/characters/astoria/clothes/bra/basic_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3a8e898ecac533c6b77ad4dded5d08a3419e68f0c1264d9972d6fa9b0582250 +size 2218 diff --git a/game/characters/astoria/clothes/bra/basic_bra_2/0.webp b/game/characters/astoria/clothes/bra/basic_bra_2/0.webp new file mode 100644 index 00000000..fe935723 --- /dev/null +++ b/game/characters/astoria/clothes/bra/basic_bra_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8501cf7b1234163ac30141951ee125469dababb54ea4b1c3354c5ec1d795fd9 +size 5750 diff --git a/game/characters/astoria/clothes/bra/basic_bra_2/outline.webp b/game/characters/astoria/clothes/bra/basic_bra_2/outline.webp new file mode 100644 index 00000000..5fc0c8b4 --- /dev/null +++ b/game/characters/astoria/clothes/bra/basic_bra_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4785d3dc8f8f04a4047d0a7f351d680571bcc30af793ea4aee4d389e60951d6 +size 5546 diff --git a/game/characters/astoria/clothes/bra/basic_bra_2/skin.webp b/game/characters/astoria/clothes/bra/basic_bra_2/skin.webp new file mode 100644 index 00000000..0898b147 --- /dev/null +++ b/game/characters/astoria/clothes/bra/basic_bra_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3a8e898ecac533c6b77ad4dded5d08a3419e68f0c1264d9972d6fa9b0582250 +size 2218 diff --git a/game/characters/astoria/clothes/gloves/ann_takamaki/0.webp b/game/characters/astoria/clothes/gloves/ann_takamaki/0.webp new file mode 100644 index 00000000..e2af36ad --- /dev/null +++ b/game/characters/astoria/clothes/gloves/ann_takamaki/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad328801938fc54822a9e3131ecd95e2aae459bcc207a990ea5baa586a96eedf +size 4786 diff --git a/game/characters/astoria/clothes/gloves/ann_takamaki/outline.webp b/game/characters/astoria/clothes/gloves/ann_takamaki/outline.webp new file mode 100644 index 00000000..9c586df8 --- /dev/null +++ b/game/characters/astoria/clothes/gloves/ann_takamaki/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db92b3cdf733b2bf0f077ed461c9133d9936a820ae87d82c6c0ace893c3c1098 +size 4642 diff --git a/game/characters/astoria/clothes/hair/ann_takamaki/0.webp b/game/characters/astoria/clothes/hair/ann_takamaki/0.webp new file mode 100644 index 00000000..a270827c --- /dev/null +++ b/game/characters/astoria/clothes/hair/ann_takamaki/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e454b1fa2f2d2f54653f1a0f93c5c85b14825a3b43c65a9a235f1c1f4db2640 +size 5560 diff --git a/game/characters/astoria/clothes/hair/ann_takamaki/0_front.webp b/game/characters/astoria/clothes/hair/ann_takamaki/0_front.webp new file mode 100644 index 00000000..c72fd0ee --- /dev/null +++ b/game/characters/astoria/clothes/hair/ann_takamaki/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f1856da78f3563048ae559303d649d5124a88666d3c71094344379f39c16a68 +size 2792 diff --git a/game/characters/astoria/clothes/hair/ann_takamaki/1.webp b/game/characters/astoria/clothes/hair/ann_takamaki/1.webp new file mode 100644 index 00000000..26e00469 --- /dev/null +++ b/game/characters/astoria/clothes/hair/ann_takamaki/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6091b721e4489fb14719e31c8984656ad58017e6e72bdd71d56fbf457f0d8899 +size 11694 diff --git a/game/characters/astoria/clothes/hair/ann_takamaki/1_front.webp b/game/characters/astoria/clothes/hair/ann_takamaki/1_front.webp new file mode 100644 index 00000000..69d62dd9 --- /dev/null +++ b/game/characters/astoria/clothes/hair/ann_takamaki/1_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a1e2088ea482a2a9cda28fcb3095e6600ace11b81a0f47b2c9d1d565340bd59 +size 4378 diff --git a/game/characters/astoria/clothes/hair/ann_takamaki/2.webp b/game/characters/astoria/clothes/hair/ann_takamaki/2.webp new file mode 100644 index 00000000..3d1e72a0 --- /dev/null +++ b/game/characters/astoria/clothes/hair/ann_takamaki/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:893e2d167e1c2a61f92cc96378549c7dab103f6c841603af895d76f2553d619e +size 758 diff --git a/game/characters/astoria/clothes/hair/ann_takamaki/outline.webp b/game/characters/astoria/clothes/hair/ann_takamaki/outline.webp new file mode 100644 index 00000000..21ee0299 --- /dev/null +++ b/game/characters/astoria/clothes/hair/ann_takamaki/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78a73890b4221c93abffaa8accc68e4d2fda33da7d7328e45342db1ca5dc8218 +size 15620 diff --git a/game/characters/astoria/clothes/hair/ann_takamaki/outline_front.webp b/game/characters/astoria/clothes/hair/ann_takamaki/outline_front.webp new file mode 100644 index 00000000..c3237856 --- /dev/null +++ b/game/characters/astoria/clothes/hair/ann_takamaki/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5626e91dcdd7f1c77e494587b4d76c738581cf2fb87b5de7b69d3d188984a67d +size 5856 diff --git a/game/characters/astoria/clothes/hair/ann_takamaki/skin.webp b/game/characters/astoria/clothes/hair/ann_takamaki/skin.webp new file mode 100644 index 00000000..d879dfa9 --- /dev/null +++ b/game/characters/astoria/clothes/hair/ann_takamaki/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f41444b57245761263a5673c1637c33ddee1d8121e4fa439d36a20a19e4507ee +size 1188 diff --git a/game/characters/astoria/clothes/hair/base/0.webp b/game/characters/astoria/clothes/hair/base/0.webp new file mode 100644 index 00000000..c7a4ea09 --- /dev/null +++ b/game/characters/astoria/clothes/hair/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ae2488dc92aa67bbacd833130a57e2d965274ad962117b49c072b229039ffe1 +size 5148 diff --git a/game/characters/astoria/clothes/hair/base/0_front.webp b/game/characters/astoria/clothes/hair/base/0_front.webp new file mode 100644 index 00000000..408a5616 --- /dev/null +++ b/game/characters/astoria/clothes/hair/base/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e786a72b1c9d06cbb60fd6493f0944e8c6bddd25950a6a20d5646114cd3a8e9 +size 662 diff --git a/game/characters/astoria/clothes/hair/base/1.webp b/game/characters/astoria/clothes/hair/base/1.webp new file mode 100644 index 00000000..7a5e9e98 --- /dev/null +++ b/game/characters/astoria/clothes/hair/base/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be92bb54e3979fcb50f0af585d3155fbb8ec00a23e2b44a17d042028917954e5 +size 9148 diff --git a/game/characters/astoria/clothes/hair/base/1_front.webp b/game/characters/astoria/clothes/hair/base/1_front.webp new file mode 100644 index 00000000..589502dc --- /dev/null +++ b/game/characters/astoria/clothes/hair/base/1_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70e58aaeb95217a1823c7124506d884f3a3b8ba8a1bf1d01e3846c65d010c8a4 +size 704 diff --git a/game/characters/astoria/clothes/hair/base/outline.webp b/game/characters/astoria/clothes/hair/base/outline.webp new file mode 100644 index 00000000..3b626a78 --- /dev/null +++ b/game/characters/astoria/clothes/hair/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:793d1ca1b4f7778fd4edb0ea7871d1ebf31f0133a0f105ec3749183f7e88fc6c +size 19042 diff --git a/game/characters/astoria/clothes/hair/base/outline_front.webp b/game/characters/astoria/clothes/hair/base/outline_front.webp new file mode 100644 index 00000000..c59055d8 --- /dev/null +++ b/game/characters/astoria/clothes/hair/base/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f832efba2d2bc4ef1113f8d4b8d2889564195e16c7e739f14aa10d3c395ae3ce +size 1040 diff --git a/game/characters/astoria/clothes/hair/base/skin.webp b/game/characters/astoria/clothes/hair/base/skin.webp new file mode 100644 index 00000000..3d509dfa --- /dev/null +++ b/game/characters/astoria/clothes/hair/base/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8af6a337924e2ee57d203a3970798e7c8a1a9726fbd53cd7756da0e5bbd4195a +size 1410 diff --git a/game/characters/astoria/clothes/hair/short/0.webp b/game/characters/astoria/clothes/hair/short/0.webp new file mode 100644 index 00000000..a342283c --- /dev/null +++ b/game/characters/astoria/clothes/hair/short/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5298a14a991816bb634134c3d0e8f96231c9ca9af5c225d1688be064f8c63279 +size 4708 diff --git a/game/characters/astoria/clothes/hair/short/0_front.webp b/game/characters/astoria/clothes/hair/short/0_front.webp new file mode 100644 index 00000000..6887e4f6 --- /dev/null +++ b/game/characters/astoria/clothes/hair/short/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f2fe821b5e16961309082e600abaeeec88843516faabeee3dc68da09bbeab01 +size 730 diff --git a/game/characters/astoria/clothes/hair/short/1.webp b/game/characters/astoria/clothes/hair/short/1.webp new file mode 100644 index 00000000..df3850ab --- /dev/null +++ b/game/characters/astoria/clothes/hair/short/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33503f50bbf2488de5d0989f0e7a7f12874bea63fb21f48a5ae12bf985f23804 +size 7960 diff --git a/game/characters/astoria/clothes/hair/short/1_front.webp b/game/characters/astoria/clothes/hair/short/1_front.webp new file mode 100644 index 00000000..4bf77fa4 --- /dev/null +++ b/game/characters/astoria/clothes/hair/short/1_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db390d9cb7b908d7d05d5fbee8575225cf6a4f5208dbcb783ed866477f792f5f +size 810 diff --git a/game/characters/astoria/clothes/hair/short/outline.webp b/game/characters/astoria/clothes/hair/short/outline.webp new file mode 100644 index 00000000..0885f848 --- /dev/null +++ b/game/characters/astoria/clothes/hair/short/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef5de860f3e46cbdaef8f0ab0896606e3c31c8d898d6e2be64906b4babb51ee7 +size 13582 diff --git a/game/characters/astoria/clothes/hair/short/outline_front.webp b/game/characters/astoria/clothes/hair/short/outline_front.webp new file mode 100644 index 00000000..3f43d904 --- /dev/null +++ b/game/characters/astoria/clothes/hair/short/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49c4cd3125f444e4e64f393842fa112808a7e60d1c160bbe08db260d12a42426 +size 1282 diff --git a/game/characters/astoria/clothes/hair/short/skin.webp b/game/characters/astoria/clothes/hair/short/skin.webp new file mode 100644 index 00000000..3d509dfa --- /dev/null +++ b/game/characters/astoria/clothes/hair/short/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8af6a337924e2ee57d203a3970798e7c8a1a9726fbd53cd7756da0e5bbd4195a +size 1410 diff --git a/game/characters/astoria/clothes/headgear/ann_takamaki/0.webp b/game/characters/astoria/clothes/headgear/ann_takamaki/0.webp new file mode 100644 index 00000000..55735846 --- /dev/null +++ b/game/characters/astoria/clothes/headgear/ann_takamaki/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e4d5c761b9a5c8b849fa305fb8e07127bb51b7e75eee84ee939ef507ace3f39 +size 4822 diff --git a/game/characters/astoria/clothes/headgear/ann_takamaki/1.webp b/game/characters/astoria/clothes/headgear/ann_takamaki/1.webp new file mode 100644 index 00000000..1dbf1b47 --- /dev/null +++ b/game/characters/astoria/clothes/headgear/ann_takamaki/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:045f80d6ed4d142b7d991aea0f43bffb82f5556c6843264abf39c83faf26b7c9 +size 1956 diff --git a/game/characters/astoria/clothes/headgear/ann_takamaki/outline.webp b/game/characters/astoria/clothes/headgear/ann_takamaki/outline.webp new file mode 100644 index 00000000..abd15931 --- /dev/null +++ b/game/characters/astoria/clothes/headgear/ann_takamaki/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7bc9544263644db49fa003ef6def5ddd24d77782d63909de450739f5433c6e4 +size 4578 diff --git a/game/characters/astoria/clothes/makeup/lipstick/angry.webp b/game/characters/astoria/clothes/makeup/lipstick/angry.webp new file mode 100644 index 00000000..bbc4eb9d --- /dev/null +++ b/game/characters/astoria/clothes/makeup/lipstick/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7768b6707725138e4e1b9a5cc4ac2e736c3d7b4975ac839c86fde10681cd69d +size 1944 diff --git a/game/characters/astoria/clothes/makeup/lipstick/annoyed.webp b/game/characters/astoria/clothes/makeup/lipstick/annoyed.webp new file mode 100644 index 00000000..105c41f1 --- /dev/null +++ b/game/characters/astoria/clothes/makeup/lipstick/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02b2a640daa354941534a4334deee0033ea81f4a0157ff4db8f8d807d11fc2d0 +size 1406 diff --git a/game/characters/astoria/clothes/makeup/lipstick/base.webp b/game/characters/astoria/clothes/makeup/lipstick/base.webp new file mode 100644 index 00000000..6324943a --- /dev/null +++ b/game/characters/astoria/clothes/makeup/lipstick/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92cde2e81b81b452d4ecd38589b85781c99646b086d374d0db6da8e4c694aaab +size 1600 diff --git a/game/characters/astoria/clothes/makeup/lipstick/clench.webp b/game/characters/astoria/clothes/makeup/lipstick/clench.webp new file mode 100644 index 00000000..850c60e4 --- /dev/null +++ b/game/characters/astoria/clothes/makeup/lipstick/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04fea1df9da4f5af2a34d9f9ae1161be616fd5144fa49f7b74bc1c4eb0cedfed +size 2214 diff --git a/game/characters/astoria/clothes/makeup/lipstick/grin.webp b/game/characters/astoria/clothes/makeup/lipstick/grin.webp new file mode 100644 index 00000000..a7488343 --- /dev/null +++ b/game/characters/astoria/clothes/makeup/lipstick/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55b78533f6aa6425185dc0c9899cdcff219e4dc401476c5c0f1a4ee35cfc0512 +size 2028 diff --git a/game/characters/astoria/clothes/makeup/lipstick/horny.webp b/game/characters/astoria/clothes/makeup/lipstick/horny.webp new file mode 100644 index 00000000..e3d638d3 --- /dev/null +++ b/game/characters/astoria/clothes/makeup/lipstick/horny.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:860454c6fc6b31b333edc4849d2d732d48acb4d9236ce18a6062dc096ff5c9f6 +size 1610 diff --git a/game/characters/astoria/clothes/makeup/lipstick/open.webp b/game/characters/astoria/clothes/makeup/lipstick/open.webp new file mode 100644 index 00000000..6e039708 --- /dev/null +++ b/game/characters/astoria/clothes/makeup/lipstick/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92c0de55e7e448cf31ab294217e21b0d866d2d94f17654dc587d2e4b8a7f28d1 +size 1998 diff --git a/game/characters/astoria/clothes/makeup/lipstick/scream.webp b/game/characters/astoria/clothes/makeup/lipstick/scream.webp new file mode 100644 index 00000000..ab392341 --- /dev/null +++ b/game/characters/astoria/clothes/makeup/lipstick/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1bd3df0c5d23621f2b1d398e08369356a0a9d462145e563ee0d3e8246b26485 +size 2320 diff --git a/game/characters/astoria/clothes/makeup/lipstick/smile.webp b/game/characters/astoria/clothes/makeup/lipstick/smile.webp new file mode 100644 index 00000000..6c2361a5 --- /dev/null +++ b/game/characters/astoria/clothes/makeup/lipstick/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:214d93f89e1db070c3ac2f34e77ec5ed731e1f952d3deb0e1c730a2759f736cd +size 2320 diff --git a/game/characters/astoria/clothes/makeup/lipstick/upset.webp b/game/characters/astoria/clothes/makeup/lipstick/upset.webp new file mode 100644 index 00000000..c6514d2d --- /dev/null +++ b/game/characters/astoria/clothes/makeup/lipstick/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f7afd0ed17ab6ccc0a90be9b70b42eff5499c36ab2a8589cff72195357bdbd1 +size 1496 diff --git a/game/characters/astoria/clothes/panties/basic_panties_1/0.webp b/game/characters/astoria/clothes/panties/basic_panties_1/0.webp new file mode 100644 index 00000000..5c5f37b8 --- /dev/null +++ b/game/characters/astoria/clothes/panties/basic_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:086dc584e8495ab579cf9548dc6873dc9d82c7486030fbf9565e8da17c34d0ba +size 3858 diff --git a/game/characters/astoria/clothes/panties/basic_panties_1/1.webp b/game/characters/astoria/clothes/panties/basic_panties_1/1.webp new file mode 100644 index 00000000..36b4c49d --- /dev/null +++ b/game/characters/astoria/clothes/panties/basic_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45d9c86e9cd590a84976677ef15bf3275445ced5f8e4552d7da409786d9c7c43 +size 2032 diff --git a/game/characters/astoria/clothes/panties/basic_panties_1/outline.webp b/game/characters/astoria/clothes/panties/basic_panties_1/outline.webp new file mode 100644 index 00000000..12f26e15 --- /dev/null +++ b/game/characters/astoria/clothes/panties/basic_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5572e9851fd237bb44a9866b182bd076d6d2e4110f945017f4aabcfa72d0e4fa +size 5906 diff --git a/game/characters/astoria/clothes/panties/basic_panties_1/skin.webp b/game/characters/astoria/clothes/panties/basic_panties_1/skin.webp new file mode 100644 index 00000000..33b9788e --- /dev/null +++ b/game/characters/astoria/clothes/panties/basic_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a33618cea45ec79d90be867e9a003fed61e9c80d7cfd336bdd5bd7f0d0efc5f6 +size 2740 diff --git a/game/characters/astoria/clothes/panties/basic_panties_2/0.webp b/game/characters/astoria/clothes/panties/basic_panties_2/0.webp new file mode 100644 index 00000000..5c5f37b8 --- /dev/null +++ b/game/characters/astoria/clothes/panties/basic_panties_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:086dc584e8495ab579cf9548dc6873dc9d82c7486030fbf9565e8da17c34d0ba +size 3858 diff --git a/game/characters/astoria/clothes/panties/basic_panties_2/outline.webp b/game/characters/astoria/clothes/panties/basic_panties_2/outline.webp new file mode 100644 index 00000000..c1d83caa --- /dev/null +++ b/game/characters/astoria/clothes/panties/basic_panties_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:581ea7f1eaf36a6e548187c0e3e917969c3524b86a335f303fdd703bec686097 +size 4168 diff --git a/game/characters/astoria/clothes/panties/basic_panties_2/skin.webp b/game/characters/astoria/clothes/panties/basic_panties_2/skin.webp new file mode 100644 index 00000000..33b9788e --- /dev/null +++ b/game/characters/astoria/clothes/panties/basic_panties_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a33618cea45ec79d90be867e9a003fed61e9c80d7cfd336bdd5bd7f0d0efc5f6 +size 2740 diff --git a/game/characters/astoria/clothes/pubes/arrow/0.webp b/game/characters/astoria/clothes/pubes/arrow/0.webp new file mode 100644 index 00000000..b54c1f09 --- /dev/null +++ b/game/characters/astoria/clothes/pubes/arrow/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb50b140288d58758579771e5f25dbcbaf2914f7d7ea149133e62c4b094acfa6 +size 1394 diff --git a/game/characters/astoria/clothes/pubes/arrow/outline.webp b/game/characters/astoria/clothes/pubes/arrow/outline.webp new file mode 100644 index 00000000..b489ddaa --- /dev/null +++ b/game/characters/astoria/clothes/pubes/arrow/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ade7af11e9a2781cdeec1e7df0bfe1bfd61d5688fdd541c7c1f916a2bbe4d5f8 +size 930 diff --git a/game/characters/astoria/clothes/pubes/beaver/0.webp b/game/characters/astoria/clothes/pubes/beaver/0.webp new file mode 100644 index 00000000..a665d2f6 --- /dev/null +++ b/game/characters/astoria/clothes/pubes/beaver/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7240b445703f6a5baf173c89b45d544f24d80dab08dd8762e660e670b76840e7 +size 2510 diff --git a/game/characters/astoria/clothes/pubes/beaver/outline.webp b/game/characters/astoria/clothes/pubes/beaver/outline.webp new file mode 100644 index 00000000..28f03a9e --- /dev/null +++ b/game/characters/astoria/clothes/pubes/beaver/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9eb0f49d13215e420a85eaa71107685864817184f9cf790ffe7879fcb505206 +size 2418 diff --git a/game/characters/astoria/clothes/pubes/stuble/0.webp b/game/characters/astoria/clothes/pubes/stuble/0.webp new file mode 100644 index 00000000..07f80d06 --- /dev/null +++ b/game/characters/astoria/clothes/pubes/stuble/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90f9ad624d950b9500c06762a986f4bf939b13705f3c6dbcf95a9e367e244dfa +size 1140 diff --git a/game/characters/astoria/clothes/pubes/unshaved/0.webp b/game/characters/astoria/clothes/pubes/unshaved/0.webp new file mode 100644 index 00000000..5add567a --- /dev/null +++ b/game/characters/astoria/clothes/pubes/unshaved/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25211bd8b93229bfffd659a469280c40a8c06cac25f488db4e0b91cc7cbd1bd2 +size 2242 diff --git a/game/characters/astoria/clothes/stockings/ann_takamaki/0.webp b/game/characters/astoria/clothes/stockings/ann_takamaki/0.webp new file mode 100644 index 00000000..fa5ae810 --- /dev/null +++ b/game/characters/astoria/clothes/stockings/ann_takamaki/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cdf4216e83f93e21b0848dd421e9bdf4308b525e47e577ad55c0952fdf268511 +size 5374 diff --git a/game/characters/astoria/clothes/stockings/ann_takamaki/0_front.webp b/game/characters/astoria/clothes/stockings/ann_takamaki/0_front.webp new file mode 100644 index 00000000..fa5ae810 --- /dev/null +++ b/game/characters/astoria/clothes/stockings/ann_takamaki/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cdf4216e83f93e21b0848dd421e9bdf4308b525e47e577ad55c0952fdf268511 +size 5374 diff --git a/game/characters/astoria/clothes/stockings/ann_takamaki/1.webp b/game/characters/astoria/clothes/stockings/ann_takamaki/1.webp new file mode 100644 index 00000000..802c26cc --- /dev/null +++ b/game/characters/astoria/clothes/stockings/ann_takamaki/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ee1c29446464629c888524e98127e598ae48c1879ca468d4a3fb75ab931bf29 +size 2356 diff --git a/game/characters/astoria/clothes/stockings/ann_takamaki/1_front.webp b/game/characters/astoria/clothes/stockings/ann_takamaki/1_front.webp new file mode 100644 index 00000000..802c26cc --- /dev/null +++ b/game/characters/astoria/clothes/stockings/ann_takamaki/1_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ee1c29446464629c888524e98127e598ae48c1879ca468d4a3fb75ab931bf29 +size 2356 diff --git a/game/characters/astoria/clothes/stockings/ann_takamaki/outline.webp b/game/characters/astoria/clothes/stockings/ann_takamaki/outline.webp new file mode 100644 index 00000000..e7784a2a --- /dev/null +++ b/game/characters/astoria/clothes/stockings/ann_takamaki/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3254dbed1c56e5be134f2e2b69a7e16f73fc9e9492a78c89c8158158bb1ed2d2 +size 5428 diff --git a/game/characters/astoria/clothes/stockings/ann_takamaki/outline_front.webp b/game/characters/astoria/clothes/stockings/ann_takamaki/outline_front.webp new file mode 100644 index 00000000..e7784a2a --- /dev/null +++ b/game/characters/astoria/clothes/stockings/ann_takamaki/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3254dbed1c56e5be134f2e2b69a7e16f73fc9e9492a78c89c8158158bb1ed2d2 +size 5428 diff --git a/game/characters/astoria/clothes/stockings/pantyhose/0.webp b/game/characters/astoria/clothes/stockings/pantyhose/0.webp new file mode 100644 index 00000000..44113e3e --- /dev/null +++ b/game/characters/astoria/clothes/stockings/pantyhose/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:812dfbdb353120832205df6d4ed5c40c212487eed3a72fc3f8bf5dc11a59ca72 +size 10416 diff --git a/game/characters/astoria/clothes/stockings/pantyhose/outline.webp b/game/characters/astoria/clothes/stockings/pantyhose/outline.webp new file mode 100644 index 00000000..6b1595a1 --- /dev/null +++ b/game/characters/astoria/clothes/stockings/pantyhose/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bca49dc4eb3010a58ca0d9eead3ebaab8f9a78fbdbde77112db2792e996c89b1 +size 9074 diff --git a/game/characters/astoria/clothes/top/ann_takamaki/0.webp b/game/characters/astoria/clothes/top/ann_takamaki/0.webp new file mode 100644 index 00000000..6004ba63 --- /dev/null +++ b/game/characters/astoria/clothes/top/ann_takamaki/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71eb05ed951cc69683dcf3fd31b1299895dd7420311bb778298f479984fc0961 +size 19976 diff --git a/game/characters/astoria/clothes/top/ann_takamaki/1.webp b/game/characters/astoria/clothes/top/ann_takamaki/1.webp new file mode 100644 index 00000000..e467917b --- /dev/null +++ b/game/characters/astoria/clothes/top/ann_takamaki/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:212ccb33199c9d467e757d84a2a5398fdaeb3df61a55cab3999cb383f0e4cdb1 +size 9180 diff --git a/game/characters/astoria/clothes/top/ann_takamaki/2.webp b/game/characters/astoria/clothes/top/ann_takamaki/2.webp new file mode 100644 index 00000000..a1c3bda3 --- /dev/null +++ b/game/characters/astoria/clothes/top/ann_takamaki/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c22ccb3d1427a42f4ed7fe17e3ccc036f9cd4974e200d0b61e494b8bcbebd8e +size 4992 diff --git a/game/characters/astoria/clothes/top/ann_takamaki/outline.webp b/game/characters/astoria/clothes/top/ann_takamaki/outline.webp new file mode 100644 index 00000000..d78bf180 --- /dev/null +++ b/game/characters/astoria/clothes/top/ann_takamaki/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66f629f9a3df320b18048686daafbd5bd2f864a461f0155f36d804e5ac61c9fa +size 31646 diff --git a/game/characters/astoria/clothes/top/top_school_1/0.webp b/game/characters/astoria/clothes/top/top_school_1/0.webp new file mode 100644 index 00000000..6fda9841 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:071558b82685a3ed3107a4e74ef81ae67f759deacd8a52f1113ca6700a70bc40 +size 9698 diff --git a/game/characters/astoria/clothes/top/top_school_1/1.webp b/game/characters/astoria/clothes/top/top_school_1/1.webp new file mode 100644 index 00000000..e862f6a1 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48653a7f24170bd2460a9fa5a1b7c253884edd4e47eea95d8824bce61c78ef90 +size 7548 diff --git a/game/characters/astoria/clothes/top/top_school_1/2.webp b/game/characters/astoria/clothes/top/top_school_1/2.webp new file mode 100644 index 00000000..21b9cbe3 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c514a922bd295ec95fdc67e29b1621272449c879ad58eba19ea0ffc9830878f5 +size 9172 diff --git a/game/characters/astoria/clothes/top/top_school_1/3.webp b/game/characters/astoria/clothes/top/top_school_1/3.webp new file mode 100644 index 00000000..6977b48e --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f18e30955f42aa13522f7fd9f680a993a9d16ecc4dcba687ceac9059eb820127 +size 6880 diff --git a/game/characters/astoria/clothes/top/top_school_1/outline.webp b/game/characters/astoria/clothes/top/top_school_1/outline.webp new file mode 100644 index 00000000..7c56b567 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ec3cc108fb724b626f31444a355a49c87f2e3b7f8e03b72daceb223fea5fcd0 +size 16344 diff --git a/game/characters/astoria/clothes/top/top_school_1/skin.webp b/game/characters/astoria/clothes/top/top_school_1/skin.webp new file mode 100644 index 00000000..6219c778 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a2ad94fdcec550332827f910fac58ffe9ca7c967a5854e8539e3d99b7430d88 +size 1294 diff --git a/game/characters/astoria/clothes/top/top_school_2/0.webp b/game/characters/astoria/clothes/top/top_school_2/0.webp new file mode 100644 index 00000000..8a549760 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4158706ba4368b0f4342598cfe6b4972155a2bef113da727b9db89c8e951adaf +size 9558 diff --git a/game/characters/astoria/clothes/top/top_school_2/1.webp b/game/characters/astoria/clothes/top/top_school_2/1.webp new file mode 100644 index 00000000..904df6e3 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e00e65ec140e8a6cc721700be565067e866fa619d764144be8193e010e14588 +size 7354 diff --git a/game/characters/astoria/clothes/top/top_school_2/2.webp b/game/characters/astoria/clothes/top/top_school_2/2.webp new file mode 100644 index 00000000..7c60ee66 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a019ced45c7d39c5cf3d33d4e1adb672af41fa20d74104c1fb5335672494c8c0 +size 7840 diff --git a/game/characters/astoria/clothes/top/top_school_2/3.webp b/game/characters/astoria/clothes/top/top_school_2/3.webp new file mode 100644 index 00000000..a7acf03c --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_2/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93ad03eea4b7187c8860eee2747d1e316c720187055b30e5d61154bd31350fbf +size 5748 diff --git a/game/characters/astoria/clothes/top/top_school_2/extra.webp b/game/characters/astoria/clothes/top/top_school_2/extra.webp new file mode 100644 index 00000000..4477bbd5 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f50ff9a892d27d09a21419d6438b989d864092a1bb4bea0560eae76610ce192c +size 726 diff --git a/game/characters/astoria/clothes/top/top_school_2/outline.webp b/game/characters/astoria/clothes/top/top_school_2/outline.webp new file mode 100644 index 00000000..7d555226 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bf7aaa23aae2bc0150904c950673767de646f5b59c6fc93bccf1ef8a5aca469 +size 16014 diff --git a/game/characters/astoria/clothes/top/top_school_2/skin.webp b/game/characters/astoria/clothes/top/top_school_2/skin.webp new file mode 100644 index 00000000..6219c778 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a2ad94fdcec550332827f910fac58ffe9ca7c967a5854e8539e3d99b7430d88 +size 1294 diff --git a/game/characters/astoria/clothes/top/top_school_3/0.webp b/game/characters/astoria/clothes/top/top_school_3/0.webp new file mode 100644 index 00000000..333571c0 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1159dd913925a3eb80c1079e39c74ffdc6c2d42f48b5a6733ca62e313fa828dc +size 9622 diff --git a/game/characters/astoria/clothes/top/top_school_3/1.webp b/game/characters/astoria/clothes/top/top_school_3/1.webp new file mode 100644 index 00000000..6c2a5fa5 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd8ac4bca2fee2b279d8b7e6e8ef88e658bc82b0ae813c92d16595dbf60c4e9b +size 5532 diff --git a/game/characters/astoria/clothes/top/top_school_3/2.webp b/game/characters/astoria/clothes/top/top_school_3/2.webp new file mode 100644 index 00000000..ecbb0d2e --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_3/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dd030b946821cb9ea658721d136b3b8d4f6267870c5cfc31a3e082c2c6b9bf3 +size 4448 diff --git a/game/characters/astoria/clothes/top/top_school_3/extra.webp b/game/characters/astoria/clothes/top/top_school_3/extra.webp new file mode 100644 index 00000000..4821e58b --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_3/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:578a78264d797205d6c0e4181c74a46fec87730e8304860ce9e0fc4bb42b62d8 +size 746 diff --git a/game/characters/astoria/clothes/top/top_school_3/outline.webp b/game/characters/astoria/clothes/top/top_school_3/outline.webp new file mode 100644 index 00000000..a05b42a9 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc748fa26290f7e41e3397969de1eebc8bef249e4ce7afb628366bbb49153c70 +size 13596 diff --git a/game/characters/astoria/clothes/top/top_school_4/0.webp b/game/characters/astoria/clothes/top/top_school_4/0.webp new file mode 100644 index 00000000..e6a74847 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2452eca285866f8561c68637f748951259656f309a7de34ee68fa520ae1a2375 +size 9542 diff --git a/game/characters/astoria/clothes/top/top_school_4/1.webp b/game/characters/astoria/clothes/top/top_school_4/1.webp new file mode 100644 index 00000000..076facae --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ffd6e3afa467d8035ac6a1d335c99ce26708386658be665cb1d69620531f3c1 +size 2644 diff --git a/game/characters/astoria/clothes/top/top_school_4/2.webp b/game/characters/astoria/clothes/top/top_school_4/2.webp new file mode 100644 index 00000000..04d8f373 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_4/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:655e56e5c0d98fb9a358e4bb1ce4e6f87f71f96b2c443250c2aa4c3091f7c4ea +size 1656 diff --git a/game/characters/astoria/clothes/top/top_school_4/extra.webp b/game/characters/astoria/clothes/top/top_school_4/extra.webp new file mode 100644 index 00000000..e0436b0d --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_4/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d5a9b334212297f38b24750312c21b6501526cab683fd2459eab293346ac04b +size 1402 diff --git a/game/characters/astoria/clothes/top/top_school_4/outline.webp b/game/characters/astoria/clothes/top/top_school_4/outline.webp new file mode 100644 index 00000000..57b98863 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7241441d9f5b3fcead7c8a2d804f8dda80a353d9044ce2518ed3fb5ba94bad8b +size 12542 diff --git a/game/characters/astoria/clothes/top/top_school_5/0.webp b/game/characters/astoria/clothes/top/top_school_5/0.webp new file mode 100644 index 00000000..652e7dd2 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_5/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b91871e189b357d461364355c86271efd285f8e83293b9baef7fcc38defd918 +size 9314 diff --git a/game/characters/astoria/clothes/top/top_school_5/1.webp b/game/characters/astoria/clothes/top/top_school_5/1.webp new file mode 100644 index 00000000..076facae --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_5/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ffd6e3afa467d8035ac6a1d335c99ce26708386658be665cb1d69620531f3c1 +size 2644 diff --git a/game/characters/astoria/clothes/top/top_school_5/2.webp b/game/characters/astoria/clothes/top/top_school_5/2.webp new file mode 100644 index 00000000..c5b53ae4 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_5/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a17ef7eda48e9ffd30d0b8478989bdff3efad39d5fc07a752259120d424d208 +size 1660 diff --git a/game/characters/astoria/clothes/top/top_school_5/extra.webp b/game/characters/astoria/clothes/top/top_school_5/extra.webp new file mode 100644 index 00000000..961f34b3 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_5/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10d6278b0bde1d9a9cad40027cdbfd80f14faf8fe2eda64c0ca162cf1e826ce6 +size 1256 diff --git a/game/characters/astoria/clothes/top/top_school_5/outline.webp b/game/characters/astoria/clothes/top/top_school_5/outline.webp new file mode 100644 index 00000000..b456b005 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_5/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8f07a5065953ff9d363b408eb780d9df319094dd6357b2d2dceb37feedfbf83 +size 12584 diff --git a/game/characters/astoria/clothes/top/top_school_5/skin.webp b/game/characters/astoria/clothes/top/top_school_5/skin.webp new file mode 100644 index 00000000..b41e19ce --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_5/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f658c95c40e309a55d6afe1b43c78fa0e10d24311daec0b66aa479e86f876230 +size 1046 diff --git a/game/characters/astoria/clothes/top/top_school_6/0.webp b/game/characters/astoria/clothes/top/top_school_6/0.webp new file mode 100644 index 00000000..a4f3d7e4 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_6/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99c600a92e12aacf457497bc8c9bbc2dbc5ff475e77867a487f9d1470bce819f +size 7398 diff --git a/game/characters/astoria/clothes/top/top_school_6/1.webp b/game/characters/astoria/clothes/top/top_school_6/1.webp new file mode 100644 index 00000000..7b184063 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_6/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef424ee5d868bc26e9a8c7ce9d20cd9792a6364cfc8138506f07b4d539c13417 +size 5874 diff --git a/game/characters/astoria/clothes/top/top_school_6/2.webp b/game/characters/astoria/clothes/top/top_school_6/2.webp new file mode 100644 index 00000000..4a1e1ce3 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_6/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55a84b98467e67d2bc8c520ee05ef3b552c811c8a32e49545605d1bb32312b26 +size 4958 diff --git a/game/characters/astoria/clothes/top/top_school_6/outline.webp b/game/characters/astoria/clothes/top/top_school_6/outline.webp new file mode 100644 index 00000000..53f944a1 --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_6/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eee9c6c27c17ef2e96745cb5b0d99938eccff1defa381c7446d2f21cf4472880 +size 10466 diff --git a/game/characters/astoria/clothes/top/top_school_6/skin.webp b/game/characters/astoria/clothes/top/top_school_6/skin.webp new file mode 100644 index 00000000..4fec6f9c --- /dev/null +++ b/game/characters/astoria/clothes/top/top_school_6/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebf8548fe03cefad47a796264f95d56c31efc031a5837cb457d2589a2a97d7ae +size 2062 diff --git a/game/characters/astoria/emote/angry.webp b/game/characters/astoria/emote/angry.webp new file mode 100644 index 00000000..82f0fd66 --- /dev/null +++ b/game/characters/astoria/emote/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3549668356dd6e40af400910585ecc1d26b9f493cd8fffec9a4a4fa8f828090f +size 3116 diff --git a/game/characters/astoria/emote/confused.webp b/game/characters/astoria/emote/confused.webp new file mode 100644 index 00000000..16d847ec --- /dev/null +++ b/game/characters/astoria/emote/confused.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4518832ae6a9abd896e5cac6df5a8f79cf2f912f8a91ac75bc8681263b44e73b +size 17794 diff --git a/game/characters/astoria/emote/happy.webp b/game/characters/astoria/emote/happy.webp new file mode 100644 index 00000000..e1de7735 --- /dev/null +++ b/game/characters/astoria/emote/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8966b3b892d33a07732463cf285728e298e8fe52fa0d966c48d52995355e5895 +size 13048 diff --git a/game/characters/astoria/emote/hearts.webp b/game/characters/astoria/emote/hearts.webp new file mode 100644 index 00000000..04fff260 --- /dev/null +++ b/game/characters/astoria/emote/hearts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c16590ed90799f1c6a8abb7aaa68d3b8796495521cfd1d8004c03668ee52a0a +size 21056 diff --git a/game/characters/astoria/emote/shocked.webp b/game/characters/astoria/emote/shocked.webp new file mode 100644 index 00000000..d8f933a4 --- /dev/null +++ b/game/characters/astoria/emote/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b4f1806d7a7f5c7cddd315178b06ab0ede3bb70c24e56d8cea345c4ec67f82b +size 12550 diff --git a/game/characters/astoria/emote/sweat.webp b/game/characters/astoria/emote/sweat.webp new file mode 100644 index 00000000..4c546469 --- /dev/null +++ b/game/characters/astoria/emote/sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f931365379935985f20d3a1c8d0fc31aae85153feda9d39305a4a488211a5856 +size 3704 diff --git a/game/characters/astoria/face/cheeks/blush.webp b/game/characters/astoria/face/cheeks/blush.webp new file mode 100644 index 00000000..0dedc968 --- /dev/null +++ b/game/characters/astoria/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:729e73d5fc818b3ce1669a256923eed6567e65c37a6c9f282498cef2dc440691 +size 3740 diff --git a/game/characters/astoria/face/eyebrows/angry.webp b/game/characters/astoria/face/eyebrows/angry.webp new file mode 100644 index 00000000..9755e1ca --- /dev/null +++ b/game/characters/astoria/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:078f33461281e77d3656446b670f8b2d14dc8fa061b8bdb8f0ce302e7b82c987 +size 3060 diff --git a/game/characters/astoria/face/eyebrows/base.webp b/game/characters/astoria/face/eyebrows/base.webp new file mode 100644 index 00000000..b7bece40 --- /dev/null +++ b/game/characters/astoria/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a27a5680dcb9a1cc3cd756242a43c85e03df276efb0c2b71e012e77a4ea5a2f +size 2012 diff --git a/game/characters/astoria/face/eyebrows/worried.webp b/game/characters/astoria/face/eyebrows/worried.webp new file mode 100644 index 00000000..9ad4f141 --- /dev/null +++ b/game/characters/astoria/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eff7db1b2fa25911ef3ef8c8646439b14c6525865a78da126696176cde7f9656 +size 2424 diff --git a/game/characters/astoria/face/eyes/base.webp b/game/characters/astoria/face/eyes/base.webp new file mode 100644 index 00000000..07945856 --- /dev/null +++ b/game/characters/astoria/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf1ad035f1dbf253af18ab32e8fe21fa6d31e894278524176391b5f78eab488b +size 2814 diff --git a/game/characters/astoria/face/eyes/base_mask.webp b/game/characters/astoria/face/eyes/base_mask.webp new file mode 100644 index 00000000..b67354f9 --- /dev/null +++ b/game/characters/astoria/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c6ed46a96c89ea8bc96efc2498719fe379c86aab214796a039fd606e0757532 +size 1342 diff --git a/game/characters/astoria/face/eyes/closed.webp b/game/characters/astoria/face/eyes/closed.webp new file mode 100644 index 00000000..239fe89d --- /dev/null +++ b/game/characters/astoria/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f1df7983183badf9980323ed6e917e28b3d541610b749c0d4a65fe49f412f4e +size 2480 diff --git a/game/characters/astoria/face/eyes/narrow.webp b/game/characters/astoria/face/eyes/narrow.webp new file mode 100644 index 00000000..6697d1dd --- /dev/null +++ b/game/characters/astoria/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8eef45a284ecc7ac02de64f4f1a2ed6af89f815c6acdca642f4ed3f0012a492 +size 3162 diff --git a/game/characters/astoria/face/eyes/narrow_mask.webp b/game/characters/astoria/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..b533422e --- /dev/null +++ b/game/characters/astoria/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86281cedddf305ea7577fbe8b29dde30aa9d5d4cb991288104a28c8fa4bde4ec +size 1314 diff --git a/game/characters/astoria/face/eyes/wink.webp b/game/characters/astoria/face/eyes/wink.webp new file mode 100644 index 00000000..570846db --- /dev/null +++ b/game/characters/astoria/face/eyes/wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19cc564f3e3e775dba673043b2ba4f30280ba48f3b09c5335d2036e6c8331668 +size 2970 diff --git a/game/characters/astoria/face/eyes/wink_mask.webp b/game/characters/astoria/face/eyes/wink_mask.webp new file mode 100644 index 00000000..6affe7a4 --- /dev/null +++ b/game/characters/astoria/face/eyes/wink_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:618c82d284c996dd3d8ab693336dcfcf843a5d1f2dd2ded2566282dc0f6a9d9c +size 1248 diff --git a/game/characters/astoria/face/mouth/angry.webp b/game/characters/astoria/face/mouth/angry.webp new file mode 100644 index 00000000..23d574b2 --- /dev/null +++ b/game/characters/astoria/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e9044e0ba95780aecca1d1b3ae47a6697393eca7f246cc7240d256bea1ec6c0 +size 1468 diff --git a/game/characters/astoria/face/mouth/annoyed.webp b/game/characters/astoria/face/mouth/annoyed.webp new file mode 100644 index 00000000..9aa0a4a7 --- /dev/null +++ b/game/characters/astoria/face/mouth/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39b62da4231ce8beff7544b0939f7251da0cf16e27b621c65b91ced32206b845 +size 936 diff --git a/game/characters/astoria/face/mouth/base.webp b/game/characters/astoria/face/mouth/base.webp new file mode 100644 index 00000000..e3133e5a --- /dev/null +++ b/game/characters/astoria/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c6e50a0939890f9ae12dd4895a136394c475e65b506481d1528b1a0c09d6f53 +size 1288 diff --git a/game/characters/astoria/face/mouth/clench.webp b/game/characters/astoria/face/mouth/clench.webp new file mode 100644 index 00000000..a736f08b --- /dev/null +++ b/game/characters/astoria/face/mouth/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43372542542cd94332b952d63b273a09b7b8dee37c6b4fe17aa88f09ddfdb85d +size 2058 diff --git a/game/characters/astoria/face/mouth/grin.webp b/game/characters/astoria/face/mouth/grin.webp new file mode 100644 index 00000000..97a1022b --- /dev/null +++ b/game/characters/astoria/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e0faa5005aa5f0c6e9c4b51d89e4aebc7f47b22e0fb84b5afee3c3dc82c5a7e +size 1440 diff --git a/game/characters/astoria/face/mouth/horny.webp b/game/characters/astoria/face/mouth/horny.webp new file mode 100644 index 00000000..dd1d2be4 --- /dev/null +++ b/game/characters/astoria/face/mouth/horny.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99755bd0ac64f386d8eb5e4a39a6b8e482be124debed2d83f602e426906e85e3 +size 1242 diff --git a/game/characters/astoria/face/mouth/open.webp b/game/characters/astoria/face/mouth/open.webp new file mode 100644 index 00000000..eaad5781 --- /dev/null +++ b/game/characters/astoria/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a00d2f3fe093eba2321161a78c7ab958d76fd299e2c8726ad9d0786f6434ae5 +size 1728 diff --git a/game/characters/astoria/face/mouth/scream.webp b/game/characters/astoria/face/mouth/scream.webp new file mode 100644 index 00000000..16b7e3d6 --- /dev/null +++ b/game/characters/astoria/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eac447ebe225e26d94ae4298283ddd80fbaafe9299cb045bfd03ab20537c6e28 +size 4364 diff --git a/game/characters/astoria/face/mouth/smile.webp b/game/characters/astoria/face/mouth/smile.webp new file mode 100644 index 00000000..48a562ce --- /dev/null +++ b/game/characters/astoria/face/mouth/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3422af737e00aa29d0fa3f9ab5ca7152d28ba2ac7044db6981513104bde4994 +size 2268 diff --git a/game/characters/astoria/face/mouth/upset.webp b/game/characters/astoria/face/mouth/upset.webp new file mode 100644 index 00000000..9eb67c7a --- /dev/null +++ b/game/characters/astoria/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ad2de2d8bdc3f06ebf2e1e023b3f776fde67b98976a5a0cffecd9df4cff047d +size 1188 diff --git a/game/characters/astoria/face/pupils/L.webp b/game/characters/astoria/face/pupils/L.webp new file mode 100644 index 00000000..5377e07d --- /dev/null +++ b/game/characters/astoria/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80941c809b1f47512042d7f32db2750081c1cd9543debbb6f0a6e65daf65d8f8 +size 1320 diff --git a/game/characters/astoria/face/pupils/R.webp b/game/characters/astoria/face/pupils/R.webp new file mode 100644 index 00000000..c7678fa8 --- /dev/null +++ b/game/characters/astoria/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8581f43a5c1ee4830e137943648c80f851be0c5ee25013c23cca2520246595d9 +size 1212 diff --git a/game/characters/astoria/face/pupils/ahegao.webp b/game/characters/astoria/face/pupils/ahegao.webp new file mode 100644 index 00000000..7ef5c4e1 --- /dev/null +++ b/game/characters/astoria/face/pupils/ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:238b84ec618e8421a64112ba82f7941960f987486ee3e33fc8c1a180be9a43ff +size 1296 diff --git a/game/characters/astoria/face/pupils/down.webp b/game/characters/astoria/face/pupils/down.webp new file mode 100644 index 00000000..a1161380 --- /dev/null +++ b/game/characters/astoria/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f6b3a2df42afc40a725fbab0320752742137cd4941d206524623e2679423984 +size 1214 diff --git a/game/characters/astoria/face/pupils/mid.webp b/game/characters/astoria/face/pupils/mid.webp new file mode 100644 index 00000000..424e6fc1 --- /dev/null +++ b/game/characters/astoria/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58b10e799cbf3915016eceafa871e05d5e1ba365fed423f68c3d5d9a16f5cede +size 1212 diff --git a/game/characters/astoria/face/pupils/up.webp b/game/characters/astoria/face/pupils/up.webp new file mode 100644 index 00000000..335018a0 --- /dev/null +++ b/game/characters/astoria/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd573d1d821767b7c155c781674be54d9904b746044028c60b5c1e78ff83e13b +size 1922 diff --git a/game/characters/astoria/face/tears/crying.webp b/game/characters/astoria/face/tears/crying.webp new file mode 100644 index 00000000..70abd665 --- /dev/null +++ b/game/characters/astoria/face/tears/crying.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ef99c8d6e56625bf8e1ae4219720ce01629bc8342f0f59f49e5738008efba3d +size 2888 diff --git a/game/characters/chibis/cloth_pile_g.webp b/game/characters/chibis/cloth_pile_g.webp new file mode 100644 index 00000000..cccb0b9f --- /dev/null +++ b/game/characters/chibis/cloth_pile_g.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85370a5a2e83c21029cba3332bc8265d1cec125995116ea4021df5afd99fe5c3 +size 9908 diff --git a/game/characters/chibis/cloth_pile_h.webp b/game/characters/chibis/cloth_pile_h.webp new file mode 100644 index 00000000..0b2780c9 --- /dev/null +++ b/game/characters/chibis/cloth_pile_h.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:390031cd7e7bdbf128fc770c3d7bc66d10a0b611fe52b7378c0a7ce35e5d41db +size 9902 diff --git a/game/characters/chibis/cloth_pile_r.webp b/game/characters/chibis/cloth_pile_r.webp new file mode 100644 index 00000000..fc0033db --- /dev/null +++ b/game/characters/chibis/cloth_pile_r.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8cfd2d95cc32c09125c9124d631054d4f72276700952736652aa9d1534e5c81 +size 10036 diff --git a/game/characters/chibis/cloth_pile_s.webp b/game/characters/chibis/cloth_pile_s.webp new file mode 100644 index 00000000..19b60870 --- /dev/null +++ b/game/characters/chibis/cloth_pile_s.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8548fc34c9e96f9573c1cc2c1d95ec7094c46470b51bc625592d6e80cf4d770f +size 9822 diff --git a/game/characters/chibis/panties_on_the_groun.webp b/game/characters/chibis/panties_on_the_groun.webp new file mode 100644 index 00000000..a55de4bf --- /dev/null +++ b/game/characters/chibis/panties_on_the_groun.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae66d005a18782f8a3a0f2fd27c19d8a06f6c4c4d170c0d2f45a96bc6db1f807 +size 7578 diff --git a/game/characters/cho/body/armleft/down.webp b/game/characters/cho/body/armleft/down.webp new file mode 100644 index 00000000..a21015ec --- /dev/null +++ b/game/characters/cho/body/armleft/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6da9a3762a6298532ef7a1291a5eaa323439c7439e0d1db2c41ae73707ebec91 +size 13508 diff --git a/game/characters/cho/body/armleft/down_fix.webp b/game/characters/cho/body/armleft/down_fix.webp new file mode 100644 index 00000000..ea2266ad --- /dev/null +++ b/game/characters/cho/body/armleft/down_fix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:183ea04b987eaab585275c67a398a49dd972a736c0acc22042b334f74449d96b +size 6334 diff --git a/game/characters/cho/body/armright/down.webp b/game/characters/cho/body/armright/down.webp new file mode 100644 index 00000000..d66831cc --- /dev/null +++ b/game/characters/cho/body/armright/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69b853d882e6124842e077bd8a8d3aa8916baa9728c7b23b5601510dd85a98ed +size 6668 diff --git a/game/characters/cho/body/armright/down_fix.webp b/game/characters/cho/body/armright/down_fix.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/characters/cho/body/armright/down_fix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/characters/cho/body/armright/up.webp b/game/characters/cho/body/armright/up.webp new file mode 100644 index 00000000..70ed609a --- /dev/null +++ b/game/characters/cho/body/armright/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79198aaa022725f2f28ce18051197ca457947af018bd6c870c91e46436c49290 +size 25250 diff --git a/game/characters/cho/body/base/front.webp b/game/characters/cho/body/base/front.webp new file mode 100644 index 00000000..83f11c30 --- /dev/null +++ b/game/characters/cho/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1de7b69a54d723579bbd4f66734c1939754c9a7940876b65894e4b7f0b524b27 +size 48148 diff --git a/game/characters/cho/body/breasts/normal.webp b/game/characters/cho/body/breasts/normal.webp new file mode 100644 index 00000000..00dd9ee0 --- /dev/null +++ b/game/characters/cho/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19275d4fce23e6327e43cb1bcb9e91b99dc58b9c3b6fd2f159cc0bedf0a2c0b7 +size 11414 diff --git a/game/characters/cho/chibis/cc_gloves.webp b/game/characters/cho/chibis/cc_gloves.webp new file mode 100644 index 00000000..84b918e5 --- /dev/null +++ b/game/characters/cho/chibis/cc_gloves.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6d308c91e510c9bbffbec2711a1b3715e2d6ae995f755eb15d472cea0a9aa20 +size 2180 diff --git a/game/characters/cho/chibis/cc_quid_robe.webp b/game/characters/cho/chibis/cc_quid_robe.webp new file mode 100644 index 00000000..928b255d --- /dev/null +++ b/game/characters/cho/chibis/cc_quid_robe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e579ad8f7a7d06b94fde28ddcafaac54d47cd4fa14bc0d69974caad8255b6dd8 +size 7338 diff --git a/game/characters/cho/chibis/cc_quid_robe_fix.webp b/game/characters/cho/chibis/cc_quid_robe_fix.webp new file mode 100644 index 00000000..296015f0 --- /dev/null +++ b/game/characters/cho/chibis/cc_quid_robe_fix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e46b5e221cb8532434dd47e34c7b23c6b06cdd8736cff6d951da881111b2b54e +size 1214 diff --git a/game/characters/cho/chibis/cc_quid_shoes.webp b/game/characters/cho/chibis/cc_quid_shoes.webp new file mode 100644 index 00000000..d7e4fa41 --- /dev/null +++ b/game/characters/cho/chibis/cc_quid_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19d30bea1d1185d08312ed2a6c53d0567767e677f2888f3ccd5634bd2810dfd3 +size 3278 diff --git a/game/characters/cho/chibis/cc_robe.webp b/game/characters/cho/chibis/cc_robe.webp new file mode 100644 index 00000000..af91dc9c --- /dev/null +++ b/game/characters/cho/chibis/cc_robe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66de1de7bf1f56576a3e9dede28c96d10ac999c4a8a4f7046425f34ad2e965d6 +size 10508 diff --git a/game/characters/cho/chibis/cc_shoes.webp b/game/characters/cho/chibis/cc_shoes.webp new file mode 100644 index 00000000..92cfc037 --- /dev/null +++ b/game/characters/cho/chibis/cc_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abe6bf33feee6303a33fedda01b4c5aa2ba7298d71e28589ca9ad0858512e302 +size 2420 diff --git a/game/characters/cho/chibis/cc_skirt.webp b/game/characters/cho/chibis/cc_skirt.webp new file mode 100644 index 00000000..d15aa9e0 --- /dev/null +++ b/game/characters/cho/chibis/cc_skirt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdf9428516ce7fccdb29a58e66f6959b3f34e159307549285de256fda69b8036 +size 3574 diff --git a/game/characters/cho/chibis/cc_stand_blink.webp b/game/characters/cho/chibis/cc_stand_blink.webp new file mode 100644 index 00000000..b8fc4083 --- /dev/null +++ b/game/characters/cho/chibis/cc_stand_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9fc07c93b34a7d4bca1ee90e683149a6c0de9795b7c3671abf678a19636eb60b +size 19614 diff --git a/game/characters/cho/chibis/cc_sweater.webp b/game/characters/cho/chibis/cc_sweater.webp new file mode 100644 index 00000000..f39c7d33 --- /dev/null +++ b/game/characters/cho/chibis/cc_sweater.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd170972eaf3468651bfe224fee7f0a2e109a0a4f3b362883b9fbd09a5a5e573 +size 6124 diff --git a/game/characters/cho/chibis/cc_top.webp b/game/characters/cho/chibis/cc_top.webp new file mode 100644 index 00000000..225c7492 --- /dev/null +++ b/game/characters/cho/chibis/cc_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f78718a7355fb5dd9107cd47301bbaf90ad9617af4f0c659581aa61472a25f80 +size 4950 diff --git a/game/characters/cho/chibis/cc_trousers.webp b/game/characters/cho/chibis/cc_trousers.webp new file mode 100644 index 00000000..26c1eb35 --- /dev/null +++ b/game/characters/cho/chibis/cc_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d0ca1347c1361addaccb65861a298444c51bcf05e917813dd63d7d13b0ad243 +size 2706 diff --git a/game/characters/cho/chibis/cc_walk_01.webp b/game/characters/cho/chibis/cc_walk_01.webp new file mode 100644 index 00000000..cba33d6a --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2c1246da78f8aec1b5523db65ea42372f44bfbf8fd9eec35c30c67c16c2c9bd +size 20066 diff --git a/game/characters/cho/chibis/cc_walk_01_quid_shoes.webp b/game/characters/cho/chibis/cc_walk_01_quid_shoes.webp new file mode 100644 index 00000000..d7e4fa41 --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_01_quid_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19d30bea1d1185d08312ed2a6c53d0567767e677f2888f3ccd5634bd2810dfd3 +size 3278 diff --git a/game/characters/cho/chibis/cc_walk_01_shoes.webp b/game/characters/cho/chibis/cc_walk_01_shoes.webp new file mode 100644 index 00000000..92cfc037 --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_01_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abe6bf33feee6303a33fedda01b4c5aa2ba7298d71e28589ca9ad0858512e302 +size 2420 diff --git a/game/characters/cho/chibis/cc_walk_01_trousers.webp b/game/characters/cho/chibis/cc_walk_01_trousers.webp new file mode 100644 index 00000000..26c1eb35 --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_01_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d0ca1347c1361addaccb65861a298444c51bcf05e917813dd63d7d13b0ad243 +size 2706 diff --git a/game/characters/cho/chibis/cc_walk_02.webp b/game/characters/cho/chibis/cc_walk_02.webp new file mode 100644 index 00000000..ac3a44ff --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f26be93280f0883b457fdb085c3fcb010434072245be546bc09a4ecdefe90e88 +size 19592 diff --git a/game/characters/cho/chibis/cc_walk_02_quid_shoes.webp b/game/characters/cho/chibis/cc_walk_02_quid_shoes.webp new file mode 100644 index 00000000..3f95606f --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_02_quid_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6685ec9bd0c6e8253ad2ef8218369966b47dd035e0c7997779e2379cbcdf2474 +size 2246 diff --git a/game/characters/cho/chibis/cc_walk_02_shoes.webp b/game/characters/cho/chibis/cc_walk_02_shoes.webp new file mode 100644 index 00000000..04dd0f4a --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_02_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59705e41bbdad07b5bf67af1fa879261ceac14f0e068d803237484bb148b70ec +size 2044 diff --git a/game/characters/cho/chibis/cc_walk_02_trousers.webp b/game/characters/cho/chibis/cc_walk_02_trousers.webp new file mode 100644 index 00000000..7824bdec --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_02_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e556b5d16b1b620f40b86fe29066c0ceb76181d7262c4432cc9fd2acbe98b79a +size 2830 diff --git a/game/characters/cho/chibis/cc_walk_03.webp b/game/characters/cho/chibis/cc_walk_03.webp new file mode 100644 index 00000000..bd30d0e2 --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13e072ce43cee7e5568142d15782eaf6a2bb441651555fe0aa304d670971cb87 +size 20150 diff --git a/game/characters/cho/chibis/cc_walk_03_quid_shoes.webp b/game/characters/cho/chibis/cc_walk_03_quid_shoes.webp new file mode 100644 index 00000000..3fe11c9a --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_03_quid_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a22a40c05c269477949efb37ed1f0b849be4172157aa6a1b2babb6bcaca3d4f4 +size 3094 diff --git a/game/characters/cho/chibis/cc_walk_03_shoes.webp b/game/characters/cho/chibis/cc_walk_03_shoes.webp new file mode 100644 index 00000000..9e48fe4f --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_03_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7757d42124c7bcae8ffb5ec0c7c1d45b40502607cc360c15cdeb9320d45f5251 +size 2496 diff --git a/game/characters/cho/chibis/cc_walk_03_trousers.webp b/game/characters/cho/chibis/cc_walk_03_trousers.webp new file mode 100644 index 00000000..f133d923 --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_03_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:770aa88b2ef9256fec8b0a5f229549613125244d49b636ea550433168f5d4080 +size 3200 diff --git a/game/characters/cho/chibis/cc_walk_04.webp b/game/characters/cho/chibis/cc_walk_04.webp new file mode 100644 index 00000000..87e83d3f --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7296de8aa0695ed88e2fbaf1d029c35d8af1878a625c5de45864a2441267f28 +size 19994 diff --git a/game/characters/cho/chibis/cc_walk_04_quid_shoes.webp b/game/characters/cho/chibis/cc_walk_04_quid_shoes.webp new file mode 100644 index 00000000..ffe38958 --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_04_quid_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8c73ed664566c1b12d85bb4d8d258d3cbfc09f0697dfc82859d5fe9cd5efa46 +size 3320 diff --git a/game/characters/cho/chibis/cc_walk_04_shoes.webp b/game/characters/cho/chibis/cc_walk_04_shoes.webp new file mode 100644 index 00000000..89e316f4 --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_04_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9217416fc6b87e8f169e73a755454f845e84c6bccb9d4710f74b888ce5b3fe91 +size 2554 diff --git a/game/characters/cho/chibis/cc_walk_04_trousers.webp b/game/characters/cho/chibis/cc_walk_04_trousers.webp new file mode 100644 index 00000000..395e2069 --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_04_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1e2dca980f973c8f3adf509621ac2350afcbd70afa415cf8205991b30b54dfe +size 3486 diff --git a/game/characters/cho/chibis/cc_walk_05.webp b/game/characters/cho/chibis/cc_walk_05.webp new file mode 100644 index 00000000..6535fc34 --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c38ee7e00932c0ec41cb108a6188213bc03850737338f189bc8c8c677199bdad +size 20176 diff --git a/game/characters/cho/chibis/cc_walk_05_quid_shoes.webp b/game/characters/cho/chibis/cc_walk_05_quid_shoes.webp new file mode 100644 index 00000000..048902a4 --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_05_quid_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:108bc5bdb2f6112b60615d757037e1bcafb272b442d8e21479c622106fa89b75 +size 3742 diff --git a/game/characters/cho/chibis/cc_walk_05_shoes.webp b/game/characters/cho/chibis/cc_walk_05_shoes.webp new file mode 100644 index 00000000..335d9870 --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_05_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d86e491af2685e1c197e9f1dd1db7a60e37b9720d6dfd56bd65af84d164d343 +size 2582 diff --git a/game/characters/cho/chibis/cc_walk_05_trousers.webp b/game/characters/cho/chibis/cc_walk_05_trousers.webp new file mode 100644 index 00000000..98c5722b --- /dev/null +++ b/game/characters/cho/chibis/cc_walk_05_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c10076f8c317375004fdfb424533c70ab82be0806f76e2b7a5346ab7cc30cf7c +size 3548 diff --git a/game/characters/cho/chibis/fly/cc_fly_idle0.webp b/game/characters/cho/chibis/fly/cc_fly_idle0.webp new file mode 100644 index 00000000..dfe7be30 --- /dev/null +++ b/game/characters/cho/chibis/fly/cc_fly_idle0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d345bdfab7cca8663e62318a4540f3b0f5702d3ad59dd2ceeda4be33fd173185 +size 27792 diff --git a/game/characters/cho/chibis/fly/cc_fly_idle1.webp b/game/characters/cho/chibis/fly/cc_fly_idle1.webp new file mode 100644 index 00000000..940c4872 --- /dev/null +++ b/game/characters/cho/chibis/fly/cc_fly_idle1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4345084ff63a09cb638625b4adc7f0331b65c29862a78a405d4775a2e4f433d4 +size 27392 diff --git a/game/characters/cho/chibis/fly/cc_gloves.webp b/game/characters/cho/chibis/fly/cc_gloves.webp new file mode 100644 index 00000000..8dacddf6 --- /dev/null +++ b/game/characters/cho/chibis/fly/cc_gloves.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dce38db19e9216c36243ffd980a2d57fc10f15bbcb6527c8d3209ddddeaeada +size 1586 diff --git a/game/characters/cho/chibis/fly/cc_quid_robe.webp b/game/characters/cho/chibis/fly/cc_quid_robe.webp new file mode 100644 index 00000000..793f530f --- /dev/null +++ b/game/characters/cho/chibis/fly/cc_quid_robe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c7565cd351e23b39d00ea37263ba7a0336b24e1ca48d6a7485d01a48dd3fc55 +size 7076 diff --git a/game/characters/cho/chibis/fly/cc_quid_shoes.webp b/game/characters/cho/chibis/fly/cc_quid_shoes.webp new file mode 100644 index 00000000..f39c4533 --- /dev/null +++ b/game/characters/cho/chibis/fly/cc_quid_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77173bf99e98339dc18d3122d53f3067e611bfaac1a736bc87e707e3a86ba66b +size 2864 diff --git a/game/characters/cho/chibis/fly/cc_robe.webp b/game/characters/cho/chibis/fly/cc_robe.webp new file mode 100644 index 00000000..fd0986af --- /dev/null +++ b/game/characters/cho/chibis/fly/cc_robe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f23844300268b68de3931612043a34350d5c86941be94ee461fb30aa2300006 +size 34 diff --git a/game/characters/cho/chibis/fly/cc_shoes.webp b/game/characters/cho/chibis/fly/cc_shoes.webp new file mode 100644 index 00000000..500a4ae4 --- /dev/null +++ b/game/characters/cho/chibis/fly/cc_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1230d64e86a2683297f98827f066974f3d3ca77d60783ee9848ef748961a456 +size 2292 diff --git a/game/characters/cho/chibis/fly/cc_skirt.webp b/game/characters/cho/chibis/fly/cc_skirt.webp new file mode 100644 index 00000000..f1c95935 --- /dev/null +++ b/game/characters/cho/chibis/fly/cc_skirt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d21b6d135636843bf782e856e316118691b59ae302b508154008ea6149c5255 +size 1770 diff --git a/game/characters/cho/chibis/fly/cc_sweater.webp b/game/characters/cho/chibis/fly/cc_sweater.webp new file mode 100644 index 00000000..0aa87a74 --- /dev/null +++ b/game/characters/cho/chibis/fly/cc_sweater.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44887fcb310d5c1013ca46809ae8b11b3cd11a9c38e59f5bdb179f924de0f931 +size 5456 diff --git a/game/characters/cho/chibis/fly/cc_top.webp b/game/characters/cho/chibis/fly/cc_top.webp new file mode 100644 index 00000000..77b353a4 --- /dev/null +++ b/game/characters/cho/chibis/fly/cc_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cac6183afd5ad9a59fb71633d704d19b04e3e436e30de18e7d9ff638964b8327 +size 5426 diff --git a/game/characters/cho/chibis/fly/cc_trousers.webp b/game/characters/cho/chibis/fly/cc_trousers.webp new file mode 100644 index 00000000..5b755cea --- /dev/null +++ b/game/characters/cho/chibis/fly/cc_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:109aa0a8589aedf0ce7cca4afece8766a28b00aeaa8d4b508f5d3b3b1d842314 +size 2398 diff --git a/game/characters/cho/chibis/fly_move/cc_fly0.webp b/game/characters/cho/chibis/fly_move/cc_fly0.webp new file mode 100644 index 00000000..09447e2a --- /dev/null +++ b/game/characters/cho/chibis/fly_move/cc_fly0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd569aa39382f85f6c2d1cf8d1221021d117c0531a40f35480bfe3e45d4ccbfe +size 29098 diff --git a/game/characters/cho/chibis/fly_move/cc_fly1.webp b/game/characters/cho/chibis/fly_move/cc_fly1.webp new file mode 100644 index 00000000..d9981329 --- /dev/null +++ b/game/characters/cho/chibis/fly_move/cc_fly1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ac15003b049afbc08a7b8cc2da8b75e7b6fde5584952c730798ddecdff1229c +size 28844 diff --git a/game/characters/cho/chibis/fly_move/cc_gloves.webp b/game/characters/cho/chibis/fly_move/cc_gloves.webp new file mode 100644 index 00000000..6838e11c --- /dev/null +++ b/game/characters/cho/chibis/fly_move/cc_gloves.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79a1cede92889a6db27983d4aba5c00e684d0ac9f53c9e118874da5687bd57c5 +size 1598 diff --git a/game/characters/cho/chibis/fly_move/cc_quid_robe.webp b/game/characters/cho/chibis/fly_move/cc_quid_robe.webp new file mode 100644 index 00000000..e0ba5e5e --- /dev/null +++ b/game/characters/cho/chibis/fly_move/cc_quid_robe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1c847b0c6151cf296c064527ef6306067e264506ea43e63d1251b37d2db27c9 +size 7750 diff --git a/game/characters/cho/chibis/fly_move/cc_quid_shoes.webp b/game/characters/cho/chibis/fly_move/cc_quid_shoes.webp new file mode 100644 index 00000000..1a26e4b8 --- /dev/null +++ b/game/characters/cho/chibis/fly_move/cc_quid_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88854eae268946c6962c63a3e2f27041b5a4846613c33cbd47f3bad0bd6c1a04 +size 3016 diff --git a/game/characters/cho/chibis/fly_move/cc_robe_fly.webp b/game/characters/cho/chibis/fly_move/cc_robe_fly.webp new file mode 100644 index 00000000..fd0986af --- /dev/null +++ b/game/characters/cho/chibis/fly_move/cc_robe_fly.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f23844300268b68de3931612043a34350d5c86941be94ee461fb30aa2300006 +size 34 diff --git a/game/characters/cho/chibis/fly_move/cc_shoes.webp b/game/characters/cho/chibis/fly_move/cc_shoes.webp new file mode 100644 index 00000000..8f3df45a --- /dev/null +++ b/game/characters/cho/chibis/fly_move/cc_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e8d5c4dd258b0bc55e547cc1d52a490253f8889da038a0c519bc861dfee5e4d +size 2558 diff --git a/game/characters/cho/chibis/fly_move/cc_skirt.webp b/game/characters/cho/chibis/fly_move/cc_skirt.webp new file mode 100644 index 00000000..a7e47a08 --- /dev/null +++ b/game/characters/cho/chibis/fly_move/cc_skirt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3878aab5b5bb57c20ae8fbab55383a355e53d9b44c95768e8b9a6838892be689 +size 1878 diff --git a/game/characters/cho/chibis/fly_move/cc_sweater.webp b/game/characters/cho/chibis/fly_move/cc_sweater.webp new file mode 100644 index 00000000..e72897ea --- /dev/null +++ b/game/characters/cho/chibis/fly_move/cc_sweater.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ddd4298c307670a29d3981acfe9885137b7df5ac8d58bd0fbf30646f757fb1c +size 5898 diff --git a/game/characters/cho/chibis/fly_move/cc_top.webp b/game/characters/cho/chibis/fly_move/cc_top.webp new file mode 100644 index 00000000..717ee9bf --- /dev/null +++ b/game/characters/cho/chibis/fly_move/cc_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0abe3f544ba550ecf2609ac3f933fecf205eda723828d40f6e3d39ed2ef78323 +size 6388 diff --git a/game/characters/cho/chibis/fly_move/cc_trousers.webp b/game/characters/cho/chibis/fly_move/cc_trousers.webp new file mode 100644 index 00000000..9749a6f3 --- /dev/null +++ b/game/characters/cho/chibis/fly_move/cc_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db9382acb6b8d2925b2a584ac5af6880f80bbdb6a1fe0aad44c5c213c686278e +size 2732 diff --git a/game/characters/cho/clothes/accessory/body_wrap/0.webp b/game/characters/cho/clothes/accessory/body_wrap/0.webp new file mode 100644 index 00000000..4837ff50 --- /dev/null +++ b/game/characters/cho/clothes/accessory/body_wrap/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17391118d6f4dcbbef9f1c79e9e463aefa194e3a005fa0b9e777ed9ba18aa858 +size 4870 diff --git a/game/characters/cho/clothes/accessory/body_wrap/outline.webp b/game/characters/cho/clothes/accessory/body_wrap/outline.webp new file mode 100644 index 00000000..4ac1ecfa --- /dev/null +++ b/game/characters/cho/clothes/accessory/body_wrap/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d47b0e0434e91c3132c6afc46796e7facfc98050c216c1da9fc79e8e3fdc9775 +size 6652 diff --git a/game/characters/cho/clothes/accessory/chun_li_shoulders/0.webp b/game/characters/cho/clothes/accessory/chun_li_shoulders/0.webp new file mode 100644 index 00000000..3ca6342a --- /dev/null +++ b/game/characters/cho/clothes/accessory/chun_li_shoulders/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27ed9d64c9cfdf870a8bda7f6e947b3d0f2d911069c1215353b97cad3440e904 +size 8102 diff --git a/game/characters/cho/clothes/accessory/chun_li_shoulders/1.webp b/game/characters/cho/clothes/accessory/chun_li_shoulders/1.webp new file mode 100644 index 00000000..50d71d0d --- /dev/null +++ b/game/characters/cho/clothes/accessory/chun_li_shoulders/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b24ee082def89979b0aa3ed98f1313a7a42fd7da9b18565948d20abdc0b42616 +size 3594 diff --git a/game/characters/cho/clothes/accessory/chun_li_shoulders/extra.webp b/game/characters/cho/clothes/accessory/chun_li_shoulders/extra.webp new file mode 100644 index 00000000..c68825e8 --- /dev/null +++ b/game/characters/cho/clothes/accessory/chun_li_shoulders/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:727c421f8391c3afcef22947e6fca8d9320bbfd20431fa3ad839c8b48de0a9c5 +size 1130 diff --git a/game/characters/cho/clothes/accessory/chun_li_shoulders/outline.webp b/game/characters/cho/clothes/accessory/chun_li_shoulders/outline.webp new file mode 100644 index 00000000..67e2ebf9 --- /dev/null +++ b/game/characters/cho/clothes/accessory/chun_li_shoulders/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8372fb027c7f5f12050759b6b9fbf815c80277b7a846b7dfd42387d5958ffacb +size 8182 diff --git a/game/characters/cho/clothes/accessory/panties_in_hand/0.webp b/game/characters/cho/clothes/accessory/panties_in_hand/0.webp new file mode 100644 index 00000000..0c938bb9 --- /dev/null +++ b/game/characters/cho/clothes/accessory/panties_in_hand/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad25dccaf8c8dbdea169fb6f0dff14c44ceffd2489f36006f0e7637d4f1683d4 +size 3692 diff --git a/game/characters/cho/clothes/accessory/panties_in_hand/outline.webp b/game/characters/cho/clothes/accessory/panties_in_hand/outline.webp new file mode 100644 index 00000000..9ae82478 --- /dev/null +++ b/game/characters/cho/clothes/accessory/panties_in_hand/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb825528e24847509888be0155162673a504661b61e9402fb733801fbfb8fb43 +size 7184 diff --git a/game/characters/cho/clothes/accessory/protectors1/0.webp b/game/characters/cho/clothes/accessory/protectors1/0.webp new file mode 100644 index 00000000..6fbb7bcc --- /dev/null +++ b/game/characters/cho/clothes/accessory/protectors1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4f16469f76fa22ea43a2346407a802434ae02dff4da1c40bec6af146a42feae +size 94 diff --git a/game/characters/cho/clothes/accessory/protectors1/extra.webp b/game/characters/cho/clothes/accessory/protectors1/extra.webp new file mode 100644 index 00000000..6fbb7bcc --- /dev/null +++ b/game/characters/cho/clothes/accessory/protectors1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4f16469f76fa22ea43a2346407a802434ae02dff4da1c40bec6af146a42feae +size 94 diff --git a/game/characters/cho/clothes/accessory/protectors2/0.webp b/game/characters/cho/clothes/accessory/protectors2/0.webp new file mode 100644 index 00000000..6fbb7bcc --- /dev/null +++ b/game/characters/cho/clothes/accessory/protectors2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4f16469f76fa22ea43a2346407a802434ae02dff4da1c40bec6af146a42feae +size 94 diff --git a/game/characters/cho/clothes/accessory/protectors2/extra.webp b/game/characters/cho/clothes/accessory/protectors2/extra.webp new file mode 100644 index 00000000..6fbb7bcc --- /dev/null +++ b/game/characters/cho/clothes/accessory/protectors2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4f16469f76fa22ea43a2346407a802434ae02dff4da1c40bec6af146a42feae +size 94 diff --git a/game/characters/cho/clothes/accessory/suspenders/0.webp b/game/characters/cho/clothes/accessory/suspenders/0.webp new file mode 100644 index 00000000..7a86548d --- /dev/null +++ b/game/characters/cho/clothes/accessory/suspenders/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86217cf833b4327c298fbcdea4a0e0aed2e55fe8328f5ac2d528416e4834c235 +size 3758 diff --git a/game/characters/cho/clothes/accessory/suspenders/1.webp b/game/characters/cho/clothes/accessory/suspenders/1.webp new file mode 100644 index 00000000..bf4df21d --- /dev/null +++ b/game/characters/cho/clothes/accessory/suspenders/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12281a39cee2df3f4a9bbe80d6f8419f5658022f58efbcd3c41149a6e61fa9f4 +size 576 diff --git a/game/characters/cho/clothes/accessory/suspenders/outline.webp b/game/characters/cho/clothes/accessory/suspenders/outline.webp new file mode 100644 index 00000000..db1fc329 --- /dev/null +++ b/game/characters/cho/clothes/accessory/suspenders/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ece75b9c3b58f316373326a7c287efb6b45a609e517011ff4270c3be4d1731f +size 11270 diff --git a/game/characters/cho/clothes/accessory/suspenders/suspenders_1.webp b/game/characters/cho/clothes/accessory/suspenders/suspenders_1.webp new file mode 100644 index 00000000..75d6d40f --- /dev/null +++ b/game/characters/cho/clothes/accessory/suspenders/suspenders_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e033152e3e9f30d64ef847198c6b81d2878c2188534faa0901d5fbc649828f63 +size 16544 diff --git a/game/characters/cho/clothes/bottom/j_school_skirt_1/0.webp b/game/characters/cho/clothes/bottom/j_school_skirt_1/0.webp new file mode 100644 index 00000000..e82f6fb9 --- /dev/null +++ b/game/characters/cho/clothes/bottom/j_school_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b2531fc815cc51f61fd46c65f75448934e2c7ec8c64ea45096d7a9b5b20f739 +size 24486 diff --git a/game/characters/cho/clothes/bottom/j_school_skirt_1/outline.webp b/game/characters/cho/clothes/bottom/j_school_skirt_1/outline.webp new file mode 100644 index 00000000..7941186a --- /dev/null +++ b/game/characters/cho/clothes/bottom/j_school_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:184bfb33ba2f269c13d028886057ed5577e011713a58770ac442b761cec754e3 +size 18540 diff --git a/game/characters/cho/clothes/bottom/j_school_skirt_1/skin.webp b/game/characters/cho/clothes/bottom/j_school_skirt_1/skin.webp new file mode 100644 index 00000000..50a94b99 --- /dev/null +++ b/game/characters/cho/clothes/bottom/j_school_skirt_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1acc6ee3e4f26cddb2056a72e321d3bba6df36fb146d5a733b5cda9a4a2b5ea3 +size 2326 diff --git a/game/characters/cho/clothes/bottom/pants_long_1/0.webp b/game/characters/cho/clothes/bottom/pants_long_1/0.webp new file mode 100644 index 00000000..8233c222 --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_long_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91c50fc1c4658dfa94c887654bac009b6e784b8b7123cb5459eccd71d08d1138 +size 8902 diff --git a/game/characters/cho/clothes/bottom/pants_long_1/outline.webp b/game/characters/cho/clothes/bottom/pants_long_1/outline.webp new file mode 100644 index 00000000..f3c377da --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_long_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:025e59cc7a3a50821889e3a3d1484f39be75881fae12d5f0f7408378eef57342 +size 14114 diff --git a/game/characters/cho/clothes/bottom/pants_long_2/0.webp b/game/characters/cho/clothes/bottom/pants_long_2/0.webp new file mode 100644 index 00000000..09cb5c8b --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_long_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff930d5201bdd5d130fceae327d02465127377fcb70be45e0b7d4861929b0888 +size 9574 diff --git a/game/characters/cho/clothes/bottom/pants_long_2/1.webp b/game/characters/cho/clothes/bottom/pants_long_2/1.webp new file mode 100644 index 00000000..8233fbe1 --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_long_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:396a97e60a98d7d4d6b8b6ef7d5656dce99b692058f232d137eebdd15aa73eb7 +size 704 diff --git a/game/characters/cho/clothes/bottom/pants_long_2/outline.webp b/game/characters/cho/clothes/bottom/pants_long_2/outline.webp new file mode 100644 index 00000000..493cc41f --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_long_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0275f84bcaa417a88b8fa9f8f99f352bf6d54da51d87396aebe38d8c5490ffa +size 9736 diff --git a/game/characters/cho/clothes/bottom/pants_short_1/0.webp b/game/characters/cho/clothes/bottom/pants_short_1/0.webp new file mode 100644 index 00000000..86e2085b --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7034a9fae56340e40a020b432d6b0d78487c42d1285e38ef194a65a8561a69d5 +size 5276 diff --git a/game/characters/cho/clothes/bottom/pants_short_1/outline.webp b/game/characters/cho/clothes/bottom/pants_short_1/outline.webp new file mode 100644 index 00000000..c653b48d --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:beae82392b7f7c91e5b96fbfdbef8e0e3adbd0cc5e770bec4642d02e674e75fc +size 9418 diff --git a/game/characters/cho/clothes/bottom/pants_short_2/0.webp b/game/characters/cho/clothes/bottom/pants_short_2/0.webp new file mode 100644 index 00000000..c38014e7 --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48c5311f9c3e6b0693979cc7bc968de470251e37f2ba9d37db3fe5ce5b5d9d9f +size 8034 diff --git a/game/characters/cho/clothes/bottom/pants_short_2/1.webp b/game/characters/cho/clothes/bottom/pants_short_2/1.webp new file mode 100644 index 00000000..a21eea87 --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0af9bb8c836f1fd687c0fb2e3cd634c114fffe91ced1523996835ae796b4be98 +size 508 diff --git a/game/characters/cho/clothes/bottom/pants_short_2/extra.webp b/game/characters/cho/clothes/bottom/pants_short_2/extra.webp new file mode 100644 index 00000000..445e06a6 --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5e1f5fee8bb5c5b4dd99c89f11357f9b8572f30e392728f5a80d60a557f9468 +size 4288 diff --git a/game/characters/cho/clothes/bottom/pants_short_2/outline.webp b/game/characters/cho/clothes/bottom/pants_short_2/outline.webp new file mode 100644 index 00000000..ef86cfdc --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:015ff368ef10801623bd33fdf06a78a59330d327838082a73d39e54e50c7732e +size 13052 diff --git a/game/characters/cho/clothes/bottom/pants_short_2/skin.webp b/game/characters/cho/clothes/bottom/pants_short_2/skin.webp new file mode 100644 index 00000000..56d06f6e --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa1de6be3fb87309d0f7f487be866e46a009f17cfe32ce632196c0c295ef8960 +size 5188 diff --git a/game/characters/cho/clothes/bottom/pants_short_3/0.webp b/game/characters/cho/clothes/bottom/pants_short_3/0.webp new file mode 100644 index 00000000..49107fa0 --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df6e1798d60d82fd7d1b994dd2406c0c74e2564245c74dc9d622bdf0e3e2ca7c +size 4910 diff --git a/game/characters/cho/clothes/bottom/pants_short_3/1.webp b/game/characters/cho/clothes/bottom/pants_short_3/1.webp new file mode 100644 index 00000000..2d7c059a --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c758abf5616f84026380882dc3f3a9f245c823e8c55c4f6671e24b7b7bdb0b4 +size 3178 diff --git a/game/characters/cho/clothes/bottom/pants_short_3/2.webp b/game/characters/cho/clothes/bottom/pants_short_3/2.webp new file mode 100644 index 00000000..4fa227cd --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_3/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18cb7a15d7b335299da7ad591bb5b3fe09793164aaffb81e690ab61cd00fce55 +size 566 diff --git a/game/characters/cho/clothes/bottom/pants_short_3/outline.webp b/game/characters/cho/clothes/bottom/pants_short_3/outline.webp new file mode 100644 index 00000000..afbe0fbc --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e51dc8c5c8eccaa5494a8795c53e1e487ff10bf9d68e6005dc6fe2a50ea00ce +size 9762 diff --git a/game/characters/cho/clothes/bottom/pants_short_4/0.webp b/game/characters/cho/clothes/bottom/pants_short_4/0.webp new file mode 100644 index 00000000..d5564f5d --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4aef51f667203f52d22caa071b279ed861da7ee9333adf697efe43a4b098d0d6 +size 6096 diff --git a/game/characters/cho/clothes/bottom/pants_short_4/1.webp b/game/characters/cho/clothes/bottom/pants_short_4/1.webp new file mode 100644 index 00000000..9b046852 --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dababb405def2a9d1ebaf68fb3fc28bcc5378eacfe9572960248c6d6455b1773 +size 704 diff --git a/game/characters/cho/clothes/bottom/pants_short_4/outline.webp b/game/characters/cho/clothes/bottom/pants_short_4/outline.webp new file mode 100644 index 00000000..7d8241b7 --- /dev/null +++ b/game/characters/cho/clothes/bottom/pants_short_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93c26070d8ac692323c20b9c1d2a6e30bc08d8949c316a6855a3541a5b5ea9f5 +size 6346 diff --git a/game/characters/cho/clothes/bottom/police_skirt/0.webp b/game/characters/cho/clothes/bottom/police_skirt/0.webp new file mode 100644 index 00000000..ed1928af --- /dev/null +++ b/game/characters/cho/clothes/bottom/police_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87a7e880811f29ab9672fe3d6a9bca8c2f5677d64e202bb373863dd020c1d1aa +size 7310 diff --git a/game/characters/cho/clothes/bottom/police_skirt/1.webp b/game/characters/cho/clothes/bottom/police_skirt/1.webp new file mode 100644 index 00000000..8001ce18 --- /dev/null +++ b/game/characters/cho/clothes/bottom/police_skirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2abec680e1df7d90ff925f2781d4c37d5e58aa507c022d6a04c40c41f376d020 +size 738 diff --git a/game/characters/cho/clothes/bottom/police_skirt/2.webp b/game/characters/cho/clothes/bottom/police_skirt/2.webp new file mode 100644 index 00000000..708d42bf --- /dev/null +++ b/game/characters/cho/clothes/bottom/police_skirt/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6a098d4327fd746c9c8141d3bbbb0addd14d665319e5edb3ca98e7f9d208ec7 +size 2456 diff --git a/game/characters/cho/clothes/bottom/police_skirt/3.webp b/game/characters/cho/clothes/bottom/police_skirt/3.webp new file mode 100644 index 00000000..0e907107 --- /dev/null +++ b/game/characters/cho/clothes/bottom/police_skirt/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99fa4eb2041e80465f04becfb9a60a4c792623f483abc3263141e16a7371b5e9 +size 1056 diff --git a/game/characters/cho/clothes/bottom/police_skirt/outline.webp b/game/characters/cho/clothes/bottom/police_skirt/outline.webp new file mode 100644 index 00000000..43c96e51 --- /dev/null +++ b/game/characters/cho/clothes/bottom/police_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f95569269f2dd833062d8c816f5e2ead94b34935dbf44ab4e29ca20c8f27ce07 +size 8480 diff --git a/game/characters/cho/clothes/bottom/police_skirt/skin.webp b/game/characters/cho/clothes/bottom/police_skirt/skin.webp new file mode 100644 index 00000000..4de56b1e --- /dev/null +++ b/game/characters/cho/clothes/bottom/police_skirt/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b47012187f6a3e6ca18719b022d9ad88df0ca9f67e17479cc203fefd9e936936 +size 2398 diff --git a/game/characters/cho/clothes/bottom/quid_skirt_1/0.webp b/game/characters/cho/clothes/bottom/quid_skirt_1/0.webp new file mode 100644 index 00000000..eef46dc6 --- /dev/null +++ b/game/characters/cho/clothes/bottom/quid_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac194b15adb4e9a7d68845bd387e2998108cfbcb98c9a11d2cf1aa79498b73db +size 9046 diff --git a/game/characters/cho/clothes/bottom/quid_skirt_1/1.webp b/game/characters/cho/clothes/bottom/quid_skirt_1/1.webp new file mode 100644 index 00000000..ec8fd546 --- /dev/null +++ b/game/characters/cho/clothes/bottom/quid_skirt_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76ddd1bdd8e8564078d35ab65565bbde406978cd5a6ce111b702e6cd1b3a7c8e +size 3876 diff --git a/game/characters/cho/clothes/bottom/quid_skirt_1/extra.webp b/game/characters/cho/clothes/bottom/quid_skirt_1/extra.webp new file mode 100644 index 00000000..3e438a70 --- /dev/null +++ b/game/characters/cho/clothes/bottom/quid_skirt_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f252c981eb7e39467c25a083ce46785149623ba939f6e68fddab99e2011b50b6 +size 3052 diff --git a/game/characters/cho/clothes/bottom/quid_skirt_1/outline.webp b/game/characters/cho/clothes/bottom/quid_skirt_1/outline.webp new file mode 100644 index 00000000..9223241a --- /dev/null +++ b/game/characters/cho/clothes/bottom/quid_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eab4bd9f0a99db8fab7c33c00bf636de5ba0cc7b6cccecdbb8ad1a48c1b644c3 +size 12358 diff --git a/game/characters/cho/clothes/bottom/quid_skirt_1/skin.webp b/game/characters/cho/clothes/bottom/quid_skirt_1/skin.webp new file mode 100644 index 00000000..62aaada5 --- /dev/null +++ b/game/characters/cho/clothes/bottom/quid_skirt_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb3ae6e08712cda33007b817eb1e8061ea5e41506103461789910729088a05d3 +size 2768 diff --git a/game/characters/cho/clothes/bottom/school_skirt_1/0.webp b/game/characters/cho/clothes/bottom/school_skirt_1/0.webp new file mode 100644 index 00000000..15b5f4cc --- /dev/null +++ b/game/characters/cho/clothes/bottom/school_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b520abb6bd94edee17f65581847d40f93e9ae6dbc62f1c309a74a5563d4671c +size 20860 diff --git a/game/characters/cho/clothes/bottom/school_skirt_1/1.webp b/game/characters/cho/clothes/bottom/school_skirt_1/1.webp new file mode 100644 index 00000000..f4d30e2a --- /dev/null +++ b/game/characters/cho/clothes/bottom/school_skirt_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00a6a13664bf12fd3c1736527627530271bb5f2524abca32e1d7ed80347bff76 +size 666 diff --git a/game/characters/cho/clothes/bottom/school_skirt_1/outline.webp b/game/characters/cho/clothes/bottom/school_skirt_1/outline.webp new file mode 100644 index 00000000..224b9aad --- /dev/null +++ b/game/characters/cho/clothes/bottom/school_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6baeda66e814b99ac85f122c6461363af40f63df399bee90b9ce40ee00002c4a +size 21038 diff --git a/game/characters/cho/clothes/bottom/school_skirt_2/0.webp b/game/characters/cho/clothes/bottom/school_skirt_2/0.webp new file mode 100644 index 00000000..c999d80a --- /dev/null +++ b/game/characters/cho/clothes/bottom/school_skirt_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6479f0a1e4e7609af84e00b3b4c38fe86d3c086b255ee9174bc9227c74c57bca +size 14840 diff --git a/game/characters/cho/clothes/bottom/school_skirt_2/1.webp b/game/characters/cho/clothes/bottom/school_skirt_2/1.webp new file mode 100644 index 00000000..f4d30e2a --- /dev/null +++ b/game/characters/cho/clothes/bottom/school_skirt_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00a6a13664bf12fd3c1736527627530271bb5f2524abca32e1d7ed80347bff76 +size 666 diff --git a/game/characters/cho/clothes/bottom/school_skirt_2/outline.webp b/game/characters/cho/clothes/bottom/school_skirt_2/outline.webp new file mode 100644 index 00000000..69d2d210 --- /dev/null +++ b/game/characters/cho/clothes/bottom/school_skirt_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e54e304046556f87d6b153f13a459eddf1aaa450289612b57d1d2b66917a055f +size 13818 diff --git a/game/characters/cho/clothes/bottom/school_skirt_3/0.webp b/game/characters/cho/clothes/bottom/school_skirt_3/0.webp new file mode 100644 index 00000000..54c807a9 --- /dev/null +++ b/game/characters/cho/clothes/bottom/school_skirt_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c6c69ee6df2e3c62a5ea924b7a37d589a7cf0b79131835c0d92ba4f069bd795 +size 10878 diff --git a/game/characters/cho/clothes/bottom/school_skirt_3/1.webp b/game/characters/cho/clothes/bottom/school_skirt_3/1.webp new file mode 100644 index 00000000..f4d30e2a --- /dev/null +++ b/game/characters/cho/clothes/bottom/school_skirt_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00a6a13664bf12fd3c1736527627530271bb5f2524abca32e1d7ed80347bff76 +size 666 diff --git a/game/characters/cho/clothes/bottom/school_skirt_3/outline.webp b/game/characters/cho/clothes/bottom/school_skirt_3/outline.webp new file mode 100644 index 00000000..bb0b092d --- /dev/null +++ b/game/characters/cho/clothes/bottom/school_skirt_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8689d73d7108dc4da025f6641521444423c40495de8f0aa23c76f6905d685124 +size 9860 diff --git a/game/characters/cho/clothes/bottom/school_skirt_4/0.webp b/game/characters/cho/clothes/bottom/school_skirt_4/0.webp new file mode 100644 index 00000000..6b2f93cf --- /dev/null +++ b/game/characters/cho/clothes/bottom/school_skirt_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5554f840696fa2b7baa90734566652ae88dd5b0e1098ffcd40d41e0057ea393 +size 8512 diff --git a/game/characters/cho/clothes/bottom/school_skirt_4/1.webp b/game/characters/cho/clothes/bottom/school_skirt_4/1.webp new file mode 100644 index 00000000..f4d30e2a --- /dev/null +++ b/game/characters/cho/clothes/bottom/school_skirt_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00a6a13664bf12fd3c1736527627530271bb5f2524abca32e1d7ed80347bff76 +size 666 diff --git a/game/characters/cho/clothes/bottom/school_skirt_4/outline.webp b/game/characters/cho/clothes/bottom/school_skirt_4/outline.webp new file mode 100644 index 00000000..9a201ff7 --- /dev/null +++ b/game/characters/cho/clothes/bottom/school_skirt_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac3d39de138b87251f894a5de2b6baa6f0ec5f439d1b9203a7de3e42e3c83883 +size 7930 diff --git a/game/characters/cho/clothes/bottom/skirt_short_1/0.webp b/game/characters/cho/clothes/bottom/skirt_short_1/0.webp new file mode 100644 index 00000000..efe3bd13 --- /dev/null +++ b/game/characters/cho/clothes/bottom/skirt_short_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91e8dda8a79f69cc4059a12e2ce00dadcdd9b007a791c1a9e2c15899ce7acc9b +size 8096 diff --git a/game/characters/cho/clothes/bottom/skirt_short_1/outline.webp b/game/characters/cho/clothes/bottom/skirt_short_1/outline.webp new file mode 100644 index 00000000..0f0ef121 --- /dev/null +++ b/game/characters/cho/clothes/bottom/skirt_short_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c36060cbc0cd7914814a72ae498569dc6a13bc4f11f103a30f76d5d47d78a899 +size 6336 diff --git a/game/characters/cho/clothes/bottom/skirt_short_2/0.webp b/game/characters/cho/clothes/bottom/skirt_short_2/0.webp new file mode 100644 index 00000000..56d3f72c --- /dev/null +++ b/game/characters/cho/clothes/bottom/skirt_short_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfc6bda655d09549330c93336954fbb659343d1b6b1f15b19a74c5948d4366bf +size 5810 diff --git a/game/characters/cho/clothes/bottom/skirt_short_2/outline.webp b/game/characters/cho/clothes/bottom/skirt_short_2/outline.webp new file mode 100644 index 00000000..c2ac6f76 --- /dev/null +++ b/game/characters/cho/clothes/bottom/skirt_short_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b021360d5cad5cb811f945ea1ff3893f64fdd1424e46132e37f0f34e5b652b15 +size 5718 diff --git a/game/characters/cho/clothes/bottom/skirt_short_2/skin.webp b/game/characters/cho/clothes/bottom/skirt_short_2/skin.webp new file mode 100644 index 00000000..b6a035fa --- /dev/null +++ b/game/characters/cho/clothes/bottom/skirt_short_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03cab65b453eff5afcaea3f053c450dda0b54ae89ac95fddf32cd9a55e4c97c3 +size 6000 diff --git a/game/characters/cho/clothes/bottom/toon_shorts/0.webp b/game/characters/cho/clothes/bottom/toon_shorts/0.webp new file mode 100644 index 00000000..8522cf21 --- /dev/null +++ b/game/characters/cho/clothes/bottom/toon_shorts/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e5f0dc86290abacfb7c808a586a77561a9f0ba8c6d1a85e498a34b8e9639c20 +size 9958 diff --git a/game/characters/cho/clothes/bottom/toon_shorts/1.webp b/game/characters/cho/clothes/bottom/toon_shorts/1.webp new file mode 100644 index 00000000..bc7b6fd9 --- /dev/null +++ b/game/characters/cho/clothes/bottom/toon_shorts/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c34d2910dc911807c43a4dbd2c9b668b4cb8ad180607e8afa47522e627ef4a8 +size 2098 diff --git a/game/characters/cho/clothes/bottom/toon_shorts/outline.webp b/game/characters/cho/clothes/bottom/toon_shorts/outline.webp new file mode 100644 index 00000000..a64ca543 --- /dev/null +++ b/game/characters/cho/clothes/bottom/toon_shorts/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed9d28cf24310eea13e7f651db4f90161af1c996441df2980d76cfb945db0652 +size 9822 diff --git a/game/characters/cho/clothes/bottom/toon_shorts/skin.webp b/game/characters/cho/clothes/bottom/toon_shorts/skin.webp new file mode 100644 index 00000000..0224ee34 --- /dev/null +++ b/game/characters/cho/clothes/bottom/toon_shorts/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0335899b00d3422222ea01e6902738867fdc62ac084f92c57ca43f956b482137 +size 3078 diff --git a/game/characters/cho/clothes/bra/basic_bra_1/0.webp b/game/characters/cho/clothes/bra/basic_bra_1/0.webp new file mode 100644 index 00000000..2d34e9ad --- /dev/null +++ b/game/characters/cho/clothes/bra/basic_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26a4feb97912933167a297f512b0aef7fe4d35f75e01a532c576cfd92e7fb729 +size 6468 diff --git a/game/characters/cho/clothes/bra/basic_bra_1/1.webp b/game/characters/cho/clothes/bra/basic_bra_1/1.webp new file mode 100644 index 00000000..f72ffb58 --- /dev/null +++ b/game/characters/cho/clothes/bra/basic_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65a2d02d8a5524b67956045c2a1c4b19754ea52bfb1597de79ab715ae688add8 +size 1048 diff --git a/game/characters/cho/clothes/bra/basic_bra_1/extra.webp b/game/characters/cho/clothes/bra/basic_bra_1/extra.webp new file mode 100644 index 00000000..efbb5a5f --- /dev/null +++ b/game/characters/cho/clothes/bra/basic_bra_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e67762c9ca5c8b4421c50cee8e8004d48931f8e03f6da0f798d2c422edf480e +size 626 diff --git a/game/characters/cho/clothes/bra/basic_bra_1/outline.webp b/game/characters/cho/clothes/bra/basic_bra_1/outline.webp new file mode 100644 index 00000000..bb4413c1 --- /dev/null +++ b/game/characters/cho/clothes/bra/basic_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca0a98914217e0ca7225e16d5030dc1d152852da05c0d298aefef151fba0c7c5 +size 5964 diff --git a/game/characters/cho/clothes/bra/basic_bra_1/skin.webp b/game/characters/cho/clothes/bra/basic_bra_1/skin.webp new file mode 100644 index 00000000..7c3a089c --- /dev/null +++ b/game/characters/cho/clothes/bra/basic_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32924addc3d5225e238640cfbe6188abff8850b2cd55b7a5c5cb4bdb668b7900 +size 4128 diff --git a/game/characters/cho/clothes/bra/basic_bra_2/0.webp b/game/characters/cho/clothes/bra/basic_bra_2/0.webp new file mode 100644 index 00000000..7a1846d9 --- /dev/null +++ b/game/characters/cho/clothes/bra/basic_bra_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0de4f461dbd3dea770cf094382c6228e5b281c3d1b3bcd099ccabb15d1d1368 +size 2042 diff --git a/game/characters/cho/clothes/bra/basic_bra_2/1.webp b/game/characters/cho/clothes/bra/basic_bra_2/1.webp new file mode 100644 index 00000000..53606196 --- /dev/null +++ b/game/characters/cho/clothes/bra/basic_bra_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a65d6ea99040a3a739f0a9303b494cf7d5db9ec214e18dd7e9905ae9acf14b7b +size 5208 diff --git a/game/characters/cho/clothes/bra/basic_bra_2/2.webp b/game/characters/cho/clothes/bra/basic_bra_2/2.webp new file mode 100644 index 00000000..8b018601 --- /dev/null +++ b/game/characters/cho/clothes/bra/basic_bra_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5061bcf616eaf4bcf99a6f659ac9b673381bc3463fa9116ce069994d2401c02 +size 1022 diff --git a/game/characters/cho/clothes/bra/basic_bra_2/outline.webp b/game/characters/cho/clothes/bra/basic_bra_2/outline.webp new file mode 100644 index 00000000..568da37d --- /dev/null +++ b/game/characters/cho/clothes/bra/basic_bra_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be40464778e12766f3801716c6f8dd37844ce19b054960eaffdd2c54dffc43bb +size 8060 diff --git a/game/characters/cho/clothes/bra/basic_bra_2/skin.webp b/game/characters/cho/clothes/bra/basic_bra_2/skin.webp new file mode 100644 index 00000000..37cfb05c --- /dev/null +++ b/game/characters/cho/clothes/bra/basic_bra_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1f91a4377205afd2990acbc3a19512f6c35010403cb72d27da19af4f81b3202 +size 6388 diff --git a/game/characters/cho/clothes/bra/bikini_top_1/0.webp b/game/characters/cho/clothes/bra/bikini_top_1/0.webp new file mode 100644 index 00000000..8e319f84 --- /dev/null +++ b/game/characters/cho/clothes/bra/bikini_top_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6b090734ac48e465ff2282df432ece9cdb59babfe3f085534f45d8593e00237 +size 6420 diff --git a/game/characters/cho/clothes/bra/bikini_top_1/extra.webp b/game/characters/cho/clothes/bra/bikini_top_1/extra.webp new file mode 100644 index 00000000..88baded5 --- /dev/null +++ b/game/characters/cho/clothes/bra/bikini_top_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6335e126b17b20ad624dd85859ef3d3b5b9a00ec57a2a01b31663521b5aa4d3a +size 1204 diff --git a/game/characters/cho/clothes/bra/bikini_top_1/outline.webp b/game/characters/cho/clothes/bra/bikini_top_1/outline.webp new file mode 100644 index 00000000..3134d22f --- /dev/null +++ b/game/characters/cho/clothes/bra/bikini_top_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c9e6dc533b4ce0cf6a979694857da49a52b358f0ccf8dc153a03a62b3ea40e7 +size 5588 diff --git a/game/characters/cho/clothes/bra/bikini_top_1/skin.webp b/game/characters/cho/clothes/bra/bikini_top_1/skin.webp new file mode 100644 index 00000000..e86c0d82 --- /dev/null +++ b/game/characters/cho/clothes/bra/bikini_top_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f49c969e63e848b0f2c747c253154249cf8ee7e8bb8186e6da987faafd39d19 +size 6390 diff --git a/game/characters/cho/clothes/bra/bikini_top_2/0.webp b/game/characters/cho/clothes/bra/bikini_top_2/0.webp new file mode 100644 index 00000000..dc50f427 --- /dev/null +++ b/game/characters/cho/clothes/bra/bikini_top_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8348a3af1ff630801ac58a70e9c4215b218f359d4fcf5c8cc29f18ea048b1d9 +size 3598 diff --git a/game/characters/cho/clothes/bra/bikini_top_2/outline.webp b/game/characters/cho/clothes/bra/bikini_top_2/outline.webp new file mode 100644 index 00000000..1cbe3c34 --- /dev/null +++ b/game/characters/cho/clothes/bra/bikini_top_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d980f781e1822586f1bc82f16fed2f0ef51512760a31afc3cc578780c08d7ab +size 4082 diff --git a/game/characters/cho/clothes/bra/lace_bra_1/0.webp b/game/characters/cho/clothes/bra/lace_bra_1/0.webp new file mode 100644 index 00000000..96706ae8 --- /dev/null +++ b/game/characters/cho/clothes/bra/lace_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38afd404d15e6a28ff04c9fc814cdb94a8da1fef50a9cd7051f3707a61bfc1e8 +size 2006 diff --git a/game/characters/cho/clothes/bra/lace_bra_1/1.webp b/game/characters/cho/clothes/bra/lace_bra_1/1.webp new file mode 100644 index 00000000..8b54c2ad --- /dev/null +++ b/game/characters/cho/clothes/bra/lace_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f76cc4026d35af88495f37146e56654a4a681eed65fbfe57cf44ee6e5804b58 +size 7100 diff --git a/game/characters/cho/clothes/bra/lace_bra_1/2.webp b/game/characters/cho/clothes/bra/lace_bra_1/2.webp new file mode 100644 index 00000000..e1167fb6 --- /dev/null +++ b/game/characters/cho/clothes/bra/lace_bra_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:119a275af60fcc47081df9c354d6210873f8764f3ba1c3ece3d1a3db519477ac +size 1086 diff --git a/game/characters/cho/clothes/bra/lace_bra_1/outline.webp b/game/characters/cho/clothes/bra/lace_bra_1/outline.webp new file mode 100644 index 00000000..2e48e975 --- /dev/null +++ b/game/characters/cho/clothes/bra/lace_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac9c113f776642bb485de4faa4ed0dbe61efa06620928a9448ba4abf5f33880b +size 6478 diff --git a/game/characters/cho/clothes/bra/lace_bra_1/skin.webp b/game/characters/cho/clothes/bra/lace_bra_1/skin.webp new file mode 100644 index 00000000..7567147b --- /dev/null +++ b/game/characters/cho/clothes/bra/lace_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4196c3ce160e39221432f8e4448fc163b13cf4593fd6f8f66cdfad97281f6525 +size 5266 diff --git a/game/characters/cho/clothes/bra/lace_bra_2/0.webp b/game/characters/cho/clothes/bra/lace_bra_2/0.webp new file mode 100644 index 00000000..389aab55 --- /dev/null +++ b/game/characters/cho/clothes/bra/lace_bra_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbd69db3d58f62994ec0f5e3fd42feb4e091ac23e3ca1ecc7d5c47b1d0c12a52 +size 5304 diff --git a/game/characters/cho/clothes/bra/lace_bra_2/1.webp b/game/characters/cho/clothes/bra/lace_bra_2/1.webp new file mode 100644 index 00000000..7710fa02 --- /dev/null +++ b/game/characters/cho/clothes/bra/lace_bra_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c94fa8abac5a63d2e3e307ca1971caf6e80005674bf21b2ee43a48d01c39b2e6 +size 1794 diff --git a/game/characters/cho/clothes/bra/lace_bra_2/2.webp b/game/characters/cho/clothes/bra/lace_bra_2/2.webp new file mode 100644 index 00000000..3792ae09 --- /dev/null +++ b/game/characters/cho/clothes/bra/lace_bra_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbccb8cc2021dbede187104da584724109cfaf6248cba82963d02f33f8485ee8 +size 3054 diff --git a/game/characters/cho/clothes/bra/lace_bra_2/3.webp b/game/characters/cho/clothes/bra/lace_bra_2/3.webp new file mode 100644 index 00000000..076be22d --- /dev/null +++ b/game/characters/cho/clothes/bra/lace_bra_2/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96749daf5a3fdf6f5ebdf836f3dc6436a215e344e1959038e7909f0057d76818 +size 1312 diff --git a/game/characters/cho/clothes/bra/lace_bra_2/outline.webp b/game/characters/cho/clothes/bra/lace_bra_2/outline.webp new file mode 100644 index 00000000..cf13d296 --- /dev/null +++ b/game/characters/cho/clothes/bra/lace_bra_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c32a556c84fe77323a7dc36ffc702a6a821c2f2c9c6f0a0dd38e04bd8aeefcc2 +size 8048 diff --git a/game/characters/cho/clothes/bra/sport_bra_1/0.webp b/game/characters/cho/clothes/bra/sport_bra_1/0.webp new file mode 100644 index 00000000..e4135a06 --- /dev/null +++ b/game/characters/cho/clothes/bra/sport_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a0327824451eb7140ba4114b14fb9e46e82a411a842ac70d28e6e4941bf218d +size 5138 diff --git a/game/characters/cho/clothes/bra/sport_bra_1/extra.webp b/game/characters/cho/clothes/bra/sport_bra_1/extra.webp new file mode 100644 index 00000000..9bb1a9da --- /dev/null +++ b/game/characters/cho/clothes/bra/sport_bra_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a812133a8aa9415b34cd099804cf121fce48053048c5a024970b6e748b624ee +size 1978 diff --git a/game/characters/cho/clothes/bra/sport_bra_1/outline.webp b/game/characters/cho/clothes/bra/sport_bra_1/outline.webp new file mode 100644 index 00000000..f7e2db26 --- /dev/null +++ b/game/characters/cho/clothes/bra/sport_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d278eee329965a3c977f7508182a2de74e3bf4f71fb8e486151383a0d85f08a +size 5286 diff --git a/game/characters/cho/clothes/bra/sport_bra_1/skin.webp b/game/characters/cho/clothes/bra/sport_bra_1/skin.webp new file mode 100644 index 00000000..b1ad94ec --- /dev/null +++ b/game/characters/cho/clothes/bra/sport_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbfbddcbb6200ae2f96c4184396f55440288e73cb5e9a0f64514ff17becd4fa8 +size 3918 diff --git a/game/characters/cho/clothes/earrings/basic/0.webp b/game/characters/cho/clothes/earrings/basic/0.webp new file mode 100644 index 00000000..c05cd213 --- /dev/null +++ b/game/characters/cho/clothes/earrings/basic/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1d6898ebcbb82addfbd2a8240aabec7eb0bea5eda86d65897f38348390c84c9 +size 616 diff --git a/game/characters/cho/clothes/earrings/basic/outline.webp b/game/characters/cho/clothes/earrings/basic/outline.webp new file mode 100644 index 00000000..2c10a6b0 --- /dev/null +++ b/game/characters/cho/clothes/earrings/basic/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8125e6aa971b50cee690c314dd2dfb4bab73c28b16112b9c418b191c4bf8ce99 +size 718 diff --git a/game/characters/cho/clothes/earrings/feather/0.webp b/game/characters/cho/clothes/earrings/feather/0.webp new file mode 100644 index 00000000..eeccc453 --- /dev/null +++ b/game/characters/cho/clothes/earrings/feather/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6feea0de3d45d1d6da9d45e58a0effb0cf7c8a84a5876a4062e2fefdec24fd40 +size 1140 diff --git a/game/characters/cho/clothes/earrings/feather/1.webp b/game/characters/cho/clothes/earrings/feather/1.webp new file mode 100644 index 00000000..7b53a3a2 --- /dev/null +++ b/game/characters/cho/clothes/earrings/feather/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:483c12cf8d6002f53b80b34e94d0289569276018bc394c95fe0fee5538b60802 +size 740 diff --git a/game/characters/cho/clothes/earrings/feather/2.webp b/game/characters/cho/clothes/earrings/feather/2.webp new file mode 100644 index 00000000..287cd8d0 --- /dev/null +++ b/game/characters/cho/clothes/earrings/feather/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4995d453768f0886391e2192040f42fa1efefa12d3380911ecd1c7334cc4492 +size 762 diff --git a/game/characters/cho/clothes/earrings/feather/outline.webp b/game/characters/cho/clothes/earrings/feather/outline.webp new file mode 100644 index 00000000..0f745f81 --- /dev/null +++ b/game/characters/cho/clothes/earrings/feather/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6151273df69524c60ff4ae7307878bfe5b19ac7e22bdf2b877b4ae768e77d1a5 +size 1648 diff --git a/game/characters/cho/clothes/earrings/snitch/0.webp b/game/characters/cho/clothes/earrings/snitch/0.webp new file mode 100644 index 00000000..e92bd4aa --- /dev/null +++ b/game/characters/cho/clothes/earrings/snitch/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31b9c25f9da9a6a6ec0a64d728ddaefa244082acb98bf8f840290a34c69ab918 +size 858 diff --git a/game/characters/cho/clothes/earrings/snitch/1.webp b/game/characters/cho/clothes/earrings/snitch/1.webp new file mode 100644 index 00000000..12bd9100 --- /dev/null +++ b/game/characters/cho/clothes/earrings/snitch/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48e089472c6c9be39fd04f66eb22e55477608d57820682964261b0e2c4a13b3c +size 868 diff --git a/game/characters/cho/clothes/earrings/snitch/extra.webp b/game/characters/cho/clothes/earrings/snitch/extra.webp new file mode 100644 index 00000000..14109b06 --- /dev/null +++ b/game/characters/cho/clothes/earrings/snitch/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02844f42cd2b801919f29fb14e54c0475518ac1c2b98d303f21c0aa62f1594d9 +size 582 diff --git a/game/characters/cho/clothes/earrings/snitch/outline.webp b/game/characters/cho/clothes/earrings/snitch/outline.webp new file mode 100644 index 00000000..0cd72b77 --- /dev/null +++ b/game/characters/cho/clothes/earrings/snitch/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41d6725d53e6b5680fb729088d454b3e61b2f84617a54ac2587cdcdd080b6f91 +size 864 diff --git a/game/characters/cho/clothes/garterbelt/lace_garter_1/0.webp b/game/characters/cho/clothes/garterbelt/lace_garter_1/0.webp new file mode 100644 index 00000000..85c26356 --- /dev/null +++ b/game/characters/cho/clothes/garterbelt/lace_garter_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32c70cb88eaecbce421af9140db76d7ae56f14fc10fcaed50527d0caadeb02c7 +size 4580 diff --git a/game/characters/cho/clothes/garterbelt/lace_garter_1/1.webp b/game/characters/cho/clothes/garterbelt/lace_garter_1/1.webp new file mode 100644 index 00000000..7066c5c4 --- /dev/null +++ b/game/characters/cho/clothes/garterbelt/lace_garter_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e65ed68e289586c1caf3c9ce9a4280da23f396e191803439af945eb8ae9a6119 +size 1534 diff --git a/game/characters/cho/clothes/garterbelt/lace_garter_1/2.webp b/game/characters/cho/clothes/garterbelt/lace_garter_1/2.webp new file mode 100644 index 00000000..b5b25731 --- /dev/null +++ b/game/characters/cho/clothes/garterbelt/lace_garter_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a13e26015c364bf3ec58c4493eea7fe51a6b56e70781796e700503b05705a1b8 +size 5604 diff --git a/game/characters/cho/clothes/garterbelt/lace_garter_1/3.webp b/game/characters/cho/clothes/garterbelt/lace_garter_1/3.webp new file mode 100644 index 00000000..008ad363 --- /dev/null +++ b/game/characters/cho/clothes/garterbelt/lace_garter_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7707ca2c71be2616b96a8d89b320d21dcf16d08edfda94912dcc45a9910cf485 +size 1120 diff --git a/game/characters/cho/clothes/garterbelt/lace_garter_1/outline.webp b/game/characters/cho/clothes/garterbelt/lace_garter_1/outline.webp new file mode 100644 index 00000000..8203f4ea --- /dev/null +++ b/game/characters/cho/clothes/garterbelt/lace_garter_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5c0c78f3293bedcee5aa1d51e396a4880e8bd02986476dd842ab4cebaa8f513 +size 5314 diff --git a/game/characters/cho/clothes/garterbelt/lace_garter_1/skin.webp b/game/characters/cho/clothes/garterbelt/lace_garter_1/skin.webp new file mode 100644 index 00000000..53087b66 --- /dev/null +++ b/game/characters/cho/clothes/garterbelt/lace_garter_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0c2afdca2f41ba2e8da93daafa5dcb85a18671098b7a3bc5407cb1f158ef766 +size 5506 diff --git a/game/characters/cho/clothes/glasses/aviators/0.webp b/game/characters/cho/clothes/glasses/aviators/0.webp new file mode 100644 index 00000000..44aed826 --- /dev/null +++ b/game/characters/cho/clothes/glasses/aviators/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca89469a53e5f6c63e616e7aaa502ddde5bb9bcc9cb65742437788858f058726 +size 3518 diff --git a/game/characters/cho/clothes/glasses/aviators/1.webp b/game/characters/cho/clothes/glasses/aviators/1.webp new file mode 100644 index 00000000..27878e0f --- /dev/null +++ b/game/characters/cho/clothes/glasses/aviators/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1caa540f247d45b428f79df14a11d80f9c4859228ba9315aa6441891e941d4d0 +size 3260 diff --git a/game/characters/cho/clothes/glasses/aviators/outline.webp b/game/characters/cho/clothes/glasses/aviators/outline.webp new file mode 100644 index 00000000..ca1cec5e --- /dev/null +++ b/game/characters/cho/clothes/glasses/aviators/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf3468e8d9766649026ac0ad8261b3dd3929720edec33768526b43f03f6455ad +size 2970 diff --git a/game/characters/cho/clothes/glasses/glasses1/0.webp b/game/characters/cho/clothes/glasses/glasses1/0.webp new file mode 100644 index 00000000..d99e3afb --- /dev/null +++ b/game/characters/cho/clothes/glasses/glasses1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:298d6f22a22943068bf6461f40a198d804b538dee07eff8bdd7a4fc7e1864d84 +size 2022 diff --git a/game/characters/cho/clothes/glasses/glasses1/extra.webp b/game/characters/cho/clothes/glasses/glasses1/extra.webp new file mode 100644 index 00000000..baca3ba6 --- /dev/null +++ b/game/characters/cho/clothes/glasses/glasses1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f03df97b3b54cf74d14856c1ed2f27b55292fd9cfc055972fff1d879e04cbdb +size 1288 diff --git a/game/characters/cho/clothes/glasses/glasses1/outline.webp b/game/characters/cho/clothes/glasses/glasses1/outline.webp new file mode 100644 index 00000000..2f2927ec --- /dev/null +++ b/game/characters/cho/clothes/glasses/glasses1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:311519534299a0740a5939d86963d2e52286add4fd9aadf54e4cddb04d8bed51 +size 2550 diff --git a/game/characters/cho/clothes/glasses/goggles/0.webp b/game/characters/cho/clothes/glasses/goggles/0.webp new file mode 100644 index 00000000..da48108b --- /dev/null +++ b/game/characters/cho/clothes/glasses/goggles/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6b441f8d6ccc3ab6eebbafd22b47191c761b3e182f403dfaeee077f2902442e +size 1694 diff --git a/game/characters/cho/clothes/glasses/goggles/1.webp b/game/characters/cho/clothes/glasses/goggles/1.webp new file mode 100644 index 00000000..3341a911 --- /dev/null +++ b/game/characters/cho/clothes/glasses/goggles/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ba1a870922bcf1ac769b89af326f275512c29b6018512337448d62d7f720631 +size 3666 diff --git a/game/characters/cho/clothes/glasses/goggles/extra.webp b/game/characters/cho/clothes/glasses/goggles/extra.webp new file mode 100644 index 00000000..e7caec06 --- /dev/null +++ b/game/characters/cho/clothes/glasses/goggles/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5f4ef021f05d954ee3a5f4d63ff45d38c0acbddb4b8312d3706743b53e78d81 +size 7854 diff --git a/game/characters/cho/clothes/glasses/goggles/outline.webp b/game/characters/cho/clothes/glasses/goggles/outline.webp new file mode 100644 index 00000000..486dcfca --- /dev/null +++ b/game/characters/cho/clothes/glasses/goggles/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee919788d9a1016ee9dcba73bc8b120cf36732c265b09cfab8bd37cdc34685b7 +size 6488 diff --git a/game/characters/cho/clothes/glasses/goggles/skin.webp b/game/characters/cho/clothes/glasses/goggles/skin.webp new file mode 100644 index 00000000..16053034 --- /dev/null +++ b/game/characters/cho/clothes/glasses/goggles/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edfc62005f9fbf22ddbcce23f522ad5fcf6b603a843dc3a77799ce9ccdd8ff6e +size 1572 diff --git a/game/characters/cho/clothes/glasses/goggles_face/0.webp b/game/characters/cho/clothes/glasses/goggles_face/0.webp new file mode 100644 index 00000000..6b484394 --- /dev/null +++ b/game/characters/cho/clothes/glasses/goggles_face/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1ea482e7f8fb9c9e49e2026b707ac2ff7c7240fc8d2e4959c6fd0e4143f838d +size 2812 diff --git a/game/characters/cho/clothes/glasses/goggles_face/1.webp b/game/characters/cho/clothes/glasses/goggles_face/1.webp new file mode 100644 index 00000000..59bc353a --- /dev/null +++ b/game/characters/cho/clothes/glasses/goggles_face/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a788b55720173665202b96aee3b45a80ab86f3630cee9f3fbf3fead56743d9a +size 4574 diff --git a/game/characters/cho/clothes/glasses/goggles_face/extra.webp b/game/characters/cho/clothes/glasses/goggles_face/extra.webp new file mode 100644 index 00000000..7c60e76c --- /dev/null +++ b/game/characters/cho/clothes/glasses/goggles_face/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:957578f20a0ada32a75b9c775f0e65b25e31ae5af1c0c4859cc803259c0f2b3b +size 8268 diff --git a/game/characters/cho/clothes/glasses/goggles_face/outline.webp b/game/characters/cho/clothes/glasses/goggles_face/outline.webp new file mode 100644 index 00000000..8fd8cd16 --- /dev/null +++ b/game/characters/cho/clothes/glasses/goggles_face/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa92eaf8436b4af6d5b41947d02ce92639ac60d5a1afb585430acc597d9a8b49 +size 7392 diff --git a/game/characters/cho/clothes/glasses/goggles_face/skin.webp b/game/characters/cho/clothes/glasses/goggles_face/skin.webp new file mode 100644 index 00000000..16053034 --- /dev/null +++ b/game/characters/cho/clothes/glasses/goggles_face/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edfc62005f9fbf22ddbcce23f522ad5fcf6b603a843dc3a77799ce9ccdd8ff6e +size 1572 diff --git a/game/characters/cho/clothes/gloves/quidditch/0.webp b/game/characters/cho/clothes/gloves/quidditch/0.webp new file mode 100644 index 00000000..ef58359e --- /dev/null +++ b/game/characters/cho/clothes/gloves/quidditch/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ef6f88b54f9f30943ff4c917b7a534a89bba208ebc7318ad7e4b43da3ec7c4f +size 582 diff --git a/game/characters/cho/clothes/gloves/quidditch/0_front.webp b/game/characters/cho/clothes/gloves/quidditch/0_front.webp new file mode 100644 index 00000000..ef58359e --- /dev/null +++ b/game/characters/cho/clothes/gloves/quidditch/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ef6f88b54f9f30943ff4c917b7a534a89bba208ebc7318ad7e4b43da3ec7c4f +size 582 diff --git a/game/characters/cho/clothes/gloves/quidditch/extra.webp b/game/characters/cho/clothes/gloves/quidditch/extra.webp new file mode 100644 index 00000000..1180df5c --- /dev/null +++ b/game/characters/cho/clothes/gloves/quidditch/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7b4689ec80141c61fef759eed7309e267fdde52acf885410e46788e8ba843cc +size 14668 diff --git a/game/characters/cho/clothes/gloves/quidditch/outline.webp b/game/characters/cho/clothes/gloves/quidditch/outline.webp new file mode 100644 index 00000000..32cdb689 --- /dev/null +++ b/game/characters/cho/clothes/gloves/quidditch/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3cb34c3c3ec3e0cab472bab02766eb060715e0db909e4abbff0656d43fc27784 +size 7096 diff --git a/game/characters/cho/clothes/gloves/quidditch/outline_front.webp b/game/characters/cho/clothes/gloves/quidditch/outline_front.webp new file mode 100644 index 00000000..a1f8c692 --- /dev/null +++ b/game/characters/cho/clothes/gloves/quidditch/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10b0fd299039b93ca08861801b32323c90cc897ffcabdf2c60bd781ae8a3155e +size 12754 diff --git a/game/characters/cho/clothes/hair/pigtails/0.webp b/game/characters/cho/clothes/hair/pigtails/0.webp new file mode 100644 index 00000000..2fa15bdd --- /dev/null +++ b/game/characters/cho/clothes/hair/pigtails/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e90287f940a447411db0371a1c1b488f7a4f36f75effd27c22c3b25c0401ae39 +size 4554 diff --git a/game/characters/cho/clothes/hair/pigtails/1.webp b/game/characters/cho/clothes/hair/pigtails/1.webp new file mode 100644 index 00000000..fe75ac9c --- /dev/null +++ b/game/characters/cho/clothes/hair/pigtails/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab14892664604b3505386a11197c15a79e543752628211943f4156e4d2d4e521 +size 11464 diff --git a/game/characters/cho/clothes/hair/pigtails/2.webp b/game/characters/cho/clothes/hair/pigtails/2.webp new file mode 100644 index 00000000..a9b6d302 --- /dev/null +++ b/game/characters/cho/clothes/hair/pigtails/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d68df7e4c6931a2bb366e1a96d4c8b94a5b3c0bba048f4fb911021132d4ecd5 +size 1250 diff --git a/game/characters/cho/clothes/hair/pigtails/outline.webp b/game/characters/cho/clothes/hair/pigtails/outline.webp new file mode 100644 index 00000000..8dcc9a79 --- /dev/null +++ b/game/characters/cho/clothes/hair/pigtails/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f10ad19290ce9ac76f9fbc42f694e0e376aca68661bcb7aa330b6419daad927 +size 9452 diff --git a/game/characters/cho/clothes/hair/pigtails/skin.webp b/game/characters/cho/clothes/hair/pigtails/skin.webp new file mode 100644 index 00000000..e1cad9d6 --- /dev/null +++ b/game/characters/cho/clothes/hair/pigtails/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0be2914e56536c36fcdd9176916d99841197e5c0c4586ace70cb6e0b0707f29 +size 1446 diff --git a/game/characters/cho/clothes/hair/ponytail/0.webp b/game/characters/cho/clothes/hair/ponytail/0.webp new file mode 100644 index 00000000..4cb56adf --- /dev/null +++ b/game/characters/cho/clothes/hair/ponytail/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10776def6c79c09c5dc6a01c38c3449269beb4ef85dc5893fa45b6f7b4f14357 +size 5316 diff --git a/game/characters/cho/clothes/hair/ponytail/1.webp b/game/characters/cho/clothes/hair/ponytail/1.webp new file mode 100644 index 00000000..abcec8dd --- /dev/null +++ b/game/characters/cho/clothes/hair/ponytail/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b927727737008a60498ca917780a78239555609fb7d33bf2de8de2b44793024d +size 10790 diff --git a/game/characters/cho/clothes/hair/ponytail/outline.webp b/game/characters/cho/clothes/hair/ponytail/outline.webp new file mode 100644 index 00000000..b8354c9f --- /dev/null +++ b/game/characters/cho/clothes/hair/ponytail/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ce8af28340599ca648f51a58fb30e556c16a45661abe5c7dea492a7d2897a86 +size 18264 diff --git a/game/characters/cho/clothes/hair/ponytail/skin.webp b/game/characters/cho/clothes/hair/ponytail/skin.webp new file mode 100644 index 00000000..55a73438 --- /dev/null +++ b/game/characters/cho/clothes/hair/ponytail/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4fc68dd2cd8a71a99024d306a98ea5d37c460f555f3b2db74bc270e69829178 +size 2020 diff --git a/game/characters/cho/clothes/hair/smurfette/0.webp b/game/characters/cho/clothes/hair/smurfette/0.webp new file mode 100644 index 00000000..d06d55ce --- /dev/null +++ b/game/characters/cho/clothes/hair/smurfette/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2244cf8fa45b13272065fa47465e6aa58973af9374cda98aa239193e79266515 +size 17160 diff --git a/game/characters/cho/clothes/hair/smurfette/0_back.webp b/game/characters/cho/clothes/hair/smurfette/0_back.webp new file mode 100644 index 00000000..8066989a --- /dev/null +++ b/game/characters/cho/clothes/hair/smurfette/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:854e0b5cf489b66fd29644bd67051087e64186c2a1e618756dccbee17e9982ae +size 17064 diff --git a/game/characters/cho/clothes/hair/smurfette/1.webp b/game/characters/cho/clothes/hair/smurfette/1.webp new file mode 100644 index 00000000..99cbcd9d --- /dev/null +++ b/game/characters/cho/clothes/hair/smurfette/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9589daa57b1f9154ff52c7f01892784b742cd26d1692f4d3df0055febd37570 +size 19236 diff --git a/game/characters/cho/clothes/hair/smurfette/1_back.webp b/game/characters/cho/clothes/hair/smurfette/1_back.webp new file mode 100644 index 00000000..3131d295 --- /dev/null +++ b/game/characters/cho/clothes/hair/smurfette/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3474df34bbdb01440ab91cb080b764cf15a718fbc6fe9b784f5f5d0c2e9ffe28 +size 15860 diff --git a/game/characters/cho/clothes/hair/smurfette/outline.webp b/game/characters/cho/clothes/hair/smurfette/outline.webp new file mode 100644 index 00000000..dbe3fd46 --- /dev/null +++ b/game/characters/cho/clothes/hair/smurfette/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8110b9513189470808090c8ad72b87d06213a8eb1be254174d295cadb384ac5d +size 16670 diff --git a/game/characters/cho/clothes/hair/smurfette/outline_back.webp b/game/characters/cho/clothes/hair/smurfette/outline_back.webp new file mode 100644 index 00000000..5384482f --- /dev/null +++ b/game/characters/cho/clothes/hair/smurfette/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef173278db24af125d55b7205d5b928e7575a1a92903638948dc02a6e5d2acd4 +size 15724 diff --git a/game/characters/cho/clothes/hair/smurfette/skin.webp b/game/characters/cho/clothes/hair/smurfette/skin.webp new file mode 100644 index 00000000..587f0436 --- /dev/null +++ b/game/characters/cho/clothes/hair/smurfette/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53b7edf40519bb2d998f37385f3e84a73c949514ee1b63cdfee73fe900344d34 +size 10140 diff --git a/game/characters/cho/clothes/headgear/catears/0.webp b/game/characters/cho/clothes/headgear/catears/0.webp new file mode 100644 index 00000000..c2b75f17 --- /dev/null +++ b/game/characters/cho/clothes/headgear/catears/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b08424185a4ffe6f00c5e557d73cf954d219b67564d96e6085ea6c8d2c9edf1 +size 2866 diff --git a/game/characters/cho/clothes/headgear/catears/extra.webp b/game/characters/cho/clothes/headgear/catears/extra.webp new file mode 100644 index 00000000..062a6708 --- /dev/null +++ b/game/characters/cho/clothes/headgear/catears/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b62f7cd600efc91666d2dd7603594f55466c41a127c485e9565beb627fe7696e +size 1738 diff --git a/game/characters/cho/clothes/headgear/catears/outline.webp b/game/characters/cho/clothes/headgear/catears/outline.webp new file mode 100644 index 00000000..da4d9391 --- /dev/null +++ b/game/characters/cho/clothes/headgear/catears/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05f6c3ba3f03c651fa766ffa52f2b70c4db2fcafe0e918183e33fc86e60032f6 +size 3232 diff --git a/game/characters/cho/clothes/headgear/chun_li_puffies/0.webp b/game/characters/cho/clothes/headgear/chun_li_puffies/0.webp new file mode 100644 index 00000000..0af6c662 --- /dev/null +++ b/game/characters/cho/clothes/headgear/chun_li_puffies/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a81e5e9869ffa6bbfd701a764f3401823e2e578da3cf24c7a075be11868c76c1 +size 8654 diff --git a/game/characters/cho/clothes/headgear/chun_li_puffies/outline.webp b/game/characters/cho/clothes/headgear/chun_li_puffies/outline.webp new file mode 100644 index 00000000..a52a25cf --- /dev/null +++ b/game/characters/cho/clothes/headgear/chun_li_puffies/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a69cf77189486550e51c5b7df2e0fee2eee40ec628e733446aa8770f2b64d093 +size 8456 diff --git a/game/characters/cho/clothes/headgear/goggles/0.webp b/game/characters/cho/clothes/headgear/goggles/0.webp new file mode 100644 index 00000000..79282f9c --- /dev/null +++ b/game/characters/cho/clothes/headgear/goggles/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e33ee9077fdd7f4b919402084e903c0ab07e66bb6f718c55d144e68c4c52ea06 +size 2302 diff --git a/game/characters/cho/clothes/headgear/goggles/1.webp b/game/characters/cho/clothes/headgear/goggles/1.webp new file mode 100644 index 00000000..a7b18229 --- /dev/null +++ b/game/characters/cho/clothes/headgear/goggles/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aae48366dca68de9e0e1c75c9fc960287ecd056cd6e2489767ca398a4c8c4a2 +size 4596 diff --git a/game/characters/cho/clothes/headgear/goggles/extra.webp b/game/characters/cho/clothes/headgear/goggles/extra.webp new file mode 100644 index 00000000..50af947c --- /dev/null +++ b/game/characters/cho/clothes/headgear/goggles/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f4a3fe36bee915a6b158d05eca743eceae36e2f350d77606307f287f1daa382 +size 8260 diff --git a/game/characters/cho/clothes/headgear/goggles/outline.webp b/game/characters/cho/clothes/headgear/goggles/outline.webp new file mode 100644 index 00000000..a0a0d164 --- /dev/null +++ b/game/characters/cho/clothes/headgear/goggles/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5aa3986b2ca618256f2448958d590060ad1b7ecbd98659088173ff3dd5be2fb +size 8116 diff --git a/game/characters/cho/clothes/headgear/goggles/skin.webp b/game/characters/cho/clothes/headgear/goggles/skin.webp new file mode 100644 index 00000000..16053034 --- /dev/null +++ b/game/characters/cho/clothes/headgear/goggles/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edfc62005f9fbf22ddbcce23f522ad5fcf6b603a843dc3a77799ce9ccdd8ff6e +size 1572 diff --git a/game/characters/cho/clothes/headgear/police_cap/0.webp b/game/characters/cho/clothes/headgear/police_cap/0.webp new file mode 100644 index 00000000..ecd97b40 --- /dev/null +++ b/game/characters/cho/clothes/headgear/police_cap/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8e173ae582ac6f11bc085b877ad46ca7e7f5b9e1b08e66cb029d1e5279aa55d +size 3360 diff --git a/game/characters/cho/clothes/headgear/police_cap/1.webp b/game/characters/cho/clothes/headgear/police_cap/1.webp new file mode 100644 index 00000000..24c8c0de --- /dev/null +++ b/game/characters/cho/clothes/headgear/police_cap/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:183fd112635efd17f46c0207a00452377d53b721955b11f7b5d5f302458331c4 +size 678 diff --git a/game/characters/cho/clothes/headgear/police_cap/2.webp b/game/characters/cho/clothes/headgear/police_cap/2.webp new file mode 100644 index 00000000..eec9141e --- /dev/null +++ b/game/characters/cho/clothes/headgear/police_cap/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0c9b16f7420cb6483c094b35995fb2348d653a11b477a6b1c140e4ca9238d2e +size 3112 diff --git a/game/characters/cho/clothes/headgear/police_cap/3.webp b/game/characters/cho/clothes/headgear/police_cap/3.webp new file mode 100644 index 00000000..247438d0 --- /dev/null +++ b/game/characters/cho/clothes/headgear/police_cap/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6e139979e199d634b8ec9130253220b3d900b94bede899f616e1d297b85697b +size 1326 diff --git a/game/characters/cho/clothes/headgear/police_cap/outline.webp b/game/characters/cho/clothes/headgear/police_cap/outline.webp new file mode 100644 index 00000000..7a8ee719 --- /dev/null +++ b/game/characters/cho/clothes/headgear/police_cap/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3da5fd07ef4022f03a7b814923d3c9a1495c7b8921c5c51895d7639f2a4b753 +size 5932 diff --git a/game/characters/cho/clothes/headgear/smurfette/0.webp b/game/characters/cho/clothes/headgear/smurfette/0.webp new file mode 100644 index 00000000..c6529285 --- /dev/null +++ b/game/characters/cho/clothes/headgear/smurfette/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf841144d2c4dce356dea4aefb72961507677f7ba5661aa092bab541702ec6eb +size 13816 diff --git a/game/characters/cho/clothes/headgear/smurfette/outline.webp b/game/characters/cho/clothes/headgear/smurfette/outline.webp new file mode 100644 index 00000000..62c7788c --- /dev/null +++ b/game/characters/cho/clothes/headgear/smurfette/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21742ec718055c284e275883204cca01f7a31df91b779d441e8c1fb91cfc4056 +size 13336 diff --git a/game/characters/cho/clothes/headgear/toon_band/0.webp b/game/characters/cho/clothes/headgear/toon_band/0.webp new file mode 100644 index 00000000..17853621 --- /dev/null +++ b/game/characters/cho/clothes/headgear/toon_band/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7bb9e5b7b79001185989a00852e4d4f0d7047628d9d7b70eef231c10552b240 +size 1080 diff --git a/game/characters/cho/clothes/headgear/toon_band/outline.webp b/game/characters/cho/clothes/headgear/toon_band/outline.webp new file mode 100644 index 00000000..88d5703a --- /dev/null +++ b/game/characters/cho/clothes/headgear/toon_band/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b57800f25a09fe0f80462a29b7bcecae19ce3f8d0c67b829a6f41bad0358d67 +size 1530 diff --git a/game/characters/cho/clothes/headgear/witch/0.webp b/game/characters/cho/clothes/headgear/witch/0.webp new file mode 100644 index 00000000..5c8807e6 --- /dev/null +++ b/game/characters/cho/clothes/headgear/witch/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:889e56ff9040ede57f84d38339b2d44311cb51c198b2a23fe7ff14383a6acd2b +size 8690 diff --git a/game/characters/cho/clothes/headgear/witch/1.webp b/game/characters/cho/clothes/headgear/witch/1.webp new file mode 100644 index 00000000..62f777ca --- /dev/null +++ b/game/characters/cho/clothes/headgear/witch/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a07d1014ad2af3620184863ddee924c73f0bd2fd5b0f7175b8bfbe83c23980b3 +size 2908 diff --git a/game/characters/cho/clothes/headgear/witch/outline.webp b/game/characters/cho/clothes/headgear/witch/outline.webp new file mode 100644 index 00000000..903ba2a9 --- /dev/null +++ b/game/characters/cho/clothes/headgear/witch/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffeff1c40d386a2af23596db668c9c0dd94da73999ea3df058f8cb8934c08f2c +size 16298 diff --git a/game/characters/cho/clothes/headgear/witch/skin.webp b/game/characters/cho/clothes/headgear/witch/skin.webp new file mode 100644 index 00000000..f178429a --- /dev/null +++ b/game/characters/cho/clothes/headgear/witch/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f6128412111109dca36c90e856915c07413780454cffc60cbafe36de3ee5e74 +size 1076 diff --git a/game/characters/cho/clothes/makeup/blush/0.webp b/game/characters/cho/clothes/makeup/blush/0.webp new file mode 100644 index 00000000..88aa92fb --- /dev/null +++ b/game/characters/cho/clothes/makeup/blush/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80e8d811adcbd40442736a5498c44f9aa711baf0b68e685b66d79d8c44348bab +size 1942 diff --git a/game/characters/cho/clothes/makeup/blush/outline.webp b/game/characters/cho/clothes/makeup/blush/outline.webp new file mode 100644 index 00000000..d1f883e5 --- /dev/null +++ b/game/characters/cho/clothes/makeup/blush/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:904a0a1d00a6bb992363b854e3e612522967d1a05f6bbf6386f6d8491e3cbe9e +size 536 diff --git a/game/characters/cho/clothes/makeup/lipstick/angry.webp b/game/characters/cho/clothes/makeup/lipstick/angry.webp new file mode 100644 index 00000000..f236e864 --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a056897f9d9bcc59324cf25fd06cc44220889b11f82e3bcf741741c0c8fd5238 +size 1158 diff --git a/game/characters/cho/clothes/makeup/lipstick/annoyed.webp b/game/characters/cho/clothes/makeup/lipstick/annoyed.webp new file mode 100644 index 00000000..e5b343e1 --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0020250c74bbb07638bb918a87f4e7127d6768a122068b76e90966a67a0418b +size 850 diff --git a/game/characters/cho/clothes/makeup/lipstick/base.webp b/game/characters/cho/clothes/makeup/lipstick/base.webp new file mode 100644 index 00000000..3a9746fa --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eccc31f14a638ed2f94fa728ee165cb70d1d4d9a076e26c3cb192254103694f3 +size 906 diff --git a/game/characters/cho/clothes/makeup/lipstick/clench.webp b/game/characters/cho/clothes/makeup/lipstick/clench.webp new file mode 100644 index 00000000..bb0e7e3c --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab5c8afa6af4ca125ed4ee5da15ed73a34b72538c18faa61947e458c378e313b +size 1248 diff --git a/game/characters/cho/clothes/makeup/lipstick/crooked_smile.webp b/game/characters/cho/clothes/makeup/lipstick/crooked_smile.webp new file mode 100644 index 00000000..31450afa --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:738531962bbf37c22b9842afd2a058fe7e9083e5df7dc2eb5ba0395a8f91e8eb +size 1250 diff --git a/game/characters/cho/clothes/makeup/lipstick/disgust.webp b/game/characters/cho/clothes/makeup/lipstick/disgust.webp new file mode 100644 index 00000000..af585ea4 --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34685566d522d55d644b80628f40ca253d05f4040e38784b1b6aa2a7c344bb99 +size 1090 diff --git a/game/characters/cho/clothes/makeup/lipstick/grin.webp b/game/characters/cho/clothes/makeup/lipstick/grin.webp new file mode 100644 index 00000000..47d5538e --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a555155f9d29422868c88f0dbf4416fc747bc5b80bb085dbb2dead1da21cfa7d +size 1420 diff --git a/game/characters/cho/clothes/makeup/lipstick/horny.webp b/game/characters/cho/clothes/makeup/lipstick/horny.webp new file mode 100644 index 00000000..229e4fb7 --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/horny.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a98296477c17c4cdf38d99bdd4fc23cbcba8f7c6f4778f7e1f723b782498533 +size 1026 diff --git a/game/characters/cho/clothes/makeup/lipstick/mad.webp b/game/characters/cho/clothes/makeup/lipstick/mad.webp new file mode 100644 index 00000000..02342966 --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfe2c07a81337ee424caf68d399db96f8e52e3b6b4bef40d28ea84aefacf151c +size 1076 diff --git a/game/characters/cho/clothes/makeup/lipstick/normal.webp b/game/characters/cho/clothes/makeup/lipstick/normal.webp new file mode 100644 index 00000000..fbc61a5b --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86debafbafeafaac29c091f7730382926eac05ef7b17ff9fb2f896a166ff1307 +size 964 diff --git a/game/characters/cho/clothes/makeup/lipstick/open.webp b/game/characters/cho/clothes/makeup/lipstick/open.webp new file mode 100644 index 00000000..dea258e5 --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c56266b98a2a0eecae8445f31a1c67e42da917bbb8db804c4b4d2e3d29f8112d +size 1150 diff --git a/game/characters/cho/clothes/makeup/lipstick/open_tongue.webp b/game/characters/cho/clothes/makeup/lipstick/open_tongue.webp new file mode 100644 index 00000000..367f5ab2 --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae97bbe3ef4b521527b6f257449b459f0fb1d25347e6a132dcfa4b3b058ad7c5 +size 920 diff --git a/game/characters/cho/clothes/makeup/lipstick/open_wide_tongue.webp b/game/characters/cho/clothes/makeup/lipstick/open_wide_tongue.webp new file mode 100644 index 00000000..e81b2b35 --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:612f300e207ae1b42aa0bb183df47b1f46d250b91a98b82247a2ca7b3bda82ed +size 1000 diff --git a/game/characters/cho/clothes/makeup/lipstick/quiver.webp b/game/characters/cho/clothes/makeup/lipstick/quiver.webp new file mode 100644 index 00000000..a0161b76 --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/quiver.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a41eba5d55cb4a21ffdac0c67244a79e294e53729c37e57a1844169e659fe3e7 +size 946 diff --git a/game/characters/cho/clothes/makeup/lipstick/scream.webp b/game/characters/cho/clothes/makeup/lipstick/scream.webp new file mode 100644 index 00000000..1e97337a --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1af8260b7aea312de2e8f4168f5a10984b501f188f4c2074c082cda329008f98 +size 1254 diff --git a/game/characters/cho/clothes/makeup/lipstick/silly.webp b/game/characters/cho/clothes/makeup/lipstick/silly.webp new file mode 100644 index 00000000..066bbd40 --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/silly.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d69fcb41dcc74669551747df4c2ba185a3f3ed79f15597bd988516d8a6dce6de +size 1186 diff --git a/game/characters/cho/clothes/makeup/lipstick/smile.webp b/game/characters/cho/clothes/makeup/lipstick/smile.webp new file mode 100644 index 00000000..ba0298f1 --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:543ec7d136fd4d83c93b70c3c70f71cc9e8190cca7fcc3de6214523386ca8b03 +size 1048 diff --git a/game/characters/cho/clothes/makeup/lipstick/soft.webp b/game/characters/cho/clothes/makeup/lipstick/soft.webp new file mode 100644 index 00000000..7a66aebd --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63a4d0b6b06c83107f09be20052adf88a840ab8a56620f8d3cd5b38b565305f2 +size 968 diff --git a/game/characters/cho/clothes/makeup/lipstick/upset.webp b/game/characters/cho/clothes/makeup/lipstick/upset.webp new file mode 100644 index 00000000..5cad7371 --- /dev/null +++ b/game/characters/cho/clothes/makeup/lipstick/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7755ff115e5dc678360599255d54a4dbb458da63bbced2f35c4fe3617509faf +size 850 diff --git a/game/characters/cho/clothes/neckwear/choker_lace_1/0.webp b/game/characters/cho/clothes/neckwear/choker_lace_1/0.webp new file mode 100644 index 00000000..358ceabf --- /dev/null +++ b/game/characters/cho/clothes/neckwear/choker_lace_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dad7877504fb3509fbcbd9808c7fd2947b1bd655172a4c1bcfd642a80cb7ca34 +size 874 diff --git a/game/characters/cho/clothes/neckwear/choker_lace_1/1.webp b/game/characters/cho/clothes/neckwear/choker_lace_1/1.webp new file mode 100644 index 00000000..870d54dd --- /dev/null +++ b/game/characters/cho/clothes/neckwear/choker_lace_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31a6386c12c5fbfd7e70326e2de0a88a5368b49822b23f4bacc444f6d4420671 +size 2078 diff --git a/game/characters/cho/clothes/neckwear/choker_lace_1/outline.webp b/game/characters/cho/clothes/neckwear/choker_lace_1/outline.webp new file mode 100644 index 00000000..b4bda457 --- /dev/null +++ b/game/characters/cho/clothes/neckwear/choker_lace_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f84ef201675d1397aad5cec1a8d2c5482fab85765f24c05913a579f5b1cf40c3 +size 1696 diff --git a/game/characters/cho/clothes/neckwear/choker_medallion/0.webp b/game/characters/cho/clothes/neckwear/choker_medallion/0.webp new file mode 100644 index 00000000..eb080bb3 --- /dev/null +++ b/game/characters/cho/clothes/neckwear/choker_medallion/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c044b99769881bcb299241794a2043a17cf0dbe3563595cae377e2613521c60 +size 732 diff --git a/game/characters/cho/clothes/neckwear/choker_medallion/extra.webp b/game/characters/cho/clothes/neckwear/choker_medallion/extra.webp new file mode 100644 index 00000000..75042743 --- /dev/null +++ b/game/characters/cho/clothes/neckwear/choker_medallion/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5747e091d4964395775da94d482e82cc2a2e0f5ec1f67b997545440bc3fc4c3 +size 1338 diff --git a/game/characters/cho/clothes/neckwear/choker_medallion/outline.webp b/game/characters/cho/clothes/neckwear/choker_medallion/outline.webp new file mode 100644 index 00000000..8edb1985 --- /dev/null +++ b/game/characters/cho/clothes/neckwear/choker_medallion/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19389fa917878f764c35fbb0b86f3b8f80c929bcc7167d85b046f97aa507a71e +size 1302 diff --git a/game/characters/cho/clothes/neckwear/collar_leather_1/0.webp b/game/characters/cho/clothes/neckwear/collar_leather_1/0.webp new file mode 100644 index 00000000..55deba6e --- /dev/null +++ b/game/characters/cho/clothes/neckwear/collar_leather_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8d0b357c42223aef547410d0162314dedc3245e8bdef9082aa20ec57cd62b6e +size 3892 diff --git a/game/characters/cho/clothes/neckwear/collar_leather_1/extra.webp b/game/characters/cho/clothes/neckwear/collar_leather_1/extra.webp new file mode 100644 index 00000000..ffc16318 --- /dev/null +++ b/game/characters/cho/clothes/neckwear/collar_leather_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8c73abda477780bc66c4955adc804b0f55fc607ba3dff3f9b5610e33f44bc2d +size 650 diff --git a/game/characters/cho/clothes/neckwear/collar_leather_1/outline.webp b/game/characters/cho/clothes/neckwear/collar_leather_1/outline.webp new file mode 100644 index 00000000..cf45dfd8 --- /dev/null +++ b/game/characters/cho/clothes/neckwear/collar_leather_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62176f621afff7be3a27e7e312028aef925606160c1e4f16554393b632653b5d +size 1280 diff --git a/game/characters/cho/clothes/neckwear/tie_1/0.webp b/game/characters/cho/clothes/neckwear/tie_1/0.webp new file mode 100644 index 00000000..44baf06a --- /dev/null +++ b/game/characters/cho/clothes/neckwear/tie_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df9c2d1a801349646b7f640d2371d760205173da201368734decd703d63e34f0 +size 4208 diff --git a/game/characters/cho/clothes/neckwear/tie_1/1.webp b/game/characters/cho/clothes/neckwear/tie_1/1.webp new file mode 100644 index 00000000..1d12193b --- /dev/null +++ b/game/characters/cho/clothes/neckwear/tie_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d899e83d0fa34d00f6866d8fe17ef8be89ddb9115f1a65fd7d762c6f18d21396 +size 3976 diff --git a/game/characters/cho/clothes/neckwear/tie_1/outline.webp b/game/characters/cho/clothes/neckwear/tie_1/outline.webp new file mode 100644 index 00000000..0d6b831c --- /dev/null +++ b/game/characters/cho/clothes/neckwear/tie_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36cca3b3ec4ecf125564f0b5c64074935dec22eb401c7f44fc4df5b97467f98a +size 4696 diff --git a/game/characters/cho/clothes/neckwear/tie_1/skin.webp b/game/characters/cho/clothes/neckwear/tie_1/skin.webp new file mode 100644 index 00000000..cc5c5a79 --- /dev/null +++ b/game/characters/cho/clothes/neckwear/tie_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab3a8da8ead5fadd902d5606062cd4baaa7f5a3baec6db7c6e125ac04f7a74dd +size 3276 diff --git a/game/characters/cho/clothes/panties/basic_panties_1/0.webp b/game/characters/cho/clothes/panties/basic_panties_1/0.webp new file mode 100644 index 00000000..9c29c99b --- /dev/null +++ b/game/characters/cho/clothes/panties/basic_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ade61f198ec0cafa69faf3fbe4dd4f69c87f4de1e88c51b92e7bd238df870f2 +size 4078 diff --git a/game/characters/cho/clothes/panties/basic_panties_1/1.webp b/game/characters/cho/clothes/panties/basic_panties_1/1.webp new file mode 100644 index 00000000..aad226d1 --- /dev/null +++ b/game/characters/cho/clothes/panties/basic_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc964e446684d92f35b395a9605a4797525d8d04aec8b37677fa959ecfd5b887 +size 1416 diff --git a/game/characters/cho/clothes/panties/basic_panties_1/outline.webp b/game/characters/cho/clothes/panties/basic_panties_1/outline.webp new file mode 100644 index 00000000..c7f3818f --- /dev/null +++ b/game/characters/cho/clothes/panties/basic_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:982cae888f72e565d79319c81aac1d768becbd136b7eeb886c07aac1f131d247 +size 4274 diff --git a/game/characters/cho/clothes/panties/basic_panties_1/skin.webp b/game/characters/cho/clothes/panties/basic_panties_1/skin.webp new file mode 100644 index 00000000..9f8dca94 --- /dev/null +++ b/game/characters/cho/clothes/panties/basic_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e66c0d82408ca19c67cb7eb92281fdb578531a13c5dca134265a7c6b8932336c +size 3466 diff --git a/game/characters/cho/clothes/panties/bikini_bottom_1/0.webp b/game/characters/cho/clothes/panties/bikini_bottom_1/0.webp new file mode 100644 index 00000000..5f54e627 --- /dev/null +++ b/game/characters/cho/clothes/panties/bikini_bottom_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8512cf7d7426b5e40e886745cf708b19f77656ae8843f77bea460184b7406c7b +size 3382 diff --git a/game/characters/cho/clothes/panties/bikini_bottom_1/outline.webp b/game/characters/cho/clothes/panties/bikini_bottom_1/outline.webp new file mode 100644 index 00000000..8b9dee70 --- /dev/null +++ b/game/characters/cho/clothes/panties/bikini_bottom_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19bec57a821d4c1499c1f19a2cfe961a8731a7e415fe08067cd1d46e4c813aa1 +size 2944 diff --git a/game/characters/cho/clothes/panties/bikini_bottom_2/0.webp b/game/characters/cho/clothes/panties/bikini_bottom_2/0.webp new file mode 100644 index 00000000..64933dbb --- /dev/null +++ b/game/characters/cho/clothes/panties/bikini_bottom_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:caec84b7b4cccec960227446a363cf8e61e1357024e67ef4daab3b924376651d +size 3298 diff --git a/game/characters/cho/clothes/panties/bikini_bottom_2/outline.webp b/game/characters/cho/clothes/panties/bikini_bottom_2/outline.webp new file mode 100644 index 00000000..b77d2c70 --- /dev/null +++ b/game/characters/cho/clothes/panties/bikini_bottom_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce4462552d1f0aecffc6470172a1a5e92835ed2e327af36fec197034a5a7fd6a +size 2804 diff --git a/game/characters/cho/clothes/panties/lace_panties_1/0.webp b/game/characters/cho/clothes/panties/lace_panties_1/0.webp new file mode 100644 index 00000000..a8088a6e --- /dev/null +++ b/game/characters/cho/clothes/panties/lace_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c1c96a7541ff33894ff47dec77f8440aa7b036174fe4a25d580e8377095935a +size 4256 diff --git a/game/characters/cho/clothes/panties/lace_panties_1/1.webp b/game/characters/cho/clothes/panties/lace_panties_1/1.webp new file mode 100644 index 00000000..6ae3d751 --- /dev/null +++ b/game/characters/cho/clothes/panties/lace_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41ea1fb7efd5a063ddf0d9dc554336f21c7c06282f2257048700eb07c9d9eb15 +size 7490 diff --git a/game/characters/cho/clothes/panties/lace_panties_1/2.webp b/game/characters/cho/clothes/panties/lace_panties_1/2.webp new file mode 100644 index 00000000..75af5201 --- /dev/null +++ b/game/characters/cho/clothes/panties/lace_panties_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bda6fa514c222d6ca5c482b80acc04b18f580d1bc55b9fb62ecf58193ad4641 +size 750 diff --git a/game/characters/cho/clothes/panties/lace_panties_1/outline.webp b/game/characters/cho/clothes/panties/lace_panties_1/outline.webp new file mode 100644 index 00000000..ad5dfa32 --- /dev/null +++ b/game/characters/cho/clothes/panties/lace_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3967d3ec52570e5a70e2e09f0d9e24fe011b789e00fdd9482ed5364e03cd18e0 +size 3430 diff --git a/game/characters/cho/clothes/panties/lace_panties_1/skin.webp b/game/characters/cho/clothes/panties/lace_panties_1/skin.webp new file mode 100644 index 00000000..8f1994c4 --- /dev/null +++ b/game/characters/cho/clothes/panties/lace_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2c9adc53747fbcbd3091c1c13f96794994b10fa1cb516405a0fe1f7cab96d3c +size 4616 diff --git a/game/characters/cho/clothes/panties/sport_panties_1/0.webp b/game/characters/cho/clothes/panties/sport_panties_1/0.webp new file mode 100644 index 00000000..14bc163e --- /dev/null +++ b/game/characters/cho/clothes/panties/sport_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48c552692f8856b628a3e5357bd28a329733c0e27a1c6c968010d622bb438bbf +size 6636 diff --git a/game/characters/cho/clothes/panties/sport_panties_1/extra.webp b/game/characters/cho/clothes/panties/sport_panties_1/extra.webp new file mode 100644 index 00000000..6fccfa09 --- /dev/null +++ b/game/characters/cho/clothes/panties/sport_panties_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d34ea70c1237084c8e1f4a7a3b5ffc4225eaaedfb0b3ff97a64fad35d6aecd6b +size 2658 diff --git a/game/characters/cho/clothes/panties/sport_panties_1/outline.webp b/game/characters/cho/clothes/panties/sport_panties_1/outline.webp new file mode 100644 index 00000000..3f97acbe --- /dev/null +++ b/game/characters/cho/clothes/panties/sport_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d802025c637d84ec27df7dfc61ec35d8ab59f80bb53b7583e8b2792edd30a863 +size 6102 diff --git a/game/characters/cho/clothes/panties/sport_panties_1/skin.webp b/game/characters/cho/clothes/panties/sport_panties_1/skin.webp new file mode 100644 index 00000000..341be9a6 --- /dev/null +++ b/game/characters/cho/clothes/panties/sport_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:095f5671b7a7c5ed564083cc5f234f839b7ea5eccb755e9f0471748a21863ab8 +size 2716 diff --git a/game/characters/cho/clothes/panties/sport_panties_2/0.webp b/game/characters/cho/clothes/panties/sport_panties_2/0.webp new file mode 100644 index 00000000..cfc25337 --- /dev/null +++ b/game/characters/cho/clothes/panties/sport_panties_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:475ccd4cf311be693517c89ec0648ceef88d3ca1dd632f90bb402dfc6e8c8c21 +size 6056 diff --git a/game/characters/cho/clothes/panties/sport_panties_2/extra.webp b/game/characters/cho/clothes/panties/sport_panties_2/extra.webp new file mode 100644 index 00000000..ef63ecf1 --- /dev/null +++ b/game/characters/cho/clothes/panties/sport_panties_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5abb382a1b6422eb2098fef8bfe95382ae1de0c090f67e8ca70511c5230c8bfd +size 2170 diff --git a/game/characters/cho/clothes/panties/sport_panties_2/outline.webp b/game/characters/cho/clothes/panties/sport_panties_2/outline.webp new file mode 100644 index 00000000..912c8819 --- /dev/null +++ b/game/characters/cho/clothes/panties/sport_panties_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b84b8bdeeab776aad5bafe81cd06b5f84d30f605d56df0e4f168a7b49eea68b +size 3240 diff --git a/game/characters/cho/clothes/panties/sport_panties_2/skin.webp b/game/characters/cho/clothes/panties/sport_panties_2/skin.webp new file mode 100644 index 00000000..d4394ab2 --- /dev/null +++ b/game/characters/cho/clothes/panties/sport_panties_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:881b6e16ef8a5dec776d8b4e31bffcceef20ecf220f2c98f18d019e94a7d1abd +size 4136 diff --git a/game/characters/cho/clothes/piercing/breast_barbell/0.webp b/game/characters/cho/clothes/piercing/breast_barbell/0.webp new file mode 100644 index 00000000..b1c5baaa --- /dev/null +++ b/game/characters/cho/clothes/piercing/breast_barbell/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19c0072746e2ebc29710885ae74b87d6e08da5bd8b1efc2816786226939b7edf +size 626 diff --git a/game/characters/cho/clothes/piercing/breast_barbell/outline.webp b/game/characters/cho/clothes/piercing/breast_barbell/outline.webp new file mode 100644 index 00000000..a86c8f6f --- /dev/null +++ b/game/characters/cho/clothes/piercing/breast_barbell/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25c581755d644a2ba90964de8df7c790ec632302cbde52fdcfe615e13d4f098d +size 754 diff --git a/game/characters/cho/clothes/piercing/stud/0.webp b/game/characters/cho/clothes/piercing/stud/0.webp new file mode 100644 index 00000000..42b3d283 --- /dev/null +++ b/game/characters/cho/clothes/piercing/stud/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e09e86b79b7c11ad36bac877b7731f4b780c6984dc69272099713f5abc864d9 +size 578 diff --git a/game/characters/cho/clothes/piercing/stud/outline.webp b/game/characters/cho/clothes/piercing/stud/outline.webp new file mode 100644 index 00000000..a16bc796 --- /dev/null +++ b/game/characters/cho/clothes/piercing/stud/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ebca24402ae6d5249ca4f0eeadf08aed87810a5843e10e16559a7534fb193e4 +size 642 diff --git a/game/characters/cho/clothes/pubes/arrow/0.webp b/game/characters/cho/clothes/pubes/arrow/0.webp new file mode 100644 index 00000000..9b1a398b --- /dev/null +++ b/game/characters/cho/clothes/pubes/arrow/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0588740fbaddb6f9c4a8d88513fae572935f4d102a0efcb6a90d6177989c2a0 +size 1708 diff --git a/game/characters/cho/clothes/pubes/arrow/outline.webp b/game/characters/cho/clothes/pubes/arrow/outline.webp new file mode 100644 index 00000000..746bb900 --- /dev/null +++ b/game/characters/cho/clothes/pubes/arrow/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7346fe18cb3e93180b7729202444f1b0d40207be59026bc66bfa5773199157d0 +size 1150 diff --git a/game/characters/cho/clothes/pubes/beaver/0.webp b/game/characters/cho/clothes/pubes/beaver/0.webp new file mode 100644 index 00000000..2480f545 --- /dev/null +++ b/game/characters/cho/clothes/pubes/beaver/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f037057609e8fc41419a4a084865821abf943bbaa0b1383e51e5fdd876f1a69 +size 2624 diff --git a/game/characters/cho/clothes/pubes/beaver/outline.webp b/game/characters/cho/clothes/pubes/beaver/outline.webp new file mode 100644 index 00000000..e0b82b34 --- /dev/null +++ b/game/characters/cho/clothes/pubes/beaver/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03abf6bf883ddfaecb1e77055ab643102bc5c45784c81393385fae71c1a86aa0 +size 2584 diff --git a/game/characters/cho/clothes/pubes/heart/0.webp b/game/characters/cho/clothes/pubes/heart/0.webp new file mode 100644 index 00000000..cc6fcab7 --- /dev/null +++ b/game/characters/cho/clothes/pubes/heart/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7922d03f542f1d7fc3b04bc108863d205a6562c7805606260c8340b285ef1ebd +size 674 diff --git a/game/characters/cho/clothes/pubes/heart/1.webp b/game/characters/cho/clothes/pubes/heart/1.webp new file mode 100644 index 00000000..60352955 --- /dev/null +++ b/game/characters/cho/clothes/pubes/heart/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31279f2d5d8ec4e75bf3161696331db771ef42caac116fc0a3b225b9720b8e95 +size 726 diff --git a/game/characters/cho/clothes/pubes/heart/extra.webp b/game/characters/cho/clothes/pubes/heart/extra.webp new file mode 100644 index 00000000..bf9fe215 --- /dev/null +++ b/game/characters/cho/clothes/pubes/heart/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2113cce44192cffbec6310f4c2cdc2f4cc205c1e1d50e038f93fbb548d1ec7c9 +size 580 diff --git a/game/characters/cho/clothes/pubes/heart/outline.webp b/game/characters/cho/clothes/pubes/heart/outline.webp new file mode 100644 index 00000000..a0dcfea3 --- /dev/null +++ b/game/characters/cho/clothes/pubes/heart/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39211c5e21b552bdc60ba08254704ae4d623b34a7a3707028ad97668f64c1d9a +size 788 diff --git a/game/characters/cho/clothes/pubes/stuble/0.webp b/game/characters/cho/clothes/pubes/stuble/0.webp new file mode 100644 index 00000000..51821213 --- /dev/null +++ b/game/characters/cho/clothes/pubes/stuble/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31e03424c3c185b04c22273bd5c38fac29db5a0838dfe0fa09f0ce05edbb37d1 +size 1068 diff --git a/game/characters/cho/clothes/pubes/thick/0.webp b/game/characters/cho/clothes/pubes/thick/0.webp new file mode 100644 index 00000000..1c56fab0 --- /dev/null +++ b/game/characters/cho/clothes/pubes/thick/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83dc974bc7e24052f681b4e1ed26502f902bbc81345620b1cd9fe7801c60028e +size 1224 diff --git a/game/characters/cho/clothes/pubes/thick/1.webp b/game/characters/cho/clothes/pubes/thick/1.webp new file mode 100644 index 00000000..d2e9008e --- /dev/null +++ b/game/characters/cho/clothes/pubes/thick/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e345e4e3b7c63fa894cb865d29cd7946db104150f68f99a58c1d7d6516a01007 +size 2352 diff --git a/game/characters/cho/clothes/pubes/thick/extra.webp b/game/characters/cho/clothes/pubes/thick/extra.webp new file mode 100644 index 00000000..42b96769 --- /dev/null +++ b/game/characters/cho/clothes/pubes/thick/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e5f4320eaaec45abda1fce3011e3347166f95a01f5c4cc3ac578528bf74f362 +size 1806 diff --git a/game/characters/cho/clothes/pubes/thick/outline.webp b/game/characters/cho/clothes/pubes/thick/outline.webp new file mode 100644 index 00000000..cab73981 --- /dev/null +++ b/game/characters/cho/clothes/pubes/thick/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e608751352f92099b5ba608892877e8f2b398e50745442c2f6c531633184151 +size 1546 diff --git a/game/characters/cho/clothes/pubes/unshaved/0.webp b/game/characters/cho/clothes/pubes/unshaved/0.webp new file mode 100644 index 00000000..ceec6b29 --- /dev/null +++ b/game/characters/cho/clothes/pubes/unshaved/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4ca54727f0dc2d533d2ee5440185e4183e0e391be7cabafec7213cd33595728 +size 1968 diff --git a/game/characters/cho/clothes/robe/robe_quidditch_1/0.webp b/game/characters/cho/clothes/robe/robe_quidditch_1/0.webp new file mode 100644 index 00000000..eb591872 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_quidditch_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:404026db138e696ec1e5e3c6cffb67c35854d8b423f6841514126190e7588062 +size 21050 diff --git a/game/characters/cho/clothes/robe/robe_quidditch_1/1.webp b/game/characters/cho/clothes/robe/robe_quidditch_1/1.webp new file mode 100644 index 00000000..ba28de9e --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_quidditch_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0044c5975d5b6450ee54cb85de108db49660983f6cdbcccd6fa8461d50d5c139 +size 13422 diff --git a/game/characters/cho/clothes/robe/robe_quidditch_1/mask.webp b/game/characters/cho/clothes/robe/robe_quidditch_1/mask.webp new file mode 100644 index 00000000..b4458850 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_quidditch_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:828d78c018426ab5556864b30a0f732ca1bfce6b3acba8500bd8a08e718f7472 +size 5380 diff --git a/game/characters/cho/clothes/robe/robe_quidditch_1/outline.webp b/game/characters/cho/clothes/robe/robe_quidditch_1/outline.webp new file mode 100644 index 00000000..2fadef54 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_quidditch_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a20e0e86945da917896efa388a75786200bd528b1dbc5ca416b6867d22edd213 +size 22734 diff --git a/game/characters/cho/clothes/robe/robe_quidditch_1/overlay.webp b/game/characters/cho/clothes/robe/robe_quidditch_1/overlay.webp new file mode 100644 index 00000000..1539bbd3 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_quidditch_1/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2af3c24e28d5e111f939492b313d59861caa5399d6904bd11fccab02ac131a66 +size 8354 diff --git a/game/characters/cho/clothes/robe/robe_quidditch_2/0.webp b/game/characters/cho/clothes/robe/robe_quidditch_2/0.webp new file mode 100644 index 00000000..45f34f19 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_quidditch_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0275e1f04d71b4f4f40a9e601d29f48bc1a39584e6b779b60f5e65c8619171c +size 25842 diff --git a/game/characters/cho/clothes/robe/robe_quidditch_2/outline.webp b/game/characters/cho/clothes/robe/robe_quidditch_2/outline.webp new file mode 100644 index 00000000..a706d037 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_quidditch_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1ac2e2afa789998f5383dd7f4bdb453d5f7c94b5588830472f6d9ecca45fb92 +size 28138 diff --git a/game/characters/cho/clothes/robe/robe_school_1/0.webp b/game/characters/cho/clothes/robe/robe_school_1/0.webp new file mode 100644 index 00000000..fd3e8a34 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d13a837b9a05459bd8df16b6931279c5c347a1d7328b88c0d8a197b3ccc39bf +size 34262 diff --git a/game/characters/cho/clothes/robe/robe_school_1/0_front.webp b/game/characters/cho/clothes/robe/robe_school_1/0_front.webp new file mode 100644 index 00000000..09534563 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_1/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aed60e76e9ccca2f0c25aea0595a878d088028af95413c436ee5fe5d4ac004c5 +size 14394 diff --git a/game/characters/cho/clothes/robe/robe_school_1/1.webp b/game/characters/cho/clothes/robe/robe_school_1/1.webp new file mode 100644 index 00000000..5f3e73fa --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d73d4effd3049baf1654ba39fd4a61721af63dbcebd1757b37612707b9f765b +size 9708 diff --git a/game/characters/cho/clothes/robe/robe_school_1/1_front.webp b/game/characters/cho/clothes/robe/robe_school_1/1_front.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_1/1_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/cho/clothes/robe/robe_school_1/2.webp b/game/characters/cho/clothes/robe/robe_school_1/2.webp new file mode 100644 index 00000000..71413d06 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd597ff3130e45d646615f028e5c1eb8308a2233fe0773027229b68d2f6f7cc7 +size 17260 diff --git a/game/characters/cho/clothes/robe/robe_school_1/2_front.webp b/game/characters/cho/clothes/robe/robe_school_1/2_front.webp new file mode 100644 index 00000000..fa4bed92 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_1/2_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7faa6a7a726558190d12eb08eb73671d27daacb0499c99346c29e62d2a1e5ef7 +size 11704 diff --git a/game/characters/cho/clothes/robe/robe_school_1/mask.webp b/game/characters/cho/clothes/robe/robe_school_1/mask.webp new file mode 100644 index 00000000..375c23ac --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7cc7ab53bd1c846125ad9185ed8f004a180a927055a82e7de5793e11e043dfba +size 6952 diff --git a/game/characters/cho/clothes/robe/robe_school_1/outline.webp b/game/characters/cho/clothes/robe/robe_school_1/outline.webp new file mode 100644 index 00000000..6dfdedc3 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb59002dd06917ff6a91295d3f43bd5e5b1059cac356f7e8776d452cda64692f +size 34792 diff --git a/game/characters/cho/clothes/robe/robe_school_1/outline_front.webp b/game/characters/cho/clothes/robe/robe_school_1/outline_front.webp new file mode 100644 index 00000000..fa0742a3 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_1/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93c9d459c314e67cb8eb0b42e2832a1f4f116cb7f8ae56d2ef0f692daa350a0b +size 14428 diff --git a/game/characters/cho/clothes/robe/robe_school_1/skin.webp b/game/characters/cho/clothes/robe/robe_school_1/skin.webp new file mode 100644 index 00000000..6ff42306 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:891c5eb251a41b1320ad8dd82b90ff3116f5dc982a1078644e3b667cd35c4e43 +size 10314 diff --git a/game/characters/cho/clothes/robe/robe_school_2/0.webp b/game/characters/cho/clothes/robe/robe_school_2/0.webp new file mode 100644 index 00000000..1946612b --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:203b86c777271f80af6b765ba5b855ac50597501acd7be8d93fb8b84f4d6ed7b +size 38456 diff --git a/game/characters/cho/clothes/robe/robe_school_2/0_back.webp b/game/characters/cho/clothes/robe/robe_school_2/0_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/cho/clothes/robe/robe_school_2/0_front.webp b/game/characters/cho/clothes/robe/robe_school_2/0_front.webp new file mode 100644 index 00000000..09534563 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aed60e76e9ccca2f0c25aea0595a878d088028af95413c436ee5fe5d4ac004c5 +size 14394 diff --git a/game/characters/cho/clothes/robe/robe_school_2/1.webp b/game/characters/cho/clothes/robe/robe_school_2/1.webp new file mode 100644 index 00000000..5f3e73fa --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d73d4effd3049baf1654ba39fd4a61721af63dbcebd1757b37612707b9f765b +size 9708 diff --git a/game/characters/cho/clothes/robe/robe_school_2/1_back.webp b/game/characters/cho/clothes/robe/robe_school_2/1_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/cho/clothes/robe/robe_school_2/1_front.webp b/game/characters/cho/clothes/robe/robe_school_2/1_front.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/1_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/cho/clothes/robe/robe_school_2/2.webp b/game/characters/cho/clothes/robe/robe_school_2/2.webp new file mode 100644 index 00000000..3e23a14f --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5f25c2e7ca4165ae27f0a1f2bae896526e91bfa4e1567aebd67d766922d4123 +size 17252 diff --git a/game/characters/cho/clothes/robe/robe_school_2/2_back.webp b/game/characters/cho/clothes/robe/robe_school_2/2_back.webp new file mode 100644 index 00000000..54e904d1 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/2_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e514c4d314049c17c0d8df521c6f935620ca3f53bb175c8c2072ecf0b0bdb25 +size 9700 diff --git a/game/characters/cho/clothes/robe/robe_school_2/2_front.webp b/game/characters/cho/clothes/robe/robe_school_2/2_front.webp new file mode 100644 index 00000000..fa4bed92 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/2_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7faa6a7a726558190d12eb08eb73671d27daacb0499c99346c29e62d2a1e5ef7 +size 11704 diff --git a/game/characters/cho/clothes/robe/robe_school_2/extra.webp b/game/characters/cho/clothes/robe/robe_school_2/extra.webp new file mode 100644 index 00000000..ffaa0a16 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce436a15eddd97cc63ca3564c51ae2387652a76ab848d75dfc50831992a50b03 +size 15078 diff --git a/game/characters/cho/clothes/robe/robe_school_2/mask.webp b/game/characters/cho/clothes/robe/robe_school_2/mask.webp new file mode 100644 index 00000000..375c23ac --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7cc7ab53bd1c846125ad9185ed8f004a180a927055a82e7de5793e11e043dfba +size 6952 diff --git a/game/characters/cho/clothes/robe/robe_school_2/outline.webp b/game/characters/cho/clothes/robe/robe_school_2/outline.webp new file mode 100644 index 00000000..794f5090 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c78b5188678876f0ae438b7d5b2a6b39ecb792ff24463d0c578f9c3b43625a4e +size 36896 diff --git a/game/characters/cho/clothes/robe/robe_school_2/outline_back.webp b/game/characters/cho/clothes/robe/robe_school_2/outline_back.webp new file mode 100644 index 00000000..9950b9a7 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba7515e3be1fe1c001ffcb774f96790056cf592b07c42f4534dd38340eeab469 +size 9710 diff --git a/game/characters/cho/clothes/robe/robe_school_2/outline_front.webp b/game/characters/cho/clothes/robe/robe_school_2/outline_front.webp new file mode 100644 index 00000000..fa0742a3 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93c9d459c314e67cb8eb0b42e2832a1f4f116cb7f8ae56d2ef0f692daa350a0b +size 14428 diff --git a/game/characters/cho/clothes/robe/robe_school_2/skin.webp b/game/characters/cho/clothes/robe/robe_school_2/skin.webp new file mode 100644 index 00000000..6ff42306 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:891c5eb251a41b1320ad8dd82b90ff3116f5dc982a1078644e3b667cd35c4e43 +size 10314 diff --git a/game/characters/cho/clothes/robe/robe_school_3/0.webp b/game/characters/cho/clothes/robe/robe_school_3/0.webp new file mode 100644 index 00000000..296818f3 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef2fd9c99e5a7c94c7ca6f885d50d7b25d7b9780ae58de3de7cdf1a11b84a8e2 +size 38850 diff --git a/game/characters/cho/clothes/robe/robe_school_3/0_back.webp b/game/characters/cho/clothes/robe/robe_school_3/0_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/cho/clothes/robe/robe_school_3/0_front.webp b/game/characters/cho/clothes/robe/robe_school_3/0_front.webp new file mode 100644 index 00000000..09534563 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aed60e76e9ccca2f0c25aea0595a878d088028af95413c436ee5fe5d4ac004c5 +size 14394 diff --git a/game/characters/cho/clothes/robe/robe_school_3/1.webp b/game/characters/cho/clothes/robe/robe_school_3/1.webp new file mode 100644 index 00000000..5f3e73fa --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d73d4effd3049baf1654ba39fd4a61721af63dbcebd1757b37612707b9f765b +size 9708 diff --git a/game/characters/cho/clothes/robe/robe_school_3/1_back.webp b/game/characters/cho/clothes/robe/robe_school_3/1_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/cho/clothes/robe/robe_school_3/1_front.webp b/game/characters/cho/clothes/robe/robe_school_3/1_front.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/1_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/cho/clothes/robe/robe_school_3/2.webp b/game/characters/cho/clothes/robe/robe_school_3/2.webp new file mode 100644 index 00000000..5c0ccc14 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d625fa3603267676abd204558edee806eec8e3d8b285bf279d0710971d2072fd +size 17288 diff --git a/game/characters/cho/clothes/robe/robe_school_3/2_back.webp b/game/characters/cho/clothes/robe/robe_school_3/2_back.webp new file mode 100644 index 00000000..b23e2c36 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/2_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7514690380fb1f5147f6ef6d55efe767bf9f90a133aa51ba269de8c4f5785c94 +size 9952 diff --git a/game/characters/cho/clothes/robe/robe_school_3/2_front.webp b/game/characters/cho/clothes/robe/robe_school_3/2_front.webp new file mode 100644 index 00000000..fa4bed92 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/2_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7faa6a7a726558190d12eb08eb73671d27daacb0499c99346c29e62d2a1e5ef7 +size 11704 diff --git a/game/characters/cho/clothes/robe/robe_school_3/extra.webp b/game/characters/cho/clothes/robe/robe_school_3/extra.webp new file mode 100644 index 00000000..d744239d --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0133b150c37158f57d72631696284e91264695d86d9306a1e612283de2c0948f +size 29086 diff --git a/game/characters/cho/clothes/robe/robe_school_3/mask.webp b/game/characters/cho/clothes/robe/robe_school_3/mask.webp new file mode 100644 index 00000000..375c23ac --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7cc7ab53bd1c846125ad9185ed8f004a180a927055a82e7de5793e11e043dfba +size 6952 diff --git a/game/characters/cho/clothes/robe/robe_school_3/outline.webp b/game/characters/cho/clothes/robe/robe_school_3/outline.webp new file mode 100644 index 00000000..cc6c60a9 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91bcef6f0ff7ad9c9bf0c2fdcfe6828926d3dc96a4ade725ab5b9cfc38ede70c +size 37504 diff --git a/game/characters/cho/clothes/robe/robe_school_3/outline_back.webp b/game/characters/cho/clothes/robe/robe_school_3/outline_back.webp new file mode 100644 index 00000000..445e4acb --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6763a492662456e95494b74d3a4df0fec80fd0090bf84a500f7f18e6c5253b5d +size 10054 diff --git a/game/characters/cho/clothes/robe/robe_school_3/outline_front.webp b/game/characters/cho/clothes/robe/robe_school_3/outline_front.webp new file mode 100644 index 00000000..fa0742a3 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93c9d459c314e67cb8eb0b42e2832a1f4f116cb7f8ae56d2ef0f692daa350a0b +size 14428 diff --git a/game/characters/cho/clothes/robe/robe_school_3/skin.webp b/game/characters/cho/clothes/robe/robe_school_3/skin.webp new file mode 100644 index 00000000..6ff42306 --- /dev/null +++ b/game/characters/cho/clothes/robe/robe_school_3/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:891c5eb251a41b1320ad8dd82b90ff3116f5dc982a1078644e3b667cd35c4e43 +size 10314 diff --git a/game/characters/cho/clothes/stockings/fishnet/0.webp b/game/characters/cho/clothes/stockings/fishnet/0.webp new file mode 100644 index 00000000..1d69ee00 --- /dev/null +++ b/game/characters/cho/clothes/stockings/fishnet/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:daf6932db4d659833e7af4ac7d43eb0f6921f33a417ede0bacbe0b3257d8d885 +size 9358 diff --git a/game/characters/cho/clothes/stockings/fishnet/1.webp b/game/characters/cho/clothes/stockings/fishnet/1.webp new file mode 100644 index 00000000..1f331b93 --- /dev/null +++ b/game/characters/cho/clothes/stockings/fishnet/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4de5b7e07ac91a79db17d7b303297d0d2e111e3cd15faa0a020a411ba60849e1 +size 2614 diff --git a/game/characters/cho/clothes/stockings/fishnet/outline.webp b/game/characters/cho/clothes/stockings/fishnet/outline.webp new file mode 100644 index 00000000..3295dbf6 --- /dev/null +++ b/game/characters/cho/clothes/stockings/fishnet/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffbaa85e75b3075221fdaa0a70ddf5da50b1f1b5859e308abeaf173a9f40069a +size 4722 diff --git a/game/characters/cho/clothes/stockings/house/0.webp b/game/characters/cho/clothes/stockings/house/0.webp new file mode 100644 index 00000000..93732357 --- /dev/null +++ b/game/characters/cho/clothes/stockings/house/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de215ddf7fe0b8a994419c48595a3bcea5d08a4d8fce7009cc43189d031dec1d +size 5360 diff --git a/game/characters/cho/clothes/stockings/house/1.webp b/game/characters/cho/clothes/stockings/house/1.webp new file mode 100644 index 00000000..8922686d --- /dev/null +++ b/game/characters/cho/clothes/stockings/house/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73c8373a81b2752794c219f63a26024aca262d812e1c6477d02bce88489ef9e2 +size 3370 diff --git a/game/characters/cho/clothes/stockings/house/outline.webp b/game/characters/cho/clothes/stockings/house/outline.webp new file mode 100644 index 00000000..6e095961 --- /dev/null +++ b/game/characters/cho/clothes/stockings/house/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f120c6a2f2d4c5a6562706c9e440feea4ff425e4a930a231e91bb7608be22042 +size 5418 diff --git a/game/characters/cho/clothes/stockings/kneehigh/0.webp b/game/characters/cho/clothes/stockings/kneehigh/0.webp new file mode 100644 index 00000000..8acddd91 --- /dev/null +++ b/game/characters/cho/clothes/stockings/kneehigh/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aaed7c37c622651233c4cbcbf0af3a10e0e612d7634a33e9b2cc8ec79fa21d77 +size 3526 diff --git a/game/characters/cho/clothes/stockings/kneehigh/outline.webp b/game/characters/cho/clothes/stockings/kneehigh/outline.webp new file mode 100644 index 00000000..eb0b9387 --- /dev/null +++ b/game/characters/cho/clothes/stockings/kneehigh/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:279d3aa8a44624a6f2fb3e5fc53a1d84379a0ace6bd830c5ee672b5e0a6d4f09 +size 2482 diff --git a/game/characters/cho/clothes/stockings/kneehigh/skin.webp b/game/characters/cho/clothes/stockings/kneehigh/skin.webp new file mode 100644 index 00000000..84d35685 --- /dev/null +++ b/game/characters/cho/clothes/stockings/kneehigh/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29566b48397d708a5ce1de6d584eb5eb29a0b26c2bb1c3e3f1991c83a654093b +size 2074 diff --git a/game/characters/cho/clothes/stockings/lace_stockings_1/0.webp b/game/characters/cho/clothes/stockings/lace_stockings_1/0.webp new file mode 100644 index 00000000..3868bdaf --- /dev/null +++ b/game/characters/cho/clothes/stockings/lace_stockings_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56acf443497723ae74972da060f0123b862968c6b3c6589167b01abe157fc2a7 +size 2344 diff --git a/game/characters/cho/clothes/stockings/lace_stockings_1/1.webp b/game/characters/cho/clothes/stockings/lace_stockings_1/1.webp new file mode 100644 index 00000000..20e4bfa4 --- /dev/null +++ b/game/characters/cho/clothes/stockings/lace_stockings_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6e91f02bc48093a5a361b4517235a9241548f45715eaa0114bc15e471224f39 +size 12362 diff --git a/game/characters/cho/clothes/stockings/lace_stockings_1/outline.webp b/game/characters/cho/clothes/stockings/lace_stockings_1/outline.webp new file mode 100644 index 00000000..acd51d09 --- /dev/null +++ b/game/characters/cho/clothes/stockings/lace_stockings_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f354b8bdeba973cdf1812a858fc26110ab81d8f5a1c6b7cca5f8640c01a9d92 +size 5332 diff --git a/game/characters/cho/clothes/stockings/lace_stockings_1/skin.webp b/game/characters/cho/clothes/stockings/lace_stockings_1/skin.webp new file mode 100644 index 00000000..adfeadec --- /dev/null +++ b/game/characters/cho/clothes/stockings/lace_stockings_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bd9d65964484248106d1f7d112ff5962462ca62ccd00784e17822f8984be1f9 +size 2572 diff --git a/game/characters/cho/clothes/stockings/pantyhose/0.webp b/game/characters/cho/clothes/stockings/pantyhose/0.webp new file mode 100644 index 00000000..119533e0 --- /dev/null +++ b/game/characters/cho/clothes/stockings/pantyhose/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10bccbf29bcf57e7421de3dfab0296c37b01cf9002422de277fcdbc454f45e77 +size 10198 diff --git a/game/characters/cho/clothes/stockings/pantyhose/outline.webp b/game/characters/cho/clothes/stockings/pantyhose/outline.webp new file mode 100644 index 00000000..6b8c0efb --- /dev/null +++ b/game/characters/cho/clothes/stockings/pantyhose/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d38bece866a27e85eab1878791318d1f149b082c70c8e7819703f120d5b7471 +size 8754 diff --git a/game/characters/cho/clothes/stockings/quid1/0.webp b/game/characters/cho/clothes/stockings/quid1/0.webp new file mode 100644 index 00000000..e02ad6d3 --- /dev/null +++ b/game/characters/cho/clothes/stockings/quid1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf45bb7fa146e3e486a4d5bb3f53f191a3aea3be3e60d6ff07491647f100a3d1 +size 4164 diff --git a/game/characters/cho/clothes/stockings/quid1/1.webp b/game/characters/cho/clothes/stockings/quid1/1.webp new file mode 100644 index 00000000..389dc667 --- /dev/null +++ b/game/characters/cho/clothes/stockings/quid1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92aed68f86fda838d97f3bfee2d3e10941752091f4e08afb8fd2dcca3f00f1fa +size 1558 diff --git a/game/characters/cho/clothes/stockings/quid1/extra.webp b/game/characters/cho/clothes/stockings/quid1/extra.webp new file mode 100644 index 00000000..b24144d0 --- /dev/null +++ b/game/characters/cho/clothes/stockings/quid1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3912b1a24f9e22372286df410ffa905dad6b6c0f83159d3fcec7360a1d25a662 +size 1418 diff --git a/game/characters/cho/clothes/stockings/quid1/outline.webp b/game/characters/cho/clothes/stockings/quid1/outline.webp new file mode 100644 index 00000000..32c4e07b --- /dev/null +++ b/game/characters/cho/clothes/stockings/quid1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e312250b8b8d5233bbdb88153b36c82e1b138f7af060c3eb57afbb498e352d3 +size 4734 diff --git a/game/characters/cho/clothes/stockings/quid1/skin.webp b/game/characters/cho/clothes/stockings/quid1/skin.webp new file mode 100644 index 00000000..ccf5b8b0 --- /dev/null +++ b/game/characters/cho/clothes/stockings/quid1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0ad23b5249084a71cea2b5534adcc797aa5f6bd9d575e32663a78006a921c85 +size 1218 diff --git a/game/characters/cho/clothes/stockings/sailor/0.webp b/game/characters/cho/clothes/stockings/sailor/0.webp new file mode 100644 index 00000000..49620489 --- /dev/null +++ b/game/characters/cho/clothes/stockings/sailor/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3ec52a21fd8e7c534ac3c42ed113df6a1c4261e3fcbbae2bb3e92ef16c1080a +size 5504 diff --git a/game/characters/cho/clothes/stockings/sailor/outline.webp b/game/characters/cho/clothes/stockings/sailor/outline.webp new file mode 100644 index 00000000..5cc23679 --- /dev/null +++ b/game/characters/cho/clothes/stockings/sailor/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d8bd999b94ae25ab0fa468dae255e8b1dee8cf9419bcc4cb022ad1ecf8dd0fe +size 5558 diff --git a/game/characters/cho/clothes/stockings/sailor/skin.webp b/game/characters/cho/clothes/stockings/sailor/skin.webp new file mode 100644 index 00000000..2786f4ac --- /dev/null +++ b/game/characters/cho/clothes/stockings/sailor/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e50d41bb265ba44dd751d0eb1f1d81ede2508a565e8ccf2381c60cca7f66ed2 +size 1526 diff --git a/game/characters/cho/clothes/stockings/toon_socks/0.webp b/game/characters/cho/clothes/stockings/toon_socks/0.webp new file mode 100644 index 00000000..4e3baba9 --- /dev/null +++ b/game/characters/cho/clothes/stockings/toon_socks/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf614b2875c130ba3f42f2126ee04b60e0a07cc6ecd12eef435bcd8dc729bb32 +size 6888 diff --git a/game/characters/cho/clothes/stockings/toon_socks/1.webp b/game/characters/cho/clothes/stockings/toon_socks/1.webp new file mode 100644 index 00000000..b1271e04 --- /dev/null +++ b/game/characters/cho/clothes/stockings/toon_socks/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6b91ecb8f577cd79db4462cfb2fa803ab9210e0ce03f6152b18a8ecc553dd0f +size 5602 diff --git a/game/characters/cho/clothes/stockings/toon_socks/outline.webp b/game/characters/cho/clothes/stockings/toon_socks/outline.webp new file mode 100644 index 00000000..b5fda26e --- /dev/null +++ b/game/characters/cho/clothes/stockings/toon_socks/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba156dfe0c5f61553b2e58875f44d7860d5696c57c10cc0392a98c51c4a631f6 +size 8850 diff --git a/game/characters/cho/clothes/stockings/toon_socks/skin.webp b/game/characters/cho/clothes/stockings/toon_socks/skin.webp new file mode 100644 index 00000000..63a5fb6c --- /dev/null +++ b/game/characters/cho/clothes/stockings/toon_socks/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1217a707198888d145d498fd8c291cbc45e3084a5c9f3439d33a970df0628b9 +size 1780 diff --git a/game/characters/cho/clothes/tattoo/breasts_slut/0.webp b/game/characters/cho/clothes/tattoo/breasts_slut/0.webp new file mode 100644 index 00000000..f5a7cf80 --- /dev/null +++ b/game/characters/cho/clothes/tattoo/breasts_slut/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96b17aeae60068e5322c4d26bcb58dd2483e492313c8252d6183bee95768013c +size 1160 diff --git a/game/characters/cho/clothes/tattoo/chun_li_dragon/0.webp b/game/characters/cho/clothes/tattoo/chun_li_dragon/0.webp new file mode 100644 index 00000000..4c6bf64f --- /dev/null +++ b/game/characters/cho/clothes/tattoo/chun_li_dragon/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c70c57b4c5ee7927141dad24dcbe5603ada7ed91c541ed91a13b85caed4bdc4f +size 9366 diff --git a/game/characters/cho/clothes/tattoo/chun_li_dragon/0_front.webp b/game/characters/cho/clothes/tattoo/chun_li_dragon/0_front.webp new file mode 100644 index 00000000..c57711b3 --- /dev/null +++ b/game/characters/cho/clothes/tattoo/chun_li_dragon/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11c6ade644dcdc3d85d4e2c8e82c017668a06a2c11b461c368a72eeae8a89bb7 +size 4052 diff --git a/game/characters/cho/clothes/tattoo/chun_li_dragon/1.webp b/game/characters/cho/clothes/tattoo/chun_li_dragon/1.webp new file mode 100644 index 00000000..0ee0b57d --- /dev/null +++ b/game/characters/cho/clothes/tattoo/chun_li_dragon/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d9da85d0337865872cf8804df451634222dd9f4c5ac6a24278e94f039f00627 +size 3794 diff --git a/game/characters/cho/clothes/tattoo/chun_li_dragon/1_front.webp b/game/characters/cho/clothes/tattoo/chun_li_dragon/1_front.webp new file mode 100644 index 00000000..f52bba48 --- /dev/null +++ b/game/characters/cho/clothes/tattoo/chun_li_dragon/1_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ccdc0e513a387b6f25d4c0ad9b9bc5de8297647a074c8c2be5d7c8de3c3d6822 +size 1524 diff --git a/game/characters/cho/clothes/tattoo/chun_li_dragon/outline.webp b/game/characters/cho/clothes/tattoo/chun_li_dragon/outline.webp new file mode 100644 index 00000000..23967a71 --- /dev/null +++ b/game/characters/cho/clothes/tattoo/chun_li_dragon/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2b2eacce7592ed86b195d6ce338f7197b9db56192db5fc9b3df814f1c01ce12 +size 6738 diff --git a/game/characters/cho/clothes/tattoo/chun_li_dragon/outline_front.webp b/game/characters/cho/clothes/tattoo/chun_li_dragon/outline_front.webp new file mode 100644 index 00000000..beaf37a4 --- /dev/null +++ b/game/characters/cho/clothes/tattoo/chun_li_dragon/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c43d5f3eb5b3e4c9c9a8ace89f6b7301bdb1cf897a6b71056ff4deeed4caaa1 +size 3494 diff --git a/game/characters/cho/clothes/tattoo/chun_li_mule/0.webp b/game/characters/cho/clothes/tattoo/chun_li_mule/0.webp new file mode 100644 index 00000000..9dab6b98 --- /dev/null +++ b/game/characters/cho/clothes/tattoo/chun_li_mule/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c2b0054e1c8b7598dc3687c57b5dcf95d45e82a23ef58593f06842396a1cd97 +size 2242 diff --git a/game/characters/cho/clothes/tattoo/pelv_free/0.webp b/game/characters/cho/clothes/tattoo/pelv_free/0.webp new file mode 100644 index 00000000..5b36552d --- /dev/null +++ b/game/characters/cho/clothes/tattoo/pelv_free/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7473c707dc4801f7a10a4f8840886d7b530d110e1b265102ed368a006a61b28a +size 1252 diff --git a/game/characters/cho/clothes/top/chun_li_dress/0.webp b/game/characters/cho/clothes/top/chun_li_dress/0.webp new file mode 100644 index 00000000..66e0854f --- /dev/null +++ b/game/characters/cho/clothes/top/chun_li_dress/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdd5d0fc2baba71402f0c69b16b0532107cf1840229ea7e43bfd382ae9837655 +size 24246 diff --git a/game/characters/cho/clothes/top/chun_li_dress/1.webp b/game/characters/cho/clothes/top/chun_li_dress/1.webp new file mode 100644 index 00000000..125235fa --- /dev/null +++ b/game/characters/cho/clothes/top/chun_li_dress/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7f8f262b256ade8dc2268a9d7044f67a4762bf38466d540a658085415ee99fa +size 26602 diff --git a/game/characters/cho/clothes/top/chun_li_dress/extra.webp b/game/characters/cho/clothes/top/chun_li_dress/extra.webp new file mode 100644 index 00000000..0a67002a --- /dev/null +++ b/game/characters/cho/clothes/top/chun_li_dress/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e2c8b7cce7c4bb6d9d86b300158fc968ccebd7d0abf3f376198ccce1435d8ac +size 5298 diff --git a/game/characters/cho/clothes/top/chun_li_dress/outline.webp b/game/characters/cho/clothes/top/chun_li_dress/outline.webp new file mode 100644 index 00000000..71d8e83c --- /dev/null +++ b/game/characters/cho/clothes/top/chun_li_dress/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c028008ebf8e6bb5c3f8733ab18a60713d9efbe2744d531a117cbf272b0d3c64 +size 32306 diff --git a/game/characters/cho/clothes/top/dress_1/0.webp b/game/characters/cho/clothes/top/dress_1/0.webp new file mode 100644 index 00000000..8918a313 --- /dev/null +++ b/game/characters/cho/clothes/top/dress_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ac7b3fab915a613e89b806036afd866a8ade5a8248b5744c3605aee33c1d985 +size 30114 diff --git a/game/characters/cho/clothes/top/dress_1/1.webp b/game/characters/cho/clothes/top/dress_1/1.webp new file mode 100644 index 00000000..f4cc8f37 --- /dev/null +++ b/game/characters/cho/clothes/top/dress_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a02f4a72ec1fe82198fb6dad781851220fcc5c61fad7dcf706572122e85dff66 +size 8966 diff --git a/game/characters/cho/clothes/top/dress_1/extra.webp b/game/characters/cho/clothes/top/dress_1/extra.webp new file mode 100644 index 00000000..cf2de183 --- /dev/null +++ b/game/characters/cho/clothes/top/dress_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f05a6eac94e76ccb8a1ddb70197fcd41b562c8b23c646ba1eb32b68b9988337d +size 3558 diff --git a/game/characters/cho/clothes/top/dress_1/outline.webp b/game/characters/cho/clothes/top/dress_1/outline.webp new file mode 100644 index 00000000..ad146e50 --- /dev/null +++ b/game/characters/cho/clothes/top/dress_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a01eb4c91c9fa45146a27fb6525d824eae2e53756593e2a7b6bedc83fcc68355 +size 32704 diff --git a/game/characters/cho/clothes/top/dress_1/skin.webp b/game/characters/cho/clothes/top/dress_1/skin.webp new file mode 100644 index 00000000..cbd27eaa --- /dev/null +++ b/game/characters/cho/clothes/top/dress_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df533a19600a4a34ce0022c69347f316cd590675347586ddfe36cce308ec80d5 +size 7248 diff --git a/game/characters/cho/clothes/top/dress_2/0.webp b/game/characters/cho/clothes/top/dress_2/0.webp new file mode 100644 index 00000000..53ab3be5 --- /dev/null +++ b/game/characters/cho/clothes/top/dress_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b055d8d5f46189232e5f304a8c74f9a9abe6b106ed5f6279bbd01e0c0c207c7 +size 22562 diff --git a/game/characters/cho/clothes/top/dress_2/1.webp b/game/characters/cho/clothes/top/dress_2/1.webp new file mode 100644 index 00000000..d0ad6869 --- /dev/null +++ b/game/characters/cho/clothes/top/dress_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4e8ce29631023f7f8600f6c5566a422066d6b482f203e5460f5563405bf0318 +size 1612 diff --git a/game/characters/cho/clothes/top/dress_2/extra.webp b/game/characters/cho/clothes/top/dress_2/extra.webp new file mode 100644 index 00000000..63fa4015 --- /dev/null +++ b/game/characters/cho/clothes/top/dress_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f92da2a39d86fb2b0c58afde18ac325f4a3796cc2425012bb53f400dbd7f4dc +size 8036 diff --git a/game/characters/cho/clothes/top/dress_2/outline.webp b/game/characters/cho/clothes/top/dress_2/outline.webp new file mode 100644 index 00000000..c3da5537 --- /dev/null +++ b/game/characters/cho/clothes/top/dress_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b26d7da62e77f9061d4113949fe2ba0f99453f50c7cc049fb43c6dfc472b7e98 +size 28496 diff --git a/game/characters/cho/clothes/top/police/0.webp b/game/characters/cho/clothes/top/police/0.webp new file mode 100644 index 00000000..93d4daed --- /dev/null +++ b/game/characters/cho/clothes/top/police/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dd17abd73541631006b598377b894f934baf00613c6506781d421794075ce71 +size 13954 diff --git a/game/characters/cho/clothes/top/police/1.webp b/game/characters/cho/clothes/top/police/1.webp new file mode 100644 index 00000000..116edcb9 --- /dev/null +++ b/game/characters/cho/clothes/top/police/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7a26e13899e5b97570a7e104cad83d3fa90966267e1e9128826500c482dae30 +size 878 diff --git a/game/characters/cho/clothes/top/police/extra.webp b/game/characters/cho/clothes/top/police/extra.webp new file mode 100644 index 00000000..4254b81a --- /dev/null +++ b/game/characters/cho/clothes/top/police/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90269d9b2b0f51d56a3a27ac3a51bf2cae726eacb79e2f94d5adddc8b7a4ef2d +size 886 diff --git a/game/characters/cho/clothes/top/police/outline.webp b/game/characters/cho/clothes/top/police/outline.webp new file mode 100644 index 00000000..24d6c6cc --- /dev/null +++ b/game/characters/cho/clothes/top/police/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c782363747571b1e7e3d8fb5c68785f098d8b25c6f6e3ccc45ecefd92102a48 +size 9986 diff --git a/game/characters/cho/clothes/top/smurfette/0.webp b/game/characters/cho/clothes/top/smurfette/0.webp new file mode 100644 index 00000000..2974582e --- /dev/null +++ b/game/characters/cho/clothes/top/smurfette/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7c5e61448c2865f3609e2b58fe3294aaabbd5a5c023513830e6715d209cb0ae +size 24598 diff --git a/game/characters/cho/clothes/top/smurfette/1.webp b/game/characters/cho/clothes/top/smurfette/1.webp new file mode 100644 index 00000000..f531c96c --- /dev/null +++ b/game/characters/cho/clothes/top/smurfette/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61fafbddd99663dd366ea03521f5a0b30be15a7189b5f097f52e8dfe3d97d44e +size 13820 diff --git a/game/characters/cho/clothes/top/smurfette/outline.webp b/game/characters/cho/clothes/top/smurfette/outline.webp new file mode 100644 index 00000000..e286375d --- /dev/null +++ b/game/characters/cho/clothes/top/smurfette/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e16c3f4753bdadb11b2f60fb0e3e396630c6ebfd0ebaa180c0d1b2a127c98ee7 +size 20730 diff --git a/game/characters/cho/clothes/top/smurfette/skin.webp b/game/characters/cho/clothes/top/smurfette/skin.webp new file mode 100644 index 00000000..7929f00d --- /dev/null +++ b/game/characters/cho/clothes/top/smurfette/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cddc1b5dfea560b8aca4c14423c85fd2b9c45beba63c97787004e81c5356599f +size 12784 diff --git a/game/characters/cho/clothes/top/toon_shirt/0.webp b/game/characters/cho/clothes/top/toon_shirt/0.webp new file mode 100644 index 00000000..89a40b42 --- /dev/null +++ b/game/characters/cho/clothes/top/toon_shirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5c28ea2ccb8f624f0063f63881d93f36318b616c523a4c8873c0af14595caea +size 8224 diff --git a/game/characters/cho/clothes/top/toon_shirt/extra.webp b/game/characters/cho/clothes/top/toon_shirt/extra.webp new file mode 100644 index 00000000..3a6e50f1 --- /dev/null +++ b/game/characters/cho/clothes/top/toon_shirt/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eec29552aee0aa761909a00c9c452cff762761536a791d6eb5cfeb64909b417d +size 7914 diff --git a/game/characters/cho/clothes/top/toon_shirt/outline.webp b/game/characters/cho/clothes/top/toon_shirt/outline.webp new file mode 100644 index 00000000..1b76df38 --- /dev/null +++ b/game/characters/cho/clothes/top/toon_shirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9caf81a1af08dc0d6671bcc9a11205dda7ffc95f20722b873bf8942462960b10 +size 8290 diff --git a/game/characters/cho/clothes/top/toon_shirt/skin.webp b/game/characters/cho/clothes/top/toon_shirt/skin.webp new file mode 100644 index 00000000..53e8cdc1 --- /dev/null +++ b/game/characters/cho/clothes/top/toon_shirt/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f22a8822dbbf16084cac9ec013fda29016d6cae6062c5457e236ebc70d53b612 +size 3702 diff --git a/game/characters/cho/clothes/top/top_j_school_1/0.webp b/game/characters/cho/clothes/top/top_j_school_1/0.webp new file mode 100644 index 00000000..4b05327a --- /dev/null +++ b/game/characters/cho/clothes/top/top_j_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1b889b84350edec03455b63c1eba91e67f3fbf4487173747bb38a8404a35893 +size 25524 diff --git a/game/characters/cho/clothes/top/top_j_school_1/0_back.webp b/game/characters/cho/clothes/top/top_j_school_1/0_back.webp new file mode 100644 index 00000000..ec024eee --- /dev/null +++ b/game/characters/cho/clothes/top/top_j_school_1/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5de17fed9b5d6c3ed191cdf913254a78ad3c1992174812b7fed2ca2c556521a +size 998 diff --git a/game/characters/cho/clothes/top/top_j_school_1/1.webp b/game/characters/cho/clothes/top/top_j_school_1/1.webp new file mode 100644 index 00000000..4b190e1e --- /dev/null +++ b/game/characters/cho/clothes/top/top_j_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3548b6fae28bcc6d2aab284f42293d4f7040d1ba0ceeaac1f0830a4cdd02a79a +size 3466 diff --git a/game/characters/cho/clothes/top/top_j_school_1/2.webp b/game/characters/cho/clothes/top/top_j_school_1/2.webp new file mode 100644 index 00000000..c258aa93 --- /dev/null +++ b/game/characters/cho/clothes/top/top_j_school_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38b0721b2b582b3278f9fa2825164eec42da3f3addc474856ed4aadf3f55dd5c +size 10396 diff --git a/game/characters/cho/clothes/top/top_j_school_1/3.webp b/game/characters/cho/clothes/top/top_j_school_1/3.webp new file mode 100644 index 00000000..21b73d74 --- /dev/null +++ b/game/characters/cho/clothes/top/top_j_school_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9d1375a7cd25447499f630067455d65fb1bfc303e93801c1e60b9cfb4fc91a5 +size 4054 diff --git a/game/characters/cho/clothes/top/top_j_school_1/outline.webp b/game/characters/cho/clothes/top/top_j_school_1/outline.webp new file mode 100644 index 00000000..c8035b1d --- /dev/null +++ b/game/characters/cho/clothes/top/top_j_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:419c13c35ae6a64834803cf7dc7835e8ea1f516a75ccebaf5c29ea8567d2f3e9 +size 20982 diff --git a/game/characters/cho/clothes/top/top_j_school_1/outline_back.webp b/game/characters/cho/clothes/top/top_j_school_1/outline_back.webp new file mode 100644 index 00000000..610c64b9 --- /dev/null +++ b/game/characters/cho/clothes/top/top_j_school_1/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec82da9faa8868fa71bf65e559bc348bec57ffee96ed3139a3014ed95a897fbb +size 748 diff --git a/game/characters/cho/clothes/top/top_j_school_1/skin.webp b/game/characters/cho/clothes/top/top_j_school_1/skin.webp new file mode 100644 index 00000000..f8178f93 --- /dev/null +++ b/game/characters/cho/clothes/top/top_j_school_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87c58df00549d204300d98757c06df4ced28427e81e474ba09fde79274b74a81 +size 2806 diff --git a/game/characters/cho/clothes/top/top_quid_1/0.webp b/game/characters/cho/clothes/top/top_quid_1/0.webp new file mode 100644 index 00000000..2be01c4e --- /dev/null +++ b/game/characters/cho/clothes/top/top_quid_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5cfc6974f3346acc8a6f942f35bdbd26721b055c0e6c359a3f6ef73ff2cf7f9 +size 3910 diff --git a/game/characters/cho/clothes/top/top_quid_1/1.webp b/game/characters/cho/clothes/top/top_quid_1/1.webp new file mode 100644 index 00000000..5077c33c --- /dev/null +++ b/game/characters/cho/clothes/top/top_quid_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ab50b3b2e9be201e601bb937237576fb381b82046298676ab90cf79bff5eda5 +size 2106 diff --git a/game/characters/cho/clothes/top/top_quid_1/extra.webp b/game/characters/cho/clothes/top/top_quid_1/extra.webp new file mode 100644 index 00000000..c0b4dfbd --- /dev/null +++ b/game/characters/cho/clothes/top/top_quid_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a1d7376c8e646ae5597a7a4638bfea7008b21add1d03455993c2981b93ec786 +size 3024 diff --git a/game/characters/cho/clothes/top/top_quid_1/outline.webp b/game/characters/cho/clothes/top/top_quid_1/outline.webp new file mode 100644 index 00000000..f0477160 --- /dev/null +++ b/game/characters/cho/clothes/top/top_quid_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50024af6c5d89d61bbd67d1e0676f3ea5373e0d043b2f4a6267851fff84c86b7 +size 7678 diff --git a/game/characters/cho/clothes/top/top_quid_1/skin.webp b/game/characters/cho/clothes/top/top_quid_1/skin.webp new file mode 100644 index 00000000..e0f47a0b --- /dev/null +++ b/game/characters/cho/clothes/top/top_quid_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a33bc48017195c12d5697ef453bd34d7b9c6377dd9faf309e693d0f7e365158e +size 2806 diff --git a/game/characters/cho/clothes/top/top_sailor_1/0.webp b/game/characters/cho/clothes/top/top_sailor_1/0.webp new file mode 100644 index 00000000..d0bd5377 --- /dev/null +++ b/game/characters/cho/clothes/top/top_sailor_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:750b34fd6a72f9cb598fc1977beaf7401adaa994be5153ef49f475bd5f5935ca +size 13772 diff --git a/game/characters/cho/clothes/top/top_sailor_1/1.webp b/game/characters/cho/clothes/top/top_sailor_1/1.webp new file mode 100644 index 00000000..e6b281e2 --- /dev/null +++ b/game/characters/cho/clothes/top/top_sailor_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51dc170910f1cd1d70177c6d4dd444aa2208b00beb2411cde3a6bb11eeec445d +size 9078 diff --git a/game/characters/cho/clothes/top/top_sailor_1/outline.webp b/game/characters/cho/clothes/top/top_sailor_1/outline.webp new file mode 100644 index 00000000..6380dfe0 --- /dev/null +++ b/game/characters/cho/clothes/top/top_sailor_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ad04a2f392da60f3492ffedc2ab8763f7030dbf8fcbc29007c68ee843293cff +size 13682 diff --git a/game/characters/cho/clothes/top/top_school_1/0.webp b/game/characters/cho/clothes/top/top_school_1/0.webp new file mode 100644 index 00000000..3c803c33 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b3d246d62978745057d1633a4693e4d98226aa2838d91bfb18def32c766adab +size 7000 diff --git a/game/characters/cho/clothes/top/top_school_1/0_front.webp b/game/characters/cho/clothes/top/top_school_1/0_front.webp new file mode 100644 index 00000000..01bf3b35 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_1/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2cd8faa49743e8fec872fac1b2269f2c25e486fa03187c014bda706feeac8b2 +size 2986 diff --git a/game/characters/cho/clothes/top/top_school_1/1.webp b/game/characters/cho/clothes/top/top_school_1/1.webp new file mode 100644 index 00000000..a0a477bf --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1952c907ae374e8ba99bd2d4ab430e098c16fc58dd081cee8e01c1b7aad6ab9 +size 8728 diff --git a/game/characters/cho/clothes/top/top_school_1/2.webp b/game/characters/cho/clothes/top/top_school_1/2.webp new file mode 100644 index 00000000..604d69db --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7aead262d56c1b1c16342ad40a6f69562e490b4f5c6534973e5abaa4d2812e26 +size 7820 diff --git a/game/characters/cho/clothes/top/top_school_1/3.webp b/game/characters/cho/clothes/top/top_school_1/3.webp new file mode 100644 index 00000000..723cb96f --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38d933b2e722556bf3e4890b00c96ef249e5d0a4624e299bbc10a6e97dec8847 +size 6178 diff --git a/game/characters/cho/clothes/top/top_school_1/outline.webp b/game/characters/cho/clothes/top/top_school_1/outline.webp new file mode 100644 index 00000000..0b2e131b --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1642d2bed0449513a496d7ed6fcf2710c779ddcb79979131e725a164b3e7c73 +size 15158 diff --git a/game/characters/cho/clothes/top/top_school_1/outline_front.webp b/game/characters/cho/clothes/top/top_school_1/outline_front.webp new file mode 100644 index 00000000..377f49d5 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_1/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a47442aec167353c55074152452613d1f514d6ca9fb64d8959ba46f67f9f515e +size 2658 diff --git a/game/characters/cho/clothes/top/top_school_1/skin.webp b/game/characters/cho/clothes/top/top_school_1/skin.webp new file mode 100644 index 00000000..61e83803 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91721f2a53804ec20a01f9a1fbae645c60f6e30f44c1db77ca3f256924a3c629 +size 6866 diff --git a/game/characters/cho/clothes/top/top_school_2/0.webp b/game/characters/cho/clothes/top/top_school_2/0.webp new file mode 100644 index 00000000..f9288c3e --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f225224e2110f6df81e96615b4c69052a1f562bc6ed59884a2e18d49d6ea212 +size 6874 diff --git a/game/characters/cho/clothes/top/top_school_2/0_front.webp b/game/characters/cho/clothes/top/top_school_2/0_front.webp new file mode 100644 index 00000000..06941743 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_2/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69b51e2631e37835c309a138a8a0770c89a0ccd8999e48909976b759d6c161d2 +size 3222 diff --git a/game/characters/cho/clothes/top/top_school_2/1.webp b/game/characters/cho/clothes/top/top_school_2/1.webp new file mode 100644 index 00000000..a0a477bf --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1952c907ae374e8ba99bd2d4ab430e098c16fc58dd081cee8e01c1b7aad6ab9 +size 8728 diff --git a/game/characters/cho/clothes/top/top_school_2/2.webp b/game/characters/cho/clothes/top/top_school_2/2.webp new file mode 100644 index 00000000..8fc2c49a --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:503f69663c06b01c811d5d55c9b13765f550c95df039c222d744be1bc077555b +size 6778 diff --git a/game/characters/cho/clothes/top/top_school_2/3.webp b/game/characters/cho/clothes/top/top_school_2/3.webp new file mode 100644 index 00000000..098e2516 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_2/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bab223375f9fa870c91316737a1f66a416a978615c4e6e32bfa7cb2daf9e6e9d +size 5680 diff --git a/game/characters/cho/clothes/top/top_school_2/extra.webp b/game/characters/cho/clothes/top/top_school_2/extra.webp new file mode 100644 index 00000000..5f292e27 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99590bec76be199f1e1c79a50ef0ef8a5104d03f50edf52c1e8a78f12c18bf79 +size 784 diff --git a/game/characters/cho/clothes/top/top_school_2/outline.webp b/game/characters/cho/clothes/top/top_school_2/outline.webp new file mode 100644 index 00000000..62250e0f --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a765ae12ffcfc5ab97bec57456edb4731f84f94c7f888411931e9e7d85dbf278 +size 14986 diff --git a/game/characters/cho/clothes/top/top_school_2/outline_front.webp b/game/characters/cho/clothes/top/top_school_2/outline_front.webp new file mode 100644 index 00000000..7cec59af --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_2/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4afaa6670aeef441732bb8b26e74216a3881b70eff26f9d02f62836c73541f5 +size 2856 diff --git a/game/characters/cho/clothes/top/top_school_2/skin.webp b/game/characters/cho/clothes/top/top_school_2/skin.webp new file mode 100644 index 00000000..d6f59d9c --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e11d9a651caa9559b5ea091d74864693324eade8ca60dd697ec1299162cd562 +size 3912 diff --git a/game/characters/cho/clothes/top/top_school_3/0.webp b/game/characters/cho/clothes/top/top_school_3/0.webp new file mode 100644 index 00000000..cd3a746a --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fe9bb2ad102080ca5d2d8f5ddea2a3bb97ec5a6f8eb976b955f2ffab1c6470c +size 11776 diff --git a/game/characters/cho/clothes/top/top_school_3/0_front.webp b/game/characters/cho/clothes/top/top_school_3/0_front.webp new file mode 100644 index 00000000..3400f13a --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_3/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8557accfed1c4708ffb1b824b6749e5b50ba807dda77cf17ef0f6ca4cc11bbb8 +size 3518 diff --git a/game/characters/cho/clothes/top/top_school_3/1.webp b/game/characters/cho/clothes/top/top_school_3/1.webp new file mode 100644 index 00000000..25a4b035 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdcf1b23f42f126b054d258c16c4ab4ca8032f493bf343b03c87a425eef20dcb +size 4550 diff --git a/game/characters/cho/clothes/top/top_school_3/2.webp b/game/characters/cho/clothes/top/top_school_3/2.webp new file mode 100644 index 00000000..22cb91af --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_3/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac23adee51a2dcf8b85818642be7813e64c50d0aec4f87d5ed57db0fe69b6dd3 +size 3680 diff --git a/game/characters/cho/clothes/top/top_school_3/extra.webp b/game/characters/cho/clothes/top/top_school_3/extra.webp new file mode 100644 index 00000000..f56d7058 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_3/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60deca5bc6d73bd6196d85cd005b24aa61992dbecf9f6a84113eb5ae976bd636 +size 638 diff --git a/game/characters/cho/clothes/top/top_school_3/outline.webp b/game/characters/cho/clothes/top/top_school_3/outline.webp new file mode 100644 index 00000000..c412a772 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:146b48d70008a866b24b0e6b55ae2b6b7e3dd9748272084de17b8168ff8bb8ce +size 12472 diff --git a/game/characters/cho/clothes/top/top_school_3/outline_front.webp b/game/characters/cho/clothes/top/top_school_3/outline_front.webp new file mode 100644 index 00000000..86f006fa --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_3/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed611a6a16d92ef1e5b355cfef4078aa40d53e3bc7a77e401e9786b3f6f1b279 +size 2560 diff --git a/game/characters/cho/clothes/top/top_school_3/skin.webp b/game/characters/cho/clothes/top/top_school_3/skin.webp new file mode 100644 index 00000000..ab76c58d --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_3/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:affaf704e73cad137abb8c94dc3caa9b6cb778a2306a34a9d90fd25d7b9ae249 +size 1944 diff --git a/game/characters/cho/clothes/top/top_school_4/0.webp b/game/characters/cho/clothes/top/top_school_4/0.webp new file mode 100644 index 00000000..41438ff1 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83d514d4938573095aef50819fd80300c68e3f1b65c825f83014717b6c261ade +size 10556 diff --git a/game/characters/cho/clothes/top/top_school_4/0_front.webp b/game/characters/cho/clothes/top/top_school_4/0_front.webp new file mode 100644 index 00000000..c6932720 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_4/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d9a7a995223dda90a78e28b4ffe40dced8e6fcd3dda7400cbb63af0a7a39eba +size 3306 diff --git a/game/characters/cho/clothes/top/top_school_4/1.webp b/game/characters/cho/clothes/top/top_school_4/1.webp new file mode 100644 index 00000000..48a22dd7 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6d22a63d4f2dfef3ebd6085934959353b5fffb6abf458cc199a93b2bf2b9f54 +size 1826 diff --git a/game/characters/cho/clothes/top/top_school_4/2.webp b/game/characters/cho/clothes/top/top_school_4/2.webp new file mode 100644 index 00000000..a4ea20c7 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_4/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4d7c7eba6f65e25fbdfb3688cd7ea5f4296f53496ab7fef07bbfa11857b25e5 +size 1102 diff --git a/game/characters/cho/clothes/top/top_school_4/extra.webp b/game/characters/cho/clothes/top/top_school_4/extra.webp new file mode 100644 index 00000000..f887e5ad --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_4/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:373f00d440c2d358701b837d53a3c425b63f2009bf1fd3833325ff4c27640f22 +size 1282 diff --git a/game/characters/cho/clothes/top/top_school_4/outline.webp b/game/characters/cho/clothes/top/top_school_4/outline.webp new file mode 100644 index 00000000..d6a2af21 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30750eba9ee8ed9e370a06579a9ee7232b0f1cbf8826222546c485f10a46d5a9 +size 11670 diff --git a/game/characters/cho/clothes/top/top_school_4/outline_front.webp b/game/characters/cho/clothes/top/top_school_4/outline_front.webp new file mode 100644 index 00000000..4af2d164 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_4/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:212485bc57c19d2c37912450572a4d2863e0bd82c02737cbf7ad8f14acee9a2d +size 2720 diff --git a/game/characters/cho/clothes/top/top_school_4/skin.webp b/game/characters/cho/clothes/top/top_school_4/skin.webp new file mode 100644 index 00000000..ab76c58d --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_4/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:affaf704e73cad137abb8c94dc3caa9b6cb778a2306a34a9d90fd25d7b9ae249 +size 1944 diff --git a/game/characters/cho/clothes/top/top_school_5/0.webp b/game/characters/cho/clothes/top/top_school_5/0.webp new file mode 100644 index 00000000..7ba464aa --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_5/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26fd4f6acea47a4bdb8db4239d6f1323b38673209f97ac0d0f4bc4f669a6512b +size 11292 diff --git a/game/characters/cho/clothes/top/top_school_5/0_front.webp b/game/characters/cho/clothes/top/top_school_5/0_front.webp new file mode 100644 index 00000000..8dcb7a96 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_5/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d855a038bbc26b0ceb77fc7183ad0c5f646a8f93e0eeabb0ea53d0d703b9595d +size 4560 diff --git a/game/characters/cho/clothes/top/top_school_5/1.webp b/game/characters/cho/clothes/top/top_school_5/1.webp new file mode 100644 index 00000000..db63a397 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_5/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d851a6246daad6627711996a2b0c42f33ff44882bd290149b209f84d8b15aaa8 +size 1822 diff --git a/game/characters/cho/clothes/top/top_school_5/2.webp b/game/characters/cho/clothes/top/top_school_5/2.webp new file mode 100644 index 00000000..d3b8d430 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_5/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aade48e90e47eda812630e883e045eac5fffb047d83cfd2833e6134adcc1297d +size 1102 diff --git a/game/characters/cho/clothes/top/top_school_5/extra.webp b/game/characters/cho/clothes/top/top_school_5/extra.webp new file mode 100644 index 00000000..0e94126a --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_5/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8dbcf4f28b616cadb5203eb7ac4d32fe295aeda8566d4f21a1d772ce5d47044 +size 1386 diff --git a/game/characters/cho/clothes/top/top_school_5/outline.webp b/game/characters/cho/clothes/top/top_school_5/outline.webp new file mode 100644 index 00000000..7d60b89d --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_5/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:266aeec3334d43d3abf7f57543e4e967818351a129e007272ee518fe15d54f3c +size 11898 diff --git a/game/characters/cho/clothes/top/top_school_5/outline_front.webp b/game/characters/cho/clothes/top/top_school_5/outline_front.webp new file mode 100644 index 00000000..262b6ecc --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_5/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f87d6c01e8d436cec4870fd7c9d41a6dd469d1e1ad9d70b5de40d2b016a07dfd +size 3458 diff --git a/game/characters/cho/clothes/top/top_school_5/skin.webp b/game/characters/cho/clothes/top/top_school_5/skin.webp new file mode 100644 index 00000000..7cfe2568 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_5/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76577a5521d1c33389a06030d3e022f3a0f34dbee352b2632a199a0c62703e2c +size 2890 diff --git a/game/characters/cho/clothes/top/top_school_6/0.webp b/game/characters/cho/clothes/top/top_school_6/0.webp new file mode 100644 index 00000000..86ca6bae --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_6/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df26ee894bf5d4adc7e6d66b0b176cc0a8074171244a302efbd0d2119338ecf5 +size 12488 diff --git a/game/characters/cho/clothes/top/top_school_6/1.webp b/game/characters/cho/clothes/top/top_school_6/1.webp new file mode 100644 index 00000000..ef2878cd --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_6/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fd7695b0268cc880f0968085abc0bf17e3d67360a9c5400a4aa2d487e3b63aa +size 7128 diff --git a/game/characters/cho/clothes/top/top_school_6/2.webp b/game/characters/cho/clothes/top/top_school_6/2.webp new file mode 100644 index 00000000..88c502f1 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_6/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:daa70a474427d006f24ff3ea9f56a33d31444a96fc6655035da556dfca4a1507 +size 6356 diff --git a/game/characters/cho/clothes/top/top_school_6/outline.webp b/game/characters/cho/clothes/top/top_school_6/outline.webp new file mode 100644 index 00000000..1805af70 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_6/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:328bed8688129243d36fd7aef3790f149170630fc6d6b3f6c6a8906c961bcd14 +size 10968 diff --git a/game/characters/cho/clothes/top/top_school_6/skin.webp b/game/characters/cho/clothes/top/top_school_6/skin.webp new file mode 100644 index 00000000..2271e1d8 --- /dev/null +++ b/game/characters/cho/clothes/top/top_school_6/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26a0b4f58fb72902ab11968d3bfaff3400e6823af2e7b594dbfdeae48e7a1b86 +size 4302 diff --git a/game/characters/cho/clothes/top/top_shirt_1/0.webp b/game/characters/cho/clothes/top/top_shirt_1/0.webp new file mode 100644 index 00000000..3a328a99 --- /dev/null +++ b/game/characters/cho/clothes/top/top_shirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3cb6a1b65f17deb3c870bee8e29b33114650e1735aa5b2a3a5e68eb48989d797 +size 4542 diff --git a/game/characters/cho/clothes/top/top_shirt_1/outline.webp b/game/characters/cho/clothes/top/top_shirt_1/outline.webp new file mode 100644 index 00000000..fa19db54 --- /dev/null +++ b/game/characters/cho/clothes/top/top_shirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4ee8ec6000217467233dfcafcfae40855e6b31e885e6dc169d67b73455bca42 +size 5196 diff --git a/game/characters/cho/clothes/top/top_sweater_1/0.webp b/game/characters/cho/clothes/top/top_sweater_1/0.webp new file mode 100644 index 00000000..09fcb92b --- /dev/null +++ b/game/characters/cho/clothes/top/top_sweater_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b15acc6cf44bd1f6522176834e1bd91534584b1250e25a54f6d25979409bca1 +size 29224 diff --git a/game/characters/cho/clothes/top/top_sweater_1/0_front.webp b/game/characters/cho/clothes/top/top_sweater_1/0_front.webp new file mode 100644 index 00000000..be4b2e95 --- /dev/null +++ b/game/characters/cho/clothes/top/top_sweater_1/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aab8749568f7fab108e15649463b093cc3c3d98a87dec4dedc54fcf6953c2762 +size 4400 diff --git a/game/characters/cho/clothes/top/top_sweater_1/1.webp b/game/characters/cho/clothes/top/top_sweater_1/1.webp new file mode 100644 index 00000000..9c5c3f02 --- /dev/null +++ b/game/characters/cho/clothes/top/top_sweater_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:caa041674405dd76173ac37411de6c848d21461d5e1da14aff80839db2d26aef +size 10622 diff --git a/game/characters/cho/clothes/top/top_sweater_1/1_front.webp b/game/characters/cho/clothes/top/top_sweater_1/1_front.webp new file mode 100644 index 00000000..8b540adb --- /dev/null +++ b/game/characters/cho/clothes/top/top_sweater_1/1_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5955b3d3e7270d340c311d53901de4cc135a3096d6d324bcb0a9fef99613225 +size 1816 diff --git a/game/characters/cho/clothes/top/top_sweater_1/mask.webp b/game/characters/cho/clothes/top/top_sweater_1/mask.webp new file mode 100644 index 00000000..a1af7618 --- /dev/null +++ b/game/characters/cho/clothes/top/top_sweater_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:786f6d8fd12089ff3efd3f35bb71af6e33457e4e8323bef518375e51524f583b +size 4628 diff --git a/game/characters/cho/clothes/top/top_sweater_1/outline.webp b/game/characters/cho/clothes/top/top_sweater_1/outline.webp new file mode 100644 index 00000000..1bb72dcd --- /dev/null +++ b/game/characters/cho/clothes/top/top_sweater_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6fea34b385320c9b922feacf9b85f275124f2898b64952bd600eb4dc7bbcb1c +size 30160 diff --git a/game/characters/cho/clothes/top/top_sweater_1/outline_front.webp b/game/characters/cho/clothes/top/top_sweater_1/outline_front.webp new file mode 100644 index 00000000..188a7ba8 --- /dev/null +++ b/game/characters/cho/clothes/top/top_sweater_1/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:984250ecf79366cd1ce8fff479eeedd6b65a74a5e00c03953aa2d109acd9c3a4 +size 4034 diff --git a/game/characters/cho/clothes/top/top_sweater_2/0.webp b/game/characters/cho/clothes/top/top_sweater_2/0.webp new file mode 100644 index 00000000..93f4c63c --- /dev/null +++ b/game/characters/cho/clothes/top/top_sweater_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b99786ae37c1c25838606458f3c9c42c7f0d22fb9c1b82199f899b2221bd7dd3 +size 6592 diff --git a/game/characters/cho/clothes/top/top_sweater_2/1.webp b/game/characters/cho/clothes/top/top_sweater_2/1.webp new file mode 100644 index 00000000..b6b1d3ab --- /dev/null +++ b/game/characters/cho/clothes/top/top_sweater_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb7d166b27b8355520d9632775867676c0107eaa3007a07a78f596a1f725bda5 +size 4906 diff --git a/game/characters/cho/clothes/top/top_sweater_2/outline.webp b/game/characters/cho/clothes/top/top_sweater_2/outline.webp new file mode 100644 index 00000000..3316356a --- /dev/null +++ b/game/characters/cho/clothes/top/top_sweater_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f30b606a3b5019560bfb6aef4cad9fb58daabf4f078005d020dfd91a2d98e09 +size 27948 diff --git a/game/characters/cho/clothes/top/top_tanktop_1/0.webp b/game/characters/cho/clothes/top/top_tanktop_1/0.webp new file mode 100644 index 00000000..c149929e --- /dev/null +++ b/game/characters/cho/clothes/top/top_tanktop_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4217ef84d46ed638d3d95ef06e0188a96d397e827eaa8300c62ebe79411efcdd +size 17564 diff --git a/game/characters/cho/clothes/top/top_tanktop_1/outline.webp b/game/characters/cho/clothes/top/top_tanktop_1/outline.webp new file mode 100644 index 00000000..b44535d2 --- /dev/null +++ b/game/characters/cho/clothes/top/top_tanktop_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4af4ab9aab6703e4f626a30ac582ba226e528d83e6a4edffa87f2545afdcee01 +size 15792 diff --git a/game/characters/cho/clothes/top/top_tanktop_2/0.webp b/game/characters/cho/clothes/top/top_tanktop_2/0.webp new file mode 100644 index 00000000..86575037 --- /dev/null +++ b/game/characters/cho/clothes/top/top_tanktop_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e13a4cb24710e76d2ffbbb885a406422c97483a33cbc275ca1cb07f8c4c76775 +size 15036 diff --git a/game/characters/cho/clothes/top/top_tanktop_2/1.webp b/game/characters/cho/clothes/top/top_tanktop_2/1.webp new file mode 100644 index 00000000..0e40ceed --- /dev/null +++ b/game/characters/cho/clothes/top/top_tanktop_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:889ea5af36415e3d90b6ff0d61bb7b3dd7b5b8ad23afc2e8c7998bf042a31593 +size 3064 diff --git a/game/characters/cho/clothes/top/top_tanktop_2/outline.webp b/game/characters/cho/clothes/top/top_tanktop_2/outline.webp new file mode 100644 index 00000000..3d1dc852 --- /dev/null +++ b/game/characters/cho/clothes/top/top_tanktop_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3877a19bc9ca7c1bb534dc574d366e0388a5fb68939c3c947517245b9ec82320 +size 13576 diff --git a/game/characters/cho/cum/body/heavy.webp b/game/characters/cho/cum/body/heavy.webp new file mode 100644 index 00000000..16910eea --- /dev/null +++ b/game/characters/cho/cum/body/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dad1f90fd74ad19cd20486aee6be7bc5dc5342f6e544cfaef5cf09af1db4ab1d +size 19290 diff --git a/game/characters/cho/cum/body/heavy_skin.webp b/game/characters/cho/cum/body/heavy_skin.webp new file mode 100644 index 00000000..02fdcae7 --- /dev/null +++ b/game/characters/cho/cum/body/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3131ed7ae37acc547319e653036e7f367f069d22dff14f566d06551da4da2f64 +size 5502 diff --git a/game/characters/cho/cum/body/light.webp b/game/characters/cho/cum/body/light.webp new file mode 100644 index 00000000..f499c1d3 --- /dev/null +++ b/game/characters/cho/cum/body/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e5125f4e22ed910a763f126d7a5e6a5746cef869b14afae38827e83e2ab346f +size 5980 diff --git a/game/characters/cho/cum/body/light_skin.webp b/game/characters/cho/cum/body/light_skin.webp new file mode 100644 index 00000000..3ee09e7e --- /dev/null +++ b/game/characters/cho/cum/body/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dabcfc51aef3047d068c0f92458f64ece6e6deb2eeb7c9b4158dce5214d0a4d5 +size 3036 diff --git a/game/characters/cho/cum/breasts/heavy.webp b/game/characters/cho/cum/breasts/heavy.webp new file mode 100644 index 00000000..114fd4b1 --- /dev/null +++ b/game/characters/cho/cum/breasts/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0754004ebc2f8399143cd39d642ae05f59428a0430125549440e4813250ae69 +size 20408 diff --git a/game/characters/cho/cum/breasts/heavy_skin.webp b/game/characters/cho/cum/breasts/heavy_skin.webp new file mode 100644 index 00000000..b2c4e288 --- /dev/null +++ b/game/characters/cho/cum/breasts/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83e97d19140224dfeb1bddaf66df858839d81c677854f123569ee17a507975be +size 4422 diff --git a/game/characters/cho/cum/breasts/light.webp b/game/characters/cho/cum/breasts/light.webp new file mode 100644 index 00000000..1d3260e0 --- /dev/null +++ b/game/characters/cho/cum/breasts/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88db23ab2b3d71ed3ae4dd1cbf431e15d385e3b033cc0ef9d90517de4d71f5c8 +size 9842 diff --git a/game/characters/cho/cum/breasts/light_skin.webp b/game/characters/cho/cum/breasts/light_skin.webp new file mode 100644 index 00000000..62af52e4 --- /dev/null +++ b/game/characters/cho/cum/breasts/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2186decb1e3e0b66c31fdcf7cc8a68a7fd375b82ce20ca7ba5a5fbb499b5adf +size 3366 diff --git a/game/characters/cho/cum/crotch/heavy.webp b/game/characters/cho/cum/crotch/heavy.webp new file mode 100644 index 00000000..27c7588b --- /dev/null +++ b/game/characters/cho/cum/crotch/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3dba1474e8827f8a00a9887974495a2b1d6e2b76a15ebf2f79ac5d8345fc31b0 +size 29294 diff --git a/game/characters/cho/cum/crotch/heavy_skin.webp b/game/characters/cho/cum/crotch/heavy_skin.webp new file mode 100644 index 00000000..1b48b09e --- /dev/null +++ b/game/characters/cho/cum/crotch/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c364dd7d0d25573f55fc74ad79c5d9b0aae4da6e60fe04c91e4b103029ddad6 +size 8928 diff --git a/game/characters/cho/cum/crotch/light.webp b/game/characters/cho/cum/crotch/light.webp new file mode 100644 index 00000000..2cff3b5f --- /dev/null +++ b/game/characters/cho/cum/crotch/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e939ffe56ddf79c60cd82ef2059535bade8d5cf63e3b266252f58a2ed17a9f6 +size 12010 diff --git a/game/characters/cho/cum/crotch/light_skin.webp b/game/characters/cho/cum/crotch/light_skin.webp new file mode 100644 index 00000000..de92754b --- /dev/null +++ b/game/characters/cho/cum/crotch/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c04fcedb129262606f4bd2815fb9f7e4161874ce4fb3b156355cfc554faf204 +size 4200 diff --git a/game/characters/cho/cum/face/heavy.webp b/game/characters/cho/cum/face/heavy.webp new file mode 100644 index 00000000..cb81e634 --- /dev/null +++ b/game/characters/cho/cum/face/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22340854a9a3f002535da311bc040abacdf82b2a39187ec3edcecfd97152b8c9 +size 9682 diff --git a/game/characters/cho/cum/face/heavy_skin.webp b/game/characters/cho/cum/face/heavy_skin.webp new file mode 100644 index 00000000..5ee30e83 --- /dev/null +++ b/game/characters/cho/cum/face/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7db7f0431bb948c0360eac4c94e3da53eaa7bc4a6d679f6a39f5b47e2dc09ab7 +size 3188 diff --git a/game/characters/cho/cum/face/light.webp b/game/characters/cho/cum/face/light.webp new file mode 100644 index 00000000..3ea97195 --- /dev/null +++ b/game/characters/cho/cum/face/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1847dd7fa07ac7f45834e7b7a3500dc2eff02511676feaf260070438fa62c49b +size 4696 diff --git a/game/characters/cho/cum/face/light_skin.webp b/game/characters/cho/cum/face/light_skin.webp new file mode 100644 index 00000000..3fdd39a0 --- /dev/null +++ b/game/characters/cho/cum/face/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3be0734ca4392c1e91e3e76ac32ac96ea95ab29bc4303184297cf633fe184133 +size 1438 diff --git a/game/characters/cho/cum/hair/heavy.webp b/game/characters/cho/cum/hair/heavy.webp new file mode 100644 index 00000000..5d70c3f7 --- /dev/null +++ b/game/characters/cho/cum/hair/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a479e94e2ef4729c349f5cb4b1b4f15ead3d6f572e711a81f6ffb72d508762e4 +size 13018 diff --git a/game/characters/cho/cum/hair/light.webp b/game/characters/cho/cum/hair/light.webp new file mode 100644 index 00000000..cbabd25a --- /dev/null +++ b/game/characters/cho/cum/hair/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e46f8692bf0dd04e3cef17f1357f64b27ef4fe8f6087777f40fda0f44123581 +size 3336 diff --git a/game/characters/cho/cum/legs/heavy.webp b/game/characters/cho/cum/legs/heavy.webp new file mode 100644 index 00000000..aca3e480 --- /dev/null +++ b/game/characters/cho/cum/legs/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c27cf073025f33e211ae8e7aca081b7f157a5ac3a2cb4aba0d543221144d4ef8 +size 4384 diff --git a/game/characters/cho/cum/legs/heavy_skin.webp b/game/characters/cho/cum/legs/heavy_skin.webp new file mode 100644 index 00000000..39965425 --- /dev/null +++ b/game/characters/cho/cum/legs/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c3510a330cbec6e78a5697089c9c0d32d032f87406f81bcd4828603b362f4b3 +size 2016 diff --git a/game/characters/cho/cum/legs/light.webp b/game/characters/cho/cum/legs/light.webp new file mode 100644 index 00000000..05be6430 --- /dev/null +++ b/game/characters/cho/cum/legs/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed63a509eef6310951d332eaa045943059bad825910025b8dbe07ff799eb9ea0 +size 1644 diff --git a/game/characters/cho/cum/legs/light_skin.webp b/game/characters/cho/cum/legs/light_skin.webp new file mode 100644 index 00000000..1009fd99 --- /dev/null +++ b/game/characters/cho/cum/legs/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6feeb9db705674f09bcb65cebb47fd07f6faedfe4f2645fd8c2c99af2523116 +size 954 diff --git a/game/characters/cho/cum/pussy/heavy.webp b/game/characters/cho/cum/pussy/heavy.webp new file mode 100644 index 00000000..17d66642 --- /dev/null +++ b/game/characters/cho/cum/pussy/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ffba9fe09ff1df0f1712c0ccb16fcb6c7ae51c6b84ea081ac279395a40c2062 +size 2662 diff --git a/game/characters/cho/cum/pussy/light.webp b/game/characters/cho/cum/pussy/light.webp new file mode 100644 index 00000000..d3e77600 --- /dev/null +++ b/game/characters/cho/cum/pussy/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15221de562adf1eb57d27a91b4c109cb9c19e1d43368fb083b07d1762a7cb79a +size 1282 diff --git a/game/characters/cho/emote/angry.webp b/game/characters/cho/emote/angry.webp new file mode 100644 index 00000000..38239eef --- /dev/null +++ b/game/characters/cho/emote/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:adb2758a72a7888bf1f25b63fda1028af785bb3024441b7f323763195edee9a1 +size 3112 diff --git a/game/characters/cho/emote/confused.webp b/game/characters/cho/emote/confused.webp new file mode 100644 index 00000000..da69c516 --- /dev/null +++ b/game/characters/cho/emote/confused.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19fe247adf32bbb0ed940ac11d8e856fe023c152e266e02e1205d37368089fd2 +size 17784 diff --git a/game/characters/cho/emote/happy.webp b/game/characters/cho/emote/happy.webp new file mode 100644 index 00000000..5ead5663 --- /dev/null +++ b/game/characters/cho/emote/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8753fadc63a96fc49d26bbbf0d4de061da22530f5f80634aa5366439160bf69c +size 12874 diff --git a/game/characters/cho/emote/hearts.webp b/game/characters/cho/emote/hearts.webp new file mode 100644 index 00000000..7a8a98ae --- /dev/null +++ b/game/characters/cho/emote/hearts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fe160dd14b03b8ee6f559cd7e139afd72a42370cc0653fd27a0de1c904c78d8 +size 20910 diff --git a/game/characters/cho/emote/shocked.webp b/game/characters/cho/emote/shocked.webp new file mode 100644 index 00000000..515c7b3e --- /dev/null +++ b/game/characters/cho/emote/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be45f50f6069f0ab10386cafa7d6918ffba6499b1f1052aaca9bf7a8af374c84 +size 12642 diff --git a/game/characters/cho/emote/sweat.webp b/game/characters/cho/emote/sweat.webp new file mode 100644 index 00000000..b9eb684c --- /dev/null +++ b/game/characters/cho/emote/sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f4507c487c7491144417b4aedade70f37c8bc3ea0245ed41b93acfb8363adc5 +size 3654 diff --git a/game/characters/cho/face/cheeks/blush.webp b/game/characters/cho/face/cheeks/blush.webp new file mode 100644 index 00000000..daaf2ebd --- /dev/null +++ b/game/characters/cho/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36a5544797bb4fcea1f7a41c6acbd5eae4ba196e58f38753cc7e5f882c03d417 +size 2008 diff --git a/game/characters/cho/face/cheeks/dummy.webp b/game/characters/cho/face/cheeks/dummy.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/face/cheeks/dummy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/face/cheeks/heavy_blush.webp b/game/characters/cho/face/cheeks/heavy_blush.webp new file mode 100644 index 00000000..d2a3882a --- /dev/null +++ b/game/characters/cho/face/cheeks/heavy_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d0d7fa3bcf3894deb6c8fc734dc028e14302d49e018b3ca50d6b752954bf0b9 +size 4526 diff --git a/game/characters/cho/face/eyebrows/angry.webp b/game/characters/cho/face/eyebrows/angry.webp new file mode 100644 index 00000000..09e232d1 --- /dev/null +++ b/game/characters/cho/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be353cc7720eea2ecd78716de291424d8875a710ff449d62329ae515d44f0730 +size 1720 diff --git a/game/characters/cho/face/eyebrows/angry_skin.webp b/game/characters/cho/face/eyebrows/angry_skin.webp new file mode 100644 index 00000000..83285d2a --- /dev/null +++ b/game/characters/cho/face/eyebrows/angry_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97b5552c9c2d99e3baeb886d5fe4c990f164043d83ba34babe4da81126015edd +size 1126 diff --git a/game/characters/cho/face/eyebrows/base.webp b/game/characters/cho/face/eyebrows/base.webp new file mode 100644 index 00000000..d8c41ea9 --- /dev/null +++ b/game/characters/cho/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbdec5bd45c92fb646c17d3330bb774724e20e19a9b2d26ea5352d0143cd8415 +size 1576 diff --git a/game/characters/cho/face/eyebrows/base_skin.webp b/game/characters/cho/face/eyebrows/base_skin.webp new file mode 100644 index 00000000..e8d0ee93 --- /dev/null +++ b/game/characters/cho/face/eyebrows/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eba6a819adac52ba8648fbf3c2792c7a0818a896f353447ea82ac8756bf0fc84 +size 1244 diff --git a/game/characters/cho/face/eyebrows/raised.webp b/game/characters/cho/face/eyebrows/raised.webp new file mode 100644 index 00000000..3ba9cbfd --- /dev/null +++ b/game/characters/cho/face/eyebrows/raised.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08a318d483852164d339fd48877b43b64cddfd896c8d273de214d07b02f475cf +size 2614 diff --git a/game/characters/cho/face/eyebrows/raised_skin.webp b/game/characters/cho/face/eyebrows/raised_skin.webp new file mode 100644 index 00000000..e8d0ee93 --- /dev/null +++ b/game/characters/cho/face/eyebrows/raised_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eba6a819adac52ba8648fbf3c2792c7a0818a896f353447ea82ac8756bf0fc84 +size 1244 diff --git a/game/characters/cho/face/eyebrows/worried.webp b/game/characters/cho/face/eyebrows/worried.webp new file mode 100644 index 00000000..a4fae257 --- /dev/null +++ b/game/characters/cho/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31bbb4a124f0468174f0b87d8844f80fc4527b22130c6ffc68da2d71f1d8ffeb +size 1604 diff --git a/game/characters/cho/face/eyebrows/worried_skin.webp b/game/characters/cho/face/eyebrows/worried_skin.webp new file mode 100644 index 00000000..7ebcc7f8 --- /dev/null +++ b/game/characters/cho/face/eyebrows/worried_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8ea192b414a69c38eb169054fbe3b889e23e65a034511c1f0cf47be4a89b91b +size 1224 diff --git a/game/characters/cho/face/eyes/base.webp b/game/characters/cho/face/eyes/base.webp new file mode 100644 index 00000000..4664b821 --- /dev/null +++ b/game/characters/cho/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38603c8bcd3738da4371db6addf77a05035577d9fd5c5a632cdfcf935a87a069 +size 2370 diff --git a/game/characters/cho/face/eyes/base_mask.webp b/game/characters/cho/face/eyes/base_mask.webp new file mode 100644 index 00000000..c947ca76 --- /dev/null +++ b/game/characters/cho/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0596537c74c58defaaef1bc4280dbe5ab9cc83b8b9c612b49730c3617346c97 +size 880 diff --git a/game/characters/cho/face/eyes/base_skin.webp b/game/characters/cho/face/eyes/base_skin.webp new file mode 100644 index 00000000..82a0f8bc --- /dev/null +++ b/game/characters/cho/face/eyes/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb16cb3ac375ad79b64392c79fe7ab2b50325e53d56a5df5767adc87374ea3be +size 836 diff --git a/game/characters/cho/face/eyes/closed.webp b/game/characters/cho/face/eyes/closed.webp new file mode 100644 index 00000000..3a0ba380 --- /dev/null +++ b/game/characters/cho/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:513f697f706f559177b865a980fbcfd1b14e9efeb772eb4fa3cb03c766a1a358 +size 3186 diff --git a/game/characters/cho/face/eyes/closed_skin.webp b/game/characters/cho/face/eyes/closed_skin.webp new file mode 100644 index 00000000..82a0f8bc --- /dev/null +++ b/game/characters/cho/face/eyes/closed_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb16cb3ac375ad79b64392c79fe7ab2b50325e53d56a5df5767adc87374ea3be +size 836 diff --git a/game/characters/cho/face/eyes/happyCl.webp b/game/characters/cho/face/eyes/happyCl.webp new file mode 100644 index 00000000..53250c45 --- /dev/null +++ b/game/characters/cho/face/eyes/happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:113c8df0d1d9df4a837aaae1b09058e68e38944011be7da118dfc6fba89c4a4f +size 2278 diff --git a/game/characters/cho/face/eyes/happyCl_skin.webp b/game/characters/cho/face/eyes/happyCl_skin.webp new file mode 100644 index 00000000..6bd73182 --- /dev/null +++ b/game/characters/cho/face/eyes/happyCl_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0164e705e848a058b7acfa1a12fda2f86e91011488264dbd86b36acbfc75ec82 +size 828 diff --git a/game/characters/cho/face/eyes/narrow.webp b/game/characters/cho/face/eyes/narrow.webp new file mode 100644 index 00000000..f7172dbe --- /dev/null +++ b/game/characters/cho/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c45b53ef6ebfa03802b730865db0c3d4272b48fa7f24df661f49d70fcbdb4a4 +size 2924 diff --git a/game/characters/cho/face/eyes/narrow_mask.webp b/game/characters/cho/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..6240fe8e --- /dev/null +++ b/game/characters/cho/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9f7128deaf13332dd92f01f3a80bd14fc5d3f379e384ab93766f95921841e26 +size 868 diff --git a/game/characters/cho/face/eyes/narrow_skin.webp b/game/characters/cho/face/eyes/narrow_skin.webp new file mode 100644 index 00000000..82a0f8bc --- /dev/null +++ b/game/characters/cho/face/eyes/narrow_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb16cb3ac375ad79b64392c79fe7ab2b50325e53d56a5df5767adc87374ea3be +size 836 diff --git a/game/characters/cho/face/eyes/wide.webp b/game/characters/cho/face/eyes/wide.webp new file mode 100644 index 00000000..ee7f9b9b --- /dev/null +++ b/game/characters/cho/face/eyes/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cb252a99c3a5403f6c5780b69dede204c8db8b53356bbfd04a5efa053c41c26 +size 2686 diff --git a/game/characters/cho/face/eyes/wide_mask.webp b/game/characters/cho/face/eyes/wide_mask.webp new file mode 100644 index 00000000..0b4962a9 --- /dev/null +++ b/game/characters/cho/face/eyes/wide_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2ce7f47eca40def7ba35a6cacb9f7b2d27a2b7a61d1cf14585beaf2b842cc36 +size 1102 diff --git a/game/characters/cho/face/eyes/wide_skin.webp b/game/characters/cho/face/eyes/wide_skin.webp new file mode 100644 index 00000000..82a0f8bc --- /dev/null +++ b/game/characters/cho/face/eyes/wide_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb16cb3ac375ad79b64392c79fe7ab2b50325e53d56a5df5767adc87374ea3be +size 836 diff --git a/game/characters/cho/face/eyes/wink.webp b/game/characters/cho/face/eyes/wink.webp new file mode 100644 index 00000000..733c4c06 --- /dev/null +++ b/game/characters/cho/face/eyes/wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a35fdd3f5fa7a1beb1c0df398ca86ffcfe4ef40cdcbb2dc4b05b91c74577b4ea +size 2494 diff --git a/game/characters/cho/face/eyes/wink_mask.webp b/game/characters/cho/face/eyes/wink_mask.webp new file mode 100644 index 00000000..3256a662 --- /dev/null +++ b/game/characters/cho/face/eyes/wink_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c1b927d2fbe5997c8a47ad230b9ea852a0ba3f21c161f8a3d9f31fb6e81d49e +size 660 diff --git a/game/characters/cho/face/eyes/wink_skin.webp b/game/characters/cho/face/eyes/wink_skin.webp new file mode 100644 index 00000000..309308da --- /dev/null +++ b/game/characters/cho/face/eyes/wink_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8430cff0bf83e38fbd485889d2b62141c2a0e5fa4f1f74f99d5e9e3c1709b98b +size 890 diff --git a/game/characters/cho/face/mouth/angry.webp b/game/characters/cho/face/mouth/angry.webp new file mode 100644 index 00000000..91fbc2f3 --- /dev/null +++ b/game/characters/cho/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:282f8b8bfcdcb3cb17a12ea5056b2b2525360daa118d6db71f693c2b6c7b63a5 +size 2654 diff --git a/game/characters/cho/face/mouth/annoyed.webp b/game/characters/cho/face/mouth/annoyed.webp new file mode 100644 index 00000000..1d8762a5 --- /dev/null +++ b/game/characters/cho/face/mouth/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d8924323312567c11859e0f8ccb6251efbd71e95c157adf9545ee084a5119ff +size 1394 diff --git a/game/characters/cho/face/mouth/base.webp b/game/characters/cho/face/mouth/base.webp new file mode 100644 index 00000000..ca485a5c --- /dev/null +++ b/game/characters/cho/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21c982142658b955992be7915a79c285b1edc1ebf18ca7e62e223fdfcb843dc3 +size 1410 diff --git a/game/characters/cho/face/mouth/clench.webp b/game/characters/cho/face/mouth/clench.webp new file mode 100644 index 00000000..c909feda --- /dev/null +++ b/game/characters/cho/face/mouth/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cf7e7e14122edbd46829c2483d34fbb717ff7d98d98bc05035b3208605142f6 +size 2956 diff --git a/game/characters/cho/face/mouth/crooked_smile.webp b/game/characters/cho/face/mouth/crooked_smile.webp new file mode 100644 index 00000000..3b5998af --- /dev/null +++ b/game/characters/cho/face/mouth/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85c887a3a1b6e6e9558cb771d19ddd244e79d887609e76e5875f65b3c27b68f1 +size 2742 diff --git a/game/characters/cho/face/mouth/disgust.webp b/game/characters/cho/face/mouth/disgust.webp new file mode 100644 index 00000000..3d770d26 --- /dev/null +++ b/game/characters/cho/face/mouth/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9649563d26af94c6eabaa3723c6dd784af2fbc4360b9b81ad096a5fa38754f03 +size 2140 diff --git a/game/characters/cho/face/mouth/grin.webp b/game/characters/cho/face/mouth/grin.webp new file mode 100644 index 00000000..b9e12ba0 --- /dev/null +++ b/game/characters/cho/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3fa8b0a1d78398ece869f44e2a83ef827a4ef396132b36654920c1e27807a0ec +size 3082 diff --git a/game/characters/cho/face/mouth/horny.webp b/game/characters/cho/face/mouth/horny.webp new file mode 100644 index 00000000..3cbc4484 --- /dev/null +++ b/game/characters/cho/face/mouth/horny.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e28e4bbc7bf1f3105df15fb2f4210d1e41c713c4676429f27836b97f0265b21d +size 1900 diff --git a/game/characters/cho/face/mouth/mad.webp b/game/characters/cho/face/mouth/mad.webp new file mode 100644 index 00000000..782c33c0 --- /dev/null +++ b/game/characters/cho/face/mouth/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d6632f8528eeb7cad2df9b2b26c96dbe8a30abbb33b2fcbb6f044803e4fab5f +size 2308 diff --git a/game/characters/cho/face/mouth/normal.webp b/game/characters/cho/face/mouth/normal.webp new file mode 100644 index 00000000..80026a23 --- /dev/null +++ b/game/characters/cho/face/mouth/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0c272b8b72623576d22fd44444435f8eab84e9d6ba8ae2b208b8e0c9be89efe +size 1318 diff --git a/game/characters/cho/face/mouth/open.webp b/game/characters/cho/face/mouth/open.webp new file mode 100644 index 00000000..500f5737 --- /dev/null +++ b/game/characters/cho/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7be7e827e92fb83f1010fc08febaac36f03513e84d0f7208c23ce4d3a1f275a2 +size 2184 diff --git a/game/characters/cho/face/mouth/open_tongue.webp b/game/characters/cho/face/mouth/open_tongue.webp new file mode 100644 index 00000000..678c3ca7 --- /dev/null +++ b/game/characters/cho/face/mouth/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ce546b3596824226d58c6a0ace7d909d3af2248c9c615486e164b5a7d5a54e0 +size 2046 diff --git a/game/characters/cho/face/mouth/open_wide_tongue.webp b/game/characters/cho/face/mouth/open_wide_tongue.webp new file mode 100644 index 00000000..cc1b7642 --- /dev/null +++ b/game/characters/cho/face/mouth/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89e6c3c7850e4bddf3a9a8ef1c466f4ff711b4b0ba78230d9a0a7364f7efaa0c +size 5448 diff --git a/game/characters/cho/face/mouth/quiver.webp b/game/characters/cho/face/mouth/quiver.webp new file mode 100644 index 00000000..71e6f4db --- /dev/null +++ b/game/characters/cho/face/mouth/quiver.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:defb4cbb0e869db161679a5c2114d500592b5b574d3c54709e5ad11a2a25d54c +size 1550 diff --git a/game/characters/cho/face/mouth/scream.webp b/game/characters/cho/face/mouth/scream.webp new file mode 100644 index 00000000..e310489f --- /dev/null +++ b/game/characters/cho/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:511082bdd2ab457ad75f43ecd9a5fd32178ff39c53c66680585641fd4f1529e6 +size 5534 diff --git a/game/characters/cho/face/mouth/silly.webp b/game/characters/cho/face/mouth/silly.webp new file mode 100644 index 00000000..63d6daea --- /dev/null +++ b/game/characters/cho/face/mouth/silly.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bd10b4fbdc67078841e0f5c16b868ecbc48bad9447425aeff520b41f7359762 +size 2900 diff --git a/game/characters/cho/face/mouth/smile.webp b/game/characters/cho/face/mouth/smile.webp new file mode 100644 index 00000000..d0acd977 --- /dev/null +++ b/game/characters/cho/face/mouth/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18e161310d3eb35c31b472a9362fe674220f39322331fafecddb94c041fc567e +size 1972 diff --git a/game/characters/cho/face/mouth/soft.webp b/game/characters/cho/face/mouth/soft.webp new file mode 100644 index 00000000..1c8dda02 --- /dev/null +++ b/game/characters/cho/face/mouth/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5502339927f1614854115c068421fecd28c8126fab026ef4de6b8bda81feeda4 +size 1732 diff --git a/game/characters/cho/face/mouth/upset.webp b/game/characters/cho/face/mouth/upset.webp new file mode 100644 index 00000000..74058768 --- /dev/null +++ b/game/characters/cho/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d86290e971379b16cfdd6ef5e3393a388a6cb574ef247a3647aa80e2999f830 +size 1280 diff --git a/game/characters/cho/face/pupils/L.webp b/game/characters/cho/face/pupils/L.webp new file mode 100644 index 00000000..1dd2bd5b --- /dev/null +++ b/game/characters/cho/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b869a940b8f158b21af8be4a3624fdcc0d87b99c92051f16550315faf6de45be +size 1444 diff --git a/game/characters/cho/face/pupils/R.webp b/game/characters/cho/face/pupils/R.webp new file mode 100644 index 00000000..d1cf72e9 --- /dev/null +++ b/game/characters/cho/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41b30b4abe5cc60e9bc653d909667c1b283b02e967071370394dfd79e634afa0 +size 1430 diff --git a/game/characters/cho/face/pupils/ahegao.webp b/game/characters/cho/face/pupils/ahegao.webp new file mode 100644 index 00000000..715b65ce --- /dev/null +++ b/game/characters/cho/face/pupils/ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f83a8f8c0c024ddb6dd8ee1338a80fe068f6d9b46199bef2e8cd39a884ed3455 +size 1430 diff --git a/game/characters/cho/face/pupils/down.webp b/game/characters/cho/face/pupils/down.webp new file mode 100644 index 00000000..eee29161 --- /dev/null +++ b/game/characters/cho/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0b41d075baf0e67b992e633eacf4b4d430280f0e84fa051542e14fa27d3a1ba +size 1454 diff --git a/game/characters/cho/face/pupils/downR.webp b/game/characters/cho/face/pupils/downR.webp new file mode 100644 index 00000000..180a4fe7 --- /dev/null +++ b/game/characters/cho/face/pupils/downR.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f703f4677870ab18efd736b4b3daefe7f01a0270f93dc76ac4140e4260b9877d +size 1352 diff --git a/game/characters/cho/face/pupils/mid.webp b/game/characters/cho/face/pupils/mid.webp new file mode 100644 index 00000000..cb1001df --- /dev/null +++ b/game/characters/cho/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66392458be9ba0c1734f5ab557da4f9342cfcf8aecee3be49e161282c366ff12 +size 1340 diff --git a/game/characters/cho/face/pupils/stare.webp b/game/characters/cho/face/pupils/stare.webp new file mode 100644 index 00000000..619b8aab --- /dev/null +++ b/game/characters/cho/face/pupils/stare.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3649450332c5f67d1773dc058bf5ba00d02e7a7c3908dd302a78c418f2c5977 +size 1540 diff --git a/game/characters/cho/face/pupils/up.webp b/game/characters/cho/face/pupils/up.webp new file mode 100644 index 00000000..9e0a2d07 --- /dev/null +++ b/game/characters/cho/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e767d861168aa2def10b239dd234bfa061df762974ddc4681eeb20d57d213114 +size 1446 diff --git a/game/characters/cho/face/tears/tears_1.webp b/game/characters/cho/face/tears/tears_1.webp new file mode 100644 index 00000000..0211ad98 --- /dev/null +++ b/game/characters/cho/face/tears/tears_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80e099eaf9a137827bed7ba2407ddbc76fff7ebc3dd5df6e4f1393a6605be0e9 +size 1254 diff --git a/game/characters/cho/face/tears/tears_2.webp b/game/characters/cho/face/tears/tears_2.webp new file mode 100644 index 00000000..a859d022 --- /dev/null +++ b/game/characters/cho/face/tears/tears_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63c183ac5237fd133b33d0c7e7112a929af4e5952878788616f4938bca8f498f +size 3972 diff --git a/game/characters/cho/face/tears/tears_3.webp b/game/characters/cho/face/tears/tears_3.webp new file mode 100644 index 00000000..80c5ae6f --- /dev/null +++ b/game/characters/cho/face/tears/tears_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99cb1139e120582e7f530ae2ef12b6164a2819afec45be8e1312fb2ea6ce5a4c +size 4834 diff --git a/game/characters/cho/face/tears/tears_4.webp b/game/characters/cho/face/tears/tears_4.webp new file mode 100644 index 00000000..bacdc01e --- /dev/null +++ b/game/characters/cho/face/tears/tears_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94c5c127f666a62ff4ea6953bf4ac278aadaa1733b1e5ae58cae7479a65a5cdc +size 9028 diff --git a/game/characters/cho/poses/broom/body/armleft/down.webp b/game/characters/cho/poses/broom/body/armleft/down.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/body/armleft/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/body/armleft/down_fix.webp b/game/characters/cho/poses/broom/body/armleft/down_fix.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/body/armleft/down_fix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/body/armright/down.webp b/game/characters/cho/poses/broom/body/armright/down.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/body/armright/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/body/armright/down_fix.webp b/game/characters/cho/poses/broom/body/armright/down_fix.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/body/armright/down_fix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/body/armright/snitch.webp b/game/characters/cho/poses/broom/body/armright/snitch.webp new file mode 100644 index 00000000..acd8900f --- /dev/null +++ b/game/characters/cho/poses/broom/body/armright/snitch.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b6069e3aa938e33cf030a4c62ecbee38c70d51682bad34ad710949078e565b9 +size 21632 diff --git a/game/characters/cho/poses/broom/body/armright/snitch_fix.webp b/game/characters/cho/poses/broom/body/armright/snitch_fix.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/body/armright/snitch_fix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/body/armright/up.webp b/game/characters/cho/poses/broom/body/armright/up.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/body/armright/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/body/base/front.webp b/game/characters/cho/poses/broom/body/base/front.webp new file mode 100644 index 00000000..8c2c22ed --- /dev/null +++ b/game/characters/cho/poses/broom/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bfe634a8eda7ba236c34cc870214b9db2a597f929f51fdb8b2ecc2a1a0d9da0 +size 125304 diff --git a/game/characters/cho/poses/broom/body/breasts/normal.webp b/game/characters/cho/poses/broom/body/breasts/normal.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/clothes/accessory/goggles/0.webp b/game/characters/cho/poses/broom/clothes/accessory/goggles/0.webp new file mode 100644 index 00000000..b884f086 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/goggles/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03696801a78494f0d7fd919601e2396ed06261cde4618b8148513b93ea34f400 +size 2200 diff --git a/game/characters/cho/poses/broom/clothes/accessory/goggles/1.webp b/game/characters/cho/poses/broom/clothes/accessory/goggles/1.webp new file mode 100644 index 00000000..eeae7371 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/goggles/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b8310d5d180b74561225ca9c7741f7944044fc95e08e545dfa76b16624f041a +size 4038 diff --git a/game/characters/cho/poses/broom/clothes/accessory/goggles/extra.webp b/game/characters/cho/poses/broom/clothes/accessory/goggles/extra.webp new file mode 100644 index 00000000..444a413e --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/goggles/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4052f0e74b3c1ede3caafc5505e1692eccaf30c68ee80dd9d2d969a336c7eb44 +size 8324 diff --git a/game/characters/cho/poses/broom/clothes/accessory/goggles/outline.webp b/game/characters/cho/poses/broom/clothes/accessory/goggles/outline.webp new file mode 100644 index 00000000..ed61d9cc --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/goggles/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1afee623ac1403e74d1b862058fbba669cc26136eb959ccb53ba9c2bd2ce2995 +size 6902 diff --git a/game/characters/cho/poses/broom/clothes/accessory/goggles_face/0.webp b/game/characters/cho/poses/broom/clothes/accessory/goggles_face/0.webp new file mode 100644 index 00000000..6b484394 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/goggles_face/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1ea482e7f8fb9c9e49e2026b707ac2ff7c7240fc8d2e4959c6fd0e4143f838d +size 2812 diff --git a/game/characters/cho/poses/broom/clothes/accessory/goggles_face/1.webp b/game/characters/cho/poses/broom/clothes/accessory/goggles_face/1.webp new file mode 100644 index 00000000..59bc353a --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/goggles_face/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a788b55720173665202b96aee3b45a80ab86f3630cee9f3fbf3fead56743d9a +size 4574 diff --git a/game/characters/cho/poses/broom/clothes/accessory/goggles_face/extra.webp b/game/characters/cho/poses/broom/clothes/accessory/goggles_face/extra.webp new file mode 100644 index 00000000..7c60e76c --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/goggles_face/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:957578f20a0ada32a75b9c775f0e65b25e31ae5af1c0c4859cc803259c0f2b3b +size 8268 diff --git a/game/characters/cho/poses/broom/clothes/accessory/goggles_face/outline.webp b/game/characters/cho/poses/broom/clothes/accessory/goggles_face/outline.webp new file mode 100644 index 00000000..8fd8cd16 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/goggles_face/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa92eaf8436b4af6d5b41947d02ce92639ac60d5a1afb585430acc597d9a8b49 +size 7392 diff --git a/game/characters/cho/poses/broom/clothes/accessory/panties_in_hand/0.webp b/game/characters/cho/poses/broom/clothes/accessory/panties_in_hand/0.webp new file mode 100644 index 00000000..0c938bb9 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/panties_in_hand/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad25dccaf8c8dbdea169fb6f0dff14c44ceffd2489f36006f0e7637d4f1683d4 +size 3692 diff --git a/game/characters/cho/poses/broom/clothes/accessory/panties_in_hand/outline.webp b/game/characters/cho/poses/broom/clothes/accessory/panties_in_hand/outline.webp new file mode 100644 index 00000000..9ae82478 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/panties_in_hand/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb825528e24847509888be0155162673a504661b61e9402fb733801fbfb8fb43 +size 7184 diff --git a/game/characters/cho/poses/broom/clothes/accessory/protectors1/0.webp b/game/characters/cho/poses/broom/clothes/accessory/protectors1/0.webp new file mode 100644 index 00000000..6fbb7bcc --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/protectors1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4f16469f76fa22ea43a2346407a802434ae02dff4da1c40bec6af146a42feae +size 94 diff --git a/game/characters/cho/poses/broom/clothes/accessory/protectors1/extra.webp b/game/characters/cho/poses/broom/clothes/accessory/protectors1/extra.webp new file mode 100644 index 00000000..ad7e3e09 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/protectors1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3a50b15ff2818133958ea1d8b56f561e4b693f693da94a95e674f351c0f1da1 +size 75250 diff --git a/game/characters/cho/poses/broom/clothes/accessory/protectors2/0.webp b/game/characters/cho/poses/broom/clothes/accessory/protectors2/0.webp new file mode 100644 index 00000000..6fbb7bcc --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/protectors2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4f16469f76fa22ea43a2346407a802434ae02dff4da1c40bec6af146a42feae +size 94 diff --git a/game/characters/cho/poses/broom/clothes/accessory/protectors2/extra.webp b/game/characters/cho/poses/broom/clothes/accessory/protectors2/extra.webp new file mode 100644 index 00000000..80003e26 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/accessory/protectors2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5870e85b9866d2be99fd5b6024751f70f76846acb40da72b2a6320b4e1eac36 +size 59576 diff --git a/game/characters/cho/poses/broom/clothes/bottom/pants_long_2/0.webp b/game/characters/cho/poses/broom/clothes/bottom/pants_long_2/0.webp new file mode 100644 index 00000000..c1f8ab4d --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/pants_long_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b87b43c541eed4b0d40f719d51a05556548b829d797e7b72dfa209d354f267c +size 6450 diff --git a/game/characters/cho/poses/broom/clothes/bottom/pants_long_2/1.webp b/game/characters/cho/poses/broom/clothes/bottom/pants_long_2/1.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/pants_long_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/clothes/bottom/pants_long_2/outline.webp b/game/characters/cho/poses/broom/clothes/bottom/pants_long_2/outline.webp new file mode 100644 index 00000000..abf34409 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/pants_long_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdee7a7b10f437f2b9a71d5bfa42717de841a3b675357956c1767c1f4e0f229b +size 15242 diff --git a/game/characters/cho/poses/broom/clothes/bottom/pants_short_4/0.webp b/game/characters/cho/poses/broom/clothes/bottom/pants_short_4/0.webp new file mode 100644 index 00000000..97045ac2 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/pants_short_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6248519e066e6365b49bc37208be741dfc41bec5c183ffc3f511e0b2e4dc3a14 +size 7020 diff --git a/game/characters/cho/poses/broom/clothes/bottom/pants_short_4/1.webp b/game/characters/cho/poses/broom/clothes/bottom/pants_short_4/1.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/pants_short_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/clothes/bottom/pants_short_4/outline.webp b/game/characters/cho/poses/broom/clothes/bottom/pants_short_4/outline.webp new file mode 100644 index 00000000..ad2031cf --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/pants_short_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6450670c3a938c58a04470f7ff2d2f799bfeafc936b06db2a4824d4fd76567cb +size 9812 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_1/0.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_1/0.webp new file mode 100644 index 00000000..59fdabc1 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf92df83a737b359e4b7b27f0a48c337e73cce25c787734c30c3c492d8dd16d8 +size 10610 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_1/1.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_1/1.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_1/outline.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_1/outline.webp new file mode 100644 index 00000000..b17b8eeb --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b7a8abdf4dcab711030a8780567a0c0b902671b5afbf6dd4282feaa4f51f8ca +size 17906 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_1/skin.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_1/skin.webp new file mode 100644 index 00000000..d5c13309 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f94d6a3c9ab9e5984febe925ea1b698c35189d78db9e36d4c90e8f102b1645d8 +size 3936 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_2/0.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_2/0.webp new file mode 100644 index 00000000..a344cd78 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:088ef8a3ce5b1755912d86d8a597c8ac810ec5e6f288382b726498eb70aaac99 +size 6336 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_2/1.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_2/1.webp new file mode 100644 index 00000000..78c67f02 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f459d7b7f3a7351b677f2b2a02e2da68281c81ccfc8f14af62cff0289cec82db +size 376 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_2/outline.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_2/outline.webp new file mode 100644 index 00000000..73ff175b --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38aefed6ad8d1be0f735ed459cb1b0faf2e96dbf00d8923271c34064efb5c6b2 +size 10478 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_2/skin.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_2/skin.webp new file mode 100644 index 00000000..25bcbd4d --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6ffee9861e30e2f452bb65db5d8e2515316d8de61e667b49dd1e59721d72a1f +size 3254 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_3/0.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_3/0.webp new file mode 100644 index 00000000..9b47565e --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac20a5377ef9c9a3eaecdb17219aab9d990bf1e4afa7d683993523c72b31de82 +size 5124 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_3/1.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_3/1.webp new file mode 100644 index 00000000..78c67f02 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f459d7b7f3a7351b677f2b2a02e2da68281c81ccfc8f14af62cff0289cec82db +size 376 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_3/outline.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_3/outline.webp new file mode 100644 index 00000000..93a5b7b3 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ba64cf7b950879c149475a301408a6aacd784433db3a1ad483512d44d360e45 +size 9224 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_3/skin.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_3/skin.webp new file mode 100644 index 00000000..eeff12ab --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_3/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37d4d82451761e3ab935ec78b38d27c0e866610ee214196f8bf38dea2596e654 +size 2558 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_4/0.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_4/0.webp new file mode 100644 index 00000000..8a598e7c --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e1b838794f7741566f1385c3883e3bacb43fb5028da385f8e9e9abb2303245a +size 3392 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_4/1.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_4/1.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_4/outline.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_4/outline.webp new file mode 100644 index 00000000..f8efd0ac --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37d57d0fafb5f285bf20a6cb3e501ff2a93c7f1c1c8a0549009359fbc14d8412 +size 4576 diff --git a/game/characters/cho/poses/broom/clothes/bottom/school_skirt_4/skin.webp b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_4/skin.webp new file mode 100644 index 00000000..c1b4c143 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/school_skirt_4/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8b292b51350c3dc12d66f7d3529d1c90f8cea29be412078e38972af544eb31d +size 2392 diff --git a/game/characters/cho/poses/broom/clothes/bottom/skirt_short_1/0.webp b/game/characters/cho/poses/broom/clothes/bottom/skirt_short_1/0.webp new file mode 100644 index 00000000..d0fd7afb --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/skirt_short_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f6b0357184451147d935d5db611bddf67d484c4ee9d15ac69b8034018d35753 +size 4582 diff --git a/game/characters/cho/poses/broom/clothes/bottom/skirt_short_1/outline.webp b/game/characters/cho/poses/broom/clothes/bottom/skirt_short_1/outline.webp new file mode 100644 index 00000000..dcbb7a39 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/skirt_short_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fab38afe3dd6a687ceed2ab57c5cec4b8b1e00ac495dd2208ca7cfdf0c45a7f2 +size 7150 diff --git a/game/characters/cho/poses/broom/clothes/bottom/skirt_short_1/skin.webp b/game/characters/cho/poses/broom/clothes/bottom/skirt_short_1/skin.webp new file mode 100644 index 00000000..62887c16 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bottom/skirt_short_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0231fcffcbd9588dfeef6e90627699749509826a97c23861b79f5729f46f5dcc +size 2798 diff --git a/game/characters/cho/poses/broom/clothes/bra/basic_bra_1/0.webp b/game/characters/cho/poses/broom/clothes/bra/basic_bra_1/0.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bra/basic_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/clothes/bra/basic_bra_1/1.webp b/game/characters/cho/poses/broom/clothes/bra/basic_bra_1/1.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bra/basic_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/clothes/bra/basic_bra_1/outline.webp b/game/characters/cho/poses/broom/clothes/bra/basic_bra_1/outline.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bra/basic_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/clothes/bra/sport_bra_1/0.webp b/game/characters/cho/poses/broom/clothes/bra/sport_bra_1/0.webp new file mode 100644 index 00000000..513b9c9c --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bra/sport_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7f259139f0bc19d95074ed2ecc32e658105d346700f329e55d24eb2312da511 +size 5370 diff --git a/game/characters/cho/poses/broom/clothes/bra/sport_bra_1/outline.webp b/game/characters/cho/poses/broom/clothes/bra/sport_bra_1/outline.webp new file mode 100644 index 00000000..e0fc8ebd --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/bra/sport_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ee112321eceb2c4e68c168a27a532ab2b0345e678da4c2e8ec6838e7dcc9a5d +size 5676 diff --git a/game/characters/cho/poses/broom/clothes/gloves/quidditch/0.webp b/game/characters/cho/poses/broom/clothes/gloves/quidditch/0.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/gloves/quidditch/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/clothes/gloves/quidditch/outline.webp b/game/characters/cho/poses/broom/clothes/gloves/quidditch/outline.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/gloves/quidditch/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/clothes/hair/ponytail/0.webp b/game/characters/cho/poses/broom/clothes/hair/ponytail/0.webp new file mode 100644 index 00000000..21cfcda2 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/hair/ponytail/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c01337294b648e61e8063ea6eeeeb196020c0402b038ac6f9da88e9b5f5e2fa +size 5836 diff --git a/game/characters/cho/poses/broom/clothes/hair/ponytail/1.webp b/game/characters/cho/poses/broom/clothes/hair/ponytail/1.webp new file mode 100644 index 00000000..bc917948 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/hair/ponytail/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ff55922d259023d8e0658d86fc2346e59042cfb1d61efe7e172ec9f42cf3b78 +size 10774 diff --git a/game/characters/cho/poses/broom/clothes/hair/ponytail/outline.webp b/game/characters/cho/poses/broom/clothes/hair/ponytail/outline.webp new file mode 100644 index 00000000..7288000a --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/hair/ponytail/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e95c01cf821730d4ddf629f664d2d19ed472019fedafda790c7c6df8842daa0 +size 16796 diff --git a/game/characters/cho/poses/broom/clothes/hair/ponytail/skin.webp b/game/characters/cho/poses/broom/clothes/hair/ponytail/skin.webp new file mode 100644 index 00000000..bff4437c --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/hair/ponytail/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1fcfdf1acd84ac8e655e9d334a33e52e73da2ad93aac6a0eaf1fb692c889942 +size 2852 diff --git a/game/characters/cho/poses/broom/clothes/hair/ponytail_natural/0.webp b/game/characters/cho/poses/broom/clothes/hair/ponytail_natural/0.webp new file mode 100644 index 00000000..e1d50c70 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/hair/ponytail_natural/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ca956d7ee48c6725b2433b82f2b61d6e796c87b2da995fa2f66eeb9d944abcc +size 7936 diff --git a/game/characters/cho/poses/broom/clothes/hair/ponytail_natural/1.webp b/game/characters/cho/poses/broom/clothes/hair/ponytail_natural/1.webp new file mode 100644 index 00000000..9c86ce82 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/hair/ponytail_natural/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:021ece35ef92f4330ba9bc8bb2387da69d50525a8be59786280c37bf58eabdec +size 4606 diff --git a/game/characters/cho/poses/broom/clothes/hair/ponytail_natural/outline.webp b/game/characters/cho/poses/broom/clothes/hair/ponytail_natural/outline.webp new file mode 100644 index 00000000..6ccb268c --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/hair/ponytail_natural/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfb1e8e55254552ed98986e133f27ef66dc8ef0ce794d7ec5f2a4746cd57a193 +size 9180 diff --git a/game/characters/cho/poses/broom/clothes/headgear/goggles/0.webp b/game/characters/cho/poses/broom/clothes/headgear/goggles/0.webp new file mode 100644 index 00000000..6273b850 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/headgear/goggles/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4647b77b82ee2e80b622620b19dabfe3f54cbf87554b625d89dc23ef4e58c3bb +size 2512 diff --git a/game/characters/cho/poses/broom/clothes/headgear/goggles/1.webp b/game/characters/cho/poses/broom/clothes/headgear/goggles/1.webp new file mode 100644 index 00000000..031b4f69 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/headgear/goggles/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3123747f339f28017abe0c462e671c1925d8d50e20bc0a1fb1d8540d450b6eec +size 5100 diff --git a/game/characters/cho/poses/broom/clothes/headgear/goggles/extra.webp b/game/characters/cho/poses/broom/clothes/headgear/goggles/extra.webp new file mode 100644 index 00000000..0ec345de --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/headgear/goggles/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8711b4a476e6005a31ee58377de17b3d7a4b4c4a79d16104a5c93f35351a8f36 +size 8686 diff --git a/game/characters/cho/poses/broom/clothes/headgear/goggles/outline.webp b/game/characters/cho/poses/broom/clothes/headgear/goggles/outline.webp new file mode 100644 index 00000000..99de63f9 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/headgear/goggles/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d66ef395eeffd2c500e3e44c8ace5ac935b1c697dc11d5c591ebe535749d1611 +size 9654 diff --git a/game/characters/cho/poses/broom/clothes/panties/basic_panties_1/0.webp b/game/characters/cho/poses/broom/clothes/panties/basic_panties_1/0.webp new file mode 100644 index 00000000..5e77f0c5 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/panties/basic_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:959317d086e17140a6abe643b0c838b4edc5c6707f31acc24b42a635fd3d8320 +size 3414 diff --git a/game/characters/cho/poses/broom/clothes/panties/basic_panties_1/1.webp b/game/characters/cho/poses/broom/clothes/panties/basic_panties_1/1.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/panties/basic_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/cho/poses/broom/clothes/panties/basic_panties_1/outline.webp b/game/characters/cho/poses/broom/clothes/panties/basic_panties_1/outline.webp new file mode 100644 index 00000000..19f62ae1 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/panties/basic_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e6373285e134c965cb4d7b07129c8c5473726beb66afb52fd067496f2d37a43 +size 3888 diff --git a/game/characters/cho/poses/broom/clothes/panties/basic_panties_1/skin.webp b/game/characters/cho/poses/broom/clothes/panties/basic_panties_1/skin.webp new file mode 100644 index 00000000..d2c79514 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/panties/basic_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf4a453dd09b6708ad876829515d78fa2a00ee5746635cd7819e3ec5d0074446 +size 2432 diff --git a/game/characters/cho/poses/broom/clothes/panties/sport_panties_1/0.webp b/game/characters/cho/poses/broom/clothes/panties/sport_panties_1/0.webp new file mode 100644 index 00000000..0c5e3dfb --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/panties/sport_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ade04eb556a4db6198c026cceba42e17604f5a46434cccdb76a81407dcf6ac5 +size 3442 diff --git a/game/characters/cho/poses/broom/clothes/panties/sport_panties_1/outline.webp b/game/characters/cho/poses/broom/clothes/panties/sport_panties_1/outline.webp new file mode 100644 index 00000000..a91fb71e --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/panties/sport_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06bcf45473acfdb8a11edbd3f0870cf92ae6b0f24d67888e6e0bef687e47a31c +size 5560 diff --git a/game/characters/cho/poses/broom/clothes/robe/robe_quidditch_1/0.webp b/game/characters/cho/poses/broom/clothes/robe/robe_quidditch_1/0.webp new file mode 100644 index 00000000..7d2dc4fb --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/robe/robe_quidditch_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3780d7c4bcd9641c7c04418c414d61598468d6604db9f674bf3c19e61b1eedc6 +size 8254 diff --git a/game/characters/cho/poses/broom/clothes/robe/robe_quidditch_1/1.webp b/game/characters/cho/poses/broom/clothes/robe/robe_quidditch_1/1.webp new file mode 100644 index 00000000..b1f286a0 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/robe/robe_quidditch_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce767fe7ba46ce4d8d7a9aaa8ecaafc91420ff6930746f9b17de0664ec9bd239 +size 4320 diff --git a/game/characters/cho/poses/broom/clothes/robe/robe_quidditch_1/extra.webp b/game/characters/cho/poses/broom/clothes/robe/robe_quidditch_1/extra.webp new file mode 100644 index 00000000..58d74c43 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/robe/robe_quidditch_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8266ff09b92fc5120cc88966a654693e816abff8c39c0eb63faf18ee9f8ce08 +size 5838 diff --git a/game/characters/cho/poses/broom/clothes/robe/robe_quidditch_1/outline.webp b/game/characters/cho/poses/broom/clothes/robe/robe_quidditch_1/outline.webp new file mode 100644 index 00000000..b8d1cdf0 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/robe/robe_quidditch_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4b4034a431207f0ea421d8ca51d5917ad26205b6e7e267baa99485baad6590c +size 21240 diff --git a/game/characters/cho/poses/broom/clothes/top/top_sailor_1/0.webp b/game/characters/cho/poses/broom/clothes/top/top_sailor_1/0.webp new file mode 100644 index 00000000..fe4c916c --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_sailor_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9ec727043e93bf059d6e2367feb4eff1937b2f958abd7a1b059d78e20b2ce05 +size 2898 diff --git a/game/characters/cho/poses/broom/clothes/top/top_sailor_1/1.webp b/game/characters/cho/poses/broom/clothes/top/top_sailor_1/1.webp new file mode 100644 index 00000000..a7981c85 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_sailor_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84cf85ceb3bb7c88f84e6d52ca7b0ec649a60cf310a8528904c4e7c8447c8243 +size 2728 diff --git a/game/characters/cho/poses/broom/clothes/top/top_sailor_1/outline.webp b/game/characters/cho/poses/broom/clothes/top/top_sailor_1/outline.webp new file mode 100644 index 00000000..c065501a --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_sailor_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff250bc4bcc8f0f5689636a6a249cf78a778c47d9b97332370e8a82288bc6f74 +size 6484 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_1/0.webp b/game/characters/cho/poses/broom/clothes/top/top_school_1/0.webp new file mode 100644 index 00000000..4cb0455d --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c8062587c07fe3ed18558be39d7c69f61096a0ad55e66a2be5b24c692360558 +size 4672 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_1/1.webp b/game/characters/cho/poses/broom/clothes/top/top_school_1/1.webp new file mode 100644 index 00000000..404c77c0 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5f134611e850aa7df8ca26af23b7be2e5aeef20abf3e918b63889c7d6ac242c +size 5892 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_1/2.webp b/game/characters/cho/poses/broom/clothes/top/top_school_1/2.webp new file mode 100644 index 00000000..f4c4bcad --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0cbd0e033943fd48b8da2427ba40a1a4924cc39d65d516f255b448d4c512127d +size 2998 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_1/3.webp b/game/characters/cho/poses/broom/clothes/top/top_school_1/3.webp new file mode 100644 index 00000000..7ac08794 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b77870a86c7f64b84291a639df929fb53fc3d7664577f3b240aadc2a243e47e5 +size 2238 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_1/outline.webp b/game/characters/cho/poses/broom/clothes/top/top_school_1/outline.webp new file mode 100644 index 00000000..513a5e8d --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e14324becd7f627d173f787f5088a198f4729d93d1c3b0dbc69637f71f667fc8 +size 10952 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_2/0.webp b/game/characters/cho/poses/broom/clothes/top/top_school_2/0.webp new file mode 100644 index 00000000..4cb0455d --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c8062587c07fe3ed18558be39d7c69f61096a0ad55e66a2be5b24c692360558 +size 4672 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_2/1.webp b/game/characters/cho/poses/broom/clothes/top/top_school_2/1.webp new file mode 100644 index 00000000..404c77c0 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5f134611e850aa7df8ca26af23b7be2e5aeef20abf3e918b63889c7d6ac242c +size 5892 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_2/2.webp b/game/characters/cho/poses/broom/clothes/top/top_school_2/2.webp new file mode 100644 index 00000000..f4c4bcad --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0cbd0e033943fd48b8da2427ba40a1a4924cc39d65d516f255b448d4c512127d +size 2998 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_2/3.webp b/game/characters/cho/poses/broom/clothes/top/top_school_2/3.webp new file mode 100644 index 00000000..7ac08794 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_2/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b77870a86c7f64b84291a639df929fb53fc3d7664577f3b240aadc2a243e47e5 +size 2238 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_2/outline.webp b/game/characters/cho/poses/broom/clothes/top/top_school_2/outline.webp new file mode 100644 index 00000000..513a5e8d --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e14324becd7f627d173f787f5088a198f4729d93d1c3b0dbc69637f71f667fc8 +size 10952 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_3/0.webp b/game/characters/cho/poses/broom/clothes/top/top_school_3/0.webp new file mode 100644 index 00000000..8960e7e9 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0cf7719fd9885404f96065f357cae9b6123a7cb6ee6c0aa861cceda0a2fd1f9 +size 6972 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_3/1.webp b/game/characters/cho/poses/broom/clothes/top/top_school_3/1.webp new file mode 100644 index 00000000..2254b12d --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acd8336eeef2f2ef27c64015ed5642d66e740719e9f0cbf8871fbab7eb3e5402 +size 1628 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_3/2.webp b/game/characters/cho/poses/broom/clothes/top/top_school_3/2.webp new file mode 100644 index 00000000..f6594225 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_3/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4199e80f9e68e37bcea7b0da7f9e95e10bfe911b0cdb95a5f2c478614892b9c +size 1426 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_3/outline.webp b/game/characters/cho/poses/broom/clothes/top/top_school_3/outline.webp new file mode 100644 index 00000000..89081c88 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bac1cb838a7a3ab5573d0a9f7789745eab0298b8ae5832887431cd22656abe8 +size 9752 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_4/0.webp b/game/characters/cho/poses/broom/clothes/top/top_school_4/0.webp new file mode 100644 index 00000000..8960e7e9 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0cf7719fd9885404f96065f357cae9b6123a7cb6ee6c0aa861cceda0a2fd1f9 +size 6972 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_4/1.webp b/game/characters/cho/poses/broom/clothes/top/top_school_4/1.webp new file mode 100644 index 00000000..2254b12d --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acd8336eeef2f2ef27c64015ed5642d66e740719e9f0cbf8871fbab7eb3e5402 +size 1628 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_4/2.webp b/game/characters/cho/poses/broom/clothes/top/top_school_4/2.webp new file mode 100644 index 00000000..f6594225 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_4/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4199e80f9e68e37bcea7b0da7f9e95e10bfe911b0cdb95a5f2c478614892b9c +size 1426 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_4/outline.webp b/game/characters/cho/poses/broom/clothes/top/top_school_4/outline.webp new file mode 100644 index 00000000..89081c88 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bac1cb838a7a3ab5573d0a9f7789745eab0298b8ae5832887431cd22656abe8 +size 9752 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_5/0.webp b/game/characters/cho/poses/broom/clothes/top/top_school_5/0.webp new file mode 100644 index 00000000..8960e7e9 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_5/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0cf7719fd9885404f96065f357cae9b6123a7cb6ee6c0aa861cceda0a2fd1f9 +size 6972 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_5/1.webp b/game/characters/cho/poses/broom/clothes/top/top_school_5/1.webp new file mode 100644 index 00000000..2254b12d --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_5/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acd8336eeef2f2ef27c64015ed5642d66e740719e9f0cbf8871fbab7eb3e5402 +size 1628 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_5/2.webp b/game/characters/cho/poses/broom/clothes/top/top_school_5/2.webp new file mode 100644 index 00000000..f6594225 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_5/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4199e80f9e68e37bcea7b0da7f9e95e10bfe911b0cdb95a5f2c478614892b9c +size 1426 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_5/outline.webp b/game/characters/cho/poses/broom/clothes/top/top_school_5/outline.webp new file mode 100644 index 00000000..89081c88 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_5/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bac1cb838a7a3ab5573d0a9f7789745eab0298b8ae5832887431cd22656abe8 +size 9752 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_6/0.webp b/game/characters/cho/poses/broom/clothes/top/top_school_6/0.webp new file mode 100644 index 00000000..540ed971 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_6/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5fa511e05348e034a01c030b22b356e0a2395a7fa4a32e7279270e670a4f8db +size 6466 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_6/1.webp b/game/characters/cho/poses/broom/clothes/top/top_school_6/1.webp new file mode 100644 index 00000000..375c288c --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_6/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d6dd344e9331c6a123d22aef89e0e5a4a660c4725bec27314974ee64a0402ce +size 2330 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_6/2.webp b/game/characters/cho/poses/broom/clothes/top/top_school_6/2.webp new file mode 100644 index 00000000..d09c2e22 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_6/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10995ba42cff56a5a15811ac6aebba7cde21ef676d878a1f3cbc20a20edb4e05 +size 1818 diff --git a/game/characters/cho/poses/broom/clothes/top/top_school_6/outline.webp b/game/characters/cho/poses/broom/clothes/top/top_school_6/outline.webp new file mode 100644 index 00000000..1b62d21e --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_school_6/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40cf99a7b9aa60b1f187ae1ee131e3c5a7675f81a0512856ab78f875eecb1916 +size 8664 diff --git a/game/characters/cho/poses/broom/clothes/top/top_sweater_1/0.webp b/game/characters/cho/poses/broom/clothes/top/top_sweater_1/0.webp new file mode 100644 index 00000000..877fd1dd --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_sweater_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:990bf3945ac4da268825be34624ed963156881b05792280131a9feb106174509 +size 5800 diff --git a/game/characters/cho/poses/broom/clothes/top/top_sweater_1/1.webp b/game/characters/cho/poses/broom/clothes/top/top_sweater_1/1.webp new file mode 100644 index 00000000..9ca0da48 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_sweater_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:858e6db9c9ded46b3e4e036e4d2b927581a1b0d16b7dbfa22d7b45bbcc281316 +size 6864 diff --git a/game/characters/cho/poses/broom/clothes/top/top_sweater_1/outline.webp b/game/characters/cho/poses/broom/clothes/top/top_sweater_1/outline.webp new file mode 100644 index 00000000..df74b708 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_sweater_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b4c54a84deaa5098a147c1e73e114a4acb3b85254e82e0c44830d5bb834a67a +size 30104 diff --git a/game/characters/cho/poses/broom/clothes/top/top_sweater_2/0.webp b/game/characters/cho/poses/broom/clothes/top/top_sweater_2/0.webp new file mode 100644 index 00000000..f11c0592 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_sweater_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc0e8e7f755d374c8907c6808c0a4d5686db0df7c8dd9c65ae1d80dcb3a292a9 +size 7838 diff --git a/game/characters/cho/poses/broom/clothes/top/top_sweater_2/1.webp b/game/characters/cho/poses/broom/clothes/top/top_sweater_2/1.webp new file mode 100644 index 00000000..96182c33 --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_sweater_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:487aa6e7221b926d615204fa2c21f1e56c3559cd6fa830736f4b60c7c649655a +size 4270 diff --git a/game/characters/cho/poses/broom/clothes/top/top_sweater_2/outline.webp b/game/characters/cho/poses/broom/clothes/top/top_sweater_2/outline.webp new file mode 100644 index 00000000..2e67d0ec --- /dev/null +++ b/game/characters/cho/poses/broom/clothes/top/top_sweater_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d00f10a532ea1bafae84dfd4d013fe5d889e96ba4609d436c1df109d0e23bb1 +size 20006 diff --git a/game/characters/cho/poses/broom/face/cheeks/blush.webp b/game/characters/cho/poses/broom/face/cheeks/blush.webp new file mode 100644 index 00000000..6198f167 --- /dev/null +++ b/game/characters/cho/poses/broom/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a657cdb27bba35e9f22a79ee62955decd8ba327ffb30ef4c1af458a9d074860 +size 2066 diff --git a/game/characters/cho/poses/broom/face/cheeks/heavy_blush.webp b/game/characters/cho/poses/broom/face/cheeks/heavy_blush.webp new file mode 100644 index 00000000..e5614f55 --- /dev/null +++ b/game/characters/cho/poses/broom/face/cheeks/heavy_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9420a3ab9ee3d7871473b362c4f60118222eb8cf980fac2a127ff1166a22ee4 +size 4238 diff --git a/game/characters/cho/poses/broom/face/extras/tears_1.webp b/game/characters/cho/poses/broom/face/extras/tears_1.webp new file mode 100644 index 00000000..0211ad98 --- /dev/null +++ b/game/characters/cho/poses/broom/face/extras/tears_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80e099eaf9a137827bed7ba2407ddbc76fff7ebc3dd5df6e4f1393a6605be0e9 +size 1254 diff --git a/game/characters/cho/poses/broom/face/extras/tears_2.webp b/game/characters/cho/poses/broom/face/extras/tears_2.webp new file mode 100644 index 00000000..a859d022 --- /dev/null +++ b/game/characters/cho/poses/broom/face/extras/tears_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63c183ac5237fd133b33d0c7e7112a929af4e5952878788616f4938bca8f498f +size 3972 diff --git a/game/characters/cho/poses/broom/face/extras/tears_3.webp b/game/characters/cho/poses/broom/face/extras/tears_3.webp new file mode 100644 index 00000000..80c5ae6f --- /dev/null +++ b/game/characters/cho/poses/broom/face/extras/tears_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99cb1139e120582e7f530ae2ef12b6164a2819afec45be8e1312fb2ea6ce5a4c +size 4834 diff --git a/game/characters/cho/poses/broom/face/extras/tears_4.webp b/game/characters/cho/poses/broom/face/extras/tears_4.webp new file mode 100644 index 00000000..bacdc01e --- /dev/null +++ b/game/characters/cho/poses/broom/face/extras/tears_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94c5c127f666a62ff4ea6953bf4ac278aadaa1733b1e5ae58cae7479a65a5cdc +size 9028 diff --git a/game/characters/cho/poses/broom/face/eyebrows/angry.webp b/game/characters/cho/poses/broom/face/eyebrows/angry.webp new file mode 100644 index 00000000..d676146a --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:207e912db32deaa0a0e42ae9c7363e6d015539d821708b941561fed250c826b2 +size 1546 diff --git a/game/characters/cho/poses/broom/face/eyebrows/angry_skin.webp b/game/characters/cho/poses/broom/face/eyebrows/angry_skin.webp new file mode 100644 index 00000000..ab434d9a --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyebrows/angry_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c5513a079f5900edd752ce74b3d7983471bfd55ea4c8aaf772215ae78678c53 +size 1376 diff --git a/game/characters/cho/poses/broom/face/eyebrows/base.webp b/game/characters/cho/poses/broom/face/eyebrows/base.webp new file mode 100644 index 00000000..77718071 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f52069dc5720b0c0f5095a2f21f8fb2fddde9a28588f50e042659912baa61b4 +size 1408 diff --git a/game/characters/cho/poses/broom/face/eyebrows/base_skin.webp b/game/characters/cho/poses/broom/face/eyebrows/base_skin.webp new file mode 100644 index 00000000..e486116a --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyebrows/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b0e96d4fdb503ed3941a9ae9062443c30dc1f31fc5e0afb984bb53fd40d0ea6 +size 1416 diff --git a/game/characters/cho/poses/broom/face/eyebrows/raised.webp b/game/characters/cho/poses/broom/face/eyebrows/raised.webp new file mode 100644 index 00000000..ec5a3ee8 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyebrows/raised.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41163b9dfe7d0416c04418acf5b6f56804294de50f2ce8a767ce3b3348ad51b9 +size 3250 diff --git a/game/characters/cho/poses/broom/face/eyebrows/raised_skin.webp b/game/characters/cho/poses/broom/face/eyebrows/raised_skin.webp new file mode 100644 index 00000000..e486116a --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyebrows/raised_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b0e96d4fdb503ed3941a9ae9062443c30dc1f31fc5e0afb984bb53fd40d0ea6 +size 1416 diff --git a/game/characters/cho/poses/broom/face/eyebrows/worried.webp b/game/characters/cho/poses/broom/face/eyebrows/worried.webp new file mode 100644 index 00000000..cd475e51 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b41928e687707884dc778ec8d0b013a4dc83ed6322ae3571069407a946923376 +size 1380 diff --git a/game/characters/cho/poses/broom/face/eyebrows/worried_skin.webp b/game/characters/cho/poses/broom/face/eyebrows/worried_skin.webp new file mode 100644 index 00000000..a9be39b3 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyebrows/worried_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34e445e43af5fca069ef85d932846f62960054e7b9b7bd508197a098fe3a9572 +size 1474 diff --git a/game/characters/cho/poses/broom/face/eyes/base.webp b/game/characters/cho/poses/broom/face/eyes/base.webp new file mode 100644 index 00000000..7af034d3 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09787613884292b03b55418608f91e0e29cd01e218b9265b00e6b431513967cd +size 1978 diff --git a/game/characters/cho/poses/broom/face/eyes/base_mask.webp b/game/characters/cho/poses/broom/face/eyes/base_mask.webp new file mode 100644 index 00000000..41e4cc1b --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90a9d1f4d6b143f8c1f16dd70575eb449288d7734edc5bb17d595181c6d2c815 +size 796 diff --git a/game/characters/cho/poses/broom/face/eyes/base_skin.webp b/game/characters/cho/poses/broom/face/eyes/base_skin.webp new file mode 100644 index 00000000..74abd2f2 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4606097fc35db33575edc228a8ca6a28c7f5b52cf548feda816ca3e972828e7b +size 1172 diff --git a/game/characters/cho/poses/broom/face/eyes/closed.webp b/game/characters/cho/poses/broom/face/eyes/closed.webp new file mode 100644 index 00000000..e33d78c0 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b42520755aa0dc36ba4f617ff945636010a890583a8c0d45dd5dd59958720cb7 +size 2682 diff --git a/game/characters/cho/poses/broom/face/eyes/closed_skin.webp b/game/characters/cho/poses/broom/face/eyes/closed_skin.webp new file mode 100644 index 00000000..74abd2f2 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/closed_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4606097fc35db33575edc228a8ca6a28c7f5b52cf548feda816ca3e972828e7b +size 1172 diff --git a/game/characters/cho/poses/broom/face/eyes/happyCl.webp b/game/characters/cho/poses/broom/face/eyes/happyCl.webp new file mode 100644 index 00000000..e62d2663 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56ec3e21d7103df0f14af9f2afb2cf0abfdd4ec3c4ba1fa391fb1bf5d516b652 +size 2034 diff --git a/game/characters/cho/poses/broom/face/eyes/happyCl_skin.webp b/game/characters/cho/poses/broom/face/eyes/happyCl_skin.webp new file mode 100644 index 00000000..17e52e4f --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/happyCl_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e43d286a3bf5d1b337f132e749f338b437314086c60c3cdaa4891bbbcab006d3 +size 1158 diff --git a/game/characters/cho/poses/broom/face/eyes/narrow.webp b/game/characters/cho/poses/broom/face/eyes/narrow.webp new file mode 100644 index 00000000..5b274abf --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2db8e1f9bfccb30302e303b2eb16e5d4d298aff4aaabaaeed03c8c8c69fa2c7 +size 2340 diff --git a/game/characters/cho/poses/broom/face/eyes/narrow_mask.webp b/game/characters/cho/poses/broom/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..7dc8fc37 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cd74dfa46a12dff649ea7446b17ff6b1dd6c61e77dec8623050a6a23c004be1 +size 774 diff --git a/game/characters/cho/poses/broom/face/eyes/narrow_skin.webp b/game/characters/cho/poses/broom/face/eyes/narrow_skin.webp new file mode 100644 index 00000000..74abd2f2 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/narrow_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4606097fc35db33575edc228a8ca6a28c7f5b52cf548feda816ca3e972828e7b +size 1172 diff --git a/game/characters/cho/poses/broom/face/eyes/wide.webp b/game/characters/cho/poses/broom/face/eyes/wide.webp new file mode 100644 index 00000000..3d88bd3b --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aeade79911065e9ba70733bf754bf5f34bfb0a8c0d5742fbc4a7e5bb5d74ae45 +size 2172 diff --git a/game/characters/cho/poses/broom/face/eyes/wide_mask.webp b/game/characters/cho/poses/broom/face/eyes/wide_mask.webp new file mode 100644 index 00000000..f729dbd6 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/wide_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:add3a8902a26f28aefbbbcf6ff42b796b8305a39fd8407a45d2460e1868776c9 +size 1156 diff --git a/game/characters/cho/poses/broom/face/eyes/wide_skin.webp b/game/characters/cho/poses/broom/face/eyes/wide_skin.webp new file mode 100644 index 00000000..74abd2f2 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/wide_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4606097fc35db33575edc228a8ca6a28c7f5b52cf548feda816ca3e972828e7b +size 1172 diff --git a/game/characters/cho/poses/broom/face/eyes/wink.webp b/game/characters/cho/poses/broom/face/eyes/wink.webp new file mode 100644 index 00000000..2cd4d183 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14931367c0085e5990b1d6d627250b0369bf473bd36dc861eea1840e136eded7 +size 2248 diff --git a/game/characters/cho/poses/broom/face/eyes/wink_mask.webp b/game/characters/cho/poses/broom/face/eyes/wink_mask.webp new file mode 100644 index 00000000..b2992dec --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/wink_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56f20479273a304892647ec5d31f218f5bd87b1b0e02d5b2477efdb070cbac1f +size 710 diff --git a/game/characters/cho/poses/broom/face/eyes/wink_skin.webp b/game/characters/cho/poses/broom/face/eyes/wink_skin.webp new file mode 100644 index 00000000..5f763ea9 --- /dev/null +++ b/game/characters/cho/poses/broom/face/eyes/wink_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7586ee519b6308718cfb3f06ad8fa23e90ebe082bcf46609339854d151664e3 +size 1178 diff --git a/game/characters/cho/poses/broom/face/mouth/angry.webp b/game/characters/cho/poses/broom/face/mouth/angry.webp new file mode 100644 index 00000000..a4834881 --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c52c370e479c5d2fa2e01b30ccc3cd8356aa375e339b884c03f8541c063d5475 +size 2460 diff --git a/game/characters/cho/poses/broom/face/mouth/annoyed.webp b/game/characters/cho/poses/broom/face/mouth/annoyed.webp new file mode 100644 index 00000000..d7af24e9 --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1fa4d794abfa2754c16be708cb27b1cecd3b0075d537d28518d0302d66d33e0 +size 1336 diff --git a/game/characters/cho/poses/broom/face/mouth/base.webp b/game/characters/cho/poses/broom/face/mouth/base.webp new file mode 100644 index 00000000..71b550d3 --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e2f23e46889f28a15b3348f1a7d3ba24b08d9735220388e39d01766624f1a9b +size 1416 diff --git a/game/characters/cho/poses/broom/face/mouth/clench.webp b/game/characters/cho/poses/broom/face/mouth/clench.webp new file mode 100644 index 00000000..2b68072f --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8db0c242ab3d457ac124e5e88c946b73f489bfd23a18ed372bceb22b5a4c740e +size 2590 diff --git a/game/characters/cho/poses/broom/face/mouth/crooked_smile.webp b/game/characters/cho/poses/broom/face/mouth/crooked_smile.webp new file mode 100644 index 00000000..fd665b6b --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d70f02a21bb7f87317e395a897c8172f268eefd19658c4fd1b4e3bd2336fd89 +size 2498 diff --git a/game/characters/cho/poses/broom/face/mouth/disgust.webp b/game/characters/cho/poses/broom/face/mouth/disgust.webp new file mode 100644 index 00000000..6044a8d9 --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1972090a429f5bcfc94bd9ac6dcca4d2c53311c7ad88caf565629499e7ff9c2a +size 1952 diff --git a/game/characters/cho/poses/broom/face/mouth/grin.webp b/game/characters/cho/poses/broom/face/mouth/grin.webp new file mode 100644 index 00000000..ce2f1030 --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c9711b35e107a80b89d916f37ade7d26b7b1e0e0430c3e9c38a03a9c493fa87 +size 2842 diff --git a/game/characters/cho/poses/broom/face/mouth/horny.webp b/game/characters/cho/poses/broom/face/mouth/horny.webp new file mode 100644 index 00000000..b8f54b4e --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/horny.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:447c6ec5719e69cd7df2fb3153c0dbaf41a401bcb9443ceb6dfa709587c268a3 +size 1782 diff --git a/game/characters/cho/poses/broom/face/mouth/mad.webp b/game/characters/cho/poses/broom/face/mouth/mad.webp new file mode 100644 index 00000000..1f29033f --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8417c7730264ae5a8331a4e4c8bf29bf27808774aa0e1111226331c17a837ab7 +size 2140 diff --git a/game/characters/cho/poses/broom/face/mouth/normal.webp b/game/characters/cho/poses/broom/face/mouth/normal.webp new file mode 100644 index 00000000..594edbd1 --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3b3919c9b16c9dcdac4b0b0e104b55287ac866c8e179f1e89cae57a65f184c4 +size 1400 diff --git a/game/characters/cho/poses/broom/face/mouth/open.webp b/game/characters/cho/poses/broom/face/mouth/open.webp new file mode 100644 index 00000000..50bdbb07 --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6ebb8877e84eaa9eaa8e240b53867dbc6c7d8dc72169a45f9afb987b3365f4f +size 2008 diff --git a/game/characters/cho/poses/broom/face/mouth/open_tongue.webp b/game/characters/cho/poses/broom/face/mouth/open_tongue.webp new file mode 100644 index 00000000..e06a581f --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:203601a25d7669c76e52bb4fe36970bb7271fe3f97ba5c77ab6ea77ee417d7cc +size 1914 diff --git a/game/characters/cho/poses/broom/face/mouth/open_wide_tongue.webp b/game/characters/cho/poses/broom/face/mouth/open_wide_tongue.webp new file mode 100644 index 00000000..e505a5cf --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1eeb0061aa05dace9512499b5e14dcde1bbc23c9532a211f7d92f19dffeaf3b +size 4948 diff --git a/game/characters/cho/poses/broom/face/mouth/pout.webp b/game/characters/cho/poses/broom/face/mouth/pout.webp new file mode 100644 index 00000000..8e7529b5 --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/pout.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d738d321bbb45b81092839efb639b9502a94e3f1ab7497495a2ab6661924eab8 +size 2452 diff --git a/game/characters/cho/poses/broom/face/mouth/quiver.webp b/game/characters/cho/poses/broom/face/mouth/quiver.webp new file mode 100644 index 00000000..e9a7687e --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/quiver.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77a4a6c7f58d0f3cb7008cd69aad7f83cf63727d551c4500d32bd242e9510d2d +size 1572 diff --git a/game/characters/cho/poses/broom/face/mouth/scream.webp b/game/characters/cho/poses/broom/face/mouth/scream.webp new file mode 100644 index 00000000..674b3506 --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fae32ad8d1259b5e4c3ade695e1e6e0fde5fd0778964d23c959ac7bebd0b7e72 +size 5162 diff --git a/game/characters/cho/poses/broom/face/mouth/silly.webp b/game/characters/cho/poses/broom/face/mouth/silly.webp new file mode 100644 index 00000000..c6d65b6a --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/silly.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36ce19c23c992bf04a23ed32ca2ae4b5ad8b2a9406aace6ce480ebad4ee9d99e +size 2544 diff --git a/game/characters/cho/poses/broom/face/mouth/smile.webp b/game/characters/cho/poses/broom/face/mouth/smile.webp new file mode 100644 index 00000000..d8e5a076 --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e6a03515485b1ab1ba4618f37e77ddb14bea42c57f0c40d8d659f3ca7ef65b5 +size 1898 diff --git a/game/characters/cho/poses/broom/face/mouth/soft.webp b/game/characters/cho/poses/broom/face/mouth/soft.webp new file mode 100644 index 00000000..4c1c2266 --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f65a6f4b89841368ae6265ad33da4afd943f40ba472060fa400ed7faafd4db9 +size 1628 diff --git a/game/characters/cho/poses/broom/face/mouth/upset.webp b/game/characters/cho/poses/broom/face/mouth/upset.webp new file mode 100644 index 00000000..3ad08f59 --- /dev/null +++ b/game/characters/cho/poses/broom/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cb433cab536881b78caeea6d0a7dfc3c06ef2e5198f07c96ebf0ce9abeae1ca +size 1366 diff --git a/game/characters/cho/poses/broom/face/pupils/L.webp b/game/characters/cho/poses/broom/face/pupils/L.webp new file mode 100644 index 00000000..3a81f7bc --- /dev/null +++ b/game/characters/cho/poses/broom/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f90fcb60ce87ffe9b37a1fb0718f2b3af392f37573542b7366dccea6404e977 +size 1246 diff --git a/game/characters/cho/poses/broom/face/pupils/R.webp b/game/characters/cho/poses/broom/face/pupils/R.webp new file mode 100644 index 00000000..70d96059 --- /dev/null +++ b/game/characters/cho/poses/broom/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3afc462e9bcdff61d16988effeba100780d0c04b6e23b6cb3dbe3c8313a96ec +size 1324 diff --git a/game/characters/cho/poses/broom/face/pupils/ahegao.webp b/game/characters/cho/poses/broom/face/pupils/ahegao.webp new file mode 100644 index 00000000..7609be46 --- /dev/null +++ b/game/characters/cho/poses/broom/face/pupils/ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e1cec338c326abc447c0b8ca78fed777ea890c2baa6a2ee673038353e99a87d +size 1378 diff --git a/game/characters/cho/poses/broom/face/pupils/down.webp b/game/characters/cho/poses/broom/face/pupils/down.webp new file mode 100644 index 00000000..707adcbd --- /dev/null +++ b/game/characters/cho/poses/broom/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19d718955b9f7a694a59d8a4376bbc8035ee59a99c711ea6e4550abb760bdd66 +size 1262 diff --git a/game/characters/cho/poses/broom/face/pupils/downR.webp b/game/characters/cho/poses/broom/face/pupils/downR.webp new file mode 100644 index 00000000..a12f5a58 --- /dev/null +++ b/game/characters/cho/poses/broom/face/pupils/downR.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:773db7c16d5af1999008a4612cb27a5249b3313c17fb89fb1f4021b5ed82d030 +size 1228 diff --git a/game/characters/cho/poses/broom/face/pupils/mid.webp b/game/characters/cho/poses/broom/face/pupils/mid.webp new file mode 100644 index 00000000..d8725c8b --- /dev/null +++ b/game/characters/cho/poses/broom/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9cc1d4be20f12f9658a04d25b4797c98f30c96c39ac5f98160d61683cf8766e +size 1324 diff --git a/game/characters/cho/poses/broom/face/pupils/up.webp b/game/characters/cho/poses/broom/face/pupils/up.webp new file mode 100644 index 00000000..e90f61bb --- /dev/null +++ b/game/characters/cho/poses/broom/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d5b844e7ab682ed0538b8a24a43012791c1d033e7d6c17ab0913840b184dc3a +size 1312 diff --git a/game/characters/cho/poses/broom/loadable.webp b/game/characters/cho/poses/broom/loadable.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/cho/poses/broom/loadable.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/emotes/01.webp b/game/characters/emotes/01.webp new file mode 100644 index 00000000..dcc9fd89 --- /dev/null +++ b/game/characters/emotes/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88fe0ca48e51b349e65e7402974ce58fdb0ed988c4a0bb0c398c92b46e4c2209 +size 14298 diff --git a/game/characters/emotes/02.webp b/game/characters/emotes/02.webp new file mode 100644 index 00000000..abd7f5e5 --- /dev/null +++ b/game/characters/emotes/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9fbd6010233fd6f07a30aa14fbc9e1de45cfb6f44db216c0afde99188cde6bb5 +size 21418 diff --git a/game/characters/emotes/03.webp b/game/characters/emotes/03.webp new file mode 100644 index 00000000..54548e27 --- /dev/null +++ b/game/characters/emotes/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0a164b1938610ee2aa4b354ae594b203dbe8e158734de7301dc713032fef12f +size 13094 diff --git a/game/characters/emotes/04.webp b/game/characters/emotes/04.webp new file mode 100644 index 00000000..b7e635f2 --- /dev/null +++ b/game/characters/emotes/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4f288cb5409164a2982dc7233b8fb887f6a9e81ed9cc1606b3004fe9ad332e5 +size 25416 diff --git a/game/characters/emotes/05.webp b/game/characters/emotes/05.webp new file mode 100644 index 00000000..d166b28a --- /dev/null +++ b/game/characters/emotes/05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48d6c37eff667f785cc7416586d932f3e09dfb939c651a6d63fad324d4a8ab84 +size 4374 diff --git a/game/characters/emotes/06.webp b/game/characters/emotes/06.webp new file mode 100644 index 00000000..7d63108d --- /dev/null +++ b/game/characters/emotes/06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4944b9bb50f10f1a2a1cde0a73f146e14e538cdf290238585e6dee52451678f +size 11860 diff --git a/game/characters/emotes/animated/00.webp b/game/characters/emotes/animated/00.webp new file mode 100644 index 00000000..210aaa51 --- /dev/null +++ b/game/characters/emotes/animated/00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85c570984e5e8b16579c0434fea035e1694272a276be12cfc0c3573051034309 +size 34 diff --git a/game/characters/emotes/animated/an1.webp b/game/characters/emotes/animated/an1.webp new file mode 100644 index 00000000..686280ef --- /dev/null +++ b/game/characters/emotes/animated/an1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f91895b90f4038453cb5bce4ab76c717ec1dae1e91e2f4455ba2f025bc97315 +size 522 diff --git a/game/characters/emotes/animated/an2.webp b/game/characters/emotes/animated/an2.webp new file mode 100644 index 00000000..e1cc8736 --- /dev/null +++ b/game/characters/emotes/animated/an2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8592aeb10c0bbc461411dc627510ebad18ccea71b65d15390418755bc1c8a9d1 +size 536 diff --git a/game/characters/emotes/animated/an3.webp b/game/characters/emotes/animated/an3.webp new file mode 100644 index 00000000..ed05b1bc --- /dev/null +++ b/game/characters/emotes/animated/an3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14c265d869dbe9ec644f73bb5a0de81ef90cb35924995a83b33adcb4d86c7dd6 +size 532 diff --git a/game/characters/emotes/animated/emo00.webp b/game/characters/emotes/animated/emo00.webp new file mode 100644 index 00000000..806bc5c5 --- /dev/null +++ b/game/characters/emotes/animated/emo00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1208174c3c9debd0ddb21b084dc7e546c741329b0fdfb34cb3739bb8b852ea5a +size 936 diff --git a/game/characters/emotes/animated/emo01.webp b/game/characters/emotes/animated/emo01.webp new file mode 100644 index 00000000..cf79fd3b --- /dev/null +++ b/game/characters/emotes/animated/emo01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad91eff32f4e1e619c3b229bddc8909b2290017f537c6cd36ee430b5f9242c2b +size 1058 diff --git a/game/characters/emotes/animated/emotion00.webp b/game/characters/emotes/animated/emotion00.webp new file mode 100644 index 00000000..2413d10a --- /dev/null +++ b/game/characters/emotes/animated/emotion00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:984daaa5898fc5c6eedb447349c319525759e6552a754e625883cc087053a881 +size 34 diff --git a/game/characters/emotes/animated/emotion01.webp b/game/characters/emotes/animated/emotion01.webp new file mode 100644 index 00000000..184b8b1b --- /dev/null +++ b/game/characters/emotes/animated/emotion01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:babb45d4431324166faa94f293633b4d607876f6296e7d48a65478389b30e7c4 +size 3012 diff --git a/game/characters/emotes/animated/emotion03.webp b/game/characters/emotes/animated/emotion03.webp new file mode 100644 index 00000000..239558b7 --- /dev/null +++ b/game/characters/emotes/animated/emotion03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f611a93d3d2d33c9a7db1bf69d01542a5e14951781bfcb973c1115dbd34861f4 +size 3020 diff --git a/game/characters/emotes/animated/ex00.webp b/game/characters/emotes/animated/ex00.webp new file mode 100644 index 00000000..b408c88b --- /dev/null +++ b/game/characters/emotes/animated/ex00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66c8f52470a7701e836230a45b00f234e58a7e8fa4546b5edc49dee35b1e8dae +size 34 diff --git a/game/characters/emotes/animated/ex01.webp b/game/characters/emotes/animated/ex01.webp new file mode 100644 index 00000000..4537071f --- /dev/null +++ b/game/characters/emotes/animated/ex01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:820857afc1d9652049f82c6cc00eaa72f50fef0dfed659c855497e61d820ba9d +size 742 diff --git a/game/characters/emotes/animated/ex02.webp b/game/characters/emotes/animated/ex02.webp new file mode 100644 index 00000000..d6883378 --- /dev/null +++ b/game/characters/emotes/animated/ex02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ce1b574e3916c47cb27cf6fde1345d4601fbb397508639a56aacca625b47823 +size 1076 diff --git a/game/characters/emotes/animated/ex03.webp b/game/characters/emotes/animated/ex03.webp new file mode 100644 index 00000000..93cdbb81 --- /dev/null +++ b/game/characters/emotes/animated/ex03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:794431f253013f14f5a95b8027975657c0c4c5f87b24fae18cfe35bf0581dc3f +size 1506 diff --git a/game/characters/emotes/animated/ex04.webp b/game/characters/emotes/animated/ex04.webp new file mode 100644 index 00000000..8f1ce1bb --- /dev/null +++ b/game/characters/emotes/animated/ex04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48b40aafab9342a660951e9fc9b7df3125f2cd91e018899ff4dc47ba773c9f7f +size 1208 diff --git a/game/characters/emotes/animated/excl01.webp b/game/characters/emotes/animated/excl01.webp new file mode 100644 index 00000000..fa78f61a --- /dev/null +++ b/game/characters/emotes/animated/excl01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7b25192af3980d6e5aa18323f64b209888231abc81e8613dcf250a88948cbca +size 1200 diff --git a/game/characters/emotes/animated/excl02.webp b/game/characters/emotes/animated/excl02.webp new file mode 100644 index 00000000..a6f0cbdf --- /dev/null +++ b/game/characters/emotes/animated/excl02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91e25d1b0ce5a6acb3378bd581d45c648ea0ff0a31d48b9015c8cfb6ef3fd4a1 +size 1442 diff --git a/game/characters/emotes/animated/excl03.webp b/game/characters/emotes/animated/excl03.webp new file mode 100644 index 00000000..4de234f1 --- /dev/null +++ b/game/characters/emotes/animated/excl03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bbce7d077ebc103e671809e3b1810cb6291e85422066c196061a87374b34b54 +size 1600 diff --git a/game/characters/emotes/animated/excl04.webp b/game/characters/emotes/animated/excl04.webp new file mode 100644 index 00000000..a6f0cbdf --- /dev/null +++ b/game/characters/emotes/animated/excl04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91e25d1b0ce5a6acb3378bd581d45c648ea0ff0a31d48b9015c8cfb6ef3fd4a1 +size 1442 diff --git a/game/characters/emotes/animated/exl00.webp b/game/characters/emotes/animated/exl00.webp new file mode 100644 index 00000000..2413d10a --- /dev/null +++ b/game/characters/emotes/animated/exl00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:984daaa5898fc5c6eedb447349c319525759e6552a754e625883cc087053a881 +size 34 diff --git a/game/characters/emotes/animated/exl01.webp b/game/characters/emotes/animated/exl01.webp new file mode 100644 index 00000000..070ae0f5 --- /dev/null +++ b/game/characters/emotes/animated/exl01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1365ab5f7110755adade29683664bc491a5d0b5c984e754eb6a6cf6c456a20f +size 1710 diff --git a/game/characters/emotes/animated/exl02.webp b/game/characters/emotes/animated/exl02.webp new file mode 100644 index 00000000..4f8c2d41 --- /dev/null +++ b/game/characters/emotes/animated/exl02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de9a095f34f874752634d29275aa5bdd31decbbb7f8cc9ae4c0b84373d135fd8 +size 2282 diff --git a/game/characters/emotes/animated/exl03.webp b/game/characters/emotes/animated/exl03.webp new file mode 100644 index 00000000..67140be2 --- /dev/null +++ b/game/characters/emotes/animated/exl03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba5fbd5a4076f6507d919d2e74b4b00133c65f9d83734ab8d0f3998dc2d1383f +size 4022 diff --git a/game/characters/emotes/animated/exl04.webp b/game/characters/emotes/animated/exl04.webp new file mode 100644 index 00000000..40e086d9 --- /dev/null +++ b/game/characters/emotes/animated/exl04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff108abeff0ef6409aa91c62c31579b5a9f9332c1ae0637c6285c193cb216c1b +size 3732 diff --git a/game/characters/emotes/animated/exl05.webp b/game/characters/emotes/animated/exl05.webp new file mode 100644 index 00000000..5d046168 --- /dev/null +++ b/game/characters/emotes/animated/exl05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d719dcf3e2b9b2b814e5b8ff65f99c14f38db42452f425748c8fd6e02e78ee4 +size 4070 diff --git a/game/characters/emotes/animated/exl06.webp b/game/characters/emotes/animated/exl06.webp new file mode 100644 index 00000000..40e086d9 --- /dev/null +++ b/game/characters/emotes/animated/exl06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff108abeff0ef6409aa91c62c31579b5a9f9332c1ae0637c6285c193cb216c1b +size 3732 diff --git a/game/characters/emotes/animated/exlaim_01.webp b/game/characters/emotes/animated/exlaim_01.webp new file mode 100644 index 00000000..f7a9714b --- /dev/null +++ b/game/characters/emotes/animated/exlaim_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7cc94499e2fb8f8935c5491251e0faa9902a7f0e84aec38ff2e4830ad066b91 +size 634 diff --git a/game/characters/emotes/animated/exlaim_02.webp b/game/characters/emotes/animated/exlaim_02.webp new file mode 100644 index 00000000..02fb65df --- /dev/null +++ b/game/characters/emotes/animated/exlaim_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a44def3a341da23a0e2f04714514fbe2a9ce0cc314b375d07f1b75936aca03e +size 1092 diff --git a/game/characters/emotes/animated/exlaim_03.webp b/game/characters/emotes/animated/exlaim_03.webp new file mode 100644 index 00000000..60ae2d6d --- /dev/null +++ b/game/characters/emotes/animated/exlaim_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cbd30b0cc99f19e700561d3ad7d76b13d6180524f467123ea4d9b05e58787e7 +size 1486 diff --git a/game/characters/emotes/animated/exlaim_04.webp b/game/characters/emotes/animated/exlaim_04.webp new file mode 100644 index 00000000..9484a207 --- /dev/null +++ b/game/characters/emotes/animated/exlaim_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee6dcbcb8811e05a6fa94f62c6ec502da0e9846e3a78170f812d7eb6077afe02 +size 1688 diff --git a/game/characters/emotes/animated/exlaim_05.webp b/game/characters/emotes/animated/exlaim_05.webp new file mode 100644 index 00000000..2cf6244f --- /dev/null +++ b/game/characters/emotes/animated/exlaim_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e099b6daf302134e71a7a5ab7989c0396055077da98883336020380870533ea3 +size 1468 diff --git a/game/characters/emotes/animated/exlaim_06.webp b/game/characters/emotes/animated/exlaim_06.webp new file mode 100644 index 00000000..1f6aaf78 --- /dev/null +++ b/game/characters/emotes/animated/exlaim_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1c41895f009fe8e39108e86fe338140d42335f3a4f5503961d71caa33291f8b +size 1430 diff --git a/game/characters/emotes/animated/exlaim_07.webp b/game/characters/emotes/animated/exlaim_07.webp new file mode 100644 index 00000000..55190f9b --- /dev/null +++ b/game/characters/emotes/animated/exlaim_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b627b15b60af458a725745503a632eb981c0c773e0f3874bb1982f00198cb3f +size 34 diff --git a/game/characters/emotes/animated/heart_01.webp b/game/characters/emotes/animated/heart_01.webp new file mode 100644 index 00000000..ca315ab4 --- /dev/null +++ b/game/characters/emotes/animated/heart_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcb441f88d4f273dd94c33c61ba0d8b87cd7cd9953e11e18565b07de01256057 +size 3658 diff --git a/game/characters/emotes/animated/hoot_01.webp b/game/characters/emotes/animated/hoot_01.webp new file mode 100644 index 00000000..c43f5291 --- /dev/null +++ b/game/characters/emotes/animated/hoot_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d214fbbecfdd15386a89d60b7e3198416122761abf375bfb5cfaaaeee0fa10c +size 638 diff --git a/game/characters/emotes/animated/hoot_02.webp b/game/characters/emotes/animated/hoot_02.webp new file mode 100644 index 00000000..3f58b810 --- /dev/null +++ b/game/characters/emotes/animated/hoot_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f95ee9f860ba69603f7bf7d3365235a6a336940e600c586dad06ce9ff750355 +size 1026 diff --git a/game/characters/emotes/animated/hoot_03.webp b/game/characters/emotes/animated/hoot_03.webp new file mode 100644 index 00000000..7a834128 --- /dev/null +++ b/game/characters/emotes/animated/hoot_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afd10c2b74a4efa9223d0c528967a8f435f8081689e76fb66f7f1ca728130d17 +size 1436 diff --git a/game/characters/emotes/animated/hoot_04.webp b/game/characters/emotes/animated/hoot_04.webp new file mode 100644 index 00000000..eef690dd --- /dev/null +++ b/game/characters/emotes/animated/hoot_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cd19b009262a354c50941f92ac197d15786e94fb6e9f6765173b1b53c177e80 +size 1922 diff --git a/game/characters/emotes/animated/hoot_05.webp b/game/characters/emotes/animated/hoot_05.webp new file mode 100644 index 00000000..a570e9d0 --- /dev/null +++ b/game/characters/emotes/animated/hoot_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:301f8ae2dfdfa94cc6343eedb98f21311b8dda67422bc4cdd283193c63018a70 +size 2374 diff --git a/game/characters/emotes/animated/hoot_06.webp b/game/characters/emotes/animated/hoot_06.webp new file mode 100644 index 00000000..fbf215ef --- /dev/null +++ b/game/characters/emotes/animated/hoot_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af4f2e8c665d72e4e80a6d3153975b9a3b04e86ff0eff6b813e92a5d9a1a2cac +size 2784 diff --git a/game/characters/emotes/animated/hoot_07.webp b/game/characters/emotes/animated/hoot_07.webp new file mode 100644 index 00000000..05f01588 --- /dev/null +++ b/game/characters/emotes/animated/hoot_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d62474133596f65eac3b5edde097dbf64241b9efe7ffdbb2b8cb0837fc95c4e +size 2730 diff --git a/game/characters/emotes/animated/q1.webp b/game/characters/emotes/animated/q1.webp new file mode 100644 index 00000000..5c9753ec --- /dev/null +++ b/game/characters/emotes/animated/q1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7ef5883c8ebbe4598df42baba1ffda62fd6e091ed9d89fb003636e2b7f146f1 +size 2576 diff --git a/game/characters/emotes/animated/q2.webp b/game/characters/emotes/animated/q2.webp new file mode 100644 index 00000000..92de3b17 --- /dev/null +++ b/game/characters/emotes/animated/q2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14470127dfbb72a8d11d666095a93cf87671ef465d43833dffcc370b41293d72 +size 3112 diff --git a/game/characters/emotes/animated/q3.webp b/game/characters/emotes/animated/q3.webp new file mode 100644 index 00000000..46c197d4 --- /dev/null +++ b/game/characters/emotes/animated/q3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eed8b54c1339079394922efcde268874d38e19de57a016ad3f6634b494571978 +size 3448 diff --git a/game/characters/emotes/animated/q4.webp b/game/characters/emotes/animated/q4.webp new file mode 100644 index 00000000..92de3b17 --- /dev/null +++ b/game/characters/emotes/animated/q4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14470127dfbb72a8d11d666095a93cf87671ef465d43833dffcc370b41293d72 +size 3112 diff --git a/game/characters/emotes/animated/q5.webp b/game/characters/emotes/animated/q5.webp new file mode 100644 index 00000000..92de3b17 --- /dev/null +++ b/game/characters/emotes/animated/q5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14470127dfbb72a8d11d666095a93cf87671ef465d43833dffcc370b41293d72 +size 3112 diff --git a/game/characters/emotes/animated/que1.webp b/game/characters/emotes/animated/que1.webp new file mode 100644 index 00000000..cde69c98 --- /dev/null +++ b/game/characters/emotes/animated/que1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24e6e75f1fb279b0b0f0be458d52c7f74719883a57dbd19af5ba4c133fdb3571 +size 1938 diff --git a/game/characters/emotes/animated/que2.webp b/game/characters/emotes/animated/que2.webp new file mode 100644 index 00000000..187895d9 --- /dev/null +++ b/game/characters/emotes/animated/que2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5eb8d170f8664262fbdbfdaee5dc6c55d7d7c5c623058ae2cd3ee289fd804747 +size 2236 diff --git a/game/characters/emotes/animated/que3.webp b/game/characters/emotes/animated/que3.webp new file mode 100644 index 00000000..8a548470 --- /dev/null +++ b/game/characters/emotes/animated/que3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:667398e86ab3df1568f770e9bd094224c9ff9d034cf965c51a76fe7e0edf0a24 +size 4074 diff --git a/game/characters/emotes/animated/que4.webp b/game/characters/emotes/animated/que4.webp new file mode 100644 index 00000000..2dcdb988 --- /dev/null +++ b/game/characters/emotes/animated/que4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d37d71c3b1f2ca3dfc5e366c6d45e7b8dbb1918c8fc890438fa9f7b96fa3fb67 +size 3694 diff --git a/game/characters/emotes/animated/que5.webp b/game/characters/emotes/animated/que5.webp new file mode 100644 index 00000000..188d56f8 --- /dev/null +++ b/game/characters/emotes/animated/que5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1c7647e10210a02218e65da2fe4da2a0fee253e4576cc7584cdf6a91eb7b28c +size 4046 diff --git a/game/characters/emotes/animated/que6.webp b/game/characters/emotes/animated/que6.webp new file mode 100644 index 00000000..2dcdb988 --- /dev/null +++ b/game/characters/emotes/animated/que6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d37d71c3b1f2ca3dfc5e366c6d45e7b8dbb1918c8fc890438fa9f7b96fa3fb67 +size 3694 diff --git a/game/characters/emotes/animated/s1.webp b/game/characters/emotes/animated/s1.webp new file mode 100644 index 00000000..be6b4601 --- /dev/null +++ b/game/characters/emotes/animated/s1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:907c1e9559290f097aa7f41486aeacaa8ea31e3954604e7e4ea933ee67344199 +size 114 diff --git a/game/characters/emotes/animated/s2.webp b/game/characters/emotes/animated/s2.webp new file mode 100644 index 00000000..6ccaa20e --- /dev/null +++ b/game/characters/emotes/animated/s2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69533ffad137926b60953ab4c59ef8148fa0b81565cf4f89e2fd7f01c8f9a5e2 +size 122 diff --git a/game/characters/emotes/animated/s3.webp b/game/characters/emotes/animated/s3.webp new file mode 100644 index 00000000..172e7aa5 --- /dev/null +++ b/game/characters/emotes/animated/s3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70dd1385fb3db463e36eccb0862c71558156ebc79c60ebf75e4fe534b8299ecd +size 178 diff --git a/game/characters/emotes/animated/s4.webp b/game/characters/emotes/animated/s4.webp new file mode 100644 index 00000000..1fe6b536 --- /dev/null +++ b/game/characters/emotes/animated/s4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:608befed267b51ab97a3163159ed6c2a7adb84593b724a383fc71b2f91c83fd4 +size 176 diff --git a/game/characters/emotes/animated/s5.webp b/game/characters/emotes/animated/s5.webp new file mode 100644 index 00000000..6e2f3094 --- /dev/null +++ b/game/characters/emotes/animated/s5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3bead0bfb4d25787e55f3c8d5dd97450b996a2f9683c7f450dd9d34e88d3d20 +size 232 diff --git a/game/characters/emotes/animated/s6.webp b/game/characters/emotes/animated/s6.webp new file mode 100644 index 00000000..b7e05b4f --- /dev/null +++ b/game/characters/emotes/animated/s6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52c234290ddf557defc4e07fd7e9b5afcc88942cac43a0c21469c97285852755 +size 226 diff --git a/game/characters/emotes/animated/sad_01.webp b/game/characters/emotes/animated/sad_01.webp new file mode 100644 index 00000000..12da081e --- /dev/null +++ b/game/characters/emotes/animated/sad_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62146a57ed4b5d25ce3b4379a5d4ddd471220f49379eea19b34267dbe7fbb6bf +size 1454 diff --git a/game/characters/emotes/animated/sad_02.webp b/game/characters/emotes/animated/sad_02.webp new file mode 100644 index 00000000..31201322 --- /dev/null +++ b/game/characters/emotes/animated/sad_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fac4fdb334cd6de2b8b509e246d4edcee0a195b89fa46ed2727feac40566efe6 +size 1658 diff --git a/game/characters/emotes/animated/sad_03.webp b/game/characters/emotes/animated/sad_03.webp new file mode 100644 index 00000000..d56ebcd5 --- /dev/null +++ b/game/characters/emotes/animated/sad_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c85edf3b3a1d50f414355ba2ac71c8b47af456cc59e6fd8d1c8d9440ab6ead2 +size 1776 diff --git a/game/characters/emotes/animated/sad_04.webp b/game/characters/emotes/animated/sad_04.webp new file mode 100644 index 00000000..f51854b7 --- /dev/null +++ b/game/characters/emotes/animated/sad_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:106825ef647091190f8ce8c4a76f63e936ae3120bb2e6cff6d2ffdaeccf4c3e3 +size 1788 diff --git a/game/characters/emotes/animated/sur1.webp b/game/characters/emotes/animated/sur1.webp new file mode 100644 index 00000000..1d17a5c2 --- /dev/null +++ b/game/characters/emotes/animated/sur1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46bfc972c701dce853bf33ce7183f0d5bdbeeb84d11ebdc8619e459f0d1191f0 +size 1870 diff --git a/game/characters/emotes/animated/sur2.webp b/game/characters/emotes/animated/sur2.webp new file mode 100644 index 00000000..f33bc716 --- /dev/null +++ b/game/characters/emotes/animated/sur2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71764b995789aab4bc514ee7b02d3d43aaf01a7871ea2658ae1a49ca04fe85c2 +size 2350 diff --git a/game/characters/emotes/animated/sur3.webp b/game/characters/emotes/animated/sur3.webp new file mode 100644 index 00000000..9742026d --- /dev/null +++ b/game/characters/emotes/animated/sur3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c996ceeb92b470d76f688753a364429f5b22853bc74c877bb156d405b873d0c1 +size 4000 diff --git a/game/characters/emotes/animated/sur4.webp b/game/characters/emotes/animated/sur4.webp new file mode 100644 index 00000000..2a939c7d --- /dev/null +++ b/game/characters/emotes/animated/sur4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3c56c986e61e8e33f76a9045e4c79ce6c618f6053c514d12cc775b4fa423169 +size 3754 diff --git a/game/characters/emotes/animated/sur5.webp b/game/characters/emotes/animated/sur5.webp new file mode 100644 index 00000000..87295821 --- /dev/null +++ b/game/characters/emotes/animated/sur5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a9e8fe9d210a6db41dd1e7afc95d737dda6a2eee0d390471fadb2786912e4a7 +size 4036 diff --git a/game/characters/emotes/animated/sur6.webp b/game/characters/emotes/animated/sur6.webp new file mode 100644 index 00000000..2a939c7d --- /dev/null +++ b/game/characters/emotes/animated/sur6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3c56c986e61e8e33f76a9045e4c79ce6c618f6053c514d12cc775b4fa423169 +size 3754 diff --git a/game/characters/emotes/animated/t1.webp b/game/characters/emotes/animated/t1.webp new file mode 100644 index 00000000..0b41be47 --- /dev/null +++ b/game/characters/emotes/animated/t1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc6a961bbbcfb50bcb7e6e4ceecf5141044061565c27b58a66fa2e8f54add8f5 +size 662 diff --git a/game/characters/emotes/animated/t2.webp b/game/characters/emotes/animated/t2.webp new file mode 100644 index 00000000..582163ed --- /dev/null +++ b/game/characters/emotes/animated/t2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f5bc9948ab05e549bbc1226e3fbceff99592e92131cd7ec031f0f331f1d33e1 +size 836 diff --git a/game/characters/emotes/animated/t3.webp b/game/characters/emotes/animated/t3.webp new file mode 100644 index 00000000..d5b2b30a --- /dev/null +++ b/game/characters/emotes/animated/t3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a865a2fa7a493b7078e449870eacf3982f9163bffa241e9c842f6e91efa755f8 +size 816 diff --git a/game/characters/emotes/animated/t4.webp b/game/characters/emotes/animated/t4.webp new file mode 100644 index 00000000..8adfc432 --- /dev/null +++ b/game/characters/emotes/animated/t4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce4e6ed612645fda6b7c25bdd1f8b68e1b736a576578970bbba97014bcf52b3f +size 660 diff --git a/game/characters/emotes/animated/thought_01.webp b/game/characters/emotes/animated/thought_01.webp new file mode 100644 index 00000000..9060f0d7 --- /dev/null +++ b/game/characters/emotes/animated/thought_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09cd9aa85061bafdb96e34fcbb44d6e659d92d375cfb8f1aa7151c3ab80f387e +size 1432 diff --git a/game/characters/emotes/animated/thought_02.webp b/game/characters/emotes/animated/thought_02.webp new file mode 100644 index 00000000..ed9ee8ff --- /dev/null +++ b/game/characters/emotes/animated/thought_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a3747de92b998ae1a265e88e71dab1c1b557a3ccea2033c17bfbb9254aec858 +size 1406 diff --git a/game/characters/emotes/blank.webp b/game/characters/emotes/blank.webp new file mode 100644 index 00000000..6fbb7bcc --- /dev/null +++ b/game/characters/emotes/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4f16469f76fa22ea43a2346407a802434ae02dff4da1c40bec6af146a42feae +size 94 diff --git a/game/characters/genie/angry.webp b/game/characters/genie/angry.webp new file mode 100644 index 00000000..bf8aa6be --- /dev/null +++ b/game/characters/genie/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2977d27488b63e68be3d92525b4b5c5d225a0e53e220df44ea87bf4c2bea516e +size 10654 diff --git a/game/characters/genie/base.webp b/game/characters/genie/base.webp new file mode 100644 index 00000000..9253162b --- /dev/null +++ b/game/characters/genie/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0484d04fcbf27cf86e56800bf03e62edfa0417f060a257b1d30f87902a425ef +size 218008 diff --git a/game/characters/genie/base/average_covered.webp b/game/characters/genie/base/average_covered.webp new file mode 100644 index 00000000..a85aba3f --- /dev/null +++ b/game/characters/genie/base/average_covered.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:576085e6d7e79ca52f845d180206949153e9ef9d1999f6a96f6170c77df3df68 +size 205676 diff --git a/game/characters/genie/base/average_nude.webp b/game/characters/genie/base/average_nude.webp new file mode 100644 index 00000000..98ef451c --- /dev/null +++ b/game/characters/genie/base/average_nude.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92adf6d2504d9927aef82893067f64fa57a487ad754d89acfd8b047eb55361a4 +size 202302 diff --git a/game/characters/genie/base/b03.webp b/game/characters/genie/base/b03.webp new file mode 100644 index 00000000..d8d0276d --- /dev/null +++ b/game/characters/genie/base/b03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5d0330b920c394222e4b0d7bab302af42cbee1cfcade18f64c353d9303c7ea2 +size 61522 diff --git a/game/characters/genie/base/b04.webp b/game/characters/genie/base/b04.webp new file mode 100644 index 00000000..4190a65d --- /dev/null +++ b/game/characters/genie/base/b04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:989c60de4d394f31d9f66f6d3150301ad01fbc34e5c8dd597757a5a18047ff78 +size 49014 diff --git a/game/characters/genie/base/b05.webp b/game/characters/genie/base/b05.webp new file mode 100644 index 00000000..379f9214 --- /dev/null +++ b/game/characters/genie/base/b05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aea5330d498495da3b4080cc7a935955931bafc81236e3fb9c0400602c0f9d6f +size 51754 diff --git a/game/characters/genie/base/b06.webp b/game/characters/genie/base/b06.webp new file mode 100644 index 00000000..849e4213 --- /dev/null +++ b/game/characters/genie/base/b06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b73b86636762feca9f75a3185b425dbac02e30c3ea953bb7e4eb8617be5d7f64 +size 80102 diff --git a/game/characters/genie/base/base.webp b/game/characters/genie/base/base.webp new file mode 100644 index 00000000..f12014a5 --- /dev/null +++ b/game/characters/genie/base/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2781affe580322d4dd8eb1034406ac207fab43c8113d9fe91ccd56362455d69f +size 359536 diff --git a/game/characters/genie/base/grab_dick.webp b/game/characters/genie/base/grab_dick.webp new file mode 100644 index 00000000..285b95c6 --- /dev/null +++ b/game/characters/genie/base/grab_dick.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:377ab539619700da9320fe7abf0f2b9be4a02e80722f9fb1fd270459114d08e2 +size 368914 diff --git a/game/characters/genie/base/hard.webp b/game/characters/genie/base/hard.webp new file mode 100644 index 00000000..2fa8f762 --- /dev/null +++ b/game/characters/genie/base/hard.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdfd53984eb4801c0efdf40e48144a500a84587c70dfba5a9d23fe9947b818ca +size 383978 diff --git a/game/characters/genie/base/muscular_covered.webp b/game/characters/genie/base/muscular_covered.webp new file mode 100644 index 00000000..22aef6a5 --- /dev/null +++ b/game/characters/genie/base/muscular_covered.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c3b60c22758bfb1adb1b8c0146e2f04a8583b4220689204ae4a0f5c12909716 +size 266834 diff --git a/game/characters/genie/base/muscular_nude.webp b/game/characters/genie/base/muscular_nude.webp new file mode 100644 index 00000000..4740a071 --- /dev/null +++ b/game/characters/genie/base/muscular_nude.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:109dd852789924883f695a81b0d62e28ba9c6fb3f7f05b6b70783a0235c6730d +size 292478 diff --git a/game/characters/genie/base/open.webp b/game/characters/genie/base/open.webp new file mode 100644 index 00000000..481da0ba --- /dev/null +++ b/game/characters/genie/base/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0343ee6e8712a1174d77e22be636093384866455a4ea1bf95f12a2f6c58fe64f +size 369946 diff --git a/game/characters/genie/base/showing.webp b/game/characters/genie/base/showing.webp new file mode 100644 index 00000000..b7a756e5 --- /dev/null +++ b/game/characters/genie/base/showing.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce396d21fddac3a1701c97bbc045547833e209d1eb2ecb8a9c5edec13c9458e2 +size 379408 diff --git a/game/characters/genie/chibis/drinking/01.webp b/game/characters/genie/chibis/drinking/01.webp new file mode 100644 index 00000000..bb7a1f6a --- /dev/null +++ b/game/characters/genie/chibis/drinking/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3d061572264a36e41f7ff2f9780a1fd9cd9d1cc03caaf10c4d9e4e168653e41 +size 75850 diff --git a/game/characters/genie/chibis/drinking/01_day.webp b/game/characters/genie/chibis/drinking/01_day.webp new file mode 100644 index 00000000..e7af6f93 --- /dev/null +++ b/game/characters/genie/chibis/drinking/01_day.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb791a039afdcbfb7fc4846ed382c42234c978af67967de03c43d7abb1728002 +size 77504 diff --git a/game/characters/genie/chibis/drinking/02.webp b/game/characters/genie/chibis/drinking/02.webp new file mode 100644 index 00000000..a61fec1f --- /dev/null +++ b/game/characters/genie/chibis/drinking/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e72020d6b509fbaa4c380781985f4250935240cd767df0f81b346719773c2045 +size 75704 diff --git a/game/characters/genie/chibis/drinking/02_day.webp b/game/characters/genie/chibis/drinking/02_day.webp new file mode 100644 index 00000000..be8cea30 --- /dev/null +++ b/game/characters/genie/chibis/drinking/02_day.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:508e2cbd0ff7a96393ce592ef342ac9136cd66159acd50814e0e71fdf5731d72 +size 77308 diff --git a/game/characters/genie/chibis/drinking/03.webp b/game/characters/genie/chibis/drinking/03.webp new file mode 100644 index 00000000..5d17f1f9 --- /dev/null +++ b/game/characters/genie/chibis/drinking/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3277059e726adf2105a8d94937a8ed7ca952d8925f4a8a4c6199e35aafa39a83 +size 76532 diff --git a/game/characters/genie/chibis/drinking/03_day.webp b/game/characters/genie/chibis/drinking/03_day.webp new file mode 100644 index 00000000..acfa5702 --- /dev/null +++ b/game/characters/genie/chibis/drinking/03_day.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4a10350964d2f46898756d68a9d372d82e485b0131f31e6ea919dcf2b029587 +size 78268 diff --git a/game/characters/genie/chibis/drinking/04.webp b/game/characters/genie/chibis/drinking/04.webp new file mode 100644 index 00000000..87b3d4db --- /dev/null +++ b/game/characters/genie/chibis/drinking/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:420b1514e2fe549aa6741beb3aba51fe880d71458df3f000da4e106b3a59c36e +size 77030 diff --git a/game/characters/genie/chibis/drinking/04_day.webp b/game/characters/genie/chibis/drinking/04_day.webp new file mode 100644 index 00000000..85ab3571 --- /dev/null +++ b/game/characters/genie/chibis/drinking/04_day.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8896694e64b9683831ef2e1e91f5b29c17e3474d179265249f198a96a288de4 +size 78808 diff --git a/game/characters/genie/chibis/ghost_stand.webp b/game/characters/genie/chibis/ghost_stand.webp new file mode 100644 index 00000000..dfe6f195 --- /dev/null +++ b/game/characters/genie/chibis/ghost_stand.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bcf8b2beaa158c67ee1c41d54f7b31a8c1555729252b1a6a2242a4e14a2544c4 +size 58862 diff --git a/game/characters/genie/chibis/ghost_stand2.webp b/game/characters/genie/chibis/ghost_stand2.webp new file mode 100644 index 00000000..408fceb1 --- /dev/null +++ b/game/characters/genie/chibis/ghost_stand2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d20e69b503377d17ea231d721280992bbc6e45f469168c2b22df5a16043ebf8b +size 48374 diff --git a/game/characters/genie/chibis/grab/grab_01.webp b/game/characters/genie/chibis/grab/grab_01.webp new file mode 100644 index 00000000..d3299bf4 --- /dev/null +++ b/game/characters/genie/chibis/grab/grab_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a577912f85aaed71ec5c15be37d830633854b7266484e4303860b96a7b5df217 +size 51014 diff --git a/game/characters/genie/chibis/grab/grab_02.webp b/game/characters/genie/chibis/grab/grab_02.webp new file mode 100644 index 00000000..a571f287 --- /dev/null +++ b/game/characters/genie/chibis/grab/grab_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:960913b543b47af20188b1796d17f948bb8427c3a3e000aab0cf585ab4cfcfec +size 52302 diff --git a/game/characters/genie/chibis/grab/grab_03.webp b/game/characters/genie/chibis/grab/grab_03.webp new file mode 100644 index 00000000..ff58c15b --- /dev/null +++ b/game/characters/genie/chibis/grab/grab_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3af61e65d6b9eb449aa770ea2baa4a72e5e820464a546467be232d7a48e87fdf +size 52924 diff --git a/game/characters/genie/chibis/grab/grab_04.webp b/game/characters/genie/chibis/grab/grab_04.webp new file mode 100644 index 00000000..6b09f55a --- /dev/null +++ b/game/characters/genie/chibis/grab/grab_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe4d7493bd96d72cd580df87a72e45df76d9425e64e7e8510fdd377e679baa1c +size 54020 diff --git a/game/characters/genie/chibis/grab/grab_05.webp b/game/characters/genie/chibis/grab/grab_05.webp new file mode 100644 index 00000000..5e606e20 --- /dev/null +++ b/game/characters/genie/chibis/grab/grab_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51d2db921d69966f281f51261cee8c55f826546aac3d784ba3308dc7aee925cd +size 54516 diff --git a/game/characters/genie/chibis/idle/desk_01.webp b/game/characters/genie/chibis/idle/desk_01.webp new file mode 100644 index 00000000..5741ea71 --- /dev/null +++ b/game/characters/genie/chibis/idle/desk_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5999179f3432c6256544ef8b2ee8c8ea7f5da087dadbb62b3b98933c3460cb5 +size 108842 diff --git a/game/characters/genie/chibis/idle/desk_02.webp b/game/characters/genie/chibis/idle/desk_02.webp new file mode 100644 index 00000000..fc984362 --- /dev/null +++ b/game/characters/genie/chibis/idle/desk_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:299240f5f11311e457198c860375740c124d95ecea29a52cbcc6e9e3fde19b3d +size 108516 diff --git a/game/characters/genie/chibis/idle/desk_03.webp b/game/characters/genie/chibis/idle/desk_03.webp new file mode 100644 index 00000000..e0d18a53 --- /dev/null +++ b/game/characters/genie/chibis/idle/desk_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:beef5a6cc800ff277ef73c76090fb13c1198b99e4b95aaf2e07018fbc5fa0be0 +size 108600 diff --git a/game/characters/genie/chibis/idle/desk_04.webp b/game/characters/genie/chibis/idle/desk_04.webp new file mode 100644 index 00000000..618f5d1f --- /dev/null +++ b/game/characters/genie/chibis/idle/desk_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:629095ac3fd052702fc7856d14f3566cfee0713fc814303d538f7ad6dd7a97ea +size 110762 diff --git a/game/characters/genie/chibis/idle/desk_hover.webp b/game/characters/genie/chibis/idle/desk_hover.webp new file mode 100644 index 00000000..6205c42e --- /dev/null +++ b/game/characters/genie/chibis/idle/desk_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f5590c90dfeaf59b0e0a37f6d3a9dc7d02b5f4fde7d132d83810d4fad22b91d +size 111778 diff --git a/game/characters/genie/chibis/jerk_off/01.webp b/game/characters/genie/chibis/jerk_off/01.webp new file mode 100644 index 00000000..09ab3dd5 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:550287f3c9a739327faae8bf81f1826a4147d0e8cf6422917b6fb31693d8dcb8 +size 67556 diff --git a/game/characters/genie/chibis/jerk_off/02.webp b/game/characters/genie/chibis/jerk_off/02.webp new file mode 100644 index 00000000..4202ab3f --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a1ac45ea59132031d4a6144463e94077387890609b915a862915615b1e2ab87 +size 66550 diff --git a/game/characters/genie/chibis/jerk_off/03.webp b/game/characters/genie/chibis/jerk_off/03.webp new file mode 100644 index 00000000..be6bf4d5 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:150def075d22cd8fd3e672923f66c16c32773a8730df29909ee6c23fbce3655f +size 67130 diff --git a/game/characters/genie/chibis/jerk_off/04.webp b/game/characters/genie/chibis/jerk_off/04.webp new file mode 100644 index 00000000..00692c3c --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5dfe30a76de18a6e1a59bf29be9770365c457e02240b275d2c415d3b69c01dfd +size 62560 diff --git a/game/characters/genie/chibis/jerk_off/dick_out(old).webp b/game/characters/genie/chibis/jerk_off/dick_out(old).webp new file mode 100644 index 00000000..847e7562 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/dick_out(old).webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbebb133ce358ae2178df9410cb14aa2473d779b912cc6d60c074fdc6cd3a6b1 +size 81274 diff --git a/game/characters/genie/chibis/jerk_off/dick_out.webp b/game/characters/genie/chibis/jerk_off/dick_out.webp new file mode 100644 index 00000000..518dfd7e --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/dick_out.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b34d565d728e772b355e18ad7c22b6158d90f21a3ace19a946c6172857e4bb7 +size 74526 diff --git a/game/characters/genie/chibis/jerk_off/dick_out_normal.webp b/game/characters/genie/chibis/jerk_off/dick_out_normal.webp new file mode 100644 index 00000000..b420ac74 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/dick_out_normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7889573efeb68dfbb1a6c9c7d158b591aaece6ed834bc547be2ece405a14e9d8 +size 75982 diff --git a/game/characters/genie/chibis/jerk_off/dick_out_shocked.webp b/game/characters/genie/chibis/jerk_off/dick_out_shocked.webp new file mode 100644 index 00000000..0555b30a --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/dick_out_shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e2dfb4d4695c74294026b6b9e42f4928ca06f001880ba87da90d9c7fb51e47b +size 76532 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_01.webp b/game/characters/genie/chibis/jerk_off/sperm_short_01.webp new file mode 100644 index 00000000..d578bc10 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ef305b94f927aeb8d7df4adb1c8937aaf639b254ebc590e4bba89c659418f2a +size 388 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_02.webp b/game/characters/genie/chibis/jerk_off/sperm_short_02.webp new file mode 100644 index 00000000..81057385 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a6ee956ff755958ab7e1cc55c5db4da2ec64db177ab42d1004ef901f7a68f92 +size 456 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_03.webp b/game/characters/genie/chibis/jerk_off/sperm_short_03.webp new file mode 100644 index 00000000..d6cc0f8e --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba0b69f986aeda1e368e3430197f1529b3c03ceecf069839f8117064f9fb453f +size 550 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_04.webp b/game/characters/genie/chibis/jerk_off/sperm_short_04.webp new file mode 100644 index 00000000..948c46fd --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:311d5b291c0d4ab7bf7fa66619afcf32f9c41df822b46ec36c209959a6ae0c9d +size 550 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_05.webp b/game/characters/genie/chibis/jerk_off/sperm_short_05.webp new file mode 100644 index 00000000..8b46c6c3 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b3b378f2c23f76239406d0103089fae7e942edd1df391de6c1b0a208f721a09 +size 606 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_06.webp b/game/characters/genie/chibis/jerk_off/sperm_short_06.webp new file mode 100644 index 00000000..a8105257 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff6b4de75629cf671b65b302ba51a542ce4adb41d2b23796a6fd905d100adafe +size 660 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_07.webp b/game/characters/genie/chibis/jerk_off/sperm_short_07.webp new file mode 100644 index 00000000..c4a46c40 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d86142bc382a2f33e253045a6251f7239db7a946c0bea80fb3bab52643b65c33 +size 668 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_08.webp b/game/characters/genie/chibis/jerk_off/sperm_short_08.webp new file mode 100644 index 00000000..8e2856da --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:099053136f8989e94c74b9181b584dc73fb2ea91c3e1322fadd5d14533a23173 +size 658 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_09.webp b/game/characters/genie/chibis/jerk_off/sperm_short_09.webp new file mode 100644 index 00000000..bc9d88e9 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc47453b39df6e9f30bb4c8cc5da3c35ccb28acfa6117dfbeb05f3386df3d6c8 +size 666 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_10.webp b/game/characters/genie/chibis/jerk_off/sperm_short_10.webp new file mode 100644 index 00000000..a1b23967 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d688b253cc2243eafab51c20b3b775396f6b0b87b42b24f67e818e5df2f950c +size 682 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_11.webp b/game/characters/genie/chibis/jerk_off/sperm_short_11.webp new file mode 100644 index 00000000..e5f1655d --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27cf46843a3b02e39186f502bd47d66be079e48abbf1d54c5052cf779478378e +size 690 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_12.webp b/game/characters/genie/chibis/jerk_off/sperm_short_12.webp new file mode 100644 index 00000000..4e6d4922 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ca9a2670ea4ac571e9c0be4c6b78501306cd36766821a5fd3bf47803c63229a +size 660 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_13.webp b/game/characters/genie/chibis/jerk_off/sperm_short_13.webp new file mode 100644 index 00000000..883d638f --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08ebf021feda8231811542499df44c954c03a9450cc2e4759ba474ac7218bbc3 +size 648 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_01.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_01.webp new file mode 100644 index 00000000..d578bc10 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ef305b94f927aeb8d7df4adb1c8937aaf639b254ebc590e4bba89c659418f2a +size 388 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_02.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_02.webp new file mode 100644 index 00000000..74933e5c --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:121ddb2d68e448181cff811799f0620b95aa336b9971fec4e116982c2f186092 +size 366 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_03.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_03.webp new file mode 100644 index 00000000..d64c8376 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c89f704ab508596c381a4f17a89995dd8e7a9e5967c46c57899561ed6c20f18a +size 476 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_04.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_04.webp new file mode 100644 index 00000000..347c91e4 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:defab520d59c91023b7806e900bd9a44378bbe67af5e5d7e2a1430efc1bcb034 +size 474 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_05.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_05.webp new file mode 100644 index 00000000..01bde1cd --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cdc76d8c22a18826f7f4b35fe4fb5e325af73928a4585c9ed1c390b8994b6d51 +size 540 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_06.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_06.webp new file mode 100644 index 00000000..5ede66b9 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:351208efbed84c18aae55dcd60b1c66870866b8d1768c3c60f4e39f24bff55c8 +size 578 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_07.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_07.webp new file mode 100644 index 00000000..1fa9d4c6 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79a428fe217dcab6dd1d278e2b6050c81ae854a6a957f20e7c78d9cd31a90293 +size 568 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_08.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_08.webp new file mode 100644 index 00000000..fee8c7e1 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3254de4cf8bc9d7156db62cd3814bb5d2a37f0a6d4f1ae3dfc0c899b6a9abd46 +size 550 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_09.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_09.webp new file mode 100644 index 00000000..44f92182 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7597f8a581ac3e540abc6093d9a0e782476cdbb5bd196aeb1249ef90ec018a38 +size 546 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_10.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_10.webp new file mode 100644 index 00000000..7f73115f --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c1086832f5a959ecbe1fa4fa8fd7c091f66473aa500cdaa3186a09e3acdfcd7 +size 574 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_11.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_11.webp new file mode 100644 index 00000000..22a7cc1a --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a98a428952ea13bab40dbecbc9a7c04c0731ba0fb8c292d35b62eb84b87da74 +size 574 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_12.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_12.webp new file mode 100644 index 00000000..5b146359 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42a769265959a5f9470f039fffc1714189a37f3f0acc6448dc88536ff1554d55 +size 558 diff --git a/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_13.webp b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_13.webp new file mode 100644 index 00000000..6ee9d6cb --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_short_bottomless_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05bea6ce52db7e7e93e0bd4b58b7a568a821bf54ff0f023eeb2f3835418fecfd +size 520 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_01.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_01.webp new file mode 100644 index 00000000..79434f68 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8dadc7eb276b5f709a10073aa7c29802fc68e22333406f0c5b136d776d98f81 +size 374 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_02.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_02.webp new file mode 100644 index 00000000..3968b83f --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b50145c9c535184cd5f74d8911d27e3fb0058d1d0d8e6065820a7a789e1ab962 +size 558 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_03.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_03.webp new file mode 100644 index 00000000..a14c68ae --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82facb6abaf2df40c1faab7de620d5059f6dcce69bb5249632a011e5aa677a48 +size 672 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_04.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_04.webp new file mode 100644 index 00000000..2246eda0 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44c02b3783a2205936900115ec41fe342f4f981e23b72b0ebb98e45a086df086 +size 674 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_05.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_05.webp new file mode 100644 index 00000000..f49a66d4 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6630ffec77a2e5bb97a3a5865412b8329e8300f5193be9e94066dbb096afa95e +size 668 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_06.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_06.webp new file mode 100644 index 00000000..42c1c07b --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca0ef390c9cc4ffdd3914c0bca01a04467d61e1ac42c8e08cf13536e3200f9ba +size 772 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_07.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_07.webp new file mode 100644 index 00000000..2b5ebe1c --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5cceda4c8108cdbfdb794fde759f7cbed3c77c672a20b26dc6888e7aca5d68a +size 920 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_08.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_08.webp new file mode 100644 index 00000000..94ad1a6e --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08b6651b76505e7e04ba5a013024cefc9cf13636e75a13d790997b0da9965799 +size 964 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_09.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_09.webp new file mode 100644 index 00000000..c0cf9770 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99d5a0d5bf48fa7bb307cb3288357afea614f49ae1327eaf79d8d1e59f48a86d +size 890 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_10.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_10.webp new file mode 100644 index 00000000..4aad1178 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:904c90b94b3e7c061942f22905a1d557f3a509fecf4470bc080f11807a147a7a +size 826 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_11.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_11.webp new file mode 100644 index 00000000..50571c4f --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b6297af7b2752930b9e45a814cdbb5dd0b3a12f500631f36b991cb199134910 +size 926 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_12.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_12.webp new file mode 100644 index 00000000..9b73aee4 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b1c32c87c743b42c0105244c50bba72636d3d9f39165b337af8a7a38123fb6b +size 1000 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_13.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_13.webp new file mode 100644 index 00000000..c451926f --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb4c938a66ba4ac9988078ec2a184e1ed2dd8538ab102ea419ca4c1d6a296eb1 +size 1074 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_14.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_14.webp new file mode 100644 index 00000000..ce8fe141 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b912a17493d3d36fb224f08c75db0d2d36c33c20b8aadd4fc13eab7742a34bf3 +size 1132 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_15.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_15.webp new file mode 100644 index 00000000..320360ca --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ed9dfbdc0fff7551c35c116fd7b72db68508383765a60359c528f0d031be057 +size 1130 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_16.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_16.webp new file mode 100644 index 00000000..1381c685 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09241c8e8e9e8220e6127a0acc577e08bf62daca9fb87e59edd37a112bd31420 +size 1110 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_17.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_17.webp new file mode 100644 index 00000000..a1ad207b --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5149ff8b19a473007ca6e3f22f34a02256f95736d1e9edcb61c403d6849dafb +size 1080 diff --git a/game/characters/genie/chibis/jerk_off/sperm_wide_18.webp b/game/characters/genie/chibis/jerk_off/sperm_wide_18.webp new file mode 100644 index 00000000..a8b4f90d --- /dev/null +++ b/game/characters/genie/chibis/jerk_off/sperm_wide_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e4e43fe17b4d272a2814e3c604645bbf7c72f76d9f6be275fd4aff641c3915b +size 990 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_01.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_01.webp new file mode 100644 index 00000000..8c051218 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22d343ba7b6357b3de3cd37118ed026e9cdcfad1589fde9c914fe7cbe39ca8a9 +size 109784 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_02.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_02.webp new file mode 100644 index 00000000..107c77fc --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0aa8a247807cab1165b25f97e7d0df8f016e16f62618b804d7f9440581f102e +size 109806 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_03.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_03.webp new file mode 100644 index 00000000..68724798 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02f3269a710f2e635cc711752c63374460a5dfb16641b33a43b2c8a60e3cdcbc +size 109454 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_pause.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_pause.webp new file mode 100644 index 00000000..ae81a75b --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_pause.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2071274d3a4d0f68149cea16f4ebd8d3838d673b67cce4b5213d9ceae7fedf92 +size 109148 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_01.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_01.webp new file mode 100644 index 00000000..0425de15 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:865b1b759e8957e605fd443ee85e3fe7a42acea76a4556aa0688b14623e0c4f5 +size 230 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_02.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_02.webp new file mode 100644 index 00000000..1c367441 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bba7fa19ab6a23f1292b281fc1e92774655f53d5f256f907c34393f09b562500 +size 524 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_03.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_03.webp new file mode 100644 index 00000000..3a59407f --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e6e5d33ce52f7728b1f3cfea51ef031d335fc27ab5f6040ddd05b35edad82a5 +size 678 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_04.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_04.webp new file mode 100644 index 00000000..307d78e9 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e00672eecbcf9d8fef9fd8e5297ef1e8e6a54aaa863223d9ff2a96b0ef4ef1e +size 746 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_05.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_05.webp new file mode 100644 index 00000000..aa409e2c --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b95e3a10cc1b4a9f6ec9746920bffa07b8d8663b69f9c926139df89848756e0a +size 688 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_06.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_06.webp new file mode 100644 index 00000000..0320a905 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e59d78442d760ee1c110300a5bd41dd80d6ef880176556e63cdd010c1971963 +size 536 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_07.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_07.webp new file mode 100644 index 00000000..273a853e --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:179d6681160cf8ebd7f4b46f5b6338c04db728fa1717a7de67554eef53118168 +size 418 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_08.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_08.webp new file mode 100644 index 00000000..a5c47fec --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd319c29269a837c3c06bdc3c23db8dc4792c70dd55dd7532e1a09ceaacbf051 +size 394 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_09.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_09.webp new file mode 100644 index 00000000..d77f26ff --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:900a9aea26fbcca4135f86bf95256e75b4c07b696b1de2aea3da917b02ab55cc +size 410 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_10.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_10.webp new file mode 100644 index 00000000..d55ef5de --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3884ff3885b627f16bb927f88cb1ff0ec5d9e27418a030442f3f4522287b7e7f +size 318 diff --git a/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_11.webp b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_11.webp new file mode 100644 index 00000000..48529eb0 --- /dev/null +++ b/game/characters/genie/chibis/jerk_off_behind_desk/desk_sperm_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37cee23e4267fdf766caf2581827bfef6c198238bd9869e1a651c2d63f128858 +size 296 diff --git a/game/characters/genie/chibis/petting/petting_01.webp b/game/characters/genie/chibis/petting/petting_01.webp new file mode 100644 index 00000000..974488cb --- /dev/null +++ b/game/characters/genie/chibis/petting/petting_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4985d8d3178f694c68b47a1c20e05a441193423d78ec28c3f5f7e897ed947e8b +size 50178 diff --git a/game/characters/genie/chibis/petting/petting_02.webp b/game/characters/genie/chibis/petting/petting_02.webp new file mode 100644 index 00000000..e23823a0 --- /dev/null +++ b/game/characters/genie/chibis/petting/petting_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dfb5c183ecd165d031b1e47e2284337b87af725cb4e4dee3ccab8c63ac0768c +size 54878 diff --git a/game/characters/genie/chibis/petting/petting_03.webp b/game/characters/genie/chibis/petting/petting_03.webp new file mode 100644 index 00000000..69197784 --- /dev/null +++ b/game/characters/genie/chibis/petting/petting_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18c6191a0335766a8b39b7dda27d80a39685e63281a32d64070c2248a3008b1f +size 56080 diff --git a/game/characters/genie/chibis/petting/petting_04.webp b/game/characters/genie/chibis/petting/petting_04.webp new file mode 100644 index 00000000..ee892c20 --- /dev/null +++ b/game/characters/genie/chibis/petting/petting_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba56acf4490866ddfaeeaf68b2b2fd2752c721a001241270c3ea94007b73b5ed +size 59128 diff --git a/game/characters/genie/chibis/petting/petting_05.webp b/game/characters/genie/chibis/petting/petting_05.webp new file mode 100644 index 00000000..c8d0a401 --- /dev/null +++ b/game/characters/genie/chibis/petting/petting_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:987de2dedf303a3ef3455c515a6e7a9ea338d3405bdc4851b883c41d7e028208 +size 57842 diff --git a/game/characters/genie/chibis/petting/petting_06.webp b/game/characters/genie/chibis/petting/petting_06.webp new file mode 100644 index 00000000..52a70ff0 --- /dev/null +++ b/game/characters/genie/chibis/petting/petting_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54b123e5c05c2802d13a852a9b2d297ad661ea45e3206ed3099f1d7b108c0a72 +size 57772 diff --git a/game/characters/genie/chibis/reading/01.webp b/game/characters/genie/chibis/reading/01.webp new file mode 100644 index 00000000..b8258ae9 --- /dev/null +++ b/game/characters/genie/chibis/reading/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3fcd67d506a51f02a1037a3dd69149546e71ffae3e9f957988934465d73ae698 +size 70672 diff --git a/game/characters/genie/chibis/reading/02.webp b/game/characters/genie/chibis/reading/02.webp new file mode 100644 index 00000000..6ee7c7f0 --- /dev/null +++ b/game/characters/genie/chibis/reading/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99a8982676f8d45d6f966736f2501a3573aa18fd1638df95dd880e231147896c +size 71702 diff --git a/game/characters/genie/chibis/reading/03.webp b/game/characters/genie/chibis/reading/03.webp new file mode 100644 index 00000000..eac4a89f --- /dev/null +++ b/game/characters/genie/chibis/reading/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e58e02e721b0f12718e79f68c73440dfd4e0e991be7907994279a9df9bef6a9a +size 70524 diff --git a/game/characters/genie/chibis/reading/04.webp b/game/characters/genie/chibis/reading/04.webp new file mode 100644 index 00000000..caf2a098 --- /dev/null +++ b/game/characters/genie/chibis/reading/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aafd3ecd0f80989b747c4c571f89daf31f27cde8958f111eb8ec526ec6e8551a +size 70366 diff --git a/game/characters/genie/chibis/reading/05.webp b/game/characters/genie/chibis/reading/05.webp new file mode 100644 index 00000000..d84faca6 --- /dev/null +++ b/game/characters/genie/chibis/reading/05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:843f51da232b2d8f78efab1724ccb6f10da1033a5a0c07bc4c0827a58bf70b90 +size 70624 diff --git a/game/characters/genie/chibis/reading/06.webp b/game/characters/genie/chibis/reading/06.webp new file mode 100644 index 00000000..8793d9d7 --- /dev/null +++ b/game/characters/genie/chibis/reading/06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69cbb9a2d0bfba35508f7d87ec4489d0f15c2bf64ef7aceae06bdbe95aed64cc +size 71642 diff --git a/game/characters/genie/chibis/reading/07.webp b/game/characters/genie/chibis/reading/07.webp new file mode 100644 index 00000000..8c2ff5b3 --- /dev/null +++ b/game/characters/genie/chibis/reading/07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b5a4952bf64040340cc9cccc4e831e7f77570e0e1de3596b5381d6ae8c3d952 +size 68006 diff --git a/game/characters/genie/chibis/rummage/rum_01.webp b/game/characters/genie/chibis/rummage/rum_01.webp new file mode 100644 index 00000000..7fdff01d --- /dev/null +++ b/game/characters/genie/chibis/rummage/rum_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3286adf91fc12a040c4e31255b76f9dd3b98a2cc4d155fdd2d4c64b1c03f94c +size 54940 diff --git a/game/characters/genie/chibis/rummage/rum_02.webp b/game/characters/genie/chibis/rummage/rum_02.webp new file mode 100644 index 00000000..2bbf49f6 --- /dev/null +++ b/game/characters/genie/chibis/rummage/rum_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9d2248ac2281b332f225ccde17d6f6d6645f0a443ea9ee22e6d38893019ef8d +size 55058 diff --git a/game/characters/genie/chibis/rummage/rum_03.webp b/game/characters/genie/chibis/rummage/rum_03.webp new file mode 100644 index 00000000..0742c7df --- /dev/null +++ b/game/characters/genie/chibis/rummage/rum_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa717ce03f9088a223010b65d88fe52a6943c18fe6c4372ab64238a2c6096047 +size 55216 diff --git a/game/characters/genie/chibis/rummage/rum_04.webp b/game/characters/genie/chibis/rummage/rum_04.webp new file mode 100644 index 00000000..416c3dab --- /dev/null +++ b/game/characters/genie/chibis/rummage/rum_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1760ad10d70d9b0fa42f1c7cd543d57de2d1edd6badd5c9a612c36f8a421b638 +size 55098 diff --git a/game/characters/genie/chibis/shocked/01.webp b/game/characters/genie/chibis/shocked/01.webp new file mode 100644 index 00000000..82bc568a --- /dev/null +++ b/game/characters/genie/chibis/shocked/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e275c61b01a9ebdda686967b4dd5279059a00db9af05fc2052e54554d38391f4 +size 67824 diff --git a/game/characters/genie/chibis/sit.webp b/game/characters/genie/chibis/sit.webp new file mode 100644 index 00000000..383231f1 --- /dev/null +++ b/game/characters/genie/chibis/sit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f333eb8dd4625bbfcc7aef5b12593263f2b12f9a04e609083cfccb6964fbc738 +size 76046 diff --git a/game/characters/genie/chibis/sneeze.webp b/game/characters/genie/chibis/sneeze.webp new file mode 100644 index 00000000..017a7d85 --- /dev/null +++ b/game/characters/genie/chibis/sneeze.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d70add0f3064818800eebabd59df6c21f970becf79fcd16a721b289d25d66f2 +size 48560 diff --git a/game/characters/genie/chibis/stand.webp b/game/characters/genie/chibis/stand.webp new file mode 100644 index 00000000..1e709adf --- /dev/null +++ b/game/characters/genie/chibis/stand.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98b6ec5cfbbae58de82fc82a6616efee065f6ec343ba216444b8498d88eaec35 +size 67520 diff --git a/game/characters/genie/chibis/stand_alt.webp b/game/characters/genie/chibis/stand_alt.webp new file mode 100644 index 00000000..e535c8a3 --- /dev/null +++ b/game/characters/genie/chibis/stand_alt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0175c4184864a07348387c2da9d79f1391703c8d3d4ea34fde77f822eef7114e +size 49106 diff --git a/game/characters/genie/chibis/stand_by_desk.webp b/game/characters/genie/chibis/stand_by_desk.webp new file mode 100644 index 00000000..5e59f8df --- /dev/null +++ b/game/characters/genie/chibis/stand_by_desk.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf4285f28df1e2b3cc29d4f549d1a7d5b4432e2cfc23302481100b5c2d93a18f +size 106202 diff --git a/game/characters/genie/chibis/walk_01.webp b/game/characters/genie/chibis/walk_01.webp new file mode 100644 index 00000000..8db54bc6 --- /dev/null +++ b/game/characters/genie/chibis/walk_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9237bec7703f73f9e1f702c160608d98da4e9d715ed1368dad61d2a2694967c +size 62912 diff --git a/game/characters/genie/chibis/walk_02.webp b/game/characters/genie/chibis/walk_02.webp new file mode 100644 index 00000000..1dca04c4 --- /dev/null +++ b/game/characters/genie/chibis/walk_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b33ef57fd0bcdc724463274f8afac26abd37d2e951e68d1c8147ca444831d64 +size 65076 diff --git a/game/characters/genie/chibis/walk_03.webp b/game/characters/genie/chibis/walk_03.webp new file mode 100644 index 00000000..00f9dedc --- /dev/null +++ b/game/characters/genie/chibis/walk_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86dd190168dcd1c0fdb4f69f8c9f0dec05369ac7c2439fd8e102aa7aae70b9ba +size 62860 diff --git a/game/characters/genie/chibis/walk_04.webp b/game/characters/genie/chibis/walk_04.webp new file mode 100644 index 00000000..c31eab26 --- /dev/null +++ b/game/characters/genie/chibis/walk_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64dd67ff306d5d53a48c6d176a9a30c4f74fcde0d0966a5997c18e9f272f71be +size 60582 diff --git a/game/characters/genie/chibis/working/01.webp b/game/characters/genie/chibis/working/01.webp new file mode 100644 index 00000000..a6aa4061 --- /dev/null +++ b/game/characters/genie/chibis/working/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0876b396ff575b27f7261284526df83a4572874043d62ddf9e4e494c3c8b3a82 +size 27126 diff --git a/game/characters/genie/chibis/working/02.webp b/game/characters/genie/chibis/working/02.webp new file mode 100644 index 00000000..fee1840b --- /dev/null +++ b/game/characters/genie/chibis/working/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7abf8b79205d1396335bc24ad41af3f3fde10ba1add91332d9a48a24ebebcfea +size 27218 diff --git a/game/characters/genie/chibis/working/03.webp b/game/characters/genie/chibis/working/03.webp new file mode 100644 index 00000000..3c457f3c --- /dev/null +++ b/game/characters/genie/chibis/working/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:247b07eca14b7bf782387aa69293c93503f7ecf838cf16a1d27b0c4fdd494027 +size 26954 diff --git a/game/characters/genie/chibis/working/04.webp b/game/characters/genie/chibis/working/04.webp new file mode 100644 index 00000000..35a2adb3 --- /dev/null +++ b/game/characters/genie/chibis/working/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aed9bab4d611878fbe734594adee033ba6a3c856d358056874fdb220add11502 +size 26664 diff --git a/game/characters/genie/chibis/working/05.webp b/game/characters/genie/chibis/working/05.webp new file mode 100644 index 00000000..2d4cec16 --- /dev/null +++ b/game/characters/genie/chibis/working/05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3982f7da2eaa00dd1a9ead30faf539711769688f682866949e32a2eaa0baa1b7 +size 27038 diff --git a/game/characters/genie/chibis/working/06.webp b/game/characters/genie/chibis/working/06.webp new file mode 100644 index 00000000..8cb130c5 --- /dev/null +++ b/game/characters/genie/chibis/working/06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a6ac6abe184fb1b62b001fb5006f1c896acb3bb9c1c2d2efaa4a9d5f57db079 +size 26918 diff --git a/game/characters/genie/chibis/working/07.webp b/game/characters/genie/chibis/working/07.webp new file mode 100644 index 00000000..5dead827 --- /dev/null +++ b/game/characters/genie/chibis/working/07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5d4ec173a97f442424f25d6764371cf44e5fb7fa372ee293479cad0c9e5f9ef +size 27346 diff --git a/game/characters/genie/chibis/working/08.webp b/game/characters/genie/chibis/working/08.webp new file mode 100644 index 00000000..eceb546b --- /dev/null +++ b/game/characters/genie/chibis/working/08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8a44cefc6f3c3ddaca4d547124f9073149dcc24f0f0863b5d64d63019bbaa3d +size 27192 diff --git a/game/characters/genie/chibis/working/09.webp b/game/characters/genie/chibis/working/09.webp new file mode 100644 index 00000000..681b3964 --- /dev/null +++ b/game/characters/genie/chibis/working/09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cdfd1963f42d602468822a1d20dc82b0e0f47bb973c26bc9fb3332da146a1b2 +size 26900 diff --git a/game/characters/genie/dick_1.webp b/game/characters/genie/dick_1.webp new file mode 100644 index 00000000..e9fc1fe7 --- /dev/null +++ b/game/characters/genie/dick_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efe3d0095b3d607b0f6024b4790689b57ec84630fdbe7713130702cc2dbb437c +size 30322 diff --git a/game/characters/genie/grin.webp b/game/characters/genie/grin.webp new file mode 100644 index 00000000..5e46c607 --- /dev/null +++ b/game/characters/genie/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8ba679e4dd3a4766b05e803da6cae28a36f8d75b12f763be1e6981b80dac413 +size 11876 diff --git a/game/characters/genie/hair.webp b/game/characters/genie/hair.webp new file mode 100644 index 00000000..174f8414 --- /dev/null +++ b/game/characters/genie/hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5bd3744ce5eae46bfc16991fd9ea7be8607baefc21ed942d268f946cc501144 +size 3530 diff --git a/game/characters/genie/mage.webp b/game/characters/genie/mage.webp new file mode 100644 index 00000000..4a4ac7d2 --- /dev/null +++ b/game/characters/genie/mage.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da028a9c71625d75186c46e1955260a49341c3da506ba20405a518e5ce6ed1b2 +size 124078 diff --git a/game/characters/genie/mage10.webp b/game/characters/genie/mage10.webp new file mode 100644 index 00000000..66b4ac23 --- /dev/null +++ b/game/characters/genie/mage10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:005669e7de8a1fabd930ece66ccffda71c04ad2553772314bab9aef474fc9607 +size 114460 diff --git a/game/characters/genie/mage11.webp b/game/characters/genie/mage11.webp new file mode 100644 index 00000000..211341d6 --- /dev/null +++ b/game/characters/genie/mage11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2650b6275321f5bc2d0ffaa5cc91336914a30985022f2defdafb499a30a5420b +size 125784 diff --git a/game/characters/genie/mage12.webp b/game/characters/genie/mage12.webp new file mode 100644 index 00000000..0e82189f --- /dev/null +++ b/game/characters/genie/mage12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b49ba184e7c671b23fe75fef2a30972aa9b2eaa33bb685278809f5b99ff71ab7 +size 67834 diff --git a/game/characters/genie/mage13.webp b/game/characters/genie/mage13.webp new file mode 100644 index 00000000..5c3dd2ec --- /dev/null +++ b/game/characters/genie/mage13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e642d71cea2d2280524ceaaedda6c4161167a6b757e862c87c24fe24aaf2b229 +size 102572 diff --git a/game/characters/genie/mage14.webp b/game/characters/genie/mage14.webp new file mode 100644 index 00000000..5697b319 --- /dev/null +++ b/game/characters/genie/mage14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f029fe7d13ae83738172e7b6f09ec67580252aa66c3d047672dbc25d7b67e8fa +size 199316 diff --git a/game/characters/genie/mage15.webp b/game/characters/genie/mage15.webp new file mode 100644 index 00000000..e5614483 --- /dev/null +++ b/game/characters/genie/mage15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fcf21ff8a68e87024708f7ee382b7a1c356e07252bf892d9fd5d552f6839118 +size 310080 diff --git a/game/characters/genie/mage16.webp b/game/characters/genie/mage16.webp new file mode 100644 index 00000000..07608fb5 --- /dev/null +++ b/game/characters/genie/mage16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4ce07f71451756095500983d23303dcaf2c4555b945889a469d5d3fc1c8b3c6 +size 127088 diff --git a/game/characters/genie/mage2.webp b/game/characters/genie/mage2.webp new file mode 100644 index 00000000..c75b9d9a --- /dev/null +++ b/game/characters/genie/mage2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99a509d3e1996d441b66299d85318f6d1d980d2ec66f0f19d064773fb3acb1be +size 66638 diff --git a/game/characters/genie/mage3.webp b/game/characters/genie/mage3.webp new file mode 100644 index 00000000..7d08426b --- /dev/null +++ b/game/characters/genie/mage3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0aa506acbf2024d460f1382f85864f97b1c26788216e04b05c1cf759d763426a +size 68110 diff --git a/game/characters/genie/mage4.webp b/game/characters/genie/mage4.webp new file mode 100644 index 00000000..82f96d31 --- /dev/null +++ b/game/characters/genie/mage4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74f5135e429c772532aab448aaf8af92312e69a5591ccaad7268da80a845487b +size 124464 diff --git a/game/characters/genie/mage5.webp b/game/characters/genie/mage5.webp new file mode 100644 index 00000000..cc18c6c3 --- /dev/null +++ b/game/characters/genie/mage5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ada78420faceb416a2533f3d0d804a9f96400d27b9c75d1363218644945c55dd +size 116222 diff --git a/game/characters/genie/mage6.webp b/game/characters/genie/mage6.webp new file mode 100644 index 00000000..ef3c5ca9 --- /dev/null +++ b/game/characters/genie/mage6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18d485c8e8f3249ae5ba966009fdd27ce83731b3ca0a1f9faf1c4658ce4355c0 +size 114998 diff --git a/game/characters/genie/mage7.webp b/game/characters/genie/mage7.webp new file mode 100644 index 00000000..3e44f4b1 --- /dev/null +++ b/game/characters/genie/mage7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35029ef3f7f2723ef909d55c43bb13cf07b8619c70ae63344d86d25e8f62b623 +size 114634 diff --git a/game/characters/genie/mage8.webp b/game/characters/genie/mage8.webp new file mode 100644 index 00000000..2e7fffa1 --- /dev/null +++ b/game/characters/genie/mage8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4505c234b5ea2511ac014d02444dd8e4d3164afc7de7018dbb66c6c71ed676e +size 142412 diff --git a/game/characters/genie/mage9.webp b/game/characters/genie/mage9.webp new file mode 100644 index 00000000..c83c7778 --- /dev/null +++ b/game/characters/genie/mage9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b00fb1f44930037111067c4b21e6c0d851486d6e45e7b7bd64ee60501deb325 +size 124424 diff --git a/game/characters/genie/open.webp b/game/characters/genie/open.webp new file mode 100644 index 00000000..409c6c11 --- /dev/null +++ b/game/characters/genie/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80afe177a4a2879dc023cbfd91745db244665d0bf5c820b841d74c82a7e4e95b +size 14394 diff --git a/game/characters/genie/robes.webp b/game/characters/genie/robes.webp new file mode 100644 index 00000000..3d1633eb --- /dev/null +++ b/game/characters/genie/robes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7145c4b0b13f2bea60f37e8108b80b1cceb4d42d1a19a512da2d88c9df2cd9b +size 391566 diff --git a/game/characters/genie/robes_fix.webp b/game/characters/genie/robes_fix.webp new file mode 100644 index 00000000..39949277 --- /dev/null +++ b/game/characters/genie/robes_fix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c717d6968ad8c8c2c8b4cd7140523a6972100c2c23009b1bad6b6750f42603e +size 14424 diff --git a/game/characters/genie/smile.webp b/game/characters/genie/smile.webp new file mode 100644 index 00000000..c3f9b321 --- /dev/null +++ b/game/characters/genie/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0daed40b75e3848748bf622221c745d2de86a22187abc611d0c536a79ff251bc +size 12136 diff --git a/game/characters/hermione/body/armleft/down.webp b/game/characters/hermione/body/armleft/down.webp new file mode 100644 index 00000000..de690ef2 --- /dev/null +++ b/game/characters/hermione/body/armleft/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad43dbf9ecbf97fc96157d7149e76b7e49631909c1fdbf8ba24659fa0b43eb04 +size 19184 diff --git a/game/characters/hermione/body/armright/down.webp b/game/characters/hermione/body/armright/down.webp new file mode 100644 index 00000000..f250b08d --- /dev/null +++ b/game/characters/hermione/body/armright/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:235144e94d03e1c2e113bc77bc9e80d9082a3a17016cbf9a5abb32e177c00b14 +size 14008 diff --git a/game/characters/hermione/body/backside/big1.webp b/game/characters/hermione/body/backside/big1.webp new file mode 100644 index 00000000..562ebeb4 --- /dev/null +++ b/game/characters/hermione/body/backside/big1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cd5bb7762e657461cc0920ff270c31b6953f3731bff0edb8a327a0f85bc558f +size 18662 diff --git a/game/characters/hermione/body/backside/big2.webp b/game/characters/hermione/body/backside/big2.webp new file mode 100644 index 00000000..eaaeade1 --- /dev/null +++ b/game/characters/hermione/body/backside/big2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc01000c8e8f0161885c6064e85643243e732a5248544a218cd3a339971f7e2f +size 18778 diff --git a/game/characters/hermione/body/backside/big3.webp b/game/characters/hermione/body/backside/big3.webp new file mode 100644 index 00000000..2ddcb90e --- /dev/null +++ b/game/characters/hermione/body/backside/big3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba6d16db1fc58f16b8a2ffbc029fafd64422d4480e0ecd38ba27f92f148d1338 +size 18840 diff --git a/game/characters/hermione/body/base/back.webp b/game/characters/hermione/body/base/back.webp new file mode 100644 index 00000000..ce3f88cd --- /dev/null +++ b/game/characters/hermione/body/base/back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a2bd78c6022c7c761cb3ad044cbba61e66514493311cd3508e90e2f98cc12fa +size 303964 diff --git a/game/characters/hermione/body/base/front.webp b/game/characters/hermione/body/base/front.webp new file mode 100644 index 00000000..26dde8a7 --- /dev/null +++ b/game/characters/hermione/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b1f8e290c683c8295d40f8f0d49227355fc666972dcd77a40802dcff536c6a5 +size 57642 diff --git a/game/characters/hermione/body/breasts/big1.webp b/game/characters/hermione/body/breasts/big1.webp new file mode 100644 index 00000000..a64a0e47 --- /dev/null +++ b/game/characters/hermione/body/breasts/big1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95ddc78ed38b6197e3d2b56d4fff116d5c713752c443976e93d71ccb2093907e +size 18750 diff --git a/game/characters/hermione/body/breasts/big2.webp b/game/characters/hermione/body/breasts/big2.webp new file mode 100644 index 00000000..b234aba4 --- /dev/null +++ b/game/characters/hermione/body/breasts/big2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c3a320f4e2d1b163c9fd2ad6dd5cd8a5853df495272467cd583dee15b59cf22 +size 20038 diff --git a/game/characters/hermione/body/breasts/big3.webp b/game/characters/hermione/body/breasts/big3.webp new file mode 100644 index 00000000..32bae0b8 --- /dev/null +++ b/game/characters/hermione/body/breasts/big3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c7f099ca6acaa71e9b7611ed5ed07b2ba897b053816e2a1571f706c868fa0e3 +size 20986 diff --git a/game/characters/hermione/body/breasts/big3_backside.webp b/game/characters/hermione/body/breasts/big3_backside.webp new file mode 100644 index 00000000..f6f11a9e --- /dev/null +++ b/game/characters/hermione/body/breasts/big3_backside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e4b0535b4575d9536a5a680fbcc63a83c67ccae4a8fcba4bb2ac59e44ba5950 +size 21056 diff --git a/game/characters/hermione/body/breasts/normal.webp b/game/characters/hermione/body/breasts/normal.webp new file mode 100644 index 00000000..89de88c4 --- /dev/null +++ b/game/characters/hermione/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a74656fa03d149d2bf90c5d9c28a9d331902539a05b875014527dcf16ed82e8f +size 15466 diff --git a/game/characters/hermione/body/breasts/normal_tight.webp b/game/characters/hermione/body/breasts/normal_tight.webp new file mode 100644 index 00000000..7b1e4d33 --- /dev/null +++ b/game/characters/hermione/body/breasts/normal_tight.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e7a2a46f6e1b864bb2979ffee334b64631b1c40f591bccf7d3478aa5c92ee6f +size 15648 diff --git a/game/characters/hermione/body/kneel/kneel_arm.webp b/game/characters/hermione/body/kneel/kneel_arm.webp new file mode 100644 index 00000000..d007f04f --- /dev/null +++ b/game/characters/hermione/body/kneel/kneel_arm.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:766df59c36c68602c4c892bc2086128d2cea2b6058ede9b1d4d1abb3afa8c460 +size 39236 diff --git a/game/characters/hermione/body/kneel/kneel_base.webp b/game/characters/hermione/body/kneel/kneel_base.webp new file mode 100644 index 00000000..39a6783f --- /dev/null +++ b/game/characters/hermione/body/kneel/kneel_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b84aebcfb5121e29d0af020362e9da299041d8aea4c48423013682f43db9901 +size 284532 diff --git a/game/characters/hermione/body/kneel/kneel_base_2.webp b/game/characters/hermione/body/kneel/kneel_base_2.webp new file mode 100644 index 00000000..54c22cc7 --- /dev/null +++ b/game/characters/hermione/body/kneel/kneel_base_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:423971bcf2fdb2a3770c0227a68fd5c726924940cde21741f22563639ebcb379 +size 265798 diff --git a/game/characters/hermione/body/kneel/kneel_cock.webp b/game/characters/hermione/body/kneel/kneel_cock.webp new file mode 100644 index 00000000..fb05ae88 --- /dev/null +++ b/game/characters/hermione/body/kneel/kneel_cock.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:057b2bfe3e13e7916f0ecda7438b8252101129a53ae0e318104a476cb417d16c +size 34458 diff --git a/game/characters/hermione/body/kneel/kneel_cum_1.webp b/game/characters/hermione/body/kneel/kneel_cum_1.webp new file mode 100644 index 00000000..616ec11f --- /dev/null +++ b/game/characters/hermione/body/kneel/kneel_cum_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fde75bf945e51a9ffd7639e54a68696084c7831bd5725b3857211d306eaa76ef +size 56012 diff --git a/game/characters/hermione/body/kneel/kneel_hair.webp b/game/characters/hermione/body/kneel/kneel_hair.webp new file mode 100644 index 00000000..1c882485 --- /dev/null +++ b/game/characters/hermione/body/kneel/kneel_hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efb2fafc1004f7f37f4e271feab9d12fa0dc0a8ceb5dbc0a99ac38beed649030 +size 59752 diff --git a/game/characters/hermione/body/kneel/kneel_leg.webp b/game/characters/hermione/body/kneel/kneel_leg.webp new file mode 100644 index 00000000..5f08e752 --- /dev/null +++ b/game/characters/hermione/body/kneel/kneel_leg.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:327954fec7e5df2ffd75f258463477d0f5cee0508283d7e88e14d8aa5c7bd4ae +size 36194 diff --git a/game/characters/hermione/chibis/01.webp b/game/characters/hermione/chibis/01.webp new file mode 100644 index 00000000..d5a89dbd --- /dev/null +++ b/game/characters/hermione/chibis/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae3d8d8dddb74340405b768def155b4f1d05d51339f268f8ea951227d81cf66d +size 18164 diff --git a/game/characters/hermione/chibis/Wand/aka16.webp b/game/characters/hermione/chibis/Wand/aka16.webp new file mode 100644 index 00000000..46790e71 --- /dev/null +++ b/game/characters/hermione/chibis/Wand/aka16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0cbf731aa4269847dca6f91bc64f71c2947b01a696c6296ef9afdd425f00f9e +size 11482 diff --git a/game/characters/hermione/chibis/Wand/aka17.webp b/game/characters/hermione/chibis/Wand/aka17.webp new file mode 100644 index 00000000..dc74c615 --- /dev/null +++ b/game/characters/hermione/chibis/Wand/aka17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3093d8874c190ca95f053a3c78f10d59bb9a67eb1856e1002e839ea0c118b528 +size 11452 diff --git a/game/characters/hermione/chibis/Wand/aka18.webp b/game/characters/hermione/chibis/Wand/aka18.webp new file mode 100644 index 00000000..eb3570f4 --- /dev/null +++ b/game/characters/hermione/chibis/Wand/aka18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d535762e72e3b0f778fe634f7ab4e21de5ebfebf8960d3580c150794ed18b5ef +size 11574 diff --git a/game/characters/hermione/chibis/Wand/aka19.webp b/game/characters/hermione/chibis/Wand/aka19.webp new file mode 100644 index 00000000..a2210696 --- /dev/null +++ b/game/characters/hermione/chibis/Wand/aka19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03a81d1071d58ade2d693dfef4e879a129dd8c923f3451cdca04d1b8d24e6069 +size 11544 diff --git a/game/characters/hermione/chibis/Wand/aka20.webp b/game/characters/hermione/chibis/Wand/aka20.webp new file mode 100644 index 00000000..a597a0e9 --- /dev/null +++ b/game/characters/hermione/chibis/Wand/aka20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc6ba002fd2161ed8da5a2175adffe284e1fce6a424459c4eb0a96212ebf9c53 +size 13882 diff --git a/game/characters/hermione/chibis/Wand/aka21.webp b/game/characters/hermione/chibis/Wand/aka21.webp new file mode 100644 index 00000000..4e98642c --- /dev/null +++ b/game/characters/hermione/chibis/Wand/aka21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28d972b21a4d795f10fb740b06119a186a51064da287dba56638862dc5f86ffa +size 13150 diff --git a/game/characters/hermione/chibis/Wand/aka22.webp b/game/characters/hermione/chibis/Wand/aka22.webp new file mode 100644 index 00000000..3e8f3e27 --- /dev/null +++ b/game/characters/hermione/chibis/Wand/aka22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d429d4248d2625cc35fffba86f5f316f41be9855b3ea6864253ec4355b32ca6 +size 11018 diff --git a/game/characters/hermione/chibis/Wand/h_Wand_01s.webp b/game/characters/hermione/chibis/Wand/h_Wand_01s.webp new file mode 100644 index 00000000..11039b34 --- /dev/null +++ b/game/characters/hermione/chibis/Wand/h_Wand_01s.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e338ff1ab6de2310fa4bb2aa5e5914019ce72bccc23f71dceaf1c3691cb3523 +size 16908 diff --git a/game/characters/hermione/chibis/Wand/h_Wand_02s.webp b/game/characters/hermione/chibis/Wand/h_Wand_02s.webp new file mode 100644 index 00000000..f6ab5808 --- /dev/null +++ b/game/characters/hermione/chibis/Wand/h_Wand_02s.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce3c5373f9c9641f595710a5ed1011190d501083df2d447b1c52f7ae8b105a3a +size 16862 diff --git a/game/characters/hermione/chibis/Wand/h_wand_01f.webp b/game/characters/hermione/chibis/Wand/h_wand_01f.webp new file mode 100644 index 00000000..65c5135f --- /dev/null +++ b/game/characters/hermione/chibis/Wand/h_wand_01f.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05ed34a609d06d5511d4253f13c14363d757aefe686a486fe5fc69e73754183f +size 17518 diff --git a/game/characters/hermione/chibis/Wand/h_wand_02f.webp b/game/characters/hermione/chibis/Wand/h_wand_02f.webp new file mode 100644 index 00000000..6d0991b8 --- /dev/null +++ b/game/characters/hermione/chibis/Wand/h_wand_02f.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43aaafc24fd45ebc87d75bd43f9de3bc6b32e26b9517ce2a680e98d8e59cc162 +size 17608 diff --git a/game/characters/hermione/chibis/Wand/hermione_attack.webp b/game/characters/hermione/chibis/Wand/hermione_attack.webp new file mode 100644 index 00000000..11a6a5de --- /dev/null +++ b/game/characters/hermione/chibis/Wand/hermione_attack.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f62e4bef96ecd3dd86569a772a803196b4d6d6b7de41eca1174526126fb39ca2 +size 18848 diff --git a/game/characters/hermione/chibis/Wand/hermione_attack_n.webp b/game/characters/hermione/chibis/Wand/hermione_attack_n.webp new file mode 100644 index 00000000..b16443c4 --- /dev/null +++ b/game/characters/hermione/chibis/Wand/hermione_attack_n.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d59d4b25653023dc88d5cfa145ab951bc13ba22e47421aec2b83da0350436c1d +size 17028 diff --git a/game/characters/hermione/chibis/behind_desk/back.webp b/game/characters/hermione/chibis/behind_desk/back.webp new file mode 100644 index 00000000..9090dc1a --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fce3a8334bd9dbe04b81d8b76e90de13a9e25d19a99fa2626c07f3f458c4da62 +size 190676 diff --git a/game/characters/hermione/chibis/behind_desk/back_blink.webp b/game/characters/hermione/chibis/behind_desk/back_blink.webp new file mode 100644 index 00000000..fb4f33bc --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/back_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1157c7caa07933be44d445a0ba28368a52c07b547665e1cbf66cecb3fdd20d5e +size 2342 diff --git a/game/characters/hermione/chibis/behind_desk/back_bottomless.webp b/game/characters/hermione/chibis/behind_desk/back_bottomless.webp new file mode 100644 index 00000000..c808a33a --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/back_bottomless.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc7a8e6d2a6b76628a3d2f12c5d729fc43975949d68062ceb7c481d5db41026c +size 188292 diff --git a/game/characters/hermione/chibis/behind_desk/back_naked.webp b/game/characters/hermione/chibis/behind_desk/back_naked.webp new file mode 100644 index 00000000..e9a685ff --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/back_naked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35ad8c76c0683c9eb7be7b59232804fd59c4c2416b907cf1db44ca4eb29e97ab +size 189198 diff --git a/game/characters/hermione/chibis/behind_desk/back_topless.webp b/game/characters/hermione/chibis/behind_desk/back_topless.webp new file mode 100644 index 00000000..55f6d88c --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/back_topless.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a67f43ba201b9ba7ce2bdb8643199160dd9ad6ec087223fd6c10076e145e2c5c +size 190152 diff --git a/game/characters/hermione/chibis/behind_desk/bottomless.webp b/game/characters/hermione/chibis/behind_desk/bottomless.webp new file mode 100644 index 00000000..3a12e8b5 --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/bottomless.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09449c0defcf5ba374ad4e39f96c0f669de602657815f8e4667d1905905a745d +size 113536 diff --git a/game/characters/hermione/chibis/behind_desk/bottomless_lift_top.webp b/game/characters/hermione/chibis/behind_desk/bottomless_lift_top.webp new file mode 100644 index 00000000..ddd26c2a --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/bottomless_lift_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9739d56b945292f2e3939f3b0e1b7a2e65bf0ef5b6288422aa96b8ddacb2c0f4 +size 116370 diff --git a/game/characters/hermione/chibis/behind_desk/clothed.webp b/game/characters/hermione/chibis/behind_desk/clothed.webp new file mode 100644 index 00000000..6ac33c4a --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/clothed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a45812cecf0fe0563ea630c639a76c0255a17114e1bed89ff5a91980c4597df +size 116950 diff --git a/game/characters/hermione/chibis/behind_desk/front.webp b/game/characters/hermione/chibis/behind_desk/front.webp new file mode 100644 index 00000000..2adab91e --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8ce57d05808e438f7e6efcd39c63aacb63c755fb3fbd8b1aa45dee9ac1018f1 +size 176818 diff --git a/game/characters/hermione/chibis/behind_desk/front_blink.webp b/game/characters/hermione/chibis/behind_desk/front_blink.webp new file mode 100644 index 00000000..73951b25 --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/front_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:927e31a214042614000dea9303dc2317a97d152f142b25f5451232873599c795 +size 2488 diff --git a/game/characters/hermione/chibis/behind_desk/front_bottomless.webp b/game/characters/hermione/chibis/behind_desk/front_bottomless.webp new file mode 100644 index 00000000..a2a19c10 --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/front_bottomless.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:313fbc58118da98aec09e523f0843ae8a4e0f595606d246c20b3ccb726b0726b +size 187460 diff --git a/game/characters/hermione/chibis/behind_desk/front_eyes_down.webp b/game/characters/hermione/chibis/behind_desk/front_eyes_down.webp new file mode 100644 index 00000000..a9808f06 --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/front_eyes_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc847f2c7fba597569ddd37864bacc955ad3edbd3af38ab820453c26c73da439 +size 318 diff --git a/game/characters/hermione/chibis/behind_desk/front_naked.webp b/game/characters/hermione/chibis/behind_desk/front_naked.webp new file mode 100644 index 00000000..fdba73b3 --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/front_naked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c1dffd1e972e2c0c3cb79d4c933e29c1e4a91db62a6dd3b117b8f3a144a6a16 +size 187994 diff --git a/game/characters/hermione/chibis/behind_desk/front_topless.webp b/game/characters/hermione/chibis/behind_desk/front_topless.webp new file mode 100644 index 00000000..f14ad862 --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/front_topless.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:345539a94e903e824ac4bcb6774e8745133d2005d0345db681d680b3197dd216 +size 175894 diff --git a/game/characters/hermione/chibis/behind_desk/genie_and_hermione.webp b/game/characters/hermione/chibis/behind_desk/genie_and_hermione.webp new file mode 100644 index 00000000..f1a1ac9f --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/genie_and_hermione.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a5bdc7385f0f5155deba3a850fd48ab630f93260dc02a4c88efd949ab07a523 +size 178206 diff --git a/game/characters/hermione/chibis/behind_desk/lift_top.webp b/game/characters/hermione/chibis/behind_desk/lift_top.webp new file mode 100644 index 00000000..d8d724ec --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/lift_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9bd6c457ee045ce5a3e5e5d406bede67e04c39e4830db62b0840ea64d899bd0 +size 106540 diff --git a/game/characters/hermione/chibis/behind_desk/lift_top_alt.webp b/game/characters/hermione/chibis/behind_desk/lift_top_alt.webp new file mode 100644 index 00000000..869fcfae --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/lift_top_alt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7585692f40d67d8448b045b23e80c76be6cbb5300d4884702596202915e54cf3 +size 104038 diff --git a/game/characters/hermione/chibis/behind_desk/naked.webp b/game/characters/hermione/chibis/behind_desk/naked.webp new file mode 100644 index 00000000..3f0cdc3c --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/naked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f22697f66a9c52d22fa1a771b609230a818735fa2ee9ac571dbdab4b9788139 +size 113678 diff --git a/game/characters/hermione/chibis/behind_desk/show_tits.webp b/game/characters/hermione/chibis/behind_desk/show_tits.webp new file mode 100644 index 00000000..039b39ab --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/show_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be81a0f72af77eed10903dd918a5c7322105636a51b8a7e0848a606635231fb3 +size 177044 diff --git a/game/characters/hermione/chibis/behind_desk/topless.webp b/game/characters/hermione/chibis/behind_desk/topless.webp new file mode 100644 index 00000000..32434390 --- /dev/null +++ b/game/characters/hermione/chibis/behind_desk/topless.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:124e1460bb26f09b568db6e7f6e244aa8fbd075204baacc2044f895813a469f0 +size 109252 diff --git a/game/characters/hermione/chibis/blowjob/01.webp b/game/characters/hermione/chibis/blowjob/01.webp new file mode 100644 index 00000000..5491b939 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8150e1bea93de776f3deb77264d630d93e0b66b4a27e787266da99473d87607d +size 49116 diff --git a/game/characters/hermione/chibis/blowjob/02.webp b/game/characters/hermione/chibis/blowjob/02.webp new file mode 100644 index 00000000..55514235 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76e8d7bc83ca225506293754ae125c0e2899b645c00d24b4fb3134947dd557ff +size 49200 diff --git a/game/characters/hermione/chibis/blowjob/03.webp b/game/characters/hermione/chibis/blowjob/03.webp new file mode 100644 index 00000000..79c2dcde --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4078ca0f6c98febe71817f3e6ea5c26fe981baac1e1579de0a2a4186128b7bc6 +size 48996 diff --git a/game/characters/hermione/chibis/blowjob/04.webp b/game/characters/hermione/chibis/blowjob/04.webp new file mode 100644 index 00000000..09dfb38e --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cdae9c53949124bf582d2a4e2c4e1e6223038f4d734830bed7a93f1280611491 +size 48870 diff --git a/game/characters/hermione/chibis/blowjob/05.webp b/game/characters/hermione/chibis/blowjob/05.webp new file mode 100644 index 00000000..7d9589e4 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1134e71819f6ab7623984509557cdefe77df69f2b9c62fe8a5122ee31ef09faf +size 48424 diff --git a/game/characters/hermione/chibis/blowjob/06.webp b/game/characters/hermione/chibis/blowjob/06.webp new file mode 100644 index 00000000..b75cff0b --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc1bcce45c3c2824c49f2918763d0d94754ff0c01d241c43b32fe0313976871e +size 48404 diff --git a/game/characters/hermione/chibis/blowjob/07.webp b/game/characters/hermione/chibis/blowjob/07.webp new file mode 100644 index 00000000..4c35b88c --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f85ad9ba389501610353eccbd86c6b07459b72a676325facf7ffb9b410b656c4 +size 48454 diff --git a/game/characters/hermione/chibis/blowjob/08.webp b/game/characters/hermione/chibis/blowjob/08.webp new file mode 100644 index 00000000..9496cfb0 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f2e9391d7beb2060a9b1ddb469c901fe4b118d6f159029b57684a0044886d25 +size 48618 diff --git a/game/characters/hermione/chibis/blowjob/09.webp b/game/characters/hermione/chibis/blowjob/09.webp new file mode 100644 index 00000000..cf3615eb --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdd825c20cb0a9b2d5b297ca38cb8d63e9a57b45b2000c52789a0d096eeb5217 +size 48450 diff --git a/game/characters/hermione/chibis/blowjob/10.webp b/game/characters/hermione/chibis/blowjob/10.webp new file mode 100644 index 00000000..7e502c82 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:704430d371ed8fc64df93133fbc9ec7c030b6360b40d373fdbaa3bf15338bfd5 +size 48720 diff --git a/game/characters/hermione/chibis/blowjob/11.webp b/game/characters/hermione/chibis/blowjob/11.webp new file mode 100644 index 00000000..f526fedc --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7ada0204c68a14cb65b9154d50b970366e0c27323268bb4295f7acc4e8ced76 +size 49112 diff --git a/game/characters/hermione/chibis/blowjob/12.webp b/game/characters/hermione/chibis/blowjob/12.webp new file mode 100644 index 00000000..896f5aeb --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a22c77b087dab1e1f1e0b6fe6f11ce3f8871640f4bd35e839fe3688fe7d4b330 +size 49280 diff --git a/game/characters/hermione/chibis/blowjob/hand_01.webp b/game/characters/hermione/chibis/blowjob/hand_01.webp new file mode 100644 index 00000000..5fa7acea --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/hand_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1512c6f5c17153aeb2f6b9fc8622a39906b955cf7c610d6f58e9d54459478012 +size 53796 diff --git a/game/characters/hermione/chibis/blowjob/hand_02.webp b/game/characters/hermione/chibis/blowjob/hand_02.webp new file mode 100644 index 00000000..7eb45014 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/hand_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afab2a44709b1d8f61c366efd674910985d7379625a0cff65ad5616f4e098275 +size 53832 diff --git a/game/characters/hermione/chibis/blowjob/hand_03.webp b/game/characters/hermione/chibis/blowjob/hand_03.webp new file mode 100644 index 00000000..3da797ee --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/hand_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a15307d8ac3a1992505f14fd7c08a3d23153fa2cb7e36a6464b86b7c2a9c8c2e +size 53798 diff --git a/game/characters/hermione/chibis/blowjob/hand_04.webp b/game/characters/hermione/chibis/blowjob/hand_04.webp new file mode 100644 index 00000000..7eb45014 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/hand_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afab2a44709b1d8f61c366efd674910985d7379625a0cff65ad5616f4e098275 +size 53832 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_00.webp b/game/characters/hermione/chibis/blowjob/sperm_face_00.webp new file mode 100644 index 00000000..5fa7acea --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1512c6f5c17153aeb2f6b9fc8622a39906b955cf7c610d6f58e9d54459478012 +size 53796 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_01.webp b/game/characters/hermione/chibis/blowjob/sperm_face_01.webp new file mode 100644 index 00000000..f833433c --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0656916dee5530cfedd4e79406c81f086cb1f6ef770c23231a09b7f625cf652 +size 53776 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_02.webp b/game/characters/hermione/chibis/blowjob/sperm_face_02.webp new file mode 100644 index 00000000..990b37e9 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5e37928d5e7f88af81ea037cbdfc59dce2a921effbbd8e61bcbba39986bf0ad +size 53944 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_03.webp b/game/characters/hermione/chibis/blowjob/sperm_face_03.webp new file mode 100644 index 00000000..61dc45ad --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cebd704fabc0f51756aa1deb46d75a9f345ccca011fa1cc936a408d9cf8af352 +size 54070 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_04.webp b/game/characters/hermione/chibis/blowjob/sperm_face_04.webp new file mode 100644 index 00000000..761c5df3 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:133fc207154f4197caa58bb7933f95594faff3b0f9da68bf66c9318c91ae6b2d +size 54016 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_05.webp b/game/characters/hermione/chibis/blowjob/sperm_face_05.webp new file mode 100644 index 00000000..4f58fc72 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb2ad9636aade1d718211d66b4c675085f8579b5bdfbff7c6e8b4763a13da278 +size 54088 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_06.webp b/game/characters/hermione/chibis/blowjob/sperm_face_06.webp new file mode 100644 index 00000000..dbec722c --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8a0ba898d84d6cd404debffa3aed472ae25fed985a0d363b188418b95d6bdf4 +size 54128 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_07.webp b/game/characters/hermione/chibis/blowjob/sperm_face_07.webp new file mode 100644 index 00000000..2dce50b7 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbe681cb83b08d9cc62ae2cba40aa166dbf8cd7ed220475fcefe0563b8840a8d +size 54194 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_08.webp b/game/characters/hermione/chibis/blowjob/sperm_face_08.webp new file mode 100644 index 00000000..87afc67c --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:575b05e220ce4b9a480840a268c79ca33763f2307b762c7258902dbff14a53c7 +size 54030 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_09.webp b/game/characters/hermione/chibis/blowjob/sperm_face_09.webp new file mode 100644 index 00000000..eced14e0 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c82b20c5aad64655770bec16c81f0b6325d34ff2ba55792dbe4a3806d76c4b84 +size 54096 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_10.webp b/game/characters/hermione/chibis/blowjob/sperm_face_10.webp new file mode 100644 index 00000000..e51ee7f5 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a040cdb92e5f98f2e0485fd3def76f5787e1669245775959388c0d3536e1f2f7 +size 54080 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_11.webp b/game/characters/hermione/chibis/blowjob/sperm_face_11.webp new file mode 100644 index 00000000..f44e8d7b --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30a5454d60f32b44f64ec068e2a6178a6b7baa3abc79d4e2747e393718bb8dd1 +size 54046 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_12.webp b/game/characters/hermione/chibis/blowjob/sperm_face_12.webp new file mode 100644 index 00000000..066dcb12 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4712cb873ad1f5a6c52849c820a6543c46b093e278f8b625f97d661c9ba22023 +size 54270 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_13.webp b/game/characters/hermione/chibis/blowjob/sperm_face_13.webp new file mode 100644 index 00000000..ce1eb5a0 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be9f250be52bdbeaa74a021c9777cd6b342a76e2a85f96939e3e771fad273aa9 +size 54448 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_14.webp b/game/characters/hermione/chibis/blowjob/sperm_face_14.webp new file mode 100644 index 00000000..24169c59 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cba4d57eb7923745b21a2351b7b089101c0a352eae45afa3b73f7acf5125b34 +size 54376 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_15.webp b/game/characters/hermione/chibis/blowjob/sperm_face_15.webp new file mode 100644 index 00000000..ca6ef680 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f2d1adab677ef34cd88227f569bf20d1a1a4ec34d77084bdbacd9fed7045e07 +size 54326 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_16.webp b/game/characters/hermione/chibis/blowjob/sperm_face_16.webp new file mode 100644 index 00000000..cd5ecf32 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f4a44221720e2076f4fe4aac2ceb81a000a872e0b79a514bf3ffeab6364fd3e +size 54180 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_17.webp b/game/characters/hermione/chibis/blowjob/sperm_face_17.webp new file mode 100644 index 00000000..61adceb3 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ac5347ddb2bcb1f577828b38cf6779609e1427c8921351456745cf44bbda184 +size 54150 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_18.webp b/game/characters/hermione/chibis/blowjob/sperm_face_18.webp new file mode 100644 index 00000000..fa7b9fc9 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8c2a468b33203ffb8f5e9378c75eee70e94bea15c1a621959094a0e212a5a61 +size 54300 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_19.webp b/game/characters/hermione/chibis/blowjob/sperm_face_19.webp new file mode 100644 index 00000000..99fa974c --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:720642a19b19ad878a71a3aa299b35a37db4c96db71584ea42cee571a13b872d +size 54316 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_20.webp b/game/characters/hermione/chibis/blowjob/sperm_face_20.webp new file mode 100644 index 00000000..573f6b6e --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c60c59869364584f8d9c1c97ff1721df31321ca36f9db4382802535351d944d +size 54268 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_21.webp b/game/characters/hermione/chibis/blowjob/sperm_face_21.webp new file mode 100644 index 00000000..06c74395 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8096ff5f8a9df86dd1ecdff64239ab62ded818d47f352387c193ed898019efeb +size 54458 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_22.webp b/game/characters/hermione/chibis/blowjob/sperm_face_22.webp new file mode 100644 index 00000000..6cfb65fb --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce5cc67e6872c7cdfff6d6299fe2b49aa65ce3c11cf9f83ae183f5dd7c3a384f +size 54474 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_23.webp b/game/characters/hermione/chibis/blowjob/sperm_face_23.webp new file mode 100644 index 00000000..1c8cfd27 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef8201dce2ffa9608044859f52ad6584fba083db5e0fd79dec3bb893ae402248 +size 54460 diff --git a/game/characters/hermione/chibis/blowjob/sperm_face_24.webp b/game/characters/hermione/chibis/blowjob/sperm_face_24.webp new file mode 100644 index 00000000..fa8977cb --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_face_24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65afcd30e4bac1673a9017945b5e3076d4eef2d5e4f5f6947b9fa621d7e42391 +size 54394 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_01.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_01.webp new file mode 100644 index 00000000..8d0f8a1e --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aa589528a5e391090e5cd0a0920ee7107cf78bd96451af688bf9dd7bca2827c +size 49100 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_02.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_02.webp new file mode 100644 index 00000000..8d0f8a1e --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aa589528a5e391090e5cd0a0920ee7107cf78bd96451af688bf9dd7bca2827c +size 49100 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_03.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_03.webp new file mode 100644 index 00000000..0d8eca51 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56a0fb347f7e97d0883788991ce36e8c900e669f1e504834da94696e85efa948 +size 49186 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_04.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_04.webp new file mode 100644 index 00000000..7ad13b9a --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cec7efdc22690c7ff77bd18792280a5c630bb91578c4a608549949e4afe27ac +size 49282 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_05.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_05.webp new file mode 100644 index 00000000..b98b57a6 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8260e24abbb7e265162ea66f515f467bff17bf923cbc65515d121a88c05dc526 +size 49298 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_06.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_06.webp new file mode 100644 index 00000000..5bc6c78b --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30f1a92809e2749fc4840b1e5507a955433733a0363540ea734187983dd3e31d +size 49320 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_07.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_07.webp new file mode 100644 index 00000000..4d83740d --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed4fb9570a3c86bb15a8c3f7303aa3d3db7195854f7278efa3d4cf1ca66d15da +size 49308 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_08.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_08.webp new file mode 100644 index 00000000..e377749a --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78bba48bcaa96f5ba21a98631acb171afd778a355b33d6b388196fb221ef42da +size 49354 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_09.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_09.webp new file mode 100644 index 00000000..70d2633c --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b61e654e5cb4deef351ddf59e6ca7ca5574c33aa3de4a9594c376ef66b693c0d +size 49260 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_10.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_10.webp new file mode 100644 index 00000000..2e5e85e6 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68cd41bb3ad7218e94a6b67e6f4718dcf2d9891ae9a0ee793523edaa3b7ef8f5 +size 49216 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_11.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_11.webp new file mode 100644 index 00000000..8d0f8a1e --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aa589528a5e391090e5cd0a0920ee7107cf78bd96451af688bf9dd7bca2827c +size 49100 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_12.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_12.webp new file mode 100644 index 00000000..ce7883c5 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa6ed6718c99c279ee25c27b4033d6e85d2aa0b8036725d7e0f5baca4f95405d +size 49198 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_13.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_13.webp new file mode 100644 index 00000000..64e4c4f7 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b48ade17a7f3a1c9ca2ecfd821f913fd867eecbb3520d4ba249c723437b037df +size 49254 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_14.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_14.webp new file mode 100644 index 00000000..87a1ca11 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47cf1ea511d03c4093bae14abc86e28ccfe2a2a27851f61358b26bc231eac42c +size 49304 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_15.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_15.webp new file mode 100644 index 00000000..274ddbf3 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e96e2b3e5392ef1e33e33221e09ca6008d3c5c0a3fc74077b4322b0e7f543bc +size 49322 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_16.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_16.webp new file mode 100644 index 00000000..40410a57 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de4e9a4c549dfe9c5fe041739d005e52566d09930ebe5169a5b68d90d05215e4 +size 49298 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_17.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_17.webp new file mode 100644 index 00000000..97e3342c --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3bc8c736fd185f2e10e93925967799536f835561b069521997397e3dce6c85a +size 49206 diff --git a/game/characters/hermione/chibis/blowjob/sperm_throat_18.webp b/game/characters/hermione/chibis/blowjob/sperm_throat_18.webp new file mode 100644 index 00000000..773d8e36 --- /dev/null +++ b/game/characters/hermione/chibis/blowjob/sperm_throat_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6062ab32bedbe3f4a45e84583d93547d4e5c67847e108b06e0da6c2cb616f81e +size 49180 diff --git a/game/characters/hermione/chibis/broom/shime12.webp b/game/characters/hermione/chibis/broom/shime12.webp new file mode 100644 index 00000000..5236aad0 --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b137c904bdb602a54e968a6583c05262f78bb10c7e61ae31408b26334cbefcd +size 11404 diff --git a/game/characters/hermione/chibis/broom/shime13.webp b/game/characters/hermione/chibis/broom/shime13.webp new file mode 100644 index 00000000..a4bbb69a --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d094ade566f84a6665c151ff435857acea9aa2278b4b87be4ac6b3dac7caca80 +size 12106 diff --git a/game/characters/hermione/chibis/broom/shime13a.webp b/game/characters/hermione/chibis/broom/shime13a.webp new file mode 100644 index 00000000..49caf19c --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime13a.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2153c573ad04983067d7f5bcfa7ba1ee978e5b8806cc4d182c41d7b1a2826468 +size 34778 diff --git a/game/characters/hermione/chibis/broom/shime13b.webp b/game/characters/hermione/chibis/broom/shime13b.webp new file mode 100644 index 00000000..43fab1e8 --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime13b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:635465b1cdcfeb04636b5fea1fc6e5d08943ad3238450653a100482694944cf0 +size 35208 diff --git a/game/characters/hermione/chibis/broom/shime13c.webp b/game/characters/hermione/chibis/broom/shime13c.webp new file mode 100644 index 00000000..e6a5344c --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime13c.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01e6b920549f2168328fb89c2b7b577c830780dbba95286fd16eb11c35fdc872 +size 35270 diff --git a/game/characters/hermione/chibis/broom/shime13d.webp b/game/characters/hermione/chibis/broom/shime13d.webp new file mode 100644 index 00000000..1faa6c3e --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime13d.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfb4cf4ba9c065a6e5b5a0687ca7324604c227707e8dd9dcb6863eedd0d47891 +size 35126 diff --git a/game/characters/hermione/chibis/broom/shime14.webp b/game/characters/hermione/chibis/broom/shime14.webp new file mode 100644 index 00000000..5236aad0 --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b137c904bdb602a54e968a6583c05262f78bb10c7e61ae31408b26334cbefcd +size 11404 diff --git a/game/characters/hermione/chibis/broom/shime23.webp b/game/characters/hermione/chibis/broom/shime23.webp new file mode 100644 index 00000000..d4f682dd --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:505f40e91c3c92d02a7a086459c40219f4fc0a421bb4cd183f79944fc13d2b59 +size 11226 diff --git a/game/characters/hermione/chibis/broom/shime23a.webp b/game/characters/hermione/chibis/broom/shime23a.webp new file mode 100644 index 00000000..c4de221d --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime23a.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8015484791796e56eabcce0d823981ccd0cdad1777e08307c32a763f0284769c +size 11276 diff --git a/game/characters/hermione/chibis/broom/shime23b.webp b/game/characters/hermione/chibis/broom/shime23b.webp new file mode 100644 index 00000000..54349732 --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime23b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d128e1b1c496c02bd86624aaa883b91e4670aba1409bcf649c2ce282801e995d +size 11246 diff --git a/game/characters/hermione/chibis/broom/shime23c.webp b/game/characters/hermione/chibis/broom/shime23c.webp new file mode 100644 index 00000000..f4869bf3 --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime23c.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:425eecbafa13dc49e9c34fbddd476fe2e0dffb12e5353fc1115dfca2f8e9a0d3 +size 11278 diff --git a/game/characters/hermione/chibis/broom/shime23d.webp b/game/characters/hermione/chibis/broom/shime23d.webp new file mode 100644 index 00000000..9b602c30 --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime23d.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58113be96400cd01fb6878e09fe3b6435ad62123693a441abd8bb76977bff2c6 +size 11230 diff --git a/game/characters/hermione/chibis/broom/shime23e.webp b/game/characters/hermione/chibis/broom/shime23e.webp new file mode 100644 index 00000000..e05dcd54 --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime23e.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d24ad6d3c2210c17079999f1cbc3446169cb0b4ce16436aba16fb58f1bdfc75c +size 11240 diff --git a/game/characters/hermione/chibis/broom/shime23f.webp b/game/characters/hermione/chibis/broom/shime23f.webp new file mode 100644 index 00000000..ecdf8b2b --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime23f.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61e74915d7ee59214ab3c159a66051bb2ef40719ee082bed4b1ae23a01c1f532 +size 11278 diff --git a/game/characters/hermione/chibis/broom/shime23g.webp b/game/characters/hermione/chibis/broom/shime23g.webp new file mode 100644 index 00000000..2182bcef --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime23g.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:675bd09bae239b96e7f51172be1e93a9b9f3fc65806e742439078e38cf141ef2 +size 11288 diff --git a/game/characters/hermione/chibis/broom/shime24.webp b/game/characters/hermione/chibis/broom/shime24.webp new file mode 100644 index 00000000..e4464699 --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47df69fe255b4fd7891c67c5de380c03a28144fd15c10176415f12284cb76fc3 +size 11132 diff --git a/game/characters/hermione/chibis/broom/shime25.webp b/game/characters/hermione/chibis/broom/shime25.webp new file mode 100644 index 00000000..d4f682dd --- /dev/null +++ b/game/characters/hermione/chibis/broom/shime25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:505f40e91c3c92d02a7a086459c40219f4fc0a421bb4cd183f79944fc13d2b59 +size 11226 diff --git a/game/characters/hermione/chibis/dance/01_dancing_01.webp b/game/characters/hermione/chibis/dance/01_dancing_01.webp new file mode 100644 index 00000000..3d14437f --- /dev/null +++ b/game/characters/hermione/chibis/dance/01_dancing_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9635ef916371d5ded7f38c783d5d3d3d781668113d821dd90905a5c930a6967 +size 52230 diff --git a/game/characters/hermione/chibis/dance/01_dancing_02.webp b/game/characters/hermione/chibis/dance/01_dancing_02.webp new file mode 100644 index 00000000..62a778cd --- /dev/null +++ b/game/characters/hermione/chibis/dance/01_dancing_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbd6688efe13af7a0159dd6db3fb46a5c76396db95c8126aad063e9892969c8c +size 52700 diff --git a/game/characters/hermione/chibis/dance/01_dancing_03.webp b/game/characters/hermione/chibis/dance/01_dancing_03.webp new file mode 100644 index 00000000..71733260 --- /dev/null +++ b/game/characters/hermione/chibis/dance/01_dancing_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79837d9b8c55f8a557a10bbbe909995778610e179000f5440df63b23681a3edb +size 52962 diff --git a/game/characters/hermione/chibis/dance/01_dancing_04.webp b/game/characters/hermione/chibis/dance/01_dancing_04.webp new file mode 100644 index 00000000..62a778cd --- /dev/null +++ b/game/characters/hermione/chibis/dance/01_dancing_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbd6688efe13af7a0159dd6db3fb46a5c76396db95c8126aad063e9892969c8c +size 52700 diff --git a/game/characters/hermione/chibis/dance/02_no_vest_01.webp b/game/characters/hermione/chibis/dance/02_no_vest_01.webp new file mode 100644 index 00000000..506b4dae --- /dev/null +++ b/game/characters/hermione/chibis/dance/02_no_vest_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a9e2aea3c676d45bb1d03361705db312f1d1017e298ad95e1047762085e1fef +size 48870 diff --git a/game/characters/hermione/chibis/dance/02_no_vest_02.webp b/game/characters/hermione/chibis/dance/02_no_vest_02.webp new file mode 100644 index 00000000..c3c9153c --- /dev/null +++ b/game/characters/hermione/chibis/dance/02_no_vest_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e61329e63a1528fc74222c30641001b5eb6f6fecb41018da2486e8e0a2355fe8 +size 48798 diff --git a/game/characters/hermione/chibis/dance/02_no_vest_03.webp b/game/characters/hermione/chibis/dance/02_no_vest_03.webp new file mode 100644 index 00000000..cddfb83e --- /dev/null +++ b/game/characters/hermione/chibis/dance/02_no_vest_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8fcfddaf97bd5a705451c9779f5b1721ab2100cd97b203916cbeee655be5357 +size 49054 diff --git a/game/characters/hermione/chibis/dance/02_no_vest_04.webp b/game/characters/hermione/chibis/dance/02_no_vest_04.webp new file mode 100644 index 00000000..c3c9153c --- /dev/null +++ b/game/characters/hermione/chibis/dance/02_no_vest_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e61329e63a1528fc74222c30641001b5eb6f6fecb41018da2486e8e0a2355fe8 +size 48798 diff --git a/game/characters/hermione/chibis/dance/03_no_shirt_01.webp b/game/characters/hermione/chibis/dance/03_no_shirt_01.webp new file mode 100644 index 00000000..bf88126a --- /dev/null +++ b/game/characters/hermione/chibis/dance/03_no_shirt_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab0cf82cd6b541c2b9cdec4420f2e0afc67fabdc5f5332c1cdc1b508515393da +size 47352 diff --git a/game/characters/hermione/chibis/dance/03_no_shirt_02.webp b/game/characters/hermione/chibis/dance/03_no_shirt_02.webp new file mode 100644 index 00000000..1243f92b --- /dev/null +++ b/game/characters/hermione/chibis/dance/03_no_shirt_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e680b6e8d1b0f9a6d07419f3a310ed86425d523ef15be81e58247ff79c8a2c5 +size 47470 diff --git a/game/characters/hermione/chibis/dance/03_no_shirt_03.webp b/game/characters/hermione/chibis/dance/03_no_shirt_03.webp new file mode 100644 index 00000000..139f3e5d --- /dev/null +++ b/game/characters/hermione/chibis/dance/03_no_shirt_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9157b05ff21c46d48de134a39f7c2d59cc7219e50eb4b5baffc2e37942f9086c +size 47044 diff --git a/game/characters/hermione/chibis/dance/03_no_shirt_04.webp b/game/characters/hermione/chibis/dance/03_no_shirt_04.webp new file mode 100644 index 00000000..ba17618b --- /dev/null +++ b/game/characters/hermione/chibis/dance/03_no_shirt_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65e670b6a1188581d6011cb343c15ef5f9b20f068ba303a125d4dd8cdaa20ca8 +size 47666 diff --git a/game/characters/hermione/chibis/dance/03_no_shirt_05.webp b/game/characters/hermione/chibis/dance/03_no_shirt_05.webp new file mode 100644 index 00000000..bf047f05 --- /dev/null +++ b/game/characters/hermione/chibis/dance/03_no_shirt_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdcc420034ae82b57b7a984b2bb1f34913ea04809b3ae54ac889482210475f37 +size 47754 diff --git a/game/characters/hermione/chibis/dance/03_no_shirt_06.webp b/game/characters/hermione/chibis/dance/03_no_shirt_06.webp new file mode 100644 index 00000000..063a0644 --- /dev/null +++ b/game/characters/hermione/chibis/dance/03_no_shirt_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d160ddd7505ed4d9ecfce7e216f9d437b0a7c142acf067611f229258cdb175d5 +size 47616 diff --git a/game/characters/hermione/chibis/dance/03_no_shirt_07.webp b/game/characters/hermione/chibis/dance/03_no_shirt_07.webp new file mode 100644 index 00000000..a9a4ecbd --- /dev/null +++ b/game/characters/hermione/chibis/dance/03_no_shirt_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ecd4e807abbb45e3ba858e37c1c2721fb8756560b293712a046cbc5afd1995f8 +size 47572 diff --git a/game/characters/hermione/chibis/dance/03_no_shirt_08.webp b/game/characters/hermione/chibis/dance/03_no_shirt_08.webp new file mode 100644 index 00000000..865816cd --- /dev/null +++ b/game/characters/hermione/chibis/dance/03_no_shirt_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f17292c5c162139f20703378455962db3f2bfae03b1f70994252b813dd26593 +size 47552 diff --git a/game/characters/hermione/chibis/dance/03_no_shirt_09.webp b/game/characters/hermione/chibis/dance/03_no_shirt_09.webp new file mode 100644 index 00000000..446b4563 --- /dev/null +++ b/game/characters/hermione/chibis/dance/03_no_shirt_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29c0b5f585f291913e119e608def8e22e0934d46ab1a78e768f31990f11b153f +size 47670 diff --git a/game/characters/hermione/chibis/dance/04_no_skirt_01.webp b/game/characters/hermione/chibis/dance/04_no_skirt_01.webp new file mode 100644 index 00000000..a8f1b595 --- /dev/null +++ b/game/characters/hermione/chibis/dance/04_no_skirt_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17a7d65dc3d278be3e361c36e1c8339a8b5bfb218abc6a8b6e5008bb113bbb0d +size 47524 diff --git a/game/characters/hermione/chibis/dance/04_no_skirt_02.webp b/game/characters/hermione/chibis/dance/04_no_skirt_02.webp new file mode 100644 index 00000000..da8c8c63 --- /dev/null +++ b/game/characters/hermione/chibis/dance/04_no_skirt_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d220214d3b801757a729adfebe30b8dbf710cb69fca742e83466229bf9e26a7 +size 47730 diff --git a/game/characters/hermione/chibis/dance/04_no_skirt_03.webp b/game/characters/hermione/chibis/dance/04_no_skirt_03.webp new file mode 100644 index 00000000..197c050e --- /dev/null +++ b/game/characters/hermione/chibis/dance/04_no_skirt_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f70bea0b958c3221befbfbaf442a9425200c9b03e59328dc1467923eefa53285 +size 47492 diff --git a/game/characters/hermione/chibis/dance/04_no_skirt_04.webp b/game/characters/hermione/chibis/dance/04_no_skirt_04.webp new file mode 100644 index 00000000..da8c8c63 --- /dev/null +++ b/game/characters/hermione/chibis/dance/04_no_skirt_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d220214d3b801757a729adfebe30b8dbf710cb69fca742e83466229bf9e26a7 +size 47730 diff --git a/game/characters/hermione/chibis/dance/05_panties_01.webp b/game/characters/hermione/chibis/dance/05_panties_01.webp new file mode 100644 index 00000000..64b3ac21 --- /dev/null +++ b/game/characters/hermione/chibis/dance/05_panties_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38c3bf2ef54e2539d7a8dc23319444227a049aa9e226a50c52d67df7d394fa3e +size 47328 diff --git a/game/characters/hermione/chibis/dance/05_panties_02.webp b/game/characters/hermione/chibis/dance/05_panties_02.webp new file mode 100644 index 00000000..f751c047 --- /dev/null +++ b/game/characters/hermione/chibis/dance/05_panties_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efbe4eebbd54ab0c958eb54c980ac352e51c0e8296bfa12f0964cb59455b7eb2 +size 46626 diff --git a/game/characters/hermione/chibis/dance/05_panties_03.webp b/game/characters/hermione/chibis/dance/05_panties_03.webp new file mode 100644 index 00000000..04031ee4 --- /dev/null +++ b/game/characters/hermione/chibis/dance/05_panties_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3d3e0dd0c2ef797d1edf159a0b2536cef9918d73c3febc57afec1af0dceac76 +size 46310 diff --git a/game/characters/hermione/chibis/dance/05_panties_04.webp b/game/characters/hermione/chibis/dance/05_panties_04.webp new file mode 100644 index 00000000..f2695bc8 --- /dev/null +++ b/game/characters/hermione/chibis/dance/05_panties_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2395bd6b19c4f20601b7ddcd0bd269a2651d291cd73306c5a85d5dd2a7d57a7 +size 46396 diff --git a/game/characters/hermione/chibis/dance/05_panties_05.webp b/game/characters/hermione/chibis/dance/05_panties_05.webp new file mode 100644 index 00000000..ebda3740 --- /dev/null +++ b/game/characters/hermione/chibis/dance/05_panties_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9311198d4638d4ae97dddaee6901f453184f45ea3aa62eb3ce7f2539b48c49d7 +size 46550 diff --git a/game/characters/hermione/chibis/dance/05_panties_06.webp b/game/characters/hermione/chibis/dance/05_panties_06.webp new file mode 100644 index 00000000..238d5986 --- /dev/null +++ b/game/characters/hermione/chibis/dance/05_panties_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d9dacf1ad23e7159975e533ef487c0fcfde78b483b75fb73f2c5b43f7419733 +size 46472 diff --git a/game/characters/hermione/chibis/dance/05_panties_07.webp b/game/characters/hermione/chibis/dance/05_panties_07.webp new file mode 100644 index 00000000..7880572d --- /dev/null +++ b/game/characters/hermione/chibis/dance/05_panties_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ccae7c8b8c22479683de4312b6fb04e9e16059227003882956106349f998858e +size 46482 diff --git a/game/characters/hermione/chibis/dance/05_panties_08.webp b/game/characters/hermione/chibis/dance/05_panties_08.webp new file mode 100644 index 00000000..c8a3b90f --- /dev/null +++ b/game/characters/hermione/chibis/dance/05_panties_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77de8f7a7e59a86df69132b60a0153ceb222c5e5ea6a9fcc0d4d8008e334a173 +size 46534 diff --git a/game/characters/hermione/chibis/dance/05_panties_09.webp b/game/characters/hermione/chibis/dance/05_panties_09.webp new file mode 100644 index 00000000..abed5a06 --- /dev/null +++ b/game/characters/hermione/chibis/dance/05_panties_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14a485505fe902c4a3be23c456ef98e2e19994cff67fcb6ff1ef2ab35dbf0f85 +size 46618 diff --git a/game/characters/hermione/chibis/dance/05_panties_10.webp b/game/characters/hermione/chibis/dance/05_panties_10.webp new file mode 100644 index 00000000..f687e903 --- /dev/null +++ b/game/characters/hermione/chibis/dance/05_panties_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b58ece84f9182c43376326020c0d7ba98b9d6cbce3532f62c6a9c33fa61da5a +size 16054 diff --git a/game/characters/hermione/chibis/dance/07_dance_01.webp b/game/characters/hermione/chibis/dance/07_dance_01.webp new file mode 100644 index 00000000..be2e269a --- /dev/null +++ b/game/characters/hermione/chibis/dance/07_dance_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6ed0aa63959399ed946b265f53a0ba89e9d5cc4d4361649be13a45b2b32fb6e +size 45146 diff --git a/game/characters/hermione/chibis/dance/07_dance_02.webp b/game/characters/hermione/chibis/dance/07_dance_02.webp new file mode 100644 index 00000000..4d6254ed --- /dev/null +++ b/game/characters/hermione/chibis/dance/07_dance_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f42cd04a6cdf2d3f6dfd59881a4aa471116890c95e0a6d675095fc975d667887 +size 45202 diff --git a/game/characters/hermione/chibis/dance/07_dance_03.webp b/game/characters/hermione/chibis/dance/07_dance_03.webp new file mode 100644 index 00000000..ea9087ee --- /dev/null +++ b/game/characters/hermione/chibis/dance/07_dance_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb4f377862af8c15e95bc6a4d9a59b6cced53b5db4ee123d328177e838329a8a +size 45072 diff --git a/game/characters/hermione/chibis/dance/07_dance_04.webp b/game/characters/hermione/chibis/dance/07_dance_04.webp new file mode 100644 index 00000000..cb3cfa95 --- /dev/null +++ b/game/characters/hermione/chibis/dance/07_dance_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:844b753a821850a1c3f9ea03ab52a5c052afa7c5f6edee5d88a895a834827a3d +size 45402 diff --git a/game/characters/hermione/chibis/dance/07_dance_05.webp b/game/characters/hermione/chibis/dance/07_dance_05.webp new file mode 100644 index 00000000..8f0dbaf7 --- /dev/null +++ b/game/characters/hermione/chibis/dance/07_dance_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b58aa800c8fc58bbfcf459330b3b584976215c91e2b67b6643cedcf4b4096f33 +size 45310 diff --git a/game/characters/hermione/chibis/dance/07_dance_06.webp b/game/characters/hermione/chibis/dance/07_dance_06.webp new file mode 100644 index 00000000..be2e269a --- /dev/null +++ b/game/characters/hermione/chibis/dance/07_dance_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6ed0aa63959399ed946b265f53a0ba89e9d5cc4d4361649be13a45b2b32fb6e +size 45146 diff --git a/game/characters/hermione/chibis/dance/07_dance_07.webp b/game/characters/hermione/chibis/dance/07_dance_07.webp new file mode 100644 index 00000000..9f4046f2 --- /dev/null +++ b/game/characters/hermione/chibis/dance/07_dance_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5382f56eb824c2580244941b40aab17059086fa7c9ac451bc61759dda5d4ae37 +size 45144 diff --git a/game/characters/hermione/chibis/dance/07_dance_08.webp b/game/characters/hermione/chibis/dance/07_dance_08.webp new file mode 100644 index 00000000..511d1797 --- /dev/null +++ b/game/characters/hermione/chibis/dance/07_dance_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e1412ad332947218e41ba585690aab33447aa49078c456f0e09d9ba33d054a3 +size 45282 diff --git a/game/characters/hermione/chibis/dance/07_dance_09.webp b/game/characters/hermione/chibis/dance/07_dance_09.webp new file mode 100644 index 00000000..ab076650 --- /dev/null +++ b/game/characters/hermione/chibis/dance/07_dance_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a89cf2400cdd1e3c1e392516d5740f936749ed0e18e14e625fc92acb3d93667 +size 45230 diff --git a/game/characters/hermione/chibis/dance/07_dance_10.webp b/game/characters/hermione/chibis/dance/07_dance_10.webp new file mode 100644 index 00000000..55d8786c --- /dev/null +++ b/game/characters/hermione/chibis/dance/07_dance_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:557fd8e04e73e6e5fd520a6e769daae8a4c9a28852f52930b28f39c6f028381e +size 15430 diff --git a/game/characters/hermione/chibis/dance/sit_naked.webp b/game/characters/hermione/chibis/dance/sit_naked.webp new file mode 100644 index 00000000..5c9956ce --- /dev/null +++ b/game/characters/hermione/chibis/dance/sit_naked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd225412bce2c7c595282e1e3a38fb9970ea95e78b17f49c83a306325211183a +size 15714 diff --git a/game/characters/hermione/chibis/dance/sit_naked_blink.webp b/game/characters/hermione/chibis/dance/sit_naked_blink.webp new file mode 100644 index 00000000..9d63eea3 --- /dev/null +++ b/game/characters/hermione/chibis/dance/sit_naked_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e433143962ebf6830d37d3b5818f32cd73121f35ce89be0dcf822ece0b42094 +size 15552 diff --git a/game/characters/hermione/chibis/fingering/blink.webp b/game/characters/hermione/chibis/fingering/blink.webp new file mode 100644 index 00000000..f2d998c3 --- /dev/null +++ b/game/characters/hermione/chibis/fingering/blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc406e0d1bea080d5a087e3de1bd269159615ba13aedd2b2609f9bff421d17a7 +size 3826 diff --git a/game/characters/hermione/chibis/fingering/idle.webp b/game/characters/hermione/chibis/fingering/idle.webp new file mode 100644 index 00000000..7ba136d7 --- /dev/null +++ b/game/characters/hermione/chibis/fingering/idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ffb81238af2e85f2f0d2b1178c7ba2188984eccce74df5beadce136f46fd8a8 +size 163932 diff --git a/game/characters/hermione/chibis/fingering/idle_touch.webp b/game/characters/hermione/chibis/fingering/idle_touch.webp new file mode 100644 index 00000000..fc2ce146 --- /dev/null +++ b/game/characters/hermione/chibis/fingering/idle_touch.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4639e1a384045f270bee82eeb0d0fbc65293563807f8a64b147efb9dde558dc2 +size 158824 diff --git a/game/characters/hermione/chibis/fingering/n_01.webp b/game/characters/hermione/chibis/fingering/n_01.webp new file mode 100644 index 00000000..36dc508e --- /dev/null +++ b/game/characters/hermione/chibis/fingering/n_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49746e5a98b506d2253a7c9ec728396287a52c987e585acb4153e5bd68f937a1 +size 160664 diff --git a/game/characters/hermione/chibis/fingering/n_02.webp b/game/characters/hermione/chibis/fingering/n_02.webp new file mode 100644 index 00000000..c1e5d656 --- /dev/null +++ b/game/characters/hermione/chibis/fingering/n_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec849e5bbae7f990244e90096cd6a1bb4a7ef3550bf99decebcaad4ddd701711 +size 162976 diff --git a/game/characters/hermione/chibis/fingering/n_03.webp b/game/characters/hermione/chibis/fingering/n_03.webp new file mode 100644 index 00000000..4188a356 --- /dev/null +++ b/game/characters/hermione/chibis/fingering/n_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7b2141d74f166824903cb045b5bec87efa1141c5d37e9d67a83e1aaf49e3f79 +size 162764 diff --git a/game/characters/hermione/chibis/fingering/n_04.webp b/game/characters/hermione/chibis/fingering/n_04.webp new file mode 100644 index 00000000..f2db8057 --- /dev/null +++ b/game/characters/hermione/chibis/fingering/n_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:487b039ae32dbd7eb693a670953a025efa8bcd4f8b49c17ec0216f24c85d9801 +size 163408 diff --git a/game/characters/hermione/chibis/fingering/n_cumming_01.webp b/game/characters/hermione/chibis/fingering/n_cumming_01.webp new file mode 100644 index 00000000..ad66e095 --- /dev/null +++ b/game/characters/hermione/chibis/fingering/n_cumming_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:477906cd8cc2af9f38f6e14cd81eb126ba6834f105b1d5a388ae22d01f86ab1f +size 159066 diff --git a/game/characters/hermione/chibis/fingering/n_cumming_02.webp b/game/characters/hermione/chibis/fingering/n_cumming_02.webp new file mode 100644 index 00000000..21aad882 --- /dev/null +++ b/game/characters/hermione/chibis/fingering/n_cumming_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26c1e0ce027cc8971f9c20a3599d6a2a771813d6cb01b7f1a311fccc2bd804d1 +size 157672 diff --git a/game/characters/hermione/chibis/fingering/n_idle.webp b/game/characters/hermione/chibis/fingering/n_idle.webp new file mode 100644 index 00000000..4cf8e2c2 --- /dev/null +++ b/game/characters/hermione/chibis/fingering/n_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:019d923d6525a1adb43b49eda5ee1ed16b702a9c477eaf0089ff99c135aa0a3b +size 162290 diff --git a/game/characters/hermione/chibis/fingering/n_idle_touch.webp b/game/characters/hermione/chibis/fingering/n_idle_touch.webp new file mode 100644 index 00000000..b270aa04 --- /dev/null +++ b/game/characters/hermione/chibis/fingering/n_idle_touch.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c2cdf90ef7c8bd3507aea36df9be83649eeada2d7e26b06cb24da222e412a5b +size 157020 diff --git a/game/characters/hermione/chibis/fingering/n_solo.webp b/game/characters/hermione/chibis/fingering/n_solo.webp new file mode 100644 index 00000000..0fae0c68 --- /dev/null +++ b/game/characters/hermione/chibis/fingering/n_solo.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ca5239d0470a1ac4131b2b19042d6c503e56edc4a7c4fb30b01a3aa1500ee59 +size 83644 diff --git a/game/characters/hermione/chibis/fingering/solo.webp b/game/characters/hermione/chibis/fingering/solo.webp new file mode 100644 index 00000000..7fd3fcf8 --- /dev/null +++ b/game/characters/hermione/chibis/fingering/solo.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9708f70a4470666ab5e112d7994d415013562c007f80f37c59aadae1633c3a78 +size 84478 diff --git a/game/characters/hermione/chibis/grope_ass/back_b_01.webp b/game/characters/hermione/chibis/grope_ass/back_b_01.webp new file mode 100644 index 00000000..c310cf62 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_b_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ecdb4e36db93cf40a486d86471559d00cb01c2b1a74da05b21290ecc7e97637c +size 188944 diff --git a/game/characters/hermione/chibis/grope_ass/back_b_02.webp b/game/characters/hermione/chibis/grope_ass/back_b_02.webp new file mode 100644 index 00000000..09d33072 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_b_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c93339a9622e1691885f161a92686e4a8133302fa7bc655b6b942e1c112f942 +size 187724 diff --git a/game/characters/hermione/chibis/grope_ass/back_b_03.webp b/game/characters/hermione/chibis/grope_ass/back_b_03.webp new file mode 100644 index 00000000..bc7eae64 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_b_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b512b96745b3f72c55908b47f57f2ab61a0e43323c29a3c35e9e2f9304c51faa +size 187610 diff --git a/game/characters/hermione/chibis/grope_ass/back_b_05.webp b/game/characters/hermione/chibis/grope_ass/back_b_05.webp new file mode 100644 index 00000000..9090dc1a --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_b_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fce3a8334bd9dbe04b81d8b76e90de13a9e25d19a99fa2626c07f3f458c4da62 +size 190676 diff --git a/game/characters/hermione/chibis/grope_ass/back_blink.webp b/game/characters/hermione/chibis/grope_ass/back_blink.webp new file mode 100644 index 00000000..fb4f33bc --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1157c7caa07933be44d445a0ba28368a52c07b547665e1cbf66cecb3fdd20d5e +size 2342 diff --git a/game/characters/hermione/chibis/grope_ass/back_d_01.webp b/game/characters/hermione/chibis/grope_ass/back_d_01.webp new file mode 100644 index 00000000..228bd954 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_d_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c800c6a83741a47062661c47703f9e5fefed16d9d8a83f6966afbaa3e74a3ea0 +size 188650 diff --git a/game/characters/hermione/chibis/grope_ass/back_d_02.webp b/game/characters/hermione/chibis/grope_ass/back_d_02.webp new file mode 100644 index 00000000..ef73fca4 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_d_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:705c30f6112d5318ee2fee62e1eab44c00874e9cbce13646299863f39f97bb29 +size 187606 diff --git a/game/characters/hermione/chibis/grope_ass/back_d_03.webp b/game/characters/hermione/chibis/grope_ass/back_d_03.webp new file mode 100644 index 00000000..4953f9b6 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_d_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d47fdc59dcc064c910b16a6cb0b3a961cfe9d7c2a1ab8a1b6f8aa992edf5f9b3 +size 187598 diff --git a/game/characters/hermione/chibis/grope_ass/back_d_05.webp b/game/characters/hermione/chibis/grope_ass/back_d_05.webp new file mode 100644 index 00000000..55f6d88c --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_d_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a67f43ba201b9ba7ce2bdb8643199160dd9ad6ec087223fd6c10076e145e2c5c +size 190152 diff --git a/game/characters/hermione/chibis/grope_ass/back_e_01.webp b/game/characters/hermione/chibis/grope_ass/back_e_01.webp new file mode 100644 index 00000000..5e6d4d2a --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_e_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e045bf4851ca68d9f1c69fd4cdcaa7378e618996c031d1c11c71a401f565edd3 +size 187482 diff --git a/game/characters/hermione/chibis/grope_ass/back_e_02.webp b/game/characters/hermione/chibis/grope_ass/back_e_02.webp new file mode 100644 index 00000000..0f0e39ea --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_e_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7730fb5705191ae8c59ef8fe567a2f8e3e8b9f8e1a8263ca81b4c412f62ea51 +size 187572 diff --git a/game/characters/hermione/chibis/grope_ass/back_e_03.webp b/game/characters/hermione/chibis/grope_ass/back_e_03.webp new file mode 100644 index 00000000..9eb14aea --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_e_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f45e7f09fbb04667e23d78b8b36d97f5698c8db8b1203476a89c5fffdad6c0d +size 187288 diff --git a/game/characters/hermione/chibis/grope_ass/back_e_05.webp b/game/characters/hermione/chibis/grope_ass/back_e_05.webp new file mode 100644 index 00000000..c808a33a --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_e_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc7a8e6d2a6b76628a3d2f12c5d729fc43975949d68062ceb7c481d5db41026c +size 188292 diff --git a/game/characters/hermione/chibis/grope_ass/back_f_01.webp b/game/characters/hermione/chibis/grope_ass/back_f_01.webp new file mode 100644 index 00000000..2684ae23 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_f_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:adada5fd48584f90a5c00a9b1f4bea1e508e5f1f4b01b9b174db19fe3a847212 +size 188246 diff --git a/game/characters/hermione/chibis/grope_ass/back_f_02.webp b/game/characters/hermione/chibis/grope_ass/back_f_02.webp new file mode 100644 index 00000000..8089c68f --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_f_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7d1fbf7705e7d906fb583219362ba481c94092e7cbee6e5da19613344a870fb +size 188614 diff --git a/game/characters/hermione/chibis/grope_ass/back_f_03.webp b/game/characters/hermione/chibis/grope_ass/back_f_03.webp new file mode 100644 index 00000000..e60bd618 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_f_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:507412d635da1cb0b69822af0b5bb9d81cd3b786430cb272dcf3829096091a6e +size 188446 diff --git a/game/characters/hermione/chibis/grope_ass/back_f_05.webp b/game/characters/hermione/chibis/grope_ass/back_f_05.webp new file mode 100644 index 00000000..e9a685ff --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/back_f_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35ad8c76c0683c9eb7be7b59232804fd59c4c2416b907cf1db44ca4eb29e97ab +size 189198 diff --git a/game/characters/hermione/chibis/grope_ass/front_01.webp b/game/characters/hermione/chibis/grope_ass/front_01.webp new file mode 100644 index 00000000..4adbc68b --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:994c9b1204f8ee2ae135614ba5690f0443c93b5469263317226f3c8a844bde2f +size 52584 diff --git a/game/characters/hermione/chibis/grope_ass/front_02.webp b/game/characters/hermione/chibis/grope_ass/front_02.webp new file mode 100644 index 00000000..dc277aca --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e933d016f64542345e8bda54b401b7a78e609ac7dc84b201c22750b09573e336 +size 52522 diff --git a/game/characters/hermione/chibis/grope_ass/front_03.webp b/game/characters/hermione/chibis/grope_ass/front_03.webp new file mode 100644 index 00000000..21fb641d --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82bf8ae4bf445329d4477eea470bbf9452fe872516158d1874adf28cba5d584b +size 52630 diff --git a/game/characters/hermione/chibis/grope_ass/front_05.webp b/game/characters/hermione/chibis/grope_ass/front_05.webp new file mode 100644 index 00000000..9c265af4 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ec9195e5686ab0c378d9fe2d62702f1d8a3a3c01181c4411b993721d089b2cd +size 56412 diff --git a/game/characters/hermione/chibis/grope_ass/front_blink.webp b/game/characters/hermione/chibis/grope_ass/front_blink.webp new file mode 100644 index 00000000..73951b25 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:927e31a214042614000dea9303dc2317a97d152f142b25f5451232873599c795 +size 2488 diff --git a/game/characters/hermione/chibis/grope_ass/front_e_01.webp b/game/characters/hermione/chibis/grope_ass/front_e_01.webp new file mode 100644 index 00000000..948db4af --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_e_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ecb0a716f2c498daedd298b8942aea9764a0fab1502f34829b5c3c69b0251670 +size 51772 diff --git a/game/characters/hermione/chibis/grope_ass/front_e_02.webp b/game/characters/hermione/chibis/grope_ass/front_e_02.webp new file mode 100644 index 00000000..636a27ba --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_e_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79d3317a705e8970283c2e1c1f57b4c3bd7bb63a341c727de20a7cf59215bc8c +size 51692 diff --git a/game/characters/hermione/chibis/grope_ass/front_e_03.webp b/game/characters/hermione/chibis/grope_ass/front_e_03.webp new file mode 100644 index 00000000..4bf88a0f --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_e_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:914dafd79336ddd91600a39f11e6f028dfdf9c55d1cda37e855adda1733d7b7b +size 51770 diff --git a/game/characters/hermione/chibis/grope_ass/front_e_05.webp b/game/characters/hermione/chibis/grope_ass/front_e_05.webp new file mode 100644 index 00000000..5feeb9b7 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_e_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9037467fc51714fcceb58f3491f6f6c1f050df05a23709b9f12b34e3469241b6 +size 55426 diff --git a/game/characters/hermione/chibis/grope_ass/front_g_01.webp b/game/characters/hermione/chibis/grope_ass/front_g_01.webp new file mode 100644 index 00000000..040151a4 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_g_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:922b289dbb89acb34f9bc69699f5ad5a64a1fc9660520ef40c87b6ad7672e332 +size 186226 diff --git a/game/characters/hermione/chibis/grope_ass/front_g_02.webp b/game/characters/hermione/chibis/grope_ass/front_g_02.webp new file mode 100644 index 00000000..6bd9a5f8 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_g_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e510b531056cbf91ad33527c8f0087e4132b3d596e37aff9c14336296f45568f +size 186594 diff --git a/game/characters/hermione/chibis/grope_ass/front_g_03.webp b/game/characters/hermione/chibis/grope_ass/front_g_03.webp new file mode 100644 index 00000000..5579028c --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_g_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9d157bd3af95c30be351d05743739711fdf8daa67022e2906bc29549721d677 +size 186120 diff --git a/game/characters/hermione/chibis/grope_ass/front_g_05.webp b/game/characters/hermione/chibis/grope_ass/front_g_05.webp new file mode 100644 index 00000000..a2a19c10 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_g_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:313fbc58118da98aec09e523f0843ae8a4e0f595606d246c20b3ccb726b0726b +size 187460 diff --git a/game/characters/hermione/chibis/grope_ass/front_h_01.webp b/game/characters/hermione/chibis/grope_ass/front_h_01.webp new file mode 100644 index 00000000..512ca807 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_h_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5891a2398bf5a5fa6586c51f20938bd3dbbadc986c47dc2302df2ddc91e437b +size 186406 diff --git a/game/characters/hermione/chibis/grope_ass/front_h_02.webp b/game/characters/hermione/chibis/grope_ass/front_h_02.webp new file mode 100644 index 00000000..8891ab56 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_h_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be44d6b3a23bb088a2cc545c357d6c70b184c412a7d044f238d98e6ed583e7e6 +size 186544 diff --git a/game/characters/hermione/chibis/grope_ass/front_h_03.webp b/game/characters/hermione/chibis/grope_ass/front_h_03.webp new file mode 100644 index 00000000..185ff1e9 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_h_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62b0a2e0c3a43bb46d10fd03e1e232d8a3f9fbb8fd2c523e4d9f3f7fba741fb5 +size 186344 diff --git a/game/characters/hermione/chibis/grope_ass/front_h_05.webp b/game/characters/hermione/chibis/grope_ass/front_h_05.webp new file mode 100644 index 00000000..fdba73b3 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/front_h_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c1dffd1e972e2c0c3cb79d4c933e29c1e4a91db62a6dd3b117b8f3a144a6a16 +size 187994 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/back_g_01.webp b/game/characters/hermione/chibis/grope_ass/not_used/back_g_01.webp new file mode 100644 index 00000000..07b614f9 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/back_g_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b18e4b43f64880b4bcab87ce30b3e530ac19fdb39aa0ed4608d7ebb7bf6019c7 +size 50902 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/back_g_02.webp b/game/characters/hermione/chibis/grope_ass/not_used/back_g_02.webp new file mode 100644 index 00000000..e26133e1 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/back_g_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b2f00189e5fbd1a110b55562b31387e914eb9ed76a21038671f36086a4e971f +size 50820 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/back_g_03.webp b/game/characters/hermione/chibis/grope_ass/not_used/back_g_03.webp new file mode 100644 index 00000000..3c9ecb52 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/back_g_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d82c9de8f6d6ac5a3d846495b7a9baaeec19b9af8dc5daaf8795f33e2babf91f +size 50600 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/back_g_05.webp b/game/characters/hermione/chibis/grope_ass/not_used/back_g_05.webp new file mode 100644 index 00000000..b9f5e116 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/back_g_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5b3bba77e08c5b7816bd4a22e295b8f8efc597bc271c163f9fbd8167d3587b1 +size 51058 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/back_h_01.webp b/game/characters/hermione/chibis/grope_ass/not_used/back_h_01.webp new file mode 100644 index 00000000..5eb8eb93 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/back_h_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:973f93596e37f2f7148d46dc294dde627af1a3f0fbd58e6f1f8f8469aaf90795 +size 50808 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/back_h_02.webp b/game/characters/hermione/chibis/grope_ass/not_used/back_h_02.webp new file mode 100644 index 00000000..c3471e77 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/back_h_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0883f475f57aa472231596e1f5ead988aadf105a574dea691376e960708d15a9 +size 50672 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/back_h_03.webp b/game/characters/hermione/chibis/grope_ass/not_used/back_h_03.webp new file mode 100644 index 00000000..1e72af21 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/back_h_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:251f4289bc3f06920dcb3eb0043bfe8d3b7b311bccacdc4098e7e30520367ecb +size 50646 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/back_h_05.webp b/game/characters/hermione/chibis/grope_ass/not_used/back_h_05.webp new file mode 100644 index 00000000..8dd4b336 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/back_h_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6932b0a11a0e29cc30c3558bfc78ba62f12f6cdc4e6c24c9876b01477a17526 +size 51110 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/front_c_01.webp b/game/characters/hermione/chibis/grope_ass/not_used/front_c_01.webp new file mode 100644 index 00000000..d2f01d6c --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/front_c_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b752ef278e454d73768c02d41e1b48f0f05f56a00768a3640ddf363793770be +size 51090 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/front_c_02.webp b/game/characters/hermione/chibis/grope_ass/not_used/front_c_02.webp new file mode 100644 index 00000000..dba39b3f --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/front_c_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5556d1093e67ef6e50c22ec23a7adcdf43858fe0551387dad6a77c0e77c41265 +size 50742 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/front_c_03.webp b/game/characters/hermione/chibis/grope_ass/not_used/front_c_03.webp new file mode 100644 index 00000000..68293a93 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/front_c_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53f32d639d7e27ea2b3e0ab26271fff51b09cab65f4e2bf48804bf2d91e377c4 +size 50882 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/front_c_05.webp b/game/characters/hermione/chibis/grope_ass/not_used/front_c_05.webp new file mode 100644 index 00000000..14b3aa1c --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/front_c_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a0a26d4929319ede6857f4213d5a4f90e45614a02dddad1e36df085b309c750 +size 56806 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/front_f_01.webp b/game/characters/hermione/chibis/grope_ass/not_used/front_f_01.webp new file mode 100644 index 00000000..9a27818f --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/front_f_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56483f7b6ee0ef893e339ba20503b4e320070cfe4c0a1c0416d4e9dc88743e5e +size 50646 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/front_f_02.webp b/game/characters/hermione/chibis/grope_ass/not_used/front_f_02.webp new file mode 100644 index 00000000..5d7f0f70 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/front_f_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c0bbba2600aca0e6c5057f5b869fe925791484c29fff32c64e31e75d61418cf +size 50438 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/front_f_03.webp b/game/characters/hermione/chibis/grope_ass/not_used/front_f_03.webp new file mode 100644 index 00000000..874317a2 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/front_f_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a4fbe2fded910b4ffedca5e6e12e936a169ccdd78290555944d80c37396c259 +size 50400 diff --git a/game/characters/hermione/chibis/grope_ass/not_used/front_f_05.webp b/game/characters/hermione/chibis/grope_ass/not_used/front_f_05.webp new file mode 100644 index 00000000..4d6089b5 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass/not_used/front_f_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:473002d4dc445d2fa2fc1d9550f2a184f4a9e3058872230ee0329d3602ecb82a +size 56322 diff --git a/game/characters/hermione/chibis/grope_ass_podium/blink.webp b/game/characters/hermione/chibis/grope_ass_podium/blink.webp new file mode 100644 index 00000000..fb3b9292 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass_podium/blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:447f7c4bcdab97a57d329945361e808e3ccd3bd23bf14681d7af3b4eafd80f8a +size 1658 diff --git a/game/characters/hermione/chibis/grope_ass_podium/close.webp b/game/characters/hermione/chibis/grope_ass_podium/close.webp new file mode 100644 index 00000000..30916e67 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass_podium/close.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05a1e855138d05b398a133e5cfd9f4bcafc5c9ed3c49d9a96e7881b41cdb99ad +size 2596 diff --git a/game/characters/hermione/chibis/grope_ass_podium/cumming.webp b/game/characters/hermione/chibis/grope_ass_podium/cumming.webp new file mode 100644 index 00000000..931e500a --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass_podium/cumming.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1def5610dcb9b20bbb035f8959849aa0de311fe4754cc87346bb860e888adc14 +size 3528 diff --git a/game/characters/hermione/chibis/grope_ass_podium/grope_1.webp b/game/characters/hermione/chibis/grope_ass_podium/grope_1.webp new file mode 100644 index 00000000..65eb8e27 --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass_podium/grope_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:409c8c92b456eba8abdc0bd17cfa0bf1dfb6f144836513ed3244ed24bb9090ab +size 94196 diff --git a/game/characters/hermione/chibis/grope_ass_podium/grope_2.webp b/game/characters/hermione/chibis/grope_ass_podium/grope_2.webp new file mode 100644 index 00000000..4c85c1ae --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass_podium/grope_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:378c4a829b3e1eebe15a71e12795aabd00bcf4f3d7658543d80d29d83e41331f +size 95126 diff --git a/game/characters/hermione/chibis/grope_ass_podium/grope_3.webp b/game/characters/hermione/chibis/grope_ass_podium/grope_3.webp new file mode 100644 index 00000000..92e1637e --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass_podium/grope_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd4a7ba2b88114b42f7c729162eda62120735037331a01552315fb06e0ba28b8 +size 94710 diff --git a/game/characters/hermione/chibis/grope_ass_podium/horny.webp b/game/characters/hermione/chibis/grope_ass_podium/horny.webp new file mode 100644 index 00000000..eaddb29b --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass_podium/horny.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:759bad0265b026f772371866002bd925f8265a6a280e5704b904f6a8472fdd1f +size 3138 diff --git a/game/characters/hermione/chibis/grope_ass_podium/idle.webp b/game/characters/hermione/chibis/grope_ass_podium/idle.webp new file mode 100644 index 00000000..bcaeeb6f --- /dev/null +++ b/game/characters/hermione/chibis/grope_ass_podium/idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d426a68eb4d11f7f05e5205142d873d89f9bbd3a7e67cebc502ae9e6804f1601 +size 92166 diff --git a/game/characters/hermione/chibis/grope_breasts/01.webp b/game/characters/hermione/chibis/grope_breasts/01.webp new file mode 100644 index 00000000..9ac33de2 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32ecf2eec5169fc5df0f3eed533898dcf75e3b5c5a5d34805ed7b98db1e8ad51 +size 57838 diff --git a/game/characters/hermione/chibis/grope_breasts/02.webp b/game/characters/hermione/chibis/grope_breasts/02.webp new file mode 100644 index 00000000..4cb0a3ae --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:729027ebb5859685ea7f79fe65e4f1c4a0f2ea8d0172fde303f5e5ab2566c6d9 +size 57880 diff --git a/game/characters/hermione/chibis/grope_breasts/03.webp b/game/characters/hermione/chibis/grope_breasts/03.webp new file mode 100644 index 00000000..0b6b1691 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c51c3bfd492c23aae53c36091efa98ec5b403564a4d8030a16665755912eaf5 +size 57880 diff --git a/game/characters/hermione/chibis/grope_breasts/04.webp b/game/characters/hermione/chibis/grope_breasts/04.webp new file mode 100644 index 00000000..4cf1bf46 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b243304821994a8d27ffd3f823acd3a06312dcf46405d6bc7fa67c004de04c95 +size 57852 diff --git a/game/characters/hermione/chibis/grope_breasts/05.webp b/game/characters/hermione/chibis/grope_breasts/05.webp new file mode 100644 index 00000000..77357a37 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aaa463cc3ab0a48408a85910b3376cbd0adfba74ad80df9a7bc54b87be9fc0a1 +size 57930 diff --git a/game/characters/hermione/chibis/grope_breasts/06.webp b/game/characters/hermione/chibis/grope_breasts/06.webp new file mode 100644 index 00000000..a000943b --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75cf3bb9f58f682397417840678349d6cd8e9f5f1ff718539df6b3db46dab8b6 +size 57824 diff --git a/game/characters/hermione/chibis/grope_breasts/07.webp b/game/characters/hermione/chibis/grope_breasts/07.webp new file mode 100644 index 00000000..4951e416 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac301ca48f84c776b198e908ad9162dfa3f85bff103e32ead8c17d976bc97d0e +size 57912 diff --git a/game/characters/hermione/chibis/grope_breasts/08.webp b/game/characters/hermione/chibis/grope_breasts/08.webp new file mode 100644 index 00000000..613292e7 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ac8769c54f1fc9a8c9534c850a02042b4e4898b04485efbc6b64d0655fe6a7e +size 57818 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_01.webp b/game/characters/hermione/chibis/grope_breasts/bare_01.webp new file mode 100644 index 00000000..d3b1226b --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72fac9984f440e0e6f9607e4dc5f4e4c689374188730dd62bef4ad498e415bf8 +size 58038 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_02.webp b/game/characters/hermione/chibis/grope_breasts/bare_02.webp new file mode 100644 index 00000000..a38f22c5 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a51627ffd238ed48984691b3657af1ec772e7432087a849c960a1c95d6797dd6 +size 57994 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_03.webp b/game/characters/hermione/chibis/grope_breasts/bare_03.webp new file mode 100644 index 00000000..dd7e38a8 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c14ccf769f21087377005ceb8b8f09409ac738ba8f846313bea3c92e31879b4 +size 58056 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_04.webp b/game/characters/hermione/chibis/grope_breasts/bare_04.webp new file mode 100644 index 00000000..205c64da --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7394ba0211639f933e0716da4f1dc1f48a7442802196f6c2a9e6f1ae7c048a2e +size 57974 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_05.webp b/game/characters/hermione/chibis/grope_breasts/bare_05.webp new file mode 100644 index 00000000..e87f8b2a --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4171e4c7d7b524bdd9b856db747d12c11516cb67af8a6ccbb8fa6ef4e4f3e9f8 +size 58048 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_06.webp b/game/characters/hermione/chibis/grope_breasts/bare_06.webp new file mode 100644 index 00000000..b692858d --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be9a228e86c3c057c77059fad0d8eebbf1745d56dd922a8cd589fa533a9c6040 +size 58094 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_07.webp b/game/characters/hermione/chibis/grope_breasts/bare_07.webp new file mode 100644 index 00000000..1c16af65 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ca27601f2c19315747f6ae10de0237dbbc7c217b5e4893c46ed5cfb15413ada +size 58060 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_08.webp b/game/characters/hermione/chibis/grope_breasts/bare_08.webp new file mode 100644 index 00000000..f797f6d8 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43ceb3438b5c177287545b9dff121ee68312c1fb0465e8dc96ea37bc949aa29f +size 58118 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_n_01.webp b/game/characters/hermione/chibis/grope_breasts/bare_n_01.webp new file mode 100644 index 00000000..1a860cbb --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_n_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:472f9165e8b9d19427ddecf8ae52bc58c44701d350045b5180ac2e02c4ff5c96 +size 56860 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_n_02.webp b/game/characters/hermione/chibis/grope_breasts/bare_n_02.webp new file mode 100644 index 00000000..06fe0a9f --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_n_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:addbb670daa71f70419946cacb4bb7b20168cf10bc8d102b8ceed89c15516c1c +size 56802 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_n_03.webp b/game/characters/hermione/chibis/grope_breasts/bare_n_03.webp new file mode 100644 index 00000000..95a7f244 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_n_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9926275f34248e58769da20aff4ad2e5062b1dae2afc865925cac0ade8f841db +size 56896 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_n_04.webp b/game/characters/hermione/chibis/grope_breasts/bare_n_04.webp new file mode 100644 index 00000000..e5bfc490 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_n_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33cb86105bf5560838cc1010a32c97cfca6cfa515f4beffb64e29b7d456e7d78 +size 56778 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_n_05.webp b/game/characters/hermione/chibis/grope_breasts/bare_n_05.webp new file mode 100644 index 00000000..a407a4c1 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_n_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ba98a84f789d9e91673ab96d88eec2f1fc03b1191d9e3ad2b4cf437573b7497 +size 56776 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_n_06.webp b/game/characters/hermione/chibis/grope_breasts/bare_n_06.webp new file mode 100644 index 00000000..ed9a2be8 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_n_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68c82d613ce591c3323d2f013ce5da660db45e88b194da7b5d1f70b7ccc0254d +size 56756 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_n_07.webp b/game/characters/hermione/chibis/grope_breasts/bare_n_07.webp new file mode 100644 index 00000000..f03a98f5 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_n_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e53320401d8625aaee73e3006301ebc7e1bf9c925846de8e7b4a67157e8edf5 +size 56762 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_n_08.webp b/game/characters/hermione/chibis/grope_breasts/bare_n_08.webp new file mode 100644 index 00000000..161fd8cd --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_n_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f05aaddac8a49a78825927bf13214461c999db10979ab9f4d84f5bc808520f1 +size 56848 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_01.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_01.webp new file mode 100644 index 00000000..236d7306 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbfd6c05ca66320469836c1880e2be7fec2906c4f0cbd65c8327ccde92ef7b24 +size 183774 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_02.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_02.webp new file mode 100644 index 00000000..ce207deb --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8a51f0f8d39ef09ae60565e0b37b404c982b281d0cdea475047cd526184fc4f +size 184040 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_03.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_03.webp new file mode 100644 index 00000000..33d3bc17 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b715fe3788044078c75e44f99fcc0cd7ae4a41c0cf5cd31e1aa38f15e0d4063e +size 183718 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_04.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_04.webp new file mode 100644 index 00000000..4024d176 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2e763785acfa648bfc4d42c3906355679d19958a072f5246056d8a2f6ee4dc9 +size 183762 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_05.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_05.webp new file mode 100644 index 00000000..884529c7 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8fe88fcebbcd110a5c33dea1eaee2f5e236d6c5f656f6c0971d0aabd9b86a7b +size 184428 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_06.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_06.webp new file mode 100644 index 00000000..5d51bf93 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec440ce777b445bb21146269264f67e841e41f2eeff2f35ba2b5e82fa7063600 +size 182844 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_07.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_07.webp new file mode 100644 index 00000000..0262fb84 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c21f11d53225a8b833ffe88c62a921f4d8c18807e616b1240f18b8c09178b7e +size 184080 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_08.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_08.webp new file mode 100644 index 00000000..9d9ba860 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac56b324650a386db59c8dada9cc085db974a9117a66f4ad9884f8484bdf6f78 +size 185422 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_lift_01.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_01.webp new file mode 100644 index 00000000..ffec4326 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:265306cdc0977c711dd882d53caac9856eaaec2dc9873f990317289e1ba9b375 +size 185170 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_lift_02.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_02.webp new file mode 100644 index 00000000..dd77ba3e --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:229905761ad782e290d5670880b18953a10af2384063dca7610c70323708ac72 +size 184572 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_lift_03.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_03.webp new file mode 100644 index 00000000..78fc9809 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9b6d95c064aabd463653ab554369805bbe9c5af5bd9aa0803c1b4fae37d7b65 +size 184800 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_lift_04.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_04.webp new file mode 100644 index 00000000..0617c8b2 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56b3677d4684cc526aae0323dac1b0c9981e0d8e70890d30eab290ce3b939002 +size 184536 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_lift_05.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_05.webp new file mode 100644 index 00000000..a840abab --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08bdf69bb0f07248e9b94a2f3ad70e7e4f698b4e0508f20aefe93bb1ff4410fa +size 184372 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_lift_06.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_06.webp new file mode 100644 index 00000000..7f9414d7 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9f140b78e1c1e51dd0f118325843ccb47d54f43a4e9d4e77dcb7848040da38f +size 184760 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_lift_07.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_07.webp new file mode 100644 index 00000000..45bf1fc9 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2541fa639bf4a2a01bfed18bfb7a7bd3cc8adac48e2aae68de55908adccd2746 +size 184564 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_o_lift_08.webp b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_08.webp new file mode 100644 index 00000000..314abd41 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_o_lift_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:749e05340041f17f025fbf2ec7b63f27604e1d78a0fce11eaf099219068f25d6 +size 184386 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_p_01.webp b/game/characters/hermione/chibis/grope_breasts/bare_p_01.webp new file mode 100644 index 00000000..c7069529 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_p_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4afcf50db3af4a9bebcf90b54cf9773d6e77d78f1f561b99a36639f6d53cb5af +size 183330 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_p_02.webp b/game/characters/hermione/chibis/grope_breasts/bare_p_02.webp new file mode 100644 index 00000000..a47b7391 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_p_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df82c37465e37492d6b19443012c9074af40ecccf4f6d046ce68e0bdf0e606d9 +size 183318 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_p_03.webp b/game/characters/hermione/chibis/grope_breasts/bare_p_03.webp new file mode 100644 index 00000000..c5153962 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_p_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0b35eede3a368a5ccd015156fa69431a455e2aa96b73dddd3a5df1dd0c32102 +size 182936 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_p_04.webp b/game/characters/hermione/chibis/grope_breasts/bare_p_04.webp new file mode 100644 index 00000000..4d8f77ec --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_p_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45aa55caaae9e6f1d7b214c095edc0fa6f0420b3ff69588598cfba8b842781d4 +size 182828 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_p_05.webp b/game/characters/hermione/chibis/grope_breasts/bare_p_05.webp new file mode 100644 index 00000000..6a4d8f1c --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_p_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8722c3852c87407619add6a881a9fd3de058bda91ddd71ad1f584c24ae73e73 +size 183680 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_p_06.webp b/game/characters/hermione/chibis/grope_breasts/bare_p_06.webp new file mode 100644 index 00000000..abb34c63 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_p_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee748e92e2442a78b4aef103393c6a828a1021c52c2147527aee938179131ee5 +size 182874 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_p_07.webp b/game/characters/hermione/chibis/grope_breasts/bare_p_07.webp new file mode 100644 index 00000000..8d0e1d0b --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_p_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e7f58b1293e0bbf3be93c028cfae159c235163c500a8eb076ae9d1dc9a13b0e +size 183372 diff --git a/game/characters/hermione/chibis/grope_breasts/bare_p_08.webp b/game/characters/hermione/chibis/grope_breasts/bare_p_08.webp new file mode 100644 index 00000000..79417b70 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/bare_p_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ffa283eebb8be43ee07a5f737c936f5ab87c22f5951466a7c51fb48cb8a259b +size 183618 diff --git a/game/characters/hermione/chibis/grope_breasts/blink.webp b/game/characters/hermione/chibis/grope_breasts/blink.webp new file mode 100644 index 00000000..73951b25 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:927e31a214042614000dea9303dc2317a97d152f142b25f5451232873599c795 +size 2488 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_01.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_01.webp new file mode 100644 index 00000000..d11b0c81 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75aba8d97408215534d5a0cc681ce24bc310cdd510de1c222a542e3e77e38b6e +size 58804 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_02.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_02.webp new file mode 100644 index 00000000..ac3d32fb --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90150313209bf260c7f42d93f62a3311ef31230b3c133d797985fd432ff092db +size 58624 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_03.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_03.webp new file mode 100644 index 00000000..91f0f7ab --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75606e97f1a864395c0b522c718ab654e22939e469979e1a91f128a005f2a5eb +size 58802 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_04.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_04.webp new file mode 100644 index 00000000..8e03d8c1 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:173518a0fbfe28618c3d7de8e3c95d21fb1712205db5464d085a888d771f3e3b +size 59052 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_01.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_01.webp new file mode 100644 index 00000000..f8fafbc8 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68df05c1b779ca6214ebd835c3293c4d01d3bf43714d346d1eeab8a53c0aaf95 +size 190482 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_02.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_02.webp new file mode 100644 index 00000000..c507901e --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5e6e157866862c71cee9d61ccbd7838acece52e46c63493f1234943fcce2911 +size 189900 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_03.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_03.webp new file mode 100644 index 00000000..181793d3 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7833c45c11cd94326441347e0919464c13982453a8a25e5e6a414bf9b1c981b0 +size 190714 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_04.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_04.webp new file mode 100644 index 00000000..789bb082 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83d14fed0be4e4a3819d75e98e3228c74eedce629fa21891aca86d728661c401 +size 191738 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_01.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_01.webp new file mode 100644 index 00000000..5b6ba52d --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b805a2597fe4af624f8ef1bd0bf681ac766c52188f8af0bd32e904f616691aec +size 192384 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_02.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_02.webp new file mode 100644 index 00000000..2aefb1ef --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2348dee4b40569180109f2844de3679dc45e2e4205a5abe0c75713f5a7b8f4d +size 191860 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_03.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_03.webp new file mode 100644 index 00000000..f9bd19a4 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f75eb1237ba75b17b6b813831fadd22331142955a28b9cc47ccabe1682134b3d +size 192526 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_04.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_04.webp new file mode 100644 index 00000000..517396c4 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a31fd57640f14aba315bd49dc19dce412cbb29e3a6308211773afdeaa2338617 +size 193806 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_clothed_01.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_clothed_01.webp new file mode 100644 index 00000000..6d6a794d --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_clothed_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9d598bafaad6c64cfffe2779e8a305762566ba7f732111cf19b6577090f1926 +size 191804 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_clothed_02.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_clothed_02.webp new file mode 100644 index 00000000..70637d48 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_clothed_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f2b4245e58871132ae553126a4265b5c0146883ace3b15516874d9fd799d50e +size 191538 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_clothed_03.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_clothed_03.webp new file mode 100644 index 00000000..86f2bfa6 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_clothed_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f574615234dfb648aa717cbaa1401ddbc86bcd54662adfda8b930c96e6c25eed +size 192176 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_clothed_04.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_clothed_04.webp new file mode 100644 index 00000000..c1ae702e --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_clothed_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00dcc441644e46fdf8912adad0e08886233d78fdd6c0a441646237067a23dd8c +size 193178 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_naked_01.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_naked_01.webp new file mode 100644 index 00000000..2f85cfa0 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_naked_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cddb4c138f90ab9b272dd1181fa9dcfc5972031b444edf761e4a0e4921781793 +size 188750 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_naked_02.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_naked_02.webp new file mode 100644 index 00000000..405b1411 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_naked_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e60bc1e96f0d50ea26c4b820f340ae519840d5b11201ca5ca567534b0bae26d +size 188048 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_naked_03.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_naked_03.webp new file mode 100644 index 00000000..e56c72d9 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_naked_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc1ec282730f31fd55de5384674609ac1876c8a99f5d4a0571a7f144f07da531 +size 188932 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_naked_04.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_naked_04.webp new file mode 100644 index 00000000..ac2c848b --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_naked_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a5972fd4fccc29c8b94e656b5e879f2c971a2a486cf89abcf419897657eb755 +size 190434 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_topless_01.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_topless_01.webp new file mode 100644 index 00000000..a4457427 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_topless_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68b2e4d8cbca00bf046b6293a52f526f233040df7ffcf178f537cdda1e7ec921 +size 186108 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_topless_02.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_topless_02.webp new file mode 100644 index 00000000..6a8f2617 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_topless_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f15f156e63bdb1c2f482543e8f64f9c4e7f57424ed9544d246aedac870f802f +size 184702 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_topless_03.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_topless_03.webp new file mode 100644 index 00000000..c88d9ed1 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_topless_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bddd555625287b0da0cbe6b03f3ada5debb1ddf8c9a5780c99c7ff83a38f19e3 +size 185356 diff --git a/game/characters/hermione/chibis/grope_breasts/masturbate_topless_04.webp b/game/characters/hermione/chibis/grope_breasts/masturbate_topless_04.webp new file mode 100644 index 00000000..04ab8744 --- /dev/null +++ b/game/characters/hermione/chibis/grope_breasts/masturbate_topless_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58ffb498f5f3ad2634b771c7dd4dbff39157f7a7ef418811bfddaaaec2bba0fa +size 186668 diff --git a/game/characters/hermione/chibis/handjob/01.webp b/game/characters/hermione/chibis/handjob/01.webp new file mode 100644 index 00000000..6b8a4e20 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3358b8bd80a7cf77017023f40573835ca1b08274725946511408b8e5ee181559 +size 137478 diff --git a/game/characters/hermione/chibis/handjob/02.webp b/game/characters/hermione/chibis/handjob/02.webp new file mode 100644 index 00000000..b934f4f2 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a21ec60e22a376b32cbedab47e47d473de7ce24fb0af60b3113e2f852f9441b9 +size 137238 diff --git a/game/characters/hermione/chibis/handjob/03.webp b/game/characters/hermione/chibis/handjob/03.webp new file mode 100644 index 00000000..9cfd64d1 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e13effb4aab2ea6ca53357caa8ed16b9383d0b9f9104dd81f74562f23455851 +size 137260 diff --git a/game/characters/hermione/chibis/handjob/04.webp b/game/characters/hermione/chibis/handjob/04.webp new file mode 100644 index 00000000..b73a9ba6 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1db2353e0953080af87d1e449be35ed3430b5870bd452f729a1c4b6da2afbfdb +size 137148 diff --git a/game/characters/hermione/chibis/handjob/05.webp b/game/characters/hermione/chibis/handjob/05.webp new file mode 100644 index 00000000..d2e9d7e4 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97f449af85a2710ce8a0aec9e91eacd8d01c2074114def32d4682016bc8d6764 +size 137718 diff --git a/game/characters/hermione/chibis/handjob/06.webp b/game/characters/hermione/chibis/handjob/06.webp new file mode 100644 index 00000000..e7bdd9b0 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22a9046fed9ea57d469e307e70b019b217af2ef4ce3bca247351c875508e349b +size 137676 diff --git a/game/characters/hermione/chibis/handjob/kiss_01.webp b/game/characters/hermione/chibis/handjob/kiss_01.webp new file mode 100644 index 00000000..4581f861 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/kiss_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f38d0de053f7ea26706e378a072a9e3651a617b2ede92f31e703d16c4de8f00 +size 129662 diff --git a/game/characters/hermione/chibis/handjob/kiss_02.webp b/game/characters/hermione/chibis/handjob/kiss_02.webp new file mode 100644 index 00000000..9983e334 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/kiss_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0eac30b944886c14f1f6b438b03f258bc41abe530ae7ac5214c9a20b1f6d9ec4 +size 129800 diff --git a/game/characters/hermione/chibis/handjob/kiss_03.webp b/game/characters/hermione/chibis/handjob/kiss_03.webp new file mode 100644 index 00000000..1cb2a4ff --- /dev/null +++ b/game/characters/hermione/chibis/handjob/kiss_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5176a4a3ddb83dad6e1ec93597b9f1a4c3cf1d165bd01e929b3a11316dd76bb +size 129548 diff --git a/game/characters/hermione/chibis/handjob/kiss_04.webp b/game/characters/hermione/chibis/handjob/kiss_04.webp new file mode 100644 index 00000000..ca5a2413 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/kiss_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77396b54fde5879d8577791a6afc2b7e5209edf5135a8ff6f83400593c941c8d +size 130418 diff --git a/game/characters/hermione/chibis/handjob/kiss_05.webp b/game/characters/hermione/chibis/handjob/kiss_05.webp new file mode 100644 index 00000000..34e500f1 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/kiss_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46d6453468b3e8646cb27cc99eb077b51e9eff93753784fbbde5880355862f1f +size 131196 diff --git a/game/characters/hermione/chibis/handjob/kiss_06.webp b/game/characters/hermione/chibis/handjob/kiss_06.webp new file mode 100644 index 00000000..b8f4bc29 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/kiss_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:136c1e8431922eae7072beb6ab014112588317b0cab291783b355a9a03e31b94 +size 130976 diff --git a/game/characters/hermione/chibis/handjob/kiss_07.webp b/game/characters/hermione/chibis/handjob/kiss_07.webp new file mode 100644 index 00000000..8425898f --- /dev/null +++ b/game/characters/hermione/chibis/handjob/kiss_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81f10a93d337b5102be1872a438cd2c20209dfddf2c0eeba6335d18454678d6e +size 129698 diff --git a/game/characters/hermione/chibis/handjob/kiss_08.webp b/game/characters/hermione/chibis/handjob/kiss_08.webp new file mode 100644 index 00000000..a29437d1 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/kiss_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1c9d12b26593e2933f8d6e8618216baf4d2aea6ba119d8299d163b28b349239 +size 129572 diff --git a/game/characters/hermione/chibis/handjob/kiss_09.webp b/game/characters/hermione/chibis/handjob/kiss_09.webp new file mode 100644 index 00000000..95ca40b3 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/kiss_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f226937361d3e0469068cd158d2f5c9c516931f9ef590e4e2c6b6b80db1bee1a +size 129672 diff --git a/game/characters/hermione/chibis/handjob/kiss_10.webp b/game/characters/hermione/chibis/handjob/kiss_10.webp new file mode 100644 index 00000000..26f6e63e --- /dev/null +++ b/game/characters/hermione/chibis/handjob/kiss_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2398be8e825e1954633cd262abf2a878243181a667d20849a4b81b99d81a90d7 +size 130000 diff --git a/game/characters/hermione/chibis/handjob/kiss_11.webp b/game/characters/hermione/chibis/handjob/kiss_11.webp new file mode 100644 index 00000000..e1322f85 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/kiss_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c75ffaf50f303881c1f81ddf6a3dad5671eca5bbe19e9496ff638a4f0c5a64f +size 129886 diff --git a/game/characters/hermione/chibis/handjob/kiss_12.webp b/game/characters/hermione/chibis/handjob/kiss_12.webp new file mode 100644 index 00000000..36cb8e7e --- /dev/null +++ b/game/characters/hermione/chibis/handjob/kiss_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6909b285e2fd4d607f6420677ad50c5ff0ebc27c24319aee353344b4b1b11c7 +size 129592 diff --git a/game/characters/hermione/chibis/handjob/sperm_kiss_01.webp b/game/characters/hermione/chibis/handjob/sperm_kiss_01.webp new file mode 100644 index 00000000..56751b96 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_kiss_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27df0b080266ccafb1937f85d1b8cc6a00e0941531940dd8caf00f6edcb8f9b7 +size 129702 diff --git a/game/characters/hermione/chibis/handjob/sperm_kiss_02.webp b/game/characters/hermione/chibis/handjob/sperm_kiss_02.webp new file mode 100644 index 00000000..68853be2 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_kiss_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3f572f3ac6058780e99fa532e7f15c9f613bf873d3b47e858ef4937c845ff14 +size 129648 diff --git a/game/characters/hermione/chibis/handjob/sperm_kiss_03.webp b/game/characters/hermione/chibis/handjob/sperm_kiss_03.webp new file mode 100644 index 00000000..24576836 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_kiss_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5623935639beb95a544b93f0f35b1c7e3627c551fbe7a412504c7180d50dde60 +size 129766 diff --git a/game/characters/hermione/chibis/handjob/sperm_kiss_04.webp b/game/characters/hermione/chibis/handjob/sperm_kiss_04.webp new file mode 100644 index 00000000..4ab44d4f --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_kiss_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87a0b7f00c8e09a4f126ad51fd0849a279451da6af7d505ac3ca354b84d8b58f +size 129672 diff --git a/game/characters/hermione/chibis/handjob/sperm_kiss_05.webp b/game/characters/hermione/chibis/handjob/sperm_kiss_05.webp new file mode 100644 index 00000000..d038c398 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_kiss_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fd0d39fe237c0c73f142fda297c1fb33ec4e8fce9716cb9aa3fa559001cf834 +size 129748 diff --git a/game/characters/hermione/chibis/handjob/sperm_kiss_06.webp b/game/characters/hermione/chibis/handjob/sperm_kiss_06.webp new file mode 100644 index 00000000..863978ba --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_kiss_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20063828587b6f8c68bc60db76281b22de50d6865052bca45ac52977a06740cf +size 129858 diff --git a/game/characters/hermione/chibis/handjob/sperm_kiss_07.webp b/game/characters/hermione/chibis/handjob/sperm_kiss_07.webp new file mode 100644 index 00000000..8f7fc2fc --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_kiss_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fffc86acf964672ef3c7ba8497d32eb4723d0a136141af7115b38b4143af55cb +size 129564 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_00.webp b/game/characters/hermione/chibis/handjob/sperm_on_00.webp new file mode 100644 index 00000000..9fe34476 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:455eafcd56a49167996a9af1d38e03138a57c7b9371b748565a9dfb434de23a5 +size 138756 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_01.webp b/game/characters/hermione/chibis/handjob/sperm_on_01.webp new file mode 100644 index 00000000..43ff3914 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6c3a2a888b81c1266cab175ecc80f0046de37091bd57b6845883bb7efb21457 +size 139072 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_02.webp b/game/characters/hermione/chibis/handjob/sperm_on_02.webp new file mode 100644 index 00000000..8df2cb1f --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e2b80ce1fc22ee1312e01df5015eacb7ab46c3e69a00ed375ee506b88edc085 +size 139098 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_03.webp b/game/characters/hermione/chibis/handjob/sperm_on_03.webp new file mode 100644 index 00000000..fb05e882 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:201eae2e9c9e5aa516c246e07606874cbd5b0f75c03a9bf4d941a4c46bce32e0 +size 139416 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_04.webp b/game/characters/hermione/chibis/handjob/sperm_on_04.webp new file mode 100644 index 00000000..5f442eb6 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87cd214b90ec67414f7ed14e6daecf5c8485604a530b97fe1567c339853f265f +size 139468 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_05.webp b/game/characters/hermione/chibis/handjob/sperm_on_05.webp new file mode 100644 index 00000000..86177562 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f15da6091cd8ba4369e24c0d201ceb9c765cd3e7d5d838e5921865c98c6d147a +size 139076 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_06.webp b/game/characters/hermione/chibis/handjob/sperm_on_06.webp new file mode 100644 index 00000000..45292a1e --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db604553f9349e3a18b09a0670ff03dd312456ab26659f587ade7aff3f2b4fe0 +size 139204 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_07.webp b/game/characters/hermione/chibis/handjob/sperm_on_07.webp new file mode 100644 index 00000000..5c2afea0 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc0efa7940c3470b833913c713a7505b4319e230604b2a7d2005b03fe5e40d83 +size 139282 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_08.webp b/game/characters/hermione/chibis/handjob/sperm_on_08.webp new file mode 100644 index 00000000..2611e30b --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d31bdf724902014e7a65792069ef237b45119ce66ff366223af1b4e986a57af1 +size 139164 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_09.webp b/game/characters/hermione/chibis/handjob/sperm_on_09.webp new file mode 100644 index 00000000..7bc3ed93 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0749a5b28b96d5ed307861ce5cd61230b42187c2ceb6374e565f7ee00ea00578 +size 139314 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_10.webp b/game/characters/hermione/chibis/handjob/sperm_on_10.webp new file mode 100644 index 00000000..af55fb98 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0031cda2de2b8cf657d6db3ea20e02b09f8379d24fd69b3b7ac80e88f5404377 +size 139496 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_11.webp b/game/characters/hermione/chibis/handjob/sperm_on_11.webp new file mode 100644 index 00000000..e0a489a6 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94df81944d67c7721b3527f87e5fc07141dc8464f6a73a0bac3939d6355701c1 +size 139564 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_12.webp b/game/characters/hermione/chibis/handjob/sperm_on_12.webp new file mode 100644 index 00000000..b974de07 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c9c7c398613488789c3a5702b71f6ed6b1a81385ebe8a4e9ebbe5a90a1a855a +size 139700 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_13.webp b/game/characters/hermione/chibis/handjob/sperm_on_13.webp new file mode 100644 index 00000000..06223667 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d53d9296eba7b2623f4ddfab8b866d034a75ebbca9b8a4eb5452db42023982fd +size 139710 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_14.webp b/game/characters/hermione/chibis/handjob/sperm_on_14.webp new file mode 100644 index 00000000..f311ecff --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c03f29d5e688f934c893cf137d525a356ec016af3d44bcfd4cb8b91f9ef8c87d +size 140164 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_15.webp b/game/characters/hermione/chibis/handjob/sperm_on_15.webp new file mode 100644 index 00000000..6cdeee81 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:407980271a43b724638568e4ab77e1d0cc76c4941d64d5f02329ceca1ceb14b8 +size 139996 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_16.webp b/game/characters/hermione/chibis/handjob/sperm_on_16.webp new file mode 100644 index 00000000..9b28836f --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48727b755d86f91d2815ad2663dccea18ec2b3a9e8611c84c9f805bca5ac9270 +size 139818 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_17.webp b/game/characters/hermione/chibis/handjob/sperm_on_17.webp new file mode 100644 index 00000000..11b020d9 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18326dff1355e66296b49e219e362d3b31158517cbb744b9fb4ada16b96d102c +size 140826 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_18.webp b/game/characters/hermione/chibis/handjob/sperm_on_18.webp new file mode 100644 index 00000000..b414a7c4 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6d20423acda42061c7124a2095b31ddb88737fd7909e8764810c927f3a59362 +size 140324 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_19.webp b/game/characters/hermione/chibis/handjob/sperm_on_19.webp new file mode 100644 index 00000000..ead48546 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abffc6810ec1fc94669a2822514b8db57ba67bbccacb0a4cc897396c9761e0cc +size 140456 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_20.webp b/game/characters/hermione/chibis/handjob/sperm_on_20.webp new file mode 100644 index 00000000..e4947429 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:530bfa93aaab0a28b3a9b85f6a67c8bfa104eb7f7d90d7b15e762ef5c940ee37 +size 139748 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_21.webp b/game/characters/hermione/chibis/handjob/sperm_on_21.webp new file mode 100644 index 00000000..21a60e10 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2bdafcb115cb39a0b55d9e40bdd1be296214768bd53c0e41ce31a5f5f1fabf93 +size 139802 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_22.webp b/game/characters/hermione/chibis/handjob/sperm_on_22.webp new file mode 100644 index 00000000..eee2b4c1 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e8277657590514f7bf01fe066c01b1a1c49ae2a71679d8078a86492a14df472 +size 139486 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_23.webp b/game/characters/hermione/chibis/handjob/sperm_on_23.webp new file mode 100644 index 00000000..ce816d67 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebcffd7d364a8843046397e1b765d2c5c881051fe98b2c3d407713621b3a6bd4 +size 139560 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_24.webp b/game/characters/hermione/chibis/handjob/sperm_on_24.webp new file mode 100644 index 00000000..7fb43e1b --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48ab358ca58d49be6e85ceeb9536ab656c1f5a895c79e0c89eb9976b683a183a +size 139226 diff --git a/game/characters/hermione/chibis/handjob/sperm_on_25.webp b/game/characters/hermione/chibis/handjob/sperm_on_25.webp new file mode 100644 index 00000000..65e40c5c --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_on_25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd31d73a0b387b0dca641e99fa20b2bd883f6d41b16d8d68f3e8f092d9592433 +size 139234 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_01.webp b/game/characters/hermione/chibis/handjob/sperm_under_01.webp new file mode 100644 index 00000000..70ea0bab --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70afe96bca40ed97ac49df987bcfa6c75949f63526913034c04a827bbb6b3afd +size 133752 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_02.webp b/game/characters/hermione/chibis/handjob/sperm_under_02.webp new file mode 100644 index 00000000..3ae45147 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d69166beb9146858ce0bd78a3122702218ef6a433321679290d9d4c23b29692 +size 134168 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_03.webp b/game/characters/hermione/chibis/handjob/sperm_under_03.webp new file mode 100644 index 00000000..f5a7eb13 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5d6e8926abed90c066487447bb6e04c184dc550a188802be7734f500548995b +size 133860 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_04.webp b/game/characters/hermione/chibis/handjob/sperm_under_04.webp new file mode 100644 index 00000000..7e65698a --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70abea5c91f22ed984a82cb44e0915f87e5794d9b2d579dfb5c88b2b2a3e0626 +size 133514 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_05.webp b/game/characters/hermione/chibis/handjob/sperm_under_05.webp new file mode 100644 index 00000000..d25fce7c --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7620359c4def1debadd2d06abfeb6e20d3a83e282ff3b178e60cf669bcbc9ded +size 133904 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_06.webp b/game/characters/hermione/chibis/handjob/sperm_under_06.webp new file mode 100644 index 00000000..45ecaa6c --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebee6b5ce3fa3d43372dfafc0e2c065387e6b91af69cdee01abadd7017cf535e +size 134104 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_07.webp b/game/characters/hermione/chibis/handjob/sperm_under_07.webp new file mode 100644 index 00000000..3a0f9361 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e06f3bc006c6afa3c789bc7e0196620bc1564100f84479087c2bd3a9eb378225 +size 134294 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_08.webp b/game/characters/hermione/chibis/handjob/sperm_under_08.webp new file mode 100644 index 00000000..bc6740e0 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2b9b25925d23dfc0b6d02bcdc2ec438bd8907b3335468d25c8683d70a6e84e2 +size 134172 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_09.webp b/game/characters/hermione/chibis/handjob/sperm_under_09.webp new file mode 100644 index 00000000..70ea0bab --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70afe96bca40ed97ac49df987bcfa6c75949f63526913034c04a827bbb6b3afd +size 133752 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_10.webp b/game/characters/hermione/chibis/handjob/sperm_under_10.webp new file mode 100644 index 00000000..70ea0bab --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70afe96bca40ed97ac49df987bcfa6c75949f63526913034c04a827bbb6b3afd +size 133752 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_11.webp b/game/characters/hermione/chibis/handjob/sperm_under_11.webp new file mode 100644 index 00000000..205679e6 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf8d77476fee553e1b5ba3f5d2893028450a15b737e1e633c0e66f0e1113af0e +size 133894 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_12.webp b/game/characters/hermione/chibis/handjob/sperm_under_12.webp new file mode 100644 index 00000000..b0e41d65 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db94ba08120f67d62494fc3f35619a5aaa215ad0f7e7cbdf08465ba8bd85a4d7 +size 133134 diff --git a/game/characters/hermione/chibis/handjob/sperm_under_13.webp b/game/characters/hermione/chibis/handjob/sperm_under_13.webp new file mode 100644 index 00000000..205679e6 --- /dev/null +++ b/game/characters/hermione/chibis/handjob/sperm_under_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf8d77476fee553e1b5ba3f5d2893028450a15b737e1e633c0e66f0e1113af0e +size 133894 diff --git a/game/characters/hermione/chibis/hit_on_head/01.webp b/game/characters/hermione/chibis/hit_on_head/01.webp new file mode 100644 index 00000000..acceede8 --- /dev/null +++ b/game/characters/hermione/chibis/hit_on_head/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:298ece26ee5b68f37ce54f06a3587dc05ba846d525903f5bc2d8d37f6861f5ed +size 54390 diff --git a/game/characters/hermione/chibis/hit_on_head/02.webp b/game/characters/hermione/chibis/hit_on_head/02.webp new file mode 100644 index 00000000..db8c130e --- /dev/null +++ b/game/characters/hermione/chibis/hit_on_head/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e727461041d512f36c407c4a52723346914bd9acb83472205051ce0a73cc5c58 +size 54218 diff --git a/game/characters/hermione/chibis/hit_on_head/03.webp b/game/characters/hermione/chibis/hit_on_head/03.webp new file mode 100644 index 00000000..8181182c --- /dev/null +++ b/game/characters/hermione/chibis/hit_on_head/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a94e18256b375abf500d5ec74a99d0f8d415509bd5d350700122b5eed9f432d1 +size 54920 diff --git a/game/characters/hermione/chibis/hit_on_head/04.webp b/game/characters/hermione/chibis/hit_on_head/04.webp new file mode 100644 index 00000000..a3e8a02f --- /dev/null +++ b/game/characters/hermione/chibis/hit_on_head/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd6595dee22c1d934bcb910e0782a7e22a3c2381b69a76c7cf9b600e32219c26 +size 55304 diff --git a/game/characters/hermione/chibis/kneel/1.webp b/game/characters/hermione/chibis/kneel/1.webp new file mode 100644 index 00000000..29d51da6 --- /dev/null +++ b/game/characters/hermione/chibis/kneel/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:468632a16fa350c089193580a291d776d33590275c99fc8a8d5d61d41de0aecf +size 47108 diff --git a/game/characters/hermione/chibis/kneel/2.webp b/game/characters/hermione/chibis/kneel/2.webp new file mode 100644 index 00000000..ded6777f --- /dev/null +++ b/game/characters/hermione/chibis/kneel/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a438effe674ca5f7a651bdd5331b220e290d1e85b3b007759f0306c9752f2780 +size 46926 diff --git a/game/characters/hermione/chibis/lev/shime10.webp b/game/characters/hermione/chibis/lev/shime10.webp new file mode 100644 index 00000000..6d75b407 --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5b7cf049d54c3bf82cb31738390f39ce908e321beeb259e1fd2b11f0409704f +size 10900 diff --git a/game/characters/hermione/chibis/lev/shime18.webp b/game/characters/hermione/chibis/lev/shime18.webp new file mode 100644 index 00000000..bfa705e4 --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:add6075469c23810d90e85429ad912063d6f85578506f972aaf1e8d682e7876f +size 10266 diff --git a/game/characters/hermione/chibis/lev/shime19.webp b/game/characters/hermione/chibis/lev/shime19.webp new file mode 100644 index 00000000..b8a83ba8 --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83a9c3a4a38ace58305bf4e5a660064e041e26ddc47aae10ff7e7bd5f0a8cf26 +size 10356 diff --git a/game/characters/hermione/chibis/lev/shime22.webp b/game/characters/hermione/chibis/lev/shime22.webp new file mode 100644 index 00000000..23b61b0c --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2eb1648efe7818803f768bb5c47bc2cf71c5c68353b040b528fbda0e2eaa4f4f +size 10502 diff --git a/game/characters/hermione/chibis/lev/shime37.webp b/game/characters/hermione/chibis/lev/shime37.webp new file mode 100644 index 00000000..3f80dbd0 --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime37.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f4489e1dbbe6a7daaacea21af2a62f82289d7163f41046ecc1a5288c53d7c8e +size 10794 diff --git a/game/characters/hermione/chibis/lev/shime4.webp b/game/characters/hermione/chibis/lev/shime4.webp new file mode 100644 index 00000000..1ba1f943 --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bf0246859521bf962fdc9cd29c7fd0416b5b2e83e0ab2940a29477102880688 +size 9818 diff --git a/game/characters/hermione/chibis/lev/shime4b.webp b/game/characters/hermione/chibis/lev/shime4b.webp new file mode 100644 index 00000000..a66090f3 --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime4b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb846381b25c87f93b52355c7dd76e8a012ff4e7976beddeb712856f833a8362 +size 9848 diff --git a/game/characters/hermione/chibis/lev/shime4c.webp b/game/characters/hermione/chibis/lev/shime4c.webp new file mode 100644 index 00000000..8fda18a0 --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime4c.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cb55d09849de727351c9099e383e5018d1e37b2597e6077ef10076682979490 +size 9852 diff --git a/game/characters/hermione/chibis/lev/shime5.webp b/game/characters/hermione/chibis/lev/shime5.webp new file mode 100644 index 00000000..492f48ae --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:525161886c8e9fd692e42951c6e6b839f80a28d007c9f5b9fc683d4c098d8ad0 +size 10710 diff --git a/game/characters/hermione/chibis/lev/shime6.webp b/game/characters/hermione/chibis/lev/shime6.webp new file mode 100644 index 00000000..a98e65ee --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b8fa1a3f1282f5850cb9a192a810ea9067aee9f08fd7ade3cd38e483ac2668b +size 10912 diff --git a/game/characters/hermione/chibis/lev/shime7.webp b/game/characters/hermione/chibis/lev/shime7.webp new file mode 100644 index 00000000..e7d51e28 --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ac8756d8b4581ed3194a970531aebbe4ee264d5bae760557a618d206ec36c06 +size 10682 diff --git a/game/characters/hermione/chibis/lev/shime8.webp b/game/characters/hermione/chibis/lev/shime8.webp new file mode 100644 index 00000000..2406088d --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6ee2227dd7cdf8b340438d13b40d7e957b336108a1a05da6b57e67c05787fc6 +size 10870 diff --git a/game/characters/hermione/chibis/lev/shime9.webp b/game/characters/hermione/chibis/lev/shime9.webp new file mode 100644 index 00000000..eb4adafe --- /dev/null +++ b/game/characters/hermione/chibis/lev/shime9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4af9bd25b24ab7be9e25ac3f3a2b1af5b7840994f77d6895380361e9472fc264 +size 10724 diff --git a/game/characters/hermione/chibis/lift_skirt/aka07.webp b/game/characters/hermione/chibis/lift_skirt/aka07.webp new file mode 100644 index 00000000..88116280 --- /dev/null +++ b/game/characters/hermione/chibis/lift_skirt/aka07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abbe4e80e44f943890d2964fc953ea208fb548c5eba9a944a933590bc55d4ec9 +size 10538 diff --git a/game/characters/hermione/chibis/lift_skirt/aka08.webp b/game/characters/hermione/chibis/lift_skirt/aka08.webp new file mode 100644 index 00000000..5c792ee9 --- /dev/null +++ b/game/characters/hermione/chibis/lift_skirt/aka08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:742cffd9ad070f8f3862d7418d136ca050ff837e2d98bb1a8e14627b72b253fa +size 11104 diff --git a/game/characters/hermione/chibis/lift_skirt/aka09.webp b/game/characters/hermione/chibis/lift_skirt/aka09.webp new file mode 100644 index 00000000..2eab1354 --- /dev/null +++ b/game/characters/hermione/chibis/lift_skirt/aka09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83971552ca0cc792e740b1ff709cf9b8c4e1c8493a57ee49720afea601cac339 +size 11056 diff --git a/game/characters/hermione/chibis/lift_skirt/panties_00.webp b/game/characters/hermione/chibis/lift_skirt/panties_00.webp new file mode 100644 index 00000000..0557b006 --- /dev/null +++ b/game/characters/hermione/chibis/lift_skirt/panties_00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef82fee096318222e94ed15cbae726f4e6f9320eb6c6c9c02ea9b5cf0bdbd9c6 +size 46492 diff --git a/game/characters/hermione/chibis/lift_skirt/panties_01.webp b/game/characters/hermione/chibis/lift_skirt/panties_01.webp new file mode 100644 index 00000000..ffc5c31d --- /dev/null +++ b/game/characters/hermione/chibis/lift_skirt/panties_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ccfb1f82d4c1034279272cac1bf20ada68abe50f0425241d778c175975b9a4c7 +size 46048 diff --git a/game/characters/hermione/chibis/lift_skirt/panties_02.webp b/game/characters/hermione/chibis/lift_skirt/panties_02.webp new file mode 100644 index 00000000..21471f0a --- /dev/null +++ b/game/characters/hermione/chibis/lift_skirt/panties_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37ebe169a5218155ed5ba4c2c558348b534251afc9f70ad249266534e5298f3c +size 45208 diff --git a/game/characters/hermione/chibis/lift_skirt/panties_02_s.webp b/game/characters/hermione/chibis/lift_skirt/panties_02_s.webp new file mode 100644 index 00000000..0b62246d --- /dev/null +++ b/game/characters/hermione/chibis/lift_skirt/panties_02_s.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:345204574563c1f6d7db29e2e3224195fb64a7813fefeec4f94139c13ae3584e +size 16924 diff --git a/game/characters/hermione/chibis/lift_top/aka01.webp b/game/characters/hermione/chibis/lift_top/aka01.webp new file mode 100644 index 00000000..ec1cfea2 --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/aka01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a12433cbbc3af7b6628c76bf0f9efc8132f29c36e212705fe0b6e1435d9cf46 +size 10570 diff --git a/game/characters/hermione/chibis/lift_top/aka02.webp b/game/characters/hermione/chibis/lift_top/aka02.webp new file mode 100644 index 00000000..1190ec20 --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/aka02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30c4dd6a90aa28dd9fae4cd03e175e15822a6e63a73fe369f45bb814e684c177 +size 10528 diff --git a/game/characters/hermione/chibis/lift_top/aka03.webp b/game/characters/hermione/chibis/lift_top/aka03.webp new file mode 100644 index 00000000..f6c88c53 --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/aka03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78002a4a6de699fa26bac19758088f092d115b853d58b91fde82bbdec6c9c73d +size 10422 diff --git a/game/characters/hermione/chibis/lift_top/aka04.webp b/game/characters/hermione/chibis/lift_top/aka04.webp new file mode 100644 index 00000000..f3ba8ed1 --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/aka04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24c7c1ddf22db8a3708088aa1b0d7c8d961703af31c3fb99a4536b3b8c38da05 +size 10430 diff --git a/game/characters/hermione/chibis/lift_top/aka05.webp b/game/characters/hermione/chibis/lift_top/aka05.webp new file mode 100644 index 00000000..e25a07d0 --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/aka05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce6c15c9eaaa0b9ad3ae4357378c465e48a21f55941274b0eff8d6dae113c8ae +size 10484 diff --git a/game/characters/hermione/chibis/lift_top/aka06.webp b/game/characters/hermione/chibis/lift_top/aka06.webp new file mode 100644 index 00000000..d421dfb7 --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/aka06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a131f6c47578fdff23d6cc8cedffd8170b498b456e6312b0ff3715e28130c6f6 +size 10436 diff --git a/game/characters/hermione/chibis/lift_top/boing01.webp b/game/characters/hermione/chibis/lift_top/boing01.webp new file mode 100644 index 00000000..e3609061 --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/boing01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed3b17f1ad7999a41c4364329e1ffdaf83205826b401b4cdb5724c566aa6aca3 +size 53390 diff --git a/game/characters/hermione/chibis/lift_top/boing02.webp b/game/characters/hermione/chibis/lift_top/boing02.webp new file mode 100644 index 00000000..64749b68 --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/boing02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcd5f6795f3e4911c93b48956659f307e5c50799e0d153c96bc7daefe84ec935 +size 52966 diff --git a/game/characters/hermione/chibis/lift_top/boing03.webp b/game/characters/hermione/chibis/lift_top/boing03.webp new file mode 100644 index 00000000..8b110066 --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/boing03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab3d7968f2dd18052a9b2e2092f312e2e4fdf504a5b0dd15fb9393b20f0b3f2e +size 51088 diff --git a/game/characters/hermione/chibis/lift_top/boing04.webp b/game/characters/hermione/chibis/lift_top/boing04.webp new file mode 100644 index 00000000..3c1616ab --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/boing04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf353b9c55d3b2d28b76b0a0ccc4354f14c405c81393fdeab9d0fe9b47c0fd6f +size 52460 diff --git a/game/characters/hermione/chibis/lift_top/boing05.webp b/game/characters/hermione/chibis/lift_top/boing05.webp new file mode 100644 index 00000000..d450ee93 --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/boing05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f14bfd2c8ecca4a1199b098258b48af9f4db989256ea41b951db5e7a709582f5 +size 51356 diff --git a/game/characters/hermione/chibis/lift_top/boing06.webp b/game/characters/hermione/chibis/lift_top/boing06.webp new file mode 100644 index 00000000..5c22e123 --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/boing06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e27974805eab87630cf6e0459aba099aaebef03524c6bde1bcee97bdd85c682b +size 52454 diff --git a/game/characters/hermione/chibis/lift_top/tits_00.webp b/game/characters/hermione/chibis/lift_top/tits_00.webp new file mode 100644 index 00000000..e812ea2b --- /dev/null +++ b/game/characters/hermione/chibis/lift_top/tits_00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0563d20bba7ac1da77f8505467fd3d845ed46f524c389948ae52f45ed6fab83 +size 48340 diff --git a/game/characters/hermione/chibis/lying/aka23.webp b/game/characters/hermione/chibis/lying/aka23.webp new file mode 100644 index 00000000..e35ce1c2 --- /dev/null +++ b/game/characters/hermione/chibis/lying/aka23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:614b48287c96d36047c64867d10ac710a0f9c112e76c96d7b95d8af23fb6e280 +size 6812 diff --git a/game/characters/hermione/chibis/lying/aka24.webp b/game/characters/hermione/chibis/lying/aka24.webp new file mode 100644 index 00000000..14d6ded7 --- /dev/null +++ b/game/characters/hermione/chibis/lying/aka24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7079b196efe688753b0565cd3bf42bbbe2ae7e015e22ed4d7ac143869dbdf5d5 +size 6750 diff --git a/game/characters/hermione/chibis/lying/shime20.webp b/game/characters/hermione/chibis/lying/shime20.webp new file mode 100644 index 00000000..3715e5d3 --- /dev/null +++ b/game/characters/hermione/chibis/lying/shime20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ba2f56c8d03152a42dba24232806fd6407097cd7d3ca0e7af14c4f403221eb1 +size 6674 diff --git a/game/characters/hermione/chibis/lying/shime21.webp b/game/characters/hermione/chibis/lying/shime21.webp new file mode 100644 index 00000000..d47b4f98 --- /dev/null +++ b/game/characters/hermione/chibis/lying/shime21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:196c838401bdec6dfa934eac063bb8a6dfef42785dbd93ae9c4b65789277b54b +size 6664 diff --git a/game/characters/hermione/chibis/masturbate/01.webp b/game/characters/hermione/chibis/masturbate/01.webp new file mode 100644 index 00000000..67c2a847 --- /dev/null +++ b/game/characters/hermione/chibis/masturbate/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac5d36c182b12c072e4106e5fc9f4254d6b13349229a224b9eb1d9418ee9f3ef +size 43762 diff --git a/game/characters/hermione/chibis/masturbate/02.webp b/game/characters/hermione/chibis/masturbate/02.webp new file mode 100644 index 00000000..858ca6e6 --- /dev/null +++ b/game/characters/hermione/chibis/masturbate/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d3b2f51438ede40af794add85f6e685bf588594693b01917b60b33f820a7117 +size 43604 diff --git a/game/characters/hermione/chibis/masturbate/blink.webp b/game/characters/hermione/chibis/masturbate/blink.webp new file mode 100644 index 00000000..5dd00d01 --- /dev/null +++ b/game/characters/hermione/chibis/masturbate/blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e748876afa889419a91a30612c609158239f8251c5a633e2c7159b53272ad4f5 +size 8172 diff --git a/game/characters/hermione/chibis/potion/drink_1.webp b/game/characters/hermione/chibis/potion/drink_1.webp new file mode 100644 index 00000000..c9139167 --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f032f06589a457c3a3ad7ef4a8afc05028155e63d4bab321986cd9d574e18ac6 +size 55348 diff --git a/game/characters/hermione/chibis/potion/drink_2.webp b/game/characters/hermione/chibis/potion/drink_2.webp new file mode 100644 index 00000000..8bad549d --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:472ed6ae0a1f852c7e9cf67040108320745d19f9eb83067e228235f97a2a755e +size 54908 diff --git a/game/characters/hermione/chibis/potion/drink_3.webp b/game/characters/hermione/chibis/potion/drink_3.webp new file mode 100644 index 00000000..d0394d74 --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f741fc8ab915124080f63fe1916a6255d822dc4f6e40883d88209148c35c053 +size 54214 diff --git a/game/characters/hermione/chibis/potion/drink_4.webp b/game/characters/hermione/chibis/potion/drink_4.webp new file mode 100644 index 00000000..ed2373fa --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18aa7ce7513924e05a8e8fccf3448a0cc05c58a63ffd7ed8f989249d9c6d4b1e +size 52276 diff --git a/game/characters/hermione/chibis/potion/drink_5.webp b/game/characters/hermione/chibis/potion/drink_5.webp new file mode 100644 index 00000000..b2269bed --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67c01ace03cc50fc058e737392ee8d1b1103e94e37e447a284ea0158d1359aba +size 53742 diff --git a/game/characters/hermione/chibis/potion/drink_6.webp b/game/characters/hermione/chibis/potion/drink_6.webp new file mode 100644 index 00000000..ba29dad2 --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9015db75f957a35eb4bdadb9a38bac6a2caf12cf1589504e36f0383e3e42fa36 +size 54894 diff --git a/game/characters/hermione/chibis/potion/drink_7.webp b/game/characters/hermione/chibis/potion/drink_7.webp new file mode 100644 index 00000000..a66605b1 --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3c3385aceda752c4d7d8a54c80a2e378ebef9859f7988541448bce4ba456d2b +size 52884 diff --git a/game/characters/hermione/chibis/potion/drink_nude_1.webp b/game/characters/hermione/chibis/potion/drink_nude_1.webp new file mode 100644 index 00000000..e59fb435 --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_nude_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7312b1c91dae3b1fe7aade95b7d185a3bd3b426bf792427a8d2df7aca639693 +size 51096 diff --git a/game/characters/hermione/chibis/potion/drink_nude_2.webp b/game/characters/hermione/chibis/potion/drink_nude_2.webp new file mode 100644 index 00000000..4fcefdf2 --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_nude_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2633f6e735d705cd489395ff59e8d0ca589edef227d7658d8f8b8c7589bc0c2 +size 49990 diff --git a/game/characters/hermione/chibis/potion/drink_nude_3.webp b/game/characters/hermione/chibis/potion/drink_nude_3.webp new file mode 100644 index 00000000..a5c6b470 --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_nude_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fd520603ddbd89a3d2876e255f0e142a236c9f2fcd8677048b4e412d0ec6d1c +size 49164 diff --git a/game/characters/hermione/chibis/potion/drink_nude_4.webp b/game/characters/hermione/chibis/potion/drink_nude_4.webp new file mode 100644 index 00000000..5a116a0f --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_nude_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fc01d832bbdd4028242528c404f6bd877c9de39b3c68d029e33fbcb0e84af31 +size 47046 diff --git a/game/characters/hermione/chibis/potion/drink_nude_5.webp b/game/characters/hermione/chibis/potion/drink_nude_5.webp new file mode 100644 index 00000000..ad68f30b --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_nude_5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c4edcee70850d490077373d0b1a0838e4e140371987505579eb481aa39a1468 +size 48396 diff --git a/game/characters/hermione/chibis/potion/drink_nude_6.webp b/game/characters/hermione/chibis/potion/drink_nude_6.webp new file mode 100644 index 00000000..ea68187b --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_nude_6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:805f0aa21429b8055908bf093d0ca49bc412d88fad4985761e4973924cdfe94a +size 50056 diff --git a/game/characters/hermione/chibis/potion/drink_nude_7.webp b/game/characters/hermione/chibis/potion/drink_nude_7.webp new file mode 100644 index 00000000..17e6cd61 --- /dev/null +++ b/game/characters/hermione/chibis/potion/drink_nude_7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8195194f982eb2d934783302860735fc68d9d1e1c40c0c259dcb292bce8f545f +size 48224 diff --git a/game/characters/hermione/chibis/reading/0.webp b/game/characters/hermione/chibis/reading/0.webp new file mode 100644 index 00000000..39af7528 --- /dev/null +++ b/game/characters/hermione/chibis/reading/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82e42a47e8548a5acafb14cd7b830c123a3c9f133f455d1e02842832f77634fe +size 108706 diff --git a/game/characters/hermione/chibis/reading/0_sleep.webp b/game/characters/hermione/chibis/reading/0_sleep.webp new file mode 100644 index 00000000..0a4fcf3b --- /dev/null +++ b/game/characters/hermione/chibis/reading/0_sleep.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6dc439d517544a7410a9ff7b7dd272a88274a8e71c153329202ae3ba562a7ede +size 81256 diff --git a/game/characters/hermione/chibis/reading/1.webp b/game/characters/hermione/chibis/reading/1.webp new file mode 100644 index 00000000..650cfdf9 --- /dev/null +++ b/game/characters/hermione/chibis/reading/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38159890a519202906ddd172fe506c69e15d548dd8a50b3ad9b94c9121f152d8 +size 103260 diff --git a/game/characters/hermione/chibis/reading/1_sleep.webp b/game/characters/hermione/chibis/reading/1_sleep.webp new file mode 100644 index 00000000..4762fa0d --- /dev/null +++ b/game/characters/hermione/chibis/reading/1_sleep.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fd5b041de5295ded8d4104eb4abc8bd09e5c08e3bde2df34a8b8c61df62a869 +size 81478 diff --git a/game/characters/hermione/chibis/reading/2.webp b/game/characters/hermione/chibis/reading/2.webp new file mode 100644 index 00000000..91ec2505 --- /dev/null +++ b/game/characters/hermione/chibis/reading/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ca5d17bbe36855b62d379597541ba7c088b03e2663c9ff48952b42bffc0a8f2 +size 100974 diff --git a/game/characters/hermione/chibis/reading/3.webp b/game/characters/hermione/chibis/reading/3.webp new file mode 100644 index 00000000..b191b2b4 --- /dev/null +++ b/game/characters/hermione/chibis/reading/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8beed437c93be66f43594b2580d9ed80ca5d91d7e9761d0c5e0bae56287af46 +size 98872 diff --git a/game/characters/hermione/chibis/reading/4.webp b/game/characters/hermione/chibis/reading/4.webp new file mode 100644 index 00000000..7d6458e5 --- /dev/null +++ b/game/characters/hermione/chibis/reading/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb03e18f6602eab9593bd1155b8d52ea38dbebc41cb182934e6d5bcde410de94 +size 102218 diff --git a/game/characters/hermione/chibis/reading/5.webp b/game/characters/hermione/chibis/reading/5.webp new file mode 100644 index 00000000..d43da450 --- /dev/null +++ b/game/characters/hermione/chibis/reading/5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fea9d170185e35aaf204b217c405679c0fb41f80e3b4d67a45b4b5fb162c55ba +size 108088 diff --git a/game/characters/hermione/chibis/ribbon/blink.webp b/game/characters/hermione/chibis/ribbon/blink.webp new file mode 100644 index 00000000..e1f8ea58 --- /dev/null +++ b/game/characters/hermione/chibis/ribbon/blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3aea73df69745da1aaf1f17942f29ee56de1ae36ad96923faadb6d7c566da46 +size 45230 diff --git a/game/characters/hermione/chibis/ribbon/default.webp b/game/characters/hermione/chibis/ribbon/default.webp new file mode 100644 index 00000000..0aadae27 --- /dev/null +++ b/game/characters/hermione/chibis/ribbon/default.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9167b383e2b935ac2b983e8a05c8e1991144852c232bbacc651ab95acaa21541 +size 45534 diff --git a/game/characters/hermione/chibis/run/h_run_01.webp b/game/characters/hermione/chibis/run/h_run_01.webp new file mode 100644 index 00000000..26c0502d --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19e7f29b531bd7d156c3ad9c5b368bf6acf111b67ca0337bb143e326b665a8b5 +size 44782 diff --git a/game/characters/hermione/chibis/run/h_run_02.webp b/game/characters/hermione/chibis/run/h_run_02.webp new file mode 100644 index 00000000..a987b86e --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8f87dd47c24ba7e3467871d68b46814a86f5ba9aabba78214036093465cf9dd +size 46086 diff --git a/game/characters/hermione/chibis/run/h_run_03.webp b/game/characters/hermione/chibis/run/h_run_03.webp new file mode 100644 index 00000000..4ecd15bf --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfed4224a7deffb0476c890ab27d9c03d0f18f696a6e42e6bbd4efed47dc68a0 +size 46330 diff --git a/game/characters/hermione/chibis/run/h_run_04.webp b/game/characters/hermione/chibis/run/h_run_04.webp new file mode 100644 index 00000000..51ef8d7f --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ea20b4ab37ea09ae57c28c5c383832eb58b4165c43e7106d3d83eb159a5dc93 +size 46214 diff --git a/game/characters/hermione/chibis/run/h_run_05.webp b/game/characters/hermione/chibis/run/h_run_05.webp new file mode 100644 index 00000000..487cf6cd --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb12af4fab8008f2d4c8d90c04f7734fa227cc05364cb3a21fc9e4c636cfc52d +size 45990 diff --git a/game/characters/hermione/chibis/run/h_run_a_01.webp b/game/characters/hermione/chibis/run/h_run_a_01.webp new file mode 100644 index 00000000..26c0502d --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_a_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19e7f29b531bd7d156c3ad9c5b368bf6acf111b67ca0337bb143e326b665a8b5 +size 44782 diff --git a/game/characters/hermione/chibis/run/h_run_a_02.webp b/game/characters/hermione/chibis/run/h_run_a_02.webp new file mode 100644 index 00000000..a987b86e --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_a_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8f87dd47c24ba7e3467871d68b46814a86f5ba9aabba78214036093465cf9dd +size 46086 diff --git a/game/characters/hermione/chibis/run/h_run_a_03.webp b/game/characters/hermione/chibis/run/h_run_a_03.webp new file mode 100644 index 00000000..4ecd15bf --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_a_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfed4224a7deffb0476c890ab27d9c03d0f18f696a6e42e6bbd4efed47dc68a0 +size 46330 diff --git a/game/characters/hermione/chibis/run/h_run_a_04.webp b/game/characters/hermione/chibis/run/h_run_a_04.webp new file mode 100644 index 00000000..51ef8d7f --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_a_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ea20b4ab37ea09ae57c28c5c383832eb58b4165c43e7106d3d83eb159a5dc93 +size 46214 diff --git a/game/characters/hermione/chibis/run/h_run_a_05.webp b/game/characters/hermione/chibis/run/h_run_a_05.webp new file mode 100644 index 00000000..487cf6cd --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_a_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb12af4fab8008f2d4c8d90c04f7734fa227cc05364cb3a21fc9e4c636cfc52d +size 45990 diff --git a/game/characters/hermione/chibis/run/h_run_b_01.webp b/game/characters/hermione/chibis/run/h_run_b_01.webp new file mode 100644 index 00000000..21d8431a --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_b_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbed47bfeddabbc534dd28126726a92f206dbe3fbe76c8613eb95cccd642d0e1 +size 14984 diff --git a/game/characters/hermione/chibis/run/h_run_b_02.webp b/game/characters/hermione/chibis/run/h_run_b_02.webp new file mode 100644 index 00000000..d1f40884 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_b_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb9999f12b8a605e7af482a6fefefa062f1e98eb88622e027637857c8bd3ab4f +size 15410 diff --git a/game/characters/hermione/chibis/run/h_run_b_03.webp b/game/characters/hermione/chibis/run/h_run_b_03.webp new file mode 100644 index 00000000..86e46ff8 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_b_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e176b129443f90972dd8d9181545a187e539274cf8def9a024051594df5d480 +size 15548 diff --git a/game/characters/hermione/chibis/run/h_run_b_04.webp b/game/characters/hermione/chibis/run/h_run_b_04.webp new file mode 100644 index 00000000..124ce74e --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_b_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d996f9d5942cc93e9224a3f65792e04bf14bee93b8950b0275d91f84953a5b8f +size 15488 diff --git a/game/characters/hermione/chibis/run/h_run_b_05.webp b/game/characters/hermione/chibis/run/h_run_b_05.webp new file mode 100644 index 00000000..52822d81 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_b_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78c157a5ee89840ed0adaef36350e46c538700f492251699131e69d36c6cd287 +size 15440 diff --git a/game/characters/hermione/chibis/run/h_run_c_01.webp b/game/characters/hermione/chibis/run/h_run_c_01.webp new file mode 100644 index 00000000..0ac9b2be --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_c_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f086afabf832b703df8eab7ff0a1d61832876116513bae44c2a629eb56040170 +size 15006 diff --git a/game/characters/hermione/chibis/run/h_run_c_02.webp b/game/characters/hermione/chibis/run/h_run_c_02.webp new file mode 100644 index 00000000..6b825523 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_c_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d864c00589c63aaa3dc6ec4744104122877aaea33f07cad35e22645368bf075 +size 15556 diff --git a/game/characters/hermione/chibis/run/h_run_c_03.webp b/game/characters/hermione/chibis/run/h_run_c_03.webp new file mode 100644 index 00000000..84317a70 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_c_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4dc2538a5b92f4aab25c40806bc6493a83c721362546ae0e620732177b737cc3 +size 15624 diff --git a/game/characters/hermione/chibis/run/h_run_c_04.webp b/game/characters/hermione/chibis/run/h_run_c_04.webp new file mode 100644 index 00000000..7a29d039 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_c_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5efe5802c87c24e87f647c40f3e3ff4f70feb268704922dc8ab581a5d881fd12 +size 15594 diff --git a/game/characters/hermione/chibis/run/h_run_c_05.webp b/game/characters/hermione/chibis/run/h_run_c_05.webp new file mode 100644 index 00000000..915a4333 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_c_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c447a871b2808615d6d9f618ab18bb03ca0edcb8be0b02868570af523cb09ba3 +size 15484 diff --git a/game/characters/hermione/chibis/run/h_run_d_01.webp b/game/characters/hermione/chibis/run/h_run_d_01.webp new file mode 100644 index 00000000..5ebaa364 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_d_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92006df222409252170cd949eb5ddb729788e172647547f0a124a7cd121a4d69 +size 14966 diff --git a/game/characters/hermione/chibis/run/h_run_d_02.webp b/game/characters/hermione/chibis/run/h_run_d_02.webp new file mode 100644 index 00000000..d0d6e3e2 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_d_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7ae2ea3c6b534baba33a09e59b2815d67af67a6a43e01c6b29ed973b328f9d9 +size 15458 diff --git a/game/characters/hermione/chibis/run/h_run_d_03.webp b/game/characters/hermione/chibis/run/h_run_d_03.webp new file mode 100644 index 00000000..338a0c9f --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_d_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:892c7d677cf9801f8274d917441b28f8080d0bf3d167abde7db38ffa8982b902 +size 15556 diff --git a/game/characters/hermione/chibis/run/h_run_d_04.webp b/game/characters/hermione/chibis/run/h_run_d_04.webp new file mode 100644 index 00000000..8cee8d88 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_d_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4322078857d1d5804ee703e519a0ee11cf7c00a1629ab10df6123b5ed3a2d185 +size 15524 diff --git a/game/characters/hermione/chibis/run/h_run_d_05.webp b/game/characters/hermione/chibis/run/h_run_d_05.webp new file mode 100644 index 00000000..9825153d --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_d_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72e8bc7569c80033e75bd366e283703cc720e94a6c15051ad13f80d7f1009ec1 +size 15398 diff --git a/game/characters/hermione/chibis/run/h_run_e_01.webp b/game/characters/hermione/chibis/run/h_run_e_01.webp new file mode 100644 index 00000000..0dabe638 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_e_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2bf4283bee993a5d80c01ca87ff509c668bf51872faaa58937901d218294290 +size 14680 diff --git a/game/characters/hermione/chibis/run/h_run_e_02.webp b/game/characters/hermione/chibis/run/h_run_e_02.webp new file mode 100644 index 00000000..6c48d4b3 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_e_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2f7e4c7b2c8ced51682dd43f54df0c64fa0b8a4fa2529bcce8d733710f871ac +size 15272 diff --git a/game/characters/hermione/chibis/run/h_run_e_03.webp b/game/characters/hermione/chibis/run/h_run_e_03.webp new file mode 100644 index 00000000..1b051a5a --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_e_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9124340fe501e0e7c53da682fa7ad6d2e4247a69bb3c8a2551e705a8f1248421 +size 15318 diff --git a/game/characters/hermione/chibis/run/h_run_e_04.webp b/game/characters/hermione/chibis/run/h_run_e_04.webp new file mode 100644 index 00000000..f80c7f15 --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_e_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f483fb7b4e0dca7a241107dbfb2ec9d73f7b77107023c2aaf03f85c3867d7433 +size 15220 diff --git a/game/characters/hermione/chibis/run/h_run_e_05.webp b/game/characters/hermione/chibis/run/h_run_e_05.webp new file mode 100644 index 00000000..a445daca --- /dev/null +++ b/game/characters/hermione/chibis/run/h_run_e_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a27633f6763516b2b57d6629632d9953363a562ac21ba8f318aba2eedf8af24 +size 15128 diff --git a/game/characters/hermione/chibis/sex/01.webp b/game/characters/hermione/chibis/sex/01.webp new file mode 100644 index 00000000..1bb1eb11 --- /dev/null +++ b/game/characters/hermione/chibis/sex/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af673396da33c44954ade73b6e46318059e7f8eb4be02e81cd5a7cd2edc751a0 +size 39460 diff --git a/game/characters/hermione/chibis/sex/02.webp b/game/characters/hermione/chibis/sex/02.webp new file mode 100644 index 00000000..6b692a2d --- /dev/null +++ b/game/characters/hermione/chibis/sex/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5a98b84fded29b5c5ad14dd77f4c47f8d7cf7fe06708afce9607f96bbfdb895 +size 39334 diff --git a/game/characters/hermione/chibis/sex/03.webp b/game/characters/hermione/chibis/sex/03.webp new file mode 100644 index 00000000..550d941f --- /dev/null +++ b/game/characters/hermione/chibis/sex/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e7639e5763b38eceeb54842248a2d9e78de5019c55ee8967315a725e3fb5df8 +size 39626 diff --git a/game/characters/hermione/chibis/sex/04.webp b/game/characters/hermione/chibis/sex/04.webp new file mode 100644 index 00000000..ba002843 --- /dev/null +++ b/game/characters/hermione/chibis/sex/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2682d33231dd0203e046ff56eda453c02ab0b0b125ea9142d16cadf7c1aef523 +size 39786 diff --git a/game/characters/hermione/chibis/sex/05.webp b/game/characters/hermione/chibis/sex/05.webp new file mode 100644 index 00000000..324c79c1 --- /dev/null +++ b/game/characters/hermione/chibis/sex/05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbcd7d929017037f22ca2db26fac7184ebec8bc35c20e24239ca8f615679eafc +size 39656 diff --git a/game/characters/hermione/chibis/sex/06.webp b/game/characters/hermione/chibis/sex/06.webp new file mode 100644 index 00000000..f4574a87 --- /dev/null +++ b/game/characters/hermione/chibis/sex/06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53d02c869407f94377e7dd4ee0a2b9ee523bb92f645ca4d12c3a6b528d9cb57b +size 39732 diff --git a/game/characters/hermione/chibis/sex/07.webp b/game/characters/hermione/chibis/sex/07.webp new file mode 100644 index 00000000..2f20c8f4 --- /dev/null +++ b/game/characters/hermione/chibis/sex/07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf79a81b3e122430dc1768175b860c1c55f08a7ed5580bbca74e26030b4a542c +size 39620 diff --git a/game/characters/hermione/chibis/sex/creampie_01.webp b/game/characters/hermione/chibis/sex/creampie_01.webp new file mode 100644 index 00000000..1bb1eb11 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af673396da33c44954ade73b6e46318059e7f8eb4be02e81cd5a7cd2edc751a0 +size 39460 diff --git a/game/characters/hermione/chibis/sex/creampie_02.webp b/game/characters/hermione/chibis/sex/creampie_02.webp new file mode 100644 index 00000000..6b692a2d --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5a98b84fded29b5c5ad14dd77f4c47f8d7cf7fe06708afce9607f96bbfdb895 +size 39334 diff --git a/game/characters/hermione/chibis/sex/creampie_03.webp b/game/characters/hermione/chibis/sex/creampie_03.webp new file mode 100644 index 00000000..550d941f --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e7639e5763b38eceeb54842248a2d9e78de5019c55ee8967315a725e3fb5df8 +size 39626 diff --git a/game/characters/hermione/chibis/sex/creampie_04.webp b/game/characters/hermione/chibis/sex/creampie_04.webp new file mode 100644 index 00000000..1552c927 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:949fed89dfc9cd67430d200160f624af6cb2ce608093015581ce2d16a67326aa +size 39690 diff --git a/game/characters/hermione/chibis/sex/creampie_05.webp b/game/characters/hermione/chibis/sex/creampie_05.webp new file mode 100644 index 00000000..8addaea9 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6fae7afd1e8e1377b51b38fedd94d25c65cc07aa542dfb9d1c3aeb3213fedeb +size 39682 diff --git a/game/characters/hermione/chibis/sex/creampie_06.webp b/game/characters/hermione/chibis/sex/creampie_06.webp new file mode 100644 index 00000000..892c3dfd --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac5e2e6e5227860eb89d248311c9e36b32c78d5b7100a90e9ab28a175396f24e +size 39800 diff --git a/game/characters/hermione/chibis/sex/creampie_07.webp b/game/characters/hermione/chibis/sex/creampie_07.webp new file mode 100644 index 00000000..17ea6eac --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41f4b1abd0b1f8d4b025b1aaeb29770209e99727f8e5db976249208cffd382b1 +size 40108 diff --git a/game/characters/hermione/chibis/sex/creampie_08.webp b/game/characters/hermione/chibis/sex/creampie_08.webp new file mode 100644 index 00000000..ce813f0d --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cef66a3e07ebcb0a32695f0bde9d5fd7129fcb5b87084acb1db28b6430a576aa +size 40322 diff --git a/game/characters/hermione/chibis/sex/creampie_09.webp b/game/characters/hermione/chibis/sex/creampie_09.webp new file mode 100644 index 00000000..c6dbcb32 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82cc9e304e7a99d2f6e949c735a1a396fee0e8a23caac9bea0c249aaafbc98b0 +size 40184 diff --git a/game/characters/hermione/chibis/sex/creampie_10.webp b/game/characters/hermione/chibis/sex/creampie_10.webp new file mode 100644 index 00000000..5668bf57 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd5dcbb7c42fdc9a72a8a6c18b53b2da259a6d4d459a303e015d9cba30d3849d +size 40270 diff --git a/game/characters/hermione/chibis/sex/creampie_11.webp b/game/characters/hermione/chibis/sex/creampie_11.webp new file mode 100644 index 00000000..c1b9d9aa --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55384acc0749a4bb9a72d60c3ab3563fe5425bd91c8bc938a59a1d2c50deba53 +size 39956 diff --git a/game/characters/hermione/chibis/sex/creampie_12.webp b/game/characters/hermione/chibis/sex/creampie_12.webp new file mode 100644 index 00000000..4f743427 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bc301f08a95db0e105beb6755e85c6a391ff0d1acfbcc96aa2dd34c314b13c9 +size 39870 diff --git a/game/characters/hermione/chibis/sex/creampie_13.webp b/game/characters/hermione/chibis/sex/creampie_13.webp new file mode 100644 index 00000000..35024bbe --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a953bd8438e7aca31698f7aed6a6074ff891b6c47e13814b0a511e7eab7cc15a +size 39858 diff --git a/game/characters/hermione/chibis/sex/creampie_14.webp b/game/characters/hermione/chibis/sex/creampie_14.webp new file mode 100644 index 00000000..8f27eb4d --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8e7465a4db9b9240d0460f64d7e4bf2a265c81a21c8a6ba24448043409ba108 +size 40002 diff --git a/game/characters/hermione/chibis/sex/creampie_15.webp b/game/characters/hermione/chibis/sex/creampie_15.webp new file mode 100644 index 00000000..80eba54c --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7ffa150050b8917cbbf32e45eadd135b3d7a5ff1113e376553901c07bf99542 +size 40026 diff --git a/game/characters/hermione/chibis/sex/creampie_16.webp b/game/characters/hermione/chibis/sex/creampie_16.webp new file mode 100644 index 00000000..807e56f4 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce4db069e35e028ca5b84dd6874346feb799e1125911f4b90720e9b6843a6b55 +size 39988 diff --git a/game/characters/hermione/chibis/sex/creampie_17.webp b/game/characters/hermione/chibis/sex/creampie_17.webp new file mode 100644 index 00000000..7a2c1cad --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6080ba722e79a500292963e1430548eebbfa7b7fd5a23d81f10e6f6e944733fe +size 39956 diff --git a/game/characters/hermione/chibis/sex/creampie_18.webp b/game/characters/hermione/chibis/sex/creampie_18.webp new file mode 100644 index 00000000..7dc87be0 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cb0e1efb9c4c978cc39409893b0e5e0c8b1058e2203db5d19576df7d98b9108 +size 39992 diff --git a/game/characters/hermione/chibis/sex/creampie_19.webp b/game/characters/hermione/chibis/sex/creampie_19.webp new file mode 100644 index 00000000..ba4ac076 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac6e79c18e5fe4db54d848fe22a4783c3f532388580ff6a308277cca741a9bfb +size 39994 diff --git a/game/characters/hermione/chibis/sex/creampie_20.webp b/game/characters/hermione/chibis/sex/creampie_20.webp new file mode 100644 index 00000000..a0c9bc1f --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20292a6458b41f71f85033aaa7bfe0e1b818ba458972b538800cc7ceb98ce72c +size 39822 diff --git a/game/characters/hermione/chibis/sex/creampie_21.webp b/game/characters/hermione/chibis/sex/creampie_21.webp new file mode 100644 index 00000000..7a2fc8cb --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a7f66aabba8c08531356351039cfc18913baac589fd9f3a9b4002d9121406cf +size 39810 diff --git a/game/characters/hermione/chibis/sex/creampie_22.webp b/game/characters/hermione/chibis/sex/creampie_22.webp new file mode 100644 index 00000000..aee5d4b6 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3c310ca0f46c2943c991f92dcdfbbcbc4fc8d4f5c061196ac2651073ea85157 +size 39734 diff --git a/game/characters/hermione/chibis/sex/creampie_23.webp b/game/characters/hermione/chibis/sex/creampie_23.webp new file mode 100644 index 00000000..08f83d57 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a625cdbd4b9949521b8af943f6925c4dc43f30d5d6394d39ec2baf5049b7575e +size 39668 diff --git a/game/characters/hermione/chibis/sex/creampie_24.webp b/game/characters/hermione/chibis/sex/creampie_24.webp new file mode 100644 index 00000000..75e9d399 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b24eaeee3dfa64dec76ee8b107725b60c1f118cdf1def19d1b50fde43dd5f74 +size 39896 diff --git a/game/characters/hermione/chibis/sex/creampie_n_01.webp b/game/characters/hermione/chibis/sex/creampie_n_01.webp new file mode 100644 index 00000000..777898e2 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7c6f4b217b28e06b0d6ee11b0eb3f92883a8bb79e83b0bd78cc7c65365a6343 +size 39416 diff --git a/game/characters/hermione/chibis/sex/creampie_n_02.webp b/game/characters/hermione/chibis/sex/creampie_n_02.webp new file mode 100644 index 00000000..9fb5d9e7 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08ff660ddb0df85ff0dbbebf1ad793471187cec24ee5dcf555cd437be4f2066a +size 39298 diff --git a/game/characters/hermione/chibis/sex/creampie_n_03.webp b/game/characters/hermione/chibis/sex/creampie_n_03.webp new file mode 100644 index 00000000..93b3a66a --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd1e9cf934a45ffae282049077f3bbddae610182d401542da9967445f8d3c30f +size 39634 diff --git a/game/characters/hermione/chibis/sex/creampie_n_04.webp b/game/characters/hermione/chibis/sex/creampie_n_04.webp new file mode 100644 index 00000000..be67e08d --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:828decd92308d634ae9e9ff092cb6a80d11930b9bbe9f8d7503448979f9ef6f8 +size 39574 diff --git a/game/characters/hermione/chibis/sex/creampie_n_05.webp b/game/characters/hermione/chibis/sex/creampie_n_05.webp new file mode 100644 index 00000000..7baeeecb --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b940e6984c5485c4f10e2026267fa6fcdc5a75c9c549f0d771485b84d25bf156 +size 39652 diff --git a/game/characters/hermione/chibis/sex/creampie_n_06.webp b/game/characters/hermione/chibis/sex/creampie_n_06.webp new file mode 100644 index 00000000..f773b1c1 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af5b75bcd66f57bfd82f4c99027e282420a95dd73f2e73d16f9e0f801621d014 +size 39794 diff --git a/game/characters/hermione/chibis/sex/creampie_n_07.webp b/game/characters/hermione/chibis/sex/creampie_n_07.webp new file mode 100644 index 00000000..41e7e39b --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5dd7878b0bf7726f0a490db52e896e55a6a1fb1554c4040d610de19113824d82 +size 40070 diff --git a/game/characters/hermione/chibis/sex/creampie_n_08.webp b/game/characters/hermione/chibis/sex/creampie_n_08.webp new file mode 100644 index 00000000..d4dddba0 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8af95642f98654920d8a35f0efeadab70677eb66b6b509abf98953d798282d2 +size 40262 diff --git a/game/characters/hermione/chibis/sex/creampie_n_09.webp b/game/characters/hermione/chibis/sex/creampie_n_09.webp new file mode 100644 index 00000000..3aa4fdc3 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e7ba1873c3e2e9491a00979be1c4733dfb4e07c87f5532d518ad30db5667b78 +size 40152 diff --git a/game/characters/hermione/chibis/sex/creampie_n_10.webp b/game/characters/hermione/chibis/sex/creampie_n_10.webp new file mode 100644 index 00000000..19715ae2 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bcb94f6878af4e2b36b820266eddb3a39d74922ded41a2fa775da52a53ec580 +size 40230 diff --git a/game/characters/hermione/chibis/sex/creampie_n_11.webp b/game/characters/hermione/chibis/sex/creampie_n_11.webp new file mode 100644 index 00000000..191cd4e6 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fb614977cca861ddc45c36d9f3e311f936340ffe559db270deea2c13a3d6a29 +size 39894 diff --git a/game/characters/hermione/chibis/sex/creampie_n_12.webp b/game/characters/hermione/chibis/sex/creampie_n_12.webp new file mode 100644 index 00000000..e244e544 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e4a36467f1473d27b18237dcd0a3fbf3e25895a67064e69c1772cd3597d3e56 +size 31036 diff --git a/game/characters/hermione/chibis/sex/creampie_n_13.webp b/game/characters/hermione/chibis/sex/creampie_n_13.webp new file mode 100644 index 00000000..24a94319 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cf735b59e6d397454d9e8d4bb2372feb5bff1b548fb4f405ae1d829e57d6542 +size 30912 diff --git a/game/characters/hermione/chibis/sex/creampie_n_14.webp b/game/characters/hermione/chibis/sex/creampie_n_14.webp new file mode 100644 index 00000000..19073827 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3cdd8182ff2c5921d8decd0c2137257ee84fdb1b37ea966f8a71d41cff61f5c4 +size 31012 diff --git a/game/characters/hermione/chibis/sex/creampie_n_15.webp b/game/characters/hermione/chibis/sex/creampie_n_15.webp new file mode 100644 index 00000000..bbc9282e --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c74ad71c22db5501e2f00a59a079b9905b9b6f9601b5c5adccb662e904bdf6b +size 31142 diff --git a/game/characters/hermione/chibis/sex/creampie_n_16.webp b/game/characters/hermione/chibis/sex/creampie_n_16.webp new file mode 100644 index 00000000..6fe593be --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b8fb0f39fbe9275bcc08e4250dec1d12e761e120e98754af252d31617f30f77 +size 31162 diff --git a/game/characters/hermione/chibis/sex/creampie_n_17.webp b/game/characters/hermione/chibis/sex/creampie_n_17.webp new file mode 100644 index 00000000..b2b4e6ab --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52e9df637b72c3626987c67d92699fe7e33f41bd4a07270289b7c7bf3c242e15 +size 31170 diff --git a/game/characters/hermione/chibis/sex/creampie_n_18.webp b/game/characters/hermione/chibis/sex/creampie_n_18.webp new file mode 100644 index 00000000..115d59ce --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:844727cbd86fe8bcb42ee67dce2ec475ae43b50fc8a4f39773c022b218667b17 +size 31086 diff --git a/game/characters/hermione/chibis/sex/creampie_n_19.webp b/game/characters/hermione/chibis/sex/creampie_n_19.webp new file mode 100644 index 00000000..703252a4 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f2474bf0574f3457b85edc709fa7cd32406396a4fdaf624d4716c65c01c1eb1 +size 30984 diff --git a/game/characters/hermione/chibis/sex/creampie_n_20.webp b/game/characters/hermione/chibis/sex/creampie_n_20.webp new file mode 100644 index 00000000..88212052 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33a10d0caf93f815a4ed3671d0e6ea68b317e543ed2583804f1e4e090ec28c4e +size 30994 diff --git a/game/characters/hermione/chibis/sex/creampie_n_21.webp b/game/characters/hermione/chibis/sex/creampie_n_21.webp new file mode 100644 index 00000000..5152f0ea --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e43281d89d6526ef1da8d6284414cb9973a3e966299c610284bcc4dabd59f903 +size 30864 diff --git a/game/characters/hermione/chibis/sex/creampie_n_22.webp b/game/characters/hermione/chibis/sex/creampie_n_22.webp new file mode 100644 index 00000000..8255ed8d --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77016473c510fdb11eb4d1480f07d6fca7ab3be50b525333788deaaf54ccfc6f +size 30810 diff --git a/game/characters/hermione/chibis/sex/creampie_n_23.webp b/game/characters/hermione/chibis/sex/creampie_n_23.webp new file mode 100644 index 00000000..d29c4b17 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58877c999ce3e1df2d54ee85c1b9fb61cc9f465dabe2526f6517d39a4ae632c4 +size 30850 diff --git a/game/characters/hermione/chibis/sex/creampie_n_24.webp b/game/characters/hermione/chibis/sex/creampie_n_24.webp new file mode 100644 index 00000000..d8f46e03 --- /dev/null +++ b/game/characters/hermione/chibis/sex/creampie_n_24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47ef6019768239aeb91544936bcd40af904cb1938963d35602e0a02d9a449b6b +size 30886 diff --git a/game/characters/hermione/chibis/sex/n_01.webp b/game/characters/hermione/chibis/sex/n_01.webp new file mode 100644 index 00000000..4e610c55 --- /dev/null +++ b/game/characters/hermione/chibis/sex/n_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7b60d446bcb86522719f18263c09e73ce421b8c2f00f71b9b2ba244290efff1 +size 39606 diff --git a/game/characters/hermione/chibis/sex/n_02.webp b/game/characters/hermione/chibis/sex/n_02.webp new file mode 100644 index 00000000..4ca61f24 --- /dev/null +++ b/game/characters/hermione/chibis/sex/n_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c7b0a48f5ff13bd0f54dcaea845d68dc411cf3fdd57b669525ac95840b56b11 +size 39250 diff --git a/game/characters/hermione/chibis/sex/n_03.webp b/game/characters/hermione/chibis/sex/n_03.webp new file mode 100644 index 00000000..cc78f9ed --- /dev/null +++ b/game/characters/hermione/chibis/sex/n_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72a2f45866c01d825398c73a670e824952ae2ce4df01e1cacc3f0302ddf98c78 +size 39568 diff --git a/game/characters/hermione/chibis/sex/n_04.webp b/game/characters/hermione/chibis/sex/n_04.webp new file mode 100644 index 00000000..c567c771 --- /dev/null +++ b/game/characters/hermione/chibis/sex/n_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b978abfe38ca08670fad28303988f7cd6bf7ac9a57dc760243d6fb9b4bd6b2c7 +size 39624 diff --git a/game/characters/hermione/chibis/sex/n_05.webp b/game/characters/hermione/chibis/sex/n_05.webp new file mode 100644 index 00000000..8e27c7ae --- /dev/null +++ b/game/characters/hermione/chibis/sex/n_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6398b3964a553283043aeae602b2ea95789257ef29a4033206738add4830296e +size 39600 diff --git a/game/characters/hermione/chibis/sex/n_06.webp b/game/characters/hermione/chibis/sex/n_06.webp new file mode 100644 index 00000000..06002286 --- /dev/null +++ b/game/characters/hermione/chibis/sex/n_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5121b4f4877b210e46bfd56c004b3203d55b1ee3f6f77a045afcc439e7d1db10 +size 39676 diff --git a/game/characters/hermione/chibis/sex/n_07.webp b/game/characters/hermione/chibis/sex/n_07.webp new file mode 100644 index 00000000..5fc162a8 --- /dev/null +++ b/game/characters/hermione/chibis/sex/n_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1638aa6eae0aacffaf1b6d2473c3d276bbe1074c918715e82f1ae809d4869aa +size 39538 diff --git a/game/characters/hermione/chibis/sex/sperm_01.webp b/game/characters/hermione/chibis/sex/sperm_01.webp new file mode 100644 index 00000000..1bb1eb11 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af673396da33c44954ade73b6e46318059e7f8eb4be02e81cd5a7cd2edc751a0 +size 39460 diff --git a/game/characters/hermione/chibis/sex/sperm_02.webp b/game/characters/hermione/chibis/sex/sperm_02.webp new file mode 100644 index 00000000..6b692a2d --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5a98b84fded29b5c5ad14dd77f4c47f8d7cf7fe06708afce9607f96bbfdb895 +size 39334 diff --git a/game/characters/hermione/chibis/sex/sperm_03.webp b/game/characters/hermione/chibis/sex/sperm_03.webp new file mode 100644 index 00000000..550d941f --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e7639e5763b38eceeb54842248a2d9e78de5019c55ee8967315a725e3fb5df8 +size 39626 diff --git a/game/characters/hermione/chibis/sex/sperm_04.webp b/game/characters/hermione/chibis/sex/sperm_04.webp new file mode 100644 index 00000000..ab864bd0 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a03b9198612580a13c4abef2e881e6694c1a71fa739f73287fcfb52c1d081956 +size 39502 diff --git a/game/characters/hermione/chibis/sex/sperm_05.webp b/game/characters/hermione/chibis/sex/sperm_05.webp new file mode 100644 index 00000000..82913f91 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9c7125bb978c69d45235d0c3a5c804aae97dd030da8d171d242e360da9e62a4 +size 39346 diff --git a/game/characters/hermione/chibis/sex/sperm_06.webp b/game/characters/hermione/chibis/sex/sperm_06.webp new file mode 100644 index 00000000..46411b8f --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4454fea0b4ec24d8e7a774ab5bac36177c8c4c6f39fde552bbe56d59d3842520 +size 39624 diff --git a/game/characters/hermione/chibis/sex/sperm_07.webp b/game/characters/hermione/chibis/sex/sperm_07.webp new file mode 100644 index 00000000..2441844b --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfa236bdbd84ae4db7c629f6e270145e03304ec95aef454ab2bbc7861641c41f +size 39946 diff --git a/game/characters/hermione/chibis/sex/sperm_08.webp b/game/characters/hermione/chibis/sex/sperm_08.webp new file mode 100644 index 00000000..1e2add2c --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08ff28c6b056aad869fb0b73e1c1ef54083b7933a739a4324663d87bf5cda25c +size 39948 diff --git a/game/characters/hermione/chibis/sex/sperm_09.webp b/game/characters/hermione/chibis/sex/sperm_09.webp new file mode 100644 index 00000000..24bcfc30 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b68539af53625b1cd87a72b9c68a8d3f113c78cd9042be4590bafd9dd7feb40 +size 40308 diff --git a/game/characters/hermione/chibis/sex/sperm_10.webp b/game/characters/hermione/chibis/sex/sperm_10.webp new file mode 100644 index 00000000..014267f3 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef210d53b3f60f33fcf4e591cf241e0eacf3132a153d095721df51f12dce6c14 +size 40328 diff --git a/game/characters/hermione/chibis/sex/sperm_11.webp b/game/characters/hermione/chibis/sex/sperm_11.webp new file mode 100644 index 00000000..8e00ada0 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94548ea3ddcc0561b4564e89256ab627b9b63dd9f4a2a9b99131a170e6e6796b +size 40136 diff --git a/game/characters/hermione/chibis/sex/sperm_12.webp b/game/characters/hermione/chibis/sex/sperm_12.webp new file mode 100644 index 00000000..1ec20652 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95e05eb1a94005419b5be6912e05499f9b330f8e8b97f9e4192673a5eab926fb +size 40316 diff --git a/game/characters/hermione/chibis/sex/sperm_13.webp b/game/characters/hermione/chibis/sex/sperm_13.webp new file mode 100644 index 00000000..beae29e8 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6056ee01200557385922145fd7073e97358fce2d45f866e7e645b89c6f8e0c92 +size 40556 diff --git a/game/characters/hermione/chibis/sex/sperm_14.webp b/game/characters/hermione/chibis/sex/sperm_14.webp new file mode 100644 index 00000000..9d7c2e2b --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf72242f22dfbc9340aba9cc074f9aeec85030a5b4212db02b75bf5f99291467 +size 40292 diff --git a/game/characters/hermione/chibis/sex/sperm_15.webp b/game/characters/hermione/chibis/sex/sperm_15.webp new file mode 100644 index 00000000..2519e4c5 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e15ff8d1ea6cf760f023a07371108b824fabdaeff93fab96a762aa8d5a69edc +size 40080 diff --git a/game/characters/hermione/chibis/sex/sperm_16.webp b/game/characters/hermione/chibis/sex/sperm_16.webp new file mode 100644 index 00000000..873f4f0f --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8819f0b3b34f362069c7fce735cbc591ec39194821a7dccb52f976526dfcc9b +size 40082 diff --git a/game/characters/hermione/chibis/sex/sperm_17.webp b/game/characters/hermione/chibis/sex/sperm_17.webp new file mode 100644 index 00000000..373961e2 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71bc339f3c8d76b0b76186c638aec224b3097e2bf96819a3d63d84d408df0643 +size 39988 diff --git a/game/characters/hermione/chibis/sex/sperm_18.webp b/game/characters/hermione/chibis/sex/sperm_18.webp new file mode 100644 index 00000000..bb44b1f2 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bf8abdae8196eee077b44b0a80589f2ded3ecd828f4ab2949dc9a60d1b01870 +size 39832 diff --git a/game/characters/hermione/chibis/sex/sperm_19.webp b/game/characters/hermione/chibis/sex/sperm_19.webp new file mode 100644 index 00000000..613fc13a --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c12bb208a3d91a7b66a9afe27d21577ac4b90c73323a32e8fc38222d7ac1aed5 +size 39854 diff --git a/game/characters/hermione/chibis/sex/sperm_20.webp b/game/characters/hermione/chibis/sex/sperm_20.webp new file mode 100644 index 00000000..137f3fca --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eeb00959e067426d6013ce3f45006eeb79b4ef1b49222683408953f6f4da540f +size 39712 diff --git a/game/characters/hermione/chibis/sex/sperm_21.webp b/game/characters/hermione/chibis/sex/sperm_21.webp new file mode 100644 index 00000000..d8f7976b --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1032557ea62d29500282368fe571662814da536fe2f4e9ab2ecb2c78c26c1ec5 +size 39748 diff --git a/game/characters/hermione/chibis/sex/sperm_22.webp b/game/characters/hermione/chibis/sex/sperm_22.webp new file mode 100644 index 00000000..cbdc2f9d --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7224a6d6ee496f02515bcef418bd220bac047c71b034d8565c5227cc04a36c7d +size 39600 diff --git a/game/characters/hermione/chibis/sex/sperm_23.webp b/game/characters/hermione/chibis/sex/sperm_23.webp new file mode 100644 index 00000000..652f79cb --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c90335cd24606f32656dea8eebbb681ccdd055f37e000c6fe2ad944c46723ed3 +size 39372 diff --git a/game/characters/hermione/chibis/sex/sperm_24.webp b/game/characters/hermione/chibis/sex/sperm_24.webp new file mode 100644 index 00000000..c5abd571 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e4cb2c8f5b6c2ebb705e052ae697c6180a95b2055b275650462ebe7a985d0d6 +size 39774 diff --git a/game/characters/hermione/chibis/sex/sperm_n_01.webp b/game/characters/hermione/chibis/sex/sperm_n_01.webp new file mode 100644 index 00000000..777898e2 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7c6f4b217b28e06b0d6ee11b0eb3f92883a8bb79e83b0bd78cc7c65365a6343 +size 39416 diff --git a/game/characters/hermione/chibis/sex/sperm_n_02.webp b/game/characters/hermione/chibis/sex/sperm_n_02.webp new file mode 100644 index 00000000..9fb5d9e7 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08ff660ddb0df85ff0dbbebf1ad793471187cec24ee5dcf555cd437be4f2066a +size 39298 diff --git a/game/characters/hermione/chibis/sex/sperm_n_03.webp b/game/characters/hermione/chibis/sex/sperm_n_03.webp new file mode 100644 index 00000000..93b3a66a --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd1e9cf934a45ffae282049077f3bbddae610182d401542da9967445f8d3c30f +size 39634 diff --git a/game/characters/hermione/chibis/sex/sperm_n_04.webp b/game/characters/hermione/chibis/sex/sperm_n_04.webp new file mode 100644 index 00000000..e3176d45 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eceabdbb59faf8a0f75bba40752e6a8f97b3624135884c084107ff5eeb64b500 +size 39374 diff --git a/game/characters/hermione/chibis/sex/sperm_n_05.webp b/game/characters/hermione/chibis/sex/sperm_n_05.webp new file mode 100644 index 00000000..20bf04cc --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:489bda96acfc183f1bf98230f4a3440f289d8088333ea71d2458e23be4627562 +size 39340 diff --git a/game/characters/hermione/chibis/sex/sperm_n_06.webp b/game/characters/hermione/chibis/sex/sperm_n_06.webp new file mode 100644 index 00000000..f60dfd1d --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c009bcb97ae9d962571da529473753299736411f10ffe394f5273533179286cd +size 39604 diff --git a/game/characters/hermione/chibis/sex/sperm_n_07.webp b/game/characters/hermione/chibis/sex/sperm_n_07.webp new file mode 100644 index 00000000..a250943d --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1bb924e0f3225c819981fb73547cf6a6e346bc85610a9010246e62309aa68b8 +size 39900 diff --git a/game/characters/hermione/chibis/sex/sperm_n_08.webp b/game/characters/hermione/chibis/sex/sperm_n_08.webp new file mode 100644 index 00000000..92093ef2 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19f447082be3bcbaf49874f1bc7ce3e84686d83fc205c0a1633f19543b4293b7 +size 39884 diff --git a/game/characters/hermione/chibis/sex/sperm_n_09.webp b/game/characters/hermione/chibis/sex/sperm_n_09.webp new file mode 100644 index 00000000..059d9dcc --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:456287041565b41ce460f151ffce06f10d30a214688aee4378948eeb28950d33 +size 40284 diff --git a/game/characters/hermione/chibis/sex/sperm_n_10.webp b/game/characters/hermione/chibis/sex/sperm_n_10.webp new file mode 100644 index 00000000..101cd9b5 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:614fc37d370d5d01a76a3431f767004a7cbfcb6ead7886dada8e820587c06beb +size 40272 diff --git a/game/characters/hermione/chibis/sex/sperm_n_11.webp b/game/characters/hermione/chibis/sex/sperm_n_11.webp new file mode 100644 index 00000000..d2869759 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dcbfe1d6f2ebad409f7a04b7fe2eb211edffee3394d99caaca9a89dfc6eecaae +size 40136 diff --git a/game/characters/hermione/chibis/sex/sperm_n_12.webp b/game/characters/hermione/chibis/sex/sperm_n_12.webp new file mode 100644 index 00000000..dca6fc26 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33572e5ac053bad44f91be25ec07c83a825b73fa38c43493be0ec952fcf07bd0 +size 40292 diff --git a/game/characters/hermione/chibis/sex/sperm_n_13.webp b/game/characters/hermione/chibis/sex/sperm_n_13.webp new file mode 100644 index 00000000..237c7a21 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a265e70ec37344a8046e3dba0ea08141eeaed50a69d47c1d99d4574da07bcee2 +size 40530 diff --git a/game/characters/hermione/chibis/sex/sperm_n_14.webp b/game/characters/hermione/chibis/sex/sperm_n_14.webp new file mode 100644 index 00000000..92cd4bda --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6c91a53af04b4a0fe8143b05b7fb30025c8a497c5d10ac83eb9062108695fb3 +size 40298 diff --git a/game/characters/hermione/chibis/sex/sperm_n_15.webp b/game/characters/hermione/chibis/sex/sperm_n_15.webp new file mode 100644 index 00000000..3e20038f --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24fbc75674c311b1681c29e879218cc95a084e9a7bb267a76ae23934bb3baeb5 +size 40108 diff --git a/game/characters/hermione/chibis/sex/sperm_n_16.webp b/game/characters/hermione/chibis/sex/sperm_n_16.webp new file mode 100644 index 00000000..d47922d7 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eec3205b1cf3597471e74c52b700d04e2e001bdb09913bf1c3ec08df13b7c074 +size 40024 diff --git a/game/characters/hermione/chibis/sex/sperm_n_17.webp b/game/characters/hermione/chibis/sex/sperm_n_17.webp new file mode 100644 index 00000000..cdcf6b38 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6470946acb0ce9a01b296d108adb63fff4590947223637495eaa3dc7a58b8afe +size 39954 diff --git a/game/characters/hermione/chibis/sex/sperm_n_18.webp b/game/characters/hermione/chibis/sex/sperm_n_18.webp new file mode 100644 index 00000000..5bb68317 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f9f4bc83af9cf7ac358a4fe69c640b815035b3db5eb566be0cb03eb38c9469d +size 39844 diff --git a/game/characters/hermione/chibis/sex/sperm_n_19.webp b/game/characters/hermione/chibis/sex/sperm_n_19.webp new file mode 100644 index 00000000..06f04025 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d69b494fb848185a0cbc95c4f06f5011fbfe20bf1376c2e91f7628d5b6e0ce4 +size 39768 diff --git a/game/characters/hermione/chibis/sex/sperm_n_20.webp b/game/characters/hermione/chibis/sex/sperm_n_20.webp new file mode 100644 index 00000000..1918f71a --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30a142c8ab2845e1ed3a8c5b9e60ad1741524a84fad50b7327d6ea80c98ed255 +size 39678 diff --git a/game/characters/hermione/chibis/sex/sperm_n_21.webp b/game/characters/hermione/chibis/sex/sperm_n_21.webp new file mode 100644 index 00000000..3856a0e0 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6af565d3611817fd636d99b52922318303748cd0fb7c05446b50770f82035b5 +size 39728 diff --git a/game/characters/hermione/chibis/sex/sperm_n_22.webp b/game/characters/hermione/chibis/sex/sperm_n_22.webp new file mode 100644 index 00000000..71a8a516 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88e207cc58e0f89d0f0d7f70edd39e6167c16e7ed941e62bfdf9e206efe979f5 +size 39596 diff --git a/game/characters/hermione/chibis/sex/sperm_n_23.webp b/game/characters/hermione/chibis/sex/sperm_n_23.webp new file mode 100644 index 00000000..5ad6e472 --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6aaaff97ea8edc9ebe4c17f929dedf43dbec6910027530cfd8decd2b8c4cf422 +size 39306 diff --git a/game/characters/hermione/chibis/sex/sperm_n_24.webp b/game/characters/hermione/chibis/sex/sperm_n_24.webp new file mode 100644 index 00000000..0644558a --- /dev/null +++ b/game/characters/hermione/chibis/sex/sperm_n_24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae8063980229b8fe62a745fd0f5e73d792a92a31a68f44a1eccf5463b79418e8 +size 39740 diff --git a/game/characters/hermione/chibis/sitting/aka27.webp b/game/characters/hermione/chibis/sitting/aka27.webp new file mode 100644 index 00000000..5c7c9964 --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka27.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff9e1afe3ff7749ba48f1cd22eba18f4c4e4f53a98b049ff3701e095f77a31fe +size 10154 diff --git a/game/characters/hermione/chibis/sitting/aka27b.webp b/game/characters/hermione/chibis/sitting/aka27b.webp new file mode 100644 index 00000000..31441d4e --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka27b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f495d6f38d0ad0a33ec1043be69b6d4f700b183ce72ec6cea8bc39405d17c5d +size 10082 diff --git a/game/characters/hermione/chibis/sitting/aka27c.webp b/game/characters/hermione/chibis/sitting/aka27c.webp new file mode 100644 index 00000000..8a60fd82 --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka27c.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8171eaef1bd469f09246cda54db275aa5f3b8671b45fd92553703c1f4a7b6de9 +size 10154 diff --git a/game/characters/hermione/chibis/sitting/aka27d.webp b/game/characters/hermione/chibis/sitting/aka27d.webp new file mode 100644 index 00000000..a7611932 --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka27d.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8144e8d0ebbc49ee0c9069259241bba26a8b4ddb933ebb68b46a019797e0b098 +size 10108 diff --git a/game/characters/hermione/chibis/sitting/aka28.webp b/game/characters/hermione/chibis/sitting/aka28.webp new file mode 100644 index 00000000..554008c0 --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka28.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f50925a127def7fa12e7ff8c196210308321193876cf489a1aef8f6b8c310f9d +size 10182 diff --git a/game/characters/hermione/chibis/sitting/aka28b.webp b/game/characters/hermione/chibis/sitting/aka28b.webp new file mode 100644 index 00000000..d2316998 --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka28b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90b1aaafd7e919cd2fba74d5d97448d680cb2cadae8070cd8aee0b19f8f84f58 +size 10188 diff --git a/game/characters/hermione/chibis/sitting/aka28d.webp b/game/characters/hermione/chibis/sitting/aka28d.webp new file mode 100644 index 00000000..9969281c --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka28d.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5df716f0d5cba465112f20cea4300c63449a7170e5cbe75b5bebc0944f42d327 +size 10148 diff --git a/game/characters/hermione/chibis/sitting/aka29.webp b/game/characters/hermione/chibis/sitting/aka29.webp new file mode 100644 index 00000000..cdba3138 --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka29.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01585fba54294b8feef9601a84e566877cc20033d9520da451befd174a13a337 +size 10176 diff --git a/game/characters/hermione/chibis/sitting/aka29b.webp b/game/characters/hermione/chibis/sitting/aka29b.webp new file mode 100644 index 00000000..da3808ee --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka29b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f137cd0537987dd5223a850d20e3ebd6bda088f79e09bfe86b55d69221312ede +size 10174 diff --git a/game/characters/hermione/chibis/sitting/aka29d.webp b/game/characters/hermione/chibis/sitting/aka29d.webp new file mode 100644 index 00000000..ba455afa --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka29d.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c6a5395c73e32a9cc187a25429955bcee56fd329f602a8b8e41b778483779c4 +size 10156 diff --git a/game/characters/hermione/chibis/sitting/aka30.webp b/game/characters/hermione/chibis/sitting/aka30.webp new file mode 100644 index 00000000..4327298a --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka30.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93dfa41664ac6cfbd1cf10c9140ce33ad99e2e45d6787f58c0c394b847be6f46 +size 10178 diff --git a/game/characters/hermione/chibis/sitting/aka30b.webp b/game/characters/hermione/chibis/sitting/aka30b.webp new file mode 100644 index 00000000..f95711f4 --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka30b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6ad96d7b39ebb029cf3fa8ced3c0b6994d9886ce6f3b76063b5e956053223bb +size 10180 diff --git a/game/characters/hermione/chibis/sitting/aka30d.webp b/game/characters/hermione/chibis/sitting/aka30d.webp new file mode 100644 index 00000000..2e38f729 --- /dev/null +++ b/game/characters/hermione/chibis/sitting/aka30d.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f523de954263cad762457b00af98de0a34b42c51d847d26a4eeb4ff560e254d +size 10142 diff --git a/game/characters/hermione/chibis/sitting/shime30.webp b/game/characters/hermione/chibis/sitting/shime30.webp new file mode 100644 index 00000000..5c7c9964 --- /dev/null +++ b/game/characters/hermione/chibis/sitting/shime30.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff9e1afe3ff7749ba48f1cd22eba18f4c4e4f53a98b049ff3701e095f77a31fe +size 10154 diff --git a/game/characters/hermione/chibis/sitting/shime30b.webp b/game/characters/hermione/chibis/sitting/shime30b.webp new file mode 100644 index 00000000..31441d4e --- /dev/null +++ b/game/characters/hermione/chibis/sitting/shime30b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f495d6f38d0ad0a33ec1043be69b6d4f700b183ce72ec6cea8bc39405d17c5d +size 10082 diff --git a/game/characters/hermione/chibis/sitting/shime31.webp b/game/characters/hermione/chibis/sitting/shime31.webp new file mode 100644 index 00000000..5c7c9964 --- /dev/null +++ b/game/characters/hermione/chibis/sitting/shime31.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff9e1afe3ff7749ba48f1cd22eba18f4c4e4f53a98b049ff3701e095f77a31fe +size 10154 diff --git a/game/characters/hermione/chibis/sitting/sit_naked.webp b/game/characters/hermione/chibis/sitting/sit_naked.webp new file mode 100644 index 00000000..c7102f36 --- /dev/null +++ b/game/characters/hermione/chibis/sitting/sit_naked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb26aa5a6a312931b19572ad757b5a27e968a3c1eedefca91c87d105df2cbe5a +size 45542 diff --git a/game/characters/hermione/chibis/sitting/sit_naked_blink.webp b/game/characters/hermione/chibis/sitting/sit_naked_blink.webp new file mode 100644 index 00000000..17e736e8 --- /dev/null +++ b/game/characters/hermione/chibis/sitting/sit_naked_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:493ee273c86deaa96503e0e20c03224a1790f94881170b0b497c20d899f0d869 +size 44846 diff --git a/game/characters/hermione/chibis/strip_01.webp b/game/characters/hermione/chibis/strip_01.webp new file mode 100644 index 00000000..d5a89dbd --- /dev/null +++ b/game/characters/hermione/chibis/strip_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae3d8d8dddb74340405b768def155b4f1d05d51339f268f8ea951227d81cf66d +size 18164 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_01.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_01.webp new file mode 100644 index 00000000..f94a271e --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:777a6e817c20d7e5bda96852411b3acdd1adee1d6389441b7e49ce4983683dee +size 127178 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_02.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_02.webp new file mode 100644 index 00000000..7565d46a --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5f02d28c418685eec1acc4cf65255a2e036a22449cd03c689a12eb8395422a4 +size 126110 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_03.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_03.webp new file mode 100644 index 00000000..d8d386e2 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7baf4155085023d10f64320cadab81c036bafe5343baca8eb9b06718165d9dd2 +size 126956 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_04.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_04.webp new file mode 100644 index 00000000..d5ae28ba --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e2fb663e04c1c51f400f70a4a09c236a39b5207d44f4afdbc98fc322efd04da +size 124310 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_05.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_05.webp new file mode 100644 index 00000000..f94a271e --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:777a6e817c20d7e5bda96852411b3acdd1adee1d6389441b7e49ce4983683dee +size 127178 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_06.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_06.webp new file mode 100644 index 00000000..b3101433 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4447945f87b3ab8fce3cb1dbb94fe9e164c77f9abb842b1c419e9f61b1dc503e +size 126728 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_07.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_07.webp new file mode 100644 index 00000000..41c0cd96 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:307271ba39a4303737084119c32cd53a76442b85199fe26c30217efd0dda4dda +size 127644 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_08.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_08.webp new file mode 100644 index 00000000..110c7291 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc36e2406931e4cc65223791311649a552f9aed086e19914ca7ce569cef7fc2a +size 125414 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_09.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_09.webp new file mode 100644 index 00000000..9d7a8a09 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b60fe53ba306129f7cb8c01f52f8a291445dc86f17854374a0895fe9efeb7a95 +size 128766 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_10.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_10.webp new file mode 100644 index 00000000..bd42087a --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3369879b6d23995f34e7c6e0b488efe770223ed3aca1589e75f10babfc176e01 +size 127370 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_11.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_11.webp new file mode 100644 index 00000000..5cdfe5e2 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d97be42319e9b96e53f26295fa104f42523e7fccd3c39b53dd70f92787a76b8 +size 128598 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_12.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_12.webp new file mode 100644 index 00000000..b5a7e0df --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0438c34cfc66f05771455c3155517b4166f1c11f01bb60e1b94535385b03e23c +size 125270 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_13.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_13.webp new file mode 100644 index 00000000..c4def276 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc02eb2a375f9578a8db4a6433650b81df8f77a987e83708ddc8d68ab9405221 +size 128602 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_14.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_14.webp new file mode 100644 index 00000000..f8187a72 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e26389d676d7cf2ee72a0c3488b2af0086fb768a94ca526c1f5f26dd7f270181 +size 127422 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_15.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_15.webp new file mode 100644 index 00000000..18dba66f --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0f1dbfa20a371c2ceab9abd33540906af377d8c7795197bb8f941c24b231f65 +size 128158 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_16.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_16.webp new file mode 100644 index 00000000..ae72e271 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba016b57b8f066df191c7e2e7279a3f47afd3569ab762bae7d438e4bf67bc2da +size 125242 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_17.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_17.webp new file mode 100644 index 00000000..92e74c2a --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b5ced6904e227937c258be6a6b72683eacb1d7fb86ed968765e459d56b40661 +size 128198 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_18.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_18.webp new file mode 100644 index 00000000..4df1cacc --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1fac695a0de17f69389f7d1668e5c0c0c0a6f7509b2f50d0ffed241111689ba +size 127694 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_19.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_19.webp new file mode 100644 index 00000000..b9bcf77c --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df769b7ee6f398ce7d3c2af21fb4d7152e046ef9ea27ad3c6d7ab3afb84c6a30 +size 128440 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_20.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_20.webp new file mode 100644 index 00000000..7a8be6fc --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf6957575f249529ef2285e7bf8d8b19dbf65b19cf11f510c6ecd60796bcf415 +size 125712 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_21.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_21.webp new file mode 100644 index 00000000..8ba47609 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:804aab40cacfb11891fe8dde22175cc2d3e47fd97f4d0768c8ee7e9ac1adae04 +size 128674 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_22.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_22.webp new file mode 100644 index 00000000..5644708c --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5ab4fd800fe23b6342b7777da7edd5689f7881bee71195f1a388ecbe97fb8c9 +size 127412 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_23.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_23.webp new file mode 100644 index 00000000..4e809eb5 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dc48a94db42882261e0e9dafb5a89ba66aeba135f9de5f08834c0ea68465a4f +size 127982 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_24.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_24.webp new file mode 100644 index 00000000..bff0ad72 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cc792c8ae81b486dcebdcd2ae7d2c25c4ba57b9bf680b2bba6bab952afbbab5 +size 124800 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_chest_25.webp b/game/characters/hermione/chibis/titjob/tj_cum_chest_25.webp new file mode 100644 index 00000000..67ecac24 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_chest_25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07f89929bd033114c1c62702b94f0eb0989d90e0347a015af903205ab834ecb9 +size 127714 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_01.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_01.webp new file mode 100644 index 00000000..f2e188d2 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7875f4fccce356878cca3962610c738724b5fa8fb0a19b0eb681501867dfc849 +size 111042 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_02.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_02.webp new file mode 100644 index 00000000..f2e188d2 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7875f4fccce356878cca3962610c738724b5fa8fb0a19b0eb681501867dfc849 +size 111042 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_03.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_03.webp new file mode 100644 index 00000000..ef7013a0 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc67becd0e493e02cb30702a37fa4beb1bfc42c2e83fcd9dca55284b3a8554b9 +size 111256 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_04.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_04.webp new file mode 100644 index 00000000..d826d2e7 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b79f6428837c4ad1b3d183bba2014d8da5b4b1b2d7b3dbfeaf7f5a3190ece6ed +size 111348 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_05.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_05.webp new file mode 100644 index 00000000..6b45e862 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35b3a8e4c431dcb12af775bdc44341e8e1d3d3a79ab9ccd20236639319142f54 +size 111810 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_06.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_06.webp new file mode 100644 index 00000000..89ecd649 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c78ef9324b9686b119c1406f524408b4ce94e5a21c2706d33ea415175bf5c7cb +size 112054 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_07.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_07.webp new file mode 100644 index 00000000..80fe21d4 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:125c3f34ee517c6b5a302930e233266696da6a5ebd9a960bbafef8eb8355d48f +size 112070 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_08.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_08.webp new file mode 100644 index 00000000..a9ae26f2 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9baa40ab75a05ab68ef7fdd6f1ff8fe3b734717b09b6ab776671fc85a05295ca +size 111986 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_09.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_09.webp new file mode 100644 index 00000000..31521bb4 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b430013581ba7b31f72216409eb53628ba11c793b94c4d930749c63d3d7084eb +size 111830 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_10.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_10.webp new file mode 100644 index 00000000..4c11a54c --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e49004fd7440effba3bdb029969895446b637e917fc138236098ec024b0dfff9 +size 111758 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_11.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_11.webp new file mode 100644 index 00000000..3231f829 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2638dac4d09e85323d7aa2b1111ffefb34690fd4ea7723092b151e881d2b37bd +size 110960 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_12.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_12.webp new file mode 100644 index 00000000..f6dd696c --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dca48a0d1b82a8739065d8d10124f98d2fddb72226dbd881eea92d987d8388a +size 111366 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_13.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_13.webp new file mode 100644 index 00000000..a7fe4060 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14bd1d93defb707bdeefb88fc91a84007a2634b8b3ce6c8046d6bb83e3816bd5 +size 111368 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_14.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_14.webp new file mode 100644 index 00000000..f56d89f8 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98dd8717bf8576f9d18b017b344ea709fdc16771a1218e0b70214e309a288112 +size 111584 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_15.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_15.webp new file mode 100644 index 00000000..de4971e8 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56158f07c4ceb162bcbe2b112563af046f42fce1dbf686ae13530a8b86aa7861 +size 111916 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_16.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_16.webp new file mode 100644 index 00000000..0d84a60e --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ee1acac0c6a2f4d8b576c1ed189a668b39a67d79156e89f3a5f4db0b7ed0609 +size 111198 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_17.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_17.webp new file mode 100644 index 00000000..f767ec51 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3262a3ae3cd9d8fada1f125240d1b2091b711bc772fd4eb2022e49a018a0fdaa +size 111446 diff --git a/game/characters/hermione/chibis/titjob/tj_cum_mouth_18.webp b/game/characters/hermione/chibis/titjob/tj_cum_mouth_18.webp new file mode 100644 index 00000000..f6dd696c --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_cum_mouth_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dca48a0d1b82a8739065d8d10124f98d2fddb72226dbd881eea92d987d8388a +size 111366 diff --git a/game/characters/hermione/chibis/titjob/tj_sex_01.webp b/game/characters/hermione/chibis/titjob/tj_sex_01.webp new file mode 100644 index 00000000..387f96f6 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_sex_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cc0b69da7357005b3a1c0777f67c34af13c40ba23ebaca412446ff57d98d485 +size 118982 diff --git a/game/characters/hermione/chibis/titjob/tj_sex_02.webp b/game/characters/hermione/chibis/titjob/tj_sex_02.webp new file mode 100644 index 00000000..f1ff935e --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_sex_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6afcd7fa775dc47ae2f9f63b5da0beb37824dad3e0b9bd60cb9d229def71b9a +size 118014 diff --git a/game/characters/hermione/chibis/titjob/tj_sex_03.webp b/game/characters/hermione/chibis/titjob/tj_sex_03.webp new file mode 100644 index 00000000..0bd335d4 --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_sex_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5b972c509e0db3f32aed3c71c3a958a7772ef08f08b44d6d7c2143cafb0ff48 +size 118118 diff --git a/game/characters/hermione/chibis/titjob/tj_sex_04.webp b/game/characters/hermione/chibis/titjob/tj_sex_04.webp new file mode 100644 index 00000000..bdeb5eef --- /dev/null +++ b/game/characters/hermione/chibis/titjob/tj_sex_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb30d83af600a3319b5efc18c43dfbe8efcfebfcf7d5331ad630c1826a4a8a83 +size 118338 diff --git a/game/characters/hermione/chibis/walk/h_walk_a_01.webp b/game/characters/hermione/chibis/walk/h_walk_a_01.webp new file mode 100644 index 00000000..c590ea52 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_a_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c41950334e6b15ff0d5427172ec9661148242bfae1387167eb97b4fd38f77b72 +size 48654 diff --git a/game/characters/hermione/chibis/walk/h_walk_a_02.webp b/game/characters/hermione/chibis/walk/h_walk_a_02.webp new file mode 100644 index 00000000..0694d81f --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_a_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c598e44b9278bce9a71fe8f79b517abf5455599bc4dd8f00300c879a99ed41d +size 48014 diff --git a/game/characters/hermione/chibis/walk/h_walk_a_03.webp b/game/characters/hermione/chibis/walk/h_walk_a_03.webp new file mode 100644 index 00000000..baab0fd8 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_a_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55d739a8de87213b3a7c71e1ca89708209102133684ba8722bc055d735e4b529 +size 50498 diff --git a/game/characters/hermione/chibis/walk/h_walk_a_04.webp b/game/characters/hermione/chibis/walk/h_walk_a_04.webp new file mode 100644 index 00000000..aa9652c3 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_a_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed4de216edc98cc02d2306fa027a3700864faafc47f466af030ab11d9048dd8f +size 48494 diff --git a/game/characters/hermione/chibis/walk/h_walk_a_05.webp b/game/characters/hermione/chibis/walk/h_walk_a_05.webp new file mode 100644 index 00000000..80545f59 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_a_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d80dfdf12eb0db7d79cb7f92480659a22798eece3ee30eba0995610c21b91ba +size 47462 diff --git a/game/characters/hermione/chibis/walk/h_walk_a_06.webp b/game/characters/hermione/chibis/walk/h_walk_a_06.webp new file mode 100644 index 00000000..b6073213 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_a_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0af5771bc4675e055753728a0e616debde0e8829b3a277bb1fb42038ad3dd981 +size 48388 diff --git a/game/characters/hermione/chibis/walk/h_walk_b_01.webp b/game/characters/hermione/chibis/walk/h_walk_b_01.webp new file mode 100644 index 00000000..fc4fbe25 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_b_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81d2bec7356f17bb3f7dee13960938b46f036eb503863bf2cfb3b28fb27d3762 +size 48532 diff --git a/game/characters/hermione/chibis/walk/h_walk_b_02.webp b/game/characters/hermione/chibis/walk/h_walk_b_02.webp new file mode 100644 index 00000000..3546ffba --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_b_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef58f069a4b240a5eae668355953d691fdfb7ce260a3905ef7297bb395fb4cc5 +size 47674 diff --git a/game/characters/hermione/chibis/walk/h_walk_b_03.webp b/game/characters/hermione/chibis/walk/h_walk_b_03.webp new file mode 100644 index 00000000..e62e2071 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_b_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2231a6c936754e304b3256c1dd53d15b83a85fe2a0e19d0ab604d36b7c2529d7 +size 50300 diff --git a/game/characters/hermione/chibis/walk/h_walk_b_04.webp b/game/characters/hermione/chibis/walk/h_walk_b_04.webp new file mode 100644 index 00000000..ca5ce7f5 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_b_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84cca2521ada43a53d9d8f384f9ffd2b85cee2173f8722ba62d73586e988dfa5 +size 48120 diff --git a/game/characters/hermione/chibis/walk/h_walk_b_05.webp b/game/characters/hermione/chibis/walk/h_walk_b_05.webp new file mode 100644 index 00000000..79a19ef1 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_b_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3804c96392dc2409e44708fed45997492b05c9e01a9ec96f5cb155cb4ed6d2a +size 47234 diff --git a/game/characters/hermione/chibis/walk/h_walk_b_06.webp b/game/characters/hermione/chibis/walk/h_walk_b_06.webp new file mode 100644 index 00000000..6f98ccb9 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_b_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28b9beaa7331534e870730f4787874e1975f92dfa0b046e1c29a926196dbc146 +size 48066 diff --git a/game/characters/hermione/chibis/walk/h_walk_c_01.webp b/game/characters/hermione/chibis/walk/h_walk_c_01.webp new file mode 100644 index 00000000..1b7bbeed --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_c_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f2bdc44f6ffe46e7f9c1ebce760909b505663b4a2f232e25afdc0deb35a8df2 +size 48490 diff --git a/game/characters/hermione/chibis/walk/h_walk_c_02.webp b/game/characters/hermione/chibis/walk/h_walk_c_02.webp new file mode 100644 index 00000000..1ecc7a44 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_c_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e0a75a2ffe4c894f6df0118af40301ff8283e9ed13443e703634e61c73a1a05 +size 47690 diff --git a/game/characters/hermione/chibis/walk/h_walk_c_03.webp b/game/characters/hermione/chibis/walk/h_walk_c_03.webp new file mode 100644 index 00000000..c47e0eaf --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_c_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e30a7902c846ab16641c5ab38a269866fc70dcb0976d2e332a5708cd6c2568a +size 50204 diff --git a/game/characters/hermione/chibis/walk/h_walk_c_04.webp b/game/characters/hermione/chibis/walk/h_walk_c_04.webp new file mode 100644 index 00000000..92e58016 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_c_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af28aa5170dce81b331d844cfb15af8971b0302d0d70d728e1896ffbdc7b66ab +size 48150 diff --git a/game/characters/hermione/chibis/walk/h_walk_c_05.webp b/game/characters/hermione/chibis/walk/h_walk_c_05.webp new file mode 100644 index 00000000..843dc1b0 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_c_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62b1ea379d06b66b3077f43c9faf734c8b4aa8821f86be275bdf04eaf6caf9cc +size 47172 diff --git a/game/characters/hermione/chibis/walk/h_walk_c_06.webp b/game/characters/hermione/chibis/walk/h_walk_c_06.webp new file mode 100644 index 00000000..306e45c3 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_c_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3356a7bbc427f2eb8ab7d5e6ce793b25611bfd819f469aafae048847f7d9e5c5 +size 48046 diff --git a/game/characters/hermione/chibis/walk/h_walk_d_01.webp b/game/characters/hermione/chibis/walk/h_walk_d_01.webp new file mode 100644 index 00000000..39c5daf6 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_d_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78fd2fac5c50aed152b58becea9b15e8883ab3b90e8033903c85a6be3fef3343 +size 47388 diff --git a/game/characters/hermione/chibis/walk/h_walk_d_02.webp b/game/characters/hermione/chibis/walk/h_walk_d_02.webp new file mode 100644 index 00000000..33192182 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_d_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c214e7335d316ef921dcdf58ac2b3047e0db0989c9de19cccb4561ce82ded3c6 +size 46638 diff --git a/game/characters/hermione/chibis/walk/h_walk_d_03.webp b/game/characters/hermione/chibis/walk/h_walk_d_03.webp new file mode 100644 index 00000000..f47bde63 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_d_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fff2df2ff5eca9eda843d2e036a7352a2b799066aa8561ec0543f552ad2afc76 +size 48686 diff --git a/game/characters/hermione/chibis/walk/h_walk_d_04.webp b/game/characters/hermione/chibis/walk/h_walk_d_04.webp new file mode 100644 index 00000000..2b949fa6 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_d_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e63c5052879ab1cca5e12f6ae9943cd0a3831acc98bc1b188c664331bdbbc540 +size 49064 diff --git a/game/characters/hermione/chibis/walk/h_walk_d_05.webp b/game/characters/hermione/chibis/walk/h_walk_d_05.webp new file mode 100644 index 00000000..f19fdd7b --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_d_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ad7456c45d91211022173348f3fbc9047125947bf393ae910cd0c116816bf58 +size 49006 diff --git a/game/characters/hermione/chibis/walk/h_walk_d_06.webp b/game/characters/hermione/chibis/walk/h_walk_d_06.webp new file mode 100644 index 00000000..3c2e79b4 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_d_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c929e9f1d2e528b3318b8398b2f2ba70f7e458d3317bfdef6d8bdc93fb5637d0 +size 47162 diff --git a/game/characters/hermione/chibis/walk/h_walk_e_01.webp b/game/characters/hermione/chibis/walk/h_walk_e_01.webp new file mode 100644 index 00000000..2dae5090 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_e_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83d02965b5a27867881005f3ca86e750375f5d463166591fd17e27be536a45ee +size 47218 diff --git a/game/characters/hermione/chibis/walk/h_walk_e_02.webp b/game/characters/hermione/chibis/walk/h_walk_e_02.webp new file mode 100644 index 00000000..8e2762ca --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_e_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc17feb470903bdfd2de842e1638a83f04a6d750c5b517d317f4b0629e6a3199 +size 46276 diff --git a/game/characters/hermione/chibis/walk/h_walk_e_03.webp b/game/characters/hermione/chibis/walk/h_walk_e_03.webp new file mode 100644 index 00000000..c5514065 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_e_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1c415425b6872fa121025b386b1a52aec8784bdf6ae83d22928e669329b3c0d +size 48406 diff --git a/game/characters/hermione/chibis/walk/h_walk_e_04.webp b/game/characters/hermione/chibis/walk/h_walk_e_04.webp new file mode 100644 index 00000000..3e02c78d --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_e_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc8b9246119a686f77b6dd09999ca26f847b8bbc89a3e02aa905ad245b28a98c +size 48590 diff --git a/game/characters/hermione/chibis/walk/h_walk_e_05.webp b/game/characters/hermione/chibis/walk/h_walk_e_05.webp new file mode 100644 index 00000000..01e1d861 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_e_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa4a3d3c33e107ef87b506998b0f652c5d6507e4e52abe01d48d4a1743194be9 +size 48658 diff --git a/game/characters/hermione/chibis/walk/h_walk_e_06.webp b/game/characters/hermione/chibis/walk/h_walk_e_06.webp new file mode 100644 index 00000000..d14194dc --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_e_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1138f04fbeb259284248b2e6fdc5aed074c94994c47e97d26b9208f315fd841 +size 46808 diff --git a/game/characters/hermione/chibis/walk/h_walk_f_01.webp b/game/characters/hermione/chibis/walk/h_walk_f_01.webp new file mode 100644 index 00000000..9ac6d6ed --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_f_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18fb5e23771ff382cd9312cf9849b429f3ee50d4b4b297c52871b3488285fcdf +size 47402 diff --git a/game/characters/hermione/chibis/walk/h_walk_f_02.webp b/game/characters/hermione/chibis/walk/h_walk_f_02.webp new file mode 100644 index 00000000..e67ea838 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_f_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83debdf4272d8b7113cf104d1d3c397f360721b0556a217f74425c9ef927d1d9 +size 46544 diff --git a/game/characters/hermione/chibis/walk/h_walk_f_03.webp b/game/characters/hermione/chibis/walk/h_walk_f_03.webp new file mode 100644 index 00000000..e5a03e46 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_f_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bcaf8115ba04276651e98d01f2d2816563e0181eb3b0f2e3609647423ec1f34 +size 48616 diff --git a/game/characters/hermione/chibis/walk/h_walk_f_04.webp b/game/characters/hermione/chibis/walk/h_walk_f_04.webp new file mode 100644 index 00000000..260f7ac0 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_f_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d67ff3e37daf76d451a0908dd6bcf42222c4009629512bc211ed40fec58c92d0 +size 48634 diff --git a/game/characters/hermione/chibis/walk/h_walk_f_05.webp b/game/characters/hermione/chibis/walk/h_walk_f_05.webp new file mode 100644 index 00000000..c1e6db0d --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_f_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c646177e6c95c1b5936b5393703918db2755b22f346b3a492c12edfd02827a2 +size 48936 diff --git a/game/characters/hermione/chibis/walk/h_walk_f_06.webp b/game/characters/hermione/chibis/walk/h_walk_f_06.webp new file mode 100644 index 00000000..f641e0a3 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_f_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:296ca51d2705f3b9a8d6ab2b4f9296164e3238eccfe3e4091b5749f22971975e +size 47166 diff --git a/game/characters/hermione/chibis/walk/h_walk_g_01.webp b/game/characters/hermione/chibis/walk/h_walk_g_01.webp new file mode 100644 index 00000000..9de5d492 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_g_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:994bedf012165ffe60723facf1903a7a16b520c335b841fde0b03fca0b3bfa7d +size 48354 diff --git a/game/characters/hermione/chibis/walk/h_walk_g_02.webp b/game/characters/hermione/chibis/walk/h_walk_g_02.webp new file mode 100644 index 00000000..0181ff76 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_g_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:765e19873940e7d5d915886187a6e8084f49dec388294a4ec1ea272ee975410b +size 47222 diff --git a/game/characters/hermione/chibis/walk/h_walk_g_03.webp b/game/characters/hermione/chibis/walk/h_walk_g_03.webp new file mode 100644 index 00000000..0a56f351 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_g_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1eb967abfefe095bb9b4f76ec7c143d1f87cc85173289f8c6a107ca4cfad886 +size 49424 diff --git a/game/characters/hermione/chibis/walk/h_walk_g_04.webp b/game/characters/hermione/chibis/walk/h_walk_g_04.webp new file mode 100644 index 00000000..77bda05a --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_g_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3857316625541b4af999033c4f6717224d1dc8976dfcf5bebac98b91b9f4124 +size 49688 diff --git a/game/characters/hermione/chibis/walk/h_walk_g_05.webp b/game/characters/hermione/chibis/walk/h_walk_g_05.webp new file mode 100644 index 00000000..78c6cfea --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_g_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6425a8fd34ec1f769a687593d21cf1b028a5f899cefda439f950355c7135e48 +size 49822 diff --git a/game/characters/hermione/chibis/walk/h_walk_g_06.webp b/game/characters/hermione/chibis/walk/h_walk_g_06.webp new file mode 100644 index 00000000..5f9e0c65 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_g_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae5ec8d71e882bb779d838a8048cc742a531aef6c6c01b1a264913440de0d302 +size 47986 diff --git a/game/characters/hermione/chibis/walk/h_walk_h_01.webp b/game/characters/hermione/chibis/walk/h_walk_h_01.webp new file mode 100644 index 00000000..e38f4dd4 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_h_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc776065bc8f0d01e3fdff60bdb40f7fa5205d01ac275a0d3063cd2150fe313d +size 46904 diff --git a/game/characters/hermione/chibis/walk/h_walk_h_02.webp b/game/characters/hermione/chibis/walk/h_walk_h_02.webp new file mode 100644 index 00000000..7bcd64b9 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_h_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ae8d1615037d499fa86fa68a16a69b080c98cd0420dc54c62ccb16ed4fb73b4 +size 46004 diff --git a/game/characters/hermione/chibis/walk/h_walk_h_03.webp b/game/characters/hermione/chibis/walk/h_walk_h_03.webp new file mode 100644 index 00000000..da3137df --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_h_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d04110fb0b8452bc685ff292a98a22dc015ecf3c35cc099492c77207271d3a01 +size 48272 diff --git a/game/characters/hermione/chibis/walk/h_walk_h_04.webp b/game/characters/hermione/chibis/walk/h_walk_h_04.webp new file mode 100644 index 00000000..13d80fd4 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_h_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfddc0a7e14da8cbe217e869fa1e8c515dcf908cdc8d10e087d58df2455845c9 +size 48338 diff --git a/game/characters/hermione/chibis/walk/h_walk_h_05.webp b/game/characters/hermione/chibis/walk/h_walk_h_05.webp new file mode 100644 index 00000000..5fa3ea8d --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_h_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e114df86728d2b5e0e82341d071dda5d49783fe2a814af02b51a64afb28b4fcb +size 48314 diff --git a/game/characters/hermione/chibis/walk/h_walk_h_06.webp b/game/characters/hermione/chibis/walk/h_walk_h_06.webp new file mode 100644 index 00000000..019fcc2f --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_h_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c962e2540206aa91f7d06d49da52b03b9ddb92f328adfeda3c894a5273447b97 +size 46700 diff --git a/game/characters/hermione/chibis/walk/h_walk_n_01.webp b/game/characters/hermione/chibis/walk/h_walk_n_01.webp new file mode 100644 index 00000000..e43d9b44 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_n_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eae13de50bd9ab250b9e4a8b12843b4efb02fa4c2645ce00b3a6c56c917b42eb +size 44034 diff --git a/game/characters/hermione/chibis/walk/h_walk_n_02.webp b/game/characters/hermione/chibis/walk/h_walk_n_02.webp new file mode 100644 index 00000000..23dc3a6f --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_n_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d44a372e0aea3d39eb5d055b761546dbef04dd3993a9927da4f941a053692c92 +size 44084 diff --git a/game/characters/hermione/chibis/walk/h_walk_n_03.webp b/game/characters/hermione/chibis/walk/h_walk_n_03.webp new file mode 100644 index 00000000..2c1917e6 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_n_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8622a935ba57b87e5d5072950193b273620fb920eb873f8117de0caa972adb8 +size 45362 diff --git a/game/characters/hermione/chibis/walk/h_walk_n_04.webp b/game/characters/hermione/chibis/walk/h_walk_n_04.webp new file mode 100644 index 00000000..75e556b5 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_n_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56286605dd795505cf685bca6f3a5b81b49eb9169baf86329d79ab693a5f0591 +size 45506 diff --git a/game/characters/hermione/chibis/walk/h_walk_n_05.webp b/game/characters/hermione/chibis/walk/h_walk_n_05.webp new file mode 100644 index 00000000..89c39751 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_n_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6ca319d6f2faafc97654a8cd10c708a7754088f2497f0fd966dd763861c0f10 +size 46364 diff --git a/game/characters/hermione/chibis/walk/h_walk_n_06.webp b/game/characters/hermione/chibis/walk/h_walk_n_06.webp new file mode 100644 index 00000000..d674e8f8 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_n_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f6e8b5113233e5f1d892dbe5354a1115e5f8f5b12ec4893c6d6b805a2f87b67 +size 43618 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_01.webp b/game/characters/hermione/chibis/walk/h_walk_robe_01.webp new file mode 100644 index 00000000..25f06e2b --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b61e0b3039616536cf5e9f1914c01faa7e769503222284f11db4d02217dd019 +size 46450 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_01_blink.webp b/game/characters/hermione/chibis/walk/h_walk_robe_01_blink.webp new file mode 100644 index 00000000..1e3d9b5f --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_01_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:509ba96212c7464545124b011ee4011fc980482e070a13e01538549edb39248a +size 45838 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_02.webp b/game/characters/hermione/chibis/walk/h_walk_robe_02.webp new file mode 100644 index 00000000..370b5ea7 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e233d4572648999bc751696714cf971ebca70bdf5b13a1002ef2cd35da143c7c +size 45904 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_03.webp b/game/characters/hermione/chibis/walk/h_walk_robe_03.webp new file mode 100644 index 00000000..f5e2a11d --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dc362f78ad45f3f2c440edc97c6fa74492a8df14666dd5d298b76c31169e57f +size 46548 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_04.webp b/game/characters/hermione/chibis/walk/h_walk_robe_04.webp new file mode 100644 index 00000000..f1a705d4 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0f507a40c2daa44046e508496f5bebaa19e97f7f7878c15e5cd132adb5acd6f +size 45892 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_05.webp b/game/characters/hermione/chibis/walk/h_walk_robe_05.webp new file mode 100644 index 00000000..25f06e2b --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b61e0b3039616536cf5e9f1914c01faa7e769503222284f11db4d02217dd019 +size 46450 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_06.webp b/game/characters/hermione/chibis/walk/h_walk_robe_06.webp new file mode 100644 index 00000000..9b83e52d --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86f3331b6b184b2b4c56da30724cbaa82c2662f3c5c605d321bb845182cae2a8 +size 46638 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_07.webp b/game/characters/hermione/chibis/walk/h_walk_robe_07.webp new file mode 100644 index 00000000..76c7a308 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aeca4b83a53806e18d996798df884370113c19ad41909d6e1ae28dbd18bf69a +size 46332 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_08.webp b/game/characters/hermione/chibis/walk/h_walk_robe_08.webp new file mode 100644 index 00000000..e29cc6e4 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:409e43135f8bf8b3315bd6dcf7108252082e66d6599bca6d5f2ea26760c04232 +size 46638 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_n_01.webp b/game/characters/hermione/chibis/walk/h_walk_robe_n_01.webp new file mode 100644 index 00000000..8154e011 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_n_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27995759465ee442c7b31bce77f04ffd5f1cee97008f7b9ecdfc535a7dbf1449 +size 45884 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_n_01_blink.webp b/game/characters/hermione/chibis/walk/h_walk_robe_n_01_blink.webp new file mode 100644 index 00000000..ea200dfb --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_n_01_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1781c0cb3b06820daf189f968de222afa464cca47b91ee04bc2d8ef17b10a20f +size 45208 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_n_02.webp b/game/characters/hermione/chibis/walk/h_walk_robe_n_02.webp new file mode 100644 index 00000000..4d61ce8e --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_n_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36afda605e1edc5d3b0fe91bb22f727c25edfd1ffebbf6db692b748fac2dc03d +size 45340 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_n_03.webp b/game/characters/hermione/chibis/walk/h_walk_robe_n_03.webp new file mode 100644 index 00000000..b021b9de --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_n_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b5be1c81bf1c05ab02a8306cb1c435c83a5151994ad7a0ca3bdcce234cb348d +size 46070 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_n_04.webp b/game/characters/hermione/chibis/walk/h_walk_robe_n_04.webp new file mode 100644 index 00000000..4d61ce8e --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_n_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36afda605e1edc5d3b0fe91bb22f727c25edfd1ffebbf6db692b748fac2dc03d +size 45340 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_n_05.webp b/game/characters/hermione/chibis/walk/h_walk_robe_n_05.webp new file mode 100644 index 00000000..48287607 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_n_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:463d37b1b94745fbe528602488d877c6e9d633bf4767db4055523310141a1fc3 +size 45772 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_n_06.webp b/game/characters/hermione/chibis/walk/h_walk_robe_n_06.webp new file mode 100644 index 00000000..c945ef43 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_n_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4876c37a69c0ef2ace1e8b92f518d5322423c387532fd94c3870e9d21409a76 +size 46214 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_n_07.webp b/game/characters/hermione/chibis/walk/h_walk_robe_n_07.webp new file mode 100644 index 00000000..86ee9255 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_n_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c35d7e7cbba66cefe619c1548a5ba3a98a5a76a88bf3bfbc4bff977fa293f267 +size 45884 diff --git a/game/characters/hermione/chibis/walk/h_walk_robe_n_08.webp b/game/characters/hermione/chibis/walk/h_walk_robe_n_08.webp new file mode 100644 index 00000000..032b04a5 --- /dev/null +++ b/game/characters/hermione/chibis/walk/h_walk_robe_n_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f5564bc86bfdaaf7a497436ef5e51cf2b162c047b088e85f68facd5b3fd0029 +size 46182 diff --git a/game/characters/hermione/clothes/accessory/ball_sash/0.webp b/game/characters/hermione/clothes/accessory/ball_sash/0.webp new file mode 100644 index 00000000..79d0f4da --- /dev/null +++ b/game/characters/hermione/clothes/accessory/ball_sash/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9979d98904c590b92c8c64512147716e34eab841b96f7772f17325564bdec54 +size 10188 diff --git a/game/characters/hermione/clothes/accessory/ball_sash/0_back.webp b/game/characters/hermione/clothes/accessory/ball_sash/0_back.webp new file mode 100644 index 00000000..3ff13273 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/ball_sash/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cc401d7c5631dcc6baefbac5447ae72f7f4cf2766266336ba64f73afbadd3cf +size 1704 diff --git a/game/characters/hermione/clothes/accessory/ball_sash/1.webp b/game/characters/hermione/clothes/accessory/ball_sash/1.webp new file mode 100644 index 00000000..ed509392 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/ball_sash/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:293258b133091eec2f9e4f64bc23ef239200e4ca02ca20d3d5f9bec409980fe0 +size 4330 diff --git a/game/characters/hermione/clothes/accessory/ball_sash/extra.webp b/game/characters/hermione/clothes/accessory/ball_sash/extra.webp new file mode 100644 index 00000000..56fb8f1a --- /dev/null +++ b/game/characters/hermione/clothes/accessory/ball_sash/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47ed8721e63d2275bd0feacc0aa567386a5a3021f7826c7b262b3f9602d20894 +size 1852 diff --git a/game/characters/hermione/clothes/accessory/ball_sash/outline.webp b/game/characters/hermione/clothes/accessory/ball_sash/outline.webp new file mode 100644 index 00000000..3f414657 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/ball_sash/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:adb6229048df0c9362f448182c10279200efe99a103bbaa285008fd185bab45e +size 12478 diff --git a/game/characters/hermione/clothes/accessory/ball_sash/outline_back.webp b/game/characters/hermione/clothes/accessory/ball_sash/outline_back.webp new file mode 100644 index 00000000..d3cd9aa1 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/ball_sash/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2b41d72d9cf7ceccd886024afd8922b0380a712dcc56ab2f727df8f7a7fa8ef +size 1216 diff --git a/game/characters/hermione/clothes/accessory/bunny_badge/0.webp b/game/characters/hermione/clothes/accessory/bunny_badge/0.webp new file mode 100644 index 00000000..e1274187 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/bunny_badge/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c97117fb33bedcce436ebf708130f7577ea96dae98d07fdf7b61a98c2234baf +size 3386 diff --git a/game/characters/hermione/clothes/accessory/bunny_badge/outline.webp b/game/characters/hermione/clothes/accessory/bunny_badge/outline.webp new file mode 100644 index 00000000..28a69dc3 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/bunny_badge/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ced0f18023eb85f403ce24e395e7664e162c371c9364c36414fee48b8024838e +size 4192 diff --git a/game/characters/hermione/clothes/accessory/buttplug_large_1/0.webp b/game/characters/hermione/clothes/accessory/buttplug_large_1/0.webp new file mode 100644 index 00000000..6b056a3c --- /dev/null +++ b/game/characters/hermione/clothes/accessory/buttplug_large_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e6ae257851d8f61517d94964f9942e07be6dd8400f34c56d2e78445f0eb6c38 +size 3158 diff --git a/game/characters/hermione/clothes/accessory/buttplug_large_1/1.webp b/game/characters/hermione/clothes/accessory/buttplug_large_1/1.webp new file mode 100644 index 00000000..6eedd639 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/buttplug_large_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b07d6b77b4cb5e4bf5334528fbc8ae1ad256340be273aa5a37d2f1f98de35d5 +size 1048 diff --git a/game/characters/hermione/clothes/accessory/buttplug_large_1/2.webp b/game/characters/hermione/clothes/accessory/buttplug_large_1/2.webp new file mode 100644 index 00000000..5ee3d81f --- /dev/null +++ b/game/characters/hermione/clothes/accessory/buttplug_large_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e22f8194bf344f442039b0dfa862a96a89695dc5674ef9e27b28cd09bcec14c8 +size 1476 diff --git a/game/characters/hermione/clothes/accessory/buttplug_large_1/outline.webp b/game/characters/hermione/clothes/accessory/buttplug_large_1/outline.webp new file mode 100644 index 00000000..dadf242e --- /dev/null +++ b/game/characters/hermione/clothes/accessory/buttplug_large_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1c0965c0530cde8cb1ba1d063ca96d79092332baf7b90ecf1ff2d0e65e00a4e +size 4578 diff --git a/game/characters/hermione/clothes/accessory/buttplug_medium_1/0.webp b/game/characters/hermione/clothes/accessory/buttplug_medium_1/0.webp new file mode 100644 index 00000000..3890816b --- /dev/null +++ b/game/characters/hermione/clothes/accessory/buttplug_medium_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9dcd4bdb702bac32f9be9f7cb5cfb21d35baa0362dfe03fcb73139dd7aefe58 +size 1794 diff --git a/game/characters/hermione/clothes/accessory/buttplug_medium_1/1.webp b/game/characters/hermione/clothes/accessory/buttplug_medium_1/1.webp new file mode 100644 index 00000000..2315a936 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/buttplug_medium_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae9b7412b2d44523bf331bd4b7891e9858e0fda19bd8975fab7d958b804d26bb +size 2080 diff --git a/game/characters/hermione/clothes/accessory/buttplug_medium_1/2.webp b/game/characters/hermione/clothes/accessory/buttplug_medium_1/2.webp new file mode 100644 index 00000000..9f6d6321 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/buttplug_medium_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c2449ebbbad6d7bb907575ca738ea72b5e131874ef86099c5c919f0ee1613ee +size 1748 diff --git a/game/characters/hermione/clothes/accessory/buttplug_medium_1/3.webp b/game/characters/hermione/clothes/accessory/buttplug_medium_1/3.webp new file mode 100644 index 00000000..36594661 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/buttplug_medium_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f33c88e479bc4db8f78455c324726e8b390adf8c0b90029b969698e41e3ad4f7 +size 1174 diff --git a/game/characters/hermione/clothes/accessory/buttplug_medium_1/outline.webp b/game/characters/hermione/clothes/accessory/buttplug_medium_1/outline.webp new file mode 100644 index 00000000..362e67d7 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/buttplug_medium_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bf0abf3d9e66a19541ef0831eea3304b2ce60622f6a34bf0ec7116e9c4b0654 +size 4668 diff --git a/game/characters/hermione/clothes/accessory/buttplug_small_1/0.webp b/game/characters/hermione/clothes/accessory/buttplug_small_1/0.webp new file mode 100644 index 00000000..73a500ed --- /dev/null +++ b/game/characters/hermione/clothes/accessory/buttplug_small_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3757cd882368cc8cdaa6d700eccabaff8587931b1bf7feb71d55f2c0f055f7ab +size 1804 diff --git a/game/characters/hermione/clothes/accessory/buttplug_small_1/1.webp b/game/characters/hermione/clothes/accessory/buttplug_small_1/1.webp new file mode 100644 index 00000000..89fd5770 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/buttplug_small_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23d6d22d8d7ee1eb2cacd9cf2099786b623899832e0883199d1c7015c096fa26 +size 984 diff --git a/game/characters/hermione/clothes/accessory/buttplug_small_1/outline.webp b/game/characters/hermione/clothes/accessory/buttplug_small_1/outline.webp new file mode 100644 index 00000000..cf8d74d4 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/buttplug_small_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32937dd2be26c2044a771e2f35d676d4feb508d87c04795def9bc0ce9629e67f +size 2562 diff --git a/game/characters/hermione/clothes/accessory/cat_tail/0.webp b/game/characters/hermione/clothes/accessory/cat_tail/0.webp new file mode 100644 index 00000000..6d01448b --- /dev/null +++ b/game/characters/hermione/clothes/accessory/cat_tail/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71e78b9055461eecdc2845657f2a9bf682973a7ad2c60c3dec844923ed7030b8 +size 12650 diff --git a/game/characters/hermione/clothes/accessory/cat_tail/outline.webp b/game/characters/hermione/clothes/accessory/cat_tail/outline.webp new file mode 100644 index 00000000..fba18593 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/cat_tail/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2528798e285b3e0eebaf3a8110e91f36c07f97f67268b99ed2d1970c6d14ce6 +size 4564 diff --git a/game/characters/hermione/clothes/accessory/croft_belt/0.webp b/game/characters/hermione/clothes/accessory/croft_belt/0.webp new file mode 100644 index 00000000..b1d5965e --- /dev/null +++ b/game/characters/hermione/clothes/accessory/croft_belt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdf0dd3bedb6fccade4676e990ac9eb0915dff229c6d9e0e4aad0233436b0456 +size 14526 diff --git a/game/characters/hermione/clothes/accessory/croft_belt/1.webp b/game/characters/hermione/clothes/accessory/croft_belt/1.webp new file mode 100644 index 00000000..2a2951f1 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/croft_belt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6b4462460054a20576e96c00c319b59a56b0760b3a6004d1e88e2a5bcfc0eaf +size 4494 diff --git a/game/characters/hermione/clothes/accessory/croft_belt/2.webp b/game/characters/hermione/clothes/accessory/croft_belt/2.webp new file mode 100644 index 00000000..1e26d4ff --- /dev/null +++ b/game/characters/hermione/clothes/accessory/croft_belt/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:682a73ac564cb4b2c5569fc964c0eddadb5823705d885488967e6d0e53174a03 +size 2750 diff --git a/game/characters/hermione/clothes/accessory/croft_belt/extra.webp b/game/characters/hermione/clothes/accessory/croft_belt/extra.webp new file mode 100644 index 00000000..98585d26 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/croft_belt/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f27da697b08340a813a47e4e155f3c22f50c52a999c0e42f4f6ac7c275a3e6c4 +size 3552 diff --git a/game/characters/hermione/clothes/accessory/croft_belt/outline.webp b/game/characters/hermione/clothes/accessory/croft_belt/outline.webp new file mode 100644 index 00000000..22efeec2 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/croft_belt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be1bc882d2fea3cf449eccb9303cbe48d954088fc4e38ecafe63d723c66c0c9c +size 14846 diff --git a/game/characters/hermione/clothes/accessory/croft_suspenders/0.webp b/game/characters/hermione/clothes/accessory/croft_suspenders/0.webp new file mode 100644 index 00000000..44713b9a --- /dev/null +++ b/game/characters/hermione/clothes/accessory/croft_suspenders/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:844a87ac971bda33b5603b75102d58188ea25d8a2fe20d848b5bdf5ccc4b79f5 +size 4482 diff --git a/game/characters/hermione/clothes/accessory/croft_suspenders/1.webp b/game/characters/hermione/clothes/accessory/croft_suspenders/1.webp new file mode 100644 index 00000000..8ae264b3 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/croft_suspenders/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b67da54a4f3fbf9a95a861f1227176b5866e1ca97beeada8754e1e0e66f6f8f +size 2810 diff --git a/game/characters/hermione/clothes/accessory/croft_suspenders/outline.webp b/game/characters/hermione/clothes/accessory/croft_suspenders/outline.webp new file mode 100644 index 00000000..da5c9312 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/croft_suspenders/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04c9c241aba7bf0c90985df97442b4813879c7a9fc2e0a993db49569aaf7c579 +size 5790 diff --git a/game/characters/hermione/clothes/accessory/house_emblem/0.webp b/game/characters/hermione/clothes/accessory/house_emblem/0.webp new file mode 100644 index 00000000..3a6b8482 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/house_emblem/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66f42d093778b84a98d9c0bb7dec19989bf0266a68d8d18ed8abd82c6eb5f0b4 +size 3662 diff --git a/game/characters/hermione/clothes/accessory/house_emblem/1.webp b/game/characters/hermione/clothes/accessory/house_emblem/1.webp new file mode 100644 index 00000000..eaa291d8 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/house_emblem/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e97eeaad26507920e28221d7db1f2fdd15ad56492219300dbbf2c226a1f8780 +size 2370 diff --git a/game/characters/hermione/clothes/accessory/house_emblem/outline.webp b/game/characters/hermione/clothes/accessory/house_emblem/outline.webp new file mode 100644 index 00000000..34af8dc1 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/house_emblem/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:479cef0831deb89995c3fb557a1c2cebd3a9c665a83bad696a2bd75bbe0ee9c6 +size 3954 diff --git a/game/characters/hermione/clothes/accessory/leg_wrap/0.webp b/game/characters/hermione/clothes/accessory/leg_wrap/0.webp new file mode 100644 index 00000000..36d655ff --- /dev/null +++ b/game/characters/hermione/clothes/accessory/leg_wrap/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75d80a5693c86cb399581d43f2ce448a7a296955e57424dbf8f52f29687c46d6 +size 6924 diff --git a/game/characters/hermione/clothes/accessory/leg_wrap/1.webp b/game/characters/hermione/clothes/accessory/leg_wrap/1.webp new file mode 100644 index 00000000..a9edd4ab --- /dev/null +++ b/game/characters/hermione/clothes/accessory/leg_wrap/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fae4009fd0e88c80707b6e056dc8e9d9d48e562e0dec8c43a768d64c16ce004f +size 7250 diff --git a/game/characters/hermione/clothes/accessory/leg_wrap/outline.webp b/game/characters/hermione/clothes/accessory/leg_wrap/outline.webp new file mode 100644 index 00000000..f8412279 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/leg_wrap/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bea2454f3ea20d6a2ca4d9f269b1d16ebc80cc8a7992354a3893f77ff397f92 +size 8238 diff --git a/game/characters/hermione/clothes/accessory/msmarv_ribbon/0.webp b/game/characters/hermione/clothes/accessory/msmarv_ribbon/0.webp new file mode 100644 index 00000000..242faf87 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/msmarv_ribbon/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:934c7018d2e092a564be6cd1123eb6e9d2c2eddabcca159a3ab80715eca82844 +size 11808 diff --git a/game/characters/hermione/clothes/accessory/msmarv_ribbon/outline.webp b/game/characters/hermione/clothes/accessory/msmarv_ribbon/outline.webp new file mode 100644 index 00000000..d50f4694 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/msmarv_ribbon/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78d815b98cca252557be8692fbd17ff520cc8ff64e26a68ccf90e57d57ff5fef +size 11552 diff --git a/game/characters/hermione/clothes/accessory/tifa_belt/0.webp b/game/characters/hermione/clothes/accessory/tifa_belt/0.webp new file mode 100644 index 00000000..e21fe2c3 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/tifa_belt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:580dd3f92b30d36c07079f7b380b84025ad8241886ccdce6db4de917f26f2639 +size 7590 diff --git a/game/characters/hermione/clothes/accessory/tifa_belt/1.webp b/game/characters/hermione/clothes/accessory/tifa_belt/1.webp new file mode 100644 index 00000000..0ea333f7 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/tifa_belt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f1300269ef4de2077cc63da0da7a259f6b9cb154869046014b52b4a18997a3b +size 1334 diff --git a/game/characters/hermione/clothes/accessory/tifa_belt/extra.webp b/game/characters/hermione/clothes/accessory/tifa_belt/extra.webp new file mode 100644 index 00000000..ed7eff20 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/tifa_belt/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88b2b13057b3f84644afc5dd33fac408dabadcd4e9479efe26bf5a7229bd87e0 +size 2064 diff --git a/game/characters/hermione/clothes/accessory/tifa_belt/outline.webp b/game/characters/hermione/clothes/accessory/tifa_belt/outline.webp new file mode 100644 index 00000000..5bb28555 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/tifa_belt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc9e5b1dbcb543c3155ef3452d1696b0e5d691465b3b5f00571e36e348deecef +size 6642 diff --git a/game/characters/hermione/clothes/accessory/tifa_suspenders/0.webp b/game/characters/hermione/clothes/accessory/tifa_suspenders/0.webp new file mode 100644 index 00000000..0c67a224 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/tifa_suspenders/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69f89f44152c1bf7a6b3bffd2df02b5ba2face43370738f9a87502148a52ebe0 +size 9862 diff --git a/game/characters/hermione/clothes/accessory/tifa_suspenders/1.webp b/game/characters/hermione/clothes/accessory/tifa_suspenders/1.webp new file mode 100644 index 00000000..ddba0c53 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/tifa_suspenders/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e734131eec180328e393f995faf79d57981d78edf077d58d3f005f8c2a28c7f +size 3680 diff --git a/game/characters/hermione/clothes/accessory/tifa_suspenders/outline.webp b/game/characters/hermione/clothes/accessory/tifa_suspenders/outline.webp new file mode 100644 index 00000000..4cfc7b3d --- /dev/null +++ b/game/characters/hermione/clothes/accessory/tifa_suspenders/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a64383054459aa7085d9090e2a37b833f05cc04340ececec3d2ee71d57c7564b +size 11056 diff --git a/game/characters/hermione/clothes/accessory/wrestling_belt/0.webp b/game/characters/hermione/clothes/accessory/wrestling_belt/0.webp new file mode 100644 index 00000000..4a7a5735 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/wrestling_belt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f33935e16ca9009af01d9d3b1dc272c5159ba3f79b39111efa068d09f1096c43 +size 5174 diff --git a/game/characters/hermione/clothes/accessory/wrestling_belt/1.webp b/game/characters/hermione/clothes/accessory/wrestling_belt/1.webp new file mode 100644 index 00000000..1829afc2 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/wrestling_belt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1656e625fcd79155c9a921a49c1ed796d50eac966fb4ebabd49ad4081e6abf48 +size 3746 diff --git a/game/characters/hermione/clothes/accessory/wrestling_belt/outline.webp b/game/characters/hermione/clothes/accessory/wrestling_belt/outline.webp new file mode 100644 index 00000000..5a617179 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/wrestling_belt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69cbdf5618e82521bfe0ea3d9a5e791191f24f08e024399b95e1460c5116a55c +size 6724 diff --git a/game/characters/hermione/clothes/accessory/yen_belt/0.webp b/game/characters/hermione/clothes/accessory/yen_belt/0.webp new file mode 100644 index 00000000..7f6702b6 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_belt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:473f1d124cab9cb202d8c34d3e0b1dd60d737aa7cbefce871a7ddaa27722e677 +size 5434 diff --git a/game/characters/hermione/clothes/accessory/yen_belt/1.webp b/game/characters/hermione/clothes/accessory/yen_belt/1.webp new file mode 100644 index 00000000..c26be462 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_belt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b548bc5bde00c1a65837111445160e3f2574e08e25761de80f62d48f3680f7c +size 2430 diff --git a/game/characters/hermione/clothes/accessory/yen_belt/outline.webp b/game/characters/hermione/clothes/accessory/yen_belt/outline.webp new file mode 100644 index 00000000..57af2b8e --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_belt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:588c2b545e46163670d5198651814da05fa4c848222beaa8b988e8d7e8d4fbc5 +size 5448 diff --git a/game/characters/hermione/clothes/accessory/yen_corset/0.webp b/game/characters/hermione/clothes/accessory/yen_corset/0.webp new file mode 100644 index 00000000..1a24f692 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_corset/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:873ef8e4e256b8e9b47b32ceb7807e659c1fe742df6a5cf2e6a7d7a8fcac5c81 +size 8018 diff --git a/game/characters/hermione/clothes/accessory/yen_corset/1.webp b/game/characters/hermione/clothes/accessory/yen_corset/1.webp new file mode 100644 index 00000000..8babba84 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_corset/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da0267afe38cde014adaf52989283897435c7e68eb963ecbd0bb3ddbd148fd61 +size 2180 diff --git a/game/characters/hermione/clothes/accessory/yen_corset/outline.webp b/game/characters/hermione/clothes/accessory/yen_corset/outline.webp new file mode 100644 index 00000000..9a947601 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_corset/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16104314d3d996003de7a2b4816a0040b0c3e419ac972a1e80609c6ef2be0abf +size 15826 diff --git a/game/characters/hermione/clothes/accessory/yen_corset/overlay.webp b/game/characters/hermione/clothes/accessory/yen_corset/overlay.webp new file mode 100644 index 00000000..f7e35014 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_corset/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bf82000877972fdefa878ce85e39e3f883ea6674f592a26181c3201f35333e2 +size 3178 diff --git a/game/characters/hermione/clothes/accessory/yen_feathers/0.webp b/game/characters/hermione/clothes/accessory/yen_feathers/0.webp new file mode 100644 index 00000000..e60c5d6a --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_feathers/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0089e6863b415875adf341d8779b219a00131411d96da80da0d0aa9328e91f2c +size 22630 diff --git a/game/characters/hermione/clothes/accessory/yen_feathers/outline.webp b/game/characters/hermione/clothes/accessory/yen_feathers/outline.webp new file mode 100644 index 00000000..056e74fc --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_feathers/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e1c63e0ec68bc4822a6fdc11cddc24024cb38c8034604c3e2e50f3cfd71528a +size 33624 diff --git a/game/characters/hermione/clothes/accessory/yen_sash/0.webp b/game/characters/hermione/clothes/accessory/yen_sash/0.webp new file mode 100644 index 00000000..821f9a94 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_sash/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a465f07116e82220922246412ecc14ca9f92fd51407272f93d8a6438da2eb4dd +size 15582 diff --git a/game/characters/hermione/clothes/accessory/yen_sash/1.webp b/game/characters/hermione/clothes/accessory/yen_sash/1.webp new file mode 100644 index 00000000..4ad608a7 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_sash/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40f8941223530e2fcfc9586c5c2689d34d87cc3e787736d77bb8fd61b791fffd +size 11734 diff --git a/game/characters/hermione/clothes/accessory/yen_sash/outline.webp b/game/characters/hermione/clothes/accessory/yen_sash/outline.webp new file mode 100644 index 00000000..2ead9eb6 --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_sash/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:febef6ecc97a94b6d681ba3b6764f4354e1534e1c953318d42bcd511312e13ed +size 24742 diff --git a/game/characters/hermione/clothes/accessory/yen_scarf/0.webp b/game/characters/hermione/clothes/accessory/yen_scarf/0.webp new file mode 100644 index 00000000..12fde1df --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_scarf/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84529720fe635fff762f8b05daccd9227b0f6c12c3eab1c7ffb3d352a0c52436 +size 8306 diff --git a/game/characters/hermione/clothes/accessory/yen_scarf/outline.webp b/game/characters/hermione/clothes/accessory/yen_scarf/outline.webp new file mode 100644 index 00000000..6d78e18c --- /dev/null +++ b/game/characters/hermione/clothes/accessory/yen_scarf/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d6397de80b531ef18082ad7da2024cf5d16249a5c0ea4de75a7c502b4b7435b +size 8682 diff --git a/game/characters/hermione/clothes/bottom/bioshock_skirt/0.webp b/game/characters/hermione/clothes/bottom/bioshock_skirt/0.webp new file mode 100644 index 00000000..1960248a --- /dev/null +++ b/game/characters/hermione/clothes/bottom/bioshock_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aad269417819f441ab464ac7df4e5a187f7296abd033c3d7ecff1bde345e9c79 +size 20360 diff --git a/game/characters/hermione/clothes/bottom/bioshock_skirt/outline.webp b/game/characters/hermione/clothes/bottom/bioshock_skirt/outline.webp new file mode 100644 index 00000000..cd89b594 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/bioshock_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a62fa97345656f9b657ebbe48bfae8b81f7ebc78568e1455d4da6d9955b4349d +size 11586 diff --git a/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/0.webp b/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/0.webp new file mode 100644 index 00000000..76a71569 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35c306fa30192ea472218e49b99991654b1f27c9428708b9e9ff6412c2b8cfcd +size 8554 diff --git a/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/1.webp b/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/1.webp new file mode 100644 index 00000000..a815283e --- /dev/null +++ b/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b88e351d061c3fd363726ad3c5a1b2a356ab6cdae17d175a433227f11623c20 +size 9270 diff --git a/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/2.webp b/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/2.webp new file mode 100644 index 00000000..256fa0b3 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b07e77577713cdd03a0fb78b22978e227abeea0cd081cd88cc2f06b2f9bb080 +size 5040 diff --git a/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/outline.webp b/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/outline.webp new file mode 100644 index 00000000..ca645027 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a2a88685ac5ff8aa463758e430f47324b1e9832a23b4f7d2a2ef402c3ef071c +size 18910 diff --git a/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/skin.webp b/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/skin.webp new file mode 100644 index 00000000..eefdd8ad --- /dev/null +++ b/game/characters/hermione/clothes/bottom/cheerleader_skirt_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:715ea99be051b4341c0f74881588ebfb592f5becc201d6dc8f65f71bbe2f4915 +size 2644 diff --git a/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/0.webp b/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/0.webp new file mode 100644 index 00000000..f8d69f49 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0055d607aeb93dbdd5e8abce7da2e02d1dd59e63c43ebebff220b91e62bc7fd +size 8152 diff --git a/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/1.webp b/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/1.webp new file mode 100644 index 00000000..6358b561 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ff6348972607661f0bcaa2a7101e2c0636e01e2b856346670d8bbb2373585b4 +size 10908 diff --git a/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/2.webp b/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/2.webp new file mode 100644 index 00000000..b3f82b45 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cdca17801f73a6614ee4937766a5280a13fe68ab925f8fbf2f1213fe93adc129 +size 5358 diff --git a/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/outline.webp b/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/outline.webp new file mode 100644 index 00000000..63ed9422 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d3112ff4f943534af70f6763fe455e027708266bcd9e9de8e40313fde28388d +size 17016 diff --git a/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/skin.webp b/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/skin.webp new file mode 100644 index 00000000..d9d7a70e --- /dev/null +++ b/game/characters/hermione/clothes/bottom/cheerleader_skirt_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ce344a5ab7ad2e4f0ad8c2d8a77b82a822a76b90c18bb9d1e53529e659708a6 +size 2818 diff --git a/game/characters/hermione/clothes/bottom/croft_shorts/0.webp b/game/characters/hermione/clothes/bottom/croft_shorts/0.webp new file mode 100644 index 00000000..4bec65c3 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/croft_shorts/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f53baf08e51d4a5eb5f086011003a17d022406b8ac147f232f83510b04ba310a +size 9764 diff --git a/game/characters/hermione/clothes/bottom/croft_shorts/1.webp b/game/characters/hermione/clothes/bottom/croft_shorts/1.webp new file mode 100644 index 00000000..32523de5 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/croft_shorts/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a49b922df97295dd63fb93cae10f37cd5cb79726225cb1efe492f9d54987d5b +size 4102 diff --git a/game/characters/hermione/clothes/bottom/croft_shorts/2.webp b/game/characters/hermione/clothes/bottom/croft_shorts/2.webp new file mode 100644 index 00000000..9be3e8ab --- /dev/null +++ b/game/characters/hermione/clothes/bottom/croft_shorts/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6341301f11597d6028eba79a01d07ba486946c6ff88432db10fbbd79c729958 +size 1276 diff --git a/game/characters/hermione/clothes/bottom/croft_shorts/outline.webp b/game/characters/hermione/clothes/bottom/croft_shorts/outline.webp new file mode 100644 index 00000000..bb7a18bb --- /dev/null +++ b/game/characters/hermione/clothes/bottom/croft_shorts/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfaa7b9b9cd49c47ff7ad4ffe84f3c29c0b28c2b4b20efd516e5979cea8d769a +size 12680 diff --git a/game/characters/hermione/clothes/bottom/egypt_loincloth/0.webp b/game/characters/hermione/clothes/bottom/egypt_loincloth/0.webp new file mode 100644 index 00000000..647b23ba --- /dev/null +++ b/game/characters/hermione/clothes/bottom/egypt_loincloth/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:178139d62001feb6f4e3ca45126df8918df47feddc91d69ab96595e1a4df3bce +size 8448 diff --git a/game/characters/hermione/clothes/bottom/egypt_loincloth/1.webp b/game/characters/hermione/clothes/bottom/egypt_loincloth/1.webp new file mode 100644 index 00000000..5274d706 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/egypt_loincloth/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dacc521ffd2787b189ea84441d9a7b5ee2c8f7c712f83ef200256ff1d4cae00f +size 5594 diff --git a/game/characters/hermione/clothes/bottom/egypt_loincloth/2.webp b/game/characters/hermione/clothes/bottom/egypt_loincloth/2.webp new file mode 100644 index 00000000..9877a562 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/egypt_loincloth/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c1a4699a8add234e6674b2bb5d4e2903a1e4b5f8e893fd951fe08c0cc9bfc35 +size 2056 diff --git a/game/characters/hermione/clothes/bottom/egypt_loincloth/extra.webp b/game/characters/hermione/clothes/bottom/egypt_loincloth/extra.webp new file mode 100644 index 00000000..162c28ef --- /dev/null +++ b/game/characters/hermione/clothes/bottom/egypt_loincloth/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:273da581a34aa9da11bc80a22ecb43ddc1fdf8c2deda91747f68952732616e1d +size 2428 diff --git a/game/characters/hermione/clothes/bottom/egypt_loincloth/outline.webp b/game/characters/hermione/clothes/bottom/egypt_loincloth/outline.webp new file mode 100644 index 00000000..9151b859 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/egypt_loincloth/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:351fa80ed61bf0f90bee7465e17a2c3a429c727e6bc3ca5086482a282f95a4a9 +size 14380 diff --git a/game/characters/hermione/clothes/bottom/jeans_1/0.webp b/game/characters/hermione/clothes/bottom/jeans_1/0.webp new file mode 100644 index 00000000..a8458037 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/jeans_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8384525623ab179bf3f5b56c10cb317f629955905a59939da8fb9786ac87cdff +size 15280 diff --git a/game/characters/hermione/clothes/bottom/jeans_1/1.webp b/game/characters/hermione/clothes/bottom/jeans_1/1.webp new file mode 100644 index 00000000..ac88c6b7 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/jeans_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c282bdce6f99502581814a0574c5410c94f22c352c5ef484371900ba20da7fb5 +size 3770 diff --git a/game/characters/hermione/clothes/bottom/jeans_1/2.webp b/game/characters/hermione/clothes/bottom/jeans_1/2.webp new file mode 100644 index 00000000..06a5113c --- /dev/null +++ b/game/characters/hermione/clothes/bottom/jeans_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba638fc0c591594fc94b9ebfedb328fe5f3097292b8505570f6d86508178ad12 +size 2138 diff --git a/game/characters/hermione/clothes/bottom/jeans_1/extra.webp b/game/characters/hermione/clothes/bottom/jeans_1/extra.webp new file mode 100644 index 00000000..e881747c --- /dev/null +++ b/game/characters/hermione/clothes/bottom/jeans_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e46993338c8c799d43bad8a5b95a623c3b8cea7aca1ac58130d02deea4a652de +size 2646 diff --git a/game/characters/hermione/clothes/bottom/jeans_1/outline.webp b/game/characters/hermione/clothes/bottom/jeans_1/outline.webp new file mode 100644 index 00000000..b1d893d6 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/jeans_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0af2980abd29322a1b95e8c516728129e4a2a6b87be50b802590e382b3f04953 +size 12360 diff --git a/game/characters/hermione/clothes/bottom/open_skirt_1/0.webp b/game/characters/hermione/clothes/bottom/open_skirt_1/0.webp new file mode 100644 index 00000000..d33b4948 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/open_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7890b9bc00ccb479c6e51d579aaf9d50b09a2ff1be7123a3a9d4a398e1f133b1 +size 21942 diff --git a/game/characters/hermione/clothes/bottom/open_skirt_1/mask.webp b/game/characters/hermione/clothes/bottom/open_skirt_1/mask.webp new file mode 100644 index 00000000..2cddc943 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/open_skirt_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad3f871a19a4b796c3298b2bdcb8f722c8e49fa9dcb22b1395311c955cde68e9 +size 6422 diff --git a/game/characters/hermione/clothes/bottom/open_skirt_1/outline.webp b/game/characters/hermione/clothes/bottom/open_skirt_1/outline.webp new file mode 100644 index 00000000..448970cd --- /dev/null +++ b/game/characters/hermione/clothes/bottom/open_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c35841eee27458f6cf9027466f499062f250a5a5ef79ace6c28fc58bd89a1ea +size 21830 diff --git a/game/characters/hermione/clothes/bottom/pajama_1/0.webp b/game/characters/hermione/clothes/bottom/pajama_1/0.webp new file mode 100644 index 00000000..cebaa417 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/pajama_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db1cfe103a7a993c3a4663480f8f64a48d5541bb67e45b7677891d87d3480368 +size 7086 diff --git a/game/characters/hermione/clothes/bottom/pajama_1/1.webp b/game/characters/hermione/clothes/bottom/pajama_1/1.webp new file mode 100644 index 00000000..1948a82c --- /dev/null +++ b/game/characters/hermione/clothes/bottom/pajama_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da2cd65827867f37b5cfb6296c1d7763d3e4e0728799f68203c84069efab890a +size 18656 diff --git a/game/characters/hermione/clothes/bottom/pajama_1/2.webp b/game/characters/hermione/clothes/bottom/pajama_1/2.webp new file mode 100644 index 00000000..f73e3ec9 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/pajama_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f8386df0666d380f9b2254c128d3ac72ceb9fe1e74aec8651e63a70fbdddfac +size 20490 diff --git a/game/characters/hermione/clothes/bottom/pajama_1/outline.webp b/game/characters/hermione/clothes/bottom/pajama_1/outline.webp new file mode 100644 index 00000000..5d215cd4 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/pajama_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:069fb1371f48c47dc70f6bcd3d84f080d91c2b22b4682745f0ca14c423ad90e8 +size 11744 diff --git a/game/characters/hermione/clothes/bottom/pajama_2/0.webp b/game/characters/hermione/clothes/bottom/pajama_2/0.webp new file mode 100644 index 00000000..cebaa417 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/pajama_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db1cfe103a7a993c3a4663480f8f64a48d5541bb67e45b7677891d87d3480368 +size 7086 diff --git a/game/characters/hermione/clothes/bottom/pajama_2/1.webp b/game/characters/hermione/clothes/bottom/pajama_2/1.webp new file mode 100644 index 00000000..d4580061 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/pajama_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36244c9cc6fa38206d36f9e1753c906e10885dd8e143f6268b774eaa1262d3c1 +size 4032 diff --git a/game/characters/hermione/clothes/bottom/pajama_2/outline.webp b/game/characters/hermione/clothes/bottom/pajama_2/outline.webp new file mode 100644 index 00000000..5d215cd4 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/pajama_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:069fb1371f48c47dc70f6bcd3d84f080d91c2b22b4682745f0ca14c423ad90e8 +size 11744 diff --git a/game/characters/hermione/clothes/bottom/pizza_skirt/0.webp b/game/characters/hermione/clothes/bottom/pizza_skirt/0.webp new file mode 100644 index 00000000..25d9c879 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/pizza_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4b20857cc7eed23cebbdf790e238e39b150bbbeeae73ef1361f0734f7a0653a +size 5640 diff --git a/game/characters/hermione/clothes/bottom/pizza_skirt/1.webp b/game/characters/hermione/clothes/bottom/pizza_skirt/1.webp new file mode 100644 index 00000000..c5264b06 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/pizza_skirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83d1d57825b8c0c6ad788db9428fe919b673ec1015fac06631f5bfe2b6819377 +size 5228 diff --git a/game/characters/hermione/clothes/bottom/pizza_skirt/outline.webp b/game/characters/hermione/clothes/bottom/pizza_skirt/outline.webp new file mode 100644 index 00000000..26eeaedd --- /dev/null +++ b/game/characters/hermione/clothes/bottom/pizza_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51fca9e27df37194593131de82ace7c3186f12c4c2fc606982772449b1840c02 +size 6184 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_1/0.webp b/game/characters/hermione/clothes/bottom/school_skirt_1/0.webp new file mode 100644 index 00000000..0fbe61c2 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6f64c357fafb90caa90d21435284c052bec9857f24f729d22beb0d2bfb26748 +size 20230 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_1/1.webp b/game/characters/hermione/clothes/bottom/school_skirt_1/1.webp new file mode 100644 index 00000000..bee92413 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8caa882c56d1f0874189ffffd0c5c09398c97aea6a1ac2f4b220ac69b931a64 +size 1346 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/0.webp b/game/characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/0.webp new file mode 100644 index 00000000..26de0632 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38dd648dc8b017e9fd63721642dbaccab2c6b3a0cfc433b236ad6c239e8638e1 +size 23294 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/1.webp b/game/characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/1.webp new file mode 100644 index 00000000..79cd69d3 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0e25aa57c3ac192ec0a756671fbd2e99651a8b037727c02df4a9aa557c00d6c +size 1294 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/outline.webp b/game/characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/outline.webp new file mode 100644 index 00000000..e560b8eb --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fceef7d230a566b28b3b14232bdcd0f233fe10a3aaf5356c923b13ac7f39288f +size 13028 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/skin.webp b/game/characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/skin.webp new file mode 100644 index 00000000..4dfa5f08 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd14d5395d776d419232e71f0c1a0adb83e8be3809d21a3bd5cfbee432623fb1 +size 5372 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_1/mask.webp b/game/characters/hermione/clothes/bottom/school_skirt_1/mask.webp new file mode 100644 index 00000000..ebd68160 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8dba73fe812415265f559f9e67290ee900d3ca0953d507b7b5c2f1575f90429 +size 4890 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_1/outline.webp b/game/characters/hermione/clothes/bottom/school_skirt_1/outline.webp new file mode 100644 index 00000000..819a1f93 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11adbacbd53882ecec9800aa9c00bcbf62b99b61b95a95577a1db1b00c151ca0 +size 23142 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_2/0.webp b/game/characters/hermione/clothes/bottom/school_skirt_2/0.webp new file mode 100644 index 00000000..8416b16a --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:048af70785f2d453a035f74a08697ef2446643476caa0b40052517276a2e5e13 +size 14542 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_2/1.webp b/game/characters/hermione/clothes/bottom/school_skirt_2/1.webp new file mode 100644 index 00000000..bee92413 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8caa882c56d1f0874189ffffd0c5c09398c97aea6a1ac2f4b220ac69b931a64 +size 1346 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/0.webp b/game/characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/0.webp new file mode 100644 index 00000000..b02b2579 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8ad4fea69d442854001d9afbe50efef5ad9b9c92843dd9bb008b975a4da03d8 +size 36904 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/1.webp b/game/characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/1.webp new file mode 100644 index 00000000..065c86db --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a75e96312b1e5bce50350e60cf57a90a41ae58563c183672570f128bc53475e +size 2702 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/outline.webp b/game/characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/outline.webp new file mode 100644 index 00000000..34e75645 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7802731489daafe1e62a373535e8db8cd1ef5a29f43cf601c0c781be6c884235 +size 25992 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/skin.webp b/game/characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/skin.webp new file mode 100644 index 00000000..a897a6df --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfa4117de502651079b0586bc8637a8e96af191cc8e706d04c3cf2f5ca84947b +size 4580 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_2/mask.webp b/game/characters/hermione/clothes/bottom/school_skirt_2/mask.webp new file mode 100644 index 00000000..c74c693d --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_2/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:829218579e7644c2d0ed63a1c72bbe200d0482e4e34853ca4d46acd100abd6d2 +size 3598 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_2/outline.webp b/game/characters/hermione/clothes/bottom/school_skirt_2/outline.webp new file mode 100644 index 00000000..124764f7 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cea2a164dd9b6e68cf46e648091b697df00aab442fb9b1a0d7be17e2f9c62ed2 +size 15998 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_3/0.webp b/game/characters/hermione/clothes/bottom/school_skirt_3/0.webp new file mode 100644 index 00000000..ff512f42 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d9856275df137dd4fcddca51789531cd2cfff1ba4e82905ae890c365a0df74c +size 10836 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_3/1.webp b/game/characters/hermione/clothes/bottom/school_skirt_3/1.webp new file mode 100644 index 00000000..bee92413 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8caa882c56d1f0874189ffffd0c5c09398c97aea6a1ac2f4b220ac69b931a64 +size 1346 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/0.webp b/game/characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/0.webp new file mode 100644 index 00000000..b02b2579 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8ad4fea69d442854001d9afbe50efef5ad9b9c92843dd9bb008b975a4da03d8 +size 36904 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/1.webp b/game/characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/1.webp new file mode 100644 index 00000000..065c86db --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a75e96312b1e5bce50350e60cf57a90a41ae58563c183672570f128bc53475e +size 2702 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/outline.webp b/game/characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/outline.webp new file mode 100644 index 00000000..34e75645 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7802731489daafe1e62a373535e8db8cd1ef5a29f43cf601c0c781be6c884235 +size 25992 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/skin.webp b/game/characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/skin.webp new file mode 100644 index 00000000..a897a6df --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfa4117de502651079b0586bc8637a8e96af191cc8e706d04c3cf2f5ca84947b +size 4580 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_3/mask.webp b/game/characters/hermione/clothes/bottom/school_skirt_3/mask.webp new file mode 100644 index 00000000..ce1fbb60 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_3/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a4f82b3c53b2c01dbb1acdfce57593afc963e03f8a1af627514efd80b1856c9 +size 2790 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_3/outline.webp b/game/characters/hermione/clothes/bottom/school_skirt_3/outline.webp new file mode 100644 index 00000000..a46a32e8 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:954ad696d641909d2c0aae757380ec56b449e24b39cb2ae1dbc5b59ec99d7f3b +size 11094 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_4/0.webp b/game/characters/hermione/clothes/bottom/school_skirt_4/0.webp new file mode 100644 index 00000000..e8637cb6 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8caf56cae0d8abdd972c5fc3701cc1af26b31cf1acea447a7a1e6857c1e00c34 +size 8888 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_4/1.webp b/game/characters/hermione/clothes/bottom/school_skirt_4/1.webp new file mode 100644 index 00000000..bee92413 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8caa882c56d1f0874189ffffd0c5c09398c97aea6a1ac2f4b220ac69b931a64 +size 1346 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/0.webp b/game/characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/0.webp new file mode 100644 index 00000000..b02b2579 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8ad4fea69d442854001d9afbe50efef5ad9b9c92843dd9bb008b975a4da03d8 +size 36904 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/1.webp b/game/characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/1.webp new file mode 100644 index 00000000..065c86db --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a75e96312b1e5bce50350e60cf57a90a41ae58563c183672570f128bc53475e +size 2702 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/outline.webp b/game/characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/outline.webp new file mode 100644 index 00000000..34e75645 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7802731489daafe1e62a373535e8db8cd1ef5a29f43cf601c0c781be6c884235 +size 25992 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/skin.webp b/game/characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/skin.webp new file mode 100644 index 00000000..a897a6df --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfa4117de502651079b0586bc8637a8e96af191cc8e706d04c3cf2f5ca84947b +size 4580 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_4/mask.webp b/game/characters/hermione/clothes/bottom/school_skirt_4/mask.webp new file mode 100644 index 00000000..76849707 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_4/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6cb8946d74fe5adf22cfeead35aad9b19639bab0a97b49ddd2ea6e2fc861809 +size 2412 diff --git a/game/characters/hermione/clothes/bottom/school_skirt_4/outline.webp b/game/characters/hermione/clothes/bottom/school_skirt_4/outline.webp new file mode 100644 index 00000000..ca12175d --- /dev/null +++ b/game/characters/hermione/clothes/bottom/school_skirt_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:559b529e89952f9484f16e1b08a9346a8c0cf86426af4aa5f95b410b625f6022 +size 8914 diff --git a/game/characters/hermione/clothes/bottom/tifa_skirt/0.webp b/game/characters/hermione/clothes/bottom/tifa_skirt/0.webp new file mode 100644 index 00000000..9a6a7f50 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/tifa_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:523d4b37356b89645b17ba78b94206cdc50b0bd3b6dc9926fdb7397c5d28e555 +size 8456 diff --git a/game/characters/hermione/clothes/bottom/tifa_skirt/outline.webp b/game/characters/hermione/clothes/bottom/tifa_skirt/outline.webp new file mode 100644 index 00000000..5415494b --- /dev/null +++ b/game/characters/hermione/clothes/bottom/tifa_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b08c7693e60412a6b1d3844462fe2404a34a79e7ba6cb2c360dd15266e39b2a4 +size 8044 diff --git a/game/characters/hermione/clothes/bottom/winter_skirt_1/0.webp b/game/characters/hermione/clothes/bottom/winter_skirt_1/0.webp new file mode 100644 index 00000000..0a945b72 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/winter_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:163625ddc0fa722171750a2fb7f9742b696a03f09975219810bed3aade64b638 +size 26964 diff --git a/game/characters/hermione/clothes/bottom/winter_skirt_1/outline.webp b/game/characters/hermione/clothes/bottom/winter_skirt_1/outline.webp new file mode 100644 index 00000000..d9f588ba --- /dev/null +++ b/game/characters/hermione/clothes/bottom/winter_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b14907fdea08496a13f3a66902f6ae2ed792ac36f87ffe9ea22336017e5f75cf +size 8738 diff --git a/game/characters/hermione/clothes/bottom/xmas/0.webp b/game/characters/hermione/clothes/bottom/xmas/0.webp new file mode 100644 index 00000000..f455d41f --- /dev/null +++ b/game/characters/hermione/clothes/bottom/xmas/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b81b9e6bb6103077a63ff406b9c133ccfe3d7d56703c536a85caa6092799c0c +size 5624 diff --git a/game/characters/hermione/clothes/bottom/xmas/1.webp b/game/characters/hermione/clothes/bottom/xmas/1.webp new file mode 100644 index 00000000..dd5d56b3 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/xmas/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ecf879e3992fa52bdf2849d912ca44c4052d80d53148bf21ba8434912a2cae4 +size 10644 diff --git a/game/characters/hermione/clothes/bottom/xmas/extra.webp b/game/characters/hermione/clothes/bottom/xmas/extra.webp new file mode 100644 index 00000000..a0627288 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/xmas/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:169aed5d8f89e8bba20c3095b03db034319837dd2ac2b5e72800b3c76f61c95b +size 5294 diff --git a/game/characters/hermione/clothes/bottom/xmas/outline.webp b/game/characters/hermione/clothes/bottom/xmas/outline.webp new file mode 100644 index 00000000..7ee377aa --- /dev/null +++ b/game/characters/hermione/clothes/bottom/xmas/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39759ed141090f5d44100fb1092d28f41f7f9495fad09547437697b1b1172105 +size 9386 diff --git a/game/characters/hermione/clothes/bottom/xmas/skin.webp b/game/characters/hermione/clothes/bottom/xmas/skin.webp new file mode 100644 index 00000000..b39dc863 --- /dev/null +++ b/game/characters/hermione/clothes/bottom/xmas/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59a353710efb961d72bdadb04a0c495ce4da7c77c70098ff98a2ef8d567f647e +size 3094 diff --git a/game/characters/hermione/clothes/bottom/yen_skirt/0.webp b/game/characters/hermione/clothes/bottom/yen_skirt/0.webp new file mode 100644 index 00000000..d1c9a74d --- /dev/null +++ b/game/characters/hermione/clothes/bottom/yen_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a8546a44fee1825f3220e829fb67d5f1c768ab02c2551849330476560c8aba5 +size 7772 diff --git a/game/characters/hermione/clothes/bottom/yen_skirt/outline.webp b/game/characters/hermione/clothes/bottom/yen_skirt/outline.webp new file mode 100644 index 00000000..b1101e5c --- /dev/null +++ b/game/characters/hermione/clothes/bottom/yen_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06682cabf37646f0d3e8b3cb8921ace4e542d1878fa3eb68f898410c3753e7e3 +size 6394 diff --git a/game/characters/hermione/clothes/bra/bandaids/0.webp b/game/characters/hermione/clothes/bra/bandaids/0.webp new file mode 100644 index 00000000..de016487 --- /dev/null +++ b/game/characters/hermione/clothes/bra/bandaids/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afb0bf4eec35833d327442360d2633fb294323051b4b3c578f77802067d3af6a +size 2796 diff --git a/game/characters/hermione/clothes/bra/bandaids/outline.webp b/game/characters/hermione/clothes/bra/bandaids/outline.webp new file mode 100644 index 00000000..9e3b161b --- /dev/null +++ b/game/characters/hermione/clothes/bra/bandaids/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3c4a7108261820df39cf2053a1480408cccc9b7375615711b523900ca2390b6 +size 3516 diff --git a/game/characters/hermione/clothes/bra/basic_bra_1/0.webp b/game/characters/hermione/clothes/bra/basic_bra_1/0.webp new file mode 100644 index 00000000..98e3a40a --- /dev/null +++ b/game/characters/hermione/clothes/bra/basic_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be77311107d0ec496151ecb85a585dc5e3f66503894b742d6049d5009c3b56ce +size 7752 diff --git a/game/characters/hermione/clothes/bra/basic_bra_1/1.webp b/game/characters/hermione/clothes/bra/basic_bra_1/1.webp new file mode 100644 index 00000000..df687470 --- /dev/null +++ b/game/characters/hermione/clothes/bra/basic_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6a0219d8f3b7bbf268e1568c908086328e6e17f5f940531e9df83b3db8522fb +size 1382 diff --git a/game/characters/hermione/clothes/bra/basic_bra_1/mask.webp b/game/characters/hermione/clothes/bra/basic_bra_1/mask.webp new file mode 100644 index 00000000..1908b63e --- /dev/null +++ b/game/characters/hermione/clothes/bra/basic_bra_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d29fa9add74cf3a8feda25954d3ff2c6e109a53c80ce338f67372e1b04a7351 +size 1662 diff --git a/game/characters/hermione/clothes/bra/basic_bra_1/outline.webp b/game/characters/hermione/clothes/bra/basic_bra_1/outline.webp new file mode 100644 index 00000000..d8a62ac4 --- /dev/null +++ b/game/characters/hermione/clothes/bra/basic_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc77e35f9db7bf35ea99e1bd3462029268a443a01c4d19623621c8014743af04 +size 9482 diff --git a/game/characters/hermione/clothes/bra/basic_bra_1/skin.webp b/game/characters/hermione/clothes/bra/basic_bra_1/skin.webp new file mode 100644 index 00000000..53d94c35 --- /dev/null +++ b/game/characters/hermione/clothes/bra/basic_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48e18a03797cdfe3d8161737dba474d164272bf06c4169358075e38d7259cc2c +size 4442 diff --git a/game/characters/hermione/clothes/bra/bikini_bra_1/0.webp b/game/characters/hermione/clothes/bra/bikini_bra_1/0.webp new file mode 100644 index 00000000..91ef021e --- /dev/null +++ b/game/characters/hermione/clothes/bra/bikini_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df8091465398796c77198370ec76c7aa0c953937d2a6036d84ad592f789c0a10 +size 2716 diff --git a/game/characters/hermione/clothes/bra/bikini_bra_1/1.webp b/game/characters/hermione/clothes/bra/bikini_bra_1/1.webp new file mode 100644 index 00000000..40ecd3c6 --- /dev/null +++ b/game/characters/hermione/clothes/bra/bikini_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:179d61b0b33beb8e88e7950a85fac6a614d5d5e00703fc577daebe40b9d84139 +size 2174 diff --git a/game/characters/hermione/clothes/bra/bikini_bra_1/extra.webp b/game/characters/hermione/clothes/bra/bikini_bra_1/extra.webp new file mode 100644 index 00000000..50c5e58d --- /dev/null +++ b/game/characters/hermione/clothes/bra/bikini_bra_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60b7791f4655785831d9912744e7863f81986561eabbae8af393ec6608b7fa5a +size 1268 diff --git a/game/characters/hermione/clothes/bra/bikini_bra_1/outline.webp b/game/characters/hermione/clothes/bra/bikini_bra_1/outline.webp new file mode 100644 index 00000000..74868c77 --- /dev/null +++ b/game/characters/hermione/clothes/bra/bikini_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b5d223297e5d80f69a70508834ffc57a76c621748402b57d8943fb807935d6d +size 5692 diff --git a/game/characters/hermione/clothes/bra/bikini_bra_2/0.webp b/game/characters/hermione/clothes/bra/bikini_bra_2/0.webp new file mode 100644 index 00000000..f1c7ae4b --- /dev/null +++ b/game/characters/hermione/clothes/bra/bikini_bra_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9b420fd7426ec1d2fb3b9f5ce4de981432e70ce7b4a95696d571b6c26b65821 +size 4810 diff --git a/game/characters/hermione/clothes/bra/bikini_bra_2/1.webp b/game/characters/hermione/clothes/bra/bikini_bra_2/1.webp new file mode 100644 index 00000000..295f50e5 --- /dev/null +++ b/game/characters/hermione/clothes/bra/bikini_bra_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9ad6fea74c1c56dcdfca1d7c7bb8f694932df2dac260518beefd5bd0a23cbc5 +size 4004 diff --git a/game/characters/hermione/clothes/bra/bikini_bra_2/extra.webp b/game/characters/hermione/clothes/bra/bikini_bra_2/extra.webp new file mode 100644 index 00000000..778a129e --- /dev/null +++ b/game/characters/hermione/clothes/bra/bikini_bra_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b47307e4b4b684cbd6a2a05f283f31c1023455098885b0e2f188cdd3edfe9fe +size 1730 diff --git a/game/characters/hermione/clothes/bra/bikini_bra_2/outline.webp b/game/characters/hermione/clothes/bra/bikini_bra_2/outline.webp new file mode 100644 index 00000000..eee33aad --- /dev/null +++ b/game/characters/hermione/clothes/bra/bikini_bra_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42673925fb769421c0808c2fe87096b7eb2d0420a37311434d4450283eb54403 +size 7334 diff --git a/game/characters/hermione/clothes/bra/bikini_bra_2/skin.webp b/game/characters/hermione/clothes/bra/bikini_bra_2/skin.webp new file mode 100644 index 00000000..867c3e61 --- /dev/null +++ b/game/characters/hermione/clothes/bra/bikini_bra_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a494624a103e55a3a0fe850e3fbb1547aedd8054c310b7f73b8186593f9d4138 +size 4080 diff --git a/game/characters/hermione/clothes/bra/hslut_pasties/0.webp b/game/characters/hermione/clothes/bra/hslut_pasties/0.webp new file mode 100644 index 00000000..d61f8caf --- /dev/null +++ b/game/characters/hermione/clothes/bra/hslut_pasties/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:578c445fbf04b79f96b68d5c6672436df207609ff7ba99fd13cd2d744026297b +size 4286 diff --git a/game/characters/hermione/clothes/bra/hslut_pasties/1.webp b/game/characters/hermione/clothes/bra/hslut_pasties/1.webp new file mode 100644 index 00000000..425d006f --- /dev/null +++ b/game/characters/hermione/clothes/bra/hslut_pasties/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81ca3d7c10c6d778ccd014d16cb36684d2fa1356ddba9233b3e1a5958ed15311 +size 5626 diff --git a/game/characters/hermione/clothes/bra/hslut_pasties/extra.webp b/game/characters/hermione/clothes/bra/hslut_pasties/extra.webp new file mode 100644 index 00000000..3dbeca9d --- /dev/null +++ b/game/characters/hermione/clothes/bra/hslut_pasties/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:127baebe09c50c3cacf5ca72d41904b574826bf392deea4815b538fc30780f4c +size 3806 diff --git a/game/characters/hermione/clothes/bra/hslut_pasties/outline.webp b/game/characters/hermione/clothes/bra/hslut_pasties/outline.webp new file mode 100644 index 00000000..b15ec5c4 --- /dev/null +++ b/game/characters/hermione/clothes/bra/hslut_pasties/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c4d88707c5c61e63a06592e3ee7631a0777eef199c4145fe22c591c67d940e3 +size 7336 diff --git a/game/characters/hermione/clothes/bra/poker_bra_1/0.webp b/game/characters/hermione/clothes/bra/poker_bra_1/0.webp new file mode 100644 index 00000000..944badcd --- /dev/null +++ b/game/characters/hermione/clothes/bra/poker_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72b3353ce59af0a7b7d16b1093b6e08a48b436ad97ee6b710367d53831fb2431 +size 11894 diff --git a/game/characters/hermione/clothes/bra/poker_bra_1/1.webp b/game/characters/hermione/clothes/bra/poker_bra_1/1.webp new file mode 100644 index 00000000..a70d3c5c --- /dev/null +++ b/game/characters/hermione/clothes/bra/poker_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78d2749c6562a93c1f4ae91ac55efcf771662ffc163a88e8d676cd4026b1ee8b +size 3652 diff --git a/game/characters/hermione/clothes/bra/poker_bra_1/2.webp b/game/characters/hermione/clothes/bra/poker_bra_1/2.webp new file mode 100644 index 00000000..250e6bfb --- /dev/null +++ b/game/characters/hermione/clothes/bra/poker_bra_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9224c642479b7557f35dd2548f08cb43978d947ba747a53e8e2c3c91310fbf03 +size 13466 diff --git a/game/characters/hermione/clothes/bra/poker_bra_1/3.webp b/game/characters/hermione/clothes/bra/poker_bra_1/3.webp new file mode 100644 index 00000000..a1f2a5cf --- /dev/null +++ b/game/characters/hermione/clothes/bra/poker_bra_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40410bd0f907330c0e19b4c279e5e60a192fac2363859e254ae6118f5e543b2e +size 2730 diff --git a/game/characters/hermione/clothes/bra/poker_bra_1/extra.webp b/game/characters/hermione/clothes/bra/poker_bra_1/extra.webp new file mode 100644 index 00000000..6dad7838 --- /dev/null +++ b/game/characters/hermione/clothes/bra/poker_bra_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:031e90f3fe85053455d4f304792036d19ab808a24220f389a524acb8db819491 +size 11040 diff --git a/game/characters/hermione/clothes/bra/poker_bra_1/outline.webp b/game/characters/hermione/clothes/bra/poker_bra_1/outline.webp new file mode 100644 index 00000000..31c47f5b --- /dev/null +++ b/game/characters/hermione/clothes/bra/poker_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7e7a9e3d5cea0d579137e7190b012227af200c9b2d13087765b74fbe0a95567 +size 14846 diff --git a/game/characters/hermione/clothes/bra/poker_bra_1/skin.webp b/game/characters/hermione/clothes/bra/poker_bra_1/skin.webp new file mode 100644 index 00000000..a4843d54 --- /dev/null +++ b/game/characters/hermione/clothes/bra/poker_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89cedc2dda6773d831e6acba78e01d0b5f1f17ac20648fd3a5dc3c87cb6411bd +size 23758 diff --git a/game/characters/hermione/clothes/bra/ribbon/0.webp b/game/characters/hermione/clothes/bra/ribbon/0.webp new file mode 100644 index 00000000..1d377139 --- /dev/null +++ b/game/characters/hermione/clothes/bra/ribbon/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2749d4db0d9e0081720054315c5ba03e59e57722a0923f9cba81297143f22116 +size 7410 diff --git a/game/characters/hermione/clothes/bra/ribbon/extra.webp b/game/characters/hermione/clothes/bra/ribbon/extra.webp new file mode 100644 index 00000000..3b85e353 --- /dev/null +++ b/game/characters/hermione/clothes/bra/ribbon/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec905c6bc463730ac7f980f70d01538220f26a31f079b4d759e15d107359536c +size 4330 diff --git a/game/characters/hermione/clothes/bra/ribbon/mask.webp b/game/characters/hermione/clothes/bra/ribbon/mask.webp new file mode 100644 index 00000000..e757d4d1 --- /dev/null +++ b/game/characters/hermione/clothes/bra/ribbon/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b09e81ea89211d66cc781dd5c6cc2e6a0b52d46af6258a0fe83fd2c1bfb7001 +size 1288 diff --git a/game/characters/hermione/clothes/bra/ribbon/outline.webp b/game/characters/hermione/clothes/bra/ribbon/outline.webp new file mode 100644 index 00000000..b3955058 --- /dev/null +++ b/game/characters/hermione/clothes/bra/ribbon/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca3f8661bfcd1e5fba3c620eb16ecf2f8e6fd13b8ae59964a9047adaa9763600 +size 8680 diff --git a/game/characters/hermione/clothes/bra/ribbon/skin.webp b/game/characters/hermione/clothes/bra/ribbon/skin.webp new file mode 100644 index 00000000..df35ab9d --- /dev/null +++ b/game/characters/hermione/clothes/bra/ribbon/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea2481bafa759465ebfe01a4572de15fdb507b45e382cc5fc1a51672e113d2c9 +size 15302 diff --git a/game/characters/hermione/clothes/bra/sling_bra/0.webp b/game/characters/hermione/clothes/bra/sling_bra/0.webp new file mode 100644 index 00000000..397aae49 --- /dev/null +++ b/game/characters/hermione/clothes/bra/sling_bra/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4242298c1d0a49335d71aca9b99313df79c377fcf6a7d0e00d2c007032a39ff2 +size 6278 diff --git a/game/characters/hermione/clothes/bra/sling_bra/1.webp b/game/characters/hermione/clothes/bra/sling_bra/1.webp new file mode 100644 index 00000000..08e2c64e --- /dev/null +++ b/game/characters/hermione/clothes/bra/sling_bra/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49bfa7bae2debf9a94d0e1d05a0d3c47d5b48b398b01cb9c19024ff2cb621844 +size 5940 diff --git a/game/characters/hermione/clothes/bra/sling_bra/extra.webp b/game/characters/hermione/clothes/bra/sling_bra/extra.webp new file mode 100644 index 00000000..7785fc2b --- /dev/null +++ b/game/characters/hermione/clothes/bra/sling_bra/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d8f0586c1eb004d81cf051a3e5a1d7781fe5b469bf7b33c7bf31cf77e0b1276 +size 2730 diff --git a/game/characters/hermione/clothes/bra/sling_bra/outline.webp b/game/characters/hermione/clothes/bra/sling_bra/outline.webp new file mode 100644 index 00000000..2eda1fde --- /dev/null +++ b/game/characters/hermione/clothes/bra/sling_bra/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edb6da6fac3f1d3740f3d378f70c7d69c37116b61239765d100b81d707a48fe6 +size 8278 diff --git a/game/characters/hermione/clothes/bra/sling_bra/skin.webp b/game/characters/hermione/clothes/bra/sling_bra/skin.webp new file mode 100644 index 00000000..69801e5e --- /dev/null +++ b/game/characters/hermione/clothes/bra/sling_bra/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8955eeb72cf03ed45a5828675cfb18952ca1e9dbd4b958225b437f8595c99ff +size 5312 diff --git a/game/characters/hermione/clothes/bra/sports_bra/0.webp b/game/characters/hermione/clothes/bra/sports_bra/0.webp new file mode 100644 index 00000000..cacd7b6a --- /dev/null +++ b/game/characters/hermione/clothes/bra/sports_bra/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a6e5fae53b02ecd054dc88bc430a4377a4f1332743dd8f053b8b957f72cd89a +size 6754 diff --git a/game/characters/hermione/clothes/bra/sports_bra/1.webp b/game/characters/hermione/clothes/bra/sports_bra/1.webp new file mode 100644 index 00000000..01c7156b --- /dev/null +++ b/game/characters/hermione/clothes/bra/sports_bra/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4d3c07e0091688f60647b3f87084788521a36010d15954d1cecb9f2e267142c +size 1178 diff --git a/game/characters/hermione/clothes/bra/sports_bra/outline.webp b/game/characters/hermione/clothes/bra/sports_bra/outline.webp new file mode 100644 index 00000000..a5d60893 --- /dev/null +++ b/game/characters/hermione/clothes/bra/sports_bra/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbf2daf23c26a0654c15de69817874175782b12a03235906bd5583db936013b0 +size 8630 diff --git a/game/characters/hermione/clothes/earrings/hslut_earring/0.webp b/game/characters/hermione/clothes/earrings/hslut_earring/0.webp new file mode 100644 index 00000000..ddafe926 --- /dev/null +++ b/game/characters/hermione/clothes/earrings/hslut_earring/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e8c6c2fd89a096553368652e2c4270e6ca89fb2b92f7ab757164abf341596be +size 1600 diff --git a/game/characters/hermione/clothes/earrings/hslut_earring/extra.webp b/game/characters/hermione/clothes/earrings/hslut_earring/extra.webp new file mode 100644 index 00000000..91659029 --- /dev/null +++ b/game/characters/hermione/clothes/earrings/hslut_earring/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28534b3d99cf328d265efee30fff91ceed6db04cde3377c4da6652c2f2b43d9a +size 1508 diff --git a/game/characters/hermione/clothes/earrings/hslut_earring/outline.webp b/game/characters/hermione/clothes/earrings/hslut_earring/outline.webp new file mode 100644 index 00000000..0f484af8 --- /dev/null +++ b/game/characters/hermione/clothes/earrings/hslut_earring/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4636f78f03bd978e74d210dcebe06c6f332011eb84b47e422fd256f0e62bc0df +size 1390 diff --git a/game/characters/hermione/clothes/earrings/pearl_1/0.webp b/game/characters/hermione/clothes/earrings/pearl_1/0.webp new file mode 100644 index 00000000..c716afa2 --- /dev/null +++ b/game/characters/hermione/clothes/earrings/pearl_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b447e1b11e6da5bb94885700edd4c31cd8d33555d8ec14607af4a7f64a2a4d6 +size 1204 diff --git a/game/characters/hermione/clothes/earrings/pearl_1/extra.webp b/game/characters/hermione/clothes/earrings/pearl_1/extra.webp new file mode 100644 index 00000000..5e2fd494 --- /dev/null +++ b/game/characters/hermione/clothes/earrings/pearl_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b86f202edb9f2bd0e68a84bdf19efbac1d57b25fdb4ccbe8254a48adc12acf6 +size 920 diff --git a/game/characters/hermione/clothes/earrings/pearl_1/outline.webp b/game/characters/hermione/clothes/earrings/pearl_1/outline.webp new file mode 100644 index 00000000..4db75fd9 --- /dev/null +++ b/game/characters/hermione/clothes/earrings/pearl_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d21198488feeb8c4a39ada742b78c77312438e99ab9ea8eb4bd5be6cac4f940 +size 1216 diff --git a/game/characters/hermione/clothes/earrings/poker_earring_1/0.webp b/game/characters/hermione/clothes/earrings/poker_earring_1/0.webp new file mode 100644 index 00000000..1896de23 --- /dev/null +++ b/game/characters/hermione/clothes/earrings/poker_earring_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b34bdae7a7722f6a3c523d84e0e45f8a0de9d994f019eb7c1337142ae9b06ca3 +size 1542 diff --git a/game/characters/hermione/clothes/earrings/poker_earring_1/extra.webp b/game/characters/hermione/clothes/earrings/poker_earring_1/extra.webp new file mode 100644 index 00000000..9fbd9956 --- /dev/null +++ b/game/characters/hermione/clothes/earrings/poker_earring_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6537d195f251534af67d0cbd3e4e479ba1c96ee8433e92faf428730913f17201 +size 670 diff --git a/game/characters/hermione/clothes/earrings/poker_earring_1/outline.webp b/game/characters/hermione/clothes/earrings/poker_earring_1/outline.webp new file mode 100644 index 00000000..7b20223d --- /dev/null +++ b/game/characters/hermione/clothes/earrings/poker_earring_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae659b9a2e7362bc906e5f1b9ae886d76eb75eae1692c87a940d6c68bf273d6d +size 984 diff --git a/game/characters/hermione/clothes/earrings/poker_earring_1/skin.webp b/game/characters/hermione/clothes/earrings/poker_earring_1/skin.webp new file mode 100644 index 00000000..7af68931 --- /dev/null +++ b/game/characters/hermione/clothes/earrings/poker_earring_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ee0940f2f1b99a8152a09c47b54b39018a4319571235e9b39641b084087a52e +size 692 diff --git a/game/characters/hermione/clothes/garterbelt/hslut_garter/0.webp b/game/characters/hermione/clothes/garterbelt/hslut_garter/0.webp new file mode 100644 index 00000000..d2baa1d4 --- /dev/null +++ b/game/characters/hermione/clothes/garterbelt/hslut_garter/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:500c96d7ed5facd93e6f637f71ed8008ea3c28c624c4662b33373ed36fb8e3ed +size 4824 diff --git a/game/characters/hermione/clothes/garterbelt/hslut_garter/1.webp b/game/characters/hermione/clothes/garterbelt/hslut_garter/1.webp new file mode 100644 index 00000000..896f353b --- /dev/null +++ b/game/characters/hermione/clothes/garterbelt/hslut_garter/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cac8cac0f8fe29d3354e6a30664497d5c57a01400f435196eb698262e646a687 +size 7270 diff --git a/game/characters/hermione/clothes/garterbelt/hslut_garter/extra.webp b/game/characters/hermione/clothes/garterbelt/hslut_garter/extra.webp new file mode 100644 index 00000000..7f593991 --- /dev/null +++ b/game/characters/hermione/clothes/garterbelt/hslut_garter/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca4b6099b971a4d574cb7230526f775577ae6a63a66b9c3a8cceb9a2a57e009c +size 3498 diff --git a/game/characters/hermione/clothes/garterbelt/hslut_garter/outline.webp b/game/characters/hermione/clothes/garterbelt/hslut_garter/outline.webp new file mode 100644 index 00000000..8c228a31 --- /dev/null +++ b/game/characters/hermione/clothes/garterbelt/hslut_garter/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b94e437140b11f91e4bd0a4417c2ff2018b08513c012ece982958f3e1f3bfb9 +size 7392 diff --git a/game/characters/hermione/clothes/glasses/reading_glasses/0.webp b/game/characters/hermione/clothes/glasses/reading_glasses/0.webp new file mode 100644 index 00000000..fc05f39d --- /dev/null +++ b/game/characters/hermione/clothes/glasses/reading_glasses/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d522cc9aad6f38305009f6a4c7aae3d7b052dbab6548a61c7e2167453659b17 +size 1806 diff --git a/game/characters/hermione/clothes/glasses/reading_glasses/outline.webp b/game/characters/hermione/clothes/glasses/reading_glasses/outline.webp new file mode 100644 index 00000000..4efe4afb --- /dev/null +++ b/game/characters/hermione/clothes/glasses/reading_glasses/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29a4395216143bc9f744a641ea793c8b7f15f655859013bd2fc471af149ed15d +size 2122 diff --git a/game/characters/hermione/clothes/glasses/vintage_glasses/0.webp b/game/characters/hermione/clothes/glasses/vintage_glasses/0.webp new file mode 100644 index 00000000..c366f630 --- /dev/null +++ b/game/characters/hermione/clothes/glasses/vintage_glasses/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6118bc0b94eab827c52a274d3dfc18436a82ef102bdde331da126fb77fa2a4ad +size 1686 diff --git a/game/characters/hermione/clothes/glasses/vintage_glasses/1.webp b/game/characters/hermione/clothes/glasses/vintage_glasses/1.webp new file mode 100644 index 00000000..5c377148 --- /dev/null +++ b/game/characters/hermione/clothes/glasses/vintage_glasses/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d07dd7f54f7b4532b535f896efcb01a27391de2a1bba45a022c196234600e70 +size 2706 diff --git a/game/characters/hermione/clothes/glasses/vintage_glasses/2.webp b/game/characters/hermione/clothes/glasses/vintage_glasses/2.webp new file mode 100644 index 00000000..84412517 --- /dev/null +++ b/game/characters/hermione/clothes/glasses/vintage_glasses/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a81895fa659638df4d3a889a21c96866b12f0dbde2f7147fc886416e0559a738 +size 868 diff --git a/game/characters/hermione/clothes/glasses/vintage_glasses/outline.webp b/game/characters/hermione/clothes/glasses/vintage_glasses/outline.webp new file mode 100644 index 00000000..72d8d146 --- /dev/null +++ b/game/characters/hermione/clothes/glasses/vintage_glasses/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f87d79b7f2d5e79c5f1b325453089145505c04e53324186e5198a52538dac614 +size 3070 diff --git a/game/characters/hermione/clothes/glasses/vintage_glasses/skin.webp b/game/characters/hermione/clothes/glasses/vintage_glasses/skin.webp new file mode 100644 index 00000000..b8075037 --- /dev/null +++ b/game/characters/hermione/clothes/glasses/vintage_glasses/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9e0c81a4da10ed0346097c1403555f58e456f693c8e5788fa390fcea48d05ad +size 3002 diff --git a/game/characters/hermione/clothes/gloves/bunny_gloves_1/0.webp b/game/characters/hermione/clothes/gloves/bunny_gloves_1/0.webp new file mode 100644 index 00000000..0d995167 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/bunny_gloves_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60f8c5249e379740735fac59922c53f36182e594a335e907edc91f2a4c1a9c8d +size 5448 diff --git a/game/characters/hermione/clothes/gloves/bunny_gloves_1/outline.webp b/game/characters/hermione/clothes/gloves/bunny_gloves_1/outline.webp new file mode 100644 index 00000000..680ae570 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/bunny_gloves_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6533e4ccb3c78bcdbcc03928b6dd72820bdc64f442954f3efeab1563368f862 +size 4022 diff --git a/game/characters/hermione/clothes/gloves/cat_arms/0.webp b/game/characters/hermione/clothes/gloves/cat_arms/0.webp new file mode 100644 index 00000000..9e55651a --- /dev/null +++ b/game/characters/hermione/clothes/gloves/cat_arms/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9eafed2ee56dd85d766582b851ac76c09a39e7e313b968114c6592013019434 +size 36486 diff --git a/game/characters/hermione/clothes/gloves/cat_arms/1.webp b/game/characters/hermione/clothes/gloves/cat_arms/1.webp new file mode 100644 index 00000000..6445bb3e --- /dev/null +++ b/game/characters/hermione/clothes/gloves/cat_arms/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71020abb34e72b4816e077abb88b5981c7470d3e7c18e9467c8843cff29a34f8 +size 1330 diff --git a/game/characters/hermione/clothes/gloves/cat_arms/2.webp b/game/characters/hermione/clothes/gloves/cat_arms/2.webp new file mode 100644 index 00000000..56b899d8 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/cat_arms/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72764fa278663c86cbea373254868472a00852ffe780dcc8e62d0bb13b24afe6 +size 1180 diff --git a/game/characters/hermione/clothes/gloves/cat_arms/outline.webp b/game/characters/hermione/clothes/gloves/cat_arms/outline.webp new file mode 100644 index 00000000..e7f94e13 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/cat_arms/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16b984930306e254bcc9e613b1cb45ef89a23e01f341f6980125bea951dd954f +size 12046 diff --git a/game/characters/hermione/clothes/gloves/cheerleader_armband/0.webp b/game/characters/hermione/clothes/gloves/cheerleader_armband/0.webp new file mode 100644 index 00000000..ca79b532 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/cheerleader_armband/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cba5990c3f1d3510ca497cb05bb1e2b7844b4f5551e935c4e6dcb8c8a7a24e6a +size 3528 diff --git a/game/characters/hermione/clothes/gloves/cheerleader_armband/1.webp b/game/characters/hermione/clothes/gloves/cheerleader_armband/1.webp new file mode 100644 index 00000000..ba4dcfb4 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/cheerleader_armband/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df985d633004088870b8354d7899562dda1f9d1f3ff436110f3f65e7de21a697 +size 1700 diff --git a/game/characters/hermione/clothes/gloves/cheerleader_armband/outline.webp b/game/characters/hermione/clothes/gloves/cheerleader_armband/outline.webp new file mode 100644 index 00000000..1657b0de --- /dev/null +++ b/game/characters/hermione/clothes/gloves/cheerleader_armband/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d71aac9a3e31a12cce92f0e4abcf6b59c0aed37706334df62d7c8c472bea025 +size 3346 diff --git a/game/characters/hermione/clothes/gloves/egypt_armband/0.webp b/game/characters/hermione/clothes/gloves/egypt_armband/0.webp new file mode 100644 index 00000000..2ba1e24d --- /dev/null +++ b/game/characters/hermione/clothes/gloves/egypt_armband/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f7cfbe17c31f1572450821dd9291dcfd7a3e67d8ebd8ccda8002d2c29f0d4c6 +size 5688 diff --git a/game/characters/hermione/clothes/gloves/egypt_armband/extra.webp b/game/characters/hermione/clothes/gloves/egypt_armband/extra.webp new file mode 100644 index 00000000..48d4cb47 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/egypt_armband/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64022ed4ab36143f46769926e9fd3ca1750861043a91706af174a74c63a6aee3 +size 2274 diff --git a/game/characters/hermione/clothes/gloves/egypt_armband/outline.webp b/game/characters/hermione/clothes/gloves/egypt_armband/outline.webp new file mode 100644 index 00000000..e3c02cf6 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/egypt_armband/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d109c064f768a0b95882d1da643856aa9c9a4f3ebb63bb47f0de1203cc5b7051 +size 4826 diff --git a/game/characters/hermione/clothes/gloves/hslut_gloves/0.webp b/game/characters/hermione/clothes/gloves/hslut_gloves/0.webp new file mode 100644 index 00000000..628b5bf5 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/hslut_gloves/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f6d8e01d5b7d9e4251fa4658ebe1b4aa4de91850ef0dec08e19774f08f5da23 +size 7660 diff --git a/game/characters/hermione/clothes/gloves/hslut_gloves/outline.webp b/game/characters/hermione/clothes/gloves/hslut_gloves/outline.webp new file mode 100644 index 00000000..e3c08a4d --- /dev/null +++ b/game/characters/hermione/clothes/gloves/hslut_gloves/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8c740bd229e901149435ccdf2fa3dbc8f40ac7b712f80edf47e1094b374dee1 +size 14906 diff --git a/game/characters/hermione/clothes/gloves/latex_gloves/0.webp b/game/characters/hermione/clothes/gloves/latex_gloves/0.webp new file mode 100644 index 00000000..98267cce --- /dev/null +++ b/game/characters/hermione/clothes/gloves/latex_gloves/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b8b5edbed7fcf540ea481c0571ac4ed7956bb2e9c55933220d8a6488ee65b85 +size 13142 diff --git a/game/characters/hermione/clothes/gloves/latex_gloves/extra.webp b/game/characters/hermione/clothes/gloves/latex_gloves/extra.webp new file mode 100644 index 00000000..bb0daf61 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/latex_gloves/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:829afcd4e0814630da2bc02b7f87aab1bfbcf38168ae144002fb4ee628fc8610 +size 2670 diff --git a/game/characters/hermione/clothes/gloves/latex_gloves/outline.webp b/game/characters/hermione/clothes/gloves/latex_gloves/outline.webp new file mode 100644 index 00000000..4d186a19 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/latex_gloves/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fd814e2a91ce265490d92bd94922b64cb930d184a3f5e7194558dc71a5ea1f7 +size 9382 diff --git a/game/characters/hermione/clothes/gloves/maid_gloves_1/0.webp b/game/characters/hermione/clothes/gloves/maid_gloves_1/0.webp new file mode 100644 index 00000000..fd527ba5 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/maid_gloves_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:067be070fbbcb4a24df8b3f08ae13c8f4304c7eba4af276fb1a3e74d0280f59f +size 6402 diff --git a/game/characters/hermione/clothes/gloves/maid_gloves_1/1.webp b/game/characters/hermione/clothes/gloves/maid_gloves_1/1.webp new file mode 100644 index 00000000..039d8bb3 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/maid_gloves_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99919f4005179afaa09533317dd84fdca278481b825af5cc746dd868bb76f480 +size 9286 diff --git a/game/characters/hermione/clothes/gloves/maid_gloves_1/2.webp b/game/characters/hermione/clothes/gloves/maid_gloves_1/2.webp new file mode 100644 index 00000000..37e51c89 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/maid_gloves_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:124a4ec31502e6c5a73d32c7cbcd5ef7b1979a288eab5ad08a6ce7f9fef43f4b +size 1390 diff --git a/game/characters/hermione/clothes/gloves/maid_gloves_1/outline.webp b/game/characters/hermione/clothes/gloves/maid_gloves_1/outline.webp new file mode 100644 index 00000000..5c1b5a96 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/maid_gloves_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b3f25ae7a64ee51588cb8a51f5f8f8d596330e104618de76ed9635728942efa +size 15012 diff --git a/game/characters/hermione/clothes/gloves/msmarv_gloves/0.webp b/game/characters/hermione/clothes/gloves/msmarv_gloves/0.webp new file mode 100644 index 00000000..5f299863 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/msmarv_gloves/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a325213c6b952f28deef5165941bd88617ffc0ad9e7ebbbdde955c0c74d8c2d4 +size 14988 diff --git a/game/characters/hermione/clothes/gloves/msmarv_gloves/1.webp b/game/characters/hermione/clothes/gloves/msmarv_gloves/1.webp new file mode 100644 index 00000000..c14e5ad0 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/msmarv_gloves/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:095fa6c08c2b13d9ed2cf006526ce93c1a272333490a5613c55ca4122b2bddef +size 13380 diff --git a/game/characters/hermione/clothes/gloves/msmarv_gloves/outline.webp b/game/characters/hermione/clothes/gloves/msmarv_gloves/outline.webp new file mode 100644 index 00000000..61498f0e --- /dev/null +++ b/game/characters/hermione/clothes/gloves/msmarv_gloves/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75ba82dd8cddb52bf13ef253bdbc73a721c105e8b370002c71cb50f784198d30 +size 15404 diff --git a/game/characters/hermione/clothes/gloves/poker_gloves_1/0.webp b/game/characters/hermione/clothes/gloves/poker_gloves_1/0.webp new file mode 100644 index 00000000..2f7e70a3 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/poker_gloves_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78ae4a9c2fdcccbc64b283df3be01b5f05aaf182e4f174b49fa7a883213d4d5d +size 8660 diff --git a/game/characters/hermione/clothes/gloves/poker_gloves_1/1.webp b/game/characters/hermione/clothes/gloves/poker_gloves_1/1.webp new file mode 100644 index 00000000..0922c025 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/poker_gloves_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4aafe634cc33d01c066721e30ae3974732791e0f2ae726b92d80cb4311fb4f69 +size 1090 diff --git a/game/characters/hermione/clothes/gloves/poker_gloves_1/outline.webp b/game/characters/hermione/clothes/gloves/poker_gloves_1/outline.webp new file mode 100644 index 00000000..d61e615c --- /dev/null +++ b/game/characters/hermione/clothes/gloves/poker_gloves_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7af5b1c1c6be097c5cb02684568382860c19272c84dde6df091d2597019fcc2d +size 4536 diff --git a/game/characters/hermione/clothes/gloves/poker_gloves_1/skin.webp b/game/characters/hermione/clothes/gloves/poker_gloves_1/skin.webp new file mode 100644 index 00000000..17cbbf4d --- /dev/null +++ b/game/characters/hermione/clothes/gloves/poker_gloves_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5698242104867bb9d68a10fe26fc1684c371d43e0a8a1c82fc374ca5a05b004c +size 1850 diff --git a/game/characters/hermione/clothes/gloves/tifa_gloves/0.webp b/game/characters/hermione/clothes/gloves/tifa_gloves/0.webp new file mode 100644 index 00000000..ce7b4646 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/tifa_gloves/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7b96ce46ed63f7273624ea6019f87bdbfbfdeb498d36226d56f0036526069f6 +size 8284 diff --git a/game/characters/hermione/clothes/gloves/tifa_gloves/1.webp b/game/characters/hermione/clothes/gloves/tifa_gloves/1.webp new file mode 100644 index 00000000..eef54833 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/tifa_gloves/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83d89c4b3bc480ee7eb3f60d1de9049e487155f037e36d696c7ae9814fe6c7f1 +size 10802 diff --git a/game/characters/hermione/clothes/gloves/tifa_gloves/2.webp b/game/characters/hermione/clothes/gloves/tifa_gloves/2.webp new file mode 100644 index 00000000..970496a1 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/tifa_gloves/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9908447fe8a0f61726e441794df5f860915d0718576e7ffd0db059f41cb584e +size 6030 diff --git a/game/characters/hermione/clothes/gloves/tifa_gloves/3.webp b/game/characters/hermione/clothes/gloves/tifa_gloves/3.webp new file mode 100644 index 00000000..2bf2e632 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/tifa_gloves/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:859438fd9fdfd11c4bce9afdefb5f266f99a20cd6b2971b128b33a4c62e22b9a +size 1844 diff --git a/game/characters/hermione/clothes/gloves/tifa_gloves/extra.webp b/game/characters/hermione/clothes/gloves/tifa_gloves/extra.webp new file mode 100644 index 00000000..e8f749ea --- /dev/null +++ b/game/characters/hermione/clothes/gloves/tifa_gloves/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74f81a096f5c24316ed44f187c898b7b9ef3860f9eaa739d4a16202f50421aaf +size 2370 diff --git a/game/characters/hermione/clothes/gloves/tifa_gloves/outline.webp b/game/characters/hermione/clothes/gloves/tifa_gloves/outline.webp new file mode 100644 index 00000000..7c36d611 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/tifa_gloves/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e62447eb57e0aedbce425e6dee21a27f69e864c7ebe73772c915225b499f4ca0 +size 20686 diff --git a/game/characters/hermione/clothes/gloves/xmas/0.webp b/game/characters/hermione/clothes/gloves/xmas/0.webp new file mode 100644 index 00000000..b0915d99 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/xmas/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db4561b3d7340414f30a62ee1ee9963ae67418a0e7b0ae891728977ae39cb032 +size 2080 diff --git a/game/characters/hermione/clothes/gloves/xmas/outline.webp b/game/characters/hermione/clothes/gloves/xmas/outline.webp new file mode 100644 index 00000000..2c48a7e1 --- /dev/null +++ b/game/characters/hermione/clothes/gloves/xmas/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbac141ad02674eae6f08fc60ca0f8944b52958e856e26c0899b7525503d90ed +size 2100 diff --git a/game/characters/hermione/clothes/gloves/yen_gloves/0.webp b/game/characters/hermione/clothes/gloves/yen_gloves/0.webp new file mode 100644 index 00000000..56f1d06f --- /dev/null +++ b/game/characters/hermione/clothes/gloves/yen_gloves/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f26c95fe4b636c73d89a3b864cbbf7db3ed1e6961ebeb49cfc318280cda418fd +size 11630 diff --git a/game/characters/hermione/clothes/gloves/yen_gloves/outline.webp b/game/characters/hermione/clothes/gloves/yen_gloves/outline.webp new file mode 100644 index 00000000..361164ab --- /dev/null +++ b/game/characters/hermione/clothes/gloves/yen_gloves/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b75a9763d42409949aee92fb026838bf31e8afc2e747ca60d2207cb5d73bc124 +size 11972 diff --git a/game/characters/hermione/clothes/hair/base/0.webp b/game/characters/hermione/clothes/hair/base/0.webp new file mode 100644 index 00000000..6f3a865a --- /dev/null +++ b/game/characters/hermione/clothes/hair/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d83e4ca0d64a01f8194d32d878262c64d97828930d7240e16583324946be7c8c +size 16796 diff --git a/game/characters/hermione/clothes/hair/base/0_back.webp b/game/characters/hermione/clothes/hair/base/0_back.webp new file mode 100644 index 00000000..ddd401b9 --- /dev/null +++ b/game/characters/hermione/clothes/hair/base/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4aeb9d8324febb8ebd93da5bf3f0c6b716454a0b987a1510c9dcda3ff8ae60a1 +size 37326 diff --git a/game/characters/hermione/clothes/hair/base/1.webp b/game/characters/hermione/clothes/hair/base/1.webp new file mode 100644 index 00000000..3a139666 --- /dev/null +++ b/game/characters/hermione/clothes/hair/base/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f550a9eabb9624596012659ac327e42364c78b23edc43f7db8c3fcfd673d049 +size 10896 diff --git a/game/characters/hermione/clothes/hair/base/1_back.webp b/game/characters/hermione/clothes/hair/base/1_back.webp new file mode 100644 index 00000000..952bbfd5 --- /dev/null +++ b/game/characters/hermione/clothes/hair/base/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24be0ba493bcb4df92dddaa12426f958648a771ec9b69819c2d72df9df03ed8a +size 8674 diff --git a/game/characters/hermione/clothes/hair/base/2.webp b/game/characters/hermione/clothes/hair/base/2.webp new file mode 100644 index 00000000..cd98a6fa --- /dev/null +++ b/game/characters/hermione/clothes/hair/base/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69de13ac47ee400660d373ccfc79fb84e6059b5badebd62f9bec67f853c74a16 +size 1664 diff --git a/game/characters/hermione/clothes/hair/base/extra.webp b/game/characters/hermione/clothes/hair/base/extra.webp new file mode 100644 index 00000000..a02de2d2 --- /dev/null +++ b/game/characters/hermione/clothes/hair/base/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdfa10edaa9fdab72c637d1feeafbbaa5836a75b7fea030b76a65712fd73cbd9 +size 688 diff --git a/game/characters/hermione/clothes/hair/base/outline.webp b/game/characters/hermione/clothes/hair/base/outline.webp new file mode 100644 index 00000000..0127b9ed --- /dev/null +++ b/game/characters/hermione/clothes/hair/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d044c8052879863c52c13023e52ca91ccf871cfb09b6c41115711c2c9284fde +size 17432 diff --git a/game/characters/hermione/clothes/hair/base/outline_back.webp b/game/characters/hermione/clothes/hair/base/outline_back.webp new file mode 100644 index 00000000..49658fdb --- /dev/null +++ b/game/characters/hermione/clothes/hair/base/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6556513cecdc26ef499ef802deffad15343a9191a6a8979abe4ad92278c63d80 +size 31602 diff --git a/game/characters/hermione/clothes/hair/base/skin.webp b/game/characters/hermione/clothes/hair/base/skin.webp new file mode 100644 index 00000000..3e447895 --- /dev/null +++ b/game/characters/hermione/clothes/hair/base/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b963fa02cbb4ea3d14cb87430e25eca9de7d0b022a2e7355271e30fc805b2e21 +size 3368 diff --git a/game/characters/hermione/clothes/hair/bio_hair/0.webp b/game/characters/hermione/clothes/hair/bio_hair/0.webp new file mode 100644 index 00000000..0f6075f2 --- /dev/null +++ b/game/characters/hermione/clothes/hair/bio_hair/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:307c64500d296b1f85ffdbd0e2b02bb5e4a29176e833f8b6a4a8213a10500791 +size 15356 diff --git a/game/characters/hermione/clothes/hair/bio_hair/1.webp b/game/characters/hermione/clothes/hair/bio_hair/1.webp new file mode 100644 index 00000000..c36b1703 --- /dev/null +++ b/game/characters/hermione/clothes/hair/bio_hair/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6357a12b110b35b85da71574217deb85563cb69363ee21fbd404e35606268472 +size 5330 diff --git a/game/characters/hermione/clothes/hair/bio_hair/outline.webp b/game/characters/hermione/clothes/hair/bio_hair/outline.webp new file mode 100644 index 00000000..6f4ae923 --- /dev/null +++ b/game/characters/hermione/clothes/hair/bio_hair/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:812746b46f6404ce74d93505f81a5f2ec9109866581b048ac2b95cae3fa2173f +size 19502 diff --git a/game/characters/hermione/clothes/hair/bio_hair/skin.webp b/game/characters/hermione/clothes/hair/bio_hair/skin.webp new file mode 100644 index 00000000..37ffd1e2 --- /dev/null +++ b/game/characters/hermione/clothes/hair/bio_hair/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff711d9b89248366c04565bae005c1632c89ad8f165fe884b975cbb43e36d241 +size 6534 diff --git a/game/characters/hermione/clothes/hair/updo/0.webp b/game/characters/hermione/clothes/hair/updo/0.webp new file mode 100644 index 00000000..5976264a --- /dev/null +++ b/game/characters/hermione/clothes/hair/updo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f993c9e6ec38601d6022469fa1eff176bd7a030ade8aaa3bc2851e335a201cf +size 18586 diff --git a/game/characters/hermione/clothes/hair/updo/0_front.webp b/game/characters/hermione/clothes/hair/updo/0_front.webp new file mode 100644 index 00000000..37a508e8 --- /dev/null +++ b/game/characters/hermione/clothes/hair/updo/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aca9ee25d7d7120b18e1ff1f23aeb474bee49a86fa6c7228e5be89b031e64cb +size 2706 diff --git a/game/characters/hermione/clothes/hair/updo/1.webp b/game/characters/hermione/clothes/hair/updo/1.webp new file mode 100644 index 00000000..097ef522 --- /dev/null +++ b/game/characters/hermione/clothes/hair/updo/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb74c348eb3ef4452165641cdd96a4208000df09a86809b2032320ee1d9be3e5 +size 7686 diff --git a/game/characters/hermione/clothes/hair/updo/1_front.webp b/game/characters/hermione/clothes/hair/updo/1_front.webp new file mode 100644 index 00000000..f7fc798d --- /dev/null +++ b/game/characters/hermione/clothes/hair/updo/1_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b58dfb1c55ab81883d5ad57eeff562238747475d27179f0effde8fc9b32328c3 +size 1870 diff --git a/game/characters/hermione/clothes/hair/updo/outline.webp b/game/characters/hermione/clothes/hair/updo/outline.webp new file mode 100644 index 00000000..8a5cfa03 --- /dev/null +++ b/game/characters/hermione/clothes/hair/updo/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89a3d23387f3397cd11694158f21ef7597f68c55af3f6918c10d8b7cce30b021 +size 18732 diff --git a/game/characters/hermione/clothes/hair/updo/outline_front.webp b/game/characters/hermione/clothes/hair/updo/outline_front.webp new file mode 100644 index 00000000..17a33dd9 --- /dev/null +++ b/game/characters/hermione/clothes/hair/updo/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e24c8ecccf18d00ff4a3d73f9ec2a8db6ed93b2f81f6260131f9578c2e958a7d +size 3192 diff --git a/game/characters/hermione/clothes/hair/updo/skin.webp b/game/characters/hermione/clothes/hair/updo/skin.webp new file mode 100644 index 00000000..40d3b37e --- /dev/null +++ b/game/characters/hermione/clothes/hair/updo/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2be63edf5127554b369eebfbf058b5df6aad18cb510493a262ed927e210e1294 +size 5222 diff --git a/game/characters/hermione/clothes/headgear/antlers/0.webp b/game/characters/hermione/clothes/headgear/antlers/0.webp new file mode 100644 index 00000000..d4a2ba8b --- /dev/null +++ b/game/characters/hermione/clothes/headgear/antlers/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9461251e756eca8eb4e420ec33fa52b010117dc9a8d5b88511860da10768712 +size 4000 diff --git a/game/characters/hermione/clothes/headgear/antlers/outline.webp b/game/characters/hermione/clothes/headgear/antlers/outline.webp new file mode 100644 index 00000000..cd3a06a0 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/antlers/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:443a5ef8bed067c7ad11274cd232bd88f2164ecba2eb82b7bfbae52ede3dfd0f +size 3740 diff --git a/game/characters/hermione/clothes/headgear/bunny_hat_1/0.webp b/game/characters/hermione/clothes/headgear/bunny_hat_1/0.webp new file mode 100644 index 00000000..f42d4a7f --- /dev/null +++ b/game/characters/hermione/clothes/headgear/bunny_hat_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d14d4aabbcc4329b3ecea4d6c2825d7094c999ae20366636fea81fa6c64495a9 +size 4556 diff --git a/game/characters/hermione/clothes/headgear/bunny_hat_1/1.webp b/game/characters/hermione/clothes/headgear/bunny_hat_1/1.webp new file mode 100644 index 00000000..b48a7bfd --- /dev/null +++ b/game/characters/hermione/clothes/headgear/bunny_hat_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75a2a4553e617ea0446dd75247f39e50035db356d49a53bf3f22fcdfccf06fc5 +size 2856 diff --git a/game/characters/hermione/clothes/headgear/bunny_hat_1/outline.webp b/game/characters/hermione/clothes/headgear/bunny_hat_1/outline.webp new file mode 100644 index 00000000..e5943ab6 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/bunny_hat_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:964eae0f48d03d4f24aeabd740a64f09e42dfea75925a2bd0350b2824eff19a3 +size 6176 diff --git a/game/characters/hermione/clothes/headgear/cat_ears/0.webp b/game/characters/hermione/clothes/headgear/cat_ears/0.webp new file mode 100644 index 00000000..d827dc5b --- /dev/null +++ b/game/characters/hermione/clothes/headgear/cat_ears/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d79b577a8a8888cd944999b473470d77e189a84dad9d9e41b5ca7392ac56b9c +size 9244 diff --git a/game/characters/hermione/clothes/headgear/cat_ears/1.webp b/game/characters/hermione/clothes/headgear/cat_ears/1.webp new file mode 100644 index 00000000..a5944ef3 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/cat_ears/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f43a9a240cd83f39d9de8b8d74871b52be9d78f4efe4f1387a4476f5a6f534ce +size 2018 diff --git a/game/characters/hermione/clothes/headgear/cat_ears/outline.webp b/game/characters/hermione/clothes/headgear/cat_ears/outline.webp new file mode 100644 index 00000000..4c616a0b --- /dev/null +++ b/game/characters/hermione/clothes/headgear/cat_ears/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec447185bd5bf3b414a4f8db4d9956bf31d1e087c7a8a026463f38f8216f63ad +size 4272 diff --git a/game/characters/hermione/clothes/headgear/elf/0.webp b/game/characters/hermione/clothes/headgear/elf/0.webp new file mode 100644 index 00000000..21954804 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/elf/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cac306c9dd00651d481b34c4922ffcf7836a6e77439a70070c91424992e858f +size 4508 diff --git a/game/characters/hermione/clothes/headgear/elf/1.webp b/game/characters/hermione/clothes/headgear/elf/1.webp new file mode 100644 index 00000000..e671235a --- /dev/null +++ b/game/characters/hermione/clothes/headgear/elf/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10f9b8cdc2bd9280bc00773035cd0da6a5a977a9bd706d80b26a16291615660d +size 3242 diff --git a/game/characters/hermione/clothes/headgear/elf/extra.webp b/game/characters/hermione/clothes/headgear/elf/extra.webp new file mode 100644 index 00000000..0c8b69e2 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/elf/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afe584e58dc97097fbb17539ecf913482208fb26b96f300b1a55471f69d61ae7 +size 1622 diff --git a/game/characters/hermione/clothes/headgear/elf/outline.webp b/game/characters/hermione/clothes/headgear/elf/outline.webp new file mode 100644 index 00000000..c4c2c83d --- /dev/null +++ b/game/characters/hermione/clothes/headgear/elf/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c014a2859438a2e7a64e32b1d023bb8a6700fce42b85c1d451145e39abf643d +size 5742 diff --git a/game/characters/hermione/clothes/headgear/maid_hat_1/0.webp b/game/characters/hermione/clothes/headgear/maid_hat_1/0.webp new file mode 100644 index 00000000..ee7fb7ef --- /dev/null +++ b/game/characters/hermione/clothes/headgear/maid_hat_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a873bda7fc9545a65c664afbf9f621138a5d74035b2629b9ce58c880aa86c746 +size 4514 diff --git a/game/characters/hermione/clothes/headgear/maid_hat_1/outline.webp b/game/characters/hermione/clothes/headgear/maid_hat_1/outline.webp new file mode 100644 index 00000000..a59658fd --- /dev/null +++ b/game/characters/hermione/clothes/headgear/maid_hat_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a524e4962e3d7babc1b16519df0e5eb233a4e66fd6ca091866dc660322fbfd2 +size 4480 diff --git a/game/characters/hermione/clothes/headgear/panties_on_head/0.webp b/game/characters/hermione/clothes/headgear/panties_on_head/0.webp new file mode 100644 index 00000000..76917f41 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/panties_on_head/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b034234cb2aec697f74a39afbd777934ad1f0ebffafbd2eab2d82881a21f6a6a +size 5518 diff --git a/game/characters/hermione/clothes/headgear/panties_on_head/outline.webp b/game/characters/hermione/clothes/headgear/panties_on_head/outline.webp new file mode 100644 index 00000000..93746cd3 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/panties_on_head/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99675f29c379aaa256c0337266cb75cf0169dc99d24ec0f938ba741498c09efb +size 7120 diff --git a/game/characters/hermione/clothes/headgear/poker_hat_1/0.webp b/game/characters/hermione/clothes/headgear/poker_hat_1/0.webp new file mode 100644 index 00000000..4f7ac159 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/poker_hat_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7552b5d77680709c1b9af7fb36b8ca37139205a7b1ecfbc967cf7010c427c509 +size 6722 diff --git a/game/characters/hermione/clothes/headgear/poker_hat_1/1.webp b/game/characters/hermione/clothes/headgear/poker_hat_1/1.webp new file mode 100644 index 00000000..a9128d99 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/poker_hat_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:568726fc80764d72484417b775bb3377b9d020d3216422c092f2053281042744 +size 1884 diff --git a/game/characters/hermione/clothes/headgear/poker_hat_1/2.webp b/game/characters/hermione/clothes/headgear/poker_hat_1/2.webp new file mode 100644 index 00000000..4e7734fe --- /dev/null +++ b/game/characters/hermione/clothes/headgear/poker_hat_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59679d9fa955aff1ead32f1efec43417fb0f261acee3a3cae49f9198f2275c79 +size 2460 diff --git a/game/characters/hermione/clothes/headgear/poker_hat_1/extra.webp b/game/characters/hermione/clothes/headgear/poker_hat_1/extra.webp new file mode 100644 index 00000000..87cd76e8 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/poker_hat_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:854d9be1d9716daf8708bf68abf29db2f679d283c382d2b833396d0821dd81be +size 6300 diff --git a/game/characters/hermione/clothes/headgear/poker_hat_1/outline.webp b/game/characters/hermione/clothes/headgear/poker_hat_1/outline.webp new file mode 100644 index 00000000..464cee77 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/poker_hat_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:674400793e4cdda9271cb17668cca14fcc94ba65cb71dcc73f5238520b105944 +size 5190 diff --git a/game/characters/hermione/clothes/headgear/poker_hat_1/overlay.webp b/game/characters/hermione/clothes/headgear/poker_hat_1/overlay.webp new file mode 100644 index 00000000..76964423 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/poker_hat_1/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9509cfa14e5eb981776057c2966b927eca555d095eefc941a738bc79d7bee3ef +size 4290 diff --git a/game/characters/hermione/clothes/headgear/poker_hat_2/0.webp b/game/characters/hermione/clothes/headgear/poker_hat_2/0.webp new file mode 100644 index 00000000..4f7ac159 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/poker_hat_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7552b5d77680709c1b9af7fb36b8ca37139205a7b1ecfbc967cf7010c427c509 +size 6722 diff --git a/game/characters/hermione/clothes/headgear/poker_hat_2/1.webp b/game/characters/hermione/clothes/headgear/poker_hat_2/1.webp new file mode 100644 index 00000000..a9128d99 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/poker_hat_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:568726fc80764d72484417b775bb3377b9d020d3216422c092f2053281042744 +size 1884 diff --git a/game/characters/hermione/clothes/headgear/poker_hat_2/2.webp b/game/characters/hermione/clothes/headgear/poker_hat_2/2.webp new file mode 100644 index 00000000..4e7734fe --- /dev/null +++ b/game/characters/hermione/clothes/headgear/poker_hat_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59679d9fa955aff1ead32f1efec43417fb0f261acee3a3cae49f9198f2275c79 +size 2460 diff --git a/game/characters/hermione/clothes/headgear/poker_hat_2/extra.webp b/game/characters/hermione/clothes/headgear/poker_hat_2/extra.webp new file mode 100644 index 00000000..4e4c301b --- /dev/null +++ b/game/characters/hermione/clothes/headgear/poker_hat_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91ae8c10998585160c8a061addd10c4e3cf8b46262391d4a6b37d6f992df65e0 +size 3336 diff --git a/game/characters/hermione/clothes/headgear/poker_hat_2/outline.webp b/game/characters/hermione/clothes/headgear/poker_hat_2/outline.webp new file mode 100644 index 00000000..464cee77 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/poker_hat_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:674400793e4cdda9271cb17668cca14fcc94ba65cb71dcc73f5238520b105944 +size 5190 diff --git a/game/characters/hermione/clothes/headgear/poker_hat_2/overlay.webp b/game/characters/hermione/clothes/headgear/poker_hat_2/overlay.webp new file mode 100644 index 00000000..76964423 --- /dev/null +++ b/game/characters/hermione/clothes/headgear/poker_hat_2/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9509cfa14e5eb981776057c2966b927eca555d095eefc941a738bc79d7bee3ef +size 4290 diff --git a/game/characters/hermione/clothes/makeup/cat_muzzle/0.webp b/game/characters/hermione/clothes/makeup/cat_muzzle/0.webp new file mode 100644 index 00000000..84195e96 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/cat_muzzle/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2818becd841b2855442d8a65822052d5ed0508a901b55907426e0a9c09a070e1 +size 690 diff --git a/game/characters/hermione/clothes/makeup/cat_muzzle/outline.webp b/game/characters/hermione/clothes/makeup/cat_muzzle/outline.webp new file mode 100644 index 00000000..5b90065d --- /dev/null +++ b/game/characters/hermione/clothes/makeup/cat_muzzle/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69ad8df86beddf7ce4461322ca240d79fe3f06494aec6167dfe3df52793802e2 +size 1334 diff --git a/game/characters/hermione/clothes/makeup/cat_muzzle/skin.webp b/game/characters/hermione/clothes/makeup/cat_muzzle/skin.webp new file mode 100644 index 00000000..e3fed089 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/cat_muzzle/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aed3c834c627aa2ddd836ad360deeda41d2006739af51e569cf7773c332c161d +size 812 diff --git a/game/characters/hermione/clothes/makeup/freckles1/0.webp b/game/characters/hermione/clothes/makeup/freckles1/0.webp new file mode 100644 index 00000000..74ba7d00 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/freckles1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9c1d5a77e4345a32cfbb07721ae8b11d81015796e0790574834011251a5be5f +size 2174 diff --git a/game/characters/hermione/clothes/makeup/freckles1_nonose/0.webp b/game/characters/hermione/clothes/makeup/freckles1_nonose/0.webp new file mode 100644 index 00000000..55c2353e --- /dev/null +++ b/game/characters/hermione/clothes/makeup/freckles1_nonose/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1367fb49a77796cb9d12b6a9ce673bd5499143c0dca40fd6023c6e9d60b1a419 +size 1786 diff --git a/game/characters/hermione/clothes/makeup/freckles2/0.webp b/game/characters/hermione/clothes/makeup/freckles2/0.webp new file mode 100644 index 00000000..0c941488 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/freckles2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a71177f5f6365da73341864a467927f881aeb828eeee900a661a34448718836 +size 2100 diff --git a/game/characters/hermione/clothes/makeup/freckles3/0.webp b/game/characters/hermione/clothes/makeup/freckles3/0.webp new file mode 100644 index 00000000..51623c7f --- /dev/null +++ b/game/characters/hermione/clothes/makeup/freckles3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ad84dcb5d7b22eed89576ad4aa3c36bc4575798d54544c5d2e25b1b341e8b6f +size 1714 diff --git a/game/characters/hermione/clothes/makeup/lipstick/angry.webp b/game/characters/hermione/clothes/makeup/lipstick/angry.webp new file mode 100644 index 00000000..0774e096 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74e05f8bed16178e8168b1b65817f73de74d248666db42f6bb9433facd6798fd +size 1858 diff --git a/game/characters/hermione/clothes/makeup/lipstick/annoyed.webp b/game/characters/hermione/clothes/makeup/lipstick/annoyed.webp new file mode 100644 index 00000000..86c2e04f --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a61b60cc339cab8ceff61308ade8140c2e5ceec278294131a9ad034d5e57ac39 +size 1136 diff --git a/game/characters/hermione/clothes/makeup/lipstick/base.webp b/game/characters/hermione/clothes/makeup/lipstick/base.webp new file mode 100644 index 00000000..1e4f6e47 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:958b01a6282a9af62d1a24aebeb3857b0920764e7c877d70ab597dbebf0310d3 +size 1146 diff --git a/game/characters/hermione/clothes/makeup/lipstick/clench.webp b/game/characters/hermione/clothes/makeup/lipstick/clench.webp new file mode 100644 index 00000000..47279463 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28ac6a67f8486a54cb8e451053b2fdb8d869bf9ce79cea41efb6cba9a30eb4fb +size 1582 diff --git a/game/characters/hermione/clothes/makeup/lipstick/crooked_smile.webp b/game/characters/hermione/clothes/makeup/lipstick/crooked_smile.webp new file mode 100644 index 00000000..a6862f04 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64aa5e278f94cab7cfc2cfcd2dfba8a020cc624bda7112e6ab10c145384b338d +size 1760 diff --git a/game/characters/hermione/clothes/makeup/lipstick/cum.webp b/game/characters/hermione/clothes/makeup/lipstick/cum.webp new file mode 100644 index 00000000..d983c175 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d14dea7ee7737ecd1308f775b81c9cfd5a315d4dc1050cbad8432b3fa80a5fd +size 1012 diff --git a/game/characters/hermione/clothes/makeup/lipstick/disgust.webp b/game/characters/hermione/clothes/makeup/lipstick/disgust.webp new file mode 100644 index 00000000..dbae2e34 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29a4b14b32d89aef0d19169ca3702f8710a4061b95bd296da52613ecb97bf6ba +size 1438 diff --git a/game/characters/hermione/clothes/makeup/lipstick/full.webp b/game/characters/hermione/clothes/makeup/lipstick/full.webp new file mode 100644 index 00000000..719442d1 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11e390cb02dad97078e75e40e12e40de29d520f4bcd12538a088edcb081e5c66 +size 1080 diff --git a/game/characters/hermione/clothes/makeup/lipstick/full_cum.webp b/game/characters/hermione/clothes/makeup/lipstick/full_cum.webp new file mode 100644 index 00000000..ade7acbe --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/full_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d5c0ac8c62917b32066f990a7c8f19be88cebbcfe773a6ee5656803b5513bda +size 1166 diff --git a/game/characters/hermione/clothes/makeup/lipstick/full_panties.webp b/game/characters/hermione/clothes/makeup/lipstick/full_panties.webp new file mode 100644 index 00000000..a01d3a82 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/full_panties.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a3aba946d26748a4f67e8284346d5b5bb51f58142ef4299b29f2a442bd6be80 +size 1182 diff --git a/game/characters/hermione/clothes/makeup/lipstick/grin.webp b/game/characters/hermione/clothes/makeup/lipstick/grin.webp new file mode 100644 index 00000000..cf08dd37 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f586fd254187d0624c7d8450dda5e74a45a5462835536147e41a1a52c2ca584 +size 1932 diff --git a/game/characters/hermione/clothes/makeup/lipstick/mad.webp b/game/characters/hermione/clothes/makeup/lipstick/mad.webp new file mode 100644 index 00000000..16449a9f --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d22f2f00d159a5fc44945e372b7f3c714f2c1b0f611348ae9f17a3d724f55e4d +size 1428 diff --git a/game/characters/hermione/clothes/makeup/lipstick/normal.webp b/game/characters/hermione/clothes/makeup/lipstick/normal.webp new file mode 100644 index 00000000..fc2c0d92 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ac7593af6ab0e92b78d0376b18092eb20cad5a585021e89ba34dc28ab9c9207 +size 1082 diff --git a/game/characters/hermione/clothes/makeup/lipstick/open.webp b/game/characters/hermione/clothes/makeup/lipstick/open.webp new file mode 100644 index 00000000..59bb69af --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f41ee396247def7479056820eb00b6642f2c72bb6b9f2f0fba24d17a1dcc9682 +size 1340 diff --git a/game/characters/hermione/clothes/makeup/lipstick/open_tongue.webp b/game/characters/hermione/clothes/makeup/lipstick/open_tongue.webp new file mode 100644 index 00000000..c62bd701 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abf392fe674c570ca80da1878241d744b06ac887a7cf93674a9b55e87aca8060 +size 1266 diff --git a/game/characters/hermione/clothes/makeup/lipstick/open_wide_tongue.webp b/game/characters/hermione/clothes/makeup/lipstick/open_wide_tongue.webp new file mode 100644 index 00000000..d4a51ed9 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1249accd8b995a16837b7d9f8cf441ac768053a4c1905b747233e3045d9f8a29 +size 1556 diff --git a/game/characters/hermione/clothes/makeup/lipstick/open_wide_tongue_cum.webp b/game/characters/hermione/clothes/makeup/lipstick/open_wide_tongue_cum.webp new file mode 100644 index 00000000..d4a51ed9 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/open_wide_tongue_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1249accd8b995a16837b7d9f8cf441ac768053a4c1905b747233e3045d9f8a29 +size 1556 diff --git a/game/characters/hermione/clothes/makeup/lipstick/open_wide_tongue_panties.webp b/game/characters/hermione/clothes/makeup/lipstick/open_wide_tongue_panties.webp new file mode 100644 index 00000000..d4a51ed9 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/open_wide_tongue_panties.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1249accd8b995a16837b7d9f8cf441ac768053a4c1905b747233e3045d9f8a29 +size 1556 diff --git a/game/characters/hermione/clothes/makeup/lipstick/scream.webp b/game/characters/hermione/clothes/makeup/lipstick/scream.webp new file mode 100644 index 00000000..403ba39c --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:274c87bf5de76933a75ad87d2c3e8bbe54de7b6c170584d8c0242b59e96604c7 +size 1794 diff --git a/game/characters/hermione/clothes/makeup/lipstick/shock.webp b/game/characters/hermione/clothes/makeup/lipstick/shock.webp new file mode 100644 index 00000000..132d98cc --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/shock.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7809ff9892b918734253eff065b2d5123a74b7562aa7fe1beddb3880e5c24753 +size 1536 diff --git a/game/characters/hermione/clothes/makeup/lipstick/silly.webp b/game/characters/hermione/clothes/makeup/lipstick/silly.webp new file mode 100644 index 00000000..04f9ac9b --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/silly.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0820fa877d38e6adc7c625e8dfab09ee0969da8e44f371c55242e63907e91d1 +size 1732 diff --git a/game/characters/hermione/clothes/makeup/lipstick/smile.webp b/game/characters/hermione/clothes/makeup/lipstick/smile.webp new file mode 100644 index 00000000..71155d33 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebf178d7253e361d1b8d991e56d8442dd1c863e50473af00f92e347f1eddc97d +size 1986 diff --git a/game/characters/hermione/clothes/makeup/lipstick/soft.webp b/game/characters/hermione/clothes/makeup/lipstick/soft.webp new file mode 100644 index 00000000..cf0ddeba --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8822b54948e4b2aade92f0e484ed43d101e0e39d7d6fa5e7d4da011520dd60dc +size 1370 diff --git a/game/characters/hermione/clothes/makeup/lipstick/upset.webp b/game/characters/hermione/clothes/makeup/lipstick/upset.webp new file mode 100644 index 00000000..f10af449 --- /dev/null +++ b/game/characters/hermione/clothes/makeup/lipstick/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91d87a7094317edb7eb81be2924f238b30271af03beebc7487a9c311acf1d46c +size 1138 diff --git a/game/characters/hermione/clothes/neckwear/ball_pearls_1/0.webp b/game/characters/hermione/clothes/neckwear/ball_pearls_1/0.webp new file mode 100644 index 00000000..56421277 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/ball_pearls_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1ce8307416e08a40a6f6bd981ca4865daef4f1e0ac3d385ef0f1f818424c80a +size 3218 diff --git a/game/characters/hermione/clothes/neckwear/ball_pearls_1/outline.webp b/game/characters/hermione/clothes/neckwear/ball_pearls_1/outline.webp new file mode 100644 index 00000000..92c3747e --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/ball_pearls_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c23634d1eef508f3abd5b5d773bb753c8fe808c055a361789b37aeacbd61302 +size 3180 diff --git a/game/characters/hermione/clothes/neckwear/ball_pearls_1/overlay.webp b/game/characters/hermione/clothes/neckwear/ball_pearls_1/overlay.webp new file mode 100644 index 00000000..28fd6b98 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/ball_pearls_1/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72a29cb07a8ab06c7c777ab149af8593e9b116ef7ee87cf38c533a07f5a36cc3 +size 1660 diff --git a/game/characters/hermione/clothes/neckwear/basic_collar/0.webp b/game/characters/hermione/clothes/neckwear/basic_collar/0.webp new file mode 100644 index 00000000..7ed8648c --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/basic_collar/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0302bb630ecb38de83b309c4538773c405acf0332815f15c117247233ceeecdf +size 2834 diff --git a/game/characters/hermione/clothes/neckwear/basic_collar/1.webp b/game/characters/hermione/clothes/neckwear/basic_collar/1.webp new file mode 100644 index 00000000..fde67f0d --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/basic_collar/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35f5169b90f7e778ee33aa3c35cb4753a95f9325b0986811facf7617a01fa3cb +size 744 diff --git a/game/characters/hermione/clothes/neckwear/basic_collar/extra.webp b/game/characters/hermione/clothes/neckwear/basic_collar/extra.webp new file mode 100644 index 00000000..f077cff2 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/basic_collar/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae526cf166340ea8d71e7ef4fd18d3af67eb2908f26708b31cd89a1c4578bdd0 +size 1010 diff --git a/game/characters/hermione/clothes/neckwear/basic_collar/outline.webp b/game/characters/hermione/clothes/neckwear/basic_collar/outline.webp new file mode 100644 index 00000000..4eba4bfd --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/basic_collar/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3637062d3b2eff6665d774ed0d4dce927df43a992579d374903ff53ea296b2fa +size 2452 diff --git a/game/characters/hermione/clothes/neckwear/bell_1/0.webp b/game/characters/hermione/clothes/neckwear/bell_1/0.webp new file mode 100644 index 00000000..6dc5bde4 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/bell_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dab755052cedad65d539e6a7179b2da77666dd2aa21705a175461a9c35f7c0f +size 1596 diff --git a/game/characters/hermione/clothes/neckwear/bell_1/1.webp b/game/characters/hermione/clothes/neckwear/bell_1/1.webp new file mode 100644 index 00000000..ed68468f --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/bell_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:966755a764cd1d5cbc7f5f299c5d12b3c9f00ec3bd5e121fa2eb9ce92f975fb0 +size 1894 diff --git a/game/characters/hermione/clothes/neckwear/bell_1/extra.webp b/game/characters/hermione/clothes/neckwear/bell_1/extra.webp new file mode 100644 index 00000000..41930b14 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/bell_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0be0b513990e8353683591e24e72f7228fb06874f753acea61857336c931dea5 +size 1038 diff --git a/game/characters/hermione/clothes/neckwear/bell_1/outline.webp b/game/characters/hermione/clothes/neckwear/bell_1/outline.webp new file mode 100644 index 00000000..a05c77a4 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/bell_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41a933a604b64d5a1b95730a2624d11d2ab65de6b02d9696c00d438aad51c174 +size 3134 diff --git a/game/characters/hermione/clothes/neckwear/bioshock_choker/0.webp b/game/characters/hermione/clothes/neckwear/bioshock_choker/0.webp new file mode 100644 index 00000000..59a00140 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/bioshock_choker/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46fe4547c9ca4f6a4ee1f2a4fba512708463196c89949358aa89db51fa89a37b +size 1858 diff --git a/game/characters/hermione/clothes/neckwear/bioshock_choker/extra.webp b/game/characters/hermione/clothes/neckwear/bioshock_choker/extra.webp new file mode 100644 index 00000000..bf0e8b09 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/bioshock_choker/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11968c847193da61777d96998bf6d90dd79f4fa71526631a214b5099c1155fb3 +size 2230 diff --git a/game/characters/hermione/clothes/neckwear/bunny_bowtie_1/0.webp b/game/characters/hermione/clothes/neckwear/bunny_bowtie_1/0.webp new file mode 100644 index 00000000..d99344b3 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/bunny_bowtie_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:373f1dd4bc22cf460c75f21a0201249357cd87b1c5235239ae97ce9a049d1b25 +size 2974 diff --git a/game/characters/hermione/clothes/neckwear/bunny_bowtie_1/1.webp b/game/characters/hermione/clothes/neckwear/bunny_bowtie_1/1.webp new file mode 100644 index 00000000..44ce19ce --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/bunny_bowtie_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:108f8896aa2a74861df96cb1e48d8618c51a2fdbc10676f4d81b2359469aee10 +size 2988 diff --git a/game/characters/hermione/clothes/neckwear/bunny_bowtie_1/outline.webp b/game/characters/hermione/clothes/neckwear/bunny_bowtie_1/outline.webp new file mode 100644 index 00000000..8fd174f7 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/bunny_bowtie_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6acf25b631dcb704bb36b4554eb992f818420d1d7682addea7b25558fdaa0ed0 +size 4636 diff --git a/game/characters/hermione/clothes/neckwear/choker_1/0.webp b/game/characters/hermione/clothes/neckwear/choker_1/0.webp new file mode 100644 index 00000000..6dc5bde4 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/choker_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dab755052cedad65d539e6a7179b2da77666dd2aa21705a175461a9c35f7c0f +size 1596 diff --git a/game/characters/hermione/clothes/neckwear/choker_1/extra.webp b/game/characters/hermione/clothes/neckwear/choker_1/extra.webp new file mode 100644 index 00000000..8c061a22 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/choker_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be152982fda08a79affce8f6323490728237b4b8c76dc9c3a7e5bad021f92954 +size 776 diff --git a/game/characters/hermione/clothes/neckwear/choker_1/outline.webp b/game/characters/hermione/clothes/neckwear/choker_1/outline.webp new file mode 100644 index 00000000..f9db7b75 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/choker_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66a8365bfca450bf230610269df9c496fe6efdeb78aa25af2098c06873512284 +size 1512 diff --git a/game/characters/hermione/clothes/neckwear/egypt_neck/0.webp b/game/characters/hermione/clothes/neckwear/egypt_neck/0.webp new file mode 100644 index 00000000..a9bafcfa --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/egypt_neck/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b431a756e67fc3545c84a949e98300d7b7803fcfc6f3e13f1e37a8f6a58d2501 +size 4654 diff --git a/game/characters/hermione/clothes/neckwear/egypt_neck/1.webp b/game/characters/hermione/clothes/neckwear/egypt_neck/1.webp new file mode 100644 index 00000000..83dbfa84 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/egypt_neck/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:714c092b2cc5e1263e46ad4a238fd424ce085df0889fdb529507adbd18da002b +size 3412 diff --git a/game/characters/hermione/clothes/neckwear/egypt_neck/2.webp b/game/characters/hermione/clothes/neckwear/egypt_neck/2.webp new file mode 100644 index 00000000..2d462250 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/egypt_neck/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80b70bd79b0af3ebb5abca471a27643a244af583db1b78b0b04088e5a0e2a508 +size 1826 diff --git a/game/characters/hermione/clothes/neckwear/egypt_neck/extra.webp b/game/characters/hermione/clothes/neckwear/egypt_neck/extra.webp new file mode 100644 index 00000000..873c728a --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/egypt_neck/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c62fa5bfb0c3a6a8d64868ce325c8ce24bac46503a191a7f60464ef8489f492a +size 3066 diff --git a/game/characters/hermione/clothes/neckwear/egypt_neck/outline.webp b/game/characters/hermione/clothes/neckwear/egypt_neck/outline.webp new file mode 100644 index 00000000..f0f3a899 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/egypt_neck/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6faf5f4bfdee5c0c131ac01338acad9dfc156353a0a2a41a364d38e855a12a2a +size 8532 diff --git a/game/characters/hermione/clothes/neckwear/flasher_collar/0.webp b/game/characters/hermione/clothes/neckwear/flasher_collar/0.webp new file mode 100644 index 00000000..d0208680 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/flasher_collar/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8bd3daa5659b71b6a298a46dcace8112fa79007a7dd8840b594c1639f0b0413 +size 5204 diff --git a/game/characters/hermione/clothes/neckwear/flasher_collar/1.webp b/game/characters/hermione/clothes/neckwear/flasher_collar/1.webp new file mode 100644 index 00000000..ae2c15c2 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/flasher_collar/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52838dd82bf440c3e8a2449d8430ec8dc02b4e113ae592eb9711b3fa0d6c1ea2 +size 1468 diff --git a/game/characters/hermione/clothes/neckwear/flasher_collar/extra.webp b/game/characters/hermione/clothes/neckwear/flasher_collar/extra.webp new file mode 100644 index 00000000..115b2292 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/flasher_collar/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1ce1685d7cd62c6bdb6245e848c4c849a1ed18fa2af8da6088c88fd42dfc5c0 +size 884 diff --git a/game/characters/hermione/clothes/neckwear/flasher_collar/outline.webp b/game/characters/hermione/clothes/neckwear/flasher_collar/outline.webp new file mode 100644 index 00000000..65478093 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/flasher_collar/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b1dc54d3c235920ce1dad706a867842769e732814bb296fbdea0d64a6dacbe4 +size 5284 diff --git a/game/characters/hermione/clothes/neckwear/flasher_collar/overlay.webp b/game/characters/hermione/clothes/neckwear/flasher_collar/overlay.webp new file mode 100644 index 00000000..3f9b6ba0 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/flasher_collar/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc0c3fa3cbfb2f054cf6f002527492b988edebc48de3b83dd4fe2f66add1d66e +size 5262 diff --git a/game/characters/hermione/clothes/neckwear/good_girl_collar/0.webp b/game/characters/hermione/clothes/neckwear/good_girl_collar/0.webp new file mode 100644 index 00000000..97012b17 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/good_girl_collar/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06cb284aa88b51b8b39d2b1e2cab2ac081ad6a81911dada41903eb2a85a967fb +size 3040 diff --git a/game/characters/hermione/clothes/neckwear/good_girl_collar/1.webp b/game/characters/hermione/clothes/neckwear/good_girl_collar/1.webp new file mode 100644 index 00000000..dbb91d4a --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/good_girl_collar/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0307844396c8ce56bc974967cabc3a40353f57f9e68f78fdd0ebfa95de5a3c6a +size 2634 diff --git a/game/characters/hermione/clothes/neckwear/good_girl_collar/2.webp b/game/characters/hermione/clothes/neckwear/good_girl_collar/2.webp new file mode 100644 index 00000000..a42e045c --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/good_girl_collar/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:174c233132c6a0c479e83057722457ddaf291f45bf1dcd71152c28d1cdbccd7a +size 876 diff --git a/game/characters/hermione/clothes/neckwear/good_girl_collar/extra.webp b/game/characters/hermione/clothes/neckwear/good_girl_collar/extra.webp new file mode 100644 index 00000000..a7b3383f --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/good_girl_collar/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:beef96859cd06be2787e6f876e9573ac8755e9684a796e5ba39af2c95be3fcaf +size 1004 diff --git a/game/characters/hermione/clothes/neckwear/good_girl_collar/outline.webp b/game/characters/hermione/clothes/neckwear/good_girl_collar/outline.webp new file mode 100644 index 00000000..8da92ef7 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/good_girl_collar/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:162ec1cbaaa55df5635a20a3e9d054f4652c0e6c6622d71e6eb881a237cf957c +size 3486 diff --git a/game/characters/hermione/clothes/neckwear/good_girl_collar/overlay.webp b/game/characters/hermione/clothes/neckwear/good_girl_collar/overlay.webp new file mode 100644 index 00000000..1dd77d88 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/good_girl_collar/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:941afa11c048182b6421794f62e759fd1c95aa5b31f673bd78898df45a558faa +size 2456 diff --git a/game/characters/hermione/clothes/neckwear/hslut_choker/0.webp b/game/characters/hermione/clothes/neckwear/hslut_choker/0.webp new file mode 100644 index 00000000..bac84f87 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/hslut_choker/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3885ca8924d7260a47c87db60c93a5ca7e0c155c888bd10fb997098a31f45b26 +size 1598 diff --git a/game/characters/hermione/clothes/neckwear/hslut_choker/1.webp b/game/characters/hermione/clothes/neckwear/hslut_choker/1.webp new file mode 100644 index 00000000..09500246 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/hslut_choker/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef43707ec2c9d1b38956be8c2336f367d9eb02b7582dab1ff64b74a1f76269ba +size 2362 diff --git a/game/characters/hermione/clothes/neckwear/hslut_choker/extra.webp b/game/characters/hermione/clothes/neckwear/hslut_choker/extra.webp new file mode 100644 index 00000000..21a2e2cb --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/hslut_choker/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98fde9b22b68cc4ca2c08a6c159d05176d4da8ac2b316a166e667e74baf4b80c +size 2538 diff --git a/game/characters/hermione/clothes/neckwear/hslut_choker/outline.webp b/game/characters/hermione/clothes/neckwear/hslut_choker/outline.webp new file mode 100644 index 00000000..af5f9de2 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/hslut_choker/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b7a7bc46d34e14dce39bda429463a17c1343d804b0cbce21b056909a91525b1 +size 2994 diff --git a/game/characters/hermione/clothes/neckwear/latex_choker/0.webp b/game/characters/hermione/clothes/neckwear/latex_choker/0.webp new file mode 100644 index 00000000..e273a5b0 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/latex_choker/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f70ebfa4dba0a47d4eeff54d04137e43bbe05b985a10c4a18061176c94d0fbed +size 2258 diff --git a/game/characters/hermione/clothes/neckwear/latex_choker/extra.webp b/game/characters/hermione/clothes/neckwear/latex_choker/extra.webp new file mode 100644 index 00000000..5977a69d --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/latex_choker/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d01a1fe51a8f582dc096dc340d3ad8714644f87c617c3145fb3d18812ad46416 +size 1212 diff --git a/game/characters/hermione/clothes/neckwear/latex_choker/outline.webp b/game/characters/hermione/clothes/neckwear/latex_choker/outline.webp new file mode 100644 index 00000000..858078ca --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/latex_choker/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d098cd47f210fa73434b6661fbfad3213fe93865459ba640782c805b5209007 +size 2334 diff --git a/game/characters/hermione/clothes/neckwear/maid_choker_1/0.webp b/game/characters/hermione/clothes/neckwear/maid_choker_1/0.webp new file mode 100644 index 00000000..b08c2c4b --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/maid_choker_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9b2e5d757994a79ec0c5cd6ccb1ad5a3b9ebc85830d8eb3c5ad092d4c1b1e47 +size 6182 diff --git a/game/characters/hermione/clothes/neckwear/maid_choker_1/1.webp b/game/characters/hermione/clothes/neckwear/maid_choker_1/1.webp new file mode 100644 index 00000000..36c798e3 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/maid_choker_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:398749433c8020e921d48aeb260c3f6f11eea1a11f99c1201a08a5d6f3e996a7 +size 1738 diff --git a/game/characters/hermione/clothes/neckwear/maid_choker_1/outline.webp b/game/characters/hermione/clothes/neckwear/maid_choker_1/outline.webp new file mode 100644 index 00000000..4c0314c5 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/maid_choker_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5810f30228775cc90a7bb1bb5b79f26384b08a5e1b64ea20860a1a218f6dda2 +size 4386 diff --git a/game/characters/hermione/clothes/neckwear/maid_choker_2/0.webp b/game/characters/hermione/clothes/neckwear/maid_choker_2/0.webp new file mode 100644 index 00000000..1263dfb9 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/maid_choker_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5e962e3c394732b27f2ad773a8827fe2aa6303e6acde1d908171863b46dc42c +size 1922 diff --git a/game/characters/hermione/clothes/neckwear/maid_choker_2/outline.webp b/game/characters/hermione/clothes/neckwear/maid_choker_2/outline.webp new file mode 100644 index 00000000..068c4c29 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/maid_choker_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64ab8b486e77f9315659a2cd8fb028eab839bde174bfeda6c9c4f058dc67ff13 +size 1762 diff --git a/game/characters/hermione/clothes/neckwear/poker_bowtie_1/0.webp b/game/characters/hermione/clothes/neckwear/poker_bowtie_1/0.webp new file mode 100644 index 00000000..b0aae21a --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/poker_bowtie_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c30a6b3536b310a46e4f65ed1b18dd211916c1be882d92d415888f257003a93 +size 4016 diff --git a/game/characters/hermione/clothes/neckwear/poker_bowtie_1/1.webp b/game/characters/hermione/clothes/neckwear/poker_bowtie_1/1.webp new file mode 100644 index 00000000..47486f54 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/poker_bowtie_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f896488cb7bf65138170ab9605aadc21967120ef354f80bf231409ce91721c40 +size 4442 diff --git a/game/characters/hermione/clothes/neckwear/poker_bowtie_1/2.webp b/game/characters/hermione/clothes/neckwear/poker_bowtie_1/2.webp new file mode 100644 index 00000000..1d025ed0 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/poker_bowtie_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f27cd9ac184c5318f2191cf348c1ca86c17c154fe61f73a546f8404ac712bcf +size 706 diff --git a/game/characters/hermione/clothes/neckwear/poker_bowtie_1/extra.webp b/game/characters/hermione/clothes/neckwear/poker_bowtie_1/extra.webp new file mode 100644 index 00000000..ca735450 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/poker_bowtie_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddda9d55006c584c447824f30fdb0906fde81900682b4b6cd47cad904a917b06 +size 2156 diff --git a/game/characters/hermione/clothes/neckwear/poker_bowtie_1/outline.webp b/game/characters/hermione/clothes/neckwear/poker_bowtie_1/outline.webp new file mode 100644 index 00000000..ae29fe8a --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/poker_bowtie_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdbf3592770e72bf57f1a7810556aa4b3bdc85e5da4fc4a751f32a4ef24dddcd +size 4144 diff --git a/game/characters/hermione/clothes/neckwear/poker_bowtie_1/skin.webp b/game/characters/hermione/clothes/neckwear/poker_bowtie_1/skin.webp new file mode 100644 index 00000000..fa5391d2 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/poker_bowtie_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e05db9709e1fc6c1548def17a92c86f5c9ec0142c594c2cc24a2bdfd4e8d4cc +size 2962 diff --git a/game/characters/hermione/clothes/neckwear/slave_collar/0.webp b/game/characters/hermione/clothes/neckwear/slave_collar/0.webp new file mode 100644 index 00000000..e27198f9 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/slave_collar/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27697271f7e5dce14bb10255fdaef47489a87b41264779ece558c370a3fbbd0b +size 2784 diff --git a/game/characters/hermione/clothes/neckwear/slave_collar/extra.webp b/game/characters/hermione/clothes/neckwear/slave_collar/extra.webp new file mode 100644 index 00000000..a7b3383f --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/slave_collar/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:beef96859cd06be2787e6f876e9573ac8755e9684a796e5ba39af2c95be3fcaf +size 1004 diff --git a/game/characters/hermione/clothes/neckwear/slave_collar/outline.webp b/game/characters/hermione/clothes/neckwear/slave_collar/outline.webp new file mode 100644 index 00000000..da4badb6 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/slave_collar/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be2b81c336abf374233c49c80fcfd302162e2d0e26e3e1635d3503d9b1cd9bfd +size 2482 diff --git a/game/characters/hermione/clothes/neckwear/slave_collar/overlay.webp b/game/characters/hermione/clothes/neckwear/slave_collar/overlay.webp new file mode 100644 index 00000000..7c174a38 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/slave_collar/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b250462abfafb8ab28cd46a2d90349e2c769fd5c1d3c2f8d6a2a97f3ad34bfd +size 2872 diff --git a/game/characters/hermione/clothes/neckwear/slut_collar/0.webp b/game/characters/hermione/clothes/neckwear/slut_collar/0.webp new file mode 100644 index 00000000..bb52aa60 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/slut_collar/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7500fd1b143912da67b7c3fb6f71bea9421255d812d5941f68b698394e576fc +size 2600 diff --git a/game/characters/hermione/clothes/neckwear/slut_collar/1.webp b/game/characters/hermione/clothes/neckwear/slut_collar/1.webp new file mode 100644 index 00000000..d477ec90 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/slut_collar/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d3d26b5ec970374a7e5804cdd530bb7572eb931a65b133b82985da40df25ddb +size 794 diff --git a/game/characters/hermione/clothes/neckwear/slut_collar/extra.webp b/game/characters/hermione/clothes/neckwear/slut_collar/extra.webp new file mode 100644 index 00000000..b40c9f45 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/slut_collar/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83be3c9a902fade4d9fda8b694544178fe654d624d444f549d4dbf6d633014c3 +size 892 diff --git a/game/characters/hermione/clothes/neckwear/slut_collar/outline.webp b/game/characters/hermione/clothes/neckwear/slut_collar/outline.webp new file mode 100644 index 00000000..24949472 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/slut_collar/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e6e3d027f21fe8b54bca4f50a0ab0f084099cdfcf6fbdd8f793c842dbb662b6 +size 2872 diff --git a/game/characters/hermione/clothes/neckwear/slut_collar/overlay.webp b/game/characters/hermione/clothes/neckwear/slut_collar/overlay.webp new file mode 100644 index 00000000..6aaeeb9d --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/slut_collar/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:910c8670f1c57da0b4a380e00968338d5ae3dd97adff325f0d534c415d40b2e8 +size 1598 diff --git a/game/characters/hermione/clothes/neckwear/whore_collar/0.webp b/game/characters/hermione/clothes/neckwear/whore_collar/0.webp new file mode 100644 index 00000000..02c6fd4a --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/whore_collar/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8790579ff1bd43b94969f3376cfd71e074137fc91540aa4e15f3718f40e91eee +size 3384 diff --git a/game/characters/hermione/clothes/neckwear/whore_collar/extra.webp b/game/characters/hermione/clothes/neckwear/whore_collar/extra.webp new file mode 100644 index 00000000..b40c9f45 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/whore_collar/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83be3c9a902fade4d9fda8b694544178fe654d624d444f549d4dbf6d633014c3 +size 892 diff --git a/game/characters/hermione/clothes/neckwear/whore_collar/outline.webp b/game/characters/hermione/clothes/neckwear/whore_collar/outline.webp new file mode 100644 index 00000000..4921b216 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/whore_collar/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8eda15bc51620bc71db2325a1904a4a9e27d63a065b2b696492a90ba0917e66a +size 5126 diff --git a/game/characters/hermione/clothes/neckwear/whore_collar/overlay.webp b/game/characters/hermione/clothes/neckwear/whore_collar/overlay.webp new file mode 100644 index 00000000..3be69e95 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/whore_collar/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25650ad99781f7fa11947d0d2926558f9a9d2ac88472ff1224c8207c5cfb379e +size 4342 diff --git a/game/characters/hermione/clothes/neckwear/yen_choker/0.webp b/game/characters/hermione/clothes/neckwear/yen_choker/0.webp new file mode 100644 index 00000000..26e974e4 --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/yen_choker/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27ea868ac2640e9a12f82cca05d89b0f473d7ef6f691a8a2e5463298ff96796e +size 1750 diff --git a/game/characters/hermione/clothes/neckwear/yen_choker/extra.webp b/game/characters/hermione/clothes/neckwear/yen_choker/extra.webp new file mode 100644 index 00000000..8e8b5c5e --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/yen_choker/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90e58d9a92bde5640d8daee5add30d62d89caef634fd7d18424338bb3e2b7174 +size 2340 diff --git a/game/characters/hermione/clothes/neckwear/yen_choker/outline.webp b/game/characters/hermione/clothes/neckwear/yen_choker/outline.webp new file mode 100644 index 00000000..78400d0f --- /dev/null +++ b/game/characters/hermione/clothes/neckwear/yen_choker/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f9e369ed66846d0ee102c03b74cc59d449f53fcc30215a98d72f63652217ef5 +size 2916 diff --git a/game/characters/hermione/clothes/panties/basic_panties_1/0.webp b/game/characters/hermione/clothes/panties/basic_panties_1/0.webp new file mode 100644 index 00000000..0926fef9 --- /dev/null +++ b/game/characters/hermione/clothes/panties/basic_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f74f633f6312733c4692b27eaace4518821fa6e2c9894949255ae95e74380f84 +size 7564 diff --git a/game/characters/hermione/clothes/panties/basic_panties_1/1.webp b/game/characters/hermione/clothes/panties/basic_panties_1/1.webp new file mode 100644 index 00000000..cf8911b6 --- /dev/null +++ b/game/characters/hermione/clothes/panties/basic_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4884dd2a747bc9ba05739ef2f43b2510e2ff858c0d3bf2f8f9a8f29fa4fd52d9 +size 1456 diff --git a/game/characters/hermione/clothes/panties/basic_panties_1/outline.webp b/game/characters/hermione/clothes/panties/basic_panties_1/outline.webp new file mode 100644 index 00000000..cc3b9ab4 --- /dev/null +++ b/game/characters/hermione/clothes/panties/basic_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afd693fb95dafd2aa646de244c3a8e8185ef8edcbacdbe4b33d9f59874b79626 +size 7020 diff --git a/game/characters/hermione/clothes/panties/basic_panties_1/skin.webp b/game/characters/hermione/clothes/panties/basic_panties_1/skin.webp new file mode 100644 index 00000000..593d9d65 --- /dev/null +++ b/game/characters/hermione/clothes/panties/basic_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f64cf5298e503cc55a28a1135387f56b1d493bace66270a7c44eebd3e41d492 +size 3874 diff --git a/game/characters/hermione/clothes/panties/bikini_panties_1/0.webp b/game/characters/hermione/clothes/panties/bikini_panties_1/0.webp new file mode 100644 index 00000000..51aa31fd --- /dev/null +++ b/game/characters/hermione/clothes/panties/bikini_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:067f86468483450fbca8bc073cbc4a10d191aa1163810a9458fdffd25682c7b5 +size 1722 diff --git a/game/characters/hermione/clothes/panties/bikini_panties_1/1.webp b/game/characters/hermione/clothes/panties/bikini_panties_1/1.webp new file mode 100644 index 00000000..caf93d28 --- /dev/null +++ b/game/characters/hermione/clothes/panties/bikini_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4adbb71deeaece69345dfbce01f0fb1ec15c008f3234843e2868e08b15c28e3 +size 1806 diff --git a/game/characters/hermione/clothes/panties/bikini_panties_1/outline.webp b/game/characters/hermione/clothes/panties/bikini_panties_1/outline.webp new file mode 100644 index 00000000..7bbd807f --- /dev/null +++ b/game/characters/hermione/clothes/panties/bikini_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:517ab629b27efc36507ef35f8faaa720f1c2cec8b97ee86cb17db5f899a80827 +size 2940 diff --git a/game/characters/hermione/clothes/panties/bikini_panties_2/0.webp b/game/characters/hermione/clothes/panties/bikini_panties_2/0.webp new file mode 100644 index 00000000..fc553ed1 --- /dev/null +++ b/game/characters/hermione/clothes/panties/bikini_panties_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d70431f79ccfb6d387fd82253e78a0e55fcb5904f0f39e8136b212d99890d62 +size 2374 diff --git a/game/characters/hermione/clothes/panties/bikini_panties_2/1.webp b/game/characters/hermione/clothes/panties/bikini_panties_2/1.webp new file mode 100644 index 00000000..dff89ea6 --- /dev/null +++ b/game/characters/hermione/clothes/panties/bikini_panties_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17914dd04b231ddc5905ecc2ae73c97f877c075be16c98baf3c9ba4869ccb531 +size 2472 diff --git a/game/characters/hermione/clothes/panties/bikini_panties_2/extra.webp b/game/characters/hermione/clothes/panties/bikini_panties_2/extra.webp new file mode 100644 index 00000000..bdb94a36 --- /dev/null +++ b/game/characters/hermione/clothes/panties/bikini_panties_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32048a56e39ef9d47bb831746ca99810b35f8257cf6f470752dcab683364f583 +size 1424 diff --git a/game/characters/hermione/clothes/panties/bikini_panties_2/outline.webp b/game/characters/hermione/clothes/panties/bikini_panties_2/outline.webp new file mode 100644 index 00000000..8b229ce8 --- /dev/null +++ b/game/characters/hermione/clothes/panties/bikini_panties_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87ae8f1cb1f66ccbb8847270d8eccbd031060b0ec87808336a8a5e9cfda6efc9 +size 3472 diff --git a/game/characters/hermione/clothes/panties/bikini_panties_2/skin.webp b/game/characters/hermione/clothes/panties/bikini_panties_2/skin.webp new file mode 100644 index 00000000..b52a7c72 --- /dev/null +++ b/game/characters/hermione/clothes/panties/bikini_panties_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d507d0a3e3098f98e2b5a8ca668269fcbc12eef218897a3d26ac789afcc6731f +size 2880 diff --git a/game/characters/hermione/clothes/panties/fishnet_panties/0.webp b/game/characters/hermione/clothes/panties/fishnet_panties/0.webp new file mode 100644 index 00000000..a9b83a53 --- /dev/null +++ b/game/characters/hermione/clothes/panties/fishnet_panties/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f932461d1ef2f9f1dbbd0a693b1f8ae030b7c45f97207dd91eae6cd9996f90a +size 10720 diff --git a/game/characters/hermione/clothes/panties/fishnet_panties/outline.webp b/game/characters/hermione/clothes/panties/fishnet_panties/outline.webp new file mode 100644 index 00000000..72bbf02a --- /dev/null +++ b/game/characters/hermione/clothes/panties/fishnet_panties/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49ffcf11bce057234f7c2448abdb7e938fa37844baf88a35242c06a3834e7e91 +size 4480 diff --git a/game/characters/hermione/clothes/panties/hslut_panties/0.webp b/game/characters/hermione/clothes/panties/hslut_panties/0.webp new file mode 100644 index 00000000..10afd8a6 --- /dev/null +++ b/game/characters/hermione/clothes/panties/hslut_panties/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5205f6ceb4a8e4488cb1140b550d7d04e0244069dd8b1b2349a4457421d8440f +size 2378 diff --git a/game/characters/hermione/clothes/panties/hslut_panties/1.webp b/game/characters/hermione/clothes/panties/hslut_panties/1.webp new file mode 100644 index 00000000..d21129e0 --- /dev/null +++ b/game/characters/hermione/clothes/panties/hslut_panties/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21a0c1b8af09402e09c803fa8538c62abdcab47778048d62a13a77f1fb205081 +size 1738 diff --git a/game/characters/hermione/clothes/panties/hslut_panties/extra.webp b/game/characters/hermione/clothes/panties/hslut_panties/extra.webp new file mode 100644 index 00000000..c0f34fda --- /dev/null +++ b/game/characters/hermione/clothes/panties/hslut_panties/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a75a1bb172cc6bfdf98d869282a2d28d781f826eefd3645ae2e6130b73b5ebfc +size 1894 diff --git a/game/characters/hermione/clothes/panties/hslut_panties/outline.webp b/game/characters/hermione/clothes/panties/hslut_panties/outline.webp new file mode 100644 index 00000000..82732d3c --- /dev/null +++ b/game/characters/hermione/clothes/panties/hslut_panties/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea6c81a93183701232881fece61b8cb1a80cfffa707996ff93df54a1fc5ef9a8 +size 2126 diff --git a/game/characters/hermione/clothes/panties/latex_panties/0.webp b/game/characters/hermione/clothes/panties/latex_panties/0.webp new file mode 100644 index 00000000..56ef2731 --- /dev/null +++ b/game/characters/hermione/clothes/panties/latex_panties/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e463631c8e2c78c6cf9ca47b48a23ceb83d1c8c5e7089df4ecd625faf5047647 +size 3302 diff --git a/game/characters/hermione/clothes/panties/latex_panties/extra.webp b/game/characters/hermione/clothes/panties/latex_panties/extra.webp new file mode 100644 index 00000000..7e00676a --- /dev/null +++ b/game/characters/hermione/clothes/panties/latex_panties/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a4daf0218c8614c72ecf56fb75eee4528bd998b375ce232f3760373498e94b8 +size 1048 diff --git a/game/characters/hermione/clothes/panties/latex_panties/outline.webp b/game/characters/hermione/clothes/panties/latex_panties/outline.webp new file mode 100644 index 00000000..d24d3f72 --- /dev/null +++ b/game/characters/hermione/clothes/panties/latex_panties/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64a719f55d9bca60a27694646bfe45452ed18c3c3c65e13499e9682ee337bdfc +size 4272 diff --git a/game/characters/hermione/clothes/panties/pizza_panties/0.webp b/game/characters/hermione/clothes/panties/pizza_panties/0.webp new file mode 100644 index 00000000..23788d00 --- /dev/null +++ b/game/characters/hermione/clothes/panties/pizza_panties/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1ba28cb769badde8b75ca0d3b990092f01d62784e2a96f5c8e97559c5466283 +size 3304 diff --git a/game/characters/hermione/clothes/panties/pizza_panties/outline.webp b/game/characters/hermione/clothes/panties/pizza_panties/outline.webp new file mode 100644 index 00000000..5ad355f5 --- /dev/null +++ b/game/characters/hermione/clothes/panties/pizza_panties/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30bd9b2c697606ee0f11b8eae5009e8ca481c39b0900114332fe069c26e807ac +size 10690 diff --git a/game/characters/hermione/clothes/panties/pizza_panties/overlay.webp b/game/characters/hermione/clothes/panties/pizza_panties/overlay.webp new file mode 100644 index 00000000..d77a728b --- /dev/null +++ b/game/characters/hermione/clothes/panties/pizza_panties/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d219405ee63d4031159f34c7462bfc336157443427490730750d14070356531f +size 4802 diff --git a/game/characters/hermione/clothes/panties/poker_panties_1/0.webp b/game/characters/hermione/clothes/panties/poker_panties_1/0.webp new file mode 100644 index 00000000..a47c3d50 --- /dev/null +++ b/game/characters/hermione/clothes/panties/poker_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cbfa4150a10b6e8748087b9f78e27376bd6802ced562293997e1c63bcbe671b +size 4978 diff --git a/game/characters/hermione/clothes/panties/poker_panties_1/1.webp b/game/characters/hermione/clothes/panties/poker_panties_1/1.webp new file mode 100644 index 00000000..ab4bd8e6 --- /dev/null +++ b/game/characters/hermione/clothes/panties/poker_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47bf2c6b37771fd9beb6b5b646dec00d5ca4075c1f58401d5c4eb3b58a65a715 +size 8884 diff --git a/game/characters/hermione/clothes/panties/poker_panties_1/2.webp b/game/characters/hermione/clothes/panties/poker_panties_1/2.webp new file mode 100644 index 00000000..c57fadbd --- /dev/null +++ b/game/characters/hermione/clothes/panties/poker_panties_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fb235374b5563ff0dad64ffeb1f0de0d3276ddc749c8d5f27778b65d8b1732d +size 1712 diff --git a/game/characters/hermione/clothes/panties/poker_panties_1/extra.webp b/game/characters/hermione/clothes/panties/poker_panties_1/extra.webp new file mode 100644 index 00000000..fa1ead18 --- /dev/null +++ b/game/characters/hermione/clothes/panties/poker_panties_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70df3b40d99295358853f97823208261bb0b837ff7baf534483bfe90130711bd +size 4558 diff --git a/game/characters/hermione/clothes/panties/poker_panties_1/outline.webp b/game/characters/hermione/clothes/panties/poker_panties_1/outline.webp new file mode 100644 index 00000000..3ca231f2 --- /dev/null +++ b/game/characters/hermione/clothes/panties/poker_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44feb3ef8e3fbfa957e0e8fcd2208f8d6b311d35b629703c403af6ccd874e26d +size 5830 diff --git a/game/characters/hermione/clothes/panties/poker_panties_1/skin.webp b/game/characters/hermione/clothes/panties/poker_panties_1/skin.webp new file mode 100644 index 00000000..7f05393d --- /dev/null +++ b/game/characters/hermione/clothes/panties/poker_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34a3e1238efebd9493635676e5f8114c40aeb9f5e6265e9381ded9c317cfc114 +size 4622 diff --git a/game/characters/hermione/clothes/panties/ribbon/0.webp b/game/characters/hermione/clothes/panties/ribbon/0.webp new file mode 100644 index 00000000..0436fb55 --- /dev/null +++ b/game/characters/hermione/clothes/panties/ribbon/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fb084ac786d08f69727ea53cf7418e8e202729abd42381d34560a332cb58e9e +size 8424 diff --git a/game/characters/hermione/clothes/panties/ribbon/extra.webp b/game/characters/hermione/clothes/panties/ribbon/extra.webp new file mode 100644 index 00000000..b5bd6ad8 --- /dev/null +++ b/game/characters/hermione/clothes/panties/ribbon/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcb4ef5366fee67cde9facbcff42819a84d1296da2f7ad7a7c111d6004474cb1 +size 3556 diff --git a/game/characters/hermione/clothes/panties/ribbon/outline.webp b/game/characters/hermione/clothes/panties/ribbon/outline.webp new file mode 100644 index 00000000..6482d8b5 --- /dev/null +++ b/game/characters/hermione/clothes/panties/ribbon/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3a135ec2462263ba3d271986f7076d1dfedcfc21befc04d51d67d229296c7ed +size 8068 diff --git a/game/characters/hermione/clothes/panties/ribbon/skin.webp b/game/characters/hermione/clothes/panties/ribbon/skin.webp new file mode 100644 index 00000000..47e67d62 --- /dev/null +++ b/game/characters/hermione/clothes/panties/ribbon/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5588ee9b28229cbd7991efa45aff603720f346cdf3f94a4cf9fd5205ce1da8e +size 3614 diff --git a/game/characters/hermione/clothes/panties/sling_panties/0.webp b/game/characters/hermione/clothes/panties/sling_panties/0.webp new file mode 100644 index 00000000..77d7f987 --- /dev/null +++ b/game/characters/hermione/clothes/panties/sling_panties/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1abacca5f334a73ce213e471f779712c9bc4ae464aa4a57d5c2f471d3c15db9 +size 2632 diff --git a/game/characters/hermione/clothes/panties/sling_panties/1.webp b/game/characters/hermione/clothes/panties/sling_panties/1.webp new file mode 100644 index 00000000..e1a454a8 --- /dev/null +++ b/game/characters/hermione/clothes/panties/sling_panties/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a60c6848f1aa29b3b7907f5ebdda23a8c5edfcd789dad478640cd6f9d4a2faa +size 3734 diff --git a/game/characters/hermione/clothes/panties/sling_panties/extra.webp b/game/characters/hermione/clothes/panties/sling_panties/extra.webp new file mode 100644 index 00000000..64eda6cc --- /dev/null +++ b/game/characters/hermione/clothes/panties/sling_panties/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0da57d3a835741930b1850798f2f3f8b712b82d739a40d282fce6de4b589630e +size 1872 diff --git a/game/characters/hermione/clothes/panties/sling_panties/outline.webp b/game/characters/hermione/clothes/panties/sling_panties/outline.webp new file mode 100644 index 00000000..97c107e2 --- /dev/null +++ b/game/characters/hermione/clothes/panties/sling_panties/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a47d84904d7f31644bfbe98e851f60548fa0af1eb7ab1f3f94ba7e563fef7e9f +size 4220 diff --git a/game/characters/hermione/clothes/panties/sling_panties/skin.webp b/game/characters/hermione/clothes/panties/sling_panties/skin.webp new file mode 100644 index 00000000..9b0cd8ec --- /dev/null +++ b/game/characters/hermione/clothes/panties/sling_panties/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:404573f716ec29749f9020f7039ef5a8f0738a6466409f6140c311a7f9167920 +size 2996 diff --git a/game/characters/hermione/clothes/panties/sports_panties/0.webp b/game/characters/hermione/clothes/panties/sports_panties/0.webp new file mode 100644 index 00000000..c43c6edc --- /dev/null +++ b/game/characters/hermione/clothes/panties/sports_panties/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39246ecd6992273d912677b20aed11fc32f0393ccd255eb9b6d08f375a175ca6 +size 4606 diff --git a/game/characters/hermione/clothes/panties/sports_panties/1.webp b/game/characters/hermione/clothes/panties/sports_panties/1.webp new file mode 100644 index 00000000..6eb086ef --- /dev/null +++ b/game/characters/hermione/clothes/panties/sports_panties/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:505cec9d21662675053efadd617c9697207e3057528c4465b2df4a2db5ec9fde +size 1258 diff --git a/game/characters/hermione/clothes/panties/sports_panties/outline.webp b/game/characters/hermione/clothes/panties/sports_panties/outline.webp new file mode 100644 index 00000000..6faeab5b --- /dev/null +++ b/game/characters/hermione/clothes/panties/sports_panties/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebf51718fa36aca3c7b2cd17c343558019f60c9e400d00c33a2bd88736fc5364 +size 5538 diff --git a/game/characters/hermione/clothes/piercing/belly_dick/0.webp b/game/characters/hermione/clothes/piercing/belly_dick/0.webp new file mode 100644 index 00000000..95b20ba3 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/belly_dick/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d828946cdfe6094932e5556fb5e3e999a9f8d2d8da8a8f9c900a5320bb34538 +size 854 diff --git a/game/characters/hermione/clothes/piercing/belly_dick/extra.webp b/game/characters/hermione/clothes/piercing/belly_dick/extra.webp new file mode 100644 index 00000000..d58b667c --- /dev/null +++ b/game/characters/hermione/clothes/piercing/belly_dick/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bc8f3d354518793cc4e005013e3725149883564e97549e84f1360f5c24a2d12 +size 768 diff --git a/game/characters/hermione/clothes/piercing/belly_dick/outline.webp b/game/characters/hermione/clothes/piercing/belly_dick/outline.webp new file mode 100644 index 00000000..39e2cb9d --- /dev/null +++ b/game/characters/hermione/clothes/piercing/belly_dick/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb48a579f40a290396e219557ed12b3dc7ea1e9b56a7d82b97475a2f1b273813 +size 964 diff --git a/game/characters/hermione/clothes/piercing/belly_heart/0.webp b/game/characters/hermione/clothes/piercing/belly_heart/0.webp new file mode 100644 index 00000000..abb34bc1 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/belly_heart/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a633a46ea58e9952cecfa4cd2f8abd40639aa447ecf770a6fdbf54989da272af +size 766 diff --git a/game/characters/hermione/clothes/piercing/belly_heart/extra.webp b/game/characters/hermione/clothes/piercing/belly_heart/extra.webp new file mode 100644 index 00000000..0c6826a7 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/belly_heart/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab7fdfbfc937fa084212731f88ce8e34e6232703f4990659a16e1192e6362bd8 +size 698 diff --git a/game/characters/hermione/clothes/piercing/belly_heart/outline.webp b/game/characters/hermione/clothes/piercing/belly_heart/outline.webp new file mode 100644 index 00000000..eaa8554a --- /dev/null +++ b/game/characters/hermione/clothes/piercing/belly_heart/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d999a24748e4606555af326384a56b2f7a0fc10a5f5e235f1fd2b96a2ab91a6 +size 836 diff --git a/game/characters/hermione/clothes/piercing/belly_stud/0.webp b/game/characters/hermione/clothes/piercing/belly_stud/0.webp new file mode 100644 index 00000000..def91405 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/belly_stud/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14d6b423da96345fa4cbbd85effe385ec30444e311b09b09f59a2685d8775b14 +size 564 diff --git a/game/characters/hermione/clothes/piercing/belly_stud/extra.webp b/game/characters/hermione/clothes/piercing/belly_stud/extra.webp new file mode 100644 index 00000000..0718abb8 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/belly_stud/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf2f5129a6075afbfa4a77a4c6f8a5a3906f876573caaa2173f9b69900253739 +size 568 diff --git a/game/characters/hermione/clothes/piercing/belly_stud/outline.webp b/game/characters/hermione/clothes/piercing/belly_stud/outline.webp new file mode 100644 index 00000000..187a0e32 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/belly_stud/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de258201d40ff196be130bbe83f1435895cc80dbde8fc4b84d880daaa8541186 +size 582 diff --git a/game/characters/hermione/clothes/piercing/clit_stud/0.webp b/game/characters/hermione/clothes/piercing/clit_stud/0.webp new file mode 100644 index 00000000..257120fb --- /dev/null +++ b/game/characters/hermione/clothes/piercing/clit_stud/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eca42bb00f88e83b6679204cf79c9662acd13322bfe74aaae006e9a38866c0d7 +size 574 diff --git a/game/characters/hermione/clothes/piercing/clit_stud/extra.webp b/game/characters/hermione/clothes/piercing/clit_stud/extra.webp new file mode 100644 index 00000000..c82967d4 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/clit_stud/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94c6ecab5efaadf740c1ce815fa2bec57581e88947c1682344852ad4addae5c0 +size 548 diff --git a/game/characters/hermione/clothes/piercing/clit_stud/outline.webp b/game/characters/hermione/clothes/piercing/clit_stud/outline.webp new file mode 100644 index 00000000..1fce1fea --- /dev/null +++ b/game/characters/hermione/clothes/piercing/clit_stud/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4181867c93adf74c40e187b9b72e528c4318bb06e7d6a400ba139c878306a5eb +size 544 diff --git a/game/characters/hermione/clothes/piercing/nipple_bells/0.webp b/game/characters/hermione/clothes/piercing/nipple_bells/0.webp new file mode 100644 index 00000000..1303c213 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_bells/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5dd5259f042a812af39417da065f6d0f15cc03d3c132e6da1cc7d5a876bbb638 +size 1300 diff --git a/game/characters/hermione/clothes/piercing/nipple_bells/extra.webp b/game/characters/hermione/clothes/piercing/nipple_bells/extra.webp new file mode 100644 index 00000000..484e8ff2 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_bells/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b1942ec20a2981eef95c80c72faeb9130bb5d268300b5e12237c7f0cf95865b +size 602 diff --git a/game/characters/hermione/clothes/piercing/nipple_bells/outline.webp b/game/characters/hermione/clothes/piercing/nipple_bells/outline.webp new file mode 100644 index 00000000..4e0ae8c1 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_bells/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:606b5ca6b62a9405dc240ea5b8b390736b31fd8fb00446f69379939ee11f011a +size 1656 diff --git a/game/characters/hermione/clothes/piercing/nipple_rings/0.webp b/game/characters/hermione/clothes/piercing/nipple_rings/0.webp new file mode 100644 index 00000000..1cb4501b --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_rings/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fa9d56cd547ef2daabb06c436b7aa036279fc1741fea1a722eb2904a88645f7 +size 720 diff --git a/game/characters/hermione/clothes/piercing/nipple_rings/extra.webp b/game/characters/hermione/clothes/piercing/nipple_rings/extra.webp new file mode 100644 index 00000000..7ead1282 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_rings/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e87ee3cd91a56a3fc4fbe8f1b4da53a1e927b5ee18d4ee10070674d11fce0ce +size 584 diff --git a/game/characters/hermione/clothes/piercing/nipple_rings/outline.webp b/game/characters/hermione/clothes/piercing/nipple_rings/outline.webp new file mode 100644 index 00000000..2713d9f3 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_rings/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:612260b0835a356c10c447d7cd90284d048ecd842643dbf78a278351348693ce +size 836 diff --git a/game/characters/hermione/clothes/piercing/nipple_rings2/0.webp b/game/characters/hermione/clothes/piercing/nipple_rings2/0.webp new file mode 100644 index 00000000..9f1d504c --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_rings2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bd1dbaf433bb0c4c57def27521d4a125052059f33a3432a3e8f9721ed7f8049 +size 726 diff --git a/game/characters/hermione/clothes/piercing/nipple_rings2/extra.webp b/game/characters/hermione/clothes/piercing/nipple_rings2/extra.webp new file mode 100644 index 00000000..7ead1282 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_rings2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e87ee3cd91a56a3fc4fbe8f1b4da53a1e927b5ee18d4ee10070674d11fce0ce +size 584 diff --git a/game/characters/hermione/clothes/piercing/nipple_rings2/outline.webp b/game/characters/hermione/clothes/piercing/nipple_rings2/outline.webp new file mode 100644 index 00000000..b430990c --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_rings2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f71dee64ed07a4eb8750365517c5221a9ab38f8ae11aa265aef34da25aa8b767 +size 848 diff --git a/game/characters/hermione/clothes/piercing/nipple_rings3/0.webp b/game/characters/hermione/clothes/piercing/nipple_rings3/0.webp new file mode 100644 index 00000000..7850bf54 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_rings3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d5effe1d57dc200261f2ae30e0dde7d28f37f59b1817b11359002d768901b7c +size 810 diff --git a/game/characters/hermione/clothes/piercing/nipple_rings3/extra.webp b/game/characters/hermione/clothes/piercing/nipple_rings3/extra.webp new file mode 100644 index 00000000..7ead1282 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_rings3/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e87ee3cd91a56a3fc4fbe8f1b4da53a1e927b5ee18d4ee10070674d11fce0ce +size 584 diff --git a/game/characters/hermione/clothes/piercing/nipple_rings3/outline.webp b/game/characters/hermione/clothes/piercing/nipple_rings3/outline.webp new file mode 100644 index 00000000..27e1346d --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_rings3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81cadc3ae42dbe15e495a7e7107619e55525a06ac0284f1697b1c75f315c9ace +size 894 diff --git a/game/characters/hermione/clothes/piercing/nipple_stud/0.webp b/game/characters/hermione/clothes/piercing/nipple_stud/0.webp new file mode 100644 index 00000000..7268ca3c --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_stud/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:441018c37267434d1281b98ad9ac1fef41a072e441b57c4e491df14f1790cb09 +size 662 diff --git a/game/characters/hermione/clothes/piercing/nipple_stud/extra.webp b/game/characters/hermione/clothes/piercing/nipple_stud/extra.webp new file mode 100644 index 00000000..cb04b56f --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_stud/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8ec90c92f9581789a0ceac186b8b7dd4727b096cd111606d71b659b837e2c28 +size 590 diff --git a/game/characters/hermione/clothes/piercing/nipple_stud/outline.webp b/game/characters/hermione/clothes/piercing/nipple_stud/outline.webp new file mode 100644 index 00000000..eefa2ff6 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/nipple_stud/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0cbae9dc3952b83e2c3e455323545699cc6053f3137c2b5399d75a2630fde5e +size 754 diff --git a/game/characters/hermione/clothes/piercing/poker_belly_1/0.webp b/game/characters/hermione/clothes/piercing/poker_belly_1/0.webp new file mode 100644 index 00000000..5678822a --- /dev/null +++ b/game/characters/hermione/clothes/piercing/poker_belly_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f5d603e420e7e1d98ceb9013342b0c0d3cec8e4f891075c78ebe5e3dfe824c9 +size 1202 diff --git a/game/characters/hermione/clothes/piercing/poker_belly_1/1.webp b/game/characters/hermione/clothes/piercing/poker_belly_1/1.webp new file mode 100644 index 00000000..c435d7a5 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/poker_belly_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37a48b9cd39e5551f6bb54b433d62513ed20cec9d45faa9c00fde5226f680a5c +size 1232 diff --git a/game/characters/hermione/clothes/piercing/poker_belly_1/2.webp b/game/characters/hermione/clothes/piercing/poker_belly_1/2.webp new file mode 100644 index 00000000..86a02cae --- /dev/null +++ b/game/characters/hermione/clothes/piercing/poker_belly_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb42d4b45cb3cee933c66bf814977d383ad9cc9dcc9ea7bd859578b49e88ec96 +size 822 diff --git a/game/characters/hermione/clothes/piercing/poker_belly_1/3.webp b/game/characters/hermione/clothes/piercing/poker_belly_1/3.webp new file mode 100644 index 00000000..70188646 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/poker_belly_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbc513b92deabf2aeb8bc44d75ed381bd506fe8ce7e19217f6bc95f861a34a52 +size 716 diff --git a/game/characters/hermione/clothes/piercing/poker_belly_1/extra.webp b/game/characters/hermione/clothes/piercing/poker_belly_1/extra.webp new file mode 100644 index 00000000..eaee630d --- /dev/null +++ b/game/characters/hermione/clothes/piercing/poker_belly_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1059ad24a4371692a9a41c7c72f7a6f26b50e18ef9e1c126f146538e16d1bfaa +size 1598 diff --git a/game/characters/hermione/clothes/piercing/poker_belly_1/outline.webp b/game/characters/hermione/clothes/piercing/poker_belly_1/outline.webp new file mode 100644 index 00000000..61f43720 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/poker_belly_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9012551c595583bfa19ffe4af99359fa94479ef64628f22de6b52f12e9e082fa +size 1226 diff --git a/game/characters/hermione/clothes/piercing/poker_belly_1/skin.webp b/game/characters/hermione/clothes/piercing/poker_belly_1/skin.webp new file mode 100644 index 00000000..3605a030 --- /dev/null +++ b/game/characters/hermione/clothes/piercing/poker_belly_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfbb7f107f550ed50bd96430f4b9d8c4229b13ad506ac5b698847397092b24ea +size 902 diff --git a/game/characters/hermione/clothes/plugs/large.webp b/game/characters/hermione/clothes/plugs/large.webp new file mode 100644 index 00000000..2d5ff6a2 --- /dev/null +++ b/game/characters/hermione/clothes/plugs/large.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c62e5bc1ef5557cd6ceac2db89f0f8a490694c91dc73b23680f41db39d3e723 +size 43118 diff --git a/game/characters/hermione/clothes/plugs/medium.webp b/game/characters/hermione/clothes/plugs/medium.webp new file mode 100644 index 00000000..5e857b67 --- /dev/null +++ b/game/characters/hermione/clothes/plugs/medium.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:469b177aa2b905c1076f8cea1b8eaf3ed5de679a48d51f22cc77e04545ebc5ad +size 41542 diff --git a/game/characters/hermione/clothes/plugs/small.webp b/game/characters/hermione/clothes/plugs/small.webp new file mode 100644 index 00000000..70439372 --- /dev/null +++ b/game/characters/hermione/clothes/plugs/small.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49f37f49195e8e6b22040cbe5d1b35a37baefdd9372c51db8a69be2d35a8b751 +size 23570 diff --git a/game/characters/hermione/clothes/pubes/arrow/0.webp b/game/characters/hermione/clothes/pubes/arrow/0.webp new file mode 100644 index 00000000..bb309222 --- /dev/null +++ b/game/characters/hermione/clothes/pubes/arrow/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:354dc0a425b7e119ae0dc7b9c56b8f1a6989df752f214fd847f3f7a5493520a0 +size 2050 diff --git a/game/characters/hermione/clothes/pubes/arrow/outline.webp b/game/characters/hermione/clothes/pubes/arrow/outline.webp new file mode 100644 index 00000000..5b89513a --- /dev/null +++ b/game/characters/hermione/clothes/pubes/arrow/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a48303b8da80feae021bf78c4a4712baec6a230b4aab72d7656c8b5053d08bd +size 1322 diff --git a/game/characters/hermione/clothes/pubes/beaver/0.webp b/game/characters/hermione/clothes/pubes/beaver/0.webp new file mode 100644 index 00000000..f2acecc3 --- /dev/null +++ b/game/characters/hermione/clothes/pubes/beaver/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:627907cd3252c0d591bde016e7c5fc9e876463946dbf860e3456baa2e68cbc35 +size 2398 diff --git a/game/characters/hermione/clothes/pubes/beaver/outline.webp b/game/characters/hermione/clothes/pubes/beaver/outline.webp new file mode 100644 index 00000000..a0a7efa0 --- /dev/null +++ b/game/characters/hermione/clothes/pubes/beaver/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7ca800fe7895a83c0d1a1d153f5dd858d653c33e57f707ae916f7ef42be6f64 +size 3436 diff --git a/game/characters/hermione/clothes/pubes/stuble/0.webp b/game/characters/hermione/clothes/pubes/stuble/0.webp new file mode 100644 index 00000000..59468e1b --- /dev/null +++ b/game/characters/hermione/clothes/pubes/stuble/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57601f6bac0aedf13a657dbe0d771993a07c8463eb53cf0d1cdcf3e6c2a94994 +size 1098 diff --git a/game/characters/hermione/clothes/pubes/unshaved/0.webp b/game/characters/hermione/clothes/pubes/unshaved/0.webp new file mode 100644 index 00000000..c8bf8106 --- /dev/null +++ b/game/characters/hermione/clothes/pubes/unshaved/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5eb2bf60d2748d2fb1562d6718a224587ce6c478b916222a25397f584320a3d +size 1800 diff --git a/game/characters/hermione/clothes/robe/bioshock_robe/0.webp b/game/characters/hermione/clothes/robe/bioshock_robe/0.webp new file mode 100644 index 00000000..0140821e --- /dev/null +++ b/game/characters/hermione/clothes/robe/bioshock_robe/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4f53d7923eb09e027cf0cc5de4b98eba3ccf4476d60ffe7dcfc2af5359f11a0 +size 12686 diff --git a/game/characters/hermione/clothes/robe/bioshock_robe/1.webp b/game/characters/hermione/clothes/robe/bioshock_robe/1.webp new file mode 100644 index 00000000..429d7d6d --- /dev/null +++ b/game/characters/hermione/clothes/robe/bioshock_robe/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fed488732bf83db4bdd78884f80929d010e970e88b7d967e8e85f3816671bf2 +size 3608 diff --git a/game/characters/hermione/clothes/robe/bioshock_robe/outline.webp b/game/characters/hermione/clothes/robe/bioshock_robe/outline.webp new file mode 100644 index 00000000..4796b3f9 --- /dev/null +++ b/game/characters/hermione/clothes/robe/bioshock_robe/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ae3754ba66fbbf16355ce4ef98bb6a089fd0d2368636d4a5cb3fc68c08df493 +size 13736 diff --git a/game/characters/hermione/clothes/robe/robe_school_1/0.webp b/game/characters/hermione/clothes/robe/robe_school_1/0.webp new file mode 100644 index 00000000..7362e57c --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:486e62383c2c387711c51322be4ff414e9f271e658924f5e36b3788ebe08e79c +size 46832 diff --git a/game/characters/hermione/clothes/robe/robe_school_1/0_back.webp b/game/characters/hermione/clothes/robe/robe_school_1/0_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_1/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/hermione/clothes/robe/robe_school_1/1.webp b/game/characters/hermione/clothes/robe/robe_school_1/1.webp new file mode 100644 index 00000000..cb74597f --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a1ae297206983dcafd8d9da4281ab02c8c03a936b607011b0d17242c30186bd +size 9730 diff --git a/game/characters/hermione/clothes/robe/robe_school_1/1_back.webp b/game/characters/hermione/clothes/robe/robe_school_1/1_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_1/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/hermione/clothes/robe/robe_school_1/2.webp b/game/characters/hermione/clothes/robe/robe_school_1/2.webp new file mode 100644 index 00000000..7deec85d --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66b077bfea9771f879031bd2d2c8ffaadbfa1060e62d6ba88c1a0aa1e3fe8d94 +size 20452 diff --git a/game/characters/hermione/clothes/robe/robe_school_1/2_back.webp b/game/characters/hermione/clothes/robe/robe_school_1/2_back.webp new file mode 100644 index 00000000..42b3ed6e --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_1/2_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9a7640d3b647f5f7a7e0622af9ce36768c9ca29711e59f4ed1b74f99d42a266 +size 11202 diff --git a/game/characters/hermione/clothes/robe/robe_school_1/mask.webp b/game/characters/hermione/clothes/robe/robe_school_1/mask.webp new file mode 100644 index 00000000..20a93984 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2b31d4d6fb7fdd9b84a400b3fbbfa48227de0f0fe22ebd477a65f8b46fc2239 +size 19566 diff --git a/game/characters/hermione/clothes/robe/robe_school_1/outline.webp b/game/characters/hermione/clothes/robe/robe_school_1/outline.webp new file mode 100644 index 00000000..b547b738 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35e247dee1eb334f528128f75bb9880878e3852f50cbb61ceb26cca0bd9429b9 +size 41926 diff --git a/game/characters/hermione/clothes/robe/robe_school_1/outline_back.webp b/game/characters/hermione/clothes/robe/robe_school_1/outline_back.webp new file mode 100644 index 00000000..8707148e --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_1/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c45bab1cc53d164f3825f5d10e5e8cffb8da9eb2d3be8e4db333eec0b7f8eae6 +size 10388 diff --git a/game/characters/hermione/clothes/robe/robe_school_1/skin.webp b/game/characters/hermione/clothes/robe/robe_school_1/skin.webp new file mode 100644 index 00000000..68d5c7ec --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e98365a95fbdbd5918009abedf76c9eb850afc0296331e6eb868e39c021e6a1c +size 10878 diff --git a/game/characters/hermione/clothes/robe/robe_school_2/0.webp b/game/characters/hermione/clothes/robe/robe_school_2/0.webp new file mode 100644 index 00000000..da6c3e7b --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce79cd3afe11814d546ded117656176d01a1ed3f0ff69208c593912b02a82a53 +size 49448 diff --git a/game/characters/hermione/clothes/robe/robe_school_2/0_back.webp b/game/characters/hermione/clothes/robe/robe_school_2/0_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_2/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/hermione/clothes/robe/robe_school_2/1.webp b/game/characters/hermione/clothes/robe/robe_school_2/1.webp new file mode 100644 index 00000000..cb74597f --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a1ae297206983dcafd8d9da4281ab02c8c03a936b607011b0d17242c30186bd +size 9730 diff --git a/game/characters/hermione/clothes/robe/robe_school_2/1_back.webp b/game/characters/hermione/clothes/robe/robe_school_2/1_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_2/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/hermione/clothes/robe/robe_school_2/2.webp b/game/characters/hermione/clothes/robe/robe_school_2/2.webp new file mode 100644 index 00000000..3df2ebc8 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee338da4cc640dd56abae7c796386bd84111769b78818bf9412b6f9d6af056ca +size 20534 diff --git a/game/characters/hermione/clothes/robe/robe_school_2/2_back.webp b/game/characters/hermione/clothes/robe/robe_school_2/2_back.webp new file mode 100644 index 00000000..80e889ac --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_2/2_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cdd743044f2103d29dbcff18d89a16aa68d5769e5db50444a7cd77bbc770413 +size 11458 diff --git a/game/characters/hermione/clothes/robe/robe_school_2/extra.webp b/game/characters/hermione/clothes/robe/robe_school_2/extra.webp new file mode 100644 index 00000000..1a4bafdb --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea95851b66b61de3a9d6a3893b646452704caead4129b05e3b9cd5e5cbd0f599 +size 15672 diff --git a/game/characters/hermione/clothes/robe/robe_school_2/mask.webp b/game/characters/hermione/clothes/robe/robe_school_2/mask.webp new file mode 100644 index 00000000..20a93984 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_2/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2b31d4d6fb7fdd9b84a400b3fbbfa48227de0f0fe22ebd477a65f8b46fc2239 +size 19566 diff --git a/game/characters/hermione/clothes/robe/robe_school_2/outline.webp b/game/characters/hermione/clothes/robe/robe_school_2/outline.webp new file mode 100644 index 00000000..29629086 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4676eb21107b167038eb5eee54c54c7c6177d153508139f95e10cd3ae1e48189 +size 44152 diff --git a/game/characters/hermione/clothes/robe/robe_school_2/outline_back.webp b/game/characters/hermione/clothes/robe/robe_school_2/outline_back.webp new file mode 100644 index 00000000..3a054e51 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_2/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c02f43adb32eca348749896baab0d4ee683bbc995b77de5b62f1d09384188771 +size 10584 diff --git a/game/characters/hermione/clothes/robe/robe_school_2/skin.webp b/game/characters/hermione/clothes/robe/robe_school_2/skin.webp new file mode 100644 index 00000000..68d5c7ec --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e98365a95fbdbd5918009abedf76c9eb850afc0296331e6eb868e39c021e6a1c +size 10878 diff --git a/game/characters/hermione/clothes/robe/robe_school_3/0.webp b/game/characters/hermione/clothes/robe/robe_school_3/0.webp new file mode 100644 index 00000000..d0eeed35 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efa2cadfd6e2975298006bb33b69ce7f8665d42a21622420ea84166dc8baff61 +size 47770 diff --git a/game/characters/hermione/clothes/robe/robe_school_3/0_back.webp b/game/characters/hermione/clothes/robe/robe_school_3/0_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_3/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/hermione/clothes/robe/robe_school_3/1.webp b/game/characters/hermione/clothes/robe/robe_school_3/1.webp new file mode 100644 index 00000000..cb74597f --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a1ae297206983dcafd8d9da4281ab02c8c03a936b607011b0d17242c30186bd +size 9730 diff --git a/game/characters/hermione/clothes/robe/robe_school_3/1_back.webp b/game/characters/hermione/clothes/robe/robe_school_3/1_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_3/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/hermione/clothes/robe/robe_school_3/2.webp b/game/characters/hermione/clothes/robe/robe_school_3/2.webp new file mode 100644 index 00000000..59269768 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_3/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e81764ae873a3e9748d08c934c731e3781d9960194c6cc56e97d7c1b422fc9e0 +size 20540 diff --git a/game/characters/hermione/clothes/robe/robe_school_3/2_back.webp b/game/characters/hermione/clothes/robe/robe_school_3/2_back.webp new file mode 100644 index 00000000..026fafdd --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_3/2_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8f8750024b5db847302daa0afc310489eeecd279705dd2f0a41475462db65bb +size 11706 diff --git a/game/characters/hermione/clothes/robe/robe_school_3/extra.webp b/game/characters/hermione/clothes/robe/robe_school_3/extra.webp new file mode 100644 index 00000000..fb3d4536 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_3/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09fc746089d695be53124c0385f5e2dd8b50456e2f76bf735934c2d9c348e928 +size 27316 diff --git a/game/characters/hermione/clothes/robe/robe_school_3/mask.webp b/game/characters/hermione/clothes/robe/robe_school_3/mask.webp new file mode 100644 index 00000000..20a93984 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_3/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2b31d4d6fb7fdd9b84a400b3fbbfa48227de0f0fe22ebd477a65f8b46fc2239 +size 19566 diff --git a/game/characters/hermione/clothes/robe/robe_school_3/outline.webp b/game/characters/hermione/clothes/robe/robe_school_3/outline.webp new file mode 100644 index 00000000..909c9372 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa52817103ff9c9ff7d951beaf11bfd423aaf12328f09eb56f1cc2dfb1f3ea38 +size 44876 diff --git a/game/characters/hermione/clothes/robe/robe_school_3/outline_back.webp b/game/characters/hermione/clothes/robe/robe_school_3/outline_back.webp new file mode 100644 index 00000000..75d6f6df --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_3/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a3f15b34e2b1680d915b93f78b05fc7197eca408a4ee74823923cd0e37c7d1e +size 10928 diff --git a/game/characters/hermione/clothes/robe/robe_school_3/skin.webp b/game/characters/hermione/clothes/robe/robe_school_3/skin.webp new file mode 100644 index 00000000..68d5c7ec --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_3/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e98365a95fbdbd5918009abedf76c9eb850afc0296331e6eb868e39c021e6a1c +size 10878 diff --git a/game/characters/hermione/clothes/robe/robe_school_4/0.webp b/game/characters/hermione/clothes/robe/robe_school_4/0.webp new file mode 100644 index 00000000..9b83cf38 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a3ecffbc585ef2e08afa672f114ca3a04863d6977ea630e663edd5046eee589 +size 32108 diff --git a/game/characters/hermione/clothes/robe/robe_school_4/0_back.webp b/game/characters/hermione/clothes/robe/robe_school_4/0_back.webp new file mode 100644 index 00000000..c86b5e32 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_4/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5eacd7e46426aec6e41db0c8c6e586079088fcb378152d792a0ccfcb47661bdf +size 20944 diff --git a/game/characters/hermione/clothes/robe/robe_school_4/1.webp b/game/characters/hermione/clothes/robe/robe_school_4/1.webp new file mode 100644 index 00000000..714b425b --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e287a75dbd5a0caef4376d98e1547eeb23563d5bf947df53283672b19547fa61 +size 9704 diff --git a/game/characters/hermione/clothes/robe/robe_school_4/1_back.webp b/game/characters/hermione/clothes/robe/robe_school_4/1_back.webp new file mode 100644 index 00000000..712780b1 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_4/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03872ed727616af3b579cb55c179b9ad119c33914b0226bf2c6bf6bf3981a405 +size 9622 diff --git a/game/characters/hermione/clothes/robe/robe_school_4/2.webp b/game/characters/hermione/clothes/robe/robe_school_4/2.webp new file mode 100644 index 00000000..d00ac72b --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_4/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61a75b734299d0a2ff39679a6c6d9ce0d562497b473107da2c4ea750a67c1a59 +size 17700 diff --git a/game/characters/hermione/clothes/robe/robe_school_4/2_back.webp b/game/characters/hermione/clothes/robe/robe_school_4/2_back.webp new file mode 100644 index 00000000..4c77d818 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_4/2_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a16fd937f6a2d1d8b807cb609189673d303b3861d2de8bede17179028241e434 +size 20042 diff --git a/game/characters/hermione/clothes/robe/robe_school_4/mask.webp b/game/characters/hermione/clothes/robe/robe_school_4/mask.webp new file mode 100644 index 00000000..83429bf5 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_4/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7429b3e2325b50b8e6b716f6f8564edaa46ad8055838591529000f1f15f9310d +size 14344 diff --git a/game/characters/hermione/clothes/robe/robe_school_4/outline.webp b/game/characters/hermione/clothes/robe/robe_school_4/outline.webp new file mode 100644 index 00000000..083e1c27 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41ba54180f68e34092c44a1efc5c742205d0117b539f67d58617fd20522957f5 +size 31380 diff --git a/game/characters/hermione/clothes/robe/robe_school_4/outline_back.webp b/game/characters/hermione/clothes/robe/robe_school_4/outline_back.webp new file mode 100644 index 00000000..28f8ce98 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_4/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f45c387761770fd3ea360f4f5a6193824d718b299d843fcc5ea83c1c2e4358a +size 24736 diff --git a/game/characters/hermione/clothes/robe/robe_school_4/skin.webp b/game/characters/hermione/clothes/robe/robe_school_4/skin.webp new file mode 100644 index 00000000..637bdd14 --- /dev/null +++ b/game/characters/hermione/clothes/robe/robe_school_4/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bf369c353e2eec9d3893a944424c8081924cf9ee796d7da8e1701939509d51d +size 12668 diff --git a/game/characters/hermione/clothes/robe/witch_cape/0.webp b/game/characters/hermione/clothes/robe/witch_cape/0.webp new file mode 100644 index 00000000..5792ea6a --- /dev/null +++ b/game/characters/hermione/clothes/robe/witch_cape/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd23972026e98196c1fc47976eee17d11762e452b599e7d0acdca0041b521aeb +size 15272 diff --git a/game/characters/hermione/clothes/robe/witch_cape/0_back.webp b/game/characters/hermione/clothes/robe/witch_cape/0_back.webp new file mode 100644 index 00000000..ad0e2910 --- /dev/null +++ b/game/characters/hermione/clothes/robe/witch_cape/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e5fad460cbadcf3acb668a0999d86e785a010f59bd204d3de17c71399bb6066 +size 3660 diff --git a/game/characters/hermione/clothes/robe/witch_cape/1.webp b/game/characters/hermione/clothes/robe/witch_cape/1.webp new file mode 100644 index 00000000..c00491e0 --- /dev/null +++ b/game/characters/hermione/clothes/robe/witch_cape/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3295103a52083a1ac1c42506a3ef4fad37e341976abf68978a44171b03f4350d +size 1836 diff --git a/game/characters/hermione/clothes/robe/witch_cape/2.webp b/game/characters/hermione/clothes/robe/witch_cape/2.webp new file mode 100644 index 00000000..0c010043 --- /dev/null +++ b/game/characters/hermione/clothes/robe/witch_cape/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e07d43e8b748694ab53192f40ff1baf25bee7f3873f73d210251325e7aded97a +size 1264 diff --git a/game/characters/hermione/clothes/robe/witch_cape/outline.webp b/game/characters/hermione/clothes/robe/witch_cape/outline.webp new file mode 100644 index 00000000..c44075be --- /dev/null +++ b/game/characters/hermione/clothes/robe/witch_cape/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7892bfaf88082f5ab047e01465315cf994225f7c9f39789e1eb69b3afc8df2e +size 16440 diff --git a/game/characters/hermione/clothes/robe/wrestling_robe/0.webp b/game/characters/hermione/clothes/robe/wrestling_robe/0.webp new file mode 100644 index 00000000..c1de37e6 --- /dev/null +++ b/game/characters/hermione/clothes/robe/wrestling_robe/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bf5e32d86dec68c069b7d395190ecd2c2ac78ae21e014d5ca0dad58802495ef +size 29438 diff --git a/game/characters/hermione/clothes/robe/wrestling_robe/1.webp b/game/characters/hermione/clothes/robe/wrestling_robe/1.webp new file mode 100644 index 00000000..9b391c5c --- /dev/null +++ b/game/characters/hermione/clothes/robe/wrestling_robe/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af461d2f6f28be7bc5519e5295cc3553982b08467c3ddbae88b142fec85a07db +size 14728 diff --git a/game/characters/hermione/clothes/robe/wrestling_robe/extra.webp b/game/characters/hermione/clothes/robe/wrestling_robe/extra.webp new file mode 100644 index 00000000..6b44943c --- /dev/null +++ b/game/characters/hermione/clothes/robe/wrestling_robe/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3c1e0bf67c1bdfe7574c323fd048d8e991cb986a4f617132bf45484fbc11177 +size 2712 diff --git a/game/characters/hermione/clothes/robe/wrestling_robe/mask.webp b/game/characters/hermione/clothes/robe/wrestling_robe/mask.webp new file mode 100644 index 00000000..a71d45d2 --- /dev/null +++ b/game/characters/hermione/clothes/robe/wrestling_robe/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d4fc6a84e95a743eb24852d3dbc59f608251d1251e9f46fbfe9ef4a7273fd5a +size 11520 diff --git a/game/characters/hermione/clothes/robe/wrestling_robe/outline.webp b/game/characters/hermione/clothes/robe/wrestling_robe/outline.webp new file mode 100644 index 00000000..44269f65 --- /dev/null +++ b/game/characters/hermione/clothes/robe/wrestling_robe/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0aa97528398836efe4719a3493ed5bf1834127e07939590d2ce4b905e7dae941 +size 40502 diff --git a/game/characters/hermione/clothes/stockings/bunny_stockings_1/0.webp b/game/characters/hermione/clothes/stockings/bunny_stockings_1/0.webp new file mode 100644 index 00000000..1b821374 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/bunny_stockings_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d56824e0a954465bbc19bf9c2ff35813a9a8b6efded51737c653f1124e126c0 +size 5812 diff --git a/game/characters/hermione/clothes/stockings/bunny_stockings_1/outline.webp b/game/characters/hermione/clothes/stockings/bunny_stockings_1/outline.webp new file mode 100644 index 00000000..39787d6d --- /dev/null +++ b/game/characters/hermione/clothes/stockings/bunny_stockings_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2efcf70c8f1336e9e1319dad8bee7de218718dc47aac554e1939680b6f2848e2 +size 39020 diff --git a/game/characters/hermione/clothes/stockings/cat_legs/0.webp b/game/characters/hermione/clothes/stockings/cat_legs/0.webp new file mode 100644 index 00000000..26f4b802 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/cat_legs/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8b48fbf3c05cb140fb6ccf1baaa32cd1fc0dec6b85de290421638c22886aa6a +size 19794 diff --git a/game/characters/hermione/clothes/stockings/cat_legs/outline.webp b/game/characters/hermione/clothes/stockings/cat_legs/outline.webp new file mode 100644 index 00000000..79da867d --- /dev/null +++ b/game/characters/hermione/clothes/stockings/cat_legs/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76185ee26b529428af2bc0ce8decc4a6b5e17e081cc162e39a455f8d0a5f1b3a +size 5270 diff --git a/game/characters/hermione/clothes/stockings/hslut_socks/0.webp b/game/characters/hermione/clothes/stockings/hslut_socks/0.webp new file mode 100644 index 00000000..beadbe52 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/hslut_socks/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5987a1be46b838db4688c774264ef76d96fe7d9653a960d7e8e6f9ff6ffa5e47 +size 4166 diff --git a/game/characters/hermione/clothes/stockings/hslut_socks/outline.webp b/game/characters/hermione/clothes/stockings/hslut_socks/outline.webp new file mode 100644 index 00000000..74e49ad1 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/hslut_socks/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9404bbdbd04b09a07c87692dcbd7c79c72354df80ad911707bb3c55176761bc +size 6592 diff --git a/game/characters/hermione/clothes/stockings/latex_stockings/0.webp b/game/characters/hermione/clothes/stockings/latex_stockings/0.webp new file mode 100644 index 00000000..ca71b8d3 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/latex_stockings/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cae79e2a2fdd20325bdb1842f82787a565b8d38db8b64cf930e9c25d0531112f +size 7006 diff --git a/game/characters/hermione/clothes/stockings/latex_stockings/extra.webp b/game/characters/hermione/clothes/stockings/latex_stockings/extra.webp new file mode 100644 index 00000000..9b95fca8 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/latex_stockings/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c0bc11466316aaf0d3db116f7789c8aa3bec68b8f72cf3c90a074bcc137244d +size 1846 diff --git a/game/characters/hermione/clothes/stockings/latex_stockings/outline.webp b/game/characters/hermione/clothes/stockings/latex_stockings/outline.webp new file mode 100644 index 00000000..33467920 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/latex_stockings/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc4da3447d81b89b44095e1eafe8d7e2113ffaad0a622029523dfda1c57c7236 +size 6884 diff --git a/game/characters/hermione/clothes/stockings/maid_stockings_1/0.webp b/game/characters/hermione/clothes/stockings/maid_stockings_1/0.webp new file mode 100644 index 00000000..7f1bbb84 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/maid_stockings_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:423c1089cf7b3f5e405ee670c02f6fca585501687cd6d2a5af71f3e03ea85698 +size 5410 diff --git a/game/characters/hermione/clothes/stockings/maid_stockings_1/extra.webp b/game/characters/hermione/clothes/stockings/maid_stockings_1/extra.webp new file mode 100644 index 00000000..ffc80a5b --- /dev/null +++ b/game/characters/hermione/clothes/stockings/maid_stockings_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:103476d2793fcdf11acc0f86dc6b7984e1b752ba74d0ce813929b10e50a527e1 +size 1122 diff --git a/game/characters/hermione/clothes/stockings/maid_stockings_1/outline.webp b/game/characters/hermione/clothes/stockings/maid_stockings_1/outline.webp new file mode 100644 index 00000000..3aee2c08 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/maid_stockings_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c2cbf238ee09620e18484bbae5179470d4563b8b6524e786f02a18bea40b455 +size 5656 diff --git a/game/characters/hermione/clothes/stockings/msmarv_stockings/0.webp b/game/characters/hermione/clothes/stockings/msmarv_stockings/0.webp new file mode 100644 index 00000000..3681af59 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/msmarv_stockings/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b04e08eca626e2f6831906c8858bf6afcaaf109d3deabb96f8e6212faecfb8f6 +size 12038 diff --git a/game/characters/hermione/clothes/stockings/msmarv_stockings/1.webp b/game/characters/hermione/clothes/stockings/msmarv_stockings/1.webp new file mode 100644 index 00000000..c88d7b1d --- /dev/null +++ b/game/characters/hermione/clothes/stockings/msmarv_stockings/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10abe6ee1902c5135f4a7b5e5905431ad24ae13890e24308f590d36f1cc3fd88 +size 9332 diff --git a/game/characters/hermione/clothes/stockings/msmarv_stockings/outline.webp b/game/characters/hermione/clothes/stockings/msmarv_stockings/outline.webp new file mode 100644 index 00000000..07ccbc1d --- /dev/null +++ b/game/characters/hermione/clothes/stockings/msmarv_stockings/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d49fbfc1fd9a36cde055581eae2ccf13fa79ccefc1e1f476d8747b8eb3f69d1d +size 7648 diff --git a/game/characters/hermione/clothes/stockings/pantyhose_1/0.webp b/game/characters/hermione/clothes/stockings/pantyhose_1/0.webp new file mode 100644 index 00000000..42d87e2a --- /dev/null +++ b/game/characters/hermione/clothes/stockings/pantyhose_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c62cc0ffce6e3bb00f5f1f3a90f3560b6efaa593065fb0079874adfc2bdba11 +size 13286 diff --git a/game/characters/hermione/clothes/stockings/pantyhose_1/outline.webp b/game/characters/hermione/clothes/stockings/pantyhose_1/outline.webp new file mode 100644 index 00000000..8dd82230 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/pantyhose_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ea8cfb9dacb129669e920dc6731b88fb68a6ad1cf90954aed79a607ff3796a8 +size 8424 diff --git a/game/characters/hermione/clothes/stockings/pantyhose_2/0.webp b/game/characters/hermione/clothes/stockings/pantyhose_2/0.webp new file mode 100644 index 00000000..9447df16 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/pantyhose_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6cebf08069880700bf77d7f714252eb969213a4973c13db7faa9652e2dc1342 +size 15700 diff --git a/game/characters/hermione/clothes/stockings/pantyhose_2/outline.webp b/game/characters/hermione/clothes/stockings/pantyhose_2/outline.webp new file mode 100644 index 00000000..22b810da --- /dev/null +++ b/game/characters/hermione/clothes/stockings/pantyhose_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:911dd5b35ac971ca1cbdc07569db551905da4a59035003f2622686c1f12ee15c +size 9626 diff --git a/game/characters/hermione/clothes/stockings/pantyhose_3/0.webp b/game/characters/hermione/clothes/stockings/pantyhose_3/0.webp new file mode 100644 index 00000000..178acef0 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/pantyhose_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e316d99f483ac9cd3dfefdee9698778e06a6dcedf9150db1316973d89cc52a5d +size 20374 diff --git a/game/characters/hermione/clothes/stockings/pantyhose_3/outline.webp b/game/characters/hermione/clothes/stockings/pantyhose_3/outline.webp new file mode 100644 index 00000000..425c5142 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/pantyhose_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:221ef5bdff3d801001dc7a6969ef4822130ec54519b7d51af7b89007d374369d +size 14634 diff --git a/game/characters/hermione/clothes/stockings/poker_stockings_1/0.webp b/game/characters/hermione/clothes/stockings/poker_stockings_1/0.webp new file mode 100644 index 00000000..f16b8d45 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/poker_stockings_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2810104afadf2bfa88288be192ae745b1c1f2afc019505191cbe967ad27cfad3 +size 5014 diff --git a/game/characters/hermione/clothes/stockings/poker_stockings_1/1.webp b/game/characters/hermione/clothes/stockings/poker_stockings_1/1.webp new file mode 100644 index 00000000..6be540b7 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/poker_stockings_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff5e3b27938343f6ded36acf2e18f26cdcee4623d0989a523bb5aa14880546aa +size 6832 diff --git a/game/characters/hermione/clothes/stockings/poker_stockings_1/extra.webp b/game/characters/hermione/clothes/stockings/poker_stockings_1/extra.webp new file mode 100644 index 00000000..4ccc169e --- /dev/null +++ b/game/characters/hermione/clothes/stockings/poker_stockings_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d02ef119202381d26b66bcadefa012ccbf8651fda4bcc5e9519682491fd8324 +size 2344 diff --git a/game/characters/hermione/clothes/stockings/poker_stockings_1/outline.webp b/game/characters/hermione/clothes/stockings/poker_stockings_1/outline.webp new file mode 100644 index 00000000..c189f61c --- /dev/null +++ b/game/characters/hermione/clothes/stockings/poker_stockings_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d784bb28d40994e8b7a43460a38a3cd759ad577036e382460fa3c9f981dfb80b +size 12434 diff --git a/game/characters/hermione/clothes/stockings/poker_stockings_1/skin.webp b/game/characters/hermione/clothes/stockings/poker_stockings_1/skin.webp new file mode 100644 index 00000000..01e18614 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/poker_stockings_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b7869b2263890728ead94fa7ce5c6571d19bb876eeb5348c08716a6e84f4667 +size 6180 diff --git a/game/characters/hermione/clothes/stockings/poker_stockings_2/0.webp b/game/characters/hermione/clothes/stockings/poker_stockings_2/0.webp new file mode 100644 index 00000000..f16b8d45 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/poker_stockings_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2810104afadf2bfa88288be192ae745b1c1f2afc019505191cbe967ad27cfad3 +size 5014 diff --git a/game/characters/hermione/clothes/stockings/poker_stockings_2/1.webp b/game/characters/hermione/clothes/stockings/poker_stockings_2/1.webp new file mode 100644 index 00000000..6be540b7 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/poker_stockings_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff5e3b27938343f6ded36acf2e18f26cdcee4623d0989a523bb5aa14880546aa +size 6832 diff --git a/game/characters/hermione/clothes/stockings/poker_stockings_2/extra.webp b/game/characters/hermione/clothes/stockings/poker_stockings_2/extra.webp new file mode 100644 index 00000000..4ccc169e --- /dev/null +++ b/game/characters/hermione/clothes/stockings/poker_stockings_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d02ef119202381d26b66bcadefa012ccbf8651fda4bcc5e9519682491fd8324 +size 2344 diff --git a/game/characters/hermione/clothes/stockings/poker_stockings_2/outline.webp b/game/characters/hermione/clothes/stockings/poker_stockings_2/outline.webp new file mode 100644 index 00000000..c189f61c --- /dev/null +++ b/game/characters/hermione/clothes/stockings/poker_stockings_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d784bb28d40994e8b7a43460a38a3cd759ad577036e382460fa3c9f981dfb80b +size 12434 diff --git a/game/characters/hermione/clothes/stockings/short_meshed/0.webp b/game/characters/hermione/clothes/stockings/short_meshed/0.webp new file mode 100644 index 00000000..b05a01c9 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/short_meshed/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14eb5b49a0b0ce774140d9e239a813bf2634673774e8ae932482fa97cfd91a16 +size 5956 diff --git a/game/characters/hermione/clothes/stockings/short_meshed/1.webp b/game/characters/hermione/clothes/stockings/short_meshed/1.webp new file mode 100644 index 00000000..f454e710 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/short_meshed/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dff3c4044f6c71dfd5be0d95a4fecfbb091450efcf65dec9da06346efa5a89b6 +size 2326 diff --git a/game/characters/hermione/clothes/stockings/short_meshed/extra.webp b/game/characters/hermione/clothes/stockings/short_meshed/extra.webp new file mode 100644 index 00000000..7dd3a0d5 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/short_meshed/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d98b7b345aec91d8c5a40a6c33bf9a20916b6eccb599160202aaf5fbe49a9b81 +size 3866 diff --git a/game/characters/hermione/clothes/stockings/short_meshed/outline.webp b/game/characters/hermione/clothes/stockings/short_meshed/outline.webp new file mode 100644 index 00000000..979d3311 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/short_meshed/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b5a0409ca11050234aaba28eb1e6cfb08b9120edf3d271865d370b6eeeb4436 +size 5280 diff --git a/game/characters/hermione/clothes/stockings/stockings_1/0.webp b/game/characters/hermione/clothes/stockings/stockings_1/0.webp new file mode 100644 index 00000000..9472233d --- /dev/null +++ b/game/characters/hermione/clothes/stockings/stockings_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a56f1aa32bc3caf9b9123aec4848d5d4e1a1f6839842c8c5ad18d5b0e3a883af +size 7208 diff --git a/game/characters/hermione/clothes/stockings/stockings_1/1.webp b/game/characters/hermione/clothes/stockings/stockings_1/1.webp new file mode 100644 index 00000000..bab2005e --- /dev/null +++ b/game/characters/hermione/clothes/stockings/stockings_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0174e3d2104d9c27a49707b0c44df15d08793edc19751ce898418a867a90bfca +size 8612 diff --git a/game/characters/hermione/clothes/stockings/stockings_1/extra.webp b/game/characters/hermione/clothes/stockings/stockings_1/extra.webp new file mode 100644 index 00000000..f140c9e0 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/stockings_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6981da9b65b061b82100c3a9699821a3145e511aca39dee941c39f2cae9229d +size 944 diff --git a/game/characters/hermione/clothes/stockings/stockings_1/outline.webp b/game/characters/hermione/clothes/stockings/stockings_1/outline.webp new file mode 100644 index 00000000..62d2f691 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/stockings_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d09d7f36222f6e0f65a327af662d81c7954f296f5783008a541788e30388b177 +size 7192 diff --git a/game/characters/hermione/clothes/stockings/stockings_1/skin.webp b/game/characters/hermione/clothes/stockings/stockings_1/skin.webp new file mode 100644 index 00000000..1c40ab86 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/stockings_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3087d07d8205d40b5e75fb8d1e931cdadfb364ccddc6acfa9d043f506cfbfc4e +size 2084 diff --git a/game/characters/hermione/clothes/stockings/stockings_2/0.webp b/game/characters/hermione/clothes/stockings/stockings_2/0.webp new file mode 100644 index 00000000..d303c51b --- /dev/null +++ b/game/characters/hermione/clothes/stockings/stockings_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f019eb2eb002a807c1ad1c489c62c9385d4c7f92e7d49783794e28e13fb24c2e +size 6386 diff --git a/game/characters/hermione/clothes/stockings/stockings_2/outline.webp b/game/characters/hermione/clothes/stockings/stockings_2/outline.webp new file mode 100644 index 00000000..c8bfc330 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/stockings_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebf578b64fadd336f3c432f00ff9a1c15afe9b85e2339e2eb4bce46a7fbba1ee +size 7450 diff --git a/game/characters/hermione/clothes/stockings/witch_stockings/0.webp b/game/characters/hermione/clothes/stockings/witch_stockings/0.webp new file mode 100644 index 00000000..bb09a9a6 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/witch_stockings/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6497b0964ddd730b56eb212a0a14b4abc05eb7d7f30334de8231983cf5c39c34 +size 7956 diff --git a/game/characters/hermione/clothes/stockings/witch_stockings/1.webp b/game/characters/hermione/clothes/stockings/witch_stockings/1.webp new file mode 100644 index 00000000..c783a229 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/witch_stockings/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00a1fb0e30c76252a53eedf651895c119321d76d8023032bdede3e47330add26 +size 9638 diff --git a/game/characters/hermione/clothes/stockings/witch_stockings/outline.webp b/game/characters/hermione/clothes/stockings/witch_stockings/outline.webp new file mode 100644 index 00000000..53183c56 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/witch_stockings/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7116d36f43f2efb9fa1befde660a1b7fd2cdc67fa810bb6fc4b10487a40410a9 +size 11914 diff --git a/game/characters/hermione/clothes/stockings/xmas/0.webp b/game/characters/hermione/clothes/stockings/xmas/0.webp new file mode 100644 index 00000000..fb159fd8 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/xmas/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd3bb91aa6181c161f067770bdaed9ab84ffdb075ccb01c7752334997e2078a6 +size 9604 diff --git a/game/characters/hermione/clothes/stockings/xmas/1.webp b/game/characters/hermione/clothes/stockings/xmas/1.webp new file mode 100644 index 00000000..6fd1d3af --- /dev/null +++ b/game/characters/hermione/clothes/stockings/xmas/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:486917c18ba97f15c27fe42b4d8e42f35b000e66174cfb44a3bef0b3a66d4c66 +size 15102 diff --git a/game/characters/hermione/clothes/stockings/xmas/outline.webp b/game/characters/hermione/clothes/stockings/xmas/outline.webp new file mode 100644 index 00000000..624bbc1d --- /dev/null +++ b/game/characters/hermione/clothes/stockings/xmas/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d9923260a67710b982e4a024e5c29e89e4ca0450bffaaab480adca626a9f606 +size 13306 diff --git a/game/characters/hermione/clothes/stockings/yen_stockings/0.webp b/game/characters/hermione/clothes/stockings/yen_stockings/0.webp new file mode 100644 index 00000000..94bff67d --- /dev/null +++ b/game/characters/hermione/clothes/stockings/yen_stockings/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07030737f5d99e0e156ee7f9e48d972dd9ad44bb1672a522405681acbf48aef1 +size 33362 diff --git a/game/characters/hermione/clothes/stockings/yen_stockings/outline.webp b/game/characters/hermione/clothes/stockings/yen_stockings/outline.webp new file mode 100644 index 00000000..2a117269 --- /dev/null +++ b/game/characters/hermione/clothes/stockings/yen_stockings/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f714444b65e25b927d271df426878962d6f25e6c79fa87c6335f1ab2f65ff4c +size 5052 diff --git a/game/characters/hermione/clothes/tattoo/10g_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/10g_tattoo/0.webp new file mode 100644 index 00000000..5b224be6 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/10g_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a28cb4765b09dce2b2a38d1aa0756daaa6af82024981c1433b5e64a8b487fc35 +size 2444 diff --git a/game/characters/hermione/clothes/tattoo/bunny_tattoo1/0.webp b/game/characters/hermione/clothes/tattoo/bunny_tattoo1/0.webp new file mode 100644 index 00000000..2f356624 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/bunny_tattoo1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c37155ad9f942a13dec6f92a98a5145f6dfa00faab184c8be840bfe417580df +size 1896 diff --git a/game/characters/hermione/clothes/tattoo/cockhole_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/cockhole_tattoo/0.webp new file mode 100644 index 00000000..5276c1d8 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/cockhole_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1924f2287d4742c110d56d558c3466d2b127c9cc9143eaf8af09d7fedac4a3e0 +size 2148 diff --git a/game/characters/hermione/clothes/tattoo/cumhere_tattoo1/0.webp b/game/characters/hermione/clothes/tattoo/cumhere_tattoo1/0.webp new file mode 100644 index 00000000..40003f6c --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/cumhere_tattoo1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1393c4b3b222f751e5b1315fcd0edec0e1d332691d2583ec91c08eb6ae0abbc +size 2540 diff --git a/game/characters/hermione/clothes/tattoo/cumhere_tattoo2/0.webp b/game/characters/hermione/clothes/tattoo/cumhere_tattoo2/0.webp new file mode 100644 index 00000000..c5fffa42 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/cumhere_tattoo2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c04c522f8fa7e710f4ff44b2d545bdb77dc004f43455e79a62b61317cf22818f +size 2852 diff --git a/game/characters/hermione/clothes/tattoo/cumslut_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/cumslut_tattoo/0.webp new file mode 100644 index 00000000..52546665 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/cumslut_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cf9c81041ac4f0a042b859ad0feb274bb1f9e94ded11211f2d63d37a2db1ca8 +size 2698 diff --git a/game/characters/hermione/clothes/tattoo/cunt_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/cunt_tattoo/0.webp new file mode 100644 index 00000000..ae176b24 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/cunt_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:391c414a7e821c992b89636ae47263eb69577899877af060e003aea0b94d1565 +size 2116 diff --git a/game/characters/hermione/clothes/tattoo/deatheater_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/deatheater_tattoo/0.webp new file mode 100644 index 00000000..436a7d7e --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/deatheater_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75ec3b3c0da0b95c58cdcfcac8f324c273d089a7e1919b7833a9a3c36f53cac4 +size 2286 diff --git a/game/characters/hermione/clothes/tattoo/deposit_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/deposit_tattoo/0.webp new file mode 100644 index 00000000..ca095b67 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/deposit_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0965590d96033eeb4fc316d94bc1b3b19351f542a93b45523b8bf315187fec5d +size 2474 diff --git a/game/characters/hermione/clothes/tattoo/free_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/free_tattoo/0.webp new file mode 100644 index 00000000..bf4f140f --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/free_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5da158f47522bc07623040df449d030de284d97656b5a98321bae63eb922452b +size 2316 diff --git a/game/characters/hermione/clothes/tattoo/fuckme_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/fuckme_tattoo/0.webp new file mode 100644 index 00000000..8c16d40b --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/fuckme_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:488aa66ddc85310233a5ddc8c0f2b9ba7223e0743c208670f5dff58d223ff140 +size 2780 diff --git a/game/characters/hermione/clothes/tattoo/lockhart_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/lockhart_tattoo/0.webp new file mode 100644 index 00000000..cb3b5dd5 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/lockhart_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e2f8c6687531a1a3ee59126164d20874d81686ac43ca5fafcc3bc3b356f6dd7 +size 4852 diff --git a/game/characters/hermione/clothes/tattoo/mudblood_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/mudblood_tattoo/0.webp new file mode 100644 index 00000000..b925d7b8 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/mudblood_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cff8d47996af12ac79697f63e7df45e3f0bc3879bf9e352536ff60c24334d030 +size 2446 diff --git a/game/characters/hermione/clothes/tattoo/nocondom_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/nocondom_tattoo/0.webp new file mode 100644 index 00000000..7769f984 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/nocondom_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae346138dd0a0572c8831a1833389c98417ee2bec462a208cf52d1e4e3ecfdb2 +size 2034 diff --git a/game/characters/hermione/clothes/tattoo/punkblood_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/punkblood_tattoo/0.webp new file mode 100644 index 00000000..cb7f4cda --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/punkblood_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2d0a8382d3ce71a4e9ec27f5affd7e27c262b46ca780cd33c256188833d03b5 +size 1532 diff --git a/game/characters/hermione/clothes/tattoo/punkblood_tattoo/1.webp b/game/characters/hermione/clothes/tattoo/punkblood_tattoo/1.webp new file mode 100644 index 00000000..154662c0 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/punkblood_tattoo/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2013f73a4fafb8e6cb9fabbf2413ecc2e286cae6c37e1bdccb4fedccd1a65cb8 +size 1358 diff --git a/game/characters/hermione/clothes/tattoo/punkblood_tattoo/outline.webp b/game/characters/hermione/clothes/tattoo/punkblood_tattoo/outline.webp new file mode 100644 index 00000000..27c0f6cd --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/punkblood_tattoo/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f31b151cdd0c668fd408ceb813b6b34d24f3ea8b071cb6dd132e4d1da8241f2f +size 1484 diff --git a/game/characters/hermione/clothes/tattoo/twist_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/twist_tattoo/0.webp new file mode 100644 index 00000000..23a2f234 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/twist_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1af46fc6ad8d080ddc5f5a1b55ba88238afe5ef66499e10ae97053f8c75bb942 +size 2370 diff --git a/game/characters/hermione/clothes/tattoo/whore_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/whore_tattoo/0.webp new file mode 100644 index 00000000..62db0221 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/whore_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6a603ae215509d055ad556f06e98f2bdf0f6ca453e42dc7dd637ea634f3bf40 +size 2658 diff --git a/game/characters/hermione/clothes/tattoo/womb_tattoo/0.webp b/game/characters/hermione/clothes/tattoo/womb_tattoo/0.webp new file mode 100644 index 00000000..9e74c387 --- /dev/null +++ b/game/characters/hermione/clothes/tattoo/womb_tattoo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98751a82a9002941758a2cf45c02de0ed4bba7dc3da5bf1b993a9d3b78720dfe +size 2848 diff --git a/game/characters/hermione/clothes/top/ball_dress_1/0.webp b/game/characters/hermione/clothes/top/ball_dress_1/0.webp new file mode 100644 index 00000000..728d80ec --- /dev/null +++ b/game/characters/hermione/clothes/top/ball_dress_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bc185903eb96a9efdc26605f02c13cc7a8005ae5db0b62a62648814b20c2840 +size 17768 diff --git a/game/characters/hermione/clothes/top/ball_dress_1/1.webp b/game/characters/hermione/clothes/top/ball_dress_1/1.webp new file mode 100644 index 00000000..8d427d2d --- /dev/null +++ b/game/characters/hermione/clothes/top/ball_dress_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10b2c6e4b993563da2221f885fb9e04b48993e98f703c0d7ba84137e2178e2ea +size 11534 diff --git a/game/characters/hermione/clothes/top/ball_dress_1/extra.webp b/game/characters/hermione/clothes/top/ball_dress_1/extra.webp new file mode 100644 index 00000000..52ee842d --- /dev/null +++ b/game/characters/hermione/clothes/top/ball_dress_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1935ab4fc8a921d2b5d1b1fc1e4106a991c0a7ad49a0fa4f2b379138ac12723d +size 3346 diff --git a/game/characters/hermione/clothes/top/ball_dress_1/mask.webp b/game/characters/hermione/clothes/top/ball_dress_1/mask.webp new file mode 100644 index 00000000..7d51e18e --- /dev/null +++ b/game/characters/hermione/clothes/top/ball_dress_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8bee167504dd00f17d62c7f1c7df5776c0037d99d141795c69a0287dd33cd6b +size 5826 diff --git a/game/characters/hermione/clothes/top/ball_dress_1/outline.webp b/game/characters/hermione/clothes/top/ball_dress_1/outline.webp new file mode 100644 index 00000000..b850a97f --- /dev/null +++ b/game/characters/hermione/clothes/top/ball_dress_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d908848e887bb315dbe283898bf304ea3587ec185321dca1766aa7e157770185 +size 22852 diff --git a/game/characters/hermione/clothes/top/bioshock_corset/0.webp b/game/characters/hermione/clothes/top/bioshock_corset/0.webp new file mode 100644 index 00000000..77d946c1 --- /dev/null +++ b/game/characters/hermione/clothes/top/bioshock_corset/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e4b6a834cda458c9ab5256f8270ee7c8d6f710f3e5866ffa6240c77b04ae5b3 +size 13526 diff --git a/game/characters/hermione/clothes/top/bioshock_corset/1.webp b/game/characters/hermione/clothes/top/bioshock_corset/1.webp new file mode 100644 index 00000000..2774d47d --- /dev/null +++ b/game/characters/hermione/clothes/top/bioshock_corset/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b26acccc726ceba7a2b8568ae2cd29f4ebfdba3ae98e7d88a7393552fd6086c +size 7856 diff --git a/game/characters/hermione/clothes/top/bioshock_corset/2.webp b/game/characters/hermione/clothes/top/bioshock_corset/2.webp new file mode 100644 index 00000000..8ea9fc9d --- /dev/null +++ b/game/characters/hermione/clothes/top/bioshock_corset/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:916abe1cb2b97e31ed3cc6694ae5427faa039a709480f18da97414360db6ed88 +size 10484 diff --git a/game/characters/hermione/clothes/top/bioshock_corset/mask.webp b/game/characters/hermione/clothes/top/bioshock_corset/mask.webp new file mode 100644 index 00000000..61bddfb3 --- /dev/null +++ b/game/characters/hermione/clothes/top/bioshock_corset/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07e3a66dd2c2e5fd15c118827a4f1d8befff6a6d984e7f197d581765df754b97 +size 1818 diff --git a/game/characters/hermione/clothes/top/bioshock_corset/outline.webp b/game/characters/hermione/clothes/top/bioshock_corset/outline.webp new file mode 100644 index 00000000..5a823935 --- /dev/null +++ b/game/characters/hermione/clothes/top/bioshock_corset/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22947cf3500f7579277abd9c54d1c9e161c5e7481697e02ac7461e2812b0e17a +size 22438 diff --git a/game/characters/hermione/clothes/top/bioshock_corset/overlay.webp b/game/characters/hermione/clothes/top/bioshock_corset/overlay.webp new file mode 100644 index 00000000..7825801c --- /dev/null +++ b/game/characters/hermione/clothes/top/bioshock_corset/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a42dc8c1154b80c22b1752044ce95f80a4e955daebe7633992e5c96806eb1e3c +size 3308 diff --git a/game/characters/hermione/clothes/top/bunny_top_1/0.webp b/game/characters/hermione/clothes/top/bunny_top_1/0.webp new file mode 100644 index 00000000..d6ebb8a2 --- /dev/null +++ b/game/characters/hermione/clothes/top/bunny_top_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3f4ebb2e8b64896cb71fa0b0b0da9e7c467daf558e4fcbf93dbd2196fc3b8d3 +size 12598 diff --git a/game/characters/hermione/clothes/top/bunny_top_1/extra.webp b/game/characters/hermione/clothes/top/bunny_top_1/extra.webp new file mode 100644 index 00000000..c4458cc8 --- /dev/null +++ b/game/characters/hermione/clothes/top/bunny_top_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da7b1c915f79b975711c926538c6aeffe21272d2700bc37d5c98238322e168ae +size 2568 diff --git a/game/characters/hermione/clothes/top/bunny_top_1/outline.webp b/game/characters/hermione/clothes/top/bunny_top_1/outline.webp new file mode 100644 index 00000000..2bca1320 --- /dev/null +++ b/game/characters/hermione/clothes/top/bunny_top_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc34b228e70fa943b4cb0e4eda1f9027656c4586a837ceef4009932d9d7cbd40 +size 10666 diff --git a/game/characters/hermione/clothes/top/casual_top_1/0.webp b/game/characters/hermione/clothes/top/casual_top_1/0.webp new file mode 100644 index 00000000..590c0611 --- /dev/null +++ b/game/characters/hermione/clothes/top/casual_top_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0eb1f80161a4e91d3bbce725c3efb63ac26f6cc9395ef1d948a45b170820053 +size 24704 diff --git a/game/characters/hermione/clothes/top/casual_top_1/1.webp b/game/characters/hermione/clothes/top/casual_top_1/1.webp new file mode 100644 index 00000000..efde9084 --- /dev/null +++ b/game/characters/hermione/clothes/top/casual_top_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99ae1b2525219feef6b2e28730de065c471e73df4e2d680468e99b9776dfef29 +size 15998 diff --git a/game/characters/hermione/clothes/top/casual_top_1/extra.webp b/game/characters/hermione/clothes/top/casual_top_1/extra.webp new file mode 100644 index 00000000..c7e81dd6 --- /dev/null +++ b/game/characters/hermione/clothes/top/casual_top_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80e73feebf78083133045b2f3be43f1d9b071d963f5fbf8906f54115b31bf5fe +size 1842 diff --git a/game/characters/hermione/clothes/top/casual_top_1/mask.webp b/game/characters/hermione/clothes/top/casual_top_1/mask.webp new file mode 100644 index 00000000..2b8a3f94 --- /dev/null +++ b/game/characters/hermione/clothes/top/casual_top_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4852524f70aec20e1c110e1d0faeb7463e87afe85537f99951e9d4fca6c970f +size 1244 diff --git a/game/characters/hermione/clothes/top/casual_top_1/outline.webp b/game/characters/hermione/clothes/top/casual_top_1/outline.webp new file mode 100644 index 00000000..4b58c121 --- /dev/null +++ b/game/characters/hermione/clothes/top/casual_top_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3df2436589bf8ae5963b6b42c437aceb0ed74934d8e0081cf3710f5faf77c2fd +size 26626 diff --git a/game/characters/hermione/clothes/top/casual_top_1/skin.webp b/game/characters/hermione/clothes/top/casual_top_1/skin.webp new file mode 100644 index 00000000..590ba9a0 --- /dev/null +++ b/game/characters/hermione/clothes/top/casual_top_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7532c50dfb214367ffc51c0d10afcbd70624f713393c0cb9b562ea1c408853d4 +size 5592 diff --git a/game/characters/hermione/clothes/top/casual_top_2/0.webp b/game/characters/hermione/clothes/top/casual_top_2/0.webp new file mode 100644 index 00000000..590c0611 --- /dev/null +++ b/game/characters/hermione/clothes/top/casual_top_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0eb1f80161a4e91d3bbce725c3efb63ac26f6cc9395ef1d948a45b170820053 +size 24704 diff --git a/game/characters/hermione/clothes/top/casual_top_2/extra.webp b/game/characters/hermione/clothes/top/casual_top_2/extra.webp new file mode 100644 index 00000000..c7e81dd6 --- /dev/null +++ b/game/characters/hermione/clothes/top/casual_top_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80e73feebf78083133045b2f3be43f1d9b071d963f5fbf8906f54115b31bf5fe +size 1842 diff --git a/game/characters/hermione/clothes/top/casual_top_2/outline.webp b/game/characters/hermione/clothes/top/casual_top_2/outline.webp new file mode 100644 index 00000000..a6a5a929 --- /dev/null +++ b/game/characters/hermione/clothes/top/casual_top_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:730824459023aa41a815e9b54a0f7e68cdc73458cd249fcc568c1f8c6e8b2624 +size 19270 diff --git a/game/characters/hermione/clothes/top/casual_top_2/skin.webp b/game/characters/hermione/clothes/top/casual_top_2/skin.webp new file mode 100644 index 00000000..5080fe3c --- /dev/null +++ b/game/characters/hermione/clothes/top/casual_top_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fac6e26d101f6499e3565b4a715a6e289add03bb6b7c3a8cdae3fe45c0c396d +size 3514 diff --git a/game/characters/hermione/clothes/top/cheerleader_top_1/0.webp b/game/characters/hermione/clothes/top/cheerleader_top_1/0.webp new file mode 100644 index 00000000..d877a4d8 --- /dev/null +++ b/game/characters/hermione/clothes/top/cheerleader_top_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9e72470e4fde979e4baab46c5f053b6d0778ba0a9f97e80c51b457712703c93 +size 4212 diff --git a/game/characters/hermione/clothes/top/cheerleader_top_1/1.webp b/game/characters/hermione/clothes/top/cheerleader_top_1/1.webp new file mode 100644 index 00000000..f2ea9072 --- /dev/null +++ b/game/characters/hermione/clothes/top/cheerleader_top_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:083d3cbdd3a9ff45fa8c4decb4ac46c6411d0854b9b18a530cbf6c83244b105a +size 12622 diff --git a/game/characters/hermione/clothes/top/cheerleader_top_1/2.webp b/game/characters/hermione/clothes/top/cheerleader_top_1/2.webp new file mode 100644 index 00000000..4b63616b --- /dev/null +++ b/game/characters/hermione/clothes/top/cheerleader_top_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:932c0570c2a29f60401cd823b3169edf0b446ce432fccc3049b61fc303cad607 +size 8104 diff --git a/game/characters/hermione/clothes/top/cheerleader_top_1/outline.webp b/game/characters/hermione/clothes/top/cheerleader_top_1/outline.webp new file mode 100644 index 00000000..c0089543 --- /dev/null +++ b/game/characters/hermione/clothes/top/cheerleader_top_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8783d79a8adbc31a2c0903ec91e4eba34a5e432795b6ff955d662fbaa74deedb +size 19532 diff --git a/game/characters/hermione/clothes/top/cheerleader_top_1/skin.webp b/game/characters/hermione/clothes/top/cheerleader_top_1/skin.webp new file mode 100644 index 00000000..09878178 --- /dev/null +++ b/game/characters/hermione/clothes/top/cheerleader_top_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80bb0281a470255e61f0605ce9e504874e1a27f422353480f883a37fa588c222 +size 3712 diff --git a/game/characters/hermione/clothes/top/cheerleader_top_2/0.webp b/game/characters/hermione/clothes/top/cheerleader_top_2/0.webp new file mode 100644 index 00000000..765a37fa --- /dev/null +++ b/game/characters/hermione/clothes/top/cheerleader_top_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:177f78e4c37a4d207aaf08f8529c7c25c85f41f4f2244098195eee4f9c31450b +size 11272 diff --git a/game/characters/hermione/clothes/top/cheerleader_top_2/1.webp b/game/characters/hermione/clothes/top/cheerleader_top_2/1.webp new file mode 100644 index 00000000..ac3a2c6f --- /dev/null +++ b/game/characters/hermione/clothes/top/cheerleader_top_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8b6973d5c6e8b7b39020bfe319c669289e5375ad6acd6b21a4406d7c45b4aaf +size 11526 diff --git a/game/characters/hermione/clothes/top/cheerleader_top_2/outline.webp b/game/characters/hermione/clothes/top/cheerleader_top_2/outline.webp new file mode 100644 index 00000000..a411e184 --- /dev/null +++ b/game/characters/hermione/clothes/top/cheerleader_top_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d13c1b87cb7642bd7ebf209643c8d6978fb12afa1e2aa01aa7d113b2063f3c64 +size 14758 diff --git a/game/characters/hermione/clothes/top/cheerleader_top_2/skin.webp b/game/characters/hermione/clothes/top/cheerleader_top_2/skin.webp new file mode 100644 index 00000000..04d3922f --- /dev/null +++ b/game/characters/hermione/clothes/top/cheerleader_top_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb7848fe9884cfa7d3069a034d7b76ea2f2cbef818afdd79b3e465807c1fedf1 +size 2764 diff --git a/game/characters/hermione/clothes/top/croft_top/0.webp b/game/characters/hermione/clothes/top/croft_top/0.webp new file mode 100644 index 00000000..77ee7ee8 --- /dev/null +++ b/game/characters/hermione/clothes/top/croft_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9c8cf53dfbc8ec5332e870e375157ec63181217493d716b9abf27d8d942bfac +size 9560 diff --git a/game/characters/hermione/clothes/top/croft_top/outline.webp b/game/characters/hermione/clothes/top/croft_top/outline.webp new file mode 100644 index 00000000..07ad6a46 --- /dev/null +++ b/game/characters/hermione/clothes/top/croft_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61d7393dd4ea2bbccfef2e535be0264a4ca779622067d4dd741960fa7467aff3 +size 12758 diff --git a/game/characters/hermione/clothes/top/egypt_top/0.webp b/game/characters/hermione/clothes/top/egypt_top/0.webp new file mode 100644 index 00000000..78f588d0 --- /dev/null +++ b/game/characters/hermione/clothes/top/egypt_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae50719a1e88d6c238a47f0f18145d741d4fe6d54c2d144b029e7a480c9b96f6 +size 10542 diff --git a/game/characters/hermione/clothes/top/egypt_top/outline.webp b/game/characters/hermione/clothes/top/egypt_top/outline.webp new file mode 100644 index 00000000..aa78f91e --- /dev/null +++ b/game/characters/hermione/clothes/top/egypt_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d9b25c809636a85afa0a9cb893037b9a7680e49b5d5376fd077b1d9d9edfb05 +size 14008 diff --git a/game/characters/hermione/clothes/top/fishnet_onepiece/0.webp b/game/characters/hermione/clothes/top/fishnet_onepiece/0.webp new file mode 100644 index 00000000..a69fb345 --- /dev/null +++ b/game/characters/hermione/clothes/top/fishnet_onepiece/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:badb5dab62e3f473db93c0035fc444a1c925074e5bcfb1a73a5f696413a11f26 +size 5702 diff --git a/game/characters/hermione/clothes/top/fishnet_onepiece/1.webp b/game/characters/hermione/clothes/top/fishnet_onepiece/1.webp new file mode 100644 index 00000000..9fdd5e93 --- /dev/null +++ b/game/characters/hermione/clothes/top/fishnet_onepiece/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:732531e1cf556d7a859c5e242349bb11099f9abbe45ed84ab59850c8a66771f9 +size 68396 diff --git a/game/characters/hermione/clothes/top/fishnet_onepiece/outline.webp b/game/characters/hermione/clothes/top/fishnet_onepiece/outline.webp new file mode 100644 index 00000000..84acaab3 --- /dev/null +++ b/game/characters/hermione/clothes/top/fishnet_onepiece/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8c48b02a4919065d43fd14cee0a820f87d7575cd5490af830691a380434b8a1 +size 13282 diff --git a/game/characters/hermione/clothes/top/fishnet_top/0.webp b/game/characters/hermione/clothes/top/fishnet_top/0.webp new file mode 100644 index 00000000..d7613a96 --- /dev/null +++ b/game/characters/hermione/clothes/top/fishnet_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af3df35e0b9b9c6c1c64bf36831c77fb4cbda5c02f75c1b5cc8e120204ae8b77 +size 29772 diff --git a/game/characters/hermione/clothes/top/fishnet_top/outline.webp b/game/characters/hermione/clothes/top/fishnet_top/outline.webp new file mode 100644 index 00000000..993bd7bd --- /dev/null +++ b/game/characters/hermione/clothes/top/fishnet_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4ac54b0b6e7970c1024beb62631dbb4b31c26468f02c615fbefd43af14437af +size 8766 diff --git a/game/characters/hermione/clothes/top/hslut_top/0.webp b/game/characters/hermione/clothes/top/hslut_top/0.webp new file mode 100644 index 00000000..fb7e4b99 --- /dev/null +++ b/game/characters/hermione/clothes/top/hslut_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d098367ac0baa96b248acd812bc68f67890e79fcbf70d55d67c5cd04fcdc1401 +size 4746 diff --git a/game/characters/hermione/clothes/top/hslut_top/1.webp b/game/characters/hermione/clothes/top/hslut_top/1.webp new file mode 100644 index 00000000..9d30ca82 --- /dev/null +++ b/game/characters/hermione/clothes/top/hslut_top/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae35a43a1009cc21746540d17019abbad1c193654a6b714b84a5de09c38bd99e +size 3370 diff --git a/game/characters/hermione/clothes/top/hslut_top/extra.webp b/game/characters/hermione/clothes/top/hslut_top/extra.webp new file mode 100644 index 00000000..30b4f543 --- /dev/null +++ b/game/characters/hermione/clothes/top/hslut_top/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83ede6e76f514901f104534e3ca8231d58e8884ded495dc4946b0059595fd49f +size 2270 diff --git a/game/characters/hermione/clothes/top/hslut_top/outline.webp b/game/characters/hermione/clothes/top/hslut_top/outline.webp new file mode 100644 index 00000000..404c9568 --- /dev/null +++ b/game/characters/hermione/clothes/top/hslut_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb5fe1c5c6ff4e1e852306ee2eb5d47ad9f4436111c0666bd44277972d7fcf28 +size 7428 diff --git a/game/characters/hermione/clothes/top/latex_dress_1/0.webp b/game/characters/hermione/clothes/top/latex_dress_1/0.webp new file mode 100644 index 00000000..9ada26d6 --- /dev/null +++ b/game/characters/hermione/clothes/top/latex_dress_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5edc9529806dccd7d861ab826e918e26389df007fcb02e3fcf663b1bad3da86e +size 13610 diff --git a/game/characters/hermione/clothes/top/latex_dress_1/1.webp b/game/characters/hermione/clothes/top/latex_dress_1/1.webp new file mode 100644 index 00000000..bff07ef7 --- /dev/null +++ b/game/characters/hermione/clothes/top/latex_dress_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76f3199b27cdac1e7c728ce8d3bdb76f2bf2875c3bcbf7684c074745969168cd +size 2032 diff --git a/game/characters/hermione/clothes/top/latex_dress_1/extra.webp b/game/characters/hermione/clothes/top/latex_dress_1/extra.webp new file mode 100644 index 00000000..2341c9e3 --- /dev/null +++ b/game/characters/hermione/clothes/top/latex_dress_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae05ec6acf1eba1330c47e36a39bf77f74286d877fbdd0c9a13810fbc2144dff +size 6502 diff --git a/game/characters/hermione/clothes/top/latex_dress_1/outline.webp b/game/characters/hermione/clothes/top/latex_dress_1/outline.webp new file mode 100644 index 00000000..736bdd1b --- /dev/null +++ b/game/characters/hermione/clothes/top/latex_dress_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c423094251016edb3bce3fdb6f31e5aa515dc54fcd5ebee87c7cb1c6d431bd5e +size 23068 diff --git a/game/characters/hermione/clothes/top/latex_top/0.webp b/game/characters/hermione/clothes/top/latex_top/0.webp new file mode 100644 index 00000000..08ad01f4 --- /dev/null +++ b/game/characters/hermione/clothes/top/latex_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13ccf2653c21e1a3df944fe229bb0e96f8465248a95b7e024b25830681ef4bc0 +size 6452 diff --git a/game/characters/hermione/clothes/top/latex_top/extra.webp b/game/characters/hermione/clothes/top/latex_top/extra.webp new file mode 100644 index 00000000..098e4466 --- /dev/null +++ b/game/characters/hermione/clothes/top/latex_top/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b573e843ebb5ba7e8d6e9d69ab6516eb7643d6513b0e4cb94a235e2f879d41d +size 1526 diff --git a/game/characters/hermione/clothes/top/latex_top/outline.webp b/game/characters/hermione/clothes/top/latex_top/outline.webp new file mode 100644 index 00000000..a553381b --- /dev/null +++ b/game/characters/hermione/clothes/top/latex_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe5cca376a2fad57c4f6351f50db740c810257a1d571cb00c0ec27249730b58f +size 6684 diff --git a/game/characters/hermione/clothes/top/latex_top/skin.webp b/game/characters/hermione/clothes/top/latex_top/skin.webp new file mode 100644 index 00000000..d7877b2b --- /dev/null +++ b/game/characters/hermione/clothes/top/latex_top/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:921536d63214ca334139e1e47e85da6df4f030079be104a369f4fff5dc8c9bed +size 1252 diff --git a/game/characters/hermione/clothes/top/maid_dress_1/0.webp b/game/characters/hermione/clothes/top/maid_dress_1/0.webp new file mode 100644 index 00000000..ced4dfb0 --- /dev/null +++ b/game/characters/hermione/clothes/top/maid_dress_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f11dc480ea89587387e79366214b0053ebe315b59459ebc6f16485efa5d9a5d +size 19368 diff --git a/game/characters/hermione/clothes/top/maid_dress_1/1.webp b/game/characters/hermione/clothes/top/maid_dress_1/1.webp new file mode 100644 index 00000000..5885f8cf --- /dev/null +++ b/game/characters/hermione/clothes/top/maid_dress_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bb75aed2f17124597c4724cc74ba80938b5464b42c8a7b7ab0cc73210e70510 +size 27332 diff --git a/game/characters/hermione/clothes/top/maid_dress_1/2.webp b/game/characters/hermione/clothes/top/maid_dress_1/2.webp new file mode 100644 index 00000000..04ecbcdc --- /dev/null +++ b/game/characters/hermione/clothes/top/maid_dress_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5095fc15a1b63dd99907b049d2a905fb63a13ec205667d148af50b75af716fe8 +size 1636 diff --git a/game/characters/hermione/clothes/top/maid_dress_1/mask.webp b/game/characters/hermione/clothes/top/maid_dress_1/mask.webp new file mode 100644 index 00000000..02c7655f --- /dev/null +++ b/game/characters/hermione/clothes/top/maid_dress_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4f4ca24aa27d1162e1759f153311f6f7d7c34ef865928a121295e3cd793b9db +size 790 diff --git a/game/characters/hermione/clothes/top/maid_dress_1/outline.webp b/game/characters/hermione/clothes/top/maid_dress_1/outline.webp new file mode 100644 index 00000000..7fb7ab40 --- /dev/null +++ b/game/characters/hermione/clothes/top/maid_dress_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69f968d44c2e6d394344e844a611016896eb75c0b13b61f9e82eb50f2d5dbca4 +size 38554 diff --git a/game/characters/hermione/clothes/top/msmarv_suit/0.webp b/game/characters/hermione/clothes/top/msmarv_suit/0.webp new file mode 100644 index 00000000..ac5180bc --- /dev/null +++ b/game/characters/hermione/clothes/top/msmarv_suit/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:837ba07de8a8a153d1410a53442a9567e3a367bb94a9a7196fcbec78fa2b3fd0 +size 12136 diff --git a/game/characters/hermione/clothes/top/msmarv_suit/1.webp b/game/characters/hermione/clothes/top/msmarv_suit/1.webp new file mode 100644 index 00000000..9049896d --- /dev/null +++ b/game/characters/hermione/clothes/top/msmarv_suit/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:396d603e161f3f57bfa96e87aba401fbe932b0af502c4e41e0637c542c9b2853 +size 21924 diff --git a/game/characters/hermione/clothes/top/msmarv_suit/2.webp b/game/characters/hermione/clothes/top/msmarv_suit/2.webp new file mode 100644 index 00000000..6655b65a --- /dev/null +++ b/game/characters/hermione/clothes/top/msmarv_suit/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4b46550da40ed1f02598e0aa5109d18472cf43e3448c6a670ec98443685becf +size 9028 diff --git a/game/characters/hermione/clothes/top/msmarv_suit/outline.webp b/game/characters/hermione/clothes/top/msmarv_suit/outline.webp new file mode 100644 index 00000000..42939ede --- /dev/null +++ b/game/characters/hermione/clothes/top/msmarv_suit/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8497f31a3c2bd70a1edaa5690f2f5f205374ae1366614e6f72fd970dcab3c1f6 +size 9320 diff --git a/game/characters/hermione/clothes/top/nightie/0.webp b/game/characters/hermione/clothes/top/nightie/0.webp new file mode 100644 index 00000000..2ec55e1b --- /dev/null +++ b/game/characters/hermione/clothes/top/nightie/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48fd724ca32947bfbc876b955182983adf2606d2da5f2951d50bcaee68cd5a4c +size 15496 diff --git a/game/characters/hermione/clothes/top/nightie/outline.webp b/game/characters/hermione/clothes/top/nightie/outline.webp new file mode 100644 index 00000000..e8cbeb78 --- /dev/null +++ b/game/characters/hermione/clothes/top/nightie/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3f4237113616099878c8aede46b3f2bf739ac321d4115df684a9a2bf5da8527 +size 17054 diff --git a/game/characters/hermione/clothes/top/open_top_1/0.webp b/game/characters/hermione/clothes/top/open_top_1/0.webp new file mode 100644 index 00000000..10a3a892 --- /dev/null +++ b/game/characters/hermione/clothes/top/open_top_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ca45c22a4e0028110b5c5ee8c5e2c4ff5c4891c81316e20fde866854847d22b +size 8274 diff --git a/game/characters/hermione/clothes/top/open_top_1/0_front.webp b/game/characters/hermione/clothes/top/open_top_1/0_front.webp new file mode 100644 index 00000000..b5ad30bf --- /dev/null +++ b/game/characters/hermione/clothes/top/open_top_1/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:949fca97e606a6b2543a15fba99a00a053ce4247176899bd3396a63dcd2b5abc +size 3242 diff --git a/game/characters/hermione/clothes/top/open_top_1/1.webp b/game/characters/hermione/clothes/top/open_top_1/1.webp new file mode 100644 index 00000000..d21d1f78 --- /dev/null +++ b/game/characters/hermione/clothes/top/open_top_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d4eb913515444b0afd8d278f6eacf684096ee08ccdd61ce675166eca02d09f5 +size 15990 diff --git a/game/characters/hermione/clothes/top/open_top_1/2.webp b/game/characters/hermione/clothes/top/open_top_1/2.webp new file mode 100644 index 00000000..8b60aaaa --- /dev/null +++ b/game/characters/hermione/clothes/top/open_top_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf426978b2dc7924a0128d1ba7290fd8ed7ac13971633a873b5b6a7587dc3648 +size 4186 diff --git a/game/characters/hermione/clothes/top/open_top_1/3.webp b/game/characters/hermione/clothes/top/open_top_1/3.webp new file mode 100644 index 00000000..d18dbf21 --- /dev/null +++ b/game/characters/hermione/clothes/top/open_top_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df3b81d096936ef8ab0a99f89badd951000a18f36e043c7602db48a5e167ec8c +size 4282 diff --git a/game/characters/hermione/clothes/top/open_top_1/extra.webp b/game/characters/hermione/clothes/top/open_top_1/extra.webp new file mode 100644 index 00000000..41ba96a4 --- /dev/null +++ b/game/characters/hermione/clothes/top/open_top_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6c476902baa1af62bab7d4150a7e021f030b55781f93241b41d662d4704af46 +size 1642 diff --git a/game/characters/hermione/clothes/top/open_top_1/outline.webp b/game/characters/hermione/clothes/top/open_top_1/outline.webp new file mode 100644 index 00000000..40b9f9ac --- /dev/null +++ b/game/characters/hermione/clothes/top/open_top_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49a0cf0c964e0fb401503ffe9d0b538bcf3935950033040627d405d1f7e2c3a8 +size 25336 diff --git a/game/characters/hermione/clothes/top/open_top_1/outline_front.webp b/game/characters/hermione/clothes/top/open_top_1/outline_front.webp new file mode 100644 index 00000000..8a44dc65 --- /dev/null +++ b/game/characters/hermione/clothes/top/open_top_1/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ce975052beb221ecbd41d4971f0a3344d136803ce3bd9f39c1bdcbb4114c4f7 +size 3678 diff --git a/game/characters/hermione/clothes/top/pajama_1/0.webp b/game/characters/hermione/clothes/top/pajama_1/0.webp new file mode 100644 index 00000000..a30fd647 --- /dev/null +++ b/game/characters/hermione/clothes/top/pajama_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b2d06f66e64eb5943f0aed3bf7533295b2908cee5bb84dd6bb3b660e5e6ec30 +size 15156 diff --git a/game/characters/hermione/clothes/top/pajama_1/extra.webp b/game/characters/hermione/clothes/top/pajama_1/extra.webp new file mode 100644 index 00000000..15edc7b8 --- /dev/null +++ b/game/characters/hermione/clothes/top/pajama_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c54247cb14c042e0b5297815e3916928f4e68f5d8e537c1f0bff1f5c1e8909ed +size 19568 diff --git a/game/characters/hermione/clothes/top/pajama_1/outline.webp b/game/characters/hermione/clothes/top/pajama_1/outline.webp new file mode 100644 index 00000000..efe4d5c9 --- /dev/null +++ b/game/characters/hermione/clothes/top/pajama_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ada026d7510c3a032db5cb0a72970341b7e040a133de5f57ebb1e342964112cd +size 21802 diff --git a/game/characters/hermione/clothes/top/pizza_top/0.webp b/game/characters/hermione/clothes/top/pizza_top/0.webp new file mode 100644 index 00000000..a7260404 --- /dev/null +++ b/game/characters/hermione/clothes/top/pizza_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2188703c62fab45cac6ba7aa0356461762149b2252de6a624964f4cb2a366039 +size 6504 diff --git a/game/characters/hermione/clothes/top/pizza_top/outline.webp b/game/characters/hermione/clothes/top/pizza_top/outline.webp new file mode 100644 index 00000000..6f2cee6e --- /dev/null +++ b/game/characters/hermione/clothes/top/pizza_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d3676b02f5a5ecbaa623d8d05dc50b4d6e3a0072438288c2d1ae8ca0016c39d +size 22572 diff --git a/game/characters/hermione/clothes/top/pizza_top/overlay.webp b/game/characters/hermione/clothes/top/pizza_top/overlay.webp new file mode 100644 index 00000000..bc148515 --- /dev/null +++ b/game/characters/hermione/clothes/top/pizza_top/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efe2e8621cc14035c365cfc3dfef55f1900db48065f259ab72075ce8beaeadfa +size 8856 diff --git a/game/characters/hermione/clothes/top/pullover_1/0.webp b/game/characters/hermione/clothes/top/pullover_1/0.webp new file mode 100644 index 00000000..adf13536 --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3944d2d3264ba4f72a0ec1a30896c4fbf1e203469a91a3e65d5fabb161113c08 +size 34704 diff --git a/game/characters/hermione/clothes/top/pullover_1/0_front.webp b/game/characters/hermione/clothes/top/pullover_1/0_front.webp new file mode 100644 index 00000000..3d103243 --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_1/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e24400cda260e187a2c6b389b9dafa731ecdf83f9c45a101dacdf68e0b9d426 +size 5058 diff --git a/game/characters/hermione/clothes/top/pullover_1/mask.webp b/game/characters/hermione/clothes/top/pullover_1/mask.webp new file mode 100644 index 00000000..22f09dea --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b26418f1817c6e92960a7e829f7786be774f32b91d466baa6c4d328f6620f4be +size 2238 diff --git a/game/characters/hermione/clothes/top/pullover_1/outline.webp b/game/characters/hermione/clothes/top/pullover_1/outline.webp new file mode 100644 index 00000000..453a6bac --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f39176f037cd22380d189cb4aa3b2658578c65957280e5af6a25cae625db73b +size 27278 diff --git a/game/characters/hermione/clothes/top/pullover_1/outline_front.webp b/game/characters/hermione/clothes/top/pullover_1/outline_front.webp new file mode 100644 index 00000000..afe08f14 --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_1/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b00cb4826a7a348d10f2b9e8a421053a301022e514af94574aec8bff7290f34 +size 4180 diff --git a/game/characters/hermione/clothes/top/pullover_2/0.webp b/game/characters/hermione/clothes/top/pullover_2/0.webp new file mode 100644 index 00000000..bf7dd65d --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b25e0a13cdf663211e4d8c5c1ab4ef42c51d5b5b54977b38416248ea06aa52d4 +size 35890 diff --git a/game/characters/hermione/clothes/top/pullover_2/0_front.webp b/game/characters/hermione/clothes/top/pullover_2/0_front.webp new file mode 100644 index 00000000..3d103243 --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_2/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e24400cda260e187a2c6b389b9dafa731ecdf83f9c45a101dacdf68e0b9d426 +size 5058 diff --git a/game/characters/hermione/clothes/top/pullover_2/mask.webp b/game/characters/hermione/clothes/top/pullover_2/mask.webp new file mode 100644 index 00000000..22f09dea --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_2/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b26418f1817c6e92960a7e829f7786be774f32b91d466baa6c4d328f6620f4be +size 2238 diff --git a/game/characters/hermione/clothes/top/pullover_2/outline.webp b/game/characters/hermione/clothes/top/pullover_2/outline.webp new file mode 100644 index 00000000..864c061f --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84b4dee0017f4d7a64adf02f8bb9fdffa8f2c910889caadf78c8d55da50faf93 +size 28224 diff --git a/game/characters/hermione/clothes/top/pullover_2/outline_front.webp b/game/characters/hermione/clothes/top/pullover_2/outline_front.webp new file mode 100644 index 00000000..afe08f14 --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_2/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b00cb4826a7a348d10f2b9e8a421053a301022e514af94574aec8bff7290f34 +size 4180 diff --git a/game/characters/hermione/clothes/top/pullover_2/skin.webp b/game/characters/hermione/clothes/top/pullover_2/skin.webp new file mode 100644 index 00000000..ed2bc7ae --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7379daa7f4ac9f5d13b981bc930c4650ff98c521983817163535ccecafdec5a3 +size 2770 diff --git a/game/characters/hermione/clothes/top/pullover_3/0.webp b/game/characters/hermione/clothes/top/pullover_3/0.webp new file mode 100644 index 00000000..dc64fb43 --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93e15d838b70305bd6da3589dd78c5f2465fb2361d14c1d116cbaee38cb0ecc9 +size 20828 diff --git a/game/characters/hermione/clothes/top/pullover_3/0_front.webp b/game/characters/hermione/clothes/top/pullover_3/0_front.webp new file mode 100644 index 00000000..3d103243 --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_3/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e24400cda260e187a2c6b389b9dafa731ecdf83f9c45a101dacdf68e0b9d426 +size 5058 diff --git a/game/characters/hermione/clothes/top/pullover_3/outline.webp b/game/characters/hermione/clothes/top/pullover_3/outline.webp new file mode 100644 index 00000000..32110b78 --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d8edfff1ff663c39eeed60382b916a5d0369c59a9ed0b8ddc4320d646f3b390 +size 17434 diff --git a/game/characters/hermione/clothes/top/pullover_3/outline_front.webp b/game/characters/hermione/clothes/top/pullover_3/outline_front.webp new file mode 100644 index 00000000..afe08f14 --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_3/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b00cb4826a7a348d10f2b9e8a421053a301022e514af94574aec8bff7290f34 +size 4180 diff --git a/game/characters/hermione/clothes/top/pullover_3/skin.webp b/game/characters/hermione/clothes/top/pullover_3/skin.webp new file mode 100644 index 00000000..ed2bc7ae --- /dev/null +++ b/game/characters/hermione/clothes/top/pullover_3/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7379daa7f4ac9f5d13b981bc930c4650ff98c521983817163535ccecafdec5a3 +size 2770 diff --git a/game/characters/hermione/clothes/top/ruffled_top/0.webp b/game/characters/hermione/clothes/top/ruffled_top/0.webp new file mode 100644 index 00000000..83e9f9c8 --- /dev/null +++ b/game/characters/hermione/clothes/top/ruffled_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a7c5bd92d3dcf6d77a369eb285a55308bf3b00a1fcaf62a9eace22eee5bbd85 +size 9982 diff --git a/game/characters/hermione/clothes/top/ruffled_top/mask.webp b/game/characters/hermione/clothes/top/ruffled_top/mask.webp new file mode 100644 index 00000000..9e11c9cc --- /dev/null +++ b/game/characters/hermione/clothes/top/ruffled_top/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59a90cb3ec56155055481d5bf355b17ace8623f7202864c0a779ac0316da0367 +size 1684 diff --git a/game/characters/hermione/clothes/top/ruffled_top/outline.webp b/game/characters/hermione/clothes/top/ruffled_top/outline.webp new file mode 100644 index 00000000..595c39ce --- /dev/null +++ b/game/characters/hermione/clothes/top/ruffled_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5c3c26c4046cbf8465b33ec2ca56b6e28f902ca507b1aec1c8f4b7436b16cd7 +size 13536 diff --git a/game/characters/hermione/clothes/top/swimsuit_top_1/0.webp b/game/characters/hermione/clothes/top/swimsuit_top_1/0.webp new file mode 100644 index 00000000..42b5bdfe --- /dev/null +++ b/game/characters/hermione/clothes/top/swimsuit_top_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d4acf81ae53ba1c8c16c96c6c6fff2d9f733cb07d2e83bd9c6b0dfdbd8e380c +size 9520 diff --git a/game/characters/hermione/clothes/top/swimsuit_top_1/1.webp b/game/characters/hermione/clothes/top/swimsuit_top_1/1.webp new file mode 100644 index 00000000..39a51d07 --- /dev/null +++ b/game/characters/hermione/clothes/top/swimsuit_top_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17f081b4f2d5ac51a8b59973194d1ab1cc0a121e260102bc4909a40ba1f19241 +size 4362 diff --git a/game/characters/hermione/clothes/top/swimsuit_top_1/outline.webp b/game/characters/hermione/clothes/top/swimsuit_top_1/outline.webp new file mode 100644 index 00000000..0d0d52d4 --- /dev/null +++ b/game/characters/hermione/clothes/top/swimsuit_top_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a735b8cbc629d4f4cf194596793d7142ffc9f4c9da31ae16f6ebe5ea90bc1593 +size 11468 diff --git a/game/characters/hermione/clothes/top/swimsuit_top_1/skin.webp b/game/characters/hermione/clothes/top/swimsuit_top_1/skin.webp new file mode 100644 index 00000000..b74ac2fd --- /dev/null +++ b/game/characters/hermione/clothes/top/swimsuit_top_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0ef5c1962992c78fe178ca1aca79fcc7612799c3f4df75849bf320e766c2fe7 +size 1242 diff --git a/game/characters/hermione/clothes/top/swimsuit_top_2/0.webp b/game/characters/hermione/clothes/top/swimsuit_top_2/0.webp new file mode 100644 index 00000000..42b5bdfe --- /dev/null +++ b/game/characters/hermione/clothes/top/swimsuit_top_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d4acf81ae53ba1c8c16c96c6c6fff2d9f733cb07d2e83bd9c6b0dfdbd8e380c +size 9520 diff --git a/game/characters/hermione/clothes/top/swimsuit_top_2/1.webp b/game/characters/hermione/clothes/top/swimsuit_top_2/1.webp new file mode 100644 index 00000000..39a51d07 --- /dev/null +++ b/game/characters/hermione/clothes/top/swimsuit_top_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17f081b4f2d5ac51a8b59973194d1ab1cc0a121e260102bc4909a40ba1f19241 +size 4362 diff --git a/game/characters/hermione/clothes/top/swimsuit_top_2/outline.webp b/game/characters/hermione/clothes/top/swimsuit_top_2/outline.webp new file mode 100644 index 00000000..0d0d52d4 --- /dev/null +++ b/game/characters/hermione/clothes/top/swimsuit_top_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a735b8cbc629d4f4cf194596793d7142ffc9f4c9da31ae16f6ebe5ea90bc1593 +size 11468 diff --git a/game/characters/hermione/clothes/top/swimsuit_top_2/skin.webp b/game/characters/hermione/clothes/top/swimsuit_top_2/skin.webp new file mode 100644 index 00000000..b74ac2fd --- /dev/null +++ b/game/characters/hermione/clothes/top/swimsuit_top_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0ef5c1962992c78fe178ca1aca79fcc7612799c3f4df75849bf320e766c2fe7 +size 1242 diff --git a/game/characters/hermione/clothes/top/teddy_top/0.webp b/game/characters/hermione/clothes/top/teddy_top/0.webp new file mode 100644 index 00000000..c8019836 --- /dev/null +++ b/game/characters/hermione/clothes/top/teddy_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:622bab8666632f3690e90c21d1224fe9f4e838ab435f689db8448c344b79a060 +size 6178 diff --git a/game/characters/hermione/clothes/top/teddy_top/1.webp b/game/characters/hermione/clothes/top/teddy_top/1.webp new file mode 100644 index 00000000..eb5ca0ae --- /dev/null +++ b/game/characters/hermione/clothes/top/teddy_top/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84696daf081ce99af79c8174ba3e007e1fc66806093234f81ef6e53b56d43376 +size 6804 diff --git a/game/characters/hermione/clothes/top/teddy_top/2.webp b/game/characters/hermione/clothes/top/teddy_top/2.webp new file mode 100644 index 00000000..689b6354 --- /dev/null +++ b/game/characters/hermione/clothes/top/teddy_top/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4cbd526762316b03e1a81772dda8b8041ba64519b4332cbce14933fc075f4ec +size 1382 diff --git a/game/characters/hermione/clothes/top/teddy_top/outline.webp b/game/characters/hermione/clothes/top/teddy_top/outline.webp new file mode 100644 index 00000000..e0efc39d --- /dev/null +++ b/game/characters/hermione/clothes/top/teddy_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a9bfdec170bf22464b99ec64eb6a52cf2bf0e8a7dc6833f6f19997fd27ffd4d +size 16582 diff --git a/game/characters/hermione/clothes/top/tifa_top/0.webp b/game/characters/hermione/clothes/top/tifa_top/0.webp new file mode 100644 index 00000000..47c4ceec --- /dev/null +++ b/game/characters/hermione/clothes/top/tifa_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89f3b1c2f4f76d1c28550c830c171071662b385a864aa2d694be9296e1108c22 +size 8078 diff --git a/game/characters/hermione/clothes/top/tifa_top/mask.webp b/game/characters/hermione/clothes/top/tifa_top/mask.webp new file mode 100644 index 00000000..5cdf7100 --- /dev/null +++ b/game/characters/hermione/clothes/top/tifa_top/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39b3f8fe505dafa906abb840003d5ee06af0d325124d7d398328f50afa8bea79 +size 1960 diff --git a/game/characters/hermione/clothes/top/tifa_top/outline.webp b/game/characters/hermione/clothes/top/tifa_top/outline.webp new file mode 100644 index 00000000..c97c2155 --- /dev/null +++ b/game/characters/hermione/clothes/top/tifa_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f927f9fa6b58d02b9b2c0a43b91c1e9cfd727fc445f5ee9a6c00574fbad9d46 +size 10458 diff --git a/game/characters/hermione/clothes/top/top_school_1/0.webp b/game/characters/hermione/clothes/top/top_school_1/0.webp new file mode 100644 index 00000000..41ebcc11 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:062c25d12de987660c3ebdbcfed04fbeafaaa52fe84b4e7a8b0cc05b55260e8b +size 9226 diff --git a/game/characters/hermione/clothes/top/top_school_1/0_front.webp b/game/characters/hermione/clothes/top/top_school_1/0_front.webp new file mode 100644 index 00000000..8e6bf457 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_1/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a932792dd9770bf3e1edf451ee0a3801df802f270a74a75867cb0dcb3515dce +size 4648 diff --git a/game/characters/hermione/clothes/top/top_school_1/1.webp b/game/characters/hermione/clothes/top/top_school_1/1.webp new file mode 100644 index 00000000..e5924508 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a369155fcc04610aa215e7243672aab1991df830dce9537be35c24e61ec8b019 +size 11076 diff --git a/game/characters/hermione/clothes/top/top_school_1/2.webp b/game/characters/hermione/clothes/top/top_school_1/2.webp new file mode 100644 index 00000000..be9d18b6 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7ab0ec9829a0106f70d162fec9b3e3462e0b3b48e3fa70ac7477cc2deec41e3 +size 9524 diff --git a/game/characters/hermione/clothes/top/top_school_1/3.webp b/game/characters/hermione/clothes/top/top_school_1/3.webp new file mode 100644 index 00000000..06bf891b --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bacca834c7b0d4262984ff7adece445c2cae5149895b26e2f0246ef7b65ea6be +size 6980 diff --git a/game/characters/hermione/clothes/top/top_school_1/mask.webp b/game/characters/hermione/clothes/top/top_school_1/mask.webp new file mode 100644 index 00000000..ff13a9f8 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d33fb0ef8fc2b2e092d4d32538390c312e64f05890bbe143d6374c63f648081 +size 2154 diff --git a/game/characters/hermione/clothes/top/top_school_1/outline.webp b/game/characters/hermione/clothes/top/top_school_1/outline.webp new file mode 100644 index 00000000..00d4b2fc --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4da27705d408f5691e0120b140676a5d119f9033ae5674b18a1a55466ceede7 +size 20678 diff --git a/game/characters/hermione/clothes/top/top_school_1/outline_front.webp b/game/characters/hermione/clothes/top/top_school_1/outline_front.webp new file mode 100644 index 00000000..5666faab --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_1/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cb1f5db580aea9aad9d0defec93c82bb993684afedc8efdc79fe19aaae2f095 +size 4062 diff --git a/game/characters/hermione/clothes/top/top_school_2/0.webp b/game/characters/hermione/clothes/top/top_school_2/0.webp new file mode 100644 index 00000000..41ebcc11 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:062c25d12de987660c3ebdbcfed04fbeafaaa52fe84b4e7a8b0cc05b55260e8b +size 9226 diff --git a/game/characters/hermione/clothes/top/top_school_2/0_front.webp b/game/characters/hermione/clothes/top/top_school_2/0_front.webp new file mode 100644 index 00000000..b4d8d2a4 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_2/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:552aa723882eed1dbc59dbc38a5f4a04673f894ca777837daa6c72f0b46465a6 +size 4794 diff --git a/game/characters/hermione/clothes/top/top_school_2/1.webp b/game/characters/hermione/clothes/top/top_school_2/1.webp new file mode 100644 index 00000000..e5924508 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a369155fcc04610aa215e7243672aab1991df830dce9537be35c24e61ec8b019 +size 11076 diff --git a/game/characters/hermione/clothes/top/top_school_2/2.webp b/game/characters/hermione/clothes/top/top_school_2/2.webp new file mode 100644 index 00000000..d366d6c8 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0e993e016fc87d84bcf2d8b01beb4d6818f6ef5d17d5c5f915dcf91a7382286 +size 8248 diff --git a/game/characters/hermione/clothes/top/top_school_2/3.webp b/game/characters/hermione/clothes/top/top_school_2/3.webp new file mode 100644 index 00000000..ec8d9771 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_2/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02809266dc8a8c65397119d63d3901997209f23d8b94b416561e7591584bb60c +size 6128 diff --git a/game/characters/hermione/clothes/top/top_school_2/extra.webp b/game/characters/hermione/clothes/top/top_school_2/extra.webp new file mode 100644 index 00000000..dac8f3ce --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b4bd3c1edf86b7683162a39a4514a01dcbcb8c23ac96cb9111cfe18ce06fe21 +size 1390 diff --git a/game/characters/hermione/clothes/top/top_school_2/mask.webp b/game/characters/hermione/clothes/top/top_school_2/mask.webp new file mode 100644 index 00000000..ff13a9f8 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_2/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d33fb0ef8fc2b2e092d4d32538390c312e64f05890bbe143d6374c63f648081 +size 2154 diff --git a/game/characters/hermione/clothes/top/top_school_2/outline.webp b/game/characters/hermione/clothes/top/top_school_2/outline.webp new file mode 100644 index 00000000..99d704b9 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fa65c9beb1c917d7808ff1a777b5c85dc137a135e4d00ab0a21d59186eb50e4 +size 20282 diff --git a/game/characters/hermione/clothes/top/top_school_2/outline_front.webp b/game/characters/hermione/clothes/top/top_school_2/outline_front.webp new file mode 100644 index 00000000..ca882bbe --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_2/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c1fa7dea4531ff7a57314fb5a7f44fd1d8273e3998c076d3866e76b2024970a +size 4174 diff --git a/game/characters/hermione/clothes/top/top_school_3/0.webp b/game/characters/hermione/clothes/top/top_school_3/0.webp new file mode 100644 index 00000000..ebc2ae26 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebb554a62bf27e259c43b523a3548d411cea81034eafe78cd65e2b63ca143204 +size 16578 diff --git a/game/characters/hermione/clothes/top/top_school_3/0_front.webp b/game/characters/hermione/clothes/top/top_school_3/0_front.webp new file mode 100644 index 00000000..47547ad1 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_3/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c3bbe5807f352e3efac62df85f82e61fde992707757915d9f8c998fb6c51029 +size 4836 diff --git a/game/characters/hermione/clothes/top/top_school_3/1.webp b/game/characters/hermione/clothes/top/top_school_3/1.webp new file mode 100644 index 00000000..d2862058 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4d6acf6b2914553fd3954b81c0aa93a8f5e898e2001e984ca64275391e72a12 +size 6244 diff --git a/game/characters/hermione/clothes/top/top_school_3/2.webp b/game/characters/hermione/clothes/top/top_school_3/2.webp new file mode 100644 index 00000000..eb72ffed --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_3/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30307f46a65151526f005193828a7b1b8cc23098cec6872bfabfae7a3162165b +size 4394 diff --git a/game/characters/hermione/clothes/top/top_school_3/mask.webp b/game/characters/hermione/clothes/top/top_school_3/mask.webp new file mode 100644 index 00000000..2fdd99fa --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_3/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2aa76553132f66b710116aea199b0f21ffe4eb846317464208601e5e8de63de +size 2478 diff --git a/game/characters/hermione/clothes/top/top_school_3/outline.webp b/game/characters/hermione/clothes/top/top_school_3/outline.webp new file mode 100644 index 00000000..c8809c04 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7987604c7576a564909634f69e0b02fa5e6050ef9db1e93b7c792b425133cf1a +size 17134 diff --git a/game/characters/hermione/clothes/top/top_school_3/outline_front.webp b/game/characters/hermione/clothes/top/top_school_3/outline_front.webp new file mode 100644 index 00000000..37eca200 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_3/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f8d8c531f35fd6dc989169041959fd81306788725df1c8cdb0b1184d4e0370d +size 4050 diff --git a/game/characters/hermione/clothes/top/top_school_4/0.webp b/game/characters/hermione/clothes/top/top_school_4/0.webp new file mode 100644 index 00000000..da23af4a --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ace111955b803e068f12ef2040a0a4bb976f5bf1b51c0f36828b7a22cc97a98a +size 15922 diff --git a/game/characters/hermione/clothes/top/top_school_4/0_front.webp b/game/characters/hermione/clothes/top/top_school_4/0_front.webp new file mode 100644 index 00000000..40cff534 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_4/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5177dbeb4ea4630b4f1dc40fb473b987bb05368ad318f30604c82f8ff589ec49 +size 4884 diff --git a/game/characters/hermione/clothes/top/top_school_4/1.webp b/game/characters/hermione/clothes/top/top_school_4/1.webp new file mode 100644 index 00000000..9283c002 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:958f7256d2bce4562258989a175daf0f89ed89de01c68c6befeff875a76c841d +size 2798 diff --git a/game/characters/hermione/clothes/top/top_school_4/2.webp b/game/characters/hermione/clothes/top/top_school_4/2.webp new file mode 100644 index 00000000..29edc092 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_4/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cfff705d0e740216ccfb356820e6d6bf614822ca02cc51e714fa11bab0cdf10 +size 1724 diff --git a/game/characters/hermione/clothes/top/top_school_4/extra.webp b/game/characters/hermione/clothes/top/top_school_4/extra.webp new file mode 100644 index 00000000..f6862403 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_4/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:109070002fb629c892a10fbee10d7376363d32f41e35ba826248015a187f819c +size 2138 diff --git a/game/characters/hermione/clothes/top/top_school_4/mask.webp b/game/characters/hermione/clothes/top/top_school_4/mask.webp new file mode 100644 index 00000000..2fdd99fa --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_4/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2aa76553132f66b710116aea199b0f21ffe4eb846317464208601e5e8de63de +size 2478 diff --git a/game/characters/hermione/clothes/top/top_school_4/outline.webp b/game/characters/hermione/clothes/top/top_school_4/outline.webp new file mode 100644 index 00000000..d197a540 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe28434bf89d992e7fed5a9412e5d8b69ddcec8aa82c55a5bb2843579ecacdf4 +size 15738 diff --git a/game/characters/hermione/clothes/top/top_school_4/outline_front.webp b/game/characters/hermione/clothes/top/top_school_4/outline_front.webp new file mode 100644 index 00000000..2deb40ae --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_4/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bca3cfa08fff45019cb5383ab64dd37d31ad1556cf7a431c9680cc540640f476 +size 4070 diff --git a/game/characters/hermione/clothes/top/top_school_5/0.webp b/game/characters/hermione/clothes/top/top_school_5/0.webp new file mode 100644 index 00000000..7b7f3cdd --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_5/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b5a2bbf261c193be20edf9f1ffe0ee8a9255819bce2e75285914b94366a870a +size 16182 diff --git a/game/characters/hermione/clothes/top/top_school_5/0_front.webp b/game/characters/hermione/clothes/top/top_school_5/0_front.webp new file mode 100644 index 00000000..00660b5c --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_5/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:956445693648e609ad075035722b45ed403513d6ee7210832d8db8c34a6ebbda +size 5598 diff --git a/game/characters/hermione/clothes/top/top_school_5/1.webp b/game/characters/hermione/clothes/top/top_school_5/1.webp new file mode 100644 index 00000000..785ef039 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_5/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35596d3765c637bc9bb3ca8f88be6cfe7f75cd8b599f53150041b4b405d0c99c +size 2654 diff --git a/game/characters/hermione/clothes/top/top_school_5/2.webp b/game/characters/hermione/clothes/top/top_school_5/2.webp new file mode 100644 index 00000000..29edc092 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_5/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cfff705d0e740216ccfb356820e6d6bf614822ca02cc51e714fa11bab0cdf10 +size 1724 diff --git a/game/characters/hermione/clothes/top/top_school_5/extra.webp b/game/characters/hermione/clothes/top/top_school_5/extra.webp new file mode 100644 index 00000000..34ddeb70 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_5/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef7205d6b035fb2a637c3a5adc543aa0d468d1fc3d908d70810470b654add4ba +size 2140 diff --git a/game/characters/hermione/clothes/top/top_school_5/mask.webp b/game/characters/hermione/clothes/top/top_school_5/mask.webp new file mode 100644 index 00000000..2fdd99fa --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_5/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2aa76553132f66b710116aea199b0f21ffe4eb846317464208601e5e8de63de +size 2478 diff --git a/game/characters/hermione/clothes/top/top_school_5/outline.webp b/game/characters/hermione/clothes/top/top_school_5/outline.webp new file mode 100644 index 00000000..ee68afb9 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_5/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e97e40e72d28808aa462d5e3d329482a33308fe0927c3bf64ba859816488e3ac +size 15990 diff --git a/game/characters/hermione/clothes/top/top_school_5/outline_front.webp b/game/characters/hermione/clothes/top/top_school_5/outline_front.webp new file mode 100644 index 00000000..7940e8b0 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_5/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6cb866157fff910e8cdcd40c5743ec85464c86a62b9fa0d1cf3f6fe7d131e0a +size 4626 diff --git a/game/characters/hermione/clothes/top/top_school_5/skin.webp b/game/characters/hermione/clothes/top/top_school_5/skin.webp new file mode 100644 index 00000000..658a5782 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_5/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba85cd24125b64f0f3de69640f2da26cf5c421856a0a437ffaf7bfc2d4ed6c71 +size 2440 diff --git a/game/characters/hermione/clothes/top/top_school_6/0.webp b/game/characters/hermione/clothes/top/top_school_6/0.webp new file mode 100644 index 00000000..381c68a9 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_6/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2bafc8923e762328400478d4cfcd6187b4d98421964192f87afa2961809d376 +size 11348 diff --git a/game/characters/hermione/clothes/top/top_school_6/1.webp b/game/characters/hermione/clothes/top/top_school_6/1.webp new file mode 100644 index 00000000..5444fd99 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_6/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:465bf70081753bf8240d14701c27c72b5ccade995bf7f4a7fb899a956db20d3c +size 7306 diff --git a/game/characters/hermione/clothes/top/top_school_6/2.webp b/game/characters/hermione/clothes/top/top_school_6/2.webp new file mode 100644 index 00000000..a534adfa --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_6/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa214eafbcdc71a51090d5c9f17399a3db85040729510c89c6d64c63a6774eec +size 6100 diff --git a/game/characters/hermione/clothes/top/top_school_6/mask.webp b/game/characters/hermione/clothes/top/top_school_6/mask.webp new file mode 100644 index 00000000..116ddf05 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_6/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed8a867db421e0379fb0a4d7388e130ceaa32030876ce69865aab7b825366d24 +size 2032 diff --git a/game/characters/hermione/clothes/top/top_school_6/outline.webp b/game/characters/hermione/clothes/top/top_school_6/outline.webp new file mode 100644 index 00000000..3a87913a --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_6/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c8f39569991d21eddf49eece43cc6c095fc10ecb722b950bfd78a2d03de35f7 +size 14880 diff --git a/game/characters/hermione/clothes/top/top_school_6/skin.webp b/game/characters/hermione/clothes/top/top_school_6/skin.webp new file mode 100644 index 00000000..fa851ba0 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_6/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb88c26d2d6f57bc9ce5efcf1e49d4f38406dcedb7d891c0028b453d1c2b90ea +size 3192 diff --git a/game/characters/hermione/clothes/top/top_school_7/0.webp b/game/characters/hermione/clothes/top/top_school_7/0.webp new file mode 100644 index 00000000..2ef70b38 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_7/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:875ba019f02849ec492d6cf5433196e4c748ac5052411947c32d8a9c74885e6d +size 18262 diff --git a/game/characters/hermione/clothes/top/top_school_7/1.webp b/game/characters/hermione/clothes/top/top_school_7/1.webp new file mode 100644 index 00000000..16c1a31e --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_7/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2ff831e91d21778f4f068ce14187f5aab6504d3f3aa96cccc95db506c9d14fc +size 2448 diff --git a/game/characters/hermione/clothes/top/top_school_7/2.webp b/game/characters/hermione/clothes/top/top_school_7/2.webp new file mode 100644 index 00000000..2544b683 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_7/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30f8a6f5dbb31f080231673eb71dcc77ff01e4d3f1bcfbe86a6c3b1b3ec19842 +size 1422 diff --git a/game/characters/hermione/clothes/top/top_school_7/mask.webp b/game/characters/hermione/clothes/top/top_school_7/mask.webp new file mode 100644 index 00000000..64f7c7bc --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_7/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ece5f64ac3d40b2136c520d005aee16f49c41a52d30df7eb70bec5b903c4943 +size 1998 diff --git a/game/characters/hermione/clothes/top/top_school_7/outline.webp b/game/characters/hermione/clothes/top/top_school_7/outline.webp new file mode 100644 index 00000000..61f0e395 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_7/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:543cd4d4e3af31782c6203edf4146b342c0c761d2acb3af9d615f79644eac9d6 +size 19784 diff --git a/game/characters/hermione/clothes/top/top_school_7/skin.webp b/game/characters/hermione/clothes/top/top_school_7/skin.webp new file mode 100644 index 00000000..5e81ca17 --- /dev/null +++ b/game/characters/hermione/clothes/top/top_school_7/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c59e1ec012ce9fa814c03395b9d243a6e323dc1e669cb5ee1ad24a4752d38e2f +size 5476 diff --git a/game/characters/hermione/clothes/top/witch_top/0.webp b/game/characters/hermione/clothes/top/witch_top/0.webp new file mode 100644 index 00000000..f24223b0 --- /dev/null +++ b/game/characters/hermione/clothes/top/witch_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a256aea8d2c8dad7268a652ab252d3e614df8c0270d6999bdd90a4bf42caf5b +size 11434 diff --git a/game/characters/hermione/clothes/top/witch_top/1.webp b/game/characters/hermione/clothes/top/witch_top/1.webp new file mode 100644 index 00000000..027857e3 --- /dev/null +++ b/game/characters/hermione/clothes/top/witch_top/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef884165909ed5f299a1dc5fb13c83360cb954d2049da902fa838e2b2c348de3 +size 7654 diff --git a/game/characters/hermione/clothes/top/witch_top/extra.webp b/game/characters/hermione/clothes/top/witch_top/extra.webp new file mode 100644 index 00000000..3311d5a3 --- /dev/null +++ b/game/characters/hermione/clothes/top/witch_top/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55e13642b582c6b8c427ffcf527ee8e728dbfbc55e9405a84d12c213780eedb1 +size 2970 diff --git a/game/characters/hermione/clothes/top/witch_top/outline.webp b/game/characters/hermione/clothes/top/witch_top/outline.webp new file mode 100644 index 00000000..3986c9a6 --- /dev/null +++ b/game/characters/hermione/clothes/top/witch_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8842578a424215bd844bc7f620fcf0b7fa15447787796e7a17312c626249c254 +size 16412 diff --git a/game/characters/hermione/clothes/top/xmas/0.webp b/game/characters/hermione/clothes/top/xmas/0.webp new file mode 100644 index 00000000..4e95af06 --- /dev/null +++ b/game/characters/hermione/clothes/top/xmas/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbc94fb2e8fe879baae1582e3be2fb23634d894fc86284e6c3376a50bbd6eba1 +size 5232 diff --git a/game/characters/hermione/clothes/top/xmas/1.webp b/game/characters/hermione/clothes/top/xmas/1.webp new file mode 100644 index 00000000..7d40fef6 --- /dev/null +++ b/game/characters/hermione/clothes/top/xmas/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0aee058a55dba4314cf4598fd6dc695090c6b4930adf788219047aeace3b609 +size 9270 diff --git a/game/characters/hermione/clothes/top/xmas/2.webp b/game/characters/hermione/clothes/top/xmas/2.webp new file mode 100644 index 00000000..ae5a0446 --- /dev/null +++ b/game/characters/hermione/clothes/top/xmas/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d4004238033229fca83f1a3ceb7c7b09e6693399bcb82d2a2dae90c1eb1f503 +size 5306 diff --git a/game/characters/hermione/clothes/top/xmas/extra.webp b/game/characters/hermione/clothes/top/xmas/extra.webp new file mode 100644 index 00000000..67cee246 --- /dev/null +++ b/game/characters/hermione/clothes/top/xmas/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c708f577f23c54534b4dbf733eca19ee7c2d5f5997d2f5c8f752ba7f2ade44b +size 4924 diff --git a/game/characters/hermione/clothes/top/xmas/outline.webp b/game/characters/hermione/clothes/top/xmas/outline.webp new file mode 100644 index 00000000..c3d8d8f9 --- /dev/null +++ b/game/characters/hermione/clothes/top/xmas/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d83b0178aa333e8e524d0bfc1934cc690315d47e8d993cd6c5aa6a33fee05a3 +size 13654 diff --git a/game/characters/hermione/clothes/top/xmas/skin.webp b/game/characters/hermione/clothes/top/xmas/skin.webp new file mode 100644 index 00000000..9c57bb96 --- /dev/null +++ b/game/characters/hermione/clothes/top/xmas/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6223f9e99e690dd9ad7493cf2853af1d6922050abea9e77980b3e1027c97078 +size 2734 diff --git a/game/characters/hermione/clothes/top/yen_top/0.webp b/game/characters/hermione/clothes/top/yen_top/0.webp new file mode 100644 index 00000000..93b5669b --- /dev/null +++ b/game/characters/hermione/clothes/top/yen_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ea79e79006127ccbd27f1d274588d0e1c6f67aea240880d311d586340f9220f +size 23120 diff --git a/game/characters/hermione/clothes/top/yen_top/outline.webp b/game/characters/hermione/clothes/top/yen_top/outline.webp new file mode 100644 index 00000000..53908663 --- /dev/null +++ b/game/characters/hermione/clothes/top/yen_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4904bd9481eb7f20511e0c57e8d633982a4b37324a3a1bc21f26af077db0e4d +size 22040 diff --git a/game/characters/hermione/cum/body/heavy.webp b/game/characters/hermione/cum/body/heavy.webp new file mode 100644 index 00000000..38dc3be8 --- /dev/null +++ b/game/characters/hermione/cum/body/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fe2c5e1440f7b08040ea6979ea0720a83360c5ec5f6900290712b09eabf2c60 +size 22000 diff --git a/game/characters/hermione/cum/body/light.webp b/game/characters/hermione/cum/body/light.webp new file mode 100644 index 00000000..f6692983 --- /dev/null +++ b/game/characters/hermione/cum/body/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5286500f8bb67683da045a1b3fe6027b61124c9fb61ccea5190fcb6c1a26d088 +size 8406 diff --git a/game/characters/hermione/cum/breasts/heavy.webp b/game/characters/hermione/cum/breasts/heavy.webp new file mode 100644 index 00000000..1778c73a --- /dev/null +++ b/game/characters/hermione/cum/breasts/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49c967935ca5ab21cb305c95fa2117fe8ae7830adb20ea0b2748da2bf98e45eb +size 21588 diff --git a/game/characters/hermione/cum/breasts/light.webp b/game/characters/hermione/cum/breasts/light.webp new file mode 100644 index 00000000..326187b0 --- /dev/null +++ b/game/characters/hermione/cum/breasts/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85391f869b20384524ad9a15a9536b420d53fe99fdfd47a57c09832d99218b9f +size 7340 diff --git a/game/characters/hermione/cum/crotch/heavy.webp b/game/characters/hermione/cum/crotch/heavy.webp new file mode 100644 index 00000000..abf99a15 --- /dev/null +++ b/game/characters/hermione/cum/crotch/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afe9743c1281c55279bd027ac045a8427ed6ffc345d4402079e55085b30bd409 +size 19230 diff --git a/game/characters/hermione/cum/crotch/light.webp b/game/characters/hermione/cum/crotch/light.webp new file mode 100644 index 00000000..807433ba --- /dev/null +++ b/game/characters/hermione/cum/crotch/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:604ec73a39f41c72c8a1cf84aed37c9f8454adf85e496c3a8a5ac7aaba9903ec +size 7198 diff --git a/game/characters/hermione/cum/face/heavy.webp b/game/characters/hermione/cum/face/heavy.webp new file mode 100644 index 00000000..008e5b41 --- /dev/null +++ b/game/characters/hermione/cum/face/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c60507756048a91c1c68492714ccd63db147a577b9597af817f59a06e49575dc +size 10552 diff --git a/game/characters/hermione/cum/face/light.webp b/game/characters/hermione/cum/face/light.webp new file mode 100644 index 00000000..dd8c8623 --- /dev/null +++ b/game/characters/hermione/cum/face/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:baa1b5134b28f37276d0c36825bb7f0d489bcef523cbe9c36077f4f04d67e86b +size 3512 diff --git a/game/characters/hermione/cum/hair/heavy.webp b/game/characters/hermione/cum/hair/heavy.webp new file mode 100644 index 00000000..841e6feb --- /dev/null +++ b/game/characters/hermione/cum/hair/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d58546a21789f5a3c53858f5fdb46c5dcbf775ee87add5ed8515de02b58cbd9 +size 19014 diff --git a/game/characters/hermione/cum/hair/light.webp b/game/characters/hermione/cum/hair/light.webp new file mode 100644 index 00000000..e565946b --- /dev/null +++ b/game/characters/hermione/cum/hair/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb500bb37573ed0b5c256970560413fe83ae1dfbe538ba4358d848acf5df761e +size 7476 diff --git a/game/characters/hermione/cum/legs/heavy.webp b/game/characters/hermione/cum/legs/heavy.webp new file mode 100644 index 00000000..bd24376c --- /dev/null +++ b/game/characters/hermione/cum/legs/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49382ba4d017b50294b84908e2eb7433384011ee094e2b6caece28416498cf94 +size 18182 diff --git a/game/characters/hermione/cum/legs/light.webp b/game/characters/hermione/cum/legs/light.webp new file mode 100644 index 00000000..15ac1f26 --- /dev/null +++ b/game/characters/hermione/cum/legs/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bb1519b6786ff010fa3ed8741c197ff5d4c37737614ddaa732feaff32a4ad56 +size 6054 diff --git a/game/characters/hermione/cum/pussy/heavy.webp b/game/characters/hermione/cum/pussy/heavy.webp new file mode 100644 index 00000000..bf24f975 --- /dev/null +++ b/game/characters/hermione/cum/pussy/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c36a00d597a6e08cf8eeef5146851332e48904e52c08d9f287f0e78b0a83786f +size 4634 diff --git a/game/characters/hermione/cum/pussy/light.webp b/game/characters/hermione/cum/pussy/light.webp new file mode 100644 index 00000000..c6d809cc --- /dev/null +++ b/game/characters/hermione/cum/pussy/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fbd4cb276916dd023e771b8087984af0f06792d9c06a8bb8c014c54fba66d82 +size 2096 diff --git a/game/characters/hermione/emote/angry.webp b/game/characters/hermione/emote/angry.webp new file mode 100644 index 00000000..d881e8e0 --- /dev/null +++ b/game/characters/hermione/emote/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:928f00664072a807193943f1c605044001c3e0b52e06884e5284e1995452afb3 +size 3112 diff --git a/game/characters/hermione/emote/confused.webp b/game/characters/hermione/emote/confused.webp new file mode 100644 index 00000000..f156f1bd --- /dev/null +++ b/game/characters/hermione/emote/confused.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b57f238ad5227397251dbe78cf8bf3fbe3b8109eacae1942d74cd4d54f35302 +size 17656 diff --git a/game/characters/hermione/emote/happy.webp b/game/characters/hermione/emote/happy.webp new file mode 100644 index 00000000..96a28857 --- /dev/null +++ b/game/characters/hermione/emote/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9195d6d9aaf039b4627f053cba3cf0c5f7bd8b6c95429dc20fd3d8b53419e111 +size 15884 diff --git a/game/characters/hermione/emote/hearts.webp b/game/characters/hermione/emote/hearts.webp new file mode 100644 index 00000000..25c13a52 --- /dev/null +++ b/game/characters/hermione/emote/hearts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dad2f02607e2599dfc9c272851ae949daa39f50d19b32cdd8a270073fae995ae +size 21144 diff --git a/game/characters/hermione/emote/shocked.webp b/game/characters/hermione/emote/shocked.webp new file mode 100644 index 00000000..046f2970 --- /dev/null +++ b/game/characters/hermione/emote/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dac6fa59b676e28e6a6582ff5eed86010855b28d0d89571e2ccf7648a8be631 +size 12642 diff --git a/game/characters/hermione/emote/sweat.webp b/game/characters/hermione/emote/sweat.webp new file mode 100644 index 00000000..325a4ace --- /dev/null +++ b/game/characters/hermione/emote/sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42ce0a2e422cf5c52aa7e1fa06661e0ed96dd082e5a44be532121e0b1a688711 +size 3758 diff --git a/game/characters/hermione/face/cheeks/blush.webp b/game/characters/hermione/face/cheeks/blush.webp new file mode 100644 index 00000000..fe1b322d --- /dev/null +++ b/game/characters/hermione/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c09efc169b82c2965ddba9e0e74be9dc84f7b4b91133c944c714046c62431473 +size 3350 diff --git a/game/characters/hermione/face/eyebrows/angry.webp b/game/characters/hermione/face/eyebrows/angry.webp new file mode 100644 index 00000000..e02f5f99 --- /dev/null +++ b/game/characters/hermione/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21d3cabcf523271992fa7a6163cfd1260aef2bcca1764adfbb9e41b099afcb3c +size 2174 diff --git a/game/characters/hermione/face/eyebrows/angry_skin.webp b/game/characters/hermione/face/eyebrows/angry_skin.webp new file mode 100644 index 00000000..6cca71bb --- /dev/null +++ b/game/characters/hermione/face/eyebrows/angry_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e5bbab94f721c485745b8850512f7513efb4c149b8e9413df1351adc914bca4 +size 1518 diff --git a/game/characters/hermione/face/eyebrows/annoyed.webp b/game/characters/hermione/face/eyebrows/annoyed.webp new file mode 100644 index 00000000..9cfe53a7 --- /dev/null +++ b/game/characters/hermione/face/eyebrows/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27d078d079cb19e6f471d0e38b289917a5396529f15c3162257187f080196783 +size 2046 diff --git a/game/characters/hermione/face/eyebrows/annoyed_skin.webp b/game/characters/hermione/face/eyebrows/annoyed_skin.webp new file mode 100644 index 00000000..6cca71bb --- /dev/null +++ b/game/characters/hermione/face/eyebrows/annoyed_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e5bbab94f721c485745b8850512f7513efb4c149b8e9413df1351adc914bca4 +size 1518 diff --git a/game/characters/hermione/face/eyebrows/base.webp b/game/characters/hermione/face/eyebrows/base.webp new file mode 100644 index 00000000..4b191d96 --- /dev/null +++ b/game/characters/hermione/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4c96c699da06281486dfc439f3cc358f82187b220096c86c342660ef732aa87 +size 2082 diff --git a/game/characters/hermione/face/eyebrows/base_skin.webp b/game/characters/hermione/face/eyebrows/base_skin.webp new file mode 100644 index 00000000..773c8ad2 --- /dev/null +++ b/game/characters/hermione/face/eyebrows/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bd0af7bee8fdd2762a9fa2296a0f524201fea5df9c87ba85a02aa3eb61ba10c +size 1702 diff --git a/game/characters/hermione/face/eyebrows/low.webp b/game/characters/hermione/face/eyebrows/low.webp new file mode 100644 index 00000000..90ee12f3 --- /dev/null +++ b/game/characters/hermione/face/eyebrows/low.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b7ed81c5dbb56089e9d943838e5e4bc33ffd66e22aaabae3730176371bc3673 +size 2164 diff --git a/game/characters/hermione/face/eyebrows/low_skin.webp b/game/characters/hermione/face/eyebrows/low_skin.webp new file mode 100644 index 00000000..b83cf58c --- /dev/null +++ b/game/characters/hermione/face/eyebrows/low_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5a64586bf0d546174c90eb22d9d8d08f38bb19ab266359665aa9ec201542a82 +size 1664 diff --git a/game/characters/hermione/face/eyebrows/worried.webp b/game/characters/hermione/face/eyebrows/worried.webp new file mode 100644 index 00000000..b5801cd7 --- /dev/null +++ b/game/characters/hermione/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dbe3693dc173ab088af8da9875f8de3a080368ebce6f3d04a1e8a2d215eafa0 +size 1892 diff --git a/game/characters/hermione/face/eyebrows/worried_skin.webp b/game/characters/hermione/face/eyebrows/worried_skin.webp new file mode 100644 index 00000000..2d06e5fd --- /dev/null +++ b/game/characters/hermione/face/eyebrows/worried_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99a2f60903efa4ce8e5fdee3d2b872b7f76a6f323eb968e7e61a5625cce4a986 +size 1578 diff --git a/game/characters/hermione/face/eyes/base.webp b/game/characters/hermione/face/eyes/base.webp new file mode 100644 index 00000000..9cb0243e --- /dev/null +++ b/game/characters/hermione/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63b9592a67b16a85aacaaa8d6a8117c26389cdda8f23592ae3d21acc1c9263c4 +size 2392 diff --git a/game/characters/hermione/face/eyes/base_mask.webp b/game/characters/hermione/face/eyes/base_mask.webp new file mode 100644 index 00000000..67235ae6 --- /dev/null +++ b/game/characters/hermione/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9672a2b53e10bbc8fdf23740a37c8181e695b101d0a6909b9516ea4db445ae65 +size 890 diff --git a/game/characters/hermione/face/eyes/closed.webp b/game/characters/hermione/face/eyes/closed.webp new file mode 100644 index 00000000..7006cdf6 --- /dev/null +++ b/game/characters/hermione/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e89d621467b60a6efd586975a2dfe08d59ce821e2c374b910bf9218364456d24 +size 4172 diff --git a/game/characters/hermione/face/eyes/happy.webp b/game/characters/hermione/face/eyes/happy.webp new file mode 100644 index 00000000..121c27e5 --- /dev/null +++ b/game/characters/hermione/face/eyes/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c925a53a8e73b38a98a65d773d9feb3e11ce463a0d4df494aec7c95b128c513 +size 2558 diff --git a/game/characters/hermione/face/eyes/happyCl.webp b/game/characters/hermione/face/eyes/happyCl.webp new file mode 100644 index 00000000..f744494c --- /dev/null +++ b/game/characters/hermione/face/eyes/happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a75deb68bd7d12d36643d8a453815b451fcb7c0750fc31be3333f3e197bc530c +size 2736 diff --git a/game/characters/hermione/face/eyes/happy_mask.webp b/game/characters/hermione/face/eyes/happy_mask.webp new file mode 100644 index 00000000..e5d19826 --- /dev/null +++ b/game/characters/hermione/face/eyes/happy_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:126c79fa9701f6f06b4c15b893b59f8cc7d8fe0d10afef9e776db17e896949ee +size 984 diff --git a/game/characters/hermione/face/eyes/narrow.webp b/game/characters/hermione/face/eyes/narrow.webp new file mode 100644 index 00000000..2d9f9be2 --- /dev/null +++ b/game/characters/hermione/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2c0c8de824ebbe362f481d8c353be7b943fdf57038ac068463f3aea60810b13 +size 3280 diff --git a/game/characters/hermione/face/eyes/narrow_mask.webp b/game/characters/hermione/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..872a86d2 --- /dev/null +++ b/game/characters/hermione/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfe027a72050dc1488510959b384fc6e03d3b7e45994b1a73abeaa9307114195 +size 840 diff --git a/game/characters/hermione/face/eyes/slit.webp b/game/characters/hermione/face/eyes/slit.webp new file mode 100644 index 00000000..5093c0cd --- /dev/null +++ b/game/characters/hermione/face/eyes/slit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cac7be10c57324a5c673cf9afdbc099bb013cf08a1aabfb9273e1292507e740f +size 2248 diff --git a/game/characters/hermione/face/eyes/slit_mask.webp b/game/characters/hermione/face/eyes/slit_mask.webp new file mode 100644 index 00000000..fe4924f3 --- /dev/null +++ b/game/characters/hermione/face/eyes/slit_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e487181b57e86966c3b7be68b1577b34547f06e60c84efc80ec22e25d31779d +size 734 diff --git a/game/characters/hermione/face/eyes/squint.webp b/game/characters/hermione/face/eyes/squint.webp new file mode 100644 index 00000000..54a29520 --- /dev/null +++ b/game/characters/hermione/face/eyes/squint.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0443289dbe510c4d0ecc14dcb6fc5ffc4c10bfd11aac3ba754309389da9beb4 +size 2592 diff --git a/game/characters/hermione/face/eyes/squint_mask.webp b/game/characters/hermione/face/eyes/squint_mask.webp new file mode 100644 index 00000000..887be780 --- /dev/null +++ b/game/characters/hermione/face/eyes/squint_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38f0a8876eb84f4c5ad39525e343adffecfb4c85377a69b2cd1846f991892143 +size 906 diff --git a/game/characters/hermione/face/eyes/wide.webp b/game/characters/hermione/face/eyes/wide.webp new file mode 100644 index 00000000..cc5065e4 --- /dev/null +++ b/game/characters/hermione/face/eyes/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d2a36ab5646c8178ba932b0b5db99f7d9dca189601b5eb9d8984e1ba4d378e4 +size 2828 diff --git a/game/characters/hermione/face/eyes/wide_mask.webp b/game/characters/hermione/face/eyes/wide_mask.webp new file mode 100644 index 00000000..05407db2 --- /dev/null +++ b/game/characters/hermione/face/eyes/wide_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d631a1f75e0c37d4656aba672ec600920c86a6ddb8c7f0767e2212bfb0df1c7 +size 1144 diff --git a/game/characters/hermione/face/eyes/wink.webp b/game/characters/hermione/face/eyes/wink.webp new file mode 100644 index 00000000..d054fc17 --- /dev/null +++ b/game/characters/hermione/face/eyes/wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf6b34a577e7c608962dfa8243e3517203de3252ec3d8fce8a20de8c765c1784 +size 2502 diff --git a/game/characters/hermione/face/eyes/wink_mask.webp b/game/characters/hermione/face/eyes/wink_mask.webp new file mode 100644 index 00000000..bd73f416 --- /dev/null +++ b/game/characters/hermione/face/eyes/wink_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b99cca3b8529be1b98c6c6ecace542834b41060c3fc091f6379c26dea1be6ae0 +size 702 diff --git a/game/characters/hermione/face/mouth/angry.webp b/game/characters/hermione/face/mouth/angry.webp new file mode 100644 index 00000000..ea115d4d --- /dev/null +++ b/game/characters/hermione/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ba2f1e362996335a25c929b64d3d231db4e5468022256f23ab7d76781a93b34 +size 3286 diff --git a/game/characters/hermione/face/mouth/annoyed.webp b/game/characters/hermione/face/mouth/annoyed.webp new file mode 100644 index 00000000..3c6373d1 --- /dev/null +++ b/game/characters/hermione/face/mouth/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47fd69deee1a2dbd7f3daee18aaf8706d0739c8d58a91f51270880dcd0f5e548 +size 1556 diff --git a/game/characters/hermione/face/mouth/base.webp b/game/characters/hermione/face/mouth/base.webp new file mode 100644 index 00000000..1b399c04 --- /dev/null +++ b/game/characters/hermione/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62711dfb10ba5c9995b51e54b1c0da7e57b81900743f61748faf86209fff552a +size 1644 diff --git a/game/characters/hermione/face/mouth/clench.webp b/game/characters/hermione/face/mouth/clench.webp new file mode 100644 index 00000000..3e2f5505 --- /dev/null +++ b/game/characters/hermione/face/mouth/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6dfc7a871028f85358a51a98a52e130e133c79c0c584924e1a0cfc1d28f3af0b +size 2930 diff --git a/game/characters/hermione/face/mouth/crooked_smile.webp b/game/characters/hermione/face/mouth/crooked_smile.webp new file mode 100644 index 00000000..720526b9 --- /dev/null +++ b/game/characters/hermione/face/mouth/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc22a8aa6d77438fb9bd2e4f918cb2329cec9f0e598ecc76723baa47a58ad308 +size 3216 diff --git a/game/characters/hermione/face/mouth/cum.webp b/game/characters/hermione/face/mouth/cum.webp new file mode 100644 index 00000000..9287ddcf --- /dev/null +++ b/game/characters/hermione/face/mouth/cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9d2f6029df53972bc59b49615793a509dc4b205b1f8070793987da305f84d2d +size 1756 diff --git a/game/characters/hermione/face/mouth/disgust.webp b/game/characters/hermione/face/mouth/disgust.webp new file mode 100644 index 00000000..99d4ed66 --- /dev/null +++ b/game/characters/hermione/face/mouth/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f92691b2864a237e69e75433d33b93a76370cd300540e911531df253fcf466f +size 2268 diff --git a/game/characters/hermione/face/mouth/full.webp b/game/characters/hermione/face/mouth/full.webp new file mode 100644 index 00000000..b3e2e354 --- /dev/null +++ b/game/characters/hermione/face/mouth/full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9c1984c8fcfeb0361ee010ddc73476506c530fbb6ef49022596cd2d355ceace +size 8976 diff --git a/game/characters/hermione/face/mouth/full_cum.webp b/game/characters/hermione/face/mouth/full_cum.webp new file mode 100644 index 00000000..19bf918e --- /dev/null +++ b/game/characters/hermione/face/mouth/full_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c93c4e199e6a32d9c6a4b2d87b306fa34c3079fc5a77dfa013482ce1d9c15b7 +size 10326 diff --git a/game/characters/hermione/face/mouth/full_panties.webp b/game/characters/hermione/face/mouth/full_panties.webp new file mode 100644 index 00000000..644c946f --- /dev/null +++ b/game/characters/hermione/face/mouth/full_panties.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1030f9bf812e226b8b536277a2baf861903adca8d3e86681dda70c777e32d7c2 +size 9450 diff --git a/game/characters/hermione/face/mouth/grin.webp b/game/characters/hermione/face/mouth/grin.webp new file mode 100644 index 00000000..c9ebaa32 --- /dev/null +++ b/game/characters/hermione/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d17cd11fddcb128b18177fa2eb95ba6240a26bd9f8485d2e72b76e3edaa5412 +size 3292 diff --git a/game/characters/hermione/face/mouth/mad.webp b/game/characters/hermione/face/mouth/mad.webp new file mode 100644 index 00000000..bd251ece --- /dev/null +++ b/game/characters/hermione/face/mouth/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3dba34e986ed0d2a4778f0c8f2084f46798a460382d46943bc1ce56c9597c50 +size 2350 diff --git a/game/characters/hermione/face/mouth/normal.webp b/game/characters/hermione/face/mouth/normal.webp new file mode 100644 index 00000000..f6c50778 --- /dev/null +++ b/game/characters/hermione/face/mouth/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:251662ba9ac9203bbf5972c86a5c6c9615fef9f30d774f7f37c66fae7a0c8f06 +size 1458 diff --git a/game/characters/hermione/face/mouth/open.webp b/game/characters/hermione/face/mouth/open.webp new file mode 100644 index 00000000..066b5707 --- /dev/null +++ b/game/characters/hermione/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:795aa28c614997cd901487f19ebc3cb9ad462bfc79d5d75b3a216b79d6a9a0aa +size 2344 diff --git a/game/characters/hermione/face/mouth/open_tongue.webp b/game/characters/hermione/face/mouth/open_tongue.webp new file mode 100644 index 00000000..f8d7fbef --- /dev/null +++ b/game/characters/hermione/face/mouth/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdb7cdff1a02e9031bb054fc4baecd58e80fbb578b68ce49f73dead4edbefbb7 +size 2310 diff --git a/game/characters/hermione/face/mouth/open_wide_tongue.webp b/game/characters/hermione/face/mouth/open_wide_tongue.webp new file mode 100644 index 00000000..661261e4 --- /dev/null +++ b/game/characters/hermione/face/mouth/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53e235f81e23a10f0eecf347bb3e1a6d6df2a36826130d028a794cc8cce0c084 +size 6122 diff --git a/game/characters/hermione/face/mouth/open_wide_tongue_cum.webp b/game/characters/hermione/face/mouth/open_wide_tongue_cum.webp new file mode 100644 index 00000000..68b67d54 --- /dev/null +++ b/game/characters/hermione/face/mouth/open_wide_tongue_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:842cdaed8c60a2bb3cc0bfead4fe36cd131100a4250d44be464cafa1cdd35ba6 +size 6938 diff --git a/game/characters/hermione/face/mouth/open_wide_tongue_panties.webp b/game/characters/hermione/face/mouth/open_wide_tongue_panties.webp new file mode 100644 index 00000000..dcc6348b --- /dev/null +++ b/game/characters/hermione/face/mouth/open_wide_tongue_panties.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa1ee00eb2c69ef538a9e405a78de1917868a55ae999777cd5df8b26283ce984 +size 6480 diff --git a/game/characters/hermione/face/mouth/scream.webp b/game/characters/hermione/face/mouth/scream.webp new file mode 100644 index 00000000..671fede7 --- /dev/null +++ b/game/characters/hermione/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7baa90e90d5fad7803836189084ba60f5c09d1c319aa2ac28a4741f05425c934 +size 6210 diff --git a/game/characters/hermione/face/mouth/shock.webp b/game/characters/hermione/face/mouth/shock.webp new file mode 100644 index 00000000..83e4fd5a --- /dev/null +++ b/game/characters/hermione/face/mouth/shock.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c820c0412e07a6df13d6381d834f520635338c1023242951660a56fe3d22ba93 +size 2782 diff --git a/game/characters/hermione/face/mouth/silly.webp b/game/characters/hermione/face/mouth/silly.webp new file mode 100644 index 00000000..6ee9dcb3 --- /dev/null +++ b/game/characters/hermione/face/mouth/silly.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1846fd4070cfda1203434a8312aa64ae3e95f7a134f3dbd3087dc66c70837c78 +size 3298 diff --git a/game/characters/hermione/face/mouth/smile.webp b/game/characters/hermione/face/mouth/smile.webp new file mode 100644 index 00000000..11de0078 --- /dev/null +++ b/game/characters/hermione/face/mouth/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cd795aa71a45e71f69511ab343cf7e274d3060af14b5dcf9e6080aec709a84d +size 3598 diff --git a/game/characters/hermione/face/mouth/soft.webp b/game/characters/hermione/face/mouth/soft.webp new file mode 100644 index 00000000..732f364d --- /dev/null +++ b/game/characters/hermione/face/mouth/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:871b71a57ff12e211318dbe22a65d7bec77f804d7efd0fdd9dedcf632946458c +size 2310 diff --git a/game/characters/hermione/face/mouth/upset.webp b/game/characters/hermione/face/mouth/upset.webp new file mode 100644 index 00000000..5072f7c1 --- /dev/null +++ b/game/characters/hermione/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3aebaa6aca1ab2e2d21d483877ec39598b15c6eab1f61827261c1f9e559462f5 +size 1560 diff --git a/game/characters/hermione/face/pupils/L.webp b/game/characters/hermione/face/pupils/L.webp new file mode 100644 index 00000000..c8be1dd6 --- /dev/null +++ b/game/characters/hermione/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa76bfb8481861c0223ede0ca0fccf8e22fc77eefdeb096c1bd37785aa808448 +size 1570 diff --git a/game/characters/hermione/face/pupils/L_soft.webp b/game/characters/hermione/face/pupils/L_soft.webp new file mode 100644 index 00000000..0a6de4d5 --- /dev/null +++ b/game/characters/hermione/face/pupils/L_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bf58ce89969340e1a3ac20c41e8d293e2b2a9b64b9fa050a13eeaf79057eaec +size 1704 diff --git a/game/characters/hermione/face/pupils/R.webp b/game/characters/hermione/face/pupils/R.webp new file mode 100644 index 00000000..56f4599b --- /dev/null +++ b/game/characters/hermione/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63c1f07dc4a87eeb00cb4db203ed619319fccbf655e1a9952601f3a15a0c773a +size 1560 diff --git a/game/characters/hermione/face/pupils/R_soft.webp b/game/characters/hermione/face/pupils/R_soft.webp new file mode 100644 index 00000000..5990b4a4 --- /dev/null +++ b/game/characters/hermione/face/pupils/R_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f40c24c85398c4e83b7a944a8714146d478b7b62e17126585cf26b9049d475b8 +size 1624 diff --git a/game/characters/hermione/face/pupils/ahegao.webp b/game/characters/hermione/face/pupils/ahegao.webp new file mode 100644 index 00000000..01c69f07 --- /dev/null +++ b/game/characters/hermione/face/pupils/ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f468d54dbaa96951499c8ef2a068b0afd8331d41c0f0b26d192da072d300319 +size 1470 diff --git a/game/characters/hermione/face/pupils/dead.webp b/game/characters/hermione/face/pupils/dead.webp new file mode 100644 index 00000000..0ad15362 --- /dev/null +++ b/game/characters/hermione/face/pupils/dead.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e83ae490a7816db3910e2540f68997b708557d2108663d908ce50458653fb63 +size 1754 diff --git a/game/characters/hermione/face/pupils/down.webp b/game/characters/hermione/face/pupils/down.webp new file mode 100644 index 00000000..e3d78b19 --- /dev/null +++ b/game/characters/hermione/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5047c97e28408ff3f97888116d1aa4b9c96e20c5ddba465da9dc5807e5ecab12 +size 1560 diff --git a/game/characters/hermione/face/pupils/down_soft.webp b/game/characters/hermione/face/pupils/down_soft.webp new file mode 100644 index 00000000..1eecd91c --- /dev/null +++ b/game/characters/hermione/face/pupils/down_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbacb76a0623a9f0df3aebcdbc7557334ff035159f64e8da2a0e65524189aa27 +size 1690 diff --git a/game/characters/hermione/face/pupils/mid.webp b/game/characters/hermione/face/pupils/mid.webp new file mode 100644 index 00000000..10394021 --- /dev/null +++ b/game/characters/hermione/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdf9154530d6715e26666850b3df2186f30efee5c0d885b81c4f51c3e069396f +size 1482 diff --git a/game/characters/hermione/face/pupils/mid_soft.webp b/game/characters/hermione/face/pupils/mid_soft.webp new file mode 100644 index 00000000..dd47d3b9 --- /dev/null +++ b/game/characters/hermione/face/pupils/mid_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcecfef40556072b1e246ad89951052c39e2672808effe98f1bcfb51e9b482ab +size 1632 diff --git a/game/characters/hermione/face/pupils/shocked.webp b/game/characters/hermione/face/pupils/shocked.webp new file mode 100644 index 00000000..f4333992 --- /dev/null +++ b/game/characters/hermione/face/pupils/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76082d4d901a22f69dd256ae5b6b7c1d0ba3152a92edccd426d37c6a1652c4fb +size 1796 diff --git a/game/characters/hermione/face/pupils/squint.webp b/game/characters/hermione/face/pupils/squint.webp new file mode 100644 index 00000000..3368a560 --- /dev/null +++ b/game/characters/hermione/face/pupils/squint.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a72edb9f4762f25d8036291e35431b272eb2434fbc6489d214259f786ace41c6 +size 1456 diff --git a/game/characters/hermione/face/pupils/squint_soft.webp b/game/characters/hermione/face/pupils/squint_soft.webp new file mode 100644 index 00000000..2c39fad1 --- /dev/null +++ b/game/characters/hermione/face/pupils/squint_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37db0eb8ef1574036676a93314ab0a9f61b8db6b3a3f6bf58ee41a4599933930 +size 1718 diff --git a/game/characters/hermione/face/pupils/stare.webp b/game/characters/hermione/face/pupils/stare.webp new file mode 100644 index 00000000..fe72cbd9 --- /dev/null +++ b/game/characters/hermione/face/pupils/stare.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dff42f59f737a7042653055aa68a8a2da4ac2cc1a6101ed0de6edd7ec984c3b7 +size 1552 diff --git a/game/characters/hermione/face/pupils/stare_soft.webp b/game/characters/hermione/face/pupils/stare_soft.webp new file mode 100644 index 00000000..7c938ce9 --- /dev/null +++ b/game/characters/hermione/face/pupils/stare_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0608d5bb7b8ab254a38fac405b0865f5f470b2e64305a1ccfdc65d215a573a7 +size 1590 diff --git a/game/characters/hermione/face/pupils/up.webp b/game/characters/hermione/face/pupils/up.webp new file mode 100644 index 00000000..4456f787 --- /dev/null +++ b/game/characters/hermione/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca601323929fce1a4fbd97255ed6cb8151752f92765d40fccad17f573465bb6b +size 1604 diff --git a/game/characters/hermione/face/pupils/up_soft.webp b/game/characters/hermione/face/pupils/up_soft.webp new file mode 100644 index 00000000..cd045865 --- /dev/null +++ b/game/characters/hermione/face/pupils/up_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ecc2f0e26c206eb8adfff1046039f0c38c13d07dc056572d27f20534a44eb45 +size 1656 diff --git a/game/characters/hermione/face/tears/crying.webp b/game/characters/hermione/face/tears/crying.webp new file mode 100644 index 00000000..7b1b060f --- /dev/null +++ b/game/characters/hermione/face/tears/crying.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b647117cbcc1fafd02000ac1b25bba83807cc0ec4695ee9131e9b8b6ff48ba9 +size 7748 diff --git a/game/characters/hermione/face/tears/crying_blink.webp b/game/characters/hermione/face/tears/crying_blink.webp new file mode 100644 index 00000000..d0377573 --- /dev/null +++ b/game/characters/hermione/face/tears/crying_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7db47d43aff5e70df32ba4bd25697de1998ab7494f465c9573602fafae79c4c6 +size 3974 diff --git a/game/characters/hermione/face/tears/mascara.webp b/game/characters/hermione/face/tears/mascara.webp new file mode 100644 index 00000000..86c77d8c --- /dev/null +++ b/game/characters/hermione/face/tears/mascara.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d17e335038b239f1916a108a34800fb8f633cf57887ca366ef62c5ce24a77d4 +size 8790 diff --git a/game/characters/hermione/face/tears/mascara_crying.webp b/game/characters/hermione/face/tears/mascara_crying.webp new file mode 100644 index 00000000..8d8292a3 --- /dev/null +++ b/game/characters/hermione/face/tears/mascara_crying.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3966490e1f3a62d0bd98437d915675d469eaf85ac3520e01a1b4520788d0cab +size 7688 diff --git a/game/characters/hermione/face/tears/mascara_soft.webp b/game/characters/hermione/face/tears/mascara_soft.webp new file mode 100644 index 00000000..a8615cf4 --- /dev/null +++ b/game/characters/hermione/face/tears/mascara_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:395bf14e82ae06dea7169b3522aefe0f7d984720c835714ea7f269081f7f6129 +size 9552 diff --git a/game/characters/hermione/face/tears/mascara_soft_blink.webp b/game/characters/hermione/face/tears/mascara_soft_blink.webp new file mode 100644 index 00000000..69567c7d --- /dev/null +++ b/game/characters/hermione/face/tears/mascara_soft_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6eb4cb10fd98947c34a12dc3be6bd7f98b3cf2b665ff719e52ec6bff62b9e75 +size 9752 diff --git a/game/characters/hermione/face/tears/messy.webp b/game/characters/hermione/face/tears/messy.webp new file mode 100644 index 00000000..53b13cd4 --- /dev/null +++ b/game/characters/hermione/face/tears/messy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06050bc55d5824a1a506d0dfd454f17e1ed28c3da5acffb364892ce2fddac68d +size 9034 diff --git a/game/characters/hermione/face/tears/soft.webp b/game/characters/hermione/face/tears/soft.webp new file mode 100644 index 00000000..5d27fd48 --- /dev/null +++ b/game/characters/hermione/face/tears/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6a9d585f5f04a291e6764a810bbbe7522126fadfdb879cfebbc80c1c06af8db +size 1248 diff --git a/game/characters/hermione/face/tears/soft_blink.webp b/game/characters/hermione/face/tears/soft_blink.webp new file mode 100644 index 00000000..a8347724 --- /dev/null +++ b/game/characters/hermione/face/tears/soft_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44b52b17482de89a8cc7906bc20a821be0180023873bd3c862ec8ea67593ed0f +size 1336 diff --git a/game/characters/hermione/face/tears/sweat.webp b/game/characters/hermione/face/tears/sweat.webp new file mode 100644 index 00000000..cc72f545 --- /dev/null +++ b/game/characters/hermione/face/tears/sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf708752e6bb06786dc010279f269726cff3985486ec38c87558ba9ce435170a +size 2062 diff --git a/game/characters/hermione/face/tears/tears_crying_side.webp b/game/characters/hermione/face/tears/tears_crying_side.webp new file mode 100644 index 00000000..1a3c276a --- /dev/null +++ b/game/characters/hermione/face/tears/tears_crying_side.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fabc823d7bc037e7251e90196389f782be45f134fd7f5c72d79e6139012c5129 +size 3494 diff --git a/game/characters/hermione/face/tears/tears_down.webp b/game/characters/hermione/face/tears/tears_down.webp new file mode 100644 index 00000000..a408677d --- /dev/null +++ b/game/characters/hermione/face/tears/tears_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf24ba865d21065dfb46581d2e1d99b7508738371e689d01a042aae03bd15172 +size 7688 diff --git a/game/characters/hermione/face/tears/tears_mascara_crying_blink.webp b/game/characters/hermione/face/tears/tears_mascara_crying_blink.webp new file mode 100644 index 00000000..dc02a65d --- /dev/null +++ b/game/characters/hermione/face/tears/tears_mascara_crying_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf35cefe49dd202741397b25dec4523ee14a7b3951418bd1057e156cfc3a4966 +size 8256 diff --git a/game/characters/hermione/face/tears/tears_soft_sweat.webp b/game/characters/hermione/face/tears/tears_soft_sweat.webp new file mode 100644 index 00000000..0ecaf1b2 --- /dev/null +++ b/game/characters/hermione/face/tears/tears_soft_sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2eb13788a005239f95e2fa795b98a3b009352d24282158316b68f255a597169 +size 3068 diff --git a/game/characters/hermione/poses/CG_bent_over/body/armleft/down.webp b/game/characters/hermione/poses/CG_bent_over/body/armleft/down.webp new file mode 100644 index 00000000..bb015b72 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/body/armleft/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4cd5ee257ae89dc374e4ce22353bf98858162496dee26b9a4cfbb09effa7271b +size 306 diff --git a/game/characters/hermione/poses/CG_bent_over/body/armright/down.webp b/game/characters/hermione/poses/CG_bent_over/body/armright/down.webp new file mode 100644 index 00000000..8bfadd43 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/body/armright/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6605a8b5457e1d2faac1ef67e242558999f6dd827773020ee2538b36d1172db2 +size 11022 diff --git a/game/characters/hermione/poses/CG_bent_over/body/base/front.webp b/game/characters/hermione/poses/CG_bent_over/body/base/front.webp new file mode 100644 index 00000000..448c2218 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95eb33289f19554dfbf9fc25b21c55499ee82e9ef2a8b4a16c1db33ceda4bd95 +size 122758 diff --git a/game/characters/hermione/poses/CG_bent_over/body/breasts/normal.webp b/game/characters/hermione/poses/CG_bent_over/body/breasts/normal.webp new file mode 100644 index 00000000..bb015b72 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4cd5ee257ae89dc374e4ce22353bf98858162496dee26b9a4cfbb09effa7271b +size 306 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/bottom/school_skirt_1/0.webp b/game/characters/hermione/poses/CG_bent_over/clothes/bottom/school_skirt_1/0.webp new file mode 100644 index 00000000..7139ffd8 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/bottom/school_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:537d0f93e11eb2a52c888dfb009cb9c4f90d4274e710dce3588d44c81ed62555 +size 11976 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/bottom/school_skirt_1/1.webp b/game/characters/hermione/poses/CG_bent_over/clothes/bottom/school_skirt_1/1.webp new file mode 100644 index 00000000..bb015b72 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/bottom/school_skirt_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4cd5ee257ae89dc374e4ce22353bf98858162496dee26b9a4cfbb09effa7271b +size 306 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/bottom/school_skirt_1/outline.webp b/game/characters/hermione/poses/CG_bent_over/clothes/bottom/school_skirt_1/outline.webp new file mode 100644 index 00000000..fa1a9e03 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/bottom/school_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ec78a1288797257ad14073fd5e7662e0759b109609e441c19dd460c7a66967a +size 22914 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/0.webp b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/0.webp new file mode 100644 index 00000000..8572c135 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e57d02f2d643a7f9c0da36896163cfddbe0b158171c5a15795336bfb89a145fb +size 22782 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/0_back.webp b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/0_back.webp new file mode 100644 index 00000000..ad284645 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fad39ef5ce5e63673390fba412cff37d8df3d41b9d04b428e95738250b3dbaed +size 18648 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/0_front.webp b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/0_front.webp new file mode 100644 index 00000000..f4194708 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3076814916e5a29d4ea24c58a74ed3f038cfd11f1741a777e3c0efb487201f53 +size 10846 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/1.webp b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/1.webp new file mode 100644 index 00000000..909cf6eb --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e3f2b53b2deaf023abc5d403702de524ae490bfb14fda48eda005f9272e2087 +size 13350 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/1_back.webp b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/1_back.webp new file mode 100644 index 00000000..c56de67d --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:560db19d8b2f529f4c798bb4afe675bcb63830966fb409635ab91cc4e1c5cb41 +size 6914 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/1_front.webp b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/1_front.webp new file mode 100644 index 00000000..622348bd --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/1_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cbf9eba129e158cb92c2658c04201fe0af6c0ced34c29d746873b6ffa81c4ca +size 3548 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/2.webp b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/2.webp new file mode 100644 index 00000000..3da36393 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1529952bd2cbcb9122fbe1888ba7d462538a94d9f2c1eb7cf2128f9b0f197530 +size 3018 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/outline.webp b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/outline.webp new file mode 100644 index 00000000..35160101 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:302359a3b570d09e23acf3be486b3667d5b97431f7fd1b6da18a02fcc8bce7f7 +size 51010 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/outline_back.webp b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/outline_back.webp new file mode 100644 index 00000000..c514a9cb --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f597a29e771ec81aecd2d819362b03bd7103ac9d3cd84a31c760d84eab81140c +size 26698 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/outline_front.webp b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/outline_front.webp new file mode 100644 index 00000000..1d8491a7 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/hair/base/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1070da38e8bc5d758618416fc988e137f9e47c0ed11e4b8e70d56a7cc7b5deab +size 19828 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/0.webp b/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/0.webp new file mode 100644 index 00000000..7979880f --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66a5f53f55a5f70598f12dab3ae466ef86f68ab99f7bd471bc6fa574512289a2 +size 10032 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/1.webp b/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/1.webp new file mode 100644 index 00000000..7f87ef32 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e0dc57d4f4f74319e4208a49ff8650641e93ac5ffdd0d6043b813717e8a308a +size 13228 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/2.webp b/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/2.webp new file mode 100644 index 00000000..d5c3cde7 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f5f5119dc91932c1848215b7822487af4b8d3a59881257c07263750a0ade376 +size 11822 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/3.webp b/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/3.webp new file mode 100644 index 00000000..49088e37 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eef86bf327ede0c36abb8c9d4a5885bc2d3e617a5f1be8eddad55ce60f858e5f +size 12046 diff --git a/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/outline.webp b/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/outline.webp new file mode 100644 index 00000000..ebf1c980 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8217b9362f9f43021c25b77381b12c0fcb676bca8bb646648d3350c2bd04282 +size 41970 diff --git a/game/characters/hermione/poses/CG_bent_over/cum/body/heavy.webp b/game/characters/hermione/poses/CG_bent_over/cum/body/heavy.webp new file mode 100644 index 00000000..4f8d56ca --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/cum/body/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e80f89bb93f9e1cc0aed07f19f2263a25bddc207481924b2296da8b5be0b376 +size 38300 diff --git a/game/characters/hermione/poses/CG_bent_over/cum/body/light.webp b/game/characters/hermione/poses/CG_bent_over/cum/body/light.webp new file mode 100644 index 00000000..5d7f9f94 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/cum/body/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47eb0c206d0efa03820108e89ae6f63ffea731fc676683fc4a9d1509cc501792 +size 15536 diff --git a/game/characters/hermione/poses/CG_bent_over/cum/body/shirt_heavy.webp b/game/characters/hermione/poses/CG_bent_over/cum/body/shirt_heavy.webp new file mode 100644 index 00000000..1aa55d89 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/cum/body/shirt_heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34e684e0cd1699c87fa888d47bdf0dd2ca460b2e99f0967fe15a93e57cb2dea7 +size 14582 diff --git a/game/characters/hermione/poses/CG_bent_over/cum/body/shirt_light.webp b/game/characters/hermione/poses/CG_bent_over/cum/body/shirt_light.webp new file mode 100644 index 00000000..0a668cef --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/cum/body/shirt_light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:230d9b15b9367bcbdb3d2e7b4cfc67b1663fb1360c024a396447c678382ec646 +size 8006 diff --git a/game/characters/hermione/poses/CG_bent_over/cum/body/skirt_heavy.webp b/game/characters/hermione/poses/CG_bent_over/cum/body/skirt_heavy.webp new file mode 100644 index 00000000..3051a4d9 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/cum/body/skirt_heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b33dbae04bffbff46544d0284b725d8875413fc20dca8c55223881018a0c2c2 +size 11538 diff --git a/game/characters/hermione/poses/CG_bent_over/cum/body/skirt_light.webp b/game/characters/hermione/poses/CG_bent_over/cum/body/skirt_light.webp new file mode 100644 index 00000000..c1b13af6 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/cum/body/skirt_light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d00a6475b748353e939650a9128a50d9be065de1018b0769026fd08abda6d9fe +size 8002 diff --git a/game/characters/hermione/poses/CG_bent_over/cum/pussy/heavy.webp b/game/characters/hermione/poses/CG_bent_over/cum/pussy/heavy.webp new file mode 100644 index 00000000..bce6f1f7 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/cum/pussy/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:121f42d63509a692f2d5858d653bf1742045a41f091ae5228e708af655c9a416 +size 6594 diff --git a/game/characters/hermione/poses/CG_bent_over/cum/pussy/light.webp b/game/characters/hermione/poses/CG_bent_over/cum/pussy/light.webp new file mode 100644 index 00000000..1d7f6cf7 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/cum/pussy/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f1953302538d39e6a03149d7fa506dff1aafaeaf88fde4e74b2f488ab04258b +size 3842 diff --git a/game/characters/hermione/poses/CG_bent_over/face/cheeks/blush.webp b/game/characters/hermione/poses/CG_bent_over/face/cheeks/blush.webp new file mode 100644 index 00000000..ba2212a4 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5d8b5d0a577d30c03eae53a677a448aeae6ae862c219a2bc8a8fa2cca31988d +size 20918 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyebrows/angry.webp b/game/characters/hermione/poses/CG_bent_over/face/eyebrows/angry.webp new file mode 100644 index 00000000..fc736ddc --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ba4d9da0df6f74631969251942755911e233dda4bf39e8593606cdeb416b471 +size 5892 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyebrows/annoyed.webp b/game/characters/hermione/poses/CG_bent_over/face/eyebrows/annoyed.webp new file mode 100644 index 00000000..1feee304 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyebrows/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af6098db97e1a06d6ef8f16f0050c44c6cbebc888070c0d076a2ad72f989b2ce +size 5786 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyebrows/base.webp b/game/characters/hermione/poses/CG_bent_over/face/eyebrows/base.webp new file mode 100644 index 00000000..58a49649 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b726beff1519e79343651e7c9b5d74e4e4e6872166cf1d3ca1335ae1f866d55a +size 5658 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyebrows/worried.webp b/game/characters/hermione/poses/CG_bent_over/face/eyebrows/worried.webp new file mode 100644 index 00000000..36b2b3df --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:928b2f3b0298acf8d2ad221b8ab44fda9d29b762411458494420d6b236c01138 +size 5702 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyes/base.webp b/game/characters/hermione/poses/CG_bent_over/face/eyes/base.webp new file mode 100644 index 00000000..9fe6d42f --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df102387bc2653676b0fd773b52440a80775c5f865b175cf449e35b738d0da42 +size 9152 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyes/base_mask.webp b/game/characters/hermione/poses/CG_bent_over/face/eyes/base_mask.webp new file mode 100644 index 00000000..05196e6a --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a60f9da36869bd274f4ab80585367592b7f596fd9749e07251d86854bf83ada +size 2552 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyes/closed.webp b/game/characters/hermione/poses/CG_bent_over/face/eyes/closed.webp new file mode 100644 index 00000000..675858ba --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ab6b59eb4f8ad7fa5b4adaaf760fa0b7d6f7a4117e2957752d189589dd47732 +size 10712 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyes/happy.webp b/game/characters/hermione/poses/CG_bent_over/face/eyes/happy.webp new file mode 100644 index 00000000..42375b0b --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyes/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a9707301385d2797fb6d207cee383f77bfd61ce417fcbda5b2cb2edafe1ede6 +size 9210 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyes/happyCl.webp b/game/characters/hermione/poses/CG_bent_over/face/eyes/happyCl.webp new file mode 100644 index 00000000..52ca4c50 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyes/happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fddcb56d2aff2737982a8d3a23f513b78df576b3f1a4d0de90bb6a5f9c33f49d +size 12092 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyes/happy_mask.webp b/game/characters/hermione/poses/CG_bent_over/face/eyes/happy_mask.webp new file mode 100644 index 00000000..2203ad93 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyes/happy_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9a47bfdceb4f80cdb002faca84408697d9fed6e9b527082dad72bac9f8ee38c +size 2532 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyes/narrow.webp b/game/characters/hermione/poses/CG_bent_over/face/eyes/narrow.webp new file mode 100644 index 00000000..fb6cb312 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe90250adb84a181ed98dd985d9ffdb942f59b9e8a60b969c50c59ec793d21de +size 10094 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyes/narrow_mask.webp b/game/characters/hermione/poses/CG_bent_over/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..3083cafa --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0ee81393d48d7acfc76e3f3c874c8f49bdf914ed450fa6a5076423cb842f465 +size 2514 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyes/wide.webp b/game/characters/hermione/poses/CG_bent_over/face/eyes/wide.webp new file mode 100644 index 00000000..c5debe31 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyes/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f626c0fb51a7052a83176c5e000fac94a1b7e73129b13becb1b69a268decdbb +size 10004 diff --git a/game/characters/hermione/poses/CG_bent_over/face/eyes/wide_mask.webp b/game/characters/hermione/poses/CG_bent_over/face/eyes/wide_mask.webp new file mode 100644 index 00000000..f3b97fa3 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/eyes/wide_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72037cf04070e17bcd346f04a978ab2ff0a1b9ddf61f1e13b16b2a0b45ab242f +size 2594 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/angry.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/angry.webp new file mode 100644 index 00000000..5cad78e8 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2634002816f465e77e9f197a8989a86a86857cdf8696dc9d11e407dbe4b8ef5 +size 8374 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/annoyed.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/annoyed.webp new file mode 100644 index 00000000..380e19b4 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ddc733cbfa5a1ce8080bcaac2a43f731b459f11d6ae1d32a26145f576657125 +size 5062 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/base.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/base.webp new file mode 100644 index 00000000..6c2de107 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44621635683ed2ecd72c60af12ff1f11bc4b6cad9a113367f3db6fd7db2c53e2 +size 5202 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/clench.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/clench.webp new file mode 100644 index 00000000..61261ab4 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ff2598ba67caf5f9af35da3faa1a08e3ccbf1ce97f0dde63ffdd9e1259ed64f +size 7494 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/crooked_smile.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/crooked_smile.webp new file mode 100644 index 00000000..929cf4ca --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:568759424b3beee45931c7c980c883eba45cdabcba8f5671498c99e429b3fe7a +size 7552 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/disgust.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/disgust.webp new file mode 100644 index 00000000..b5b61e90 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b80a540264ebeae8147a54a9c9889c5914a26d69405270294f9958278bfc620f +size 7210 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/grin.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/grin.webp new file mode 100644 index 00000000..f9c48c92 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f22b60385289410c267d1f587c22c8a81a834523c44fa53e2c1fd8a6e3ffd092 +size 8150 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/mad.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/mad.webp new file mode 100644 index 00000000..ac5515fe --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f9f7ca1d4831b5064c510a17c185f6c99884590558efbca34766b4b59a9c873 +size 7316 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/normal.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/normal.webp new file mode 100644 index 00000000..271be797 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b6ba3ab2c5d4bd7eeb3e69e7eef944b0ed569925aec09cedf4529068504fb13 +size 4800 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/open.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/open.webp new file mode 100644 index 00000000..c884e919 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bcbe4f6bdf24e380926950dc92e93859fa4b247b9e4905c92af4c8d8870bb93e +size 7350 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/open_tongue.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/open_tongue.webp new file mode 100644 index 00000000..f24901bd --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:786b6d3017b389eeaa7a5c3be50f72595096f411d922b6964c356b7e79f83b7f +size 7414 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/open_wide_tongue.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/open_wide_tongue.webp new file mode 100644 index 00000000..4ca01f44 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:423a194d549ee85c3bc77c28d4600db5e0af048a2406e58a3225543b13f44edc +size 22156 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/scream.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/scream.webp new file mode 100644 index 00000000..74a9acce --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e34360c0d22ab4ca31b28251e94ba45a796c8bb5edf53a6771c90c88b072cdc +size 21790 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/smile.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/smile.webp new file mode 100644 index 00000000..bac17fe2 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b8381c6985e779f6b7912475227f14fcbc9aa1b059b75e2165024912ff3e519 +size 7666 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/soft.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/soft.webp new file mode 100644 index 00000000..fcc869df --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63316e5a13031d70ea7728f764caaea37d7cae0a810ab330e75a9820e11ab8c3 +size 5610 diff --git a/game/characters/hermione/poses/CG_bent_over/face/mouth/upset.webp b/game/characters/hermione/poses/CG_bent_over/face/mouth/upset.webp new file mode 100644 index 00000000..6b6b43c4 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69c9578329424dd05f7d690d14fbf8aae5e3acfeae81b535ef32a0be890941e7 +size 5134 diff --git a/game/characters/hermione/poses/CG_bent_over/face/pupils/L.webp b/game/characters/hermione/poses/CG_bent_over/face/pupils/L.webp new file mode 100644 index 00000000..7811dad6 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72e71d928f7f22eba5ee886277690279b2e2ada8074d997758df9adc965e6570 +size 5060 diff --git a/game/characters/hermione/poses/CG_bent_over/face/pupils/R.webp b/game/characters/hermione/poses/CG_bent_over/face/pupils/R.webp new file mode 100644 index 00000000..deb19a14 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1415e373c76c47f65782ca61b0e36e90fb0ea65685080067e63beefdb2cad7e +size 5242 diff --git a/game/characters/hermione/poses/CG_bent_over/face/pupils/ahegao.webp b/game/characters/hermione/poses/CG_bent_over/face/pupils/ahegao.webp new file mode 100644 index 00000000..71def742 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/pupils/ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c22ee41e4dc359dbb1b558d08be81318dd67dc8bb61384a55e52e2c9fecb83c8 +size 5212 diff --git a/game/characters/hermione/poses/CG_bent_over/face/pupils/down.webp b/game/characters/hermione/poses/CG_bent_over/face/pupils/down.webp new file mode 100644 index 00000000..20f4f687 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f82452cbf0157d8f4d1040df7e108877744ad957577c6fed255da84301099b8 +size 5194 diff --git a/game/characters/hermione/poses/CG_bent_over/face/pupils/mid.webp b/game/characters/hermione/poses/CG_bent_over/face/pupils/mid.webp new file mode 100644 index 00000000..59c0d4f2 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25c79b9fbf733054a2f73d4aa72e8ebe1e8ab4d57fcf8cec2fb1eec8e5787fc5 +size 5194 diff --git a/game/characters/hermione/poses/CG_bent_over/face/pupils/stare.webp b/game/characters/hermione/poses/CG_bent_over/face/pupils/stare.webp new file mode 100644 index 00000000..59c0d4f2 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/pupils/stare.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25c79b9fbf733054a2f73d4aa72e8ebe1e8ab4d57fcf8cec2fb1eec8e5787fc5 +size 5194 diff --git a/game/characters/hermione/poses/CG_bent_over/face/pupils/up.webp b/game/characters/hermione/poses/CG_bent_over/face/pupils/up.webp new file mode 100644 index 00000000..38fe9f04 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e348e1885a4087465e0656ef5ac21657e17cb4e17f18536cf42e1445de7f061 +size 5164 diff --git a/game/characters/hermione/poses/CG_bent_over/face/tears/soft.webp b/game/characters/hermione/poses/CG_bent_over/face/tears/soft.webp new file mode 100644 index 00000000..fcb2344e --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/tears/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e49b149ae56c9b58a233a0533b931de2ddce92dc7dec3520ed2f85d6997997cd +size 2780 diff --git a/game/characters/hermione/poses/CG_bent_over/face/tears/soft_blink.webp b/game/characters/hermione/poses/CG_bent_over/face/tears/soft_blink.webp new file mode 100644 index 00000000..21fbe341 --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/face/tears/soft_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:681cd351cdc0f2c6f8aca28701f3d96e0ad038928c59fd369340146c3aeaa18b +size 2790 diff --git a/game/characters/hermione/poses/CG_bent_over/loadable.webp b/game/characters/hermione/poses/CG_bent_over/loadable.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/hermione/poses/CG_bent_over/loadable.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/hermione/poses/CG_lean_back/body/armleft/down.webp b/game/characters/hermione/poses/CG_lean_back/body/armleft/down.webp new file mode 100644 index 00000000..3630aeec --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/body/armleft/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33390773da98950f3f9a9cd9e46f18c4df12e13058b9c1d889a5407f0032ec31 +size 50688 diff --git a/game/characters/hermione/poses/CG_lean_back/body/armright/down.webp b/game/characters/hermione/poses/CG_lean_back/body/armright/down.webp new file mode 100644 index 00000000..bb015b72 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/body/armright/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4cd5ee257ae89dc374e4ce22353bf98858162496dee26b9a4cfbb09effa7271b +size 306 diff --git a/game/characters/hermione/poses/CG_lean_back/body/base/front.webp b/game/characters/hermione/poses/CG_lean_back/body/base/front.webp new file mode 100644 index 00000000..e6e81603 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e2edb947128c7ff4fe127235314c149bded58dc1d1e5eafb28ca7a0ad162291 +size 127826 diff --git a/game/characters/hermione/poses/CG_lean_back/body/breasts/normal.webp b/game/characters/hermione/poses/CG_lean_back/body/breasts/normal.webp new file mode 100644 index 00000000..1232d375 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd9be8935772ce5812523abbd34107e92439347ce25f68ea9854bc83a5ec51b3 +size 25186 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/bottom/school_skirt_1/0.webp b/game/characters/hermione/poses/CG_lean_back/clothes/bottom/school_skirt_1/0.webp new file mode 100644 index 00000000..e263fb73 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/bottom/school_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f155b1960cb2b30baa376f54c052b482ae852798caafd58fa9e3255b51751cd +size 21808 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/bottom/school_skirt_1/1.webp b/game/characters/hermione/poses/CG_lean_back/clothes/bottom/school_skirt_1/1.webp new file mode 100644 index 00000000..27f0d2f7 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/bottom/school_skirt_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cdb7a99f7063bc55ff48e6e0860ea8ec95c2af93716f9753aa9cd5e2eb2fbe7d +size 2382 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/bottom/school_skirt_1/outline.webp b/game/characters/hermione/poses/CG_lean_back/clothes/bottom/school_skirt_1/outline.webp new file mode 100644 index 00000000..405abfae --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/bottom/school_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ade64a5d833946c1dfe4e006da9ad570eec734c04df258a4370b981426101d0 +size 22696 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/0.webp b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/0.webp new file mode 100644 index 00000000..984ff651 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c143b8e0bbcdf58333d9c8011fba58c8c13d1cf3e0eb4e5917c2b6b617d79e4 +size 25912 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/0_back.webp b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/0_back.webp new file mode 100644 index 00000000..0a21a50b --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6a4bbfc040e1b50c83e782bc0705dc4c613240596ce9ed8bb7f076e2bb34e04 +size 35246 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/1.webp b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/1.webp new file mode 100644 index 00000000..221bddf7 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3a937b50918292f408ae2a2f407bc073eeee5f1975160541838d0080c4fb905 +size 5940 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/1_back.webp b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/1_back.webp new file mode 100644 index 00000000..cde8f563 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f547a3b353ff4031ed91b0ce13efe90fa1b5fe53fa73ea535f7ae1cbb7fda995 +size 5328 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/2.webp b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/2.webp new file mode 100644 index 00000000..dbc70925 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ec80776be79eb25a5021cc091303b01c7b8389dcb454597b910443ddc765aed +size 3634 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/outline.webp b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/outline.webp new file mode 100644 index 00000000..cadb792e --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64f89bf3a7d2924a4e340f9436760f20344924e526a66bafecf6115b1378229b +size 24052 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/outline_back.webp b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/outline_back.webp new file mode 100644 index 00000000..cff0501b --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/hair/base/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d17a1d1ca14be137f11a48a53f4f3e520686dde71786be1e7f6fb7cb42325e3 +size 38182 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/0.webp b/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/0.webp new file mode 100644 index 00000000..37263896 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b82b6d85d247867556f6ca882647fb1fc65ad1c85e236deada613439a181a4f +size 16958 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/1.webp b/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/1.webp new file mode 100644 index 00000000..c5d52ea3 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:169de4f99538bcac4f41da8522c81c8d4eccc4aacac93000b5f223282d12e77c +size 34690 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/2.webp b/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/2.webp new file mode 100644 index 00000000..870452f3 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3cfaae7364d9f4614f7c5a57eeee9c8a00ae601fc1e83d20ee915f7588e20d07 +size 16644 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/3.webp b/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/3.webp new file mode 100644 index 00000000..3facdb06 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73938f83550a00fc98d55cf22974d26ce1f4b6a75008e2a9c6ea028c31eecc93 +size 19086 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/mask.webp b/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/mask.webp new file mode 100644 index 00000000..f1bb9354 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7f00dfe8968b5120231018ef678234cff13f935750097042939649a6e77b695 +size 16404 diff --git a/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/outline.webp b/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/outline.webp new file mode 100644 index 00000000..0baa781a --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1968fae88befb531e3a5ca0e14f3e95b5d2061831a40c12dd3a6d03008b9378 +size 38254 diff --git a/game/characters/hermione/poses/CG_lean_back/face/cheeks/blush.webp b/game/characters/hermione/poses/CG_lean_back/face/cheeks/blush.webp new file mode 100644 index 00000000..6c74290f --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a00f0c35a51e425702d9be3f07cf7e72fa8079d9de3c1bc44ad6e0105b8654c5 +size 21394 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyebrows/angry.webp b/game/characters/hermione/poses/CG_lean_back/face/eyebrows/angry.webp new file mode 100644 index 00000000..18d5c347 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aeb825a74155a7a07a5c387bf0b69d640594cd9f85d19e8556d0388cfdc7c853 +size 4954 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyebrows/annoyed.webp b/game/characters/hermione/poses/CG_lean_back/face/eyebrows/annoyed.webp new file mode 100644 index 00000000..8cd3142b --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyebrows/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65aab248221f1e14de54180d6e42bcb65adbd849d6b8f1d045932f81492c9572 +size 4878 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyebrows/base.webp b/game/characters/hermione/poses/CG_lean_back/face/eyebrows/base.webp new file mode 100644 index 00000000..35115830 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b191be1f4669f7d4f55b92437b3d55265141b2f70ba3fdc1276d49cbf77fa3fa +size 4816 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyebrows/worried.webp b/game/characters/hermione/poses/CG_lean_back/face/eyebrows/worried.webp new file mode 100644 index 00000000..4023d07b --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db31763b966eedb395e5901fa9c33f52b5c16d81e7d6288ecc68728a947b446c +size 4830 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyes/base.webp b/game/characters/hermione/poses/CG_lean_back/face/eyes/base.webp new file mode 100644 index 00000000..bdd73775 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a8e398c41bf658b8d7074733681fe9344540a1164a7bfa4f035cad3c30642a9 +size 6214 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyes/base_mask.webp b/game/characters/hermione/poses/CG_lean_back/face/eyes/base_mask.webp new file mode 100644 index 00000000..3444a526 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59fc7817a1de37a989b80036d04936dc6f89f6bb5dfab7c34859b5e83137425d +size 2412 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyes/closed.webp b/game/characters/hermione/poses/CG_lean_back/face/eyes/closed.webp new file mode 100644 index 00000000..24106417 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb9998e3f46811ee7b560de27d03e341b49095d43c1f58823a056dbd33839ee3 +size 8162 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyes/happy.webp b/game/characters/hermione/poses/CG_lean_back/face/eyes/happy.webp new file mode 100644 index 00000000..4f3f088a --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyes/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b20487646c53f0928ee639f7f05b597791fcece6864418b68c33a64971b25b40 +size 6242 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyes/happyCl.webp b/game/characters/hermione/poses/CG_lean_back/face/eyes/happyCl.webp new file mode 100644 index 00000000..6b397031 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyes/happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90625b68d478c2d2bf699a61cebbc5329bd412c312c00853b863afb76df7c479 +size 8638 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyes/happy_mask.webp b/game/characters/hermione/poses/CG_lean_back/face/eyes/happy_mask.webp new file mode 100644 index 00000000..ddcdd3c9 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyes/happy_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fab064f9138a303a898c5ba9f4aa2547907c2fb2246be3b5ad941c3490a5c7c3 +size 2420 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyes/narrow.webp b/game/characters/hermione/poses/CG_lean_back/face/eyes/narrow.webp new file mode 100644 index 00000000..d5f3fd5b --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb9956df158174fef77c908f6931a92266daf05d97851c5fafb984d3adb2783f +size 6690 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyes/narrow_mask.webp b/game/characters/hermione/poses/CG_lean_back/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..5a61b24f --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:263eeb8e713125ac56f023b218e56ef125dc57160a1653106c71b0cf2e6bf38d +size 1348 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyes/wide.webp b/game/characters/hermione/poses/CG_lean_back/face/eyes/wide.webp new file mode 100644 index 00000000..ff166437 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyes/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce2c67a8a8bd6e183409c5caa000a8107a688d9eedaf1d082a2d79055750457c +size 7012 diff --git a/game/characters/hermione/poses/CG_lean_back/face/eyes/wide_mask.webp b/game/characters/hermione/poses/CG_lean_back/face/eyes/wide_mask.webp new file mode 100644 index 00000000..b58719ff --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/eyes/wide_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2953d3ac2f523b4905ad34b8dc62b7ad9c6487247029a9e1b7237453931d7233 +size 2430 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/angry.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/angry.webp new file mode 100644 index 00000000..e2ca09c5 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:247f7e0051f2b1576c0be88a63238dc5423ccd89fa93678b45f3ed5379ade164 +size 7216 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/annoyed.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/annoyed.webp new file mode 100644 index 00000000..90d607eb --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6438c16f4d5910d80813cd527558c1e7db7a209200c6fc453e4c91a788b4c737 +size 4452 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/base.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/base.webp new file mode 100644 index 00000000..a463db6a --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87b7f8a7d3b007358c761ee1c97d0e03e957c8973e913cde52e97a26075448ef +size 4550 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/clench.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/clench.webp new file mode 100644 index 00000000..a5196b85 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cdf9e63b01f4f19896c553ce32ab33a9754db5dd4bc5e67f507f072e8f19896 +size 6614 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/crooked_smile.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/crooked_smile.webp new file mode 100644 index 00000000..66319b86 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3fcfaf684f0c53eee836912467060a0f10e65dc4a0ff6658abac1ab8d51ad6db +size 6638 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/disgust.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/disgust.webp new file mode 100644 index 00000000..86ca7f68 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d227eca6e6b67b0ac02a63b96dc97276b01481f5b48585fd992a0597a03ae237 +size 6016 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/full.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/full.webp new file mode 100644 index 00000000..556ba604 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8fd2bf7133c1aabae814ae4bc2bdd56e7334b7fab3462f7c297208df4e761df +size 23304 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/grin.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/grin.webp new file mode 100644 index 00000000..a649f24a --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da607609dcb20285f651a1b2cc955b3f0f66b21950fd69f3506e50523e90c65a +size 7004 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/mad.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/mad.webp new file mode 100644 index 00000000..4716ba19 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba3ed873730772a21e221729725a1b2c5c3ce438f1798879be09a4f3a45ef64e +size 6276 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/normal.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/normal.webp new file mode 100644 index 00000000..55c33576 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0aee1e39b41c5f130cd2513af2e40fe0d9775d788c7b50933fcac08bb06f524 +size 4222 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/open.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/open.webp new file mode 100644 index 00000000..86bc7516 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11a4e1d46053c0cfd5f4214146a9b1090c71708f542f6968582374a51ba368de +size 6448 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/open_tongue.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/open_tongue.webp new file mode 100644 index 00000000..37916fae --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35926fbd6c9321f9606edb094d94d9bdb1b75c9c5140dde64603f03ceb3d98a8 +size 6528 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/open_wide_tongue.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/open_wide_tongue.webp new file mode 100644 index 00000000..5fae71e0 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0ec63e2f58dfbeb52f8c61c66f51977ef38ad2ed587dcd47ca2f0b4f2a80e30 +size 19236 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/scream.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/scream.webp new file mode 100644 index 00000000..1f8a0331 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cdbdfd14e68c61c95548adbc826377a2981e63a79b8f8d00b9df82d8ad337c5 +size 18738 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/smile.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/smile.webp new file mode 100644 index 00000000..9cdd1227 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53f6dc1bc7effd3f345c29d71093aa4c917ef92423c90d253b7f6c2a5575d4b3 +size 6662 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/soft.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/soft.webp new file mode 100644 index 00000000..ed9d54ca --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5180fb137d7b168c158f8a8382aff8a77d6eb7c88d2bf7af826598e484d920d +size 5008 diff --git a/game/characters/hermione/poses/CG_lean_back/face/mouth/upset.webp b/game/characters/hermione/poses/CG_lean_back/face/mouth/upset.webp new file mode 100644 index 00000000..0fc47222 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c90b2c533fc11b9650f7b5328a5e5a14a8fd63b7668f20769e5269665003e89 +size 4490 diff --git a/game/characters/hermione/poses/CG_lean_back/face/pupils/L.webp b/game/characters/hermione/poses/CG_lean_back/face/pupils/L.webp new file mode 100644 index 00000000..85822a93 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:005bf96c7e56d205010855c1ece9363de9473258b4298dd8affa61adbe4789a8 +size 4494 diff --git a/game/characters/hermione/poses/CG_lean_back/face/pupils/R.webp b/game/characters/hermione/poses/CG_lean_back/face/pupils/R.webp new file mode 100644 index 00000000..3594c777 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f211fc918dfc763aa387cc032897f7a15af153a72f383d5839cd38dc55e60a2a +size 4498 diff --git a/game/characters/hermione/poses/CG_lean_back/face/pupils/ahegao.webp b/game/characters/hermione/poses/CG_lean_back/face/pupils/ahegao.webp new file mode 100644 index 00000000..2147bd51 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/pupils/ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76522b765527afd66c0650577e6ca7f681ad16aefd709cb4fcc77379db66d9bf +size 4508 diff --git a/game/characters/hermione/poses/CG_lean_back/face/pupils/down.webp b/game/characters/hermione/poses/CG_lean_back/face/pupils/down.webp new file mode 100644 index 00000000..4498a7cb --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65cef9f8d4db0e128c71ea22a2cc55b4493c3450f5f6adca76f14eb5a21943ef +size 4496 diff --git a/game/characters/hermione/poses/CG_lean_back/face/pupils/mid.webp b/game/characters/hermione/poses/CG_lean_back/face/pupils/mid.webp new file mode 100644 index 00000000..3a533341 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4228397ca6ec6658ddc893c7920c1322134c9ef49eed8797a024aaf145735ce7 +size 4498 diff --git a/game/characters/hermione/poses/CG_lean_back/face/pupils/stare.webp b/game/characters/hermione/poses/CG_lean_back/face/pupils/stare.webp new file mode 100644 index 00000000..3a533341 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/pupils/stare.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4228397ca6ec6658ddc893c7920c1322134c9ef49eed8797a024aaf145735ce7 +size 4498 diff --git a/game/characters/hermione/poses/CG_lean_back/face/pupils/up.webp b/game/characters/hermione/poses/CG_lean_back/face/pupils/up.webp new file mode 100644 index 00000000..d861e4ab --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d563a5b7298224eb646c58511d97ffae35bc568c4c46ac6090ced1b9ea25dc12 +size 4500 diff --git a/game/characters/hermione/poses/CG_lean_back/face/tears/soft.webp b/game/characters/hermione/poses/CG_lean_back/face/tears/soft.webp new file mode 100644 index 00000000..f8be396e --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/tears/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7986e7e96543dd4eb0a04bb700c8ea2863170c829887cecf01a5573204f4a8d3 +size 2628 diff --git a/game/characters/hermione/poses/CG_lean_back/face/tears/soft_blink.webp b/game/characters/hermione/poses/CG_lean_back/face/tears/soft_blink.webp new file mode 100644 index 00000000..f5cdf24d --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/face/tears/soft_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:280b80eaaffcca175605824adf51d24d3d015398ccfd14d90c5a0d87af9812fa +size 2660 diff --git a/game/characters/hermione/poses/CG_lean_back/loadable.webp b/game/characters/hermione/poses/CG_lean_back/loadable.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_back/loadable.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/hermione/poses/CG_lean_forward/body/armleft/down.webp b/game/characters/hermione/poses/CG_lean_forward/body/armleft/down.webp new file mode 100644 index 00000000..f95ba096 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/body/armleft/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:757050810e68c52aeb91ed2c23c26e1cf0c1cc48dfa0a9a08b559c3ae0be6b11 +size 41272 diff --git a/game/characters/hermione/poses/CG_lean_forward/body/armright/down.webp b/game/characters/hermione/poses/CG_lean_forward/body/armright/down.webp new file mode 100644 index 00000000..b2664830 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/body/armright/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ec651f961f06d3705b4efa56d9989d8e1114913c7f7a645d5b7b85a9d1f419d +size 24510 diff --git a/game/characters/hermione/poses/CG_lean_forward/body/base/front.webp b/game/characters/hermione/poses/CG_lean_forward/body/base/front.webp new file mode 100644 index 00000000..767d5544 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed456f0e766e72d8d44cd73eaa9ac7e937d539c7dcc91b158d81daecb0fb623c +size 107906 diff --git a/game/characters/hermione/poses/CG_lean_forward/body/breasts/normal.webp b/game/characters/hermione/poses/CG_lean_forward/body/breasts/normal.webp new file mode 100644 index 00000000..02ed307b --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e49e9b9ac60feebd3b336e34313a7b07674b38b8d18bf6d8636d92e00b6f195 +size 15536 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/bottom/school_skirt_1/0.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/bottom/school_skirt_1/0.webp new file mode 100644 index 00000000..16f8f7ad --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/bottom/school_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:556ca75f20a6e2f4eaf0cf513626d7b21bb0020eee57b82dced92cc230383aa3 +size 26590 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/bottom/school_skirt_1/1.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/bottom/school_skirt_1/1.webp new file mode 100644 index 00000000..596dcd82 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/bottom/school_skirt_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf57e065de093837d417aeee05024002c839a7453603c737aefaa26fd3a083e8 +size 2460 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/bottom/school_skirt_1/outline.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/bottom/school_skirt_1/outline.webp new file mode 100644 index 00000000..7179ea77 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/bottom/school_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdf874d4fea1b8ef6fc5aa85ec643d89bf1589b13d4cd7bced783d62fa9af75e +size 24086 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/0.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/0.webp new file mode 100644 index 00000000..0b54b840 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9947e73f6cba5d0c6228a1ecb3217a8b884fbb382bfeab0dce39c9b95544c338 +size 37132 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/0_back.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/0_back.webp new file mode 100644 index 00000000..f4e044b9 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e6dbd0cc63eab35057db9c9ab61889a86c05031c3a918d4e96dbd67fbb33809 +size 59084 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/1.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/1.webp new file mode 100644 index 00000000..87783078 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5363dd94247de4e0205a5da53001b8f92e8d88452657f8094269b194d92a0d99 +size 10468 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/1_back.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/1_back.webp new file mode 100644 index 00000000..d5ab9624 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:809e0a3d69dd4f4812d1812331879d4c419aa47d52c490366cc77f683d5a5c16 +size 8810 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/2.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/2.webp new file mode 100644 index 00000000..29d546f6 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ab3482001f8328bf25a2f2db1cf2bd395550cefb7db79b4b95e29b98440dd31 +size 3856 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/outline.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/outline.webp new file mode 100644 index 00000000..0a47ed48 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91ee9ad99e40b0b1c4f8d0368688039b33d5cea49f6ad6b37417038d5dc3ea68 +size 25838 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/outline_back.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/outline_back.webp new file mode 100644 index 00000000..50700eb8 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/hair/base/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89ed74b164cb21302eb86b5a0d81ba35ba4ef7dce470dc9d5c9d9251fe47fb5c +size 43880 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/0.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/0.webp new file mode 100644 index 00000000..035ba228 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:433f5a591c34c489fafc1456c221816176343e7354eb0ff1df98a225f26133ea +size 21498 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/1.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/1.webp new file mode 100644 index 00000000..758e2e77 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:985c00dd2763fe0132db38a7d19e3d80e3dd37e43c0918ff90de7d2f0eda1058 +size 36574 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/2.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/2.webp new file mode 100644 index 00000000..f3ecd16f --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f906842dba876c0da12106c132ffb3ff6bb65053b278f0dffdd494ccdb186cb4 +size 17262 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/3.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/3.webp new file mode 100644 index 00000000..64a370dc --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04db138e5c9c920e75e66780f78b6adf9235c1a5b82c6453e7bd32d2663d241a +size 20410 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/mask.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/mask.webp new file mode 100644 index 00000000..29893a90 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89adabe73e9692383d8137425084e880b8d05e90d0f7ace239cdd78492973917 +size 4576 diff --git a/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/outline.webp b/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/outline.webp new file mode 100644 index 00000000..1e68159b --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76cedd4f097fe9943a77fe14fe417abddcd89d9551e663a0c24771aba3736269 +size 38614 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/cheeks/blush.webp b/game/characters/hermione/poses/CG_lean_forward/face/cheeks/blush.webp new file mode 100644 index 00000000..da88ec39 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:782cfd8950c32fe8dbcb9c6f154f2afd9367f88b6e0f3fb4b281908879922d5c +size 20368 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyebrows/angry.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyebrows/angry.webp new file mode 100644 index 00000000..1e9adb22 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2196a6c8d408b52bbb8d4f6f3f140499c8ec82331c8d0d0396821bdd0e343329 +size 5374 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyebrows/annoyed.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyebrows/annoyed.webp new file mode 100644 index 00000000..ca029294 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyebrows/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:364c9db4ae52f0053997cfeb7f7f16e63c63fa390a6788527d67e55ccc3ec9c5 +size 5290 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyebrows/base.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyebrows/base.webp new file mode 100644 index 00000000..9749cff5 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fac3a948fae3d5c16c7e220195c26b68f2c24b49d146196afd90f6dfaa2885d9 +size 5168 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyebrows/worried.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyebrows/worried.webp new file mode 100644 index 00000000..4486808f --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee08e8e7a41f050c164ef07ed651fdbfb033f18c989f5253d5746044b3dd0cd5 +size 5178 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyes/base.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyes/base.webp new file mode 100644 index 00000000..b1a0b0f5 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5848c95cb77864b8b1239be9f45a48a8fcd69dc655befb99e5da343d991b7435 +size 6582 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyes/base_mask.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyes/base_mask.webp new file mode 100644 index 00000000..4535c83f --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce5fb966572bac64c0e1453190ce09c304e052a1aa52ccce5303d08be68e0f59 +size 2548 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyes/closed.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyes/closed.webp new file mode 100644 index 00000000..30d18e33 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f404c0bacc30721b99634a7c19475cb5be7c54b003f4e6a99c51a3980fc30cad +size 8298 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyes/happy.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyes/happy.webp new file mode 100644 index 00000000..fddb2a9c --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyes/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfa1ebc015f2657636a9b605f691dbe17d4e57cf4bcf9ade553f60a33f7872eb +size 6576 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyes/happyCl.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyes/happyCl.webp new file mode 100644 index 00000000..afd829b1 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyes/happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffaa02cf7fca169f9a9e7854fbf96e88f1de4d967afb9babead9572f2768850c +size 9040 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyes/happy_mask.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyes/happy_mask.webp new file mode 100644 index 00000000..d7140744 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyes/happy_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d3d670187c95a7c3bb49bb4a81b164aa3633fd374ab4532f07cb32c18705dad +size 2510 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyes/narrow.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyes/narrow.webp new file mode 100644 index 00000000..0ad1648a --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebc653d1e3834f4cf9ad1bb1aa3d3ebfaed0342cd8cb8eb6819d5223cbf4a087 +size 7192 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyes/narrow_mask.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..c1716b8d --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8e4025e18a21529ad2c4bc26b6debd7ce48f2e60515a6486208cb53c344e339 +size 2482 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyes/wide.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyes/wide.webp new file mode 100644 index 00000000..0b25b032 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyes/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e76b3aee2e83314da638d374d057839f88c4e5a688546f312708ed3dc73e8c1 +size 7380 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/eyes/wide_mask.webp b/game/characters/hermione/poses/CG_lean_forward/face/eyes/wide_mask.webp new file mode 100644 index 00000000..6f9ee460 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/eyes/wide_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d9f1c7fe7d55b37cca686249de35b4dbb7c84f7c93f2d5feb398646588cbb85 +size 2582 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/angry.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/angry.webp new file mode 100644 index 00000000..7e938e44 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b13cc996605a55e879f5af4d1350704ea278dbd0728e941d65ade45b694bdb4 +size 7666 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/annoyed.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/annoyed.webp new file mode 100644 index 00000000..3eba8c9d --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8eb97973717c2e8ccae3ad047775120f8d86b037cd848b1b4ee66b9c926669a5 +size 4740 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/base.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/base.webp new file mode 100644 index 00000000..fc440fe7 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c45d84d0f30cd9f29aff1e72b2d40eb4f003126ccdcabaab61338c86b54fcc5a +size 4884 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/clench.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/clench.webp new file mode 100644 index 00000000..dd58d28d --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7756735e6f78a2440d0ebd46ca75ebec7147d2ede7571d561b88e7eaa555b38e +size 6972 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/crooked_smile.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/crooked_smile.webp new file mode 100644 index 00000000..de357b61 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07f21eb475665a9e129628a7a3b4213f2689876753e619b91828b025d5e46557 +size 6998 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/disgust.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/disgust.webp new file mode 100644 index 00000000..a8eb85d3 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27e51eaf074ba0a7c723616701aa91d08b045612162f030e94568da3719474a6 +size 6700 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/full.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/full.webp new file mode 100644 index 00000000..ae866f9b --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ef5a5aaceeb74439e06c3adddf7f2c0a9bef450cd793f681454631d55ae9fd4 +size 24360 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/grin.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/grin.webp new file mode 100644 index 00000000..0d282e43 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f7e9cb7c3357925cbcd3916b68fca6c2491e798ed2de6e756777a84f5e64625 +size 7582 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/mad.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/mad.webp new file mode 100644 index 00000000..059d4c7d --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bafd402a9fc1fec87ffbf08ac3da3ff00905be507d7fd1d2792db9e237596629 +size 6784 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/normal.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/normal.webp new file mode 100644 index 00000000..4da454d2 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5abf1de490ae109735820b21bc6ee54a87f4084c770071f1e92e735bf3154bfb +size 4554 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/open.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/open.webp new file mode 100644 index 00000000..d2e5da6f --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa49f36860e84b16899a62ae558e13db7046892da48e18c4cecc5eebc8274e98 +size 6726 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/open_tongue.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/open_tongue.webp new file mode 100644 index 00000000..fea324ec --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:436d08234fc0c7aa8a34f5f039126a76c5abdca9a04d24c397926ec7a25ee746 +size 6826 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/open_wide_tongue.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/open_wide_tongue.webp new file mode 100644 index 00000000..280b40f7 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ac6a6b4ad6e0eb7baaec57c72ad2fb583358601db4f3d8193d5be807fefcc57 +size 19828 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/scream.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/scream.webp new file mode 100644 index 00000000..caa39c37 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7648c6bc7e98e7cf9c1e9c2777ced3cd6bcc18d7dcc2ab74594818658002a19 +size 19608 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/smile.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/smile.webp new file mode 100644 index 00000000..3a30eafd --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f94e9ffcb1a6c9783fc9fb2d883d1a3ed0029ade324f30aad22b1764c6cca5a +size 7162 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/soft.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/soft.webp new file mode 100644 index 00000000..9f118ca1 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d49daf1a91d15f81388d2fe1cc26db99bd2841dd7aa02457e7d5e2ff5b7f820 +size 5278 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/mouth/upset.webp b/game/characters/hermione/poses/CG_lean_forward/face/mouth/upset.webp new file mode 100644 index 00000000..e2b62674 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b656b7108ecf45a35b102e2744c969c9858bdc4068c16338e96776b9b1a52368 +size 4672 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/pupils/L.webp b/game/characters/hermione/poses/CG_lean_forward/face/pupils/L.webp new file mode 100644 index 00000000..c48ee6e7 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6180d5cecca5239beb4a5c7b07cb74b7d30684c17d333948a32b8e439b60efa +size 5158 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/pupils/R.webp b/game/characters/hermione/poses/CG_lean_forward/face/pupils/R.webp new file mode 100644 index 00000000..4c71237d --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1fac6f8d1854580e3479e564302563357efeb426e493afa6639250cf454836e +size 4940 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/pupils/ahegao.webp b/game/characters/hermione/poses/CG_lean_forward/face/pupils/ahegao.webp new file mode 100644 index 00000000..7eeb25d9 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/pupils/ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:714c8333e591722fce3698ec1e4bf4d40dcfac4e97a1a80af54638fa10384c10 +size 5122 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/pupils/down.webp b/game/characters/hermione/poses/CG_lean_forward/face/pupils/down.webp new file mode 100644 index 00000000..3c162b9e --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14ad67b2f2a6f570e4ef6e4463943d2d7d8439b83af3ae8f332995b4c749c8bc +size 4904 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/pupils/mid.webp b/game/characters/hermione/poses/CG_lean_forward/face/pupils/mid.webp new file mode 100644 index 00000000..f2c9a601 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84c978ef66044388b92c2a90fc89a64397cf204ab3a1a8e0c9669ddadedfa6ce +size 4964 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/pupils/stare.webp b/game/characters/hermione/poses/CG_lean_forward/face/pupils/stare.webp new file mode 100644 index 00000000..f2c9a601 --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/pupils/stare.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84c978ef66044388b92c2a90fc89a64397cf204ab3a1a8e0c9669ddadedfa6ce +size 4964 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/pupils/up.webp b/game/characters/hermione/poses/CG_lean_forward/face/pupils/up.webp new file mode 100644 index 00000000..fab3e0cd --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5e3b3f5779675e80bd244e8072c3cc24083ba5e2cda3dd17fb272d8296d5c2b +size 4910 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/tears/soft.webp b/game/characters/hermione/poses/CG_lean_forward/face/tears/soft.webp new file mode 100644 index 00000000..0d54050a --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/tears/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59b00f7dae3855d2fb7d0460eefb65fe7936d5089208ff8072e2897edfd6ed54 +size 2764 diff --git a/game/characters/hermione/poses/CG_lean_forward/face/tears/soft_blink.webp b/game/characters/hermione/poses/CG_lean_forward/face/tears/soft_blink.webp new file mode 100644 index 00000000..b2cda8ec --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/face/tears/soft_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4754d05e2df11502a84bc4e00e76748a314b751482cb873a97ff962bf6b7606f +size 2818 diff --git a/game/characters/hermione/poses/CG_lean_forward/loadable.webp b/game/characters/hermione/poses/CG_lean_forward/loadable.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/hermione/poses/CG_lean_forward/loadable.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/hermione/poses/hold_book/body/armleft/down.webp b/game/characters/hermione/poses/hold_book/body/armleft/down.webp new file mode 100644 index 00000000..4845b4e5 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/body/armleft/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:949d2c3f40b4631abd22a170a9492ed699338013b1cc1f6249021bc298fe18bf +size 3238 diff --git a/game/characters/hermione/poses/hold_book/body/armright/down.webp b/game/characters/hermione/poses/hold_book/body/armright/down.webp new file mode 100644 index 00000000..40a670dc --- /dev/null +++ b/game/characters/hermione/poses/hold_book/body/armright/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57038791f9fce36c0b8b6d0594ef9562181e9ff64098f4dddb83031e198a638e +size 890 diff --git a/game/characters/hermione/poses/hold_book/body/base/front.webp b/game/characters/hermione/poses/hold_book/body/base/front.webp new file mode 100644 index 00000000..f8a4ba79 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09c6f03d70142ace313daa503486c02451be4d9a69252baeeb3b122a5207451f +size 117730 diff --git a/game/characters/hermione/poses/hold_book/body/breasts/normal.webp b/game/characters/hermione/poses/hold_book/body/breasts/normal.webp new file mode 100644 index 00000000..40a670dc --- /dev/null +++ b/game/characters/hermione/poses/hold_book/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57038791f9fce36c0b8b6d0594ef9562181e9ff64098f4dddb83031e198a638e +size 890 diff --git a/game/characters/hermione/poses/hold_book/clothes/hair/base/0.webp b/game/characters/hermione/poses/hold_book/clothes/hair/base/0.webp new file mode 100644 index 00000000..6f3a865a --- /dev/null +++ b/game/characters/hermione/poses/hold_book/clothes/hair/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d83e4ca0d64a01f8194d32d878262c64d97828930d7240e16583324946be7c8c +size 16796 diff --git a/game/characters/hermione/poses/hold_book/clothes/hair/base/0_back.webp b/game/characters/hermione/poses/hold_book/clothes/hair/base/0_back.webp new file mode 100644 index 00000000..ddd401b9 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/clothes/hair/base/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4aeb9d8324febb8ebd93da5bf3f0c6b716454a0b987a1510c9dcda3ff8ae60a1 +size 37326 diff --git a/game/characters/hermione/poses/hold_book/clothes/hair/base/1.webp b/game/characters/hermione/poses/hold_book/clothes/hair/base/1.webp new file mode 100644 index 00000000..3a139666 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/clothes/hair/base/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f550a9eabb9624596012659ac327e42364c78b23edc43f7db8c3fcfd673d049 +size 10896 diff --git a/game/characters/hermione/poses/hold_book/clothes/hair/base/1_back.webp b/game/characters/hermione/poses/hold_book/clothes/hair/base/1_back.webp new file mode 100644 index 00000000..952bbfd5 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/clothes/hair/base/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24be0ba493bcb4df92dddaa12426f958648a771ec9b69819c2d72df9df03ed8a +size 8674 diff --git a/game/characters/hermione/poses/hold_book/clothes/hair/base/2.webp b/game/characters/hermione/poses/hold_book/clothes/hair/base/2.webp new file mode 100644 index 00000000..cd98a6fa --- /dev/null +++ b/game/characters/hermione/poses/hold_book/clothes/hair/base/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69de13ac47ee400660d373ccfc79fb84e6059b5badebd62f9bec67f853c74a16 +size 1664 diff --git a/game/characters/hermione/poses/hold_book/clothes/hair/base/extra.webp b/game/characters/hermione/poses/hold_book/clothes/hair/base/extra.webp new file mode 100644 index 00000000..a02de2d2 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/clothes/hair/base/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdfa10edaa9fdab72c637d1feeafbbaa5836a75b7fea030b76a65712fd73cbd9 +size 688 diff --git a/game/characters/hermione/poses/hold_book/clothes/hair/base/outline.webp b/game/characters/hermione/poses/hold_book/clothes/hair/base/outline.webp new file mode 100644 index 00000000..0127b9ed --- /dev/null +++ b/game/characters/hermione/poses/hold_book/clothes/hair/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d044c8052879863c52c13023e52ca91ccf871cfb09b6c41115711c2c9284fde +size 17432 diff --git a/game/characters/hermione/poses/hold_book/clothes/hair/base/outline_back.webp b/game/characters/hermione/poses/hold_book/clothes/hair/base/outline_back.webp new file mode 100644 index 00000000..49658fdb --- /dev/null +++ b/game/characters/hermione/poses/hold_book/clothes/hair/base/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6556513cecdc26ef499ef802deffad15343a9191a6a8979abe4ad92278c63d80 +size 31602 diff --git a/game/characters/hermione/poses/hold_book/clothes/hair/base/skin.webp b/game/characters/hermione/poses/hold_book/clothes/hair/base/skin.webp new file mode 100644 index 00000000..3e447895 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/clothes/hair/base/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b963fa02cbb4ea3d14cb87430e25eca9de7d0b022a2e7355271e30fc805b2e21 +size 3368 diff --git a/game/characters/hermione/poses/hold_book/face/cheeks/blush.webp b/game/characters/hermione/poses/hold_book/face/cheeks/blush.webp new file mode 100644 index 00000000..fe1b322d --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c09efc169b82c2965ddba9e0e74be9dc84f7b4b91133c944c714046c62431473 +size 3350 diff --git a/game/characters/hermione/poses/hold_book/face/eyebrows/angry.webp b/game/characters/hermione/poses/hold_book/face/eyebrows/angry.webp new file mode 100644 index 00000000..e02f5f99 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21d3cabcf523271992fa7a6163cfd1260aef2bcca1764adfbb9e41b099afcb3c +size 2174 diff --git a/game/characters/hermione/poses/hold_book/face/eyebrows/angry_skin.webp b/game/characters/hermione/poses/hold_book/face/eyebrows/angry_skin.webp new file mode 100644 index 00000000..6cca71bb --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyebrows/angry_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e5bbab94f721c485745b8850512f7513efb4c149b8e9413df1351adc914bca4 +size 1518 diff --git a/game/characters/hermione/poses/hold_book/face/eyebrows/annoyed.webp b/game/characters/hermione/poses/hold_book/face/eyebrows/annoyed.webp new file mode 100644 index 00000000..9cfe53a7 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyebrows/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27d078d079cb19e6f471d0e38b289917a5396529f15c3162257187f080196783 +size 2046 diff --git a/game/characters/hermione/poses/hold_book/face/eyebrows/annoyed_skin.webp b/game/characters/hermione/poses/hold_book/face/eyebrows/annoyed_skin.webp new file mode 100644 index 00000000..6cca71bb --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyebrows/annoyed_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e5bbab94f721c485745b8850512f7513efb4c149b8e9413df1351adc914bca4 +size 1518 diff --git a/game/characters/hermione/poses/hold_book/face/eyebrows/base.webp b/game/characters/hermione/poses/hold_book/face/eyebrows/base.webp new file mode 100644 index 00000000..4b191d96 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4c96c699da06281486dfc439f3cc358f82187b220096c86c342660ef732aa87 +size 2082 diff --git a/game/characters/hermione/poses/hold_book/face/eyebrows/base_skin.webp b/game/characters/hermione/poses/hold_book/face/eyebrows/base_skin.webp new file mode 100644 index 00000000..773c8ad2 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyebrows/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bd0af7bee8fdd2762a9fa2296a0f524201fea5df9c87ba85a02aa3eb61ba10c +size 1702 diff --git a/game/characters/hermione/poses/hold_book/face/eyebrows/low.webp b/game/characters/hermione/poses/hold_book/face/eyebrows/low.webp new file mode 100644 index 00000000..90ee12f3 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyebrows/low.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b7ed81c5dbb56089e9d943838e5e4bc33ffd66e22aaabae3730176371bc3673 +size 2164 diff --git a/game/characters/hermione/poses/hold_book/face/eyebrows/low_skin.webp b/game/characters/hermione/poses/hold_book/face/eyebrows/low_skin.webp new file mode 100644 index 00000000..b83cf58c --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyebrows/low_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5a64586bf0d546174c90eb22d9d8d08f38bb19ab266359665aa9ec201542a82 +size 1664 diff --git a/game/characters/hermione/poses/hold_book/face/eyebrows/worried.webp b/game/characters/hermione/poses/hold_book/face/eyebrows/worried.webp new file mode 100644 index 00000000..b5801cd7 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dbe3693dc173ab088af8da9875f8de3a080368ebce6f3d04a1e8a2d215eafa0 +size 1892 diff --git a/game/characters/hermione/poses/hold_book/face/eyebrows/worried_skin.webp b/game/characters/hermione/poses/hold_book/face/eyebrows/worried_skin.webp new file mode 100644 index 00000000..2d06e5fd --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyebrows/worried_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99a2f60903efa4ce8e5fdee3d2b872b7f76a6f323eb968e7e61a5625cce4a986 +size 1578 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/base.webp b/game/characters/hermione/poses/hold_book/face/eyes/base.webp new file mode 100644 index 00000000..9cb0243e --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63b9592a67b16a85aacaaa8d6a8117c26389cdda8f23592ae3d21acc1c9263c4 +size 2392 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/base_mask.webp b/game/characters/hermione/poses/hold_book/face/eyes/base_mask.webp new file mode 100644 index 00000000..67235ae6 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9672a2b53e10bbc8fdf23740a37c8181e695b101d0a6909b9516ea4db445ae65 +size 890 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/closed.webp b/game/characters/hermione/poses/hold_book/face/eyes/closed.webp new file mode 100644 index 00000000..7006cdf6 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e89d621467b60a6efd586975a2dfe08d59ce821e2c374b910bf9218364456d24 +size 4172 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/happy.webp b/game/characters/hermione/poses/hold_book/face/eyes/happy.webp new file mode 100644 index 00000000..121c27e5 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c925a53a8e73b38a98a65d773d9feb3e11ce463a0d4df494aec7c95b128c513 +size 2558 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/happyCl.webp b/game/characters/hermione/poses/hold_book/face/eyes/happyCl.webp new file mode 100644 index 00000000..f744494c --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a75deb68bd7d12d36643d8a453815b451fcb7c0750fc31be3333f3e197bc530c +size 2736 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/happy_mask.webp b/game/characters/hermione/poses/hold_book/face/eyes/happy_mask.webp new file mode 100644 index 00000000..e5d19826 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/happy_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:126c79fa9701f6f06b4c15b893b59f8cc7d8fe0d10afef9e776db17e896949ee +size 984 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/narrow.webp b/game/characters/hermione/poses/hold_book/face/eyes/narrow.webp new file mode 100644 index 00000000..2d9f9be2 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2c0c8de824ebbe362f481d8c353be7b943fdf57038ac068463f3aea60810b13 +size 3280 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/narrow_mask.webp b/game/characters/hermione/poses/hold_book/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..872a86d2 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfe027a72050dc1488510959b384fc6e03d3b7e45994b1a73abeaa9307114195 +size 840 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/slit.webp b/game/characters/hermione/poses/hold_book/face/eyes/slit.webp new file mode 100644 index 00000000..5093c0cd --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/slit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cac7be10c57324a5c673cf9afdbc099bb013cf08a1aabfb9273e1292507e740f +size 2248 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/slit_mask.webp b/game/characters/hermione/poses/hold_book/face/eyes/slit_mask.webp new file mode 100644 index 00000000..fe4924f3 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/slit_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e487181b57e86966c3b7be68b1577b34547f06e60c84efc80ec22e25d31779d +size 734 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/squint.webp b/game/characters/hermione/poses/hold_book/face/eyes/squint.webp new file mode 100644 index 00000000..54a29520 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/squint.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0443289dbe510c4d0ecc14dcb6fc5ffc4c10bfd11aac3ba754309389da9beb4 +size 2592 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/squint_mask.webp b/game/characters/hermione/poses/hold_book/face/eyes/squint_mask.webp new file mode 100644 index 00000000..887be780 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/squint_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38f0a8876eb84f4c5ad39525e343adffecfb4c85377a69b2cd1846f991892143 +size 906 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/wide.webp b/game/characters/hermione/poses/hold_book/face/eyes/wide.webp new file mode 100644 index 00000000..cc5065e4 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d2a36ab5646c8178ba932b0b5db99f7d9dca189601b5eb9d8984e1ba4d378e4 +size 2828 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/wide_mask.webp b/game/characters/hermione/poses/hold_book/face/eyes/wide_mask.webp new file mode 100644 index 00000000..05407db2 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/wide_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d631a1f75e0c37d4656aba672ec600920c86a6ddb8c7f0767e2212bfb0df1c7 +size 1144 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/wink.webp b/game/characters/hermione/poses/hold_book/face/eyes/wink.webp new file mode 100644 index 00000000..d054fc17 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf6b34a577e7c608962dfa8243e3517203de3252ec3d8fce8a20de8c765c1784 +size 2502 diff --git a/game/characters/hermione/poses/hold_book/face/eyes/wink_mask.webp b/game/characters/hermione/poses/hold_book/face/eyes/wink_mask.webp new file mode 100644 index 00000000..bd73f416 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/eyes/wink_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b99cca3b8529be1b98c6c6ecace542834b41060c3fc091f6379c26dea1be6ae0 +size 702 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/angry.webp b/game/characters/hermione/poses/hold_book/face/mouth/angry.webp new file mode 100644 index 00000000..ea115d4d --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ba2f1e362996335a25c929b64d3d231db4e5468022256f23ab7d76781a93b34 +size 3286 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/annoyed.webp b/game/characters/hermione/poses/hold_book/face/mouth/annoyed.webp new file mode 100644 index 00000000..3c6373d1 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47fd69deee1a2dbd7f3daee18aaf8706d0739c8d58a91f51270880dcd0f5e548 +size 1556 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/base.webp b/game/characters/hermione/poses/hold_book/face/mouth/base.webp new file mode 100644 index 00000000..1b399c04 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62711dfb10ba5c9995b51e54b1c0da7e57b81900743f61748faf86209fff552a +size 1644 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/clench.webp b/game/characters/hermione/poses/hold_book/face/mouth/clench.webp new file mode 100644 index 00000000..3e2f5505 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6dfc7a871028f85358a51a98a52e130e133c79c0c584924e1a0cfc1d28f3af0b +size 2930 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/crooked_smile.webp b/game/characters/hermione/poses/hold_book/face/mouth/crooked_smile.webp new file mode 100644 index 00000000..720526b9 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc22a8aa6d77438fb9bd2e4f918cb2329cec9f0e598ecc76723baa47a58ad308 +size 3216 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/cum.webp b/game/characters/hermione/poses/hold_book/face/mouth/cum.webp new file mode 100644 index 00000000..9287ddcf --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9d2f6029df53972bc59b49615793a509dc4b205b1f8070793987da305f84d2d +size 1756 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/disgust.webp b/game/characters/hermione/poses/hold_book/face/mouth/disgust.webp new file mode 100644 index 00000000..99d4ed66 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f92691b2864a237e69e75433d33b93a76370cd300540e911531df253fcf466f +size 2268 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/full.webp b/game/characters/hermione/poses/hold_book/face/mouth/full.webp new file mode 100644 index 00000000..b3e2e354 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9c1984c8fcfeb0361ee010ddc73476506c530fbb6ef49022596cd2d355ceace +size 8976 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/full_cum.webp b/game/characters/hermione/poses/hold_book/face/mouth/full_cum.webp new file mode 100644 index 00000000..19bf918e --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/full_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c93c4e199e6a32d9c6a4b2d87b306fa34c3079fc5a77dfa013482ce1d9c15b7 +size 10326 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/grin.webp b/game/characters/hermione/poses/hold_book/face/mouth/grin.webp new file mode 100644 index 00000000..c9ebaa32 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d17cd11fddcb128b18177fa2eb95ba6240a26bd9f8485d2e72b76e3edaa5412 +size 3292 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/mad.webp b/game/characters/hermione/poses/hold_book/face/mouth/mad.webp new file mode 100644 index 00000000..bd251ece --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3dba34e986ed0d2a4778f0c8f2084f46798a460382d46943bc1ce56c9597c50 +size 2350 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/normal.webp b/game/characters/hermione/poses/hold_book/face/mouth/normal.webp new file mode 100644 index 00000000..f6c50778 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:251662ba9ac9203bbf5972c86a5c6c9615fef9f30d774f7f37c66fae7a0c8f06 +size 1458 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/open.webp b/game/characters/hermione/poses/hold_book/face/mouth/open.webp new file mode 100644 index 00000000..066b5707 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:795aa28c614997cd901487f19ebc3cb9ad462bfc79d5d75b3a216b79d6a9a0aa +size 2344 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/open_tongue.webp b/game/characters/hermione/poses/hold_book/face/mouth/open_tongue.webp new file mode 100644 index 00000000..f8d7fbef --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdb7cdff1a02e9031bb054fc4baecd58e80fbb578b68ce49f73dead4edbefbb7 +size 2310 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/open_wide_tongue.webp b/game/characters/hermione/poses/hold_book/face/mouth/open_wide_tongue.webp new file mode 100644 index 00000000..661261e4 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53e235f81e23a10f0eecf347bb3e1a6d6df2a36826130d028a794cc8cce0c084 +size 6122 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/open_wide_tongue_cum.webp b/game/characters/hermione/poses/hold_book/face/mouth/open_wide_tongue_cum.webp new file mode 100644 index 00000000..68b67d54 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/open_wide_tongue_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:842cdaed8c60a2bb3cc0bfead4fe36cd131100a4250d44be464cafa1cdd35ba6 +size 6938 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/scream.webp b/game/characters/hermione/poses/hold_book/face/mouth/scream.webp new file mode 100644 index 00000000..671fede7 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7baa90e90d5fad7803836189084ba60f5c09d1c319aa2ac28a4741f05425c934 +size 6210 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/shock.webp b/game/characters/hermione/poses/hold_book/face/mouth/shock.webp new file mode 100644 index 00000000..83e4fd5a --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/shock.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c820c0412e07a6df13d6381d834f520635338c1023242951660a56fe3d22ba93 +size 2782 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/silly.webp b/game/characters/hermione/poses/hold_book/face/mouth/silly.webp new file mode 100644 index 00000000..6ee9dcb3 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/silly.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1846fd4070cfda1203434a8312aa64ae3e95f7a134f3dbd3087dc66c70837c78 +size 3298 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/smile.webp b/game/characters/hermione/poses/hold_book/face/mouth/smile.webp new file mode 100644 index 00000000..11de0078 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cd795aa71a45e71f69511ab343cf7e274d3060af14b5dcf9e6080aec709a84d +size 3598 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/soft.webp b/game/characters/hermione/poses/hold_book/face/mouth/soft.webp new file mode 100644 index 00000000..732f364d --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:871b71a57ff12e211318dbe22a65d7bec77f804d7efd0fdd9dedcf632946458c +size 2310 diff --git a/game/characters/hermione/poses/hold_book/face/mouth/upset.webp b/game/characters/hermione/poses/hold_book/face/mouth/upset.webp new file mode 100644 index 00000000..5072f7c1 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3aebaa6aca1ab2e2d21d483877ec39598b15c6eab1f61827261c1f9e559462f5 +size 1560 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/L.webp b/game/characters/hermione/poses/hold_book/face/pupils/L.webp new file mode 100644 index 00000000..c8be1dd6 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa76bfb8481861c0223ede0ca0fccf8e22fc77eefdeb096c1bd37785aa808448 +size 1570 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/L_soft.webp b/game/characters/hermione/poses/hold_book/face/pupils/L_soft.webp new file mode 100644 index 00000000..0a6de4d5 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/L_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bf58ce89969340e1a3ac20c41e8d293e2b2a9b64b9fa050a13eeaf79057eaec +size 1704 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/R.webp b/game/characters/hermione/poses/hold_book/face/pupils/R.webp new file mode 100644 index 00000000..56f4599b --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63c1f07dc4a87eeb00cb4db203ed619319fccbf655e1a9952601f3a15a0c773a +size 1560 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/R_soft.webp b/game/characters/hermione/poses/hold_book/face/pupils/R_soft.webp new file mode 100644 index 00000000..5990b4a4 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/R_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f40c24c85398c4e83b7a944a8714146d478b7b62e17126585cf26b9049d475b8 +size 1624 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/ahegao.webp b/game/characters/hermione/poses/hold_book/face/pupils/ahegao.webp new file mode 100644 index 00000000..01c69f07 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f468d54dbaa96951499c8ef2a068b0afd8331d41c0f0b26d192da072d300319 +size 1470 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/dead.webp b/game/characters/hermione/poses/hold_book/face/pupils/dead.webp new file mode 100644 index 00000000..0ad15362 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/dead.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e83ae490a7816db3910e2540f68997b708557d2108663d908ce50458653fb63 +size 1754 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/down.webp b/game/characters/hermione/poses/hold_book/face/pupils/down.webp new file mode 100644 index 00000000..e3d78b19 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5047c97e28408ff3f97888116d1aa4b9c96e20c5ddba465da9dc5807e5ecab12 +size 1560 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/down_soft.webp b/game/characters/hermione/poses/hold_book/face/pupils/down_soft.webp new file mode 100644 index 00000000..1eecd91c --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/down_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbacb76a0623a9f0df3aebcdbc7557334ff035159f64e8da2a0e65524189aa27 +size 1690 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/mid.webp b/game/characters/hermione/poses/hold_book/face/pupils/mid.webp new file mode 100644 index 00000000..10394021 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdf9154530d6715e26666850b3df2186f30efee5c0d885b81c4f51c3e069396f +size 1482 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/mid_soft.webp b/game/characters/hermione/poses/hold_book/face/pupils/mid_soft.webp new file mode 100644 index 00000000..dd47d3b9 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/mid_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcecfef40556072b1e246ad89951052c39e2672808effe98f1bcfb51e9b482ab +size 1632 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/shocked.webp b/game/characters/hermione/poses/hold_book/face/pupils/shocked.webp new file mode 100644 index 00000000..f4333992 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76082d4d901a22f69dd256ae5b6b7c1d0ba3152a92edccd426d37c6a1652c4fb +size 1796 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/squint.webp b/game/characters/hermione/poses/hold_book/face/pupils/squint.webp new file mode 100644 index 00000000..3368a560 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/squint.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a72edb9f4762f25d8036291e35431b272eb2434fbc6489d214259f786ace41c6 +size 1456 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/squint_soft.webp b/game/characters/hermione/poses/hold_book/face/pupils/squint_soft.webp new file mode 100644 index 00000000..2c39fad1 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/squint_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37db0eb8ef1574036676a93314ab0a9f61b8db6b3a3f6bf58ee41a4599933930 +size 1718 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/stare.webp b/game/characters/hermione/poses/hold_book/face/pupils/stare.webp new file mode 100644 index 00000000..fe72cbd9 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/stare.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dff42f59f737a7042653055aa68a8a2da4ac2cc1a6101ed0de6edd7ec984c3b7 +size 1552 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/stare_soft.webp b/game/characters/hermione/poses/hold_book/face/pupils/stare_soft.webp new file mode 100644 index 00000000..7c938ce9 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/stare_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0608d5bb7b8ab254a38fac405b0865f5f470b2e64305a1ccfdc65d215a573a7 +size 1590 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/up.webp b/game/characters/hermione/poses/hold_book/face/pupils/up.webp new file mode 100644 index 00000000..4456f787 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca601323929fce1a4fbd97255ed6cb8151752f92765d40fccad17f573465bb6b +size 1604 diff --git a/game/characters/hermione/poses/hold_book/face/pupils/up_soft.webp b/game/characters/hermione/poses/hold_book/face/pupils/up_soft.webp new file mode 100644 index 00000000..cd045865 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/pupils/up_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ecc2f0e26c206eb8adfff1046039f0c38c13d07dc056572d27f20534a44eb45 +size 1656 diff --git a/game/characters/hermione/poses/hold_book/face/tears/crying.webp b/game/characters/hermione/poses/hold_book/face/tears/crying.webp new file mode 100644 index 00000000..7b1b060f --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/crying.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b647117cbcc1fafd02000ac1b25bba83807cc0ec4695ee9131e9b8b6ff48ba9 +size 7748 diff --git a/game/characters/hermione/poses/hold_book/face/tears/crying_blink.webp b/game/characters/hermione/poses/hold_book/face/tears/crying_blink.webp new file mode 100644 index 00000000..d0377573 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/crying_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7db47d43aff5e70df32ba4bd25697de1998ab7494f465c9573602fafae79c4c6 +size 3974 diff --git a/game/characters/hermione/poses/hold_book/face/tears/mascara.webp b/game/characters/hermione/poses/hold_book/face/tears/mascara.webp new file mode 100644 index 00000000..86c77d8c --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/mascara.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d17e335038b239f1916a108a34800fb8f633cf57887ca366ef62c5ce24a77d4 +size 8790 diff --git a/game/characters/hermione/poses/hold_book/face/tears/mascara_crying.webp b/game/characters/hermione/poses/hold_book/face/tears/mascara_crying.webp new file mode 100644 index 00000000..8d8292a3 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/mascara_crying.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3966490e1f3a62d0bd98437d915675d469eaf85ac3520e01a1b4520788d0cab +size 7688 diff --git a/game/characters/hermione/poses/hold_book/face/tears/mascara_soft.webp b/game/characters/hermione/poses/hold_book/face/tears/mascara_soft.webp new file mode 100644 index 00000000..a8615cf4 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/mascara_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:395bf14e82ae06dea7169b3522aefe0f7d984720c835714ea7f269081f7f6129 +size 9552 diff --git a/game/characters/hermione/poses/hold_book/face/tears/mascara_soft_blink.webp b/game/characters/hermione/poses/hold_book/face/tears/mascara_soft_blink.webp new file mode 100644 index 00000000..69567c7d --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/mascara_soft_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6eb4cb10fd98947c34a12dc3be6bd7f98b3cf2b665ff719e52ec6bff62b9e75 +size 9752 diff --git a/game/characters/hermione/poses/hold_book/face/tears/messy.webp b/game/characters/hermione/poses/hold_book/face/tears/messy.webp new file mode 100644 index 00000000..53b13cd4 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/messy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06050bc55d5824a1a506d0dfd454f17e1ed28c3da5acffb364892ce2fddac68d +size 9034 diff --git a/game/characters/hermione/poses/hold_book/face/tears/soft.webp b/game/characters/hermione/poses/hold_book/face/tears/soft.webp new file mode 100644 index 00000000..5d27fd48 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6a9d585f5f04a291e6764a810bbbe7522126fadfdb879cfebbc80c1c06af8db +size 1248 diff --git a/game/characters/hermione/poses/hold_book/face/tears/soft_blink.webp b/game/characters/hermione/poses/hold_book/face/tears/soft_blink.webp new file mode 100644 index 00000000..a8347724 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/soft_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44b52b17482de89a8cc7906bc20a821be0180023873bd3c862ec8ea67593ed0f +size 1336 diff --git a/game/characters/hermione/poses/hold_book/face/tears/sweat.webp b/game/characters/hermione/poses/hold_book/face/tears/sweat.webp new file mode 100644 index 00000000..cc72f545 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf708752e6bb06786dc010279f269726cff3985486ec38c87558ba9ce435170a +size 2062 diff --git a/game/characters/hermione/poses/hold_book/face/tears/tears_crying_side.webp b/game/characters/hermione/poses/hold_book/face/tears/tears_crying_side.webp new file mode 100644 index 00000000..1a3c276a --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/tears_crying_side.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fabc823d7bc037e7251e90196389f782be45f134fd7f5c72d79e6139012c5129 +size 3494 diff --git a/game/characters/hermione/poses/hold_book/face/tears/tears_down.webp b/game/characters/hermione/poses/hold_book/face/tears/tears_down.webp new file mode 100644 index 00000000..a408677d --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/tears_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf24ba865d21065dfb46581d2e1d99b7508738371e689d01a042aae03bd15172 +size 7688 diff --git a/game/characters/hermione/poses/hold_book/face/tears/tears_mascara_crying_blink.webp b/game/characters/hermione/poses/hold_book/face/tears/tears_mascara_crying_blink.webp new file mode 100644 index 00000000..dc02a65d --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/tears_mascara_crying_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf35cefe49dd202741397b25dec4523ee14a7b3951418bd1057e156cfc3a4966 +size 8256 diff --git a/game/characters/hermione/poses/hold_book/face/tears/tears_soft_sweat.webp b/game/characters/hermione/poses/hold_book/face/tears/tears_soft_sweat.webp new file mode 100644 index 00000000..0ecaf1b2 --- /dev/null +++ b/game/characters/hermione/poses/hold_book/face/tears/tears_soft_sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2eb13788a005239f95e2fa795b98a3b009352d24282158316b68f255a597169 +size 3068 diff --git a/game/characters/hermione/poses/hold_book/loadable.webp b/game/characters/hermione/poses/hold_book/loadable.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/hermione/poses/hold_book/loadable.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/hermione/poses/masturbate/body/armleft/down.webp b/game/characters/hermione/poses/masturbate/body/armleft/down.webp new file mode 100644 index 00000000..de690ef2 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/body/armleft/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad43dbf9ecbf97fc96157d7149e76b7e49631909c1fdbf8ba24659fa0b43eb04 +size 19184 diff --git a/game/characters/hermione/poses/masturbate/body/armleft/on_pussy.webp b/game/characters/hermione/poses/masturbate/body/armleft/on_pussy.webp new file mode 100644 index 00000000..f8368cad --- /dev/null +++ b/game/characters/hermione/poses/masturbate/body/armleft/on_pussy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:194d6675f1903d44658a94a3dd73a637aeacadee171968be4707e142bc40210c +size 16774 diff --git a/game/characters/hermione/poses/masturbate/body/armright/down.webp b/game/characters/hermione/poses/masturbate/body/armright/down.webp new file mode 100644 index 00000000..f250b08d --- /dev/null +++ b/game/characters/hermione/poses/masturbate/body/armright/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:235144e94d03e1c2e113bc77bc9e80d9082a3a17016cbf9a5abb32e177c00b14 +size 14008 diff --git a/game/characters/hermione/poses/masturbate/body/armright/on_tits.webp b/game/characters/hermione/poses/masturbate/body/armright/on_tits.webp new file mode 100644 index 00000000..de227971 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/body/armright/on_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:745c44a4bc1409fbe5ddf7a08ff04b1a8ac142c0c9fb0dae883a9e4762eac905 +size 13390 diff --git a/game/characters/hermione/poses/masturbate/body/base/front.webp b/game/characters/hermione/poses/masturbate/body/base/front.webp new file mode 100644 index 00000000..26dde8a7 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b1f8e290c683c8295d40f8f0d49227355fc666972dcd77a40802dcff536c6a5 +size 57642 diff --git a/game/characters/hermione/poses/masturbate/body/breasts/normal.webp b/game/characters/hermione/poses/masturbate/body/breasts/normal.webp new file mode 100644 index 00000000..89de88c4 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a74656fa03d149d2bf90c5d9c28a9d331902539a05b875014527dcf16ed82e8f +size 15466 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/base/0.webp b/game/characters/hermione/poses/masturbate/clothes/hair/base/0.webp new file mode 100644 index 00000000..6f3a865a --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d83e4ca0d64a01f8194d32d878262c64d97828930d7240e16583324946be7c8c +size 16796 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/base/0_back.webp b/game/characters/hermione/poses/masturbate/clothes/hair/base/0_back.webp new file mode 100644 index 00000000..ddd401b9 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/base/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4aeb9d8324febb8ebd93da5bf3f0c6b716454a0b987a1510c9dcda3ff8ae60a1 +size 37326 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/base/1.webp b/game/characters/hermione/poses/masturbate/clothes/hair/base/1.webp new file mode 100644 index 00000000..3a139666 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/base/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f550a9eabb9624596012659ac327e42364c78b23edc43f7db8c3fcfd673d049 +size 10896 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/base/1_back.webp b/game/characters/hermione/poses/masturbate/clothes/hair/base/1_back.webp new file mode 100644 index 00000000..952bbfd5 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/base/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24be0ba493bcb4df92dddaa12426f958648a771ec9b69819c2d72df9df03ed8a +size 8674 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/base/2.webp b/game/characters/hermione/poses/masturbate/clothes/hair/base/2.webp new file mode 100644 index 00000000..cd98a6fa --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/base/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69de13ac47ee400660d373ccfc79fb84e6059b5badebd62f9bec67f853c74a16 +size 1664 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/base/extra.webp b/game/characters/hermione/poses/masturbate/clothes/hair/base/extra.webp new file mode 100644 index 00000000..a02de2d2 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/base/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdfa10edaa9fdab72c637d1feeafbbaa5836a75b7fea030b76a65712fd73cbd9 +size 688 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/base/outline.webp b/game/characters/hermione/poses/masturbate/clothes/hair/base/outline.webp new file mode 100644 index 00000000..0127b9ed --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d044c8052879863c52c13023e52ca91ccf871cfb09b6c41115711c2c9284fde +size 17432 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/base/outline_back.webp b/game/characters/hermione/poses/masturbate/clothes/hair/base/outline_back.webp new file mode 100644 index 00000000..49658fdb --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/base/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6556513cecdc26ef499ef802deffad15343a9191a6a8979abe4ad92278c63d80 +size 31602 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/base/skin.webp b/game/characters/hermione/poses/masturbate/clothes/hair/base/skin.webp new file mode 100644 index 00000000..3e447895 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/base/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b963fa02cbb4ea3d14cb87430e25eca9de7d0b022a2e7355271e30fc805b2e21 +size 3368 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/bio_hair/0.webp b/game/characters/hermione/poses/masturbate/clothes/hair/bio_hair/0.webp new file mode 100644 index 00000000..0f6075f2 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/bio_hair/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:307c64500d296b1f85ffdbd0e2b02bb5e4a29176e833f8b6a4a8213a10500791 +size 15356 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/bio_hair/1.webp b/game/characters/hermione/poses/masturbate/clothes/hair/bio_hair/1.webp new file mode 100644 index 00000000..c36b1703 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/bio_hair/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6357a12b110b35b85da71574217deb85563cb69363ee21fbd404e35606268472 +size 5330 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/bio_hair/outline.webp b/game/characters/hermione/poses/masturbate/clothes/hair/bio_hair/outline.webp new file mode 100644 index 00000000..6f4ae923 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/bio_hair/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:812746b46f6404ce74d93505f81a5f2ec9109866581b048ac2b95cae3fa2173f +size 19502 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/bio_hair/skin.webp b/game/characters/hermione/poses/masturbate/clothes/hair/bio_hair/skin.webp new file mode 100644 index 00000000..37ffd1e2 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/bio_hair/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff711d9b89248366c04565bae005c1632c89ad8f165fe884b975cbb43e36d241 +size 6534 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/updo/0.webp b/game/characters/hermione/poses/masturbate/clothes/hair/updo/0.webp new file mode 100644 index 00000000..5976264a --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/updo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f993c9e6ec38601d6022469fa1eff176bd7a030ade8aaa3bc2851e335a201cf +size 18586 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/updo/0_front.webp b/game/characters/hermione/poses/masturbate/clothes/hair/updo/0_front.webp new file mode 100644 index 00000000..37a508e8 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/updo/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aca9ee25d7d7120b18e1ff1f23aeb474bee49a86fa6c7228e5be89b031e64cb +size 2706 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/updo/1.webp b/game/characters/hermione/poses/masturbate/clothes/hair/updo/1.webp new file mode 100644 index 00000000..097ef522 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/updo/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb74c348eb3ef4452165641cdd96a4208000df09a86809b2032320ee1d9be3e5 +size 7686 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/updo/1_front.webp b/game/characters/hermione/poses/masturbate/clothes/hair/updo/1_front.webp new file mode 100644 index 00000000..f7fc798d --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/updo/1_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b58dfb1c55ab81883d5ad57eeff562238747475d27179f0effde8fc9b32328c3 +size 1870 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/updo/outline.webp b/game/characters/hermione/poses/masturbate/clothes/hair/updo/outline.webp new file mode 100644 index 00000000..8a5cfa03 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/updo/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89a3d23387f3397cd11694158f21ef7597f68c55af3f6918c10d8b7cce30b021 +size 18732 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/updo/outline_front.webp b/game/characters/hermione/poses/masturbate/clothes/hair/updo/outline_front.webp new file mode 100644 index 00000000..17a33dd9 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/updo/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e24c8ecccf18d00ff4a3d73f9ec2a8db6ed93b2f81f6260131f9578c2e958a7d +size 3192 diff --git a/game/characters/hermione/poses/masturbate/clothes/hair/updo/skin.webp b/game/characters/hermione/poses/masturbate/clothes/hair/updo/skin.webp new file mode 100644 index 00000000..40d3b37e --- /dev/null +++ b/game/characters/hermione/poses/masturbate/clothes/hair/updo/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2be63edf5127554b369eebfbf058b5df6aad18cb510493a262ed927e210e1294 +size 5222 diff --git a/game/characters/hermione/poses/masturbate/cum/body/heavy.webp b/game/characters/hermione/poses/masturbate/cum/body/heavy.webp new file mode 100644 index 00000000..38dc3be8 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/body/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fe2c5e1440f7b08040ea6979ea0720a83360c5ec5f6900290712b09eabf2c60 +size 22000 diff --git a/game/characters/hermione/poses/masturbate/cum/body/light.webp b/game/characters/hermione/poses/masturbate/cum/body/light.webp new file mode 100644 index 00000000..f6692983 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/body/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5286500f8bb67683da045a1b3fe6027b61124c9fb61ccea5190fcb6c1a26d088 +size 8406 diff --git a/game/characters/hermione/poses/masturbate/cum/breasts/heavy.webp b/game/characters/hermione/poses/masturbate/cum/breasts/heavy.webp new file mode 100644 index 00000000..1778c73a --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/breasts/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49c967935ca5ab21cb305c95fa2117fe8ae7830adb20ea0b2748da2bf98e45eb +size 21588 diff --git a/game/characters/hermione/poses/masturbate/cum/breasts/light.webp b/game/characters/hermione/poses/masturbate/cum/breasts/light.webp new file mode 100644 index 00000000..326187b0 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/breasts/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85391f869b20384524ad9a15a9536b420d53fe99fdfd47a57c09832d99218b9f +size 7340 diff --git a/game/characters/hermione/poses/masturbate/cum/crotch/heavy.webp b/game/characters/hermione/poses/masturbate/cum/crotch/heavy.webp new file mode 100644 index 00000000..abf99a15 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/crotch/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afe9743c1281c55279bd027ac045a8427ed6ffc345d4402079e55085b30bd409 +size 19230 diff --git a/game/characters/hermione/poses/masturbate/cum/crotch/light.webp b/game/characters/hermione/poses/masturbate/cum/crotch/light.webp new file mode 100644 index 00000000..807433ba --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/crotch/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:604ec73a39f41c72c8a1cf84aed37c9f8454adf85e496c3a8a5ac7aaba9903ec +size 7198 diff --git a/game/characters/hermione/poses/masturbate/cum/face/heavy.webp b/game/characters/hermione/poses/masturbate/cum/face/heavy.webp new file mode 100644 index 00000000..008e5b41 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/face/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c60507756048a91c1c68492714ccd63db147a577b9597af817f59a06e49575dc +size 10552 diff --git a/game/characters/hermione/poses/masturbate/cum/face/light.webp b/game/characters/hermione/poses/masturbate/cum/face/light.webp new file mode 100644 index 00000000..dd8c8623 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/face/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:baa1b5134b28f37276d0c36825bb7f0d489bcef523cbe9c36077f4f04d67e86b +size 3512 diff --git a/game/characters/hermione/poses/masturbate/cum/hair/heavy.webp b/game/characters/hermione/poses/masturbate/cum/hair/heavy.webp new file mode 100644 index 00000000..841e6feb --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/hair/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d58546a21789f5a3c53858f5fdb46c5dcbf775ee87add5ed8515de02b58cbd9 +size 19014 diff --git a/game/characters/hermione/poses/masturbate/cum/hair/light.webp b/game/characters/hermione/poses/masturbate/cum/hair/light.webp new file mode 100644 index 00000000..e565946b --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/hair/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb500bb37573ed0b5c256970560413fe83ae1dfbe538ba4358d848acf5df761e +size 7476 diff --git a/game/characters/hermione/poses/masturbate/cum/legs/heavy.webp b/game/characters/hermione/poses/masturbate/cum/legs/heavy.webp new file mode 100644 index 00000000..bd24376c --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/legs/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49382ba4d017b50294b84908e2eb7433384011ee094e2b6caece28416498cf94 +size 18182 diff --git a/game/characters/hermione/poses/masturbate/cum/legs/light.webp b/game/characters/hermione/poses/masturbate/cum/legs/light.webp new file mode 100644 index 00000000..15ac1f26 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/legs/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bb1519b6786ff010fa3ed8741c197ff5d4c37737614ddaa732feaff32a4ad56 +size 6054 diff --git a/game/characters/hermione/poses/masturbate/cum/pussy/heavy.webp b/game/characters/hermione/poses/masturbate/cum/pussy/heavy.webp new file mode 100644 index 00000000..bf24f975 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/pussy/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c36a00d597a6e08cf8eeef5146851332e48904e52c08d9f287f0e78b0a83786f +size 4634 diff --git a/game/characters/hermione/poses/masturbate/cum/pussy/light.webp b/game/characters/hermione/poses/masturbate/cum/pussy/light.webp new file mode 100644 index 00000000..c6d809cc --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/pussy/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fbd4cb276916dd023e771b8087984af0f06792d9c06a8bb8c014c54fba66d82 +size 2096 diff --git a/game/characters/hermione/poses/masturbate/cum/pussy/squirt.webp b/game/characters/hermione/poses/masturbate/cum/pussy/squirt.webp new file mode 100644 index 00000000..51f58906 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/pussy/squirt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bc1f264bc3fece6c095e77dfc18671b06f3c1fe3dc6021e9178d4b60f9f66b4 +size 3734 diff --git a/game/characters/hermione/poses/masturbate/cum/pussy/squirt_post.webp b/game/characters/hermione/poses/masturbate/cum/pussy/squirt_post.webp new file mode 100644 index 00000000..198ddf3b --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/pussy/squirt_post.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c58282e0ed1ab33a1621cbfc992d2c0f8b3ee683daf6c7f0d6115af87e04652e +size 3140 diff --git a/game/characters/hermione/poses/masturbate/cum/pussy/wet.webp b/game/characters/hermione/poses/masturbate/cum/pussy/wet.webp new file mode 100644 index 00000000..b719f0d1 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/cum/pussy/wet.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6734389581e87db205eb8fdadfa0749310b102b9f48f8326d891f7093c7c6c99 +size 840 diff --git a/game/characters/hermione/poses/masturbate/face/cheeks/blush.webp b/game/characters/hermione/poses/masturbate/face/cheeks/blush.webp new file mode 100644 index 00000000..fe1b322d --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c09efc169b82c2965ddba9e0e74be9dc84f7b4b91133c944c714046c62431473 +size 3350 diff --git a/game/characters/hermione/poses/masturbate/face/eyebrows/angry.webp b/game/characters/hermione/poses/masturbate/face/eyebrows/angry.webp new file mode 100644 index 00000000..e02f5f99 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21d3cabcf523271992fa7a6163cfd1260aef2bcca1764adfbb9e41b099afcb3c +size 2174 diff --git a/game/characters/hermione/poses/masturbate/face/eyebrows/angry_skin.webp b/game/characters/hermione/poses/masturbate/face/eyebrows/angry_skin.webp new file mode 100644 index 00000000..6cca71bb --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyebrows/angry_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e5bbab94f721c485745b8850512f7513efb4c149b8e9413df1351adc914bca4 +size 1518 diff --git a/game/characters/hermione/poses/masturbate/face/eyebrows/annoyed.webp b/game/characters/hermione/poses/masturbate/face/eyebrows/annoyed.webp new file mode 100644 index 00000000..9cfe53a7 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyebrows/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27d078d079cb19e6f471d0e38b289917a5396529f15c3162257187f080196783 +size 2046 diff --git a/game/characters/hermione/poses/masturbate/face/eyebrows/annoyed_skin.webp b/game/characters/hermione/poses/masturbate/face/eyebrows/annoyed_skin.webp new file mode 100644 index 00000000..6cca71bb --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyebrows/annoyed_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e5bbab94f721c485745b8850512f7513efb4c149b8e9413df1351adc914bca4 +size 1518 diff --git a/game/characters/hermione/poses/masturbate/face/eyebrows/base.webp b/game/characters/hermione/poses/masturbate/face/eyebrows/base.webp new file mode 100644 index 00000000..4b191d96 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4c96c699da06281486dfc439f3cc358f82187b220096c86c342660ef732aa87 +size 2082 diff --git a/game/characters/hermione/poses/masturbate/face/eyebrows/base_skin.webp b/game/characters/hermione/poses/masturbate/face/eyebrows/base_skin.webp new file mode 100644 index 00000000..773c8ad2 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyebrows/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bd0af7bee8fdd2762a9fa2296a0f524201fea5df9c87ba85a02aa3eb61ba10c +size 1702 diff --git a/game/characters/hermione/poses/masturbate/face/eyebrows/low.webp b/game/characters/hermione/poses/masturbate/face/eyebrows/low.webp new file mode 100644 index 00000000..90ee12f3 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyebrows/low.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b7ed81c5dbb56089e9d943838e5e4bc33ffd66e22aaabae3730176371bc3673 +size 2164 diff --git a/game/characters/hermione/poses/masturbate/face/eyebrows/low_skin.webp b/game/characters/hermione/poses/masturbate/face/eyebrows/low_skin.webp new file mode 100644 index 00000000..b83cf58c --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyebrows/low_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5a64586bf0d546174c90eb22d9d8d08f38bb19ab266359665aa9ec201542a82 +size 1664 diff --git a/game/characters/hermione/poses/masturbate/face/eyebrows/worried.webp b/game/characters/hermione/poses/masturbate/face/eyebrows/worried.webp new file mode 100644 index 00000000..b5801cd7 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1dbe3693dc173ab088af8da9875f8de3a080368ebce6f3d04a1e8a2d215eafa0 +size 1892 diff --git a/game/characters/hermione/poses/masturbate/face/eyebrows/worried_skin.webp b/game/characters/hermione/poses/masturbate/face/eyebrows/worried_skin.webp new file mode 100644 index 00000000..2d06e5fd --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyebrows/worried_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99a2f60903efa4ce8e5fdee3d2b872b7f76a6f323eb968e7e61a5625cce4a986 +size 1578 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/base.webp b/game/characters/hermione/poses/masturbate/face/eyes/base.webp new file mode 100644 index 00000000..9cb0243e --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63b9592a67b16a85aacaaa8d6a8117c26389cdda8f23592ae3d21acc1c9263c4 +size 2392 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/base_mask.webp b/game/characters/hermione/poses/masturbate/face/eyes/base_mask.webp new file mode 100644 index 00000000..67235ae6 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9672a2b53e10bbc8fdf23740a37c8181e695b101d0a6909b9516ea4db445ae65 +size 890 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/closed.webp b/game/characters/hermione/poses/masturbate/face/eyes/closed.webp new file mode 100644 index 00000000..7006cdf6 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e89d621467b60a6efd586975a2dfe08d59ce821e2c374b910bf9218364456d24 +size 4172 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/happy.webp b/game/characters/hermione/poses/masturbate/face/eyes/happy.webp new file mode 100644 index 00000000..121c27e5 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c925a53a8e73b38a98a65d773d9feb3e11ce463a0d4df494aec7c95b128c513 +size 2558 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/happyCl.webp b/game/characters/hermione/poses/masturbate/face/eyes/happyCl.webp new file mode 100644 index 00000000..f744494c --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a75deb68bd7d12d36643d8a453815b451fcb7c0750fc31be3333f3e197bc530c +size 2736 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/happy_mask.webp b/game/characters/hermione/poses/masturbate/face/eyes/happy_mask.webp new file mode 100644 index 00000000..e5d19826 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/happy_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:126c79fa9701f6f06b4c15b893b59f8cc7d8fe0d10afef9e776db17e896949ee +size 984 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/narrow.webp b/game/characters/hermione/poses/masturbate/face/eyes/narrow.webp new file mode 100644 index 00000000..2d9f9be2 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2c0c8de824ebbe362f481d8c353be7b943fdf57038ac068463f3aea60810b13 +size 3280 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/narrow_mask.webp b/game/characters/hermione/poses/masturbate/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..872a86d2 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfe027a72050dc1488510959b384fc6e03d3b7e45994b1a73abeaa9307114195 +size 840 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/slit.webp b/game/characters/hermione/poses/masturbate/face/eyes/slit.webp new file mode 100644 index 00000000..5093c0cd --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/slit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cac7be10c57324a5c673cf9afdbc099bb013cf08a1aabfb9273e1292507e740f +size 2248 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/slit_mask.webp b/game/characters/hermione/poses/masturbate/face/eyes/slit_mask.webp new file mode 100644 index 00000000..fe4924f3 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/slit_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e487181b57e86966c3b7be68b1577b34547f06e60c84efc80ec22e25d31779d +size 734 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/squint.webp b/game/characters/hermione/poses/masturbate/face/eyes/squint.webp new file mode 100644 index 00000000..54a29520 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/squint.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0443289dbe510c4d0ecc14dcb6fc5ffc4c10bfd11aac3ba754309389da9beb4 +size 2592 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/squint_mask.webp b/game/characters/hermione/poses/masturbate/face/eyes/squint_mask.webp new file mode 100644 index 00000000..887be780 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/squint_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38f0a8876eb84f4c5ad39525e343adffecfb4c85377a69b2cd1846f991892143 +size 906 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/wide.webp b/game/characters/hermione/poses/masturbate/face/eyes/wide.webp new file mode 100644 index 00000000..cc5065e4 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d2a36ab5646c8178ba932b0b5db99f7d9dca189601b5eb9d8984e1ba4d378e4 +size 2828 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/wide_mask.webp b/game/characters/hermione/poses/masturbate/face/eyes/wide_mask.webp new file mode 100644 index 00000000..05407db2 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/wide_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d631a1f75e0c37d4656aba672ec600920c86a6ddb8c7f0767e2212bfb0df1c7 +size 1144 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/wink.webp b/game/characters/hermione/poses/masturbate/face/eyes/wink.webp new file mode 100644 index 00000000..d054fc17 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf6b34a577e7c608962dfa8243e3517203de3252ec3d8fce8a20de8c765c1784 +size 2502 diff --git a/game/characters/hermione/poses/masturbate/face/eyes/wink_mask.webp b/game/characters/hermione/poses/masturbate/face/eyes/wink_mask.webp new file mode 100644 index 00000000..bd73f416 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/eyes/wink_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b99cca3b8529be1b98c6c6ecace542834b41060c3fc091f6379c26dea1be6ae0 +size 702 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/angry.webp b/game/characters/hermione/poses/masturbate/face/mouth/angry.webp new file mode 100644 index 00000000..ea115d4d --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ba2f1e362996335a25c929b64d3d231db4e5468022256f23ab7d76781a93b34 +size 3286 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/annoyed.webp b/game/characters/hermione/poses/masturbate/face/mouth/annoyed.webp new file mode 100644 index 00000000..3c6373d1 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47fd69deee1a2dbd7f3daee18aaf8706d0739c8d58a91f51270880dcd0f5e548 +size 1556 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/base.webp b/game/characters/hermione/poses/masturbate/face/mouth/base.webp new file mode 100644 index 00000000..1b399c04 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62711dfb10ba5c9995b51e54b1c0da7e57b81900743f61748faf86209fff552a +size 1644 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/clench.webp b/game/characters/hermione/poses/masturbate/face/mouth/clench.webp new file mode 100644 index 00000000..3e2f5505 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6dfc7a871028f85358a51a98a52e130e133c79c0c584924e1a0cfc1d28f3af0b +size 2930 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/crooked_smile.webp b/game/characters/hermione/poses/masturbate/face/mouth/crooked_smile.webp new file mode 100644 index 00000000..720526b9 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc22a8aa6d77438fb9bd2e4f918cb2329cec9f0e598ecc76723baa47a58ad308 +size 3216 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/cum.webp b/game/characters/hermione/poses/masturbate/face/mouth/cum.webp new file mode 100644 index 00000000..9287ddcf --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9d2f6029df53972bc59b49615793a509dc4b205b1f8070793987da305f84d2d +size 1756 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/disgust.webp b/game/characters/hermione/poses/masturbate/face/mouth/disgust.webp new file mode 100644 index 00000000..99d4ed66 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f92691b2864a237e69e75433d33b93a76370cd300540e911531df253fcf466f +size 2268 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/full.webp b/game/characters/hermione/poses/masturbate/face/mouth/full.webp new file mode 100644 index 00000000..b3e2e354 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9c1984c8fcfeb0361ee010ddc73476506c530fbb6ef49022596cd2d355ceace +size 8976 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/full_cum.webp b/game/characters/hermione/poses/masturbate/face/mouth/full_cum.webp new file mode 100644 index 00000000..19bf918e --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/full_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c93c4e199e6a32d9c6a4b2d87b306fa34c3079fc5a77dfa013482ce1d9c15b7 +size 10326 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/grin.webp b/game/characters/hermione/poses/masturbate/face/mouth/grin.webp new file mode 100644 index 00000000..c9ebaa32 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d17cd11fddcb128b18177fa2eb95ba6240a26bd9f8485d2e72b76e3edaa5412 +size 3292 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/mad.webp b/game/characters/hermione/poses/masturbate/face/mouth/mad.webp new file mode 100644 index 00000000..bd251ece --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3dba34e986ed0d2a4778f0c8f2084f46798a460382d46943bc1ce56c9597c50 +size 2350 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/normal.webp b/game/characters/hermione/poses/masturbate/face/mouth/normal.webp new file mode 100644 index 00000000..f6c50778 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:251662ba9ac9203bbf5972c86a5c6c9615fef9f30d774f7f37c66fae7a0c8f06 +size 1458 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/open.webp b/game/characters/hermione/poses/masturbate/face/mouth/open.webp new file mode 100644 index 00000000..066b5707 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:795aa28c614997cd901487f19ebc3cb9ad462bfc79d5d75b3a216b79d6a9a0aa +size 2344 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/open_tongue.webp b/game/characters/hermione/poses/masturbate/face/mouth/open_tongue.webp new file mode 100644 index 00000000..f8d7fbef --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdb7cdff1a02e9031bb054fc4baecd58e80fbb578b68ce49f73dead4edbefbb7 +size 2310 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/open_wide_tongue.webp b/game/characters/hermione/poses/masturbate/face/mouth/open_wide_tongue.webp new file mode 100644 index 00000000..661261e4 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53e235f81e23a10f0eecf347bb3e1a6d6df2a36826130d028a794cc8cce0c084 +size 6122 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/open_wide_tongue_cum.webp b/game/characters/hermione/poses/masturbate/face/mouth/open_wide_tongue_cum.webp new file mode 100644 index 00000000..68b67d54 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/open_wide_tongue_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:842cdaed8c60a2bb3cc0bfead4fe36cd131100a4250d44be464cafa1cdd35ba6 +size 6938 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/scream.webp b/game/characters/hermione/poses/masturbate/face/mouth/scream.webp new file mode 100644 index 00000000..671fede7 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7baa90e90d5fad7803836189084ba60f5c09d1c319aa2ac28a4741f05425c934 +size 6210 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/shock.webp b/game/characters/hermione/poses/masturbate/face/mouth/shock.webp new file mode 100644 index 00000000..83e4fd5a --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/shock.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c820c0412e07a6df13d6381d834f520635338c1023242951660a56fe3d22ba93 +size 2782 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/silly.webp b/game/characters/hermione/poses/masturbate/face/mouth/silly.webp new file mode 100644 index 00000000..6ee9dcb3 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/silly.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1846fd4070cfda1203434a8312aa64ae3e95f7a134f3dbd3087dc66c70837c78 +size 3298 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/smile.webp b/game/characters/hermione/poses/masturbate/face/mouth/smile.webp new file mode 100644 index 00000000..11de0078 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cd795aa71a45e71f69511ab343cf7e274d3060af14b5dcf9e6080aec709a84d +size 3598 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/soft.webp b/game/characters/hermione/poses/masturbate/face/mouth/soft.webp new file mode 100644 index 00000000..732f364d --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:871b71a57ff12e211318dbe22a65d7bec77f804d7efd0fdd9dedcf632946458c +size 2310 diff --git a/game/characters/hermione/poses/masturbate/face/mouth/upset.webp b/game/characters/hermione/poses/masturbate/face/mouth/upset.webp new file mode 100644 index 00000000..5072f7c1 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3aebaa6aca1ab2e2d21d483877ec39598b15c6eab1f61827261c1f9e559462f5 +size 1560 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/L.webp b/game/characters/hermione/poses/masturbate/face/pupils/L.webp new file mode 100644 index 00000000..c8be1dd6 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa76bfb8481861c0223ede0ca0fccf8e22fc77eefdeb096c1bd37785aa808448 +size 1570 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/L_soft.webp b/game/characters/hermione/poses/masturbate/face/pupils/L_soft.webp new file mode 100644 index 00000000..0a6de4d5 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/L_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bf58ce89969340e1a3ac20c41e8d293e2b2a9b64b9fa050a13eeaf79057eaec +size 1704 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/R.webp b/game/characters/hermione/poses/masturbate/face/pupils/R.webp new file mode 100644 index 00000000..56f4599b --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63c1f07dc4a87eeb00cb4db203ed619319fccbf655e1a9952601f3a15a0c773a +size 1560 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/R_soft.webp b/game/characters/hermione/poses/masturbate/face/pupils/R_soft.webp new file mode 100644 index 00000000..5990b4a4 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/R_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f40c24c85398c4e83b7a944a8714146d478b7b62e17126585cf26b9049d475b8 +size 1624 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/ahegao.webp b/game/characters/hermione/poses/masturbate/face/pupils/ahegao.webp new file mode 100644 index 00000000..01c69f07 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f468d54dbaa96951499c8ef2a068b0afd8331d41c0f0b26d192da072d300319 +size 1470 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/dead.webp b/game/characters/hermione/poses/masturbate/face/pupils/dead.webp new file mode 100644 index 00000000..0ad15362 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/dead.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e83ae490a7816db3910e2540f68997b708557d2108663d908ce50458653fb63 +size 1754 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/down.webp b/game/characters/hermione/poses/masturbate/face/pupils/down.webp new file mode 100644 index 00000000..e3d78b19 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5047c97e28408ff3f97888116d1aa4b9c96e20c5ddba465da9dc5807e5ecab12 +size 1560 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/down_soft.webp b/game/characters/hermione/poses/masturbate/face/pupils/down_soft.webp new file mode 100644 index 00000000..1eecd91c --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/down_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbacb76a0623a9f0df3aebcdbc7557334ff035159f64e8da2a0e65524189aa27 +size 1690 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/mid.webp b/game/characters/hermione/poses/masturbate/face/pupils/mid.webp new file mode 100644 index 00000000..10394021 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdf9154530d6715e26666850b3df2186f30efee5c0d885b81c4f51c3e069396f +size 1482 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/mid_soft.webp b/game/characters/hermione/poses/masturbate/face/pupils/mid_soft.webp new file mode 100644 index 00000000..dd47d3b9 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/mid_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcecfef40556072b1e246ad89951052c39e2672808effe98f1bcfb51e9b482ab +size 1632 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/shocked.webp b/game/characters/hermione/poses/masturbate/face/pupils/shocked.webp new file mode 100644 index 00000000..f4333992 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76082d4d901a22f69dd256ae5b6b7c1d0ba3152a92edccd426d37c6a1652c4fb +size 1796 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/squint.webp b/game/characters/hermione/poses/masturbate/face/pupils/squint.webp new file mode 100644 index 00000000..3368a560 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/squint.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a72edb9f4762f25d8036291e35431b272eb2434fbc6489d214259f786ace41c6 +size 1456 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/squint_soft.webp b/game/characters/hermione/poses/masturbate/face/pupils/squint_soft.webp new file mode 100644 index 00000000..2c39fad1 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/squint_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37db0eb8ef1574036676a93314ab0a9f61b8db6b3a3f6bf58ee41a4599933930 +size 1718 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/stare.webp b/game/characters/hermione/poses/masturbate/face/pupils/stare.webp new file mode 100644 index 00000000..fe72cbd9 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/stare.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dff42f59f737a7042653055aa68a8a2da4ac2cc1a6101ed0de6edd7ec984c3b7 +size 1552 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/stare_soft.webp b/game/characters/hermione/poses/masturbate/face/pupils/stare_soft.webp new file mode 100644 index 00000000..7c938ce9 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/stare_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0608d5bb7b8ab254a38fac405b0865f5f470b2e64305a1ccfdc65d215a573a7 +size 1590 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/up.webp b/game/characters/hermione/poses/masturbate/face/pupils/up.webp new file mode 100644 index 00000000..4456f787 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca601323929fce1a4fbd97255ed6cb8151752f92765d40fccad17f573465bb6b +size 1604 diff --git a/game/characters/hermione/poses/masturbate/face/pupils/up_soft.webp b/game/characters/hermione/poses/masturbate/face/pupils/up_soft.webp new file mode 100644 index 00000000..cd045865 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/pupils/up_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ecc2f0e26c206eb8adfff1046039f0c38c13d07dc056572d27f20534a44eb45 +size 1656 diff --git a/game/characters/hermione/poses/masturbate/face/tears/crying.webp b/game/characters/hermione/poses/masturbate/face/tears/crying.webp new file mode 100644 index 00000000..7b1b060f --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/crying.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b647117cbcc1fafd02000ac1b25bba83807cc0ec4695ee9131e9b8b6ff48ba9 +size 7748 diff --git a/game/characters/hermione/poses/masturbate/face/tears/crying_blink.webp b/game/characters/hermione/poses/masturbate/face/tears/crying_blink.webp new file mode 100644 index 00000000..d0377573 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/crying_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7db47d43aff5e70df32ba4bd25697de1998ab7494f465c9573602fafae79c4c6 +size 3974 diff --git a/game/characters/hermione/poses/masturbate/face/tears/mascara.webp b/game/characters/hermione/poses/masturbate/face/tears/mascara.webp new file mode 100644 index 00000000..86c77d8c --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/mascara.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d17e335038b239f1916a108a34800fb8f633cf57887ca366ef62c5ce24a77d4 +size 8790 diff --git a/game/characters/hermione/poses/masturbate/face/tears/mascara_crying.webp b/game/characters/hermione/poses/masturbate/face/tears/mascara_crying.webp new file mode 100644 index 00000000..8d8292a3 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/mascara_crying.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3966490e1f3a62d0bd98437d915675d469eaf85ac3520e01a1b4520788d0cab +size 7688 diff --git a/game/characters/hermione/poses/masturbate/face/tears/mascara_soft.webp b/game/characters/hermione/poses/masturbate/face/tears/mascara_soft.webp new file mode 100644 index 00000000..a8615cf4 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/mascara_soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:395bf14e82ae06dea7169b3522aefe0f7d984720c835714ea7f269081f7f6129 +size 9552 diff --git a/game/characters/hermione/poses/masturbate/face/tears/mascara_soft_blink.webp b/game/characters/hermione/poses/masturbate/face/tears/mascara_soft_blink.webp new file mode 100644 index 00000000..69567c7d --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/mascara_soft_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6eb4cb10fd98947c34a12dc3be6bd7f98b3cf2b665ff719e52ec6bff62b9e75 +size 9752 diff --git a/game/characters/hermione/poses/masturbate/face/tears/messy.webp b/game/characters/hermione/poses/masturbate/face/tears/messy.webp new file mode 100644 index 00000000..53b13cd4 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/messy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06050bc55d5824a1a506d0dfd454f17e1ed28c3da5acffb364892ce2fddac68d +size 9034 diff --git a/game/characters/hermione/poses/masturbate/face/tears/soft.webp b/game/characters/hermione/poses/masturbate/face/tears/soft.webp new file mode 100644 index 00000000..5d27fd48 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6a9d585f5f04a291e6764a810bbbe7522126fadfdb879cfebbc80c1c06af8db +size 1248 diff --git a/game/characters/hermione/poses/masturbate/face/tears/soft_blink.webp b/game/characters/hermione/poses/masturbate/face/tears/soft_blink.webp new file mode 100644 index 00000000..a8347724 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/soft_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44b52b17482de89a8cc7906bc20a821be0180023873bd3c862ec8ea67593ed0f +size 1336 diff --git a/game/characters/hermione/poses/masturbate/face/tears/sweat.webp b/game/characters/hermione/poses/masturbate/face/tears/sweat.webp new file mode 100644 index 00000000..cc72f545 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf708752e6bb06786dc010279f269726cff3985486ec38c87558ba9ce435170a +size 2062 diff --git a/game/characters/hermione/poses/masturbate/face/tears/tears_crying_side.webp b/game/characters/hermione/poses/masturbate/face/tears/tears_crying_side.webp new file mode 100644 index 00000000..1a3c276a --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/tears_crying_side.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fabc823d7bc037e7251e90196389f782be45f134fd7f5c72d79e6139012c5129 +size 3494 diff --git a/game/characters/hermione/poses/masturbate/face/tears/tears_down.webp b/game/characters/hermione/poses/masturbate/face/tears/tears_down.webp new file mode 100644 index 00000000..a408677d --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/tears_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf24ba865d21065dfb46581d2e1d99b7508738371e689d01a042aae03bd15172 +size 7688 diff --git a/game/characters/hermione/poses/masturbate/face/tears/tears_mascara_crying_blink.webp b/game/characters/hermione/poses/masturbate/face/tears/tears_mascara_crying_blink.webp new file mode 100644 index 00000000..dc02a65d --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/tears_mascara_crying_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf35cefe49dd202741397b25dec4523ee14a7b3951418bd1057e156cfc3a4966 +size 8256 diff --git a/game/characters/hermione/poses/masturbate/face/tears/tears_soft_sweat.webp b/game/characters/hermione/poses/masturbate/face/tears/tears_soft_sweat.webp new file mode 100644 index 00000000..0ecaf1b2 --- /dev/null +++ b/game/characters/hermione/poses/masturbate/face/tears/tears_soft_sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2eb13788a005239f95e2fa795b98a3b009352d24282158316b68f255a597169 +size 3068 diff --git a/game/characters/hermione/poses/masturbate/loadable.webp b/game/characters/hermione/poses/masturbate/loadable.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/hermione/poses/masturbate/loadable.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/hooch/body/base/front.webp b/game/characters/hooch/body/base/front.webp new file mode 100644 index 00000000..67eea5f9 --- /dev/null +++ b/game/characters/hooch/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f77f29902a603a863ce1c9ca0bef3f6cd83ce1b11b1fafeb6b1e6cd7e72c671 +size 91108 diff --git a/game/characters/hooch/chibi/stand/0.webp b/game/characters/hooch/chibi/stand/0.webp new file mode 100644 index 00000000..a9f3acb3 --- /dev/null +++ b/game/characters/hooch/chibi/stand/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c50ae9945e86b3aa54128c9744bcb171be5083dd3cba8a13c2f72ebfceeb085 +size 72638 diff --git a/game/characters/hooch/chibi/walk/0.webp b/game/characters/hooch/chibi/walk/0.webp new file mode 100644 index 00000000..dda4e144 --- /dev/null +++ b/game/characters/hooch/chibi/walk/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44da5f9cdef4729a269f32d159c436552be2b8fc190745eb803413bfbaa06e3d +size 71976 diff --git a/game/characters/hooch/chibi/walk/1.webp b/game/characters/hooch/chibi/walk/1.webp new file mode 100644 index 00000000..1bdd9b75 --- /dev/null +++ b/game/characters/hooch/chibi/walk/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c609af0a32574e7d5116833e09c0321222d6835d839a447932ffa448f180d5e +size 74396 diff --git a/game/characters/hooch/chibi/walk/2.webp b/game/characters/hooch/chibi/walk/2.webp new file mode 100644 index 00000000..42ebbcd2 --- /dev/null +++ b/game/characters/hooch/chibi/walk/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47656ec563c6bbd28f559dd0a6b7a9671a55a225f73402b785b9c5cd59f2c618 +size 78622 diff --git a/game/characters/hooch/chibi/walk/3.webp b/game/characters/hooch/chibi/walk/3.webp new file mode 100644 index 00000000..1c3c387d --- /dev/null +++ b/game/characters/hooch/chibi/walk/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bca74ca38eccae3061a2a9eb9970e466f9dfddbc20207034fab004919e3f1861 +size 76288 diff --git a/game/characters/hooch/chibi/walk/4.webp b/game/characters/hooch/chibi/walk/4.webp new file mode 100644 index 00000000..dda4e144 --- /dev/null +++ b/game/characters/hooch/chibi/walk/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44da5f9cdef4729a269f32d159c436552be2b8fc190745eb803413bfbaa06e3d +size 71976 diff --git a/game/characters/hooch/chibi/walk/5.webp b/game/characters/hooch/chibi/walk/5.webp new file mode 100644 index 00000000..5b03eb92 --- /dev/null +++ b/game/characters/hooch/chibi/walk/5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3cb78bfebbb1650694e4605c70caa5ee47c161e497c07f9795152302ca8c4767 +size 73124 diff --git a/game/characters/hooch/chibi/walk/6.webp b/game/characters/hooch/chibi/walk/6.webp new file mode 100644 index 00000000..5727d40f --- /dev/null +++ b/game/characters/hooch/chibi/walk/6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3d30d56caf41f4afc18f2861da51825f05e9c0bea025aa510f4552cd58cd955 +size 74366 diff --git a/game/characters/hooch/chibi/walk/7.webp b/game/characters/hooch/chibi/walk/7.webp new file mode 100644 index 00000000..695185a7 --- /dev/null +++ b/game/characters/hooch/chibi/walk/7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0206b0a10228fb97ede93b1ccd4adec37179bd5f38ca188d001963c1a9133869 +size 73634 diff --git a/game/characters/hooch/clothes/accessory/broom/0.webp b/game/characters/hooch/clothes/accessory/broom/0.webp new file mode 100644 index 00000000..15fe71bf --- /dev/null +++ b/game/characters/hooch/clothes/accessory/broom/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d69d2e91bf0e68e0ef9a27804761d863e6ba895f6457b0b9e8ad2e5176bfbf1 +size 15376 diff --git a/game/characters/hooch/clothes/accessory/broom/1.webp b/game/characters/hooch/clothes/accessory/broom/1.webp new file mode 100644 index 00000000..6546444d --- /dev/null +++ b/game/characters/hooch/clothes/accessory/broom/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54bdc4a0f01a3a6cb7ac50dd156f9ab15d864e586ed857d70497d83399c19947 +size 1132 diff --git a/game/characters/hooch/clothes/accessory/broom/2.webp b/game/characters/hooch/clothes/accessory/broom/2.webp new file mode 100644 index 00000000..053734c6 --- /dev/null +++ b/game/characters/hooch/clothes/accessory/broom/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7543d7835b20d40a2ccf6bfd3fe34299f1936cf8e5e5e55de64452165c7b3eee +size 4742 diff --git a/game/characters/hooch/clothes/accessory/broom/outline.webp b/game/characters/hooch/clothes/accessory/broom/outline.webp new file mode 100644 index 00000000..fb04d141 --- /dev/null +++ b/game/characters/hooch/clothes/accessory/broom/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4497e64b32abe60777445f33d8f0e76c1c24e1ed4786bf739b6749e5937bd16e +size 24664 diff --git a/game/characters/hooch/clothes/accessory/broom_dildo/0.webp b/game/characters/hooch/clothes/accessory/broom_dildo/0.webp new file mode 100644 index 00000000..15fe71bf --- /dev/null +++ b/game/characters/hooch/clothes/accessory/broom_dildo/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d69d2e91bf0e68e0ef9a27804761d863e6ba895f6457b0b9e8ad2e5176bfbf1 +size 15376 diff --git a/game/characters/hooch/clothes/accessory/broom_dildo/1.webp b/game/characters/hooch/clothes/accessory/broom_dildo/1.webp new file mode 100644 index 00000000..6546444d --- /dev/null +++ b/game/characters/hooch/clothes/accessory/broom_dildo/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54bdc4a0f01a3a6cb7ac50dd156f9ab15d864e586ed857d70497d83399c19947 +size 1132 diff --git a/game/characters/hooch/clothes/accessory/broom_dildo/2.webp b/game/characters/hooch/clothes/accessory/broom_dildo/2.webp new file mode 100644 index 00000000..053734c6 --- /dev/null +++ b/game/characters/hooch/clothes/accessory/broom_dildo/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7543d7835b20d40a2ccf6bfd3fe34299f1936cf8e5e5e55de64452165c7b3eee +size 4742 diff --git a/game/characters/hooch/clothes/accessory/broom_dildo/outline.webp b/game/characters/hooch/clothes/accessory/broom_dildo/outline.webp new file mode 100644 index 00000000..fb04d141 --- /dev/null +++ b/game/characters/hooch/clothes/accessory/broom_dildo/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4497e64b32abe60777445f33d8f0e76c1c24e1ed4786bf739b6749e5937bd16e +size 24664 diff --git a/game/characters/hooch/clothes/accessory/broom_dildo/overlay.webp b/game/characters/hooch/clothes/accessory/broom_dildo/overlay.webp new file mode 100644 index 00000000..3ea9c806 --- /dev/null +++ b/game/characters/hooch/clothes/accessory/broom_dildo/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3c13dfe438433036b3d6ff3322b866e15d364236af18cb4d6b1405ce19fbac8 +size 8566 diff --git a/game/characters/hooch/clothes/bottom/sport_trousers/0.webp b/game/characters/hooch/clothes/bottom/sport_trousers/0.webp new file mode 100644 index 00000000..626f8925 --- /dev/null +++ b/game/characters/hooch/clothes/bottom/sport_trousers/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efb539157f3d1aa969e5c2b9ae4528ea4831d21eb56c3f120f3455213d5f9d41 +size 13850 diff --git a/game/characters/hooch/clothes/bottom/sport_trousers/1.webp b/game/characters/hooch/clothes/bottom/sport_trousers/1.webp new file mode 100644 index 00000000..510b36cb --- /dev/null +++ b/game/characters/hooch/clothes/bottom/sport_trousers/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4defef8f6e9e0ff861d51725d375acabfee3744ef42c2292ea6660250cc56bd0 +size 2604 diff --git a/game/characters/hooch/clothes/bottom/sport_trousers/outline.webp b/game/characters/hooch/clothes/bottom/sport_trousers/outline.webp new file mode 100644 index 00000000..e3eb37b7 --- /dev/null +++ b/game/characters/hooch/clothes/bottom/sport_trousers/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:960235e230c743470f24fb9b0eeca5dd8507b042522e3cffe97eac94d6f560ae +size 14824 diff --git a/game/characters/hooch/clothes/bra/sport/0.webp b/game/characters/hooch/clothes/bra/sport/0.webp new file mode 100644 index 00000000..02266a24 --- /dev/null +++ b/game/characters/hooch/clothes/bra/sport/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cdf4f348197cba788fd8ad06bc86047e0909b5eddc657d4d0a61fc7c83addfca +size 9184 diff --git a/game/characters/hooch/clothes/bra/sport/1.webp b/game/characters/hooch/clothes/bra/sport/1.webp new file mode 100644 index 00000000..03fd677f --- /dev/null +++ b/game/characters/hooch/clothes/bra/sport/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cb7d72d672a493a5b7805b28f32054f7b8dd8ef4e2c87c91c33bdd22a5fbd92 +size 6776 diff --git a/game/characters/hooch/clothes/bra/sport/outline.webp b/game/characters/hooch/clothes/bra/sport/outline.webp new file mode 100644 index 00000000..add9e39f --- /dev/null +++ b/game/characters/hooch/clothes/bra/sport/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a7d5c660a54fede085d5326c40ca5b720ae17cc71bf89cbe6ffb383616c43b8 +size 16726 diff --git a/game/characters/hooch/clothes/gloves/sport_gloves/0.webp b/game/characters/hooch/clothes/gloves/sport_gloves/0.webp new file mode 100644 index 00000000..fc00defd --- /dev/null +++ b/game/characters/hooch/clothes/gloves/sport_gloves/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f5865b1c760c6ccf2e720f305cb733181c11fff1252ec5f62569bbfeade5d96 +size 5232 diff --git a/game/characters/hooch/clothes/gloves/sport_gloves/0_top.webp b/game/characters/hooch/clothes/gloves/sport_gloves/0_top.webp new file mode 100644 index 00000000..94576baf --- /dev/null +++ b/game/characters/hooch/clothes/gloves/sport_gloves/0_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49fb554f491d19a111e136fb390035a81dccabcd9dfb504f4d5775ea2c40b632 +size 3206 diff --git a/game/characters/hooch/clothes/gloves/sport_gloves/extra.webp b/game/characters/hooch/clothes/gloves/sport_gloves/extra.webp new file mode 100644 index 00000000..76464a1b --- /dev/null +++ b/game/characters/hooch/clothes/gloves/sport_gloves/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81f49d5956a41a4765c37798575f9ad11fc1e7eeefae06acdd3a2524f3468cd8 +size 1612 diff --git a/game/characters/hooch/clothes/gloves/sport_gloves/extra_top.webp b/game/characters/hooch/clothes/gloves/sport_gloves/extra_top.webp new file mode 100644 index 00000000..4d146e53 --- /dev/null +++ b/game/characters/hooch/clothes/gloves/sport_gloves/extra_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b3b1abc8d8f6b5bc7f1120dd04530e62152b712ae44800a8e19d31992d54b92 +size 1246 diff --git a/game/characters/hooch/clothes/gloves/sport_gloves/outline.webp b/game/characters/hooch/clothes/gloves/sport_gloves/outline.webp new file mode 100644 index 00000000..0a07b173 --- /dev/null +++ b/game/characters/hooch/clothes/gloves/sport_gloves/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37b5b01e418166ee6c31776be558fbe9e2e401c0b1041d2b88e8444e361cd659 +size 5810 diff --git a/game/characters/hooch/clothes/gloves/sport_gloves/outline_top.webp b/game/characters/hooch/clothes/gloves/sport_gloves/outline_top.webp new file mode 100644 index 00000000..a9bab975 --- /dev/null +++ b/game/characters/hooch/clothes/gloves/sport_gloves/outline_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f26fab0c872a34996a34f3a1a544cc42a024122c01f5849a6ada6c8818a28f81 +size 3718 diff --git a/game/characters/hooch/clothes/hair/base/0.webp b/game/characters/hooch/clothes/hair/base/0.webp new file mode 100644 index 00000000..4ef80a2a --- /dev/null +++ b/game/characters/hooch/clothes/hair/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3b6cbc9604942bc3403053913dc99583c084d70a996627ba7799e578388a712 +size 15432 diff --git a/game/characters/hooch/clothes/hair/base/0_back.webp b/game/characters/hooch/clothes/hair/base/0_back.webp new file mode 100644 index 00000000..ac00b492 --- /dev/null +++ b/game/characters/hooch/clothes/hair/base/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:284b99220552efdb5187cc883506bb80249bd95eec56493ea70c3ef084aac84c +size 3512 diff --git a/game/characters/hooch/clothes/hair/base/outline.webp b/game/characters/hooch/clothes/hair/base/outline.webp new file mode 100644 index 00000000..259ae87a --- /dev/null +++ b/game/characters/hooch/clothes/hair/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45e993f14404072405bb9ce5b92a70879c7eb3b047321e7c0219fb7d333dfb54 +size 11994 diff --git a/game/characters/hooch/clothes/hair/base/outline_back.webp b/game/characters/hooch/clothes/hair/base/outline_back.webp new file mode 100644 index 00000000..9c018f3f --- /dev/null +++ b/game/characters/hooch/clothes/hair/base/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebbf9ef6f19f5349a7bb7d489fdfe94ef927d50ad1b5fd462ca591893636515c +size 2744 diff --git a/game/characters/hooch/clothes/hair/base/skin.webp b/game/characters/hooch/clothes/hair/base/skin.webp new file mode 100644 index 00000000..be674c38 --- /dev/null +++ b/game/characters/hooch/clothes/hair/base/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bb5104a01c6381778093bbb9fc3f8e38862ac46dd9edcf78d0e34303ec5406a +size 2116 diff --git a/game/characters/hooch/clothes/headgear/sport_goggles/0.webp b/game/characters/hooch/clothes/headgear/sport_goggles/0.webp new file mode 100644 index 00000000..8012ae76 --- /dev/null +++ b/game/characters/hooch/clothes/headgear/sport_goggles/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83369de6acabcacbbedf6c03918009c5d6a6936e655ce08f9008e8e0bf2f206b +size 4624 diff --git a/game/characters/hooch/clothes/headgear/sport_goggles/1.webp b/game/characters/hooch/clothes/headgear/sport_goggles/1.webp new file mode 100644 index 00000000..107752fb --- /dev/null +++ b/game/characters/hooch/clothes/headgear/sport_goggles/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7f9c64e15fdec033e3b1ffe87dca715c50c41315a9d1e2d56400e80d9985be0 +size 2376 diff --git a/game/characters/hooch/clothes/headgear/sport_goggles/2.webp b/game/characters/hooch/clothes/headgear/sport_goggles/2.webp new file mode 100644 index 00000000..1f42e3f8 --- /dev/null +++ b/game/characters/hooch/clothes/headgear/sport_goggles/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee716d5747ab7a05e72eb28f71bfe342b0235200e3e45dd5f508b16b3b457041 +size 2570 diff --git a/game/characters/hooch/clothes/headgear/sport_goggles/extra.webp b/game/characters/hooch/clothes/headgear/sport_goggles/extra.webp new file mode 100644 index 00000000..8a6d2663 --- /dev/null +++ b/game/characters/hooch/clothes/headgear/sport_goggles/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b7c94786f5dc5aa17d01ea000a0196ae12072a4a9f74c9cc5cd580062b241ea +size 710 diff --git a/game/characters/hooch/clothes/headgear/sport_goggles/outline.webp b/game/characters/hooch/clothes/headgear/sport_goggles/outline.webp new file mode 100644 index 00000000..ff872ed8 --- /dev/null +++ b/game/characters/hooch/clothes/headgear/sport_goggles/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72ab9d3023c5dda12ed47b2ca92fdc7d7302c7753e3a349e0b2229c3dfb63784 +size 5616 diff --git a/game/characters/hooch/clothes/panties/sport/0.webp b/game/characters/hooch/clothes/panties/sport/0.webp new file mode 100644 index 00000000..6eb9510c --- /dev/null +++ b/game/characters/hooch/clothes/panties/sport/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da93666aa23e353b1707eba5c5046e75bd3db9f4fa9c9f322ccf7fce3023a7c5 +size 3092 diff --git a/game/characters/hooch/clothes/panties/sport/1.webp b/game/characters/hooch/clothes/panties/sport/1.webp new file mode 100644 index 00000000..c83548bc --- /dev/null +++ b/game/characters/hooch/clothes/panties/sport/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f57da2b1b7160f4f6ba5bac939079122cc2a899fb8d2152c4a136393d37f608 +size 2348 diff --git a/game/characters/hooch/clothes/panties/sport/outline.webp b/game/characters/hooch/clothes/panties/sport/outline.webp new file mode 100644 index 00000000..2f4abf75 --- /dev/null +++ b/game/characters/hooch/clothes/panties/sport/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1273409c436d50ce383d684ee358ae01df6f011d29abfab93e2e3063b81e7fc1 +size 5908 diff --git a/game/characters/hooch/clothes/robe/sport_robe/0.webp b/game/characters/hooch/clothes/robe/sport_robe/0.webp new file mode 100644 index 00000000..407bb5d2 --- /dev/null +++ b/game/characters/hooch/clothes/robe/sport_robe/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ef6a5f3dc0d52bd00a4cfab0f1ee54dd46f2a5e0e7a1a27ec297a5cd01c8c9f +size 32160 diff --git a/game/characters/hooch/clothes/robe/sport_robe/1.webp b/game/characters/hooch/clothes/robe/sport_robe/1.webp new file mode 100644 index 00000000..82a1e11a --- /dev/null +++ b/game/characters/hooch/clothes/robe/sport_robe/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d5eed228f29823b2421628dd944b5073fc47d8dc18ce636ebcd755354649e0b +size 11318 diff --git a/game/characters/hooch/clothes/robe/sport_robe/2.webp b/game/characters/hooch/clothes/robe/sport_robe/2.webp new file mode 100644 index 00000000..c76e65f8 --- /dev/null +++ b/game/characters/hooch/clothes/robe/sport_robe/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b971a172374da0bf476f9530ba92e773f02809de971fb07fc14587937a57eb42 +size 7494 diff --git a/game/characters/hooch/clothes/robe/sport_robe/extra.webp b/game/characters/hooch/clothes/robe/sport_robe/extra.webp new file mode 100644 index 00000000..a9dee6b1 --- /dev/null +++ b/game/characters/hooch/clothes/robe/sport_robe/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:098a827a778eae59684f4b37ba8010b8db13f2df1bd79b38a11fee7771c2da9d +size 5118 diff --git a/game/characters/hooch/clothes/robe/sport_robe/outline.webp b/game/characters/hooch/clothes/robe/sport_robe/outline.webp new file mode 100644 index 00000000..8348f21f --- /dev/null +++ b/game/characters/hooch/clothes/robe/sport_robe/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2ea4d0fd7f85059b29dd47a3cfa51a8be7c0baa2c53313fa1ac14c0cfb17ef3 +size 42960 diff --git a/game/characters/hooch/clothes/top/sport_shirt/0.webp b/game/characters/hooch/clothes/top/sport_shirt/0.webp new file mode 100644 index 00000000..7a2a71f7 --- /dev/null +++ b/game/characters/hooch/clothes/top/sport_shirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9fa31abebbee6f8db8dec1656de1db113bd8cb5e00f84b5b64e75ce5ea51ef92 +size 20730 diff --git a/game/characters/hooch/clothes/top/sport_shirt/1.webp b/game/characters/hooch/clothes/top/sport_shirt/1.webp new file mode 100644 index 00000000..e4ccbbb2 --- /dev/null +++ b/game/characters/hooch/clothes/top/sport_shirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95b977c27cbd6aa3ac9acc1f8a5c3b586f906371ed8357104586afcf74348c79 +size 14852 diff --git a/game/characters/hooch/clothes/top/sport_shirt/outline.webp b/game/characters/hooch/clothes/top/sport_shirt/outline.webp new file mode 100644 index 00000000..36213ec7 --- /dev/null +++ b/game/characters/hooch/clothes/top/sport_shirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd1f521b788a465aa9ddf3e2c1f71fed2b0e11a95af9c16c1947b17fc2ad999d +size 24530 diff --git a/game/characters/hooch/face/cheeks/blush.webp b/game/characters/hooch/face/cheeks/blush.webp new file mode 100644 index 00000000..a810396a --- /dev/null +++ b/game/characters/hooch/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f5ff87fc0c92cb356b6d030e6a652a1ab599be45f561e9193a9a3d54b9d1ef8 +size 5310 diff --git a/game/characters/hooch/face/cheeks/blush_heavy.webp b/game/characters/hooch/face/cheeks/blush_heavy.webp new file mode 100644 index 00000000..e34e3992 --- /dev/null +++ b/game/characters/hooch/face/cheeks/blush_heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bfe57b2eb60cadb0b3da4f7d45428585887eb39599c627e80582dfa11b51f22 +size 7180 diff --git a/game/characters/hooch/face/eyebrows/angry.webp b/game/characters/hooch/face/eyebrows/angry.webp new file mode 100644 index 00000000..9e9076ba --- /dev/null +++ b/game/characters/hooch/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10f5a388c338bd0fc211381f50bcd386395296e0b80cf231fa48557d9428b24d +size 1870 diff --git a/game/characters/hooch/face/eyebrows/base.webp b/game/characters/hooch/face/eyebrows/base.webp new file mode 100644 index 00000000..de5b9105 --- /dev/null +++ b/game/characters/hooch/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15e0212ea4e55fb820284daa16ec97bcf94fa4c5e8e01fd652f31138c788af9a +size 1754 diff --git a/game/characters/hooch/face/eyebrows/raised.webp b/game/characters/hooch/face/eyebrows/raised.webp new file mode 100644 index 00000000..b52316f2 --- /dev/null +++ b/game/characters/hooch/face/eyebrows/raised.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7158d62150c61ea9e020155d56c13feed0fe31da0d8d909bcf86ce9eb267008f +size 1834 diff --git a/game/characters/hooch/face/eyebrows/shocked.webp b/game/characters/hooch/face/eyebrows/shocked.webp new file mode 100644 index 00000000..e6aab96b --- /dev/null +++ b/game/characters/hooch/face/eyebrows/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c837a533678a7ccb446e7b129dfac5abc2f5044489a5b96d08a3fc458cbecfc +size 1722 diff --git a/game/characters/hooch/face/eyebrows/worried.webp b/game/characters/hooch/face/eyebrows/worried.webp new file mode 100644 index 00000000..0a1eaf1f --- /dev/null +++ b/game/characters/hooch/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87efcc775eaa237387ce74d16187e01839a6f5dc07562b577da7fe7fce520782 +size 1714 diff --git a/game/characters/hooch/face/eyes/base.webp b/game/characters/hooch/face/eyes/base.webp new file mode 100644 index 00000000..5fb499fe --- /dev/null +++ b/game/characters/hooch/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab97a7f4ead1837058c6eb99be562849c16d5306b91d9903ac1de7de0ee8e418 +size 1500 diff --git a/game/characters/hooch/face/eyes/base_mask.webp b/game/characters/hooch/face/eyes/base_mask.webp new file mode 100644 index 00000000..7f1ab675 --- /dev/null +++ b/game/characters/hooch/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee1712fecb6fab36f98ef1b39075a8d75fef1438c61f6ac791437d044018db0a +size 754 diff --git a/game/characters/hooch/face/eyes/closed.webp b/game/characters/hooch/face/eyes/closed.webp new file mode 100644 index 00000000..bbf12497 --- /dev/null +++ b/game/characters/hooch/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44f48319be0bd092a459e48cd32334c54ccc3ca31f42826cdf3b2c5dd3019b53 +size 1176 diff --git a/game/characters/hooch/face/eyes/narrow.webp b/game/characters/hooch/face/eyes/narrow.webp new file mode 100644 index 00000000..247e0b76 --- /dev/null +++ b/game/characters/hooch/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05273bb3901c9df61e4112e585a654ee48193e177934e64e85364a79bc81f122 +size 1406 diff --git a/game/characters/hooch/face/eyes/narrow_mask.webp b/game/characters/hooch/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..51be0215 --- /dev/null +++ b/game/characters/hooch/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23ea3da095f8c2afd4f64edc38381b3474f21b37530a955917a4719e0441382b +size 718 diff --git a/game/characters/hooch/face/eyes/shocked.webp b/game/characters/hooch/face/eyes/shocked.webp new file mode 100644 index 00000000..befd0f18 --- /dev/null +++ b/game/characters/hooch/face/eyes/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d2e8bb0c9ed322c666f02ec037ba8c2ac47b3d952d796136ff1d647e0845448 +size 1856 diff --git a/game/characters/hooch/face/eyes/shocked_mask.webp b/game/characters/hooch/face/eyes/shocked_mask.webp new file mode 100644 index 00000000..cb4b3339 --- /dev/null +++ b/game/characters/hooch/face/eyes/shocked_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ebad4d0b661a7532d6b9c8eec55e7dc9d46651e79b06322e1091ff590d46be3 +size 786 diff --git a/game/characters/hooch/face/eyes/wink.webp b/game/characters/hooch/face/eyes/wink.webp new file mode 100644 index 00000000..98801fe5 --- /dev/null +++ b/game/characters/hooch/face/eyes/wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21b526fb8a9acd30322ba7bc584955f935ef9d76a5329871e711a6e94b10f0c3 +size 1426 diff --git a/game/characters/hooch/face/eyes/wink_mask.webp b/game/characters/hooch/face/eyes/wink_mask.webp new file mode 100644 index 00000000..a4064174 --- /dev/null +++ b/game/characters/hooch/face/eyes/wink_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ce8215762465fa76dfbcd3d51db3c3e7e0e515e44cb932e484ed586f37f9414 +size 626 diff --git a/game/characters/hooch/face/mouth/angry.webp b/game/characters/hooch/face/mouth/angry.webp new file mode 100644 index 00000000..c70119cc --- /dev/null +++ b/game/characters/hooch/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49a271f5472b3712b407409f42cee6d9b7d9012c2f0c759511d5c866375d3ed9 +size 4234 diff --git a/game/characters/hooch/face/mouth/base.webp b/game/characters/hooch/face/mouth/base.webp new file mode 100644 index 00000000..677a437c --- /dev/null +++ b/game/characters/hooch/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61acd4c8d5cc423869a3f6cfb5047683d261f4ba3b75f83333d652387d6682ef +size 1596 diff --git a/game/characters/hooch/face/mouth/grin.webp b/game/characters/hooch/face/mouth/grin.webp new file mode 100644 index 00000000..ed54f6d6 --- /dev/null +++ b/game/characters/hooch/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76e832b8b91d113e24610288ece4d3521535be4f04f05fb35af0a2e93237d68f +size 2914 diff --git a/game/characters/hooch/face/mouth/normal.webp b/game/characters/hooch/face/mouth/normal.webp new file mode 100644 index 00000000..bb57fdeb --- /dev/null +++ b/game/characters/hooch/face/mouth/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b29d08a26bd82116830a42d222dcefdeda6d44bdd78e39f8af26255283fcc1dd +size 1554 diff --git a/game/characters/hooch/face/mouth/open.webp b/game/characters/hooch/face/mouth/open.webp new file mode 100644 index 00000000..7cd8b644 --- /dev/null +++ b/game/characters/hooch/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a5b8123c79d7ceb7ed2c05e65399244223f5abb25ec7433c806f750982c0cfb +size 2324 diff --git a/game/characters/hooch/face/pupils/L.webp b/game/characters/hooch/face/pupils/L.webp new file mode 100644 index 00000000..f2a70ac2 --- /dev/null +++ b/game/characters/hooch/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0999f7f68a55ef4c35838bce41e314949c5a98ba9812e94ed11174c789180006 +size 1426 diff --git a/game/characters/hooch/face/pupils/R.webp b/game/characters/hooch/face/pupils/R.webp new file mode 100644 index 00000000..a12c597d --- /dev/null +++ b/game/characters/hooch/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3eaacce2d0514cdb13f99347111ceae2b6ba1cb9d200e305f03add86752bad1c +size 1444 diff --git a/game/characters/hooch/face/pupils/down.webp b/game/characters/hooch/face/pupils/down.webp new file mode 100644 index 00000000..1b211f8d --- /dev/null +++ b/game/characters/hooch/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:953a432f6559bff82773fecb8f318ed45332816ee0eeca2f7caf4c20de2e64a5 +size 1334 diff --git a/game/characters/hooch/face/pupils/downL.webp b/game/characters/hooch/face/pupils/downL.webp new file mode 100644 index 00000000..52cfa784 --- /dev/null +++ b/game/characters/hooch/face/pupils/downL.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33ab4f4afc19d5917dc5b277c6846184fcd711408e96dfb29c2619d0765bd49e +size 1304 diff --git a/game/characters/hooch/face/pupils/downR.webp b/game/characters/hooch/face/pupils/downR.webp new file mode 100644 index 00000000..686dcdff --- /dev/null +++ b/game/characters/hooch/face/pupils/downR.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94ea91b70ce1e0b8716d2ddd90bfec62bc1ca628f2412368353c872e94b2ae00 +size 1348 diff --git a/game/characters/hooch/face/pupils/mid.webp b/game/characters/hooch/face/pupils/mid.webp new file mode 100644 index 00000000..edd42816 --- /dev/null +++ b/game/characters/hooch/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b3ea49ea8d9c3ea74459bf32c0ae0efd0887460059750d6e30dee9d65ea2d51 +size 1434 diff --git a/game/characters/hooch/face/pupils/stare.webp b/game/characters/hooch/face/pupils/stare.webp new file mode 100644 index 00000000..e8173f6f --- /dev/null +++ b/game/characters/hooch/face/pupils/stare.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce9c22b07f3ba21755953becfd863d40a30cca13f735653f20a769c5796beeea +size 1324 diff --git a/game/characters/hooch/face/pupils/up.webp b/game/characters/hooch/face/pupils/up.webp new file mode 100644 index 00000000..63c7273b --- /dev/null +++ b/game/characters/hooch/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26486938ba4687abb86ddea5025df933781542f3924d6140441cfdf2f6dfd33f +size 1456 diff --git a/game/characters/luna/body/armleft/down.webp b/game/characters/luna/body/armleft/down.webp new file mode 100644 index 00000000..1d9a8c10 --- /dev/null +++ b/game/characters/luna/body/armleft/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38cf7377244e0ccfbc5281f8802bb589e994c671df5293f968e915e6f730b599 +size 9390 diff --git a/game/characters/luna/body/armleft/up.webp b/game/characters/luna/body/armleft/up.webp new file mode 100644 index 00000000..4765e583 --- /dev/null +++ b/game/characters/luna/body/armleft/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:334ff656b1823cc5d58c74f5c506bf095fa6604c45fbe4d2b0cc1b51e4ed8cd2 +size 9236 diff --git a/game/characters/luna/body/armright/down.webp b/game/characters/luna/body/armright/down.webp new file mode 100644 index 00000000..0048ed4c --- /dev/null +++ b/game/characters/luna/body/armright/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b0146a1ce81288acd041a95d2d7ad2c33dafe5173f3259b933fe283f8363acc +size 8398 diff --git a/game/characters/luna/body/armright/up.webp b/game/characters/luna/body/armright/up.webp new file mode 100644 index 00000000..179d0793 --- /dev/null +++ b/game/characters/luna/body/armright/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcf33fa9657244ee6fcfdb8c14d3de7aed5b3f8336df7797f720367afcff19e3 +size 7196 diff --git a/game/characters/luna/body/base/front.webp b/game/characters/luna/body/base/front.webp new file mode 100644 index 00000000..0dfa24fa --- /dev/null +++ b/game/characters/luna/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e63ed1dc79ba3aaa042b334972bbb08040311f5cec874aadc6dcb219d97c003 +size 20342 diff --git a/game/characters/luna/body/breasts/normal.webp b/game/characters/luna/body/breasts/normal.webp new file mode 100644 index 00000000..266369c8 --- /dev/null +++ b/game/characters/luna/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c94dfb7db323d0df5356f46f6f48a2e7e5962e4b2f3d21fe67a0fe3cd182e6c +size 6790 diff --git a/game/characters/luna/body/breasts/normal_tight.webp b/game/characters/luna/body/breasts/normal_tight.webp new file mode 100644 index 00000000..09e1fabb --- /dev/null +++ b/game/characters/luna/body/breasts/normal_tight.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6e6de86d903a4e8157190d6fda19b6daaa60c968a81ebaeb39fa8e762cf8170 +size 12508 diff --git a/game/characters/luna/chibis/inspect_body_lean/breast_nude_01.webp b/game/characters/luna/chibis/inspect_body_lean/breast_nude_01.webp new file mode 100644 index 00000000..3f905ec3 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/breast_nude_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48e5ce87ea7b08190f456de886868a0f4586622512607f28a2ba09abbac8711c +size 37730 diff --git a/game/characters/luna/chibis/inspect_body_lean/breast_nude_02.webp b/game/characters/luna/chibis/inspect_body_lean/breast_nude_02.webp new file mode 100644 index 00000000..d09f4d26 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/breast_nude_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b90f435b6adcd80aa33f9ee438e3377983156715a0774c16fcd44bd32247ae19 +size 37672 diff --git a/game/characters/luna/chibis/inspect_body_lean/breast_nude_03.webp b/game/characters/luna/chibis/inspect_body_lean/breast_nude_03.webp new file mode 100644 index 00000000..b2f7fabd --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/breast_nude_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:975b4c2cd0ddb0b8d0182d7bbe37f258e6cbf4535ff3790e11ef146ffb8eaec0 +size 37668 diff --git a/game/characters/luna/chibis/inspect_body_lean/breast_nude_04.webp b/game/characters/luna/chibis/inspect_body_lean/breast_nude_04.webp new file mode 100644 index 00000000..0d9ce630 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/breast_nude_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:524f94286027f46e82677fda613650da74a331705ff1367188394bf64318bb0e +size 37714 diff --git a/game/characters/luna/chibis/inspect_body_lean/breast_nude_05.webp b/game/characters/luna/chibis/inspect_body_lean/breast_nude_05.webp new file mode 100644 index 00000000..f303604f --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/breast_nude_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d06e59b6700ffedfa1b5787ff9f072effb5bab01cf812200ecf243b0c5d3cab +size 37702 diff --git a/game/characters/luna/chibis/inspect_body_lean/breast_nude_06.webp b/game/characters/luna/chibis/inspect_body_lean/breast_nude_06.webp new file mode 100644 index 00000000..bd76a0f7 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/breast_nude_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f30d2ce70a8860652bdbc4db73d2c54205ebfceebd61f4059b915fdc2fba581 +size 37634 diff --git a/game/characters/luna/chibis/inspect_body_lean/idle_nude_01.webp b/game/characters/luna/chibis/inspect_body_lean/idle_nude_01.webp new file mode 100644 index 00000000..768bcf5f --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/idle_nude_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32e4ea4c978a58fdd145d600b2d299a81106c001d7c1ac7a12641ec56ea0b3a8 +size 37620 diff --git a/game/characters/luna/chibis/inspect_body_lean/idle_nude_02.webp b/game/characters/luna/chibis/inspect_body_lean/idle_nude_02.webp new file mode 100644 index 00000000..e2be7a8c --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/idle_nude_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2225be884c36e8a5528d7379b99608d51a3ec9f4b09df235511e18b925c3b6fd +size 37584 diff --git a/game/characters/luna/chibis/inspect_body_lean/vag_nude_01.webp b/game/characters/luna/chibis/inspect_body_lean/vag_nude_01.webp new file mode 100644 index 00000000..768bcf5f --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/vag_nude_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32e4ea4c978a58fdd145d600b2d299a81106c001d7c1ac7a12641ec56ea0b3a8 +size 37620 diff --git a/game/characters/luna/chibis/inspect_body_lean/vag_nude_02.webp b/game/characters/luna/chibis/inspect_body_lean/vag_nude_02.webp new file mode 100644 index 00000000..b6321ebb --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/vag_nude_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a469e897fc340c855929f6220d238d10acb35470e5afbd481eaeff475ea8310 +size 37540 diff --git a/game/characters/luna/chibis/inspect_body_lean/vag_nude_03.webp b/game/characters/luna/chibis/inspect_body_lean/vag_nude_03.webp new file mode 100644 index 00000000..e2be7a8c --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/vag_nude_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2225be884c36e8a5528d7379b99608d51a3ec9f4b09df235511e18b925c3b6fd +size 37584 diff --git a/game/characters/luna/chibis/inspect_body_lean/vag_nude_04.webp b/game/characters/luna/chibis/inspect_body_lean/vag_nude_04.webp new file mode 100644 index 00000000..50ff5060 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/vag_nude_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a326daccc1f8fe21050aa72b5a78450635710483a81927cfbaff1d5e25f63fa5 +size 37588 diff --git a/game/characters/luna/chibis/inspect_body_lean/vag_nude_05.webp b/game/characters/luna/chibis/inspect_body_lean/vag_nude_05.webp new file mode 100644 index 00000000..4e09f87c --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/vag_nude_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cb754c3dd5af052c72fbbb3f213bccce2c2a21da493ddb47e970e89281384bd +size 37590 diff --git a/game/characters/luna/chibis/inspect_body_lean/vag_nude_06.webp b/game/characters/luna/chibis/inspect_body_lean/vag_nude_06.webp new file mode 100644 index 00000000..567727ed --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_lean/vag_nude_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dffa476a9b445eecd5dba49c22ace8795fc5f9862ba2f631bbad79fc5ed7c2a3 +size 37602 diff --git a/game/characters/luna/chibis/inspect_body_stand/Idle_clothed_01.webp b/game/characters/luna/chibis/inspect_body_stand/Idle_clothed_01.webp new file mode 100644 index 00000000..965140e1 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/Idle_clothed_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6be88c66af84aa1cdb185839e2651835abea085fbc4f9b7a1663713717b0d7c9 +size 36460 diff --git a/game/characters/luna/chibis/inspect_body_stand/breast_nude_01.webp b/game/characters/luna/chibis/inspect_body_stand/breast_nude_01.webp new file mode 100644 index 00000000..862658ea --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/breast_nude_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b692918e0c76a16bb81ec722061c725b6c75fd69606b0d0132ff6f8e5ab81b7 +size 36834 diff --git a/game/characters/luna/chibis/inspect_body_stand/breast_nude_02.webp b/game/characters/luna/chibis/inspect_body_stand/breast_nude_02.webp new file mode 100644 index 00000000..2929964a --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/breast_nude_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2d441d3d87201225e7324b8fc242eb762c5623f5d779ae39292313896d8d587 +size 36530 diff --git a/game/characters/luna/chibis/inspect_body_stand/breast_nude_03.webp b/game/characters/luna/chibis/inspect_body_stand/breast_nude_03.webp new file mode 100644 index 00000000..86714413 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/breast_nude_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edbe69edd79a96466be36863b9b2e6c23b62ac838bd08127085039dfe6ee8723 +size 36766 diff --git a/game/characters/luna/chibis/inspect_body_stand/breast_nude_04.webp b/game/characters/luna/chibis/inspect_body_stand/breast_nude_04.webp new file mode 100644 index 00000000..b931e25d --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/breast_nude_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:377a413cb4025082ba108577d4a462dac099af5cef277c05825b0e440785a5ef +size 36558 diff --git a/game/characters/luna/chibis/inspect_body_stand/breast_nude_05.webp b/game/characters/luna/chibis/inspect_body_stand/breast_nude_05.webp new file mode 100644 index 00000000..03ce08f0 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/breast_nude_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da81bf98083d21b2fa388041234939454384a82d8931cd83ca3b89f1d052cd9e +size 36828 diff --git a/game/characters/luna/chibis/inspect_body_stand/breast_nude_06.webp b/game/characters/luna/chibis/inspect_body_stand/breast_nude_06.webp new file mode 100644 index 00000000..b27817d8 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/breast_nude_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:039f3a2bda7fa3e668ed8d583a26089ddf96ae6e526fdf036f96c9b77c20eb06 +size 36446 diff --git a/game/characters/luna/chibis/inspect_body_stand/idle_clothed_02.webp b/game/characters/luna/chibis/inspect_body_stand/idle_clothed_02.webp new file mode 100644 index 00000000..0fcd1334 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/idle_clothed_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c49b024eeb23ad1d514b2a7905fe766b7f676065a22da3078a171c9f93219867 +size 36360 diff --git a/game/characters/luna/chibis/inspect_body_stand/idle_nude_01.webp b/game/characters/luna/chibis/inspect_body_stand/idle_nude_01.webp new file mode 100644 index 00000000..73d14fd2 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/idle_nude_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0afcc61b10978f9d4a7458610bf8e3908d5f5646666c6a915cfab5d3797388f1 +size 36664 diff --git a/game/characters/luna/chibis/inspect_body_stand/idle_nude_02.webp b/game/characters/luna/chibis/inspect_body_stand/idle_nude_02.webp new file mode 100644 index 00000000..c95d96a6 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/idle_nude_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3a083d3a421c4fb4470bb809e471ac5bfeabfc38a20b6465607cc2c932bd1d8 +size 36556 diff --git a/game/characters/luna/chibis/inspect_body_stand/vag_nude_01.webp b/game/characters/luna/chibis/inspect_body_stand/vag_nude_01.webp new file mode 100644 index 00000000..73d14fd2 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/vag_nude_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0afcc61b10978f9d4a7458610bf8e3908d5f5646666c6a915cfab5d3797388f1 +size 36664 diff --git a/game/characters/luna/chibis/inspect_body_stand/vag_nude_02.webp b/game/characters/luna/chibis/inspect_body_stand/vag_nude_02.webp new file mode 100644 index 00000000..7f4440df --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/vag_nude_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3811c16ebf9308e95c64f8acc4119eade36d42e38df3722f889ccd49f30a31e +size 36334 diff --git a/game/characters/luna/chibis/inspect_body_stand/vag_nude_03.webp b/game/characters/luna/chibis/inspect_body_stand/vag_nude_03.webp new file mode 100644 index 00000000..c95d96a6 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/vag_nude_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3a083d3a421c4fb4470bb809e471ac5bfeabfc38a20b6465607cc2c932bd1d8 +size 36556 diff --git a/game/characters/luna/chibis/inspect_body_stand/vag_nude_04.webp b/game/characters/luna/chibis/inspect_body_stand/vag_nude_04.webp new file mode 100644 index 00000000..bb1203f5 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/vag_nude_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f863e5744868fe6f63120a7b2635081de1f9053bb0e0e659beffb990d9affc7a +size 36308 diff --git a/game/characters/luna/chibis/inspect_body_stand/vag_nude_05.webp b/game/characters/luna/chibis/inspect_body_stand/vag_nude_05.webp new file mode 100644 index 00000000..5f1e773c --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/vag_nude_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95d1c507e2f0a4ad71cd219ab4559aa538f253657608a2309813fe1f08136f13 +size 36630 diff --git a/game/characters/luna/chibis/inspect_body_stand/vag_nude_06.webp b/game/characters/luna/chibis/inspect_body_stand/vag_nude_06.webp new file mode 100644 index 00000000..3e4a99d6 --- /dev/null +++ b/game/characters/luna/chibis/inspect_body_stand/vag_nude_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddbc1ee64bb915e9500f87b46ca2824f3e5f8b26e492daebabab0cf2d2861df5 +size 36522 diff --git a/game/characters/luna/chibis/luna_stand.webp b/game/characters/luna/chibis/luna_stand.webp new file mode 100644 index 00000000..d7989559 --- /dev/null +++ b/game/characters/luna/chibis/luna_stand.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:797ac61843d5c40440731f0dcfa69dc3619e1546f90447d441e6fc173c35d170 +size 55272 diff --git a/game/characters/luna/chibis/luna_stand_topless.webp b/game/characters/luna/chibis/luna_stand_topless.webp new file mode 100644 index 00000000..52865905 --- /dev/null +++ b/game/characters/luna/chibis/luna_stand_topless.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cca2c5636cae76429a03be0244c69f56f64c092f0aa3da0b0294bf6a135419a +size 55380 diff --git a/game/characters/luna/chibis/sit_on_lap.webp b/game/characters/luna/chibis/sit_on_lap.webp new file mode 100644 index 00000000..1bbc38fc --- /dev/null +++ b/game/characters/luna/chibis/sit_on_lap.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5c635c98358b35d5ee97c02ba1b21918818ea8a800c4d1cf7646ebb70dd828b +size 35016 diff --git a/game/characters/luna/chibis/walk/l_walk_a_01.webp b/game/characters/luna/chibis/walk/l_walk_a_01.webp new file mode 100644 index 00000000..99bbf28d --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_a_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:670efe4d551cbe8b4e7c075cd241df510da9b98c190d9f02ed4f44a131314903 +size 55196 diff --git a/game/characters/luna/chibis/walk/l_walk_a_02.webp b/game/characters/luna/chibis/walk/l_walk_a_02.webp new file mode 100644 index 00000000..c9b3480c --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_a_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a447e45a8159c5708c837d13eeed6698b928b3d20a72c1df698a8ba474edfdce +size 54518 diff --git a/game/characters/luna/chibis/walk/l_walk_a_03.webp b/game/characters/luna/chibis/walk/l_walk_a_03.webp new file mode 100644 index 00000000..a02054ec --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_a_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2bbdc08ef086e0483fb760631259bfaedba15046e5e6d7942fb65534e85123b4 +size 57344 diff --git a/game/characters/luna/chibis/walk/l_walk_a_04.webp b/game/characters/luna/chibis/walk/l_walk_a_04.webp new file mode 100644 index 00000000..56b30c6f --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_a_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8dce765b3f503d3c6b6a32e316938fa3d1abd2c7d17206e64ec76e9091b299f +size 55050 diff --git a/game/characters/luna/chibis/walk/l_walk_a_05.webp b/game/characters/luna/chibis/walk/l_walk_a_05.webp new file mode 100644 index 00000000..03161c5e --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_a_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:554f1bb0ebc058bb4ef39edb4af0fffa3c7613b9353f5a2d94ed823a68030909 +size 54402 diff --git a/game/characters/luna/chibis/walk/l_walk_a_06.webp b/game/characters/luna/chibis/walk/l_walk_a_06.webp new file mode 100644 index 00000000..6b3552a1 --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_a_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5db92ea81539083f0e930432175f74ee94b485cede043eb427de510b0ee18e3 +size 55096 diff --git a/game/characters/luna/chibis/walk/l_walk_n_01.webp b/game/characters/luna/chibis/walk/l_walk_n_01.webp new file mode 100644 index 00000000..d3bc6b4c --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_n_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d03730dee59e1950dbee6fd18d92fdb55bbcbd963211f8edb3c4f8314900881b +size 52990 diff --git a/game/characters/luna/chibis/walk/l_walk_n_02.webp b/game/characters/luna/chibis/walk/l_walk_n_02.webp new file mode 100644 index 00000000..15226b79 --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_n_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:450bb474255c412afff48653185aeb03f867e2dcc0e21a1ad5daba0c94583443 +size 52534 diff --git a/game/characters/luna/chibis/walk/l_walk_n_03.webp b/game/characters/luna/chibis/walk/l_walk_n_03.webp new file mode 100644 index 00000000..9ac87274 --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_n_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6059af3483c67f9211d139d7a528ade5675ff798c89075cba7a4c77a8259be1 +size 54732 diff --git a/game/characters/luna/chibis/walk/l_walk_n_04.webp b/game/characters/luna/chibis/walk/l_walk_n_04.webp new file mode 100644 index 00000000..18768349 --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_n_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0de1f83ec0200a29a40dc06ccee8ba521f49d1d3782480bbee72db91b31b1819 +size 53964 diff --git a/game/characters/luna/chibis/walk/l_walk_n_05.webp b/game/characters/luna/chibis/walk/l_walk_n_05.webp new file mode 100644 index 00000000..f13fb0db --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_n_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9640a7076861b0f011fda7a48ea71c9f952090249bec3cc632784569f1a4d5ff +size 53784 diff --git a/game/characters/luna/chibis/walk/l_walk_n_06.webp b/game/characters/luna/chibis/walk/l_walk_n_06.webp new file mode 100644 index 00000000..0b64e332 --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_n_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7eddfd390abeb7104d296cce6ba1aeffcb49213106117f1b03f593c6d0c46980 +size 52732 diff --git a/game/characters/luna/chibis/walk/l_walk_robe_01.webp b/game/characters/luna/chibis/walk/l_walk_robe_01.webp new file mode 100644 index 00000000..69a8dafc --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_robe_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2861bb2cac54920d5382fd4df5a0b5a3c7f813ea3237fb2d260082c5c394c7ef +size 53908 diff --git a/game/characters/luna/chibis/walk/l_walk_robe_02.webp b/game/characters/luna/chibis/walk/l_walk_robe_02.webp new file mode 100644 index 00000000..2d851885 --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_robe_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:108c10cdb9e5732279d757d8c23d13d9bd8ed927bc1f3bf1fdce1f92d86e669f +size 53614 diff --git a/game/characters/luna/chibis/walk/l_walk_robe_03.webp b/game/characters/luna/chibis/walk/l_walk_robe_03.webp new file mode 100644 index 00000000..5ea3ff6c --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_robe_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db7e9aac160fd9503145e611a2f2b7df860696761b55976c656bd41c81b3feae +size 54222 diff --git a/game/characters/luna/chibis/walk/l_walk_robe_04.webp b/game/characters/luna/chibis/walk/l_walk_robe_04.webp new file mode 100644 index 00000000..021357e4 --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_robe_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b673fa336ffd448f1838357dd0784c292dfc878bdc312071cf639109b627d75 +size 54354 diff --git a/game/characters/luna/chibis/walk/l_walk_robe_05.webp b/game/characters/luna/chibis/walk/l_walk_robe_05.webp new file mode 100644 index 00000000..70854e03 --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_robe_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a82f4b8350eeff908580d81766231e132be825f44f7b953258567e47435cdb4 +size 54006 diff --git a/game/characters/luna/chibis/walk/l_walk_robe_06.webp b/game/characters/luna/chibis/walk/l_walk_robe_06.webp new file mode 100644 index 00000000..b19919f1 --- /dev/null +++ b/game/characters/luna/chibis/walk/l_walk_robe_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c6083bc0a0d88ec15c92c8ae5adfabf9047e594c8cf55564ec8634d6d179f6a +size 53724 diff --git a/game/characters/luna/chibis/walk/walk_topless_01.webp b/game/characters/luna/chibis/walk/walk_topless_01.webp new file mode 100644 index 00000000..337d9ad6 --- /dev/null +++ b/game/characters/luna/chibis/walk/walk_topless_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b48a8089b9377dbcd87126ab657c4d59bb85b75004c8a7710f7a69d21d1eaac +size 55256 diff --git a/game/characters/luna/chibis/walk/walk_topless_02.webp b/game/characters/luna/chibis/walk/walk_topless_02.webp new file mode 100644 index 00000000..f9b2723a --- /dev/null +++ b/game/characters/luna/chibis/walk/walk_topless_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75ca7c71921ed5da4d0d26abc7089d148509baa0c1c7b8fba689a7f0ccdcf0bf +size 54368 diff --git a/game/characters/luna/chibis/walk/walk_topless_03.webp b/game/characters/luna/chibis/walk/walk_topless_03.webp new file mode 100644 index 00000000..fb16c138 --- /dev/null +++ b/game/characters/luna/chibis/walk/walk_topless_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a759f6ae907f74592476e89499a180b975fa4c4f8681961b5ba1362dc965a529 +size 56728 diff --git a/game/characters/luna/chibis/walk/walk_topless_04.webp b/game/characters/luna/chibis/walk/walk_topless_04.webp new file mode 100644 index 00000000..e116cdde --- /dev/null +++ b/game/characters/luna/chibis/walk/walk_topless_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89373b7f7e9023bcfaafe90ae527bc17de08851d5997afcc36834314db559f3e +size 55152 diff --git a/game/characters/luna/chibis/walk/walk_topless_05.webp b/game/characters/luna/chibis/walk/walk_topless_05.webp new file mode 100644 index 00000000..df78e02b --- /dev/null +++ b/game/characters/luna/chibis/walk/walk_topless_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11a0c7b87e4153dc841d8ea82467bedeffc57478ebfc40ab4dde6f9327475437 +size 53504 diff --git a/game/characters/luna/chibis/walk/walk_topless_06.webp b/game/characters/luna/chibis/walk/walk_topless_06.webp new file mode 100644 index 00000000..4a9b5bd2 --- /dev/null +++ b/game/characters/luna/chibis/walk/walk_topless_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfb1b2a70f551e912b32196fd68dc9135399ae63ce2949cac4d3b4102c289794 +size 54890 diff --git a/game/characters/luna/clothes/accessory/bracelets/0.webp b/game/characters/luna/clothes/accessory/bracelets/0.webp new file mode 100644 index 00000000..dac07f85 --- /dev/null +++ b/game/characters/luna/clothes/accessory/bracelets/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ba43abd01c40e37ceca15f93c95f9d2f13f5b9edc13bc501e689726b5a8301d +size 1426 diff --git a/game/characters/luna/clothes/accessory/bracelets/1.webp b/game/characters/luna/clothes/accessory/bracelets/1.webp new file mode 100644 index 00000000..a7995635 --- /dev/null +++ b/game/characters/luna/clothes/accessory/bracelets/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88348a84f3d892955a7038ec9cb4c2ebeabc54c5704591dadc34261f83b89418 +size 1144 diff --git a/game/characters/luna/clothes/accessory/bracelets/2.webp b/game/characters/luna/clothes/accessory/bracelets/2.webp new file mode 100644 index 00000000..a0f46202 --- /dev/null +++ b/game/characters/luna/clothes/accessory/bracelets/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee01e09dee2289ba2fb1e3a10e97c47e1c0384da7f9631724453c1c8eae00f18 +size 1826 diff --git a/game/characters/luna/clothes/accessory/bracelets/outline.webp b/game/characters/luna/clothes/accessory/bracelets/outline.webp new file mode 100644 index 00000000..4856c7cf --- /dev/null +++ b/game/characters/luna/clothes/accessory/bracelets/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:110d586184aa3da61a7121438d65e670102279138d470b597d993d25ce701999 +size 2500 diff --git a/game/characters/luna/clothes/accessory/bracelets/skin.webp b/game/characters/luna/clothes/accessory/bracelets/skin.webp new file mode 100644 index 00000000..fdea8ddf --- /dev/null +++ b/game/characters/luna/clothes/accessory/bracelets/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:529ee684968be49b3c257a5a1aae90b157a824e030105b389337890f4416da6e +size 1310 diff --git a/game/characters/luna/clothes/accessory/hair_bug/0.webp b/game/characters/luna/clothes/accessory/hair_bug/0.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/luna/clothes/accessory/hair_bug/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/luna/clothes/accessory/hair_bug/outline.webp b/game/characters/luna/clothes/accessory/hair_bug/outline.webp new file mode 100644 index 00000000..a61a96f4 --- /dev/null +++ b/game/characters/luna/clothes/accessory/hair_bug/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3ff2554ee3a5ac8c0c6e4bf2377edbeb7f75904bf1a6a247033d2e518c94562 +size 3546 diff --git a/game/characters/luna/clothes/accessory/harley_quinn_strap/0.webp b/game/characters/luna/clothes/accessory/harley_quinn_strap/0.webp new file mode 100644 index 00000000..c4e9b843 --- /dev/null +++ b/game/characters/luna/clothes/accessory/harley_quinn_strap/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59dcb456ef5d8ea80af85b09eb161a3d4878b52d21e374b0acd16624c08962d3 +size 2926 diff --git a/game/characters/luna/clothes/accessory/harley_quinn_strap/outline.webp b/game/characters/luna/clothes/accessory/harley_quinn_strap/outline.webp new file mode 100644 index 00000000..ee7eba23 --- /dev/null +++ b/game/characters/luna/clothes/accessory/harley_quinn_strap/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eababd5147324ba8175b23bcdfb0ad58b9e50f7f65a34fbf1c4793e527789195 +size 3684 diff --git a/game/characters/luna/clothes/accessory/lionhead/0.webp b/game/characters/luna/clothes/accessory/lionhead/0.webp new file mode 100644 index 00000000..6fbb7bcc --- /dev/null +++ b/game/characters/luna/clothes/accessory/lionhead/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4f16469f76fa22ea43a2346407a802434ae02dff4da1c40bec6af146a42feae +size 94 diff --git a/game/characters/luna/clothes/accessory/lionhead/outline.webp b/game/characters/luna/clothes/accessory/lionhead/outline.webp new file mode 100644 index 00000000..fc94bfdc --- /dev/null +++ b/game/characters/luna/clothes/accessory/lionhead/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c25635017ea2d56e1926b856bfcf14dcd4f51ee34482d46f8ff36a98bed104dc +size 146180 diff --git a/game/characters/luna/clothes/accessory/lionhead/outline_back.webp b/game/characters/luna/clothes/accessory/lionhead/outline_back.webp new file mode 100644 index 00000000..0d16a1be --- /dev/null +++ b/game/characters/luna/clothes/accessory/lionhead/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3b070631cf7fb5d30ab6345dd602db6d2373dde63dbc400ff7ad86dfe52c4da +size 103104 diff --git a/game/characters/luna/clothes/accessory/pin_radish/0.webp b/game/characters/luna/clothes/accessory/pin_radish/0.webp new file mode 100644 index 00000000..1e3bc0f3 --- /dev/null +++ b/game/characters/luna/clothes/accessory/pin_radish/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e56e772ac3825cb3a772943215399bdd76c85f6f027d8c6b8128bea2807d4190 +size 3274 diff --git a/game/characters/luna/clothes/accessory/pin_radish/1.webp b/game/characters/luna/clothes/accessory/pin_radish/1.webp new file mode 100644 index 00000000..76217013 --- /dev/null +++ b/game/characters/luna/clothes/accessory/pin_radish/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8706ab4cbf76b5d6eadc5fc9bbddf486a393e42778047022f9454ac6a59d626 +size 3174 diff --git a/game/characters/luna/clothes/accessory/pin_radish/extra.webp b/game/characters/luna/clothes/accessory/pin_radish/extra.webp new file mode 100644 index 00000000..56024fb5 --- /dev/null +++ b/game/characters/luna/clothes/accessory/pin_radish/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03e9f5ae6f9c301336f3701daee940fd61cd4dca23170269d26bd4c1bf753580 +size 3026 diff --git a/game/characters/luna/clothes/accessory/pin_radish/outline.webp b/game/characters/luna/clothes/accessory/pin_radish/outline.webp new file mode 100644 index 00000000..0821e6ae --- /dev/null +++ b/game/characters/luna/clothes/accessory/pin_radish/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46a84e883497eee051c8886ef6a3bd8613fdb960a2b2101bcc53d01d0d468d01 +size 3488 diff --git a/game/characters/luna/clothes/accessory/police_cuffs/0.webp b/game/characters/luna/clothes/accessory/police_cuffs/0.webp new file mode 100644 index 00000000..4897f7ec --- /dev/null +++ b/game/characters/luna/clothes/accessory/police_cuffs/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:422a4b7f1d6564125c805bdd9631b45ccfb6526fb3d6e195f5f704212ec6f63a +size 3076 diff --git a/game/characters/luna/clothes/accessory/police_cuffs/extra.webp b/game/characters/luna/clothes/accessory/police_cuffs/extra.webp new file mode 100644 index 00000000..f4d7032d --- /dev/null +++ b/game/characters/luna/clothes/accessory/police_cuffs/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51385e6ffaeedcceea449deace754cb49066889721ec18ca9c20b7f1313c604c +size 1026 diff --git a/game/characters/luna/clothes/accessory/police_cuffs/outline.webp b/game/characters/luna/clothes/accessory/police_cuffs/outline.webp new file mode 100644 index 00000000..f601fb90 --- /dev/null +++ b/game/characters/luna/clothes/accessory/police_cuffs/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1872839fe7fcd41613821bc8abcc2bea9a823ab65460e2fae47b6816bf3e45d2 +size 3632 diff --git a/game/characters/luna/clothes/accessory/police_cuffs/skin.webp b/game/characters/luna/clothes/accessory/police_cuffs/skin.webp new file mode 100644 index 00000000..e404a5cc --- /dev/null +++ b/game/characters/luna/clothes/accessory/police_cuffs/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c4f822343041ef3bf4d3395da2bcd167167e82a39d8ba8c806270bc0e252cfd +size 1710 diff --git a/game/characters/luna/clothes/accessory/wand_breasts/0.webp b/game/characters/luna/clothes/accessory/wand_breasts/0.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/luna/clothes/accessory/wand_breasts/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/luna/clothes/accessory/wand_breasts/outline.webp b/game/characters/luna/clothes/accessory/wand_breasts/outline.webp new file mode 100644 index 00000000..4747825c --- /dev/null +++ b/game/characters/luna/clothes/accessory/wand_breasts/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e780a3bb3a120d3a1eb1edb9a7012e637a14ae8cb08c5632235c9f8627659ad +size 5144 diff --git a/game/characters/luna/clothes/accessory/wand_hand/0.webp b/game/characters/luna/clothes/accessory/wand_hand/0.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/luna/clothes/accessory/wand_hand/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/luna/clothes/accessory/wand_hand/outline.webp b/game/characters/luna/clothes/accessory/wand_hand/outline.webp new file mode 100644 index 00000000..744959c4 --- /dev/null +++ b/game/characters/luna/clothes/accessory/wand_hand/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bba8eaf15eb3fa0663f1c5ab8fdad07fe9115a71900ca949275dd35b09eaa1a +size 5386 diff --git a/game/characters/luna/clothes/accessory/wand_mouth/0.webp b/game/characters/luna/clothes/accessory/wand_mouth/0.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/luna/clothes/accessory/wand_mouth/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/luna/clothes/accessory/wand_mouth/outline.webp b/game/characters/luna/clothes/accessory/wand_mouth/outline.webp new file mode 100644 index 00000000..dc94cdd2 --- /dev/null +++ b/game/characters/luna/clothes/accessory/wand_mouth/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d240532cce309432cd4aead06d4c0bf01eabf86f47c0528bc608f569ba63cb90 +size 5082 diff --git a/game/characters/luna/clothes/accessory/wand_pussy/0.webp b/game/characters/luna/clothes/accessory/wand_pussy/0.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/luna/clothes/accessory/wand_pussy/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/luna/clothes/accessory/wand_pussy/outline.webp b/game/characters/luna/clothes/accessory/wand_pussy/outline.webp new file mode 100644 index 00000000..b16e643e --- /dev/null +++ b/game/characters/luna/clothes/accessory/wand_pussy/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0b90fe030dfd1d33f4b08d31e1d3a55972e11e4cbe72c8de4825d29ce212c43 +size 3966 diff --git a/game/characters/luna/clothes/bottom/casual_jeans/0.webp b/game/characters/luna/clothes/bottom/casual_jeans/0.webp new file mode 100644 index 00000000..a337fcf3 --- /dev/null +++ b/game/characters/luna/clothes/bottom/casual_jeans/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee9dbd391333ba2e54a6c12d5ab7a1602de7dd0c46ec6782e870c42c0a85f153 +size 9390 diff --git a/game/characters/luna/clothes/bottom/casual_jeans/outline.webp b/game/characters/luna/clothes/bottom/casual_jeans/outline.webp new file mode 100644 index 00000000..32bc7841 --- /dev/null +++ b/game/characters/luna/clothes/bottom/casual_jeans/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92f6e7bb65e3ca276029d6155e50a8fa420a52d44a602de58adf3be8745dc290 +size 14832 diff --git a/game/characters/luna/clothes/bottom/muggle_skirt/0.webp b/game/characters/luna/clothes/bottom/muggle_skirt/0.webp new file mode 100644 index 00000000..98d4a4d2 --- /dev/null +++ b/game/characters/luna/clothes/bottom/muggle_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78334688dad75db7fd81af85539938335d1e79d2878bc78b1c780cc71c60df15 +size 7354 diff --git a/game/characters/luna/clothes/bottom/muggle_skirt/1.webp b/game/characters/luna/clothes/bottom/muggle_skirt/1.webp new file mode 100644 index 00000000..d3d04c9a --- /dev/null +++ b/game/characters/luna/clothes/bottom/muggle_skirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6abca3a86d939ad7ae559c42691be6038fea50be2620e70e331cf9d6a95b6c21 +size 2640 diff --git a/game/characters/luna/clothes/bottom/muggle_skirt/2.webp b/game/characters/luna/clothes/bottom/muggle_skirt/2.webp new file mode 100644 index 00000000..5893c52f --- /dev/null +++ b/game/characters/luna/clothes/bottom/muggle_skirt/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10ac48e404ab66f2a9abd08f65592faca9b0e778c45e353b73a55c55497df5aa +size 5998 diff --git a/game/characters/luna/clothes/bottom/muggle_skirt/3.webp b/game/characters/luna/clothes/bottom/muggle_skirt/3.webp new file mode 100644 index 00000000..351fb196 --- /dev/null +++ b/game/characters/luna/clothes/bottom/muggle_skirt/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0a4212dff4974dab7699254a6e2d067cea34d2dc9ea8a720bd98ea760ab788e +size 6088 diff --git a/game/characters/luna/clothes/bottom/muggle_skirt/4.webp b/game/characters/luna/clothes/bottom/muggle_skirt/4.webp new file mode 100644 index 00000000..05febaeb --- /dev/null +++ b/game/characters/luna/clothes/bottom/muggle_skirt/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1b92c8363f496232a38b30f743a5422d2b8b830650f2e744529933bd9b8e32b +size 3666 diff --git a/game/characters/luna/clothes/bottom/muggle_skirt/5.webp b/game/characters/luna/clothes/bottom/muggle_skirt/5.webp new file mode 100644 index 00000000..b23b15e0 --- /dev/null +++ b/game/characters/luna/clothes/bottom/muggle_skirt/5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bfbe436adfaeeff98463786359420dc1bc7547682599b4c07288b512527211b +size 6538 diff --git a/game/characters/luna/clothes/bottom/muggle_skirt/outline.webp b/game/characters/luna/clothes/bottom/muggle_skirt/outline.webp new file mode 100644 index 00000000..25a7ad6f --- /dev/null +++ b/game/characters/luna/clothes/bottom/muggle_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e72e345e673647c8da31787977d2000004adf15aba62b82a2ef99012d475a63 +size 9034 diff --git a/game/characters/luna/clothes/bottom/pajama_1/0.webp b/game/characters/luna/clothes/bottom/pajama_1/0.webp new file mode 100644 index 00000000..fca2099e --- /dev/null +++ b/game/characters/luna/clothes/bottom/pajama_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e2b3da7b4a9b7213baabfceb8bcbe55f3486d468b4e3a0741a1ac119935877f +size 7868 diff --git a/game/characters/luna/clothes/bottom/pajama_1/1.webp b/game/characters/luna/clothes/bottom/pajama_1/1.webp new file mode 100644 index 00000000..de7a5e23 --- /dev/null +++ b/game/characters/luna/clothes/bottom/pajama_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08dcc25ac70763eeee102c6e7b13acd31ed3f3f57bba85823af4a7a92ad7ad58 +size 3022 diff --git a/game/characters/luna/clothes/bottom/pajama_1/outline.webp b/game/characters/luna/clothes/bottom/pajama_1/outline.webp new file mode 100644 index 00000000..a854df01 --- /dev/null +++ b/game/characters/luna/clothes/bottom/pajama_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98640fa4a7cec66b6431f206573dd83d1b0d838c6bd4ff5af8044bd3a7fca5a9 +size 13166 diff --git a/game/characters/luna/clothes/bottom/police_skirt/0.webp b/game/characters/luna/clothes/bottom/police_skirt/0.webp new file mode 100644 index 00000000..3c0b60ad --- /dev/null +++ b/game/characters/luna/clothes/bottom/police_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c595765ac159e95e8110045ba20153e05b549292b5eb2d6bb1246a0604a9e4f4 +size 7068 diff --git a/game/characters/luna/clothes/bottom/police_skirt/1.webp b/game/characters/luna/clothes/bottom/police_skirt/1.webp new file mode 100644 index 00000000..25201c32 --- /dev/null +++ b/game/characters/luna/clothes/bottom/police_skirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:189a05ee9d71b18da2a2c6fe925f5a5fc5df5f7beb6b58f23e1837bd552cc976 +size 3524 diff --git a/game/characters/luna/clothes/bottom/police_skirt/2.webp b/game/characters/luna/clothes/bottom/police_skirt/2.webp new file mode 100644 index 00000000..e7f24f14 --- /dev/null +++ b/game/characters/luna/clothes/bottom/police_skirt/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de942225df2fcda3445bba048a03c75d71737389645a4034bdc0336461f6d00a +size 1122 diff --git a/game/characters/luna/clothes/bottom/police_skirt/extra.webp b/game/characters/luna/clothes/bottom/police_skirt/extra.webp new file mode 100644 index 00000000..f8527bed --- /dev/null +++ b/game/characters/luna/clothes/bottom/police_skirt/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:327f555735d5f84d8b783e19367bcd2886192cea595ba38eec22a8766a74ef8e +size 730 diff --git a/game/characters/luna/clothes/bottom/police_skirt/outline.webp b/game/characters/luna/clothes/bottom/police_skirt/outline.webp new file mode 100644 index 00000000..685235ba --- /dev/null +++ b/game/characters/luna/clothes/bottom/police_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a09f56270efaedb91bc46be81c01acd166559910bebf57cae691cc566dd1a09 +size 8168 diff --git a/game/characters/luna/clothes/bottom/police_skirt/skin.webp b/game/characters/luna/clothes/bottom/police_skirt/skin.webp new file mode 100644 index 00000000..89dc08e1 --- /dev/null +++ b/game/characters/luna/clothes/bottom/police_skirt/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22d9d22269ff0d4c2d2406b797d66ec8434a6b7fd408f9253ca35f4125aecc53 +size 2186 diff --git a/game/characters/luna/clothes/bottom/school_skirt_1/0.webp b/game/characters/luna/clothes/bottom/school_skirt_1/0.webp new file mode 100644 index 00000000..52f091cc --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c48591ab1a08d9f57bcf882a8f5c95e1eed0adf434260bf00a8aeb11086b0124 +size 9278 diff --git a/game/characters/luna/clothes/bottom/school_skirt_1/1.webp b/game/characters/luna/clothes/bottom/school_skirt_1/1.webp new file mode 100644 index 00000000..3adae4e4 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89223eb801c922f9af01709240b62bcaa7872d8dd87dbee146d484620501b464 +size 2954 diff --git a/game/characters/luna/clothes/bottom/school_skirt_1/lift_skirt/0.webp b/game/characters/luna/clothes/bottom/school_skirt_1/lift_skirt/0.webp new file mode 100644 index 00000000..26de0632 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_1/lift_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38dd648dc8b017e9fd63721642dbaccab2c6b3a0cfc433b236ad6c239e8638e1 +size 23294 diff --git a/game/characters/luna/clothes/bottom/school_skirt_1/lift_skirt/1.webp b/game/characters/luna/clothes/bottom/school_skirt_1/lift_skirt/1.webp new file mode 100644 index 00000000..79cd69d3 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_1/lift_skirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0e25aa57c3ac192ec0a756671fbd2e99651a8b037727c02df4a9aa557c00d6c +size 1294 diff --git a/game/characters/luna/clothes/bottom/school_skirt_1/lift_skirt/outline.webp b/game/characters/luna/clothes/bottom/school_skirt_1/lift_skirt/outline.webp new file mode 100644 index 00000000..e560b8eb --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_1/lift_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fceef7d230a566b28b3b14232bdcd0f233fe10a3aaf5356c923b13ac7f39288f +size 13028 diff --git a/game/characters/luna/clothes/bottom/school_skirt_1/lift_skirt/skin.webp b/game/characters/luna/clothes/bottom/school_skirt_1/lift_skirt/skin.webp new file mode 100644 index 00000000..4dfa5f08 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_1/lift_skirt/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd14d5395d776d419232e71f0c1a0adb83e8be3809d21a3bd5cfbee432623fb1 +size 5372 diff --git a/game/characters/luna/clothes/bottom/school_skirt_1/mask.webp b/game/characters/luna/clothes/bottom/school_skirt_1/mask.webp new file mode 100644 index 00000000..ebd68160 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8dba73fe812415265f559f9e67290ee900d3ca0953d507b7b5c2f1575f90429 +size 4890 diff --git a/game/characters/luna/clothes/bottom/school_skirt_1/outline.webp b/game/characters/luna/clothes/bottom/school_skirt_1/outline.webp new file mode 100644 index 00000000..43c7e05a --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4db626e8d281038a26406892fdc4ed4c6abcc0fba64a0672f8df3bf63725aef5 +size 21428 diff --git a/game/characters/luna/clothes/bottom/school_skirt_2/0.webp b/game/characters/luna/clothes/bottom/school_skirt_2/0.webp new file mode 100644 index 00000000..8a03cfc4 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:280a32a06751168add18b2f9414ed35175eba04fe64ad4d93b658ebc60bc76fb +size 7842 diff --git a/game/characters/luna/clothes/bottom/school_skirt_2/1.webp b/game/characters/luna/clothes/bottom/school_skirt_2/1.webp new file mode 100644 index 00000000..3adae4e4 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89223eb801c922f9af01709240b62bcaa7872d8dd87dbee146d484620501b464 +size 2954 diff --git a/game/characters/luna/clothes/bottom/school_skirt_2/lift_skirt/0.webp b/game/characters/luna/clothes/bottom/school_skirt_2/lift_skirt/0.webp new file mode 100644 index 00000000..b02b2579 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_2/lift_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8ad4fea69d442854001d9afbe50efef5ad9b9c92843dd9bb008b975a4da03d8 +size 36904 diff --git a/game/characters/luna/clothes/bottom/school_skirt_2/lift_skirt/1.webp b/game/characters/luna/clothes/bottom/school_skirt_2/lift_skirt/1.webp new file mode 100644 index 00000000..065c86db --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_2/lift_skirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a75e96312b1e5bce50350e60cf57a90a41ae58563c183672570f128bc53475e +size 2702 diff --git a/game/characters/luna/clothes/bottom/school_skirt_2/lift_skirt/outline.webp b/game/characters/luna/clothes/bottom/school_skirt_2/lift_skirt/outline.webp new file mode 100644 index 00000000..34e75645 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_2/lift_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7802731489daafe1e62a373535e8db8cd1ef5a29f43cf601c0c781be6c884235 +size 25992 diff --git a/game/characters/luna/clothes/bottom/school_skirt_2/lift_skirt/skin.webp b/game/characters/luna/clothes/bottom/school_skirt_2/lift_skirt/skin.webp new file mode 100644 index 00000000..a897a6df --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_2/lift_skirt/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfa4117de502651079b0586bc8637a8e96af191cc8e706d04c3cf2f5ca84947b +size 4580 diff --git a/game/characters/luna/clothes/bottom/school_skirt_2/mask.webp b/game/characters/luna/clothes/bottom/school_skirt_2/mask.webp new file mode 100644 index 00000000..c74c693d --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_2/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:829218579e7644c2d0ed63a1c72bbe200d0482e4e34853ca4d46acd100abd6d2 +size 3598 diff --git a/game/characters/luna/clothes/bottom/school_skirt_2/outline.webp b/game/characters/luna/clothes/bottom/school_skirt_2/outline.webp new file mode 100644 index 00000000..f355a97d --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee723f851c75a19045fb722a85c9a4b370f0c09dd731cf1db9ef79f7b1e86841 +size 16232 diff --git a/game/characters/luna/clothes/bottom/school_skirt_3/0.webp b/game/characters/luna/clothes/bottom/school_skirt_3/0.webp new file mode 100644 index 00000000..a11e4185 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff9c0821b4ae920d11027b1e2f893a4814ca2d46c78774a81bc4fd545b7c2099 +size 6550 diff --git a/game/characters/luna/clothes/bottom/school_skirt_3/1.webp b/game/characters/luna/clothes/bottom/school_skirt_3/1.webp new file mode 100644 index 00000000..3adae4e4 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89223eb801c922f9af01709240b62bcaa7872d8dd87dbee146d484620501b464 +size 2954 diff --git a/game/characters/luna/clothes/bottom/school_skirt_3/lift_skirt/0.webp b/game/characters/luna/clothes/bottom/school_skirt_3/lift_skirt/0.webp new file mode 100644 index 00000000..b02b2579 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_3/lift_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8ad4fea69d442854001d9afbe50efef5ad9b9c92843dd9bb008b975a4da03d8 +size 36904 diff --git a/game/characters/luna/clothes/bottom/school_skirt_3/lift_skirt/1.webp b/game/characters/luna/clothes/bottom/school_skirt_3/lift_skirt/1.webp new file mode 100644 index 00000000..065c86db --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_3/lift_skirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a75e96312b1e5bce50350e60cf57a90a41ae58563c183672570f128bc53475e +size 2702 diff --git a/game/characters/luna/clothes/bottom/school_skirt_3/lift_skirt/outline.webp b/game/characters/luna/clothes/bottom/school_skirt_3/lift_skirt/outline.webp new file mode 100644 index 00000000..34e75645 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_3/lift_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7802731489daafe1e62a373535e8db8cd1ef5a29f43cf601c0c781be6c884235 +size 25992 diff --git a/game/characters/luna/clothes/bottom/school_skirt_3/lift_skirt/skin.webp b/game/characters/luna/clothes/bottom/school_skirt_3/lift_skirt/skin.webp new file mode 100644 index 00000000..a897a6df --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_3/lift_skirt/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfa4117de502651079b0586bc8637a8e96af191cc8e706d04c3cf2f5ca84947b +size 4580 diff --git a/game/characters/luna/clothes/bottom/school_skirt_3/mask.webp b/game/characters/luna/clothes/bottom/school_skirt_3/mask.webp new file mode 100644 index 00000000..ce1fbb60 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_3/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a4f82b3c53b2c01dbb1acdfce57593afc963e03f8a1af627514efd80b1856c9 +size 2790 diff --git a/game/characters/luna/clothes/bottom/school_skirt_3/outline.webp b/game/characters/luna/clothes/bottom/school_skirt_3/outline.webp new file mode 100644 index 00000000..59d48afd --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcd94b5d9d4afa83619f00fcd7766070ab6c30c31d6c684be79c89d79e5f57bf +size 12418 diff --git a/game/characters/luna/clothes/bottom/school_skirt_4/0.webp b/game/characters/luna/clothes/bottom/school_skirt_4/0.webp new file mode 100644 index 00000000..43b27012 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0307c0759cbd48d8cd9cccb9393df67c49faa71ec374ba9709dc6d4a4f574c3 +size 6156 diff --git a/game/characters/luna/clothes/bottom/school_skirt_4/1.webp b/game/characters/luna/clothes/bottom/school_skirt_4/1.webp new file mode 100644 index 00000000..3adae4e4 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89223eb801c922f9af01709240b62bcaa7872d8dd87dbee146d484620501b464 +size 2954 diff --git a/game/characters/luna/clothes/bottom/school_skirt_4/lift_skirt/0.webp b/game/characters/luna/clothes/bottom/school_skirt_4/lift_skirt/0.webp new file mode 100644 index 00000000..b02b2579 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_4/lift_skirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8ad4fea69d442854001d9afbe50efef5ad9b9c92843dd9bb008b975a4da03d8 +size 36904 diff --git a/game/characters/luna/clothes/bottom/school_skirt_4/lift_skirt/1.webp b/game/characters/luna/clothes/bottom/school_skirt_4/lift_skirt/1.webp new file mode 100644 index 00000000..065c86db --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_4/lift_skirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a75e96312b1e5bce50350e60cf57a90a41ae58563c183672570f128bc53475e +size 2702 diff --git a/game/characters/luna/clothes/bottom/school_skirt_4/lift_skirt/outline.webp b/game/characters/luna/clothes/bottom/school_skirt_4/lift_skirt/outline.webp new file mode 100644 index 00000000..34e75645 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_4/lift_skirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7802731489daafe1e62a373535e8db8cd1ef5a29f43cf601c0c781be6c884235 +size 25992 diff --git a/game/characters/luna/clothes/bottom/school_skirt_4/lift_skirt/skin.webp b/game/characters/luna/clothes/bottom/school_skirt_4/lift_skirt/skin.webp new file mode 100644 index 00000000..a897a6df --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_4/lift_skirt/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfa4117de502651079b0586bc8637a8e96af191cc8e706d04c3cf2f5ca84947b +size 4580 diff --git a/game/characters/luna/clothes/bottom/school_skirt_4/mask.webp b/game/characters/luna/clothes/bottom/school_skirt_4/mask.webp new file mode 100644 index 00000000..76849707 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_4/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6cb8946d74fe5adf22cfeead35aad9b19639bab0a97b49ddd2ea6e2fc861809 +size 2412 diff --git a/game/characters/luna/clothes/bottom/school_skirt_4/outline.webp b/game/characters/luna/clothes/bottom/school_skirt_4/outline.webp new file mode 100644 index 00000000..6e742097 --- /dev/null +++ b/game/characters/luna/clothes/bottom/school_skirt_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:470fab67e9e08cdfd98884356d26f65e8962d4203356db52269c1507fa430bf3 +size 10380 diff --git a/game/characters/luna/clothes/bottom/summer_shorts/0.webp b/game/characters/luna/clothes/bottom/summer_shorts/0.webp new file mode 100644 index 00000000..102aa328 --- /dev/null +++ b/game/characters/luna/clothes/bottom/summer_shorts/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:595fd09af19142fa9017fb6d10a038c55c609e38b06ad5408185b971642102bc +size 7020 diff --git a/game/characters/luna/clothes/bottom/summer_shorts/1.webp b/game/characters/luna/clothes/bottom/summer_shorts/1.webp new file mode 100644 index 00000000..3d12beaa --- /dev/null +++ b/game/characters/luna/clothes/bottom/summer_shorts/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:197f4a266fb6e71a42de8e22edc03996285341fe0e8988c41353eeef2af6fac3 +size 3720 diff --git a/game/characters/luna/clothes/bottom/summer_shorts/2.webp b/game/characters/luna/clothes/bottom/summer_shorts/2.webp new file mode 100644 index 00000000..e8db5368 --- /dev/null +++ b/game/characters/luna/clothes/bottom/summer_shorts/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98d77919804ce85202eaf6ff575f27a1555526ac469d96f9350854053151c115 +size 660 diff --git a/game/characters/luna/clothes/bottom/summer_shorts/outline.webp b/game/characters/luna/clothes/bottom/summer_shorts/outline.webp new file mode 100644 index 00000000..f603c0e8 --- /dev/null +++ b/game/characters/luna/clothes/bottom/summer_shorts/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:876d87e07c5b5d7ba7c82968d16e7161f8eade45259dcb973ddd922d15f40edf +size 9534 diff --git a/game/characters/luna/clothes/bottom/summer_shorts/skin.webp b/game/characters/luna/clothes/bottom/summer_shorts/skin.webp new file mode 100644 index 00000000..5cb99cb2 --- /dev/null +++ b/game/characters/luna/clothes/bottom/summer_shorts/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b8c8f3989b63d5ca7a8a91eec1b323471d2e17a92da62e7712138fe4d1ef837 +size 3380 diff --git a/game/characters/luna/clothes/bra/basic_bra_1/0.webp b/game/characters/luna/clothes/bra/basic_bra_1/0.webp new file mode 100644 index 00000000..15036e7a --- /dev/null +++ b/game/characters/luna/clothes/bra/basic_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fccca3f1b3b799a42bb719215461029bb836fe6c8492dc8030103339acae93f +size 7412 diff --git a/game/characters/luna/clothes/bra/basic_bra_1/1.webp b/game/characters/luna/clothes/bra/basic_bra_1/1.webp new file mode 100644 index 00000000..d324e4b5 --- /dev/null +++ b/game/characters/luna/clothes/bra/basic_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c8f6151bb4db6402d58ca5d1d7180b0b01c2950c27758c90a470abfbd8f5949 +size 1782 diff --git a/game/characters/luna/clothes/bra/basic_bra_1/2.webp b/game/characters/luna/clothes/bra/basic_bra_1/2.webp new file mode 100644 index 00000000..3bc90fda --- /dev/null +++ b/game/characters/luna/clothes/bra/basic_bra_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3886ab571aa2654cceb05bfa1dcbc90d13320ae7e2787c21d7aa930fac9f6773 +size 1250 diff --git a/game/characters/luna/clothes/bra/basic_bra_1/extra.webp b/game/characters/luna/clothes/bra/basic_bra_1/extra.webp new file mode 100644 index 00000000..6bc9bccb --- /dev/null +++ b/game/characters/luna/clothes/bra/basic_bra_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b98d49c48d4639eb04c0f6c799e54c181770e71ef0eb12bff1220a1dc70cbe5 +size 1678 diff --git a/game/characters/luna/clothes/bra/basic_bra_1/outline.webp b/game/characters/luna/clothes/bra/basic_bra_1/outline.webp new file mode 100644 index 00000000..f5bd688a --- /dev/null +++ b/game/characters/luna/clothes/bra/basic_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:915f366ddcef24bbcb6af4425d86bb032c3dc58becbc36eeeed4dc41799fd93c +size 9784 diff --git a/game/characters/luna/clothes/bra/basic_bra_1/skin.webp b/game/characters/luna/clothes/bra/basic_bra_1/skin.webp new file mode 100644 index 00000000..d51c3e9d --- /dev/null +++ b/game/characters/luna/clothes/bra/basic_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16cf12cd0b98f3a96ac21f69a67df09112351877097748f4253c6f2120a9f7d7 +size 4746 diff --git a/game/characters/luna/clothes/bra/basic_bra_2/0.webp b/game/characters/luna/clothes/bra/basic_bra_2/0.webp new file mode 100644 index 00000000..9f5eeb6b --- /dev/null +++ b/game/characters/luna/clothes/bra/basic_bra_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:829cfee8fc2c977735504d35197ec4b2168e70a4c4a5c614b13b60803f216e7a +size 5264 diff --git a/game/characters/luna/clothes/bra/basic_bra_2/1.webp b/game/characters/luna/clothes/bra/basic_bra_2/1.webp new file mode 100644 index 00000000..3e535ab5 --- /dev/null +++ b/game/characters/luna/clothes/bra/basic_bra_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a3c845c1f569729c3cd1798a2d5b0fbe123f673e4f82475642fdb3f2e4fb0ba +size 926 diff --git a/game/characters/luna/clothes/bra/basic_bra_2/extra.webp b/game/characters/luna/clothes/bra/basic_bra_2/extra.webp new file mode 100644 index 00000000..c94fae72 --- /dev/null +++ b/game/characters/luna/clothes/bra/basic_bra_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:711d7bae0c5d78f0e7a893328f0380ffd8214e11d0e64ad735242b97108572e5 +size 1590 diff --git a/game/characters/luna/clothes/bra/basic_bra_2/outline.webp b/game/characters/luna/clothes/bra/basic_bra_2/outline.webp new file mode 100644 index 00000000..65a62ae4 --- /dev/null +++ b/game/characters/luna/clothes/bra/basic_bra_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8d4af37e3cd5391d0be9cef256b94902a772eaee978f4b785f3eac83a43553e +size 7070 diff --git a/game/characters/luna/clothes/bra/basic_bra_2/skin.webp b/game/characters/luna/clothes/bra/basic_bra_2/skin.webp new file mode 100644 index 00000000..6e4053e6 --- /dev/null +++ b/game/characters/luna/clothes/bra/basic_bra_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a10e06e6ad74c30c9fbd7810dad56067b598247bd5dc644bf5d881956952fef +size 5220 diff --git a/game/characters/luna/clothes/bra/bikini_bra_3/0.webp b/game/characters/luna/clothes/bra/bikini_bra_3/0.webp new file mode 100644 index 00000000..2e5dddf1 --- /dev/null +++ b/game/characters/luna/clothes/bra/bikini_bra_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd8e633bbb86f7484aca0ff4961b380d31679f960fb5c8ce765a4a70f031d463 +size 1728 diff --git a/game/characters/luna/clothes/bra/bikini_bra_3/1.webp b/game/characters/luna/clothes/bra/bikini_bra_3/1.webp new file mode 100644 index 00000000..4d1e4e48 --- /dev/null +++ b/game/characters/luna/clothes/bra/bikini_bra_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f17cd25f078ea33f67d716d39a10e57d74d35ef1a440c1b0e89cabd13c67bdc9 +size 1442 diff --git a/game/characters/luna/clothes/bra/bikini_bra_3/extra.webp b/game/characters/luna/clothes/bra/bikini_bra_3/extra.webp new file mode 100644 index 00000000..15d54ce2 --- /dev/null +++ b/game/characters/luna/clothes/bra/bikini_bra_3/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0e5f23d1d89e7e09527af9c14d1515e967025d82f771f6e20aa756a3ac8e2b6 +size 732 diff --git a/game/characters/luna/clothes/bra/bikini_bra_3/outline.webp b/game/characters/luna/clothes/bra/bikini_bra_3/outline.webp new file mode 100644 index 00000000..b133fb08 --- /dev/null +++ b/game/characters/luna/clothes/bra/bikini_bra_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d3da735e68e5eabe23571b54c40848660bc5162f758e0bf13159e6aaf41d817 +size 4422 diff --git a/game/characters/luna/clothes/bra/lace_bra_1/0.webp b/game/characters/luna/clothes/bra/lace_bra_1/0.webp new file mode 100644 index 00000000..360a741b --- /dev/null +++ b/game/characters/luna/clothes/bra/lace_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:324deff4aafbc1076e05cf9c23dfcaf2bbf69c255b5d8dae7f76ddadfe117938 +size 13412 diff --git a/game/characters/luna/clothes/bra/lace_bra_1/1.webp b/game/characters/luna/clothes/bra/lace_bra_1/1.webp new file mode 100644 index 00000000..4563e0e4 --- /dev/null +++ b/game/characters/luna/clothes/bra/lace_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8095d4bbf78f8042185d3682bac7706058c0cdc87482476fdb4497c9fd7610c8 +size 2376 diff --git a/game/characters/luna/clothes/bra/lace_bra_1/outline.webp b/game/characters/luna/clothes/bra/lace_bra_1/outline.webp new file mode 100644 index 00000000..0dc379db --- /dev/null +++ b/game/characters/luna/clothes/bra/lace_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f2342f1d579c713b356a0e55fe9d58cec6fb7ea23adf7a6e7b91abe4e59fc08 +size 4502 diff --git a/game/characters/luna/clothes/bra/lace_bra_1/skin.webp b/game/characters/luna/clothes/bra/lace_bra_1/skin.webp new file mode 100644 index 00000000..e8390f74 --- /dev/null +++ b/game/characters/luna/clothes/bra/lace_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97cb42ee9de383673271a5abd5cfa6bb3039cb81c2b98a7b88fe2281a9807299 +size 2552 diff --git a/game/characters/luna/clothes/glasses/spectrespecs/0.webp b/game/characters/luna/clothes/glasses/spectrespecs/0.webp new file mode 100644 index 00000000..5962d965 --- /dev/null +++ b/game/characters/luna/clothes/glasses/spectrespecs/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fbc632c59e73b58945016b92a3e626723464c598c2fc131f847d6d75eb5caf8 +size 5886 diff --git a/game/characters/luna/clothes/glasses/spectrespecs/1.webp b/game/characters/luna/clothes/glasses/spectrespecs/1.webp new file mode 100644 index 00000000..226f2fbc --- /dev/null +++ b/game/characters/luna/clothes/glasses/spectrespecs/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f29d4d57b7083896f108a633bbef585659713deb8387d8f59f348d86265f3c5 +size 5056 diff --git a/game/characters/luna/clothes/glasses/spectrespecs/extra.webp b/game/characters/luna/clothes/glasses/spectrespecs/extra.webp new file mode 100644 index 00000000..99f4dd2f --- /dev/null +++ b/game/characters/luna/clothes/glasses/spectrespecs/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb0c811d888aa2def320c8d9a7a55e76313b27c7f0180f64bd9d00ca5f10e6eb +size 3116 diff --git a/game/characters/luna/clothes/glasses/spectrespecs/outline.webp b/game/characters/luna/clothes/glasses/spectrespecs/outline.webp new file mode 100644 index 00000000..b924abfb --- /dev/null +++ b/game/characters/luna/clothes/glasses/spectrespecs/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e1b43b7643bca64d59c34a9e17b826dc7eac78ec4184943186e1ceca92a6835 +size 5918 diff --git a/game/characters/luna/clothes/glasses/sunglasses_2/0.webp b/game/characters/luna/clothes/glasses/sunglasses_2/0.webp new file mode 100644 index 00000000..18ca8b79 --- /dev/null +++ b/game/characters/luna/clothes/glasses/sunglasses_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a6b99fde887014df8fe288048b4f64488c0a8b634445c4e67a14282a3321fb5 +size 4370 diff --git a/game/characters/luna/clothes/glasses/sunglasses_2/1.webp b/game/characters/luna/clothes/glasses/sunglasses_2/1.webp new file mode 100644 index 00000000..fadb437b --- /dev/null +++ b/game/characters/luna/clothes/glasses/sunglasses_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d89cb675f5d71ff33d3df76f319e46e7731af92c662a5c29e4fb94f74a9f9eb +size 3506 diff --git a/game/characters/luna/clothes/glasses/sunglasses_2/extra.webp b/game/characters/luna/clothes/glasses/sunglasses_2/extra.webp new file mode 100644 index 00000000..ddbeb936 --- /dev/null +++ b/game/characters/luna/clothes/glasses/sunglasses_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c91d42f8f5feeb6bec3138a302cf2904021ce792fe73666f2c39a01aa544515 +size 4090 diff --git a/game/characters/luna/clothes/glasses/sunglasses_2/outline.webp b/game/characters/luna/clothes/glasses/sunglasses_2/outline.webp new file mode 100644 index 00000000..8d45acda --- /dev/null +++ b/game/characters/luna/clothes/glasses/sunglasses_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38d3f87d6e24cef039dbc9dda1ca0d59aa5a9a5e8a3625d1cd4cd8c3453b19eb +size 4622 diff --git a/game/characters/luna/clothes/gloves/harley_quinn/0.webp b/game/characters/luna/clothes/gloves/harley_quinn/0.webp new file mode 100644 index 00000000..6d9e25dc --- /dev/null +++ b/game/characters/luna/clothes/gloves/harley_quinn/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89bebf82026fcb75b2dea6b28900e4190879d0b031891029e5526b2d33ee91f3 +size 5840 diff --git a/game/characters/luna/clothes/gloves/harley_quinn/extra.webp b/game/characters/luna/clothes/gloves/harley_quinn/extra.webp new file mode 100644 index 00000000..7d48e1dc --- /dev/null +++ b/game/characters/luna/clothes/gloves/harley_quinn/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68fa192ea91a731d0d003b2573f11b25ac716a1e6ae0a682227cbeb083ec4bc2 +size 1392 diff --git a/game/characters/luna/clothes/gloves/harley_quinn/outline.webp b/game/characters/luna/clothes/gloves/harley_quinn/outline.webp new file mode 100644 index 00000000..d62c4b61 --- /dev/null +++ b/game/characters/luna/clothes/gloves/harley_quinn/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd9ccb8e699b73f45c8d33098f44d8f03280a44ba147cdb2c28293dbeca9453e +size 5606 diff --git a/game/characters/luna/clothes/hair/base/0.webp b/game/characters/luna/clothes/hair/base/0.webp new file mode 100644 index 00000000..8937635b --- /dev/null +++ b/game/characters/luna/clothes/hair/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f278e1c4e2c32128079bbae26be3965604e89a5bdd6d65d50a1251c580f229c3 +size 9072 diff --git a/game/characters/luna/clothes/hair/base/0_back.webp b/game/characters/luna/clothes/hair/base/0_back.webp new file mode 100644 index 00000000..820209a7 --- /dev/null +++ b/game/characters/luna/clothes/hair/base/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:936edcf4f731d1fb71da59b3275859b11f80535bb52633c8afaeba5efb748c2a +size 9270 diff --git a/game/characters/luna/clothes/hair/base/1.webp b/game/characters/luna/clothes/hair/base/1.webp new file mode 100644 index 00000000..7e0be323 --- /dev/null +++ b/game/characters/luna/clothes/hair/base/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c85c0ef77e39b8eafd40e03309d04bf3d9cdc0e164703c6eceafa38cc5c7a246 +size 15702 diff --git a/game/characters/luna/clothes/hair/base/1_back.webp b/game/characters/luna/clothes/hair/base/1_back.webp new file mode 100644 index 00000000..2747a0a2 --- /dev/null +++ b/game/characters/luna/clothes/hair/base/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3db829f4c93d7232ae41f36d37bc82ba2fb0ad9a0417320a6b6bd251d18496a8 +size 16070 diff --git a/game/characters/luna/clothes/hair/base/2.webp b/game/characters/luna/clothes/hair/base/2.webp new file mode 100644 index 00000000..301bcb53 --- /dev/null +++ b/game/characters/luna/clothes/hair/base/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61250de3a83ef9cf2a7fd0a5a5f1549096fd9f6aa21cbebd28b6d2b84e8cffa0 +size 3078 diff --git a/game/characters/luna/clothes/hair/base/outline.webp b/game/characters/luna/clothes/hair/base/outline.webp new file mode 100644 index 00000000..b41e3113 --- /dev/null +++ b/game/characters/luna/clothes/hair/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4049a6cb89540c91125ec928ed580b410fae6e2f65acd6802ea5fb0f6006c25a +size 21166 diff --git a/game/characters/luna/clothes/hair/base/outline_back.webp b/game/characters/luna/clothes/hair/base/outline_back.webp new file mode 100644 index 00000000..2dd18065 --- /dev/null +++ b/game/characters/luna/clothes/hair/base/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2abe7dcedcef8b32831be8513fad09f4646aac32e40d7c50d47ff1376a0c0df +size 22028 diff --git a/game/characters/luna/clothes/hair/base/skin.webp b/game/characters/luna/clothes/hair/base/skin.webp new file mode 100644 index 00000000..8975c89f --- /dev/null +++ b/game/characters/luna/clothes/hair/base/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1389384ea2acd9ae236a6417a65d491afedb00d3a3caab4d733eef5828d40025 +size 4344 diff --git a/game/characters/luna/clothes/hair/harley_quinn/0.webp b/game/characters/luna/clothes/hair/harley_quinn/0.webp new file mode 100644 index 00000000..9de8e8d0 --- /dev/null +++ b/game/characters/luna/clothes/hair/harley_quinn/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a811d7fa71492fe4b41d4d670e033534cb321dede22af4871728520d6a54ff83 +size 8448 diff --git a/game/characters/luna/clothes/hair/harley_quinn/1.webp b/game/characters/luna/clothes/hair/harley_quinn/1.webp new file mode 100644 index 00000000..f38bc1b5 --- /dev/null +++ b/game/characters/luna/clothes/hair/harley_quinn/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3972f822ec3e1efa86fb20baca14b614a72a82f87e9ce64e17b24cd2c2daf18 +size 22000 diff --git a/game/characters/luna/clothes/hair/harley_quinn/2.webp b/game/characters/luna/clothes/hair/harley_quinn/2.webp new file mode 100644 index 00000000..084b2448 --- /dev/null +++ b/game/characters/luna/clothes/hair/harley_quinn/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20450edc9e8c2f09f438dae38fbacab0a98d1026f42758e91e297d81423ac403 +size 4308 diff --git a/game/characters/luna/clothes/hair/harley_quinn/3.webp b/game/characters/luna/clothes/hair/harley_quinn/3.webp new file mode 100644 index 00000000..dba193ba --- /dev/null +++ b/game/characters/luna/clothes/hair/harley_quinn/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c24f86fd5a4048ec9ba9f570aacc00abb9437fa04316ae1c4a9529e23c810aa8 +size 2294 diff --git a/game/characters/luna/clothes/hair/harley_quinn/4.webp b/game/characters/luna/clothes/hair/harley_quinn/4.webp new file mode 100644 index 00000000..5a836358 --- /dev/null +++ b/game/characters/luna/clothes/hair/harley_quinn/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afea87cdfe7bafdb54bdaa8ffa5d4a337b7ae8b325b7bccceecac645dac3448b +size 666 diff --git a/game/characters/luna/clothes/hair/harley_quinn/extra.webp b/game/characters/luna/clothes/hair/harley_quinn/extra.webp new file mode 100644 index 00000000..71e49b0b --- /dev/null +++ b/game/characters/luna/clothes/hair/harley_quinn/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27b36851327840c469e9271888a967035ebb5978cd9d2b2b6f425e54cf940ff8 +size 5976 diff --git a/game/characters/luna/clothes/hair/harley_quinn/outline.webp b/game/characters/luna/clothes/hair/harley_quinn/outline.webp new file mode 100644 index 00000000..644f88d0 --- /dev/null +++ b/game/characters/luna/clothes/hair/harley_quinn/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d82caf8140cb1b0e626a9c1997f7f0bdb89e8b16badd0b81b4b40c7a8de975b +size 22282 diff --git a/game/characters/luna/clothes/hair/harley_quinn/skin.webp b/game/characters/luna/clothes/hair/harley_quinn/skin.webp new file mode 100644 index 00000000..266ad469 --- /dev/null +++ b/game/characters/luna/clothes/hair/harley_quinn/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:326442460ed360f31fa8f288ce8ce1d9f2d5e07da5f59293b8f9eaea04bba5fd +size 1690 diff --git a/game/characters/luna/clothes/hair/wand/0.webp b/game/characters/luna/clothes/hair/wand/0.webp new file mode 100644 index 00000000..eedba02d --- /dev/null +++ b/game/characters/luna/clothes/hair/wand/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:156a7557270b80f5ee38dfc393913817e8a3a7721e11bb1fd3778847ee1f2d1f +size 11886 diff --git a/game/characters/luna/clothes/hair/wand/0_back.webp b/game/characters/luna/clothes/hair/wand/0_back.webp new file mode 100644 index 00000000..820209a7 --- /dev/null +++ b/game/characters/luna/clothes/hair/wand/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:936edcf4f731d1fb71da59b3275859b11f80535bb52633c8afaeba5efb748c2a +size 9270 diff --git a/game/characters/luna/clothes/hair/wand/1.webp b/game/characters/luna/clothes/hair/wand/1.webp new file mode 100644 index 00000000..ac9d2e77 --- /dev/null +++ b/game/characters/luna/clothes/hair/wand/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07b4de50853a34ca040ce2ef09e5d8bebd2b961aef834c3566731817e01b0b70 +size 20288 diff --git a/game/characters/luna/clothes/hair/wand/1_back.webp b/game/characters/luna/clothes/hair/wand/1_back.webp new file mode 100644 index 00000000..2747a0a2 --- /dev/null +++ b/game/characters/luna/clothes/hair/wand/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3db829f4c93d7232ae41f36d37bc82ba2fb0ad9a0417320a6b6bd251d18496a8 +size 16070 diff --git a/game/characters/luna/clothes/hair/wand/2.webp b/game/characters/luna/clothes/hair/wand/2.webp new file mode 100644 index 00000000..301bcb53 --- /dev/null +++ b/game/characters/luna/clothes/hair/wand/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61250de3a83ef9cf2a7fd0a5a5f1549096fd9f6aa21cbebd28b6d2b84e8cffa0 +size 3078 diff --git a/game/characters/luna/clothes/hair/wand/extra.webp b/game/characters/luna/clothes/hair/wand/extra.webp new file mode 100644 index 00000000..f699a0cc --- /dev/null +++ b/game/characters/luna/clothes/hair/wand/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fef169706872657d9ff81dafd99dfe21bbe103bc03b827765647020ab60881c +size 4772 diff --git a/game/characters/luna/clothes/hair/wand/outline.webp b/game/characters/luna/clothes/hair/wand/outline.webp new file mode 100644 index 00000000..a931f8d0 --- /dev/null +++ b/game/characters/luna/clothes/hair/wand/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:170ef5b3f95b62677080a88687f73a52a9a5b7b6aa37fbdd9d715f8e677090ad +size 28336 diff --git a/game/characters/luna/clothes/hair/wand/outline_back.webp b/game/characters/luna/clothes/hair/wand/outline_back.webp new file mode 100644 index 00000000..2dd18065 --- /dev/null +++ b/game/characters/luna/clothes/hair/wand/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2abe7dcedcef8b32831be8513fad09f4646aac32e40d7c50d47ff1376a0c0df +size 22028 diff --git a/game/characters/luna/clothes/hair/wand/skin.webp b/game/characters/luna/clothes/hair/wand/skin.webp new file mode 100644 index 00000000..8975c89f --- /dev/null +++ b/game/characters/luna/clothes/hair/wand/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1389384ea2acd9ae236a6417a65d491afedb00d3a3caab4d733eef5828d40025 +size 4344 diff --git a/game/characters/luna/clothes/headgear/flight_attendant/0.webp b/game/characters/luna/clothes/headgear/flight_attendant/0.webp new file mode 100644 index 00000000..7299efba --- /dev/null +++ b/game/characters/luna/clothes/headgear/flight_attendant/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfb35747f77230247dcebb09d4126bb2652dcee2b3c1c2e59fc0b21bd24a8bff +size 3312 diff --git a/game/characters/luna/clothes/headgear/flight_attendant/outline.webp b/game/characters/luna/clothes/headgear/flight_attendant/outline.webp new file mode 100644 index 00000000..f5ecb90a --- /dev/null +++ b/game/characters/luna/clothes/headgear/flight_attendant/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:304f31c8dd170233c6c54b51fd3aba6fb3db72b4595586ea6bfd625ab61acb74 +size 2700 diff --git a/game/characters/luna/clothes/neckwear/cork/0.webp b/game/characters/luna/clothes/neckwear/cork/0.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/luna/clothes/neckwear/cork/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/luna/clothes/neckwear/cork/outline.webp b/game/characters/luna/clothes/neckwear/cork/outline.webp new file mode 100644 index 00000000..3c9cdbbb --- /dev/null +++ b/game/characters/luna/clothes/neckwear/cork/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53a57e69e0c656d302581c6723fac5a43d069c99d637b6a940e089fb6871fa48 +size 5232 diff --git a/game/characters/luna/clothes/neckwear/neckerchief/0.webp b/game/characters/luna/clothes/neckwear/neckerchief/0.webp new file mode 100644 index 00000000..5d943d78 --- /dev/null +++ b/game/characters/luna/clothes/neckwear/neckerchief/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9c4f6a30845b7e7cfaac4bdbfcc85057cba59accb247e6b62f35fefc4ccd3d5 +size 2260 diff --git a/game/characters/luna/clothes/neckwear/neckerchief/outline.webp b/game/characters/luna/clothes/neckwear/neckerchief/outline.webp new file mode 100644 index 00000000..0f15a535 --- /dev/null +++ b/game/characters/luna/clothes/neckwear/neckerchief/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c7ae58a8ceece4e56833731d00121f0019f7ec1e20b4ebee61d832e5c676490 +size 2548 diff --git a/game/characters/luna/clothes/neckwear/tie/0.webp b/game/characters/luna/clothes/neckwear/tie/0.webp new file mode 100644 index 00000000..191c1f83 --- /dev/null +++ b/game/characters/luna/clothes/neckwear/tie/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa2478c6004883e510cc4010183635ad27d91173d0ddb6b89d3ef20991a15f12 +size 5986 diff --git a/game/characters/luna/clothes/neckwear/tie/1.webp b/game/characters/luna/clothes/neckwear/tie/1.webp new file mode 100644 index 00000000..ca4b868a --- /dev/null +++ b/game/characters/luna/clothes/neckwear/tie/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4a0595bf27c513ac61eb2c67bc42d03b770470b80d121377a5183b7e3ae058c +size 5694 diff --git a/game/characters/luna/clothes/neckwear/tie/extra.webp b/game/characters/luna/clothes/neckwear/tie/extra.webp new file mode 100644 index 00000000..48ec9927 --- /dev/null +++ b/game/characters/luna/clothes/neckwear/tie/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:394eeb145a8279b0017aa50dbba0096e0fb1349b7c269f0f3be060c198db36ca +size 4240 diff --git a/game/characters/luna/clothes/neckwear/tie/outline.webp b/game/characters/luna/clothes/neckwear/tie/outline.webp new file mode 100644 index 00000000..0bda9473 --- /dev/null +++ b/game/characters/luna/clothes/neckwear/tie/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c771a8e552f15fd7a40cb7fd6aa8e92d09ef4852ff4279f92f3058255ef4fe41 +size 7826 diff --git a/game/characters/luna/clothes/neckwear/tie/skin.webp b/game/characters/luna/clothes/neckwear/tie/skin.webp new file mode 100644 index 00000000..bed08a00 --- /dev/null +++ b/game/characters/luna/clothes/neckwear/tie/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a04339627b0ca074e747207dd200034c91178de1e2717bd6f35eca59fe72456 +size 4266 diff --git a/game/characters/luna/clothes/panties/basic_panties_1/0.webp b/game/characters/luna/clothes/panties/basic_panties_1/0.webp new file mode 100644 index 00000000..5ba90ad3 --- /dev/null +++ b/game/characters/luna/clothes/panties/basic_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c30e34ba97ab29f8609765b8e55b9d9ffd8cc786b73c628747362205c9df04f0 +size 5548 diff --git a/game/characters/luna/clothes/panties/basic_panties_1/1.webp b/game/characters/luna/clothes/panties/basic_panties_1/1.webp new file mode 100644 index 00000000..c2f93585 --- /dev/null +++ b/game/characters/luna/clothes/panties/basic_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe197d58ee94b27c8c123337a08b254a93472ee46a41f78b3626e6355a61f2b1 +size 4102 diff --git a/game/characters/luna/clothes/panties/basic_panties_1/2.webp b/game/characters/luna/clothes/panties/basic_panties_1/2.webp new file mode 100644 index 00000000..c18365d3 --- /dev/null +++ b/game/characters/luna/clothes/panties/basic_panties_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a857c2513acfd8ec311c3cb0ad32cc277d7ae77c4f22d726fd1517eb95a0f8e7 +size 1304 diff --git a/game/characters/luna/clothes/panties/basic_panties_1/extra.webp b/game/characters/luna/clothes/panties/basic_panties_1/extra.webp new file mode 100644 index 00000000..47bb4837 --- /dev/null +++ b/game/characters/luna/clothes/panties/basic_panties_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21e3c87f80db6abaef4e376138a2cef724aaa79b47d5d2703d348ab886e8162b +size 1376 diff --git a/game/characters/luna/clothes/panties/basic_panties_1/outline.webp b/game/characters/luna/clothes/panties/basic_panties_1/outline.webp new file mode 100644 index 00000000..b11b32fa --- /dev/null +++ b/game/characters/luna/clothes/panties/basic_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb28cd05e8912188827bdf5f89a23dc6e0d6ef269e695319bb7641ede7f2aa65 +size 6760 diff --git a/game/characters/luna/clothes/panties/basic_panties_1/skin.webp b/game/characters/luna/clothes/panties/basic_panties_1/skin.webp new file mode 100644 index 00000000..fc52cc4e --- /dev/null +++ b/game/characters/luna/clothes/panties/basic_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f74ee679cdfd7b2890274f874a6c851a00c1ab162d422a1ae87c00b08d530800 +size 1936 diff --git a/game/characters/luna/clothes/panties/basic_panties_2/0.webp b/game/characters/luna/clothes/panties/basic_panties_2/0.webp new file mode 100644 index 00000000..b35ecc64 --- /dev/null +++ b/game/characters/luna/clothes/panties/basic_panties_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5530ccf83ec593ea37432df204585fcd6878c7bcf60b398cbfb602d246c00f71 +size 3514 diff --git a/game/characters/luna/clothes/panties/basic_panties_2/1.webp b/game/characters/luna/clothes/panties/basic_panties_2/1.webp new file mode 100644 index 00000000..212d8ca6 --- /dev/null +++ b/game/characters/luna/clothes/panties/basic_panties_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:396ba93750f7c8d7ef6789d5650cc2fbbc694b510774b566466112fab4243775 +size 948 diff --git a/game/characters/luna/clothes/panties/basic_panties_2/extra.webp b/game/characters/luna/clothes/panties/basic_panties_2/extra.webp new file mode 100644 index 00000000..9ff3b932 --- /dev/null +++ b/game/characters/luna/clothes/panties/basic_panties_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c61fd8ee2d4062df9f3dc5384bea38929bfe48aa10271159b9dfdc73eef8b5e2 +size 974 diff --git a/game/characters/luna/clothes/panties/basic_panties_2/outline.webp b/game/characters/luna/clothes/panties/basic_panties_2/outline.webp new file mode 100644 index 00000000..2a7d3e93 --- /dev/null +++ b/game/characters/luna/clothes/panties/basic_panties_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1186e23bec274e9fe5d1b80cbd3d69d7c0bc6fe8e1d083e8cb20cbff9a320ca9 +size 5320 diff --git a/game/characters/luna/clothes/panties/basic_panties_2/skin.webp b/game/characters/luna/clothes/panties/basic_panties_2/skin.webp new file mode 100644 index 00000000..fc52cc4e --- /dev/null +++ b/game/characters/luna/clothes/panties/basic_panties_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f74ee679cdfd7b2890274f874a6c851a00c1ab162d422a1ae87c00b08d530800 +size 1936 diff --git a/game/characters/luna/clothes/panties/bikini_panties_3/0.webp b/game/characters/luna/clothes/panties/bikini_panties_3/0.webp new file mode 100644 index 00000000..e5dbf6c2 --- /dev/null +++ b/game/characters/luna/clothes/panties/bikini_panties_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:379f7f272d5a01a187b7f15402d55ae4243f3f2bb3806be005bccb023a526a2d +size 932 diff --git a/game/characters/luna/clothes/panties/bikini_panties_3/1.webp b/game/characters/luna/clothes/panties/bikini_panties_3/1.webp new file mode 100644 index 00000000..bb1a18b8 --- /dev/null +++ b/game/characters/luna/clothes/panties/bikini_panties_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f19c354670f036d5379f9cbb528ebd06948e7fa4dc10b38b72e861074fd8889 +size 1124 diff --git a/game/characters/luna/clothes/panties/bikini_panties_3/outline.webp b/game/characters/luna/clothes/panties/bikini_panties_3/outline.webp new file mode 100644 index 00000000..9dbeed3f --- /dev/null +++ b/game/characters/luna/clothes/panties/bikini_panties_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7914a1bbc2f7add56352ba57bec6d875b05dc4fc066e7adefb56ec48fa33cc54 +size 2504 diff --git a/game/characters/luna/clothes/panties/flight_attendant_thongs_1/0.webp b/game/characters/luna/clothes/panties/flight_attendant_thongs_1/0.webp new file mode 100644 index 00000000..814d3b00 --- /dev/null +++ b/game/characters/luna/clothes/panties/flight_attendant_thongs_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c289a2b4d5c499c68dfc90384e5ff258460252c6c7ec99424b9ba169038c763 +size 3984 diff --git a/game/characters/luna/clothes/panties/flight_attendant_thongs_1/outline.webp b/game/characters/luna/clothes/panties/flight_attendant_thongs_1/outline.webp new file mode 100644 index 00000000..aa09713d --- /dev/null +++ b/game/characters/luna/clothes/panties/flight_attendant_thongs_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f35f4069655206e481c61eb0a5034ae9cb7d4a918e42d628897a9f3e9398aca7 +size 4172 diff --git a/game/characters/luna/clothes/panties/flight_attendant_thongs_2/0.webp b/game/characters/luna/clothes/panties/flight_attendant_thongs_2/0.webp new file mode 100644 index 00000000..49a5d97f --- /dev/null +++ b/game/characters/luna/clothes/panties/flight_attendant_thongs_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39a2056d3cd461daa329c465cee6826415f8125bd7e292d88f6465dee2323b1f +size 4262 diff --git a/game/characters/luna/clothes/panties/flight_attendant_thongs_2/1.webp b/game/characters/luna/clothes/panties/flight_attendant_thongs_2/1.webp new file mode 100644 index 00000000..e5a9a3b6 --- /dev/null +++ b/game/characters/luna/clothes/panties/flight_attendant_thongs_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5c86ca0cb1880e7aff0a002e0b5fa324c3675a3d0b1e834f0f6f5438e807a18 +size 832 diff --git a/game/characters/luna/clothes/panties/flight_attendant_thongs_2/outline.webp b/game/characters/luna/clothes/panties/flight_attendant_thongs_2/outline.webp new file mode 100644 index 00000000..6bf4ac1b --- /dev/null +++ b/game/characters/luna/clothes/panties/flight_attendant_thongs_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ecb50c09b11f7b6ea1924c805458229e17d33f8e7a41a70a7148eff3fc0430f6 +size 4920 diff --git a/game/characters/luna/clothes/panties/flight_attendant_thongs_2/skin.webp b/game/characters/luna/clothes/panties/flight_attendant_thongs_2/skin.webp new file mode 100644 index 00000000..b165723a --- /dev/null +++ b/game/characters/luna/clothes/panties/flight_attendant_thongs_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0dde9e48c64c2307e017ad55aeb2efcab93e5b65d48f96a4c2a35025ab2eaa27 +size 1268 diff --git a/game/characters/luna/clothes/panties/lace_panties_1/0.webp b/game/characters/luna/clothes/panties/lace_panties_1/0.webp new file mode 100644 index 00000000..f4bdb370 --- /dev/null +++ b/game/characters/luna/clothes/panties/lace_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d01480d460e1e21001192b27a98801d08a1b95c87bc5b66be40433e4019eb79e +size 11328 diff --git a/game/characters/luna/clothes/panties/lace_panties_1/1.webp b/game/characters/luna/clothes/panties/lace_panties_1/1.webp new file mode 100644 index 00000000..1c7d086f --- /dev/null +++ b/game/characters/luna/clothes/panties/lace_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b01b4b6f8f8b7cfe5878e5cf1a556a86397e352ed4aea456f0756d088e89c859 +size 2856 diff --git a/game/characters/luna/clothes/panties/lace_panties_1/outline.webp b/game/characters/luna/clothes/panties/lace_panties_1/outline.webp new file mode 100644 index 00000000..a0a8346a --- /dev/null +++ b/game/characters/luna/clothes/panties/lace_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e948f344db21ce4f6709c19d528a58c1b60ab8f1e061b0eb60fcc5a39b20a087 +size 5248 diff --git a/game/characters/luna/clothes/panties/lace_panties_1/skin.webp b/game/characters/luna/clothes/panties/lace_panties_1/skin.webp new file mode 100644 index 00000000..0c6178b6 --- /dev/null +++ b/game/characters/luna/clothes/panties/lace_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:420fcf8ad79cefaced2c7eb413acdae10030cf9635e0efb727af29748e976537 +size 2208 diff --git a/game/characters/luna/clothes/panties/lace_panties_2/0.webp b/game/characters/luna/clothes/panties/lace_panties_2/0.webp new file mode 100644 index 00000000..8840ece8 --- /dev/null +++ b/game/characters/luna/clothes/panties/lace_panties_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:adccaffb26ed2fca717ef8ef9a1141c68e523556f13c50eb7241f650e5698a65 +size 2688 diff --git a/game/characters/luna/clothes/panties/lace_panties_2/1.webp b/game/characters/luna/clothes/panties/lace_panties_2/1.webp new file mode 100644 index 00000000..815f5f68 --- /dev/null +++ b/game/characters/luna/clothes/panties/lace_panties_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2523590561e2d888164282f73a7f701cd3fe9c139ec228c6efb8d34241e9d860 +size 1310 diff --git a/game/characters/luna/clothes/panties/lace_panties_2/2.webp b/game/characters/luna/clothes/panties/lace_panties_2/2.webp new file mode 100644 index 00000000..cf1a5b3a --- /dev/null +++ b/game/characters/luna/clothes/panties/lace_panties_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acde2c96597092a7fded639e9f9774b903dc85527f85ca92f11e0ff65011927e +size 1106 diff --git a/game/characters/luna/clothes/panties/lace_panties_2/outline.webp b/game/characters/luna/clothes/panties/lace_panties_2/outline.webp new file mode 100644 index 00000000..9a60ecdd --- /dev/null +++ b/game/characters/luna/clothes/panties/lace_panties_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dad6f674dcbbddf3f8a7235f6674bee9ec2939b905a76aac6c0c8169a6c4c3a8 +size 4720 diff --git a/game/characters/luna/clothes/pubes/arrow/0.webp b/game/characters/luna/clothes/pubes/arrow/0.webp new file mode 100644 index 00000000..bb309222 --- /dev/null +++ b/game/characters/luna/clothes/pubes/arrow/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:354dc0a425b7e119ae0dc7b9c56b8f1a6989df752f214fd847f3f7a5493520a0 +size 2050 diff --git a/game/characters/luna/clothes/pubes/arrow/outline.webp b/game/characters/luna/clothes/pubes/arrow/outline.webp new file mode 100644 index 00000000..5b89513a --- /dev/null +++ b/game/characters/luna/clothes/pubes/arrow/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a48303b8da80feae021bf78c4a4712baec6a230b4aab72d7656c8b5053d08bd +size 1322 diff --git a/game/characters/luna/clothes/pubes/beaver/0.webp b/game/characters/luna/clothes/pubes/beaver/0.webp new file mode 100644 index 00000000..f2acecc3 --- /dev/null +++ b/game/characters/luna/clothes/pubes/beaver/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:627907cd3252c0d591bde016e7c5fc9e876463946dbf860e3456baa2e68cbc35 +size 2398 diff --git a/game/characters/luna/clothes/pubes/beaver/outline.webp b/game/characters/luna/clothes/pubes/beaver/outline.webp new file mode 100644 index 00000000..a0a7efa0 --- /dev/null +++ b/game/characters/luna/clothes/pubes/beaver/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7ca800fe7895a83c0d1a1d153f5dd858d653c33e57f707ae916f7ef42be6f64 +size 3436 diff --git a/game/characters/luna/clothes/pubes/stuble/0.webp b/game/characters/luna/clothes/pubes/stuble/0.webp new file mode 100644 index 00000000..59468e1b --- /dev/null +++ b/game/characters/luna/clothes/pubes/stuble/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57601f6bac0aedf13a657dbe0d771993a07c8463eb53cf0d1cdcf3e6c2a94994 +size 1098 diff --git a/game/characters/luna/clothes/pubes/unshaved/0.webp b/game/characters/luna/clothes/pubes/unshaved/0.webp new file mode 100644 index 00000000..c8bf8106 --- /dev/null +++ b/game/characters/luna/clothes/pubes/unshaved/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5eb2bf60d2748d2fb1562d6718a224587ce6c478b916222a25397f584320a3d +size 1800 diff --git a/game/characters/luna/clothes/robe/harley_quinn/0.webp b/game/characters/luna/clothes/robe/harley_quinn/0.webp new file mode 100644 index 00000000..64da0db9 --- /dev/null +++ b/game/characters/luna/clothes/robe/harley_quinn/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fae1d17ca7bcf45738e57694b268bbc48b02b1f5727e529cd757468d81c84139 +size 17982 diff --git a/game/characters/luna/clothes/robe/harley_quinn/1.webp b/game/characters/luna/clothes/robe/harley_quinn/1.webp new file mode 100644 index 00000000..16e68704 --- /dev/null +++ b/game/characters/luna/clothes/robe/harley_quinn/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90510623a5bc72b9c5c20ad55bd5cd8f9a2fd02840ae9e9b6b0315296f93599a +size 5710 diff --git a/game/characters/luna/clothes/robe/harley_quinn/2.webp b/game/characters/luna/clothes/robe/harley_quinn/2.webp new file mode 100644 index 00000000..c1a73f43 --- /dev/null +++ b/game/characters/luna/clothes/robe/harley_quinn/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b697d18fe288f8a3266fca20425c2ebfa1cf4644617717a582f151f61f98ca47 +size 3024 diff --git a/game/characters/luna/clothes/robe/harley_quinn/3.webp b/game/characters/luna/clothes/robe/harley_quinn/3.webp new file mode 100644 index 00000000..317b0bf8 --- /dev/null +++ b/game/characters/luna/clothes/robe/harley_quinn/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce3e9426a16ce58a25cb5af204bd505d666dab90b8e45e8c3b32859ea2594670 +size 2680 diff --git a/game/characters/luna/clothes/robe/harley_quinn/4.webp b/game/characters/luna/clothes/robe/harley_quinn/4.webp new file mode 100644 index 00000000..5c2fdda8 --- /dev/null +++ b/game/characters/luna/clothes/robe/harley_quinn/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff360fd38baa8855ad4d4f33f0d253f76bb0626573536032f317119d0b98d180 +size 5800 diff --git a/game/characters/luna/clothes/robe/harley_quinn/outline.webp b/game/characters/luna/clothes/robe/harley_quinn/outline.webp new file mode 100644 index 00000000..694a6842 --- /dev/null +++ b/game/characters/luna/clothes/robe/harley_quinn/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75b7fb962c5fe125d0e21cb1c8cea76e019be93d4bef0b30ba799b1a7a1cbb90 +size 20768 diff --git a/game/characters/luna/clothes/robe/muggle_jacket/0.webp b/game/characters/luna/clothes/robe/muggle_jacket/0.webp new file mode 100644 index 00000000..0d1f8274 --- /dev/null +++ b/game/characters/luna/clothes/robe/muggle_jacket/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06b0b14c92cb17db045690a4b153211d168e72d532404f202f3e0bb114f4e51a +size 16610 diff --git a/game/characters/luna/clothes/robe/muggle_jacket/1.webp b/game/characters/luna/clothes/robe/muggle_jacket/1.webp new file mode 100644 index 00000000..7e0a5419 --- /dev/null +++ b/game/characters/luna/clothes/robe/muggle_jacket/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2e54189f12cfce57d7b22a939ab72a03caccff70abe6b0ec0e0f44d9600705a +size 960 diff --git a/game/characters/luna/clothes/robe/muggle_jacket/outline.webp b/game/characters/luna/clothes/robe/muggle_jacket/outline.webp new file mode 100644 index 00000000..136d3d2b --- /dev/null +++ b/game/characters/luna/clothes/robe/muggle_jacket/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f561df6ce4c44b77e9f6af9232daaf6c21775c2794d89f328a1298451219b549 +size 21120 diff --git a/game/characters/luna/clothes/robe/robe_school_1/0.webp b/game/characters/luna/clothes/robe/robe_school_1/0.webp new file mode 100644 index 00000000..540a4c80 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84bb3a30c66725063c92cee05a45ae8e9018524818da7c3d6e4bfb1880bacc48 +size 42304 diff --git a/game/characters/luna/clothes/robe/robe_school_1/0_back.webp b/game/characters/luna/clothes/robe/robe_school_1/0_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_1/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/luna/clothes/robe/robe_school_1/1.webp b/game/characters/luna/clothes/robe/robe_school_1/1.webp new file mode 100644 index 00000000..44a8789a --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdc7aee0f68897eae31f31fa71a2e0261f002fa638cbf948c31b149a0b1f2bcd +size 12198 diff --git a/game/characters/luna/clothes/robe/robe_school_1/1_back.webp b/game/characters/luna/clothes/robe/robe_school_1/1_back.webp new file mode 100644 index 00000000..f005bedc --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_1/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb59258683bd0b8269bc0d5aa9d42928ef7a7860840bba6981e91fa7b7920c33 +size 3264 diff --git a/game/characters/luna/clothes/robe/robe_school_1/mask.webp b/game/characters/luna/clothes/robe/robe_school_1/mask.webp new file mode 100644 index 00000000..d34a58db --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e77a5caa40a70fd94f618d311e21c828bc78d7d40bd1e70dbd4c383bd378cac8 +size 7230 diff --git a/game/characters/luna/clothes/robe/robe_school_1/outline.webp b/game/characters/luna/clothes/robe/robe_school_1/outline.webp new file mode 100644 index 00000000..e93b32b8 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55599a48590162f7f4704e36a69c464ae7d7f49f87c1e0962557173fa0b870b2 +size 38304 diff --git a/game/characters/luna/clothes/robe/robe_school_1/outline_back.webp b/game/characters/luna/clothes/robe/robe_school_1/outline_back.webp new file mode 100644 index 00000000..3567a421 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_1/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bcec40c9a6489de0e104e8f07233c128de1703705bb6079ac6b5c2ce3a8f0c0 +size 3210 diff --git a/game/characters/luna/clothes/robe/robe_school_2/0.webp b/game/characters/luna/clothes/robe/robe_school_2/0.webp new file mode 100644 index 00000000..db6f54ca --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca3153b9db44d5d02ec4a246abf29a2942196a739a244697293b04cdaeb57db1 +size 44978 diff --git a/game/characters/luna/clothes/robe/robe_school_2/0_back.webp b/game/characters/luna/clothes/robe/robe_school_2/0_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_2/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/luna/clothes/robe/robe_school_2/1.webp b/game/characters/luna/clothes/robe/robe_school_2/1.webp new file mode 100644 index 00000000..3789066b --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec4ef6ce2117a134bc7fc4f6a1bb496500a9c9eaef28c27114c4a861f490f7e0 +size 12366 diff --git a/game/characters/luna/clothes/robe/robe_school_2/1_back.webp b/game/characters/luna/clothes/robe/robe_school_2/1_back.webp new file mode 100644 index 00000000..c974a8b4 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_2/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6854c24ee3a01fe09a8ec7281190319ff0d10033c435578c22fba2114a1289e8 +size 3580 diff --git a/game/characters/luna/clothes/robe/robe_school_2/extra.webp b/game/characters/luna/clothes/robe/robe_school_2/extra.webp new file mode 100644 index 00000000..20b47142 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb2979f41c75730308e878c9cb6fa1e7cbbe9e54210f8354f6957101dd495458 +size 5916 diff --git a/game/characters/luna/clothes/robe/robe_school_2/mask.webp b/game/characters/luna/clothes/robe/robe_school_2/mask.webp new file mode 100644 index 00000000..d34a58db --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_2/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e77a5caa40a70fd94f618d311e21c828bc78d7d40bd1e70dbd4c383bd378cac8 +size 7230 diff --git a/game/characters/luna/clothes/robe/robe_school_2/outline.webp b/game/characters/luna/clothes/robe/robe_school_2/outline.webp new file mode 100644 index 00000000..b7c16d5e --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ba1906553437bcd550fea23cfc836d373da7ead2d4b39e57f08129463a1130a +size 41904 diff --git a/game/characters/luna/clothes/robe/robe_school_2/outline_back.webp b/game/characters/luna/clothes/robe/robe_school_2/outline_back.webp new file mode 100644 index 00000000..bb92fc8d --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_2/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5855c941860601a1ac086e40917dfee143e90e41d4e897e7455e3b84c97e9158 +size 4044 diff --git a/game/characters/luna/clothes/robe/robe_school_3/0.webp b/game/characters/luna/clothes/robe/robe_school_3/0.webp new file mode 100644 index 00000000..62ad32bc --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1432dd7c416f8a8eabcdeedcda6a1ee9bbebd364e400caff5636a7781f7febd6 +size 43746 diff --git a/game/characters/luna/clothes/robe/robe_school_3/0_back.webp b/game/characters/luna/clothes/robe/robe_school_3/0_back.webp new file mode 100644 index 00000000..09a59870 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_3/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8162d455f0fed409e328ee26a2a1539cec2b991bc374c2b4c79ce684ea38e47b +size 9200 diff --git a/game/characters/luna/clothes/robe/robe_school_3/1.webp b/game/characters/luna/clothes/robe/robe_school_3/1.webp new file mode 100644 index 00000000..f45fdeab --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5b38b9458a86536ab05527ab72b088f27832d3f4ff177c2da5fbb138e8ec68f +size 12294 diff --git a/game/characters/luna/clothes/robe/robe_school_3/1_back.webp b/game/characters/luna/clothes/robe/robe_school_3/1_back.webp new file mode 100644 index 00000000..e902fcc1 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_3/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:273c545f733636f04d41835aafe68f1ee262ce977e5e3e13649f185197ba2d5e +size 4996 diff --git a/game/characters/luna/clothes/robe/robe_school_3/extra.webp b/game/characters/luna/clothes/robe/robe_school_3/extra.webp new file mode 100644 index 00000000..f09dada9 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_3/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:079116369ef30e30f314b72b32a264195c06c5ebd4e22c8de9d3773d3710d19a +size 14536 diff --git a/game/characters/luna/clothes/robe/robe_school_3/mask.webp b/game/characters/luna/clothes/robe/robe_school_3/mask.webp new file mode 100644 index 00000000..d34a58db --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_3/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e77a5caa40a70fd94f618d311e21c828bc78d7d40bd1e70dbd4c383bd378cac8 +size 7230 diff --git a/game/characters/luna/clothes/robe/robe_school_3/outline.webp b/game/characters/luna/clothes/robe/robe_school_3/outline.webp new file mode 100644 index 00000000..6bf5b2b3 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eab54ef2659bbf1a99f79d0f30d24341872f1f129677c93dc460391ad0edcd6f +size 43454 diff --git a/game/characters/luna/clothes/robe/robe_school_3/outline_back.webp b/game/characters/luna/clothes/robe/robe_school_3/outline_back.webp new file mode 100644 index 00000000..b97928f2 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_3/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a67f0841f1fc700351c6f8dfa272a1b49728ae20c4140915901cb86d25361bc3 +size 4546 diff --git a/game/characters/luna/clothes/robe/robe_school_4/0.webp b/game/characters/luna/clothes/robe/robe_school_4/0.webp new file mode 100644 index 00000000..62cf06a6 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1033bb8bdc6b1da534f836193782de1f948c0466a61fd6ad2fa335131190e25 +size 27342 diff --git a/game/characters/luna/clothes/robe/robe_school_4/0_back.webp b/game/characters/luna/clothes/robe/robe_school_4/0_back.webp new file mode 100644 index 00000000..0e8579ab --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_4/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff60246f540fbc0378a12b141823a10f0e32318a71292c6da86c080b2b61b009 +size 6450 diff --git a/game/characters/luna/clothes/robe/robe_school_4/1.webp b/game/characters/luna/clothes/robe/robe_school_4/1.webp new file mode 100644 index 00000000..a161c6b0 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f12100e3036c64da8d959889368d0f6cb4c7220e9200853161632087b2270628 +size 9050 diff --git a/game/characters/luna/clothes/robe/robe_school_4/1_back.webp b/game/characters/luna/clothes/robe/robe_school_4/1_back.webp new file mode 100644 index 00000000..ce07b16a --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_4/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d6b77ecf95e016cf1cb0e9e4b81429a1bebeffd5cf31231fcb47039638cb9f7 +size 12610 diff --git a/game/characters/luna/clothes/robe/robe_school_4/mask.webp b/game/characters/luna/clothes/robe/robe_school_4/mask.webp new file mode 100644 index 00000000..5d6dd766 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_4/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1526aa151c8f8aec564e1df6f42d134bb17c34bae52cebf2611152085e4803b +size 2992 diff --git a/game/characters/luna/clothes/robe/robe_school_4/outline.webp b/game/characters/luna/clothes/robe/robe_school_4/outline.webp new file mode 100644 index 00000000..1280f043 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93c05e658c37f084f647ad98c4e223c89a0768008ccd0ecb71b7303906220f26 +size 25606 diff --git a/game/characters/luna/clothes/robe/robe_school_4/outline_back.webp b/game/characters/luna/clothes/robe/robe_school_4/outline_back.webp new file mode 100644 index 00000000..63dbb495 --- /dev/null +++ b/game/characters/luna/clothes/robe/robe_school_4/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3763c906d4f8ef1f6d21a8b83d53f854062b246e37168f6638e49f23ef7d936 +size 19274 diff --git a/game/characters/luna/clothes/stockings/harley_quinn/0.webp b/game/characters/luna/clothes/stockings/harley_quinn/0.webp new file mode 100644 index 00000000..20460a3b --- /dev/null +++ b/game/characters/luna/clothes/stockings/harley_quinn/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f0b9632caacc85dd39f2ab1eac91a5277c6b56d203374a8afdc1246c4b8b618 +size 6386 diff --git a/game/characters/luna/clothes/stockings/harley_quinn/outline.webp b/game/characters/luna/clothes/stockings/harley_quinn/outline.webp new file mode 100644 index 00000000..992d3074 --- /dev/null +++ b/game/characters/luna/clothes/stockings/harley_quinn/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f910476ba2f1d1b1f262a31b7f7042ab53eec674f48adf5ccdb25d9b7e160fde +size 11698 diff --git a/game/characters/luna/clothes/stockings/muggle_knee_socks/0.webp b/game/characters/luna/clothes/stockings/muggle_knee_socks/0.webp new file mode 100644 index 00000000..01fdca12 --- /dev/null +++ b/game/characters/luna/clothes/stockings/muggle_knee_socks/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ad71896d5ab881cf4149681fe2704d8c2e02bcf36ed604413e4217d7f2f2a91 +size 2878 diff --git a/game/characters/luna/clothes/stockings/muggle_knee_socks/1.webp b/game/characters/luna/clothes/stockings/muggle_knee_socks/1.webp new file mode 100644 index 00000000..839c64c1 --- /dev/null +++ b/game/characters/luna/clothes/stockings/muggle_knee_socks/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcfd7de146d7545fc2fc842b76ef61f6ba4c7347946fc89f0b282816ad9e455f +size 2084 diff --git a/game/characters/luna/clothes/stockings/muggle_knee_socks/2.webp b/game/characters/luna/clothes/stockings/muggle_knee_socks/2.webp new file mode 100644 index 00000000..edf607a3 --- /dev/null +++ b/game/characters/luna/clothes/stockings/muggle_knee_socks/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35fb3f563a78180eee24cc7db199aa411f8d9a539dfe57ec46c9d52b9c834d0c +size 1938 diff --git a/game/characters/luna/clothes/stockings/muggle_knee_socks/outline.webp b/game/characters/luna/clothes/stockings/muggle_knee_socks/outline.webp new file mode 100644 index 00000000..10df0263 --- /dev/null +++ b/game/characters/luna/clothes/stockings/muggle_knee_socks/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fb45939175b1d111e987b6969776ea5b6cb942efdbeacfbc1e5418bf25c932a +size 6864 diff --git a/game/characters/luna/clothes/stockings/pantyhose_1/0.webp b/game/characters/luna/clothes/stockings/pantyhose_1/0.webp new file mode 100644 index 00000000..14404f47 --- /dev/null +++ b/game/characters/luna/clothes/stockings/pantyhose_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a88e8135dbade880ca7d882e1cfda88a09476fb9aaaae0f71184ca7beb184ab +size 8212 diff --git a/game/characters/luna/clothes/stockings/pantyhose_1/extra.webp b/game/characters/luna/clothes/stockings/pantyhose_1/extra.webp new file mode 100644 index 00000000..b76f3f29 --- /dev/null +++ b/game/characters/luna/clothes/stockings/pantyhose_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7881265e1049004a6f73ad2eac08a2df1534813cba0d6dd3e199cc15f3fb801 +size 10178 diff --git a/game/characters/luna/clothes/stockings/pantyhose_1/outline.webp b/game/characters/luna/clothes/stockings/pantyhose_1/outline.webp new file mode 100644 index 00000000..47a4b3a9 --- /dev/null +++ b/game/characters/luna/clothes/stockings/pantyhose_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b239b3999402200328933d24d990f5db9bcfab6947255822af670f2e2f81a904 +size 11076 diff --git a/game/characters/luna/clothes/stockings/pantyhose_meshed/0.webp b/game/characters/luna/clothes/stockings/pantyhose_meshed/0.webp new file mode 100644 index 00000000..26bd19b3 --- /dev/null +++ b/game/characters/luna/clothes/stockings/pantyhose_meshed/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d8c0092665f87df359481e0af103034decfdd1e21e0e76d4e49d0c201f38ef6 +size 27412 diff --git a/game/characters/luna/clothes/stockings/pantyhose_meshed/outline.webp b/game/characters/luna/clothes/stockings/pantyhose_meshed/outline.webp new file mode 100644 index 00000000..47a4b3a9 --- /dev/null +++ b/game/characters/luna/clothes/stockings/pantyhose_meshed/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b239b3999402200328933d24d990f5db9bcfab6947255822af670f2e2f81a904 +size 11076 diff --git a/game/characters/luna/clothes/stockings/police_thigh_highs/0.webp b/game/characters/luna/clothes/stockings/police_thigh_highs/0.webp new file mode 100644 index 00000000..4e51b305 --- /dev/null +++ b/game/characters/luna/clothes/stockings/police_thigh_highs/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b977483ebc20faad2d64fc4f7308fa6f29f4a5a001781fc32204d3903d305b8b +size 9312 diff --git a/game/characters/luna/clothes/stockings/police_thigh_highs/extra.webp b/game/characters/luna/clothes/stockings/police_thigh_highs/extra.webp new file mode 100644 index 00000000..fdb3355e --- /dev/null +++ b/game/characters/luna/clothes/stockings/police_thigh_highs/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56ef955942a6991873b0af07d84e00a8af8f918ec340140a47b0cd11ee77f2bc +size 1760 diff --git a/game/characters/luna/clothes/stockings/police_thigh_highs/outline.webp b/game/characters/luna/clothes/stockings/police_thigh_highs/outline.webp new file mode 100644 index 00000000..7423324b --- /dev/null +++ b/game/characters/luna/clothes/stockings/police_thigh_highs/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b8d86d2665057c8a0b7d0ebfb153857dc965a46010523166d3f9ee4d1b4a19b +size 6034 diff --git a/game/characters/luna/clothes/stockings/short_school_1/0.webp b/game/characters/luna/clothes/stockings/short_school_1/0.webp new file mode 100644 index 00000000..6b3f10d5 --- /dev/null +++ b/game/characters/luna/clothes/stockings/short_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae3384837bbe177cf3b9609194ac82d951080909ff929697a3d408852a617aa1 +size 5062 diff --git a/game/characters/luna/clothes/stockings/short_school_1/1.webp b/game/characters/luna/clothes/stockings/short_school_1/1.webp new file mode 100644 index 00000000..2c08a8d1 --- /dev/null +++ b/game/characters/luna/clothes/stockings/short_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9240aa42555923704ce593c976cf3dbd1399e17cd25b18dedcd729c1b472d4a +size 4870 diff --git a/game/characters/luna/clothes/stockings/short_school_1/extra.webp b/game/characters/luna/clothes/stockings/short_school_1/extra.webp new file mode 100644 index 00000000..c8839242 --- /dev/null +++ b/game/characters/luna/clothes/stockings/short_school_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7618d2fb84ee7480fc8b41a66de86c1fd23c2c78a3a0be5d596dee188fc790f2 +size 5516 diff --git a/game/characters/luna/clothes/stockings/short_school_1/outline.webp b/game/characters/luna/clothes/stockings/short_school_1/outline.webp new file mode 100644 index 00000000..b58ed80c --- /dev/null +++ b/game/characters/luna/clothes/stockings/short_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a252e7b48771bb85338673b91bba9ed8e04e074091dd3e0c853643617df13bd +size 7718 diff --git a/game/characters/luna/clothes/stockings/short_school_1/skin.webp b/game/characters/luna/clothes/stockings/short_school_1/skin.webp new file mode 100644 index 00000000..b7d57656 --- /dev/null +++ b/game/characters/luna/clothes/stockings/short_school_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7fb2e76f419c5d30c1cfc6a88bcb733984a4bf6fa9f76587a9050aa5b40edb4 +size 3790 diff --git a/game/characters/luna/clothes/stockings/short_school_2/0.webp b/game/characters/luna/clothes/stockings/short_school_2/0.webp new file mode 100644 index 00000000..6b3f10d5 --- /dev/null +++ b/game/characters/luna/clothes/stockings/short_school_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae3384837bbe177cf3b9609194ac82d951080909ff929697a3d408852a617aa1 +size 5062 diff --git a/game/characters/luna/clothes/stockings/short_school_2/extra.webp b/game/characters/luna/clothes/stockings/short_school_2/extra.webp new file mode 100644 index 00000000..c8839242 --- /dev/null +++ b/game/characters/luna/clothes/stockings/short_school_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7618d2fb84ee7480fc8b41a66de86c1fd23c2c78a3a0be5d596dee188fc790f2 +size 5516 diff --git a/game/characters/luna/clothes/stockings/short_school_2/outline.webp b/game/characters/luna/clothes/stockings/short_school_2/outline.webp new file mode 100644 index 00000000..be84dd6e --- /dev/null +++ b/game/characters/luna/clothes/stockings/short_school_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30455ac49da13f17a614760d4326a6028870ed486c9d3f2c610583a6fd23afed +size 6450 diff --git a/game/characters/luna/clothes/stockings/short_school_2/skin.webp b/game/characters/luna/clothes/stockings/short_school_2/skin.webp new file mode 100644 index 00000000..b7d57656 --- /dev/null +++ b/game/characters/luna/clothes/stockings/short_school_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7fb2e76f419c5d30c1cfc6a88bcb733984a4bf6fa9f76587a9050aa5b40edb4 +size 3790 diff --git a/game/characters/luna/clothes/tattoo/baby_oven/0.webp b/game/characters/luna/clothes/tattoo/baby_oven/0.webp new file mode 100644 index 00000000..26be15a7 --- /dev/null +++ b/game/characters/luna/clothes/tattoo/baby_oven/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9891eab52cc9bb72de622721f67bff163f66c22aaab8007b7fca60d176f8aa9 +size 2106 diff --git a/game/characters/luna/clothes/tattoo/baby_oven/1.webp b/game/characters/luna/clothes/tattoo/baby_oven/1.webp new file mode 100644 index 00000000..88ddc149 --- /dev/null +++ b/game/characters/luna/clothes/tattoo/baby_oven/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9dadddeb1fcac41e8b440103f6405a58f231b8104d98aa092dfa840944bbce1 +size 1362 diff --git a/game/characters/luna/clothes/tattoo/baby_oven/outline.webp b/game/characters/luna/clothes/tattoo/baby_oven/outline.webp new file mode 100644 index 00000000..3276e2fd --- /dev/null +++ b/game/characters/luna/clothes/tattoo/baby_oven/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20958b6cc43ebb9d91f6c749e69f410b84edda58c3ffa8dcd9b64a422bafc52c +size 1700 diff --git a/game/characters/luna/clothes/tattoo/cumdump/0.webp b/game/characters/luna/clothes/tattoo/cumdump/0.webp new file mode 100644 index 00000000..6c526abf --- /dev/null +++ b/game/characters/luna/clothes/tattoo/cumdump/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:405b0e29542fba31bd08c4e0daee5d5602afaf5966cbbcdb0e179d5424aef058 +size 3118 diff --git a/game/characters/luna/clothes/tattoo/lab_rat/0.webp b/game/characters/luna/clothes/tattoo/lab_rat/0.webp new file mode 100644 index 00000000..3b55884f --- /dev/null +++ b/game/characters/luna/clothes/tattoo/lab_rat/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24ed5233702f4c9d908f82bc6ed4e569aa02b7761af7adc45682f6a1ed9bc3de +size 2612 diff --git a/game/characters/luna/clothes/tattoo/loony/0.webp b/game/characters/luna/clothes/tattoo/loony/0.webp new file mode 100644 index 00000000..9e3525c7 --- /dev/null +++ b/game/characters/luna/clothes/tattoo/loony/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90756d8dc0d4647f0b4f90feb92d8e21f4c44a589162c3314a3938a83a195c8b +size 1342 diff --git a/game/characters/luna/clothes/tattoo/measure/0.webp b/game/characters/luna/clothes/tattoo/measure/0.webp new file mode 100644 index 00000000..c75d8b6e --- /dev/null +++ b/game/characters/luna/clothes/tattoo/measure/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:529a6f1a2ec0551b4e2639c23f941f43ae3124c340e39127317a294bd32bc524 +size 1970 diff --git a/game/characters/luna/clothes/tattoo/measure/1.webp b/game/characters/luna/clothes/tattoo/measure/1.webp new file mode 100644 index 00000000..4b8049ca --- /dev/null +++ b/game/characters/luna/clothes/tattoo/measure/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db2d12fa093eaf4b1b0760ad8026c06b8d629eb1cd0ac0f85cbf5317e89dbfef +size 744 diff --git a/game/characters/luna/clothes/tattoo/measure/outline.webp b/game/characters/luna/clothes/tattoo/measure/outline.webp new file mode 100644 index 00000000..4c6b2b9d --- /dev/null +++ b/game/characters/luna/clothes/tattoo/measure/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c227f4869e4a6e43bf076cacae033fc0e1bd1db0fbb54b73d51ee286aab2d031 +size 1008 diff --git a/game/characters/luna/clothes/tattoo/spurt_here/0.webp b/game/characters/luna/clothes/tattoo/spurt_here/0.webp new file mode 100644 index 00000000..b4b6ab66 --- /dev/null +++ b/game/characters/luna/clothes/tattoo/spurt_here/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdb1ffcf2c06a60c0bdc758fc1a346c9fa4dd37ef19d7972f2a6e72ab0eebf7e +size 1890 diff --git a/game/characters/luna/clothes/top/casual_sweater/0.webp b/game/characters/luna/clothes/top/casual_sweater/0.webp new file mode 100644 index 00000000..c4fb8d7a --- /dev/null +++ b/game/characters/luna/clothes/top/casual_sweater/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13a7fc422203bd1a96ed44d6e3388d30c429997043c1ba44444666392efed8a0 +size 43708 diff --git a/game/characters/luna/clothes/top/casual_sweater/1.webp b/game/characters/luna/clothes/top/casual_sweater/1.webp new file mode 100644 index 00000000..2535b883 --- /dev/null +++ b/game/characters/luna/clothes/top/casual_sweater/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e178c77f5d52694f5c63b53b280a8f64acb3ca610e032e95c8f086f343ee0ade +size 9310 diff --git a/game/characters/luna/clothes/top/casual_sweater/outline.webp b/game/characters/luna/clothes/top/casual_sweater/outline.webp new file mode 100644 index 00000000..f4c5bfc9 --- /dev/null +++ b/game/characters/luna/clothes/top/casual_sweater/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1c039788113d1ec76e8d861098a1fcda5219be3420eb959df13d07365ad71a3 +size 27304 diff --git a/game/characters/luna/clothes/top/flight_attendant_1/0.webp b/game/characters/luna/clothes/top/flight_attendant_1/0.webp new file mode 100644 index 00000000..2aa61c0b --- /dev/null +++ b/game/characters/luna/clothes/top/flight_attendant_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89526febb6fd8a50eac2a5f81b75b63f66b71d696082ca18ce7c4561fc2645a0 +size 12818 diff --git a/game/characters/luna/clothes/top/flight_attendant_1/1.webp b/game/characters/luna/clothes/top/flight_attendant_1/1.webp new file mode 100644 index 00000000..119de4cb --- /dev/null +++ b/game/characters/luna/clothes/top/flight_attendant_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46c4c44cf5238cb60326206811b4ebebfd736d4b3d1431c2bbc12536fadc082e +size 3240 diff --git a/game/characters/luna/clothes/top/flight_attendant_1/outline.webp b/game/characters/luna/clothes/top/flight_attendant_1/outline.webp new file mode 100644 index 00000000..94afcf28 --- /dev/null +++ b/game/characters/luna/clothes/top/flight_attendant_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:019899b4ca81a789f2e7950e97f423e52c006c0a9d354919d06b2eee474f1f4c +size 13878 diff --git a/game/characters/luna/clothes/top/flight_attendant_1/skin.webp b/game/characters/luna/clothes/top/flight_attendant_1/skin.webp new file mode 100644 index 00000000..a47784cd --- /dev/null +++ b/game/characters/luna/clothes/top/flight_attendant_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d84f2a7a593b6fcdf04293db507633a2b8d7eb459db575a68c186f3ad16dd9b5 +size 2852 diff --git a/game/characters/luna/clothes/top/flight_attendant_2/0.webp b/game/characters/luna/clothes/top/flight_attendant_2/0.webp new file mode 100644 index 00000000..06df6b18 --- /dev/null +++ b/game/characters/luna/clothes/top/flight_attendant_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9ada7c4509d0e6b9d82e9927fc980a8c018e975f84641ec10c9e115be71732a +size 14542 diff --git a/game/characters/luna/clothes/top/flight_attendant_2/1.webp b/game/characters/luna/clothes/top/flight_attendant_2/1.webp new file mode 100644 index 00000000..119de4cb --- /dev/null +++ b/game/characters/luna/clothes/top/flight_attendant_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46c4c44cf5238cb60326206811b4ebebfd736d4b3d1431c2bbc12536fadc082e +size 3240 diff --git a/game/characters/luna/clothes/top/flight_attendant_2/outline.webp b/game/characters/luna/clothes/top/flight_attendant_2/outline.webp new file mode 100644 index 00000000..409fe9d6 --- /dev/null +++ b/game/characters/luna/clothes/top/flight_attendant_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ebc8cda063d84138b54bee5c846829b3e531c5ed3a7e150e2b7bb8fb9258c90 +size 15322 diff --git a/game/characters/luna/clothes/top/flight_attendant_2/skin.webp b/game/characters/luna/clothes/top/flight_attendant_2/skin.webp new file mode 100644 index 00000000..3bc7779e --- /dev/null +++ b/game/characters/luna/clothes/top/flight_attendant_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10dbcc79809adc104fc345af7c51ce39b791303b90cbfd39e3845f3a7c959f87 +size 3134 diff --git a/game/characters/luna/clothes/top/harley_quinn/0.webp b/game/characters/luna/clothes/top/harley_quinn/0.webp new file mode 100644 index 00000000..dfd7dd0a --- /dev/null +++ b/game/characters/luna/clothes/top/harley_quinn/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bcaa38007d18ccdc1616073dbca1f0913a7fd6ab0cd32c7a03e068afdf91a3f9 +size 13594 diff --git a/game/characters/luna/clothes/top/harley_quinn/1.webp b/game/characters/luna/clothes/top/harley_quinn/1.webp new file mode 100644 index 00000000..af73b6ce --- /dev/null +++ b/game/characters/luna/clothes/top/harley_quinn/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05b5a854a1de594613e0adf9ca8c1ae1fa1bd579204097df2efa08e0ddafdded +size 1484 diff --git a/game/characters/luna/clothes/top/harley_quinn/2.webp b/game/characters/luna/clothes/top/harley_quinn/2.webp new file mode 100644 index 00000000..ec8bdf27 --- /dev/null +++ b/game/characters/luna/clothes/top/harley_quinn/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74abce10607c67b4fd4b7eda2fb256e2cf35a434f4572db3748b18cec115ee14 +size 2740 diff --git a/game/characters/luna/clothes/top/harley_quinn/3.webp b/game/characters/luna/clothes/top/harley_quinn/3.webp new file mode 100644 index 00000000..2f3983a2 --- /dev/null +++ b/game/characters/luna/clothes/top/harley_quinn/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:019a62b29b3e4dce044ab1dc39249f7ef87b6b90008f7fa10f6d379bb0b8d7e1 +size 3262 diff --git a/game/characters/luna/clothes/top/harley_quinn/extra.webp b/game/characters/luna/clothes/top/harley_quinn/extra.webp new file mode 100644 index 00000000..d3a3e3af --- /dev/null +++ b/game/characters/luna/clothes/top/harley_quinn/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3de5a6e689668c7341c3e79256ed0bfefc3bdba8d9835c3bb184da948f6f3ec +size 5160 diff --git a/game/characters/luna/clothes/top/harley_quinn/outline.webp b/game/characters/luna/clothes/top/harley_quinn/outline.webp new file mode 100644 index 00000000..bb8adc07 --- /dev/null +++ b/game/characters/luna/clothes/top/harley_quinn/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5945c1d48becfdb9c632ec84f979a451ade3bde217092f5ee73bd146ca3e8794 +size 15018 diff --git a/game/characters/luna/clothes/top/muggle_top/0.webp b/game/characters/luna/clothes/top/muggle_top/0.webp new file mode 100644 index 00000000..a6769f9a --- /dev/null +++ b/game/characters/luna/clothes/top/muggle_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:971aeb845c999f9e76cd30ded1b6ebf7bc7fc97d64869539696efdbb04c3d23e +size 6278 diff --git a/game/characters/luna/clothes/top/muggle_top/1.webp b/game/characters/luna/clothes/top/muggle_top/1.webp new file mode 100644 index 00000000..cc06034b --- /dev/null +++ b/game/characters/luna/clothes/top/muggle_top/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:015267f5b6cedd9fc7cfbbbfdda6c35978ff04ab01d25a7f1fa4b1d4c639f4de +size 1796 diff --git a/game/characters/luna/clothes/top/muggle_top/outline.webp b/game/characters/luna/clothes/top/muggle_top/outline.webp new file mode 100644 index 00000000..70130dc0 --- /dev/null +++ b/game/characters/luna/clothes/top/muggle_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18e479e12d1cefa962a188d424467930ab37bbdb08f386f94e5f837de1a04c45 +size 7698 diff --git a/game/characters/luna/clothes/top/nightie_1/0.webp b/game/characters/luna/clothes/top/nightie_1/0.webp new file mode 100644 index 00000000..55c289f7 --- /dev/null +++ b/game/characters/luna/clothes/top/nightie_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8c6ee81fdef075d46d17d148581f7252d4f5bbfecde4e87acc6483dbfa1a7aa +size 22286 diff --git a/game/characters/luna/clothes/top/nightie_1/extra.webp b/game/characters/luna/clothes/top/nightie_1/extra.webp new file mode 100644 index 00000000..28886397 --- /dev/null +++ b/game/characters/luna/clothes/top/nightie_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e4faf4f530a2f5e727897c6dac15cbf1fb92a5568d17650e3fbc3758a2fb2fd +size 8158 diff --git a/game/characters/luna/clothes/top/nightie_1/outline.webp b/game/characters/luna/clothes/top/nightie_1/outline.webp new file mode 100644 index 00000000..c7109958 --- /dev/null +++ b/game/characters/luna/clothes/top/nightie_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f033ede57ee24e3c37a83985b51398021396c3f16e3ad5bce3a8a07cfe2295ff +size 14372 diff --git a/game/characters/luna/clothes/top/nightie_2/0.webp b/game/characters/luna/clothes/top/nightie_2/0.webp new file mode 100644 index 00000000..eb725198 --- /dev/null +++ b/game/characters/luna/clothes/top/nightie_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ebf2cef3e126936818ea460431e52e52a0936d978cae859809c23b1ab18e79c +size 13976 diff --git a/game/characters/luna/clothes/top/nightie_2/extra.webp b/game/characters/luna/clothes/top/nightie_2/extra.webp new file mode 100644 index 00000000..b6b4da0d --- /dev/null +++ b/game/characters/luna/clothes/top/nightie_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3734b4014fbe8522ad9b7cb79a615dfecf7ac7df8d05d6c25441d9462e953bbb +size 9362 diff --git a/game/characters/luna/clothes/top/nightie_2/outline.webp b/game/characters/luna/clothes/top/nightie_2/outline.webp new file mode 100644 index 00000000..1c8973ea --- /dev/null +++ b/game/characters/luna/clothes/top/nightie_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24ac4ad3d0684834786a5ed2e73f5f7d85e181b18b76756881a31adfc5204e7b +size 13264 diff --git a/game/characters/luna/clothes/top/pajama_1/0.webp b/game/characters/luna/clothes/top/pajama_1/0.webp new file mode 100644 index 00000000..c64260c7 --- /dev/null +++ b/game/characters/luna/clothes/top/pajama_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d20155a30faf8ac70350a11a9587a1a003b084eec5789e26574d2c332b973e94 +size 13606 diff --git a/game/characters/luna/clothes/top/pajama_1/1.webp b/game/characters/luna/clothes/top/pajama_1/1.webp new file mode 100644 index 00000000..016c9de4 --- /dev/null +++ b/game/characters/luna/clothes/top/pajama_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:360a9965d88651beeb12c682928e1e73283ecf65c6d1b558ccbe96907bf241da +size 3540 diff --git a/game/characters/luna/clothes/top/pajama_1/extra.webp b/game/characters/luna/clothes/top/pajama_1/extra.webp new file mode 100644 index 00000000..143b184a --- /dev/null +++ b/game/characters/luna/clothes/top/pajama_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ec8be1d089436296dd6375761b6933390a6f158bf72c1c7fdcc99a6795fa53d +size 17548 diff --git a/game/characters/luna/clothes/top/pajama_1/outline.webp b/game/characters/luna/clothes/top/pajama_1/outline.webp new file mode 100644 index 00000000..39bf4a57 --- /dev/null +++ b/game/characters/luna/clothes/top/pajama_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6f2305501a9cc5ffbc56b9be1b081ed13de8c824d6f198fadd0bbd737ae818d +size 20434 diff --git a/game/characters/luna/clothes/top/pajama_1/skin.webp b/game/characters/luna/clothes/top/pajama_1/skin.webp new file mode 100644 index 00000000..d590d01f --- /dev/null +++ b/game/characters/luna/clothes/top/pajama_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:258fd8a420d05bd981409e03e76035275cf964f906804eb530889d9c4f7df0de +size 5920 diff --git a/game/characters/luna/clothes/top/party_dress/0.webp b/game/characters/luna/clothes/top/party_dress/0.webp new file mode 100644 index 00000000..947d5b4e --- /dev/null +++ b/game/characters/luna/clothes/top/party_dress/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1453368de667a79065f7ed2998f8499247878586b36812326acd14da1e9f5146 +size 28144 diff --git a/game/characters/luna/clothes/top/party_dress/1.webp b/game/characters/luna/clothes/top/party_dress/1.webp new file mode 100644 index 00000000..802498cf --- /dev/null +++ b/game/characters/luna/clothes/top/party_dress/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f025400c31409aa8287812cbe0bbba55524944eeb1d52e2c430697c6cec36290 +size 32536 diff --git a/game/characters/luna/clothes/top/party_dress/outline.webp b/game/characters/luna/clothes/top/party_dress/outline.webp new file mode 100644 index 00000000..10713596 --- /dev/null +++ b/game/characters/luna/clothes/top/party_dress/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5d67a3478435c49da5bcf6122ecb5084e250d5bc2eb5a66eeb1b6962d166e11 +size 47182 diff --git a/game/characters/luna/clothes/top/party_dress/skin.webp b/game/characters/luna/clothes/top/party_dress/skin.webp new file mode 100644 index 00000000..559119e0 --- /dev/null +++ b/game/characters/luna/clothes/top/party_dress/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d59ad58b29d8d8ce7ff88e5ab780621fbe6696b7cbbb02881e4a4dc8f5fe7d0d +size 2862 diff --git a/game/characters/luna/clothes/top/police_shirt/0.webp b/game/characters/luna/clothes/top/police_shirt/0.webp new file mode 100644 index 00000000..fd6d7936 --- /dev/null +++ b/game/characters/luna/clothes/top/police_shirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1af20b132d64ccd5fb2d27b97871eff11be9e4317894669781daf5d103d1d79e +size 14930 diff --git a/game/characters/luna/clothes/top/police_shirt/1.webp b/game/characters/luna/clothes/top/police_shirt/1.webp new file mode 100644 index 00000000..b2da3da3 --- /dev/null +++ b/game/characters/luna/clothes/top/police_shirt/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4274096dc52aa87ec18a67a31228410570c5cbf6650a579a9a52a6f1a37dadd +size 1612 diff --git a/game/characters/luna/clothes/top/police_shirt/2.webp b/game/characters/luna/clothes/top/police_shirt/2.webp new file mode 100644 index 00000000..2cb3380a --- /dev/null +++ b/game/characters/luna/clothes/top/police_shirt/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e2735d2bc13e569e9ddd2cc2c3060231d18bd0362bc148d580e1369efa5c8e7 +size 1256 diff --git a/game/characters/luna/clothes/top/police_shirt/3.webp b/game/characters/luna/clothes/top/police_shirt/3.webp new file mode 100644 index 00000000..9afb8ab5 --- /dev/null +++ b/game/characters/luna/clothes/top/police_shirt/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7ee0ea5d880ba7fa4c7653b11b3187e629f2326500de3eac14c9429d079d48f +size 1598 diff --git a/game/characters/luna/clothes/top/police_shirt/extra.webp b/game/characters/luna/clothes/top/police_shirt/extra.webp new file mode 100644 index 00000000..09161782 --- /dev/null +++ b/game/characters/luna/clothes/top/police_shirt/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5e631904821e36e787a684296d9a73f1b104520fedc43a0237ffa4fc8997aac +size 782 diff --git a/game/characters/luna/clothes/top/police_shirt/outline.webp b/game/characters/luna/clothes/top/police_shirt/outline.webp new file mode 100644 index 00000000..1642d482 --- /dev/null +++ b/game/characters/luna/clothes/top/police_shirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd6adbc5643852cddbd71cc1e3d7f3d58c20fd81cbb0f855930c9ee3406f5b1e +size 14050 diff --git a/game/characters/luna/clothes/top/police_shirt/skin.webp b/game/characters/luna/clothes/top/police_shirt/skin.webp new file mode 100644 index 00000000..b09d6530 --- /dev/null +++ b/game/characters/luna/clothes/top/police_shirt/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:485a5646ea113412e63f29ac4cb9c296501af261e5e8a6f8f528637a1981484a +size 3402 diff --git a/game/characters/luna/clothes/top/summer_top_1/0.webp b/game/characters/luna/clothes/top/summer_top_1/0.webp new file mode 100644 index 00000000..ec08f056 --- /dev/null +++ b/game/characters/luna/clothes/top/summer_top_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8810a82f99199e84c555e70f6c3213d450ff9318d0df80ee16cbd87392a9d862 +size 10878 diff --git a/game/characters/luna/clothes/top/summer_top_1/outline.webp b/game/characters/luna/clothes/top/summer_top_1/outline.webp new file mode 100644 index 00000000..0064bcf7 --- /dev/null +++ b/game/characters/luna/clothes/top/summer_top_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9a145944e41c8a8de0fcbb54744db4ba3f41a5b8944a584968e18a780bed426 +size 7932 diff --git a/game/characters/luna/clothes/top/summer_top_1/skin.webp b/game/characters/luna/clothes/top/summer_top_1/skin.webp new file mode 100644 index 00000000..48503c4a --- /dev/null +++ b/game/characters/luna/clothes/top/summer_top_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ec282b7323705118dfa283ec2a1c7d8a3a75f68cd83c616d14af5e201aec282 +size 5148 diff --git a/game/characters/luna/clothes/top/summer_top_2/0.webp b/game/characters/luna/clothes/top/summer_top_2/0.webp new file mode 100644 index 00000000..3ef7a9e8 --- /dev/null +++ b/game/characters/luna/clothes/top/summer_top_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cad4da1cb8f698384afec7cead9efe1d18fb070f7f4badf69e50e22d74b876b4 +size 5982 diff --git a/game/characters/luna/clothes/top/summer_top_2/outline.webp b/game/characters/luna/clothes/top/summer_top_2/outline.webp new file mode 100644 index 00000000..9fc5bd73 --- /dev/null +++ b/game/characters/luna/clothes/top/summer_top_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24fceabde426cc232e4e547824e647761c2606761117a5aaa0c76998db99a8e3 +size 6096 diff --git a/game/characters/luna/clothes/top/summer_top_2/skin.webp b/game/characters/luna/clothes/top/summer_top_2/skin.webp new file mode 100644 index 00000000..e641e6fc --- /dev/null +++ b/game/characters/luna/clothes/top/summer_top_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49f73e08fa0a24a1a18250774265ef778665ddc1ded300239932ba0a0350ec0f +size 6734 diff --git a/game/characters/luna/clothes/top/swimsuit_1/0.webp b/game/characters/luna/clothes/top/swimsuit_1/0.webp new file mode 100644 index 00000000..880322b1 --- /dev/null +++ b/game/characters/luna/clothes/top/swimsuit_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:663f352f452550b56335bb2eaf926d1021e9b9fa9a92c412c324417097a3ab97 +size 6014 diff --git a/game/characters/luna/clothes/top/swimsuit_1/1.webp b/game/characters/luna/clothes/top/swimsuit_1/1.webp new file mode 100644 index 00000000..28d55b82 --- /dev/null +++ b/game/characters/luna/clothes/top/swimsuit_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8feb5bd7c479d1474005b1f831d3ad01be0035e33de6fb19127ba3625250afe +size 2468 diff --git a/game/characters/luna/clothes/top/swimsuit_1/extra.webp b/game/characters/luna/clothes/top/swimsuit_1/extra.webp new file mode 100644 index 00000000..b9352b68 --- /dev/null +++ b/game/characters/luna/clothes/top/swimsuit_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e569467634dd1da315e7b26a2c924f3b9b004fcaa2516320772cb4e7be40fd63 +size 5782 diff --git a/game/characters/luna/clothes/top/swimsuit_1/outline.webp b/game/characters/luna/clothes/top/swimsuit_1/outline.webp new file mode 100644 index 00000000..0685f800 --- /dev/null +++ b/game/characters/luna/clothes/top/swimsuit_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da429d9e289c05b24c50342929f334cd835ae8142e5d25050cf5f9fdcc3ef112 +size 9342 diff --git a/game/characters/luna/clothes/top/swimsuit_1/skin.webp b/game/characters/luna/clothes/top/swimsuit_1/skin.webp new file mode 100644 index 00000000..f6f3f23f --- /dev/null +++ b/game/characters/luna/clothes/top/swimsuit_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab7bb0747cb1583f013221c5118e924b1e3ba4210ec8351193e4f9e8c43afb8a +size 3710 diff --git a/game/characters/luna/clothes/top/top_school_1/0.webp b/game/characters/luna/clothes/top/top_school_1/0.webp new file mode 100644 index 00000000..d8b7a492 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:530c57d9652db15c126261ff16cfe91dcfbc28c2c27fc12ac821b5d1d25e827c +size 7888 diff --git a/game/characters/luna/clothes/top/top_school_1/0_front.webp b/game/characters/luna/clothes/top/top_school_1/0_front.webp new file mode 100644 index 00000000..4d96aa6c --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_1/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a53b801f34545f6482a5c9d736696365f189176a145cb757108a6df105364db +size 3812 diff --git a/game/characters/luna/clothes/top/top_school_1/1.webp b/game/characters/luna/clothes/top/top_school_1/1.webp new file mode 100644 index 00000000..3ca73602 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90f26d0919a29f444314a95097017a57805534545c6e8c9ced25b9ee40c8ebb4 +size 9268 diff --git a/game/characters/luna/clothes/top/top_school_1/2.webp b/game/characters/luna/clothes/top/top_school_1/2.webp new file mode 100644 index 00000000..6229ab51 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0268752b2dbe2256331a2227d2644ad8ac0ca1da22cf82cf291a6d9cd5fa3ba +size 9268 diff --git a/game/characters/luna/clothes/top/top_school_1/3.webp b/game/characters/luna/clothes/top/top_school_1/3.webp new file mode 100644 index 00000000..88a1fb70 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:caa8339cc789cdb98f587a01cae1b0deff4dce716ac05bed5fffda35f1fc51f5 +size 8754 diff --git a/game/characters/luna/clothes/top/top_school_1/extra.webp b/game/characters/luna/clothes/top/top_school_1/extra.webp new file mode 100644 index 00000000..e6c57afc --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fce20f9635b782c826ccb88519fa91f718ba1d5f3ce590e5ea9845cfa87a681c +size 5922 diff --git a/game/characters/luna/clothes/top/top_school_1/outline.webp b/game/characters/luna/clothes/top/top_school_1/outline.webp new file mode 100644 index 00000000..d656b45a --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83d3fd9f0f1af802632e507d09dd20fbf9baaabfc7dea38fae2434c04127e6e4 +size 20262 diff --git a/game/characters/luna/clothes/top/top_school_1/outline_front.webp b/game/characters/luna/clothes/top/top_school_1/outline_front.webp new file mode 100644 index 00000000..6cfcaa2e --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_1/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbf49d9d3b28b62b25e8c354bc59c54876c80d48bb851791bc65c591e0d0cd26 +size 3940 diff --git a/game/characters/luna/clothes/top/top_school_1/skin.webp b/game/characters/luna/clothes/top/top_school_1/skin.webp new file mode 100644 index 00000000..862e704f --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e69bb7831816ea08ccfca76d2bb8d78ea3d585a225de28b210220bc260a26623 +size 3496 diff --git a/game/characters/luna/clothes/top/top_school_2/0.webp b/game/characters/luna/clothes/top/top_school_2/0.webp new file mode 100644 index 00000000..36a34827 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67064d5f920b84b591b7c3c984e013faf3222248b28ca48fbd74421d56d46782 +size 7996 diff --git a/game/characters/luna/clothes/top/top_school_2/0_front.webp b/game/characters/luna/clothes/top/top_school_2/0_front.webp new file mode 100644 index 00000000..4d96aa6c --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_2/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a53b801f34545f6482a5c9d736696365f189176a145cb757108a6df105364db +size 3812 diff --git a/game/characters/luna/clothes/top/top_school_2/1.webp b/game/characters/luna/clothes/top/top_school_2/1.webp new file mode 100644 index 00000000..3ca73602 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90f26d0919a29f444314a95097017a57805534545c6e8c9ced25b9ee40c8ebb4 +size 9268 diff --git a/game/characters/luna/clothes/top/top_school_2/2.webp b/game/characters/luna/clothes/top/top_school_2/2.webp new file mode 100644 index 00000000..383d87de --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ad1473df92620e3455ae9f6d43f072ed204eb075891a9720ad005e712ef6ebe +size 8112 diff --git a/game/characters/luna/clothes/top/top_school_2/3.webp b/game/characters/luna/clothes/top/top_school_2/3.webp new file mode 100644 index 00000000..d17f80ed --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_2/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd65c53258d838e62b4c1059299451d30da480e1e87f83262bd50c5406e44ba5 +size 7762 diff --git a/game/characters/luna/clothes/top/top_school_2/extra.webp b/game/characters/luna/clothes/top/top_school_2/extra.webp new file mode 100644 index 00000000..662b21ba --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8f61d7ebebeb60cdc87601805f7c585b82fe909114a5ebb9793444cefe8e725 +size 4896 diff --git a/game/characters/luna/clothes/top/top_school_2/outline.webp b/game/characters/luna/clothes/top/top_school_2/outline.webp new file mode 100644 index 00000000..cf8fd41b --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c74eb6615b1a9a1152e6cf6a4582e85f90a1aa7bf73433ea1da5cda317a0413c +size 19874 diff --git a/game/characters/luna/clothes/top/top_school_2/outline_front.webp b/game/characters/luna/clothes/top/top_school_2/outline_front.webp new file mode 100644 index 00000000..6cfcaa2e --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_2/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbf49d9d3b28b62b25e8c354bc59c54876c80d48bb851791bc65c591e0d0cd26 +size 3940 diff --git a/game/characters/luna/clothes/top/top_school_2/skin.webp b/game/characters/luna/clothes/top/top_school_2/skin.webp new file mode 100644 index 00000000..862e704f --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e69bb7831816ea08ccfca76d2bb8d78ea3d585a225de28b210220bc260a26623 +size 3496 diff --git a/game/characters/luna/clothes/top/top_school_3/0.webp b/game/characters/luna/clothes/top/top_school_3/0.webp new file mode 100644 index 00000000..bb65512f --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1568d9f3faa0fe54cc8261df9a2bfcb6fe2f5a1c342f725761b6aa58c46311a7 +size 8638 diff --git a/game/characters/luna/clothes/top/top_school_3/0_front.webp b/game/characters/luna/clothes/top/top_school_3/0_front.webp new file mode 100644 index 00000000..621acba8 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_3/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:384d5f3e48067f9a126c92fbf328d8d48a938720636ea3e37f43723d3fc6de5f +size 3812 diff --git a/game/characters/luna/clothes/top/top_school_3/1.webp b/game/characters/luna/clothes/top/top_school_3/1.webp new file mode 100644 index 00000000..40a5577c --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e7ac6be246dd12eee1af7d19ae8752a269832116a0c50490dfa749373d19056 +size 9284 diff --git a/game/characters/luna/clothes/top/top_school_3/2.webp b/game/characters/luna/clothes/top/top_school_3/2.webp new file mode 100644 index 00000000..e9802adb --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_3/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df478a650ed403a156e270334802a73826ab3a174d44c3086fb3c8dee0d6fedf +size 7828 diff --git a/game/characters/luna/clothes/top/top_school_3/3.webp b/game/characters/luna/clothes/top/top_school_3/3.webp new file mode 100644 index 00000000..6e4202fa --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_3/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f5341b028944ac0714c3b4711078bb81be0b73ca22acc950e69a9e66fe2808b +size 7388 diff --git a/game/characters/luna/clothes/top/top_school_3/extra.webp b/game/characters/luna/clothes/top/top_school_3/extra.webp new file mode 100644 index 00000000..e85c0aa4 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_3/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d007cc3bc130e3741d678dfee5d7fa5abf9665ea74e64d17a1a38b848e3e2984 +size 4816 diff --git a/game/characters/luna/clothes/top/top_school_3/outline.webp b/game/characters/luna/clothes/top/top_school_3/outline.webp new file mode 100644 index 00000000..407d353e --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:821b3571a34666d332072cd8974adc74e3f98d6efbb4ac4cfed541b4ba18f067 +size 19514 diff --git a/game/characters/luna/clothes/top/top_school_3/outline_front.webp b/game/characters/luna/clothes/top/top_school_3/outline_front.webp new file mode 100644 index 00000000..ec750f4a --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_3/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:463c3c06b05524f563366e1e4bd408d958ef0816fd4b69af2746b285a79ae559 +size 3996 diff --git a/game/characters/luna/clothes/top/top_school_3/skin.webp b/game/characters/luna/clothes/top/top_school_3/skin.webp new file mode 100644 index 00000000..b2ca389d --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_3/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:715ac1c48a84b933760730793a0776bf8631aba4cf5e3ca142046170d179304e +size 5158 diff --git a/game/characters/luna/clothes/top/top_school_4/0.webp b/game/characters/luna/clothes/top/top_school_4/0.webp new file mode 100644 index 00000000..2f493475 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a50158f759dbe74b55bf3b761049e101aa8db3f49bd801b9e18245bcb84df54e +size 10274 diff --git a/game/characters/luna/clothes/top/top_school_4/0_front.webp b/game/characters/luna/clothes/top/top_school_4/0_front.webp new file mode 100644 index 00000000..53edf936 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_4/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e11dc176c4e468c030ead21abaf18bc168333de7495b05b312bd9d5312c5233 +size 5234 diff --git a/game/characters/luna/clothes/top/top_school_4/1.webp b/game/characters/luna/clothes/top/top_school_4/1.webp new file mode 100644 index 00000000..430e17bf --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6a453395e063b00381a4cf27c810f616cbedf6a3e50d1e211b023aa8bfd1da0 +size 6396 diff --git a/game/characters/luna/clothes/top/top_school_4/2.webp b/game/characters/luna/clothes/top/top_school_4/2.webp new file mode 100644 index 00000000..5dacb565 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_4/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ccc7f49364805b65832cc55e46f907bf652dad4091e1a634a2a418e4f87b808 +size 5914 diff --git a/game/characters/luna/clothes/top/top_school_4/extra.webp b/game/characters/luna/clothes/top/top_school_4/extra.webp new file mode 100644 index 00000000..e4e8d6b9 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_4/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ea981825a8e517bdfadffc26ca0ba30fd3f1e76edb338eb0b4d211b09102f9d +size 4434 diff --git a/game/characters/luna/clothes/top/top_school_4/outline.webp b/game/characters/luna/clothes/top/top_school_4/outline.webp new file mode 100644 index 00000000..67d95b69 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e86dd335e5ce5d91487557bb46420087717ba97d4b14fa1e26414d4886a89850 +size 20054 diff --git a/game/characters/luna/clothes/top/top_school_4/outline_front.webp b/game/characters/luna/clothes/top/top_school_4/outline_front.webp new file mode 100644 index 00000000..d420e709 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_4/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b6e7ed238ab01db5a8fb1d902faffbd499dc3b3cf8edc0a8df5afd6cf62a7c9 +size 5574 diff --git a/game/characters/luna/clothes/top/top_school_4/skin.webp b/game/characters/luna/clothes/top/top_school_4/skin.webp new file mode 100644 index 00000000..0997cac6 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_4/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6461098e8c342d9712721cba13ce6aba6da531812af7cd3a4d279bdef3141692 +size 3472 diff --git a/game/characters/luna/clothes/top/top_school_5/0.webp b/game/characters/luna/clothes/top/top_school_5/0.webp new file mode 100644 index 00000000..5fae790a --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_5/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8567d1249b8234ed8be8318810e70658fed3aaf5a75ed45684931543d03eddce +size 10048 diff --git a/game/characters/luna/clothes/top/top_school_5/0_front.webp b/game/characters/luna/clothes/top/top_school_5/0_front.webp new file mode 100644 index 00000000..038a9814 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_5/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0f2ddeb55511f21c1f94d1a8124b39eb03133aef23b25d8d400f69c4756d1ed +size 5406 diff --git a/game/characters/luna/clothes/top/top_school_5/1.webp b/game/characters/luna/clothes/top/top_school_5/1.webp new file mode 100644 index 00000000..5e0ec352 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_5/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e68c51c0f363319aea6239daed8582fd1242bead3b24cd2ae7a5da1af6940cb4 +size 3846 diff --git a/game/characters/luna/clothes/top/top_school_5/2.webp b/game/characters/luna/clothes/top/top_school_5/2.webp new file mode 100644 index 00000000..f738db1d --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_5/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:238fb0e39a158ebbb378cf1d0db62960deb1328e62f35546ba1781787f3700a4 +size 3352 diff --git a/game/characters/luna/clothes/top/top_school_5/extra.webp b/game/characters/luna/clothes/top/top_school_5/extra.webp new file mode 100644 index 00000000..581dd5e3 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_5/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebb87bc5f5acc73f4edf62b800fe4b49e39eaadddf1dff71ba1a12f51f8b3b27 +size 3342 diff --git a/game/characters/luna/clothes/top/top_school_5/outline.webp b/game/characters/luna/clothes/top/top_school_5/outline.webp new file mode 100644 index 00000000..95f9f775 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_5/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0009c4ebdf7e3b4a7401249d49c7bc6d9763d38ddbd67b18f6df064937786b08 +size 16554 diff --git a/game/characters/luna/clothes/top/top_school_5/outline_front.webp b/game/characters/luna/clothes/top/top_school_5/outline_front.webp new file mode 100644 index 00000000..015cab05 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_5/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53f213bb682b6119cfc620aef04449ae7c054e6b4a1c57711e8dcffb73e826c7 +size 6062 diff --git a/game/characters/luna/clothes/top/top_school_5/skin.webp b/game/characters/luna/clothes/top/top_school_5/skin.webp new file mode 100644 index 00000000..0997cac6 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_5/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6461098e8c342d9712721cba13ce6aba6da531812af7cd3a4d279bdef3141692 +size 3472 diff --git a/game/characters/luna/clothes/top/top_school_6/0.webp b/game/characters/luna/clothes/top/top_school_6/0.webp new file mode 100644 index 00000000..8c914ebb --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_6/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b778b1a547ba36baac2ee2f6bc543d80019f77b6476a8c423eb9fabe432edc8 +size 10568 diff --git a/game/characters/luna/clothes/top/top_school_6/0_front.webp b/game/characters/luna/clothes/top/top_school_6/0_front.webp new file mode 100644 index 00000000..9288dc61 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_6/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ea88c52c08734c09fa7bf958d59f7a8a117b04f99b3ec0d2a0212ce84bc5ecb +size 5804 diff --git a/game/characters/luna/clothes/top/top_school_6/1.webp b/game/characters/luna/clothes/top/top_school_6/1.webp new file mode 100644 index 00000000..5e0ec352 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_6/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e68c51c0f363319aea6239daed8582fd1242bead3b24cd2ae7a5da1af6940cb4 +size 3846 diff --git a/game/characters/luna/clothes/top/top_school_6/2.webp b/game/characters/luna/clothes/top/top_school_6/2.webp new file mode 100644 index 00000000..f738db1d --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_6/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:238fb0e39a158ebbb378cf1d0db62960deb1328e62f35546ba1781787f3700a4 +size 3352 diff --git a/game/characters/luna/clothes/top/top_school_6/extra.webp b/game/characters/luna/clothes/top/top_school_6/extra.webp new file mode 100644 index 00000000..34fa4ee4 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_6/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:288bd206d14ba695380c4ef3586a94e65e18a172071af5a64eb1099694e2264f +size 3226 diff --git a/game/characters/luna/clothes/top/top_school_6/outline.webp b/game/characters/luna/clothes/top/top_school_6/outline.webp new file mode 100644 index 00000000..c3a584f9 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_6/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f075d1260f1606aad7aa65a787c03a5a826aa2140d8960fac6382cc01981eac +size 16464 diff --git a/game/characters/luna/clothes/top/top_school_6/outline_front.webp b/game/characters/luna/clothes/top/top_school_6/outline_front.webp new file mode 100644 index 00000000..e8be8d0c --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_6/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb6761a68d04b736abad52109a55b9d0862b53817c790615ee1fab6dd07ffa16 +size 6376 diff --git a/game/characters/luna/clothes/top/top_school_6/skin.webp b/game/characters/luna/clothes/top/top_school_6/skin.webp new file mode 100644 index 00000000..b71d0748 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_6/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0992bf79547104d182b452c0ec306e1fa72ca5df324ac7abe80d81c5e8b14329 +size 5084 diff --git a/game/characters/luna/clothes/top/top_school_crop/0.webp b/game/characters/luna/clothes/top/top_school_crop/0.webp new file mode 100644 index 00000000..05360cc7 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_crop/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2ccd5fee2b549920260472fd2ba5604957b4dfe7d56845c3de399aff081c4cc +size 10560 diff --git a/game/characters/luna/clothes/top/top_school_crop/1.webp b/game/characters/luna/clothes/top/top_school_crop/1.webp new file mode 100644 index 00000000..5e0ec352 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_crop/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e68c51c0f363319aea6239daed8582fd1242bead3b24cd2ae7a5da1af6940cb4 +size 3846 diff --git a/game/characters/luna/clothes/top/top_school_crop/2.webp b/game/characters/luna/clothes/top/top_school_crop/2.webp new file mode 100644 index 00000000..f738db1d --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_crop/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:238fb0e39a158ebbb378cf1d0db62960deb1328e62f35546ba1781787f3700a4 +size 3352 diff --git a/game/characters/luna/clothes/top/top_school_crop/outline.webp b/game/characters/luna/clothes/top/top_school_crop/outline.webp new file mode 100644 index 00000000..bbd84db9 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_crop/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05a318f50cfaed16ccdcff1d1ee8f18b8c3ada8abe41b62eabd10a1ace2e819f +size 16232 diff --git a/game/characters/luna/clothes/top/top_school_crop/skin.webp b/game/characters/luna/clothes/top/top_school_crop/skin.webp new file mode 100644 index 00000000..e7fecf10 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_crop/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ed356863f3a0350c47ac4a24c80c7b3ded08ea4506d698bfed185312f2a5669 +size 6506 diff --git a/game/characters/luna/clothes/top/top_school_vest/0.webp b/game/characters/luna/clothes/top/top_school_vest/0.webp new file mode 100644 index 00000000..1e854990 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_vest/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99c9a0b84bf3f14ca4cb3c7630921ec5376b6191253a1f0aeb8041b0b2bc9ed2 +size 9246 diff --git a/game/characters/luna/clothes/top/top_school_vest/1.webp b/game/characters/luna/clothes/top/top_school_vest/1.webp new file mode 100644 index 00000000..0519a611 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_vest/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6914111eac25cde6e20e95fffb70c9f235b6f69a4d949f38845e02be5d9e94a3 +size 7374 diff --git a/game/characters/luna/clothes/top/top_school_vest/2.webp b/game/characters/luna/clothes/top/top_school_vest/2.webp new file mode 100644 index 00000000..a5fd600e --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_vest/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d04dc84210c961cae942ee6b9830c50757ee91eae3e1f6d423df34e2a03b4c0 +size 7546 diff --git a/game/characters/luna/clothes/top/top_school_vest/extra.webp b/game/characters/luna/clothes/top/top_school_vest/extra.webp new file mode 100644 index 00000000..fee6d392 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_vest/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36858a2895d97a8bc6900086c8b54e0fde00fba440ecc137183fb3b7083e2bd3 +size 5354 diff --git a/game/characters/luna/clothes/top/top_school_vest/outline.webp b/game/characters/luna/clothes/top/top_school_vest/outline.webp new file mode 100644 index 00000000..5d7dcc1b --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_vest/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ef2f714643d9cdccc3c869092d840a713162180cb901c973eaace63ae09b10e +size 14634 diff --git a/game/characters/luna/clothes/top/top_school_vest/skin.webp b/game/characters/luna/clothes/top/top_school_vest/skin.webp new file mode 100644 index 00000000..8fcda466 --- /dev/null +++ b/game/characters/luna/clothes/top/top_school_vest/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:236ab9ed768fe4cd55cd66564daa010a15d80084fed7ed5b53d4798c714a0b86 +size 4540 diff --git a/game/characters/luna/cum/body/heavy.webp b/game/characters/luna/cum/body/heavy.webp new file mode 100644 index 00000000..38dc3be8 --- /dev/null +++ b/game/characters/luna/cum/body/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fe2c5e1440f7b08040ea6979ea0720a83360c5ec5f6900290712b09eabf2c60 +size 22000 diff --git a/game/characters/luna/cum/body/light.webp b/game/characters/luna/cum/body/light.webp new file mode 100644 index 00000000..f6692983 --- /dev/null +++ b/game/characters/luna/cum/body/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5286500f8bb67683da045a1b3fe6027b61124c9fb61ccea5190fcb6c1a26d088 +size 8406 diff --git a/game/characters/luna/cum/breasts/heavy.webp b/game/characters/luna/cum/breasts/heavy.webp new file mode 100644 index 00000000..1778c73a --- /dev/null +++ b/game/characters/luna/cum/breasts/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49c967935ca5ab21cb305c95fa2117fe8ae7830adb20ea0b2748da2bf98e45eb +size 21588 diff --git a/game/characters/luna/cum/breasts/light.webp b/game/characters/luna/cum/breasts/light.webp new file mode 100644 index 00000000..326187b0 --- /dev/null +++ b/game/characters/luna/cum/breasts/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85391f869b20384524ad9a15a9536b420d53fe99fdfd47a57c09832d99218b9f +size 7340 diff --git a/game/characters/luna/cum/crotch/heavy.webp b/game/characters/luna/cum/crotch/heavy.webp new file mode 100644 index 00000000..abf99a15 --- /dev/null +++ b/game/characters/luna/cum/crotch/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afe9743c1281c55279bd027ac045a8427ed6ffc345d4402079e55085b30bd409 +size 19230 diff --git a/game/characters/luna/cum/crotch/light.webp b/game/characters/luna/cum/crotch/light.webp new file mode 100644 index 00000000..807433ba --- /dev/null +++ b/game/characters/luna/cum/crotch/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:604ec73a39f41c72c8a1cf84aed37c9f8454adf85e496c3a8a5ac7aaba9903ec +size 7198 diff --git a/game/characters/luna/cum/face/heavy.webp b/game/characters/luna/cum/face/heavy.webp new file mode 100644 index 00000000..008e5b41 --- /dev/null +++ b/game/characters/luna/cum/face/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c60507756048a91c1c68492714ccd63db147a577b9597af817f59a06e49575dc +size 10552 diff --git a/game/characters/luna/cum/face/light.webp b/game/characters/luna/cum/face/light.webp new file mode 100644 index 00000000..dd8c8623 --- /dev/null +++ b/game/characters/luna/cum/face/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:baa1b5134b28f37276d0c36825bb7f0d489bcef523cbe9c36077f4f04d67e86b +size 3512 diff --git a/game/characters/luna/cum/hair/heavy.webp b/game/characters/luna/cum/hair/heavy.webp new file mode 100644 index 00000000..841e6feb --- /dev/null +++ b/game/characters/luna/cum/hair/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d58546a21789f5a3c53858f5fdb46c5dcbf775ee87add5ed8515de02b58cbd9 +size 19014 diff --git a/game/characters/luna/cum/hair/light.webp b/game/characters/luna/cum/hair/light.webp new file mode 100644 index 00000000..e565946b --- /dev/null +++ b/game/characters/luna/cum/hair/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb500bb37573ed0b5c256970560413fe83ae1dfbe538ba4358d848acf5df761e +size 7476 diff --git a/game/characters/luna/cum/legs/heavy.webp b/game/characters/luna/cum/legs/heavy.webp new file mode 100644 index 00000000..bd24376c --- /dev/null +++ b/game/characters/luna/cum/legs/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49382ba4d017b50294b84908e2eb7433384011ee094e2b6caece28416498cf94 +size 18182 diff --git a/game/characters/luna/cum/legs/light.webp b/game/characters/luna/cum/legs/light.webp new file mode 100644 index 00000000..15ac1f26 --- /dev/null +++ b/game/characters/luna/cum/legs/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bb1519b6786ff010fa3ed8741c197ff5d4c37737614ddaa732feaff32a4ad56 +size 6054 diff --git a/game/characters/luna/cum/pussy/heavy.webp b/game/characters/luna/cum/pussy/heavy.webp new file mode 100644 index 00000000..bf24f975 --- /dev/null +++ b/game/characters/luna/cum/pussy/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c36a00d597a6e08cf8eeef5146851332e48904e52c08d9f287f0e78b0a83786f +size 4634 diff --git a/game/characters/luna/cum/pussy/light.webp b/game/characters/luna/cum/pussy/light.webp new file mode 100644 index 00000000..c6d809cc --- /dev/null +++ b/game/characters/luna/cum/pussy/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fbd4cb276916dd023e771b8087984af0f06792d9c06a8bb8c014c54fba66d82 +size 2096 diff --git a/game/characters/luna/cum/pussy/squirt.webp b/game/characters/luna/cum/pussy/squirt.webp new file mode 100644 index 00000000..e9ef3e3c --- /dev/null +++ b/game/characters/luna/cum/pussy/squirt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d686b2f827ad0a486de64e44393a471f6d8b248acf8bc1305f21ad3c79c5c862 +size 3100 diff --git a/game/characters/luna/cum/pussy/squirt_post.webp b/game/characters/luna/cum/pussy/squirt_post.webp new file mode 100644 index 00000000..c43f2fd5 --- /dev/null +++ b/game/characters/luna/cum/pussy/squirt_post.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:beb99a1cddfdf3510c02d66ec5653dd64ad3bce15ca2e8204b3d0baf73bbdfce +size 3814 diff --git a/game/characters/luna/cum/pussy/wet.webp b/game/characters/luna/cum/pussy/wet.webp new file mode 100644 index 00000000..b85a4d60 --- /dev/null +++ b/game/characters/luna/cum/pussy/wet.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e069a4b0f74ab0264dab7295c4ff69a51c17d65b5de92f728f1bf634636551f +size 820 diff --git a/game/characters/luna/emote/angry.webp b/game/characters/luna/emote/angry.webp new file mode 100644 index 00000000..d881e8e0 --- /dev/null +++ b/game/characters/luna/emote/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:928f00664072a807193943f1c605044001c3e0b52e06884e5284e1995452afb3 +size 3112 diff --git a/game/characters/luna/emote/confused.webp b/game/characters/luna/emote/confused.webp new file mode 100644 index 00000000..f156f1bd --- /dev/null +++ b/game/characters/luna/emote/confused.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b57f238ad5227397251dbe78cf8bf3fbe3b8109eacae1942d74cd4d54f35302 +size 17656 diff --git a/game/characters/luna/emote/happy.webp b/game/characters/luna/emote/happy.webp new file mode 100644 index 00000000..96a28857 --- /dev/null +++ b/game/characters/luna/emote/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9195d6d9aaf039b4627f053cba3cf0c5f7bd8b6c95429dc20fd3d8b53419e111 +size 15884 diff --git a/game/characters/luna/emote/hearts.webp b/game/characters/luna/emote/hearts.webp new file mode 100644 index 00000000..25c13a52 --- /dev/null +++ b/game/characters/luna/emote/hearts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dad2f02607e2599dfc9c272851ae949daa39f50d19b32cdd8a270073fae995ae +size 21144 diff --git a/game/characters/luna/emote/shocked.webp b/game/characters/luna/emote/shocked.webp new file mode 100644 index 00000000..046f2970 --- /dev/null +++ b/game/characters/luna/emote/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dac6fa59b676e28e6a6582ff5eed86010855b28d0d89571e2ccf7648a8be631 +size 12642 diff --git a/game/characters/luna/emote/sweat.webp b/game/characters/luna/emote/sweat.webp new file mode 100644 index 00000000..325a4ace --- /dev/null +++ b/game/characters/luna/emote/sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42ce0a2e422cf5c52aa7e1fa06661e0ed96dd082e5a44be532121e0b1a688711 +size 3758 diff --git a/game/characters/luna/face/cheeks/blush.webp b/game/characters/luna/face/cheeks/blush.webp new file mode 100644 index 00000000..f534498c --- /dev/null +++ b/game/characters/luna/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da6c38661c177f57ea22624a9ef948b8fb8d60ed9c94406bd857e43a91aeb9a9 +size 9906 diff --git a/game/characters/luna/face/eyebrows/angry.webp b/game/characters/luna/face/eyebrows/angry.webp new file mode 100644 index 00000000..ca4bb259 --- /dev/null +++ b/game/characters/luna/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:433c353748a15ec19ea01ba47b1668d44816f36dd178060ba183fff6cd09b784 +size 3856 diff --git a/game/characters/luna/face/eyebrows/angry_skin.webp b/game/characters/luna/face/eyebrows/angry_skin.webp new file mode 100644 index 00000000..e7318736 --- /dev/null +++ b/game/characters/luna/face/eyebrows/angry_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67943b34a59ee7d85d69332e2ddd213da70481b6dfb9ae7b8e4eae72b5f7a9b1 +size 3648 diff --git a/game/characters/luna/face/eyebrows/annoyed.webp b/game/characters/luna/face/eyebrows/annoyed.webp new file mode 100644 index 00000000..cecb3a04 --- /dev/null +++ b/game/characters/luna/face/eyebrows/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30fa88e361e360cc8bb964ebe7b022ed6d436d8a4d7830f45d9ffa876f536293 +size 3710 diff --git a/game/characters/luna/face/eyebrows/annoyed_skin.webp b/game/characters/luna/face/eyebrows/annoyed_skin.webp new file mode 100644 index 00000000..67b1a4ec --- /dev/null +++ b/game/characters/luna/face/eyebrows/annoyed_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ce98a0d84644d6d16dc17ed8a01be5394b5a3d56e9f1c09f03bc16a347683d1 +size 3598 diff --git a/game/characters/luna/face/eyebrows/base.webp b/game/characters/luna/face/eyebrows/base.webp new file mode 100644 index 00000000..0c7ec9c9 --- /dev/null +++ b/game/characters/luna/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:419c6d6a905b8785d895cf3546e14156e14f9df241aac66bb8ae60820e9a9248 +size 3594 diff --git a/game/characters/luna/face/eyebrows/base_skin.webp b/game/characters/luna/face/eyebrows/base_skin.webp new file mode 100644 index 00000000..48a5c33f --- /dev/null +++ b/game/characters/luna/face/eyebrows/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e51f551bc931d4499dbdbf3f0f06dd4dafccf211269cf647e4082e37fcf8336 +size 3560 diff --git a/game/characters/luna/face/eyebrows/low.webp b/game/characters/luna/face/eyebrows/low.webp new file mode 100644 index 00000000..613ac6a4 --- /dev/null +++ b/game/characters/luna/face/eyebrows/low.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98235ed0a813c39bc289ed10ad7b1480bfc7914b6adc55b34d830e277d5f3185 +size 3554 diff --git a/game/characters/luna/face/eyebrows/low_skin.webp b/game/characters/luna/face/eyebrows/low_skin.webp new file mode 100644 index 00000000..54eca629 --- /dev/null +++ b/game/characters/luna/face/eyebrows/low_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f877afd07dd3c52c54fb155e0db34dc44a4eb4f0fb266ad67ce05ead99253fa1 +size 3540 diff --git a/game/characters/luna/face/eyebrows/raised.webp b/game/characters/luna/face/eyebrows/raised.webp new file mode 100644 index 00000000..f90bb6e4 --- /dev/null +++ b/game/characters/luna/face/eyebrows/raised.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:421c0f3270fb502bb2e1dbaa209e07250d120fdd21512cdc915d2a5d06305e69 +size 3688 diff --git a/game/characters/luna/face/eyebrows/raised_skin.webp b/game/characters/luna/face/eyebrows/raised_skin.webp new file mode 100644 index 00000000..954eb788 --- /dev/null +++ b/game/characters/luna/face/eyebrows/raised_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d30727f4c7474c34073ab27692ea4e4a660b3c2a728d8040a4c922fb8c2e202b +size 3570 diff --git a/game/characters/luna/face/eyebrows/worried.webp b/game/characters/luna/face/eyebrows/worried.webp new file mode 100644 index 00000000..f8e85d7b --- /dev/null +++ b/game/characters/luna/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29cf4d6c9d129305344335481223bce5e0dec2245ff2c9797a9df7d8d1288104 +size 3714 diff --git a/game/characters/luna/face/eyebrows/worried_skin.webp b/game/characters/luna/face/eyebrows/worried_skin.webp new file mode 100644 index 00000000..7fd5d4a9 --- /dev/null +++ b/game/characters/luna/face/eyebrows/worried_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:117b5b0ce02b7bd6fe88d3fcf27547baf719b0e26c186fd6a204d9f0863d45be +size 3648 diff --git a/game/characters/luna/face/eyes/base.webp b/game/characters/luna/face/eyes/base.webp new file mode 100644 index 00000000..02811f1c --- /dev/null +++ b/game/characters/luna/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:934762bcdce71f6459a765c8408cf536cd44ab2a94c7625da99a86dae362ab03 +size 4192 diff --git a/game/characters/luna/face/eyes/base_mask.webp b/game/characters/luna/face/eyes/base_mask.webp new file mode 100644 index 00000000..67fa308c --- /dev/null +++ b/game/characters/luna/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46903df06d3cb7626cdce59ed148b404c1d8e90ad962e5e3f0d6f00a94a96785 +size 2990 diff --git a/game/characters/luna/face/eyes/base_skin.webp b/game/characters/luna/face/eyes/base_skin.webp new file mode 100644 index 00000000..588a3f39 --- /dev/null +++ b/game/characters/luna/face/eyes/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce10966828c4590ee899fa19f854190bfc78fd14ef7da48bc554ff4804fecb3e +size 3254 diff --git a/game/characters/luna/face/eyes/closed.webp b/game/characters/luna/face/eyes/closed.webp new file mode 100644 index 00000000..d0dbf167 --- /dev/null +++ b/game/characters/luna/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cc7e6c0223c8efe925dfd3e979fc13b05ca971f72cc75046a3d70671e679fc7 +size 4018 diff --git a/game/characters/luna/face/eyes/closed_skin.webp b/game/characters/luna/face/eyes/closed_skin.webp new file mode 100644 index 00000000..588a3f39 --- /dev/null +++ b/game/characters/luna/face/eyes/closed_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce10966828c4590ee899fa19f854190bfc78fd14ef7da48bc554ff4804fecb3e +size 3254 diff --git a/game/characters/luna/face/eyes/happyCl.webp b/game/characters/luna/face/eyes/happyCl.webp new file mode 100644 index 00000000..d7c3187c --- /dev/null +++ b/game/characters/luna/face/eyes/happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7167d216c9b0b323894e5d82ea275fb67549ef5e3f28d165e753db4cb3a3ae20 +size 3856 diff --git a/game/characters/luna/face/eyes/happyCl_skin.webp b/game/characters/luna/face/eyes/happyCl_skin.webp new file mode 100644 index 00000000..378b17a9 --- /dev/null +++ b/game/characters/luna/face/eyes/happyCl_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9341887d8923f25682e799b4e0930a65c23bbdce43a858711646eef5ff3cc5a +size 3190 diff --git a/game/characters/luna/face/eyes/narrow.webp b/game/characters/luna/face/eyes/narrow.webp new file mode 100644 index 00000000..aff705d6 --- /dev/null +++ b/game/characters/luna/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8ec5ef804c1f1b7509389727ec9d6eca8f37a6373030341fa092f1e000c0f7d +size 4264 diff --git a/game/characters/luna/face/eyes/narrow_mask.webp b/game/characters/luna/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..f5aca037 --- /dev/null +++ b/game/characters/luna/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:766595968108b9e8b03fee2875c94b299d5b6cf850d2d9bd6cd1d47f3284da46 +size 2950 diff --git a/game/characters/luna/face/eyes/narrow_skin.webp b/game/characters/luna/face/eyes/narrow_skin.webp new file mode 100644 index 00000000..588a3f39 --- /dev/null +++ b/game/characters/luna/face/eyes/narrow_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce10966828c4590ee899fa19f854190bfc78fd14ef7da48bc554ff4804fecb3e +size 3254 diff --git a/game/characters/luna/face/eyes/wide.webp b/game/characters/luna/face/eyes/wide.webp new file mode 100644 index 00000000..d2fbe895 --- /dev/null +++ b/game/characters/luna/face/eyes/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fcd8bba7776819d1d4f715b549bb3b71e8bbc2c0abda6bae75a611a72471431 +size 4158 diff --git a/game/characters/luna/face/eyes/wide_mask.webp b/game/characters/luna/face/eyes/wide_mask.webp new file mode 100644 index 00000000..c6a29aa1 --- /dev/null +++ b/game/characters/luna/face/eyes/wide_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:140d39131d02c84df0dcfe07d12780bf210a9de326472a394bd00f0d3d0f8df9 +size 3210 diff --git a/game/characters/luna/face/eyes/wide_skin.webp b/game/characters/luna/face/eyes/wide_skin.webp new file mode 100644 index 00000000..588a3f39 --- /dev/null +++ b/game/characters/luna/face/eyes/wide_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce10966828c4590ee899fa19f854190bfc78fd14ef7da48bc554ff4804fecb3e +size 3254 diff --git a/game/characters/luna/face/eyes/wink.webp b/game/characters/luna/face/eyes/wink.webp new file mode 100644 index 00000000..5a6042b4 --- /dev/null +++ b/game/characters/luna/face/eyes/wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c723b5c37977461a7b2244d147bc47a859a766ea649618a98970f7b52b1df9e7 +size 4062 diff --git a/game/characters/luna/face/eyes/wink_mask.webp b/game/characters/luna/face/eyes/wink_mask.webp new file mode 100644 index 00000000..15735a82 --- /dev/null +++ b/game/characters/luna/face/eyes/wink_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d38add3f647ff3660129f23ebfbcaee18627262c7d8fef57a02545b71a710ee7 +size 2960 diff --git a/game/characters/luna/face/eyes/wink_skin.webp b/game/characters/luna/face/eyes/wink_skin.webp new file mode 100644 index 00000000..d8725565 --- /dev/null +++ b/game/characters/luna/face/eyes/wink_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8b6224b6696c71d74304882814a9f55c297ba6bc81d3b038cc9705097c492a4 +size 3240 diff --git a/game/characters/luna/face/mouth/angry.webp b/game/characters/luna/face/mouth/angry.webp new file mode 100644 index 00000000..17a0b56d --- /dev/null +++ b/game/characters/luna/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17b255e778959c61224f011e913ef2b474fbd95c71b54e1f2fc916053df91576 +size 3630 diff --git a/game/characters/luna/face/mouth/annoyed.webp b/game/characters/luna/face/mouth/annoyed.webp new file mode 100644 index 00000000..8bc948f6 --- /dev/null +++ b/game/characters/luna/face/mouth/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0e08595a60a3c4ab1dbd0c92ced6b77118d6f99861dd8458744afe337c334e4 +size 3218 diff --git a/game/characters/luna/face/mouth/base.webp b/game/characters/luna/face/mouth/base.webp new file mode 100644 index 00000000..fe915671 --- /dev/null +++ b/game/characters/luna/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dc31969bf823cd8420141534d580abcf69ed5f37dc5cec0c7341a88321f7561 +size 3358 diff --git a/game/characters/luna/face/mouth/clench.webp b/game/characters/luna/face/mouth/clench.webp new file mode 100644 index 00000000..efceaa78 --- /dev/null +++ b/game/characters/luna/face/mouth/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37b8bddfe963ddcf50c58f9e467c8d81097fa3b8aa5cfabd0bc808e8ccae2366 +size 3680 diff --git a/game/characters/luna/face/mouth/crooked_smile.webp b/game/characters/luna/face/mouth/crooked_smile.webp new file mode 100644 index 00000000..7fe647bd --- /dev/null +++ b/game/characters/luna/face/mouth/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3367845bc10d11e3523672f97e091ab4873875ea52bc9aa7de4d3bc73fd6cab +size 3600 diff --git a/game/characters/luna/face/mouth/disgust.webp b/game/characters/luna/face/mouth/disgust.webp new file mode 100644 index 00000000..1169b404 --- /dev/null +++ b/game/characters/luna/face/mouth/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9959b6a4b88b6f64362a9940124f1a7bb22cc359492d0c6af6f0711d0917a67 +size 3408 diff --git a/game/characters/luna/face/mouth/full.webp b/game/characters/luna/face/mouth/full.webp new file mode 100644 index 00000000..c3e8648b --- /dev/null +++ b/game/characters/luna/face/mouth/full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d855f8128e12f564b0744b1ccaa09c0cef2da2b0f0cb2c9c7b67d41e92e32043 +size 9692 diff --git a/game/characters/luna/face/mouth/grin.webp b/game/characters/luna/face/mouth/grin.webp new file mode 100644 index 00000000..10eaa94c --- /dev/null +++ b/game/characters/luna/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9fadb4be76c2ca58e431c898cee2fca1784e0960d15884d718ec67fe88492fb0 +size 2914 diff --git a/game/characters/luna/face/mouth/mad.webp b/game/characters/luna/face/mouth/mad.webp new file mode 100644 index 00000000..47d4aee1 --- /dev/null +++ b/game/characters/luna/face/mouth/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4242d8d9beb8190a91441da7b68a5fede27da8992fb40d5b0761cf2bcc52a972 +size 3598 diff --git a/game/characters/luna/face/mouth/normal.webp b/game/characters/luna/face/mouth/normal.webp new file mode 100644 index 00000000..6e302b7c --- /dev/null +++ b/game/characters/luna/face/mouth/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:265258b97356a1e58b59a528b43bb0406bf940a80bd17dfaebeeb8ce526f92f8 +size 3238 diff --git a/game/characters/luna/face/mouth/open.webp b/game/characters/luna/face/mouth/open.webp new file mode 100644 index 00000000..a7805f6a --- /dev/null +++ b/game/characters/luna/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce791f6d434abc925ef6be571752c03eef447feef47a333ce5e29e643853253f +size 3404 diff --git a/game/characters/luna/face/mouth/open_tongue.webp b/game/characters/luna/face/mouth/open_tongue.webp new file mode 100644 index 00000000..5ace9cfd --- /dev/null +++ b/game/characters/luna/face/mouth/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbc7faede6597f5b456e90faf360c2b97cb9b521cb77ff076c8831eb0f2669b6 +size 3374 diff --git a/game/characters/luna/face/mouth/open_wide_tongue.webp b/game/characters/luna/face/mouth/open_wide_tongue.webp new file mode 100644 index 00000000..bad11872 --- /dev/null +++ b/game/characters/luna/face/mouth/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e831350a0e5e81ee1ce1b875d6f90cc92f9d61448347a5d954526434188f10f +size 5676 diff --git a/game/characters/luna/face/mouth/scream.webp b/game/characters/luna/face/mouth/scream.webp new file mode 100644 index 00000000..162fb152 --- /dev/null +++ b/game/characters/luna/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82c8d924b1a3b111bdf980a60388fa4fe86a47941aa56dc8ebd67f4cd42c1c38 +size 5760 diff --git a/game/characters/luna/face/mouth/shock.webp b/game/characters/luna/face/mouth/shock.webp new file mode 100644 index 00000000..1fc4b160 --- /dev/null +++ b/game/characters/luna/face/mouth/shock.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae746be368e1e0c90ca42b521cd919d52db06addaf7b3a56f3c0deb1e573cbd7 +size 3650 diff --git a/game/characters/luna/face/mouth/silly.webp b/game/characters/luna/face/mouth/silly.webp new file mode 100644 index 00000000..32d6c4ed --- /dev/null +++ b/game/characters/luna/face/mouth/silly.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c525cbe74346a4504f822447dada3dd8e9749a849a6daba214732857477960f +size 3770 diff --git a/game/characters/luna/face/mouth/smile.webp b/game/characters/luna/face/mouth/smile.webp new file mode 100644 index 00000000..410fd212 --- /dev/null +++ b/game/characters/luna/face/mouth/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9d389d1295ed3f0770f10ae046ac33bdaf6a7dcdd966bfbe96650a8914ddd18 +size 3842 diff --git a/game/characters/luna/face/mouth/soft.webp b/game/characters/luna/face/mouth/soft.webp new file mode 100644 index 00000000..f22d7f3b --- /dev/null +++ b/game/characters/luna/face/mouth/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11a9c3f20eebfbf386a7e549d3f793dffaed9a971e6be5424eb4774bf06aa787 +size 3382 diff --git a/game/characters/luna/face/mouth/upset.webp b/game/characters/luna/face/mouth/upset.webp new file mode 100644 index 00000000..1d9286ac --- /dev/null +++ b/game/characters/luna/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b871d9d1e86228e49b65704293e45a9c1de5648f266459a7eb1f7e9a51a5baae +size 3216 diff --git a/game/characters/luna/face/pupils/L.webp b/game/characters/luna/face/pupils/L.webp new file mode 100644 index 00000000..2b41e4b8 --- /dev/null +++ b/game/characters/luna/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:029d3343b0d605debc3a6342e68312078bc0a8f6e7a78c0a15afe718f7c0d1bc +size 3362 diff --git a/game/characters/luna/face/pupils/R.webp b/game/characters/luna/face/pupils/R.webp new file mode 100644 index 00000000..a46fca3a --- /dev/null +++ b/game/characters/luna/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:590ddbf0ce0b66b1f9f302064ddf4c6c17d3d3fac359205e68ffa62a48924d5d +size 3382 diff --git a/game/characters/luna/face/pupils/ahegao.webp b/game/characters/luna/face/pupils/ahegao.webp new file mode 100644 index 00000000..a749fb2e --- /dev/null +++ b/game/characters/luna/face/pupils/ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec97c48ef48b7408e3f9c074fe92ca311a1dd20354d1cab5920fa02e6ced057b +size 3374 diff --git a/game/characters/luna/face/pupils/dead.webp b/game/characters/luna/face/pupils/dead.webp new file mode 100644 index 00000000..36611069 --- /dev/null +++ b/game/characters/luna/face/pupils/dead.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d964c392a8ff8db7d512c7b412ab7877f7ae47951df7d9da49421f9e37f17e4c +size 1984 diff --git a/game/characters/luna/face/pupils/down.webp b/game/characters/luna/face/pupils/down.webp new file mode 100644 index 00000000..85d81abb --- /dev/null +++ b/game/characters/luna/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4eabeaa4f9ecae7759b03ede3a4b3ba52c8efe5c16c5d1a3579265c8fc194668 +size 3374 diff --git a/game/characters/luna/face/pupils/downL.webp b/game/characters/luna/face/pupils/downL.webp new file mode 100644 index 00000000..d4899dfa --- /dev/null +++ b/game/characters/luna/face/pupils/downL.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0dde690f287503e876268483821b0fb8525485ee3ea8af95bdd9276e805ed520 +size 3452 diff --git a/game/characters/luna/face/pupils/downR.webp b/game/characters/luna/face/pupils/downR.webp new file mode 100644 index 00000000..c803794a --- /dev/null +++ b/game/characters/luna/face/pupils/downR.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:805a58c68b72e0ac01c640da2ed7f2eaebed408adfbbb66565d4f69dea161752 +size 3388 diff --git a/game/characters/luna/face/pupils/mid.webp b/game/characters/luna/face/pupils/mid.webp new file mode 100644 index 00000000..b7c29c5f --- /dev/null +++ b/game/characters/luna/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d7551999f31aaf65d02587643054297d1077c91ce44ecfc20a5d8221655bf9f +size 3384 diff --git a/game/characters/luna/face/pupils/squint.webp b/game/characters/luna/face/pupils/squint.webp new file mode 100644 index 00000000..ea1ac561 --- /dev/null +++ b/game/characters/luna/face/pupils/squint.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be44d566722be0584220783090c50503a7d9f0583a5ce8e63b16e256684aebf9 +size 3392 diff --git a/game/characters/luna/face/pupils/stare.webp b/game/characters/luna/face/pupils/stare.webp new file mode 100644 index 00000000..fe3f14ce --- /dev/null +++ b/game/characters/luna/face/pupils/stare.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e5d6d06970b3f11877fc3330f8bce0618a27aa76598a43ef66c0922971cd980 +size 3358 diff --git a/game/characters/luna/face/pupils/up.webp b/game/characters/luna/face/pupils/up.webp new file mode 100644 index 00000000..0cac92c9 --- /dev/null +++ b/game/characters/luna/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25643fa78406552ab3666a6326316f97e9eec04a23214acbeff38feb0bb2da96 +size 3378 diff --git a/game/characters/luna/face/tears/crying.webp b/game/characters/luna/face/tears/crying.webp new file mode 100644 index 00000000..e638d5f3 --- /dev/null +++ b/game/characters/luna/face/tears/crying.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf31882fd4d930dfe02fbde7f3a05d7d10c626517ba4c89bc89cbb41faf79ef6 +size 3362 diff --git a/game/characters/luna/face/tears/crying_blink.webp b/game/characters/luna/face/tears/crying_blink.webp new file mode 100644 index 00000000..a859d022 --- /dev/null +++ b/game/characters/luna/face/tears/crying_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63c183ac5237fd133b33d0c7e7112a929af4e5952878788616f4938bca8f498f +size 3972 diff --git a/game/characters/luna/face/tears/mascara.webp b/game/characters/luna/face/tears/mascara.webp new file mode 100644 index 00000000..80c5ae6f --- /dev/null +++ b/game/characters/luna/face/tears/mascara.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99cb1139e120582e7f530ae2ef12b6164a2819afec45be8e1312fb2ea6ce5a4c +size 4834 diff --git a/game/characters/luna/face/tears/messy.webp b/game/characters/luna/face/tears/messy.webp new file mode 100644 index 00000000..bacdc01e --- /dev/null +++ b/game/characters/luna/face/tears/messy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94c5c127f666a62ff4ea6953bf4ac278aadaa1733b1e5ae58cae7479a65a5cdc +size 9028 diff --git a/game/characters/luna/face/tears/soft.webp b/game/characters/luna/face/tears/soft.webp new file mode 100644 index 00000000..0211ad98 --- /dev/null +++ b/game/characters/luna/face/tears/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80e099eaf9a137827bed7ba2407ddbc76fff7ebc3dd5df6e4f1393a6605be0e9 +size 1254 diff --git a/game/characters/luna/poses/masturbate/body/armleft/up.webp b/game/characters/luna/poses/masturbate/body/armleft/up.webp new file mode 100644 index 00000000..4845b4e5 --- /dev/null +++ b/game/characters/luna/poses/masturbate/body/armleft/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:949d2c3f40b4631abd22a170a9492ed699338013b1cc1f6249021bc298fe18bf +size 3238 diff --git a/game/characters/luna/poses/masturbate/body/armright/up.webp b/game/characters/luna/poses/masturbate/body/armright/up.webp new file mode 100644 index 00000000..40a670dc --- /dev/null +++ b/game/characters/luna/poses/masturbate/body/armright/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57038791f9fce36c0b8b6d0594ef9562181e9ff64098f4dddb83031e198a638e +size 890 diff --git a/game/characters/luna/poses/masturbate/body/base/front.webp b/game/characters/luna/poses/masturbate/body/base/front.webp new file mode 100644 index 00000000..c13b8452 --- /dev/null +++ b/game/characters/luna/poses/masturbate/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b24f716226aa434a31341cc411528d0e836ab22f458d435085abe3912892c1ca +size 81474 diff --git a/game/characters/luna/poses/masturbate/body/breasts/normal.webp b/game/characters/luna/poses/masturbate/body/breasts/normal.webp new file mode 100644 index 00000000..40a670dc --- /dev/null +++ b/game/characters/luna/poses/masturbate/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57038791f9fce36c0b8b6d0594ef9562181e9ff64098f4dddb83031e198a638e +size 890 diff --git a/game/characters/luna/poses/masturbate/clothes/bottom/school_skirt_2/0.webp b/game/characters/luna/poses/masturbate/clothes/bottom/school_skirt_2/0.webp new file mode 100644 index 00000000..3653e858 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/bottom/school_skirt_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5369913dc1beaf7107d8b6844e8d65e9e0eb97b9e425d38243160e6852f8014 +size 294 diff --git a/game/characters/luna/poses/masturbate/clothes/bottom/school_skirt_2/1.webp b/game/characters/luna/poses/masturbate/clothes/bottom/school_skirt_2/1.webp new file mode 100644 index 00000000..3653e858 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/bottom/school_skirt_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5369913dc1beaf7107d8b6844e8d65e9e0eb97b9e425d38243160e6852f8014 +size 294 diff --git a/game/characters/luna/poses/masturbate/clothes/bottom/school_skirt_2/outline.webp b/game/characters/luna/poses/masturbate/clothes/bottom/school_skirt_2/outline.webp new file mode 100644 index 00000000..c70fe301 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/bottom/school_skirt_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b8a660a6dac1d9d0be31c33f35d8942ffca999b71fd1cc887ac2fd747f70722 +size 26774 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/base/0.webp b/game/characters/luna/poses/masturbate/clothes/hair/base/0.webp new file mode 100644 index 00000000..8937635b --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f278e1c4e2c32128079bbae26be3965604e89a5bdd6d65d50a1251c580f229c3 +size 9072 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/base/0_back.webp b/game/characters/luna/poses/masturbate/clothes/hair/base/0_back.webp new file mode 100644 index 00000000..820209a7 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/base/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:936edcf4f731d1fb71da59b3275859b11f80535bb52633c8afaeba5efb748c2a +size 9270 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/base/1.webp b/game/characters/luna/poses/masturbate/clothes/hair/base/1.webp new file mode 100644 index 00000000..7e0be323 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/base/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c85c0ef77e39b8eafd40e03309d04bf3d9cdc0e164703c6eceafa38cc5c7a246 +size 15702 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/base/1_back.webp b/game/characters/luna/poses/masturbate/clothes/hair/base/1_back.webp new file mode 100644 index 00000000..2747a0a2 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/base/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3db829f4c93d7232ae41f36d37bc82ba2fb0ad9a0417320a6b6bd251d18496a8 +size 16070 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/base/2.webp b/game/characters/luna/poses/masturbate/clothes/hair/base/2.webp new file mode 100644 index 00000000..301bcb53 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/base/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61250de3a83ef9cf2a7fd0a5a5f1549096fd9f6aa21cbebd28b6d2b84e8cffa0 +size 3078 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/base/outline.webp b/game/characters/luna/poses/masturbate/clothes/hair/base/outline.webp new file mode 100644 index 00000000..b41e3113 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4049a6cb89540c91125ec928ed580b410fae6e2f65acd6802ea5fb0f6006c25a +size 21166 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/base/outline_back.webp b/game/characters/luna/poses/masturbate/clothes/hair/base/outline_back.webp new file mode 100644 index 00000000..2dd18065 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/base/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2abe7dcedcef8b32831be8513fad09f4646aac32e40d7c50d47ff1376a0c0df +size 22028 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/base/skin.webp b/game/characters/luna/poses/masturbate/clothes/hair/base/skin.webp new file mode 100644 index 00000000..8975c89f --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/base/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1389384ea2acd9ae236a6417a65d491afedb00d3a3caab4d733eef5828d40025 +size 4344 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/0.webp b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/0.webp new file mode 100644 index 00000000..9de8e8d0 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a811d7fa71492fe4b41d4d670e033534cb321dede22af4871728520d6a54ff83 +size 8448 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/1.webp b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/1.webp new file mode 100644 index 00000000..f38bc1b5 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3972f822ec3e1efa86fb20baca14b614a72a82f87e9ce64e17b24cd2c2daf18 +size 22000 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/2.webp b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/2.webp new file mode 100644 index 00000000..084b2448 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20450edc9e8c2f09f438dae38fbacab0a98d1026f42758e91e297d81423ac403 +size 4308 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/3.webp b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/3.webp new file mode 100644 index 00000000..dba193ba --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c24f86fd5a4048ec9ba9f570aacc00abb9437fa04316ae1c4a9529e23c810aa8 +size 2294 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/4.webp b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/4.webp new file mode 100644 index 00000000..5a836358 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afea87cdfe7bafdb54bdaa8ffa5d4a337b7ae8b325b7bccceecac645dac3448b +size 666 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/extra.webp b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/extra.webp new file mode 100644 index 00000000..71e49b0b --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27b36851327840c469e9271888a967035ebb5978cd9d2b2b6f425e54cf940ff8 +size 5976 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/outline.webp b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/outline.webp new file mode 100644 index 00000000..644f88d0 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d82caf8140cb1b0e626a9c1997f7f0bdb89e8b16badd0b81b4b40c7a8de975b +size 22282 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/skin.webp b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/skin.webp new file mode 100644 index 00000000..266ad469 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/harley_quinn/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:326442460ed360f31fa8f288ce8ce1d9f2d5e07da5f59293b8f9eaea04bba5fd +size 1690 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/wand/0.webp b/game/characters/luna/poses/masturbate/clothes/hair/wand/0.webp new file mode 100644 index 00000000..eedba02d --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/wand/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:156a7557270b80f5ee38dfc393913817e8a3a7721e11bb1fd3778847ee1f2d1f +size 11886 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/wand/0_back.webp b/game/characters/luna/poses/masturbate/clothes/hair/wand/0_back.webp new file mode 100644 index 00000000..820209a7 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/wand/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:936edcf4f731d1fb71da59b3275859b11f80535bb52633c8afaeba5efb748c2a +size 9270 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/wand/1.webp b/game/characters/luna/poses/masturbate/clothes/hair/wand/1.webp new file mode 100644 index 00000000..ac9d2e77 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/wand/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07b4de50853a34ca040ce2ef09e5d8bebd2b961aef834c3566731817e01b0b70 +size 20288 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/wand/1_back.webp b/game/characters/luna/poses/masturbate/clothes/hair/wand/1_back.webp new file mode 100644 index 00000000..2747a0a2 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/wand/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3db829f4c93d7232ae41f36d37bc82ba2fb0ad9a0417320a6b6bd251d18496a8 +size 16070 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/wand/2.webp b/game/characters/luna/poses/masturbate/clothes/hair/wand/2.webp new file mode 100644 index 00000000..301bcb53 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/wand/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61250de3a83ef9cf2a7fd0a5a5f1549096fd9f6aa21cbebd28b6d2b84e8cffa0 +size 3078 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/wand/extra.webp b/game/characters/luna/poses/masturbate/clothes/hair/wand/extra.webp new file mode 100644 index 00000000..f699a0cc --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/wand/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fef169706872657d9ff81dafd99dfe21bbe103bc03b827765647020ab60881c +size 4772 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/wand/outline.webp b/game/characters/luna/poses/masturbate/clothes/hair/wand/outline.webp new file mode 100644 index 00000000..a931f8d0 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/wand/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:170ef5b3f95b62677080a88687f73a52a9a5b7b6aa37fbdd9d715f8e677090ad +size 28336 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/wand/outline_back.webp b/game/characters/luna/poses/masturbate/clothes/hair/wand/outline_back.webp new file mode 100644 index 00000000..2dd18065 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/wand/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2abe7dcedcef8b32831be8513fad09f4646aac32e40d7c50d47ff1376a0c0df +size 22028 diff --git a/game/characters/luna/poses/masturbate/clothes/hair/wand/skin.webp b/game/characters/luna/poses/masturbate/clothes/hair/wand/skin.webp new file mode 100644 index 00000000..8975c89f --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/hair/wand/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1389384ea2acd9ae236a6417a65d491afedb00d3a3caab4d733eef5828d40025 +size 4344 diff --git a/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/0.webp b/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/0.webp new file mode 100644 index 00000000..6b3f10d5 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae3384837bbe177cf3b9609194ac82d951080909ff929697a3d408852a617aa1 +size 5062 diff --git a/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/1.webp b/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/1.webp new file mode 100644 index 00000000..2c08a8d1 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9240aa42555923704ce593c976cf3dbd1399e17cd25b18dedcd729c1b472d4a +size 4870 diff --git a/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/extra.webp b/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/extra.webp new file mode 100644 index 00000000..c8839242 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7618d2fb84ee7480fc8b41a66de86c1fd23c2c78a3a0be5d596dee188fc790f2 +size 5516 diff --git a/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/outline.webp b/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/outline.webp new file mode 100644 index 00000000..b58ed80c --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a252e7b48771bb85338673b91bba9ed8e04e074091dd3e0c853643617df13bd +size 7718 diff --git a/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/skin.webp b/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/skin.webp new file mode 100644 index 00000000..b7d57656 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/stockings/short_school_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7fb2e76f419c5d30c1cfc6a88bcb733984a4bf6fa9f76587a9050aa5b40edb4 +size 3790 diff --git a/game/characters/luna/poses/masturbate/clothes/top/top_school_1/0.webp b/game/characters/luna/poses/masturbate/clothes/top/top_school_1/0.webp new file mode 100644 index 00000000..3653e858 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/top/top_school_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5369913dc1beaf7107d8b6844e8d65e9e0eb97b9e425d38243160e6852f8014 +size 294 diff --git a/game/characters/luna/poses/masturbate/clothes/top/top_school_1/1.webp b/game/characters/luna/poses/masturbate/clothes/top/top_school_1/1.webp new file mode 100644 index 00000000..3653e858 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/top/top_school_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5369913dc1beaf7107d8b6844e8d65e9e0eb97b9e425d38243160e6852f8014 +size 294 diff --git a/game/characters/luna/poses/masturbate/clothes/top/top_school_1/2.webp b/game/characters/luna/poses/masturbate/clothes/top/top_school_1/2.webp new file mode 100644 index 00000000..3653e858 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/top/top_school_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5369913dc1beaf7107d8b6844e8d65e9e0eb97b9e425d38243160e6852f8014 +size 294 diff --git a/game/characters/luna/poses/masturbate/clothes/top/top_school_1/3.webp b/game/characters/luna/poses/masturbate/clothes/top/top_school_1/3.webp new file mode 100644 index 00000000..3653e858 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/top/top_school_1/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5369913dc1beaf7107d8b6844e8d65e9e0eb97b9e425d38243160e6852f8014 +size 294 diff --git a/game/characters/luna/poses/masturbate/clothes/top/top_school_1/extra.webp b/game/characters/luna/poses/masturbate/clothes/top/top_school_1/extra.webp new file mode 100644 index 00000000..3653e858 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/top/top_school_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5369913dc1beaf7107d8b6844e8d65e9e0eb97b9e425d38243160e6852f8014 +size 294 diff --git a/game/characters/luna/poses/masturbate/clothes/top/top_school_1/outline.webp b/game/characters/luna/poses/masturbate/clothes/top/top_school_1/outline.webp new file mode 100644 index 00000000..b0e41548 --- /dev/null +++ b/game/characters/luna/poses/masturbate/clothes/top/top_school_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61638439fd511f48db2be0706fa7645a9b1dbb03e7abb84f6a9b5624073332da +size 53114 diff --git a/game/characters/luna/poses/masturbate/cum/pussy/squirt.webp b/game/characters/luna/poses/masturbate/cum/pussy/squirt.webp new file mode 100644 index 00000000..c4964f4b --- /dev/null +++ b/game/characters/luna/poses/masturbate/cum/pussy/squirt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e36f4cbe7908c411a0b5251d509cc69dc7bbebcbbd41357b9b03dbfe1a508f1c +size 3428 diff --git a/game/characters/luna/poses/masturbate/cum/pussy/squirt_post.webp b/game/characters/luna/poses/masturbate/cum/pussy/squirt_post.webp new file mode 100644 index 00000000..ee717fed --- /dev/null +++ b/game/characters/luna/poses/masturbate/cum/pussy/squirt_post.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef232a423dec4f1d628512cbb5cebaa96d7b1065291fe14e443988d252661de0 +size 3238 diff --git a/game/characters/luna/poses/masturbate/cum/pussy/wet.webp b/game/characters/luna/poses/masturbate/cum/pussy/wet.webp new file mode 100644 index 00000000..1392cda1 --- /dev/null +++ b/game/characters/luna/poses/masturbate/cum/pussy/wet.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f39935c0a1eae72f7ffb2b23bb8ec11e2a047ad4c1278e9e17c2d8fdf8aec48a +size 796 diff --git a/game/characters/luna/poses/masturbate/face/cheeks/blush.webp b/game/characters/luna/poses/masturbate/face/cheeks/blush.webp new file mode 100644 index 00000000..f534498c --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da6c38661c177f57ea22624a9ef948b8fb8d60ed9c94406bd857e43a91aeb9a9 +size 9906 diff --git a/game/characters/luna/poses/masturbate/face/eyebrows/angry.webp b/game/characters/luna/poses/masturbate/face/eyebrows/angry.webp new file mode 100644 index 00000000..ca4bb259 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:433c353748a15ec19ea01ba47b1668d44816f36dd178060ba183fff6cd09b784 +size 3856 diff --git a/game/characters/luna/poses/masturbate/face/eyebrows/angry_skin.webp b/game/characters/luna/poses/masturbate/face/eyebrows/angry_skin.webp new file mode 100644 index 00000000..e7318736 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyebrows/angry_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67943b34a59ee7d85d69332e2ddd213da70481b6dfb9ae7b8e4eae72b5f7a9b1 +size 3648 diff --git a/game/characters/luna/poses/masturbate/face/eyebrows/annoyed.webp b/game/characters/luna/poses/masturbate/face/eyebrows/annoyed.webp new file mode 100644 index 00000000..cecb3a04 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyebrows/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30fa88e361e360cc8bb964ebe7b022ed6d436d8a4d7830f45d9ffa876f536293 +size 3710 diff --git a/game/characters/luna/poses/masturbate/face/eyebrows/annoyed_skin.webp b/game/characters/luna/poses/masturbate/face/eyebrows/annoyed_skin.webp new file mode 100644 index 00000000..67b1a4ec --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyebrows/annoyed_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ce98a0d84644d6d16dc17ed8a01be5394b5a3d56e9f1c09f03bc16a347683d1 +size 3598 diff --git a/game/characters/luna/poses/masturbate/face/eyebrows/base.webp b/game/characters/luna/poses/masturbate/face/eyebrows/base.webp new file mode 100644 index 00000000..0c7ec9c9 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:419c6d6a905b8785d895cf3546e14156e14f9df241aac66bb8ae60820e9a9248 +size 3594 diff --git a/game/characters/luna/poses/masturbate/face/eyebrows/base_skin.webp b/game/characters/luna/poses/masturbate/face/eyebrows/base_skin.webp new file mode 100644 index 00000000..48a5c33f --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyebrows/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e51f551bc931d4499dbdbf3f0f06dd4dafccf211269cf647e4082e37fcf8336 +size 3560 diff --git a/game/characters/luna/poses/masturbate/face/eyebrows/low.webp b/game/characters/luna/poses/masturbate/face/eyebrows/low.webp new file mode 100644 index 00000000..613ac6a4 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyebrows/low.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98235ed0a813c39bc289ed10ad7b1480bfc7914b6adc55b34d830e277d5f3185 +size 3554 diff --git a/game/characters/luna/poses/masturbate/face/eyebrows/low_skin.webp b/game/characters/luna/poses/masturbate/face/eyebrows/low_skin.webp new file mode 100644 index 00000000..54eca629 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyebrows/low_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f877afd07dd3c52c54fb155e0db34dc44a4eb4f0fb266ad67ce05ead99253fa1 +size 3540 diff --git a/game/characters/luna/poses/masturbate/face/eyebrows/raised.webp b/game/characters/luna/poses/masturbate/face/eyebrows/raised.webp new file mode 100644 index 00000000..f90bb6e4 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyebrows/raised.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:421c0f3270fb502bb2e1dbaa209e07250d120fdd21512cdc915d2a5d06305e69 +size 3688 diff --git a/game/characters/luna/poses/masturbate/face/eyebrows/raised_skin.webp b/game/characters/luna/poses/masturbate/face/eyebrows/raised_skin.webp new file mode 100644 index 00000000..954eb788 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyebrows/raised_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d30727f4c7474c34073ab27692ea4e4a660b3c2a728d8040a4c922fb8c2e202b +size 3570 diff --git a/game/characters/luna/poses/masturbate/face/eyebrows/worried.webp b/game/characters/luna/poses/masturbate/face/eyebrows/worried.webp new file mode 100644 index 00000000..f8e85d7b --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29cf4d6c9d129305344335481223bce5e0dec2245ff2c9797a9df7d8d1288104 +size 3714 diff --git a/game/characters/luna/poses/masturbate/face/eyebrows/worried_skin.webp b/game/characters/luna/poses/masturbate/face/eyebrows/worried_skin.webp new file mode 100644 index 00000000..7fd5d4a9 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyebrows/worried_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:117b5b0ce02b7bd6fe88d3fcf27547baf719b0e26c186fd6a204d9f0863d45be +size 3648 diff --git a/game/characters/luna/poses/masturbate/face/eyes/base.webp b/game/characters/luna/poses/masturbate/face/eyes/base.webp new file mode 100644 index 00000000..02811f1c --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:934762bcdce71f6459a765c8408cf536cd44ab2a94c7625da99a86dae362ab03 +size 4192 diff --git a/game/characters/luna/poses/masturbate/face/eyes/base_mask.webp b/game/characters/luna/poses/masturbate/face/eyes/base_mask.webp new file mode 100644 index 00000000..67fa308c --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46903df06d3cb7626cdce59ed148b404c1d8e90ad962e5e3f0d6f00a94a96785 +size 2990 diff --git a/game/characters/luna/poses/masturbate/face/eyes/base_skin.webp b/game/characters/luna/poses/masturbate/face/eyes/base_skin.webp new file mode 100644 index 00000000..588a3f39 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce10966828c4590ee899fa19f854190bfc78fd14ef7da48bc554ff4804fecb3e +size 3254 diff --git a/game/characters/luna/poses/masturbate/face/eyes/closed.webp b/game/characters/luna/poses/masturbate/face/eyes/closed.webp new file mode 100644 index 00000000..d0dbf167 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cc7e6c0223c8efe925dfd3e979fc13b05ca971f72cc75046a3d70671e679fc7 +size 4018 diff --git a/game/characters/luna/poses/masturbate/face/eyes/closed_skin.webp b/game/characters/luna/poses/masturbate/face/eyes/closed_skin.webp new file mode 100644 index 00000000..588a3f39 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/closed_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce10966828c4590ee899fa19f854190bfc78fd14ef7da48bc554ff4804fecb3e +size 3254 diff --git a/game/characters/luna/poses/masturbate/face/eyes/happyCl.webp b/game/characters/luna/poses/masturbate/face/eyes/happyCl.webp new file mode 100644 index 00000000..d7c3187c --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7167d216c9b0b323894e5d82ea275fb67549ef5e3f28d165e753db4cb3a3ae20 +size 3856 diff --git a/game/characters/luna/poses/masturbate/face/eyes/happyCl_skin.webp b/game/characters/luna/poses/masturbate/face/eyes/happyCl_skin.webp new file mode 100644 index 00000000..378b17a9 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/happyCl_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9341887d8923f25682e799b4e0930a65c23bbdce43a858711646eef5ff3cc5a +size 3190 diff --git a/game/characters/luna/poses/masturbate/face/eyes/narrow.webp b/game/characters/luna/poses/masturbate/face/eyes/narrow.webp new file mode 100644 index 00000000..aff705d6 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8ec5ef804c1f1b7509389727ec9d6eca8f37a6373030341fa092f1e000c0f7d +size 4264 diff --git a/game/characters/luna/poses/masturbate/face/eyes/narrow_mask.webp b/game/characters/luna/poses/masturbate/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..f5aca037 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:766595968108b9e8b03fee2875c94b299d5b6cf850d2d9bd6cd1d47f3284da46 +size 2950 diff --git a/game/characters/luna/poses/masturbate/face/eyes/narrow_skin.webp b/game/characters/luna/poses/masturbate/face/eyes/narrow_skin.webp new file mode 100644 index 00000000..588a3f39 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/narrow_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce10966828c4590ee899fa19f854190bfc78fd14ef7da48bc554ff4804fecb3e +size 3254 diff --git a/game/characters/luna/poses/masturbate/face/eyes/wide.webp b/game/characters/luna/poses/masturbate/face/eyes/wide.webp new file mode 100644 index 00000000..d2fbe895 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fcd8bba7776819d1d4f715b549bb3b71e8bbc2c0abda6bae75a611a72471431 +size 4158 diff --git a/game/characters/luna/poses/masturbate/face/eyes/wide_mask.webp b/game/characters/luna/poses/masturbate/face/eyes/wide_mask.webp new file mode 100644 index 00000000..c6a29aa1 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/wide_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:140d39131d02c84df0dcfe07d12780bf210a9de326472a394bd00f0d3d0f8df9 +size 3210 diff --git a/game/characters/luna/poses/masturbate/face/eyes/wide_skin.webp b/game/characters/luna/poses/masturbate/face/eyes/wide_skin.webp new file mode 100644 index 00000000..588a3f39 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/wide_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce10966828c4590ee899fa19f854190bfc78fd14ef7da48bc554ff4804fecb3e +size 3254 diff --git a/game/characters/luna/poses/masturbate/face/eyes/wink.webp b/game/characters/luna/poses/masturbate/face/eyes/wink.webp new file mode 100644 index 00000000..5a6042b4 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c723b5c37977461a7b2244d147bc47a859a766ea649618a98970f7b52b1df9e7 +size 4062 diff --git a/game/characters/luna/poses/masturbate/face/eyes/wink_mask.webp b/game/characters/luna/poses/masturbate/face/eyes/wink_mask.webp new file mode 100644 index 00000000..15735a82 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/wink_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d38add3f647ff3660129f23ebfbcaee18627262c7d8fef57a02545b71a710ee7 +size 2960 diff --git a/game/characters/luna/poses/masturbate/face/eyes/wink_skin.webp b/game/characters/luna/poses/masturbate/face/eyes/wink_skin.webp new file mode 100644 index 00000000..d8725565 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/eyes/wink_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8b6224b6696c71d74304882814a9f55c297ba6bc81d3b038cc9705097c492a4 +size 3240 diff --git a/game/characters/luna/poses/masturbate/face/mouth/angry.webp b/game/characters/luna/poses/masturbate/face/mouth/angry.webp new file mode 100644 index 00000000..17a0b56d --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17b255e778959c61224f011e913ef2b474fbd95c71b54e1f2fc916053df91576 +size 3630 diff --git a/game/characters/luna/poses/masturbate/face/mouth/annoyed.webp b/game/characters/luna/poses/masturbate/face/mouth/annoyed.webp new file mode 100644 index 00000000..8bc948f6 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0e08595a60a3c4ab1dbd0c92ced6b77118d6f99861dd8458744afe337c334e4 +size 3218 diff --git a/game/characters/luna/poses/masturbate/face/mouth/base.webp b/game/characters/luna/poses/masturbate/face/mouth/base.webp new file mode 100644 index 00000000..fe915671 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dc31969bf823cd8420141534d580abcf69ed5f37dc5cec0c7341a88321f7561 +size 3358 diff --git a/game/characters/luna/poses/masturbate/face/mouth/clench.webp b/game/characters/luna/poses/masturbate/face/mouth/clench.webp new file mode 100644 index 00000000..efceaa78 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37b8bddfe963ddcf50c58f9e467c8d81097fa3b8aa5cfabd0bc808e8ccae2366 +size 3680 diff --git a/game/characters/luna/poses/masturbate/face/mouth/crooked_smile.webp b/game/characters/luna/poses/masturbate/face/mouth/crooked_smile.webp new file mode 100644 index 00000000..7fe647bd --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3367845bc10d11e3523672f97e091ab4873875ea52bc9aa7de4d3bc73fd6cab +size 3600 diff --git a/game/characters/luna/poses/masturbate/face/mouth/disgust.webp b/game/characters/luna/poses/masturbate/face/mouth/disgust.webp new file mode 100644 index 00000000..1169b404 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9959b6a4b88b6f64362a9940124f1a7bb22cc359492d0c6af6f0711d0917a67 +size 3408 diff --git a/game/characters/luna/poses/masturbate/face/mouth/full.webp b/game/characters/luna/poses/masturbate/face/mouth/full.webp new file mode 100644 index 00000000..c3e8648b --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d855f8128e12f564b0744b1ccaa09c0cef2da2b0f0cb2c9c7b67d41e92e32043 +size 9692 diff --git a/game/characters/luna/poses/masturbate/face/mouth/grin.webp b/game/characters/luna/poses/masturbate/face/mouth/grin.webp new file mode 100644 index 00000000..10eaa94c --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9fadb4be76c2ca58e431c898cee2fca1784e0960d15884d718ec67fe88492fb0 +size 2914 diff --git a/game/characters/luna/poses/masturbate/face/mouth/mad.webp b/game/characters/luna/poses/masturbate/face/mouth/mad.webp new file mode 100644 index 00000000..47d4aee1 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4242d8d9beb8190a91441da7b68a5fede27da8992fb40d5b0761cf2bcc52a972 +size 3598 diff --git a/game/characters/luna/poses/masturbate/face/mouth/normal.webp b/game/characters/luna/poses/masturbate/face/mouth/normal.webp new file mode 100644 index 00000000..6e302b7c --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:265258b97356a1e58b59a528b43bb0406bf940a80bd17dfaebeeb8ce526f92f8 +size 3238 diff --git a/game/characters/luna/poses/masturbate/face/mouth/open.webp b/game/characters/luna/poses/masturbate/face/mouth/open.webp new file mode 100644 index 00000000..a7805f6a --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce791f6d434abc925ef6be571752c03eef447feef47a333ce5e29e643853253f +size 3404 diff --git a/game/characters/luna/poses/masturbate/face/mouth/open_tongue.webp b/game/characters/luna/poses/masturbate/face/mouth/open_tongue.webp new file mode 100644 index 00000000..5ace9cfd --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbc7faede6597f5b456e90faf360c2b97cb9b521cb77ff076c8831eb0f2669b6 +size 3374 diff --git a/game/characters/luna/poses/masturbate/face/mouth/open_wide_tongue.webp b/game/characters/luna/poses/masturbate/face/mouth/open_wide_tongue.webp new file mode 100644 index 00000000..bad11872 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e831350a0e5e81ee1ce1b875d6f90cc92f9d61448347a5d954526434188f10f +size 5676 diff --git a/game/characters/luna/poses/masturbate/face/mouth/scream.webp b/game/characters/luna/poses/masturbate/face/mouth/scream.webp new file mode 100644 index 00000000..162fb152 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82c8d924b1a3b111bdf980a60388fa4fe86a47941aa56dc8ebd67f4cd42c1c38 +size 5760 diff --git a/game/characters/luna/poses/masturbate/face/mouth/shock.webp b/game/characters/luna/poses/masturbate/face/mouth/shock.webp new file mode 100644 index 00000000..1fc4b160 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/shock.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae746be368e1e0c90ca42b521cd919d52db06addaf7b3a56f3c0deb1e573cbd7 +size 3650 diff --git a/game/characters/luna/poses/masturbate/face/mouth/silly.webp b/game/characters/luna/poses/masturbate/face/mouth/silly.webp new file mode 100644 index 00000000..32d6c4ed --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/silly.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c525cbe74346a4504f822447dada3dd8e9749a849a6daba214732857477960f +size 3770 diff --git a/game/characters/luna/poses/masturbate/face/mouth/smile.webp b/game/characters/luna/poses/masturbate/face/mouth/smile.webp new file mode 100644 index 00000000..410fd212 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9d389d1295ed3f0770f10ae046ac33bdaf6a7dcdd966bfbe96650a8914ddd18 +size 3842 diff --git a/game/characters/luna/poses/masturbate/face/mouth/soft.webp b/game/characters/luna/poses/masturbate/face/mouth/soft.webp new file mode 100644 index 00000000..f22d7f3b --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11a9c3f20eebfbf386a7e549d3f793dffaed9a971e6be5424eb4774bf06aa787 +size 3382 diff --git a/game/characters/luna/poses/masturbate/face/mouth/upset.webp b/game/characters/luna/poses/masturbate/face/mouth/upset.webp new file mode 100644 index 00000000..1d9286ac --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b871d9d1e86228e49b65704293e45a9c1de5648f266459a7eb1f7e9a51a5baae +size 3216 diff --git a/game/characters/luna/poses/masturbate/face/pupils/L.webp b/game/characters/luna/poses/masturbate/face/pupils/L.webp new file mode 100644 index 00000000..2b41e4b8 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:029d3343b0d605debc3a6342e68312078bc0a8f6e7a78c0a15afe718f7c0d1bc +size 3362 diff --git a/game/characters/luna/poses/masturbate/face/pupils/R.webp b/game/characters/luna/poses/masturbate/face/pupils/R.webp new file mode 100644 index 00000000..a46fca3a --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:590ddbf0ce0b66b1f9f302064ddf4c6c17d3d3fac359205e68ffa62a48924d5d +size 3382 diff --git a/game/characters/luna/poses/masturbate/face/pupils/ahegao.webp b/game/characters/luna/poses/masturbate/face/pupils/ahegao.webp new file mode 100644 index 00000000..a749fb2e --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/pupils/ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec97c48ef48b7408e3f9c074fe92ca311a1dd20354d1cab5920fa02e6ced057b +size 3374 diff --git a/game/characters/luna/poses/masturbate/face/pupils/dead.webp b/game/characters/luna/poses/masturbate/face/pupils/dead.webp new file mode 100644 index 00000000..36611069 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/pupils/dead.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d964c392a8ff8db7d512c7b412ab7877f7ae47951df7d9da49421f9e37f17e4c +size 1984 diff --git a/game/characters/luna/poses/masturbate/face/pupils/down.webp b/game/characters/luna/poses/masturbate/face/pupils/down.webp new file mode 100644 index 00000000..85d81abb --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4eabeaa4f9ecae7759b03ede3a4b3ba52c8efe5c16c5d1a3579265c8fc194668 +size 3374 diff --git a/game/characters/luna/poses/masturbate/face/pupils/downL.webp b/game/characters/luna/poses/masturbate/face/pupils/downL.webp new file mode 100644 index 00000000..d4899dfa --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/pupils/downL.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0dde690f287503e876268483821b0fb8525485ee3ea8af95bdd9276e805ed520 +size 3452 diff --git a/game/characters/luna/poses/masturbate/face/pupils/downR.webp b/game/characters/luna/poses/masturbate/face/pupils/downR.webp new file mode 100644 index 00000000..c803794a --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/pupils/downR.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:805a58c68b72e0ac01c640da2ed7f2eaebed408adfbbb66565d4f69dea161752 +size 3388 diff --git a/game/characters/luna/poses/masturbate/face/pupils/mid.webp b/game/characters/luna/poses/masturbate/face/pupils/mid.webp new file mode 100644 index 00000000..b7c29c5f --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d7551999f31aaf65d02587643054297d1077c91ce44ecfc20a5d8221655bf9f +size 3384 diff --git a/game/characters/luna/poses/masturbate/face/pupils/squint.webp b/game/characters/luna/poses/masturbate/face/pupils/squint.webp new file mode 100644 index 00000000..ea1ac561 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/pupils/squint.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be44d566722be0584220783090c50503a7d9f0583a5ce8e63b16e256684aebf9 +size 3392 diff --git a/game/characters/luna/poses/masturbate/face/pupils/stare.webp b/game/characters/luna/poses/masturbate/face/pupils/stare.webp new file mode 100644 index 00000000..fe3f14ce --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/pupils/stare.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e5d6d06970b3f11877fc3330f8bce0618a27aa76598a43ef66c0922971cd980 +size 3358 diff --git a/game/characters/luna/poses/masturbate/face/pupils/up.webp b/game/characters/luna/poses/masturbate/face/pupils/up.webp new file mode 100644 index 00000000..0cac92c9 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25643fa78406552ab3666a6326316f97e9eec04a23214acbeff38feb0bb2da96 +size 3378 diff --git a/game/characters/luna/poses/masturbate/face/tears/crying.webp b/game/characters/luna/poses/masturbate/face/tears/crying.webp new file mode 100644 index 00000000..e638d5f3 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/tears/crying.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf31882fd4d930dfe02fbde7f3a05d7d10c626517ba4c89bc89cbb41faf79ef6 +size 3362 diff --git a/game/characters/luna/poses/masturbate/face/tears/crying_blink.webp b/game/characters/luna/poses/masturbate/face/tears/crying_blink.webp new file mode 100644 index 00000000..a859d022 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/tears/crying_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63c183ac5237fd133b33d0c7e7112a929af4e5952878788616f4938bca8f498f +size 3972 diff --git a/game/characters/luna/poses/masturbate/face/tears/mascara.webp b/game/characters/luna/poses/masturbate/face/tears/mascara.webp new file mode 100644 index 00000000..80c5ae6f --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/tears/mascara.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99cb1139e120582e7f530ae2ef12b6164a2819afec45be8e1312fb2ea6ce5a4c +size 4834 diff --git a/game/characters/luna/poses/masturbate/face/tears/messy.webp b/game/characters/luna/poses/masturbate/face/tears/messy.webp new file mode 100644 index 00000000..bacdc01e --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/tears/messy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94c5c127f666a62ff4ea6953bf4ac278aadaa1733b1e5ae58cae7479a65a5cdc +size 9028 diff --git a/game/characters/luna/poses/masturbate/face/tears/soft.webp b/game/characters/luna/poses/masturbate/face/tears/soft.webp new file mode 100644 index 00000000..0211ad98 --- /dev/null +++ b/game/characters/luna/poses/masturbate/face/tears/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80e099eaf9a137827bed7ba2407ddbc76fff7ebc3dd5df6e4f1393a6605be0e9 +size 1254 diff --git a/game/characters/luna/poses/masturbate/loadable.webp b/game/characters/luna/poses/masturbate/loadable.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/luna/poses/masturbate/loadable.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/misc/dumbledore/dum_1.webp b/game/characters/misc/dumbledore/dum_1.webp new file mode 100644 index 00000000..693669f7 --- /dev/null +++ b/game/characters/misc/dumbledore/dum_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b532b2a4484b54423427e7d2cd277d79b95032a4b0357f239c1b6c8389861ade +size 157710 diff --git a/game/characters/misc/dumbledore/dum_2.webp b/game/characters/misc/dumbledore/dum_2.webp new file mode 100644 index 00000000..ef3f9e19 --- /dev/null +++ b/game/characters/misc/dumbledore/dum_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ee5c7ea63830afe316a347c9f008b77c61eb12d9dea9e45f0ff4ce463f9b23e +size 158254 diff --git a/game/characters/misc/dumbledore/dum_3.webp b/game/characters/misc/dumbledore/dum_3.webp new file mode 100644 index 00000000..a8d7f8ad --- /dev/null +++ b/game/characters/misc/dumbledore/dum_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04369142b6d295b2d67d385abc9cbd36debb28bb2ac9492ed71cfefc6fd1b434 +size 157832 diff --git a/game/characters/misc/dumbledore/dum_4.webp b/game/characters/misc/dumbledore/dum_4.webp new file mode 100644 index 00000000..ba1ec411 --- /dev/null +++ b/game/characters/misc/dumbledore/dum_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdde33b9bd457a6474d9164c13d5f436e46f8666ed45568aac667c9a35ec2ee7 +size 158102 diff --git a/game/characters/misc/dumbledore/dum_5.webp b/game/characters/misc/dumbledore/dum_5.webp new file mode 100644 index 00000000..f9065e01 --- /dev/null +++ b/game/characters/misc/dumbledore/dum_5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b15918f34c3d21be9a12c81de29743a3cbfed0211f115999156f723d268fbb81 +size 152332 diff --git a/game/characters/misc/elf.webp b/game/characters/misc/elf.webp new file mode 100644 index 00000000..917e7efd --- /dev/null +++ b/game/characters/misc/elf.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41e85081477e3485b58f4985969bce88e16aa98ced97c02f055896a4032a084e +size 64254 diff --git a/game/characters/misc/hat.webp b/game/characters/misc/hat.webp new file mode 100644 index 00000000..5f41da44 --- /dev/null +++ b/game/characters/misc/hat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa4bac4968c3c63730b2645a21f339318212bb05ea55bb9dbb1235f732ad0a3c +size 105074 diff --git a/game/characters/misc/mafkin.webp b/game/characters/misc/mafkin.webp new file mode 100644 index 00000000..bfe68e67 --- /dev/null +++ b/game/characters/misc/mafkin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b9ad9ccb1cb550643860f4df966c8c66fdc984d3483cdb629c03e8399e878c7 +size 162630 diff --git a/game/characters/misc/narrator.webp b/game/characters/misc/narrator.webp new file mode 100644 index 00000000..38807fc5 --- /dev/null +++ b/game/characters/misc/narrator.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26216f730789c6e80a41e8be1f3d58d17503100286ebe50114f8bd7635c08a7e +size 34414 diff --git a/game/characters/misc/santa/santa_1.webp b/game/characters/misc/santa/santa_1.webp new file mode 100644 index 00000000..229799c6 --- /dev/null +++ b/game/characters/misc/santa/santa_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:435f982221b3e706055ccd8ef2c4b0a5721984373489c4a2faca2b2aba790b07 +size 117312 diff --git a/game/characters/misc/santa/santa_2.webp b/game/characters/misc/santa/santa_2.webp new file mode 100644 index 00000000..99ddd7f0 --- /dev/null +++ b/game/characters/misc/santa/santa_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6abbc817366032ac54e66d43939b4f9c62a67e6e0fb64e5f55331d35848e3b84 +size 116502 diff --git a/game/characters/misc/santa/santa_3.webp b/game/characters/misc/santa/santa_3.webp new file mode 100644 index 00000000..50872b93 --- /dev/null +++ b/game/characters/misc/santa/santa_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a506345f340c36e73f80113bea612fe51b5d3995e78100e28f1fd67c68abe54 +size 112604 diff --git a/game/characters/misc/santa/santa_4.webp b/game/characters/misc/santa/santa_4.webp new file mode 100644 index 00000000..16845487 --- /dev/null +++ b/game/characters/misc/santa/santa_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7c1958ff61e403f2299abf3afafaa8a03591dca04b0be5e5e1f81e7797b8210 +size 114924 diff --git a/game/characters/misc/santa/santa_5.webp b/game/characters/misc/santa/santa_5.webp new file mode 100644 index 00000000..d38748d4 --- /dev/null +++ b/game/characters/misc/santa/santa_5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:521b9fecc73a0a9bcf7dcb7f5ffc0d872feb3e012553fd075738e91b4675c708 +size 115112 diff --git a/game/characters/misc/santa/santa_6.webp b/game/characters/misc/santa/santa_6.webp new file mode 100644 index 00000000..76723b87 --- /dev/null +++ b/game/characters/misc/santa/santa_6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca833c9decc2800fa0d49345a4d1de2a2060b8d4f150a62576cf87e18b100cd7 +size 117472 diff --git a/game/characters/misc/santa/santa_7.webp b/game/characters/misc/santa/santa_7.webp new file mode 100644 index 00000000..936c2a25 --- /dev/null +++ b/game/characters/misc/santa/santa_7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c24209d6c05f768ad8217f85ad0f5f71a4775e9b1a326ef10f6ee4ea637ffc3 +size 137164 diff --git a/game/characters/misc/santa/santa_chibi.webp b/game/characters/misc/santa/santa_chibi.webp new file mode 100644 index 00000000..ffe173ef --- /dev/null +++ b/game/characters/misc/santa/santa_chibi.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1c550407ad6918c9eea86d4527d94e289190d2d1455998b9eaf4498fb4211fe +size 59872 diff --git a/game/characters/misc/weasley_twins/base_01.webp b/game/characters/misc/weasley_twins/base_01.webp new file mode 100644 index 00000000..78747da3 --- /dev/null +++ b/game/characters/misc/weasley_twins/base_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c0484d7c8dd5372d3ddd4b8123dac74680587c6cfb0caf283b6eb1ecafb701a +size 267568 diff --git a/game/characters/misc/weasley_twins/fred_01.webp b/game/characters/misc/weasley_twins/fred_01.webp new file mode 100644 index 00000000..87dc0bc0 --- /dev/null +++ b/game/characters/misc/weasley_twins/fred_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7afbed04dcb5a6fa368737aac117b3afa9198bcb071e2e2de72749e459ce18da +size 102376 diff --git a/game/characters/misc/weasley_twins/george_01.webp b/game/characters/misc/weasley_twins/george_01.webp new file mode 100644 index 00000000..78166544 --- /dev/null +++ b/game/characters/misc/weasley_twins/george_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6607ff2d2dd758090b5db5304aa664325c5ef822ebd31d0bb9ece503af4114e +size 92932 diff --git a/game/characters/snape/chibis/desk_working/01.webp b/game/characters/snape/chibis/desk_working/01.webp new file mode 100644 index 00000000..2494f8eb --- /dev/null +++ b/game/characters/snape/chibis/desk_working/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7f37ccdfacc4f6260bd11329c9cf7dc8c1ec97457f688c5713cd52599b161e6 +size 69208 diff --git a/game/characters/snape/chibis/desk_working/02.webp b/game/characters/snape/chibis/desk_working/02.webp new file mode 100644 index 00000000..bd0b8d65 --- /dev/null +++ b/game/characters/snape/chibis/desk_working/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aaf770298d77c8327ab24ed779e7801038bded566929ef5998a575d14ef88028 +size 68818 diff --git a/game/characters/snape/chibis/desk_working/03.webp b/game/characters/snape/chibis/desk_working/03.webp new file mode 100644 index 00000000..af4b195d --- /dev/null +++ b/game/characters/snape/chibis/desk_working/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27d5fa25904b46dfee2948a8b682f85ecb9cb2fbad3d6256df98e97bc2f41d3c +size 69596 diff --git a/game/characters/snape/chibis/desk_working/idle.webp b/game/characters/snape/chibis/desk_working/idle.webp new file mode 100644 index 00000000..92485dc2 --- /dev/null +++ b/game/characters/snape/chibis/desk_working/idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3acfa9fc52b5bb18db13dd5b3e02bf07fb7e3911726f65bb3c3d4571eb52c4ca +size 68910 diff --git a/game/characters/snape/chibis/desk_working/idle2.webp b/game/characters/snape/chibis/desk_working/idle2.webp new file mode 100644 index 00000000..8f744c42 --- /dev/null +++ b/game/characters/snape/chibis/desk_working/idle2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b39fd9c1324f2a9b755a5adc3ad5a7f6019efc823073b6e351b821927bc96344 +size 69056 diff --git a/game/characters/snape/chibis/drinking/01.webp b/game/characters/snape/chibis/drinking/01.webp new file mode 100644 index 00000000..f3f5030b --- /dev/null +++ b/game/characters/snape/chibis/drinking/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af7d0df5d4b5fe70f8988117b11e87409a9fd624d7fe457bd4f2dc88915f9fab +size 58424 diff --git a/game/characters/snape/chibis/drinking/02.webp b/game/characters/snape/chibis/drinking/02.webp new file mode 100644 index 00000000..9d0afc9c --- /dev/null +++ b/game/characters/snape/chibis/drinking/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:178ae3b43eb05028fe90749379a72f13757c8cbb4451939f76fae30cedd9937c +size 57640 diff --git a/game/characters/snape/chibis/drinking/03.webp b/game/characters/snape/chibis/drinking/03.webp new file mode 100644 index 00000000..46e9ca84 --- /dev/null +++ b/game/characters/snape/chibis/drinking/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3f84c37811285aafb6cb0300bc1c8a11e8c76cde69b98bdc519b564bf94569b +size 59022 diff --git a/game/characters/snape/chibis/drinking/04.webp b/game/characters/snape/chibis/drinking/04.webp new file mode 100644 index 00000000..b5786f68 --- /dev/null +++ b/game/characters/snape/chibis/drinking/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a96f674dafecb1af4d3291120efaca760a2cd6a7f37610a78203031f7c003ae9 +size 60178 diff --git a/game/characters/snape/chibis/ghost_1/01.webp b/game/characters/snape/chibis/ghost_1/01.webp new file mode 100644 index 00000000..05c7f07d --- /dev/null +++ b/game/characters/snape/chibis/ghost_1/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c42809d02769ad746a65ca66432c26b4310ae8244afaba229acc263a6258d8b5 +size 24780 diff --git a/game/characters/snape/chibis/ghost_1/02.webp b/game/characters/snape/chibis/ghost_1/02.webp new file mode 100644 index 00000000..52974c92 --- /dev/null +++ b/game/characters/snape/chibis/ghost_1/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1509a9cb70e17915f4167f03735803b859706e7135f6786f4c40b9558efca04b +size 24858 diff --git a/game/characters/snape/chibis/ghost_1/03.webp b/game/characters/snape/chibis/ghost_1/03.webp new file mode 100644 index 00000000..b34f1c59 --- /dev/null +++ b/game/characters/snape/chibis/ghost_1/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0443f0deabd6cb21be02ae2f2c54d2072b319a1ea3a0c08d058d9e9c37220095 +size 24784 diff --git a/game/characters/snape/chibis/ghost_2/01.webp b/game/characters/snape/chibis/ghost_2/01.webp new file mode 100644 index 00000000..8cee9c8a --- /dev/null +++ b/game/characters/snape/chibis/ghost_2/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a474aae484ff18e31801472cbafedddae52007bffd5b5bfae05136ebc06f9d3b +size 27726 diff --git a/game/characters/snape/chibis/ghost_2/02.webp b/game/characters/snape/chibis/ghost_2/02.webp new file mode 100644 index 00000000..ccf6a979 --- /dev/null +++ b/game/characters/snape/chibis/ghost_2/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c017caacd5189971d8b4e5eb7267bed49ad7b706d3ecc93e90b4eb7b43733608 +size 27864 diff --git a/game/characters/snape/chibis/ghost_2/03.webp b/game/characters/snape/chibis/ghost_2/03.webp new file mode 100644 index 00000000..fe167663 --- /dev/null +++ b/game/characters/snape/chibis/ghost_2/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bae07a46e2e64c3477dec630a2831dfa02468ee5b79cf3747f847a5d2b118805 +size 27834 diff --git a/game/characters/snape/chibis/ghost_3/01.webp b/game/characters/snape/chibis/ghost_3/01.webp new file mode 100644 index 00000000..c36ce7db --- /dev/null +++ b/game/characters/snape/chibis/ghost_3/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e9504a5ab9967b127dddc8e1a9c7326b4d2b4598d95bd526a32fe700ed9d0a1 +size 30986 diff --git a/game/characters/snape/chibis/ghost_3/02.webp b/game/characters/snape/chibis/ghost_3/02.webp new file mode 100644 index 00000000..f614d6b7 --- /dev/null +++ b/game/characters/snape/chibis/ghost_3/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef6204e298f934c28d546a1c714fb7971b500d5c38289a0434c1c7b3ff4ad11b +size 31160 diff --git a/game/characters/snape/chibis/ghost_3/03.webp b/game/characters/snape/chibis/ghost_3/03.webp new file mode 100644 index 00000000..cb203414 --- /dev/null +++ b/game/characters/snape/chibis/ghost_3/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49e26bfea01515d3e4468bf25fe5388702062a140f0c5cf5d8e8d2b1a030ae86 +size 30966 diff --git a/game/characters/snape/chibis/handshake/hand_00.webp b/game/characters/snape/chibis/handshake/hand_00.webp new file mode 100644 index 00000000..40cc14b0 --- /dev/null +++ b/game/characters/snape/chibis/handshake/hand_00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03e8ea79b47593692dd7fcb457d4966779a2098de80cd06a9f55bfd12b491717 +size 126052 diff --git a/game/characters/snape/chibis/handshake/hand_01.webp b/game/characters/snape/chibis/handshake/hand_01.webp new file mode 100644 index 00000000..705f761e --- /dev/null +++ b/game/characters/snape/chibis/handshake/hand_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21c0c4e0228a9f8d824e58cc408a45d46ce0e059019046aaf1c95158df86faa2 +size 124206 diff --git a/game/characters/snape/chibis/jizz_covered/jizz.webp b/game/characters/snape/chibis/jizz_covered/jizz.webp new file mode 100644 index 00000000..04287d13 --- /dev/null +++ b/game/characters/snape/chibis/jizz_covered/jizz.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b838aa7f4f6ea020e1910f8e79550f5b2a202f91d1c2d58989152597421a829 +size 42170 diff --git a/game/characters/snape/chibis/masturbating/01.webp b/game/characters/snape/chibis/masturbating/01.webp new file mode 100644 index 00000000..1cdcc0fb --- /dev/null +++ b/game/characters/snape/chibis/masturbating/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca8fd07c4ea71ab14a9d3b6a4f03529dd6359d6bf33ba1de7a7233524690b82f +size 45682 diff --git a/game/characters/snape/chibis/masturbating/02.webp b/game/characters/snape/chibis/masturbating/02.webp new file mode 100644 index 00000000..638231d7 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ba04d3fee52f4febf44921c3660fb95703ad24924573e3b524a179174f40614 +size 45644 diff --git a/game/characters/snape/chibis/masturbating/03.webp b/game/characters/snape/chibis/masturbating/03.webp new file mode 100644 index 00000000..4dbca1aa --- /dev/null +++ b/game/characters/snape/chibis/masturbating/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81174115c2110240cb399e1ee6e54c5bd24bbd33a69d3f2cf124a869646beff5 +size 45542 diff --git a/game/characters/snape/chibis/masturbating/04.webp b/game/characters/snape/chibis/masturbating/04.webp new file mode 100644 index 00000000..128a4251 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:463d4166ca677a1bad673e314c1dab27cc990de5dcb43a330df779844002ecae +size 45642 diff --git a/game/characters/snape/chibis/masturbating/sperm_01.webp b/game/characters/snape/chibis/masturbating/sperm_01.webp new file mode 100644 index 00000000..d4f161c1 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:243d3659f835856842b099af903a8303fe48122760d70b612f73258a98feacc4 +size 460 diff --git a/game/characters/snape/chibis/masturbating/sperm_02.webp b/game/characters/snape/chibis/masturbating/sperm_02.webp new file mode 100644 index 00000000..afe8d235 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4dde77f6365dfd0523ee5f3da75daacb007faacd40ad59d23894979dc6a6294d +size 778 diff --git a/game/characters/snape/chibis/masturbating/sperm_03.webp b/game/characters/snape/chibis/masturbating/sperm_03.webp new file mode 100644 index 00000000..20e81f3a --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2b8fb8f19d267b686715ca40062e1ca25a8da4d3c0505e4fe948b60741c1d9b +size 1008 diff --git a/game/characters/snape/chibis/masturbating/sperm_04.webp b/game/characters/snape/chibis/masturbating/sperm_04.webp new file mode 100644 index 00000000..124afdd8 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36d0884ad474d1b44fdf48eb2f0fe89881d9337b68d0961542db0f34939285fe +size 936 diff --git a/game/characters/snape/chibis/masturbating/sperm_05.webp b/game/characters/snape/chibis/masturbating/sperm_05.webp new file mode 100644 index 00000000..1126be6e --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96ccfe6577cb859392d460909382af2d1662069013a48ed8a96841f097b14699 +size 912 diff --git a/game/characters/snape/chibis/masturbating/sperm_06.webp b/game/characters/snape/chibis/masturbating/sperm_06.webp new file mode 100644 index 00000000..670873b1 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1b501b156014d698cf73c05578f016d4c6c89fbb7639de43a82ba104d9a6fe5 +size 1002 diff --git a/game/characters/snape/chibis/masturbating/sperm_07.webp b/game/characters/snape/chibis/masturbating/sperm_07.webp new file mode 100644 index 00000000..f189fd8b --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4a5a10d4738106a0f08dbd3b04df042863889aeeed27ba4038fd862e541a97b +size 1114 diff --git a/game/characters/snape/chibis/masturbating/sperm_08.webp b/game/characters/snape/chibis/masturbating/sperm_08.webp new file mode 100644 index 00000000..80585213 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db56344d50ac1f30459f44ee8485fdf2b7f64161503626d8c72ed75311cb1a26 +size 1140 diff --git a/game/characters/snape/chibis/masturbating/sperm_09.webp b/game/characters/snape/chibis/masturbating/sperm_09.webp new file mode 100644 index 00000000..61dd8006 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d38bc51632734f4e8deaba58da23751bad9f720642582d50168d6d7e3013aef +size 1162 diff --git a/game/characters/snape/chibis/masturbating/sperm_10.webp b/game/characters/snape/chibis/masturbating/sperm_10.webp new file mode 100644 index 00000000..b538e25f --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4ed599b5492b832b6cd4789c1a9d540da069fc563a4c9123f9222f507e2f120 +size 1148 diff --git a/game/characters/snape/chibis/masturbating/sperm_11.webp b/game/characters/snape/chibis/masturbating/sperm_11.webp new file mode 100644 index 00000000..7baa1ba6 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89138f523443cdad929f3a3216b0922c4556ae608939dc4914cfef94426658c0 +size 1144 diff --git a/game/characters/snape/chibis/masturbating/sperm_12.webp b/game/characters/snape/chibis/masturbating/sperm_12.webp new file mode 100644 index 00000000..4f9483a4 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fa939cc8b06ec88341af18d65c32d3d50c35e1fcd019cc030dca7064d4da5d5 +size 1146 diff --git a/game/characters/snape/chibis/masturbating/sperm_13.webp b/game/characters/snape/chibis/masturbating/sperm_13.webp new file mode 100644 index 00000000..f3c10776 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0262bcaae9155f573917770cd96b4b61e799e853bc6468b9082486f6908bab7b +size 1232 diff --git a/game/characters/snape/chibis/masturbating/sperm_14.webp b/game/characters/snape/chibis/masturbating/sperm_14.webp new file mode 100644 index 00000000..a07304ae --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99ebf6bc45f71f79caadbf24e9746bcb60b13f00b8522e398c8d86dcd5268296 +size 1338 diff --git a/game/characters/snape/chibis/masturbating/sperm_15.webp b/game/characters/snape/chibis/masturbating/sperm_15.webp new file mode 100644 index 00000000..11e9a2e7 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ca6b8a42b51e482dceac20641877f04b5f48d5e6535c8a77f4f6e9378272729 +size 1376 diff --git a/game/characters/snape/chibis/masturbating/sperm_16.webp b/game/characters/snape/chibis/masturbating/sperm_16.webp new file mode 100644 index 00000000..67a27cfc --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:404353e84f2177ca2a2a2545d0df84a5eec245d4f4ca6b39ba8605a8e9c88d07 +size 1380 diff --git a/game/characters/snape/chibis/masturbating/sperm_17.webp b/game/characters/snape/chibis/masturbating/sperm_17.webp new file mode 100644 index 00000000..7c445813 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5907ed0d466ed21382dae47c232f24e12d29f4cde6237729da4860d142e7379d +size 1354 diff --git a/game/characters/snape/chibis/masturbating/sperm_18.webp b/game/characters/snape/chibis/masturbating/sperm_18.webp new file mode 100644 index 00000000..8062d016 --- /dev/null +++ b/game/characters/snape/chibis/masturbating/sperm_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e82121afadc318e9cc87c20ef66409c0877fcd401f7d0488dbd67575dd130f69 +size 1304 diff --git a/game/characters/snape/chibis/shocked/01.webp b/game/characters/snape/chibis/shocked/01.webp new file mode 100644 index 00000000..879eaac8 --- /dev/null +++ b/game/characters/snape/chibis/shocked/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9165189acf09c4c6ee1210cc74eeb7d7e075edbe0c511e60449dd16e7b2f8a55 +size 36014 diff --git a/game/characters/snape/chibis/snape_01.webp b/game/characters/snape/chibis/snape_01.webp new file mode 100644 index 00000000..cddc787b --- /dev/null +++ b/game/characters/snape/chibis/snape_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa60455fe2ddff55741593e5c28dd315d282bb4fb16a968819d81af47ce0bfb6 +size 37990 diff --git a/game/characters/snape/chibis/snape_02.webp b/game/characters/snape/chibis/snape_02.webp new file mode 100644 index 00000000..d655fd00 --- /dev/null +++ b/game/characters/snape/chibis/snape_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95787b9c59706285bcc8d5ff978c4a53b6aa2a90ca831e1adac26fe6d05d754f +size 36048 diff --git a/game/characters/snape/chibis/snape_03.webp b/game/characters/snape/chibis/snape_03.webp new file mode 100644 index 00000000..8bc88fb5 --- /dev/null +++ b/game/characters/snape/chibis/snape_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc2d1c8f03b443c8090c368943bf8801b8c85fc9d4fecaa34630050fcd83d8b4 +size 37576 diff --git a/game/characters/snape/chibis/snape_stand.webp b/game/characters/snape/chibis/snape_stand.webp new file mode 100644 index 00000000..2198a600 --- /dev/null +++ b/game/characters/snape/chibis/snape_stand.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1e3d1a514b6d5ce73b743d3b1f90adcb24c98443bda9bb4e6020b7425e0b274 +size 35990 diff --git a/game/characters/snape/chibis/wand_cast/wand_attack.webp b/game/characters/snape/chibis/wand_cast/wand_attack.webp new file mode 100644 index 00000000..6bb59ace --- /dev/null +++ b/game/characters/snape/chibis/wand_cast/wand_attack.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6e87fa7edb033d37bf9cac67b958eb8f8f745de39f46d1c529f4061b5fcb2f8 +size 46590 diff --git a/game/characters/snape/chibis/wand_cast/wand_cast_ground.webp b/game/characters/snape/chibis/wand_cast/wand_cast_ground.webp new file mode 100644 index 00000000..e9cdc7c0 --- /dev/null +++ b/game/characters/snape/chibis/wand_cast/wand_cast_ground.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a0c42f25186c99ebdfbd2df833c0b5bc27895a166a77fc48f9001353fcb9c57 +size 38396 diff --git a/game/characters/snape/chibis/wand_cast/wand_cast_mid.webp b/game/characters/snape/chibis/wand_cast/wand_cast_mid.webp new file mode 100644 index 00000000..0e4caf14 --- /dev/null +++ b/game/characters/snape/chibis/wand_cast/wand_cast_mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5984063552912ce8f4cb060e891e4219067726737cf6f5b34ce0b6136186a024 +size 47134 diff --git a/game/characters/snape/chibis/wand_cast/wand_cast_normal.webp b/game/characters/snape/chibis/wand_cast/wand_cast_normal.webp new file mode 100644 index 00000000..251e51a9 --- /dev/null +++ b/game/characters/snape/chibis/wand_cast/wand_cast_normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb1e73a0ec126378b6144b374d86d61822f9ab7aa80d70fb83b5f917eff157d3 +size 46602 diff --git a/game/characters/snape/chibis/wand_cast/wand_hurt.webp b/game/characters/snape/chibis/wand_cast/wand_hurt.webp new file mode 100644 index 00000000..078baddf --- /dev/null +++ b/game/characters/snape/chibis/wand_cast/wand_hurt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebacf38a64f87443df9cbcb7a5d0202b41414fce1968aea01af1b14a9786c0d9 +size 46698 diff --git a/game/characters/snape/chibis/wand_defend/wand_defend_1.webp b/game/characters/snape/chibis/wand_defend/wand_defend_1.webp new file mode 100644 index 00000000..f026b437 --- /dev/null +++ b/game/characters/snape/chibis/wand_defend/wand_defend_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f30a70bdc830ade404780394d4b73b5500ae088909f1bb1c1ed1dc85f0fd4a84 +size 40178 diff --git a/game/characters/snape/chibis/wand_defend/wand_defend_2.webp b/game/characters/snape/chibis/wand_defend/wand_defend_2.webp new file mode 100644 index 00000000..6bd48c0b --- /dev/null +++ b/game/characters/snape/chibis/wand_defend/wand_defend_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e894af12e03247dfddad130de6c575f38c6d5a30b58dea7a0c5c3da48e46d6b2 +size 40888 diff --git a/game/characters/snape/chibis/wand_defend/wand_defend_3.webp b/game/characters/snape/chibis/wand_defend/wand_defend_3.webp new file mode 100644 index 00000000..2224cdef --- /dev/null +++ b/game/characters/snape/chibis/wand_defend/wand_defend_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7585643c2ace6327ed5ec6845eed297cbc849a58924f270b03c5f02268d837e5 +size 40868 diff --git a/game/characters/snape/chibis/wand_idle/wand_idle_1.webp b/game/characters/snape/chibis/wand_idle/wand_idle_1.webp new file mode 100644 index 00000000..ad42c63d --- /dev/null +++ b/game/characters/snape/chibis/wand_idle/wand_idle_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bdafe96c4fc2de1f910af1bd95f0b9e1af8b56e725363f9d2bd01651cb424f9 +size 40552 diff --git a/game/characters/snape/chibis/wand_idle/wand_idle_2.webp b/game/characters/snape/chibis/wand_idle/wand_idle_2.webp new file mode 100644 index 00000000..f075b22d --- /dev/null +++ b/game/characters/snape/chibis/wand_idle/wand_idle_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59b285e88e9d094b7203a5e8818bde10ab27ce0d55adab162fd28336833d60b5 +size 40726 diff --git a/game/characters/snape/chibis/wand_idle/wand_idle_3.webp b/game/characters/snape/chibis/wand_idle/wand_idle_3.webp new file mode 100644 index 00000000..a6f84130 --- /dev/null +++ b/game/characters/snape/chibis/wand_idle/wand_idle_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d1f7fd51c45f7b379005b2c83ea35a4c0ed9406b040291c73c27b3a438c5344 +size 40816 diff --git a/game/characters/snape/main/b01.webp b/game/characters/snape/main/b01.webp new file mode 100644 index 00000000..35cc8a96 --- /dev/null +++ b/game/characters/snape/main/b01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10addd0ba9235e840ca4c16c823c9e0f146c5f5a35f9907f60da04b1afbaf327 +size 132026 diff --git a/game/characters/snape/main/b01_01.webp b/game/characters/snape/main/b01_01.webp new file mode 100644 index 00000000..e2efcb39 --- /dev/null +++ b/game/characters/snape/main/b01_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08ebdb2a7bdfaef22f2300d453892a72d0f938268bc116c14baf5257177d9f4a +size 6824 diff --git a/game/characters/snape/main/b02.webp b/game/characters/snape/main/b02.webp new file mode 100644 index 00000000..8ab94f65 --- /dev/null +++ b/game/characters/snape/main/b02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:468e8466eec30ee01b5c818182c2dee95ce29d33c0acfa3e50ef7d58cd77974d +size 139670 diff --git a/game/characters/snape/main/picture_frame.webp b/game/characters/snape/main/picture_frame.webp new file mode 100644 index 00000000..3145a9b1 --- /dev/null +++ b/game/characters/snape/main/picture_frame.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f22a020e963d6fc94da25d5e47cbdb0253550cb4e7031e713221241c0900f7b1 +size 10678 diff --git a/game/characters/snape/main/snape_01.webp b/game/characters/snape/main/snape_01.webp new file mode 100644 index 00000000..9ca22845 --- /dev/null +++ b/game/characters/snape/main/snape_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9cf64ffcb34fbb8ee1b1f7610997617a28d1c3e43ec681de773c0860f532c35 +size 356982 diff --git a/game/characters/snape/main/snape_02.webp b/game/characters/snape/main/snape_02.webp new file mode 100644 index 00000000..ea49564b --- /dev/null +++ b/game/characters/snape/main/snape_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:942e497b3ade2fdc39dc503db70a72bbfed14ff1bb867f1ad3f7938af4e4e82d +size 357464 diff --git a/game/characters/snape/main/snape_03.webp b/game/characters/snape/main/snape_03.webp new file mode 100644 index 00000000..f1c4aac3 --- /dev/null +++ b/game/characters/snape/main/snape_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00288e51c22281e5913f8992cd320c7b6e27aae210dcc041d372e86d050f4b6f +size 356750 diff --git a/game/characters/snape/main/snape_04.webp b/game/characters/snape/main/snape_04.webp new file mode 100644 index 00000000..5aa1162f --- /dev/null +++ b/game/characters/snape/main/snape_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5720237f89168a6e26cca5ea4e2b2b4d0734ae4bc9a6a59a6616b92e2191b658 +size 355656 diff --git a/game/characters/snape/main/snape_05.webp b/game/characters/snape/main/snape_05.webp new file mode 100644 index 00000000..688f5cac --- /dev/null +++ b/game/characters/snape/main/snape_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07b654c2407cff2b92fdeea360f6c27478696bbbb19bda6fe81cbc853a0eb395 +size 355698 diff --git a/game/characters/snape/main/snape_06.webp b/game/characters/snape/main/snape_06.webp new file mode 100644 index 00000000..283bd7cd --- /dev/null +++ b/game/characters/snape/main/snape_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e266eb6d0e6a00e2329eaff57321ca8c21bf79c6270e04884609c5381e375970 +size 355774 diff --git a/game/characters/snape/main/snape_07.webp b/game/characters/snape/main/snape_07.webp new file mode 100644 index 00000000..9b58f973 --- /dev/null +++ b/game/characters/snape/main/snape_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1eaf4a4341b6cfc397eae9f3738397867777b4f2677bfbe4cd9dffc5a7a3f801 +size 360888 diff --git a/game/characters/snape/main/snape_08.webp b/game/characters/snape/main/snape_08.webp new file mode 100644 index 00000000..099ff8f6 --- /dev/null +++ b/game/characters/snape/main/snape_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2725ec9a9fb0faffd81d4a374451206d48570195f4bc4afc97dc3486655f1c6d +size 360552 diff --git a/game/characters/snape/main/snape_09.webp b/game/characters/snape/main/snape_09.webp new file mode 100644 index 00000000..9837c1c5 --- /dev/null +++ b/game/characters/snape/main/snape_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a78886037389de42d61339d0612c5cd6e722c3fd7a390bb9d7764499a656f6d +size 355206 diff --git a/game/characters/snape/main/snape_10.webp b/game/characters/snape/main/snape_10.webp new file mode 100644 index 00000000..4e1a57d2 --- /dev/null +++ b/game/characters/snape/main/snape_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:827948222c56434f87d57bcc189d6e49c7b7bba5a41fd3b2ab619388a955691d +size 357516 diff --git a/game/characters/snape/main/snape_11.webp b/game/characters/snape/main/snape_11.webp new file mode 100644 index 00000000..dd853c0d --- /dev/null +++ b/game/characters/snape/main/snape_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f123ac7f165167eb14ce587b633a705fc83b79c24eb1023cd4785ca32f66b8c8 +size 356500 diff --git a/game/characters/snape/main/snape_12.webp b/game/characters/snape/main/snape_12.webp new file mode 100644 index 00000000..ccbea66e --- /dev/null +++ b/game/characters/snape/main/snape_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6079000a880e801cf410bb5f2603057c244fb25baa22568b3e3f1bbdf030eefc +size 357414 diff --git a/game/characters/snape/main/snape_13.webp b/game/characters/snape/main/snape_13.webp new file mode 100644 index 00000000..c8b09e8e --- /dev/null +++ b/game/characters/snape/main/snape_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46c9c794e53b7cafc8161c68414407fc2fe60342d64d43af7bc8c5f802974196 +size 357140 diff --git a/game/characters/snape/main/snape_14.webp b/game/characters/snape/main/snape_14.webp new file mode 100644 index 00000000..3151c671 --- /dev/null +++ b/game/characters/snape/main/snape_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:875205b255796beba2509eac31cc992c4adff84d55d24d3e7982096d5887ef0b +size 357898 diff --git a/game/characters/snape/main/snape_15.webp b/game/characters/snape/main/snape_15.webp new file mode 100644 index 00000000..7bc0de6f --- /dev/null +++ b/game/characters/snape/main/snape_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cce2da07f3d236902230a8af01cbb6970f099add2660628a6470a9ca1889b3c9 +size 361188 diff --git a/game/characters/snape/main/snape_16.webp b/game/characters/snape/main/snape_16.webp new file mode 100644 index 00000000..6c1deea3 --- /dev/null +++ b/game/characters/snape/main/snape_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb3fb412534091bc9a5aa0dce2a326d19a2ce8868b94796210ba8e3b6d6a6199 +size 357182 diff --git a/game/characters/snape/main/snape_17.webp b/game/characters/snape/main/snape_17.webp new file mode 100644 index 00000000..ab78b78a --- /dev/null +++ b/game/characters/snape/main/snape_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4154450c835b618e3bdc35d477c99598606af8179a9385b3034f8c366aaa4f0 +size 356876 diff --git a/game/characters/snape/main/snape_18.webp b/game/characters/snape/main/snape_18.webp new file mode 100644 index 00000000..b66db5c8 --- /dev/null +++ b/game/characters/snape/main/snape_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e573bdf2d085dc276d100507bfba7aa105349a818d700a539483c2281917968 +size 358796 diff --git a/game/characters/snape/main/snape_19.webp b/game/characters/snape/main/snape_19.webp new file mode 100644 index 00000000..a11e109a --- /dev/null +++ b/game/characters/snape/main/snape_19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32774a82a3ee62fbe3435ab1e0b6dcf7d4abc1e14eca75f8df8a71369ca50f7d +size 358394 diff --git a/game/characters/snape/main/snape_20.webp b/game/characters/snape/main/snape_20.webp new file mode 100644 index 00000000..e204f329 --- /dev/null +++ b/game/characters/snape/main/snape_20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bff32bb401e744800df1c56a2f0fa302a399651c36a2245ee09de1bdf5ec654 +size 358858 diff --git a/game/characters/snape/main/snape_21.webp b/game/characters/snape/main/snape_21.webp new file mode 100644 index 00000000..043cc5b1 --- /dev/null +++ b/game/characters/snape/main/snape_21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b8948a5b6ed78fd4c5e528cd324586276f789555993c96f599aba0ea62fee4e +size 359314 diff --git a/game/characters/snape/main/snape_22.webp b/game/characters/snape/main/snape_22.webp new file mode 100644 index 00000000..e571b222 --- /dev/null +++ b/game/characters/snape/main/snape_22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:712a058cb9ee217e7f12ab4195baab7db5ef89f806dbade784ee45a596177372 +size 358294 diff --git a/game/characters/snape/main/snape_23.webp b/game/characters/snape/main/snape_23.webp new file mode 100644 index 00000000..8cf5d7a3 --- /dev/null +++ b/game/characters/snape/main/snape_23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:654deac66ffbf48a18db97951d7c04fbbbde6ce89d03e7f8a962121590b82fe9 +size 355126 diff --git a/game/characters/snape/main/snape_24.webp b/game/characters/snape/main/snape_24.webp new file mode 100644 index 00000000..2ea3b06b --- /dev/null +++ b/game/characters/snape/main/snape_24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36c5265979bae41480026853b44be7830d75928394d1cdd60892ad9df84db9c3 +size 357090 diff --git a/game/characters/snape/main/snape_25.webp b/game/characters/snape/main/snape_25.webp new file mode 100644 index 00000000..a055571f --- /dev/null +++ b/game/characters/snape/main/snape_25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f470ab5752cb3734899c68a752658a8352a9f6a7dfde30422933bb0e6ccc110 +size 356980 diff --git a/game/characters/snape/main/snape_26.webp b/game/characters/snape/main/snape_26.webp new file mode 100644 index 00000000..f074ec42 --- /dev/null +++ b/game/characters/snape/main/snape_26.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f0e2cb051db06446866ae520a6068a0533bd67ec49c499471147e78f08acc17 +size 356010 diff --git a/game/characters/snape/main/snape_27.webp b/game/characters/snape/main/snape_27.webp new file mode 100644 index 00000000..e4d19f80 --- /dev/null +++ b/game/characters/snape/main/snape_27.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2394e07b7c48f1355ba41de0d6b456a43254edd76d7f89ffdd205df90e1ced5 +size 356340 diff --git a/game/characters/snape/main/snape_28.webp b/game/characters/snape/main/snape_28.webp new file mode 100644 index 00000000..a64ccfab --- /dev/null +++ b/game/characters/snape/main/snape_28.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e69db4f8ddd636ec9ee431ebe5787eafd09d526c02f2c0939708e72de7e89336 +size 356304 diff --git a/game/characters/snape/main/snape_29.webp b/game/characters/snape/main/snape_29.webp new file mode 100644 index 00000000..84c1c375 --- /dev/null +++ b/game/characters/snape/main/snape_29.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfcaaf3a41851a84cf5952f9ac2e12dc2ef09e02afd3f8873a37614963b8e36f +size 356386 diff --git a/game/characters/snape/main/snape_30.webp b/game/characters/snape/main/snape_30.webp new file mode 100644 index 00000000..93c337ed --- /dev/null +++ b/game/characters/snape/main/snape_30.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75736cddf29866a79a15d86bfbc9b7ba62a8778a99c9bc6079f080d748e6ffab +size 357354 diff --git a/game/characters/snape/main/snape_31.webp b/game/characters/snape/main/snape_31.webp new file mode 100644 index 00000000..b00ff024 --- /dev/null +++ b/game/characters/snape/main/snape_31.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a55fb2ffdc5a172a567eb4c48807237a99f3c5f0fbf7d842bd217d05f36c2b76 +size 355262 diff --git a/game/characters/snape/main/snape_32.webp b/game/characters/snape/main/snape_32.webp new file mode 100644 index 00000000..0933b122 --- /dev/null +++ b/game/characters/snape/main/snape_32.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d09b7fe847b795fcca93859bdf0b9d6ec30925b055f7433a3f7f716cba40ab44 +size 356580 diff --git a/game/characters/snape/main/snape_33.webp b/game/characters/snape/main/snape_33.webp new file mode 100644 index 00000000..313bfbfe --- /dev/null +++ b/game/characters/snape/main/snape_33.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c03885fe806319ef3caab9c0cb78456611be9896f318964b0eb9e3246952c9e4 +size 357194 diff --git a/game/characters/snape/main/snape_34.webp b/game/characters/snape/main/snape_34.webp new file mode 100644 index 00000000..c570b216 --- /dev/null +++ b/game/characters/snape/main/snape_34.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:417b2f7a88cbc7d0b46d72bf31a774884b46e9cea90c2528abc84fed379f6a31 +size 356686 diff --git a/game/characters/snape/main/snape_35.webp b/game/characters/snape/main/snape_35.webp new file mode 100644 index 00000000..d934ec5d --- /dev/null +++ b/game/characters/snape/main/snape_35.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7355dfdaab68a773f00458800a5589d0ed86ca2b1a456e3b89e30c0f6158611b +size 355364 diff --git a/game/characters/snape/main/snape_36.webp b/game/characters/snape/main/snape_36.webp new file mode 100644 index 00000000..6a4e6ce7 --- /dev/null +++ b/game/characters/snape/main/snape_36.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:272587f40ea1612fe60a122623360b5b663a63378d7120f644828f731e4535ca +size 356638 diff --git a/game/characters/snape/main/snape_37.webp b/game/characters/snape/main/snape_37.webp new file mode 100644 index 00000000..e8044410 --- /dev/null +++ b/game/characters/snape/main/snape_37.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7dd9d0bbf67b5d1592e93887043ef6871c91f8acc098af20975052256e44e59b +size 355654 diff --git a/game/characters/snape/main/snape_38.webp b/game/characters/snape/main/snape_38.webp new file mode 100644 index 00000000..7bfa7ce5 --- /dev/null +++ b/game/characters/snape/main/snape_38.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be95319fb85d47f881eb0638108a5c184a03e9d0e55f501ebabddd0caba12bcb +size 354454 diff --git a/game/characters/snape/main/snape_39.webp b/game/characters/snape/main/snape_39.webp new file mode 100644 index 00000000..51db6505 --- /dev/null +++ b/game/characters/snape/main/snape_39.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f16c93f241850c4cc80245d9030a50904a45ef0c8a242e9d7f92096523cf93d +size 355654 diff --git a/game/characters/snape/main/snape_40.webp b/game/characters/snape/main/snape_40.webp new file mode 100644 index 00000000..d210b829 --- /dev/null +++ b/game/characters/snape/main/snape_40.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:305f4c04c7ec43a2dbf7feca4497e8f2e65b2c6073228ce88abf34fd0e9171b6 +size 356604 diff --git a/game/characters/snape/main/snape_41.webp b/game/characters/snape/main/snape_41.webp new file mode 100644 index 00000000..f51bad9f --- /dev/null +++ b/game/characters/snape/main/snape_41.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:186e7da2bed6707edfc70635191a54178e9db845777a53f71ae16017bd2cb450 +size 357888 diff --git a/game/characters/snape/main/snape_42.webp b/game/characters/snape/main/snape_42.webp new file mode 100644 index 00000000..0fb6e2d7 --- /dev/null +++ b/game/characters/snape/main/snape_42.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53a37c17294c7fa7aba3df7652368f8e0197e87bb5341333e884e3734634a8db +size 357370 diff --git a/game/characters/snape/main/snape_43.webp b/game/characters/snape/main/snape_43.webp new file mode 100644 index 00000000..d1b4a9ee --- /dev/null +++ b/game/characters/snape/main/snape_43.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c572d7cdd140f298a39247a844c7b1325da8d43e5c9a2cb7afed870f0f7759aa +size 356278 diff --git a/game/characters/snape/main/snape_44.webp b/game/characters/snape/main/snape_44.webp new file mode 100644 index 00000000..94e9a92e --- /dev/null +++ b/game/characters/snape/main/snape_44.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a95a5099cd4f014f533f89077534cf1fb156c2d267cc31630059655d4405022 +size 355550 diff --git a/game/characters/snape/main/snape_45.webp b/game/characters/snape/main/snape_45.webp new file mode 100644 index 00000000..327f8627 --- /dev/null +++ b/game/characters/snape/main/snape_45.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83034321ed6a49624f543efb9d85aaa0bbceace38bbda2ab02394bf912ae1f1b +size 356186 diff --git a/game/characters/snape/main/snape_46.webp b/game/characters/snape/main/snape_46.webp new file mode 100644 index 00000000..dbc6b5bb --- /dev/null +++ b/game/characters/snape/main/snape_46.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bffb2bcfd83f1dc81bc7d27703ad491ab1916665eba52ac1b483860ef053cfc +size 358318 diff --git a/game/characters/snape/main/snape_47.webp b/game/characters/snape/main/snape_47.webp new file mode 100644 index 00000000..0d655050 --- /dev/null +++ b/game/characters/snape/main/snape_47.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e04755a8d51eba27031c058bdf9f8927effeda5e2c920e3aad15216cc28f068 +size 355288 diff --git a/game/characters/snape/main/snape_clown.webp b/game/characters/snape/main/snape_clown.webp new file mode 100644 index 00000000..d34113c3 --- /dev/null +++ b/game/characters/snape/main/snape_clown.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df08de1e15717b09e91c063b7cedcf623c2e2f9e7eb556d9eb10ab5749b3d7b4 +size 350630 diff --git a/game/characters/snape/main/snape_cum.webp b/game/characters/snape/main/snape_cum.webp new file mode 100644 index 00000000..950060b9 --- /dev/null +++ b/game/characters/snape/main/snape_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:011f37930a1cda66abf852a1858f81682d242d68980c33e95097b8653614196a +size 160890 diff --git a/game/characters/snape/main/wand.webp b/game/characters/snape/main/wand.webp new file mode 100644 index 00000000..bf37efe4 --- /dev/null +++ b/game/characters/snape/main/wand.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e2efc9286240eff5f860c361b52e9c561dcd7fbb8841b06f5aedcae238de556 +size 272326 diff --git a/game/characters/susan/body/armleft/behind.webp b/game/characters/susan/body/armleft/behind.webp new file mode 100644 index 00000000..a8a2b2cb --- /dev/null +++ b/game/characters/susan/body/armleft/behind.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edfb48aab99a5aca19022b00e371df361110861398ed059ae97d858e596d4275 +size 15760 diff --git a/game/characters/susan/body/armright/behind.webp b/game/characters/susan/body/armright/behind.webp new file mode 100644 index 00000000..d09a9a0e --- /dev/null +++ b/game/characters/susan/body/armright/behind.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec03e9dd84c64cb1a0abd9ce7458f07e72b8c9a4fbc11a1828ae230316dd895d +size 5904 diff --git a/game/characters/susan/body/base/front.webp b/game/characters/susan/body/base/front.webp new file mode 100644 index 00000000..ddd02300 --- /dev/null +++ b/game/characters/susan/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45304d912b3dd3954cd3c5575f17400bdcf05bd9d75171d79fe4d81c18e862f6 +size 87632 diff --git a/game/characters/susan/body/base/pubes_1.webp b/game/characters/susan/body/base/pubes_1.webp new file mode 100644 index 00000000..3f0b672d --- /dev/null +++ b/game/characters/susan/body/base/pubes_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbdd73886e2ee617c717777a37b8fdfe5e2f6a167aa5b25ff68470eeca1e4b05 +size 3672 diff --git a/game/characters/susan/body/breasts/normal.webp b/game/characters/susan/body/breasts/normal.webp new file mode 100644 index 00000000..c0a3b871 --- /dev/null +++ b/game/characters/susan/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a101994f08f4ce264cd9d19c4da7eb6c2255967dfaed2272fe9f48375507e1a2 +size 20374 diff --git a/game/characters/susan/body/breasts/normal_tight.webp b/game/characters/susan/body/breasts/normal_tight.webp new file mode 100644 index 00000000..84975596 --- /dev/null +++ b/game/characters/susan/body/breasts/normal_tight.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fff05e7238ab84035faa2d11c33df2880a88f2e083f87b0e3cb3e7162d9a696 +size 19998 diff --git a/game/characters/susan/chibis/sb_cloth_robe_h.webp b/game/characters/susan/chibis/sb_cloth_robe_h.webp new file mode 100644 index 00000000..0bcd7e97 --- /dev/null +++ b/game/characters/susan/chibis/sb_cloth_robe_h.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da1e780d18115a851258515814d5cca1772de2f3e605bd275a974962c3a24301 +size 13486 diff --git a/game/characters/susan/chibis/sb_cloth_shirt_h.webp b/game/characters/susan/chibis/sb_cloth_shirt_h.webp new file mode 100644 index 00000000..ebd38ec1 --- /dev/null +++ b/game/characters/susan/chibis/sb_cloth_shirt_h.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f087b4ce10bd4beb880c9ed35c7ff762bc35fa7ce5e86441d4219cef59a942a +size 6360 diff --git a/game/characters/susan/chibis/sb_cloth_skirt.webp b/game/characters/susan/chibis/sb_cloth_skirt.webp new file mode 100644 index 00000000..dc2e8195 --- /dev/null +++ b/game/characters/susan/chibis/sb_cloth_skirt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb1cc5373caf2fd80272b0ed57c79c61bb86705990d3f3fc5261ab0ed1bc0683 +size 4188 diff --git a/game/characters/susan/chibis/sb_stand_blink.webp b/game/characters/susan/chibis/sb_stand_blink.webp new file mode 100644 index 00000000..519a4fe8 --- /dev/null +++ b/game/characters/susan/chibis/sb_stand_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eef850a6de5e8799667689567d8fb55f52f7be930b2d877797cc1bb53323dfec +size 25232 diff --git a/game/characters/susan/chibis/sb_walk_01.webp b/game/characters/susan/chibis/sb_walk_01.webp new file mode 100644 index 00000000..c03e488c --- /dev/null +++ b/game/characters/susan/chibis/sb_walk_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f52a0cef9aefc92d74456b84b1870d8efc9878fd1dae1462a1d7fa34c558b763 +size 25910 diff --git a/game/characters/susan/chibis/sb_walk_01_shoes.webp b/game/characters/susan/chibis/sb_walk_01_shoes.webp new file mode 100644 index 00000000..cedf853b --- /dev/null +++ b/game/characters/susan/chibis/sb_walk_01_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b6e6ee0e72f426ae63ea994495a0688cfc009dc9e42d40def7268c1c06a30b6 +size 2696 diff --git a/game/characters/susan/chibis/sb_walk_02.webp b/game/characters/susan/chibis/sb_walk_02.webp new file mode 100644 index 00000000..5dcef95b --- /dev/null +++ b/game/characters/susan/chibis/sb_walk_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59fb68998a568e9279f8352b7430a05bb79d219234a3c60003a4299c36b1595b +size 25470 diff --git a/game/characters/susan/chibis/sb_walk_02_shoes.webp b/game/characters/susan/chibis/sb_walk_02_shoes.webp new file mode 100644 index 00000000..c8f4bced --- /dev/null +++ b/game/characters/susan/chibis/sb_walk_02_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20991dd15cb89e1b0209c13148520d66cbc5b0fdbc9a710cc8e7c0622ecadc3c +size 2322 diff --git a/game/characters/susan/chibis/sb_walk_03.webp b/game/characters/susan/chibis/sb_walk_03.webp new file mode 100644 index 00000000..c2401f10 --- /dev/null +++ b/game/characters/susan/chibis/sb_walk_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7610e02be3f3215674bacf0767557acfc581f28568ab57d232c6a7236777f63 +size 26204 diff --git a/game/characters/susan/chibis/sb_walk_03_shoes.webp b/game/characters/susan/chibis/sb_walk_03_shoes.webp new file mode 100644 index 00000000..3c6dfcc7 --- /dev/null +++ b/game/characters/susan/chibis/sb_walk_03_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a299cf5911324d2ce1ad67cc9d3a105dfe11ef63e7a2ef90de5f9429628b09da +size 2812 diff --git a/game/characters/susan/chibis/sb_walk_04.webp b/game/characters/susan/chibis/sb_walk_04.webp new file mode 100644 index 00000000..8a085740 --- /dev/null +++ b/game/characters/susan/chibis/sb_walk_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3affe401751b589b6728c62c59e94a464b1fc9fc66e6fd8c22f6283edb12e0f6 +size 26704 diff --git a/game/characters/susan/chibis/sb_walk_04_shoes.webp b/game/characters/susan/chibis/sb_walk_04_shoes.webp new file mode 100644 index 00000000..2149a9be --- /dev/null +++ b/game/characters/susan/chibis/sb_walk_04_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:325d5e1dc7e3090db34cb0c71ad9538dd953ad7fbf5a376e7f1762b58f6e9a58 +size 2846 diff --git a/game/characters/susan/chibis/sb_walk_05.webp b/game/characters/susan/chibis/sb_walk_05.webp new file mode 100644 index 00000000..94a92900 --- /dev/null +++ b/game/characters/susan/chibis/sb_walk_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f39fc9b49d9b2c712da304055d86a32de1a955d0b2321e6b66d99f3e39101e26 +size 26788 diff --git a/game/characters/susan/chibis/sb_walk_05_shoes.webp b/game/characters/susan/chibis/sb_walk_05_shoes.webp new file mode 100644 index 00000000..faec42da --- /dev/null +++ b/game/characters/susan/chibis/sb_walk_05_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83858ad1973550bf20d20a85027ccf173cef5a69a1d7b7616983be6bc432366c +size 2636 diff --git a/game/characters/susan/clothes/bottom/jeans_1/0.webp b/game/characters/susan/clothes/bottom/jeans_1/0.webp new file mode 100644 index 00000000..df8a085c --- /dev/null +++ b/game/characters/susan/clothes/bottom/jeans_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eed697b1c8055311de157d5e06745e88bd542f7d65e3412a1c4602fdde1757d7 +size 12902 diff --git a/game/characters/susan/clothes/bottom/jeans_1/1.webp b/game/characters/susan/clothes/bottom/jeans_1/1.webp new file mode 100644 index 00000000..f0f1ca96 --- /dev/null +++ b/game/characters/susan/clothes/bottom/jeans_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:552fc88795bb5e4b895a9a95361a7339fc01db92682ef7eeadd1086f6bcefba3 +size 652 diff --git a/game/characters/susan/clothes/bottom/jeans_1/outline.webp b/game/characters/susan/clothes/bottom/jeans_1/outline.webp new file mode 100644 index 00000000..e407a42e --- /dev/null +++ b/game/characters/susan/clothes/bottom/jeans_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:238b662d4b7ecec6efc1f0895493dc4904038d27e7ea59ff5722ed2ff2877d54 +size 14324 diff --git a/game/characters/susan/clothes/bottom/school_skirt_1/0.webp b/game/characters/susan/clothes/bottom/school_skirt_1/0.webp new file mode 100644 index 00000000..8a8c21fb --- /dev/null +++ b/game/characters/susan/clothes/bottom/school_skirt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a731b76a4c12d8e11404198cd560889f541f4b8424ba61d320d8fdaa8504694 +size 30474 diff --git a/game/characters/susan/clothes/bottom/school_skirt_1/1.webp b/game/characters/susan/clothes/bottom/school_skirt_1/1.webp new file mode 100644 index 00000000..b8f90392 --- /dev/null +++ b/game/characters/susan/clothes/bottom/school_skirt_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36a00c1c194d993e651131c77b5a5491537d917ce726bc104cff899085b90fdb +size 948 diff --git a/game/characters/susan/clothes/bottom/school_skirt_1/outline.webp b/game/characters/susan/clothes/bottom/school_skirt_1/outline.webp new file mode 100644 index 00000000..6a8100b6 --- /dev/null +++ b/game/characters/susan/clothes/bottom/school_skirt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb4a71a58603e5129a68d551e683be5afa8dd2707de117089e426fbd0af5d19a +size 35138 diff --git a/game/characters/susan/clothes/bra/base/0.webp b/game/characters/susan/clothes/bra/base/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/bra/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/bra/base/mask.webp b/game/characters/susan/clothes/bra/base/mask.webp new file mode 100644 index 00000000..d4e8418e --- /dev/null +++ b/game/characters/susan/clothes/bra/base/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:556ce1114c9e7be2539d2ea3a65170fa70ad068e721c7ec5c41182b005249301 +size 1190 diff --git a/game/characters/susan/clothes/bra/base/outline.webp b/game/characters/susan/clothes/bra/base/outline.webp new file mode 100644 index 00000000..554a656e --- /dev/null +++ b/game/characters/susan/clothes/bra/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e81c8f1625bc8716f2a7d1388d17d8a3a97de06f91625a0824f0bd723b11123 +size 17238 diff --git a/game/characters/susan/clothes/bra/base/skin.webp b/game/characters/susan/clothes/bra/base/skin.webp new file mode 100644 index 00000000..84975596 --- /dev/null +++ b/game/characters/susan/clothes/bra/base/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fff05e7238ab84035faa2d11c33df2880a88f2e083f87b0e3cb3e7162d9a696 +size 19998 diff --git a/game/characters/susan/clothes/bra/basic_bra_1/0.webp b/game/characters/susan/clothes/bra/basic_bra_1/0.webp new file mode 100644 index 00000000..de2f67ee --- /dev/null +++ b/game/characters/susan/clothes/bra/basic_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95e9b81eeec76c4187071c2d462fabcdd4012d183a71bd776e96c33c96dfc98f +size 4580 diff --git a/game/characters/susan/clothes/bra/basic_bra_1/1.webp b/game/characters/susan/clothes/bra/basic_bra_1/1.webp new file mode 100644 index 00000000..1c7299af --- /dev/null +++ b/game/characters/susan/clothes/bra/basic_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:522bd0fb6cee8313aaee1086e394c14f1bc689a12ae825929a6de6a9be0feaf9 +size 5238 diff --git a/game/characters/susan/clothes/bra/basic_bra_1/2.webp b/game/characters/susan/clothes/bra/basic_bra_1/2.webp new file mode 100644 index 00000000..93aa5676 --- /dev/null +++ b/game/characters/susan/clothes/bra/basic_bra_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8947843a9895596498cddb5ec40d43f0545ea952f642006318f00a73b0f3541f +size 1630 diff --git a/game/characters/susan/clothes/bra/basic_bra_1/mask.webp b/game/characters/susan/clothes/bra/basic_bra_1/mask.webp new file mode 100644 index 00000000..c06fb9cb --- /dev/null +++ b/game/characters/susan/clothes/bra/basic_bra_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b26e3b0b53026a21986a163b0f9215dc2f7101eb91b28b10274ad08fc57a39d0 +size 1516 diff --git a/game/characters/susan/clothes/bra/basic_bra_1/outline.webp b/game/characters/susan/clothes/bra/basic_bra_1/outline.webp new file mode 100644 index 00000000..4f8c58b4 --- /dev/null +++ b/game/characters/susan/clothes/bra/basic_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1da2c450a0c89a4b831525c5917d0525cb837c9543f5bc75bf78e7ef448b9d75 +size 11892 diff --git a/game/characters/susan/clothes/bra/basic_bra_1/skin.webp b/game/characters/susan/clothes/bra/basic_bra_1/skin.webp new file mode 100644 index 00000000..2c7a9d23 --- /dev/null +++ b/game/characters/susan/clothes/bra/basic_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cf6da2aad4b8ea583f8bc9918624db25e2b9f6dff783541584f10503041ee9a +size 2294 diff --git a/game/characters/susan/clothes/bra/chain/0.webp b/game/characters/susan/clothes/bra/chain/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/bra/chain/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/bra/chain/outline.webp b/game/characters/susan/clothes/bra/chain/outline.webp new file mode 100644 index 00000000..f9004e03 --- /dev/null +++ b/game/characters/susan/clothes/bra/chain/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60f2f109b54c60e1e8f365ab6d2a32f04b86b209fe5b0e05ee08992524ab1a85 +size 11816 diff --git a/game/characters/susan/clothes/bra/lace/0.webp b/game/characters/susan/clothes/bra/lace/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/bra/lace/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/bra/lace/mask.webp b/game/characters/susan/clothes/bra/lace/mask.webp new file mode 100644 index 00000000..d4e8418e --- /dev/null +++ b/game/characters/susan/clothes/bra/lace/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:556ce1114c9e7be2539d2ea3a65170fa70ad068e721c7ec5c41182b005249301 +size 1190 diff --git a/game/characters/susan/clothes/bra/lace/outline.webp b/game/characters/susan/clothes/bra/lace/outline.webp new file mode 100644 index 00000000..184d2396 --- /dev/null +++ b/game/characters/susan/clothes/bra/lace/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ea6a857c984eee7576ab005bfd314157f5460b940aab8551492fe3c7ba8fb4b +size 59968 diff --git a/game/characters/susan/clothes/bra/lace/skin.webp b/game/characters/susan/clothes/bra/lace/skin.webp new file mode 100644 index 00000000..84975596 --- /dev/null +++ b/game/characters/susan/clothes/bra/lace/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fff05e7238ab84035faa2d11c33df2880a88f2e083f87b0e3cb3e7162d9a696 +size 19998 diff --git a/game/characters/susan/clothes/bra/lace_bra_1/0.webp b/game/characters/susan/clothes/bra/lace_bra_1/0.webp new file mode 100644 index 00000000..a50c70d6 --- /dev/null +++ b/game/characters/susan/clothes/bra/lace_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20ffc01d789e8a4b8559b28c56ec884558738b8d3771580f29cbb4d0a9fcb632 +size 9498 diff --git a/game/characters/susan/clothes/bra/lace_bra_1/1.webp b/game/characters/susan/clothes/bra/lace_bra_1/1.webp new file mode 100644 index 00000000..9b9d0957 --- /dev/null +++ b/game/characters/susan/clothes/bra/lace_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5d0fa915792881c72e224c4f5b719d765d45b517422ee9d03c82544868bd759 +size 3874 diff --git a/game/characters/susan/clothes/bra/lace_bra_1/mask.webp b/game/characters/susan/clothes/bra/lace_bra_1/mask.webp new file mode 100644 index 00000000..c06fb9cb --- /dev/null +++ b/game/characters/susan/clothes/bra/lace_bra_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b26e3b0b53026a21986a163b0f9215dc2f7101eb91b28b10274ad08fc57a39d0 +size 1516 diff --git a/game/characters/susan/clothes/bra/lace_bra_1/outline.webp b/game/characters/susan/clothes/bra/lace_bra_1/outline.webp new file mode 100644 index 00000000..cc3f9287 --- /dev/null +++ b/game/characters/susan/clothes/bra/lace_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8de968a0055bbb5640688c57aafec6fe6de9b98f134097ff19f5e11cf4e96a43 +size 16826 diff --git a/game/characters/susan/clothes/bra/lace_bra_1/skin.webp b/game/characters/susan/clothes/bra/lace_bra_1/skin.webp new file mode 100644 index 00000000..d338ed9a --- /dev/null +++ b/game/characters/susan/clothes/bra/lace_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c79a41ca54afe0a85cb74b4855494304f1d1fd2b08b6ccd12eb8be1dbf74d49 +size 2564 diff --git a/game/characters/susan/clothes/bra/muggle_bra_1/0.webp b/game/characters/susan/clothes/bra/muggle_bra_1/0.webp new file mode 100644 index 00000000..07b3c76b --- /dev/null +++ b/game/characters/susan/clothes/bra/muggle_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7fbf5aa957ccd5307a1436832bf467383c43029d928b9d199c3c22672a0a909 +size 4868 diff --git a/game/characters/susan/clothes/bra/muggle_bra_1/1.webp b/game/characters/susan/clothes/bra/muggle_bra_1/1.webp new file mode 100644 index 00000000..423e0fc6 --- /dev/null +++ b/game/characters/susan/clothes/bra/muggle_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be62b070095afced7c6629bccb0e05173d107136f19384591c2344d4fe316e34 +size 4316 diff --git a/game/characters/susan/clothes/bra/muggle_bra_1/mask.webp b/game/characters/susan/clothes/bra/muggle_bra_1/mask.webp new file mode 100644 index 00000000..1c32ab7b --- /dev/null +++ b/game/characters/susan/clothes/bra/muggle_bra_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e779bd394f86490726de87b081c2c3db34525edf09e47c0286a54059223d983 +size 1592 diff --git a/game/characters/susan/clothes/bra/muggle_bra_1/outline.webp b/game/characters/susan/clothes/bra/muggle_bra_1/outline.webp new file mode 100644 index 00000000..8a6c69be --- /dev/null +++ b/game/characters/susan/clothes/bra/muggle_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d58d0856b718e7bf4ca3dbdeaf4053d5cd22d75ea940cb32b4150806be51703d +size 8894 diff --git a/game/characters/susan/clothes/bra/muggle_bra_1/skin.webp b/game/characters/susan/clothes/bra/muggle_bra_1/skin.webp new file mode 100644 index 00000000..81f6bea4 --- /dev/null +++ b/game/characters/susan/clothes/bra/muggle_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e60f20f36e0bb8d04a1f03f15178e32166559cfb0f3b72375cda2b894a08822 +size 2910 diff --git a/game/characters/susan/clothes/bra/sport_bra_1/0.webp b/game/characters/susan/clothes/bra/sport_bra_1/0.webp new file mode 100644 index 00000000..2017fd87 --- /dev/null +++ b/game/characters/susan/clothes/bra/sport_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eda679fe3ee70c68f73343b68d8a2bfa018248f7e4ea63c7ae9cd8510d2d1987 +size 7128 diff --git a/game/characters/susan/clothes/bra/sport_bra_1/1.webp b/game/characters/susan/clothes/bra/sport_bra_1/1.webp new file mode 100644 index 00000000..99566a6f --- /dev/null +++ b/game/characters/susan/clothes/bra/sport_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:161ac79b9789b722bebd54e031c085aa58ec97a79b76ce1a8a4a1ca074ee35df +size 6620 diff --git a/game/characters/susan/clothes/bra/sport_bra_1/mask.webp b/game/characters/susan/clothes/bra/sport_bra_1/mask.webp new file mode 100644 index 00000000..ebaa2256 --- /dev/null +++ b/game/characters/susan/clothes/bra/sport_bra_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d769281315d3f033c27ab1aa754768d99849f4e7a0aeb943a4dfb029c633449d +size 1860 diff --git a/game/characters/susan/clothes/bra/sport_bra_1/outline.webp b/game/characters/susan/clothes/bra/sport_bra_1/outline.webp new file mode 100644 index 00000000..9b731655 --- /dev/null +++ b/game/characters/susan/clothes/bra/sport_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f9c6fb6c6220823e6c83061a39a39fa7e4b4fe9f5af78bc249961c3d7c92e8e +size 10734 diff --git a/game/characters/susan/clothes/bra/sport_bra_1/skin.webp b/game/characters/susan/clothes/bra/sport_bra_1/skin.webp new file mode 100644 index 00000000..f5a1dc96 --- /dev/null +++ b/game/characters/susan/clothes/bra/sport_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a33267b458b3768bcf63bbedac8955866f04c5a2f3b5e1fb49f0520442822532 +size 1438 diff --git a/game/characters/susan/clothes/garterbelt/garter_belt_1/0.webp b/game/characters/susan/clothes/garterbelt/garter_belt_1/0.webp new file mode 100644 index 00000000..7ce21257 --- /dev/null +++ b/game/characters/susan/clothes/garterbelt/garter_belt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1534dec4f18f6d13a667672733dd42168f895551bb26da44d5890497e837d69b +size 5356 diff --git a/game/characters/susan/clothes/garterbelt/garter_belt_1/outline.webp b/game/characters/susan/clothes/garterbelt/garter_belt_1/outline.webp new file mode 100644 index 00000000..957b1c6c --- /dev/null +++ b/game/characters/susan/clothes/garterbelt/garter_belt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcc8e62c7509c9ebdfe15bcb03bab5553b8dd307b590bf16b9b014511e61460d +size 8866 diff --git a/game/characters/susan/clothes/garterbelt/garter_belt_1/skin.webp b/game/characters/susan/clothes/garterbelt/garter_belt_1/skin.webp new file mode 100644 index 00000000..c0a0d6d7 --- /dev/null +++ b/game/characters/susan/clothes/garterbelt/garter_belt_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6f70babcc12e675d4639856af93073ebbfd880e154fe00da7f851e3894865f5 +size 3606 diff --git a/game/characters/susan/clothes/hair/base/0.webp b/game/characters/susan/clothes/hair/base/0.webp new file mode 100644 index 00000000..74b97c94 --- /dev/null +++ b/game/characters/susan/clothes/hair/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b950e0f6ee9e377fa2de1b0b20c76d893a211b6c36317ccbd315431b182d5bf +size 20816 diff --git a/game/characters/susan/clothes/hair/base/outline.webp b/game/characters/susan/clothes/hair/base/outline.webp new file mode 100644 index 00000000..7d104acb --- /dev/null +++ b/game/characters/susan/clothes/hair/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf270a07303808c401693d919f04a3727cee1a11cc09942287c7252d80c196d6 +size 22012 diff --git a/game/characters/susan/clothes/neckwear/choker/0.webp b/game/characters/susan/clothes/neckwear/choker/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/neckwear/choker/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/neckwear/choker/outline.webp b/game/characters/susan/clothes/neckwear/choker/outline.webp new file mode 100644 index 00000000..fd34100e --- /dev/null +++ b/game/characters/susan/clothes/neckwear/choker/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d28868da8c3e811c57fd2929e3acc8889ea74ca9af19d4d6677d5003942c85f +size 3532 diff --git a/game/characters/susan/clothes/panties/basic_panties_1/0.webp b/game/characters/susan/clothes/panties/basic_panties_1/0.webp new file mode 100644 index 00000000..33393906 --- /dev/null +++ b/game/characters/susan/clothes/panties/basic_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f02d0a2fd06f5a99840ad0888be36bf62970cd98a618d055b38dec3759b47036 +size 3990 diff --git a/game/characters/susan/clothes/panties/basic_panties_1/1.webp b/game/characters/susan/clothes/panties/basic_panties_1/1.webp new file mode 100644 index 00000000..bd37ff76 --- /dev/null +++ b/game/characters/susan/clothes/panties/basic_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1526f0588b31aa31f34231e424e6143611b7d6169addb56c9db4effc638c979 +size 4724 diff --git a/game/characters/susan/clothes/panties/basic_panties_1/2.webp b/game/characters/susan/clothes/panties/basic_panties_1/2.webp new file mode 100644 index 00000000..b045e7a4 --- /dev/null +++ b/game/characters/susan/clothes/panties/basic_panties_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:022009c08c26b7b429a97aad521a8149337599e152a4c66bb6d95059f6b124a8 +size 1002 diff --git a/game/characters/susan/clothes/panties/basic_panties_1/outline.webp b/game/characters/susan/clothes/panties/basic_panties_1/outline.webp new file mode 100644 index 00000000..432b6e94 --- /dev/null +++ b/game/characters/susan/clothes/panties/basic_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29fc9d1d401fbef67ec77377800d978f4a7ff2b467c928a3d31e7963c13fdade +size 7200 diff --git a/game/characters/susan/clothes/panties/basic_panties_1/skin.webp b/game/characters/susan/clothes/panties/basic_panties_1/skin.webp new file mode 100644 index 00000000..eac5a393 --- /dev/null +++ b/game/characters/susan/clothes/panties/basic_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9eb322e7f84a249eba7ebde09b3a392cb0d3307702f976010f9743c50b9302b8 +size 2876 diff --git a/game/characters/susan/clothes/panties/lace/0.webp b/game/characters/susan/clothes/panties/lace/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/panties/lace/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/panties/lace/outline.webp b/game/characters/susan/clothes/panties/lace/outline.webp new file mode 100644 index 00000000..be057a49 --- /dev/null +++ b/game/characters/susan/clothes/panties/lace/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9e9bff9d34e0027b7eac6e84c34d9f2e278acc31bc61423eea8b1560b002347 +size 18904 diff --git a/game/characters/susan/clothes/panties/lace_panties_1/0.webp b/game/characters/susan/clothes/panties/lace_panties_1/0.webp new file mode 100644 index 00000000..abbac118 --- /dev/null +++ b/game/characters/susan/clothes/panties/lace_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bb5be81813973669e70af35540d392bb64a3710f677cfa6cd6f2688c89f3af4 +size 3788 diff --git a/game/characters/susan/clothes/panties/lace_panties_1/1.webp b/game/characters/susan/clothes/panties/lace_panties_1/1.webp new file mode 100644 index 00000000..1e9343fa --- /dev/null +++ b/game/characters/susan/clothes/panties/lace_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:034b326bf484b95fa06c235c008e2d62b71bec3a4f9f6470564cbfafef266aee +size 1494 diff --git a/game/characters/susan/clothes/panties/lace_panties_1/2.webp b/game/characters/susan/clothes/panties/lace_panties_1/2.webp new file mode 100644 index 00000000..29e686fd --- /dev/null +++ b/game/characters/susan/clothes/panties/lace_panties_1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:967c3436eccacea4e28b1bdcde9d2968da3dfc531f555a808e5a77c497cb6d66 +size 1112 diff --git a/game/characters/susan/clothes/panties/lace_panties_1/outline.webp b/game/characters/susan/clothes/panties/lace_panties_1/outline.webp new file mode 100644 index 00000000..f1f3691b --- /dev/null +++ b/game/characters/susan/clothes/panties/lace_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb8a2ac1e8498db0681f24aabef0e97cd767d2447edbafcbc546ba354b4aa8c8 +size 6516 diff --git a/game/characters/susan/clothes/panties/lace_panties_1/skin.webp b/game/characters/susan/clothes/panties/lace_panties_1/skin.webp new file mode 100644 index 00000000..c0cc3c75 --- /dev/null +++ b/game/characters/susan/clothes/panties/lace_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e119acb0765a6092320683be4ddbb9e6822ea46fb82345aa5550c2a12ec418aa +size 1878 diff --git a/game/characters/susan/clothes/panties/muggle_panties_1/0.webp b/game/characters/susan/clothes/panties/muggle_panties_1/0.webp new file mode 100644 index 00000000..86621244 --- /dev/null +++ b/game/characters/susan/clothes/panties/muggle_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f48a18bda94f903429e6e6fe9aebc7b5ad8320962061ae6bf8b34e786e37174 +size 4102 diff --git a/game/characters/susan/clothes/panties/muggle_panties_1/1.webp b/game/characters/susan/clothes/panties/muggle_panties_1/1.webp new file mode 100644 index 00000000..db76e3d8 --- /dev/null +++ b/game/characters/susan/clothes/panties/muggle_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9a063e347e883a15261612fef227f4d22349def04a31d52eb669a2518e86754 +size 1974 diff --git a/game/characters/susan/clothes/panties/muggle_panties_1/outline.webp b/game/characters/susan/clothes/panties/muggle_panties_1/outline.webp new file mode 100644 index 00000000..c6d9e472 --- /dev/null +++ b/game/characters/susan/clothes/panties/muggle_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6411f2b7d492462b8b441861065ce14c7ffd3ad814f111d148ae96330a0d538a +size 5116 diff --git a/game/characters/susan/clothes/panties/sport_panties_1/0.webp b/game/characters/susan/clothes/panties/sport_panties_1/0.webp new file mode 100644 index 00000000..d08f9d09 --- /dev/null +++ b/game/characters/susan/clothes/panties/sport_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62e481acfbaeffcd506d1c7b944fb9332f60695d58fc146d8547a2b6d89b887d +size 5252 diff --git a/game/characters/susan/clothes/panties/sport_panties_1/1.webp b/game/characters/susan/clothes/panties/sport_panties_1/1.webp new file mode 100644 index 00000000..942aca28 --- /dev/null +++ b/game/characters/susan/clothes/panties/sport_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bcd1975f80f9f1fd461ca973115249916856b0ca01838a907d6ca5f3e334979 +size 3712 diff --git a/game/characters/susan/clothes/panties/sport_panties_1/outline.webp b/game/characters/susan/clothes/panties/sport_panties_1/outline.webp new file mode 100644 index 00000000..e7aead32 --- /dev/null +++ b/game/characters/susan/clothes/panties/sport_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0ae62c28d9809f0f344a1a9049611dd4a90465cef2d025d5dbe38072733eb2e +size 9084 diff --git a/game/characters/susan/clothes/panties/sport_panties_1/skin.webp b/game/characters/susan/clothes/panties/sport_panties_1/skin.webp new file mode 100644 index 00000000..e1d72cd8 --- /dev/null +++ b/game/characters/susan/clothes/panties/sport_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6191415105ce24f9ae3c4ea3203d8db22dc81e44240186142b679cff153b4a3 +size 2170 diff --git a/game/characters/susan/clothes/stockings/base/0.webp b/game/characters/susan/clothes/stockings/base/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/stockings/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/stockings/base/outline.webp b/game/characters/susan/clothes/stockings/base/outline.webp new file mode 100644 index 00000000..e4825136 --- /dev/null +++ b/game/characters/susan/clothes/stockings/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2d5db8559a254b879b55a696a0aafa1d4ef91b5fe21db6e2bbb7db384be4bc3 +size 8092 diff --git a/game/characters/susan/clothes/stockings/lace/0.webp b/game/characters/susan/clothes/stockings/lace/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/stockings/lace/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/stockings/lace/outline.webp b/game/characters/susan/clothes/stockings/lace/outline.webp new file mode 100644 index 00000000..03a3714c --- /dev/null +++ b/game/characters/susan/clothes/stockings/lace/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1552c7b1a66c03ea5938e21b39e7f66360dee8eaf4523b072eaaa54f3162e7aa +size 42924 diff --git a/game/characters/susan/clothes/stockings/lace2/0.webp b/game/characters/susan/clothes/stockings/lace2/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/stockings/lace2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/stockings/lace2/outline.webp b/game/characters/susan/clothes/stockings/lace2/outline.webp new file mode 100644 index 00000000..18f8209c --- /dev/null +++ b/game/characters/susan/clothes/stockings/lace2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bed188edd43e1b32a6f3afa2d38591492af2a0a2f6363a720249153f15188a3d +size 23034 diff --git a/game/characters/susan/clothes/stockings/striped_stockings_1/0.webp b/game/characters/susan/clothes/stockings/striped_stockings_1/0.webp new file mode 100644 index 00000000..8bc2dbc7 --- /dev/null +++ b/game/characters/susan/clothes/stockings/striped_stockings_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1408a268755a357c08dbbf2d8450098dbae173fde3cf79b316601b8a06714e17 +size 4868 diff --git a/game/characters/susan/clothes/stockings/striped_stockings_1/1.webp b/game/characters/susan/clothes/stockings/striped_stockings_1/1.webp new file mode 100644 index 00000000..7599d4a6 --- /dev/null +++ b/game/characters/susan/clothes/stockings/striped_stockings_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2beada89e67baad28deb9e702a14b6093089b5817b53b3ea350c94fb32862462 +size 2582 diff --git a/game/characters/susan/clothes/stockings/striped_stockings_1/outline.webp b/game/characters/susan/clothes/stockings/striped_stockings_1/outline.webp new file mode 100644 index 00000000..dcbdb73b --- /dev/null +++ b/game/characters/susan/clothes/stockings/striped_stockings_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b5fdc471590e4212a3167b8af146d501874b58d1abca221eaa458b06fedfa35 +size 7492 diff --git a/game/characters/susan/clothes/stockings/striped_stockings_1/skin.webp b/game/characters/susan/clothes/stockings/striped_stockings_1/skin.webp new file mode 100644 index 00000000..d77caaef --- /dev/null +++ b/game/characters/susan/clothes/stockings/striped_stockings_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bf2df40d220e1b3769117524a00dccf1d23b5c6986e8879a5f7f2722035da13 +size 2748 diff --git a/game/characters/susan/clothes/top/ball/0.webp b/game/characters/susan/clothes/top/ball/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/top/ball/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/top/ball/mask.webp b/game/characters/susan/clothes/top/ball/mask.webp new file mode 100644 index 00000000..6bf8dd6e --- /dev/null +++ b/game/characters/susan/clothes/top/ball/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc1070fab5435efa81f2db0f928c43d90057dfaf75a10e94d5c307e6c9b7956e +size 1592 diff --git a/game/characters/susan/clothes/top/ball/outline.webp b/game/characters/susan/clothes/top/ball/outline.webp new file mode 100644 index 00000000..3dc2ca74 --- /dev/null +++ b/game/characters/susan/clothes/top/ball/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22691b9711aed36267851b193759e5d8c257227d9974909b5a84b5b47a518c46 +size 136024 diff --git a/game/characters/susan/clothes/top/ball/skin.webp b/game/characters/susan/clothes/top/ball/skin.webp new file mode 100644 index 00000000..84975596 --- /dev/null +++ b/game/characters/susan/clothes/top/ball/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fff05e7238ab84035faa2d11c33df2880a88f2e083f87b0e3cb3e7162d9a696 +size 19998 diff --git a/game/characters/susan/clothes/top/heart/0.webp b/game/characters/susan/clothes/top/heart/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/top/heart/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/top/heart/mask.webp b/game/characters/susan/clothes/top/heart/mask.webp new file mode 100644 index 00000000..5e424290 --- /dev/null +++ b/game/characters/susan/clothes/top/heart/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96ff00d426ef44f7d2773d6d6af3a66a4375f07a83b465fdb4e57dd6d597a0e4 +size 1886 diff --git a/game/characters/susan/clothes/top/heart/outline.webp b/game/characters/susan/clothes/top/heart/outline.webp new file mode 100644 index 00000000..38e6b114 --- /dev/null +++ b/game/characters/susan/clothes/top/heart/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8969b3b5e1905c45be77bcbc577d986af6ad9dc603b067fa58f7ae5e7532e55c +size 126972 diff --git a/game/characters/susan/clothes/top/heart/skin.webp b/game/characters/susan/clothes/top/heart/skin.webp new file mode 100644 index 00000000..84975596 --- /dev/null +++ b/game/characters/susan/clothes/top/heart/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fff05e7238ab84035faa2d11c33df2880a88f2e083f87b0e3cb3e7162d9a696 +size 19998 diff --git a/game/characters/susan/clothes/top/muggle_casual_top_1/0.webp b/game/characters/susan/clothes/top/muggle_casual_top_1/0.webp new file mode 100644 index 00000000..347457f0 --- /dev/null +++ b/game/characters/susan/clothes/top/muggle_casual_top_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9c4637e108227edaac6ad85a47f24179d24988d114ca8eacc1d59332282fec7 +size 17602 diff --git a/game/characters/susan/clothes/top/muggle_casual_top_1/mask.webp b/game/characters/susan/clothes/top/muggle_casual_top_1/mask.webp new file mode 100644 index 00000000..842a0fec --- /dev/null +++ b/game/characters/susan/clothes/top/muggle_casual_top_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:432cbecf1b1bf90b59cda3adfea509e133b0195f2bfa8bc4198d42dba4c35714 +size 1860 diff --git a/game/characters/susan/clothes/top/muggle_casual_top_1/outline.webp b/game/characters/susan/clothes/top/muggle_casual_top_1/outline.webp new file mode 100644 index 00000000..2fae6fbd --- /dev/null +++ b/game/characters/susan/clothes/top/muggle_casual_top_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73dbf9dbf8934fe525731393b5d50a6fe97fae02cc01f2ef682d7e8db5777b11 +size 18096 diff --git a/game/characters/susan/clothes/top/muggle_casual_top_1/skin.webp b/game/characters/susan/clothes/top/muggle_casual_top_1/skin.webp new file mode 100644 index 00000000..e21d50b4 --- /dev/null +++ b/game/characters/susan/clothes/top/muggle_casual_top_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18004009ab92c9a7bfac70c4c6b1338cfc2411452358d9fc50bc16f944cd1a40 +size 2382 diff --git a/game/characters/susan/clothes/top/school_top_1/0.webp b/game/characters/susan/clothes/top/school_top_1/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/top/school_top_1/mask.webp b/game/characters/susan/clothes/top/school_top_1/mask.webp new file mode 100644 index 00000000..6bf8dd6e --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_1/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc1070fab5435efa81f2db0f928c43d90057dfaf75a10e94d5c307e6c9b7956e +size 1592 diff --git a/game/characters/susan/clothes/top/school_top_1/outline.webp b/game/characters/susan/clothes/top/school_top_1/outline.webp new file mode 100644 index 00000000..bce2e0c3 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b6b2b4d7cc0aa0b2d63420faa7eb391590d4f711293b0db2bf5870d32678746 +size 54892 diff --git a/game/characters/susan/clothes/top/school_top_1/skin.webp b/game/characters/susan/clothes/top/school_top_1/skin.webp new file mode 100644 index 00000000..84975596 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fff05e7238ab84035faa2d11c33df2880a88f2e083f87b0e3cb3e7162d9a696 +size 19998 diff --git a/game/characters/susan/clothes/top/school_top_2/0.webp b/game/characters/susan/clothes/top/school_top_2/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/top/school_top_2/mask.webp b/game/characters/susan/clothes/top/school_top_2/mask.webp new file mode 100644 index 00000000..6bf8dd6e --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_2/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc1070fab5435efa81f2db0f928c43d90057dfaf75a10e94d5c307e6c9b7956e +size 1592 diff --git a/game/characters/susan/clothes/top/school_top_2/outline.webp b/game/characters/susan/clothes/top/school_top_2/outline.webp new file mode 100644 index 00000000..e1bfeb9e --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:328099c09eedfcd2c32b7622e27174b1b224d6cbbcd0f7cb90c40c857ec17d80 +size 52716 diff --git a/game/characters/susan/clothes/top/school_top_2/skin.webp b/game/characters/susan/clothes/top/school_top_2/skin.webp new file mode 100644 index 00000000..84975596 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fff05e7238ab84035faa2d11c33df2880a88f2e083f87b0e3cb3e7162d9a696 +size 19998 diff --git a/game/characters/susan/clothes/top/school_top_3/0.webp b/game/characters/susan/clothes/top/school_top_3/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/top/school_top_3/mask.webp b/game/characters/susan/clothes/top/school_top_3/mask.webp new file mode 100644 index 00000000..6bf8dd6e --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_3/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc1070fab5435efa81f2db0f928c43d90057dfaf75a10e94d5c307e6c9b7956e +size 1592 diff --git a/game/characters/susan/clothes/top/school_top_3/outline.webp b/game/characters/susan/clothes/top/school_top_3/outline.webp new file mode 100644 index 00000000..dce09a32 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3b56686068c37e1ffb6f12f5ab1e539db6a43bf4e9ebed626560ae5d38ed67e +size 34980 diff --git a/game/characters/susan/clothes/top/school_top_3/skin.webp b/game/characters/susan/clothes/top/school_top_3/skin.webp new file mode 100644 index 00000000..84975596 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_3/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fff05e7238ab84035faa2d11c33df2880a88f2e083f87b0e3cb3e7162d9a696 +size 19998 diff --git a/game/characters/susan/clothes/top/school_top_4/0.webp b/game/characters/susan/clothes/top/school_top_4/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/top/school_top_4/mask.webp b/game/characters/susan/clothes/top/school_top_4/mask.webp new file mode 100644 index 00000000..6bf8dd6e --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_4/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc1070fab5435efa81f2db0f928c43d90057dfaf75a10e94d5c307e6c9b7956e +size 1592 diff --git a/game/characters/susan/clothes/top/school_top_4/outline.webp b/game/characters/susan/clothes/top/school_top_4/outline.webp new file mode 100644 index 00000000..1c653ae8 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07ae9bb0eff453f525ed08f211c11a3f9e247da73e9f8be91ed0b8a2f4323987 +size 34960 diff --git a/game/characters/susan/clothes/top/school_top_4/skin.webp b/game/characters/susan/clothes/top/school_top_4/skin.webp new file mode 100644 index 00000000..84975596 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_4/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fff05e7238ab84035faa2d11c33df2880a88f2e083f87b0e3cb3e7162d9a696 +size 19998 diff --git a/game/characters/susan/clothes/top/school_top_5/0.webp b/game/characters/susan/clothes/top/school_top_5/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_5/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/top/school_top_5/mask.webp b/game/characters/susan/clothes/top/school_top_5/mask.webp new file mode 100644 index 00000000..6bf8dd6e --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_5/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc1070fab5435efa81f2db0f928c43d90057dfaf75a10e94d5c307e6c9b7956e +size 1592 diff --git a/game/characters/susan/clothes/top/school_top_5/outline.webp b/game/characters/susan/clothes/top/school_top_5/outline.webp new file mode 100644 index 00000000..64078f29 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_5/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:286b760ec8828afffab291b7b92bcc0d861a707965bee499c1fa1cb793bebe0d +size 28942 diff --git a/game/characters/susan/clothes/top/school_top_5/skin.webp b/game/characters/susan/clothes/top/school_top_5/skin.webp new file mode 100644 index 00000000..84975596 --- /dev/null +++ b/game/characters/susan/clothes/top/school_top_5/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fff05e7238ab84035faa2d11c33df2880a88f2e083f87b0e3cb3e7162d9a696 +size 19998 diff --git a/game/characters/susan/clothes/top/sling/0.webp b/game/characters/susan/clothes/top/sling/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/top/sling/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/top/sling/mask.webp b/game/characters/susan/clothes/top/sling/mask.webp new file mode 100644 index 00000000..d4e8418e --- /dev/null +++ b/game/characters/susan/clothes/top/sling/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:556ce1114c9e7be2539d2ea3a65170fa70ad068e721c7ec5c41182b005249301 +size 1190 diff --git a/game/characters/susan/clothes/top/sling/outline.webp b/game/characters/susan/clothes/top/sling/outline.webp new file mode 100644 index 00000000..5ecec883 --- /dev/null +++ b/game/characters/susan/clothes/top/sling/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4f1ad2eebb3a3654822de0f32e5017f67f6a105097794231c021466d043be3e +size 30006 diff --git a/game/characters/susan/clothes/top/sling/skin.webp b/game/characters/susan/clothes/top/sling/skin.webp new file mode 100644 index 00000000..84975596 --- /dev/null +++ b/game/characters/susan/clothes/top/sling/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fff05e7238ab84035faa2d11c33df2880a88f2e083f87b0e3cb3e7162d9a696 +size 19998 diff --git a/game/characters/susan/clothes/top/sling2/0.webp b/game/characters/susan/clothes/top/sling2/0.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/characters/susan/clothes/top/sling2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/characters/susan/clothes/top/sling2/mask.webp b/game/characters/susan/clothes/top/sling2/mask.webp new file mode 100644 index 00000000..d4e8418e --- /dev/null +++ b/game/characters/susan/clothes/top/sling2/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:556ce1114c9e7be2539d2ea3a65170fa70ad068e721c7ec5c41182b005249301 +size 1190 diff --git a/game/characters/susan/clothes/top/sling2/outline.webp b/game/characters/susan/clothes/top/sling2/outline.webp new file mode 100644 index 00000000..d86454fb --- /dev/null +++ b/game/characters/susan/clothes/top/sling2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b900d3acd178cfaaa67b81efdfefe05e9a0ea57acf73300316f6121ee4e9b3fa +size 76424 diff --git a/game/characters/susan/clothes/top/sling2/skin.webp b/game/characters/susan/clothes/top/sling2/skin.webp new file mode 100644 index 00000000..84975596 --- /dev/null +++ b/game/characters/susan/clothes/top/sling2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fff05e7238ab84035faa2d11c33df2880a88f2e083f87b0e3cb3e7162d9a696 +size 19998 diff --git a/game/characters/susan/cum/body/heavy.webp b/game/characters/susan/cum/body/heavy.webp new file mode 100644 index 00000000..16910eea --- /dev/null +++ b/game/characters/susan/cum/body/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dad1f90fd74ad19cd20486aee6be7bc5dc5342f6e544cfaef5cf09af1db4ab1d +size 19290 diff --git a/game/characters/susan/cum/body/heavy_skin.webp b/game/characters/susan/cum/body/heavy_skin.webp new file mode 100644 index 00000000..02fdcae7 --- /dev/null +++ b/game/characters/susan/cum/body/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3131ed7ae37acc547319e653036e7f367f069d22dff14f566d06551da4da2f64 +size 5502 diff --git a/game/characters/susan/cum/body/light.webp b/game/characters/susan/cum/body/light.webp new file mode 100644 index 00000000..f499c1d3 --- /dev/null +++ b/game/characters/susan/cum/body/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e5125f4e22ed910a763f126d7a5e6a5746cef869b14afae38827e83e2ab346f +size 5980 diff --git a/game/characters/susan/cum/body/light_skin.webp b/game/characters/susan/cum/body/light_skin.webp new file mode 100644 index 00000000..3ee09e7e --- /dev/null +++ b/game/characters/susan/cum/body/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dabcfc51aef3047d068c0f92458f64ece6e6deb2eeb7c9b4158dce5214d0a4d5 +size 3036 diff --git a/game/characters/susan/cum/breasts/heavy.webp b/game/characters/susan/cum/breasts/heavy.webp new file mode 100644 index 00000000..59e66ede --- /dev/null +++ b/game/characters/susan/cum/breasts/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7eaaa92fa8b64ad0a759fd56d1284e03d73c8ef09f5c98fb221225233f7a854e +size 20614 diff --git a/game/characters/susan/cum/breasts/heavy_skin.webp b/game/characters/susan/cum/breasts/heavy_skin.webp new file mode 100644 index 00000000..84d959a9 --- /dev/null +++ b/game/characters/susan/cum/breasts/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f0e96f55644475faa07c1b6b6e488b6fd253d84b1945a368773fad3f1877371 +size 4556 diff --git a/game/characters/susan/cum/breasts/light.webp b/game/characters/susan/cum/breasts/light.webp new file mode 100644 index 00000000..fc34b1ba --- /dev/null +++ b/game/characters/susan/cum/breasts/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5aa28036fcf9139653312062969bb508ddc51a054b6a5f8b235d27dce6f541d0 +size 10160 diff --git a/game/characters/susan/cum/breasts/light_skin.webp b/game/characters/susan/cum/breasts/light_skin.webp new file mode 100644 index 00000000..2b418219 --- /dev/null +++ b/game/characters/susan/cum/breasts/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e910d1d91e3f2b51b84a565d78d3a7fa1de64c24f3b026e29653225a61681c3f +size 3342 diff --git a/game/characters/susan/cum/crotch/heavy.webp b/game/characters/susan/cum/crotch/heavy.webp new file mode 100644 index 00000000..27c7588b --- /dev/null +++ b/game/characters/susan/cum/crotch/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3dba1474e8827f8a00a9887974495a2b1d6e2b76a15ebf2f79ac5d8345fc31b0 +size 29294 diff --git a/game/characters/susan/cum/crotch/heavy_skin.webp b/game/characters/susan/cum/crotch/heavy_skin.webp new file mode 100644 index 00000000..1b48b09e --- /dev/null +++ b/game/characters/susan/cum/crotch/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c364dd7d0d25573f55fc74ad79c5d9b0aae4da6e60fe04c91e4b103029ddad6 +size 8928 diff --git a/game/characters/susan/cum/crotch/light.webp b/game/characters/susan/cum/crotch/light.webp new file mode 100644 index 00000000..2cff3b5f --- /dev/null +++ b/game/characters/susan/cum/crotch/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e939ffe56ddf79c60cd82ef2059535bade8d5cf63e3b266252f58a2ed17a9f6 +size 12010 diff --git a/game/characters/susan/cum/crotch/light_skin.webp b/game/characters/susan/cum/crotch/light_skin.webp new file mode 100644 index 00000000..de92754b --- /dev/null +++ b/game/characters/susan/cum/crotch/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c04fcedb129262606f4bd2815fb9f7e4161874ce4fb3b156355cfc554faf204 +size 4200 diff --git a/game/characters/susan/cum/face/heavy.webp b/game/characters/susan/cum/face/heavy.webp new file mode 100644 index 00000000..cb81e634 --- /dev/null +++ b/game/characters/susan/cum/face/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22340854a9a3f002535da311bc040abacdf82b2a39187ec3edcecfd97152b8c9 +size 9682 diff --git a/game/characters/susan/cum/face/heavy_skin.webp b/game/characters/susan/cum/face/heavy_skin.webp new file mode 100644 index 00000000..5ee30e83 --- /dev/null +++ b/game/characters/susan/cum/face/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7db7f0431bb948c0360eac4c94e3da53eaa7bc4a6d679f6a39f5b47e2dc09ab7 +size 3188 diff --git a/game/characters/susan/cum/face/light.webp b/game/characters/susan/cum/face/light.webp new file mode 100644 index 00000000..3ea97195 --- /dev/null +++ b/game/characters/susan/cum/face/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1847dd7fa07ac7f45834e7b7a3500dc2eff02511676feaf260070438fa62c49b +size 4696 diff --git a/game/characters/susan/cum/face/light_skin.webp b/game/characters/susan/cum/face/light_skin.webp new file mode 100644 index 00000000..3fdd39a0 --- /dev/null +++ b/game/characters/susan/cum/face/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3be0734ca4392c1e91e3e76ac32ac96ea95ab29bc4303184297cf633fe184133 +size 1438 diff --git a/game/characters/susan/cum/hair/heavy.webp b/game/characters/susan/cum/hair/heavy.webp new file mode 100644 index 00000000..5d70c3f7 --- /dev/null +++ b/game/characters/susan/cum/hair/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a479e94e2ef4729c349f5cb4b1b4f15ead3d6f572e711a81f6ffb72d508762e4 +size 13018 diff --git a/game/characters/susan/cum/hair/light.webp b/game/characters/susan/cum/hair/light.webp new file mode 100644 index 00000000..cbabd25a --- /dev/null +++ b/game/characters/susan/cum/hair/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e46f8692bf0dd04e3cef17f1357f64b27ef4fe8f6087777f40fda0f44123581 +size 3336 diff --git a/game/characters/susan/cum/legs/heavy.webp b/game/characters/susan/cum/legs/heavy.webp new file mode 100644 index 00000000..aca3e480 --- /dev/null +++ b/game/characters/susan/cum/legs/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c27cf073025f33e211ae8e7aca081b7f157a5ac3a2cb4aba0d543221144d4ef8 +size 4384 diff --git a/game/characters/susan/cum/legs/heavy_skin.webp b/game/characters/susan/cum/legs/heavy_skin.webp new file mode 100644 index 00000000..39965425 --- /dev/null +++ b/game/characters/susan/cum/legs/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c3510a330cbec6e78a5697089c9c0d32d032f87406f81bcd4828603b362f4b3 +size 2016 diff --git a/game/characters/susan/cum/legs/light.webp b/game/characters/susan/cum/legs/light.webp new file mode 100644 index 00000000..05be6430 --- /dev/null +++ b/game/characters/susan/cum/legs/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed63a509eef6310951d332eaa045943059bad825910025b8dbe07ff799eb9ea0 +size 1644 diff --git a/game/characters/susan/cum/legs/light_skin.webp b/game/characters/susan/cum/legs/light_skin.webp new file mode 100644 index 00000000..1009fd99 --- /dev/null +++ b/game/characters/susan/cum/legs/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6feeb9db705674f09bcb65cebb47fd07f6faedfe4f2645fd8c2c99af2523116 +size 954 diff --git a/game/characters/susan/cum/pussy/heavy.webp b/game/characters/susan/cum/pussy/heavy.webp new file mode 100644 index 00000000..9fbc74ff --- /dev/null +++ b/game/characters/susan/cum/pussy/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:981a8eb41d8e4a07fbb6f918510a90ed7b32ea45f6571e4d079ad593bed29197 +size 3582 diff --git a/game/characters/susan/cum/pussy/light.webp b/game/characters/susan/cum/pussy/light.webp new file mode 100644 index 00000000..1628e28e --- /dev/null +++ b/game/characters/susan/cum/pussy/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d90ec360eb5de481d9d36d73cf1c36bbbb86379ddbde1f0375fc13ac58c20ad5 +size 1554 diff --git a/game/characters/susan/emote/angry.webp b/game/characters/susan/emote/angry.webp new file mode 100644 index 00000000..82f0fd66 --- /dev/null +++ b/game/characters/susan/emote/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3549668356dd6e40af400910585ecc1d26b9f493cd8fffec9a4a4fa8f828090f +size 3116 diff --git a/game/characters/susan/emote/confused.webp b/game/characters/susan/emote/confused.webp new file mode 100644 index 00000000..16d847ec --- /dev/null +++ b/game/characters/susan/emote/confused.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4518832ae6a9abd896e5cac6df5a8f79cf2f912f8a91ac75bc8681263b44e73b +size 17794 diff --git a/game/characters/susan/emote/happy.webp b/game/characters/susan/emote/happy.webp new file mode 100644 index 00000000..e1de7735 --- /dev/null +++ b/game/characters/susan/emote/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8966b3b892d33a07732463cf285728e298e8fe52fa0d966c48d52995355e5895 +size 13048 diff --git a/game/characters/susan/emote/hearts.webp b/game/characters/susan/emote/hearts.webp new file mode 100644 index 00000000..04fff260 --- /dev/null +++ b/game/characters/susan/emote/hearts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c16590ed90799f1c6a8abb7aaa68d3b8796495521cfd1d8004c03668ee52a0a +size 21056 diff --git a/game/characters/susan/emote/shocked.webp b/game/characters/susan/emote/shocked.webp new file mode 100644 index 00000000..d8f933a4 --- /dev/null +++ b/game/characters/susan/emote/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b4f1806d7a7f5c7cddd315178b06ab0ede3bb70c24e56d8cea345c4ec67f82b +size 12550 diff --git a/game/characters/susan/emote/sweat.webp b/game/characters/susan/emote/sweat.webp new file mode 100644 index 00000000..4c546469 --- /dev/null +++ b/game/characters/susan/emote/sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f931365379935985f20d3a1c8d0fc31aae85153feda9d39305a4a488211a5856 +size 3704 diff --git a/game/characters/susan/face/cheeks/blush.webp b/game/characters/susan/face/cheeks/blush.webp new file mode 100644 index 00000000..3dd69ff3 --- /dev/null +++ b/game/characters/susan/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73e1d3998e354114f4155788d3fa07ba7634517e2a6868d84f0ea95f500e3f7f +size 4618 diff --git a/game/characters/susan/face/eyebrows/angry.webp b/game/characters/susan/face/eyebrows/angry.webp new file mode 100644 index 00000000..38722aef --- /dev/null +++ b/game/characters/susan/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce6b71f3ddddb6e071f27eb446dd2a37cadfc0492f6163cb5e6dcec4111c1188 +size 4366 diff --git a/game/characters/susan/face/eyebrows/base.webp b/game/characters/susan/face/eyebrows/base.webp new file mode 100644 index 00000000..f400cd53 --- /dev/null +++ b/game/characters/susan/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9308fe0e9d768776525d626d9bb8c10cf6c03b35d81d8973b49f60e2755e10ce +size 2838 diff --git a/game/characters/susan/face/eyebrows/worried.webp b/game/characters/susan/face/eyebrows/worried.webp new file mode 100644 index 00000000..83ac7fc3 --- /dev/null +++ b/game/characters/susan/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc3e77bcee441c5b94ecc4d1e3aa087fd31538d8b90c350c23d05a6991bb0387 +size 3052 diff --git a/game/characters/susan/face/eyes/base.webp b/game/characters/susan/face/eyes/base.webp new file mode 100644 index 00000000..4bc0c61a --- /dev/null +++ b/game/characters/susan/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:785455a6e2f05a6e683fb202453584ef4f4f7b4679dc7fbbdd10f6519674c5c6 +size 7160 diff --git a/game/characters/susan/face/eyes/base_mask.webp b/game/characters/susan/face/eyes/base_mask.webp new file mode 100644 index 00000000..ec7024e6 --- /dev/null +++ b/game/characters/susan/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8f9df711ec5c5d31a7a4b3624137832af87c7111e0e9542ab6ab9d350473051 +size 216 diff --git a/game/characters/susan/face/eyes/closed.webp b/game/characters/susan/face/eyes/closed.webp new file mode 100644 index 00000000..ac55e9b8 --- /dev/null +++ b/game/characters/susan/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f711b20730c0c924ca03586f13c98e59cbe7d762c0e05b30dc2ecebb0d254d58 +size 7404 diff --git a/game/characters/susan/face/eyes/eager.webp b/game/characters/susan/face/eyes/eager.webp new file mode 100644 index 00000000..5b1a70bd --- /dev/null +++ b/game/characters/susan/face/eyes/eager.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6269f4547e3542a07d35ad0edde4dce004e9cfd1ea385c1a1d2015ecd9fdc36a +size 6582 diff --git a/game/characters/susan/face/eyes/eager_mask.webp b/game/characters/susan/face/eyes/eager_mask.webp new file mode 100644 index 00000000..2dc1e410 --- /dev/null +++ b/game/characters/susan/face/eyes/eager_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cdaad93a8c7a4cd6a8858a37d3a15b0f75265f0a96c95abd4fdca649be01756 +size 194 diff --git a/game/characters/susan/face/eyes/happyCl.webp b/game/characters/susan/face/eyes/happyCl.webp new file mode 100644 index 00000000..a2b4dc4d --- /dev/null +++ b/game/characters/susan/face/eyes/happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f8439ad5fbc04136e781825761074c85292345fb9b8c3670cf0bd24d31ed931 +size 6886 diff --git a/game/characters/susan/face/eyes/narrow.webp b/game/characters/susan/face/eyes/narrow.webp new file mode 100644 index 00000000..df780519 --- /dev/null +++ b/game/characters/susan/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65d1f5b8ae1105fdad8b8c569bca636697a3e90b43f47e8fbed06044c3b684ce +size 7834 diff --git a/game/characters/susan/face/eyes/narrow_mask.webp b/game/characters/susan/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..41066b5f --- /dev/null +++ b/game/characters/susan/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43258436d1d2875d2af6973a0e3e18e08efdd0b259ea1e8ac304b7dcdf10fc76 +size 178 diff --git a/game/characters/susan/face/eyes/suspicious.webp b/game/characters/susan/face/eyes/suspicious.webp new file mode 100644 index 00000000..a91fb539 --- /dev/null +++ b/game/characters/susan/face/eyes/suspicious.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:142fe9a41fe061d822d3108694931c3ae720296d5ff36338fb9d062f2a552bf1 +size 7336 diff --git a/game/characters/susan/face/eyes/suspicious_mask.webp b/game/characters/susan/face/eyes/suspicious_mask.webp new file mode 100644 index 00000000..6b405748 --- /dev/null +++ b/game/characters/susan/face/eyes/suspicious_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5a251331fcae533304358c65b56648a4be747c842cea59c85a086e1c14aa493 +size 190 diff --git a/game/characters/susan/face/eyes/wide.webp b/game/characters/susan/face/eyes/wide.webp new file mode 100644 index 00000000..32eecf34 --- /dev/null +++ b/game/characters/susan/face/eyes/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a23ef3d2f10254cf89107bed310d7f461235e06366fe183938475b25920b29a +size 7016 diff --git a/game/characters/susan/face/eyes/wide_mask.webp b/game/characters/susan/face/eyes/wide_mask.webp new file mode 100644 index 00000000..554b2dd4 --- /dev/null +++ b/game/characters/susan/face/eyes/wide_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31e6bf09d7ff3958e51182d314f1a52f62001fdccf2785ba2f1d662b64babc1c +size 222 diff --git a/game/characters/susan/face/mouth/base.webp b/game/characters/susan/face/mouth/base.webp new file mode 100644 index 00000000..844ca6fa --- /dev/null +++ b/game/characters/susan/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6455ff6b61fc640602b765473d4ab2fa4b927def13d73d2d1dd9c7a2db1ceadb +size 3066 diff --git a/game/characters/susan/face/mouth/grin.webp b/game/characters/susan/face/mouth/grin.webp new file mode 100644 index 00000000..c90139eb --- /dev/null +++ b/game/characters/susan/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4573e06e5a6ae39e72701dda9c412e081e8e2d8f43ba3d1226d7b2c1fe165d66 +size 3804 diff --git a/game/characters/susan/face/mouth/happy.webp b/game/characters/susan/face/mouth/happy.webp new file mode 100644 index 00000000..6d148258 --- /dev/null +++ b/game/characters/susan/face/mouth/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10f016d56e831d67d3bb84a4344da8f9812398c3971ae55c89837a04f17269d4 +size 2792 diff --git a/game/characters/susan/face/mouth/open.webp b/game/characters/susan/face/mouth/open.webp new file mode 100644 index 00000000..9188b74a --- /dev/null +++ b/game/characters/susan/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd9192b65fbecd60ae0620db08eda3496e3af135fc0b3e48a149deb60cf17938 +size 3332 diff --git a/game/characters/susan/face/mouth/open_tongue.webp b/game/characters/susan/face/mouth/open_tongue.webp new file mode 100644 index 00000000..f6104951 --- /dev/null +++ b/game/characters/susan/face/mouth/open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1676c898b7a5df2dc405e69d343f3f0bc852d3e375a7328198d07bdfa71e2f3d +size 7492 diff --git a/game/characters/susan/face/mouth/scream.webp b/game/characters/susan/face/mouth/scream.webp new file mode 100644 index 00000000..861b712e --- /dev/null +++ b/game/characters/susan/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11cd0720336634f68105f45f02ddd99d10ed19753c5e85ace58fcfb996a9e777 +size 8668 diff --git a/game/characters/susan/face/mouth/upset.webp b/game/characters/susan/face/mouth/upset.webp new file mode 100644 index 00000000..11f51ed0 --- /dev/null +++ b/game/characters/susan/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5469f7c05571295dc77c5848802d687137e03b1e661828c8fb95f100ebaf8446 +size 2706 diff --git a/game/characters/susan/face/pupils/L.webp b/game/characters/susan/face/pupils/L.webp new file mode 100644 index 00000000..5ac7a2d8 --- /dev/null +++ b/game/characters/susan/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fa054f2ed18f5e20e622d0b5c283f42c2d2ce8fdb4f84033f0acc66c194fc7b +size 2830 diff --git a/game/characters/susan/face/pupils/R.webp b/game/characters/susan/face/pupils/R.webp new file mode 100644 index 00000000..7db69761 --- /dev/null +++ b/game/characters/susan/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b83453202039e7f0394b9d36ff566c8409e0fd92281148d1308a641f1d4ff02d +size 2854 diff --git a/game/characters/susan/face/pupils/down.webp b/game/characters/susan/face/pupils/down.webp new file mode 100644 index 00000000..82838b9f --- /dev/null +++ b/game/characters/susan/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e907f8c4267ef7607ffee60000c498e04065552faa6c5c66a036569b3b86831 +size 2826 diff --git a/game/characters/susan/face/pupils/mid.webp b/game/characters/susan/face/pupils/mid.webp new file mode 100644 index 00000000..fafc8ccb --- /dev/null +++ b/game/characters/susan/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17de2d0e38f6eeac4d4f0b2989f227d4f5b7e7e8d0ac32ae4c608d17e0e66638 +size 2934 diff --git a/game/characters/susan/face/pupils/up.webp b/game/characters/susan/face/pupils/up.webp new file mode 100644 index 00000000..e5358a03 --- /dev/null +++ b/game/characters/susan/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3695b07b3fe2319386ea4e6bc4cf5da78bd9f78bbef87db0dff854668d1106e0 +size 2938 diff --git a/game/characters/susan/face/pupils/wide.webp b/game/characters/susan/face/pupils/wide.webp new file mode 100644 index 00000000..a2446305 --- /dev/null +++ b/game/characters/susan/face/pupils/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:754a221bfb5736cc67007006de66c7831f2bb8ea6c1cddc302cad98fc815351f +size 3116 diff --git a/game/characters/susan/face/tears/drool.webp b/game/characters/susan/face/tears/drool.webp new file mode 100644 index 00000000..c9f457e8 --- /dev/null +++ b/game/characters/susan/face/tears/drool.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bcd718fe575419cf8b54155e7e24c04cd3fb9bdcea60e5f94740d4f11f6a929 +size 2740 diff --git a/game/characters/susan/face/tears/mascara.webp b/game/characters/susan/face/tears/mascara.webp new file mode 100644 index 00000000..2d1cb3f1 --- /dev/null +++ b/game/characters/susan/face/tears/mascara.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e46af39f8fdc4790b8f14796d6c7c268ff4bfd089fe8af809c95432e4e1430bb +size 3042 diff --git a/game/characters/susan/face/tears/soft.webp b/game/characters/susan/face/tears/soft.webp new file mode 100644 index 00000000..9cb6d429 --- /dev/null +++ b/game/characters/susan/face/tears/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b70d80c244085980c4e002dbacd6658249df54528e9899f616350db15c01210c +size 2358 diff --git a/game/characters/tonks/body/armleft/on_hips.webp b/game/characters/tonks/body/armleft/on_hips.webp new file mode 100644 index 00000000..292208a6 --- /dev/null +++ b/game/characters/tonks/body/armleft/on_hips.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da007931f76b7977e9993b557a95dfdf1476312bffe76f70334f991299c60be6 +size 20628 diff --git a/game/characters/tonks/body/armleft/on_hips_fix.webp b/game/characters/tonks/body/armleft/on_hips_fix.webp new file mode 100644 index 00000000..b9dd57ac --- /dev/null +++ b/game/characters/tonks/body/armleft/on_hips_fix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:005157d922a1c5f9c19d4f65ef7d8a6494720340bae7965b9800f3c9df96a460 +size 5880 diff --git a/game/characters/tonks/body/armright/on_hips.webp b/game/characters/tonks/body/armright/on_hips.webp new file mode 100644 index 00000000..eee0a34b --- /dev/null +++ b/game/characters/tonks/body/armright/on_hips.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17c4d2cb79d349aca8a162c2f52f38f2f719eddedd9e6fa1129a8331081723dc +size 15482 diff --git a/game/characters/tonks/body/armright/on_hips_fix.webp b/game/characters/tonks/body/armright/on_hips_fix.webp new file mode 100644 index 00000000..095dd477 --- /dev/null +++ b/game/characters/tonks/body/armright/on_hips_fix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e70ce7fb313d9d3485c8e43b2a1118fabdf3e17800c647349005fc939ef7ac4 +size 4412 diff --git a/game/characters/tonks/body/armright/up.webp b/game/characters/tonks/body/armright/up.webp new file mode 100644 index 00000000..07b5489c --- /dev/null +++ b/game/characters/tonks/body/armright/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bbaf87e1d8d97abe6ba7cbf28158650df29e6e4634cfc124b962f1f0ea782d8 +size 20756 diff --git a/game/characters/tonks/body/base/front.webp b/game/characters/tonks/body/base/front.webp new file mode 100644 index 00000000..77514b7d --- /dev/null +++ b/game/characters/tonks/body/base/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:978609978d6bbb0bd37cea64e8063265ced02921286e7a6e5ce901e021274dca +size 63978 diff --git a/game/characters/tonks/body/breasts/normal.webp b/game/characters/tonks/body/breasts/normal.webp new file mode 100644 index 00000000..df72fbd4 --- /dev/null +++ b/game/characters/tonks/body/breasts/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:878652ef87c99aff155571e07aff279d28b89c1fddd2ad7ced23ed708538e531 +size 14606 diff --git a/game/characters/tonks/body/breasts/normal_tight.webp b/game/characters/tonks/body/breasts/normal_tight.webp new file mode 100644 index 00000000..cd2083bb --- /dev/null +++ b/game/characters/tonks/body/breasts/normal_tight.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18c354881463cc5f40e963451445b9c5170812bce4dd208133b70d5f3e2ebdc9 +size 10150 diff --git a/game/characters/tonks/body/breasts/ribbon.webp b/game/characters/tonks/body/breasts/ribbon.webp new file mode 100644 index 00000000..4ef7e3ae --- /dev/null +++ b/game/characters/tonks/body/breasts/ribbon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43ed03ab11dbb682aeb2d68e09e7db87999727b4c30a4771546a820fff4198e2 +size 12174 diff --git a/game/characters/tonks/chibis/bj_desk/01.webp b/game/characters/tonks/chibis/bj_desk/01.webp new file mode 100644 index 00000000..9a8675c1 --- /dev/null +++ b/game/characters/tonks/chibis/bj_desk/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:649cddde7a4df2923057fb70ffb7b4cee82243bbda1997e32fadc746926ce767 +size 28864 diff --git a/game/characters/tonks/chibis/bj_desk/02.webp b/game/characters/tonks/chibis/bj_desk/02.webp new file mode 100644 index 00000000..ce381b7d --- /dev/null +++ b/game/characters/tonks/chibis/bj_desk/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bef7959db58e1cbd4ae541a6ed55a1297360a36916005c1a8883e04cb7b69884 +size 28754 diff --git a/game/characters/tonks/chibis/bj_desk/shocked_01.webp b/game/characters/tonks/chibis/bj_desk/shocked_01.webp new file mode 100644 index 00000000..da877449 --- /dev/null +++ b/game/characters/tonks/chibis/bj_desk/shocked_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91c4a8785a837e67b267e633a2b61ae11c5cb40f438dbf9ddf5e2aee85728b0a +size 25758 diff --git a/game/characters/tonks/chibis/bj_desk/shocked_02.webp b/game/characters/tonks/chibis/bj_desk/shocked_02.webp new file mode 100644 index 00000000..a6f350ed --- /dev/null +++ b/game/characters/tonks/chibis/bj_desk/shocked_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e800be1c6b65bc44664cfd664ff80e995d4826902d6757e8d725cfa4f0476389 +size 25610 diff --git a/game/characters/tonks/chibis/drinking/chair.webp b/game/characters/tonks/chibis/drinking/chair.webp new file mode 100644 index 00000000..86e2bee0 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/chair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4be01d96a30843afe0698db9a136283eccb9cf2582a1a64d3435252be9e14898 +size 25258 diff --git a/game/characters/tonks/chibis/drinking/nt_choker.webp b/game/characters/tonks/chibis/drinking/nt_choker.webp new file mode 100644 index 00000000..a3d13857 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_choker.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3eacbba5f696a670d721d653d72e4084110bf49f54f496cdcb4573bdae179c07 +size 440 diff --git a/game/characters/tonks/chibis/drinking/nt_head_01.webp b/game/characters/tonks/chibis/drinking/nt_head_01.webp new file mode 100644 index 00000000..acd1365e --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_head_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98ffc364e7bd7e80e9d136c25ce3105edc743f7e8635c73e63a3e108b6c7493e +size 19368 diff --git a/game/characters/tonks/chibis/drinking/nt_head_02.webp b/game/characters/tonks/chibis/drinking/nt_head_02.webp new file mode 100644 index 00000000..635b8d52 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_head_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38582902729fb43018a2debe6a9bd26d2cc1009fa88392e849b0e6a0f639d40d +size 18770 diff --git a/game/characters/tonks/chibis/drinking/nt_sit_01.webp b/game/characters/tonks/chibis/drinking/nt_sit_01.webp new file mode 100644 index 00000000..04fe90dd --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_sit_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:698ed956365b781f9473d461a5bba1c0eeed66b50114a49d12e18cf1274e3601 +size 12852 diff --git a/game/characters/tonks/chibis/drinking/nt_sit_01_shoes.webp b/game/characters/tonks/chibis/drinking/nt_sit_01_shoes.webp new file mode 100644 index 00000000..9d2bff84 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_sit_01_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5922420b1cd90223031798ba9e542a330efa73c536550273da8788dc66e39d2a +size 1524 diff --git a/game/characters/tonks/chibis/drinking/nt_sit_01_trousers.webp b/game/characters/tonks/chibis/drinking/nt_sit_01_trousers.webp new file mode 100644 index 00000000..717618e8 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_sit_01_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:776ce1ddd93ca7dd2399fd9c24e9bdba92642c63b5546b8fa40719b71feed425 +size 3082 diff --git a/game/characters/tonks/chibis/drinking/nt_sit_02.webp b/game/characters/tonks/chibis/drinking/nt_sit_02.webp new file mode 100644 index 00000000..edf90664 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_sit_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af0b090d0c4e94e0e2f3ebc24494ce2f20f34a50d01ec92400a12c75bf38de3e +size 13148 diff --git a/game/characters/tonks/chibis/drinking/nt_sit_02_shoes.webp b/game/characters/tonks/chibis/drinking/nt_sit_02_shoes.webp new file mode 100644 index 00000000..bccefe49 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_sit_02_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb1362cf47305fe75a88f943c429929c0cd3418d49e10daf30f642a18d3909c2 +size 1576 diff --git a/game/characters/tonks/chibis/drinking/nt_sit_02_trousers.webp b/game/characters/tonks/chibis/drinking/nt_sit_02_trousers.webp new file mode 100644 index 00000000..4d897c52 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_sit_02_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9fafee83e0cf678b3fb6066cc5476c362f5cee6bbfed4b909b32953517acd5a +size 3150 diff --git a/game/characters/tonks/chibis/drinking/nt_sit_03.webp b/game/characters/tonks/chibis/drinking/nt_sit_03.webp new file mode 100644 index 00000000..e2492731 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_sit_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c94601c860f9b13f71dc2660511ece20efaef26109fc4da21600dafc322df23c +size 12950 diff --git a/game/characters/tonks/chibis/drinking/nt_sit_03_shoes.webp b/game/characters/tonks/chibis/drinking/nt_sit_03_shoes.webp new file mode 100644 index 00000000..c5742da6 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_sit_03_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40e9e47f06a1b6b92f2381697a8986523765d2f19bc6a4f67fc96d6c4b911c27 +size 1494 diff --git a/game/characters/tonks/chibis/drinking/nt_sit_03_trousers.webp b/game/characters/tonks/chibis/drinking/nt_sit_03_trousers.webp new file mode 100644 index 00000000..90dc93f7 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_sit_03_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a5ce0d6f1d99e98b43b28adfd87cd9c9656058a0e9fbf5170785fd54e3e9377 +size 3132 diff --git a/game/characters/tonks/chibis/drinking/nt_sit_04.webp b/game/characters/tonks/chibis/drinking/nt_sit_04.webp new file mode 100644 index 00000000..cca48c6d --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_sit_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bcb5f0e59a01917d3072a6e11cec549429af1570097329a05bb5ee62d23efe67 +size 12916 diff --git a/game/characters/tonks/chibis/drinking/nt_sit_04_shoes.webp b/game/characters/tonks/chibis/drinking/nt_sit_04_shoes.webp new file mode 100644 index 00000000..1a3b4f04 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_sit_04_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc908b78d8d0652bbad0e3ba9f0d6c043d2bd290a88710fbea6f6683c4f5c8d5 +size 1524 diff --git a/game/characters/tonks/chibis/drinking/nt_sit_04_trousers.webp b/game/characters/tonks/chibis/drinking/nt_sit_04_trousers.webp new file mode 100644 index 00000000..0afe6188 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_sit_04_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:503403d60c517c71395bc723c918f6a4dc679924b8452326d13631141609378c +size 3054 diff --git a/game/characters/tonks/chibis/drinking/nt_top.webp b/game/characters/tonks/chibis/drinking/nt_top.webp new file mode 100644 index 00000000..cb6652d7 --- /dev/null +++ b/game/characters/tonks/chibis/drinking/nt_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d96d4c43a945f0f33ef1c7662f4a9b4e219b954a47b32e3af8f76bc7a903718b +size 4360 diff --git a/game/characters/tonks/chibis/elf/blink.webp b/game/characters/tonks/chibis/elf/blink.webp new file mode 100644 index 00000000..47dea09c --- /dev/null +++ b/game/characters/tonks/chibis/elf/blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72838e78043d19f0c3294bdcd5a6dcc0ae83c3c99ea86ef0035254357723e9e6 +size 31452 diff --git a/game/characters/tonks/chibis/elf/default.webp b/game/characters/tonks/chibis/elf/default.webp new file mode 100644 index 00000000..9cc0c2e1 --- /dev/null +++ b/game/characters/tonks/chibis/elf/default.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42fcdf2a7c6027feb754d974a76f694ac858b793fdaaa1325b12ced0660192e9 +size 31468 diff --git a/game/characters/tonks/chibis/nt_choker.webp b/game/characters/tonks/chibis/nt_choker.webp new file mode 100644 index 00000000..c397841f --- /dev/null +++ b/game/characters/tonks/chibis/nt_choker.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1adcfdbc13991663f6078f22064856ed43af5f6105033f36802ea51f00b3f4d +size 444 diff --git a/game/characters/tonks/chibis/nt_gloves.webp b/game/characters/tonks/chibis/nt_gloves.webp new file mode 100644 index 00000000..01e3028b --- /dev/null +++ b/game/characters/tonks/chibis/nt_gloves.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b88fc497dfb33c3e44839399c33bfca9d4e5bf5e9b7271efb9428769cabfb99 +size 1078 diff --git a/game/characters/tonks/chibis/nt_robe.webp b/game/characters/tonks/chibis/nt_robe.webp new file mode 100644 index 00000000..fd79c162 --- /dev/null +++ b/game/characters/tonks/chibis/nt_robe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c8a9a9b389c57e9a84249c9945c74a0ae7b15485f59046b5ec014d1988d29a1 +size 9728 diff --git a/game/characters/tonks/chibis/nt_robe_fix.webp b/game/characters/tonks/chibis/nt_robe_fix.webp new file mode 100644 index 00000000..66bbd421 --- /dev/null +++ b/game/characters/tonks/chibis/nt_robe_fix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ef54213a0af3d17488d01ad01264d5b15d2811a5e942960d63385e34a602079 +size 1390 diff --git a/game/characters/tonks/chibis/nt_shocked.webp b/game/characters/tonks/chibis/nt_shocked.webp new file mode 100644 index 00000000..da84f14b --- /dev/null +++ b/game/characters/tonks/chibis/nt_shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d945b91a92610384c9e72933513d20ff81b48202bfbed72b5eb4a7d0f8b1140 +size 1482 diff --git a/game/characters/tonks/chibis/nt_shoes.webp b/game/characters/tonks/chibis/nt_shoes.webp new file mode 100644 index 00000000..25de917d --- /dev/null +++ b/game/characters/tonks/chibis/nt_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5139a84332741ff405c480a591544d4d5403adb553f9d1f9ced00807764f6578 +size 1692 diff --git a/game/characters/tonks/chibis/nt_stand_blink.webp b/game/characters/tonks/chibis/nt_stand_blink.webp new file mode 100644 index 00000000..75aafaa3 --- /dev/null +++ b/game/characters/tonks/chibis/nt_stand_blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0d4f7b687154ed4301644a2b0216590acb3025a210ffdaf6a3b5d1f0588dba4 +size 33666 diff --git a/game/characters/tonks/chibis/nt_top.webp b/game/characters/tonks/chibis/nt_top.webp new file mode 100644 index 00000000..e76b0d36 --- /dev/null +++ b/game/characters/tonks/chibis/nt_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad8467bea2db853845175c022e0a89261d1a79aa596018ba87d4920949b88152 +size 5186 diff --git a/game/characters/tonks/chibis/nt_trousers.webp b/game/characters/tonks/chibis/nt_trousers.webp new file mode 100644 index 00000000..d380868c --- /dev/null +++ b/game/characters/tonks/chibis/nt_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:474e560cf399cf3ae8c2a6cdcf4449759a6b3929038b8dcac16a5274bf633360 +size 4146 diff --git a/game/characters/tonks/chibis/nt_walk_01.webp b/game/characters/tonks/chibis/nt_walk_01.webp new file mode 100644 index 00000000..fecf19c4 --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ecd02fcfeb1afa408064df11170acea557f56a1b61c117784d16fbb7825316d +size 34138 diff --git a/game/characters/tonks/chibis/nt_walk_01_shoes.webp b/game/characters/tonks/chibis/nt_walk_01_shoes.webp new file mode 100644 index 00000000..25de917d --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_01_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5139a84332741ff405c480a591544d4d5403adb553f9d1f9ced00807764f6578 +size 1692 diff --git a/game/characters/tonks/chibis/nt_walk_01_trousers.webp b/game/characters/tonks/chibis/nt_walk_01_trousers.webp new file mode 100644 index 00000000..d380868c --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_01_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:474e560cf399cf3ae8c2a6cdcf4449759a6b3929038b8dcac16a5274bf633360 +size 4146 diff --git a/game/characters/tonks/chibis/nt_walk_02.webp b/game/characters/tonks/chibis/nt_walk_02.webp new file mode 100644 index 00000000..16730e64 --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee1f2c46119cdb9e60576c7f4cd49763e1c41ddc32cb816a534e0096a4b557aa +size 33858 diff --git a/game/characters/tonks/chibis/nt_walk_02_shoes.webp b/game/characters/tonks/chibis/nt_walk_02_shoes.webp new file mode 100644 index 00000000..0cef073b --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_02_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c345770eebd3502c5e54b2d47ed738da794c1cf7e5c0f4343c0ce60a68c0a1a +size 1338 diff --git a/game/characters/tonks/chibis/nt_walk_02_trousers.webp b/game/characters/tonks/chibis/nt_walk_02_trousers.webp new file mode 100644 index 00000000..cf289f96 --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_02_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d53c70dfd412e5c99209da103959d620843594882c0ee93b906239b6bdd4281c +size 4012 diff --git a/game/characters/tonks/chibis/nt_walk_03.webp b/game/characters/tonks/chibis/nt_walk_03.webp new file mode 100644 index 00000000..c7b1e150 --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f700f749428933225fd767e8236776433565cad22e99a1b4f7d235adb7d63302 +size 34800 diff --git a/game/characters/tonks/chibis/nt_walk_03_shoes.webp b/game/characters/tonks/chibis/nt_walk_03_shoes.webp new file mode 100644 index 00000000..e9ebf070 --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_03_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7cb5045716016b71ac24d27a7af92d18000b76419923040458576961b02461ed +size 1818 diff --git a/game/characters/tonks/chibis/nt_walk_03_trousers.webp b/game/characters/tonks/chibis/nt_walk_03_trousers.webp new file mode 100644 index 00000000..52a9688a --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_03_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3437f93edbb0b514b0d2aa01f0bcf985dd4abe57ffaeff8db2a31fc2fd824a7b +size 4130 diff --git a/game/characters/tonks/chibis/nt_walk_04.webp b/game/characters/tonks/chibis/nt_walk_04.webp new file mode 100644 index 00000000..2386ca23 --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1843aee11ea5719444773c47508d907d3230993e1825f6749e708ff3b9b5340 +size 35316 diff --git a/game/characters/tonks/chibis/nt_walk_04_shoes.webp b/game/characters/tonks/chibis/nt_walk_04_shoes.webp new file mode 100644 index 00000000..fd8cf91a --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_04_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcf47176e9eafb8e6d2eb18fac69b6c3d8311179434311c36455e2056ddd20bb +size 2188 diff --git a/game/characters/tonks/chibis/nt_walk_04_trousers.webp b/game/characters/tonks/chibis/nt_walk_04_trousers.webp new file mode 100644 index 00000000..058590ec --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_04_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6f7f658305effb7a49cc0f496d64db6fa93b55bf8eabb5667f673991ed8a359 +size 4590 diff --git a/game/characters/tonks/chibis/nt_walk_05.webp b/game/characters/tonks/chibis/nt_walk_05.webp new file mode 100644 index 00000000..eb625bc6 --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:426cbd1f426aaf4d7bf948d57fa5b4dc53be84242ea5d065fa077916761fd8ba +size 35390 diff --git a/game/characters/tonks/chibis/nt_walk_05_shoes.webp b/game/characters/tonks/chibis/nt_walk_05_shoes.webp new file mode 100644 index 00000000..438f199d --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_05_shoes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8edf7f29a5c127ee87fc12eed01764c5af1bfefccdbd8c73ade8593dfffe43a1 +size 1820 diff --git a/game/characters/tonks/chibis/nt_walk_05_trousers.webp b/game/characters/tonks/chibis/nt_walk_05_trousers.webp new file mode 100644 index 00000000..a3bb6884 --- /dev/null +++ b/game/characters/tonks/chibis/nt_walk_05_trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50180d5fb65f94c29d431f4ef991ed1f70a44856651d9c6157160c47d75d0c54 +size 4744 diff --git a/game/characters/tonks/clothes/accessory/bells_1/0.webp b/game/characters/tonks/clothes/accessory/bells_1/0.webp new file mode 100644 index 00000000..a3a4d2c6 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/bells_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18a3a41e6d5cee11e4bef380be66f8b73bc72da3f628aa701a09ea9b300f9bad +size 3742 diff --git a/game/characters/tonks/clothes/accessory/bells_1/extra.webp b/game/characters/tonks/clothes/accessory/bells_1/extra.webp new file mode 100644 index 00000000..a10f39e7 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/bells_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d71afc3b20275889a474e97a3e259101606b075d720141640d0b791fc8b586d0 +size 2714 diff --git a/game/characters/tonks/clothes/accessory/bells_1/outline.webp b/game/characters/tonks/clothes/accessory/bells_1/outline.webp new file mode 100644 index 00000000..7db45ada --- /dev/null +++ b/game/characters/tonks/clothes/accessory/bells_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b573c827394e28ccf3995b55af2e96dcc2be7fa63a02c313a209be97109215f +size 3594 diff --git a/game/characters/tonks/clothes/accessory/bells_1/skin.webp b/game/characters/tonks/clothes/accessory/bells_1/skin.webp new file mode 100644 index 00000000..d42720f9 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/bells_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:240f163b677e55c4c435623b29e2a6b2294a0aae398303c2bde5bf0747783359 +size 1530 diff --git a/game/characters/tonks/clothes/accessory/belt_1/0.webp b/game/characters/tonks/clothes/accessory/belt_1/0.webp new file mode 100644 index 00000000..f2e7d503 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/belt_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99f3006d58cab19f1c01c791d584f832c2f2c2860cdbfd3a67989f501ef8d8e1 +size 2346 diff --git a/game/characters/tonks/clothes/accessory/belt_1/1.webp b/game/characters/tonks/clothes/accessory/belt_1/1.webp new file mode 100644 index 00000000..46ea5032 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/belt_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75bd7ea651b79c1d34cdabb7c28d24789cb0a5d63397656ff8b62860c9a5628b +size 1630 diff --git a/game/characters/tonks/clothes/accessory/belt_1/extra.webp b/game/characters/tonks/clothes/accessory/belt_1/extra.webp new file mode 100644 index 00000000..06de277f --- /dev/null +++ b/game/characters/tonks/clothes/accessory/belt_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:110a6f96753a1f7e6c4035c0e3b9f59aeae40e9a1bd93c64c363b202d7b00973 +size 2172 diff --git a/game/characters/tonks/clothes/accessory/belt_1/outline.webp b/game/characters/tonks/clothes/accessory/belt_1/outline.webp new file mode 100644 index 00000000..e08a901f --- /dev/null +++ b/game/characters/tonks/clothes/accessory/belt_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf8c858237c4420f01589e383f595b9180e703d12feec0958041fe1bbbdb0f71 +size 4598 diff --git a/game/characters/tonks/clothes/accessory/flower/0.webp b/game/characters/tonks/clothes/accessory/flower/0.webp new file mode 100644 index 00000000..73dbfb87 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/flower/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8707d6e1d2164adec07b40628deca52879baaeeadccbd61016d166526106258 +size 3098 diff --git a/game/characters/tonks/clothes/accessory/flower/extra.webp b/game/characters/tonks/clothes/accessory/flower/extra.webp new file mode 100644 index 00000000..d658e879 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/flower/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:952e6306b9e44e729378d4e409417af77982e0620e99024bd68b5198c6941cf2 +size 1700 diff --git a/game/characters/tonks/clothes/accessory/flower/outline.webp b/game/characters/tonks/clothes/accessory/flower/outline.webp new file mode 100644 index 00000000..75aeba1f --- /dev/null +++ b/game/characters/tonks/clothes/accessory/flower/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35f67089acdf59cd0b00a16d163c78ef3567817b1162265b74b3f74b3cabc9d7 +size 3590 diff --git a/game/characters/tonks/clothes/accessory/neck_towel/0.webp b/game/characters/tonks/clothes/accessory/neck_towel/0.webp new file mode 100644 index 00000000..56e5eac4 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/neck_towel/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aaa373bebf7c8937f8a3e6b5f08d30cfa9858801a16e18411020c9468065c3ab +size 9938 diff --git a/game/characters/tonks/clothes/accessory/neck_towel/outline.webp b/game/characters/tonks/clothes/accessory/neck_towel/outline.webp new file mode 100644 index 00000000..12d4eab9 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/neck_towel/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7087c49a951c32f48df6e310939f0c502610e83368baef49170d84a5bac953fe +size 14514 diff --git a/game/characters/tonks/clothes/accessory/police_badge/0.webp b/game/characters/tonks/clothes/accessory/police_badge/0.webp new file mode 100644 index 00000000..0c46ed38 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/police_badge/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79e780b7c4ecedd15201b6911c5c9d2da80ccbaaffe49ff7ef7a5af4cfac67bb +size 2164 diff --git a/game/characters/tonks/clothes/accessory/police_badge/outline.webp b/game/characters/tonks/clothes/accessory/police_badge/outline.webp new file mode 100644 index 00000000..a32f13eb --- /dev/null +++ b/game/characters/tonks/clothes/accessory/police_badge/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06be5c3ad67f28a1a5a4061703b4e0c8b74e17a5e6991504c826b83f743395eb +size 1422 diff --git a/game/characters/tonks/clothes/accessory/succubus_tail/0.webp b/game/characters/tonks/clothes/accessory/succubus_tail/0.webp new file mode 100644 index 00000000..90bc84a1 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/succubus_tail/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1202998bd9734c72a85dfe98de17d0367c9f3a599a0ad067d17f6dac462ac986 +size 4752 diff --git a/game/characters/tonks/clothes/accessory/succubus_tail/1.webp b/game/characters/tonks/clothes/accessory/succubus_tail/1.webp new file mode 100644 index 00000000..2f8966df --- /dev/null +++ b/game/characters/tonks/clothes/accessory/succubus_tail/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9aecbdbfaece536d071d16c5356258678dded8fbeed51a255b29dfc1b58c7205 +size 2122 diff --git a/game/characters/tonks/clothes/accessory/succubus_tail/outline.webp b/game/characters/tonks/clothes/accessory/succubus_tail/outline.webp new file mode 100644 index 00000000..3f1f3605 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/succubus_tail/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23461a28f704ed2f00e9a67860bb72bdbd1c95ca5b95873c4010f606f405f306 +size 5422 diff --git a/game/characters/tonks/clothes/accessory/succubus_wings/0.webp b/game/characters/tonks/clothes/accessory/succubus_wings/0.webp new file mode 100644 index 00000000..7919a4d2 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/succubus_wings/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6e09fe5e43d44065ac413b478d89e4c60d389de9b48bdd9346c1aaeb5df062f +size 19938 diff --git a/game/characters/tonks/clothes/accessory/succubus_wings/1.webp b/game/characters/tonks/clothes/accessory/succubus_wings/1.webp new file mode 100644 index 00000000..95935967 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/succubus_wings/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17bbf2659a3a434323b7f68342e1fa51d4a981fcc1cf870149a74832362ec6e4 +size 19024 diff --git a/game/characters/tonks/clothes/accessory/succubus_wings/2.webp b/game/characters/tonks/clothes/accessory/succubus_wings/2.webp new file mode 100644 index 00000000..e9878286 --- /dev/null +++ b/game/characters/tonks/clothes/accessory/succubus_wings/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1baee93b76d0e7237b51b203734bac0d8357da39b2daca2e7eb8a937085705b5 +size 2076 diff --git a/game/characters/tonks/clothes/accessory/succubus_wings/outline.webp b/game/characters/tonks/clothes/accessory/succubus_wings/outline.webp new file mode 100644 index 00000000..4ffce89e --- /dev/null +++ b/game/characters/tonks/clothes/accessory/succubus_wings/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:060821c06cd8a091be87b3419de76fd35dcc900505bede7f51f63f5fea600d0d +size 27424 diff --git a/game/characters/tonks/clothes/bottom/jeans/0.webp b/game/characters/tonks/clothes/bottom/jeans/0.webp new file mode 100644 index 00000000..c554a4bc --- /dev/null +++ b/game/characters/tonks/clothes/bottom/jeans/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c5b8218ca90edfa1b50783e488a832966120b8a2184242396e90a0917a86cc6 +size 18238 diff --git a/game/characters/tonks/clothes/bottom/jeans/extra.webp b/game/characters/tonks/clothes/bottom/jeans/extra.webp new file mode 100644 index 00000000..bb2b09d6 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/jeans/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4106b0c4dbc6a70e193ee8a17445ee6e8f02613fbda3efe46a228976a3023938 +size 8876 diff --git a/game/characters/tonks/clothes/bottom/jeans/outline.webp b/game/characters/tonks/clothes/bottom/jeans/outline.webp new file mode 100644 index 00000000..c3370eef --- /dev/null +++ b/game/characters/tonks/clothes/bottom/jeans/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3c2e6a28e5e0fd04f5067954b3f1e116a849f4ef99e10c0a03bad89ae5aa1d7 +size 21838 diff --git a/game/characters/tonks/clothes/bottom/latex_leggings/0.webp b/game/characters/tonks/clothes/bottom/latex_leggings/0.webp new file mode 100644 index 00000000..d91ad1cc --- /dev/null +++ b/game/characters/tonks/clothes/bottom/latex_leggings/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c34fed3ae08f77d52e9addc9f68009d861aac3e618af6129ec2cd77b2c2297cf +size 19726 diff --git a/game/characters/tonks/clothes/bottom/latex_leggings/1.webp b/game/characters/tonks/clothes/bottom/latex_leggings/1.webp new file mode 100644 index 00000000..beb2aca1 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/latex_leggings/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7dfabd1fcc032f79589955dee61d97c26df5f6fea052b35782fa47f73a90677c +size 15216 diff --git a/game/characters/tonks/clothes/bottom/latex_leggings/extra.webp b/game/characters/tonks/clothes/bottom/latex_leggings/extra.webp new file mode 100644 index 00000000..15db8de7 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/latex_leggings/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49a1501aac59046ea1204a7e899ea4b996585b4fd5143e88ac354c2748f2356c +size 9264 diff --git a/game/characters/tonks/clothes/bottom/latex_leggings/outline.webp b/game/characters/tonks/clothes/bottom/latex_leggings/outline.webp new file mode 100644 index 00000000..f61dc662 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/latex_leggings/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15dbb5be4bca01125c48af2b50031e477d55c9f60aedfe4c4e8f8702b82cff79 +size 14004 diff --git a/game/characters/tonks/clothes/bottom/latex_leggings/skin.webp b/game/characters/tonks/clothes/bottom/latex_leggings/skin.webp new file mode 100644 index 00000000..1334a8b1 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/latex_leggings/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd39248f5da0f3235ed856481b379d6dc1c5f73dfee1a7d6f97d751c561bfd90 +size 1376 diff --git a/game/characters/tonks/clothes/bottom/leggings/0.webp b/game/characters/tonks/clothes/bottom/leggings/0.webp new file mode 100644 index 00000000..5e11b899 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/leggings/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c472cbd075d01a29f1e6b4b834c1c925281aef1b4d594d4b4a25a9dc19004cdb +size 7530 diff --git a/game/characters/tonks/clothes/bottom/leggings/outline.webp b/game/characters/tonks/clothes/bottom/leggings/outline.webp new file mode 100644 index 00000000..25b89e80 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/leggings/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0c4f427d3ca40b06518eac4b0cc666babde1ed702b885cdc3fa22a9cbe093fc +size 11668 diff --git a/game/characters/tonks/clothes/bottom/leggings_hole/0.webp b/game/characters/tonks/clothes/bottom/leggings_hole/0.webp new file mode 100644 index 00000000..5b68f552 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/leggings_hole/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edd022b8ef3dca64194befee6a05f70e73efe3038366d7f5b94fa84ffb7d4a65 +size 7980 diff --git a/game/characters/tonks/clothes/bottom/leggings_hole/outline.webp b/game/characters/tonks/clothes/bottom/leggings_hole/outline.webp new file mode 100644 index 00000000..16a25d6d --- /dev/null +++ b/game/characters/tonks/clothes/bottom/leggings_hole/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:682c5ac7154e8807557466e13afd64d680f1f6df8f4940269ee7958ed7e41329 +size 11878 diff --git a/game/characters/tonks/clothes/bottom/police/0.webp b/game/characters/tonks/clothes/bottom/police/0.webp new file mode 100644 index 00000000..4214bbeb --- /dev/null +++ b/game/characters/tonks/clothes/bottom/police/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4911930a97bdb266c4baa7950db49e830bcf2b0e50deb70fa83cd914360ca8bb +size 6068 diff --git a/game/characters/tonks/clothes/bottom/police/1.webp b/game/characters/tonks/clothes/bottom/police/1.webp new file mode 100644 index 00000000..ea21b21f --- /dev/null +++ b/game/characters/tonks/clothes/bottom/police/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:268d7c1f529cf6f274baff5b6a4cab35b28734948021ed3f7f3946a50c95cb7b +size 1882 diff --git a/game/characters/tonks/clothes/bottom/police/outline.webp b/game/characters/tonks/clothes/bottom/police/outline.webp new file mode 100644 index 00000000..1ed2d748 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/police/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e52ff53af9507c77fff8c419fe1def071d0e1a8fa9f28ed3833d707a2c970b5 +size 7640 diff --git a/game/characters/tonks/clothes/bottom/school_skirt_1/not_implemented.txt b/game/characters/tonks/clothes/bottom/school_skirt_1/not_implemented.txt new file mode 100644 index 00000000..e69de29b diff --git a/game/characters/tonks/clothes/bottom/school_skirt_2/0.webp b/game/characters/tonks/clothes/bottom/school_skirt_2/0.webp new file mode 100644 index 00000000..eb856289 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/school_skirt_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4c2c72923ae231e40f00667099758452a65cfba90cf13c6e108e27ae5f57bad +size 16154 diff --git a/game/characters/tonks/clothes/bottom/school_skirt_2/1.webp b/game/characters/tonks/clothes/bottom/school_skirt_2/1.webp new file mode 100644 index 00000000..86615551 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/school_skirt_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6e5861784b621b9f0a7e3d269f365de6d22de77ce6939dab5a5db8921501f00 +size 930 diff --git a/game/characters/tonks/clothes/bottom/school_skirt_2/outline.webp b/game/characters/tonks/clothes/bottom/school_skirt_2/outline.webp new file mode 100644 index 00000000..fdc86890 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/school_skirt_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1018777ef3c7b98fc983aacd137412da1e84a397b218a66e46b0cbd658080c75 +size 21714 diff --git a/game/characters/tonks/clothes/bottom/school_skirt_3/0.webp b/game/characters/tonks/clothes/bottom/school_skirt_3/0.webp new file mode 100644 index 00000000..ca542ef3 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/school_skirt_3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ad0be0d7176317fd91d97f66c92cf2dcc436d76201d50c32a63a3ff278d8698 +size 13034 diff --git a/game/characters/tonks/clothes/bottom/school_skirt_3/1.webp b/game/characters/tonks/clothes/bottom/school_skirt_3/1.webp new file mode 100644 index 00000000..86615551 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/school_skirt_3/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6e5861784b621b9f0a7e3d269f365de6d22de77ce6939dab5a5db8921501f00 +size 930 diff --git a/game/characters/tonks/clothes/bottom/school_skirt_3/outline.webp b/game/characters/tonks/clothes/bottom/school_skirt_3/outline.webp new file mode 100644 index 00000000..982f2040 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/school_skirt_3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f78ae1853ac2ccc919cc4fe1cf8ca5303a19e1646d1bf88993577808eb5ffb1b +size 15634 diff --git a/game/characters/tonks/clothes/bottom/school_skirt_4/0.webp b/game/characters/tonks/clothes/bottom/school_skirt_4/0.webp new file mode 100644 index 00000000..f781b5ef --- /dev/null +++ b/game/characters/tonks/clothes/bottom/school_skirt_4/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54a95948f294bcc9fcf2ae55daaecba3e81c50896a03619b6de323637a0787b4 +size 11138 diff --git a/game/characters/tonks/clothes/bottom/school_skirt_4/1.webp b/game/characters/tonks/clothes/bottom/school_skirt_4/1.webp new file mode 100644 index 00000000..86615551 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/school_skirt_4/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6e5861784b621b9f0a7e3d269f365de6d22de77ce6939dab5a5db8921501f00 +size 930 diff --git a/game/characters/tonks/clothes/bottom/school_skirt_4/outline.webp b/game/characters/tonks/clothes/bottom/school_skirt_4/outline.webp new file mode 100644 index 00000000..86ca6d1b --- /dev/null +++ b/game/characters/tonks/clothes/bottom/school_skirt_4/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7dbeae8a3c87a4eebeaeca12c9b1ef6f75642bc2bea6478d5a6827dada4f2ff2 +size 12614 diff --git a/game/characters/tonks/clothes/bottom/sweatpants/0.webp b/game/characters/tonks/clothes/bottom/sweatpants/0.webp new file mode 100644 index 00000000..d7b1039f --- /dev/null +++ b/game/characters/tonks/clothes/bottom/sweatpants/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:884dbe5c208abe93e1846487d14fc96eb18cf5893fde8edc811a28ebcb67427d +size 8598 diff --git a/game/characters/tonks/clothes/bottom/sweatpants/1.webp b/game/characters/tonks/clothes/bottom/sweatpants/1.webp new file mode 100644 index 00000000..ad039043 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/sweatpants/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65c4e85482476cbfdcb106374b03eb6276348224402aa5415180ddff9025ec31 +size 3860 diff --git a/game/characters/tonks/clothes/bottom/sweatpants/outline.webp b/game/characters/tonks/clothes/bottom/sweatpants/outline.webp new file mode 100644 index 00000000..aa6f0363 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/sweatpants/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a04cdb56bb18bca84293d13e5cf1cdb82240d4a564ce3916450386d207fe931 +size 14342 diff --git a/game/characters/tonks/clothes/bottom/xmas/0.webp b/game/characters/tonks/clothes/bottom/xmas/0.webp new file mode 100644 index 00000000..ec90e1b2 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/xmas/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9eed436ce9b4b8cf8742320a4ef7178265450cb28b9f87a5fdbdb80dee2e26a5 +size 6742 diff --git a/game/characters/tonks/clothes/bottom/xmas/1.webp b/game/characters/tonks/clothes/bottom/xmas/1.webp new file mode 100644 index 00000000..5aafeb0b --- /dev/null +++ b/game/characters/tonks/clothes/bottom/xmas/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98922c57f0c8f3a028651cf4bb7d36c5f7f8ef8c93a748a5d172d3d2af02fedc +size 12514 diff --git a/game/characters/tonks/clothes/bottom/xmas/extra.webp b/game/characters/tonks/clothes/bottom/xmas/extra.webp new file mode 100644 index 00000000..67225313 --- /dev/null +++ b/game/characters/tonks/clothes/bottom/xmas/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65769b25842132bbe97bd3385c40f957070fb6e765608e1e943de23172c5a103 +size 5568 diff --git a/game/characters/tonks/clothes/bottom/xmas/outline.webp b/game/characters/tonks/clothes/bottom/xmas/outline.webp new file mode 100644 index 00000000..e030f39d --- /dev/null +++ b/game/characters/tonks/clothes/bottom/xmas/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4eabcd1744b6b34d7788a2b26e2322c52432831a2f20c0ee96f33c4fd3426ed0 +size 11486 diff --git a/game/characters/tonks/clothes/bottom/xmas/skin.webp b/game/characters/tonks/clothes/bottom/xmas/skin.webp new file mode 100644 index 00000000..211a36bd --- /dev/null +++ b/game/characters/tonks/clothes/bottom/xmas/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93327558c4e890039374c1d75c8201e02491706d98aa2034b973efaedafea6d0 +size 3196 diff --git a/game/characters/tonks/clothes/bra/bikini/0.webp b/game/characters/tonks/clothes/bra/bikini/0.webp new file mode 100644 index 00000000..38d7c4d0 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ef9c2964542a151e78d178c1039d7a2650ec07a181313fd286a18086ce12a64 +size 4894 diff --git a/game/characters/tonks/clothes/bra/bikini/1.webp b/game/characters/tonks/clothes/bra/bikini/1.webp new file mode 100644 index 00000000..290ce7e9 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fcf0630798903ac716094d7bbd6020b3bd60dcb74a6e7c3f0db3b34d4e2eb79 +size 2554 diff --git a/game/characters/tonks/clothes/bra/bikini/outline.webp b/game/characters/tonks/clothes/bra/bikini/outline.webp new file mode 100644 index 00000000..c6e4e7d5 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:326180b7274537f8b1574b2c447ab5e2db3caba6608a2993b3b529c967e8f8f7 +size 6864 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1/0.webp b/game/characters/tonks/clothes/bra/bikini_bra_1/0.webp new file mode 100644 index 00000000..05873052 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4214ae3a0560b591c0450d48b6e5f689e47d284f9498bbfd379731f76eb83f92 +size 5268 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1/1.webp b/game/characters/tonks/clothes/bra/bikini_bra_1/1.webp new file mode 100644 index 00000000..68729633 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72a94375c19b678a7b8ad6b78f71b4a4fbabc8620f9b43d67cf1d59e4d2df92a +size 5206 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1/outline.webp b/game/characters/tonks/clothes/bra/bikini_bra_1/outline.webp new file mode 100644 index 00000000..1de1b955 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dee355b7915846f6450632bcbd65f754786192151ff7a0b3ba00639524c4bfbd +size 6076 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1/skin.webp b/game/characters/tonks/clothes/bra/bikini_bra_1/skin.webp new file mode 100644 index 00000000..f54d875c --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ccfd7976a1abb51e0a556965e42b38802072a0029ba71a32ae012b71d903739a +size 2752 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_UK/0.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_UK/0.webp new file mode 100644 index 00000000..05873052 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_UK/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4214ae3a0560b591c0450d48b6e5f689e47d284f9498bbfd379731f76eb83f92 +size 5268 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_UK/1.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_UK/1.webp new file mode 100644 index 00000000..31941f2f --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_UK/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cbfe6e067f06ada185c2d2e8864bffd8bd7756c048f7124ccb8f61ca3b3d10f +size 5936 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_UK/2.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_UK/2.webp new file mode 100644 index 00000000..05c11e1b --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_UK/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c74cd84bcb41b73c2a71742c1388bd04a40330d29aabf37dbf44f1ec4e41fe5 +size 4674 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_UK/3.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_UK/3.webp new file mode 100644 index 00000000..68729633 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_UK/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72a94375c19b678a7b8ad6b78f71b4a4fbabc8620f9b43d67cf1d59e4d2df92a +size 5206 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_UK/outline.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_UK/outline.webp new file mode 100644 index 00000000..1de1b955 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_UK/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dee355b7915846f6450632bcbd65f754786192151ff7a0b3ba00639524c4bfbd +size 6076 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_UK/skin.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_UK/skin.webp new file mode 100644 index 00000000..f54d875c --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_UK/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ccfd7976a1abb51e0a556965e42b38802072a0029ba71a32ae012b71d903739a +size 2752 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_USA/0.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_USA/0.webp new file mode 100644 index 00000000..05873052 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_USA/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4214ae3a0560b591c0450d48b6e5f689e47d284f9498bbfd379731f76eb83f92 +size 5268 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_USA/1.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_USA/1.webp new file mode 100644 index 00000000..7bd1c4ab --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_USA/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8693b0d3e6ec2c50456402ba56dcf2db0573266ba67afbbb1afb75fd98005a72 +size 3376 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_USA/2.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_USA/2.webp new file mode 100644 index 00000000..6cf39146 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_USA/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5c6ff9e09ebf44e9b57b69fd5bbb44159a96360a76ddf641710dc1ec5648eb7 +size 2218 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_USA/3.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_USA/3.webp new file mode 100644 index 00000000..8f8a8fde --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_USA/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4aea3638420c708ad6e820fc23a789eba611dd8de1027bd6de9b2d0267f6890 +size 6974 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_USA/outline.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_USA/outline.webp new file mode 100644 index 00000000..1de1b955 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_USA/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dee355b7915846f6450632bcbd65f754786192151ff7a0b3ba00639524c4bfbd +size 6076 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_USA/skin.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_USA/skin.webp new file mode 100644 index 00000000..f54d875c --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_USA/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ccfd7976a1abb51e0a556965e42b38802072a0029ba71a32ae012b71d903739a +size 2752 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_striped/0.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_striped/0.webp new file mode 100644 index 00000000..05873052 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_striped/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4214ae3a0560b591c0450d48b6e5f689e47d284f9498bbfd379731f76eb83f92 +size 5268 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_striped/1.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_striped/1.webp new file mode 100644 index 00000000..ee76d73d --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_striped/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a88a1a7f7fba03d9592be2f8bf26ed761dfe9490cdb8a845cd1e7bacf9d1f6ed +size 5238 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_striped/2.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_striped/2.webp new file mode 100644 index 00000000..68729633 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_striped/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72a94375c19b678a7b8ad6b78f71b4a4fbabc8620f9b43d67cf1d59e4d2df92a +size 5206 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_striped/outline.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_striped/outline.webp new file mode 100644 index 00000000..1de1b955 --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_striped/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dee355b7915846f6450632bcbd65f754786192151ff7a0b3ba00639524c4bfbd +size 6076 diff --git a/game/characters/tonks/clothes/bra/bikini_bra_1_striped/skin.webp b/game/characters/tonks/clothes/bra/bikini_bra_1_striped/skin.webp new file mode 100644 index 00000000..f54d875c --- /dev/null +++ b/game/characters/tonks/clothes/bra/bikini_bra_1_striped/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ccfd7976a1abb51e0a556965e42b38802072a0029ba71a32ae012b71d903739a +size 2752 diff --git a/game/characters/tonks/clothes/bra/pasties_1/0.webp b/game/characters/tonks/clothes/bra/pasties_1/0.webp new file mode 100644 index 00000000..e630b3fb --- /dev/null +++ b/game/characters/tonks/clothes/bra/pasties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4e6583d639599f54e73a5b96f79bb961ec65667f771123ab7f6b5e04b605d98 +size 2424 diff --git a/game/characters/tonks/clothes/bra/pasties_1/extra.webp b/game/characters/tonks/clothes/bra/pasties_1/extra.webp new file mode 100644 index 00000000..35a00663 --- /dev/null +++ b/game/characters/tonks/clothes/bra/pasties_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52f6113eec9b403deafe55da8832c1305816a9fc455320e2a2136e92068ff116 +size 850 diff --git a/game/characters/tonks/clothes/bra/pasties_1/outline.webp b/game/characters/tonks/clothes/bra/pasties_1/outline.webp new file mode 100644 index 00000000..f3e169c6 --- /dev/null +++ b/game/characters/tonks/clothes/bra/pasties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4368ffc0eea940312fad44663f6c84e81269b8a03bfb76a11ed5d43ff177557 +size 2718 diff --git a/game/characters/tonks/clothes/bra/pasties_2/0.webp b/game/characters/tonks/clothes/bra/pasties_2/0.webp new file mode 100644 index 00000000..e630b3fb --- /dev/null +++ b/game/characters/tonks/clothes/bra/pasties_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4e6583d639599f54e73a5b96f79bb961ec65667f771123ab7f6b5e04b605d98 +size 2424 diff --git a/game/characters/tonks/clothes/bra/pasties_2/1.webp b/game/characters/tonks/clothes/bra/pasties_2/1.webp new file mode 100644 index 00000000..c6c33b73 --- /dev/null +++ b/game/characters/tonks/clothes/bra/pasties_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a30bb04c9f8064848be371399904bb6f5e44999e0357c83f15246ceec5d0a48 +size 1742 diff --git a/game/characters/tonks/clothes/bra/pasties_2/extra.webp b/game/characters/tonks/clothes/bra/pasties_2/extra.webp new file mode 100644 index 00000000..45287eed --- /dev/null +++ b/game/characters/tonks/clothes/bra/pasties_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5419b196475eb09826e0c15e7a06ca7889936ae8d67ec1c6c15c13e8dad8f80a +size 968 diff --git a/game/characters/tonks/clothes/bra/pasties_2/outline.webp b/game/characters/tonks/clothes/bra/pasties_2/outline.webp new file mode 100644 index 00000000..56a7a870 --- /dev/null +++ b/game/characters/tonks/clothes/bra/pasties_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24c07af4fa14053ec4996c0ce3bcd4c6e49e26192d0b1e0f9da48c9c10542d8b +size 3488 diff --git a/game/characters/tonks/clothes/bra/ribbon/0.webp b/game/characters/tonks/clothes/bra/ribbon/0.webp new file mode 100644 index 00000000..169f67e7 --- /dev/null +++ b/game/characters/tonks/clothes/bra/ribbon/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:686bc87539c5b969b2403c89c1ae84be3b458b368ef34a00e6879cc7855322cd +size 7478 diff --git a/game/characters/tonks/clothes/bra/ribbon/backupskin.webp b/game/characters/tonks/clothes/bra/ribbon/backupskin.webp new file mode 100644 index 00000000..75390b7f --- /dev/null +++ b/game/characters/tonks/clothes/bra/ribbon/backupskin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bb47b9c5cc1eccb2342fa223bac89a92d3650d9939720d937c8af404ab242d4 +size 2338 diff --git a/game/characters/tonks/clothes/bra/ribbon/extra.webp b/game/characters/tonks/clothes/bra/ribbon/extra.webp new file mode 100644 index 00000000..2c6e6e72 --- /dev/null +++ b/game/characters/tonks/clothes/bra/ribbon/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b295fae7f8f22e34114e8dd01a366a959897659a7c01cb524f51b7708e924402 +size 4632 diff --git a/game/characters/tonks/clothes/bra/ribbon/mask.webp b/game/characters/tonks/clothes/bra/ribbon/mask.webp new file mode 100644 index 00000000..b914b0e6 --- /dev/null +++ b/game/characters/tonks/clothes/bra/ribbon/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:302ff8cd98dfa70ebe0382d4399cc7bd9b91a64afb9d58ebaba488855d19ae08 +size 788 diff --git a/game/characters/tonks/clothes/bra/ribbon/outline.webp b/game/characters/tonks/clothes/bra/ribbon/outline.webp new file mode 100644 index 00000000..8b2d63ee --- /dev/null +++ b/game/characters/tonks/clothes/bra/ribbon/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0892da91b6253b2bedd7bcce6c1557ca7f567e671cb341dc6e979bac3663498 +size 9424 diff --git a/game/characters/tonks/clothes/bra/ribbon/skin.webp b/game/characters/tonks/clothes/bra/ribbon/skin.webp new file mode 100644 index 00000000..8c96cf65 --- /dev/null +++ b/game/characters/tonks/clothes/bra/ribbon/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:011a89990abde04d89745ef3d3d9ea952c75c65f4531da35cf157f5366c8b97d +size 15700 diff --git a/game/characters/tonks/clothes/earrings/bells/0.webp b/game/characters/tonks/clothes/earrings/bells/0.webp new file mode 100644 index 00000000..baa73d0d --- /dev/null +++ b/game/characters/tonks/clothes/earrings/bells/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10af79e31f2c10032ce57b897bb2b23f4a2b7ad61d6d9dbef0c086653fbff0aa +size 1120 diff --git a/game/characters/tonks/clothes/earrings/bells/extra.webp b/game/characters/tonks/clothes/earrings/bells/extra.webp new file mode 100644 index 00000000..af5e7135 --- /dev/null +++ b/game/characters/tonks/clothes/earrings/bells/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46dfcb28cb350dec4620a7c51c75d2f2188bcace6398181661892e4236843deb +size 604 diff --git a/game/characters/tonks/clothes/earrings/bells/outline.webp b/game/characters/tonks/clothes/earrings/bells/outline.webp new file mode 100644 index 00000000..60cc06cb --- /dev/null +++ b/game/characters/tonks/clothes/earrings/bells/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bac681a75a9c982900cfc87d2f160b93070568b8b846957c9e1b1d25da52a9a8 +size 1078 diff --git a/game/characters/tonks/clothes/earrings/cartilege/0.webp b/game/characters/tonks/clothes/earrings/cartilege/0.webp new file mode 100644 index 00000000..9b4a8e22 --- /dev/null +++ b/game/characters/tonks/clothes/earrings/cartilege/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:571741d6b46f6e92b077b40134bfa4cec89a723137d64241faeadb8681d009e7 +size 632 diff --git a/game/characters/tonks/clothes/earrings/cartilege/extra.webp b/game/characters/tonks/clothes/earrings/cartilege/extra.webp new file mode 100644 index 00000000..bce35b75 --- /dev/null +++ b/game/characters/tonks/clothes/earrings/cartilege/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5eca62d41fdac96ce778610d4327472a8122dc698f3ed53b5b15fdae99e4d9dc +size 560 diff --git a/game/characters/tonks/clothes/earrings/cartilege/outline.webp b/game/characters/tonks/clothes/earrings/cartilege/outline.webp new file mode 100644 index 00000000..12da9fbc --- /dev/null +++ b/game/characters/tonks/clothes/earrings/cartilege/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7032e47099c20de0f1cb1ebe556ddd622c05543848633fbfb1548d601f054b83 +size 692 diff --git a/game/characters/tonks/clothes/earrings/hoops/0.webp b/game/characters/tonks/clothes/earrings/hoops/0.webp new file mode 100644 index 00000000..f0a9b7a0 --- /dev/null +++ b/game/characters/tonks/clothes/earrings/hoops/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:109b2869b5ddf1d14b2cac2e4b36f29b5281bb446ce7032dbce3425c9deb6c22 +size 1578 diff --git a/game/characters/tonks/clothes/earrings/hoops/extra.webp b/game/characters/tonks/clothes/earrings/hoops/extra.webp new file mode 100644 index 00000000..bbb02dea --- /dev/null +++ b/game/characters/tonks/clothes/earrings/hoops/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8efb97fd62fe3f3012febb6bc5b3f770443a31ccb31555e558c8d830d98019bf +size 1356 diff --git a/game/characters/tonks/clothes/earrings/hoops/outline.webp b/game/characters/tonks/clothes/earrings/hoops/outline.webp new file mode 100644 index 00000000..b2d60027 --- /dev/null +++ b/game/characters/tonks/clothes/earrings/hoops/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32ca96c8d7db5f0321d4f7e30d9df66f12dca8982192a787f16b4a2d0be236b7 +size 1836 diff --git a/game/characters/tonks/clothes/earrings/industrial/0.webp b/game/characters/tonks/clothes/earrings/industrial/0.webp new file mode 100644 index 00000000..19b846c8 --- /dev/null +++ b/game/characters/tonks/clothes/earrings/industrial/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ce189e73523f7bcd61fa1a8ac36a86d482e8e651d3685fb14aaf8fe689bcf49 +size 740 diff --git a/game/characters/tonks/clothes/earrings/industrial/extra.webp b/game/characters/tonks/clothes/earrings/industrial/extra.webp new file mode 100644 index 00000000..95f1adb6 --- /dev/null +++ b/game/characters/tonks/clothes/earrings/industrial/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6821dc6263e627c05cc469b22041d9cb4678c88fbb894237921634ba05ae9270 +size 684 diff --git a/game/characters/tonks/clothes/earrings/industrial/outline.webp b/game/characters/tonks/clothes/earrings/industrial/outline.webp new file mode 100644 index 00000000..33704d53 --- /dev/null +++ b/game/characters/tonks/clothes/earrings/industrial/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83a9f8960c2bfc6c4d48a8450a9ed715ca50ea8b4628edd2bf1735c1e787bf06 +size 832 diff --git a/game/characters/tonks/clothes/earrings/pearls/0.webp b/game/characters/tonks/clothes/earrings/pearls/0.webp new file mode 100644 index 00000000..48dba45a --- /dev/null +++ b/game/characters/tonks/clothes/earrings/pearls/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57677212a458930b545dfe6adee754aec5a7203a00b61f43a56b3dd4af845b31 +size 828 diff --git a/game/characters/tonks/clothes/earrings/pearls/extra.webp b/game/characters/tonks/clothes/earrings/pearls/extra.webp new file mode 100644 index 00000000..e0df6463 --- /dev/null +++ b/game/characters/tonks/clothes/earrings/pearls/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89d687e1d7665c466f4f88a269173739abbaa9371ab61bee394de7c17f4c4a2e +size 800 diff --git a/game/characters/tonks/clothes/earrings/pearls/outline.webp b/game/characters/tonks/clothes/earrings/pearls/outline.webp new file mode 100644 index 00000000..21c8c863 --- /dev/null +++ b/game/characters/tonks/clothes/earrings/pearls/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebde03daf95c180ec957d04278f15d7063ca938034a0c7b64e584b10fc51201a +size 862 diff --git a/game/characters/tonks/clothes/earrings/pearls_2/0.webp b/game/characters/tonks/clothes/earrings/pearls_2/0.webp new file mode 100644 index 00000000..456d9c12 --- /dev/null +++ b/game/characters/tonks/clothes/earrings/pearls_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dde84587b7f782e61965b9ac9b8c133fec686c51b402db5b67ba4b03c3ca8c5 +size 772 diff --git a/game/characters/tonks/clothes/earrings/pearls_2/extra.webp b/game/characters/tonks/clothes/earrings/pearls_2/extra.webp new file mode 100644 index 00000000..f513ac68 --- /dev/null +++ b/game/characters/tonks/clothes/earrings/pearls_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88c1561e6b837d85e977e56208d41102ad1fba7c9f8245457f5edf8662166ccc +size 562 diff --git a/game/characters/tonks/clothes/earrings/pearls_2/outline.webp b/game/characters/tonks/clothes/earrings/pearls_2/outline.webp new file mode 100644 index 00000000..59e9b54b --- /dev/null +++ b/game/characters/tonks/clothes/earrings/pearls_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:599409cc48f4885f0ce17a687424400dbb15b11f633fcc1c536ecd71c61f3419 +size 728 diff --git a/game/characters/tonks/clothes/garterbelt/long_basic_1/0.webp b/game/characters/tonks/clothes/garterbelt/long_basic_1/0.webp new file mode 100644 index 00000000..091397a1 --- /dev/null +++ b/game/characters/tonks/clothes/garterbelt/long_basic_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbcf2c7b71e7d0f759bc223d593dabd733105126e53f9913a38bf6470eb35d09 +size 4262 diff --git a/game/characters/tonks/clothes/garterbelt/long_basic_1/outline.webp b/game/characters/tonks/clothes/garterbelt/long_basic_1/outline.webp new file mode 100644 index 00000000..31961d53 --- /dev/null +++ b/game/characters/tonks/clothes/garterbelt/long_basic_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7220234f5b8d9a7c579413ff4129c6e61cc2b1d63ff9d829763222f5c7eacfef +size 6252 diff --git a/game/characters/tonks/clothes/glasses/police/0.webp b/game/characters/tonks/clothes/glasses/police/0.webp new file mode 100644 index 00000000..f44e743c --- /dev/null +++ b/game/characters/tonks/clothes/glasses/police/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f94c7704c4e584b09181892cf41bddfb700a417cc0f2799656bbd7e23d5a4d68 +size 2754 diff --git a/game/characters/tonks/clothes/glasses/police/1.webp b/game/characters/tonks/clothes/glasses/police/1.webp new file mode 100644 index 00000000..a98a7f88 --- /dev/null +++ b/game/characters/tonks/clothes/glasses/police/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f603a69e5b27d6ec6e69edd56d2d221a8700c54ef5c2da25670b416c28cc26b3 +size 2900 diff --git a/game/characters/tonks/clothes/glasses/police/outline.webp b/game/characters/tonks/clothes/glasses/police/outline.webp new file mode 100644 index 00000000..a74f38c0 --- /dev/null +++ b/game/characters/tonks/clothes/glasses/police/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:734ab59d716bffed8373fc8b5927031e6ac3e3bd55796a135463d04eacdca1b7 +size 3220 diff --git a/game/characters/tonks/clothes/glasses/shades/0.webp b/game/characters/tonks/clothes/glasses/shades/0.webp new file mode 100644 index 00000000..e49d7f6b --- /dev/null +++ b/game/characters/tonks/clothes/glasses/shades/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d668b2e5c7b2b0947cf4b33abae4f6757b485758f477af46903dcbc877af849 +size 2998 diff --git a/game/characters/tonks/clothes/glasses/shades/1.webp b/game/characters/tonks/clothes/glasses/shades/1.webp new file mode 100644 index 00000000..5774a498 --- /dev/null +++ b/game/characters/tonks/clothes/glasses/shades/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9eb7f85e378077a93029f50213cb4a6d5230650759d5951102d15958f1e7389 +size 2174 diff --git a/game/characters/tonks/clothes/glasses/shades/outline.webp b/game/characters/tonks/clothes/glasses/shades/outline.webp new file mode 100644 index 00000000..5f236b9e --- /dev/null +++ b/game/characters/tonks/clothes/glasses/shades/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58091a49b506b457128f5e87c21b45325f6df379ec6e86370043824e6190ff83 +size 3250 diff --git a/game/characters/tonks/clothes/gloves/auror_gloves/0.webp b/game/characters/tonks/clothes/gloves/auror_gloves/0.webp new file mode 100644 index 00000000..391b5843 --- /dev/null +++ b/game/characters/tonks/clothes/gloves/auror_gloves/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c367576b49219ac03a5d68cb3f47e5931592965ede201d748e2d774babda96c3 +size 3258 diff --git a/game/characters/tonks/clothes/gloves/auror_gloves/0_front.webp b/game/characters/tonks/clothes/gloves/auror_gloves/0_front.webp new file mode 100644 index 00000000..391b5843 --- /dev/null +++ b/game/characters/tonks/clothes/gloves/auror_gloves/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c367576b49219ac03a5d68cb3f47e5931592965ede201d748e2d774babda96c3 +size 3258 diff --git a/game/characters/tonks/clothes/gloves/auror_gloves/outline.webp b/game/characters/tonks/clothes/gloves/auror_gloves/outline.webp new file mode 100644 index 00000000..43874aad --- /dev/null +++ b/game/characters/tonks/clothes/gloves/auror_gloves/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89cbc758ad3e44f6e631132e20990897745d7ba3970254a517e8d309dbbd89ef +size 3432 diff --git a/game/characters/tonks/clothes/gloves/auror_gloves/outline_front.webp b/game/characters/tonks/clothes/gloves/auror_gloves/outline_front.webp new file mode 100644 index 00000000..43874aad --- /dev/null +++ b/game/characters/tonks/clothes/gloves/auror_gloves/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89cbc758ad3e44f6e631132e20990897745d7ba3970254a517e8d309dbbd89ef +size 3432 diff --git a/game/characters/tonks/clothes/gloves/leather_gloves/0.webp b/game/characters/tonks/clothes/gloves/leather_gloves/0.webp new file mode 100644 index 00000000..ed258bd9 --- /dev/null +++ b/game/characters/tonks/clothes/gloves/leather_gloves/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab6f47e792bab7233d0b248b2e1b4e376ec7346f546ce7d5e2af8b49edd60a6c +size 3926 diff --git a/game/characters/tonks/clothes/gloves/leather_gloves/0_front.webp b/game/characters/tonks/clothes/gloves/leather_gloves/0_front.webp new file mode 100644 index 00000000..ed258bd9 --- /dev/null +++ b/game/characters/tonks/clothes/gloves/leather_gloves/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab6f47e792bab7233d0b248b2e1b4e376ec7346f546ce7d5e2af8b49edd60a6c +size 3926 diff --git a/game/characters/tonks/clothes/gloves/leather_gloves/extra.webp b/game/characters/tonks/clothes/gloves/leather_gloves/extra.webp new file mode 100644 index 00000000..8bbbaf84 --- /dev/null +++ b/game/characters/tonks/clothes/gloves/leather_gloves/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cff262893688bd0b50aa955eab83a5bb7b90d696a06d76f51d3e584f863b3fc0 +size 2148 diff --git a/game/characters/tonks/clothes/gloves/leather_gloves/outline.webp b/game/characters/tonks/clothes/gloves/leather_gloves/outline.webp new file mode 100644 index 00000000..623c5345 --- /dev/null +++ b/game/characters/tonks/clothes/gloves/leather_gloves/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cee934fcee10d4670d34d6da9588c3fe68a0adc4db8025674ac39601ffda556c +size 5426 diff --git a/game/characters/tonks/clothes/gloves/leather_gloves/outline_front.webp b/game/characters/tonks/clothes/gloves/leather_gloves/outline_front.webp new file mode 100644 index 00000000..623c5345 --- /dev/null +++ b/game/characters/tonks/clothes/gloves/leather_gloves/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cee934fcee10d4670d34d6da9588c3fe68a0adc4db8025674ac39601ffda556c +size 5426 diff --git a/game/characters/tonks/clothes/gloves/succubus_gloves/0.webp b/game/characters/tonks/clothes/gloves/succubus_gloves/0.webp new file mode 100644 index 00000000..b393ec9f --- /dev/null +++ b/game/characters/tonks/clothes/gloves/succubus_gloves/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35e2c13dc82f801f10ae098b7d20e733d2cf8b26a7b5c8f0922695da58813adc +size 31186 diff --git a/game/characters/tonks/clothes/gloves/succubus_gloves/0_front.webp b/game/characters/tonks/clothes/gloves/succubus_gloves/0_front.webp new file mode 100644 index 00000000..b393ec9f --- /dev/null +++ b/game/characters/tonks/clothes/gloves/succubus_gloves/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35e2c13dc82f801f10ae098b7d20e733d2cf8b26a7b5c8f0922695da58813adc +size 31186 diff --git a/game/characters/tonks/clothes/gloves/succubus_gloves/outline.webp b/game/characters/tonks/clothes/gloves/succubus_gloves/outline.webp new file mode 100644 index 00000000..c5c2388f --- /dev/null +++ b/game/characters/tonks/clothes/gloves/succubus_gloves/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3992722ffc96e714ce303bb4b8eb26f859fad444b2720a534efa35d1a87bf25b +size 12052 diff --git a/game/characters/tonks/clothes/gloves/succubus_gloves/outline_front.webp b/game/characters/tonks/clothes/gloves/succubus_gloves/outline_front.webp new file mode 100644 index 00000000..c5c2388f --- /dev/null +++ b/game/characters/tonks/clothes/gloves/succubus_gloves/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3992722ffc96e714ce303bb4b8eb26f859fad444b2720a534efa35d1a87bf25b +size 12052 diff --git a/game/characters/tonks/clothes/gloves/xmas/0.webp b/game/characters/tonks/clothes/gloves/xmas/0.webp new file mode 100644 index 00000000..9af23d0c --- /dev/null +++ b/game/characters/tonks/clothes/gloves/xmas/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7f2b7e801455f0dbffa8653845397c6980f620d234903b1dfe52637872177bc +size 2024 diff --git a/game/characters/tonks/clothes/gloves/xmas/outline.webp b/game/characters/tonks/clothes/gloves/xmas/outline.webp new file mode 100644 index 00000000..aa283d1d --- /dev/null +++ b/game/characters/tonks/clothes/gloves/xmas/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95b313b4f6addc89c557938ebf62a1198265f48bc9f0638a499cbc79e44de1e5 +size 2226 diff --git a/game/characters/tonks/clothes/hair/base/0.webp b/game/characters/tonks/clothes/hair/base/0.webp new file mode 100644 index 00000000..65055ad6 --- /dev/null +++ b/game/characters/tonks/clothes/hair/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7e37dedb26ffa74e2819a2a6fb030a6ad212fe6266d32b5926c853ed52e5c92 +size 13612 diff --git a/game/characters/tonks/clothes/hair/base/1.webp b/game/characters/tonks/clothes/hair/base/1.webp new file mode 100644 index 00000000..fc90e110 --- /dev/null +++ b/game/characters/tonks/clothes/hair/base/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb13c4114d96762ac7b2f12a608216b46ec4b4550fe8e04e4a2a1e046cee4632 +size 4310 diff --git a/game/characters/tonks/clothes/hair/base/outline.webp b/game/characters/tonks/clothes/hair/base/outline.webp new file mode 100644 index 00000000..a14cc055 --- /dev/null +++ b/game/characters/tonks/clothes/hair/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a375fcf37f9e69c155309c3c192d5b9fd38247bac7f6e583e33ba155c832b92 +size 19270 diff --git a/game/characters/tonks/clothes/hair/base/skin.webp b/game/characters/tonks/clothes/hair/base/skin.webp new file mode 100644 index 00000000..c9b9dd0f --- /dev/null +++ b/game/characters/tonks/clothes/hair/base/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb676340b40a4fd52e47b4f3f355456dedc56205e50c14e366f40e5adaec608d +size 1714 diff --git a/game/characters/tonks/clothes/hair/new/0.webp b/game/characters/tonks/clothes/hair/new/0.webp new file mode 100644 index 00000000..8f68f588 --- /dev/null +++ b/game/characters/tonks/clothes/hair/new/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01b0a9f51bc9fe2f41150083424d742c4e2851867d873bc917323d54e32322ba +size 10928 diff --git a/game/characters/tonks/clothes/hair/new/0_back.webp b/game/characters/tonks/clothes/hair/new/0_back.webp new file mode 100644 index 00000000..122d07d2 --- /dev/null +++ b/game/characters/tonks/clothes/hair/new/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3db8ff527d18fc9751d2977aa3cf4c40bf6e9039af3b7f1b41ab97f7f787c059 +size 3724 diff --git a/game/characters/tonks/clothes/hair/new/1.webp b/game/characters/tonks/clothes/hair/new/1.webp new file mode 100644 index 00000000..ac74d7fb --- /dev/null +++ b/game/characters/tonks/clothes/hair/new/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02a5619ca29e4cfddababd3ed108b685b9fa7c65e276c3c92a4fe23d20df7db5 +size 5010 diff --git a/game/characters/tonks/clothes/hair/new/1_back.webp b/game/characters/tonks/clothes/hair/new/1_back.webp new file mode 100644 index 00000000..9f7214ee --- /dev/null +++ b/game/characters/tonks/clothes/hair/new/1_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f8cb82192351b639e89b4d0d215b86a9c6721ddd7652e0bca11175d24460936 +size 912 diff --git a/game/characters/tonks/clothes/hair/new/outline.webp b/game/characters/tonks/clothes/hair/new/outline.webp new file mode 100644 index 00000000..631fd48d --- /dev/null +++ b/game/characters/tonks/clothes/hair/new/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffaaf799741d06f8dddd9db5e670a0b0a5ebd4be5446b4b7c1e61d8739e21189 +size 16616 diff --git a/game/characters/tonks/clothes/hair/new/outline_back.webp b/game/characters/tonks/clothes/hair/new/outline_back.webp new file mode 100644 index 00000000..2328d5dc --- /dev/null +++ b/game/characters/tonks/clothes/hair/new/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2995f3e80854501dea32e2b1ea353bf17c6771cc5269be697601b5cdf130ce78 +size 4940 diff --git a/game/characters/tonks/clothes/hair/new/skin.webp b/game/characters/tonks/clothes/hair/new/skin.webp new file mode 100644 index 00000000..0721f3ff --- /dev/null +++ b/game/characters/tonks/clothes/hair/new/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7097c73d5ab1c28aeeff25f4f06f19b9c8830d9c7537e98f53a2e7cfef0a11fc +size 2050 diff --git a/game/characters/tonks/clothes/headgear/antlers/0.webp b/game/characters/tonks/clothes/headgear/antlers/0.webp new file mode 100644 index 00000000..5925fcfb --- /dev/null +++ b/game/characters/tonks/clothes/headgear/antlers/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e092b80ff179b4763ba7dcc25909ed3b1e1f6c974e3be5d10b75d2c8c5fef0f3 +size 4524 diff --git a/game/characters/tonks/clothes/headgear/antlers/outline.webp b/game/characters/tonks/clothes/headgear/antlers/outline.webp new file mode 100644 index 00000000..4ddf95fa --- /dev/null +++ b/game/characters/tonks/clothes/headgear/antlers/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af9533098343ceaa6c97b8394aa5d0cdec5f9a7b40aa949230c77929ffaab505 +size 4048 diff --git a/game/characters/tonks/clothes/headgear/bunny/0.webp b/game/characters/tonks/clothes/headgear/bunny/0.webp new file mode 100644 index 00000000..5d72eda3 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/bunny/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42a46b4d43af9cc9b492db6b976906cbf9bead27a990e34b5da16ee7abed0139 +size 4226 diff --git a/game/characters/tonks/clothes/headgear/bunny/1.webp b/game/characters/tonks/clothes/headgear/bunny/1.webp new file mode 100644 index 00000000..774f0c16 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/bunny/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:772a4e803ff588fa03649664a71d757ea5302f9bf40e95e4b156af7f03005bc8 +size 2868 diff --git a/game/characters/tonks/clothes/headgear/bunny/outline.webp b/game/characters/tonks/clothes/headgear/bunny/outline.webp new file mode 100644 index 00000000..29414f99 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/bunny/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0094f43182b053e4de4e57be0613a08bb819a5772c675ecc9679d104c49bfcc +size 6230 diff --git a/game/characters/tonks/clothes/headgear/classy_hat/0.webp b/game/characters/tonks/clothes/headgear/classy_hat/0.webp new file mode 100644 index 00000000..6fbb7bcc --- /dev/null +++ b/game/characters/tonks/clothes/headgear/classy_hat/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4f16469f76fa22ea43a2346407a802434ae02dff4da1c40bec6af146a42feae +size 94 diff --git a/game/characters/tonks/clothes/headgear/classy_hat/0_back.webp b/game/characters/tonks/clothes/headgear/classy_hat/0_back.webp new file mode 100644 index 00000000..a91ddc0a --- /dev/null +++ b/game/characters/tonks/clothes/headgear/classy_hat/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec26e50f1d8b246e3808cea9b019871693d21c3848d52c67c5dcec7cd93105fd +size 10004 diff --git a/game/characters/tonks/clothes/headgear/classy_hat/0_front.webp b/game/characters/tonks/clothes/headgear/classy_hat/0_front.webp new file mode 100644 index 00000000..3fbe18ea --- /dev/null +++ b/game/characters/tonks/clothes/headgear/classy_hat/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d6dedbd59aca225a5bea72d943f9318ca354d47c8cc1b3f2921cd23ca1b578c +size 11114 diff --git a/game/characters/tonks/clothes/headgear/classy_hat/extra.webp b/game/characters/tonks/clothes/headgear/classy_hat/extra.webp new file mode 100644 index 00000000..6fbb7bcc --- /dev/null +++ b/game/characters/tonks/clothes/headgear/classy_hat/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4f16469f76fa22ea43a2346407a802434ae02dff4da1c40bec6af146a42feae +size 94 diff --git a/game/characters/tonks/clothes/headgear/classy_hat/extra_front.webp b/game/characters/tonks/clothes/headgear/classy_hat/extra_front.webp new file mode 100644 index 00000000..472d5988 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/classy_hat/extra_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ece5e41874d31f75b6d5cb66d932c4b642e254ca7e011a9c0980714d1b3513bc +size 3356 diff --git a/game/characters/tonks/clothes/headgear/classy_hat/outline.webp b/game/characters/tonks/clothes/headgear/classy_hat/outline.webp new file mode 100644 index 00000000..ad03e1c4 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/classy_hat/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa0ee667760f23a46fbde2de29847c554b6fbd712dd92b6c3339b3a970610ece +size 166 diff --git a/game/characters/tonks/clothes/headgear/classy_hat/outline_back.webp b/game/characters/tonks/clothes/headgear/classy_hat/outline_back.webp new file mode 100644 index 00000000..3006d851 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/classy_hat/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:533de473acb154c23bbaff41eb09a00fb63274f442bab6724154915acdd19a72 +size 6838 diff --git a/game/characters/tonks/clothes/headgear/classy_hat/outline_front.webp b/game/characters/tonks/clothes/headgear/classy_hat/outline_front.webp new file mode 100644 index 00000000..0404e702 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/classy_hat/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5418dd90f7defc25f7201062884a371fe6497bb259d7480330674895bd1064d +size 8218 diff --git a/game/characters/tonks/clothes/headgear/elf/0.webp b/game/characters/tonks/clothes/headgear/elf/0.webp new file mode 100644 index 00000000..85c4c7a5 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/elf/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21441c9e17662275baaada5357a37dc33fe793b547fa15e91da6769e580594ac +size 4536 diff --git a/game/characters/tonks/clothes/headgear/elf/1.webp b/game/characters/tonks/clothes/headgear/elf/1.webp new file mode 100644 index 00000000..cba488be --- /dev/null +++ b/game/characters/tonks/clothes/headgear/elf/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f5ca5b11579ec90807deef016900895c639a66b034794d66766b5f010e05e1f +size 3480 diff --git a/game/characters/tonks/clothes/headgear/elf/extra.webp b/game/characters/tonks/clothes/headgear/elf/extra.webp new file mode 100644 index 00000000..f3ef5e7b --- /dev/null +++ b/game/characters/tonks/clothes/headgear/elf/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98ebcec6fadde8ea8d34d702d2864a4dac3d37db915a8071d871edcfd0bd08cd +size 1974 diff --git a/game/characters/tonks/clothes/headgear/elf/outline.webp b/game/characters/tonks/clothes/headgear/elf/outline.webp new file mode 100644 index 00000000..d8e95d6b --- /dev/null +++ b/game/characters/tonks/clothes/headgear/elf/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b0657203324ab87a174690dde0c0767a7490ebde1f3dcfa2384b90e0b00b536 +size 6112 diff --git a/game/characters/tonks/clothes/headgear/horns/0.webp b/game/characters/tonks/clothes/headgear/horns/0.webp new file mode 100644 index 00000000..fc320d64 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/horns/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ef19747bd54cf1a1e9d31c2d5e2848b9784c6d341d555613c14bfd847ab9946 +size 2188 diff --git a/game/characters/tonks/clothes/headgear/horns/1.webp b/game/characters/tonks/clothes/headgear/horns/1.webp new file mode 100644 index 00000000..1bb08de9 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/horns/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac2f7ed6cf3a15ffd541a1cad425eae61879e501f487bd90713b59a6ce9a9be3 +size 1474 diff --git a/game/characters/tonks/clothes/headgear/horns/outline.webp b/game/characters/tonks/clothes/headgear/horns/outline.webp new file mode 100644 index 00000000..90908687 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/horns/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9774c6f138a43c8e6de075781944c1fb5617c11d2ff876b5532fe9d4f8c7d1fd +size 4032 diff --git a/game/characters/tonks/clothes/headgear/police/0.webp b/game/characters/tonks/clothes/headgear/police/0.webp new file mode 100644 index 00000000..346cb932 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/police/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ef1a475ea21a75ae8f2a2f30d6778ff8633619c9dabd5a2ea29540587284fd8 +size 4214 diff --git a/game/characters/tonks/clothes/headgear/police/1.webp b/game/characters/tonks/clothes/headgear/police/1.webp new file mode 100644 index 00000000..1b1000b6 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/police/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb1adb2980dd1f621e5766cb6da9f35f46d857b209b33b3ca9688630579c4ed8 +size 4164 diff --git a/game/characters/tonks/clothes/headgear/police/2.webp b/game/characters/tonks/clothes/headgear/police/2.webp new file mode 100644 index 00000000..65f48103 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/police/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd5d8aa74eff2085545d918bc2bde1453c6fba5631b53e10a89459a18b4667f1 +size 770 diff --git a/game/characters/tonks/clothes/headgear/police/mask.webp b/game/characters/tonks/clothes/headgear/police/mask.webp new file mode 100644 index 00000000..55d352f4 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/police/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cffca2961c9a0f3f2c39c9e2d2b18a3360036227edaae1b2f61f06517655ecdf +size 5602 diff --git a/game/characters/tonks/clothes/headgear/police/outline.webp b/game/characters/tonks/clothes/headgear/police/outline.webp new file mode 100644 index 00000000..791bc054 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/police/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a66ec22ae18dc0e34cefb98443347f109777a81c1e708d57225109fbcdb66b44 +size 6208 diff --git a/game/characters/tonks/clothes/headgear/police/skin.webp b/game/characters/tonks/clothes/headgear/police/skin.webp new file mode 100644 index 00000000..87546c34 --- /dev/null +++ b/game/characters/tonks/clothes/headgear/police/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c9f0a8e8597935344b8996a3862052c9be463aa33283879d0d285bf4257f8e5 +size 1528 diff --git a/game/characters/tonks/clothes/makeup/elf_ears/0.webp b/game/characters/tonks/clothes/makeup/elf_ears/0.webp new file mode 100644 index 00000000..9357818b --- /dev/null +++ b/game/characters/tonks/clothes/makeup/elf_ears/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86be52bdb7547413cafb3ed175a806a798c65de98b40849e0b974c47d187de65 +size 34 diff --git a/game/characters/tonks/clothes/makeup/elf_ears/extra.webp b/game/characters/tonks/clothes/makeup/elf_ears/extra.webp new file mode 100644 index 00000000..ac822e9e --- /dev/null +++ b/game/characters/tonks/clothes/makeup/elf_ears/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6ac24d38601538c1399b1a2fab9c600af21f65aac08217b8a137225adb80d93 +size 3212 diff --git a/game/characters/tonks/clothes/makeup/elf_ears/outline.webp b/game/characters/tonks/clothes/makeup/elf_ears/outline.webp new file mode 100644 index 00000000..c65211ac --- /dev/null +++ b/game/characters/tonks/clothes/makeup/elf_ears/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eed127f1e214087c25bfb4e3a604402af877ed450e84a6d10938021710aaf85d +size 2268 diff --git a/game/characters/tonks/clothes/makeup/lipstick/angry.webp b/game/characters/tonks/clothes/makeup/lipstick/angry.webp new file mode 100644 index 00000000..4a4a98aa --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76045aafb1dad1b35ff35fb489ec08013533316454f025cfce6d922902f02628 +size 6750 diff --git a/game/characters/tonks/clothes/makeup/lipstick/annoyed.webp b/game/characters/tonks/clothes/makeup/lipstick/annoyed.webp new file mode 100644 index 00000000..6514be2a --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abceaaa3c88d4ca4fcfe0fa6a3587858c453a940b3e3c77e78c73c209a2d82cd +size 1706 diff --git a/game/characters/tonks/clothes/makeup/lipstick/base.webp b/game/characters/tonks/clothes/makeup/lipstick/base.webp new file mode 100644 index 00000000..fc442c3e --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25ffa9bddb7a752eda7dd7a5b14bf0d93398cb7e734a9cb65ac3b68e2ac8b4c2 +size 2092 diff --git a/game/characters/tonks/clothes/makeup/lipstick/clench.webp b/game/characters/tonks/clothes/makeup/lipstick/clench.webp new file mode 100644 index 00000000..b38009fb --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba42dc7f1f56d350b2f9f1b03fa9d9e9efee38b5bd42435976069ca8f30f13a1 +size 2270 diff --git a/game/characters/tonks/clothes/makeup/lipstick/crooked_smile.webp b/game/characters/tonks/clothes/makeup/lipstick/crooked_smile.webp new file mode 100644 index 00000000..d51875fa --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92f4761b9314e15717b8d2cf81622f87fa1be825701abb228393c2649e285099 +size 3876 diff --git a/game/characters/tonks/clothes/makeup/lipstick/disgust.webp b/game/characters/tonks/clothes/makeup/lipstick/disgust.webp new file mode 100644 index 00000000..dd6a5454 --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32d5c1b1c9111d4c3dc18a29fbf2a3e1691dfe7a3f9a278080770951614b541f +size 2086 diff --git a/game/characters/tonks/clothes/makeup/lipstick/grin.webp b/game/characters/tonks/clothes/makeup/lipstick/grin.webp new file mode 100644 index 00000000..baaf5470 --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:987f590045b5d05ce18781e9b312c459db690dea0886b1bfe001702421b4a1d8 +size 2416 diff --git a/game/characters/tonks/clothes/makeup/lipstick/horny.webp b/game/characters/tonks/clothes/makeup/lipstick/horny.webp new file mode 100644 index 00000000..d1e60a1e --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/horny.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0851290d4f8872714bd88c39d423d6d8cc03c36aab48af6b92bf7646d005a55 +size 2202 diff --git a/game/characters/tonks/clothes/makeup/lipstick/mad.webp b/game/characters/tonks/clothes/makeup/lipstick/mad.webp new file mode 100644 index 00000000..cf17a070 --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eaa84ffde9d0f4ff6465b8a1d95f90b5c47b543205db8f9a91d03a4cca33b3b9 +size 2186 diff --git a/game/characters/tonks/clothes/makeup/lipstick/normal.webp b/game/characters/tonks/clothes/makeup/lipstick/normal.webp new file mode 100644 index 00000000..c026ef01 --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:788b78aa4814444d965c3fd362749fd130ff5767755c06e3489b49a10b0fc8fe +size 1968 diff --git a/game/characters/tonks/clothes/makeup/lipstick/open.webp b/game/characters/tonks/clothes/makeup/lipstick/open.webp new file mode 100644 index 00000000..3bcd1a6c --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d031f7abbbe09f1f03e5f0c9f20e6d5479c00f18b1dd20bca3859227287f1439 +size 2120 diff --git a/game/characters/tonks/clothes/makeup/lipstick/open_wide.webp b/game/characters/tonks/clothes/makeup/lipstick/open_wide.webp new file mode 100644 index 00000000..50bf7549 --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/open_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10d02894ca155397915c17d6757a5624629c6d7d7a171a15a882e534ef82b8ad +size 2446 diff --git a/game/characters/tonks/clothes/makeup/lipstick/open_wide_tongue.webp b/game/characters/tonks/clothes/makeup/lipstick/open_wide_tongue.webp new file mode 100644 index 00000000..bcceec06 --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65d55f7f642ef74b99f50173444fc14a732df8476ddba15e3449ed51e8068519 +size 1954 diff --git a/game/characters/tonks/clothes/makeup/lipstick/open_wide_tongue2.webp b/game/characters/tonks/clothes/makeup/lipstick/open_wide_tongue2.webp new file mode 100644 index 00000000..4e582b2a --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/open_wide_tongue2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6eba1d2692149bf16ca0bb98bf29fccac5fcb1816d3e13edf58c7c5d6c6217c5 +size 1950 diff --git a/game/characters/tonks/clothes/makeup/lipstick/open_wide_tongue2_cum.webp b/game/characters/tonks/clothes/makeup/lipstick/open_wide_tongue2_cum.webp new file mode 100644 index 00000000..f9326be7 --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/open_wide_tongue2_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea5c2490761f66f21221a1e3e6b399ac9d4586246626f412c6f61f627d17330c +size 1928 diff --git a/game/characters/tonks/clothes/makeup/lipstick/open_wide_tongue_cum.webp b/game/characters/tonks/clothes/makeup/lipstick/open_wide_tongue_cum.webp new file mode 100644 index 00000000..c0842b34 --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/open_wide_tongue_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ebebd8236902e7a84e1066ff5f3095e7a8f86084353b797388bf6d2c4a697f2 +size 1932 diff --git a/game/characters/tonks/clothes/makeup/lipstick/scream.webp b/game/characters/tonks/clothes/makeup/lipstick/scream.webp new file mode 100644 index 00000000..afa1ad7f --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b6a27e55e86876efb23b652193d35ebe65d4ffda0519dc665970f5f59a3b238 +size 2396 diff --git a/game/characters/tonks/clothes/makeup/lipstick/silly.webp b/game/characters/tonks/clothes/makeup/lipstick/silly.webp new file mode 100644 index 00000000..2a58a9f6 --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/silly.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba0d9898198f24c6a3c0f6d69af6e7471cb3fd65a12137111d876f12a8c0ccc7 +size 2308 diff --git a/game/characters/tonks/clothes/makeup/lipstick/soft.webp b/game/characters/tonks/clothes/makeup/lipstick/soft.webp new file mode 100644 index 00000000..4e429cf9 --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4a44302042ff3e9dca941aadefb58130ff8588d4b73fe100c844bbbe2bf0d0b +size 2046 diff --git a/game/characters/tonks/clothes/makeup/lipstick/upset.webp b/game/characters/tonks/clothes/makeup/lipstick/upset.webp new file mode 100644 index 00000000..37ba598b --- /dev/null +++ b/game/characters/tonks/clothes/makeup/lipstick/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48349675140c5bca9df29ac0d31cd1490906b9a95350ab7331154f0799ce32c0 +size 1994 diff --git a/game/characters/tonks/clothes/neckwear/bell_1/0.webp b/game/characters/tonks/clothes/neckwear/bell_1/0.webp new file mode 100644 index 00000000..cf2fe092 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/bell_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:caf327ae62ee55d8ec33041f3bb0291adc48dabcecf5f2d3c79ea5f803de4fd5 +size 1596 diff --git a/game/characters/tonks/clothes/neckwear/bell_1/1.webp b/game/characters/tonks/clothes/neckwear/bell_1/1.webp new file mode 100644 index 00000000..2f550d95 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/bell_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b8a78969744e02618efa2a7367c718b6b72a3e1910cf56cfeeb5ad26b01496e +size 1830 diff --git a/game/characters/tonks/clothes/neckwear/bell_1/extra.webp b/game/characters/tonks/clothes/neckwear/bell_1/extra.webp new file mode 100644 index 00000000..fa191c73 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/bell_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a60ed9754473b274e9a3f778c37685cda6c8387f4eedc21b37b97947db366cbc +size 1954 diff --git a/game/characters/tonks/clothes/neckwear/bell_1/outline.webp b/game/characters/tonks/clothes/neckwear/bell_1/outline.webp new file mode 100644 index 00000000..26500d66 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/bell_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:187aabd180b041db44c71e8b101fb37ade2dcc5e8e6801fdf6c3154e16e53d62 +size 3036 diff --git a/game/characters/tonks/clothes/neckwear/bunny_bowtie_1/0.webp b/game/characters/tonks/clothes/neckwear/bunny_bowtie_1/0.webp new file mode 100644 index 00000000..32608496 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/bunny_bowtie_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7731c3467965b25f4d79b8e8c9bb23aa734ae7719d58f1633beaa40f01265d1 +size 2676 diff --git a/game/characters/tonks/clothes/neckwear/bunny_bowtie_1/1.webp b/game/characters/tonks/clothes/neckwear/bunny_bowtie_1/1.webp new file mode 100644 index 00000000..926a2aa1 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/bunny_bowtie_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea7f0c6a7050ac4aa0da9a973652085c579ce881b987e2165597383788c284b1 +size 2706 diff --git a/game/characters/tonks/clothes/neckwear/bunny_bowtie_1/outline.webp b/game/characters/tonks/clothes/neckwear/bunny_bowtie_1/outline.webp new file mode 100644 index 00000000..a308b787 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/bunny_bowtie_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00f238e1aa0b1af47a07af33a4f0fcc44273915d2ab84dc2ea15af69e9910826 +size 4064 diff --git a/game/characters/tonks/clothes/neckwear/bunny_bowtie_1/skin.webp b/game/characters/tonks/clothes/neckwear/bunny_bowtie_1/skin.webp new file mode 100644 index 00000000..7b4e23b6 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/bunny_bowtie_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38dd9c5a9b22444ad55e98f9f9e6daddc6b863ab8bfd190378bde70373152c7e +size 2752 diff --git a/game/characters/tonks/clothes/neckwear/choker_1/0.webp b/game/characters/tonks/clothes/neckwear/choker_1/0.webp new file mode 100644 index 00000000..cf2fe092 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/choker_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:caf327ae62ee55d8ec33041f3bb0291adc48dabcecf5f2d3c79ea5f803de4fd5 +size 1596 diff --git a/game/characters/tonks/clothes/neckwear/choker_1/extra.webp b/game/characters/tonks/clothes/neckwear/choker_1/extra.webp new file mode 100644 index 00000000..63325297 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/choker_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:474c635a907b754fc755a19c725b21d8ae026ecdb73b7f700c929efea0891304 +size 878 diff --git a/game/characters/tonks/clothes/neckwear/choker_1/outline.webp b/game/characters/tonks/clothes/neckwear/choker_1/outline.webp new file mode 100644 index 00000000..bd8e361f --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/choker_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ffbd1a9d17751baa815a697ff69e38b9080f4e24810ef6b933decbc2ed79785 +size 1524 diff --git a/game/characters/tonks/clothes/neckwear/choker_beads/0.webp b/game/characters/tonks/clothes/neckwear/choker_beads/0.webp new file mode 100644 index 00000000..e1c04a83 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/choker_beads/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48f934b826cd27f860f08a107578c6330c964f9a7ebcaa65decec267523698f5 +size 948 diff --git a/game/characters/tonks/clothes/neckwear/choker_beads/1.webp b/game/characters/tonks/clothes/neckwear/choker_beads/1.webp new file mode 100644 index 00000000..a792444d --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/choker_beads/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f93ac1f179897f80bf91d0909fc674860e40c4c176a3cb50cc58b0a9ce004b13 +size 866 diff --git a/game/characters/tonks/clothes/neckwear/choker_beads/extra.webp b/game/characters/tonks/clothes/neckwear/choker_beads/extra.webp new file mode 100644 index 00000000..baa104c3 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/choker_beads/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08307f159a0d9337af35d839bf37d29a09094693ffb79cf16b0cccd2af7f17c4 +size 876 diff --git a/game/characters/tonks/clothes/neckwear/choker_beads/outline.webp b/game/characters/tonks/clothes/neckwear/choker_beads/outline.webp new file mode 100644 index 00000000..5897938e --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/choker_beads/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f660864a9ef15d18fbc8770202e95b4189cf09549a78c9b8b9321f994fb7b96a +size 1098 diff --git a/game/characters/tonks/clothes/neckwear/pearls_1/0.webp b/game/characters/tonks/clothes/neckwear/pearls_1/0.webp new file mode 100644 index 00000000..8483ff82 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/pearls_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:288df6f54f9e1946afd52749df60bc3eb227cfefef0548923cdefa0466b5c171 +size 2536 diff --git a/game/characters/tonks/clothes/neckwear/pearls_1/extra.webp b/game/characters/tonks/clothes/neckwear/pearls_1/extra.webp new file mode 100644 index 00000000..fa55a090 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/pearls_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bbb5b04ec6795fd9ed1b31d1923155f5a2b6f5339a5a9aecc51f6ca5d898483 +size 2200 diff --git a/game/characters/tonks/clothes/neckwear/pearls_1/outline.webp b/game/characters/tonks/clothes/neckwear/pearls_1/outline.webp new file mode 100644 index 00000000..8bc05e32 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/pearls_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9445a15c9ef8f2d117235939ce40402db4d6db2ab9c093f92479856b6d55b23 +size 2056 diff --git a/game/characters/tonks/clothes/neckwear/pearls_2/0.webp b/game/characters/tonks/clothes/neckwear/pearls_2/0.webp new file mode 100644 index 00000000..f5f077af --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/pearls_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f066a27669a902e1c8f78783a0df865175866c3be9dceedde201d77c288785b5 +size 3886 diff --git a/game/characters/tonks/clothes/neckwear/pearls_2/extra.webp b/game/characters/tonks/clothes/neckwear/pearls_2/extra.webp new file mode 100644 index 00000000..7f9d85eb --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/pearls_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5df58a56b505550b2d88cba64e58c1670d1c3eb7abf8e0f44bc9b2dadb3d9671 +size 1244 diff --git a/game/characters/tonks/clothes/neckwear/pearls_2/outline.webp b/game/characters/tonks/clothes/neckwear/pearls_2/outline.webp new file mode 100644 index 00000000..7f95be40 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/pearls_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:436b61af4a892e7eb3b56e0957f3b6ac995289af80fd143fa13ce456a620c274 +size 3332 diff --git a/game/characters/tonks/clothes/neckwear/succubus_colar/0.webp b/game/characters/tonks/clothes/neckwear/succubus_colar/0.webp new file mode 100644 index 00000000..9c4bf6cf --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/succubus_colar/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8c6caf082ba0007b38a152287f90d48f2bb62690420af9e7be6050e8dd1576b +size 1584 diff --git a/game/characters/tonks/clothes/neckwear/succubus_colar/outline.webp b/game/characters/tonks/clothes/neckwear/succubus_colar/outline.webp new file mode 100644 index 00000000..3c289d01 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/succubus_colar/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c52a0a145ee54c16e8e6b61353534dee35159a5ad8f33c458fca6edf17ddd60e +size 3424 diff --git a/game/characters/tonks/clothes/neckwear/whistle/0.webp b/game/characters/tonks/clothes/neckwear/whistle/0.webp new file mode 100644 index 00000000..84ac9b7b --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/whistle/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ca0c574f974d9638fe6e166871fe01aee49bd998d57744ec7fd49cedd27d619 +size 3402 diff --git a/game/characters/tonks/clothes/neckwear/whistle/1.webp b/game/characters/tonks/clothes/neckwear/whistle/1.webp new file mode 100644 index 00000000..41f1dcec --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/whistle/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0748face1ee25c792e060952d745d63c6944d8a68e1b73600611283fb44d7177 +size 1160 diff --git a/game/characters/tonks/clothes/neckwear/whistle/outline.webp b/game/characters/tonks/clothes/neckwear/whistle/outline.webp new file mode 100644 index 00000000..1d5d0a82 --- /dev/null +++ b/game/characters/tonks/clothes/neckwear/whistle/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec758fc3ee6c7d8c79562d9f8d45c0e1d044ba12b64c6f19a8140c849f6e8d94 +size 4256 diff --git a/game/characters/tonks/clothes/panties/base/0.webp b/game/characters/tonks/clothes/panties/base/0.webp new file mode 100644 index 00000000..8a4c6a46 --- /dev/null +++ b/game/characters/tonks/clothes/panties/base/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02c3fe7e99f1dd73bf8b23d550788e5e0a958a1c177792e7e6c2feebc0c8b735 +size 3150 diff --git a/game/characters/tonks/clothes/panties/base/1.webp b/game/characters/tonks/clothes/panties/base/1.webp new file mode 100644 index 00000000..4b7eacb7 --- /dev/null +++ b/game/characters/tonks/clothes/panties/base/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d764c30e4472470b37c7e914608c16c5c1b91a416e203ed61f0327f840b917d +size 854 diff --git a/game/characters/tonks/clothes/panties/base/outline.webp b/game/characters/tonks/clothes/panties/base/outline.webp new file mode 100644 index 00000000..9a76f098 --- /dev/null +++ b/game/characters/tonks/clothes/panties/base/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6454ed249ba3d630d3b56de3e3117e4d1970378044c3b32bac4c577bb6aa4b3 +size 4418 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1/0.webp b/game/characters/tonks/clothes/panties/bikini_panties_1/0.webp new file mode 100644 index 00000000..211ba8b6 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc69223aec6f989da1ad36b5b5077dc4fffbdf9a44bb349e8ee9e7757c861d19 +size 4014 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1/1.webp b/game/characters/tonks/clothes/panties/bikini_panties_1/1.webp new file mode 100644 index 00000000..6703117e --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:255a556bd57a1d83ee09c00e678314af11e7a18cdc5e107286d8b560db7c2f94 +size 1266 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1/outline.webp b/game/characters/tonks/clothes/panties/bikini_panties_1/outline.webp new file mode 100644 index 00000000..4592bdc1 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c65b18aadd6207bfb5b84a1c478964fd5476c22f2b89b2bad7be94544667387 +size 4314 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1/skin.webp b/game/characters/tonks/clothes/panties/bikini_panties_1/skin.webp new file mode 100644 index 00000000..a0c292a2 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aadcb4d989536f6e7d183d9fe246d7940dc33e6c66d3b3686f74be1fc2e51401 +size 2090 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1_UK/0.webp b/game/characters/tonks/clothes/panties/bikini_panties_1_UK/0.webp new file mode 100644 index 00000000..211ba8b6 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1_UK/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc69223aec6f989da1ad36b5b5077dc4fffbdf9a44bb349e8ee9e7757c861d19 +size 4014 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1_UK/1.webp b/game/characters/tonks/clothes/panties/bikini_panties_1_UK/1.webp new file mode 100644 index 00000000..091827db --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1_UK/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9057791680ad9440e063676c8cd4a538f93fbad1b9c4411bf6209f8b90d6d04d +size 2124 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1_UK/2.webp b/game/characters/tonks/clothes/panties/bikini_panties_1_UK/2.webp new file mode 100644 index 00000000..3c8da4c1 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1_UK/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45ab0c99cc4afbd24330b34964b5fde6c54063c776c045095471828bf99810e0 +size 1894 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1_UK/outline.webp b/game/characters/tonks/clothes/panties/bikini_panties_1_UK/outline.webp new file mode 100644 index 00000000..4592bdc1 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1_UK/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c65b18aadd6207bfb5b84a1c478964fd5476c22f2b89b2bad7be94544667387 +size 4314 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1_UK/skin.webp b/game/characters/tonks/clothes/panties/bikini_panties_1_UK/skin.webp new file mode 100644 index 00000000..a0c292a2 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1_UK/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aadcb4d989536f6e7d183d9fe246d7940dc33e6c66d3b3686f74be1fc2e51401 +size 2090 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1_jock/0.webp b/game/characters/tonks/clothes/panties/bikini_panties_1_jock/0.webp new file mode 100644 index 00000000..c59ed029 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1_jock/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbf10a9697f40e0d81c2059d70da15181785a9bb003f2581b937f2f8b7d40648 +size 5388 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1_jock/outline.webp b/game/characters/tonks/clothes/panties/bikini_panties_1_jock/outline.webp new file mode 100644 index 00000000..4592bdc1 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1_jock/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c65b18aadd6207bfb5b84a1c478964fd5476c22f2b89b2bad7be94544667387 +size 4314 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1_jock/skin.webp b/game/characters/tonks/clothes/panties/bikini_panties_1_jock/skin.webp new file mode 100644 index 00000000..a0c292a2 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1_jock/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aadcb4d989536f6e7d183d9fe246d7940dc33e6c66d3b3686f74be1fc2e51401 +size 2090 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1_striped/0.webp b/game/characters/tonks/clothes/panties/bikini_panties_1_striped/0.webp new file mode 100644 index 00000000..211ba8b6 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1_striped/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc69223aec6f989da1ad36b5b5077dc4fffbdf9a44bb349e8ee9e7757c861d19 +size 4014 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1_striped/1.webp b/game/characters/tonks/clothes/panties/bikini_panties_1_striped/1.webp new file mode 100644 index 00000000..810c6eb0 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1_striped/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af001fd57423f0e1db507d2a3930ea668f4954b884e82154cb63433292976707 +size 3730 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1_striped/outline.webp b/game/characters/tonks/clothes/panties/bikini_panties_1_striped/outline.webp new file mode 100644 index 00000000..4592bdc1 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1_striped/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c65b18aadd6207bfb5b84a1c478964fd5476c22f2b89b2bad7be94544667387 +size 4314 diff --git a/game/characters/tonks/clothes/panties/bikini_panties_1_striped/skin.webp b/game/characters/tonks/clothes/panties/bikini_panties_1_striped/skin.webp new file mode 100644 index 00000000..a0c292a2 --- /dev/null +++ b/game/characters/tonks/clothes/panties/bikini_panties_1_striped/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aadcb4d989536f6e7d183d9fe246d7940dc33e6c66d3b3686f74be1fc2e51401 +size 2090 diff --git a/game/characters/tonks/clothes/panties/ribbon/0.webp b/game/characters/tonks/clothes/panties/ribbon/0.webp new file mode 100644 index 00000000..0e5070da --- /dev/null +++ b/game/characters/tonks/clothes/panties/ribbon/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd959c2f0a8f5d4969fb073d1b277ea04da1708fdf9476d63157951ea0007205 +size 8740 diff --git a/game/characters/tonks/clothes/panties/ribbon/extra.webp b/game/characters/tonks/clothes/panties/ribbon/extra.webp new file mode 100644 index 00000000..fe8a9005 --- /dev/null +++ b/game/characters/tonks/clothes/panties/ribbon/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47e858549b87b089a751d2c29cb08670077579eff9e34994bda0111eb61e4a7a +size 3782 diff --git a/game/characters/tonks/clothes/panties/ribbon/outline.webp b/game/characters/tonks/clothes/panties/ribbon/outline.webp new file mode 100644 index 00000000..22f34c50 --- /dev/null +++ b/game/characters/tonks/clothes/panties/ribbon/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75e324a580dbe100ef9571705b5e26f310a14827240fb49e8ea2ce1dc3481231 +size 8376 diff --git a/game/characters/tonks/clothes/panties/ribbon/skin.webp b/game/characters/tonks/clothes/panties/ribbon/skin.webp new file mode 100644 index 00000000..f91bafac --- /dev/null +++ b/game/characters/tonks/clothes/panties/ribbon/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d87266485c10187280e183e678240eff55178d5d234787481710eb4631c94c49 +size 2844 diff --git a/game/characters/tonks/clothes/panties/succubus_panties/0.webp b/game/characters/tonks/clothes/panties/succubus_panties/0.webp new file mode 100644 index 00000000..ba26e6e6 --- /dev/null +++ b/game/characters/tonks/clothes/panties/succubus_panties/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb115c864bf74ea102f3f15511cc41c3c0a35b882469fed8a995f498fbac6657 +size 5074 diff --git a/game/characters/tonks/clothes/panties/succubus_panties/1.webp b/game/characters/tonks/clothes/panties/succubus_panties/1.webp new file mode 100644 index 00000000..53073a32 --- /dev/null +++ b/game/characters/tonks/clothes/panties/succubus_panties/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0b6d80667839776c1441565cbbc008a1251d481f58ee20f482cb9cd71185e70 +size 1228 diff --git a/game/characters/tonks/clothes/panties/succubus_panties/outline.webp b/game/characters/tonks/clothes/panties/succubus_panties/outline.webp new file mode 100644 index 00000000..727ba88d --- /dev/null +++ b/game/characters/tonks/clothes/panties/succubus_panties/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:300e1499bff622eb7177b765881d11a2c25d0b303cdd6852ee1322c74f37477b +size 4800 diff --git a/game/characters/tonks/clothes/piercing/belly_dick/0.webp b/game/characters/tonks/clothes/piercing/belly_dick/0.webp new file mode 100644 index 00000000..5ee6d0ef --- /dev/null +++ b/game/characters/tonks/clothes/piercing/belly_dick/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5905844fb1ef542ceb92d3f41d4b9a50c90cb60d643c63c2923d47edc03efe3e +size 890 diff --git a/game/characters/tonks/clothes/piercing/belly_dick/extra.webp b/game/characters/tonks/clothes/piercing/belly_dick/extra.webp new file mode 100644 index 00000000..893afbe8 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/belly_dick/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b83858af378fc83ff52c8cf9df552a1df9f75d03c1ec4ad6ea7b8d6df53a21a +size 804 diff --git a/game/characters/tonks/clothes/piercing/belly_dick/outline.webp b/game/characters/tonks/clothes/piercing/belly_dick/outline.webp new file mode 100644 index 00000000..6f955c76 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/belly_dick/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e4a9a8555b7c0c3b28da0a846edbc0bf5143031ef22a7682c43101ebc9ed0e2 +size 998 diff --git a/game/characters/tonks/clothes/piercing/belly_heart/0.webp b/game/characters/tonks/clothes/piercing/belly_heart/0.webp new file mode 100644 index 00000000..9303800b --- /dev/null +++ b/game/characters/tonks/clothes/piercing/belly_heart/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49e30fc36c7d8e91f907dcce0163abc579acef8f22787dc28c87a37674bdef28 +size 802 diff --git a/game/characters/tonks/clothes/piercing/belly_heart/extra.webp b/game/characters/tonks/clothes/piercing/belly_heart/extra.webp new file mode 100644 index 00000000..aced8e4d --- /dev/null +++ b/game/characters/tonks/clothes/piercing/belly_heart/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b266ddb420a34ca19035258f2a18357a5ec64fb67d1a29a2d90358a44b17d48f +size 766 diff --git a/game/characters/tonks/clothes/piercing/belly_heart/outline.webp b/game/characters/tonks/clothes/piercing/belly_heart/outline.webp new file mode 100644 index 00000000..da4a67bd --- /dev/null +++ b/game/characters/tonks/clothes/piercing/belly_heart/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44936380f6b5f72a30624efa68b01653d2cc0709a58858ce87617b708ae90e58 +size 870 diff --git a/game/characters/tonks/clothes/piercing/belly_stud/0.webp b/game/characters/tonks/clothes/piercing/belly_stud/0.webp new file mode 100644 index 00000000..23722e52 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/belly_stud/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d610373f45ba62b373a01bdb3620ab6440f77a9ff75ee190751bb5adafb7bd7e +size 620 diff --git a/game/characters/tonks/clothes/piercing/belly_stud/extra.webp b/game/characters/tonks/clothes/piercing/belly_stud/extra.webp new file mode 100644 index 00000000..6bff51bf --- /dev/null +++ b/game/characters/tonks/clothes/piercing/belly_stud/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4662ed7476db99ef05f607c7e32785d42de0f754bfae39670bde708a75752ea +size 570 diff --git a/game/characters/tonks/clothes/piercing/belly_stud/outline.webp b/game/characters/tonks/clothes/piercing/belly_stud/outline.webp new file mode 100644 index 00000000..2ed3c557 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/belly_stud/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac70efa70741984d9107cc8757c6aae762c49b6c7cfc5223edbb1d98145ad2b4 +size 642 diff --git a/game/characters/tonks/clothes/piercing/clit_stud/0.webp b/game/characters/tonks/clothes/piercing/clit_stud/0.webp new file mode 100644 index 00000000..7fda872d --- /dev/null +++ b/game/characters/tonks/clothes/piercing/clit_stud/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42d1a1f6ad734bbb9effe5355f3d6bafa190a419c31de0ac863173eaeffbd7db +size 576 diff --git a/game/characters/tonks/clothes/piercing/clit_stud/extra.webp b/game/characters/tonks/clothes/piercing/clit_stud/extra.webp new file mode 100644 index 00000000..f155a557 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/clit_stud/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e80682e33a094e071b61ff0c7fd8e4917ccbf3e7b0e7a6c592f344a971ef7572 +size 544 diff --git a/game/characters/tonks/clothes/piercing/clit_stud/outline.webp b/game/characters/tonks/clothes/piercing/clit_stud/outline.webp new file mode 100644 index 00000000..0419a94b --- /dev/null +++ b/game/characters/tonks/clothes/piercing/clit_stud/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33e283f258ac49ab9e5f699497bce8018d503b67187e7eb0c79c1fe667da9e2d +size 614 diff --git a/game/characters/tonks/clothes/piercing/nipple_bells/0.webp b/game/characters/tonks/clothes/piercing/nipple_bells/0.webp new file mode 100644 index 00000000..c6c33b73 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_bells/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a30bb04c9f8064848be371399904bb6f5e44999e0357c83f15246ceec5d0a48 +size 1742 diff --git a/game/characters/tonks/clothes/piercing/nipple_bells/extra.webp b/game/characters/tonks/clothes/piercing/nipple_bells/extra.webp new file mode 100644 index 00000000..ebaae737 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_bells/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb3bc997e9749a128be58227c11a3e1b7ced98c231ea5b373b30604601854d7d +size 634 diff --git a/game/characters/tonks/clothes/piercing/nipple_bells/outline.webp b/game/characters/tonks/clothes/piercing/nipple_bells/outline.webp new file mode 100644 index 00000000..3f22d510 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_bells/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:875856095f807b13de4d71a9f79d767343b7deeea645c7e3d7a6fbb149cd25e6 +size 1690 diff --git a/game/characters/tonks/clothes/piercing/nipple_rings/0.webp b/game/characters/tonks/clothes/piercing/nipple_rings/0.webp new file mode 100644 index 00000000..cba958af --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_rings/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:819ad91b8d78a10a87afd850bca02dbcf941c234187e7f3f56dc0bdcf6439439 +size 922 diff --git a/game/characters/tonks/clothes/piercing/nipple_rings/extra.webp b/game/characters/tonks/clothes/piercing/nipple_rings/extra.webp new file mode 100644 index 00000000..cce254e9 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_rings/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f68205b24c8ec3e9a51c7b2f7e59b85b8b7032d030138df9ecb7fe834b289a8e +size 804 diff --git a/game/characters/tonks/clothes/piercing/nipple_rings/outline.webp b/game/characters/tonks/clothes/piercing/nipple_rings/outline.webp new file mode 100644 index 00000000..fd686114 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_rings/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d1505fa650af64c7165f0807fb1c881a551a3d844d4197b23f4268ec466af3c +size 1062 diff --git a/game/characters/tonks/clothes/piercing/nipple_rings2/0.webp b/game/characters/tonks/clothes/piercing/nipple_rings2/0.webp new file mode 100644 index 00000000..de5c35bb --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_rings2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a1c57959287e5e8fc5466be8caba397ee40a77d19775db29ef1d762f841bf69 +size 938 diff --git a/game/characters/tonks/clothes/piercing/nipple_rings2/extra.webp b/game/characters/tonks/clothes/piercing/nipple_rings2/extra.webp new file mode 100644 index 00000000..824c6fba --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_rings2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bdca37daf15ddd4f21cd8074d8234ebee390ab438ec0bdb9ef4c30adffa86ee +size 812 diff --git a/game/characters/tonks/clothes/piercing/nipple_rings2/outline.webp b/game/characters/tonks/clothes/piercing/nipple_rings2/outline.webp new file mode 100644 index 00000000..3fa5c4ae --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_rings2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a943e84bb998928f27ab7532a0ebb7e9b3882dd2db57cf815eca5428c800c08 +size 1078 diff --git a/game/characters/tonks/clothes/piercing/nipple_rings3/0.webp b/game/characters/tonks/clothes/piercing/nipple_rings3/0.webp new file mode 100644 index 00000000..826a276e --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_rings3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8919f2b3e9d8c6bcf7a585d885bf9647c3c4356d726e2c4364980d01a5d2d0e1 +size 1060 diff --git a/game/characters/tonks/clothes/piercing/nipple_rings3/extra.webp b/game/characters/tonks/clothes/piercing/nipple_rings3/extra.webp new file mode 100644 index 00000000..1700852c --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_rings3/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42c9fbf5dd6c64a3de5793eb2d93baa34d215f80588805a470fc9cba85774243 +size 678 diff --git a/game/characters/tonks/clothes/piercing/nipple_rings3/outline.webp b/game/characters/tonks/clothes/piercing/nipple_rings3/outline.webp new file mode 100644 index 00000000..98152310 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_rings3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0dfcd6f721a01afc3471fc1600bc92febf138c13c70b57e399b7b6f066ba4d12 +size 972 diff --git a/game/characters/tonks/clothes/piercing/nipple_stud/0.webp b/game/characters/tonks/clothes/piercing/nipple_stud/0.webp new file mode 100644 index 00000000..33f165b8 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_stud/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03b01ae74d1b4a76c956b00a82b0ce775b462e1f60ee290a20918244b09b15f6 +size 750 diff --git a/game/characters/tonks/clothes/piercing/nipple_stud/extra.webp b/game/characters/tonks/clothes/piercing/nipple_stud/extra.webp new file mode 100644 index 00000000..c00dc280 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_stud/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1d42ee663d07a5141e2c833de7f32a63ae50fa8b10b6a8d0538aa689b30cde7 +size 676 diff --git a/game/characters/tonks/clothes/piercing/nipple_stud/outline.webp b/game/characters/tonks/clothes/piercing/nipple_stud/outline.webp new file mode 100644 index 00000000..b409ea41 --- /dev/null +++ b/game/characters/tonks/clothes/piercing/nipple_stud/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae8072cb5f550a06e9154fa448061b377d90bc116485f9373b4ffc250af3667a +size 866 diff --git a/game/characters/tonks/clothes/pubes/arrow/0.webp b/game/characters/tonks/clothes/pubes/arrow/0.webp new file mode 100644 index 00000000..1bf4e6d7 --- /dev/null +++ b/game/characters/tonks/clothes/pubes/arrow/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb9310b77225a6eeb531fb7dbd106ef4ccbfcdd62054cb5d8606f497b8144faf +size 2660 diff --git a/game/characters/tonks/clothes/pubes/arrow/outline.webp b/game/characters/tonks/clothes/pubes/arrow/outline.webp new file mode 100644 index 00000000..e5a8bb45 --- /dev/null +++ b/game/characters/tonks/clothes/pubes/arrow/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bd589464d8dc5b84755d6ffcc28e77bbd3067d4a58af4e9e1e9625f3953bb43 +size 1940 diff --git a/game/characters/tonks/clothes/pubes/beaver/0.webp b/game/characters/tonks/clothes/pubes/beaver/0.webp new file mode 100644 index 00000000..3ff18623 --- /dev/null +++ b/game/characters/tonks/clothes/pubes/beaver/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f748186cbf3b032c2e9d41166cb70997086b014564ae2b7cc55cdc267e606eb7 +size 3070 diff --git a/game/characters/tonks/clothes/pubes/beaver/outline.webp b/game/characters/tonks/clothes/pubes/beaver/outline.webp new file mode 100644 index 00000000..342fccff --- /dev/null +++ b/game/characters/tonks/clothes/pubes/beaver/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b094d69db8ee9f432a6417a1e1d3f2c9674ddbe269e4096b9d6b3dd3bc55d73d +size 4098 diff --git a/game/characters/tonks/clothes/pubes/stuble/0.webp b/game/characters/tonks/clothes/pubes/stuble/0.webp new file mode 100644 index 00000000..57d07c56 --- /dev/null +++ b/game/characters/tonks/clothes/pubes/stuble/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:792ad03054794161d1498aa77a9a4ca2e6f1de0aeb7b87ceda54e55497cacafa +size 1960 diff --git a/game/characters/tonks/clothes/pubes/unshaved/0.webp b/game/characters/tonks/clothes/pubes/unshaved/0.webp new file mode 100644 index 00000000..82264125 --- /dev/null +++ b/game/characters/tonks/clothes/pubes/unshaved/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:871f3355ef78d2ccf03c4503d837ddc1397efaa40f999abcc0bfd67f39bbf538 +size 3286 diff --git a/game/characters/tonks/clothes/robe/auror_coat/0.webp b/game/characters/tonks/clothes/robe/auror_coat/0.webp new file mode 100644 index 00000000..0b9c130f --- /dev/null +++ b/game/characters/tonks/clothes/robe/auror_coat/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea52d40d3a2c5efd3dc6d3648f5c898f958316dfe2fbe7a81c07fa73072d8831 +size 47350 diff --git a/game/characters/tonks/clothes/robe/auror_coat/0_back.webp b/game/characters/tonks/clothes/robe/auror_coat/0_back.webp new file mode 100644 index 00000000..2a3e8f41 --- /dev/null +++ b/game/characters/tonks/clothes/robe/auror_coat/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99952353555d7d19b3afa1783647751ab9b6d1685073988839ecb89684b98573 +size 5368 diff --git a/game/characters/tonks/clothes/robe/auror_coat/0_front.webp b/game/characters/tonks/clothes/robe/auror_coat/0_front.webp new file mode 100644 index 00000000..caa632dd --- /dev/null +++ b/game/characters/tonks/clothes/robe/auror_coat/0_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfa8a64387b5f55db220e9596ba7385a26a00f1ff35f3395afdca2f70560ff47 +size 3826 diff --git a/game/characters/tonks/clothes/robe/auror_coat/1.webp b/game/characters/tonks/clothes/robe/auror_coat/1.webp new file mode 100644 index 00000000..632d1cf3 --- /dev/null +++ b/game/characters/tonks/clothes/robe/auror_coat/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:746d0dd54407c02712a1bf5b5969ddc9366cf9b61ef643f9e3a285bbbd514d17 +size 5496 diff --git a/game/characters/tonks/clothes/robe/auror_coat/outline.webp b/game/characters/tonks/clothes/robe/auror_coat/outline.webp new file mode 100644 index 00000000..7fc940f1 --- /dev/null +++ b/game/characters/tonks/clothes/robe/auror_coat/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d8ce85129eb7348748c1eb5f197712b96b20b1f48a253aaec5e00facaab27b1 +size 54172 diff --git a/game/characters/tonks/clothes/robe/auror_coat/outline_front.webp b/game/characters/tonks/clothes/robe/auror_coat/outline_front.webp new file mode 100644 index 00000000..6969c113 --- /dev/null +++ b/game/characters/tonks/clothes/robe/auror_coat/outline_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce453d4fddc6f45603f7f6b2fcac0e150ab3acfca754140c27e7f6708b8fd60f +size 2778 diff --git a/game/characters/tonks/clothes/robe/dressing_gown/0.webp b/game/characters/tonks/clothes/robe/dressing_gown/0.webp new file mode 100644 index 00000000..d4f275c0 --- /dev/null +++ b/game/characters/tonks/clothes/robe/dressing_gown/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52fc41eb47bdd043171de00b5aa4c51bbb538fa470953f3db8c0cced0480654b +size 23264 diff --git a/game/characters/tonks/clothes/robe/dressing_gown/1.webp b/game/characters/tonks/clothes/robe/dressing_gown/1.webp new file mode 100644 index 00000000..15c81c4a --- /dev/null +++ b/game/characters/tonks/clothes/robe/dressing_gown/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6329757e066b7871b98fc4718fffe271cb37c1d20cc0b4a811df66a6c3d02197 +size 51620 diff --git a/game/characters/tonks/clothes/robe/dressing_gown/outline.webp b/game/characters/tonks/clothes/robe/dressing_gown/outline.webp new file mode 100644 index 00000000..4424eb6d --- /dev/null +++ b/game/characters/tonks/clothes/robe/dressing_gown/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa17c38b1accb646d229337e23d3c20d3d80d1ec2dbde08077d171786420d785 +size 37190 diff --git a/game/characters/tonks/clothes/robe/dressing_gown/skin.webp b/game/characters/tonks/clothes/robe/dressing_gown/skin.webp new file mode 100644 index 00000000..1ac5c917 --- /dev/null +++ b/game/characters/tonks/clothes/robe/dressing_gown/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8686e120a7e54e9c2d865f288d4645ebcf1241cd6db0276f4a169b2842c502c9 +size 8348 diff --git a/game/characters/tonks/clothes/robe/silk_robe/0.webp b/game/characters/tonks/clothes/robe/silk_robe/0.webp new file mode 100644 index 00000000..21cf5280 --- /dev/null +++ b/game/characters/tonks/clothes/robe/silk_robe/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08b38ae267b8b43ee9d35261f927f2a77e036173bd7e9eeb243a87514900ed5c +size 29442 diff --git a/game/characters/tonks/clothes/robe/silk_robe/0_back.webp b/game/characters/tonks/clothes/robe/silk_robe/0_back.webp new file mode 100644 index 00000000..5ba9fd68 --- /dev/null +++ b/game/characters/tonks/clothes/robe/silk_robe/0_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:935134a3897e6698ca17467483c91e2772c7f2f9e4a7c554ae59756501964e0c +size 1946 diff --git a/game/characters/tonks/clothes/robe/silk_robe/outline.webp b/game/characters/tonks/clothes/robe/silk_robe/outline.webp new file mode 100644 index 00000000..2e3162cc --- /dev/null +++ b/game/characters/tonks/clothes/robe/silk_robe/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13d14e4e2d9da336e1871ab42da5a923d561edadde975ea3f3037cb98c23f1c1 +size 37080 diff --git a/game/characters/tonks/clothes/robe/silk_robe/outline_back.webp b/game/characters/tonks/clothes/robe/silk_robe/outline_back.webp new file mode 100644 index 00000000..17ed76a1 --- /dev/null +++ b/game/characters/tonks/clothes/robe/silk_robe/outline_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b615f0362f573e8fe1c575977f41d955da8a4410b45023e675970226180c447b +size 2970 diff --git a/game/characters/tonks/clothes/stockings/auror/0.webp b/game/characters/tonks/clothes/stockings/auror/0.webp new file mode 100644 index 00000000..f1554895 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/auror/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14d07dd5bfe848a7b3e9580aa57815ee434b3fd862cf037114ffaac5dafc2c8c +size 7414 diff --git a/game/characters/tonks/clothes/stockings/auror/1.webp b/game/characters/tonks/clothes/stockings/auror/1.webp new file mode 100644 index 00000000..f70141e0 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/auror/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:490c01a1dc51cbba570b05c20dadd820da2d9fc8f9114d666f541ad339456631 +size 762 diff --git a/game/characters/tonks/clothes/stockings/auror/outline.webp b/game/characters/tonks/clothes/stockings/auror/outline.webp new file mode 100644 index 00000000..241f2c39 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/auror/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a982be642b8ca38ecabda30b9f370764cdf1e7dadc0070bdb49b3d51935695ba +size 12178 diff --git a/game/characters/tonks/clothes/stockings/bunny_stockings_1/0.webp b/game/characters/tonks/clothes/stockings/bunny_stockings_1/0.webp new file mode 100644 index 00000000..3ae787f0 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/bunny_stockings_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3667bb08e728ed349a6ec177af522f6b878562749a44a63d2ee27112eead23e +size 3758 diff --git a/game/characters/tonks/clothes/stockings/bunny_stockings_1/outline.webp b/game/characters/tonks/clothes/stockings/bunny_stockings_1/outline.webp new file mode 100644 index 00000000..0a4dd03b --- /dev/null +++ b/game/characters/tonks/clothes/stockings/bunny_stockings_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8626cc871d9da1481793530d215fd2b588eac3b8a0ea9a8f7d1037b750b658e1 +size 58188 diff --git a/game/characters/tonks/clothes/stockings/long_basic_1/0.webp b/game/characters/tonks/clothes/stockings/long_basic_1/0.webp new file mode 100644 index 00000000..c508a016 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_basic_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10bfdcaede56ca844c9f8091668c25c7267e5ac39b84d3375900c917e7c5e6b7 +size 7858 diff --git a/game/characters/tonks/clothes/stockings/long_basic_1/extra.webp b/game/characters/tonks/clothes/stockings/long_basic_1/extra.webp new file mode 100644 index 00000000..39497557 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_basic_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8c44bef0124f20e9babd89067b5d633140fd25489380500fd74b7eb95e8c570 +size 4594 diff --git a/game/characters/tonks/clothes/stockings/long_basic_1/outline.webp b/game/characters/tonks/clothes/stockings/long_basic_1/outline.webp new file mode 100644 index 00000000..41fcece7 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_basic_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a903b9ee4e9d470476fa65a77e92491db10aa75eff6aae1e3e48506bc1cf11bc +size 9106 diff --git a/game/characters/tonks/clothes/stockings/long_basic_1/skin.webp b/game/characters/tonks/clothes/stockings/long_basic_1/skin.webp new file mode 100644 index 00000000..34e76a8a --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_basic_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:797347ffddaa223aefaf7791093e663206fcfb7da3d371e0769ff5b89f1cd1a8 +size 1636 diff --git a/game/characters/tonks/clothes/stockings/long_basic_2/0.webp b/game/characters/tonks/clothes/stockings/long_basic_2/0.webp new file mode 100644 index 00000000..7b16bf19 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_basic_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:818013ce884a7d1fb62d672a7e2d0c480fa7bd6158c0e1cb11e25e843954d80d +size 7754 diff --git a/game/characters/tonks/clothes/stockings/long_basic_2/1.webp b/game/characters/tonks/clothes/stockings/long_basic_2/1.webp new file mode 100644 index 00000000..2116e9c5 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_basic_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36829d62e507312b18d7151902ab68ba0ec11ecb1037baa50bff47804a8b7874 +size 4266 diff --git a/game/characters/tonks/clothes/stockings/long_basic_2/extra.webp b/game/characters/tonks/clothes/stockings/long_basic_2/extra.webp new file mode 100644 index 00000000..15004189 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_basic_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53003894718c266c0507b8163023c7ba4c35c9f4ae8f4ea46221acbd68aae8fe +size 5280 diff --git a/game/characters/tonks/clothes/stockings/long_basic_2/outline.webp b/game/characters/tonks/clothes/stockings/long_basic_2/outline.webp new file mode 100644 index 00000000..41fcece7 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_basic_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a903b9ee4e9d470476fa65a77e92491db10aa75eff6aae1e3e48506bc1cf11bc +size 9106 diff --git a/game/characters/tonks/clothes/stockings/long_basic_2/skin.webp b/game/characters/tonks/clothes/stockings/long_basic_2/skin.webp new file mode 100644 index 00000000..34e76a8a --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_basic_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:797347ffddaa223aefaf7791093e663206fcfb7da3d371e0769ff5b89f1cd1a8 +size 1636 diff --git a/game/characters/tonks/clothes/stockings/long_meshed/0.webp b/game/characters/tonks/clothes/stockings/long_meshed/0.webp new file mode 100644 index 00000000..7b16bf19 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_meshed/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:818013ce884a7d1fb62d672a7e2d0c480fa7bd6158c0e1cb11e25e843954d80d +size 7754 diff --git a/game/characters/tonks/clothes/stockings/long_meshed/1.webp b/game/characters/tonks/clothes/stockings/long_meshed/1.webp new file mode 100644 index 00000000..4adf8d14 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_meshed/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:027b368275418d43ae5863be889ddf7a849475b3f3db1798c0810680cfa80e1b +size 28948 diff --git a/game/characters/tonks/clothes/stockings/long_meshed/extra.webp b/game/characters/tonks/clothes/stockings/long_meshed/extra.webp new file mode 100644 index 00000000..39497557 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_meshed/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8c44bef0124f20e9babd89067b5d633140fd25489380500fd74b7eb95e8c570 +size 4594 diff --git a/game/characters/tonks/clothes/stockings/long_meshed/outline.webp b/game/characters/tonks/clothes/stockings/long_meshed/outline.webp new file mode 100644 index 00000000..41fcece7 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_meshed/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a903b9ee4e9d470476fa65a77e92491db10aa75eff6aae1e3e48506bc1cf11bc +size 9106 diff --git a/game/characters/tonks/clothes/stockings/long_meshed/skin.webp b/game/characters/tonks/clothes/stockings/long_meshed/skin.webp new file mode 100644 index 00000000..34e76a8a --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_meshed/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:797347ffddaa223aefaf7791093e663206fcfb7da3d371e0769ff5b89f1cd1a8 +size 1636 diff --git a/game/characters/tonks/clothes/stockings/long_sports/0.webp b/game/characters/tonks/clothes/stockings/long_sports/0.webp new file mode 100644 index 00000000..c508a016 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_sports/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10bfdcaede56ca844c9f8091668c25c7267e5ac39b84d3375900c917e7c5e6b7 +size 7858 diff --git a/game/characters/tonks/clothes/stockings/long_sports/1.webp b/game/characters/tonks/clothes/stockings/long_sports/1.webp new file mode 100644 index 00000000..a5b7ca80 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_sports/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ba60b22f130c29ae397b5edd9f4c7545ef48f6d4ca55647b7cf3f8d9c0b782b +size 7336 diff --git a/game/characters/tonks/clothes/stockings/long_sports/extra.webp b/game/characters/tonks/clothes/stockings/long_sports/extra.webp new file mode 100644 index 00000000..39497557 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_sports/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8c44bef0124f20e9babd89067b5d633140fd25489380500fd74b7eb95e8c570 +size 4594 diff --git a/game/characters/tonks/clothes/stockings/long_sports/outline.webp b/game/characters/tonks/clothes/stockings/long_sports/outline.webp new file mode 100644 index 00000000..41fcece7 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_sports/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a903b9ee4e9d470476fa65a77e92491db10aa75eff6aae1e3e48506bc1cf11bc +size 9106 diff --git a/game/characters/tonks/clothes/stockings/long_sports/skin.webp b/game/characters/tonks/clothes/stockings/long_sports/skin.webp new file mode 100644 index 00000000..34e76a8a --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_sports/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:797347ffddaa223aefaf7791093e663206fcfb7da3d371e0769ff5b89f1cd1a8 +size 1636 diff --git a/game/characters/tonks/clothes/stockings/long_striped/0.webp b/game/characters/tonks/clothes/stockings/long_striped/0.webp new file mode 100644 index 00000000..c508a016 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_striped/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10bfdcaede56ca844c9f8091668c25c7267e5ac39b84d3375900c917e7c5e6b7 +size 7858 diff --git a/game/characters/tonks/clothes/stockings/long_striped/1.webp b/game/characters/tonks/clothes/stockings/long_striped/1.webp new file mode 100644 index 00000000..0655bbeb --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_striped/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae1a3fa3b0da170bd7d037d286f56886f7b66e0e8946d94ceaf94223dd2c0813 +size 9642 diff --git a/game/characters/tonks/clothes/stockings/long_striped/extra.webp b/game/characters/tonks/clothes/stockings/long_striped/extra.webp new file mode 100644 index 00000000..39497557 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_striped/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8c44bef0124f20e9babd89067b5d633140fd25489380500fd74b7eb95e8c570 +size 4594 diff --git a/game/characters/tonks/clothes/stockings/long_striped/outline.webp b/game/characters/tonks/clothes/stockings/long_striped/outline.webp new file mode 100644 index 00000000..41fcece7 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_striped/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a903b9ee4e9d470476fa65a77e92491db10aa75eff6aae1e3e48506bc1cf11bc +size 9106 diff --git a/game/characters/tonks/clothes/stockings/long_striped/skin.webp b/game/characters/tonks/clothes/stockings/long_striped/skin.webp new file mode 100644 index 00000000..34e76a8a --- /dev/null +++ b/game/characters/tonks/clothes/stockings/long_striped/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:797347ffddaa223aefaf7791093e663206fcfb7da3d371e0769ff5b89f1cd1a8 +size 1636 diff --git a/game/characters/tonks/clothes/stockings/xmas/0.webp b/game/characters/tonks/clothes/stockings/xmas/0.webp new file mode 100644 index 00000000..6b11f74e --- /dev/null +++ b/game/characters/tonks/clothes/stockings/xmas/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5580da7169304792039e8c914cd2344048d3d50e12e5097c683c531de4be96e0 +size 8636 diff --git a/game/characters/tonks/clothes/stockings/xmas/1.webp b/game/characters/tonks/clothes/stockings/xmas/1.webp new file mode 100644 index 00000000..a8b3f190 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/xmas/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e535b4c37101b1b99d78f43daa66b1799f4d296b1f6b0c0f5aec77d12168e01 +size 3164 diff --git a/game/characters/tonks/clothes/stockings/xmas/outline.webp b/game/characters/tonks/clothes/stockings/xmas/outline.webp new file mode 100644 index 00000000..a58e6088 --- /dev/null +++ b/game/characters/tonks/clothes/stockings/xmas/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0768b01ad37363c0ddbaee49fcd32d6e2d2700976ed13df8cb295a02023cf8f7 +size 15834 diff --git a/game/characters/tonks/clothes/top/auror/0.webp b/game/characters/tonks/clothes/top/auror/0.webp new file mode 100644 index 00000000..0b614099 --- /dev/null +++ b/game/characters/tonks/clothes/top/auror/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81006893b46b42754957d9355b82c56a5e917d72a9218d742902e0237fde49cd +size 16042 diff --git a/game/characters/tonks/clothes/top/auror/1.webp b/game/characters/tonks/clothes/top/auror/1.webp new file mode 100644 index 00000000..02519aa2 --- /dev/null +++ b/game/characters/tonks/clothes/top/auror/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b831e8727eb941852b52181dc63ca843849a1f996f16a138c5c45fcf4d1383d +size 23426 diff --git a/game/characters/tonks/clothes/top/auror/outline.webp b/game/characters/tonks/clothes/top/auror/outline.webp new file mode 100644 index 00000000..9fe965de --- /dev/null +++ b/game/characters/tonks/clothes/top/auror/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:970fe92066332ee84308239dec813ffd2de66c2a56ad2a7eca806fdb9e455e52 +size 12654 diff --git a/game/characters/tonks/clothes/top/auror/skin.webp b/game/characters/tonks/clothes/top/auror/skin.webp new file mode 100644 index 00000000..937168af --- /dev/null +++ b/game/characters/tonks/clothes/top/auror/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:601413ec753cfbd0c5b7ddcceb3f255df61396930e2104afeefdb504baa4a0e0 +size 1442 diff --git a/game/characters/tonks/clothes/top/auror2/0.webp b/game/characters/tonks/clothes/top/auror2/0.webp new file mode 100644 index 00000000..0b614099 --- /dev/null +++ b/game/characters/tonks/clothes/top/auror2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81006893b46b42754957d9355b82c56a5e917d72a9218d742902e0237fde49cd +size 16042 diff --git a/game/characters/tonks/clothes/top/auror2/outline.webp b/game/characters/tonks/clothes/top/auror2/outline.webp new file mode 100644 index 00000000..9fe965de --- /dev/null +++ b/game/characters/tonks/clothes/top/auror2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:970fe92066332ee84308239dec813ffd2de66c2a56ad2a7eca806fdb9e455e52 +size 12654 diff --git a/game/characters/tonks/clothes/top/auror2/skin.webp b/game/characters/tonks/clothes/top/auror2/skin.webp new file mode 100644 index 00000000..937168af --- /dev/null +++ b/game/characters/tonks/clothes/top/auror2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:601413ec753cfbd0c5b7ddcceb3f255df61396930e2104afeefdb504baa4a0e0 +size 1442 diff --git a/game/characters/tonks/clothes/top/bunnysuit/0.webp b/game/characters/tonks/clothes/top/bunnysuit/0.webp new file mode 100644 index 00000000..275e3982 --- /dev/null +++ b/game/characters/tonks/clothes/top/bunnysuit/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e77090e74a02d21d44794e74f90773246f0f611f5755d270910cb90af044d155 +size 13992 diff --git a/game/characters/tonks/clothes/top/bunnysuit/extra.webp b/game/characters/tonks/clothes/top/bunnysuit/extra.webp new file mode 100644 index 00000000..6e31feb5 --- /dev/null +++ b/game/characters/tonks/clothes/top/bunnysuit/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8f5cfd4b7781f3598615f6fde0d78cc35dd6ed547ba6634369aeffe7e025dcc +size 1358 diff --git a/game/characters/tonks/clothes/top/bunnysuit/outline.webp b/game/characters/tonks/clothes/top/bunnysuit/outline.webp new file mode 100644 index 00000000..582f0af0 --- /dev/null +++ b/game/characters/tonks/clothes/top/bunnysuit/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e64a4d1161a2f8f34a6b32c5ab49f9ef2a53dd89e673602c80e3f5339a3c3b64 +size 13352 diff --git a/game/characters/tonks/clothes/top/bunnysuit/skin.webp b/game/characters/tonks/clothes/top/bunnysuit/skin.webp new file mode 100644 index 00000000..18e6cd6c --- /dev/null +++ b/game/characters/tonks/clothes/top/bunnysuit/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cdb9774c4590f25117897e0288a57f087ff29998015e402dc464dae021db578 +size 1260 diff --git a/game/characters/tonks/clothes/top/cavegirl_dress/0.webp b/game/characters/tonks/clothes/top/cavegirl_dress/0.webp new file mode 100644 index 00000000..7efc58b2 --- /dev/null +++ b/game/characters/tonks/clothes/top/cavegirl_dress/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4cbeb629ce47ba9f4ba394d980eb5287a402b6950925ec9b1a9b4f7870f8c013 +size 19978 diff --git a/game/characters/tonks/clothes/top/cavegirl_dress/extra.webp b/game/characters/tonks/clothes/top/cavegirl_dress/extra.webp new file mode 100644 index 00000000..45042828 --- /dev/null +++ b/game/characters/tonks/clothes/top/cavegirl_dress/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be5e6ef1dd732c85ae9ee47417f3addaaa30ccaa2c99be46fef77f9d8b80c6a9 +size 6616 diff --git a/game/characters/tonks/clothes/top/cavegirl_dress/outline.webp b/game/characters/tonks/clothes/top/cavegirl_dress/outline.webp new file mode 100644 index 00000000..499ed2c7 --- /dev/null +++ b/game/characters/tonks/clothes/top/cavegirl_dress/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:966d76359f087391d6eceb6162ff626e7027f5e94e1162348834e2f9043d24f6 +size 14726 diff --git a/game/characters/tonks/clothes/top/cavegirl_dress/skin.webp b/game/characters/tonks/clothes/top/cavegirl_dress/skin.webp new file mode 100644 index 00000000..4a52f808 --- /dev/null +++ b/game/characters/tonks/clothes/top/cavegirl_dress/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4454f7285709c8297b920409e73028dc931e00ee51342b3b6f4162495d13d411 +size 3864 diff --git a/game/characters/tonks/clothes/top/classy_dress/0.webp b/game/characters/tonks/clothes/top/classy_dress/0.webp new file mode 100644 index 00000000..ed909303 --- /dev/null +++ b/game/characters/tonks/clothes/top/classy_dress/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c358d15a805e0f7f5431255bd43aa68b853047971d422ecb47358071debb9de +size 67334 diff --git a/game/characters/tonks/clothes/top/classy_dress/extra.webp b/game/characters/tonks/clothes/top/classy_dress/extra.webp new file mode 100644 index 00000000..bd3d081e --- /dev/null +++ b/game/characters/tonks/clothes/top/classy_dress/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb11ad86e5bbd40f95584a1a96028c1cd5b921b98fc7342c4bf74a319a821217 +size 13580 diff --git a/game/characters/tonks/clothes/top/classy_dress/outline.webp b/game/characters/tonks/clothes/top/classy_dress/outline.webp new file mode 100644 index 00000000..cb0c65b0 --- /dev/null +++ b/game/characters/tonks/clothes/top/classy_dress/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52087e0814c4cdf06cfc1132eb80697bb09bd15402f44529e00ec205ec8df1e3 +size 40448 diff --git a/game/characters/tonks/clothes/top/classy_dress/skin.webp b/game/characters/tonks/clothes/top/classy_dress/skin.webp new file mode 100644 index 00000000..60a06c08 --- /dev/null +++ b/game/characters/tonks/clothes/top/classy_dress/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8104e3e816cb98757e93780189c3a14ba1c48f379775833e6b9d7d3d10cdb0a8 +size 7958 diff --git a/game/characters/tonks/clothes/top/corset/0.webp b/game/characters/tonks/clothes/top/corset/0.webp new file mode 100644 index 00000000..a15b6dc6 --- /dev/null +++ b/game/characters/tonks/clothes/top/corset/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09ab6bc69014bef45a040e9218b8909a7ac08b9f20a392f73c3b0a9abfe13306 +size 18816 diff --git a/game/characters/tonks/clothes/top/corset/extra.webp b/game/characters/tonks/clothes/top/corset/extra.webp new file mode 100644 index 00000000..8f9d4ac3 --- /dev/null +++ b/game/characters/tonks/clothes/top/corset/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e73f28b9d1688fde880906f154bc4167b2c07ea1258ebddcf8da746e6773b65 +size 2804 diff --git a/game/characters/tonks/clothes/top/corset/mask.webp b/game/characters/tonks/clothes/top/corset/mask.webp new file mode 100644 index 00000000..d0e94257 --- /dev/null +++ b/game/characters/tonks/clothes/top/corset/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f48be76f0e5840ae6c387572e0f8cd9dd35d3635dce1af8a7d817a4dc4f0afd2 +size 746 diff --git a/game/characters/tonks/clothes/top/corset/outline.webp b/game/characters/tonks/clothes/top/corset/outline.webp new file mode 100644 index 00000000..597d0f10 --- /dev/null +++ b/game/characters/tonks/clothes/top/corset/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0530ccbeee51ce4810c06beb0c10063fcb5a51c5bd096ef18cd99de023a85f83 +size 20840 diff --git a/game/characters/tonks/clothes/top/corset/skin.webp b/game/characters/tonks/clothes/top/corset/skin.webp new file mode 100644 index 00000000..5a186e35 --- /dev/null +++ b/game/characters/tonks/clothes/top/corset/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a28d8b3fecd2eab9c7db61b2a9de9df53a78b4261e4080a127d82cfd1db5336a +size 12392 diff --git a/game/characters/tonks/clothes/top/crop_top/0.webp b/game/characters/tonks/clothes/top/crop_top/0.webp new file mode 100644 index 00000000..779c5345 --- /dev/null +++ b/game/characters/tonks/clothes/top/crop_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52646aa0a8ce5022d3ab711cc79e64344369dee56ef6fa7fe67960a62ad8f437 +size 28664 diff --git a/game/characters/tonks/clothes/top/crop_top/outline.webp b/game/characters/tonks/clothes/top/crop_top/outline.webp new file mode 100644 index 00000000..ae912be7 --- /dev/null +++ b/game/characters/tonks/clothes/top/crop_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:053dd4aa25163b306cc305acc3b4fef3f32933eabaddd03bf009c00d831dec3a +size 10244 diff --git a/game/characters/tonks/clothes/top/crop_top/skin.webp b/game/characters/tonks/clothes/top/crop_top/skin.webp new file mode 100644 index 00000000..ed76a528 --- /dev/null +++ b/game/characters/tonks/clothes/top/crop_top/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63e4796132c9bbb83d81d85b65791c16f9685fa0936e037706ced612351403f5 +size 4036 diff --git a/game/characters/tonks/clothes/top/elf_dress/0.webp b/game/characters/tonks/clothes/top/elf_dress/0.webp new file mode 100644 index 00000000..67ec2c5f --- /dev/null +++ b/game/characters/tonks/clothes/top/elf_dress/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6d98a5d0007407409faf1e7bceb4689da69d9b1996956a48a4504f33060959a +size 20164 diff --git a/game/characters/tonks/clothes/top/elf_dress/extra.webp b/game/characters/tonks/clothes/top/elf_dress/extra.webp new file mode 100644 index 00000000..0dcf85ab --- /dev/null +++ b/game/characters/tonks/clothes/top/elf_dress/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19b1ccaab74d55080c02c77ff33cd3e43bcedb5456ee4296476a540a663e653b +size 6794 diff --git a/game/characters/tonks/clothes/top/elf_dress/outline.webp b/game/characters/tonks/clothes/top/elf_dress/outline.webp new file mode 100644 index 00000000..1e6a1bc7 --- /dev/null +++ b/game/characters/tonks/clothes/top/elf_dress/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8a9b3682a4f5a74d7abd830af127a6eb40dd8bfdd6d4ecddcaa78ae175bbfc0 +size 18328 diff --git a/game/characters/tonks/clothes/top/elf_dress/skin.webp b/game/characters/tonks/clothes/top/elf_dress/skin.webp new file mode 100644 index 00000000..9c0af1ed --- /dev/null +++ b/game/characters/tonks/clothes/top/elf_dress/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddf31006116864daa9fcc17961d2488db09318542f4d5d25629e5e8e8ff5ab8e +size 4928 diff --git a/game/characters/tonks/clothes/top/nightie_1/0.webp b/game/characters/tonks/clothes/top/nightie_1/0.webp new file mode 100644 index 00000000..8b4d0cb5 --- /dev/null +++ b/game/characters/tonks/clothes/top/nightie_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31f4e29155c7ade81d354c11a2891e8050495351ecf543d1b61772d7bb1dc687 +size 6948 diff --git a/game/characters/tonks/clothes/top/nightie_1/outline.webp b/game/characters/tonks/clothes/top/nightie_1/outline.webp new file mode 100644 index 00000000..54fc389a --- /dev/null +++ b/game/characters/tonks/clothes/top/nightie_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af5ad8bdbb90f060a0822f7a5a7c8ed34f7b55bb55526ea27021baa4f783b03b +size 13370 diff --git a/game/characters/tonks/clothes/top/police1/0.webp b/game/characters/tonks/clothes/top/police1/0.webp new file mode 100644 index 00000000..661ead16 --- /dev/null +++ b/game/characters/tonks/clothes/top/police1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb8a722dd7dfe64fd8206fab04bc5bb97dae092c43388cd0b28c5de869f21d4b +size 8610 diff --git a/game/characters/tonks/clothes/top/police1/1.webp b/game/characters/tonks/clothes/top/police1/1.webp new file mode 100644 index 00000000..e97174a7 --- /dev/null +++ b/game/characters/tonks/clothes/top/police1/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b50d87e31ca47655f1ecc9991866d96cb2d25060a822c812843370106449b6d +size 14834 diff --git a/game/characters/tonks/clothes/top/police1/2.webp b/game/characters/tonks/clothes/top/police1/2.webp new file mode 100644 index 00000000..6921bea5 --- /dev/null +++ b/game/characters/tonks/clothes/top/police1/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3162f4b25d6c524e507b36529dbe92b2c03c436319f865302327cd3a76972d9 +size 876 diff --git a/game/characters/tonks/clothes/top/police1/outline.webp b/game/characters/tonks/clothes/top/police1/outline.webp new file mode 100644 index 00000000..c15e4bdb --- /dev/null +++ b/game/characters/tonks/clothes/top/police1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43c42ca3f2e7744aac5e44fa8c957156a1c83acfd19415f90e96e532e9a64a34 +size 18608 diff --git a/game/characters/tonks/clothes/top/police2/0.webp b/game/characters/tonks/clothes/top/police2/0.webp new file mode 100644 index 00000000..e97174a7 --- /dev/null +++ b/game/characters/tonks/clothes/top/police2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b50d87e31ca47655f1ecc9991866d96cb2d25060a822c812843370106449b6d +size 14834 diff --git a/game/characters/tonks/clothes/top/police2/1.webp b/game/characters/tonks/clothes/top/police2/1.webp new file mode 100644 index 00000000..6921bea5 --- /dev/null +++ b/game/characters/tonks/clothes/top/police2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3162f4b25d6c524e507b36529dbe92b2c03c436319f865302327cd3a76972d9 +size 876 diff --git a/game/characters/tonks/clothes/top/police2/outline.webp b/game/characters/tonks/clothes/top/police2/outline.webp new file mode 100644 index 00000000..99ed8af0 --- /dev/null +++ b/game/characters/tonks/clothes/top/police2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d05b41dd7d38985f2751c169621b3da85753cbe866d34706cf843c481cbeff0 +size 17572 diff --git a/game/characters/tonks/clothes/top/police3/0.webp b/game/characters/tonks/clothes/top/police3/0.webp new file mode 100644 index 00000000..661ead16 --- /dev/null +++ b/game/characters/tonks/clothes/top/police3/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb8a722dd7dfe64fd8206fab04bc5bb97dae092c43388cd0b28c5de869f21d4b +size 8610 diff --git a/game/characters/tonks/clothes/top/police3/outline.webp b/game/characters/tonks/clothes/top/police3/outline.webp new file mode 100644 index 00000000..4053e5ef --- /dev/null +++ b/game/characters/tonks/clothes/top/police3/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec8d9be9cfcf301440e766f680ce658430d8d3d2134075d3f62cb6f87ba0741f +size 8290 diff --git a/game/characters/tonks/clothes/top/ruffled_top/0.webp b/game/characters/tonks/clothes/top/ruffled_top/0.webp new file mode 100644 index 00000000..ee524827 --- /dev/null +++ b/game/characters/tonks/clothes/top/ruffled_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:078b7f88d3a8829cb3fa649e879b826ef9e560ee47fbba02176688ba13ded344 +size 14122 diff --git a/game/characters/tonks/clothes/top/ruffled_top/outline.webp b/game/characters/tonks/clothes/top/ruffled_top/outline.webp new file mode 100644 index 00000000..09bb1ba2 --- /dev/null +++ b/game/characters/tonks/clothes/top/ruffled_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3359a8ac314cecafe3c6ec1ec3cac7b23416ecdfc0018242fdd433c0deb2ebde +size 16094 diff --git a/game/characters/tonks/clothes/top/silk_dress/0.webp b/game/characters/tonks/clothes/top/silk_dress/0.webp new file mode 100644 index 00000000..1c87a2b2 --- /dev/null +++ b/game/characters/tonks/clothes/top/silk_dress/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17cb006d3897cd1afcc8e1b909c79906c40a3864f4d988c0462a0e6a0f5aae3d +size 5606 diff --git a/game/characters/tonks/clothes/top/silk_dress/1.webp b/game/characters/tonks/clothes/top/silk_dress/1.webp new file mode 100644 index 00000000..a755f696 --- /dev/null +++ b/game/characters/tonks/clothes/top/silk_dress/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d637b4a62a372042600d24d9e2061e5a8a7c921d5d1dcf774589b63c3dfc86bb +size 1094 diff --git a/game/characters/tonks/clothes/top/silk_dress/outline.webp b/game/characters/tonks/clothes/top/silk_dress/outline.webp new file mode 100644 index 00000000..cca389a2 --- /dev/null +++ b/game/characters/tonks/clothes/top/silk_dress/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71216d0306f4d88801b4e8e476ecca3210c72fec95ff3a764fc14618a6ff357d +size 13628 diff --git a/game/characters/tonks/clothes/top/skimpy_dress/0.webp b/game/characters/tonks/clothes/top/skimpy_dress/0.webp new file mode 100644 index 00000000..15d6c46a --- /dev/null +++ b/game/characters/tonks/clothes/top/skimpy_dress/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f710055c6fe1ee12ec4c2a5410551adba8016b0964d360a05d7f31adcc756e1c +size 12750 diff --git a/game/characters/tonks/clothes/top/skimpy_dress/extra.webp b/game/characters/tonks/clothes/top/skimpy_dress/extra.webp new file mode 100644 index 00000000..808f908f --- /dev/null +++ b/game/characters/tonks/clothes/top/skimpy_dress/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73014bfbffc53403a99230c7f944e797027e5dab98206fecd7f100f059d84bd1 +size 13366 diff --git a/game/characters/tonks/clothes/top/skimpy_dress/outline.webp b/game/characters/tonks/clothes/top/skimpy_dress/outline.webp new file mode 100644 index 00000000..c2e24bef --- /dev/null +++ b/game/characters/tonks/clothes/top/skimpy_dress/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ac1346cd4f31c89b179a068cb16acf0aa2987ff600356147bb99844f6e3fefc +size 22636 diff --git a/game/characters/tonks/clothes/top/skimpy_dress/skin.webp b/game/characters/tonks/clothes/top/skimpy_dress/skin.webp new file mode 100644 index 00000000..04136207 --- /dev/null +++ b/game/characters/tonks/clothes/top/skimpy_dress/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fb1cf3b5ad7f2de0bcee49521303287e66e897c913865926d8c4a4b746c698c +size 4850 diff --git a/game/characters/tonks/clothes/top/skimpy_dress_2/0.webp b/game/characters/tonks/clothes/top/skimpy_dress_2/0.webp new file mode 100644 index 00000000..23a6b94a --- /dev/null +++ b/game/characters/tonks/clothes/top/skimpy_dress_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16c2874e50140e7b4b00efac26aaf5d8561cea2a73b16787731c5500d43cae47 +size 19772 diff --git a/game/characters/tonks/clothes/top/skimpy_dress_2/extra.webp b/game/characters/tonks/clothes/top/skimpy_dress_2/extra.webp new file mode 100644 index 00000000..1e3217e0 --- /dev/null +++ b/game/characters/tonks/clothes/top/skimpy_dress_2/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:670c171bb0c1ad6f851ee6abf8dd1a2c194bc22e36353f6035b005a1ef75d49d +size 9376 diff --git a/game/characters/tonks/clothes/top/skimpy_dress_2/outline.webp b/game/characters/tonks/clothes/top/skimpy_dress_2/outline.webp new file mode 100644 index 00000000..90318657 --- /dev/null +++ b/game/characters/tonks/clothes/top/skimpy_dress_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5206e1708df76cc0edf14affa3450fed9e5a317186a8148b0d536c3f3db89cec +size 14906 diff --git a/game/characters/tonks/clothes/top/skimpy_dress_2/skin.webp b/game/characters/tonks/clothes/top/skimpy_dress_2/skin.webp new file mode 100644 index 00000000..55757e8f --- /dev/null +++ b/game/characters/tonks/clothes/top/skimpy_dress_2/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4da5c7c16e1647c847ecd52354b6fbe03b2389bb0428462deae93ed69817cd5 +size 4716 diff --git a/game/characters/tonks/clothes/top/succubus_corset/0.webp b/game/characters/tonks/clothes/top/succubus_corset/0.webp new file mode 100644 index 00000000..bd2525bb --- /dev/null +++ b/game/characters/tonks/clothes/top/succubus_corset/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:babb0abc98c69c0460bdadc4482e6d16537ab632ead207b296c818944f269a31 +size 9266 diff --git a/game/characters/tonks/clothes/top/succubus_corset/1.webp b/game/characters/tonks/clothes/top/succubus_corset/1.webp new file mode 100644 index 00000000..fb16bdf2 --- /dev/null +++ b/game/characters/tonks/clothes/top/succubus_corset/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:316c9e680f2cee34ae4d017b860ba9774962f08d6534191a3f5a4ef406970bbb +size 2952 diff --git a/game/characters/tonks/clothes/top/succubus_corset/2.webp b/game/characters/tonks/clothes/top/succubus_corset/2.webp new file mode 100644 index 00000000..1b5913c3 --- /dev/null +++ b/game/characters/tonks/clothes/top/succubus_corset/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d115ac272820bc871b10617db103b1464cf2b7b1340f61961d81cf9481d941d8 +size 1304 diff --git a/game/characters/tonks/clothes/top/succubus_corset/outline.webp b/game/characters/tonks/clothes/top/succubus_corset/outline.webp new file mode 100644 index 00000000..f0c56671 --- /dev/null +++ b/game/characters/tonks/clothes/top/succubus_corset/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f791856aaedbc14c7bdca7c0c66333f92b1babc2eb0ff5c06d6f5c4b6e12061 +size 11956 diff --git a/game/characters/tonks/clothes/top/succubus_corset_2/0.webp b/game/characters/tonks/clothes/top/succubus_corset_2/0.webp new file mode 100644 index 00000000..fa8ceff4 --- /dev/null +++ b/game/characters/tonks/clothes/top/succubus_corset_2/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ae50ab5bab9ec87a8b41c419c78c64800644a5e9dbb91a70371f403f847634c +size 8216 diff --git a/game/characters/tonks/clothes/top/succubus_corset_2/1.webp b/game/characters/tonks/clothes/top/succubus_corset_2/1.webp new file mode 100644 index 00000000..fb0233cb --- /dev/null +++ b/game/characters/tonks/clothes/top/succubus_corset_2/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:811059e98bc1b43780793ff62caf782997d062aed55aa3656a43cb1e6f528f10 +size 4280 diff --git a/game/characters/tonks/clothes/top/succubus_corset_2/2.webp b/game/characters/tonks/clothes/top/succubus_corset_2/2.webp new file mode 100644 index 00000000..1b5913c3 --- /dev/null +++ b/game/characters/tonks/clothes/top/succubus_corset_2/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d115ac272820bc871b10617db103b1464cf2b7b1340f61961d81cf9481d941d8 +size 1304 diff --git a/game/characters/tonks/clothes/top/succubus_corset_2/outline.webp b/game/characters/tonks/clothes/top/succubus_corset_2/outline.webp new file mode 100644 index 00000000..3cde9305 --- /dev/null +++ b/game/characters/tonks/clothes/top/succubus_corset_2/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e06c7a04a619d06b5c0ce4547916656aea89280b7033b6befe4d0f974f9d242 +size 9750 diff --git a/game/characters/tonks/clothes/top/sweatshirt/0.webp b/game/characters/tonks/clothes/top/sweatshirt/0.webp new file mode 100644 index 00000000..460f892f --- /dev/null +++ b/game/characters/tonks/clothes/top/sweatshirt/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7927014d5c2e41180d458a29febaa6a342631bf114c4028005fb3b4e2edf46be +size 18746 diff --git a/game/characters/tonks/clothes/top/sweatshirt/outline.webp b/game/characters/tonks/clothes/top/sweatshirt/outline.webp new file mode 100644 index 00000000..9fd314d9 --- /dev/null +++ b/game/characters/tonks/clothes/top/sweatshirt/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b0e8afa94c40bc3894844fc89e83f9b2f53ca584e0b3489994f16d0ebd23243 +size 17842 diff --git a/game/characters/tonks/clothes/top/swimsuit_1/0.webp b/game/characters/tonks/clothes/top/swimsuit_1/0.webp new file mode 100644 index 00000000..1b0969e6 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7cb41adf1ac5425395d585284ac816fbe999efb024f875af5d30ba4f13e33234 +size 3814 diff --git a/game/characters/tonks/clothes/top/swimsuit_1/extra.webp b/game/characters/tonks/clothes/top/swimsuit_1/extra.webp new file mode 100644 index 00000000..8d423d03 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ceabd06f1b31f0e52c013f48eea5a4ffa8f8c13a0f00cd80c7ed67b09c73967 +size 8780 diff --git a/game/characters/tonks/clothes/top/swimsuit_1/outline.webp b/game/characters/tonks/clothes/top/swimsuit_1/outline.webp new file mode 100644 index 00000000..17861747 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a302168a859ce892dfd2a02751d5dbf89da43bb50d8e1a94d726a5618a51936 +size 8140 diff --git a/game/characters/tonks/clothes/top/swimsuit_1/skin.webp b/game/characters/tonks/clothes/top/swimsuit_1/skin.webp new file mode 100644 index 00000000..71316b82 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d91a8f7d7da1a5be98ba3eebfd7bc948968ec1e400612d2357f8002a77099719 +size 5414 diff --git a/game/characters/tonks/clothes/top/swimsuit_1_USA/0.webp b/game/characters/tonks/clothes/top/swimsuit_1_USA/0.webp new file mode 100644 index 00000000..9ef71777 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1_USA/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d1bfea8d05ebc25a3b92e6b44e4e12e70180704f0401830099e426dd1b51e66 +size 8082 diff --git a/game/characters/tonks/clothes/top/swimsuit_1_USA/1.webp b/game/characters/tonks/clothes/top/swimsuit_1_USA/1.webp new file mode 100644 index 00000000..e256b662 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1_USA/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89e9c03c4326fe858f20b3f6d1527d1ace8f1d208bf2ae214689010aff0da7ee +size 8152 diff --git a/game/characters/tonks/clothes/top/swimsuit_1_USA/2.webp b/game/characters/tonks/clothes/top/swimsuit_1_USA/2.webp new file mode 100644 index 00000000..8cfd02a5 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1_USA/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3e2832e9e438c38861bb54f21aed038789109bdf4ea2ade4611c3cc822b4c85 +size 2522 diff --git a/game/characters/tonks/clothes/top/swimsuit_1_USA/3.webp b/game/characters/tonks/clothes/top/swimsuit_1_USA/3.webp new file mode 100644 index 00000000..01dd9435 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1_USA/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a565777696dd59779cce2e5dcc2da143dca3338b0128a62fa2ce150822cbe1f2 +size 2776 diff --git a/game/characters/tonks/clothes/top/swimsuit_1_USA/extra.webp b/game/characters/tonks/clothes/top/swimsuit_1_USA/extra.webp new file mode 100644 index 00000000..8d423d03 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1_USA/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ceabd06f1b31f0e52c013f48eea5a4ffa8f8c13a0f00cd80c7ed67b09c73967 +size 8780 diff --git a/game/characters/tonks/clothes/top/swimsuit_1_USA/outline.webp b/game/characters/tonks/clothes/top/swimsuit_1_USA/outline.webp new file mode 100644 index 00000000..17861747 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1_USA/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a302168a859ce892dfd2a02751d5dbf89da43bb50d8e1a94d726a5618a51936 +size 8140 diff --git a/game/characters/tonks/clothes/top/swimsuit_1_USA/skin.webp b/game/characters/tonks/clothes/top/swimsuit_1_USA/skin.webp new file mode 100644 index 00000000..71316b82 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1_USA/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d91a8f7d7da1a5be98ba3eebfd7bc948968ec1e400612d2357f8002a77099719 +size 5414 diff --git a/game/characters/tonks/clothes/top/swimsuit_1_striped/0.webp b/game/characters/tonks/clothes/top/swimsuit_1_striped/0.webp new file mode 100644 index 00000000..1e764e25 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1_striped/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:867343cb1690361e0412c228fd159456650acbfa5dca8f9bbfed14a3e706d74a +size 10238 diff --git a/game/characters/tonks/clothes/top/swimsuit_1_striped/1.webp b/game/characters/tonks/clothes/top/swimsuit_1_striped/1.webp new file mode 100644 index 00000000..03cdc61b --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1_striped/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5e2852f04ffee7d74e2ec87286a3d76e0f2731303f95d1e2774b2c0789baa33 +size 10404 diff --git a/game/characters/tonks/clothes/top/swimsuit_1_striped/extra.webp b/game/characters/tonks/clothes/top/swimsuit_1_striped/extra.webp new file mode 100644 index 00000000..8d423d03 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1_striped/extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ceabd06f1b31f0e52c013f48eea5a4ffa8f8c13a0f00cd80c7ed67b09c73967 +size 8780 diff --git a/game/characters/tonks/clothes/top/swimsuit_1_striped/outline.webp b/game/characters/tonks/clothes/top/swimsuit_1_striped/outline.webp new file mode 100644 index 00000000..17861747 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1_striped/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a302168a859ce892dfd2a02751d5dbf89da43bb50d8e1a94d726a5618a51936 +size 8140 diff --git a/game/characters/tonks/clothes/top/swimsuit_1_striped/skin.webp b/game/characters/tonks/clothes/top/swimsuit_1_striped/skin.webp new file mode 100644 index 00000000..71316b82 --- /dev/null +++ b/game/characters/tonks/clothes/top/swimsuit_1_striped/skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d91a8f7d7da1a5be98ba3eebfd7bc948968ec1e400612d2357f8002a77099719 +size 5414 diff --git a/game/characters/tonks/clothes/top/tied_top/0.webp b/game/characters/tonks/clothes/top/tied_top/0.webp new file mode 100644 index 00000000..fad37eb2 --- /dev/null +++ b/game/characters/tonks/clothes/top/tied_top/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef17cdf32288958488f63c93dd252983f0a7279d6274d9ab4b67d0ed0aa45fe2 +size 14882 diff --git a/game/characters/tonks/clothes/top/tied_top/outline.webp b/game/characters/tonks/clothes/top/tied_top/outline.webp new file mode 100644 index 00000000..1a7fce4e --- /dev/null +++ b/game/characters/tonks/clothes/top/tied_top/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3034f25f6b5cad4c7eb48be51ddb52657aceaf773c957d6c919e673b82d7af5b +size 16886 diff --git a/game/characters/tonks/cum/body/heavy.webp b/game/characters/tonks/cum/body/heavy.webp new file mode 100644 index 00000000..16910eea --- /dev/null +++ b/game/characters/tonks/cum/body/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dad1f90fd74ad19cd20486aee6be7bc5dc5342f6e544cfaef5cf09af1db4ab1d +size 19290 diff --git a/game/characters/tonks/cum/body/heavy_skin.webp b/game/characters/tonks/cum/body/heavy_skin.webp new file mode 100644 index 00000000..02fdcae7 --- /dev/null +++ b/game/characters/tonks/cum/body/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3131ed7ae37acc547319e653036e7f367f069d22dff14f566d06551da4da2f64 +size 5502 diff --git a/game/characters/tonks/cum/body/light.webp b/game/characters/tonks/cum/body/light.webp new file mode 100644 index 00000000..f499c1d3 --- /dev/null +++ b/game/characters/tonks/cum/body/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e5125f4e22ed910a763f126d7a5e6a5746cef869b14afae38827e83e2ab346f +size 5980 diff --git a/game/characters/tonks/cum/body/light_skin.webp b/game/characters/tonks/cum/body/light_skin.webp new file mode 100644 index 00000000..3ee09e7e --- /dev/null +++ b/game/characters/tonks/cum/body/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dabcfc51aef3047d068c0f92458f64ece6e6deb2eeb7c9b4158dce5214d0a4d5 +size 3036 diff --git a/game/characters/tonks/cum/breasts/heavy.webp b/game/characters/tonks/cum/breasts/heavy.webp new file mode 100644 index 00000000..69fea37c --- /dev/null +++ b/game/characters/tonks/cum/breasts/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49d75dc47a5580e7c6576df193fa2f2d56ec768707ce23dd3bea3df0ebccddf7 +size 21738 diff --git a/game/characters/tonks/cum/breasts/heavy_skin.webp b/game/characters/tonks/cum/breasts/heavy_skin.webp new file mode 100644 index 00000000..fbc020da --- /dev/null +++ b/game/characters/tonks/cum/breasts/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ea2d501e541760d5e76d5707f489689bae74a146a0a721567f0ba9bd48ae864 +size 4684 diff --git a/game/characters/tonks/cum/breasts/light.webp b/game/characters/tonks/cum/breasts/light.webp new file mode 100644 index 00000000..fc34b1ba --- /dev/null +++ b/game/characters/tonks/cum/breasts/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5aa28036fcf9139653312062969bb508ddc51a054b6a5f8b235d27dce6f541d0 +size 10160 diff --git a/game/characters/tonks/cum/breasts/light_skin.webp b/game/characters/tonks/cum/breasts/light_skin.webp new file mode 100644 index 00000000..2b418219 --- /dev/null +++ b/game/characters/tonks/cum/breasts/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e910d1d91e3f2b51b84a565d78d3a7fa1de64c24f3b026e29653225a61681c3f +size 3342 diff --git a/game/characters/tonks/cum/crotch/heavy.webp b/game/characters/tonks/cum/crotch/heavy.webp new file mode 100644 index 00000000..27c7588b --- /dev/null +++ b/game/characters/tonks/cum/crotch/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3dba1474e8827f8a00a9887974495a2b1d6e2b76a15ebf2f79ac5d8345fc31b0 +size 29294 diff --git a/game/characters/tonks/cum/crotch/heavy_skin.webp b/game/characters/tonks/cum/crotch/heavy_skin.webp new file mode 100644 index 00000000..1b48b09e --- /dev/null +++ b/game/characters/tonks/cum/crotch/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c364dd7d0d25573f55fc74ad79c5d9b0aae4da6e60fe04c91e4b103029ddad6 +size 8928 diff --git a/game/characters/tonks/cum/crotch/light.webp b/game/characters/tonks/cum/crotch/light.webp new file mode 100644 index 00000000..2cff3b5f --- /dev/null +++ b/game/characters/tonks/cum/crotch/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e939ffe56ddf79c60cd82ef2059535bade8d5cf63e3b266252f58a2ed17a9f6 +size 12010 diff --git a/game/characters/tonks/cum/crotch/light_skin.webp b/game/characters/tonks/cum/crotch/light_skin.webp new file mode 100644 index 00000000..de92754b --- /dev/null +++ b/game/characters/tonks/cum/crotch/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c04fcedb129262606f4bd2815fb9f7e4161874ce4fb3b156355cfc554faf204 +size 4200 diff --git a/game/characters/tonks/cum/face/heavy.webp b/game/characters/tonks/cum/face/heavy.webp new file mode 100644 index 00000000..b1363897 --- /dev/null +++ b/game/characters/tonks/cum/face/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c335b131c8b66dfdf29d35291185815aef977602e47bed1543bc178fb4620658 +size 12124 diff --git a/game/characters/tonks/cum/face/heavy_skin.webp b/game/characters/tonks/cum/face/heavy_skin.webp new file mode 100644 index 00000000..5dcc8669 --- /dev/null +++ b/game/characters/tonks/cum/face/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46bbee79c5f1395fe613405cd2afc5f5c54aa24e8ff2f4570fe4a8dca3f69da5 +size 3302 diff --git a/game/characters/tonks/cum/face/light.webp b/game/characters/tonks/cum/face/light.webp new file mode 100644 index 00000000..1a6b1f54 --- /dev/null +++ b/game/characters/tonks/cum/face/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b84e165e3791f82e9a2bb867caed9afeec748bf49665fae335d398af725773f8 +size 5788 diff --git a/game/characters/tonks/cum/face/light_skin.webp b/game/characters/tonks/cum/face/light_skin.webp new file mode 100644 index 00000000..27983124 --- /dev/null +++ b/game/characters/tonks/cum/face/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:290d92c09f25f94d2cfc48c4308b86d232df0dbf20270de78492317289869406 +size 1400 diff --git a/game/characters/tonks/cum/hair/heavy.webp b/game/characters/tonks/cum/hair/heavy.webp new file mode 100644 index 00000000..5d70c3f7 --- /dev/null +++ b/game/characters/tonks/cum/hair/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a479e94e2ef4729c349f5cb4b1b4f15ead3d6f572e711a81f6ffb72d508762e4 +size 13018 diff --git a/game/characters/tonks/cum/hair/light.webp b/game/characters/tonks/cum/hair/light.webp new file mode 100644 index 00000000..f9a13873 --- /dev/null +++ b/game/characters/tonks/cum/hair/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f74467b72a02485c7ff2a1c3c606268c5bf67acaf047470dd9a6f2496fd5b4fe +size 4188 diff --git a/game/characters/tonks/cum/legs/heavy.webp b/game/characters/tonks/cum/legs/heavy.webp new file mode 100644 index 00000000..aca3e480 --- /dev/null +++ b/game/characters/tonks/cum/legs/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c27cf073025f33e211ae8e7aca081b7f157a5ac3a2cb4aba0d543221144d4ef8 +size 4384 diff --git a/game/characters/tonks/cum/legs/heavy_skin.webp b/game/characters/tonks/cum/legs/heavy_skin.webp new file mode 100644 index 00000000..39965425 --- /dev/null +++ b/game/characters/tonks/cum/legs/heavy_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c3510a330cbec6e78a5697089c9c0d32d032f87406f81bcd4828603b362f4b3 +size 2016 diff --git a/game/characters/tonks/cum/legs/light.webp b/game/characters/tonks/cum/legs/light.webp new file mode 100644 index 00000000..05be6430 --- /dev/null +++ b/game/characters/tonks/cum/legs/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed63a509eef6310951d332eaa045943059bad825910025b8dbe07ff799eb9ea0 +size 1644 diff --git a/game/characters/tonks/cum/legs/light_skin.webp b/game/characters/tonks/cum/legs/light_skin.webp new file mode 100644 index 00000000..1009fd99 --- /dev/null +++ b/game/characters/tonks/cum/legs/light_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6feeb9db705674f09bcb65cebb47fd07f6faedfe4f2645fd8c2c99af2523116 +size 954 diff --git a/game/characters/tonks/cum/pussy/heavy.webp b/game/characters/tonks/cum/pussy/heavy.webp new file mode 100644 index 00000000..9fbc74ff --- /dev/null +++ b/game/characters/tonks/cum/pussy/heavy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:981a8eb41d8e4a07fbb6f918510a90ed7b32ea45f6571e4d079ad593bed29197 +size 3582 diff --git a/game/characters/tonks/cum/pussy/light.webp b/game/characters/tonks/cum/pussy/light.webp new file mode 100644 index 00000000..1628e28e --- /dev/null +++ b/game/characters/tonks/cum/pussy/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d90ec360eb5de481d9d36d73cf1c36bbbb86379ddbde1f0375fc13ac58c20ad5 +size 1554 diff --git a/game/characters/tonks/emote/angry.webp b/game/characters/tonks/emote/angry.webp new file mode 100644 index 00000000..c81587cf --- /dev/null +++ b/game/characters/tonks/emote/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fb73f558941a107ff42368d92b4d15cfc75bef32732d05bec8e262ef19825ad +size 3120 diff --git a/game/characters/tonks/emote/confused.webp b/game/characters/tonks/emote/confused.webp new file mode 100644 index 00000000..5376f8e9 --- /dev/null +++ b/game/characters/tonks/emote/confused.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41922a6d71cc4cb4e6068c0d31952190c8e6886f0b9d2dfb306317bef5586979 +size 17488 diff --git a/game/characters/tonks/emote/happy.webp b/game/characters/tonks/emote/happy.webp new file mode 100644 index 00000000..75b59957 --- /dev/null +++ b/game/characters/tonks/emote/happy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28342a63ac36e897189a70b9b34dd76408cfb09856317c0c731db415977189d9 +size 12692 diff --git a/game/characters/tonks/emote/hearts.webp b/game/characters/tonks/emote/hearts.webp new file mode 100644 index 00000000..4293ad88 --- /dev/null +++ b/game/characters/tonks/emote/hearts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18c5a8645c1a42d9da84fdd03678f85362e170e1eb8ab8bc129bbc8ce5acb5fc +size 21098 diff --git a/game/characters/tonks/emote/shocked.webp b/game/characters/tonks/emote/shocked.webp new file mode 100644 index 00000000..008d123d --- /dev/null +++ b/game/characters/tonks/emote/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02ff35a2846f5f1bf9d9d06375dd2b81540c9081bad167734cb822f60fa2d6b2 +size 12644 diff --git a/game/characters/tonks/emote/sweat.webp b/game/characters/tonks/emote/sweat.webp new file mode 100644 index 00000000..10e67734 --- /dev/null +++ b/game/characters/tonks/emote/sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8beceaa82566c5de032d386f703bdcb513c578152b74c5307a2bea21f6bad67e +size 3666 diff --git a/game/characters/tonks/face/cheeks/blush.webp b/game/characters/tonks/face/cheeks/blush.webp new file mode 100644 index 00000000..0c9998b1 --- /dev/null +++ b/game/characters/tonks/face/cheeks/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0111ff8a27aad0105a335e43467f31d365f188dd139b363703ea421edc4df0e +size 3038 diff --git a/game/characters/tonks/face/cheeks/gloom.webp b/game/characters/tonks/face/cheeks/gloom.webp new file mode 100644 index 00000000..ac368d43 --- /dev/null +++ b/game/characters/tonks/face/cheeks/gloom.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1fc3a44016fa5e7b83436dc937bd11207ea9279fee8fc333b20379ac5953c19 +size 1252 diff --git a/game/characters/tonks/face/cheeks/heavy_blush.webp b/game/characters/tonks/face/cheeks/heavy_blush.webp new file mode 100644 index 00000000..b50d214b --- /dev/null +++ b/game/characters/tonks/face/cheeks/heavy_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a66a6b761fc85fa10bdd74791efa9974f504e4978bf8e368d999a7544b126905 +size 5850 diff --git a/game/characters/tonks/face/eyebrows/angry.webp b/game/characters/tonks/face/eyebrows/angry.webp new file mode 100644 index 00000000..405dc5ae --- /dev/null +++ b/game/characters/tonks/face/eyebrows/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8927b08c7922766504266cc172fa1704772437345bc29dd1bf89124546c1152c +size 1466 diff --git a/game/characters/tonks/face/eyebrows/angry_skin.webp b/game/characters/tonks/face/eyebrows/angry_skin.webp new file mode 100644 index 00000000..79f34ab6 --- /dev/null +++ b/game/characters/tonks/face/eyebrows/angry_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:010de11205ccba4ea4fd1ba09746952b0d9a8648c2d39433160b3b8e452ba2db +size 1320 diff --git a/game/characters/tonks/face/eyebrows/annoyed.webp b/game/characters/tonks/face/eyebrows/annoyed.webp new file mode 100644 index 00000000..22cf9813 --- /dev/null +++ b/game/characters/tonks/face/eyebrows/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb8e9510035dd03a345a87688a47082b37376d2eafe7ec6073b8cf7f6bd9016c +size 1282 diff --git a/game/characters/tonks/face/eyebrows/annoyed_skin.webp b/game/characters/tonks/face/eyebrows/annoyed_skin.webp new file mode 100644 index 00000000..760c8fd6 --- /dev/null +++ b/game/characters/tonks/face/eyebrows/annoyed_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f71fd5d93a1027f085a8b6c275742ca312fa1f23c4d7997862747331ab1a3a4e +size 1278 diff --git a/game/characters/tonks/face/eyebrows/base.webp b/game/characters/tonks/face/eyebrows/base.webp new file mode 100644 index 00000000..38ac7557 --- /dev/null +++ b/game/characters/tonks/face/eyebrows/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f76292948c465073d826ce90873d9020c30cde8582df4a47d1940ec2a4392c9 +size 1440 diff --git a/game/characters/tonks/face/eyebrows/base_skin.webp b/game/characters/tonks/face/eyebrows/base_skin.webp new file mode 100644 index 00000000..fdde6a5f --- /dev/null +++ b/game/characters/tonks/face/eyebrows/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:108dce0d3aa7be8d174feef988e786ef26bc586c3233d617fd51b798f2036258 +size 1278 diff --git a/game/characters/tonks/face/eyebrows/raised.webp b/game/characters/tonks/face/eyebrows/raised.webp new file mode 100644 index 00000000..985a5205 --- /dev/null +++ b/game/characters/tonks/face/eyebrows/raised.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc423c7760209be32588f117330d381a0426b28e5e1f6300d07d6159aa49dc56 +size 1484 diff --git a/game/characters/tonks/face/eyebrows/raised_skin.webp b/game/characters/tonks/face/eyebrows/raised_skin.webp new file mode 100644 index 00000000..bde52d36 --- /dev/null +++ b/game/characters/tonks/face/eyebrows/raised_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f311ec0ced3de5a26885ba5506ee29a1fb0e6e4d7ed0ac7974a4c92774cbe47 +size 1232 diff --git a/game/characters/tonks/face/eyebrows/shocked.webp b/game/characters/tonks/face/eyebrows/shocked.webp new file mode 100644 index 00000000..014f1127 --- /dev/null +++ b/game/characters/tonks/face/eyebrows/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8a0f098676f9307efe56cf5c0f3537e4dd2c9d666955b994b5e3e2168837011 +size 1366 diff --git a/game/characters/tonks/face/eyebrows/shocked_skin.webp b/game/characters/tonks/face/eyebrows/shocked_skin.webp new file mode 100644 index 00000000..8bd9647b --- /dev/null +++ b/game/characters/tonks/face/eyebrows/shocked_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74eb66cf9c05d4ac7098feb59fdc2afe3208aeeb181566d70fa9107aa9574032 +size 1190 diff --git a/game/characters/tonks/face/eyebrows/worried.webp b/game/characters/tonks/face/eyebrows/worried.webp new file mode 100644 index 00000000..c5623ed4 --- /dev/null +++ b/game/characters/tonks/face/eyebrows/worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15773e2a811e1dcd1d77f502c4df751bfa5eeaa75e214775e1aa14666c38c55a +size 1332 diff --git a/game/characters/tonks/face/eyebrows/worried_skin.webp b/game/characters/tonks/face/eyebrows/worried_skin.webp new file mode 100644 index 00000000..dbdc69e8 --- /dev/null +++ b/game/characters/tonks/face/eyebrows/worried_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6749bd8375322332315b4e9cf4e359d17096408b24cc2744f27638e0b9dac847 +size 1238 diff --git a/game/characters/tonks/face/eyes/base.webp b/game/characters/tonks/face/eyes/base.webp new file mode 100644 index 00000000..445d8c83 --- /dev/null +++ b/game/characters/tonks/face/eyes/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd967bfd77c75754a743a3e60f63fa06984fa3ed222faa4447a81f507368cb5c +size 3072 diff --git a/game/characters/tonks/face/eyes/base_mask.webp b/game/characters/tonks/face/eyes/base_mask.webp new file mode 100644 index 00000000..0103d953 --- /dev/null +++ b/game/characters/tonks/face/eyes/base_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:317414a1f068b34ed95b4ded7b297de65d4e09c89bbf71ad9990b92cbe2ec05b +size 748 diff --git a/game/characters/tonks/face/eyes/base_skin.webp b/game/characters/tonks/face/eyes/base_skin.webp new file mode 100644 index 00000000..0d6cc952 --- /dev/null +++ b/game/characters/tonks/face/eyes/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51e8a60f51733b46efd5ec02988628cfd0c8169937704ec58308cd4b314e8b4e +size 808 diff --git a/game/characters/tonks/face/eyes/closed.webp b/game/characters/tonks/face/eyes/closed.webp new file mode 100644 index 00000000..08a94e13 --- /dev/null +++ b/game/characters/tonks/face/eyes/closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12174bdb78149ac2b4a388e544e5bde6bb72761a63106683403a53f6c07990de +size 3110 diff --git a/game/characters/tonks/face/eyes/closed_skin.webp b/game/characters/tonks/face/eyes/closed_skin.webp new file mode 100644 index 00000000..0d6cc952 --- /dev/null +++ b/game/characters/tonks/face/eyes/closed_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51e8a60f51733b46efd5ec02988628cfd0c8169937704ec58308cd4b314e8b4e +size 808 diff --git a/game/characters/tonks/face/eyes/happyCl.webp b/game/characters/tonks/face/eyes/happyCl.webp new file mode 100644 index 00000000..98239aa5 --- /dev/null +++ b/game/characters/tonks/face/eyes/happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2adbcfc04954fffc55cd8519cf6c8a52cd714c36ae631c9534a511ac5df2ae34 +size 2394 diff --git a/game/characters/tonks/face/eyes/happyCl_skin.webp b/game/characters/tonks/face/eyes/happyCl_skin.webp new file mode 100644 index 00000000..e759aabd --- /dev/null +++ b/game/characters/tonks/face/eyes/happyCl_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51d72c936c37d003630a0bd653f28ad87345944f9f5a8a790e8f43c5d1260e7d +size 800 diff --git a/game/characters/tonks/face/eyes/narrow.webp b/game/characters/tonks/face/eyes/narrow.webp new file mode 100644 index 00000000..80527972 --- /dev/null +++ b/game/characters/tonks/face/eyes/narrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bde12e109dabee593bd85d9323ac81df92d1eef4d0f6b22344dca28139ebf0ff +size 3016 diff --git a/game/characters/tonks/face/eyes/narrow_mask.webp b/game/characters/tonks/face/eyes/narrow_mask.webp new file mode 100644 index 00000000..019ab65b --- /dev/null +++ b/game/characters/tonks/face/eyes/narrow_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bad049325f02b1da0ed45ffc829017c651a6ecc355aa9e57b08e03967e84598 +size 736 diff --git a/game/characters/tonks/face/eyes/narrow_skin.webp b/game/characters/tonks/face/eyes/narrow_skin.webp new file mode 100644 index 00000000..0d6cc952 --- /dev/null +++ b/game/characters/tonks/face/eyes/narrow_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51e8a60f51733b46efd5ec02988628cfd0c8169937704ec58308cd4b314e8b4e +size 808 diff --git a/game/characters/tonks/face/eyes/shocked.webp b/game/characters/tonks/face/eyes/shocked.webp new file mode 100644 index 00000000..fb6952dd --- /dev/null +++ b/game/characters/tonks/face/eyes/shocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ce3bc1de016c61c4111ddf879081423d87c7e1ee9024bf9022690bdbfe0330a +size 2448 diff --git a/game/characters/tonks/face/eyes/shocked_mask.webp b/game/characters/tonks/face/eyes/shocked_mask.webp new file mode 100644 index 00000000..0a96473e --- /dev/null +++ b/game/characters/tonks/face/eyes/shocked_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03ab826fa110b57bb294bbfd76a15f2b401ea16385a79b7405ad7bc58a4fbb0a +size 932 diff --git a/game/characters/tonks/face/eyes/shocked_skin.webp b/game/characters/tonks/face/eyes/shocked_skin.webp new file mode 100644 index 00000000..0d6cc952 --- /dev/null +++ b/game/characters/tonks/face/eyes/shocked_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51e8a60f51733b46efd5ec02988628cfd0c8169937704ec58308cd4b314e8b4e +size 808 diff --git a/game/characters/tonks/face/eyes/wide.webp b/game/characters/tonks/face/eyes/wide.webp new file mode 100644 index 00000000..9795c95c --- /dev/null +++ b/game/characters/tonks/face/eyes/wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b941269683eb931a2e997dcc0c97998ce5e846314af007e4ac49501c8d529e3 +size 2362 diff --git a/game/characters/tonks/face/eyes/wide_mask.webp b/game/characters/tonks/face/eyes/wide_mask.webp new file mode 100644 index 00000000..8fbef890 --- /dev/null +++ b/game/characters/tonks/face/eyes/wide_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:771579ec0a77d34fd684c9a41585f2ead3c42fc44d28ca5a89a86a1527d3c4a7 +size 796 diff --git a/game/characters/tonks/face/eyes/wide_skin.webp b/game/characters/tonks/face/eyes/wide_skin.webp new file mode 100644 index 00000000..0d6cc952 --- /dev/null +++ b/game/characters/tonks/face/eyes/wide_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51e8a60f51733b46efd5ec02988628cfd0c8169937704ec58308cd4b314e8b4e +size 808 diff --git a/game/characters/tonks/face/eyes/wink.webp b/game/characters/tonks/face/eyes/wink.webp new file mode 100644 index 00000000..2099538a --- /dev/null +++ b/game/characters/tonks/face/eyes/wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73f4574612eeb2f44d2b914758e3e7983b40a955534dd3b76e8800f99587c4e7 +size 2800 diff --git a/game/characters/tonks/face/eyes/wink_mask.webp b/game/characters/tonks/face/eyes/wink_mask.webp new file mode 100644 index 00000000..907bce93 --- /dev/null +++ b/game/characters/tonks/face/eyes/wink_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2df502aceb193bc039401f02235a57082469b6ca93ebd080ac40dd348aa97996 +size 610 diff --git a/game/characters/tonks/face/eyes/wink_skin.webp b/game/characters/tonks/face/eyes/wink_skin.webp new file mode 100644 index 00000000..44f21a2f --- /dev/null +++ b/game/characters/tonks/face/eyes/wink_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af9b396583d38b433c18fe63ff7202b00bed2c5f7c990bb14c127b1596e7426c +size 834 diff --git a/game/characters/tonks/face/mouth/angry.webp b/game/characters/tonks/face/mouth/angry.webp new file mode 100644 index 00000000..7313154a --- /dev/null +++ b/game/characters/tonks/face/mouth/angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4a2e1847776d3bf7485a06041c24e873aec72e89a07449fb02a2a1151a70b3f +size 2536 diff --git a/game/characters/tonks/face/mouth/annoyed.webp b/game/characters/tonks/face/mouth/annoyed.webp new file mode 100644 index 00000000..6827ba39 --- /dev/null +++ b/game/characters/tonks/face/mouth/annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16d4934f4cabe38eaa6cd089988de3df216b635ac7de123607f08a6cf8389305 +size 1512 diff --git a/game/characters/tonks/face/mouth/annoyed_skin.webp b/game/characters/tonks/face/mouth/annoyed_skin.webp new file mode 100644 index 00000000..7ece9351 --- /dev/null +++ b/game/characters/tonks/face/mouth/annoyed_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:346fa6c5b8d7f0aa7c5627c4173bcf7851053c73a83120d92e4551874af661b9 +size 668 diff --git a/game/characters/tonks/face/mouth/base.webp b/game/characters/tonks/face/mouth/base.webp new file mode 100644 index 00000000..47df6979 --- /dev/null +++ b/game/characters/tonks/face/mouth/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e36a3057f53333c7f62137ae1fade0aea6b467ed1259ec37b1cadfaaf4c3a2c2 +size 2112 diff --git a/game/characters/tonks/face/mouth/base_skin.webp b/game/characters/tonks/face/mouth/base_skin.webp new file mode 100644 index 00000000..99810fc6 --- /dev/null +++ b/game/characters/tonks/face/mouth/base_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80c3fa76164e6389d4e1b7c6e24d1eb44c3d025917ceb422f42cc02760d121e0 +size 1024 diff --git a/game/characters/tonks/face/mouth/clench.webp b/game/characters/tonks/face/mouth/clench.webp new file mode 100644 index 00000000..ed12d06e --- /dev/null +++ b/game/characters/tonks/face/mouth/clench.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41de7a4fb9671449a11f398fbe792b4816452ee30db3766d33864d3245e533c3 +size 3260 diff --git a/game/characters/tonks/face/mouth/clench_skin.webp b/game/characters/tonks/face/mouth/clench_skin.webp new file mode 100644 index 00000000..04530769 --- /dev/null +++ b/game/characters/tonks/face/mouth/clench_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:224670d313a4d4827a5bf3c84eeabc19719d3b09e139e60995a310cd815625ca +size 694 diff --git a/game/characters/tonks/face/mouth/crooked_smile.webp b/game/characters/tonks/face/mouth/crooked_smile.webp new file mode 100644 index 00000000..27496a2b --- /dev/null +++ b/game/characters/tonks/face/mouth/crooked_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f750f48f4e98bf78bbfe102dc8179366b0b37b047292bf4e76013d70e2c10030 +size 6136 diff --git a/game/characters/tonks/face/mouth/crooked_smile_skin.webp b/game/characters/tonks/face/mouth/crooked_smile_skin.webp new file mode 100644 index 00000000..1935aa5d --- /dev/null +++ b/game/characters/tonks/face/mouth/crooked_smile_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8464ce8e34b8c4994fd5a07d8e02bbef1e158c011659f7fb1c2e733bed6bdb3e +size 3476 diff --git a/game/characters/tonks/face/mouth/disgust.webp b/game/characters/tonks/face/mouth/disgust.webp new file mode 100644 index 00000000..9ff6acf0 --- /dev/null +++ b/game/characters/tonks/face/mouth/disgust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40d9e3a26dd52bdc9eeb00e6e40f53eae3a3bde72243f7247b467c0fa1233e2c +size 2314 diff --git a/game/characters/tonks/face/mouth/disgust_skin.webp b/game/characters/tonks/face/mouth/disgust_skin.webp new file mode 100644 index 00000000..d26bddb1 --- /dev/null +++ b/game/characters/tonks/face/mouth/disgust_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:46847a2048cff2e1bb4ee19f36cc6c2294ee7a43289cb8bf24325823b1933e20 +size 2420 diff --git a/game/characters/tonks/face/mouth/grin.webp b/game/characters/tonks/face/mouth/grin.webp new file mode 100644 index 00000000..9823d441 --- /dev/null +++ b/game/characters/tonks/face/mouth/grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5511077c0bfdeb6f6ecd50340dec1167c7375902c8a54a83a435f8c9b75c248a +size 3448 diff --git a/game/characters/tonks/face/mouth/grin_skin.webp b/game/characters/tonks/face/mouth/grin_skin.webp new file mode 100644 index 00000000..8f50aa07 --- /dev/null +++ b/game/characters/tonks/face/mouth/grin_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3bf86ff86d85ff591de1551fe878b792be0fd45c2d92405beb05843598d36bf +size 736 diff --git a/game/characters/tonks/face/mouth/horny.webp b/game/characters/tonks/face/mouth/horny.webp new file mode 100644 index 00000000..d350ac19 --- /dev/null +++ b/game/characters/tonks/face/mouth/horny.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61d8b829f1d0644e6f8c3e6c9f4c38789aaa3ca24d54a6681ec82c328b543e3e +size 3102 diff --git a/game/characters/tonks/face/mouth/horny_skin.webp b/game/characters/tonks/face/mouth/horny_skin.webp new file mode 100644 index 00000000..65c4506e --- /dev/null +++ b/game/characters/tonks/face/mouth/horny_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:101d11c71a51134a24961847f53efbfd01a9485c062b1df508b4d3f62a08dcfa +size 696 diff --git a/game/characters/tonks/face/mouth/mad.webp b/game/characters/tonks/face/mouth/mad.webp new file mode 100644 index 00000000..fe9eb8da --- /dev/null +++ b/game/characters/tonks/face/mouth/mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:228891f5aeb5569034aae25cd580d2ae765228baf03d2d72f385b47e51ec0359 +size 2878 diff --git a/game/characters/tonks/face/mouth/mad_skin.webp b/game/characters/tonks/face/mouth/mad_skin.webp new file mode 100644 index 00000000..4852f339 --- /dev/null +++ b/game/characters/tonks/face/mouth/mad_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:320d4a7f1c8e685624c2d62eafc76b9b5711da793e9664c1d3cce0789e3e9b22 +size 738 diff --git a/game/characters/tonks/face/mouth/normal.webp b/game/characters/tonks/face/mouth/normal.webp new file mode 100644 index 00000000..6a421610 --- /dev/null +++ b/game/characters/tonks/face/mouth/normal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28752266f86bbdf287b38ef7b271821fbbd0b4aed5b163ff80e55983e4d1bfe8 +size 1928 diff --git a/game/characters/tonks/face/mouth/normal_skin.webp b/game/characters/tonks/face/mouth/normal_skin.webp new file mode 100644 index 00000000..5956c550 --- /dev/null +++ b/game/characters/tonks/face/mouth/normal_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a746a0004b6eebe33e0dbc7499d70484eb5b3077da9660b4ff527d247598617 +size 916 diff --git a/game/characters/tonks/face/mouth/open.webp b/game/characters/tonks/face/mouth/open.webp new file mode 100644 index 00000000..f5cb3aff --- /dev/null +++ b/game/characters/tonks/face/mouth/open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71332791faafda43820b2ea6e01b6d8720a6e1cc281e45ec6f6904df29f3d331 +size 2796 diff --git a/game/characters/tonks/face/mouth/open_skin.webp b/game/characters/tonks/face/mouth/open_skin.webp new file mode 100644 index 00000000..c8459671 --- /dev/null +++ b/game/characters/tonks/face/mouth/open_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7cfdc69c9e2f38bef32a03d595d851690d027bd9f306654536d44da6e8c0867b +size 664 diff --git a/game/characters/tonks/face/mouth/open_wide.webp b/game/characters/tonks/face/mouth/open_wide.webp new file mode 100644 index 00000000..e8a34465 --- /dev/null +++ b/game/characters/tonks/face/mouth/open_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3074fa555ada5c96f21e728536714abdeace1cc8de40391c60a8906b31434fd +size 6054 diff --git a/game/characters/tonks/face/mouth/open_wide_tongue.webp b/game/characters/tonks/face/mouth/open_wide_tongue.webp new file mode 100644 index 00000000..64563dd8 --- /dev/null +++ b/game/characters/tonks/face/mouth/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11ea1ece08eaf8c894b188b4d6f5c35dc0acdf180842a2003996610c8398bbdc +size 6528 diff --git a/game/characters/tonks/face/mouth/open_wide_tongue2.webp b/game/characters/tonks/face/mouth/open_wide_tongue2.webp new file mode 100644 index 00000000..6438a2b0 --- /dev/null +++ b/game/characters/tonks/face/mouth/open_wide_tongue2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:049a53ed66e5b83fbfea24935f85a042a872ab0664620c4148dda39ade8a3633 +size 7402 diff --git a/game/characters/tonks/face/mouth/open_wide_tongue2_cum.webp b/game/characters/tonks/face/mouth/open_wide_tongue2_cum.webp new file mode 100644 index 00000000..3d3f1967 --- /dev/null +++ b/game/characters/tonks/face/mouth/open_wide_tongue2_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27945d90d88ee7dd91cab5420be8ee300c22d67db68797804ade0a71b07f67ab +size 8964 diff --git a/game/characters/tonks/face/mouth/open_wide_tongue_cum.webp b/game/characters/tonks/face/mouth/open_wide_tongue_cum.webp new file mode 100644 index 00000000..9d286563 --- /dev/null +++ b/game/characters/tonks/face/mouth/open_wide_tongue_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4232dc549ef7103a26884a0289e9548398af710da07d88369cb619e1925ad46 +size 7848 diff --git a/game/characters/tonks/face/mouth/scream.webp b/game/characters/tonks/face/mouth/scream.webp new file mode 100644 index 00000000..9819fb05 --- /dev/null +++ b/game/characters/tonks/face/mouth/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:727c2d2d229e64fc9669fa5c0f83eafc5c017a82afc8048e9482eef20dbc47dc +size 3694 diff --git a/game/characters/tonks/face/mouth/scream_skin.webp b/game/characters/tonks/face/mouth/scream_skin.webp new file mode 100644 index 00000000..540822d5 --- /dev/null +++ b/game/characters/tonks/face/mouth/scream_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07bf94662b418c2d094c4b21644f1ac77a1fd847114fab495ba6447408ce4f03 +size 820 diff --git a/game/characters/tonks/face/mouth/silly.webp b/game/characters/tonks/face/mouth/silly.webp new file mode 100644 index 00000000..7b8104b2 --- /dev/null +++ b/game/characters/tonks/face/mouth/silly.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a67c635b26fbb92b25a38d7218f827c9fecb7ab8ed1c359b6a7c9dabef61df9 +size 3294 diff --git a/game/characters/tonks/face/mouth/silly_skin.webp b/game/characters/tonks/face/mouth/silly_skin.webp new file mode 100644 index 00000000..28eedf3b --- /dev/null +++ b/game/characters/tonks/face/mouth/silly_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4cb872ae0a6530c6acbd9c41627728c71b2de2eabf66b1d7012817463870d80a +size 712 diff --git a/game/characters/tonks/face/mouth/soft.webp b/game/characters/tonks/face/mouth/soft.webp new file mode 100644 index 00000000..35334cb7 --- /dev/null +++ b/game/characters/tonks/face/mouth/soft.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8826aec9af3d85582ddb29f881938d7c4cda98649b6ac97cde19e29f86a8ab7 +size 2108 diff --git a/game/characters/tonks/face/mouth/soft_skin.webp b/game/characters/tonks/face/mouth/soft_skin.webp new file mode 100644 index 00000000..a1495553 --- /dev/null +++ b/game/characters/tonks/face/mouth/soft_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54de24f29b871322d38dfbfeb7a851d6efd5a8ee2563fade45876d45125a8580 +size 756 diff --git a/game/characters/tonks/face/mouth/upset.webp b/game/characters/tonks/face/mouth/upset.webp new file mode 100644 index 00000000..11530dc7 --- /dev/null +++ b/game/characters/tonks/face/mouth/upset.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f51118770c46cc8f07858b113650f4e33a9fa15b21e8c35e3a988af0ab2fce4 +size 2080 diff --git a/game/characters/tonks/face/mouth/upset_skin.webp b/game/characters/tonks/face/mouth/upset_skin.webp new file mode 100644 index 00000000..0a1a889f --- /dev/null +++ b/game/characters/tonks/face/mouth/upset_skin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83985230c655b86da05978eac80fcc2c5880f8cde6cec036ca0db07ef8292b8d +size 662 diff --git a/game/characters/tonks/face/pupils/L.webp b/game/characters/tonks/face/pupils/L.webp new file mode 100644 index 00000000..9d63afc2 --- /dev/null +++ b/game/characters/tonks/face/pupils/L.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2596075d8e8992dd3b7f454c4d6eab0b8d9368041f31cf854214d1385fe5e21c +size 1500 diff --git a/game/characters/tonks/face/pupils/R.webp b/game/characters/tonks/face/pupils/R.webp new file mode 100644 index 00000000..65bef1b7 --- /dev/null +++ b/game/characters/tonks/face/pupils/R.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ac1558f15a433b89e8f0f1271c47babc46b676046fc241fdf4126bc20dfbf77 +size 1552 diff --git a/game/characters/tonks/face/pupils/ahegao.webp b/game/characters/tonks/face/pupils/ahegao.webp new file mode 100644 index 00000000..2acb4353 --- /dev/null +++ b/game/characters/tonks/face/pupils/ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:352a63dc3142255754ecab38eba135a78d5173711a94a492dade0d29c5ab27f3 +size 1378 diff --git a/game/characters/tonks/face/pupils/down.webp b/game/characters/tonks/face/pupils/down.webp new file mode 100644 index 00000000..1d993c1b --- /dev/null +++ b/game/characters/tonks/face/pupils/down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8eb7b04f938e10d7e86049380f585633c0bfda28eafd61013dd1624ef300a7a +size 1384 diff --git a/game/characters/tonks/face/pupils/downR.webp b/game/characters/tonks/face/pupils/downR.webp new file mode 100644 index 00000000..3d367926 --- /dev/null +++ b/game/characters/tonks/face/pupils/downR.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d79a1c88f9a7505e08804b615c235d777dd903f1c712a82f278f1d5ba240d44b +size 1566 diff --git a/game/characters/tonks/face/pupils/mid.webp b/game/characters/tonks/face/pupils/mid.webp new file mode 100644 index 00000000..a8aa78ba --- /dev/null +++ b/game/characters/tonks/face/pupils/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5ec36f3528440f005864f20302eca1f93bb48de1a1a7f43725b2b46f4637138 +size 1454 diff --git a/game/characters/tonks/face/pupils/stare.webp b/game/characters/tonks/face/pupils/stare.webp new file mode 100644 index 00000000..4277b649 --- /dev/null +++ b/game/characters/tonks/face/pupils/stare.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1c1e5bb684ce2d70f63d5a26b72389494f4e428a8f9c7e21a0a2ff7cc8e1b41 +size 1382 diff --git a/game/characters/tonks/face/pupils/up.webp b/game/characters/tonks/face/pupils/up.webp new file mode 100644 index 00000000..addc17bd --- /dev/null +++ b/game/characters/tonks/face/pupils/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bfa99915dea9c58e594200d93f0a05084fe17a3ec7d944781c108709654c334 +size 1564 diff --git a/game/characters/tonks/face/tears/tears_mascara.webp b/game/characters/tonks/face/tears/tears_mascara.webp new file mode 100644 index 00000000..50dbd7c6 --- /dev/null +++ b/game/characters/tonks/face/tears/tears_mascara.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc055cff632ec92cb2991ae1d03afef782a600720a9927c2119e2f1f495e2d16 +size 1246 diff --git a/game/characters/tonks/face/tears/tears_tears.webp b/game/characters/tonks/face/tears/tears_tears.webp new file mode 100644 index 00000000..dbd0f478 --- /dev/null +++ b/game/characters/tonks/face/tears/tears_tears.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b8ef00c0ae4705805a147b35045a832d81ea9dc29f38a0cd3fcea33bf9bc15c +size 1386 diff --git a/game/fonts/CREABBB.TTF b/game/fonts/CREABBB.TTF new file mode 100644 index 00000000..ee67632d --- /dev/null +++ b/game/fonts/CREABBB.TTF @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf6abbcb2a8f0134e3b8845a6b5ba46c8e00c66deb2a2c116dcd74991f514dc0 +size 69980 diff --git a/game/gui/CreativeBlockBold.ttf b/game/gui/CreativeBlockBold.ttf new file mode 100644 index 00000000..ee67632d --- /dev/null +++ b/game/gui/CreativeBlockBold.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf6abbcb2a8f0134e3b8845a6b5ba46c8e00c66deb2a2c116dcd74991f514dc0 +size 69980 diff --git a/game/gui/CreativeBlockRegular.ttf b/game/gui/CreativeBlockRegular.ttf new file mode 100644 index 00000000..aa083d03 --- /dev/null +++ b/game/gui/CreativeBlockRegular.ttf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc1a313090cf27d41709e9977b9e468d5b7a4f74ebdb110346be13b4e3375475 +size 22244 diff --git a/game/gui/button/dark_check_foreground.png b/game/gui/button/dark_check_foreground.png new file mode 100644 index 00000000..99d774c9 --- /dev/null +++ b/game/gui/button/dark_check_foreground.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d8b49c02611969e3889b1049741075cb7b9fe5a651a3e1045d23329d4f82a8a +size 147 diff --git a/game/gui/button/dark_check_selected_foreground.png b/game/gui/button/dark_check_selected_foreground.png new file mode 100644 index 00000000..0c6e741e --- /dev/null +++ b/game/gui/button/dark_check_selected_foreground.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04a9e77f37930ede5beb213ecf54d4968d5b4c3e1bfdaf708967ad9daa12972c +size 617 diff --git a/game/gui/button/dark_radio_foreground.png b/game/gui/button/dark_radio_foreground.png new file mode 100644 index 00000000..7651911a --- /dev/null +++ b/game/gui/button/dark_radio_foreground.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27818b766280f03fe86d87d8ed667ba7fc1ca0da2e8752b2b70b8411fd7a05ff +size 188 diff --git a/game/gui/button/dark_radio_selected_foreground.png b/game/gui/button/dark_radio_selected_foreground.png new file mode 100644 index 00000000..6b06a807 --- /dev/null +++ b/game/gui/button/dark_radio_selected_foreground.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb400ae790d250794b37f067c437304e1b3e5d7cb64576216e981eeb8d4de428 +size 186 diff --git a/game/gui/button/hover_background.png b/game/gui/button/hover_background.png new file mode 100644 index 00000000..0e267842 --- /dev/null +++ b/game/gui/button/hover_background.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0ce9a2117cbb01a80baad5eaa8e0135eaf959689271db8e5b089d000c29ed6f +size 84 diff --git a/game/gui/button/idle_background.png b/game/gui/button/idle_background.png new file mode 100644 index 00000000..0e267842 --- /dev/null +++ b/game/gui/button/idle_background.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0ce9a2117cbb01a80baad5eaa8e0135eaf959689271db8e5b089d000c29ed6f +size 84 diff --git a/game/gui/button/light_check_foreground.png b/game/gui/button/light_check_foreground.png new file mode 100644 index 00000000..fffa5f6a --- /dev/null +++ b/game/gui/button/light_check_foreground.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:850e0256639ea0eea88d3beaf99e39459de90c94c123ca916c0cdd92774d9535 +size 147 diff --git a/game/gui/button/light_check_selected_foreground.png b/game/gui/button/light_check_selected_foreground.png new file mode 100644 index 00000000..bfaabb7b --- /dev/null +++ b/game/gui/button/light_check_selected_foreground.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8e4385598a6a7f7da00282d0070f6fa6cbe9746ab77cb47a0b0ab11f24e1a87 +size 599 diff --git a/game/gui/button/light_radio_foreground.png b/game/gui/button/light_radio_foreground.png new file mode 100644 index 00000000..55d2bca7 --- /dev/null +++ b/game/gui/button/light_radio_foreground.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84bf966dd66ce1acfaf158aee4c91c1dc7972bb8ce3697ce4f046c46282b4c6e +size 187 diff --git a/game/gui/button/light_radio_selected_foreground.png b/game/gui/button/light_radio_selected_foreground.png new file mode 100644 index 00000000..e4d12fa1 --- /dev/null +++ b/game/gui/button/light_radio_selected_foreground.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11bc91e08a6b3414657a69c29b79acf79b93a20c1a05cff0f80fe8826a9bbbec +size 186 diff --git a/game/gui/dark_frame.png b/game/gui/dark_frame.png new file mode 100644 index 00000000..5ed7ff3f --- /dev/null +++ b/game/gui/dark_frame.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aea6f1897f6a3468c0442fbed11d4bd00941258256a3b0f259cd310e177a16cf +size 2747 diff --git a/game/gui/dark_frame_tab_selected.png b/game/gui/dark_frame_tab_selected.png new file mode 100644 index 00000000..a67efd7d --- /dev/null +++ b/game/gui/dark_frame_tab_selected.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:432d9cd59a453019e9ebb5e0047a09e258cff4ca58b07c8fad53f824d5183733 +size 652 diff --git a/game/gui/dark_inv_frame.png b/game/gui/dark_inv_frame.png new file mode 100644 index 00000000..32dc0096 --- /dev/null +++ b/game/gui/dark_inv_frame.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36f7c5961170cefdb24d6308736231f949caf6501fae02a60c50d9020022c3e9 +size 904 diff --git a/game/gui/icon.webp b/game/gui/icon.webp new file mode 100644 index 00000000..661150c0 --- /dev/null +++ b/game/gui/icon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa7fdf50874d3483a42704dec0a414ec58f1c40ec24490f3024dcf643e2c760e +size 53438 diff --git a/game/gui/light_frame.png b/game/gui/light_frame.png new file mode 100644 index 00000000..b4d51798 --- /dev/null +++ b/game/gui/light_frame.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d1f39925c820be46040e904d719b52e0697dc0cfb591f0adccdcf78de78a09a +size 2442 diff --git a/game/gui/light_frame_tab_selected.png b/game/gui/light_frame_tab_selected.png new file mode 100644 index 00000000..6cb20b64 --- /dev/null +++ b/game/gui/light_frame_tab_selected.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a78a4aa8300a57b9528fb1883aada3239b79fbf874821c071f920faab29dffd0 +size 667 diff --git a/game/gui/light_inv_frame.png b/game/gui/light_inv_frame.png new file mode 100644 index 00000000..f6d2ee1d --- /dev/null +++ b/game/gui/light_inv_frame.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc26bc21b3a94092489a7cc2cee8d97cf67d582fe8c696e88e5a6e522468cbd5 +size 389 diff --git a/game/gui/logos/discord.webp b/game/gui/logos/discord.webp new file mode 100644 index 00000000..f4a7b652 --- /dev/null +++ b/game/gui/logos/discord.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4957c5d13618444d9c407c3e187e475ced5a2592548f28c1b1b819a9f67ebaac +size 1866 diff --git a/game/gui/logos/patreon.webp b/game/gui/logos/patreon.webp new file mode 100644 index 00000000..6a07fb03 --- /dev/null +++ b/game/gui/logos/patreon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e2295d229cc285c99a5272f914e2430791860a55b629206f5f066aff4482a17 +size 1134 diff --git a/game/gui/logos/silverstudiogames.webp b/game/gui/logos/silverstudiogames.webp new file mode 100644 index 00000000..eb4ad28e --- /dev/null +++ b/game/gui/logos/silverstudiogames.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd3982bf6100ea2a4ce581e6a73c3bb97a90c1741d90e90da1a0e30c8f67a421 +size 1620 diff --git a/game/gui/logos/title.webp b/game/gui/logos/title.webp new file mode 100644 index 00000000..18981bff --- /dev/null +++ b/game/gui/logos/title.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5480426620329bb1550417afd586d90cf76aa1721813ac806d1b8207460cba3b +size 71242 diff --git a/game/gui/main_menu/00.webp b/game/gui/main_menu/00.webp new file mode 100644 index 00000000..0c403099 --- /dev/null +++ b/game/gui/main_menu/00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abdeecd9851161ae49fa8a686081a93d5c922569309ecf880d52f905d69a94a9 +size 1553564 diff --git a/game/gui/main_menu/00b.webp b/game/gui/main_menu/00b.webp new file mode 100644 index 00000000..b8613479 --- /dev/null +++ b/game/gui/main_menu/00b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4615f40075be63f144c474f37f512876f73d01c67e1fdb3afad99d60d2fa5e47 +size 1552042 diff --git a/game/gui/main_menu/01.webp b/game/gui/main_menu/01.webp new file mode 100644 index 00000000..daafe328 --- /dev/null +++ b/game/gui/main_menu/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cd4be205900a9a06f450c7205357c7be7ee734e72aabe6531228d5dc0f2cff6 +size 1552998 diff --git a/game/gui/main_menu/01b.webp b/game/gui/main_menu/01b.webp new file mode 100644 index 00000000..e3e8efe4 --- /dev/null +++ b/game/gui/main_menu/01b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a0b6eda56f58e9ec2c10051599ec33c4da80eedd4267a44be5806d499f9378f +size 1551928 diff --git a/game/gui/main_menu/02.webp b/game/gui/main_menu/02.webp new file mode 100644 index 00000000..80b2ac86 --- /dev/null +++ b/game/gui/main_menu/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:453846852045e77c741effabe6796a2e692687776fa53b209abfc1cb041edce2 +size 1552594 diff --git a/game/gui/main_menu/02b.webp b/game/gui/main_menu/02b.webp new file mode 100644 index 00000000..28ec2029 --- /dev/null +++ b/game/gui/main_menu/02b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3edd174748e2d9bbd9e30220e0a1a6ffeaa3fd4a2df7ab19a08459fc42416eb9 +size 1550820 diff --git a/game/gui/main_menu/candle/fire_01.webp b/game/gui/main_menu/candle/fire_01.webp new file mode 100644 index 00000000..19728b8d --- /dev/null +++ b/game/gui/main_menu/candle/fire_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c3ae7ed85b508fe85b5ad828c4cbc83ce4097d456aae630b7e1563a274ac0f7 +size 2860 diff --git a/game/gui/main_menu/candle/fire_02.webp b/game/gui/main_menu/candle/fire_02.webp new file mode 100644 index 00000000..be9ce66c --- /dev/null +++ b/game/gui/main_menu/candle/fire_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2caa9c60abad2ac96f82de923d53df45ca827696bf87a63629fa42961ba8d19b +size 2912 diff --git a/game/gui/main_menu/candle/fire_03.webp b/game/gui/main_menu/candle/fire_03.webp new file mode 100644 index 00000000..4d4785ac --- /dev/null +++ b/game/gui/main_menu/candle/fire_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3ab442c4f73f92d7e7680a43d02875108c2add1792f45922606e47ea326b61a +size 2580 diff --git a/game/gui/main_menu/candle/fire_04.webp b/game/gui/main_menu/candle/fire_04.webp new file mode 100644 index 00000000..97406c90 --- /dev/null +++ b/game/gui/main_menu/candle/fire_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:702ec4d0c3e6e2a5d977e109b07b48c870765f0fe748fbd89dd519078e700ce4 +size 2890 diff --git a/game/gui/main_menu/candle/fire_05.webp b/game/gui/main_menu/candle/fire_05.webp new file mode 100644 index 00000000..67581286 --- /dev/null +++ b/game/gui/main_menu/candle/fire_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1179e80b663595b0abd29d3d4c4534127fdce261a753c181387333967b57f15a +size 2834 diff --git a/game/gui/main_menu/candle/fire_06.webp b/game/gui/main_menu/candle/fire_06.webp new file mode 100644 index 00000000..ec02e751 --- /dev/null +++ b/game/gui/main_menu/candle/fire_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:730ef814f54d25fb51566aeea48e82c07552cbeeef80af842cfc18e030068e23 +size 2632 diff --git a/game/gui/main_menu/candle/fire_07.webp b/game/gui/main_menu/candle/fire_07.webp new file mode 100644 index 00000000..2b2c90bb --- /dev/null +++ b/game/gui/main_menu/candle/fire_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:320ccd47386e3c3db960b3e5bb8c9972a42ca891321095423c952cbb4db4df19 +size 2756 diff --git a/game/gui/main_menu/candle/fire_08.webp b/game/gui/main_menu/candle/fire_08.webp new file mode 100644 index 00000000..32ab473e --- /dev/null +++ b/game/gui/main_menu/candle/fire_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d8d5d58f6e747fb1b55453a1a39c3c900f260ccb73655c8cbe09db459fbfbfa +size 2404 diff --git a/game/gui/main_menu/candle/fire_09.webp b/game/gui/main_menu/candle/fire_09.webp new file mode 100644 index 00000000..3174f682 --- /dev/null +++ b/game/gui/main_menu/candle/fire_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fe67fef770c130beae614996fca40831d886eddd9460791d40547369365f280 +size 2776 diff --git a/game/gui/main_menu/candle/fire_10.webp b/game/gui/main_menu/candle/fire_10.webp new file mode 100644 index 00000000..c8c56f58 --- /dev/null +++ b/game/gui/main_menu/candle/fire_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dba7558335346d438c5a403a2cdf943971bac5b3e8a446786b8c12e54402969 +size 2618 diff --git a/game/gui/main_menu/fire00.webp b/game/gui/main_menu/fire00.webp new file mode 100644 index 00000000..0ec37d6b --- /dev/null +++ b/game/gui/main_menu/fire00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67200eb214ee4f462ded1cb81adb60fba48e04356a5aba5c19523f61db4182bc +size 100310 diff --git a/game/gui/main_menu/fire01.webp b/game/gui/main_menu/fire01.webp new file mode 100644 index 00000000..0ffd8806 --- /dev/null +++ b/game/gui/main_menu/fire01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55e57d71d3c0d678bbd9d2bbaab7c72efd03de8ced4eb2d02230bcb7fe4c2a6e +size 100118 diff --git a/game/gui/main_menu/fire02.webp b/game/gui/main_menu/fire02.webp new file mode 100644 index 00000000..db8aa699 --- /dev/null +++ b/game/gui/main_menu/fire02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f9258da6f8e0960172a15e78c764373f6edadd6ccf16221c549819a115ad96d +size 103098 diff --git a/game/gui/main_menu/fire03.webp b/game/gui/main_menu/fire03.webp new file mode 100644 index 00000000..c9bdd300 --- /dev/null +++ b/game/gui/main_menu/fire03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74fe6c9cb3deb719ec34493fc132efd396cd375182533bbd50e76494d7f1332d +size 96594 diff --git a/game/gui/main_menu/fire04.webp b/game/gui/main_menu/fire04.webp new file mode 100644 index 00000000..f05096b7 --- /dev/null +++ b/game/gui/main_menu/fire04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d5c435017f6750b12da918a1692759e39a91dd0bdf175b39b39142aa87b6cb0 +size 104388 diff --git a/game/gui/main_menu/fire05.webp b/game/gui/main_menu/fire05.webp new file mode 100644 index 00000000..fd0ed2a5 --- /dev/null +++ b/game/gui/main_menu/fire05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86aed56ad546e54feeed5e56d36566cb69cf28d96b1a9cc75168bc73f665a744 +size 100632 diff --git a/game/gui/main_menu/fire06.webp b/game/gui/main_menu/fire06.webp new file mode 100644 index 00000000..0b58c60f --- /dev/null +++ b/game/gui/main_menu/fire06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a24313160866fbc0f19a8d10d087780eb1b998fc0f03fd95ad5d758eda5e517 +size 100746 diff --git a/game/gui/main_menu/fire07.webp b/game/gui/main_menu/fire07.webp new file mode 100644 index 00000000..8749b07c --- /dev/null +++ b/game/gui/main_menu/fire07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53c7e2b62abf3ccd9df617ad23b8ce3bf0157bf1eac270dc2fab3aa58967d327 +size 99388 diff --git a/game/gui/main_menu/sparkle.webp b/game/gui/main_menu/sparkle.webp new file mode 100644 index 00000000..46c3ac50 --- /dev/null +++ b/game/gui/main_menu/sparkle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d6e20ab1fe1232ac2383c437f3fc68c1a8131010f4680e8ccfc049d64b571f1 +size 950 diff --git a/game/gui/namebox.png b/game/gui/namebox.png new file mode 100644 index 00000000..ca13d207 --- /dev/null +++ b/game/gui/namebox.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:919bcbdeb854db115822a42e5bbdf51515bdb175be90d60ee349a551f0476919 +size 212 diff --git a/game/gui/notify.png b/game/gui/notify.png new file mode 100644 index 00000000..17771c17 --- /dev/null +++ b/game/gui/notify.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4815a46c35e97c56c193378099305c1fa8ee9288286ab0d6f04bdaeb17ceb246 +size 716 diff --git a/game/gui/nvl.png b/game/gui/nvl.png new file mode 100644 index 00000000..17f65985 --- /dev/null +++ b/game/gui/nvl.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ae2ccf4745fe15dc27a04621f8e8f401cbc04d9a24c87e2c6329ee3a745fff8 +size 13519 diff --git a/game/gui/overlay/confirm.png b/game/gui/overlay/confirm.png new file mode 100644 index 00000000..0d8ee96b --- /dev/null +++ b/game/gui/overlay/confirm.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23f14ebf71450cca44b7e529a207a5581d6135211cd5dbc15671887f534411d0 +size 12742 diff --git a/game/gui/overlay/game_menu.png b/game/gui/overlay/game_menu.png new file mode 100644 index 00000000..436c5463 --- /dev/null +++ b/game/gui/overlay/game_menu.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61c50b3b430c8c3743c2b75edc97fb56db2e614168941c1ef0176da4984b6c34 +size 4017 diff --git a/game/gui/overlay/main_menu.png b/game/gui/overlay/main_menu.png new file mode 100644 index 00000000..d453d5f4 --- /dev/null +++ b/game/gui/overlay/main_menu.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6958bb5fbbfecac54a29073098197cbd70cbac910957ee11d2ad25e08515c006 +size 4015 diff --git a/game/gui/scrollbar/dark_horizontal_idle_bar.png b/game/gui/scrollbar/dark_horizontal_idle_bar.png new file mode 100644 index 00000000..27613f11 --- /dev/null +++ b/game/gui/scrollbar/dark_horizontal_idle_bar.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cdf9b4a4cc1b4a967b95fd2ef53316ba82a9801b74cc3fab276fdb11d11b1b09 +size 711 diff --git a/game/gui/scrollbar/dark_vertical_idle_bar.png b/game/gui/scrollbar/dark_vertical_idle_bar.png new file mode 100644 index 00000000..b6f2a91f --- /dev/null +++ b/game/gui/scrollbar/dark_vertical_idle_bar.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5b51c5ccfbc8caf644f984e175b01f298a23e4e5c6837b31ab3108f4c857cac +size 989 diff --git a/game/gui/scrollbar/horizontal_idle_bar.png b/game/gui/scrollbar/horizontal_idle_bar.png new file mode 100644 index 00000000..f51e072b --- /dev/null +++ b/game/gui/scrollbar/horizontal_idle_bar.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2046d3f3654dc7538dbd685a93fc860d0f4654442fee85dae20337c2f1d8b60 +size 349 diff --git a/game/gui/scrollbar/vertical_idle_bar.png b/game/gui/scrollbar/vertical_idle_bar.png new file mode 100644 index 00000000..b4d51798 --- /dev/null +++ b/game/gui/scrollbar/vertical_idle_bar.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d1f39925c820be46040e904d719b52e0697dc0cfb591f0adccdcf78de78a09a +size 2442 diff --git a/game/gui/skip.png b/game/gui/skip.png new file mode 100644 index 00000000..5642988b --- /dev/null +++ b/game/gui/skip.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5dd1f4c06e46833a615b007ccd7c23f2185a0dbbff2e14a913d6ad1e4a9107a2 +size 351 diff --git a/game/gui/slider/dark_empty.png b/game/gui/slider/dark_empty.png new file mode 100644 index 00000000..153a5733 --- /dev/null +++ b/game/gui/slider/dark_empty.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14ad0c8c3e33c8ec7cf27293bb0d1715a2a4f781d4d950a051c133c5f769d8ac +size 202 diff --git a/game/gui/slider/dark_full.png b/game/gui/slider/dark_full.png new file mode 100644 index 00000000..572e5414 --- /dev/null +++ b/game/gui/slider/dark_full.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d56ead6b8d9f585a2865df8be8fa95bcab98388149eae367d217a3620cdfb873 +size 200 diff --git a/game/gui/slider/light_empty.png b/game/gui/slider/light_empty.png new file mode 100644 index 00000000..125ae09e --- /dev/null +++ b/game/gui/slider/light_empty.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30d3cd6ec0149762a731d946a11ab7b50160848b48b552b84bc87c1d324466d6 +size 204 diff --git a/game/gui/slider/light_full.png b/game/gui/slider/light_full.png new file mode 100644 index 00000000..eaba0ef5 --- /dev/null +++ b/game/gui/slider/light_full.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:656be07eb4ba75ebae88702d223f4b1de35b6bf9f3fd283cd54bb12be751fdf8 +size 200 diff --git a/game/gui/splash/legal.webp b/game/gui/splash/legal.webp new file mode 100644 index 00000000..fd73cfbd --- /dev/null +++ b/game/gui/splash/legal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4020465181d365ab3124ba8bd0f0d5199aa86275bad0c9d5f1ea342d8290f43d +size 344080 diff --git a/game/gui/textbox.png b/game/gui/textbox.png new file mode 100644 index 00000000..7a6dc490 --- /dev/null +++ b/game/gui/textbox.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51eed0d898e7e63166b45e2e61cbc72494125759edc211249360a4d9c1847c99 +size 3922 diff --git a/game/images.whitespace b/game/images.whitespace new file mode 100644 index 00000000..7f113a98 --- /dev/null +++ b/game/images.whitespace @@ -0,0 +1,7533 @@ +characters/astoria/body/armleft/on_hips.webp:602,547,191,333 +characters/astoria/body/armleft/on_hips_fix.webp:602,802,68,78 +characters/astoria/body/armright/on_hips.webp:404,570,129,306 +characters/astoria/body/armright/on_hips_fix.webp:443,810,83,74 +characters/astoria/body/base/front.webp:462,320,235,880 +characters/astoria/body/breasts/normal.webp:475,600,198,160 +characters/astoria/body/breasts/normal_tight.webp:475,587,198,173 +characters/astoria/chibis/ag_robe.webp:40,127,119,208 +characters/astoria/chibis/ag_shoes.webp:69,292,60,52 +characters/astoria/chibis/ag_skirt.webp:62,204,68,52 +characters/astoria/chibis/ag_stand_blink.webp:40,25,111,318 +characters/astoria/chibis/ag_top.webp:61,126,72,94 +characters/astoria/chibis/ag_walk_01.webp:40,25,111,318 +characters/astoria/chibis/ag_walk_01_shoes.webp:69,292,60,52 +characters/astoria/chibis/ag_walk_02.webp:40,25,111,324 +characters/astoria/chibis/ag_walk_02_shoes.webp:64,291,53,59 +characters/astoria/chibis/ag_walk_03.webp:40,25,111,321 +characters/astoria/chibis/ag_walk_03_shoes.webp:54,297,81,49 +characters/astoria/chibis/ag_walk_04.webp:40,25,111,320 +characters/astoria/chibis/ag_walk_04_shoes.webp:61,292,73,53 +characters/astoria/chibis/ag_walk_05.webp:40,25,111,318 +characters/astoria/chibis/ag_walk_05_shoes.webp:47,288,98,55 +characters/astoria/chibis/wand.webp:0,0,113,52 +characters/astoria/chibis/wand/ag_head_01.webp:191,25,111,163 +characters/astoria/chibis/wand/ag_head_02.webp:191,25,111,163 +characters/astoria/chibis/wand/ag_shoes.webp:220,291,60,52 +characters/astoria/chibis/wand/ag_skirt.webp:213,204,68,52 +characters/astoria/chibis/wand/ag_stand_01.webp:105,32,183,311 +characters/astoria/chibis/wand/ag_top.webp:205,126,79,94 +characters/astoria/chibis/wand_casting/ag_head_01.webp:191,25,111,163 +characters/astoria/chibis/wand_casting/ag_head_02.webp:191,25,111,163 +characters/astoria/chibis/wand_casting/ag_shoes.webp:198,288,98,55 +characters/astoria/chibis/wand_casting/ag_skirt.webp:213,203,68,53 +characters/astoria/chibis/wand_casting/ag_stand_01.webp:105,98,205,245 +characters/astoria/chibis/wand_casting/ag_stand_02.webp:98,83,212,260 +characters/astoria/chibis/wand_casting/ag_stand_03.webp:109,82,201,261 +characters/astoria/chibis/wand_casting/ag_top.webp:205,126,84,94 +characters/astoria/chibis/wand_casting/sparkles.webp:0,0,38,39 +characters/astoria/chibis/wand_imperio/ag_head_01.webp:191,25,111,163 +characters/astoria/chibis/wand_imperio/ag_head_02.webp:191,25,111,163 +characters/astoria/chibis/wand_imperio/ag_head_03.webp:191,25,111,163 +characters/astoria/chibis/wand_imperio/ag_shoes.webp:196,284,98,56 +characters/astoria/chibis/wand_imperio/ag_shoes_04.webp:198,288,98,55 +characters/astoria/chibis/wand_imperio/ag_skirt.webp:213,203,68,53 +characters/astoria/chibis/wand_imperio/ag_stand_01.webp:105,98,211,242 +characters/astoria/chibis/wand_imperio/ag_stand_02.webp:98,83,218,257 +characters/astoria/chibis/wand_imperio/ag_stand_03.webp:109,82,207,258 +characters/astoria/chibis/wand_imperio/ag_stand_04.webp:98,83,212,260 +characters/astoria/chibis/wand_imperio/ag_top.webp:205,126,84,94 +characters/astoria/chibis/wand_imperio/smoke.webp:0,0,56,128 +characters/astoria/chibis/wand_imperio/sparkles.webp:0,0,38,39 +characters/astoria/clothes/accessory/ann_takamaki/0.webp:285,661,314,228 +characters/astoria/clothes/accessory/ann_takamaki/1.webp:289,664,179,134 +characters/astoria/clothes/accessory/ann_takamaki/outline.webp:284,660,316,229 +characters/astoria/clothes/bottom/pants_1/0.webp:462,836,229,364 +characters/astoria/clothes/bottom/pants_1/1.webp:537,866,12,13 +characters/astoria/clothes/bottom/pants_1/extra.webp:480,938,155,257 +characters/astoria/clothes/bottom/pants_1/outline.webp:461,834,230,366 +characters/astoria/clothes/bottom/pants_1/skin.webp:480,832,178,48 +characters/astoria/clothes/bottom/pants_1_short/0.webp:456,836,237,125 +characters/astoria/clothes/bottom/pants_1_short/1.webp:537,869,12,11 +characters/astoria/clothes/bottom/pants_1_short/extra.webp:456,916,236,45 +characters/astoria/clothes/bottom/pants_1_short/outline.webp:456,834,238,128 +characters/astoria/clothes/bottom/pants_1_short/skin.webp:465,832,220,135 +characters/astoria/clothes/bottom/school_skirt_1/0.webp:449,779,262,393 +characters/astoria/clothes/bottom/school_skirt_1/1.webp:584,809,12,25 +characters/astoria/clothes/bottom/school_skirt_1/outline.webp:448,778,264,398 +characters/astoria/clothes/bottom/school_skirt_2/0.webp:444,779,264,262 +characters/astoria/clothes/bottom/school_skirt_2/1.webp:584,809,12,25 +characters/astoria/clothes/bottom/school_skirt_2/outline.webp:442,778,268,264 +characters/astoria/clothes/bottom/school_skirt_3/0.webp:449,779,251,199 +characters/astoria/clothes/bottom/school_skirt_3/1.webp:584,809,12,25 +characters/astoria/clothes/bottom/school_skirt_3/outline.webp:447,778,255,190 +characters/astoria/clothes/bottom/school_skirt_4/0.webp:452,779,240,199 +characters/astoria/clothes/bottom/school_skirt_4/1.webp:584,809,12,25 +characters/astoria/clothes/bottom/school_skirt_4/outline.webp:453,778,240,160 +characters/astoria/clothes/bra/basic_bra_1/0.webp:476,568,181,174 +characters/astoria/clothes/bra/basic_bra_1/1.webp:476,629,179,97 +characters/astoria/clothes/bra/basic_bra_1/outline.webp:468,567,191,176 +characters/astoria/clothes/bra/basic_bra_1/skin.webp:507,571,151,163 +characters/astoria/clothes/bra/basic_bra_2/0.webp:476,568,181,174 +characters/astoria/clothes/bra/basic_bra_2/outline.webp:468,567,191,176 +characters/astoria/clothes/bra/basic_bra_2/skin.webp:507,571,151,163 +characters/astoria/clothes/gloves/ann_takamaki/0.webp:398,769,357,115 +characters/astoria/clothes/gloves/ann_takamaki/outline.webp:397,769,360,116 +characters/astoria/clothes/hair/ann_takamaki/0.webp:430,313,300,372 +characters/astoria/clothes/hair/ann_takamaki/0_front.webp:438,499,265,186 +characters/astoria/clothes/hair/ann_takamaki/1.webp:432,312,295,371 +characters/astoria/clothes/hair/ann_takamaki/1_front.webp:458,499,245,184 +characters/astoria/clothes/hair/ann_takamaki/2.webp:606,384,21,22 +characters/astoria/clothes/hair/ann_takamaki/outline.webp:429,312,299,374 +characters/astoria/clothes/hair/ann_takamaki/outline_front.webp:456,500,248,186 +characters/astoria/clothes/hair/ann_takamaki/skin.webp:503,371,119,50 +characters/astoria/clothes/hair/base/0.webp:416,307,315,342 +characters/astoria/clothes/hair/base/0_front.webp:605,519,16,47 +characters/astoria/clothes/hair/base/1.webp:416,308,301,341 +characters/astoria/clothes/hair/base/1_front.webp:606,519,15,47 +characters/astoria/clothes/hair/base/outline.webp:415,307,326,339 +characters/astoria/clothes/hair/base/outline_front.webp:604,519,21,52 +characters/astoria/clothes/hair/base/skin.webp:484,369,122,56 +characters/astoria/clothes/hair/short/0.webp:474,313,206,248 +characters/astoria/clothes/hair/short/0_front.webp:606,520,41,25 +characters/astoria/clothes/hair/short/1.webp:474,312,199,254 +characters/astoria/clothes/hair/short/1_front.webp:607,520,40,26 +characters/astoria/clothes/hair/short/outline.webp:472,312,208,241 +characters/astoria/clothes/hair/short/outline_front.webp:606,520,44,26 +characters/astoria/clothes/hair/short/skin.webp:484,369,122,56 +characters/astoria/clothes/headgear/ann_takamaki/0.webp:486,307,159,167 +characters/astoria/clothes/headgear/ann_takamaki/1.webp:492,308,152,164 +characters/astoria/clothes/headgear/ann_takamaki/outline.webp:486,306,160,168 +characters/astoria/clothes/makeup/lipstick/angry.webp:533,491,37,18 +characters/astoria/clothes/makeup/lipstick/annoyed.webp:523,490,22,12 +characters/astoria/clothes/makeup/lipstick/base.webp:529,496,33,13 +characters/astoria/clothes/makeup/lipstick/clench.webp:533,487,43,25 +characters/astoria/clothes/makeup/lipstick/grin.webp:526,490,38,22 +characters/astoria/clothes/makeup/lipstick/horny.webp:528,492,37,11 +characters/astoria/clothes/makeup/lipstick/open.webp:531,492,32,23 +characters/astoria/clothes/makeup/lipstick/scream.webp:530,490,32,38 +characters/astoria/clothes/makeup/lipstick/smile.webp:523,489,47,25 +characters/astoria/clothes/makeup/lipstick/upset.webp:531,495,27,11 +characters/astoria/clothes/panties/basic_panties_1/0.webp:470,846,207,112 +characters/astoria/clothes/panties/basic_panties_1/1.webp:474,854,198,92 +characters/astoria/clothes/panties/basic_panties_1/outline.webp:469,843,212,116 +characters/astoria/clothes/panties/basic_panties_1/skin.webp:475,843,196,118 +characters/astoria/clothes/panties/basic_panties_2/0.webp:470,846,207,112 +characters/astoria/clothes/panties/basic_panties_2/outline.webp:469,843,212,116 +characters/astoria/clothes/panties/basic_panties_2/skin.webp:475,843,196,118 +characters/astoria/clothes/pubes/arrow/0.webp:532,898,26,37 +characters/astoria/clothes/pubes/arrow/outline.webp:532,899,25,34 +characters/astoria/clothes/pubes/beaver/0.webp:525,894,47,69 +characters/astoria/clothes/pubes/beaver/outline.webp:526,897,46,68 +characters/astoria/clothes/pubes/stuble/0.webp:522,908,54,39 +characters/astoria/clothes/pubes/unshaved/0.webp:524,907,48,50 +characters/astoria/clothes/stockings/ann_takamaki/0.webp:463,966,227,234 +characters/astoria/clothes/stockings/ann_takamaki/0_front.webp:463,966,227,234 +characters/astoria/clothes/stockings/ann_takamaki/1.webp:485,977,175,210 +characters/astoria/clothes/stockings/ann_takamaki/1_front.webp:485,977,175,210 +characters/astoria/clothes/stockings/ann_takamaki/outline.webp:463,964,229,236 +characters/astoria/clothes/stockings/ann_takamaki/outline_front.webp:463,964,229,236 +characters/astoria/clothes/stockings/pantyhose/0.webp:463,838,226,362 +characters/astoria/clothes/stockings/pantyhose/outline.webp:462,837,228,363 +characters/astoria/clothes/top/ann_takamaki/0.webp:405,529,387,671 +characters/astoria/clothes/top/ann_takamaki/1.webp:487,529,174,671 +characters/astoria/clothes/top/ann_takamaki/2.webp:434,579,341,603 +characters/astoria/clothes/top/ann_takamaki/outline.webp:404,528,389,672 +characters/astoria/clothes/top/top_school_1/0.webp:439,521,308,286 +characters/astoria/clothes/top/top_school_1/1.webp:475,559,190,305 +characters/astoria/clothes/top/top_school_1/2.webp:444,549,296,330 +characters/astoria/clothes/top/top_school_1/3.webp:448,552,287,327 +characters/astoria/clothes/top/top_school_1/outline.webp:436,520,313,361 +characters/astoria/clothes/top/top_school_1/skin.webp:480,849,178,34 +characters/astoria/clothes/top/top_school_2/0.webp:439,521,308,286 +characters/astoria/clothes/top/top_school_2/1.webp:476,559,189,306 +characters/astoria/clothes/top/top_school_2/2.webp:444,549,296,330 +characters/astoria/clothes/top/top_school_2/3.webp:448,552,287,327 +characters/astoria/clothes/top/top_school_2/extra.webp:552,630,9,12 +characters/astoria/clothes/top/top_school_2/outline.webp:436,520,313,361 +characters/astoria/clothes/top/top_school_2/skin.webp:480,849,178,34 +characters/astoria/clothes/top/top_school_3/0.webp:439,521,308,286 +characters/astoria/clothes/top/top_school_3/1.webp:444,580,296,169 +characters/astoria/clothes/top/top_school_3/2.webp:448,575,287,189 +characters/astoria/clothes/top/top_school_3/extra.webp:545,782,9,14 +characters/astoria/clothes/top/top_school_3/outline.webp:436,520,313,288 +characters/astoria/clothes/top/top_school_4/0.webp:439,521,308,286 +characters/astoria/clothes/top/top_school_4/1.webp:444,618,296,77 +characters/astoria/clothes/top/top_school_4/2.webp:448,625,287,64 +characters/astoria/clothes/top/top_school_4/extra.webp:543,631,16,165 +characters/astoria/clothes/top/top_school_4/outline.webp:436,520,313,288 +characters/astoria/clothes/top/top_school_5/0.webp:439,521,308,286 +characters/astoria/clothes/top/top_school_5/1.webp:444,618,296,77 +characters/astoria/clothes/top/top_school_5/2.webp:448,625,287,64 +characters/astoria/clothes/top/top_school_5/extra.webp:543,664,10,132 +characters/astoria/clothes/top/top_school_5/outline.webp:436,520,313,288 +characters/astoria/clothes/top/top_school_5/skin.webp:542,583,45,67 +characters/astoria/clothes/top/top_school_6/0.webp:476,559,189,306 +characters/astoria/clothes/top/top_school_6/1.webp:478,548,202,331 +characters/astoria/clothes/top/top_school_6/2.webp:482,552,193,327 +characters/astoria/clothes/top/top_school_6/outline.webp:475,547,207,334 +characters/astoria/clothes/top/top_school_6/skin.webp:480,576,198,307 +characters/astoria/emotes/angry.webp:578,369,45,43 +characters/astoria/emotes/confused.webp:405,254,127,99 +characters/astoria/emotes/happy.webp:419,221,123,146 +characters/astoria/emotes/hearts.webp:373,206,175,146 +characters/astoria/emotes/shocked.webp:399,223,136,128 +characters/astoria/emotes/sweat.webp:574,350,42,67 +characters/astoria/face/cheeks/blush.webp:497,436,118,56 +characters/astoria/face/eyebrows/angry.webp:495,401,111,42 +characters/astoria/face/eyebrows/base.webp:496,402,107,33 +characters/astoria/face/eyebrows/worried.webp:495,403,111,35 +characters/astoria/face/eyes/base.webp:489,421,122,30 +characters/astoria/face/eyes/base_mask.webp:505,427,88,20 +characters/astoria/face/eyes/closed.webp:489,421,122,30 +characters/astoria/face/eyes/narrow.webp:489,421,122,30 +characters/astoria/face/eyes/narrow_mask.webp:506,432,88,15 +characters/astoria/face/eyes/wink.webp:489,421,122,30 +characters/astoria/face/eyes/wink_mask.webp:559,427,35,18 +characters/astoria/face/mouth/angry.webp:533,492,37,17 +characters/astoria/face/mouth/annoyed.webp:523,490,22,12 +characters/astoria/face/mouth/base.webp:529,497,34,12 +characters/astoria/face/mouth/clench.webp:528,486,48,29 +characters/astoria/face/mouth/grin.webp:526,490,38,22 +characters/astoria/face/mouth/horny.webp:528,493,37,10 +characters/astoria/face/mouth/open.webp:531,492,32,22 +characters/astoria/face/mouth/scream.webp:507,484,97,53 +characters/astoria/face/mouth/smile.webp:523,488,49,28 +characters/astoria/face/mouth/upset.webp:531,495,27,16 +characters/astoria/face/pupils/L.webp:505,425,76,23 +characters/astoria/face/pupils/R.webp:513,424,76,23 +characters/astoria/face/pupils/ahegao.webp:510,421,76,22 +characters/astoria/face/pupils/down.webp:510,428,76,23 +characters/astoria/face/pupils/mid.webp:511,424,76,23 +characters/astoria/face/pupils/up.webp:509,421,82,23 +characters/astoria/face/tears/crying.webp:512,562,114,16 +characters/chibis/cloth_pile_g.webp:2,2,188,52 +characters/chibis/cloth_pile_h.webp:2,2,188,52 +characters/chibis/cloth_pile_r.webp:2,2,188,52 +characters/chibis/cloth_pile_s.webp:2,2,188,52 +characters/chibis/panties_on_the_groun.webp:0,0,197,79 +characters/cho/body/armleft/down.webp:601,560,124,529 +characters/cho/body/armleft/down_fix.webp:653,843,72,246 +characters/cho/body/armright/down.webp:468,526,125,432 +characters/cho/body/armright/down_fix.webp:0,0,0,0 +characters/cho/body/armright/up.webp:420,446,148,326 +characters/cho/body/base/front.webp:456,332,239,868 +characters/cho/body/breasts/normal.webp:467,537,224,249 +characters/cho/chibis/cc_gloves.webp:34,188,108,62 +characters/cho/chibis/cc_quid_robe.webp:50,121,104,205 +characters/cho/chibis/cc_quid_robe_fix.webp:65,133,66,178 +characters/cho/chibis/cc_quid_shoes.webp:70,268,58,75 +characters/cho/chibis/cc_robe.webp:41,121,119,208 +characters/cho/chibis/cc_shoes.webp:69,293,59,51 +characters/cho/chibis/cc_skirt.webp:53,203,82,63 +characters/cho/chibis/cc_stand_blink.webp:34,19,113,324 +characters/cho/chibis/cc_sweater.webp:45,128,89,104 +characters/cho/chibis/cc_top.webp:61,118,69,98 +characters/cho/chibis/cc_trousers.webp:69,202,56,127 +characters/cho/chibis/cc_walk_01.webp:34,19,113,324 +characters/cho/chibis/cc_walk_01_quid_shoes.webp:70,268,58,75 +characters/cho/chibis/cc_walk_01_shoes.webp:69,293,59,51 +characters/cho/chibis/cc_walk_01_trousers.webp:69,202,56,127 +characters/cho/chibis/cc_walk_02.webp:34,19,113,330 +characters/cho/chibis/cc_walk_02_quid_shoes.webp:66,274,51,75 +characters/cho/chibis/cc_walk_02_shoes.webp:65,291,53,59 +characters/cho/chibis/cc_walk_02_trousers.webp:65,202,55,147 +characters/cho/chibis/cc_walk_03.webp:34,19,113,327 +characters/cho/chibis/cc_walk_03_quid_shoes.webp:55,272,79,74 +characters/cho/chibis/cc_walk_03_shoes.webp:54,297,81,49 +characters/cho/chibis/cc_walk_03_trousers.webp:54,202,80,144 +characters/cho/chibis/cc_walk_04.webp:34,19,113,326 +characters/cho/chibis/cc_walk_04_quid_shoes.webp:61,268,72,77 +characters/cho/chibis/cc_walk_04_shoes.webp:61,292,73,53 +characters/cho/chibis/cc_walk_04_trousers.webp:61,202,71,143 +characters/cho/chibis/cc_walk_05.webp:34,19,113,324 +characters/cho/chibis/cc_walk_05_quid_shoes.webp:48,270,97,73 +characters/cho/chibis/cc_walk_05_shoes.webp:47,288,98,55 +characters/cho/chibis/cc_walk_05_trousers.webp:47,202,98,141 +characters/cho/chibis/fly/cc_fly_idle0.webp:100,22,324,266 +characters/cho/chibis/fly/cc_fly_idle1.webp:100,22,324,266 +characters/cho/chibis/fly/cc_gloves.webp:228,186,33,44 +characters/cho/chibis/fly/cc_quid_robe.webp:211,116,152,193 +characters/cho/chibis/fly/cc_quid_shoes.webp:224,238,104,49 +characters/cho/chibis/fly/cc_robe.webp:0,0,0,0 +characters/cho/chibis/fly/cc_shoes.webp:241,239,87,49 +characters/cho/chibis/fly/cc_skirt.webp:241,185,68,58 +characters/cho/chibis/fly/cc_sweater.webp:210,115,85,107 +characters/cho/chibis/fly/cc_top.webp:210,112,73,102 +characters/cho/chibis/fly/cc_trousers.webp:211,187,97,83 +characters/cho/chibis/fly_move/cc_fly0.webp:100,32,323,246 +characters/cho/chibis/fly_move/cc_fly1.webp:100,32,323,246 +characters/cho/chibis/fly_move/cc_gloves.webp:216,190,31,43 +characters/cho/chibis/fly_move/cc_quid_robe.webp:189,120,170,178 +characters/cho/chibis/fly_move/cc_quid_shoes.webp:220,240,105,38 +characters/cho/chibis/fly_move/cc_robe_fly.webp:0,0,0,0 +characters/cho/chibis/fly_move/cc_shoes.webp:237,239,88,39 +characters/cho/chibis/fly_move/cc_skirt.webp:242,183,56,55 +characters/cho/chibis/fly_move/cc_sweater.webp:189,119,91,105 +characters/cho/chibis/fly_move/cc_top.webp:189,116,78,93 +characters/cho/chibis/fly_move/cc_trousers.webp:205,185,92,86 +characters/cho/clothes/accessory/body_wrap/0.webp:487,715,165,124 +characters/cho/clothes/accessory/body_wrap/outline.webp:485,713,168,128 +characters/cho/clothes/accessory/chun_li_shoulders/0.webp:446,537,304,167 +characters/cho/clothes/accessory/chun_li_shoulders/1.webp:454,628,284,80 +characters/cho/clothes/accessory/chun_li_shoulders/extra.webp:454,645,283,63 +characters/cho/clothes/accessory/chun_li_shoulders/outline.webp:443,534,311,176 +characters/cho/clothes/accessory/panties_in_hand/0.webp:39,508,116,197 +characters/cho/clothes/accessory/panties_in_hand/outline.webp:37,506,122,203 +characters/cho/clothes/accessory/protectors1/0.webp:0,0,0,0 +characters/cho/clothes/accessory/protectors1/extra.webp:0,0,0,0 +characters/cho/clothes/accessory/protectors2/0.webp:0,0,0,0 +characters/cho/clothes/accessory/protectors2/extra.webp:0,0,0,0 +characters/cho/clothes/accessory/suspenders/0.webp:478,562,175,324 +characters/cho/clothes/accessory/suspenders/1.webp:504,885,75,10 +characters/cho/clothes/accessory/suspenders/outline.webp:473,557,182,342 +characters/cho/clothes/accessory/suspenders/suspenders_1.webp:473,557,182,342 +characters/cho/clothes/bottom/j_school_skirt_1/0.webp:415,782,351,356 +characters/cho/clothes/bottom/j_school_skirt_1/outline.webp:414,778,354,353 +characters/cho/clothes/bottom/j_school_skirt_1/skin.webp:504,790,159,354 +characters/cho/clothes/bottom/pants_long_1/0.webp:457,871,243,329 +characters/cho/clothes/bottom/pants_long_1/outline.webp:454,870,247,330 +characters/cho/clothes/bottom/pants_long_2/0.webp:458,847,235,353 +characters/cho/clothes/bottom/pants_long_2/1.webp:542,878,10,12 +characters/cho/clothes/bottom/pants_long_2/outline.webp:456,845,239,355 +characters/cho/clothes/bottom/pants_short_1/0.webp:457,871,242,124 +characters/cho/clothes/bottom/pants_short_1/outline.webp:454,870,247,128 +characters/cho/clothes/bottom/pants_short_2/0.webp:457,866,234,103 +characters/cho/clothes/bottom/pants_short_2/1.webp:538,904,9,9 +characters/cho/clothes/bottom/pants_short_2/extra.webp:464,874,194,88 +characters/cho/clothes/bottom/pants_short_2/outline.webp:451,858,245,118 +characters/cho/clothes/bottom/pants_short_2/skin.webp:461,888,218,90 +characters/cho/clothes/bottom/pants_short_3/0.webp:457,856,235,106 +characters/cho/clothes/bottom/pants_short_3/1.webp:454,939,241,36 +characters/cho/clothes/bottom/pants_short_3/2.webp:532,893,13,12 +characters/cho/clothes/bottom/pants_short_3/outline.webp:453,855,242,122 +characters/cho/clothes/bottom/pants_short_4/0.webp:458,847,235,154 +characters/cho/clothes/bottom/pants_short_4/1.webp:542,878,10,12 +characters/cho/clothes/bottom/pants_short_4/outline.webp:456,845,239,157 +characters/cho/clothes/bottom/police_skirt/0.webp:456,832,245,176 +characters/cho/clothes/bottom/police_skirt/1.webp:645,856,31,101 +characters/cho/clothes/bottom/police_skirt/2.webp:477,827,180,41 +characters/cho/clothes/bottom/police_skirt/3.webp:526,845,49,24 +characters/cho/clothes/bottom/police_skirt/outline.webp:454,824,248,184 +characters/cho/clothes/bottom/police_skirt/skin.webp:464,831,223,179 +characters/cho/clothes/bottom/quid_skirt_1/0.webp:441,848,271,193 +characters/cho/clothes/bottom/quid_skirt_1/1.webp:441,844,271,197 +characters/cho/clothes/bottom/quid_skirt_1/extra.webp:442,845,270,190 +characters/cho/clothes/bottom/quid_skirt_1/outline.webp:416,836,306,220 +characters/cho/clothes/bottom/quid_skirt_1/skin.webp:469,844,213,205 +characters/cho/clothes/bottom/school_skirt_1/0.webp:449,779,262,393 +characters/cho/clothes/bottom/school_skirt_1/1.webp:584,809,12,25 +characters/cho/clothes/bottom/school_skirt_1/outline.webp:448,778,264,398 +characters/cho/clothes/bottom/school_skirt_2/0.webp:444,779,264,262 +characters/cho/clothes/bottom/school_skirt_2/1.webp:584,809,12,25 +characters/cho/clothes/bottom/school_skirt_2/outline.webp:442,778,268,264 +characters/cho/clothes/bottom/school_skirt_3/0.webp:449,779,251,199 +characters/cho/clothes/bottom/school_skirt_3/1.webp:584,809,12,25 +characters/cho/clothes/bottom/school_skirt_3/outline.webp:447,778,255,190 +characters/cho/clothes/bottom/school_skirt_4/0.webp:452,779,240,199 +characters/cho/clothes/bottom/school_skirt_4/1.webp:584,809,12,25 +characters/cho/clothes/bottom/school_skirt_4/outline.webp:453,778,240,160 +characters/cho/clothes/bottom/skirt_short_1/0.webp:443,894,276,117 +characters/cho/clothes/bottom/skirt_short_1/outline.webp:441,891,280,122 +characters/cho/clothes/bottom/skirt_short_2/0.webp:454,874,240,104 +characters/cho/clothes/bottom/skirt_short_2/outline.webp:452,872,245,111 +characters/cho/clothes/bottom/skirt_short_2/skin.webp:461,879,217,108 +characters/cho/clothes/bottom/toon_shorts/0.webp:455,829,240,174 +characters/cho/clothes/bottom/toon_shorts/1.webp:459,862,235,140 +characters/cho/clothes/bottom/toon_shorts/outline.webp:454,827,243,178 +characters/cho/clothes/bottom/toon_shorts/skin.webp:462,826,225,184 +characters/cho/clothes/bra/basic_bra_1/0.webp:467,561,189,176 +characters/cho/clothes/bra/basic_bra_1/1.webp:509,581,132,115 +characters/cho/clothes/bra/basic_bra_1/extra.webp:512,581,126,110 +characters/cho/clothes/bra/basic_bra_1/outline.webp:466,561,192,177 +characters/cho/clothes/bra/basic_bra_1/skin.webp:500,567,153,169 +characters/cho/clothes/bra/basic_bra_2/0.webp:475,616,179,75 +characters/cho/clothes/bra/basic_bra_2/1.webp:465,561,194,168 +characters/cho/clothes/bra/basic_bra_2/2.webp:510,582,139,16 +characters/cho/clothes/bra/basic_bra_2/outline.webp:463,561,199,170 +characters/cho/clothes/bra/basic_bra_2/skin.webp:476,568,186,166 +characters/cho/clothes/bra/bikini_top_1/0.webp:467,533,188,185 +characters/cho/clothes/bra/bikini_top_1/extra.webp:466,573,174,115 +characters/cho/clothes/bra/bikini_top_1/outline.webp:466,529,189,191 +characters/cho/clothes/bra/bikini_top_1/skin.webp:473,551,179,156 +characters/cho/clothes/bra/bikini_top_2/0.webp:468,553,166,121 +characters/cho/clothes/bra/bikini_top_2/outline.webp:467,551,186,134 +characters/cho/clothes/bra/lace_bra_1/0.webp:498,690,157,61 +characters/cho/clothes/bra/lace_bra_1/1.webp:465,562,191,191 +characters/cho/clothes/bra/lace_bra_1/2.webp:533,677,27,27 +characters/cho/clothes/bra/lace_bra_1/outline.webp:464,561,193,193 +characters/cho/clothes/bra/lace_bra_1/skin.webp:472,567,183,182 +characters/cho/clothes/bra/lace_bra_2/0.webp:465,562,190,181 +characters/cho/clothes/bra/lace_bra_2/1.webp:498,687,157,62 +characters/cho/clothes/bra/lace_bra_2/2.webp:499,692,155,58 +characters/cho/clothes/bra/lace_bra_2/3.webp:535,677,29,28 +characters/cho/clothes/bra/lace_bra_2/outline.webp:463,561,193,191 +characters/cho/clothes/bra/sport_bra_1/0.webp:467,556,189,198 +characters/cho/clothes/bra/sport_bra_1/extra.webp:469,573,166,124 +characters/cho/clothes/bra/sport_bra_1/outline.webp:466,555,192,200 +characters/cho/clothes/bra/sport_bra_1/skin.webp:504,567,149,187 +characters/cho/clothes/earrings/basic/0.webp:613,472,11,12 +characters/cho/clothes/earrings/basic/outline.webp:563,441,106,91 +characters/cho/clothes/earrings/feather/0.webp:616,481,15,61 +characters/cho/clothes/earrings/feather/1.webp:621,515,10,28 +characters/cho/clothes/earrings/feather/2.webp:614,463,11,20 +characters/cho/clothes/earrings/feather/outline.webp:613,462,19,83 +characters/cho/clothes/earrings/snitch/0.webp:600,472,53,24 +characters/cho/clothes/earrings/snitch/1.webp:612,477,13,13 +characters/cho/clothes/earrings/snitch/extra.webp:617,466,4,15 +characters/cho/clothes/earrings/snitch/outline.webp:580,450,85,65 +characters/cho/clothes/garterbelt/lace_garter_1/0.webp:480,799,157,206 +characters/cho/clothes/garterbelt/lace_garter_1/1.webp:480,805,172,65 +characters/cho/clothes/garterbelt/lace_garter_1/2.webp:480,809,172,62 +characters/cho/clothes/garterbelt/lace_garter_1/3.webp:484,815,121,185 +characters/cho/clothes/garterbelt/lace_garter_1/outline.webp:478,797,175,210 +characters/cho/clothes/garterbelt/lace_garter_1/skin.webp:486,801,152,192 +characters/cho/clothes/glasses/aviators/0.webp:487,417,138,44 +characters/cho/clothes/glasses/aviators/1.webp:484,417,141,45 +characters/cho/clothes/glasses/aviators/outline.webp:484,417,142,46 +characters/cho/clothes/glasses/glasses1/0.webp:490,431,100,18 +characters/cho/clothes/glasses/glasses1/extra.webp:497,427,101,30 +characters/cho/clothes/glasses/glasses1/outline.webp:484,424,129,31 +characters/cho/clothes/glasses/goggles/0.webp:481,351,124,38 +characters/cho/clothes/glasses/goggles/1.webp:481,340,134,59 +characters/cho/clothes/glasses/goggles/extra.webp:483,332,181,109 +characters/cho/clothes/glasses/goggles/outline.webp:479,331,186,116 +characters/cho/clothes/glasses/goggles/skin.webp:494,364,142,55 +characters/cho/clothes/glasses/goggles_face/0.webp:719,339,108,36 +characters/cho/clothes/glasses/goggles_face/1.webp:720,331,115,53 +characters/cho/clothes/glasses/goggles_face/extra.webp:720,324,145,68 +characters/cho/clothes/glasses/goggles_face/outline.webp:718,322,145,71 +characters/cho/clothes/glasses/goggles_face/skin.webp:494,364,142,55 +characters/cho/clothes/gloves/quidditch/0.webp:693,907,7,42 +characters/cho/clothes/gloves/quidditch/0_front.webp:693,907,7,42 +characters/cho/clothes/gloves/quidditch/extra.webp:465,793,265,231 +characters/cho/clothes/gloves/quidditch/outline.webp:465,792,265,232 +characters/cho/clothes/gloves/quidditch/outline_front.webp:658,797,72,227 +characters/cho/clothes/hair/pigtails/0.webp:436,310,280,198 +characters/cho/clothes/hair/pigtails/1.webp:436,310,280,245 +characters/cho/clothes/hair/pigtails/2.webp:472,364,210,42 +characters/cho/clothes/hair/pigtails/outline.webp:432,309,284,207 +characters/cho/clothes/hair/pigtails/skin.webp:492,369,92,53 +characters/cho/clothes/hair/ponytail/0.webp:459,321,253,256 +characters/cho/clothes/hair/ponytail/1.webp:489,347,217,228 +characters/cho/clothes/hair/ponytail/outline.webp:458,321,255,256 +characters/cho/clothes/hair/ponytail/skin.webp:494,389,137,55 +characters/cho/clothes/hair/smurfette/0.webp:447,314,317,229 +characters/cho/clothes/hair/smurfette/0_back.webp:428,414,336,252 +characters/cho/clothes/hair/smurfette/1.webp:442,325,315,218 +characters/cho/clothes/hair/smurfette/1_back.webp:430,337,327,280 +characters/cho/clothes/hair/smurfette/outline.webp:425,313,340,355 +characters/cho/clothes/hair/smurfette/outline_back.webp:425,345,339,322 +characters/cho/clothes/hair/smurfette/skin.webp:496,406,116,21 +characters/cho/clothes/headgear/catears/0.webp:499,297,130,74 +characters/cho/clothes/headgear/catears/extra.webp:505,320,109,32 +characters/cho/clothes/headgear/catears/outline.webp:496,293,136,79 +characters/cho/clothes/headgear/chun_li_puffies/0.webp:502,306,187,253 +characters/cho/clothes/headgear/chun_li_puffies/outline.webp:499,303,191,258 +characters/cho/clothes/headgear/goggles/0.webp:476,350,122,37 +characters/cho/clothes/headgear/goggles/1.webp:476,340,133,57 +characters/cho/clothes/headgear/goggles/extra.webp:477,331,179,106 +characters/cho/clothes/headgear/goggles/outline.webp:473,330,184,112 +characters/cho/clothes/headgear/goggles/skin.webp:494,364,142,55 +characters/cho/clothes/headgear/police_cap/0.webp:483,280,176,77 +characters/cho/clothes/headgear/police_cap/1.webp:615,362,12,13 +characters/cho/clothes/headgear/police_cap/2.webp:472,348,184,63 +characters/cho/clothes/headgear/police_cap/3.webp:507,303,32,43 +characters/cho/clothes/headgear/police_cap/outline.webp:471,278,188,131 +characters/cho/clothes/headgear/smurfette/0.webp:520,237,169,168 +characters/cho/clothes/headgear/smurfette/outline.webp:518,236,173,172 +characters/cho/clothes/headgear/toon_band/0.webp:633,339,34,45 +characters/cho/clothes/headgear/toon_band/outline.webp:630,337,39,49 +characters/cho/clothes/headgear/witch/0.webp:438,177,257,231 +characters/cho/clothes/headgear/witch/1.webp:483,311,150,69 +characters/cho/clothes/headgear/witch/outline.webp:433,172,270,241 +characters/cho/clothes/headgear/witch/skin.webp:493,389,130,29 +characters/cho/clothes/makeup/blush/0.webp:495,430,127,71 +characters/cho/clothes/makeup/blush/outline.webp:499,441,111,49 +characters/cho/clothes/makeup/lipstick/angry.webp:527,482,48,25 +characters/cho/clothes/makeup/lipstick/annoyed.webp:523,484,30,21 +characters/cho/clothes/makeup/lipstick/base.webp:526,487,41,15 +characters/cho/clothes/makeup/lipstick/clench.webp:526,479,51,28 +characters/cho/clothes/makeup/lipstick/crooked_smile.webp:524,481,50,30 +characters/cho/clothes/makeup/lipstick/disgust.webp:525,489,48,21 +characters/cho/clothes/makeup/lipstick/grin.webp:522,481,52,32 +characters/cho/clothes/makeup/lipstick/horny.webp:527,487,43,15 +characters/cho/clothes/makeup/lipstick/mad.webp:528,487,43,23 +characters/cho/clothes/makeup/lipstick/normal.webp:526,487,35,15 +characters/cho/clothes/makeup/lipstick/open.webp:531,485,30,29 +characters/cho/clothes/makeup/lipstick/open_tongue.webp:531,485,30,29 +characters/cho/clothes/makeup/lipstick/open_wide_tongue.webp:526,482,38,42 +characters/cho/clothes/makeup/lipstick/quiver.webp:525,487,41,17 +characters/cho/clothes/makeup/lipstick/scream.webp:526,482,38,44 +characters/cho/clothes/makeup/lipstick/silly.webp:525,485,41,28 +characters/cho/clothes/makeup/lipstick/smile.webp:526,486,42,20 +characters/cho/clothes/makeup/lipstick/soft.webp:529,486,31,22 +characters/cho/clothes/makeup/lipstick/upset.webp:528,489,31,17 +characters/cho/clothes/neckwear/choker_lace_1/0.webp:554,523,68,35 +characters/cho/clothes/neckwear/choker_lace_1/1.webp:552,521,70,42 +characters/cho/clothes/neckwear/choker_lace_1/outline.webp:550,520,74,45 +characters/cho/clothes/neckwear/choker_medallion/0.webp:559,534,60,21 +characters/cho/clothes/neckwear/choker_medallion/extra.webp:561,557,22,21 +characters/cho/clothes/neckwear/choker_medallion/outline.webp:557,531,63,26 +characters/cho/clothes/neckwear/collar_leather_1/0.webp:542,528,94,64 +characters/cho/clothes/neckwear/collar_leather_1/extra.webp:554,586,19,17 +characters/cho/clothes/neckwear/collar_leather_1/outline.webp:544,531,90,75 +characters/cho/clothes/neckwear/tie_1/0.webp:521,544,106,220 +characters/cho/clothes/neckwear/tie_1/1.webp:521,536,111,240 +characters/cho/clothes/neckwear/tie_1/outline.webp:519,535,113,242 +characters/cho/clothes/neckwear/tie_1/skin.webp:543,576,76,202 +characters/cho/clothes/panties/basic_panties_1/0.webp:468,845,210,114 +characters/cho/clothes/panties/basic_panties_1/1.webp:517,870,46,25 +characters/cho/clothes/panties/basic_panties_1/outline.webp:467,844,214,115 +characters/cho/clothes/panties/basic_panties_1/skin.webp:468,850,197,79 +characters/cho/clothes/panties/bikini_bottom_1/0.webp:480,826,169,133 +characters/cho/clothes/panties/bikini_bottom_1/outline.webp:479,824,171,135 +characters/cho/clothes/panties/bikini_bottom_2/0.webp:480,826,169,132 +characters/cho/clothes/panties/bikini_bottom_2/outline.webp:479,824,171,134 +characters/cho/clothes/panties/lace_panties_1/0.webp:465,848,204,110 +characters/cho/clothes/panties/lace_panties_1/1.webp:465,848,205,111 +characters/cho/clothes/panties/lace_panties_1/2.webp:535,889,13,11 +characters/cho/clothes/panties/lace_panties_1/outline.webp:463,847,208,112 +characters/cho/clothes/panties/lace_panties_1/skin.webp:468,856,183,89 +characters/cho/clothes/panties/sport_panties_1/0.webp:457,825,237,166 +characters/cho/clothes/panties/sport_panties_1/extra.webp:458,850,180,135 +characters/cho/clothes/panties/sport_panties_1/outline.webp:456,823,239,172 +characters/cho/clothes/panties/sport_panties_1/skin.webp:486,840,196,154 +characters/cho/clothes/panties/sport_panties_2/0.webp:458,864,231,94 +characters/cho/clothes/panties/sport_panties_2/extra.webp:459,872,267,260 +characters/cho/clothes/panties/sport_panties_2/outline.webp:458,860,232,99 +characters/cho/clothes/panties/sport_panties_2/skin.webp:473,868,207,87 +characters/cho/clothes/piercing/breast_barbell/0.webp:474,656,137,6 +characters/cho/clothes/piercing/breast_barbell/outline.webp:472,655,141,9 +characters/cho/clothes/piercing/stud/0.webp:546,938,6,6 +characters/cho/clothes/piercing/stud/outline.webp:544,937,9,9 +characters/cho/clothes/pubes/arrow/0.webp:529,893,30,41 +characters/cho/clothes/pubes/arrow/outline.webp:529,895,30,37 +characters/cho/clothes/pubes/beaver/0.webp:524,887,48,71 +characters/cho/clothes/pubes/beaver/outline.webp:526,891,45,75 +characters/cho/clothes/pubes/heart/0.webp:537,906,17,18 +characters/cho/clothes/pubes/heart/1.webp:537,906,17,17 +characters/cho/clothes/pubes/heart/extra.webp:538,907,14,15 +characters/cho/clothes/pubes/heart/outline.webp:535,902,21,25 +characters/cho/clothes/pubes/stuble/0.webp:524,909,49,32 +characters/cho/clothes/pubes/thick/0.webp:518,907,59,49 +characters/cho/clothes/pubes/thick/1.webp:518,907,59,48 +characters/cho/clothes/pubes/thick/extra.webp:520,908,55,48 +characters/cho/clothes/pubes/thick/outline.webp:516,905,65,54 +characters/cho/clothes/pubes/unshaved/0.webp:526,909,42,47 +characters/cho/clothes/robe/robe_quidditch_1/0.webp:443,566,312,634 +characters/cho/clothes/robe/robe_quidditch_1/1.webp:468,535,199,665 +characters/cho/clothes/robe/robe_quidditch_1/mask.webp:0,0,1010,1200 +characters/cho/clothes/robe/robe_quidditch_1/outline.webp:447,534,310,666 +characters/cho/clothes/robe/robe_quidditch_1/overlay.webp:521,682,31,229 +characters/cho/clothes/robe/robe_quidditch_2/0.webp:407,561,396,639 +characters/cho/clothes/robe/robe_quidditch_2/outline.webp:408,560,397,640 +characters/cho/clothes/robe/robe_school_1/0.webp:439,577,333,623 +characters/cho/clothes/robe/robe_school_1/0_front.webp:645,732,127,251 +characters/cho/clothes/robe/robe_school_1/1.webp:515,653,51,16 +characters/cho/clothes/robe/robe_school_1/1_front.webp:0,0,0,0 +characters/cho/clothes/robe/robe_school_1/2.webp:479,539,299,479 +characters/cho/clothes/robe/robe_school_1/2_front.webp:665,923,113,95 +characters/cho/clothes/robe/robe_school_1/mask.webp:0,0,1010,1200 +characters/cho/clothes/robe/robe_school_1/outline.webp:438,536,341,664 +characters/cho/clothes/robe/robe_school_1/outline_front.webp:628,727,151,294 +characters/cho/clothes/robe/robe_school_1/skin.webp:525,570,188,400 +characters/cho/clothes/robe/robe_school_2/0.webp:439,577,333,623 +characters/cho/clothes/robe/robe_school_2/0_back.webp:0,0,0,0 +characters/cho/clothes/robe/robe_school_2/0_front.webp:645,732,127,251 +characters/cho/clothes/robe/robe_school_2/1.webp:515,653,51,16 +characters/cho/clothes/robe/robe_school_2/1_back.webp:0,0,0,0 +characters/cho/clothes/robe/robe_school_2/1_front.webp:0,0,0,0 +characters/cho/clothes/robe/robe_school_2/2.webp:479,539,298,479 +characters/cho/clothes/robe/robe_school_2/2_back.webp:533,1190,7,10 +characters/cho/clothes/robe/robe_school_2/2_front.webp:665,923,113,95 +characters/cho/clothes/robe/robe_school_2/extra.webp:411,689,284,511 +characters/cho/clothes/robe/robe_school_2/mask.webp:0,0,1010,1200 +characters/cho/clothes/robe/robe_school_2/outline.webp:438,536,341,664 +characters/cho/clothes/robe/robe_school_2/outline_back.webp:532,1179,13,21 +characters/cho/clothes/robe/robe_school_2/outline_front.webp:628,727,151,294 +characters/cho/clothes/robe/robe_school_2/skin.webp:525,570,188,400 +characters/cho/clothes/robe/robe_school_3/0.webp:439,554,333,646 +characters/cho/clothes/robe/robe_school_3/0_back.webp:0,0,0,0 +characters/cho/clothes/robe/robe_school_3/0_front.webp:645,732,127,251 +characters/cho/clothes/robe/robe_school_3/1.webp:515,653,51,16 +characters/cho/clothes/robe/robe_school_3/1_back.webp:0,0,0,0 +characters/cho/clothes/robe/robe_school_3/1_front.webp:0,0,0,0 +characters/cho/clothes/robe/robe_school_3/2.webp:479,539,297,479 +characters/cho/clothes/robe/robe_school_3/2_back.webp:497,1139,43,61 +characters/cho/clothes/robe/robe_school_3/2_front.webp:665,923,113,95 +characters/cho/clothes/robe/robe_school_3/extra.webp:331,647,452,553 +characters/cho/clothes/robe/robe_school_3/mask.webp:0,0,1010,1200 +characters/cho/clothes/robe/robe_school_3/outline.webp:438,536,341,664 +characters/cho/clothes/robe/robe_school_3/outline_back.webp:461,1095,82,105 +characters/cho/clothes/robe/robe_school_3/outline_front.webp:628,727,151,294 +characters/cho/clothes/robe/robe_school_3/skin.webp:525,570,188,400 +characters/cho/clothes/stockings/fishnet/0.webp:463,1030,241,170 +characters/cho/clothes/stockings/fishnet/1.webp:470,1037,219,55 +characters/cho/clothes/stockings/fishnet/outline.webp:467,1032,224,168 +characters/cho/clothes/stockings/house/0.webp:477,1063,209,122 +characters/cho/clothes/stockings/house/1.webp:493,1100,187,100 +characters/cho/clothes/stockings/house/outline.webp:475,1051,213,149 +characters/cho/clothes/stockings/kneehigh/0.webp:516,1146,156,54 +characters/cho/clothes/stockings/kneehigh/outline.webp:513,1144,161,56 +characters/cho/clothes/stockings/kneehigh/skin.webp:515,1141,158,20 +characters/cho/clothes/stockings/lace_stockings_1/0.webp:459,971,234,91 +characters/cho/clothes/stockings/lace_stockings_1/1.webp:459,970,233,230 +characters/cho/clothes/stockings/lace_stockings_1/outline.webp:458,969,236,231 +characters/cho/clothes/stockings/lace_stockings_1/skin.webp:462,978,211,22 +characters/cho/clothes/stockings/pantyhose/0.webp:458,838,234,362 +characters/cho/clothes/stockings/pantyhose/outline.webp:456,837,238,363 +characters/cho/clothes/stockings/quid1/0.webp:485,1079,199,121 +characters/cho/clothes/stockings/quid1/1.webp:486,1079,197,27 +characters/cho/clothes/stockings/quid1/extra.webp:485,1080,199,120 +characters/cho/clothes/stockings/quid1/outline.webp:468,1071,237,129 +characters/cho/clothes/stockings/quid1/skin.webp:488,1079,183,17 +characters/cho/clothes/stockings/sailor/0.webp:478,1049,207,151 +characters/cho/clothes/stockings/sailor/outline.webp:471,1041,218,159 +characters/cho/clothes/stockings/sailor/skin.webp:474,1038,202,19 +characters/cho/clothes/stockings/toon_socks/0.webp:516,1136,159,57 +characters/cho/clothes/stockings/toon_socks/1.webp:509,1121,168,79 +characters/cho/clothes/stockings/toon_socks/outline.webp:504,1119,176,81 +characters/cho/clothes/stockings/toon_socks/skin.webp:505,1120,165,17 +characters/cho/clothes/tattoo/breasts_slut/0.webp:570,668,62,28 +characters/cho/clothes/tattoo/chun_li_dragon/0.webp:656,571,65,459 +characters/cho/clothes/tattoo/chun_li_dragon/0_front.webp:667,830,54,200 +characters/cho/clothes/tattoo/chun_li_dragon/1.webp:657,571,64,419 +characters/cho/clothes/tattoo/chun_li_dragon/1_front.webp:669,830,52,160 +characters/cho/clothes/tattoo/chun_li_dragon/outline.webp:655,570,67,462 +characters/cho/clothes/tattoo/chun_li_dragon/outline_front.webp:666,830,56,202 +characters/cho/clothes/tattoo/chun_li_mule/0.webp:565,601,89,39 +characters/cho/clothes/tattoo/pelv_free/0.webp:512,868,41,35 +characters/cho/clothes/top/chun_li_dress/0.webp:465,534,247,590 +characters/cho/clothes/top/chun_li_dress/1.webp:461,530,253,597 +characters/cho/clothes/top/chun_li_dress/extra.webp:492,572,172,512 +characters/cho/clothes/top/chun_li_dress/outline.webp:458,527,261,602 +characters/cho/clothes/top/dress_1/0.webp:445,529,270,671 +characters/cho/clothes/top/dress_1/1.webp:461,531,250,186 +characters/cho/clothes/top/dress_1/extra.webp:471,545,228,146 +characters/cho/clothes/top/dress_1/outline.webp:453,527,265,673 +characters/cho/clothes/top/dress_1/skin.webp:427,557,282,238 +characters/cho/clothes/top/dress_2/0.webp:457,525,244,466 +characters/cho/clothes/top/dress_2/1.webp:527,595,60,52 +characters/cho/clothes/top/dress_2/extra.webp:469,543,210,438 +characters/cho/clothes/top/dress_2/outline.webp:455,521,250,471 +characters/cho/clothes/top/police/0.webp:468,539,265,226 +characters/cho/clothes/top/police/1.webp:546,639,18,117 +characters/cho/clothes/top/police/extra.webp:635,611,8,23 +characters/cho/clothes/top/police/outline.webp:467,538,267,228 +characters/cho/clothes/top/smurfette/0.webp:419,559,316,519 +characters/cho/clothes/top/smurfette/1.webp:442,899,267,106 +characters/cho/clothes/top/smurfette/outline.webp:419,557,319,521 +characters/cho/clothes/top/smurfette/skin.webp:481,564,187,518 +characters/cho/clothes/top/toon_shirt/0.webp:467,563,190,213 +characters/cho/clothes/top/toon_shirt/extra.webp:510,637,68,63 +characters/cho/clothes/top/toon_shirt/outline.webp:466,560,194,219 +characters/cho/clothes/top/toon_shirt/skin.webp:504,563,159,218 +characters/cho/clothes/top/top_j_school_1/0.webp:436,576,286,361 +characters/cho/clothes/top/top_j_school_1/0_back.webp:650,866,39,41 +characters/cho/clothes/top/top_j_school_1/1.webp:519,637,60,78 +characters/cho/clothes/top/top_j_school_1/2.webp:477,548,250,220 +characters/cho/clothes/top/top_j_school_1/3.webp:477,570,248,300 +characters/cho/clothes/top/top_j_school_1/outline.webp:456,547,272,391 +characters/cho/clothes/top/top_j_school_1/outline_back.webp:649,863,42,45 +characters/cho/clothes/top/top_j_school_1/skin.webp:466,576,243,351 +characters/cho/clothes/top/top_quid_1/0.webp:467,556,189,220 +characters/cho/clothes/top/top_quid_1/1.webp:500,632,128,154 +characters/cho/clothes/top/top_quid_1/extra.webp:467,557,189,229 +characters/cho/clothes/top/top_quid_1/outline.webp:459,556,198,238 +characters/cho/clothes/top/top_quid_1/skin.webp:490,571,179,221 +characters/cho/clothes/top/top_sailor_1/0.webp:460,548,262,158 +characters/cho/clothes/top/top_sailor_1/1.webp:473,560,246,161 +characters/cho/clothes/top/top_sailor_1/outline.webp:457,545,267,179 +characters/cho/clothes/top/top_school_1/0.webp:479,519,250,184 +characters/cho/clothes/top/top_school_1/0_front.webp:503,519,132,167 +characters/cho/clothes/top/top_school_1/1.webp:464,560,200,303 +characters/cho/clothes/top/top_school_1/2.webp:472,561,253,317 +characters/cho/clothes/top/top_school_1/3.webp:476,553,248,326 +characters/cho/clothes/top/top_school_1/outline.webp:464,519,267,362 +characters/cho/clothes/top/top_school_1/outline_front.webp:501,519,138,111 +characters/cho/clothes/top/top_school_1/skin.webp:480,561,230,322 +characters/cho/clothes/top/top_school_2/0.webp:479,519,250,185 +characters/cho/clothes/top/top_school_2/0_front.webp:503,519,132,87 +characters/cho/clothes/top/top_school_2/1.webp:464,560,200,303 +characters/cho/clothes/top/top_school_2/2.webp:472,549,253,329 +characters/cho/clothes/top/top_school_2/3.webp:476,553,248,326 +characters/cho/clothes/top/top_school_2/extra.webp:548,617,10,10 +characters/cho/clothes/top/top_school_2/outline.webp:464,519,267,362 +characters/cho/clothes/top/top_school_2/outline_front.webp:513,519,124,90 +characters/cho/clothes/top/top_school_2/skin.webp:529,561,181,146 +characters/cho/clothes/top/top_school_3/0.webp:466,519,263,288 +characters/cho/clothes/top/top_school_3/0_front.webp:512,519,124,86 +characters/cho/clothes/top/top_school_3/1.webp:512,579,214,170 +characters/cho/clothes/top/top_school_3/2.webp:512,574,212,189 +characters/cho/clothes/top/top_school_3/extra.webp:537,786,8,12 +characters/cho/clothes/top/top_school_3/outline.webp:465,519,266,289 +characters/cho/clothes/top/top_school_3/outline_front.webp:513,519,124,86 +characters/cho/clothes/top/top_school_3/skin.webp:552,561,158,146 +characters/cho/clothes/top/top_school_4/0.webp:466,520,263,287 +characters/cho/clothes/top/top_school_4/0_front.webp:512,520,125,84 +characters/cho/clothes/top/top_school_4/1.webp:648,655,78,37 +characters/cho/clothes/top/top_school_4/2.webp:650,663,74,21 +characters/cho/clothes/top/top_school_4/extra.webp:529,617,29,181 +characters/cho/clothes/top/top_school_4/outline.webp:465,519,266,289 +characters/cho/clothes/top/top_school_4/outline_front.webp:513,519,124,86 +characters/cho/clothes/top/top_school_4/skin.webp:552,561,158,146 +characters/cho/clothes/top/top_school_5/0.webp:466,520,263,287 +characters/cho/clothes/top/top_school_5/0_front.webp:508,520,130,128 +characters/cho/clothes/top/top_school_5/1.webp:648,655,78,37 +characters/cho/clothes/top/top_school_5/2.webp:650,663,74,21 +characters/cho/clothes/top/top_school_5/extra.webp:529,654,16,144 +characters/cho/clothes/top/top_school_5/outline.webp:465,519,266,289 +characters/cho/clothes/top/top_school_5/outline_front.webp:504,519,134,131 +characters/cho/clothes/top/top_school_5/skin.webp:533,552,177,155 +characters/cho/clothes/top/top_school_6/0.webp:463,560,201,303 +characters/cho/clothes/top/top_school_6/1.webp:472,548,207,330 +characters/cho/clothes/top/top_school_6/2.webp:476,554,198,325 +characters/cho/clothes/top/top_school_6/outline.webp:464,547,217,334 +characters/cho/clothes/top/top_school_6/skin.webp:480,571,196,312 +characters/cho/clothes/top/top_shirt_1/0.webp:467,564,187,144 +characters/cho/clothes/top/top_shirt_1/outline.webp:466,561,190,150 +characters/cho/clothes/top/top_sweater_1/0.webp:460,553,505,398 +characters/cho/clothes/top/top_sweater_1/0_front.webp:658,824,307,127 +characters/cho/clothes/top/top_sweater_1/1.webp:464,556,258,382 +characters/cho/clothes/top/top_sweater_1/1_front.webp:672,877,50,61 +characters/cho/clothes/top/top_sweater_1/mask.webp:0,0,1010,1200 +characters/cho/clothes/top/top_sweater_1/outline.webp:458,550,270,403 +characters/cho/clothes/top/top_sweater_1/outline_front.webp:660,824,68,128 +characters/cho/clothes/top/top_sweater_2/0.webp:455,557,235,376 +characters/cho/clothes/top/top_sweater_2/1.webp:460,560,221,355 +characters/cho/clothes/top/top_sweater_2/outline.webp:453,556,238,378 +characters/cho/clothes/top/top_tanktop_1/0.webp:447,513,240,429 +characters/cho/clothes/top/top_tanktop_1/outline.webp:461,557,236,390 +characters/cho/clothes/top/top_tanktop_2/0.webp:463,561,203,312 +characters/cho/clothes/top/top_tanktop_2/1.webp:467,641,177,232 +characters/cho/clothes/top/top_tanktop_2/outline.webp:459,557,211,322 +characters/cho/cum/body/heavy.webp:509,438,134,417 +characters/cho/cum/body/heavy_skin.webp:514,472,114,384 +characters/cho/cum/body/light.webp:509,552,119,271 +characters/cho/cum/body/light_skin.webp:522,553,106,230 +characters/cho/cum/breasts/heavy.webp:467,611,178,141 +characters/cho/cum/breasts/heavy_skin.webp:489,611,157,143 +characters/cho/cum/breasts/light.webp:475,593,182,136 +characters/cho/cum/breasts/light_skin.webp:476,593,181,136 +characters/cho/cum/crotch/heavy.webp:440,778,215,321 +characters/cho/cum/crotch/heavy_skin.webp:442,779,214,316 +characters/cho/cum/crotch/light.webp:440,780,191,314 +characters/cho/cum/crotch/light_skin.webp:442,780,190,315 +characters/cho/cum/face/heavy.webp:497,388,100,134 +characters/cho/cum/face/heavy_skin.webp:498,390,83,126 +characters/cho/cum/face/light.webp:500,403,102,122 +characters/cho/cum/face/light_skin.webp:502,403,84,119 +characters/cho/cum/hair/heavy.webp:489,265,211,169 +characters/cho/cum/hair/light.webp:488,356,123,72 +characters/cho/cum/legs/heavy.webp:632,1044,90,135 +characters/cho/cum/legs/heavy_skin.webp:634,1044,89,136 +characters/cho/cum/legs/light.webp:632,1044,22,102 +characters/cho/cum/legs/light_skin.webp:634,1044,22,103 +characters/cho/cum/pussy/heavy.webp:542,940,18,71 +characters/cho/cum/pussy/light.webp:545,940,16,42 +characters/cho/emotes/angry.webp:576,379,45,43 +characters/cho/emotes/confused.webp:419,248,129,101 +characters/cho/emotes/happy.webp:420,229,123,146 +characters/cho/emotes/hearts.webp:377,219,175,146 +characters/cho/emotes/shocked.webp:407,222,136,128 +characters/cho/emotes/sweat.webp:572,360,42,67 +characters/cho/face/cheeks/blush.webp:499,441,108,49 +characters/cho/face/cheeks/dummy.webp:0,0,1,1 +characters/cho/face/cheeks/heavy_blush.webp:499,441,108,49 +characters/cho/face/eyebrows/angry.webp:493,415,103,18 +characters/cho/face/eyebrows/angry_skin.webp:496,416,110,27 +characters/cho/face/eyebrows/base.webp:492,415,110,14 +characters/cho/face/eyebrows/base_skin.webp:496,418,102,25 +characters/cho/face/eyebrows/raised.webp:485,402,113,28 +characters/cho/face/eyebrows/raised_skin.webp:496,418,102,25 +characters/cho/face/eyebrows/worried.webp:492,414,109,17 +characters/cho/face/eyebrows/worried_skin.webp:496,416,101,27 +characters/cho/face/eyes/base.webp:498,424,99,25 +characters/cho/face/eyes/base_mask.webp:504,428,85,19 +characters/cho/face/eyes/base_skin.webp:498,436,99,14 +characters/cho/face/eyes/closed.webp:496,425,101,25 +characters/cho/face/eyes/closed_skin.webp:498,436,99,14 +characters/cho/face/eyes/happyCl.webp:497,426,102,20 +characters/cho/face/eyes/happyCl_skin.webp:498,436,99,11 +characters/cho/face/eyes/narrow.webp:498,424,99,25 +characters/cho/face/eyes/narrow_mask.webp:504,431,85,16 +characters/cho/face/eyes/narrow_skin.webp:498,436,99,14 +characters/cho/face/eyes/wide.webp:496,420,102,30 +characters/cho/face/eyes/wide_mask.webp:502,424,89,24 +characters/cho/face/eyes/wide_skin.webp:498,436,99,14 +characters/cho/face/eyes/wink.webp:497,424,100,25 +characters/cho/face/eyes/wink_mask.webp:558,428,31,18 +characters/cho/face/eyes/wink_skin.webp:498,436,99,14 +characters/cho/face/mouth/angry.webp:527,482,48,25 +characters/cho/face/mouth/annoyed.webp:523,484,30,21 +characters/cho/face/mouth/base.webp:526,487,41,15 +characters/cho/face/mouth/clench.webp:526,479,51,28 +characters/cho/face/mouth/crooked_smile.webp:524,481,50,30 +characters/cho/face/mouth/disgust.webp:525,489,48,21 +characters/cho/face/mouth/grin.webp:522,481,52,32 +characters/cho/face/mouth/horny.webp:527,487,43,15 +characters/cho/face/mouth/mad.webp:528,487,43,23 +characters/cho/face/mouth/normal.webp:526,487,34,15 +characters/cho/face/mouth/open.webp:531,485,30,29 +characters/cho/face/mouth/open_tongue.webp:531,485,30,29 +characters/cho/face/mouth/open_wide_tongue.webp:506,482,93,60 +characters/cho/face/mouth/quiver.webp:525,487,41,17 +characters/cho/face/mouth/scream.webp:506,482,93,53 +characters/cho/face/mouth/silly.webp:525,485,41,28 +characters/cho/face/mouth/smile.webp:526,486,42,20 +characters/cho/face/mouth/soft.webp:529,486,31,22 +characters/cho/face/mouth/upset.webp:528,489,31,17 +characters/cho/face/pupils/L.webp:505,428,71,18 +characters/cho/face/pupils/R.webp:515,428,73,18 +characters/cho/face/pupils/ahegao.webp:513,421,62,18 +characters/cho/face/pupils/down.webp:511,435,68,18 +characters/cho/face/pupils/downR.webp:513,433,74,18 +characters/cho/face/pupils/mid.webp:512,428,70,17 +characters/cho/face/pupils/stare.webp:506,426,75,21 +characters/cho/face/pupils/up.webp:509,424,70,17 +characters/cho/face/tears/tears_1.webp:524,374,94,26 +characters/cho/face/tears/tears_2.webp:514,374,122,54 +characters/cho/face/tears/tears_3.webp:524,376,116,112 +characters/cho/face/tears/tears_4.webp:524,380,110,94 +characters/cho/poses/broom/body/armleft/down.webp:0,0,1,1 +characters/cho/poses/broom/body/armleft/down_fix.webp:0,0,1,1 +characters/cho/poses/broom/body/armright/down.webp:0,0,1,1 +characters/cho/poses/broom/body/armright/down_fix.webp:0,0,1,1 +characters/cho/poses/broom/body/armright/snitch.webp:140,300,242,260 +characters/cho/poses/broom/body/armright/snitch_fix.webp:0,0,1,1 +characters/cho/poses/broom/body/armright/up.webp:0,0,1,1 +characters/cho/poses/broom/body/base/front.webp:19,283,974,895 +characters/cho/poses/broom/body/breasts/normal.webp:0,0,1,1 +characters/cho/poses/broom/clothes/accessory/goggles/0.webp:714,268,124,38 +characters/cho/poses/broom/clothes/accessory/goggles/1.webp:713,258,134,59 +characters/cho/poses/broom/clothes/accessory/goggles/extra.webp:715,250,181,109 +characters/cho/poses/broom/clothes/accessory/goggles/outline.webp:711,249,186,116 +characters/cho/poses/broom/clothes/accessory/goggles_face/0.webp:719,339,108,36 +characters/cho/poses/broom/clothes/accessory/goggles_face/1.webp:720,331,115,53 +characters/cho/poses/broom/clothes/accessory/goggles_face/extra.webp:720,324,145,68 +characters/cho/poses/broom/clothes/accessory/goggles_face/outline.webp:718,322,145,71 +characters/cho/poses/broom/clothes/accessory/panties_in_hand/0.webp:39,508,116,197 +characters/cho/poses/broom/clothes/accessory/panties_in_hand/outline.webp:37,506,122,203 +characters/cho/poses/broom/clothes/accessory/protectors1/0.webp:0,0,0,0 +characters/cho/poses/broom/clothes/accessory/protectors1/extra.webp:80,459,644,728 +characters/cho/poses/broom/clothes/accessory/protectors2/0.webp:0,0,0,0 +characters/cho/poses/broom/clothes/accessory/protectors2/extra.webp:80,459,644,728 +characters/cho/poses/broom/clothes/bottom/pants_long_2/0.webp:300,670,367,395 +characters/cho/poses/broom/clothes/bottom/pants_long_2/1.webp:0,0,1,1 +characters/cho/poses/broom/clothes/bottom/pants_long_2/outline.webp:298,668,371,400 +characters/cho/poses/broom/clothes/bottom/pants_short_4/0.webp:344,670,321,243 +characters/cho/poses/broom/clothes/bottom/pants_short_4/1.webp:0,0,1,1 +characters/cho/poses/broom/clothes/bottom/pants_short_4/outline.webp:295,667,374,310 +characters/cho/poses/broom/clothes/bottom/school_skirt_1/0.webp:448,715,250,226 +characters/cho/poses/broom/clothes/bottom/school_skirt_1/1.webp:0,0,1,1 +characters/cho/poses/broom/clothes/bottom/school_skirt_1/outline.webp:442,711,257,233 +characters/cho/poses/broom/clothes/bottom/school_skirt_1/skin.webp:427,772,167,103 +characters/cho/poses/broom/clothes/bottom/school_skirt_2/0.webp:449,676,229,156 +characters/cho/poses/broom/clothes/bottom/school_skirt_2/1.webp:485,732,7,12 +characters/cho/poses/broom/clothes/bottom/school_skirt_2/outline.webp:442,675,239,159 +characters/cho/poses/broom/clothes/bottom/school_skirt_2/skin.webp:452,774,216,59 +characters/cho/poses/broom/clothes/bottom/school_skirt_3/0.webp:457,678,215,135 +characters/cho/poses/broom/clothes/bottom/school_skirt_3/1.webp:485,732,7,12 +characters/cho/poses/broom/clothes/bottom/school_skirt_3/outline.webp:450,675,224,140 +characters/cho/poses/broom/clothes/bottom/school_skirt_3/skin.webp:469,769,193,46 +characters/cho/poses/broom/clothes/bottom/school_skirt_4/0.webp:474,692,182,74 +characters/cho/poses/broom/clothes/bottom/school_skirt_4/1.webp:0,0,1,1 +characters/cho/poses/broom/clothes/bottom/school_skirt_4/outline.webp:466,691,191,77 +characters/cho/poses/broom/clothes/bottom/school_skirt_4/skin.webp:455,721,190,57 +characters/cho/poses/broom/clothes/bottom/skirt_short_1/0.webp:459,693,223,103 +characters/cho/poses/broom/clothes/bottom/skirt_short_1/outline.webp:452,690,232,107 +characters/cho/poses/broom/clothes/bottom/skirt_short_1/skin.webp:440,765,225,37 +characters/cho/poses/broom/clothes/bra/basic_bra_1/0.webp:0,0,1,1 +characters/cho/poses/broom/clothes/bra/basic_bra_1/1.webp:0,0,1,1 +characters/cho/poses/broom/clothes/bra/basic_bra_1/outline.webp:0,0,1,1 +characters/cho/poses/broom/clothes/bra/sport_bra_1/0.webp:368,461,164,194 +characters/cho/poses/broom/clothes/bra/sport_bra_1/outline.webp:367,460,168,198 +characters/cho/poses/broom/clothes/gloves/quidditch/0.webp:0,0,1,1 +characters/cho/poses/broom/clothes/gloves/quidditch/outline.webp:0,0,1,1 +characters/cho/poses/broom/clothes/hair/ponytail/0.webp:261,272,266,240 +characters/cho/poses/broom/clothes/hair/ponytail/1.webp:289,287,232,220 +characters/cho/poses/broom/clothes/hair/ponytail/outline.webp:261,272,266,241 +characters/cho/poses/broom/clothes/hair/ponytail/skin.webp:297,345,139,50 +characters/cho/poses/broom/clothes/hair/ponytail_natural/0.webp:283,262,276,230 +characters/cho/poses/broom/clothes/hair/ponytail_natural/1.webp:315,309,200,108 +characters/cho/poses/broom/clothes/hair/ponytail_natural/outline.webp:282,260,279,233 +characters/cho/poses/broom/clothes/headgear/goggles/0.webp:272,297,125,47 +characters/cho/poses/broom/clothes/headgear/goggles/1.webp:274,287,134,65 +characters/cho/poses/broom/clothes/headgear/goggles/extra.webp:276,279,184,98 +characters/cho/poses/broom/clothes/headgear/goggles/outline.webp:271,277,190,105 +characters/cho/poses/broom/clothes/panties/basic_panties_1/0.webp:490,703,172,97 +characters/cho/poses/broom/clothes/panties/basic_panties_1/1.webp:0,0,1,1 +characters/cho/poses/broom/clothes/panties/basic_panties_1/outline.webp:487,698,188,112 +characters/cho/poses/broom/clothes/panties/basic_panties_1/skin.webp:503,701,160,104 +characters/cho/poses/broom/clothes/panties/sport_panties_1/0.webp:488,701,179,133 +characters/cho/poses/broom/clothes/panties/sport_panties_1/outline.webp:485,698,184,142 +characters/cho/poses/broom/clothes/robe/robe_quidditch_1/0.webp:292,460,550,500 +characters/cho/poses/broom/clothes/robe/robe_quidditch_1/1.webp:384,460,453,500 +characters/cho/poses/broom/clothes/robe/robe_quidditch_1/extra.webp:468,709,380,261 +characters/cho/poses/broom/clothes/robe/robe_quidditch_1/outline.webp:290,457,554,505 +characters/cho/poses/broom/clothes/top/top_sailor_1/0.webp:357,453,170,181 +characters/cho/poses/broom/clothes/top/top_sailor_1/1.webp:353,513,177,124 +characters/cho/poses/broom/clothes/top/top_sailor_1/outline.webp:352,451,180,187 +characters/cho/poses/broom/clothes/top/top_school_1/0.webp:349,443,282,318 +characters/cho/poses/broom/clothes/top/top_school_1/1.webp:369,461,228,296 +characters/cho/poses/broom/clothes/top/top_school_1/2.webp:357,463,240,294 +characters/cho/poses/broom/clothes/top/top_school_1/3.webp:359,461,247,298 +characters/cho/poses/broom/clothes/top/top_school_1/outline.webp:348,442,285,319 +characters/cho/poses/broom/clothes/top/top_school_2/0.webp:349,443,282,318 +characters/cho/poses/broom/clothes/top/top_school_2/1.webp:369,461,228,296 +characters/cho/poses/broom/clothes/top/top_school_2/2.webp:357,463,240,294 +characters/cho/poses/broom/clothes/top/top_school_2/3.webp:359,461,247,298 +characters/cho/poses/broom/clothes/top/top_school_2/outline.webp:348,442,285,319 +characters/cho/poses/broom/clothes/top/top_school_3/0.webp:349,443,282,318 +characters/cho/poses/broom/clothes/top/top_school_3/1.webp:357,507,49,65 +characters/cho/poses/broom/clothes/top/top_school_3/2.webp:359,507,48,66 +characters/cho/poses/broom/clothes/top/top_school_3/outline.webp:348,442,285,319 +characters/cho/poses/broom/clothes/top/top_school_4/0.webp:349,443,282,318 +characters/cho/poses/broom/clothes/top/top_school_4/1.webp:357,507,49,65 +characters/cho/poses/broom/clothes/top/top_school_4/2.webp:359,507,48,66 +characters/cho/poses/broom/clothes/top/top_school_4/outline.webp:348,442,285,319 +characters/cho/poses/broom/clothes/top/top_school_5/0.webp:349,443,282,318 +characters/cho/poses/broom/clothes/top/top_school_5/1.webp:357,507,49,65 +characters/cho/poses/broom/clothes/top/top_school_5/2.webp:359,507,48,66 +characters/cho/poses/broom/clothes/top/top_school_5/outline.webp:348,442,285,319 +characters/cho/poses/broom/clothes/top/top_school_6/0.webp:369,461,228,298 +characters/cho/poses/broom/clothes/top/top_school_6/1.webp:430,463,167,294 +characters/cho/poses/broom/clothes/top/top_school_6/2.webp:414,461,192,298 +characters/cho/poses/broom/clothes/top/top_school_6/outline.webp:367,459,241,301 +characters/cho/poses/broom/clothes/top/top_sweater_1/0.webp:166,460,466,297 +characters/cho/poses/broom/clothes/top/top_sweater_1/1.webp:177,461,448,290 +characters/cho/poses/broom/clothes/top/top_sweater_1/outline.webp:162,458,473,301 +characters/cho/poses/broom/clothes/top/top_sweater_2/0.webp:368,443,263,318 +characters/cho/poses/broom/clothes/top/top_sweater_2/1.webp:366,448,251,297 +characters/cho/poses/broom/clothes/top/top_sweater_2/outline.webp:367,442,266,319 +characters/cho/poses/broom/face/cheeks/blush.webp:306,395,108,50 +characters/cho/poses/broom/face/cheeks/heavy_blush.webp:306,395,108,50 +characters/cho/poses/broom/face/extras/tears_1.webp:524,374,94,26 +characters/cho/poses/broom/face/extras/tears_2.webp:514,374,122,54 +characters/cho/poses/broom/face/extras/tears_3.webp:524,376,116,112 +characters/cho/poses/broom/face/extras/tears_4.webp:524,380,110,94 +characters/cho/poses/broom/face/eyebrows/angry.webp:297,365,102,22 +characters/cho/poses/broom/face/eyebrows/angry_skin.webp:299,364,110,34 +characters/cho/poses/broom/face/eyebrows/base.webp:296,366,109,19 +characters/cho/poses/broom/face/eyebrows/base_skin.webp:300,371,102,27 +characters/cho/poses/broom/face/eyebrows/raised.webp:290,353,113,28 +characters/cho/poses/broom/face/eyebrows/raised_skin.webp:300,371,102,27 +characters/cho/poses/broom/face/eyebrows/worried.webp:296,367,109,22 +characters/cho/poses/broom/face/eyebrows/worried_skin.webp:299,368,102,30 +characters/cho/poses/broom/face/eyes/base.webp:303,374,98,32 +characters/cho/poses/broom/face/eyes/base_mask.webp:309,378,85,26 +characters/cho/poses/broom/face/eyes/base_skin.webp:303,384,99,22 +characters/cho/poses/broom/face/eyes/closed.webp:302,375,100,32 +characters/cho/poses/broom/face/eyes/closed_skin.webp:303,384,99,22 +characters/cho/poses/broom/face/eyes/happyCl.webp:303,377,101,27 +characters/cho/poses/broom/face/eyes/happyCl_skin.webp:303,384,99,19 +characters/cho/poses/broom/face/eyes/narrow.webp:303,375,98,31 +characters/cho/poses/broom/face/eyes/narrow_mask.webp:309,381,84,23 +characters/cho/poses/broom/face/eyes/narrow_skin.webp:303,384,99,22 +characters/cho/poses/broom/face/eyes/wide.webp:301,371,101,36 +characters/cho/poses/broom/face/eyes/wide_mask.webp:306,373,90,32 +characters/cho/poses/broom/face/eyes/wide_skin.webp:303,384,99,22 +characters/cho/poses/broom/face/eyes/wink.webp:303,374,98,30 +characters/cho/poses/broom/face/eyes/wink_mask.webp:363,374,32,25 +characters/cho/poses/broom/face/eyes/wink_skin.webp:303,384,99,19 +characters/cho/poses/broom/face/mouth/angry.webp:337,434,49,27 +characters/cho/poses/broom/face/mouth/annoyed.webp:334,440,31,19 +characters/cho/poses/broom/face/mouth/base.webp:337,439,41,17 +characters/cho/poses/broom/face/mouth/clench.webp:337,432,51,29 +characters/cho/poses/broom/face/mouth/crooked_smile.webp:335,432,50,33 +characters/cho/poses/broom/face/mouth/disgust.webp:336,443,49,21 +characters/cho/poses/broom/face/mouth/grin.webp:333,432,52,34 +characters/cho/poses/broom/face/mouth/horny.webp:338,439,42,17 +characters/cho/poses/broom/face/mouth/mad.webp:339,439,44,25 +characters/cho/poses/broom/face/mouth/normal.webp:338,440,33,16 +characters/cho/poses/broom/face/mouth/open.webp:342,438,31,29 +characters/cho/poses/broom/face/mouth/open_tongue.webp:342,438,31,30 +characters/cho/poses/broom/face/mouth/open_wide_tongue.webp:317,431,92,64 +characters/cho/poses/broom/face/mouth/pout.webp:329,434,29,24 +characters/cho/poses/broom/face/mouth/quiver.webp:336,442,42,14 +characters/cho/poses/broom/face/mouth/scream.webp:317,431,92,57 +characters/cho/poses/broom/face/mouth/silly.webp:335,437,42,29 +characters/cho/poses/broom/face/mouth/smile.webp:337,438,41,22 +characters/cho/poses/broom/face/mouth/soft.webp:339,439,32,23 +characters/cho/poses/broom/face/mouth/upset.webp:339,442,32,18 +characters/cho/poses/broom/face/pupils/L.webp:311,380,70,24 +characters/cho/poses/broom/face/pupils/R.webp:320,378,73,25 +characters/cho/poses/broom/face/pupils/ahegao.webp:317,372,62,24 +characters/cho/poses/broom/face/pupils/down.webp:317,385,68,24 +characters/cho/poses/broom/face/pupils/downR.webp:318,383,74,25 +characters/cho/poses/broom/face/pupils/mid.webp:317,378,70,24 +characters/cho/poses/broom/face/pupils/up.webp:314,375,70,23 +characters/cho/poses/broom/loadable.webp:0,0,1,1 +characters/emotes/01.webp:614,227,125,126 +characters/emotes/02.webp:323,87,164,208 +characters/emotes/03.webp:289,209,174,144 +characters/emotes/04.webp:341,79,136,256 +characters/emotes/05.webp:666,247,55,88 +characters/emotes/06.webp:359,143,150,180 +characters/emotes/animated/00.webp:0,0,0,0 +characters/emotes/animated/an1.webp:28,34,34,33 +characters/emotes/animated/an2.webp:27,33,37,34 +characters/emotes/animated/an3.webp:28,34,34,32 +characters/emotes/animated/emo00.webp:22,30,48,53 +characters/emotes/animated/emo01.webp:19,26,54,60 +characters/emotes/animated/emotion00.webp:0,0,0,0 +characters/emotes/animated/emotion01.webp:8,2,80,96 +characters/emotes/animated/emotion03.webp:9,2,80,96 +characters/emotes/animated/ex00.webp:0,0,0,0 +characters/emotes/animated/ex01.webp:36,28,64,50 +characters/emotes/animated/ex02.webp:32,20,59,64 +characters/emotes/animated/ex03.webp:32,20,60,64 +characters/emotes/animated/ex04.webp:32,20,60,64 +characters/emotes/animated/excl01.webp:36,20,38,39 +characters/emotes/animated/excl02.webp:34,14,45,46 +characters/emotes/animated/excl03.webp:34,10,48,50 +characters/emotes/animated/excl04.webp:34,14,45,46 +characters/emotes/animated/exl00.webp:0,0,0,0 +characters/emotes/animated/exl01.webp:9,24,51,52 +characters/emotes/animated/exl02.webp:6,12,64,66 +characters/emotes/animated/exl03.webp:3,4,78,91 +characters/emotes/animated/exl04.webp:6,12,82,84 +characters/emotes/animated/exl05.webp:6,12,89,84 +characters/emotes/animated/exl06.webp:6,12,82,84 +characters/emotes/animated/exlaim_01.webp:7,14,44,40 +characters/emotes/animated/exlaim_02.webp:7,14,44,40 +characters/emotes/animated/exlaim_03.webp:7,12,44,42 +characters/emotes/animated/exlaim_04.webp:7,6,44,48 +characters/emotes/animated/exlaim_05.webp:7,12,44,42 +characters/emotes/animated/exlaim_06.webp:7,12,44,42 +characters/emotes/animated/exlaim_07.webp:0,0,0,0 +characters/emotes/animated/heart_01.webp:6,13,86,71 +characters/emotes/animated/hoot_01.webp:7,14,44,40 +characters/emotes/animated/hoot_02.webp:7,14,44,40 +characters/emotes/animated/hoot_03.webp:7,14,44,40 +characters/emotes/animated/hoot_04.webp:7,14,44,40 +characters/emotes/animated/hoot_05.webp:7,11,49,43 +characters/emotes/animated/hoot_06.webp:7,9,57,45 +characters/emotes/animated/hoot_07.webp:7,9,57,45 +characters/emotes/animated/q1.webp:25,22,42,50 +characters/emotes/animated/q2.webp:24,14,48,59 +characters/emotes/animated/q3.webp:23,9,54,63 +characters/emotes/animated/q4.webp:24,14,48,59 +characters/emotes/animated/q5.webp:24,14,48,59 +characters/emotes/animated/que1.webp:22,21,32,42 +characters/emotes/animated/que2.webp:20,17,36,47 +characters/emotes/animated/que3.webp:18,10,59,55 +characters/emotes/animated/que4.webp:20,17,61,48 +characters/emotes/animated/que5.webp:20,17,66,48 +characters/emotes/animated/que6.webp:20,17,61,48 +characters/emotes/animated/s1.webp:25,52,16,5 +characters/emotes/animated/s2.webp:27,50,11,8 +characters/emotes/animated/s3.webp:27,50,27,8 +characters/emotes/animated/s4.webp:27,50,24,8 +characters/emotes/animated/s5.webp:27,50,40,8 +characters/emotes/animated/s6.webp:27,50,37,8 +characters/emotes/animated/sad_01.webp:7,14,44,40 +characters/emotes/animated/sad_02.webp:7,14,44,40 +characters/emotes/animated/sad_03.webp:7,14,44,40 +characters/emotes/animated/sad_04.webp:7,14,44,40 +characters/emotes/animated/sur1.webp:20,24,32,41 +characters/emotes/animated/sur2.webp:17,18,37,48 +characters/emotes/animated/sur3.webp:15,14,66,53 +characters/emotes/animated/sur4.webp:17,18,66,48 +characters/emotes/animated/sur5.webp:17,17,71,50 +characters/emotes/animated/sur6.webp:17,18,66,48 +characters/emotes/animated/t1.webp:31,33,33,31 +characters/emotes/animated/t2.webp:27,31,39,35 +characters/emotes/animated/t3.webp:28,33,35,34 +characters/emotes/animated/t4.webp:29,32,31,30 +characters/emotes/animated/thought_01.webp:5,5,57,50 +characters/emotes/animated/thought_02.webp:5,5,57,50 +characters/emotes/blank.webp:0,0,0,0 +characters/genie/base/average_covered.webp:123,25,486,1175 +characters/genie/base/average_nude.webp:123,25,478,1175 +characters/genie/base/b03.webp:1,13,372,587 +characters/genie/base/b04.webp:62,13,238,587 +characters/genie/base/b05.webp:62,13,242,587 +characters/genie/base/b06.webp:1,13,372,587 +characters/genie/base/base.webp:0,4,598,1196 +characters/genie/base/grab_dick.webp:0,4,598,1196 +characters/genie/base/hard.webp:0,4,598,1196 +characters/genie/base/muscular_covered.webp:1,25,746,1175 +characters/genie/base/muscular_nude.webp:1,25,746,1175 +characters/genie/base/open.webp:0,4,598,1196 +characters/genie/base/showing.webp:0,4,598,1196 +characters/genie/chibis/drinking/01.webp:52,43,395,500 +characters/genie/chibis/drinking/01_day.webp:218,43,333,484 +characters/genie/chibis/drinking/02.webp:52,43,398,500 +characters/genie/chibis/drinking/02_day.webp:218,43,333,484 +characters/genie/chibis/drinking/03.webp:52,43,398,500 +characters/genie/chibis/drinking/03_day.webp:218,43,333,484 +characters/genie/chibis/drinking/04.webp:52,43,408,500 +characters/genie/chibis/drinking/04_day.webp:218,43,333,484 +characters/genie/chibis/ghost_stand.webp:37,113,205,378 +characters/genie/chibis/ghost_stand2.webp:22,107,232,384 +characters/genie/chibis/grab/grab_01.webp:42,279,300,383 +characters/genie/chibis/grab/grab_02.webp:42,279,300,383 +characters/genie/chibis/grab/grab_03.webp:42,279,300,383 +characters/genie/chibis/grab/grab_04.webp:42,279,300,383 +characters/genie/chibis/grab/grab_05.webp:42,279,300,383 +characters/genie/chibis/idle/desk_01.webp:80,52,379,460 +characters/genie/chibis/idle/desk_02.webp:80,52,379,460 +characters/genie/chibis/idle/desk_03.webp:80,52,379,460 +characters/genie/chibis/idle/desk_04.webp:80,52,379,460 +characters/genie/chibis/idle/desk_hover.webp:80,52,379,460 +characters/genie/chibis/jerk_off/01.webp:50,78,244,411 +characters/genie/chibis/jerk_off/02.webp:72,78,222,411 +characters/genie/chibis/jerk_off/03.webp:72,78,222,411 +characters/genie/chibis/jerk_off/04.webp:60,78,234,409 +characters/genie/chibis/jerk_off/dick_out(old).webp:49,58,208,438 +characters/genie/chibis/jerk_off/dick_out.webp:67,77,202,413 +characters/genie/chibis/jerk_off/dick_out_normal.webp:67,77,202,413 +characters/genie/chibis/jerk_off/dick_out_shocked.webp:67,77,202,413 +characters/genie/chibis/jerk_off/sperm_short_01.webp:411,352,16,14 +characters/genie/chibis/jerk_off/sperm_short_02.webp:402,346,21,19 +characters/genie/chibis/jerk_off/sperm_short_03.webp:400,340,22,30 +characters/genie/chibis/jerk_off/sperm_short_04.webp:396,331,26,39 +characters/genie/chibis/jerk_off/sperm_short_05.webp:397,325,27,38 +characters/genie/chibis/jerk_off/sperm_short_06.webp:395,323,29,40 +characters/genie/chibis/jerk_off/sperm_short_07.webp:395,323,29,40 +characters/genie/chibis/jerk_off/sperm_short_08.webp:395,323,30,44 +characters/genie/chibis/jerk_off/sperm_short_09.webp:395,323,31,47 +characters/genie/chibis/jerk_off/sperm_short_10.webp:395,323,30,54 +characters/genie/chibis/jerk_off/sperm_short_11.webp:395,323,31,66 +characters/genie/chibis/jerk_off/sperm_short_12.webp:395,323,31,77 +characters/genie/chibis/jerk_off/sperm_short_13.webp:395,323,30,45 +characters/genie/chibis/jerk_off/sperm_short_bottomless_01.webp:411,352,16,14 +characters/genie/chibis/jerk_off/sperm_short_bottomless_02.webp:407,346,16,19 +characters/genie/chibis/jerk_off/sperm_short_bottomless_03.webp:400,340,22,30 +characters/genie/chibis/jerk_off/sperm_short_bottomless_04.webp:396,331,26,39 +characters/genie/chibis/jerk_off/sperm_short_bottomless_05.webp:397,325,27,38 +characters/genie/chibis/jerk_off/sperm_short_bottomless_06.webp:395,323,29,39 +characters/genie/chibis/jerk_off/sperm_short_bottomless_07.webp:395,323,29,40 +characters/genie/chibis/jerk_off/sperm_short_bottomless_08.webp:395,323,30,44 +characters/genie/chibis/jerk_off/sperm_short_bottomless_09.webp:395,323,31,47 +characters/genie/chibis/jerk_off/sperm_short_bottomless_10.webp:395,323,30,54 +characters/genie/chibis/jerk_off/sperm_short_bottomless_11.webp:395,323,31,66 +characters/genie/chibis/jerk_off/sperm_short_bottomless_12.webp:395,323,31,77 +characters/genie/chibis/jerk_off/sperm_short_bottomless_13.webp:395,323,30,45 +characters/genie/chibis/jerk_off/sperm_wide_01.webp:407,349,16,15 +characters/genie/chibis/jerk_off/sperm_wide_02.webp:382,330,41,36 +characters/genie/chibis/jerk_off/sperm_wide_03.webp:357,312,66,60 +characters/genie/chibis/jerk_off/sperm_wide_04.webp:347,301,77,61 +characters/genie/chibis/jerk_off/sperm_wide_05.webp:346,298,78,67 +characters/genie/chibis/jerk_off/sperm_wide_06.webp:342,295,82,75 +characters/genie/chibis/jerk_off/sperm_wide_07.webp:334,295,90,84 +characters/genie/chibis/jerk_off/sperm_wide_08.webp:332,295,92,72 +characters/genie/chibis/jerk_off/sperm_wide_09.webp:332,295,92,72 +characters/genie/chibis/jerk_off/sperm_wide_10.webp:330,295,94,72 +characters/genie/chibis/jerk_off/sperm_wide_11.webp:325,295,98,72 +characters/genie/chibis/jerk_off/sperm_wide_12.webp:323,295,100,75 +characters/genie/chibis/jerk_off/sperm_wide_13.webp:332,295,91,72 +characters/genie/chibis/jerk_off/sperm_wide_14.webp:332,295,91,80 +characters/genie/chibis/jerk_off/sperm_wide_15.webp:332,295,91,88 +characters/genie/chibis/jerk_off/sperm_wide_16.webp:332,295,92,94 +characters/genie/chibis/jerk_off/sperm_wide_17.webp:332,295,93,104 +characters/genie/chibis/jerk_off/sperm_wide_18.webp:332,295,94,78 +characters/genie/chibis/jerk_off_behind_desk/desk_01.webp:80,52,379,460 +characters/genie/chibis/jerk_off_behind_desk/desk_02.webp:80,52,379,460 +characters/genie/chibis/jerk_off_behind_desk/desk_03.webp:80,52,379,460 +characters/genie/chibis/jerk_off_behind_desk/desk_pause.webp:80,52,379,460 +characters/genie/chibis/jerk_off_behind_desk/desk_sperm_01.webp:110,138,23,67 +characters/genie/chibis/jerk_off_behind_desk/desk_sperm_02.webp:103,123,43,95 +characters/genie/chibis/jerk_off_behind_desk/desk_sperm_03.webp:90,104,69,133 +characters/genie/chibis/jerk_off_behind_desk/desk_sperm_04.webp:68,100,109,154 +characters/genie/chibis/jerk_off_behind_desk/desk_sperm_05.webp:48,103,163,152 +characters/genie/chibis/jerk_off_behind_desk/desk_sperm_06.webp:42,106,182,149 +characters/genie/chibis/jerk_off_behind_desk/desk_sperm_07.webp:39,117,192,138 +characters/genie/chibis/jerk_off_behind_desk/desk_sperm_08.webp:36,124,201,131 +characters/genie/chibis/jerk_off_behind_desk/desk_sperm_09.webp:28,124,213,131 +characters/genie/chibis/jerk_off_behind_desk/desk_sperm_10.webp:24,135,220,120 +characters/genie/chibis/jerk_off_behind_desk/desk_sperm_11.webp:39,135,206,120 +characters/genie/chibis/petting/petting_01.webp:7,147,202,384 +characters/genie/chibis/petting/petting_02.webp:7,147,229,384 +characters/genie/chibis/petting/petting_03.webp:7,147,232,384 +characters/genie/chibis/petting/petting_04.webp:7,147,253,384 +characters/genie/chibis/petting/petting_05.webp:7,98,224,433 +characters/genie/chibis/petting/petting_06.webp:7,106,225,425 +characters/genie/chibis/reading/01.webp:83,32,437,573 +characters/genie/chibis/reading/02.webp:83,32,437,573 +characters/genie/chibis/reading/03.webp:83,32,437,573 +characters/genie/chibis/reading/04.webp:83,32,437,573 +characters/genie/chibis/reading/05.webp:83,32,437,573 +characters/genie/chibis/reading/06.webp:83,32,437,573 +characters/genie/chibis/reading/07.webp:83,32,437,573 +characters/genie/chibis/rummage/rum_01.webp:114,276,284,367 +characters/genie/chibis/rummage/rum_02.webp:108,276,290,367 +characters/genie/chibis/rummage/rum_03.webp:100,276,298,367 +characters/genie/chibis/rummage/rum_04.webp:90,276,308,367 +characters/genie/chibis/shocked/01.webp:58,114,182,374 +characters/genie/chibis/sit.webp:30,64,215,408 +characters/genie/chibis/sneeze.webp:10,141,287,309 +characters/genie/chibis/stand.webp:58,114,182,374 +characters/genie/chibis/stand_alt.webp:46,107,232,384 +characters/genie/chibis/stand_by_desk.webp:500,413,547,478 +characters/genie/chibis/walk_01.webp:59,114,204,374 +characters/genie/chibis/walk_02.webp:51,117,212,371 +characters/genie/chibis/walk_03.webp:59,114,204,374 +characters/genie/chibis/walk_04.webp:60,117,203,371 +characters/genie/chibis/working/01.webp:81,52,366,458 +characters/genie/chibis/working/02.webp:81,52,366,458 +characters/genie/chibis/working/03.webp:81,52,366,458 +characters/genie/chibis/working/04.webp:81,52,366,458 +characters/genie/chibis/working/05.webp:81,52,366,458 +characters/genie/chibis/working/06.webp:81,52,366,458 +characters/genie/chibis/working/07.webp:81,52,366,458 +characters/genie/chibis/working/08.webp:81,52,366,458 +characters/genie/chibis/working/09.webp:81,52,366,458 +characters/genie/dick_1.webp:368,772,204,202 +characters/genie/face/angry.webp:292,196,106,66 +characters/genie/face/base.webp:0,0,0,0 +characters/genie/face/grin.webp:292,196,110,70 +characters/genie/face/open.webp:292,196,110,66 +characters/genie/mage.webp:2,0,411,510 +characters/genie/mage10.webp:0,0,403,510 +characters/genie/mage11.webp:2,0,415,510 +characters/genie/mage12.webp:0,757,508,443 +characters/genie/mage13.webp:13,660,469,540 +characters/genie/mage14.webp:0,398,895,802 +characters/genie/mage15.webp:0,398,895,802 +characters/genie/mage16.webp:2,0,411,510 +characters/genie/mage2.webp:0,756,508,444 +characters/genie/mage3.webp:0,756,508,444 +characters/genie/mage4.webp:1,0,412,510 +characters/genie/mage5.webp:0,0,416,510 +characters/genie/mage6.webp:0,0,415,510 +characters/genie/mage7.webp:0,0,419,510 +characters/genie/mage8.webp:0,0,414,510 +characters/genie/mage9.webp:2,0,409,510 +characters/hermione/body/armleft/down.webp:660,521,170,501 +characters/hermione/body/armright/down.webp:272,692,231,292 +characters/hermione/body/backside/big1.webp:450,726,246,474 +characters/hermione/body/backside/big2.webp:451,726,246,474 +characters/hermione/body/backside/big3.webp:450,726,248,474 +characters/hermione/body/base/back.webp:238,228,636,972 +characters/hermione/body/base/front.webp:454,277,276,923 +characters/hermione/body/breasts/big1.webp:431,557,237,180 +characters/hermione/body/breasts/big2.webp:430,558,240,187 +characters/hermione/body/breasts/big3.webp:425,558,245,198 +characters/hermione/body/breasts/big3_backside.webp:425,558,245,198 +characters/hermione/body/breasts/normal.webp:435,570,239,157 +characters/hermione/body/breasts/normal_tight.webp:442,570,232,157 +characters/hermione/body/kneel/kneel_arm.webp:146,512,380,292 +characters/hermione/body/kneel/kneel_base.webp:268,234,654,804 +characters/hermione/body/kneel/kneel_base_2.webp:268,234,654,804 +characters/hermione/body/kneel/kneel_cock.webp:188,788,204,186 +characters/hermione/body/kneel/kneel_cum_1.webp:478,236,220,364 +characters/hermione/body/kneel/kneel_hair.webp:472,234,282,218 +characters/hermione/body/kneel/kneel_leg.webp:504,156,458,1044 +characters/hermione/chibis/01.webp:0,9,175,169 +characters/hermione/chibis/Wand/aka16.webp:18,6,80,122 +characters/hermione/chibis/Wand/aka17.webp:18,6,80,122 +characters/hermione/chibis/Wand/aka18.webp:0,4,98,124 +characters/hermione/chibis/Wand/aka19.webp:7,0,91,128 +characters/hermione/chibis/Wand/aka20.webp:7,0,101,128 +characters/hermione/chibis/Wand/aka21.webp:7,0,99,128 +characters/hermione/chibis/Wand/aka22.webp:7,0,99,128 +characters/hermione/chibis/Wand/h_Wand_01s.webp:2,6,88,167 +characters/hermione/chibis/Wand/h_Wand_02s.webp:2,6,88,167 +characters/hermione/chibis/Wand/h_wand_01f.webp:3,7,89,172 +characters/hermione/chibis/Wand/h_wand_02f.webp:3,7,89,172 +characters/hermione/chibis/Wand/hermione_attack.webp:0,6,170,173 +characters/hermione/chibis/Wand/hermione_attack_n.webp:1,7,169,172 +characters/hermione/chibis/behind_desk/back.webp:600,434,447,459 +characters/hermione/chibis/behind_desk/back_blink.webp:791,514,69,26 +characters/hermione/chibis/behind_desk/back_bottomless.webp:600,432,447,461 +characters/hermione/chibis/behind_desk/back_naked.webp:600,432,447,461 +characters/hermione/chibis/behind_desk/back_topless.webp:600,432,447,461 +characters/hermione/chibis/behind_desk/bottomless.webp:763,466,284,427 +characters/hermione/chibis/behind_desk/bottomless_lift_top.webp:546,466,501,427 +characters/hermione/chibis/behind_desk/clothed.webp:757,466,290,427 +characters/hermione/chibis/behind_desk/front.webp:600,432,447,461 +characters/hermione/chibis/behind_desk/front_blink.webp:786,514,70,25 +characters/hermione/chibis/behind_desk/front_bottomless.webp:600,435,447,458 +characters/hermione/chibis/behind_desk/front_eyes_down.webp:399,262,23,5 +characters/hermione/chibis/behind_desk/front_naked.webp:600,435,447,458 +characters/hermione/chibis/behind_desk/front_topless.webp:600,432,447,461 +characters/hermione/chibis/behind_desk/genie_and_hermione.webp:546,434,501,456 +characters/hermione/chibis/behind_desk/lift_top.webp:546,466,501,427 +characters/hermione/chibis/behind_desk/lift_top_alt.webp:576,432,471,461 +characters/hermione/chibis/behind_desk/naked.webp:763,466,284,427 +characters/hermione/chibis/behind_desk/show_tits.webp:570,432,477,461 +characters/hermione/chibis/behind_desk/topless.webp:546,466,501,427 +characters/hermione/chibis/blowjob/01.webp:548,413,499,478 +characters/hermione/chibis/blowjob/02.webp:548,413,499,478 +characters/hermione/chibis/blowjob/03.webp:548,413,499,478 +characters/hermione/chibis/blowjob/04.webp:548,413,499,478 +characters/hermione/chibis/blowjob/05.webp:548,413,499,478 +characters/hermione/chibis/blowjob/06.webp:548,413,499,478 +characters/hermione/chibis/blowjob/07.webp:548,413,499,478 +characters/hermione/chibis/blowjob/08.webp:548,413,499,478 +characters/hermione/chibis/blowjob/09.webp:548,413,499,478 +characters/hermione/chibis/blowjob/10.webp:548,413,499,478 +characters/hermione/chibis/blowjob/11.webp:548,413,499,478 +characters/hermione/chibis/blowjob/12.webp:548,413,499,478 +characters/hermione/chibis/blowjob/hand_01.webp:494,413,553,478 +characters/hermione/chibis/blowjob/hand_02.webp:494,413,553,478 +characters/hermione/chibis/blowjob/hand_03.webp:494,413,553,478 +characters/hermione/chibis/blowjob/hand_04.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_00.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_01.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_02.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_03.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_04.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_05.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_06.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_07.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_08.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_09.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_10.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_11.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_12.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_13.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_14.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_15.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_16.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_17.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_18.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_19.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_20.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_21.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_22.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_23.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_face_24.webp:494,413,553,478 +characters/hermione/chibis/blowjob/sperm_throat_01.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_02.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_03.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_04.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_05.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_06.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_07.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_08.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_09.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_10.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_11.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_12.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_13.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_14.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_15.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_16.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_17.webp:548,413,499,478 +characters/hermione/chibis/blowjob/sperm_throat_18.webp:548,413,499,478 +characters/hermione/chibis/broom/shime12.webp:71,15,121,94 +characters/hermione/chibis/broom/shime13.webp:71,10,121,99 +characters/hermione/chibis/broom/shime13a.webp:142,20,242,198 +characters/hermione/chibis/broom/shime13b.webp:142,22,242,198 +characters/hermione/chibis/broom/shime13c.webp:142,23,242,199 +characters/hermione/chibis/broom/shime13d.webp:142,26,242,198 +characters/hermione/chibis/broom/shime14.webp:71,15,121,94 +characters/hermione/chibis/broom/shime23.webp:16,41,122,87 +characters/hermione/chibis/broom/shime23a.webp:16,40,122,87 +characters/hermione/chibis/broom/shime23b.webp:16,39,122,87 +characters/hermione/chibis/broom/shime23c.webp:16,38,122,87 +characters/hermione/chibis/broom/shime23d.webp:16,41,122,87 +characters/hermione/chibis/broom/shime23e.webp:16,41,122,87 +characters/hermione/chibis/broom/shime23f.webp:16,40,122,87 +characters/hermione/chibis/broom/shime23g.webp:16,39,122,87 +characters/hermione/chibis/broom/shime24.webp:16,45,122,83 +characters/hermione/chibis/broom/shime25.webp:16,41,122,87 +characters/hermione/chibis/dance/01_dancing_01.webp:4,13,176,333 +characters/hermione/chibis/dance/01_dancing_02.webp:4,11,176,335 +characters/hermione/chibis/dance/01_dancing_03.webp:4,8,176,338 +characters/hermione/chibis/dance/01_dancing_04.webp:4,11,176,335 +characters/hermione/chibis/dance/02_no_vest_01.webp:6,13,170,333 +characters/hermione/chibis/dance/02_no_vest_02.webp:6,12,171,334 +characters/hermione/chibis/dance/02_no_vest_03.webp:6,11,170,335 +characters/hermione/chibis/dance/02_no_vest_04.webp:6,12,171,334 +characters/hermione/chibis/dance/03_no_shirt_01.webp:6,13,170,333 +characters/hermione/chibis/dance/03_no_shirt_02.webp:6,11,170,335 +characters/hermione/chibis/dance/03_no_shirt_03.webp:6,12,170,334 +characters/hermione/chibis/dance/03_no_shirt_04.webp:6,11,170,335 +characters/hermione/chibis/dance/03_no_shirt_05.webp:6,11,170,335 +characters/hermione/chibis/dance/03_no_shirt_06.webp:6,13,170,333 +characters/hermione/chibis/dance/03_no_shirt_07.webp:6,13,170,333 +characters/hermione/chibis/dance/03_no_shirt_08.webp:6,13,170,333 +characters/hermione/chibis/dance/03_no_shirt_09.webp:6,13,170,333 +characters/hermione/chibis/dance/04_no_skirt_01.webp:6,13,170,333 +characters/hermione/chibis/dance/04_no_skirt_02.webp:6,11,170,335 +characters/hermione/chibis/dance/04_no_skirt_03.webp:6,11,170,335 +characters/hermione/chibis/dance/04_no_skirt_04.webp:6,11,170,335 +characters/hermione/chibis/dance/05_panties_01.webp:6,13,170,333 +characters/hermione/chibis/dance/05_panties_02.webp:6,11,170,335 +characters/hermione/chibis/dance/05_panties_03.webp:6,11,170,335 +characters/hermione/chibis/dance/05_panties_04.webp:6,10,170,336 +characters/hermione/chibis/dance/05_panties_05.webp:6,10,170,336 +characters/hermione/chibis/dance/05_panties_06.webp:6,13,170,333 +characters/hermione/chibis/dance/05_panties_07.webp:6,13,170,333 +characters/hermione/chibis/dance/05_panties_08.webp:6,13,170,333 +characters/hermione/chibis/dance/05_panties_09.webp:6,13,170,333 +characters/hermione/chibis/dance/05_panties_10.webp:3,7,85,166 +characters/hermione/chibis/dance/07_dance_01.webp:6,13,170,333 +characters/hermione/chibis/dance/07_dance_02.webp:6,11,170,335 +characters/hermione/chibis/dance/07_dance_03.webp:6,12,170,334 +characters/hermione/chibis/dance/07_dance_04.webp:6,11,170,335 +characters/hermione/chibis/dance/07_dance_05.webp:6,11,170,335 +characters/hermione/chibis/dance/07_dance_06.webp:6,13,170,333 +characters/hermione/chibis/dance/07_dance_07.webp:6,13,170,333 +characters/hermione/chibis/dance/07_dance_08.webp:6,13,170,333 +characters/hermione/chibis/dance/07_dance_09.webp:6,13,170,333 +characters/hermione/chibis/dance/07_dance_10.webp:3,7,85,166 +characters/hermione/chibis/dance/sit_naked.webp:7,31,82,150 +characters/hermione/chibis/dance/sit_naked_blink.webp:7,31,82,150 +characters/hermione/chibis/fingering/blink.webp:928,632,66,23 +characters/hermione/chibis/fingering/idle.webp:600,435,448,458 +characters/hermione/chibis/fingering/idle_touch.webp:600,433,448,460 +characters/hermione/chibis/fingering/n_01.webp:600,435,448,458 +characters/hermione/chibis/fingering/n_02.webp:600,434,448,459 +characters/hermione/chibis/fingering/n_03.webp:600,432,448,461 +characters/hermione/chibis/fingering/n_04.webp:600,433,448,460 +characters/hermione/chibis/fingering/n_cumming_01.webp:600,434,448,459 +characters/hermione/chibis/fingering/n_cumming_02.webp:600,434,448,459 +characters/hermione/chibis/fingering/n_idle.webp:600,435,448,458 +characters/hermione/chibis/fingering/n_idle_touch.webp:600,434,448,459 +characters/hermione/chibis/fingering/n_solo.webp:774,526,274,365 +characters/hermione/chibis/fingering/solo.webp:774,527,274,364 +characters/hermione/chibis/grope_ass/back_b_01.webp:600,434,447,459 +characters/hermione/chibis/grope_ass/back_b_02.webp:600,434,447,459 +characters/hermione/chibis/grope_ass/back_b_03.webp:600,434,447,459 +characters/hermione/chibis/grope_ass/back_b_05.webp:600,434,447,459 +characters/hermione/chibis/grope_ass/back_blink.webp:791,514,69,26 +characters/hermione/chibis/grope_ass/back_d_01.webp:600,434,447,459 +characters/hermione/chibis/grope_ass/back_d_02.webp:600,434,447,459 +characters/hermione/chibis/grope_ass/back_d_03.webp:600,434,447,459 +characters/hermione/chibis/grope_ass/back_d_05.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/back_e_01.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/back_e_02.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/back_e_03.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/back_e_05.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/back_f_01.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/back_f_02.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/back_f_03.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/back_f_05.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_01.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_02.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_03.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_05.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_blink.webp:786,514,70,25 +characters/hermione/chibis/grope_ass/front_e_01.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_e_02.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_e_03.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_e_05.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_g_01.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_g_02.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_g_03.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_g_05.webp:600,435,447,458 +characters/hermione/chibis/grope_ass/front_h_01.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_h_02.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_h_03.webp:600,432,447,461 +characters/hermione/chibis/grope_ass/front_h_05.webp:600,435,447,458 +characters/hermione/chibis/grope_ass/not_used/back_g_01.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/back_g_02.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/back_g_03.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/back_g_05.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/back_h_01.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/back_h_02.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/back_h_03.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/back_h_05.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/front_c_01.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/front_c_02.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/front_c_03.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/front_c_05.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/front_f_01.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/front_f_02.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/front_f_03.webp:300,216,224,222 +characters/hermione/chibis/grope_ass/not_used/front_f_05.webp:300,216,224,222 +characters/hermione/chibis/grope_ass_podium/blink.webp:178,48,69,26 +characters/hermione/chibis/grope_ass_podium/close.webp:187,55,63,48 +characters/hermione/chibis/grope_ass_podium/cumming.webp:178,44,72,59 +characters/hermione/chibis/grope_ass_podium/grope_1.webp:1,0,280,410 +characters/hermione/chibis/grope_ass_podium/grope_2.webp:1,3,280,407 +characters/hermione/chibis/grope_ass_podium/grope_3.webp:1,3,280,407 +characters/hermione/chibis/grope_ass_podium/horny.webp:178,44,71,57 +characters/hermione/chibis/grope_ass_podium/idle.webp:0,3,281,407 +characters/hermione/chibis/grope_breasts/01.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/02.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/03.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/04.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/05.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/06.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/07.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/08.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_01.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_02.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_03.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_04.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_05.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_06.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_07.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_08.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_n_01.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_n_02.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_n_03.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_n_04.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_n_05.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_n_06.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_n_07.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_n_08.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_01.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_02.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_03.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_04.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_05.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_06.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_07.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_08.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_lift_01.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_lift_02.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_lift_03.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_lift_04.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_lift_05.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_lift_06.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_lift_07.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_o_lift_08.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_p_01.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_p_02.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_p_03.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_p_04.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_p_05.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_p_06.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_p_07.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/bare_p_08.webp:544,376,503,517 +characters/hermione/chibis/grope_breasts/blink.webp:786,514,70,25 +characters/hermione/chibis/grope_breasts/masturbate_01.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_02.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_03.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_04.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_bottomless_01.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_bottomless_02.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_bottomless_03.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_bottomless_04.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_01.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_02.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_03.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_04.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_clothed_01.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_clothed_02.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_clothed_03.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_clothed_04.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_naked_01.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_naked_02.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_naked_03.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_naked_04.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_topless_01.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_topless_02.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_topless_03.webp:546,423,501,470 +characters/hermione/chibis/grope_breasts/masturbate_topless_04.webp:546,423,501,470 +characters/hermione/chibis/handjob/01.webp:474,416,361,508 +characters/hermione/chibis/handjob/02.webp:474,416,361,508 +characters/hermione/chibis/handjob/03.webp:474,416,361,508 +characters/hermione/chibis/handjob/04.webp:474,416,361,508 +characters/hermione/chibis/handjob/05.webp:474,416,361,508 +characters/hermione/chibis/handjob/06.webp:474,416,361,508 +characters/hermione/chibis/handjob/kiss_01.webp:472,415,338,507 +characters/hermione/chibis/handjob/kiss_02.webp:472,415,338,507 +characters/hermione/chibis/handjob/kiss_03.webp:472,415,338,507 +characters/hermione/chibis/handjob/kiss_04.webp:472,415,338,507 +characters/hermione/chibis/handjob/kiss_05.webp:472,415,338,507 +characters/hermione/chibis/handjob/kiss_06.webp:472,415,338,507 +characters/hermione/chibis/handjob/kiss_07.webp:472,415,338,507 +characters/hermione/chibis/handjob/kiss_08.webp:472,415,338,507 +characters/hermione/chibis/handjob/kiss_09.webp:472,415,338,507 +characters/hermione/chibis/handjob/kiss_10.webp:472,415,338,507 +characters/hermione/chibis/handjob/kiss_11.webp:472,415,338,507 +characters/hermione/chibis/handjob/kiss_12.webp:472,415,338,507 +characters/hermione/chibis/handjob/sperm_kiss_01.webp:472,415,338,507 +characters/hermione/chibis/handjob/sperm_kiss_02.webp:472,415,338,507 +characters/hermione/chibis/handjob/sperm_kiss_03.webp:472,415,338,507 +characters/hermione/chibis/handjob/sperm_kiss_04.webp:472,415,338,507 +characters/hermione/chibis/handjob/sperm_kiss_05.webp:472,415,338,507 +characters/hermione/chibis/handjob/sperm_kiss_06.webp:472,415,338,507 +characters/hermione/chibis/handjob/sperm_kiss_07.webp:472,415,338,507 +characters/hermione/chibis/handjob/sperm_on_00.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_01.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_02.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_03.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_04.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_05.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_06.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_07.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_08.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_09.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_10.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_11.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_12.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_13.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_14.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_15.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_16.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_17.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_18.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_19.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_20.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_21.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_22.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_23.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_24.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_on_25.webp:474,416,361,508 +characters/hermione/chibis/handjob/sperm_under_01.webp:474,416,315,508 +characters/hermione/chibis/handjob/sperm_under_02.webp:474,416,315,508 +characters/hermione/chibis/handjob/sperm_under_03.webp:474,416,315,508 +characters/hermione/chibis/handjob/sperm_under_04.webp:474,416,315,508 +characters/hermione/chibis/handjob/sperm_under_05.webp:474,416,315,508 +characters/hermione/chibis/handjob/sperm_under_06.webp:474,416,315,508 +characters/hermione/chibis/handjob/sperm_under_07.webp:474,416,315,508 +characters/hermione/chibis/handjob/sperm_under_08.webp:474,416,315,508 +characters/hermione/chibis/handjob/sperm_under_09.webp:474,416,315,508 +characters/hermione/chibis/handjob/sperm_under_10.webp:474,416,315,508 +characters/hermione/chibis/handjob/sperm_under_11.webp:474,416,315,508 +characters/hermione/chibis/handjob/sperm_under_12.webp:474,416,315,508 +characters/hermione/chibis/handjob/sperm_under_13.webp:474,416,315,508 +characters/hermione/chibis/hit_on_head/01.webp:4,29,176,357 +characters/hermione/chibis/hit_on_head/02.webp:4,36,176,350 +characters/hermione/chibis/hit_on_head/03.webp:4,25,176,361 +characters/hermione/chibis/hit_on_head/04.webp:0,39,180,347 +characters/hermione/chibis/kneel/1.webp:0,0,237,242 +characters/hermione/chibis/kneel/2.webp:0,0,237,242 +characters/hermione/chibis/lev/shime10.webp:33,6,65,121 +characters/hermione/chibis/lev/shime18.webp:17,12,89,116 +characters/hermione/chibis/lev/shime19.webp:26,8,81,119 +characters/hermione/chibis/lev/shime22.webp:14,6,84,116 +characters/hermione/chibis/lev/shime37.webp:14,11,97,117 +characters/hermione/chibis/lev/shime4.webp:28,10,78,117 +characters/hermione/chibis/lev/shime4b.webp:28,10,78,117 +characters/hermione/chibis/lev/shime4c.webp:28,10,78,117 +characters/hermione/chibis/lev/shime5.webp:26,6,72,122 +characters/hermione/chibis/lev/shime6.webp:33,6,65,121 +characters/hermione/chibis/lev/shime7.webp:26,6,72,122 +characters/hermione/chibis/lev/shime8.webp:33,6,65,121 +characters/hermione/chibis/lev/shime9.webp:26,6,72,122 +characters/hermione/chibis/lift_skirt/aka07.webp:33,6,65,122 +characters/hermione/chibis/lift_skirt/aka08.webp:38,3,69,125 +characters/hermione/chibis/lift_skirt/aka09.webp:38,3,69,125 +characters/hermione/chibis/lift_skirt/panties_00.webp:12,9,159,354 +characters/hermione/chibis/lift_skirt/panties_01.webp:12,9,159,354 +characters/hermione/chibis/lift_skirt/panties_02.webp:12,9,159,354 +characters/hermione/chibis/lift_skirt/panties_02_s.webp:40,64,82,181 +characters/hermione/chibis/lift_top/aka01.webp:33,6,65,122 +characters/hermione/chibis/lift_top/aka02.webp:27,6,71,122 +characters/hermione/chibis/lift_top/aka03.webp:27,6,71,122 +characters/hermione/chibis/lift_top/aka04.webp:27,6,71,122 +characters/hermione/chibis/lift_top/aka05.webp:27,6,71,122 +characters/hermione/chibis/lift_top/aka06.webp:27,6,71,122 +characters/hermione/chibis/lift_top/boing01.webp:99,19,193,365 +characters/hermione/chibis/lift_top/boing02.webp:82,19,210,365 +characters/hermione/chibis/lift_top/boing03.webp:82,19,210,365 +characters/hermione/chibis/lift_top/boing04.webp:82,19,210,365 +characters/hermione/chibis/lift_top/boing05.webp:82,19,210,365 +characters/hermione/chibis/lift_top/boing06.webp:82,19,210,365 +characters/hermione/chibis/lift_top/tits_00.webp:0,0,180,363 +characters/hermione/chibis/lying/aka23.webp:0,85,129,44 +characters/hermione/chibis/lying/aka24.webp:0,85,129,44 +characters/hermione/chibis/lying/shime20.webp:0,84,128,44 +characters/hermione/chibis/lying/shime21.webp:0,84,128,44 +characters/hermione/chibis/masturbate/01.webp:8,19,170,333 +characters/hermione/chibis/masturbate/02.webp:8,19,170,333 +characters/hermione/chibis/masturbate/blink.webp:28,43,125,73 +characters/hermione/chibis/potion/drink_1.webp:29,27,222,330 +characters/hermione/chibis/potion/drink_2.webp:29,27,222,330 +characters/hermione/chibis/potion/drink_3.webp:25,23,217,334 +characters/hermione/chibis/potion/drink_4.webp:53,26,189,331 +characters/hermione/chibis/potion/drink_5.webp:25,23,217,334 +characters/hermione/chibis/potion/drink_6.webp:29,24,213,333 +characters/hermione/chibis/potion/drink_7.webp:65,24,177,333 +characters/hermione/chibis/potion/drink_nude_1.webp:29,27,222,331 +characters/hermione/chibis/potion/drink_nude_2.webp:29,27,222,331 +characters/hermione/chibis/potion/drink_nude_3.webp:25,23,217,335 +characters/hermione/chibis/potion/drink_nude_4.webp:53,26,189,332 +characters/hermione/chibis/potion/drink_nude_5.webp:25,23,217,335 +characters/hermione/chibis/potion/drink_nude_6.webp:29,23,213,335 +characters/hermione/chibis/potion/drink_nude_7.webp:63,23,179,335 +characters/hermione/chibis/reading/0.webp:110,149,314,363 +characters/hermione/chibis/reading/0_sleep.webp:17,317,471,195 +characters/hermione/chibis/reading/1.webp:112,149,314,363 +characters/hermione/chibis/reading/1_sleep.webp:17,317,471,195 +characters/hermione/chibis/reading/2.webp:112,149,314,363 +characters/hermione/chibis/reading/3.webp:112,149,314,363 +characters/hermione/chibis/reading/4.webp:112,149,314,363 +characters/hermione/chibis/reading/5.webp:110,149,314,363 +characters/hermione/chibis/ribbon/blink.webp:8,19,170,333 +characters/hermione/chibis/ribbon/default.webp:8,19,170,333 +characters/hermione/chibis/run/h_run_01.webp:6,14,178,343 +characters/hermione/chibis/run/h_run_02.webp:6,15,178,339 +characters/hermione/chibis/run/h_run_03.webp:0,17,183,337 +characters/hermione/chibis/run/h_run_04.webp:6,15,178,334 +characters/hermione/chibis/run/h_run_05.webp:0,18,184,325 +characters/hermione/chibis/run/h_run_a_01.webp:6,14,178,343 +characters/hermione/chibis/run/h_run_a_02.webp:6,15,178,339 +characters/hermione/chibis/run/h_run_a_03.webp:0,17,183,337 +characters/hermione/chibis/run/h_run_a_04.webp:6,15,178,334 +characters/hermione/chibis/run/h_run_a_05.webp:0,18,184,325 +characters/hermione/chibis/run/h_run_b_01.webp:3,7,89,172 +characters/hermione/chibis/run/h_run_b_02.webp:3,8,89,169 +characters/hermione/chibis/run/h_run_b_03.webp:0,8,92,169 +characters/hermione/chibis/run/h_run_b_04.webp:3,8,89,166 +characters/hermione/chibis/run/h_run_b_05.webp:0,9,92,163 +characters/hermione/chibis/run/h_run_c_01.webp:3,7,89,172 +characters/hermione/chibis/run/h_run_c_02.webp:3,8,89,169 +characters/hermione/chibis/run/h_run_c_03.webp:0,9,92,168 +characters/hermione/chibis/run/h_run_c_04.webp:3,8,89,166 +characters/hermione/chibis/run/h_run_c_05.webp:0,9,92,163 +characters/hermione/chibis/run/h_run_d_01.webp:3,7,89,172 +characters/hermione/chibis/run/h_run_d_02.webp:3,8,89,169 +characters/hermione/chibis/run/h_run_d_03.webp:0,9,92,168 +characters/hermione/chibis/run/h_run_d_04.webp:3,8,89,166 +characters/hermione/chibis/run/h_run_d_05.webp:0,9,92,163 +characters/hermione/chibis/run/h_run_e_01.webp:3,7,89,172 +characters/hermione/chibis/run/h_run_e_02.webp:3,7,89,170 +characters/hermione/chibis/run/h_run_e_03.webp:0,8,92,169 +characters/hermione/chibis/run/h_run_e_04.webp:3,8,89,166 +characters/hermione/chibis/run/h_run_e_05.webp:0,9,92,163 +characters/hermione/chibis/sex/01.webp:578,265,670,771 +characters/hermione/chibis/sex/02.webp:578,266,672,770 +characters/hermione/chibis/sex/03.webp:580,266,670,770 +characters/hermione/chibis/sex/04.webp:576,266,670,770 +characters/hermione/chibis/sex/05.webp:578,265,670,771 +characters/hermione/chibis/sex/06.webp:578,265,670,771 +characters/hermione/chibis/sex/07.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_01.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_02.webp:578,266,672,770 +characters/hermione/chibis/sex/creampie_03.webp:580,266,670,770 +characters/hermione/chibis/sex/creampie_04.webp:576,266,670,770 +characters/hermione/chibis/sex/creampie_05.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_06.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_07.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_08.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_09.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_10.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_11.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_12.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_13.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_14.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_15.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_16.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_17.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_18.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_19.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_20.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_21.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_22.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_23.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_24.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_n_01.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_n_02.webp:578,266,672,770 +characters/hermione/chibis/sex/creampie_n_03.webp:580,266,670,770 +characters/hermione/chibis/sex/creampie_n_04.webp:576,266,670,770 +characters/hermione/chibis/sex/creampie_n_05.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_n_06.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_n_07.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_n_08.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_n_09.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_n_10.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_n_11.webp:578,265,670,771 +characters/hermione/chibis/sex/creampie_n_12.webp:577,265,671,771 +characters/hermione/chibis/sex/creampie_n_13.webp:577,265,671,771 +characters/hermione/chibis/sex/creampie_n_14.webp:577,265,671,771 +characters/hermione/chibis/sex/creampie_n_15.webp:577,265,671,771 +characters/hermione/chibis/sex/creampie_n_16.webp:577,265,671,771 +characters/hermione/chibis/sex/creampie_n_17.webp:577,265,671,771 +characters/hermione/chibis/sex/creampie_n_18.webp:577,265,671,771 +characters/hermione/chibis/sex/creampie_n_19.webp:577,265,671,771 +characters/hermione/chibis/sex/creampie_n_20.webp:577,265,671,771 +characters/hermione/chibis/sex/creampie_n_21.webp:577,265,671,771 +characters/hermione/chibis/sex/creampie_n_22.webp:577,265,671,771 +characters/hermione/chibis/sex/creampie_n_23.webp:577,265,671,771 +characters/hermione/chibis/sex/creampie_n_24.webp:577,265,671,771 +characters/hermione/chibis/sex/n_01.webp:578,265,670,771 +characters/hermione/chibis/sex/n_02.webp:578,266,672,770 +characters/hermione/chibis/sex/n_03.webp:580,266,670,770 +characters/hermione/chibis/sex/n_04.webp:576,266,670,770 +characters/hermione/chibis/sex/n_05.webp:578,265,670,771 +characters/hermione/chibis/sex/n_06.webp:578,265,670,771 +characters/hermione/chibis/sex/n_07.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_01.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_02.webp:578,266,672,770 +characters/hermione/chibis/sex/sperm_03.webp:580,266,670,770 +characters/hermione/chibis/sex/sperm_04.webp:576,266,670,770 +characters/hermione/chibis/sex/sperm_05.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_06.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_07.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_08.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_09.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_10.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_11.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_12.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_13.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_14.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_15.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_16.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_17.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_18.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_19.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_20.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_21.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_22.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_23.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_24.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_01.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_02.webp:578,266,672,770 +characters/hermione/chibis/sex/sperm_n_03.webp:580,266,670,770 +characters/hermione/chibis/sex/sperm_n_04.webp:576,266,670,770 +characters/hermione/chibis/sex/sperm_n_05.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_06.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_07.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_08.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_09.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_10.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_11.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_12.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_13.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_14.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_15.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_16.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_17.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_18.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_19.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_20.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_21.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_22.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_23.webp:578,265,670,771 +characters/hermione/chibis/sex/sperm_n_24.webp:578,265,670,771 +characters/hermione/chibis/sitting/aka27.webp:30,5,69,118 +characters/hermione/chibis/sitting/aka27b.webp:30,5,69,118 +characters/hermione/chibis/sitting/aka27c.webp:30,5,69,118 +characters/hermione/chibis/sitting/aka27d.webp:30,5,69,118 +characters/hermione/chibis/sitting/aka28.webp:30,5,69,119 +characters/hermione/chibis/sitting/aka28b.webp:30,5,69,119 +characters/hermione/chibis/sitting/aka28d.webp:30,5,69,119 +characters/hermione/chibis/sitting/aka29.webp:30,5,69,119 +characters/hermione/chibis/sitting/aka29b.webp:30,5,69,119 +characters/hermione/chibis/sitting/aka29d.webp:30,5,69,119 +characters/hermione/chibis/sitting/aka30.webp:30,5,69,118 +characters/hermione/chibis/sitting/aka30b.webp:30,5,69,118 +characters/hermione/chibis/sitting/aka30d.webp:30,5,69,118 +characters/hermione/chibis/sitting/shime30.webp:30,5,69,118 +characters/hermione/chibis/sitting/shime30b.webp:30,5,69,118 +characters/hermione/chibis/sitting/shime31.webp:30,5,69,118 +characters/hermione/chibis/sitting/sit_naked.webp:15,61,163,302 +characters/hermione/chibis/sitting/sit_naked_blink.webp:15,61,163,302 +characters/hermione/chibis/strip_01.webp:0,9,175,169 +characters/hermione/chibis/titjob/tj_cum_chest_01.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_02.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_03.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_04.webp:0,5,349,467 +characters/hermione/chibis/titjob/tj_cum_chest_05.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_06.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_07.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_08.webp:0,5,349,467 +characters/hermione/chibis/titjob/tj_cum_chest_09.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_10.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_11.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_12.webp:0,5,349,467 +characters/hermione/chibis/titjob/tj_cum_chest_13.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_14.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_15.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_16.webp:0,5,349,467 +characters/hermione/chibis/titjob/tj_cum_chest_17.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_18.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_19.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_20.webp:0,5,349,467 +characters/hermione/chibis/titjob/tj_cum_chest_21.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_22.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_23.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_chest_24.webp:0,5,349,467 +characters/hermione/chibis/titjob/tj_cum_chest_25.webp:0,5,349,465 +characters/hermione/chibis/titjob/tj_cum_mouth_01.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_02.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_03.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_04.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_05.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_06.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_07.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_08.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_09.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_10.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_11.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_12.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_13.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_14.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_15.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_16.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_17.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_cum_mouth_18.webp:0,0,274,508 +characters/hermione/chibis/titjob/tj_sex_01.webp:54,32,316,476 +characters/hermione/chibis/titjob/tj_sex_02.webp:54,32,274,476 +characters/hermione/chibis/titjob/tj_sex_03.webp:54,32,274,476 +characters/hermione/chibis/titjob/tj_sex_04.webp:54,32,274,476 +characters/hermione/chibis/walk/h_walk_a_01.webp:6,14,178,343 +characters/hermione/chibis/walk/h_walk_a_02.webp:6,15,178,343 +characters/hermione/chibis/walk/h_walk_a_03.webp:5,15,179,341 +characters/hermione/chibis/walk/h_walk_a_04.webp:6,15,178,343 +characters/hermione/chibis/walk/h_walk_a_05.webp:6,18,178,338 +characters/hermione/chibis/walk/h_walk_a_06.webp:6,14,178,343 +characters/hermione/chibis/walk/h_walk_b_01.webp:6,14,178,343 +characters/hermione/chibis/walk/h_walk_b_02.webp:6,15,178,343 +characters/hermione/chibis/walk/h_walk_b_03.webp:5,15,179,341 +characters/hermione/chibis/walk/h_walk_b_04.webp:6,15,178,343 +characters/hermione/chibis/walk/h_walk_b_05.webp:6,18,178,338 +characters/hermione/chibis/walk/h_walk_b_06.webp:6,14,178,343 +characters/hermione/chibis/walk/h_walk_c_01.webp:6,14,178,343 +characters/hermione/chibis/walk/h_walk_c_02.webp:6,15,178,343 +characters/hermione/chibis/walk/h_walk_c_03.webp:5,15,179,341 +characters/hermione/chibis/walk/h_walk_c_04.webp:6,15,178,343 +characters/hermione/chibis/walk/h_walk_c_05.webp:6,18,178,338 +characters/hermione/chibis/walk/h_walk_c_06.webp:6,14,178,343 +characters/hermione/chibis/walk/h_walk_d_01.webp:6,9,170,337 +characters/hermione/chibis/walk/h_walk_d_02.webp:6,8,170,340 +characters/hermione/chibis/walk/h_walk_d_03.webp:6,8,170,338 +characters/hermione/chibis/walk/h_walk_d_04.webp:6,9,170,339 +characters/hermione/chibis/walk/h_walk_d_05.webp:6,9,170,335 +characters/hermione/chibis/walk/h_walk_d_06.webp:6,9,170,337 +characters/hermione/chibis/walk/h_walk_e_01.webp:8,15,170,337 +characters/hermione/chibis/walk/h_walk_e_02.webp:8,14,170,340 +characters/hermione/chibis/walk/h_walk_e_03.webp:8,14,170,338 +characters/hermione/chibis/walk/h_walk_e_04.webp:8,15,170,339 +characters/hermione/chibis/walk/h_walk_e_05.webp:8,15,170,335 +characters/hermione/chibis/walk/h_walk_e_06.webp:8,15,170,337 +characters/hermione/chibis/walk/h_walk_f_01.webp:8,18,170,336 +characters/hermione/chibis/walk/h_walk_f_02.webp:8,14,170,340 +characters/hermione/chibis/walk/h_walk_f_03.webp:8,14,170,338 +characters/hermione/chibis/walk/h_walk_f_04.webp:8,15,170,339 +characters/hermione/chibis/walk/h_walk_f_05.webp:8,15,170,335 +characters/hermione/chibis/walk/h_walk_f_06.webp:8,18,170,336 +characters/hermione/chibis/walk/h_walk_g_01.webp:4,15,174,337 +characters/hermione/chibis/walk/h_walk_g_02.webp:5,14,173,340 +characters/hermione/chibis/walk/h_walk_g_03.webp:5,14,173,338 +characters/hermione/chibis/walk/h_walk_g_04.webp:4,15,174,339 +characters/hermione/chibis/walk/h_walk_g_05.webp:4,15,174,335 +characters/hermione/chibis/walk/h_walk_g_06.webp:4,15,174,337 +characters/hermione/chibis/walk/h_walk_h_01.webp:8,15,176,337 +characters/hermione/chibis/walk/h_walk_h_02.webp:8,14,176,340 +characters/hermione/chibis/walk/h_walk_h_03.webp:8,14,176,338 +characters/hermione/chibis/walk/h_walk_h_04.webp:8,15,176,339 +characters/hermione/chibis/walk/h_walk_h_05.webp:8,15,176,335 +characters/hermione/chibis/walk/h_walk_h_06.webp:8,15,176,337 +characters/hermione/chibis/walk/h_walk_n_01.webp:8,19,170,333 +characters/hermione/chibis/walk/h_walk_n_02.webp:8,18,170,337 +characters/hermione/chibis/walk/h_walk_n_03.webp:8,18,170,335 +characters/hermione/chibis/walk/h_walk_n_04.webp:8,19,170,334 +characters/hermione/chibis/walk/h_walk_n_05.webp:8,19,170,333 +characters/hermione/chibis/walk/h_walk_n_06.webp:8,19,170,332 +characters/hermione/chibis/walk/h_walk_robe_01.webp:6,13,180,345 +characters/hermione/chibis/walk/h_walk_robe_01_blink.webp:6,13,180,345 +characters/hermione/chibis/walk/h_walk_robe_02.webp:6,15,180,343 +characters/hermione/chibis/walk/h_walk_robe_03.webp:6,15,180,341 +characters/hermione/chibis/walk/h_walk_robe_04.webp:6,15,180,342 +characters/hermione/chibis/walk/h_walk_robe_05.webp:6,13,180,345 +characters/hermione/chibis/walk/h_walk_robe_06.webp:6,15,180,343 +characters/hermione/chibis/walk/h_walk_robe_07.webp:6,17,180,339 +characters/hermione/chibis/walk/h_walk_robe_08.webp:6,15,180,343 +characters/hermione/chibis/walk/h_walk_robe_n_01.webp:6,13,180,345 +characters/hermione/chibis/walk/h_walk_robe_n_01_blink.webp:6,13,180,345 +characters/hermione/chibis/walk/h_walk_robe_n_02.webp:6,15,180,342 +characters/hermione/chibis/walk/h_walk_robe_n_03.webp:6,15,180,341 +characters/hermione/chibis/walk/h_walk_robe_n_04.webp:6,15,180,342 +characters/hermione/chibis/walk/h_walk_robe_n_05.webp:6,13,180,345 +characters/hermione/chibis/walk/h_walk_robe_n_06.webp:6,15,180,343 +characters/hermione/chibis/walk/h_walk_robe_n_07.webp:6,17,180,339 +characters/hermione/chibis/walk/h_walk_robe_n_08.webp:6,15,180,342 +characters/hermione/clothes/accessory/ball_sash/0.webp:417,770,304,224 +characters/hermione/clothes/accessory/ball_sash/0_back.webp:451,952,251,43 +characters/hermione/clothes/accessory/ball_sash/1.webp:498,766,131,125 +characters/hermione/clothes/accessory/ball_sash/extra.webp:510,769,43,117 +characters/hermione/clothes/accessory/ball_sash/outline.webp:414,765,308,232 +characters/hermione/clothes/accessory/ball_sash/outline_back.webp:458,990,242,7 +characters/hermione/clothes/accessory/bunny_badge/0.webp:568,789,60,99 +characters/hermione/clothes/accessory/bunny_badge/outline.webp:568,789,61,101 +characters/hermione/clothes/accessory/cat_tail/0.webp:315,950,147,237 +characters/hermione/clothes/accessory/cat_tail/outline.webp:312,947,152,240 +characters/hermione/clothes/accessory/croft_belt/0.webp:432,815,278,240 +characters/hermione/clothes/accessory/croft_belt/1.webp:443,869,225,175 +characters/hermione/clothes/accessory/croft_belt/2.webp:494,854,61,38 +characters/hermione/clothes/accessory/croft_belt/extra.webp:444,857,214,185 +characters/hermione/clothes/accessory/croft_belt/outline.webp:431,814,281,242 +characters/hermione/clothes/accessory/croft_suspenders/0.webp:506,510,184,172 +characters/hermione/clothes/accessory/croft_suspenders/1.webp:521,523,155,47 +characters/hermione/clothes/accessory/croft_suspenders/outline.webp:505,509,188,175 +characters/hermione/clothes/accessory/house_emblem/0.webp:557,611,62,69 +characters/hermione/clothes/accessory/house_emblem/1.webp:566,616,41,57 +characters/hermione/clothes/accessory/house_emblem/outline.webp:556,611,64,72 +characters/hermione/clothes/accessory/leg_wrap/0.webp:490,858,202,167 +characters/hermione/clothes/accessory/leg_wrap/1.webp:504,857,169,168 +characters/hermione/clothes/accessory/leg_wrap/outline.webp:488,856,207,170 +characters/hermione/clothes/accessory/msmarv_ribbon/0.webp:434,797,270,317 +characters/hermione/clothes/accessory/msmarv_ribbon/outline.webp:431,794,275,323 +characters/hermione/clothes/accessory/tifa_belt/0.webp:452,841,237,111 +characters/hermione/clothes/accessory/tifa_belt/1.webp:524,894,22,10 +characters/hermione/clothes/accessory/tifa_belt/extra.webp:452,849,237,52 +characters/hermione/clothes/accessory/tifa_belt/outline.webp:451,840,240,112 +characters/hermione/clothes/accessory/tifa_suspenders/0.webp:476,512,202,326 +characters/hermione/clothes/accessory/tifa_suspenders/1.webp:475,544,181,305 +characters/hermione/clothes/accessory/tifa_suspenders/outline.webp:474,511,205,339 +characters/hermione/clothes/accessory/wrestling_belt/0.webp:457,811,218,102 +characters/hermione/clothes/accessory/wrestling_belt/1.webp:472,835,104,73 +characters/hermione/clothes/accessory/wrestling_belt/outline.webp:455,812,221,102 +characters/hermione/clothes/accessory/yen_belt/0.webp:454,848,250,132 +characters/hermione/clothes/accessory/yen_belt/1.webp:574,926,53,76 +characters/hermione/clothes/accessory/yen_belt/outline.webp:454,848,251,154 +characters/hermione/clothes/accessory/yen_corset/0.webp:484,722,161,129 +characters/hermione/clothes/accessory/yen_corset/1.webp:492,769,139,44 +characters/hermione/clothes/accessory/yen_corset/outline.webp:483,720,165,147 +characters/hermione/clothes/accessory/yen_corset/overlay.webp:497,774,131,41 +characters/hermione/clothes/accessory/yen_feathers/0.webp:402,570,554,192 +characters/hermione/clothes/accessory/yen_feathers/outline.webp:401,570,406,113 +characters/hermione/clothes/accessory/yen_sash/0.webp:454,785,270,398 +characters/hermione/clothes/accessory/yen_sash/1.webp:463,802,261,381 +characters/hermione/clothes/accessory/yen_sash/outline.webp:453,784,273,401 +characters/hermione/clothes/accessory/yen_scarf/0.webp:511,473,159,190 +characters/hermione/clothes/accessory/yen_scarf/outline.webp:509,471,163,193 +characters/hermione/clothes/bottom/bioshock_skirt/0.webp:378,829,398,371 +characters/hermione/clothes/bottom/bioshock_skirt/outline.webp:380,829,397,371 +characters/hermione/clothes/bottom/cheerleader_skirt_1/0.webp:420,803,304,197 +characters/hermione/clothes/bottom/cheerleader_skirt_1/1.webp:417,796,311,216 +characters/hermione/clothes/bottom/cheerleader_skirt_1/2.webp:420,804,305,197 +characters/hermione/clothes/bottom/cheerleader_skirt_1/outline.webp:415,793,315,221 +characters/hermione/clothes/bottom/cheerleader_skirt_1/skin.webp:469,798,203,218 +characters/hermione/clothes/bottom/cheerleader_skirt_2/0.webp:424,803,300,171 +characters/hermione/clothes/bottom/cheerleader_skirt_2/1.webp:424,801,299,172 +characters/hermione/clothes/bottom/cheerleader_skirt_2/2.webp:427,809,291,154 +characters/hermione/clothes/bottom/cheerleader_skirt_2/outline.webp:422,797,304,179 +characters/hermione/clothes/bottom/cheerleader_skirt_2/skin.webp:462,798,218,180 +characters/hermione/clothes/bottom/croft_shorts/0.webp:455,815,237,163 +characters/hermione/clothes/bottom/croft_shorts/1.webp:459,963,235,33 +characters/hermione/clothes/bottom/croft_shorts/2.webp:529,859,16,17 +characters/hermione/clothes/bottom/croft_shorts/outline.webp:454,814,242,185 +characters/hermione/clothes/bottom/egypt_loincloth/0.webp:511,899,97,301 +characters/hermione/clothes/bottom/egypt_loincloth/1.webp:455,843,236,95 +characters/hermione/clothes/bottom/egypt_loincloth/2.webp:537,896,28,39 +characters/hermione/clothes/bottom/egypt_loincloth/extra.webp:478,861,154,68 +characters/hermione/clothes/bottom/egypt_loincloth/outline.webp:453,841,240,359 +characters/hermione/clothes/bottom/jeans_1/0.webp:453,822,242,378 +characters/hermione/clothes/bottom/jeans_1/1.webp:461,824,212,46 +characters/hermione/clothes/bottom/jeans_1/2.webp:521,843,52,34 +characters/hermione/clothes/bottom/jeans_1/extra.webp:468,868,201,234 +characters/hermione/clothes/bottom/jeans_1/outline.webp:452,819,244,381 +characters/hermione/clothes/bottom/open_skirt_1/0.webp:441,807,301,393 +characters/hermione/clothes/bottom/open_skirt_1/mask.webp:0,0,1010,1200 +characters/hermione/clothes/bottom/open_skirt_1/outline.webp:440,805,302,395 +characters/hermione/clothes/bottom/pajama_1/0.webp:451,802,246,398 +characters/hermione/clothes/bottom/pajama_1/1.webp:465,808,214,392 +characters/hermione/clothes/bottom/pajama_1/2.webp:454,804,237,396 +characters/hermione/clothes/bottom/pajama_1/outline.webp:450,800,248,400 +characters/hermione/clothes/bottom/pajama_2/0.webp:451,802,246,398 +characters/hermione/clothes/bottom/pajama_2/1.webp:520,833,60,87 +characters/hermione/clothes/bottom/pajama_2/outline.webp:450,800,248,400 +characters/hermione/clothes/bottom/pizza_skirt/0.webp:456,797,236,143 +characters/hermione/clothes/bottom/pizza_skirt/1.webp:454,796,239,145 +characters/hermione/clothes/bottom/pizza_skirt/outline.webp:453,793,242,150 +characters/hermione/clothes/bottom/school_skirt_1/0.webp:446,767,262,393 +characters/hermione/clothes/bottom/school_skirt_1/1.webp:582,798,12,24 +characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/0.webp:391,708,320,238 +characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/1.webp:579,792,11,25 +characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/outline.webp:388,708,326,240 +characters/hermione/clothes/bottom/school_skirt_1/lift_skirt/skin.webp:456,808,227,134 +characters/hermione/clothes/bottom/school_skirt_1/mask.webp:0,0,1010,1200 +characters/hermione/clothes/bottom/school_skirt_1/outline.webp:445,766,264,398 +characters/hermione/clothes/bottom/school_skirt_2/0.webp:441,767,264,262 +characters/hermione/clothes/bottom/school_skirt_2/1.webp:582,798,12,24 +characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/0.webp:782,1416,640,475 +characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/1.webp:1158,1585,22,48 +characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/outline.webp:777,1416,651,479 +characters/hermione/clothes/bottom/school_skirt_2/lift_skirt/skin.webp:913,1617,452,267 +characters/hermione/clothes/bottom/school_skirt_2/mask.webp:0,0,1010,1200 +characters/hermione/clothes/bottom/school_skirt_2/outline.webp:439,766,268,264 +characters/hermione/clothes/bottom/school_skirt_3/0.webp:446,767,251,199 +characters/hermione/clothes/bottom/school_skirt_3/1.webp:582,798,12,24 +characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/0.webp:782,1416,640,475 +characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/1.webp:1158,1585,22,48 +characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/outline.webp:777,1416,651,479 +characters/hermione/clothes/bottom/school_skirt_3/lift_skirt/skin.webp:913,1617,452,267 +characters/hermione/clothes/bottom/school_skirt_3/mask.webp:0,0,1010,1200 +characters/hermione/clothes/bottom/school_skirt_3/outline.webp:444,766,255,190 +characters/hermione/clothes/bottom/school_skirt_4/0.webp:453,767,236,199 +characters/hermione/clothes/bottom/school_skirt_4/1.webp:582,798,12,24 +characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/0.webp:782,1416,640,475 +characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/1.webp:1158,1585,22,48 +characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/outline.webp:777,1416,651,479 +characters/hermione/clothes/bottom/school_skirt_4/lift_skirt/skin.webp:913,1617,452,267 +characters/hermione/clothes/bottom/school_skirt_4/mask.webp:0,0,1010,1200 +characters/hermione/clothes/bottom/school_skirt_4/outline.webp:450,766,240,160 +characters/hermione/clothes/bottom/tifa_skirt/0.webp:452,826,240,127 +characters/hermione/clothes/bottom/tifa_skirt/outline.webp:449,822,245,133 +characters/hermione/clothes/bottom/winter_skirt_1/0.webp:451,830,255,208 +characters/hermione/clothes/bottom/winter_skirt_1/outline.webp:451,828,255,210 +characters/hermione/clothes/bottom/xmas/0.webp:457,841,228,96 +characters/hermione/clothes/bottom/xmas/1.webp:443,824,255,134 +characters/hermione/clothes/bottom/xmas/extra.webp:458,849,165,84 +characters/hermione/clothes/bottom/xmas/outline.webp:442,823,257,136 +characters/hermione/clothes/bottom/xmas/skin.webp:458,825,215,139 +characters/hermione/clothes/bottom/yen_skirt/0.webp:454,824,239,151 +characters/hermione/clothes/bottom/yen_skirt/outline.webp:451,822,244,155 +characters/hermione/clothes/bra/bandaids/0.webp:437,634,169,66 +characters/hermione/clothes/bra/bandaids/outline.webp:435,632,173,68 +characters/hermione/clothes/bra/basic_bra_1/0.webp:448,515,232,211 +characters/hermione/clothes/bra/basic_bra_1/1.webp:523,677,26,22 +characters/hermione/clothes/bra/basic_bra_1/mask.webp:0,0,1010,1200 +characters/hermione/clothes/bra/basic_bra_1/outline.webp:447,515,235,211 +characters/hermione/clothes/bra/basic_bra_1/skin.webp:507,526,151,199 +characters/hermione/clothes/bra/bikini_bra_1/0.webp:436,626,160,65 +characters/hermione/clothes/bra/bikini_bra_1/1.webp:450,626,148,67 +characters/hermione/clothes/bra/bikini_bra_1/extra.webp:433,635,149,51 +characters/hermione/clothes/bra/bikini_bra_1/outline.webp:435,489,237,204 +characters/hermione/clothes/bra/bikini_bra_2/0.webp:433,608,186,97 +characters/hermione/clothes/bra/bikini_bra_2/1.webp:476,496,185,209 +characters/hermione/clothes/bra/bikini_bra_2/extra.webp:434,643,152,46 +characters/hermione/clothes/bra/bikini_bra_2/outline.webp:432,494,229,213 +characters/hermione/clothes/bra/bikini_bra_2/skin.webp:463,528,178,174 +characters/hermione/clothes/bra/hslut_pasties/0.webp:437,629,177,66 +characters/hermione/clothes/bra/hslut_pasties/1.webp:416,653,177,110 +characters/hermione/clothes/bra/hslut_pasties/extra.webp:416,629,198,123 +characters/hermione/clothes/bra/hslut_pasties/outline.webp:413,627,203,138 +characters/hermione/clothes/bra/poker_bra_1/0.webp:455,509,217,425 +characters/hermione/clothes/bra/poker_bra_1/1.webp:450,580,156,261 +characters/hermione/clothes/bra/poker_bra_1/2.webp:437,618,224,291 +characters/hermione/clothes/bra/poker_bra_1/3.webp:499,838,80,61 +characters/hermione/clothes/bra/poker_bra_1/extra.webp:437,512,207,383 +characters/hermione/clothes/bra/poker_bra_1/outline.webp:436,508,239,434 +characters/hermione/clothes/bra/poker_bra_1/skin.webp:447,521,220,410 +characters/hermione/clothes/bra/ribbon/0.webp:464,618,206,125 +characters/hermione/clothes/bra/ribbon/extra.webp:465,618,182,125 +characters/hermione/clothes/bra/ribbon/mask.webp:0,0,1010,1200 +characters/hermione/clothes/bra/ribbon/outline.webp:462,616,209,129 +characters/hermione/clothes/bra/ribbon/skin.webp:463,565,209,159 +characters/hermione/clothes/bra/sling_bra/0.webp:436,619,176,122 +characters/hermione/clothes/bra/sling_bra/1.webp:458,505,202,237 +characters/hermione/clothes/bra/sling_bra/extra.webp:436,521,216,221 +characters/hermione/clothes/bra/sling_bra/outline.webp:434,502,227,241 +characters/hermione/clothes/bra/sling_bra/skin.webp:457,526,192,213 +characters/hermione/clothes/bra/sports_bra/0.webp:436,507,247,233 +characters/hermione/clothes/bra/sports_bra/1.webp:607,705,34,31 +characters/hermione/clothes/bra/sports_bra/outline.webp:435,506,253,235 +characters/hermione/clothes/earrings/hslut_earring/0.webp:631,417,25,22 +characters/hermione/clothes/earrings/hslut_earring/extra.webp:632,417,24,21 +characters/hermione/clothes/earrings/hslut_earring/outline.webp:630,417,27,22 +characters/hermione/clothes/earrings/pearl_1/0.webp:643,415,7,7 +characters/hermione/clothes/earrings/pearl_1/extra.webp:644,415,3,4 +characters/hermione/clothes/earrings/pearl_1/outline.webp:642,414,9,9 +characters/hermione/clothes/earrings/poker_earring_1/0.webp:635,420,19,32 +characters/hermione/clothes/earrings/poker_earring_1/extra.webp:636,421,12,25 +characters/hermione/clothes/earrings/poker_earring_1/outline.webp:633,419,24,35 +characters/hermione/clothes/earrings/poker_earring_1/skin.webp:639,415,15,16 +characters/hermione/clothes/garterbelt/hslut_garter/0.webp:458,831,219,205 +characters/hermione/clothes/garterbelt/hslut_garter/1.webp:463,836,184,121 +characters/hermione/clothes/garterbelt/hslut_garter/extra.webp:463,859,177,175 +characters/hermione/clothes/garterbelt/hslut_garter/outline.webp:456,828,224,208 +characters/hermione/clothes/glasses/reading_glasses/0.webp:512,377,97,22 +characters/hermione/clothes/glasses/reading_glasses/outline.webp:510,375,119,25 +characters/hermione/clothes/glasses/vintage_glasses/0.webp:510,365,105,40 +characters/hermione/clothes/glasses/vintage_glasses/1.webp:506,362,158,48 +characters/hermione/clothes/glasses/vintage_glasses/2.webp:511,370,128,34 +characters/hermione/clothes/glasses/vintage_glasses/outline.webp:506,361,159,50 +characters/hermione/clothes/glasses/vintage_glasses/skin.webp:512,359,150,51 +characters/hermione/clothes/gloves/bunny_gloves_1/0.webp:335,846,457,120 +characters/hermione/clothes/gloves/bunny_gloves_1/outline.webp:337,849,451,118 +characters/hermione/clothes/gloves/cat_arms/0.webp:270,709,566,316 +characters/hermione/clothes/gloves/cat_arms/1.webp:306,937,481,51 +characters/hermione/clothes/gloves/cat_arms/2.webp:272,949,697,78 +characters/hermione/clothes/gloves/cat_arms/outline.webp:268,707,570,323 +characters/hermione/clothes/gloves/cheerleader_armband/0.webp:327,884,463,67 +characters/hermione/clothes/gloves/cheerleader_armband/1.webp:334,889,452,52 +characters/hermione/clothes/gloves/cheerleader_armband/outline.webp:326,882,465,71 +characters/hermione/clothes/gloves/egypt_armband/0.webp:339,819,445,129 +characters/hermione/clothes/gloves/egypt_armband/extra.webp:362,821,399,90 +characters/hermione/clothes/gloves/egypt_armband/outline.webp:336,817,450,133 +characters/hermione/clothes/gloves/hslut_gloves/0.webp:274,695,553,325 +characters/hermione/clothes/gloves/hslut_gloves/outline.webp:272,694,558,328 +characters/hermione/clothes/gloves/latex_gloves/0.webp:272,709,558,313 +characters/hermione/clothes/gloves/latex_gloves/extra.webp:273,711,556,296 +characters/hermione/clothes/gloves/latex_gloves/outline.webp:271,708,561,315 +characters/hermione/clothes/gloves/maid_gloves_1/0.webp:274,897,553,124 +characters/hermione/clothes/gloves/maid_gloves_1/1.webp:322,754,473,206 +characters/hermione/clothes/gloves/maid_gloves_1/2.webp:443,808,263,14 +characters/hermione/clothes/gloves/maid_gloves_1/outline.webp:272,752,558,270 +characters/hermione/clothes/gloves/msmarv_gloves/0.webp:274,647,553,373 +characters/hermione/clothes/gloves/msmarv_gloves/1.webp:299,657,513,323 +characters/hermione/clothes/gloves/msmarv_gloves/outline.webp:272,646,558,376 +characters/hermione/clothes/gloves/poker_gloves_1/0.webp:334,848,456,119 +characters/hermione/clothes/gloves/poker_gloves_1/1.webp:383,921,362,32 +characters/hermione/clothes/gloves/poker_gloves_1/outline.webp:334,847,457,123 +characters/hermione/clothes/gloves/poker_gloves_1/skin.webp:338,887,444,59 +characters/hermione/clothes/gloves/tifa_gloves/0.webp:381,663,382,210 +characters/hermione/clothes/gloves/tifa_gloves/1.webp:276,752,561,246 +characters/hermione/clothes/gloves/tifa_gloves/2.webp:286,735,551,225 +characters/hermione/clothes/gloves/tifa_gloves/3.webp:751,955,72,35 +characters/hermione/clothes/gloves/tifa_gloves/extra.webp:288,747,545,201 +characters/hermione/clothes/gloves/tifa_gloves/outline.webp:273,660,567,342 +characters/hermione/clothes/gloves/xmas/0.webp:331,884,460,68 +characters/hermione/clothes/gloves/xmas/outline.webp:330,883,462,70 +characters/hermione/clothes/gloves/yen_gloves/0.webp:272,779,557,241 +characters/hermione/clothes/gloves/yen_gloves/outline.webp:272,779,558,242 +characters/hermione/clothes/hair/base/0.webp:475,236,280,181 +characters/hermione/clothes/hair/base/0_back.webp:428,370,408,290 +characters/hermione/clothes/hair/base/1.webp:476,243,279,172 +characters/hermione/clothes/hair/base/1_back.webp:453,408,368,187 +characters/hermione/clothes/hair/base/2.webp:644,285,42,51 +characters/hermione/clothes/hair/base/extra.webp:668,285,18,45 +characters/hermione/clothes/hair/base/outline.webp:426,235,410,425 +characters/hermione/clothes/hair/base/outline_back.webp:426,370,410,290 +characters/hermione/clothes/hair/base/skin.webp:510,279,149,115 +characters/hermione/clothes/hair/bio_hair/0.webp:476,241,289,230 +characters/hermione/clothes/hair/bio_hair/1.webp:476,265,236,84 +characters/hermione/clothes/hair/bio_hair/outline.webp:475,240,292,236 +characters/hermione/clothes/hair/bio_hair/skin.webp:495,302,137,113 +characters/hermione/clothes/hair/updo/0.webp:486,233,256,255 +characters/hermione/clothes/hair/updo/0_front.webp:581,471,60,83 +characters/hermione/clothes/hair/updo/1.webp:486,233,255,239 +characters/hermione/clothes/hair/updo/1_front.webp:582,471,42,82 +characters/hermione/clothes/hair/updo/outline.webp:484,232,259,323 +characters/hermione/clothes/hair/updo/outline_front.webp:578,471,64,84 +characters/hermione/clothes/hair/updo/skin.webp:511,297,139,160 +characters/hermione/clothes/headgear/antlers/0.webp:476,216,245,80 +characters/hermione/clothes/headgear/antlers/outline.webp:474,215,249,87 +characters/hermione/clothes/headgear/bunny_hat_1/0.webp:484,149,159,133 +characters/hermione/clothes/headgear/bunny_hat_1/1.webp:493,162,137,117 +characters/hermione/clothes/headgear/bunny_hat_1/outline.webp:482,148,162,139 +characters/hermione/clothes/headgear/cat_ears/0.webp:487,223,208,116 +characters/hermione/clothes/headgear/cat_ears/1.webp:494,246,180,82 +characters/hermione/clothes/headgear/cat_ears/outline.webp:486,223,209,117 +characters/hermione/clothes/headgear/elf/0.webp:616,201,183,102 +characters/hermione/clothes/headgear/elf/1.webp:591,238,119,98 +characters/hermione/clothes/headgear/elf/extra.webp:613,201,108,84 +characters/hermione/clothes/headgear/elf/outline.webp:588,200,212,138 +characters/hermione/clothes/headgear/maid_hat_1/0.webp:506,231,164,95 +characters/hermione/clothes/headgear/maid_hat_1/outline.webp:505,229,166,98 +characters/hermione/clothes/headgear/panties_on_head/0.webp:514,252,150,120 +characters/hermione/clothes/headgear/panties_on_head/outline.webp:511,250,153,126 +characters/hermione/clothes/headgear/poker_hat_1/0.webp:480,185,115,116 +characters/hermione/clothes/headgear/poker_hat_1/1.webp:504,227,70,53 +characters/hermione/clothes/headgear/poker_hat_1/2.webp:541,219,54,60 +characters/hermione/clothes/headgear/poker_hat_1/extra.webp:463,234,145,94 +characters/hermione/clothes/headgear/poker_hat_1/outline.webp:478,183,118,120 +characters/hermione/clothes/headgear/poker_hat_1/overlay.webp:485,191,108,106 +characters/hermione/clothes/headgear/poker_hat_2/0.webp:480,185,115,116 +characters/hermione/clothes/headgear/poker_hat_2/1.webp:504,227,70,53 +characters/hermione/clothes/headgear/poker_hat_2/2.webp:541,219,54,60 +characters/hermione/clothes/headgear/poker_hat_2/extra.webp:488,234,120,74 +characters/hermione/clothes/headgear/poker_hat_2/outline.webp:478,183,118,120 +characters/hermione/clothes/headgear/poker_hat_2/overlay.webp:485,191,108,106 +characters/hermione/clothes/makeup/cat_muzzle/0.webp:535,416,18,9 +characters/hermione/clothes/makeup/cat_muzzle/outline.webp:494,406,125,34 +characters/hermione/clothes/makeup/cat_muzzle/skin.webp:538,419,20,8 +characters/hermione/clothes/makeup/freckles1/0.webp:518,394,96,32 +characters/hermione/clothes/makeup/freckles1_nonose/0.webp:518,396,96,30 +characters/hermione/clothes/makeup/freckles2/0.webp:532,562,103,36 +characters/hermione/clothes/makeup/freckles3/0.webp:515,520,201,33 +characters/hermione/clothes/makeup/lipstick/angry.webp:539,435,55,26 +characters/hermione/clothes/makeup/lipstick/annoyed.webp:532,437,35,19 +characters/hermione/clothes/makeup/lipstick/base.webp:541,439,41,16 +characters/hermione/clothes/makeup/lipstick/clench.webp:537,431,51,28 +characters/hermione/clothes/makeup/lipstick/crooked_smile.webp:536,433,55,31 +characters/hermione/clothes/makeup/lipstick/cum.webp:541,439,35,24 +characters/hermione/clothes/makeup/lipstick/disgust.webp:540,447,50,20 +characters/hermione/clothes/makeup/lipstick/full.webp:543,439,30,19 +characters/hermione/clothes/makeup/lipstick/full_cum.webp:543,439,30,19 +characters/hermione/clothes/makeup/lipstick/full_panties.webp:543,439,30,19 +characters/hermione/clothes/makeup/lipstick/grin.webp:537,437,53,27 +characters/hermione/clothes/makeup/lipstick/mad.webp:539,441,44,22 +characters/hermione/clothes/makeup/lipstick/normal.webp:541,439,35,16 +characters/hermione/clothes/makeup/lipstick/open.webp:541,436,32,32 +characters/hermione/clothes/makeup/lipstick/open_tongue.webp:541,436,32,32 +characters/hermione/clothes/makeup/lipstick/open_wide_tongue.webp:537,433,39,52 +characters/hermione/clothes/makeup/lipstick/open_wide_tongue_cum.webp:537,433,39,52 +characters/hermione/clothes/makeup/lipstick/open_wide_tongue_panties.webp:537,433,39,52 +characters/hermione/clothes/makeup/lipstick/scream.webp:537,433,39,52 +characters/hermione/clothes/makeup/lipstick/shock.webp:535,437,43,36 +characters/hermione/clothes/makeup/lipstick/silly.webp:540,433,46,32 +characters/hermione/clothes/makeup/lipstick/smile.webp:536,435,57,33 +characters/hermione/clothes/makeup/lipstick/soft.webp:538,439,36,26 +characters/hermione/clothes/makeup/lipstick/upset.webp:540,439,35,19 +characters/hermione/clothes/neckwear/ball_pearls_1/0.webp:558,483,102,74 +characters/hermione/clothes/neckwear/ball_pearls_1/outline.webp:556,481,107,79 +characters/hermione/clothes/neckwear/ball_pearls_1/overlay.webp:562,484,91,67 +characters/hermione/clothes/neckwear/basic_collar/0.webp:563,471,102,45 +characters/hermione/clothes/neckwear/basic_collar/1.webp:589,496,11,12 +characters/hermione/clothes/neckwear/basic_collar/extra.webp:564,480,65,34 +characters/hermione/clothes/neckwear/basic_collar/outline.webp:562,470,104,47 +characters/hermione/clothes/neckwear/bell_1/0.webp:578,473,72,34 +characters/hermione/clothes/neckwear/bell_1/1.webp:556,486,66,51 +characters/hermione/clothes/neckwear/bell_1/extra.webp:561,479,70,45 +characters/hermione/clothes/neckwear/bell_1/outline.webp:555,471,97,67 +characters/hermione/clothes/neckwear/bioshock_choker/0.webp:577,476,71,30 +characters/hermione/clothes/neckwear/bioshock_choker/extra.webp:588,482,25,26 +characters/hermione/clothes/neckwear/bunny_bowtie_1/0.webp:540,466,117,96 +characters/hermione/clothes/neckwear/bunny_bowtie_1/1.webp:548,512,80,51 +characters/hermione/clothes/neckwear/bunny_bowtie_1/outline.webp:539,461,121,108 +characters/hermione/clothes/neckwear/choker_1/0.webp:578,473,72,34 +characters/hermione/clothes/neckwear/choker_1/extra.webp:582,479,49,22 +characters/hermione/clothes/neckwear/choker_1/outline.webp:576,471,76,38 +characters/hermione/clothes/neckwear/egypt_neck/0.webp:543,475,170,103 +characters/hermione/clothes/neckwear/egypt_neck/1.webp:547,509,146,65 +characters/hermione/clothes/neckwear/egypt_neck/2.webp:575,504,26,39 +characters/hermione/clothes/neckwear/egypt_neck/extra.webp:548,494,78,80 +characters/hermione/clothes/neckwear/egypt_neck/outline.webp:541,474,177,106 +characters/hermione/clothes/neckwear/flasher_collar/0.webp:440,472,222,215 +characters/hermione/clothes/neckwear/flasher_collar/1.webp:436,512,170,173 +characters/hermione/clothes/neckwear/flasher_collar/extra.webp:566,480,62,35 +characters/hermione/clothes/neckwear/flasher_collar/outline.webp:435,470,228,219 +characters/hermione/clothes/neckwear/flasher_collar/overlay.webp:570,486,87,28 +characters/hermione/clothes/neckwear/good_girl_collar/0.webp:563,471,102,54 +characters/hermione/clothes/neckwear/good_girl_collar/1.webp:564,473,99,52 +characters/hermione/clothes/neckwear/good_girl_collar/2.webp:606,515,25,23 +characters/hermione/clothes/neckwear/good_girl_collar/extra.webp:564,480,65,34 +characters/hermione/clothes/neckwear/good_girl_collar/outline.webp:562,470,104,69 +characters/hermione/clothes/neckwear/good_girl_collar/overlay.webp:577,492,75,16 +characters/hermione/clothes/neckwear/hslut_choker/0.webp:613,481,43,38 +characters/hermione/clothes/neckwear/hslut_choker/1.webp:561,490,57,46 +characters/hermione/clothes/neckwear/hslut_choker/extra.webp:562,489,60,46 +characters/hermione/clothes/neckwear/hslut_choker/outline.webp:560,479,98,58 +characters/hermione/clothes/neckwear/latex_choker/0.webp:572,489,85,42 +characters/hermione/clothes/neckwear/latex_choker/extra.webp:580,508,20,5 +characters/hermione/clothes/neckwear/latex_choker/outline.webp:570,486,89,46 +characters/hermione/clothes/neckwear/maid_choker_1/0.webp:538,478,79,95 +characters/hermione/clothes/neckwear/maid_choker_1/1.webp:567,471,77,41 +characters/hermione/clothes/neckwear/maid_choker_1/outline.webp:537,467,109,108 +characters/hermione/clothes/neckwear/maid_choker_2/0.webp:567,471,77,41 +characters/hermione/clothes/neckwear/maid_choker_2/outline.webp:571,467,75,40 +characters/hermione/clothes/neckwear/poker_bowtie_1/0.webp:544,465,110,91 +characters/hermione/clothes/neckwear/poker_bowtie_1/1.webp:540,516,80,48 +characters/hermione/clothes/neckwear/poker_bowtie_1/2.webp:575,538,7,9 +characters/hermione/clothes/neckwear/poker_bowtie_1/extra.webp:541,518,78,34 +characters/hermione/clothes/neckwear/poker_bowtie_1/outline.webp:539,463,118,102 +characters/hermione/clothes/neckwear/poker_bowtie_1/skin.webp:532,504,93,65 +characters/hermione/clothes/neckwear/slave_collar/0.webp:563,471,102,58 +characters/hermione/clothes/neckwear/slave_collar/extra.webp:564,480,65,34 +characters/hermione/clothes/neckwear/slave_collar/outline.webp:562,470,104,60 +characters/hermione/clothes/neckwear/slave_collar/overlay.webp:580,488,69,25 +characters/hermione/clothes/neckwear/slut_collar/0.webp:566,472,96,44 +characters/hermione/clothes/neckwear/slut_collar/1.webp:584,491,55,22 +characters/hermione/clothes/neckwear/slut_collar/extra.webp:566,480,62,34 +characters/hermione/clothes/neckwear/slut_collar/outline.webp:565,470,98,60 +characters/hermione/clothes/neckwear/slut_collar/overlay.webp:586,493,50,17 +characters/hermione/clothes/neckwear/whore_collar/0.webp:566,472,96,44 +characters/hermione/clothes/neckwear/whore_collar/extra.webp:566,480,62,34 +characters/hermione/clothes/neckwear/whore_collar/outline.webp:565,470,98,57 +characters/hermione/clothes/neckwear/whore_collar/overlay.webp:577,486,74,29 +characters/hermione/clothes/neckwear/yen_choker/0.webp:579,477,69,29 +characters/hermione/clothes/neckwear/yen_choker/extra.webp:579,503,26,32 +characters/hermione/clothes/neckwear/yen_choker/outline.webp:577,475,72,60 +characters/hermione/clothes/panties/basic_panties_1/0.webp:459,821,223,113 +characters/hermione/clothes/panties/basic_panties_1/1.webp:527,850,19,18 +characters/hermione/clothes/panties/basic_panties_1/outline.webp:459,819,225,117 +characters/hermione/clothes/panties/basic_panties_1/skin.webp:463,824,208,101 +characters/hermione/clothes/panties/bikini_panties_1/0.webp:532,898,34,37 +characters/hermione/clothes/panties/bikini_panties_1/1.webp:472,849,94,82 +characters/hermione/clothes/panties/bikini_panties_1/outline.webp:466,840,203,96 +characters/hermione/clothes/panties/bikini_panties_2/0.webp:516,884,62,49 +characters/hermione/clothes/panties/bikini_panties_2/1.webp:475,817,178,72 +characters/hermione/clothes/panties/bikini_panties_2/extra.webp:528,899,37,16 +characters/hermione/clothes/panties/bikini_panties_2/outline.webp:470,816,187,117 +characters/hermione/clothes/panties/bikini_panties_2/skin.webp:477,826,168,74 +characters/hermione/clothes/panties/fishnet_panties/0.webp:461,822,233,113 +characters/hermione/clothes/panties/fishnet_panties/outline.webp:460,819,222,117 +characters/hermione/clothes/panties/hslut_panties/0.webp:522,887,51,46 +characters/hermione/clothes/panties/hslut_panties/1.webp:522,888,21,29 +characters/hermione/clothes/panties/hslut_panties/extra.webp:522,887,47,45 +characters/hermione/clothes/panties/hslut_panties/outline.webp:520,885,54,50 +characters/hermione/clothes/panties/latex_panties/0.webp:466,823,196,110 +characters/hermione/clothes/panties/latex_panties/extra.webp:478,854,126,65 +characters/hermione/clothes/panties/latex_panties/outline.webp:466,797,197,136 +characters/hermione/clothes/panties/pizza_panties/0.webp:513,877,68,77 +characters/hermione/clothes/panties/pizza_panties/outline.webp:508,858,82,140 +characters/hermione/clothes/panties/pizza_panties/overlay.webp:508,860,79,137 +characters/hermione/clothes/panties/poker_panties_1/0.webp:471,816,189,118 +characters/hermione/clothes/panties/poker_panties_1/1.webp:473,815,188,94 +characters/hermione/clothes/panties/poker_panties_1/2.webp:514,868,50,31 +characters/hermione/clothes/panties/poker_panties_1/extra.webp:471,819,160,76 +characters/hermione/clothes/panties/poker_panties_1/outline.webp:471,814,192,128 +characters/hermione/clothes/panties/poker_panties_1/skin.webp:471,818,162,113 +characters/hermione/clothes/panties/ribbon/0.webp:480,848,210,175 +characters/hermione/clothes/panties/ribbon/extra.webp:480,850,185,173 +characters/hermione/clothes/panties/ribbon/outline.webp:479,847,213,177 +characters/hermione/clothes/panties/ribbon/skin.webp:480,845,203,169 +characters/hermione/clothes/panties/sling_panties/0.webp:529,881,36,52 +characters/hermione/clothes/panties/sling_panties/1.webp:494,790,144,96 +characters/hermione/clothes/panties/sling_panties/extra.webp:497,803,119,117 +characters/hermione/clothes/panties/sling_panties/outline.webp:494,789,145,144 +characters/hermione/clothes/panties/sling_panties/skin.webp:497,792,123,129 +characters/hermione/clothes/panties/sports_panties/0.webp:467,796,202,140 +characters/hermione/clothes/panties/sports_panties/1.webp:609,799,45,53 +characters/hermione/clothes/panties/sports_panties/outline.webp:466,795,205,142 +characters/hermione/clothes/piercing/belly_dick/0.webp:530,781,15,59 +characters/hermione/clothes/piercing/belly_dick/extra.webp:530,783,14,57 +characters/hermione/clothes/piercing/belly_dick/outline.webp:529,781,16,59 +characters/hermione/clothes/piercing/belly_heart/0.webp:531,781,14,48 +characters/hermione/clothes/piercing/belly_heart/extra.webp:530,783,14,45 +characters/hermione/clothes/piercing/belly_heart/outline.webp:530,781,15,48 +characters/hermione/clothes/piercing/belly_stud/0.webp:538,775,7,18 +characters/hermione/clothes/piercing/belly_stud/extra.webp:538,777,6,16 +characters/hermione/clothes/piercing/belly_stud/outline.webp:537,775,8,18 +characters/hermione/clothes/piercing/clit_stud/0.webp:545,920,7,8 +characters/hermione/clothes/piercing/clit_stud/extra.webp:546,920,6,8 +characters/hermione/clothes/piercing/clit_stud/outline.webp:544,919,9,10 +characters/hermione/clothes/piercing/nipple_bells/0.webp:428,656,160,41 +characters/hermione/clothes/piercing/nipple_bells/extra.webp:429,659,155,34 +characters/hermione/clothes/piercing/nipple_bells/outline.webp:427,656,161,41 +characters/hermione/clothes/piercing/nipple_rings/0.webp:436,660,150,24 +characters/hermione/clothes/piercing/nipple_rings/extra.webp:568,668,17,15 +characters/hermione/clothes/piercing/nipple_rings/outline.webp:435,658,151,26 +characters/hermione/clothes/piercing/nipple_rings2/0.webp:436,660,150,24 +characters/hermione/clothes/piercing/nipple_rings2/extra.webp:568,668,17,15 +characters/hermione/clothes/piercing/nipple_rings2/outline.webp:435,658,151,27 +characters/hermione/clothes/piercing/nipple_rings3/0.webp:436,657,150,27 +characters/hermione/clothes/piercing/nipple_rings3/extra.webp:568,668,17,15 +characters/hermione/clothes/piercing/nipple_rings3/outline.webp:435,656,151,28 +characters/hermione/clothes/piercing/nipple_stud/0.webp:441,655,146,20 +characters/hermione/clothes/piercing/nipple_stud/extra.webp:441,655,145,20 +characters/hermione/clothes/piercing/nipple_stud/outline.webp:440,654,148,23 +characters/hermione/clothes/piercing/poker_belly_1/0.webp:525,778,22,26 +characters/hermione/clothes/piercing/poker_belly_1/1.webp:525,767,22,37 +characters/hermione/clothes/piercing/poker_belly_1/2.webp:530,782,10,13 +characters/hermione/clothes/piercing/poker_belly_1/3.webp:534,767,11,11 +characters/hermione/clothes/piercing/poker_belly_1/extra.webp:526,767,20,37 +characters/hermione/clothes/piercing/poker_belly_1/outline.webp:525,765,22,39 +characters/hermione/clothes/piercing/poker_belly_1/skin.webp:534,765,15,41 +characters/hermione/clothes/plugs/large.webp:516,823,371,161 +characters/hermione/clothes/plugs/medium.webp:533,743,357,257 +characters/hermione/clothes/plugs/small.webp:571,753,211,214 +characters/hermione/clothes/pubes/arrow/0.webp:525,872,39,51 +characters/hermione/clothes/pubes/arrow/outline.webp:525,874,34,44 +characters/hermione/clothes/pubes/beaver/0.webp:514,853,64,88 +characters/hermione/clothes/pubes/beaver/outline.webp:516,857,58,87 +characters/hermione/clothes/pubes/stuble/0.webp:524,894,49,32 +characters/hermione/clothes/pubes/unshaved/0.webp:526,891,42,41 +characters/hermione/clothes/robe/bioshock_robe/0.webp:372,453,392,422 +characters/hermione/clothes/robe/bioshock_robe/1.webp:330,841,450,95 +characters/hermione/clothes/robe/bioshock_robe/outline.webp:329,453,452,483 +characters/hermione/clothes/robe/robe_school_1/0.webp:338,535,472,665 +characters/hermione/clothes/robe/robe_school_1/0_back.webp:0,0,0,0 +characters/hermione/clothes/robe/robe_school_1/1.webp:511,620,57,9 +characters/hermione/clothes/robe/robe_school_1/1_back.webp:0,0,0,0 +characters/hermione/clothes/robe/robe_school_1/2.webp:335,474,463,528 +characters/hermione/clothes/robe/robe_school_1/2_back.webp:335,898,108,89 +characters/hermione/clothes/robe/robe_school_1/mask.webp:0,0,1010,1200 +characters/hermione/clothes/robe/robe_school_1/outline.webp:334,474,479,726 +characters/hermione/clothes/robe/robe_school_1/outline_back.webp:334,824,115,166 +characters/hermione/clothes/robe/robe_school_1/skin.webp:339,521,456,432 +characters/hermione/clothes/robe/robe_school_2/0.webp:338,535,472,665 +characters/hermione/clothes/robe/robe_school_2/0_back.webp:0,0,0,0 +characters/hermione/clothes/robe/robe_school_2/1.webp:511,620,57,9 +characters/hermione/clothes/robe/robe_school_2/1_back.webp:0,0,0,0 +characters/hermione/clothes/robe/robe_school_2/2.webp:336,474,462,528 +characters/hermione/clothes/robe/robe_school_2/2_back.webp:335,898,217,302 +characters/hermione/clothes/robe/robe_school_2/extra.webp:411,686,284,514 +characters/hermione/clothes/robe/robe_school_2/mask.webp:0,0,1010,1200 +characters/hermione/clothes/robe/robe_school_2/outline.webp:334,474,479,726 +characters/hermione/clothes/robe/robe_school_2/outline_back.webp:334,824,226,376 +characters/hermione/clothes/robe/robe_school_2/skin.webp:339,521,456,432 +characters/hermione/clothes/robe/robe_school_3/0.webp:338,535,472,665 +characters/hermione/clothes/robe/robe_school_3/0_back.webp:0,0,0,0 +characters/hermione/clothes/robe/robe_school_3/1.webp:511,620,57,9 +characters/hermione/clothes/robe/robe_school_3/1_back.webp:0,0,0,0 +characters/hermione/clothes/robe/robe_school_3/2.webp:336,474,462,528 +characters/hermione/clothes/robe/robe_school_3/2_back.webp:335,898,218,302 +characters/hermione/clothes/robe/robe_school_3/extra.webp:331,647,452,553 +characters/hermione/clothes/robe/robe_school_3/mask.webp:0,0,1010,1200 +characters/hermione/clothes/robe/robe_school_3/outline.webp:334,474,479,726 +characters/hermione/clothes/robe/robe_school_3/outline_back.webp:334,824,220,376 +characters/hermione/clothes/robe/robe_school_3/skin.webp:339,521,456,432 +characters/hermione/clothes/robe/robe_school_4/0.webp:337,748,546,452 +characters/hermione/clothes/robe/robe_school_4/0_back.webp:337,787,140,413 +characters/hermione/clothes/robe/robe_school_4/1.webp:454,830,195,45 +characters/hermione/clothes/robe/robe_school_4/1_back.webp:454,830,8,8 +characters/hermione/clothes/robe/robe_school_4/2.webp:299,712,504,432 +characters/hermione/clothes/robe/robe_school_4/2_back.webp:299,715,380,485 +characters/hermione/clothes/robe/robe_school_4/mask.webp:0,0,1010,1200 +characters/hermione/clothes/robe/robe_school_4/outline.webp:296,709,591,491 +characters/hermione/clothes/robe/robe_school_4/outline_back.webp:296,713,384,487 +characters/hermione/clothes/robe/robe_school_4/skin.webp:453,706,274,494 +characters/hermione/clothes/robe/witch_cape/0.webp:488,469,356,491 +characters/hermione/clothes/robe/witch_cape/0_back.webp:492,683,265,260 +characters/hermione/clothes/robe/witch_cape/1.webp:606,542,38,37 +characters/hermione/clothes/robe/witch_cape/2.webp:622,533,19,14 +characters/hermione/clothes/robe/witch_cape/outline.webp:487,468,359,493 +characters/hermione/clothes/robe/wrestling_robe/0.webp:364,490,411,708 +characters/hermione/clothes/robe/wrestling_robe/1.webp:346,361,442,834 +characters/hermione/clothes/robe/wrestling_robe/extra.webp:468,634,104,169 +characters/hermione/clothes/robe/wrestling_robe/mask.webp:0,0,1010,1200 +characters/hermione/clothes/robe/wrestling_robe/outline.webp:344,488,446,711 +characters/hermione/clothes/stockings/bunny_stockings_1/0.webp:454,798,239,402 +characters/hermione/clothes/stockings/bunny_stockings_1/outline.webp:453,797,241,403 +characters/hermione/clothes/stockings/cat_legs/0.webp:475,1028,214,172 +characters/hermione/clothes/stockings/cat_legs/outline.webp:474,1025,217,175 +characters/hermione/clothes/stockings/hslut_socks/0.webp:477,1014,205,186 +characters/hermione/clothes/stockings/hslut_socks/outline.webp:475,1013,210,187 +characters/hermione/clothes/stockings/latex_stockings/0.webp:460,961,235,239 +characters/hermione/clothes/stockings/latex_stockings/extra.webp:487,979,114,170 +characters/hermione/clothes/stockings/latex_stockings/outline.webp:458,960,237,240 +characters/hermione/clothes/stockings/maid_stockings_1/0.webp:489,1034,193,166 +characters/hermione/clothes/stockings/maid_stockings_1/extra.webp:513,1052,89,100 +characters/hermione/clothes/stockings/maid_stockings_1/outline.webp:484,1031,198,169 +characters/hermione/clothes/stockings/msmarv_stockings/0.webp:457,934,235,266 +characters/hermione/clothes/stockings/msmarv_stockings/1.webp:498,999,128,201 +characters/hermione/clothes/stockings/msmarv_stockings/outline.webp:455,932,239,268 +characters/hermione/clothes/stockings/pantyhose_1/0.webp:457,838,235,362 +characters/hermione/clothes/stockings/pantyhose_1/outline.webp:455,836,238,364 +characters/hermione/clothes/stockings/pantyhose_2/0.webp:457,838,235,362 +characters/hermione/clothes/stockings/pantyhose_2/outline.webp:455,836,238,364 +characters/hermione/clothes/stockings/pantyhose_3/0.webp:457,838,235,362 +characters/hermione/clothes/stockings/pantyhose_3/outline.webp:455,836,238,364 +characters/hermione/clothes/stockings/poker_stockings_1/0.webp:464,983,224,217 +characters/hermione/clothes/stockings/poker_stockings_1/1.webp:460,962,228,51 +characters/hermione/clothes/stockings/poker_stockings_1/extra.webp:460,962,192,32 +characters/hermione/clothes/stockings/poker_stockings_1/outline.webp:458,960,232,240 +characters/hermione/clothes/stockings/poker_stockings_1/skin.webp:441,928,80,95 +characters/hermione/clothes/stockings/poker_stockings_2/0.webp:464,983,224,217 +characters/hermione/clothes/stockings/poker_stockings_2/1.webp:460,962,228,51 +characters/hermione/clothes/stockings/poker_stockings_2/extra.webp:460,962,192,32 +characters/hermione/clothes/stockings/poker_stockings_2/outline.webp:458,960,232,240 +characters/hermione/clothes/stockings/short_meshed/0.webp:496,1030,181,170 +characters/hermione/clothes/stockings/short_meshed/1.webp:485,1039,196,53 +characters/hermione/clothes/stockings/short_meshed/extra.webp:485,1040,193,52 +characters/hermione/clothes/stockings/short_meshed/outline.webp:480,1025,202,175 +characters/hermione/clothes/stockings/stockings_1/0.webp:505,1085,164,105 +characters/hermione/clothes/stockings/stockings_1/1.webp:488,1049,188,151 +characters/hermione/clothes/stockings/stockings_1/extra.webp:517,1063,92,81 +characters/hermione/clothes/stockings/stockings_1/outline.webp:487,1047,191,153 +characters/hermione/clothes/stockings/stockings_1/skin.webp:488,1047,179,17 +characters/hermione/clothes/stockings/stockings_2/0.webp:470,1002,214,198 +characters/hermione/clothes/stockings/stockings_2/outline.webp:468,999,219,201 +characters/hermione/clothes/stockings/witch_stockings/0.webp:459,954,232,246 +characters/hermione/clothes/stockings/witch_stockings/1.webp:447,928,254,272 +characters/hermione/clothes/stockings/witch_stockings/outline.webp:445,927,257,273 +characters/hermione/clothes/stockings/xmas/0.webp:460,847,226,353 +characters/hermione/clothes/stockings/xmas/1.webp:498,1049,176,151 +characters/hermione/clothes/stockings/xmas/outline.webp:459,846,228,354 +characters/hermione/clothes/stockings/yen_stockings/0.webp:474,1010,214,190 +characters/hermione/clothes/stockings/yen_stockings/outline.webp:479,1026,204,174 +characters/hermione/clothes/tattoo/10g_tattoo/0.webp:520,843,49,55 +characters/hermione/clothes/tattoo/bunny_tattoo1/0.webp:616,874,50,79 +characters/hermione/clothes/tattoo/cockhole_tattoo/0.webp:515,847,63,37 +characters/hermione/clothes/tattoo/cumhere_tattoo1/0.webp:530,545,130,39 +characters/hermione/clothes/tattoo/cumhere_tattoo2/0.webp:515,852,63,43 +characters/hermione/clothes/tattoo/cumslut_tattoo/0.webp:514,851,73,40 +characters/hermione/clothes/tattoo/cunt_tattoo/0.webp:515,849,66,33 +characters/hermione/clothes/tattoo/deatheater_tattoo/0.webp:524,834,35,59 +characters/hermione/clothes/tattoo/deposit_tattoo/0.webp:507,844,84,29 +characters/hermione/clothes/tattoo/free_tattoo/0.webp:578,865,60,62 +characters/hermione/clothes/tattoo/fuckme_tattoo/0.webp:521,846,52,48 +characters/hermione/clothes/tattoo/lockhart_tattoo/0.webp:616,918,37,110 +characters/hermione/clothes/tattoo/mudblood_tattoo/0.webp:505,846,85,23 +characters/hermione/clothes/tattoo/nocondom_tattoo/0.webp:515,850,64,28 +characters/hermione/clothes/tattoo/punkblood_tattoo/0.webp:531,864,34,31 +characters/hermione/clothes/tattoo/punkblood_tattoo/1.webp:540,868,15,21 +characters/hermione/clothes/tattoo/punkblood_tattoo/outline.webp:530,864,35,32 +characters/hermione/clothes/tattoo/twist_tattoo/0.webp:557,619,58,77 +characters/hermione/clothes/tattoo/whore_tattoo/0.webp:513,850,70,42 +characters/hermione/clothes/tattoo/womb_tattoo/0.webp:516,853,56,57 +characters/hermione/clothes/top/ball_dress_1/0.webp:444,597,252,522 +characters/hermione/clothes/top/ball_dress_1/1.webp:455,515,298,624 +characters/hermione/clothes/top/ball_dress_1/extra.webp:461,626,173,443 +characters/hermione/clothes/top/ball_dress_1/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/ball_dress_1/outline.webp:442,514,312,627 +characters/hermione/clothes/top/bioshock_corset/0.webp:447,616,225,296 +characters/hermione/clothes/top/bioshock_corset/1.webp:461,618,208,293 +characters/hermione/clothes/top/bioshock_corset/2.webp:468,630,194,279 +characters/hermione/clothes/top/bioshock_corset/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/bioshock_corset/outline.webp:445,615,228,298 +characters/hermione/clothes/top/bioshock_corset/overlay.webp:457,612,204,24 +characters/hermione/clothes/top/bunny_top_1/0.webp:435,619,236,315 +characters/hermione/clothes/top/bunny_top_1/extra.webp:457,623,154,306 +characters/hermione/clothes/top/bunny_top_1/outline.webp:433,617,240,319 +characters/hermione/clothes/top/casual_top_1/0.webp:388,514,377,350 +characters/hermione/clothes/top/casual_top_1/1.webp:345,510,440,428 +characters/hermione/clothes/top/casual_top_1/extra.webp:520,591,52,203 +characters/hermione/clothes/top/casual_top_1/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/casual_top_1/outline.webp:344,508,443,433 +characters/hermione/clothes/top/casual_top_1/skin.webp:346,513,434,424 +characters/hermione/clothes/top/casual_top_2/0.webp:388,514,377,350 +characters/hermione/clothes/top/casual_top_2/extra.webp:520,591,52,203 +characters/hermione/clothes/top/casual_top_2/outline.webp:386,508,381,431 +characters/hermione/clothes/top/casual_top_2/skin.webp:391,526,370,337 +characters/hermione/clothes/top/cheerleader_top_1/0.webp:437,595,293,148 +characters/hermione/clothes/top/cheerleader_top_1/1.webp:479,516,252,258 +characters/hermione/clothes/top/cheerleader_top_1/2.webp:488,518,242,247 +characters/hermione/clothes/top/cheerleader_top_1/outline.webp:435,513,297,263 +characters/hermione/clothes/top/cheerleader_top_1/skin.webp:501,525,228,250 +characters/hermione/clothes/top/cheerleader_top_2/0.webp:437,514,294,259 +characters/hermione/clothes/top/cheerleader_top_2/1.webp:459,514,272,259 +characters/hermione/clothes/top/cheerleader_top_2/outline.webp:435,512,298,262 +characters/hermione/clothes/top/cheerleader_top_2/skin.webp:482,525,214,251 +characters/hermione/clothes/top/croft_top/0.webp:436,515,250,211 +characters/hermione/clothes/top/croft_top/outline.webp:435,513,252,214 +characters/hermione/clothes/top/egypt_top/0.webp:437,504,235,278 +characters/hermione/clothes/top/egypt_top/outline.webp:436,502,238,282 +characters/hermione/clothes/top/fishnet_onepiece/0.webp:348,517,432,416 +characters/hermione/clothes/top/fishnet_onepiece/1.webp:350,518,428,414 +characters/hermione/clothes/top/fishnet_onepiece/outline.webp:344,514,439,420 +characters/hermione/clothes/top/fishnet_top/0.webp:442,520,289,249 +characters/hermione/clothes/top/fishnet_top/outline.webp:447,516,285,252 +characters/hermione/clothes/top/hslut_top/0.webp:478,517,265,168 +characters/hermione/clothes/top/hslut_top/1.webp:503,513,230,193 +characters/hermione/clothes/top/hslut_top/extra.webp:502,517,219,168 +characters/hermione/clothes/top/hslut_top/outline.webp:475,511,270,196 +characters/hermione/clothes/top/latex_dress_1/0.webp:437,476,259,477 +characters/hermione/clothes/top/latex_dress_1/1.webp:544,565,39,37 +characters/hermione/clothes/top/latex_dress_1/extra.webp:437,491,215,451 +characters/hermione/clothes/top/latex_dress_1/outline.webp:435,475,263,480 +characters/hermione/clothes/top/latex_top/0.webp:434,604,236,128 +characters/hermione/clothes/top/latex_top/extra.webp:433,645,161,48 +characters/hermione/clothes/top/latex_top/outline.webp:433,499,238,236 +characters/hermione/clothes/top/latex_top/skin.webp:499,553,124,50 +characters/hermione/clothes/top/maid_dress_1/0.webp:390,515,371,524 +characters/hermione/clothes/top/maid_dress_1/1.webp:402,492,330,495 +characters/hermione/clothes/top/maid_dress_1/2.webp:580,663,141,123 +characters/hermione/clothes/top/maid_dress_1/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/maid_dress_1/outline.webp:389,491,374,549 +characters/hermione/clothes/top/msmarv_suit/0.webp:436,477,246,456 +characters/hermione/clothes/top/msmarv_suit/1.webp:442,492,208,423 +characters/hermione/clothes/top/msmarv_suit/2.webp:437,530,235,340 +characters/hermione/clothes/top/msmarv_suit/outline.webp:434,475,250,459 +characters/hermione/clothes/top/nightie/0.webp:437,512,264,488 +characters/hermione/clothes/top/nightie/outline.webp:435,508,268,493 +characters/hermione/clothes/top/open_top_1/0.webp:492,462,179,322 +characters/hermione/clothes/top/open_top_1/0_front.webp:546,462,114,78 +characters/hermione/clothes/top/open_top_1/1.webp:338,480,445,461 +characters/hermione/clothes/top/open_top_1/2.webp:507,505,159,141 +characters/hermione/clothes/top/open_top_1/3.webp:489,508,171,128 +characters/hermione/clothes/top/open_top_1/extra.webp:534,706,25,67 +characters/hermione/clothes/top/open_top_1/outline.webp:337,461,447,481 +characters/hermione/clothes/top/open_top_1/outline_front.webp:526,461,135,97 +characters/hermione/clothes/top/pajama_1/0.webp:330,503,462,447 +characters/hermione/clothes/top/pajama_1/extra.webp:330,504,462,446 +characters/hermione/clothes/top/pajama_1/outline.webp:328,500,465,451 +characters/hermione/clothes/top/pizza_top/0.webp:436,644,194,96 +characters/hermione/clothes/top/pizza_top/outline.webp:434,624,210,170 +characters/hermione/clothes/top/pizza_top/overlay.webp:435,625,206,167 +characters/hermione/clothes/top/pullover_1/0.webp:339,483,445,460 +characters/hermione/clothes/top/pullover_1/0_front.webp:550,483,121,63 +characters/hermione/clothes/top/pullover_1/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/pullover_1/outline.webp:337,480,450,466 +characters/hermione/clothes/top/pullover_1/outline_front.webp:547,480,125,69 +characters/hermione/clothes/top/pullover_2/0.webp:339,483,445,460 +characters/hermione/clothes/top/pullover_2/0_front.webp:550,483,121,63 +characters/hermione/clothes/top/pullover_2/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/pullover_2/outline.webp:337,480,450,466 +characters/hermione/clothes/top/pullover_2/outline_front.webp:547,480,125,69 +characters/hermione/clothes/top/pullover_2/skin.webp:516,567,96,89 +characters/hermione/clothes/top/pullover_3/0.webp:450,483,241,392 +characters/hermione/clothes/top/pullover_3/0_front.webp:550,483,121,63 +characters/hermione/clothes/top/pullover_3/outline.webp:437,480,327,396 +characters/hermione/clothes/top/pullover_3/outline_front.webp:547,480,125,69 +characters/hermione/clothes/top/pullover_3/skin.webp:516,567,96,89 +characters/hermione/clothes/top/ruffled_top/0.webp:423,632,327,188 +characters/hermione/clothes/top/ruffled_top/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/ruffled_top/outline.webp:422,631,329,192 +characters/hermione/clothes/top/swimsuit_top_1/0.webp:436,516,243,419 +characters/hermione/clothes/top/swimsuit_top_1/1.webp:486,608,172,269 +characters/hermione/clothes/top/swimsuit_top_1/outline.webp:434,515,248,420 +characters/hermione/clothes/top/swimsuit_top_1/skin.webp:648,683,21,21 +characters/hermione/clothes/top/swimsuit_top_2/0.webp:436,516,243,419 +characters/hermione/clothes/top/swimsuit_top_2/1.webp:486,608,172,269 +characters/hermione/clothes/top/swimsuit_top_2/outline.webp:434,515,248,420 +characters/hermione/clothes/top/swimsuit_top_2/skin.webp:648,683,21,21 +characters/hermione/clothes/top/teddy_top/0.webp:455,512,243,347 +characters/hermione/clothes/top/teddy_top/1.webp:436,597,265,279 +characters/hermione/clothes/top/teddy_top/2.webp:527,683,33,20 +characters/hermione/clothes/top/teddy_top/outline.webp:434,508,270,370 +characters/hermione/clothes/top/tifa_top/0.webp:436,515,250,220 +characters/hermione/clothes/top/tifa_top/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/tifa_top/outline.webp:435,513,254,223 +characters/hermione/clothes/top/top_school_1/0.webp:493,462,249,204 +characters/hermione/clothes/top/top_school_1/0_front.webp:527,462,130,100 +characters/hermione/clothes/top/top_school_1/1.webp:446,510,245,334 +characters/hermione/clothes/top/top_school_1/2.webp:479,500,261,356 +characters/hermione/clothes/top/top_school_1/3.webp:470,500,269,356 +characters/hermione/clothes/top/top_school_1/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/top_school_1/outline.webp:443,461,301,396 +characters/hermione/clothes/top/top_school_1/outline_front.webp:522,461,138,116 +characters/hermione/clothes/top/top_school_2/0.webp:493,462,249,204 +characters/hermione/clothes/top/top_school_2/0_front.webp:527,462,130,109 +characters/hermione/clothes/top/top_school_2/1.webp:446,510,245,334 +characters/hermione/clothes/top/top_school_2/2.webp:479,500,261,356 +characters/hermione/clothes/top/top_school_2/3.webp:470,500,269,356 +characters/hermione/clothes/top/top_school_2/extra.webp:545,571,30,41 +characters/hermione/clothes/top/top_school_2/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/top_school_2/outline.webp:443,461,301,396 +characters/hermione/clothes/top/top_school_2/outline_front.webp:518,461,142,109 +characters/hermione/clothes/top/top_school_3/0.webp:445,462,297,337 +characters/hermione/clothes/top/top_school_3/0_front.webp:525,462,138,102 +characters/hermione/clothes/top/top_school_3/1.webp:500,540,240,227 +characters/hermione/clothes/top/top_school_3/2.webp:501,533,238,247 +characters/hermione/clothes/top/top_school_3/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/top_school_3/outline.webp:443,461,301,335 +characters/hermione/clothes/top/top_school_3/outline_front.webp:518,461,142,105 +characters/hermione/clothes/top/top_school_4/0.webp:445,462,297,337 +characters/hermione/clothes/top/top_school_4/0_front.webp:525,462,133,104 +characters/hermione/clothes/top/top_school_4/1.webp:545,570,195,86 +characters/hermione/clothes/top/top_school_4/2.webp:663,623,76,33 +characters/hermione/clothes/top/top_school_4/extra.webp:521,508,181,250 +characters/hermione/clothes/top/top_school_4/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/top_school_4/outline.webp:443,461,301,335 +characters/hermione/clothes/top/top_school_4/outline_front.webp:522,461,137,105 +characters/hermione/clothes/top/top_school_5/0.webp:445,462,297,337 +characters/hermione/clothes/top/top_school_5/0_front.webp:525,462,133,132 +characters/hermione/clothes/top/top_school_5/1.webp:545,576,195,80 +characters/hermione/clothes/top/top_school_5/2.webp:663,623,76,33 +characters/hermione/clothes/top/top_school_5/extra.webp:521,508,181,250 +characters/hermione/clothes/top/top_school_5/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/top_school_5/outline.webp:443,461,301,335 +characters/hermione/clothes/top/top_school_5/outline_front.webp:523,461,136,134 +characters/hermione/clothes/top/top_school_5/skin.webp:552,541,42,64 +characters/hermione/clothes/top/top_school_6/0.webp:446,497,245,347 +characters/hermione/clothes/top/top_school_6/1.webp:479,498,218,358 +characters/hermione/clothes/top/top_school_6/2.webp:470,500,220,356 +characters/hermione/clothes/top/top_school_6/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/top_school_6/outline.webp:443,497,256,360 +characters/hermione/clothes/top/top_school_6/skin.webp:532,570,60,52 +characters/hermione/clothes/top/top_school_7/0.webp:436,474,315,259 +characters/hermione/clothes/top/top_school_7/1.webp:660,619,81,40 +characters/hermione/clothes/top/top_school_7/2.webp:661,626,79,27 +characters/hermione/clothes/top/top_school_7/mask.webp:0,0,1010,1200 +characters/hermione/clothes/top/top_school_7/outline.webp:434,473,310,261 +characters/hermione/clothes/top/top_school_7/skin.webp:495,488,231,238 +characters/hermione/clothes/top/witch_top/0.webp:435,623,235,312 +characters/hermione/clothes/top/witch_top/1.webp:447,612,227,320 +characters/hermione/clothes/top/witch_top/extra.webp:447,623,165,312 +characters/hermione/clothes/top/witch_top/outline.webp:433,610,243,326 +characters/hermione/clothes/top/xmas/0.webp:445,628,293,91 +characters/hermione/clothes/top/xmas/1.webp:432,589,314,146 +characters/hermione/clothes/top/xmas/2.webp:448,633,134,98 +characters/hermione/clothes/top/xmas/extra.webp:445,633,255,99 +characters/hermione/clothes/top/xmas/outline.webp:431,589,317,147 +characters/hermione/clothes/top/xmas/skin.webp:504,588,226,157 +characters/hermione/clothes/top/yen_top/0.webp:343,568,437,368 +characters/hermione/clothes/top/yen_top/outline.webp:343,568,437,368 +characters/hermione/cum/body/heavy.webp:458,472,255,320 +characters/hermione/cum/body/light.webp:532,510,181,282 +characters/hermione/cum/breasts/heavy.webp:448,538,194,169 +characters/hermione/cum/breasts/light.webp:532,552,89,149 +characters/hermione/cum/crotch/heavy.webp:459,769,181,252 +characters/hermione/cum/crotch/light.webp:501,769,73,154 +characters/hermione/cum/face/heavy.webp:512,382,126,132 +characters/hermione/cum/face/light.webp:597,393,33,72 +characters/hermione/cum/hair/heavy.webp:478,247,190,169 +characters/hermione/cum/hair/light.webp:496,263,117,100 +characters/hermione/cum/legs/heavy.webp:457,860,215,340 +characters/hermione/cum/legs/light.webp:510,860,146,191 +characters/hermione/cum/pussy/heavy.webp:537,923,21,114 +characters/hermione/cum/pussy/light.webp:537,923,20,44 +characters/hermione/emotes/angry.webp:602,319,45,43 +characters/hermione/emotes/confused.webp:449,166,129,101 +characters/hermione/emotes/happy.webp:472,135,131,127 +characters/hermione/emotes/hearts.webp:428,118,175,146 +characters/hermione/emotes/shocked.webp:437,140,136,128 +characters/hermione/emotes/sweat.webp:597,304,42,67 +characters/hermione/face/cheeks/blush.webp:515,398,97,26 +characters/hermione/face/eyebrows/angry.webp:507,358,114,20 +characters/hermione/face/eyebrows/angry_skin.webp:512,358,115,39 +characters/hermione/face/eyebrows/annoyed.webp:507,358,114,19 +characters/hermione/face/eyebrows/annoyed_skin.webp:512,358,115,39 +characters/hermione/face/eyebrows/base.webp:508,354,115,15 +characters/hermione/face/eyebrows/base_skin.webp:512,353,119,44 +characters/hermione/face/eyebrows/low.webp:508,362,115,16 +characters/hermione/face/eyebrows/low_skin.webp:512,355,119,44 +characters/hermione/face/eyebrows/worried.webp:510,356,116,18 +characters/hermione/face/eyebrows/worried_skin.webp:512,358,115,39 +characters/hermione/face/eyes/base.webp:515,369,100,26 +characters/hermione/face/eyes/base_mask.webp:520,373,86,19 +characters/hermione/face/eyes/closed.webp:513,365,109,35 +characters/hermione/face/eyes/happy.webp:514,369,104,24 +characters/hermione/face/eyes/happyCl.webp:513,369,111,22 +characters/hermione/face/eyes/happy_mask.webp:521,373,87,18 +characters/hermione/face/eyes/narrow.webp:513,367,106,29 +characters/hermione/face/eyes/narrow_mask.webp:522,379,84,15 +characters/hermione/face/eyes/slit.webp:514,370,102,19 +characters/hermione/face/eyes/slit_mask.webp:519,374,89,13 +characters/hermione/face/eyes/squint.webp:515,369,100,24 +characters/hermione/face/eyes/squint_mask.webp:521,373,86,18 +characters/hermione/face/eyes/wide.webp:515,365,102,36 +characters/hermione/face/eyes/wide_mask.webp:519,369,92,29 +characters/hermione/face/eyes/wink.webp:513,369,102,26 +characters/hermione/face/eyes/wink_mask.webp:573,373,33,19 +characters/hermione/face/mouth/angry.webp:539,435,55,26 +characters/hermione/face/mouth/annoyed.webp:532,437,35,19 +characters/hermione/face/mouth/base.webp:541,439,41,16 +characters/hermione/face/mouth/clench.webp:537,431,51,28 +characters/hermione/face/mouth/crooked_smile.webp:536,433,55,31 +characters/hermione/face/mouth/cum.webp:541,439,35,24 +characters/hermione/face/mouth/disgust.webp:540,447,50,20 +characters/hermione/face/mouth/full.webp:506,384,132,99 +characters/hermione/face/mouth/full_cum.webp:506,384,132,122 +characters/hermione/face/mouth/full_panties.webp:506,384,132,99 +characters/hermione/face/mouth/grin.webp:537,438,53,26 +characters/hermione/face/mouth/mad.webp:539,441,44,22 +characters/hermione/face/mouth/normal.webp:541,439,35,16 +characters/hermione/face/mouth/open.webp:541,436,32,32 +characters/hermione/face/mouth/open_tongue.webp:541,436,32,32 +characters/hermione/face/mouth/open_wide_tongue.webp:529,433,91,61 +characters/hermione/face/mouth/open_wide_tongue_cum.webp:529,433,91,65 +characters/hermione/face/mouth/open_wide_tongue_panties.webp:529,433,91,61 +characters/hermione/face/mouth/scream.webp:529,433,91,55 +characters/hermione/face/mouth/shock.webp:535,437,43,36 +characters/hermione/face/mouth/silly.webp:540,433,46,32 +characters/hermione/face/mouth/smile.webp:536,435,57,33 +characters/hermione/face/mouth/soft.webp:538,439,36,26 +characters/hermione/face/mouth/upset.webp:540,439,35,19 +characters/hermione/face/pupils/L.webp:522,372,70,20 +characters/hermione/face/pupils/L_soft.webp:522,372,70,20 +characters/hermione/face/pupils/R.webp:532,372,74,19 +characters/hermione/face/pupils/R_soft.webp:532,372,74,19 +characters/hermione/face/pupils/ahegao.webp:529,359,63,22 +characters/hermione/face/pupils/dead.webp:525,371,71,19 +characters/hermione/face/pupils/down.webp:528,383,68,19 +characters/hermione/face/pupils/down_soft.webp:528,383,68,19 +characters/hermione/face/pupils/mid.webp:529,370,72,20 +characters/hermione/face/pupils/mid_soft.webp:529,370,72,20 +characters/hermione/face/pupils/shocked.webp:523,375,75,19 +characters/hermione/face/pupils/squint.webp:532,372,59,19 +characters/hermione/face/pupils/squint_soft.webp:532,372,59,19 +characters/hermione/face/pupils/stare.webp:527,372,68,20 +characters/hermione/face/pupils/stare_soft.webp:527,372,68,20 +characters/hermione/face/pupils/up.webp:525,367,67,20 +characters/hermione/face/pupils/up_soft.webp:525,367,67,20 +characters/hermione/face/tears/crying.webp:512,378,104,62 +characters/hermione/face/tears/crying_blink.webp:502,378,122,54 +characters/hermione/face/tears/mascara.webp:512,378,118,112 +characters/hermione/face/tears/mascara_crying.webp:514,378,116,112 +characters/hermione/face/tears/mascara_soft.webp:512,376,118,114 +characters/hermione/face/tears/mascara_soft_blink.webp:492,378,144,112 +characters/hermione/face/tears/messy.webp:512,384,110,94 +characters/hermione/face/tears/soft.webp:516,376,94,26 +characters/hermione/face/tears/soft_blink.webp:492,380,144,26 +characters/hermione/face/tears/sweat.webp:520,380,110,110 +characters/hermione/face/tears/tears_crying_side.webp:516,382,106,50 +characters/hermione/face/tears/tears_down.webp:512,378,104,62 +characters/hermione/face/tears/tears_mascara_crying_blink.webp:502,378,128,112 +characters/hermione/face/tears/tears_soft_sweat.webp:516,376,114,114 +characters/hermione/poses/CG_bent_over/body/armleft/down.webp:0,0,0,0 +characters/hermione/poses/CG_bent_over/body/armright/down.webp:388,1907,153,127 +characters/hermione/poses/CG_bent_over/body/base/front.webp:388,1359,1266,777 +characters/hermione/poses/CG_bent_over/body/breasts/normal.webp:0,0,0,0 +characters/hermione/poses/CG_bent_over/clothes/bottom/school_skirt_1/0.webp:1044,1389,638,522 +characters/hermione/poses/CG_bent_over/clothes/bottom/school_skirt_1/1.webp:0,0,0,0 +characters/hermione/poses/CG_bent_over/clothes/bottom/school_skirt_1/outline.webp:1043,1387,640,538 +characters/hermione/poses/CG_bent_over/clothes/hair/base/0.webp:435,1307,572,640 +characters/hermione/poses/CG_bent_over/clothes/hair/base/0_back.webp:384,1474,819,458 +characters/hermione/poses/CG_bent_over/clothes/hair/base/0_front.webp:717,1576,290,371 +characters/hermione/poses/CG_bent_over/clothes/hair/base/1.webp:439,1307,520,481 +characters/hermione/poses/CG_bent_over/clothes/hair/base/1_back.webp:439,1307,749,605 +characters/hermione/poses/CG_bent_over/clothes/hair/base/1_front.webp:822,1649,110,139 +characters/hermione/poses/CG_bent_over/clothes/hair/base/2.webp:757,1394,76,91 +characters/hermione/poses/CG_bent_over/clothes/hair/base/outline.webp:433,1306,575,643 +characters/hermione/poses/CG_bent_over/clothes/hair/base/outline_back.webp:378,1478,825,458 +characters/hermione/poses/CG_bent_over/clothes/hair/base/outline_front.webp:716,1575,292,374 +characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/0.webp:562,1616,602,265 +characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/1.webp:521,1512,866,524 +characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/2.webp:590,1489,825,1061 +characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/3.webp:590,1488,824,480 +characters/hermione/poses/CG_bent_over/clothes/top/top_school_1/outline.webp:516,1484,901,554 +characters/hermione/poses/CG_bent_over/cum/body/heavy.webp:1191,1407,285,239 +characters/hermione/poses/CG_bent_over/cum/body/light.webp:1228,1410,139,155 +characters/hermione/poses/CG_bent_over/cum/body/shirt_heavy.webp:1191,1425,181,106 +characters/hermione/poses/CG_bent_over/cum/body/shirt_light.webp:1243,1425,129,55 +characters/hermione/poses/CG_bent_over/cum/body/skirt_heavy.webp:1236,1385,165,87 +characters/hermione/poses/CG_bent_over/cum/body/skirt_light.webp:1272,1385,129,55 +characters/hermione/poses/CG_bent_over/cum/pussy/heavy.webp:1335,1749,54,88 +characters/hermione/poses/CG_bent_over/cum/pussy/light.webp:1350,1748,38,53 +characters/hermione/poses/CG_bent_over/face/cheeks/blush.webp:516,1549,220,166 +characters/hermione/poses/CG_bent_over/face/eyebrows/angry.webp:507,1522,211,101 +characters/hermione/poses/CG_bent_over/face/eyebrows/annoyed.webp:507,1516,211,101 +characters/hermione/poses/CG_bent_over/face/eyebrows/base.webp:508,1516,214,93 +characters/hermione/poses/CG_bent_over/face/eyebrows/worried.webp:510,1523,212,95 +characters/hermione/poses/CG_bent_over/face/eyes/base.webp:515,1544,199,94 +characters/hermione/poses/CG_bent_over/face/eyes/base_mask.webp:532,1554,162,78 +characters/hermione/poses/CG_bent_over/face/eyes/closed.webp:516,1543,192,97 +characters/hermione/poses/CG_bent_over/face/eyes/happy.webp:515,1546,198,88 +characters/hermione/poses/CG_bent_over/face/eyes/happyCl.webp:511,1542,208,93 +characters/hermione/poses/CG_bent_over/face/eyes/happy_mask.webp:533,1554,160,75 +characters/hermione/poses/CG_bent_over/face/eyes/narrow.webp:512,1544,201,94 +characters/hermione/poses/CG_bent_over/face/eyes/narrow_mask.webp:532,1567,161,65 +characters/hermione/poses/CG_bent_over/face/eyes/wide.webp:516,1539,199,104 +characters/hermione/poses/CG_bent_over/face/eyes/wide_mask.webp:531,1550,164,86 +characters/hermione/poses/CG_bent_over/face/mouth/angry.webp:590,1682,90,60 +characters/hermione/poses/CG_bent_over/face/mouth/annoyed.webp:584,1685,69,33 +characters/hermione/poses/CG_bent_over/face/mouth/base.webp:594,1682,80,39 +characters/hermione/poses/CG_bent_over/face/mouth/clench.webp:592,1679,83,55 +characters/hermione/poses/CG_bent_over/face/mouth/crooked_smile.webp:587,1679,85,60 +characters/hermione/poses/CG_bent_over/face/mouth/disgust.webp:587,1692,91,46 +characters/hermione/poses/CG_bent_over/face/mouth/grin.webp:587,1681,88,55 +characters/hermione/poses/CG_bent_over/face/mouth/mad.webp:591,1683,82,50 +characters/hermione/poses/CG_bent_over/face/mouth/normal.webp:597,1684,70,37 +characters/hermione/poses/CG_bent_over/face/mouth/open.webp:594,1681,66,61 +characters/hermione/poses/CG_bent_over/face/mouth/open_tongue.webp:594,1681,66,66 +characters/hermione/poses/CG_bent_over/face/mouth/open_wide_tongue.webp:542,1614,228,178 +characters/hermione/poses/CG_bent_over/face/mouth/scream.webp:542,1614,228,177 +characters/hermione/poses/CG_bent_over/face/mouth/smile.webp:585,1681,84,63 +characters/hermione/poses/CG_bent_over/face/mouth/soft.webp:593,1689,64,43 +characters/hermione/poses/CG_bent_over/face/mouth/upset.webp:586,1689,68,33 +characters/hermione/poses/CG_bent_over/face/pupils/L.webp:528,1554,136,75 +characters/hermione/poses/CG_bent_over/face/pupils/R.webp:551,1549,146,79 +characters/hermione/poses/CG_bent_over/face/pupils/ahegao.webp:536,1535,139,83 +characters/hermione/poses/CG_bent_over/face/pupils/down.webp:541,1564,135,75 +characters/hermione/poses/CG_bent_over/face/pupils/mid.webp:540,1553,136,76 +characters/hermione/poses/CG_bent_over/face/pupils/stare.webp:540,1553,136,76 +characters/hermione/poses/CG_bent_over/face/pupils/up.webp:540,1547,136,76 +characters/hermione/poses/CG_bent_over/face/tears/soft.webp:532,1572,169,69 +characters/hermione/poses/CG_bent_over/face/tears/soft_blink.webp:523,1577,182,66 +characters/hermione/poses/CG_bent_over/loadable.webp:0,0,1,1 +characters/hermione/poses/CG_lean_back/body/armleft/down.webp:1240,961,566,846 +characters/hermione/poses/CG_lean_back/body/armright/down.webp:0,0,0,0 +characters/hermione/poses/CG_lean_back/body/base/front.webp:848,573,709,1310 +characters/hermione/poses/CG_lean_back/body/breasts/normal.webp:828,996,258,463 +characters/hermione/poses/CG_lean_back/clothes/bottom/school_skirt_1/0.webp:981,1389,571,492 +characters/hermione/poses/CG_lean_back/clothes/bottom/school_skirt_1/1.webp:1240,1584,25,44 +characters/hermione/poses/CG_lean_back/clothes/bottom/school_skirt_1/outline.webp:980,1387,574,494 +characters/hermione/poses/CG_lean_back/clothes/hair/base/0.webp:960,532,428,253 +characters/hermione/poses/CG_lean_back/clothes/hair/base/0_back.webp:821,714,793,524 +characters/hermione/poses/CG_lean_back/clothes/hair/base/1.webp:965,547,407,182 +characters/hermione/poses/CG_lean_back/clothes/hair/base/1_back.webp:845,738,766,442 +characters/hermione/poses/CG_lean_back/clothes/hair/base/2.webp:1226,567,90,75 +characters/hermione/poses/CG_lean_back/clothes/hair/base/outline.webp:961,531,442,257 +characters/hermione/poses/CG_lean_back/clothes/hair/base/outline_back.webp:819,728,796,518 +characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/0.webp:926,900,548,327 +characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/1.webp:850,901,582,777 +characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/2.webp:1006,948,460,714 +characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/3.webp:1006,948,457,730 +characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/mask.webp:0,0,2500,2550 +characters/hermione/poses/CG_lean_back/clothes/top/top_school_1/outline.webp:850,897,629,768 +characters/hermione/poses/CG_lean_back/face/cheeks/blush.webp:1029,703,222,144 +characters/hermione/poses/CG_lean_back/face/eyebrows/angry.webp:1023,674,189,94 +characters/hermione/poses/CG_lean_back/face/eyebrows/annoyed.webp:1023,668,189,94 +characters/hermione/poses/CG_lean_back/face/eyebrows/base.webp:1024,668,192,86 +characters/hermione/poses/CG_lean_back/face/eyebrows/worried.webp:1025,675,190,88 +characters/hermione/poses/CG_lean_back/face/eyes/base.webp:1032,696,176,88 +characters/hermione/poses/CG_lean_back/face/eyes/base_mask.webp:1045,706,145,72 +characters/hermione/poses/CG_lean_back/face/eyes/closed.webp:1039,695,156,88 +characters/hermione/poses/CG_lean_back/face/eyes/happy.webp:1033,697,174,83 +characters/hermione/poses/CG_lean_back/face/eyes/happyCl.webp:1037,695,174,86 +characters/hermione/poses/CG_lean_back/face/eyes/happy_mask.webp:1046,706,142,69 +characters/hermione/poses/CG_lean_back/face/eyes/narrow.webp:1031,695,176,89 +characters/hermione/poses/CG_lean_back/face/eyes/narrow_mask.webp:1045,719,143,59 +characters/hermione/poses/CG_lean_back/face/eyes/wide.webp:1031,691,178,98 +characters/hermione/poses/CG_lean_back/face/eyes/wide_mask.webp:1045,703,146,79 +characters/hermione/poses/CG_lean_back/face/mouth/angry.webp:1086,828,83,56 +characters/hermione/poses/CG_lean_back/face/mouth/annoyed.webp:1081,831,62,31 +characters/hermione/poses/CG_lean_back/face/mouth/base.webp:1090,827,73,38 +characters/hermione/poses/CG_lean_back/face/mouth/clench.webp:1088,825,76,52 +characters/hermione/poses/CG_lean_back/face/mouth/crooked_smile.webp:1083,825,78,57 +characters/hermione/poses/CG_lean_back/face/mouth/disgust.webp:1083,837,83,44 +characters/hermione/poses/CG_lean_back/face/mouth/full.webp:1027,740,203,162 +characters/hermione/poses/CG_lean_back/face/mouth/grin.webp:1083,827,81,52 +characters/hermione/poses/CG_lean_back/face/mouth/mad.webp:1087,828,75,49 +characters/hermione/poses/CG_lean_back/face/mouth/normal.webp:1092,830,64,35 +characters/hermione/poses/CG_lean_back/face/mouth/open.webp:1090,827,60,58 +characters/hermione/poses/CG_lean_back/face/mouth/open_tongue.webp:1090,827,60,62 +characters/hermione/poses/CG_lean_back/face/mouth/open_wide_tongue.webp:1040,799,220,146 +characters/hermione/poses/CG_lean_back/face/mouth/scream.webp:1040,799,220,146 +characters/hermione/poses/CG_lean_back/face/mouth/smile.webp:1081,827,77,60 +characters/hermione/poses/CG_lean_back/face/mouth/soft.webp:1088,835,60,41 +characters/hermione/poses/CG_lean_back/face/mouth/upset.webp:1083,834,62,32 +characters/hermione/poses/CG_lean_back/face/pupils/L.webp:1041,703,118,71 +characters/hermione/poses/CG_lean_back/face/pupils/R.webp:1067,703,118,71 +characters/hermione/poses/CG_lean_back/face/pupils/ahegao.webp:1051,687,118,71 +characters/hermione/poses/CG_lean_back/face/pupils/down.webp:1051,714,118,71 +characters/hermione/poses/CG_lean_back/face/pupils/mid.webp:1051,703,118,71 +characters/hermione/poses/CG_lean_back/face/pupils/stare.webp:1051,703,118,71 +characters/hermione/poses/CG_lean_back/face/pupils/up.webp:1051,697,118,71 +characters/hermione/poses/CG_lean_back/face/tears/soft.webp:1039,722,162,62 +characters/hermione/poses/CG_lean_back/face/tears/soft_blink.webp:1042,715,159,63 +characters/hermione/poses/CG_lean_back/loadable.webp:0,0,1,1 +characters/hermione/poses/CG_lean_forward/body/armleft/down.webp:1074,966,322,1028 +characters/hermione/poses/CG_lean_forward/body/armright/down.webp:700,999,372,956 +characters/hermione/poses/CG_lean_forward/body/base/front.webp:815,600,742,1283 +characters/hermione/poses/CG_lean_forward/body/breasts/normal.webp:790,1063,221,303 +characters/hermione/poses/CG_lean_forward/clothes/bottom/school_skirt_1/0.webp:983,810,566,1131 +characters/hermione/poses/CG_lean_forward/clothes/bottom/school_skirt_1/1.webp:1004,810,32,36 +characters/hermione/poses/CG_lean_forward/clothes/bottom/school_skirt_1/outline.webp:981,810,571,1137 +characters/hermione/poses/CG_lean_forward/clothes/hair/base/0.webp:869,559,429,278 +characters/hermione/poses/CG_lean_forward/clothes/hair/base/0_back.webp:780,718,786,528 +characters/hermione/poses/CG_lean_forward/clothes/hair/base/1.webp:874,565,405,214 +characters/hermione/poses/CG_lean_forward/clothes/hair/base/1_back.webp:808,739,743,501 +characters/hermione/poses/CG_lean_forward/clothes/hair/base/2.webp:1122,584,94,75 +characters/hermione/poses/CG_lean_forward/clothes/hair/base/outline.webp:869,556,445,275 +characters/hermione/poses/CG_lean_forward/clothes/hair/base/outline_back.webp:779,730,787,516 +characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/0.webp:879,911,551,319 +characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/1.webp:815,912,581,793 +characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/2.webp:971,954,423,733 +characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/3.webp:966,954,427,751 +characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/mask.webp:0,0,2500,2550 +characters/hermione/poses/CG_lean_forward/clothes/top/top_school_1/outline.webp:814,908,587,781 +characters/hermione/poses/CG_lean_forward/face/cheeks/blush.webp:944,728,222,157 +characters/hermione/poses/CG_lean_forward/face/eyebrows/angry.webp:940,702,182,107 +characters/hermione/poses/CG_lean_forward/face/eyebrows/annoyed.webp:939,696,182,107 +characters/hermione/poses/CG_lean_forward/face/eyebrows/base.webp:939,697,186,98 +characters/hermione/poses/CG_lean_forward/face/eyebrows/worried.webp:941,703,185,100 +characters/hermione/poses/CG_lean_forward/face/eyes/base.webp:949,725,171,97 +characters/hermione/poses/CG_lean_forward/face/eyes/base_mask.webp:962,734,140,82 +characters/hermione/poses/CG_lean_forward/face/eyes/closed.webp:956,725,153,96 +characters/hermione/poses/CG_lean_forward/face/eyes/happy.webp:951,726,167,92 +characters/hermione/poses/CG_lean_forward/face/eyes/happyCl.webp:954,725,171,95 +characters/hermione/poses/CG_lean_forward/face/eyes/happy_mask.webp:963,734,138,79 +characters/hermione/poses/CG_lean_forward/face/eyes/narrow.webp:948,725,171,97 +characters/hermione/poses/CG_lean_forward/face/eyes/narrow_mask.webp:962,747,139,69 +characters/hermione/poses/CG_lean_forward/face/eyes/wide.webp:949,719,171,108 +characters/hermione/poses/CG_lean_forward/face/eyes/wide_mask.webp:961,731,142,89 +characters/hermione/poses/CG_lean_forward/face/mouth/angry.webp:1009,859,83,59 +characters/hermione/poses/CG_lean_forward/face/mouth/annoyed.webp:1004,864,63,31 +characters/hermione/poses/CG_lean_forward/face/mouth/base.webp:1014,857,71,41 +characters/hermione/poses/CG_lean_forward/face/mouth/clench.webp:1012,857,75,54 +characters/hermione/poses/CG_lean_forward/face/mouth/crooked_smile.webp:1007,856,77,59 +characters/hermione/poses/CG_lean_forward/face/mouth/disgust.webp:1007,868,83,46 +characters/hermione/poses/CG_lean_forward/face/mouth/full.webp:950,769,200,168 +characters/hermione/poses/CG_lean_forward/face/mouth/grin.webp:1006,857,81,56 +characters/hermione/poses/CG_lean_forward/face/mouth/mad.webp:1010,860,75,50 +characters/hermione/poses/CG_lean_forward/face/mouth/normal.webp:1016,859,62,39 +characters/hermione/poses/CG_lean_forward/face/mouth/open.webp:1013,860,61,58 +characters/hermione/poses/CG_lean_forward/face/mouth/open_tongue.webp:1013,860,61,62 +characters/hermione/poses/CG_lean_forward/face/mouth/open_wide_tongue.webp:963,821,217,153 +characters/hermione/poses/CG_lean_forward/face/mouth/scream.webp:963,821,217,153 +characters/hermione/poses/CG_lean_forward/face/mouth/smile.webp:1005,857,77,63 +characters/hermione/poses/CG_lean_forward/face/mouth/soft.webp:1012,867,59,41 +characters/hermione/poses/CG_lean_forward/face/mouth/upset.webp:1006,867,63,32 +characters/hermione/poses/CG_lean_forward/face/pupils/L.webp:957,733,116,79 +characters/hermione/poses/CG_lean_forward/face/pupils/R.webp:983,731,116,79 +characters/hermione/poses/CG_lean_forward/face/pupils/ahegao.webp:966,716,116,79 +characters/hermione/poses/CG_lean_forward/face/pupils/down.webp:968,743,116,79 +characters/hermione/poses/CG_lean_forward/face/pupils/mid.webp:967,732,116,79 +characters/hermione/poses/CG_lean_forward/face/pupils/stare.webp:967,732,116,79 +characters/hermione/poses/CG_lean_forward/face/pupils/up.webp:966,726,117,79 +characters/hermione/poses/CG_lean_forward/face/tears/soft.webp:958,749,157,77 +characters/hermione/poses/CG_lean_forward/face/tears/soft_blink.webp:960,743,154,78 +characters/hermione/poses/CG_lean_forward/loadable.webp:0,0,1,1 +characters/hermione/poses/hold_book/body/armleft/down.webp:0,0,0,0 +characters/hermione/poses/hold_book/body/armright/down.webp:0,0,0,0 +characters/hermione/poses/hold_book/body/base/front.webp:382,277,362,923 +characters/hermione/poses/hold_book/body/breasts/normal.webp:0,0,0,0 +characters/hermione/poses/hold_book/clothes/hair/base/0.webp:475,236,280,181 +characters/hermione/poses/hold_book/clothes/hair/base/0_back.webp:428,370,408,290 +characters/hermione/poses/hold_book/clothes/hair/base/1.webp:476,243,279,172 +characters/hermione/poses/hold_book/clothes/hair/base/1_back.webp:453,408,368,187 +characters/hermione/poses/hold_book/clothes/hair/base/2.webp:644,285,42,51 +characters/hermione/poses/hold_book/clothes/hair/base/extra.webp:668,285,18,45 +characters/hermione/poses/hold_book/clothes/hair/base/outline.webp:426,235,410,425 +characters/hermione/poses/hold_book/clothes/hair/base/outline_back.webp:426,370,410,290 +characters/hermione/poses/hold_book/clothes/hair/base/skin.webp:510,279,149,115 +characters/hermione/poses/hold_book/face/cheeks/blush.webp:515,398,97,26 +characters/hermione/poses/hold_book/face/eyebrows/angry.webp:507,358,114,20 +characters/hermione/poses/hold_book/face/eyebrows/angry_skin.webp:512,358,115,39 +characters/hermione/poses/hold_book/face/eyebrows/annoyed.webp:507,358,114,19 +characters/hermione/poses/hold_book/face/eyebrows/annoyed_skin.webp:512,358,115,39 +characters/hermione/poses/hold_book/face/eyebrows/base.webp:508,354,115,15 +characters/hermione/poses/hold_book/face/eyebrows/base_skin.webp:512,353,119,44 +characters/hermione/poses/hold_book/face/eyebrows/low.webp:508,362,115,16 +characters/hermione/poses/hold_book/face/eyebrows/low_skin.webp:512,355,119,44 +characters/hermione/poses/hold_book/face/eyebrows/worried.webp:510,356,116,18 +characters/hermione/poses/hold_book/face/eyebrows/worried_skin.webp:512,358,115,39 +characters/hermione/poses/hold_book/face/eyes/base.webp:515,369,100,26 +characters/hermione/poses/hold_book/face/eyes/base_mask.webp:520,373,86,19 +characters/hermione/poses/hold_book/face/eyes/closed.webp:513,365,109,35 +characters/hermione/poses/hold_book/face/eyes/happy.webp:514,369,104,24 +characters/hermione/poses/hold_book/face/eyes/happyCl.webp:513,369,111,22 +characters/hermione/poses/hold_book/face/eyes/happy_mask.webp:521,373,87,18 +characters/hermione/poses/hold_book/face/eyes/narrow.webp:513,367,106,29 +characters/hermione/poses/hold_book/face/eyes/narrow_mask.webp:522,379,84,15 +characters/hermione/poses/hold_book/face/eyes/slit.webp:514,370,102,19 +characters/hermione/poses/hold_book/face/eyes/slit_mask.webp:519,374,89,13 +characters/hermione/poses/hold_book/face/eyes/squint.webp:515,369,100,24 +characters/hermione/poses/hold_book/face/eyes/squint_mask.webp:521,373,86,18 +characters/hermione/poses/hold_book/face/eyes/wide.webp:515,365,102,36 +characters/hermione/poses/hold_book/face/eyes/wide_mask.webp:519,369,92,29 +characters/hermione/poses/hold_book/face/eyes/wink.webp:513,369,102,26 +characters/hermione/poses/hold_book/face/eyes/wink_mask.webp:573,373,33,19 +characters/hermione/poses/hold_book/face/mouth/angry.webp:539,435,55,26 +characters/hermione/poses/hold_book/face/mouth/annoyed.webp:532,437,35,19 +characters/hermione/poses/hold_book/face/mouth/base.webp:541,439,41,16 +characters/hermione/poses/hold_book/face/mouth/clench.webp:537,431,51,28 +characters/hermione/poses/hold_book/face/mouth/crooked_smile.webp:536,433,55,31 +characters/hermione/poses/hold_book/face/mouth/cum.webp:541,439,35,24 +characters/hermione/poses/hold_book/face/mouth/disgust.webp:540,447,50,20 +characters/hermione/poses/hold_book/face/mouth/full.webp:506,384,132,99 +characters/hermione/poses/hold_book/face/mouth/full_cum.webp:506,384,132,122 +characters/hermione/poses/hold_book/face/mouth/grin.webp:537,438,53,26 +characters/hermione/poses/hold_book/face/mouth/mad.webp:539,441,44,22 +characters/hermione/poses/hold_book/face/mouth/normal.webp:541,439,35,16 +characters/hermione/poses/hold_book/face/mouth/open.webp:541,436,32,32 +characters/hermione/poses/hold_book/face/mouth/open_tongue.webp:541,436,32,32 +characters/hermione/poses/hold_book/face/mouth/open_wide_tongue.webp:529,433,91,61 +characters/hermione/poses/hold_book/face/mouth/open_wide_tongue_cum.webp:529,433,91,65 +characters/hermione/poses/hold_book/face/mouth/scream.webp:529,433,91,55 +characters/hermione/poses/hold_book/face/mouth/shock.webp:535,437,43,36 +characters/hermione/poses/hold_book/face/mouth/silly.webp:540,433,46,32 +characters/hermione/poses/hold_book/face/mouth/smile.webp:536,435,57,33 +characters/hermione/poses/hold_book/face/mouth/soft.webp:538,439,36,26 +characters/hermione/poses/hold_book/face/mouth/upset.webp:540,439,35,19 +characters/hermione/poses/hold_book/face/pupils/L.webp:522,372,70,20 +characters/hermione/poses/hold_book/face/pupils/L_soft.webp:522,372,70,20 +characters/hermione/poses/hold_book/face/pupils/R.webp:532,372,74,19 +characters/hermione/poses/hold_book/face/pupils/R_soft.webp:532,372,74,19 +characters/hermione/poses/hold_book/face/pupils/ahegao.webp:529,359,63,22 +characters/hermione/poses/hold_book/face/pupils/dead.webp:525,371,71,19 +characters/hermione/poses/hold_book/face/pupils/down.webp:528,383,68,19 +characters/hermione/poses/hold_book/face/pupils/down_soft.webp:528,383,68,19 +characters/hermione/poses/hold_book/face/pupils/mid.webp:529,370,72,20 +characters/hermione/poses/hold_book/face/pupils/mid_soft.webp:529,370,72,20 +characters/hermione/poses/hold_book/face/pupils/shocked.webp:523,375,75,19 +characters/hermione/poses/hold_book/face/pupils/squint.webp:532,372,59,19 +characters/hermione/poses/hold_book/face/pupils/squint_soft.webp:532,372,59,19 +characters/hermione/poses/hold_book/face/pupils/stare.webp:527,372,68,20 +characters/hermione/poses/hold_book/face/pupils/stare_soft.webp:527,372,68,20 +characters/hermione/poses/hold_book/face/pupils/up.webp:525,367,67,20 +characters/hermione/poses/hold_book/face/pupils/up_soft.webp:525,367,67,20 +characters/hermione/poses/hold_book/face/tears/crying.webp:512,378,104,62 +characters/hermione/poses/hold_book/face/tears/crying_blink.webp:502,378,122,54 +characters/hermione/poses/hold_book/face/tears/mascara.webp:512,378,118,112 +characters/hermione/poses/hold_book/face/tears/mascara_crying.webp:514,378,116,112 +characters/hermione/poses/hold_book/face/tears/mascara_soft.webp:512,376,118,114 +characters/hermione/poses/hold_book/face/tears/mascara_soft_blink.webp:492,378,144,112 +characters/hermione/poses/hold_book/face/tears/messy.webp:512,384,110,94 +characters/hermione/poses/hold_book/face/tears/soft.webp:516,376,94,26 +characters/hermione/poses/hold_book/face/tears/soft_blink.webp:492,380,144,26 +characters/hermione/poses/hold_book/face/tears/sweat.webp:520,380,110,110 +characters/hermione/poses/hold_book/face/tears/tears_crying_side.webp:516,382,106,50 +characters/hermione/poses/hold_book/face/tears/tears_down.webp:512,378,104,62 +characters/hermione/poses/hold_book/face/tears/tears_mascara_crying_blink.webp:502,378,128,112 +characters/hermione/poses/hold_book/face/tears/tears_soft_sweat.webp:516,376,114,114 +characters/hermione/poses/hold_book/loadable.webp:0,0,1,1 +characters/hermione/poses/masturbate/body/armleft/down.webp:660,521,170,501 +characters/hermione/poses/masturbate/body/armleft/on_pussy.webp:504,522,229,457 +characters/hermione/poses/masturbate/body/armright/down.webp:272,692,231,292 +characters/hermione/poses/masturbate/body/armright/on_tits.webp:404,514,205,227 +characters/hermione/poses/masturbate/body/base/front.webp:454,277,276,923 +characters/hermione/poses/masturbate/body/breasts/normal.webp:435,570,239,157 +characters/hermione/poses/masturbate/clothes/hair/base/0.webp:475,236,280,181 +characters/hermione/poses/masturbate/clothes/hair/base/0_back.webp:428,370,408,290 +characters/hermione/poses/masturbate/clothes/hair/base/1.webp:476,243,279,172 +characters/hermione/poses/masturbate/clothes/hair/base/1_back.webp:453,408,368,187 +characters/hermione/poses/masturbate/clothes/hair/base/2.webp:644,285,42,51 +characters/hermione/poses/masturbate/clothes/hair/base/extra.webp:668,285,18,45 +characters/hermione/poses/masturbate/clothes/hair/base/outline.webp:426,235,410,425 +characters/hermione/poses/masturbate/clothes/hair/base/outline_back.webp:426,370,410,290 +characters/hermione/poses/masturbate/clothes/hair/base/skin.webp:510,279,149,115 +characters/hermione/poses/masturbate/clothes/hair/bio_hair/0.webp:476,241,289,230 +characters/hermione/poses/masturbate/clothes/hair/bio_hair/1.webp:476,265,236,84 +characters/hermione/poses/masturbate/clothes/hair/bio_hair/outline.webp:475,240,292,236 +characters/hermione/poses/masturbate/clothes/hair/bio_hair/skin.webp:495,302,137,113 +characters/hermione/poses/masturbate/clothes/hair/updo/0.webp:486,233,256,255 +characters/hermione/poses/masturbate/clothes/hair/updo/0_front.webp:581,471,60,83 +characters/hermione/poses/masturbate/clothes/hair/updo/1.webp:486,233,255,239 +characters/hermione/poses/masturbate/clothes/hair/updo/1_front.webp:582,471,42,82 +characters/hermione/poses/masturbate/clothes/hair/updo/outline.webp:484,232,259,323 +characters/hermione/poses/masturbate/clothes/hair/updo/outline_front.webp:578,471,64,84 +characters/hermione/poses/masturbate/clothes/hair/updo/skin.webp:511,297,139,160 +characters/hermione/poses/masturbate/cum/body/heavy.webp:458,472,255,320 +characters/hermione/poses/masturbate/cum/body/light.webp:532,510,181,282 +characters/hermione/poses/masturbate/cum/breasts/heavy.webp:448,538,194,169 +characters/hermione/poses/masturbate/cum/breasts/light.webp:532,552,89,149 +characters/hermione/poses/masturbate/cum/crotch/heavy.webp:459,769,181,252 +characters/hermione/poses/masturbate/cum/crotch/light.webp:501,769,73,154 +characters/hermione/poses/masturbate/cum/face/heavy.webp:512,382,126,132 +characters/hermione/poses/masturbate/cum/face/light.webp:597,393,33,72 +characters/hermione/poses/masturbate/cum/hair/heavy.webp:478,247,190,169 +characters/hermione/poses/masturbate/cum/hair/light.webp:496,263,117,100 +characters/hermione/poses/masturbate/cum/legs/heavy.webp:457,860,215,340 +characters/hermione/poses/masturbate/cum/legs/light.webp:510,860,146,191 +characters/hermione/poses/masturbate/cum/pussy/heavy.webp:537,923,21,114 +characters/hermione/poses/masturbate/cum/pussy/light.webp:537,923,20,44 +characters/hermione/poses/masturbate/cum/pussy/squirt.webp:470,952,93,132 +characters/hermione/poses/masturbate/cum/pussy/squirt_post.webp:481,956,86,106 +characters/hermione/poses/masturbate/cum/pussy/wet.webp:540,963,19,17 +characters/hermione/poses/masturbate/face/cheeks/blush.webp:515,398,97,26 +characters/hermione/poses/masturbate/face/eyebrows/angry.webp:507,358,114,20 +characters/hermione/poses/masturbate/face/eyebrows/angry_skin.webp:512,358,115,39 +characters/hermione/poses/masturbate/face/eyebrows/annoyed.webp:507,358,114,19 +characters/hermione/poses/masturbate/face/eyebrows/annoyed_skin.webp:512,358,115,39 +characters/hermione/poses/masturbate/face/eyebrows/base.webp:508,354,115,15 +characters/hermione/poses/masturbate/face/eyebrows/base_skin.webp:512,353,119,44 +characters/hermione/poses/masturbate/face/eyebrows/low.webp:508,362,115,16 +characters/hermione/poses/masturbate/face/eyebrows/low_skin.webp:512,355,119,44 +characters/hermione/poses/masturbate/face/eyebrows/worried.webp:510,356,116,18 +characters/hermione/poses/masturbate/face/eyebrows/worried_skin.webp:512,358,115,39 +characters/hermione/poses/masturbate/face/eyes/base.webp:515,369,100,26 +characters/hermione/poses/masturbate/face/eyes/base_mask.webp:520,373,86,19 +characters/hermione/poses/masturbate/face/eyes/closed.webp:513,365,109,35 +characters/hermione/poses/masturbate/face/eyes/happy.webp:514,369,104,24 +characters/hermione/poses/masturbate/face/eyes/happyCl.webp:513,369,111,22 +characters/hermione/poses/masturbate/face/eyes/happy_mask.webp:521,373,87,18 +characters/hermione/poses/masturbate/face/eyes/narrow.webp:513,367,106,29 +characters/hermione/poses/masturbate/face/eyes/narrow_mask.webp:522,379,84,15 +characters/hermione/poses/masturbate/face/eyes/slit.webp:514,370,102,19 +characters/hermione/poses/masturbate/face/eyes/slit_mask.webp:519,374,89,13 +characters/hermione/poses/masturbate/face/eyes/squint.webp:515,369,100,24 +characters/hermione/poses/masturbate/face/eyes/squint_mask.webp:521,373,86,18 +characters/hermione/poses/masturbate/face/eyes/wide.webp:515,365,102,36 +characters/hermione/poses/masturbate/face/eyes/wide_mask.webp:519,369,92,29 +characters/hermione/poses/masturbate/face/eyes/wink.webp:513,369,102,26 +characters/hermione/poses/masturbate/face/eyes/wink_mask.webp:573,373,33,19 +characters/hermione/poses/masturbate/face/mouth/angry.webp:539,435,55,26 +characters/hermione/poses/masturbate/face/mouth/annoyed.webp:532,437,35,19 +characters/hermione/poses/masturbate/face/mouth/base.webp:541,439,41,16 +characters/hermione/poses/masturbate/face/mouth/clench.webp:537,431,51,28 +characters/hermione/poses/masturbate/face/mouth/crooked_smile.webp:536,433,55,31 +characters/hermione/poses/masturbate/face/mouth/cum.webp:541,439,35,24 +characters/hermione/poses/masturbate/face/mouth/disgust.webp:540,447,50,20 +characters/hermione/poses/masturbate/face/mouth/full.webp:506,384,132,99 +characters/hermione/poses/masturbate/face/mouth/full_cum.webp:506,384,132,122 +characters/hermione/poses/masturbate/face/mouth/grin.webp:537,438,53,26 +characters/hermione/poses/masturbate/face/mouth/mad.webp:539,441,44,22 +characters/hermione/poses/masturbate/face/mouth/normal.webp:541,439,35,16 +characters/hermione/poses/masturbate/face/mouth/open.webp:541,436,32,32 +characters/hermione/poses/masturbate/face/mouth/open_tongue.webp:541,436,32,32 +characters/hermione/poses/masturbate/face/mouth/open_wide_tongue.webp:529,433,91,61 +characters/hermione/poses/masturbate/face/mouth/open_wide_tongue_cum.webp:529,433,91,65 +characters/hermione/poses/masturbate/face/mouth/scream.webp:529,433,91,55 +characters/hermione/poses/masturbate/face/mouth/shock.webp:535,437,43,36 +characters/hermione/poses/masturbate/face/mouth/silly.webp:540,433,46,32 +characters/hermione/poses/masturbate/face/mouth/smile.webp:536,435,57,33 +characters/hermione/poses/masturbate/face/mouth/soft.webp:538,439,36,26 +characters/hermione/poses/masturbate/face/mouth/upset.webp:540,439,35,19 +characters/hermione/poses/masturbate/face/pupils/L.webp:522,372,70,20 +characters/hermione/poses/masturbate/face/pupils/L_soft.webp:522,372,70,20 +characters/hermione/poses/masturbate/face/pupils/R.webp:532,372,74,19 +characters/hermione/poses/masturbate/face/pupils/R_soft.webp:532,372,74,19 +characters/hermione/poses/masturbate/face/pupils/ahegao.webp:529,359,63,22 +characters/hermione/poses/masturbate/face/pupils/dead.webp:525,371,71,19 +characters/hermione/poses/masturbate/face/pupils/down.webp:528,383,68,19 +characters/hermione/poses/masturbate/face/pupils/down_soft.webp:528,383,68,19 +characters/hermione/poses/masturbate/face/pupils/mid.webp:529,370,72,20 +characters/hermione/poses/masturbate/face/pupils/mid_soft.webp:529,370,72,20 +characters/hermione/poses/masturbate/face/pupils/shocked.webp:523,375,75,19 +characters/hermione/poses/masturbate/face/pupils/squint.webp:532,372,59,19 +characters/hermione/poses/masturbate/face/pupils/squint_soft.webp:532,372,59,19 +characters/hermione/poses/masturbate/face/pupils/stare.webp:527,372,68,20 +characters/hermione/poses/masturbate/face/pupils/stare_soft.webp:527,372,68,20 +characters/hermione/poses/masturbate/face/pupils/up.webp:525,367,67,20 +characters/hermione/poses/masturbate/face/pupils/up_soft.webp:525,367,67,20 +characters/hermione/poses/masturbate/face/tears/crying.webp:512,378,104,62 +characters/hermione/poses/masturbate/face/tears/crying_blink.webp:502,378,122,54 +characters/hermione/poses/masturbate/face/tears/mascara.webp:512,378,118,112 +characters/hermione/poses/masturbate/face/tears/mascara_crying.webp:514,378,116,112 +characters/hermione/poses/masturbate/face/tears/mascara_soft.webp:512,376,118,114 +characters/hermione/poses/masturbate/face/tears/mascara_soft_blink.webp:492,378,144,112 +characters/hermione/poses/masturbate/face/tears/messy.webp:512,384,110,94 +characters/hermione/poses/masturbate/face/tears/soft.webp:516,376,94,26 +characters/hermione/poses/masturbate/face/tears/soft_blink.webp:492,380,144,26 +characters/hermione/poses/masturbate/face/tears/sweat.webp:520,380,110,110 +characters/hermione/poses/masturbate/face/tears/tears_crying_side.webp:516,382,106,50 +characters/hermione/poses/masturbate/face/tears/tears_down.webp:512,378,104,62 +characters/hermione/poses/masturbate/face/tears/tears_mascara_crying_blink.webp:502,378,128,112 +characters/hermione/poses/masturbate/face/tears/tears_soft_sweat.webp:516,376,114,114 +characters/hermione/poses/masturbate/loadable.webp:0,0,1,1 +characters/hooch/body/base/front.webp:241,261,564,939 +characters/hooch/chibi/stand/0.webp:170,105,255,672 +characters/hooch/chibi/walk/0.webp:170,105,255,662 +characters/hooch/chibi/walk/1.webp:170,107,255,659 +characters/hooch/chibi/walk/2.webp:170,111,270,660 +characters/hooch/chibi/walk/3.webp:170,107,255,663 +characters/hooch/chibi/walk/4.webp:170,105,255,662 +characters/hooch/chibi/walk/5.webp:170,107,255,665 +characters/hooch/chibi/walk/6.webp:170,111,270,666 +characters/hooch/chibi/walk/7.webp:170,107,255,665 +characters/hooch/clothes/accessory/broom/0.webp:642,186,71,1014 +characters/hooch/clothes/accessory/broom/1.webp:644,1178,69,22 +characters/hooch/clothes/accessory/broom/2.webp:637,1072,81,128 +characters/hooch/clothes/accessory/broom/outline.webp:634,184,85,1016 +characters/hooch/clothes/accessory/broom_dildo/0.webp:642,186,71,1014 +characters/hooch/clothes/accessory/broom_dildo/1.webp:644,1178,69,22 +characters/hooch/clothes/accessory/broom_dildo/2.webp:637,1072,81,128 +characters/hooch/clothes/accessory/broom_dildo/outline.webp:634,184,85,1016 +characters/hooch/clothes/accessory/broom_dildo/overlay.webp:581,829,129,117 +characters/hooch/clothes/bottom/sport_trousers/0.webp:350,848,288,352 +characters/hooch/clothes/bottom/sport_trousers/1.webp:590,875,56,325 +characters/hooch/clothes/bottom/sport_trousers/outline.webp:348,847,300,353 +characters/hooch/clothes/bra/sport/0.webp:340,508,268,249 +characters/hooch/clothes/bra/sport/1.webp:382,503,231,278 +characters/hooch/clothes/bra/sport/outline.webp:339,501,276,282 +characters/hooch/clothes/gloves/sport_gloves/0.webp:337,480,412,393 +characters/hooch/clothes/gloves/sport_gloves/0_top.webp:652,480,97,130 +characters/hooch/clothes/gloves/sport_gloves/extra.webp:355,480,393,372 +characters/hooch/clothes/gloves/sport_gloves/extra_top.webp:656,480,92,100 +characters/hooch/clothes/gloves/sport_gloves/outline.webp:336,479,415,396 +characters/hooch/clothes/gloves/sport_gloves/outline_top.webp:651,479,100,132 +characters/hooch/clothes/hair/base/0.webp:402,229,246,211 +characters/hooch/clothes/hair/base/0_back.webp:391,318,200,147 +characters/hooch/clothes/hair/base/outline.webp:397,215,256,228 +characters/hooch/clothes/hair/base/outline_back.webp:390,322,203,147 +characters/hooch/clothes/hair/base/skin.webp:430,303,102,40 +characters/hooch/clothes/headgear/sport_goggles/0.webp:400,248,171,76 +characters/hooch/clothes/headgear/sport_goggles/1.webp:416,265,160,87 +characters/hooch/clothes/headgear/sport_goggles/2.webp:405,253,162,60 +characters/hooch/clothes/headgear/sport_goggles/extra.webp:419,256,119,21 +characters/hooch/clothes/headgear/sport_goggles/outline.webp:400,247,177,106 +characters/hooch/clothes/panties/sport/0.webp:397,888,142,88 +characters/hooch/clothes/panties/sport/1.webp:372,849,236,59 +characters/hooch/clothes/panties/sport/outline.webp:372,848,238,129 +characters/hooch/clothes/robe/sport_robe/0.webp:237,509,559,691 +characters/hooch/clothes/robe/sport_robe/1.webp:408,478,175,519 +characters/hooch/clothes/robe/sport_robe/2.webp:347,870,291,330 +characters/hooch/clothes/robe/sport_robe/extra.webp:421,636,87,564 +characters/hooch/clothes/robe/sport_robe/outline.webp:236,478,562,722 +characters/hooch/clothes/top/sport_shirt/0.webp:283,486,436,474 +characters/hooch/clothes/top/sport_shirt/1.webp:287,486,432,445 +characters/hooch/clothes/top/sport_shirt/outline.webp:281,484,440,478 +characters/hooch/face/cheeks/blush.webp:422,364,124,83 +characters/hooch/face/cheeks/blush_heavy.webp:422,363,125,85 +characters/hooch/face/eyebrows/angry.webp:429,340,95,19 +characters/hooch/face/eyebrows/base.webp:429,338,94,19 +characters/hooch/face/eyebrows/raised.webp:429,335,93,22 +characters/hooch/face/eyebrows/shocked.webp:428,337,95,15 +characters/hooch/face/eyebrows/worried.webp:429,340,94,19 +characters/hooch/face/eyes/base.webp:424,357,95,25 +characters/hooch/face/eyes/base_mask.webp:428,368,84,12 +characters/hooch/face/eyes/closed.webp:423,356,96,26 +characters/hooch/face/eyes/narrow.webp:424,357,95,24 +characters/hooch/face/eyes/narrow_mask.webp:429,369,82,10 +characters/hooch/face/eyes/shocked.webp:423,357,96,26 +characters/hooch/face/eyes/shocked_mask.webp:428,365,85,16 +characters/hooch/face/eyes/wink.webp:423,357,96,25 +characters/hooch/face/eyes/wink_mask.webp:482,370,30,10 +characters/hooch/face/mouth/angry.webp:433,395,58,55 +characters/hooch/face/mouth/base.webp:434,417,45,22 +characters/hooch/face/mouth/grin.webp:433,414,53,33 +characters/hooch/face/mouth/normal.webp:435,417,42,22 +characters/hooch/face/mouth/open.webp:434,415,43,31 +characters/hooch/face/pupils/L.webp:428,364,68,18 +characters/hooch/face/pupils/R.webp:439,365,75,17 +characters/hooch/face/pupils/down.webp:432,367,71,18 +characters/hooch/face/pupils/downL.webp:424,368,69,18 +characters/hooch/face/pupils/downR.webp:437,368,75,17 +characters/hooch/face/pupils/mid.webp:435,364,75,18 +characters/hooch/face/pupils/stare.webp:432,364,71,18 +characters/hooch/face/pupils/up.webp:431,362,70,17 +characters/luna/body/armleft/down.webp:656,522,174,500 +characters/luna/body/armleft/up.webp:656,522,241,270 +characters/luna/body/armright/down.webp:272,687,232,297 +characters/luna/body/armright/up.webp:292,575,217,201 +characters/luna/body/base/front.webp:324,290,503,910 +characters/luna/body/breasts/normal.webp:449,564,220,149 +characters/luna/body/breasts/normal_tight.webp:451,564,218,149 +characters/luna/chibis/inspect_body_lean/breast_nude_01.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/breast_nude_02.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/breast_nude_03.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/breast_nude_04.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/breast_nude_05.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/breast_nude_06.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/idle_nude_01.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/idle_nude_02.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/vag_nude_01.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/vag_nude_02.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/vag_nude_03.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/vag_nude_04.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/vag_nude_05.webp:92,54,367,456 +characters/luna/chibis/inspect_body_lean/vag_nude_06.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/Idle_clothed_01.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/breast_nude_01.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/breast_nude_02.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/breast_nude_03.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/breast_nude_04.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/breast_nude_05.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/breast_nude_06.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/idle_clothed_02.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/idle_nude_01.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/idle_nude_02.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/vag_nude_01.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/vag_nude_02.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/vag_nude_03.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/vag_nude_04.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/vag_nude_05.webp:92,54,367,456 +characters/luna/chibis/inspect_body_stand/vag_nude_06.webp:92,54,367,456 +characters/luna/chibis/luna_stand.webp:20,2,180,345 +characters/luna/chibis/luna_stand_topless.webp:20,2,180,345 +characters/luna/chibis/sit_on_lap.webp:193,76,159,320 +characters/luna/chibis/walk/l_walk_a_01.webp:20,2,180,342 +characters/luna/chibis/walk/l_walk_a_02.webp:17,2,183,345 +characters/luna/chibis/walk/l_walk_a_03.webp:12,2,188,342 +characters/luna/chibis/walk/l_walk_a_04.webp:20,2,180,342 +characters/luna/chibis/walk/l_walk_a_05.webp:20,2,180,340 +characters/luna/chibis/walk/l_walk_a_06.webp:20,2,180,342 +characters/luna/chibis/walk/l_walk_n_01.webp:20,2,180,342 +characters/luna/chibis/walk/l_walk_n_02.webp:20,2,180,345 +characters/luna/chibis/walk/l_walk_n_03.webp:12,2,188,342 +characters/luna/chibis/walk/l_walk_n_04.webp:20,2,180,342 +characters/luna/chibis/walk/l_walk_n_05.webp:20,2,180,340 +characters/luna/chibis/walk/l_walk_n_06.webp:20,2,180,342 +characters/luna/chibis/walk/l_walk_robe_01.webp:16,2,184,342 +characters/luna/chibis/walk/l_walk_robe_02.webp:16,2,184,345 +characters/luna/chibis/walk/l_walk_robe_03.webp:16,2,184,342 +characters/luna/chibis/walk/l_walk_robe_04.webp:16,2,184,342 +characters/luna/chibis/walk/l_walk_robe_05.webp:16,2,184,340 +characters/luna/chibis/walk/l_walk_robe_06.webp:16,2,184,342 +characters/luna/chibis/walk/walk_topless_01.webp:20,2,180,342 +characters/luna/chibis/walk/walk_topless_02.webp:20,2,180,345 +characters/luna/chibis/walk/walk_topless_03.webp:12,2,188,342 +characters/luna/chibis/walk/walk_topless_04.webp:20,2,180,342 +characters/luna/chibis/walk/walk_topless_05.webp:20,2,180,340 +characters/luna/chibis/walk/walk_topless_06.webp:20,2,180,342 +characters/luna/clothes/accessory/bracelets/0.webp:373,611,38,57 +characters/luna/clothes/accessory/bracelets/1.webp:381,648,43,31 +characters/luna/clothes/accessory/bracelets/2.webp:374,636,38,58 +characters/luna/clothes/accessory/bracelets/outline.webp:373,610,51,85 +characters/luna/clothes/accessory/bracelets/skin.webp:385,647,37,48 +characters/luna/clothes/accessory/hair_bug/0.webp:0,0,1,1 +characters/luna/clothes/accessory/hair_bug/outline.webp:688,352,80,77 +characters/luna/clothes/accessory/harley_quinn_strap/0.webp:538,969,127,107 +characters/luna/clothes/accessory/harley_quinn_strap/outline.webp:536,968,129,108 +characters/luna/clothes/accessory/lionhead/0.webp:0,0,0,0 +characters/luna/clothes/accessory/lionhead/outline.webp:324,220,474,975 +characters/luna/clothes/accessory/lionhead/outline_back.webp:448,140,389,681 +characters/luna/clothes/accessory/pin_radish/0.webp:588,606,38,34 +characters/luna/clothes/accessory/pin_radish/1.webp:594,606,32,23 +characters/luna/clothes/accessory/pin_radish/extra.webp:591,622,23,15 +characters/luna/clothes/accessory/pin_radish/outline.webp:588,605,38,36 +characters/luna/clothes/accessory/police_cuffs/0.webp:445,780,69,100 +characters/luna/clothes/accessory/police_cuffs/extra.webp:445,780,46,96 +characters/luna/clothes/accessory/police_cuffs/outline.webp:443,779,72,103 +characters/luna/clothes/accessory/police_cuffs/skin.webp:454,781,65,103 +characters/luna/clothes/accessory/wand_breasts/0.webp:0,0,1,1 +characters/luna/clothes/accessory/wand_breasts/outline.webp:528,495,74,279 +characters/luna/clothes/accessory/wand_hand/0.webp:0,0,1,1 +characters/luna/clothes/accessory/wand_hand/outline.webp:716,580,212,128 +characters/luna/clothes/accessory/wand_mouth/0.webp:0,0,1,1 +characters/luna/clothes/accessory/wand_mouth/outline.webp:482,426,235,54 +characters/luna/clothes/accessory/wand_pussy/0.webp:0,0,1,1 +characters/luna/clothes/accessory/wand_pussy/outline.webp:497,911,236,51 +characters/luna/clothes/bottom/casual_jeans/0.webp:449,798,256,402 +characters/luna/clothes/bottom/casual_jeans/outline.webp:447,795,258,405 +characters/luna/clothes/bottom/muggle_skirt/0.webp:424,821,293,149 +characters/luna/clothes/bottom/muggle_skirt/1.webp:436,847,179,92 +characters/luna/clothes/bottom/muggle_skirt/2.webp:428,834,284,134 +characters/luna/clothes/bottom/muggle_skirt/3.webp:439,821,254,135 +characters/luna/clothes/bottom/muggle_skirt/4.webp:469,840,233,124 +characters/luna/clothes/bottom/muggle_skirt/5.webp:423,847,274,115 +characters/luna/clothes/bottom/muggle_skirt/outline.webp:422,820,296,152 +characters/luna/clothes/bottom/pajama_1/0.webp:450,816,251,384 +characters/luna/clothes/bottom/pajama_1/1.webp:534,606,190,249 +characters/luna/clothes/bottom/pajama_1/outline.webp:449,659,253,541 +characters/luna/clothes/bottom/police_skirt/0.webp:440,789,267,200 +characters/luna/clothes/bottom/police_skirt/1.webp:338,776,340,88 +characters/luna/clothes/bottom/police_skirt/2.webp:524,822,41,34 +characters/luna/clothes/bottom/police_skirt/extra.webp:524,822,15,34 +characters/luna/clothes/bottom/police_skirt/outline.webp:437,762,273,230 +characters/luna/clothes/bottom/police_skirt/skin.webp:455,929,224,41 +characters/luna/clothes/bottom/school_skirt_1/0.webp:441,764,279,394 +characters/luna/clothes/bottom/school_skirt_1/1.webp:583,794,13,25 +characters/luna/clothes/bottom/school_skirt_1/lift_skirt/0.webp:391,708,320,238 +characters/luna/clothes/bottom/school_skirt_1/lift_skirt/1.webp:579,792,11,25 +characters/luna/clothes/bottom/school_skirt_1/lift_skirt/outline.webp:388,708,326,240 +characters/luna/clothes/bottom/school_skirt_1/lift_skirt/skin.webp:456,808,227,134 +characters/luna/clothes/bottom/school_skirt_1/mask.webp:0,0,1010,1200 +characters/luna/clothes/bottom/school_skirt_1/outline.webp:440,764,281,398 +characters/luna/clothes/bottom/school_skirt_2/0.webp:436,764,280,262 +characters/luna/clothes/bottom/school_skirt_2/1.webp:583,794,13,25 +characters/luna/clothes/bottom/school_skirt_2/lift_skirt/0.webp:782,1416,640,475 +characters/luna/clothes/bottom/school_skirt_2/lift_skirt/1.webp:1158,1585,22,48 +characters/luna/clothes/bottom/school_skirt_2/lift_skirt/outline.webp:777,1416,651,479 +characters/luna/clothes/bottom/school_skirt_2/lift_skirt/skin.webp:913,1617,452,267 +characters/luna/clothes/bottom/school_skirt_2/mask.webp:0,0,1010,1200 +characters/luna/clothes/bottom/school_skirt_2/outline.webp:434,764,284,264 +characters/luna/clothes/bottom/school_skirt_3/0.webp:441,764,266,188 +characters/luna/clothes/bottom/school_skirt_3/1.webp:583,794,13,25 +characters/luna/clothes/bottom/school_skirt_3/lift_skirt/0.webp:782,1416,640,475 +characters/luna/clothes/bottom/school_skirt_3/lift_skirt/1.webp:1158,1585,22,48 +characters/luna/clothes/bottom/school_skirt_3/lift_skirt/outline.webp:777,1416,651,479 +characters/luna/clothes/bottom/school_skirt_3/lift_skirt/skin.webp:913,1617,452,267 +characters/luna/clothes/bottom/school_skirt_3/mask.webp:0,0,1010,1200 +characters/luna/clothes/bottom/school_skirt_3/outline.webp:438,764,270,189 +characters/luna/clothes/bottom/school_skirt_4/0.webp:447,764,251,168 +characters/luna/clothes/bottom/school_skirt_4/1.webp:583,794,13,25 +characters/luna/clothes/bottom/school_skirt_4/lift_skirt/0.webp:782,1416,640,475 +characters/luna/clothes/bottom/school_skirt_4/lift_skirt/1.webp:1158,1585,22,48 +characters/luna/clothes/bottom/school_skirt_4/lift_skirt/outline.webp:777,1416,651,479 +characters/luna/clothes/bottom/school_skirt_4/lift_skirt/skin.webp:913,1617,452,267 +characters/luna/clothes/bottom/school_skirt_4/mask.webp:0,0,1010,1200 +characters/luna/clothes/bottom/school_skirt_4/outline.webp:445,764,255,159 +characters/luna/clothes/bottom/summer_shorts/0.webp:448,829,255,127 +characters/luna/clothes/bottom/summer_shorts/1.webp:448,914,255,42 +characters/luna/clothes/bottom/summer_shorts/2.webp:532,865,13,11 +characters/luna/clothes/bottom/summer_shorts/outline.webp:447,827,257,131 +characters/luna/clothes/bottom/summer_shorts/skin.webp:456,832,234,126 +characters/luna/clothes/bra/basic_bra_1/0.webp:450,509,225,203 +characters/luna/clothes/bra/basic_bra_1/1.webp:465,603,177,87 +characters/luna/clothes/bra/basic_bra_1/2.webp:519,664,38,35 +characters/luna/clothes/bra/basic_bra_1/extra.webp:451,597,168,90 +characters/luna/clothes/bra/basic_bra_1/outline.webp:448,508,229,205 +characters/luna/clothes/bra/basic_bra_1/skin.webp:491,541,164,175 +characters/luna/clothes/bra/basic_bra_2/0.webp:452,510,223,202 +characters/luna/clothes/bra/basic_bra_2/1.webp:524,671,30,28 +characters/luna/clothes/bra/basic_bra_2/extra.webp:451,602,197,90 +characters/luna/clothes/bra/basic_bra_2/outline.webp:448,508,229,205 +characters/luna/clothes/bra/basic_bra_2/skin.webp:488,541,176,175 +characters/luna/clothes/bra/bikini_bra_3/0.webp:449,620,159,65 +characters/luna/clothes/bra/bikini_bra_3/1.webp:453,613,155,72 +characters/luna/clothes/bra/bikini_bra_3/extra.webp:449,624,146,54 +characters/luna/clothes/bra/bikini_bra_3/outline.webp:448,488,220,198 +characters/luna/clothes/bra/lace_bra_1/0.webp:447,628,225,93 +characters/luna/clothes/bra/lace_bra_1/1.webp:452,628,217,83 +characters/luna/clothes/bra/lace_bra_1/outline.webp:447,626,224,87 +characters/luna/clothes/bra/lace_bra_1/skin.webp:461,612,202,101 +characters/luna/clothes/glasses/spectrespecs/0.webp:493,345,153,66 +characters/luna/clothes/glasses/spectrespecs/1.webp:493,348,152,62 +characters/luna/clothes/glasses/spectrespecs/extra.webp:507,347,125,40 +characters/luna/clothes/glasses/spectrespecs/outline.webp:492,344,155,68 +characters/luna/clothes/glasses/sunglasses_2/0.webp:500,359,129,50 +characters/luna/clothes/glasses/sunglasses_2/1.webp:507,362,116,44 +characters/luna/clothes/glasses/sunglasses_2/extra.webp:499,359,124,44 +characters/luna/clothes/glasses/sunglasses_2/outline.webp:499,358,130,52 +characters/luna/clothes/gloves/harley_quinn/0.webp:292,582,597,81 +characters/luna/clothes/gloves/harley_quinn/extra.webp:293,583,553,53 +characters/luna/clothes/gloves/harley_quinn/outline.webp:292,581,599,82 +characters/luna/clothes/hair/base/0.webp:480,244,255,257 +characters/luna/clothes/hair/base/0_back.webp:459,357,301,445 +characters/luna/clothes/hair/base/1.webp:488,243,246,257 +characters/luna/clothes/hair/base/1_back.webp:461,356,299,445 +characters/luna/clothes/hair/base/2.webp:705,425,18,19 +characters/luna/clothes/hair/base/outline.webp:474,238,265,264 +characters/luna/clothes/hair/base/outline_back.webp:454,351,315,455 +characters/luna/clothes/hair/base/skin.webp:516,305,114,95 +characters/luna/clothes/hair/harley_quinn/0.webp:489,262,262,293 +characters/luna/clothes/hair/harley_quinn/1.webp:494,265,253,289 +characters/luna/clothes/hair/harley_quinn/2.webp:677,288,66,260 +characters/luna/clothes/hair/harley_quinn/3.webp:515,431,55,91 +characters/luna/clothes/hair/harley_quinn/4.webp:665,296,14,30 +characters/luna/clothes/hair/harley_quinn/extra.webp:508,261,239,252 +characters/luna/clothes/hair/harley_quinn/outline.webp:478,260,274,296 +characters/luna/clothes/hair/harley_quinn/skin.webp:528,318,99,77 +characters/luna/clothes/hair/wand/0.webp:480,244,360,260 +characters/luna/clothes/hair/wand/0_back.webp:459,357,301,445 +characters/luna/clothes/hair/wand/1.webp:488,243,352,260 +characters/luna/clothes/hair/wand/1_back.webp:461,356,299,445 +characters/luna/clothes/hair/wand/2.webp:705,425,18,19 +characters/luna/clothes/hair/wand/extra.webp:606,325,210,120 +characters/luna/clothes/hair/wand/outline.webp:474,238,368,272 +characters/luna/clothes/hair/wand/outline_back.webp:454,351,315,455 +characters/luna/clothes/hair/wand/skin.webp:516,305,114,95 +characters/luna/clothes/headgear/flight_attendant/0.webp:565,225,127,74 +characters/luna/clothes/headgear/flight_attendant/outline.webp:564,224,130,76 +characters/luna/clothes/neckwear/cork/0.webp:0,0,1,1 +characters/luna/clothes/neckwear/cork/outline.webp:557,492,387,235 +characters/luna/clothes/neckwear/neckerchief/0.webp:584,483,103,52 +characters/luna/clothes/neckwear/neckerchief/outline.webp:583,481,105,55 +characters/luna/clothes/neckwear/tie/0.webp:515,483,146,280 +characters/luna/clothes/neckwear/tie/1.webp:514,496,144,282 +characters/luna/clothes/neckwear/tie/extra.webp:515,538,71,239 +characters/luna/clothes/neckwear/tie/outline.webp:513,478,151,300 +characters/luna/clothes/neckwear/tie/skin.webp:528,543,102,237 +characters/luna/clothes/panties/basic_panties_1/0.webp:458,827,238,107 +characters/luna/clothes/panties/basic_panties_1/1.webp:458,832,238,82 +characters/luna/clothes/panties/basic_panties_1/2.webp:523,851,35,32 +characters/luna/clothes/panties/basic_panties_1/extra.webp:459,827,237,66 +characters/luna/clothes/panties/basic_panties_1/outline.webp:458,826,239,109 +characters/luna/clothes/panties/basic_panties_1/skin.webp:458,817,238,82 +characters/luna/clothes/panties/basic_panties_2/0.webp:458,827,238,107 +characters/luna/clothes/panties/basic_panties_2/1.webp:526,849,26,27 +characters/luna/clothes/panties/basic_panties_2/extra.webp:459,827,237,57 +characters/luna/clothes/panties/basic_panties_2/outline.webp:458,826,239,109 +characters/luna/clothes/panties/basic_panties_2/skin.webp:458,817,238,82 +characters/luna/clothes/panties/bikini_panties_3/0.webp:531,899,31,37 +characters/luna/clothes/panties/bikini_panties_3/1.webp:469,849,94,82 +characters/luna/clothes/panties/bikini_panties_3/outline.webp:460,833,216,103 +characters/luna/clothes/panties/flight_attendant_thongs_1/0.webp:464,830,221,105 +characters/luna/clothes/panties/flight_attendant_thongs_1/outline.webp:462,825,225,111 +characters/luna/clothes/panties/flight_attendant_thongs_2/0.webp:464,829,222,136 +characters/luna/clothes/panties/flight_attendant_thongs_2/1.webp:533,915,31,28 +characters/luna/clothes/panties/flight_attendant_thongs_2/outline.webp:462,825,225,142 +characters/luna/clothes/panties/flight_attendant_thongs_2/skin.webp:531,920,33,16 +characters/luna/clothes/panties/lace_panties_1/0.webp:454,849,242,87 +characters/luna/clothes/panties/lace_panties_1/1.webp:454,851,243,78 +characters/luna/clothes/panties/lace_panties_1/outline.webp:452,848,247,89 +characters/luna/clothes/panties/lace_panties_1/skin.webp:454,838,243,74 +characters/luna/clothes/panties/lace_panties_2/0.webp:469,825,210,110 +characters/luna/clothes/panties/lace_panties_2/1.webp:508,871,91,62 +characters/luna/clothes/panties/lace_panties_2/2.webp:493,862,113,25 +characters/luna/clothes/panties/lace_panties_2/outline.webp:468,823,212,114 +characters/luna/clothes/pubes/arrow/0.webp:525,872,39,51 +characters/luna/clothes/pubes/arrow/outline.webp:525,874,34,44 +characters/luna/clothes/pubes/beaver/0.webp:514,853,64,88 +characters/luna/clothes/pubes/beaver/outline.webp:516,857,58,87 +characters/luna/clothes/pubes/stuble/0.webp:524,894,49,32 +characters/luna/clothes/pubes/unshaved/0.webp:526,891,42,41 +characters/luna/clothes/robe/harley_quinn/0.webp:397,453,391,349 +characters/luna/clothes/robe/harley_quinn/1.webp:460,452,172,349 +characters/luna/clothes/robe/harley_quinn/2.webp:463,474,196,315 +characters/luna/clothes/robe/harley_quinn/3.webp:602,579,186,205 +characters/luna/clothes/robe/harley_quinn/4.webp:396,514,161,281 +characters/luna/clothes/robe/harley_quinn/outline.webp:395,451,395,352 +characters/luna/clothes/robe/muggle_jacket/0.webp:360,477,461,314 +characters/luna/clothes/robe/muggle_jacket/1.webp:594,563,26,74 +characters/luna/clothes/robe/muggle_jacket/outline.webp:359,476,463,376 +characters/luna/clothes/robe/robe_school_1/0.webp:436,536,360,664 +characters/luna/clothes/robe/robe_school_1/0_back.webp:0,0,0,0 +characters/luna/clothes/robe/robe_school_1/1.webp:491,479,248,404 +characters/luna/clothes/robe/robe_school_1/1_back.webp:444,670,305,213 +characters/luna/clothes/robe/robe_school_1/mask.webp:0,0,1010,1200 +characters/luna/clothes/robe/robe_school_1/outline.webp:434,476,364,724 +characters/luna/clothes/robe/robe_school_1/outline_back.webp:441,665,311,220 +characters/luna/clothes/robe/robe_school_2/0.webp:436,536,360,664 +characters/luna/clothes/robe/robe_school_2/0_back.webp:0,0,0,0 +characters/luna/clothes/robe/robe_school_2/1.webp:491,479,248,404 +characters/luna/clothes/robe/robe_school_2/1_back.webp:444,670,305,530 +characters/luna/clothes/robe/robe_school_2/extra.webp:411,697,284,503 +characters/luna/clothes/robe/robe_school_2/mask.webp:0,0,1010,1200 +characters/luna/clothes/robe/robe_school_2/outline.webp:434,476,364,724 +characters/luna/clothes/robe/robe_school_2/outline_back.webp:441,665,311,535 +characters/luna/clothes/robe/robe_school_3/0.webp:436,536,360,664 +characters/luna/clothes/robe/robe_school_3/0_back.webp:0,0,0,0 +characters/luna/clothes/robe/robe_school_3/1.webp:491,479,248,404 +characters/luna/clothes/robe/robe_school_3/1_back.webp:444,670,305,530 +characters/luna/clothes/robe/robe_school_3/extra.webp:331,640,452,560 +characters/luna/clothes/robe/robe_school_3/mask.webp:0,0,1010,1200 +characters/luna/clothes/robe/robe_school_3/outline.webp:434,476,364,724 +characters/luna/clothes/robe/robe_school_3/outline_back.webp:441,665,311,535 +characters/luna/clothes/robe/robe_school_4/0.webp:453,613,342,587 +characters/luna/clothes/robe/robe_school_4/0_back.webp:394,675,95,525 +characters/luna/clothes/robe/robe_school_4/1.webp:441,568,309,301 +characters/luna/clothes/robe/robe_school_4/1_back.webp:432,653,324,547 +characters/luna/clothes/robe/robe_school_4/mask.webp:0,0,1010,1200 +characters/luna/clothes/robe/robe_school_4/outline.webp:439,565,359,635 +characters/luna/clothes/robe/robe_school_4/outline_back.webp:392,673,366,527 +characters/luna/clothes/stockings/harley_quinn/0.webp:454,770,242,430 +characters/luna/clothes/stockings/harley_quinn/outline.webp:450,767,251,433 +characters/luna/clothes/stockings/muggle_knee_socks/0.webp:490,1058,157,142 +characters/luna/clothes/stockings/muggle_knee_socks/1.webp:479,1037,161,58 +characters/luna/clothes/stockings/muggle_knee_socks/2.webp:469,1006,193,62 +characters/luna/clothes/stockings/muggle_knee_socks/outline.webp:465,1003,201,197 +characters/luna/clothes/stockings/pantyhose_1/0.webp:451,777,251,423 +characters/luna/clothes/stockings/pantyhose_1/extra.webp:455,778,219,422 +characters/luna/clothes/stockings/pantyhose_1/outline.webp:451,771,251,429 +characters/luna/clothes/stockings/pantyhose_meshed/0.webp:451,773,248,427 +characters/luna/clothes/stockings/pantyhose_meshed/outline.webp:451,771,251,429 +characters/luna/clothes/stockings/police_thigh_highs/0.webp:464,981,191,219 +characters/luna/clothes/stockings/police_thigh_highs/extra.webp:494,982,75,185 +characters/luna/clothes/stockings/police_thigh_highs/outline.webp:460,981,197,219 +characters/luna/clothes/stockings/short_school_1/0.webp:479,1035,170,165 +characters/luna/clothes/stockings/short_school_1/1.webp:488,1064,140,130 +characters/luna/clothes/stockings/short_school_1/extra.webp:479,1035,152,165 +characters/luna/clothes/stockings/short_school_1/outline.webp:471,1012,187,188 +characters/luna/clothes/stockings/short_school_1/skin.webp:475,1024,154,27 +characters/luna/clothes/stockings/short_school_2/0.webp:479,1035,170,165 +characters/luna/clothes/stockings/short_school_2/extra.webp:479,1035,152,165 +characters/luna/clothes/stockings/short_school_2/outline.webp:471,1012,187,188 +characters/luna/clothes/stockings/short_school_2/skin.webp:475,1024,154,27 +characters/luna/clothes/tattoo/baby_oven/0.webp:509,822,64,48 +characters/luna/clothes/tattoo/baby_oven/1.webp:507,836,76,82 +characters/luna/clothes/tattoo/baby_oven/outline.webp:506,835,78,84 +characters/luna/clothes/tattoo/cumdump/0.webp:618,832,72,78 +characters/luna/clothes/tattoo/lab_rat/0.webp:482,593,149,48 +characters/luna/clothes/tattoo/loony/0.webp:522,885,52,32 +characters/luna/clothes/tattoo/measure/0.webp:529,834,35,86 +characters/luna/clothes/tattoo/measure/1.webp:517,816,49,42 +characters/luna/clothes/tattoo/measure/outline.webp:517,815,50,108 +characters/luna/clothes/tattoo/spurt_here/0.webp:517,864,54,53 +characters/luna/clothes/top/casual_sweater/0.webp:331,487,523,395 +characters/luna/clothes/top/casual_sweater/1.webp:483,607,153,173 +characters/luna/clothes/top/casual_sweater/outline.webp:329,486,526,396 +characters/luna/clothes/top/flight_attendant_1/0.webp:446,598,256,366 +characters/luna/clothes/top/flight_attendant_1/1.webp:517,513,223,395 +characters/luna/clothes/top/flight_attendant_1/outline.webp:446,510,297,451 +characters/luna/clothes/top/flight_attendant_1/skin.webp:456,543,272,427 +characters/luna/clothes/top/flight_attendant_2/0.webp:448,597,254,327 +characters/luna/clothes/top/flight_attendant_2/1.webp:517,513,223,395 +characters/luna/clothes/top/flight_attendant_2/outline.webp:448,510,295,414 +characters/luna/clothes/top/flight_attendant_2/skin.webp:455,543,274,386 +characters/luna/clothes/top/harley_quinn/0.webp:449,476,239,459 +characters/luna/clothes/top/harley_quinn/1.webp:547,495,57,124 +characters/luna/clothes/top/harley_quinn/2.webp:471,560,163,323 +characters/luna/clothes/top/harley_quinn/3.webp:498,538,142,355 +characters/luna/clothes/top/harley_quinn/extra.webp:450,520,200,372 +characters/luna/clothes/top/harley_quinn/outline.webp:449,472,244,465 +characters/luna/clothes/top/muggle_top/0.webp:445,591,226,137 +characters/luna/clothes/top/muggle_top/1.webp:495,588,137,59 +characters/luna/clothes/top/muggle_top/outline.webp:446,513,234,217 +characters/luna/clothes/top/nightie_1/0.webp:446,511,268,461 +characters/luna/clothes/top/nightie_1/extra.webp:447,518,267,426 +characters/luna/clothes/top/nightie_1/outline.webp:445,509,271,464 +characters/luna/clothes/top/nightie_2/0.webp:448,510,254,490 +characters/luna/clothes/top/nightie_2/extra.webp:448,532,254,467 +characters/luna/clothes/top/nightie_2/outline.webp:447,507,256,494 +characters/luna/clothes/top/pajama_1/0.webp:449,462,289,424 +characters/luna/clothes/top/pajama_1/1.webp:525,600,34,251 +characters/luna/clothes/top/pajama_1/extra.webp:449,463,289,423 +characters/luna/clothes/top/pajama_1/outline.webp:448,461,299,426 +characters/luna/clothes/top/pajama_1/skin.webp:461,539,246,351 +characters/luna/clothes/top/party_dress/0.webp:423,508,314,504 +characters/luna/clothes/top/party_dress/1.webp:424,653,312,359 +characters/luna/clothes/top/party_dress/outline.webp:422,507,315,507 +characters/luna/clothes/top/party_dress/skin.webp:468,540,259,469 +characters/luna/clothes/top/police_shirt/0.webp:448,481,285,345 +characters/luna/clothes/top/police_shirt/1.webp:513,633,35,134 +characters/luna/clothes/top/police_shirt/2.webp:693,554,42,80 +characters/luna/clothes/top/police_shirt/3.webp:693,557,41,57 +characters/luna/clothes/top/police_shirt/extra.webp:514,634,29,27 +characters/luna/clothes/top/police_shirt/outline.webp:448,480,287,291 +characters/luna/clothes/top/police_shirt/skin.webp:502,531,125,246 +characters/luna/clothes/top/summer_top_1/0.webp:450,512,235,250 +characters/luna/clothes/top/summer_top_1/outline.webp:449,510,237,254 +characters/luna/clothes/top/summer_top_1/skin.webp:500,517,191,251 +characters/luna/clothes/top/summer_top_2/0.webp:452,512,232,159 +characters/luna/clothes/top/summer_top_2/outline.webp:451,511,234,161 +characters/luna/clothes/top/summer_top_2/skin.webp:458,517,233,157 +characters/luna/clothes/top/swimsuit_1/0.webp:448,511,231,423 +characters/luna/clothes/top/swimsuit_1/1.webp:521,511,158,191 +characters/luna/clothes/top/swimsuit_1/extra.webp:447,595,213,338 +characters/luna/clothes/top/swimsuit_1/outline.webp:447,509,233,426 +characters/luna/clothes/top/swimsuit_1/skin.webp:474,525,202,344 +characters/luna/clothes/top/top_school_1/0.webp:501,461,244,205 +characters/luna/clothes/top/top_school_1/0_front.webp:614,461,54,103 +characters/luna/clothes/top/top_school_1/1.webp:447,507,257,348 +characters/luna/clothes/top/top_school_1/2.webp:478,510,265,344 +characters/luna/clothes/top/top_school_1/3.webp:469,503,273,352 +characters/luna/clothes/top/top_school_1/extra.webp:447,527,223,314 +characters/luna/clothes/top/top_school_1/outline.webp:445,460,301,396 +characters/luna/clothes/top/top_school_1/outline_front.webp:616,460,59,105 +characters/luna/clothes/top/top_school_1/skin.webp:648,649,82,200 +characters/luna/clothes/top/top_school_2/0.webp:501,461,244,205 +characters/luna/clothes/top/top_school_2/0_front.webp:614,461,54,103 +characters/luna/clothes/top/top_school_2/1.webp:447,507,257,348 +characters/luna/clothes/top/top_school_2/2.webp:478,510,265,344 +characters/luna/clothes/top/top_school_2/3.webp:469,503,273,352 +characters/luna/clothes/top/top_school_2/extra.webp:447,506,239,335 +characters/luna/clothes/top/top_school_2/outline.webp:445,460,301,396 +characters/luna/clothes/top/top_school_2/outline_front.webp:616,460,59,105 +characters/luna/clothes/top/top_school_2/skin.webp:648,649,82,200 +characters/luna/clothes/top/top_school_3/0.webp:482,474,263,414 +characters/luna/clothes/top/top_school_3/0_front.webp:624,474,42,81 +characters/luna/clothes/top/top_school_3/1.webp:447,507,257,348 +characters/luna/clothes/top/top_school_3/2.webp:478,509,265,345 +characters/luna/clothes/top/top_school_3/3.webp:469,503,273,352 +characters/luna/clothes/top/top_school_3/extra.webp:447,527,223,350 +characters/luna/clothes/top/top_school_3/outline.webp:445,472,301,421 +characters/luna/clothes/top/top_school_3/outline_front.webp:623,472,44,84 +characters/luna/clothes/top/top_school_3/skin.webp:535,535,195,314 +characters/luna/clothes/top/top_school_4/0.webp:449,461,296,332 +characters/luna/clothes/top/top_school_4/0_front.webp:530,461,138,104 +characters/luna/clothes/top/top_school_4/1.webp:492,555,251,220 +characters/luna/clothes/top/top_school_4/2.webp:492,532,250,256 +characters/luna/clothes/top/top_school_4/extra.webp:493,523,193,264 +characters/luna/clothes/top/top_school_4/outline.webp:446,460,300,335 +characters/luna/clothes/top/top_school_4/outline_front.webp:528,460,141,105 +characters/luna/clothes/top/top_school_4/skin.webp:648,648,82,201 +characters/luna/clothes/top/top_school_5/0.webp:449,461,296,332 +characters/luna/clothes/top/top_school_5/0_front.webp:530,461,138,130 +characters/luna/clothes/top/top_school_5/1.webp:664,615,79,40 +characters/luna/clothes/top/top_school_5/2.webp:664,622,78,26 +characters/luna/clothes/top/top_school_5/extra.webp:526,506,160,250 +characters/luna/clothes/top/top_school_5/outline.webp:446,460,300,335 +characters/luna/clothes/top/top_school_5/outline_front.webp:529,460,140,134 +characters/luna/clothes/top/top_school_5/skin.webp:648,648,82,201 +characters/luna/clothes/top/top_school_6/0.webp:449,474,296,319 +characters/luna/clothes/top/top_school_6/0_front.webp:521,474,145,133 +characters/luna/clothes/top/top_school_6/1.webp:664,615,79,40 +characters/luna/clothes/top/top_school_6/2.webp:664,622,78,26 +characters/luna/clothes/top/top_school_6/extra.webp:526,523,160,233 +characters/luna/clothes/top/top_school_6/outline.webp:446,472,300,323 +characters/luna/clothes/top/top_school_6/outline_front.webp:520,472,147,135 +characters/luna/clothes/top/top_school_6/skin.webp:536,535,194,314 +characters/luna/clothes/top/top_school_crop/0.webp:449,474,296,258 +characters/luna/clothes/top/top_school_crop/1.webp:664,615,79,40 +characters/luna/clothes/top/top_school_crop/2.webp:664,622,78,26 +characters/luna/clothes/top/top_school_crop/outline.webp:446,472,300,261 +characters/luna/clothes/top/top_school_crop/skin.webp:490,532,240,317 +characters/luna/clothes/top/top_school_vest/0.webp:447,507,257,348 +characters/luna/clothes/top/top_school_vest/1.webp:478,509,214,345 +characters/luna/clothes/top/top_school_vest/2.webp:469,503,236,352 +characters/luna/clothes/top/top_school_vest/extra.webp:447,527,223,314 +characters/luna/clothes/top/top_school_vest/outline.webp:445,500,262,356 +characters/luna/clothes/top/top_school_vest/skin.webp:534,532,60,140 +characters/luna/cum/body/heavy.webp:458,472,255,320 +characters/luna/cum/body/light.webp:532,510,181,282 +characters/luna/cum/breasts/heavy.webp:448,538,194,169 +characters/luna/cum/breasts/light.webp:532,552,89,149 +characters/luna/cum/crotch/heavy.webp:459,769,181,252 +characters/luna/cum/crotch/light.webp:501,769,73,154 +characters/luna/cum/face/heavy.webp:512,382,126,132 +characters/luna/cum/face/light.webp:597,393,33,72 +characters/luna/cum/hair/heavy.webp:478,247,190,169 +characters/luna/cum/hair/light.webp:496,263,117,100 +characters/luna/cum/legs/heavy.webp:457,860,215,340 +characters/luna/cum/legs/light.webp:510,860,146,191 +characters/luna/cum/pussy/heavy.webp:537,923,21,114 +characters/luna/cum/pussy/light.webp:537,923,20,44 +characters/luna/cum/pussy/squirt.webp:514,921,49,139 +characters/luna/cum/pussy/squirt_post.webp:477,913,91,130 +characters/luna/cum/pussy/wet.webp:545,921,17,24 +characters/luna/emotes/angry.webp:602,319,45,43 +characters/luna/emotes/confused.webp:449,166,129,101 +characters/luna/emotes/happy.webp:472,135,131,127 +characters/luna/emotes/hearts.webp:428,118,175,146 +characters/luna/emotes/shocked.webp:437,140,136,128 +characters/luna/emotes/sweat.webp:597,304,42,67 +characters/luna/face/cheeks/blush.webp:512,377,126,59 +characters/luna/face/eyebrows/angry.webp:514,350,109,23 +characters/luna/face/eyebrows/angry_skin.webp:516,349,111,41 +characters/luna/face/eyebrows/annoyed.webp:515,348,108,19 +characters/luna/face/eyebrows/annoyed_skin.webp:516,349,111,41 +characters/luna/face/eyebrows/base.webp:515,349,108,16 +characters/luna/face/eyebrows/base_skin.webp:516,349,111,41 +characters/luna/face/eyebrows/low.webp:513,356,109,15 +characters/luna/face/eyebrows/low_skin.webp:516,349,111,41 +characters/luna/face/eyebrows/raised.webp:514,341,107,27 +characters/luna/face/eyebrows/raised_skin.webp:516,349,111,41 +characters/luna/face/eyebrows/worried.webp:513,348,111,23 +characters/luna/face/eyebrows/worried_skin.webp:516,349,111,41 +characters/luna/face/eyes/base.webp:517,360,107,36 +characters/luna/face/eyes/base_mask.webp:526,370,88,19 +characters/luna/face/eyes/base_skin.webp:522,378,103,15 +characters/luna/face/eyes/closed.webp:521,361,103,32 +characters/luna/face/eyes/closed_skin.webp:522,378,103,15 +characters/luna/face/eyes/happyCl.webp:517,365,108,23 +characters/luna/face/eyes/happyCl_skin.webp:523,378,98,14 +characters/luna/face/eyes/narrow.webp:519,360,105,36 +characters/luna/face/eyes/narrow_mask.webp:526,371,87,18 +characters/luna/face/eyes/narrow_skin.webp:522,378,103,15 +characters/luna/face/eyes/wide.webp:519,358,107,34 +characters/luna/face/eyes/wide_mask.webp:526,363,92,27 +characters/luna/face/eyes/wide_skin.webp:522,378,103,15 +characters/luna/face/eyes/wink.webp:517,360,107,31 +characters/luna/face/eyes/wink_mask.webp:582,370,32,18 +characters/luna/face/eyes/wink_skin.webp:523,378,102,15 +characters/luna/face/mouth/angry.webp:546,431,45,26 +characters/luna/face/mouth/annoyed.webp:539,432,33,17 +characters/luna/face/mouth/base.webp:546,436,47,17 +characters/luna/face/mouth/clench.webp:543,433,47,28 +characters/luna/face/mouth/crooked_smile.webp:543,432,48,26 +characters/luna/face/mouth/disgust.webp:549,442,48,21 +characters/luna/face/mouth/full.webp:512,397,140,79 +characters/luna/face/mouth/grin.webp:546,430,43,26 +characters/luna/face/mouth/mad.webp:542,431,47,31 +characters/luna/face/mouth/normal.webp:546,436,33,17 +characters/luna/face/mouth/open.webp:550,433,30,30 +characters/luna/face/mouth/open_tongue.webp:550,433,30,30 +characters/luna/face/mouth/open_wide_tongue.webp:543,428,78,58 +characters/luna/face/mouth/scream.webp:543,428,78,58 +characters/luna/face/mouth/shock.webp:537,427,43,42 +characters/luna/face/mouth/silly.webp:541,427,51,36 +characters/luna/face/mouth/smile.webp:541,433,58,31 +characters/luna/face/mouth/soft.webp:548,435,29,24 +characters/luna/face/mouth/upset.webp:546,436,33,17 +characters/luna/face/pupils/L.webp:527,366,73,23 +characters/luna/face/pupils/R.webp:535,367,75,22 +characters/luna/face/pupils/ahegao.webp:535,361,67,24 +characters/luna/face/pupils/dead.webp:532,362,74,23 +characters/luna/face/pupils/down.webp:532,375,72,23 +characters/luna/face/pupils/downL.webp:529,375,72,23 +characters/luna/face/pupils/downR.webp:537,375,74,23 +characters/luna/face/pupils/mid.webp:534,365,74,22 +characters/luna/face/pupils/squint.webp:536,367,64,23 +characters/luna/face/pupils/stare.webp:531,366,74,22 +characters/luna/face/pupils/up.webp:531,363,74,23 +characters/luna/face/tears/crying.webp:528,378,108,50 +characters/luna/face/tears/crying_blink.webp:514,374,122,54 +characters/luna/face/tears/mascara.webp:524,376,116,112 +characters/luna/face/tears/messy.webp:524,380,110,94 +characters/luna/face/tears/soft.webp:524,374,94,26 +characters/luna/poses/masturbate/body/armleft/up.webp:0,0,0,0 +characters/luna/poses/masturbate/body/armright/up.webp:0,0,0,0 +characters/luna/poses/masturbate/body/base/front.webp:324,290,568,910 +characters/luna/poses/masturbate/body/breasts/normal.webp:0,0,0,0 +characters/luna/poses/masturbate/clothes/bottom/school_skirt_2/0.webp:0,0,0,0 +characters/luna/poses/masturbate/clothes/bottom/school_skirt_2/1.webp:0,0,0,0 +characters/luna/poses/masturbate/clothes/bottom/school_skirt_2/outline.webp:424,769,298,217 +characters/luna/poses/masturbate/clothes/hair/base/0.webp:480,244,255,257 +characters/luna/poses/masturbate/clothes/hair/base/0_back.webp:459,357,301,445 +characters/luna/poses/masturbate/clothes/hair/base/1.webp:488,243,246,257 +characters/luna/poses/masturbate/clothes/hair/base/1_back.webp:461,356,299,445 +characters/luna/poses/masturbate/clothes/hair/base/2.webp:705,425,18,19 +characters/luna/poses/masturbate/clothes/hair/base/outline.webp:474,238,265,264 +characters/luna/poses/masturbate/clothes/hair/base/outline_back.webp:454,351,315,455 +characters/luna/poses/masturbate/clothes/hair/base/skin.webp:516,305,114,95 +characters/luna/poses/masturbate/clothes/hair/harley_quinn/0.webp:489,262,262,293 +characters/luna/poses/masturbate/clothes/hair/harley_quinn/1.webp:494,265,253,289 +characters/luna/poses/masturbate/clothes/hair/harley_quinn/2.webp:677,288,66,260 +characters/luna/poses/masturbate/clothes/hair/harley_quinn/3.webp:515,431,55,91 +characters/luna/poses/masturbate/clothes/hair/harley_quinn/4.webp:665,296,14,30 +characters/luna/poses/masturbate/clothes/hair/harley_quinn/extra.webp:508,261,239,252 +characters/luna/poses/masturbate/clothes/hair/harley_quinn/outline.webp:478,260,274,296 +characters/luna/poses/masturbate/clothes/hair/harley_quinn/skin.webp:528,318,99,77 +characters/luna/poses/masturbate/clothes/hair/wand/0.webp:480,244,360,260 +characters/luna/poses/masturbate/clothes/hair/wand/0_back.webp:459,357,301,445 +characters/luna/poses/masturbate/clothes/hair/wand/1.webp:488,243,352,260 +characters/luna/poses/masturbate/clothes/hair/wand/1_back.webp:461,356,299,445 +characters/luna/poses/masturbate/clothes/hair/wand/2.webp:705,425,18,19 +characters/luna/poses/masturbate/clothes/hair/wand/extra.webp:606,325,210,120 +characters/luna/poses/masturbate/clothes/hair/wand/outline.webp:474,238,368,272 +characters/luna/poses/masturbate/clothes/hair/wand/outline_back.webp:454,351,315,455 +characters/luna/poses/masturbate/clothes/hair/wand/skin.webp:516,305,114,95 +characters/luna/poses/masturbate/clothes/stockings/short_school_1/0.webp:479,1035,170,165 +characters/luna/poses/masturbate/clothes/stockings/short_school_1/1.webp:488,1064,140,130 +characters/luna/poses/masturbate/clothes/stockings/short_school_1/extra.webp:479,1035,152,165 +characters/luna/poses/masturbate/clothes/stockings/short_school_1/outline.webp:471,1012,187,188 +characters/luna/poses/masturbate/clothes/stockings/short_school_1/skin.webp:475,1024,154,27 +characters/luna/poses/masturbate/clothes/top/top_school_1/0.webp:0,0,0,0 +characters/luna/poses/masturbate/clothes/top/top_school_1/1.webp:0,0,0,0 +characters/luna/poses/masturbate/clothes/top/top_school_1/2.webp:0,0,0,0 +characters/luna/poses/masturbate/clothes/top/top_school_1/3.webp:0,0,0,0 +characters/luna/poses/masturbate/clothes/top/top_school_1/extra.webp:0,0,0,0 +characters/luna/poses/masturbate/clothes/top/top_school_1/outline.webp:388,462,346,490 +characters/luna/poses/masturbate/cum/pussy/squirt.webp:472,930,89,130 +characters/luna/poses/masturbate/cum/pussy/squirt_post.webp:477,930,91,113 +characters/luna/poses/masturbate/cum/pussy/wet.webp:538,939,20,17 +characters/luna/poses/masturbate/face/cheeks/blush.webp:512,377,126,59 +characters/luna/poses/masturbate/face/eyebrows/angry.webp:514,350,109,23 +characters/luna/poses/masturbate/face/eyebrows/angry_skin.webp:516,349,111,41 +characters/luna/poses/masturbate/face/eyebrows/annoyed.webp:515,348,108,19 +characters/luna/poses/masturbate/face/eyebrows/annoyed_skin.webp:516,349,111,41 +characters/luna/poses/masturbate/face/eyebrows/base.webp:515,349,108,16 +characters/luna/poses/masturbate/face/eyebrows/base_skin.webp:516,349,111,41 +characters/luna/poses/masturbate/face/eyebrows/low.webp:513,356,109,15 +characters/luna/poses/masturbate/face/eyebrows/low_skin.webp:516,349,111,41 +characters/luna/poses/masturbate/face/eyebrows/raised.webp:514,341,107,27 +characters/luna/poses/masturbate/face/eyebrows/raised_skin.webp:516,349,111,41 +characters/luna/poses/masturbate/face/eyebrows/worried.webp:513,348,111,23 +characters/luna/poses/masturbate/face/eyebrows/worried_skin.webp:516,349,111,41 +characters/luna/poses/masturbate/face/eyes/base.webp:517,360,107,36 +characters/luna/poses/masturbate/face/eyes/base_mask.webp:526,370,88,19 +characters/luna/poses/masturbate/face/eyes/base_skin.webp:522,378,103,15 +characters/luna/poses/masturbate/face/eyes/closed.webp:521,361,103,32 +characters/luna/poses/masturbate/face/eyes/closed_skin.webp:522,378,103,15 +characters/luna/poses/masturbate/face/eyes/happyCl.webp:517,365,108,23 +characters/luna/poses/masturbate/face/eyes/happyCl_skin.webp:523,378,98,14 +characters/luna/poses/masturbate/face/eyes/narrow.webp:519,360,105,36 +characters/luna/poses/masturbate/face/eyes/narrow_mask.webp:526,371,87,18 +characters/luna/poses/masturbate/face/eyes/narrow_skin.webp:522,378,103,15 +characters/luna/poses/masturbate/face/eyes/wide.webp:519,358,107,34 +characters/luna/poses/masturbate/face/eyes/wide_mask.webp:526,363,92,27 +characters/luna/poses/masturbate/face/eyes/wide_skin.webp:522,378,103,15 +characters/luna/poses/masturbate/face/eyes/wink.webp:517,360,107,31 +characters/luna/poses/masturbate/face/eyes/wink_mask.webp:582,370,32,18 +characters/luna/poses/masturbate/face/eyes/wink_skin.webp:523,378,102,15 +characters/luna/poses/masturbate/face/mouth/angry.webp:546,431,45,26 +characters/luna/poses/masturbate/face/mouth/annoyed.webp:539,432,33,17 +characters/luna/poses/masturbate/face/mouth/base.webp:546,436,47,17 +characters/luna/poses/masturbate/face/mouth/clench.webp:543,433,47,28 +characters/luna/poses/masturbate/face/mouth/crooked_smile.webp:543,432,48,26 +characters/luna/poses/masturbate/face/mouth/disgust.webp:549,442,48,21 +characters/luna/poses/masturbate/face/mouth/full.webp:512,397,140,79 +characters/luna/poses/masturbate/face/mouth/grin.webp:546,430,43,26 +characters/luna/poses/masturbate/face/mouth/mad.webp:542,431,47,31 +characters/luna/poses/masturbate/face/mouth/normal.webp:546,436,33,17 +characters/luna/poses/masturbate/face/mouth/open.webp:550,433,30,30 +characters/luna/poses/masturbate/face/mouth/open_tongue.webp:550,433,30,30 +characters/luna/poses/masturbate/face/mouth/open_wide_tongue.webp:543,428,78,58 +characters/luna/poses/masturbate/face/mouth/scream.webp:543,428,78,58 +characters/luna/poses/masturbate/face/mouth/shock.webp:537,427,43,42 +characters/luna/poses/masturbate/face/mouth/silly.webp:541,427,51,36 +characters/luna/poses/masturbate/face/mouth/smile.webp:541,433,58,31 +characters/luna/poses/masturbate/face/mouth/soft.webp:548,435,29,24 +characters/luna/poses/masturbate/face/mouth/upset.webp:546,436,33,17 +characters/luna/poses/masturbate/face/pupils/L.webp:527,366,73,23 +characters/luna/poses/masturbate/face/pupils/R.webp:535,367,75,22 +characters/luna/poses/masturbate/face/pupils/ahegao.webp:535,361,67,24 +characters/luna/poses/masturbate/face/pupils/dead.webp:532,362,74,23 +characters/luna/poses/masturbate/face/pupils/down.webp:532,375,72,23 +characters/luna/poses/masturbate/face/pupils/downL.webp:529,375,72,23 +characters/luna/poses/masturbate/face/pupils/downR.webp:537,375,74,23 +characters/luna/poses/masturbate/face/pupils/mid.webp:534,365,74,22 +characters/luna/poses/masturbate/face/pupils/squint.webp:536,367,64,23 +characters/luna/poses/masturbate/face/pupils/stare.webp:531,366,74,22 +characters/luna/poses/masturbate/face/pupils/up.webp:531,363,74,23 +characters/luna/poses/masturbate/face/tears/crying.webp:528,378,108,50 +characters/luna/poses/masturbate/face/tears/crying_blink.webp:514,374,122,54 +characters/luna/poses/masturbate/face/tears/mascara.webp:524,376,116,112 +characters/luna/poses/masturbate/face/tears/messy.webp:524,380,110,94 +characters/luna/poses/masturbate/face/tears/soft.webp:524,374,94,26 +characters/luna/poses/masturbate/loadable.webp:0,0,1,1 +characters/misc/dumbledore/dum_1.webp:0,6,454,504 +characters/misc/dumbledore/dum_2.webp:0,6,454,504 +characters/misc/dumbledore/dum_3.webp:0,6,454,504 +characters/misc/dumbledore/dum_4.webp:0,6,454,504 +characters/misc/dumbledore/dum_5.webp:0,6,454,504 +characters/misc/elf.webp:0,7,297,391 +characters/misc/hat.webp:0,0,600,358 +characters/misc/mafkin.webp:0,0,454,470 +characters/misc/narrator.webp:16,696,454,504 +characters/misc/santa/santa_1.webp:2,0,411,510 +characters/misc/santa/santa_2.webp:2,0,411,510 +characters/misc/santa/santa_3.webp:2,0,411,510 +characters/misc/santa/santa_4.webp:2,1,376,509 +characters/misc/santa/santa_5.webp:2,1,376,509 +characters/misc/santa/santa_6.webp:2,1,376,509 +characters/misc/santa/santa_7.webp:4,1,373,509 +characters/misc/santa/santa_chibi.webp:37,113,205,377 +characters/misc/weasley_twins/base_01.webp:113,570,781,630 +characters/misc/weasley_twins/fred_01.webp:25,67,412,447 +characters/misc/weasley_twins/george_01.webp:13,72,377,442 +characters/snape/chibis/desk_working/01.webp:0,0,554,426 +characters/snape/chibis/desk_working/02.webp:0,0,554,426 +characters/snape/chibis/desk_working/03.webp:0,0,554,426 +characters/snape/chibis/desk_working/idle.webp:0,0,554,426 +characters/snape/chibis/desk_working/idle2.webp:0,0,554,426 +characters/snape/chibis/drinking/01.webp:203,68,336,455 +characters/snape/chibis/drinking/02.webp:202,66,337,457 +characters/snape/chibis/drinking/03.webp:203,66,336,457 +characters/snape/chibis/drinking/04.webp:187,66,352,457 +characters/snape/chibis/ghost_1/01.webp:22,78,252,421 +characters/snape/chibis/ghost_1/02.webp:22,82,252,418 +characters/snape/chibis/ghost_1/03.webp:22,82,252,418 +characters/snape/chibis/ghost_2/01.webp:22,78,252,421 +characters/snape/chibis/ghost_2/02.webp:22,82,252,418 +characters/snape/chibis/ghost_2/03.webp:22,82,252,418 +characters/snape/chibis/ghost_3/01.webp:22,78,252,421 +characters/snape/chibis/ghost_3/02.webp:22,82,252,418 +characters/snape/chibis/ghost_3/03.webp:22,82,252,418 +characters/snape/chibis/handshake/hand_00.webp:114,56,478,453 +characters/snape/chibis/handshake/hand_01.webp:116,56,476,453 +characters/snape/chibis/jizz_covered/jizz.webp:22,82,252,418 +characters/snape/chibis/masturbating/01.webp:10,34,280,463 +characters/snape/chibis/masturbating/02.webp:10,34,280,463 +characters/snape/chibis/masturbating/03.webp:10,34,280,463 +characters/snape/chibis/masturbating/04.webp:10,34,280,463 +characters/snape/chibis/masturbating/sperm_01.webp:502,314,22,25 +characters/snape/chibis/masturbating/sperm_02.webp:479,271,45,67 +characters/snape/chibis/masturbating/sperm_03.webp:458,239,65,99 +characters/snape/chibis/masturbating/sperm_04.webp:453,231,70,106 +characters/snape/chibis/masturbating/sperm_05.webp:445,223,79,115 +characters/snape/chibis/masturbating/sperm_06.webp:460,244,65,95 +characters/snape/chibis/masturbating/sperm_07.webp:460,244,65,96 +characters/snape/chibis/masturbating/sperm_08.webp:449,244,80,100 +characters/snape/chibis/masturbating/sperm_09.webp:441,244,91,100 +characters/snape/chibis/masturbating/sperm_10.webp:438,244,94,110 +characters/snape/chibis/masturbating/sperm_11.webp:442,244,90,109 +characters/snape/chibis/masturbating/sperm_12.webp:440,244,92,116 +characters/snape/chibis/masturbating/sperm_13.webp:440,244,92,116 +characters/snape/chibis/masturbating/sperm_14.webp:440,244,92,104 +characters/snape/chibis/masturbating/sperm_15.webp:440,244,92,104 +characters/snape/chibis/masturbating/sperm_16.webp:440,244,92,104 +characters/snape/chibis/masturbating/sperm_17.webp:440,244,92,104 +characters/snape/chibis/masturbating/sperm_18.webp:440,244,92,104 +characters/snape/chibis/shocked/01.webp:22,82,252,418 +characters/snape/chibis/snape_01.webp:22,78,252,421 +characters/snape/chibis/snape_02.webp:22,82,252,418 +characters/snape/chibis/snape_03.webp:22,82,252,418 +characters/snape/chibis/snape_stand.webp:22,82,252,418 +characters/snape/chibis/wand_cast/wand_attack.webp:79,126,371,366 +characters/snape/chibis/wand_cast/wand_cast_ground.webp:147,103,262,395 +characters/snape/chibis/wand_cast/wand_cast_mid.webp:121,126,329,366 +characters/snape/chibis/wand_cast/wand_cast_normal.webp:79,126,371,366 +characters/snape/chibis/wand_cast/wand_hurt.webp:121,126,329,366 +characters/snape/chibis/wand_defend/wand_defend_1.webp:83,89,358,403 +characters/snape/chibis/wand_defend/wand_defend_2.webp:83,87,358,404 +characters/snape/chibis/wand_defend/wand_defend_3.webp:83,87,358,402 +characters/snape/chibis/wand_idle/wand_idle_1.webp:107,103,302,395 +characters/snape/chibis/wand_idle/wand_idle_2.webp:110,101,299,394 +characters/snape/chibis/wand_idle/wand_idle_3.webp:121,101,288,394 +characters/snape/main/b01.webp:58,28,545,772 +characters/snape/main/b01_01.webp:229,19,332,781 +characters/snape/main/b02.webp:3,4,600,796 +characters/snape/main/picture_frame.webp:402,402,201,167 +characters/snape/main/snape_01.webp:16,34,966,1166 +characters/snape/main/snape_02.webp:16,34,966,1166 +characters/snape/main/snape_03.webp:16,34,966,1166 +characters/snape/main/snape_04.webp:16,34,966,1166 +characters/snape/main/snape_05.webp:16,34,966,1166 +characters/snape/main/snape_06.webp:16,34,966,1166 +characters/snape/main/snape_07.webp:16,34,966,1166 +characters/snape/main/snape_08.webp:16,34,966,1166 +characters/snape/main/snape_09.webp:16,34,966,1166 +characters/snape/main/snape_10.webp:16,34,966,1166 +characters/snape/main/snape_11.webp:16,34,966,1166 +characters/snape/main/snape_12.webp:16,34,966,1166 +characters/snape/main/snape_13.webp:16,34,966,1166 +characters/snape/main/snape_14.webp:16,34,966,1166 +characters/snape/main/snape_15.webp:16,34,966,1166 +characters/snape/main/snape_16.webp:16,34,966,1166 +characters/snape/main/snape_17.webp:16,34,966,1166 +characters/snape/main/snape_18.webp:16,34,966,1166 +characters/snape/main/snape_19.webp:16,34,966,1166 +characters/snape/main/snape_20.webp:16,34,966,1166 +characters/snape/main/snape_21.webp:16,34,966,1166 +characters/snape/main/snape_22.webp:16,34,966,1166 +characters/snape/main/snape_23.webp:16,34,966,1166 +characters/snape/main/snape_24.webp:16,34,966,1166 +characters/snape/main/snape_25.webp:16,34,966,1166 +characters/snape/main/snape_26.webp:16,34,966,1166 +characters/snape/main/snape_27.webp:16,34,966,1166 +characters/snape/main/snape_28.webp:16,34,966,1166 +characters/snape/main/snape_29.webp:16,34,966,1166 +characters/snape/main/snape_30.webp:16,34,966,1166 +characters/snape/main/snape_31.webp:16,34,966,1166 +characters/snape/main/snape_32.webp:16,34,966,1166 +characters/snape/main/snape_33.webp:16,34,966,1166 +characters/snape/main/snape_34.webp:16,34,966,1166 +characters/snape/main/snape_35.webp:16,34,966,1166 +characters/snape/main/snape_36.webp:16,34,966,1166 +characters/snape/main/snape_37.webp:16,34,966,1166 +characters/snape/main/snape_38.webp:16,34,966,1166 +characters/snape/main/snape_39.webp:16,34,966,1166 +characters/snape/main/snape_40.webp:16,34,966,1166 +characters/snape/main/snape_41.webp:16,34,966,1166 +characters/snape/main/snape_42.webp:16,34,966,1166 +characters/snape/main/snape_43.webp:16,34,966,1166 +characters/snape/main/snape_44.webp:16,34,966,1166 +characters/snape/main/snape_45.webp:16,34,966,1166 +characters/snape/main/snape_46.webp:16,34,966,1166 +characters/snape/main/snape_47.webp:16,34,966,1166 +characters/snape/main/snape_clown.webp:168,15,818,1185 +characters/snape/main/snape_cum.webp:16,23,966,1177 +characters/snape/main/wand.webp:98,13,885,1173 +characters/susan/body/armleft/behind.webp:634,512,102,328 +characters/susan/body/armright/behind.webp:456,516,82,89 +characters/susan/body/base/front.webp:444,310,290,890 +characters/susan/body/base/pubes_1.webp:522,902,70,54 +characters/susan/body/breasts/normal.webp:403,571,297,241 +characters/susan/body/breasts/normal_tight.webp:416,571,284,241 +characters/susan/chibis/sb_cloth_robe_h.webp:40,117,119,212 +characters/susan/chibis/sb_cloth_shirt_h.webp:47,117,87,100 +characters/susan/chibis/sb_cloth_skirt.webp:52,200,82,66 +characters/susan/chibis/sb_stand_blink.webp:42,16,109,327 +characters/susan/chibis/sb_walk_01.webp:42,16,109,327 +characters/susan/chibis/sb_walk_01_shoes.webp:69,292,59,51 +characters/susan/chibis/sb_walk_02.webp:42,17,109,332 +characters/susan/chibis/sb_walk_02_shoes.webp:64,291,53,58 +characters/susan/chibis/sb_walk_03.webp:42,17,109,329 +characters/susan/chibis/sb_walk_03_shoes.webp:54,297,81,49 +characters/susan/chibis/sb_walk_04.webp:42,17,109,328 +characters/susan/chibis/sb_walk_04_shoes.webp:61,292,72,53 +characters/susan/chibis/sb_walk_05.webp:42,17,109,326 +characters/susan/chibis/sb_walk_05_shoes.webp:47,296,98,47 +characters/susan/clothes/bottom/school_skirt_1/0.webp:412,767,359,393 +characters/susan/clothes/bottom/school_skirt_1/1.webp:598,798,17,24 +characters/susan/clothes/bottom/school_skirt_1/outline.webp:410,767,362,397 +characters/susan/clothes/bra/base/0.webp:0,0,1,1 +characters/susan/clothes/bra/base/mask.webp:0,0,1010,1200 +characters/susan/clothes/bra/base/outline.webp:417,515,281,248 +characters/susan/clothes/bra/base/skin.webp:416,571,284,241 +characters/susan/clothes/bra/chain/0.webp:0,0,1,1 +characters/susan/clothes/bra/chain/outline.webp:394,655,235,157 +characters/susan/clothes/bra/lace/0.webp:0,0,1,1 +characters/susan/clothes/bra/lace/mask.webp:0,0,1010,1200 +characters/susan/clothes/bra/lace/outline.webp:412,484,288,276 +characters/susan/clothes/bra/lace/skin.webp:416,571,284,241 +characters/susan/clothes/hair/base/0.webp:492,264,216,266 +characters/susan/clothes/hair/base/outline.webp:490,264,222,268 +characters/susan/clothes/neckwear/choker/0.webp:0,0,1,1 +characters/susan/clothes/neckwear/choker/outline.webp:568,464,80,44 +characters/susan/clothes/panties/base/0.webp:0,0,1,1 +characters/susan/clothes/panties/base/outline.webp:446,661,357,321 +characters/susan/clothes/panties/lace/0.webp:0,0,1,1 +characters/susan/clothes/panties/lace/outline.webp:448,884,270,172 +characters/susan/clothes/stockings/base/0.webp:0,0,1,1 +characters/susan/clothes/stockings/base/outline.webp:490,1132,204,68 +characters/susan/clothes/stockings/lace/0.webp:0,0,1,1 +characters/susan/clothes/stockings/lace/outline.webp:450,858,286,342 +characters/susan/clothes/stockings/lace2/0.webp:0,0,1,1 +characters/susan/clothes/stockings/lace2/outline.webp:452,868,264,332 +characters/susan/clothes/top/ball/0.webp:0,0,1,1 +characters/susan/clothes/top/ball/mask.webp:0,0,1010,1200 +characters/susan/clothes/top/ball/outline.webp:406,494,370,516 +characters/susan/clothes/top/ball/skin.webp:416,571,284,241 +characters/susan/clothes/top/heart/0.webp:0,0,1,1 +characters/susan/clothes/top/heart/mask.webp:0,0,1010,1200 +characters/susan/clothes/top/heart/outline.webp:408,486,336,536 +characters/susan/clothes/top/heart/skin.webp:416,571,284,241 +characters/susan/clothes/top/school_top_1/0.webp:0,0,1,1 +characters/susan/clothes/top/school_top_1/mask.webp:0,0,1010,1200 +characters/susan/clothes/top/school_top_1/outline.webp:424,482,357,456 +characters/susan/clothes/top/school_top_1/skin.webp:416,571,284,241 +characters/susan/clothes/top/school_top_2/0.webp:0,0,1,1 +characters/susan/clothes/top/school_top_2/mask.webp:0,0,1010,1200 +characters/susan/clothes/top/school_top_2/outline.webp:424,482,357,456 +characters/susan/clothes/top/school_top_2/skin.webp:416,571,284,241 +characters/susan/clothes/top/school_top_3/0.webp:0,0,1,1 +characters/susan/clothes/top/school_top_3/mask.webp:0,0,1010,1200 +characters/susan/clothes/top/school_top_3/outline.webp:416,482,318,456 +characters/susan/clothes/top/school_top_3/skin.webp:416,571,284,241 +characters/susan/clothes/top/school_top_4/0.webp:0,0,1,1 +characters/susan/clothes/top/school_top_4/mask.webp:0,0,1010,1200 +characters/susan/clothes/top/school_top_4/outline.webp:416,479,318,459 +characters/susan/clothes/top/school_top_4/skin.webp:416,571,284,241 +characters/susan/clothes/top/school_top_5/0.webp:0,0,1,1 +characters/susan/clothes/top/school_top_5/mask.webp:0,0,1010,1200 +characters/susan/clothes/top/school_top_5/outline.webp:403,479,331,274 +characters/susan/clothes/top/school_top_5/skin.webp:416,571,284,241 +characters/susan/clothes/top/sling/0.webp:0,0,1,1 +characters/susan/clothes/top/sling/mask.webp:0,0,1010,1200 +characters/susan/clothes/top/sling/outline.webp:414,492,282,492 +characters/susan/clothes/top/sling/skin.webp:416,571,284,241 +characters/susan/clothes/top/sling2/0.webp:0,0,1,1 +characters/susan/clothes/top/sling2/mask.webp:0,0,1010,1200 +characters/susan/clothes/top/sling2/outline.webp:406,470,264,526 +characters/susan/clothes/top/sling2/skin.webp:416,571,284,241 +characters/susan/cum/body/heavy.webp:509,438,134,417 +characters/susan/cum/body/heavy_skin.webp:514,472,114,384 +characters/susan/cum/body/light.webp:509,552,119,271 +characters/susan/cum/body/light_skin.webp:522,553,106,230 +characters/susan/cum/breasts/heavy.webp:467,611,178,141 +characters/susan/cum/breasts/heavy_skin.webp:489,611,157,143 +characters/susan/cum/breasts/light.webp:455,593,202,126 +characters/susan/cum/breasts/light_skin.webp:462,593,195,127 +characters/susan/cum/crotch/heavy.webp:440,778,215,321 +characters/susan/cum/crotch/heavy_skin.webp:442,779,214,316 +characters/susan/cum/crotch/light.webp:440,780,191,314 +characters/susan/cum/crotch/light_skin.webp:442,780,190,315 +characters/susan/cum/face/heavy.webp:497,388,100,134 +characters/susan/cum/face/heavy_skin.webp:498,390,83,126 +characters/susan/cum/face/light.webp:500,403,102,122 +characters/susan/cum/face/light_skin.webp:502,403,84,119 +characters/susan/cum/hair/heavy.webp:489,265,211,169 +characters/susan/cum/hair/light.webp:488,356,123,72 +characters/susan/cum/legs/heavy.webp:632,1044,90,135 +characters/susan/cum/legs/heavy_skin.webp:634,1044,89,136 +characters/susan/cum/legs/light.webp:632,1044,22,102 +characters/susan/cum/legs/light_skin.webp:634,1044,22,103 +characters/susan/cum/pussy/heavy.webp:539,947,32,98 +characters/susan/cum/pussy/light.webp:541,949,29,55 +characters/susan/emotes/angry.webp:578,369,45,43 +characters/susan/emotes/confused.webp:405,254,127,99 +characters/susan/emotes/happy.webp:419,221,123,146 +characters/susan/emotes/hearts.webp:373,206,175,146 +characters/susan/emotes/shocked.webp:399,223,136,128 +characters/susan/emotes/sweat.webp:574,350,42,67 +characters/susan/face/cheeks/blush.webp:514,394,116,42 +characters/susan/face/eyebrows/angry.webp:510,370,110,24 +characters/susan/face/eyebrows/base.webp:508,366,102,21 +characters/susan/face/eyebrows/worried.webp:504,368,110,18 +characters/susan/face/eyes/base.webp:510,372,114,46 +characters/susan/face/eyes/base_mask.webp:521,391,90,19 +characters/susan/face/eyes/closed.webp:510,372,114,46 +characters/susan/face/eyes/eager.webp:510,372,115,46 +characters/susan/face/eyes/eager_mask.webp:522,391,90,16 +characters/susan/face/eyes/happyCl.webp:509,372,117,46 +characters/susan/face/eyes/narrow.webp:510,372,114,46 +characters/susan/face/eyes/narrow_mask.webp:523,395,91,12 +characters/susan/face/eyes/suspicious.webp:509,372,117,46 +characters/susan/face/eyes/suspicious_mask.webp:522,396,88,14 +characters/susan/face/eyes/wide.webp:510,372,114,46 +characters/susan/face/eyes/wide_mask.webp:523,388,90,24 +characters/susan/face/mouth/base.webp:540,448,52,24 +characters/susan/face/mouth/grin.webp:542,448,54,26 +characters/susan/face/mouth/happy.webp:544,448,48,26 +characters/susan/face/mouth/open.webp:546,446,40,30 +characters/susan/face/mouth/open_tongue.webp:519,427,106,74 +characters/susan/face/mouth/scream.webp:520,428,106,74 +characters/susan/face/mouth/upset.webp:544,450,42,24 +characters/susan/face/pupils/L.webp:522,390,82,20 +characters/susan/face/pupils/R.webp:532,390,82,20 +characters/susan/face/pupils/down.webp:526,396,82,20 +characters/susan/face/pupils/mid.webp:530,388,82,20 +characters/susan/face/pupils/up.webp:524,386,82,20 +characters/susan/face/pupils/wide.webp:522,378,84,32 +characters/susan/face/tears/drool.webp:1164,987,34,49 +characters/susan/face/tears/mascara.webp:1080,840,204,51 +characters/susan/face/tears/soft.webp:1083,834,191,13 +characters/tonks/body/armleft/on_hips.webp:620,538,226,389 +characters/tonks/body/armleft/on_hips_fix.webp:620,837,107,90 +characters/tonks/body/armright/on_hips.webp:395,530,163,362 +characters/tonks/body/armright/on_hips_fix.webp:432,826,43,66 +characters/tonks/body/armright/up.webp:351,376,225,591 +characters/tonks/body/base/front.webp:432,282,350,918 +characters/tonks/body/breasts/normal.webp:430,571,275,147 +characters/tonks/body/breasts/normal_tight.webp:463,564,227,102 +characters/tonks/body/breasts/ribbon.webp:463,564,228,159 +characters/tonks/chibis/bj_desk/01.webp:93,54,366,456 +characters/tonks/chibis/bj_desk/02.webp:93,54,366,456 +characters/tonks/chibis/bj_desk/shocked_01.webp:93,54,445,456 +characters/tonks/chibis/bj_desk/shocked_02.webp:93,54,445,456 +characters/tonks/chibis/drinking/chair.webp:234,117,303,443 +characters/tonks/chibis/drinking/nt_choker.webp:326,271,24,16 +characters/tonks/chibis/drinking/nt_head_01.webp:272,179,119,110 +characters/tonks/chibis/drinking/nt_head_02.webp:272,179,119,110 +characters/tonks/chibis/drinking/nt_sit_01.webp:210,269,169,200 +characters/tonks/chibis/drinking/nt_sit_01_shoes.webp:212,395,74,74 +characters/tonks/chibis/drinking/nt_sit_01_trousers.webp:242,333,104,136 +characters/tonks/chibis/drinking/nt_sit_02.webp:210,269,169,200 +characters/tonks/chibis/drinking/nt_sit_02_shoes.webp:210,393,76,76 +characters/tonks/chibis/drinking/nt_sit_02_trousers.webp:241,333,105,136 +characters/tonks/chibis/drinking/nt_sit_03.webp:208,269,171,200 +characters/tonks/chibis/drinking/nt_sit_03_shoes.webp:209,389,77,80 +characters/tonks/chibis/drinking/nt_sit_03_trousers.webp:242,333,104,136 +characters/tonks/chibis/drinking/nt_sit_04.webp:206,269,173,200 +characters/tonks/chibis/drinking/nt_sit_04_shoes.webp:207,386,79,83 +characters/tonks/chibis/drinking/nt_sit_04_trousers.webp:241,333,105,136 +characters/tonks/chibis/drinking/nt_top.webp:293,283,65,86 +characters/tonks/chibis/elf/blink.webp:32,9,151,334 +characters/tonks/chibis/elf/default.webp:32,9,151,334 +characters/tonks/chibis/nt_choker.webp:81,124,29,15 +characters/tonks/chibis/nt_gloves.webp:44,221,100,31 +characters/tonks/chibis/nt_robe.webp:46,121,101,205 +characters/tonks/chibis/nt_robe_fix.webp:64,196,68,115 +characters/tonks/chibis/nt_shocked.webp:63,100,26,21 +characters/tonks/chibis/nt_shoes.webp:68,301,62,44 +characters/tonks/chibis/nt_stand_blink.webp:30,25,119,320 +characters/tonks/chibis/nt_top.webp:55,131,64,97 +characters/tonks/chibis/nt_trousers.webp:65,200,62,131 +characters/tonks/chibis/nt_walk_01.webp:30,25,119,320 +characters/tonks/chibis/nt_walk_01_shoes.webp:68,301,62,44 +characters/tonks/chibis/nt_walk_01_trousers.webp:65,200,62,131 +characters/tonks/chibis/nt_walk_02.webp:30,25,119,326 +characters/tonks/chibis/nt_walk_02_shoes.webp:63,297,56,54 +characters/tonks/chibis/nt_walk_02_trousers.webp:66,200,56,137 +characters/tonks/chibis/nt_walk_03.webp:30,25,119,323 +characters/tonks/chibis/nt_walk_03_shoes.webp:53,302,83,46 +characters/tonks/chibis/nt_walk_03_trousers.webp:66,200,61,133 +characters/tonks/chibis/nt_walk_04.webp:30,25,119,322 +characters/tonks/chibis/nt_walk_04_shoes.webp:59,269,75,78 +characters/tonks/chibis/nt_walk_04_trousers.webp:61,200,69,134 +characters/tonks/chibis/nt_walk_05.webp:30,25,119,320 +characters/tonks/chibis/nt_walk_05_shoes.webp:46,302,101,43 +characters/tonks/chibis/nt_walk_05_trousers.webp:59,200,82,129 +characters/tonks/clothes/accessory/bells_1/0.webp:409,948,322,72 +characters/tonks/clothes/accessory/bells_1/extra.webp:409,948,322,72 +characters/tonks/clothes/accessory/bells_1/outline.webp:409,947,323,74 +characters/tonks/clothes/accessory/bells_1/skin.webp:441,970,248,52 +characters/tonks/clothes/accessory/belt_1/0.webp:475,777,181,66 +characters/tonks/clothes/accessory/belt_1/1.webp:516,787,48,56 +characters/tonks/clothes/accessory/belt_1/extra.webp:484,786,150,56 +characters/tonks/clothes/accessory/belt_1/outline.webp:475,775,184,70 +characters/tonks/clothes/accessory/flower/0.webp:633,542,73,65 +characters/tonks/clothes/accessory/flower/extra.webp:634,542,72,64 +characters/tonks/clothes/accessory/flower/outline.webp:632,541,75,67 +characters/tonks/clothes/accessory/neck_towel/0.webp:433,497,265,269 +characters/tonks/clothes/accessory/neck_towel/outline.webp:431,494,269,274 +characters/tonks/clothes/accessory/police_badge/0.webp:609,609,56,52 +characters/tonks/clothes/accessory/police_badge/outline.webp:608,608,58,54 +characters/tonks/clothes/accessory/succubus_tail/0.webp:694,871,142,163 +characters/tonks/clothes/accessory/succubus_tail/1.webp:782,872,55,157 +characters/tonks/clothes/accessory/succubus_tail/outline.webp:691,869,148,168 +characters/tonks/clothes/accessory/succubus_wings/0.webp:362,456,501,411 +characters/tonks/clothes/accessory/succubus_wings/1.webp:362,466,501,319 +characters/tonks/clothes/accessory/succubus_wings/2.webp:416,449,385,417 +characters/tonks/clothes/accessory/succubus_wings/outline.webp:360,446,506,423 +characters/tonks/clothes/bottom/jeans/0.webp:429,870,324,330 +characters/tonks/clothes/bottom/jeans/extra.webp:466,986,267,214 +characters/tonks/clothes/bottom/jeans/outline.webp:428,868,327,332 +characters/tonks/clothes/bottom/latex_leggings/0.webp:434,788,318,412 +characters/tonks/clothes/bottom/latex_leggings/1.webp:434,792,318,408 +characters/tonks/clothes/bottom/latex_leggings/extra.webp:434,791,302,408 +characters/tonks/clothes/bottom/latex_leggings/outline.webp:432,779,323,421 +characters/tonks/clothes/bottom/latex_leggings/skin.webp:492,791,141,34 +characters/tonks/clothes/bottom/leggings/0.webp:433,818,321,382 +characters/tonks/clothes/bottom/leggings/outline.webp:433,815,322,385 +characters/tonks/clothes/bottom/leggings_hole/0.webp:433,818,321,382 +characters/tonks/clothes/bottom/leggings_hole/outline.webp:433,815,322,385 +characters/tonks/clothes/bottom/police/0.webp:431,823,279,196 +characters/tonks/clothes/bottom/police/1.webp:460,823,211,61 +characters/tonks/clothes/bottom/police/outline.webp:428,821,286,200 +characters/tonks/clothes/bottom/school_skirt_2/0.webp:422,775,305,281 +characters/tonks/clothes/bottom/school_skirt_2/1.webp:587,806,14,27 +characters/tonks/clothes/bottom/school_skirt_2/outline.webp:420,774,309,284 +characters/tonks/clothes/bottom/school_skirt_3/0.webp:425,775,297,214 +characters/tonks/clothes/bottom/school_skirt_3/1.webp:587,806,14,27 +characters/tonks/clothes/bottom/school_skirt_3/outline.webp:422,774,302,204 +characters/tonks/clothes/bottom/school_skirt_4/0.webp:431,775,284,214 +characters/tonks/clothes/bottom/school_skirt_4/1.webp:587,806,14,27 +characters/tonks/clothes/bottom/school_skirt_4/outline.webp:429,774,287,171 +characters/tonks/clothes/bottom/sweatpants/0.webp:429,834,328,366 +characters/tonks/clothes/bottom/sweatpants/1.webp:662,856,96,344 +characters/tonks/clothes/bottom/sweatpants/outline.webp:427,833,332,367 +characters/tonks/clothes/bottom/xmas/0.webp:438,855,254,106 +characters/tonks/clothes/bottom/xmas/1.webp:422,831,285,154 +characters/tonks/clothes/bottom/xmas/extra.webp:439,858,218,97 +characters/tonks/clothes/bottom/xmas/outline.webp:421,830,287,156 +characters/tonks/clothes/bottom/xmas/skin.webp:437,834,227,155 +characters/tonks/clothes/bra/bikini/0.webp:442,522,257,163 +characters/tonks/clothes/bra/bikini/1.webp:437,607,201,72 +characters/tonks/clothes/bra/bikini/outline.webp:435,520,265,166 +characters/tonks/clothes/bra/bikini_bra_1/0.webp:436,520,252,187 +characters/tonks/clothes/bra/bikini_bra_1/1.webp:444,520,245,180 +characters/tonks/clothes/bra/bikini_bra_1/outline.webp:435,518,255,190 +characters/tonks/clothes/bra/bikini_bra_1/skin.webp:487,539,172,146 +characters/tonks/clothes/bra/bikini_bra_1_UK/0.webp:436,520,252,187 +characters/tonks/clothes/bra/bikini_bra_1_UK/1.webp:436,582,221,125 +characters/tonks/clothes/bra/bikini_bra_1_UK/2.webp:454,589,203,117 +characters/tonks/clothes/bra/bikini_bra_1_UK/3.webp:444,520,245,180 +characters/tonks/clothes/bra/bikini_bra_1_UK/outline.webp:435,518,255,190 +characters/tonks/clothes/bra/bikini_bra_1_UK/skin.webp:487,539,172,146 +characters/tonks/clothes/bra/bikini_bra_1_USA/0.webp:436,520,252,187 +characters/tonks/clothes/bra/bikini_bra_1_USA/1.webp:551,582,106,122 +characters/tonks/clothes/bra/bikini_bra_1_USA/2.webp:436,592,82,115 +characters/tonks/clothes/bra/bikini_bra_1_USA/3.webp:443,520,246,185 +characters/tonks/clothes/bra/bikini_bra_1_USA/outline.webp:435,518,255,190 +characters/tonks/clothes/bra/bikini_bra_1_USA/skin.webp:487,539,172,146 +characters/tonks/clothes/bra/bikini_bra_1_striped/0.webp:436,520,252,187 +characters/tonks/clothes/bra/bikini_bra_1_striped/1.webp:436,582,221,125 +characters/tonks/clothes/bra/bikini_bra_1_striped/2.webp:444,520,245,180 +characters/tonks/clothes/bra/bikini_bra_1_striped/outline.webp:435,518,255,190 +characters/tonks/clothes/bra/bikini_bra_1_striped/skin.webp:487,539,172,146 +characters/tonks/clothes/bra/pasties_1/0.webp:436,627,194,48 +characters/tonks/clothes/bra/pasties_1/extra.webp:439,633,168,17 +characters/tonks/clothes/bra/pasties_1/outline.webp:433,627,200,49 +characters/tonks/clothes/bra/pasties_2/0.webp:436,627,194,48 +characters/tonks/clothes/bra/pasties_2/1.webp:433,644,182,32 +characters/tonks/clothes/bra/pasties_2/extra.webp:434,633,177,37 +characters/tonks/clothes/bra/pasties_2/outline.webp:433,627,200,49 +characters/tonks/clothes/bra/ribbon/0.webp:463,619,236,126 +characters/tonks/clothes/bra/ribbon/backupskin.webp:483,626,189,121 +characters/tonks/clothes/bra/ribbon/extra.webp:464,619,195,126 +characters/tonks/clothes/bra/ribbon/mask.webp:0,0,1010,1200 +characters/tonks/clothes/bra/ribbon/outline.webp:461,617,240,129 +characters/tonks/clothes/bra/ribbon/skin.webp:434,564,257,183 +characters/tonks/clothes/earrings/bells/0.webp:637,424,22,36 +characters/tonks/clothes/earrings/bells/extra.webp:638,426,10,30 +characters/tonks/clothes/earrings/bells/outline.webp:637,424,22,36 +characters/tonks/clothes/earrings/cartilege/0.webp:647,419,12,12 +characters/tonks/clothes/earrings/cartilege/extra.webp:649,419,9,10 +characters/tonks/clothes/earrings/cartilege/outline.webp:647,417,13,15 +characters/tonks/clothes/earrings/hoops/0.webp:504,425,158,49 +characters/tonks/clothes/earrings/hoops/extra.webp:504,426,158,47 +characters/tonks/clothes/earrings/hoops/outline.webp:504,424,158,50 +characters/tonks/clothes/earrings/industrial/0.webp:643,379,27,18 +characters/tonks/clothes/earrings/industrial/extra.webp:643,379,26,17 +characters/tonks/clothes/earrings/industrial/outline.webp:642,378,29,20 +characters/tonks/clothes/earrings/pearls/0.webp:637,424,19,19 +characters/tonks/clothes/earrings/pearls/extra.webp:637,424,18,19 +characters/tonks/clothes/earrings/pearls/outline.webp:635,422,23,23 +characters/tonks/clothes/earrings/pearls_2/0.webp:640,425,12,23 +characters/tonks/clothes/earrings/pearls_2/extra.webp:644,426,9,17 +characters/tonks/clothes/earrings/pearls_2/outline.webp:638,424,15,25 +characters/tonks/clothes/garterbelt/long_basic_1/0.webp:449,847,241,161 +characters/tonks/clothes/garterbelt/long_basic_1/outline.webp:448,846,244,163 +characters/tonks/clothes/glasses/police/0.webp:498,389,144,55 +characters/tonks/clothes/glasses/police/1.webp:500,405,127,36 +characters/tonks/clothes/glasses/police/outline.webp:497,385,148,61 +characters/tonks/clothes/glasses/shades/0.webp:498,389,144,56 +characters/tonks/clothes/glasses/shades/1.webp:501,404,126,37 +characters/tonks/clothes/glasses/shades/outline.webp:497,384,149,62 +characters/tonks/clothes/gloves/auror_gloves/0.webp:437,828,293,83 +characters/tonks/clothes/gloves/auror_gloves/0_front.webp:437,828,293,83 +characters/tonks/clothes/gloves/auror_gloves/outline.webp:435,826,297,87 +characters/tonks/clothes/gloves/auror_gloves/outline_front.webp:435,826,297,87 +characters/tonks/clothes/gloves/leather_gloves/0.webp:433,827,295,99 +characters/tonks/clothes/gloves/leather_gloves/0_front.webp:433,827,295,99 +characters/tonks/clothes/gloves/leather_gloves/extra.webp:433,830,291,89 +characters/tonks/clothes/gloves/leather_gloves/outline.webp:432,826,300,101 +characters/tonks/clothes/gloves/leather_gloves/outline_front.webp:432,826,300,101 +characters/tonks/clothes/gloves/succubus_gloves/0.webp:396,539,449,387 +characters/tonks/clothes/gloves/succubus_gloves/0_front.webp:396,539,449,387 +characters/tonks/clothes/gloves/succubus_gloves/outline.webp:395,615,451,312 +characters/tonks/clothes/gloves/succubus_gloves/outline_front.webp:395,615,451,312 +characters/tonks/clothes/gloves/xmas/0.webp:438,813,300,63 +characters/tonks/clothes/gloves/xmas/outline.webp:437,811,302,67 +characters/tonks/clothes/hair/base/0.webp:482,220,236,248 +characters/tonks/clothes/hair/base/1.webp:494,235,205,121 +characters/tonks/clothes/hair/base/outline.webp:481,218,239,254 +characters/tonks/clothes/hair/base/skin.webp:519,328,98,61 +characters/tonks/clothes/hair/new/0.webp:475,256,245,235 +characters/tonks/clothes/hair/new/0_back.webp:462,399,101,116 +characters/tonks/clothes/hair/new/1.webp:477,263,235,139 +characters/tonks/clothes/hair/new/1_back.webp:477,398,23,23 +characters/tonks/clothes/hair/new/outline.webp:473,254,249,238 +characters/tonks/clothes/hair/new/outline_back.webp:460,398,105,120 +characters/tonks/clothes/hair/new/skin.webp:511,308,112,86 +characters/tonks/clothes/headgear/antlers/0.webp:459,232,248,86 +characters/tonks/clothes/headgear/antlers/outline.webp:458,231,250,88 +characters/tonks/clothes/headgear/bunny/0.webp:483,162,161,141 +characters/tonks/clothes/headgear/bunny/1.webp:493,175,139,117 +characters/tonks/clothes/headgear/bunny/outline.webp:482,161,163,148 +characters/tonks/clothes/headgear/classy_hat/0.webp:0,0,0,0 +characters/tonks/clothes/headgear/classy_hat/0_back.webp:297,245,553,228 +characters/tonks/clothes/headgear/classy_hat/0_front.webp:338,241,465,158 +characters/tonks/clothes/headgear/classy_hat/extra.webp:0,0,0,0 +characters/tonks/clothes/headgear/classy_hat/extra_front.webp:352,241,426,153 +characters/tonks/clothes/headgear/classy_hat/outline.webp:377,266,390,192 +characters/tonks/clothes/headgear/classy_hat/outline_back.webp:295,242,556,235 +characters/tonks/clothes/headgear/classy_hat/outline_front.webp:322,239,502,159 +characters/tonks/clothes/headgear/elf/0.webp:617,201,182,102 +characters/tonks/clothes/headgear/elf/1.webp:596,238,114,91 +characters/tonks/clothes/headgear/elf/extra.webp:617,201,172,92 +characters/tonks/clothes/headgear/elf/outline.webp:594,200,207,131 +characters/tonks/clothes/headgear/horns/0.webp:474,243,220,98 +characters/tonks/clothes/headgear/horns/1.webp:474,243,220,52 +characters/tonks/clothes/headgear/horns/outline.webp:472,242,224,101 +characters/tonks/clothes/headgear/police/0.webp:450,282,218,127 +characters/tonks/clothes/headgear/police/1.webp:469,257,192,74 +characters/tonks/clothes/headgear/police/2.webp:477,298,142,29 +characters/tonks/clothes/headgear/police/mask.webp:0,0,1010,1200 +characters/tonks/clothes/headgear/police/outline.webp:449,256,219,153 +characters/tonks/clothes/headgear/police/skin.webp:525,335,90,51 +characters/tonks/clothes/makeup/elf_ears/0.webp:0,0,1,1 +characters/tonks/clothes/makeup/elf_ears/extra.webp:637,363,54,67 +characters/tonks/clothes/makeup/elf_ears/outline.webp:636,363,56,68 +characters/tonks/clothes/makeup/lipstick/angry.webp:119,177,466,301 +characters/tonks/clothes/makeup/lipstick/annoyed.webp:541,447,35,19 +characters/tonks/clothes/makeup/lipstick/base.webp:541,446,52,21 +characters/tonks/clothes/makeup/lipstick/clench.webp:542,441,56,34 +characters/tonks/clothes/makeup/lipstick/crooked_smile.webp:541,437,54,36 +characters/tonks/clothes/makeup/lipstick/disgust.webp:540,450,48,22 +characters/tonks/clothes/makeup/lipstick/grin.webp:540,443,56,35 +characters/tonks/clothes/makeup/lipstick/horny.webp:543,443,46,30 +characters/tonks/clothes/makeup/lipstick/mad.webp:542,444,48,29 +characters/tonks/clothes/makeup/lipstick/normal.webp:543,446,42,21 +characters/tonks/clothes/makeup/lipstick/open.webp:544,444,36,34 +characters/tonks/clothes/makeup/lipstick/open_wide.webp:542,441,40,53 +characters/tonks/clothes/makeup/lipstick/open_wide_tongue.webp:542,441,40,49 +characters/tonks/clothes/makeup/lipstick/open_wide_tongue2.webp:542,441,40,49 +characters/tonks/clothes/makeup/lipstick/open_wide_tongue2_cum.webp:542,441,40,49 +characters/tonks/clothes/makeup/lipstick/open_wide_tongue_cum.webp:542,441,40,49 +characters/tonks/clothes/makeup/lipstick/scream.webp:540,444,49,35 +characters/tonks/clothes/makeup/lipstick/silly.webp:542,441,47,35 +characters/tonks/clothes/makeup/lipstick/soft.webp:545,446,34,27 +characters/tonks/clothes/makeup/lipstick/upset.webp:545,443,41,24 +characters/tonks/clothes/neckwear/bell_1/0.webp:574,494,73,34 +characters/tonks/clothes/neckwear/bell_1/1.webp:553,509,56,49 +characters/tonks/clothes/neckwear/bell_1/extra.webp:554,501,73,54 +characters/tonks/clothes/neckwear/bell_1/outline.webp:552,492,97,67 +characters/tonks/clothes/neckwear/bunny_bowtie_1/0.webp:556,477,98,90 +characters/tonks/clothes/neckwear/bunny_bowtie_1/1.webp:540,527,80,48 +characters/tonks/clothes/neckwear/bunny_bowtie_1/outline.webp:539,475,118,101 +characters/tonks/clothes/neckwear/bunny_bowtie_1/skin.webp:532,515,93,65 +characters/tonks/clothes/neckwear/choker_1/0.webp:574,494,73,34 +characters/tonks/clothes/neckwear/choker_1/extra.webp:575,501,52,24 +characters/tonks/clothes/neckwear/choker_1/outline.webp:573,492,76,38 +characters/tonks/clothes/neckwear/choker_beads/0.webp:575,502,65,18 +characters/tonks/clothes/neckwear/choker_beads/1.webp:575,505,59,15 +characters/tonks/clothes/neckwear/choker_beads/extra.webp:575,504,59,17 +characters/tonks/clothes/neckwear/choker_beads/outline.webp:575,501,67,20 +characters/tonks/clothes/neckwear/pearls_1/0.webp:564,504,90,37 +characters/tonks/clothes/neckwear/pearls_1/extra.webp:564,504,91,38 +characters/tonks/clothes/neckwear/pearls_1/outline.webp:562,501,96,44 +characters/tonks/clothes/neckwear/pearls_2/0.webp:561,518,95,70 +characters/tonks/clothes/neckwear/pearls_2/extra.webp:562,519,92,64 +characters/tonks/clothes/neckwear/pearls_2/outline.webp:560,517,96,71 +characters/tonks/clothes/neckwear/succubus_colar/0.webp:575,501,75,61 +characters/tonks/clothes/neckwear/succubus_colar/outline.webp:575,496,76,68 +characters/tonks/clothes/neckwear/whistle/0.webp:535,509,121,149 +characters/tonks/clothes/neckwear/whistle/1.webp:535,654,27,47 +characters/tonks/clothes/neckwear/whistle/outline.webp:534,507,122,195 +characters/tonks/clothes/panties/base/0.webp:468,816,193,153 +characters/tonks/clothes/panties/base/1.webp:534,946,30,26 +characters/tonks/clothes/panties/base/outline.webp:468,816,194,157 +characters/tonks/clothes/panties/bikini_panties_1/0.webp:475,805,179,165 +characters/tonks/clothes/panties/bikini_panties_1/1.webp:503,876,85,46 +characters/tonks/clothes/panties/bikini_panties_1/outline.webp:475,803,180,168 +characters/tonks/clothes/panties/bikini_panties_1/skin.webp:486,819,154,101 +characters/tonks/clothes/panties/bikini_panties_1_UK/0.webp:475,805,179,165 +characters/tonks/clothes/panties/bikini_panties_1_UK/1.webp:507,908,69,63 +characters/tonks/clothes/panties/bikini_panties_1_UK/2.webp:510,898,74,69 +characters/tonks/clothes/panties/bikini_panties_1_UK/outline.webp:475,803,180,168 +characters/tonks/clothes/panties/bikini_panties_1_UK/skin.webp:486,819,154,101 +characters/tonks/clothes/panties/bikini_panties_1_jock/0.webp:475,805,179,165 +characters/tonks/clothes/panties/bikini_panties_1_jock/outline.webp:475,803,180,168 +characters/tonks/clothes/panties/bikini_panties_1_jock/skin.webp:486,819,154,101 +characters/tonks/clothes/panties/bikini_panties_1_striped/0.webp:475,805,179,165 +characters/tonks/clothes/panties/bikini_panties_1_striped/1.webp:475,805,180,165 +characters/tonks/clothes/panties/bikini_panties_1_striped/outline.webp:475,803,180,168 +characters/tonks/clothes/panties/bikini_panties_1_striped/skin.webp:486,819,154,101 +characters/tonks/clothes/panties/ribbon/0.webp:487,869,215,179 +characters/tonks/clothes/panties/ribbon/extra.webp:487,872,175,175 +characters/tonks/clothes/panties/ribbon/outline.webp:485,867,219,181 +characters/tonks/clothes/panties/ribbon/skin.webp:485,871,183,167 +characters/tonks/clothes/panties/succubus_panties/0.webp:455,840,217,129 +characters/tonks/clothes/panties/succubus_panties/1.webp:493,894,103,23 +characters/tonks/clothes/panties/succubus_panties/outline.webp:453,839,221,131 +characters/tonks/clothes/piercing/belly_dick/0.webp:531,808,15,59 +characters/tonks/clothes/piercing/belly_dick/extra.webp:531,810,14,57 +characters/tonks/clothes/piercing/belly_dick/outline.webp:530,808,16,59 +characters/tonks/clothes/piercing/belly_heart/0.webp:532,808,14,48 +characters/tonks/clothes/piercing/belly_heart/extra.webp:531,810,14,45 +characters/tonks/clothes/piercing/belly_heart/outline.webp:531,808,15,48 +characters/tonks/clothes/piercing/belly_stud/0.webp:539,798,7,18 +characters/tonks/clothes/piercing/belly_stud/extra.webp:539,800,6,16 +characters/tonks/clothes/piercing/belly_stud/outline.webp:538,798,8,18 +characters/tonks/clothes/piercing/clit_stud/0.webp:540,947,10,11 +characters/tonks/clothes/piercing/clit_stud/extra.webp:541,947,9,11 +characters/tonks/clothes/piercing/clit_stud/outline.webp:539,946,12,13 +characters/tonks/clothes/piercing/nipple_bells/0.webp:433,644,182,32 +characters/tonks/clothes/piercing/nipple_bells/extra.webp:434,647,177,23 +characters/tonks/clothes/piercing/nipple_bells/outline.webp:433,644,182,32 +characters/tonks/clothes/piercing/nipple_rings/0.webp:438,646,175,18 +characters/tonks/clothes/piercing/nipple_rings/extra.webp:439,646,173,17 +characters/tonks/clothes/piercing/nipple_rings/outline.webp:438,645,176,19 +characters/tonks/clothes/piercing/nipple_rings2/0.webp:438,646,175,18 +characters/tonks/clothes/piercing/nipple_rings2/extra.webp:439,646,173,18 +characters/tonks/clothes/piercing/nipple_rings2/outline.webp:438,645,176,20 +characters/tonks/clothes/piercing/nipple_rings3/0.webp:439,644,176,15 +characters/tonks/clothes/piercing/nipple_rings3/extra.webp:439,647,172,13 +characters/tonks/clothes/piercing/nipple_rings3/outline.webp:439,644,176,16 +characters/tonks/clothes/piercing/nipple_stud/0.webp:447,642,169,11 +characters/tonks/clothes/piercing/nipple_stud/extra.webp:448,643,167,8 +characters/tonks/clothes/piercing/nipple_stud/outline.webp:445,641,172,13 +characters/tonks/clothes/pubes/arrow/0.webp:522,887,39,51 +characters/tonks/clothes/pubes/arrow/outline.webp:522,889,34,44 +characters/tonks/clothes/pubes/beaver/0.webp:515,886,64,88 +characters/tonks/clothes/pubes/beaver/outline.webp:517,890,58,82 +characters/tonks/clothes/pubes/stuble/0.webp:508,909,78,48 +characters/tonks/clothes/pubes/unshaved/0.webp:514,908,63,53 +characters/tonks/clothes/robe/auror_coat/0.webp:396,499,449,701 +characters/tonks/clothes/robe/auror_coat/0_back.webp:454,496,218,704 +characters/tonks/clothes/robe/auror_coat/0_front.webp:694,736,128,148 +characters/tonks/clothes/robe/auror_coat/1.webp:448,606,213,433 +characters/tonks/clothes/robe/auror_coat/outline.webp:394,497,452,703 +characters/tonks/clothes/robe/auror_coat/outline_front.webp:693,736,130,149 +characters/tonks/clothes/robe/dressing_gown/0.webp:391,522,465,497 +characters/tonks/clothes/robe/dressing_gown/1.webp:390,522,466,497 +characters/tonks/clothes/robe/dressing_gown/outline.webp:389,519,468,501 +characters/tonks/clothes/robe/dressing_gown/skin.webp:442,533,299,493 +characters/tonks/clothes/robe/silk_robe/0.webp:393,507,386,693 +characters/tonks/clothes/robe/silk_robe/0_back.webp:563,1016,62,184 +characters/tonks/clothes/robe/silk_robe/outline.webp:388,506,395,694 +characters/tonks/clothes/robe/silk_robe/outline_back.webp:561,1012,68,188 +characters/tonks/clothes/stockings/auror/0.webp:434,818,320,382 +characters/tonks/clothes/stockings/auror/1.webp:467,906,164,21 +characters/tonks/clothes/stockings/auror/outline.webp:433,815,322,385 +characters/tonks/clothes/stockings/bunny_stockings_1/0.webp:433,800,320,400 +characters/tonks/clothes/stockings/bunny_stockings_1/outline.webp:431,797,325,403 +characters/tonks/clothes/stockings/long_basic_1/0.webp:436,968,317,232 +characters/tonks/clothes/stockings/long_basic_1/extra.webp:441,985,291,215 +characters/tonks/clothes/stockings/long_basic_1/outline.webp:432,932,323,268 +characters/tonks/clothes/stockings/long_basic_1/skin.webp:436,944,253,54 +characters/tonks/clothes/stockings/long_basic_2/0.webp:436,968,317,232 +characters/tonks/clothes/stockings/long_basic_2/1.webp:439,973,281,70 +characters/tonks/clothes/stockings/long_basic_2/extra.webp:441,985,291,215 +characters/tonks/clothes/stockings/long_basic_2/outline.webp:432,932,323,268 +characters/tonks/clothes/stockings/long_basic_2/skin.webp:436,944,253,54 +characters/tonks/clothes/stockings/long_meshed/0.webp:436,968,317,232 +characters/tonks/clothes/stockings/long_meshed/1.webp:436,978,316,222 +characters/tonks/clothes/stockings/long_meshed/extra.webp:441,985,291,215 +characters/tonks/clothes/stockings/long_meshed/outline.webp:432,932,323,268 +characters/tonks/clothes/stockings/long_meshed/skin.webp:436,944,253,54 +characters/tonks/clothes/stockings/long_sports/0.webp:436,968,317,232 +characters/tonks/clothes/stockings/long_sports/1.webp:441,998,312,202 +characters/tonks/clothes/stockings/long_sports/extra.webp:441,985,291,215 +characters/tonks/clothes/stockings/long_sports/outline.webp:432,932,323,268 +characters/tonks/clothes/stockings/long_sports/skin.webp:436,944,253,54 +characters/tonks/clothes/stockings/long_striped/0.webp:436,968,317,232 +characters/tonks/clothes/stockings/long_striped/1.webp:441,998,310,202 +characters/tonks/clothes/stockings/long_striped/extra.webp:441,985,291,215 +characters/tonks/clothes/stockings/long_striped/outline.webp:432,932,323,268 +characters/tonks/clothes/stockings/long_striped/skin.webp:436,944,253,54 +characters/tonks/clothes/stockings/xmas/0.webp:449,847,286,247 +characters/tonks/clothes/stockings/xmas/1.webp:456,1054,298,146 +characters/tonks/clothes/stockings/xmas/outline.webp:448,846,307,354 +characters/tonks/clothes/top/auror/0.webp:429,586,278,389 +characters/tonks/clothes/top/auror/1.webp:431,610,274,363 +characters/tonks/clothes/top/auror/outline.webp:427,531,282,445 +characters/tonks/clothes/top/auror/skin.webp:413,596,79,95 +characters/tonks/clothes/top/auror2/0.webp:429,586,278,389 +characters/tonks/clothes/top/auror2/outline.webp:427,531,282,445 +characters/tonks/clothes/top/auror2/skin.webp:413,596,79,95 +characters/tonks/clothes/top/bunnysuit/0.webp:442,616,251,355 +characters/tonks/clothes/top/bunnysuit/extra.webp:457,621,167,37 +characters/tonks/clothes/top/bunnysuit/outline.webp:441,614,253,359 +characters/tonks/clothes/top/bunnysuit/skin.webp:413,616,68,75 +characters/tonks/clothes/top/cavegirl_dress/0.webp:423,528,291,469 +characters/tonks/clothes/top/cavegirl_dress/extra.webp:424,551,237,442 +characters/tonks/clothes/top/cavegirl_dress/outline.webp:422,525,293,474 +characters/tonks/clothes/top/cavegirl_dress/skin.webp:448,539,227,461 +characters/tonks/clothes/top/classy_dress/0.webp:391,529,455,671 +characters/tonks/clothes/top/classy_dress/extra.webp:393,531,451,669 +characters/tonks/clothes/top/classy_dress/outline.webp:392,530,454,670 +characters/tonks/clothes/top/classy_dress/skin.webp:471,534,188,113 +characters/tonks/clothes/top/corset/0.webp:459,621,241,270 +characters/tonks/clothes/top/corset/extra.webp:467,621,203,117 +characters/tonks/clothes/top/corset/mask.webp:0,0,1010,1200 +characters/tonks/clothes/top/corset/outline.webp:457,619,245,274 +characters/tonks/clothes/top/corset/skin.webp:412,564,278,144 +characters/tonks/clothes/top/crop_top/0.webp:436,527,268,233 +characters/tonks/clothes/top/crop_top/outline.webp:435,523,272,237 +characters/tonks/clothes/top/crop_top/skin.webp:487,533,211,232 +characters/tonks/clothes/top/elf_dress/0.webp:423,582,361,416 +characters/tonks/clothes/top/elf_dress/extra.webp:423,613,260,384 +characters/tonks/clothes/top/elf_dress/outline.webp:422,581,363,418 +characters/tonks/clothes/top/elf_dress/skin.webp:447,581,330,418 +characters/tonks/clothes/top/nightie_1/0.webp:431,532,302,523 +characters/tonks/clothes/top/nightie_1/outline.webp:429,530,305,526 +characters/tonks/clothes/top/police1/0.webp:436,527,275,277 +characters/tonks/clothes/top/police1/1.webp:435,498,361,395 +characters/tonks/clothes/top/police1/2.webp:548,702,13,107 +characters/tonks/clothes/top/police1/outline.webp:435,496,364,399 +characters/tonks/clothes/top/police2/0.webp:435,498,361,395 +characters/tonks/clothes/top/police2/1.webp:548,702,13,107 +characters/tonks/clothes/top/police2/outline.webp:436,496,363,399 +characters/tonks/clothes/top/police3/0.webp:436,527,275,277 +characters/tonks/clothes/top/police3/outline.webp:435,526,278,279 +characters/tonks/clothes/top/ruffled_top/0.webp:405,619,416,219 +characters/tonks/clothes/top/ruffled_top/outline.webp:403,617,420,222 +characters/tonks/clothes/top/silk_dress/0.webp:436,652,336,548 +characters/tonks/clothes/top/silk_dress/1.webp:446,641,171,13 +characters/tonks/clothes/top/silk_dress/outline.webp:431,632,344,568 +characters/tonks/clothes/top/skimpy_dress/0.webp:432,524,272,483 +characters/tonks/clothes/top/skimpy_dress/extra.webp:437,535,227,470 +characters/tonks/clothes/top/skimpy_dress/outline.webp:431,522,282,499 +characters/tonks/clothes/top/skimpy_dress/skin.webp:440,538,256,481 +characters/tonks/clothes/top/skimpy_dress_2/0.webp:432,527,273,480 +characters/tonks/clothes/top/skimpy_dress_2/extra.webp:438,541,257,461 +characters/tonks/clothes/top/skimpy_dress_2/outline.webp:431,525,282,496 +characters/tonks/clothes/top/skimpy_dress_2/skin.webp:440,539,256,480 +characters/tonks/clothes/top/succubus_corset/0.webp:447,666,236,172 +characters/tonks/clothes/top/succubus_corset/1.webp:528,689,33,139 +characters/tonks/clothes/top/succubus_corset/2.webp:529,700,34,102 +characters/tonks/clothes/top/succubus_corset/outline.webp:445,665,240,175 +characters/tonks/clothes/top/succubus_corset_2/0.webp:474,695,204,143 +characters/tonks/clothes/top/succubus_corset_2/1.webp:528,700,33,128 +characters/tonks/clothes/top/succubus_corset_2/2.webp:529,700,34,102 +characters/tonks/clothes/top/succubus_corset_2/outline.webp:472,695,207,145 +characters/tonks/clothes/top/sweatshirt/0.webp:391,521,468,340 +characters/tonks/clothes/top/sweatshirt/outline.webp:390,520,471,341 +characters/tonks/clothes/top/swimsuit_1/0.webp:435,599,197,371 +characters/tonks/clothes/top/swimsuit_1/extra.webp:434,599,197,371 +characters/tonks/clothes/top/swimsuit_1/outline.webp:435,522,223,450 +characters/tonks/clothes/top/swimsuit_1/skin.webp:476,536,184,396 +characters/tonks/clothes/top/swimsuit_1_USA/0.webp:435,599,197,371 +characters/tonks/clothes/top/swimsuit_1_USA/1.webp:436,601,195,378 +characters/tonks/clothes/top/swimsuit_1_USA/2.webp:436,592,97,175 +characters/tonks/clothes/top/swimsuit_1_USA/3.webp:443,598,92,173 +characters/tonks/clothes/top/swimsuit_1_USA/extra.webp:434,599,197,371 +characters/tonks/clothes/top/swimsuit_1_USA/outline.webp:435,522,223,450 +characters/tonks/clothes/top/swimsuit_1_USA/skin.webp:476,536,184,396 +characters/tonks/clothes/top/swimsuit_1_striped/0.webp:435,599,197,371 +characters/tonks/clothes/top/swimsuit_1_striped/1.webp:436,600,195,379 +characters/tonks/clothes/top/swimsuit_1_striped/extra.webp:434,599,197,371 +characters/tonks/clothes/top/swimsuit_1_striped/outline.webp:435,522,223,450 +characters/tonks/clothes/top/swimsuit_1_striped/skin.webp:476,536,184,396 +characters/tonks/clothes/top/tied_top/0.webp:437,490,288,244 +characters/tonks/clothes/top/tied_top/outline.webp:435,489,293,247 +characters/tonks/cum/body/heavy.webp:509,438,134,417 +characters/tonks/cum/body/heavy_skin.webp:514,472,114,384 +characters/tonks/cum/body/light.webp:509,552,119,271 +characters/tonks/cum/body/light_skin.webp:522,553,106,230 +characters/tonks/cum/breasts/heavy.webp:443,579,231,168 +characters/tonks/cum/breasts/heavy_skin.webp:462,580,207,169 +characters/tonks/cum/breasts/light.webp:455,593,202,126 +characters/tonks/cum/breasts/light_skin.webp:462,593,195,127 +characters/tonks/cum/crotch/heavy.webp:440,778,215,321 +characters/tonks/cum/crotch/heavy_skin.webp:442,779,214,316 +characters/tonks/cum/crotch/light.webp:440,780,191,314 +characters/tonks/cum/crotch/light_skin.webp:442,780,190,315 +characters/tonks/cum/face/heavy.webp:514,324,118,170 +characters/tonks/cum/face/heavy_skin.webp:516,327,96,159 +characters/tonks/cum/face/light.webp:514,339,118,147 +characters/tonks/cum/face/light_skin.webp:524,338,88,145 +characters/tonks/cum/hair/heavy.webp:489,265,211,169 +characters/tonks/cum/hair/light.webp:512,282,185,136 +characters/tonks/cum/legs/heavy.webp:632,1044,90,135 +characters/tonks/cum/legs/heavy_skin.webp:634,1044,89,136 +characters/tonks/cum/legs/light.webp:632,1044,22,102 +characters/tonks/cum/legs/light_skin.webp:634,1044,22,103 +characters/tonks/cum/pussy/heavy.webp:539,947,32,98 +characters/tonks/cum/pussy/light.webp:541,949,29,55 +characters/tonks/emotes/angry.webp:595,320,45,43 +characters/tonks/emotes/confused.webp:422,193,129,101 +characters/tonks/emotes/happy.webp:424,173,123,146 +characters/tonks/emotes/hearts.webp:390,162,175,146 +characters/tonks/emotes/shocked.webp:410,166,136,128 +characters/tonks/emotes/sweat.webp:591,306,42,67 +characters/tonks/face/cheeks/blush.webp:516,380,108,61 +characters/tonks/face/cheeks/gloom.webp:600,393,26,49 +characters/tonks/face/cheeks/heavy_blush.webp:516,380,108,61 +characters/tonks/face/eyebrows/angry.webp:513,366,101,27 +characters/tonks/face/eyebrows/angry_skin.webp:515,371,102,31 +characters/tonks/face/eyebrows/annoyed.webp:513,368,102,22 +characters/tonks/face/eyebrows/annoyed_skin.webp:516,373,100,29 +characters/tonks/face/eyebrows/base.webp:512,367,103,21 +characters/tonks/face/eyebrows/base_skin.webp:514,371,102,31 +characters/tonks/face/eyebrows/raised.webp:513,360,101,29 +characters/tonks/face/eyebrows/raised_skin.webp:515,365,102,37 +characters/tonks/face/eyebrows/shocked.webp:513,362,102,25 +characters/tonks/face/eyebrows/shocked_skin.webp:514,369,102,33 +characters/tonks/face/eyebrows/worried.webp:514,367,101,15 +characters/tonks/face/eyebrows/worried_skin.webp:517,373,100,29 +characters/tonks/face/eyes/base.webp:512,380,107,25 +characters/tonks/face/eyes/base_mask.webp:519,387,93,17 +characters/tonks/face/eyes/base_skin.webp:517,395,99,10 +characters/tonks/face/eyes/closed.webp:511,380,106,26 +characters/tonks/face/eyes/closed_skin.webp:517,395,99,10 +characters/tonks/face/eyes/happyCl.webp:514,382,104,20 +characters/tonks/face/eyes/happyCl_skin.webp:517,395,99,9 +characters/tonks/face/eyes/narrow.webp:513,380,106,25 +characters/tonks/face/eyes/narrow_mask.webp:519,390,92,14 +characters/tonks/face/eyes/narrow_skin.webp:517,395,99,10 +characters/tonks/face/eyes/shocked.webp:512,378,105,28 +characters/tonks/face/eyes/shocked_mask.webp:518,383,94,22 +characters/tonks/face/eyes/shocked_skin.webp:517,395,99,10 +characters/tonks/face/eyes/wide.webp:511,380,108,25 +characters/tonks/face/eyes/wide_mask.webp:518,385,94,20 +characters/tonks/face/eyes/wide_skin.webp:517,395,99,10 +characters/tonks/face/eyes/wink.webp:514,380,105,25 +characters/tonks/face/eyes/wink_mask.webp:577,387,35,17 +characters/tonks/face/eyes/wink_skin.webp:517,395,99,10 +characters/tonks/face/mouth/angry.webp:544,447,41,31 +characters/tonks/face/mouth/annoyed.webp:541,447,35,19 +characters/tonks/face/mouth/annoyed_skin.webp:545,460,24,8 +characters/tonks/face/mouth/base.webp:541,446,52,21 +characters/tonks/face/mouth/base_skin.webp:549,452,36,19 +characters/tonks/face/mouth/clench.webp:542,441,56,34 +characters/tonks/face/mouth/clench_skin.webp:550,467,34,10 +characters/tonks/face/mouth/crooked_smile.webp:541,437,54,36 +characters/tonks/face/mouth/crooked_smile_skin.webp:550,459,38,15 +characters/tonks/face/mouth/disgust.webp:540,450,48,22 +characters/tonks/face/mouth/disgust_skin.webp:540,450,48,24 +characters/tonks/face/mouth/grin.webp:540,443,56,35 +characters/tonks/face/mouth/grin_skin.webp:546,467,38,13 +characters/tonks/face/mouth/horny.webp:543,443,46,30 +characters/tonks/face/mouth/horny_skin.webp:553,463,30,12 +characters/tonks/face/mouth/mad.webp:542,444,48,29 +characters/tonks/face/mouth/mad_skin.webp:546,465,32,9 +characters/tonks/face/mouth/normal.webp:543,446,42,21 +characters/tonks/face/mouth/normal_skin.webp:549,452,36,19 +characters/tonks/face/mouth/open.webp:544,444,36,34 +characters/tonks/face/mouth/open_skin.webp:550,466,28,14 +characters/tonks/face/mouth/open_wide.webp:525,441,107,57 +characters/tonks/face/mouth/open_wide_tongue.webp:525,441,107,87 +characters/tonks/face/mouth/open_wide_tongue2.webp:514,441,118,77 +characters/tonks/face/mouth/open_wide_tongue2_cum.webp:514,441,118,77 +characters/tonks/face/mouth/open_wide_tongue_cum.webp:525,441,107,87 +characters/tonks/face/mouth/scream.webp:540,443,49,36 +characters/tonks/face/mouth/scream_skin.webp:549,468,37,13 +characters/tonks/face/mouth/silly.webp:542,441,47,35 +characters/tonks/face/mouth/silly_skin.webp:552,467,31,11 +characters/tonks/face/mouth/soft.webp:545,446,45,27 +characters/tonks/face/mouth/soft_skin.webp:550,461,27,15 +characters/tonks/face/mouth/upset.webp:545,443,41,24 +characters/tonks/face/mouth/upset_skin.webp:545,458,27,11 +characters/tonks/face/pupils/L.webp:521,389,75,15 +characters/tonks/face/pupils/R.webp:531,388,76,17 +characters/tonks/face/pupils/ahegao.webp:531,382,64,17 +characters/tonks/face/pupils/down.webp:525,393,74,16 +characters/tonks/face/pupils/downR.webp:531,391,77,17 +characters/tonks/face/pupils/mid.webp:528,386,75,16 +characters/tonks/face/pupils/stare.webp:525,385,74,17 +characters/tonks/face/pupils/up.webp:525,385,75,16 +characters/tonks/face/tears/tears_mascara.webp:516,380,96,43 +characters/tonks/face/tears/tears_tears.webp:513,384,101,20 +gui/icon.webp:101,1,430,630 +gui/logos/discord.webp:20,13,112,128 +gui/logos/patreon.webp:20,22,110,106 +gui/logos/silverstudiogames.webp:0,0,325,46 +gui/logos/title.webp:0,0,339,242 +gui/main_menu/00.webp:0,0,2160,1200 +gui/main_menu/00b.webp:0,0,2160,1200 +gui/main_menu/01.webp:0,0,2160,1200 +gui/main_menu/01b.webp:0,0,2160,1200 +gui/main_menu/02.webp:0,0,2160,1200 +gui/main_menu/02b.webp:0,0,2160,1200 +gui/main_menu/candle/fire_01.webp:27,21,150,152 +gui/main_menu/candle/fire_02.webp:27,21,150,152 +gui/main_menu/candle/fire_03.webp:27,21,150,152 +gui/main_menu/candle/fire_04.webp:27,21,150,152 +gui/main_menu/candle/fire_05.webp:27,21,150,152 +gui/main_menu/candle/fire_06.webp:27,21,150,152 +gui/main_menu/candle/fire_07.webp:27,21,150,152 +gui/main_menu/candle/fire_08.webp:31,26,142,143 +gui/main_menu/candle/fire_09.webp:27,21,150,152 +gui/main_menu/candle/fire_10.webp:27,21,150,152 +gui/main_menu/fire00.webp:0,208,697,709 +gui/main_menu/fire01.webp:0,226,697,682 +gui/main_menu/fire02.webp:0,208,697,709 +gui/main_menu/fire03.webp:0,237,697,671 +gui/main_menu/fire04.webp:0,208,697,709 +gui/main_menu/fire05.webp:0,208,697,709 +gui/main_menu/fire06.webp:0,208,697,709 +gui/main_menu/fire07.webp:0,208,697,709 +gui/main_menu/sparkle.webp:0,0,49,50 +gui/splash/legal.webp:0,0,2160,1200 +images/CG/astoria_sit/b0.webp:505,197,58,16 +images/CG/astoria_sit/b1.webp:502,198,60,16 +images/CG/astoria_sit/b2.webp:504,199,58,15 +images/CG/astoria_sit/b3.webp:502,198,62,15 +images/CG/astoria_sit/b4.webp:502,196,62,20 +images/CG/astoria_sit/b5.webp:502,193,62,20 +images/CG/astoria_sit/base.webp:0,0,1080,636 +images/CG/astoria_sit/blush.webp:511,221,76,31 +images/CG/astoria_sit/e0.webp:510,210,55,25 +images/CG/astoria_sit/e1.webp:509,210,56,25 +images/CG/astoria_sit/e2.webp:513,217,54,17 +images/CG/astoria_sit/e3.webp:512,217,54,15 +images/CG/astoria_sit/e4.webp:510,210,158,313 +images/CG/astoria_sit/e5.webp:509,210,159,313 +images/CG/astoria_sit/e6.webp:510,210,55,25 +images/CG/astoria_sit/e7.webp:510,210,55,25 +images/CG/astoria_sit/h.webp:588,406,80,117 +images/CG/astoria_sit/m0.webp:533,248,24,12 +images/CG/astoria_sit/m1.webp:540,248,19,17 +images/CG/astoria_sit/m2.webp:534,244,28,22 +images/CG/astoria_sit/m3.webp:537,248,20,11 +images/CG/astoria_sit/m4.webp:538,250,20,9 +images/CG/astoria_sit/m5.webp:536,249,21,11 +images/CG/astoria_sit/tears.webp:510,219,56,18 +images/CG/ball/171.webp:0,0,1080,600 +images/CG/ball/172.webp:221,185,102,189 +images/CG/ball/173.webp:212,170,138,162 +images/CG/ball/174.webp:200,163,149,203 +images/CG/ball/175.webp:213,170,137,162 +images/CG/ball/background.webp:0,0,1080,600 +images/CG/ball/base.webp:0,0,1080,600 +images/CG/ball/bj/background.webp:0,0,1080,600 +images/CG/ball/bj/background2.webp:0,0,1080,600 +images/CG/ball/bj/base.webp:0,0,778,600 +images/CG/ball/bj/base2.webp:0,0,777,600 +images/CG/ball/bj/base3.webp:0,0,1072,600 +images/CG/ball/bj/base3_alt.webp:0,0,1072,600 +images/CG/ball/bj/base4.webp:0,0,776,600 +images/CG/ball/bj/blush.webp:281,202,82,33 +images/CG/ball/bj/blush2.webp:370,186,98,58 +images/CG/ball/bj/blush3.webp:284,203,62,60 +images/CG/ball/bj/blush4.webp:397,211,99,34 +images/CG/ball/bj/brows.webp:280,149,81,50 +images/CG/ball/bj/brows2.webp:367,145,91,42 +images/CG/ball/bj/brows3.webp:329,184,31,57 +images/CG/ball/bj/brows4.webp:403,164,91,39 +images/CG/ball/bj/brows_angry3.webp:327,186,34,56 +images/CG/ball/bj/cheeks3.webp:261,228,81,87 +images/CG/ball/bj/eyes_closed.webp:275,172,94,50 +images/CG/ball/bj/eyes_closed2.webp:361,158,104,51 +images/CG/ball/bj/eyes_closed3.webp:315,196,32,42 +images/CG/ball/bj/eyes_closed4.webp:398,185,104,41 +images/CG/ball/bj/eyes_dead3.webp:313,195,37,44 +images/CG/ball/bj/eyes_down.webp:286,184,70,25 +images/CG/ball/bj/eyes_down2.webp:370,164,94,45 +images/CG/ball/bj/eyes_happycl3.webp:315,196,30,45 +images/CG/ball/bj/eyes_squintdead3.webp:308,195,42,46 +images/CG/ball/bj/eyes_squintup3.webp:308,195,42,46 +images/CG/ball/bj/eyes_stare3.webp:313,195,35,44 +images/CG/ball/bj/eyes_up.webp:285,184,71,25 +images/CG/ball/bj/eyes_up2.webp:379,179,74,39 +images/CG/ball/bj/eyes_up3.webp:313,195,35,44 +images/CG/ball/bj/eyes_up4.webp:411,195,76,25 +images/CG/ball/bj/lashes.webp:279,178,88,22 +images/CG/ball/bj/lashes2.webp:370,164,94,38 +images/CG/ball/bj/lashes4.webp:403,191,89,21 +images/CG/ball/bj/mascara3.webp:289,211,59,110 +images/CG/ball/bj/mouth_grimmace2.webp:409,227,41,40 +images/CG/ball/bj/mouth_happy2.webp:403,228,48,36 +images/CG/ball/bj/mouth_open2.webp:409,226,41,38 +images/CG/ball/bj/mouth_smile2.webp:407,233,28,16 +images/CG/ball/bj/mouth_smile4.webp:432,225,46,62 +images/CG/ball/bj/sperm.webp:281,240,71,75 +images/CG/ball/bj/sperm3.webp:213,195,81,60 +images/CG/ball/bj/sperm4.webp:352,104,71,114 +images/CG/ball/bj/spit_base3.webp:298,226,28,49 +images/CG/ball/bj/spit_eye3.webp:316,206,29,48 +images/CG/ball/bj/spit_forehead3.webp:347,178,32,48 +images/CG/ball/bj/spit_nose3.webp:284,200,32,69 +images/CG/ball/bj/spit_on_eye3.webp:301,57,50,179 +images/CG/ball/bj/sweat.webp:361,155,9,26 +images/CG/ball/bj/sweat2.webp:369,158,9,26 +images/CG/ball/bj/sweat3.webp:281,193,92,159 +images/CG/ball/bj/sweat4.webp:412,143,8,26 +images/CG/ball/bj/tears_base3.webp:321,212,27,30 +images/CG/ball/bj/tears_crying3.webp:280,212,68,113 +images/CG/ball/blank.webp:0,0,0,0 +images/CG/ball/intro/background.webp:0,0,1080,600 +images/CG/ball/intro/bloom.webp:0,124,1080,476 +images/CG/ball/intro/foreground.webp:0,91,1080,509 +images/CG/ball/intro/hermione.webp:412,22,278,578 +images/CG/ball/intro/hermione2.webp:412,22,278,578 +images/CG/ball/intro/overlay.webp:0,0,1080,600 +images/CG/ball/sex/background.webp:0,0,1080,600 +images/CG/ball/sex/background2.webp:0,0,1080,600 +images/CG/ball/sex/base.webp:0,0,652,600 +images/CG/ball/sex/base2.webp:0,0,1055,600 +images/CG/ball/sex/blush.webp:490,181,89,37 +images/CG/ball/sex/blush2.webp:490,183,89,35 +images/CG/ball/sex/brows.webp:490,136,86,38 +images/CG/ball/sex/bukkake.webp:414,82,171,378 +images/CG/ball/sex/cheeks.webp:486,197,100,61 +images/CG/ball/sex/cum_after.webp:536,222,310,181 +images/CG/ball/sex/cum_anal.webp:202,249,86,74 +images/CG/ball/sex/cum_extra.webp:85,266,157,221 +images/CG/ball/sex/cum_nose.webp:535,190,57,65 +images/CG/ball/sex/cum_pussy.webp:155,406,67,182 +images/CG/ball/sex/dude_bj.webp:250,0,808,600 +images/CG/ball/sex/dude_bj2.webp:411,0,561,600 +images/CG/ball/sex/dude_bj3.webp:250,0,808,600 +images/CG/ball/sex/dude_bj_cum.webp:485,193,97,191 +images/CG/ball/sex/dudes.webp:549,0,531,600 +images/CG/ball/sex/dudes2.webp:550,0,530,600 +images/CG/ball/sex/dudes_cum.webp:518,164,265,177 +images/CG/ball/sex/dudes_cum2.webp:511,131,328,210 +images/CG/ball/sex/dudes_cum3.webp:511,131,328,210 +images/CG/ball/sex/dudes_spit.webp:519,70,177,128 +images/CG/ball/sex/dudes_spit_mouth.webp:533,118,174,160 +images/CG/ball/sex/eyes_closed.webp:482,159,103,34 +images/CG/ball/sex/eyes_dead.webp:494,159,84,34 +images/CG/ball/sex/eyes_down.webp:496,164,73,29 +images/CG/ball/sex/eyes_happycl.webp:482,159,103,34 +images/CG/ball/sex/eyes_r.webp:503,164,67,23 +images/CG/ball/sex/eyes_stare.webp:503,164,66,23 +images/CG/ball/sex/eyes_up.webp:500,164,69,23 +images/CG/ball/sex/eyes_wide.webp:494,159,84,34 +images/CG/ball/sex/lashes.webp:490,160,95,27 +images/CG/ball/sex/mascara.webp:487,179,89,75 +images/CG/ball/sex/mouth_open.webp:506,206,66,76 +images/CG/ball/sex/mouth_open_tongue.webp:506,206,65,48 +images/CG/ball/sex/mouth_open_tongue2.webp:506,210,65,43 +images/CG/ball/sex/mouth_smile.webp:506,206,66,76 +images/CG/ball/sex/open_tongue2.webp:513,227,51,39 +images/CG/ball/sex/spank.webp:157,294,87,86 +images/CG/ball/sex/spit.webp:489,236,73,172 +images/CG/ball/sex/spit_on_face.webp:527,156,25,50 +images/CG/ball/sex/tears.webp:494,177,83,17 +images/CG/ball/sex/tears2.webp:487,179,92,84 +images/CG/ball/speech/background.webp:0,0,1080,600 +images/CG/ball/speech/base.webp:357,5,410,595 +images/CG/ball/speech/base2.webp:358,5,696,595 +images/CG/ball/speech/bloom.webp:0,124,1080,476 +images/CG/ball/speech/blush.webp:460,177,150,52 +images/CG/ball/speech/brows.webp:478,124,114,30 +images/CG/ball/speech/cheeks.webp:469,205,123,112 +images/CG/ball/speech/cum0.webp:622,210,14,65 +images/CG/ball/speech/cum1.webp:597,92,71,183 +images/CG/ball/speech/cum2.webp:556,92,112,183 +images/CG/ball/speech/cum3.webp:531,80,137,195 +images/CG/ball/speech/cum4.webp:531,80,137,195 +images/CG/ball/speech/cum5.webp:531,80,137,225 +images/CG/ball/speech/cum6.webp:530,80,138,387 +images/CG/ball/speech/cum_mouth.webp:506,208,35,41 +images/CG/ball/speech/cum_nose.webp:494,208,24,49 +images/CG/ball/speech/cum_nose2.webp:506,208,12,23 +images/CG/ball/speech/eyes_closed.webp:467,141,140,56 +images/CG/ball/speech/eyes_squint.webp:467,140,138,56 +images/CG/ball/speech/mascara.webp:479,173,104,104 +images/CG/ball/speech/mouth_open.webp:488,217,72,41 +images/CG/ball/speech/overlay.webp:0,0,1080,600 +images/CG/ball/speech/sweat.webp:517,115,79,151 +images/CG/cho_bj/bj/day_overlay.webp:0,0,3840,2160 +images/CG/cho_bj/bj/loops/lick.webp:0,0,1920,1080 +images/CG/cho_bj/bj/loops/topless/lick.webp:0,0,1920,1080 +images/CG/cho_bj/bj/loops/topless/suck.webp:0,0,1920,1080 +images/CG/cho_bj/bj/loops/topless/suck_closed.webp:0,0,1920,1080 +images/CG/cho_bj/bj/loops/topless/suck_deep.webp:0,0,1920,1080 +images/CG/cho_bj/bj/loops/topless/suck_medium.webp:0,0,1920,1080 +images/CG/cho_bj/bj/loops/topless/suck_medium_up.webp:0,0,1920,1080 +images/CG/cho_bj/bj/night_overlay.webp:0,0,3840,2160 +images/CG/cho_bj/bj/nonloops/lick_fail.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/lick_fail_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/lick_start.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/lick_start_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/lick_success.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/cum_mouth.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/cum_mouth_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/cum_swallow.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/cum_swallow_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/lick_exit.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/lick_exit_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/lick_start.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/lick_start_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/lick_success.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_closed_start.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_closed_start_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_deep_start.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_deep_start_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_medium_start.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_medium_start_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_start.webp:0,0,1920,1080 +images/CG/cho_bj/bj/nonloops/topless/suck_start_end.webp:0,0,1920,1080 +images/CG/cho_bj/bj/topless_suck_up.webp:0,0,3840,2160 +images/CG/cho_bj/hj/away.webp:0,0,3840,2160 +images/CG/cho_bj/hj/away_blush.webp:0,0,3840,2160 +images/CG/cho_bj/hj/cum.webp:0,0,3840,2160 +images/CG/cho_bj/hj/cum_dodge.webp:0,0,3840,2160 +images/CG/cho_bj/hj/cum_dodge_angry.webp:0,0,3840,2160 +images/CG/cho_bj/hj/cum_dodge_annoyed.webp:0,0,3840,2160 +images/CG/cho_bj/hj/cum_eye.webp:0,0,3840,2160 +images/CG/cho_bj/hj/cum_eye_blush.webp:0,0,3840,2160 +images/CG/cho_bj/hj/cum_tits.webp:0,0,3840,2160 +images/CG/cho_bj/hj/day_overlay.webp:0,0,3840,2160 +images/CG/cho_bj/hj/dreamy_cum_tits.webp:0,0,3840,2160 +images/CG/cho_bj/hj/dreamy_up_cum_tits.webp:0,0,3840,2160 +images/CG/cho_bj/hj/look_blush_cum_tits.webp:0,0,3840,2160 +images/CG/cho_bj/hj/look_cum_tits.webp:0,0,3840,2160 +images/CG/cho_bj/hj/loops/mid.webp:0,0,1920,1080 +images/CG/cho_bj/hj/loops/mid_annoyed.webp:0,0,1920,1080 +images/CG/cho_bj/hj/loops/mid_blush.webp:0,0,1920,1080 +images/CG/cho_bj/hj/loops/topless/mid.webp:0,0,1920,1080 +images/CG/cho_bj/hj/loops/topless/mid_smile.webp:0,0,1920,1080 +images/CG/cho_bj/hj/loops/topless/up.webp:0,0,1920,1080 +images/CG/cho_bj/hj/loops/topless/up_blush.webp:0,0,1920,1080 +images/CG/cho_bj/hj/loops/up.webp:0,0,1920,1080 +images/CG/cho_bj/hj/loops/up_blush.webp:0,0,1920,1080 +images/CG/cho_bj/hj/mid.webp:0,0,3840,2160 +images/CG/cho_bj/hj/mid_annoyed.webp:0,0,3840,2160 +images/CG/cho_bj/hj/mid_blush.webp:0,0,3840,2160 +images/CG/cho_bj/hj/mid_worried.webp:0,0,3840,2160 +images/CG/cho_bj/hj/night_overlay.webp:0,0,3840,2160 +images/CG/cho_bj/hj/nonloops/cum_face.webp:0,0,1920,1080 +images/CG/cho_bj/hj/nonloops/cum_face_end.webp:0,0,1920,1080 +images/CG/cho_bj/hj/nonloops/cum_face_tits.webp:0,0,1920,1080 +images/CG/cho_bj/hj/nonloops/cum_face_tits_end.webp:0,0,1920,1080 +images/CG/cho_bj/hj/nonloops/cum_tits.webp:0,0,1920,1080 +images/CG/cho_bj/hj/nonloops/cum_tits_end.webp:0,0,1920,1080 +images/CG/cho_bj/hj/nonloops/topless/cum_face_tits.webp:0,0,1920,1080 +images/CG/cho_bj/hj/nonloops/topless/cum_face_tits_end.webp:0,0,1920,1080 +images/CG/cho_bj/hj/nonloops/topless/cum_tits.webp:0,0,1920,1080 +images/CG/cho_bj/hj/nonloops/topless/cum_tits_end.webp:0,0,1920,1080 +images/CG/cho_bj/hj/topless_away_blush.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_away_pout.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_cough.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_cum_tits.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_dreamy_cum_tits.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_dreamy_up_cum_tits.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_look_blush_cum_tits.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_look_cum_tits.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_mid.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_mid_angry.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_mid_blush.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_mid_dreamy.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_up.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_up_blush.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_up_blush2.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_up_cringe.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_up_wide.webp:0,0,3840,2160 +images/CG/cho_bj/hj/topless_up_worried.webp:0,0,3840,2160 +images/CG/cho_bj/hj/up.webp:0,0,3840,2160 +images/CG/cho_bj/hj/up_annoyed.webp:0,0,3840,2160 +images/CG/cho_bj/hj/up_blush.webp:0,0,3840,2160 +images/CG/cho_bj/hj/up_wide.webp:0,0,3840,2160 +images/CG/cho_bj/hj/up_worried.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/cum_dodge.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/cum_dodge_annoyed.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/cum_dodge_blush.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/cum_dodge_surprised.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/cum_eye.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/cum_face_tits.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/cum_face_tits_glance.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/day_overlay.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/mid.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/mid_annoyed.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/mid_blush.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/mid_dreamy.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/mid_shock.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/mid_surprised.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/mid_surprised_blush.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/mid_worried.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/night_overlay.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_away_blush_cum_mouth.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_away_cum_swallow.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_closed_angry_cum_swallow.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_angry_cum_face_tits.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_angry_cum_mouth.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_angry_cum_swallow.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_cough_cum_swallow.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_cum_mouth.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_cum_swallow.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_dreamy.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_full.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_full_angry.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_full_swallowed.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_full_swallowed2.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_full_worried.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_full_worried2.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_surprised_cum_mouth.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_mid_surprised_cum_swallow.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_up_angry2_cum_swallow.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_up_angry_cum_swallow.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_up_cum_mouth.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/topless_up_cum_swallow.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/up.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/up_neutral.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/up_shock.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/up_smile.webp:0,0,3840,2160 +images/CG/cho_bj/kneel/up_worried.webp:0,0,3840,2160 +images/CG/cho_bj_desk/bj_in.webp:0,0,4320,2400 +images/CG/cho_bj_desk/bj_out.webp:0,0,4320,2400 +images/CG/cho_bj_desk/bj_out_no_spit.webp:0,0,4320,2400 +images/CG/cho_bj_desk/hj_down.webp:0,0,4320,2400 +images/CG/cho_bj_desk/hj_up.webp:0,0,4320,2400 +images/CG/cho_bj_desk/idle.webp:0,0,4320,2400 +images/CG/cho_bj_desk/mask.webp:928,0,3392,2400 +images/CG/cho_bj_desk/mask_idle.webp:0,0,4320,2400 +images/CG/cho_bj_desk/overlay.webp:0,0,4320,2400 +images/CG/cho_bj_desk/overlay_idle.webp:0,0,4320,2400 +images/CG/cho_hufflepuff/background.webp:0,0,4320,2400 +images/CG/cho_hufflepuff/cho.webp:410,135,2197,2261 +images/CG/cho_hufflepuff/clouds.webp:0,0,4320,2090 +images/CG/cho_quidditch/background.webp:0,0,3840,2880 +images/CG/cho_quidditch/overlay.webp:0,0,3840,2880 +images/CG/cho_quidditch/pose1/body.webp:1151,830,1692,1552 +images/CG/cho_quidditch/pose1/eyebrows_1.webp:1678,618,53,57 +images/CG/cho_quidditch/pose1/eyebrows_2.webp:1674,611,53,57 +images/CG/cho_quidditch/pose1/eyebrows_3.webp:1682,619,51,61 +images/CG/cho_quidditch/pose1/eyes_1.webp:1686,647,67,56 +images/CG/cho_quidditch/pose1/eyes_2.webp:1691,646,61,61 +images/CG/cho_quidditch/pose1/eyes_3.webp:1686,647,67,58 +images/CG/cho_quidditch/pose1/head_1.webp:1631,465,860,438 +images/CG/cho_quidditch/pose1/head_2.webp:1631,465,860,438 +images/CG/cho_quidditch/pose2/body.webp:1151,845,1692,1537 +images/CG/cho_quidditch/pose2/eyebrows_1.webp:1843,588,73,47 +images/CG/cho_quidditch/pose2/eyebrows_2.webp:1844,581,72,50 +images/CG/cho_quidditch/pose2/eyebrows_3.webp:1841,586,78,40 +images/CG/cho_quidditch/pose2/eyes_1.webp:1856,621,71,42 +images/CG/cho_quidditch/pose2/eyes_2.webp:1854,621,67,47 +images/CG/cho_quidditch/pose2/eyes_3.webp:1856,621,71,42 +images/CG/cho_quidditch/pose2/handprint_left.webp:1946,1399,241,286 +images/CG/cho_quidditch/pose2/handprint_right.webp:2125,1387,193,243 +images/CG/cho_quidditch/pose2/head_1.webp:1799,446,830,533 +images/CG/cho_quidditch/pose2/head_2.webp:1799,446,830,533 +images/CG/cho_quidditch/pose2/head_3.webp:1799,446,830,533 +images/CG/cho_quidditch2/background.webp:0,0,2160,1200 +images/CG/cho_quidditch2/cho_sit_snitch.webp:0,88,997,1603 +images/CG/cho_quidditch2/cho_sitting.webp:0,223,751,1468 +images/CG/cho_quidditch2/cho_sitting_snitch.webp:0,88,997,1603 +images/CG/cho_quidditch2/cho_standing.webp:0,0,960,1691 +images/CG/cho_quidditch2/cho_standing_ahegao.webp:0,0,960,1691 +images/CG/cho_quidditch2/cho_standing_panties.webp:0,0,960,1691 +images/CG/cho_quidditch2/cho_standing_panties_down.webp:0,0,960,1691 +images/CG/cho_quidditch2/cho_standing_smile.webp:0,0,960,1691 +images/CG/cho_quidditch2/cho_standing_snitch.webp:0,1,1091,1690 +images/CG/cho_quidditch2/scroll.webp:0,0,500,387 +images/CG/cho_quidditch2/slide/background.webp:0,0,1080,600 +images/CG/cho_quidditch2/slide/cho_sitting.webp:0,356,2467,2021 +images/CG/cho_quidditch2/slide/cho_sitting_snitch.webp:90,356,2287,2021 +images/CG/cho_quidditch2/slide/cho_standing.webp:94,0,2278,2377 +images/CG/cho_quidditch2/slide/cho_standing_naked.webp:94,0,2278,2377 +images/CG/cho_quidditch2/slide/cho_standing_panties.webp:94,0,2278,2377 +images/CG/cho_quidditch2/slide/cho_standing_panties_down.webp:90,0,2286,2377 +images/CG/cho_quidditch2/slide/lines.webp:0,104,1080,390 +images/CG/cho_quidditch2/snitch_0.webp:30,19,323,70 +images/CG/cho_quidditch2/snitch_1.webp:14,49,323,69 +images/CG/cho_quidditch2/squirt.webp:0,0,218,361 +images/CG/cho_sex/background.webp:0,0,4320,2400 +images/CG/cho_sex/blob.webp:0,0,11,10 +images/CG/cho_sex/down/blink.webp:1567,582,1123,1431 +images/CG/cho_sex/down/cho.webp:1567,582,1123,1431 +images/CG/cho_sex/down/cum_inside.webp:2120,1695,121,76 +images/CG/cho_sex/down/genie.webp:632,1579,2998,821 +images/CG/cho_sex/idle/blink.webp:1571,582,1116,1412 +images/CG/cho_sex/idle/cho.webp:1571,582,1116,1412 +images/CG/cho_sex/idle/creampie.webp:2120,1695,121,76 +images/CG/cho_sex/idle/genie.webp:632,1579,2998,821 +images/CG/cho_sex/idle/penis.webp:2126,1534,218,283 +images/CG/cho_sex/idle/penis_cum_inside.webp:2120,747,224,1070 +images/CG/cho_sex/idle/penis_cum_outside.webp:2126,747,218,1070 +images/CG/cho_sex/insert/blink.webp:1750,418,801,1516 +images/CG/cho_sex/insert/cho.webp:1750,418,801,1516 +images/CG/cho_sex/insert/cum_inside.webp:2120,1558,121,230 +images/CG/cho_sex/insert/genie.webp:632,1576,2998,824 +images/CG/cho_sex/middle/blink.webp:1654,518,1033,1455 +images/CG/cho_sex/middle/cho.webp:1654,518,1033,1455 +images/CG/cho_sex/middle/cum_inside.webp:2120,1558,121,213 +images/CG/cho_sex/middle/genie.webp:632,1579,2998,821 +images/CG/cho_sex/speed.webp:1816,1333,711,533 +images/CG/cho_sex/up/blink.webp:1777,417,779,1505 +images/CG/cho_sex/up/cho.webp:1777,417,776,1505 +images/CG/cho_sex/up/cum_inside.webp:2120,1480,121,308 +images/CG/cho_sex/up/cum_outside.webp:2120,747,121,1031 +images/CG/cho_sex/up/cum_outside_spurt.webp:2139,1469,87,168 +images/CG/cho_sex/up/cum_outside_stage1.webp:2037,963,272,674 +images/CG/cho_sex/up/cum_outside_stage2.webp:2037,963,272,674 +images/CG/cho_sex/up/cum_outside_stage3.webp:2037,747,272,999 +images/CG/cho_sex/up/genie.webp:632,1492,2998,908 +images/CG/cho_sex/up/genie_masturbate.webp:632,1534,3116,866 +images/CG/cho_sex/up/genie_masturbate2.webp:632,1534,3116,866 +images/CG/cho_sex/up/penis.webp:2126,1534,218,283 +images/CG/cho_sex/up/penis_inside.webp:2107,1517,237,300 +images/CG/cho_sex/up/speed.webp:2096,1525,191,244 +images/CG/cho_sex/up_taste/blink.webp:1777,417,779,1505 +images/CG/cho_sex/up_taste/cho.webp:1777,417,779,1505 +images/CG/cho_sex/up_taste/cum_inside.webp:2120,747,121,1031 +images/CG/cho_sex/up_taste/cum_outside.webp:2120,747,119,1004 +images/CG/cho_sex/up_taste/cum_outside_stage3.webp:2037,747,272,999 +images/CG/cho_sex/up_taste/genie.webp:632,1492,2998,908 +images/CG/cho_sex/up_taste/penis.webp:2126,1534,218,283 +images/CG/cho_sex/up_taste/penis_inside.webp:2107,1517,237,300 +images/CG/common/bg.webp:0,0,2160,1200 +images/CG/common/day_overlay.webp:0,0,3840,2160 +images/CG/common/mask.webp:0,0,2160,1200 +images/CG/common/night_overlay.webp:0,0,3840,2160 +images/CG/e2.webp:0,0,1080,723 +images/CG/e3.webp:0,0,1080,723 +images/CG/e4.webp:0,0,1080,723 +images/CG/e5.webp:0,0,1080,723 +images/CG/e6.webp:0,0,1080,723 +images/CG/e7.webp:0,0,1080,723 +images/CG/her_intro/bg.webp:0,0,2160,1200 +images/CG/her_intro/day_overlay.webp:0,0,3840,2160 +images/CG/her_intro/hermione_bendover.webp:1381,333,622,839 +images/CG/her_intro/mask.webp:0,0,2160,1200 +images/CG/her_intro/night_overlay.webp:0,0,3840,2160 +images/CG/her_potions/ass_expand/classroom_a1.webp:0,0,4320,2400 +images/CG/her_potions/ass_expand/classroom_a2.webp:0,0,4320,2400 +images/CG/her_potions/breast_expand/classroom_a1.webp:0,0,4320,2400 +images/CG/her_potions/breast_expand/classroom_a2.webp:0,0,4320,2400 +images/CG/her_potions/breast_expand/classroom_b1.webp:0,0,4320,2400 +images/CG/her_potions/breast_expand/classroom_b2.webp:0,0,4320,2400 +images/CG/her_potions/breast_expand/corridor_a1.webp:0,0,4320,2400 +images/CG/her_potions/breast_expand/corridor_b1.webp:0,0,4320,2400 +images/CG/her_sex/background.webp:0,0,2500,2550 +images/CG/her_sex/caress_armfix.webp:878,1112,1009,745 +images/CG/her_sex/day_overlay.webp:0,0,2500,2550 +images/CG/her_sex/foreground.webp:1157,1423,741,769 +images/CG/her_sex/genie_after.webp:395,130,1521,1787 +images/CG/her_sex/genie_caress.webp:394,128,1517,1767 +images/CG/her_sex/genie_caress_grin.webp:394,128,1517,1767 +images/CG/her_sex/genie_cum_inside.webp:395,130,1521,1787 +images/CG/her_sex/genie_cum_outside.webp:395,130,1521,1787 +images/CG/her_sex/genie_cum_outside2.webp:395,130,1521,1787 +images/CG/her_sex/genie_grab.webp:395,130,1521,1787 +images/CG/her_sex/genie_grab_grin.webp:395,130,1521,1787 +images/CG/her_sex/genie_hold.webp:394,128,1596,1767 +images/CG/her_sex/genie_hold_grin.webp:394,128,1596,1767 +images/CG/her_sex/grab_armfix.webp:1352,1232,394,562 +images/CG/her_sex/hold_armfix.webp:878,640,1102,1004 +images/CG/her_sex/night_overlay.webp:0,0,2500,2550 +images/CG/her_sex/open_wide_tongue.webp:542,1616,226,176 +images/CG/her_sex/scream.webp:542,1616,226,175 +images/CG/herm_boob/1.webp:91,0,903,600 +images/CG/herm_boob/10.webp:284,0,710,600 +images/CG/herm_boob/11.webp:284,0,710,600 +images/CG/herm_boob/12.webp:284,0,710,600 +images/CG/herm_boob/13.webp:284,0,710,600 +images/CG/herm_boob/14.webp:284,0,710,600 +images/CG/herm_boob/15.webp:247,0,747,600 +images/CG/herm_boob/16.webp:247,0,747,600 +images/CG/herm_boob/17.webp:247,0,747,600 +images/CG/herm_boob/18.webp:300,0,694,600 +images/CG/herm_boob/19.webp:300,0,694,600 +images/CG/herm_boob/2.webp:91,0,903,600 +images/CG/herm_boob/20.webp:193,0,846,600 +images/CG/herm_boob/21.webp:193,0,846,600 +images/CG/herm_boob/22.webp:193,0,846,600 +images/CG/herm_boob/23.webp:193,0,846,600 +images/CG/herm_boob/24.webp:193,0,846,600 +images/CG/herm_boob/25.webp:193,0,846,600 +images/CG/herm_boob/26.webp:193,0,846,600 +images/CG/herm_boob/27.webp:193,0,846,600 +images/CG/herm_boob/28.webp:300,0,694,600 +images/CG/herm_boob/29.webp:300,0,694,600 +images/CG/herm_boob/3.webp:91,0,903,600 +images/CG/herm_boob/30.webp:193,0,846,600 +images/CG/herm_boob/31.webp:193,0,846,600 +images/CG/herm_boob/32.webp:300,0,694,600 +images/CG/herm_boob/33.webp:300,0,694,600 +images/CG/herm_boob/34.webp:300,0,694,600 +images/CG/herm_boob/35.webp:300,0,694,600 +images/CG/herm_boob/36.webp:300,0,694,600 +images/CG/herm_boob/37.webp:300,0,694,600 +images/CG/herm_boob/4.webp:91,0,903,600 +images/CG/herm_boob/5.webp:284,0,710,600 +images/CG/herm_boob/6.webp:284,0,710,600 +images/CG/herm_boob/7.webp:284,0,710,600 +images/CG/herm_boob/8.webp:284,0,710,600 +images/CG/herm_boob/9.webp:284,0,710,600 +images/CG/herm_boob/base.webp:0,0,1080,600 +images/CG/herm_boob/blank.webp:0,0,0,0 +images/CG/herm_deep/base.webp:0,0,1080,600 +images/CG/herm_deep/blank.webp:0,0,0,0 +images/CG/herm_deep/body_base.webp:283,50,631,550 +images/CG/herm_deep/c_blush.webp:697,182,134,130 +images/CG/herm_deep/cum.webp:726,168,354,412 +images/CG/herm_deep/cum_2.webp:367,90,403,510 +images/CG/herm_deep/eb_mad.webp:664,155,74,107 +images/CG/herm_deep/eb_raised.webp:666,156,72,108 +images/CG/herm_deep/eb_sad.webp:678,150,55,112 +images/CG/herm_deep/eye_base.webp:697,172,69,86 +images/CG/herm_deep/eye_closed.webp:701,173,75,89 +images/CG/herm_deep/eye_happyCl.webp:704,174,59,88 +images/CG/herm_deep/eye_squeeze.webp:685,174,89,96 +images/CG/herm_deep/eye_squint.webp:697,172,79,90 +images/CG/herm_deep/eye_squint_m.webp:697,172,79,95 +images/CG/herm_deep/eye_white.webp:705,188,50,53 +images/CG/herm_deep/genie.webp:470,0,610,600 +images/CG/herm_deep/hand.webp:357,0,358,310 +images/CG/herm_deep/m_base.webp:0,0,0,0 +images/CG/herm_deep/m_full.webp:712,239,160,174 +images/CG/herm_deep/mascara.webp:699,204,115,220 +images/CG/herm_deep/pup_ahegao.webp:710,188,22,19 +images/CG/herm_deep/pup_left.webp:706,210,22,24 +images/CG/herm_deep/pup_mid.webp:718,195,23,24 +images/CG/herm_deep/pup_right.webp:730,204,23,24 +images/CG/herm_deep/pup_up.webp:709,188,22,21 +images/CG/herm_deep/sweat.webp:647,168,183,319 +images/CG/herm_deep/tears.webp:699,206,134,226 +images/CG/herm_forest/1.webp:367,0,713,600 +images/CG/herm_forest/10.webp:367,0,713,600 +images/CG/herm_forest/11.webp:367,0,713,600 +images/CG/herm_forest/12.webp:367,0,713,600 +images/CG/herm_forest/13.webp:367,0,713,600 +images/CG/herm_forest/14.webp:366,0,714,600 +images/CG/herm_forest/15.webp:367,0,713,600 +images/CG/herm_forest/16.webp:366,0,714,600 +images/CG/herm_forest/17.webp:367,0,713,600 +images/CG/herm_forest/18.webp:366,0,714,600 +images/CG/herm_forest/19.webp:367,0,713,600 +images/CG/herm_forest/2.webp:367,0,713,600 +images/CG/herm_forest/20.webp:367,0,713,600 +images/CG/herm_forest/21.webp:367,0,713,600 +images/CG/herm_forest/22.webp:132,0,948,600 +images/CG/herm_forest/23.webp:132,0,948,600 +images/CG/herm_forest/24.webp:132,0,948,600 +images/CG/herm_forest/25.webp:132,0,948,600 +images/CG/herm_forest/26.webp:132,0,948,600 +images/CG/herm_forest/27.webp:132,0,948,600 +images/CG/herm_forest/28.webp:132,0,948,600 +images/CG/herm_forest/29.webp:132,0,948,600 +images/CG/herm_forest/3.webp:367,0,713,600 +images/CG/herm_forest/30.webp:132,0,948,600 +images/CG/herm_forest/31.webp:132,0,948,600 +images/CG/herm_forest/32.webp:132,0,948,600 +images/CG/herm_forest/33.webp:132,0,948,600 +images/CG/herm_forest/34.webp:132,0,948,600 +images/CG/herm_forest/35.webp:132,0,948,600 +images/CG/herm_forest/36.webp:132,0,948,600 +images/CG/herm_forest/37.webp:132,0,948,600 +images/CG/herm_forest/38.webp:132,0,948,600 +images/CG/herm_forest/39.webp:132,0,948,600 +images/CG/herm_forest/4.webp:366,0,714,600 +images/CG/herm_forest/40.webp:132,0,948,600 +images/CG/herm_forest/41.webp:132,0,948,600 +images/CG/herm_forest/42.webp:132,0,948,600 +images/CG/herm_forest/43.webp:366,0,714,600 +images/CG/herm_forest/44.webp:132,0,948,600 +images/CG/herm_forest/45.webp:367,0,713,600 +images/CG/herm_forest/46.webp:367,0,713,600 +images/CG/herm_forest/47.webp:367,0,713,600 +images/CG/herm_forest/48.webp:367,0,713,600 +images/CG/herm_forest/49.webp:367,0,713,600 +images/CG/herm_forest/5.webp:367,0,713,600 +images/CG/herm_forest/50.webp:367,0,713,600 +images/CG/herm_forest/6.webp:367,0,713,600 +images/CG/herm_forest/7.webp:366,0,714,600 +images/CG/herm_forest/8.webp:366,0,714,600 +images/CG/herm_forest/9.webp:367,0,713,600 +images/CG/herm_forest/base.webp:0,0,1080,600 +images/CG/herm_forest/blank.webp:0,0,0,0 +images/CG/herm_forest/m1.webp:121,0,484,600 +images/CG/herm_forest/m2.webp:267,0,484,600 +images/CG/herm_forest/m3.webp:0,0,651,600 +images/CG/herm_forest/overlay.webp:0,0,1080,600 +images/CG/herm_sex/1.webp:0,0,1080,600 +images/CG/herm_sex/10.webp:0,0,1080,600 +images/CG/herm_sex/11.webp:0,0,1080,600 +images/CG/herm_sex/12.webp:0,0,1080,600 +images/CG/herm_sex/13.webp:0,0,1080,600 +images/CG/herm_sex/14.webp:0,0,1080,600 +images/CG/herm_sex/15.webp:0,0,1080,600 +images/CG/herm_sex/16.webp:0,0,1080,600 +images/CG/herm_sex/17.webp:0,0,1080,600 +images/CG/herm_sex/18.webp:0,0,1080,600 +images/CG/herm_sex/19.webp:0,0,1080,600 +images/CG/herm_sex/2.webp:0,0,1080,600 +images/CG/herm_sex/20.webp:0,0,1080,600 +images/CG/herm_sex/21.webp:0,0,1080,600 +images/CG/herm_sex/22.webp:0,0,1080,600 +images/CG/herm_sex/23.webp:0,0,1080,600 +images/CG/herm_sex/24.webp:0,0,1080,600 +images/CG/herm_sex/25.webp:0,0,1080,600 +images/CG/herm_sex/26.webp:0,0,1080,600 +images/CG/herm_sex/27.webp:0,0,1080,600 +images/CG/herm_sex/28.webp:0,0,1080,600 +images/CG/herm_sex/29.webp:0,0,1080,600 +images/CG/herm_sex/3.webp:0,0,1080,600 +images/CG/herm_sex/30.webp:0,0,1080,600 +images/CG/herm_sex/31.webp:0,0,1080,600 +images/CG/herm_sex/32.webp:0,0,1080,600 +images/CG/herm_sex/33.webp:0,0,1080,600 +images/CG/herm_sex/34.webp:0,0,1080,600 +images/CG/herm_sex/35.webp:0,0,1080,600 +images/CG/herm_sex/4.webp:0,0,1080,600 +images/CG/herm_sex/5.webp:0,0,1080,600 +images/CG/herm_sex/6.webp:0,0,1080,600 +images/CG/herm_sex/7.webp:0,0,1080,600 +images/CG/herm_sex/8.webp:0,0,1080,600 +images/CG/herm_sex/9.webp:0,0,1080,600 +images/CG/herm_sex/base.webp:0,0,1080,600 +images/CG/herm_sex/blank.webp:0,0,0,0 +images/CG/herm_sex/genie_hand.webp:469,198,98,34 +images/CG/herm_sex/hair.webp:432,246,152,98 +images/CG/herm_sex/p1.webp:290,324,31,61 +images/CG/herm_sex/p2.webp:288,226,212,162 +images/CG/herm_sex/s1.webp:233,360,205,154 +images/CG/herm_sex/s2.webp:193,310,461,210 +images/CG/herm_sex/s3.webp:193,310,461,210 +images/CG/herm_sex/s4.webp:277,226,223,224 +images/CG/herm_sex/s5.webp:237,226,461,230 +images/CG/lun_intro/bg.webp:0,0,2160,1200 +images/CG/lun_intro/day_overlay.webp:0,0,3840,2160 +images/CG/lun_intro/luna.webp:917,277,1149,891 +images/CG/lun_intro/luna_naked.webp:917,277,1138,892 +images/CG/lun_intro/night_overlay.webp:0,0,3840,2160 +images/CG/luna_bedsex/base.webp:0,0,1080,600 +images/CG/luna_bedsex/blank.webp:0,0,0,0 +images/CG/luna_bedsex/c_base.webp:496,107,81,38 +images/CG/luna_bedsex/c_blush.webp:496,109,81,35 +images/CG/luna_bedsex/cum_1.webp:390,417,124,68 +images/CG/luna_bedsex/curly_hair.webp:460,27,280,400 +images/CG/luna_bedsex/curly_hair_top.webp:494,43,246,384 +images/CG/luna_bedsex/eb_angry.webp:502,87,73,19 +images/CG/luna_bedsex/eb_base.webp:503,85,72,43 +images/CG/luna_bedsex/eb_mad.webp:502,86,73,102 +images/CG/luna_bedsex/eb_raised.webp:501,85,84,91 +images/CG/luna_bedsex/eb_sad.webp:503,87,70,19 +images/CG/luna_bedsex/eye_angry.webp:503,91,72,64 +images/CG/luna_bedsex/eye_base.webp:502,93,72,62 +images/CG/luna_bedsex/eye_closed.webp:504,94,66,28 +images/CG/luna_bedsex/eye_excited.webp:503,93,72,23 +images/CG/luna_bedsex/eye_furious.webp:503,91,113,64 +images/CG/luna_bedsex/eye_happyCl.webp:505,96,65,22 +images/CG/luna_bedsex/eye_seductive.webp:506,91,63,55 +images/CG/luna_bedsex/eye_tired.webp:503,91,72,64 +images/CG/luna_bedsex/eye_white.webp:507,97,61,21 +images/CG/luna_bedsex/eye_wide.webp:505,93,67,26 +images/CG/luna_bedsex/eye_wink.webp:506,96,68,59 +images/CG/luna_bedsex/fade.webp:0,0,1080,600 +images/CG/luna_bedsex/glasses.webp:492,85,173,138 +images/CG/luna_bedsex/hand.webp:415,59,107,92 +images/CG/luna_bedsex/luna_base.webp:0,0,1080,600 +images/CG/luna_bedsex/m_base.webp:517,142,26,12 +images/CG/luna_bedsex/m_open.webp:518,140,38,38 +images/CG/luna_bedsex/m_open_tongue.webp:518,140,38,38 +images/CG/luna_bedsex/m_pout.webp:512,141,34,16 +images/CG/luna_bedsex/m_talk.webp:517,142,18,16 +images/CG/luna_bedsex/m_wide.webp:513,137,50,50 +images/CG/luna_bedsex/m_wide_tongue.webp:512,137,51,50 +images/CG/luna_bedsex/overlay.webp:0,0,1080,600 +images/CG/luna_bedsex/playful_hair.webp:460,27,280,400 +images/CG/luna_bedsex/playful_hair_top.webp:494,43,246,384 +images/CG/luna_bedsex/pup_ahegao.webp:514,98,41,13 +images/CG/luna_bedsex/pup_dick.webp:511,104,49,14 +images/CG/luna_bedsex/pup_dl.webp:509,101,49,17 +images/CG/luna_bedsex/pup_dr.webp:516,105,49,13 +images/CG/luna_bedsex/pup_left.webp:508,100,47,17 +images/CG/luna_bedsex/pup_right.webp:516,99,49,17 +images/CG/luna_bedsex/pup_ul.webp:508,97,47,13 +images/CG/luna_bedsex/pup_up.webp:512,97,49,14 +images/CG/luna_bedsex/pup_ur.webp:516,98,49,15 +images/CG/luna_bedsex/short_hair.webp:487,25,262,211 +images/CG/luna_bedsex/short_hair_top.webp:487,25,262,211 +images/CG/luna_bedsex/speed.webp:357,303,253,217 +images/CG/luna_bj/1.webp:104,1,923,599 +images/CG/luna_bj/10.webp:74,0,923,600 +images/CG/luna_bj/11.webp:74,0,923,600 +images/CG/luna_bj/12.webp:26,23,938,577 +images/CG/luna_bj/13.webp:26,23,938,577 +images/CG/luna_bj/14.webp:26,23,938,577 +images/CG/luna_bj/15.webp:26,23,938,577 +images/CG/luna_bj/16.webp:38,48,887,552 +images/CG/luna_bj/17.webp:38,48,887,552 +images/CG/luna_bj/18.webp:38,48,887,552 +images/CG/luna_bj/19.webp:38,48,887,552 +images/CG/luna_bj/2.webp:104,1,923,599 +images/CG/luna_bj/20.webp:28,58,887,542 +images/CG/luna_bj/21.webp:28,58,887,542 +images/CG/luna_bj/22.webp:28,58,887,542 +images/CG/luna_bj/23.webp:28,58,887,542 +images/CG/luna_bj/24.webp:28,58,887,542 +images/CG/luna_bj/25.webp:28,58,887,542 +images/CG/luna_bj/26.webp:28,58,887,542 +images/CG/luna_bj/27.webp:26,23,938,577 +images/CG/luna_bj/28.webp:104,1,923,599 +images/CG/luna_bj/29.webp:104,1,923,599 +images/CG/luna_bj/3.webp:104,1,923,599 +images/CG/luna_bj/30.webp:104,1,923,599 +images/CG/luna_bj/31.webp:38,48,887,552 +images/CG/luna_bj/32.webp:38,48,887,552 +images/CG/luna_bj/33.webp:104,1,923,599 +images/CG/luna_bj/35.webp:104,1,923,599 +images/CG/luna_bj/36.webp:104,1,923,599 +images/CG/luna_bj/37.webp:104,1,923,599 +images/CG/luna_bj/38.webp:104,1,923,599 +images/CG/luna_bj/39.webp:104,1,923,599 +images/CG/luna_bj/4.webp:74,0,923,600 +images/CG/luna_bj/40.webp:104,1,923,599 +images/CG/luna_bj/41.webp:104,1,923,599 +images/CG/luna_bj/42.webp:104,1,923,599 +images/CG/luna_bj/43.webp:104,1,923,599 +images/CG/luna_bj/44.webp:104,1,923,599 +images/CG/luna_bj/45.webp:26,23,938,577 +images/CG/luna_bj/46.webp:104,1,923,599 +images/CG/luna_bj/47.webp:104,1,923,599 +images/CG/luna_bj/48.webp:104,1,923,599 +images/CG/luna_bj/49.webp:104,1,923,599 +images/CG/luna_bj/5.webp:74,0,923,600 +images/CG/luna_bj/50.webp:4,66,1064,534 +images/CG/luna_bj/51.webp:4,66,1064,534 +images/CG/luna_bj/52.webp:38,48,887,552 +images/CG/luna_bj/53.webp:38,48,887,552 +images/CG/luna_bj/54.webp:4,66,1064,534 +images/CG/luna_bj/55.webp:4,66,1064,534 +images/CG/luna_bj/56.webp:4,66,1064,534 +images/CG/luna_bj/57.webp:4,66,1064,534 +images/CG/luna_bj/58.webp:38,48,887,552 +images/CG/luna_bj/59.webp:104,1,923,599 +images/CG/luna_bj/6.webp:74,0,923,600 +images/CG/luna_bj/60.webp:104,1,923,599 +images/CG/luna_bj/61.webp:104,1,923,599 +images/CG/luna_bj/62.webp:104,1,923,599 +images/CG/luna_bj/63.webp:104,1,923,599 +images/CG/luna_bj/64.webp:104,1,923,599 +images/CG/luna_bj/65.webp:104,1,923,599 +images/CG/luna_bj/66.webp:16,1,1011,599 +images/CG/luna_bj/67.webp:16,1,1011,599 +images/CG/luna_bj/7.webp:74,0,923,600 +images/CG/luna_bj/8.webp:74,0,923,600 +images/CG/luna_bj/9.webp:74,0,923,600 +images/CG/luna_bj/base.webp:0,0,1080,600 +images/CG/luna_bj/blank.webp:0,0,0,0 +images/CG/luna_bj/gene.webp:0,0,780,600 +images/CG/luna_bj/herm.webp:538,0,542,600 +images/CG/luna_desk/1.webp:13,67,923,533 +images/CG/luna_desk/10.webp:13,67,923,533 +images/CG/luna_desk/11.webp:13,67,923,533 +images/CG/luna_desk/12.webp:13,67,923,533 +images/CG/luna_desk/13.webp:13,67,923,533 +images/CG/luna_desk/14.webp:13,67,923,533 +images/CG/luna_desk/15.webp:13,67,923,533 +images/CG/luna_desk/16.webp:155,48,887,552 +images/CG/luna_desk/17.webp:155,48,887,552 +images/CG/luna_desk/18.webp:155,48,887,552 +images/CG/luna_desk/19.webp:155,48,887,552 +images/CG/luna_desk/2.webp:13,67,923,533 +images/CG/luna_desk/20.webp:155,48,887,552 +images/CG/luna_desk/21.webp:155,48,887,552 +images/CG/luna_desk/22.webp:3,11,923,589 +images/CG/luna_desk/23.webp:3,11,923,589 +images/CG/luna_desk/24.webp:3,11,923,589 +images/CG/luna_desk/25.webp:3,11,923,589 +images/CG/luna_desk/26.webp:3,11,923,589 +images/CG/luna_desk/27.webp:155,48,887,552 +images/CG/luna_desk/28.webp:155,48,887,552 +images/CG/luna_desk/29.webp:210,66,866,534 +images/CG/luna_desk/3.webp:13,67,923,533 +images/CG/luna_desk/30.webp:155,48,887,552 +images/CG/luna_desk/31.webp:155,48,887,552 +images/CG/luna_desk/32.webp:116,23,938,577 +images/CG/luna_desk/33.webp:116,23,938,577 +images/CG/luna_desk/34.webp:0,45,924,555 +images/CG/luna_desk/35.webp:0,45,924,555 +images/CG/luna_desk/36.webp:0,67,937,533 +images/CG/luna_desk/37.webp:0,67,937,533 +images/CG/luna_desk/38.webp:0,67,937,533 +images/CG/luna_desk/39.webp:0,67,937,533 +images/CG/luna_desk/4.webp:13,67,923,533 +images/CG/luna_desk/40.webp:0,67,937,533 +images/CG/luna_desk/41.webp:0,67,937,533 +images/CG/luna_desk/42.webp:0,67,937,533 +images/CG/luna_desk/43.webp:0,67,937,533 +images/CG/luna_desk/44.webp:0,67,937,533 +images/CG/luna_desk/45.webp:0,67,937,533 +images/CG/luna_desk/46.webp:0,67,937,533 +images/CG/luna_desk/47.webp:0,67,937,533 +images/CG/luna_desk/48.webp:0,67,937,533 +images/CG/luna_desk/49.webp:0,67,937,533 +images/CG/luna_desk/5.webp:13,67,923,533 +images/CG/luna_desk/50.webp:0,67,937,533 +images/CG/luna_desk/51.webp:0,67,937,533 +images/CG/luna_desk/52.webp:0,67,937,533 +images/CG/luna_desk/53.webp:26,55,1028,545 +images/CG/luna_desk/54.webp:0,67,937,533 +images/CG/luna_desk/55.webp:0,67,937,533 +images/CG/luna_desk/56.webp:124,11,923,589 +images/CG/luna_desk/57.webp:163,42,917,558 +images/CG/luna_desk/58.webp:163,42,917,558 +images/CG/luna_desk/6.webp:13,67,923,533 +images/CG/luna_desk/7.webp:13,67,923,533 +images/CG/luna_desk/8.webp:13,67,923,533 +images/CG/luna_desk/9.webp:13,67,923,533 +images/CG/luna_desk/base.webp:0,0,1080,600 +images/CG/luna_desk/blank.webp:0,0,0,0 +images/CG/luna_desk/f44.webp:0,67,937,533 +images/CG/luna_desk/genie.webp:300,0,780,600 +images/CG/luna_desk/l1.webp:155,48,887,552 +images/CG/luna_desk/l10.webp:20,55,1028,545 +images/CG/luna_desk/l2.webp:173,66,887,534 +images/CG/luna_desk/l3.webp:189,79,887,521 +images/CG/luna_desk/l4.webp:9,11,1064,589 +images/CG/luna_desk/l5.webp:30,26,1025,574 +images/CG/luna_desk/l6.webp:160,44,917,556 +images/CG/luna_desk/l7.webp:82,7,973,593 +images/CG/luna_desk/l8.webp:99,19,973,581 +images/CG/luna_desk/l9.webp:2,39,1068,561 +images/CG/luna_desk2/base.webp:0,0,1080,600 +images/CG/luna_desk2/base_2.webp:0,0,814,600 +images/CG/luna_desk2/blank.webp:0,0,0,0 +images/CG/luna_desk2/border.webp:0,0,1120,640 +images/CG/luna_desk2/c_base.webp:483,284,202,98 +images/CG/luna_desk2/c_blush.webp:483,287,202,95 +images/CG/luna_desk2/cum_1.webp:387,162,229,426 +images/CG/luna_desk2/cum_2.webp:367,168,303,432 +images/CG/luna_desk2/cum_3.webp:367,162,303,438 +images/CG/luna_desk2/cum_4.webp:606,353,33,28 +images/CG/luna_desk2/cum_5.webp:582,395,26,13 +images/CG/luna_desk2/curly_hair.webp:56,69,718,531 +images/CG/luna_desk2/curly_hair_top.webp:169,69,573,425 +images/CG/luna_desk2/dick_0.webp:611,391,206,183 +images/CG/luna_desk2/dick_1.webp:611,391,206,183 +images/CG/luna_desk2/dick_10.webp:663,428,155,146 +images/CG/luna_desk2/dick_11.webp:671,435,147,139 +images/CG/luna_desk2/dick_12.webp:676,442,142,132 +images/CG/luna_desk2/dick_13.webp:683,448,135,126 +images/CG/luna_desk2/dick_14.webp:690,452,128,122 +images/CG/luna_desk2/dick_15.webp:695,458,123,116 +images/CG/luna_desk2/dick_16.webp:697,457,121,117 +images/CG/luna_desk2/dick_2.webp:611,391,206,183 +images/CG/luna_desk2/dick_3.webp:613,392,205,182 +images/CG/luna_desk2/dick_4.webp:614,397,204,177 +images/CG/luna_desk2/dick_5.webp:622,405,196,169 +images/CG/luna_desk2/dick_6.webp:630,393,188,181 +images/CG/luna_desk2/dick_7.webp:641,404,177,170 +images/CG/luna_desk2/dick_8.webp:645,416,173,158 +images/CG/luna_desk2/dick_9.webp:656,421,162,153 +images/CG/luna_desk2/down_N.webp:548,279,105,28 +images/CG/luna_desk2/eb_angry.webp:500,242,180,37 +images/CG/luna_desk2/eb_base.webp:502,233,175,106 +images/CG/luna_desk2/eb_mad.webp:497,239,180,244 +images/CG/luna_desk2/eb_raised.webp:453,240,224,229 +images/CG/luna_desk2/eb_sad.webp:503,242,174,34 +images/CG/luna_desk2/eye_angry.webp:382,243,293,161 +images/CG/luna_desk2/eye_base.webp:499,254,178,150 +images/CG/luna_desk2/eye_closed.webp:507,262,163,48 +images/CG/luna_desk2/eye_excited.webp:499,254,178,150 +images/CG/luna_desk2/eye_happyCl.webp:507,262,163,48 +images/CG/luna_desk2/eye_mad.webp:499,243,176,161 +images/CG/luna_desk2/eye_sad.webp:507,243,161,137 +images/CG/luna_desk2/eye_seductive.webp:507,243,164,137 +images/CG/luna_desk2/eye_white.webp:515,264,149,45 +images/CG/luna_desk2/eye_wide.webp:505,258,168,52 +images/CG/luna_desk2/eye_wink.webp:499,258,169,146 +images/CG/luna_desk2/genie.webp:300,0,780,600 +images/CG/luna_desk2/genie_robe.webp:749,0,331,600 +images/CG/luna_desk2/glasses.webp:228,242,488,323 +images/CG/luna_desk2/hand.webp:436,33,260,153 +images/CG/luna_desk2/luna_base.webp:127,149,862,651 +images/CG/luna_desk2/luna_base_2.webp:127,149,862,651 +images/CG/luna_desk2/m_base.webp:564,381,62,25 +images/CG/luna_desk2/m_full.webp:464,319,221,125 +images/CG/luna_desk2/m_open.webp:523,376,100,85 +images/CG/luna_desk2/m_open_tongue.webp:523,376,100,85 +images/CG/luna_desk2/m_pout.webp:570,375,81,31 +images/CG/luna_desk2/m_sucking.webp:464,326,171,156 +images/CG/luna_desk2/m_talk.webp:582,380,44,36 +images/CG/luna_desk2/m_wide.webp:513,368,122,114 +images/CG/luna_desk2/m_wide_tongue.webp:513,368,122,114 +images/CG/luna_desk2/mascara.webp:516,292,146,130 +images/CG/luna_desk2/playful_hair.webp:54,68,721,532 +images/CG/luna_desk2/playful_hair_top.webp:54,68,689,532 +images/CG/luna_desk2/pup_ahegao.webp:547,262,101,34 +images/CG/luna_desk2/pup_base.webp:540,267,117,37 +images/CG/luna_desk2/pup_dick.webp:540,277,117,34 +images/CG/luna_desk2/pup_dl.webp:523,283,117,32 +images/CG/luna_desk2/pup_down.webp:534,280,117,32 +images/CG/luna_desk2/pup_left.webp:529,267,117,37 +images/CG/luna_desk2/pup_right.webp:540,267,117,37 +images/CG/luna_desk2/pup_up.webp:540,259,117,36 +images/CG/luna_desk2/short_hair.webp:54,68,667,532 +images/CG/luna_desk2/short_hair_top.webp:54,68,662,532 +images/CG/luna_desk2/tears.webp:516,292,143,140 +images/CG/luna_desk2/up_N.webp:548,267,105,28 +images/CG/luna_facial/1.webp:43,1,923,599 +images/CG/luna_facial/10.webp:93,21,923,579 +images/CG/luna_facial/11.webp:93,21,923,579 +images/CG/luna_facial/12.webp:93,21,923,579 +images/CG/luna_facial/13.webp:93,21,923,579 +images/CG/luna_facial/14.webp:93,21,923,579 +images/CG/luna_facial/15.webp:93,21,923,579 +images/CG/luna_facial/16.webp:93,21,923,579 +images/CG/luna_facial/17.webp:93,21,923,579 +images/CG/luna_facial/18.webp:93,21,923,579 +images/CG/luna_facial/19.webp:93,21,923,579 +images/CG/luna_facial/2.webp:43,1,923,599 +images/CG/luna_facial/20.webp:93,21,923,579 +images/CG/luna_facial/21.webp:93,21,923,579 +images/CG/luna_facial/22.webp:93,21,923,579 +images/CG/luna_facial/23.webp:93,21,923,579 +images/CG/luna_facial/24.webp:93,21,923,579 +images/CG/luna_facial/25.webp:93,21,923,579 +images/CG/luna_facial/26.webp:93,21,923,579 +images/CG/luna_facial/27.webp:93,21,923,579 +images/CG/luna_facial/28.webp:93,21,923,579 +images/CG/luna_facial/29.webp:93,21,923,579 +images/CG/luna_facial/3.webp:43,1,923,599 +images/CG/luna_facial/30.webp:93,21,923,579 +images/CG/luna_facial/31.webp:93,21,923,579 +images/CG/luna_facial/32.webp:93,21,923,579 +images/CG/luna_facial/33.webp:93,21,923,579 +images/CG/luna_facial/4.webp:43,1,923,599 +images/CG/luna_facial/5.webp:43,1,923,599 +images/CG/luna_facial/6.webp:43,1,923,599 +images/CG/luna_facial/7.webp:43,1,923,599 +images/CG/luna_facial/8.webp:93,21,923,579 +images/CG/luna_facial/9.webp:93,21,923,579 +images/CG/luna_facial/base.webp:0,0,1080,600 +images/CG/luna_facial/blank.webp:0,0,0,0 +images/CG/luna_facial/genie.webp:300,0,780,600 +images/CG/luna_fucking/base.webp:0,0,1080,600 +images/CG/luna_fucking/base_2.webp:0,0,795,600 +images/CG/luna_fucking/blank.webp:0,0,0,0 +images/CG/luna_fucking/c_base.webp:748,191,83,39 +images/CG/luna_fucking/c_blush.webp:748,188,82,42 +images/CG/luna_fucking/cum_1.webp:533,121,223,479 +images/CG/luna_fucking/cum_2.webp:533,121,292,479 +images/CG/luna_fucking/cum_3.webp:533,121,292,479 +images/CG/luna_fucking/cum_4.webp:0,0,0,0 +images/CG/luna_fucking/curly_hair.webp:535,74,384,412 +images/CG/luna_fucking/curly_hair_top.webp:535,74,384,412 +images/CG/luna_fucking/dick_0.webp:0,0,0,0 +images/CG/luna_fucking/eb_angry.webp:757,167,72,28 +images/CG/luna_fucking/eb_base.webp:757,170,72,43 +images/CG/luna_fucking/eb_mad.webp:752,171,77,96 +images/CG/luna_fucking/eb_raised.webp:734,170,95,92 +images/CG/luna_fucking/eb_sad.webp:757,171,72,20 +images/CG/luna_fucking/eye_angry.webp:706,171,122,66 +images/CG/luna_fucking/eye_base.webp:759,177,69,60 +images/CG/luna_fucking/eye_closed.webp:759,179,66,26 +images/CG/luna_fucking/eye_excited.webp:706,177,122,60 +images/CG/luna_fucking/eye_furious.webp:706,171,122,66 +images/CG/luna_fucking/eye_happyCl.webp:759,178,67,26 +images/CG/luna_fucking/eye_mad.webp:706,171,122,66 +images/CG/luna_fucking/eye_seductive.webp:758,171,68,55 +images/CG/luna_fucking/eye_tired.webp:758,171,67,55 +images/CG/luna_fucking/eye_white.webp:762,180,61,23 +images/CG/luna_fucking/eye_wide.webp:758,177,69,27 +images/CG/luna_fucking/eye_wink.webp:759,177,66,60 +images/CG/luna_fucking/fade.webp:0,205,1080,395 +images/CG/luna_fucking/glasses.webp:636,166,209,119 +images/CG/luna_fucking/lake_1.webp:0,0,1080,600 +images/CG/luna_fucking/lake_2.webp:0,0,1080,600 +images/CG/luna_fucking/luna_base.webp:180,0,771,600 +images/CG/luna_fucking/m_base.webp:780,230,26,11 +images/CG/luna_fucking/m_open.webp:762,228,43,31 +images/CG/luna_fucking/m_open_tongue.webp:762,228,43,31 +images/CG/luna_fucking/m_pout.webp:777,230,31,13 +images/CG/luna_fucking/m_wide.webp:759,225,51,36 +images/CG/luna_fucking/m_wide_tongue.webp:759,225,51,38 +images/CG/luna_fucking/mascara.webp:762,191,63,32 +images/CG/luna_fucking/playful_hair.webp:568,86,343,384 +images/CG/luna_fucking/playful_hair_top.webp:743,133,95,144 +images/CG/luna_fucking/pup_ahegao.webp:775,180,42,16 +images/CG/luna_fucking/pup_base.webp:771,182,51,19 +images/CG/luna_fucking/pup_dl.webp:765,187,50,16 +images/CG/luna_fucking/pup_dr.webp:774,187,49,16 +images/CG/luna_fucking/pup_left.webp:764,181,51,19 +images/CG/luna_fucking/pup_right.webp:774,182,49,19 +images/CG/luna_fucking/pup_up.webp:771,180,51,16 +images/CG/luna_fucking/short_hair.webp:549,98,301,196 +images/CG/luna_fucking/short_hair_top.webp:549,98,301,196 +images/CG/luna_fucking/spanking.webp:511,337,88,87 +images/CG/luna_fucking/speed.webp:480,272,148,271 +images/CG/luna_fucking/tears.webp:761,191,63,32 +images/CG/luna_kiss/1.webp:41,0,1039,600 +images/CG/luna_kiss/2.webp:41,0,1039,600 +images/CG/luna_kiss/base.webp:0,0,1080,600 +images/CG/luna_kiss/blank.webp:0,0,0,0 +images/CG/luna_sex/base.webp:0,0,1080,634 +images/CG/luna_sex/blank.webp:0,0,0,0 +images/CG/luna_sex/herm_1.webp:432,0,545,634 +images/CG/luna_sex/herm_10.webp:432,0,545,634 +images/CG/luna_sex/herm_11.webp:432,0,545,634 +images/CG/luna_sex/herm_12.webp:432,0,545,634 +images/CG/luna_sex/herm_13.webp:432,0,545,634 +images/CG/luna_sex/herm_14.webp:432,0,545,634 +images/CG/luna_sex/herm_15.webp:432,0,545,634 +images/CG/luna_sex/herm_16.webp:432,0,545,634 +images/CG/luna_sex/herm_17.webp:432,0,545,634 +images/CG/luna_sex/herm_18.webp:432,0,545,634 +images/CG/luna_sex/herm_19.webp:432,0,545,634 +images/CG/luna_sex/herm_2.webp:432,0,545,634 +images/CG/luna_sex/herm_20.webp:432,0,545,634 +images/CG/luna_sex/herm_21.webp:432,0,545,634 +images/CG/luna_sex/herm_22.webp:432,0,545,634 +images/CG/luna_sex/herm_23.webp:432,0,545,634 +images/CG/luna_sex/herm_24.webp:432,0,545,634 +images/CG/luna_sex/herm_25.webp:432,0,545,634 +images/CG/luna_sex/herm_26.webp:432,0,545,634 +images/CG/luna_sex/herm_27.webp:432,0,545,634 +images/CG/luna_sex/herm_3.webp:432,0,545,634 +images/CG/luna_sex/herm_4.webp:432,0,545,634 +images/CG/luna_sex/herm_5.webp:432,0,545,634 +images/CG/luna_sex/herm_6.webp:432,0,545,634 +images/CG/luna_sex/herm_7.webp:432,0,545,634 +images/CG/luna_sex/herm_8.webp:432,0,545,634 +images/CG/luna_sex/herm_9.webp:432,0,545,634 +images/CG/luna_sex/luna_1.webp:103,0,639,634 +images/CG/luna_sex/luna_10.webp:103,0,639,634 +images/CG/luna_sex/luna_11.webp:103,0,639,634 +images/CG/luna_sex/luna_12.webp:103,0,639,634 +images/CG/luna_sex/luna_13.webp:103,0,639,634 +images/CG/luna_sex/luna_14.webp:103,0,734,634 +images/CG/luna_sex/luna_15.webp:103,0,734,634 +images/CG/luna_sex/luna_16.webp:103,0,734,634 +images/CG/luna_sex/luna_17.webp:103,0,734,634 +images/CG/luna_sex/luna_18.webp:103,0,734,634 +images/CG/luna_sex/luna_19.webp:103,0,734,634 +images/CG/luna_sex/luna_2.webp:103,0,639,634 +images/CG/luna_sex/luna_20.webp:103,0,734,634 +images/CG/luna_sex/luna_21.webp:103,0,734,634 +images/CG/luna_sex/luna_22.webp:103,0,734,634 +images/CG/luna_sex/luna_23.webp:103,0,734,634 +images/CG/luna_sex/luna_24.webp:103,0,734,634 +images/CG/luna_sex/luna_25.webp:103,0,734,634 +images/CG/luna_sex/luna_26.webp:103,0,734,634 +images/CG/luna_sex/luna_27.webp:103,0,734,634 +images/CG/luna_sex/luna_28.webp:103,0,734,634 +images/CG/luna_sex/luna_29.webp:103,0,734,634 +images/CG/luna_sex/luna_3.webp:103,0,639,634 +images/CG/luna_sex/luna_30.webp:103,0,734,634 +images/CG/luna_sex/luna_31.webp:103,0,734,634 +images/CG/luna_sex/luna_32.webp:103,0,734,634 +images/CG/luna_sex/luna_33.webp:103,0,734,634 +images/CG/luna_sex/luna_34.webp:103,0,734,634 +images/CG/luna_sex/luna_35.webp:103,0,734,634 +images/CG/luna_sex/luna_36.webp:103,0,734,634 +images/CG/luna_sex/luna_37.webp:103,0,734,634 +images/CG/luna_sex/luna_38.webp:103,0,734,634 +images/CG/luna_sex/luna_39.webp:103,0,734,634 +images/CG/luna_sex/luna_4.webp:103,0,639,634 +images/CG/luna_sex/luna_40.webp:103,0,639,634 +images/CG/luna_sex/luna_41.webp:103,0,639,634 +images/CG/luna_sex/luna_42.webp:103,0,639,634 +images/CG/luna_sex/luna_43.webp:103,0,639,634 +images/CG/luna_sex/luna_44.webp:103,0,639,634 +images/CG/luna_sex/luna_5.webp:103,0,639,634 +images/CG/luna_sex/luna_6.webp:103,0,639,634 +images/CG/luna_sex/luna_7.webp:103,0,639,634 +images/CG/luna_sex/luna_8.webp:103,0,639,634 +images/CG/luna_sex/luna_9.webp:103,0,639,634 +images/CG/p1.webp:0,0,1080,723 +images/CG/p2.webp:0,0,1080,723 +images/CG/p3.webp:0,0,1080,723 +images/CG/p4.webp:0,0,1080,723 +images/CG/p5.webp:0,0,1080,723 +images/CG/p6.webp:0,0,1080,723 +images/CG/p7.webp:0,0,1080,723 +images/CG/sc34/1/A_1.webp:0,0,592,419 +images/CG/sc34/1/A_10.webp:0,0,592,419 +images/CG/sc34/1/A_11.webp:0,0,592,419 +images/CG/sc34/1/A_12.webp:0,0,592,419 +images/CG/sc34/1/A_13.webp:0,0,592,419 +images/CG/sc34/1/A_14.webp:0,0,592,419 +images/CG/sc34/1/A_15.webp:0,0,592,419 +images/CG/sc34/1/A_16.webp:0,0,592,419 +images/CG/sc34/1/A_17.webp:0,0,592,419 +images/CG/sc34/1/A_2.webp:0,0,592,419 +images/CG/sc34/1/A_3.webp:0,0,592,419 +images/CG/sc34/1/A_4.webp:0,0,592,419 +images/CG/sc34/1/A_5.webp:0,0,592,419 +images/CG/sc34/1/A_6.webp:0,0,592,419 +images/CG/sc34/1/A_7.webp:0,0,592,419 +images/CG/sc34/1/A_8.webp:0,0,592,419 +images/CG/sc34/1/A_9.webp:0,0,592,419 +images/CG/sc34/1/B_1.webp:380,19,212,278 +images/CG/sc34/1/B_2.webp:380,19,212,278 +images/CG/sc34/1/B_3.webp:380,19,212,278 +images/CG/sc34/1/B_4.webp:380,19,212,278 +images/CG/sc34/1/B_5.webp:380,19,212,278 +images/CG/sc34/1/B_6.webp:143,58,126,179 +images/CG/sc34/1/B_7.webp:206,148,87,151 +images/CG/sc34/1/B_8.webp:172,58,97,69 +images/CG/sc34/1/base_1.webp:0,0,592,419 +images/CG/sc34/2/A_1.webp:0,0,592,419 +images/CG/sc34/2/A_10.webp:0,0,592,419 +images/CG/sc34/2/A_11.webp:0,0,592,419 +images/CG/sc34/2/A_12.webp:0,0,592,419 +images/CG/sc34/2/A_13.webp:0,0,592,419 +images/CG/sc34/2/A_14.webp:0,0,592,419 +images/CG/sc34/2/A_15.webp:0,0,592,419 +images/CG/sc34/2/A_16.webp:0,0,592,419 +images/CG/sc34/2/A_17.webp:0,0,592,419 +images/CG/sc34/2/A_18.webp:0,0,592,419 +images/CG/sc34/2/A_19.webp:0,0,592,419 +images/CG/sc34/2/A_2.webp:0,0,592,419 +images/CG/sc34/2/A_3.webp:0,0,592,419 +images/CG/sc34/2/A_4.webp:0,0,592,419 +images/CG/sc34/2/A_5.webp:0,0,592,419 +images/CG/sc34/2/A_6.webp:0,0,592,419 +images/CG/sc34/2/A_7.webp:0,0,592,419 +images/CG/sc34/2/A_8.webp:0,0,592,419 +images/CG/sc34/2/A_9.webp:0,0,592,419 +images/CG/sc34/2/B_1.webp:0,0,169,419 +images/CG/sc34/2/B_2.webp:0,0,169,419 +images/CG/sc34/2/B_3.webp:0,0,169,419 +images/CG/sc34/2/B_4.webp:0,0,169,419 +images/CG/sc34/2/B_5.webp:0,0,169,419 +images/CG/sc34/2/B_6.webp:0,0,169,419 +images/CG/sc34/2/C_1.webp:348,0,209,419 +images/CG/sc34/2/C_10.webp:352,0,205,419 +images/CG/sc34/2/C_11.webp:352,0,205,419 +images/CG/sc34/2/C_2.webp:348,0,209,419 +images/CG/sc34/2/C_3.webp:348,0,209,419 +images/CG/sc34/2/C_4.webp:348,0,209,419 +images/CG/sc34/2/C_5.webp:348,0,209,419 +images/CG/sc34/2/C_6.webp:348,0,209,419 +images/CG/sc34/2/C_7.webp:348,0,209,419 +images/CG/sc34/2/C_8.webp:348,0,209,419 +images/CG/sc34/2/C_9.webp:352,0,205,419 +images/CG/sc34/2/base_1.webp:30,19,527,336 +images/CG/sc34/2/base_2.webp:0,0,592,419 +images/CG/sc34/3/A_1.webp:0,0,592,419 +images/CG/sc34/3/A_10.webp:67,25,283,368 +images/CG/sc34/3/A_11.webp:67,25,283,368 +images/CG/sc34/3/A_12.webp:67,25,283,368 +images/CG/sc34/3/A_13.webp:67,25,283,368 +images/CG/sc34/3/A_2.webp:0,0,592,419 +images/CG/sc34/3/A_3.webp:0,0,592,419 +images/CG/sc34/3/A_4.webp:67,25,283,308 +images/CG/sc34/3/A_5.webp:67,25,283,308 +images/CG/sc34/3/A_6.webp:67,25,283,308 +images/CG/sc34/3/A_7.webp:67,25,283,368 +images/CG/sc34/3/A_8.webp:67,25,283,368 +images/CG/sc34/3/A_9.webp:67,25,283,368 +images/CG/sc34/3/B_1.webp:0,0,592,419 +images/CG/sc34/3/base_1.webp:0,0,592,419 +images/CG/sc34/3/base_2.webp:30,19,528,336 +images/CG/sc34/4/A_1.webp:208,40,204,315 +images/CG/sc34/4/A_10.webp:208,40,204,315 +images/CG/sc34/4/A_11.webp:208,40,204,315 +images/CG/sc34/4/A_12.webp:187,40,292,315 +images/CG/sc34/4/A_13.webp:187,40,292,315 +images/CG/sc34/4/A_14.webp:187,40,292,315 +images/CG/sc34/4/A_15.webp:187,40,292,315 +images/CG/sc34/4/A_16.webp:187,40,292,315 +images/CG/sc34/4/A_17.webp:187,40,292,315 +images/CG/sc34/4/A_18.webp:187,40,292,315 +images/CG/sc34/4/A_19.webp:187,40,292,315 +images/CG/sc34/4/A_2.webp:208,40,204,315 +images/CG/sc34/4/A_20.webp:187,40,292,315 +images/CG/sc34/4/A_21.webp:187,40,292,315 +images/CG/sc34/4/A_22.webp:187,40,292,315 +images/CG/sc34/4/A_3.webp:208,40,204,315 +images/CG/sc34/4/A_4.webp:208,40,204,315 +images/CG/sc34/4/A_5.webp:208,40,204,315 +images/CG/sc34/4/A_6.webp:208,40,204,315 +images/CG/sc34/4/A_7.webp:208,40,204,315 +images/CG/sc34/4/A_8.webp:208,40,204,315 +images/CG/sc34/4/A_9.webp:208,40,204,315 +images/CG/sc34/4/B_1.webp:354,19,203,336 +images/CG/sc34/4/B_2.webp:354,19,203,336 +images/CG/sc34/4/B_3.webp:354,19,203,336 +images/CG/sc34/4/B_4.webp:354,19,203,336 +images/CG/sc34/4/B_5.webp:307,19,250,336 +images/CG/sc34/4/B_6.webp:307,19,250,336 +images/CG/sc34/4/B_7.webp:307,19,250,336 +images/CG/sc34/4/B_8.webp:307,19,250,336 +images/CG/sc34/4/C_1.webp:48,19,175,336 +images/CG/sc34/4/C_10.webp:48,19,257,336 +images/CG/sc34/4/C_2.webp:48,19,175,336 +images/CG/sc34/4/C_3.webp:48,19,234,336 +images/CG/sc34/4/C_4.webp:48,19,242,336 +images/CG/sc34/4/C_5.webp:48,19,175,336 +images/CG/sc34/4/C_6.webp:48,19,175,336 +images/CG/sc34/4/C_7.webp:48,19,175,336 +images/CG/sc34/4/C_8.webp:48,19,257,336 +images/CG/sc34/4/C_9.webp:48,19,257,336 +images/CG/sc34/4/base_2.webp:0,0,592,419 +images/CG/sc34/5/A_1.webp:0,20,592,399 +images/CG/sc34/5/A_2.webp:0,20,592,399 +images/CG/sc34/5/A_3.webp:0,20,592,399 +images/CG/sc34/5/A_4.webp:0,20,592,399 +images/CG/sc34/5/base_1.webp:0,0,592,419 +images/CG/scene_01.webp:0,0,2160,1200 +images/CG/scene_02.webp:0,0,2160,1200 +images/CG/scene_03.webp:0,0,2160,1200 +images/CG/scene_04.webp:0,0,2160,1200 +images/animation/00.webp:0,0,0,0 +images/animation/23_jerking_off_sperm.webp:28,124,213,131 +images/animation/Bouquet0.webp:16,34,72,89 +images/animation/Bouquet1.webp:2,0,103,123 +images/animation/Bouquet2.webp:4,0,98,130 +images/animation/Bouquet3.webp:2,0,102,128 +images/animation/Bouquet4.webp:13,0,77,117 +images/animation/BouquetPaf.webp:5,0,93,117 +images/animation/Flower0.webp:16,34,72,89 +images/animation/Flower1.webp:2,0,103,123 +images/animation/Flower2.webp:4,0,98,130 +images/animation/Flower3.webp:2,0,102,128 +images/animation/Flower4.webp:30,45,31,70 +images/animation/FlowerPaf.webp:5,34,93,81 +images/animation/glow_effect/glow_1.webp:13,13,24,24 +images/animation/glow_effect/glow_2.webp:10,9,32,33 +images/animation/glow_effect/glow_3.webp:6,5,39,44 +images/animation/glow_effect/glow_4.webp:0,0,50,50 +images/animation/notes_01.webp:58,123,39,25 +images/animation/notes_02.webp:48,114,54,34 +images/animation/notes_03.webp:45,107,65,35 +images/animation/notes_04.webp:40,103,75,34 +images/animation/notes_05.webp:36,97,83,35 +images/animation/notes_06.webp:33,92,89,34 +images/animation/notes_07.webp:29,87,96,35 +images/animation/notes_08.webp:24,82,104,37 +images/animation/notes_09.webp:0,0,0,0 +images/animation/smoke_01.webp:0,44,352,444 +images/animation/smoke_02.webp:18,0,330,467 +images/animation/smoke_03.webp:8,7,350,456 +images/animation/spell01.webp:12,221,176,84 +images/animation/spell02.webp:12,211,178,94 +images/animation/spell03.webp:11,202,179,103 +images/animation/spell04.webp:11,181,181,124 +images/animation/spell05.webp:9,131,184,174 +images/animation/spell06.webp:7,105,186,200 +images/animation/spell07.webp:7,101,187,204 +images/animation/spell08.webp:5,75,191,230 +images/animation/spell09.webp:4,51,193,254 +images/animation/spell10.webp:3,38,194,267 +images/animation/spell11.webp:7,38,191,267 +images/animation/spell12.webp:9,40,191,265 +images/animation/spell13.webp:9,42,192,262 +images/animation/spell14.webp:11,44,186,261 +images/animation/spell15.webp:9,47,188,258 +images/animation/spell16.webp:9,55,191,249 +images/animation/spell17.webp:7,73,193,231 +images/blank.webp:0,0,1,1 +images/cardgame/VS/background_snape.webp:0,0,1080,600 +images/cardgame/VS/background_twins.webp:0,0,1080,600 +images/cardgame/VS/genie_01.webp:0,0,300,600 +images/cardgame/VS/genie_02.webp:0,0,300,600 +images/cardgame/VS/genie_03.webp:0,0,300,600 +images/cardgame/VS/genie_04.webp:0,0,300,600 +images/cardgame/VS/hermione_01.webp:741,0,339,600 +images/cardgame/VS/hermione_02.webp:741,0,339,600 +images/cardgame/VS/snape_01.webp:650,0,430,600 +images/cardgame/VS/snape_02.webp:650,0,430,600 +images/cardgame/VS/twins_01.webp:537,457,543,143 +images/cardgame/VS/twins_02.webp:537,53,543,547 +images/cardgame/VS/vs.webp:447,244,231,161 +images/cardgame/back.webp:0,0,120,41 +images/cardgame/back_hover.webp:0,0,120,41 +images/cardgame/border.webp:0,0,320,480 +images/cardgame/button.webp:0,0,185,63 +images/cardgame/button_hover.webp:0,0,185,63 +images/cardgame/card_table.webp:0,0,1080,600 +images/cardgame/deck_builder.webp:0,0,1080,600 +images/cardgame/exit.webp:0,0,185,63 +images/cardgame/exit_hover.webp:0,0,185,63 +images/cardgame/gallery.webp:0,0,185,63 +images/cardgame/gallery_hover.webp:0,0,185,63 +images/cardgame/guide.webp:0,0,185,63 +images/cardgame/guide/0.webp:0,0,1080,600 +images/cardgame/guide/1.webp:0,0,1080,600 +images/cardgame/guide/2.webp:0,0,1080,600 +images/cardgame/guide/3.webp:0,0,1080,600 +images/cardgame/guide/33.webp:0,0,1080,600 +images/cardgame/guide/4.webp:0,0,1080,600 +images/cardgame/guide/5.webp:0,0,1080,600 +images/cardgame/guide/border_guide.webp:0,0,64,65 +images/cardgame/guide/card_zone.webp:0,0,1080,600 +images/cardgame/guide/cho_stage2.webp:0,0,154,230 +images/cardgame/guide/cho_stage3.webp:0,0,154,230 +images/cardgame/guide/cho_stage4.webp:0,0,154,230 +images/cardgame/guide/domain_guide.webp:0,0,61,66 +images/cardgame/guide/enemy_zone.webp:0,0,1080,600 +images/cardgame/guide/fight_guide.webp:0,0,61,66 +images/cardgame/guide/fight_zone.webp:0,0,1080,600 +images/cardgame/guide/numbers_guide.webp:0,0,141,200 +images/cardgame/guide/player_zone.webp:0,0,1080,600 +images/cardgame/guide/tier_guide.webp:0,0,61,66 +images/cardgame/guide_hover.webp:0,0,185,63 +images/cardgame/rule_death.webp:2,0,30,34 +images/cardgame/rule_double.webp:0,0,35,23 +images/cardgame/rule_hidden.webp:7,0,21,32 +images/cardgame/rule_random.webp:1,0,33,34 +images/cardgame/rule_reverse.webp:5,0,25,32 +images/cardgame/scrolldown.webp:0,0,35,35 +images/cardgame/scrolldown_hover.webp:0,0,35,35 +images/cardgame/scrollup.webp:0,0,35,35 +images/cardgame/scrollup_hover.webp:0,0,35,35 +images/cardgame/spacer.webp:0,0,640,4 +images/cardgame/t1/backside/gryffindor.webp:0,0,320,480 +images/cardgame/t1/backside/hufflepuff.webp:0,0,320,480 +images/cardgame/t1/backside/ravenclaw.webp:0,0,320,480 +images/cardgame/t1/backside/slytherin.webp:0,0,320,480 +images/cardgame/t1/cho/cho_schoolgirl_v1.webp:0,0,320,480 +images/cardgame/t1/cho/cho_schoolgirl_v2.webp:0,0,320,480 +images/cardgame/t1/cho/cho_schoolgirl_v3.webp:0,0,320,480 +images/cardgame/t1/cho/cho_schoolgirl_v4.webp:0,0,320,480 +images/cardgame/t1/genie_realm/aladdin_v1.webp:0,0,320,480 +images/cardgame/t1/genie_realm/azalea_v1.webp:0,0,320,480 +images/cardgame/t1/genie_realm/azalea_v2.webp:0,0,320,480 +images/cardgame/t1/genie_realm/azalea_v3.webp:0,0,320,480 +images/cardgame/t1/genie_realm/azalea_v4.webp:0,0,320,480 +images/cardgame/t1/genie_realm/dahlia_v1.webp:0,0,320,480 +images/cardgame/t1/genie_realm/iri_v1.webp:0,0,320,480 +images/cardgame/t1/genie_realm/iri_v2.webp:0,0,320,480 +images/cardgame/t1/genie_realm/iri_v3.webp:0,0,320,480 +images/cardgame/t1/genie_realm/iri_v4.webp:0,0,320,480 +images/cardgame/t1/genie_realm/jafar_v1.webp:0,0,320,480 +images/cardgame/t1/genie_realm/jas_v1.webp:0,0,320,480 +images/cardgame/t1/genie_realm/jas_v2.webp:0,0,320,480 +images/cardgame/t1/genie_realm/jas_v3.webp:0,0,320,480 +images/cardgame/t1/genie_realm/jas_v4.webp:0,0,320,480 +images/cardgame/t1/genie_realm/lilly_v1.webp:0,0,320,480 +images/cardgame/t1/genie_realm/maslab_v1.webp:0,0,320,480 +images/cardgame/t1/genie_realm/rasul_v1.webp:0,0,320,480 +images/cardgame/t1/hermione/her_librarian_v1.webp:0,0,320,480 +images/cardgame/t1/hermione/her_librarian_v2.webp:0,0,320,480 +images/cardgame/t1/hermione/her_librarian_v3.webp:0,0,320,480 +images/cardgame/t1/hermione/her_librarian_v4.webp:0,0,320,480 +images/cardgame/t1/hermione/her_schoolgirl_v1.webp:0,0,320,480 +images/cardgame/t1/hermione/her_schoolgirl_v2.webp:0,0,320,480 +images/cardgame/t1/hermione/her_schoolgirl_v3.webp:0,0,320,480 +images/cardgame/t1/hermione/her_schoolgirl_v4.webp:0,0,320,480 +images/cardgame/t1/luna/lun_schoolgirl_v1.webp:0,0,320,480 +images/cardgame/t1/luna/lun_schoolgirl_v2.webp:0,0,320,480 +images/cardgame/t1/luna/lun_schoolgirl_v3.webp:0,0,320,480 +images/cardgame/t1/luna/lun_schoolgirl_v4.webp:0,0,320,480 +images/cardgame/t1/other/badge_v1.webp:0,0,320,480 +images/cardgame/t1/other/barbell_v1.webp:0,0,320,480 +images/cardgame/t1/other/bdsm_v1.webp:0,0,320,480 +images/cardgame/t1/other/beads_v1.webp:0,0,320,480 +images/cardgame/t1/other/bird_v1.webp:0,0,320,480 +images/cardgame/t1/other/bookchairs_v1.webp:0,0,320,480 +images/cardgame/t1/other/bookgala2_v1.webp:0,0,320,480 +images/cardgame/t1/other/bookgala_v1.webp:0,0,320,480 +images/cardgame/t1/other/bookwaifu_v1.webp:0,0,320,480 +images/cardgame/t1/other/broom_v1.webp:0,0,320,480 +images/cardgame/t1/other/bsdm_v1.webp:0,0,320,480 +images/cardgame/t1/other/condoms_v1.webp:0,0,320,480 +images/cardgame/t1/other/desk_v1.webp:0,0,320,480 +images/cardgame/t1/other/dildo_v1.webp:0,0,320,480 +images/cardgame/t1/other/doll_v1.webp:0,0,320,480 +images/cardgame/t1/other/elf_v1.webp:0,0,320,480 +images/cardgame/t1/other/eromag_v1.webp:0,0,320,480 +images/cardgame/t1/other/girlmag_v1.webp:0,0,320,480 +images/cardgame/t1/other/hat_v1.webp:0,0,320,480 +images/cardgame/t1/other/lingerie_v1.webp:0,0,320,480 +images/cardgame/t1/other/lipstick_v1.webp:0,0,320,480 +images/cardgame/t1/other/lube_v1.webp:0,0,320,480 +images/cardgame/t1/other/owl_v1.webp:0,0,320,480 +images/cardgame/t1/other/plugs_v1.webp:0,0,320,480 +images/cardgame/t1/other/pornmag_v1.webp:0,0,320,480 +images/cardgame/t1/other/potions_v1.webp:0,0,320,480 +images/cardgame/t1/other/scroll_v1.webp:0,0,320,480 +images/cardgame/t1/other/stockings_v1.webp:0,0,320,480 +images/cardgame/t1/other/strapon_v1.webp:0,0,320,480 +images/cardgame/t1/other/sweets_v1.webp:0,0,320,480 +images/cardgame/t1/other/wine_v1.webp:0,0,320,480 +images/cardgame/t1/special/dumbledore_v1.webp:0,0,320,480 +images/cardgame/t1/special/fred_v1.webp:0,0,320,480 +images/cardgame/t1/special/genie_v1.webp:0,0,320,480 +images/cardgame/t1/special/george_v1.webp:0,0,320,480 +images/cardgame/t1/special/mafkin_v1.webp:0,0,320,480 +images/cardgame/t1/special/santa_v1.webp:0,0,320,480 +images/cardgame/t1/special/snape_v1.webp:0,0,320,480 +images/cardgame/t1/susan/sus_schoolgirl_v1.webp:0,0,320,480 +images/cardgame/t1/susan/sus_schoolgirl_v2.webp:0,0,320,480 +images/cardgame/t1/susan/sus_schoolgirl_v3.webp:0,0,320,480 +images/cardgame/t1/susan/sus_schoolgirl_v4.webp:0,0,320,480 +images/dueling/damage/0.webp:31,135,44,33 +images/dueling/damage/100.webp:6,93,62,26 +images/dueling/damage/200.webp:8,93,59,25 +images/dueling/damage/300.webp:6,94,62,24 +images/dueling/damage/400.webp:6,94,62,24 +images/dueling/damage/50.webp:21,134,63,34 +images/dueling/damage/500.webp:6,93,62,25 +images/dueling/damage/plus_300.webp:9,135,87,33 +images/dueling/snape/attack_defend.webp:0,0,124,181 +images/dueling/snape/attack_item.webp:0,0,114,186 +images/dueling/snape/attack_melee.webp:0,0,112,178 +images/dueling/snape/attack_tease.webp:0,8,112,170 +images/dueling/snape/barb_01.webp:8,502,938,476 +images/dueling/snape/barb_02.webp:0,506,946,476 +images/dueling/snape/game_over.webp:0,0,1080,600 +images/dueling/snape/gen_01.webp:119,506,225,409 +images/dueling/snape/gen_02.webp:121,508,224,407 +images/dueling/snape/gen_03.webp:120,503,227,412 +images/dueling/snape/genie_attack_01.webp:0,492,1010,492 +images/dueling/snape/genie_attack_02.webp:0,490,1010,494 +images/dueling/snape/genie_attack_03.webp:66,402,944,582 +images/dueling/snape/genie_attack_04.webp:66,310,944,674 +images/dueling/snape/genie_attack_05.webp:0,268,1072,710 +images/dueling/snape/genie_attack_06.webp:0,506,1072,476 +images/dueling/snape/genie_attack_07.webp:66,384,1006,599 +images/dueling/snape/genie_attack_08.webp:0,316,1010,668 +images/dueling/snape/genie_attack_09.webp:8,268,1064,710 +images/dueling/snape/genie_attack_10.webp:0,506,1072,476 +images/dueling/snape/genie_attack_11.webp:8,502,1064,476 +images/dueling/snape/genie_attack_12.webp:0,506,1072,476 +images/dueling/snape/genie_attack_13.webp:8,502,1064,476 +images/dueling/snape/genie_attack_14.webp:0,490,1010,494 +images/dueling/snape/genie_attack_15.webp:8,492,1002,492 +images/dueling/snape/glass/01.webp:0,309,517,291 +images/dueling/snape/glass/02.webp:0,0,1077,600 +images/dueling/snape/glass/03.webp:0,0,1077,600 +images/dueling/snape/glass/04.webp:0,0,1077,600 +images/dueling/snape/glass/05.webp:0,0,1080,600 +images/dueling/snape/glass/06.webp:0,0,1080,600 +images/dueling/snape/glass/07.webp:0,0,1080,600 +images/dueling/snape/glass/08.webp:0,0,1080,600 +images/dueling/snape/glass/09.webp:0,0,1080,600 +images/dueling/snape/glass/10.webp:0,0,1080,600 +images/dueling/snape/glass/crack.webp:0,0,1080,600 +images/dueling/snape/glass/gradient.webp:0,0,1080,600 +images/dueling/snape/guard_01.webp:136,546,252,344 +images/dueling/snape/guard_02.webp:136,547,252,343 +images/dueling/snape/guard_03.webp:136,547,252,343 +images/dueling/snape/hand_01.webp:282,500,790,545 +images/dueling/snape/hand_02.webp:282,500,790,545 +images/dueling/snape/hand_03.webp:282,500,790,545 +images/dueling/snape/hand_04.webp:264,474,808,571 +images/dueling/snape/hand_05.webp:264,426,808,619 +images/dueling/snape/hand_06.webp:264,500,808,440 +images/dueling/snape/hand_07.webp:264,500,808,450 +images/dueling/snape/hand_08.webp:408,500,664,440 +images/dueling/snape/hand_09.webp:408,482,602,502 +images/dueling/snape/hand_10.webp:408,464,602,520 +images/dueling/snape/hand_11.webp:408,450,602,534 +images/dueling/snape/hand_12.webp:408,438,602,546 +images/dueling/snape/hand_13.webp:408,440,602,544 +images/dueling/snape/hand_14.webp:408,450,602,534 +images/dueling/snape/hand_15.webp:408,438,602,546 +images/dueling/snape/hand_16.webp:408,440,602,544 +images/dueling/snape/hand_genie_01.webp:119,461,953,489 +images/dueling/snape/hand_genie_02.webp:121,460,951,490 +images/dueling/snape/hand_genie_03.webp:120,468,952,482 +images/dueling/snape/hand_genie_04.webp:121,500,951,450 +images/dueling/snape/hand_genie_05.webp:119,500,953,449 +images/dueling/snape/hand_genie_06.webp:82,490,928,494 +images/dueling/snape/hand_genie_07.webp:82,490,928,494 +images/dueling/snape/hand_genie_08.webp:82,492,928,492 +images/dueling/snape/hand_genie_09.webp:82,490,928,494 +images/dueling/snape/hand_genie_10.webp:82,490,928,494 +images/dueling/snape/hand_genie_11.webp:82,490,928,494 +images/dueling/snape/hand_genie_12.webp:82,492,928,492 +images/dueling/snape/hand_genie_13.webp:82,490,928,494 +images/dueling/snape/hand_guard_01.webp:136,461,874,523 +images/dueling/snape/hand_guard_02.webp:136,460,874,524 +images/dueling/snape/hand_guard_03.webp:136,468,874,516 +images/dueling/snape/hand_guard_04.webp:136,492,874,492 +images/dueling/snape/hand_guard_05.webp:136,490,874,494 +images/dueling/snape/hand_guard_06.webp:136,490,874,494 +images/dueling/snape/hand_guard_07.webp:136,490,874,494 +images/dueling/snape/hand_guard_08.webp:136,492,874,492 +images/dueling/snape/hand_guard_09.webp:136,490,874,494 +images/dueling/snape/hand_guard_10.webp:136,490,874,494 +images/dueling/snape/hand_guard_11.webp:8,490,1002,494 +images/dueling/snape/hand_guard_12.webp:8,492,1002,492 +images/dueling/snape/hand_guard_13.webp:8,490,1002,494 +images/dueling/snape/hand_guard_14.webp:8,490,1002,494 +images/dueling/snape/hp_bar.webp:0,383,1080,217 +images/dueling/snape/hp_bar_02.webp:170,537,727,30 +images/dueling/snape/hp_bar_10.webp:0,0,1080,150 +images/dueling/snape/hp_bar_11.webp:0,0,1080,81 +images/dueling/snape/hp_bar_12.webp:159,30,729,21 +images/dueling/snape/no_magic.webp:144,506,182,374 +images/dueling/snape/pen_01.webp:487,836,277,55 +images/dueling/snape/sna_attack_01.webp:119,506,953,409 +images/dueling/snape/sna_attack_02.webp:121,508,951,407 +images/dueling/snape/sna_attack_03.webp:120,503,952,412 +images/dueling/snape/sna_attack_04.webp:119,506,953,409 +images/dueling/snape/sna_attack_05.webp:82,520,990,366 +images/dueling/snape/sna_attack_06.webp:82,490,928,494 +images/dueling/snape/sna_attack_07.webp:82,490,928,494 +images/dueling/snape/sna_attack_08.webp:82,492,928,492 +images/dueling/snape/sna_attack_09.webp:82,490,928,494 +images/dueling/snape/sna_attack_10.webp:82,490,928,494 +images/dueling/snape/sna_attack_guard_01.webp:136,520,936,370 +images/dueling/snape/sna_attack_guard_02.webp:136,520,936,370 +images/dueling/snape/sna_attack_guard_03.webp:136,520,936,370 +images/dueling/snape/sna_attack_guard_04.webp:136,520,936,370 +images/dueling/snape/sna_attack_guard_05.webp:136,520,936,370 +images/dueling/snape/sna_attack_guard_06.webp:136,490,874,494 +images/dueling/snape/sna_attack_guard_07.webp:136,490,874,494 +images/dueling/snape/sna_attack_guard_08.webp:136,492,874,492 +images/dueling/snape/sna_attack_guard_09.webp:136,490,874,494 +images/dueling/snape/sna_attack_guard_10.webp:136,490,874,494 +images/dueling/snape/sna_block_01.webp:0,478,1112,500 +images/dueling/snape/sna_block_02.webp:0,476,1113,506 +images/dueling/snape/sna_block_03.webp:66,404,1046,579 +images/dueling/snape/sna_block_04.webp:66,308,1046,675 +images/dueling/snape/sna_block_05.webp:0,478,1112,500 +images/dueling/snape/sna_block_06.webp:0,478,1112,504 +images/dueling/snape/sna_block_07.webp:66,386,1046,597 +images/dueling/snape/sna_block_08.webp:0,316,1112,666 +images/dueling/snape/sna_block_09.webp:8,268,1104,710 +images/dueling/snape/sna_block_10.webp:0,478,1112,504 +images/dueling/snape/sna_block_11.webp:8,478,1104,500 +images/dueling/snape/sna_block_12.webp:0,476,1112,506 +images/dueling/snape/sna_block_13.webp:8,478,1104,500 +images/dueling/snape/snape.webp:697,648,328,311 +images/dueling/snape/snape_01.webp:708,492,302,492 +images/dueling/snape/snape_02.webp:711,490,299,494 +images/dueling/snape/snape_03.webp:722,490,288,494 +images/dueling/snape/snape_casting_01.webp:748,492,262,492 +images/dueling/snape/snape_defend_01.webp:684,478,428,403 +images/dueling/snape/snape_defend_02.webp:684,476,429,404 +images/dueling/snape/snape_defend_03.webp:684,476,428,402 +images/misc/bag.webp:19,52,163,228 +images/misc/bag_floor.webp:1,216,209,64 +images/misc/bang.webp:249,11,583,583 +images/misc/circle_cartoon.webp:0,0,1080,600 +images/misc/drop.webp:178,205,17,56 +images/misc/exclamation.webp:6,137,81,103 +images/misc/folks.webp:128,40,826,160 +images/misc/gameover.webp:313,258,444,342 +images/misc/heart.webp:0,0,17,14 +images/misc/hearts.webp:4,192,86,71 +images/misc/intro/01_01.webp:0,0,1080,600 +images/misc/intro/01_02.webp:0,0,1080,600 +images/misc/intro/02_01.webp:0,0,1080,600 +images/misc/intro/02_02.webp:0,0,1080,600 +images/misc/intro/02_03.webp:0,0,1080,600 +images/misc/intro/03_01.webp:0,0,1080,600 +images/misc/intro/03_02.webp:0,0,1080,600 +images/misc/intro/04_01.webp:0,0,1080,600 +images/misc/intro/04_02.webp:0,0,1080,600 +images/misc/intro/05_01.webp:0,0,1080,600 +images/misc/intro/05_02.webp:0,0,1080,600 +images/misc/intro/06_01.webp:0,0,1080,600 +images/misc/intro/06_02.webp:0,0,1080,600 +images/misc/light.webp:0,0,1080,600 +images/misc/old.webp:1,1,405,364 +images/misc/question.webp:23,127,68,128 +images/misc/redhead.webp:212,124,173,657 +images/misc/smoke.webp:0,440,2160,760 +images/misc/snake.webp:175,398,266,202 +images/misc/tears.webp:102,254,76,14 +images/misc/tentacles.webp:0,184,505,416 +images/misc/things.webp:12,147,74,89 +images/misc/tut_00.webp:0,0,800,600 +images/misc/tut_01.webp:0,0,800,600 +images/misc/tut_02.webp:0,0,800,600 +images/misc/tut_03.webp:0,0,800,600 +images/misc/tut_04.webp:0,0,800,600 +images/misc/tut_05.webp:0,0,800,600 +images/misc/tut_06.webp:0,0,800,600 +images/misc/tut_07.webp:0,0,800,600 +images/rooms/_bg_/castle.webp:0,0,1080,600 +images/rooms/_bg_/corridor.webp:0,0,1080,600 +images/rooms/_bg_/custom.webp:0,0,1080,600 +images/rooms/_bg_/desk.webp:0,0,1080,634 +images/rooms/_bg_/forest.webp:0,0,1080,600 +images/rooms/_bg_/highlight.webp:0,0,1080,600 +images/rooms/_bg_/main_room_day.webp:0,0,2160,1200 +images/rooms/_bg_/main_room_night.webp:0,0,2160,1200 +images/rooms/_bg_/quidditch_pitch.webp:0,0,1080,600 +images/rooms/_bg_/versus.webp:0,0,1080,600 +images/rooms/_bg_/wall_day.webp:0,0,1080,600 +images/rooms/_weather_/blizzard_01.webp:0,0,155,230 +images/rooms/_weather_/blizzard_02.webp:0,0,155,230 +images/rooms/_weather_/blizzard_03.webp:0,0,155,230 +images/rooms/_weather_/blizzard_04.webp:0,0,155,230 +images/rooms/_weather_/blizzard_05.webp:0,0,155,230 +images/rooms/_weather_/blizzard_06.webp:0,0,155,230 +images/rooms/_weather_/blizzard_07.webp:0,0,155,230 +images/rooms/_weather_/blizzard_08.webp:0,0,155,230 +images/rooms/_weather_/blizzard_09.webp:0,0,155,230 +images/rooms/_weather_/blizzard_10.webp:0,0,155,230 +images/rooms/_weather_/cloud_small.webp:4,9,155,30 +images/rooms/_weather_/lightning_01.webp:0,0,0,0 +images/rooms/_weather_/lightning_02.webp:51,14,100,156 +images/rooms/_weather_/lightning_03.webp:26,50,89,145 +images/rooms/_weather_/lightning_04.webp:0,0,155,230 +images/rooms/_weather_/lightning_05.webp:0,0,0,0 +images/rooms/_weather_/lightning_06.webp:0,0,155,230 +images/rooms/_weather_/night_cloud_01.webp:5,9,33,10 +images/rooms/_weather_/night_cloud_02.webp:9,14,74,20 +images/rooms/_weather_/night_cloud_03.webp:6,7,48,12 +images/rooms/_weather_/night_sky.webp:16,18,120,188 +images/rooms/_weather_/night_sky_moon.webp:0,0,155,206 +images/rooms/_weather_/night_sky_moon_cloudy.webp:0,0,155,206 +images/rooms/_weather_/night_sky_moon_overcast.webp:0,0,155,206 +images/rooms/_weather_/night_sky_overcast.webp:0,0,155,206 +images/rooms/_weather_/rain_01.webp:25,0,115,230 +images/rooms/_weather_/rain_02.webp:24,0,118,230 +images/rooms/_weather_/rain_03.webp:24,0,127,230 +images/rooms/_weather_/sky.webp:28,18,100,177 +images/rooms/_weather_/sky_overcast.webp:16,12,123,194 +images/rooms/_weather_/snow_01.webp:0,0,155,230 +images/rooms/_weather_/snow_02.webp:0,0,155,230 +images/rooms/_weather_/snow_03.webp:0,0,155,230 +images/rooms/_weather_/snow_04.webp:0,0,155,230 +images/rooms/_weather_/snow_05.webp:0,0,155,230 +images/rooms/_weather_/snow_06.webp:0,0,155,230 +images/rooms/_weather_/snow_07.webp:0,0,155,230 +images/rooms/_weather_/snow_08.webp:0,1,155,229 +images/rooms/_weather_/snow_09.webp:0,0,155,230 +images/rooms/_weather_/snow_10.webp:0,0,155,230 +images/rooms/boxing_ring/bg.webp:0,0,2160,1200 +images/rooms/boxing_ring/crowd_back.webp:145,0,1909,715 +images/rooms/boxing_ring/crowd_front.webp:24,990,2136,210 +images/rooms/boxing_ring/dust.webp:86,86,1928,777 +images/rooms/boxing_ring/lights.webp:0,0,2160,1200 +images/rooms/boxing_ring/microphone.webp:0,0,47,339 +images/rooms/boxing_ring/ring.webp:84,592,1987,608 +images/rooms/boxing_ring/stands.webp:0,92,2160,1108 +images/rooms/boxing_ring/vignette.webp:0,0,2160,1200 +images/rooms/main_room/chair_left.webp:38,62,222,370 +images/rooms/main_room/chair_left_no_shadow.webp:19,31,98,176 +images/rooms/main_room/chair_right.webp:10,62,222,370 +images/rooms/main_room/desk_empty.webp:202,144,257,369 +images/rooms/main_room/desk_no_shadow.webp:23,78,169,174 +images/rooms/main_room/dum.webp:0,51,459,461 +images/rooms/objects/candles/candle.webp:188,200,36,119 +images/rooms/objects/candles/candleM.webp:190,199,36,120 +images/rooms/objects/candles/fire_01.webp:27,21,150,152 +images/rooms/objects/candles/fire_02.webp:27,21,150,152 +images/rooms/objects/candles/fire_03.webp:27,21,150,152 +images/rooms/objects/candles/fire_04.webp:27,21,150,152 +images/rooms/objects/candles/fire_05.webp:27,21,150,152 +images/rooms/objects/candles/fire_06.webp:27,21,150,152 +images/rooms/objects/candles/fire_07.webp:27,21,150,152 +images/rooms/objects/candles/fire_08.webp:31,26,142,143 +images/rooms/objects/candles/fire_09.webp:27,21,150,152 +images/rooms/objects/candles/fire_10.webp:27,21,150,152 +images/rooms/objects/cupboard/cupboard_open.webp:20,30,392,734 +images/rooms/objects/cupboard/cupboard_w_shadow.webp:20,30,306,734 +images/rooms/objects/deco/hogwarts_banner.webp:4,0,69,158 +images/rooms/objects/deco/owlbasin.webp:0,0,180,424 +images/rooms/objects/decorations/agrabah_poster.webp:2,2,123,161 +images/rooms/objects/decorations/bats_trophy.webp:1,0,769,166 +images/rooms/objects/decorations/crest_trophy.webp:0,0,146,150 +images/rooms/objects/decorations/gryffindor_poster.webp:2,2,123,161 +images/rooms/objects/decorations/halloween_chair.webp:0,0,80,117 +images/rooms/objects/decorations/halloween_chandelier.webp:90,8,373,311 +images/rooms/objects/decorations/halloween_cupboard.webp:0,626,171,160 +images/rooms/objects/decorations/halloween_cupboard2.webp:0,0,130,123 +images/rooms/objects/decorations/halloween_fireplace.webp:3,385,115,103 +images/rooms/objects/decorations/halloween_fireplace2.webp:0,1,215,61 +images/rooms/objects/decorations/halloween_lamp/filament.webp:226,226,40,40 +images/rooms/objects/decorations/halloween_lamp/glow.webp:17,18,458,457 +images/rooms/objects/decorations/halloween_lamp/left.webp:1,0,90,130 +images/rooms/objects/decorations/halloween_lamp/right.webp:1,0,90,129 +images/rooms/objects/decorations/halloween_monster/0.webp:0,0,27,66 +images/rooms/objects/decorations/halloween_monster/1.webp:0,0,27,66 +images/rooms/objects/decorations/halloween_monster/2.webp:0,0,27,66 +images/rooms/objects/decorations/halloween_monster/3.webp:0,0,27,66 +images/rooms/objects/decorations/halloween_phoenix.webp:104,47,98,287 +images/rooms/objects/decorations/halloween_rug.webp:0,0,525,131 +images/rooms/objects/decorations/harlot_poster.webp:2,2,123,161 +images/rooms/objects/decorations/hat_fireplace.webp:166,79,75,57 +images/rooms/objects/decorations/hat_owl.webp:13,12,84,71 +images/rooms/objects/decorations/hat_phoenix.webp:127,45,79,59 +images/rooms/objects/decorations/hermione_poster.webp:2,2,123,161 +images/rooms/objects/decorations/hufflepuff_poster.webp:2,2,123,161 +images/rooms/objects/decorations/ravenclaw_poster.webp:2,2,123,161 +images/rooms/objects/decorations/slytherin_poster.webp:2,2,123,161 +images/rooms/objects/decorations/small_owl/idle_0.webp:28,41,115,190 +images/rooms/objects/decorations/small_owl/idle_1.webp:28,41,115,190 +images/rooms/objects/decorations/small_owl/idle_2.webp:28,41,115,190 +images/rooms/objects/decorations/small_owl/letter_0.webp:25,41,129,190 +images/rooms/objects/decorations/small_owl/letter_1.webp:25,41,129,190 +images/rooms/objects/decorations/small_owl/letter_2.webp:25,41,129,190 +images/rooms/objects/decorations/small_owl/letter_hover.webp:25,41,129,190 +images/rooms/objects/decorations/snow_owl/idle_0.webp:11,0,155,231 +images/rooms/objects/decorations/snow_owl/idle_1.webp:11,0,155,231 +images/rooms/objects/decorations/snow_owl/idle_2.webp:11,0,155,231 +images/rooms/objects/decorations/snow_owl/letter_0.webp:0,0,166,231 +images/rooms/objects/decorations/snow_owl/letter_1.webp:0,0,166,231 +images/rooms/objects/decorations/snow_owl/letter_2.webp:0,0,166,231 +images/rooms/objects/decorations/snow_owl/letter_hover.webp:0,0,166,231 +images/rooms/objects/decorations/stag_trophy.webp:9,0,96,164 +images/rooms/objects/decorations/stripper_poster.webp:2,2,123,161 +images/rooms/objects/decorations/tonks_poster.webp:2,2,123,161 +images/rooms/objects/decorations/wanted_poster.webp:2,2,123,161 +images/rooms/objects/decorations/xmas_cupboard.webp:18,120,64,45 +images/rooms/objects/decorations/xmas_door.webp:52,17,28,37 +images/rooms/objects/decorations/xmas_fireplace.webp:104,64,148,158 +images/rooms/objects/decorations/xmas_giftchair.webp:0,0,100,127 +images/rooms/objects/decorations/xmas_lights/base.webp:459,61,1250,197 +images/rooms/objects/decorations/xmas_lights/bulbset_1.webp:489,80,1133,102 +images/rooms/objects/decorations/xmas_lights/bulbset_2.webp:531,91,1127,93 +images/rooms/objects/decorations/xmas_lights/glowset_1.webp:456,65,1201,144 +images/rooms/objects/decorations/xmas_lights/glowset_2.webp:497,67,1194,140 +images/rooms/objects/decorations/xmas_lights/underlay.webp:489,80,1169,104 +images/rooms/objects/decorations/xmas_owl.webp:14,16,63,49 +images/rooms/objects/decorations/xmas_phoenix.webp:106,52,109,274 +images/rooms/objects/decorations/xmas_wreaths.webp:0,0,138,146 +images/rooms/objects/desk/letter.webp:258,303,78,30 +images/rooms/objects/desk/plant.webp:281,212,49,99 +images/rooms/objects/doors/door_hover.webp:36,16,252,552 +images/rooms/objects/doors/door_hover_night.webp:36,16,252,552 +images/rooms/objects/doors/door_idle.webp:36,16,252,552 +images/rooms/objects/doors/door_idle_night.webp:36,16,252,552 +images/rooms/objects/fireplace/fireplace_fire_01.webp:0,67,233,239 +images/rooms/objects/fireplace/fireplace_fire_02.webp:0,74,233,229 +images/rooms/objects/fireplace/fireplace_fire_03.webp:0,67,233,239 +images/rooms/objects/fireplace/fireplace_fire_04.webp:0,78,233,225 +images/rooms/objects/fireplace/fireplace_fire_05.webp:0,67,233,239 +images/rooms/objects/fireplace/fireplace_fire_06.webp:0,67,233,239 +images/rooms/objects/fireplace/fireplace_fire_07.webp:0,67,233,239 +images/rooms/objects/fireplace/fireplace_fire_08.webp:0,67,233,239 +images/rooms/objects/fireplace/fireplace_hover.webp:44,38,254,428 +images/rooms/objects/fireplace/fireplace_idle.webp:44,38,254,428 +images/rooms/objects/fireplace/fireplace_w_shadow.webp:42,38,256,434 +images/rooms/objects/fireplace/fireplace_xmas.webp:21,19,128,217 +images/rooms/objects/fireplace/fireplace_xmas_hover.webp:22,19,127,214 +images/rooms/objects/fireplace/fireplace_xmas_idle.webp:22,19,127,214 +images/rooms/objects/mail/owl_01.webp:15,35,81,138 +images/rooms/objects/mail/owl_02.webp:15,35,81,138 +images/rooms/objects/mail/owl_03.webp:15,35,81,138 +images/rooms/objects/mail/owl_hover.webp:15,35,81,138 +images/rooms/objects/mail/owl_idle_01.webp:15,35,81,138 +images/rooms/objects/mail/owl_idle_02.webp:15,35,81,138 +images/rooms/objects/mail/owl_idle_03.webp:15,35,81,138 +images/rooms/objects/parcel/idle.webp:3,17,51,43 +images/rooms/objects/phoenix/feather_ani/pho_01.webp:78,207,15,39 +images/rooms/objects/phoenix/feather_ani/pho_02.webp:74,231,15,39 +images/rooms/objects/phoenix/feather_ani/pho_03.webp:45,261,39,23 +images/rooms/objects/phoenix/feather_ani/pho_04.webp:29,272,38,15 +images/rooms/objects/phoenix/feather_ani/pho_05.webp:30,268,23,38 +images/rooms/objects/phoenix/feather_ani/pho_06.webp:50,300,28,35 +images/rooms/objects/phoenix/feather_ani/pho_07.webp:69,322,35,30 +images/rooms/objects/phoenix/feather_ani/pho_08.webp:92,346,39,21 +images/rooms/objects/phoenix/feather_ani/pho_09.webp:120,361,40,17 +images/rooms/objects/phoenix/feather_ani/pho_10.webp:151,366,39,16 +images/rooms/objects/phoenix/feather_ani/pho_11.webp:157,364,37,19 +images/rooms/objects/phoenix/feather_ani/pho_12.webp:154,375,30,33 +images/rooms/objects/phoenix/feather_ani/pho_13.webp:144,405,21,36 +images/rooms/objects/phoenix/feather_ani/pho_14.webp:123,438,25,34 +images/rooms/objects/phoenix/feather_ani/pho_15.webp:94,470,34,27 +images/rooms/objects/phoenix/feather_ani/pho_16.webp:58,494,39,22 +images/rooms/objects/phoenix/feather_ani/pho_17.webp:52,496,40,16 +images/rooms/objects/phoenix/feather_ani/pho_18.webp:52,496,40,16 +images/rooms/objects/phoenix/food.webp:166,204,42,24 +images/rooms/objects/phoenix/phoenix_01.webp:92,66,123,439 +images/rooms/objects/phoenix/phoenix_02.webp:92,66,123,439 +images/rooms/objects/phoenix/phoenix_03.webp:92,66,123,439 +images/rooms/objects/phoenix/phoenix_hover.webp:92,66,123,439 +images/rooms/overlays/card.webp:380,60,320,480 +images/rooms/overlays/card_sp.webp:0,0,1080,600 +images/rooms/overlays/curtains.webp:0,0,1080,600 +images/rooms/overlays/g_bottom.webp:0,0,1080,600 +images/rooms/overlays/g_circular.webp:0,0,1080,600 +images/rooms/overlays/g_left.webp:0,0,1080,600 +images/rooms/quidditch_pitch/back.webp:503,163,1124,687 +images/rooms/quidditch_pitch/back_overlay.webp:739,170,674,231 +images/rooms/quidditch_pitch/butterfly/0.webp:0,0,55,70 +images/rooms/quidditch_pitch/butterfly/1.webp:0,0,45,70 +images/rooms/quidditch_pitch/butterfly/2.webp:0,0,37,70 +images/rooms/quidditch_pitch/front.webp:0,0,2160,1200 +images/rooms/quidditch_pitch/mid.webp:0,0,2160,1200 +images/rooms/quidditch_stands/bg_overcast.webp:0,0,2160,1200 +images/rooms/quidditch_stands/bg_sun_high.webp:0,0,2160,1200 +images/rooms/quidditch_stands/bg_sun_low.webp:0,0,2160,1200 +images/rooms/quidditch_stands/bludger.webp:0,0,38,38 +images/rooms/quidditch_stands/cho_chase/cho_chase.webp:480,36,1310,1180 +images/rooms/quidditch_stands/cho_chase/cho_chase_goggles.webp:828,61,256,140 +images/rooms/quidditch_stands/cho_chase/cho_chase_panties.webp:1281,733,66,71 +images/rooms/quidditch_stands/cho_chase/sky.webp:0,0,1080,608 +images/rooms/quidditch_stands/cho_chase/snitch0.webp:102,123,96,99 +images/rooms/quidditch_stands/cho_chase/snitch1.webp:88,132,115,90 +images/rooms/quidditch_stands/cho_chase/snitch2.webp:78,140,140,82 +images/rooms/quidditch_stands/crowd_bj0.webp:1067,852,105,186 +images/rooms/quidditch_stands/crowd_bj1.webp:1067,852,105,186 +images/rooms/quidditch_stands/crowd_low_1.webp:1281,280,873,351 +images/rooms/quidditch_stands/crowd_low_2.webp:1268,280,828,271 +images/rooms/quidditch_stands/crowd_low_3.webp:1292,302,868,289 +images/rooms/quidditch_stands/crowd_low_4.webp:971,1134,145,66 +images/rooms/quidditch_stands/crowd_tower_1.webp:943,0,79,85 +images/rooms/quidditch_stands/crowd_tower_2.webp:1036,35,113,110 +images/rooms/quidditch_stands/fg_overcast.webp:0,0,995,1200 +images/rooms/quidditch_stands/fg_sun_high.webp:0,0,995,1200 +images/rooms/quidditch_stands/fg_sun_low.webp:0,0,995,1200 +images/rooms/quidditch_stands/fire/0.webp:0,1,102,94 +images/rooms/quidditch_stands/fire/1.webp:10,0,92,94 +images/rooms/quidditch_stands/frame.webp:0,0,2160,1200 +images/rooms/quidditch_stands/hole.webp:309,936,138,174 +images/rooms/quidditch_stands/podium_overcast.webp:709,590,122,227 +images/rooms/quidditch_stands/podium_sun_high.webp:709,590,122,227 +images/rooms/quidditch_stands/podium_sun_low.webp:709,590,122,227 +images/rooms/quidditch_stands/rain/heavy_0.webp:0,0,2160,1200 +images/rooms/quidditch_stands/rain/heavy_1.webp:0,0,2160,1200 +images/rooms/quidditch_stands/rain/heavy_2.webp:0,0,2160,1200 +images/rooms/quidditch_stands/rain/heavysurf_0.webp:258,0,1902,1200 +images/rooms/quidditch_stands/rain/heavysurf_1.webp:263,0,1897,1200 +images/rooms/quidditch_stands/rain/heavysurf_2.webp:263,0,1897,1200 +images/rooms/quidditch_stands/rain/heavysurf_top_0.webp:0,521,994,679 +images/rooms/quidditch_stands/rain/heavysurf_top_1.webp:0,521,994,679 +images/rooms/quidditch_stands/rain/heavysurf_top_2.webp:0,521,994,679 +images/rooms/quidditch_stands/spotlight.webp:0,0,2160,1200 +images/rooms/quidditch_stands2/bg_sun_low.webp:0,0,2160,1200 +images/rooms/quidditch_stands2/crowd_low_1.webp:6,280,873,351 +images/rooms/quidditch_stands2/crowd_low_2.webp:64,280,744,271 +images/rooms/quidditch_stands2/crowd_low_3.webp:0,302,868,289 +images/rooms/quidditch_stands2/crowd_low_4.webp:1044,1134,145,66 +images/rooms/quidditch_stands2/crowd_tower_1.webp:1138,0,79,85 +images/rooms/quidditch_stands2/crowd_tower_2.webp:1011,35,113,110 +images/rooms/quidditch_stands2/fg_sun_low.webp:1166,0,994,1200 +images/rooms/room_of_requirement/Mirror.webp:33,1,123,279 +images/rooms/room_of_requirement/agrabah.webp:0,204,494,374 +images/rooms/room_of_requirement/bg.webp:0,0,1080,600 +images/rooms/room_of_requirement/corridor.webp:0,0,1080,600 +images/rooms/room_of_requirement/dark_overlay.webp:0,0,1080,600 +images/rooms/room_of_requirement/dark_overlay_1.webp:0,0,1080,600 +images/rooms/room_of_requirement/dark_overlay_2.webp:0,0,1080,600 +images/rooms/room_of_requirement/dark_overlay_3.webp:0,0,1080,600 +images/rooms/room_of_requirement/day_to_night.webp:0,0,800,600 +images/rooms/room_of_requirement/foreground.webp:0,0,1080,600 +images/rooms/room_of_requirement/horns.webp:261,97,72,119 +images/rooms/room_of_requirement/mirror_hover.webp:33,1,123,279 +images/rooms/room_of_requirement/paperandmic.webp:68,140,85,37 +images/rooms/room_of_requirement/table.webp:23,132,169,120 +images/rooms/room_of_requirement/table_hat.webp:120,107,52,41 +images/rooms/room_of_requirement/web.webp:7,35,147,98 +images/rooms/room_of_requirement/whose_points.webp:0,0,1080,600 +images/rooms/seventh_floor/bg.webp:0,0,2160,1200 +images/rooms/seventh_floor/door.webp:0,0,311,517 +images/rooms/seventh_floor/fire0.webp:0,0,395,395 +images/rooms/seventh_floor/fire1.webp:0,0,395,395 +images/rooms/seventh_floor/fire2.webp:0,0,395,395 +images/rooms/seventh_floor/fire3.webp:0,0,395,395 +images/rooms/seventh_floor/fire4.webp:0,0,395,395 +images/rooms/seventh_floor/fire5.webp:0,0,395,395 +images/rooms/seventh_floor/fire_basin.webp:138,214,119,304 +images/rooms/snape_office/bg.webp:0,0,2160,1200 +images/rooms/snape_office/brewing_station_bloom.webp:0,0,204,195 +images/rooms/snape_office/brewing_station_off.webp:0,0,372,248 +images/rooms/snape_office/brewing_station_on.webp:0,0,372,248 +images/rooms/snape_office/candelabra.webp:0,0,141,392 +images/rooms/snape_office/desk.webp:0,0,554,390 +images/rooms/snape_office/door.webp:0,0,252,552 +images/rooms/snape_office/drip/01.webp:85,168,5,4 +images/rooms/snape_office/drip/02.webp:86,168,4,5 +images/rooms/snape_office/drip/03.webp:86,169,4,5 +images/rooms/snape_office/drip/04.webp:86,170,3,5 +images/rooms/snape_office/lamp/01.webp:102,77,22,21 +images/rooms/snape_office/lamp/02.webp:102,77,22,21 +images/rooms/snape_office/lamp/03.webp:102,77,22,21 +images/rooms/snape_office/lamp/glow.webp:9,0,209,193 +images/rooms/snape_office/picture.webp:0,0,178,187 +images/rooms/snape_office/shelves.webp:6,21,288,329 +images/rooms/snape_office/shelves_alt.webp:6,4,293,346 +images/rooms/snape_office/smoke/01.webp:2,12,40,97 +images/rooms/snape_office/smoke/02.webp:2,8,44,101 +images/rooms/snape_office/smoke/03.webp:2,7,44,102 +images/rooms/snape_office/smoke/04.webp:1,5,44,104 +images/rooms/snape_office/smoke/05.webp:1,1,45,107 +images/rooms/snape_office/smoke/06.webp:1,6,48,103 +images/rooms/snape_office/smoke/07.webp:2,8,45,102 +images/rooms/snape_office/smoke/08.webp:5,8,44,102 +images/rooms/snape_office/smoke/09.webp:3,11,51,98 +images/rooms/snape_office/smoke/10.webp:4,13,51,97 +images/rooms/snape_office/smoke/11.webp:4,16,48,93 +images/rooms/snape_office/smoke/12.webp:3,12,43,97 +images/rooms/snape_office/smoke/13.webp:2,10,42,99 +images/rooms/snape_office/statue.webp:0,0,96,175 +images/rooms/snape_office/vignette.webp:0,0,2160,1200 +images/rooms/snape_office/wax/01.webp:1,92,7,6 +images/rooms/snape_office/wax/02.webp:1,92,7,8 +images/rooms/snape_office/wax/03.webp:1,93,7,9 +images/rooms/snape_office/wax/04.webp:1,95,7,8 +images/rooms/snape_office/wax/05.webp:1,97,7,8 +images/rooms/weasley_store/cash register.webp:344,46,170,181 +images/rooms/weasley_store/chairR.webp:19,60,94,147 +images/rooms/weasley_store/corridor.webp:0,0,1080,600 +images/rooms/weasley_store/counterL.webp:0,0,302,127 +images/rooms/weasley_store/counterR.webp:0,0,293,127 +images/rooms/weasley_store/door2.webp:0,0,129,204 +images/rooms/weasley_store/entranceR.webp:17,11,129,204 +images/rooms/weasley_store/store_day.webp:0,0,1080,600 +images/rooms/weasley_store/store_empty.webp:0,0,1080,600 +images/rooms/weasley_store/store_empty2.webp:0,0,1080,600 +images/rooms/weasley_store/store_night.webp:0,0,1080,600 +images/scrolls/1.webp:0,0,1080,600 +images/scrolls/10.webp:0,0,1080,600 +images/scrolls/11.webp:0,0,1080,600 +images/scrolls/12.webp:0,0,1080,600 +images/scrolls/13.webp:0,0,1080,600 +images/scrolls/14.webp:0,0,1080,600 +images/scrolls/15.webp:0,0,1080,600 +images/scrolls/16.webp:0,0,1080,600 +images/scrolls/17.webp:0,0,1080,600 +images/scrolls/18.webp:0,0,1080,600 +images/scrolls/19.webp:0,0,1080,600 +images/scrolls/2.webp:0,0,1080,600 +images/scrolls/20.webp:0,0,1080,600 +images/scrolls/21.webp:0,0,1080,600 +images/scrolls/22.webp:0,0,1080,600 +images/scrolls/23.webp:0,0,1080,600 +images/scrolls/24.webp:0,0,1080,600 +images/scrolls/25.webp:0,0,1080,600 +images/scrolls/26.webp:0,0,1080,600 +images/scrolls/27.webp:0,0,1080,600 +images/scrolls/28.webp:0,0,1080,600 +images/scrolls/29.webp:0,0,1080,600 +images/scrolls/3.webp:0,0,1080,600 +images/scrolls/30.webp:0,0,1080,600 +images/scrolls/31.webp:0,0,1080,600 +images/scrolls/32.webp:0,0,1080,600 +images/scrolls/33.webp:0,0,1080,600 +images/scrolls/34.webp:0,0,1080,600 +images/scrolls/35.webp:0,0,1080,600 +images/scrolls/37.webp:2,11,832,581 +images/scrolls/4.webp:0,0,1080,600 +images/scrolls/5.webp:0,0,1080,600 +images/scrolls/6.webp:0,0,1080,600 +images/scrolls/7.webp:0,0,1080,600 +images/scrolls/8.webp:0,0,1080,600 +images/scrolls/9.webp:0,0,1080,600 +images/spectrevision/bg1.webp:0,440,2160,760 +images/spectrevision/bg2.webp:0,0,2160,1200 +images/spectrevision/bg_room.webp:0,52,2145,913 +images/spectrevision/wrackspurt_0000.webp:27,35,47,15 +images/spectrevision/wrackspurt_0001.webp:27,35,53,23 +images/spectrevision/wrackspurt_0002.webp:27,35,49,36 +images/spectrevision/wrackspurt_0003.webp:27,35,43,39 +images/spectrevision/wrackspurt_0004.webp:27,35,41,40 +images/spectrevision/wrackspurt_0005.webp:27,35,49,36 +images/spectrevision/wrackspurt_0006.webp:27,35,53,23 +interface/achievements/glass.webp:6,6,84,84 +interface/achievements/glass_iconbox.webp:3,2,43,44 +interface/achievements/glass_selected.webp:0,0,84,84 +interface/achievements/glow.webp:3,2,495,495 +interface/achievements/gold/box.webp:0,0,410,96 +interface/achievements/gold/highlight.webp:0,0,433,23 +interface/achievements/gold/highlight_left.webp:0,0,194,16 +interface/achievements/gold/highlight_left_b.webp:0,0,194,48 +interface/achievements/gold/icon_selected.webp:0,0,96,96 +interface/achievements/gold/iconbox.webp:0,0,48,48 +interface/achievements/gold/panel.webp:0,53,560,454 +interface/achievements/gold/panel_left.webp:0,0,207,454 +interface/achievements/gold/spacer.webp:0,0,417,4 +interface/achievements/gold/spacer_left.webp:0,0,195,4 +interface/achievements/gray/box.webp:0,0,410,96 +interface/achievements/gray/highlight.webp:0,0,433,23 +interface/achievements/gray/highlight_left.webp:0,0,194,16 +interface/achievements/gray/highlight_left_b.webp:0,0,194,48 +interface/achievements/gray/icon_selected.webp:0,0,96,96 +interface/achievements/gray/iconbox.webp:0,0,48,48 +interface/achievements/gray/panel.webp:0,53,560,454 +interface/achievements/gray/panel_left.webp:0,0,207,454 +interface/achievements/gray/spacer.webp:0,0,417,4 +interface/achievements/gray/spacer_left.webp:0,0,195,4 +interface/achievements/inventory.webp:199,0,180,53 +interface/achievements/markup.webp:522,104,32,396 +interface/achievements/secret.webp:18,11,63,81 +interface/achievements/star.webp:237,0,86,53 +interface/bld.webp:0,270,1080,330 +interface/book/back.webp:100,26,30,32 +interface/book/book_open.webp:194,85,733,509 +interface/book/hover.webp:49,2,109,128 +interface/book/page_01.webp:720,101,158,175 +interface/book/page_02.webp:597,99,283,353 +interface/book/page_03.webp:597,99,247,436 +interface/book/page_04.webp:574,96,137,412 +interface/book/page_05.webp:459,96,143,417 +interface/book/page_06.webp:376,94,206,416 +interface/book/page_07.webp:262,98,308,416 +interface/book/reverse_01.webp:262,96,616,439 +interface/book/reverse_02.webp:376,94,504,416 +interface/brewing/bg_off.webp:0,0,2160,1200 +interface/brewing/bg_on.webp:0,0,2160,1200 +interface/brewing/cauldron_off.webp:0,0,936,861 +interface/brewing/cauldron_on.webp:0,0,936,861 +interface/brewing/glow.webp:605,0,1555,1200 +interface/characters/astoria_locked.webp:183,313,643,887 +interface/characters/cho_locked.webp:456,309,269,891 +interface/characters/hermione_locked.webp:256,204,580,996 +interface/characters/luna_locked.webp:290,154,672,1046 +interface/characters/snape_locked.webp:16,34,966,1166 +interface/characters/susan_locked.webp:416,264,368,936 +interface/characters/tonks_locked.webp:354,220,491,980 +interface/color_picker/checker.webp:0,0,16,16 +interface/color_picker/gold/alpha.webp:0,0,261,36 +interface/color_picker/gold/cursor_h.webp:0,0,30,5 +interface/color_picker/gold/cursor_sq.webp:0,0,18,18 +interface/color_picker/gold/cursor_v.webp:0,0,5,30 +interface/color_picker/gold/frame.webp:0,0,505,358 +interface/color_picker/gold/frame_swatches.webp:0,0,505,108 +interface/color_picker/gray/alpha.webp:0,0,261,36 +interface/color_picker/gray/cursor_h.webp:0,0,30,5 +interface/color_picker/gray/cursor_sq.webp:0,0,18,18 +interface/color_picker/gray/cursor_v.webp:0,0,5,30 +interface/color_picker/gray/frame.webp:0,0,505,358 +interface/color_picker/gray/frame_swatches.webp:0,0,505,108 +interface/color_picker/saturation_value_gradient.webp:0,0,256,256 +interface/ctc00.webp:8,1,26,33 +interface/ctc01.webp:0,1,39,39 +interface/cursor.webp:0,0,22,28 +interface/desk/_bg_.webp:0,0,1080,634 +interface/desk/_hands_.webp:147,497,738,137 +interface/desk/_night_overlay_.webp:0,0,1080,634 +interface/desk/book.webp:38,0,262,313 +interface/desk/book_hover.webp:1,0,299,340 +interface/desk/cards.webp:0,22,139,162 +interface/desk/cards_hover.webp:0,0,160,184 +interface/desk/crystal_ball.webp:0,0,267,150 +interface/desk/exit.webp:87,1,88,169 +interface/desk/exit_mask.webp:0,0,0,0 +interface/desk/hints/attic.webp:0,0,85,92 +interface/desk/hints/book.webp:0,0,77,99 +interface/desk/hints/cards.webp:0,0,92,100 +interface/desk/hints/clothing_store.webp:0,0,124,95 +interface/desk/hints/dorm_gryffindor.webp:0,0,133,96 +interface/desk/hints/dorm_hufflepuff.webp:0,0,123,94 +interface/desk/hints/dorm_ravenclaw.webp:0,0,127,95 +interface/desk/hints/dorm_slytherin.webp:0,0,116,93 +interface/desk/hints/doze_off.webp:0,0,118,98 +interface/desk/hints/exit.webp:0,0,103,96 +interface/desk/hints/forest.webp:0,0,98,96 +interface/desk/hints/glow.webp:0,0,159,102 +interface/desk/hints/jerk_off.webp:0,0,115,99 +interface/desk/hints/lake.webp:0,0,76,92 +interface/desk/hints/office.webp:0,0,93,95 +interface/desk/hints/potions.webp:0,0,115,96 +interface/desk/hints/room_of_req.webp:0,0,141,82 +interface/desk/hints/sleep.webp:0,0,80,98 +interface/desk/hints/summon_astoria.webp:0,0,114,100 +interface/desk/hints/summon_cho.webp:0,0,114,98 +interface/desk/hints/summon_hermione.webp:0,0,114,96 +interface/desk/hints/summon_luna.webp:0,0,114,100 +interface/desk/hints/summon_snape.webp:0,1,114,99 +interface/desk/hints/summon_susan.webp:0,0,114,100 +interface/desk/hints/summon_tonks.webp:0,0,114,100 +interface/desk/hints/weasley_store.webp:0,0,130,97 +interface/desk/hints/work.webp:0,0,87,99 +interface/desk/tissues.webp:37,35,197,184 +interface/desk/tissues_hover.webp:2,0,232,252 +interface/desk/watch.webp:1,0,241,153 +interface/desk/watch/day.webp:0,0,31,14 +interface/desk/watch/moon.webp:0,0,67,67 +interface/desk/watch/night.webp:0,0,41,18 +interface/desk/watch/rain.webp:0,0,67,67 +interface/desk/watch/snow.webp:0,0,67,67 +interface/desk/watch/storm.webp:0,0,67,67 +interface/desk/watch/sun.webp:0,0,67,67 +interface/desk/watch_hover.webp:1,0,241,155 +interface/desk/work.webp:0,0,259,431 +interface/desk/work_hover.webp:0,0,276,464 +interface/frames/gold/arrow.webp:68,26,32,48 +interface/frames/gold/arrow2.webp:0,0,32,48 +interface/frames/gold/arrow_up.webp:0,0,48,32 +interface/frames/gold/check_false.webp:0,2,38,38 +interface/frames/gold/check_none.webp:0,2,38,38 +interface/frames/gold/check_true.webp:0,2,40,38 +interface/frames/gold/circle.webp:0,0,50,50 +interface/frames/gold/frame.webp:235,28,610,90 +interface/frames/gold/iconframe.webp:0,0,72,72 +interface/frames/gold/iconmed.webp:0,0,72,72 +interface/frames/gold/item_rectangle.webp:0,0,467,553 +interface/frames/gold/namebox.webp:0,0,164,32 +interface/frames/gold/outfit.webp:0,0,197,325 +interface/frames/gold/panel.webp:0,53,560,454 +interface/frames/gold/panel_left.webp:0,0,207,454 +interface/frames/gold/radio_false.webp:1,1,38,38 +interface/frames/gold/radio_none.webp:1,1,38,38 +interface/frames/gold/radio_true.webp:1,1,38,38 +interface/frames/gold/spacer_left.webp:0,0,195,4 +interface/frames/gold/wardrobe.webp:0,53,344,454 +interface/frames/gray/arrow.webp:68,26,32,48 +interface/frames/gray/arrow2.webp:0,0,32,48 +interface/frames/gray/arrow_up.webp:0,0,48,32 +interface/frames/gray/check_false.webp:0,2,38,38 +interface/frames/gray/check_none.webp:0,2,38,38 +interface/frames/gray/check_true.webp:0,2,40,38 +interface/frames/gray/circle.webp:0,0,50,50 +interface/frames/gray/frame.webp:235,28,610,90 +interface/frames/gray/iconframe.webp:0,0,72,72 +interface/frames/gray/iconmed.webp:0,0,72,72 +interface/frames/gray/item_rectangle.webp:0,0,467,553 +interface/frames/gray/namebox.webp:0,0,164,32 +interface/frames/gray/outfit.webp:0,0,197,325 +interface/frames/gray/panel.webp:0,53,560,454 +interface/frames/gray/panel_left.webp:0,0,207,454 +interface/frames/gray/radio_false.webp:1,1,38,38 +interface/frames/gray/radio_none.webp:1,1,38,38 +interface/frames/gray/radio_true.webp:1,1,38,38 +interface/frames/gray/spacer_left.webp:0,0,195,4 +interface/frames/gray/wardrobe.webp:0,53,344,454 +interface/general/arrow_down.webp:0,0,12,12 +interface/general/arrow_up.webp:0,0,12,11 +interface/general/button_arrow_down.webp:5,9,31,25 +interface/general/button_arrow_down_hover.webp:2,7,38,29 +interface/general/button_arrow_left.webp:8,6,25,31 +interface/general/button_arrow_left_hover.webp:6,2,29,38 +interface/general/button_arrow_right.webp:9,6,25,31 +interface/general/button_arrow_right_hover.webp:7,2,29,38 +interface/general/button_arrow_up.webp:5,8,31,25 +interface/general/button_arrow_up_hover.webp:2,6,38,29 +interface/general/button_close.webp:5,7,32,29 +interface/general/button_close_hover.webp:1,2,41,38 +interface/general/gold/button_arrow_down.webp:0,0,42,42 +interface/general/gold/button_arrow_down_hover.webp:0,0,42,42 +interface/general/gold/button_arrow_left.webp:0,0,42,42 +interface/general/gold/button_arrow_left_hover.webp:0,0,42,42 +interface/general/gold/button_arrow_right.webp:0,0,42,42 +interface/general/gold/button_arrow_right_hover.webp:0,0,42,42 +interface/general/gold/button_arrow_up.webp:0,0,42,42 +interface/general/gold/button_arrow_up_hover.webp:0,0,42,42 +interface/general/gold/button_close.webp:0,0,42,42 +interface/general/gold/button_close_hover.webp:0,0,42,42 +interface/general/gold/button_select.webp:0,0,84,34 +interface/general/gold/button_select_hover.webp:0,0,84,34 +interface/general/gold/button_wide.webp:0,0,140,34 +interface/general/gold/check_false.webp:1,5,18,18 +interface/general/gold/check_false_hidden.webp:1,5,18,18 +interface/general/gold/check_true.webp:1,0,21,23 +interface/general/gold/check_true_hidden.webp:1,0,21,23 +interface/general/gold/clothes.webp:0,0,30,20 +interface/general/gold/clothes_hover.webp:0,0,30,20 +interface/general/gold/spacer.webp:4,1,413,1 +interface/general/gold_bag.webp:8,12,107,98 +interface/general/gold_bag_hover.webp:6,9,112,103 +interface/general/gray/button_arrow_down.webp:0,0,42,42 +interface/general/gray/button_arrow_down_hover.webp:0,0,42,42 +interface/general/gray/button_arrow_left.webp:0,0,42,42 +interface/general/gray/button_arrow_left_hover.webp:0,0,42,42 +interface/general/gray/button_arrow_right.webp:0,0,42,42 +interface/general/gray/button_arrow_right_hover.webp:0,0,42,42 +interface/general/gray/button_arrow_up.webp:0,0,42,42 +interface/general/gray/button_arrow_up_hover.webp:0,0,42,42 +interface/general/gray/button_close.webp:0,0,42,42 +interface/general/gray/button_close_hover.webp:0,0,42,42 +interface/general/gray/button_select.webp:0,0,84,34 +interface/general/gray/button_select_hover.webp:0,0,84,34 +interface/general/gray/button_wide.webp:0,0,140,34 +interface/general/gray/check_false.webp:1,5,18,18 +interface/general/gray/check_false_hidden.webp:1,5,18,18 +interface/general/gray/check_true.webp:1,0,21,23 +interface/general/gray/check_true_hidden.webp:1,0,21,23 +interface/general/gray/clothes.webp:0,0,30,20 +interface/general/gray/clothes_hover.webp:0,0,30,20 +interface/general/gray/spacer.webp:4,1,413,1 +interface/icon.webp:37,2,188,254 +interface/icons/adult_mag.webp:42,33,266,260 +interface/icons/agrabah_poster.webp:4,5,235,309 +interface/icons/animal_hair.webp:286,249,354,454 +interface/icons/ass_potion.webp:313,94,343,791 +interface/icons/badge_spew.webp:92,102,152,180 +interface/icons/ballgag_and_cuffs.webp:39,56,272,222 +interface/icons/bat_spleen.webp:244,188,464,579 +interface/icons/bats_trophy.webp:1,0,769,166 +interface/icons/beads.webp:36,58,257,201 +interface/icons/bicorn_horn.webp:233,218,484,518 +interface/icons/box_blue_1.webp:44,66,261,231 +interface/icons/box_blue_2.webp:34,57,259,225 +interface/icons/box_blue_3.webp:34,67,259,215 +interface/icons/box_blue_4.webp:34,67,259,215 +interface/icons/box_blue_5.webp:34,57,259,225 +interface/icons/box_brown_1.webp:34,65,256,228 +interface/icons/box_brown_2.webp:34,67,259,215 +interface/icons/box_brown_3.webp:34,67,259,215 +interface/icons/box_brown_4.webp:55,79,208,187 +interface/icons/box_red_1.webp:48,84,222,181 +interface/icons/box_red_2.webp:37,70,259,211 +interface/icons/box_red_3.webp:34,67,259,215 +interface/icons/box_red_4.webp:37,70,259,211 +interface/icons/box_red_5.webp:37,70,259,211 +interface/icons/breast_potion.webp:289,94,391,794 +interface/icons/broom.webp:9,61,311,255 +interface/icons/butterbeer.webp:75,58,211,250 +interface/icons/buttplug_large.webp:32,106,288,128 +interface/icons/buttplug_medium.webp:72,85,248,197 +interface/icons/buttplug_small.webp:97,29,128,182 +interface/icons/buttplugs.webp:61,68,218,204 +interface/icons/cards.webp:17,91,303,229 +interface/icons/cat_potion.webp:247,188,464,616 +interface/icons/chocolate.webp:40,73,243,220 +interface/icons/collar.webp:134,281,658,344 +interface/icons/condoms.webp:44,92,232,187 +interface/icons/crest_trophy.webp:0,0,310,320 +interface/icons/dried_nettle.webp:249,334,452,343 +interface/icons/feather_duster.webp:24,43,286,277 +interface/icons/firewhisky.webp:106,30,146,254 +interface/icons/fluxweed.webp:306,175,303,635 +interface/icons/galadriel1_book.webp:37,19,243,301 +interface/icons/galadriel2_book.webp:40,19,243,301 +interface/icons/game_of_chairs1_book.webp:49,40,249,273 +interface/icons/game_of_chairs2_book.webp:0,40,298,273 +interface/icons/game_of_chairs3_book.webp:49,40,249,273 +interface/icons/game_of_chairs8_book.webp:49,40,249,273 +interface/icons/generic_book.webp:33,55,282,214 +interface/icons/generic_scroll.webp:2,77,312,195 +interface/icons/girls_mag.webp:43,41,260,275 +interface/icons/gold.webp:91,94,159,146 +interface/icons/gryffindor_poster.webp:4,5,235,309 +interface/icons/hair_hermione.webp:222,273,494,419 +interface/icons/hair_luna.webp:222,273,494,419 +interface/icons/halloween_chair.webp:0,0,80,117 +interface/icons/halloween_chandelier.webp:12,8,519,311 +interface/icons/halloween_cupboard.webp:0,15,163,378 +interface/icons/halloween_cupboard2.webp:0,0,130,123 +interface/icons/halloween_fireplace.webp:3,38,295,450 +interface/icons/halloween_fireplace2.webp:44,38,254,428 +interface/icons/halloween_lampL.webp:1,0,90,130 +interface/icons/halloween_lampR.webp:1,0,90,129 +interface/icons/halloween_monster.webp:1,0,66,27 +interface/icons/halloween_phoenix.webp:92,47,123,458 +interface/icons/halloween_rug.webp:0,0,525,131 +interface/icons/harlot_poster.webp:4,5,235,309 +interface/icons/hat_fireplace.webp:0,0,128,217 +interface/icons/hat_owl.webp:13,12,84,161 +interface/icons/hat_phoenix.webp:0,0,60,205 +interface/icons/head/astoria.webp:0,0,200,200 +interface/icons/head/astoria_locked.webp:0,0,200,200 +interface/icons/head/cho.webp:0,0,200,200 +interface/icons/head/cho_locked.webp:0,0,200,200 +interface/icons/head/dumbledore.webp:0,0,200,200 +interface/icons/head/fawkes.webp:22,22,128,128 +interface/icons/head/fred.webp:24,0,176,200 +interface/icons/head/genie.webp:0,0,200,200 +interface/icons/head/george.webp:26,1,171,199 +interface/icons/head/hat.webp:0,0,200,200 +interface/icons/head/hermione.webp:0,0,200,200 +interface/icons/head/hermione_locked.webp:0,0,200,200 +interface/icons/head/luna.webp:0,0,200,200 +interface/icons/head/luna_locked.webp:0,0,200,200 +interface/icons/head/mafkin.webp:0,0,200,200 +interface/icons/head/narrator.webp:0,0,200,200 +interface/icons/head/santa.webp:0,0,200,200 +interface/icons/head/snape.webp:0,0,197,200 +interface/icons/head/snape_locked.webp:0,0,197,200 +interface/icons/head/susan.webp:8,0,192,200 +interface/icons/head/susan_locked.webp:8,0,192,200 +interface/icons/head/tonks.webp:0,0,200,200 +interface/icons/head/tonks_locked.webp:0,0,200,200 +interface/icons/hermione_poster.webp:4,5,235,309 +interface/icons/hufflepuff_poster.webp:4,5,235,309 +interface/icons/icon_gambler_hat.webp:41,39,259,242 +interface/icons/icon_lock.webp:0,2,16,20 +interface/icons/icon_lock_open.webp:0,0,16,22 +interface/icons/icon_piercing.webp:14,65,279,196 +interface/icons/icon_piercing_fancy.webp:15,66,279,194 +interface/icons/icon_tattoo.webp:111,25,99,247 +interface/icons/item_potion.webp:88,90,117,206 +interface/icons/item_voucher.webp:295,234,229,179 +interface/icons/knotgrass.webp:220,286,551,442 +interface/icons/krum_poster.webp:33,1,287,319 +interface/icons/leeches.webp:244,188,464,579 +interface/icons/lipstick_red.webp:86,52,141,217 +interface/icons/lollipop.webp:63,46,231,256 +interface/icons/lube.webp:62,94,182,149 +interface/icons/luna_potion.webp:247,188,464,616 +interface/icons/my_dear_waifu_book.webp:53,37,201,283 +interface/icons/panties.webp:23,83,293,201 +interface/icons/panties_cum.webp:23,83,293,201 +interface/icons/phone.webp:61,58,199,202 +interface/icons/plush_owl.webp:47,55,241,232 +interface/icons/plush_owl_strapon.webp:0,55,288,232 +interface/icons/porn_mag.webp:45,49,259,252 +interface/icons/potion_generic.webp:260,73,436,819 +interface/icons/pufferfish_eyes.webp:244,188,464,579 +interface/icons/puzzle_box.webp:56,86,208,149 +interface/icons/ravenclaw_poster.webp:4,5,235,309 +interface/icons/science_mag.webp:55,59,233,234 +interface/icons/sealed_scroll.webp:1,6,223,122 +interface/icons/sexdoll.webp:12,8,308,309 +interface/icons/sexy_lingerie.webp:36,72,242,236 +interface/icons/sexy_stockings.webp:66,42,213,229 +interface/icons/silver.webp:36,0,242,300 +interface/icons/silver_scroll.webp:2,77,312,195 +interface/icons/slytherin_poster.webp:4,5,235,309 +interface/icons/small/astoria.webp:0,0,21,20 +interface/icons/small/book.webp:0,0,27,20 +interface/icons/small/cards.webp:0,0,28,20 +interface/icons/small/cho.webp:0,0,15,20 +interface/icons/small/condom.webp:0,0,20,20 +interface/icons/small/gift.webp:0,0,20,19 +interface/icons/small/gold.webp:0,0,22,20 +interface/icons/small/gryf.webp:0,0,17,22 +interface/icons/small/heart_black.webp:0,1,21,18 +interface/icons/small/heart_blue.webp:0,1,21,18 +interface/icons/small/heart_empty.webp:0,1,21,18 +interface/icons/small/heart_green.webp:0,1,21,18 +interface/icons/small/heart_half.webp:0,1,21,18 +interface/icons/small/heart_red.webp:0,1,21,18 +interface/icons/small/heart_yellow.webp:0,1,21,18 +interface/icons/small/hermione.webp:0,0,26,20 +interface/icons/small/huff.webp:0,0,19,22 +interface/icons/small/levelup.webp:0,0,15,20 +interface/icons/small/luna.webp:0,0,28,20 +interface/icons/small/potion.webp:0,0,10,20 +interface/icons/small/quidditch.webp:0,3,20,17 +interface/icons/small/rave.webp:0,0,13,22 +interface/icons/small/slyt.webp:0,0,16,22 +interface/icons/small/spell.webp:0,0,28,20 +interface/icons/small/star_empty.webp:0,1,20,19 +interface/icons/small/star_pink.webp:0,1,20,19 +interface/icons/small/star_yellow.webp:0,1,20,19 +interface/icons/small/talk.webp:0,0,21,20 +interface/icons/small/toast.webp:0,0,19,20 +interface/icons/small/tonks.webp:0,0,24,20 +interface/icons/small/wardrobe.webp:3,0,14,20 +interface/icons/small/whisky.webp:0,0,12,20 +interface/icons/small/wine.webp:0,0,13,20 +interface/icons/small_owl.webp:28,41,115,190 +interface/icons/snow_owl.webp:11,0,155,231 +interface/icons/stag_trophy.webp:2,0,248,320 +interface/icons/strapon.webp:9,53,311,215 +interface/icons/stripper_poster.webp:4,5,235,309 +interface/icons/the_quibbler.webp:123,102,837,848 +interface/icons/time_turner.webp:79,88,178,171 +interface/icons/tonks_poster.webp:4,5,235,309 +interface/icons/vibrator.webp:63,67,182,198 +interface/icons/wanted_poster.webp:4,5,235,309 +interface/icons/wine.webp:87,44,173,263 +interface/icons/xmas_fireplace.webp:21,19,128,217 +interface/icons/xmas_giftchair.webp:0,0,100,127 +interface/icons/xmas_lights.webp:0,29,189,138 +interface/icons/xmas_owl.webp:14,16,82,157 +interface/icons/xmas_phoenix.webp:92,161,123,344 +interface/icons/xmas_wreaths.webp:0,0,138,146 +interface/letter.webp:0,6,773,863 +interface/map/anim/map_00.webp:18,16,1649,1171 +interface/map/anim/map_01.webp:18,16,1649,1171 +interface/map/anim/map_02.webp:18,16,1085,1171 +interface/map/anim/map_03.webp:536,16,567,1171 +interface/map/feet.webp:10,9,12,13 +interface/map/map.webp:18,16,1649,1171 +interface/map/map_lines_vert.webp:537,0,606,1200 +interface/map/name_astoria.webp:0,0,60,35 +interface/map/name_astoria_hover.webp:0,0,67,40 +interface/map/name_cho.webp:0,0,42,28 +interface/map/name_cho_hover.webp:0,0,46,31 +interface/map/name_hermione.webp:0,0,79,38 +interface/map/name_hermione_hover.webp:0,0,85,41 +interface/map/name_luna.webp:0,0,48,31 +interface/map/name_luna_hover.webp:0,0,53,34 +interface/map/name_snape.webp:0,0,41,22 +interface/map/name_snape_hover.webp:0,0,44,25 +interface/map/name_susan.webp:0,0,42,24 +interface/map/name_susan_hover.webp:0,0,47,25 +interface/map/name_tonks.webp:0,0,41,22 +interface/map/name_tonks_hover.webp:0,0,44,25 +interface/map/room_attic_closed_hover.webp:0,0,28,26 +interface/map/room_attic_closed_idle.webp:2,2,23,21 +interface/map/room_attic_open_hover.webp:0,0,28,26 +interface/map/room_attic_open_idle.webp:2,2,23,21 +interface/map/room_boat_house_hover.webp:0,0,40,40 +interface/map/room_boat_house_idle.webp:4,2,32,33 +interface/map/room_clothing_store_hover.webp:0,0,46,41 +interface/map/room_clothing_store_idle.webp:3,5,36,33 +interface/map/room_gryffindor_hover.webp:0,0,32,26 +interface/map/room_gryffindor_idle.webp:3,3,26,20 +interface/map/room_hufflepuff_hover.webp:0,0,31,28 +interface/map/room_hufflepuff_idle.webp:2,2,26,23 +interface/map/room_north_courtyard_hover.webp:4,4,44,57 +interface/map/room_north_courtyard_idle.webp:0,0,43,56 +interface/map/room_office_hover.webp:0,0,44,28 +interface/map/room_office_idle.webp:4,2,36,23 +interface/map/room_potions_hover.webp:0,0,32,27 +interface/map/room_potions_idle.webp:4,3,25,22 +interface/map/room_ravenclaw_hover.webp:0,0,31,26 +interface/map/room_ravenclaw_idle.webp:3,2,26,22 +interface/map/room_ror_empty_hover.webp:0,0,33,29 +interface/map/room_ror_empty_idle.webp:3,2,27,24 +interface/map/room_ror_hover.webp:0,0,33,29 +interface/map/room_ror_idle.webp:3,2,27,24 +interface/map/room_slytherin_hover.webp:0,0,34,29 +interface/map/room_slytherin_idle.webp:3,1,28,25 +interface/map/room_weasley_store_hover.webp:0,0,34,29 +interface/map/room_weasley_store_idle.webp:2,3,29,24 +interface/meter/0.webp:17,8,76,94 +interface/meter/100.webp:14,8,82,94 +interface/meter/50.webp:29,8,51,94 +interface/meter/bubble/0.webp:23,32,315,292 +interface/meter/bubble/1.webp:29,25,309,299 +interface/meter/bubble/2.webp:3,40,355,284 +interface/meter/bubble/3.webp:2,2,358,322 +interface/meter/bubble/4.webp:0,40,357,284 +interface/meter/fill.webp:14,14,32,472 +interface/meter/glass.webp:14,29,32,446 +interface/meter/gold/circle.webp:0,0,108,108 +interface/meter/gold/meter.webp:0,0,60,500 +interface/meter/gray/circle.webp:0,0,108,108 +interface/meter/gray/meter.webp:0,0,60,500 +interface/page.webp:0,0,24,32 +interface/panels/gold/bottom_panel.webp:0,0,1080,125 +interface/panels/gold/bottom_panel_hover.webp:0,0,1080,125 +interface/panels/gold/clothing_panel_full.webp:32,76,718,524 +interface/panels/gold/clothing_panel_full_hover.webp:32,76,718,524 +interface/panels/gold/clothing_panel_main.webp:59,76,651,326 +interface/panels/gold/clothing_panel_main_hover.webp:59,76,651,326 +interface/panels/gold/icon_panel3.webp:0,0,467,548 +interface/panels/gold/info_panel.webp:0,0,631,147 +interface/panels/gold/items_panel.webp:0,0,560,454 +interface/panels/gold/items_panel_hover.webp:0,0,560,454 +interface/panels/gray/bottom_panel.webp:0,0,1080,125 +interface/panels/gray/bottom_panel_hover.webp:0,0,1080,125 +interface/panels/gray/clothing_panel_full.webp:32,76,718,524 +interface/panels/gray/clothing_panel_full_hover.webp:32,76,718,524 +interface/panels/gray/clothing_panel_main.webp:58,76,686,524 +interface/panels/gray/clothing_panel_main_hover.webp:58,76,686,524 +interface/panels/gray/icon_panel3.webp:0,0,467,548 +interface/panels/gray/info_panel.webp:0,0,631,147 +interface/panels/gray/items_panel.webp:0,0,560,454 +interface/panels/gray/items_panel_hover.webp:0,0,560,454 +interface/puzzle/0.webp:0,0,94,94 +interface/puzzle/1.webp:0,0,94,94 +interface/puzzle/10.webp:0,0,94,94 +interface/puzzle/11.webp:0,0,94,94 +interface/puzzle/12.webp:0,0,94,94 +interface/puzzle/13.webp:0,0,94,94 +interface/puzzle/14.webp:0,0,94,94 +interface/puzzle/15.webp:0,0,94,94 +interface/puzzle/2.webp:0,0,94,94 +interface/puzzle/3.webp:0,0,94,94 +interface/puzzle/4.webp:0,0,94,94 +interface/puzzle/5.webp:0,0,94,94 +interface/puzzle/6.webp:0,0,94,94 +interface/puzzle/7.webp:0,0,94,94 +interface/puzzle/8.webp:0,0,94,94 +interface/puzzle/9.webp:0,0,94,94 +interface/puzzle/background.webp:0,0,425,425 +interface/puzzle/grid.webp:22,22,381,382 +interface/puzzle/puzzle.webp:0,0,376,376 +interface/room_of_req/astoria_icon.webp:0,2,36,34 +interface/room_of_req/cho_icon.webp:5,0,26,36 +interface/room_of_req/hermione_icon.webp:0,0,36,36 +interface/room_of_req/locked.webp:0,0,71,89 +interface/room_of_req/luna_icon.webp:1,0,34,36 +interface/room_of_req/mirror_event_item.webp:0,0,601,90 +interface/room_of_req/mirror_event_item_hover.webp:0,0,601,90 +interface/room_of_req/mirror_event_menu.webp:0,0,624,544 +interface/room_of_req/quistion_mark.webp:0,0,50,50 +interface/room_of_req/susan_icon.webp:2,0,31,36 +interface/room_of_req/tonks_icon.webp:0,0,36,36 +interface/room_of_req/unlocked.webp:0,0,77,105 +interface/stats/gold/bar_empty.webp:0,0,366,21 +interface/stats/gold/bar_full.webp:0,0,366,21 +interface/stats/gray/bar_empty.webp:0,0,366,21 +interface/stats/gray/bar_full.webp:0,0,366,21 +interface/studio/background.webp:6,58,500,385 +interface/studio/blur.webp:0,22,505,465 +interface/studio/blush.webp:93,80,329,353 +interface/studio/brightness.webp:7,7,500,500 +interface/studio/eyebrows.webp:31,27,450,340 +interface/studio/eyes.webp:31,145,450,222 +interface/studio/hide.webp:6,157,500,212 +interface/studio/hue.webp:6,3,488,494 +interface/studio/mouth.webp:6,153,500,213 +interface/studio/opacity.webp:86,94,340,368 +interface/studio/overlay.webp:6,58,500,385 +interface/studio/pupils.webp:31,145,450,222 +interface/studio/saturation.webp:30,27,455,455 +interface/studio/scale.webp:6,20,500,468 +interface/studio/screenshot.webp:7,57,500,381 +interface/studio/tears.webp:31,145,450,252 +interface/topbar/banners.webp:0,0,154,64 +interface/topbar/buttons/gold/deco_cupboard.webp:0,0,33,34 +interface/topbar/buttons/gold/deco_fireplace.webp:0,0,33,34 +interface/topbar/buttons/gold/deco_wall.webp:0,0,33,34 +interface/topbar/buttons/gold/ui_achievements.webp:0,0,33,34 +interface/topbar/buttons/gold/ui_close.webp:0,0,37,37 +interface/topbar/buttons/gold/ui_delete.webp:0,0,33,34 +interface/topbar/buttons/gold/ui_empty.webp:0,0,33,34 +interface/topbar/buttons/gold/ui_false.webp:0,0,33,34 +interface/topbar/buttons/gold/ui_gifts.webp:0,0,33,34 +interface/topbar/buttons/gold/ui_inv.webp:0,0,33,34 +interface/topbar/buttons/gold/ui_menu.webp:0,0,37,37 +interface/topbar/buttons/gold/ui_quest_items.webp:0,0,33,34 +interface/topbar/buttons/gold/ui_sleep.webp:0,0,37,37 +interface/topbar/buttons/gold/ui_stats.webp:0,0,33,34 +interface/topbar/buttons/gold/ui_true.webp:0,0,33,34 +interface/topbar/buttons/gold/ui_work.webp:0,0,33,34 +interface/topbar/buttons/gray/deco_cupboard.webp:0,0,33,34 +interface/topbar/buttons/gray/deco_fireplace.webp:0,0,33,34 +interface/topbar/buttons/gray/deco_wall.webp:0,0,33,34 +interface/topbar/buttons/gray/ui_achievements.webp:0,0,33,34 +interface/topbar/buttons/gray/ui_close.webp:0,0,37,37 +interface/topbar/buttons/gray/ui_delete.webp:0,0,33,34 +interface/topbar/buttons/gray/ui_empty.webp:0,0,33,34 +interface/topbar/buttons/gray/ui_false.webp:0,0,33,34 +interface/topbar/buttons/gray/ui_gifts.webp:0,0,33,34 +interface/topbar/buttons/gray/ui_inv.webp:0,0,33,34 +interface/topbar/buttons/gray/ui_menu.webp:0,0,37,37 +interface/topbar/buttons/gray/ui_quest_items.webp:0,0,33,34 +interface/topbar/buttons/gray/ui_sleep.webp:0,0,37,37 +interface/topbar/buttons/gray/ui_stats.webp:0,0,33,34 +interface/topbar/buttons/gray/ui_true.webp:0,0,33,34 +interface/topbar/buttons/gray/ui_work.webp:0,0,33,34 +interface/topbar/gold/bar.webp:0,0,2160,68 +interface/topbar/gold/menu.webp:0,0,102,204 +interface/topbar/gold/stats.webp:0,0,201,18 +interface/topbar/gray/bar.webp:0,0,2160,68 +interface/topbar/gray/menu.webp:0,0,102,204 +interface/topbar/gray/stats.webp:0,0,201,18 +interface/topbar/gryffindor.webp:40,0,33,64 +interface/topbar/gryffindor_empty.webp:40,0,33,64 +interface/topbar/hover_zone.webp:0,0,0,0 +interface/topbar/hufflepuff.webp:121,0,33,64 +interface/topbar/hufflepuff_empty.webp:121,0,33,64 +interface/topbar/icon_bug.webp:0,0,19,19 +interface/topbar/icon_check.webp:0,5,34,29 +interface/topbar/icon_discord.webp:0,0,20,15 +interface/topbar/icon_patreon.webp:0,0,18,19 +interface/topbar/icon_token.webp:0,0,19,18 +interface/topbar/ravenclaw.webp:81,0,33,64 +interface/topbar/ravenclaw_empty.webp:81,0,33,64 +interface/topbar/slytherin.webp:0,0,33,64 +interface/topbar/slytherin_empty.webp:0,0,33,64 +interface/transitions/faderight.webp:0,0,1080,600 +interface/transitions/faderight_raw.webp:0,0,1080,600 +interface/tutorials/brewing.webp:0,0,482,133 +interface/tutorials/hangouts.webp:0,0,482,133 +interface/tutorials/hearts.webp:0,0,482,133 +interface/tutorials/inventory.webp:0,0,482,133 +interface/tutorials/mail.webp:0,0,482,133 +interface/tutorials/map.webp:0,0,482,133 +interface/tutorials/moodngifts.webp:0,0,482,133 +interface/tutorials/points.webp:0,0,482,133 +interface/tutorials/schedule.webp:0,0,482,133 +interface/tutorials/time.webp:0,0,482,133 +interface/tutorials/workngold.webp:0,0,482,133 +interface/unlocked_False.webp:0,0,14,20 +interface/unlocked_True.webp:0,0,14,20 +interface/wardrobe/export_background.webp:0,0,310,470 +interface/wardrobe/export_frame.webp:0,447,310,23 +interface/wardrobe/icons/accessory.webp:3,0,84,90 +interface/wardrobe/icons/bikini bras.webp:3,3,85,64 +interface/wardrobe/icons/bikini panties.webp:0,21,90,53 +interface/wardrobe/icons/blush.webp:9,0,72,90 +interface/wardrobe/icons/bras.webp:0,0,90,89 +interface/wardrobe/icons/categories/astoria/head.webp:20,28,151,144 +interface/wardrobe/icons/categories/astoria/legwear.webp:21,20,146,152 +interface/wardrobe/icons/categories/astoria/lower body.webp:20,20,152,152 +interface/wardrobe/icons/categories/astoria/lower undergarment.webp:43,20,115,152 +interface/wardrobe/icons/categories/astoria/misc.webp:25,40,151,125 +interface/wardrobe/icons/categories/astoria/piercings & tattoos.webp:26,20,153,153 +interface/wardrobe/icons/categories/astoria/upper body.webp:20,20,152,152 +interface/wardrobe/icons/categories/astoria/upper undergarment.webp:20,20,152,152 +interface/wardrobe/icons/categories/cho/head.webp:31,28,127,144 +interface/wardrobe/icons/categories/cho/legwear.webp:20,20,152,152 +interface/wardrobe/icons/categories/cho/lower body.webp:25,20,142,152 +interface/wardrobe/icons/categories/cho/lower undergarment.webp:28,20,134,152 +interface/wardrobe/icons/categories/cho/misc.webp:25,40,151,125 +interface/wardrobe/icons/categories/cho/piercings & tattoos.webp:26,20,153,153 +interface/wardrobe/icons/categories/cho/upper body.webp:33,20,134,152 +interface/wardrobe/icons/categories/cho/upper undergarment.webp:33,20,131,152 +interface/wardrobe/icons/categories/hermione/head.webp:20,22,152,150 +interface/wardrobe/icons/categories/hermione/legwear.webp:39,20,123,152 +interface/wardrobe/icons/categories/hermione/lower body.webp:20,20,152,152 +interface/wardrobe/icons/categories/hermione/lower undergarment.webp:37,20,121,152 +interface/wardrobe/icons/categories/hermione/misc.webp:25,40,151,125 +interface/wardrobe/icons/categories/hermione/piercings & tattoos.webp:26,20,153,153 +interface/wardrobe/icons/categories/hermione/upper body.webp:20,20,152,152 +interface/wardrobe/icons/categories/hermione/upper undergarment.webp:20,20,152,152 +interface/wardrobe/icons/categories/luna/head.webp:26,23,138,149 +interface/wardrobe/icons/categories/luna/legwear.webp:30,20,127,152 +interface/wardrobe/icons/categories/luna/lower body.webp:27,20,145,152 +interface/wardrobe/icons/categories/luna/lower undergarment.webp:36,20,126,152 +interface/wardrobe/icons/categories/luna/misc.webp:25,40,151,125 +interface/wardrobe/icons/categories/luna/piercings & tattoos.webp:26,20,153,153 +interface/wardrobe/icons/categories/luna/upper body.webp:20,20,152,152 +interface/wardrobe/icons/categories/luna/upper undergarment.webp:20,20,152,152 +interface/wardrobe/icons/categories/outfits.webp:42,19,111,156 +interface/wardrobe/icons/categories/studio.webp:20,20,152,152 +interface/wardrobe/icons/categories/susan/head.webp:20,22,152,150 +interface/wardrobe/icons/categories/susan/legwear.webp:39,20,123,152 +interface/wardrobe/icons/categories/susan/lower body.webp:20,20,152,152 +interface/wardrobe/icons/categories/susan/lower undergarment.webp:37,20,121,152 +interface/wardrobe/icons/categories/susan/misc.webp:25,40,151,125 +interface/wardrobe/icons/categories/susan/piercings & tattoos.webp:26,20,153,153 +interface/wardrobe/icons/categories/susan/upper body.webp:20,20,152,152 +interface/wardrobe/icons/categories/susan/upper undergarment.webp:20,20,152,152 +interface/wardrobe/icons/categories/tonks/head.webp:31,30,133,142 +interface/wardrobe/icons/categories/tonks/legwear.webp:24,20,148,152 +interface/wardrobe/icons/categories/tonks/lower body.webp:28,20,144,152 +interface/wardrobe/icons/categories/tonks/lower undergarment.webp:20,20,150,152 +interface/wardrobe/icons/categories/tonks/misc.webp:25,40,151,125 +interface/wardrobe/icons/categories/tonks/piercings & tattoos.webp:26,20,153,153 +interface/wardrobe/icons/categories/tonks/upper body.webp:20,20,152,152 +interface/wardrobe/icons/categories/tonks/upper undergarment.webp:20,20,152,152 +interface/wardrobe/icons/delete.webp:11,0,68,90 +interface/wardrobe/icons/dresses.webp:13,0,64,90 +interface/wardrobe/icons/earrings.webp:9,0,71,90 +interface/wardrobe/icons/export.webp:0,0,90,90 +interface/wardrobe/icons/garterbelts.webp:0,6,90,74 +interface/wardrobe/icons/glasses.webp:0,28,90,34 +interface/wardrobe/icons/gloves.webp:6,0,76,90 +interface/wardrobe/icons/hair.webp:15,0,60,90 +interface/wardrobe/icons/headgear.webp:0,12,90,66 +interface/wardrobe/icons/import.webp:0,0,90,90 +interface/wardrobe/icons/leggings.webp:27,0,38,90 +interface/wardrobe/icons/load.webp:0,0,90,90 +interface/wardrobe/icons/makeup.webp:9,0,72,90 +interface/wardrobe/icons/neckwear.webp:22,0,46,90 +interface/wardrobe/icons/one-piece suits.webp:24,0,42,90 +interface/wardrobe/icons/other.webp:0,7,90,76 +interface/wardrobe/icons/outfits/cloudy.webp:2,3,29,26 +interface/wardrobe/icons/outfits/day.webp:2,2,29,29 +interface/wardrobe/icons/outfits/night.webp:2,2,29,29 +interface/wardrobe/icons/outfits/rainy.webp:2,2,29,29 +interface/wardrobe/icons/outfits/school.webp:0,0,25,25 +interface/wardrobe/icons/outfits/snowy.webp:2,2,29,29 +interface/wardrobe/icons/panties.webp:0,21,90,53 +interface/wardrobe/icons/pantyhose.webp:32,0,29,89 +interface/wardrobe/icons/piercings.webp:0,0,90,90 +interface/wardrobe/icons/pubes.webp:0,0,89,90 +interface/wardrobe/icons/random.webp:0,0,90,90 +interface/wardrobe/icons/robes.webp:1,0,88,90 +interface/wardrobe/icons/save.webp:0,0,90,90 +interface/wardrobe/icons/schedule.webp:0,0,90,90 +interface/wardrobe/icons/shirts.webp:15,0,60,90 +interface/wardrobe/icons/shorts.webp:2,13,87,61 +interface/wardrobe/icons/skirts.webp:0,4,90,82 +interface/wardrobe/icons/socks.webp:0,0,81,90 +interface/wardrobe/icons/stockings.webp:0,0,90,90 +interface/wardrobe/icons/sweaters.webp:3,3,84,86 +interface/wardrobe/icons/tattoos.webp:0,8,90,75 +interface/wardrobe/icons/trousers.webp:20,0,50,90 +logo/arrow.webp:0,0,91,41 +logo/discord.webp:7,7,151,42 +logo/discord_hover.webp:8,8,166,46 +logo/patreon.webp:0,0,296,56 +logo/patreon_hover.webp:0,0,329,62 +logo/renpy.webp:8,0,134,225 +logo/silverstudiogames.webp:0,0,325,46 +logo/title.webp:27,1,353,258 +magic/heal01.webp:23,434,346,166 +magic/heal02.webp:23,416,351,184 +magic/heal03.webp:21,397,353,203 +magic/heal04.webp:21,357,356,243 +magic/heal05.webp:18,258,362,342 +magic/heal06.webp:15,207,365,393 +magic/heal07.webp:13,199,369,401 +magic/heal08.webp:10,148,375,452 +magic/heal09.webp:8,101,379,499 +magic/heal10.webp:5,74,382,526 +magic/heal11.webp:13,74,377,526 +magic/heal12.webp:18,79,375,521 +magic/heal13.webp:18,82,377,516 +magic/heal14.webp:21,86,366,514 +magic/heal15.webp:18,92,369,508 +magic/heal16.webp:18,108,375,490 +magic/heal17.webp:13,144,380,454 +magic/heal18.webp:0,0,0,0 +magic/heal_02/heal01.webp:9,173,139,67 +magic/heal_02/heal02.webp:9,166,141,74 +magic/heal_02/heal03.webp:8,158,142,82 +magic/heal_02/heal04.webp:8,142,143,98 +magic/heal_02/heal05.webp:7,103,145,137 +magic/heal_02/heal06.webp:6,82,146,158 +magic/heal_02/heal07.webp:5,79,148,161 +magic/heal_02/heal08.webp:4,59,150,181 +magic/heal_02/heal09.webp:3,40,152,200 +magic/heal_02/heal10.webp:2,29,153,211 +magic/heal_02/heal11.webp:5,29,151,211 +magic/heal_02/heal12.webp:7,31,151,209 +magic/heal_02/heal13.webp:7,32,151,208 +magic/heal_02/heal14.webp:8,34,147,206 +magic/heal_02/heal15.webp:7,36,148,204 +magic/heal_02/heal16.webp:7,43,151,197 +magic/heal_02/heal17.webp:5,57,153,183 +magic/heal_02/heal18.webp:0,0,0,0 +magic/heals01.webp:9,173,139,67 +magic/heals02.webp:9,166,141,74 +magic/heals03.webp:8,158,142,82 +magic/heals04.webp:8,142,143,98 +magic/heals05.webp:7,103,145,137 +magic/heals06.webp:6,82,146,158 +magic/heals07.webp:5,79,148,161 +magic/heals08.webp:4,59,150,181 +magic/heals09.webp:3,40,152,200 +magic/heals10.webp:2,29,153,211 +magic/heals11.webp:5,29,151,211 +magic/heals12.webp:7,31,151,209 +magic/heals13.webp:7,32,151,208 +magic/heals14.webp:8,34,147,206 +magic/heals15.webp:7,36,148,204 +magic/heals16.webp:7,43,151,197 +magic/heals17.webp:5,57,153,183 +magic/heals18.webp:0,0,0,0 +magic/love01.webp:107,298,166,150 +magic/love02.webp:116,307,151,135 +magic/love03.webp:122,314,135,122 +magic/love04.webp:131,321,119,107 +magic/love05.webp:139,328,101,92 +magic/love06.webp:148,338,84,75 +magic/love07.webp:124,312,134,127 +magic/love08.webp:103,293,176,166 +magic/love09.webp:144,332,92,97 +magic/love10.webp:124,304,138,147 +magic/love11.webp:104,277,184,194 +magic/love12.webp:116,316,152,135 +magic/love13.webp:86,298,203,182 +magic/love14.webp:110,310,156,139 +magic/love15.webp:86,289,207,185 +magic/magic1.webp:2,101,426,335 +magic/magic2.webp:13,319,458,149 +magic/magic3.webp:29,116,352,301 +magic/magic4.webp:45,38,357,562 +magic/magic5.webp:8,42,419,438 +mods/MyMod/characters/hermione/clothes/hair/ponytail/0.webp:489,262,223,248 +mods/MyMod/characters/hermione/clothes/hair/ponytail/1.webp:491,263,221,247 +mods/MyMod/characters/hermione/clothes/hair/ponytail/outline.webp:488,261,226,251 +mods/MyMod/logo.webp:0,0,320,240 +title/00.webp:0,0,2160,1200 +title/00b.webp:0,0,2160,1200 +title/01.webp:0,0,2160,1200 +title/01b.webp:0,0,2160,1200 +title/02.webp:0,0,2160,1200 +title/02b.webp:0,0,2160,1200 +title/fire00.webp:0,208,697,709 +title/fire01.webp:0,226,697,682 +title/fire02.webp:0,208,697,709 +title/fire03.webp:0,237,697,671 +title/fire04.webp:0,208,697,709 +title/fire05.webp:0,208,697,709 +title/fire06.webp:0,208,697,709 +title/fire07.webp:0,208,697,709 +title/sparkle.webp:0,0,49,50 diff --git a/game/images/CG/ball/171.webp b/game/images/CG/ball/171.webp new file mode 100644 index 00000000..af1a28ae --- /dev/null +++ b/game/images/CG/ball/171.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cacc048a0539f70c2ad32adb0d054b7f1ce1ddb0833263e9761f317025d67589 +size 135556 diff --git a/game/images/CG/ball/172.webp b/game/images/CG/ball/172.webp new file mode 100644 index 00000000..971d1eb6 --- /dev/null +++ b/game/images/CG/ball/172.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f20019768bd3960f15cd306676cd1f6f44549ae3857b38c3cd9811c3196359c +size 7938 diff --git a/game/images/CG/ball/173.webp b/game/images/CG/ball/173.webp new file mode 100644 index 00000000..cd3ee7d5 --- /dev/null +++ b/game/images/CG/ball/173.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ec737aa8bbd0907ce8af3b996c76c325cb2978c83054956e40b2eb7dcc63f7e +size 8202 diff --git a/game/images/CG/ball/174.webp b/game/images/CG/ball/174.webp new file mode 100644 index 00000000..e506484e --- /dev/null +++ b/game/images/CG/ball/174.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06402223dd857c51ba25b856471dece14371051aafdaae5ac90e716339174301 +size 16020 diff --git a/game/images/CG/ball/175.webp b/game/images/CG/ball/175.webp new file mode 100644 index 00000000..1401d666 --- /dev/null +++ b/game/images/CG/ball/175.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b3b817333b6afdef36946773376102daad1173f38a0bf364d19a30d6db342a6 +size 8164 diff --git a/game/images/CG/ball/background.webp b/game/images/CG/ball/background.webp new file mode 100644 index 00000000..9e21d5c7 --- /dev/null +++ b/game/images/CG/ball/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae70f628a742b6fa8ae5b53de6a76d25045c549de6cea6c1f52183229f80654f +size 296796 diff --git a/game/images/CG/ball/base.webp b/game/images/CG/ball/base.webp new file mode 100644 index 00000000..9a173ab9 --- /dev/null +++ b/game/images/CG/ball/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d778a68b9aa00b56ff839946576ac3c9a90bbf8042293eacb0a38f23c9cf3f9c +size 66 diff --git a/game/images/CG/ball/bj/background.webp b/game/images/CG/ball/bj/background.webp new file mode 100644 index 00000000..9e21d5c7 --- /dev/null +++ b/game/images/CG/ball/bj/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae70f628a742b6fa8ae5b53de6a76d25045c549de6cea6c1f52183229f80654f +size 296796 diff --git a/game/images/CG/ball/bj/background2.webp b/game/images/CG/ball/bj/background2.webp new file mode 100644 index 00000000..e1743d60 --- /dev/null +++ b/game/images/CG/ball/bj/background2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac19c15693c5e8bdaa0e70981365c61aaaa3e966f38b5fae558e83286b955c18 +size 287822 diff --git a/game/images/CG/ball/bj/base.webp b/game/images/CG/ball/bj/base.webp new file mode 100644 index 00000000..27c1240b --- /dev/null +++ b/game/images/CG/ball/bj/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58790e571015df070d1f8cd8b53bbe1ab85da1fe5c86dc7dfc8d37af832bacf0 +size 275626 diff --git a/game/images/CG/ball/bj/base2.webp b/game/images/CG/ball/bj/base2.webp new file mode 100644 index 00000000..85348a07 --- /dev/null +++ b/game/images/CG/ball/bj/base2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01c62ff571ac4efce96314928a1097800c224008ce0feccce145ca0456c4971e +size 291096 diff --git a/game/images/CG/ball/bj/base3.webp b/game/images/CG/ball/bj/base3.webp new file mode 100644 index 00000000..abb6d31c --- /dev/null +++ b/game/images/CG/ball/bj/base3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b7d82bfa44ba23036d54051e7b0d9057e29c5937a4360863b01ea3b8ca26b67 +size 294714 diff --git a/game/images/CG/ball/bj/base3_alt.webp b/game/images/CG/ball/bj/base3_alt.webp new file mode 100644 index 00000000..1b1b3787 --- /dev/null +++ b/game/images/CG/ball/bj/base3_alt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df6d80e9debf4bc5b197d5ae78df2d83bed4b3f754e8823d91a9ac2e915be5c1 +size 278202 diff --git a/game/images/CG/ball/bj/base4.webp b/game/images/CG/ball/bj/base4.webp new file mode 100644 index 00000000..fed4ff07 --- /dev/null +++ b/game/images/CG/ball/bj/base4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e46db7e9e83977f5aeeff90610bdc72e0799fec7edbb817a6166033d7017342 +size 289034 diff --git a/game/images/CG/ball/bj/blush.webp b/game/images/CG/ball/bj/blush.webp new file mode 100644 index 00000000..1e6260e9 --- /dev/null +++ b/game/images/CG/ball/bj/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:042403224223593157398244546c873bd6d88045214e335e84ced1ff1a55eaa0 +size 2128 diff --git a/game/images/CG/ball/bj/blush2.webp b/game/images/CG/ball/bj/blush2.webp new file mode 100644 index 00000000..bccfceb1 --- /dev/null +++ b/game/images/CG/ball/bj/blush2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7df237cd7437ffe07c0195307f916798b108448e0ca49eae5beb623ce5114610 +size 3072 diff --git a/game/images/CG/ball/bj/blush3.webp b/game/images/CG/ball/bj/blush3.webp new file mode 100644 index 00000000..699e932d --- /dev/null +++ b/game/images/CG/ball/bj/blush3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5997f3756d1908f9eb14b62b6209b6ad8104287ed6165d1d6b6fbc557d50700 +size 3356 diff --git a/game/images/CG/ball/bj/blush4.webp b/game/images/CG/ball/bj/blush4.webp new file mode 100644 index 00000000..598467e5 --- /dev/null +++ b/game/images/CG/ball/bj/blush4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9e79962cf66dba7ebee64d32ad0a441767ce0b6a6d58d4e53f1974c97f78ae1 +size 3496 diff --git a/game/images/CG/ball/bj/brows.webp b/game/images/CG/ball/bj/brows.webp new file mode 100644 index 00000000..69f1e189 --- /dev/null +++ b/game/images/CG/ball/bj/brows.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:664effef6f0854f234aa40ed9f14c6ff50363d3f2e813a920cd20bf39f5c687c +size 3524 diff --git a/game/images/CG/ball/bj/brows2.webp b/game/images/CG/ball/bj/brows2.webp new file mode 100644 index 00000000..d8008ed4 --- /dev/null +++ b/game/images/CG/ball/bj/brows2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9109d3f4a0e8622a5d55a4a97492ef518ba1e497112ba3c2ea8ebf628fd8e4f7 +size 4206 diff --git a/game/images/CG/ball/bj/brows3.webp b/game/images/CG/ball/bj/brows3.webp new file mode 100644 index 00000000..0c7884a3 --- /dev/null +++ b/game/images/CG/ball/bj/brows3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23fe150c8e8af16951347c8723c3024ac966deddeeaaf2769273636730f45305 +size 2930 diff --git a/game/images/CG/ball/bj/brows4.webp b/game/images/CG/ball/bj/brows4.webp new file mode 100644 index 00000000..bf238adb --- /dev/null +++ b/game/images/CG/ball/bj/brows4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e81061c4e2f2ea42e70277aea5f2cfa475149abe8f5cdc659f7499cd20efe629 +size 4636 diff --git a/game/images/CG/ball/bj/brows_angry3.webp b/game/images/CG/ball/bj/brows_angry3.webp new file mode 100644 index 00000000..cb8fb091 --- /dev/null +++ b/game/images/CG/ball/bj/brows_angry3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:607fb5ebd410b2f1a5be0b8e6a7c8b3ce081c0a30aa25ea6a8f1d6b9fb770e53 +size 2916 diff --git a/game/images/CG/ball/bj/cheeks3.webp b/game/images/CG/ball/bj/cheeks3.webp new file mode 100644 index 00000000..63d103cd --- /dev/null +++ b/game/images/CG/ball/bj/cheeks3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9f45713e01009683708b5e33c0729a026b130eb265e66b926dcad554f372373 +size 5748 diff --git a/game/images/CG/ball/bj/eyes_closed.webp b/game/images/CG/ball/bj/eyes_closed.webp new file mode 100644 index 00000000..b0c3765b --- /dev/null +++ b/game/images/CG/ball/bj/eyes_closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd38a24164c7c385b213ed2003ed5e572df07836b3580e39529096c880566986 +size 5440 diff --git a/game/images/CG/ball/bj/eyes_closed2.webp b/game/images/CG/ball/bj/eyes_closed2.webp new file mode 100644 index 00000000..415b671a --- /dev/null +++ b/game/images/CG/ball/bj/eyes_closed2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6ab7e37e2594b0aaa5f7893d774c739b759af0849c6a479bca36a3b6931b07f +size 4714 diff --git a/game/images/CG/ball/bj/eyes_closed3.webp b/game/images/CG/ball/bj/eyes_closed3.webp new file mode 100644 index 00000000..f7100b35 --- /dev/null +++ b/game/images/CG/ball/bj/eyes_closed3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5676b3d6c539aeefe7bbc365ce85ceb21e848753934570699b0abe09549e749f +size 2392 diff --git a/game/images/CG/ball/bj/eyes_closed4.webp b/game/images/CG/ball/bj/eyes_closed4.webp new file mode 100644 index 00000000..ab846b62 --- /dev/null +++ b/game/images/CG/ball/bj/eyes_closed4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe2b5eb879f3a1b4ec010eb25e15e871de51ad8dc237323e79e2f249032a0bd1 +size 4026 diff --git a/game/images/CG/ball/bj/eyes_dead3.webp b/game/images/CG/ball/bj/eyes_dead3.webp new file mode 100644 index 00000000..50c68291 --- /dev/null +++ b/game/images/CG/ball/bj/eyes_dead3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32a430553cf6d9d749c5898c041cff97f3dc4d2a5f080de65f40e6f6489d7188 +size 2654 diff --git a/game/images/CG/ball/bj/eyes_down.webp b/game/images/CG/ball/bj/eyes_down.webp new file mode 100644 index 00000000..9bc69f29 --- /dev/null +++ b/game/images/CG/ball/bj/eyes_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39234f2e92088efdf90b1c2db6c4cecd369ba1f327f19854f031272ef50381ab +size 2510 diff --git a/game/images/CG/ball/bj/eyes_down2.webp b/game/images/CG/ball/bj/eyes_down2.webp new file mode 100644 index 00000000..681165e0 --- /dev/null +++ b/game/images/CG/ball/bj/eyes_down2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e757e217264889a7033f3cafe097e9d8561e50854b035c4db7db6f446eae64ab +size 4532 diff --git a/game/images/CG/ball/bj/eyes_happycl3.webp b/game/images/CG/ball/bj/eyes_happycl3.webp new file mode 100644 index 00000000..5265e44f --- /dev/null +++ b/game/images/CG/ball/bj/eyes_happycl3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0732ed914591dc098a00551d24019bdcb1486a0cc9fdec89f56ddcd391db9016 +size 2516 diff --git a/game/images/CG/ball/bj/eyes_squintdead3.webp b/game/images/CG/ball/bj/eyes_squintdead3.webp new file mode 100644 index 00000000..f9d582b7 --- /dev/null +++ b/game/images/CG/ball/bj/eyes_squintdead3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3aea329e5abcffcf59944f3fd6e7f6f147a06ee8e74c758749a78e7a9bc6a97 +size 3132 diff --git a/game/images/CG/ball/bj/eyes_squintup3.webp b/game/images/CG/ball/bj/eyes_squintup3.webp new file mode 100644 index 00000000..f9d582b7 --- /dev/null +++ b/game/images/CG/ball/bj/eyes_squintup3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3aea329e5abcffcf59944f3fd6e7f6f147a06ee8e74c758749a78e7a9bc6a97 +size 3132 diff --git a/game/images/CG/ball/bj/eyes_stare3.webp b/game/images/CG/ball/bj/eyes_stare3.webp new file mode 100644 index 00000000..12710285 --- /dev/null +++ b/game/images/CG/ball/bj/eyes_stare3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e39c46f5c5fe30d53399a6d2be34329f0dde63327e55f924cd76ce188875d17e +size 2810 diff --git a/game/images/CG/ball/bj/eyes_up.webp b/game/images/CG/ball/bj/eyes_up.webp new file mode 100644 index 00000000..039cce68 --- /dev/null +++ b/game/images/CG/ball/bj/eyes_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0acc545ce94d0220d3b0ad4c897c9e174c9941b2933284ae8e62388a4fad57ae +size 2430 diff --git a/game/images/CG/ball/bj/eyes_up2.webp b/game/images/CG/ball/bj/eyes_up2.webp new file mode 100644 index 00000000..48484244 --- /dev/null +++ b/game/images/CG/ball/bj/eyes_up2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c585feaede4a990409e2dd4d498452a11f6a1341461a58df0eb1daa851b66609 +size 3404 diff --git a/game/images/CG/ball/bj/eyes_up3.webp b/game/images/CG/ball/bj/eyes_up3.webp new file mode 100644 index 00000000..83d8ad0a --- /dev/null +++ b/game/images/CG/ball/bj/eyes_up3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea3c0a91ac8b1c3786a0fa22e19d6be8aee18f7bbd8c7cfe5eb0cc64495b31bb +size 2708 diff --git a/game/images/CG/ball/bj/eyes_up4.webp b/game/images/CG/ball/bj/eyes_up4.webp new file mode 100644 index 00000000..f682a355 --- /dev/null +++ b/game/images/CG/ball/bj/eyes_up4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cecfeb992222910a2f1495f246f677f9ba99fcbf5599b2d91a84a3b3685d65ab +size 2636 diff --git a/game/images/CG/ball/bj/lashes.webp b/game/images/CG/ball/bj/lashes.webp new file mode 100644 index 00000000..bd35e410 --- /dev/null +++ b/game/images/CG/ball/bj/lashes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77cb8d620a233a1b5feb581577082ad12d65254704ed86a3a433c3c98a747847 +size 2820 diff --git a/game/images/CG/ball/bj/lashes2.webp b/game/images/CG/ball/bj/lashes2.webp new file mode 100644 index 00000000..b244277e --- /dev/null +++ b/game/images/CG/ball/bj/lashes2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:901372fe0a74dc09b02538c4b034ee52a4c716adac23bb83556b07f29933fbbb +size 3768 diff --git a/game/images/CG/ball/bj/lashes4.webp b/game/images/CG/ball/bj/lashes4.webp new file mode 100644 index 00000000..bd65022d --- /dev/null +++ b/game/images/CG/ball/bj/lashes4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eca0d1499c961b3a03177744a71b73bc9dad151e0be6b49f0526024e644f78d6 +size 2580 diff --git a/game/images/CG/ball/bj/mascara3.webp b/game/images/CG/ball/bj/mascara3.webp new file mode 100644 index 00000000..7c71d68a --- /dev/null +++ b/game/images/CG/ball/bj/mascara3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:771e0cbd2a0e0b5dd4d72591d3025c30bd765cdda4cf3837fbbcb05b846ae3f2 +size 2394 diff --git a/game/images/CG/ball/bj/mouth_grimmace2.webp b/game/images/CG/ball/bj/mouth_grimmace2.webp new file mode 100644 index 00000000..47edbb0c --- /dev/null +++ b/game/images/CG/ball/bj/mouth_grimmace2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6225b7bf55234ebffcdbbd8b464fbdfc32e92b3cf5a920d64e036c9f30a4d19 +size 2986 diff --git a/game/images/CG/ball/bj/mouth_happy2.webp b/game/images/CG/ball/bj/mouth_happy2.webp new file mode 100644 index 00000000..e728b1e9 --- /dev/null +++ b/game/images/CG/ball/bj/mouth_happy2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b906622f6dd3fbefa0b47ab207d5afbeb5825923510bc2e4f30f8b21c6e6ec78 +size 3286 diff --git a/game/images/CG/ball/bj/mouth_open2.webp b/game/images/CG/ball/bj/mouth_open2.webp new file mode 100644 index 00000000..31cfa50b --- /dev/null +++ b/game/images/CG/ball/bj/mouth_open2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1086b88bd5b414a1bb52c2736b0b6540514e7ee4f9676a3f965f396e2f200a0b +size 2998 diff --git a/game/images/CG/ball/bj/mouth_smile2.webp b/game/images/CG/ball/bj/mouth_smile2.webp new file mode 100644 index 00000000..d7882351 --- /dev/null +++ b/game/images/CG/ball/bj/mouth_smile2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01f5b87afb16ca1cae8115de72351145b35d83a73dec3b1c700b009d2da614ff +size 1812 diff --git a/game/images/CG/ball/bj/mouth_smile4.webp b/game/images/CG/ball/bj/mouth_smile4.webp new file mode 100644 index 00000000..0e77f10a --- /dev/null +++ b/game/images/CG/ball/bj/mouth_smile4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:308ebb2884f9d7c674294d67d38f8c54c0f567c62076e85f1c510afe13d7c6fd +size 2322 diff --git a/game/images/CG/ball/bj/sperm.webp b/game/images/CG/ball/bj/sperm.webp new file mode 100644 index 00000000..305c85a8 --- /dev/null +++ b/game/images/CG/ball/bj/sperm.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1d6873ce29a48ce05a552c4d39920b859272b757b31f9255cc587fedc882cd3 +size 3668 diff --git a/game/images/CG/ball/bj/sperm3.webp b/game/images/CG/ball/bj/sperm3.webp new file mode 100644 index 00000000..e2e6fc37 --- /dev/null +++ b/game/images/CG/ball/bj/sperm3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c9a220986c5628feb8004f71d563caafceb741c465ff0f0ce7e55e615a703f4 +size 4784 diff --git a/game/images/CG/ball/bj/sperm4.webp b/game/images/CG/ball/bj/sperm4.webp new file mode 100644 index 00000000..8ff41039 --- /dev/null +++ b/game/images/CG/ball/bj/sperm4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2564dadf4e0a60a2ad94ecb6ca4b245dfc76c34245d6ef3d9c9dc0a0c671cb04 +size 3614 diff --git a/game/images/CG/ball/bj/spit_base3.webp b/game/images/CG/ball/bj/spit_base3.webp new file mode 100644 index 00000000..1ddf0cff --- /dev/null +++ b/game/images/CG/ball/bj/spit_base3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d8d9bb7579e5059e3d316e751ff814b7b5149b242be44dbf8334b1c017d7711 +size 3176 diff --git a/game/images/CG/ball/bj/spit_eye3.webp b/game/images/CG/ball/bj/spit_eye3.webp new file mode 100644 index 00000000..142ce1dc --- /dev/null +++ b/game/images/CG/ball/bj/spit_eye3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05533c8949af60128c4113a2b0ed61af957eef0d474d90960149b753df79c233 +size 2800 diff --git a/game/images/CG/ball/bj/spit_forehead3.webp b/game/images/CG/ball/bj/spit_forehead3.webp new file mode 100644 index 00000000..15ea3668 --- /dev/null +++ b/game/images/CG/ball/bj/spit_forehead3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05ca70b8981116aaaf6207f001e70e7a883fcfe11abaedc841c8a658de7c0b84 +size 2800 diff --git a/game/images/CG/ball/bj/spit_nose3.webp b/game/images/CG/ball/bj/spit_nose3.webp new file mode 100644 index 00000000..e09387c4 --- /dev/null +++ b/game/images/CG/ball/bj/spit_nose3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9df6e0affabf47804e5c4c8522e405df108ec69f7566e55bdad192de309ece4b +size 2738 diff --git a/game/images/CG/ball/bj/spit_on_eye3.webp b/game/images/CG/ball/bj/spit_on_eye3.webp new file mode 100644 index 00000000..1623fad5 --- /dev/null +++ b/game/images/CG/ball/bj/spit_on_eye3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ab5240e4cbb466ca10529a261a6349358d92f781fb6f29f089ae56a3371ac6c +size 5770 diff --git a/game/images/CG/ball/bj/sweat.webp b/game/images/CG/ball/bj/sweat.webp new file mode 100644 index 00000000..4014ebf6 --- /dev/null +++ b/game/images/CG/ball/bj/sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07970829e813573580ed67694bdd3cb9d5dc13ba9d8bd611176839dfb6778bb5 +size 1432 diff --git a/game/images/CG/ball/bj/sweat2.webp b/game/images/CG/ball/bj/sweat2.webp new file mode 100644 index 00000000..b2323498 --- /dev/null +++ b/game/images/CG/ball/bj/sweat2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2133915720ff847d85a23a868d0a3d0109fc4a3618cc4df4a7f5445f790a55a6 +size 1384 diff --git a/game/images/CG/ball/bj/sweat3.webp b/game/images/CG/ball/bj/sweat3.webp new file mode 100644 index 00000000..2f45a5f6 --- /dev/null +++ b/game/images/CG/ball/bj/sweat3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b29a772ce4505eba2c4190d31ee731064b6bf5721911a84f5c84c9e01c30e84 +size 2136 diff --git a/game/images/CG/ball/bj/sweat4.webp b/game/images/CG/ball/bj/sweat4.webp new file mode 100644 index 00000000..7cb5f9e9 --- /dev/null +++ b/game/images/CG/ball/bj/sweat4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16d2698a00a1f0829c6a1aed25f0e6e735314c84fcb9c6ea71e39a24534fbf4a +size 1378 diff --git a/game/images/CG/ball/bj/tears_base3.webp b/game/images/CG/ball/bj/tears_base3.webp new file mode 100644 index 00000000..3a48a6b6 --- /dev/null +++ b/game/images/CG/ball/bj/tears_base3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c47c8e64bbced5034e45352b6dbbbffae706d3949d3b315f7b4126cb5ddc77b +size 1656 diff --git a/game/images/CG/ball/bj/tears_crying3.webp b/game/images/CG/ball/bj/tears_crying3.webp new file mode 100644 index 00000000..9ebb2098 --- /dev/null +++ b/game/images/CG/ball/bj/tears_crying3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:172d0da24d9fc6c078b9af5474cd3399dccbddf9e5e89faf48ea5c599d5d96a5 +size 2366 diff --git a/game/images/CG/ball/blank.webp b/game/images/CG/ball/blank.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/images/CG/ball/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/images/CG/ball/intro/background.webp b/game/images/CG/ball/intro/background.webp new file mode 100644 index 00000000..b1234be9 --- /dev/null +++ b/game/images/CG/ball/intro/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8277a45a945cd7e54192906544013cf3e7d233f18fea42432ae0ffeb62fd9860 +size 328592 diff --git a/game/images/CG/ball/intro/bloom.webp b/game/images/CG/ball/intro/bloom.webp new file mode 100644 index 00000000..ca4f8389 --- /dev/null +++ b/game/images/CG/ball/intro/bloom.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a413238662ac68ad880f54118972928fa4d00a1c1cdc1dc159b1b56bd1443b28 +size 83374 diff --git a/game/images/CG/ball/intro/foreground.webp b/game/images/CG/ball/intro/foreground.webp new file mode 100644 index 00000000..4983c0df --- /dev/null +++ b/game/images/CG/ball/intro/foreground.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3175a35269ec0105e11d3f50032debb3459346874cd78900636f5272d2d0f2c +size 162250 diff --git a/game/images/CG/ball/intro/hermione.webp b/game/images/CG/ball/intro/hermione.webp new file mode 100644 index 00000000..76262797 --- /dev/null +++ b/game/images/CG/ball/intro/hermione.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49cf0d997b3d7dd8c19b8d7d3f764c2d84f047a4a7a92581ab311fb5121153ce +size 104036 diff --git a/game/images/CG/ball/intro/hermione2.webp b/game/images/CG/ball/intro/hermione2.webp new file mode 100644 index 00000000..bade3702 --- /dev/null +++ b/game/images/CG/ball/intro/hermione2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:717839730d00978d0c0186818d67e458955390a9300814a5e958b63f465a871e +size 104642 diff --git a/game/images/CG/ball/intro/overlay.webp b/game/images/CG/ball/intro/overlay.webp new file mode 100644 index 00000000..2bc2e9a5 --- /dev/null +++ b/game/images/CG/ball/intro/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6898fe054c4a8a3d8d53880f9efdd289b8588ca3931000b00e6196d82074a673 +size 269756 diff --git a/game/images/CG/ball/sex/background.webp b/game/images/CG/ball/sex/background.webp new file mode 100644 index 00000000..9e21d5c7 --- /dev/null +++ b/game/images/CG/ball/sex/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae70f628a742b6fa8ae5b53de6a76d25045c549de6cea6c1f52183229f80654f +size 296796 diff --git a/game/images/CG/ball/sex/background2.webp b/game/images/CG/ball/sex/background2.webp new file mode 100644 index 00000000..e1743d60 --- /dev/null +++ b/game/images/CG/ball/sex/background2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac19c15693c5e8bdaa0e70981365c61aaaa3e966f38b5fae558e83286b955c18 +size 287822 diff --git a/game/images/CG/ball/sex/base.webp b/game/images/CG/ball/sex/base.webp new file mode 100644 index 00000000..b5f8e1e3 --- /dev/null +++ b/game/images/CG/ball/sex/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d619950f2aad4534956408fec2d81b7c15075a09ea0c0f9d59d6f9816fcb8e4 +size 233626 diff --git a/game/images/CG/ball/sex/base2.webp b/game/images/CG/ball/sex/base2.webp new file mode 100644 index 00000000..1d42ae12 --- /dev/null +++ b/game/images/CG/ball/sex/base2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ae341f667b59bae894d121d06ac9934c8a3c76295cbd9a75d3cab3056e1694b +size 193796 diff --git a/game/images/CG/ball/sex/blush.webp b/game/images/CG/ball/sex/blush.webp new file mode 100644 index 00000000..500db5b8 --- /dev/null +++ b/game/images/CG/ball/sex/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:249be329b93dd7f1bbf13f9351f9bee4e3ec00569a73b710c2ce179b0931a768 +size 3876 diff --git a/game/images/CG/ball/sex/blush2.webp b/game/images/CG/ball/sex/blush2.webp new file mode 100644 index 00000000..7b89c139 --- /dev/null +++ b/game/images/CG/ball/sex/blush2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05805ac755338a06bd3eca9a47c689624a1858d56dd54c6a514cd79376edfde5 +size 2884 diff --git a/game/images/CG/ball/sex/brows.webp b/game/images/CG/ball/sex/brows.webp new file mode 100644 index 00000000..527c1b35 --- /dev/null +++ b/game/images/CG/ball/sex/brows.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7b81f21b8b322b957929ae18b9305e2502ce5961e923510c39d2ad0ab3e42f1 +size 3782 diff --git a/game/images/CG/ball/sex/bukkake.webp b/game/images/CG/ball/sex/bukkake.webp new file mode 100644 index 00000000..cb40952a --- /dev/null +++ b/game/images/CG/ball/sex/bukkake.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d6006192da1da8af678360e614b9d40b641e9c20281e2f83a49698eaa3603e3 +size 29944 diff --git a/game/images/CG/ball/sex/cheeks.webp b/game/images/CG/ball/sex/cheeks.webp new file mode 100644 index 00000000..d13c2b1a --- /dev/null +++ b/game/images/CG/ball/sex/cheeks.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93b03237575bd949f1d9fe9f27d3220a4b599ce93014bcd7ef61dd3e0934f063 +size 3690 diff --git a/game/images/CG/ball/sex/cum_after.webp b/game/images/CG/ball/sex/cum_after.webp new file mode 100644 index 00000000..bd9d4b43 --- /dev/null +++ b/game/images/CG/ball/sex/cum_after.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af414b12692c7083caa762763bf6e498f9256690b29b5d6f8c6b353ea0184cf8 +size 7814 diff --git a/game/images/CG/ball/sex/cum_anal.webp b/game/images/CG/ball/sex/cum_anal.webp new file mode 100644 index 00000000..b73a93e5 --- /dev/null +++ b/game/images/CG/ball/sex/cum_anal.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbb2dd81c233c4cb1a72d92d5ee88c79ca74c7b01030cfb30242342c49faefee +size 4076 diff --git a/game/images/CG/ball/sex/cum_extra.webp b/game/images/CG/ball/sex/cum_extra.webp new file mode 100644 index 00000000..c7ccf406 --- /dev/null +++ b/game/images/CG/ball/sex/cum_extra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64bcb584ee1e5c8b8255d2ece8b16621feee2899fe24d55ac3efaee202e97c99 +size 5386 diff --git a/game/images/CG/ball/sex/cum_nose.webp b/game/images/CG/ball/sex/cum_nose.webp new file mode 100644 index 00000000..10c6a467 --- /dev/null +++ b/game/images/CG/ball/sex/cum_nose.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f950eeaa1610cc56772f6e08745b14a7b098bd792393c616047ad78592932cad +size 3784 diff --git a/game/images/CG/ball/sex/cum_pussy.webp b/game/images/CG/ball/sex/cum_pussy.webp new file mode 100644 index 00000000..a104e60a --- /dev/null +++ b/game/images/CG/ball/sex/cum_pussy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0135cbc578e4213d32c1710028951c68318e8e466295f594055c0fc29e6a745d +size 4296 diff --git a/game/images/CG/ball/sex/dude_bj.webp b/game/images/CG/ball/sex/dude_bj.webp new file mode 100644 index 00000000..3f503375 --- /dev/null +++ b/game/images/CG/ball/sex/dude_bj.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19694636f3fead58dd18adad23ad56dd6c61002d4ae9ab8fedc183db9b4985d6 +size 66482 diff --git a/game/images/CG/ball/sex/dude_bj2.webp b/game/images/CG/ball/sex/dude_bj2.webp new file mode 100644 index 00000000..fd282ce2 --- /dev/null +++ b/game/images/CG/ball/sex/dude_bj2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d73cb72438ccb679c11b171b50b4e886933c009bd7c4b222c82057fb4e336125 +size 64914 diff --git a/game/images/CG/ball/sex/dude_bj3.webp b/game/images/CG/ball/sex/dude_bj3.webp new file mode 100644 index 00000000..4324b000 --- /dev/null +++ b/game/images/CG/ball/sex/dude_bj3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cca6ed2e528ef8f0b834e78d3c110541e2c729594782c0b2b3ea4b9cd0319801 +size 66808 diff --git a/game/images/CG/ball/sex/dude_bj_cum.webp b/game/images/CG/ball/sex/dude_bj_cum.webp new file mode 100644 index 00000000..ad4f2a5a --- /dev/null +++ b/game/images/CG/ball/sex/dude_bj_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:376ab8aa0641269b82caf536029384d73d6b2e6e467d9f603f040d24310c3b29 +size 11026 diff --git a/game/images/CG/ball/sex/dudes.webp b/game/images/CG/ball/sex/dudes.webp new file mode 100644 index 00000000..5de1c3a8 --- /dev/null +++ b/game/images/CG/ball/sex/dudes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6700b27f12a4f4566b81c79a0f5f96fe2a6519e21e0120c972da16c7f899257a +size 89876 diff --git a/game/images/CG/ball/sex/dudes2.webp b/game/images/CG/ball/sex/dudes2.webp new file mode 100644 index 00000000..3850c511 --- /dev/null +++ b/game/images/CG/ball/sex/dudes2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7680ec10f1510d547dd0284eef1eff5d5510fdcb44a63287e926d833e6504cc8 +size 118282 diff --git a/game/images/CG/ball/sex/dudes_cum.webp b/game/images/CG/ball/sex/dudes_cum.webp new file mode 100644 index 00000000..eb410cae --- /dev/null +++ b/game/images/CG/ball/sex/dudes_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e63dcce1938b2d8c5b9d63f95791a214f4055d46ad21b18f4a89461db813a8a +size 11938 diff --git a/game/images/CG/ball/sex/dudes_cum2.webp b/game/images/CG/ball/sex/dudes_cum2.webp new file mode 100644 index 00000000..90f46146 --- /dev/null +++ b/game/images/CG/ball/sex/dudes_cum2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddc4960b0f873a1b64830ef4d4c1aa11d60f4838fa2d66d7b6a523585ef044ff +size 21534 diff --git a/game/images/CG/ball/sex/dudes_cum3.webp b/game/images/CG/ball/sex/dudes_cum3.webp new file mode 100644 index 00000000..cef04aa8 --- /dev/null +++ b/game/images/CG/ball/sex/dudes_cum3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8a02fb4fb78b3ec4b5c0be5a0ab9e3bdde07a3af2c73172a965e22bf0c1fa2b +size 27316 diff --git a/game/images/CG/ball/sex/dudes_spit.webp b/game/images/CG/ball/sex/dudes_spit.webp new file mode 100644 index 00000000..6251226c --- /dev/null +++ b/game/images/CG/ball/sex/dudes_spit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce3bf98c591f09498c8b75248436ea2a5cf872fc8c893640ff9e3bbfb922e3de +size 9762 diff --git a/game/images/CG/ball/sex/dudes_spit_mouth.webp b/game/images/CG/ball/sex/dudes_spit_mouth.webp new file mode 100644 index 00000000..ee5c5653 --- /dev/null +++ b/game/images/CG/ball/sex/dudes_spit_mouth.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08e36c205f7b478e9cb14a399f6ae727441ff693379064d2ff2f9f923f8200fb +size 10708 diff --git a/game/images/CG/ball/sex/eyes_closed.webp b/game/images/CG/ball/sex/eyes_closed.webp new file mode 100644 index 00000000..a75966aa --- /dev/null +++ b/game/images/CG/ball/sex/eyes_closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd4e5f248c1e6daaa00e896fcb2c9e876ee8303f1e3beaf5e2139547d8bff14b +size 3728 diff --git a/game/images/CG/ball/sex/eyes_dead.webp b/game/images/CG/ball/sex/eyes_dead.webp new file mode 100644 index 00000000..87545d8f --- /dev/null +++ b/game/images/CG/ball/sex/eyes_dead.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6914e59e4d1566998efe4725623781c208f05f2dbfa9647a94182696036f2aad +size 3814 diff --git a/game/images/CG/ball/sex/eyes_down.webp b/game/images/CG/ball/sex/eyes_down.webp new file mode 100644 index 00000000..5396a80e --- /dev/null +++ b/game/images/CG/ball/sex/eyes_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ce6a9409bcab0b00ccf548e00001e8a1bd898d1afbfba2a4dfb9f84f239d4fe +size 2732 diff --git a/game/images/CG/ball/sex/eyes_happycl.webp b/game/images/CG/ball/sex/eyes_happycl.webp new file mode 100644 index 00000000..8e4c424c --- /dev/null +++ b/game/images/CG/ball/sex/eyes_happycl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ccae65028269c436ed1b3ad96af86e731ced986eaf9e08f67d6a40238ec3f48f +size 3770 diff --git a/game/images/CG/ball/sex/eyes_r.webp b/game/images/CG/ball/sex/eyes_r.webp new file mode 100644 index 00000000..1a4f1cc5 --- /dev/null +++ b/game/images/CG/ball/sex/eyes_r.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7ee0baeffed16480c9471790cd7b8dc76f44f6c67e993d2392f17ba7ff6cbcd +size 2488 diff --git a/game/images/CG/ball/sex/eyes_stare.webp b/game/images/CG/ball/sex/eyes_stare.webp new file mode 100644 index 00000000..ecd3b112 --- /dev/null +++ b/game/images/CG/ball/sex/eyes_stare.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a658514b8fee0d98c0e9d8262782879da3cc2b409d741a2bd30fe02dd235077 +size 2552 diff --git a/game/images/CG/ball/sex/eyes_up.webp b/game/images/CG/ball/sex/eyes_up.webp new file mode 100644 index 00000000..75e6c879 --- /dev/null +++ b/game/images/CG/ball/sex/eyes_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:528cd0724e3df5030a8bbb6e60e2a826dfa31d60f9227f5541bcd5933511f195 +size 2452 diff --git a/game/images/CG/ball/sex/eyes_wide.webp b/game/images/CG/ball/sex/eyes_wide.webp new file mode 100644 index 00000000..0d6ce731 --- /dev/null +++ b/game/images/CG/ball/sex/eyes_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:714bd9ae33bc2aeea9946800bb4a54865f78a0fb085797785261aa653e4b9ec3 +size 3198 diff --git a/game/images/CG/ball/sex/lashes.webp b/game/images/CG/ball/sex/lashes.webp new file mode 100644 index 00000000..e64865be --- /dev/null +++ b/game/images/CG/ball/sex/lashes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54b3122e0d49e1a5ee08fa433c434e2adfabc4c5a93ca7d2a7f80a8449791dcd +size 2730 diff --git a/game/images/CG/ball/sex/mascara.webp b/game/images/CG/ball/sex/mascara.webp new file mode 100644 index 00000000..d7e1f745 --- /dev/null +++ b/game/images/CG/ball/sex/mascara.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c5279419f1b5c0915d0e873599590cb8114f524ba9ed71fac19d1c94133aa24 +size 3258 diff --git a/game/images/CG/ball/sex/mouth_open.webp b/game/images/CG/ball/sex/mouth_open.webp new file mode 100644 index 00000000..da395a90 --- /dev/null +++ b/game/images/CG/ball/sex/mouth_open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42bffb6d6cbfc7f03987a57bb0a0f15c1e21a92648a88662bd3d6d0a31659c96 +size 5012 diff --git a/game/images/CG/ball/sex/mouth_open_tongue.webp b/game/images/CG/ball/sex/mouth_open_tongue.webp new file mode 100644 index 00000000..dd765993 --- /dev/null +++ b/game/images/CG/ball/sex/mouth_open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6265110f779373dbc113929e9bb70e154e9a7895814b841bdbd46f835fa4e1b8 +size 2158 diff --git a/game/images/CG/ball/sex/mouth_open_tongue2.webp b/game/images/CG/ball/sex/mouth_open_tongue2.webp new file mode 100644 index 00000000..5565b3c6 --- /dev/null +++ b/game/images/CG/ball/sex/mouth_open_tongue2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f61d398d1d5061535ed4cf614e84f5a0c9e78ef19285fbbc03f90c6d2a95dc4 +size 2214 diff --git a/game/images/CG/ball/sex/mouth_smile.webp b/game/images/CG/ball/sex/mouth_smile.webp new file mode 100644 index 00000000..c2dd1e0b --- /dev/null +++ b/game/images/CG/ball/sex/mouth_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d84a6534fdd3943a9da3a76efb1ff343dbc4f3328163f551e78fa51e60da8101 +size 4220 diff --git a/game/images/CG/ball/sex/open_tongue2.webp b/game/images/CG/ball/sex/open_tongue2.webp new file mode 100644 index 00000000..83927863 --- /dev/null +++ b/game/images/CG/ball/sex/open_tongue2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2267e51db1e832babb1a85c0ff668ba88df37fe238dd2152a5e68d7ce108a2c2 +size 3612 diff --git a/game/images/CG/ball/sex/spank.webp b/game/images/CG/ball/sex/spank.webp new file mode 100644 index 00000000..e1adef07 --- /dev/null +++ b/game/images/CG/ball/sex/spank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2af7311f8d972b62a87f77cf64341d66cff5343dd91675163f3381493cef7ba +size 8262 diff --git a/game/images/CG/ball/sex/spit.webp b/game/images/CG/ball/sex/spit.webp new file mode 100644 index 00000000..d20c4396 --- /dev/null +++ b/game/images/CG/ball/sex/spit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:428c643c1c99af78608c0d4dc6e89c864f21376413da740ecb0e6f34cb453eac +size 5672 diff --git a/game/images/CG/ball/sex/spit_on_face.webp b/game/images/CG/ball/sex/spit_on_face.webp new file mode 100644 index 00000000..34394881 --- /dev/null +++ b/game/images/CG/ball/sex/spit_on_face.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfe910e351879e72d7b6329d9375d5c3361ef6ba9efe32dcf8008aac9c10c22d +size 2662 diff --git a/game/images/CG/ball/sex/tears.webp b/game/images/CG/ball/sex/tears.webp new file mode 100644 index 00000000..15f612d9 --- /dev/null +++ b/game/images/CG/ball/sex/tears.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0758211dde432666d63ece91b33ab0bd2298d201bb0bad8b58734a63dd762426 +size 2164 diff --git a/game/images/CG/ball/sex/tears2.webp b/game/images/CG/ball/sex/tears2.webp new file mode 100644 index 00000000..c58eb5a6 --- /dev/null +++ b/game/images/CG/ball/sex/tears2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6ca788e7f1a237344c40fc95159632fe619c71cf13c9ddc6af201315016a2fa +size 4414 diff --git a/game/images/CG/ball/speech/background.webp b/game/images/CG/ball/speech/background.webp new file mode 100644 index 00000000..5bc89f2b --- /dev/null +++ b/game/images/CG/ball/speech/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4542da13cdc8354774c3e85521365b09808ef64e62c01cdeb7e45ecc1c893ee6 +size 253718 diff --git a/game/images/CG/ball/speech/base.webp b/game/images/CG/ball/speech/base.webp new file mode 100644 index 00000000..b9766e69 --- /dev/null +++ b/game/images/CG/ball/speech/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a5bb3607d01241c23646790f3c411d1d414a935d42318a0da3b59200c6fb9ab +size 178588 diff --git a/game/images/CG/ball/speech/base2.webp b/game/images/CG/ball/speech/base2.webp new file mode 100644 index 00000000..cff2b99e --- /dev/null +++ b/game/images/CG/ball/speech/base2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d88244616abb285e4dbf5abc4fc1b28499fe7afb1baa9db53b551648f6eedbb +size 166418 diff --git a/game/images/CG/ball/speech/bloom.webp b/game/images/CG/ball/speech/bloom.webp new file mode 100644 index 00000000..ca4f8389 --- /dev/null +++ b/game/images/CG/ball/speech/bloom.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a413238662ac68ad880f54118972928fa4d00a1c1cdc1dc159b1b56bd1443b28 +size 83374 diff --git a/game/images/CG/ball/speech/blush.webp b/game/images/CG/ball/speech/blush.webp new file mode 100644 index 00000000..16f20eb8 --- /dev/null +++ b/game/images/CG/ball/speech/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bcfb532c276426e20822686330f9e81156972963cdef054f5a9f3b0c49b6d1de +size 4758 diff --git a/game/images/CG/ball/speech/brows.webp b/game/images/CG/ball/speech/brows.webp new file mode 100644 index 00000000..48109cbc --- /dev/null +++ b/game/images/CG/ball/speech/brows.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bdedcbf909096882f9a7723946e03d558e5c2a72d735a2243695f61196ccf2e +size 4098 diff --git a/game/images/CG/ball/speech/cheeks.webp b/game/images/CG/ball/speech/cheeks.webp new file mode 100644 index 00000000..695d8e26 --- /dev/null +++ b/game/images/CG/ball/speech/cheeks.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e3f4968b92d91703d4999bf5bed984309ed85ea31d0e5ff9b662ba9941bf6fe +size 9278 diff --git a/game/images/CG/ball/speech/cum0.webp b/game/images/CG/ball/speech/cum0.webp new file mode 100644 index 00000000..dc2f4891 --- /dev/null +++ b/game/images/CG/ball/speech/cum0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4008f1b7ac7de808ac6ce052f985160a4e6246bc3e8423537b6d4e5b9bfe237 +size 2632 diff --git a/game/images/CG/ball/speech/cum1.webp b/game/images/CG/ball/speech/cum1.webp new file mode 100644 index 00000000..86a554f4 --- /dev/null +++ b/game/images/CG/ball/speech/cum1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb9f2dc1849af58d9cc9f5d23ef652ec11988bbd1a6dcd382e3c0e521c9cd190 +size 5202 diff --git a/game/images/CG/ball/speech/cum2.webp b/game/images/CG/ball/speech/cum2.webp new file mode 100644 index 00000000..6b446e23 --- /dev/null +++ b/game/images/CG/ball/speech/cum2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84d345e0adf22280016509b933333ffddd1efb7bfb2af3f37bbec9c49b40bfde +size 6840 diff --git a/game/images/CG/ball/speech/cum3.webp b/game/images/CG/ball/speech/cum3.webp new file mode 100644 index 00000000..2cf38314 --- /dev/null +++ b/game/images/CG/ball/speech/cum3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1455fca0bf0323236fbd9d7d704b09474df790fa4272ec35f1761b3585fcd36e +size 11562 diff --git a/game/images/CG/ball/speech/cum4.webp b/game/images/CG/ball/speech/cum4.webp new file mode 100644 index 00000000..231cbfc1 --- /dev/null +++ b/game/images/CG/ball/speech/cum4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49cbdba3774600c2873b65986cf86119e2f9dfb84d3e90d4a70f7267727c33bc +size 13452 diff --git a/game/images/CG/ball/speech/cum5.webp b/game/images/CG/ball/speech/cum5.webp new file mode 100644 index 00000000..4410f764 --- /dev/null +++ b/game/images/CG/ball/speech/cum5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b858e544d2a2038a00bdc6ae5206f5b0c37f3d25c8cb8505212fbc029121db0 +size 16032 diff --git a/game/images/CG/ball/speech/cum6.webp b/game/images/CG/ball/speech/cum6.webp new file mode 100644 index 00000000..57927c39 --- /dev/null +++ b/game/images/CG/ball/speech/cum6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12ee558225c42869dd1979c16bfade0709a9eb0b999665d6f122075d5674f03b +size 18280 diff --git a/game/images/CG/ball/speech/cum_mouth.webp b/game/images/CG/ball/speech/cum_mouth.webp new file mode 100644 index 00000000..36f6e858 --- /dev/null +++ b/game/images/CG/ball/speech/cum_mouth.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27e27300bc8e70f26ec42751d8f5c23f059fcbc480f699c8a2d26a66c56449cf +size 2660 diff --git a/game/images/CG/ball/speech/cum_nose.webp b/game/images/CG/ball/speech/cum_nose.webp new file mode 100644 index 00000000..a03c1762 --- /dev/null +++ b/game/images/CG/ball/speech/cum_nose.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2444d6b6c4594153f309db073de4aa1caef86ebe75b9bfec31bcab08c8a947cd +size 2106 diff --git a/game/images/CG/ball/speech/cum_nose2.webp b/game/images/CG/ball/speech/cum_nose2.webp new file mode 100644 index 00000000..a7d416fa --- /dev/null +++ b/game/images/CG/ball/speech/cum_nose2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0cff4e1be1318e2d65c9dcf81a5037192e076035c551913a6a3c7bd241f58e4b +size 1676 diff --git a/game/images/CG/ball/speech/eyes_closed.webp b/game/images/CG/ball/speech/eyes_closed.webp new file mode 100644 index 00000000..4d4eb0f7 --- /dev/null +++ b/game/images/CG/ball/speech/eyes_closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0aa293b68cca90c2b3bb96c3bcafbabc4c193737c6a1c4ccb4b2031d7ad50a6 +size 7010 diff --git a/game/images/CG/ball/speech/eyes_squint.webp b/game/images/CG/ball/speech/eyes_squint.webp new file mode 100644 index 00000000..7f90abb4 --- /dev/null +++ b/game/images/CG/ball/speech/eyes_squint.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:daebe1aa00bf008a3dacecb2b2771df08255194c701c41020b6a62897fb6130f +size 7376 diff --git a/game/images/CG/ball/speech/mascara.webp b/game/images/CG/ball/speech/mascara.webp new file mode 100644 index 00000000..fd86b6c2 --- /dev/null +++ b/game/images/CG/ball/speech/mascara.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0a4f36cbe89d15a6b4e3d416fb1d5230fb0472940816d4b74259b163dced032 +size 2466 diff --git a/game/images/CG/ball/speech/mouth_open.webp b/game/images/CG/ball/speech/mouth_open.webp new file mode 100644 index 00000000..1aff8fad --- /dev/null +++ b/game/images/CG/ball/speech/mouth_open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93a3732971e33147ffb4440d4460d92df597fd705b92fc42c8c1ec6205c306b8 +size 4832 diff --git a/game/images/CG/ball/speech/overlay.webp b/game/images/CG/ball/speech/overlay.webp new file mode 100644 index 00000000..2bc2e9a5 --- /dev/null +++ b/game/images/CG/ball/speech/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6898fe054c4a8a3d8d53880f9efdd289b8588ca3931000b00e6196d82074a673 +size 269756 diff --git a/game/images/CG/ball/speech/sweat.webp b/game/images/CG/ball/speech/sweat.webp new file mode 100644 index 00000000..2b6a1b78 --- /dev/null +++ b/game/images/CG/ball/speech/sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc036bafd7fc793b6048606c8ee385a37d9ead982454208ff8a22451d459d6d2 +size 1846 diff --git a/game/images/CG/cho_bj/bj/day_overlay.webp b/game/images/CG/cho_bj/bj/day_overlay.webp new file mode 100644 index 00000000..a14d0802 --- /dev/null +++ b/game/images/CG/cho_bj/bj/day_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38ad6a65b310c71a9fa18b2fc957ae6653ef0ca63a4d21e338f650e3b7bdcb0e +size 79694 diff --git a/game/images/CG/cho_bj/bj/loops/lick.webm b/game/images/CG/cho_bj/bj/loops/lick.webm new file mode 100644 index 00000000..4cb827ba --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/lick.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31fa3755bd365b68328b790536cb3e352db0279c86b6dba47a3214f4b3431dcc +size 485398 diff --git a/game/images/CG/cho_bj/bj/loops/lick.webp b/game/images/CG/cho_bj/bj/loops/lick.webp new file mode 100644 index 00000000..34855bcb --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/lick.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3dd89807ff98092323d1b37095c23b7c64f276823fccc7141b57ab85dfede00 +size 379718 diff --git a/game/images/CG/cho_bj/bj/loops/topless/lick.webm b/game/images/CG/cho_bj/bj/loops/topless/lick.webm new file mode 100644 index 00000000..e7d2e574 --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/topless/lick.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49e63d9144c43ae9939b889ee561ceaaea4691e2a28dad99f88d8dfb5d3b3db6 +size 482104 diff --git a/game/images/CG/cho_bj/bj/loops/topless/lick.webp b/game/images/CG/cho_bj/bj/loops/topless/lick.webp new file mode 100644 index 00000000..337c3115 --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/topless/lick.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b08083980a9da36ed18a53a8bc8ce36418adac73165bd2fa0c4c1378b8cd651 +size 365458 diff --git a/game/images/CG/cho_bj/bj/loops/topless/suck.webm b/game/images/CG/cho_bj/bj/loops/topless/suck.webm new file mode 100644 index 00000000..a8732480 --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/topless/suck.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acfed2da8da65170be640daa1c1e8c9c1fda89b826f6ddd3dc297412e3c042f5 +size 924922 diff --git a/game/images/CG/cho_bj/bj/loops/topless/suck.webp b/game/images/CG/cho_bj/bj/loops/topless/suck.webp new file mode 100644 index 00000000..f92f71bc --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/topless/suck.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:735136bd5f529b2727161653e33f6e3f4647b93e2cf26896afade374326b8d7c +size 357576 diff --git a/game/images/CG/cho_bj/bj/loops/topless/suck_closed.webm b/game/images/CG/cho_bj/bj/loops/topless/suck_closed.webm new file mode 100644 index 00000000..372d0b39 --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/topless/suck_closed.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91f4b5711734ab1cafb54174dbdacbcaa43af31212d9fe466ce86ea8db9b4f10 +size 908968 diff --git a/game/images/CG/cho_bj/bj/loops/topless/suck_closed.webp b/game/images/CG/cho_bj/bj/loops/topless/suck_closed.webp new file mode 100644 index 00000000..a417fa3f --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/topless/suck_closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b2f060f445b238da6e5ffe6fd5dfb47341d39f6ae8ad069c87a4428faf45a56 +size 356572 diff --git a/game/images/CG/cho_bj/bj/loops/topless/suck_deep.webm b/game/images/CG/cho_bj/bj/loops/topless/suck_deep.webm new file mode 100644 index 00000000..9ca47bf5 --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/topless/suck_deep.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fec44b75de649a32967da9f5c317053652098106068314a7d37537587fadb15c +size 943006 diff --git a/game/images/CG/cho_bj/bj/loops/topless/suck_deep.webp b/game/images/CG/cho_bj/bj/loops/topless/suck_deep.webp new file mode 100644 index 00000000..c875e943 --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/topless/suck_deep.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d084359ac93abc87dd62562cb7c6bc8f2e48707d812129ca6c681482aca34f88 +size 357500 diff --git a/game/images/CG/cho_bj/bj/loops/topless/suck_medium.webm b/game/images/CG/cho_bj/bj/loops/topless/suck_medium.webm new file mode 100644 index 00000000..f8ee83ab --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/topless/suck_medium.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0371af6c74c17d680d7518f83af712ccaafd5cfa5bb6c5ce54f05ed56f42e06 +size 944962 diff --git a/game/images/CG/cho_bj/bj/loops/topless/suck_medium.webp b/game/images/CG/cho_bj/bj/loops/topless/suck_medium.webp new file mode 100644 index 00000000..de341d8a --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/topless/suck_medium.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:453d7712eff6ac92affd9e2af850587a3418aa8a764b19646d732ba19088d251 +size 357000 diff --git a/game/images/CG/cho_bj/bj/loops/topless/suck_medium_up.webm b/game/images/CG/cho_bj/bj/loops/topless/suck_medium_up.webm new file mode 100644 index 00000000..96008ce0 --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/topless/suck_medium_up.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f684ed338c6c6ee5c1e77af91a73e1baa66fe092bf8046544fe6a15a8925467d +size 946394 diff --git a/game/images/CG/cho_bj/bj/loops/topless/suck_medium_up.webp b/game/images/CG/cho_bj/bj/loops/topless/suck_medium_up.webp new file mode 100644 index 00000000..dfd6cf16 --- /dev/null +++ b/game/images/CG/cho_bj/bj/loops/topless/suck_medium_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44f0c2990e7b78020da44c9616a95c2fdc0b23cf95a7d4b2cf65c73f27487bc6 +size 357332 diff --git a/game/images/CG/cho_bj/bj/night_overlay.webp b/game/images/CG/cho_bj/bj/night_overlay.webp new file mode 100644 index 00000000..3bf46a0f --- /dev/null +++ b/game/images/CG/cho_bj/bj/night_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6265ffbad00858ed7d16c018e38f15d3c574de7963a7b3500a93bf61f93c124f +size 93510 diff --git a/game/images/CG/cho_bj/bj/nonloops/lick_fail.webm b/game/images/CG/cho_bj/bj/nonloops/lick_fail.webm new file mode 100644 index 00000000..13d5067f --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/lick_fail.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9a97f8eb8fe954a0414a1139f58ee5e50e06b86cf685b863085dbf7e610844f +size 1170075 diff --git a/game/images/CG/cho_bj/bj/nonloops/lick_fail.webp b/game/images/CG/cho_bj/bj/nonloops/lick_fail.webp new file mode 100644 index 00000000..18586a5b --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/lick_fail.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8da00bec3f8969603fa1d18f7cca497dffd72e91ee58989931f3a5f581ab6e9 +size 380362 diff --git a/game/images/CG/cho_bj/bj/nonloops/lick_fail_end.webp b/game/images/CG/cho_bj/bj/nonloops/lick_fail_end.webp new file mode 100644 index 00000000..91c42150 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/lick_fail_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3d63eaa42b6610f261bf6e09c813e7254743f5e714b45ba79dc089fe9c21450 +size 379358 diff --git a/game/images/CG/cho_bj/bj/nonloops/lick_start.webm b/game/images/CG/cho_bj/bj/nonloops/lick_start.webm new file mode 100644 index 00000000..f90e0d5d --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/lick_start.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f37c5747429357400b0d52788158eb0f57bb8260864dd94b03311d16621255ca +size 613719 diff --git a/game/images/CG/cho_bj/bj/nonloops/lick_start.webp b/game/images/CG/cho_bj/bj/nonloops/lick_start.webp new file mode 100644 index 00000000..18586a5b --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/lick_start.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8da00bec3f8969603fa1d18f7cca497dffd72e91ee58989931f3a5f581ab6e9 +size 380362 diff --git a/game/images/CG/cho_bj/bj/nonloops/lick_start_end.webp b/game/images/CG/cho_bj/bj/nonloops/lick_start_end.webp new file mode 100644 index 00000000..09fd0971 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/lick_start_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f81b43befc28d869780a757eddb87f0e753d175600e13df1eb564eb3969a67f8 +size 379246 diff --git a/game/images/CG/cho_bj/bj/nonloops/lick_success.webm b/game/images/CG/cho_bj/bj/nonloops/lick_success.webm new file mode 100644 index 00000000..97678452 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/lick_success.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3f64607ac5e6228beb82d0ce332d53bd8aa1f6ff52a0ec0f095a574d78d5ea5 +size 1014083 diff --git a/game/images/CG/cho_bj/bj/nonloops/lick_success.webp b/game/images/CG/cho_bj/bj/nonloops/lick_success.webp new file mode 100644 index 00000000..18586a5b --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/lick_success.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8da00bec3f8969603fa1d18f7cca497dffd72e91ee58989931f3a5f581ab6e9 +size 380362 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/cum_mouth.webm b/game/images/CG/cho_bj/bj/nonloops/topless/cum_mouth.webm new file mode 100644 index 00000000..540f40ed --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/cum_mouth.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9efdd71d7f0ca6140c21c5770ed8a02ec79a1cab8f9564f784ad1c399e9fbad6 +size 936256 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/cum_mouth.webp b/game/images/CG/cho_bj/bj/nonloops/topless/cum_mouth.webp new file mode 100644 index 00000000..1692e4bf --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/cum_mouth.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84d4f272b603ebf620c320e124fdc408d320667b625c7b31250ee3d9e2c76b77 +size 421608 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/cum_mouth_end.webp b/game/images/CG/cho_bj/bj/nonloops/topless/cum_mouth_end.webp new file mode 100644 index 00000000..00a58321 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/cum_mouth_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:598ee9717eb97c8df1e60df354243a5048ea628a0ffa1c6f6411affc62f580ea +size 435886 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/cum_swallow.webm b/game/images/CG/cho_bj/bj/nonloops/topless/cum_swallow.webm new file mode 100644 index 00000000..6698cdf0 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/cum_swallow.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd2af93720bcbd981a2b4e628c778b6c357865aa90a79cf7b937faccf9df4d47 +size 1065761 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/cum_swallow.webp b/game/images/CG/cho_bj/bj/nonloops/topless/cum_swallow.webp new file mode 100644 index 00000000..1692e4bf --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/cum_swallow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84d4f272b603ebf620c320e124fdc408d320667b625c7b31250ee3d9e2c76b77 +size 421608 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/cum_swallow_end.webp b/game/images/CG/cho_bj/bj/nonloops/topless/cum_swallow_end.webp new file mode 100644 index 00000000..506602e1 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/cum_swallow_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66ae18c9e45037921b5a895b59589e1b6cc6fe1693fc31d7df2acf9a904b8667 +size 431788 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/lick_exit.webm b/game/images/CG/cho_bj/bj/nonloops/topless/lick_exit.webm new file mode 100644 index 00000000..3a9248b9 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/lick_exit.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20cce986a86405b84e892acf10ec4c3dfc81618d29aa694ba9654028bacf64f0 +size 587765 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/lick_exit.webp b/game/images/CG/cho_bj/bj/nonloops/topless/lick_exit.webp new file mode 100644 index 00000000..c42f39bd --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/lick_exit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a721762a572bb0a172d0e49585943f24ea6857fe8c4282cfc6c379e09d57516 +size 365962 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/lick_exit_end.webp b/game/images/CG/cho_bj/bj/nonloops/topless/lick_exit_end.webp new file mode 100644 index 00000000..0b46f5e1 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/lick_exit_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93739c79294751e6e5041fb2e301e20cef8e53f01223aac61d51c7a8c175780b +size 367284 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/lick_start.webm b/game/images/CG/cho_bj/bj/nonloops/topless/lick_start.webm new file mode 100644 index 00000000..b4360be7 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/lick_start.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b7dcdce13d0f56d4b7d5154bff3723969ced7ad2e34376146e6253666a70867 +size 602553 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/lick_start.webp b/game/images/CG/cho_bj/bj/nonloops/topless/lick_start.webp new file mode 100644 index 00000000..0b46f5e1 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/lick_start.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93739c79294751e6e5041fb2e301e20cef8e53f01223aac61d51c7a8c175780b +size 367284 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/lick_start_end.webp b/game/images/CG/cho_bj/bj/nonloops/topless/lick_start_end.webp new file mode 100644 index 00000000..c42f39bd --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/lick_start_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a721762a572bb0a172d0e49585943f24ea6857fe8c4282cfc6c379e09d57516 +size 365962 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/lick_success.webm b/game/images/CG/cho_bj/bj/nonloops/topless/lick_success.webm new file mode 100644 index 00000000..13669a7b --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/lick_success.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9726af32060e54252e83cc7312591a5c160ef4c50230b90ab9879691cac5c728 +size 966457 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/lick_success.webp b/game/images/CG/cho_bj/bj/nonloops/topless/lick_success.webp new file mode 100644 index 00000000..0b46f5e1 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/lick_success.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93739c79294751e6e5041fb2e301e20cef8e53f01223aac61d51c7a8c175780b +size 367284 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit.webm b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit.webm new file mode 100644 index 00000000..09b5c0b7 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3230ccb866302ca22c8153da610db9da5750d1898180f9a81f5f4c792bb3f78d +size 1487877 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit.webp new file mode 100644 index 00000000..a417fa3f --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b2f060f445b238da6e5ffe6fd5dfb47341d39f6ae8ad069c87a4428faf45a56 +size 356572 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit_end.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit_end.webp new file mode 100644 index 00000000..61cd2654 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eab941b4f64914120a3c36b5419f9b574fdcc41c1ff5cb1f55b037cefd062721 +size 366784 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail.webm b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail.webm new file mode 100644 index 00000000..8135ae6a --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28031be45bba833516c85099b59cde5d96f5828e31edbcea2879c19d50410780 +size 491567 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail.webp new file mode 100644 index 00000000..61cd2654 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eab941b4f64914120a3c36b5419f9b574fdcc41c1ff5cb1f55b037cefd062721 +size 366784 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_end.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_end.webp new file mode 100644 index 00000000..cfcc6531 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cfa5d80d482650a9f71d634cc0a5c91476a33d7effa7b44019467d22f2eab1b +size 364986 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit.webm b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit.webm new file mode 100644 index 00000000..b2f84817 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b91574d3640095df44df822421b7a3a5f97bd28c8d65e782629766c1b8f00ec4 +size 464183 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit.webp new file mode 100644 index 00000000..cfcc6531 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cfa5d80d482650a9f71d634cc0a5c91476a33d7effa7b44019467d22f2eab1b +size 364986 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit_end.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit_end.webp new file mode 100644 index 00000000..61cd2654 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eab941b4f64914120a3c36b5419f9b574fdcc41c1ff5cb1f55b037cefd062721 +size 366784 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_start.webm b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_start.webm new file mode 100644 index 00000000..a77d2803 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_start.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c7ad1157b616afe1996774d16dec063af8a718648f79966d6f0c2db63bda7c1 +size 1547585 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_start.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_start.webp new file mode 100644 index 00000000..61cd2654 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_start.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eab941b4f64914120a3c36b5419f9b574fdcc41c1ff5cb1f55b037cefd062721 +size 366784 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_start_end.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_start_end.webp new file mode 100644 index 00000000..a417fa3f --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_start_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b2f060f445b238da6e5ffe6fd5dfb47341d39f6ae8ad069c87a4428faf45a56 +size 356572 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_success.webm b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_success.webm new file mode 100644 index 00000000..f0cc46cc --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_closed_success.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50735c0fc518e7dbb5a5e7255ed486a9e54ffd2cd696bf2104f6d975c1eaa3e2 +size 3034283 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_deep_start.webm b/game/images/CG/cho_bj/bj/nonloops/topless/suck_deep_start.webm new file mode 100644 index 00000000..e1f6ad59 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_deep_start.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aabe906ce50ec3b10c7f2c82abc2f4b57f87db0b5c24d4bd2ec1990542ac4b2c +size 1486934 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_deep_start.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_deep_start.webp new file mode 100644 index 00000000..61cd2654 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_deep_start.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eab941b4f64914120a3c36b5419f9b574fdcc41c1ff5cb1f55b037cefd062721 +size 366784 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_deep_start_end.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_deep_start_end.webp new file mode 100644 index 00000000..c875e943 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_deep_start_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d084359ac93abc87dd62562cb7c6bc8f2e48707d812129ca6c681482aca34f88 +size 357500 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_medium_start.webm b/game/images/CG/cho_bj/bj/nonloops/topless/suck_medium_start.webm new file mode 100644 index 00000000..78dd9b89 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_medium_start.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce63dac0904e2eef98bef30b2375df996e7b3bc929b7e5481eaeeb8eb09ceac4 +size 1355722 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_medium_start.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_medium_start.webp new file mode 100644 index 00000000..61cd2654 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_medium_start.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eab941b4f64914120a3c36b5419f9b574fdcc41c1ff5cb1f55b037cefd062721 +size 366784 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_medium_start_end.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_medium_start_end.webp new file mode 100644 index 00000000..de341d8a --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_medium_start_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:453d7712eff6ac92affd9e2af850587a3418aa8a764b19646d732ba19088d251 +size 357000 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_start.webm b/game/images/CG/cho_bj/bj/nonloops/topless/suck_start.webm new file mode 100644 index 00000000..c1ca88f8 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_start.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f8e36e6566f4f0e1a5ba45f103c727073dd60618f4828065b1564cde20a6b8e +size 1553134 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_start.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_start.webp new file mode 100644 index 00000000..61cd2654 --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_start.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eab941b4f64914120a3c36b5419f9b574fdcc41c1ff5cb1f55b037cefd062721 +size 366784 diff --git a/game/images/CG/cho_bj/bj/nonloops/topless/suck_start_end.webp b/game/images/CG/cho_bj/bj/nonloops/topless/suck_start_end.webp new file mode 100644 index 00000000..f92f71bc --- /dev/null +++ b/game/images/CG/cho_bj/bj/nonloops/topless/suck_start_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:735136bd5f529b2727161653e33f6e3f4647b93e2cf26896afade374326b8d7c +size 357576 diff --git a/game/images/CG/cho_bj/bj/topless_suck_up.webp b/game/images/CG/cho_bj/bj/topless_suck_up.webp new file mode 100644 index 00000000..0848c022 --- /dev/null +++ b/game/images/CG/cho_bj/bj/topless_suck_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c57d460032f3307a9909506caf6670eb220e30acb5c94873119a68a9d98ca0e1 +size 866592 diff --git a/game/images/CG/cho_bj/hj/away.webp b/game/images/CG/cho_bj/hj/away.webp new file mode 100644 index 00000000..88f67714 --- /dev/null +++ b/game/images/CG/cho_bj/hj/away.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0087ab0b3de3cf8c8731a74e0d97fdd59e265561499a53c3a34185afe3c16eb +size 917904 diff --git a/game/images/CG/cho_bj/hj/away_blush.webp b/game/images/CG/cho_bj/hj/away_blush.webp new file mode 100644 index 00000000..12f1f7ce --- /dev/null +++ b/game/images/CG/cho_bj/hj/away_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a265d6a51d4ba351997de22fbf8e90c34c4caa3f3f408802b8008f5f10c3bb7 +size 920572 diff --git a/game/images/CG/cho_bj/hj/cum.webp b/game/images/CG/cho_bj/hj/cum.webp new file mode 100644 index 00000000..284d600a --- /dev/null +++ b/game/images/CG/cho_bj/hj/cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d77a1d07618fe29e7ed79271b8f978155fca414fb04a95d2de3201cb2d6d7545 +size 947614 diff --git a/game/images/CG/cho_bj/hj/cum_dodge.webp b/game/images/CG/cho_bj/hj/cum_dodge.webp new file mode 100644 index 00000000..525b09e9 --- /dev/null +++ b/game/images/CG/cho_bj/hj/cum_dodge.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acaecca9730ec58fd55253069d01683b73c9b35180a256cb9a7b85acaabf92e6 +size 952514 diff --git a/game/images/CG/cho_bj/hj/cum_dodge_angry.webp b/game/images/CG/cho_bj/hj/cum_dodge_angry.webp new file mode 100644 index 00000000..944ac275 --- /dev/null +++ b/game/images/CG/cho_bj/hj/cum_dodge_angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:426cfc8974d99275c4c6af08d7a3a33312e5df1e3fdcfdafa14aa1278ace658f +size 954394 diff --git a/game/images/CG/cho_bj/hj/cum_dodge_annoyed.webp b/game/images/CG/cho_bj/hj/cum_dodge_annoyed.webp new file mode 100644 index 00000000..8f02011f --- /dev/null +++ b/game/images/CG/cho_bj/hj/cum_dodge_annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59da8244264778aff7c4f754ec94eb92f9912b1152a241c0ad5fe947a44624fb +size 954256 diff --git a/game/images/CG/cho_bj/hj/cum_eye.webp b/game/images/CG/cho_bj/hj/cum_eye.webp new file mode 100644 index 00000000..713f64da --- /dev/null +++ b/game/images/CG/cho_bj/hj/cum_eye.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ce8f3f128be7ada79bb78b99ee3ad917827563ee194ec11a0dad049a5a3ffd1 +size 949416 diff --git a/game/images/CG/cho_bj/hj/cum_eye_blush.webp b/game/images/CG/cho_bj/hj/cum_eye_blush.webp new file mode 100644 index 00000000..7a8fe9e9 --- /dev/null +++ b/game/images/CG/cho_bj/hj/cum_eye_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e05efaa42288c5ec1951168075ec14ef2dd5234249c45f2274e1c38edbde00e +size 950256 diff --git a/game/images/CG/cho_bj/hj/cum_tits.webp b/game/images/CG/cho_bj/hj/cum_tits.webp new file mode 100644 index 00000000..65d0eb1e --- /dev/null +++ b/game/images/CG/cho_bj/hj/cum_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0f0ec18d5b32048282e58bcf460795a654af68da73ee50140c721c45246061f +size 945558 diff --git a/game/images/CG/cho_bj/hj/day_overlay.webp b/game/images/CG/cho_bj/hj/day_overlay.webp new file mode 100644 index 00000000..a14d0802 --- /dev/null +++ b/game/images/CG/cho_bj/hj/day_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38ad6a65b310c71a9fa18b2fc957ae6653ef0ca63a4d21e338f650e3b7bdcb0e +size 79694 diff --git a/game/images/CG/cho_bj/hj/dreamy_cum_tits.webp b/game/images/CG/cho_bj/hj/dreamy_cum_tits.webp new file mode 100644 index 00000000..7c953231 --- /dev/null +++ b/game/images/CG/cho_bj/hj/dreamy_cum_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:627daec9e94a92642560d4e6bcb9ad9f21ae6bb0df4767aecdd30cc43719700d +size 949258 diff --git a/game/images/CG/cho_bj/hj/dreamy_up_cum_tits.webp b/game/images/CG/cho_bj/hj/dreamy_up_cum_tits.webp new file mode 100644 index 00000000..e6642c7b --- /dev/null +++ b/game/images/CG/cho_bj/hj/dreamy_up_cum_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e83e9d2c7dfb72f0b54cca2f29a0c24f9ce9b5be8f35d1111bd649a4becfd31d +size 950708 diff --git a/game/images/CG/cho_bj/hj/look_blush_cum_tits.webp b/game/images/CG/cho_bj/hj/look_blush_cum_tits.webp new file mode 100644 index 00000000..313faff8 --- /dev/null +++ b/game/images/CG/cho_bj/hj/look_blush_cum_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89739563ca15ded447ff738897205f821fe5c9ff901c750e3141b3f13addb5e4 +size 946200 diff --git a/game/images/CG/cho_bj/hj/look_cum_tits.webp b/game/images/CG/cho_bj/hj/look_cum_tits.webp new file mode 100644 index 00000000..42313dba --- /dev/null +++ b/game/images/CG/cho_bj/hj/look_cum_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56cf4d596ac3061958827113b3ef8afe83772a639783e0d83ed4fafcb1406929 +size 942930 diff --git a/game/images/CG/cho_bj/hj/loops/mid.webm b/game/images/CG/cho_bj/hj/loops/mid.webm new file mode 100644 index 00000000..97336bd9 --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/mid.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cce7371b77b50e8a66d0c6a829e9d51af66bb7301f8a07bd5085e4438bf22626 +size 478449 diff --git a/game/images/CG/cho_bj/hj/loops/mid.webp b/game/images/CG/cho_bj/hj/loops/mid.webp new file mode 100644 index 00000000..51a3a01e --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e58dcc5d17a5a9e49e46e7dd7bc841f2a681fe00fd8c9e909c2b37db859c79dd +size 380170 diff --git a/game/images/CG/cho_bj/hj/loops/mid_annoyed.webm b/game/images/CG/cho_bj/hj/loops/mid_annoyed.webm new file mode 100644 index 00000000..c468de19 --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/mid_annoyed.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8a7e4abba4c49d8de3e6e92fcc2e59a7d445d72645cfc4031e63740545dfccf +size 479150 diff --git a/game/images/CG/cho_bj/hj/loops/mid_annoyed.webp b/game/images/CG/cho_bj/hj/loops/mid_annoyed.webp new file mode 100644 index 00000000..e69833ff --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/mid_annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e58fd2d20d2313573ed350b4574ae69ada53de28a08973d7287cec1080cf7045 +size 380886 diff --git a/game/images/CG/cho_bj/hj/loops/mid_blush.webm b/game/images/CG/cho_bj/hj/loops/mid_blush.webm new file mode 100644 index 00000000..c0835c7f --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/mid_blush.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:365449081f2a740edef8917ebdf97e871273645bc16828a30e65903138141b43 +size 478864 diff --git a/game/images/CG/cho_bj/hj/loops/mid_blush.webp b/game/images/CG/cho_bj/hj/loops/mid_blush.webp new file mode 100644 index 00000000..1dd3dc02 --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/mid_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a1160254f98204776c3f9003e53aa2e8156ba875d6bd7a9d52c6d4ae5002eb8 +size 380914 diff --git a/game/images/CG/cho_bj/hj/loops/mid_blush_fast.webm b/game/images/CG/cho_bj/hj/loops/mid_blush_fast.webm new file mode 100644 index 00000000..3a6b062c --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/mid_blush_fast.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec93ff4c435f97f024a726078b31e0b9d3d7004da4d46c97d040c22b7b9106fb +size 423713 diff --git a/game/images/CG/cho_bj/hj/loops/topless/mid.webm b/game/images/CG/cho_bj/hj/loops/topless/mid.webm new file mode 100644 index 00000000..042d28a8 --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/topless/mid.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea32d79a093f71c375e94b436162d646e3cfa4fc52f1520106f295f1c6e533a4 +size 473435 diff --git a/game/images/CG/cho_bj/hj/loops/topless/mid.webp b/game/images/CG/cho_bj/hj/loops/topless/mid.webp new file mode 100644 index 00000000..c22152c0 --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/topless/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:339b75f674bf4780d516df1a1271b2971537dcd5c4a23e4f9061264921851258 +size 367082 diff --git a/game/images/CG/cho_bj/hj/loops/topless/mid_smile.webm b/game/images/CG/cho_bj/hj/loops/topless/mid_smile.webm new file mode 100644 index 00000000..09c40027 --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/topless/mid_smile.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9782f5bd8896f731814c2b7caf3cb04065030704096124c9e152d95ddce78fc7 +size 475236 diff --git a/game/images/CG/cho_bj/hj/loops/topless/mid_smile.webp b/game/images/CG/cho_bj/hj/loops/topless/mid_smile.webp new file mode 100644 index 00000000..a394e30b --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/topless/mid_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:417b0f53a0b415fbf4e4d7ebff94053e0923ef5a15e3c00b82fe79de55f88196 +size 367372 diff --git a/game/images/CG/cho_bj/hj/loops/topless/mid_smile_fast.webm b/game/images/CG/cho_bj/hj/loops/topless/mid_smile_fast.webm new file mode 100644 index 00000000..3c5290ae --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/topless/mid_smile_fast.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9fc31626b41a9c342b522f5174760475607b7e252243c7c0bb4921f7ad0d29d3 +size 419673 diff --git a/game/images/CG/cho_bj/hj/loops/topless/up.webm b/game/images/CG/cho_bj/hj/loops/topless/up.webm new file mode 100644 index 00000000..3056a35f --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/topless/up.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c33e25ed2f1e28179d6a1848ebc30641e708f19edd8c2960ffdbc09617781d4 +size 473707 diff --git a/game/images/CG/cho_bj/hj/loops/topless/up.webp b/game/images/CG/cho_bj/hj/loops/topless/up.webp new file mode 100644 index 00000000..31472924 --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/topless/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73b5df60b756bf496c169147c4dba5c5a0043e581d616ac1838b962e83bdd3d2 +size 367694 diff --git a/game/images/CG/cho_bj/hj/loops/topless/up_blush.webm b/game/images/CG/cho_bj/hj/loops/topless/up_blush.webm new file mode 100644 index 00000000..b251e5fe --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/topless/up_blush.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01f2007e60e78c575c7d3dca3dbf6ea5391cc57fcd2f99b8b7208e87f8580fdd +size 473455 diff --git a/game/images/CG/cho_bj/hj/loops/topless/up_blush.webp b/game/images/CG/cho_bj/hj/loops/topless/up_blush.webp new file mode 100644 index 00000000..89b9da54 --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/topless/up_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe88cb74bb5603de7772e2af16ea8db1e678b9933b767206072d067c3d7ca474 +size 368760 diff --git a/game/images/CG/cho_bj/hj/loops/up.webm b/game/images/CG/cho_bj/hj/loops/up.webm new file mode 100644 index 00000000..fc687e64 --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/up.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e8ce3c19dd47c95c78d0896f8d13825f9075829407e0decaeaccc7a2135482d +size 477965 diff --git a/game/images/CG/cho_bj/hj/loops/up.webp b/game/images/CG/cho_bj/hj/loops/up.webp new file mode 100644 index 00000000..0d4d0131 --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57f8e7de7fe0bdc379f7a23acea24792a3a54cb30fa49d614757e560f533224a +size 380558 diff --git a/game/images/CG/cho_bj/hj/loops/up_blush.webm b/game/images/CG/cho_bj/hj/loops/up_blush.webm new file mode 100644 index 00000000..3675b89a --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/up_blush.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7215e7ab415ef8975d67d51862203b3da1324d5f187c24d34ff2f3833be7f6a +size 478670 diff --git a/game/images/CG/cho_bj/hj/loops/up_blush.webp b/game/images/CG/cho_bj/hj/loops/up_blush.webp new file mode 100644 index 00000000..a789a34b --- /dev/null +++ b/game/images/CG/cho_bj/hj/loops/up_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99a020a118f89a5838540a2385cf2d2c16a4a56075f2418626cd95596bfef312 +size 381080 diff --git a/game/images/CG/cho_bj/hj/mid.webp b/game/images/CG/cho_bj/hj/mid.webp new file mode 100644 index 00000000..01fec37a --- /dev/null +++ b/game/images/CG/cho_bj/hj/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58ab103d5d10f81b6dedb2c0d9b69bab33d41adfa4019506e62b934c238528f5 +size 921038 diff --git a/game/images/CG/cho_bj/hj/mid_annoyed.webp b/game/images/CG/cho_bj/hj/mid_annoyed.webp new file mode 100644 index 00000000..3bb9c2d7 --- /dev/null +++ b/game/images/CG/cho_bj/hj/mid_annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d0d02adb6ddb257814159cad859daa83233e76e072090647d93d36e49f12aa7 +size 922590 diff --git a/game/images/CG/cho_bj/hj/mid_blush.webp b/game/images/CG/cho_bj/hj/mid_blush.webp new file mode 100644 index 00000000..272bc9d9 --- /dev/null +++ b/game/images/CG/cho_bj/hj/mid_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08c3736e4ff1aee0be2f5444f622403624f491f95d76a7bb1b16e2b34f9dcefd +size 922920 diff --git a/game/images/CG/cho_bj/hj/mid_worried.webp b/game/images/CG/cho_bj/hj/mid_worried.webp new file mode 100644 index 00000000..2ad79a60 --- /dev/null +++ b/game/images/CG/cho_bj/hj/mid_worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:586fbde34b2607f1e66965f09835b51c0a981fb22490a31ec3e64699166d3150 +size 922706 diff --git a/game/images/CG/cho_bj/hj/night_overlay.webp b/game/images/CG/cho_bj/hj/night_overlay.webp new file mode 100644 index 00000000..3bf46a0f --- /dev/null +++ b/game/images/CG/cho_bj/hj/night_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6265ffbad00858ed7d16c018e38f15d3c574de7963a7b3500a93bf61f93c124f +size 93510 diff --git a/game/images/CG/cho_bj/hj/nonloops/cum_face.webm b/game/images/CG/cho_bj/hj/nonloops/cum_face.webm new file mode 100644 index 00000000..a731ff63 --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/cum_face.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b97d197008165ff68f9881591c8816a18d49e3890eb7857b25721b9fc086448a +size 454964 diff --git a/game/images/CG/cho_bj/hj/nonloops/cum_face.webp b/game/images/CG/cho_bj/hj/nonloops/cum_face.webp new file mode 100644 index 00000000..e6f4360f --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/cum_face.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:769aa9c23ce46ed412847d08a542188361a27b3a0a34226b4ac73198935dcf18 +size 378844 diff --git a/game/images/CG/cho_bj/hj/nonloops/cum_face_end.webp b/game/images/CG/cho_bj/hj/nonloops/cum_face_end.webp new file mode 100644 index 00000000..3fdf2aa4 --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/cum_face_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afda46526f1f101765db9f0f8c0cb9c71c5bcf04feb845390e0b84553c54da2f +size 389820 diff --git a/game/images/CG/cho_bj/hj/nonloops/cum_face_tits.webm b/game/images/CG/cho_bj/hj/nonloops/cum_face_tits.webm new file mode 100644 index 00000000..88602fc7 --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/cum_face_tits.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd2a917d6fc011f98e158edb7e0c66d96ab9e70de99085ae5d6c33708d57f59f +size 843307 diff --git a/game/images/CG/cho_bj/hj/nonloops/cum_face_tits.webp b/game/images/CG/cho_bj/hj/nonloops/cum_face_tits.webp new file mode 100644 index 00000000..e6f4360f --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/cum_face_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:769aa9c23ce46ed412847d08a542188361a27b3a0a34226b4ac73198935dcf18 +size 378844 diff --git a/game/images/CG/cho_bj/hj/nonloops/cum_face_tits_end.webp b/game/images/CG/cho_bj/hj/nonloops/cum_face_tits_end.webp new file mode 100644 index 00000000..d6e4121c --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/cum_face_tits_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21311c104ab716937fbb7e2984d3b90548604b10cc6c2a9fb18756c84c671980 +size 391996 diff --git a/game/images/CG/cho_bj/hj/nonloops/cum_tits.webm b/game/images/CG/cho_bj/hj/nonloops/cum_tits.webm new file mode 100644 index 00000000..60cd871a --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/cum_tits.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a79bc239654d2dbd77ecb01d2c9b5f62c4e4717356ad7abfe08099ed4c0fb2a7 +size 511021 diff --git a/game/images/CG/cho_bj/hj/nonloops/cum_tits.webp b/game/images/CG/cho_bj/hj/nonloops/cum_tits.webp new file mode 100644 index 00000000..29fb8e2f --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/cum_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:826b12f443af741537c4acec913a979c7b9cb57abcd84932255a4fc985c2151c +size 378654 diff --git a/game/images/CG/cho_bj/hj/nonloops/cum_tits_end.webp b/game/images/CG/cho_bj/hj/nonloops/cum_tits_end.webp new file mode 100644 index 00000000..c905a708 --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/cum_tits_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a822f3a89baf983bac2e1252523b2f8c7c53f896fba2f2329dd7238c2fd25ad +size 388394 diff --git a/game/images/CG/cho_bj/hj/nonloops/topless/cum_face_tits.webm b/game/images/CG/cho_bj/hj/nonloops/topless/cum_face_tits.webm new file mode 100644 index 00000000..4acf6c11 --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/topless/cum_face_tits.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d08acfe9fda60afcca67a2296af7fd3874a96499ced47fd3fff67ddfff092705 +size 805616 diff --git a/game/images/CG/cho_bj/hj/nonloops/topless/cum_face_tits.webp b/game/images/CG/cho_bj/hj/nonloops/topless/cum_face_tits.webp new file mode 100644 index 00000000..dbbe76b2 --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/topless/cum_face_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7b9a71cd0564a68b06ad156b4b13a4a6e2cc6028af94269e4cbe5256acbaab3 +size 432042 diff --git a/game/images/CG/cho_bj/hj/nonloops/topless/cum_face_tits_end.webp b/game/images/CG/cho_bj/hj/nonloops/topless/cum_face_tits_end.webp new file mode 100644 index 00000000..50ab9d6f --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/topless/cum_face_tits_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63ee13e8b0fc0dbfa2d81e2368f0388289ca87e6ed088f3eef7afbf971a6e0cf +size 450168 diff --git a/game/images/CG/cho_bj/hj/nonloops/topless/cum_tits.webm b/game/images/CG/cho_bj/hj/nonloops/topless/cum_tits.webm new file mode 100644 index 00000000..f9a11986 --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/topless/cum_tits.webm @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc0f601f21c5a53997fce2e0057ca028b13804fc344351d7be764cd39fb63c22 +size 506163 diff --git a/game/images/CG/cho_bj/hj/nonloops/topless/cum_tits.webp b/game/images/CG/cho_bj/hj/nonloops/topless/cum_tits.webp new file mode 100644 index 00000000..ddd57b34 --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/topless/cum_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1841b8fc191d6b28a41a6ef79d46d0f6d6c503733a02a8dff0fbdac89a472804 +size 431850 diff --git a/game/images/CG/cho_bj/hj/nonloops/topless/cum_tits_end.webp b/game/images/CG/cho_bj/hj/nonloops/topless/cum_tits_end.webp new file mode 100644 index 00000000..6dbf951a --- /dev/null +++ b/game/images/CG/cho_bj/hj/nonloops/topless/cum_tits_end.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd43a0ad218411d9ca961fdf80300dd0975e7b718ba74c54d648b446082b77c7 +size 446864 diff --git a/game/images/CG/cho_bj/hj/topless_away_blush.webp b/game/images/CG/cho_bj/hj/topless_away_blush.webp new file mode 100644 index 00000000..19e94af7 --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_away_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cead91582348a35e86fba741487762d24436a27663c0c55bd9a75eb877e479cc +size 889430 diff --git a/game/images/CG/cho_bj/hj/topless_away_pout.webp b/game/images/CG/cho_bj/hj/topless_away_pout.webp new file mode 100644 index 00000000..7c322750 --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_away_pout.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:439d862e7cf416627e206d61ecbb9a60b311401eec0faa9ecbcf98a057800bb7 +size 888920 diff --git a/game/images/CG/cho_bj/hj/topless_cough.webp b/game/images/CG/cho_bj/hj/topless_cough.webp new file mode 100644 index 00000000..c6c672b5 --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_cough.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40b0b0be3d1f3a1459f18a753f83c22504d17027561b1e78d21dd1caab986695 +size 887846 diff --git a/game/images/CG/cho_bj/hj/topless_cum_tits.webp b/game/images/CG/cho_bj/hj/topless_cum_tits.webp new file mode 100644 index 00000000..fb42a888 --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_cum_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c89c519091cf140119175150e3fe74b44bc26b0e654c304e7e09db16e300f9db +size 922548 diff --git a/game/images/CG/cho_bj/hj/topless_dreamy_cum_tits.webp b/game/images/CG/cho_bj/hj/topless_dreamy_cum_tits.webp new file mode 100644 index 00000000..a9ea4afb --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_dreamy_cum_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a17442d9f93653e5f3f32a5b381bb2aaf51dd6c3c258220ab7e8a9e99b604138 +size 927366 diff --git a/game/images/CG/cho_bj/hj/topless_dreamy_up_cum_tits.webp b/game/images/CG/cho_bj/hj/topless_dreamy_up_cum_tits.webp new file mode 100644 index 00000000..6a3e799d --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_dreamy_up_cum_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8aa108c4972104a93141fad69b467f87d0f43c97a60bb990de06b6441da6fd91 +size 928288 diff --git a/game/images/CG/cho_bj/hj/topless_look_blush_cum_tits.webp b/game/images/CG/cho_bj/hj/topless_look_blush_cum_tits.webp new file mode 100644 index 00000000..3fccc738 --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_look_blush_cum_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e635e8e5b14fc05d38d11b7fc2ced1756ac1a156eef63704b479175d9633fc9 +size 924570 diff --git a/game/images/CG/cho_bj/hj/topless_look_cum_tits.webp b/game/images/CG/cho_bj/hj/topless_look_cum_tits.webp new file mode 100644 index 00000000..8ffc15aa --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_look_cum_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3410ed8db5918e2dbb60c4482657771b78fb65c5703ea16bd77952985902429 +size 921674 diff --git a/game/images/CG/cho_bj/hj/topless_mid.webp b/game/images/CG/cho_bj/hj/topless_mid.webp new file mode 100644 index 00000000..90a7ebfd --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c329e65d49722a6241248125dd77c5455681114e1f47859990d218516914d780 +size 888074 diff --git a/game/images/CG/cho_bj/hj/topless_mid_angry.webp b/game/images/CG/cho_bj/hj/topless_mid_angry.webp new file mode 100644 index 00000000..7705a63a --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_mid_angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a93fc32498395f2871d26fe75f3d0c5606a451e8a888417b96933bc3695a3cdc +size 891312 diff --git a/game/images/CG/cho_bj/hj/topless_mid_blush.webp b/game/images/CG/cho_bj/hj/topless_mid_blush.webp new file mode 100644 index 00000000..916aaf88 --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_mid_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9395763e64c5d5b20bec617118064cfbf6d924a04db9da04e628feb64cedf374 +size 891138 diff --git a/game/images/CG/cho_bj/hj/topless_mid_dreamy.webp b/game/images/CG/cho_bj/hj/topless_mid_dreamy.webp new file mode 100644 index 00000000..0dab076a --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_mid_dreamy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8517f7d8b325676ae76820562a1c3e1d7333ae8e8c9f8808e115bdcc42c7b1a1 +size 891050 diff --git a/game/images/CG/cho_bj/hj/topless_up.webp b/game/images/CG/cho_bj/hj/topless_up.webp new file mode 100644 index 00000000..a8c311a8 --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0949d2a63a34a7e51cd275da6bedc5b87f6a2b222a38fdcd46a70639032701ce +size 890096 diff --git a/game/images/CG/cho_bj/hj/topless_up_blush.webp b/game/images/CG/cho_bj/hj/topless_up_blush.webp new file mode 100644 index 00000000..538f811a --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_up_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:021fd7a98aaf9391fce5e49f863ffb2f93bc71c11db21bf493c20958872c5c75 +size 892122 diff --git a/game/images/CG/cho_bj/hj/topless_up_blush2.webp b/game/images/CG/cho_bj/hj/topless_up_blush2.webp new file mode 100644 index 00000000..c0b9ebe9 --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_up_blush2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d3dbf7e58c228b12052ad28c09cdcc63335548fc55bedfd0caa012c55242219 +size 892238 diff --git a/game/images/CG/cho_bj/hj/topless_up_cringe.webp b/game/images/CG/cho_bj/hj/topless_up_cringe.webp new file mode 100644 index 00000000..89d03147 --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_up_cringe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d722c9b51612d04f1685286d09861ab893a2f0cf92a690d02dc035b84e00ff8 +size 892006 diff --git a/game/images/CG/cho_bj/hj/topless_up_wide.webp b/game/images/CG/cho_bj/hj/topless_up_wide.webp new file mode 100644 index 00000000..53d3f716 --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_up_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e74df1b41e0ca44d04a3fde994cc2ad6321fc794254ac6657ad969d189d96bb +size 890086 diff --git a/game/images/CG/cho_bj/hj/topless_up_worried.webp b/game/images/CG/cho_bj/hj/topless_up_worried.webp new file mode 100644 index 00000000..e2d05d55 --- /dev/null +++ b/game/images/CG/cho_bj/hj/topless_up_worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e362fe97070c93803abe3fe76d9c8875c67b0d7f5164e72e74283289c023f16 +size 890608 diff --git a/game/images/CG/cho_bj/hj/up.webp b/game/images/CG/cho_bj/hj/up.webp new file mode 100644 index 00000000..621c957b --- /dev/null +++ b/game/images/CG/cho_bj/hj/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7a6e91f8ac516b9de0e9495ddd709a0aa89b0138fdfb4cac70511cf4a19f438 +size 921910 diff --git a/game/images/CG/cho_bj/hj/up_annoyed.webp b/game/images/CG/cho_bj/hj/up_annoyed.webp new file mode 100644 index 00000000..210c54cb --- /dev/null +++ b/game/images/CG/cho_bj/hj/up_annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64f024de6a12bfb7fa9155a2b574c3e17a161f0a9e1eaf6f222065851c21028c +size 923518 diff --git a/game/images/CG/cho_bj/hj/up_blush.webp b/game/images/CG/cho_bj/hj/up_blush.webp new file mode 100644 index 00000000..da18eeed --- /dev/null +++ b/game/images/CG/cho_bj/hj/up_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6db55a3af724297eed7788452931a90ce523b79e1911ebfdb82ac5f687b1b45 +size 923646 diff --git a/game/images/CG/cho_bj/hj/up_wide.webp b/game/images/CG/cho_bj/hj/up_wide.webp new file mode 100644 index 00000000..c472baee --- /dev/null +++ b/game/images/CG/cho_bj/hj/up_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:beff5b82d1bb4a71406ef22d37a424b195d27faab573aeee5aacf11b302a9082 +size 921330 diff --git a/game/images/CG/cho_bj/hj/up_worried.webp b/game/images/CG/cho_bj/hj/up_worried.webp new file mode 100644 index 00000000..78067207 --- /dev/null +++ b/game/images/CG/cho_bj/hj/up_worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7514286e8de8b7412887cfd91f27ba229782d82bdb804a2a825c9e34c244595 +size 922024 diff --git a/game/images/CG/cho_bj/kneel/cum_dodge.webp b/game/images/CG/cho_bj/kneel/cum_dodge.webp new file mode 100644 index 00000000..5fbb85ef --- /dev/null +++ b/game/images/CG/cho_bj/kneel/cum_dodge.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16b464a74e4df3c666ec4c580077c03a48c9f29be3ad3a70081b8140e2d3aef4 +size 941758 diff --git a/game/images/CG/cho_bj/kneel/cum_dodge_annoyed.webp b/game/images/CG/cho_bj/kneel/cum_dodge_annoyed.webp new file mode 100644 index 00000000..bafb9af5 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/cum_dodge_annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27b079fa09751156400acee9764ccb530dd34f53c7c9f1867bf5f95f7802c050 +size 944048 diff --git a/game/images/CG/cho_bj/kneel/cum_dodge_blush.webp b/game/images/CG/cho_bj/kneel/cum_dodge_blush.webp new file mode 100644 index 00000000..0f82b967 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/cum_dodge_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a0b5adfedae12e6a39a108f5730be5a251ab774ffcbfef7c65db94b72d998b9 +size 948440 diff --git a/game/images/CG/cho_bj/kneel/cum_dodge_surprised.webp b/game/images/CG/cho_bj/kneel/cum_dodge_surprised.webp new file mode 100644 index 00000000..8b1fae8b --- /dev/null +++ b/game/images/CG/cho_bj/kneel/cum_dodge_surprised.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba80064ca363643271890464da5d539b4415bfabbd77fa842ed7f4a52c7ff57d +size 946934 diff --git a/game/images/CG/cho_bj/kneel/cum_eye.webp b/game/images/CG/cho_bj/kneel/cum_eye.webp new file mode 100644 index 00000000..188e198a --- /dev/null +++ b/game/images/CG/cho_bj/kneel/cum_eye.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e5448d4d5434e1deb643c3a165b28d80fe153a41cb7a2bfc748f9fd83c10fcb +size 938770 diff --git a/game/images/CG/cho_bj/kneel/cum_face_tits.webp b/game/images/CG/cho_bj/kneel/cum_face_tits.webp new file mode 100644 index 00000000..75954eeb --- /dev/null +++ b/game/images/CG/cho_bj/kneel/cum_face_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10df72c2a2457e72ed43ae9dbc614b1e9748291c9762a253cd1a64583d7953ea +size 954196 diff --git a/game/images/CG/cho_bj/kneel/cum_face_tits_glance.webp b/game/images/CG/cho_bj/kneel/cum_face_tits_glance.webp new file mode 100644 index 00000000..b76e40fa --- /dev/null +++ b/game/images/CG/cho_bj/kneel/cum_face_tits_glance.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec33ce6c4d59b8f0d7ed52b6720f18319bf63e267f656b7bc8d384d1343e8f7e +size 954734 diff --git a/game/images/CG/cho_bj/kneel/day_overlay.webp b/game/images/CG/cho_bj/kneel/day_overlay.webp new file mode 100644 index 00000000..a14d0802 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/day_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38ad6a65b310c71a9fa18b2fc957ae6653ef0ca63a4d21e338f650e3b7bdcb0e +size 79694 diff --git a/game/images/CG/cho_bj/kneel/mid.webp b/game/images/CG/cho_bj/kneel/mid.webp new file mode 100644 index 00000000..53c6f3b0 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5987e2cc5d49f163bedc173e08b9e50ac9e503ca13896a3358fc47926ac5364 +size 910238 diff --git a/game/images/CG/cho_bj/kneel/mid_annoyed.webp b/game/images/CG/cho_bj/kneel/mid_annoyed.webp new file mode 100644 index 00000000..8afa5114 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/mid_annoyed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc9ce3f04c45de5ec3e2e39deb2b0b4a79861b004da80c3bf7403bfc9c0021e5 +size 912620 diff --git a/game/images/CG/cho_bj/kneel/mid_blush.webp b/game/images/CG/cho_bj/kneel/mid_blush.webp new file mode 100644 index 00000000..db04d9a5 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/mid_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e3e4d22b445dccbd4acd6ed52113b4fff8a78057df7547c7271b4ca77cb6aab +size 911456 diff --git a/game/images/CG/cho_bj/kneel/mid_dreamy.webp b/game/images/CG/cho_bj/kneel/mid_dreamy.webp new file mode 100644 index 00000000..5dd07b17 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/mid_dreamy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d25777e45ca3095df746d7f7c5434f6a632f7d28a554dce8b06ec47343480816 +size 911728 diff --git a/game/images/CG/cho_bj/kneel/mid_shock.webp b/game/images/CG/cho_bj/kneel/mid_shock.webp new file mode 100644 index 00000000..8ecf5e9c --- /dev/null +++ b/game/images/CG/cho_bj/kneel/mid_shock.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3a939734202e1ee2773e7e63d24b78909323833719597ae0194bef5845ed277 +size 910744 diff --git a/game/images/CG/cho_bj/kneel/mid_surprised.webp b/game/images/CG/cho_bj/kneel/mid_surprised.webp new file mode 100644 index 00000000..1f39afe9 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/mid_surprised.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2de95fb32eef8da1a2c8b3f49a0ac1cce5654f611ac505946a8a2619dd052ed +size 909550 diff --git a/game/images/CG/cho_bj/kneel/mid_surprised_blush.webp b/game/images/CG/cho_bj/kneel/mid_surprised_blush.webp new file mode 100644 index 00000000..bcb0f58b --- /dev/null +++ b/game/images/CG/cho_bj/kneel/mid_surprised_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c96f0268b1c5a512e99292079e48177ff9f5f0c8dcdfd5ab5d36d5ddc7a4610 +size 910884 diff --git a/game/images/CG/cho_bj/kneel/mid_worried.webp b/game/images/CG/cho_bj/kneel/mid_worried.webp new file mode 100644 index 00000000..39203f5e --- /dev/null +++ b/game/images/CG/cho_bj/kneel/mid_worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5afe738ce35680129e4ba3247729a137a4cdd253a6cdfb2692ec50e09c63e609 +size 909784 diff --git a/game/images/CG/cho_bj/kneel/night_overlay.webp b/game/images/CG/cho_bj/kneel/night_overlay.webp new file mode 100644 index 00000000..3bf46a0f --- /dev/null +++ b/game/images/CG/cho_bj/kneel/night_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6265ffbad00858ed7d16c018e38f15d3c574de7963a7b3500a93bf61f93c124f +size 93510 diff --git a/game/images/CG/cho_bj/kneel/topless_away_blush_cum_mouth.webp b/game/images/CG/cho_bj/kneel/topless_away_blush_cum_mouth.webp new file mode 100644 index 00000000..adf1bcff --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_away_blush_cum_mouth.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d43601c4b66e742a581349ba54894d7897b9c452c46bea99d5caeb024a943cf +size 898798 diff --git a/game/images/CG/cho_bj/kneel/topless_away_cum_swallow.webp b/game/images/CG/cho_bj/kneel/topless_away_cum_swallow.webp new file mode 100644 index 00000000..399f5ce6 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_away_cum_swallow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a821c7ca1a5cbf42a2833cdf055102a81d333d22f145311457023183b6d1af1a +size 886064 diff --git a/game/images/CG/cho_bj/kneel/topless_closed_angry_cum_swallow.webp b/game/images/CG/cho_bj/kneel/topless_closed_angry_cum_swallow.webp new file mode 100644 index 00000000..267b7306 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_closed_angry_cum_swallow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e9f330c6baa6831b55d24b50a24313653e0a98b553965b128d6dd7e57d500b6 +size 891402 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_angry_cum_face_tits.webp b/game/images/CG/cho_bj/kneel/topless_mid_angry_cum_face_tits.webp new file mode 100644 index 00000000..175fc339 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_angry_cum_face_tits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62c05f0dc60265f51466c1f2e1f1b83aadebbd35148a0cb73ba6c15db42b0c07 +size 931374 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_angry_cum_mouth.webp b/game/images/CG/cho_bj/kneel/topless_mid_angry_cum_mouth.webp new file mode 100644 index 00000000..2920ee96 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_angry_cum_mouth.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2c2ea610ea540ce3f8a6296dc804144fbe598a2ed2e7c8db34078c859cfc426 +size 898148 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_angry_cum_swallow.webp b/game/images/CG/cho_bj/kneel/topless_mid_angry_cum_swallow.webp new file mode 100644 index 00000000..51feb313 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_angry_cum_swallow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c237f4233295bfecedc5bddc7827533b81798036b7ed081b1eccefb9eaec0dbf +size 890606 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_cough_cum_swallow.webp b/game/images/CG/cho_bj/kneel/topless_mid_cough_cum_swallow.webp new file mode 100644 index 00000000..747b288a --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_cough_cum_swallow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abf21adf21c4852cebd0a2665bf39480cf023c9ab5e81bbab190cc47d246cc95 +size 887242 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_cum_mouth.webp b/game/images/CG/cho_bj/kneel/topless_mid_cum_mouth.webp new file mode 100644 index 00000000..8ab85a7d --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_cum_mouth.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c51e1f4faef47d30cfbb795a3477aa5c442645f5ba477f6c2e3a6fd56c042d9f +size 898198 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_cum_swallow.webp b/game/images/CG/cho_bj/kneel/topless_mid_cum_swallow.webp new file mode 100644 index 00000000..56084544 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_cum_swallow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71a56cfa0447a1c6e7195f6e143e44aaa0ef0d0b4e9475bb8303fd26cda2b23a +size 889518 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_dreamy.webp b/game/images/CG/cho_bj/kneel/topless_mid_dreamy.webp new file mode 100644 index 00000000..8f163a7e --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_dreamy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e8b631589bb6419b096d8a9048e181892f8c9997498297090008722a6938fc7 +size 885586 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_full.webp b/game/images/CG/cho_bj/kneel/topless_mid_full.webp new file mode 100644 index 00000000..5296d835 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9114ace8eb9218fdfd10ac7da47b5df3e2182a347a2dd94096acd1a623e7220e +size 900050 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_full_angry.webp b/game/images/CG/cho_bj/kneel/topless_mid_full_angry.webp new file mode 100644 index 00000000..218efbda --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_full_angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d48f67a8ee38abde53cb37314c06c0c80e9202a4ea8f0575f8aa536e6ce6380 +size 899292 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_full_swallowed.webp b/game/images/CG/cho_bj/kneel/topless_mid_full_swallowed.webp new file mode 100644 index 00000000..2c209f2a --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_full_swallowed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7ac0dfdcbd2284f43ee38bf9f0dbac408ac8a6b875f021c68c5c7b4380611a5 +size 896978 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_full_swallowed2.webp b/game/images/CG/cho_bj/kneel/topless_mid_full_swallowed2.webp new file mode 100644 index 00000000..b83d6db2 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_full_swallowed2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc4d0ef0d54f86dc50d41b13d9b1e505cafc0faf662068c7af27210f2ea464a0 +size 895490 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_full_worried.webp b/game/images/CG/cho_bj/kneel/topless_mid_full_worried.webp new file mode 100644 index 00000000..ef5ca934 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_full_worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea1473721514ad56cebcec0cf37084c364f6bff954cccf6cb7b03b472f517ab5 +size 900166 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_full_worried2.webp b/game/images/CG/cho_bj/kneel/topless_mid_full_worried2.webp new file mode 100644 index 00000000..3fa7d6b8 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_full_worried2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:231dc84e205624a2ee148ecfdf96a824bc05785b807f55245c142d6f6bbba515 +size 898390 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_surprised_cum_mouth.webp b/game/images/CG/cho_bj/kneel/topless_mid_surprised_cum_mouth.webp new file mode 100644 index 00000000..77f30e4e --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_surprised_cum_mouth.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63e8cdc403b847989ad72f0c936ea12134f8ed6adf007f40d83f631ecabb1645 +size 897572 diff --git a/game/images/CG/cho_bj/kneel/topless_mid_surprised_cum_swallow.webp b/game/images/CG/cho_bj/kneel/topless_mid_surprised_cum_swallow.webp new file mode 100644 index 00000000..b04cbf30 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_mid_surprised_cum_swallow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de547be305ef2eb3f7d40285053818238be347dac7bd168e28d51cbd7664a540 +size 890106 diff --git a/game/images/CG/cho_bj/kneel/topless_up_angry2_cum_swallow.webp b/game/images/CG/cho_bj/kneel/topless_up_angry2_cum_swallow.webp new file mode 100644 index 00000000..04b6aa85 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_up_angry2_cum_swallow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec520fadb6acc31cf87e011dc4e02ffb23fb12556189de9aa513415f3f6cd541 +size 890862 diff --git a/game/images/CG/cho_bj/kneel/topless_up_angry_cum_swallow.webp b/game/images/CG/cho_bj/kneel/topless_up_angry_cum_swallow.webp new file mode 100644 index 00000000..b1a39930 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_up_angry_cum_swallow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f66e8f8cd09ea5076bef7a16d800f6074ebf678818b875ab717d26b79ebc48a +size 890066 diff --git a/game/images/CG/cho_bj/kneel/topless_up_cum_mouth.webp b/game/images/CG/cho_bj/kneel/topless_up_cum_mouth.webp new file mode 100644 index 00000000..432c9fb9 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_up_cum_mouth.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:936039039e9f94193fa2e8f768e7c05d3dee2c3cf41ae63121bccf28a8daafd2 +size 898230 diff --git a/game/images/CG/cho_bj/kneel/topless_up_cum_swallow.webp b/game/images/CG/cho_bj/kneel/topless_up_cum_swallow.webp new file mode 100644 index 00000000..eff17621 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/topless_up_cum_swallow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f187df4c6bea9e83222357ee7b13ec82ffaaca7f58d04703a0f678efc2f45abe +size 889654 diff --git a/game/images/CG/cho_bj/kneel/up.webp b/game/images/CG/cho_bj/kneel/up.webp new file mode 100644 index 00000000..4d88e5cd --- /dev/null +++ b/game/images/CG/cho_bj/kneel/up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3763c7de500cd4abe3a222daa46fc3ad8de0d719c1a9edf92ae468267c4453a +size 910114 diff --git a/game/images/CG/cho_bj/kneel/up_neutral.webp b/game/images/CG/cho_bj/kneel/up_neutral.webp new file mode 100644 index 00000000..965e94c4 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/up_neutral.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d070a2e15bf62bf5cc4bc1c5cab2c2f92a1ac4d3d311430427a714ee19d959c5 +size 910294 diff --git a/game/images/CG/cho_bj/kneel/up_shock.webp b/game/images/CG/cho_bj/kneel/up_shock.webp new file mode 100644 index 00000000..2d5fc947 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/up_shock.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9059b39ad85b5d7303fd23bdb4dd8d22f379be550a06c170c7427390b37b40b +size 910762 diff --git a/game/images/CG/cho_bj/kneel/up_smile.webp b/game/images/CG/cho_bj/kneel/up_smile.webp new file mode 100644 index 00000000..ee386b4f --- /dev/null +++ b/game/images/CG/cho_bj/kneel/up_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7adadb134f69b7b11ed3a57e73aa9793a51815fab8ffe0bfd3f84d034f83aa0 +size 911556 diff --git a/game/images/CG/cho_bj/kneel/up_worried.webp b/game/images/CG/cho_bj/kneel/up_worried.webp new file mode 100644 index 00000000..43408a85 --- /dev/null +++ b/game/images/CG/cho_bj/kneel/up_worried.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56e33f6e0d230838f8e176da69ffc2e1b328a6c88c0108bd29b067e2f406d9a1 +size 909950 diff --git a/game/images/CG/cho_bj_desk/bj_in.webp b/game/images/CG/cho_bj_desk/bj_in.webp new file mode 100644 index 00000000..02ee59cf --- /dev/null +++ b/game/images/CG/cho_bj_desk/bj_in.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f6cd152fc1005ec57877fb2319394cab01d06a851afd4a111eb4519159fb2d4 +size 905116 diff --git a/game/images/CG/cho_bj_desk/bj_out.webp b/game/images/CG/cho_bj_desk/bj_out.webp new file mode 100644 index 00000000..cd7655b7 --- /dev/null +++ b/game/images/CG/cho_bj_desk/bj_out.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd3c724032a5322b2fa3bff642e0d6b7957e2be51737bbb968d3a9c10d8d9ef4 +size 925382 diff --git a/game/images/CG/cho_bj_desk/bj_out_no_spit.webp b/game/images/CG/cho_bj_desk/bj_out_no_spit.webp new file mode 100644 index 00000000..9c211dd7 --- /dev/null +++ b/game/images/CG/cho_bj_desk/bj_out_no_spit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6d4cb5fa6a72d3e8df2a5f2b589e0d7e681327a30fdda45f8aa1aeff94afce7 +size 950594 diff --git a/game/images/CG/cho_bj_desk/hj_down.webp b/game/images/CG/cho_bj_desk/hj_down.webp new file mode 100644 index 00000000..80d6194f --- /dev/null +++ b/game/images/CG/cho_bj_desk/hj_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72cd3a2ae0696057bd55009677068cf55abaa1df8bc86322f12533c3a099bf3d +size 931026 diff --git a/game/images/CG/cho_bj_desk/hj_up.webp b/game/images/CG/cho_bj_desk/hj_up.webp new file mode 100644 index 00000000..ede68347 --- /dev/null +++ b/game/images/CG/cho_bj_desk/hj_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99b72fa2f4ef4a16bb54a59853e8244765e19c64984104cfd10ca63645b46a37 +size 931418 diff --git a/game/images/CG/cho_bj_desk/idle.webp b/game/images/CG/cho_bj_desk/idle.webp new file mode 100644 index 00000000..9e74d40d --- /dev/null +++ b/game/images/CG/cho_bj_desk/idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57ae6baddf4f1bc3062a53d9bffae92d043faafaf4dfd62dbb2b3278a4b87283 +size 803470 diff --git a/game/images/CG/cho_bj_desk/mask.webp b/game/images/CG/cho_bj_desk/mask.webp new file mode 100644 index 00000000..54f1a5f5 --- /dev/null +++ b/game/images/CG/cho_bj_desk/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18ee568c0baa4f97eb53912d9f88a8752c368bcbee178f00941641e4d2b8cd71 +size 345412 diff --git a/game/images/CG/cho_bj_desk/mask_idle.webp b/game/images/CG/cho_bj_desk/mask_idle.webp new file mode 100644 index 00000000..20c7e6f2 --- /dev/null +++ b/game/images/CG/cho_bj_desk/mask_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34a64a61d86b21ff00e8a3e95ecee7e08deff0478cbad41ed7222b85c9da2eb9 +size 328614 diff --git a/game/images/CG/cho_bj_desk/overlay.webp b/game/images/CG/cho_bj_desk/overlay.webp new file mode 100644 index 00000000..89b38031 --- /dev/null +++ b/game/images/CG/cho_bj_desk/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70b81c70b4b59c0067b5f50fe349d31e53ab9051a21d9d8e34e838b57678099a +size 258324 diff --git a/game/images/CG/cho_bj_desk/overlay_idle.webp b/game/images/CG/cho_bj_desk/overlay_idle.webp new file mode 100644 index 00000000..28a3e2f2 --- /dev/null +++ b/game/images/CG/cho_bj_desk/overlay_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ba8f45b9b26fa312471774f32b540d7d5f8653e4990f6fad588392d4cb4327a +size 217518 diff --git a/game/images/CG/cho_hufflepuff/background.webp b/game/images/CG/cho_hufflepuff/background.webp new file mode 100644 index 00000000..35c1d315 --- /dev/null +++ b/game/images/CG/cho_hufflepuff/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5134483d6f3d086a818911e5bbf934b54694bf5deb5cc4070bdea36d1a336a20 +size 2140724 diff --git a/game/images/CG/cho_hufflepuff/cho.webp b/game/images/CG/cho_hufflepuff/cho.webp new file mode 100644 index 00000000..dad66517 --- /dev/null +++ b/game/images/CG/cho_hufflepuff/cho.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:765f790a68cbf6e8a6097f0ca6910b93a003f4f5e0c27fd45684afac54e06ba5 +size 667410 diff --git a/game/images/CG/cho_hufflepuff/clouds.webp b/game/images/CG/cho_hufflepuff/clouds.webp new file mode 100644 index 00000000..2b1fabac --- /dev/null +++ b/game/images/CG/cho_hufflepuff/clouds.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b33b078f28ec9f88106fab05aaeab3ba653543a65ddd9b841454ae39c43c0c6e +size 126978 diff --git a/game/images/CG/cho_quidditch/background.webp b/game/images/CG/cho_quidditch/background.webp new file mode 100644 index 00000000..9a544d02 --- /dev/null +++ b/game/images/CG/cho_quidditch/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eaf67e4296f420eb86c16231ffc654a99aeaaf16481c3c56feaafdf0a4ed7d45 +size 2370796 diff --git a/game/images/CG/cho_quidditch/overlay.webp b/game/images/CG/cho_quidditch/overlay.webp new file mode 100644 index 00000000..63ae9d24 --- /dev/null +++ b/game/images/CG/cho_quidditch/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04fb521b0d92dfe309f5a3cfaa3d80f9b1499b14c301a5f16a05c1e69b0ed2d9 +size 799996 diff --git a/game/images/CG/cho_quidditch/pose1/body.webp b/game/images/CG/cho_quidditch/pose1/body.webp new file mode 100644 index 00000000..34c76952 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose1/body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aaa2adc48133c4f8fc9ca4f7032325e82449e41f1b8299f3d016285eff637eb9 +size 309914 diff --git a/game/images/CG/cho_quidditch/pose1/eyebrows_1.webp b/game/images/CG/cho_quidditch/pose1/eyebrows_1.webp new file mode 100644 index 00000000..689fbfd0 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose1/eyebrows_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:588b5200586bd1981cd9bc23de1ee0e40711dd39780e63acb9de28f8d8ed72de +size 4074 diff --git a/game/images/CG/cho_quidditch/pose1/eyebrows_2.webp b/game/images/CG/cho_quidditch/pose1/eyebrows_2.webp new file mode 100644 index 00000000..58831b40 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose1/eyebrows_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa065e6daf92b483e3be7e6014b2ffcbcbf376e5310d0800e7996a5ba2b77359 +size 4644 diff --git a/game/images/CG/cho_quidditch/pose1/eyebrows_3.webp b/game/images/CG/cho_quidditch/pose1/eyebrows_3.webp new file mode 100644 index 00000000..bda021bc --- /dev/null +++ b/game/images/CG/cho_quidditch/pose1/eyebrows_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0756f23e80820bd193d32555f95e06b31510dff5e9156b7dd83d0d565f1fe0d5 +size 4044 diff --git a/game/images/CG/cho_quidditch/pose1/eyes_1.webp b/game/images/CG/cho_quidditch/pose1/eyes_1.webp new file mode 100644 index 00000000..0314cce7 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose1/eyes_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7e465fad7da7a3f97f8762b1dde7f57e2136c50321e575735597783f27bf71f +size 5964 diff --git a/game/images/CG/cho_quidditch/pose1/eyes_2.webp b/game/images/CG/cho_quidditch/pose1/eyes_2.webp new file mode 100644 index 00000000..15e29d64 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose1/eyes_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06b95d9cccb299ae85ee4fe10cb99b0f37e6e4fb64afcfc3751f3bab446af534 +size 6412 diff --git a/game/images/CG/cho_quidditch/pose1/eyes_3.webp b/game/images/CG/cho_quidditch/pose1/eyes_3.webp new file mode 100644 index 00000000..f4f59c79 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose1/eyes_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e398665814d605ede4a6ed9ed7f0ef74565ef41341b1f764450850bd855273f +size 6070 diff --git a/game/images/CG/cho_quidditch/pose1/head_1.webp b/game/images/CG/cho_quidditch/pose1/head_1.webp new file mode 100644 index 00000000..071ea13a --- /dev/null +++ b/game/images/CG/cho_quidditch/pose1/head_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06e6e772a1c277beb021ef10321df3d2f8b0446d1e949660102d944f877307e5 +size 98676 diff --git a/game/images/CG/cho_quidditch/pose1/head_2.webp b/game/images/CG/cho_quidditch/pose1/head_2.webp new file mode 100644 index 00000000..9a836ff8 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose1/head_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:976d8ac7e885a0aff0209d47c2f1ebb6bc5ebf37b7793543635662714fe03a19 +size 99236 diff --git a/game/images/CG/cho_quidditch/pose2/body.webp b/game/images/CG/cho_quidditch/pose2/body.webp new file mode 100644 index 00000000..ee08f5af --- /dev/null +++ b/game/images/CG/cho_quidditch/pose2/body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7db18d8f5c50a5fb502aead4173ac4bf8f4b1f75d800b03cae293ca52964e771 +size 315480 diff --git a/game/images/CG/cho_quidditch/pose2/eyebrows_1.webp b/game/images/CG/cho_quidditch/pose2/eyebrows_1.webp new file mode 100644 index 00000000..67491868 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose2/eyebrows_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fc4275fcb0dbe77ed06b9f8ee57812d5504870d793228dc1409533908fc9af5 +size 4172 diff --git a/game/images/CG/cho_quidditch/pose2/eyebrows_2.webp b/game/images/CG/cho_quidditch/pose2/eyebrows_2.webp new file mode 100644 index 00000000..18ed31ab --- /dev/null +++ b/game/images/CG/cho_quidditch/pose2/eyebrows_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8defba21435922a36b2cfda7cc175694de027dd2c3e819c7af75f2f2e6bb1056 +size 4100 diff --git a/game/images/CG/cho_quidditch/pose2/eyebrows_3.webp b/game/images/CG/cho_quidditch/pose2/eyebrows_3.webp new file mode 100644 index 00000000..d58967d0 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose2/eyebrows_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a9bcbed00b3342ee7177a4ff56a3a9d7e3048ea89937f1c0cbf7a4a81a13ba8 +size 4966 diff --git a/game/images/CG/cho_quidditch/pose2/eyes_1.webp b/game/images/CG/cho_quidditch/pose2/eyes_1.webp new file mode 100644 index 00000000..7b73b53d --- /dev/null +++ b/game/images/CG/cho_quidditch/pose2/eyes_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30f1cb8abe656f62b5a8167a0e521b8a2a53c5ad3a79f9376146fff0280d9f1d +size 5596 diff --git a/game/images/CG/cho_quidditch/pose2/eyes_2.webp b/game/images/CG/cho_quidditch/pose2/eyes_2.webp new file mode 100644 index 00000000..c544e536 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose2/eyes_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f30be3cb09a9a61c062a4b3cadb6ca29483bc72c6f5e8f1fc4d1871cd69d9a4b +size 6452 diff --git a/game/images/CG/cho_quidditch/pose2/eyes_3.webp b/game/images/CG/cho_quidditch/pose2/eyes_3.webp new file mode 100644 index 00000000..51a7e10b --- /dev/null +++ b/game/images/CG/cho_quidditch/pose2/eyes_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de4b135302776175146320f31f05ff15280f8b94bcef066a3ceda69c479b36be +size 5788 diff --git a/game/images/CG/cho_quidditch/pose2/handprint_left.webp b/game/images/CG/cho_quidditch/pose2/handprint_left.webp new file mode 100644 index 00000000..1094d516 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose2/handprint_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09141f371311dbc3c7ed8b31777289f92c972d4ff5ed87eb9b9efa1b812fbb87 +size 40078 diff --git a/game/images/CG/cho_quidditch/pose2/handprint_right.webp b/game/images/CG/cho_quidditch/pose2/handprint_right.webp new file mode 100644 index 00000000..ee6bc910 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose2/handprint_right.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4334533dd7fc9769dae25bb9f72a29db286b60381c1feea54b74c5030cf0ea5f +size 35596 diff --git a/game/images/CG/cho_quidditch/pose2/head_1.webp b/game/images/CG/cho_quidditch/pose2/head_1.webp new file mode 100644 index 00000000..34d57bc3 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose2/head_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16f4b113180d6a224847b46891ec730520e67b077378ab289e6dbd51690647b9 +size 107352 diff --git a/game/images/CG/cho_quidditch/pose2/head_2.webp b/game/images/CG/cho_quidditch/pose2/head_2.webp new file mode 100644 index 00000000..2725ae09 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose2/head_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2fbd6826e933651617b96a01a040fdca2f61bd8b9801d76b8fd61e95ddd726d +size 107208 diff --git a/game/images/CG/cho_quidditch/pose2/head_3.webp b/game/images/CG/cho_quidditch/pose2/head_3.webp new file mode 100644 index 00000000..2f70e445 --- /dev/null +++ b/game/images/CG/cho_quidditch/pose2/head_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2ba3f7a2c7375cd6e349c30992f8a1524a0b435e28ee46912b0fb789e148675 +size 107140 diff --git a/game/images/CG/cho_quidditch2/background.webp b/game/images/CG/cho_quidditch2/background.webp new file mode 100644 index 00000000..3fcdf3a1 --- /dev/null +++ b/game/images/CG/cho_quidditch2/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:605a5ebc7a9db7b688b16f4f403f4cbb6add909056a9e841c690f8e152454cd9 +size 338838 diff --git a/game/images/CG/cho_quidditch2/cho_sit_snitch.webp b/game/images/CG/cho_quidditch2/cho_sit_snitch.webp new file mode 100644 index 00000000..0088d084 --- /dev/null +++ b/game/images/CG/cho_quidditch2/cho_sit_snitch.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36db0d7d74f4fd622a4c8732f540016020c959f5994d66cbc437edc7d38de1aa +size 202744 diff --git a/game/images/CG/cho_quidditch2/cho_sitting.webp b/game/images/CG/cho_quidditch2/cho_sitting.webp new file mode 100644 index 00000000..3ebe51c0 --- /dev/null +++ b/game/images/CG/cho_quidditch2/cho_sitting.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:205ee8c045fcef4be7badce5a0f9020754d0ba60d4b958bec1d96f443bef1ba8 +size 182304 diff --git a/game/images/CG/cho_quidditch2/cho_sitting_snitch.webp b/game/images/CG/cho_quidditch2/cho_sitting_snitch.webp new file mode 100644 index 00000000..0088d084 --- /dev/null +++ b/game/images/CG/cho_quidditch2/cho_sitting_snitch.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36db0d7d74f4fd622a4c8732f540016020c959f5994d66cbc437edc7d38de1aa +size 202744 diff --git a/game/images/CG/cho_quidditch2/cho_standing.webp b/game/images/CG/cho_quidditch2/cho_standing.webp new file mode 100644 index 00000000..4459bb54 --- /dev/null +++ b/game/images/CG/cho_quidditch2/cho_standing.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcb82e21a92327b0c03eee5eab45adac5b701740648bc1f0fdfedfdea22386d3 +size 225110 diff --git a/game/images/CG/cho_quidditch2/cho_standing_ahegao.webp b/game/images/CG/cho_quidditch2/cho_standing_ahegao.webp new file mode 100644 index 00000000..79ff8691 --- /dev/null +++ b/game/images/CG/cho_quidditch2/cho_standing_ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d325f6ae46c78fcc83e5eb2fc8a36cb2964c356623c62521cb8a2fd30fdc939b +size 218224 diff --git a/game/images/CG/cho_quidditch2/cho_standing_panties.webp b/game/images/CG/cho_quidditch2/cho_standing_panties.webp new file mode 100644 index 00000000..459d56d4 --- /dev/null +++ b/game/images/CG/cho_quidditch2/cho_standing_panties.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da082543d06f10664a1141bbcef11806118a85acaf21b6144f915c613a6bd3b0 +size 215790 diff --git a/game/images/CG/cho_quidditch2/cho_standing_panties_down.webp b/game/images/CG/cho_quidditch2/cho_standing_panties_down.webp new file mode 100644 index 00000000..6a104646 --- /dev/null +++ b/game/images/CG/cho_quidditch2/cho_standing_panties_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c193f7d042e22e9c1f0f79352dda7911edd3663e697ca96bc4ad758bcd11b59 +size 215456 diff --git a/game/images/CG/cho_quidditch2/cho_standing_smile.webp b/game/images/CG/cho_quidditch2/cho_standing_smile.webp new file mode 100644 index 00000000..87368c50 --- /dev/null +++ b/game/images/CG/cho_quidditch2/cho_standing_smile.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd47f93eecb3bce5a2128dd10dadaec1bed855d5bea36bd9873fc5521c9f9660 +size 217456 diff --git a/game/images/CG/cho_quidditch2/cho_standing_snitch.webp b/game/images/CG/cho_quidditch2/cho_standing_snitch.webp new file mode 100644 index 00000000..7d7c4de8 --- /dev/null +++ b/game/images/CG/cho_quidditch2/cho_standing_snitch.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e92de2948d92b982e52a4d77ca5042183ee0bd7398cf10892175326cba09f7f +size 224656 diff --git a/game/images/CG/cho_quidditch2/scroll.webp b/game/images/CG/cho_quidditch2/scroll.webp new file mode 100644 index 00000000..cd12395c --- /dev/null +++ b/game/images/CG/cho_quidditch2/scroll.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d6d20059de70bca28270e1e36044aed883fb494508baf8211c479c23913b5fe +size 780 diff --git a/game/images/CG/cho_quidditch2/slide/background.webp b/game/images/CG/cho_quidditch2/slide/background.webp new file mode 100644 index 00000000..25107a8a --- /dev/null +++ b/game/images/CG/cho_quidditch2/slide/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:279ddc02481cfa5048a29c84068a8117cec9ecec159608a4b610438cbdac8a3b +size 124 diff --git a/game/images/CG/cho_quidditch2/slide/cho_sitting.webp b/game/images/CG/cho_quidditch2/slide/cho_sitting.webp new file mode 100644 index 00000000..64149da3 --- /dev/null +++ b/game/images/CG/cho_quidditch2/slide/cho_sitting.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b070c8d82417e2865b16092b2d539803508faecf05b2a3085f414376c4ecf08 +size 202668 diff --git a/game/images/CG/cho_quidditch2/slide/cho_sitting_snitch.webp b/game/images/CG/cho_quidditch2/slide/cho_sitting_snitch.webp new file mode 100644 index 00000000..6c5fc1cf --- /dev/null +++ b/game/images/CG/cho_quidditch2/slide/cho_sitting_snitch.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bab79e6851c1244b41ad2974548e9005a60ddd9d95988329aa481944cdd9e71a +size 224690 diff --git a/game/images/CG/cho_quidditch2/slide/cho_standing.webp b/game/images/CG/cho_quidditch2/slide/cho_standing.webp new file mode 100644 index 00000000..81cdc442 --- /dev/null +++ b/game/images/CG/cho_quidditch2/slide/cho_standing.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fffa954ef043e6c03daf27ecd27cdfac3149800006376bc64518e18c32ad6de8 +size 402412 diff --git a/game/images/CG/cho_quidditch2/slide/cho_standing_naked.webp b/game/images/CG/cho_quidditch2/slide/cho_standing_naked.webp new file mode 100644 index 00000000..40f84919 --- /dev/null +++ b/game/images/CG/cho_quidditch2/slide/cho_standing_naked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf6607707c332b06c30a8fe1f9ce6f4e37cdd44e6bf0740bc8a4b221b61ec533 +size 378450 diff --git a/game/images/CG/cho_quidditch2/slide/cho_standing_panties.webp b/game/images/CG/cho_quidditch2/slide/cho_standing_panties.webp new file mode 100644 index 00000000..6a99b54e --- /dev/null +++ b/game/images/CG/cho_quidditch2/slide/cho_standing_panties.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5258092b48519a68992ef2a362ca8526195a1db97b0cd3eb5c75c22fa4dc738 +size 413894 diff --git a/game/images/CG/cho_quidditch2/slide/cho_standing_panties_down.webp b/game/images/CG/cho_quidditch2/slide/cho_standing_panties_down.webp new file mode 100644 index 00000000..7236e335 --- /dev/null +++ b/game/images/CG/cho_quidditch2/slide/cho_standing_panties_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc433e14ced5bc3298da6538b7f84394103b9b28b583bedf50f6825918019e69 +size 397256 diff --git a/game/images/CG/cho_quidditch2/slide/lines.webp b/game/images/CG/cho_quidditch2/slide/lines.webp new file mode 100644 index 00000000..c2ac6846 --- /dev/null +++ b/game/images/CG/cho_quidditch2/slide/lines.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f1aee064350f930e7466264e825c8c23a0c594d3f83951fc7bf659407c05bea +size 82 diff --git a/game/images/CG/cho_quidditch2/snitch_0.webp b/game/images/CG/cho_quidditch2/snitch_0.webp new file mode 100644 index 00000000..44d093fa --- /dev/null +++ b/game/images/CG/cho_quidditch2/snitch_0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14601cc7d42c17cd467114adcf0d721efd0ffda3ac899d2faddc6ca0dbbaebfa +size 14250 diff --git a/game/images/CG/cho_quidditch2/snitch_1.webp b/game/images/CG/cho_quidditch2/snitch_1.webp new file mode 100644 index 00000000..754a34f3 --- /dev/null +++ b/game/images/CG/cho_quidditch2/snitch_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5b179e50079b6f94a009c3f047687946664d948b78f037934c957dbb1aed8dc +size 16162 diff --git a/game/images/CG/cho_quidditch2/squirt.webp b/game/images/CG/cho_quidditch2/squirt.webp new file mode 100644 index 00000000..4f14ec59 --- /dev/null +++ b/game/images/CG/cho_quidditch2/squirt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bbcc04c12978337e5c55c99f7c560c679f9b23c8e23d0b3619737465f41b614 +size 11088 diff --git a/game/images/CG/cho_sex/background.webp b/game/images/CG/cho_sex/background.webp new file mode 100644 index 00000000..82921e57 --- /dev/null +++ b/game/images/CG/cho_sex/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ec358351473d0c7b65ac308871b602c21755f1170773c7ca1acb64a50f86a37 +size 1067398 diff --git a/game/images/CG/cho_sex/blob.webp b/game/images/CG/cho_sex/blob.webp new file mode 100644 index 00000000..862b3cb1 --- /dev/null +++ b/game/images/CG/cho_sex/blob.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e1aae8eaae07dbe50d9e67dd469d56d277ddabcb33bed013ffd1f3f14b8ed83 +size 164 diff --git a/game/images/CG/cho_sex/down/blink.webp b/game/images/CG/cho_sex/down/blink.webp new file mode 100644 index 00000000..05501b4d --- /dev/null +++ b/game/images/CG/cho_sex/down/blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f1ea2cbd8f336689734795a7bac5bfed6bca2c0fa20d5863207e784fa1aa246 +size 162180 diff --git a/game/images/CG/cho_sex/down/cho.webp b/game/images/CG/cho_sex/down/cho.webp new file mode 100644 index 00000000..59e19d16 --- /dev/null +++ b/game/images/CG/cho_sex/down/cho.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27320f57c95990df2cc0ff8aadc864891d387c1bf33e184d34c90a858eed760f +size 166462 diff --git a/game/images/CG/cho_sex/down/cum_inside.webp b/game/images/CG/cho_sex/down/cum_inside.webp new file mode 100644 index 00000000..9221c23b --- /dev/null +++ b/game/images/CG/cho_sex/down/cum_inside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e00a41b210880fd65635e7c2114c557d53b76208baf960baa6ed7d3ef6aa9e1 +size 7324 diff --git a/game/images/CG/cho_sex/down/genie.webp b/game/images/CG/cho_sex/down/genie.webp new file mode 100644 index 00000000..b38a745e --- /dev/null +++ b/game/images/CG/cho_sex/down/genie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c4c642d7a5fd280b3db9ea47d2ca93b3ce79cf8713cba5c31856a5ca4e69926 +size 135076 diff --git a/game/images/CG/cho_sex/idle/blink.webp b/game/images/CG/cho_sex/idle/blink.webp new file mode 100644 index 00000000..c73f6d0c --- /dev/null +++ b/game/images/CG/cho_sex/idle/blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53e9567fd817e38e7fff7a01427dc141916261e62c5c6e390c4f2e48748acfce +size 166886 diff --git a/game/images/CG/cho_sex/idle/cho.webp b/game/images/CG/cho_sex/idle/cho.webp new file mode 100644 index 00000000..dd3b2673 --- /dev/null +++ b/game/images/CG/cho_sex/idle/cho.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:644d31b88576b575bf861b5f953223f356ef8b689c0105c0581678bcf3028ee6 +size 170742 diff --git a/game/images/CG/cho_sex/idle/creampie.webp b/game/images/CG/cho_sex/idle/creampie.webp new file mode 100644 index 00000000..9221c23b --- /dev/null +++ b/game/images/CG/cho_sex/idle/creampie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e00a41b210880fd65635e7c2114c557d53b76208baf960baa6ed7d3ef6aa9e1 +size 7324 diff --git a/game/images/CG/cho_sex/idle/genie.webp b/game/images/CG/cho_sex/idle/genie.webp new file mode 100644 index 00000000..1bd26b9b --- /dev/null +++ b/game/images/CG/cho_sex/idle/genie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c3b6c6969d928aa94dd3bbf5ed25418813b113974621bb972d38fd249372588 +size 134796 diff --git a/game/images/CG/cho_sex/idle/penis.webp b/game/images/CG/cho_sex/idle/penis.webp new file mode 100644 index 00000000..5ddc3f4c --- /dev/null +++ b/game/images/CG/cho_sex/idle/penis.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f293440c287be87bbac6d790875e57098ed5ada4426d5cf8cff36545c18b703 +size 17580 diff --git a/game/images/CG/cho_sex/idle/penis_cum_inside.webp b/game/images/CG/cho_sex/idle/penis_cum_inside.webp new file mode 100644 index 00000000..890c3106 --- /dev/null +++ b/game/images/CG/cho_sex/idle/penis_cum_inside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68afc7d2867e54b2211fe57d4b285583e56356942122055eac7ba26fb86cba11 +size 28368 diff --git a/game/images/CG/cho_sex/idle/penis_cum_outside.webp b/game/images/CG/cho_sex/idle/penis_cum_outside.webp new file mode 100644 index 00000000..aa04e615 --- /dev/null +++ b/game/images/CG/cho_sex/idle/penis_cum_outside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75840652d6f99975f6385c3d39c88f681fe5dbaf46bb3bf5d9a9aa689c3fd843 +size 20616 diff --git a/game/images/CG/cho_sex/insert/blink.webp b/game/images/CG/cho_sex/insert/blink.webp new file mode 100644 index 00000000..88c5e9c5 --- /dev/null +++ b/game/images/CG/cho_sex/insert/blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e3e04afea6762b9ffee2a74d13211cfc9ec22691c191264011c0ebe28389084 +size 168890 diff --git a/game/images/CG/cho_sex/insert/cho.webp b/game/images/CG/cho_sex/insert/cho.webp new file mode 100644 index 00000000..d6c90c80 --- /dev/null +++ b/game/images/CG/cho_sex/insert/cho.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfafed08b0602ba0f95cfa282fd2814eb5824ca58234f3b4952bcbcae9b59ff7 +size 172632 diff --git a/game/images/CG/cho_sex/insert/cum_inside.webp b/game/images/CG/cho_sex/insert/cum_inside.webp new file mode 100644 index 00000000..3e721dc5 --- /dev/null +++ b/game/images/CG/cho_sex/insert/cum_inside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6926b0cfbea80848b4153f226150c191c9b7d546dac967964dccbcf62e2492f4 +size 20360 diff --git a/game/images/CG/cho_sex/insert/genie.webp b/game/images/CG/cho_sex/insert/genie.webp new file mode 100644 index 00000000..e9995603 --- /dev/null +++ b/game/images/CG/cho_sex/insert/genie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34ee103c314ce8eae9c9a37beab0e5b58c72576fde22c2a450beaaffc0cb82a2 +size 131710 diff --git a/game/images/CG/cho_sex/middle/blink.webp b/game/images/CG/cho_sex/middle/blink.webp new file mode 100644 index 00000000..72c3c85c --- /dev/null +++ b/game/images/CG/cho_sex/middle/blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:102575bf9f4c78b43517c332c74c08bb402447e7eb5dafa26763b94f6b95e25e +size 166154 diff --git a/game/images/CG/cho_sex/middle/cho.webp b/game/images/CG/cho_sex/middle/cho.webp new file mode 100644 index 00000000..72c3c85c --- /dev/null +++ b/game/images/CG/cho_sex/middle/cho.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:102575bf9f4c78b43517c332c74c08bb402447e7eb5dafa26763b94f6b95e25e +size 166154 diff --git a/game/images/CG/cho_sex/middle/cum_inside.webp b/game/images/CG/cho_sex/middle/cum_inside.webp new file mode 100644 index 00000000..0e25be89 --- /dev/null +++ b/game/images/CG/cho_sex/middle/cum_inside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74e34e83f314021ef04334b1f27d4063ba4567d1d6c7de773eb5d38734bd549a +size 9130 diff --git a/game/images/CG/cho_sex/middle/genie.webp b/game/images/CG/cho_sex/middle/genie.webp new file mode 100644 index 00000000..1bd26b9b --- /dev/null +++ b/game/images/CG/cho_sex/middle/genie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c3b6c6969d928aa94dd3bbf5ed25418813b113974621bb972d38fd249372588 +size 134796 diff --git a/game/images/CG/cho_sex/speed.webp b/game/images/CG/cho_sex/speed.webp new file mode 100644 index 00000000..8c111fe1 --- /dev/null +++ b/game/images/CG/cho_sex/speed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff3d9afae90d2fc9ba6e80dcb00e258923be991f66b05a0603c832700759ec09 +size 26244 diff --git a/game/images/CG/cho_sex/up/blink.webp b/game/images/CG/cho_sex/up/blink.webp new file mode 100644 index 00000000..f66b28a1 --- /dev/null +++ b/game/images/CG/cho_sex/up/blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a957a04a795f6f5220872599cf1562af1efe7708bc7e7be14d01130fdf28c9d7 +size 170966 diff --git a/game/images/CG/cho_sex/up/cho.webp b/game/images/CG/cho_sex/up/cho.webp new file mode 100644 index 00000000..8642aa58 --- /dev/null +++ b/game/images/CG/cho_sex/up/cho.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e97e8f3748c6706dff9ee60788a0ac704c9030a4057778042704a1597b76bda +size 180410 diff --git a/game/images/CG/cho_sex/up/cum_inside.webp b/game/images/CG/cho_sex/up/cum_inside.webp new file mode 100644 index 00000000..7d47f9f2 --- /dev/null +++ b/game/images/CG/cho_sex/up/cum_inside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9fe914a911b7ce919c7117a73afc00753be8e16c77e73a37614eee572ad05f0 +size 13632 diff --git a/game/images/CG/cho_sex/up/cum_outside.webp b/game/images/CG/cho_sex/up/cum_outside.webp new file mode 100644 index 00000000..b802daba --- /dev/null +++ b/game/images/CG/cho_sex/up/cum_outside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44b5d07fc1fa4ab80c0cac273f4c60c70b44e76fa3c96df77f376e34f50a7879 +size 21752 diff --git a/game/images/CG/cho_sex/up/cum_outside_spurt.webp b/game/images/CG/cho_sex/up/cum_outside_spurt.webp new file mode 100644 index 00000000..4e29b296 --- /dev/null +++ b/game/images/CG/cho_sex/up/cum_outside_spurt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d1fb41c1d676fac320ab012ab17027a3b30dc0e7109261bead8ad7142af4240 +size 11980 diff --git a/game/images/CG/cho_sex/up/cum_outside_stage1.webp b/game/images/CG/cho_sex/up/cum_outside_stage1.webp new file mode 100644 index 00000000..da4772fc --- /dev/null +++ b/game/images/CG/cho_sex/up/cum_outside_stage1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:058171a32a769d93ee959615bcf562873e9a017a5e0bb20a6b839a75e0482ea6 +size 22176 diff --git a/game/images/CG/cho_sex/up/cum_outside_stage2.webp b/game/images/CG/cho_sex/up/cum_outside_stage2.webp new file mode 100644 index 00000000..026306e7 --- /dev/null +++ b/game/images/CG/cho_sex/up/cum_outside_stage2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b153ee2ee60be884ee3114080e614a0dcd42f82eca2392f10ae48c5e389f98fc +size 32410 diff --git a/game/images/CG/cho_sex/up/cum_outside_stage3.webp b/game/images/CG/cho_sex/up/cum_outside_stage3.webp new file mode 100644 index 00000000..1f969c45 --- /dev/null +++ b/game/images/CG/cho_sex/up/cum_outside_stage3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1fb286429547f59d2ea298f68c85fe44c21f7d5394332af6729f62716b2df9a +size 38770 diff --git a/game/images/CG/cho_sex/up/genie.webp b/game/images/CG/cho_sex/up/genie.webp new file mode 100644 index 00000000..0df3e24c --- /dev/null +++ b/game/images/CG/cho_sex/up/genie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3de9a4ccb69b76bf611603db4ba6ea017ff1b5454242990079c7c11ad278e9f1 +size 129712 diff --git a/game/images/CG/cho_sex/up/genie_masturbate.webp b/game/images/CG/cho_sex/up/genie_masturbate.webp new file mode 100644 index 00000000..0fa81777 --- /dev/null +++ b/game/images/CG/cho_sex/up/genie_masturbate.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e4e8d3ea71a20d3d3dd192708e38234008480f038701c526420c56a446d7fa1 +size 137070 diff --git a/game/images/CG/cho_sex/up/genie_masturbate2.webp b/game/images/CG/cho_sex/up/genie_masturbate2.webp new file mode 100644 index 00000000..91ce1f30 --- /dev/null +++ b/game/images/CG/cho_sex/up/genie_masturbate2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e096b7d8f3b6a61405dc95e4c678aeac003f95de919294bdbeb440d328c1bf2 +size 139702 diff --git a/game/images/CG/cho_sex/up/penis.webp b/game/images/CG/cho_sex/up/penis.webp new file mode 100644 index 00000000..5ddc3f4c --- /dev/null +++ b/game/images/CG/cho_sex/up/penis.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f293440c287be87bbac6d790875e57098ed5ada4426d5cf8cff36545c18b703 +size 17580 diff --git a/game/images/CG/cho_sex/up/penis_inside.webp b/game/images/CG/cho_sex/up/penis_inside.webp new file mode 100644 index 00000000..dee3c479 --- /dev/null +++ b/game/images/CG/cho_sex/up/penis_inside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c99a5372b56851a6c3e19b4d97297cb0f829a0eee1c3e05b95666cbe98774203 +size 23048 diff --git a/game/images/CG/cho_sex/up/speed.webp b/game/images/CG/cho_sex/up/speed.webp new file mode 100644 index 00000000..914ef43f --- /dev/null +++ b/game/images/CG/cho_sex/up/speed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d34dd4071a86a15df2da60556946c24141f3474237c296d06a7d59e53c0daa4 +size 9022 diff --git a/game/images/CG/cho_sex/up_taste/blink.webp b/game/images/CG/cho_sex/up_taste/blink.webp new file mode 100644 index 00000000..b81ecaac --- /dev/null +++ b/game/images/CG/cho_sex/up_taste/blink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94db21090312b5dfc74416e86eac110ee18c48e841f3ed35b91299ef7a6e3dc4 +size 186566 diff --git a/game/images/CG/cho_sex/up_taste/cho.webp b/game/images/CG/cho_sex/up_taste/cho.webp new file mode 100644 index 00000000..9f4853a2 --- /dev/null +++ b/game/images/CG/cho_sex/up_taste/cho.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:509b3b84c4f81486623ccecafbcab582dd7e6b4780a12f4315308ee732eacc37 +size 193366 diff --git a/game/images/CG/cho_sex/up_taste/cum_inside.webp b/game/images/CG/cho_sex/up_taste/cum_inside.webp new file mode 100644 index 00000000..b802daba --- /dev/null +++ b/game/images/CG/cho_sex/up_taste/cum_inside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44b5d07fc1fa4ab80c0cac273f4c60c70b44e76fa3c96df77f376e34f50a7879 +size 21752 diff --git a/game/images/CG/cho_sex/up_taste/cum_outside.webp b/game/images/CG/cho_sex/up_taste/cum_outside.webp new file mode 100644 index 00000000..f566059e --- /dev/null +++ b/game/images/CG/cho_sex/up_taste/cum_outside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c9bcf26b1b65df4ad497f5be8a4e2af9c393b886777a6918c3ed43b1306cf2c +size 18350 diff --git a/game/images/CG/cho_sex/up_taste/cum_outside_stage3.webp b/game/images/CG/cho_sex/up_taste/cum_outside_stage3.webp new file mode 100644 index 00000000..1f969c45 --- /dev/null +++ b/game/images/CG/cho_sex/up_taste/cum_outside_stage3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1fb286429547f59d2ea298f68c85fe44c21f7d5394332af6729f62716b2df9a +size 38770 diff --git a/game/images/CG/cho_sex/up_taste/genie.webp b/game/images/CG/cho_sex/up_taste/genie.webp new file mode 100644 index 00000000..0df3e24c --- /dev/null +++ b/game/images/CG/cho_sex/up_taste/genie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3de9a4ccb69b76bf611603db4ba6ea017ff1b5454242990079c7c11ad278e9f1 +size 129712 diff --git a/game/images/CG/cho_sex/up_taste/penis.webp b/game/images/CG/cho_sex/up_taste/penis.webp new file mode 100644 index 00000000..5ddc3f4c --- /dev/null +++ b/game/images/CG/cho_sex/up_taste/penis.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f293440c287be87bbac6d790875e57098ed5ada4426d5cf8cff36545c18b703 +size 17580 diff --git a/game/images/CG/cho_sex/up_taste/penis_inside.webp b/game/images/CG/cho_sex/up_taste/penis_inside.webp new file mode 100644 index 00000000..dee3c479 --- /dev/null +++ b/game/images/CG/cho_sex/up_taste/penis_inside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c99a5372b56851a6c3e19b4d97297cb0f829a0eee1c3e05b95666cbe98774203 +size 23048 diff --git a/game/images/CG/common/bg.webp b/game/images/CG/common/bg.webp new file mode 100644 index 00000000..4d38a8e1 --- /dev/null +++ b/game/images/CG/common/bg.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f2d89c04559f52122fedad244d32754bb87b8e726b2b6994b1e3203204b2d22 +size 1222116 diff --git a/game/images/CG/common/day_overlay.webp b/game/images/CG/common/day_overlay.webp new file mode 100644 index 00000000..a14d0802 --- /dev/null +++ b/game/images/CG/common/day_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38ad6a65b310c71a9fa18b2fc957ae6653ef0ca63a4d21e338f650e3b7bdcb0e +size 79694 diff --git a/game/images/CG/common/mask.webp b/game/images/CG/common/mask.webp new file mode 100644 index 00000000..a8a98eed --- /dev/null +++ b/game/images/CG/common/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:364cd1b57b24f208d59d7a4b601a43850e89a09ee6beaea2e513221640ef5c31 +size 8296 diff --git a/game/images/CG/common/night_overlay.webp b/game/images/CG/common/night_overlay.webp new file mode 100644 index 00000000..3bf46a0f --- /dev/null +++ b/game/images/CG/common/night_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6265ffbad00858ed7d16c018e38f15d3c574de7963a7b3500a93bf61f93c124f +size 93510 diff --git a/game/images/CG/her_intro/bg.webp b/game/images/CG/her_intro/bg.webp new file mode 100644 index 00000000..c238de31 --- /dev/null +++ b/game/images/CG/her_intro/bg.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce7d9916f3dfaa3c2fc6d491013d22df0a69b76b26946b2169667f4e1038358b +size 1068534 diff --git a/game/images/CG/her_intro/day_overlay.webp b/game/images/CG/her_intro/day_overlay.webp new file mode 100644 index 00000000..a14d0802 --- /dev/null +++ b/game/images/CG/her_intro/day_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38ad6a65b310c71a9fa18b2fc957ae6653ef0ca63a4d21e338f650e3b7bdcb0e +size 79694 diff --git a/game/images/CG/her_intro/hermione_bendover.webp b/game/images/CG/her_intro/hermione_bendover.webp new file mode 100644 index 00000000..a1c1ebde --- /dev/null +++ b/game/images/CG/her_intro/hermione_bendover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a8ac3f564cfe6199affa1e9b27d782c6b0b5924eb942efa1f46aec424b38e0d +size 205880 diff --git a/game/images/CG/her_intro/mask.webp b/game/images/CG/her_intro/mask.webp new file mode 100644 index 00000000..a8a98eed --- /dev/null +++ b/game/images/CG/her_intro/mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:364cd1b57b24f208d59d7a4b601a43850e89a09ee6beaea2e513221640ef5c31 +size 8296 diff --git a/game/images/CG/her_intro/night_overlay.webp b/game/images/CG/her_intro/night_overlay.webp new file mode 100644 index 00000000..3bf46a0f --- /dev/null +++ b/game/images/CG/her_intro/night_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6265ffbad00858ed7d16c018e38f15d3c574de7963a7b3500a93bf61f93c124f +size 93510 diff --git a/game/images/CG/her_potions/ass_expand/classroom_a1.webp b/game/images/CG/her_potions/ass_expand/classroom_a1.webp new file mode 100644 index 00000000..711e32b1 --- /dev/null +++ b/game/images/CG/her_potions/ass_expand/classroom_a1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5c69ce57f1a789b89905649ae2b6abadd954a78c22cba3cb0ed16f260211458 +size 1797094 diff --git a/game/images/CG/her_potions/ass_expand/classroom_a2.webp b/game/images/CG/her_potions/ass_expand/classroom_a2.webp new file mode 100644 index 00000000..96349315 --- /dev/null +++ b/game/images/CG/her_potions/ass_expand/classroom_a2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1471f5fdc62a57a68a1a935ed9075e0cd2e758e2be8ffbf284e47cae25213d8c +size 1948206 diff --git a/game/images/CG/her_potions/breast_expand/classroom_a1.webp b/game/images/CG/her_potions/breast_expand/classroom_a1.webp new file mode 100644 index 00000000..745f0e4a --- /dev/null +++ b/game/images/CG/her_potions/breast_expand/classroom_a1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a2e359c8e0a97c6a55e52199afa43592c1f5a13b17f8a1dfc358e0c8f1d907d +size 3338808 diff --git a/game/images/CG/her_potions/breast_expand/classroom_a2.webp b/game/images/CG/her_potions/breast_expand/classroom_a2.webp new file mode 100644 index 00000000..c85b7d6f --- /dev/null +++ b/game/images/CG/her_potions/breast_expand/classroom_a2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82ac14b866e8407c18389f7b252fd40ebac130c9d344ec9b2139a2ddedf0d7a8 +size 3288910 diff --git a/game/images/CG/her_potions/breast_expand/classroom_b1.webp b/game/images/CG/her_potions/breast_expand/classroom_b1.webp new file mode 100644 index 00000000..cedfe570 --- /dev/null +++ b/game/images/CG/her_potions/breast_expand/classroom_b1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3c6b7ab3727c6c173832f4bbb670039301c41cd95d019a23e52f4926358442a +size 3388206 diff --git a/game/images/CG/her_potions/breast_expand/classroom_b2.webp b/game/images/CG/her_potions/breast_expand/classroom_b2.webp new file mode 100644 index 00000000..84d0c609 --- /dev/null +++ b/game/images/CG/her_potions/breast_expand/classroom_b2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7910d641fcbe72ddd7772ef8bf685d16130b34a68828f9b8e18e5968882104c5 +size 3355248 diff --git a/game/images/CG/her_potions/breast_expand/corridor_a1.webp b/game/images/CG/her_potions/breast_expand/corridor_a1.webp new file mode 100644 index 00000000..4a17a940 --- /dev/null +++ b/game/images/CG/her_potions/breast_expand/corridor_a1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de92f7bcc9852a5921378fd352e0f4f0591cfb8c07b93b20927e0408cd9a6e7d +size 2337722 diff --git a/game/images/CG/her_potions/breast_expand/corridor_b1.webp b/game/images/CG/her_potions/breast_expand/corridor_b1.webp new file mode 100644 index 00000000..1c11444f --- /dev/null +++ b/game/images/CG/her_potions/breast_expand/corridor_b1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a38e46fe38448c85c405d5b332a264f8f851ffac4094e65728835eebf42d922e +size 2353262 diff --git a/game/images/CG/her_sex/background.webp b/game/images/CG/her_sex/background.webp new file mode 100644 index 00000000..fe19e89c --- /dev/null +++ b/game/images/CG/her_sex/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6584758d2ddb86da0298211944fd792e3f9c35cfcca0718d1b28e7fa18e5b88 +size 637892 diff --git a/game/images/CG/her_sex/caress_armfix.webp b/game/images/CG/her_sex/caress_armfix.webp new file mode 100644 index 00000000..00baf354 --- /dev/null +++ b/game/images/CG/her_sex/caress_armfix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c57b306e287b1af229f16d94d3797989032cc7a03d4c7bf5ecca451dc919654 +size 63810 diff --git a/game/images/CG/her_sex/day_overlay.webp b/game/images/CG/her_sex/day_overlay.webp new file mode 100644 index 00000000..5d96e291 --- /dev/null +++ b/game/images/CG/her_sex/day_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c27e128eac3750cc0998c6460dc89ccb8ffce8b9bb13173ddd62c92c620900f +size 185458 diff --git a/game/images/CG/her_sex/foreground.webp b/game/images/CG/her_sex/foreground.webp new file mode 100644 index 00000000..3639f583 --- /dev/null +++ b/game/images/CG/her_sex/foreground.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9997bf3b41fdc9205825f4f154a25e47f182cd1e1fbb3baa2282db30433cdca1 +size 50790 diff --git a/game/images/CG/her_sex/genie_after.webp b/game/images/CG/her_sex/genie_after.webp new file mode 100644 index 00000000..dab6555d --- /dev/null +++ b/game/images/CG/her_sex/genie_after.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1f1218ed15d3e2a04e4f07bb87bef7c2eca13538217d7ac023ae4679f313326 +size 365786 diff --git a/game/images/CG/her_sex/genie_caress.webp b/game/images/CG/her_sex/genie_caress.webp new file mode 100644 index 00000000..a57bd2af --- /dev/null +++ b/game/images/CG/her_sex/genie_caress.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6923f559c5802e4b3972d8e99b1c2448d8a902059c8f4f862b9360298a465294 +size 350332 diff --git a/game/images/CG/her_sex/genie_caress_grin.webp b/game/images/CG/her_sex/genie_caress_grin.webp new file mode 100644 index 00000000..a7d61739 --- /dev/null +++ b/game/images/CG/her_sex/genie_caress_grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e35196760322419b6d353115c80cf7cace0408b5503e3c6b25f75ae4952801d0 +size 352622 diff --git a/game/images/CG/her_sex/genie_cum_inside.webp b/game/images/CG/her_sex/genie_cum_inside.webp new file mode 100644 index 00000000..331b989e --- /dev/null +++ b/game/images/CG/her_sex/genie_cum_inside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a56a76affd8837f05addbfee80c07247b34eb217bec72c2e9ecd88404b30b3ca +size 364440 diff --git a/game/images/CG/her_sex/genie_cum_outside.webp b/game/images/CG/her_sex/genie_cum_outside.webp new file mode 100644 index 00000000..a21e9e7b --- /dev/null +++ b/game/images/CG/her_sex/genie_cum_outside.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7427e19e7fb3e18b66a6cf6f41f27458c627f6fabdf033a69b9a134fc4e2df84 +size 371050 diff --git a/game/images/CG/her_sex/genie_cum_outside2.webp b/game/images/CG/her_sex/genie_cum_outside2.webp new file mode 100644 index 00000000..473ac6b3 --- /dev/null +++ b/game/images/CG/her_sex/genie_cum_outside2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9316971d1a2491d43103e17d7b1e2956aa547538ced3cc4df98f7d5bf1b5a883 +size 369984 diff --git a/game/images/CG/her_sex/genie_grab.webp b/game/images/CG/her_sex/genie_grab.webp new file mode 100644 index 00000000..6e48c40e --- /dev/null +++ b/game/images/CG/her_sex/genie_grab.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c49e1348468c306f2c18f4ee4571f1377905d1ef36ca1b7a0c33fddfbdf32629 +size 361054 diff --git a/game/images/CG/her_sex/genie_grab_grin.webp b/game/images/CG/her_sex/genie_grab_grin.webp new file mode 100644 index 00000000..9e4b515e --- /dev/null +++ b/game/images/CG/her_sex/genie_grab_grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c4ea54c365516131fe524c22b49485a766629735351744fa155e24c6d924f09 +size 363076 diff --git a/game/images/CG/her_sex/genie_hold.webp b/game/images/CG/her_sex/genie_hold.webp new file mode 100644 index 00000000..859ab38d --- /dev/null +++ b/game/images/CG/her_sex/genie_hold.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40aaac429b51b489973e40d8634d1ca8fa373de6b45cdae4670f446129e09bfe +size 339636 diff --git a/game/images/CG/her_sex/genie_hold_grin.webp b/game/images/CG/her_sex/genie_hold_grin.webp new file mode 100644 index 00000000..8e8a0f4b --- /dev/null +++ b/game/images/CG/her_sex/genie_hold_grin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9fa2ad8277a087907fc27f0399f30773f5bc1d97d332505253c91c323c67a6c +size 342284 diff --git a/game/images/CG/her_sex/grab_armfix.webp b/game/images/CG/her_sex/grab_armfix.webp new file mode 100644 index 00000000..e48f44c4 --- /dev/null +++ b/game/images/CG/her_sex/grab_armfix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9d5264f281f1603cf23a877590ae63686a4c6a40c0294755b3a79b438df846a +size 50226 diff --git a/game/images/CG/her_sex/hold_armfix.webp b/game/images/CG/her_sex/hold_armfix.webp new file mode 100644 index 00000000..a26a404d --- /dev/null +++ b/game/images/CG/her_sex/hold_armfix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f063b2da4b17782b7d39d69e2235d2bc6279de4f3ede4398a34f11ae0eb2db6 +size 40678 diff --git a/game/images/CG/her_sex/night_overlay.webp b/game/images/CG/her_sex/night_overlay.webp new file mode 100644 index 00000000..ea42085f --- /dev/null +++ b/game/images/CG/her_sex/night_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3e17e4dd70e353efe692bd39c03d3347d9e62f6f11e6aa749f9419e3dbc9844 +size 183236 diff --git a/game/images/CG/her_sex/open_wide_tongue.webp b/game/images/CG/her_sex/open_wide_tongue.webp new file mode 100644 index 00000000..2553ecba --- /dev/null +++ b/game/images/CG/her_sex/open_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6147048daed7f6e76de9136a2509aa9f49540cef41dfd7917a291651ae45fa2e +size 20102 diff --git a/game/images/CG/her_sex/scream.webp b/game/images/CG/her_sex/scream.webp new file mode 100644 index 00000000..ae6ffb86 --- /dev/null +++ b/game/images/CG/her_sex/scream.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a56190aa738401eae7fbacd465f37c947b2d5e15f41d01c348a520e31dfe91c +size 19722 diff --git a/game/images/CG/herm_boob/1.webp b/game/images/CG/herm_boob/1.webp new file mode 100644 index 00000000..b1c6a8d9 --- /dev/null +++ b/game/images/CG/herm_boob/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e11d559c78651eb6515276d1a84bb9e9bb9ace0e0ba98b7b23c6a249d6d1099 +size 161354 diff --git a/game/images/CG/herm_boob/10.webp b/game/images/CG/herm_boob/10.webp new file mode 100644 index 00000000..cacef772 --- /dev/null +++ b/game/images/CG/herm_boob/10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b68d554df101f81defb0e0f4bf435b9e542975ba0430e39f00c49c306a5364c +size 180060 diff --git a/game/images/CG/herm_boob/11.webp b/game/images/CG/herm_boob/11.webp new file mode 100644 index 00000000..2e8649ee --- /dev/null +++ b/game/images/CG/herm_boob/11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:825b7181ee8c397dc16050fdac21be46e5dbca7eddea1d69b0ca1b3a9f98948a +size 181364 diff --git a/game/images/CG/herm_boob/12.webp b/game/images/CG/herm_boob/12.webp new file mode 100644 index 00000000..9be0e766 --- /dev/null +++ b/game/images/CG/herm_boob/12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a9f7d16c490c6098e6dd80b089864d135f4531a193450d70fc9b8e01595141a +size 193516 diff --git a/game/images/CG/herm_boob/13.webp b/game/images/CG/herm_boob/13.webp new file mode 100644 index 00000000..af93c32f --- /dev/null +++ b/game/images/CG/herm_boob/13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb552158f87d4fd34a579c9168e0fcb881582df5ab50218cd2d2d3a68118dd1d +size 181682 diff --git a/game/images/CG/herm_boob/14.webp b/game/images/CG/herm_boob/14.webp new file mode 100644 index 00000000..96a480dc --- /dev/null +++ b/game/images/CG/herm_boob/14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe55991d1984e6a3b4ccfb26874aad3b48776d53fcc01cc44ca0011a10030615 +size 189996 diff --git a/game/images/CG/herm_boob/15.webp b/game/images/CG/herm_boob/15.webp new file mode 100644 index 00000000..e07ad05c --- /dev/null +++ b/game/images/CG/herm_boob/15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:113a5812c24a2153e4e74fd883d626ef97683700f5cc4f8fd11b978b93eb9e02 +size 204414 diff --git a/game/images/CG/herm_boob/16.webp b/game/images/CG/herm_boob/16.webp new file mode 100644 index 00000000..fdbbeed0 --- /dev/null +++ b/game/images/CG/herm_boob/16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29a70074b8ed8cc4bce51a8e2e2236a3b651abb4caa24839f18624c834114ea1 +size 201334 diff --git a/game/images/CG/herm_boob/17.webp b/game/images/CG/herm_boob/17.webp new file mode 100644 index 00000000..6fdf872e --- /dev/null +++ b/game/images/CG/herm_boob/17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7243c62ba80870fd442b57a69eff6937a2582c2d23be794e8b39a43c4adc130c +size 156118 diff --git a/game/images/CG/herm_boob/18.webp b/game/images/CG/herm_boob/18.webp new file mode 100644 index 00000000..3c15ad77 --- /dev/null +++ b/game/images/CG/herm_boob/18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c98eccd4f0e5cd578a4e7bf77962c0f34fd74ef62e79f53e89868d9428ef2bed +size 190826 diff --git a/game/images/CG/herm_boob/19.webp b/game/images/CG/herm_boob/19.webp new file mode 100644 index 00000000..bde6531a --- /dev/null +++ b/game/images/CG/herm_boob/19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5253b166ec82863136c362b5e0ff87341a7f166ad7a4ef10c3dcf79a8dcb9a33 +size 189820 diff --git a/game/images/CG/herm_boob/2.webp b/game/images/CG/herm_boob/2.webp new file mode 100644 index 00000000..25a2c273 --- /dev/null +++ b/game/images/CG/herm_boob/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b3839f7af23647f1d9e2ffa0e6a1f8535b3d047f6aa2b8ffba0146f96f4a611 +size 157596 diff --git a/game/images/CG/herm_boob/20.webp b/game/images/CG/herm_boob/20.webp new file mode 100644 index 00000000..8edf2dc5 --- /dev/null +++ b/game/images/CG/herm_boob/20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2be7b01b63478c7c3fab703542a49ea48f9dc28e832382e169147fb168a8dd91 +size 175656 diff --git a/game/images/CG/herm_boob/21.webp b/game/images/CG/herm_boob/21.webp new file mode 100644 index 00000000..f54083d6 --- /dev/null +++ b/game/images/CG/herm_boob/21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a6938c4dab6f5bd680833d3284a36ecc9eca11d8a66bfd751f59ab7b491ab22 +size 174532 diff --git a/game/images/CG/herm_boob/22.webp b/game/images/CG/herm_boob/22.webp new file mode 100644 index 00000000..4fd54ff7 --- /dev/null +++ b/game/images/CG/herm_boob/22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9dcfffa0addf280bc6443344463db53ec3ed07a7e8ca28ef20a703abd3df55b2 +size 174360 diff --git a/game/images/CG/herm_boob/23.webp b/game/images/CG/herm_boob/23.webp new file mode 100644 index 00000000..a971cf33 --- /dev/null +++ b/game/images/CG/herm_boob/23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c8625e889c30a2edc1abdd7a6441e4bad8b38b262c9f70ecd82418af2aa75b5 +size 174864 diff --git a/game/images/CG/herm_boob/24.webp b/game/images/CG/herm_boob/24.webp new file mode 100644 index 00000000..35dd26f2 --- /dev/null +++ b/game/images/CG/herm_boob/24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c8b9afdc4f80fa88eb3788248a0c937b41f92c6a173f5eda8a974f51615050c +size 176846 diff --git a/game/images/CG/herm_boob/25.webp b/game/images/CG/herm_boob/25.webp new file mode 100644 index 00000000..c8e6b760 --- /dev/null +++ b/game/images/CG/herm_boob/25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d01f6383e562c073b39c98242904c7cb6d0c3c9eb964027a4cd314d5a0fc8c5a +size 177262 diff --git a/game/images/CG/herm_boob/26.webp b/game/images/CG/herm_boob/26.webp new file mode 100644 index 00000000..039196b3 --- /dev/null +++ b/game/images/CG/herm_boob/26.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2e10aeb0df29098c276ce5d9ee53be6238d36ade9239118f0fa553bc1fdbc25 +size 193256 diff --git a/game/images/CG/herm_boob/27.webp b/game/images/CG/herm_boob/27.webp new file mode 100644 index 00000000..1c6eac95 --- /dev/null +++ b/game/images/CG/herm_boob/27.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28d60ac2f8988ddfc3a0d7d27ea4e62d4eeb9aef4e6f5e1da0e37c58b8cf6bf0 +size 189620 diff --git a/game/images/CG/herm_boob/28.webp b/game/images/CG/herm_boob/28.webp new file mode 100644 index 00000000..1ef2b2c7 --- /dev/null +++ b/game/images/CG/herm_boob/28.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b5d64e63585d2997848a775e0096af1e9d1cd2ccc0f72fb2b3c90fb5cf85ee5 +size 155014 diff --git a/game/images/CG/herm_boob/29.webp b/game/images/CG/herm_boob/29.webp new file mode 100644 index 00000000..30a0d6b1 --- /dev/null +++ b/game/images/CG/herm_boob/29.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e04087a33840cee1d0b78266322a81534c22c61aac591188d454b8855db88e0 +size 155160 diff --git a/game/images/CG/herm_boob/3.webp b/game/images/CG/herm_boob/3.webp new file mode 100644 index 00000000..01b13e60 --- /dev/null +++ b/game/images/CG/herm_boob/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d81985022f94475a44aae5b8b0a89f3c95a2ba1ab87830d612aacc362893536d +size 158562 diff --git a/game/images/CG/herm_boob/30.webp b/game/images/CG/herm_boob/30.webp new file mode 100644 index 00000000..118c7ec6 --- /dev/null +++ b/game/images/CG/herm_boob/30.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f773524f3c3c8da9a5bfbb89aa1022c2ad936a883bf9e32947db0c19b5631eb7 +size 208962 diff --git a/game/images/CG/herm_boob/31.webp b/game/images/CG/herm_boob/31.webp new file mode 100644 index 00000000..7e6c0d0d --- /dev/null +++ b/game/images/CG/herm_boob/31.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7aef1ca7f6ab3d6afcd9972c3528350550d8b8643c12b9604adfbffb81bea8e5 +size 206186 diff --git a/game/images/CG/herm_boob/32.webp b/game/images/CG/herm_boob/32.webp new file mode 100644 index 00000000..16deb4f6 --- /dev/null +++ b/game/images/CG/herm_boob/32.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87be3c5fe58db9f2326a5b2f1cc3c56e3676f86c83601ac2327e229f5bd27bde +size 172806 diff --git a/game/images/CG/herm_boob/33.webp b/game/images/CG/herm_boob/33.webp new file mode 100644 index 00000000..3c11b374 --- /dev/null +++ b/game/images/CG/herm_boob/33.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc8b0be717757a986f780e496f40dc291fc39ff633897114af8e8bab0155777b +size 171368 diff --git a/game/images/CG/herm_boob/34.webp b/game/images/CG/herm_boob/34.webp new file mode 100644 index 00000000..ab69df46 --- /dev/null +++ b/game/images/CG/herm_boob/34.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1e8a05f301c194b964cd9fad89f5e7e146ab7efff1eb9a93a05fe86e54de550 +size 166928 diff --git a/game/images/CG/herm_boob/35.webp b/game/images/CG/herm_boob/35.webp new file mode 100644 index 00000000..1e81bf41 --- /dev/null +++ b/game/images/CG/herm_boob/35.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd89f9d2b3f179a9e67f6b6724303ea3755baef9ed7ae94cecf73e9a8e34bd72 +size 170632 diff --git a/game/images/CG/herm_boob/36.webp b/game/images/CG/herm_boob/36.webp new file mode 100644 index 00000000..bcae5832 --- /dev/null +++ b/game/images/CG/herm_boob/36.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8d05a41bc1259dc98fb16dab1f3cc3e16a329288bb8886308b0f19bd5bff054 +size 168432 diff --git a/game/images/CG/herm_boob/37.webp b/game/images/CG/herm_boob/37.webp new file mode 100644 index 00000000..c8afec5d --- /dev/null +++ b/game/images/CG/herm_boob/37.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a26df78746509f0db6549d97a5afefe47f680c26bdbb0680a48f3aac6b12d208 +size 168078 diff --git a/game/images/CG/herm_boob/4.webp b/game/images/CG/herm_boob/4.webp new file mode 100644 index 00000000..9e0e8e69 --- /dev/null +++ b/game/images/CG/herm_boob/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0de51143d6e790c4c84ee851f4b4202e86d8e47bbc78572426e732e46f7a7882 +size 158722 diff --git a/game/images/CG/herm_boob/5.webp b/game/images/CG/herm_boob/5.webp new file mode 100644 index 00000000..d3af4aa5 --- /dev/null +++ b/game/images/CG/herm_boob/5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a964345173031a8196a92f51c4cfde958bfa7f3fe5c8af4902bbfa9bf9e277b +size 179272 diff --git a/game/images/CG/herm_boob/6.webp b/game/images/CG/herm_boob/6.webp new file mode 100644 index 00000000..ea0df8f4 --- /dev/null +++ b/game/images/CG/herm_boob/6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b096e0d3c586fe2cbe9ef790c4c6e1c024cc962b00b9c3aa6f45e794d5c6d66 +size 178778 diff --git a/game/images/CG/herm_boob/7.webp b/game/images/CG/herm_boob/7.webp new file mode 100644 index 00000000..e1945762 --- /dev/null +++ b/game/images/CG/herm_boob/7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4df94091ae5cfef78fb339190350fe525f20155e978de1923cd9e77d84d0df7 +size 178562 diff --git a/game/images/CG/herm_boob/8.webp b/game/images/CG/herm_boob/8.webp new file mode 100644 index 00000000..41fe2b7b --- /dev/null +++ b/game/images/CG/herm_boob/8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6db56128dc8c2c6c166183d310099d481dd328d5bae67fb226c50af6de5d7a99 +size 178160 diff --git a/game/images/CG/herm_boob/9.webp b/game/images/CG/herm_boob/9.webp new file mode 100644 index 00000000..7b5da746 --- /dev/null +++ b/game/images/CG/herm_boob/9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfd6e9f32a5807984f582fa6987ffed82a486617a8acc89d5ffd6d2f751d9028 +size 179000 diff --git a/game/images/CG/herm_boob/base.webp b/game/images/CG/herm_boob/base.webp new file mode 100644 index 00000000..12824743 --- /dev/null +++ b/game/images/CG/herm_boob/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23885f937c68c008b6d78515385bfc9d72ab84ccde678ae1920384574eb2ed31 +size 156480 diff --git a/game/images/CG/herm_deep/base.webp b/game/images/CG/herm_deep/base.webp new file mode 100644 index 00000000..5fdc87ff --- /dev/null +++ b/game/images/CG/herm_deep/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64961fac821a477df15c0c889f86f46d363f39fa3dad27de24a44899e0a10035 +size 225712 diff --git a/game/images/CG/herm_deep/blank.webp b/game/images/CG/herm_deep/blank.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/images/CG/herm_deep/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/images/CG/herm_deep/body_base.webp b/game/images/CG/herm_deep/body_base.webp new file mode 100644 index 00000000..37aba17d --- /dev/null +++ b/game/images/CG/herm_deep/body_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3ba34a7942d7e2f4ffd1f128d6c2051a4a77d4cd2d5c1f1d7a2feb6a9ff0edc +size 119194 diff --git a/game/images/CG/herm_deep/c_blush.webp b/game/images/CG/herm_deep/c_blush.webp new file mode 100644 index 00000000..358002f1 --- /dev/null +++ b/game/images/CG/herm_deep/c_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e47af08ea14a20906703654f4c3250f3a42a4cddb960066b087f36d74b8be681 +size 6586 diff --git a/game/images/CG/herm_deep/cum.webp b/game/images/CG/herm_deep/cum.webp new file mode 100644 index 00000000..5f976f22 --- /dev/null +++ b/game/images/CG/herm_deep/cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60b2f240d30f3cf1302f2809363c3c67ee67c6d94d7d6641d18a25ea9ab9deeb +size 50600 diff --git a/game/images/CG/herm_deep/cum_2.webp b/game/images/CG/herm_deep/cum_2.webp new file mode 100644 index 00000000..b8f90c43 --- /dev/null +++ b/game/images/CG/herm_deep/cum_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b35ab989f66753f8b1c19d742df99046664a91e90a30a9ea3c4ef63d77e5a51 +size 26178 diff --git a/game/images/CG/herm_deep/eb_mad.webp b/game/images/CG/herm_deep/eb_mad.webp new file mode 100644 index 00000000..4b34aedd --- /dev/null +++ b/game/images/CG/herm_deep/eb_mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:120e25c4b68287bc1e7d9efdd4a4521c3301407bfef9f8c5235b7fb5fb76f78c +size 4608 diff --git a/game/images/CG/herm_deep/eb_raised.webp b/game/images/CG/herm_deep/eb_raised.webp new file mode 100644 index 00000000..a0f37c34 --- /dev/null +++ b/game/images/CG/herm_deep/eb_raised.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eab9609c0d1bdb29919c4652632f303d9bfbf8d27f4b5977963e6e1120334575 +size 3368 diff --git a/game/images/CG/herm_deep/eb_sad.webp b/game/images/CG/herm_deep/eb_sad.webp new file mode 100644 index 00000000..9ec5d26c --- /dev/null +++ b/game/images/CG/herm_deep/eb_sad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9bbb53c5547b3345e5c9fc0ee8ad8dc03e5dcfefed64c714a63c9e2ea00fce9 +size 3734 diff --git a/game/images/CG/herm_deep/eye_base.webp b/game/images/CG/herm_deep/eye_base.webp new file mode 100644 index 00000000..c44e6dc6 --- /dev/null +++ b/game/images/CG/herm_deep/eye_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c959c8a2c8dcd66ea8c6f6cad0f8466fc87e9a0eae29b30ae8c20e2a6f13a28 +size 2416 diff --git a/game/images/CG/herm_deep/eye_closed.webp b/game/images/CG/herm_deep/eye_closed.webp new file mode 100644 index 00000000..1d6f5190 --- /dev/null +++ b/game/images/CG/herm_deep/eye_closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75408c6bd52a78252111fd27968f1a21d0eaede46e0ddfca9c4b1e4818a9ba8d +size 3286 diff --git a/game/images/CG/herm_deep/eye_happyCl.webp b/game/images/CG/herm_deep/eye_happyCl.webp new file mode 100644 index 00000000..898d4013 --- /dev/null +++ b/game/images/CG/herm_deep/eye_happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:486f3d6ed44c90025733f94c7aad8626d5d28fb793195fdaf20296ec1d2505e7 +size 3208 diff --git a/game/images/CG/herm_deep/eye_squeeze.webp b/game/images/CG/herm_deep/eye_squeeze.webp new file mode 100644 index 00000000..538917d1 --- /dev/null +++ b/game/images/CG/herm_deep/eye_squeeze.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2de8ea7f1bb9e8598b0c2590fbafd009e0472e5d74720ffb0bde9830afbe563a +size 4636 diff --git a/game/images/CG/herm_deep/eye_squint.webp b/game/images/CG/herm_deep/eye_squint.webp new file mode 100644 index 00000000..0ca7e0b6 --- /dev/null +++ b/game/images/CG/herm_deep/eye_squint.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf605ab3800eb5ecfa82ba5e1db57af3e21811b3a791de214cb2a1d216bb5491 +size 3070 diff --git a/game/images/CG/herm_deep/eye_squint_m.webp b/game/images/CG/herm_deep/eye_squint_m.webp new file mode 100644 index 00000000..ab937183 --- /dev/null +++ b/game/images/CG/herm_deep/eye_squint_m.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0928141275f8259c3520107d59a1722b14072c6c90e428a213007d0690b77cb6 +size 3742 diff --git a/game/images/CG/herm_deep/eye_white.webp b/game/images/CG/herm_deep/eye_white.webp new file mode 100644 index 00000000..610e77f8 --- /dev/null +++ b/game/images/CG/herm_deep/eye_white.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:328e622b602b97e0d79ee3dad3a81be037c7a04f7b23d4493aaa6c91047ffabd +size 1618 diff --git a/game/images/CG/herm_deep/genie.webp b/game/images/CG/herm_deep/genie.webp new file mode 100644 index 00000000..533ffb9c --- /dev/null +++ b/game/images/CG/herm_deep/genie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05b740d4faad0e3668292df5fdbce7a5c4fba119eba60d2811849427ccc9525f +size 71920 diff --git a/game/images/CG/herm_deep/hand.webp b/game/images/CG/herm_deep/hand.webp new file mode 100644 index 00000000..f2c4a75a --- /dev/null +++ b/game/images/CG/herm_deep/hand.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64db01f2bd6177e151096dbde696a377f59c1aa199a1de1d0cd7444c4a82378a +size 34306 diff --git a/game/images/CG/herm_deep/m_base.webp b/game/images/CG/herm_deep/m_base.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/images/CG/herm_deep/m_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/images/CG/herm_deep/m_full.webp b/game/images/CG/herm_deep/m_full.webp new file mode 100644 index 00000000..568b63aa --- /dev/null +++ b/game/images/CG/herm_deep/m_full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c6154094a3d52d901b368df4616e427331d2198b8fb43854b13c4dce5b53949 +size 6378 diff --git a/game/images/CG/herm_deep/mascara.webp b/game/images/CG/herm_deep/mascara.webp new file mode 100644 index 00000000..0e98dbec --- /dev/null +++ b/game/images/CG/herm_deep/mascara.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26f6c4315fe4844f90e1cfd732d4b83e7050e819a07e95180826f5fc05eac9b2 +size 4458 diff --git a/game/images/CG/herm_deep/pup_ahegao.webp b/game/images/CG/herm_deep/pup_ahegao.webp new file mode 100644 index 00000000..ef2d9345 --- /dev/null +++ b/game/images/CG/herm_deep/pup_ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef4d5a8b9fb0153ed245ce75d0f919b29f12808bc58697c3f6f90cb4cbca1226 +size 784 diff --git a/game/images/CG/herm_deep/pup_left.webp b/game/images/CG/herm_deep/pup_left.webp new file mode 100644 index 00000000..8f9851ee --- /dev/null +++ b/game/images/CG/herm_deep/pup_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:699d86e8d6bdbeb52fb33b5eaa1600b57b2fb3c1987c30cc2cfcc7e3ac9d17ce +size 862 diff --git a/game/images/CG/herm_deep/pup_mid.webp b/game/images/CG/herm_deep/pup_mid.webp new file mode 100644 index 00000000..dd4abf3f --- /dev/null +++ b/game/images/CG/herm_deep/pup_mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8e2e5d9abc4fb85d05e999bc3b1f23f45e2a996de5901f3a786433a21fc51ad +size 870 diff --git a/game/images/CG/herm_deep/pup_right.webp b/game/images/CG/herm_deep/pup_right.webp new file mode 100644 index 00000000..17caa759 --- /dev/null +++ b/game/images/CG/herm_deep/pup_right.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aeb4d0a49342d7d932d7f393572ec8ed8778293e48f2171b3582d57a5ea557ea +size 868 diff --git a/game/images/CG/herm_deep/pup_up.webp b/game/images/CG/herm_deep/pup_up.webp new file mode 100644 index 00000000..ef065f04 --- /dev/null +++ b/game/images/CG/herm_deep/pup_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3504b75f0f89e0dc9d04c2d65bc74bb294751a9bfb326c52d141ee4240637a07 +size 814 diff --git a/game/images/CG/herm_deep/sweat.webp b/game/images/CG/herm_deep/sweat.webp new file mode 100644 index 00000000..809a9c9f --- /dev/null +++ b/game/images/CG/herm_deep/sweat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6213934c238396e7e95a192349db0fb54e63a125ac87e1a969f386fe2ac3f37f +size 2968 diff --git a/game/images/CG/herm_deep/tears.webp b/game/images/CG/herm_deep/tears.webp new file mode 100644 index 00000000..6e202283 --- /dev/null +++ b/game/images/CG/herm_deep/tears.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a72d9181a6ec88509600bd2bc7c1565d6fdda54f7077e64cd9f57a98b105e45 +size 5640 diff --git a/game/images/CG/herm_forest/1.webp b/game/images/CG/herm_forest/1.webp new file mode 100644 index 00000000..92ca2637 --- /dev/null +++ b/game/images/CG/herm_forest/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:044322d69d17bc5c0e91a8abee25686a5f5e86c8c38d8e716b785d401e45ce33 +size 176306 diff --git a/game/images/CG/herm_forest/10.webp b/game/images/CG/herm_forest/10.webp new file mode 100644 index 00000000..f325b018 --- /dev/null +++ b/game/images/CG/herm_forest/10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ad833b0c47d490b3fe962215855714856ff84354a07a304685b433d56988ab1 +size 173720 diff --git a/game/images/CG/herm_forest/11.webp b/game/images/CG/herm_forest/11.webp new file mode 100644 index 00000000..2a1d5600 --- /dev/null +++ b/game/images/CG/herm_forest/11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53cb4abd41b84782f57e84acdb5265a65bb5c6e775f1baead4b6d8e3a5334851 +size 176134 diff --git a/game/images/CG/herm_forest/12.webp b/game/images/CG/herm_forest/12.webp new file mode 100644 index 00000000..9045a657 --- /dev/null +++ b/game/images/CG/herm_forest/12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95b9fc21b39434ed1ba6dde9e868798094fa15b97573f03d4580f219d945f4fa +size 173928 diff --git a/game/images/CG/herm_forest/13.webp b/game/images/CG/herm_forest/13.webp new file mode 100644 index 00000000..4c1249d0 --- /dev/null +++ b/game/images/CG/herm_forest/13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92efbe6e7eed1cf821afd88158b76e377377d8233836a4c8b42471e88690c0f5 +size 173718 diff --git a/game/images/CG/herm_forest/14.webp b/game/images/CG/herm_forest/14.webp new file mode 100644 index 00000000..147765dd --- /dev/null +++ b/game/images/CG/herm_forest/14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c80dffba332b14cb7f5c64f60a91f41e1dd57450860a9acea7a12425e4efaf9 +size 161938 diff --git a/game/images/CG/herm_forest/15.webp b/game/images/CG/herm_forest/15.webp new file mode 100644 index 00000000..2c9a541d --- /dev/null +++ b/game/images/CG/herm_forest/15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ecc5130cedfbc9e5c50c7b93eb82d626c69a921cf2dd2a5b09724fa04e6d4d2 +size 178002 diff --git a/game/images/CG/herm_forest/16.webp b/game/images/CG/herm_forest/16.webp new file mode 100644 index 00000000..ad30ca8c --- /dev/null +++ b/game/images/CG/herm_forest/16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f23dee5dd547a0cdda860d7a8c0a9af77679eb07e051cb9d8dabd5ee8a58927b +size 162422 diff --git a/game/images/CG/herm_forest/17.webp b/game/images/CG/herm_forest/17.webp new file mode 100644 index 00000000..d7f3e5bb --- /dev/null +++ b/game/images/CG/herm_forest/17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e233752ddf40e18489de472195d288f3b139f932c535da081be857cfa87e15d +size 178194 diff --git a/game/images/CG/herm_forest/18.webp b/game/images/CG/herm_forest/18.webp new file mode 100644 index 00000000..59e9e189 --- /dev/null +++ b/game/images/CG/herm_forest/18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ab78d655542285af39971ec042ae55255d7a81787d869f039276bbb3f35fe22 +size 162782 diff --git a/game/images/CG/herm_forest/19.webp b/game/images/CG/herm_forest/19.webp new file mode 100644 index 00000000..b413fbae --- /dev/null +++ b/game/images/CG/herm_forest/19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15deae6a379fd2feed945d043e2c2804d32cd92f9dd753c5b78e5b596a1994cb +size 177810 diff --git a/game/images/CG/herm_forest/2.webp b/game/images/CG/herm_forest/2.webp new file mode 100644 index 00000000..8f1e81a5 --- /dev/null +++ b/game/images/CG/herm_forest/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e2e205e99247ab9e701f06b4ae55d688d620d6a28a27ce979492f70c9b7b0f4 +size 173164 diff --git a/game/images/CG/herm_forest/20.webp b/game/images/CG/herm_forest/20.webp new file mode 100644 index 00000000..a60b00f0 --- /dev/null +++ b/game/images/CG/herm_forest/20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4db962a0a81b78fae20c507abfe10c4b32ea4b98b741b8c928fed3bb5ee3745 +size 162896 diff --git a/game/images/CG/herm_forest/21.webp b/game/images/CG/herm_forest/21.webp new file mode 100644 index 00000000..b4aff5fe --- /dev/null +++ b/game/images/CG/herm_forest/21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c9d3731cef686f9a9d283c4c7de001e9b73553368d6469dd1fdac8fbdb5224b +size 177342 diff --git a/game/images/CG/herm_forest/22.webp b/game/images/CG/herm_forest/22.webp new file mode 100644 index 00000000..4539f0ef --- /dev/null +++ b/game/images/CG/herm_forest/22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73f196d146daefc940afe9c7dbbd17ccf7d987d8942a29d7cc78faa93fd55eff +size 162638 diff --git a/game/images/CG/herm_forest/23.webp b/game/images/CG/herm_forest/23.webp new file mode 100644 index 00000000..ee60d97c --- /dev/null +++ b/game/images/CG/herm_forest/23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7c71aba67567e0725b60c4746accd58337907209af1930bd2ca092e5fd184c5 +size 206890 diff --git a/game/images/CG/herm_forest/24.webp b/game/images/CG/herm_forest/24.webp new file mode 100644 index 00000000..c25ddb3a --- /dev/null +++ b/game/images/CG/herm_forest/24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a86ddae196d66bc8a1c99dab7ee0f8f8f198eb3806b9b8686d870b4362b87046 +size 164822 diff --git a/game/images/CG/herm_forest/25.webp b/game/images/CG/herm_forest/25.webp new file mode 100644 index 00000000..fd4fe940 --- /dev/null +++ b/game/images/CG/herm_forest/25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:058e71fb125144d8c2e9114ba337768a4c96c0058aad08ae259cd1358924af95 +size 208788 diff --git a/game/images/CG/herm_forest/26.webp b/game/images/CG/herm_forest/26.webp new file mode 100644 index 00000000..0e36adb9 --- /dev/null +++ b/game/images/CG/herm_forest/26.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3348ce7c30030a3109b34d362ee6cef8cc8fa2858dad9ed93ea25e83dd6cb040 +size 165424 diff --git a/game/images/CG/herm_forest/27.webp b/game/images/CG/herm_forest/27.webp new file mode 100644 index 00000000..c78e0201 --- /dev/null +++ b/game/images/CG/herm_forest/27.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fff1b271c529a235f29b5602cdd9f535534587cce44704d1cc83dacd61b5bbf0 +size 168214 diff --git a/game/images/CG/herm_forest/28.webp b/game/images/CG/herm_forest/28.webp new file mode 100644 index 00000000..65cccd5c --- /dev/null +++ b/game/images/CG/herm_forest/28.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82372d57b2c0755f837b9de56ad879f808238988eb9db080f612722a168b108b +size 162984 diff --git a/game/images/CG/herm_forest/29.webp b/game/images/CG/herm_forest/29.webp new file mode 100644 index 00000000..bf80abe1 --- /dev/null +++ b/game/images/CG/herm_forest/29.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3b54890d5d3a3f0768d3ec0dde5062c4a6cd7c8214eb4481736fa17e44b30c2 +size 206930 diff --git a/game/images/CG/herm_forest/3.webp b/game/images/CG/herm_forest/3.webp new file mode 100644 index 00000000..7cc5c0b3 --- /dev/null +++ b/game/images/CG/herm_forest/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3ea4526a72bd57fb0ee0fa4c4d8044c79a4349b637c15817f4d8f41a7d6c0a9 +size 173774 diff --git a/game/images/CG/herm_forest/30.webp b/game/images/CG/herm_forest/30.webp new file mode 100644 index 00000000..6c27c809 --- /dev/null +++ b/game/images/CG/herm_forest/30.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb37e1f10602426f32ac663270ec65b1585c0dd116912df737d3f6b48b48feb4 +size 163464 diff --git a/game/images/CG/herm_forest/31.webp b/game/images/CG/herm_forest/31.webp new file mode 100644 index 00000000..7c030ffb --- /dev/null +++ b/game/images/CG/herm_forest/31.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80b26da8efea3e91bbd25fa90091b4562c4aa45c43e320ae165e209a62cf2af8 +size 208106 diff --git a/game/images/CG/herm_forest/32.webp b/game/images/CG/herm_forest/32.webp new file mode 100644 index 00000000..6c07f6a2 --- /dev/null +++ b/game/images/CG/herm_forest/32.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2e5f91f6ac16780983bd043f966eec983ddc5578dc2ba85701379396b8a5c70 +size 164798 diff --git a/game/images/CG/herm_forest/33.webp b/game/images/CG/herm_forest/33.webp new file mode 100644 index 00000000..b31846ee --- /dev/null +++ b/game/images/CG/herm_forest/33.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32e57dcd18a667c4656ac7c84feacea24af3b4d4b70220bac9b0b9db46c49440 +size 208866 diff --git a/game/images/CG/herm_forest/34.webp b/game/images/CG/herm_forest/34.webp new file mode 100644 index 00000000..926ebf5a --- /dev/null +++ b/game/images/CG/herm_forest/34.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e98e4358d6d83a21e5d0c5594f7d6a487997701f4b5cebf16aa4c8fc9d3fecca +size 167224 diff --git a/game/images/CG/herm_forest/35.webp b/game/images/CG/herm_forest/35.webp new file mode 100644 index 00000000..2db55fbe --- /dev/null +++ b/game/images/CG/herm_forest/35.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a91446d13634b649f88072459f188549fe0b75fe04e426f9228c5328ca49ae46 +size 209656 diff --git a/game/images/CG/herm_forest/36.webp b/game/images/CG/herm_forest/36.webp new file mode 100644 index 00000000..b92f204a --- /dev/null +++ b/game/images/CG/herm_forest/36.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:752f8f19df2215b7072a27ec14565d23a96244b401b176b8a50b5db3307259fa +size 167620 diff --git a/game/images/CG/herm_forest/37.webp b/game/images/CG/herm_forest/37.webp new file mode 100644 index 00000000..2db55fbe --- /dev/null +++ b/game/images/CG/herm_forest/37.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a91446d13634b649f88072459f188549fe0b75fe04e426f9228c5328ca49ae46 +size 209656 diff --git a/game/images/CG/herm_forest/38.webp b/game/images/CG/herm_forest/38.webp new file mode 100644 index 00000000..c8519772 --- /dev/null +++ b/game/images/CG/herm_forest/38.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77832657e1701369371537f5062d018027bd771fd8453662c25cc2c8c6a88da0 +size 167452 diff --git a/game/images/CG/herm_forest/39.webp b/game/images/CG/herm_forest/39.webp new file mode 100644 index 00000000..006d1b3b --- /dev/null +++ b/game/images/CG/herm_forest/39.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8e79cba04970b3b65de25e168c22f293652cf8ec9e3bd26c9e443b1c70cbce0 +size 168844 diff --git a/game/images/CG/herm_forest/4.webp b/game/images/CG/herm_forest/4.webp new file mode 100644 index 00000000..169bb754 --- /dev/null +++ b/game/images/CG/herm_forest/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b8bf482cf3842a2b2cbcbef23b358509b2b35d22372d8497454c2ec8d8f248c +size 161300 diff --git a/game/images/CG/herm_forest/40.webp b/game/images/CG/herm_forest/40.webp new file mode 100644 index 00000000..cf759491 --- /dev/null +++ b/game/images/CG/herm_forest/40.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62c7dc55e7673e44d5ce0a88bb5b50e275b2d8da1ad01bc6e1fea7e217b6f065 +size 211186 diff --git a/game/images/CG/herm_forest/41.webp b/game/images/CG/herm_forest/41.webp new file mode 100644 index 00000000..af390ec2 --- /dev/null +++ b/game/images/CG/herm_forest/41.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d29dc46042d48f5a7200d376e1fb95c9f14874ac08f353bd1e2304cf2edd0b5 +size 174860 diff --git a/game/images/CG/herm_forest/42.webp b/game/images/CG/herm_forest/42.webp new file mode 100644 index 00000000..6245d202 --- /dev/null +++ b/game/images/CG/herm_forest/42.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3097671677a65f8fe70b660008ffeac0b29b5c1b4717b8aee0656a76a01e4a3e +size 217376 diff --git a/game/images/CG/herm_forest/43.webp b/game/images/CG/herm_forest/43.webp new file mode 100644 index 00000000..cc5e7cd7 --- /dev/null +++ b/game/images/CG/herm_forest/43.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a7b4fb0bec9e1f025803a0c5650e13943350516f83700f7198197d4f48a9613 +size 163052 diff --git a/game/images/CG/herm_forest/44.webp b/game/images/CG/herm_forest/44.webp new file mode 100644 index 00000000..f89e9027 --- /dev/null +++ b/game/images/CG/herm_forest/44.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:938af4ef3d9d81d6156c5714d4ad4817a56b43931a54fd09c0caf2a519d93895 +size 210120 diff --git a/game/images/CG/herm_forest/45.webp b/game/images/CG/herm_forest/45.webp new file mode 100644 index 00000000..1e8891c5 --- /dev/null +++ b/game/images/CG/herm_forest/45.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:599ac38dd73e38dd0d24b64041edbdbde039c72446198c012582769a1cf0b3a4 +size 183326 diff --git a/game/images/CG/herm_forest/46.webp b/game/images/CG/herm_forest/46.webp new file mode 100644 index 00000000..b38e0da9 --- /dev/null +++ b/game/images/CG/herm_forest/46.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1db191cf82d8c9bcdd6da437dbb731d75b0828d3e71a5034e0b339690651feb9 +size 182960 diff --git a/game/images/CG/herm_forest/47.webp b/game/images/CG/herm_forest/47.webp new file mode 100644 index 00000000..78afe077 --- /dev/null +++ b/game/images/CG/herm_forest/47.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42bafc464577617a2409c6a139a4639482154543c9134bce5551e4325bc9bdb6 +size 192550 diff --git a/game/images/CG/herm_forest/48.webp b/game/images/CG/herm_forest/48.webp new file mode 100644 index 00000000..bbbc3321 --- /dev/null +++ b/game/images/CG/herm_forest/48.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21a67ff2219059f82c0f7bcf886e6334d308b37ecf4010b4bc65de8d30e936cc +size 196652 diff --git a/game/images/CG/herm_forest/49.webp b/game/images/CG/herm_forest/49.webp new file mode 100644 index 00000000..6d01ca77 --- /dev/null +++ b/game/images/CG/herm_forest/49.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0989af301fa2396b7a49b5d3e09482f77319b8f0c263e123659e7c7c318cebc9 +size 199306 diff --git a/game/images/CG/herm_forest/5.webp b/game/images/CG/herm_forest/5.webp new file mode 100644 index 00000000..5a0463e1 --- /dev/null +++ b/game/images/CG/herm_forest/5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:370e7a4334c4252ea988b895f53c5fe16e2850b2a0b039f4744065b9bb087037 +size 176264 diff --git a/game/images/CG/herm_forest/50.webp b/game/images/CG/herm_forest/50.webp new file mode 100644 index 00000000..a57ee1bc --- /dev/null +++ b/game/images/CG/herm_forest/50.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67ab0021b2c9a41227fd8a850fc3c7c2ae8b15b9e537184bf35a9f734c4f451e +size 197674 diff --git a/game/images/CG/herm_forest/6.webp b/game/images/CG/herm_forest/6.webp new file mode 100644 index 00000000..ee9d8c1c --- /dev/null +++ b/game/images/CG/herm_forest/6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6ceee6b76ca99280bc0e8ffc7b54bbd6d1dd993f2e7fd625f511fa6dc07b11b +size 173580 diff --git a/game/images/CG/herm_forest/7.webp b/game/images/CG/herm_forest/7.webp new file mode 100644 index 00000000..9f10e316 --- /dev/null +++ b/game/images/CG/herm_forest/7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60223f987b1486ef9319fef475d156346460e75bed8aae03d1c3860f10581d13 +size 161420 diff --git a/game/images/CG/herm_forest/8.webp b/game/images/CG/herm_forest/8.webp new file mode 100644 index 00000000..c9744db7 --- /dev/null +++ b/game/images/CG/herm_forest/8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37a5f3f96983c1294fc7f961cdde48ecb8f54ec3eba3025b2afd1783626d16b6 +size 162180 diff --git a/game/images/CG/herm_forest/9.webp b/game/images/CG/herm_forest/9.webp new file mode 100644 index 00000000..5b90e4f1 --- /dev/null +++ b/game/images/CG/herm_forest/9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5efad4a6577b4b0943f175240a5b64abd758eb0748605d2ae4d5f07154e17c2 +size 176214 diff --git a/game/images/CG/herm_forest/base.webp b/game/images/CG/herm_forest/base.webp new file mode 100644 index 00000000..d22def2f --- /dev/null +++ b/game/images/CG/herm_forest/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd018ab83cd6b96d13f86255c1683c7284ae7606b55dab6aef824d3e968809f8 +size 69170 diff --git a/game/images/CG/herm_forest/m1.webp b/game/images/CG/herm_forest/m1.webp new file mode 100644 index 00000000..084b5e35 --- /dev/null +++ b/game/images/CG/herm_forest/m1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bfd7cef62c46936ac4be6d8e02579a8043718cb4f7e31210632eb01d6e89432 +size 153010 diff --git a/game/images/CG/herm_forest/m2.webp b/game/images/CG/herm_forest/m2.webp new file mode 100644 index 00000000..c214e442 --- /dev/null +++ b/game/images/CG/herm_forest/m2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dde3b2566a3fb9f20e6261c392fd1aa13e3f62cb8593449c784bfd4b16aeedcb +size 155164 diff --git a/game/images/CG/herm_forest/m3.webp b/game/images/CG/herm_forest/m3.webp new file mode 100644 index 00000000..328dd5c7 --- /dev/null +++ b/game/images/CG/herm_forest/m3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d38826978493d755042900c1bca64bce9fd0f5cc8fcbf9d5a47ad956cab6dea6 +size 261118 diff --git a/game/images/CG/herm_forest/overlay.webp b/game/images/CG/herm_forest/overlay.webp new file mode 100644 index 00000000..7fe1042f --- /dev/null +++ b/game/images/CG/herm_forest/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d855ce617dd1aa45c9703e8027011343a16d3b8ed75c3db6c6498ced95be5c88 +size 28020 diff --git a/game/images/CG/herm_sex/1.webp b/game/images/CG/herm_sex/1.webp new file mode 100644 index 00000000..d6625af0 --- /dev/null +++ b/game/images/CG/herm_sex/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d0a6c4ca2c6922ab561c15e622d38d055256520c4684ee2aef229e35b6976b9 +size 343532 diff --git a/game/images/CG/herm_sex/10.webp b/game/images/CG/herm_sex/10.webp new file mode 100644 index 00000000..daf8496c --- /dev/null +++ b/game/images/CG/herm_sex/10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39e17abb2f8416b75c497157c17095ea37b71c26a1322032da82f0df5475d3b3 +size 343520 diff --git a/game/images/CG/herm_sex/11.webp b/game/images/CG/herm_sex/11.webp new file mode 100644 index 00000000..eddb73d0 --- /dev/null +++ b/game/images/CG/herm_sex/11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41247c42294f332c77610ddb9b6d0e82970a257926672a561b7206136d930320 +size 342912 diff --git a/game/images/CG/herm_sex/12.webp b/game/images/CG/herm_sex/12.webp new file mode 100644 index 00000000..328a7980 --- /dev/null +++ b/game/images/CG/herm_sex/12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7eaf372b1411b95cdf57377f6332d4e2b579c7b989852f6e43e10d9ce51ebe06 +size 344122 diff --git a/game/images/CG/herm_sex/13.webp b/game/images/CG/herm_sex/13.webp new file mode 100644 index 00000000..88eea286 --- /dev/null +++ b/game/images/CG/herm_sex/13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f711e6556e2ec6c2d4a6afa152a9fcb4017ab6c06146326e78f9e56d66c563c5 +size 343552 diff --git a/game/images/CG/herm_sex/14.webp b/game/images/CG/herm_sex/14.webp new file mode 100644 index 00000000..a41daba5 --- /dev/null +++ b/game/images/CG/herm_sex/14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7716482684e81c55806ede44a7172aa0fa577bcc9dc1907d060597efd60f34bd +size 344032 diff --git a/game/images/CG/herm_sex/15.webp b/game/images/CG/herm_sex/15.webp new file mode 100644 index 00000000..c8d5bc9d --- /dev/null +++ b/game/images/CG/herm_sex/15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:128a4fe7ece9e58048b9e6149f76f52d36e119ab0b8ba96786c4ce48e3067784 +size 343514 diff --git a/game/images/CG/herm_sex/16.webp b/game/images/CG/herm_sex/16.webp new file mode 100644 index 00000000..542d37e7 --- /dev/null +++ b/game/images/CG/herm_sex/16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39489f6964c5bae5148cf671d09067ae632656db996febbd00e9fc4611562764 +size 343724 diff --git a/game/images/CG/herm_sex/17.webp b/game/images/CG/herm_sex/17.webp new file mode 100644 index 00000000..627d5726 --- /dev/null +++ b/game/images/CG/herm_sex/17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6202ecf707035df21976eb5e3576adbf8e23eea626d20878ca44ed3907e16093 +size 344094 diff --git a/game/images/CG/herm_sex/18.webp b/game/images/CG/herm_sex/18.webp new file mode 100644 index 00000000..363a1fae --- /dev/null +++ b/game/images/CG/herm_sex/18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc9cf7c22ee74ec11961a17f4d08aa8e6883adc2bb35c58f0aafbbc1168e563b +size 343928 diff --git a/game/images/CG/herm_sex/19.webp b/game/images/CG/herm_sex/19.webp new file mode 100644 index 00000000..4e35b52b --- /dev/null +++ b/game/images/CG/herm_sex/19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c1e5c3fd3481f11a2c2d8442ae14f9e0f3170e539b70ec3fd5bd88bda5fe289 +size 343792 diff --git a/game/images/CG/herm_sex/2.webp b/game/images/CG/herm_sex/2.webp new file mode 100644 index 00000000..0309b897 --- /dev/null +++ b/game/images/CG/herm_sex/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ba0c5697a3e153380a1a37940bf3af532d8813c294ce2eeac62c32fc3715152 +size 343054 diff --git a/game/images/CG/herm_sex/20.webp b/game/images/CG/herm_sex/20.webp new file mode 100644 index 00000000..9435f51c --- /dev/null +++ b/game/images/CG/herm_sex/20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a13547ce0d7c0a050a22e955fb0866702ecbd6b31862a29a762dc134ed3f159 +size 344510 diff --git a/game/images/CG/herm_sex/21.webp b/game/images/CG/herm_sex/21.webp new file mode 100644 index 00000000..db223240 --- /dev/null +++ b/game/images/CG/herm_sex/21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3287c30cdffdaf5c82a181ed054bc082350287a5b5d5ab1b0174300f21e66b1 +size 343596 diff --git a/game/images/CG/herm_sex/22.webp b/game/images/CG/herm_sex/22.webp new file mode 100644 index 00000000..82c8bf06 --- /dev/null +++ b/game/images/CG/herm_sex/22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bdbf80fad7f80ad3f699759d57dc3154bea9e340eb02344f5f2fec18a3a9f09 +size 343854 diff --git a/game/images/CG/herm_sex/23.webp b/game/images/CG/herm_sex/23.webp new file mode 100644 index 00000000..8a9a2f55 --- /dev/null +++ b/game/images/CG/herm_sex/23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da7bdf47b036c1b20154205eb1aaf9c531705e0b9fe7bbf3eaa34a1b08fa1fea +size 344418 diff --git a/game/images/CG/herm_sex/24.webp b/game/images/CG/herm_sex/24.webp new file mode 100644 index 00000000..053b8eab --- /dev/null +++ b/game/images/CG/herm_sex/24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3aa7498dbce525b8e7d8e61335efd28923158f0770b4d5169a82675138853ae1 +size 344130 diff --git a/game/images/CG/herm_sex/25.webp b/game/images/CG/herm_sex/25.webp new file mode 100644 index 00000000..7683161d --- /dev/null +++ b/game/images/CG/herm_sex/25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cf3f4020368bc860704d4812a8e14c4ea2340c314d61d454ddbaa248d5987d2 +size 343884 diff --git a/game/images/CG/herm_sex/26.webp b/game/images/CG/herm_sex/26.webp new file mode 100644 index 00000000..07a6795d --- /dev/null +++ b/game/images/CG/herm_sex/26.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e492087fed977accca90bf78b42141a778b6153afc70c4b2b50fa64f5ac7f09 +size 344578 diff --git a/game/images/CG/herm_sex/27.webp b/game/images/CG/herm_sex/27.webp new file mode 100644 index 00000000..a4f125fd --- /dev/null +++ b/game/images/CG/herm_sex/27.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9051f970b33d6b4c1b9a2963d0795e9f82e6d7c02d642bbe2d4c94eb046f1b08 +size 344154 diff --git a/game/images/CG/herm_sex/28.webp b/game/images/CG/herm_sex/28.webp new file mode 100644 index 00000000..fd269a6e --- /dev/null +++ b/game/images/CG/herm_sex/28.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0628b78cccc347424984bc1b435471760a593d186a8a61db014f3e52f020feed +size 343156 diff --git a/game/images/CG/herm_sex/29.webp b/game/images/CG/herm_sex/29.webp new file mode 100644 index 00000000..20a9f91b --- /dev/null +++ b/game/images/CG/herm_sex/29.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:debc78018999ab9bcd8eb4a482bc77411411b11dafa01da9506189c96147bb0e +size 343942 diff --git a/game/images/CG/herm_sex/3.webp b/game/images/CG/herm_sex/3.webp new file mode 100644 index 00000000..81e6c6f3 --- /dev/null +++ b/game/images/CG/herm_sex/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c5a01ec4288f7586528b996a6f34089b0c0d67508794152a71fe7bca2f5bcd5 +size 344192 diff --git a/game/images/CG/herm_sex/30.webp b/game/images/CG/herm_sex/30.webp new file mode 100644 index 00000000..367262f7 --- /dev/null +++ b/game/images/CG/herm_sex/30.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71c66db7c59f0cc95824046ba549751307c5b4aeaf8a6012a4a9bcc6fb8cc5a9 +size 343766 diff --git a/game/images/CG/herm_sex/31.webp b/game/images/CG/herm_sex/31.webp new file mode 100644 index 00000000..f04bf7a6 --- /dev/null +++ b/game/images/CG/herm_sex/31.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7f0ccd5304d4c3e78d7a448fca56f43236fe1b399a5971c1bcf162288ebeb2b +size 343320 diff --git a/game/images/CG/herm_sex/32.webp b/game/images/CG/herm_sex/32.webp new file mode 100644 index 00000000..01a451ca --- /dev/null +++ b/game/images/CG/herm_sex/32.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80a5faee227de309a20a0a438ea216f7781ebf96e9d82774f1abded623a7c7c9 +size 342944 diff --git a/game/images/CG/herm_sex/33.webp b/game/images/CG/herm_sex/33.webp new file mode 100644 index 00000000..db212cf8 --- /dev/null +++ b/game/images/CG/herm_sex/33.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba48d23bf73749655658df242036e55cb85604102a606dae4bf51ebd18a4b3f3 +size 343564 diff --git a/game/images/CG/herm_sex/34.webp b/game/images/CG/herm_sex/34.webp new file mode 100644 index 00000000..c4224939 --- /dev/null +++ b/game/images/CG/herm_sex/34.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d892473899491ddf6444940329cda18e35c422676ac70740242b78881a9ee3b +size 343290 diff --git a/game/images/CG/herm_sex/35.webp b/game/images/CG/herm_sex/35.webp new file mode 100644 index 00000000..45ce2fd8 --- /dev/null +++ b/game/images/CG/herm_sex/35.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70575afffcf78b46676d03932e37100b955fbe33469c3d80bfb8cbe4aa15d543 +size 343122 diff --git a/game/images/CG/herm_sex/4.webp b/game/images/CG/herm_sex/4.webp new file mode 100644 index 00000000..bf3fdd84 --- /dev/null +++ b/game/images/CG/herm_sex/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4dbfdba6a8589a29b7f98ead6c28f96ccefabdca289c12d2bdeff806d133947 +size 343002 diff --git a/game/images/CG/herm_sex/5.webp b/game/images/CG/herm_sex/5.webp new file mode 100644 index 00000000..d9ea78f9 --- /dev/null +++ b/game/images/CG/herm_sex/5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9352d664b7c57560ac4ebde3038d17d6dba059b4c9e19a1fe9049fd92db8650d +size 343488 diff --git a/game/images/CG/herm_sex/6.webp b/game/images/CG/herm_sex/6.webp new file mode 100644 index 00000000..3770aaa0 --- /dev/null +++ b/game/images/CG/herm_sex/6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4e0e0158996ab85a6a08bd9166e10258ff022832fd9541389c23e683b29c029 +size 343226 diff --git a/game/images/CG/herm_sex/7.webp b/game/images/CG/herm_sex/7.webp new file mode 100644 index 00000000..f19464c2 --- /dev/null +++ b/game/images/CG/herm_sex/7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2a617a2004acc64b6f626d27b5ef91ade2b5ccbb9d4480533131d5449438c24 +size 344350 diff --git a/game/images/CG/herm_sex/8.webp b/game/images/CG/herm_sex/8.webp new file mode 100644 index 00000000..cbedc929 --- /dev/null +++ b/game/images/CG/herm_sex/8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c5f05fd76d4bf72f1cad589ca5ed5e275a2a3017044d8ab92dfb61a78123bc3 +size 343938 diff --git a/game/images/CG/herm_sex/9.webp b/game/images/CG/herm_sex/9.webp new file mode 100644 index 00000000..27964e2f --- /dev/null +++ b/game/images/CG/herm_sex/9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7cb1470fd4f4516cb0f1058b64b6a4619b14ab8b0423d456903b329c963d6cca +size 343566 diff --git a/game/images/CG/herm_sex/base.webp b/game/images/CG/herm_sex/base.webp new file mode 100644 index 00000000..79962b41 --- /dev/null +++ b/game/images/CG/herm_sex/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f877f69af29e3e03a9c9c1135668297f072e668aec23b72de209baceae9ad609 +size 342520 diff --git a/game/images/CG/herm_sex/blank.webp b/game/images/CG/herm_sex/blank.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/images/CG/herm_sex/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/images/CG/herm_sex/genie_hand.webp b/game/images/CG/herm_sex/genie_hand.webp new file mode 100644 index 00000000..9f8bb557 --- /dev/null +++ b/game/images/CG/herm_sex/genie_hand.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98eb8d9e45ac652601aa25fa2986af4d13ea8c317fade790a1fdf8336f038df7 +size 5356 diff --git a/game/images/CG/herm_sex/hair.webp b/game/images/CG/herm_sex/hair.webp new file mode 100644 index 00000000..4091ec30 --- /dev/null +++ b/game/images/CG/herm_sex/hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8cc11f2a14a40d5046f9ad769fc7caa733994ac2266d18f907165bf2edb171b +size 26062 diff --git a/game/images/CG/herm_sex/p1.webp b/game/images/CG/herm_sex/p1.webp new file mode 100644 index 00000000..2437700e --- /dev/null +++ b/game/images/CG/herm_sex/p1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5328f228869514f78fed947108e79a7a0eccf7aa5d14ef47a7fd5c5ceebf479b +size 2060 diff --git a/game/images/CG/herm_sex/p2.webp b/game/images/CG/herm_sex/p2.webp new file mode 100644 index 00000000..a28d8129 --- /dev/null +++ b/game/images/CG/herm_sex/p2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cae7e6426c57ffdbeac99eab1f2681e38b0cdf2947a027c6f3bb163c52452eb +size 5938 diff --git a/game/images/CG/herm_sex/s1.webp b/game/images/CG/herm_sex/s1.webp new file mode 100644 index 00000000..104b596e --- /dev/null +++ b/game/images/CG/herm_sex/s1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5621aad4acaaecfe1db1f073c66d6fbbe307ae9bd8769680c780be52f69a0782 +size 7898 diff --git a/game/images/CG/herm_sex/s2.webp b/game/images/CG/herm_sex/s2.webp new file mode 100644 index 00000000..31c8df7c --- /dev/null +++ b/game/images/CG/herm_sex/s2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7f34355d19c40580cae3c6f73393f249ce9efea42cdd8763b9140ea84d6a96e +size 6226 diff --git a/game/images/CG/herm_sex/s3.webp b/game/images/CG/herm_sex/s3.webp new file mode 100644 index 00000000..dcc5f430 --- /dev/null +++ b/game/images/CG/herm_sex/s3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3abf86a46494f7d018832561f2e5e591237b3603a9c9e50104dd7cc95a6551e1 +size 13552 diff --git a/game/images/CG/herm_sex/s4.webp b/game/images/CG/herm_sex/s4.webp new file mode 100644 index 00000000..c32b9893 --- /dev/null +++ b/game/images/CG/herm_sex/s4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c5358c028ceb98dcbd44fb6558d562b9bada7852fe4a044365b26efd7119f28 +size 13510 diff --git a/game/images/CG/herm_sex/s5.webp b/game/images/CG/herm_sex/s5.webp new file mode 100644 index 00000000..3c3f2c65 --- /dev/null +++ b/game/images/CG/herm_sex/s5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa876470d196d65d25d160c519ad8555f16f79bf084eec0145062aff25366a97 +size 18924 diff --git a/game/images/CG/herm_tentacles/e2.webp b/game/images/CG/herm_tentacles/e2.webp new file mode 100644 index 00000000..eee369a8 --- /dev/null +++ b/game/images/CG/herm_tentacles/e2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:610c97c28074e07b51069fbe331340677760577bdb4e55d8c954a47a9758bcbb +size 962326 diff --git a/game/images/CG/herm_tentacles/e3.webp b/game/images/CG/herm_tentacles/e3.webp new file mode 100644 index 00000000..bed6bb53 --- /dev/null +++ b/game/images/CG/herm_tentacles/e3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d7ad27f54e0e98a077eaff8b6a2cbde74164ca157d4d92655206ee7482cc656 +size 962108 diff --git a/game/images/CG/herm_tentacles/e4.webp b/game/images/CG/herm_tentacles/e4.webp new file mode 100644 index 00000000..7bada73e --- /dev/null +++ b/game/images/CG/herm_tentacles/e4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77d78a500f039a3b23bd524587adbe7c646f826dcd5e67250287d18ef513b7dc +size 962714 diff --git a/game/images/CG/herm_tentacles/e5.webp b/game/images/CG/herm_tentacles/e5.webp new file mode 100644 index 00000000..f3b43982 --- /dev/null +++ b/game/images/CG/herm_tentacles/e5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a52c14e71c430066d3600ed60fc69cfdf156233c2d6244b6fb00b97b5ab0aba +size 960450 diff --git a/game/images/CG/herm_tentacles/e6.webp b/game/images/CG/herm_tentacles/e6.webp new file mode 100644 index 00000000..a0cf0633 --- /dev/null +++ b/game/images/CG/herm_tentacles/e6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68c368e12b7366e22f26d7a29dba2a629a7632afc6bd60ed411a2fb5aaf1834a +size 962240 diff --git a/game/images/CG/herm_tentacles/e7.webp b/game/images/CG/herm_tentacles/e7.webp new file mode 100644 index 00000000..85caf000 --- /dev/null +++ b/game/images/CG/herm_tentacles/e7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0872050f5cfecd5d5b16d3f8a893587edca13e4ef3503865e6410e5a216f5802 +size 966866 diff --git a/game/images/CG/herm_tentacles/p1.webp b/game/images/CG/herm_tentacles/p1.webp new file mode 100644 index 00000000..20a4677f --- /dev/null +++ b/game/images/CG/herm_tentacles/p1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a5bd94261fd4fcb5f03f5c8109febce09de3f039e7fae681acd58081671e594 +size 960288 diff --git a/game/images/CG/herm_tentacles/p2.webp b/game/images/CG/herm_tentacles/p2.webp new file mode 100644 index 00000000..ae4f2ea5 --- /dev/null +++ b/game/images/CG/herm_tentacles/p2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d33defca46c4540a9f2ee991622a8919f5487235b4057265221f4e272c06aedf +size 960980 diff --git a/game/images/CG/herm_tentacles/p3.webp b/game/images/CG/herm_tentacles/p3.webp new file mode 100644 index 00000000..9a94aff8 --- /dev/null +++ b/game/images/CG/herm_tentacles/p3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c0a8b65ca716736965ae747cc42c64febcde1b8f1c74bb273f7fe10967ea57f +size 959182 diff --git a/game/images/CG/herm_tentacles/p4.webp b/game/images/CG/herm_tentacles/p4.webp new file mode 100644 index 00000000..cb93a467 --- /dev/null +++ b/game/images/CG/herm_tentacles/p4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5a85f62c75aa0d6a2bc7e5c1f2c352775572b99a64583320daff6b72a6d6539 +size 958860 diff --git a/game/images/CG/herm_tentacles/p5.webp b/game/images/CG/herm_tentacles/p5.webp new file mode 100644 index 00000000..d3470d35 --- /dev/null +++ b/game/images/CG/herm_tentacles/p5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ab2b82bc0a9a8660ac82c0bd947003d16d8f8173ec7bea1298690cf0c6ec32e +size 958336 diff --git a/game/images/CG/herm_tentacles/p6.webp b/game/images/CG/herm_tentacles/p6.webp new file mode 100644 index 00000000..2a198f6e --- /dev/null +++ b/game/images/CG/herm_tentacles/p6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04bc6d1ea1a7e1aab2c3fa4e8b18955e1f02fec10d1be6aeeb78f43223b1f4f0 +size 958798 diff --git a/game/images/CG/herm_tentacles/p7.webp b/game/images/CG/herm_tentacles/p7.webp new file mode 100644 index 00000000..355f179b --- /dev/null +++ b/game/images/CG/herm_tentacles/p7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3444868f40aea5c320b337d998a41b547260674d2808cd00d60c3b83acdcf341 +size 963076 diff --git a/game/images/CG/lun_intro/bg.webp b/game/images/CG/lun_intro/bg.webp new file mode 100644 index 00000000..4d38a8e1 --- /dev/null +++ b/game/images/CG/lun_intro/bg.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f2d89c04559f52122fedad244d32754bb87b8e726b2b6994b1e3203204b2d22 +size 1222116 diff --git a/game/images/CG/lun_intro/day_overlay.webp b/game/images/CG/lun_intro/day_overlay.webp new file mode 100644 index 00000000..a14d0802 --- /dev/null +++ b/game/images/CG/lun_intro/day_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38ad6a65b310c71a9fa18b2fc957ae6653ef0ca63a4d21e338f650e3b7bdcb0e +size 79694 diff --git a/game/images/CG/lun_intro/luna.webp b/game/images/CG/lun_intro/luna.webp new file mode 100644 index 00000000..2a2b5157 --- /dev/null +++ b/game/images/CG/lun_intro/luna.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:516d1c4c3cf1f1b42e9a6b7308cbb3098218a6dd9122ce083e6357a26aaba1e2 +size 169088 diff --git a/game/images/CG/lun_intro/luna_naked.webp b/game/images/CG/lun_intro/luna_naked.webp new file mode 100644 index 00000000..8ffa0da8 --- /dev/null +++ b/game/images/CG/lun_intro/luna_naked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e408c2e1771dae3b8d1334d85a7956280881f7e907fc207ce3b9f363dd2a838a +size 169830 diff --git a/game/images/CG/lun_intro/night_overlay.webp b/game/images/CG/lun_intro/night_overlay.webp new file mode 100644 index 00000000..3bf46a0f --- /dev/null +++ b/game/images/CG/lun_intro/night_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6265ffbad00858ed7d16c018e38f15d3c574de7963a7b3500a93bf61f93c124f +size 93510 diff --git a/game/images/CG/luna_bedsex/base.webp b/game/images/CG/luna_bedsex/base.webp new file mode 100644 index 00000000..9575af80 --- /dev/null +++ b/game/images/CG/luna_bedsex/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12a4840037e0185d7d1b38b57130adc7201b03525028bf690e99347e5dcf9fc0 +size 156348 diff --git a/game/images/CG/luna_bedsex/blank.webp b/game/images/CG/luna_bedsex/blank.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/images/CG/luna_bedsex/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/images/CG/luna_bedsex/c_base.webp b/game/images/CG/luna_bedsex/c_base.webp new file mode 100644 index 00000000..da24b9bc --- /dev/null +++ b/game/images/CG/luna_bedsex/c_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d66905db5ecd968c5a54ca538afad0dbc79a14329420f8c39d13775788f62ae +size 4430 diff --git a/game/images/CG/luna_bedsex/c_blush.webp b/game/images/CG/luna_bedsex/c_blush.webp new file mode 100644 index 00000000..9ef0e137 --- /dev/null +++ b/game/images/CG/luna_bedsex/c_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:438897b4c02eae9801251a69fdfd626da1b073811162b022d789fc254618f36c +size 5906 diff --git a/game/images/CG/luna_bedsex/cum_1.webp b/game/images/CG/luna_bedsex/cum_1.webp new file mode 100644 index 00000000..1633528b --- /dev/null +++ b/game/images/CG/luna_bedsex/cum_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbe4b4823d150e7859e557422f98e0f78f34fd22ab0d259676907e566a6f727d +size 8468 diff --git a/game/images/CG/luna_bedsex/curly_hair.webp b/game/images/CG/luna_bedsex/curly_hair.webp new file mode 100644 index 00000000..4bb057c1 --- /dev/null +++ b/game/images/CG/luna_bedsex/curly_hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66eb63a2060d7f7eb3295df5419da1a59fa3294f6808eded6a8ce091884d189b +size 63352 diff --git a/game/images/CG/luna_bedsex/curly_hair_top.webp b/game/images/CG/luna_bedsex/curly_hair_top.webp new file mode 100644 index 00000000..4ca77de0 --- /dev/null +++ b/game/images/CG/luna_bedsex/curly_hair_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fc9321a7190b29497bbe9f9c33e1b458827b341e08aa5b3fc06f5279844796b +size 8952 diff --git a/game/images/CG/luna_bedsex/eb_angry.webp b/game/images/CG/luna_bedsex/eb_angry.webp new file mode 100644 index 00000000..261df744 --- /dev/null +++ b/game/images/CG/luna_bedsex/eb_angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f566481703926cf5b0cf9bf961900bfd350e8bcca8ee6af7a49bd83d96ba894 +size 1916 diff --git a/game/images/CG/luna_bedsex/eb_base.webp b/game/images/CG/luna_bedsex/eb_base.webp new file mode 100644 index 00000000..dc9f368c --- /dev/null +++ b/game/images/CG/luna_bedsex/eb_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d673d28b4baa446774d8fffe8a23679149a007937c298a6edb7e8f1b3042a761 +size 1426 diff --git a/game/images/CG/luna_bedsex/eb_mad.webp b/game/images/CG/luna_bedsex/eb_mad.webp new file mode 100644 index 00000000..407b955f --- /dev/null +++ b/game/images/CG/luna_bedsex/eb_mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d51e32f26d41e5ab11c3fa226fcedcadecdd659809135e62353b8374f0784431 +size 2326 diff --git a/game/images/CG/luna_bedsex/eb_raised.webp b/game/images/CG/luna_bedsex/eb_raised.webp new file mode 100644 index 00000000..55d22d43 --- /dev/null +++ b/game/images/CG/luna_bedsex/eb_raised.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebf0403b40f8df48f1763eb1dd8bd569a285af68433a3695bbde7fc1bc9c651c +size 2220 diff --git a/game/images/CG/luna_bedsex/eb_sad.webp b/game/images/CG/luna_bedsex/eb_sad.webp new file mode 100644 index 00000000..d76e9774 --- /dev/null +++ b/game/images/CG/luna_bedsex/eb_sad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:804701a515e89c015eec80e711d6373e26db986fa9fba4f32037afe2dea030c3 +size 1906 diff --git a/game/images/CG/luna_bedsex/eye_angry.webp b/game/images/CG/luna_bedsex/eye_angry.webp new file mode 100644 index 00000000..057228e7 --- /dev/null +++ b/game/images/CG/luna_bedsex/eye_angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05ded51c8a7dfd4c68258e66efe09a3c2e13e21d3d63bde77f3358c7d148bab6 +size 2748 diff --git a/game/images/CG/luna_bedsex/eye_base.webp b/game/images/CG/luna_bedsex/eye_base.webp new file mode 100644 index 00000000..1191b773 --- /dev/null +++ b/game/images/CG/luna_bedsex/eye_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:014df9656054799452e6795f504fb04736ab306470a32e13f51b7155f171b8c3 +size 2586 diff --git a/game/images/CG/luna_bedsex/eye_closed.webp b/game/images/CG/luna_bedsex/eye_closed.webp new file mode 100644 index 00000000..13f79abd --- /dev/null +++ b/game/images/CG/luna_bedsex/eye_closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53702a18670bb9a6b4943cf516ec7d77df3f6801f8a288f8bddbbfcbba65d377 +size 3084 diff --git a/game/images/CG/luna_bedsex/eye_excited.webp b/game/images/CG/luna_bedsex/eye_excited.webp new file mode 100644 index 00000000..eea7515a --- /dev/null +++ b/game/images/CG/luna_bedsex/eye_excited.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f52db5b2e6441acb45e7b9b2165984a368356002888d1a94163565eaf3d2d3e +size 2560 diff --git a/game/images/CG/luna_bedsex/eye_furious.webp b/game/images/CG/luna_bedsex/eye_furious.webp new file mode 100644 index 00000000..4d445256 --- /dev/null +++ b/game/images/CG/luna_bedsex/eye_furious.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb12889afcf10cc9f90370a039ab90b0dd07fd667f918645a3f9a3cd7c92aa72 +size 2924 diff --git a/game/images/CG/luna_bedsex/eye_happyCl.webp b/game/images/CG/luna_bedsex/eye_happyCl.webp new file mode 100644 index 00000000..4356859b --- /dev/null +++ b/game/images/CG/luna_bedsex/eye_happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:393adad12a8cdba80b4f0c40a0810f475ba3bfad9386413e00afbadd177f65a6 +size 2450 diff --git a/game/images/CG/luna_bedsex/eye_seductive.webp b/game/images/CG/luna_bedsex/eye_seductive.webp new file mode 100644 index 00000000..f30c7507 --- /dev/null +++ b/game/images/CG/luna_bedsex/eye_seductive.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef949ac3259007efb8dcbd9237914e715ca2d0934521ceed8b2d9a3b02837d98 +size 2488 diff --git a/game/images/CG/luna_bedsex/eye_tired.webp b/game/images/CG/luna_bedsex/eye_tired.webp new file mode 100644 index 00000000..2b1ed72d --- /dev/null +++ b/game/images/CG/luna_bedsex/eye_tired.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:511b4a4c355ba65b15040723dd751666661c0e39e29b361b12a8bce06221b113 +size 2550 diff --git a/game/images/CG/luna_bedsex/eye_white.webp b/game/images/CG/luna_bedsex/eye_white.webp new file mode 100644 index 00000000..0de2079a --- /dev/null +++ b/game/images/CG/luna_bedsex/eye_white.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fde8a67568888474ffa704066b807974c50a7b7edf0db971a674fc5634d9b35 +size 1330 diff --git a/game/images/CG/luna_bedsex/eye_wide.webp b/game/images/CG/luna_bedsex/eye_wide.webp new file mode 100644 index 00000000..f3caa7e6 --- /dev/null +++ b/game/images/CG/luna_bedsex/eye_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8eee1c789aea4d7693dadcf10d416588ddd733e89c83c07bc388076a5b4163fd +size 1610 diff --git a/game/images/CG/luna_bedsex/eye_wink.webp b/game/images/CG/luna_bedsex/eye_wink.webp new file mode 100644 index 00000000..a64d6c87 --- /dev/null +++ b/game/images/CG/luna_bedsex/eye_wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5665f0307b60cab8ccc12cd270d3373b42896b683a7d0ed978b36107a9f0fe5 +size 2492 diff --git a/game/images/CG/luna_bedsex/fade.webp b/game/images/CG/luna_bedsex/fade.webp new file mode 100644 index 00000000..a7a66c70 --- /dev/null +++ b/game/images/CG/luna_bedsex/fade.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1b2970c632ca8d9fddf2e21028df96d6f33d3284b573f0eaba999bfb52b9c17 +size 15724 diff --git a/game/images/CG/luna_bedsex/glasses.webp b/game/images/CG/luna_bedsex/glasses.webp new file mode 100644 index 00000000..9ddc85ef --- /dev/null +++ b/game/images/CG/luna_bedsex/glasses.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cfa6e230d02e0473e16d07a04b96013913b3cd27b66c5fdfa81498aade0a4b27 +size 8926 diff --git a/game/images/CG/luna_bedsex/hand.webp b/game/images/CG/luna_bedsex/hand.webp new file mode 100644 index 00000000..8a240841 --- /dev/null +++ b/game/images/CG/luna_bedsex/hand.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72836a400d360212baedd08ff2eb2fb5fd00e6203f5b88c8ae6484a8098742ea +size 6718 diff --git a/game/images/CG/luna_bedsex/luna_base.webp b/game/images/CG/luna_bedsex/luna_base.webp new file mode 100644 index 00000000..dae93767 --- /dev/null +++ b/game/images/CG/luna_bedsex/luna_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4de88da8764dcb077a4b25c8f2dee08571fb1b2113a2be4dc1ba683588d3bdf0 +size 379256 diff --git a/game/images/CG/luna_bedsex/m_base.webp b/game/images/CG/luna_bedsex/m_base.webp new file mode 100644 index 00000000..00362cb4 --- /dev/null +++ b/game/images/CG/luna_bedsex/m_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7169ca40a420f21fea8ed16714fb3ebf1a40c3c207d095df9358eddb8936e4b +size 980 diff --git a/game/images/CG/luna_bedsex/m_open.webp b/game/images/CG/luna_bedsex/m_open.webp new file mode 100644 index 00000000..10840138 --- /dev/null +++ b/game/images/CG/luna_bedsex/m_open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40634ebe3cf1c23eb0d65f86dcf2bbbe89be45ff891f1737a194f19aa12c8e0c +size 1276 diff --git a/game/images/CG/luna_bedsex/m_open_tongue.webp b/game/images/CG/luna_bedsex/m_open_tongue.webp new file mode 100644 index 00000000..75937dd1 --- /dev/null +++ b/game/images/CG/luna_bedsex/m_open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cccbd2f4b7a8f752a16ce566af40c33d6d0e367b4bc0e3282525ca91938df5f +size 1274 diff --git a/game/images/CG/luna_bedsex/m_pout.webp b/game/images/CG/luna_bedsex/m_pout.webp new file mode 100644 index 00000000..e5f99636 --- /dev/null +++ b/game/images/CG/luna_bedsex/m_pout.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f4df7d901894ceb894fac1647aa1e0f82da15a5e1ca2ccdebb96e63a4083719 +size 1100 diff --git a/game/images/CG/luna_bedsex/m_talk.webp b/game/images/CG/luna_bedsex/m_talk.webp new file mode 100644 index 00000000..56ceb62e --- /dev/null +++ b/game/images/CG/luna_bedsex/m_talk.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:658c3e04961b67a7b88d0fe45a4def9c00c7e7eeb787ef804681b462d602105f +size 1212 diff --git a/game/images/CG/luna_bedsex/m_wide.webp b/game/images/CG/luna_bedsex/m_wide.webp new file mode 100644 index 00000000..f7795fc8 --- /dev/null +++ b/game/images/CG/luna_bedsex/m_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25980ca9d0dd9a5a03bb7b38b151a9cbffe199b3eb1ea195fa1fdfc82c201ae0 +size 2926 diff --git a/game/images/CG/luna_bedsex/m_wide_tongue.webp b/game/images/CG/luna_bedsex/m_wide_tongue.webp new file mode 100644 index 00000000..1bcc55c3 --- /dev/null +++ b/game/images/CG/luna_bedsex/m_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85ee15ee72ec53b2048887ac8430704c6e2a7b509821f85ee4dd27c1b4444b62 +size 3062 diff --git a/game/images/CG/luna_bedsex/overlay.webp b/game/images/CG/luna_bedsex/overlay.webp new file mode 100644 index 00000000..37db4bdc --- /dev/null +++ b/game/images/CG/luna_bedsex/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0d08d96f7aa0fd450da674d794ce23cc126663dc0ee09f5ab8bfe651c651c76 +size 122096 diff --git a/game/images/CG/luna_bedsex/playful_hair.webp b/game/images/CG/luna_bedsex/playful_hair.webp new file mode 100644 index 00000000..4bb057c1 --- /dev/null +++ b/game/images/CG/luna_bedsex/playful_hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66eb63a2060d7f7eb3295df5419da1a59fa3294f6808eded6a8ce091884d189b +size 63352 diff --git a/game/images/CG/luna_bedsex/playful_hair_top.webp b/game/images/CG/luna_bedsex/playful_hair_top.webp new file mode 100644 index 00000000..4ca77de0 --- /dev/null +++ b/game/images/CG/luna_bedsex/playful_hair_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fc9321a7190b29497bbe9f9c33e1b458827b341e08aa5b3fc06f5279844796b +size 8952 diff --git a/game/images/CG/luna_bedsex/pup_ahegao.webp b/game/images/CG/luna_bedsex/pup_ahegao.webp new file mode 100644 index 00000000..f445d43b --- /dev/null +++ b/game/images/CG/luna_bedsex/pup_ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a61e6138d9eb7df2c2db0506477ae62dea341862de03024823caa6ac82b64c3 +size 1070 diff --git a/game/images/CG/luna_bedsex/pup_dick.webp b/game/images/CG/luna_bedsex/pup_dick.webp new file mode 100644 index 00000000..c85e3c5f --- /dev/null +++ b/game/images/CG/luna_bedsex/pup_dick.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed1692f463cfe990022e789ef20c4321d062ddd7e8eb13bee04a14a44b5a4a0f +size 1208 diff --git a/game/images/CG/luna_bedsex/pup_dl.webp b/game/images/CG/luna_bedsex/pup_dl.webp new file mode 100644 index 00000000..8f0aeeff --- /dev/null +++ b/game/images/CG/luna_bedsex/pup_dl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e4281df9dc9c92eeb3ae8f0d0914d0a32c4b3537ec69d8a56a973a36e004fe7 +size 1434 diff --git a/game/images/CG/luna_bedsex/pup_dr.webp b/game/images/CG/luna_bedsex/pup_dr.webp new file mode 100644 index 00000000..e0972d3b --- /dev/null +++ b/game/images/CG/luna_bedsex/pup_dr.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1ce1f8a470ee26211e94213657a4b2013425e218e95197125fb84a6689146f7 +size 1002 diff --git a/game/images/CG/luna_bedsex/pup_left.webp b/game/images/CG/luna_bedsex/pup_left.webp new file mode 100644 index 00000000..60aef464 --- /dev/null +++ b/game/images/CG/luna_bedsex/pup_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4deedd7edf565a9182eb69d5e8837ba1e4f3646aa13ed01a35bf63c0306a2b3 +size 1270 diff --git a/game/images/CG/luna_bedsex/pup_right.webp b/game/images/CG/luna_bedsex/pup_right.webp new file mode 100644 index 00000000..9f7600c0 --- /dev/null +++ b/game/images/CG/luna_bedsex/pup_right.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:821f8f5591fb3f8654e84df45f749f790e7fb3b45008fd76d035bc7550b75d60 +size 1292 diff --git a/game/images/CG/luna_bedsex/pup_ul.webp b/game/images/CG/luna_bedsex/pup_ul.webp new file mode 100644 index 00000000..7e4802be --- /dev/null +++ b/game/images/CG/luna_bedsex/pup_ul.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da1efd0ab3d477370bb4b9404fe6a734b0d8698f768fe6fc38443a98af321083 +size 948 diff --git a/game/images/CG/luna_bedsex/pup_up.webp b/game/images/CG/luna_bedsex/pup_up.webp new file mode 100644 index 00000000..f9ea2b94 --- /dev/null +++ b/game/images/CG/luna_bedsex/pup_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f3e7387064474951ccf4d3b9af3cc293abbe0a019d011dd11440e9034cda74b +size 1198 diff --git a/game/images/CG/luna_bedsex/pup_ur.webp b/game/images/CG/luna_bedsex/pup_ur.webp new file mode 100644 index 00000000..ccb6948f --- /dev/null +++ b/game/images/CG/luna_bedsex/pup_ur.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b6391a2871b19f05d14ceeae0316feb7d247c298ae13fc86de76500b2770162 +size 1202 diff --git a/game/images/CG/luna_bedsex/short_hair.webp b/game/images/CG/luna_bedsex/short_hair.webp new file mode 100644 index 00000000..dd5bb2ff --- /dev/null +++ b/game/images/CG/luna_bedsex/short_hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f44878866e596588480b9cc18bdc7584070dde695b8c10dc884db0e6fbd52472 +size 20774 diff --git a/game/images/CG/luna_bedsex/short_hair_top.webp b/game/images/CG/luna_bedsex/short_hair_top.webp new file mode 100644 index 00000000..d130d483 --- /dev/null +++ b/game/images/CG/luna_bedsex/short_hair_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6dc4d43a4724bec1b9205f64afb020fd04121fdfca4ce8bdb252ce7f7586fa8 +size 20456 diff --git a/game/images/CG/luna_bedsex/speed.webp b/game/images/CG/luna_bedsex/speed.webp new file mode 100644 index 00000000..2a26c7d9 --- /dev/null +++ b/game/images/CG/luna_bedsex/speed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac008940557f47994ef507b8b8e96a1a153b42f4cb5d29ce8d7bf046ad8d9e30 +size 35836 diff --git a/game/images/CG/luna_bj/1.webp b/game/images/CG/luna_bj/1.webp new file mode 100644 index 00000000..171f5070 --- /dev/null +++ b/game/images/CG/luna_bj/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61079404f48bca25062e194d3a79da25bca73917162796f98a2ae5054d1a1b47 +size 317456 diff --git a/game/images/CG/luna_bj/10.webp b/game/images/CG/luna_bj/10.webp new file mode 100644 index 00000000..328bb3e9 --- /dev/null +++ b/game/images/CG/luna_bj/10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:611b631a84d19cb5c2af3137c7c87a5fd879596e2ec5e2bd1a3e3499c6aaa9c0 +size 319630 diff --git a/game/images/CG/luna_bj/11.webp b/game/images/CG/luna_bj/11.webp new file mode 100644 index 00000000..e0adb399 --- /dev/null +++ b/game/images/CG/luna_bj/11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f01c786723b66298a24dfdb5aa6f0cbf8ee0139cf4f357c2288eca07fb80085 +size 319066 diff --git a/game/images/CG/luna_bj/12.webp b/game/images/CG/luna_bj/12.webp new file mode 100644 index 00000000..39c80569 --- /dev/null +++ b/game/images/CG/luna_bj/12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e9ed3e3c15ad0a4f68bbd1d23a43537721c2a3f4ab7f0d909861b5cc0e0ec96 +size 336436 diff --git a/game/images/CG/luna_bj/13.webp b/game/images/CG/luna_bj/13.webp new file mode 100644 index 00000000..53ec65b4 --- /dev/null +++ b/game/images/CG/luna_bj/13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94131be25da94fba7969f2004da6b97c83047cbd1de72d6905904b01930f6c0b +size 335958 diff --git a/game/images/CG/luna_bj/14.webp b/game/images/CG/luna_bj/14.webp new file mode 100644 index 00000000..7b43b1dd --- /dev/null +++ b/game/images/CG/luna_bj/14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a883f93f93d7d2de5474639139be9f8a9de05060d3d10670a99f80f27fe9088 +size 335892 diff --git a/game/images/CG/luna_bj/15.webp b/game/images/CG/luna_bj/15.webp new file mode 100644 index 00000000..414f7b95 --- /dev/null +++ b/game/images/CG/luna_bj/15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14b61668ac229098e24d66f37e239a38f2af391a3f6eaa4db18a095d76cb7ea7 +size 335614 diff --git a/game/images/CG/luna_bj/16.webp b/game/images/CG/luna_bj/16.webp new file mode 100644 index 00000000..b67f8be2 --- /dev/null +++ b/game/images/CG/luna_bj/16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bab4334f40a9e6487c2169060002360be500995b42504079b1b36d41c71934db +size 324134 diff --git a/game/images/CG/luna_bj/17.webp b/game/images/CG/luna_bj/17.webp new file mode 100644 index 00000000..1c5d5aa6 --- /dev/null +++ b/game/images/CG/luna_bj/17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd50c63ec6389bb679aec7b23ef36d3495cf2a24a2793494d18715b389d7325e +size 323788 diff --git a/game/images/CG/luna_bj/18.webp b/game/images/CG/luna_bj/18.webp new file mode 100644 index 00000000..43c3cf5a --- /dev/null +++ b/game/images/CG/luna_bj/18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b402e86ae5a42e4572c444a621fe0b5790f1797b69ac308e1c99fc5d4259096 +size 323158 diff --git a/game/images/CG/luna_bj/19.webp b/game/images/CG/luna_bj/19.webp new file mode 100644 index 00000000..81802db7 --- /dev/null +++ b/game/images/CG/luna_bj/19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10794954aabf01084d53c9b639222cbacb479dc826f3b5f752bed67b7d57174a +size 323592 diff --git a/game/images/CG/luna_bj/2.webp b/game/images/CG/luna_bj/2.webp new file mode 100644 index 00000000..fae76dbb --- /dev/null +++ b/game/images/CG/luna_bj/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea6157799ab38232753a14a1c1e8446f100b7ec671eab6b9a861f534befddbf6 +size 316940 diff --git a/game/images/CG/luna_bj/20.webp b/game/images/CG/luna_bj/20.webp new file mode 100644 index 00000000..9d38a5b6 --- /dev/null +++ b/game/images/CG/luna_bj/20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f63eb189b87f1d3fee120b7aaf4b51104b44a73c8fe00f66404b65103b566f90 +size 318298 diff --git a/game/images/CG/luna_bj/21.webp b/game/images/CG/luna_bj/21.webp new file mode 100644 index 00000000..3cea83f5 --- /dev/null +++ b/game/images/CG/luna_bj/21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dc43632206f91a26ae6a9e263c40c57d3e96adb1158966cc94fe5cd8dee6fbe +size 317298 diff --git a/game/images/CG/luna_bj/22.webp b/game/images/CG/luna_bj/22.webp new file mode 100644 index 00000000..47b52b68 --- /dev/null +++ b/game/images/CG/luna_bj/22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f97c92ab582000c63b418260732b548c459a02d87afd27dce81c6b9dc7606e40 +size 317878 diff --git a/game/images/CG/luna_bj/23.webp b/game/images/CG/luna_bj/23.webp new file mode 100644 index 00000000..7dd1c995 --- /dev/null +++ b/game/images/CG/luna_bj/23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:589d4f9e9d5342480c2cb7ed11c3354d89e312dfe60f13831a9599d2612388a6 +size 319448 diff --git a/game/images/CG/luna_bj/24.webp b/game/images/CG/luna_bj/24.webp new file mode 100644 index 00000000..8d3c4c46 --- /dev/null +++ b/game/images/CG/luna_bj/24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b19c93e648b2600a35126d3745c25d02efa6fc0b9989df8887720a1950e538cd +size 318570 diff --git a/game/images/CG/luna_bj/25.webp b/game/images/CG/luna_bj/25.webp new file mode 100644 index 00000000..87378119 --- /dev/null +++ b/game/images/CG/luna_bj/25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb27421792478e138be6ac114e40c59eb2fb44214e310d59b5d8e6469963937f +size 318340 diff --git a/game/images/CG/luna_bj/26.webp b/game/images/CG/luna_bj/26.webp new file mode 100644 index 00000000..dcc47809 --- /dev/null +++ b/game/images/CG/luna_bj/26.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f12157bb2a6538470783496263ed30c69e4742a230d960ff1d660f73747b9950 +size 317844 diff --git a/game/images/CG/luna_bj/27.webp b/game/images/CG/luna_bj/27.webp new file mode 100644 index 00000000..16ca662c --- /dev/null +++ b/game/images/CG/luna_bj/27.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5ff17764059303389209d0f62c99b66bf6c43d30ab4197b03b89e7fdadbd8db +size 336954 diff --git a/game/images/CG/luna_bj/28.webp b/game/images/CG/luna_bj/28.webp new file mode 100644 index 00000000..04cb3af0 --- /dev/null +++ b/game/images/CG/luna_bj/28.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d5a9aecc32179e0eba7806ece6e1b19a68431290d2a12a985d8d534ae8ca816 +size 316534 diff --git a/game/images/CG/luna_bj/29.webp b/game/images/CG/luna_bj/29.webp new file mode 100644 index 00000000..5bfe0834 --- /dev/null +++ b/game/images/CG/luna_bj/29.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60c0f765caefd0c349df248795e4a3cf401626339d9a3ad62a2439ba2e63ec0b +size 318070 diff --git a/game/images/CG/luna_bj/3.webp b/game/images/CG/luna_bj/3.webp new file mode 100644 index 00000000..b3b59260 --- /dev/null +++ b/game/images/CG/luna_bj/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e77fc458dd64d2160945bf9e1712cf62d36f31495e213001ef0775a67e05ffd +size 317832 diff --git a/game/images/CG/luna_bj/30.webp b/game/images/CG/luna_bj/30.webp new file mode 100644 index 00000000..f887ea20 --- /dev/null +++ b/game/images/CG/luna_bj/30.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c35cad78f13bf923548ef9e10bea526bfbb8bcf8188d7a6c1af30dc740ae4e5 +size 317034 diff --git a/game/images/CG/luna_bj/31.webp b/game/images/CG/luna_bj/31.webp new file mode 100644 index 00000000..45385840 --- /dev/null +++ b/game/images/CG/luna_bj/31.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3c60e2a1a89d0f61d5c5ff21c26f204280f8a423a3cc6913e89985720cdba8a +size 324076 diff --git a/game/images/CG/luna_bj/32.webp b/game/images/CG/luna_bj/32.webp new file mode 100644 index 00000000..e527cee6 --- /dev/null +++ b/game/images/CG/luna_bj/32.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7735f32205290d8a82da749c60b4638855bd5a9af72940eb26db00d689ff577 +size 324986 diff --git a/game/images/CG/luna_bj/33.webp b/game/images/CG/luna_bj/33.webp new file mode 100644 index 00000000..a5898d86 --- /dev/null +++ b/game/images/CG/luna_bj/33.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:189620cbcb15e6c02d18ec244835ffa8eb892387c1586c0a726e5973d6c45355 +size 321662 diff --git a/game/images/CG/luna_bj/35.webp b/game/images/CG/luna_bj/35.webp new file mode 100644 index 00000000..c9e718f9 --- /dev/null +++ b/game/images/CG/luna_bj/35.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d051406c199afc8b2ae63de68c1ba0a9e9948be1ea62264f45161161a40c31eb +size 333636 diff --git a/game/images/CG/luna_bj/36.webp b/game/images/CG/luna_bj/36.webp new file mode 100644 index 00000000..600b3da6 --- /dev/null +++ b/game/images/CG/luna_bj/36.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:552126900b33abea979d7e920aa7df03583a0e07750a7c43a7396e4ffb0cb8a8 +size 336006 diff --git a/game/images/CG/luna_bj/37.webp b/game/images/CG/luna_bj/37.webp new file mode 100644 index 00000000..da88fbc7 --- /dev/null +++ b/game/images/CG/luna_bj/37.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78703ad3a8a2fb325829b3ee26bbbc3e5d8618319163d7bf6779c45e9ac8a0ba +size 333484 diff --git a/game/images/CG/luna_bj/38.webp b/game/images/CG/luna_bj/38.webp new file mode 100644 index 00000000..4f82fe29 --- /dev/null +++ b/game/images/CG/luna_bj/38.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4118f1698ac2df7f29910e1af980322948b81b7892b30ce0b139d6bab73b313 +size 332712 diff --git a/game/images/CG/luna_bj/39.webp b/game/images/CG/luna_bj/39.webp new file mode 100644 index 00000000..6ee25607 --- /dev/null +++ b/game/images/CG/luna_bj/39.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b014f9d1394e2d209bba7a3b2e7bccdb8a2b5020da064d3a7a23a6010b0d7d6a +size 332588 diff --git a/game/images/CG/luna_bj/4.webp b/game/images/CG/luna_bj/4.webp new file mode 100644 index 00000000..d517b1c5 --- /dev/null +++ b/game/images/CG/luna_bj/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2e3362daab378a4841b87365f8366899676259ebc645fe9cfb9d73d3581a23e +size 316742 diff --git a/game/images/CG/luna_bj/40.webp b/game/images/CG/luna_bj/40.webp new file mode 100644 index 00000000..abe47e71 --- /dev/null +++ b/game/images/CG/luna_bj/40.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f106063b06e1b47c51c30cc815731145d215676b3b8b5e0153b1e263bb15d920 +size 331908 diff --git a/game/images/CG/luna_bj/41.webp b/game/images/CG/luna_bj/41.webp new file mode 100644 index 00000000..3e254803 --- /dev/null +++ b/game/images/CG/luna_bj/41.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8a7895f386c8e6082f398cb7eb8b3c849ef1e314d4515fb377be63e40e1e490 +size 332802 diff --git a/game/images/CG/luna_bj/42.webp b/game/images/CG/luna_bj/42.webp new file mode 100644 index 00000000..f88c4f17 --- /dev/null +++ b/game/images/CG/luna_bj/42.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14d77f101b85f30d7eecf41f2e685ff760bfcf4899eb12ca4395732c9953dac6 +size 332612 diff --git a/game/images/CG/luna_bj/43.webp b/game/images/CG/luna_bj/43.webp new file mode 100644 index 00000000..e3e3c97d --- /dev/null +++ b/game/images/CG/luna_bj/43.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca09f3c0d31985a6b19a8023943dfc657a144f0650571a888a8171e45ca12eaa +size 320210 diff --git a/game/images/CG/luna_bj/44.webp b/game/images/CG/luna_bj/44.webp new file mode 100644 index 00000000..d12e64e6 --- /dev/null +++ b/game/images/CG/luna_bj/44.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0b8ecafdc572ae5cd5914c74420be68b9e8666539621b594585d14ae83f05e8 +size 317908 diff --git a/game/images/CG/luna_bj/45.webp b/game/images/CG/luna_bj/45.webp new file mode 100644 index 00000000..20a08062 --- /dev/null +++ b/game/images/CG/luna_bj/45.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0feecceb5d40397671d73edb596b1b77390fc06767d120943ca97ec8f776ca3 +size 335594 diff --git a/game/images/CG/luna_bj/46.webp b/game/images/CG/luna_bj/46.webp new file mode 100644 index 00000000..c0588c65 --- /dev/null +++ b/game/images/CG/luna_bj/46.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ecd037697de4a80def1c62ce71c57aaaf7193b804ed570ed2242ebe21b39b73f +size 317448 diff --git a/game/images/CG/luna_bj/47.webp b/game/images/CG/luna_bj/47.webp new file mode 100644 index 00000000..09bf634e --- /dev/null +++ b/game/images/CG/luna_bj/47.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d3489eee08735fdc1f99272ec8e33a89103392f7cab80b817dae1ffd5f71823 +size 318162 diff --git a/game/images/CG/luna_bj/48.webp b/game/images/CG/luna_bj/48.webp new file mode 100644 index 00000000..0389862b --- /dev/null +++ b/game/images/CG/luna_bj/48.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ce7825975193b5bf83c8a1935d0a6440387d8bf5679962917dac037cb4a9c0b +size 318358 diff --git a/game/images/CG/luna_bj/49.webp b/game/images/CG/luna_bj/49.webp new file mode 100644 index 00000000..bc1735a6 --- /dev/null +++ b/game/images/CG/luna_bj/49.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e6776b0b71c21bb40efd73c14cb012b9675cb6ce432858b6195bedfe09f7e77 +size 317626 diff --git a/game/images/CG/luna_bj/5.webp b/game/images/CG/luna_bj/5.webp new file mode 100644 index 00000000..82bf4fac --- /dev/null +++ b/game/images/CG/luna_bj/5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e251eebfb7dda1445e7952745f8527bb3fb6c4f3fd4b946d0d337e1512ee82c +size 318414 diff --git a/game/images/CG/luna_bj/50.webp b/game/images/CG/luna_bj/50.webp new file mode 100644 index 00000000..26370097 --- /dev/null +++ b/game/images/CG/luna_bj/50.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5efb37dad53d197e68637a45dd71eb74f1bb9d8b0a91f7807176bd649a29e42 +size 311570 diff --git a/game/images/CG/luna_bj/51.webp b/game/images/CG/luna_bj/51.webp new file mode 100644 index 00000000..714a4aa4 --- /dev/null +++ b/game/images/CG/luna_bj/51.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa10be44bcfa5e01b3925d9c2bbb33d9d4648d4352da20ec518196b4a341c658 +size 312388 diff --git a/game/images/CG/luna_bj/52.webp b/game/images/CG/luna_bj/52.webp new file mode 100644 index 00000000..9d86018e --- /dev/null +++ b/game/images/CG/luna_bj/52.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cc544eb4015cc61101723ccde8f61e573e6b9e935f033db9a35de9d748a505f +size 325712 diff --git a/game/images/CG/luna_bj/53.webp b/game/images/CG/luna_bj/53.webp new file mode 100644 index 00000000..9d5d4cf9 --- /dev/null +++ b/game/images/CG/luna_bj/53.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04c01d99a61b85bddf094a79d3270fb10fe1008b3491f39294072bc10120700b +size 325844 diff --git a/game/images/CG/luna_bj/54.webp b/game/images/CG/luna_bj/54.webp new file mode 100644 index 00000000..c0f66300 --- /dev/null +++ b/game/images/CG/luna_bj/54.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1810279accee1123efdbbbc64417743657f32208900e6ebae2c220ef78a1a36 +size 312586 diff --git a/game/images/CG/luna_bj/55.webp b/game/images/CG/luna_bj/55.webp new file mode 100644 index 00000000..f32945ca --- /dev/null +++ b/game/images/CG/luna_bj/55.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15ca5af65bf200fcd9a72707036d893ae99dd60c874f5d6f7ef036c7545c733b +size 312232 diff --git a/game/images/CG/luna_bj/56.webp b/game/images/CG/luna_bj/56.webp new file mode 100644 index 00000000..9a0380fe --- /dev/null +++ b/game/images/CG/luna_bj/56.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b0ca780d1aaf94698b4bf84128c7d7e556395c092ab19c78c3a889a8a1ea1f9 +size 312648 diff --git a/game/images/CG/luna_bj/57.webp b/game/images/CG/luna_bj/57.webp new file mode 100644 index 00000000..98336776 --- /dev/null +++ b/game/images/CG/luna_bj/57.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5e0dd61e8e05de9967a333863d96b25ef671b6ebfcd7b86eda2fcd5b6d16263 +size 312054 diff --git a/game/images/CG/luna_bj/58.webp b/game/images/CG/luna_bj/58.webp new file mode 100644 index 00000000..3b1c0f4f --- /dev/null +++ b/game/images/CG/luna_bj/58.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed0d862c3e142a35cdd9038691558348bcf4d5189d5890cd5eb485559f279082 +size 325192 diff --git a/game/images/CG/luna_bj/59.webp b/game/images/CG/luna_bj/59.webp new file mode 100644 index 00000000..00b2ccf7 --- /dev/null +++ b/game/images/CG/luna_bj/59.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebf2f257ee32f96fe4fabe9facb27ab24f6965fbe0aaa157f38319be88dc3e33 +size 322236 diff --git a/game/images/CG/luna_bj/6.webp b/game/images/CG/luna_bj/6.webp new file mode 100644 index 00000000..9fd12666 --- /dev/null +++ b/game/images/CG/luna_bj/6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a4bad49cfdd24fd07bb3363ab0e7facc2673197a63708d7157ecf20423d4045 +size 316126 diff --git a/game/images/CG/luna_bj/60.webp b/game/images/CG/luna_bj/60.webp new file mode 100644 index 00000000..ca009874 --- /dev/null +++ b/game/images/CG/luna_bj/60.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47f06914a846d9455a8be463c064bfb97735c0d8f54f413395ba77ca6c765646 +size 335216 diff --git a/game/images/CG/luna_bj/61.webp b/game/images/CG/luna_bj/61.webp new file mode 100644 index 00000000..6e60c452 --- /dev/null +++ b/game/images/CG/luna_bj/61.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90e06c095fd98db750293b148ddda2b00c957623b768a49d3c0b051e5e4fc3f2 +size 334724 diff --git a/game/images/CG/luna_bj/62.webp b/game/images/CG/luna_bj/62.webp new file mode 100644 index 00000000..f6958e08 --- /dev/null +++ b/game/images/CG/luna_bj/62.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eeb5433d9ad94968b696aa7da4f51ec88d437c731038b803951be53313bc96b0 +size 335988 diff --git a/game/images/CG/luna_bj/63.webp b/game/images/CG/luna_bj/63.webp new file mode 100644 index 00000000..344045d0 --- /dev/null +++ b/game/images/CG/luna_bj/63.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3130cf73fdd762285365212b199843edd22c38d98f814d3f1f6f2295b9678e03 +size 336328 diff --git a/game/images/CG/luna_bj/64.webp b/game/images/CG/luna_bj/64.webp new file mode 100644 index 00000000..d22cdeb5 --- /dev/null +++ b/game/images/CG/luna_bj/64.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:953f134a97761f389b9a6fc1a6b7233e2595e0adca87823903bda3c61c4f9b85 +size 336070 diff --git a/game/images/CG/luna_bj/65.webp b/game/images/CG/luna_bj/65.webp new file mode 100644 index 00000000..6ea999f9 --- /dev/null +++ b/game/images/CG/luna_bj/65.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6bcba9f5721600703857a3ea2c4f1d77c024ff77ae2168ac92ba465d531237c8 +size 334784 diff --git a/game/images/CG/luna_bj/66.webp b/game/images/CG/luna_bj/66.webp new file mode 100644 index 00000000..8da86bc8 --- /dev/null +++ b/game/images/CG/luna_bj/66.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21882c92a1ec2acce9f4ccdb05e4632dccc6be84c6a6f02ae1e7d345e2fbb4b4 +size 403508 diff --git a/game/images/CG/luna_bj/67.webp b/game/images/CG/luna_bj/67.webp new file mode 100644 index 00000000..09f45cfd --- /dev/null +++ b/game/images/CG/luna_bj/67.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6319b1770dc276a6934983392e5189de299b261447af9416d1968ade8d78fced +size 403238 diff --git a/game/images/CG/luna_bj/7.webp b/game/images/CG/luna_bj/7.webp new file mode 100644 index 00000000..054bbb82 --- /dev/null +++ b/game/images/CG/luna_bj/7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a314f414b9ce1fcb08f36a1c0b4bda617baa9ce604b254fab486d62572920d11 +size 318532 diff --git a/game/images/CG/luna_bj/8.webp b/game/images/CG/luna_bj/8.webp new file mode 100644 index 00000000..6a993513 --- /dev/null +++ b/game/images/CG/luna_bj/8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c69c5d0f377bd4b72b1c1e40dac1b508ed210d52ec7a37ce5e38a27e73ce791b +size 316650 diff --git a/game/images/CG/luna_bj/9.webp b/game/images/CG/luna_bj/9.webp new file mode 100644 index 00000000..8dfb7682 --- /dev/null +++ b/game/images/CG/luna_bj/9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2af27eb82d1ba46496b5e1b1e6a7605769724506b2f9dff983919cdd52d5159b +size 319352 diff --git a/game/images/CG/luna_bj/base.webp b/game/images/CG/luna_bj/base.webp new file mode 100644 index 00000000..12824743 --- /dev/null +++ b/game/images/CG/luna_bj/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23885f937c68c008b6d78515385bfc9d72ab84ccde678ae1920384574eb2ed31 +size 156480 diff --git a/game/images/CG/luna_bj/blank.webp b/game/images/CG/luna_bj/blank.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/images/CG/luna_bj/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/images/CG/luna_bj/gene.webp b/game/images/CG/luna_bj/gene.webp new file mode 100644 index 00000000..9db77cb8 --- /dev/null +++ b/game/images/CG/luna_bj/gene.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91b322fddeab70be518973c9bf8f6b6a76f143d01c59aa016e1a344820419814 +size 75100 diff --git a/game/images/CG/luna_bj/herm.webp b/game/images/CG/luna_bj/herm.webp new file mode 100644 index 00000000..ab8d1f07 --- /dev/null +++ b/game/images/CG/luna_bj/herm.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87e6ec2ecde3718c807ae2ddcd30ba169babcf678620a30614499c40a438c9c3 +size 86088 diff --git a/game/images/CG/luna_desk/1.webp b/game/images/CG/luna_desk/1.webp new file mode 100644 index 00000000..7b51d4ce --- /dev/null +++ b/game/images/CG/luna_desk/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9341348405bc3692b78ccb718b69f3e95cb6aadbe346d45cfba68040fa9de414 +size 330414 diff --git a/game/images/CG/luna_desk/10.webp b/game/images/CG/luna_desk/10.webp new file mode 100644 index 00000000..cc002955 --- /dev/null +++ b/game/images/CG/luna_desk/10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9c8c259e6520d88a97fd0362077f02341a886f1a877598a1afd985fe2984de7 +size 331224 diff --git a/game/images/CG/luna_desk/11.webp b/game/images/CG/luna_desk/11.webp new file mode 100644 index 00000000..b8642697 --- /dev/null +++ b/game/images/CG/luna_desk/11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d16c851e3f1b47e8ae3242146c819db5837bb7cb030047e569f55e613e8685cb +size 342862 diff --git a/game/images/CG/luna_desk/12.webp b/game/images/CG/luna_desk/12.webp new file mode 100644 index 00000000..e0a07546 --- /dev/null +++ b/game/images/CG/luna_desk/12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12f008129c2cb416f3fb3d2757f2550517b71d56c75bdacf612c468935a07281 +size 343070 diff --git a/game/images/CG/luna_desk/13.webp b/game/images/CG/luna_desk/13.webp new file mode 100644 index 00000000..09fa0d73 --- /dev/null +++ b/game/images/CG/luna_desk/13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2648b7207c931ddc2f89e63c8cb484647b12e8605baaabb010a90cce2a661d4 +size 342076 diff --git a/game/images/CG/luna_desk/14.webp b/game/images/CG/luna_desk/14.webp new file mode 100644 index 00000000..1929e89a --- /dev/null +++ b/game/images/CG/luna_desk/14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68a432806aaf81529be2a1fe895f65ca2de584330dc89315d239c2ae1a857729 +size 342714 diff --git a/game/images/CG/luna_desk/15.webp b/game/images/CG/luna_desk/15.webp new file mode 100644 index 00000000..5c6bef11 --- /dev/null +++ b/game/images/CG/luna_desk/15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85db9174f5584fb62e6185d74efa3ddb433447aebf6458fa863e5246e02fabcd +size 344528 diff --git a/game/images/CG/luna_desk/16.webp b/game/images/CG/luna_desk/16.webp new file mode 100644 index 00000000..fa34df30 --- /dev/null +++ b/game/images/CG/luna_desk/16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b54a5f0079a7afbb692560e7c3f8f1ad9292fa6e6aad7ba68685ceff7503312a +size 316036 diff --git a/game/images/CG/luna_desk/17.webp b/game/images/CG/luna_desk/17.webp new file mode 100644 index 00000000..dadc44b0 --- /dev/null +++ b/game/images/CG/luna_desk/17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0d08f8c37e2da57b633159ceb1cc611d711943651eeddfcf45aa0f621e035e5 +size 315976 diff --git a/game/images/CG/luna_desk/18.webp b/game/images/CG/luna_desk/18.webp new file mode 100644 index 00000000..694daab8 --- /dev/null +++ b/game/images/CG/luna_desk/18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9af48e9afe4a99bd6e79cb5bb0b1bf0fea4bc66a59b4a7783492488bf1869be0 +size 316282 diff --git a/game/images/CG/luna_desk/19.webp b/game/images/CG/luna_desk/19.webp new file mode 100644 index 00000000..5902b5ec --- /dev/null +++ b/game/images/CG/luna_desk/19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5cccf5d9def3c237d4d94bb4421ac87b274bf263a269d9e23ab175676183b56 +size 315648 diff --git a/game/images/CG/luna_desk/2.webp b/game/images/CG/luna_desk/2.webp new file mode 100644 index 00000000..fa2cfeba --- /dev/null +++ b/game/images/CG/luna_desk/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3ffac806976b45cf577ae0bf389cd14a55fdad5dc79dc4439a76a4dc58bbbf6 +size 327564 diff --git a/game/images/CG/luna_desk/20.webp b/game/images/CG/luna_desk/20.webp new file mode 100644 index 00000000..db1503c7 --- /dev/null +++ b/game/images/CG/luna_desk/20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdc28da381a7030a56d8ac3c65bf955cb37c735e3ecf5051c93f2d97ae9537b5 +size 316048 diff --git a/game/images/CG/luna_desk/21.webp b/game/images/CG/luna_desk/21.webp new file mode 100644 index 00000000..70da836c --- /dev/null +++ b/game/images/CG/luna_desk/21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a240f7c4cdefaa9ad29b913a4e73e469e2b416f7dd87906eceadf6da5723aa25 +size 316184 diff --git a/game/images/CG/luna_desk/22.webp b/game/images/CG/luna_desk/22.webp new file mode 100644 index 00000000..ee1330ef --- /dev/null +++ b/game/images/CG/luna_desk/22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aed4cc77275e47ff1d3e3a08ef07ef0e744d7db77257edff9744666c917cc143 +size 337360 diff --git a/game/images/CG/luna_desk/23.webp b/game/images/CG/luna_desk/23.webp new file mode 100644 index 00000000..957a820a --- /dev/null +++ b/game/images/CG/luna_desk/23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a04e8e429df292ac8fa8d9e936a60191a37217c79bdff03e061df86cd263e6f +size 335394 diff --git a/game/images/CG/luna_desk/24.webp b/game/images/CG/luna_desk/24.webp new file mode 100644 index 00000000..cc3dce19 --- /dev/null +++ b/game/images/CG/luna_desk/24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8a22e31051880257fe71c16343c27c97cdb0a51d91d44c197d0d4c7a4028831 +size 335540 diff --git a/game/images/CG/luna_desk/25.webp b/game/images/CG/luna_desk/25.webp new file mode 100644 index 00000000..3bf4be28 --- /dev/null +++ b/game/images/CG/luna_desk/25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3266e8c13e1a0710de038941162bee11bec548b5f7835b2b27a1ff7c6eb272f +size 336122 diff --git a/game/images/CG/luna_desk/26.webp b/game/images/CG/luna_desk/26.webp new file mode 100644 index 00000000..617af21a --- /dev/null +++ b/game/images/CG/luna_desk/26.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:836c87ece35dd0ed6a6e680005fe1584db676ca88af52d7e6d558f6d823a4d08 +size 335454 diff --git a/game/images/CG/luna_desk/27.webp b/game/images/CG/luna_desk/27.webp new file mode 100644 index 00000000..458415ba --- /dev/null +++ b/game/images/CG/luna_desk/27.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1147a4d5b687f25c34efc9425239eb95a8dfa07b34fb24bf0e5369e30d549091 +size 316112 diff --git a/game/images/CG/luna_desk/28.webp b/game/images/CG/luna_desk/28.webp new file mode 100644 index 00000000..8fa89137 --- /dev/null +++ b/game/images/CG/luna_desk/28.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:576ec32b282e78a5ed3e146b4bf36dd0573290fab19e8565588b8db8a7aeb410 +size 316276 diff --git a/game/images/CG/luna_desk/29.webp b/game/images/CG/luna_desk/29.webp new file mode 100644 index 00000000..137707e8 --- /dev/null +++ b/game/images/CG/luna_desk/29.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8dce4253d1da46dcfa962b0781b717a1dbf9af9f8375a24357417bece2665a1 +size 311800 diff --git a/game/images/CG/luna_desk/3.webp b/game/images/CG/luna_desk/3.webp new file mode 100644 index 00000000..b0ab5672 --- /dev/null +++ b/game/images/CG/luna_desk/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ef5dc8cbf8d4fd8caa6eb1aa66bb7fd450c64598f7a9105dba70bc830a17cdd +size 329938 diff --git a/game/images/CG/luna_desk/30.webp b/game/images/CG/luna_desk/30.webp new file mode 100644 index 00000000..70370f8d --- /dev/null +++ b/game/images/CG/luna_desk/30.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48c0e87c698c3bf16cade5e9b676d1103711efc7b55b02b122b05dd2f24e1f3e +size 320046 diff --git a/game/images/CG/luna_desk/31.webp b/game/images/CG/luna_desk/31.webp new file mode 100644 index 00000000..73891bbd --- /dev/null +++ b/game/images/CG/luna_desk/31.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9629a1f2555061cf44e80dbed34f6c3137aabd4d72112d4ef3192fd699fda7c6 +size 319920 diff --git a/game/images/CG/luna_desk/32.webp b/game/images/CG/luna_desk/32.webp new file mode 100644 index 00000000..95e8c7d1 --- /dev/null +++ b/game/images/CG/luna_desk/32.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0cffffb075525097d77f6715f44aa5022f25b215e232fc68ea739ceb415fcd85 +size 336672 diff --git a/game/images/CG/luna_desk/33.webp b/game/images/CG/luna_desk/33.webp new file mode 100644 index 00000000..4dcd075a --- /dev/null +++ b/game/images/CG/luna_desk/33.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c40c424952c40ff6aaa7ed4fdd4f38a523a64b2f30a09b709b55fff0f610e4f +size 343428 diff --git a/game/images/CG/luna_desk/34.webp b/game/images/CG/luna_desk/34.webp new file mode 100644 index 00000000..7be53a8a --- /dev/null +++ b/game/images/CG/luna_desk/34.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c9920d7023661457a4aad9c75395cc2d024be78284c223d7c2b30c3b4b8c903 +size 373592 diff --git a/game/images/CG/luna_desk/35.webp b/game/images/CG/luna_desk/35.webp new file mode 100644 index 00000000..9922d24d --- /dev/null +++ b/game/images/CG/luna_desk/35.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:933e2d2f26ab2d52fc86c2efde4caa5fe368c1c2d813fd4ec7a4b399b60d6d90 +size 371414 diff --git a/game/images/CG/luna_desk/36.webp b/game/images/CG/luna_desk/36.webp new file mode 100644 index 00000000..278e9ea9 --- /dev/null +++ b/game/images/CG/luna_desk/36.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31444e8c5cdc398b8aad9cbfb83a878f544e61bac0e2d9c09074101a0910ff50 +size 341428 diff --git a/game/images/CG/luna_desk/37.webp b/game/images/CG/luna_desk/37.webp new file mode 100644 index 00000000..4d06039c --- /dev/null +++ b/game/images/CG/luna_desk/37.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbd26fbbf76d8be24f17bb72e5ad32e4ef9a02461d0006c34642b4d15364730e +size 340962 diff --git a/game/images/CG/luna_desk/38.webp b/game/images/CG/luna_desk/38.webp new file mode 100644 index 00000000..9b28bc6a --- /dev/null +++ b/game/images/CG/luna_desk/38.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44965d56d7369ab4dc36b5c1d06064c3fc2d476de9f8f3849d247d9b35549a6e +size 341266 diff --git a/game/images/CG/luna_desk/39.webp b/game/images/CG/luna_desk/39.webp new file mode 100644 index 00000000..4fee5742 --- /dev/null +++ b/game/images/CG/luna_desk/39.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d6fe185e3b9582905982633eead2084cf6312068da21e221f0d50ce4de92cc1 +size 340936 diff --git a/game/images/CG/luna_desk/4.webp b/game/images/CG/luna_desk/4.webp new file mode 100644 index 00000000..2934a70e --- /dev/null +++ b/game/images/CG/luna_desk/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:263a9402cab0e15c63efb3a66ed7edcc31f24b4e88aafdc81157bf891278c3d9 +size 329200 diff --git a/game/images/CG/luna_desk/40.webp b/game/images/CG/luna_desk/40.webp new file mode 100644 index 00000000..88621a74 --- /dev/null +++ b/game/images/CG/luna_desk/40.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7b8b12f73a455a4c9004bfecd85643deaaec8133dc08df4df2f063bb88ef787 +size 342304 diff --git a/game/images/CG/luna_desk/41.webp b/game/images/CG/luna_desk/41.webp new file mode 100644 index 00000000..33d13f12 --- /dev/null +++ b/game/images/CG/luna_desk/41.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32a09e2923d1eb4da143cd4e8df01c0af10e52ae9196d205d3bebd8831db2e9b +size 341026 diff --git a/game/images/CG/luna_desk/42.webp b/game/images/CG/luna_desk/42.webp new file mode 100644 index 00000000..aa2024e8 --- /dev/null +++ b/game/images/CG/luna_desk/42.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfb1415fb323279bd8ea7c1e2a25e4df490ed213d37ab332b3aa42c5f862a81b +size 354088 diff --git a/game/images/CG/luna_desk/43.webp b/game/images/CG/luna_desk/43.webp new file mode 100644 index 00000000..17e78064 --- /dev/null +++ b/game/images/CG/luna_desk/43.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5270f974d8acdd288b2d911755a657c388442936693dff0d413ab07fecf4c581 +size 353426 diff --git a/game/images/CG/luna_desk/44.webp b/game/images/CG/luna_desk/44.webp new file mode 100644 index 00000000..c217bf82 --- /dev/null +++ b/game/images/CG/luna_desk/44.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa4b897108d1177c709482d3f0f07549e941766063677bb354170d2be2ea3a64 +size 354028 diff --git a/game/images/CG/luna_desk/45.webp b/game/images/CG/luna_desk/45.webp new file mode 100644 index 00000000..c5ffef17 --- /dev/null +++ b/game/images/CG/luna_desk/45.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3f59b866d6efb896c92543c3af1e247943675f2fe614e64bca7dba2f6199d68 +size 358586 diff --git a/game/images/CG/luna_desk/46.webp b/game/images/CG/luna_desk/46.webp new file mode 100644 index 00000000..349f8c0e --- /dev/null +++ b/game/images/CG/luna_desk/46.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9b6a9e56588464c17d8ad2aadc42b191107547636c8fe5e53b110cdeabb5698 +size 358780 diff --git a/game/images/CG/luna_desk/47.webp b/game/images/CG/luna_desk/47.webp new file mode 100644 index 00000000..268ce7d8 --- /dev/null +++ b/game/images/CG/luna_desk/47.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0859b6a8def07d8d8cd8d27da072f04812651d2437d1e65af739f9f780f8428 +size 358948 diff --git a/game/images/CG/luna_desk/48.webp b/game/images/CG/luna_desk/48.webp new file mode 100644 index 00000000..25cb4753 --- /dev/null +++ b/game/images/CG/luna_desk/48.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49d60b74e2a759914c120edf7e8709ed8aa2154ca66acde29219caceb844a843 +size 358420 diff --git a/game/images/CG/luna_desk/49.webp b/game/images/CG/luna_desk/49.webp new file mode 100644 index 00000000..752b9c56 --- /dev/null +++ b/game/images/CG/luna_desk/49.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3da4bafc74c87f1d204de2e24450b4d7d012840f07e170546f7f2a2048c012b4 +size 358888 diff --git a/game/images/CG/luna_desk/5.webp b/game/images/CG/luna_desk/5.webp new file mode 100644 index 00000000..a8c56c7b --- /dev/null +++ b/game/images/CG/luna_desk/5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b88b5e66535d6181eb75c2bcd50f21914dcb170c8e68263e97d4e85129fad95a +size 329456 diff --git a/game/images/CG/luna_desk/50.webp b/game/images/CG/luna_desk/50.webp new file mode 100644 index 00000000..a41e65e8 --- /dev/null +++ b/game/images/CG/luna_desk/50.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36c520f95c1f481f6a7194483a8d5cccf04bd15ba8883f371113f64e9a540f69 +size 362090 diff --git a/game/images/CG/luna_desk/51.webp b/game/images/CG/luna_desk/51.webp new file mode 100644 index 00000000..fa819f3c --- /dev/null +++ b/game/images/CG/luna_desk/51.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c09bb387eaa28d6f04a1bc47e6dc79f169e519ce2c0d97d046838accbcc4cf79 +size 358744 diff --git a/game/images/CG/luna_desk/52.webp b/game/images/CG/luna_desk/52.webp new file mode 100644 index 00000000..838c0d6c --- /dev/null +++ b/game/images/CG/luna_desk/52.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:540ed2279cdece149345eb498980fd9ad035aeff8d82ca2bfbd8cf5e66248d62 +size 358812 diff --git a/game/images/CG/luna_desk/53.webp b/game/images/CG/luna_desk/53.webp new file mode 100644 index 00000000..ef26451a --- /dev/null +++ b/game/images/CG/luna_desk/53.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c900cbfaaaa7e378ebe8349bb5138f57773f7771855384c172d897676fb2a0d7 +size 287414 diff --git a/game/images/CG/luna_desk/54.webp b/game/images/CG/luna_desk/54.webp new file mode 100644 index 00000000..4a1a5404 --- /dev/null +++ b/game/images/CG/luna_desk/54.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:deb2199b1338cff47e891deaa409e0250ba9834b24446e1f680533aa4dd9985c +size 326548 diff --git a/game/images/CG/luna_desk/55.webp b/game/images/CG/luna_desk/55.webp new file mode 100644 index 00000000..db5a1aa3 --- /dev/null +++ b/game/images/CG/luna_desk/55.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff8d1cd21524b9ffc8aee34b50821fbd8fa6ba881a2369352628312accf4e23e +size 326660 diff --git a/game/images/CG/luna_desk/56.webp b/game/images/CG/luna_desk/56.webp new file mode 100644 index 00000000..34449ed0 --- /dev/null +++ b/game/images/CG/luna_desk/56.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b2d7ee320174b9edd007014e84c51a92a638b93a626ebaee27e2d10b84236ea +size 321068 diff --git a/game/images/CG/luna_desk/57.webp b/game/images/CG/luna_desk/57.webp new file mode 100644 index 00000000..6c704432 --- /dev/null +++ b/game/images/CG/luna_desk/57.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f17ba7761874facf76282ee1188e351da363c2d0291bb9afadb2dfef1bbcc4d8 +size 303608 diff --git a/game/images/CG/luna_desk/58.webp b/game/images/CG/luna_desk/58.webp new file mode 100644 index 00000000..70943cd6 --- /dev/null +++ b/game/images/CG/luna_desk/58.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5576c1aae7cfbd1040fe0e7a3cd6d54cbd465119ba21db4df12f4ecc2d67325 +size 303988 diff --git a/game/images/CG/luna_desk/6.webp b/game/images/CG/luna_desk/6.webp new file mode 100644 index 00000000..b04f3d25 --- /dev/null +++ b/game/images/CG/luna_desk/6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71ac58d9d1851fd45d4f3a2ec93a562bbb3835f0f7d11c9736792e6eace599bd +size 328424 diff --git a/game/images/CG/luna_desk/7.webp b/game/images/CG/luna_desk/7.webp new file mode 100644 index 00000000..f32fa762 --- /dev/null +++ b/game/images/CG/luna_desk/7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cee43da7a653bfbc6961975b44d5dd55a9b7ced781c72bdcd592f02e8373d5a0 +size 328068 diff --git a/game/images/CG/luna_desk/8.webp b/game/images/CG/luna_desk/8.webp new file mode 100644 index 00000000..2568d912 --- /dev/null +++ b/game/images/CG/luna_desk/8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4eec913dbe1a622cb793508aefc4ef4b9fa3273c7c2cd378c694938c7cfb192 +size 328954 diff --git a/game/images/CG/luna_desk/9.webp b/game/images/CG/luna_desk/9.webp new file mode 100644 index 00000000..d58e91a7 --- /dev/null +++ b/game/images/CG/luna_desk/9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d5df8cd5a8c00fc17168aaa564ec6d39065737811e1e4b783d7c44f389ec2f9 +size 330682 diff --git a/game/images/CG/luna_desk/base.webp b/game/images/CG/luna_desk/base.webp new file mode 100644 index 00000000..16a92cb0 --- /dev/null +++ b/game/images/CG/luna_desk/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b3cb5416d8826b1515b604ec259b7eb593502114ddda074c504c05eea069425 +size 53724 diff --git a/game/images/CG/luna_desk/blank.webp b/game/images/CG/luna_desk/blank.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/images/CG/luna_desk/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/images/CG/luna_desk/f44.webp b/game/images/CG/luna_desk/f44.webp new file mode 100644 index 00000000..6c46073c --- /dev/null +++ b/game/images/CG/luna_desk/f44.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b85d5e96696233281f76a5ba84769cd8645fefc805f89fd3c4978a2cc024b88 +size 358822 diff --git a/game/images/CG/luna_desk/genie.webp b/game/images/CG/luna_desk/genie.webp new file mode 100644 index 00000000..818cb66b --- /dev/null +++ b/game/images/CG/luna_desk/genie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a1420e076984563603631b1049c3f6d5ae0905195e9c681149ccb0fc96b92a8 +size 75318 diff --git a/game/images/CG/luna_desk/l1.webp b/game/images/CG/luna_desk/l1.webp new file mode 100644 index 00000000..54686313 --- /dev/null +++ b/game/images/CG/luna_desk/l1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b03b412b2c2cbc8bd080853a60836cec78ba0f5ab1df09d9e82b64689b371e6 +size 329138 diff --git a/game/images/CG/luna_desk/l10.webp b/game/images/CG/luna_desk/l10.webp new file mode 100644 index 00000000..a4a25cc8 --- /dev/null +++ b/game/images/CG/luna_desk/l10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e488830e97e116781153f4edec7491c79ca10debd192088ebb903191658cfa8c +size 282280 diff --git a/game/images/CG/luna_desk/l2.webp b/game/images/CG/luna_desk/l2.webp new file mode 100644 index 00000000..a103c0ba --- /dev/null +++ b/game/images/CG/luna_desk/l2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bfd5a09334e730e2401f0fb3a45236dfedd8f8cfda056eb8e8f7f09417ba13e +size 320062 diff --git a/game/images/CG/luna_desk/l3.webp b/game/images/CG/luna_desk/l3.webp new file mode 100644 index 00000000..99ae59e9 --- /dev/null +++ b/game/images/CG/luna_desk/l3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9cb7e821c85a641c2218b91b9852d20abf864ff4f134db95892a66238798d10 +size 312886 diff --git a/game/images/CG/luna_desk/l4.webp b/game/images/CG/luna_desk/l4.webp new file mode 100644 index 00000000..3818432f --- /dev/null +++ b/game/images/CG/luna_desk/l4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a16a04a22cc53de5717fd107c2c0f82c9b5ec02ab4229a8f09ae281a41922af6 +size 301450 diff --git a/game/images/CG/luna_desk/l5.webp b/game/images/CG/luna_desk/l5.webp new file mode 100644 index 00000000..d0e6e9bb --- /dev/null +++ b/game/images/CG/luna_desk/l5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c84b9dabf804d21b63683da41fd0320da66270662863460d84529a11585162c1 +size 292392 diff --git a/game/images/CG/luna_desk/l6.webp b/game/images/CG/luna_desk/l6.webp new file mode 100644 index 00000000..9f91cb98 --- /dev/null +++ b/game/images/CG/luna_desk/l6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dbb59267737ac7470d1f61ed88ba6b1d49722d0d68a984c1a1ca118df7f8d8f +size 319328 diff --git a/game/images/CG/luna_desk/l7.webp b/game/images/CG/luna_desk/l7.webp new file mode 100644 index 00000000..8a982756 --- /dev/null +++ b/game/images/CG/luna_desk/l7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afda7fa57448686ec34b59129dfb0225f915dbd83e4fa271b6e36acb7b067288 +size 311676 diff --git a/game/images/CG/luna_desk/l8.webp b/game/images/CG/luna_desk/l8.webp new file mode 100644 index 00000000..cbd9c787 --- /dev/null +++ b/game/images/CG/luna_desk/l8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e8ff3c4a7416fcda538b28954eaa193902a4430586e75e29e45b3a9b99fa449 +size 304612 diff --git a/game/images/CG/luna_desk/l9.webp b/game/images/CG/luna_desk/l9.webp new file mode 100644 index 00000000..c1cbf7dc --- /dev/null +++ b/game/images/CG/luna_desk/l9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c7a77ffdeecb5e624d331070f19c3e4e3b5ed7ddf273900e6f719dbe1c7a597 +size 292974 diff --git a/game/images/CG/luna_desk2/base.webp b/game/images/CG/luna_desk2/base.webp new file mode 100644 index 00000000..16a92cb0 --- /dev/null +++ b/game/images/CG/luna_desk2/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b3cb5416d8826b1515b604ec259b7eb593502114ddda074c504c05eea069425 +size 53724 diff --git a/game/images/CG/luna_desk2/base_2.webp b/game/images/CG/luna_desk2/base_2.webp new file mode 100644 index 00000000..83732192 --- /dev/null +++ b/game/images/CG/luna_desk2/base_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f02e32825cc16e8dfd37569f764ea94d5bb1c9469fa97e6b7a902111235f9b64 +size 34470 diff --git a/game/images/CG/luna_desk2/blank.webp b/game/images/CG/luna_desk2/blank.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/images/CG/luna_desk2/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/images/CG/luna_desk2/border.webp b/game/images/CG/luna_desk2/border.webp new file mode 100644 index 00000000..f6079380 --- /dev/null +++ b/game/images/CG/luna_desk2/border.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca758742556a61fe755936aca31fd1c62b9145899f40a9972d759ae90f5c9d4d +size 84904 diff --git a/game/images/CG/luna_desk2/c_base.webp b/game/images/CG/luna_desk2/c_base.webp new file mode 100644 index 00000000..1fe71d96 --- /dev/null +++ b/game/images/CG/luna_desk2/c_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a0ca0f97ae50fd8ece32a0de946500cdd95cfe56fa1bde7c8439bb9c95568a8 +size 14706 diff --git a/game/images/CG/luna_desk2/c_blush.webp b/game/images/CG/luna_desk2/c_blush.webp new file mode 100644 index 00000000..03c3edad --- /dev/null +++ b/game/images/CG/luna_desk2/c_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:171e7149ae944142bc3211c2e297ca95b70d449014cef9eaa3575beb5bb529ad +size 19284 diff --git a/game/images/CG/luna_desk2/cum_1.webp b/game/images/CG/luna_desk2/cum_1.webp new file mode 100644 index 00000000..480846d3 --- /dev/null +++ b/game/images/CG/luna_desk2/cum_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49f7c1e4560cf84a132950e48f98f621da1b264d1e1b18d1e6a6bb39b6ebd6ca +size 16284 diff --git a/game/images/CG/luna_desk2/cum_2.webp b/game/images/CG/luna_desk2/cum_2.webp new file mode 100644 index 00000000..98d2a1f9 --- /dev/null +++ b/game/images/CG/luna_desk2/cum_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10f5cc569e01e2f6e1b1a18189b4935300efe16c8d00545e648ec204a40110ea +size 30026 diff --git a/game/images/CG/luna_desk2/cum_3.webp b/game/images/CG/luna_desk2/cum_3.webp new file mode 100644 index 00000000..52a2b94a --- /dev/null +++ b/game/images/CG/luna_desk2/cum_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fefaace738187de1faf42ef6a9bfc857faca9e30704fac6e210f436338faec98 +size 45822 diff --git a/game/images/CG/luna_desk2/cum_4.webp b/game/images/CG/luna_desk2/cum_4.webp new file mode 100644 index 00000000..7b208ca0 --- /dev/null +++ b/game/images/CG/luna_desk2/cum_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5715db22b16ccf6daf30ed019f0fd926e0a996ed3d8901f074bbf43ca732ae9 +size 1674 diff --git a/game/images/CG/luna_desk2/cum_5.webp b/game/images/CG/luna_desk2/cum_5.webp new file mode 100644 index 00000000..2e84e5c8 --- /dev/null +++ b/game/images/CG/luna_desk2/cum_5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:337a422669ce4472fd94529305bb9a97b1124bb546834bfe24288960df5a1910 +size 1134 diff --git a/game/images/CG/luna_desk2/curly_hair.webp b/game/images/CG/luna_desk2/curly_hair.webp new file mode 100644 index 00000000..0a4d4ff3 --- /dev/null +++ b/game/images/CG/luna_desk2/curly_hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f69661771400832a960c840c490318a64356eb0529d36dfe5afb9d8aa2b694d8 +size 194510 diff --git a/game/images/CG/luna_desk2/curly_hair_top.webp b/game/images/CG/luna_desk2/curly_hair_top.webp new file mode 100644 index 00000000..1823ff8c --- /dev/null +++ b/game/images/CG/luna_desk2/curly_hair_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf6a6c264abc345aa99cf34eadaf571747123379205591452ba6fdc75c7b975c +size 116808 diff --git a/game/images/CG/luna_desk2/dick_0.webp b/game/images/CG/luna_desk2/dick_0.webp new file mode 100644 index 00000000..b4bee3ec --- /dev/null +++ b/game/images/CG/luna_desk2/dick_0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8bf4e2c5950b02ea8b66ccd168256c442cabdc1c4f23d29f2d83301077639e1 +size 18498 diff --git a/game/images/CG/luna_desk2/dick_1.webp b/game/images/CG/luna_desk2/dick_1.webp new file mode 100644 index 00000000..b4bee3ec --- /dev/null +++ b/game/images/CG/luna_desk2/dick_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8bf4e2c5950b02ea8b66ccd168256c442cabdc1c4f23d29f2d83301077639e1 +size 18498 diff --git a/game/images/CG/luna_desk2/dick_10.webp b/game/images/CG/luna_desk2/dick_10.webp new file mode 100644 index 00000000..814c7e51 --- /dev/null +++ b/game/images/CG/luna_desk2/dick_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f55e2caa89767bd61614ca93d34f542b5aea317bec9d826cfaa0a186618e92fc +size 10960 diff --git a/game/images/CG/luna_desk2/dick_11.webp b/game/images/CG/luna_desk2/dick_11.webp new file mode 100644 index 00000000..66eba048 --- /dev/null +++ b/game/images/CG/luna_desk2/dick_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24e69b2f4f55ec1240e831e5af46910f7b58bdb6d328d9ca7beb025329177c6c +size 9842 diff --git a/game/images/CG/luna_desk2/dick_12.webp b/game/images/CG/luna_desk2/dick_12.webp new file mode 100644 index 00000000..4c978eb3 --- /dev/null +++ b/game/images/CG/luna_desk2/dick_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a610962df577d81ff9f4d494b1222097ae444fef602fc2574c0f8d151bb4193e +size 8494 diff --git a/game/images/CG/luna_desk2/dick_13.webp b/game/images/CG/luna_desk2/dick_13.webp new file mode 100644 index 00000000..04f029f7 --- /dev/null +++ b/game/images/CG/luna_desk2/dick_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f613cf55e0e2f4d90fb4878c7cb8ace0a631852238958c327bf33a2fee21658 +size 7778 diff --git a/game/images/CG/luna_desk2/dick_14.webp b/game/images/CG/luna_desk2/dick_14.webp new file mode 100644 index 00000000..6ad2e325 --- /dev/null +++ b/game/images/CG/luna_desk2/dick_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9cb8420be57f9ae80fc354907c00ffe143ffe2f269682324c33db96f9bea2e17 +size 6966 diff --git a/game/images/CG/luna_desk2/dick_15.webp b/game/images/CG/luna_desk2/dick_15.webp new file mode 100644 index 00000000..23f3c225 --- /dev/null +++ b/game/images/CG/luna_desk2/dick_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc5e732bcc214eb4313d6c9f704a52753e7936ff717cc58ba565ab542fef6a05 +size 6182 diff --git a/game/images/CG/luna_desk2/dick_16.webp b/game/images/CG/luna_desk2/dick_16.webp new file mode 100644 index 00000000..46f969f1 --- /dev/null +++ b/game/images/CG/luna_desk2/dick_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23d99e63fd4263d3600735320207fd3ef2a0c872dcfba9a7c3f12f69670384e1 +size 6098 diff --git a/game/images/CG/luna_desk2/dick_2.webp b/game/images/CG/luna_desk2/dick_2.webp new file mode 100644 index 00000000..b4bee3ec --- /dev/null +++ b/game/images/CG/luna_desk2/dick_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8bf4e2c5950b02ea8b66ccd168256c442cabdc1c4f23d29f2d83301077639e1 +size 18498 diff --git a/game/images/CG/luna_desk2/dick_3.webp b/game/images/CG/luna_desk2/dick_3.webp new file mode 100644 index 00000000..e3fc3aa2 --- /dev/null +++ b/game/images/CG/luna_desk2/dick_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad6d26763b1c39e19c7be1050fc647677b56129ca538f2c8fd239728893e0387 +size 17220 diff --git a/game/images/CG/luna_desk2/dick_4.webp b/game/images/CG/luna_desk2/dick_4.webp new file mode 100644 index 00000000..2188bccb --- /dev/null +++ b/game/images/CG/luna_desk2/dick_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1931f6c018865f8c5302a390ee5cb8d9483df292d09205bd1ca9e1b4147a48f +size 19298 diff --git a/game/images/CG/luna_desk2/dick_5.webp b/game/images/CG/luna_desk2/dick_5.webp new file mode 100644 index 00000000..5b5a55d0 --- /dev/null +++ b/game/images/CG/luna_desk2/dick_5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9e5412a9843584af85a212a93b91ca11cbab909f5a72b9fe8c20b9bbbc6b2f5 +size 17780 diff --git a/game/images/CG/luna_desk2/dick_6.webp b/game/images/CG/luna_desk2/dick_6.webp new file mode 100644 index 00000000..646b4f2d --- /dev/null +++ b/game/images/CG/luna_desk2/dick_6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:637ee9e6b97b5a12d2d3dd66c71539e537feb2d45715c3543a7e74b292170206 +size 16116 diff --git a/game/images/CG/luna_desk2/dick_7.webp b/game/images/CG/luna_desk2/dick_7.webp new file mode 100644 index 00000000..bdf8fa61 --- /dev/null +++ b/game/images/CG/luna_desk2/dick_7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:260714963f60665b17ce6a48c5d2f6479990c0943997210bc7fddb909212bd08 +size 14594 diff --git a/game/images/CG/luna_desk2/dick_8.webp b/game/images/CG/luna_desk2/dick_8.webp new file mode 100644 index 00000000..d7c3817d --- /dev/null +++ b/game/images/CG/luna_desk2/dick_8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2a76790850da99e13a788ead926bea05826e5c7cc9f12f1dab99c4da816872e +size 13124 diff --git a/game/images/CG/luna_desk2/dick_9.webp b/game/images/CG/luna_desk2/dick_9.webp new file mode 100644 index 00000000..851cff41 --- /dev/null +++ b/game/images/CG/luna_desk2/dick_9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d37e4f79b948eb07d958d5e456428760ed60d54326e4ecf2e96200f4d794c19e +size 11910 diff --git a/game/images/CG/luna_desk2/down_N.webp b/game/images/CG/luna_desk2/down_N.webp new file mode 100644 index 00000000..90df55a3 --- /dev/null +++ b/game/images/CG/luna_desk2/down_N.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4916135ad0fbdc73fe3d6de667606166a66946943fc935f91a617dfd73e87416 +size 2290 diff --git a/game/images/CG/luna_desk2/eb_angry.webp b/game/images/CG/luna_desk2/eb_angry.webp new file mode 100644 index 00000000..4224ce7c --- /dev/null +++ b/game/images/CG/luna_desk2/eb_angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65b9567b13f45a0aaa4e3be6740d2e23576a21db114358d012bf1b1b070de5e9 +size 5972 diff --git a/game/images/CG/luna_desk2/eb_base.webp b/game/images/CG/luna_desk2/eb_base.webp new file mode 100644 index 00000000..7f7c9cb3 --- /dev/null +++ b/game/images/CG/luna_desk2/eb_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1a50e56359b2bd56816ecd69fb7465e96ec0ebdc298dbb4ec3ffe6e1a39fc24b +size 4314 diff --git a/game/images/CG/luna_desk2/eb_mad.webp b/game/images/CG/luna_desk2/eb_mad.webp new file mode 100644 index 00000000..17c49c53 --- /dev/null +++ b/game/images/CG/luna_desk2/eb_mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ccbf978bbdc6e52eb08ab73520d89cee83fe6e3518be0b14d5825cb2e38bb3a +size 7424 diff --git a/game/images/CG/luna_desk2/eb_raised.webp b/game/images/CG/luna_desk2/eb_raised.webp new file mode 100644 index 00000000..205ae417 --- /dev/null +++ b/game/images/CG/luna_desk2/eb_raised.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d164c090360032266c7be9f2b58420167545325e3e270e11ebed02187b4a2ae +size 6382 diff --git a/game/images/CG/luna_desk2/eb_sad.webp b/game/images/CG/luna_desk2/eb_sad.webp new file mode 100644 index 00000000..bc3dc0e4 --- /dev/null +++ b/game/images/CG/luna_desk2/eb_sad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:628a3cbbea2a88ec38e7ba262012c0940ffe9d9cc66a767e6bb04bedf433e610 +size 7124 diff --git a/game/images/CG/luna_desk2/eye_angry.webp b/game/images/CG/luna_desk2/eye_angry.webp new file mode 100644 index 00000000..5761e113 --- /dev/null +++ b/game/images/CG/luna_desk2/eye_angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10899145371c5d593ae233add5f933831d90e00f81dd06f79ed684277431fab8 +size 9360 diff --git a/game/images/CG/luna_desk2/eye_base.webp b/game/images/CG/luna_desk2/eye_base.webp new file mode 100644 index 00000000..3af70913 --- /dev/null +++ b/game/images/CG/luna_desk2/eye_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8accd2cd7aa2e071b0c636be6a12f60662e0274a3dc1fc40c3597852107168b1 +size 9038 diff --git a/game/images/CG/luna_desk2/eye_closed.webp b/game/images/CG/luna_desk2/eye_closed.webp new file mode 100644 index 00000000..fef67ac8 --- /dev/null +++ b/game/images/CG/luna_desk2/eye_closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d476704b4a6a7439c0625ca2072ee44f12222329e74eee26a4df61cb7eedaafc +size 8116 diff --git a/game/images/CG/luna_desk2/eye_excited.webp b/game/images/CG/luna_desk2/eye_excited.webp new file mode 100644 index 00000000..8810be64 --- /dev/null +++ b/game/images/CG/luna_desk2/eye_excited.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6a565b4da3dd7e8b5395ef57cd4d81249b7530b807d9d5232f1f79809f2c94f +size 9654 diff --git a/game/images/CG/luna_desk2/eye_happyCl.webp b/game/images/CG/luna_desk2/eye_happyCl.webp new file mode 100644 index 00000000..fef67ac8 --- /dev/null +++ b/game/images/CG/luna_desk2/eye_happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d476704b4a6a7439c0625ca2072ee44f12222329e74eee26a4df61cb7eedaafc +size 8116 diff --git a/game/images/CG/luna_desk2/eye_mad.webp b/game/images/CG/luna_desk2/eye_mad.webp new file mode 100644 index 00000000..cf6b0716 --- /dev/null +++ b/game/images/CG/luna_desk2/eye_mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dcaece4982f36d19593dad30a16fced3d7197634a765870b59684834b95add99 +size 9476 diff --git a/game/images/CG/luna_desk2/eye_sad.webp b/game/images/CG/luna_desk2/eye_sad.webp new file mode 100644 index 00000000..e5152030 --- /dev/null +++ b/game/images/CG/luna_desk2/eye_sad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:869bb7cf79d90b314bcaf7064f47b73d1dc1671adea80dc3d98e4e0de917eb2a +size 8884 diff --git a/game/images/CG/luna_desk2/eye_seductive.webp b/game/images/CG/luna_desk2/eye_seductive.webp new file mode 100644 index 00000000..a746d8a7 --- /dev/null +++ b/game/images/CG/luna_desk2/eye_seductive.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:164774e6ef7b026b111c5cbe9bbed676ec74ef2495819ac987c46fe73f687157 +size 8948 diff --git a/game/images/CG/luna_desk2/eye_white.webp b/game/images/CG/luna_desk2/eye_white.webp new file mode 100644 index 00000000..50911f7a --- /dev/null +++ b/game/images/CG/luna_desk2/eye_white.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9805974d1bc27e3edffc9df9fadc230f0ebcaf762e5c80c9a28200ed13b14994 +size 3208 diff --git a/game/images/CG/luna_desk2/eye_wide.webp b/game/images/CG/luna_desk2/eye_wide.webp new file mode 100644 index 00000000..10d82640 --- /dev/null +++ b/game/images/CG/luna_desk2/eye_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99915621a5db5f74cdad24776cbd6a4e20c0da631fb31464bcd0280b360420df +size 4680 diff --git a/game/images/CG/luna_desk2/eye_wink.webp b/game/images/CG/luna_desk2/eye_wink.webp new file mode 100644 index 00000000..e18a4173 --- /dev/null +++ b/game/images/CG/luna_desk2/eye_wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9addcc73c024d388cd97fcecc03407c56f6ed55004b000ad8b936756db8b686a +size 8644 diff --git a/game/images/CG/luna_desk2/genie.webp b/game/images/CG/luna_desk2/genie.webp new file mode 100644 index 00000000..818cb66b --- /dev/null +++ b/game/images/CG/luna_desk2/genie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a1420e076984563603631b1049c3f6d5ae0905195e9c681149ccb0fc96b92a8 +size 75318 diff --git a/game/images/CG/luna_desk2/genie_robe.webp b/game/images/CG/luna_desk2/genie_robe.webp new file mode 100644 index 00000000..26ef0873 --- /dev/null +++ b/game/images/CG/luna_desk2/genie_robe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1b45564eb2bc7e530067d4fa83c512ee329b10a29dec33c914330a25206e2dd +size 50156 diff --git a/game/images/CG/luna_desk2/glasses.webp b/game/images/CG/luna_desk2/glasses.webp new file mode 100644 index 00000000..a5cf2d0f --- /dev/null +++ b/game/images/CG/luna_desk2/glasses.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e253f9e143294a790c1a1282fb1c16ee39f72ed93d9eba7da3bb8bbb620bed6d +size 43752 diff --git a/game/images/CG/luna_desk2/hand.webp b/game/images/CG/luna_desk2/hand.webp new file mode 100644 index 00000000..e90d6ae8 --- /dev/null +++ b/game/images/CG/luna_desk2/hand.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:060cf2f45a0e5e24f17c5d5989eede2a7061888cf257279352762297da5cea33 +size 23052 diff --git a/game/images/CG/luna_desk2/luna_base.webp b/game/images/CG/luna_desk2/luna_base.webp new file mode 100644 index 00000000..db8e92aa --- /dev/null +++ b/game/images/CG/luna_desk2/luna_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5d1747fddc921c517c75fcf9f967fab42371fdfd3f502547681c47acfacc8b2 +size 105854 diff --git a/game/images/CG/luna_desk2/luna_base_2.webp b/game/images/CG/luna_desk2/luna_base_2.webp new file mode 100644 index 00000000..ea8c478e --- /dev/null +++ b/game/images/CG/luna_desk2/luna_base_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f997e4dc674679ad2de9689b2830cfa88f2a17c462238f4c3ca39fdc000fa6a +size 81968 diff --git a/game/images/CG/luna_desk2/m_base.webp b/game/images/CG/luna_desk2/m_base.webp new file mode 100644 index 00000000..8c31ae10 --- /dev/null +++ b/game/images/CG/luna_desk2/m_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a5ed76a038261584e5b84bc5269a68619c680acc86ac92debbf69c795954a17 +size 2348 diff --git a/game/images/CG/luna_desk2/m_full.webp b/game/images/CG/luna_desk2/m_full.webp new file mode 100644 index 00000000..e98cdd1a --- /dev/null +++ b/game/images/CG/luna_desk2/m_full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41b1c0ee0c01820c30daf72246eb46b0cd6a5994631fe29d6b06043b6f08278b +size 11896 diff --git a/game/images/CG/luna_desk2/m_open.webp b/game/images/CG/luna_desk2/m_open.webp new file mode 100644 index 00000000..d3e9edf8 --- /dev/null +++ b/game/images/CG/luna_desk2/m_open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b11a145ea0ab5ab4b6654bbfaeae244949f7f1d8e1259a09ecb4141f22b68830 +size 4086 diff --git a/game/images/CG/luna_desk2/m_open_tongue.webp b/game/images/CG/luna_desk2/m_open_tongue.webp new file mode 100644 index 00000000..bc872ae3 --- /dev/null +++ b/game/images/CG/luna_desk2/m_open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a956eb46f72d1e18b02843b0440172ccd91c10e0fd9710e2240718712ad0904 +size 4024 diff --git a/game/images/CG/luna_desk2/m_pout.webp b/game/images/CG/luna_desk2/m_pout.webp new file mode 100644 index 00000000..abe5a4c4 --- /dev/null +++ b/game/images/CG/luna_desk2/m_pout.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f11ea3ababa6e6169868ace53307a81d431c7f68c92f10d477fd6094c670b93 +size 3080 diff --git a/game/images/CG/luna_desk2/m_sucking.webp b/game/images/CG/luna_desk2/m_sucking.webp new file mode 100644 index 00000000..8e9d7d56 --- /dev/null +++ b/game/images/CG/luna_desk2/m_sucking.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9dcd8a6dc53fd89716540d48e2fd87bd5947457cfec0d41280ec5dd8fec167e8 +size 13530 diff --git a/game/images/CG/luna_desk2/m_talk.webp b/game/images/CG/luna_desk2/m_talk.webp new file mode 100644 index 00000000..b196a999 --- /dev/null +++ b/game/images/CG/luna_desk2/m_talk.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c4a075c1ebce66754188aebe8c3e229b85a649376322586d3da5d5c26daf66b +size 3388 diff --git a/game/images/CG/luna_desk2/m_wide.webp b/game/images/CG/luna_desk2/m_wide.webp new file mode 100644 index 00000000..63e006a6 --- /dev/null +++ b/game/images/CG/luna_desk2/m_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4727d8839b4e79218bb5ee18a098c100d29f5a55fd4b0c7cbc6200a38b3dca3a +size 9986 diff --git a/game/images/CG/luna_desk2/m_wide_tongue.webp b/game/images/CG/luna_desk2/m_wide_tongue.webp new file mode 100644 index 00000000..15db029e --- /dev/null +++ b/game/images/CG/luna_desk2/m_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8c0daf94e83e584d93550512ef979b877b421f0c16895403f0878a29556c509 +size 9510 diff --git a/game/images/CG/luna_desk2/mascara.webp b/game/images/CG/luna_desk2/mascara.webp new file mode 100644 index 00000000..03cbdc20 --- /dev/null +++ b/game/images/CG/luna_desk2/mascara.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65748df0572cf6ff320a682ae5ad966ae0c70d31bd67c42ab511bbdbeaefac63 +size 2290 diff --git a/game/images/CG/luna_desk2/playful_hair.webp b/game/images/CG/luna_desk2/playful_hair.webp new file mode 100644 index 00000000..2caa38d5 --- /dev/null +++ b/game/images/CG/luna_desk2/playful_hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f58ecebf537fe82d0669a7c939a0fd4df6d1da93e46fb395965b5960e2946ac7 +size 233144 diff --git a/game/images/CG/luna_desk2/playful_hair_top.webp b/game/images/CG/luna_desk2/playful_hair_top.webp new file mode 100644 index 00000000..e034077d --- /dev/null +++ b/game/images/CG/luna_desk2/playful_hair_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f8c3fe9a01cbeb250d979a9d3ecf2bded250b6669859cad137b05da889e9ae9 +size 86646 diff --git a/game/images/CG/luna_desk2/pup_ahegao.webp b/game/images/CG/luna_desk2/pup_ahegao.webp new file mode 100644 index 00000000..6584098f --- /dev/null +++ b/game/images/CG/luna_desk2/pup_ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83aeab3c260f7d3054a9a78456c997172e30dae3a3a33f0d35695d4147c0db0e +size 4016 diff --git a/game/images/CG/luna_desk2/pup_base.webp b/game/images/CG/luna_desk2/pup_base.webp new file mode 100644 index 00000000..8ee437a1 --- /dev/null +++ b/game/images/CG/luna_desk2/pup_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9bffc3e120248c92232c995041dd278ff07cfd1f78b49a95ec5fa10af2f7985 +size 4336 diff --git a/game/images/CG/luna_desk2/pup_dick.webp b/game/images/CG/luna_desk2/pup_dick.webp new file mode 100644 index 00000000..8cf07f9b --- /dev/null +++ b/game/images/CG/luna_desk2/pup_dick.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:489583e8815de139486704204e1eb7ab73cb9854a03314195ebc16031c09d4f0 +size 4088 diff --git a/game/images/CG/luna_desk2/pup_dl.webp b/game/images/CG/luna_desk2/pup_dl.webp new file mode 100644 index 00000000..d9b4b2a1 --- /dev/null +++ b/game/images/CG/luna_desk2/pup_dl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8fff79571442cd7da4b67866f10a16d8d71d6f1cc26f469596985289400c0eea +size 3074 diff --git a/game/images/CG/luna_desk2/pup_down.webp b/game/images/CG/luna_desk2/pup_down.webp new file mode 100644 index 00000000..11406f6d --- /dev/null +++ b/game/images/CG/luna_desk2/pup_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d031265c00231def7e2fdb09e433189299071fbfec9a9fa966cf34974f6bd69 +size 3850 diff --git a/game/images/CG/luna_desk2/pup_left.webp b/game/images/CG/luna_desk2/pup_left.webp new file mode 100644 index 00000000..51dc3e10 --- /dev/null +++ b/game/images/CG/luna_desk2/pup_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75c81ec33fddb49756a45a64c83afcfdc7b81f3e74d07fbeeae6a3dec957e722 +size 4236 diff --git a/game/images/CG/luna_desk2/pup_right.webp b/game/images/CG/luna_desk2/pup_right.webp new file mode 100644 index 00000000..8ee437a1 --- /dev/null +++ b/game/images/CG/luna_desk2/pup_right.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9bffc3e120248c92232c995041dd278ff07cfd1f78b49a95ec5fa10af2f7985 +size 4336 diff --git a/game/images/CG/luna_desk2/pup_up.webp b/game/images/CG/luna_desk2/pup_up.webp new file mode 100644 index 00000000..02c531a3 --- /dev/null +++ b/game/images/CG/luna_desk2/pup_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:520f0baf9ed89a8ea0e8bec3443e1fe9fa8b698f59e8af432128c50eb003e6cb +size 4042 diff --git a/game/images/CG/luna_desk2/short_hair.webp b/game/images/CG/luna_desk2/short_hair.webp new file mode 100644 index 00000000..8ad174fa --- /dev/null +++ b/game/images/CG/luna_desk2/short_hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e1719982fd881541baea1c45e9139c3774f40e698d98c56b6d491f5233bff90 +size 83180 diff --git a/game/images/CG/luna_desk2/short_hair_top.webp b/game/images/CG/luna_desk2/short_hair_top.webp new file mode 100644 index 00000000..f304d185 --- /dev/null +++ b/game/images/CG/luna_desk2/short_hair_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:039d0b4105f63544b08ce530499ffcc816b197cbb1dfbe71bdcf658506d5b03a +size 74348 diff --git a/game/images/CG/luna_desk2/tears.webp b/game/images/CG/luna_desk2/tears.webp new file mode 100644 index 00000000..fcfe7477 --- /dev/null +++ b/game/images/CG/luna_desk2/tears.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29d80ce2441f2d81541518cc33aee08cfa0ec9cccd41845046a7ca89ff1c10c5 +size 2472 diff --git a/game/images/CG/luna_desk2/up_N.webp b/game/images/CG/luna_desk2/up_N.webp new file mode 100644 index 00000000..fdedce1f --- /dev/null +++ b/game/images/CG/luna_desk2/up_N.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fce416f6348e5ab64ec82d3d49902db5060dcb00ec9006976bbe9bf611601a2 +size 2372 diff --git a/game/images/CG/luna_facial/1.webp b/game/images/CG/luna_facial/1.webp new file mode 100644 index 00000000..48b70445 --- /dev/null +++ b/game/images/CG/luna_facial/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fce000e107dd317545761d4a76e94a6042b3cc6e2afdb649ba105f8e825469e0 +size 331396 diff --git a/game/images/CG/luna_facial/10.webp b/game/images/CG/luna_facial/10.webp new file mode 100644 index 00000000..385e21d9 --- /dev/null +++ b/game/images/CG/luna_facial/10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02f6b99a65ae04a424ee312b0715a36646def605a4452cf74fea913a06482294 +size 315050 diff --git a/game/images/CG/luna_facial/11.webp b/game/images/CG/luna_facial/11.webp new file mode 100644 index 00000000..c3e8cb3c --- /dev/null +++ b/game/images/CG/luna_facial/11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0874800f2163e4e2ab36646b9503234c6685f45ec90e5da7de524e66f6922c0 +size 315828 diff --git a/game/images/CG/luna_facial/12.webp b/game/images/CG/luna_facial/12.webp new file mode 100644 index 00000000..fa54ec0a --- /dev/null +++ b/game/images/CG/luna_facial/12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bb96eb26689a92eefc4a1e69b6fec18331767242418d42270b8abfeb8d796b6 +size 314986 diff --git a/game/images/CG/luna_facial/13.webp b/game/images/CG/luna_facial/13.webp new file mode 100644 index 00000000..e474d417 --- /dev/null +++ b/game/images/CG/luna_facial/13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:253cd7d8b26824bd72c09cd604745fc1f1833342ff33b4af29b094bff4d1cefa +size 314982 diff --git a/game/images/CG/luna_facial/14.webp b/game/images/CG/luna_facial/14.webp new file mode 100644 index 00000000..7def7f65 --- /dev/null +++ b/game/images/CG/luna_facial/14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:90e5312f559c9bd35a7c8e784b56b63ade92ee9d7c3494b6941f9e944dc96e1b +size 315222 diff --git a/game/images/CG/luna_facial/15.webp b/game/images/CG/luna_facial/15.webp new file mode 100644 index 00000000..595d4c90 --- /dev/null +++ b/game/images/CG/luna_facial/15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c727d058d5c99e5e6ab56eb64d85df8a68a5e8ca2f18da2a9bf19476991d98e +size 317366 diff --git a/game/images/CG/luna_facial/16.webp b/game/images/CG/luna_facial/16.webp new file mode 100644 index 00000000..b3f8c97a --- /dev/null +++ b/game/images/CG/luna_facial/16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ab525710dd12fb82a244387da59b44ba41248a53cbc192c93d0d53b651501ca +size 320468 diff --git a/game/images/CG/luna_facial/17.webp b/game/images/CG/luna_facial/17.webp new file mode 100644 index 00000000..188cadcb --- /dev/null +++ b/game/images/CG/luna_facial/17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4909909477988d2c22ac953bb795b22231a36b2e9bf8f46b5bf3a50f52836438 +size 323910 diff --git a/game/images/CG/luna_facial/18.webp b/game/images/CG/luna_facial/18.webp new file mode 100644 index 00000000..80ce10a5 --- /dev/null +++ b/game/images/CG/luna_facial/18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe6a47cbd73c54cbfe13cfcb92b49a444b25fe2ef9d94aaf4cf2c58a9491dbe9 +size 323650 diff --git a/game/images/CG/luna_facial/19.webp b/game/images/CG/luna_facial/19.webp new file mode 100644 index 00000000..286c8581 --- /dev/null +++ b/game/images/CG/luna_facial/19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f8457dbe949cc48115591ae760ff4006791db5caed54219dcd57758f86d823b +size 323842 diff --git a/game/images/CG/luna_facial/2.webp b/game/images/CG/luna_facial/2.webp new file mode 100644 index 00000000..869c2d05 --- /dev/null +++ b/game/images/CG/luna_facial/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d51ae512be29d24fe2e170eabe23c82562cfec4f0312117f7880ecafdae4406 +size 332464 diff --git a/game/images/CG/luna_facial/20.webp b/game/images/CG/luna_facial/20.webp new file mode 100644 index 00000000..69a5aac9 --- /dev/null +++ b/game/images/CG/luna_facial/20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d45be0027499310031d948f2b24eeeee7a87a0775bd0797bf084d3fb251ddce +size 323424 diff --git a/game/images/CG/luna_facial/21.webp b/game/images/CG/luna_facial/21.webp new file mode 100644 index 00000000..033b9c14 --- /dev/null +++ b/game/images/CG/luna_facial/21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87cc900825b19bd1eefa7fb88eed70b42e034db96e3c7eb3d8973a3086ed52c7 +size 335968 diff --git a/game/images/CG/luna_facial/22.webp b/game/images/CG/luna_facial/22.webp new file mode 100644 index 00000000..63a30ff5 --- /dev/null +++ b/game/images/CG/luna_facial/22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad092887aa9aa5a5ae90558f4266d4c8ed7a2620f38122e7a207076ec235e139 +size 337084 diff --git a/game/images/CG/luna_facial/23.webp b/game/images/CG/luna_facial/23.webp new file mode 100644 index 00000000..ea420f1c --- /dev/null +++ b/game/images/CG/luna_facial/23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f7c2f46fe77b02732c6c6e507e97dcdfd62ce7f438977fcf506f7da1a997b21 +size 320832 diff --git a/game/images/CG/luna_facial/24.webp b/game/images/CG/luna_facial/24.webp new file mode 100644 index 00000000..47f94ed0 --- /dev/null +++ b/game/images/CG/luna_facial/24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24c859c467d72262936dbc3c47c6484cddadab99b43496455adc9081e8d7f7a8 +size 319302 diff --git a/game/images/CG/luna_facial/25.webp b/game/images/CG/luna_facial/25.webp new file mode 100644 index 00000000..a2f0d288 --- /dev/null +++ b/game/images/CG/luna_facial/25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0b4b7130c55eabe205974c3fce21dc27899441e1b9bb27072dac5fdceb6e5ec +size 319376 diff --git a/game/images/CG/luna_facial/26.webp b/game/images/CG/luna_facial/26.webp new file mode 100644 index 00000000..188c5e8a --- /dev/null +++ b/game/images/CG/luna_facial/26.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3edcc1cb825d8cfde6fab41927d54ecfcc2ef0b0c29f7a84871faeae94d3418 +size 319412 diff --git a/game/images/CG/luna_facial/27.webp b/game/images/CG/luna_facial/27.webp new file mode 100644 index 00000000..584393ae --- /dev/null +++ b/game/images/CG/luna_facial/27.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:03e1ebbe58529f0536dc81cbf88713c804d635d3b79c011552f995185818e379 +size 319122 diff --git a/game/images/CG/luna_facial/28.webp b/game/images/CG/luna_facial/28.webp new file mode 100644 index 00000000..9b802c1c --- /dev/null +++ b/game/images/CG/luna_facial/28.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7933d800b19e2863bd08c0b1aeac1561b607822fa395506a47ed7d0c6172dfb3 +size 324578 diff --git a/game/images/CG/luna_facial/29.webp b/game/images/CG/luna_facial/29.webp new file mode 100644 index 00000000..9cb546ca --- /dev/null +++ b/game/images/CG/luna_facial/29.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:410932fea3b477535e8f8f1e0e1a02cbb188b56f3f09abd796986247e139000e +size 324524 diff --git a/game/images/CG/luna_facial/3.webp b/game/images/CG/luna_facial/3.webp new file mode 100644 index 00000000..d763d743 --- /dev/null +++ b/game/images/CG/luna_facial/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db9942611e88b3dd52ca52c35301397be8c60024e618db7e1605bc552c4cd619 +size 332046 diff --git a/game/images/CG/luna_facial/30.webp b/game/images/CG/luna_facial/30.webp new file mode 100644 index 00000000..b6667712 --- /dev/null +++ b/game/images/CG/luna_facial/30.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:811006c91e75ee407126aca6ffb39509419d36a766593c14afb5c5e5848cc249 +size 324774 diff --git a/game/images/CG/luna_facial/31.webp b/game/images/CG/luna_facial/31.webp new file mode 100644 index 00000000..1b7600d8 --- /dev/null +++ b/game/images/CG/luna_facial/31.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:853a3093c630cd71ec243b2d120c10e5a114d7a968ae7182419ef9baf0537a3c +size 325950 diff --git a/game/images/CG/luna_facial/32.webp b/game/images/CG/luna_facial/32.webp new file mode 100644 index 00000000..e970b12a --- /dev/null +++ b/game/images/CG/luna_facial/32.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:183c3f037cdf974677bfdaac0c45220c2d51d6bf2c188e0edba2f05a503547f4 +size 324858 diff --git a/game/images/CG/luna_facial/33.webp b/game/images/CG/luna_facial/33.webp new file mode 100644 index 00000000..ba79602d --- /dev/null +++ b/game/images/CG/luna_facial/33.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28dad1f58abbbc1894833c85797364aa46e9d28c17e920bfb91de05524fdead3 +size 325138 diff --git a/game/images/CG/luna_facial/4.webp b/game/images/CG/luna_facial/4.webp new file mode 100644 index 00000000..9c082dd2 --- /dev/null +++ b/game/images/CG/luna_facial/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:594bac80030006916c4c78e07f2f59ec0aab5b330a2f580f30e3e3f43578b2e2 +size 331180 diff --git a/game/images/CG/luna_facial/5.webp b/game/images/CG/luna_facial/5.webp new file mode 100644 index 00000000..f6c5c4ca --- /dev/null +++ b/game/images/CG/luna_facial/5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:200032d0decf42f2c94bf67b5f80cee0f0cac8d813bbecd1082aaa7c00fae97b +size 332008 diff --git a/game/images/CG/luna_facial/6.webp b/game/images/CG/luna_facial/6.webp new file mode 100644 index 00000000..0175b646 --- /dev/null +++ b/game/images/CG/luna_facial/6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa63f88751afe34de7a7145a5e339d2cc8fd4996b28a6504ce45c778c30b41a4 +size 330942 diff --git a/game/images/CG/luna_facial/7.webp b/game/images/CG/luna_facial/7.webp new file mode 100644 index 00000000..48b70445 --- /dev/null +++ b/game/images/CG/luna_facial/7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fce000e107dd317545761d4a76e94a6042b3cc6e2afdb649ba105f8e825469e0 +size 331396 diff --git a/game/images/CG/luna_facial/8.webp b/game/images/CG/luna_facial/8.webp new file mode 100644 index 00000000..13023ec1 --- /dev/null +++ b/game/images/CG/luna_facial/8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:627e371ddb6870bd55b2950055fdc89092f9b8c0184d2cf9bde02f5a7250416c +size 315026 diff --git a/game/images/CG/luna_facial/9.webp b/game/images/CG/luna_facial/9.webp new file mode 100644 index 00000000..f743818c --- /dev/null +++ b/game/images/CG/luna_facial/9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc493c34a983a926009c11bc66d66e12a51327e1f2c7e9d01a6496f4d6d7a848 +size 315876 diff --git a/game/images/CG/luna_facial/base.webp b/game/images/CG/luna_facial/base.webp new file mode 100644 index 00000000..12824743 --- /dev/null +++ b/game/images/CG/luna_facial/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23885f937c68c008b6d78515385bfc9d72ab84ccde678ae1920384574eb2ed31 +size 156480 diff --git a/game/images/CG/luna_facial/blank.webp b/game/images/CG/luna_facial/blank.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/images/CG/luna_facial/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/images/CG/luna_facial/genie.webp b/game/images/CG/luna_facial/genie.webp new file mode 100644 index 00000000..818cb66b --- /dev/null +++ b/game/images/CG/luna_facial/genie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a1420e076984563603631b1049c3f6d5ae0905195e9c681149ccb0fc96b92a8 +size 75318 diff --git a/game/images/CG/luna_fucking/base.webp b/game/images/CG/luna_fucking/base.webp new file mode 100644 index 00000000..410a1313 --- /dev/null +++ b/game/images/CG/luna_fucking/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e881ee5199d1484e7731108f612c09119a708f0e8c494c916b5348a2661ad8b0 +size 232524 diff --git a/game/images/CG/luna_fucking/base_2.webp b/game/images/CG/luna_fucking/base_2.webp new file mode 100644 index 00000000..1c496a14 --- /dev/null +++ b/game/images/CG/luna_fucking/base_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:451a570ddfcdc4e29a9d23562c189fa58761cdbbb88ef35c3a8138fc2acd0807 +size 180524 diff --git a/game/images/CG/luna_fucking/blank.webp b/game/images/CG/luna_fucking/blank.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/images/CG/luna_fucking/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/images/CG/luna_fucking/c_base.webp b/game/images/CG/luna_fucking/c_base.webp new file mode 100644 index 00000000..89860906 --- /dev/null +++ b/game/images/CG/luna_fucking/c_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1bf0190db487b10bd916c4ac2007f265a9d237e62017ede0a4e9b041d61d9e1 +size 3938 diff --git a/game/images/CG/luna_fucking/c_blush.webp b/game/images/CG/luna_fucking/c_blush.webp new file mode 100644 index 00000000..f06561ac --- /dev/null +++ b/game/images/CG/luna_fucking/c_blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cb1fe4bd2266a2147c7a17d18b7d13e85fc18d82009f933b6bb4e116052f2aa +size 6038 diff --git a/game/images/CG/luna_fucking/cum_1.webp b/game/images/CG/luna_fucking/cum_1.webp new file mode 100644 index 00000000..d446694e --- /dev/null +++ b/game/images/CG/luna_fucking/cum_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:071d4729c8c79295401a4119f0e139e788d64e13da719aaa5045cfd674e1a3a9 +size 7642 diff --git a/game/images/CG/luna_fucking/cum_2.webp b/game/images/CG/luna_fucking/cum_2.webp new file mode 100644 index 00000000..aab97b31 --- /dev/null +++ b/game/images/CG/luna_fucking/cum_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d88d4675f88fbc34f3f4de18d9293b9cedf62605818c091513d9f8532da37558 +size 9812 diff --git a/game/images/CG/luna_fucking/cum_3.webp b/game/images/CG/luna_fucking/cum_3.webp new file mode 100644 index 00000000..aab97b31 --- /dev/null +++ b/game/images/CG/luna_fucking/cum_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d88d4675f88fbc34f3f4de18d9293b9cedf62605818c091513d9f8532da37558 +size 9812 diff --git a/game/images/CG/luna_fucking/cum_4.webp b/game/images/CG/luna_fucking/cum_4.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/images/CG/luna_fucking/cum_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/images/CG/luna_fucking/curly_hair.webp b/game/images/CG/luna_fucking/curly_hair.webp new file mode 100644 index 00000000..4efd6392 --- /dev/null +++ b/game/images/CG/luna_fucking/curly_hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:593a611bb922096f24f88255c4eab65788d31a3eb5e7abbf93b3cd868845d798 +size 54916 diff --git a/game/images/CG/luna_fucking/curly_hair_top.webp b/game/images/CG/luna_fucking/curly_hair_top.webp new file mode 100644 index 00000000..09575c45 --- /dev/null +++ b/game/images/CG/luna_fucking/curly_hair_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0642c002589fd69722575fa2381453cebbaaad5b11833a3c00a8ab9d36c7b532 +size 23674 diff --git a/game/images/CG/luna_fucking/dick_0.webp b/game/images/CG/luna_fucking/dick_0.webp new file mode 100644 index 00000000..39a8046c --- /dev/null +++ b/game/images/CG/luna_fucking/dick_0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd6b6d997a29e8d00977006c9307a31fc7ba89e3652022c1bc96925fac3ee0c3 +size 54 diff --git a/game/images/CG/luna_fucking/eb_angry.webp b/game/images/CG/luna_fucking/eb_angry.webp new file mode 100644 index 00000000..6ac7f90a --- /dev/null +++ b/game/images/CG/luna_fucking/eb_angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2d5b6286b78a426218ac04d9bb0273da916b18620119476de224413e15b419d +size 2142 diff --git a/game/images/CG/luna_fucking/eb_base.webp b/game/images/CG/luna_fucking/eb_base.webp new file mode 100644 index 00000000..7fee22fa --- /dev/null +++ b/game/images/CG/luna_fucking/eb_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cba601267df5ff4bb280fe998659e51384c89466fa64d10e2abd6e0915bdbda4 +size 1320 diff --git a/game/images/CG/luna_fucking/eb_mad.webp b/game/images/CG/luna_fucking/eb_mad.webp new file mode 100644 index 00000000..ef39dd0a --- /dev/null +++ b/game/images/CG/luna_fucking/eb_mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2b8a08e440cdeb316e4afee9b47d11ef19f1676e86ad78621da9dfd596df380 +size 2140 diff --git a/game/images/CG/luna_fucking/eb_raised.webp b/game/images/CG/luna_fucking/eb_raised.webp new file mode 100644 index 00000000..2ae1f710 --- /dev/null +++ b/game/images/CG/luna_fucking/eb_raised.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5be9f6aaf42a08fcb7b541a869cf2cbc3fd99d149332a4222347af64f342a75d +size 1862 diff --git a/game/images/CG/luna_fucking/eb_sad.webp b/game/images/CG/luna_fucking/eb_sad.webp new file mode 100644 index 00000000..2e03cf8c --- /dev/null +++ b/game/images/CG/luna_fucking/eb_sad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1db2d86671daa3b46b01eaee2d9dae00108f0a743a3159d19a03a0f653ef2c41 +size 1986 diff --git a/game/images/CG/luna_fucking/eye_angry.webp b/game/images/CG/luna_fucking/eye_angry.webp new file mode 100644 index 00000000..5f5cf111 --- /dev/null +++ b/game/images/CG/luna_fucking/eye_angry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbcd25818a5573c0b1c7f5637eea8ccbd27a1ca5ecb9b1cd41255ef2fdd6d2c9 +size 2676 diff --git a/game/images/CG/luna_fucking/eye_base.webp b/game/images/CG/luna_fucking/eye_base.webp new file mode 100644 index 00000000..055522e7 --- /dev/null +++ b/game/images/CG/luna_fucking/eye_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fce86e6a7975158f4b8da8a79d08868a10ba2d2fb065830c603c9b3ca5103690 +size 2290 diff --git a/game/images/CG/luna_fucking/eye_closed.webp b/game/images/CG/luna_fucking/eye_closed.webp new file mode 100644 index 00000000..57179054 --- /dev/null +++ b/game/images/CG/luna_fucking/eye_closed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9596a65ae59c5a259232742c05af6932d772c39661a1dd5093bc1f96389e4e7 +size 2828 diff --git a/game/images/CG/luna_fucking/eye_excited.webp b/game/images/CG/luna_fucking/eye_excited.webp new file mode 100644 index 00000000..d2a546ff --- /dev/null +++ b/game/images/CG/luna_fucking/eye_excited.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1785f483a52b3461313ffb0a93238590fbc423e82c8f01f244f958bbe50dda17 +size 2642 diff --git a/game/images/CG/luna_fucking/eye_furious.webp b/game/images/CG/luna_fucking/eye_furious.webp new file mode 100644 index 00000000..9cdafa95 --- /dev/null +++ b/game/images/CG/luna_fucking/eye_furious.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:566096c2305c8cc5df903b8895504e8c04d7cca709de324bf2ac9b398d4ecbda +size 2566 diff --git a/game/images/CG/luna_fucking/eye_happyCl.webp b/game/images/CG/luna_fucking/eye_happyCl.webp new file mode 100644 index 00000000..46fbdf88 --- /dev/null +++ b/game/images/CG/luna_fucking/eye_happyCl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fe4e262782d449543584c59a8136d7357b731d011e3f3b91d8c4d380f577fd6 +size 2368 diff --git a/game/images/CG/luna_fucking/eye_mad.webp b/game/images/CG/luna_fucking/eye_mad.webp new file mode 100644 index 00000000..f52778b7 --- /dev/null +++ b/game/images/CG/luna_fucking/eye_mad.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0294a42c2a2e3d579f25e52f10ee87bccdefdee497ba6c66106bb7fadbc57889 +size 3352 diff --git a/game/images/CG/luna_fucking/eye_seductive.webp b/game/images/CG/luna_fucking/eye_seductive.webp new file mode 100644 index 00000000..236da739 --- /dev/null +++ b/game/images/CG/luna_fucking/eye_seductive.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1148796ba079b123beaee0447eca70666a99f286beb37c84bdd1e9f433b343b8 +size 2400 diff --git a/game/images/CG/luna_fucking/eye_tired.webp b/game/images/CG/luna_fucking/eye_tired.webp new file mode 100644 index 00000000..3995933f --- /dev/null +++ b/game/images/CG/luna_fucking/eye_tired.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96256044f80b40fc2b631aca02139b8abf79ee7bf1e44d3bb869538779ad7624 +size 2376 diff --git a/game/images/CG/luna_fucking/eye_white.webp b/game/images/CG/luna_fucking/eye_white.webp new file mode 100644 index 00000000..cc72999f --- /dev/null +++ b/game/images/CG/luna_fucking/eye_white.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8b32ad89ee67631c41a10681dc3738d96ea2d483b1df8dd56975bedf7e60cc8 +size 1282 diff --git a/game/images/CG/luna_fucking/eye_wide.webp b/game/images/CG/luna_fucking/eye_wide.webp new file mode 100644 index 00000000..12ec8c91 --- /dev/null +++ b/game/images/CG/luna_fucking/eye_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f40ccd460d2f117fd48c2bd7d472da6dd84ddda76bf952f4832499117268991 +size 1492 diff --git a/game/images/CG/luna_fucking/eye_wink.webp b/game/images/CG/luna_fucking/eye_wink.webp new file mode 100644 index 00000000..0b36f6aa --- /dev/null +++ b/game/images/CG/luna_fucking/eye_wink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5ff672aada1966c34f6d45321c3bf9f72e50d5f22c301f0e44b7ea37b4253fd +size 2352 diff --git a/game/images/CG/luna_fucking/fade.webp b/game/images/CG/luna_fucking/fade.webp new file mode 100644 index 00000000..0bf081af --- /dev/null +++ b/game/images/CG/luna_fucking/fade.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08a3b908e122f2a17a8f9f5efd75b62fb666eae54972284a90fdb34593a590a5 +size 2788 diff --git a/game/images/CG/luna_fucking/glasses.webp b/game/images/CG/luna_fucking/glasses.webp new file mode 100644 index 00000000..907b38b4 --- /dev/null +++ b/game/images/CG/luna_fucking/glasses.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b2b06ba6a4e4f2d8fa0cb2c6bacd7503bbf0911b87e719d077fa9225ac8a0c3 +size 10214 diff --git a/game/images/CG/luna_fucking/lake_1.webp b/game/images/CG/luna_fucking/lake_1.webp new file mode 100644 index 00000000..8fa5aabc --- /dev/null +++ b/game/images/CG/luna_fucking/lake_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2053e8cddd51c3ecec2425282f57594a405bd419cf17616549f036cc03ca6960 +size 107632 diff --git a/game/images/CG/luna_fucking/lake_2.webp b/game/images/CG/luna_fucking/lake_2.webp new file mode 100644 index 00000000..cb4f54d1 --- /dev/null +++ b/game/images/CG/luna_fucking/lake_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17b6f5844811926f27b247ce6c4fb619c2341fa2e849ae1a24771ae68196e97e +size 89972 diff --git a/game/images/CG/luna_fucking/luna_base.webp b/game/images/CG/luna_fucking/luna_base.webp new file mode 100644 index 00000000..7779be14 --- /dev/null +++ b/game/images/CG/luna_fucking/luna_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f2a5053e9c658af097551b29332a8c4b812b632e008e2dd177a28296b56f681 +size 171170 diff --git a/game/images/CG/luna_fucking/m_base.webp b/game/images/CG/luna_fucking/m_base.webp new file mode 100644 index 00000000..0dca6ed0 --- /dev/null +++ b/game/images/CG/luna_fucking/m_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:35a5ec233f8c271a807c560c57f573450bab2055c8febe370c9d2e24ae289d21 +size 1076 diff --git a/game/images/CG/luna_fucking/m_open.webp b/game/images/CG/luna_fucking/m_open.webp new file mode 100644 index 00000000..0f5938f0 --- /dev/null +++ b/game/images/CG/luna_fucking/m_open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:622f08cc048ac3c3d87ab83810ec9cf068038ba49fe2ec5f8bda3d7252c4bd4f +size 1226 diff --git a/game/images/CG/luna_fucking/m_open_tongue.webp b/game/images/CG/luna_fucking/m_open_tongue.webp new file mode 100644 index 00000000..415d426e --- /dev/null +++ b/game/images/CG/luna_fucking/m_open_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ffcc323f7cb18d68ee5f5c0842381033010b2861f0d6a0351b50c88e1dc7afc +size 1352 diff --git a/game/images/CG/luna_fucking/m_pout.webp b/game/images/CG/luna_fucking/m_pout.webp new file mode 100644 index 00000000..261030ae --- /dev/null +++ b/game/images/CG/luna_fucking/m_pout.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3d180609098f3dde2ae3cc6895d561f6fe861b42c8aa64eb555cd42cbb05115 +size 1008 diff --git a/game/images/CG/luna_fucking/m_wide.webp b/game/images/CG/luna_fucking/m_wide.webp new file mode 100644 index 00000000..725851eb --- /dev/null +++ b/game/images/CG/luna_fucking/m_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:968ff330cd7381c17ebfde6c18407444176dab28b9c93cf6d142319fbb133f38 +size 2818 diff --git a/game/images/CG/luna_fucking/m_wide_tongue.webp b/game/images/CG/luna_fucking/m_wide_tongue.webp new file mode 100644 index 00000000..8fe09781 --- /dev/null +++ b/game/images/CG/luna_fucking/m_wide_tongue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea776808b453abf173fc8c9a353705c4684acdd9645be7a2d73af9bf2dbb5296 +size 2886 diff --git a/game/images/CG/luna_fucking/mascara.webp b/game/images/CG/luna_fucking/mascara.webp new file mode 100644 index 00000000..dabb38af --- /dev/null +++ b/game/images/CG/luna_fucking/mascara.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b49af47740e7a24827f028aa2954ba04e6b6cafbbce48958b5161c25248a7862 +size 908 diff --git a/game/images/CG/luna_fucking/playful_hair.webp b/game/images/CG/luna_fucking/playful_hair.webp new file mode 100644 index 00000000..95d760bc --- /dev/null +++ b/game/images/CG/luna_fucking/playful_hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4abb0c799d2a82dd9e5f2715f17cd57a9a75c20355d3a77856c152f1953e6537 +size 58912 diff --git a/game/images/CG/luna_fucking/playful_hair_top.webp b/game/images/CG/luna_fucking/playful_hair_top.webp new file mode 100644 index 00000000..5d829a8b --- /dev/null +++ b/game/images/CG/luna_fucking/playful_hair_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9fe02a77559b4651ea7e41a20ebcac7777b7d321ba095b2cd556c10684469d9d +size 11836 diff --git a/game/images/CG/luna_fucking/pup_ahegao.webp b/game/images/CG/luna_fucking/pup_ahegao.webp new file mode 100644 index 00000000..d004d8a5 --- /dev/null +++ b/game/images/CG/luna_fucking/pup_ahegao.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7986ecd5b8892c7b1e6ab6551740d0e0b1202b1f588850bce9b2dc3332f8a968 +size 952 diff --git a/game/images/CG/luna_fucking/pup_base.webp b/game/images/CG/luna_fucking/pup_base.webp new file mode 100644 index 00000000..0218d638 --- /dev/null +++ b/game/images/CG/luna_fucking/pup_base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d5965838a80954a5785e2cc2d21e6352260a1822ec65cb4b487ae11282bd728 +size 1320 diff --git a/game/images/CG/luna_fucking/pup_dl.webp b/game/images/CG/luna_fucking/pup_dl.webp new file mode 100644 index 00000000..beea0131 --- /dev/null +++ b/game/images/CG/luna_fucking/pup_dl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd07755d23e2a3bb31f9a19e3e8bea08264e6baab98c2fe70a72b1f2d4633f0c +size 1020 diff --git a/game/images/CG/luna_fucking/pup_dr.webp b/game/images/CG/luna_fucking/pup_dr.webp new file mode 100644 index 00000000..3de7c826 --- /dev/null +++ b/game/images/CG/luna_fucking/pup_dr.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b8c50eabe07f6eadefddd0c98edda79dd771e182e3fb337426da1f8b8be13c2 +size 1028 diff --git a/game/images/CG/luna_fucking/pup_left.webp b/game/images/CG/luna_fucking/pup_left.webp new file mode 100644 index 00000000..bd4bf62e --- /dev/null +++ b/game/images/CG/luna_fucking/pup_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af6d12539548b46df15905f6031e633eba017f96ce56acf8b87b14a3118ddc66 +size 1242 diff --git a/game/images/CG/luna_fucking/pup_right.webp b/game/images/CG/luna_fucking/pup_right.webp new file mode 100644 index 00000000..f6d44b68 --- /dev/null +++ b/game/images/CG/luna_fucking/pup_right.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a58366561acf640550bda426c1016210f582e6420016f5fccbac64b8553413a +size 1202 diff --git a/game/images/CG/luna_fucking/pup_up.webp b/game/images/CG/luna_fucking/pup_up.webp new file mode 100644 index 00000000..9ea49af2 --- /dev/null +++ b/game/images/CG/luna_fucking/pup_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4863483c6dd2cde4b91b3e5d914e8535aceb79d2b497ad5ca062b7d8c67954b +size 1114 diff --git a/game/images/CG/luna_fucking/short_hair.webp b/game/images/CG/luna_fucking/short_hair.webp new file mode 100644 index 00000000..7bd7530d --- /dev/null +++ b/game/images/CG/luna_fucking/short_hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30a72227124b7955c9015c95c2e361dab3e205f87844dc61644e3817eb935f6f +size 25294 diff --git a/game/images/CG/luna_fucking/short_hair_top.webp b/game/images/CG/luna_fucking/short_hair_top.webp new file mode 100644 index 00000000..0735acac --- /dev/null +++ b/game/images/CG/luna_fucking/short_hair_top.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51b51cb9c593f24678b11aa550ac6ae8d68108b1079d5653047ea94296d7b106 +size 22520 diff --git a/game/images/CG/luna_fucking/spanking.webp b/game/images/CG/luna_fucking/spanking.webp new file mode 100644 index 00000000..4cdc7046 --- /dev/null +++ b/game/images/CG/luna_fucking/spanking.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb24507b9ed6bb8e61f5eda91743d484f0ab0e7c64644c1881ba63fc622424a2 +size 8982 diff --git a/game/images/CG/luna_fucking/speed.webp b/game/images/CG/luna_fucking/speed.webp new file mode 100644 index 00000000..8c066a74 --- /dev/null +++ b/game/images/CG/luna_fucking/speed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21897dcf4a3118c2542bac4061a99c04b4cab1fbe527695a407dbbecd9a63e3a +size 19286 diff --git a/game/images/CG/luna_fucking/tears.webp b/game/images/CG/luna_fucking/tears.webp new file mode 100644 index 00000000..3ed7292d --- /dev/null +++ b/game/images/CG/luna_fucking/tears.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b03b14656232beaba3fddb55c75cc6c95dc63ae5ccde3f2dd02c0200c0c5aa8 +size 1218 diff --git a/game/images/CG/luna_kiss/1.webp b/game/images/CG/luna_kiss/1.webp new file mode 100644 index 00000000..5eb52072 --- /dev/null +++ b/game/images/CG/luna_kiss/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2118c7e11a9fcc0bbe04273cb857bb0a0fa83f4415b2dd747a5a85b0f3f23ece +size 317572 diff --git a/game/images/CG/luna_kiss/2.webp b/game/images/CG/luna_kiss/2.webp new file mode 100644 index 00000000..6ad72d3c --- /dev/null +++ b/game/images/CG/luna_kiss/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfc66fa27c4588fbc2a8268493510db17260585a09120107fc6c8c779ef5cd19 +size 323122 diff --git a/game/images/CG/luna_kiss/base.webp b/game/images/CG/luna_kiss/base.webp new file mode 100644 index 00000000..12824743 --- /dev/null +++ b/game/images/CG/luna_kiss/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23885f937c68c008b6d78515385bfc9d72ab84ccde678ae1920384574eb2ed31 +size 156480 diff --git a/game/images/CG/luna_kiss/blank.webp b/game/images/CG/luna_kiss/blank.webp new file mode 100644 index 00000000..ea4d6a56 --- /dev/null +++ b/game/images/CG/luna_kiss/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b1d894015273b0fcad33efbfa65994bca783d342c288c085e448884c4b7a15b +size 66 diff --git a/game/images/CG/luna_sex/base.webp b/game/images/CG/luna_sex/base.webp new file mode 100644 index 00000000..61fdd614 --- /dev/null +++ b/game/images/CG/luna_sex/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac2b402773946866e53901e2ae610423637c6fff5e6d6ff5a5394143e4dfc8ea +size 161090 diff --git a/game/images/CG/luna_sex/blank.webp b/game/images/CG/luna_sex/blank.webp new file mode 100644 index 00000000..ea4d6a56 --- /dev/null +++ b/game/images/CG/luna_sex/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b1d894015273b0fcad33efbfa65994bca783d342c288c085e448884c4b7a15b +size 66 diff --git a/game/images/CG/luna_sex/herm_1.webp b/game/images/CG/luna_sex/herm_1.webp new file mode 100644 index 00000000..928e468d --- /dev/null +++ b/game/images/CG/luna_sex/herm_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49240b2e0de8bbbcaa5d785f929ffdc8d9c1b68f462dc4430eb9222ef9b26dda +size 125402 diff --git a/game/images/CG/luna_sex/herm_10.webp b/game/images/CG/luna_sex/herm_10.webp new file mode 100644 index 00000000..37adb02f --- /dev/null +++ b/game/images/CG/luna_sex/herm_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:091f23f6907fb2c03d9fe740a07d0864e99e380459160fec8c94f01aa2c5998b +size 157604 diff --git a/game/images/CG/luna_sex/herm_11.webp b/game/images/CG/luna_sex/herm_11.webp new file mode 100644 index 00000000..189b0996 --- /dev/null +++ b/game/images/CG/luna_sex/herm_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e97cc475423ed258eb25049537ba865f59cdc303eb19a2c8d4fa5396f0b4cb21 +size 158652 diff --git a/game/images/CG/luna_sex/herm_12.webp b/game/images/CG/luna_sex/herm_12.webp new file mode 100644 index 00000000..76d4854c --- /dev/null +++ b/game/images/CG/luna_sex/herm_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e087250fd0a13de776355f7ae7286e2ac1d8e63e4d309ed38cb02d1b9f2d03d +size 127830 diff --git a/game/images/CG/luna_sex/herm_13.webp b/game/images/CG/luna_sex/herm_13.webp new file mode 100644 index 00000000..a7cc5724 --- /dev/null +++ b/game/images/CG/luna_sex/herm_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c490d212ac284176937093f14e56f85660822c200bd1a63ec13541830f890d53 +size 128384 diff --git a/game/images/CG/luna_sex/herm_14.webp b/game/images/CG/luna_sex/herm_14.webp new file mode 100644 index 00000000..ff9e6408 --- /dev/null +++ b/game/images/CG/luna_sex/herm_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7267a636e41540471f29bce5443586dcbb99f1209ee9cd623ab20967ab32d6ab +size 127824 diff --git a/game/images/CG/luna_sex/herm_15.webp b/game/images/CG/luna_sex/herm_15.webp new file mode 100644 index 00000000..a3e3ee84 --- /dev/null +++ b/game/images/CG/luna_sex/herm_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02cd3ce64b1a0e75058d5a64c66cb06f7ee998cfed32b8ed01b4ea322dd8c5c8 +size 127694 diff --git a/game/images/CG/luna_sex/herm_16.webp b/game/images/CG/luna_sex/herm_16.webp new file mode 100644 index 00000000..c42f2289 --- /dev/null +++ b/game/images/CG/luna_sex/herm_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a94335af70ec5cfe6637c5bdb6a9e451d18c68f45dd6c73402231844aa61e6f +size 131166 diff --git a/game/images/CG/luna_sex/herm_17.webp b/game/images/CG/luna_sex/herm_17.webp new file mode 100644 index 00000000..d7345deb --- /dev/null +++ b/game/images/CG/luna_sex/herm_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a84cb78fa8c4b23c8cbfdad8cdae695ac76dde42907bb3f4cfcab2885ebd91dc +size 130532 diff --git a/game/images/CG/luna_sex/herm_18.webp b/game/images/CG/luna_sex/herm_18.webp new file mode 100644 index 00000000..cdb415c1 --- /dev/null +++ b/game/images/CG/luna_sex/herm_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b8e9c5ffa404d88d5523c2eb0c338b883f029d16618d38f845b5288bc34946d +size 130616 diff --git a/game/images/CG/luna_sex/herm_19.webp b/game/images/CG/luna_sex/herm_19.webp new file mode 100644 index 00000000..b359e07d --- /dev/null +++ b/game/images/CG/luna_sex/herm_19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91e62db1963fb3df9b727449e95a0f71069c78cd71c66ae7f93b91b5b5e01e45 +size 130824 diff --git a/game/images/CG/luna_sex/herm_2.webp b/game/images/CG/luna_sex/herm_2.webp new file mode 100644 index 00000000..58e6de56 --- /dev/null +++ b/game/images/CG/luna_sex/herm_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7eebd387187fd5c0c767aa530ef0461f2be12f876cb78667d91cfc2ed68846d +size 140728 diff --git a/game/images/CG/luna_sex/herm_20.webp b/game/images/CG/luna_sex/herm_20.webp new file mode 100644 index 00000000..9282459c --- /dev/null +++ b/game/images/CG/luna_sex/herm_20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:148ba31129861508fed45fa7131efc4c433d81b02aa0ee35cf872c0caca09696 +size 129912 diff --git a/game/images/CG/luna_sex/herm_21.webp b/game/images/CG/luna_sex/herm_21.webp new file mode 100644 index 00000000..c0c0cb50 --- /dev/null +++ b/game/images/CG/luna_sex/herm_21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43d85e687ce06c4c2c5eca147102c0ae2c67f3a01d210ebaed7a45bbd42be983 +size 131262 diff --git a/game/images/CG/luna_sex/herm_22.webp b/game/images/CG/luna_sex/herm_22.webp new file mode 100644 index 00000000..8cc9670f --- /dev/null +++ b/game/images/CG/luna_sex/herm_22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:653aa0deeb4565c5a385f8073b6451e1c3a0228a4efe23e0685cde0df1052a75 +size 131226 diff --git a/game/images/CG/luna_sex/herm_23.webp b/game/images/CG/luna_sex/herm_23.webp new file mode 100644 index 00000000..a3267129 --- /dev/null +++ b/game/images/CG/luna_sex/herm_23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e596ea339177f6b17b6ca9692e2704cd12f988c81ed0f1e84d1c666a59feb5d0 +size 132738 diff --git a/game/images/CG/luna_sex/herm_24.webp b/game/images/CG/luna_sex/herm_24.webp new file mode 100644 index 00000000..30fcc934 --- /dev/null +++ b/game/images/CG/luna_sex/herm_24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2bf75d206210079ac30c7ffae6255535f70c033c36d52ff6f463d5e865d8bc24 +size 132660 diff --git a/game/images/CG/luna_sex/herm_25.webp b/game/images/CG/luna_sex/herm_25.webp new file mode 100644 index 00000000..6491c73c --- /dev/null +++ b/game/images/CG/luna_sex/herm_25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec2c9a0e23902889d3b3d9a017c9df9480ee8b21b012c8021533371ab06f8e1f +size 131910 diff --git a/game/images/CG/luna_sex/herm_26.webp b/game/images/CG/luna_sex/herm_26.webp new file mode 100644 index 00000000..9671d3d0 --- /dev/null +++ b/game/images/CG/luna_sex/herm_26.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff159b7753fd1670e3c87d6aedc13383e355e24bb4374b6ae1b554364bccc99c +size 131856 diff --git a/game/images/CG/luna_sex/herm_27.webp b/game/images/CG/luna_sex/herm_27.webp new file mode 100644 index 00000000..467f0dd7 --- /dev/null +++ b/game/images/CG/luna_sex/herm_27.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea31b8447f23fd082a4027afac419584b8b11817a3dfbadae173f06a20f42fc7 +size 131042 diff --git a/game/images/CG/luna_sex/herm_3.webp b/game/images/CG/luna_sex/herm_3.webp new file mode 100644 index 00000000..b4537144 --- /dev/null +++ b/game/images/CG/luna_sex/herm_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2697221a5a008422305df327e14d17608f33e63237f31011de31947e89197a30 +size 157636 diff --git a/game/images/CG/luna_sex/herm_4.webp b/game/images/CG/luna_sex/herm_4.webp new file mode 100644 index 00000000..b70b416b --- /dev/null +++ b/game/images/CG/luna_sex/herm_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:622c296f2a073d6da6b195b9356d9a0b6185836db8a61e038b16795da0fe2a89 +size 157504 diff --git a/game/images/CG/luna_sex/herm_5.webp b/game/images/CG/luna_sex/herm_5.webp new file mode 100644 index 00000000..a0cd9f95 --- /dev/null +++ b/game/images/CG/luna_sex/herm_5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6923a186e29bd8338f4a22864b0d3e2473b24205146d23b85fd64e6e1c213850 +size 158196 diff --git a/game/images/CG/luna_sex/herm_6.webp b/game/images/CG/luna_sex/herm_6.webp new file mode 100644 index 00000000..6b2fbdf5 --- /dev/null +++ b/game/images/CG/luna_sex/herm_6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60e05795eb9c0f3142b6d5bbdd10acfa314131ed9cea3e88ce205c9787f371cb +size 159438 diff --git a/game/images/CG/luna_sex/herm_7.webp b/game/images/CG/luna_sex/herm_7.webp new file mode 100644 index 00000000..3bbdd054 --- /dev/null +++ b/game/images/CG/luna_sex/herm_7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9751f12eaa187aaed43f6b76d73404b3c7a62ba197f9a5cb1156775021c7e6d6 +size 158746 diff --git a/game/images/CG/luna_sex/herm_8.webp b/game/images/CG/luna_sex/herm_8.webp new file mode 100644 index 00000000..febe55ec --- /dev/null +++ b/game/images/CG/luna_sex/herm_8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:465b65eb05179b41450c0bc64418c63c70c09697208834e75a7b56c3c3fd0b59 +size 157616 diff --git a/game/images/CG/luna_sex/herm_9.webp b/game/images/CG/luna_sex/herm_9.webp new file mode 100644 index 00000000..3d70457f --- /dev/null +++ b/game/images/CG/luna_sex/herm_9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f34349dd99ff553e07c8d1616435bfbd44788c6695649788d5e256db1938b838 +size 157074 diff --git a/game/images/CG/luna_sex/luna_1.webp b/game/images/CG/luna_sex/luna_1.webp new file mode 100644 index 00000000..de1ac11a --- /dev/null +++ b/game/images/CG/luna_sex/luna_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d443e1a35b09e16848cbb2a462e5b5562832701356208bc9abcaaeefee479f5 +size 149758 diff --git a/game/images/CG/luna_sex/luna_10.webp b/game/images/CG/luna_sex/luna_10.webp new file mode 100644 index 00000000..ac4ed5fa --- /dev/null +++ b/game/images/CG/luna_sex/luna_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76b2c0828f9bd63209d2e12127c6b04e686f6d57d67b9c55360350abed55a460 +size 174230 diff --git a/game/images/CG/luna_sex/luna_11.webp b/game/images/CG/luna_sex/luna_11.webp new file mode 100644 index 00000000..b890bed9 --- /dev/null +++ b/game/images/CG/luna_sex/luna_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b69757731f8d42ca738fea0f6808c271b730463d8f7792a7c4d94bc198e22cfa +size 174480 diff --git a/game/images/CG/luna_sex/luna_12.webp b/game/images/CG/luna_sex/luna_12.webp new file mode 100644 index 00000000..3c621d29 --- /dev/null +++ b/game/images/CG/luna_sex/luna_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29068d3f012eff2a823447ab6fd8e65b81562719800380196d037385cc07a6e0 +size 174400 diff --git a/game/images/CG/luna_sex/luna_13.webp b/game/images/CG/luna_sex/luna_13.webp new file mode 100644 index 00000000..bb95e7f2 --- /dev/null +++ b/game/images/CG/luna_sex/luna_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39d85efb6fc47e14d87ec3fcf05ee6c75b8091f56fa806ac12fedaca2d60af8f +size 173318 diff --git a/game/images/CG/luna_sex/luna_14.webp b/game/images/CG/luna_sex/luna_14.webp new file mode 100644 index 00000000..a05af789 --- /dev/null +++ b/game/images/CG/luna_sex/luna_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ace1e611da6cc8baf5588bca6545ec1dcc9d662c1d21598b35b746146c82d2b5 +size 198610 diff --git a/game/images/CG/luna_sex/luna_15.webp b/game/images/CG/luna_sex/luna_15.webp new file mode 100644 index 00000000..bd954786 --- /dev/null +++ b/game/images/CG/luna_sex/luna_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc47ee596ef53f10e7f96f4e764f1a478f65c70ea0eef8446080c2d704cf8aa8 +size 197258 diff --git a/game/images/CG/luna_sex/luna_16.webp b/game/images/CG/luna_sex/luna_16.webp new file mode 100644 index 00000000..28b35552 --- /dev/null +++ b/game/images/CG/luna_sex/luna_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad8949e2c103ca3f546c45c43105d9ced9a79f61aeedca414b2415c11a711a51 +size 197810 diff --git a/game/images/CG/luna_sex/luna_17.webp b/game/images/CG/luna_sex/luna_17.webp new file mode 100644 index 00000000..ed874a6b --- /dev/null +++ b/game/images/CG/luna_sex/luna_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ae74855da2b97a3a98725dfe57f059ebcaeec0de176e4ce87a9e61c5279f7c1 +size 197260 diff --git a/game/images/CG/luna_sex/luna_18.webp b/game/images/CG/luna_sex/luna_18.webp new file mode 100644 index 00000000..73f2268f --- /dev/null +++ b/game/images/CG/luna_sex/luna_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af6d9fff11b7e9537d77e4328eca57a299cdf2b71c8b68d522874460e48c87a5 +size 196270 diff --git a/game/images/CG/luna_sex/luna_19.webp b/game/images/CG/luna_sex/luna_19.webp new file mode 100644 index 00000000..494c01b8 --- /dev/null +++ b/game/images/CG/luna_sex/luna_19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e012a155de826edd616c155566b5b07d2b33a8bf5b06679e48f3fba4f783c56b +size 197490 diff --git a/game/images/CG/luna_sex/luna_2.webp b/game/images/CG/luna_sex/luna_2.webp new file mode 100644 index 00000000..77bdfad1 --- /dev/null +++ b/game/images/CG/luna_sex/luna_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a856eaecfe0975beb872d3e2d3e50e1e20f86a3215498f4be818485ad29deca +size 149712 diff --git a/game/images/CG/luna_sex/luna_20.webp b/game/images/CG/luna_sex/luna_20.webp new file mode 100644 index 00000000..3524b685 --- /dev/null +++ b/game/images/CG/luna_sex/luna_20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09455c751516ebf28127b04420f0efe22901b3f73dca7057e073bcdcbfe726ac +size 196962 diff --git a/game/images/CG/luna_sex/luna_21.webp b/game/images/CG/luna_sex/luna_21.webp new file mode 100644 index 00000000..936d6dd3 --- /dev/null +++ b/game/images/CG/luna_sex/luna_21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59a1e4f91d7b5670b901832675abe37f0f4ff6d3394fd67791c498c1ecfc77b5 +size 197898 diff --git a/game/images/CG/luna_sex/luna_22.webp b/game/images/CG/luna_sex/luna_22.webp new file mode 100644 index 00000000..f91429ce --- /dev/null +++ b/game/images/CG/luna_sex/luna_22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10b5271ef693a3e2c72d11a401fbbd1fe946d06634fb8db97d4804825a57d90c +size 197294 diff --git a/game/images/CG/luna_sex/luna_23.webp b/game/images/CG/luna_sex/luna_23.webp new file mode 100644 index 00000000..5ef8bd45 --- /dev/null +++ b/game/images/CG/luna_sex/luna_23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec19706c70dcdacab7f7d6c61c4cb3802b44f6b370f2d5deb40fa2b08df41766 +size 197600 diff --git a/game/images/CG/luna_sex/luna_24.webp b/game/images/CG/luna_sex/luna_24.webp new file mode 100644 index 00000000..f0d5a044 --- /dev/null +++ b/game/images/CG/luna_sex/luna_24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1143075506d16b562d80981819d9e3f95cccf179e415129778753b8e96da7d10 +size 196928 diff --git a/game/images/CG/luna_sex/luna_25.webp b/game/images/CG/luna_sex/luna_25.webp new file mode 100644 index 00000000..f91429ce --- /dev/null +++ b/game/images/CG/luna_sex/luna_25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10b5271ef693a3e2c72d11a401fbbd1fe946d06634fb8db97d4804825a57d90c +size 197294 diff --git a/game/images/CG/luna_sex/luna_26.webp b/game/images/CG/luna_sex/luna_26.webp new file mode 100644 index 00000000..aa51ec77 --- /dev/null +++ b/game/images/CG/luna_sex/luna_26.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ddfb06aff12217264ea74deb16de2dc3b40454c3a5128a7050b6ade5cd81045 +size 197636 diff --git a/game/images/CG/luna_sex/luna_27.webp b/game/images/CG/luna_sex/luna_27.webp new file mode 100644 index 00000000..b29d26c2 --- /dev/null +++ b/game/images/CG/luna_sex/luna_27.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c7fc594b5f93f5d25574735bb42696285636e7b0aa7b860c9483c2af2b191259 +size 197840 diff --git a/game/images/CG/luna_sex/luna_28.webp b/game/images/CG/luna_sex/luna_28.webp new file mode 100644 index 00000000..a4dfbe30 --- /dev/null +++ b/game/images/CG/luna_sex/luna_28.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5b0e813643334b48127269dbe0abed13b5ee08263eaead1a9b4457c814e63de +size 196304 diff --git a/game/images/CG/luna_sex/luna_29.webp b/game/images/CG/luna_sex/luna_29.webp new file mode 100644 index 00000000..c6474a64 --- /dev/null +++ b/game/images/CG/luna_sex/luna_29.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aaff739b1273223157469c87a2cc7713520cf566306593cf18447a79d4d87edc +size 197626 diff --git a/game/images/CG/luna_sex/luna_3.webp b/game/images/CG/luna_sex/luna_3.webp new file mode 100644 index 00000000..c029a222 --- /dev/null +++ b/game/images/CG/luna_sex/luna_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6074cffbe53d0d619d4996cf5e405677dd14cee5c2bdc7fd0b2958076b0ec6b +size 149288 diff --git a/game/images/CG/luna_sex/luna_30.webp b/game/images/CG/luna_sex/luna_30.webp new file mode 100644 index 00000000..00813c8c --- /dev/null +++ b/game/images/CG/luna_sex/luna_30.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c17f4020bb341e28177429bf53b84b47656a13d7ef5a84a98f509394c57f5d5c +size 196868 diff --git a/game/images/CG/luna_sex/luna_31.webp b/game/images/CG/luna_sex/luna_31.webp new file mode 100644 index 00000000..c8aa6128 --- /dev/null +++ b/game/images/CG/luna_sex/luna_31.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b1ecbc3438ee434839daaa9a4ab2eec9a91d15712e67309b849305ade0c9efa +size 197134 diff --git a/game/images/CG/luna_sex/luna_32.webp b/game/images/CG/luna_sex/luna_32.webp new file mode 100644 index 00000000..7ac3ef82 --- /dev/null +++ b/game/images/CG/luna_sex/luna_32.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7254391eba542570e41ba791708a39935ff11465a8abdbfad6be20cef0a0fa2b +size 197480 diff --git a/game/images/CG/luna_sex/luna_33.webp b/game/images/CG/luna_sex/luna_33.webp new file mode 100644 index 00000000..8b76185f --- /dev/null +++ b/game/images/CG/luna_sex/luna_33.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea46d7cdf239daaac280e5a631cf1ee8f7c6a383f3f9ae2f03ee66bdd28861b9 +size 200120 diff --git a/game/images/CG/luna_sex/luna_34.webp b/game/images/CG/luna_sex/luna_34.webp new file mode 100644 index 00000000..009d514e --- /dev/null +++ b/game/images/CG/luna_sex/luna_34.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58bbc10b2d7b17ec6fb25ba7173d135ad2cb34630c7b99c7a2a3618943d4f173 +size 196626 diff --git a/game/images/CG/luna_sex/luna_35.webp b/game/images/CG/luna_sex/luna_35.webp new file mode 100644 index 00000000..33ee38ad --- /dev/null +++ b/game/images/CG/luna_sex/luna_35.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bba7998dd96c4de1f1f5ff0212730caea83f6da25b12eeda4c603e7baea5754 +size 201774 diff --git a/game/images/CG/luna_sex/luna_36.webp b/game/images/CG/luna_sex/luna_36.webp new file mode 100644 index 00000000..2631a17d --- /dev/null +++ b/game/images/CG/luna_sex/luna_36.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1bf8e7eed40bb7460ffbe1e7bfe68da6c8a30d94fd2b8b5193321a473979e8e +size 202220 diff --git a/game/images/CG/luna_sex/luna_37.webp b/game/images/CG/luna_sex/luna_37.webp new file mode 100644 index 00000000..6171d130 --- /dev/null +++ b/game/images/CG/luna_sex/luna_37.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4dcdaa26706a153a0be4197a2eff00f14aea00b1e8f50847da1b9a7bcf839472 +size 200472 diff --git a/game/images/CG/luna_sex/luna_38.webp b/game/images/CG/luna_sex/luna_38.webp new file mode 100644 index 00000000..cacd624a --- /dev/null +++ b/game/images/CG/luna_sex/luna_38.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e6042582fd455bbe59224c07832102949b78c91dd4cb8e3ca4d1c3bd75dc007 +size 201090 diff --git a/game/images/CG/luna_sex/luna_39.webp b/game/images/CG/luna_sex/luna_39.webp new file mode 100644 index 00000000..16566d1a --- /dev/null +++ b/game/images/CG/luna_sex/luna_39.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74cb08ddf4deb402d2dae9bf6d0f9399103dc3a895f95f04fd5c521972526c14 +size 197890 diff --git a/game/images/CG/luna_sex/luna_4.webp b/game/images/CG/luna_sex/luna_4.webp new file mode 100644 index 00000000..2cefdc83 --- /dev/null +++ b/game/images/CG/luna_sex/luna_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32840b4f7c9ecd90437840d1f6c72d0d578658923ef36403068feefa3661958a +size 150312 diff --git a/game/images/CG/luna_sex/luna_40.webp b/game/images/CG/luna_sex/luna_40.webp new file mode 100644 index 00000000..f22408a0 --- /dev/null +++ b/game/images/CG/luna_sex/luna_40.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2e5166a3efae1041f8c33a236454603a5cf2fade0b2de1ab6fb4e4d5e96a7d3 +size 182056 diff --git a/game/images/CG/luna_sex/luna_41.webp b/game/images/CG/luna_sex/luna_41.webp new file mode 100644 index 00000000..31a5fc2b --- /dev/null +++ b/game/images/CG/luna_sex/luna_41.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:072f38d78b766afbf1041f1d749df6213787c0740c7be901ac4b724712237a5a +size 181964 diff --git a/game/images/CG/luna_sex/luna_42.webp b/game/images/CG/luna_sex/luna_42.webp new file mode 100644 index 00000000..34ea9cd0 --- /dev/null +++ b/game/images/CG/luna_sex/luna_42.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8959fcd39a3f487e547da35feb837e7d5bbfd9df2526ece7bceb379373c57e10 +size 182218 diff --git a/game/images/CG/luna_sex/luna_43.webp b/game/images/CG/luna_sex/luna_43.webp new file mode 100644 index 00000000..8c18d547 --- /dev/null +++ b/game/images/CG/luna_sex/luna_43.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb74a70474cbdf8c51af709a5b3eb7a7c0abd118b89b276598100881fab30b07 +size 181872 diff --git a/game/images/CG/luna_sex/luna_44.webp b/game/images/CG/luna_sex/luna_44.webp new file mode 100644 index 00000000..e8622a68 --- /dev/null +++ b/game/images/CG/luna_sex/luna_44.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71078f0ae92f5a296ec4c61b72304ba54ae1c1347e4ceb40094e30ae39ca15d7 +size 182038 diff --git a/game/images/CG/luna_sex/luna_5.webp b/game/images/CG/luna_sex/luna_5.webp new file mode 100644 index 00000000..66690c09 --- /dev/null +++ b/game/images/CG/luna_sex/luna_5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56103ab2b7a4e8375794323aa6c81fcd01689aaa66532930f9397690c936d7fb +size 149410 diff --git a/game/images/CG/luna_sex/luna_6.webp b/game/images/CG/luna_sex/luna_6.webp new file mode 100644 index 00000000..8b75399b --- /dev/null +++ b/game/images/CG/luna_sex/luna_6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c50ee71ea111149605e4a564d5a2f40ed62276ba0c830812cb1a089d2d47b7f6 +size 148754 diff --git a/game/images/CG/luna_sex/luna_7.webp b/game/images/CG/luna_sex/luna_7.webp new file mode 100644 index 00000000..6642137b --- /dev/null +++ b/game/images/CG/luna_sex/luna_7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55f4f4b536ea8ad0ade340c6bd51d90a3e83b30e53b4588ff40d2a35286ac9a4 +size 149882 diff --git a/game/images/CG/luna_sex/luna_8.webp b/game/images/CG/luna_sex/luna_8.webp new file mode 100644 index 00000000..e5be771d --- /dev/null +++ b/game/images/CG/luna_sex/luna_8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42989a8a738e8ef145c02d0ad53d3ae0a28f17cf45237b37701a9f5460d91f3f +size 149862 diff --git a/game/images/CG/luna_sex/luna_9.webp b/game/images/CG/luna_sex/luna_9.webp new file mode 100644 index 00000000..9bd9e647 --- /dev/null +++ b/game/images/CG/luna_sex/luna_9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91f0120da2b377c715c94fb4b69c356f0ce0c04dac8c037de30aee490408a60d +size 148562 diff --git a/game/images/animation/00.webp b/game/images/animation/00.webp new file mode 100644 index 00000000..28899ca2 --- /dev/null +++ b/game/images/animation/00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:773d183f3ba8a1876347e7d909e365943968e1e7f943ba7e70dff8442c75ed31 +size 60 diff --git a/game/images/animation/23_jerking_off_sperm.webp b/game/images/animation/23_jerking_off_sperm.webp new file mode 100644 index 00000000..d77f26ff --- /dev/null +++ b/game/images/animation/23_jerking_off_sperm.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:900a9aea26fbcca4135f86bf95256e75b4c07b696b1de2aea3da917b02ab55cc +size 410 diff --git a/game/images/animation/Bouquet0.webp b/game/images/animation/Bouquet0.webp new file mode 100644 index 00000000..f03a9b35 --- /dev/null +++ b/game/images/animation/Bouquet0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d50f50c684f10d8ea84b66e29470cdc594ff19f881d16f0392f334c1a45d739d +size 10044 diff --git a/game/images/animation/Bouquet1.webp b/game/images/animation/Bouquet1.webp new file mode 100644 index 00000000..8c00a70d --- /dev/null +++ b/game/images/animation/Bouquet1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c086c422c1e1d62d9f89f8c64af8d12157d430c961d816e5cd187a6a12ad5b84 +size 17284 diff --git a/game/images/animation/Bouquet2.webp b/game/images/animation/Bouquet2.webp new file mode 100644 index 00000000..c8f41999 --- /dev/null +++ b/game/images/animation/Bouquet2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82d89b338a8c8c85977da10e5a70c6be2f4d1336b89dc7c824d23279ce3a7c2f +size 17166 diff --git a/game/images/animation/Bouquet3.webp b/game/images/animation/Bouquet3.webp new file mode 100644 index 00000000..1de08a64 --- /dev/null +++ b/game/images/animation/Bouquet3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3da762c0774d54db06c288038b239c372e6321f4db02cb537545c452f6e914df +size 17466 diff --git a/game/images/animation/Bouquet4.webp b/game/images/animation/Bouquet4.webp new file mode 100644 index 00000000..1242a8f6 --- /dev/null +++ b/game/images/animation/Bouquet4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8068a62dc5ab91ec425f81ef224c574843d53e2e4fb73767e9e8a65c8c232695 +size 13854 diff --git a/game/images/animation/BouquetPaf.webp b/game/images/animation/BouquetPaf.webp new file mode 100644 index 00000000..749bde19 --- /dev/null +++ b/game/images/animation/BouquetPaf.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d9c77b2af2c43b60a2268934207ee47988715a4fa3f463a7888342b2610150c +size 13606 diff --git a/game/images/animation/Flower0.webp b/game/images/animation/Flower0.webp new file mode 100644 index 00000000..f03a9b35 --- /dev/null +++ b/game/images/animation/Flower0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d50f50c684f10d8ea84b66e29470cdc594ff19f881d16f0392f334c1a45d739d +size 10044 diff --git a/game/images/animation/Flower1.webp b/game/images/animation/Flower1.webp new file mode 100644 index 00000000..d89ac0b5 --- /dev/null +++ b/game/images/animation/Flower1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1615d6fc32be16eb4614ee5e07da49c1b851137b14ee1a3d2b902edae25ba9f +size 16508 diff --git a/game/images/animation/Flower2.webp b/game/images/animation/Flower2.webp new file mode 100644 index 00000000..89376b0a --- /dev/null +++ b/game/images/animation/Flower2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3dd6af742151dc2cdb127a0c42173c7d9cddd1b6ff09e1f5f7c1f4899f57942c +size 12944 diff --git a/game/images/animation/Flower3.webp b/game/images/animation/Flower3.webp new file mode 100644 index 00000000..fe31b88f --- /dev/null +++ b/game/images/animation/Flower3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a52722aaccc830cbc12406b24ece840429a45f1a89e611e4b7678d7e0e98270 +size 9370 diff --git a/game/images/animation/Flower4.webp b/game/images/animation/Flower4.webp new file mode 100644 index 00000000..20968de8 --- /dev/null +++ b/game/images/animation/Flower4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:520401dade5a16839417e62f5a08e0d2854b2687d9a34149153c7ddd86fe0588 +size 3462 diff --git a/game/images/animation/FlowerPaf.webp b/game/images/animation/FlowerPaf.webp new file mode 100644 index 00000000..8c8a90b5 --- /dev/null +++ b/game/images/animation/FlowerPaf.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7a41a5198bef244bb62c83c93c5f8b67cd0d625df49684dc97ff24a3f85819c +size 6746 diff --git a/game/images/animation/glow_effect/glow_1.webp b/game/images/animation/glow_effect/glow_1.webp new file mode 100644 index 00000000..7fd86547 --- /dev/null +++ b/game/images/animation/glow_effect/glow_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:38eb0dc73f8c46d6b45299c0a9812df93f0fb30bfa11895f73c60bbb268af5fe +size 328 diff --git a/game/images/animation/glow_effect/glow_2.webp b/game/images/animation/glow_effect/glow_2.webp new file mode 100644 index 00000000..d01f867f --- /dev/null +++ b/game/images/animation/glow_effect/glow_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d866e4db5c9ea9a3dea9142335ce79a52b8e9dfbd8919680a7251fd634423e9f +size 572 diff --git a/game/images/animation/glow_effect/glow_3.webp b/game/images/animation/glow_effect/glow_3.webp new file mode 100644 index 00000000..11c19cd8 --- /dev/null +++ b/game/images/animation/glow_effect/glow_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53b61fe1fef7fec74a6cee479f623ff7b0f88937471e8f33596df4c74a3e595e +size 674 diff --git a/game/images/animation/glow_effect/glow_4.webp b/game/images/animation/glow_effect/glow_4.webp new file mode 100644 index 00000000..23262021 --- /dev/null +++ b/game/images/animation/glow_effect/glow_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec794da30471165e826bb213167e2f33eb5654424e2e975def0f820d8b97586c +size 830 diff --git a/game/images/animation/notes_01.webp b/game/images/animation/notes_01.webp new file mode 100644 index 00000000..7207fb34 --- /dev/null +++ b/game/images/animation/notes_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebbee06b5388e399bfacbacfde1e31d409b6b99c3e30a7efb1465df78d1ee1f9 +size 664 diff --git a/game/images/animation/notes_02.webp b/game/images/animation/notes_02.webp new file mode 100644 index 00000000..6be6de49 --- /dev/null +++ b/game/images/animation/notes_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41b20939e72a872c65faad48a219daf97c53701c28fe6c92e834a21a9c14d5a2 +size 920 diff --git a/game/images/animation/notes_03.webp b/game/images/animation/notes_03.webp new file mode 100644 index 00000000..0e14f6c1 --- /dev/null +++ b/game/images/animation/notes_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4790d2434d68ce7bc38e2961dd03b174e32e2af637e5d30b25fed9684efeda72 +size 932 diff --git a/game/images/animation/notes_04.webp b/game/images/animation/notes_04.webp new file mode 100644 index 00000000..7e8f66dd --- /dev/null +++ b/game/images/animation/notes_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f8a1b2f390f50936093321385ce4a23a810559f094f3ad68f2b0bd94de437a5 +size 914 diff --git a/game/images/animation/notes_05.webp b/game/images/animation/notes_05.webp new file mode 100644 index 00000000..6c65f7bf --- /dev/null +++ b/game/images/animation/notes_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:614e52ef305ea9ec1eea431ea2182ef4d0749f2dc45c4649aa40d9711b0f8ce8 +size 896 diff --git a/game/images/animation/notes_06.webp b/game/images/animation/notes_06.webp new file mode 100644 index 00000000..6089a223 --- /dev/null +++ b/game/images/animation/notes_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85e3a4f48c659aed6d16c9f3206424ea29b12266f964d765d44e25bcdf5eef70 +size 850 diff --git a/game/images/animation/notes_07.webp b/game/images/animation/notes_07.webp new file mode 100644 index 00000000..34063272 --- /dev/null +++ b/game/images/animation/notes_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da9f7eac7142884368a089a6ec2d67bb4d38bdaaebfaed7536ed948df8191727 +size 790 diff --git a/game/images/animation/notes_08.webp b/game/images/animation/notes_08.webp new file mode 100644 index 00000000..351d8209 --- /dev/null +++ b/game/images/animation/notes_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:caef10d0b3de449b823fd3e6b8b4c8f553e5d1c8eeeeeef9ebb5f8bc03a2ec4f +size 708 diff --git a/game/images/animation/notes_09.webp b/game/images/animation/notes_09.webp new file mode 100644 index 00000000..ee03fbd6 --- /dev/null +++ b/game/images/animation/notes_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4db58e7e8e4b029f506a5fb74b30ed3d482710ebc682b253bed3390c5d62ff8d +size 34 diff --git a/game/images/animation/smoke_01.webp b/game/images/animation/smoke_01.webp new file mode 100644 index 00000000..6faf3b6d --- /dev/null +++ b/game/images/animation/smoke_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fe40871b68abdc942565b77d8947e48df455dd5f031d33860fbb1eda4e79e98 +size 75028 diff --git a/game/images/animation/smoke_02.webp b/game/images/animation/smoke_02.webp new file mode 100644 index 00000000..c44ab617 --- /dev/null +++ b/game/images/animation/smoke_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2cd4f727f4ee68140db16de43b62837ba3ea52507a1cc92c511e622e58740f3 +size 52646 diff --git a/game/images/animation/smoke_03.webp b/game/images/animation/smoke_03.webp new file mode 100644 index 00000000..c57abbaf --- /dev/null +++ b/game/images/animation/smoke_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df66e6a8de044efcf1eb9be829999de71e86624e67cc40600466fb501db4a904 +size 31720 diff --git a/game/images/animation/spell01.webp b/game/images/animation/spell01.webp new file mode 100644 index 00000000..0382572e --- /dev/null +++ b/game/images/animation/spell01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8529efc5757baa37ce377b358375c0f40445ceab8e3af6f9e4e18356fa0d0139 +size 4736 diff --git a/game/images/animation/spell02.webp b/game/images/animation/spell02.webp new file mode 100644 index 00000000..de5379a1 --- /dev/null +++ b/game/images/animation/spell02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d5e932310ce86d60045e9adbe05603c234ffd76e41528c18c752f55edd4afce +size 5270 diff --git a/game/images/animation/spell03.webp b/game/images/animation/spell03.webp new file mode 100644 index 00000000..8092e538 --- /dev/null +++ b/game/images/animation/spell03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:953dcee6e9000f06820cc1685e1e1cceea50bef46e5123d6e9dce45041a45aec +size 5804 diff --git a/game/images/animation/spell04.webp b/game/images/animation/spell04.webp new file mode 100644 index 00000000..9d900416 --- /dev/null +++ b/game/images/animation/spell04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b05ec16d9761e08b8c5ee372bc8fff642f2915cdf95d5170371d5f51d61914b1 +size 6768 diff --git a/game/images/animation/spell05.webp b/game/images/animation/spell05.webp new file mode 100644 index 00000000..3aba65d5 --- /dev/null +++ b/game/images/animation/spell05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33284ea6501a1880bf4eed8eb04c0492abc42cfc51e3439817b1a8f37501aba0 +size 9160 diff --git a/game/images/animation/spell06.webp b/game/images/animation/spell06.webp new file mode 100644 index 00000000..3ed7f93b --- /dev/null +++ b/game/images/animation/spell06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ee40d3d68ac32813fcfdbb92604851502dbdbc455d2b9cd401d73b1ed2ab52f +size 10802 diff --git a/game/images/animation/spell07.webp b/game/images/animation/spell07.webp new file mode 100644 index 00000000..0021ed11 --- /dev/null +++ b/game/images/animation/spell07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4d633262dd153247fe3ad0db396f0a58fd4e5b6b45fbf6703a01f0a91a37351 +size 11826 diff --git a/game/images/animation/spell08.webp b/game/images/animation/spell08.webp new file mode 100644 index 00000000..8c007741 --- /dev/null +++ b/game/images/animation/spell08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:736328d21934f67c4b687b6c61d59306ba16832692d08ceadb95d562538dd53f +size 13256 diff --git a/game/images/animation/spell09.webp b/game/images/animation/spell09.webp new file mode 100644 index 00000000..217b929c --- /dev/null +++ b/game/images/animation/spell09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc84c4731d3288aa39163fc54574f7374e431196a7bae2d3de911fc0e72aba76 +size 13866 diff --git a/game/images/animation/spell10.webp b/game/images/animation/spell10.webp new file mode 100644 index 00000000..f75e8478 --- /dev/null +++ b/game/images/animation/spell10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26812055417c88c2b17b020ad286907606e04548d325439e58075dc0fe06d1c8 +size 14068 diff --git a/game/images/animation/spell11.webp b/game/images/animation/spell11.webp new file mode 100644 index 00000000..b561d5c8 --- /dev/null +++ b/game/images/animation/spell11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9880297f72d7c8272e4e3d8e52b546ac6daf65a994194967b62793a25413fb3 +size 13804 diff --git a/game/images/animation/spell12.webp b/game/images/animation/spell12.webp new file mode 100644 index 00000000..469b175b --- /dev/null +++ b/game/images/animation/spell12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca4a35f07f19d7d6fe99174b788d7514837d5fa88b880a5edbd71dcc78db08f8 +size 13516 diff --git a/game/images/animation/spell13.webp b/game/images/animation/spell13.webp new file mode 100644 index 00000000..e5a5da3b --- /dev/null +++ b/game/images/animation/spell13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:baea9b05474eee533ceaa0aaa06d376a935026c740971b6701cf34dbe2498b89 +size 13120 diff --git a/game/images/animation/spell14.webp b/game/images/animation/spell14.webp new file mode 100644 index 00000000..f54bd418 --- /dev/null +++ b/game/images/animation/spell14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7355baff3f9acf87fcf59f709af669f844499e701985373b2ac32f944d02f77e +size 12078 diff --git a/game/images/animation/spell15.webp b/game/images/animation/spell15.webp new file mode 100644 index 00000000..8be62c37 --- /dev/null +++ b/game/images/animation/spell15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aea7d0f4f4fe929a612224344ddde88a24b845ba36f4a097ce5dcec7e26ab530 +size 10592 diff --git a/game/images/animation/spell16.webp b/game/images/animation/spell16.webp new file mode 100644 index 00000000..bf158093 --- /dev/null +++ b/game/images/animation/spell16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43241de944aa77ce0f09aa66e303804d2de625467c90bb6d86d1a4d3430fda56 +size 9092 diff --git a/game/images/animation/spell17.webp b/game/images/animation/spell17.webp new file mode 100644 index 00000000..c0c0d202 --- /dev/null +++ b/game/images/animation/spell17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9df5a4fe9d8a7bb49e4f242bf12090563919e64dcc29357f29baef9fd9f03ae9 +size 10026 diff --git a/game/images/blank.webp b/game/images/blank.webp new file mode 100644 index 00000000..4d27c9d7 --- /dev/null +++ b/game/images/blank.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78314b2a0afc11f8512802517d3497f25e333e4a858293af2e2deb62c99753ff +size 72 diff --git a/game/images/cardgame/VS/background_snape.webp b/game/images/cardgame/VS/background_snape.webp new file mode 100644 index 00000000..e974c855 --- /dev/null +++ b/game/images/cardgame/VS/background_snape.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cb5484bb4355d8c00af580f5f05b0248867251e1b240feb8be7ea1b4b24fcaa +size 220586 diff --git a/game/images/cardgame/VS/background_twins.webp b/game/images/cardgame/VS/background_twins.webp new file mode 100644 index 00000000..7925a97f --- /dev/null +++ b/game/images/cardgame/VS/background_twins.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7f8aeadbf0c5a673e2b8860f4d5c7db964b335f830f1ee5f53dac1a119c70f9 +size 172190 diff --git a/game/images/cardgame/VS/genie_01.webp b/game/images/cardgame/VS/genie_01.webp new file mode 100644 index 00000000..0d7c3558 --- /dev/null +++ b/game/images/cardgame/VS/genie_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c876bb3237d675a63c1f98df0b5de475b754232eca009104ceba855768af7241 +size 100818 diff --git a/game/images/cardgame/VS/genie_02.webp b/game/images/cardgame/VS/genie_02.webp new file mode 100644 index 00000000..bd3ee886 --- /dev/null +++ b/game/images/cardgame/VS/genie_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4717168a656330297d2161d5a0636f6a236360188ce4dc8108cadb970fff701 +size 102072 diff --git a/game/images/cardgame/VS/genie_03.webp b/game/images/cardgame/VS/genie_03.webp new file mode 100644 index 00000000..ae8d3b60 --- /dev/null +++ b/game/images/cardgame/VS/genie_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cda5cb1d01e3af5a2d6e8b77c9099e2d0bdecd93e83cc00295035f811c91ca7 +size 105250 diff --git a/game/images/cardgame/VS/genie_04.webp b/game/images/cardgame/VS/genie_04.webp new file mode 100644 index 00000000..77c5febe --- /dev/null +++ b/game/images/cardgame/VS/genie_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4fa42fb76c841535642a1c563cba18d16055e5a6e13160b3612aa5cc87435d4 +size 101418 diff --git a/game/images/cardgame/VS/hermione_01.webp b/game/images/cardgame/VS/hermione_01.webp new file mode 100644 index 00000000..3e60ce78 --- /dev/null +++ b/game/images/cardgame/VS/hermione_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c8061b7f9b1e5ffa7a3b4e904ffeb61d64f50622a111078dfe5ccd4eb571b2c +size 102504 diff --git a/game/images/cardgame/VS/hermione_02.webp b/game/images/cardgame/VS/hermione_02.webp new file mode 100644 index 00000000..f3a94f64 --- /dev/null +++ b/game/images/cardgame/VS/hermione_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96cef44c2460090447fbb4282f66983d7b27a2d14168400ec9c334aae52f58cd +size 103330 diff --git a/game/images/cardgame/VS/snape_01.webp b/game/images/cardgame/VS/snape_01.webp new file mode 100644 index 00000000..f204938c --- /dev/null +++ b/game/images/cardgame/VS/snape_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3287a85c09e63485f80ee49f6b60f0b8be9295bda757e71e8b88b55e627f247 +size 97946 diff --git a/game/images/cardgame/VS/snape_02.webp b/game/images/cardgame/VS/snape_02.webp new file mode 100644 index 00000000..72c0d288 --- /dev/null +++ b/game/images/cardgame/VS/snape_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c0232a1e91c469d4eaeb76b6654a20c30152c180d41cb1de2d7f7bf528ae25a +size 96964 diff --git a/game/images/cardgame/VS/twins_01.webp b/game/images/cardgame/VS/twins_01.webp new file mode 100644 index 00000000..41207d9a --- /dev/null +++ b/game/images/cardgame/VS/twins_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18830b616be10011618acf410a9d43ed3a68398649926a02b761b2f94cf02bfa +size 14090 diff --git a/game/images/cardgame/VS/twins_02.webp b/game/images/cardgame/VS/twins_02.webp new file mode 100644 index 00000000..4c6c47c1 --- /dev/null +++ b/game/images/cardgame/VS/twins_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:472c9a513a000f7064cbf22a52899077e2cf5681ec09127bf4121afcd4e5c2af +size 89338 diff --git a/game/images/cardgame/VS/vs.webp b/game/images/cardgame/VS/vs.webp new file mode 100644 index 00000000..0d503661 --- /dev/null +++ b/game/images/cardgame/VS/vs.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:adc5c41c8d22ba4cbea7f691fbfe00bf17f6866f9c5018f90e3274bb94645f2e +size 4416 diff --git a/game/images/cardgame/back.webp b/game/images/cardgame/back.webp new file mode 100644 index 00000000..03e1181b --- /dev/null +++ b/game/images/cardgame/back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a1283884f5d0b22826705eaefb901ff40d5c21142a46feaa07dadeef5797c00 +size 474 diff --git a/game/images/cardgame/back_hover.webp b/game/images/cardgame/back_hover.webp new file mode 100644 index 00000000..2b858d41 --- /dev/null +++ b/game/images/cardgame/back_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b4c2393e5515655f0f362d67ea7b64052645989719a25a28c2613fdf6ea6d48 +size 476 diff --git a/game/images/cardgame/border.webp b/game/images/cardgame/border.webp new file mode 100644 index 00000000..59f67884 --- /dev/null +++ b/game/images/cardgame/border.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abd4f6571643aaa64b9d226ab793a6e45ca6dd17fc4f943d996e032589f71ef4 +size 1062 diff --git a/game/images/cardgame/button.webp b/game/images/cardgame/button.webp new file mode 100644 index 00000000..75a589b7 --- /dev/null +++ b/game/images/cardgame/button.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ec9353d92bffb6e775131e5c8b2465e58250164a11bfaa10f84b11f3374a2a1 +size 138 diff --git a/game/images/cardgame/button_hover.webp b/game/images/cardgame/button_hover.webp new file mode 100644 index 00000000..381b874e --- /dev/null +++ b/game/images/cardgame/button_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b75c646e09f3771d12bcc0f18e204e6516a6474bd60bb5caedbc6d2d42a5b97a +size 136 diff --git a/game/images/cardgame/card_table.webp b/game/images/cardgame/card_table.webp new file mode 100644 index 00000000..ebaa02fb --- /dev/null +++ b/game/images/cardgame/card_table.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d80ebf748074a4d8fe07eba7865b0e4e03ece3fe5040f32f7c184e730a70c5f1 +size 189792 diff --git a/game/images/cardgame/deck_builder.webp b/game/images/cardgame/deck_builder.webp new file mode 100644 index 00000000..a1f6f0f8 --- /dev/null +++ b/game/images/cardgame/deck_builder.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea6ee24b630d168454840c7281494571e4b4eabb3195e47ba5de7ec28f2bf880 +size 224114 diff --git a/game/images/cardgame/exit.webp b/game/images/cardgame/exit.webp new file mode 100644 index 00000000..573ee7c1 --- /dev/null +++ b/game/images/cardgame/exit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b5c5ce664b9a305df293ab23c35f5a0118a368c42297a162b59126ba75cc09d +size 512 diff --git a/game/images/cardgame/exit_hover.webp b/game/images/cardgame/exit_hover.webp new file mode 100644 index 00000000..1c1de7c4 --- /dev/null +++ b/game/images/cardgame/exit_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0dbf6ba5312cf70a43997661e867c72a282a148ef345b19adbe44e83d33a001b +size 514 diff --git a/game/images/cardgame/gallery.webp b/game/images/cardgame/gallery.webp new file mode 100644 index 00000000..654ad63b --- /dev/null +++ b/game/images/cardgame/gallery.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:777ebb58beaa9a888aceddb7ae8c809ce30161cad68983ccaa8387717868c237 +size 836 diff --git a/game/images/cardgame/gallery_hover.webp b/game/images/cardgame/gallery_hover.webp new file mode 100644 index 00000000..293d0ab6 --- /dev/null +++ b/game/images/cardgame/gallery_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bd83af8a6cbedbd0b5d8a15204974a8392d868c4709959c3af846ebe91c4066 +size 838 diff --git a/game/images/cardgame/guide.webp b/game/images/cardgame/guide.webp new file mode 100644 index 00000000..46376347 --- /dev/null +++ b/game/images/cardgame/guide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45bd0b24836fb37101f992c3279edcbdc1edcb0a5e772d57f41c45be691efb5b +size 676 diff --git a/game/images/cardgame/guide/0.webp b/game/images/cardgame/guide/0.webp new file mode 100644 index 00000000..1d9b40c8 --- /dev/null +++ b/game/images/cardgame/guide/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59486febd4954b7feb7aeb26099e4bbdae32e7e55005f130986ffa0e9868491e +size 311542 diff --git a/game/images/cardgame/guide/1.webp b/game/images/cardgame/guide/1.webp new file mode 100644 index 00000000..85f28651 --- /dev/null +++ b/game/images/cardgame/guide/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33c240efa92497869a1632ba13aeadb4cd29a5ae4a5ef11df4a0073a4f650be4 +size 323764 diff --git a/game/images/cardgame/guide/2.webp b/game/images/cardgame/guide/2.webp new file mode 100644 index 00000000..b32a5f9d --- /dev/null +++ b/game/images/cardgame/guide/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42d6846436ab9d8f8cc593f4aae167d798946585febd52c8b1c312cca8d33326 +size 329640 diff --git a/game/images/cardgame/guide/3.webp b/game/images/cardgame/guide/3.webp new file mode 100644 index 00000000..3ebe417e --- /dev/null +++ b/game/images/cardgame/guide/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f0406b4936ad3f8a9a2f5ebcc6d60f39a460209cfdb20f26190a38f55361a28 +size 317410 diff --git a/game/images/cardgame/guide/33.webp b/game/images/cardgame/guide/33.webp new file mode 100644 index 00000000..df3a45a1 --- /dev/null +++ b/game/images/cardgame/guide/33.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d442f05440f5c6d9f6088b785de7b7533a7faf6d5c061a85a17364ad2de57dbf +size 323550 diff --git a/game/images/cardgame/guide/4.webp b/game/images/cardgame/guide/4.webp new file mode 100644 index 00000000..c309e46b --- /dev/null +++ b/game/images/cardgame/guide/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c95523799fb36db39be2419db3fd64753020bcf39a0da140bdd6937468d16ad +size 317428 diff --git a/game/images/cardgame/guide/5.webp b/game/images/cardgame/guide/5.webp new file mode 100644 index 00000000..5b206337 --- /dev/null +++ b/game/images/cardgame/guide/5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6171b23b71873252b80d8cb7e6ca4e1d4650ad0ab5c5b7308ccdd8f131573b8b +size 302272 diff --git a/game/images/cardgame/guide/border_guide.webp b/game/images/cardgame/guide/border_guide.webp new file mode 100644 index 00000000..f4eb6439 --- /dev/null +++ b/game/images/cardgame/guide/border_guide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4d4724bbb04598887ee73fb98340cb7d20dd86591f01827c4b0068ce6023536 +size 1044 diff --git a/game/images/cardgame/guide/card_zone.webp b/game/images/cardgame/guide/card_zone.webp new file mode 100644 index 00000000..560077f9 --- /dev/null +++ b/game/images/cardgame/guide/card_zone.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1a706b3033292a0e760b4d36bb567c2c8ee0e5149dfded3921ae87de9190bef +size 6642 diff --git a/game/images/cardgame/guide/cho_stage2.webp b/game/images/cardgame/guide/cho_stage2.webp new file mode 100644 index 00000000..72a0c5e7 --- /dev/null +++ b/game/images/cardgame/guide/cho_stage2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9362affc02a32022b1ff7d9fb9642cb41325176a81d6ef803efb1e833d9ff885 +size 26346 diff --git a/game/images/cardgame/guide/cho_stage3.webp b/game/images/cardgame/guide/cho_stage3.webp new file mode 100644 index 00000000..9bcd5e3c --- /dev/null +++ b/game/images/cardgame/guide/cho_stage3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:675d5d57862133b7d68c0a7730abb4183fec8cdbdc5e318eaf3cd106445c206b +size 25950 diff --git a/game/images/cardgame/guide/cho_stage4.webp b/game/images/cardgame/guide/cho_stage4.webp new file mode 100644 index 00000000..653ce073 --- /dev/null +++ b/game/images/cardgame/guide/cho_stage4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e5574b49f68020f173419bc574653cebac4f3e72ea7afe27425fa86617df7fd +size 25874 diff --git a/game/images/cardgame/guide/domain_guide.webp b/game/images/cardgame/guide/domain_guide.webp new file mode 100644 index 00000000..127e26fe --- /dev/null +++ b/game/images/cardgame/guide/domain_guide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b03441d9fe2c7b7d8192e2bfda211e1803ed94a40011004bbd1dddd48778eb8 +size 992 diff --git a/game/images/cardgame/guide/enemy_zone.webp b/game/images/cardgame/guide/enemy_zone.webp new file mode 100644 index 00000000..174c613e --- /dev/null +++ b/game/images/cardgame/guide/enemy_zone.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f8e595fa5b13046c9d6a325d8d7ce60c184535f09e6bbb96f8a85d3c86b3068 +size 3530 diff --git a/game/images/cardgame/guide/fight_guide.webp b/game/images/cardgame/guide/fight_guide.webp new file mode 100644 index 00000000..127e26fe --- /dev/null +++ b/game/images/cardgame/guide/fight_guide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b03441d9fe2c7b7d8192e2bfda211e1803ed94a40011004bbd1dddd48778eb8 +size 992 diff --git a/game/images/cardgame/guide/fight_zone.webp b/game/images/cardgame/guide/fight_zone.webp new file mode 100644 index 00000000..c9ad16d7 --- /dev/null +++ b/game/images/cardgame/guide/fight_zone.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a8bf511c465ecc15fe00b2eae14175727b8e229a257b6b653befd28d752ebf7 +size 6198 diff --git a/game/images/cardgame/guide/numbers_guide.webp b/game/images/cardgame/guide/numbers_guide.webp new file mode 100644 index 00000000..e5e74d32 --- /dev/null +++ b/game/images/cardgame/guide/numbers_guide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f2b05a3b3c3beaff67865f732e86c3c7ac68e066f184bbc97cb169b4114e8e0 +size 2296 diff --git a/game/images/cardgame/guide/player_zone.webp b/game/images/cardgame/guide/player_zone.webp new file mode 100644 index 00000000..4a7221af --- /dev/null +++ b/game/images/cardgame/guide/player_zone.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd40b71fd22d5929aa90690a64cd774891ecbfad100d9d410abd61991989bb4b +size 3462 diff --git a/game/images/cardgame/guide/tier_guide.webp b/game/images/cardgame/guide/tier_guide.webp new file mode 100644 index 00000000..127e26fe --- /dev/null +++ b/game/images/cardgame/guide/tier_guide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b03441d9fe2c7b7d8192e2bfda211e1803ed94a40011004bbd1dddd48778eb8 +size 992 diff --git a/game/images/cardgame/guide_hover.webp b/game/images/cardgame/guide_hover.webp new file mode 100644 index 00000000..63c02e47 --- /dev/null +++ b/game/images/cardgame/guide_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ee6053f65802b5e544f0e63c0f12f0ce994c82ab6b2157640b40ccb95149bce +size 678 diff --git a/game/images/cardgame/rule_death.webp b/game/images/cardgame/rule_death.webp new file mode 100644 index 00000000..8e4c17f7 --- /dev/null +++ b/game/images/cardgame/rule_death.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f216d8e60331536d2f5c3c49d2c791d233e0df4fdc5cd5d34415bb8bbf4a68b +size 660 diff --git a/game/images/cardgame/rule_double.webp b/game/images/cardgame/rule_double.webp new file mode 100644 index 00000000..e6c4dea4 --- /dev/null +++ b/game/images/cardgame/rule_double.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08dab4d4616de64444c26e5955f925c173e4e369308ae505246512db605fb992 +size 440 diff --git a/game/images/cardgame/rule_hidden.webp b/game/images/cardgame/rule_hidden.webp new file mode 100644 index 00000000..c13c9b6a --- /dev/null +++ b/game/images/cardgame/rule_hidden.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1704b0c5a2aa4ac6f04ed855e98f818325ffd7705128f0a077375108b8cc734 +size 290 diff --git a/game/images/cardgame/rule_random.webp b/game/images/cardgame/rule_random.webp new file mode 100644 index 00000000..d5980f9c --- /dev/null +++ b/game/images/cardgame/rule_random.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06b2e42807b3497af5368b4a16aa2175d6c0a138d3d08116248963d41007d860 +size 854 diff --git a/game/images/cardgame/rule_reverse.webp b/game/images/cardgame/rule_reverse.webp new file mode 100644 index 00000000..d999f45e --- /dev/null +++ b/game/images/cardgame/rule_reverse.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:120d4e74eacfe8f4e1ce85306ff99f3f2157a00adffd8997b73d406bdaab0b2b +size 630 diff --git a/game/images/cardgame/scrolldown.webp b/game/images/cardgame/scrolldown.webp new file mode 100644 index 00000000..1b2e3a1d --- /dev/null +++ b/game/images/cardgame/scrolldown.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83147fe66f242d78f1bab4f7555be8af134da7525f7229753811cfd473a8840b +size 296 diff --git a/game/images/cardgame/scrolldown_hover.webp b/game/images/cardgame/scrolldown_hover.webp new file mode 100644 index 00000000..62cc5a30 --- /dev/null +++ b/game/images/cardgame/scrolldown_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:526b60e31edf68c5443f795e6d7f421fea72c52dcf0cd59028026249bf1c4931 +size 302 diff --git a/game/images/cardgame/scrollup.webp b/game/images/cardgame/scrollup.webp new file mode 100644 index 00000000..275e5f45 --- /dev/null +++ b/game/images/cardgame/scrollup.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fdfc227157783a227bf4c0ff1ff178d0c1eee49444b58d523d7bde3673f57df7 +size 288 diff --git a/game/images/cardgame/scrollup_hover.webp b/game/images/cardgame/scrollup_hover.webp new file mode 100644 index 00000000..39f464dd --- /dev/null +++ b/game/images/cardgame/scrollup_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c7db0b05664d5f273a35c4a39406d74446696ae0741985c099d916bc05b7ee6 +size 294 diff --git a/game/images/cardgame/spacer.webp b/game/images/cardgame/spacer.webp new file mode 100644 index 00000000..b4c47974 --- /dev/null +++ b/game/images/cardgame/spacer.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5eac4e67393cdd728be809f0495f1e3b30f585de3bcca3fe2f421b427add566b +size 50 diff --git a/game/images/cardgame/t1/backside/gryffindor.webp b/game/images/cardgame/t1/backside/gryffindor.webp new file mode 100644 index 00000000..58a1d2b3 --- /dev/null +++ b/game/images/cardgame/t1/backside/gryffindor.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d219e0854ce793012a48e0cdcd2d9f8a172c3322bdcf968b36f893d67209ffaa +size 9878 diff --git a/game/images/cardgame/t1/backside/hufflepuff.webp b/game/images/cardgame/t1/backside/hufflepuff.webp new file mode 100644 index 00000000..db3cdf1d --- /dev/null +++ b/game/images/cardgame/t1/backside/hufflepuff.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c04ba3ed371deea7ed7dd588b552a03a496703ba6a3ce0527d19313d2812e97 +size 14232 diff --git a/game/images/cardgame/t1/backside/ravenclaw.webp b/game/images/cardgame/t1/backside/ravenclaw.webp new file mode 100644 index 00000000..04fa9807 --- /dev/null +++ b/game/images/cardgame/t1/backside/ravenclaw.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7662bf2ba565b0475095c1219931fc4eadb331fe67de091b3216dda8dd6a1045 +size 10126 diff --git a/game/images/cardgame/t1/backside/slytherin.webp b/game/images/cardgame/t1/backside/slytherin.webp new file mode 100644 index 00000000..0b01ff71 --- /dev/null +++ b/game/images/cardgame/t1/backside/slytherin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b99c16c559ee3b38c82a3e1bc176ea35ef657eecf5729f4278441727aa2cc800 +size 10326 diff --git a/game/images/cardgame/t1/cho/cho_schoolgirl_v1.webp b/game/images/cardgame/t1/cho/cho_schoolgirl_v1.webp new file mode 100644 index 00000000..dba8aae8 --- /dev/null +++ b/game/images/cardgame/t1/cho/cho_schoolgirl_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0a8ef5f97f03c69333bdac3e9947f9f50309223cf22522f5d3e789fe84f2903 +size 59384 diff --git a/game/images/cardgame/t1/cho/cho_schoolgirl_v2.webp b/game/images/cardgame/t1/cho/cho_schoolgirl_v2.webp new file mode 100644 index 00000000..a4735b9b --- /dev/null +++ b/game/images/cardgame/t1/cho/cho_schoolgirl_v2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0caa1e0388e65708afc22a51e9b1b08db1d6fb12820da44cb2f250e3f797f705 +size 57416 diff --git a/game/images/cardgame/t1/cho/cho_schoolgirl_v3.webp b/game/images/cardgame/t1/cho/cho_schoolgirl_v3.webp new file mode 100644 index 00000000..c44fc085 --- /dev/null +++ b/game/images/cardgame/t1/cho/cho_schoolgirl_v3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:092dbacc857c9f3722347538e9f399b88de3056abf8134c6cc490054b1fb9550 +size 55416 diff --git a/game/images/cardgame/t1/cho/cho_schoolgirl_v4.webp b/game/images/cardgame/t1/cho/cho_schoolgirl_v4.webp new file mode 100644 index 00000000..0d677804 --- /dev/null +++ b/game/images/cardgame/t1/cho/cho_schoolgirl_v4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08d199b5efd2b1371307aa5e7818aace87633e3feaf99e0305f8b9a490195aa4 +size 56368 diff --git a/game/images/cardgame/t1/genie_realm/aladdin_v1.webp b/game/images/cardgame/t1/genie_realm/aladdin_v1.webp new file mode 100644 index 00000000..10af82e7 --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/aladdin_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aef8f775fb3d97fa5c2d785644e760bc79ff47bae6823bcef421d5c475703efc +size 77742 diff --git a/game/images/cardgame/t1/genie_realm/azalea_v1.webp b/game/images/cardgame/t1/genie_realm/azalea_v1.webp new file mode 100644 index 00000000..3cf997cb --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/azalea_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0705a13b95c230fde6d2b638481b6689186ef64fd982eda92879e073928c0b6e +size 73518 diff --git a/game/images/cardgame/t1/genie_realm/azalea_v2.webp b/game/images/cardgame/t1/genie_realm/azalea_v2.webp new file mode 100644 index 00000000..bfac6612 --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/azalea_v2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6361a470abeb1c5a2f652c6189c52ba1dc8588941abe5c27e813876c28fb10a +size 73942 diff --git a/game/images/cardgame/t1/genie_realm/azalea_v3.webp b/game/images/cardgame/t1/genie_realm/azalea_v3.webp new file mode 100644 index 00000000..b994a238 --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/azalea_v3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bdb54ec27aae25ca213fcafdc4607f609de93e37558410037f8d269e988f8f5 +size 72388 diff --git a/game/images/cardgame/t1/genie_realm/azalea_v4.webp b/game/images/cardgame/t1/genie_realm/azalea_v4.webp new file mode 100644 index 00000000..90f792a6 --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/azalea_v4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4839323547922e6068e8d579be7a07e4f74f6d2f52eb3d82c59065cabc6243f8 +size 66096 diff --git a/game/images/cardgame/t1/genie_realm/dahlia_v1.webp b/game/images/cardgame/t1/genie_realm/dahlia_v1.webp new file mode 100644 index 00000000..e997eaf4 --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/dahlia_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:854b88be9e8309c6d0127015d5c3b4c5e86e5ced64860aeecd2a5670aa8a42c8 +size 83752 diff --git a/game/images/cardgame/t1/genie_realm/iri_v1.webp b/game/images/cardgame/t1/genie_realm/iri_v1.webp new file mode 100644 index 00000000..e4b17772 --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/iri_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02956d7682c65ba499a857a8808bc2138e9b2cb83a0efa149046ff402e7cd90d +size 45432 diff --git a/game/images/cardgame/t1/genie_realm/iri_v2.webp b/game/images/cardgame/t1/genie_realm/iri_v2.webp new file mode 100644 index 00000000..ba68d6ee --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/iri_v2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89df1dd36643713a405a32ed1ec1e658dafde19fa875d5a45130f653d1df07db +size 55658 diff --git a/game/images/cardgame/t1/genie_realm/iri_v3.webp b/game/images/cardgame/t1/genie_realm/iri_v3.webp new file mode 100644 index 00000000..da4a3aa9 --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/iri_v3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c92f40af2a15f03e4d0a2dbfc6b3a4e73a2e04b55f736cec22cf90865c166ea +size 58362 diff --git a/game/images/cardgame/t1/genie_realm/iri_v4.webp b/game/images/cardgame/t1/genie_realm/iri_v4.webp new file mode 100644 index 00000000..6899a580 --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/iri_v4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8287916235effcfbade6a0f8984bff50f62cdb23393ebe6ac1107d5b83e52c3 +size 55128 diff --git a/game/images/cardgame/t1/genie_realm/jafar_v1.webp b/game/images/cardgame/t1/genie_realm/jafar_v1.webp new file mode 100644 index 00000000..eac54487 --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/jafar_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8685098d68cf3cd169cf93d5e0b9898eeeff511ef64e176036d43fe5972cb4ea +size 93226 diff --git a/game/images/cardgame/t1/genie_realm/jas_v1.webp b/game/images/cardgame/t1/genie_realm/jas_v1.webp new file mode 100644 index 00000000..c39ec0c0 --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/jas_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d4b2f9d2124f879934cb0532cc3d43bbe5e7b9c6d55c11733cb70f5636176ef +size 59046 diff --git a/game/images/cardgame/t1/genie_realm/jas_v2.webp b/game/images/cardgame/t1/genie_realm/jas_v2.webp new file mode 100644 index 00000000..fd1d0946 --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/jas_v2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ecd0f21cba04ae47c97e8f5d99deb810c4aa8b4718075d2e3b0b476513e2934 +size 59548 diff --git a/game/images/cardgame/t1/genie_realm/jas_v3.webp b/game/images/cardgame/t1/genie_realm/jas_v3.webp new file mode 100644 index 00000000..cd35415f --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/jas_v3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8c98a77a9a73ea35db4696b986e6edf380f767a578f0ae19718d05533e0049b +size 58372 diff --git a/game/images/cardgame/t1/genie_realm/jas_v4.webp b/game/images/cardgame/t1/genie_realm/jas_v4.webp new file mode 100644 index 00000000..cc1dfa7a --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/jas_v4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72fc46f6ae80e2e151fdb02ad837db48a94ec24c9020e323ee53efbd8bd3ef03 +size 57766 diff --git a/game/images/cardgame/t1/genie_realm/lilly_v1.webp b/game/images/cardgame/t1/genie_realm/lilly_v1.webp new file mode 100644 index 00000000..7ec6dc9b --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/lilly_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a85bf0d7b0ce52e5e7a9dc1c25c8f291e33f86267c445b0b403840aa5349d6c +size 88226 diff --git a/game/images/cardgame/t1/genie_realm/maslab_v1.webp b/game/images/cardgame/t1/genie_realm/maslab_v1.webp new file mode 100644 index 00000000..143f3ec9 --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/maslab_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7db3264cb46c931cbdff68d476f1d3d8dd1ab9f4abae1b4b2234aa1c9e43dabd +size 75212 diff --git a/game/images/cardgame/t1/genie_realm/rasul_v1.webp b/game/images/cardgame/t1/genie_realm/rasul_v1.webp new file mode 100644 index 00000000..92e2719e --- /dev/null +++ b/game/images/cardgame/t1/genie_realm/rasul_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff8a80b0b7a9a0a6884008ee7f3c9ce0ef6626ac03bbb45ff63a4389993afb9f +size 64346 diff --git a/game/images/cardgame/t1/hermione/her_librarian_v1.webp b/game/images/cardgame/t1/hermione/her_librarian_v1.webp new file mode 100644 index 00000000..a0c6dee7 --- /dev/null +++ b/game/images/cardgame/t1/hermione/her_librarian_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c727b3add184722a93631de45274fa882f4e98de3eb12b72fe57d070c033f45 +size 61604 diff --git a/game/images/cardgame/t1/hermione/her_librarian_v2.webp b/game/images/cardgame/t1/hermione/her_librarian_v2.webp new file mode 100644 index 00000000..cd218d88 --- /dev/null +++ b/game/images/cardgame/t1/hermione/her_librarian_v2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa8abb11199ae2b97205b95636eae3bc1d4dad1fe42c09e49a4e24f7172e1adb +size 61758 diff --git a/game/images/cardgame/t1/hermione/her_librarian_v3.webp b/game/images/cardgame/t1/hermione/her_librarian_v3.webp new file mode 100644 index 00000000..ae5f1645 --- /dev/null +++ b/game/images/cardgame/t1/hermione/her_librarian_v3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91991389d67bbd32d7f51bef9963e806caa48594de44fefc850bda8cc6903b68 +size 63748 diff --git a/game/images/cardgame/t1/hermione/her_librarian_v4.webp b/game/images/cardgame/t1/hermione/her_librarian_v4.webp new file mode 100644 index 00000000..65d65505 --- /dev/null +++ b/game/images/cardgame/t1/hermione/her_librarian_v4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8e3deee51944050620c82e78ea1e7ac0f84b31c6ebcdf159fba478d03d948f3 +size 64900 diff --git a/game/images/cardgame/t1/hermione/her_schoolgirl_v1.webp b/game/images/cardgame/t1/hermione/her_schoolgirl_v1.webp new file mode 100644 index 00000000..17a85af6 --- /dev/null +++ b/game/images/cardgame/t1/hermione/her_schoolgirl_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:855f422516c1fbad354571ff8927a3a55893b2ce7c15e958a4443484d35f9ef2 +size 75680 diff --git a/game/images/cardgame/t1/hermione/her_schoolgirl_v2.webp b/game/images/cardgame/t1/hermione/her_schoolgirl_v2.webp new file mode 100644 index 00000000..95d16acf --- /dev/null +++ b/game/images/cardgame/t1/hermione/her_schoolgirl_v2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d17664fac68eeec6bff05a0415c92fe76e390fa53570c5f4abc695e2bbf04aa +size 74460 diff --git a/game/images/cardgame/t1/hermione/her_schoolgirl_v3.webp b/game/images/cardgame/t1/hermione/her_schoolgirl_v3.webp new file mode 100644 index 00000000..13ce05a6 --- /dev/null +++ b/game/images/cardgame/t1/hermione/her_schoolgirl_v3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ae07e821bc13c70f94d5a38c5d15ed396b26642ea50979dcb3d13f95f4451fd +size 72336 diff --git a/game/images/cardgame/t1/hermione/her_schoolgirl_v4.webp b/game/images/cardgame/t1/hermione/her_schoolgirl_v4.webp new file mode 100644 index 00000000..356c08e0 --- /dev/null +++ b/game/images/cardgame/t1/hermione/her_schoolgirl_v4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a95d6f3fc43010453ab4119124fa51f001aaa68f7912bfbde25627aeb7bc8e9 +size 73064 diff --git a/game/images/cardgame/t1/luna/lun_schoolgirl_v1.webp b/game/images/cardgame/t1/luna/lun_schoolgirl_v1.webp new file mode 100644 index 00000000..6560700c --- /dev/null +++ b/game/images/cardgame/t1/luna/lun_schoolgirl_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7ad3a6f202ba37ac0da1a47e97edf7fbdf43cc3367defdb0a9b12cd43cdf321 +size 92852 diff --git a/game/images/cardgame/t1/luna/lun_schoolgirl_v2.webp b/game/images/cardgame/t1/luna/lun_schoolgirl_v2.webp new file mode 100644 index 00000000..5ac28f22 --- /dev/null +++ b/game/images/cardgame/t1/luna/lun_schoolgirl_v2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0dba282713b400daa66ae749c69d7434a487171976103678748d9d5355d3615 +size 91336 diff --git a/game/images/cardgame/t1/luna/lun_schoolgirl_v3.webp b/game/images/cardgame/t1/luna/lun_schoolgirl_v3.webp new file mode 100644 index 00000000..c586780e --- /dev/null +++ b/game/images/cardgame/t1/luna/lun_schoolgirl_v3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed657cc92cbf366043b2cbc657c460974eb4eb47a165e61637c72164f74b3560 +size 88818 diff --git a/game/images/cardgame/t1/luna/lun_schoolgirl_v4.webp b/game/images/cardgame/t1/luna/lun_schoolgirl_v4.webp new file mode 100644 index 00000000..c6c5a5ff --- /dev/null +++ b/game/images/cardgame/t1/luna/lun_schoolgirl_v4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d720ca6e47bea83a4b699d3a8aa897514c3c1927b4b1de9bcdf2ac70dfe9a8b0 +size 88452 diff --git a/game/images/cardgame/t1/other/badge_v1.webp b/game/images/cardgame/t1/other/badge_v1.webp new file mode 100644 index 00000000..fa021e23 --- /dev/null +++ b/game/images/cardgame/t1/other/badge_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da6ca9175f50cf0e8d9ae19bc6b65a6afb3de6060bca0a406f7f5626ea63978b +size 31236 diff --git a/game/images/cardgame/t1/other/barbell_v1.webp b/game/images/cardgame/t1/other/barbell_v1.webp new file mode 100644 index 00000000..8e67d869 --- /dev/null +++ b/game/images/cardgame/t1/other/barbell_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30dea1046fd59923aec515c6784c87a66439546ac9478a189f81c96476c94fa8 +size 45188 diff --git a/game/images/cardgame/t1/other/bdsm_v1.webp b/game/images/cardgame/t1/other/bdsm_v1.webp new file mode 100644 index 00000000..7a50a913 --- /dev/null +++ b/game/images/cardgame/t1/other/bdsm_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:552b8665dfa7486d265248c220b6f3b9ff4654cd49c964fc67b57c4a13ef173a +size 58386 diff --git a/game/images/cardgame/t1/other/beads_v1.webp b/game/images/cardgame/t1/other/beads_v1.webp new file mode 100644 index 00000000..a6e3d572 --- /dev/null +++ b/game/images/cardgame/t1/other/beads_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:130311950bd224465adbfdb6833023dcf6b023e7fa24e59a08a82397e2a5391e +size 38892 diff --git a/game/images/cardgame/t1/other/bird_v1.webp b/game/images/cardgame/t1/other/bird_v1.webp new file mode 100644 index 00000000..7e57525c --- /dev/null +++ b/game/images/cardgame/t1/other/bird_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9b67b215ce323b2bc7fd9bd364dcf7dedf5b1426cc3bfab57b7467ae55d1931 +size 26350 diff --git a/game/images/cardgame/t1/other/bookchairs_v1.webp b/game/images/cardgame/t1/other/bookchairs_v1.webp new file mode 100644 index 00000000..a6db6c99 --- /dev/null +++ b/game/images/cardgame/t1/other/bookchairs_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab5efc1f009f566660990ab08b5c50732b48378ade7cd5f1caaad7ded9081868 +size 56124 diff --git a/game/images/cardgame/t1/other/bookgala2_v1.webp b/game/images/cardgame/t1/other/bookgala2_v1.webp new file mode 100644 index 00000000..ccea6303 --- /dev/null +++ b/game/images/cardgame/t1/other/bookgala2_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7c07e4410091421b00ea71c7e6aa096b0ef1fc264901fae52ca50e3e7dec2e9 +size 56280 diff --git a/game/images/cardgame/t1/other/bookgala_v1.webp b/game/images/cardgame/t1/other/bookgala_v1.webp new file mode 100644 index 00000000..d2b1a2b1 --- /dev/null +++ b/game/images/cardgame/t1/other/bookgala_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7498ddc7ce94aab7b78d27789ec3e5fc35db5d34668fa82df2a71d52810ebd9e +size 58760 diff --git a/game/images/cardgame/t1/other/bookwaifu_v1.webp b/game/images/cardgame/t1/other/bookwaifu_v1.webp new file mode 100644 index 00000000..ca0dd489 --- /dev/null +++ b/game/images/cardgame/t1/other/bookwaifu_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:361aa53abb7f3da1eeb09e14b0fcba50c90bee691328b515663960ae921b8c97 +size 53408 diff --git a/game/images/cardgame/t1/other/broom_v1.webp b/game/images/cardgame/t1/other/broom_v1.webp new file mode 100644 index 00000000..ee9efe98 --- /dev/null +++ b/game/images/cardgame/t1/other/broom_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c1670ca79a0b4f213c4903fb2d38b1bc64777fac982129a57b1f629f809ed6f +size 33208 diff --git a/game/images/cardgame/t1/other/bsdm_v1.webp b/game/images/cardgame/t1/other/bsdm_v1.webp new file mode 100644 index 00000000..7a50a913 --- /dev/null +++ b/game/images/cardgame/t1/other/bsdm_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:552b8665dfa7486d265248c220b6f3b9ff4654cd49c964fc67b57c4a13ef173a +size 58386 diff --git a/game/images/cardgame/t1/other/condoms_v1.webp b/game/images/cardgame/t1/other/condoms_v1.webp new file mode 100644 index 00000000..dceb4bf2 --- /dev/null +++ b/game/images/cardgame/t1/other/condoms_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a23d849e62d1acdfcf0528b802146a865b0f3e813986f9be12fca0c4727aa9e4 +size 42508 diff --git a/game/images/cardgame/t1/other/desk_v1.webp b/game/images/cardgame/t1/other/desk_v1.webp new file mode 100644 index 00000000..a81521b3 --- /dev/null +++ b/game/images/cardgame/t1/other/desk_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4698f820e47f5cf80b6be2fc244ae041ca80d247f975c66a87db94c38bda7d1 +size 30066 diff --git a/game/images/cardgame/t1/other/dildo_v1.webp b/game/images/cardgame/t1/other/dildo_v1.webp new file mode 100644 index 00000000..dc919f99 --- /dev/null +++ b/game/images/cardgame/t1/other/dildo_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a55c0c9877f0cba2b9977ffba48d38bd26fd6cc49eb1a0813852d03154420d2 +size 28328 diff --git a/game/images/cardgame/t1/other/doll_v1.webp b/game/images/cardgame/t1/other/doll_v1.webp new file mode 100644 index 00000000..e38ee8c5 --- /dev/null +++ b/game/images/cardgame/t1/other/doll_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6f8446de752931fe48c127fb7b257f9bd4ba0beaa2268e4c2baef8bde992036 +size 50114 diff --git a/game/images/cardgame/t1/other/elf_v1.webp b/game/images/cardgame/t1/other/elf_v1.webp new file mode 100644 index 00000000..49f12d1b --- /dev/null +++ b/game/images/cardgame/t1/other/elf_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89fd635b88d4d5a8c65215953810b316c682f1efcc71afebca40e2c788863209 +size 67698 diff --git a/game/images/cardgame/t1/other/eromag_v1.webp b/game/images/cardgame/t1/other/eromag_v1.webp new file mode 100644 index 00000000..24b596a1 --- /dev/null +++ b/game/images/cardgame/t1/other/eromag_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2d5a334053a96f803bc572e730e3218bed23278145bb2226f1dadcd50bad2c0 +size 57608 diff --git a/game/images/cardgame/t1/other/girlmag_v1.webp b/game/images/cardgame/t1/other/girlmag_v1.webp new file mode 100644 index 00000000..5b7a3ebb --- /dev/null +++ b/game/images/cardgame/t1/other/girlmag_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e6408bb214a5ecd05022a83fd0d79054c9e22ed507042af202b4424f723473e +size 66368 diff --git a/game/images/cardgame/t1/other/hat_v1.webp b/game/images/cardgame/t1/other/hat_v1.webp new file mode 100644 index 00000000..801590f1 --- /dev/null +++ b/game/images/cardgame/t1/other/hat_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2aaf97d2347405a15e4df0d716f9fd5e3064c212f19f482712b644964f1c744f +size 53346 diff --git a/game/images/cardgame/t1/other/lingerie_v1.webp b/game/images/cardgame/t1/other/lingerie_v1.webp new file mode 100644 index 00000000..bfe63316 --- /dev/null +++ b/game/images/cardgame/t1/other/lingerie_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2115fc6f9999fb81558d3cd77ae3c358d6984322939270e3959c37bd0bd3a02 +size 44894 diff --git a/game/images/cardgame/t1/other/lipstick_v1.webp b/game/images/cardgame/t1/other/lipstick_v1.webp new file mode 100644 index 00000000..51667f6f --- /dev/null +++ b/game/images/cardgame/t1/other/lipstick_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e0e061be0b7410bbb8910dc6a208a0898ccdb339e7a1103b9999d5bbc97560b +size 28066 diff --git a/game/images/cardgame/t1/other/lube_v1.webp b/game/images/cardgame/t1/other/lube_v1.webp new file mode 100644 index 00000000..6a5863ac --- /dev/null +++ b/game/images/cardgame/t1/other/lube_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:854040c992e0d70c13e42dc32fea1a8df79684c558ef86f018d839b7071ee957 +size 37000 diff --git a/game/images/cardgame/t1/other/owl_v1.webp b/game/images/cardgame/t1/other/owl_v1.webp new file mode 100644 index 00000000..8f619897 --- /dev/null +++ b/game/images/cardgame/t1/other/owl_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ab1b23a36523c78e8327dc9e92c43c75a32b519351bdcdb69c3866ccd9c3fdf +size 39990 diff --git a/game/images/cardgame/t1/other/plugs_v1.webp b/game/images/cardgame/t1/other/plugs_v1.webp new file mode 100644 index 00000000..2f06b9ab --- /dev/null +++ b/game/images/cardgame/t1/other/plugs_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bbd418daf8a14edacedcb025eb242d50b2016a9df37b4d50b39f7026129cc1b +size 50158 diff --git a/game/images/cardgame/t1/other/pornmag_v1.webp b/game/images/cardgame/t1/other/pornmag_v1.webp new file mode 100644 index 00000000..9a828019 --- /dev/null +++ b/game/images/cardgame/t1/other/pornmag_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f312d9ef5dc099413f5d7e95acbd36f44a99586e9be4becd413a6ad89af50c75 +size 51872 diff --git a/game/images/cardgame/t1/other/potions_v1.webp b/game/images/cardgame/t1/other/potions_v1.webp new file mode 100644 index 00000000..7485d7e2 --- /dev/null +++ b/game/images/cardgame/t1/other/potions_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cee0d35810df7156f27304ec884692b55d92be18b7b9bf8f73b6985980e9764b +size 50546 diff --git a/game/images/cardgame/t1/other/scroll_v1.webp b/game/images/cardgame/t1/other/scroll_v1.webp new file mode 100644 index 00000000..57200669 --- /dev/null +++ b/game/images/cardgame/t1/other/scroll_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e490300cb27afa2eecea7c78b4ea24762534e616b2fe0053bef3caec559ceb7 +size 58088 diff --git a/game/images/cardgame/t1/other/stockings_v1.webp b/game/images/cardgame/t1/other/stockings_v1.webp new file mode 100644 index 00000000..fdbda2d9 --- /dev/null +++ b/game/images/cardgame/t1/other/stockings_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea220bd184e1f28e96f5f0d0fccd74bfe28377aaa45cb1ecd81a39fe03ef786a +size 37868 diff --git a/game/images/cardgame/t1/other/strapon_v1.webp b/game/images/cardgame/t1/other/strapon_v1.webp new file mode 100644 index 00000000..239dbee2 --- /dev/null +++ b/game/images/cardgame/t1/other/strapon_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:055d4c23928883e28f3c38b401e3db3f9fd29761e1541e97c03c167095319a6a +size 45392 diff --git a/game/images/cardgame/t1/other/sweets_v1.webp b/game/images/cardgame/t1/other/sweets_v1.webp new file mode 100644 index 00000000..41f16ef5 --- /dev/null +++ b/game/images/cardgame/t1/other/sweets_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:684945eba1fd532ab25adec1f15938800032f90eee5fcf7189bed2cdcf9ba97c +size 62228 diff --git a/game/images/cardgame/t1/other/wine_v1.webp b/game/images/cardgame/t1/other/wine_v1.webp new file mode 100644 index 00000000..5f96de62 --- /dev/null +++ b/game/images/cardgame/t1/other/wine_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3488e4053e3143fb1b1912b558fa94e04088003341eb3b1976af23862bedaf0 +size 31094 diff --git a/game/images/cardgame/t1/special/dumbledore_v1.webp b/game/images/cardgame/t1/special/dumbledore_v1.webp new file mode 100644 index 00000000..ead27de5 --- /dev/null +++ b/game/images/cardgame/t1/special/dumbledore_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b87c468ffeb52e24475d498a7aed7a19ee99d44908cc6eae692092e486e8b69e +size 53864 diff --git a/game/images/cardgame/t1/special/fred_v1.webp b/game/images/cardgame/t1/special/fred_v1.webp new file mode 100644 index 00000000..9f17eed2 --- /dev/null +++ b/game/images/cardgame/t1/special/fred_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80df5b0cc6fd531708fd247b083580c725d2bab1bc1b0235f9062053c8a3413b +size 63194 diff --git a/game/images/cardgame/t1/special/genie_v1.webp b/game/images/cardgame/t1/special/genie_v1.webp new file mode 100644 index 00000000..02c74a4b --- /dev/null +++ b/game/images/cardgame/t1/special/genie_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4cd12aec85dcc227d408f588d4f54c87728509f113f88c2906b36fce6f7a2c76 +size 77242 diff --git a/game/images/cardgame/t1/special/george_v1.webp b/game/images/cardgame/t1/special/george_v1.webp new file mode 100644 index 00000000..72176eb1 --- /dev/null +++ b/game/images/cardgame/t1/special/george_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af0daad5c98f92cb14511447276986b53f2a78d75472003c938a91e58a7bded6 +size 61172 diff --git a/game/images/cardgame/t1/special/mafkin_v1.webp b/game/images/cardgame/t1/special/mafkin_v1.webp new file mode 100644 index 00000000..03f6a425 --- /dev/null +++ b/game/images/cardgame/t1/special/mafkin_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f15d5487baab5ec6c01a0c367ec19774573d180c72e3a3b74eda4b65291ed6f7 +size 93132 diff --git a/game/images/cardgame/t1/special/santa_v1.webp b/game/images/cardgame/t1/special/santa_v1.webp new file mode 100644 index 00000000..b60e2e12 --- /dev/null +++ b/game/images/cardgame/t1/special/santa_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:490bbf41029ec84d157973cb7297b5c6921fc3100454fb5ae038d1f287fa8438 +size 56024 diff --git a/game/images/cardgame/t1/special/snape_v1.webp b/game/images/cardgame/t1/special/snape_v1.webp new file mode 100644 index 00000000..bd6cf236 --- /dev/null +++ b/game/images/cardgame/t1/special/snape_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9eb187ff27176e4239128d687cd5d68dc0fc34372b6e1ef0379fdae8827c5777 +size 72922 diff --git a/game/images/cardgame/t1/susan/sus_schoolgirl_v1.webp b/game/images/cardgame/t1/susan/sus_schoolgirl_v1.webp new file mode 100644 index 00000000..2e21b08d --- /dev/null +++ b/game/images/cardgame/t1/susan/sus_schoolgirl_v1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:323aad8911de646441d4d35664fa03b2e1847c6d01b41599de71bcaa502a8c6f +size 61824 diff --git a/game/images/cardgame/t1/susan/sus_schoolgirl_v2.webp b/game/images/cardgame/t1/susan/sus_schoolgirl_v2.webp new file mode 100644 index 00000000..08931721 --- /dev/null +++ b/game/images/cardgame/t1/susan/sus_schoolgirl_v2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c28b3cf50791c10c891089e115b85449c5fc807c90f8129832a672932080983 +size 62078 diff --git a/game/images/cardgame/t1/susan/sus_schoolgirl_v3.webp b/game/images/cardgame/t1/susan/sus_schoolgirl_v3.webp new file mode 100644 index 00000000..017a6e84 --- /dev/null +++ b/game/images/cardgame/t1/susan/sus_schoolgirl_v3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7398c9fb728438f7c33a2a1197d3d60bbde250a3eab1f2e9ca2e21e5b78e9498 +size 55838 diff --git a/game/images/cardgame/t1/susan/sus_schoolgirl_v4.webp b/game/images/cardgame/t1/susan/sus_schoolgirl_v4.webp new file mode 100644 index 00000000..fec38a98 --- /dev/null +++ b/game/images/cardgame/t1/susan/sus_schoolgirl_v4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d262c2df040ecb9160feba4e4f70af33fa4842ce6cdca38a1e2ae06ea9aaf05a +size 58538 diff --git a/game/images/dueling/damage/0.webp b/game/images/dueling/damage/0.webp new file mode 100644 index 00000000..eb9f703c --- /dev/null +++ b/game/images/dueling/damage/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1172ba6f06be7e3734a792cd65b5d3a2285314a302d1bdce32ffc39b0012fd57 +size 586 diff --git a/game/images/dueling/damage/100.webp b/game/images/dueling/damage/100.webp new file mode 100644 index 00000000..a8a14c7f --- /dev/null +++ b/game/images/dueling/damage/100.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb9a027a87d9a415849b142a2c157967248cd5ebbc23c1ca5f3ead8d533092d1 +size 1092 diff --git a/game/images/dueling/damage/200.webp b/game/images/dueling/damage/200.webp new file mode 100644 index 00000000..3cb5a299 --- /dev/null +++ b/game/images/dueling/damage/200.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79fa0c04e9ab5795dcd349b5bb9f2416cc7f004df53f711486d086bced9f8a61 +size 1062 diff --git a/game/images/dueling/damage/300.webp b/game/images/dueling/damage/300.webp new file mode 100644 index 00000000..fbb0d5aa --- /dev/null +++ b/game/images/dueling/damage/300.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94cbceaf01ed24873242086175d2a6033fc3323abb81026e9b3e96776e71b006 +size 822 diff --git a/game/images/dueling/damage/400.webp b/game/images/dueling/damage/400.webp new file mode 100644 index 00000000..b68c5357 --- /dev/null +++ b/game/images/dueling/damage/400.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d500ffc48b10659fcc61d58e08d6305e5b77e3c3daa4ec64ab0fc30727061efb +size 804 diff --git a/game/images/dueling/damage/50.webp b/game/images/dueling/damage/50.webp new file mode 100644 index 00000000..00a9c839 --- /dev/null +++ b/game/images/dueling/damage/50.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f455c2e82944148a142dc8c68bbe9762464faecdefad3256858b474ed5e86aed +size 836 diff --git a/game/images/dueling/damage/500.webp b/game/images/dueling/damage/500.webp new file mode 100644 index 00000000..c1e3f2c3 --- /dev/null +++ b/game/images/dueling/damage/500.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d01b7f18b2dc5c2ab946f02ec993780b3cec45dc03454fc08661bfb8d41dcf24 +size 810 diff --git a/game/images/dueling/damage/plus_300.webp b/game/images/dueling/damage/plus_300.webp new file mode 100644 index 00000000..b6a13356 --- /dev/null +++ b/game/images/dueling/damage/plus_300.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b0cf39b77aaead43a950d29c2c050231be265020ee66911a44f1437c188224e +size 1248 diff --git a/game/images/dueling/snape/attack_defend.webp b/game/images/dueling/snape/attack_defend.webp new file mode 100644 index 00000000..ade3be4d --- /dev/null +++ b/game/images/dueling/snape/attack_defend.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f49fd0cc111194a81a90c5b766dbb02464a75b73d37435e75597411a4b580199 +size 19058 diff --git a/game/images/dueling/snape/attack_item.webp b/game/images/dueling/snape/attack_item.webp new file mode 100644 index 00000000..232f79de --- /dev/null +++ b/game/images/dueling/snape/attack_item.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d797c01c312e27df15a680e170d1552a81af8134e4f1ba3c7a8ff6156ac05db +size 16244 diff --git a/game/images/dueling/snape/attack_melee.webp b/game/images/dueling/snape/attack_melee.webp new file mode 100644 index 00000000..c1b119ff --- /dev/null +++ b/game/images/dueling/snape/attack_melee.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cd5abaaa8a70c228969f589466d5d14bcf19cfb46421deed694228daa037c01 +size 16508 diff --git a/game/images/dueling/snape/attack_tease.webp b/game/images/dueling/snape/attack_tease.webp new file mode 100644 index 00000000..02dce2c9 --- /dev/null +++ b/game/images/dueling/snape/attack_tease.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:767559fcb50dc18d0ed5918c6e9525e2408ec4adcc6e5728452d71794628b58f +size 13076 diff --git a/game/images/dueling/snape/barb_01.webp b/game/images/dueling/snape/barb_01.webp new file mode 100644 index 00000000..5ce7e517 --- /dev/null +++ b/game/images/dueling/snape/barb_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7298621efb5d9ff30f569a17abd28331e2dd62560dd6339109c1da9ca0da271 +size 78380 diff --git a/game/images/dueling/snape/barb_02.webp b/game/images/dueling/snape/barb_02.webp new file mode 100644 index 00000000..1026611c --- /dev/null +++ b/game/images/dueling/snape/barb_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd146249f7f4537a0f001b34122e143ec19c64816f63894626f2933afcb9db1d +size 78646 diff --git a/game/images/dueling/snape/game_over.webp b/game/images/dueling/snape/game_over.webp new file mode 100644 index 00000000..83875c45 --- /dev/null +++ b/game/images/dueling/snape/game_over.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aaf519e28d88e0a490845f2c53e0b8764acb5dcd4923c7395a88df4862aeb150 +size 46046 diff --git a/game/images/dueling/snape/gen_01.webp b/game/images/dueling/snape/gen_01.webp new file mode 100644 index 00000000..ada7a768 --- /dev/null +++ b/game/images/dueling/snape/gen_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9477ecba7a995a4d0c89f10c0495691a0a51251b36242083caec8d914263831 +size 67444 diff --git a/game/images/dueling/snape/gen_02.webp b/game/images/dueling/snape/gen_02.webp new file mode 100644 index 00000000..d6a68cca --- /dev/null +++ b/game/images/dueling/snape/gen_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f937da67d71e8464299c127678a8980500f022825c1f8eff734ad03c1e6b955 +size 67288 diff --git a/game/images/dueling/snape/gen_03.webp b/game/images/dueling/snape/gen_03.webp new file mode 100644 index 00000000..3a6f586e --- /dev/null +++ b/game/images/dueling/snape/gen_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7cc4d60d087add27db9c2ee8e61240a94e00d80ec147b2298bddea248abe2a95 +size 67138 diff --git a/game/images/dueling/snape/genie_attack_01.webp b/game/images/dueling/snape/genie_attack_01.webp new file mode 100644 index 00000000..3fd6aac8 --- /dev/null +++ b/game/images/dueling/snape/genie_attack_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1c3ba9e9f7db11ffa341a570cbf59f1dde64cde9d686820ed913908cd47ea3f +size 140742 diff --git a/game/images/dueling/snape/genie_attack_02.webp b/game/images/dueling/snape/genie_attack_02.webp new file mode 100644 index 00000000..e1d3f5d1 --- /dev/null +++ b/game/images/dueling/snape/genie_attack_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13502dda85812eeef3ad180204b5139ad10f1acba723ad62261b5ea14d486bb3 +size 140714 diff --git a/game/images/dueling/snape/genie_attack_03.webp b/game/images/dueling/snape/genie_attack_03.webp new file mode 100644 index 00000000..a35d1946 --- /dev/null +++ b/game/images/dueling/snape/genie_attack_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3e20333eed50d1194f12fadf498f8895ff09fa76887844439e4564ce3495796 +size 127730 diff --git a/game/images/dueling/snape/genie_attack_04.webp b/game/images/dueling/snape/genie_attack_04.webp new file mode 100644 index 00000000..b29e2c2a --- /dev/null +++ b/game/images/dueling/snape/genie_attack_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fd252130ccc37826e2d80f9afdc5f81a1e967511127e580e8cb3490fd15e26f +size 125606 diff --git a/game/images/dueling/snape/genie_attack_05.webp b/game/images/dueling/snape/genie_attack_05.webp new file mode 100644 index 00000000..a00e407e --- /dev/null +++ b/game/images/dueling/snape/genie_attack_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28f6c6abe1325c256d6b00bebd7e14d99ce7b91c2c9ecbc489209ab467bbcaf2 +size 146592 diff --git a/game/images/dueling/snape/genie_attack_06.webp b/game/images/dueling/snape/genie_attack_06.webp new file mode 100644 index 00000000..81b6a7bc --- /dev/null +++ b/game/images/dueling/snape/genie_attack_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11904c6a185459d5dcc9915dae179b6206b6c74579ac692bf52d97f8f1899324 +size 136962 diff --git a/game/images/dueling/snape/genie_attack_07.webp b/game/images/dueling/snape/genie_attack_07.webp new file mode 100644 index 00000000..824d2f6a --- /dev/null +++ b/game/images/dueling/snape/genie_attack_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80fc2a7418983bcaf76363c40f4089e6a4599365af1769dac4428754afb5297a +size 130768 diff --git a/game/images/dueling/snape/genie_attack_08.webp b/game/images/dueling/snape/genie_attack_08.webp new file mode 100644 index 00000000..a74409af --- /dev/null +++ b/game/images/dueling/snape/genie_attack_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e90d7c05b2df48ebdd9eed216c84e6738c433c325d250eff9fa8a0ecfc7ed1c2 +size 134784 diff --git a/game/images/dueling/snape/genie_attack_09.webp b/game/images/dueling/snape/genie_attack_09.webp new file mode 100644 index 00000000..88ca99db --- /dev/null +++ b/game/images/dueling/snape/genie_attack_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:795fa3112e9e40444d7ac9c5988b3153039fffa792656f6f8b7d4d95fac59c87 +size 137872 diff --git a/game/images/dueling/snape/genie_attack_10.webp b/game/images/dueling/snape/genie_attack_10.webp new file mode 100644 index 00000000..ab26cb73 --- /dev/null +++ b/game/images/dueling/snape/genie_attack_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:626a05e51007ad3fdac0f3f386718ec1b17230e5181f1393e48da9de541ea853 +size 129000 diff --git a/game/images/dueling/snape/genie_attack_11.webp b/game/images/dueling/snape/genie_attack_11.webp new file mode 100644 index 00000000..7a9e73ee --- /dev/null +++ b/game/images/dueling/snape/genie_attack_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d14b589e55fd97f2c3f829dc96e709a49d45f3cf6395a9e7337d3eff12d5b37b +size 127396 diff --git a/game/images/dueling/snape/genie_attack_12.webp b/game/images/dueling/snape/genie_attack_12.webp new file mode 100644 index 00000000..6e1ccacc --- /dev/null +++ b/game/images/dueling/snape/genie_attack_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4b3f28e45145e29a28f942fe118388c5396c31e9c0c7535d6228408b67c2314 +size 128598 diff --git a/game/images/dueling/snape/genie_attack_13.webp b/game/images/dueling/snape/genie_attack_13.webp new file mode 100644 index 00000000..7a9e73ee --- /dev/null +++ b/game/images/dueling/snape/genie_attack_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d14b589e55fd97f2c3f829dc96e709a49d45f3cf6395a9e7337d3eff12d5b37b +size 127396 diff --git a/game/images/dueling/snape/genie_attack_14.webp b/game/images/dueling/snape/genie_attack_14.webp new file mode 100644 index 00000000..b5db6be6 --- /dev/null +++ b/game/images/dueling/snape/genie_attack_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d2a3cbf46dfe257a37e0be70d0cab0dbbcd94cb95102d9f0c4aca223ccf54e3 +size 118618 diff --git a/game/images/dueling/snape/genie_attack_15.webp b/game/images/dueling/snape/genie_attack_15.webp new file mode 100644 index 00000000..911f8e7d --- /dev/null +++ b/game/images/dueling/snape/genie_attack_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5e3246fc4689352545356e170057f9a8f2dd35212318dc89d8abb1abe7c7557 +size 118412 diff --git a/game/images/dueling/snape/glass/01.webp b/game/images/dueling/snape/glass/01.webp new file mode 100644 index 00000000..fe74002f --- /dev/null +++ b/game/images/dueling/snape/glass/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30c31fded75f4a393b62f3ebe1b2f6e7d272bb549da91c5d1265bb92ff0d3fd7 +size 5262 diff --git a/game/images/dueling/snape/glass/02.webp b/game/images/dueling/snape/glass/02.webp new file mode 100644 index 00000000..89c51017 --- /dev/null +++ b/game/images/dueling/snape/glass/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbc7fb153e7a96404359824ace3c7c6aa242021f9f04c16a333f6f4ffeb6fed9 +size 10206 diff --git a/game/images/dueling/snape/glass/03.webp b/game/images/dueling/snape/glass/03.webp new file mode 100644 index 00000000..95c07fa2 --- /dev/null +++ b/game/images/dueling/snape/glass/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb94cbf2f51dcb0e505fdbf5efcee20b2e8e48e1dfbe44490c5e588eb1763b1e +size 13594 diff --git a/game/images/dueling/snape/glass/04.webp b/game/images/dueling/snape/glass/04.webp new file mode 100644 index 00000000..d6b4071d --- /dev/null +++ b/game/images/dueling/snape/glass/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7453cddbb32d21d6162b7b4144d880deff73064cb91b31657f77c59bfa34a8a +size 17278 diff --git a/game/images/dueling/snape/glass/05.webp b/game/images/dueling/snape/glass/05.webp new file mode 100644 index 00000000..242812ef --- /dev/null +++ b/game/images/dueling/snape/glass/05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f3dea35d867db80dece169ce45253ca5c13f4833c93724561b61c3e5b087a77 +size 20836 diff --git a/game/images/dueling/snape/glass/06.webp b/game/images/dueling/snape/glass/06.webp new file mode 100644 index 00000000..7dcb6384 --- /dev/null +++ b/game/images/dueling/snape/glass/06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22955a290a61191e44209dbae36336dd628813dce1deb7da0ec7931b3312951a +size 22806 diff --git a/game/images/dueling/snape/glass/07.webp b/game/images/dueling/snape/glass/07.webp new file mode 100644 index 00000000..a011df2e --- /dev/null +++ b/game/images/dueling/snape/glass/07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9f156c565cc3f9e072884d94594323b74f2a85ad031e6760ff0a996639fc2f9 +size 23656 diff --git a/game/images/dueling/snape/glass/08.webp b/game/images/dueling/snape/glass/08.webp new file mode 100644 index 00000000..3cb94f2f --- /dev/null +++ b/game/images/dueling/snape/glass/08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc745210a146e3e7c03c7dc01238c352bd726235ad8b2705814cc6081e84ed8c +size 24096 diff --git a/game/images/dueling/snape/glass/09.webp b/game/images/dueling/snape/glass/09.webp new file mode 100644 index 00000000..7ea2762b --- /dev/null +++ b/game/images/dueling/snape/glass/09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16ce68fd80e48500b6e6507eb886e75ffda965c8cd693d81d461bfe48272307b +size 27772 diff --git a/game/images/dueling/snape/glass/10.webp b/game/images/dueling/snape/glass/10.webp new file mode 100644 index 00000000..e5daf98b --- /dev/null +++ b/game/images/dueling/snape/glass/10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8abbae27e20a0f886e9c65941334b1faa0b50602526d4b3bb12a74a8f95545a +size 27526 diff --git a/game/images/dueling/snape/glass/crack.webp b/game/images/dueling/snape/glass/crack.webp new file mode 100644 index 00000000..ad81b706 --- /dev/null +++ b/game/images/dueling/snape/glass/crack.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afd1eef816e058c9f8d2095e38a0c415076dd792e34f4d75cf5a99f5852f1abe +size 71454 diff --git a/game/images/dueling/snape/glass/gradient.webp b/game/images/dueling/snape/glass/gradient.webp new file mode 100644 index 00000000..6a07f2ea --- /dev/null +++ b/game/images/dueling/snape/glass/gradient.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bcd32aa83ba7bb92d116b2b49de9ef0219167677e80486461221c4ed79049973 +size 13258 diff --git a/game/images/dueling/snape/guard_01.webp b/game/images/dueling/snape/guard_01.webp new file mode 100644 index 00000000..8b6f1a4d --- /dev/null +++ b/game/images/dueling/snape/guard_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b6f5f6b99eeadda6376837c84b7e9e2680c6070c545d01d87df241a1bd9ea59 +size 56040 diff --git a/game/images/dueling/snape/guard_02.webp b/game/images/dueling/snape/guard_02.webp new file mode 100644 index 00000000..4cda3698 --- /dev/null +++ b/game/images/dueling/snape/guard_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a65ef7d98975ac91cbb9f408cdbc31f93020e539d89d963deac3103c4e2a06aa +size 56216 diff --git a/game/images/dueling/snape/guard_03.webp b/game/images/dueling/snape/guard_03.webp new file mode 100644 index 00000000..53e67e67 --- /dev/null +++ b/game/images/dueling/snape/guard_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:216a9c198117cb94293615d55dd53f68fef5e33dced3f3248f0bb706c2a38d6b +size 55494 diff --git a/game/images/dueling/snape/hand_01.webp b/game/images/dueling/snape/hand_01.webp new file mode 100644 index 00000000..b8a3c267 --- /dev/null +++ b/game/images/dueling/snape/hand_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81dd32a0be3c49921d56cef0d627e1e8189edf1e5d161efb593666807438742f +size 99150 diff --git a/game/images/dueling/snape/hand_02.webp b/game/images/dueling/snape/hand_02.webp new file mode 100644 index 00000000..cb2b6bba --- /dev/null +++ b/game/images/dueling/snape/hand_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72322ee79d2beb1a1acb05024e59eeb2b22f7fe597780796987665aac26b6cb6 +size 114018 diff --git a/game/images/dueling/snape/hand_03.webp b/game/images/dueling/snape/hand_03.webp new file mode 100644 index 00000000..d951733e --- /dev/null +++ b/game/images/dueling/snape/hand_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de98eefeb368055ad3e63cfb5b836de450bf827bea26b1c72fb7a6cea4c555e3 +size 119640 diff --git a/game/images/dueling/snape/hand_04.webp b/game/images/dueling/snape/hand_04.webp new file mode 100644 index 00000000..5ea87b71 --- /dev/null +++ b/game/images/dueling/snape/hand_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20b221acfd3ea53f2a4501d5369aac2ae91df7835aa0077cffa0ee272a148efa +size 127128 diff --git a/game/images/dueling/snape/hand_05.webp b/game/images/dueling/snape/hand_05.webp new file mode 100644 index 00000000..42415214 --- /dev/null +++ b/game/images/dueling/snape/hand_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bce5f095354e5bb62c01bbd300de5a68d50347b9a8fb27e8801e739008fefaa +size 132704 diff --git a/game/images/dueling/snape/hand_06.webp b/game/images/dueling/snape/hand_06.webp new file mode 100644 index 00000000..c3addfb1 --- /dev/null +++ b/game/images/dueling/snape/hand_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1aec8a314c4b94ed31943bc1496ec44c4344ebe0bd5f8af718486b392cd6901f +size 125024 diff --git a/game/images/dueling/snape/hand_07.webp b/game/images/dueling/snape/hand_07.webp new file mode 100644 index 00000000..453e92b4 --- /dev/null +++ b/game/images/dueling/snape/hand_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21e45d3e294f70b40097e100539d2bda64bf37d1e8325fb3cb8cfac9fcd40d7f +size 124334 diff --git a/game/images/dueling/snape/hand_08.webp b/game/images/dueling/snape/hand_08.webp new file mode 100644 index 00000000..773b1652 --- /dev/null +++ b/game/images/dueling/snape/hand_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad0f8c2d320c51763e4569fe94a4ecee757ec5f79426139bb6b0fea4ada32387 +size 133814 diff --git a/game/images/dueling/snape/hand_09.webp b/game/images/dueling/snape/hand_09.webp new file mode 100644 index 00000000..a1ce53c0 --- /dev/null +++ b/game/images/dueling/snape/hand_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ad269acde588dad3fa64ea650fee63404b4acd740ab39e894acbbd85e28d29c +size 126286 diff --git a/game/images/dueling/snape/hand_10.webp b/game/images/dueling/snape/hand_10.webp new file mode 100644 index 00000000..5ab2b685 --- /dev/null +++ b/game/images/dueling/snape/hand_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b34f79047cacc1286d656798d25dc53c365eff73eba0e86f34576f707af8e3f +size 128666 diff --git a/game/images/dueling/snape/hand_11.webp b/game/images/dueling/snape/hand_11.webp new file mode 100644 index 00000000..eb219862 --- /dev/null +++ b/game/images/dueling/snape/hand_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:386f4040135c3a00913759d8f4bca2e4328fbeb7f35877b03c5421dc6d36058d +size 131840 diff --git a/game/images/dueling/snape/hand_12.webp b/game/images/dueling/snape/hand_12.webp new file mode 100644 index 00000000..ac0f618e --- /dev/null +++ b/game/images/dueling/snape/hand_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e03b006b2b35b4cdfbce6172dac20d5bae198ce834b639e48ae1b631e9340b0b +size 134740 diff --git a/game/images/dueling/snape/hand_13.webp b/game/images/dueling/snape/hand_13.webp new file mode 100644 index 00000000..28ee604b --- /dev/null +++ b/game/images/dueling/snape/hand_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0bd9077a0246ac186ab28da1170e799da2720e7b56e9409b77a25083ae02b89 +size 138246 diff --git a/game/images/dueling/snape/hand_14.webp b/game/images/dueling/snape/hand_14.webp new file mode 100644 index 00000000..762b3c49 --- /dev/null +++ b/game/images/dueling/snape/hand_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b7e93715e1b694f2d25836e2af67e150f5d8b591befa437a221cfc707f62021 +size 138410 diff --git a/game/images/dueling/snape/hand_15.webp b/game/images/dueling/snape/hand_15.webp new file mode 100644 index 00000000..14d59a64 --- /dev/null +++ b/game/images/dueling/snape/hand_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83f99ad82a49bcd875c77874db9111110e47fcdf64366655db926b2bdb8c2e74 +size 138836 diff --git a/game/images/dueling/snape/hand_16.webp b/game/images/dueling/snape/hand_16.webp new file mode 100644 index 00000000..28ee604b --- /dev/null +++ b/game/images/dueling/snape/hand_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0bd9077a0246ac186ab28da1170e799da2720e7b56e9409b77a25083ae02b89 +size 138246 diff --git a/game/images/dueling/snape/hand_genie_01.webp b/game/images/dueling/snape/hand_genie_01.webp new file mode 100644 index 00000000..5c96161e --- /dev/null +++ b/game/images/dueling/snape/hand_genie_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62ac471fc0ca1efaee8c9b64af5e86ee827fc3b63768fda3767f0779d95cd2a6 +size 223978 diff --git a/game/images/dueling/snape/hand_genie_02.webp b/game/images/dueling/snape/hand_genie_02.webp new file mode 100644 index 00000000..9b5917ab --- /dev/null +++ b/game/images/dueling/snape/hand_genie_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e9918a0c6e9f6e4c6d19c8a8439d77e8774a66944fa00e4126b97aeb847bc9c +size 221932 diff --git a/game/images/dueling/snape/hand_genie_03.webp b/game/images/dueling/snape/hand_genie_03.webp new file mode 100644 index 00000000..6862223e --- /dev/null +++ b/game/images/dueling/snape/hand_genie_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3169f989a537e612dc545e291025dffc9ee8748cfb3a6b8f6c1ae2ea705c986 +size 226840 diff --git a/game/images/dueling/snape/hand_genie_04.webp b/game/images/dueling/snape/hand_genie_04.webp new file mode 100644 index 00000000..bf4d0094 --- /dev/null +++ b/game/images/dueling/snape/hand_genie_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c7ed2dabb2ce805b6ea81488b1207e27eaf1b3bbaa1e98a575f1d5f8ec4484e +size 228748 diff --git a/game/images/dueling/snape/hand_genie_05.webp b/game/images/dueling/snape/hand_genie_05.webp new file mode 100644 index 00000000..6ebb905f --- /dev/null +++ b/game/images/dueling/snape/hand_genie_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26b5a3e2a6fae318c41b47e4276af6b81a0a35313db62eadc24245ffca2173f8 +size 230438 diff --git a/game/images/dueling/snape/hand_genie_06.webp b/game/images/dueling/snape/hand_genie_06.webp new file mode 100644 index 00000000..1486ba79 --- /dev/null +++ b/game/images/dueling/snape/hand_genie_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:faa74a3af35c192ba2e18d7cf88a22230768b9db3e84cf4e7cca23950e38594b +size 194688 diff --git a/game/images/dueling/snape/hand_genie_07.webp b/game/images/dueling/snape/hand_genie_07.webp new file mode 100644 index 00000000..c9744df9 --- /dev/null +++ b/game/images/dueling/snape/hand_genie_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7226a8e7df8e52d168cad94703293535e6c70f00fc89d0a09831f88789d9f8f +size 180692 diff --git a/game/images/dueling/snape/hand_genie_08.webp b/game/images/dueling/snape/hand_genie_08.webp new file mode 100644 index 00000000..001d81d3 --- /dev/null +++ b/game/images/dueling/snape/hand_genie_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cb951b2b25f8d36a5094599e6a5ca74dbae77eedacc703845a4c856b1afec49 +size 166462 diff --git a/game/images/dueling/snape/hand_genie_09.webp b/game/images/dueling/snape/hand_genie_09.webp new file mode 100644 index 00000000..b33031f1 --- /dev/null +++ b/game/images/dueling/snape/hand_genie_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a72744024635cec2ffbeaf36f7297b1e9720b51385d01b0ddbede4edc38563e +size 159890 diff --git a/game/images/dueling/snape/hand_genie_10.webp b/game/images/dueling/snape/hand_genie_10.webp new file mode 100644 index 00000000..41dcb48c --- /dev/null +++ b/game/images/dueling/snape/hand_genie_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68cd50dcd21a3becdd09f3d8db78f166c52386f3163872cc79176bb0c5359e42 +size 152938 diff --git a/game/images/dueling/snape/hand_genie_11.webp b/game/images/dueling/snape/hand_genie_11.webp new file mode 100644 index 00000000..c066ce67 --- /dev/null +++ b/game/images/dueling/snape/hand_genie_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3fa1b59c05d4624b938168aaf2221a6aa681fb7e61467735ccef1dab1368e9fa +size 94164 diff --git a/game/images/dueling/snape/hand_genie_12.webp b/game/images/dueling/snape/hand_genie_12.webp new file mode 100644 index 00000000..57b1342e --- /dev/null +++ b/game/images/dueling/snape/hand_genie_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad527f89c4fa028e1bfe311024b6ef97fbc5a12577ca9a1253a0b9ed024de5b4 +size 88302 diff --git a/game/images/dueling/snape/hand_genie_13.webp b/game/images/dueling/snape/hand_genie_13.webp new file mode 100644 index 00000000..4de4c456 --- /dev/null +++ b/game/images/dueling/snape/hand_genie_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cb950b24c2593d2e0f6a8208836ae9cfd818f0d2ecabc879928c16ae0f1e409a +size 91684 diff --git a/game/images/dueling/snape/hand_guard_01.webp b/game/images/dueling/snape/hand_guard_01.webp new file mode 100644 index 00000000..3351b703 --- /dev/null +++ b/game/images/dueling/snape/hand_guard_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:204c4463291cae68b080e814e66998b66cb70ef616fdbd5383f79902dc99caf5 +size 202586 diff --git a/game/images/dueling/snape/hand_guard_02.webp b/game/images/dueling/snape/hand_guard_02.webp new file mode 100644 index 00000000..f4fa22b3 --- /dev/null +++ b/game/images/dueling/snape/hand_guard_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76c48aeb7d88c62a61681e875443ba52bd97851dd958588c7def564ec3e8aa0a +size 199600 diff --git a/game/images/dueling/snape/hand_guard_03.webp b/game/images/dueling/snape/hand_guard_03.webp new file mode 100644 index 00000000..1ee008a0 --- /dev/null +++ b/game/images/dueling/snape/hand_guard_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:10735adf59dfb0ff6569d545e65560870fe20c5e1e14a575281f738547a8b0ec +size 203296 diff --git a/game/images/dueling/snape/hand_guard_04.webp b/game/images/dueling/snape/hand_guard_04.webp new file mode 100644 index 00000000..2eb692e1 --- /dev/null +++ b/game/images/dueling/snape/hand_guard_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ce9f262236b70599c8969f899882bf29c7134d85e91cbe21c5e7fe532b234b4 +size 202382 diff --git a/game/images/dueling/snape/hand_guard_05.webp b/game/images/dueling/snape/hand_guard_05.webp new file mode 100644 index 00000000..aa22ac68 --- /dev/null +++ b/game/images/dueling/snape/hand_guard_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7932744dd59d63fafcfa9bcb777d430cf805a56427e0ecade7ff12a4905add46 +size 198440 diff --git a/game/images/dueling/snape/hand_guard_06.webp b/game/images/dueling/snape/hand_guard_06.webp new file mode 100644 index 00000000..89e679ae --- /dev/null +++ b/game/images/dueling/snape/hand_guard_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a2e55b86faefb8cb97cf91d45d8f1022dcaa8ed97ae105a0419696d9e8a3544 +size 193500 diff --git a/game/images/dueling/snape/hand_guard_07.webp b/game/images/dueling/snape/hand_guard_07.webp new file mode 100644 index 00000000..985fea40 --- /dev/null +++ b/game/images/dueling/snape/hand_guard_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:549f415332ddf1303db86637f6ccf528ca9842e839860a293f5b5399ae5df7d6 +size 183744 diff --git a/game/images/dueling/snape/hand_guard_08.webp b/game/images/dueling/snape/hand_guard_08.webp new file mode 100644 index 00000000..84f946bb --- /dev/null +++ b/game/images/dueling/snape/hand_guard_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f447560c09f6424ab1b9a664070047e8585e813a3f2947d5b3d5053ec1e2043 +size 176686 diff --git a/game/images/dueling/snape/hand_guard_09.webp b/game/images/dueling/snape/hand_guard_09.webp new file mode 100644 index 00000000..3c9955ef --- /dev/null +++ b/game/images/dueling/snape/hand_guard_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d58d5dcca6def6bcb7082fb4524c083d78ec47c191c3e8c4fbf13fe91caadda8 +size 179850 diff --git a/game/images/dueling/snape/hand_guard_10.webp b/game/images/dueling/snape/hand_guard_10.webp new file mode 100644 index 00000000..51356281 --- /dev/null +++ b/game/images/dueling/snape/hand_guard_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20f8b64fc3e17f3de80a55b7fc1c854c20c46be9b88cbafe20f2799757e4c688 +size 146900 diff --git a/game/images/dueling/snape/hand_guard_11.webp b/game/images/dueling/snape/hand_guard_11.webp new file mode 100644 index 00000000..883a11ab --- /dev/null +++ b/game/images/dueling/snape/hand_guard_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df2ad69cdeee023bf749f577d4e4b4e2fd465d3952959a27bceb753039a544ce +size 96516 diff --git a/game/images/dueling/snape/hand_guard_12.webp b/game/images/dueling/snape/hand_guard_12.webp new file mode 100644 index 00000000..4601bbda --- /dev/null +++ b/game/images/dueling/snape/hand_guard_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af340baef21844ce2424efda8a284f914760ea4fbbf09de7e87321fbc8c6f5e6 +size 104978 diff --git a/game/images/dueling/snape/hand_guard_13.webp b/game/images/dueling/snape/hand_guard_13.webp new file mode 100644 index 00000000..883a11ab --- /dev/null +++ b/game/images/dueling/snape/hand_guard_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df2ad69cdeee023bf749f577d4e4b4e2fd465d3952959a27bceb753039a544ce +size 96516 diff --git a/game/images/dueling/snape/hand_guard_14.webp b/game/images/dueling/snape/hand_guard_14.webp new file mode 100644 index 00000000..a7b094d9 --- /dev/null +++ b/game/images/dueling/snape/hand_guard_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:916161ab68b150ca4a04f4385cd7ede9a03b024e7c7a87a17c8bf9727e6d21ca +size 105004 diff --git a/game/images/dueling/snape/hp_bar.webp b/game/images/dueling/snape/hp_bar.webp new file mode 100644 index 00000000..204cac25 --- /dev/null +++ b/game/images/dueling/snape/hp_bar.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22ddd48c92d702ad8ea645df290b5e037cb1680e11b2837e9a82093f72cf1a5c +size 63834 diff --git a/game/images/dueling/snape/hp_bar_02.webp b/game/images/dueling/snape/hp_bar_02.webp new file mode 100644 index 00000000..bda5bdc7 --- /dev/null +++ b/game/images/dueling/snape/hp_bar_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61d9d7892b758443c82373ea5a30d7fee4859a7da5fe94328fedd405e8563b02 +size 2754 diff --git a/game/images/dueling/snape/hp_bar_10.webp b/game/images/dueling/snape/hp_bar_10.webp new file mode 100644 index 00000000..7250c257 --- /dev/null +++ b/game/images/dueling/snape/hp_bar_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5477299e25d3c516ebe619e1192aad499c884a71b753724f252669dc1ed7f8f6 +size 46812 diff --git a/game/images/dueling/snape/hp_bar_11.webp b/game/images/dueling/snape/hp_bar_11.webp new file mode 100644 index 00000000..6c1bc1b9 --- /dev/null +++ b/game/images/dueling/snape/hp_bar_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:511d6cf918e10d7138529f4e04c724f234480ea3f17973e8de1df09004491e19 +size 74 diff --git a/game/images/dueling/snape/hp_bar_12.webp b/game/images/dueling/snape/hp_bar_12.webp new file mode 100644 index 00000000..76a9daf7 --- /dev/null +++ b/game/images/dueling/snape/hp_bar_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eacede98c1416398dbedfabfa6663fcd136f6a7a6d5c193c2691e0f55a4b28d6 +size 2568 diff --git a/game/images/dueling/snape/no_magic.webp b/game/images/dueling/snape/no_magic.webp new file mode 100644 index 00000000..cce80ea0 --- /dev/null +++ b/game/images/dueling/snape/no_magic.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c354a3893e5806fadec6b7111bdee99c5a49a912fbf99dcc79700b98b18cc67 +size 75686 diff --git a/game/images/dueling/snape/pen_01.webp b/game/images/dueling/snape/pen_01.webp new file mode 100644 index 00000000..2ef6af85 --- /dev/null +++ b/game/images/dueling/snape/pen_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fcce951951f86235b25dee6bdad285940b7d57ba170a0be29536b1945caf53f2 +size 4486 diff --git a/game/images/dueling/snape/sna_attack_01.webp b/game/images/dueling/snape/sna_attack_01.webp new file mode 100644 index 00000000..3e66e63a --- /dev/null +++ b/game/images/dueling/snape/sna_attack_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c483024d6e8c776cb8a50d15a94dc348e4a871f991550daec1933275d595db8c +size 119320 diff --git a/game/images/dueling/snape/sna_attack_02.webp b/game/images/dueling/snape/sna_attack_02.webp new file mode 100644 index 00000000..51f1d69c --- /dev/null +++ b/game/images/dueling/snape/sna_attack_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2977ecfc4cadb307b0c9fc80d65d39aa5f231132cb650165b7c1a96d8fbd3302 +size 128316 diff --git a/game/images/dueling/snape/sna_attack_03.webp b/game/images/dueling/snape/sna_attack_03.webp new file mode 100644 index 00000000..b4e1f76c --- /dev/null +++ b/game/images/dueling/snape/sna_attack_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:068510ccd4e165306e3b04c23c2449a71024ca2776f75c143a60ef40ed8d0d28 +size 139436 diff --git a/game/images/dueling/snape/sna_attack_04.webp b/game/images/dueling/snape/sna_attack_04.webp new file mode 100644 index 00000000..5a3191fe --- /dev/null +++ b/game/images/dueling/snape/sna_attack_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7f5ad60e8a5e6c61015ccc4a8e23651947b1b377124d54b1847df4411e2e754 +size 139924 diff --git a/game/images/dueling/snape/sna_attack_05.webp b/game/images/dueling/snape/sna_attack_05.webp new file mode 100644 index 00000000..85c32ea2 --- /dev/null +++ b/game/images/dueling/snape/sna_attack_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8345d0a2de95a43f7731970d1c6bd849298fbb97f38050fa49d83bf5abd63e04 +size 115278 diff --git a/game/images/dueling/snape/sna_attack_06.webp b/game/images/dueling/snape/sna_attack_06.webp new file mode 100644 index 00000000..51b6fdb4 --- /dev/null +++ b/game/images/dueling/snape/sna_attack_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c13f73050ae4c1402ac866d52e9fc10a06aefae2cfae500827a2dbc04e1e7536 +size 95032 diff --git a/game/images/dueling/snape/sna_attack_07.webp b/game/images/dueling/snape/sna_attack_07.webp new file mode 100644 index 00000000..acc39eaa --- /dev/null +++ b/game/images/dueling/snape/sna_attack_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8617e94755dddf95c3b05cfbc53f3d408d816164af9827610ce3072f52ac51e0 +size 87828 diff --git a/game/images/dueling/snape/sna_attack_08.webp b/game/images/dueling/snape/sna_attack_08.webp new file mode 100644 index 00000000..7125614f --- /dev/null +++ b/game/images/dueling/snape/sna_attack_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b93450179e633b988e639baa5c1e414b148583e96ae3c5ea4be218da9eaecfeb +size 91212 diff --git a/game/images/dueling/snape/sna_attack_09.webp b/game/images/dueling/snape/sna_attack_09.webp new file mode 100644 index 00000000..42d41d87 --- /dev/null +++ b/game/images/dueling/snape/sna_attack_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6698bf8c0bf571a869a42d79537679427fe55aebe5fbd09ad0f87a546f47785e +size 87666 diff --git a/game/images/dueling/snape/sna_attack_10.webp b/game/images/dueling/snape/sna_attack_10.webp new file mode 100644 index 00000000..5ccf40c0 --- /dev/null +++ b/game/images/dueling/snape/sna_attack_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:363e2ba9a7edfb4bb534c619681b7e1b7216e34cebb61afd17e1ed0edc7f27d3 +size 91646 diff --git a/game/images/dueling/snape/sna_attack_guard_01.webp b/game/images/dueling/snape/sna_attack_guard_01.webp new file mode 100644 index 00000000..d04bb522 --- /dev/null +++ b/game/images/dueling/snape/sna_attack_guard_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73ae68ad94100fb161e2d39204d9bff4b56a88f2dd3089faae56e3eca6dba67e +size 104428 diff --git a/game/images/dueling/snape/sna_attack_guard_02.webp b/game/images/dueling/snape/sna_attack_guard_02.webp new file mode 100644 index 00000000..84dc2eb8 --- /dev/null +++ b/game/images/dueling/snape/sna_attack_guard_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bc8103b6c7e40d31015d87e0c818a376793390639791edb0783e103f3f1cae8 +size 116480 diff --git a/game/images/dueling/snape/sna_attack_guard_03.webp b/game/images/dueling/snape/sna_attack_guard_03.webp new file mode 100644 index 00000000..365094d5 --- /dev/null +++ b/game/images/dueling/snape/sna_attack_guard_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7eee5fa8e23187d8c2b41b413632fd13cd6c0a1732a3082b514852206ea9a7f1 +size 126824 diff --git a/game/images/dueling/snape/sna_attack_guard_04.webp b/game/images/dueling/snape/sna_attack_guard_04.webp new file mode 100644 index 00000000..6319424d --- /dev/null +++ b/game/images/dueling/snape/sna_attack_guard_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ddeb115d1f7bb92aa2affc468cfe135b6a37deff5db38baf73842356381d9a6 +size 133926 diff --git a/game/images/dueling/snape/sna_attack_guard_05.webp b/game/images/dueling/snape/sna_attack_guard_05.webp new file mode 100644 index 00000000..8624215f --- /dev/null +++ b/game/images/dueling/snape/sna_attack_guard_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa15ff30d2b73131ae15394401a4b3463d8fdace2bacbcda4e278bb876bd89b2 +size 145246 diff --git a/game/images/dueling/snape/sna_attack_guard_06.webp b/game/images/dueling/snape/sna_attack_guard_06.webp new file mode 100644 index 00000000..76e5ad3d --- /dev/null +++ b/game/images/dueling/snape/sna_attack_guard_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3e924ef127c63e2c793733319a603c69aac55cc2d489a7c63712eff2aaa25c8 +size 100254 diff --git a/game/images/dueling/snape/sna_attack_guard_07.webp b/game/images/dueling/snape/sna_attack_guard_07.webp new file mode 100644 index 00000000..505fff62 --- /dev/null +++ b/game/images/dueling/snape/sna_attack_guard_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39c72451507e87cbffd7f8bfc8236653288b42b773d8e7301091a816b3631bb6 +size 99802 diff --git a/game/images/dueling/snape/sna_attack_guard_08.webp b/game/images/dueling/snape/sna_attack_guard_08.webp new file mode 100644 index 00000000..637e7be7 --- /dev/null +++ b/game/images/dueling/snape/sna_attack_guard_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54c9c498d3cb391254549ae734d2c52ee8ddeb40fed4874fcd4b3d43e7f8cc1c +size 95700 diff --git a/game/images/dueling/snape/sna_attack_guard_09.webp b/game/images/dueling/snape/sna_attack_guard_09.webp new file mode 100644 index 00000000..65118ee9 --- /dev/null +++ b/game/images/dueling/snape/sna_attack_guard_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9be4d40a5504863aa284406b471317d25e13f1317537c38e1805ae1b9d8e83ed +size 96198 diff --git a/game/images/dueling/snape/sna_attack_guard_10.webp b/game/images/dueling/snape/sna_attack_guard_10.webp new file mode 100644 index 00000000..019a4d09 --- /dev/null +++ b/game/images/dueling/snape/sna_attack_guard_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39e8fc011c768778511e72c0aa3bb1d0a81055e4b66abbc80878bb43e72d1926 +size 96064 diff --git a/game/images/dueling/snape/sna_block_01.webp b/game/images/dueling/snape/sna_block_01.webp new file mode 100644 index 00000000..4d8371bb --- /dev/null +++ b/game/images/dueling/snape/sna_block_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2171034a04c30e02e522adfb3cd8918c851fa33b1c2fb283402569f05f4fbb9d +size 142084 diff --git a/game/images/dueling/snape/sna_block_02.webp b/game/images/dueling/snape/sna_block_02.webp new file mode 100644 index 00000000..82c434ed --- /dev/null +++ b/game/images/dueling/snape/sna_block_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e49a67a170ace699ae95a4e6298ba6c3a036856ea3382db95d2ffbe44c8ad85 +size 141974 diff --git a/game/images/dueling/snape/sna_block_03.webp b/game/images/dueling/snape/sna_block_03.webp new file mode 100644 index 00000000..7d3e1394 --- /dev/null +++ b/game/images/dueling/snape/sna_block_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:408ccaa95cecafff59991699d4e369b4f41b243ff557a12d98d1672e8747acae +size 129540 diff --git a/game/images/dueling/snape/sna_block_04.webp b/game/images/dueling/snape/sna_block_04.webp new file mode 100644 index 00000000..92b96658 --- /dev/null +++ b/game/images/dueling/snape/sna_block_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:301146ea15057d299193418ea1b59322b89129b6c496477f48259e1eb2386c06 +size 126820 diff --git a/game/images/dueling/snape/sna_block_05.webp b/game/images/dueling/snape/sna_block_05.webp new file mode 100644 index 00000000..e1693880 --- /dev/null +++ b/game/images/dueling/snape/sna_block_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8370df0064917a75dc864cbe1aa822c7c2200859bb21c290dea3ce452d1e23a9 +size 139808 diff --git a/game/images/dueling/snape/sna_block_06.webp b/game/images/dueling/snape/sna_block_06.webp new file mode 100644 index 00000000..d8364b0d --- /dev/null +++ b/game/images/dueling/snape/sna_block_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc0c70998b758ca44f43a6967f9c3ed6b2216ec28bcd08c4b786bb16199b35ec +size 136516 diff --git a/game/images/dueling/snape/sna_block_07.webp b/game/images/dueling/snape/sna_block_07.webp new file mode 100644 index 00000000..1e9c8252 --- /dev/null +++ b/game/images/dueling/snape/sna_block_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f0f1f5ebc184fc8570195b6c19eea00ea9df239573c8a6298530ec3dd051122 +size 127742 diff --git a/game/images/dueling/snape/sna_block_08.webp b/game/images/dueling/snape/sna_block_08.webp new file mode 100644 index 00000000..9e605561 --- /dev/null +++ b/game/images/dueling/snape/sna_block_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:12aef0d7e242b0e2de0846ac8ac12ff11765d20a64655ce39abf3a81d50cadd7 +size 137696 diff --git a/game/images/dueling/snape/sna_block_09.webp b/game/images/dueling/snape/sna_block_09.webp new file mode 100644 index 00000000..024981e0 --- /dev/null +++ b/game/images/dueling/snape/sna_block_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26f463ca7adc323f8123db3e309d440a8596d3c98143fc79997da0a2337a145c +size 133128 diff --git a/game/images/dueling/snape/sna_block_10.webp b/game/images/dueling/snape/sna_block_10.webp new file mode 100644 index 00000000..e52d954b --- /dev/null +++ b/game/images/dueling/snape/sna_block_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1af489697b4f78f0cc4085793961edd13aeece9c89978ed866630a0a6901a2ee +size 131686 diff --git a/game/images/dueling/snape/sna_block_11.webp b/game/images/dueling/snape/sna_block_11.webp new file mode 100644 index 00000000..aaf2cc22 --- /dev/null +++ b/game/images/dueling/snape/sna_block_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00ea095ebf0c5644f765e198c6b9b705234ef330f90d46be64fe0ee01c9b370e +size 127788 diff --git a/game/images/dueling/snape/sna_block_12.webp b/game/images/dueling/snape/sna_block_12.webp new file mode 100644 index 00000000..aef05a42 --- /dev/null +++ b/game/images/dueling/snape/sna_block_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9196cb6ded51ea24cf52347bd2a02023153c309fdb90318c5d0daf12b3b57c75 +size 124402 diff --git a/game/images/dueling/snape/sna_block_13.webp b/game/images/dueling/snape/sna_block_13.webp new file mode 100644 index 00000000..3eb5cc4f --- /dev/null +++ b/game/images/dueling/snape/sna_block_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54f4193a0ce18f0b21d8de25fdcdb8a934a56192c5825c8d8a1d7fdb789bf402 +size 121836 diff --git a/game/images/dueling/snape/snape.webp b/game/images/dueling/snape/snape.webp new file mode 100644 index 00000000..2a85525e --- /dev/null +++ b/game/images/dueling/snape/snape.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2291643670e54b7a862209f82336a620ff6a2b1cc36fed8230fb609babba92ef +size 42546 diff --git a/game/images/dueling/snape/snape_01.webp b/game/images/dueling/snape/snape_01.webp new file mode 100644 index 00000000..fe0d29e6 --- /dev/null +++ b/game/images/dueling/snape/snape_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01665af85aace41986cecc386da52f7a5fb5ecb60ecda004f212dcda4617feb0 +size 41732 diff --git a/game/images/dueling/snape/snape_02.webp b/game/images/dueling/snape/snape_02.webp new file mode 100644 index 00000000..be15aae2 --- /dev/null +++ b/game/images/dueling/snape/snape_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87375628d85034068cbc6b4eecf953f9b7e3b539be1b13f793be5c3cf7cffcff +size 42108 diff --git a/game/images/dueling/snape/snape_03.webp b/game/images/dueling/snape/snape_03.webp new file mode 100644 index 00000000..2a577c91 --- /dev/null +++ b/game/images/dueling/snape/snape_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a4afa83c0a65b20a689b9efdb265e5c1fe4106360be246510be15d9daaf96ae +size 42118 diff --git a/game/images/dueling/snape/snape_casting_01.webp b/game/images/dueling/snape/snape_casting_01.webp new file mode 100644 index 00000000..34572da8 --- /dev/null +++ b/game/images/dueling/snape/snape_casting_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:287b55863b3d04f4b2b941dbc476bfd43016c215f08c1ba27d5ad61fe64b93b1 +size 40472 diff --git a/game/images/dueling/snape/snape_defend_01.webp b/game/images/dueling/snape/snape_defend_01.webp new file mode 100644 index 00000000..de5ccef1 --- /dev/null +++ b/game/images/dueling/snape/snape_defend_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25b54f812e652acfa6d9f809af62eed88c139584647e94b2f4e3675ed520d163 +size 41956 diff --git a/game/images/dueling/snape/snape_defend_02.webp b/game/images/dueling/snape/snape_defend_02.webp new file mode 100644 index 00000000..a88e7d24 --- /dev/null +++ b/game/images/dueling/snape/snape_defend_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf148eba639d7b4961d802562444c15040123177df67cc2849c290cd1d9dbe00 +size 42270 diff --git a/game/images/dueling/snape/snape_defend_03.webp b/game/images/dueling/snape/snape_defend_03.webp new file mode 100644 index 00000000..d5a1d851 --- /dev/null +++ b/game/images/dueling/snape/snape_defend_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0d2bf35bd2f068c85786fe1e90ec934279606d72a9f14ba454525888387344f +size 42792 diff --git a/game/images/logo/arrow.webp b/game/images/logo/arrow.webp new file mode 100644 index 00000000..614795ca --- /dev/null +++ b/game/images/logo/arrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5427e5e327d8ebab18789c39b8de6b6eb26c953fdd82825ac019e49ddeedc540 +size 778 diff --git a/game/images/logo/discord.webp b/game/images/logo/discord.webp new file mode 100644 index 00000000..7ff4308f --- /dev/null +++ b/game/images/logo/discord.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e8289b1d1f4ea54ef6d87ca26217ec96603c7dae2088ba571b61f281f5aa9ce +size 1328 diff --git a/game/images/logo/discord_hover.webp b/game/images/logo/discord_hover.webp new file mode 100644 index 00000000..08e49abd --- /dev/null +++ b/game/images/logo/discord_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:357d9a609f5cb620cc72bae2383f5e8ae249fade77346bef9cf3a1e0e75dc35b +size 1340 diff --git a/game/images/logo/patreon.webp b/game/images/logo/patreon.webp new file mode 100644 index 00000000..2902957e --- /dev/null +++ b/game/images/logo/patreon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d16225156f946bddc569a24d44c4b863d4c4aec3f1722baddc915a7f6400a5c1 +size 1608 diff --git a/game/images/logo/patreon_hover.webp b/game/images/logo/patreon_hover.webp new file mode 100644 index 00000000..5b41a49d --- /dev/null +++ b/game/images/logo/patreon_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d32e38861cc0e8eb28922483a7226a92d17dd2ed5f3b69844eab945d4d2a312 +size 1796 diff --git a/game/images/logo/renpy.webp b/game/images/logo/renpy.webp new file mode 100644 index 00000000..90de7081 --- /dev/null +++ b/game/images/logo/renpy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:faa54611a5d099f2fa6fda2f9fe9df947fbb3bd5dd8c69128e8212e82b6273d6 +size 22686 diff --git a/game/images/logo/silverstudiogames.webp b/game/images/logo/silverstudiogames.webp new file mode 100644 index 00000000..eb4ad28e --- /dev/null +++ b/game/images/logo/silverstudiogames.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd3982bf6100ea2a4ce581e6a73c3bb97a90c1741d90e90da1a0e30c8f67a421 +size 1620 diff --git a/game/images/logo/title.webp b/game/images/logo/title.webp new file mode 100644 index 00000000..6437b6fd --- /dev/null +++ b/game/images/logo/title.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:077221102d4ec99397c0a37acc71b64ce8770e6ca7d41c938c7e57804ff93744 +size 70382 diff --git a/game/images/magic/heal01.webp b/game/images/magic/heal01.webp new file mode 100644 index 00000000..7035af43 --- /dev/null +++ b/game/images/magic/heal01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c83bfa8a38cb8ecfcc5bfdda9e6e08a4bd092819e707168f680ec528d0f8bf9 +size 10894 diff --git a/game/images/magic/heal02.webp b/game/images/magic/heal02.webp new file mode 100644 index 00000000..9db5e223 --- /dev/null +++ b/game/images/magic/heal02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:56a3dc1e674bea983f638719d24b8a7d61230ae8a55eb169c32749652069bd2e +size 11940 diff --git a/game/images/magic/heal03.webp b/game/images/magic/heal03.webp new file mode 100644 index 00000000..20d64702 --- /dev/null +++ b/game/images/magic/heal03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c0b8dc810316bfbcf22229bfa574ee07f4827ea26f09f8945dfdf0396e3798f +size 13024 diff --git a/game/images/magic/heal04.webp b/game/images/magic/heal04.webp new file mode 100644 index 00000000..813b7ca3 --- /dev/null +++ b/game/images/magic/heal04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e72ca3521eb1b71e912aa8abc0448f61e8cdf1edf0adcba752f4acff90d2137 +size 15160 diff --git a/game/images/magic/heal05.webp b/game/images/magic/heal05.webp new file mode 100644 index 00000000..948a756b --- /dev/null +++ b/game/images/magic/heal05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8eecb7c4404bfb50b4833d8fd303e7e0f1edd06734289762e3404babd6b9f2f +size 20316 diff --git a/game/images/magic/heal06.webp b/game/images/magic/heal06.webp new file mode 100644 index 00000000..9252ec26 --- /dev/null +++ b/game/images/magic/heal06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e549b1fe9b2e2a04cc8438ab3682e3a4537b033c18919c1e68f974b6c900fd9 +size 23706 diff --git a/game/images/magic/heal07.webp b/game/images/magic/heal07.webp new file mode 100644 index 00000000..a4a44754 --- /dev/null +++ b/game/images/magic/heal07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f5500d3c79143313636499dde82982e62e973c25900ce507c79fa27520a19b3 +size 26036 diff --git a/game/images/magic/heal08.webp b/game/images/magic/heal08.webp new file mode 100644 index 00000000..6ddee73b --- /dev/null +++ b/game/images/magic/heal08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a590d84847dd513f2eaf458d04e12ba2024a839bf78a33531e1e8a8389136554 +size 29238 diff --git a/game/images/magic/heal09.webp b/game/images/magic/heal09.webp new file mode 100644 index 00000000..560cb9c3 --- /dev/null +++ b/game/images/magic/heal09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a67a72201d2db4177ebbaa509ec8c9e1806a37ebfb60e571da14c0324ce34216 +size 30252 diff --git a/game/images/magic/heal10.webp b/game/images/magic/heal10.webp new file mode 100644 index 00000000..4b7d31b1 --- /dev/null +++ b/game/images/magic/heal10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:52b161e96a94770e365e0a61a7b876d535fb568dae11d35fb7da70861b89c641 +size 30700 diff --git a/game/images/magic/heal11.webp b/game/images/magic/heal11.webp new file mode 100644 index 00000000..3669944a --- /dev/null +++ b/game/images/magic/heal11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9c519bb841f210538e47653b3b71ec9709e0a4c8be1d765485c4ecd1de796ff +size 30314 diff --git a/game/images/magic/heal12.webp b/game/images/magic/heal12.webp new file mode 100644 index 00000000..cdd2e43b --- /dev/null +++ b/game/images/magic/heal12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f70d9f17fdea37c42c2ce9a5b90ee430c2aed815b5932c2730e54b4f77c2ee5 +size 29560 diff --git a/game/images/magic/heal13.webp b/game/images/magic/heal13.webp new file mode 100644 index 00000000..90805a54 --- /dev/null +++ b/game/images/magic/heal13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8528ba8d1ec0ecbb2c788168a8d6a122165fc1e6758e45799c4094e72827806 +size 28540 diff --git a/game/images/magic/heal14.webp b/game/images/magic/heal14.webp new file mode 100644 index 00000000..933390b6 --- /dev/null +++ b/game/images/magic/heal14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0d9beb091bcfcadff45e15db4ebc6232434a940c372db8217543bb39e247599 +size 25556 diff --git a/game/images/magic/heal15.webp b/game/images/magic/heal15.webp new file mode 100644 index 00000000..6cdae538 --- /dev/null +++ b/game/images/magic/heal15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ed6f84cae8dbddf33a5b831f6532fdd76586ba6d31dece2290527c16ac69142 +size 22292 diff --git a/game/images/magic/heal16.webp b/game/images/magic/heal16.webp new file mode 100644 index 00000000..01388d16 --- /dev/null +++ b/game/images/magic/heal16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c81cf77dc17ecb647796df017e2707982c9aec34e92e80900ad1d5442adf40d +size 19106 diff --git a/game/images/magic/heal17.webp b/game/images/magic/heal17.webp new file mode 100644 index 00000000..8e6c7308 --- /dev/null +++ b/game/images/magic/heal17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7dd9d86650b9443d5f7e28f4a6a31d50ef7cab393897d52fdbdfe0b47c641b74 +size 13942 diff --git a/game/images/magic/heal18.webp b/game/images/magic/heal18.webp new file mode 100644 index 00000000..f22c965f --- /dev/null +++ b/game/images/magic/heal18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe17db48c4275947916038bed2496a99a80edfccc568927dbaeefe11567420bc +size 50 diff --git a/game/images/magic/heal_02/heal01.webp b/game/images/magic/heal_02/heal01.webp new file mode 100644 index 00000000..9c47e876 --- /dev/null +++ b/game/images/magic/heal_02/heal01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:230de2a8665e72e33dfeced9d2f44effabf502ef4623b57e29f61d1f49f0e241 +size 4388 diff --git a/game/images/magic/heal_02/heal02.webp b/game/images/magic/heal_02/heal02.webp new file mode 100644 index 00000000..8354632a --- /dev/null +++ b/game/images/magic/heal_02/heal02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:337c4fb8f98010fd2dc66efa73211f9c983eba2a8fccbe2edacd2ffaaebfb533 +size 3734 diff --git a/game/images/magic/heal_02/heal03.webp b/game/images/magic/heal_02/heal03.webp new file mode 100644 index 00000000..7d737833 --- /dev/null +++ b/game/images/magic/heal_02/heal03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc2e68e0511fcd8284752c2772d5bb0986c0fa1472a87e3979e32b84f62fdd28 +size 4140 diff --git a/game/images/magic/heal_02/heal04.webp b/game/images/magic/heal_02/heal04.webp new file mode 100644 index 00000000..0188fe8c --- /dev/null +++ b/game/images/magic/heal_02/heal04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a4ccf73251203da83fb536fdaf5ae954897c776a3d1319180af84926195fcea +size 4850 diff --git a/game/images/magic/heal_02/heal05.webp b/game/images/magic/heal_02/heal05.webp new file mode 100644 index 00000000..521258f9 --- /dev/null +++ b/game/images/magic/heal_02/heal05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc2d6aab93d7d7c389e084a103e6ee712c3e6c96cfb0206627ce0cf307022112 +size 6498 diff --git a/game/images/magic/heal_02/heal06.webp b/game/images/magic/heal_02/heal06.webp new file mode 100644 index 00000000..65508e23 --- /dev/null +++ b/game/images/magic/heal_02/heal06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50b144dd6e627ccd63c87e3b4128b87c7f58bd0df96612458c26237c9c97772f +size 7596 diff --git a/game/images/magic/heal_02/heal07.webp b/game/images/magic/heal_02/heal07.webp new file mode 100644 index 00000000..164df2d4 --- /dev/null +++ b/game/images/magic/heal_02/heal07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec914bc79a47a08a694148b39855fee2872b6a1f2c1088b7e2cf46af9e65438c +size 8456 diff --git a/game/images/magic/heal_02/heal08.webp b/game/images/magic/heal_02/heal08.webp new file mode 100644 index 00000000..3b391049 --- /dev/null +++ b/game/images/magic/heal_02/heal08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a5bc389f8fa312ee006c7b75733185b9182ab49b83dad59ffa3f3566f7db1e8 +size 9468 diff --git a/game/images/magic/heal_02/heal09.webp b/game/images/magic/heal_02/heal09.webp new file mode 100644 index 00000000..e6d2ce18 --- /dev/null +++ b/game/images/magic/heal_02/heal09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0b6ada9b6c37d827ea3a01e4181046cd54de16d83c5bddb4707b8b98dff43b4 +size 9828 diff --git a/game/images/magic/heal_02/heal10.webp b/game/images/magic/heal_02/heal10.webp new file mode 100644 index 00000000..eb58dda7 --- /dev/null +++ b/game/images/magic/heal_02/heal10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4597d02215bdca3acdc12b5fca29be493d7ffcdb62196949c3e2fccb582ce4d3 +size 9978 diff --git a/game/images/magic/heal_02/heal11.webp b/game/images/magic/heal_02/heal11.webp new file mode 100644 index 00000000..6c26ad13 --- /dev/null +++ b/game/images/magic/heal_02/heal11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fd620b29c50c2cee64b03bbdae85ce875e886ffbd7eb0684d1c07788805dc6d +size 9858 diff --git a/game/images/magic/heal_02/heal12.webp b/game/images/magic/heal_02/heal12.webp new file mode 100644 index 00000000..80c3ea34 --- /dev/null +++ b/game/images/magic/heal_02/heal12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89cbdd16e89ccd072cbfa2416908d2f7874dbbc3463007fc81dab6c0a5e589b1 +size 9700 diff --git a/game/images/magic/heal_02/heal13.webp b/game/images/magic/heal_02/heal13.webp new file mode 100644 index 00000000..5e443bf8 --- /dev/null +++ b/game/images/magic/heal_02/heal13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1451c4dcea98315483e706ae3b9caae678d0afeec16c34fdf01fbb886829454 +size 9332 diff --git a/game/images/magic/heal_02/heal14.webp b/game/images/magic/heal_02/heal14.webp new file mode 100644 index 00000000..3be1696b --- /dev/null +++ b/game/images/magic/heal_02/heal14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63cfc2481b1b139fe5fe4260ae709b7ec44a5aa131cd543864e6b935b44a02c1 +size 8590 diff --git a/game/images/magic/heal_02/heal15.webp b/game/images/magic/heal_02/heal15.webp new file mode 100644 index 00000000..77a19fe3 --- /dev/null +++ b/game/images/magic/heal_02/heal15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57ed5da44b0de7443fd57d96a8fd682f855c0effe1f333fbde639c93277c4225 +size 7696 diff --git a/game/images/magic/heal_02/heal16.webp b/game/images/magic/heal_02/heal16.webp new file mode 100644 index 00000000..15fa0f0e --- /dev/null +++ b/game/images/magic/heal_02/heal16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79021e1ae3e85fa12210fa770c5fddde55fd426312a05ff928f870fdd1165e31 +size 6662 diff --git a/game/images/magic/heal_02/heal17.webp b/game/images/magic/heal_02/heal17.webp new file mode 100644 index 00000000..334ea2a0 --- /dev/null +++ b/game/images/magic/heal_02/heal17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e17347baae33476ec58241733ece4e27d2d5328263950e0be29eeb2b401ee60 +size 6884 diff --git a/game/images/magic/heal_02/heal18.webp b/game/images/magic/heal_02/heal18.webp new file mode 100644 index 00000000..2702b3a5 --- /dev/null +++ b/game/images/magic/heal_02/heal18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f563583bdb8b7d013d00ad8ee882e6265ea5f971006430f93dd4a3c1ce6ab49 +size 34 diff --git a/game/images/magic/heals01.webp b/game/images/magic/heals01.webp new file mode 100644 index 00000000..9c47e876 --- /dev/null +++ b/game/images/magic/heals01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:230de2a8665e72e33dfeced9d2f44effabf502ef4623b57e29f61d1f49f0e241 +size 4388 diff --git a/game/images/magic/heals02.webp b/game/images/magic/heals02.webp new file mode 100644 index 00000000..8354632a --- /dev/null +++ b/game/images/magic/heals02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:337c4fb8f98010fd2dc66efa73211f9c983eba2a8fccbe2edacd2ffaaebfb533 +size 3734 diff --git a/game/images/magic/heals03.webp b/game/images/magic/heals03.webp new file mode 100644 index 00000000..7d737833 --- /dev/null +++ b/game/images/magic/heals03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc2e68e0511fcd8284752c2772d5bb0986c0fa1472a87e3979e32b84f62fdd28 +size 4140 diff --git a/game/images/magic/heals04.webp b/game/images/magic/heals04.webp new file mode 100644 index 00000000..0188fe8c --- /dev/null +++ b/game/images/magic/heals04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a4ccf73251203da83fb536fdaf5ae954897c776a3d1319180af84926195fcea +size 4850 diff --git a/game/images/magic/heals05.webp b/game/images/magic/heals05.webp new file mode 100644 index 00000000..521258f9 --- /dev/null +++ b/game/images/magic/heals05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc2d6aab93d7d7c389e084a103e6ee712c3e6c96cfb0206627ce0cf307022112 +size 6498 diff --git a/game/images/magic/heals06.webp b/game/images/magic/heals06.webp new file mode 100644 index 00000000..65508e23 --- /dev/null +++ b/game/images/magic/heals06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50b144dd6e627ccd63c87e3b4128b87c7f58bd0df96612458c26237c9c97772f +size 7596 diff --git a/game/images/magic/heals07.webp b/game/images/magic/heals07.webp new file mode 100644 index 00000000..164df2d4 --- /dev/null +++ b/game/images/magic/heals07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec914bc79a47a08a694148b39855fee2872b6a1f2c1088b7e2cf46af9e65438c +size 8456 diff --git a/game/images/magic/heals08.webp b/game/images/magic/heals08.webp new file mode 100644 index 00000000..3b391049 --- /dev/null +++ b/game/images/magic/heals08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a5bc389f8fa312ee006c7b75733185b9182ab49b83dad59ffa3f3566f7db1e8 +size 9468 diff --git a/game/images/magic/heals09.webp b/game/images/magic/heals09.webp new file mode 100644 index 00000000..e6d2ce18 --- /dev/null +++ b/game/images/magic/heals09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0b6ada9b6c37d827ea3a01e4181046cd54de16d83c5bddb4707b8b98dff43b4 +size 9828 diff --git a/game/images/magic/heals10.webp b/game/images/magic/heals10.webp new file mode 100644 index 00000000..eb58dda7 --- /dev/null +++ b/game/images/magic/heals10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4597d02215bdca3acdc12b5fca29be493d7ffcdb62196949c3e2fccb582ce4d3 +size 9978 diff --git a/game/images/magic/heals11.webp b/game/images/magic/heals11.webp new file mode 100644 index 00000000..6c26ad13 --- /dev/null +++ b/game/images/magic/heals11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fd620b29c50c2cee64b03bbdae85ce875e886ffbd7eb0684d1c07788805dc6d +size 9858 diff --git a/game/images/magic/heals12.webp b/game/images/magic/heals12.webp new file mode 100644 index 00000000..80c3ea34 --- /dev/null +++ b/game/images/magic/heals12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89cbdd16e89ccd072cbfa2416908d2f7874dbbc3463007fc81dab6c0a5e589b1 +size 9700 diff --git a/game/images/magic/heals13.webp b/game/images/magic/heals13.webp new file mode 100644 index 00000000..5e443bf8 --- /dev/null +++ b/game/images/magic/heals13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1451c4dcea98315483e706ae3b9caae678d0afeec16c34fdf01fbb886829454 +size 9332 diff --git a/game/images/magic/heals14.webp b/game/images/magic/heals14.webp new file mode 100644 index 00000000..3be1696b --- /dev/null +++ b/game/images/magic/heals14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63cfc2481b1b139fe5fe4260ae709b7ec44a5aa131cd543864e6b935b44a02c1 +size 8590 diff --git a/game/images/magic/heals15.webp b/game/images/magic/heals15.webp new file mode 100644 index 00000000..77a19fe3 --- /dev/null +++ b/game/images/magic/heals15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57ed5da44b0de7443fd57d96a8fd682f855c0effe1f333fbde639c93277c4225 +size 7696 diff --git a/game/images/magic/heals16.webp b/game/images/magic/heals16.webp new file mode 100644 index 00000000..15fa0f0e --- /dev/null +++ b/game/images/magic/heals16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79021e1ae3e85fa12210fa770c5fddde55fd426312a05ff928f870fdd1165e31 +size 6662 diff --git a/game/images/magic/heals17.webp b/game/images/magic/heals17.webp new file mode 100644 index 00000000..334ea2a0 --- /dev/null +++ b/game/images/magic/heals17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e17347baae33476ec58241733ece4e27d2d5328263950e0be29eeb2b401ee60 +size 6884 diff --git a/game/images/magic/heals18.webp b/game/images/magic/heals18.webp new file mode 100644 index 00000000..2702b3a5 --- /dev/null +++ b/game/images/magic/heals18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f563583bdb8b7d013d00ad8ee882e6265ea5f971006430f93dd4a3c1ce6ab49 +size 34 diff --git a/game/images/magic/love01.webp b/game/images/magic/love01.webp new file mode 100644 index 00000000..4bdd45e3 --- /dev/null +++ b/game/images/magic/love01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9efc0c13994fd765d69e7d5629fcb2517acc6c72f69813cb70ddea5034a049a +size 16588 diff --git a/game/images/magic/love02.webp b/game/images/magic/love02.webp new file mode 100644 index 00000000..f92c3295 --- /dev/null +++ b/game/images/magic/love02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ee8cf0878829c1c05c684acd81aaa4c340073e24c22c0447d9ccb5f43e58cd9 +size 14714 diff --git a/game/images/magic/love03.webp b/game/images/magic/love03.webp new file mode 100644 index 00000000..45dd167c --- /dev/null +++ b/game/images/magic/love03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3658f1f1a06da8aeb56615d5f86d68d18e60df7cd4459741454627b3a2dc186c +size 12446 diff --git a/game/images/magic/love04.webp b/game/images/magic/love04.webp new file mode 100644 index 00000000..1706b1b2 --- /dev/null +++ b/game/images/magic/love04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2a512de45708f80ef6f6e07fc91a94234068251d9a0be517e8095c8e2addcb7 +size 10368 diff --git a/game/images/magic/love05.webp b/game/images/magic/love05.webp new file mode 100644 index 00000000..405685ff --- /dev/null +++ b/game/images/magic/love05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d33ea77851eacf9c969a7be8651fc7fe6a6e896713cd6de973eee333c9b5bc6 +size 8458 diff --git a/game/images/magic/love06.webp b/game/images/magic/love06.webp new file mode 100644 index 00000000..7531e46c --- /dev/null +++ b/game/images/magic/love06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f965d83db46efeec8bddbdf370cf88788965b8c0149a7804f29595b636de04d +size 6146 diff --git a/game/images/magic/love07.webp b/game/images/magic/love07.webp new file mode 100644 index 00000000..ca05e413 --- /dev/null +++ b/game/images/magic/love07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e19e00cb3be8d8d043fe3d5b637345c29848147480baa912d963259b5cba867 +size 12720 diff --git a/game/images/magic/love08.webp b/game/images/magic/love08.webp new file mode 100644 index 00000000..c141be18 --- /dev/null +++ b/game/images/magic/love08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:813487a38a145c3cafeccdb2bdfb27ce0a8657fbae61716135279b7ac5cb5816 +size 19446 diff --git a/game/images/magic/love09.webp b/game/images/magic/love09.webp new file mode 100644 index 00000000..6ab1d083 --- /dev/null +++ b/game/images/magic/love09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1a973b9bfff0fc979d7fa9df33da68b4a1700a9a8bdba3fff4050016b5c16c0 +size 7252 diff --git a/game/images/magic/love10.webp b/game/images/magic/love10.webp new file mode 100644 index 00000000..23d7569b --- /dev/null +++ b/game/images/magic/love10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:288d128b04881c17cd86add0fb74e0f7d0a003b9ad559f526e2ef29e2eec95a9 +size 15458 diff --git a/game/images/magic/love11.webp b/game/images/magic/love11.webp new file mode 100644 index 00000000..74e19fc1 --- /dev/null +++ b/game/images/magic/love11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7353ca068543872ca73a98d1def5034c38983d92d1272a526a4971d2438cb4c +size 28902 diff --git a/game/images/magic/love12.webp b/game/images/magic/love12.webp new file mode 100644 index 00000000..28012efc --- /dev/null +++ b/game/images/magic/love12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bb97b9e05046af504ee77a070c5d882b0b00f4575035aa9ac52ff89effc2a66 +size 15630 diff --git a/game/images/magic/love13.webp b/game/images/magic/love13.webp new file mode 100644 index 00000000..7f0a7b0e --- /dev/null +++ b/game/images/magic/love13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a4bec4fb3e65a8c8905c0db35580fe55aea0d621a0079cfb7ce53af127be18b +size 28018 diff --git a/game/images/magic/love14.webp b/game/images/magic/love14.webp new file mode 100644 index 00000000..c3c2cd3a --- /dev/null +++ b/game/images/magic/love14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb9b5533fdd3512f5fb9d573555bcad32b8d8324ed54a06b093b1699c32a0dd0 +size 17892 diff --git a/game/images/magic/love15.webp b/game/images/magic/love15.webp new file mode 100644 index 00000000..898e8d3c --- /dev/null +++ b/game/images/magic/love15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d18e565b00a472a7ce6a3fe3bb4d29bd5aed32339801845befeb6cf85ebc990c +size 26536 diff --git a/game/images/magic/magic1.webp b/game/images/magic/magic1.webp new file mode 100644 index 00000000..e40ff37f --- /dev/null +++ b/game/images/magic/magic1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f990c8daf09b5ffae305723b5cecdf8b54d5cdf3fed71757ac62ecec599339b2 +size 51414 diff --git a/game/images/magic/magic2.webp b/game/images/magic/magic2.webp new file mode 100644 index 00000000..a1a4131d --- /dev/null +++ b/game/images/magic/magic2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:309835b6c3a519a02211b58f08f8c06323cc7b74ace40b1abf2e4d40c76eda72 +size 20690 diff --git a/game/images/magic/magic3.webp b/game/images/magic/magic3.webp new file mode 100644 index 00000000..0587f51a --- /dev/null +++ b/game/images/magic/magic3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be51e9b35429ae8934fa4ea13d2b7c768e6c1cc7e68fae404777d32bd34dfa05 +size 14518 diff --git a/game/images/magic/magic4.webp b/game/images/magic/magic4.webp new file mode 100644 index 00000000..9da17ec3 --- /dev/null +++ b/game/images/magic/magic4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:db3010cbba93768d44d5eab48b178a7e714972714630512abcdf4b7b24ff60ef +size 24054 diff --git a/game/images/magic/magic5.webp b/game/images/magic/magic5.webp new file mode 100644 index 00000000..88f6b70c --- /dev/null +++ b/game/images/magic/magic5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d71ded7ceab340355704138e5dbd7572605550ba3020a3bbc803593a7627638b +size 125862 diff --git a/game/images/misc/bag.webp b/game/images/misc/bag.webp new file mode 100644 index 00000000..485c04d7 --- /dev/null +++ b/game/images/misc/bag.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2967263fd801effb7e8d9f81bc0b5764f95ea18f6febc1cc07bd7e5c59271cb +size 19130 diff --git a/game/images/misc/bag_floor.webp b/game/images/misc/bag_floor.webp new file mode 100644 index 00000000..7f10f3e3 --- /dev/null +++ b/game/images/misc/bag_floor.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e87907b76ae24994418088e2afe6c6fa0141300e3b2f3986c9207480e044202a +size 11400 diff --git a/game/images/misc/bang.webp b/game/images/misc/bang.webp new file mode 100644 index 00000000..557775df --- /dev/null +++ b/game/images/misc/bang.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2887beed99c5abd6cf8a1e8c63ce5fd87f894730e1c55935d085240c86ed01fd +size 50782 diff --git a/game/images/misc/circle_cartoon.webp b/game/images/misc/circle_cartoon.webp new file mode 100644 index 00000000..d546ccac --- /dev/null +++ b/game/images/misc/circle_cartoon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7aef85fbccedfbb61c6a56833b264600535b3aa4deb3d68c8e42326e8984ab2 +size 1350 diff --git a/game/images/misc/drop.webp b/game/images/misc/drop.webp new file mode 100644 index 00000000..83276b06 --- /dev/null +++ b/game/images/misc/drop.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cab6e9c9ab9a4587757dfb00cbb49f1f846cc1ec5bb5312cdcd224ece7308bc0 +size 1242 diff --git a/game/images/misc/exclamation.webp b/game/images/misc/exclamation.webp new file mode 100644 index 00000000..481a38fe --- /dev/null +++ b/game/images/misc/exclamation.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b25078bbe81bf0df81a08caaf286dc906f1777a18e978e69066447d0e11763ae +size 4734 diff --git a/game/images/misc/folks.webp b/game/images/misc/folks.webp new file mode 100644 index 00000000..632197b7 --- /dev/null +++ b/game/images/misc/folks.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:144bc0c9ed156ded2753e9bf30746e7f4310afb1a794d475ea0eff68c66dbc1e +size 19842 diff --git a/game/images/misc/gameover.webp b/game/images/misc/gameover.webp new file mode 100644 index 00000000..841d68d4 --- /dev/null +++ b/game/images/misc/gameover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c1ebe643b56548783a9f4e84aae1d1814963ee96c467d379a8495794217f200 +size 83844 diff --git a/game/images/misc/heart.webp b/game/images/misc/heart.webp new file mode 100644 index 00000000..52ec98a7 --- /dev/null +++ b/game/images/misc/heart.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e48f9a9a1ea8c7aa5b02bac9594666c31a2868d4a525a45dfeb444165894410 +size 148 diff --git a/game/images/misc/hearts.webp b/game/images/misc/hearts.webp new file mode 100644 index 00000000..30b13e8b --- /dev/null +++ b/game/images/misc/hearts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:328c083de1093e6cb18bd1e1523f3f84f7ffacb828088ab2bdef768b4e8ea0f4 +size 3822 diff --git a/game/images/misc/intro/01_01.webp b/game/images/misc/intro/01_01.webp new file mode 100644 index 00000000..f4644368 --- /dev/null +++ b/game/images/misc/intro/01_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d668144a9d6be908ce287b00068740bea006700f54c51e8cb67ad83a250ee41d +size 618456 diff --git a/game/images/misc/intro/01_02.webp b/game/images/misc/intro/01_02.webp new file mode 100644 index 00000000..d398b9f7 --- /dev/null +++ b/game/images/misc/intro/01_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7cf82e81c4ef84182d400c5ece58107b25d5ff5a7e47701fa8175e32ecf08c7c +size 617734 diff --git a/game/images/misc/intro/02_01.webp b/game/images/misc/intro/02_01.webp new file mode 100644 index 00000000..295ea569 --- /dev/null +++ b/game/images/misc/intro/02_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b245e59325f1f6e0411abe1706dc9413c03418c3876450c18831a54838d01128 +size 619546 diff --git a/game/images/misc/intro/02_02.webp b/game/images/misc/intro/02_02.webp new file mode 100644 index 00000000..46be6db1 --- /dev/null +++ b/game/images/misc/intro/02_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:394fa0fe57f8c922b90103eeabbafbc1e9a709bba5ef124378f96a8075d7e6da +size 619384 diff --git a/game/images/misc/intro/02_03.webp b/game/images/misc/intro/02_03.webp new file mode 100644 index 00000000..534b6c1d --- /dev/null +++ b/game/images/misc/intro/02_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51deff0d43cc61ea0f8f9b68778304c5fe5c3db1575f89bb4fe70103bd654e9f +size 618852 diff --git a/game/images/misc/intro/03_01.webp b/game/images/misc/intro/03_01.webp new file mode 100644 index 00000000..d8eea87f --- /dev/null +++ b/game/images/misc/intro/03_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fa9ac4ae31e828e2f8bcc72b05041964c85b327a20c1edc9be65a8de03e88b9 +size 615690 diff --git a/game/images/misc/intro/03_02.webp b/game/images/misc/intro/03_02.webp new file mode 100644 index 00000000..01631aed --- /dev/null +++ b/game/images/misc/intro/03_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddb85a6c3654c30b1ed7bd94a4cb894c354073737bde08bd9013b4064150d4e3 +size 615784 diff --git a/game/images/misc/intro/04_01.webp b/game/images/misc/intro/04_01.webp new file mode 100644 index 00000000..15ee5e8f --- /dev/null +++ b/game/images/misc/intro/04_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c210c71105fd0d8c2fabcb212144faf2c656d7b17ffc5aa92d1bd5a55e7e9a9 +size 607314 diff --git a/game/images/misc/intro/04_02.webp b/game/images/misc/intro/04_02.webp new file mode 100644 index 00000000..1af1b303 --- /dev/null +++ b/game/images/misc/intro/04_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a61471aa1f89a06ae9423dca7b7aa1ebb7e61c69e31bdf3387e6ba274b1a15d2 +size 607224 diff --git a/game/images/misc/intro/05_01.webp b/game/images/misc/intro/05_01.webp new file mode 100644 index 00000000..958d72e8 --- /dev/null +++ b/game/images/misc/intro/05_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:feaad65b523c2eb065591dab7fb172abd3e8480e303f4c4ee0080d489d8c6418 +size 609654 diff --git a/game/images/misc/intro/05_02.webp b/game/images/misc/intro/05_02.webp new file mode 100644 index 00000000..33329ecf --- /dev/null +++ b/game/images/misc/intro/05_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f869a2c90f929c15ab42206e802227c66324e8fda1c76f5a8d52985c307747b +size 609488 diff --git a/game/images/misc/intro/06_01.webp b/game/images/misc/intro/06_01.webp new file mode 100644 index 00000000..67917906 --- /dev/null +++ b/game/images/misc/intro/06_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7679167df633d6f0b0bf847d878c54c1742c57f494e98019838cf217020065c4 +size 617084 diff --git a/game/images/misc/intro/06_02.webp b/game/images/misc/intro/06_02.webp new file mode 100644 index 00000000..a9df7283 --- /dev/null +++ b/game/images/misc/intro/06_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:965302df654a72da4d29b19e5736f1ee6ec1e8d9a81914da7bf81c332a4e4756 +size 616686 diff --git a/game/images/misc/light.webp b/game/images/misc/light.webp new file mode 100644 index 00000000..9ac2f911 --- /dev/null +++ b/game/images/misc/light.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:753acaef84df79aee3134fa160fdf93de73b68d32ea50510c46f8a3fdf2249ff +size 3468 diff --git a/game/images/misc/old.webp b/game/images/misc/old.webp new file mode 100644 index 00000000..b20fcae4 --- /dev/null +++ b/game/images/misc/old.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a120665703fd8f498c2ac5b878796c302cc5670cbdb666cfb169a63b5803e771 +size 47500 diff --git a/game/images/misc/question.webp b/game/images/misc/question.webp new file mode 100644 index 00000000..4a993953 --- /dev/null +++ b/game/images/misc/question.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ccbe2a717eaeba67c3ba40be3d0a1e66ef7dc1f0e43521864efadd61b273214 +size 7796 diff --git a/game/images/misc/redhead.webp b/game/images/misc/redhead.webp new file mode 100644 index 00000000..b4149afb --- /dev/null +++ b/game/images/misc/redhead.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5052d001d2835e23dcd817e7cbaf0e70d57008f6884a1e541c9ff62478c17274 +size 9008 diff --git a/game/images/misc/smoke.webp b/game/images/misc/smoke.webp new file mode 100644 index 00000000..066a0329 --- /dev/null +++ b/game/images/misc/smoke.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be08ebbb2dd819ff11b3aa99c5e5a51926aa127cab0e25b80951882ffa57cd87 +size 509322 diff --git a/game/images/misc/snake.webp b/game/images/misc/snake.webp new file mode 100644 index 00000000..f56c6ddb --- /dev/null +++ b/game/images/misc/snake.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf01d4d8c59f660cdc8faac202185a2ebc067075191d3453e92a1a838316affe +size 24404 diff --git a/game/images/misc/tears.webp b/game/images/misc/tears.webp new file mode 100644 index 00000000..22286dfa --- /dev/null +++ b/game/images/misc/tears.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:326d00ce8cdb7ae40809f86b843b68b166204af793683a001e68e36cd88f39fa +size 1288 diff --git a/game/images/misc/tentacles.webp b/game/images/misc/tentacles.webp new file mode 100644 index 00000000..c5efe5ef --- /dev/null +++ b/game/images/misc/tentacles.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28399255c568e42d5c41bb209154ec47dd3f82d028f4f0dd57b5f10f7f6b0c49 +size 98116 diff --git a/game/images/misc/things.webp b/game/images/misc/things.webp new file mode 100644 index 00000000..4f530fba --- /dev/null +++ b/game/images/misc/things.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45febe0600d16582daddc42a5540bf7fb4470123b541325f47925dff37a48e41 +size 3020 diff --git a/game/images/misc/tut_00.webp b/game/images/misc/tut_00.webp new file mode 100644 index 00000000..91d972c0 --- /dev/null +++ b/game/images/misc/tut_00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:907d509c3639c69baf11884c073765f9a7f56ba6fab85f92872495a4d45a01c1 +size 230 diff --git a/game/images/misc/tut_01.webp b/game/images/misc/tut_01.webp new file mode 100644 index 00000000..2be59aa7 --- /dev/null +++ b/game/images/misc/tut_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6c4efce180882675b2a38574f8b11cc09a56b067bfe3efba63696e2d2dea355 +size 69640 diff --git a/game/images/misc/tut_02.webp b/game/images/misc/tut_02.webp new file mode 100644 index 00000000..5cb1b1ce --- /dev/null +++ b/game/images/misc/tut_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eeea2216efbfc4f255eb2247ce9fe77eb28ff0f30d702098900f05a4037d9bfc +size 61498 diff --git a/game/images/misc/tut_03.webp b/game/images/misc/tut_03.webp new file mode 100644 index 00000000..0270fc44 --- /dev/null +++ b/game/images/misc/tut_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1436129b6651e76f4d26bca9e58a3baeb58b9e51255f61a6fcb6f8327c4598ca +size 109762 diff --git a/game/images/misc/tut_04.webp b/game/images/misc/tut_04.webp new file mode 100644 index 00000000..b89527e3 --- /dev/null +++ b/game/images/misc/tut_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b52652384e3b5e8ab343d9979d4208c24d9d6038d19e9cc22abfaa9c7a06fc9a +size 110238 diff --git a/game/images/misc/tut_05.webp b/game/images/misc/tut_05.webp new file mode 100644 index 00000000..50a26973 --- /dev/null +++ b/game/images/misc/tut_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b5073b18f8a32723e876cb41ba3759ff31c22042f13aa9bf34f5641ba970d33 +size 77008 diff --git a/game/images/misc/tut_06.webp b/game/images/misc/tut_06.webp new file mode 100644 index 00000000..f490771f --- /dev/null +++ b/game/images/misc/tut_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:253db361cec8e91417ae189a92d4d76b74dbddae68afe4790ccebf2b0bb49c60 +size 49692 diff --git a/game/images/misc/tut_07.webp b/game/images/misc/tut_07.webp new file mode 100644 index 00000000..b6fe1e27 --- /dev/null +++ b/game/images/misc/tut_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d537615f29cd426d59364b26367cfb672e608e04c15356d22e15e4b7765b539c +size 133392 diff --git a/game/images/rooms/_bg_/castle.webp b/game/images/rooms/_bg_/castle.webp new file mode 100644 index 00000000..af1a28ae --- /dev/null +++ b/game/images/rooms/_bg_/castle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cacc048a0539f70c2ad32adb0d054b7f1ce1ddb0833263e9761f317025d67589 +size 135556 diff --git a/game/images/rooms/_bg_/corridor.webp b/game/images/rooms/_bg_/corridor.webp new file mode 100644 index 00000000..0a5dd389 --- /dev/null +++ b/game/images/rooms/_bg_/corridor.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:279c9ecc0db9a3b8acacd6122c945cada0343ba497594056c169bd7166025cb7 +size 202540 diff --git a/game/images/rooms/_bg_/custom.webp b/game/images/rooms/_bg_/custom.webp new file mode 100644 index 00000000..942033fb --- /dev/null +++ b/game/images/rooms/_bg_/custom.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d88177901011fdc58d196deb65e9de32c245a7911b51db65ce3a25bbfe682e2f +size 68 diff --git a/game/images/rooms/_bg_/desk.webp b/game/images/rooms/_bg_/desk.webp new file mode 100644 index 00000000..5623228d --- /dev/null +++ b/game/images/rooms/_bg_/desk.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:baf19e01275969b572a4b29c694e28b261022d93878d5b8eded98b07a591db3e +size 34494 diff --git a/game/images/rooms/_bg_/forest.webp b/game/images/rooms/_bg_/forest.webp new file mode 100644 index 00000000..e34cbdcf --- /dev/null +++ b/game/images/rooms/_bg_/forest.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fc2e937b53c36786e10afa29277b5117d50d844e03c998bfc1e4072dd5c3bb9 +size 46580 diff --git a/game/images/rooms/_bg_/highlight.webp b/game/images/rooms/_bg_/highlight.webp new file mode 100644 index 00000000..dd19cb2a --- /dev/null +++ b/game/images/rooms/_bg_/highlight.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f053564bba7a66d9d05b410f7208f1a396de156009f5d2d0dca10134fcb6981 +size 211690 diff --git a/game/images/rooms/_bg_/main_room_day.webp b/game/images/rooms/_bg_/main_room_day.webp new file mode 100644 index 00000000..6d4c60be --- /dev/null +++ b/game/images/rooms/_bg_/main_room_day.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d24b6d68e23992cd4f6444004f34cae3689265a9d75ae6f39a1e530aac4fdef9 +size 1207198 diff --git a/game/images/rooms/_bg_/main_room_night.webp b/game/images/rooms/_bg_/main_room_night.webp new file mode 100644 index 00000000..1eaeb767 --- /dev/null +++ b/game/images/rooms/_bg_/main_room_night.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f09bf2c7247c91d83bc6ac3c39cf54e7a6cd7bc530e0d7a9ca47df765733df3 +size 932434 diff --git a/game/images/rooms/_bg_/quidditch_pitch.webp b/game/images/rooms/_bg_/quidditch_pitch.webp new file mode 100644 index 00000000..26d84931 --- /dev/null +++ b/game/images/rooms/_bg_/quidditch_pitch.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:897903453b8f68cddd2525437cda25a35ca6bd4915987e979698972412074bdd +size 169660 diff --git a/game/images/rooms/_bg_/versus.webp b/game/images/rooms/_bg_/versus.webp new file mode 100644 index 00000000..45417d52 --- /dev/null +++ b/game/images/rooms/_bg_/versus.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca50cf9fa68f61aa8bef468a6fbd1c943e7ef8714b149e937fd883ef8b2105ad +size 168710 diff --git a/game/images/rooms/_bg_/wall_day.webp b/game/images/rooms/_bg_/wall_day.webp new file mode 100644 index 00000000..12824743 --- /dev/null +++ b/game/images/rooms/_bg_/wall_day.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23885f937c68c008b6d78515385bfc9d72ab84ccde678ae1920384574eb2ed31 +size 156480 diff --git a/game/images/rooms/_weather_/blizzard_01.webp b/game/images/rooms/_weather_/blizzard_01.webp new file mode 100644 index 00000000..f2e9ec34 --- /dev/null +++ b/game/images/rooms/_weather_/blizzard_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b279c77008a69d06bcbdea9f1b8761f10f637b719f92de3a76bd013e7d42d22a +size 15802 diff --git a/game/images/rooms/_weather_/blizzard_02.webp b/game/images/rooms/_weather_/blizzard_02.webp new file mode 100644 index 00000000..07e9c243 --- /dev/null +++ b/game/images/rooms/_weather_/blizzard_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:debbb89acecc389d823913bf86b2f25990b4f365fe5a8a0a4848e978a3f37c0b +size 15882 diff --git a/game/images/rooms/_weather_/blizzard_03.webp b/game/images/rooms/_weather_/blizzard_03.webp new file mode 100644 index 00000000..704c5300 --- /dev/null +++ b/game/images/rooms/_weather_/blizzard_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c92270dd5b8c37e454226a72b5b6d859f227667ae8ea5765d078d802914be70d +size 16014 diff --git a/game/images/rooms/_weather_/blizzard_04.webp b/game/images/rooms/_weather_/blizzard_04.webp new file mode 100644 index 00000000..cc35b445 --- /dev/null +++ b/game/images/rooms/_weather_/blizzard_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84ce945f6b94247c1449cf2f47055bdf89a92b50c35b974e384a7c23d77f5606 +size 16018 diff --git a/game/images/rooms/_weather_/blizzard_05.webp b/game/images/rooms/_weather_/blizzard_05.webp new file mode 100644 index 00000000..6fbee1c5 --- /dev/null +++ b/game/images/rooms/_weather_/blizzard_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ccf9e7f732d4a05f0beace7875816646d5be8a843df5140cc3bffbfe630a3ec +size 15454 diff --git a/game/images/rooms/_weather_/blizzard_06.webp b/game/images/rooms/_weather_/blizzard_06.webp new file mode 100644 index 00000000..2b874377 --- /dev/null +++ b/game/images/rooms/_weather_/blizzard_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0f00626d686a26e12eb0fdb405f41c766a5fa293cbcf344e57c8b8a3e0a2d36 +size 15600 diff --git a/game/images/rooms/_weather_/blizzard_07.webp b/game/images/rooms/_weather_/blizzard_07.webp new file mode 100644 index 00000000..b26de6fe --- /dev/null +++ b/game/images/rooms/_weather_/blizzard_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:305c223764513d183880161c76cdb3167e1562c7bf48d31b5a5b90c9dd1dcae2 +size 15876 diff --git a/game/images/rooms/_weather_/blizzard_08.webp b/game/images/rooms/_weather_/blizzard_08.webp new file mode 100644 index 00000000..8765355c --- /dev/null +++ b/game/images/rooms/_weather_/blizzard_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16cfd3220354c023ee49cb83672d40da70baf9d990464c44a5b8e96c852771de +size 15230 diff --git a/game/images/rooms/_weather_/blizzard_09.webp b/game/images/rooms/_weather_/blizzard_09.webp new file mode 100644 index 00000000..59f77aac --- /dev/null +++ b/game/images/rooms/_weather_/blizzard_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb7a1fa36182e4725ecce80a13738bb681527801b790c82191dee649daff84f1 +size 15142 diff --git a/game/images/rooms/_weather_/blizzard_10.webp b/game/images/rooms/_weather_/blizzard_10.webp new file mode 100644 index 00000000..f40a44cb --- /dev/null +++ b/game/images/rooms/_weather_/blizzard_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b43257e1a91e66f57f01c7b74b5c9d3145db3f077754c8be798913f48a691ec3 +size 16026 diff --git a/game/images/rooms/_weather_/cloud_small.webp b/game/images/rooms/_weather_/cloud_small.webp new file mode 100644 index 00000000..55991dd3 --- /dev/null +++ b/game/images/rooms/_weather_/cloud_small.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edd43f79860a0b229515e9eadc013aeb15813b1ff01266839aba0a0ea5b73cfb +size 5920 diff --git a/game/images/rooms/_weather_/lightning_01.webp b/game/images/rooms/_weather_/lightning_01.webp new file mode 100644 index 00000000..de7e8fb0 --- /dev/null +++ b/game/images/rooms/_weather_/lightning_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7fee759e0b3cdf4c9dc6cda943bddeb6ada45b31e7171326e9e9695528e5b0a +size 34 diff --git a/game/images/rooms/_weather_/lightning_02.webp b/game/images/rooms/_weather_/lightning_02.webp new file mode 100644 index 00000000..d94a4a8e --- /dev/null +++ b/game/images/rooms/_weather_/lightning_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d921fad3d17f7f3566e52d6bf33909568cde1c240cb048e4649da7b7f9cf11e +size 3138 diff --git a/game/images/rooms/_weather_/lightning_03.webp b/game/images/rooms/_weather_/lightning_03.webp new file mode 100644 index 00000000..3449b6dd --- /dev/null +++ b/game/images/rooms/_weather_/lightning_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d40bab713722c7aaef31629050750652d3f16fd6a770530157adce189b3de3d +size 2466 diff --git a/game/images/rooms/_weather_/lightning_04.webp b/game/images/rooms/_weather_/lightning_04.webp new file mode 100644 index 00000000..4b9c569b --- /dev/null +++ b/game/images/rooms/_weather_/lightning_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3defc17c35c6a63d3eceeaa911a41722adb8ddeacc5244de014f6b7bea715bf3 +size 3412 diff --git a/game/images/rooms/_weather_/lightning_05.webp b/game/images/rooms/_weather_/lightning_05.webp new file mode 100644 index 00000000..de7e8fb0 --- /dev/null +++ b/game/images/rooms/_weather_/lightning_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7fee759e0b3cdf4c9dc6cda943bddeb6ada45b31e7171326e9e9695528e5b0a +size 34 diff --git a/game/images/rooms/_weather_/lightning_06.webp b/game/images/rooms/_weather_/lightning_06.webp new file mode 100644 index 00000000..e9830864 --- /dev/null +++ b/game/images/rooms/_weather_/lightning_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6339e8b8de324849537b989ba185394b2c904ca785d747176daad4df2b484551 +size 1494 diff --git a/game/images/rooms/_weather_/night_cloud_01.webp b/game/images/rooms/_weather_/night_cloud_01.webp new file mode 100644 index 00000000..d1977fee --- /dev/null +++ b/game/images/rooms/_weather_/night_cloud_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8ea73d51b38374dde4d2a1034dbee6e7140fcbe98fd5d5fba056a66b634ffd2 +size 710 diff --git a/game/images/rooms/_weather_/night_cloud_02.webp b/game/images/rooms/_weather_/night_cloud_02.webp new file mode 100644 index 00000000..56f7a10e --- /dev/null +++ b/game/images/rooms/_weather_/night_cloud_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed85f85515a23b91e3942e87958a58b596781c455dbcfe604219ff5e3a3d35e8 +size 1454 diff --git a/game/images/rooms/_weather_/night_cloud_03.webp b/game/images/rooms/_weather_/night_cloud_03.webp new file mode 100644 index 00000000..e8ddb1fd --- /dev/null +++ b/game/images/rooms/_weather_/night_cloud_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc88231fa0b4629455bf3ec376a9ab4ca95892b3123cb42497918a9532534d9f +size 828 diff --git a/game/images/rooms/_weather_/night_sky.webp b/game/images/rooms/_weather_/night_sky.webp new file mode 100644 index 00000000..6877d9c7 --- /dev/null +++ b/game/images/rooms/_weather_/night_sky.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59fc45fbdc84ec249a4a0577ebe181fcb87d1b245fb8395a7edbba8993f551a7 +size 5350 diff --git a/game/images/rooms/_weather_/night_sky_moon.webp b/game/images/rooms/_weather_/night_sky_moon.webp new file mode 100644 index 00000000..8a940832 --- /dev/null +++ b/game/images/rooms/_weather_/night_sky_moon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e14e761596294162f32abc3ed48d6ce39fa89997b947af7683288c6c5205c22 +size 13274 diff --git a/game/images/rooms/_weather_/night_sky_moon_cloudy.webp b/game/images/rooms/_weather_/night_sky_moon_cloudy.webp new file mode 100644 index 00000000..020e3a95 --- /dev/null +++ b/game/images/rooms/_weather_/night_sky_moon_cloudy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bfe6c87c42339cc8fbeb0882a80fb299a317275618839e1ec849bb0278cd8be +size 14304 diff --git a/game/images/rooms/_weather_/night_sky_moon_overcast.webp b/game/images/rooms/_weather_/night_sky_moon_overcast.webp new file mode 100644 index 00000000..8d0cfe1a --- /dev/null +++ b/game/images/rooms/_weather_/night_sky_moon_overcast.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a900234572b9c32ad2e16115d542625c2109e99b7504d8fe6d75d4108457c1bb +size 16842 diff --git a/game/images/rooms/_weather_/night_sky_overcast.webp b/game/images/rooms/_weather_/night_sky_overcast.webp new file mode 100644 index 00000000..72624f89 --- /dev/null +++ b/game/images/rooms/_weather_/night_sky_overcast.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af9ad54c3f4aed3418efc8f0bc12695dfe7a3770e322dbc5327af5a9ec26a192 +size 15352 diff --git a/game/images/rooms/_weather_/rain_01.webp b/game/images/rooms/_weather_/rain_01.webp new file mode 100644 index 00000000..b72c3db9 --- /dev/null +++ b/game/images/rooms/_weather_/rain_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebba2cb3f1149a74771efa846b592f36a5a1efd2cfde697a9d6dbbd3b5d55425 +size 6120 diff --git a/game/images/rooms/_weather_/rain_02.webp b/game/images/rooms/_weather_/rain_02.webp new file mode 100644 index 00000000..65003bf9 --- /dev/null +++ b/game/images/rooms/_weather_/rain_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d193e49d8d9fa28dbf9f5cf4726e4b7411c337d3ad6e4c72d776842060d26e4c +size 8016 diff --git a/game/images/rooms/_weather_/rain_03.webp b/game/images/rooms/_weather_/rain_03.webp new file mode 100644 index 00000000..dc07498c --- /dev/null +++ b/game/images/rooms/_weather_/rain_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8dd5c47a116e27eb7ac0a557d8b07f4b77472b97a0af6619dc53ee89cd14c6a +size 9122 diff --git a/game/images/rooms/_weather_/sky.webp b/game/images/rooms/_weather_/sky.webp new file mode 100644 index 00000000..179ac1c3 --- /dev/null +++ b/game/images/rooms/_weather_/sky.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3fa405b1e1a76bb77cf15c7e1338ce223f4799aa7cdec26227a8ccabb62cf25 +size 7272 diff --git a/game/images/rooms/_weather_/sky_overcast.webp b/game/images/rooms/_weather_/sky_overcast.webp new file mode 100644 index 00000000..7addfce5 --- /dev/null +++ b/game/images/rooms/_weather_/sky_overcast.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d36f3e3c26d5717b8bfa1c3c8ced32d5ec9acc2e78ca433d78be45f042a5c8a5 +size 11270 diff --git a/game/images/rooms/_weather_/snow_01.webp b/game/images/rooms/_weather_/snow_01.webp new file mode 100644 index 00000000..62fbd854 --- /dev/null +++ b/game/images/rooms/_weather_/snow_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fb1e532d1c01e57aed4559785627984a1d05036b95644f44b84a8cc053447ea +size 3076 diff --git a/game/images/rooms/_weather_/snow_02.webp b/game/images/rooms/_weather_/snow_02.webp new file mode 100644 index 00000000..056daa5e --- /dev/null +++ b/game/images/rooms/_weather_/snow_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ed269067ae4bb36e508f7a961b56f42d07dcd973eaa4a94ae0adfd6faa041ba +size 2986 diff --git a/game/images/rooms/_weather_/snow_03.webp b/game/images/rooms/_weather_/snow_03.webp new file mode 100644 index 00000000..68c2e1f6 --- /dev/null +++ b/game/images/rooms/_weather_/snow_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad37178997110d02566b8e480e351ab30e09c0809ace6f8301f28022c9a41da6 +size 2688 diff --git a/game/images/rooms/_weather_/snow_04.webp b/game/images/rooms/_weather_/snow_04.webp new file mode 100644 index 00000000..2111acb4 --- /dev/null +++ b/game/images/rooms/_weather_/snow_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f58a3ea703c2edc5d7024941a1bb6b3c37bf3c85a253d90bab3ef97054a21f5a +size 2964 diff --git a/game/images/rooms/_weather_/snow_05.webp b/game/images/rooms/_weather_/snow_05.webp new file mode 100644 index 00000000..1a3e7d15 --- /dev/null +++ b/game/images/rooms/_weather_/snow_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:acd01aba32744a08bfd687e6e031c9f9d5d56d64e7f5738bb9e002f4414857b0 +size 2982 diff --git a/game/images/rooms/_weather_/snow_06.webp b/game/images/rooms/_weather_/snow_06.webp new file mode 100644 index 00000000..8616bc8d --- /dev/null +++ b/game/images/rooms/_weather_/snow_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3adcdf81cb3d605089ee75a2263c8d8c6e6acfcb503935a79c23d9e9e8b41d4e +size 2952 diff --git a/game/images/rooms/_weather_/snow_07.webp b/game/images/rooms/_weather_/snow_07.webp new file mode 100644 index 00000000..5dcccdc6 --- /dev/null +++ b/game/images/rooms/_weather_/snow_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8df70057a58974a22f61518a8777f9d29ccf5bb0b48006d86244e4784db7dfc4 +size 3078 diff --git a/game/images/rooms/_weather_/snow_08.webp b/game/images/rooms/_weather_/snow_08.webp new file mode 100644 index 00000000..4c813bc0 --- /dev/null +++ b/game/images/rooms/_weather_/snow_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff8f9e834bf6fa28f70377aa8c1fc4c3ed3f5bd333b601f1b40dfd48e6793634 +size 2832 diff --git a/game/images/rooms/_weather_/snow_09.webp b/game/images/rooms/_weather_/snow_09.webp new file mode 100644 index 00000000..3c66d706 --- /dev/null +++ b/game/images/rooms/_weather_/snow_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68062626c784b47131ed5b79a68276b0b9e08fe991a9f3ef251bd4992c0aba08 +size 3004 diff --git a/game/images/rooms/_weather_/snow_10.webp b/game/images/rooms/_weather_/snow_10.webp new file mode 100644 index 00000000..1b49e3d9 --- /dev/null +++ b/game/images/rooms/_weather_/snow_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf6f97aa8ae81fb732ea5e0365803821016fe662c9b784cbcc3d5474df154fb6 +size 3066 diff --git a/game/images/rooms/boxing_ring/bg.webp b/game/images/rooms/boxing_ring/bg.webp new file mode 100644 index 00000000..94a8f5a1 --- /dev/null +++ b/game/images/rooms/boxing_ring/bg.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3223a1ffd81a9f72a4620cb26b0eeaa0d668fb5f94782e67481ae9af871c47c +size 55778 diff --git a/game/images/rooms/boxing_ring/crowd_back.webp b/game/images/rooms/boxing_ring/crowd_back.webp new file mode 100644 index 00000000..730c815b --- /dev/null +++ b/game/images/rooms/boxing_ring/crowd_back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d7e6cb106f349f379104d760c4054f3f8bf8403dd7b7fad24c6deba00d0857d +size 154716 diff --git a/game/images/rooms/boxing_ring/crowd_front.webp b/game/images/rooms/boxing_ring/crowd_front.webp new file mode 100644 index 00000000..cf09b646 --- /dev/null +++ b/game/images/rooms/boxing_ring/crowd_front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8ad0b3a93d747d6a7ee0fd7991bde97ab920e5386b9a7e8918b70067cece60e +size 47812 diff --git a/game/images/rooms/boxing_ring/dust.webp b/game/images/rooms/boxing_ring/dust.webp new file mode 100644 index 00000000..e400e28c --- /dev/null +++ b/game/images/rooms/boxing_ring/dust.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e34009061c006fb0a5fc73a3d21f5dc0fcc2f2deb2b1f6d2b51dee12c2eb2e08 +size 2286 diff --git a/game/images/rooms/boxing_ring/lights.webp b/game/images/rooms/boxing_ring/lights.webp new file mode 100644 index 00000000..687e1cf0 --- /dev/null +++ b/game/images/rooms/boxing_ring/lights.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6de2bd57b5a73c839b52625a2cf628add09e84926ab07745824c4c39c0aceba +size 7250 diff --git a/game/images/rooms/boxing_ring/microphone.webp b/game/images/rooms/boxing_ring/microphone.webp new file mode 100644 index 00000000..c76f9a0c --- /dev/null +++ b/game/images/rooms/boxing_ring/microphone.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afeed4399679a8b2a3fd013f65a382ead9ac8e7b2408dba7599e994923245bd6 +size 7214 diff --git a/game/images/rooms/boxing_ring/ring.webp b/game/images/rooms/boxing_ring/ring.webp new file mode 100644 index 00000000..f078efb7 --- /dev/null +++ b/game/images/rooms/boxing_ring/ring.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bbc7fc85262be63ab6e9199875a01347598503176dd54051f0f2b607b30b3b6 +size 150612 diff --git a/game/images/rooms/boxing_ring/stands.webp b/game/images/rooms/boxing_ring/stands.webp new file mode 100644 index 00000000..9c0d9a5e --- /dev/null +++ b/game/images/rooms/boxing_ring/stands.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7cd207032a2e7bb5a5cf370e947a8f45205fa0c76c1c987c8e85f095772426b5 +size 10862 diff --git a/game/images/rooms/boxing_ring/vignette.webp b/game/images/rooms/boxing_ring/vignette.webp new file mode 100644 index 00000000..b88cd5c2 --- /dev/null +++ b/game/images/rooms/boxing_ring/vignette.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05f08b4bc0574b3180a2257035993ccdf62d03b4fbefd59c7099619542435972 +size 211624 diff --git a/game/images/rooms/main_room/chair_left.webp b/game/images/rooms/main_room/chair_left.webp new file mode 100644 index 00000000..f76a940e --- /dev/null +++ b/game/images/rooms/main_room/chair_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aee2b4e811d2685f4294fb47906a1bdf35b0733c64cbe7d1cac1501f3fb62186 +size 43654 diff --git a/game/images/rooms/main_room/chair_left_no_shadow.webp b/game/images/rooms/main_room/chair_left_no_shadow.webp new file mode 100644 index 00000000..a81d86d0 --- /dev/null +++ b/game/images/rooms/main_room/chair_left_no_shadow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:911d0e91420bdd0e043d9037e5ce6ebb1086ba4e0961225c505387073558500a +size 14276 diff --git a/game/images/rooms/main_room/chair_right.webp b/game/images/rooms/main_room/chair_right.webp new file mode 100644 index 00000000..45c07857 --- /dev/null +++ b/game/images/rooms/main_room/chair_right.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:675a96a1a9980b73f12aee02564f86835ce7aa0345553186e86fb996cbf6aa4c +size 43024 diff --git a/game/images/rooms/main_room/desk_empty.webp b/game/images/rooms/main_room/desk_empty.webp new file mode 100644 index 00000000..583b994d --- /dev/null +++ b/game/images/rooms/main_room/desk_empty.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1769b817fbf18f961a50f76bd68a6dc2257697cc8f331f6c60dd6a9e11c28b5a +size 59190 diff --git a/game/images/rooms/main_room/desk_no_shadow.webp b/game/images/rooms/main_room/desk_no_shadow.webp new file mode 100644 index 00000000..ddaffffa --- /dev/null +++ b/game/images/rooms/main_room/desk_no_shadow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3276b1dd8437185430b420fe094cce17f341aff398ae49200fb162b2e7dd10ed +size 19246 diff --git a/game/images/rooms/main_room/dum.webp b/game/images/rooms/main_room/dum.webp new file mode 100644 index 00000000..180567ce --- /dev/null +++ b/game/images/rooms/main_room/dum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:df7ed61e8fe5f4101cde93ddace104900b9f55e115e8d7c0fd36ae7dae1deb54 +size 108266 diff --git a/game/images/rooms/objects/candles/candle.webp b/game/images/rooms/objects/candles/candle.webp new file mode 100644 index 00000000..f5b749bc --- /dev/null +++ b/game/images/rooms/objects/candles/candle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7320b7768c5518abe4f16a40c4bc03be342749daa0cda485046b887a33599ded +size 6494 diff --git a/game/images/rooms/objects/candles/candleM.webp b/game/images/rooms/objects/candles/candleM.webp new file mode 100644 index 00000000..d34b96ac --- /dev/null +++ b/game/images/rooms/objects/candles/candleM.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb9a05011aca187bfe6eb9a9cb3baf9dbc0f2df1e1811f5ac6c11b4ef12c9748 +size 6556 diff --git a/game/images/rooms/objects/candles/fire_01.webp b/game/images/rooms/objects/candles/fire_01.webp new file mode 100644 index 00000000..19728b8d --- /dev/null +++ b/game/images/rooms/objects/candles/fire_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c3ae7ed85b508fe85b5ad828c4cbc83ce4097d456aae630b7e1563a274ac0f7 +size 2860 diff --git a/game/images/rooms/objects/candles/fire_02.webp b/game/images/rooms/objects/candles/fire_02.webp new file mode 100644 index 00000000..be9ce66c --- /dev/null +++ b/game/images/rooms/objects/candles/fire_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2caa9c60abad2ac96f82de923d53df45ca827696bf87a63629fa42961ba8d19b +size 2912 diff --git a/game/images/rooms/objects/candles/fire_03.webp b/game/images/rooms/objects/candles/fire_03.webp new file mode 100644 index 00000000..4d4785ac --- /dev/null +++ b/game/images/rooms/objects/candles/fire_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3ab442c4f73f92d7e7680a43d02875108c2add1792f45922606e47ea326b61a +size 2580 diff --git a/game/images/rooms/objects/candles/fire_04.webp b/game/images/rooms/objects/candles/fire_04.webp new file mode 100644 index 00000000..97406c90 --- /dev/null +++ b/game/images/rooms/objects/candles/fire_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:702ec4d0c3e6e2a5d977e109b07b48c870765f0fe748fbd89dd519078e700ce4 +size 2890 diff --git a/game/images/rooms/objects/candles/fire_05.webp b/game/images/rooms/objects/candles/fire_05.webp new file mode 100644 index 00000000..67581286 --- /dev/null +++ b/game/images/rooms/objects/candles/fire_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1179e80b663595b0abd29d3d4c4534127fdce261a753c181387333967b57f15a +size 2834 diff --git a/game/images/rooms/objects/candles/fire_06.webp b/game/images/rooms/objects/candles/fire_06.webp new file mode 100644 index 00000000..ec02e751 --- /dev/null +++ b/game/images/rooms/objects/candles/fire_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:730ef814f54d25fb51566aeea48e82c07552cbeeef80af842cfc18e030068e23 +size 2632 diff --git a/game/images/rooms/objects/candles/fire_07.webp b/game/images/rooms/objects/candles/fire_07.webp new file mode 100644 index 00000000..2b2c90bb --- /dev/null +++ b/game/images/rooms/objects/candles/fire_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:320ccd47386e3c3db960b3e5bb8c9972a42ca891321095423c952cbb4db4df19 +size 2756 diff --git a/game/images/rooms/objects/candles/fire_08.webp b/game/images/rooms/objects/candles/fire_08.webp new file mode 100644 index 00000000..32ab473e --- /dev/null +++ b/game/images/rooms/objects/candles/fire_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d8d5d58f6e747fb1b55453a1a39c3c900f260ccb73655c8cbe09db459fbfbfa +size 2404 diff --git a/game/images/rooms/objects/candles/fire_09.webp b/game/images/rooms/objects/candles/fire_09.webp new file mode 100644 index 00000000..3174f682 --- /dev/null +++ b/game/images/rooms/objects/candles/fire_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fe67fef770c130beae614996fca40831d886eddd9460791d40547369365f280 +size 2776 diff --git a/game/images/rooms/objects/candles/fire_10.webp b/game/images/rooms/objects/candles/fire_10.webp new file mode 100644 index 00000000..c8c56f58 --- /dev/null +++ b/game/images/rooms/objects/candles/fire_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dba7558335346d438c5a403a2cdf943971bac5b3e8a446786b8c12e54402969 +size 2618 diff --git a/game/images/rooms/objects/cupboard/cupboard_open.webp b/game/images/rooms/objects/cupboard/cupboard_open.webp new file mode 100644 index 00000000..8b9db606 --- /dev/null +++ b/game/images/rooms/objects/cupboard/cupboard_open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f75aca52749fff14a486583aa871373b4f826435c0c48966e270f37c3b5befe +size 182634 diff --git a/game/images/rooms/objects/cupboard/cupboard_w_shadow.webp b/game/images/rooms/objects/cupboard/cupboard_w_shadow.webp new file mode 100644 index 00000000..5a5993a4 --- /dev/null +++ b/game/images/rooms/objects/cupboard/cupboard_w_shadow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:963737d069e34aba032f0f6a6a27feb3ee17814f14d4a5e7fd607144f7ada73b +size 155418 diff --git a/game/images/rooms/objects/deco/hogwarts_banner.webp b/game/images/rooms/objects/deco/hogwarts_banner.webp new file mode 100644 index 00000000..12141b0b --- /dev/null +++ b/game/images/rooms/objects/deco/hogwarts_banner.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f54d1faeecdab55abec00b26cb5c9a4142ec9ce81a0df83e4c619bf8168318f +size 7474 diff --git a/game/images/rooms/objects/deco/owlbasin.webp b/game/images/rooms/objects/deco/owlbasin.webp new file mode 100644 index 00000000..d8d30aaf --- /dev/null +++ b/game/images/rooms/objects/deco/owlbasin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e21797a1fb8f972c4984ebeb6392bc1e34a5e00f9d525dc39dd3cb49a2f921c +size 27834 diff --git a/game/images/rooms/objects/decorations/agrabah_poster.webp b/game/images/rooms/objects/decorations/agrabah_poster.webp new file mode 100644 index 00000000..0abf2baa --- /dev/null +++ b/game/images/rooms/objects/decorations/agrabah_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b0f8770cdb2a3e82129990f7a522dcef4ca35547462a3b269f2898e7b311273 +size 16986 diff --git a/game/images/rooms/objects/decorations/bats_trophy.webp b/game/images/rooms/objects/decorations/bats_trophy.webp new file mode 100644 index 00000000..be3a14d4 --- /dev/null +++ b/game/images/rooms/objects/decorations/bats_trophy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:327f70d8ad85db99be514f665d2124461ac6e31267914a0c039572b163f2d48d +size 12466 diff --git a/game/images/rooms/objects/decorations/crest_trophy.webp b/game/images/rooms/objects/decorations/crest_trophy.webp new file mode 100644 index 00000000..af1347e7 --- /dev/null +++ b/game/images/rooms/objects/decorations/crest_trophy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3dbfa3a68d6920720fba79170df33aa79bf600615763f828c8c224bd00cc15de +size 18384 diff --git a/game/images/rooms/objects/decorations/gryffindor_poster.webp b/game/images/rooms/objects/decorations/gryffindor_poster.webp new file mode 100644 index 00000000..3a06eac8 --- /dev/null +++ b/game/images/rooms/objects/decorations/gryffindor_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8be273803f0fcdde33ec832bebda47dbc1ae1d7d8a8cdd9e72c92716ff90cbcc +size 8172 diff --git a/game/images/rooms/objects/decorations/halloween_chair.webp b/game/images/rooms/objects/decorations/halloween_chair.webp new file mode 100644 index 00000000..a1756bdb --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_chair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfd458f60a640e5d1698d314406c440334a4e146e7609de83d4183bafc99df88 +size 6750 diff --git a/game/images/rooms/objects/decorations/halloween_chandelier.webp b/game/images/rooms/objects/decorations/halloween_chandelier.webp new file mode 100644 index 00000000..f253507c --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_chandelier.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2fc3683089a9f6c1c2bed2390e0b3352f8f00d22f41b570cefc30f44b21a2b9 +size 30926 diff --git a/game/images/rooms/objects/decorations/halloween_cupboard.webp b/game/images/rooms/objects/decorations/halloween_cupboard.webp new file mode 100644 index 00000000..e03acf1b --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_cupboard.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4a51ccfdaf2703e65378e0e399669967ab092ec39e8387bd35a157209087f0e +size 15510 diff --git a/game/images/rooms/objects/decorations/halloween_cupboard2.webp b/game/images/rooms/objects/decorations/halloween_cupboard2.webp new file mode 100644 index 00000000..25ea6995 --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_cupboard2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a40143319d46b126f92955825e8ccc50225546d2ed22456a864e9344621ebc78 +size 7772 diff --git a/game/images/rooms/objects/decorations/halloween_fireplace.webp b/game/images/rooms/objects/decorations/halloween_fireplace.webp new file mode 100644 index 00000000..332bca10 --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_fireplace.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55941d196ed2591dff3960393d404ee79266a9106c1889a7068099d769c31358 +size 12132 diff --git a/game/images/rooms/objects/decorations/halloween_fireplace2.webp b/game/images/rooms/objects/decorations/halloween_fireplace2.webp new file mode 100644 index 00000000..4bb3d0f9 --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_fireplace2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1f9da12bf56b4ec2a8f55c5f7c60010d3829964c72bc5cca2b84f78c1ccb6da +size 8932 diff --git a/game/images/rooms/objects/decorations/halloween_lamp/filament.webp b/game/images/rooms/objects/decorations/halloween_lamp/filament.webp new file mode 100644 index 00000000..1c779928 --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_lamp/filament.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f68bbd8c989f607d0279be12bb7315a71e9692cff5067e6bb651a2ae3b69ce79 +size 608 diff --git a/game/images/rooms/objects/decorations/halloween_lamp/glow.webp b/game/images/rooms/objects/decorations/halloween_lamp/glow.webp new file mode 100644 index 00000000..6fac94c6 --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_lamp/glow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15cccdb98635430f59d8068fca87b0f107a5bdec60f8e41cc4136e1e6f34b7cf +size 40922 diff --git a/game/images/rooms/objects/decorations/halloween_lamp/left.webp b/game/images/rooms/objects/decorations/halloween_lamp/left.webp new file mode 100644 index 00000000..75d15863 --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_lamp/left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97e313eb05ee02f98283309133e93bdf9da6ea30927cc9091cff4e3fb0b6bdc3 +size 8270 diff --git a/game/images/rooms/objects/decorations/halloween_lamp/right.webp b/game/images/rooms/objects/decorations/halloween_lamp/right.webp new file mode 100644 index 00000000..862f4562 --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_lamp/right.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f987c81b9d6dcb96552312874fdf26726e99c31d603b7fa750c1c1cafee89f1f +size 8706 diff --git a/game/images/rooms/objects/decorations/halloween_monster/0.webp b/game/images/rooms/objects/decorations/halloween_monster/0.webp new file mode 100644 index 00000000..d749d98d --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_monster/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8c2fb7b14cdb5998d6968e92ce41557813a2aec646e7fa97c22dee93542099d +size 1722 diff --git a/game/images/rooms/objects/decorations/halloween_monster/1.webp b/game/images/rooms/objects/decorations/halloween_monster/1.webp new file mode 100644 index 00000000..06f8bb7e --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_monster/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cb52ea370d0ae7cf332a8bee6d8c8dd6077ebe23d88dc01235e9ebd1cfda292 +size 1750 diff --git a/game/images/rooms/objects/decorations/halloween_monster/2.webp b/game/images/rooms/objects/decorations/halloween_monster/2.webp new file mode 100644 index 00000000..c1063e13 --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_monster/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60f13f154c2acdff6246e985a547708cb824ec26317f8b9e539717e3f03dca70 +size 1596 diff --git a/game/images/rooms/objects/decorations/halloween_monster/3.webp b/game/images/rooms/objects/decorations/halloween_monster/3.webp new file mode 100644 index 00000000..458d1f3c --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_monster/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ee7041917c1b6199a32db71d2b98cd8cf7c798a38acdb40fd8c2203f6084672 +size 1464 diff --git a/game/images/rooms/objects/decorations/halloween_phoenix.webp b/game/images/rooms/objects/decorations/halloween_phoenix.webp new file mode 100644 index 00000000..cc4b1c45 --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_phoenix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fffd1a5a79efb3f14ddef8748cf8ec8692600da37d4508a712dda8d293b61f7c +size 11616 diff --git a/game/images/rooms/objects/decorations/halloween_rug.webp b/game/images/rooms/objects/decorations/halloween_rug.webp new file mode 100644 index 00000000..bf3eb57c --- /dev/null +++ b/game/images/rooms/objects/decorations/halloween_rug.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:025718823236f15d1ad843d3100892edec78bff09baeaf2417de7f90dc68f116 +size 33198 diff --git a/game/images/rooms/objects/decorations/harlot_poster.webp b/game/images/rooms/objects/decorations/harlot_poster.webp new file mode 100644 index 00000000..fd9ef1c8 --- /dev/null +++ b/game/images/rooms/objects/decorations/harlot_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f96ca6bfe3447f5c12fb8de0452539d1e795096d4349f94110fd0d1643649e8 +size 19728 diff --git a/game/images/rooms/objects/decorations/hat_fireplace.webp b/game/images/rooms/objects/decorations/hat_fireplace.webp new file mode 100644 index 00000000..ebfe1bd4 --- /dev/null +++ b/game/images/rooms/objects/decorations/hat_fireplace.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fab5c54c390167bfc87fd92fa5354bbc7b3fa101932510f1c33b5dba94cabc19 +size 4348 diff --git a/game/images/rooms/objects/decorations/hat_owl.webp b/game/images/rooms/objects/decorations/hat_owl.webp new file mode 100644 index 00000000..c1e456f1 --- /dev/null +++ b/game/images/rooms/objects/decorations/hat_owl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b350d3773adb338dbb0343a927376c721d1f0bf8b744f02c552ee7d546aba7cc +size 4504 diff --git a/game/images/rooms/objects/decorations/hat_phoenix.webp b/game/images/rooms/objects/decorations/hat_phoenix.webp new file mode 100644 index 00000000..ab1eb88f --- /dev/null +++ b/game/images/rooms/objects/decorations/hat_phoenix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d1a48476963bada498c4437b141ed8218a7781678573e5f7cf24c06db257a99 +size 5048 diff --git a/game/images/rooms/objects/decorations/hermione_poster.webp b/game/images/rooms/objects/decorations/hermione_poster.webp new file mode 100644 index 00000000..1d20fe79 --- /dev/null +++ b/game/images/rooms/objects/decorations/hermione_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd4bd7d669f727f812b8fd9d9e37594e7414afac9b71a7f60fbddfab129ea7ef +size 17770 diff --git a/game/images/rooms/objects/decorations/hufflepuff_poster.webp b/game/images/rooms/objects/decorations/hufflepuff_poster.webp new file mode 100644 index 00000000..8b858837 --- /dev/null +++ b/game/images/rooms/objects/decorations/hufflepuff_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:579b70c14cfe05ab53c3759ed9d3e1ffd9d50ce0c1d2404914c061c6149e4f3f +size 9142 diff --git a/game/images/rooms/objects/decorations/ravenclaw_poster.webp b/game/images/rooms/objects/decorations/ravenclaw_poster.webp new file mode 100644 index 00000000..7df2bba6 --- /dev/null +++ b/game/images/rooms/objects/decorations/ravenclaw_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41c07a79905e27a6732120b3940ed7162666e02641f4453c6df4f01e627f3ec9 +size 7624 diff --git a/game/images/rooms/objects/decorations/slytherin_poster.webp b/game/images/rooms/objects/decorations/slytherin_poster.webp new file mode 100644 index 00000000..0e9755a4 --- /dev/null +++ b/game/images/rooms/objects/decorations/slytherin_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f57e1ea0c5f4f2215995281b907fe03caf87934ff99136977a2c1eb2a3fd5d97 +size 9178 diff --git a/game/images/rooms/objects/decorations/small_owl/idle_0.webp b/game/images/rooms/objects/decorations/small_owl/idle_0.webp new file mode 100644 index 00000000..b047636d --- /dev/null +++ b/game/images/rooms/objects/decorations/small_owl/idle_0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d90178e7197c4d7f34af4e1d7511bc338570eb37a7b8d9806ce5b8b563cadf12 +size 21258 diff --git a/game/images/rooms/objects/decorations/small_owl/idle_1.webp b/game/images/rooms/objects/decorations/small_owl/idle_1.webp new file mode 100644 index 00000000..7f6b2475 --- /dev/null +++ b/game/images/rooms/objects/decorations/small_owl/idle_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f46d73156c2bbe13768e178329a7a3a46c2bf7d0013ac487c8bed01ddc01102e +size 21110 diff --git a/game/images/rooms/objects/decorations/small_owl/idle_2.webp b/game/images/rooms/objects/decorations/small_owl/idle_2.webp new file mode 100644 index 00000000..7b34c75b --- /dev/null +++ b/game/images/rooms/objects/decorations/small_owl/idle_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb11c523f69eea627308d3bd7794e40f78e900d9f3962b498a1c2c15335e567e +size 20630 diff --git a/game/images/rooms/objects/decorations/small_owl/letter_0.webp b/game/images/rooms/objects/decorations/small_owl/letter_0.webp new file mode 100644 index 00000000..393c238a --- /dev/null +++ b/game/images/rooms/objects/decorations/small_owl/letter_0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5073cf860499378f11970edf9330eb6064586454eb3b0893c2be05087db6924 +size 17534 diff --git a/game/images/rooms/objects/decorations/small_owl/letter_1.webp b/game/images/rooms/objects/decorations/small_owl/letter_1.webp new file mode 100644 index 00000000..954384db --- /dev/null +++ b/game/images/rooms/objects/decorations/small_owl/letter_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33d5368ea31abd839656978541f8330ec109e147bb6a9dcdf5cd4c3ddc6e6bf7 +size 17370 diff --git a/game/images/rooms/objects/decorations/small_owl/letter_2.webp b/game/images/rooms/objects/decorations/small_owl/letter_2.webp new file mode 100644 index 00000000..23f8661c --- /dev/null +++ b/game/images/rooms/objects/decorations/small_owl/letter_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d995edf62be93aea796f3cdbcf2ccb473bf4034eb3be21e2b9372ecd0be08776 +size 16998 diff --git a/game/images/rooms/objects/decorations/small_owl/letter_hover.webp b/game/images/rooms/objects/decorations/small_owl/letter_hover.webp new file mode 100644 index 00000000..bf1fdf27 --- /dev/null +++ b/game/images/rooms/objects/decorations/small_owl/letter_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad880de0cf8967e7bbf00613caec91001b14eeee81aa12caa3cabde7b39ce55a +size 17950 diff --git a/game/images/rooms/objects/decorations/snow_owl/idle_0.webp b/game/images/rooms/objects/decorations/snow_owl/idle_0.webp new file mode 100644 index 00000000..08662f67 --- /dev/null +++ b/game/images/rooms/objects/decorations/snow_owl/idle_0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edd56e420aeb49d37b02f9d37c4033ad8596c7010d950d8c176ce99c23818b76 +size 19020 diff --git a/game/images/rooms/objects/decorations/snow_owl/idle_1.webp b/game/images/rooms/objects/decorations/snow_owl/idle_1.webp new file mode 100644 index 00000000..99356e77 --- /dev/null +++ b/game/images/rooms/objects/decorations/snow_owl/idle_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8d3ddd1b05f6bf2e1a7e64bb67568b295b52d05bd10303857f1e2f4f9765a4db +size 18864 diff --git a/game/images/rooms/objects/decorations/snow_owl/idle_2.webp b/game/images/rooms/objects/decorations/snow_owl/idle_2.webp new file mode 100644 index 00000000..14b8a534 --- /dev/null +++ b/game/images/rooms/objects/decorations/snow_owl/idle_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f1eec0db6eaa636696f44994a90b6412a1431d3dba97a4a09c78ac3b605d4a4 +size 18372 diff --git a/game/images/rooms/objects/decorations/snow_owl/letter_0.webp b/game/images/rooms/objects/decorations/snow_owl/letter_0.webp new file mode 100644 index 00000000..313ebc12 --- /dev/null +++ b/game/images/rooms/objects/decorations/snow_owl/letter_0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efbb221c5889d0da77906f795c509876dfc8f369406dd94c4fa0f75bf2f96d4a +size 20692 diff --git a/game/images/rooms/objects/decorations/snow_owl/letter_1.webp b/game/images/rooms/objects/decorations/snow_owl/letter_1.webp new file mode 100644 index 00000000..500240c9 --- /dev/null +++ b/game/images/rooms/objects/decorations/snow_owl/letter_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cae6d6fc60349482075379d1dd1a69fe0c7714ba35170bea4b96689eaaf7b283 +size 20534 diff --git a/game/images/rooms/objects/decorations/snow_owl/letter_2.webp b/game/images/rooms/objects/decorations/snow_owl/letter_2.webp new file mode 100644 index 00000000..1f4172d3 --- /dev/null +++ b/game/images/rooms/objects/decorations/snow_owl/letter_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64a8e54e88ba658b3a732b110a4b69dacfe4f2b31e112d3b8982cf98afe8d73a +size 20204 diff --git a/game/images/rooms/objects/decorations/snow_owl/letter_hover.webp b/game/images/rooms/objects/decorations/snow_owl/letter_hover.webp new file mode 100644 index 00000000..244d1738 --- /dev/null +++ b/game/images/rooms/objects/decorations/snow_owl/letter_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7db57664053c6535fbcd529bead1de4ee192f52b7603ecdbbdec31d2c6b458e +size 21064 diff --git a/game/images/rooms/objects/decorations/stag_trophy.webp b/game/images/rooms/objects/decorations/stag_trophy.webp new file mode 100644 index 00000000..51c2ab42 --- /dev/null +++ b/game/images/rooms/objects/decorations/stag_trophy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1973ff755a4d4a718a0bc8095d11236b1e12717531b192771c8e1ea79bf170b0 +size 16932 diff --git a/game/images/rooms/objects/decorations/stripper_poster.webp b/game/images/rooms/objects/decorations/stripper_poster.webp new file mode 100644 index 00000000..3ec28e01 --- /dev/null +++ b/game/images/rooms/objects/decorations/stripper_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d43ba382ffcf36edfd5312868853318bc2e2a77884394e66c21c35958c1c8056 +size 15154 diff --git a/game/images/rooms/objects/decorations/tonks_poster.webp b/game/images/rooms/objects/decorations/tonks_poster.webp new file mode 100644 index 00000000..dd91f080 --- /dev/null +++ b/game/images/rooms/objects/decorations/tonks_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62ff440e9c2fcf8172413eaac12ffd54193903bfe7afad8fece3647aea9bf23c +size 19392 diff --git a/game/images/rooms/objects/decorations/wanted_poster.webp b/game/images/rooms/objects/decorations/wanted_poster.webp new file mode 100644 index 00000000..cb8c990b --- /dev/null +++ b/game/images/rooms/objects/decorations/wanted_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67f16052782ac4ca177e13a0be595bc8ff6559b5551ce1c2bb5658473d40c19e +size 16640 diff --git a/game/images/rooms/objects/decorations/xmas_cupboard.webp b/game/images/rooms/objects/decorations/xmas_cupboard.webp new file mode 100644 index 00000000..ae08d828 --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_cupboard.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6e6aeedb25d515f8deb9cae8202f9bc76bdb2dc84a46f8aba086e543d2d66a7 +size 4854 diff --git a/game/images/rooms/objects/decorations/xmas_door.webp b/game/images/rooms/objects/decorations/xmas_door.webp new file mode 100644 index 00000000..a55d548b --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_door.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30d9ce2ea10ad79a08d6566656641add4300279b0209e41156ce4d9b6f49e6bf +size 2098 diff --git a/game/images/rooms/objects/decorations/xmas_fireplace.webp b/game/images/rooms/objects/decorations/xmas_fireplace.webp new file mode 100644 index 00000000..b1a30589 --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_fireplace.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5884657e7775ab85b786a2b6c010093e30c3a709c35d496164d19c5e125c0726 +size 21796 diff --git a/game/images/rooms/objects/decorations/xmas_giftchair.webp b/game/images/rooms/objects/decorations/xmas_giftchair.webp new file mode 100644 index 00000000..8f047fee --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_giftchair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d5bcc361ae9cf81903bd0fdba0b762a01ae141a4cf556381af51675fad21a09 +size 9232 diff --git a/game/images/rooms/objects/decorations/xmas_lights/base.webp b/game/images/rooms/objects/decorations/xmas_lights/base.webp new file mode 100644 index 00000000..3ec1b92a --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_lights/base.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e998a43235813c61545ac9658053fc1d595051d483747f33d05e4fe68f01187 +size 42430 diff --git a/game/images/rooms/objects/decorations/xmas_lights/bulbset_1.webp b/game/images/rooms/objects/decorations/xmas_lights/bulbset_1.webp new file mode 100644 index 00000000..f067533b --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_lights/bulbset_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4275012e12bf87d09003ced8a644dbd19718ab150caebfa89a162cff7a38583b +size 7392 diff --git a/game/images/rooms/objects/decorations/xmas_lights/bulbset_2.webp b/game/images/rooms/objects/decorations/xmas_lights/bulbset_2.webp new file mode 100644 index 00000000..5e7f1616 --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_lights/bulbset_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bccf9e2d9d8daccf101f24e222b864069e602f6f79106f5b2648b6691db75620 +size 6798 diff --git a/game/images/rooms/objects/decorations/xmas_lights/glowset_1.webp b/game/images/rooms/objects/decorations/xmas_lights/glowset_1.webp new file mode 100644 index 00000000..48b5c00b --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_lights/glowset_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:478c34264be9f3d7653a92c6cf9c3757ca9e2fc1665f49ce4112196fad68d867 +size 44558 diff --git a/game/images/rooms/objects/decorations/xmas_lights/glowset_2.webp b/game/images/rooms/objects/decorations/xmas_lights/glowset_2.webp new file mode 100644 index 00000000..03fbc800 --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_lights/glowset_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d3175044f2d1339b7cb1b2803b665379baf0bd141d0ff18af0900906f05c484 +size 44384 diff --git a/game/images/rooms/objects/decorations/xmas_lights/underlay.webp b/game/images/rooms/objects/decorations/xmas_lights/underlay.webp new file mode 100644 index 00000000..4ded4a76 --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_lights/underlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f1a83f912e912af6a07fc3407c2ef050b352b3014c650cc83c6ff44fb82eb04 +size 5846 diff --git a/game/images/rooms/objects/decorations/xmas_owl.webp b/game/images/rooms/objects/decorations/xmas_owl.webp new file mode 100644 index 00000000..9f02873d --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_owl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:066b3dfbf85fa19f448bf13068eaa6238bf7fb4a8cf7ba165aa53fc9bfec8688 +size 2806 diff --git a/game/images/rooms/objects/decorations/xmas_phoenix.webp b/game/images/rooms/objects/decorations/xmas_phoenix.webp new file mode 100644 index 00000000..e3d4d0c5 --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_phoenix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74c63e4885b26981002bbd82ded547044c2980be84cb1883bdb98c0d940d1bf7 +size 8676 diff --git a/game/images/rooms/objects/decorations/xmas_wreaths.webp b/game/images/rooms/objects/decorations/xmas_wreaths.webp new file mode 100644 index 00000000..13e0f332 --- /dev/null +++ b/game/images/rooms/objects/decorations/xmas_wreaths.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08639b64d677b0efc5ef480b7038bfd9c047bfb79e3dc32a2dc5e0f9578d85b4 +size 18706 diff --git a/game/images/rooms/objects/desk/letter.webp b/game/images/rooms/objects/desk/letter.webp new file mode 100644 index 00000000..d57b7d89 --- /dev/null +++ b/game/images/rooms/objects/desk/letter.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23253ae50608bb50cc3c804442b6bf5301399a0462ae8028786eb9736ca3bb01 +size 3988 diff --git a/game/images/rooms/objects/desk/plant.webp b/game/images/rooms/objects/desk/plant.webp new file mode 100644 index 00000000..8744729c --- /dev/null +++ b/game/images/rooms/objects/desk/plant.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae34ac655d7d2404449e5f9779a46d6000377a587b9068157f5221df5c25321a +size 5512 diff --git a/game/images/rooms/objects/doors/door_hover.webp b/game/images/rooms/objects/doors/door_hover.webp new file mode 100644 index 00000000..e6301259 --- /dev/null +++ b/game/images/rooms/objects/doors/door_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8800165674fe901990a88f623a5b89771148518ce75bc0114d6d5c34d68709d6 +size 88182 diff --git a/game/images/rooms/objects/doors/door_hover_night.webp b/game/images/rooms/objects/doors/door_hover_night.webp new file mode 100644 index 00000000..f44fe365 --- /dev/null +++ b/game/images/rooms/objects/doors/door_hover_night.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a576c6f4a2d820eb82c975ecb9bc463fd61cf8d4255a061679d63a37fa080d95 +size 83158 diff --git a/game/images/rooms/objects/doors/door_idle.webp b/game/images/rooms/objects/doors/door_idle.webp new file mode 100644 index 00000000..abfff888 --- /dev/null +++ b/game/images/rooms/objects/doors/door_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:626c0433b995e0b65732c911f99db169d342ffcd7c403834d51a265a14b73f43 +size 89924 diff --git a/game/images/rooms/objects/doors/door_idle_night.webp b/game/images/rooms/objects/doors/door_idle_night.webp new file mode 100644 index 00000000..f6251461 --- /dev/null +++ b/game/images/rooms/objects/doors/door_idle_night.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afdf88d8e4e63f2d872e28c8686c6ca59659b92784b579ae68a8e5287c5e4835 +size 86056 diff --git a/game/images/rooms/objects/fireplace/fireplace_fire_01.webp b/game/images/rooms/objects/fireplace/fireplace_fire_01.webp new file mode 100644 index 00000000..49d608be --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_fire_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:313c0a913c29e495b1d4f80a3eb1920b24177430647b2f69e32bbccef52aef56 +size 11796 diff --git a/game/images/rooms/objects/fireplace/fireplace_fire_02.webp b/game/images/rooms/objects/fireplace/fireplace_fire_02.webp new file mode 100644 index 00000000..7a6c96a8 --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_fire_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed8a6a254c9b2cad79b0642d4c0a4b7734fe219c2042dad41d1b56cf2fc4f84d +size 11734 diff --git a/game/images/rooms/objects/fireplace/fireplace_fire_03.webp b/game/images/rooms/objects/fireplace/fireplace_fire_03.webp new file mode 100644 index 00000000..d997db80 --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_fire_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70cf21701e6dbb19892e772a29f2e32056389892ffcd4adc2b2dccc7b8870eeb +size 12078 diff --git a/game/images/rooms/objects/fireplace/fireplace_fire_04.webp b/game/images/rooms/objects/fireplace/fireplace_fire_04.webp new file mode 100644 index 00000000..5ef004ec --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_fire_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8dff40e41a7363011377ce9b2f1a3090fb4e76342d9b15285b77e0b7c3c9771 +size 11284 diff --git a/game/images/rooms/objects/fireplace/fireplace_fire_05.webp b/game/images/rooms/objects/fireplace/fireplace_fire_05.webp new file mode 100644 index 00000000..208b0cbc --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_fire_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c6f0de0999afc582de6bbb738372a32605ae1a45bdeea3d73299f9453f0ebad +size 12176 diff --git a/game/images/rooms/objects/fireplace/fireplace_fire_06.webp b/game/images/rooms/objects/fireplace/fireplace_fire_06.webp new file mode 100644 index 00000000..a6261c51 --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_fire_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:139f8f195ae50a66d22d404dc9d362d4688ed4cd958fb5b1a34446e862af602e +size 11814 diff --git a/game/images/rooms/objects/fireplace/fireplace_fire_07.webp b/game/images/rooms/objects/fireplace/fireplace_fire_07.webp new file mode 100644 index 00000000..f2d55121 --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_fire_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3aafe758c89c3b0b86d7ed72a9441683ac25a868179273e47d1e6af111d9000 +size 11806 diff --git a/game/images/rooms/objects/fireplace/fireplace_fire_08.webp b/game/images/rooms/objects/fireplace/fireplace_fire_08.webp new file mode 100644 index 00000000..a7cb2475 --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_fire_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2d417ddf018bade03a371e191a17ccbceec6b3b025cde03c3b46174d7a37171 +size 11634 diff --git a/game/images/rooms/objects/fireplace/fireplace_hover.webp b/game/images/rooms/objects/fireplace/fireplace_hover.webp new file mode 100644 index 00000000..7562cd40 --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b394b1c90e59ccfcc8d3508370d8b50a2aa789a6460206ef54926cdea8704fc9 +size 83496 diff --git a/game/images/rooms/objects/fireplace/fireplace_idle.webp b/game/images/rooms/objects/fireplace/fireplace_idle.webp new file mode 100644 index 00000000..3c35f4c7 --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5128aebc193366d9d2b6fa6e151299e75d1291aa0c20163a9fd10409bbd91418 +size 82394 diff --git a/game/images/rooms/objects/fireplace/fireplace_w_shadow.webp b/game/images/rooms/objects/fireplace/fireplace_w_shadow.webp new file mode 100644 index 00000000..76f5c4d6 --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_w_shadow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:070f909ad0c6d54b86b4bfd9b6d30545ddfae1395a5527f6ae5c4376d5c7384b +size 88534 diff --git a/game/images/rooms/objects/fireplace/fireplace_xmas.webp b/game/images/rooms/objects/fireplace/fireplace_xmas.webp new file mode 100644 index 00000000..a1bc8e75 --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_xmas.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a1ad898e3eea5d2bb756d83812e4e32b357b7b0e6deb6ac79aafaba469d9a82 +size 27348 diff --git a/game/images/rooms/objects/fireplace/fireplace_xmas_hover.webp b/game/images/rooms/objects/fireplace/fireplace_xmas_hover.webp new file mode 100644 index 00000000..05e64486 --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_xmas_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f78d00380981128ef6d22799d05de755bff22478aa9d5af5a9e0409505cb020 +size 26530 diff --git a/game/images/rooms/objects/fireplace/fireplace_xmas_idle.webp b/game/images/rooms/objects/fireplace/fireplace_xmas_idle.webp new file mode 100644 index 00000000..8a53d158 --- /dev/null +++ b/game/images/rooms/objects/fireplace/fireplace_xmas_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39d390f771b551f839905353b4880ba75d79a09ab10e44c2ba208a7383386506 +size 26000 diff --git a/game/images/rooms/objects/mail/owl_01.webp b/game/images/rooms/objects/mail/owl_01.webp new file mode 100644 index 00000000..5f080ce2 --- /dev/null +++ b/game/images/rooms/objects/mail/owl_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d64d2e3d68b0d931287bc2066f4315b57410d2d9967a5cf08e1c0eee79d9e931 +size 9764 diff --git a/game/images/rooms/objects/mail/owl_02.webp b/game/images/rooms/objects/mail/owl_02.webp new file mode 100644 index 00000000..307b438f --- /dev/null +++ b/game/images/rooms/objects/mail/owl_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa6c9e6cfffbe900e24c9efdbfb22e71ac67dede88d449bdbdca155a4f16f404 +size 9582 diff --git a/game/images/rooms/objects/mail/owl_03.webp b/game/images/rooms/objects/mail/owl_03.webp new file mode 100644 index 00000000..fb71934f --- /dev/null +++ b/game/images/rooms/objects/mail/owl_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9c03c2f7093c306c8bba8d4a2dbe1b3f57ed90f67047a51884bf492dc4354a5 +size 9340 diff --git a/game/images/rooms/objects/mail/owl_hover.webp b/game/images/rooms/objects/mail/owl_hover.webp new file mode 100644 index 00000000..1b06106e --- /dev/null +++ b/game/images/rooms/objects/mail/owl_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bec64890372acb0a6737a9fd54fff4d82cdde0b8c43383c2dde0fa44be9540a8 +size 9908 diff --git a/game/images/rooms/objects/mail/owl_idle_01.webp b/game/images/rooms/objects/mail/owl_idle_01.webp new file mode 100644 index 00000000..efacfdba --- /dev/null +++ b/game/images/rooms/objects/mail/owl_idle_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6cbac0b90042906caadcd81c0a3fa8ad561ae34a1153f66edf95cd8ce22585c +size 10276 diff --git a/game/images/rooms/objects/mail/owl_idle_02.webp b/game/images/rooms/objects/mail/owl_idle_02.webp new file mode 100644 index 00000000..869fef9e --- /dev/null +++ b/game/images/rooms/objects/mail/owl_idle_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e7bfced3290e9a9a3714fec704a2d72240fc4bf66c5cbc923f2858af78e5b75 +size 10124 diff --git a/game/images/rooms/objects/mail/owl_idle_03.webp b/game/images/rooms/objects/mail/owl_idle_03.webp new file mode 100644 index 00000000..f88b9c50 --- /dev/null +++ b/game/images/rooms/objects/mail/owl_idle_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fe8aed2d2f9efb2d85c673dc7a4e45a580d088f80394ac33c6040ddd1eb769a +size 9874 diff --git a/game/images/rooms/objects/parcel/idle.webp b/game/images/rooms/objects/parcel/idle.webp new file mode 100644 index 00000000..bb96245e --- /dev/null +++ b/game/images/rooms/objects/parcel/idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfae8a31b5800987df5f95aebb5ff51f984b0d8250a26c0ed36868fe0496086d +size 4112 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_01.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_01.webp new file mode 100644 index 00000000..139ad258 --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb9a69074f5efa1a310c98bab297af27e58441cec9eeed240ee4d9549a6ad653 +size 780 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_02.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_02.webp new file mode 100644 index 00000000..873ce0f5 --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21de8d1d82723412d36a0810ae2e780c7790480fcb4efb075ec3dd1d5b627e14 +size 780 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_03.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_03.webp new file mode 100644 index 00000000..a0e8f64a --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:482e6c3ea0b50991242e2b9584fe80c0c14025c9b0f58615fc59b4d5785b8fa2 +size 792 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_04.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_04.webp new file mode 100644 index 00000000..e4f0645e --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0942ee4286c40cad680d12419a1dcbac660c7e18ed2408a24198f11040e7a3dd +size 840 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_05.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_05.webp new file mode 100644 index 00000000..2a63f4f1 --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53648564f47a294e7ad3a9a4a8788c642582d6d5a849f61054732173add91c69 +size 848 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_06.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_06.webp new file mode 100644 index 00000000..14985550 --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d6352058d12c92d55b91f75e74a012734bc105aef47f1319b340580c4e0c7f3 +size 876 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_07.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_07.webp new file mode 100644 index 00000000..18dc0689 --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94afb73c2f893d49ef68e038869042fa16c13eb48d52d194cfe5eadbde771db1 +size 890 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_08.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_08.webp new file mode 100644 index 00000000..da91e7fa --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:21a879f093cd1fee3387a96a32f7107555eb43603fc101d758d762b19be4b295 +size 882 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_09.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_09.webp new file mode 100644 index 00000000..4f5452c8 --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c8cbe892dfc572dcf2c15df32351821dd224b3666f0f93d3c21af9f3e11c07dd +size 852 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_10.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_10.webp new file mode 100644 index 00000000..b2e3ac41 --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a729912c49ef4f4297f79610a54fb7b55e6fc954444c609f452c2bf25114148d +size 874 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_11.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_11.webp new file mode 100644 index 00000000..eba96fcd --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:371b818fe36011592f7aac03223699c2650a89de8b266f436e6ea868f08e9fed +size 866 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_12.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_12.webp new file mode 100644 index 00000000..015f77a2 --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b86eaeef2d250d2a12cb1a89a0cfe9a4ddb89ed3fe7fd2bd0a55d7ab41575f6a +size 876 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_13.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_13.webp new file mode 100644 index 00000000..66b55eeb --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f46f586f4792050c40bb454036ab7a0f7762e87233a7539d144d514ef41de52 +size 850 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_14.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_14.webp new file mode 100644 index 00000000..3c1ec6ac --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8ed5a814ffe60e6f6dfbab8f393e0aac10329c3e9b11c33512a713989839646 +size 872 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_15.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_15.webp new file mode 100644 index 00000000..33e19752 --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9445bed8b7d4639e06d57103104a51796e5deb41b56aac6b79bd8a49e69e8515 +size 812 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_16.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_16.webp new file mode 100644 index 00000000..736c099d --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5248f947685366be1b522f338d40f120b75ed1c45e020db5e03cfb861754ea77 +size 912 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_17.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_17.webp new file mode 100644 index 00000000..bbe99486 --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1fc305c18399082dbb259b244bf44148090f088ac8b312f7db930b88e60ac69 +size 910 diff --git a/game/images/rooms/objects/phoenix/feather_ani/pho_18.webp b/game/images/rooms/objects/phoenix/feather_ani/pho_18.webp new file mode 100644 index 00000000..bbe99486 --- /dev/null +++ b/game/images/rooms/objects/phoenix/feather_ani/pho_18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1fc305c18399082dbb259b244bf44148090f088ac8b312f7db930b88e60ac69 +size 910 diff --git a/game/images/rooms/objects/phoenix/food.webp b/game/images/rooms/objects/phoenix/food.webp new file mode 100644 index 00000000..abab91a3 --- /dev/null +++ b/game/images/rooms/objects/phoenix/food.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:695d84a407b3a82c170321c6ae968530549f9e283bbfd81ff485ae85e59c1177 +size 2030 diff --git a/game/images/rooms/objects/phoenix/phoenix_01.webp b/game/images/rooms/objects/phoenix/phoenix_01.webp new file mode 100644 index 00000000..e53f5ed4 --- /dev/null +++ b/game/images/rooms/objects/phoenix/phoenix_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc40c425a7fd6f2ff3a253d5c874acb25bd88bdd57afa53cb6c8e08d5bed6240 +size 31174 diff --git a/game/images/rooms/objects/phoenix/phoenix_02.webp b/game/images/rooms/objects/phoenix/phoenix_02.webp new file mode 100644 index 00000000..898fe30f --- /dev/null +++ b/game/images/rooms/objects/phoenix/phoenix_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0116ad5ead5b0a2269c94881230d8afb342c603fead143fe914d14d4bc02a303 +size 31232 diff --git a/game/images/rooms/objects/phoenix/phoenix_03.webp b/game/images/rooms/objects/phoenix/phoenix_03.webp new file mode 100644 index 00000000..f496f9a7 --- /dev/null +++ b/game/images/rooms/objects/phoenix/phoenix_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83c07dc8ef3596175c6b68a94391df58d56df378c9abf785efa16cbb47c50447 +size 31402 diff --git a/game/images/rooms/objects/phoenix/phoenix_hover.webp b/game/images/rooms/objects/phoenix/phoenix_hover.webp new file mode 100644 index 00000000..daadea8d --- /dev/null +++ b/game/images/rooms/objects/phoenix/phoenix_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3220b6ea2f8cb97d352db241eac26358747197a088d3e2c660dc721e85330ac6 +size 31274 diff --git a/game/images/rooms/overlays/card.webp b/game/images/rooms/overlays/card.webp new file mode 100644 index 00000000..eaeb2591 --- /dev/null +++ b/game/images/rooms/overlays/card.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:973672bc5bcfca1653b72fb8459a0188cfe0d39e5e6de3fb3b6d14053d7b9015 +size 3092 diff --git a/game/images/rooms/overlays/card_sp.webp b/game/images/rooms/overlays/card_sp.webp new file mode 100644 index 00000000..cbc7ad5f --- /dev/null +++ b/game/images/rooms/overlays/card_sp.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fa199035dae011030be9e1384f50f8de5228f5288a80f82f3b76a72e7538da6 +size 1590 diff --git a/game/images/rooms/overlays/curtains.webp b/game/images/rooms/overlays/curtains.webp new file mode 100644 index 00000000..27844ee7 --- /dev/null +++ b/game/images/rooms/overlays/curtains.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b330cda20147711b652e1d2f48a2a394271b955e2b0f9a34aa58f8ad5933a68f +size 36554 diff --git a/game/images/rooms/overlays/g_bottom.webp b/game/images/rooms/overlays/g_bottom.webp new file mode 100644 index 00000000..273e0a4c --- /dev/null +++ b/game/images/rooms/overlays/g_bottom.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57f0e484e4f5129f92c298f7cddcab730bfdfe41c41c796bc32163c031ad2981 +size 192732 diff --git a/game/images/rooms/overlays/g_circular.webp b/game/images/rooms/overlays/g_circular.webp new file mode 100644 index 00000000..b76e82c6 --- /dev/null +++ b/game/images/rooms/overlays/g_circular.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2369db819c8ee683900a6876b6df89d157657a4da62a6ea8a2429ed1dcad6083 +size 30058 diff --git a/game/images/rooms/overlays/g_left.webp b/game/images/rooms/overlays/g_left.webp new file mode 100644 index 00000000..603a027d --- /dev/null +++ b/game/images/rooms/overlays/g_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c0b511220d5e427621a17ad67a05d6583781cbb6575d97dd0b26386f0061c88 +size 193178 diff --git a/game/images/rooms/quidditch_pitch/back.webp b/game/images/rooms/quidditch_pitch/back.webp new file mode 100644 index 00000000..47dc2867 --- /dev/null +++ b/game/images/rooms/quidditch_pitch/back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37855c808d7b66ddbad80e58fbc53f4c4c49101403c8b5274dab7023999c2bea +size 116672 diff --git a/game/images/rooms/quidditch_pitch/back_overlay.webp b/game/images/rooms/quidditch_pitch/back_overlay.webp new file mode 100644 index 00000000..fa235c3a --- /dev/null +++ b/game/images/rooms/quidditch_pitch/back_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83b8547d715f87ecabd5d7e497fdc74bd7ac53cb5d884cee9539308ab139102c +size 19920 diff --git a/game/images/rooms/quidditch_pitch/butterfly/0.webp b/game/images/rooms/quidditch_pitch/butterfly/0.webp new file mode 100644 index 00000000..762faa0f --- /dev/null +++ b/game/images/rooms/quidditch_pitch/butterfly/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23fa790cb76f74339443038ecb9e54c35c93a240312ce82151500539a97c81cc +size 4522 diff --git a/game/images/rooms/quidditch_pitch/butterfly/1.webp b/game/images/rooms/quidditch_pitch/butterfly/1.webp new file mode 100644 index 00000000..6611446f --- /dev/null +++ b/game/images/rooms/quidditch_pitch/butterfly/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9e514c98cdb80a995492f7c3ce04b6b4dfeb21af09854cd35b383654fe59191 +size 3902 diff --git a/game/images/rooms/quidditch_pitch/butterfly/2.webp b/game/images/rooms/quidditch_pitch/butterfly/2.webp new file mode 100644 index 00000000..b258cce9 --- /dev/null +++ b/game/images/rooms/quidditch_pitch/butterfly/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18f61d4b4ac0c096fa563d68f13a022cdd9944eec726d1f11d0660ef6cd9a2c0 +size 3350 diff --git a/game/images/rooms/quidditch_pitch/front.webp b/game/images/rooms/quidditch_pitch/front.webp new file mode 100644 index 00000000..c769fb0f --- /dev/null +++ b/game/images/rooms/quidditch_pitch/front.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab989e640d7a71bc1e3317c9cfef269dc5fe60351049e18ee4a065a803e16fd0 +size 112782 diff --git a/game/images/rooms/quidditch_pitch/mid.webp b/game/images/rooms/quidditch_pitch/mid.webp new file mode 100644 index 00000000..fb160020 --- /dev/null +++ b/game/images/rooms/quidditch_pitch/mid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d26899d093d4ff3b562595f7deaf9246f465cee2daaa554d5bbe0ff091065731 +size 182688 diff --git a/game/images/rooms/quidditch_stands/bg_overcast.webp b/game/images/rooms/quidditch_stands/bg_overcast.webp new file mode 100644 index 00000000..3459f752 --- /dev/null +++ b/game/images/rooms/quidditch_stands/bg_overcast.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:737ed9f18859acb6269b7169c180e069d626dceb97b4cdb2f82293e93944804b +size 504764 diff --git a/game/images/rooms/quidditch_stands/bg_sun_high.webp b/game/images/rooms/quidditch_stands/bg_sun_high.webp new file mode 100644 index 00000000..3ea1826d --- /dev/null +++ b/game/images/rooms/quidditch_stands/bg_sun_high.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c0bcf35cb98860a4f16a23e247453629bec52f3f40d0ca72dc432fa7360b07a +size 548134 diff --git a/game/images/rooms/quidditch_stands/bg_sun_low.webp b/game/images/rooms/quidditch_stands/bg_sun_low.webp new file mode 100644 index 00000000..71663948 --- /dev/null +++ b/game/images/rooms/quidditch_stands/bg_sun_low.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:844c3b2df06d60be2fb27568bb75a9dd5fcb12e761dd0a0e67c9948f62151fec +size 547746 diff --git a/game/images/rooms/quidditch_stands/bludger.webp b/game/images/rooms/quidditch_stands/bludger.webp new file mode 100644 index 00000000..4db6d978 --- /dev/null +++ b/game/images/rooms/quidditch_stands/bludger.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fb38c0a14cef7ff476f4fce00732fc9adb7f43209ec290a5841fa3fafb2e252 +size 1524 diff --git a/game/images/rooms/quidditch_stands/cho_chase/cho_chase.webp b/game/images/rooms/quidditch_stands/cho_chase/cho_chase.webp new file mode 100644 index 00000000..276a9a47 --- /dev/null +++ b/game/images/rooms/quidditch_stands/cho_chase/cho_chase.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f8492b1c145143b76bcb19981e0c3e184c7db0fdfc518727a1f153cc5d91b28 +size 419794 diff --git a/game/images/rooms/quidditch_stands/cho_chase/cho_chase_goggles.webp b/game/images/rooms/quidditch_stands/cho_chase/cho_chase_goggles.webp new file mode 100644 index 00000000..27474cdb --- /dev/null +++ b/game/images/rooms/quidditch_stands/cho_chase/cho_chase_goggles.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7b4eace83f6323d60d5683ad51f7b5075db863470427a09eba446c018c70d8e +size 24012 diff --git a/game/images/rooms/quidditch_stands/cho_chase/cho_chase_panties.webp b/game/images/rooms/quidditch_stands/cho_chase/cho_chase_panties.webp new file mode 100644 index 00000000..8dd62fa5 --- /dev/null +++ b/game/images/rooms/quidditch_stands/cho_chase/cho_chase_panties.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9b815dcafec217aac08b6856c2d17a56736c485f21cb75dcb7f47442baa7f37e +size 2904 diff --git a/game/images/rooms/quidditch_stands/cho_chase/sky.webp b/game/images/rooms/quidditch_stands/cho_chase/sky.webp new file mode 100644 index 00000000..d2026abb --- /dev/null +++ b/game/images/rooms/quidditch_stands/cho_chase/sky.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17cae3d46e06849297529dc8cfc8ee2457f6974f899dd84f11f4d9d695a0ff5b +size 222400 diff --git a/game/images/rooms/quidditch_stands/cho_chase/snitch0.webp b/game/images/rooms/quidditch_stands/cho_chase/snitch0.webp new file mode 100644 index 00000000..f8244d05 --- /dev/null +++ b/game/images/rooms/quidditch_stands/cho_chase/snitch0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:775146b65e98f41ec0aab38551797192774405155e5a9379e8e2718b44d6bb40 +size 8668 diff --git a/game/images/rooms/quidditch_stands/cho_chase/snitch1.webp b/game/images/rooms/quidditch_stands/cho_chase/snitch1.webp new file mode 100644 index 00000000..e3353f44 --- /dev/null +++ b/game/images/rooms/quidditch_stands/cho_chase/snitch1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9fcbe8d91e45041102d638d5d9760d93971ac3b2f8f8ae70193bfaf5ca00ae8a +size 8602 diff --git a/game/images/rooms/quidditch_stands/cho_chase/snitch2.webp b/game/images/rooms/quidditch_stands/cho_chase/snitch2.webp new file mode 100644 index 00000000..d695bd86 --- /dev/null +++ b/game/images/rooms/quidditch_stands/cho_chase/snitch2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f25d5b61a98ff144ddfc582eb791ff40b54d37ee5d567bf84d9863ff41c8e322 +size 9206 diff --git a/game/images/rooms/quidditch_stands/crowd_bj0.webp b/game/images/rooms/quidditch_stands/crowd_bj0.webp new file mode 100644 index 00000000..c020b3f4 --- /dev/null +++ b/game/images/rooms/quidditch_stands/crowd_bj0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ab2a4677270e992ad2bf0b0c7063137e1f9903aba64c65cb33e639af1eed778 +size 3832 diff --git a/game/images/rooms/quidditch_stands/crowd_bj1.webp b/game/images/rooms/quidditch_stands/crowd_bj1.webp new file mode 100644 index 00000000..9247b13b --- /dev/null +++ b/game/images/rooms/quidditch_stands/crowd_bj1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:673da8e57ef0898aaa03d839e96040bdb7ffb1aa1ce9cf771b65c8e11bdd05b2 +size 3798 diff --git a/game/images/rooms/quidditch_stands/crowd_low_1.webp b/game/images/rooms/quidditch_stands/crowd_low_1.webp new file mode 100644 index 00000000..1e082b59 --- /dev/null +++ b/game/images/rooms/quidditch_stands/crowd_low_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c593ea48d9046189637da18f6269b0d7365d4952da8f845bd15511c6ece90e3e +size 5468 diff --git a/game/images/rooms/quidditch_stands/crowd_low_2.webp b/game/images/rooms/quidditch_stands/crowd_low_2.webp new file mode 100644 index 00000000..dedfffe9 --- /dev/null +++ b/game/images/rooms/quidditch_stands/crowd_low_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af794da816d5815ff7414ca06f954b52b301b6490d584c19ac69ead120c11de6 +size 5718 diff --git a/game/images/rooms/quidditch_stands/crowd_low_3.webp b/game/images/rooms/quidditch_stands/crowd_low_3.webp new file mode 100644 index 00000000..3c859dac --- /dev/null +++ b/game/images/rooms/quidditch_stands/crowd_low_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e94f1b7817b629ea239bcfad799c08bf11575b094aa7e914d7595c2a18a88f1e +size 6516 diff --git a/game/images/rooms/quidditch_stands/crowd_low_4.webp b/game/images/rooms/quidditch_stands/crowd_low_4.webp new file mode 100644 index 00000000..bb153349 --- /dev/null +++ b/game/images/rooms/quidditch_stands/crowd_low_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:254d5a72616a2bbaa73951dd64b2ff9fd97c59b9d5f412dcec7482efe5f29b1a +size 2970 diff --git a/game/images/rooms/quidditch_stands/crowd_tower_1.webp b/game/images/rooms/quidditch_stands/crowd_tower_1.webp new file mode 100644 index 00000000..17759bf6 --- /dev/null +++ b/game/images/rooms/quidditch_stands/crowd_tower_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1958c607a6fa2f9db3c587b4d39576f226efe8ea6a3e6aec664ddc06181a024 +size 2172 diff --git a/game/images/rooms/quidditch_stands/crowd_tower_2.webp b/game/images/rooms/quidditch_stands/crowd_tower_2.webp new file mode 100644 index 00000000..4c5f8e0f --- /dev/null +++ b/game/images/rooms/quidditch_stands/crowd_tower_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7669d83792230472d01759ad6eae56ddca15743f68a2d9318ffddc57f5d1b1c +size 2906 diff --git a/game/images/rooms/quidditch_stands/fg_overcast.webp b/game/images/rooms/quidditch_stands/fg_overcast.webp new file mode 100644 index 00000000..d0e7d3ca --- /dev/null +++ b/game/images/rooms/quidditch_stands/fg_overcast.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3cbcf151fa17efec4581874f5f5b6141177378e6c47b15a28720fbc1283d0bb1 +size 91520 diff --git a/game/images/rooms/quidditch_stands/fg_sun_high.webp b/game/images/rooms/quidditch_stands/fg_sun_high.webp new file mode 100644 index 00000000..e1ffb7f9 --- /dev/null +++ b/game/images/rooms/quidditch_stands/fg_sun_high.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:550713df23cdd34663d032e5b853c79b20a0030e01283984bb67a5468341aef3 +size 104430 diff --git a/game/images/rooms/quidditch_stands/fg_sun_low.webp b/game/images/rooms/quidditch_stands/fg_sun_low.webp new file mode 100644 index 00000000..e82bb31d --- /dev/null +++ b/game/images/rooms/quidditch_stands/fg_sun_low.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d359f870569b172594d1eac7f4aea7b92697da169093deb598444fc71df493a8 +size 103086 diff --git a/game/images/rooms/quidditch_stands/fire/0.webp b/game/images/rooms/quidditch_stands/fire/0.webp new file mode 100644 index 00000000..4f47d033 --- /dev/null +++ b/game/images/rooms/quidditch_stands/fire/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2436504da02fd100fafe054696b210dc7b150baf577c9c65c3efea1ed32701a +size 12676 diff --git a/game/images/rooms/quidditch_stands/fire/1.webp b/game/images/rooms/quidditch_stands/fire/1.webp new file mode 100644 index 00000000..03022715 --- /dev/null +++ b/game/images/rooms/quidditch_stands/fire/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:034db827076e94c02c0bfbedff98599782049bb1f2bc95ddcef9a23c4362e342 +size 11986 diff --git a/game/images/rooms/quidditch_stands/frame.webp b/game/images/rooms/quidditch_stands/frame.webp new file mode 100644 index 00000000..cfceb69e --- /dev/null +++ b/game/images/rooms/quidditch_stands/frame.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de8fcfc36a3835a894efa99449597158293b3a428b4f30b55135b89429d8756a +size 170 diff --git a/game/images/rooms/quidditch_stands/hole.webp b/game/images/rooms/quidditch_stands/hole.webp new file mode 100644 index 00000000..83dd109a --- /dev/null +++ b/game/images/rooms/quidditch_stands/hole.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94ae11a9eb3a1aa89ddf29d39a7c1afeb79d51a1c3c2b6afc0c501088bc4853c +size 10836 diff --git a/game/images/rooms/quidditch_stands/podium_overcast.webp b/game/images/rooms/quidditch_stands/podium_overcast.webp new file mode 100644 index 00000000..3c8823b1 --- /dev/null +++ b/game/images/rooms/quidditch_stands/podium_overcast.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96f2d0f744c5e68764eb7abb503ce58f31f6611a51deb25d5ed66313a51d95ca +size 13714 diff --git a/game/images/rooms/quidditch_stands/podium_sun_high.webp b/game/images/rooms/quidditch_stands/podium_sun_high.webp new file mode 100644 index 00000000..d47234b2 --- /dev/null +++ b/game/images/rooms/quidditch_stands/podium_sun_high.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70bd16f37801042690769f47726cbcab79369398b3bfd91be9bf8203dce26c4c +size 15378 diff --git a/game/images/rooms/quidditch_stands/podium_sun_low.webp b/game/images/rooms/quidditch_stands/podium_sun_low.webp new file mode 100644 index 00000000..5b172d56 --- /dev/null +++ b/game/images/rooms/quidditch_stands/podium_sun_low.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0ffbe2becc658860db67a0a0d2785d0e1ccd8a37f2ba2629933a7704a3e48e1 +size 15196 diff --git a/game/images/rooms/quidditch_stands/rain/heavy_0.webp b/game/images/rooms/quidditch_stands/rain/heavy_0.webp new file mode 100644 index 00000000..59563e32 --- /dev/null +++ b/game/images/rooms/quidditch_stands/rain/heavy_0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb3e00fd0c3a7ce2302f0e0c45f45977b54abbcca8299ed5190ce3dfdbaf852b +size 458748 diff --git a/game/images/rooms/quidditch_stands/rain/heavy_1.webp b/game/images/rooms/quidditch_stands/rain/heavy_1.webp new file mode 100644 index 00000000..6a7be2ce --- /dev/null +++ b/game/images/rooms/quidditch_stands/rain/heavy_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7dc35ed03062bfa890cf851963281af82d56801202bea28c0919eb4703d467df +size 615518 diff --git a/game/images/rooms/quidditch_stands/rain/heavy_2.webp b/game/images/rooms/quidditch_stands/rain/heavy_2.webp new file mode 100644 index 00000000..70385e35 --- /dev/null +++ b/game/images/rooms/quidditch_stands/rain/heavy_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0d88be201f5a1eb87b7f97ad1d3630676eb3668e5e059be356b76c0067b106b +size 544422 diff --git a/game/images/rooms/quidditch_stands/rain/heavysurf_0.webp b/game/images/rooms/quidditch_stands/rain/heavysurf_0.webp new file mode 100644 index 00000000..a04bbcb9 --- /dev/null +++ b/game/images/rooms/quidditch_stands/rain/heavysurf_0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:523216da2af1a9ff689deb9e0bee40085f1e2fb89cbe56010efc5ff164e55b62 +size 37556 diff --git a/game/images/rooms/quidditch_stands/rain/heavysurf_1.webp b/game/images/rooms/quidditch_stands/rain/heavysurf_1.webp new file mode 100644 index 00000000..6dac6020 --- /dev/null +++ b/game/images/rooms/quidditch_stands/rain/heavysurf_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bc7ca566c2158ee40c7ec438475a8bbcc4a292e44d6c7e16d064c07baba6dc8 +size 61448 diff --git a/game/images/rooms/quidditch_stands/rain/heavysurf_2.webp b/game/images/rooms/quidditch_stands/rain/heavysurf_2.webp new file mode 100644 index 00000000..39283fc8 --- /dev/null +++ b/game/images/rooms/quidditch_stands/rain/heavysurf_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f558269baec71bfebd02ea7ccdff36001df14c809d6099a52682b9355821508 +size 61826 diff --git a/game/images/rooms/quidditch_stands/rain/heavysurf_top_0.webp b/game/images/rooms/quidditch_stands/rain/heavysurf_top_0.webp new file mode 100644 index 00000000..6ed6fa21 --- /dev/null +++ b/game/images/rooms/quidditch_stands/rain/heavysurf_top_0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc1a4161ac59677efcd5d63f298311e59511829be780c8ff02d76d1fd1685a57 +size 8854 diff --git a/game/images/rooms/quidditch_stands/rain/heavysurf_top_1.webp b/game/images/rooms/quidditch_stands/rain/heavysurf_top_1.webp new file mode 100644 index 00000000..2f653711 --- /dev/null +++ b/game/images/rooms/quidditch_stands/rain/heavysurf_top_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b11236f733d6330d6d9351e711c4ca6eaafa149b4277eb10136ecb3fe09cf14a +size 13374 diff --git a/game/images/rooms/quidditch_stands/rain/heavysurf_top_2.webp b/game/images/rooms/quidditch_stands/rain/heavysurf_top_2.webp new file mode 100644 index 00000000..f3846a2f --- /dev/null +++ b/game/images/rooms/quidditch_stands/rain/heavysurf_top_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c68aa8a60a3a381d00ff894e09a2b3e0785492a902e1d1b0dee089680120fbd +size 13124 diff --git a/game/images/rooms/quidditch_stands/spotlight.webp b/game/images/rooms/quidditch_stands/spotlight.webp new file mode 100644 index 00000000..961fbbee --- /dev/null +++ b/game/images/rooms/quidditch_stands/spotlight.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6ff24b4ab1116e67df59fb3e3b5c0c2f2e4c354396473da4079f315d6faf27a +size 60638 diff --git a/game/images/rooms/quidditch_stands2/bg_sun_low.webp b/game/images/rooms/quidditch_stands2/bg_sun_low.webp new file mode 100644 index 00000000..c8a141c0 --- /dev/null +++ b/game/images/rooms/quidditch_stands2/bg_sun_low.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e3da24c21901fdba0be8f0afaeb8f605f69e9b2bb3ee35cd6ac017b9517a1dc +size 960336 diff --git a/game/images/rooms/quidditch_stands2/crowd_low_1.webp b/game/images/rooms/quidditch_stands2/crowd_low_1.webp new file mode 100644 index 00000000..3ab7d3b1 --- /dev/null +++ b/game/images/rooms/quidditch_stands2/crowd_low_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf34d70e53227a1a0914e318c45d9352488400620ec97faa70450e854daca5a7 +size 5362 diff --git a/game/images/rooms/quidditch_stands2/crowd_low_2.webp b/game/images/rooms/quidditch_stands2/crowd_low_2.webp new file mode 100644 index 00000000..337a3564 --- /dev/null +++ b/game/images/rooms/quidditch_stands2/crowd_low_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:40bf1ea25d2bd734aab0f4e51f4af2419ac468f35531146b0840eb04335f4c0c +size 5388 diff --git a/game/images/rooms/quidditch_stands2/crowd_low_3.webp b/game/images/rooms/quidditch_stands2/crowd_low_3.webp new file mode 100644 index 00000000..6a0aea9b --- /dev/null +++ b/game/images/rooms/quidditch_stands2/crowd_low_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a17f492b80dbd73c9ef1c72d96edf8448ccbe8f7e3ceccda8263d0311708cf6 +size 6506 diff --git a/game/images/rooms/quidditch_stands2/crowd_low_4.webp b/game/images/rooms/quidditch_stands2/crowd_low_4.webp new file mode 100644 index 00000000..c82af033 --- /dev/null +++ b/game/images/rooms/quidditch_stands2/crowd_low_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36f9a958fa71a2f6eea2942619bbd366ddc70f3cfa3fc18fe082c8ca65177a16 +size 2950 diff --git a/game/images/rooms/quidditch_stands2/crowd_tower_1.webp b/game/images/rooms/quidditch_stands2/crowd_tower_1.webp new file mode 100644 index 00000000..79c61c55 --- /dev/null +++ b/game/images/rooms/quidditch_stands2/crowd_tower_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89809d3154de37207fd669f95a2e7703e0a67a164d19b03e865ac0019506c2ee +size 2166 diff --git a/game/images/rooms/quidditch_stands2/crowd_tower_2.webp b/game/images/rooms/quidditch_stands2/crowd_tower_2.webp new file mode 100644 index 00000000..6040f05f --- /dev/null +++ b/game/images/rooms/quidditch_stands2/crowd_tower_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87f91137ebcbf2c1a43e4599b6d141a6e2d3c041c8e4eeb053f1a90a52acfbfa +size 2890 diff --git a/game/images/rooms/quidditch_stands2/fg_sun_low.webp b/game/images/rooms/quidditch_stands2/fg_sun_low.webp new file mode 100644 index 00000000..1fd838c3 --- /dev/null +++ b/game/images/rooms/quidditch_stands2/fg_sun_low.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ff33878fc55f17b2747f474a233c01b5f47afe0b8e5c19017ec2ee32e502eda +size 129450 diff --git a/game/images/rooms/room_of_requirement/Mirror.webp b/game/images/rooms/room_of_requirement/Mirror.webp new file mode 100644 index 00000000..8977d3d5 --- /dev/null +++ b/game/images/rooms/room_of_requirement/Mirror.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68370c0da103a43412c3576e1fdb8bdea80ceae2d0265b555483e6c574cb7ba8 +size 31666 diff --git a/game/images/rooms/room_of_requirement/agrabah.webp b/game/images/rooms/room_of_requirement/agrabah.webp new file mode 100644 index 00000000..44f1810d --- /dev/null +++ b/game/images/rooms/room_of_requirement/agrabah.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0ab2511d6f2ffa7269dfef4989333768e21ccd36646b4888a7ef87703ef2c8d +size 273046 diff --git a/game/images/rooms/room_of_requirement/bg.webp b/game/images/rooms/room_of_requirement/bg.webp new file mode 100644 index 00000000..f4eb925b --- /dev/null +++ b/game/images/rooms/room_of_requirement/bg.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a11a04cb674673c16cfae7b19c1e28978bbf4acd8e3b74e72e104ff23139fae +size 296300 diff --git a/game/images/rooms/room_of_requirement/corridor.webp b/game/images/rooms/room_of_requirement/corridor.webp new file mode 100644 index 00000000..0a5dd389 --- /dev/null +++ b/game/images/rooms/room_of_requirement/corridor.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:279c9ecc0db9a3b8acacd6122c945cada0343ba497594056c169bd7166025cb7 +size 202540 diff --git a/game/images/rooms/room_of_requirement/dark_overlay.webp b/game/images/rooms/room_of_requirement/dark_overlay.webp new file mode 100644 index 00000000..c77be9d3 --- /dev/null +++ b/game/images/rooms/room_of_requirement/dark_overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d515fbcbef3a591e7715b9075909d271e32ce359462bf2d76b7b21b2ecee8fe +size 4522 diff --git a/game/images/rooms/room_of_requirement/dark_overlay_1.webp b/game/images/rooms/room_of_requirement/dark_overlay_1.webp new file mode 100644 index 00000000..6be0ec3b --- /dev/null +++ b/game/images/rooms/room_of_requirement/dark_overlay_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e9b95ea31e506e3cc5a235c29f4fc73ec616c5f82ac22f556e8af7bf4e1cd49 +size 35566 diff --git a/game/images/rooms/room_of_requirement/dark_overlay_2.webp b/game/images/rooms/room_of_requirement/dark_overlay_2.webp new file mode 100644 index 00000000..73860f36 --- /dev/null +++ b/game/images/rooms/room_of_requirement/dark_overlay_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba5f8316db223f83cdc531d1f20ce950a675e8b86ee88d86fa355c3d94030738 +size 34452 diff --git a/game/images/rooms/room_of_requirement/dark_overlay_3.webp b/game/images/rooms/room_of_requirement/dark_overlay_3.webp new file mode 100644 index 00000000..860e55c6 --- /dev/null +++ b/game/images/rooms/room_of_requirement/dark_overlay_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9fd12448fb37e54ee9e107409ed2dbd6dc13ffe0629d5668ac5f60efed167cd2 +size 34458 diff --git a/game/images/rooms/room_of_requirement/day_to_night.webp b/game/images/rooms/room_of_requirement/day_to_night.webp new file mode 100644 index 00000000..78017b81 --- /dev/null +++ b/game/images/rooms/room_of_requirement/day_to_night.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02f35c9c356f950e5a7fc7d02a20113026bb493b5a2b86238ef539c8f408ecdb +size 171622 diff --git a/game/images/rooms/room_of_requirement/foreground.webp b/game/images/rooms/room_of_requirement/foreground.webp new file mode 100644 index 00000000..d797b338 --- /dev/null +++ b/game/images/rooms/room_of_requirement/foreground.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1c45f8e0a8648522f48cbac9c24c8fd9761bea513dad0c57dbfb6117e113f22 +size 129234 diff --git a/game/images/rooms/room_of_requirement/horns.webp b/game/images/rooms/room_of_requirement/horns.webp new file mode 100644 index 00000000..287843d5 --- /dev/null +++ b/game/images/rooms/room_of_requirement/horns.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c7d216e29d0046114e3d9927266a2e1bdb34cd01e604836f7676a3a7cd776cf +size 4316 diff --git a/game/images/rooms/room_of_requirement/mirror_hover.webp b/game/images/rooms/room_of_requirement/mirror_hover.webp new file mode 100644 index 00000000..05af05b4 --- /dev/null +++ b/game/images/rooms/room_of_requirement/mirror_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5e46a9206addbea42e2c861b290bc8a17780ef197c1b2d2853c7c0b89bbb543 +size 29022 diff --git a/game/images/rooms/room_of_requirement/paperandmic.webp b/game/images/rooms/room_of_requirement/paperandmic.webp new file mode 100644 index 00000000..3d0ae052 --- /dev/null +++ b/game/images/rooms/room_of_requirement/paperandmic.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3b7c80d2362d57f6a06fe48f295f2f2158b143a8a7089c7aabf357929443461 +size 1270 diff --git a/game/images/rooms/room_of_requirement/table.webp b/game/images/rooms/room_of_requirement/table.webp new file mode 100644 index 00000000..c20def1d --- /dev/null +++ b/game/images/rooms/room_of_requirement/table.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85e78ddf67a30ddd7887743f8f0b6fb65c32724f0eae2db8f62410df620438a2 +size 10010 diff --git a/game/images/rooms/room_of_requirement/table_hat.webp b/game/images/rooms/room_of_requirement/table_hat.webp new file mode 100644 index 00000000..ba39dcae --- /dev/null +++ b/game/images/rooms/room_of_requirement/table_hat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47d61f179f7e4ba4886d510ef5f7339c8ab61f28772eb24748a3812d14328faa +size 2940 diff --git a/game/images/rooms/room_of_requirement/web.webp b/game/images/rooms/room_of_requirement/web.webp new file mode 100644 index 00000000..2c3134a0 --- /dev/null +++ b/game/images/rooms/room_of_requirement/web.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ae2d471d2fbec361aa11a4254f205280cedbbf8890fa07582f6d206683c7dc1 +size 4580 diff --git a/game/images/rooms/room_of_requirement/whose_points.webp b/game/images/rooms/room_of_requirement/whose_points.webp new file mode 100644 index 00000000..282a35ae --- /dev/null +++ b/game/images/rooms/room_of_requirement/whose_points.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa92161c20abcd7d9abf1dc7d5e66f15cb1416756fb1aae929f779f864cd8477 +size 231384 diff --git a/game/images/rooms/seventh_floor/bg.webp b/game/images/rooms/seventh_floor/bg.webp new file mode 100644 index 00000000..be9aeb0e --- /dev/null +++ b/game/images/rooms/seventh_floor/bg.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77139205cd55b4ac3663cfa51ca7029ccac813f1585f74d0f8bd23616c0539db +size 289844 diff --git a/game/images/rooms/seventh_floor/door.webp b/game/images/rooms/seventh_floor/door.webp new file mode 100644 index 00000000..3fdaf199 --- /dev/null +++ b/game/images/rooms/seventh_floor/door.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:418f4b45853c7d99bd56e98b5a8aa522e220e6d2ddfc3426f79388e390ac6a92 +size 69848 diff --git a/game/images/rooms/seventh_floor/fire0.webp b/game/images/rooms/seventh_floor/fire0.webp new file mode 100644 index 00000000..aca5d7e1 --- /dev/null +++ b/game/images/rooms/seventh_floor/fire0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0820519f8b128efd48710dede3808d303f482c0a1f2605c9ddb6243b8a1cdf8e +size 55096 diff --git a/game/images/rooms/seventh_floor/fire1.webp b/game/images/rooms/seventh_floor/fire1.webp new file mode 100644 index 00000000..c67ab22c --- /dev/null +++ b/game/images/rooms/seventh_floor/fire1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05d077d079f198b885f84a1bebb59faabe183c077d28e257d22331c7e8c04e8b +size 56286 diff --git a/game/images/rooms/seventh_floor/fire2.webp b/game/images/rooms/seventh_floor/fire2.webp new file mode 100644 index 00000000..e299df03 --- /dev/null +++ b/game/images/rooms/seventh_floor/fire2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1fcf1891314b00ef94aca0ab9b5dd9383fe3ca65c092d61fed1af22959f0505 +size 56898 diff --git a/game/images/rooms/seventh_floor/fire3.webp b/game/images/rooms/seventh_floor/fire3.webp new file mode 100644 index 00000000..a094d14e --- /dev/null +++ b/game/images/rooms/seventh_floor/fire3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6962f93479c0411f9d0fec2e064bb118f8b2d4f01f518fd2144c358c8e5caf5b +size 56470 diff --git a/game/images/rooms/seventh_floor/fire4.webp b/game/images/rooms/seventh_floor/fire4.webp new file mode 100644 index 00000000..60f59137 --- /dev/null +++ b/game/images/rooms/seventh_floor/fire4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6dcbd7bfa191469fb72b091dede245aaa91541c10147f5b9de97d7258f580986 +size 57622 diff --git a/game/images/rooms/seventh_floor/fire5.webp b/game/images/rooms/seventh_floor/fire5.webp new file mode 100644 index 00000000..0d0e8f3b --- /dev/null +++ b/game/images/rooms/seventh_floor/fire5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c2dd900030853276a9b16593dfc2c826f22cf073ae57f52062061615719dc37f +size 54802 diff --git a/game/images/rooms/seventh_floor/fire_basin.webp b/game/images/rooms/seventh_floor/fire_basin.webp new file mode 100644 index 00000000..2b9bb8ab --- /dev/null +++ b/game/images/rooms/seventh_floor/fire_basin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5b6e4a005d69ee0c0353d61265392a3dbbd509b519bff8b3360c4df77ae7cbe +size 13568 diff --git a/game/images/rooms/snape_office/bg.webp b/game/images/rooms/snape_office/bg.webp new file mode 100644 index 00000000..71c697c3 --- /dev/null +++ b/game/images/rooms/snape_office/bg.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba2da882470b458c1f8c2d887ff6fe281c0cccbb9340dc951582486200e5afc9 +size 956236 diff --git a/game/images/rooms/snape_office/brewing_station_bloom.webp b/game/images/rooms/snape_office/brewing_station_bloom.webp new file mode 100644 index 00000000..70f37ca8 --- /dev/null +++ b/game/images/rooms/snape_office/brewing_station_bloom.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4dc0f25428d4aa0f4f3a673410baadb28db3004f6c950c7dd89a2bb8d706ec5b +size 4418 diff --git a/game/images/rooms/snape_office/brewing_station_off.webp b/game/images/rooms/snape_office/brewing_station_off.webp new file mode 100644 index 00000000..2b71f2f3 --- /dev/null +++ b/game/images/rooms/snape_office/brewing_station_off.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f69934d492455bda3ab6fd22b4605ce789c5a549b85766ec79b98aec6606f6d +size 38858 diff --git a/game/images/rooms/snape_office/brewing_station_on.webp b/game/images/rooms/snape_office/brewing_station_on.webp new file mode 100644 index 00000000..a92d3bb7 --- /dev/null +++ b/game/images/rooms/snape_office/brewing_station_on.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1b1a6298b3805a105db0e749ad4e73851aa13541068dc51de55671465e89375 +size 38944 diff --git a/game/images/rooms/snape_office/candelabra.webp b/game/images/rooms/snape_office/candelabra.webp new file mode 100644 index 00000000..9a866e5d --- /dev/null +++ b/game/images/rooms/snape_office/candelabra.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4429a33b307261c14b6bce3e49c0614bd603d74cd20678da52aaa1a2a270afe +size 22248 diff --git a/game/images/rooms/snape_office/desk.webp b/game/images/rooms/snape_office/desk.webp new file mode 100644 index 00000000..4899100f --- /dev/null +++ b/game/images/rooms/snape_office/desk.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:545bbf8c731edec137181b0670b1374487cd54d363f67c1d2d4682a859c26008 +size 16448 diff --git a/game/images/rooms/snape_office/door.webp b/game/images/rooms/snape_office/door.webp new file mode 100644 index 00000000..b8ff3063 --- /dev/null +++ b/game/images/rooms/snape_office/door.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f39cadc2d5c6a2709ddfb914244856cdd6182a67fe469fda01620c588e731a79 +size 83880 diff --git a/game/images/rooms/snape_office/drip/01.webp b/game/images/rooms/snape_office/drip/01.webp new file mode 100644 index 00000000..c4001d42 --- /dev/null +++ b/game/images/rooms/snape_office/drip/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27a22e047190ce45a2f66de2a88e21c312c5103583b89a3c68a12877c23ce897 +size 132 diff --git a/game/images/rooms/snape_office/drip/02.webp b/game/images/rooms/snape_office/drip/02.webp new file mode 100644 index 00000000..bba3dfe1 --- /dev/null +++ b/game/images/rooms/snape_office/drip/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af3bf6de9af00e1830c03cc918c38271ba7dd9d6c5894aea846a8cad55c70424 +size 140 diff --git a/game/images/rooms/snape_office/drip/03.webp b/game/images/rooms/snape_office/drip/03.webp new file mode 100644 index 00000000..51e617c8 --- /dev/null +++ b/game/images/rooms/snape_office/drip/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cdfaf26c8c8e07547f11e0654f921db6772eb0bb62c6c85b2d5bff334e09d15 +size 126 diff --git a/game/images/rooms/snape_office/drip/04.webp b/game/images/rooms/snape_office/drip/04.webp new file mode 100644 index 00000000..496888fb --- /dev/null +++ b/game/images/rooms/snape_office/drip/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9bd8ee49e881056a1ea469f9d322b57cf875f914ec317f80c1d372542efe36c8 +size 142 diff --git a/game/images/rooms/snape_office/lamp/01.webp b/game/images/rooms/snape_office/lamp/01.webp new file mode 100644 index 00000000..1579ecab --- /dev/null +++ b/game/images/rooms/snape_office/lamp/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5f2dbb57145b4b293515a8f94eb64e9251fe1f50e875244d4190ac3e7b5eff3 +size 650 diff --git a/game/images/rooms/snape_office/lamp/02.webp b/game/images/rooms/snape_office/lamp/02.webp new file mode 100644 index 00000000..184c90e4 --- /dev/null +++ b/game/images/rooms/snape_office/lamp/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62b445a83fdbc423f57e7d8fd8b70d1c43c2181dd3d771ce295e1335d262aaec +size 652 diff --git a/game/images/rooms/snape_office/lamp/03.webp b/game/images/rooms/snape_office/lamp/03.webp new file mode 100644 index 00000000..f050a618 --- /dev/null +++ b/game/images/rooms/snape_office/lamp/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fb41fe680c7925c54e3aff03296635eab6a02a51ec98015f3939aca6741051c +size 654 diff --git a/game/images/rooms/snape_office/lamp/glow.webp b/game/images/rooms/snape_office/lamp/glow.webp new file mode 100644 index 00000000..ed369c4d --- /dev/null +++ b/game/images/rooms/snape_office/lamp/glow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4837215b1a8681f91eb3f288ee85fd7253001d81d7c0e36046ed62cc775b5fab +size 10616 diff --git a/game/images/rooms/snape_office/picture.webp b/game/images/rooms/snape_office/picture.webp new file mode 100644 index 00000000..c69e7d0a --- /dev/null +++ b/game/images/rooms/snape_office/picture.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ebebc3ad8f173f7e788630355907f8d36b2b4f14a6888f1f399c6794b1c1e2c +size 21662 diff --git a/game/images/rooms/snape_office/shelves.webp b/game/images/rooms/snape_office/shelves.webp new file mode 100644 index 00000000..032fc0e5 --- /dev/null +++ b/game/images/rooms/snape_office/shelves.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36f54689ebfc18b50f33b07be97b1df11a0b27c72602548daa7389b5f207e087 +size 56222 diff --git a/game/images/rooms/snape_office/shelves_alt.webp b/game/images/rooms/snape_office/shelves_alt.webp new file mode 100644 index 00000000..a82f93d3 --- /dev/null +++ b/game/images/rooms/snape_office/shelves_alt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2dd87f12729806a66d484a8617eb1c04d056258270cd6443553df59464ddc23 +size 86534 diff --git a/game/images/rooms/snape_office/smoke/01.webp b/game/images/rooms/snape_office/smoke/01.webp new file mode 100644 index 00000000..d393707c --- /dev/null +++ b/game/images/rooms/snape_office/smoke/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82f61c5aeea91749b5f39c928ebad781a70c9dcd4d576ae712c4a34e53aa75af +size 930 diff --git a/game/images/rooms/snape_office/smoke/02.webp b/game/images/rooms/snape_office/smoke/02.webp new file mode 100644 index 00000000..8eea3d22 --- /dev/null +++ b/game/images/rooms/snape_office/smoke/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b50339b9e0889c3e25eefff30ad190b15ea9f85920feb6ce53a07bcba07ded8c +size 916 diff --git a/game/images/rooms/snape_office/smoke/03.webp b/game/images/rooms/snape_office/smoke/03.webp new file mode 100644 index 00000000..32c5936f --- /dev/null +++ b/game/images/rooms/snape_office/smoke/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e496355c49ebd95ed9a343d8c984cf955808a08c2175971973bce37d2578d88 +size 1016 diff --git a/game/images/rooms/snape_office/smoke/04.webp b/game/images/rooms/snape_office/smoke/04.webp new file mode 100644 index 00000000..de5b081e --- /dev/null +++ b/game/images/rooms/snape_office/smoke/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c773a3952ceaf1b915c4563d0014a69caa2c1b9e1d5115891d44b0ffca41c84 +size 1058 diff --git a/game/images/rooms/snape_office/smoke/05.webp b/game/images/rooms/snape_office/smoke/05.webp new file mode 100644 index 00000000..23847981 --- /dev/null +++ b/game/images/rooms/snape_office/smoke/05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e4867352ef2386583d9c7aad78043104d3545e845c6e3b775707c65d04f63e2 +size 1064 diff --git a/game/images/rooms/snape_office/smoke/06.webp b/game/images/rooms/snape_office/smoke/06.webp new file mode 100644 index 00000000..cdeb5f2f --- /dev/null +++ b/game/images/rooms/snape_office/smoke/06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3714ef95807041ada9ba49c67e64e9b3a9f5267a61af1eccef4913ad6d8d5313 +size 1030 diff --git a/game/images/rooms/snape_office/smoke/07.webp b/game/images/rooms/snape_office/smoke/07.webp new file mode 100644 index 00000000..f8caaf76 --- /dev/null +++ b/game/images/rooms/snape_office/smoke/07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06e38a66c5d7c8894f55269db9ca93296e55d68a0c5cf034e5baf6542b24a3a2 +size 966 diff --git a/game/images/rooms/snape_office/smoke/08.webp b/game/images/rooms/snape_office/smoke/08.webp new file mode 100644 index 00000000..7d8641b7 --- /dev/null +++ b/game/images/rooms/snape_office/smoke/08.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54be4fc00ccc618f4795080e3c96af763b4399a6fd805576042be6a5fc7536c4 +size 904 diff --git a/game/images/rooms/snape_office/smoke/09.webp b/game/images/rooms/snape_office/smoke/09.webp new file mode 100644 index 00000000..2bc4661b --- /dev/null +++ b/game/images/rooms/snape_office/smoke/09.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3ff370d7accd5cbc3d5c144a41baef85c2a2002a1f36f566c8ad9ded429ddca +size 1044 diff --git a/game/images/rooms/snape_office/smoke/10.webp b/game/images/rooms/snape_office/smoke/10.webp new file mode 100644 index 00000000..0e0810b0 --- /dev/null +++ b/game/images/rooms/snape_office/smoke/10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9049acacdcba99e204535d2ec9652e9c0bfe7461f38531886fc4c0560975da12 +size 1064 diff --git a/game/images/rooms/snape_office/smoke/11.webp b/game/images/rooms/snape_office/smoke/11.webp new file mode 100644 index 00000000..f6fd9e57 --- /dev/null +++ b/game/images/rooms/snape_office/smoke/11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee4c307a1215dc24e359e3001581a9ab7bd86b10f79a08b7e601ee07e764d985 +size 1034 diff --git a/game/images/rooms/snape_office/smoke/12.webp b/game/images/rooms/snape_office/smoke/12.webp new file mode 100644 index 00000000..facbab7e --- /dev/null +++ b/game/images/rooms/snape_office/smoke/12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4d4b035ed25ebba98d32700f1df5be6f8b65cb383ee62c4be06ca92cbddb915 +size 978 diff --git a/game/images/rooms/snape_office/smoke/13.webp b/game/images/rooms/snape_office/smoke/13.webp new file mode 100644 index 00000000..1ffbe7aa --- /dev/null +++ b/game/images/rooms/snape_office/smoke/13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f143bc1e36c326a2c73ece145e53b6f1120b9e286df2a31ed4787c5adfdc0a18 +size 970 diff --git a/game/images/rooms/snape_office/statue.webp b/game/images/rooms/snape_office/statue.webp new file mode 100644 index 00000000..dc5ff164 --- /dev/null +++ b/game/images/rooms/snape_office/statue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76be7e0420123732ade39ce92a27ae7c028f828defb9c195e6ca8741a96463cc +size 10266 diff --git a/game/images/rooms/snape_office/vignette.webp b/game/images/rooms/snape_office/vignette.webp new file mode 100644 index 00000000..a7e81b5d --- /dev/null +++ b/game/images/rooms/snape_office/vignette.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8b3fc86a9a50d14a7cbf2708f347777b2be7da7aefc4c0600204ecb8f75a205 +size 18658 diff --git a/game/images/rooms/snape_office/wax/01.webp b/game/images/rooms/snape_office/wax/01.webp new file mode 100644 index 00000000..8af0ab14 --- /dev/null +++ b/game/images/rooms/snape_office/wax/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29867630a08294d9ee601705ebddd59d78bd79e71eebd20304bd68fc51bb0915 +size 194 diff --git a/game/images/rooms/snape_office/wax/02.webp b/game/images/rooms/snape_office/wax/02.webp new file mode 100644 index 00000000..0a778c42 --- /dev/null +++ b/game/images/rooms/snape_office/wax/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f0ad22664c282f39c8052a7c7d2431b337ecc8f6b95a5df79ae9865252fba72 +size 238 diff --git a/game/images/rooms/snape_office/wax/03.webp b/game/images/rooms/snape_office/wax/03.webp new file mode 100644 index 00000000..a6683cba --- /dev/null +++ b/game/images/rooms/snape_office/wax/03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65ed0ff3474969aacf5e16d3b1fbe2beb08394b0af292d87c318ea8064180793 +size 260 diff --git a/game/images/rooms/snape_office/wax/04.webp b/game/images/rooms/snape_office/wax/04.webp new file mode 100644 index 00000000..d97faeb4 --- /dev/null +++ b/game/images/rooms/snape_office/wax/04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50b81dd7ca29e846ba7b9dafc338b10fd13b3695e671bcf9001657170d0ddb2d +size 244 diff --git a/game/images/rooms/snape_office/wax/05.webp b/game/images/rooms/snape_office/wax/05.webp new file mode 100644 index 00000000..30ee5e1c --- /dev/null +++ b/game/images/rooms/snape_office/wax/05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:598eff6c220b8691263a0a875ac92259c0821adb8347f53a6fa55574be75795f +size 242 diff --git a/game/images/rooms/weasley_store/cash register.webp b/game/images/rooms/weasley_store/cash register.webp new file mode 100644 index 00000000..128109d1 --- /dev/null +++ b/game/images/rooms/weasley_store/cash register.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d247445377c44ae1863d30ced09ddcb59d18715e41e2d1af82d8883a849b80a +size 20282 diff --git a/game/images/rooms/weasley_store/chairR.webp b/game/images/rooms/weasley_store/chairR.webp new file mode 100644 index 00000000..50e67734 --- /dev/null +++ b/game/images/rooms/weasley_store/chairR.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e83576872a759819457011c9693887c2ce07b4e63e6b62bae20af3a77ec261f2 +size 11540 diff --git a/game/images/rooms/weasley_store/corridor.webp b/game/images/rooms/weasley_store/corridor.webp new file mode 100644 index 00000000..0a5dd389 --- /dev/null +++ b/game/images/rooms/weasley_store/corridor.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:279c9ecc0db9a3b8acacd6122c945cada0343ba497594056c169bd7166025cb7 +size 202540 diff --git a/game/images/rooms/weasley_store/counterL.webp b/game/images/rooms/weasley_store/counterL.webp new file mode 100644 index 00000000..b9edc664 --- /dev/null +++ b/game/images/rooms/weasley_store/counterL.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b645f38194de5dd896369fe189ecb238cc99e833d33978eed5f00b75970ebcd +size 5870 diff --git a/game/images/rooms/weasley_store/counterR.webp b/game/images/rooms/weasley_store/counterR.webp new file mode 100644 index 00000000..14def7ee --- /dev/null +++ b/game/images/rooms/weasley_store/counterR.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82b98a168555b583d7c5a72eb717424fb2fe0688e76a637570db7d587bc01a60 +size 6750 diff --git a/game/images/rooms/weasley_store/door2.webp b/game/images/rooms/weasley_store/door2.webp new file mode 100644 index 00000000..6a8d7d58 --- /dev/null +++ b/game/images/rooms/weasley_store/door2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a79e4b6b31f8d9d30f8b6d5049aa400727f5aed3f2ccd07d2c4603ce9d39800 +size 8412 diff --git a/game/images/rooms/weasley_store/entranceR.webp b/game/images/rooms/weasley_store/entranceR.webp new file mode 100644 index 00000000..b65a6286 --- /dev/null +++ b/game/images/rooms/weasley_store/entranceR.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93cc4e5e9f3699013b8b7ef736f5874c0509babd929c778edcc7ed8e77386a85 +size 13408 diff --git a/game/images/rooms/weasley_store/store_day.webp b/game/images/rooms/weasley_store/store_day.webp new file mode 100644 index 00000000..e560a519 --- /dev/null +++ b/game/images/rooms/weasley_store/store_day.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fdfd245637f61cdb09e6b5a9c9ffcc7d430fa721f552479465acb2a166c7f7a +size 222260 diff --git a/game/images/rooms/weasley_store/store_empty.webp b/game/images/rooms/weasley_store/store_empty.webp new file mode 100644 index 00000000..3934db8f --- /dev/null +++ b/game/images/rooms/weasley_store/store_empty.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:905aab2a8344a191f41f94403d2819e09554467022fad20c9c38a544af39b456 +size 168246 diff --git a/game/images/rooms/weasley_store/store_empty2.webp b/game/images/rooms/weasley_store/store_empty2.webp new file mode 100644 index 00000000..1f2c6812 --- /dev/null +++ b/game/images/rooms/weasley_store/store_empty2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19b7404515e919b816a258d038199ea5f4d105615ac0ddcef11900a1f9ad4e79 +size 214994 diff --git a/game/images/rooms/weasley_store/store_night.webp b/game/images/rooms/weasley_store/store_night.webp new file mode 100644 index 00000000..ca33e6b4 --- /dev/null +++ b/game/images/rooms/weasley_store/store_night.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:239ba5a8e434368a8d9f3bfdee60afd4730db5fdfaab538f3a63ebc78f754db1 +size 259442 diff --git a/game/images/scrolls/1.webp b/game/images/scrolls/1.webp new file mode 100644 index 00000000..14f2445b --- /dev/null +++ b/game/images/scrolls/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66fed89ef84dbdf9280d7950da9134f7710a1a1232b3ca2dd82d1f53cf5c7ab5 +size 15150 diff --git a/game/images/scrolls/10.webp b/game/images/scrolls/10.webp new file mode 100644 index 00000000..edd978f4 --- /dev/null +++ b/game/images/scrolls/10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ce1cdd1955d367bf55f33cddb9964b7ec999495cb1aa77d8125f842fd283351 +size 581034 diff --git a/game/images/scrolls/11.webp b/game/images/scrolls/11.webp new file mode 100644 index 00000000..31550ca4 --- /dev/null +++ b/game/images/scrolls/11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a26b553a9867f2940d794c0d731682337d67afaca777cb0bd5e0180f4a3b516 +size 240966 diff --git a/game/images/scrolls/12.webp b/game/images/scrolls/12.webp new file mode 100644 index 00000000..d979414d --- /dev/null +++ b/game/images/scrolls/12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:afac1c42a0234089da29bca7cbcdb1f7bc455f5ae116f08942306ff09b4c81c6 +size 202504 diff --git a/game/images/scrolls/13.webp b/game/images/scrolls/13.webp new file mode 100644 index 00000000..eaf82468 --- /dev/null +++ b/game/images/scrolls/13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22a58cc58fb29c331b652d28faed66d24300d20a8d3fd58e8d4638c22bf46a25 +size 159868 diff --git a/game/images/scrolls/14.webp b/game/images/scrolls/14.webp new file mode 100644 index 00000000..be6cc55b --- /dev/null +++ b/game/images/scrolls/14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae64155091080ef0466dedda00382d1fa1f757fbebc883e7380e914976571ff2 +size 112232 diff --git a/game/images/scrolls/15.webp b/game/images/scrolls/15.webp new file mode 100644 index 00000000..fe044d29 --- /dev/null +++ b/game/images/scrolls/15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3195126cc3b52145eaaaff39b10a187fef964059763dac2719006e701bc5eac0 +size 240404 diff --git a/game/images/scrolls/16.webp b/game/images/scrolls/16.webp new file mode 100644 index 00000000..bafe10c6 --- /dev/null +++ b/game/images/scrolls/16.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:730159b97d3999258556eb173e6f931921f23ea31caf60b1474b7382685394c2 +size 128790 diff --git a/game/images/scrolls/17.webp b/game/images/scrolls/17.webp new file mode 100644 index 00000000..0b700b8b --- /dev/null +++ b/game/images/scrolls/17.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43196bee4c78abf0e11e53cdbff2e9f909f0a40643312619d87435ee1331dc5f +size 138386 diff --git a/game/images/scrolls/18.webp b/game/images/scrolls/18.webp new file mode 100644 index 00000000..5153b561 --- /dev/null +++ b/game/images/scrolls/18.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9c461c565790fafaffb73c1e426f4522f113aea6089b9e345b4a7f1c35d3623 +size 506450 diff --git a/game/images/scrolls/19.webp b/game/images/scrolls/19.webp new file mode 100644 index 00000000..8a0a057e --- /dev/null +++ b/game/images/scrolls/19.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4561e1a917f69cf076663c46c5b7f77877d514611f53e67bd284b95ec54e4b31 +size 605630 diff --git a/game/images/scrolls/2.webp b/game/images/scrolls/2.webp new file mode 100644 index 00000000..b3111b41 --- /dev/null +++ b/game/images/scrolls/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c968d7b230755535b1143b1b2006223ec0b89595fa5d554f55f7d46d6a3ab85e +size 97796 diff --git a/game/images/scrolls/20.webp b/game/images/scrolls/20.webp new file mode 100644 index 00000000..4e396622 --- /dev/null +++ b/game/images/scrolls/20.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:364f48e14da5d5a2e43ef67ab092ca1764da1e173906c5a0b181e7540c3167d8 +size 342192 diff --git a/game/images/scrolls/21.webp b/game/images/scrolls/21.webp new file mode 100644 index 00000000..b546ffa5 --- /dev/null +++ b/game/images/scrolls/21.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92669f78c1494cca9fa4dced6dca102121e2f2224be1d60a93212b279f8ffb6d +size 191068 diff --git a/game/images/scrolls/22.webp b/game/images/scrolls/22.webp new file mode 100644 index 00000000..74b153da --- /dev/null +++ b/game/images/scrolls/22.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54df279e0d87345b436a23447fa4503c0bcf6468d08c3d1e2b404541e7430c59 +size 110150 diff --git a/game/images/scrolls/23.webp b/game/images/scrolls/23.webp new file mode 100644 index 00000000..879506f4 --- /dev/null +++ b/game/images/scrolls/23.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:18fcbee38bdee615e1ef6e92c2db4c617c6e4222758b51719e165159f3a61ee5 +size 185170 diff --git a/game/images/scrolls/24.webp b/game/images/scrolls/24.webp new file mode 100644 index 00000000..024519a6 --- /dev/null +++ b/game/images/scrolls/24.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7946e562de91b5d5165dfba46f487b8c0eb57e55ba2cc2844d5040b9a9927bf3 +size 114784 diff --git a/game/images/scrolls/25.webp b/game/images/scrolls/25.webp new file mode 100644 index 00000000..9c52064b --- /dev/null +++ b/game/images/scrolls/25.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f45ac4bbb00663662f662593208f808e3014884d291be67fcae8fdc7eb7112b6 +size 112934 diff --git a/game/images/scrolls/26.webp b/game/images/scrolls/26.webp new file mode 100644 index 00000000..90d7b146 --- /dev/null +++ b/game/images/scrolls/26.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e1c25d7e8bc45936449e8856684d8ac42fb67a488af278c11d69175481ab8b0 +size 185838 diff --git a/game/images/scrolls/27.webp b/game/images/scrolls/27.webp new file mode 100644 index 00000000..43be5f94 --- /dev/null +++ b/game/images/scrolls/27.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39b002a0f3edcc4da31aa17e4a3d682fcb937df31696a98ebe9be107c3a00921 +size 135208 diff --git a/game/images/scrolls/28.webp b/game/images/scrolls/28.webp new file mode 100644 index 00000000..e6e4f227 --- /dev/null +++ b/game/images/scrolls/28.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a827e193239df81ade0b811b73a6311a8a37b256e8f87d8fb9199550d42b9984 +size 193326 diff --git a/game/images/scrolls/29.webp b/game/images/scrolls/29.webp new file mode 100644 index 00000000..01a77772 --- /dev/null +++ b/game/images/scrolls/29.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b41fb534dc9780d4fdfd8e8974f6ffb0526ec178658dc25964b97181ccac935 +size 213522 diff --git a/game/images/scrolls/3.webp b/game/images/scrolls/3.webp new file mode 100644 index 00000000..a3293915 --- /dev/null +++ b/game/images/scrolls/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36a137f5450145e80bd830df9e98d593884cd61a0b084ecc7024acdc18f0d4a2 +size 592296 diff --git a/game/images/scrolls/30.webp b/game/images/scrolls/30.webp new file mode 100644 index 00000000..6bdb4385 --- /dev/null +++ b/game/images/scrolls/30.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4a15ccf4ad89c928c3495cc32cac65992fa0da6e6c357c606895461321f46d04 +size 188122 diff --git a/game/images/scrolls/31.webp b/game/images/scrolls/31.webp new file mode 100644 index 00000000..b4a4473a --- /dev/null +++ b/game/images/scrolls/31.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5445dc0f0b755990e2514de04cd56a6187c86ad7b1dcb0aecbbd6558b9e3505 +size 436902 diff --git a/game/images/scrolls/32.webp b/game/images/scrolls/32.webp new file mode 100644 index 00000000..22c27a06 --- /dev/null +++ b/game/images/scrolls/32.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca5c118f36ce3eafd928acbd626ede23530037d3d5278f64ed044d227f9e0e3a +size 533924 diff --git a/game/images/scrolls/33.webp b/game/images/scrolls/33.webp new file mode 100644 index 00000000..b54b888c --- /dev/null +++ b/game/images/scrolls/33.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1266ab0d07405e0e534b41c325a0a1934d72b6a44f917a10a1dff04e425074c +size 360804 diff --git a/game/images/scrolls/34.webp b/game/images/scrolls/34.webp new file mode 100644 index 00000000..d599a43d --- /dev/null +++ b/game/images/scrolls/34.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba7d1f610d93d95f7f30f34ca023967b5b90e73ed0fb09b88c71cc85ac23a8b0 +size 380312 diff --git a/game/images/scrolls/35.webp b/game/images/scrolls/35.webp new file mode 100644 index 00000000..44a4d3b3 --- /dev/null +++ b/game/images/scrolls/35.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7fa0812e591df8a392fe3c960e9be77ee234d261e1138496a24daa80d0a1aa3 +size 311520 diff --git a/game/images/scrolls/37.webp b/game/images/scrolls/37.webp new file mode 100644 index 00000000..699ae8e4 --- /dev/null +++ b/game/images/scrolls/37.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c1930822957a78aa1b1e64aafa94ced5285a7d9492006119f4ca051e57961a7 +size 206184 diff --git a/game/images/scrolls/4.webp b/game/images/scrolls/4.webp new file mode 100644 index 00000000..096797a5 --- /dev/null +++ b/game/images/scrolls/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e0b424f7ac3f8a41aca1b5b0aaff051d2756e04b341d4ed360e17e4ffe2451c +size 612190 diff --git a/game/images/scrolls/5.webp b/game/images/scrolls/5.webp new file mode 100644 index 00000000..996df54e --- /dev/null +++ b/game/images/scrolls/5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c0e33490149113710aebd60f786a505b0dabc007744c99fb6fab37630fa4f1b +size 164148 diff --git a/game/images/scrolls/6.webp b/game/images/scrolls/6.webp new file mode 100644 index 00000000..62039687 --- /dev/null +++ b/game/images/scrolls/6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c200341e6274fdc372fb6ef7c45bc63334538b8ba3fedafb7ebf27d7cf98590 +size 177664 diff --git a/game/images/scrolls/7.webp b/game/images/scrolls/7.webp new file mode 100644 index 00000000..86ae1cf1 --- /dev/null +++ b/game/images/scrolls/7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe0df003e3277019229abdf8877f4de84278091c207bd4d17e1c00d243451bab +size 108228 diff --git a/game/images/scrolls/8.webp b/game/images/scrolls/8.webp new file mode 100644 index 00000000..b8dc204a --- /dev/null +++ b/game/images/scrolls/8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2fbb8c92085a1d189dedb996f13b535a576d240b8710a5144699658e50e7a4ae +size 84894 diff --git a/game/images/scrolls/9.webp b/game/images/scrolls/9.webp new file mode 100644 index 00000000..bc3e7746 --- /dev/null +++ b/game/images/scrolls/9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33e704be1a4c4fce1b664da6da2e6ae102eb064de4953c0433ccc8b5b47402d9 +size 226102 diff --git a/game/images/spectrevision/bg1.webp b/game/images/spectrevision/bg1.webp new file mode 100644 index 00000000..066a0329 --- /dev/null +++ b/game/images/spectrevision/bg1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:be08ebbb2dd819ff11b3aa99c5e5a51926aa127cab0e25b80951882ffa57cd87 +size 509322 diff --git a/game/images/spectrevision/bg2.webp b/game/images/spectrevision/bg2.webp new file mode 100644 index 00000000..05275c85 --- /dev/null +++ b/game/images/spectrevision/bg2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7964768fee1d69331784c8617fde9c40307629fee53460173f2b04602bd2f994 +size 142982 diff --git a/game/images/spectrevision/bg_room.webp b/game/images/spectrevision/bg_room.webp new file mode 100644 index 00000000..b0540af7 --- /dev/null +++ b/game/images/spectrevision/bg_room.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e8368a23e358c9f0dd13e32bbbec3f4fbcfb3a6b0eb99203c332c62ae589ec1 +size 351126 diff --git a/game/images/spectrevision/wrackspurt_0000.webp b/game/images/spectrevision/wrackspurt_0000.webp new file mode 100644 index 00000000..3f2cd6e9 --- /dev/null +++ b/game/images/spectrevision/wrackspurt_0000.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06cb7c2313ff90be5735ce32ac07f5ee87c47683d9492ea1a584f43bae9a1572 +size 328 diff --git a/game/images/spectrevision/wrackspurt_0001.webp b/game/images/spectrevision/wrackspurt_0001.webp new file mode 100644 index 00000000..47c9715d --- /dev/null +++ b/game/images/spectrevision/wrackspurt_0001.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ce08741953d4c582d0d5be3dbccdef7515f32d7c960ca745b366dc0a8ecea32 +size 378 diff --git a/game/images/spectrevision/wrackspurt_0002.webp b/game/images/spectrevision/wrackspurt_0002.webp new file mode 100644 index 00000000..b41ce036 --- /dev/null +++ b/game/images/spectrevision/wrackspurt_0002.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d3d891bc3d3da7f4460318fa5baaa4fe89783496c526ab267778ab9d602dba0 +size 406 diff --git a/game/images/spectrevision/wrackspurt_0003.webp b/game/images/spectrevision/wrackspurt_0003.webp new file mode 100644 index 00000000..5bb4ace5 --- /dev/null +++ b/game/images/spectrevision/wrackspurt_0003.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:093e332ac7a35a8f7dc2090771bdb835306f0fdd7ac28a1103dcbf8abf73fb83 +size 408 diff --git a/game/images/spectrevision/wrackspurt_0004.webp b/game/images/spectrevision/wrackspurt_0004.webp new file mode 100644 index 00000000..b9dcac36 --- /dev/null +++ b/game/images/spectrevision/wrackspurt_0004.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1da1a38f9063a3f959c91d545ab4a9b1cf3144f153f0b29c7a3ec65416fbb45 +size 420 diff --git a/game/images/spectrevision/wrackspurt_0005.webp b/game/images/spectrevision/wrackspurt_0005.webp new file mode 100644 index 00000000..b41ce036 --- /dev/null +++ b/game/images/spectrevision/wrackspurt_0005.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d3d891bc3d3da7f4460318fa5baaa4fe89783496c526ab267778ab9d602dba0 +size 406 diff --git a/game/images/spectrevision/wrackspurt_0006.webp b/game/images/spectrevision/wrackspurt_0006.webp new file mode 100644 index 00000000..47c9715d --- /dev/null +++ b/game/images/spectrevision/wrackspurt_0006.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ce08741953d4c582d0d5be3dbccdef7515f32d7c960ca745b366dc0a8ecea32 +size 378 diff --git a/game/images/title/00.webp b/game/images/title/00.webp new file mode 100644 index 00000000..0c403099 --- /dev/null +++ b/game/images/title/00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abdeecd9851161ae49fa8a686081a93d5c922569309ecf880d52f905d69a94a9 +size 1553564 diff --git a/game/images/title/00b.webp b/game/images/title/00b.webp new file mode 100644 index 00000000..b8613479 --- /dev/null +++ b/game/images/title/00b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4615f40075be63f144c474f37f512876f73d01c67e1fdb3afad99d60d2fa5e47 +size 1552042 diff --git a/game/images/title/01.webp b/game/images/title/01.webp new file mode 100644 index 00000000..daafe328 --- /dev/null +++ b/game/images/title/01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5cd4be205900a9a06f450c7205357c7be7ee734e72aabe6531228d5dc0f2cff6 +size 1552998 diff --git a/game/images/title/01b.webp b/game/images/title/01b.webp new file mode 100644 index 00000000..e3e8efe4 --- /dev/null +++ b/game/images/title/01b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a0b6eda56f58e9ec2c10051599ec33c4da80eedd4267a44be5806d499f9378f +size 1551928 diff --git a/game/images/title/02.webp b/game/images/title/02.webp new file mode 100644 index 00000000..80b2ac86 --- /dev/null +++ b/game/images/title/02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:453846852045e77c741effabe6796a2e692687776fa53b209abfc1cb041edce2 +size 1552594 diff --git a/game/images/title/02b.webp b/game/images/title/02b.webp new file mode 100644 index 00000000..28ec2029 --- /dev/null +++ b/game/images/title/02b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3edd174748e2d9bbd9e30220e0a1a6ffeaa3fd4a2df7ab19a08459fc42416eb9 +size 1550820 diff --git a/game/images/title/fire00.webp b/game/images/title/fire00.webp new file mode 100644 index 00000000..0ec37d6b --- /dev/null +++ b/game/images/title/fire00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67200eb214ee4f462ded1cb81adb60fba48e04356a5aba5c19523f61db4182bc +size 100310 diff --git a/game/images/title/fire01.webp b/game/images/title/fire01.webp new file mode 100644 index 00000000..0ffd8806 --- /dev/null +++ b/game/images/title/fire01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55e57d71d3c0d678bbd9d2bbaab7c72efd03de8ced4eb2d02230bcb7fe4c2a6e +size 100118 diff --git a/game/images/title/fire02.webp b/game/images/title/fire02.webp new file mode 100644 index 00000000..db8aa699 --- /dev/null +++ b/game/images/title/fire02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f9258da6f8e0960172a15e78c764373f6edadd6ccf16221c549819a115ad96d +size 103098 diff --git a/game/images/title/fire03.webp b/game/images/title/fire03.webp new file mode 100644 index 00000000..c9bdd300 --- /dev/null +++ b/game/images/title/fire03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74fe6c9cb3deb719ec34493fc132efd396cd375182533bbd50e76494d7f1332d +size 96594 diff --git a/game/images/title/fire04.webp b/game/images/title/fire04.webp new file mode 100644 index 00000000..f05096b7 --- /dev/null +++ b/game/images/title/fire04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d5c435017f6750b12da918a1692759e39a91dd0bdf175b39b39142aa87b6cb0 +size 104388 diff --git a/game/images/title/fire05.webp b/game/images/title/fire05.webp new file mode 100644 index 00000000..fd0ed2a5 --- /dev/null +++ b/game/images/title/fire05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86aed56ad546e54feeed5e56d36566cb69cf28d96b1a9cc75168bc73f665a744 +size 100632 diff --git a/game/images/title/fire06.webp b/game/images/title/fire06.webp new file mode 100644 index 00000000..0b58c60f --- /dev/null +++ b/game/images/title/fire06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a24313160866fbc0f19a8d10d087780eb1b998fc0f03fd95ad5d758eda5e517 +size 100746 diff --git a/game/images/title/fire07.webp b/game/images/title/fire07.webp new file mode 100644 index 00000000..8749b07c --- /dev/null +++ b/game/images/title/fire07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53c7e2b62abf3ccd9df617ad23b8ce3bf0157bf1eac270dc2fab3aa58967d327 +size 99388 diff --git a/game/images/title/sparkle.webp b/game/images/title/sparkle.webp new file mode 100644 index 00000000..46c3ac50 --- /dev/null +++ b/game/images/title/sparkle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d6e20ab1fe1232ac2383c437f3fc68c1a8131010f4680e8ccfc049d64b571f1 +size 950 diff --git a/game/interface/achievements/glass.webp b/game/interface/achievements/glass.webp new file mode 100644 index 00000000..f804ff93 --- /dev/null +++ b/game/interface/achievements/glass.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2846a573e5a5d2b4d0f15f5006356f101a1ed618a8719ce4bf17491a04f1a634 +size 1946 diff --git a/game/interface/achievements/glass_iconbox.webp b/game/interface/achievements/glass_iconbox.webp new file mode 100644 index 00000000..0da23f29 --- /dev/null +++ b/game/interface/achievements/glass_iconbox.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2d8976333f28061d8b92c32c9dadd7a622251535f6d5cb4e2e4ae1000ed5d2e4 +size 1048 diff --git a/game/interface/achievements/glass_selected.webp b/game/interface/achievements/glass_selected.webp new file mode 100644 index 00000000..1d836194 --- /dev/null +++ b/game/interface/achievements/glass_selected.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bedb8c208cb98120c21d955a87ac41ce7651a0f0fc84dd8600e31620eb21cede +size 1756 diff --git a/game/interface/achievements/glow.webp b/game/interface/achievements/glow.webp new file mode 100644 index 00000000..328d239b --- /dev/null +++ b/game/interface/achievements/glow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a588765c925a88f79981f82836b84caff3c97ca4e8fddcaf5940c5a971454f0f +size 28424 diff --git a/game/interface/achievements/gold/box.webp b/game/interface/achievements/gold/box.webp new file mode 100644 index 00000000..ce16e3e5 --- /dev/null +++ b/game/interface/achievements/gold/box.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e28e4fe9d26a0f4829b20fd12ee401d895936d31275c39baf0ece3a9b11cd71f +size 802 diff --git a/game/interface/achievements/gold/highlight.webp b/game/interface/achievements/gold/highlight.webp new file mode 100644 index 00000000..139d0f55 --- /dev/null +++ b/game/interface/achievements/gold/highlight.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:853658690d34cfe2910762fa88f55f5dfff3768645f8bf60982c7ab9b5fe3be5 +size 2038 diff --git a/game/interface/achievements/gold/highlight_left.webp b/game/interface/achievements/gold/highlight_left.webp new file mode 100644 index 00000000..d404d188 --- /dev/null +++ b/game/interface/achievements/gold/highlight_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c392b3f3b82bfa20cb517e7793c0aea05912c8778c0aa414ff6cb0f3b2b9b3d +size 736 diff --git a/game/interface/achievements/gold/highlight_left_b.webp b/game/interface/achievements/gold/highlight_left_b.webp new file mode 100644 index 00000000..31a80eb1 --- /dev/null +++ b/game/interface/achievements/gold/highlight_left_b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c6c6019a016abeaf1d2e6e7d1f7f87bee7d62a633d108d2b8e56797ff9d0173 +size 1440 diff --git a/game/interface/achievements/gold/icon_selected.webp b/game/interface/achievements/gold/icon_selected.webp new file mode 100644 index 00000000..1ed07e5a --- /dev/null +++ b/game/interface/achievements/gold/icon_selected.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb9ab1812e2248fba3845822c15338d62346fae43140ad6d47336086a708acb4 +size 468 diff --git a/game/interface/achievements/gold/iconbox.webp b/game/interface/achievements/gold/iconbox.webp new file mode 100644 index 00000000..39b9b378 --- /dev/null +++ b/game/interface/achievements/gold/iconbox.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69b3b642ad160d8ad8d46f4dad2b76981936908873c8f5e184d1982851e40ba7 +size 510 diff --git a/game/interface/achievements/gold/panel.webp b/game/interface/achievements/gold/panel.webp new file mode 100644 index 00000000..5fd57a6d --- /dev/null +++ b/game/interface/achievements/gold/panel.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86fb8561f8280336cac709d29776b66ccf86e25b88f2d7bed18cc900c82738a3 +size 3752 diff --git a/game/interface/achievements/gold/panel_left.webp b/game/interface/achievements/gold/panel_left.webp new file mode 100644 index 00000000..4fc1b82f --- /dev/null +++ b/game/interface/achievements/gold/panel_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fd2679b4734006b70ab193708b16ca6e9176eed79492608cc41ecebb8a5e551 +size 1154 diff --git a/game/interface/achievements/gold/spacer.webp b/game/interface/achievements/gold/spacer.webp new file mode 100644 index 00000000..5a2ab76f --- /dev/null +++ b/game/interface/achievements/gold/spacer.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:901607d558bb98c0315a17b4e00a10a3c66cb853adaa8395e916388c66bcf5ed +size 344 diff --git a/game/interface/achievements/gold/spacer_left.webp b/game/interface/achievements/gold/spacer_left.webp new file mode 100644 index 00000000..3ed3712d --- /dev/null +++ b/game/interface/achievements/gold/spacer_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1c86cf909ad63fc89bfa74a4e0bc0c585d0cc98ef82e52f91e1196b0368b0b9 +size 210 diff --git a/game/interface/achievements/gray/box.webp b/game/interface/achievements/gray/box.webp new file mode 100644 index 00000000..65711888 --- /dev/null +++ b/game/interface/achievements/gray/box.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:663109632212a18b038b5c240ecf3ca87a09c37c4628148eaa50a9a31923c48a +size 988 diff --git a/game/interface/achievements/gray/highlight.webp b/game/interface/achievements/gray/highlight.webp new file mode 100644 index 00000000..cafd9b18 --- /dev/null +++ b/game/interface/achievements/gray/highlight.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67c64df16bf4af225f8d2f7763b0816cc70b36f58e8cfb97839a3d99e669f43b +size 2176 diff --git a/game/interface/achievements/gray/highlight_left.webp b/game/interface/achievements/gray/highlight_left.webp new file mode 100644 index 00000000..ba3bbd49 --- /dev/null +++ b/game/interface/achievements/gray/highlight_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f80a1e99f4b4e855b80660721e71b1b82fbc4054b7363630ecf7c241219d154 +size 792 diff --git a/game/interface/achievements/gray/highlight_left_b.webp b/game/interface/achievements/gray/highlight_left_b.webp new file mode 100644 index 00000000..c8f07fa8 --- /dev/null +++ b/game/interface/achievements/gray/highlight_left_b.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ab52f2322f9d7e8724795b13e640893e98e4cc9a7520de10af67d9cdfcccd5a +size 1620 diff --git a/game/interface/achievements/gray/icon_selected.webp b/game/interface/achievements/gray/icon_selected.webp new file mode 100644 index 00000000..fccf38d7 --- /dev/null +++ b/game/interface/achievements/gray/icon_selected.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95ff11b565e28d02d0f123251e6fe030826782fd16c1737a539a54bf74588b40 +size 718 diff --git a/game/interface/achievements/gray/iconbox.webp b/game/interface/achievements/gray/iconbox.webp new file mode 100644 index 00000000..afe31f60 --- /dev/null +++ b/game/interface/achievements/gray/iconbox.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb05da394cc1daa2412afa78be5412081718614374b07a09c6f49664b71a6ea2 +size 634 diff --git a/game/interface/achievements/gray/panel.webp b/game/interface/achievements/gray/panel.webp new file mode 100644 index 00000000..4deab4e9 --- /dev/null +++ b/game/interface/achievements/gray/panel.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49b88defd08c419fc9958e9e9f7eb958ad1aec6387cc573d0b155ee42cd80e6b +size 6096 diff --git a/game/interface/achievements/gray/panel_left.webp b/game/interface/achievements/gray/panel_left.webp new file mode 100644 index 00000000..cd30f5db --- /dev/null +++ b/game/interface/achievements/gray/panel_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2bd1df25ba615757cc9426bbf165bb5d71f1bd697297afa49f6442862f81e60 +size 1478 diff --git a/game/interface/achievements/gray/spacer.webp b/game/interface/achievements/gray/spacer.webp new file mode 100644 index 00000000..37ffba4f --- /dev/null +++ b/game/interface/achievements/gray/spacer.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d72fbe0ad9cd38b5683c4a84a2feffdad5d1e4e358749179753c2f158eba32b +size 354 diff --git a/game/interface/achievements/gray/spacer_left.webp b/game/interface/achievements/gray/spacer_left.webp new file mode 100644 index 00000000..9d648ca8 --- /dev/null +++ b/game/interface/achievements/gray/spacer_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6802d7e2758583c604d4b9c00eac53e1dbf0f68f90c98c296ca1216f0a7c7e96 +size 216 diff --git a/game/interface/achievements/inventory.webp b/game/interface/achievements/inventory.webp new file mode 100644 index 00000000..e34cf5e1 --- /dev/null +++ b/game/interface/achievements/inventory.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b162dfb43b64789abe2cceac1fe36d15259d6a9a889d1d43cb5158b7041d7c74 +size 15964 diff --git a/game/interface/achievements/markup.webp b/game/interface/achievements/markup.webp new file mode 100644 index 00000000..d0c769b6 --- /dev/null +++ b/game/interface/achievements/markup.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1628e33ffc2b1c5e0cb1a045a6042375812025eebebe0816b3776f687b25620 +size 204 diff --git a/game/interface/achievements/secret.webp b/game/interface/achievements/secret.webp new file mode 100644 index 00000000..4567e6a6 --- /dev/null +++ b/game/interface/achievements/secret.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e275fbb16ca7354f21ce9a0857bedffb52ac66d56a339bbca25689a5be82fc7b +size 484 diff --git a/game/interface/achievements/star.webp b/game/interface/achievements/star.webp new file mode 100644 index 00000000..da11936f --- /dev/null +++ b/game/interface/achievements/star.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:938580d0ac173c9be5cdef44a3d198755497258f69058770b993d7d2bb643c2b +size 3052 diff --git a/game/interface/bld.webp b/game/interface/bld.webp new file mode 100644 index 00000000..dc528e52 --- /dev/null +++ b/game/interface/bld.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:207b348bcda0aa4de99c62f2aef9906a6ceb780fd0987d2caf52a1d2858e9a38 +size 50496 diff --git a/game/interface/book/back.webp b/game/interface/book/back.webp new file mode 100644 index 00000000..3ee389f7 --- /dev/null +++ b/game/interface/book/back.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96d5fa62a9cd9a3196f05ff1da50ff2b548c56d4d96051b143ccccb4318a453e +size 1494 diff --git a/game/interface/book/book_open.webp b/game/interface/book/book_open.webp new file mode 100644 index 00000000..cd6fd3fd --- /dev/null +++ b/game/interface/book/book_open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41a73f9816462df171daf6e4e2ed56b956fa860f609073c20c1c92868f4c6608 +size 94374 diff --git a/game/interface/book/hover.webp b/game/interface/book/hover.webp new file mode 100644 index 00000000..e05f86bc --- /dev/null +++ b/game/interface/book/hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e325452548ae2197dec26f784de50dfc9b94b279f2c211797c117155b128012f +size 4688 diff --git a/game/interface/book/page_01.webp b/game/interface/book/page_01.webp new file mode 100644 index 00000000..a03ce400 --- /dev/null +++ b/game/interface/book/page_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6af0dc10c1ae87c89a1d9b630cda8e132cbdb4b8b666afce33678a7702782a9 +size 9106 diff --git a/game/interface/book/page_02.webp b/game/interface/book/page_02.webp new file mode 100644 index 00000000..c5ab524a --- /dev/null +++ b/game/interface/book/page_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5a5f0de9febfa42045b45099bec2570160d3a62ebf677d633017751b7f5692e +size 14638 diff --git a/game/interface/book/page_03.webp b/game/interface/book/page_03.webp new file mode 100644 index 00000000..8b974264 --- /dev/null +++ b/game/interface/book/page_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbad381dab37fb0bb1c9efbcc9824fb54eabd8802b5fe5d635e17706f4be3ad4 +size 20600 diff --git a/game/interface/book/page_04.webp b/game/interface/book/page_04.webp new file mode 100644 index 00000000..67f6f1bd --- /dev/null +++ b/game/interface/book/page_04.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dc90c2f3fe9eb3b2c3e12b23b9088cf763d23708b635bcf01b1c119e731e804 +size 17466 diff --git a/game/interface/book/page_05.webp b/game/interface/book/page_05.webp new file mode 100644 index 00000000..ecb6e7ab --- /dev/null +++ b/game/interface/book/page_05.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74e456368fc8863c6f91e0629e3f26b28b0c2c4b32ef63ecf104f31660a1c4e4 +size 17900 diff --git a/game/interface/book/page_06.webp b/game/interface/book/page_06.webp new file mode 100644 index 00000000..cd970ce0 --- /dev/null +++ b/game/interface/book/page_06.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4687ee2776eda096faab266e661e864a386f65986de05fa88e8ba0b01f60ceeb +size 20030 diff --git a/game/interface/book/page_07.webp b/game/interface/book/page_07.webp new file mode 100644 index 00000000..e1011f3f --- /dev/null +++ b/game/interface/book/page_07.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:135b06986c18c8c9726d5599cd742d47461038f6d182d25db23c7d4317abc8c7 +size 24390 diff --git a/game/interface/book/reverse_01.webp b/game/interface/book/reverse_01.webp new file mode 100644 index 00000000..6afd0ac4 --- /dev/null +++ b/game/interface/book/reverse_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61a2037a5313aaa6b6faf3ea02961c6618778380dc9f9f595215df2365f47b78 +size 61028 diff --git a/game/interface/book/reverse_02.webp b/game/interface/book/reverse_02.webp new file mode 100644 index 00000000..95a9bba4 --- /dev/null +++ b/game/interface/book/reverse_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b96ba0fad8721c4dcf454c34bccdad3155b6061ae1728cb0126ea1d219c297be +size 48450 diff --git a/game/interface/brewing/bg_off.webp b/game/interface/brewing/bg_off.webp new file mode 100644 index 00000000..1375889a --- /dev/null +++ b/game/interface/brewing/bg_off.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7e66b2f4165f7ac61ca184481fa53b6e92147013d95153bdce5bf9d82bcb921 +size 479396 diff --git a/game/interface/brewing/bg_on.webp b/game/interface/brewing/bg_on.webp new file mode 100644 index 00000000..2237a5ed --- /dev/null +++ b/game/interface/brewing/bg_on.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8e1fcda01f80bc583009a8200219362eefae355a2c49a63811d8a98f2878d79 +size 495556 diff --git a/game/interface/brewing/cauldron_off.webp b/game/interface/brewing/cauldron_off.webp new file mode 100644 index 00000000..ede7751c --- /dev/null +++ b/game/interface/brewing/cauldron_off.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70c93a0ca0d30ba847ccab02f167cfcfc6a4429cd0a77d8a933dacfd444ec134 +size 142326 diff --git a/game/interface/brewing/cauldron_on.webp b/game/interface/brewing/cauldron_on.webp new file mode 100644 index 00000000..b7b477ce --- /dev/null +++ b/game/interface/brewing/cauldron_on.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:829147923b874359dcb22e80d0e66977d45138a0af12fb58e001ed6e9313eb00 +size 140150 diff --git a/game/interface/brewing/glow.webp b/game/interface/brewing/glow.webp new file mode 100644 index 00000000..6d693ae2 --- /dev/null +++ b/game/interface/brewing/glow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dcfd4d3471660732490cbf170e00ebdbf21d88152f3a40b2477b39ec79bd303a +size 366346 diff --git a/game/interface/characters/astoria_locked.webp b/game/interface/characters/astoria_locked.webp new file mode 100644 index 00000000..e2802d91 --- /dev/null +++ b/game/interface/characters/astoria_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0123b95c616f57a3e56acba78e37f4a725b6ed5df1b647bb6a43686d3844c134 +size 7976 diff --git a/game/interface/characters/cho_locked.webp b/game/interface/characters/cho_locked.webp new file mode 100644 index 00000000..08c878b8 --- /dev/null +++ b/game/interface/characters/cho_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30c9dce4420822d264542405fb89c5df6c6b59269272133aa1a1315293a5f590 +size 6690 diff --git a/game/interface/characters/hermione_locked.webp b/game/interface/characters/hermione_locked.webp new file mode 100644 index 00000000..862261e1 --- /dev/null +++ b/game/interface/characters/hermione_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:565041f61707220a8aabcf2fad67ca6e3e60cd61074e8a762de3cbb83ea30fdc +size 21732 diff --git a/game/interface/characters/luna_locked.webp b/game/interface/characters/luna_locked.webp new file mode 100644 index 00000000..14e64898 --- /dev/null +++ b/game/interface/characters/luna_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f644a7bb970e6a7dc61d89032ddae17de2543053e2a71b722146345c90f35a75 +size 21458 diff --git a/game/interface/characters/snape_locked.webp b/game/interface/characters/snape_locked.webp new file mode 100644 index 00000000..e0f3a494 --- /dev/null +++ b/game/interface/characters/snape_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30327c26d26e0043985ea933e78d08b226f3876f9ee6b6c12f8db63756bfd953 +size 34716 diff --git a/game/interface/characters/susan_locked.webp b/game/interface/characters/susan_locked.webp new file mode 100644 index 00000000..cac4c5f9 --- /dev/null +++ b/game/interface/characters/susan_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:918085fd0db99bde1ba12d62b301e0f722bcfb80d57ba15f6631a2e76d372ad3 +size 12376 diff --git a/game/interface/characters/tonks_locked.webp b/game/interface/characters/tonks_locked.webp new file mode 100644 index 00000000..fb01a265 --- /dev/null +++ b/game/interface/characters/tonks_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55306f6f7d588682a2b36a7756d25c5559f032bb3caf7ed883bb1a016d3bbba5 +size 17660 diff --git a/game/interface/color_picker/checker.webp b/game/interface/color_picker/checker.webp new file mode 100644 index 00000000..1a9efcb9 --- /dev/null +++ b/game/interface/color_picker/checker.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75f817e56e05e678419759ddad8740262b8fa8c31aa093a985f9368f72d0a081 +size 50 diff --git a/game/interface/color_picker/gold/alpha.webp b/game/interface/color_picker/gold/alpha.webp new file mode 100644 index 00000000..ac5b91a2 --- /dev/null +++ b/game/interface/color_picker/gold/alpha.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f339e9826a30ccde9b92ea4fe19cc753ddc03147a391603c8c9029afc37411ea +size 90 diff --git a/game/interface/color_picker/gold/cursor_h.webp b/game/interface/color_picker/gold/cursor_h.webp new file mode 100644 index 00000000..a2aac3f4 --- /dev/null +++ b/game/interface/color_picker/gold/cursor_h.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1239b2a288b505e960c3f900d62a9a768bf1f574e908079890c2f0d9a7a566da +size 70 diff --git a/game/interface/color_picker/gold/cursor_sq.webp b/game/interface/color_picker/gold/cursor_sq.webp new file mode 100644 index 00000000..492992c5 --- /dev/null +++ b/game/interface/color_picker/gold/cursor_sq.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f28d3e2ecbbad61cbd686ced0ea54791f57b0be0930cc66a44531bee458710b +size 86 diff --git a/game/interface/color_picker/gold/cursor_v.webp b/game/interface/color_picker/gold/cursor_v.webp new file mode 100644 index 00000000..0bfb63b7 --- /dev/null +++ b/game/interface/color_picker/gold/cursor_v.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6812f61aadd5d6c7a9fbc31e547a54cbd5b2d0fd2dd2907885d98ea5de983938 +size 62 diff --git a/game/interface/color_picker/gold/frame.webp b/game/interface/color_picker/gold/frame.webp new file mode 100644 index 00000000..cd7253fd --- /dev/null +++ b/game/interface/color_picker/gold/frame.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a3e34cb7f01d7284846713e4d761f02a3b210be09c091f442d08b5c7b5eb708 +size 6706 diff --git a/game/interface/color_picker/gold/frame_swatches.webp b/game/interface/color_picker/gold/frame_swatches.webp new file mode 100644 index 00000000..c62be6ed --- /dev/null +++ b/game/interface/color_picker/gold/frame_swatches.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc0122cc03ac95191a9cbc85b4eadc61b73fdcc16b02a2b0fd8929d7b23b8834 +size 3806 diff --git a/game/interface/color_picker/gray/alpha.webp b/game/interface/color_picker/gray/alpha.webp new file mode 100644 index 00000000..2cc17fe5 --- /dev/null +++ b/game/interface/color_picker/gray/alpha.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b0af6794edfa3a62a85dea990e9fdc8050ce7b4ecf995102270048e217fe501 +size 98 diff --git a/game/interface/color_picker/gray/cursor_h.webp b/game/interface/color_picker/gray/cursor_h.webp new file mode 100644 index 00000000..5abd939c --- /dev/null +++ b/game/interface/color_picker/gray/cursor_h.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f13bf453345f802d06ebdb3a916d39beded25820154f7ec94431554e2a15479 +size 74 diff --git a/game/interface/color_picker/gray/cursor_sq.webp b/game/interface/color_picker/gray/cursor_sq.webp new file mode 100644 index 00000000..74a449a0 --- /dev/null +++ b/game/interface/color_picker/gray/cursor_sq.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e2d3f560babc2ab0405b289b68f69b30653ae02c518047ba2684b0101958376 +size 92 diff --git a/game/interface/color_picker/gray/cursor_v.webp b/game/interface/color_picker/gray/cursor_v.webp new file mode 100644 index 00000000..f943bcd6 --- /dev/null +++ b/game/interface/color_picker/gray/cursor_v.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f2f8720f56646d24688bfb5bd544fd020f3dba796eb8f342e5241ad55582e6f2 +size 68 diff --git a/game/interface/color_picker/gray/frame.webp b/game/interface/color_picker/gray/frame.webp new file mode 100644 index 00000000..833f9f3e --- /dev/null +++ b/game/interface/color_picker/gray/frame.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:16d29c3daad9c2b200669ecb6ee0497b2581574cfb51af3f8eb0eadcf01809ff +size 5568 diff --git a/game/interface/color_picker/gray/frame_swatches.webp b/game/interface/color_picker/gray/frame_swatches.webp new file mode 100644 index 00000000..6a34d2f6 --- /dev/null +++ b/game/interface/color_picker/gray/frame_swatches.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a211ab69a266f6326a02a0ca7cff5e57033b286a32dcd18be1ef05748d4a354 +size 3808 diff --git a/game/interface/color_picker/saturation_value_gradient.webp b/game/interface/color_picker/saturation_value_gradient.webp new file mode 100644 index 00000000..cf6565a8 --- /dev/null +++ b/game/interface/color_picker/saturation_value_gradient.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b858954cde226de9928dd04ab881d1c992f06621d982806873f67f5c70a26a89 +size 22474 diff --git a/game/interface/ctc00.webp b/game/interface/ctc00.webp new file mode 100644 index 00000000..c4315aec --- /dev/null +++ b/game/interface/ctc00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf32cb54b294d2f9f5cf419a15a0e32d2501096a0c0797fca507d0449890bd1b +size 762 diff --git a/game/interface/ctc01.webp b/game/interface/ctc01.webp new file mode 100644 index 00000000..aa082e02 --- /dev/null +++ b/game/interface/ctc01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9a354bbcf12fc00b6adecec6858da5ab2226a6e5ab9c6c7ca3528390768a7739 +size 1898 diff --git a/game/interface/cursor.webp b/game/interface/cursor.webp new file mode 100644 index 00000000..7050fd1d --- /dev/null +++ b/game/interface/cursor.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd335c05b19293ec6a3a3c30809ff63673085cd323300dc971e3e3feb0b8a9c8 +size 548 diff --git a/game/interface/desk/_bg_.webp b/game/interface/desk/_bg_.webp new file mode 100644 index 00000000..5623228d --- /dev/null +++ b/game/interface/desk/_bg_.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:baf19e01275969b572a4b29c694e28b261022d93878d5b8eded98b07a591db3e +size 34494 diff --git a/game/interface/desk/_hands_.webp b/game/interface/desk/_hands_.webp new file mode 100644 index 00000000..e838841f --- /dev/null +++ b/game/interface/desk/_hands_.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2c23db42cf9236fd0c7986c793dfe6285abb6b90d83498c6ac79747b3666e8f4 +size 26042 diff --git a/game/interface/desk/_night_overlay_.webp b/game/interface/desk/_night_overlay_.webp new file mode 100644 index 00000000..6f43cc8c --- /dev/null +++ b/game/interface/desk/_night_overlay_.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5faead09c618103d533b30fe8c3e0778d0e3676329814f6eb211da4a1cda89f3 +size 53616 diff --git a/game/interface/desk/book.webp b/game/interface/desk/book.webp new file mode 100644 index 00000000..0d9c758a --- /dev/null +++ b/game/interface/desk/book.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e81e3c6d2bd61216318a381d2d8e6dd8d6c5afa081bf7e5141e41826a09e7021 +size 29014 diff --git a/game/interface/desk/book_hover.webp b/game/interface/desk/book_hover.webp new file mode 100644 index 00000000..cefcd11a --- /dev/null +++ b/game/interface/desk/book_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60e1f43e53b9ccd627f52d9bebcfc5ff0841bb419d631c9fc80ee98bb41553fb +size 35714 diff --git a/game/interface/desk/cards.webp b/game/interface/desk/cards.webp new file mode 100644 index 00000000..570a4eae --- /dev/null +++ b/game/interface/desk/cards.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ccdaf18043512c0caa3a54a7982dfc0612a7ab05c3d300e13378868ee260098 +size 12250 diff --git a/game/interface/desk/cards_hover.webp b/game/interface/desk/cards_hover.webp new file mode 100644 index 00000000..1fc7e005 --- /dev/null +++ b/game/interface/desk/cards_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17914737e3bbce507d27452575c67199478be6635a34c1e77a3cb0d7a3df1b82 +size 15896 diff --git a/game/interface/desk/crystal_ball.webp b/game/interface/desk/crystal_ball.webp new file mode 100644 index 00000000..c56194f2 --- /dev/null +++ b/game/interface/desk/crystal_ball.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3942c00cb7f447b06619b79edced5ecbd95dfe159bba9fcd5c9bd878b55a2d60 +size 13460 diff --git a/game/interface/desk/exit.webp b/game/interface/desk/exit.webp new file mode 100644 index 00000000..80f7fc8f --- /dev/null +++ b/game/interface/desk/exit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:07755c6d160c468bc7f371a46a709d3ead72133ddd0d4dddd711ce26439d8a09 +size 2146 diff --git a/game/interface/desk/exit_mask.webp b/game/interface/desk/exit_mask.webp new file mode 100644 index 00000000..57539a0e --- /dev/null +++ b/game/interface/desk/exit_mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76295a10ccd2e35131aa3aa648af298dd60b06950b6d1e04368b9505f942b791 +size 34 diff --git a/game/interface/desk/hints/attic.webp b/game/interface/desk/hints/attic.webp new file mode 100644 index 00000000..c0fe46a6 --- /dev/null +++ b/game/interface/desk/hints/attic.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e78acfaba42400683af9fd31e8fdb6c14120409bd7936b4319fca169f292f6e6 +size 1192 diff --git a/game/interface/desk/hints/book.webp b/game/interface/desk/hints/book.webp new file mode 100644 index 00000000..0f34109d --- /dev/null +++ b/game/interface/desk/hints/book.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:292124fc2f28afdb5830f276aaa9810408fd13b0fe18d5d2296bfa9dac2a5d67 +size 6270 diff --git a/game/interface/desk/hints/cards.webp b/game/interface/desk/hints/cards.webp new file mode 100644 index 00000000..833cb997 --- /dev/null +++ b/game/interface/desk/hints/cards.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49fba9a53e5bff54e04cee32fe6d31ffee96a497ccbe79c638cd9fb51ab0a669 +size 9998 diff --git a/game/interface/desk/hints/clothing_store.webp b/game/interface/desk/hints/clothing_store.webp new file mode 100644 index 00000000..e2b48fbc --- /dev/null +++ b/game/interface/desk/hints/clothing_store.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80f12bfeadae6bb55a6b3bb94010831c5fcf238982197dc4148e216f5659e026 +size 3104 diff --git a/game/interface/desk/hints/dorm_gryffindor.webp b/game/interface/desk/hints/dorm_gryffindor.webp new file mode 100644 index 00000000..9b5a36ec --- /dev/null +++ b/game/interface/desk/hints/dorm_gryffindor.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c6802c43f95c2eb88714d201df22f61c265c9b65c09cbff568be735be2afd709 +size 3146 diff --git a/game/interface/desk/hints/dorm_hufflepuff.webp b/game/interface/desk/hints/dorm_hufflepuff.webp new file mode 100644 index 00000000..c8550f8d --- /dev/null +++ b/game/interface/desk/hints/dorm_hufflepuff.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d55c5b820f74996f08ae597e0e91a7008cd0d1258a6604ed35bec49f1ef08db6 +size 3030 diff --git a/game/interface/desk/hints/dorm_ravenclaw.webp b/game/interface/desk/hints/dorm_ravenclaw.webp new file mode 100644 index 00000000..961d6e9d --- /dev/null +++ b/game/interface/desk/hints/dorm_ravenclaw.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa74549dab601e32dacdf79eb050762629f1bb6dc59a509019690624abddc269 +size 3072 diff --git a/game/interface/desk/hints/dorm_slytherin.webp b/game/interface/desk/hints/dorm_slytherin.webp new file mode 100644 index 00000000..20f7272e --- /dev/null +++ b/game/interface/desk/hints/dorm_slytherin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a79d6189585334324180cc916be7dfb007c451dc320031ad59692f77e27ccec +size 2968 diff --git a/game/interface/desk/hints/doze_off.webp b/game/interface/desk/hints/doze_off.webp new file mode 100644 index 00000000..c3298d59 --- /dev/null +++ b/game/interface/desk/hints/doze_off.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06538d8cfeadba4341f6080c84c0fffb48e1ed46a7d9f01d62505665d23d70db +size 10346 diff --git a/game/interface/desk/hints/exit.webp b/game/interface/desk/hints/exit.webp new file mode 100644 index 00000000..e381a538 --- /dev/null +++ b/game/interface/desk/hints/exit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4f9129550ca9836cd2acda4feef755cf29f813c51631baf13373c5d15753466 +size 1616 diff --git a/game/interface/desk/hints/forest.webp b/game/interface/desk/hints/forest.webp new file mode 100644 index 00000000..25da8c27 --- /dev/null +++ b/game/interface/desk/hints/forest.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29f7246c8c8aa904c8385591f93ca8a6e2d53a01b65b274c1bb06b6776869a44 +size 1566 diff --git a/game/interface/desk/hints/glow.webp b/game/interface/desk/hints/glow.webp new file mode 100644 index 00000000..af340c1b --- /dev/null +++ b/game/interface/desk/hints/glow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9589dcc38e5e856e57b25c9b9692e312049a87fded74235b1badaa1356eb6cff +size 3382 diff --git a/game/interface/desk/hints/jerk_off.webp b/game/interface/desk/hints/jerk_off.webp new file mode 100644 index 00000000..144b124a --- /dev/null +++ b/game/interface/desk/hints/jerk_off.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c3f136434f27add4956d26a0df4a6b8bf4212a27a67ff8200d158379f6b524a +size 9566 diff --git a/game/interface/desk/hints/lake.webp b/game/interface/desk/hints/lake.webp new file mode 100644 index 00000000..8271302a --- /dev/null +++ b/game/interface/desk/hints/lake.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f377d87143275333c500b7efdeabfc8276216e0dd8fe547e03908c4845a5a3d +size 1190 diff --git a/game/interface/desk/hints/office.webp b/game/interface/desk/hints/office.webp new file mode 100644 index 00000000..38d14a0b --- /dev/null +++ b/game/interface/desk/hints/office.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ed43f8542c919f3fcceaef0ec11f5d9bbcd4d9ae61ba05c3717e950a3b03c34 +size 1396 diff --git a/game/interface/desk/hints/potions.webp b/game/interface/desk/hints/potions.webp new file mode 100644 index 00000000..c5d10287 --- /dev/null +++ b/game/interface/desk/hints/potions.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3447ada9d63d568a75b1ab6709b5b0eaa3f9710682cc9519cf703ea9af1d7dc4 +size 2982 diff --git a/game/interface/desk/hints/room_of_req.webp b/game/interface/desk/hints/room_of_req.webp new file mode 100644 index 00000000..e149fd44 --- /dev/null +++ b/game/interface/desk/hints/room_of_req.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e1bc8f48e6e20d10d6a9ca6b7c0f74a9a55bfd2f43720d8795758f63d3b388f +size 3216 diff --git a/game/interface/desk/hints/sleep.webp b/game/interface/desk/hints/sleep.webp new file mode 100644 index 00000000..2420cc9d --- /dev/null +++ b/game/interface/desk/hints/sleep.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bea5857c5ee77f2a9a602ecde06e7769451fba2f03077d068894961ab434de62 +size 9662 diff --git a/game/interface/desk/hints/summon_astoria.webp b/game/interface/desk/hints/summon_astoria.webp new file mode 100644 index 00000000..8ce97c4a --- /dev/null +++ b/game/interface/desk/hints/summon_astoria.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6f3bca7e01d33dfbe81f5cafad392938515e8382ef75e10d56b5c661c13d20d +size 6192 diff --git a/game/interface/desk/hints/summon_cho.webp b/game/interface/desk/hints/summon_cho.webp new file mode 100644 index 00000000..0ddc3213 --- /dev/null +++ b/game/interface/desk/hints/summon_cho.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba5cf9190d8f57f126ef7ab67e54d0122f7c3c2d95cfa8e7fbed5c712816e10a +size 6850 diff --git a/game/interface/desk/hints/summon_hermione.webp b/game/interface/desk/hints/summon_hermione.webp new file mode 100644 index 00000000..e9cfa586 --- /dev/null +++ b/game/interface/desk/hints/summon_hermione.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e30944ea83c89d1a4ae8992f7499b20d5e7e3235ca75c8a538c9547a5f62a7b4 +size 7328 diff --git a/game/interface/desk/hints/summon_luna.webp b/game/interface/desk/hints/summon_luna.webp new file mode 100644 index 00000000..f5ba2ce4 --- /dev/null +++ b/game/interface/desk/hints/summon_luna.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51a99aa287d98941c66b61cc4c9919a3836af9d5387492f5d089a68c8f610135 +size 8598 diff --git a/game/interface/desk/hints/summon_snape.webp b/game/interface/desk/hints/summon_snape.webp new file mode 100644 index 00000000..68a42d26 --- /dev/null +++ b/game/interface/desk/hints/summon_snape.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8e4447159474394a74c1251e7e07ebc697e2a41136380d4402ac247509b658c4 +size 6232 diff --git a/game/interface/desk/hints/summon_susan.webp b/game/interface/desk/hints/summon_susan.webp new file mode 100644 index 00000000..80457496 --- /dev/null +++ b/game/interface/desk/hints/summon_susan.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:312859e0850ef0b30ac48064c68bb604766e95bae9a178c024a68383f69faf2b +size 7058 diff --git a/game/interface/desk/hints/summon_tonks.webp b/game/interface/desk/hints/summon_tonks.webp new file mode 100644 index 00000000..8ce97c4a --- /dev/null +++ b/game/interface/desk/hints/summon_tonks.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6f3bca7e01d33dfbe81f5cafad392938515e8382ef75e10d56b5c661c13d20d +size 6192 diff --git a/game/interface/desk/hints/weasley_store.webp b/game/interface/desk/hints/weasley_store.webp new file mode 100644 index 00000000..defe51e5 --- /dev/null +++ b/game/interface/desk/hints/weasley_store.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8684a862a16f04c0ecc7e2880465f0583fc30e48e41d68411032270587dc3c8 +size 3260 diff --git a/game/interface/desk/hints/work.webp b/game/interface/desk/hints/work.webp new file mode 100644 index 00000000..253a558c --- /dev/null +++ b/game/interface/desk/hints/work.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92a2d38a48cefaa743fef2ca7778c5882f8428fc6036b0f1e8dc026c6f5bb41d +size 8344 diff --git a/game/interface/desk/tissues.webp b/game/interface/desk/tissues.webp new file mode 100644 index 00000000..d8471cfc --- /dev/null +++ b/game/interface/desk/tissues.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d8b299f6824b7f96d6b075cd4d0ef71176ea609a11bc73835e2b7399de0a0fe +size 7864 diff --git a/game/interface/desk/tissues_hover.webp b/game/interface/desk/tissues_hover.webp new file mode 100644 index 00000000..1e626971 --- /dev/null +++ b/game/interface/desk/tissues_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dcd4b0ffe6ead3b5bb74b1c06982fd28f416e85b89ae95e03a0907f9bbfa8891 +size 10682 diff --git a/game/interface/desk/watch.webp b/game/interface/desk/watch.webp new file mode 100644 index 00000000..cdb79d52 --- /dev/null +++ b/game/interface/desk/watch.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8aa70bf512ddd71d59f6ab826629e4dca03c2439129383192a2b722258548f26 +size 14020 diff --git a/game/interface/desk/watch/day.webp b/game/interface/desk/watch/day.webp new file mode 100644 index 00000000..29aa52f9 --- /dev/null +++ b/game/interface/desk/watch/day.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a317696eceb3e0a498c99691aecfcfe346ead41dfa79a002e25149b3e0215a0c +size 270 diff --git a/game/interface/desk/watch/moon.webp b/game/interface/desk/watch/moon.webp new file mode 100644 index 00000000..6c8b7206 --- /dev/null +++ b/game/interface/desk/watch/moon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4845d40a8c3346e5ea7c7ce62d698431ad02717b10c42b8e9c6082903290d244 +size 1444 diff --git a/game/interface/desk/watch/night.webp b/game/interface/desk/watch/night.webp new file mode 100644 index 00000000..e4bed700 --- /dev/null +++ b/game/interface/desk/watch/night.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e004a31020e875e81834db2940c566e96f0874237ea7117de31f134352d75a58 +size 378 diff --git a/game/interface/desk/watch/rain.webp b/game/interface/desk/watch/rain.webp new file mode 100644 index 00000000..2f3136d5 --- /dev/null +++ b/game/interface/desk/watch/rain.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0f773b3f3da549accb3c4554b46886a4069133eb3010b6f4b57d483057214a5 +size 1894 diff --git a/game/interface/desk/watch/snow.webp b/game/interface/desk/watch/snow.webp new file mode 100644 index 00000000..2b045ce8 --- /dev/null +++ b/game/interface/desk/watch/snow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bf0d63edaa6817d215be47365520c7da97216c34cb0dc8774ba74dda79134ea8 +size 2580 diff --git a/game/interface/desk/watch/storm.webp b/game/interface/desk/watch/storm.webp new file mode 100644 index 00000000..9c7c1772 --- /dev/null +++ b/game/interface/desk/watch/storm.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42a08f8990bc5b20d9e82761e7c3c7dba613f10042c860853bf6959ab0397ba9 +size 2220 diff --git a/game/interface/desk/watch/sun.webp b/game/interface/desk/watch/sun.webp new file mode 100644 index 00000000..5038a684 --- /dev/null +++ b/game/interface/desk/watch/sun.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dbcd3d281c6dc16547eca9ecef238a01718cb561d52cb570614370a48a932964 +size 3292 diff --git a/game/interface/desk/watch_hover.webp b/game/interface/desk/watch_hover.webp new file mode 100644 index 00000000..98cd243e --- /dev/null +++ b/game/interface/desk/watch_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4949b07e84434725314f603b610e0874906e1e8a4de587fc95156a0af53fa94c +size 23314 diff --git a/game/interface/desk/work.webp b/game/interface/desk/work.webp new file mode 100644 index 00000000..265d6b57 --- /dev/null +++ b/game/interface/desk/work.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00079dd27dd81e16357a46d87fbe126220b0ad9b4b92dced9f71ae8847d0cd80 +size 69282 diff --git a/game/interface/desk/work_hover.webp b/game/interface/desk/work_hover.webp new file mode 100644 index 00000000..09403aca --- /dev/null +++ b/game/interface/desk/work_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a78d54e5a897a9642a20cd41261b37739b57683682d5fd411078e8b2ca93a45 +size 74228 diff --git a/game/interface/frames/gold/arrow.webp b/game/interface/frames/gold/arrow.webp new file mode 100644 index 00000000..1d52d615 --- /dev/null +++ b/game/interface/frames/gold/arrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7513a0cabb0ff5153864cefb9b10746d282fe4db1dda9d9a3d06825b15561f6 +size 374 diff --git a/game/interface/frames/gold/arrow2.webp b/game/interface/frames/gold/arrow2.webp new file mode 100644 index 00000000..a0f09681 --- /dev/null +++ b/game/interface/frames/gold/arrow2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8293d4b9b42396cdb3fbe2879c3df4da93991bb62e656f515faa09a24b9da7f2 +size 354 diff --git a/game/interface/frames/gold/arrow_up.webp b/game/interface/frames/gold/arrow_up.webp new file mode 100644 index 00000000..6c52d96b --- /dev/null +++ b/game/interface/frames/gold/arrow_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b06177d32922649919bc1acca1580b74681ccfe44203692242aed9c933efabcd +size 328 diff --git a/game/interface/frames/gold/check_false.webp b/game/interface/frames/gold/check_false.webp new file mode 100644 index 00000000..c227aefa --- /dev/null +++ b/game/interface/frames/gold/check_false.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b726aa200e90625dc1bc9b1b5730fecc9c85f061841409020ad7b7dcf8e5f8c +size 96 diff --git a/game/interface/frames/gold/check_none.webp b/game/interface/frames/gold/check_none.webp new file mode 100644 index 00000000..af64ce84 --- /dev/null +++ b/game/interface/frames/gold/check_none.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:729edbcb23717856478eb9a512b1f6cc5b371be13af810fea1c10dda48a2c6c5 +size 90 diff --git a/game/interface/frames/gold/check_true.webp b/game/interface/frames/gold/check_true.webp new file mode 100644 index 00000000..1e7f5956 --- /dev/null +++ b/game/interface/frames/gold/check_true.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d962eb673614a370ebe1635b70a68e753d84c53f9643e1667e04ffc40f5966ee +size 800 diff --git a/game/interface/frames/gold/circle.webp b/game/interface/frames/gold/circle.webp new file mode 100644 index 00000000..21db912d --- /dev/null +++ b/game/interface/frames/gold/circle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:923f60f1a253866d4706658abf651e0d7cd240cc3d4612cf97e4a355252e67ea +size 700 diff --git a/game/interface/frames/gold/frame.webp b/game/interface/frames/gold/frame.webp new file mode 100644 index 00000000..ff4201c3 --- /dev/null +++ b/game/interface/frames/gold/frame.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:797edd9a9cc1bb015c83e8d15d5653c56b65461c501e14be2a06a4460f24a3b3 +size 1770 diff --git a/game/interface/frames/gold/iconframe.webp b/game/interface/frames/gold/iconframe.webp new file mode 100644 index 00000000..951778f7 --- /dev/null +++ b/game/interface/frames/gold/iconframe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba4f02dca3e990f2b7345c26e3f6f5443c68f1ac73e8e478c7cf49bf37316d5b +size 92 diff --git a/game/interface/frames/gold/iconmed.webp b/game/interface/frames/gold/iconmed.webp new file mode 100644 index 00000000..086db6a4 --- /dev/null +++ b/game/interface/frames/gold/iconmed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e8b4338afa6f3ae246904f64e934e82a10c90e609807f3d2b63a8fb0c278f15 +size 94 diff --git a/game/interface/frames/gold/item_rectangle.webp b/game/interface/frames/gold/item_rectangle.webp new file mode 100644 index 00000000..af134cf7 --- /dev/null +++ b/game/interface/frames/gold/item_rectangle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77e17ddd0e47306b4ee817667a3f05edc3c2ca56b811f9958e73a2115e88014f +size 39806 diff --git a/game/interface/frames/gold/namebox.webp b/game/interface/frames/gold/namebox.webp new file mode 100644 index 00000000..124f2bf5 --- /dev/null +++ b/game/interface/frames/gold/namebox.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9202492718cc5f8403b6a60ce83e374cc75fc204cebc519a8a33fbf351a46464 +size 96 diff --git a/game/interface/frames/gold/outfit.webp b/game/interface/frames/gold/outfit.webp new file mode 100644 index 00000000..d42bcb1f --- /dev/null +++ b/game/interface/frames/gold/outfit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74dcf81411e839d178321ff1fc1020259d6d7380893a5661f69f156b1d465f6e +size 21628 diff --git a/game/interface/frames/gold/panel.webp b/game/interface/frames/gold/panel.webp new file mode 100644 index 00000000..5fd57a6d --- /dev/null +++ b/game/interface/frames/gold/panel.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86fb8561f8280336cac709d29776b66ccf86e25b88f2d7bed18cc900c82738a3 +size 3752 diff --git a/game/interface/frames/gold/panel_left.webp b/game/interface/frames/gold/panel_left.webp new file mode 100644 index 00000000..4fc1b82f --- /dev/null +++ b/game/interface/frames/gold/panel_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fd2679b4734006b70ab193708b16ca6e9176eed79492608cc41ecebb8a5e551 +size 1154 diff --git a/game/interface/frames/gold/radio_false.webp b/game/interface/frames/gold/radio_false.webp new file mode 100644 index 00000000..2eec2a5c --- /dev/null +++ b/game/interface/frames/gold/radio_false.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:560eb42e6760bd939a1966aa1efae20fded8e78f9007aafd9c849dbc0aa40c04 +size 796 diff --git a/game/interface/frames/gold/radio_none.webp b/game/interface/frames/gold/radio_none.webp new file mode 100644 index 00000000..92a43990 --- /dev/null +++ b/game/interface/frames/gold/radio_none.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6ddcbec961e0328e0561fbf5ac2c7e1671dce9964b3366637a5ad7c9e17e233 +size 732 diff --git a/game/interface/frames/gold/radio_true.webp b/game/interface/frames/gold/radio_true.webp new file mode 100644 index 00000000..f73f0880 --- /dev/null +++ b/game/interface/frames/gold/radio_true.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6962aea212a5d5700e735947b87a5b1f666c765808dd76ec0ca3f0e8af302d9e +size 1142 diff --git a/game/interface/frames/gold/spacer_left.webp b/game/interface/frames/gold/spacer_left.webp new file mode 100644 index 00000000..3ed3712d --- /dev/null +++ b/game/interface/frames/gold/spacer_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d1c86cf909ad63fc89bfa74a4e0bc0c585d0cc98ef82e52f91e1196b0368b0b9 +size 210 diff --git a/game/interface/frames/gold/wardrobe.webp b/game/interface/frames/gold/wardrobe.webp new file mode 100644 index 00000000..dee9fc7c --- /dev/null +++ b/game/interface/frames/gold/wardrobe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9356b7062d639a03bc15d9877f4e294ca2651cbe9fd69feac09d0d60f8eb5069 +size 132 diff --git a/game/interface/frames/gray/arrow.webp b/game/interface/frames/gray/arrow.webp new file mode 100644 index 00000000..d6e5f802 --- /dev/null +++ b/game/interface/frames/gray/arrow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3fac4fba47c7922e7661907f6acb07b9d7e52a9e5696006c7ac701c167ca2726 +size 366 diff --git a/game/interface/frames/gray/arrow2.webp b/game/interface/frames/gray/arrow2.webp new file mode 100644 index 00000000..e47e9bf2 --- /dev/null +++ b/game/interface/frames/gray/arrow2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:509eeeefe47f5674976577f3c695d8ccf59a06e1442236b5a111e89ed69a27ad +size 348 diff --git a/game/interface/frames/gray/arrow_up.webp b/game/interface/frames/gray/arrow_up.webp new file mode 100644 index 00000000..64004dd9 --- /dev/null +++ b/game/interface/frames/gray/arrow_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66f94116463c2a178fb2bcdadf0f01734e646c0a117f9d0bbc155abfb2f2d599 +size 322 diff --git a/game/interface/frames/gray/check_false.webp b/game/interface/frames/gray/check_false.webp new file mode 100644 index 00000000..2823435f --- /dev/null +++ b/game/interface/frames/gray/check_false.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1418ac3df30f8b82488cd5e0d96bc3bfcf3dd48f482bcf9e432dfc3e091ff70a +size 96 diff --git a/game/interface/frames/gray/check_none.webp b/game/interface/frames/gray/check_none.webp new file mode 100644 index 00000000..fcdba302 --- /dev/null +++ b/game/interface/frames/gray/check_none.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ecab7a2509e19483ccbc99d26520427773fb94cb349090dcbd7b3893cc8ef7cc +size 90 diff --git a/game/interface/frames/gray/check_true.webp b/game/interface/frames/gray/check_true.webp new file mode 100644 index 00000000..39fffc03 --- /dev/null +++ b/game/interface/frames/gray/check_true.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed22015fec3b8f1a047cbdc6118642cf469a8d402d49e8ccc2acf0dc81c9e775 +size 794 diff --git a/game/interface/frames/gray/circle.webp b/game/interface/frames/gray/circle.webp new file mode 100644 index 00000000..76c6f1a0 --- /dev/null +++ b/game/interface/frames/gray/circle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f845802d6303c05afe7bb774a331d79633b8052d3fe279d6f7f22d6db225813e +size 692 diff --git a/game/interface/frames/gray/frame.webp b/game/interface/frames/gray/frame.webp new file mode 100644 index 00000000..fc0a9b8a --- /dev/null +++ b/game/interface/frames/gray/frame.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8d9b217337c61a22cdcb82d9597317e62ccb6af94e44f004f3ac21075c35fca +size 1960 diff --git a/game/interface/frames/gray/iconframe.webp b/game/interface/frames/gray/iconframe.webp new file mode 100644 index 00000000..1e920ba5 --- /dev/null +++ b/game/interface/frames/gray/iconframe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c535fd322fa84cd281bfe5fd5489ee71082f248bc09dc3716adc85c98e0c478 +size 88 diff --git a/game/interface/frames/gray/iconmed.webp b/game/interface/frames/gray/iconmed.webp new file mode 100644 index 00000000..ad5331e7 --- /dev/null +++ b/game/interface/frames/gray/iconmed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48f1c9a784737efdce7b17e32ccf83f23dfb8ecdd35164e8b49bf39600b86f2d +size 94 diff --git a/game/interface/frames/gray/item_rectangle.webp b/game/interface/frames/gray/item_rectangle.webp new file mode 100644 index 00000000..8b06e723 --- /dev/null +++ b/game/interface/frames/gray/item_rectangle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:013b59a6cad6a5d9b14033ad9c2ae3331537e8f638f39ef76f995ae94411d1ff +size 32000 diff --git a/game/interface/frames/gray/namebox.webp b/game/interface/frames/gray/namebox.webp new file mode 100644 index 00000000..a7f0e7e7 --- /dev/null +++ b/game/interface/frames/gray/namebox.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f548143c95846c4e96445369ff78fad8fbd28ddb2ea672a6a5f65cf4291241a +size 94 diff --git a/game/interface/frames/gray/outfit.webp b/game/interface/frames/gray/outfit.webp new file mode 100644 index 00000000..2e410e1e --- /dev/null +++ b/game/interface/frames/gray/outfit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:937f63b0f3e876377ace4af722e48b3bfc7c5660d80c5e2c1b5645cb58b12cdb +size 14906 diff --git a/game/interface/frames/gray/panel.webp b/game/interface/frames/gray/panel.webp new file mode 100644 index 00000000..4deab4e9 --- /dev/null +++ b/game/interface/frames/gray/panel.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:49b88defd08c419fc9958e9e9f7eb958ad1aec6387cc573d0b155ee42cd80e6b +size 6096 diff --git a/game/interface/frames/gray/panel_left.webp b/game/interface/frames/gray/panel_left.webp new file mode 100644 index 00000000..cd30f5db --- /dev/null +++ b/game/interface/frames/gray/panel_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2bd1df25ba615757cc9426bbf165bb5d71f1bd697297afa49f6442862f81e60 +size 1478 diff --git a/game/interface/frames/gray/radio_false.webp b/game/interface/frames/gray/radio_false.webp new file mode 100644 index 00000000..b4f7f07d --- /dev/null +++ b/game/interface/frames/gray/radio_false.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e74a7ac3fcb6a8c4c9ce72f983e65db3767b6a98c6e9c62ee1351519976dc5fb +size 698 diff --git a/game/interface/frames/gray/radio_none.webp b/game/interface/frames/gray/radio_none.webp new file mode 100644 index 00000000..762f46ae --- /dev/null +++ b/game/interface/frames/gray/radio_none.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ba06e63f175caff0454955411e60da5d989bf645188ff92bda7be891bbf4f68 +size 772 diff --git a/game/interface/frames/gray/radio_true.webp b/game/interface/frames/gray/radio_true.webp new file mode 100644 index 00000000..6214a2ae --- /dev/null +++ b/game/interface/frames/gray/radio_true.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5d543eed2be58f81576b30b71f579d16bdfb7c63b7b0141bc098197191c162e +size 1046 diff --git a/game/interface/frames/gray/spacer_left.webp b/game/interface/frames/gray/spacer_left.webp new file mode 100644 index 00000000..9d648ca8 --- /dev/null +++ b/game/interface/frames/gray/spacer_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6802d7e2758583c604d4b9c00eac53e1dbf0f68f90c98c296ca1216f0a7c7e96 +size 216 diff --git a/game/interface/frames/gray/wardrobe.webp b/game/interface/frames/gray/wardrobe.webp new file mode 100644 index 00000000..8d026924 --- /dev/null +++ b/game/interface/frames/gray/wardrobe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e27ff21411fd85d851e7e5296b90f41a0d35c4752c980c686fa8652363dc1927 +size 130 diff --git a/game/interface/general/arrow_down.webp b/game/interface/general/arrow_down.webp new file mode 100644 index 00000000..169ce8e9 --- /dev/null +++ b/game/interface/general/arrow_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:310c6afb234db391b46601d985f84a69f89b374be48c30ff003577ae7f507e13 +size 4494 diff --git a/game/interface/general/arrow_up.webp b/game/interface/general/arrow_up.webp new file mode 100644 index 00000000..2ccc7bbe --- /dev/null +++ b/game/interface/general/arrow_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3286d2dafac0cd65778779044c6f4d679775da57ce478cc7fb6a76270c59d67b +size 4490 diff --git a/game/interface/general/button_arrow_down.webp b/game/interface/general/button_arrow_down.webp new file mode 100644 index 00000000..5c91b120 --- /dev/null +++ b/game/interface/general/button_arrow_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e2942363dbe70fbfa3ecd5f877cbd06afd103fc9153afe32f0ef749b3861d7e +size 1316 diff --git a/game/interface/general/button_arrow_down_hover.webp b/game/interface/general/button_arrow_down_hover.webp new file mode 100644 index 00000000..b39ce63f --- /dev/null +++ b/game/interface/general/button_arrow_down_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00e1d58126490d7359d68dbc7f036db3d1d1f45b8ea2efb39542290a4470ba8a +size 1648 diff --git a/game/interface/general/button_arrow_left.webp b/game/interface/general/button_arrow_left.webp new file mode 100644 index 00000000..c9018231 --- /dev/null +++ b/game/interface/general/button_arrow_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76862e535557d5d7469ebe304f99ec27658ca069daed132c1a147efa7ba062c6 +size 1306 diff --git a/game/interface/general/button_arrow_left_hover.webp b/game/interface/general/button_arrow_left_hover.webp new file mode 100644 index 00000000..27ccf6a6 --- /dev/null +++ b/game/interface/general/button_arrow_left_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2229665405f3b677784b8b749b915252247f072fdd39fe49e083cba757888163 +size 1636 diff --git a/game/interface/general/button_arrow_right.webp b/game/interface/general/button_arrow_right.webp new file mode 100644 index 00000000..22d0df1a --- /dev/null +++ b/game/interface/general/button_arrow_right.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4571f683bc7bedf4cc1686f5831d225f3398464a29eca8c6e8f88675c63886df +size 1308 diff --git a/game/interface/general/button_arrow_right_hover.webp b/game/interface/general/button_arrow_right_hover.webp new file mode 100644 index 00000000..91873e44 --- /dev/null +++ b/game/interface/general/button_arrow_right_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cf59ac241c3228e46cea6e67be6472bd8995419941fb804cd6db69e7d0eada9 +size 1632 diff --git a/game/interface/general/button_arrow_up.webp b/game/interface/general/button_arrow_up.webp new file mode 100644 index 00000000..87380be9 --- /dev/null +++ b/game/interface/general/button_arrow_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:490dab07b383bba73796580e6b72beb7fd0ff2f555a1455912b4c7d7892fd037 +size 1316 diff --git a/game/interface/general/button_arrow_up_hover.webp b/game/interface/general/button_arrow_up_hover.webp new file mode 100644 index 00000000..eab49c31 --- /dev/null +++ b/game/interface/general/button_arrow_up_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b5528d9136ea2ffe20b2b4dda0cbdbce1ce6f750472c9b4a610bfa7fdcf8a17 +size 1636 diff --git a/game/interface/general/button_close.webp b/game/interface/general/button_close.webp new file mode 100644 index 00000000..d24c3c0f --- /dev/null +++ b/game/interface/general/button_close.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a31e2a8fef1bf7642ef1002a88f4144138090c0b0c79b7f34cf5283036b420eb +size 1116 diff --git a/game/interface/general/button_close_hover.webp b/game/interface/general/button_close_hover.webp new file mode 100644 index 00000000..64561152 --- /dev/null +++ b/game/interface/general/button_close_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:668fccb7e5fcdc72335caff845b64ac6ef2b2cf20e47e7751158f8b5b5c9a750 +size 1624 diff --git a/game/interface/general/gold/button_arrow_down.webp b/game/interface/general/gold/button_arrow_down.webp new file mode 100644 index 00000000..42356ab7 --- /dev/null +++ b/game/interface/general/gold/button_arrow_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7c985fd3c5711dcc2e486d94a778e3ace3ff4e1eac665ec997f1dbcf7d95c8b +size 1208 diff --git a/game/interface/general/gold/button_arrow_down_hover.webp b/game/interface/general/gold/button_arrow_down_hover.webp new file mode 100644 index 00000000..4701c128 --- /dev/null +++ b/game/interface/general/gold/button_arrow_down_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9ea1fea60fc31591e02905895fccd200ac8e2180334ccf73338a4d01e639e32 +size 1498 diff --git a/game/interface/general/gold/button_arrow_left.webp b/game/interface/general/gold/button_arrow_left.webp new file mode 100644 index 00000000..bd0691d9 --- /dev/null +++ b/game/interface/general/gold/button_arrow_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa130a2c80ef06c7ab5a77f6a6f66d2495fe3f8695dd54dc68a8fb3f2c55a5e7 +size 1164 diff --git a/game/interface/general/gold/button_arrow_left_hover.webp b/game/interface/general/gold/button_arrow_left_hover.webp new file mode 100644 index 00000000..bfa89089 --- /dev/null +++ b/game/interface/general/gold/button_arrow_left_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5ad903ea796699d958381750a376992493e362d2e4e50ebf459586c14ad98e2 +size 1486 diff --git a/game/interface/general/gold/button_arrow_right.webp b/game/interface/general/gold/button_arrow_right.webp new file mode 100644 index 00000000..bb9727ab --- /dev/null +++ b/game/interface/general/gold/button_arrow_right.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ec17d6506559526216f34d14bb404f1402e267cf00500616e8a46d711a3baea +size 1186 diff --git a/game/interface/general/gold/button_arrow_right_hover.webp b/game/interface/general/gold/button_arrow_right_hover.webp new file mode 100644 index 00000000..287db6da --- /dev/null +++ b/game/interface/general/gold/button_arrow_right_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aee4a890a98b41b8f140b9bbb96e79e6555e654328c0974056d0b25e0674789b +size 1490 diff --git a/game/interface/general/gold/button_arrow_up.webp b/game/interface/general/gold/button_arrow_up.webp new file mode 100644 index 00000000..7398b4f1 --- /dev/null +++ b/game/interface/general/gold/button_arrow_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6fc9e7521739ac90c18a43e7ea8a0ff69a6bcad7f47f045f2676245edd208ce +size 1186 diff --git a/game/interface/general/gold/button_arrow_up_hover.webp b/game/interface/general/gold/button_arrow_up_hover.webp new file mode 100644 index 00000000..eb6d3f1e --- /dev/null +++ b/game/interface/general/gold/button_arrow_up_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24571cae8097ea040988d20ac853c3342ceb71a059e8632df43f7284c0e40740 +size 1484 diff --git a/game/interface/general/gold/button_close.webp b/game/interface/general/gold/button_close.webp new file mode 100644 index 00000000..177c130d --- /dev/null +++ b/game/interface/general/gold/button_close.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:746241771b9e30f2b8058bb3e598857bec92c96d6442d0f5c101fcb22e1da686 +size 1564 diff --git a/game/interface/general/gold/button_close_hover.webp b/game/interface/general/gold/button_close_hover.webp new file mode 100644 index 00000000..91ea6353 --- /dev/null +++ b/game/interface/general/gold/button_close_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:398919b5a84d245180890018b40be74cb6067050bef4f3cacb87ac94cd797901 +size 1974 diff --git a/game/interface/general/gold/button_select.webp b/game/interface/general/gold/button_select.webp new file mode 100644 index 00000000..4cda9979 --- /dev/null +++ b/game/interface/general/gold/button_select.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74875ced7c43e3d2fda2fb5c6f4c1aee5647786002f97f3cf8fa9874bba3c152 +size 118 diff --git a/game/interface/general/gold/button_select_hover.webp b/game/interface/general/gold/button_select_hover.webp new file mode 100644 index 00000000..907177a9 --- /dev/null +++ b/game/interface/general/gold/button_select_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:482f627bf2b180e00659acd775cdf0f8b923904560bce86821784435d15cd4e4 +size 118 diff --git a/game/interface/general/gold/button_wide.webp b/game/interface/general/gold/button_wide.webp new file mode 100644 index 00000000..de6e9e7e --- /dev/null +++ b/game/interface/general/gold/button_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71caf06ecb18c0e89a855b9eab33dc5a7435d5801a67e546a0c92ff2d2aabf3d +size 124 diff --git a/game/interface/general/gold/check_false.webp b/game/interface/general/gold/check_false.webp new file mode 100644 index 00000000..162ef666 --- /dev/null +++ b/game/interface/general/gold/check_false.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fc7a158a18d4f1207bd6e74301880d050c74169c6a73d95c356a264ddeac648 +size 230 diff --git a/game/interface/general/gold/check_false_hidden.webp b/game/interface/general/gold/check_false_hidden.webp new file mode 100644 index 00000000..75388bbb --- /dev/null +++ b/game/interface/general/gold/check_false_hidden.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:298ff17ee980a18bbd12c2d92b40a482738662bb5d57dde15c53b4f5654e1b5a +size 142 diff --git a/game/interface/general/gold/check_true.webp b/game/interface/general/gold/check_true.webp new file mode 100644 index 00000000..810aa5e1 --- /dev/null +++ b/game/interface/general/gold/check_true.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:800953a7201e41f92f31437489641cd61563ba9bc2d386064ffc5e74cde7209e +size 712 diff --git a/game/interface/general/gold/check_true_hidden.webp b/game/interface/general/gold/check_true_hidden.webp new file mode 100644 index 00000000..f75828a4 --- /dev/null +++ b/game/interface/general/gold/check_true_hidden.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac9c0d7736c96b76da90a5d4a68c9dab20c22296f527bc94bf09e7a5db2fd5da +size 410 diff --git a/game/interface/general/gold/clothes.webp b/game/interface/general/gold/clothes.webp new file mode 100644 index 00000000..90b7718b --- /dev/null +++ b/game/interface/general/gold/clothes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81eb750775246be49ef5112d47267f3ff665f31b40c4dff3bd49144ab132873f +size 788 diff --git a/game/interface/general/gold/clothes_hover.webp b/game/interface/general/gold/clothes_hover.webp new file mode 100644 index 00000000..3ee86bb9 --- /dev/null +++ b/game/interface/general/gold/clothes_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a12408569103f56d7575ed050745f475d8f05a88b3deba72e90ca50bdae96b7 +size 1036 diff --git a/game/interface/general/gold/spacer.webp b/game/interface/general/gold/spacer.webp new file mode 100644 index 00000000..09fdfbde --- /dev/null +++ b/game/interface/general/gold/spacer.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbbfcfe5a74153794e73c8e3189287f3da3281b17d0163487e34aa997e9ef3ec +size 144 diff --git a/game/interface/general/gold_bag.webp b/game/interface/general/gold_bag.webp new file mode 100644 index 00000000..9a406812 --- /dev/null +++ b/game/interface/general/gold_bag.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e47ac87ef49a7753e47efd4f5a98ea0dad4544f3ce5f8a1a841f40e8187a3247 +size 10032 diff --git a/game/interface/general/gold_bag_hover.webp b/game/interface/general/gold_bag_hover.webp new file mode 100644 index 00000000..b7e5a8a3 --- /dev/null +++ b/game/interface/general/gold_bag_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32b3f8a2e4df6bb9cc5cc909de6e01bbab17201f1e0edfb172434a4f8ba8f4ea +size 11404 diff --git a/game/interface/general/gray/button_arrow_down.webp b/game/interface/general/gray/button_arrow_down.webp new file mode 100644 index 00000000..b42eb482 --- /dev/null +++ b/game/interface/general/gray/button_arrow_down.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c2256a5a4649084069117ea93476db0e74f2f2daf48ca0bdadfcba9f80441e1 +size 1030 diff --git a/game/interface/general/gray/button_arrow_down_hover.webp b/game/interface/general/gray/button_arrow_down_hover.webp new file mode 100644 index 00000000..b83a7c21 --- /dev/null +++ b/game/interface/general/gray/button_arrow_down_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f6d3dc443c218b7fb71a3c726454c06dffac0cf07a42d95fa0427624e9c2d32f +size 1278 diff --git a/game/interface/general/gray/button_arrow_left.webp b/game/interface/general/gray/button_arrow_left.webp new file mode 100644 index 00000000..007b0fd5 --- /dev/null +++ b/game/interface/general/gray/button_arrow_left.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08c2f518f1e872c785bcdff521e143f3c342b3497537dbbc5afa88f838338e80 +size 1014 diff --git a/game/interface/general/gray/button_arrow_left_hover.webp b/game/interface/general/gray/button_arrow_left_hover.webp new file mode 100644 index 00000000..ae004035 --- /dev/null +++ b/game/interface/general/gray/button_arrow_left_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:698446474d362208752b10b180b290ebc3df19392eff8293b8434983fbb05de0 +size 1278 diff --git a/game/interface/general/gray/button_arrow_right.webp b/game/interface/general/gray/button_arrow_right.webp new file mode 100644 index 00000000..52248ff8 --- /dev/null +++ b/game/interface/general/gray/button_arrow_right.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3eaaadddc5b1a8bfa62950d3ecf972432a319b543058a881801dac4bd54e868 +size 1010 diff --git a/game/interface/general/gray/button_arrow_right_hover.webp b/game/interface/general/gray/button_arrow_right_hover.webp new file mode 100644 index 00000000..115c556c --- /dev/null +++ b/game/interface/general/gray/button_arrow_right_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:caff1368cd5abe21e42a93abf9480c176fe31f31a1a5132b5e304a985c668192 +size 1278 diff --git a/game/interface/general/gray/button_arrow_up.webp b/game/interface/general/gray/button_arrow_up.webp new file mode 100644 index 00000000..eda51e89 --- /dev/null +++ b/game/interface/general/gray/button_arrow_up.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:577537bdfa1a597206f2913ae4ee2ca401caa5eb45d12893288c2fca81abafaf +size 1014 diff --git a/game/interface/general/gray/button_arrow_up_hover.webp b/game/interface/general/gray/button_arrow_up_hover.webp new file mode 100644 index 00000000..56f00357 --- /dev/null +++ b/game/interface/general/gray/button_arrow_up_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:00414b822b2a477db5a596086420b47cd4cefc9328a53c4d46df6f745cdf4597 +size 1274 diff --git a/game/interface/general/gray/button_close.webp b/game/interface/general/gray/button_close.webp new file mode 100644 index 00000000..fbe9537b --- /dev/null +++ b/game/interface/general/gray/button_close.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:931653ac3c612bb1bd1b85d49b6b9df4892e4939ab9a4ee10305a1960abc96b1 +size 1086 diff --git a/game/interface/general/gray/button_close_hover.webp b/game/interface/general/gray/button_close_hover.webp new file mode 100644 index 00000000..a07833a4 --- /dev/null +++ b/game/interface/general/gray/button_close_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e9287bb70ec08f1b819ecbaad4cd21f967426ea08dd244053fb58b428bc514c3 +size 1522 diff --git a/game/interface/general/gray/button_select.webp b/game/interface/general/gray/button_select.webp new file mode 100644 index 00000000..cb5091f8 --- /dev/null +++ b/game/interface/general/gray/button_select.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f7bf9c1d00286134d4fc46ce4d55ae8dc61f0c91c62c61ae73b8a7eb0f5069b +size 106 diff --git a/game/interface/general/gray/button_select_hover.webp b/game/interface/general/gray/button_select_hover.webp new file mode 100644 index 00000000..43955ed1 --- /dev/null +++ b/game/interface/general/gray/button_select_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04a13204b6df57d271582d71948e106a49e04f94b45a5bf9bf6c185bfef77c1f +size 104 diff --git a/game/interface/general/gray/button_wide.webp b/game/interface/general/gray/button_wide.webp new file mode 100644 index 00000000..7e37f4fb --- /dev/null +++ b/game/interface/general/gray/button_wide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8412c729136b9d945e9d31a3feadb7b5705d7602a0546dcc47ca559819070412 +size 106 diff --git a/game/interface/general/gray/check_false.webp b/game/interface/general/gray/check_false.webp new file mode 100644 index 00000000..75388bbb --- /dev/null +++ b/game/interface/general/gray/check_false.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:298ff17ee980a18bbd12c2d92b40a482738662bb5d57dde15c53b4f5654e1b5a +size 142 diff --git a/game/interface/general/gray/check_false_hidden.webp b/game/interface/general/gray/check_false_hidden.webp new file mode 100644 index 00000000..75388bbb --- /dev/null +++ b/game/interface/general/gray/check_false_hidden.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:298ff17ee980a18bbd12c2d92b40a482738662bb5d57dde15c53b4f5654e1b5a +size 142 diff --git a/game/interface/general/gray/check_true.webp b/game/interface/general/gray/check_true.webp new file mode 100644 index 00000000..0804ae5c --- /dev/null +++ b/game/interface/general/gray/check_true.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60e0b73781dc5b9a2a9b749bce8d813e93f09edfa41cd06a0d11f6f2614c641f +size 642 diff --git a/game/interface/general/gray/check_true_hidden.webp b/game/interface/general/gray/check_true_hidden.webp new file mode 100644 index 00000000..f75828a4 --- /dev/null +++ b/game/interface/general/gray/check_true_hidden.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac9c0d7736c96b76da90a5d4a68c9dab20c22296f527bc94bf09e7a5db2fd5da +size 410 diff --git a/game/interface/general/gray/clothes.webp b/game/interface/general/gray/clothes.webp new file mode 100644 index 00000000..90b7718b --- /dev/null +++ b/game/interface/general/gray/clothes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81eb750775246be49ef5112d47267f3ff665f31b40c4dff3bd49144ab132873f +size 788 diff --git a/game/interface/general/gray/clothes_hover.webp b/game/interface/general/gray/clothes_hover.webp new file mode 100644 index 00000000..20b7038d --- /dev/null +++ b/game/interface/general/gray/clothes_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3db898d6a137f1a81886aa5d98a9cb728227c36d6a6f535df6d793d4bbcd10d8 +size 992 diff --git a/game/interface/general/gray/spacer.webp b/game/interface/general/gray/spacer.webp new file mode 100644 index 00000000..09fdfbde --- /dev/null +++ b/game/interface/general/gray/spacer.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbbfcfe5a74153794e73c8e3189287f3da3281b17d0163487e34aa997e9ef3ec +size 144 diff --git a/game/interface/icon.webp b/game/interface/icon.webp new file mode 100644 index 00000000..aaae05f4 --- /dev/null +++ b/game/interface/icon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea916ac799bc52cf63baafbefc446e698f48dd15cf84e9b6a3bdbc1db6f0b9e3 +size 27702 diff --git a/game/interface/icons/adult_mag.webp b/game/interface/icons/adult_mag.webp new file mode 100644 index 00000000..7d3bb270 --- /dev/null +++ b/game/interface/icons/adult_mag.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbeb53ef8d80cc166f51710e6d16f69d4c2bf1a2c1cfef948251a4f587a309e2 +size 48320 diff --git a/game/interface/icons/agrabah_poster.webp b/game/interface/icons/agrabah_poster.webp new file mode 100644 index 00000000..62197104 --- /dev/null +++ b/game/interface/icons/agrabah_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:163f2e311382270c30a62e0cd369ef87fd7cebf1253566aac5bb55ea8e449967 +size 36836 diff --git a/game/interface/icons/animal_hair.webp b/game/interface/icons/animal_hair.webp new file mode 100644 index 00000000..fb8aff9c --- /dev/null +++ b/game/interface/icons/animal_hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb7b79389de96e7965408f8c49512518c18f0c257fb610af4a03aa9444872e28 +size 43462 diff --git a/game/interface/icons/ass_potion.webp b/game/interface/icons/ass_potion.webp new file mode 100644 index 00000000..469e92a8 --- /dev/null +++ b/game/interface/icons/ass_potion.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f82a01213b7b9034033dffee9f9d29f5338e96442b46545f9843525f8989c36b +size 72708 diff --git a/game/interface/icons/badge_spew.webp b/game/interface/icons/badge_spew.webp new file mode 100644 index 00000000..901fe292 --- /dev/null +++ b/game/interface/icons/badge_spew.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54f9c4252898011a445bace3c2ad02500c3209f63ed9226f6129a035563bd195 +size 18566 diff --git a/game/interface/icons/ballgag_and_cuffs.webp b/game/interface/icons/ballgag_and_cuffs.webp new file mode 100644 index 00000000..8eb0a7c6 --- /dev/null +++ b/game/interface/icons/ballgag_and_cuffs.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfec32df4c65037e1fdf2edf2886b8ab020ec6a08cc99a6a9cadcc7bb34d084f +size 46476 diff --git a/game/interface/icons/bat_spleen.webp b/game/interface/icons/bat_spleen.webp new file mode 100644 index 00000000..8462d8de --- /dev/null +++ b/game/interface/icons/bat_spleen.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8196cc054abe9acc528d41f89634d2486d5dabc56233c47887c4f1de63cdd4f5 +size 120766 diff --git a/game/interface/icons/bats_trophy.webp b/game/interface/icons/bats_trophy.webp new file mode 100644 index 00000000..be3a14d4 --- /dev/null +++ b/game/interface/icons/bats_trophy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:327f70d8ad85db99be514f665d2124461ac6e31267914a0c039572b163f2d48d +size 12466 diff --git a/game/interface/icons/beads.webp b/game/interface/icons/beads.webp new file mode 100644 index 00000000..5bfd7a89 --- /dev/null +++ b/game/interface/icons/beads.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:912c728167f69468bdf97284c29874a1a05b5a8271ce7f811cd6493acf630a87 +size 29012 diff --git a/game/interface/icons/bicorn_horn.webp b/game/interface/icons/bicorn_horn.webp new file mode 100644 index 00000000..00f6b79a --- /dev/null +++ b/game/interface/icons/bicorn_horn.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50afd869eadd70cf28929a6a51c1029bf380cba419c4e658714881df33407ea4 +size 77798 diff --git a/game/interface/icons/box_blue_1.webp b/game/interface/icons/box_blue_1.webp new file mode 100644 index 00000000..eb3e76a4 --- /dev/null +++ b/game/interface/icons/box_blue_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bdb4e4931948f91a4640f53a00a503c2bcb2d5cc568bdad8a4b94c3737c292c6 +size 27844 diff --git a/game/interface/icons/box_blue_2.webp b/game/interface/icons/box_blue_2.webp new file mode 100644 index 00000000..67572deb --- /dev/null +++ b/game/interface/icons/box_blue_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8959ac6fc0234e17d6d21631710022904933e65ff2c96fe76a0e73744c885f4 +size 30412 diff --git a/game/interface/icons/box_blue_3.webp b/game/interface/icons/box_blue_3.webp new file mode 100644 index 00000000..2b9b80d1 --- /dev/null +++ b/game/interface/icons/box_blue_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e24e340895db780dab6c95d0c560d1b3e8eff4c4028d898355b7b16b9ad580dc +size 23724 diff --git a/game/interface/icons/box_blue_4.webp b/game/interface/icons/box_blue_4.webp new file mode 100644 index 00000000..234df8e7 --- /dev/null +++ b/game/interface/icons/box_blue_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d3b44144c0e571b11e0a17a06f0ea65ccadc426406f09f6bbe8e5a5939c308a +size 27076 diff --git a/game/interface/icons/box_blue_5.webp b/game/interface/icons/box_blue_5.webp new file mode 100644 index 00000000..f8ffa223 --- /dev/null +++ b/game/interface/icons/box_blue_5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29cff2083c9fac03046d65789bea42d4a310ea28ffb90173a62148422aec4da8 +size 34722 diff --git a/game/interface/icons/box_brown_1.webp b/game/interface/icons/box_brown_1.webp new file mode 100644 index 00000000..e76ae50d --- /dev/null +++ b/game/interface/icons/box_brown_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20271d2aa5868c12a93bca3d33b422f4aec5fc59466bfe633599f3c5426aa2ee +size 27048 diff --git a/game/interface/icons/box_brown_2.webp b/game/interface/icons/box_brown_2.webp new file mode 100644 index 00000000..1389794e --- /dev/null +++ b/game/interface/icons/box_brown_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f5a7edd61686a6dc55dd6c9fa4b4cf09cfca00ecce56fb9f82a325cbc76a433 +size 23378 diff --git a/game/interface/icons/box_brown_3.webp b/game/interface/icons/box_brown_3.webp new file mode 100644 index 00000000..2974067b --- /dev/null +++ b/game/interface/icons/box_brown_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:893b425e68c2cdce6ee2fd6c34bb2e64a795eb66aa21ff8387839c94189b9b4b +size 26044 diff --git a/game/interface/icons/box_brown_4.webp b/game/interface/icons/box_brown_4.webp new file mode 100644 index 00000000..671edde5 --- /dev/null +++ b/game/interface/icons/box_brown_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d3514aa799441e12856fc4c0694ea1c5f3b1d0b149aaf6ef3d3e3110b855e2d +size 25762 diff --git a/game/interface/icons/box_red_1.webp b/game/interface/icons/box_red_1.webp new file mode 100644 index 00000000..69adf036 --- /dev/null +++ b/game/interface/icons/box_red_1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37737532adfd8383eaa1af410d3194e731aebfe77c49a0d84792f77561fe6412 +size 17400 diff --git a/game/interface/icons/box_red_2.webp b/game/interface/icons/box_red_2.webp new file mode 100644 index 00000000..a3560392 --- /dev/null +++ b/game/interface/icons/box_red_2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b287e0c2a2e1d3619dd5e4c72ae2c815d94db12f310cd2d5a492c76888d05d83 +size 18148 diff --git a/game/interface/icons/box_red_3.webp b/game/interface/icons/box_red_3.webp new file mode 100644 index 00000000..791455e9 --- /dev/null +++ b/game/interface/icons/box_red_3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d0b18d4499f328527c6662f4129ca75601e9eb943ef3cb2612810e980fec2e71 +size 24178 diff --git a/game/interface/icons/box_red_4.webp b/game/interface/icons/box_red_4.webp new file mode 100644 index 00000000..0388b2f1 --- /dev/null +++ b/game/interface/icons/box_red_4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9e1bb7a498c948f28f836f4eae28bf7f61b0e85d78f261b57f068362bc2976a +size 24484 diff --git a/game/interface/icons/box_red_5.webp b/game/interface/icons/box_red_5.webp new file mode 100644 index 00000000..7eb4ac52 --- /dev/null +++ b/game/interface/icons/box_red_5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4043e10d3d3c81557305245ce24df6ea4a406517473150a25e9568a9f0a7c396 +size 18826 diff --git a/game/interface/icons/breast_potion.webp b/game/interface/icons/breast_potion.webp new file mode 100644 index 00000000..8fb2879b --- /dev/null +++ b/game/interface/icons/breast_potion.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:314f34dba262a76137df5e292eea4cf41844a176fb67faa907c52c13d927845f +size 81270 diff --git a/game/interface/icons/broom.webp b/game/interface/icons/broom.webp new file mode 100644 index 00000000..4b9118c2 --- /dev/null +++ b/game/interface/icons/broom.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0558462cc050a88dd06f93e446b42a181d1eff7dd9eddec9987f252b324db39f +size 20510 diff --git a/game/interface/icons/butterbeer.webp b/game/interface/icons/butterbeer.webp new file mode 100644 index 00000000..fcceaa8d --- /dev/null +++ b/game/interface/icons/butterbeer.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7a212281e99923046b6529c1beeb43c27ad3b5f56b351f770b26e64415ab1f2 +size 28590 diff --git a/game/interface/icons/buttplug_large.webp b/game/interface/icons/buttplug_large.webp new file mode 100644 index 00000000..e6afd58f --- /dev/null +++ b/game/interface/icons/buttplug_large.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cff0ad01fd4d997263709d56004c1048591f6e0af412ae37efbfc7648ba74825 +size 23664 diff --git a/game/interface/icons/buttplug_medium.webp b/game/interface/icons/buttplug_medium.webp new file mode 100644 index 00000000..fa73855c --- /dev/null +++ b/game/interface/icons/buttplug_medium.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4c885f7e35f81709ab9f86454a13693635c81267660c13c0cafc80f5ebb42dd +size 26098 diff --git a/game/interface/icons/buttplug_small.webp b/game/interface/icons/buttplug_small.webp new file mode 100644 index 00000000..fec4ff05 --- /dev/null +++ b/game/interface/icons/buttplug_small.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c8d70422278616e882c230a43a55a77c59a19244bb2f94f24ad4a4008a0e2d4 +size 12610 diff --git a/game/interface/icons/buttplugs.webp b/game/interface/icons/buttplugs.webp new file mode 100644 index 00000000..eed51a1a --- /dev/null +++ b/game/interface/icons/buttplugs.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7190b0bfb49dabf387851a12093498ad652980c70a94b1cdfd57029bacc52315 +size 33360 diff --git a/game/interface/icons/cards.webp b/game/interface/icons/cards.webp new file mode 100644 index 00000000..3803a5d8 --- /dev/null +++ b/game/interface/icons/cards.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5c5965302551eb29fb259dd25a675c1fd4a079719a31143b8fac59505b0debff +size 21674 diff --git a/game/interface/icons/cat_potion.webp b/game/interface/icons/cat_potion.webp new file mode 100644 index 00000000..e6d99dbe --- /dev/null +++ b/game/interface/icons/cat_potion.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa6a1a23bb0482951cce008b9a8c98c37d6dfa3fac461a718e6d275160106207 +size 75468 diff --git a/game/interface/icons/chocolate.webp b/game/interface/icons/chocolate.webp new file mode 100644 index 00000000..5458c110 --- /dev/null +++ b/game/interface/icons/chocolate.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6646c0a1851cc98d3c90bf7776722319a201fb4d59a8137a51f1cc1cb9f8cdc4 +size 23238 diff --git a/game/interface/icons/collar.webp b/game/interface/icons/collar.webp new file mode 100644 index 00000000..7b3bab69 --- /dev/null +++ b/game/interface/icons/collar.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eda70fed319566d33d7c552b017939e68e5b4d577dfe39c0d4607b37771e1eb4 +size 64290 diff --git a/game/interface/icons/condoms.webp b/game/interface/icons/condoms.webp new file mode 100644 index 00000000..57c6ed28 --- /dev/null +++ b/game/interface/icons/condoms.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1f7154d7dc1b85fc6fe557363b11911fcee84dd7909205b5b592660142ebc63 +size 27578 diff --git a/game/interface/icons/crest_trophy.webp b/game/interface/icons/crest_trophy.webp new file mode 100644 index 00000000..2276c216 --- /dev/null +++ b/game/interface/icons/crest_trophy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f501866a0259e4a5639bda5051a2cee58659b90b851cc3ee0da2b13039888482 +size 40358 diff --git a/game/interface/icons/dried_nettle.webp b/game/interface/icons/dried_nettle.webp new file mode 100644 index 00000000..d127d313 --- /dev/null +++ b/game/interface/icons/dried_nettle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ab8153c3a2c1f72f7fe58d237f5f71d75bc4b017b1b93f34ab81ba42d5d649d +size 145924 diff --git a/game/interface/icons/feather_duster.webp b/game/interface/icons/feather_duster.webp new file mode 100644 index 00000000..11688af0 --- /dev/null +++ b/game/interface/icons/feather_duster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76cd54a49e6a31009f2cac761feac726a2427d7b333e3e15a660c84c4701f280 +size 26430 diff --git a/game/interface/icons/firewhisky.webp b/game/interface/icons/firewhisky.webp new file mode 100644 index 00000000..5881ec81 --- /dev/null +++ b/game/interface/icons/firewhisky.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0cbdda70d41053793a4f0f406de939dfc6afd88ba896dbf91933e1d8dfd385b0 +size 24140 diff --git a/game/interface/icons/fluxweed.webp b/game/interface/icons/fluxweed.webp new file mode 100644 index 00000000..14d3fac2 --- /dev/null +++ b/game/interface/icons/fluxweed.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fa2013e848bd107d730148529f1a5a6e354eb7008bcf7a30816d4096d83afbf +size 46558 diff --git a/game/interface/icons/galadriel1_book.webp b/game/interface/icons/galadriel1_book.webp new file mode 100644 index 00000000..a4c7a428 --- /dev/null +++ b/game/interface/icons/galadriel1_book.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6ab5287c15bc2d591d6e27fbc01f4a75f81dceed9d22800cd484e3aa32ccb0b4 +size 42490 diff --git a/game/interface/icons/galadriel2_book.webp b/game/interface/icons/galadriel2_book.webp new file mode 100644 index 00000000..93e9ba4c --- /dev/null +++ b/game/interface/icons/galadriel2_book.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b40896aa69c16f09ffe09b1cadc143c32b15d026b8d22dc13b06d083cfcd9bc8 +size 43654 diff --git a/game/interface/icons/game_of_chairs1_book.webp b/game/interface/icons/game_of_chairs1_book.webp new file mode 100644 index 00000000..d54ba1c0 --- /dev/null +++ b/game/interface/icons/game_of_chairs1_book.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:196245abced73680a57fb1a1afe7da127a662302a378e2a61ad2338ca46a47b0 +size 32624 diff --git a/game/interface/icons/game_of_chairs2_book.webp b/game/interface/icons/game_of_chairs2_book.webp new file mode 100644 index 00000000..12290951 --- /dev/null +++ b/game/interface/icons/game_of_chairs2_book.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d4857274e22dae64b6d651be0b74a83b0e2679dbb3ece0f22cac8f841459e23a +size 43418 diff --git a/game/interface/icons/game_of_chairs3_book.webp b/game/interface/icons/game_of_chairs3_book.webp new file mode 100644 index 00000000..097b396d --- /dev/null +++ b/game/interface/icons/game_of_chairs3_book.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd6227550d0ccb4786acce3a410486b07167d4de01eb6c6667964fd34918a175 +size 36078 diff --git a/game/interface/icons/game_of_chairs8_book.webp b/game/interface/icons/game_of_chairs8_book.webp new file mode 100644 index 00000000..bc762a49 --- /dev/null +++ b/game/interface/icons/game_of_chairs8_book.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f55ad67d6dfc95fa63c1a9d2c62b76b5b66e92c8da4e7fb9ac06569a0f10024 +size 40606 diff --git a/game/interface/icons/generic_book.webp b/game/interface/icons/generic_book.webp new file mode 100644 index 00000000..1da0f379 --- /dev/null +++ b/game/interface/icons/generic_book.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a5278dd1c79f831d36fadde398ef58a1529ad2d80b3afa880656207bb420886 +size 46948 diff --git a/game/interface/icons/generic_scroll.webp b/game/interface/icons/generic_scroll.webp new file mode 100644 index 00000000..c1e9b163 --- /dev/null +++ b/game/interface/icons/generic_scroll.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91ba8025fed262538aae4bdcaeef5684a898b8e88435dfc15bd8a3c3cff98224 +size 27380 diff --git a/game/interface/icons/girls_mag.webp b/game/interface/icons/girls_mag.webp new file mode 100644 index 00000000..67345787 --- /dev/null +++ b/game/interface/icons/girls_mag.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:73337cbd0711421d28025cd8fd03e55a8d658aa11e393c651ce4a96c7b0f4966 +size 58486 diff --git a/game/interface/icons/gold.webp b/game/interface/icons/gold.webp new file mode 100644 index 00000000..91536fa0 --- /dev/null +++ b/game/interface/icons/gold.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d19814294c2be15ba2379afa28a9758f5ba11e289d9cef9360b3d7a2f19efbdb +size 18738 diff --git a/game/interface/icons/gryffindor_poster.webp b/game/interface/icons/gryffindor_poster.webp new file mode 100644 index 00000000..ac43d6b9 --- /dev/null +++ b/game/interface/icons/gryffindor_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6e450ddb5719d237f776e92d7a28b821644c132762c52f9947337418b7d124e7 +size 15292 diff --git a/game/interface/icons/hair_hermione.webp b/game/interface/icons/hair_hermione.webp new file mode 100644 index 00000000..3b4a5c4d --- /dev/null +++ b/game/interface/icons/hair_hermione.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:642e8122d333332c00414adb4d8db67615dfc924d401fe21200f03b1e5e05652 +size 32162 diff --git a/game/interface/icons/hair_luna.webp b/game/interface/icons/hair_luna.webp new file mode 100644 index 00000000..d5dee136 --- /dev/null +++ b/game/interface/icons/hair_luna.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d000d37a0e620a55991e6826ba5fff7e3f58e527d4b2d80ceefc8926ec6c158 +size 31732 diff --git a/game/interface/icons/halloween_chair.webp b/game/interface/icons/halloween_chair.webp new file mode 100644 index 00000000..a1756bdb --- /dev/null +++ b/game/interface/icons/halloween_chair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfd458f60a640e5d1698d314406c440334a4e146e7609de83d4183bafc99df88 +size 6750 diff --git a/game/interface/icons/halloween_chandelier.webp b/game/interface/icons/halloween_chandelier.webp new file mode 100644 index 00000000..e87c6806 --- /dev/null +++ b/game/interface/icons/halloween_chandelier.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27b05b1e8f2ed92a25dc8d8feeeef215d0e0028867f06accbe025500ece120c8 +size 93576 diff --git a/game/interface/icons/halloween_cupboard.webp b/game/interface/icons/halloween_cupboard.webp new file mode 100644 index 00000000..b86e1433 --- /dev/null +++ b/game/interface/icons/halloween_cupboard.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1671a3b28694d429be345ebd43e62252d82ad216eeac6804dd8b2f39c0dd7f0 +size 51646 diff --git a/game/interface/icons/halloween_cupboard2.webp b/game/interface/icons/halloween_cupboard2.webp new file mode 100644 index 00000000..25ea6995 --- /dev/null +++ b/game/interface/icons/halloween_cupboard2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a40143319d46b126f92955825e8ccc50225546d2ed22456a864e9344621ebc78 +size 7772 diff --git a/game/interface/icons/halloween_fireplace.webp b/game/interface/icons/halloween_fireplace.webp new file mode 100644 index 00000000..1add3e53 --- /dev/null +++ b/game/interface/icons/halloween_fireplace.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a3ebe6987189711864573912dc059bdf7f6178fdcb0f07fa54e2d43312ebb44 +size 97322 diff --git a/game/interface/icons/halloween_fireplace2.webp b/game/interface/icons/halloween_fireplace2.webp new file mode 100644 index 00000000..925a412a --- /dev/null +++ b/game/interface/icons/halloween_fireplace2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:035295f43e7fc6a6bc89431ff95db63189b04c8fbea6cf96969cdab913f04b0d +size 86668 diff --git a/game/interface/icons/halloween_lampL.webp b/game/interface/icons/halloween_lampL.webp new file mode 100644 index 00000000..10ddfc44 --- /dev/null +++ b/game/interface/icons/halloween_lampL.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b44fdb4b55b316cbbb5cd5e200c9ee870fced33bfb0be06b169aa92992130a9f +size 8284 diff --git a/game/interface/icons/halloween_lampR.webp b/game/interface/icons/halloween_lampR.webp new file mode 100644 index 00000000..862f4562 --- /dev/null +++ b/game/interface/icons/halloween_lampR.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f987c81b9d6dcb96552312874fdf26726e99c31d603b7fa750c1c1cafee89f1f +size 8706 diff --git a/game/interface/icons/halloween_monster.webp b/game/interface/icons/halloween_monster.webp new file mode 100644 index 00000000..f7b4173b --- /dev/null +++ b/game/interface/icons/halloween_monster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ba0ead4f48114df5a4ab8d653bf813c80cccda9de7161fb528bad7c54c59b20 +size 1398 diff --git a/game/interface/icons/halloween_phoenix.webp b/game/interface/icons/halloween_phoenix.webp new file mode 100644 index 00000000..70d11236 --- /dev/null +++ b/game/interface/icons/halloween_phoenix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ccda4dda23ece440d10a6161037134201f0acb9caf78530fc0969bbbbf67eddb +size 35354 diff --git a/game/interface/icons/halloween_rug.webp b/game/interface/icons/halloween_rug.webp new file mode 100644 index 00000000..bf3eb57c --- /dev/null +++ b/game/interface/icons/halloween_rug.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:025718823236f15d1ad843d3100892edec78bff09baeaf2417de7f90dc68f116 +size 33198 diff --git a/game/interface/icons/harlot_poster.webp b/game/interface/icons/harlot_poster.webp new file mode 100644 index 00000000..c21dc3c3 --- /dev/null +++ b/game/interface/icons/harlot_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f9eebd4a8ff4bdfe5eeadda6ac44c3131838c8497bd53847c1435c167059ed1 +size 48716 diff --git a/game/interface/icons/hat_fireplace.webp b/game/interface/icons/hat_fireplace.webp new file mode 100644 index 00000000..956279cc --- /dev/null +++ b/game/interface/icons/hat_fireplace.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3f43e91259d4f6c787e7fe736020b2241ccdbf9efddc5731fcfb065fea1ec6b +size 24880 diff --git a/game/interface/icons/hat_owl.webp b/game/interface/icons/hat_owl.webp new file mode 100644 index 00000000..b64a53f3 --- /dev/null +++ b/game/interface/icons/hat_owl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8bc7c114a7445a37bf388d18eb7144f8801e2cb0e52f274c81de36723eb6f305 +size 11760 diff --git a/game/interface/icons/hat_phoenix.webp b/game/interface/icons/hat_phoenix.webp new file mode 100644 index 00000000..819a5c6d --- /dev/null +++ b/game/interface/icons/hat_phoenix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1df3f0fd5514db4c60e96abf1735fe7a5db3cb2fa7cb8774c81acac06e830a6 +size 14298 diff --git a/game/interface/icons/head/astoria.webp b/game/interface/icons/head/astoria.webp new file mode 100644 index 00000000..d91a70a8 --- /dev/null +++ b/game/interface/icons/head/astoria.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17bbcaae4a31da76cb9117d035d7b1716d83175c7bce48c52b6db0a191b6e162 +size 41186 diff --git a/game/interface/icons/head/astoria_locked.webp b/game/interface/icons/head/astoria_locked.webp new file mode 100644 index 00000000..d742cc95 --- /dev/null +++ b/game/interface/icons/head/astoria_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04733b4c154c656b44d9ed976e450f6ee4f5d022eff5fa94aae5f400a2277d8a +size 6914 diff --git a/game/interface/icons/head/cho.webp b/game/interface/icons/head/cho.webp new file mode 100644 index 00000000..5fb5db09 --- /dev/null +++ b/game/interface/icons/head/cho.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc5cdba679132a40e18f6b33ee27b4553913c5bd3a78bd079ca44f5ead9fdb99 +size 32096 diff --git a/game/interface/icons/head/cho_locked.webp b/game/interface/icons/head/cho_locked.webp new file mode 100644 index 00000000..4de03d36 --- /dev/null +++ b/game/interface/icons/head/cho_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa515d4be0d1e48123cf028a3131624012a557a7559e415491146551fc829aaf +size 3558 diff --git a/game/interface/icons/head/dumbledore.webp b/game/interface/icons/head/dumbledore.webp new file mode 100644 index 00000000..a9d5dc43 --- /dev/null +++ b/game/interface/icons/head/dumbledore.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a54ead43443efaf447c54d519fce5506b237fe0824d95acd1202a2bdf95ecd36 +size 48724 diff --git a/game/interface/icons/head/fawkes.webp b/game/interface/icons/head/fawkes.webp new file mode 100644 index 00000000..949be2ed --- /dev/null +++ b/game/interface/icons/head/fawkes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d260f2b5636c7d6206c87f2c1ad182123f11bf28ee3b98457c7ac726a6749233 +size 17940 diff --git a/game/interface/icons/head/fred.webp b/game/interface/icons/head/fred.webp new file mode 100644 index 00000000..81db3025 --- /dev/null +++ b/game/interface/icons/head/fred.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:968477e8916a959864004adc49654367a27fae2818b9ddb872e722ab480d9f7e +size 33720 diff --git a/game/interface/icons/head/genie.webp b/game/interface/icons/head/genie.webp new file mode 100644 index 00000000..a747e541 --- /dev/null +++ b/game/interface/icons/head/genie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f93f05700a6020b578d2fe0c3c11897506764582ba2b090a40d76f8dd30739fa +size 40944 diff --git a/game/interface/icons/head/george.webp b/game/interface/icons/head/george.webp new file mode 100644 index 00000000..e91120b9 --- /dev/null +++ b/game/interface/icons/head/george.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62f8da1ec0b4df20de484840dd2f7c08b37ccb65f78efcb7ceb2737082eb1f12 +size 34398 diff --git a/game/interface/icons/head/hat.webp b/game/interface/icons/head/hat.webp new file mode 100644 index 00000000..59723aa6 --- /dev/null +++ b/game/interface/icons/head/hat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af4bf20f6d8f71ab4a49f0125348430e4014eadcce59844cf2919d4cd64e7988 +size 40854 diff --git a/game/interface/icons/head/hermione.webp b/game/interface/icons/head/hermione.webp new file mode 100644 index 00000000..64eaf117 --- /dev/null +++ b/game/interface/icons/head/hermione.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6d76e448bad74a96b2b6fb244f334c2b7a654ca2797ff6f36a15af0685e477d0 +size 43018 diff --git a/game/interface/icons/head/hermione_locked.webp b/game/interface/icons/head/hermione_locked.webp new file mode 100644 index 00000000..e60bf05f --- /dev/null +++ b/game/interface/icons/head/hermione_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e94729a2440c4157c0bd68e4d040abcceef99034bd7560d1d7a03a12db4deabe +size 2104 diff --git a/game/interface/icons/head/luna.webp b/game/interface/icons/head/luna.webp new file mode 100644 index 00000000..a0a0033b --- /dev/null +++ b/game/interface/icons/head/luna.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa96f03e07bcf6a848a6e14020e983625d8bd5ad1456dbbf22a0edeeafdc7605 +size 49790 diff --git a/game/interface/icons/head/luna_locked.webp b/game/interface/icons/head/luna_locked.webp new file mode 100644 index 00000000..aac7e40d --- /dev/null +++ b/game/interface/icons/head/luna_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7f74544c943713abf7fd311205197de0875b71a397e2bfd575c3752ba4bda33 +size 3632 diff --git a/game/interface/icons/head/mafkin.webp b/game/interface/icons/head/mafkin.webp new file mode 100644 index 00000000..2a939e38 --- /dev/null +++ b/game/interface/icons/head/mafkin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bce198bba7598913732d214d3b14320a304a49bcbb22f778be3a5a60c7f07a0 +size 41350 diff --git a/game/interface/icons/head/narrator.webp b/game/interface/icons/head/narrator.webp new file mode 100644 index 00000000..1fd5273a --- /dev/null +++ b/game/interface/icons/head/narrator.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:062ae9ae43f683ab25208e28a76aebc02efcab4975f05759bad1e529c74a7ed6 +size 9772 diff --git a/game/interface/icons/head/santa.webp b/game/interface/icons/head/santa.webp new file mode 100644 index 00000000..aca9c288 --- /dev/null +++ b/game/interface/icons/head/santa.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:564f673a862a3575e67704fd315a2cc35a2d91814e48f164d696b9f13e09ab90 +size 39266 diff --git a/game/interface/icons/head/snape.webp b/game/interface/icons/head/snape.webp new file mode 100644 index 00000000..ebbe6bd2 --- /dev/null +++ b/game/interface/icons/head/snape.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8317766c3abc60568998989c2ef66b998ced004d6d12da3a57499ac924f59044 +size 24056 diff --git a/game/interface/icons/head/snape_locked.webp b/game/interface/icons/head/snape_locked.webp new file mode 100644 index 00000000..87d9aabb --- /dev/null +++ b/game/interface/icons/head/snape_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6aa1f634bb82b25b5caede351b54367ed48cfa25f550011121d95eb3b1189194 +size 4342 diff --git a/game/interface/icons/head/susan.webp b/game/interface/icons/head/susan.webp new file mode 100644 index 00000000..a4a50651 --- /dev/null +++ b/game/interface/icons/head/susan.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:004a41cec2b6120b9474673a2f06e864465e7a06ab2fc26a0a4283b44e537ae0 +size 43662 diff --git a/game/interface/icons/head/susan_locked.webp b/game/interface/icons/head/susan_locked.webp new file mode 100644 index 00000000..0290b087 --- /dev/null +++ b/game/interface/icons/head/susan_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:448e8904e41707335f6f15dc3d9c5b22dac101d6ce6917ae27660a354580a808 +size 4436 diff --git a/game/interface/icons/head/tonks.webp b/game/interface/icons/head/tonks.webp new file mode 100644 index 00000000..4f3d436b --- /dev/null +++ b/game/interface/icons/head/tonks.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f47954793306d1c200726b5d3b1a3b177f582933ad2f9f8a5a6e457de7c5089 +size 40376 diff --git a/game/interface/icons/head/tonks_locked.webp b/game/interface/icons/head/tonks_locked.webp new file mode 100644 index 00000000..86fa7437 --- /dev/null +++ b/game/interface/icons/head/tonks_locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dd3b3dc78cf61ea7bb8b8eb06daab921f94f71d97b68b20adf6ea9626bd6bf6 +size 3482 diff --git a/game/interface/icons/hermione_poster.webp b/game/interface/icons/hermione_poster.webp new file mode 100644 index 00000000..4e40f5fc --- /dev/null +++ b/game/interface/icons/hermione_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2e4e4758af54459cdccb6df16913aed2dddae5008062ad30cad0aa80114b050 +size 41368 diff --git a/game/interface/icons/hufflepuff_poster.webp b/game/interface/icons/hufflepuff_poster.webp new file mode 100644 index 00000000..dd234ff0 --- /dev/null +++ b/game/interface/icons/hufflepuff_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11b06d2c4921e37346e54dc267688c797587514d96efe2406cfa652fcf2d01f4 +size 15682 diff --git a/game/interface/icons/icon_gambler_hat.webp b/game/interface/icons/icon_gambler_hat.webp new file mode 100644 index 00000000..fce7101d --- /dev/null +++ b/game/interface/icons/icon_gambler_hat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f1ea84c7dc10ce054083ed4195cabbac4012bce32233ecc28a21d02104e8fbb5 +size 15168 diff --git a/game/interface/icons/icon_lock.webp b/game/interface/icons/icon_lock.webp new file mode 100644 index 00000000..a1a74388 --- /dev/null +++ b/game/interface/icons/icon_lock.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa400b26fdfa4e2e4a954dea6c36447d6aa845cb757b2b9ece045b3b211b621b +size 614 diff --git a/game/interface/icons/icon_lock_open.webp b/game/interface/icons/icon_lock_open.webp new file mode 100644 index 00000000..943c2d77 --- /dev/null +++ b/game/interface/icons/icon_lock_open.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6b84f789983b47574c93887a9c06a5efce18dd2231b40a656078c1b5741dbca +size 634 diff --git a/game/interface/icons/icon_piercing.webp b/game/interface/icons/icon_piercing.webp new file mode 100644 index 00000000..afff649d --- /dev/null +++ b/game/interface/icons/icon_piercing.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fa17521fc006e612024f3e4d123d84723b64b05401287bed7152c6017a3cb964 +size 26540 diff --git a/game/interface/icons/icon_piercing_fancy.webp b/game/interface/icons/icon_piercing_fancy.webp new file mode 100644 index 00000000..7bf0c1f6 --- /dev/null +++ b/game/interface/icons/icon_piercing_fancy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4dcb21fd9aee167595fa9ae033dc47f9c092c0b26245e5c92792f861d8eb697d +size 36316 diff --git a/game/interface/icons/icon_tattoo.webp b/game/interface/icons/icon_tattoo.webp new file mode 100644 index 00000000..bebf263c --- /dev/null +++ b/game/interface/icons/icon_tattoo.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:777e93e07114e4fe039a481a9821707a9fec5736862c57653ebc031d3abdfb47 +size 8912 diff --git a/game/interface/icons/item_potion.webp b/game/interface/icons/item_potion.webp new file mode 100644 index 00000000..de32419c --- /dev/null +++ b/game/interface/icons/item_potion.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5cdb8f875ab06f60f5e4d40bee8cfa66871c73ce11325055ef7f75892f642a1 +size 16996 diff --git a/game/interface/icons/item_voucher.webp b/game/interface/icons/item_voucher.webp new file mode 100644 index 00000000..4e99a4a1 --- /dev/null +++ b/game/interface/icons/item_voucher.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62c064da251f03a8b1270cb75faa011add9531fa1983dd4ab97c11b1387dded5 +size 24572 diff --git a/game/interface/icons/knotgrass.webp b/game/interface/icons/knotgrass.webp new file mode 100644 index 00000000..6041d0db --- /dev/null +++ b/game/interface/icons/knotgrass.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:17daf698f92824fd8524bf62539a8ca99958962eab5888359f3ff68e2c7b38b6 +size 58672 diff --git a/game/interface/icons/krum_poster.webp b/game/interface/icons/krum_poster.webp new file mode 100644 index 00000000..45332b41 --- /dev/null +++ b/game/interface/icons/krum_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:225c8c9ba5e76db13fee3091024841a3e4509c17cd61e96e7b309dfdd2460a1d +size 57572 diff --git a/game/interface/icons/leeches.webp b/game/interface/icons/leeches.webp new file mode 100644 index 00000000..77721a34 --- /dev/null +++ b/game/interface/icons/leeches.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f046ed03d86e816375fe5bc693b2144539b417ab5a187d14dd528f2d5aad6b4 +size 138606 diff --git a/game/interface/icons/lipstick_red.webp b/game/interface/icons/lipstick_red.webp new file mode 100644 index 00000000..e2a736fb --- /dev/null +++ b/game/interface/icons/lipstick_red.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:54afe7b37a4575c7451b0e154a79bb9bddb75c4d3763fe7e4c1b15a477b95d7a +size 15216 diff --git a/game/interface/icons/lollipop.webp b/game/interface/icons/lollipop.webp new file mode 100644 index 00000000..dcbbaac7 --- /dev/null +++ b/game/interface/icons/lollipop.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:97e1a97c44613de57a219ec84f94120cc1381dbe67a4f2debda8a34d15247818 +size 21344 diff --git a/game/interface/icons/lube.webp b/game/interface/icons/lube.webp new file mode 100644 index 00000000..5c426c86 --- /dev/null +++ b/game/interface/icons/lube.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4bb47271aa7e833228e5a017240048580ff0c198e6928070f65515e72e76489 +size 22548 diff --git a/game/interface/icons/luna_potion.webp b/game/interface/icons/luna_potion.webp new file mode 100644 index 00000000..fdd94665 --- /dev/null +++ b/game/interface/icons/luna_potion.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e608cff7f48ba65611a3b3511d2e21d74a21e3caa8018c21f5d97b026153fd2b +size 77742 diff --git a/game/interface/icons/my_dear_waifu_book.webp b/game/interface/icons/my_dear_waifu_book.webp new file mode 100644 index 00000000..363d6a73 --- /dev/null +++ b/game/interface/icons/my_dear_waifu_book.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:830de249acf76d09ce8e575ec3bb3387f672de79e016ef421ccdbf4e4fab02e0 +size 41334 diff --git a/game/interface/icons/panties.webp b/game/interface/icons/panties.webp new file mode 100644 index 00000000..ee4b7883 --- /dev/null +++ b/game/interface/icons/panties.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f6f688831a83784a611c2db54ce2bf376842eeedb980ec34aec932197fc5aeb +size 14478 diff --git a/game/interface/icons/panties_cum.webp b/game/interface/icons/panties_cum.webp new file mode 100644 index 00000000..746da151 --- /dev/null +++ b/game/interface/icons/panties_cum.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7906a8a58b3ed634bb40072b0e13488aa62713676a29c66edd55ccf49ede3780 +size 19538 diff --git a/game/interface/icons/phone.webp b/game/interface/icons/phone.webp new file mode 100644 index 00000000..88598286 --- /dev/null +++ b/game/interface/icons/phone.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:679aabaaa70f53b1b48bdd76bed3aa72b28c2513d262d0343a3a3c01ec4ae2dc +size 20300 diff --git a/game/interface/icons/plush_owl.webp b/game/interface/icons/plush_owl.webp new file mode 100644 index 00000000..8b5786a5 --- /dev/null +++ b/game/interface/icons/plush_owl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:529b77980d27f4598acd16e283fbf40d512eda24f51a1447b04309999c278f52 +size 23074 diff --git a/game/interface/icons/plush_owl_strapon.webp b/game/interface/icons/plush_owl_strapon.webp new file mode 100644 index 00000000..fda2c49f --- /dev/null +++ b/game/interface/icons/plush_owl_strapon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b7e3254df54480855a6a22cb3a24edaca79b0c8de7fce2392fca941e88209e3a +size 38460 diff --git a/game/interface/icons/porn_mag.webp b/game/interface/icons/porn_mag.webp new file mode 100644 index 00000000..e1aaf692 --- /dev/null +++ b/game/interface/icons/porn_mag.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bec69fa26449be7ed390f81671164ecc66facc159773c05f4647f5b11763e8c7 +size 42182 diff --git a/game/interface/icons/potion_generic.webp b/game/interface/icons/potion_generic.webp new file mode 100644 index 00000000..f6c4cdac --- /dev/null +++ b/game/interface/icons/potion_generic.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3412588a50ab9a908e090ac26ee4cef55b90027980fec677e30f5f064de4f8b +size 87642 diff --git a/game/interface/icons/pufferfish_eyes.webp b/game/interface/icons/pufferfish_eyes.webp new file mode 100644 index 00000000..9cbfecad --- /dev/null +++ b/game/interface/icons/pufferfish_eyes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d44e91a9308274a6dfd85e06e44b078ae25909f8eab0cef7fcb7d544aeca69b +size 114748 diff --git a/game/interface/icons/puzzle_box.webp b/game/interface/icons/puzzle_box.webp new file mode 100644 index 00000000..2064b45c --- /dev/null +++ b/game/interface/icons/puzzle_box.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08fbd4efd96409af26157350b4b7a2048d6649aba72b92c6eca931b2a8634ac8 +size 25984 diff --git a/game/interface/icons/ravenclaw_poster.webp b/game/interface/icons/ravenclaw_poster.webp new file mode 100644 index 00000000..1a0b2f43 --- /dev/null +++ b/game/interface/icons/ravenclaw_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e2cfed550e9f51c3965adcbf2c7174d61900dede794c29216b306c409223597 +size 14280 diff --git a/game/interface/icons/science_mag.webp b/game/interface/icons/science_mag.webp new file mode 100644 index 00000000..54667b7d --- /dev/null +++ b/game/interface/icons/science_mag.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67622e5f85bfe00f7182454233bac01968135f7113c4358169ba58a92939a2c8 +size 38456 diff --git a/game/interface/icons/sealed_scroll.webp b/game/interface/icons/sealed_scroll.webp new file mode 100644 index 00000000..097e0e5c --- /dev/null +++ b/game/interface/icons/sealed_scroll.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ef49b304ff74b9de3ca4c2818a3c1c7ca7c5c060a4575cd6dea1a00cb9a0565d +size 23828 diff --git a/game/interface/icons/sexdoll.webp b/game/interface/icons/sexdoll.webp new file mode 100644 index 00000000..ecb95119 --- /dev/null +++ b/game/interface/icons/sexdoll.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bf64f001b90a8bbb2858ee9c1feee165ffb4f9beea7ac5315ec33d632912b08 +size 39284 diff --git a/game/interface/icons/sexy_lingerie.webp b/game/interface/icons/sexy_lingerie.webp new file mode 100644 index 00000000..dbfef41f --- /dev/null +++ b/game/interface/icons/sexy_lingerie.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8618669498069833204f292aa48ef31aa5596f4c11fefe1372e446f69946705 +size 30252 diff --git a/game/interface/icons/sexy_stockings.webp b/game/interface/icons/sexy_stockings.webp new file mode 100644 index 00000000..e03d93fd --- /dev/null +++ b/game/interface/icons/sexy_stockings.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b33795cfa5967e859967222f4181cf9f0d1674d1cd0251338c847c44f2aa1c39 +size 25178 diff --git a/game/interface/icons/silver.webp b/game/interface/icons/silver.webp new file mode 100644 index 00000000..028feec0 --- /dev/null +++ b/game/interface/icons/silver.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f0525e02c3ef79ef3676d40e41048e4b8718e161716637255317150ab2227c8 +size 32644 diff --git a/game/interface/icons/silver_scroll.webp b/game/interface/icons/silver_scroll.webp new file mode 100644 index 00000000..a125a33c --- /dev/null +++ b/game/interface/icons/silver_scroll.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bee9062a7245dd286cb42d2e398a4254d823bece98f839896c89d16fb495bf4e +size 19204 diff --git a/game/interface/icons/slytherin_poster.webp b/game/interface/icons/slytherin_poster.webp new file mode 100644 index 00000000..63aafdfa --- /dev/null +++ b/game/interface/icons/slytherin_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d3986f4a5b6bc0b174fa9ee2c4c1e3fe4f820544547383d6d9f64c931c8acbf +size 17210 diff --git a/game/interface/icons/small/astoria.webp b/game/interface/icons/small/astoria.webp new file mode 100644 index 00000000..4293a31e --- /dev/null +++ b/game/interface/icons/small/astoria.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4788954da8c17cec6f7677005f0284f98a7e870f0f2dd79abb9a9581683a6a9d +size 1698 diff --git a/game/interface/icons/small/book.webp b/game/interface/icons/small/book.webp new file mode 100644 index 00000000..ed843faf --- /dev/null +++ b/game/interface/icons/small/book.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c6d2e548b724d55b06fe571c73b5d54cb9fe8325da09fe3e3542c9bc398467c +size 972 diff --git a/game/interface/icons/small/cards.webp b/game/interface/icons/small/cards.webp new file mode 100644 index 00000000..cdaa7d9b --- /dev/null +++ b/game/interface/icons/small/cards.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6aba404ad8c72730addf2b781fe7dd4a888e5cccdc32b8a828e700cfc543d500 +size 1124 diff --git a/game/interface/icons/small/cho.webp b/game/interface/icons/small/cho.webp new file mode 100644 index 00000000..39ae2bdc --- /dev/null +++ b/game/interface/icons/small/cho.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5406ea96fae098eb88c917982347311ffbb89a97d153ff746f0c4d607149a74c +size 972 diff --git a/game/interface/icons/small/condom.webp b/game/interface/icons/small/condom.webp new file mode 100644 index 00000000..6377f534 --- /dev/null +++ b/game/interface/icons/small/condom.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0debc3a9392bc5e1d0c1e167d1a776839fbec8702174d87db9312e8bf1b4330e +size 752 diff --git a/game/interface/icons/small/gift.webp b/game/interface/icons/small/gift.webp new file mode 100644 index 00000000..1114c16a --- /dev/null +++ b/game/interface/icons/small/gift.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ab3419fda3d1efe08773f717ef1a4afaa2bac3d9a9b28df94733bc0dde5e792 +size 1042 diff --git a/game/interface/icons/small/gold.webp b/game/interface/icons/small/gold.webp new file mode 100644 index 00000000..344c3f19 --- /dev/null +++ b/game/interface/icons/small/gold.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:661084e6ac554a5d37bb61f7048dbe14c9cd1ba0b870be3a82c33df0d36f1abe +size 1202 diff --git a/game/interface/icons/small/gryf.webp b/game/interface/icons/small/gryf.webp new file mode 100644 index 00000000..1368b39e --- /dev/null +++ b/game/interface/icons/small/gryf.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5148f8697b72d0630a3893dd3326fd693da4bf69fb3597d2e1166683c09905f +size 276 diff --git a/game/interface/icons/small/heart_black.webp b/game/interface/icons/small/heart_black.webp new file mode 100644 index 00000000..44fa2351 --- /dev/null +++ b/game/interface/icons/small/heart_black.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:14522c5e42b94167fb2cba8887ec0d12b0fc6da1bdb00cab7e273bc9faf5b07a +size 302 diff --git a/game/interface/icons/small/heart_blue.webp b/game/interface/icons/small/heart_blue.webp new file mode 100644 index 00000000..bff328ef --- /dev/null +++ b/game/interface/icons/small/heart_blue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6c43a9ef999ccfee36fb73fad62cb4073cb14b8399e73c3819ef525555da5e89 +size 476 diff --git a/game/interface/icons/small/heart_empty.webp b/game/interface/icons/small/heart_empty.webp new file mode 100644 index 00000000..275ce35f --- /dev/null +++ b/game/interface/icons/small/heart_empty.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3c4c7a556ae4e16119585972674ed1cbe2b50f05777b6449832c03a32919c7a5 +size 362 diff --git a/game/interface/icons/small/heart_green.webp b/game/interface/icons/small/heart_green.webp new file mode 100644 index 00000000..efca975a --- /dev/null +++ b/game/interface/icons/small/heart_green.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05ffb3a73ebb2cb3f466ab00d8a40af1a830a618cfd21285e9843a7c9a76750c +size 472 diff --git a/game/interface/icons/small/heart_half.webp b/game/interface/icons/small/heart_half.webp new file mode 100644 index 00000000..66c0162d --- /dev/null +++ b/game/interface/icons/small/heart_half.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98039ab4e105677d8cc8b60f9c886f5fcb720aaa4372ca4887ef463d7bc5b6f7 +size 1164 diff --git a/game/interface/icons/small/heart_red.webp b/game/interface/icons/small/heart_red.webp new file mode 100644 index 00000000..78946dbc --- /dev/null +++ b/game/interface/icons/small/heart_red.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6fe08d1d1651d1baeb719dcc89b96820806d3ecac406fe831bd17cc01137b50 +size 466 diff --git a/game/interface/icons/small/heart_yellow.webp b/game/interface/icons/small/heart_yellow.webp new file mode 100644 index 00000000..7e42c992 --- /dev/null +++ b/game/interface/icons/small/heart_yellow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a12d2e50f31b6c4348d683d9886ce7a414210cf7f649f8cef58294147dcf03c +size 482 diff --git a/game/interface/icons/small/hermione.webp b/game/interface/icons/small/hermione.webp new file mode 100644 index 00000000..0b21a185 --- /dev/null +++ b/game/interface/icons/small/hermione.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a89e9e5c94aca6f6ec63f8634064c3c3244432408a5fc20b94a96bcae6e32fcf +size 1792 diff --git a/game/interface/icons/small/huff.webp b/game/interface/icons/small/huff.webp new file mode 100644 index 00000000..f929a902 --- /dev/null +++ b/game/interface/icons/small/huff.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a719b8e96a6d583966604dd5c12393f90369e428c4358e7e5f1a8ac052f13c4 +size 268 diff --git a/game/interface/icons/small/levelup.webp b/game/interface/icons/small/levelup.webp new file mode 100644 index 00000000..daa17a72 --- /dev/null +++ b/game/interface/icons/small/levelup.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6df1b34efb6097593f3fc798e324e0d761f773758b7825d9ed70e658befd9684 +size 540 diff --git a/game/interface/icons/small/luna.webp b/game/interface/icons/small/luna.webp new file mode 100644 index 00000000..74cabb86 --- /dev/null +++ b/game/interface/icons/small/luna.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca531e4731ba31f3ea1249bbbfba632bd82c4f06baf09d5419d7947bc98111d3 +size 1510 diff --git a/game/interface/icons/small/potion.webp b/game/interface/icons/small/potion.webp new file mode 100644 index 00000000..fe02fcfe --- /dev/null +++ b/game/interface/icons/small/potion.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:412e1c34f85acb58ea3f4e21cd5bab905658adb7ceefde75b718d9d120c285fb +size 734 diff --git a/game/interface/icons/small/quidditch.webp b/game/interface/icons/small/quidditch.webp new file mode 100644 index 00000000..129a4edf --- /dev/null +++ b/game/interface/icons/small/quidditch.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3eaead0a8fee2c8ddf8adf72c543321cca696e906bc775b012be2f65e30aa57a +size 474 diff --git a/game/interface/icons/small/rave.webp b/game/interface/icons/small/rave.webp new file mode 100644 index 00000000..f11dfef6 --- /dev/null +++ b/game/interface/icons/small/rave.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f6510cbb2a53b3bf2269a6a7cf0b4a07343c207e47da9db3025eed30dbd6b2a +size 206 diff --git a/game/interface/icons/small/slyt.webp b/game/interface/icons/small/slyt.webp new file mode 100644 index 00000000..d3720165 --- /dev/null +++ b/game/interface/icons/small/slyt.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a27045e3a9e7ae22d8c83e2bc7f4fef308877b6f22b30fdb4cc10ee850de4ba8 +size 334 diff --git a/game/interface/icons/small/spell.webp b/game/interface/icons/small/spell.webp new file mode 100644 index 00000000..593a25e9 --- /dev/null +++ b/game/interface/icons/small/spell.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e522c14d7680021c1e660009422d04d0487586e295e1d3bd02af0324b0d74279 +size 1142 diff --git a/game/interface/icons/small/star_empty.webp b/game/interface/icons/small/star_empty.webp new file mode 100644 index 00000000..25c10725 --- /dev/null +++ b/game/interface/icons/small/star_empty.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:507efd2635c25b370bce719562067d84f13e1474ba285167a3f2c0eb3639fab9 +size 636 diff --git a/game/interface/icons/small/star_pink.webp b/game/interface/icons/small/star_pink.webp new file mode 100644 index 00000000..77104c69 --- /dev/null +++ b/game/interface/icons/small/star_pink.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f7b2a098d47828f00c1cd622c4dd33a9f877ba469b99143057c5e73ccbf39e2f +size 834 diff --git a/game/interface/icons/small/star_yellow.webp b/game/interface/icons/small/star_yellow.webp new file mode 100644 index 00000000..20e8c26e --- /dev/null +++ b/game/interface/icons/small/star_yellow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77ece1ebc63ce8fe2b8a0f88509b53ea4a75257d3f4443ef2451ec7c8604c44c +size 860 diff --git a/game/interface/icons/small/talk.webp b/game/interface/icons/small/talk.webp new file mode 100644 index 00000000..9e21d687 --- /dev/null +++ b/game/interface/icons/small/talk.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4c58e3a3cbdca354b5d85018218ade89b23836c63d98fb0a20a79acbe2c557f +size 478 diff --git a/game/interface/icons/small/toast.webp b/game/interface/icons/small/toast.webp new file mode 100644 index 00000000..a971bbd2 --- /dev/null +++ b/game/interface/icons/small/toast.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:335a1aeb7392da482a3cbe2e62b0b89b77b81aac79649243494a66e1e147c7c7 +size 566 diff --git a/game/interface/icons/small/tonks.webp b/game/interface/icons/small/tonks.webp new file mode 100644 index 00000000..af4ff551 --- /dev/null +++ b/game/interface/icons/small/tonks.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa0b21210b47f91905e94101be319df1222e61ac6b6c4f7543efe657f8fe5c80 +size 1148 diff --git a/game/interface/icons/small/wardrobe.webp b/game/interface/icons/small/wardrobe.webp new file mode 100644 index 00000000..52506673 --- /dev/null +++ b/game/interface/icons/small/wardrobe.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93bbc9ff2557379ca5a67c9060e21f82aeee2994639ab9151e8fe4d696820754 +size 892 diff --git a/game/interface/icons/small/whisky.webp b/game/interface/icons/small/whisky.webp new file mode 100644 index 00000000..a5e003e1 --- /dev/null +++ b/game/interface/icons/small/whisky.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bacf89583eed7ae0c9602c7b98bb3d91fe411b3c24ccb78c635e15bfd120da8 +size 770 diff --git a/game/interface/icons/small/wine.webp b/game/interface/icons/small/wine.webp new file mode 100644 index 00000000..b1dec530 --- /dev/null +++ b/game/interface/icons/small/wine.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0bb935dbfdd918d508fd3b3dc6ba68d7f387753f7d27096ffee22fd4e1f5a65c +size 646 diff --git a/game/interface/icons/small_owl.webp b/game/interface/icons/small_owl.webp new file mode 100644 index 00000000..b047636d --- /dev/null +++ b/game/interface/icons/small_owl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d90178e7197c4d7f34af4e1d7511bc338570eb37a7b8d9806ce5b8b563cadf12 +size 21258 diff --git a/game/interface/icons/snow_owl.webp b/game/interface/icons/snow_owl.webp new file mode 100644 index 00000000..08662f67 --- /dev/null +++ b/game/interface/icons/snow_owl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edd56e420aeb49d37b02f9d37c4033ad8596c7010d950d8c176ce99c23818b76 +size 19020 diff --git a/game/interface/icons/stag_trophy.webp b/game/interface/icons/stag_trophy.webp new file mode 100644 index 00000000..432f1bfd --- /dev/null +++ b/game/interface/icons/stag_trophy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:502808929ff707c11fba6d8f4f59108dcbbb92bd7159ba8ec62ca5a3e6e9bfbd +size 39358 diff --git a/game/interface/icons/strapon.webp b/game/interface/icons/strapon.webp new file mode 100644 index 00000000..9119f269 --- /dev/null +++ b/game/interface/icons/strapon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9dce6515c6b727556ee7d2265db55e6d1b8a2849c515017bf430a8292c8e1c65 +size 32344 diff --git a/game/interface/icons/stripper_poster.webp b/game/interface/icons/stripper_poster.webp new file mode 100644 index 00000000..7c467ba5 --- /dev/null +++ b/game/interface/icons/stripper_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb61c32f2004a1a2dad01c91c8323f1372aade3c9e9acb3f11eb0b088df913e1 +size 39306 diff --git a/game/interface/icons/the_quibbler.webp b/game/interface/icons/the_quibbler.webp new file mode 100644 index 00000000..60a09fe1 --- /dev/null +++ b/game/interface/icons/the_quibbler.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:95821ca0c1dcb7a0d460825865b439e75642959a313b7d10c30b1931bf103e13 +size 213204 diff --git a/game/interface/icons/time_turner.webp b/game/interface/icons/time_turner.webp new file mode 100644 index 00000000..2cde6865 --- /dev/null +++ b/game/interface/icons/time_turner.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2afda1594aa9b1f62f5bd3d5633eca8add2c06f59c2d0fb1d48a9216c0afe84e +size 11882 diff --git a/game/interface/icons/tonks_poster.webp b/game/interface/icons/tonks_poster.webp new file mode 100644 index 00000000..ac7a7a27 --- /dev/null +++ b/game/interface/icons/tonks_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92d1d9cc1c12272e4e24ab5ce445cea5abc10f2074c6385f9f26231140a38a76 +size 40060 diff --git a/game/interface/icons/vibrator.webp b/game/interface/icons/vibrator.webp new file mode 100644 index 00000000..d4a61bd0 --- /dev/null +++ b/game/interface/icons/vibrator.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a8ae437a44840cd7bd2b1271cc472ae91f8b93035b890e1ce1975901a0a5635e +size 16438 diff --git a/game/interface/icons/wanted_poster.webp b/game/interface/icons/wanted_poster.webp new file mode 100644 index 00000000..d4561e71 --- /dev/null +++ b/game/interface/icons/wanted_poster.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2df6371afccb3a2612347a219a1417856fb941e7e975e30f9828a0735ce23334 +size 39366 diff --git a/game/interface/icons/wine.webp b/game/interface/icons/wine.webp new file mode 100644 index 00000000..0f9dee26 --- /dev/null +++ b/game/interface/icons/wine.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66db504e6c5cf0c0f3c06a32c51fd344f8528c5ae5cdf3c7f9462ddea423d68c +size 17620 diff --git a/game/interface/icons/xmas_fireplace.webp b/game/interface/icons/xmas_fireplace.webp new file mode 100644 index 00000000..a1bc8e75 --- /dev/null +++ b/game/interface/icons/xmas_fireplace.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a1ad898e3eea5d2bb756d83812e4e32b357b7b0e6deb6ac79aafaba469d9a82 +size 27348 diff --git a/game/interface/icons/xmas_giftchair.webp b/game/interface/icons/xmas_giftchair.webp new file mode 100644 index 00000000..8f047fee --- /dev/null +++ b/game/interface/icons/xmas_giftchair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d5bcc361ae9cf81903bd0fdba0b762a01ae141a4cf556381af51675fad21a09 +size 9232 diff --git a/game/interface/icons/xmas_lights.webp b/game/interface/icons/xmas_lights.webp new file mode 100644 index 00000000..894035d6 --- /dev/null +++ b/game/interface/icons/xmas_lights.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f51177aaa1b6db4e2f7861b2bc7a67f7ffa6e746764b5a01f85d9c7ae3ec64f +size 22250 diff --git a/game/interface/icons/xmas_owl.webp b/game/interface/icons/xmas_owl.webp new file mode 100644 index 00000000..1e3e2f8a --- /dev/null +++ b/game/interface/icons/xmas_owl.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac921a7ab1dfb32fb2f520baa26233ff42fcc82d9f3efa915947e23dbd4cc92e +size 12314 diff --git a/game/interface/icons/xmas_phoenix.webp b/game/interface/icons/xmas_phoenix.webp new file mode 100644 index 00000000..0e4523c5 --- /dev/null +++ b/game/interface/icons/xmas_phoenix.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:da9a6b46e796fb00ce7c8c09b83519e1bd2b92d0db28ffa9229b390a8d39be0a +size 23854 diff --git a/game/interface/icons/xmas_wreaths.webp b/game/interface/icons/xmas_wreaths.webp new file mode 100644 index 00000000..13e0f332 --- /dev/null +++ b/game/interface/icons/xmas_wreaths.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08639b64d677b0efc5ef480b7038bfd9c047bfb79e3dc32a2dc5e0f9578d85b4 +size 18706 diff --git a/game/interface/letter.webp b/game/interface/letter.webp new file mode 100644 index 00000000..a36a3318 --- /dev/null +++ b/game/interface/letter.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af2feb6283610b60055da8769bf567e495d1e56a7e3a98a8b30c89eec5c9c8da +size 175904 diff --git a/game/interface/map/anim/map_00.webp b/game/interface/map/anim/map_00.webp new file mode 100644 index 00000000..e38dd48d --- /dev/null +++ b/game/interface/map/anim/map_00.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d53585789a3a19b46c224c826ea63e99f7f246e4a56b319dadb30b156cf3cba7 +size 408498 diff --git a/game/interface/map/anim/map_01.webp b/game/interface/map/anim/map_01.webp new file mode 100644 index 00000000..0cc3912e --- /dev/null +++ b/game/interface/map/anim/map_01.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:196d29634e5609ad3f5eb2ceb6a4b75cf4d753062dc5601e82969836bb6bfa0c +size 77542 diff --git a/game/interface/map/anim/map_02.webp b/game/interface/map/anim/map_02.webp new file mode 100644 index 00000000..7cea15da --- /dev/null +++ b/game/interface/map/anim/map_02.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31a0f906f1afb9dc3be23f04690bcfd8074135b942edf6249d2ad1703ff58cce +size 72700 diff --git a/game/interface/map/anim/map_03.webp b/game/interface/map/anim/map_03.webp new file mode 100644 index 00000000..9b500ba0 --- /dev/null +++ b/game/interface/map/anim/map_03.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0aaeddbfe064e9e089f7c8845b1f06e0c7c8c6285c3c3611849f3636e4b8598c +size 49970 diff --git a/game/interface/map/feet.webp b/game/interface/map/feet.webp new file mode 100644 index 00000000..21ee36db --- /dev/null +++ b/game/interface/map/feet.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34363c84d9619dbea7d9c0a8bac5d6cbe0430c6ac32455516d39222cf7e93044 +size 234 diff --git a/game/interface/map/map.webp b/game/interface/map/map.webp new file mode 100644 index 00000000..48a31819 --- /dev/null +++ b/game/interface/map/map.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a6e839636808c7d8cae6863875f53db7399a708cd0bb4523591eb39b9dc07004 +size 367320 diff --git a/game/interface/map/map_lines_vert.webp b/game/interface/map/map_lines_vert.webp new file mode 100644 index 00000000..e786ead1 --- /dev/null +++ b/game/interface/map/map_lines_vert.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57fa08638061b061046ac324cd90dd363e64a0d4732df47e8062176778b5132f +size 10424 diff --git a/game/interface/map/name_astoria.webp b/game/interface/map/name_astoria.webp new file mode 100644 index 00000000..f7e636a4 --- /dev/null +++ b/game/interface/map/name_astoria.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af22958737e8768034e32002f3ec2ca424d2c98f2fec53f08a8f2033cb0eee88 +size 2576 diff --git a/game/interface/map/name_astoria_hover.webp b/game/interface/map/name_astoria_hover.webp new file mode 100644 index 00000000..d2a8efd6 --- /dev/null +++ b/game/interface/map/name_astoria_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85bb8b2404e6333bb48934df98e547f724d638769a5cf348fa6e620bc6f4b859 +size 3020 diff --git a/game/interface/map/name_cho.webp b/game/interface/map/name_cho.webp new file mode 100644 index 00000000..caddc350 --- /dev/null +++ b/game/interface/map/name_cho.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3ade267410290a95ee6e6fcd25557a96099d3adb438d2185babec7833fed129 +size 1736 diff --git a/game/interface/map/name_cho_hover.webp b/game/interface/map/name_cho_hover.webp new file mode 100644 index 00000000..cbe5ca75 --- /dev/null +++ b/game/interface/map/name_cho_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3c98cbb9dd0afa95cc8e1f4edcfd8b691d88a9a7eb586dbb3b17f72ab619b32 +size 2094 diff --git a/game/interface/map/name_hermione.webp b/game/interface/map/name_hermione.webp new file mode 100644 index 00000000..0e0748ce --- /dev/null +++ b/game/interface/map/name_hermione.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f649a3c4592fe0a86750b644a4d68f4b2542e4f7320b167fede1d38a178d1351 +size 3414 diff --git a/game/interface/map/name_hermione_hover.webp b/game/interface/map/name_hermione_hover.webp new file mode 100644 index 00000000..c5e23ab3 --- /dev/null +++ b/game/interface/map/name_hermione_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf0431fd4f28cd0134fcd843437e2e6f39d027fc03b96d7b533a40f20b8e059b +size 3802 diff --git a/game/interface/map/name_luna.webp b/game/interface/map/name_luna.webp new file mode 100644 index 00000000..f7a63c15 --- /dev/null +++ b/game/interface/map/name_luna.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f82509f80989c5224f7e20e6bfe532c85e473a418863c2e66da5df0ea90fb19 +size 2140 diff --git a/game/interface/map/name_luna_hover.webp b/game/interface/map/name_luna_hover.webp new file mode 100644 index 00000000..6f3f96b0 --- /dev/null +++ b/game/interface/map/name_luna_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a793174347b24177b55c1a9a84c280606d18158b3ffdd51b3c5e2c2ff02aed29 +size 2452 diff --git a/game/interface/map/name_snape.webp b/game/interface/map/name_snape.webp new file mode 100644 index 00000000..024e32fa --- /dev/null +++ b/game/interface/map/name_snape.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c898cf4216f2161d3579afe572118b65a57369d6d8be60a4e2a65bf25e0b1a7c +size 1626 diff --git a/game/interface/map/name_snape_hover.webp b/game/interface/map/name_snape_hover.webp new file mode 100644 index 00000000..9b455c83 --- /dev/null +++ b/game/interface/map/name_snape_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8aed011e012008bac00ab30007b894943a6d624b01677239bc1bec47af8fca0f +size 1938 diff --git a/game/interface/map/name_susan.webp b/game/interface/map/name_susan.webp new file mode 100644 index 00000000..564235af --- /dev/null +++ b/game/interface/map/name_susan.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:284eca638a54c8c41dda4a61f56fcb03f5ba76a8e7d6165e911d5e5235135ef4 +size 1758 diff --git a/game/interface/map/name_susan_hover.webp b/game/interface/map/name_susan_hover.webp new file mode 100644 index 00000000..03e0b2ee --- /dev/null +++ b/game/interface/map/name_susan_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4fcd795bdf31d38c69a65fd009d331f5550da86432580d607f8a884f6f5ef747 +size 2016 diff --git a/game/interface/map/name_tonks.webp b/game/interface/map/name_tonks.webp new file mode 100644 index 00000000..c124a958 --- /dev/null +++ b/game/interface/map/name_tonks.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cd5e00c7f1262c9bf9d9f95783d19a00dceee2e359ccf7254fb2be7ac4fd3afd +size 1638 diff --git a/game/interface/map/name_tonks_hover.webp b/game/interface/map/name_tonks_hover.webp new file mode 100644 index 00000000..2d035f6a --- /dev/null +++ b/game/interface/map/name_tonks_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:977e5aef017c2a08c52d1e6571023e9b71155e1b7afe108fbbb8f42e3208d2a9 +size 1982 diff --git a/game/interface/map/room_attic_closed_hover.webp b/game/interface/map/room_attic_closed_hover.webp new file mode 100644 index 00000000..c5f55420 --- /dev/null +++ b/game/interface/map/room_attic_closed_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f4c110829db65e09a420b39e9e6cc7ab651700195f6c0db385b6cd5f1655fdb +size 1226 diff --git a/game/interface/map/room_attic_closed_idle.webp b/game/interface/map/room_attic_closed_idle.webp new file mode 100644 index 00000000..4c0ba8bb --- /dev/null +++ b/game/interface/map/room_attic_closed_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d7a6ee82d36d78006d83b19f8ef30c17e835b0cacc7a92ba9401589128568d2 +size 904 diff --git a/game/interface/map/room_attic_open_hover.webp b/game/interface/map/room_attic_open_hover.webp new file mode 100644 index 00000000..8ef16c19 --- /dev/null +++ b/game/interface/map/room_attic_open_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:26d60cf1a91351c1660a84c27880594b2e98d2b8731ed28710353fb3781f4cc9 +size 1438 diff --git a/game/interface/map/room_attic_open_idle.webp b/game/interface/map/room_attic_open_idle.webp new file mode 100644 index 00000000..a39677d0 --- /dev/null +++ b/game/interface/map/room_attic_open_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f74d78f6e95c4ace637ff323c7e60e13e9a3bb67525a5f14380c13b62e6db6f +size 1084 diff --git a/game/interface/map/room_boat_house_hover.webp b/game/interface/map/room_boat_house_hover.webp new file mode 100644 index 00000000..231483db --- /dev/null +++ b/game/interface/map/room_boat_house_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2e0d7a182c64f3e5c28f1c266a52e1397b9221dee4922735b00343967d1071a +size 2270 diff --git a/game/interface/map/room_boat_house_idle.webp b/game/interface/map/room_boat_house_idle.webp new file mode 100644 index 00000000..9717ff90 --- /dev/null +++ b/game/interface/map/room_boat_house_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea5a4d946a24f0f53516569efa303b80b4fb6a1fe088df14f07460ffbbec17a6 +size 1638 diff --git a/game/interface/map/room_clothing_store_hover.webp b/game/interface/map/room_clothing_store_hover.webp new file mode 100644 index 00000000..b1ea6aad --- /dev/null +++ b/game/interface/map/room_clothing_store_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92af84cba277572073718a3dc088ce9fb873cca6b4f877a271e7718a41926ca0 +size 2228 diff --git a/game/interface/map/room_clothing_store_idle.webp b/game/interface/map/room_clothing_store_idle.webp new file mode 100644 index 00000000..676bd777 --- /dev/null +++ b/game/interface/map/room_clothing_store_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1ccc0021401aeb5151156725da4187134e10d20e4563a4cbe5b3d815a266854 +size 1598 diff --git a/game/interface/map/room_gryffindor_hover.webp b/game/interface/map/room_gryffindor_hover.webp new file mode 100644 index 00000000..599b4b79 --- /dev/null +++ b/game/interface/map/room_gryffindor_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aacf5564c2d13a28db34845920904548c799f4cae5f0335ff51a57f135cc2c56 +size 1744 diff --git a/game/interface/map/room_gryffindor_idle.webp b/game/interface/map/room_gryffindor_idle.webp new file mode 100644 index 00000000..8079f8c8 --- /dev/null +++ b/game/interface/map/room_gryffindor_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:765f55788ac47f73b1837a00a5c5739fb949c32a7821f5682261c1a164e77b6c +size 1204 diff --git a/game/interface/map/room_hufflepuff_hover.webp b/game/interface/map/room_hufflepuff_hover.webp new file mode 100644 index 00000000..97ff85f8 --- /dev/null +++ b/game/interface/map/room_hufflepuff_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:710914984d0d95d4fe9cd8c48ae0a1cac8654001814fa48d02ee09242c22bf20 +size 1884 diff --git a/game/interface/map/room_hufflepuff_idle.webp b/game/interface/map/room_hufflepuff_idle.webp new file mode 100644 index 00000000..2c132bb3 --- /dev/null +++ b/game/interface/map/room_hufflepuff_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:899210c56e0814f816204e4fc8d06f45e93acca2dc40f47348e939b420936fc1 +size 1406 diff --git a/game/interface/map/room_north_courtyard_hover.webp b/game/interface/map/room_north_courtyard_hover.webp new file mode 100644 index 00000000..eb676490 --- /dev/null +++ b/game/interface/map/room_north_courtyard_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ee856c1c660cc778fae43a99d750d8d8198c2ff4ee1eb2dffa9e0c45eebb70a +size 1894 diff --git a/game/interface/map/room_north_courtyard_idle.webp b/game/interface/map/room_north_courtyard_idle.webp new file mode 100644 index 00000000..0669578a --- /dev/null +++ b/game/interface/map/room_north_courtyard_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f3c5f6381498b31023908533f8fe7f8aa3c1440644e5d4a25247c420e9ea26f +size 2140 diff --git a/game/interface/map/room_office_hover.webp b/game/interface/map/room_office_hover.webp new file mode 100644 index 00000000..7c84f645 --- /dev/null +++ b/game/interface/map/room_office_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2348c4252cbdb79da5e5a6bfe96b6ec2417df8af15dbc639e29d1bcea79080ab +size 1838 diff --git a/game/interface/map/room_office_idle.webp b/game/interface/map/room_office_idle.webp new file mode 100644 index 00000000..00d0c1d2 --- /dev/null +++ b/game/interface/map/room_office_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc1d0eb4eb823f265c7fec6d80a4ea55ce30cfb442676977399688fe2d153129 +size 1452 diff --git a/game/interface/map/room_potions_hover.webp b/game/interface/map/room_potions_hover.webp new file mode 100644 index 00000000..8eb8c691 --- /dev/null +++ b/game/interface/map/room_potions_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cd01dd60ede8f80c384df902a7e4f5f72e135e8b2c44cf12d95f20e59dd3d02 +size 1466 diff --git a/game/interface/map/room_potions_idle.webp b/game/interface/map/room_potions_idle.webp new file mode 100644 index 00000000..0b3edde4 --- /dev/null +++ b/game/interface/map/room_potions_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79a9aec966ad4f651d930f8ccf4b5ccd296d7db40e896d6c50b4442f73cef6b5 +size 1048 diff --git a/game/interface/map/room_ravenclaw_hover.webp b/game/interface/map/room_ravenclaw_hover.webp new file mode 100644 index 00000000..31f39b2a --- /dev/null +++ b/game/interface/map/room_ravenclaw_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22dbac1fcda18c4ee4b4e7a5f75880895d3b2c232f995a76a1a168ec56692d9a +size 1598 diff --git a/game/interface/map/room_ravenclaw_idle.webp b/game/interface/map/room_ravenclaw_idle.webp new file mode 100644 index 00000000..5ff46e17 --- /dev/null +++ b/game/interface/map/room_ravenclaw_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a3e5f8476ddfd1e378742ca56c3c3e4e9e78eda3bfc27abcde9049fe06a69d9 +size 1218 diff --git a/game/interface/map/room_ror_empty_hover.webp b/game/interface/map/room_ror_empty_hover.webp new file mode 100644 index 00000000..77518c96 --- /dev/null +++ b/game/interface/map/room_ror_empty_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f07d404025fb9d36f711ed2785b50a3a995b032bc15fb805c4ec93239f746d6a +size 1344 diff --git a/game/interface/map/room_ror_empty_idle.webp b/game/interface/map/room_ror_empty_idle.webp new file mode 100644 index 00000000..c393e176 --- /dev/null +++ b/game/interface/map/room_ror_empty_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1ff82aae1b0d9e656a61a4845662e8c5487da1ff2033fdcc030e454019d89d14 +size 1088 diff --git a/game/interface/map/room_ror_hover.webp b/game/interface/map/room_ror_hover.webp new file mode 100644 index 00000000..75a02986 --- /dev/null +++ b/game/interface/map/room_ror_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ca2845be182a75749779a39faf0b985d48ad1ccc092e56eca942383c7aae5f3 +size 1602 diff --git a/game/interface/map/room_ror_idle.webp b/game/interface/map/room_ror_idle.webp new file mode 100644 index 00000000..20989965 --- /dev/null +++ b/game/interface/map/room_ror_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d68cd9ecd8f683c3a97f8011143aed4e6dbb4210a24d45483d5ca7bba99ba823 +size 1248 diff --git a/game/interface/map/room_slytherin_hover.webp b/game/interface/map/room_slytherin_hover.webp new file mode 100644 index 00000000..d45d57ec --- /dev/null +++ b/game/interface/map/room_slytherin_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eadb9f6d6845364c914a1c4bb2acf45f2efeec24247c4da2b9de0cf43071b2a4 +size 1854 diff --git a/game/interface/map/room_slytherin_idle.webp b/game/interface/map/room_slytherin_idle.webp new file mode 100644 index 00000000..371d4ee4 --- /dev/null +++ b/game/interface/map/room_slytherin_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1fe086d83061f2d012ce0a022159ac9ca88d6a63041bc81692b0368b456acfb +size 1410 diff --git a/game/interface/map/room_weasley_store_hover.webp b/game/interface/map/room_weasley_store_hover.webp new file mode 100644 index 00000000..25387d22 --- /dev/null +++ b/game/interface/map/room_weasley_store_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9f7ef5ef732dbce0bdf4f634c9a9c050d9d5aa448cf8c54a797072dcd74931a +size 1398 diff --git a/game/interface/map/room_weasley_store_idle.webp b/game/interface/map/room_weasley_store_idle.webp new file mode 100644 index 00000000..3adc9ded --- /dev/null +++ b/game/interface/map/room_weasley_store_idle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bbb700885dbc80a5fc2a6fdcbddcf71d243c5e9221c062690599f66e2c842b2 +size 1150 diff --git a/game/interface/meter/0.webp b/game/interface/meter/0.webp new file mode 100644 index 00000000..3aba3e14 --- /dev/null +++ b/game/interface/meter/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5d0ace9c1f76abc7fb32f4a573e0ccd21d97625616af5e761ed788d68234945c +size 9108 diff --git a/game/interface/meter/100.webp b/game/interface/meter/100.webp new file mode 100644 index 00000000..58a8c5f1 --- /dev/null +++ b/game/interface/meter/100.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f7a5bdc5ca45a2ceca4e169827e095bde9ae4bbd2c4900889d947b0556cd52d +size 11072 diff --git a/game/interface/meter/50.webp b/game/interface/meter/50.webp new file mode 100644 index 00000000..c05e9a89 --- /dev/null +++ b/game/interface/meter/50.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a8855fb9ffa01de17e37175a94f3752c77237591ad7d5fa09126130ddc1315c +size 7682 diff --git a/game/interface/meter/bubble/0.webp b/game/interface/meter/bubble/0.webp new file mode 100644 index 00000000..1c94b799 --- /dev/null +++ b/game/interface/meter/bubble/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e30f922f4e3a4ac56834613aaba8dd4278ff980eedf7defe4f60f355fb38131 +size 20726 diff --git a/game/interface/meter/bubble/1.webp b/game/interface/meter/bubble/1.webp new file mode 100644 index 00000000..f6ded920 --- /dev/null +++ b/game/interface/meter/bubble/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9b596e76551f207c935f3dbafa198319f7ba19d67833898ca06bd3b3d65647c +size 20030 diff --git a/game/interface/meter/bubble/2.webp b/game/interface/meter/bubble/2.webp new file mode 100644 index 00000000..04fec348 --- /dev/null +++ b/game/interface/meter/bubble/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b4238ee2a64f65ad0f133ce4f931a900cf71b2acb6082b6885246c38967c62b +size 22420 diff --git a/game/interface/meter/bubble/3.webp b/game/interface/meter/bubble/3.webp new file mode 100644 index 00000000..a3099e7a --- /dev/null +++ b/game/interface/meter/bubble/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2cd9ac8c90c68b826dacaa91ef10ac9eab5cf62eb8c7f79556097e270207491 +size 23332 diff --git a/game/interface/meter/bubble/4.webp b/game/interface/meter/bubble/4.webp new file mode 100644 index 00000000..8fd587bc --- /dev/null +++ b/game/interface/meter/bubble/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ed2c7f97e5cba6bbd0b191f135e2babe7ecf30444a84c0ea7917b262e1ebdd0d +size 23392 diff --git a/game/interface/meter/fill.webp b/game/interface/meter/fill.webp new file mode 100644 index 00000000..5015d52c --- /dev/null +++ b/game/interface/meter/fill.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4eb9f1a4493329b40eda8326673c7aa897c668a0094b0e12f5bb5cb664bc76be +size 1206 diff --git a/game/interface/meter/glass.webp b/game/interface/meter/glass.webp new file mode 100644 index 00000000..ad81a3e2 --- /dev/null +++ b/game/interface/meter/glass.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a26329ddedce0b57a202cd331078af98c699f0e4a7525bff45f29391a3f4227 +size 524 diff --git a/game/interface/meter/gold/circle.webp b/game/interface/meter/gold/circle.webp new file mode 100644 index 00000000..4efcac34 --- /dev/null +++ b/game/interface/meter/gold/circle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:162356b3c98471040ea397f551dd555fd8d3a53eb0875c90d2f77f7ed6b0aa88 +size 1512 diff --git a/game/interface/meter/gold/meter.webp b/game/interface/meter/gold/meter.webp new file mode 100644 index 00000000..bc1ddce9 --- /dev/null +++ b/game/interface/meter/gold/meter.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94ffd368a9f63456356e41402f91abc792ceb14878b65afce7b4a0daeda2b98c +size 342 diff --git a/game/interface/meter/gray/circle.webp b/game/interface/meter/gray/circle.webp new file mode 100644 index 00000000..fe364ca6 --- /dev/null +++ b/game/interface/meter/gray/circle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:301880ea53274828257b65087b6372b75626736b44cb57063e9bdf50ecdbed26 +size 1500 diff --git a/game/interface/meter/gray/meter.webp b/game/interface/meter/gray/meter.webp new file mode 100644 index 00000000..4f1704a1 --- /dev/null +++ b/game/interface/meter/gray/meter.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e58f1fcce3e80241133124fdd54b1f88c4a50bec8b78d618953bedc0c7c2ab86 +size 336 diff --git a/game/interface/page.webp b/game/interface/page.webp new file mode 100644 index 00000000..bb39bac7 --- /dev/null +++ b/game/interface/page.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee35211fbccb898de30ae9caf38655ac02dbbad8cc181527122b471a66e6741b +size 276 diff --git a/game/interface/panels/gold/bottom_panel.webp b/game/interface/panels/gold/bottom_panel.webp new file mode 100644 index 00000000..686918a1 --- /dev/null +++ b/game/interface/panels/gold/bottom_panel.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8418d24359aafbf4faf695483aca016dc47a03d2ba03ad37b70ac5654def0e47 +size 23836 diff --git a/game/interface/panels/gold/bottom_panel_hover.webp b/game/interface/panels/gold/bottom_panel_hover.webp new file mode 100644 index 00000000..7a01de71 --- /dev/null +++ b/game/interface/panels/gold/bottom_panel_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ea46e278f410c44a0a97f123be054c97bd07c8890ce89ccfb31e3b3805b41ba2 +size 23798 diff --git a/game/interface/panels/gold/clothing_panel_full.webp b/game/interface/panels/gold/clothing_panel_full.webp new file mode 100644 index 00000000..bcecc02d --- /dev/null +++ b/game/interface/panels/gold/clothing_panel_full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a2feeb11aa5be54ddf95a8071d8ea17b2f9ec8c74d828d259488f35a0d7d0363 +size 48992 diff --git a/game/interface/panels/gold/clothing_panel_full_hover.webp b/game/interface/panels/gold/clothing_panel_full_hover.webp new file mode 100644 index 00000000..69d02ac2 --- /dev/null +++ b/game/interface/panels/gold/clothing_panel_full_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:de67bf415dea604bef8c225d3c8e5e22aa26bb66ed6ce4dd32cf2932e90bdc8c +size 48056 diff --git a/game/interface/panels/gold/clothing_panel_main.webp b/game/interface/panels/gold/clothing_panel_main.webp new file mode 100644 index 00000000..dd9745f1 --- /dev/null +++ b/game/interface/panels/gold/clothing_panel_main.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a9cf820259d7523aec9432686f3f352e8c3e2b82de96085215d15e6f371bb83 +size 39190 diff --git a/game/interface/panels/gold/clothing_panel_main_hover.webp b/game/interface/panels/gold/clothing_panel_main_hover.webp new file mode 100644 index 00000000..5b130f2f --- /dev/null +++ b/game/interface/panels/gold/clothing_panel_main_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06c8942abad6b5a002ae2afadd997ab755e1aae45ddad5e48b66268ebd50fade +size 39018 diff --git a/game/interface/panels/gold/icon_panel3.webp b/game/interface/panels/gold/icon_panel3.webp new file mode 100644 index 00000000..70f7d21d --- /dev/null +++ b/game/interface/panels/gold/icon_panel3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ddce8af627ce72c0373aad7691c5ac0d15574f2fc019e3e365b2b94d84327d68 +size 38994 diff --git a/game/interface/panels/gold/info_panel.webp b/game/interface/panels/gold/info_panel.webp new file mode 100644 index 00000000..2a83e0f7 --- /dev/null +++ b/game/interface/panels/gold/info_panel.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3609434474b2b55cb7a29b622643053a712528782c05e8367d2e9130886a24f3 +size 7976 diff --git a/game/interface/panels/gold/items_panel.webp b/game/interface/panels/gold/items_panel.webp new file mode 100644 index 00000000..c056b716 --- /dev/null +++ b/game/interface/panels/gold/items_panel.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8ebb63b54b07fc8e718ac16ca24acab7cb06e7552c09386dc5aadb31bbf31efd +size 39558 diff --git a/game/interface/panels/gold/items_panel_hover.webp b/game/interface/panels/gold/items_panel_hover.webp new file mode 100644 index 00000000..2f6c3e53 --- /dev/null +++ b/game/interface/panels/gold/items_panel_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94daeeb77a0a7b861113a5a2a98b0f5532fe0e3e37534a37b07ae7d9b6ad40ae +size 39256 diff --git a/game/interface/panels/gray/bottom_panel.webp b/game/interface/panels/gray/bottom_panel.webp new file mode 100644 index 00000000..6ff9677c --- /dev/null +++ b/game/interface/panels/gray/bottom_panel.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edc7ac30db803204e5cd01f5520921c5080ce68ef1122ebd68aa75b43ed17ec8 +size 24504 diff --git a/game/interface/panels/gray/bottom_panel_hover.webp b/game/interface/panels/gray/bottom_panel_hover.webp new file mode 100644 index 00000000..278271ef --- /dev/null +++ b/game/interface/panels/gray/bottom_panel_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2232ffe6a53095872f4f7afa6ffac8e4c483e7169aab23cccce9cf33bc1eefa +size 24514 diff --git a/game/interface/panels/gray/clothing_panel_full.webp b/game/interface/panels/gray/clothing_panel_full.webp new file mode 100644 index 00000000..69bca747 --- /dev/null +++ b/game/interface/panels/gray/clothing_panel_full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f4ae1806e986e065ade83be2b10d9f4e827ccf06836aff6b59ac863ef92fe9d +size 33842 diff --git a/game/interface/panels/gray/clothing_panel_full_hover.webp b/game/interface/panels/gray/clothing_panel_full_hover.webp new file mode 100644 index 00000000..b50a98cb --- /dev/null +++ b/game/interface/panels/gray/clothing_panel_full_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d156be1c16a39eb2b4a0b396b0835339e2b9c80c0dbd469ab4a5843728af4b7c +size 33900 diff --git a/game/interface/panels/gray/clothing_panel_main.webp b/game/interface/panels/gray/clothing_panel_main.webp new file mode 100644 index 00000000..9998e329 --- /dev/null +++ b/game/interface/panels/gray/clothing_panel_main.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06900773fc243afa1e9cc3f76d589f3fd455ab6b4d6a85863e54dd572885059c +size 30040 diff --git a/game/interface/panels/gray/clothing_panel_main_hover.webp b/game/interface/panels/gray/clothing_panel_main_hover.webp new file mode 100644 index 00000000..a4fc1003 --- /dev/null +++ b/game/interface/panels/gray/clothing_panel_main_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:762c814e238ad8e5b7fe6f131a7e8f65ae1de705d06d5e61f0f4744fe7b71007 +size 29724 diff --git a/game/interface/panels/gray/icon_panel3.webp b/game/interface/panels/gray/icon_panel3.webp new file mode 100644 index 00000000..5d19df60 --- /dev/null +++ b/game/interface/panels/gray/icon_panel3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f5b9fecebdb1be3975a8a05ddd85459d381ad723223886b3c277d659a9ef55df +size 31842 diff --git a/game/interface/panels/gray/info_panel.webp b/game/interface/panels/gray/info_panel.webp new file mode 100644 index 00000000..0e6bd6e7 --- /dev/null +++ b/game/interface/panels/gray/info_panel.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b57ff0262fd2f4f08e3ac22bab0a103321ece6c5bdea98d437c34f6a7635851b +size 5828 diff --git a/game/interface/panels/gray/items_panel.webp b/game/interface/panels/gray/items_panel.webp new file mode 100644 index 00000000..0b5a4be4 --- /dev/null +++ b/game/interface/panels/gray/items_panel.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e57f2be93d13f4874d0dc3dd5d633fe703aa4dc9bb1722c6802f3cabf70be698 +size 29598 diff --git a/game/interface/panels/gray/items_panel_hover.webp b/game/interface/panels/gray/items_panel_hover.webp new file mode 100644 index 00000000..34870501 --- /dev/null +++ b/game/interface/panels/gray/items_panel_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45870c439c64d29754acff6ac55a5e251d3edddae24b1c0e2567a9c5b2e7320a +size 29594 diff --git a/game/interface/puzzle/0.webp b/game/interface/puzzle/0.webp new file mode 100644 index 00000000..03203905 --- /dev/null +++ b/game/interface/puzzle/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1e106e3ec379bbba0f13fb4204c3fe7cced28f9d5a8d9c0c9049926ebd9b257d +size 2342 diff --git a/game/interface/puzzle/1.webp b/game/interface/puzzle/1.webp new file mode 100644 index 00000000..989ebad1 --- /dev/null +++ b/game/interface/puzzle/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9464c58f246c119758a119ab36d8011e570321b9b9e920c23df3c7037121c17 +size 7266 diff --git a/game/interface/puzzle/10.webp b/game/interface/puzzle/10.webp new file mode 100644 index 00000000..ac2c9fc8 --- /dev/null +++ b/game/interface/puzzle/10.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2a21ba4231d8f5a0e4d8d6ec073feb7ababd397383662a0feba887c8f394fc2c +size 4438 diff --git a/game/interface/puzzle/11.webp b/game/interface/puzzle/11.webp new file mode 100644 index 00000000..949f3808 --- /dev/null +++ b/game/interface/puzzle/11.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83eab08a8886bfcbadb9124ec26712ccaf1ec08a1f52a0d0c39b1ab9761bfb25 +size 4480 diff --git a/game/interface/puzzle/12.webp b/game/interface/puzzle/12.webp new file mode 100644 index 00000000..5a72408d --- /dev/null +++ b/game/interface/puzzle/12.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a45ac1897a183a1493a432bf9118443eca41c7023d05203eb99ae13f6fe7d6ac +size 5090 diff --git a/game/interface/puzzle/13.webp b/game/interface/puzzle/13.webp new file mode 100644 index 00000000..f9c35912 --- /dev/null +++ b/game/interface/puzzle/13.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4bc7a3ced1036594b953fc237d9a1354484095a8e805d15c28fed5b75b9ea8a9 +size 7016 diff --git a/game/interface/puzzle/14.webp b/game/interface/puzzle/14.webp new file mode 100644 index 00000000..9b7307e3 --- /dev/null +++ b/game/interface/puzzle/14.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff5a0edffc51e677c5ad51dd4725926840778c13c71d986391cddb8d96de3f5d +size 5892 diff --git a/game/interface/puzzle/15.webp b/game/interface/puzzle/15.webp new file mode 100644 index 00000000..a6aba4a1 --- /dev/null +++ b/game/interface/puzzle/15.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca652abcc08a610cbf788a8c3cdf20008fe121d1777c36b2a5443e995c417e2f +size 6060 diff --git a/game/interface/puzzle/2.webp b/game/interface/puzzle/2.webp new file mode 100644 index 00000000..70789ef2 --- /dev/null +++ b/game/interface/puzzle/2.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2498dc219ade1ff37b04cc48be94d49d6dab6952eda2d79c7059d07ae9584b51 +size 7264 diff --git a/game/interface/puzzle/3.webp b/game/interface/puzzle/3.webp new file mode 100644 index 00000000..f0a826cb --- /dev/null +++ b/game/interface/puzzle/3.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:473600c1d671841633e7e5b623bd17bb06f609c11cbfb8179c478e064ba9e59f +size 11508 diff --git a/game/interface/puzzle/4.webp b/game/interface/puzzle/4.webp new file mode 100644 index 00000000..9a661e7f --- /dev/null +++ b/game/interface/puzzle/4.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3b76e989ac08b4ae97f7c160261b3599e27911159148f357ddca34ab357dc8a +size 7412 diff --git a/game/interface/puzzle/5.webp b/game/interface/puzzle/5.webp new file mode 100644 index 00000000..50edc31b --- /dev/null +++ b/game/interface/puzzle/5.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a25fbdcd8627ae76b79f8c37bc6965df8175669ac03027644855dd1a06aa3b5f +size 4832 diff --git a/game/interface/puzzle/6.webp b/game/interface/puzzle/6.webp new file mode 100644 index 00000000..cba2632c --- /dev/null +++ b/game/interface/puzzle/6.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bc49cdef379fb25ddb0cf053a0f156ef00c7401465500ed832a532e81bac53a0 +size 6148 diff --git a/game/interface/puzzle/7.webp b/game/interface/puzzle/7.webp new file mode 100644 index 00000000..4e7598ce --- /dev/null +++ b/game/interface/puzzle/7.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0ef49238812d2423dd565490611499d5d909f396df9776be6f2df7afe4e32050 +size 7450 diff --git a/game/interface/puzzle/8.webp b/game/interface/puzzle/8.webp new file mode 100644 index 00000000..add83690 --- /dev/null +++ b/game/interface/puzzle/8.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b564b3d6d8ac411ba800c8dcbeeabb27cadaeee30b622a0128084ceff92b4019 +size 7124 diff --git a/game/interface/puzzle/9.webp b/game/interface/puzzle/9.webp new file mode 100644 index 00000000..155dd714 --- /dev/null +++ b/game/interface/puzzle/9.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:317d38e53cd68cf351bc2c34234076ee0ae28b0d9e54e4b61680ad202117137e +size 4590 diff --git a/game/interface/puzzle/background.webp b/game/interface/puzzle/background.webp new file mode 100644 index 00000000..800843ac --- /dev/null +++ b/game/interface/puzzle/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f8f24c021e20c18f730db517dc7db852ea49f9c4dc544afe840ae2279b11a67 +size 10150 diff --git a/game/interface/puzzle/grid.webp b/game/interface/puzzle/grid.webp new file mode 100644 index 00000000..862974dd --- /dev/null +++ b/game/interface/puzzle/grid.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0587e219c219708e1ce450bba888bb21fe0b8445b5d25151a24242624f945a91 +size 116 diff --git a/game/interface/puzzle/puzzle.webp b/game/interface/puzzle/puzzle.webp new file mode 100644 index 00000000..7b0fdcee --- /dev/null +++ b/game/interface/puzzle/puzzle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ac73405a49683f9b1aaa6331d199ff49b8947e6816922133c94a5ce4cdd8a6b4 +size 94372 diff --git a/game/interface/room_of_req/astoria_icon.webp b/game/interface/room_of_req/astoria_icon.webp new file mode 100644 index 00000000..1d5672db --- /dev/null +++ b/game/interface/room_of_req/astoria_icon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a0ba414a8a6990d8aed4d1d8157136703e9ffa72d7a0ec816d70cfbbf187b30 +size 2360 diff --git a/game/interface/room_of_req/cho_icon.webp b/game/interface/room_of_req/cho_icon.webp new file mode 100644 index 00000000..8df878a8 --- /dev/null +++ b/game/interface/room_of_req/cho_icon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b81d42e0ec4f77061718dc0a935f3f606704b8a5ee09409b04f4baf194fc3a5 +size 2060 diff --git a/game/interface/room_of_req/hermione_icon.webp b/game/interface/room_of_req/hermione_icon.webp new file mode 100644 index 00000000..0030c623 --- /dev/null +++ b/game/interface/room_of_req/hermione_icon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb83763872c3c41dadbc4e053d4ee6e941ec1cdf69fede1d293959b68d07ee12 +size 2950 diff --git a/game/interface/room_of_req/locked.webp b/game/interface/room_of_req/locked.webp new file mode 100644 index 00000000..68b399ed --- /dev/null +++ b/game/interface/room_of_req/locked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7dc49b7dc0dc714676dee8ec245562486ba88b97bdcf6b09c193d7f3ecdf078a +size 2472 diff --git a/game/interface/room_of_req/luna_icon.webp b/game/interface/room_of_req/luna_icon.webp new file mode 100644 index 00000000..796b032b --- /dev/null +++ b/game/interface/room_of_req/luna_icon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8c5404ad88acd0ee23b194cd6a3a88df701837e8cd14665afddbf0556938683 +size 2612 diff --git a/game/interface/room_of_req/mirror_event_item.webp b/game/interface/room_of_req/mirror_event_item.webp new file mode 100644 index 00000000..f2c19198 --- /dev/null +++ b/game/interface/room_of_req/mirror_event_item.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19ed96cc73976b2fae329bd45f6d29861fd006387211969dc0537b55046fb995 +size 160 diff --git a/game/interface/room_of_req/mirror_event_item_hover.webp b/game/interface/room_of_req/mirror_event_item_hover.webp new file mode 100644 index 00000000..f4c0d2d1 --- /dev/null +++ b/game/interface/room_of_req/mirror_event_item_hover.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9224c45daf315a82ebb9f102944d843ec31f42119c918c52df13015e3c93fe06 +size 160 diff --git a/game/interface/room_of_req/mirror_event_menu.webp b/game/interface/room_of_req/mirror_event_menu.webp new file mode 100644 index 00000000..18b9319e --- /dev/null +++ b/game/interface/room_of_req/mirror_event_menu.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec37a7cc66177bd00282e7c1ccf74c8a7ff1709ba2d37e7a9f3e69fd5a5d791d +size 36630 diff --git a/game/interface/room_of_req/quistion_mark.webp b/game/interface/room_of_req/quistion_mark.webp new file mode 100644 index 00000000..318872e6 --- /dev/null +++ b/game/interface/room_of_req/quistion_mark.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3bb15586b2a09ed75c9eadfbbb41aa74057d425ccfabc4c0872231dc13e33f3f +size 1092 diff --git a/game/interface/room_of_req/susan_icon.webp b/game/interface/room_of_req/susan_icon.webp new file mode 100644 index 00000000..1f3bffc2 --- /dev/null +++ b/game/interface/room_of_req/susan_icon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ccf795a78d589b378156f3b9f470859384fbf84d84e3f4ed4a1cd0a319ea4024 +size 2514 diff --git a/game/interface/room_of_req/tonks_icon.webp b/game/interface/room_of_req/tonks_icon.webp new file mode 100644 index 00000000..f507437a --- /dev/null +++ b/game/interface/room_of_req/tonks_icon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:199a539537d0cf9d437e89d08bfc9dce5999a71a611c1c1957b20e572f6ff2cb +size 2504 diff --git a/game/interface/room_of_req/unlocked.webp b/game/interface/room_of_req/unlocked.webp new file mode 100644 index 00000000..8b5423f4 --- /dev/null +++ b/game/interface/room_of_req/unlocked.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92126948d6c64a9014707e2253bfc5ad9d02feba23019ac1ae8e27c024c364a9 +size 3884 diff --git a/game/interface/stats/gold/bar_empty.webp b/game/interface/stats/gold/bar_empty.webp new file mode 100644 index 00000000..d4955386 --- /dev/null +++ b/game/interface/stats/gold/bar_empty.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8217f9acf20aeef7224011a4a1f4f18ed269f92810b2dfee12f5272baf521e0 +size 210 diff --git a/game/interface/stats/gold/bar_full.webp b/game/interface/stats/gold/bar_full.webp new file mode 100644 index 00000000..74b691ac --- /dev/null +++ b/game/interface/stats/gold/bar_full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c56cbf3e0c8e04e547f295b6084d57f78c205f635dd8467ff95577e7cd69a3b4 +size 216 diff --git a/game/interface/stats/gray/bar_empty.webp b/game/interface/stats/gray/bar_empty.webp new file mode 100644 index 00000000..5653bfab --- /dev/null +++ b/game/interface/stats/gray/bar_empty.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:74f7046112cd20ccba527cdf744fdbcc2ed060fc4509fd2d79af6a1277139d79 +size 208 diff --git a/game/interface/stats/gray/bar_full.webp b/game/interface/stats/gray/bar_full.webp new file mode 100644 index 00000000..19c65c27 --- /dev/null +++ b/game/interface/stats/gray/bar_full.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc28a180704a6cc2567f51330ef097e7fa06339c1d125220e4b9dc204bb36867 +size 216 diff --git a/game/interface/studio/background.webp b/game/interface/studio/background.webp new file mode 100644 index 00000000..16493bf9 --- /dev/null +++ b/game/interface/studio/background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:177d431f3c3183f5666ada1fcbf7315d79b12a8bd460a129278789a48fbe985a +size 15160 diff --git a/game/interface/studio/blur.webp b/game/interface/studio/blur.webp new file mode 100644 index 00000000..ba516df0 --- /dev/null +++ b/game/interface/studio/blur.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02fa4b71cac8210d1f9a5fee86aea1b0958c66c751951d4b37d74d4e1a3d9535 +size 20204 diff --git a/game/interface/studio/blush.webp b/game/interface/studio/blush.webp new file mode 100644 index 00000000..b4f55496 --- /dev/null +++ b/game/interface/studio/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71d18026a80bf255473aa449c983b5b9c90e131c8c783bba25ddccf8fe89296f +size 6854 diff --git a/game/interface/studio/brightness.webp b/game/interface/studio/brightness.webp new file mode 100644 index 00000000..46a3dd1a --- /dev/null +++ b/game/interface/studio/brightness.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a325c5aacf6884371f08102e07a5f229a129c5d925880377a4c870e750bb073a +size 10844 diff --git a/game/interface/studio/eyebrows.webp b/game/interface/studio/eyebrows.webp new file mode 100644 index 00000000..a28e0f30 --- /dev/null +++ b/game/interface/studio/eyebrows.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84462d3f036fef8c3af0b212e53a7cf89143351089dae3d08cc9c1d1f7417a1a +size 7598 diff --git a/game/interface/studio/eyes.webp b/game/interface/studio/eyes.webp new file mode 100644 index 00000000..b87b2d4b --- /dev/null +++ b/game/interface/studio/eyes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80ff2f769939758a9907abcc2efbe987024cc04f221069491f4878ac5526efd4 +size 5440 diff --git a/game/interface/studio/hide.webp b/game/interface/studio/hide.webp new file mode 100644 index 00000000..fa32c0af --- /dev/null +++ b/game/interface/studio/hide.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fcc5ace993569ec7c578c53a2cc150451e57789004f3dec808b6006683c6533 +size 6118 diff --git a/game/interface/studio/hue.webp b/game/interface/studio/hue.webp new file mode 100644 index 00000000..58256782 --- /dev/null +++ b/game/interface/studio/hue.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f12668204975d1266d8d87e318c2007564767a68ea232b18c5acee7559cfbeda +size 21760 diff --git a/game/interface/studio/mouth.webp b/game/interface/studio/mouth.webp new file mode 100644 index 00000000..0e2cd039 --- /dev/null +++ b/game/interface/studio/mouth.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5123674b79c79dd77b8330f1d663d7759aab13b0615c74193eb0cd5bfa68102 +size 10864 diff --git a/game/interface/studio/opacity.webp b/game/interface/studio/opacity.webp new file mode 100644 index 00000000..50b2d263 --- /dev/null +++ b/game/interface/studio/opacity.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:935bc10101626e274a163f38296391d8cc892fb340a895fa2fdb741950c16a26 +size 6294 diff --git a/game/interface/studio/overlay.webp b/game/interface/studio/overlay.webp new file mode 100644 index 00000000..16195b8f --- /dev/null +++ b/game/interface/studio/overlay.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b87eaed9f9c96e533c425498c417ccac602ba619c8b5a620566921138bb0d727 +size 39018 diff --git a/game/interface/studio/pupils.webp b/game/interface/studio/pupils.webp new file mode 100644 index 00000000..7442e104 --- /dev/null +++ b/game/interface/studio/pupils.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eacc964ab77e9186ff3a803a852290c5ee0ac7e720463763c63d85a9e669a6e8 +size 7056 diff --git a/game/interface/studio/saturation.webp b/game/interface/studio/saturation.webp new file mode 100644 index 00000000..197966d9 --- /dev/null +++ b/game/interface/studio/saturation.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb0eea86cb86c7aaeb1ea1e5703ee705a3ff56ab50e1d1f5d0c52516399450e5 +size 5328 diff --git a/game/interface/studio/scale.webp b/game/interface/studio/scale.webp new file mode 100644 index 00000000..3d3627c9 --- /dev/null +++ b/game/interface/studio/scale.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0186b0beaf700573ef33ffccac57f5cac41008b8dc60ca280030251ad60b7967 +size 15280 diff --git a/game/interface/studio/screenshot.webp b/game/interface/studio/screenshot.webp new file mode 100644 index 00000000..7b3b2b4b --- /dev/null +++ b/game/interface/studio/screenshot.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9f62d57804aaf74b36e08a81075cf8e093dfcf79a56967dd9f7dd9607e7535d +size 7300 diff --git a/game/interface/studio/tears.webp b/game/interface/studio/tears.webp new file mode 100644 index 00000000..879ceecc --- /dev/null +++ b/game/interface/studio/tears.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43bb4fd11799597f8266d0eb02b98ee6deee71c5baafc684e0d69b0ea477fdb0 +size 11848 diff --git a/game/interface/topbar/banners.webp b/game/interface/topbar/banners.webp new file mode 100644 index 00000000..c6353e51 --- /dev/null +++ b/game/interface/topbar/banners.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4877d4a964aa8b3ba3f0efaa6cc6ab70643e0f707b53c7e2afb62fae20856479 +size 7170 diff --git a/game/interface/topbar/buttons/gold/deco_cupboard.webp b/game/interface/topbar/buttons/gold/deco_cupboard.webp new file mode 100644 index 00000000..a545827e --- /dev/null +++ b/game/interface/topbar/buttons/gold/deco_cupboard.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9aa1176cb9c4fb3d7b2288ba71cfcd4a314996747e9e443506cd64b66cd5ac4c +size 766 diff --git a/game/interface/topbar/buttons/gold/deco_fireplace.webp b/game/interface/topbar/buttons/gold/deco_fireplace.webp new file mode 100644 index 00000000..9496d10d --- /dev/null +++ b/game/interface/topbar/buttons/gold/deco_fireplace.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9c4d152ebd7c2f6641b4ca737203d4cdf8f6225001f66c70369657e4ab6bc25f +size 708 diff --git a/game/interface/topbar/buttons/gold/deco_wall.webp b/game/interface/topbar/buttons/gold/deco_wall.webp new file mode 100644 index 00000000..46e11b48 --- /dev/null +++ b/game/interface/topbar/buttons/gold/deco_wall.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:163582d2c11564245c8478393628c112acd2194eb72ffe249660003134ee909a +size 660 diff --git a/game/interface/topbar/buttons/gold/ui_achievements.webp b/game/interface/topbar/buttons/gold/ui_achievements.webp new file mode 100644 index 00000000..ab59ea6f --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_achievements.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5edcf61b5bafba045d77ec5c4781eb168e21c3a30781884b1005bc58f0e87f9 +size 530 diff --git a/game/interface/topbar/buttons/gold/ui_close.webp b/game/interface/topbar/buttons/gold/ui_close.webp new file mode 100644 index 00000000..b009a502 --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_close.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:636ce0154039316c13f4eb471baa302218bb063a4dfde1e9855500763aa70dc1 +size 1452 diff --git a/game/interface/topbar/buttons/gold/ui_delete.webp b/game/interface/topbar/buttons/gold/ui_delete.webp new file mode 100644 index 00000000..aed36c86 --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_delete.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e47c180fc6d843b8fda5e98c4c59be89d650328cdf5d540454387935624d8f2a +size 382 diff --git a/game/interface/topbar/buttons/gold/ui_empty.webp b/game/interface/topbar/buttons/gold/ui_empty.webp new file mode 100644 index 00000000..64bfe7bb --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_empty.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1cd4987c3fd5117eccf09208ce209e52c8a41ea58452f447c843689663ab9376 +size 266 diff --git a/game/interface/topbar/buttons/gold/ui_false.webp b/game/interface/topbar/buttons/gold/ui_false.webp new file mode 100644 index 00000000..d5528bf8 --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_false.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:308c690a78dbe369a1c453d2aa54d6dc0faeddeda409913244591a36f1686f50 +size 424 diff --git a/game/interface/topbar/buttons/gold/ui_gifts.webp b/game/interface/topbar/buttons/gold/ui_gifts.webp new file mode 100644 index 00000000..d4e80529 --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_gifts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5eb84850fe6eea2a81e678503d2829d474ab35c9986c19222284fef8333a9ec +size 504 diff --git a/game/interface/topbar/buttons/gold/ui_inv.webp b/game/interface/topbar/buttons/gold/ui_inv.webp new file mode 100644 index 00000000..28de5ad4 --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_inv.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:672dfa2afa69ff1ae87bdbb28413c4a32ac19eca9f7059eb615f748b135d82c2 +size 698 diff --git a/game/interface/topbar/buttons/gold/ui_menu.webp b/game/interface/topbar/buttons/gold/ui_menu.webp new file mode 100644 index 00000000..ac3b1509 --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_menu.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dda068d46d17da6852afd336981374157c4c2d569191f290458aa0230175a4e1 +size 918 diff --git a/game/interface/topbar/buttons/gold/ui_quest_items.webp b/game/interface/topbar/buttons/gold/ui_quest_items.webp new file mode 100644 index 00000000..92d36ba6 --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_quest_items.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:639b1a7f0e9729d0ff4c30e361eb0f5a1fdbb18dc6a5f2b82760511524afa54e +size 660 diff --git a/game/interface/topbar/buttons/gold/ui_sleep.webp b/game/interface/topbar/buttons/gold/ui_sleep.webp new file mode 100644 index 00000000..a4ff1d11 --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_sleep.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec890b154fe4d34735d9f3c5daee2e38f28516e6b34f285245a8395bbffab9ed +size 982 diff --git a/game/interface/topbar/buttons/gold/ui_stats.webp b/game/interface/topbar/buttons/gold/ui_stats.webp new file mode 100644 index 00000000..d4e80529 --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_stats.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5eb84850fe6eea2a81e678503d2829d474ab35c9986c19222284fef8333a9ec +size 504 diff --git a/game/interface/topbar/buttons/gold/ui_true.webp b/game/interface/topbar/buttons/gold/ui_true.webp new file mode 100644 index 00000000..7a167bf1 --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_true.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9c3c53419e621fcfdc5197569e916c181b7bdfa50900c79ee53dcf6a85f390b +size 442 diff --git a/game/interface/topbar/buttons/gold/ui_work.webp b/game/interface/topbar/buttons/gold/ui_work.webp new file mode 100644 index 00000000..f37d82e4 --- /dev/null +++ b/game/interface/topbar/buttons/gold/ui_work.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70da920e673ac6d3a0da2246f771af5640c876fa6ac30d70cea69292e48f58b7 +size 500 diff --git a/game/interface/topbar/buttons/gray/deco_cupboard.webp b/game/interface/topbar/buttons/gray/deco_cupboard.webp new file mode 100644 index 00000000..42903854 --- /dev/null +++ b/game/interface/topbar/buttons/gray/deco_cupboard.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c176563bedccecbff0d7db1bdd9e305e621c4d643c82444d3fd3364ecc683de7 +size 680 diff --git a/game/interface/topbar/buttons/gray/deco_fireplace.webp b/game/interface/topbar/buttons/gray/deco_fireplace.webp new file mode 100644 index 00000000..870d4d89 --- /dev/null +++ b/game/interface/topbar/buttons/gray/deco_fireplace.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87224cf3396c3b0c70cf9a30421a1a5956d18d23ed9b42688c8f0cf0202abe28 +size 664 diff --git a/game/interface/topbar/buttons/gray/deco_wall.webp b/game/interface/topbar/buttons/gray/deco_wall.webp new file mode 100644 index 00000000..d5cdf1b7 --- /dev/null +++ b/game/interface/topbar/buttons/gray/deco_wall.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a7e2b14d04b3d330df2a79b069cee5c6c9fb400642e182c75874de9fc5ac62a +size 630 diff --git a/game/interface/topbar/buttons/gray/ui_achievements.webp b/game/interface/topbar/buttons/gray/ui_achievements.webp new file mode 100644 index 00000000..31114a6f --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_achievements.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b45d35c43efe32fd83b99fbd91999ebbf51f0cf81b3d1d0632091c6d1134bc57 +size 488 diff --git a/game/interface/topbar/buttons/gray/ui_close.webp b/game/interface/topbar/buttons/gray/ui_close.webp new file mode 100644 index 00000000..b7d29dc7 --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_close.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e05c0c395b57d47ddd04656dd455cf4a63d7d777d74457a7c89d87848a0be42 +size 1314 diff --git a/game/interface/topbar/buttons/gray/ui_delete.webp b/game/interface/topbar/buttons/gray/ui_delete.webp new file mode 100644 index 00000000..bbe692c6 --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_delete.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e4c6ca7ac5a3ff21bbed2bcd99692d1ef015f10b154f08c5a3ac9ee604ff94da +size 368 diff --git a/game/interface/topbar/buttons/gray/ui_empty.webp b/game/interface/topbar/buttons/gray/ui_empty.webp new file mode 100644 index 00000000..cfbd4e97 --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_empty.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:889243c17941630175939a6f7d22403a782d9b894969127ae15ea82cd697ba55 +size 286 diff --git a/game/interface/topbar/buttons/gray/ui_false.webp b/game/interface/topbar/buttons/gray/ui_false.webp new file mode 100644 index 00000000..bdca8ae5 --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_false.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:30de222cefabceacfb9a26017041dfe0335cc16d1df40089359d7c66514e1d86 +size 400 diff --git a/game/interface/topbar/buttons/gray/ui_gifts.webp b/game/interface/topbar/buttons/gray/ui_gifts.webp new file mode 100644 index 00000000..ca14ee18 --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_gifts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:383a01e5dec902056e5383e2a37af7377dc2734e8db4f17083bfe96d775a3151 +size 460 diff --git a/game/interface/topbar/buttons/gray/ui_inv.webp b/game/interface/topbar/buttons/gray/ui_inv.webp new file mode 100644 index 00000000..ede22523 --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_inv.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5262cd41abe59bc60aa5f4fb29100d913848ac12019fe461dc50ae799e62f04c +size 662 diff --git a/game/interface/topbar/buttons/gray/ui_menu.webp b/game/interface/topbar/buttons/gray/ui_menu.webp new file mode 100644 index 00000000..480a3192 --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_menu.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d25f291a72d28472c4b21863e9eb4eec8649470559e345e296b9738cf49dd3e8 +size 820 diff --git a/game/interface/topbar/buttons/gray/ui_quest_items.webp b/game/interface/topbar/buttons/gray/ui_quest_items.webp new file mode 100644 index 00000000..6cf8f32e --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_quest_items.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:473960ac5c9bba4efdee6cf555562184878a22935f424e3dff9ac8bb4b6e1fd4 +size 606 diff --git a/game/interface/topbar/buttons/gray/ui_sleep.webp b/game/interface/topbar/buttons/gray/ui_sleep.webp new file mode 100644 index 00000000..98426dd2 --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_sleep.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f03b08505cd0ac8f3dbddff08a85aa8a6a3b9b4c53bf0565a78a9081efddc3d +size 866 diff --git a/game/interface/topbar/buttons/gray/ui_stats.webp b/game/interface/topbar/buttons/gray/ui_stats.webp new file mode 100644 index 00000000..ca14ee18 --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_stats.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:383a01e5dec902056e5383e2a37af7377dc2734e8db4f17083bfe96d775a3151 +size 460 diff --git a/game/interface/topbar/buttons/gray/ui_true.webp b/game/interface/topbar/buttons/gray/ui_true.webp new file mode 100644 index 00000000..a44a10aa --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_true.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:326dc662102edf0bbc293a1546e641122f591ad090f65d4abb42544c3125b90f +size 420 diff --git a/game/interface/topbar/buttons/gray/ui_work.webp b/game/interface/topbar/buttons/gray/ui_work.webp new file mode 100644 index 00000000..02ebc21e --- /dev/null +++ b/game/interface/topbar/buttons/gray/ui_work.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c86188b7d223c1e88eec03fcdb34b77d2b9fe7727c5cea000f0134af69df0a97 +size 456 diff --git a/game/interface/topbar/gold/bar.webp b/game/interface/topbar/gold/bar.webp new file mode 100644 index 00000000..a48e01e0 --- /dev/null +++ b/game/interface/topbar/gold/bar.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c83dcbe1bc844d6a8f89dbca463aac0448841bf5cd308482c4f02da4dcf4f884 +size 136722 diff --git a/game/interface/topbar/gold/menu.webp b/game/interface/topbar/gold/menu.webp new file mode 100644 index 00000000..7ee4d977 --- /dev/null +++ b/game/interface/topbar/gold/menu.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:113ea8d56c2f3bb1d4e90eb5b8775d21cc2fb88ae0bef97b185437ec5b0ea7a3 +size 178 diff --git a/game/interface/topbar/gold/stats.webp b/game/interface/topbar/gold/stats.webp new file mode 100644 index 00000000..2926ce86 --- /dev/null +++ b/game/interface/topbar/gold/stats.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:783be6d298512d44279640a8eef16f1540c1b97a44416bacb550b9d897bcd778 +size 1492 diff --git a/game/interface/topbar/gray/bar.webp b/game/interface/topbar/gray/bar.webp new file mode 100644 index 00000000..1bd66a3d --- /dev/null +++ b/game/interface/topbar/gray/bar.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2469619b7a2e9e2c69cc87ffcb0ee61cdd183124f3d15bd187aac5771d2e2493 +size 97402 diff --git a/game/interface/topbar/gray/menu.webp b/game/interface/topbar/gray/menu.webp new file mode 100644 index 00000000..70f3ff2d --- /dev/null +++ b/game/interface/topbar/gray/menu.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bf635ed53d01c8fc2f7bfbd8515b83f8b10a4012760436452954f1b04e34ab3 +size 184 diff --git a/game/interface/topbar/gray/stats.webp b/game/interface/topbar/gray/stats.webp new file mode 100644 index 00000000..5d73b175 --- /dev/null +++ b/game/interface/topbar/gray/stats.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47c549c6b697ccb577e5f1d790a317cf742106327c2f8eb75186180a07ba310c +size 1470 diff --git a/game/interface/topbar/gryffindor.webp b/game/interface/topbar/gryffindor.webp new file mode 100644 index 00000000..de536e61 --- /dev/null +++ b/game/interface/topbar/gryffindor.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f786c8a5af11b67914cd4740d06f906aaf8c4fcff979d5438387d4e9fd9f1482 +size 1980 diff --git a/game/interface/topbar/gryffindor_empty.webp b/game/interface/topbar/gryffindor_empty.webp new file mode 100644 index 00000000..f1f8aca9 --- /dev/null +++ b/game/interface/topbar/gryffindor_empty.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1138cace9728bab8ba4b291cec8cbefbc04a76fc1498566d6da105dfa6767bcc +size 936 diff --git a/game/interface/topbar/hover_zone.webp b/game/interface/topbar/hover_zone.webp new file mode 100644 index 00000000..53dd8bad --- /dev/null +++ b/game/interface/topbar/hover_zone.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d35c1b9cf2d8a9ba1d548cab1100b2609c6d01a153a94e86a9d9791434bac65d +size 34 diff --git a/game/interface/topbar/hufflepuff.webp b/game/interface/topbar/hufflepuff.webp new file mode 100644 index 00000000..29461ff4 --- /dev/null +++ b/game/interface/topbar/hufflepuff.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8187f1f1bb31b7ba7e123ec452df36a1db4d689e98258db7a26de0dbfa1c28e +size 1882 diff --git a/game/interface/topbar/hufflepuff_empty.webp b/game/interface/topbar/hufflepuff_empty.webp new file mode 100644 index 00000000..e4577693 --- /dev/null +++ b/game/interface/topbar/hufflepuff_empty.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08bccc4db12c4922708f84bb9f0f5ee54fa78ca2a0a829ce7b7e0c3642e4b3a4 +size 940 diff --git a/game/interface/topbar/icon_bug.webp b/game/interface/topbar/icon_bug.webp new file mode 100644 index 00000000..7989be39 --- /dev/null +++ b/game/interface/topbar/icon_bug.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6f76781c750278b14a31943856f31016affa60efe9845e9cb45352be2aaa0dfc +size 284 diff --git a/game/interface/topbar/icon_check.webp b/game/interface/topbar/icon_check.webp new file mode 100644 index 00000000..48c8ecbb --- /dev/null +++ b/game/interface/topbar/icon_check.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1cf5fd1a5c5352ca537c8d3d9692332b1565548fe9a4f318e8c0956cd8c2d67 +size 734 diff --git a/game/interface/topbar/icon_discord.webp b/game/interface/topbar/icon_discord.webp new file mode 100644 index 00000000..ddd03525 --- /dev/null +++ b/game/interface/topbar/icon_discord.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:457c3fc4c86524656755251286780382cd65f22f74b5399fba0eaa10bae38b53 +size 264 diff --git a/game/interface/topbar/icon_patreon.webp b/game/interface/topbar/icon_patreon.webp new file mode 100644 index 00000000..2af0edea --- /dev/null +++ b/game/interface/topbar/icon_patreon.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7507c3eb4b84aeea5ad74fd9d0ab93e812bb7c9c568a7e578b3a6f5555af5b79 +size 300 diff --git a/game/interface/topbar/icon_token.webp b/game/interface/topbar/icon_token.webp new file mode 100644 index 00000000..2230ccec --- /dev/null +++ b/game/interface/topbar/icon_token.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08aef77b36c17902d7c84c8e72d170e204b57e8b6a873a123ccd127e6a449d1d +size 920 diff --git a/game/interface/topbar/ravenclaw.webp b/game/interface/topbar/ravenclaw.webp new file mode 100644 index 00000000..c2d3cae9 --- /dev/null +++ b/game/interface/topbar/ravenclaw.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96a0fd94e4862fc8fd0791dd6c06b79a566921cfd3a93a6a748eb2b4e34b410d +size 1654 diff --git a/game/interface/topbar/ravenclaw_empty.webp b/game/interface/topbar/ravenclaw_empty.webp new file mode 100644 index 00000000..55a2c8be --- /dev/null +++ b/game/interface/topbar/ravenclaw_empty.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d25464bd047898d554366b23a0bdd3ae2060647cdcd65c4e65ed226793652eb2 +size 946 diff --git a/game/interface/topbar/slytherin.webp b/game/interface/topbar/slytherin.webp new file mode 100644 index 00000000..69989a91 --- /dev/null +++ b/game/interface/topbar/slytherin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6757730bd77cd9d4bb67c3e1cbde51430faec76b0cba7cea18857fc5b372b725 +size 1894 diff --git a/game/interface/topbar/slytherin_empty.webp b/game/interface/topbar/slytherin_empty.webp new file mode 100644 index 00000000..288ba5f9 --- /dev/null +++ b/game/interface/topbar/slytherin_empty.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f474c54ac7ed6b35c2f079bd85270f8a35d02bf575ea252a88b05cd0c1804854 +size 834 diff --git a/game/interface/transitions/faderight.webp b/game/interface/transitions/faderight.webp new file mode 100644 index 00000000..dff25897 --- /dev/null +++ b/game/interface/transitions/faderight.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47baf807c18974a567cdfe9e9dd33597935377a48a2901888a0f9c32fcb6d0b4 +size 133352 diff --git a/game/interface/transitions/faderight_raw.webp b/game/interface/transitions/faderight_raw.webp new file mode 100644 index 00000000..a0519119 --- /dev/null +++ b/game/interface/transitions/faderight_raw.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59368f2f93eb92baf5996509f0e38fb71505b5a069844f946d22ac7fe60c4dea +size 149262 diff --git a/game/interface/tutorials/brewing.webp b/game/interface/tutorials/brewing.webp new file mode 100644 index 00000000..77238368 --- /dev/null +++ b/game/interface/tutorials/brewing.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81c02161c8373d86b81fdb3f805b31e07dd3d60b77017e424c7a2abd8a3b738b +size 53870 diff --git a/game/interface/tutorials/hangouts.webp b/game/interface/tutorials/hangouts.webp new file mode 100644 index 00000000..8475c9c6 --- /dev/null +++ b/game/interface/tutorials/hangouts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:23dc9db65a7d25dc924bf1f6b5e6c48a4c709d89fe452a9c1c9ebd038b935029 +size 30268 diff --git a/game/interface/tutorials/hearts.webp b/game/interface/tutorials/hearts.webp new file mode 100644 index 00000000..034eec63 --- /dev/null +++ b/game/interface/tutorials/hearts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:36403681f52684129c0ca7124944f5024984c572b38200621e40887175b0522d +size 68232 diff --git a/game/interface/tutorials/inventory.webp b/game/interface/tutorials/inventory.webp new file mode 100644 index 00000000..89bdc146 --- /dev/null +++ b/game/interface/tutorials/inventory.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a23e9c02c8d1027d0912f97544257f8d81579916b2003a67ae19f0e5ca1a0a53 +size 33240 diff --git a/game/interface/tutorials/mail.webp b/game/interface/tutorials/mail.webp new file mode 100644 index 00000000..bfed8c4a --- /dev/null +++ b/game/interface/tutorials/mail.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9437ae6bb0cd8da38622bba4e8aea079633af2e14294022d31b06aaa53346d6 +size 44550 diff --git a/game/interface/tutorials/map.webp b/game/interface/tutorials/map.webp new file mode 100644 index 00000000..50133733 --- /dev/null +++ b/game/interface/tutorials/map.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:987f3acd22c723d4418427b1a21210fd162e2ef788a4df0680f6a1a63a74f49e +size 56682 diff --git a/game/interface/tutorials/moodngifts.webp b/game/interface/tutorials/moodngifts.webp new file mode 100644 index 00000000..07345aa1 --- /dev/null +++ b/game/interface/tutorials/moodngifts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4e5dc7a76e86deaf2cb1c939c3e43648f9e203d2218af0da1621356a0384d5ce +size 49562 diff --git a/game/interface/tutorials/points.webp b/game/interface/tutorials/points.webp new file mode 100644 index 00000000..d9cd38cc --- /dev/null +++ b/game/interface/tutorials/points.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:baf392417e55bd96d74fc78efae9244c2a63abbfa4b8813b7b9682ff13813f73 +size 38868 diff --git a/game/interface/tutorials/schedule.webp b/game/interface/tutorials/schedule.webp new file mode 100644 index 00000000..b6784697 --- /dev/null +++ b/game/interface/tutorials/schedule.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81659b84b5aeb0d64d40285aa805f09a5f74521d0380579d82278a2e7aafc135 +size 40964 diff --git a/game/interface/tutorials/time.webp b/game/interface/tutorials/time.webp new file mode 100644 index 00000000..31a9d032 --- /dev/null +++ b/game/interface/tutorials/time.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d6de7cb3cdc08bae48b9cbc9f9bf097f54d376c31844f726c7543129759fe80 +size 50494 diff --git a/game/interface/tutorials/workngold.webp b/game/interface/tutorials/workngold.webp new file mode 100644 index 00000000..b294bb6b --- /dev/null +++ b/game/interface/tutorials/workngold.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a00ea5abacbe3682b9fc63932e2a54f38185e1aa03c7ea42573abcdf0e6f032 +size 54872 diff --git a/game/interface/unlocked_False.webp b/game/interface/unlocked_False.webp new file mode 100644 index 00000000..f0a74886 --- /dev/null +++ b/game/interface/unlocked_False.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bf184363930bcb2dcc7763efdd3333dcc671cf66364238c3500c1c596425f70 +size 136 diff --git a/game/interface/unlocked_True.webp b/game/interface/unlocked_True.webp new file mode 100644 index 00000000..d897f45a --- /dev/null +++ b/game/interface/unlocked_True.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2265e78c1fde3032edc5224fbc0d8b72efd92fe932fa42c07e0bcddfb072e6b0 +size 126 diff --git a/game/interface/wardrobe/export_background.webp b/game/interface/wardrobe/export_background.webp new file mode 100644 index 00000000..ac359b74 --- /dev/null +++ b/game/interface/wardrobe/export_background.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:469457a3723b0e521d813f48a19d2ca2dff987d0458e0d758ecd053c1d23a03a +size 3664 diff --git a/game/interface/wardrobe/export_frame.webp b/game/interface/wardrobe/export_frame.webp new file mode 100644 index 00000000..de1d1296 --- /dev/null +++ b/game/interface/wardrobe/export_frame.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a6a0e4b58acc77daed0bc6796f09a27042cd46dad459f84b8b9cccd0ed943b8 +size 1008 diff --git a/game/interface/wardrobe/icons/accessory.webp b/game/interface/wardrobe/icons/accessory.webp new file mode 100644 index 00000000..dcce2a10 --- /dev/null +++ b/game/interface/wardrobe/icons/accessory.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a45da6ba44a2699c5bb89db8eedab469e3690e628ac14d8c1979e7e742b59c5 +size 1958 diff --git a/game/interface/wardrobe/icons/bikini bras.webp b/game/interface/wardrobe/icons/bikini bras.webp new file mode 100644 index 00000000..d8f8714e --- /dev/null +++ b/game/interface/wardrobe/icons/bikini bras.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a741a2dd0c72caded5f4579a5b8455a34f436b6ac29f74fbfa35e41b6c4f7f62 +size 2280 diff --git a/game/interface/wardrobe/icons/bikini panties.webp b/game/interface/wardrobe/icons/bikini panties.webp new file mode 100644 index 00000000..c1bcc8df --- /dev/null +++ b/game/interface/wardrobe/icons/bikini panties.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5de49a79fad941665b7b3b818137e5bf9b737601914dbee89a83444ba63e0221 +size 1734 diff --git a/game/interface/wardrobe/icons/blush.webp b/game/interface/wardrobe/icons/blush.webp new file mode 100644 index 00000000..d629bb6b --- /dev/null +++ b/game/interface/wardrobe/icons/blush.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5de8ecb4a5f818c125feaecf13c5d2ebff21b7bd0bc846d9e6269770aee5b2bd +size 2814 diff --git a/game/interface/wardrobe/icons/bras.webp b/game/interface/wardrobe/icons/bras.webp new file mode 100644 index 00000000..07b1427b --- /dev/null +++ b/game/interface/wardrobe/icons/bras.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bd49fa95c5cf39ba810294a66c783fb97bb9410414d5c5829800b9364684bc8 +size 3022 diff --git a/game/interface/wardrobe/icons/categories/astoria/head.webp b/game/interface/wardrobe/icons/categories/astoria/head.webp new file mode 100644 index 00000000..783ffc0c --- /dev/null +++ b/game/interface/wardrobe/icons/categories/astoria/head.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0f25a4204ea7eef7ddf5f845f98f0fffd4d857d13ec1686ba116ace42388223c +size 25400 diff --git a/game/interface/wardrobe/icons/categories/astoria/legwear.webp b/game/interface/wardrobe/icons/categories/astoria/legwear.webp new file mode 100644 index 00000000..3f6d5d34 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/astoria/legwear.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6747ca3fc3a34caefd15122964e59d1db2b69308928c4f2e1968dd223469731 +size 13844 diff --git a/game/interface/wardrobe/icons/categories/astoria/lower body.webp b/game/interface/wardrobe/icons/categories/astoria/lower body.webp new file mode 100644 index 00000000..52cadcc3 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/astoria/lower body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c64100bec4023f19d67d5292ef2b2494803e03b7d466bf19c0b8b7cfbfcc5b6c +size 19466 diff --git a/game/interface/wardrobe/icons/categories/astoria/lower undergarment.webp b/game/interface/wardrobe/icons/categories/astoria/lower undergarment.webp new file mode 100644 index 00000000..906b4e2a --- /dev/null +++ b/game/interface/wardrobe/icons/categories/astoria/lower undergarment.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab64ddb90e223a79e0f9863b138adf96b9d28868edd8b7da9a6e78d9db7b2507 +size 14682 diff --git a/game/interface/wardrobe/icons/categories/astoria/misc.webp b/game/interface/wardrobe/icons/categories/astoria/misc.webp new file mode 100644 index 00000000..fb4e8c25 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/astoria/misc.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15aa1a670d38eac9408937914d5ad9b6f81d51ead7cc0dfb3d69f7d2e58bee53 +size 24800 diff --git a/game/interface/wardrobe/icons/categories/astoria/piercings & tattoos.webp b/game/interface/wardrobe/icons/categories/astoria/piercings & tattoos.webp new file mode 100644 index 00000000..0ba6cf1b --- /dev/null +++ b/game/interface/wardrobe/icons/categories/astoria/piercings & tattoos.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b0e12e0830b29e5b33f28cd3ca7dc19ec29f8fd6970c98cbddd8f2cc0b020f7 +size 22964 diff --git a/game/interface/wardrobe/icons/categories/astoria/upper body.webp b/game/interface/wardrobe/icons/categories/astoria/upper body.webp new file mode 100644 index 00000000..f0782fd2 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/astoria/upper body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1de74853d1d96518842e2c5062a602959be4dc382eee6660b0178b04411fb4cf +size 19522 diff --git a/game/interface/wardrobe/icons/categories/astoria/upper undergarment.webp b/game/interface/wardrobe/icons/categories/astoria/upper undergarment.webp new file mode 100644 index 00000000..21fe1ace --- /dev/null +++ b/game/interface/wardrobe/icons/categories/astoria/upper undergarment.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72d8a18ae390009934223bbf40dda7563fc5bb04df08fad0eb72dee309f45f17 +size 23496 diff --git a/game/interface/wardrobe/icons/categories/cho/head.webp b/game/interface/wardrobe/icons/categories/cho/head.webp new file mode 100644 index 00000000..c498165b --- /dev/null +++ b/game/interface/wardrobe/icons/categories/cho/head.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55e805006ad71fd528f3aa76912ae014b18cfd2a03da409c60fc05f3b28f7d34 +size 15858 diff --git a/game/interface/wardrobe/icons/categories/cho/legwear.webp b/game/interface/wardrobe/icons/categories/cho/legwear.webp new file mode 100644 index 00000000..18ed1cbe --- /dev/null +++ b/game/interface/wardrobe/icons/categories/cho/legwear.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1ac3dbfb25492a168e31c4675f49207c3d57b3b4a97f949f8fd067469737741 +size 13346 diff --git a/game/interface/wardrobe/icons/categories/cho/lower body.webp b/game/interface/wardrobe/icons/categories/cho/lower body.webp new file mode 100644 index 00000000..3466e273 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/cho/lower body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68695e508801e2b425fb0e9b1231f146fd4eff75eb887b2561aa8c46625c8c02 +size 18424 diff --git a/game/interface/wardrobe/icons/categories/cho/lower undergarment.webp b/game/interface/wardrobe/icons/categories/cho/lower undergarment.webp new file mode 100644 index 00000000..c72fb447 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/cho/lower undergarment.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25310b77f3fcab517125552c790eb5e81781ca1b5d0dec2eaff30796a7391c21 +size 15778 diff --git a/game/interface/wardrobe/icons/categories/cho/misc.webp b/game/interface/wardrobe/icons/categories/cho/misc.webp new file mode 100644 index 00000000..fb4e8c25 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/cho/misc.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15aa1a670d38eac9408937914d5ad9b6f81d51ead7cc0dfb3d69f7d2e58bee53 +size 24800 diff --git a/game/interface/wardrobe/icons/categories/cho/piercings & tattoos.webp b/game/interface/wardrobe/icons/categories/cho/piercings & tattoos.webp new file mode 100644 index 00000000..0ba6cf1b --- /dev/null +++ b/game/interface/wardrobe/icons/categories/cho/piercings & tattoos.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b0e12e0830b29e5b33f28cd3ca7dc19ec29f8fd6970c98cbddd8f2cc0b020f7 +size 22964 diff --git a/game/interface/wardrobe/icons/categories/cho/upper body.webp b/game/interface/wardrobe/icons/categories/cho/upper body.webp new file mode 100644 index 00000000..825fa561 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/cho/upper body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b3575d318e5ecd944e71d831b0ba89b910f5a5b2606acec910db05aacaad91b5 +size 18438 diff --git a/game/interface/wardrobe/icons/categories/cho/upper undergarment.webp b/game/interface/wardrobe/icons/categories/cho/upper undergarment.webp new file mode 100644 index 00000000..a191bb76 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/cho/upper undergarment.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99380481f47f7f1af3d9d22f7533f17a9faedf8cb100bbd0c93fdd57938d5502 +size 16222 diff --git a/game/interface/wardrobe/icons/categories/hermione/head.webp b/game/interface/wardrobe/icons/categories/hermione/head.webp new file mode 100644 index 00000000..7ea2dd64 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/hermione/head.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94d7b034a0a92891fdb37d85762c64a725e9256cedc6c0c06f2e25bf57d0fa54 +size 25126 diff --git a/game/interface/wardrobe/icons/categories/hermione/legwear.webp b/game/interface/wardrobe/icons/categories/hermione/legwear.webp new file mode 100644 index 00000000..8bbefe8a --- /dev/null +++ b/game/interface/wardrobe/icons/categories/hermione/legwear.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f577ff8401207cc16125fd14f9b74e583194299876e3e4edd0e59895865e13e +size 24582 diff --git a/game/interface/wardrobe/icons/categories/hermione/lower body.webp b/game/interface/wardrobe/icons/categories/hermione/lower body.webp new file mode 100644 index 00000000..e4beaee3 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/hermione/lower body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd4b56103571c3e499d6e50dbb342f6f01ad0bf0b7eb91fce0735514a9f12ae4 +size 19060 diff --git a/game/interface/wardrobe/icons/categories/hermione/lower undergarment.webp b/game/interface/wardrobe/icons/categories/hermione/lower undergarment.webp new file mode 100644 index 00000000..fd5e61f1 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/hermione/lower undergarment.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b521002f2a913e693b216fc4e9b3215e8f322e9c9b8ae997a38bbd258561bf4 +size 13680 diff --git a/game/interface/wardrobe/icons/categories/hermione/misc.webp b/game/interface/wardrobe/icons/categories/hermione/misc.webp new file mode 100644 index 00000000..fb4e8c25 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/hermione/misc.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15aa1a670d38eac9408937914d5ad9b6f81d51ead7cc0dfb3d69f7d2e58bee53 +size 24800 diff --git a/game/interface/wardrobe/icons/categories/hermione/piercings & tattoos.webp b/game/interface/wardrobe/icons/categories/hermione/piercings & tattoos.webp new file mode 100644 index 00000000..0ba6cf1b --- /dev/null +++ b/game/interface/wardrobe/icons/categories/hermione/piercings & tattoos.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b0e12e0830b29e5b33f28cd3ca7dc19ec29f8fd6970c98cbddd8f2cc0b020f7 +size 22964 diff --git a/game/interface/wardrobe/icons/categories/hermione/upper body.webp b/game/interface/wardrobe/icons/categories/hermione/upper body.webp new file mode 100644 index 00000000..90b06fba --- /dev/null +++ b/game/interface/wardrobe/icons/categories/hermione/upper body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c65d3c14f0455fbe3c37c26725de13a56289d76aee55874e0cfe1a4b027920c +size 19870 diff --git a/game/interface/wardrobe/icons/categories/hermione/upper undergarment.webp b/game/interface/wardrobe/icons/categories/hermione/upper undergarment.webp new file mode 100644 index 00000000..889d82f7 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/hermione/upper undergarment.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43577ad64db15b353e49a74a21d1f25508de6cc2c4bb4dec1e881dcd50f14e88 +size 20396 diff --git a/game/interface/wardrobe/icons/categories/luna/head.webp b/game/interface/wardrobe/icons/categories/luna/head.webp new file mode 100644 index 00000000..a652afa7 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/luna/head.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e84e44d7deb5172329eb163f52958caaec7f366bdae0c528af49597a411db5b2 +size 27938 diff --git a/game/interface/wardrobe/icons/categories/luna/legwear.webp b/game/interface/wardrobe/icons/categories/luna/legwear.webp new file mode 100644 index 00000000..547f87a9 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/luna/legwear.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64b8716dc5c6c5060cd4c9f203ef19c52285b51375d3f8034a01652ebcde91c9 +size 10464 diff --git a/game/interface/wardrobe/icons/categories/luna/lower body.webp b/game/interface/wardrobe/icons/categories/luna/lower body.webp new file mode 100644 index 00000000..39e0fec6 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/luna/lower body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7f1e926a2a0f09e7ecc9e6f70f4e585104f5250252e19c8ee7c7713fb60fd96b +size 17622 diff --git a/game/interface/wardrobe/icons/categories/luna/lower undergarment.webp b/game/interface/wardrobe/icons/categories/luna/lower undergarment.webp new file mode 100644 index 00000000..eda9cb80 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/luna/lower undergarment.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a34aefe010f6c095544a3dd86189317a918f1738e1406f5067eff6a0c68951f1 +size 16192 diff --git a/game/interface/wardrobe/icons/categories/luna/misc.webp b/game/interface/wardrobe/icons/categories/luna/misc.webp new file mode 100644 index 00000000..ce0f4456 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/luna/misc.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:71fa8522428ec18d31b618e0e592c9662457c910246044ee212213b393b8cf48 +size 24798 diff --git a/game/interface/wardrobe/icons/categories/luna/piercings & tattoos.webp b/game/interface/wardrobe/icons/categories/luna/piercings & tattoos.webp new file mode 100644 index 00000000..f555f6e5 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/luna/piercings & tattoos.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eefef21f9ff57d022eb45ffeca0e2922c1e33507c54d0dce7c173dfb4e3617fd +size 21584 diff --git a/game/interface/wardrobe/icons/categories/luna/upper body.webp b/game/interface/wardrobe/icons/categories/luna/upper body.webp new file mode 100644 index 00000000..4556ee6f --- /dev/null +++ b/game/interface/wardrobe/icons/categories/luna/upper body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b03f9db3a2ef9d663bd8aa89ac462bf2c91044fc5f5b20e2324cc2f026485bec +size 22464 diff --git a/game/interface/wardrobe/icons/categories/luna/upper undergarment.webp b/game/interface/wardrobe/icons/categories/luna/upper undergarment.webp new file mode 100644 index 00000000..8a4683c1 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/luna/upper undergarment.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8854285cc215f5d6e3b3747dabeec33eae2587933356e0c4f8b009de81d7936 +size 24522 diff --git a/game/interface/wardrobe/icons/categories/outfits.webp b/game/interface/wardrobe/icons/categories/outfits.webp new file mode 100644 index 00000000..79c50a5c --- /dev/null +++ b/game/interface/wardrobe/icons/categories/outfits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:baaea23a5a555e8f5271571c9632aaaf5744a84755a0e385ee40b0abdd4792f7 +size 15278 diff --git a/game/interface/wardrobe/icons/categories/studio.webp b/game/interface/wardrobe/icons/categories/studio.webp new file mode 100644 index 00000000..eaf5c085 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/studio.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d57d813567a14c6ac7a47e3576e23b6604a9f121b214265f941293739e81551 +size 13126 diff --git a/game/interface/wardrobe/icons/categories/susan/head.webp b/game/interface/wardrobe/icons/categories/susan/head.webp new file mode 100644 index 00000000..7ea2dd64 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/susan/head.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94d7b034a0a92891fdb37d85762c64a725e9256cedc6c0c06f2e25bf57d0fa54 +size 25126 diff --git a/game/interface/wardrobe/icons/categories/susan/legwear.webp b/game/interface/wardrobe/icons/categories/susan/legwear.webp new file mode 100644 index 00000000..8bbefe8a --- /dev/null +++ b/game/interface/wardrobe/icons/categories/susan/legwear.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f577ff8401207cc16125fd14f9b74e583194299876e3e4edd0e59895865e13e +size 24582 diff --git a/game/interface/wardrobe/icons/categories/susan/lower body.webp b/game/interface/wardrobe/icons/categories/susan/lower body.webp new file mode 100644 index 00000000..e4beaee3 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/susan/lower body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd4b56103571c3e499d6e50dbb342f6f01ad0bf0b7eb91fce0735514a9f12ae4 +size 19060 diff --git a/game/interface/wardrobe/icons/categories/susan/lower undergarment.webp b/game/interface/wardrobe/icons/categories/susan/lower undergarment.webp new file mode 100644 index 00000000..fd5e61f1 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/susan/lower undergarment.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b521002f2a913e693b216fc4e9b3215e8f322e9c9b8ae997a38bbd258561bf4 +size 13680 diff --git a/game/interface/wardrobe/icons/categories/susan/misc.webp b/game/interface/wardrobe/icons/categories/susan/misc.webp new file mode 100644 index 00000000..fb4e8c25 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/susan/misc.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15aa1a670d38eac9408937914d5ad9b6f81d51ead7cc0dfb3d69f7d2e58bee53 +size 24800 diff --git a/game/interface/wardrobe/icons/categories/susan/piercings & tattoos.webp b/game/interface/wardrobe/icons/categories/susan/piercings & tattoos.webp new file mode 100644 index 00000000..0ba6cf1b --- /dev/null +++ b/game/interface/wardrobe/icons/categories/susan/piercings & tattoos.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b0e12e0830b29e5b33f28cd3ca7dc19ec29f8fd6970c98cbddd8f2cc0b020f7 +size 22964 diff --git a/game/interface/wardrobe/icons/categories/susan/upper body.webp b/game/interface/wardrobe/icons/categories/susan/upper body.webp new file mode 100644 index 00000000..90b06fba --- /dev/null +++ b/game/interface/wardrobe/icons/categories/susan/upper body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c65d3c14f0455fbe3c37c26725de13a56289d76aee55874e0cfe1a4b027920c +size 19870 diff --git a/game/interface/wardrobe/icons/categories/susan/upper undergarment.webp b/game/interface/wardrobe/icons/categories/susan/upper undergarment.webp new file mode 100644 index 00000000..889d82f7 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/susan/upper undergarment.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43577ad64db15b353e49a74a21d1f25508de6cc2c4bb4dec1e881dcd50f14e88 +size 20396 diff --git a/game/interface/wardrobe/icons/categories/tonks/head.webp b/game/interface/wardrobe/icons/categories/tonks/head.webp new file mode 100644 index 00000000..814d0f20 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/tonks/head.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68c49627aea8bc3bcd20a743cd9929a7f802ba9503552a427755aebcee324323 +size 17576 diff --git a/game/interface/wardrobe/icons/categories/tonks/legwear.webp b/game/interface/wardrobe/icons/categories/tonks/legwear.webp new file mode 100644 index 00000000..45a07c6f --- /dev/null +++ b/game/interface/wardrobe/icons/categories/tonks/legwear.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8494c59c0f9c30f5e2c8b6e138f9103e23f3a7286e8888ec60e7ea3978038fba +size 11848 diff --git a/game/interface/wardrobe/icons/categories/tonks/lower body.webp b/game/interface/wardrobe/icons/categories/tonks/lower body.webp new file mode 100644 index 00000000..71506cac --- /dev/null +++ b/game/interface/wardrobe/icons/categories/tonks/lower body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bd36b66ca6a42b6e641f0eab4c82338af11dc352037055d2028afffd6b5342b +size 19822 diff --git a/game/interface/wardrobe/icons/categories/tonks/lower undergarment.webp b/game/interface/wardrobe/icons/categories/tonks/lower undergarment.webp new file mode 100644 index 00000000..9d161636 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/tonks/lower undergarment.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:683f00298461a783d2187495dff5bf7813054f7193fff7c08077a839165ce201 +size 19934 diff --git a/game/interface/wardrobe/icons/categories/tonks/misc.webp b/game/interface/wardrobe/icons/categories/tonks/misc.webp new file mode 100644 index 00000000..fb4e8c25 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/tonks/misc.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15aa1a670d38eac9408937914d5ad9b6f81d51ead7cc0dfb3d69f7d2e58bee53 +size 24800 diff --git a/game/interface/wardrobe/icons/categories/tonks/piercings & tattoos.webp b/game/interface/wardrobe/icons/categories/tonks/piercings & tattoos.webp new file mode 100644 index 00000000..0ba6cf1b --- /dev/null +++ b/game/interface/wardrobe/icons/categories/tonks/piercings & tattoos.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b0e12e0830b29e5b33f28cd3ca7dc19ec29f8fd6970c98cbddd8f2cc0b020f7 +size 22964 diff --git a/game/interface/wardrobe/icons/categories/tonks/upper body.webp b/game/interface/wardrobe/icons/categories/tonks/upper body.webp new file mode 100644 index 00000000..06d2f08a --- /dev/null +++ b/game/interface/wardrobe/icons/categories/tonks/upper body.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6153d9f0793576bd4c1c34c9e08f0a899974fdb3f7bdf58b5b9c5743013b862 +size 18172 diff --git a/game/interface/wardrobe/icons/categories/tonks/upper undergarment.webp b/game/interface/wardrobe/icons/categories/tonks/upper undergarment.webp new file mode 100644 index 00000000..09fff6d2 --- /dev/null +++ b/game/interface/wardrobe/icons/categories/tonks/upper undergarment.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4eb3198743bd4eef5180ac88de652b3f888918ce88fb288cd423c3e8af38373e +size 20158 diff --git a/game/interface/wardrobe/icons/delete.webp b/game/interface/wardrobe/icons/delete.webp new file mode 100644 index 00000000..0524ffe4 --- /dev/null +++ b/game/interface/wardrobe/icons/delete.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:883c1e7e38ad6cd850b05ce41ac20fba635502677176acd162eb5bae5b4c39c1 +size 1398 diff --git a/game/interface/wardrobe/icons/dresses.webp b/game/interface/wardrobe/icons/dresses.webp new file mode 100644 index 00000000..89d80400 --- /dev/null +++ b/game/interface/wardrobe/icons/dresses.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b8fac2f35f105ba0b28ea2f94f47e02d75d131696ead68d1dcc5e820a1662302 +size 1440 diff --git a/game/interface/wardrobe/icons/earrings.webp b/game/interface/wardrobe/icons/earrings.webp new file mode 100644 index 00000000..f708f900 --- /dev/null +++ b/game/interface/wardrobe/icons/earrings.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:44671e58a4113ba3bfe0ff8592b2fdd7297927f222de632307e4279b58e10bd5 +size 2698 diff --git a/game/interface/wardrobe/icons/export.webp b/game/interface/wardrobe/icons/export.webp new file mode 100644 index 00000000..b19a6fba --- /dev/null +++ b/game/interface/wardrobe/icons/export.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:657833edd587f48880eaa6b35ceb860c29f93c681a430625e4e7777e6e49abaf +size 1394 diff --git a/game/interface/wardrobe/icons/garterbelts.webp b/game/interface/wardrobe/icons/garterbelts.webp new file mode 100644 index 00000000..a5b94496 --- /dev/null +++ b/game/interface/wardrobe/icons/garterbelts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f894bb24d5b1708d2316c0266f5d0d7398d7bcc57e868f7814fa312741a1e9ed +size 2768 diff --git a/game/interface/wardrobe/icons/glasses.webp b/game/interface/wardrobe/icons/glasses.webp new file mode 100644 index 00000000..d9a02cd2 --- /dev/null +++ b/game/interface/wardrobe/icons/glasses.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb44b74f9abbe3bb692a4ae1d5d70a77cccb6bb7cddb9ae646609ecbacab7cc2 +size 1856 diff --git a/game/interface/wardrobe/icons/gloves.webp b/game/interface/wardrobe/icons/gloves.webp new file mode 100644 index 00000000..2f094200 --- /dev/null +++ b/game/interface/wardrobe/icons/gloves.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:267b2943238d66b997b0b5b1b04abdc8e4921ee18f202060305ce84ee9c87b06 +size 3228 diff --git a/game/interface/wardrobe/icons/hair.webp b/game/interface/wardrobe/icons/hair.webp new file mode 100644 index 00000000..df3a55c5 --- /dev/null +++ b/game/interface/wardrobe/icons/hair.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a8152d13c9aa6d54fab65183e6e7387cc620d292da3f73cacbee48df09cd1e4 +size 1904 diff --git a/game/interface/wardrobe/icons/headgear.webp b/game/interface/wardrobe/icons/headgear.webp new file mode 100644 index 00000000..7181ddc9 --- /dev/null +++ b/game/interface/wardrobe/icons/headgear.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f17fd50cea10b872d6a1fca39a8fd3bf4c2bf6f57a236f2ffffeeb229869b83 +size 2016 diff --git a/game/interface/wardrobe/icons/import.webp b/game/interface/wardrobe/icons/import.webp new file mode 100644 index 00000000..2bb84169 --- /dev/null +++ b/game/interface/wardrobe/icons/import.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1925624d87348ced04ec14fb7c737694ac3539055cbc0a3a976fcf63bd0723d7 +size 762 diff --git a/game/interface/wardrobe/icons/leggings.webp b/game/interface/wardrobe/icons/leggings.webp new file mode 100644 index 00000000..9b8ca6ba --- /dev/null +++ b/game/interface/wardrobe/icons/leggings.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b48895e763618f25c4c0dfc504931c81d841b5813dedc28974d7de23c21974f5 +size 1366 diff --git a/game/interface/wardrobe/icons/load.webp b/game/interface/wardrobe/icons/load.webp new file mode 100644 index 00000000..30c7a835 --- /dev/null +++ b/game/interface/wardrobe/icons/load.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b0723024285c7d3f7fd5232b67055027a1fba647174e34914aecc9f882b92eac +size 1358 diff --git a/game/interface/wardrobe/icons/makeup.webp b/game/interface/wardrobe/icons/makeup.webp new file mode 100644 index 00000000..b51b8502 --- /dev/null +++ b/game/interface/wardrobe/icons/makeup.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:32e1a4e7d4a3f61a6bed9c9a1a64832cb98751cd1820bb3eb08699865720b1a7 +size 2142 diff --git a/game/interface/wardrobe/icons/neckwear.webp b/game/interface/wardrobe/icons/neckwear.webp new file mode 100644 index 00000000..14c9d3ef --- /dev/null +++ b/game/interface/wardrobe/icons/neckwear.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7dc2dbb00602ca2cd45fdf34c40e816f2708481396d79e05428bdf896ce8f18d +size 2014 diff --git a/game/interface/wardrobe/icons/one-piece suits.webp b/game/interface/wardrobe/icons/one-piece suits.webp new file mode 100644 index 00000000..e5750975 --- /dev/null +++ b/game/interface/wardrobe/icons/one-piece suits.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69a45bb02c3382ee080f57b6cb2ed0438804eed1c07579f1ec748e23725dd72d +size 1420 diff --git a/game/interface/wardrobe/icons/other.webp b/game/interface/wardrobe/icons/other.webp new file mode 100644 index 00000000..d1b49046 --- /dev/null +++ b/game/interface/wardrobe/icons/other.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:331a524a8f88078864cbba174813145fbeb84feb304c4c748858e324014403a1 +size 1086 diff --git a/game/interface/wardrobe/icons/outfits/cloudy.webp b/game/interface/wardrobe/icons/outfits/cloudy.webp new file mode 100644 index 00000000..8598c955 --- /dev/null +++ b/game/interface/wardrobe/icons/outfits/cloudy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1bce5857b241e9006c765c5b14a64f8d4a20cc19915b11f1ddceab4876eda874 +size 994 diff --git a/game/interface/wardrobe/icons/outfits/day.webp b/game/interface/wardrobe/icons/outfits/day.webp new file mode 100644 index 00000000..c6fc2d51 --- /dev/null +++ b/game/interface/wardrobe/icons/outfits/day.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3db100b2e03d5adc4934b87019971400b62e6d8e4f3caa6ba0dedb63cc7e120a +size 1042 diff --git a/game/interface/wardrobe/icons/outfits/night.webp b/game/interface/wardrobe/icons/outfits/night.webp new file mode 100644 index 00000000..f8a91064 --- /dev/null +++ b/game/interface/wardrobe/icons/outfits/night.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39d76d8b973663a98196c47a975688ae84a824d79deb2c57da12f63e7f3a969d +size 916 diff --git a/game/interface/wardrobe/icons/outfits/rainy.webp b/game/interface/wardrobe/icons/outfits/rainy.webp new file mode 100644 index 00000000..c3452251 --- /dev/null +++ b/game/interface/wardrobe/icons/outfits/rainy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0072191a40f5c3f58a3b1e8d6bee07bafadb2f889904d6abc0b770ba4442df32 +size 1402 diff --git a/game/interface/wardrobe/icons/outfits/school.webp b/game/interface/wardrobe/icons/outfits/school.webp new file mode 100644 index 00000000..da43c5c8 --- /dev/null +++ b/game/interface/wardrobe/icons/outfits/school.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:265329dc2bb2eae9e886a6f83e61a97a010b43148acd9a39a906a8edc645a18d +size 1024 diff --git a/game/interface/wardrobe/icons/outfits/snowy.webp b/game/interface/wardrobe/icons/outfits/snowy.webp new file mode 100644 index 00000000..49311ec3 --- /dev/null +++ b/game/interface/wardrobe/icons/outfits/snowy.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd5bf33f77b2176f64f12b39b9b36f370abb4d4b3c84ed0b2498c1d81b1ca658 +size 974 diff --git a/game/interface/wardrobe/icons/panties.webp b/game/interface/wardrobe/icons/panties.webp new file mode 100644 index 00000000..39330579 --- /dev/null +++ b/game/interface/wardrobe/icons/panties.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:556018e967b9ced701e225e5313b64d7840e198fc06825aac45077f625c18183 +size 2308 diff --git a/game/interface/wardrobe/icons/pantyhose.webp b/game/interface/wardrobe/icons/pantyhose.webp new file mode 100644 index 00000000..b79b95cd --- /dev/null +++ b/game/interface/wardrobe/icons/pantyhose.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3925873fc3823c3c75a720e8737c77a5cea26e7117adbe2b3dd52c3a74e5ce6 +size 1510 diff --git a/game/interface/wardrobe/icons/piercings.webp b/game/interface/wardrobe/icons/piercings.webp new file mode 100644 index 00000000..c1a36336 --- /dev/null +++ b/game/interface/wardrobe/icons/piercings.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:578633c49a1ab1bc1379bc395590d89bb7dfd9384ccde35760e46341e758baf8 +size 3094 diff --git a/game/interface/wardrobe/icons/pubes.webp b/game/interface/wardrobe/icons/pubes.webp new file mode 100644 index 00000000..f13d24e0 --- /dev/null +++ b/game/interface/wardrobe/icons/pubes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25e21423a969954e0d2675ff651f8f4f14c9a481b7e6d19915986cd02aca8ec2 +size 2400 diff --git a/game/interface/wardrobe/icons/random.webp b/game/interface/wardrobe/icons/random.webp new file mode 100644 index 00000000..937edc2a --- /dev/null +++ b/game/interface/wardrobe/icons/random.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0aff9cc5102f329a735a62d91aad2a5e08d1428c7e96ea9b4ed493f7becd2c61 +size 2402 diff --git a/game/interface/wardrobe/icons/robes.webp b/game/interface/wardrobe/icons/robes.webp new file mode 100644 index 00000000..0522adde --- /dev/null +++ b/game/interface/wardrobe/icons/robes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a298578aab795e8e8fc1ead27210971bc2b9a50bb7c8bb4dc89dd41a49b2adaf +size 2566 diff --git a/game/interface/wardrobe/icons/save.webp b/game/interface/wardrobe/icons/save.webp new file mode 100644 index 00000000..e87d98f1 --- /dev/null +++ b/game/interface/wardrobe/icons/save.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51c671e6655b23463c8959de71d68af4645b6620dc754254ee8ce94baa101489 +size 1360 diff --git a/game/interface/wardrobe/icons/schedule.webp b/game/interface/wardrobe/icons/schedule.webp new file mode 100644 index 00000000..195e943d --- /dev/null +++ b/game/interface/wardrobe/icons/schedule.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa0837944c6cb27a254c2e17f82cddbcb2c226bfb0edde0bd7da75d2203ad072 +size 2024 diff --git a/game/interface/wardrobe/icons/shirts.webp b/game/interface/wardrobe/icons/shirts.webp new file mode 100644 index 00000000..f76a5ef9 --- /dev/null +++ b/game/interface/wardrobe/icons/shirts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72cc3448a5638f53f5d7af51250c3cd78e6fadf518526da1736374f8295ec280 +size 1738 diff --git a/game/interface/wardrobe/icons/shorts.webp b/game/interface/wardrobe/icons/shorts.webp new file mode 100644 index 00000000..02fb0f04 --- /dev/null +++ b/game/interface/wardrobe/icons/shorts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f2bfdb39bb9e4c678d4089cc73118ca1f46b15edb2236f72ca6d3d114a2c252 +size 1688 diff --git a/game/interface/wardrobe/icons/skirts.webp b/game/interface/wardrobe/icons/skirts.webp new file mode 100644 index 00000000..13b898b9 --- /dev/null +++ b/game/interface/wardrobe/icons/skirts.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1c5294047a0e68eee13c4fa376964e78b44631bfd6a09638f0baaf0269d77726 +size 1692 diff --git a/game/interface/wardrobe/icons/socks.webp b/game/interface/wardrobe/icons/socks.webp new file mode 100644 index 00000000..870dedeb --- /dev/null +++ b/game/interface/wardrobe/icons/socks.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b806effb757eee809cc529423d3612bcc8d712302fc8d438c8c4ecf4775f9398 +size 2272 diff --git a/game/interface/wardrobe/icons/stockings.webp b/game/interface/wardrobe/icons/stockings.webp new file mode 100644 index 00000000..af244923 --- /dev/null +++ b/game/interface/wardrobe/icons/stockings.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5475fd557669b4b6369e5d52b1865d966820370249984a00eebb5acc349c5411 +size 2580 diff --git a/game/interface/wardrobe/icons/sweaters.webp b/game/interface/wardrobe/icons/sweaters.webp new file mode 100644 index 00000000..05e68b1c --- /dev/null +++ b/game/interface/wardrobe/icons/sweaters.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77b0a644049429e9df0df2e3452a51fbc7b54bdd0c7475a20784f428980fd3bb +size 1814 diff --git a/game/interface/wardrobe/icons/tattoos.webp b/game/interface/wardrobe/icons/tattoos.webp new file mode 100644 index 00000000..213172f4 --- /dev/null +++ b/game/interface/wardrobe/icons/tattoos.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e5d9b097e155bee802b11b6e998bdfb7c171cac91fded0590fa3ea95e9879531 +size 3706 diff --git a/game/interface/wardrobe/icons/trousers.webp b/game/interface/wardrobe/icons/trousers.webp new file mode 100644 index 00000000..546d4f25 --- /dev/null +++ b/game/interface/wardrobe/icons/trousers.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f24fd6beae4dd811182ebee2d3a866d996ca119e9975aef704d30366d59d04d9 +size 1886 diff --git a/game/mods/MyMod/characters/hermione/clothes/hair/ponytail/0.webp b/game/mods/MyMod/characters/hermione/clothes/hair/ponytail/0.webp new file mode 100644 index 00000000..9330725b --- /dev/null +++ b/game/mods/MyMod/characters/hermione/clothes/hair/ponytail/0.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bd4bda1701335252b8e3337b90ee323d588a0cde59ceba9f9625394c1a24971a +size 13042 diff --git a/game/mods/MyMod/characters/hermione/clothes/hair/ponytail/1.webp b/game/mods/MyMod/characters/hermione/clothes/hair/ponytail/1.webp new file mode 100644 index 00000000..7bf3d52f --- /dev/null +++ b/game/mods/MyMod/characters/hermione/clothes/hair/ponytail/1.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5a18a32a279d08ed8d838e66f2e018c2e287525ec1d6688135e54aa5b8cef63 +size 11560 diff --git a/game/mods/MyMod/characters/hermione/clothes/hair/ponytail/outline.webp b/game/mods/MyMod/characters/hermione/clothes/hair/ponytail/outline.webp new file mode 100644 index 00000000..774c7ab4 --- /dev/null +++ b/game/mods/MyMod/characters/hermione/clothes/hair/ponytail/outline.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9847b70162d4f2bd94ace6fb6aa96eac287b70b208f6626791d0551cabf11302 +size 13698 diff --git a/game/mods/MyMod/logo.webp b/game/mods/MyMod/logo.webp new file mode 100644 index 00000000..61ccb16f --- /dev/null +++ b/game/mods/MyMod/logo.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1928460e5f946dcc36d3d53b375c9174090f5b723fc489954ac1e63e08249ae7 +size 42406 diff --git a/game/mods/MyMod/manifest.json b/game/mods/MyMod/manifest.json new file mode 100644 index 00000000..680b19c5 --- /dev/null +++ b/game/mods/MyMod/manifest.json @@ -0,0 +1,7 @@ +{ + "Name": "MyMod", + "Author": "LoafyLemon", + "Version": "1.0.0", + "Description": "Adds ponytail hairstyle for Hermione", + "GameVer": "1.40" +} diff --git a/game/mods/MyMod/script.rpym b/game/mods/MyMod/script.rpym new file mode 100644 index 00000000..f675194b --- /dev/null +++ b/game/mods/MyMod/script.rpym @@ -0,0 +1,13 @@ +# Add new hairstyle for character as an instance of DollCloth, +# make sure the variable name is unique, preferably starting with mod name. +default MyMod_ponytail = DollCloth( + modpath="mods/mymod/", # shortened filepath to this file + name="hermione", # Character name (case sensitive) + categories=("head","hair"), # Main category and subcategory of the item + type="hair", # Item type + id="ponytail", # Item identificator + unlocked=True, # True=Item is unlocked by default, False=Item is a part of the outfit and requries to be bought + level=0, # Character whoring/friendship level required to wear this cloth. (Optional) + armfix=False, # If cloth images intersect with arm layers, set to True. (Optional) + color=[[152, 89, 48, 255], [195, 137, 89, 255]] # Python list with default colours in RGBA format applicable for each colourable file layer + ) diff --git a/game/modules/mods.rpy b/game/modules/mods.rpy new file mode 100644 index 00000000..5a9b9c03 --- /dev/null +++ b/game/modules/mods.rpy @@ -0,0 +1,183 @@ +default persistent.mods_enabled = set() +default mods_parsed = set() + +init python: + import json + import os + import renpy.error as rpy_error + + mods_list = dict() + + def import_mods(): + global mods_list + + all_files = renpy.list_files() + + if renpy.android: + # Include files outside the application archive and strip the directory path. + # Normally it wouldn't be necessary but `renpy.list_files` does not list files outside archives on android. + for dir in config.searchpath: + all_files.extend([os.path.join(path.replace(dir, ""), name) for path, _, files in os.walk(dir) for name in files]) + + mods = filter(lambda x: x.endswith(".json"), all_files) + + for i, manifest in enumerate(mods): + path = os.path.split(manifest)[0] + files = filter(lambda x: path in x, all_files) + scripts = filter(lambda x: x.endswith(".rpym"), files) + logo = "{}/logo.webp".format(path) + + if not renpy.loadable(logo): + logo = "#000" + + # Read manifest + with renpy.file(manifest) as f: + data = json.load(f) + + modname = data.get("Name", None) + + if not modname: + continue + + mods_list[modname] = data + mods_list[modname]["Files"] = files + mods_list[modname]["Path"] = path + mods_list[modname]["LoadOrder"] = i # TODO: Make load order customisable + mods_list[modname]["Logo"] = logo + + for mod in list(persistent.mods_enabled): + if not mods_list.get(mod, None): + persistent.mods_enabled.remove(mod) + return + + def parse_mods(): + if main_menu or _menu: + return + + for mod in list(persistent.mods_enabled): + if mod in mods_parsed: + continue + + path = mods_list[mod]["Path"] + files = mods_list[mod]["Files"] + + for file in files: + if not file.endswith(".rpym"): + continue + + fn = os.path.split(file)[1] + + with renpy.file(file) as s: + data = s.read() + + print "Loading '{}'".format(mod) + + #renpy.load_module(os.path.splitext(file)[0]) + + try: + renpy.load_string(data, filename="game/{}/{}".format(path, fn)) + except Exception as e: + print "Loading '{}' has failed.\nFile: {}\nError: {}".format(mod, fn, e) + mods_parsed.add(mod) + + renpy.execute_default_statement(False) + return + + def toggle_mod(mod): + if not main_menu: + renpy.notify("Mods can be enabled or disabled from the main menu only.") + return + + mods = persistent.mods_enabled + + if mod in mods: + renpy.notify("Mod disabled.") + mods.remove(mod) + else: + renpy.notify("Mod Enabled.") + mods.add(mod) + + # + # Custom parser w/ exception handling + # + + def parse_script(fn, filedata=None, linenumber=1): + renpy.game.exception_info = 'While parsing ' + fn + '.' + + try: + lines = renpy.parser.list_logical_lines(fn, filedata, linenumber) + nested = renpy.parser.group_logical_lines(lines) + except ParseError as e: + renpy.parser.parse_errors.append(e.message) + + if not fn.endswith(".rpym"): + return None + + l = renpy.parser.Lexer(nested) + + rv = renpy.parser.parse_block(l) + + if renpy.parser.parse_errors: + if fn.endswith(".rpym"): + renpy.store.report_parse_errors(fn, linenumber, renpy.parser.parse_errors) + return None + + if rv: + rv.append(renpy.parser.ast.Return((rv[-1].filename, rv[-1].linenumber), None)) + + return rv + + def report_parse_errors(file, linenumber, errors): + + if not errors: + return False + + dp, fn = os.path.split(file) + + error_f, error_fn = rpy_error.open_error_file(os.path.join(dp, "errors.txt"), "w") + + with error_f: + error_f.write(u"\ufeff") # BOM + error_f.write(u"I'm sorry, but errors were detected in your mod script.\nPlease correct the errors listed below, and try again.\n\n") + + for i in errors: + if not isinstance(i, str): + i = str(i, "utf-8", "replace") + + error_f.write(i) + error_f.write(u"\n\n") + + # We need to remove reported errors to avoid incorrectly detecting .rpym format in the next call. + renpy.parser.parse_errors.remove(i) + + error_f.write(u"Game Version: {}\nRen'Py Version: {}\n{}".format(renpy.store.version, renpy.version_only, str(time.ctime()))) + + try: + if renpy.game.args.command == "run": # @UndefinedVariable + renpy.exports.launch_editor([error_fn], 1, transient=1) + renpy.exports.launch_editor([file], linenumber) + except: + pass + + return True + + # We need to monkey patch our new parser with exception handlers for mods. + renpy.parser.parse = parse_script + + # Note: Exception handling doesn't seem to be necessary at the moment. + # Note2: Catching runtime errors and finding their file of origin might be tricky... + # Note3: Might be worth 'sandboxing' mods parsing in the future + # to be able to catch all errors prior to executing them on main store. Maybe. + # Note4: Pickling monkey patched functions that are stored does not seem to be possible from within load_string + # due to saves pickling their data much earlier than mods are loaded. + # + # def exception_handler(short, full, file): + # renpy.display.error.report_exception(short, full, file) + + # define config.exception_handler = exception_handler + +init: + $ import_mods() + $ config.after_load_callbacks.append(parse_mods) + + diff --git a/game/music/(Orchestral) Playful Tension by Shadow16nh.ogg b/game/music/(Orchestral) Playful Tension by Shadow16nh.ogg new file mode 100644 index 00000000..62013029 --- /dev/null +++ b/game/music/(Orchestral) Playful Tension by Shadow16nh.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d2a1e059e75701202ced714d92f43340b4cf79aa53dd4019982df8449ad33de3 +size 693462 diff --git a/game/music/Anguish.ogg b/game/music/Anguish.ogg new file mode 100644 index 00000000..579c5144 --- /dev/null +++ b/game/music/Anguish.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3072716ddde6cedbc772770232ce6153fa9a6881636373ddb469804dedb5d23b +size 3030314 diff --git a/game/music/Brandenburg No4-1 BWV1049 Kevin-McKleod.ogg b/game/music/Brandenburg No4-1 BWV1049 Kevin-McKleod.ogg new file mode 100644 index 00000000..f3ac498b --- /dev/null +++ b/game/music/Brandenburg No4-1 BWV1049 Kevin-McKleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ab5da62abd7031128120c80d0a9ff587909c6ab637b391368bd957eaebf032f +size 5959840 diff --git a/game/music/Brittle Rille.ogg b/game/music/Brittle Rille.ogg new file mode 100644 index 00000000..299ad106 --- /dev/null +++ b/game/music/Brittle Rille.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64a25a1cf06498e81f2d4cb2df281e6395f5ead9ad62c1f373045dff3988c720 +size 2926347 diff --git a/game/music/Chipper Doodle v2.ogg b/game/music/Chipper Doodle v2.ogg new file mode 100644 index 00000000..63cd2b1d --- /dev/null +++ b/game/music/Chipper Doodle v2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d83b22a3c7e1d862d709934adca08fc4139c747e08c0f5625640e5ff5e31976 +size 2466111 diff --git a/game/music/Dark Fog.ogg b/game/music/Dark Fog.ogg new file mode 100644 index 00000000..5eef21d1 --- /dev/null +++ b/game/music/Dark Fog.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad78d3fcc9aa415876b273426b213b3584f5240bc68d4576d2532f0bc94a8323 +size 2902595 diff --git a/game/music/Despair_by_erenik.ogg b/game/music/Despair_by_erenik.ogg new file mode 100644 index 00000000..6bd2df6a --- /dev/null +++ b/game/music/Despair_by_erenik.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:69a7ff2104f7f421f966fd13fe8f3e7c7f88f4086ba4a30aacaf60632e79ac2b +size 1331209 diff --git a/game/music/Fanfare.ogg b/game/music/Fanfare.ogg new file mode 100644 index 00000000..8dcd9a9d --- /dev/null +++ b/game/music/Fanfare.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5455ff1c1a9d96873310d9eb1584e09bb6253e0dde46748a4ec6053206bd01fa +size 745108 diff --git a/game/music/GrapeSodaIsFuckingRawbyjrayteam6.ogg b/game/music/GrapeSodaIsFuckingRawbyjrayteam6.ogg new file mode 100644 index 00000000..f7701117 --- /dev/null +++ b/game/music/GrapeSodaIsFuckingRawbyjrayteam6.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:869c1683f39022cf9d5b42b264dc483df20d02fdd88840c6b17f7fc067f8e503 +size 2511091 diff --git a/game/music/Hitman.ogg b/game/music/Hitman.ogg new file mode 100644 index 00000000..f2509e3f --- /dev/null +++ b/game/music/Hitman.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31ba78b98167e146d17edd94f86206327a9b925a9721bf1a8e989fe955de129b +size 2844974 diff --git a/game/music/Juhani_Junkala.ogg b/game/music/Juhani_Junkala.ogg new file mode 100644 index 00000000..545747f1 --- /dev/null +++ b/game/music/Juhani_Junkala.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a054d6b4780388c5f5483e60d760b229dfb18303723eee2caf2eb43f2162e11d +size 1126638 diff --git a/game/music/KMcL_OpenThoseBrightEyes.ogg b/game/music/KMcL_OpenThoseBrightEyes.ogg new file mode 100644 index 00000000..2c1d712e --- /dev/null +++ b/game/music/KMcL_OpenThoseBrightEyes.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2e6a5822e022f90f55b5d903bae4ba4d8d7960be44efd7db8be01f4bd5ee84cf +size 1680334 diff --git a/game/music/Music for Manatees.ogg b/game/music/Music for Manatees.ogg new file mode 100644 index 00000000..9993c629 --- /dev/null +++ b/game/music/Music for Manatees.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c1561ef85d6fb9a5a55f98d2ca433e18c5fb64d72f71d6fa12790ce31ea75d19 +size 12764432 diff --git a/game/music/Only 115 (Electro Loop)_125 BPM.ogg b/game/music/Only 115 (Electro Loop)_125 BPM.ogg new file mode 100644 index 00000000..f3684d49 --- /dev/null +++ b/game/music/Only 115 (Electro Loop)_125 BPM.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:62f82d2594eca5bcb790021fa192adacb88ad7335d2af8ac5029ce8da02ee00d +size 915940 diff --git a/game/music/Plaint.ogg b/game/music/Plaint.ogg new file mode 100644 index 00000000..f21ef162 --- /dev/null +++ b/game/music/Plaint.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:818b2d338b4fabd75a9ec8e15a23a0701fef51f317baeb7c7bf33cdef2ad119f +size 2415882 diff --git a/game/music/RoomOfReqIntro.ogg b/game/music/RoomOfReqIntro.ogg new file mode 100644 index 00000000..0ff173f8 --- /dev/null +++ b/game/music/RoomOfReqIntro.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f7bcaa22d68f2042a933c0a9c271bc5c81bda4857016408d46bc4f2c003d35b +size 457116 diff --git a/game/music/Spring_In_My_Step.ogg b/game/music/Spring_In_My_Step.ogg new file mode 100644 index 00000000..16f64c84 --- /dev/null +++ b/game/music/Spring_In_My_Step.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0da25a48ffe7d0770a036753ec7e5a89a2f9d4c79002c896b82d9d62ed3f35fb +size 1812941 diff --git a/game/music/Under-the-Radar by PhobyAk.ogg b/game/music/Under-the-Radar by PhobyAk.ogg new file mode 100644 index 00000000..dc1969be --- /dev/null +++ b/game/music/Under-the-Radar by PhobyAk.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bb3d3aa9bf2aec925a8671eeddb333f737f9f6b3f3d170567282f4e52ff97985 +size 2601579 diff --git a/game/music/Victory1.ogg b/game/music/Victory1.ogg new file mode 100644 index 00000000..3924ed42 --- /dev/null +++ b/game/music/Victory1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a34d1d62bf2b477f923db857980e368f31a3857d81afd4a9617a0f14ca4e18f5 +size 747233 diff --git a/game/music/aquarium-by-kevin-macleod.ogg b/game/music/aquarium-by-kevin-macleod.ogg new file mode 100644 index 00000000..a53ae434 --- /dev/null +++ b/game/music/aquarium-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3bb63bd3ab32a34eb06021a4f58956166799c63fd572f3f025232430782583c +size 1986420 diff --git a/game/music/battleThemeB.ogg b/game/music/battleThemeB.ogg new file mode 100644 index 00000000..04edd0bf --- /dev/null +++ b/game/music/battleThemeB.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d36b47dd8ec87234614e2e9ec1d16406fc9665165c400daea7a87959251a522c +size 863472 diff --git a/game/music/boss_battle_#2_metal_loop.ogg b/game/music/boss_battle_#2_metal_loop.ogg new file mode 100644 index 00000000..b73ddef5 --- /dev/null +++ b/game/music/boss_battle_#2_metal_loop.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f142d16f7b40444933e2557d02b13ea14d46caf44e0521dcc538daad51109e0 +size 512135 diff --git a/game/music/clothing_store.ogg b/game/music/clothing_store.ogg new file mode 100644 index 00000000..a9edca80 --- /dev/null +++ b/game/music/clothing_store.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff4e17e7c93ac7acaf714d9fa9cbe5ec5460afb752e648761e00a9c1069c5484 +size 952286 diff --git a/game/music/court-of-the-queen-by-kevin-macleod.ogg b/game/music/court-of-the-queen-by-kevin-macleod.ogg new file mode 100644 index 00000000..172d3505 --- /dev/null +++ b/game/music/court-of-the-queen-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dfbd3b1beeeae041e752c7dc21a586baa13a35270cff0def8c6527ece5ef7261 +size 503275 diff --git a/game/music/deadly-roulette-by-kevin-macleod.ogg b/game/music/deadly-roulette-by-kevin-macleod.ogg new file mode 100644 index 00000000..91ec6bd9 --- /dev/null +++ b/game/music/deadly-roulette-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:463c31a0ca0192f452cea19dcaae025410913d73fd76f0adae5bb0e357f75734 +size 1963890 diff --git a/game/music/determined_pursuit_loop.ogg b/game/music/determined_pursuit_loop.ogg new file mode 100644 index 00000000..f1061362 --- /dev/null +++ b/game/music/determined_pursuit_loop.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:542bbb1b60a0183bb3b653b12e11486e634fa40a396fb9a4ff80b407b3c88ab6 +size 1534284 diff --git a/game/music/epic-unease-by-kevin-macleod.ogg b/game/music/epic-unease-by-kevin-macleod.ogg new file mode 100644 index 00000000..f2104bd5 --- /dev/null +++ b/game/music/epic-unease-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:96ca0f83cf0989b6bec33e102dc9bf9617ec5c561ed9ea02f4dbc9b4570adc72 +size 442432 diff --git a/game/music/firebrand-by-kevin-macleod.ogg b/game/music/firebrand-by-kevin-macleod.ogg new file mode 100644 index 00000000..9821e1a5 --- /dev/null +++ b/game/music/firebrand-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f58377c5362d3de09a3461d4263d141e51605373bac1ba190eeb2d03516d0ad +size 5259253 diff --git a/game/music/fluffing-a-duck-by-kevin-macleod.ogg b/game/music/fluffing-a-duck-by-kevin-macleod.ogg new file mode 100644 index 00000000..dfe9703b --- /dev/null +++ b/game/music/fluffing-a-duck-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61b9be56609096fb001ab5045422b4fa80f37a41888bfee13d76d85504f930ba +size 792632 diff --git a/game/music/fuzzball-parade-by-kevin-macleod.ogg b/game/music/fuzzball-parade-by-kevin-macleod.ogg new file mode 100644 index 00000000..f1d5a398 --- /dev/null +++ b/game/music/fuzzball-parade-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d60cee01d547f43a7c6ebba2112bedb70226c33e9e2adca9f7d66039f70ea533 +size 3990534 diff --git a/game/music/hidden-agenda-by-kevin-macleod.ogg b/game/music/hidden-agenda-by-kevin-macleod.ogg new file mode 100644 index 00000000..3daceb79 --- /dev/null +++ b/game/music/hidden-agenda-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb9a3f1e6d7a04bdc21df30ee175111813348b66d8bce2c4cc8a5e055274640f +size 1750137 diff --git a/game/music/machinations-by-kevin-macleod.ogg b/game/music/machinations-by-kevin-macleod.ogg new file mode 100644 index 00000000..bc422ed0 --- /dev/null +++ b/game/music/machinations-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8c646f69b672a1ce80f991fe36a2856ee6550be75f099afe005271d0a43e7ab +size 1307929 diff --git a/game/music/march-of-the-spoons-by-kevin-macleod-from-filmmusic-io.ogg b/game/music/march-of-the-spoons-by-kevin-macleod-from-filmmusic-io.ogg new file mode 100644 index 00000000..b7196de4 --- /dev/null +++ b/game/music/march-of-the-spoons-by-kevin-macleod-from-filmmusic-io.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68731a76b2ad8335047bb6d784b8460b1b1068a53dec3f9b7f1b7ec05347e8fa +size 2387720 diff --git a/game/music/marty-gots-a-plan-by-kevin-macleod.ogg b/game/music/marty-gots-a-plan-by-kevin-macleod.ogg new file mode 100644 index 00000000..e2fde53c --- /dev/null +++ b/game/music/marty-gots-a-plan-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b11d0ce944b489992438c5a97e620c0c2cf5f72e1be3d5d282bedee101f53a2b +size 2229235 diff --git a/game/music/ominous_music.ogg b/game/music/ominous_music.ogg new file mode 100644 index 00000000..179a02cb --- /dev/null +++ b/game/music/ominous_music.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b837331d8fcb2a1da2272543a8b29f021ea6a43db2ac7e6177d2fe8d6d782ac2 +size 1210205 diff --git a/game/music/pirate.ogg b/game/music/pirate.ogg new file mode 100644 index 00000000..9913c318 --- /dev/null +++ b/game/music/pirate.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3e1511aa161fa44cda4a6c4cd55f8e80768d2050289599ee4eb8d7c2cb13f896 +size 885096 diff --git a/game/music/scheming-weasel-slower-version-by-kevin-macleod.ogg b/game/music/scheming-weasel-slower-version-by-kevin-macleod.ogg new file mode 100644 index 00000000..31db433f --- /dev/null +++ b/game/music/scheming-weasel-slower-version-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:726b6c44b2cba731fac76fcb015295a3f05d36eb085aaa53eaf48a7c282b0806 +size 1222359 diff --git a/game/music/silly_fun_loop.ogg b/game/music/silly_fun_loop.ogg new file mode 100644 index 00000000..166e020b --- /dev/null +++ b/game/music/silly_fun_loop.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c47e560e683e0bb1204456d39c7a773190dd62de83bd096c78ff7fe346e00199 +size 435276 diff --git a/game/music/song18.ogg b/game/music/song18.ogg new file mode 100644 index 00000000..fd03d0bf --- /dev/null +++ b/game/music/song18.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39b8d431f41698d8b454261fc38cf3f6e76b3d6400d8604b8cb48cffdbb52afc +size 436621 diff --git a/game/music/teddy-bear-waltz-by-kevin-macleod.ogg b/game/music/teddy-bear-waltz-by-kevin-macleod.ogg new file mode 100644 index 00000000..fad77f70 --- /dev/null +++ b/game/music/teddy-bear-waltz-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:744366db352fadd105d44c79767f3d2ae27d3d79cc64c9686bf4f47dca9c6edd +size 2527938 diff --git a/game/music/the-chamber-by-kevin-macleod.ogg b/game/music/the-chamber-by-kevin-macleod.ogg new file mode 100644 index 00000000..1de324d8 --- /dev/null +++ b/game/music/the-chamber-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a48fac0412b78d2e24e21646d30c7f3b61dddde7d6085134b4cd454d5a7329fb +size 1332982 diff --git a/game/music/the-other-side-of-the-door-by-kevin-macleod-from-filmmusic-io.ogg b/game/music/the-other-side-of-the-door-by-kevin-macleod-from-filmmusic-io.ogg new file mode 100644 index 00000000..b0ebcd3b --- /dev/null +++ b/game/music/the-other-side-of-the-door-by-kevin-macleod-from-filmmusic-io.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70a2b2184b8c6410e247dbf5f69e973e4f2ac4336094ab61f4001b654f9672cc +size 2197773 diff --git a/game/music/vs_hermione.ogg b/game/music/vs_hermione.ogg new file mode 100644 index 00000000..6072ae82 --- /dev/null +++ b/game/music/vs_hermione.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc6de9f215e567edd7307dab23aea6bb55ac911eaed897e84c488636cb3761b3 +size 197534 diff --git a/game/music/vs_twins.ogg b/game/music/vs_twins.ogg new file mode 100644 index 00000000..57331a88 --- /dev/null +++ b/game/music/vs_twins.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:949d1ebab35cb193f024cc7cc02b04a494a44cfd8444ac91e9c98895bf2dbb6c +size 1333115 diff --git a/game/music/wallpaper-by-kevin-macleod.ogg b/game/music/wallpaper-by-kevin-macleod.ogg new file mode 100644 index 00000000..0321e09a --- /dev/null +++ b/game/music/wallpaper-by-kevin-macleod.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bfcc7b60d886b270eb439a58f9ccc41ca8adf4c2b80f0c2c9ec91d84b46f8178 +size 2959846 diff --git a/game/music/weasley_store.ogg b/game/music/weasley_store.ogg new file mode 100644 index 00000000..b3f115bb --- /dev/null +++ b/game/music/weasley_store.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f3d8e8e740de6c27a399d04106dfb5021085c403c49ff18088f8058fd47bdd1 +size 569105 diff --git a/game/outfits/.gitignore b/game/outfits/.gitignore new file mode 100644 index 00000000..5e7d2734 --- /dev/null +++ b/game/outfits/.gitignore @@ -0,0 +1,4 @@ +# Ignore everything in this directory +* +# Except this file +!.gitignore diff --git a/game/presplash_background.png b/game/presplash_background.png new file mode 100644 index 00000000..1a287e29 --- /dev/null +++ b/game/presplash_background.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b58111f165b61c76a43fcc702efe9bad27bbf10e4b4d96cf8a3313a97c9fbcdb +size 302255 diff --git a/game/presplash_foreground.png b/game/presplash_foreground.png new file mode 100644 index 00000000..a327345a --- /dev/null +++ b/game/presplash_foreground.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fd5759bd8c130af28dda2a39f27a8d220ce883c20faf4e001c1d6368ac4b5b45 +size 1030 diff --git a/game/scripts/animations/ani_astoria.rpy b/game/scripts/animations/ani_astoria.rpy new file mode 100644 index 00000000..7220792a --- /dev/null +++ b/game/scripts/animations/ani_astoria.rpy @@ -0,0 +1,138 @@ +# Astoria chibi + +image ch_ast stand: + random_blink("characters/astoria/chibis/ag_stand_blink.webp", "characters/astoria/chibis/ag_walk_01.webp") + +image ch_ast walk: + "characters/astoria/chibis/ag_walk_01.webp" + pause.08 + "characters/astoria/chibis/ag_walk_02.webp" + pause.08 + "characters/astoria/chibis/ag_walk_03.webp" + pause.08 + "characters/astoria/chibis/ag_walk_02.webp" + pause.08 + "characters/astoria/chibis/ag_walk_01.webp" + pause.08 + "characters/astoria/chibis/ag_walk_04.webp" + pause.08 + "characters/astoria/chibis/ag_walk_05.webp" + pause.08 + "characters/astoria/chibis/ag_walk_04.webp" + pause.08 + + repeat + +image ch_ast walk_shoes: # Walk shoes layer + "characters/astoria/chibis/ag_walk_01_shoes.webp" + pause.08 + "characters/astoria/chibis/ag_walk_02_shoes.webp" + pause.08 + "characters/astoria/chibis/ag_walk_03_shoes.webp" + pause.08 + "characters/astoria/chibis/ag_walk_02_shoes.webp" + pause.08 + "characters/astoria/chibis/ag_walk_01_shoes.webp" + pause.08 + "characters/astoria/chibis/ag_walk_04_shoes.webp" + pause.08 + "characters/astoria/chibis/ag_walk_05_shoes.webp" + pause.08 + "characters/astoria/chibis/ag_walk_04_shoes.webp" + pause.08 + + repeat + +image ch_ast wand: + size (350, 360) # Set size when using `contains`, so additional transforms work as expected + contains: + "characters/astoria/chibis/wand/ag_stand_01.webp" + + contains: + random_blink("characters/astoria/chibis/wand/ag_head_02.webp", "characters/astoria/chibis/wand/ag_head_01.webp") + +image ch_ast wand_casting: + size (350, 360) # Set size when using `contains`, so additional transforms work as expected + contains: + "characters/astoria/chibis/wand_casting/ag_stand_01.webp" + pause.22 + "characters/astoria/chibis/wand_casting/ag_stand_02.webp" + pause.26 + "characters/astoria/chibis/wand_casting/ag_stand_03.webp" + pause.22 + repeat + + contains: + random_blink("characters/astoria/chibis/wand_casting/ag_head_02.webp", "characters/astoria/chibis/wand_casting/ag_head_01.webp") + + contains: + xpos 78 + ypos 78 + "characters/astoria/chibis/wand_casting/sparkles.webp" + linear .48 xoffset -10 yoffset 10 + linear .22 xoffset 10 yoffset -10 + repeat + +image ch_ast wand_imperio: + size (350, 360) # Set size when using `contains`, so additional transforms work as expected + contains: + "characters/astoria/chibis/wand_imperio/ag_stand_03.webp" + pause.12 + "characters/astoria/chibis/wand_imperio/ag_stand_01.webp" + pause.12 + "characters/astoria/chibis/wand_imperio/ag_stand_02.webp" + pause 1 + "characters/astoria/chibis/wand_imperio/ag_stand_04.webp" + + contains: + random_blink("characters/astoria/chibis/wand_imperio/ag_head_02.webp", "characters/astoria/chibis/wand_imperio/ag_head_01.webp") + + contains: + "blank" + pause.12 + "characters/astoria/chibis/wand_imperio/ag_head_03.webp" + pause 1 + "blank" + + contains: + xpos 78 + ypos 78 + alpha 1.0 + "characters/astoria/chibis/wand_imperio/sparkles.webp" + linear .22 xoffset -10 yoffset 10 + linear 1.0 alpha 0.0 xoffset -80 yoffset -4 + + contains: + xpos -28 + ypos 31 + rotate -70 + alpha 0.0 + xzoom 0 + + pause.24 + alpha 1.0 + "characters/astoria/chibis/wand_imperio/smoke.webp" + linear 1.0 xzoom 1.0 xpos -34 ypos 37 + "blank" + + contains: + xpos -34 + ypos -37 + + pause 1.24 + "ch_ast imperio_smoke" + +image ch_ast imperio_smoke: # Imperio smoke layer + xoffset 0 + yoffset 72 + rotate -70 + alpha 1.0 + "characters/astoria/chibis/wand_imperio/smoke.webp" + linear 1.0 alpha 0.7 yzoom 0.85 xoffset 16 yoffset 86 + linear 1.0 alpha 1.0 yzoom 1.0 xoffset 0 yoffset 72 + repeat + +image ch_ast imperio_shoes: # Imperio shoes layer + "characters/astoria/chibis/wand_imperio/ag_shoes.webp" + pause 1.24 + "characters/astoria/chibis/wand_imperio/ag_shoes_04.webp" diff --git a/game/scripts/animations/ani_cho.rpy b/game/scripts/animations/ani_cho.rpy new file mode 100644 index 00000000..b745b96b --- /dev/null +++ b/game/scripts/animations/ani_cho.rpy @@ -0,0 +1,90 @@ +# Cho chibi + +image ch_cho stand: + random_blink("characters/cho/chibis/cc_stand_blink.webp", "characters/cho/chibis/cc_walk_01.webp") + +image ch_cho walk: + "characters/cho/chibis/cc_walk_01.webp" + pause.08 + "characters/cho/chibis/cc_walk_02.webp" + pause.08 + "characters/cho/chibis/cc_walk_03.webp" + pause.08 + "characters/cho/chibis/cc_walk_02.webp" + pause.08 + "characters/cho/chibis/cc_walk_01.webp" + pause.08 + "characters/cho/chibis/cc_walk_04.webp" + pause.08 + "characters/cho/chibis/cc_walk_05.webp" + pause.08 + "characters/cho/chibis/cc_walk_04.webp" + pause.08 + + repeat + +image ch_cho walk_shoes: # Walk shoes layer + "characters/cho/chibis/cc_walk_01_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_02_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_03_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_02_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_01_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_04_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_05_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_04_shoes.webp" + pause.08 + + repeat + +image ch_cho walk_quid_shoes: # Walk Quidditch shoes layer + "characters/cho/chibis/cc_walk_01_quid_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_02_quid_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_03_quid_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_02_quid_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_01_quid_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_04_quid_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_05_quid_shoes.webp" + pause.08 + "characters/cho/chibis/cc_walk_04_quid_shoes.webp" + pause.08 + + repeat + +image ch_cho trousers: # Walk trousers layer + "characters/cho/chibis/cc_walk_01_trousers.webp" + pause.08 + "characters/cho/chibis/cc_walk_02_trousers.webp" + pause.08 + "characters/cho/chibis/cc_walk_03_trousers.webp" + pause.08 + "characters/cho/chibis/cc_walk_02_trousers.webp" + pause.08 + "characters/cho/chibis/cc_walk_01_trousers.webp" + pause.08 + "characters/cho/chibis/cc_walk_04_trousers.webp" + pause.08 + "characters/cho/chibis/cc_walk_05_trousers.webp" + pause.08 + "characters/cho/chibis/cc_walk_04_trousers.webp" + pause.08 + + repeat + +image ch_cho fly: + random_blink("characters/cho/chibis/fly/cc_fly_idle1.webp", "characters/cho/chibis/fly/cc_fly_idle0.webp") + +image ch_cho fly_move: + random_blink("characters/cho/chibis/fly_move/cc_fly1.webp", "characters/cho/chibis/fly_move/cc_fly0.webp") diff --git a/game/scripts/animations/ani_duel.rpy b/game/scripts/animations/ani_duel.rpy new file mode 100644 index 00000000..1d9e2083 --- /dev/null +++ b/game/scripts/animations/ani_duel.rpy @@ -0,0 +1,526 @@ + +# Animation that shows a broken glass effect when the duel starts. +image glass: + + contains: + "images/dueling/snape/glass/gradient.webp" + + contains: + pause 1.3 + "images/dueling/snape/glass/01.webp" + pause.1 + "images/dueling/snape/glass/02.webp" + pause.1 + "images/dueling/snape/glass/03.webp" + pause.1 + "images/dueling/snape/glass/04.webp" + pause.1 + "images/dueling/snape/glass/05.webp" + pause.1 + "images/dueling/snape/glass/06.webp" + pause.1 + "images/dueling/snape/glass/07.webp" + pause.1 + "images/dueling/snape/glass/08.webp" + pause.1 + "images/dueling/snape/glass/09.webp" + pause.1 + "images/dueling/snape/glass/10.webp" + + contains: + "images/dueling/snape/glass/crack.webp" + +image smoke: + zoom 0.5 + alpha 1.0 + "images/animation/smoke_01.webp" + pause.1 + "images/animation/smoke_02.webp" + pause.1 + "images/animation/smoke_03.webp" + pause.1 + alpha 0.0 + pause.1 + +image teleport_ani: + "images/magic/magic4.webp" + pause.05 + "images/magic/magic5.webp" + pause.1 + "images/magic/magic1.webp" + pause.05 + "images/magic/magic2.webp" + pause.3 + +image heal_ani: + "images/magic/heal01.webp" + pause.06 + "images/magic/heal02.webp" + pause.06 + "images/magic/heal03.webp" + pause.06 + "images/magic/heal04.webp" + pause.06 + "images/magic/heal05.webp" + pause.06 + "images/magic/heal06.webp" + pause.06 + "images/magic/heal07.webp" + pause.06 + "images/magic/heal08.webp" + pause.06 + "images/magic/heal09.webp" + pause.06 + "images/magic/heal10.webp" + pause.06 + "images/magic/heal11.webp" + pause.06 + "images/magic/heal12.webp" + pause.06 + "images/magic/heal13.webp" + pause.06 + "images/magic/heal14.webp" + pause.06 + "images/magic/heal15.webp" + pause.06 + "images/magic/heal16.webp" + pause.06 + "images/magic/heal17.webp" + pause.06 + "images/magic/heal18.webp" + pause.06 + +image heal_02: # Smaller version of heal. 40% of the original size. + "images/magic/heal_02/heal01.webp" + pause.06 + "images/magic/heal_02/heal02.webp" + pause.06 + "images/magic/heal_02/heal03.webp" + pause.06 + "images/magic/heal_02/heal04.webp" + pause.06 + "images/magic/heal_02/heal05.webp" + pause.06 + "images/magic/heal_02/heal06.webp" + pause.06 + "images/magic/heal_02/heal07.webp" + pause.06 + "images/magic/heal_02/heal08.webp" + pause.06 + "images/magic/heal_02/heal09.webp" + pause.06 + "images/magic/heal_02/heal10.webp" + pause.06 + "images/magic/heal_02/heal11.webp" + pause.06 + "images/magic/heal_02/heal12.webp" + pause.06 + "images/magic/heal_02/heal13.webp" + pause.06 + "images/magic/heal_02/heal14.webp" + pause.06 + "images/magic/heal_02/heal15.webp" + pause.06 + "images/magic/heal_02/heal16.webp" + pause.06 + "images/magic/heal_02/heal17.webp" + pause.06 + "images/magic/heal_02/heal18.webp" + pause.06 + + +### GENIE SPELL ANIMATION ### +image spell_ani: + "images/animation/spell01.webp" + pause.1 + "images/animation/spell02.webp" + pause.1 + "images/animation/spell03.webp" + pause.1 + "images/animation/spell04.webp" + pause.1 + "images/animation/spell05.webp" + pause.1 + "images/animation/spell06.webp" + pause.1 + "images/animation/spell07.webp" + pause.1 + "images/animation/spell08.webp" + pause.1 + "images/animation/spell09.webp" + pause.1 + "images/animation/spell10.webp" + pause.1 + "images/animation/spell11.webp" + pause.1 + "images/animation/spell12.webp" + pause.1 + "images/animation/spell13.webp" + pause.1 + "images/animation/spell14.webp" + pause.1 + "images/animation/spell15.webp" + pause.1 + "images/animation/spell16.webp" + pause.1 + "images/animation/spell17.webp" + pause.1 + +image ch_sna duel_01: + zoom 0.5 + "images/dueling/snape/snape_01.webp" + pause.13 + "images/dueling/snape/snape_02.webp" + pause.13 + "images/dueling/snape/snape_03.webp" + pause.13 + "images/dueling/snape/snape_02.webp" + pause.13 + repeat + +image ch_gen duel_01: + zoom 0.5 + "images/dueling/snape/gen_01.webp" + pause.13 + "images/dueling/snape/gen_02.webp" + pause.13 + "images/dueling/snape/gen_03.webp" + pause.13 + "images/dueling/snape/gen_02.webp" + pause.13 + repeat + +image ch_gen guard: + zoom 0.5 + "images/dueling/snape/guard_01.webp" + pause.13 + "images/dueling/snape/guard_02.webp" + pause.13 + "images/dueling/snape/guard_03.webp" + pause.13 + "images/dueling/snape/guard_02.webp" + pause.13 + repeat + +image ch_gen barb: + zoom 0.5 + "images/dueling/snape/barb_01.webp" + pause.13 + "images/dueling/snape/barb_02.webp" + pause.13 + repeat + +image genie_no_magic: + zoom 0.5 + "images/dueling/snape/no_magic.webp" + +image ch_sna defend: + zoom 0.5 + "images/dueling/snape/snape_defend_01.webp" + pause.13 + "images/dueling/snape/snape_defend_02.webp" + pause.13 + "images/dueling/snape/snape_defend_03.webp" + pause.13 + "images/dueling/snape/snape_defend_02.webp" + pause.13 + repeat + +image snape_attack: + zoom 0.5 + "images/dueling/snape/sna_attack_01.webp" + pause.13 + "images/dueling/snape/sna_attack_02.webp" + pause.13 + "images/dueling/snape/sna_attack_03.webp" + pause.13 + "images/dueling/snape/sna_attack_04.webp" + pause.08 + "images/dueling/snape/sna_attack_05.webp" + pause.08 + "images/dueling/snape/sna_attack_06.webp" + pause.08 + "images/dueling/snape/sna_attack_07.webp" + pause.08 + "images/dueling/snape/sna_attack_08.webp" + pause.08 + "images/dueling/snape/sna_attack_09.webp" + pause.08 + "images/dueling/snape/sna_attack_10.webp" + pause.08 + repeat + +image snape_attack_guard: + zoom 0.5 + "images/dueling/snape/sna_attack_guard_01.webp" + pause.08 + "images/dueling/snape/sna_attack_guard_02.webp" + pause.08 + "images/dueling/snape/sna_attack_guard_03.webp" + pause.08 + "images/dueling/snape/sna_attack_guard_04.webp" + pause.08 + "images/dueling/snape/sna_attack_guard_05.webp" + pause.08 + "images/dueling/snape/sna_attack_guard_06.webp" + pause.08 + "images/dueling/snape/sna_attack_guard_07.webp" + pause.08 + "images/dueling/snape/sna_attack_guard_08.webp" + pause.08 + "images/dueling/snape/sna_attack_guard_09.webp" + pause.08 + "images/dueling/snape/sna_attack_guard_10.webp" + pause.08 + repeat + +image genie_attack: + zoom 0.5 + "images/dueling/snape/genie_attack_01.webp" + pause.15 + "images/dueling/snape/genie_attack_02.webp" + pause.15 + "images/dueling/snape/genie_attack_01.webp" + pause.15 + "images/dueling/snape/genie_attack_02.webp" + pause.15 + "images/dueling/snape/genie_attack_01.webp" + pause.15 + "images/dueling/snape/genie_attack_02.webp" + pause.15 + "images/dueling/snape/genie_attack_03.webp" + pause.15 + "images/dueling/snape/genie_attack_04.webp" + pause.15 + "images/dueling/snape/genie_attack_05.webp" + pause.15 + "images/dueling/snape/genie_attack_06.webp" + pause.15 + "images/dueling/snape/genie_attack_07.webp" + pause.15 + "images/dueling/snape/genie_attack_08.webp" + pause.15 + "images/dueling/snape/genie_attack_09.webp" + pause.15 + "images/dueling/snape/genie_attack_10.webp" + pause.15 + "images/dueling/snape/genie_attack_11.webp" + pause.15 + "images/dueling/snape/genie_attack_12.webp" + pause.15 + "images/dueling/snape/genie_attack_13.webp" + pause.15 + "images/dueling/snape/genie_attack_14.webp" + pause.15 + "images/dueling/snape/genie_attack_15.webp" + pause.15 + "images/dueling/snape/genie_attack_14.webp" + pause.15 + "images/dueling/snape/genie_attack_15.webp" + pause.15 + repeat + +# Snape is in defense stance. Barbarian throws axes at him. +image snape_defend: + zoom 0.5 + "images/dueling/snape/sna_block_01.webp" + pause.15 + "images/dueling/snape/sna_block_02.webp" + pause.15 + "images/dueling/snape/sna_block_01.webp" + pause.15 + "images/dueling/snape/sna_block_02.webp" + pause.15 + "images/dueling/snape/sna_block_01.webp" + pause.15 + "images/dueling/snape/sna_block_02.webp" + pause.15 + "images/dueling/snape/sna_block_03.webp" + pause.15 + "images/dueling/snape/sna_block_04.webp" + pause.15 + "images/dueling/snape/sna_block_05.webp" + pause.15 + "images/dueling/snape/sna_block_06.webp" + pause.15 + "images/dueling/snape/sna_block_07.webp" + pause.15 + "images/dueling/snape/sna_block_08.webp" + pause.15 + "images/dueling/snape/sna_block_09.webp" + pause.15 + "images/dueling/snape/sna_block_10.webp" + pause.15 + "images/dueling/snape/sna_block_11.webp" + pause.15 + "images/dueling/snape/sna_block_12.webp" + pause.15 + "images/dueling/snape/sna_block_13.webp" + pause.15 + repeat + +image snape_summon: + zoom 0.5 + "images/dueling/snape/snape_casting_01.webp" + +image snape_lost: + zoom 0.5 + "images/dueling/snape/snape.webp" + +image pentogram: + zoom 0.5 + alpha 0.0 + linear .5 alpha 1.0 + "images/dueling/snape/pen_01.webp" + linear .5 alpha 0.0 + repeat + +image hand: #Hand appears. + zoom 0.5 + "images/dueling/snape/hand_01.webp" + pause.1 + "images/dueling/snape/hand_02.webp" + pause.1 + "images/dueling/snape/hand_03.webp" + pause.1 + "images/dueling/snape/hand_04.webp" + pause.1 + "images/dueling/snape/hand_05.webp" + pause.1 + "images/dueling/snape/hand_06.webp" + pause.1 + "images/dueling/snape/hand_07.webp" + pause.1 + "images/dueling/snape/hand_08.webp" + pause.1 + "images/dueling/snape/hand_09.webp" + pause.1 + "images/dueling/snape/hand_10.webp" + pause.1 + "images/dueling/snape/hand_11.webp" + pause.1 + "images/dueling/snape/hand_12.webp" + pause.1 + "images/dueling/snape/hand_13.webp" + pause.1 + "images/dueling/snape/hand_14.webp" + pause.1 + "images/dueling/snape/hand_15.webp" + pause.1 + "images/dueling/snape/hand_16.webp" + pause.1 + repeat + +image hand_genie: #Hand attacks Genie. + zoom 0.5 + "images/dueling/snape/hand_genie_01.webp" + pause.13 + "images/dueling/snape/hand_genie_02.webp" + pause.13 + "images/dueling/snape/hand_genie_03.webp" + pause.13 + "images/dueling/snape/hand_genie_04.webp" + pause.13 + "images/dueling/snape/hand_genie_05.webp" + pause.1 + "images/dueling/snape/hand_genie_06.webp" + pause.1 + "images/dueling/snape/hand_genie_07.webp" + pause.1 + "images/dueling/snape/hand_genie_08.webp" + pause.1 + "images/dueling/snape/hand_genie_09.webp" + pause.1 + "images/dueling/snape/hand_genie_10.webp" + pause.1 + "images/dueling/snape/hand_genie_11.webp" + pause.1 + "images/dueling/snape/hand_genie_12.webp" + pause.1 + "images/dueling/snape/hand_genie_13.webp" + pause.1 + +image hand_guard: #Hand attacks the guard. + zoom 0.5 + "images/dueling/snape/hand_guard_01.webp" + pause.1 + "images/dueling/snape/hand_guard_02.webp" + pause.1 + "images/dueling/snape/hand_guard_03.webp" + pause.1 + "images/dueling/snape/hand_guard_04.webp" + pause.1 + "images/dueling/snape/hand_guard_05.webp" + pause.1 + "images/dueling/snape/hand_guard_06.webp" + pause.1 + "images/dueling/snape/hand_guard_07.webp" + pause.1 + "images/dueling/snape/hand_guard_08.webp" + pause.1 + "images/dueling/snape/hand_guard_09.webp" + pause.1 + "images/dueling/snape/hand_guard_10.webp" + pause.1 + "images/dueling/snape/hand_guard_11.webp" + pause.1 + "images/dueling/snape/hand_guard_12.webp" + pause.1 + "images/dueling/snape/hand_guard_13.webp" + pause.1 + "images/dueling/snape/hand_guard_14.webp" + pause.1 + "images/dueling/snape/hand_guard_11.webp" + pause.1 + "images/dueling/snape/hand_guard_12.webp" + pause.1 + "images/dueling/snape/hand_guard_13.webp" + pause.1 + +image bouquet_appear: + "images/animation/Bouquet0.webp" + pause.1 + "images/animation/Bouquet1.webp" + pause.1 + "images/animation/Bouquet2.webp" + pause.1 + "images/animation/Bouquet3.webp" + pause.1 + "images/animation/Bouquet4.webp" + pause.8 + +image flower_appear: + "images/animation/Flower0.webp" + pause.1 + "images/animation/Flower1.webp" + pause.1 + "images/animation/Flower2.webp" + pause.1 + "images/animation/Flower3.webp" + pause.1 + "images/animation/Flower4.webp" + pause.8 + +# image vanish_effect_bouquet: + # "images/animation/BouquetPaf.webp" + # pause.1 + # "images/animation/PafAndSmoke.webp" + # pause.1 + # "images/animation/NoPafSmoke.webp" + # pause.1 + # "images/animation/NoPafSmokeTrans1.webp" + # pause.1 + # "images/animation/NoPafSmokeTrans2.webp" + # pause.1 + +# image vanish_effect_flower: + # "images/animation/FlowerPaf.webp" + # pause.1 + # "images/animation/PafAndSmoke.webp" + # pause.1 + # "images/animation/NoPafSmoke.webp" + # pause.1 + # "images/animation/NoPafSmokeTrans1.webp" + # pause.1 + # "images/animation/NoPafSmokeTrans2.webp" + # pause.1 diff --git a/game/scripts/animations/ani_emotes.rpy b/game/scripts/animations/ani_emotes.rpy new file mode 100644 index 00000000..6c23f032 --- /dev/null +++ b/game/scripts/animations/ani_emotes.rpy @@ -0,0 +1,92 @@ + +# Emotes + +image emo_exclaim: + "characters/emotes/animated/exlaim_01.webp" + pause.1 + "characters/emotes/animated/exlaim_02.webp" + pause.1 + "characters/emotes/animated/exlaim_03.webp" + pause.1 + "characters/emotes/animated/exlaim_04.webp" + pause.1 + "characters/emotes/animated/exlaim_03.webp" + pause 2 + "characters/emotes/animated/exlaim_05.webp" + pause.08 + "characters/emotes/animated/exlaim_06.webp" + pause.08 + "characters/emotes/animated/exlaim_07.webp" + +image emo_sad: + "characters/emotes/animated/exlaim_01.webp" + pause.1 + "characters/emotes/animated/sad_01.webp" + pause.1 + "characters/emotes/animated/sad_02.webp" + pause.1 + "characters/emotes/animated/sad_03.webp" + pause 1 + "characters/emotes/animated/sad_04.webp" + pause.1 + "characters/emotes/animated/sad_03.webp" + pause.1 + "characters/emotes/animated/sad_04.webp" + pause.1 + "characters/emotes/animated/sad_03.webp" + pause 3 + "characters/emotes/animated/sad_02.webp" + pause.1 + "characters/emotes/animated/sad_01.webp" + pause.1 + "characters/emotes/animated/exlaim_07.webp" + +image emo_hoot: + "characters/emotes/animated/hoot_01.webp" + pause.07 + "characters/emotes/animated/hoot_02.webp" + pause.07 + "characters/emotes/animated/hoot_03.webp" + pause.07 + "characters/emotes/animated/hoot_04.webp" + pause.07 + "characters/emotes/animated/hoot_05.webp" + pause.07 + "characters/emotes/animated/hoot_06.webp" + pause.07 + "characters/emotes/animated/hoot_07.webp" + pause 3 + "characters/emotes/animated/exlaim_07.webp" + +image emo_thought: + "characters/emotes/animated/thought_02.webp" + pause.5 + "characters/emotes/animated/thought_01.webp" + pause.5 + repeat + +image emo_hearts: + zoom 0.5 + offset (-60, 90) + "characters/emotes/animated/heart_01.webp" + +# Not an emote... +image notes: + "images/animation/notes_01.webp" + pause.08 + "images/animation/notes_02.webp" + pause.08 + "images/animation/notes_03.webp" + pause.08 + "images/animation/notes_04.webp" + pause.08 + "images/animation/notes_05.webp" + pause.08 + "images/animation/notes_06.webp" + pause.08 + "images/animation/notes_07.webp" + pause.08 + "images/animation/notes_08.webp" + pause.08 + "images/animation/notes_09.webp" + pause.08 diff --git a/game/scripts/animations/ani_genie.rpy b/game/scripts/animations/ani_genie.rpy new file mode 100644 index 00000000..f1ce3a78 --- /dev/null +++ b/game/scripts/animations/ani_genie.rpy @@ -0,0 +1,523 @@ + +# Genie chibi images (one for each action) + +image ch_gen stand: + "characters/genie/chibis/stand.webp" + +image ch_gen stand_alt: + "characters/genie/chibis/stand_alt.webp" + +image ch_gen stand_by_desk: + "characters/genie/chibis/stand_by_desk.webp" + +image ch_gen stand_shocked: + "characters/genie/chibis/shocked/01.webp" + +image ch_gen sneeze: + "characters/genie/chibis/sneeze.webp" + +image ch_gen walk: + "characters/genie/chibis/walk_01.webp" + pause.18 + "characters/genie/chibis/walk_02.webp" + pause.18 + "characters/genie/chibis/walk_03.webp" + pause.18 + "characters/genie/chibis/walk_04.webp" + pause.18 + repeat + +image ch_gen rummage: + "characters/genie/chibis/rummage/rum_01.webp" + pause.3 + "characters/genie/chibis/rummage/rum_02.webp" + pause.3 + "characters/genie/chibis/rummage/rum_03.webp" + pause.3 + "characters/genie/chibis/rummage/rum_04.webp" + pause 1 + "characters/genie/chibis/rummage/rum_03.webp" + pause.3 + "characters/genie/chibis/rummage/rum_02.webp" + pause.3 + repeat + +image ch_gen sit_behind_desk: + zoom 0.5 + + "characters/genie/chibis/idle/desk_01.webp" + pause.1 + "characters/genie/chibis/idle/desk_02.webp" + pause.1 + "characters/genie/chibis/idle/desk_03.webp" + pause.1 + "characters/genie/chibis/idle/desk_02.webp" + pause.1 + "characters/genie/chibis/idle/desk_01.webp" + pause 5 + "characters/genie/chibis/idle/desk_01.webp" + pause.15 + "characters/genie/chibis/idle/desk_04.webp" + pause.15 + "characters/genie/chibis/idle/desk_01.webp" + pause.15 + "characters/genie/chibis/idle/desk_04.webp" + pause.15 + "characters/genie/chibis/idle/desk_01.webp" + pause 6 + repeat + +image ch_gen sit_behind_desk_hover: + zoom 0.5 + + "characters/genie/chibis/idle/desk_hover.webp" + +image ch_gen sit_in_chair: + zoom 0.5 + + "characters/genie/chibis/sit.webp" + +# Working +image ch_gen paperwork: + "characters/genie/chibis/working/01.webp" + pause.15 + "characters/genie/chibis/working/02.webp" + pause.15 + "characters/genie/chibis/working/01.webp" + pause.15 + "characters/genie/chibis/working/02.webp" + pause.15 + "characters/genie/chibis/working/01.webp" + pause.15 + "characters/genie/chibis/working/02.webp" + pause 1 + "characters/genie/chibis/working/03.webp" + pause.15 + "characters/genie/chibis/working/04.webp" + pause.15 + "characters/genie/chibis/working/05.webp" + pause.15 + "characters/genie/chibis/working/06.webp" + pause.15 + "characters/genie/chibis/working/05.webp" + pause.15 + "characters/genie/chibis/working/06.webp" + pause.15 + "characters/genie/chibis/working/05.webp" + pause.15 + "characters/genie/chibis/working/06.webp" + pause 1 + "characters/genie/chibis/working/07.webp" + pause.15 + "characters/genie/chibis/working/08.webp" + pause.15 + "characters/genie/chibis/working/09.webp" + pause.15 + "characters/genie/chibis/working/08.webp" + pause.15 + "characters/genie/chibis/working/07.webp" + pause.15 + "characters/genie/chibis/working/08.webp" + pause.15 + "characters/genie/chibis/working/09.webp" + pause.15 + "characters/genie/chibis/working/08.webp" + pause.15 + "characters/genie/chibis/working/03.webp" + pause.15 + "characters/genie/chibis/working/02.webp" + pause.15 + repeat + +image ch_gen paperwork_idle: + "characters/genie/chibis/working/01.webp" + +# Reading +image ch_gen read: + xzoom -1 + # Page flip direction matters! + "characters/genie/chibis/reading/01.webp" + pause 2 + "characters/genie/chibis/reading/02.webp" + pause.15 + "characters/genie/chibis/reading/03.webp" + pause.15 + "characters/genie/chibis/reading/04.webp" + pause.15 + "characters/genie/chibis/reading/05.webp" + pause.15 + "characters/genie/chibis/reading/06.webp" + pause.15 + "characters/genie/chibis/reading/01.webp" + pause 2 + repeat + +image ch_gen read_near_fire: + # Page flip direction matters! + "characters/genie/chibis/reading/01.webp" + pause 2 + "characters/genie/chibis/reading/06.webp" + pause.15 + "characters/genie/chibis/reading/05.webp" + pause.15 + "characters/genie/chibis/reading/04.webp" + pause.15 + "characters/genie/chibis/reading/03.webp" + pause.15 + "characters/genie/chibis/reading/02.webp" + pause.15 + "characters/genie/chibis/reading/01.webp" + pause 2 + repeat + +image ch_gen read_done: + xzoom -1 + "characters/genie/chibis/reading/07.webp" + +image ch_gen read_near_fire_done: + "characters/genie/chibis/reading/07.webp" + +# Drinking +image ch_gen toast_goblet: + zoom 0.5 + + "characters/genie/chibis/drinking/01.webp" + pause 2 + "characters/genie/chibis/drinking/02.webp" + pause.2 + "characters/genie/chibis/drinking/03.webp" + pause.2 + "characters/genie/chibis/drinking/04.webp" + pause 1 + "characters/genie/chibis/drinking/03.webp" + pause.2 + "characters/genie/chibis/drinking/01.webp" + pause 3 + repeat + +image ch_gen toast_goblet_daytime: + zoom 0.5 + + "characters/genie/chibis/drinking/01_day.webp" + pause 2 + "characters/genie/chibis/drinking/02_day.webp" + pause.2 + "characters/genie/chibis/drinking/03_day.webp" + pause.2 + "characters/genie/chibis/drinking/04_day.webp" + pause 1 + "characters/genie/chibis/drinking/03_day.webp" + pause.2 + "characters/genie/chibis/drinking/01_day.webp" + pause 3 + repeat + +# Masturbating behind desk +image ch_gen jerk_off_behind_desk: + "characters/genie/chibis/jerk_off_behind_desk/desk_01.webp" + pause.2 + "characters/genie/chibis/jerk_off_behind_desk/desk_02.webp" + pause.2 + "characters/genie/chibis/jerk_off_behind_desk/desk_03.webp" + pause.2 + "characters/genie/chibis/jerk_off_behind_desk/desk_02.webp" + pause.2 + repeat + +image ch_gen cum_behind_desk: + size (608,524) + contains: + "ch_gen jerk_off_behind_desk" + contains: + zoom 2 + alpha 1 + "characters/genie/chibis/jerk_off_behind_desk/desk_sperm_01.webp" + pause.1 + "characters/genie/chibis/jerk_off_behind_desk/desk_sperm_02.webp" + pause.1 + "characters/genie/chibis/jerk_off_behind_desk/desk_sperm_03.webp" + pause.1 + "characters/genie/chibis/jerk_off_behind_desk/desk_sperm_04.webp" + pause.1 + "characters/genie/chibis/jerk_off_behind_desk/desk_sperm_05.webp" + pause.1 + "characters/genie/chibis/jerk_off_behind_desk/desk_sperm_06.webp" + pause.1 + "characters/genie/chibis/jerk_off_behind_desk/desk_sperm_07.webp" + pause.1 + "characters/genie/chibis/jerk_off_behind_desk/desk_sperm_08.webp" + pause.1 + "characters/genie/chibis/jerk_off_behind_desk/desk_sperm_09.webp" + pause.1 + "characters/genie/chibis/jerk_off_behind_desk/desk_sperm_10.webp" + pause.1 + "characters/genie/chibis/jerk_off_behind_desk/desk_sperm_11.webp" + pause 2 + linear .2 alpha 0 + pause .5 + repeat + +image ch_gen jerk_off_behind_desk_pause: + "characters/genie/chibis/jerk_off_behind_desk/desk_pause.webp" + +image ch_gen cum_behind_desk_done: + size (608,524) + contains: + zoom 2 + "ch_gen sit_behind_desk" + contains: + zoom 2 + "characters/genie/chibis/jerk_off_behind_desk/desk_sperm_11.webp" + +image ch_gen dick_out: + "characters/genie/chibis/jerk_off/dick_out.webp" + +image ch_gen dick_out_normal: + "characters/genie/chibis/jerk_off/dick_out_normal.webp" + +image ch_gen dick_out_shocked: + "characters/genie/chibis/jerk_off/dick_out_shocked.webp" + +# Masturbating while standing +#TODO Genie's standing jerk off chibis don't stand level with the others. Fix this and check/correct relevant events +image ch_gen hold_dick: + "characters/genie/chibis/jerk_off/03.webp" + +image ch_gen jerk_off: + "characters/genie/chibis/jerk_off/01.webp" + pause.2 + "characters/genie/chibis/jerk_off/02.webp" + pause.2 + "characters/genie/chibis/jerk_off/03.webp" + pause.2 + "characters/genie/chibis/jerk_off/04.webp" + pause.2 + repeat + +image ch_gen cum: + size (300,500) + contains: + "ch_gen jerk_off" + contains: + offset (-760, -370) + zoom 2 + alpha 1 + "characters/genie/chibis/jerk_off/sperm_wide_01.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_02.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_03.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_04.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_05.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_06.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_07.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_08.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_09.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_10.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_11.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_12.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_13.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_14.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_15.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_16.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_17.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_wide_18.webp" + pause 2 + linear .2 alpha 0 + pause .5 + repeat + +image ch_gen cum_done: + size (300,500) + contains: + "characters/genie/chibis/jerk_off/02.webp" + contains: + offset (-760, -370) + zoom 2 + "characters/genie/chibis/jerk_off/sperm_wide_18.webp" + +image ch_gen cum_close: + size (300,500) + contains: + "ch_gen jerk_off" + contains: + offset (-760, -370) + zoom 2 + alpha 1 + "characters/genie/chibis/jerk_off/sperm_short_01.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_02.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_03.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_04.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_05.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_06.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_07.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_08.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_09.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_10.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_11.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_12.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_13.webp" + pause 3 + linear .2 alpha 0 + repeat + +image ch_gen cum_close_bottomless: + size (300,500) + contains: + "ch_gen jerk_off" + contains: + offset (-760, -370) + zoom 2 + alpha 1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_01.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_02.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_03.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_04.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_05.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_06.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_07.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_08.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_09.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_10.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_11.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_12.webp" + pause.1 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_13.webp" + pause 3 + linear .2 alpha 0 + repeat + +image ch_gen cum_close_done: + size (300,500) + contains: + "characters/genie/chibis/jerk_off/02.webp" + contains: + offset (-760, -370) + zoom 2 + "characters/genie/chibis/jerk_off/sperm_short_13.webp" + +image ch_gen cum_close_bottomless_done: + size (300,500) + contains: + "characters/genie/chibis/jerk_off/02.webp" + contains: + offset (-760, -370) + zoom 2 + "characters/genie/chibis/jerk_off/sperm_short_bottomless_13.webp" + +# Grabbing +#TODO Fix positions for grab and petting (make consistent with other images and adjust in events) +image ch_gen grab_mid: + anchor (0.5, 0.5) # Workaround for position + "characters/genie/chibis/grab/grab_01.webp" + pause.5 + "characters/genie/chibis/grab/grab_02.webp" + pause.1 + "characters/genie/chibis/grab/grab_03.webp" + pause.7 + "characters/genie/chibis/grab/grab_02.webp" + pause.1 + "characters/genie/chibis/grab/grab_01.webp" + +image ch_gen grab_high: + anchor (0.5, 0.5) # Workaround for position (feeding bird) + "characters/genie/chibis/grab/grab_01.webp" + pause.5 + "characters/genie/chibis/grab/grab_02.webp" + pause.1 + "characters/genie/chibis/grab/grab_03.webp" + pause.1 + "characters/genie/chibis/grab/grab_04.webp" + pause.1 + "characters/genie/chibis/grab/grab_05.webp" + pause.5 + "characters/genie/chibis/grab/grab_03.webp" + pause.1 + "characters/genie/chibis/grab/grab_02.webp" + pause.1 + "characters/genie/chibis/grab/grab_01.webp" + +image ch_gen petting: + anchor (0.5, 0.5) # Workaround for position (petting bird) + "characters/genie/chibis/petting/petting_01.webp" + pause 1 + "characters/genie/chibis/petting/petting_02.webp" + pause.1 + "characters/genie/chibis/petting/petting_03.webp" + pause.1 + "characters/genie/chibis/petting/petting_04.webp" + pause.1 + "characters/genie/chibis/petting/petting_05.webp" + pause.1 + "characters/genie/chibis/petting/petting_06.webp" + pause.2 + "characters/genie/chibis/petting/petting_05.webp" + pause.2 + "characters/genie/chibis/petting/petting_06.webp" + pause.2 + "characters/genie/chibis/petting/petting_05.webp" + pause.2 + "characters/genie/chibis/petting/petting_06.webp" + pause.2 + "characters/genie/chibis/petting/petting_05.webp" + pause.2 + "characters/genie/chibis/petting/petting_04.webp" + pause.1 + "characters/genie/chibis/petting/petting_03.webp" + pause.1 + "characters/genie/chibis/petting/petting_02.webp" + pause.1 + "characters/genie/chibis/petting/petting_01.webp" + pause 3 + repeat + +image ch_gen grab_low: # Used in pizza mirror event + xzoom -1 # Flip fix + offset (20, 58) # pos fix + "characters/genie/chibis/grab/grab_01.webp" + pause.5 + "characters/genie/chibis/grab/grab_02.webp" + pause.1 + "characters/genie/chibis/grab/grab_03.webp" + pause.7 + "characters/genie/chibis/grab/grab_02.webp" + pause.1 + "characters/genie/chibis/grab/grab_01.webp" diff --git a/game/scripts/animations/ani_hermione.rpy b/game/scripts/animations/ani_hermione.rpy new file mode 100644 index 00000000..00264add --- /dev/null +++ b/game/scripts/animations/ani_hermione.rpy @@ -0,0 +1,610 @@ +# Hermione Solo Animations +image ch_hem blink: + random_blink("characters/hermione/chibis/walk/h_walk_a_06.webp", "characters/hermione/chibis/walk/h_walk_a_01.webp") + +image ch_hem hold_potion: + xoffset -59 + yoffset -4 + "characters/hermione/chibis/potion/drink_1.webp" + pause 4 + "characters/hermione/chibis/potion/drink_2.webp" + pause 0.2 + repeat + +image ch_hem hold_potion_nude: + xoffset -59 + yoffset -4 + "characters/hermione/chibis/potion/drink_nude_1.webp" + pause 4 + "characters/hermione/chibis/potion/drink_nude_2.webp" + pause 0.2 + repeat + +image ch_hem sniff_potion: + xoffset -59 + yoffset -4 + "characters/hermione/chibis/potion/drink_3.webp" + +image ch_hem sniff_potion_nude: + xoffset -59 + yoffset -4 + "characters/hermione/chibis/potion/drink_nude_3.webp" + +image ch_hem drink_potion: + xoffset -59 + yoffset -4 + "characters/hermione/chibis/potion/drink_1.webp" + pause 0.2 + "characters/hermione/chibis/potion/drink_2.webp" + pause 0.2 + "characters/hermione/chibis/potion/drink_3.webp" + pause 0.2 + "characters/hermione/chibis/potion/drink_4.webp" + pause 0.5 + "characters/hermione/chibis/potion/drink_5.webp" + pause 0.1 + "characters/hermione/chibis/potion/drink_6.webp" + pause 0.1 + "characters/hermione/chibis/potion/drink_7.webp" + +image ch_hem drink_potion_nude: + xoffset -59 + yoffset -4 + "characters/hermione/chibis/potion/drink_nude_1.webp" + pause 0.2 + "characters/hermione/chibis/potion/drink_nude_2.webp" + pause 0.2 + "characters/hermione/chibis/potion/drink_nude_3.webp" + pause 0.2 + "characters/hermione/chibis/potion/drink_nude_4.webp" + pause 0.5 + "characters/hermione/chibis/potion/drink_nude_5.webp" + pause 0.1 + "characters/hermione/chibis/potion/drink_nude_6.webp" + pause 0.1 + "characters/hermione/chibis/potion/drink_nude_7.webp" + +image ch_hem walk: #shirt 00 + "characters/hermione/chibis/walk/h_walk_a_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_a_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_a_03.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_a_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_a_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_a_04.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_a_05.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_a_04.webp" + pause.08 + repeat + +image ch_hem blink_a: + random_blink("characters/hermione/chibis/walk/h_walk_a_06.webp", "characters/hermione/chibis/walk/h_walk_a_01.webp") + +image ch_hem walk_b: #shirt 00.1 + "characters/hermione/chibis/walk/h_walk_b_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_b_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_b_03.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_b_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_b_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_b_04.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_b_05.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_b_04.webp" + pause.08 + repeat + +image ch_hem blink_b: + random_blink("characters/hermione/chibis/walk/h_walk_b_06.webp", "characters/hermione/chibis/walk/h_walk_b_01.webp") + +image ch_hem walk_c: #shirt 00.2 + "characters/hermione/chibis/walk/h_walk_c_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_c_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_c_03.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_c_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_c_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_c_04.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_c_05.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_c_04.webp" + pause.08 + repeat + +image ch_hem blink_c: + random_blink("characters/hermione/chibis/walk/h_walk_c_06.webp", "characters/hermione/chibis/walk/h_walk_c_01.webp") + +image ch_hem walk_d: #shirt 01 + "characters/hermione/chibis/walk/h_walk_d_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_d_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_d_03.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_d_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_d_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_d_04.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_d_05.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_d_04.webp" + pause.08 + repeat + +image ch_hem blink_d: + random_blink("characters/hermione/chibis/walk/h_walk_d_06.webp", "characters/hermione/chibis/walk/h_walk_d_01.webp") + +image ch_hem walk_e: #shirt 02 + "characters/hermione/chibis/walk/h_walk_e_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_e_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_e_03.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_e_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_e_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_e_04.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_e_05.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_e_04.webp" + pause.08 + repeat + +image ch_hem blink_e: + random_blink("characters/hermione/chibis/walk/h_walk_e_06.webp", "characters/hermione/chibis/walk/h_walk_e_01.webp") + +image ch_hem walk_f: #shirt 03 + "characters/hermione/chibis/walk/h_walk_f_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_f_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_f_03.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_f_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_f_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_f_04.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_f_05.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_f_04.webp" + pause.08 + repeat + +image ch_hem blink_f: + random_blink("characters/hermione/chibis/walk/h_walk_f_06.webp", "characters/hermione/chibis/walk/h_walk_f_01.webp") + +image ch_hem walk_g: #shirt 04 + "characters/hermione/chibis/walk/h_walk_g_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_g_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_g_03.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_g_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_g_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_g_04.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_g_05.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_g_04.webp" + pause.08 + repeat + +image ch_hem blink_g: + random_blink("characters/hermione/chibis/walk/h_walk_g_06.webp", "characters/hermione/chibis/walk/h_walk_g_01.webp") + +image ch_hem walk_h: #shirt 05 + "characters/hermione/chibis/walk/h_walk_h_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_h_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_h_03.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_h_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_h_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_h_04.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_h_05.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_h_04.webp" + pause.08 + repeat + +image ch_hem blink_h: + random_blink("characters/hermione/chibis/walk/h_walk_h_06.webp", "characters/hermione/chibis/walk/h_walk_h_01.webp") + +image ch_hem walk_n: #no shirt + "characters/hermione/chibis/walk/h_walk_n_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_n_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_n_03.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_n_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_n_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_n_04.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_n_05.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_n_04.webp" + pause.08 + repeat + +image ch_hem blink_n: + random_blink("characters/hermione/chibis/walk/h_walk_n_06.webp", "characters/hermione/chibis/walk/h_walk_n_01.webp") + +image ch_hem walk_robe: #hermione walking in robe + "characters/hermione/chibis/walk/h_walk_robe_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_03.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_04.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_05.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_04.webp" + pause.08 + repeat + +image ch_hem blink_robe: + "characters/hermione/chibis/walk/h_walk_robe_01.webp" + pause 2 + "characters/hermione/chibis/walk/h_walk_robe_01_blink.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_01.webp" + pause 5 + "characters/hermione/chibis/walk/h_walk_robe_01_blink.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_01_blink.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_01.webp" + pause 3 + repeat + +image ch_hem walk_robe_n: #hermione walking in robe naked + "characters/hermione/chibis/walk/h_walk_robe_n_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_n_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_n_03.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_n_02.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_n_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_n_04.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_n_05.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_n_04.webp" + pause.08 + repeat + +image ch_hem blink_robe_n: + "characters/hermione/chibis/walk/h_walk_robe_n_01.webp" + pause 2 + "characters/hermione/chibis/walk/h_walk_robe_n_01_blink.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_n_01.webp" + pause 5 + "characters/hermione/chibis/walk/h_walk_robe_n_01_blink.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_n_01.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_n_01_blink.webp" + pause.08 + "characters/hermione/chibis/walk/h_walk_robe_n_01.webp" + pause 3 + repeat + +image ch_hem run: + "characters/hermione/chibis/run/h_run_01.webp" + pause.07 + "characters/hermione/chibis/run/h_run_02.webp" + pause.07 + "characters/hermione/chibis/run/h_run_03.webp" + pause.07 + "characters/hermione/chibis/run/h_run_02.webp" + pause.07 + "characters/hermione/chibis/run/h_run_01.webp" + pause.07 + "characters/hermione/chibis/run/h_run_04.webp" + pause.07 + "characters/hermione/chibis/run/h_run_05.webp" + pause.07 + "characters/hermione/chibis/run/h_run_04.webp" + pause.07 + repeat + +image ch_hem fly_a: + "characters/hermione/chibis/broom/shime13a.webp" + pause.1 + "characters/hermione/chibis/broom/shime13b.webp" + pause.1 + "characters/hermione/chibis/broom/shime13c.webp" + pause.1 + "characters/hermione/chibis/broom/shime13d.webp" + pause.2 + "characters/hermione/chibis/broom/shime13c.webp" + pause.1 + "characters/hermione/chibis/broom/shime13b.webp" + pause.2 + "characters/hermione/chibis/broom/shime13c.webp" + pause.1 + "characters/hermione/chibis/broom/shime13b.webp" + pause.1 + repeat + +image ch_hem kneel: + "characters/hermione/chibis/kneel/1.webp" + +image ch_hem kneel_pant: + "characters/hermione/chibis/kneel/1.webp" + pause 1 + "characters/hermione/chibis/kneel/2.webp" + pause 1 + repeat + +image ch_hem sit: + #TODO Make chibi blink + #TODO Draw and add clothing layers (not really a priority unless required for some event) + # zoom 0.8 # chibi image is slightly too big? + "characters/hermione/chibis/sitting/sit_naked_blink.webp" + +image ch_hem sit_naked: + #TODO Make chibi blink + # zoom 0.8 # chibi image is slightly too big? + "characters/hermione/chibis/sitting/sit_naked_blink.webp" + +image ch_hem sit_naked_shocked: + # zoom 0.8 # chibi image is slightly too big? + "characters/hermione/chibis/sitting/sit_naked.webp" + +image ch_hem hit_head: + "characters/hermione/chibis/hit_on_head/01.webp" + pause.1 + "characters/hermione/chibis/hit_on_head/02.webp" + pause.1 + "characters/hermione/chibis/hit_on_head/03.webp" + pause.1 + "characters/hermione/chibis/hit_on_head/04.webp" + pause.1 + repeat + +image ch_hem lying: + zoom 2.1 #TODO Upscale image (maybe make it less flat as well?) + "characters/hermione/chibis/lying/shime21.webp" + +### HERMIONE DANCING ### +image clothed_dance_ani: # Fully clothed + "characters/hermione/chibis/dance/01_dancing_01.webp" + pause.1 + "characters/hermione/chibis/dance/01_dancing_02.webp" + pause.1 + "characters/hermione/chibis/dance/01_dancing_03.webp" + pause.1 + "characters/hermione/chibis/dance/01_dancing_04.webp" + pause.1 + repeat + +image no_vest_dance_ani: # No vest + "characters/hermione/chibis/dance/02_no_vest_01.webp" + pause.1 + "characters/hermione/chibis/dance/02_no_vest_02.webp" + pause.1 + "characters/hermione/chibis/dance/02_no_vest_03.webp" + pause.1 + "characters/hermione/chibis/dance/02_no_vest_04.webp" + pause.1 + repeat + +image no_skirt_dance_ani: # No skirt + "characters/hermione/chibis/dance/04_no_skirt_01.webp" + pause.1 + "characters/hermione/chibis/dance/04_no_skirt_02.webp" + pause.1 + "characters/hermione/chibis/dance/04_no_skirt_03.webp" + pause.1 + "characters/hermione/chibis/dance/04_no_skirt_04.webp" + pause.1 + repeat + +image no_shirt_dance_ani: # No shirt + "characters/hermione/chibis/dance/03_no_shirt_01.webp" + pause.1 + "characters/hermione/chibis/dance/03_no_shirt_02.webp" + pause.1 + "characters/hermione/chibis/dance/03_no_shirt_03.webp" + pause.1 + "characters/hermione/chibis/dance/03_no_shirt_04.webp" + pause.1 + "characters/hermione/chibis/dance/03_no_shirt_05.webp" + pause.1 + "characters/hermione/chibis/dance/03_no_shirt_06.webp" + pause.1 + "characters/hermione/chibis/dance/03_no_shirt_07.webp" + pause.1 + "characters/hermione/chibis/dance/03_no_shirt_08.webp" + pause.1 + "characters/hermione/chibis/dance/03_no_shirt_09.webp" + pause.1 + repeat + +image no_shirt_no_skirt_dance_ani: # No shirt, no skirt + "characters/hermione/chibis/dance/05_panties_01.webp" + pause.1 + "characters/hermione/chibis/dance/05_panties_02.webp" + pause.1 + "characters/hermione/chibis/dance/05_panties_03.webp" + pause.1 + "characters/hermione/chibis/dance/05_panties_04.webp" + pause.1 + "characters/hermione/chibis/dance/05_panties_05.webp" + pause.1 + "characters/hermione/chibis/dance/05_panties_06.webp" + pause.1 + "characters/hermione/chibis/dance/05_panties_07.webp" + pause.1 + "characters/hermione/chibis/dance/05_panties_08.webp" + pause.1 + "characters/hermione/chibis/dance/05_panties_09.webp" + pause.1 + repeat + +image no_shirt_no_skirt_dance_pause: + "characters/hermione/chibis/dance/05_panties_01.webp" + +image no_panties_dance_ani: # No panties + "characters/hermione/chibis/dance/07_dance_01.webp" + pause.1 + "characters/hermione/chibis/dance/07_dance_02.webp" + pause.1 + "characters/hermione/chibis/dance/07_dance_03.webp" + pause.1 + "characters/hermione/chibis/dance/07_dance_04.webp" + pause.1 + "characters/hermione/chibis/dance/07_dance_05.webp" + pause.1 + "characters/hermione/chibis/dance/07_dance_06.webp" + pause.1 + "characters/hermione/chibis/dance/07_dance_07.webp" + pause.1 + "characters/hermione/chibis/dance/07_dance_08.webp" + pause.1 + "characters/hermione/chibis/dance/07_dance_09.webp" + pause.1 + repeat + +image no_panties_dance_pause: + "characters/hermione/chibis/dance/07_dance_01.webp" + +image ch_hem lift_top: + zoom 0.92 # chibi is slightly too big + xoffset -84 + yoffset -18 + + "characters/hermione/chibis/lift_top/boing01.webp" + pause 1 + "characters/hermione/chibis/lift_top/boing01.webp" + pause .22 + "characters/hermione/chibis/lift_top/boing02.webp" + pause .22 + "characters/hermione/chibis/lift_top/boing03.webp" + pause .22 + "characters/hermione/chibis/lift_top/boing04.webp" + pause .22 + "characters/hermione/chibis/lift_top/boing05.webp" + pause 1 + # End with blink loop + random_blink("characters/hermione/chibis/lift_top/boing06.webp", "characters/hermione/chibis/lift_top/boing05.webp") + +image ch_hem reading: + "characters/hermione/chibis/reading/0.webp" + pause.15 + "characters/hermione/chibis/reading/1.webp" + pause.15 + "characters/hermione/chibis/reading/2.webp" + pause.15 + "characters/hermione/chibis/reading/3.webp" + pause.15 + "characters/hermione/chibis/reading/4.webp" + pause.15 + "characters/hermione/chibis/reading/0.webp" + pause.5 + "characters/hermione/chibis/reading/5.webp" + pause.5 + "characters/hermione/chibis/reading/0.webp" + pause.15 + repeat + +image ch_hem reading sleep: + "characters/hermione/chibis/reading/0_sleep.webp" + pause.15 + "characters/hermione/chibis/reading/1_sleep.webp" + pause.15 + repeat + +image ch_hem ribbon: + zoom 0.5 + anchor (0.5, 1.0) + + "characters/hermione/chibis/ribbon/default.webp" + pause 2 + "characters/hermione/chibis/ribbon/blink.webp" + pause.08 + "characters/hermione/chibis/ribbon/default.webp" + pause 5 + "characters/hermione/chibis/ribbon/blink.webp" + pause.08 + "characters/hermione/chibis/ribbon/default.webp" + pause.08 + "characters/hermione/chibis/ribbon/blink.webp" + pause.08 + "characters/hermione/chibis/ribbon/default.webp" + pause 3 + repeat + +image ch_hem masturbate_blink: + random_blink("characters/hermione/chibis/masturbate/blink.webp") + +image ch_hem masturbate_pause: + size (186, 372) + + contains: + "characters/hermione/chibis/masturbate/01.webp" + contains: + "ch_hem masturbate_blink" + +image ch_hem masturbate: + size (186, 372) + + contains: + "characters/hermione/chibis/masturbate/01.webp" + pause.5 + "characters/hermione/chibis/masturbate/02.webp" + pause.5 + repeat + contains: + "ch_hem masturbate_blink" + +image panties_on_the_ground: + anchor (0.5, 0.5) + zoom 0.25 + "characters/chibis/panties_on_the_groun.webp" diff --git a/game/scripts/animations/ani_hermione_favours.rpy b/game/scripts/animations/ani_hermione_favours.rpy new file mode 100644 index 00000000..ce76bad7 --- /dev/null +++ b/game/scripts/animations/ani_hermione_favours.rpy @@ -0,0 +1,1759 @@ + +image hj: + zoom 0.5 + + "characters/hermione/chibis/handjob/01.webp" + pause.1 + "characters/hermione/chibis/handjob/02.webp" + pause.1 + "characters/hermione/chibis/handjob/03.webp" + pause.1 + "characters/hermione/chibis/handjob/04.webp" + pause.1 + "characters/hermione/chibis/handjob/05.webp" + pause.1 + "characters/hermione/chibis/handjob/06.webp" + pause.1 + repeat + +image hj_pause: + zoom 0.5 + "characters/hermione/chibis/handjob/01.webp" + +image hj_cum_in: + zoom 0.5 + + "characters/hermione/chibis/handjob/sperm_under_01.webp" + pause 1 + "characters/hermione/chibis/handjob/sperm_under_02.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_under_03.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_under_04.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_under_05.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_under_06.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_under_07.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_under_08.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_under_09.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_under_10.webp" + pause 2 + "characters/hermione/chibis/handjob/sperm_under_11.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_under_12.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_under_13.webp" + pause.1 + repeat + +image hj_cum_in_done: + zoom 0.5 + "characters/hermione/chibis/handjob/sperm_under_13.webp" + +image hj_cum_on: + zoom 0.5 + + "characters/hermione/chibis/handjob/sperm_on_00.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_01.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_02.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_03.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_04.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_05.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_06.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_07.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_08.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_09.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_10.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_11.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_12.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_13.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_14.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_15.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_16.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_17.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_18.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_19.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_20.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_21.webp" + pause 1 + "characters/hermione/chibis/handjob/sperm_on_22.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_21.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_22.webp" + pause .1 + "characters/hermione/chibis/handjob/sperm_on_21.webp" + pause 1 + "characters/hermione/chibis/handjob/sperm_on_23.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_24.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_25.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_on_00.webp" + pause.7 + repeat + +image hj_cum_on_done: + zoom 0.5 + "characters/hermione/chibis/handjob/sperm_on_21.webp" + +image hj_kiss: + zoom 0.5 + + "characters/hermione/chibis/handjob/kiss_01.webp" + pause.1 + "characters/hermione/chibis/handjob/kiss_02.webp" + pause.1 + "characters/hermione/chibis/handjob/kiss_03.webp" + pause.1 + "characters/hermione/chibis/handjob/kiss_04.webp" + pause.1 + "characters/hermione/chibis/handjob/kiss_05.webp" + pause.1 + "characters/hermione/chibis/handjob/kiss_06.webp" + pause.1 + "characters/hermione/chibis/handjob/kiss_07.webp" + pause.1 + "characters/hermione/chibis/handjob/kiss_08.webp" + pause.1 + "characters/hermione/chibis/handjob/kiss_09.webp" + pause.1 + "characters/hermione/chibis/handjob/kiss_10.webp" + pause.1 + "characters/hermione/chibis/handjob/kiss_11.webp" + pause.1 + "characters/hermione/chibis/handjob/kiss_12.webp" + pause.1 + repeat + +image hj_kiss_cum: + zoom 0.5 + + "characters/hermione/chibis/handjob/sperm_kiss_01.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_kiss_02.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_kiss_03.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_kiss_04.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_kiss_05.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_kiss_06.webp" + pause.1 + "characters/hermione/chibis/handjob/sperm_kiss_07.webp" + pause.1 + repeat + +image sex_hotdog: + zoom 0.5 + "characters/hermione/chibis/sex/sperm_01.webp" + pause.3 + "characters/hermione/chibis/sex/sperm_02.webp" + pause.3 + "characters/hermione/chibis/sex/sperm_03.webp" + pause.3 + "characters/hermione/chibis/sex/sperm_04.webp" + pause 1 + "characters/hermione/chibis/sex/sperm_03.webp" + pause.3 + repeat + +image sex: + zoom 0.5 + + "characters/hermione/chibis/sex/01.webp" + pause.1 + "characters/hermione/chibis/sex/02.webp" + pause.1 + "characters/hermione/chibis/sex/03.webp" + pause.1 + "characters/hermione/chibis/sex/04.webp" + pause.1 + "characters/hermione/chibis/sex/05.webp" + pause.1 + "characters/hermione/chibis/sex/06.webp" + pause.1 + "characters/hermione/chibis/sex/07.webp" + pause.1 + repeat + +image sex_pause: + zoom 0.5 + "characters/hermione/chibis/sex/03.webp" + +image sex_slow: + zoom 0.5 + + "characters/hermione/chibis/sex/01.webp" + pause.15 + "characters/hermione/chibis/sex/02.webp" + pause.15 + "characters/hermione/chibis/sex/03.webp" + pause.15 + "characters/hermione/chibis/sex/04.webp" + pause.15 + "characters/hermione/chibis/sex/05.webp" + pause.15 + "characters/hermione/chibis/sex/06.webp" + pause.15 + "characters/hermione/chibis/sex/07.webp" + pause.15 + repeat + +image sex_fast: + zoom 0.5 + + "characters/hermione/chibis/sex/01.webp" + pause.05 + "characters/hermione/chibis/sex/02.webp" + pause.05 + "characters/hermione/chibis/sex/03.webp" + pause.05 + "characters/hermione/chibis/sex/04.webp" + pause.05 + "characters/hermione/chibis/sex/05.webp" + pause.05 + "characters/hermione/chibis/sex/06.webp" + pause.05 + "characters/hermione/chibis/sex/07.webp" + pause.05 + repeat + +image sex_cum_out: + zoom 0.5 + + "characters/hermione/chibis/sex/sperm_01.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_02.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_03.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_04.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_05.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_06.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_07.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_08.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_09.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_10.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_11.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_12.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_13.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_14.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_15.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_16.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_17.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_18.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_19.webp" + pause 2 + "characters/hermione/chibis/sex/sperm_20.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_21.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_22.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_23.webp" + pause.1 + repeat + +image sex_cum_out_done: + zoom 0.5 + + "characters/hermione/chibis/sex/sperm_19.webp" + pause 1 + "characters/hermione/chibis/sex/sperm_24.webp" # blink + pause.1 + "characters/hermione/chibis/sex/sperm_19.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_24.webp" # blink + pause.1 + "characters/hermione/chibis/sex/sperm_19.webp" + pause 2 + "characters/hermione/chibis/sex/sperm_24.webp" # blink + pause.1 + "characters/hermione/chibis/sex/sperm_19.webp" + pause 2 + repeat + +image sex_cum_in: + zoom 0.5 + + "characters/hermione/chibis/sex/creampie_01.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_02.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_03.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_04.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_05.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_06.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_07.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_08.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_09.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_10.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_11.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_12.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_13.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_14.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_15.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_16.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_17.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_18.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_19.webp" + pause 3 + "characters/hermione/chibis/sex/creampie_20.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_21.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_22.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_23.webp" + pause.1 + repeat + +image sex_cum_in_done: + zoom 0.5 + + "characters/hermione/chibis/sex/creampie_19.webp" + pause 1 + "characters/hermione/chibis/sex/creampie_24.webp" # blink + pause.1 + "characters/hermione/chibis/sex/creampie_19.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_24.webp" # blink + pause.1 + "characters/hermione/chibis/sex/creampie_19.webp" + pause 2 + "characters/hermione/chibis/sex/creampie_24.webp" # blink + pause.1 + "characters/hermione/chibis/sex/creampie_19.webp" + pause 2 + repeat + +image sex_naked: + zoom 0.5 + + "characters/hermione/chibis/sex/n_01.webp" + pause.1 + "characters/hermione/chibis/sex/n_02.webp" + pause.1 + "characters/hermione/chibis/sex/n_03.webp" + pause.1 + "characters/hermione/chibis/sex/n_04.webp" + pause.1 + "characters/hermione/chibis/sex/n_05.webp" + pause.1 + "characters/hermione/chibis/sex/n_06.webp" + pause.1 + "characters/hermione/chibis/sex/n_07.webp" + pause.1 + repeat + +image sex_naked_pause: + zoom 0.5 + "characters/hermione/chibis/sex/n_03.webp" + +image sex_naked_slow: + zoom 0.5 + + "characters/hermione/chibis/sex/n_01.webp" + pause.15 + "characters/hermione/chibis/sex/n_02.webp" + pause.15 + "characters/hermione/chibis/sex/n_03.webp" + pause.15 + "characters/hermione/chibis/sex/n_04.webp" + pause.15 + "characters/hermione/chibis/sex/n_05.webp" + pause.15 + "characters/hermione/chibis/sex/n_06.webp" + pause.15 + "characters/hermione/chibis/sex/n_07.webp" + pause.15 + repeat + +image sex_naked_fast: + zoom 0.5 + + "characters/hermione/chibis/sex/n_01.webp" + pause.05 + "characters/hermione/chibis/sex/n_02.webp" + pause.05 + "characters/hermione/chibis/sex/n_03.webp" + pause.05 + "characters/hermione/chibis/sex/n_04.webp" + pause.05 + "characters/hermione/chibis/sex/n_05.webp" + pause.05 + "characters/hermione/chibis/sex/n_06.webp" + pause.05 + "characters/hermione/chibis/sex/n_07.webp" + pause.05 + repeat + +image sex_naked_cum_out: + zoom 0.5 + + "characters/hermione/chibis/sex/sperm_n_01.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_02.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_03.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_04.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_05.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_06.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_07.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_08.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_09.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_10.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_11.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_12.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_13.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_14.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_15.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_16.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_17.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_18.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_19.webp" + pause 2 + "characters/hermione/chibis/sex/sperm_n_20.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_21.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_22.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_23.webp" + pause.1 + repeat + +image sex_naked_cum_out_done: + zoom 0.5 + + "characters/hermione/chibis/sex/sperm_n_19.webp" + pause 1 + "characters/hermione/chibis/sex/sperm_n_24.webp" # blink + pause.1 + "characters/hermione/chibis/sex/sperm_n_19.webp" + pause.1 + "characters/hermione/chibis/sex/sperm_n_24.webp" # blink + pause.1 + "characters/hermione/chibis/sex/sperm_n_19.webp" + pause 2 + "characters/hermione/chibis/sex/sperm_n_24.webp" # blink + pause.1 + "characters/hermione/chibis/sex/sperm_n_19.webp" + pause 2 + repeat + +image sex_naked_cum_in: + zoom 0.5 + + "characters/hermione/chibis/sex/creampie_n_01.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_02.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_03.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_04.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_05.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_06.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_07.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_08.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_09.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_10.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_11.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_12.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_13.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_14.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_15.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_16.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_17.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_18.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_19.webp" + pause 3 + "characters/hermione/chibis/sex/creampie_n_20.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_21.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_22.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_23.webp" + pause.1 + repeat + +image sex_naked_cum_in_done: + zoom 0.5 + + "characters/hermione/chibis/sex/creampie_n_19.webp" + pause 1 + "characters/hermione/chibis/sex/creampie_n_24.webp" # blink + pause.1 + "characters/hermione/chibis/sex/creampie_n_19.webp" + pause.1 + "characters/hermione/chibis/sex/creampie_n_24.webp" # blink + pause.1 + "characters/hermione/chibis/sex/creampie_n_19.webp" + pause 2 + "characters/hermione/chibis/sex/creampie_n_24.webp" # blink + pause.1 + "characters/hermione/chibis/sex/creampie_n_19.webp" + pause 2 + repeat + +image behind_desk_back: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/back.webp" + contains: + "desk_back_blink" + +image behind_desk_back_topless: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/back_topless.webp" + contains: + "desk_back_blink" + +image behind_desk_back_bottomless: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/back_bottomless.webp" + contains: + "desk_back_blink" + +image behind_desk_back_naked: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/back_naked.webp" + contains: + "desk_back_blink" + + +image behind_desk_front: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/front.webp" + contains: + "desk_front_blink" + +image behind_desk_front_topless: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/front_topless.webp" + contains: + "desk_front_blink" + +image behind_desk_front_bottomless: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/front_bottomless.webp" + contains: + "desk_front_blink" + +image behind_desk_front_naked: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/front_naked.webp" + contains: + "desk_front_blink" + +image behind_desk_front_show_tits: + contains: + pos (270+10,185) + "ch_gen sit_in_chair" + contains: + zoom 0.5 + "characters/hermione/chibis/behind_desk/lift_top.webp" + contains: + "desk_front_blink" + +image behind_desk_show_tits: + contains: + pos (270+10,185) + "ch_gen sit_in_chair" + contains: + zoom 0.5 + "characters/hermione/chibis/behind_desk/lift_top_alt.webp" + +image desk_back_blink: + random_blink("characters/hermione/chibis/behind_desk/back_blink.webp") + +image desk_front_blink: + random_blink("characters/hermione/chibis/behind_desk/front_blink.webp") + +image grope_ass_front: + zoom 0.5 + + contains: + "characters/hermione/chibis/grope_ass/front_01.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_02.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_03.webp" + pause.5 + "characters/hermione/chibis/grope_ass/front_02.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_01.webp" + pause.2 + repeat + + contains: + "desk_front_blink" + +image grope_ass_front_topless: + zoom 0.5 + + contains: + "characters/hermione/chibis/grope_ass/front_e_01.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_e_02.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_e_03.webp" + pause.5 + "characters/hermione/chibis/grope_ass/front_e_02.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_e_01.webp" + pause.2 + repeat + + contains: + "desk_front_blink" + +image grope_ass_front_topless_fast: + zoom 0.5 + "characters/hermione/chibis/grope_ass/front_e_01.webp" + pause.1 + "characters/hermione/chibis/grope_ass/front_e_02.webp" + pause.1 + "characters/hermione/chibis/grope_ass/front_e_03.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_e_02.webp" + pause.1 + "characters/hermione/chibis/grope_ass/front_e_01.webp" + pause.1 + repeat + +image grope_ass_front_bottomless: + zoom 0.5 + + contains: + "characters/hermione/chibis/grope_ass/front_g_01.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_g_02.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_g_03.webp" + pause.5 + "characters/hermione/chibis/grope_ass/front_g_02.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_g_01.webp" + pause.2 + repeat + + contains: + "desk_front_blink" + +image grope_ass_front_naked: + zoom 0.5 + + contains: + "characters/hermione/chibis/grope_ass/front_h_01.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_h_02.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_h_03.webp" + pause.5 + "characters/hermione/chibis/grope_ass/front_h_02.webp" + pause.2 + "characters/hermione/chibis/grope_ass/front_h_01.webp" + pause.2 + repeat + + contains: + "desk_front_blink" + +image grope_ass_back: + zoom 0.5 + + contains: + "characters/hermione/chibis/grope_ass/back_b_01.webp" + pause.2 + "characters/hermione/chibis/grope_ass/back_b_02.webp" + pause.2 + "characters/hermione/chibis/grope_ass/back_b_03.webp" + pause.5 + "characters/hermione/chibis/grope_ass/back_b_02.webp" + pause.2 + "characters/hermione/chibis/grope_ass/back_b_01.webp" + pause.2 + repeat + + contains: + "desk_back_blink" + +image grope_ass_back_topless: + zoom 0.5 + + contains: + "characters/hermione/chibis/grope_ass/back_d_01.webp" + pause .2 + "characters/hermione/chibis/grope_ass/back_d_02.webp" + pause .2 + "characters/hermione/chibis/grope_ass/back_d_03.webp" + pause .5 + "characters/hermione/chibis/grope_ass/back_d_02.webp" + pause .2 + "characters/hermione/chibis/grope_ass/back_d_01.webp" + pause .2 + repeat + + contains: + "desk_back_blink" + +image grope_ass_back_topless_fast: + zoom 0.5 + + contains: + "characters/hermione/chibis/grope_ass/back_d_01.webp" + pause.1 + "characters/hermione/chibis/grope_ass/back_d_02.webp" + pause.1 + "characters/hermione/chibis/grope_ass/back_d_03.webp" + pause.2 + "characters/hermione/chibis/grope_ass/back_d_02.webp" + pause.1 + "characters/hermione/chibis/grope_ass/back_d_01.webp" + pause.1 + repeat + + contains: + "desk_back_blink" + +image grope_ass_back_bottomless: + zoom 0.5 + + contains: + "characters/hermione/chibis/grope_ass/back_e_01.webp" + pause .2 + "characters/hermione/chibis/grope_ass/back_e_02.webp" + pause .2 + "characters/hermione/chibis/grope_ass/back_e_03.webp" + pause .5 + "characters/hermione/chibis/grope_ass/back_e_02.webp" + pause .2 + "characters/hermione/chibis/grope_ass/back_e_01.webp" + pause .2 + repeat + + contains: + "desk_back_blink" + +image grope_ass_back_naked: + zoom 0.5 + + contains: + "characters/hermione/chibis/grope_ass/back_f_01.webp" + pause .2 + "characters/hermione/chibis/grope_ass/back_f_02.webp" + pause .2 + "characters/hermione/chibis/grope_ass/back_f_03.webp" + pause .5 + "characters/hermione/chibis/grope_ass/back_f_02.webp" + pause .2 + "characters/hermione/chibis/grope_ass/back_f_01.webp" + pause .2 + repeat + + contains: + "desk_back_blink" + +image lie_on_desk: + zoom 0.5 + contains: + "characters/hermione/chibis/fingering/idle.webp" + contains: + "lie_on_desk_blink" + xoffset 2 + +image lie_on_desk_jerk_off: + zoom 0.5 + contains: + "characters/hermione/chibis/fingering/solo.webp" + contains: + "lie_on_desk_blink" + xoffset 2 + contains: + offset (560,380) + "ch_gen jerk_off" + +image lie_on_desk_cum: + zoom 0.5 + contains: + "characters/hermione/chibis/fingering/solo.webp" + contains: + "lie_on_desk_blink" + xoffset 2 + contains: + offset (560,380) + "ch_gen cum_close" + +image lie_on_desk_naked: + zoom 0.5 + contains: + "characters/hermione/chibis/fingering/n_idle.webp" + contains: + "lie_on_desk_blink" + xoffset 2 + +image lie_on_desk_naked_jerk_off: + zoom 0.5 + contains: + "characters/hermione/chibis/fingering/n_solo.webp" + contains: + "lie_on_desk_blink" + xoffset 2 + contains: + offset (560,380) + "ch_gen jerk_off" + +image lie_on_desk_naked_cum: + zoom 0.5 + contains: + "characters/hermione/chibis/fingering/n_solo.webp" + contains: + "lie_on_desk_blink" + xoffset 2 + contains: + offset (560,380) + "ch_gen cum_close" + +image lie_on_desk_blink: + random_blink("characters/hermione/chibis/fingering/blink.webp") + +image finger_naked: + zoom 0.5 + contains: + "characters/hermione/chibis/fingering/n_01.webp" + pause.1 + "characters/hermione/chibis/fingering/n_02.webp" + pause.1 + "characters/hermione/chibis/fingering/n_03.webp" + pause.1 + "characters/hermione/chibis/fingering/n_04.webp" + pause.1 + repeat + contains: + "lie_on_desk_blink" + # Sync blinking + xoffset 0 + pause .4 + xoffset 2 + pause .4 + xoffset 4 + pause .4 + xoffset 2 + pause .4 + repeat + +image finger_naked_slow: + zoom 0.5 + contains: + "characters/hermione/chibis/fingering/n_01.webp" + pause.3 + "characters/hermione/chibis/fingering/n_02.webp" + pause.3 + "characters/hermione/chibis/fingering/n_03.webp" + pause.3 + "characters/hermione/chibis/fingering/n_04.webp" + pause.3 + repeat + contains: + "lie_on_desk_blink" + # Sync blinking + xoffset 0 + pause .3 + xoffset 2 + pause .3 + xoffset 4 + pause .3 + xoffset 2 + pause .3 + repeat + +image finger_naked_pause: + zoom 0.5 + contains: + "characters/hermione/chibis/fingering/n_idle_touch.webp" + +image finger_naked_pause_ahegao: #Used after cumming as well + zoom 0.5 + contains: + "characters/hermione/chibis/fingering/n_cumming_02.webp" + +image finger_naked_cumming: + zoom 0.5 + contains: + "characters/hermione/chibis/fingering/n_cumming_01.webp" + pause .9 + "characters/hermione/chibis/fingering/n_cumming_02.webp" + pause .9 + repeat + + +image grope_on_podium_loop: + "characters/hermione/chibis/grope_ass_podium/grope_1.webp" + pause .2 + "characters/hermione/chibis/grope_ass_podium/grope_2.webp" + pause .2 + "characters/hermione/chibis/grope_ass_podium/grope_3.webp" + pause .5 + "characters/hermione/chibis/grope_ass_podium/grope_2.webp" + pause .2 + "characters/hermione/chibis/grope_ass_podium/grope_1.webp" + pause .2 + repeat + +image grope_on_podium: + zoom 0.5 + #size (282, 410) + contains: + "grope_on_podium_loop" + contains: + "grope_on_podium_blink" + +image grope_on_podium_idle: + zoom 0.5 + #size (282, 410) + contains: + "characters/hermione/chibis/grope_ass_podium/idle.webp" + contains: + "grope_on_podium_blink" + +image grope_on_podium_blink: + "images/animation/00.webp" + pause .1 + "characters/hermione/chibis/grope_ass_podium/blink.webp" + pause .1 + "images/animation/00.webp" + pause 3 + "characters/hermione/chibis/grope_ass_podium/blink.webp" + pause .1 + "images/animation/00.webp" + pause .1 + "characters/hermione/chibis/grope_ass_podium/blink.webp" + pause .1 + "images/animation/00.webp" + pause 3 + repeat + +image grope_on_podium_horny: + zoom 0.5 + contains: + "grope_on_podium_loop" + contains: + "characters/hermione/chibis/grope_ass_podium/horny.webp" + contains: + "grope_on_podium_blink" + +image grope_on_podium_close: + zoom 0.5 + contains: + "grope_on_podium_loop" + contains: + "characters/hermione/chibis/grope_ass_podium/close.webp" + contains: + "grope_on_podium_blink" + +image grope_on_podium_cum: + zoom 0.5 + contains: + "grope_on_podium_loop" + contains: + "characters/hermione/chibis/grope_ass_podium/cumming.webp" + contains: + "grope_on_podium_blink" + +image grope_tits: + zoom 0.5 + + "characters/hermione/chibis/grope_breasts/01.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/02.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/03.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/04.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/05.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/06.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/07.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/08.webp" + pause.2 + repeat + +image grope_tits_lift_top: + zoom 0.5 + + contains: + "characters/hermione/chibis/grope_breasts/bare_01.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_02.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_03.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_04.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_05.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_06.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_07.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_08.webp" + pause.2 + repeat + + contains: + "desk_front_blink" + +image grope_tits_topless: + zoom 0.5 + + contains: + "characters/hermione/chibis/grope_breasts/bare_n_01.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_n_02.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_n_03.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_n_04.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_n_05.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_n_06.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_n_07.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_n_08.webp" + pause.2 + repeat + + contains: + "desk_front_blink" + +image grope_tits_bottomless: + zoom 0.5 + + "characters/hermione/chibis/grope_breasts/bare_o_01.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_02.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_03.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_04.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_05.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_06.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_07.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_08.webp" + pause.2 + repeat + +image grope_tits_bottomless_lift_top: + zoom 0.5 + + contains: + "characters/hermione/chibis/grope_breasts/bare_o_lift_01.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_lift_02.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_lift_03.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_lift_04.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_lift_05.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_lift_06.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_lift_07.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_o_lift_08.webp" + pause.2 + repeat + + contains: + "desk_front_blink" + +image grope_tits_naked: + zoom 0.5 + + "characters/hermione/chibis/grope_breasts/bare_p_01.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_p_02.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_p_03.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_p_04.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_p_05.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_p_06.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_p_07.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/bare_p_08.webp" + pause.2 + repeat + +image grope_tits_jerk_off: + zoom 0.5 + + "characters/hermione/chibis/grope_breasts/masturbate_01.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_02.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_03.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_04.webp" + pause.2 + repeat + +image grope_tits_jerk_off_clothed: + zoom 0.5 + + "characters/hermione/chibis/grope_breasts/masturbate_clothed_01.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_clothed_02.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_clothed_03.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_clothed_04.webp" + pause.2 + repeat + +image grope_tits_jerk_off_topless: + zoom 0.5 + + "characters/hermione/chibis/grope_breasts/masturbate_topless_01.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_topless_02.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_topless_03.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_topless_04.webp" + pause.2 + repeat + +image grope_tits_jerk_off_bottomless: + zoom 0.5 + + "characters/hermione/chibis/grope_breasts/masturbate_bottomless_01.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_bottomless_02.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_bottomless_03.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_bottomless_04.webp" + pause.2 + repeat + +image grope tits_jerk_off_bottomless_lift_top: + zoom 0.5 + + "characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_01.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_02.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_03.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_bottomless_lift_top_04.webp" + pause.2 + repeat + +image grope tits_jerk_off_naked: + zoom 0.5 + + "characters/hermione/chibis/grope_breasts/masturbate_naked_01.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_naked_02.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_naked_03.webp" + pause.2 + "characters/hermione/chibis/grope_breasts/masturbate_naked_04.webp" + pause.2 + repeat + +image grope_tits_cum: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/lift_top.webp" + contains: + zoom 2 + "characters/hermione/chibis/behind_desk/front_eyes_down.webp" + contains: + "desk_front_blink" + contains: + pos (540,346) + xzoom -1 + "ch_gen cum_close" + +image grope_tits_cum_done: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/lift_top.webp" + contains: + zoom 2 + "characters/hermione/chibis/behind_desk/front_eyes_down.webp" + contains: + "desk_front_blink" + contains: + pos (540,346) + xzoom -1 + "ch_gen cum_close_done" + +image grope_tits_cum_clothed: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/clothed.webp" + contains: + zoom 2 + "characters/hermione/chibis/behind_desk/front_eyes_down.webp" + contains: + "desk_front_blink" + contains: + pos (540,346) + xzoom -1 + "ch_gen cum_close" + +image grope_tits_cum_clothed_done: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/clothed.webp" + contains: + zoom 2 + "characters/hermione/chibis/behind_desk/front_eyes_down.webp" + contains: + "desk_front_blink" + contains: + pos (540,346) + xzoom -1 + "ch_gen cum_close_done" + +image grope_tits_cum_topless: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/topless.webp" + contains: + zoom 2 + "characters/hermione/chibis/behind_desk/front_eyes_down.webp" + contains: + "desk_front_blink" + contains: + pos (540,346) + xzoom -1 + "ch_gen cum_close" + +image grope_tits_cum_topless_done: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/topless.webp" + contains: + zoom 2 + "characters/hermione/chibis/behind_desk/front_eyes_down.webp" + contains: + "desk_front_blink" + contains: + pos (540,346) + xzoom -1 + "ch_gen cum_close_done" + +image grope_tits_cum_bottomless: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/bottomless.webp" + contains: + zoom 2 + "characters/hermione/chibis/behind_desk/front_eyes_down.webp" + contains: + "desk_front_blink" + contains: + pos (540,346) + xzoom -1 + "ch_gen cum_close_bottomless" + +image grope_tits_cum_bottomless_done: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/bottomless.webp" + contains: + zoom 2 + "characters/hermione/chibis/behind_desk/front_eyes_down.webp" + contains: + "desk_front_blink" + contains: + pos (540,346) + xzoom -1 + "ch_gen cum_close_bottomless_done" + +image grope_tits_cum_bottomless_lift_top: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/bottomless_lift_top.webp" + contains: + zoom 2 + "characters/hermione/chibis/behind_desk/front_eyes_down.webp" + contains: + "desk_front_blink" + contains: + pos (540,346) + xzoom -1 + "ch_gen cum_close" + +image grope_tits_cum_bottomless_lift_top_done: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/bottomless_lift_top.webp" + contains: + zoom 2 + "characters/hermione/chibis/behind_desk/front_eyes_down.webp" + contains: + "desk_front_blink" + contains: + pos (540,346) + xzoom -1 + "ch_gen cum_close_done" + +image grope_tits_cum_naked: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/naked.webp" + contains: + zoom 2 + "characters/hermione/chibis/behind_desk/front_eyes_down.webp" + contains: + "desk_front_blink" + contains: + pos (540,346) + xzoom -1 + "ch_gen cum_close_bottomless" + +image grope_tits_cum_naked_done: + zoom 0.5 + contains: + "characters/hermione/chibis/behind_desk/naked.webp" + contains: + zoom 2 + "characters/hermione/chibis/behind_desk/front_eyes_down.webp" + contains: + "desk_front_blink" + contains: + pos (540,346) + xzoom -1 + "ch_gen cum_close_bottomless_done" + + +image bj: + zoom 0.5 + + "characters/hermione/chibis/blowjob/01.webp" + pause.1 + "characters/hermione/chibis/blowjob/02.webp" + pause.1 + "characters/hermione/chibis/blowjob/03.webp" + pause.1 + "characters/hermione/chibis/blowjob/04.webp" + pause.1 + "characters/hermione/chibis/blowjob/05.webp" + pause.1 + "characters/hermione/chibis/blowjob/06.webp" + pause.1 + "characters/hermione/chibis/blowjob/07.webp" + pause.1 + "characters/hermione/chibis/blowjob/08.webp" + pause.1 + "characters/hermione/chibis/blowjob/09.webp" + pause.1 + "characters/hermione/chibis/blowjob/10.webp" + pause.1 + "characters/hermione/chibis/blowjob/11.webp" + pause.1 + "characters/hermione/chibis/blowjob/12.webp" + pause.1 + repeat + +image bj_pause: + zoom 0.5 + + "characters/hermione/chibis/blowjob/hand_01.webp" + pause 3 + "characters/hermione/chibis/blowjob/hand_02.webp" + pause.1 + "characters/hermione/chibis/blowjob/hand_03.webp" + pause.1 + "characters/hermione/chibis/blowjob/hand_04.webp" + pause.1 + repeat + +image bj_cum_in: + zoom 0.5 + + "characters/hermione/chibis/blowjob/sperm_throat_01.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_02.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_03.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_04.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_05.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_06.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_07.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_08.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_09.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_10.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_11.webp" + pause 1 + "characters/hermione/chibis/blowjob/sperm_throat_12.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_13.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_14.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_15.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_16.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_throat_17.webp" + pause 2 + "characters/hermione/chibis/blowjob/sperm_throat_18.webp" + pause.2 + "characters/hermione/chibis/blowjob/sperm_throat_01.webp" + pause 1 + repeat + +image bj_cum_out: + zoom 0.5 + + "characters/hermione/chibis/blowjob/sperm_face_01.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_02.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_03.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_04.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_05.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_06.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_07.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_08.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_09.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_10.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_11.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_12.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_13.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_14.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_15.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_16.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_17.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_18.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_19.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_20.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_21.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_22.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_23.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_24.webp" + pause 1 + "characters/hermione/chibis/blowjob/sperm_face_23.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_22.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_23.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_24.webp" + pause 1 + "characters/hermione/chibis/blowjob/sperm_face_23.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_22.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_23.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_24.webp" + pause 2 + repeat + +image bj_cum_out_done: + zoom 0.5 + + "characters/hermione/chibis/blowjob/sperm_face_23.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_24.webp" + pause 1 + "characters/hermione/chibis/blowjob/sperm_face_23.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_22.webp" # blink + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_23.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_24.webp" + pause 1 + "characters/hermione/chibis/blowjob/sperm_face_23.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_22.webp" # blink + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_23.webp" + pause.1 + "characters/hermione/chibis/blowjob/sperm_face_24.webp" + pause 2 + repeat + + +image tj: + zoom 0.5 + + "characters/hermione/chibis/titjob/tj_sex_01.webp" + pause.3 + "characters/hermione/chibis/titjob/tj_sex_02.webp" + pause.3 + "characters/hermione/chibis/titjob/tj_sex_03.webp" + pause.3 + "characters/hermione/chibis/titjob/tj_sex_04.webp" + pause.3 + repeat + +image tj_pause: + zoom 0.5 + "characters/hermione/chibis/titjob/tj_sex_01.webp" + +image tj_idle: + zoom 0.5 + offset (-15, 16) + "characters/hermione/chibis/titjob/tj_cum_chest_02.webp" + +image tj_cum_on: + zoom 0.5 + offset (-15, 16) + "characters/hermione/chibis/titjob/tj_cum_chest_01.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_02.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_03.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_04.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_05.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_06.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_07.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_08.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_09.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_10.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_11.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_12.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_13.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_14.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_15.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_16.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_17.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_18.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_19.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_20.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_21.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_22.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_23.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_24.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_chest_25.webp" + pause.2 + repeat + +image tj_cum_on_done: + zoom 0.5 + offset (-15, 16) + "characters/hermione/chibis/titjob/tj_cum_chest_25.webp" + +image tj_mouth: + zoom 0.5 + offset (27, 16) + "characters/hermione/chibis/titjob/tj_cum_mouth_01.webp" + +image tj_cum_in: + zoom 0.5 + offset (27, 16) + "characters/hermione/chibis/titjob/tj_cum_mouth_01.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_02.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_03.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_04.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_05.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_06.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_07.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_08.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_09.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_10.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_11.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_12.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_13.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_14.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_15.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_16.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_17.webp" + pause.2 + "characters/hermione/chibis/titjob/tj_cum_mouth_18.webp" + pause.2 + repeat + +image tj_cum_in_done: + zoom 0.5 + offset (27, 16) + "characters/hermione/chibis/titjob/tj_cum_mouth_09.webp" diff --git a/game/scripts/animations/ani_intro.rpy b/game/scripts/animations/ani_intro.rpy new file mode 100644 index 00000000..bc19010e --- /dev/null +++ b/game/scripts/animations/ani_intro.rpy @@ -0,0 +1,54 @@ + + +### Intro ### +image intro_01: + "images/misc/intro/01_01.webp" + pause 1 + "images/misc/intro/01_02.webp" + pause 1 + repeat + +image intro_02: + "images/misc/intro/02_01.webp" + pause 1 + "images/misc/intro/02_02.webp" + pause 1 + "images/misc/intro/02_01.webp" + pause 1 + "images/misc/intro/02_02.webp" + pause 1 + "images/misc/intro/02_03.webp" + pause.08 + "images/misc/intro/02_02.webp" + pause.08 + "images/misc/intro/02_03.webp" + pause.08 + repeat + +image intro_03: + "images/misc/intro/03_01.webp" + pause 1 + "images/misc/intro/03_02.webp" + pause 1 + repeat + +image intro_04: + "images/misc/intro/04_01.webp" + pause 1 + "images/misc/intro/04_02.webp" + pause 1 + repeat + +image intro_05: + "images/misc/intro/05_01.webp" + pause 1 + "images/misc/intro/05_02.webp" + pause 1 + repeat + +image intro_06: + "images/misc/intro/06_01.webp" + pause 1 + "images/misc/intro/06_02.webp" + pause 1 + repeat diff --git a/game/scripts/animations/ani_luna.rpy b/game/scripts/animations/ani_luna.rpy new file mode 100644 index 00000000..0436bf50 --- /dev/null +++ b/game/scripts/animations/ani_luna.rpy @@ -0,0 +1,303 @@ +# Luna chibi + +#TODO Create clothing layers for Luna chibi + +image ch_lun walk_a: + "characters/luna/chibis/walk/l_walk_a_01.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_a_02.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_a_03.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_a_02.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_a_01.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_a_04.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_a_05.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_a_04.webp" + pause.08 + repeat + +image ch_lun blink_a: + "characters/luna/chibis/walk/l_walk_a_01.webp" + pause 2 + "characters/luna/chibis/walk/l_walk_a_06.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_a_01.webp" + pause 5 + "characters/luna/chibis/walk/l_walk_a_06.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_a_01.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_a_06.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_a_01.webp" + pause 3 + repeat + +image ch_lun walk_n: + "characters/luna/chibis/walk/l_walk_n_01.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_n_02.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_n_03.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_n_02.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_n_01.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_n_04.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_n_05.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_n_04.webp" + pause.08 + repeat + +image ch_lun blink_n: + "characters/luna/chibis/walk/l_walk_n_01.webp" + pause 2 + "characters/luna/chibis/walk/l_walk_n_06.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_n_01.webp" + pause 5 + "characters/luna/chibis/walk/l_walk_n_06.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_n_01.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_n_06.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_n_01.webp" + pause 3 + repeat + +image ch_lun walk_topless: + "characters/luna/chibis/walk/walk_topless_01.webp" + pause.08 + "characters/luna/chibis/walk/walk_topless_02.webp" + pause.08 + "characters/luna/chibis/walk/walk_topless_03.webp" + pause.08 + "characters/luna/chibis/walk/walk_topless_02.webp" + pause.08 + "characters/luna/chibis/walk/walk_topless_01.webp" + pause.08 + "characters/luna/chibis/walk/walk_topless_04.webp" + pause.08 + "characters/luna/chibis/walk/walk_topless_05.webp" + pause.08 + "characters/luna/chibis/walk/walk_topless_04.webp" + pause.08 + repeat + +image ch_lun blink_topless: + "characters/luna/chibis/walk/walk_topless_01.webp" + pause 2 + "characters/luna/chibis/walk/walk_topless_06.webp" + pause.08 + "characters/luna/chibis/walk/walk_topless_01.webp" + pause 5 + "characters/luna/chibis/walk/walk_topless_06.webp" + pause.08 + "characters/luna/chibis/walk/walk_topless_01.webp" + pause.08 + "characters/luna/chibis/walk/walk_topless_06.webp" + pause.08 + "characters/luna/chibis/walk/walk_topless_01.webp" + pause 3 + repeat + +image ch_lun walk_robe: + "characters/luna/chibis/walk/l_walk_robe_01.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_robe_02.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_robe_03.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_robe_02.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_robe_01.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_robe_04.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_robe_05.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_robe_04.webp" + pause.08 + repeat + +image ch_lun blink_robe: + "characters/luna/chibis/walk/l_walk_robe_01.webp" + pause 2 + "characters/luna/chibis/walk/l_walk_robe_06.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_robe_01.webp" + pause 5 + "characters/luna/chibis/walk/l_walk_robe_06.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_robe_01.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_robe_06.webp" + pause.08 + "characters/luna/chibis/walk/l_walk_robe_01.webp" + pause 3 + repeat + +image ch_lun_scene sit_on_lap: + zoom 0.5 + contains: + "characters/genie/chibis/jerk_off_behind_desk/desk_01.webp" + contains: + "characters/luna/chibis/sit_on_lap.webp" + +image ch_lun_scene sit_on_lap_grope: + zoom 0.5 + contains: + "ch_gen jerk_off_behind_desk" + contains: + "characters/luna/chibis/sit_on_lap.webp" + +image ch_lun_scene inspect_idle_naked: + zoom 0.5 + "characters/luna/chibis/inspect_body_stand/idle_nude_01.webp" + pause 1 + "characters/luna/chibis/inspect_body_stand/idle_nude_02.webp" + pause 1 + "characters/luna/chibis/inspect_body_stand/idle_nude_01.webp" + pause 2 + "characters/luna/chibis/inspect_body_stand/idle_nude_02.webp" + pause 1 + repeat + +image ch_lun_scene inspect_lean_idle_naked: + zoom 0.5 + "characters/luna/chibis/inspect_body_lean/idle_nude_01.webp" + pause 1 + "characters/luna/chibis/inspect_body_lean/idle_nude_02.webp" + pause 1 + "characters/luna/chibis/inspect_body_lean/idle_nude_01.webp" + pause 2 + "characters/luna/chibis/inspect_body_lean/idle_nude_02.webp" + pause 1 + repeat + +image ch_lun_scene inspect_idle: + zoom 0.5 + "characters/luna/chibis/inspect_body_stand/idle_clothed_01.webp" + pause 1 + "characters/luna/chibis/inspect_body_stand/idle_clothed_02.webp" + pause 1 + "characters/luna/chibis/inspect_body_stand/idle_clothed_01.webp" + pause 2 + "characters/luna/chibis/inspect_body_stand/idle_clothed_02.webp" + pause 1 + repeat + +image ch_lun_scene inspect_grope_breasts_naked: + zoom 0.5 + "characters/luna/chibis/inspect_body_stand/breast_nude_01.webp" + pause .75 + "characters/luna/chibis/inspect_body_stand/breast_nude_02.webp" + pause .75 + "characters/luna/chibis/inspect_body_stand/breast_nude_03.webp" + pause .75 + "characters/luna/chibis/inspect_body_stand/breast_nude_04.webp" + pause .75 + "characters/luna/chibis/inspect_body_stand/breast_nude_05.webp" + pause .75 + "characters/luna/chibis/inspect_body_stand/breast_nude_06.webp" + pause .75 + repeat + +image ch_lun_scene inspect_grope_vagina_naked: + zoom 0.5 + "characters/luna/chibis/inspect_body_stand/vag_nude_01.webp" + pause .75 + "characters/luna/chibis/inspect_body_stand/vag_nude_02.webp" + pause .75 + "characters/luna/chibis/inspect_body_stand/vag_nude_03.webp" + pause .75 + "characters/luna/chibis/inspect_body_stand/vag_nude_04.webp" + pause .75 + "characters/luna/chibis/inspect_body_stand/vag_nude_05.webp" + pause .75 + "characters/luna/chibis/inspect_body_stand/vag_nude_06.webp" + pause .75 + repeat + +image ch_lun_scene inspect_lean_grope_breasts_naked: + zoom 0.5 + "characters/luna/chibis/inspect_body_lean/breast_nude_01.webp" + pause .75 + "characters/luna/chibis/inspect_body_lean/breast_nude_02.webp" + pause .75 + "characters/luna/chibis/inspect_body_lean/breast_nude_03.webp" + pause .75 + "characters/luna/chibis/inspect_body_lean/breast_nude_04.webp" + pause .75 + "characters/luna/chibis/inspect_body_lean/breast_nude_05.webp" + pause .75 + "characters/luna/chibis/inspect_body_lean/breast_nude_06.webp" + pause .75 + repeat + +image ch_lun_scene inspect_lean_grope_vagina_naked: + zoom 0.5 + "characters/luna/chibis/inspect_body_lean/vag_nude_01.webp" + pause .75 + "characters/luna/chibis/inspect_body_lean/vag_nude_02.webp" + pause .75 + "characters/luna/chibis/inspect_body_lean/vag_nude_03.webp" + pause .75 + "characters/luna/chibis/inspect_body_lean/vag_nude_04.webp" + pause .75 + "characters/luna/chibis/inspect_body_lean/vag_nude_05.webp" + pause .75 + "characters/luna/chibis/inspect_body_lean/vag_nude_06.webp" + pause .75 + repeat + +# Luna CG + +image luna_bj_loop_1: + "images/CG/luna_desk/l1.webp" + pause.35 + "images/CG/luna_desk/l2.webp" + pause.35 + "images/CG/luna_desk/l3.webp" + pause.35 + "images/CG/luna_desk/l4.webp" + pause.35 + "images/CG/luna_desk/l5.webp" + pause.35 + "images/CG/luna_desk/l4.webp" + pause.35 + "images/CG/luna_desk/l3.webp" + pause.35 + "images/CG/luna_desk/l2.webp" + pause.35 + "images/CG/luna_desk/l1.webp" + pause.35 + repeat + +image luna_bj_loop_2: + "images/CG/luna_desk/l6.webp" + pause.35 + "images/CG/luna_desk/l7.webp" + pause.35 + "images/CG/luna_desk/l8.webp" + pause.35 + "images/CG/luna_desk/l9.webp" + pause.35 + "images/CG/luna_desk/l10.webp" + pause.35 + "images/CG/luna_desk/l9.webp" + pause.35 + "images/CG/luna_desk/l8.webp" + pause.35 + "images/CG/luna_desk/l7.webp" + pause.35 + repeat diff --git a/game/scripts/animations/ani_snape.rpy b/game/scripts/animations/ani_snape.rpy new file mode 100644 index 00000000..9888c15f --- /dev/null +++ b/game/scripts/animations/ani_snape.rpy @@ -0,0 +1,232 @@ + +image ch_sna walk: + "characters/snape/chibis/snape_01.webp" + pause .18 + "characters/snape/chibis/snape_02.webp" + pause .18 + "characters/snape/chibis/snape_01.webp" + pause .18 + "characters/snape/chibis/snape_03.webp" + pause .18 + repeat + +image ch_sna stand: + "characters/snape/chibis/snape_stand.webp" + +image ch_sna stand_shocked: + "characters/snape/chibis/shocked/01.webp" + +image ch_sna hold_dick: + "characters/snape/chibis/masturbating/02.webp" + +image ch_sna jerk_off: + "characters/snape/chibis/masturbating/01.webp" + pause .2 + "characters/snape/chibis/masturbating/02.webp" + pause .2 + "characters/snape/chibis/masturbating/03.webp" + pause .2 + "characters/snape/chibis/masturbating/04.webp" + pause .2 + repeat + +image ch_sna cum: + size (300,500) + contains: + "ch_sna jerk_off" + contains: + zoom 2 + yoffset -360 + xoffset -980 + alpha 1 + "characters/snape/chibis/masturbating/sperm_01.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_02.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_03.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_04.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_05.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_06.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_07.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_08.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_09.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_10.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_11.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_12.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_13.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_14.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_15.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_16.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_17.webp" + pause .1 + "characters/snape/chibis/masturbating/sperm_18.webp" + pause 2 + linear .2 alpha 0 + pause .5 + repeat + +image ch_sna cum_done: + size (300,500) + contains: + "characters/snape/chibis/masturbating/02.webp" + contains: + zoom 2 + yoffset -360 + xoffset -980 + "characters/snape/chibis/masturbating/sperm_18.webp" + +#TODO Add Snape chibi wand cast actions +image ch_sna wand_idle: + "characters/snape/chibis/wand_idle/wand_idle_1.webp" + pause.1 + "characters/snape/chibis/wand_idle/wand_idle_2.webp" + pause.1 + "characters/snape/chibis/wand_idle/wand_idle_3.webp" + pause.1 + "characters/snape/chibis/wand_idle/wand_idle_2.webp" + pause.1 + repeat + +image ch_sna wand_defend: + "characters/snape/chibis/wand_defend/wand_defend_1.webp" + pause.1 + "characters/snape/chibis/wand_defend/wand_defend_2.webp" + pause.1 + "characters/snape/chibis/wand_defend/wand_defend_3.webp" + pause.1 + "characters/snape/chibis/wand_defend/wand_defend_2.webp" + pause.1 + repeat + +# Snape sitting in front of fireplace, right side +image snape_toast_goblet: + "characters/snape/chibis/drinking/01.webp" + pause 2 + "characters/snape/chibis/drinking/02.webp" + pause .2 + "characters/snape/chibis/drinking/03.webp" + pause .2 + "characters/snape/chibis/drinking/04.webp" + pause 1 + "characters/snape/chibis/drinking/03.webp" + pause .2 + "characters/snape/chibis/drinking/01.webp" + pause 3 + repeat + +image snape_desk_work: + zoom 0.5 + size (554, 426) + yoffset -9 + + contains: + "characters/snape/chibis/desk_working/01.webp" + pause .2 + "characters/snape/chibis/desk_working/02.webp" + pause .2 + "characters/snape/chibis/desk_working/03.webp" + pause .2 + "characters/snape/chibis/desk_working/02.webp" + pause .3 + "characters/snape/chibis/desk_working/01.webp" + pause .2 + "characters/snape/chibis/desk_working/02.webp" + pause .1 + "characters/snape/chibis/desk_working/01.webp" + pause .2 + "characters/snape/chibis/desk_working/03.webp" + pause .3 + repeat + + contains: + ypos 36 + + "images/rooms/snape_office/lamp/01.webp" + pause .2 + "images/rooms/snape_office/lamp/02.webp" + pause .2 + "images/rooms/snape_office/lamp/03.webp" + pause .2 + repeat + + contains: + ypos 36 + alpha 0.33 + + "images/rooms/snape_office/lamp/glow.webp" + easeout_bounce 1.5 alpha 0.18 + easein_bounce 1.5 alpha 0.33 + repeat + +image snape_desk_idle: + zoom 0.5 + size (554, 426) + yoffset -9 + + contains: + "characters/snape/chibis/desk_working/idle2.webp" + + contains: + ypos 36 + + "images/rooms/snape_office/lamp/01.webp" + pause .2 + "images/rooms/snape_office/lamp/02.webp" + pause .2 + "images/rooms/snape_office/lamp/03.webp" + pause .2 + repeat + + contains: + ypos 36 + alpha 0.33 + + "images/rooms/snape_office/lamp/glow.webp" + easeout_bounce 1.5 alpha 0.18 + easein_bounce 1.5 alpha 0.33 + repeat + +image snape_desk_work_idle: + zoom 0.5 + size (554, 426) + yoffset -9 + + contains: + "characters/snape/chibis/desk_working/idle.webp" + + contains: + ypos 36 + + "images/rooms/snape_office/lamp/01.webp" + pause .2 + "images/rooms/snape_office/lamp/02.webp" + pause .2 + "images/rooms/snape_office/lamp/03.webp" + pause .2 + repeat + + contains: + ypos 36 + alpha 0.33 + + "images/rooms/snape_office/lamp/glow.webp" + easeout_bounce 1.5 alpha 0.18 + easein_bounce 1.5 alpha 0.33 + repeat + +image ch_sna snape_jizz_covered: + "characters/snape/chibis/jizz_covered/jizz.webp" diff --git a/game/scripts/animations/ani_susan.rpy b/game/scripts/animations/ani_susan.rpy new file mode 100644 index 00000000..14120424 --- /dev/null +++ b/game/scripts/animations/ani_susan.rpy @@ -0,0 +1,42 @@ +image ch_sus stand: + random_blink("characters/susan/chibis/sb_stand_blink.webp", "characters/susan/chibis/sb_walk_01.webp") + +image ch_sus walk: + "characters/susan/chibis/sb_walk_01.webp" + pause.08 + "characters/susan/chibis/sb_walk_02.webp" + pause.08 + "characters/susan/chibis/sb_walk_03.webp" + pause.08 + "characters/susan/chibis/sb_walk_02.webp" + pause.08 + "characters/susan/chibis/sb_walk_01.webp" + pause.08 + "characters/susan/chibis/sb_walk_04.webp" + pause.08 + "characters/susan/chibis/sb_walk_05.webp" + pause.08 + "characters/susan/chibis/sb_walk_04.webp" + pause.08 + + repeat + +image ch_sus walk_shoes: # Walk shoes layer + "characters/susan/chibis/sb_walk_01_shoes.webp" + pause.08 + "characters/susan/chibis/sb_walk_02_shoes.webp" + pause.08 + "characters/susan/chibis/sb_walk_03_shoes.webp" + pause.08 + "characters/susan/chibis/sb_walk_02_shoes.webp" + pause.08 + "characters/susan/chibis/sb_walk_01_shoes.webp" + pause.08 + "characters/susan/chibis/sb_walk_04_shoes.webp" + pause.08 + "characters/susan/chibis/sb_walk_05_shoes.webp" + pause.08 + "characters/susan/chibis/sb_walk_04_shoes.webp" + pause.08 + + repeat diff --git a/game/scripts/animations/ani_tonks.rpy b/game/scripts/animations/ani_tonks.rpy new file mode 100644 index 00000000..fdb393de --- /dev/null +++ b/game/scripts/animations/ani_tonks.rpy @@ -0,0 +1,204 @@ +# Tonks chibi + +image ch_ton stand: + random_blink("characters/tonks/chibis/nt_stand_blink.webp", "characters/tonks/chibis/nt_walk_01.webp") + +image ch_ton stand_shocked: + size (200,360) + contains: + "ch_ton stand" + contains: + "characters/tonks/chibis/nt_shocked.webp" + +image ch_ton walk: + "characters/tonks/chibis/nt_walk_01.webp" + pause.08 + "characters/tonks/chibis/nt_walk_02.webp" + pause.08 + "characters/tonks/chibis/nt_walk_03.webp" + pause.08 + "characters/tonks/chibis/nt_walk_02.webp" + pause.08 + "characters/tonks/chibis/nt_walk_01.webp" + pause.08 + "characters/tonks/chibis/nt_walk_04.webp" + pause.08 + "characters/tonks/chibis/nt_walk_05.webp" + pause.08 + "characters/tonks/chibis/nt_walk_04.webp" + pause.08 + + repeat + +image ch_ton walk shoes: # Walk shoes layer + "characters/tonks/chibis/nt_walk_01_shoes.webp" + pause.08 + "characters/tonks/chibis/nt_walk_02_shoes.webp" + pause.08 + "characters/tonks/chibis/nt_walk_03_shoes.webp" + pause.08 + "characters/tonks/chibis/nt_walk_02_shoes.webp" + pause.08 + "characters/tonks/chibis/nt_walk_01_shoes.webp" + pause.08 + "characters/tonks/chibis/nt_walk_04_shoes.webp" + pause.08 + "characters/tonks/chibis/nt_walk_05_shoes.webp" + pause.08 + "characters/tonks/chibis/nt_walk_04_shoes.webp" + pause.08 + + repeat + +image ch_ton walk trousers: # Walk trousers layer + "characters/tonks/chibis/nt_walk_01_trousers.webp" + pause.08 + "characters/tonks/chibis/nt_walk_02_trousers.webp" + pause.08 + "characters/tonks/chibis/nt_walk_03_trousers.webp" + pause.08 + "characters/tonks/chibis/nt_walk_02_trousers.webp" + pause.08 + "characters/tonks/chibis/nt_walk_01_trousers.webp" + pause.08 + "characters/tonks/chibis/nt_walk_04_trousers.webp" + pause.08 + "characters/tonks/chibis/nt_walk_05_trousers.webp" + pause.08 + "characters/tonks/chibis/nt_walk_04_trousers.webp" + pause.08 + + repeat + +#Drinking chibi +image ch_ton sit_chair: + zoom 0.5 + + # Chair + contains: + "characters/tonks/chibis/drinking/chair.webp" + +image ch_ton sit: + zoom 0.5 + + # Blinking + contains: + "characters/tonks/chibis/drinking/nt_head_01.webp" + pause 2 + "characters/tonks/chibis/drinking/nt_head_02.webp" + pause.08 + "characters/tonks/chibis/drinking/nt_head_01.webp" + pause 5 + "characters/tonks/chibis/drinking/nt_head_02.webp" + pause.08 + "characters/tonks/chibis/drinking/nt_head_01.webp" + pause.08 + "characters/tonks/chibis/drinking/nt_head_02.webp" + pause.08 + "characters/tonks/chibis/drinking/nt_head_01.webp" + pause 3 + repeat + + # Leg sway + contains: + "characters/tonks/chibis/drinking/nt_sit_01.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_02.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_03.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_04.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_03.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_02.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_01.webp" + pause 2.5 + repeat + +image ch_ton sit_trousers: + zoom 0.5 + + # Trousers + contains: + "characters/tonks/chibis/drinking/nt_sit_01_trousers.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_02_trousers.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_03_trousers.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_04_trousers.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_03_trousers.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_02_trousers.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_01_trousers.webp" + pause 2.5 + repeat + +image ch_ton sit_shoes: + zoom 0.5 + + # Shoes + contains: + "characters/tonks/chibis/drinking/nt_sit_01_shoes.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_02_shoes.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_03_shoes.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_04_shoes.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_03_shoes.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_02_shoes.webp" + pause.1 + "characters/tonks/chibis/drinking/nt_sit_01_shoes.webp" + pause 2.5 + repeat + +image ch_ton sit_top: + zoom 0.5 + "characters/tonks/chibis/drinking/nt_top.webp" + +image ch_ton sit_choker: + zoom 0.5 + "characters/tonks/chibis/drinking/nt_choker.webp" + +image ch_ton bj_desk: + zoom 0.5 + "characters/tonks/chibis/bj_desk/01.webp" + pause .3 + "characters/tonks/chibis/bj_desk/02.webp" + pause .3 + repeat + +image ch_ton bj_desk_shocked: + zoom 0.5 + "characters/tonks/chibis/bj_desk/shocked_01.webp" + pause .3 + "characters/tonks/chibis/bj_desk/shocked_02.webp" + pause .3 + repeat + +image ch_ton elf: + zoom 0.5 + anchor (0.5, 1.0) + + "characters/tonks/chibis/elf/default.webp" + pause 2 + "characters/tonks/chibis/elf/blink.webp" + pause.08 + "characters/tonks/chibis/elf/default.webp" + pause 5 + "characters/tonks/chibis/elf/blink.webp" + pause.08 + "characters/tonks/chibis/elf/default.webp" + pause.08 + "characters/tonks/chibis/elf/blink.webp" + pause.08 + "characters/tonks/chibis/elf/default.webp" + pause 3 + repeat diff --git a/game/scripts/animations/common.rpy b/game/scripts/animations/common.rpy new file mode 100644 index 00000000..f1f0cb96 --- /dev/null +++ b/game/scripts/animations/common.rpy @@ -0,0 +1,430 @@ + +# Common image definitions + +image blank: + Null() + +image heal: + "images/magic/heal01.webp" + pause.06 + "images/magic/heal02.webp" + pause.06 + "images/magic/heal03.webp" + pause.06 + "images/magic/heal04.webp" + pause.06 + "images/magic/heal05.webp" + pause.06 + "images/magic/heal06.webp" + pause.06 + "images/magic/heal07.webp" + pause.06 + "images/magic/heal08.webp" + pause.06 + "images/magic/heal09.webp" + pause.06 + "images/magic/heal10.webp" + pause.06 + "images/magic/heal11.webp" + pause.06 + "images/magic/heal12.webp" + pause.06 + "images/magic/heal13.webp" + pause.06 + "images/magic/heal14.webp" + pause.06 + "images/magic/heal15.webp" + pause.06 + "images/magic/heal16.webp" + pause.06 + "images/magic/heal17.webp" + pause.06 + "images/magic/heal18.webp" + pause.06 + +image love_heart: + "images/magic/love09.webp" + pause.06 + "images/magic/love10.webp" + pause.06 + "images/magic/love11.webp" + pause.06 + "images/magic/love12.webp" + pause.06 + "images/magic/love13.webp" + pause.06 + "images/magic/love14.webp" + pause.06 + "images/magic/love15.webp" + +image ctc: + contains: + pos (0.99, 0.995) + anchor (0.8, 1.0) + "interface/ctc00.webp" + contains: + pos (0.99, 0.995) + anchor (0.8, 1.0) + "interface/ctc01.webp" + pause 5.0 + linear 1.0 alpha 0.0 + linear 1.0 alpha 1.0 + repeat + +# Emotions ^_^ + +image emo01: + "characters/emotes/animated/ex01.webp" + pause.5 + "characters/emotes/animated/ex02.webp" + pause.5 + "characters/emotes/animated/ex03.webp" + pause.5 + "characters/emotes/animated/ex04.webp" + pause 1 + "characters/emotes/animated/ex01.webp" + pause.5 + "characters/emotes/animated/ex00.webp" + repeat + +image emo02: + "characters/emotes/animated/exl01.webp" + pause.5 + "characters/emotes/animated/exl02.webp" + pause.5 + "characters/emotes/animated/exl03.webp" + pause.5 + "characters/emotes/animated/exl04.webp" + pause.5 + "characters/emotes/animated/exl05.webp" + pause.5 + "characters/emotes/animated/exl06.webp" + repeat + +image emo03: + "characters/emotes/animated/sad_01.webp" + pause.4 + "characters/emotes/animated/sad_02.webp" + pause.4 + "characters/emotes/animated/sad_03.webp" + pause.4 + "characters/emotes/animated/sad_04.webp" + pause.4 + "characters/emotes/animated/sad_03.webp" + pause.4 + "characters/emotes/animated/sad_02.webp" + pause.4 + repeat + +image emo04: + "characters/emotes/animated/hoot_01.webp" + pause.4 + "characters/emotes/animated/hoot_02.webp" + pause.4 + "characters/emotes/animated/hoot_03.webp" + pause.4 + "characters/emotes/animated/hoot_04.webp" + pause.4 + "characters/emotes/animated/hoot_05.webp" + pause.4 + "characters/emotes/animated/hoot_06.webp" + pause.4 + "characters/emotes/animated/hoot_07.webp" + pause.4 + repeat + +image emoq: + "characters/emotes/animated/q1.webp" + pause.5 + "characters/emotes/animated/q2.webp" + pause.5 + "characters/emotes/animated/q3.webp" + pause.5 + "characters/emotes/animated/q4.webp" + pause.5 + "characters/emotes/animated/q1.webp" + pause.5 + "characters/emotes/animated/q2.webp" + pause.5 + "characters/emotes/animated/q3.webp" + pause.5 + "characters/emotes/animated/q4.webp" + repeat + +image emom: + "characters/emotes/animated/emo00.webp" + pause.08 + "characters/emotes/animated/emo01.webp" + +image excl: + "characters/emotes/animated/excl01.webp" + pause.5 + "characters/emotes/animated/excl02.webp" + pause.5 + "characters/emotes/animated/excl03.webp" + pause.5 + "characters/emotes/animated/excl04.webp" + pause.5 + repeat +image qu: + "characters/emotes/animated/que1.webp" + pause.5 + "characters/emotes/animated/que2.webp" + pause.5 + "characters/emotes/animated/que3.webp" + pause.5 + "characters/emotes/animated/que4.webp" + pause.5 + "characters/emotes/animated/que5.webp" + pause.5 + "characters/emotes/animated/que6.webp" + repeat + +image an: + "characters/emotes/animated/an1.webp" + pause.2 + "characters/emotes/animated/an2.webp" + pause.2 + "characters/emotes/animated/an3.webp" + pause.2 + "characters/emotes/animated/an2.webp" + pause.2 + repeat + +image sal: + "characters/emotes/animated/s1.webp" + pause.08 + "characters/emotes/animated/s2.webp" + pause.2 + "characters/emotes/animated/s3.webp" + pause.08 + "characters/emotes/animated/s4.webp" + pause.2 + "characters/emotes/animated/s5.webp" + pause.08 + "characters/emotes/animated/s6.webp" + pause 1 + "characters/emotes/animated/00.webp" + pause.08 + repeat + +image th: + "characters/emotes/animated/t1.webp" + pause.2 + "characters/emotes/animated/t2.webp" + pause.2 + "characters/emotes/animated/t3.webp" + pause.2 + "characters/emotes/animated/t4.webp" + pause.2 + repeat + +image emo7: + "characters/emotes/animated/emotion00.webp" + pause.5 + "characters/emotes/animated/emotion01.webp" + pause.5 + "characters/emotes/animated/emotion00.webp" + pause.7 + "characters/emotes/animated/emotion01.webp" + pause.7 + "characters/emotes/animated/emotion00.webp" + pause.6 + "characters/emotes/animated/emotion01.webp" + pause.6 + repeat + +image emo8: + "characters/emotes/animated/emotion00.webp" + pause.7 + "characters/emotes/animated/emotion03.webp" + pause.7 + "characters/emotes/animated/emotion00.webp" + pause.6 + "characters/emotes/animated/emotion03.webp" + pause.6 + "characters/emotes/animated/emotion00.webp" + pause.5 + "characters/emotes/animated/emotion03.webp" + pause.5 + repeat + +image sur: + "characters/emotes/animated/sur1.webp" + pause.5 + "characters/emotes/animated/sur2.webp" + pause.5 + "characters/emotes/animated/sur3.webp" + pause.5 + "characters/emotes/animated/sur4.webp" + pause.5 + "characters/emotes/animated/sur5.webp" + pause.5 + "characters/emotes/animated/sur6.webp" + pause.5 + repeat + +# Main title background animation +image title_ani: + contains: + zoom 0.5 + "images/title/00.webp" + pause 3 + "images/title/01.webp" + pause.1 + "images/title/02.webp" + pause.1 + "images/title/01.webp" + pause.1 + "images/title/00.webp" + pause 6 + "images/title/01.webp" + pause.1 + "images/title/02b.webp" + pause.1 + "images/title/01b.webp" + pause.1 + "images/title/00b.webp" + pause 3 + "images/title/01b.webp" + pause.1 + "images/title/02b.webp" + pause.1 + "images/title/01b.webp" + pause.1 + "images/title/00b.webp" + pause 6 + "images/title/01b.webp" + pause.1 + "images/title/02b.webp" + pause.1 + "images/title/02.webp" + pause.1 + "images/title/01.webp" + pause.1 + repeat + + contains: + xalign 1.0 + zoom 0.9 + ypos 12 + xoffset -2 + "images/logo/title.webp" + + contains: + xpos -17 + ypos -151 + zoom 2.0 + "candle_fire_01" + + contains: + xpos -255 + ypos 100 + zoom 0.8 + "images/title/fire00.webp" + pause.1 + "images/title/fire01.webp" + pause.1 + "images/title/fire02.webp" + pause.1 + "images/title/fire03.webp" + pause.1 + "images/title/fire04.webp" + pause.1 + "images/title/fire05.webp" + pause.1 + "images/title/fire06.webp" + pause.1 + "images/title/fire07.webp" + pause.1 + repeat + + #sparkle + contains: + xpos 798 + ypos 200 + xanchor 0.5 + yanchor 0.5 + zoom 0.0 + "images/title/sparkle.webp" + linear 0.8 zoom 1.0 + linear 0.5 zoom 0.0 + pause 5 + repeat + + #shine silver (synchronized) + contains: + xpos 848 + ypos 230 + xanchor 0.5 + yanchor 0.5 + zoom 0.0 + "images/title/sparkle.webp" + pause 1.3 + linear 0.5 zoom 1.0 + linear 0.5 zoom 0.0 + + xpos 870 + ypos 205 + linear 0.5 zoom 1.0 + linear 0.5 zoom 0.0 + + xpos 914 + ypos 227 + linear 0.5 zoom 1.0 + linear 0.5 zoom 0.0 + + xpos 948 + ypos 233 + linear 0.5 zoom 1.0 + linear 0.5 zoom 0.0 + + xpos 999 + ypos 226 + linear 0.5 zoom 1.0 + linear 0.5 zoom 0.0 + pause 12.6 + repeat + +# Other game menu background +image menu_ani: + contains: + zoom 0.5 + "images/title/00b.webp" + + contains: + alpha 0.8 + "#000" + +# Transitions +init offset = -1 + +define d1 = Dissolve(0.1) +define d2 = Dissolve(0.2) +define d3 = Dissolve(0.3) +define d4 = Dissolve(0.4) +define d5 = Dissolve(0.5) +define d6 = Dissolve(0.6) +define d7 = Dissolve(0.7) +define d8 = Dissolve(0.8) +define d9 = Dissolve(0.9) + +define f1 = Fade(0.1, 0.0, 0.1) +define f2 = Fade(0.2, 0.0, 0.2) +define f3 = Fade(0.3, 0.0, 0.3) + +define flash = Fade(0.1, 0.0, 0.5, color="#fff") +define flashbulb = Fade(0.2, 0.0, 0.8, color='#fff') +define flashbb = Fade(0.2, 0.0, 0.8, color='#000') +define flashblood = Fade(0.2, 0.0, 0.8, color='#f02424') +define kissiris = Fade(0.2, 0.0, 0.8, color='#fb8dc8') +define black_magic = Fade(0.2, 0.0, 0.5, color='#7f3590') +define blackfade = Fade(0.9, 0.5, 1, color='#000000') + +define morph = ComposeTransition(Dissolve(0.9), before=Fade(0.1, 0.5, 0.5, color="#fff"), after=Dissolve(0.5)) +define teleport = ImageDissolve("id_teleport.webp", 1.0, 0) + +define vpunch_repeat = Move((0, 10), (0, -10), .5, bounce=True, repeat=True, delay=4.5) + +define faderight = ImageDissolve("interface/transitions/faderight.webp", 1.0) +define fadeleft = ImageDissolve("interface/transitions/faderight.webp", 1.0, reverse=True) diff --git a/game/scripts/animations/generator.rpy b/game/scripts/animations/generator.rpy new file mode 100644 index 00000000..de1da27d --- /dev/null +++ b/game/scripts/animations/generator.rpy @@ -0,0 +1,129 @@ +image object: + Null() + +transform OBJbutterfly(hue=random.randint(0, 359)): + zoom random.uniform(0.4, 0.85) + + choice: + pause random.randint(1, 7) + parallel: + xzoom -1 + pos (-100, random.randint(0, 500)) + ease_quad random.randint(14, 20) pos (1200, random.randint(0, 500)) + repeat + parallel: + ease_bounce 3 yoffset absolute(-20) + ease_bounce 3 yoffset absolute(20) + ease_bounce 3 yoffset absolute(0) + repeat + parallel: + rotate 15 + ease_circ 1.0 rotate 30 + ease_circ 1.0 rotate 15 + repeat + parallel: + im.MatrixColor("images/rooms/quidditch_pitch/butterfly/0.webp", im.matrix.hue(hue)) with d3 + pause .3 + im.MatrixColor("images/rooms/quidditch_pitch/butterfly/1.webp", im.matrix.hue(hue)) with d3 + pause .3 + im.MatrixColor("images/rooms/quidditch_pitch/butterfly/2.webp", im.matrix.hue(hue)) with d3 + pause .3 + im.MatrixColor("images/rooms/quidditch_pitch/butterfly/1.webp", im.matrix.hue(hue)) with d3 + pause .3 + repeat + choice: + pause random.randint(1, 7) + parallel: + xzoom 1 + pos (1200, random.randint(0, 500)) + ease_quad random.randint(14, 20) pos (-100, random.randint(0, 500)) + repeat + parallel: + ease_bounce 3 yoffset absolute(-20) + ease_bounce 3 yoffset absolute(20) + ease_bounce 3 yoffset absolute(0) + repeat + parallel: + rotate -15 + ease_circ 1.0 rotate -30 + ease_circ 1.0 rotate -15 + repeat + parallel: + im.MatrixColor("images/rooms/quidditch_pitch/butterfly/0.webp", im.matrix.hue(hue)) with d3 + pause .3 + im.MatrixColor("images/rooms/quidditch_pitch/butterfly/1.webp", im.matrix.hue(hue)) with d3 + pause .3 + im.MatrixColor("images/rooms/quidditch_pitch/butterfly/2.webp", im.matrix.hue(hue)) with d3 + pause .3 + im.MatrixColor("images/rooms/quidditch_pitch/butterfly/1.webp", im.matrix.hue(hue)) with d3 + pause .3 + repeat + repeat + +transform OBJcloud(start=(random.randint(270, 800), random.randint(60, 130)), speed=random.randint(60, 180)): + parallel: + zoom random.uniform(0.6, 1.0) + pos start + "images/rooms/_weather_/cloud_small.webp" + linear speed xpos 800 + xpos 270 + linear speed xpos start[0] + repeat + +transform OBJwrackspurt(): + zoom random.uniform(0.2, 1.0) + events False + + choice: + pause random.randint(0, 7) + "wrackspurt" + + parallel: + xzoom -1 + pos (-100, random.randint(0, 500)) + ease_quad random.randint(14, 20) pos (1200, random.randint(0, 500)) + repeat + parallel: + ease_bounce 3 yoffset absolute(-20) + ease_bounce 3 yoffset absolute(20) + ease_bounce 3 yoffset absolute(0) + repeat + parallel: + rotate 15 + ease_circ 1.0 rotate 30 + ease_circ 1.0 rotate 15 + repeat + choice: + pause random.randint(0, 7) + "wrackspurt" + parallel: + xzoom 1 + pos (1200, random.randint(0, 500)) + ease_quad random.randint(14, 20) pos (-100, random.randint(0, 500)) + repeat + parallel: + easein 3 yoffset absolute(-20) + easein 3 yoffset absolute(20) + easein 3 yoffset absolute(0) + repeat + parallel: + rotate -15 + ease_circ 1.0 rotate -30 + ease_circ 1.0 rotate -15 + repeat + repeat + +image OBJwrackspurtplayer: + anchor (0.0, 0.0) + transform_anchor True + zoom 0.7 + offset (-21, -13) + events False + + "wrackspurt" + + parallel: + rotate -10 + ease_circ 1.0 rotate -20 + ease_circ 1.0 rotate -10 + repeat diff --git a/game/scripts/animations/transforms.rpy b/game/scripts/animations/transforms.rpy new file mode 100644 index 00000000..ee48ea34 --- /dev/null +++ b/game/scripts/animations/transforms.rpy @@ -0,0 +1,132 @@ +transform sepia(): + matrixcolor SepiaMatrix() + +transform uvlight(): + matrixcolor SepiaMatrix("#590098", desat=(1.0, 1.5, 1.0)) + +transform move_in(x, t): + xpos x + linear t xpos 0 + pause t + +transform move_fade: + on show, appear, start: + alpha 0.0 + xoffset 200 + easein_back 1.0 alpha 1.0 xoffset absolute(0) + + on hide: + alpha 1.0 + xoffset 0 + easeout_back 1.0 alpha 0.0 xoffset absolute(200) + +transform fade_show(t): + alpha 0 + on show: + linear t alpha 1 + +transform fade_show_hide(t): + alpha 0 + linear t alpha 1 + on hide: + linear t alpha 0 + +transform fade_hide(t): + on hide: + linear t alpha 0.0 + +transform blink: + on show: + alpha 1.0 + pause 0.5 + alpha 0.0 + pause 0.5 + repeat + +transform bob(t=1): + on show, appear, start: + yoffset absolute(0) + ease t yoffset absolute(10) + ease t yoffset absolute(0) + repeat + +transform doll_blink(normal, blink): + events False + + normal + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + blink + pause 0.1 + normal + pause 0.1 + blink + choice: + blink + + pause 0.1 + repeat + +transform pulse: + on show: + xzoom 1.0 + yzoom 1.0 + linear 0.8 xzoom 1.2 yzoom 1.2 + linear 0.8 xzoom 1.0 yzoom 1.0 + repeat + +transform move_to(start_x=0, start_y=0, target_x=0, target_y=0, duration=1.0): + on show: + xpos start_x + ypos start_y + linear duration xpos target_x ypos target_y + +transform main_sprite_position(x, y, flip, scale): + xpos x + ypos y + xzoom flip + zoom (1.0/scale) + +transform random_rotation(a=-45, b=45): + rotate random.randint(a, b) + +transform pulse_hover(t=1.0, strength=0.2, pause=0.0): + linear t matrixcolor BrightnessMatrix(value=strength) + linear t matrixcolor BrightnessMatrix(value=0.0) + pause pause + repeat + +transform gui_animation: + nearest True + events False + + on show: + zoom 0 + alpha 0 + xoffset config.screen_width + easein_cubic 0.3 zoom 1.0 alpha 1.0 xoffset 0 + events True + nearest False + + on hide: + events False + nearest True + easeout_cubic 0.3 zoom 0.0 alpha 0.0 xoffset config.screen_width + +transform shake: + events False + function shake_func + +init python: + def shake_func(trans, st, at): + trans.xoffset = renpy.random.randint(-2, 2) + trans.yoffset = renpy.random.randint(-2, 2) + return clamp(1.0 - st, 0.05, 1.0) + diff --git a/game/scripts/cg/astoria.rpy b/game/scripts/cg/astoria.rpy new file mode 100644 index 00000000..7b9bc867 --- /dev/null +++ b/game/scripts/cg/astoria.rpy @@ -0,0 +1,6 @@ + +image CG ast_intro astoria hermione = Fixed( + "images/CG/common/bg.webp", + AlphaMask(Composite((2160, 1200), (680, -180), Transform("CG her_doll", zoom=1.15)), "images/CG/common/mask.webp"), + AlphaMask(Composite((2160, 1200), (880, -180), Transform("CG ast_doll", zoom=1.2)), "images/CG/common/mask.webp"), + ) diff --git a/game/scripts/cg/camera.rpy b/game/scripts/cg/camera.rpy new file mode 100644 index 00000000..309014e4 --- /dev/null +++ b/game/scripts/cg/camera.rpy @@ -0,0 +1,165 @@ + +transform CGCamera(zoom, endzoom, pos, endpos, rotate, endrotate, t): + subpixel True + + offset pos + zoom zoom + rotate rotate + parallel: + ease_quad t zoom endzoom + parallel: + ease_quad t xoffset endpos[0] yoffset endpos[1] + parallel: + linear t rotate endrotate + +init python: + + class CGController(object): + default_timer = 1.0 + + def __init__(self, min_zoom=0.1, max_zoom=5.0): + self.imagepath = None + self.scale = 1.0 + + self.last_type = 0 + self.type = 0 # 0 - image, 1 - Movie + + self.last_image = None + self.image = None + self.overlay = None + + self.max_zoom = max_zoom + self.min_zoom = min_zoom + + self.last_zoom = min_zoom + self.zoom = min_zoom + + self.last_pos = (0, 0) + self.pos = (0, 0) + + self.last_rotate = 0 + self.rotate = 0 + + self.child = None + + def set_imagepath(self, path): + self.imagepath = "images/CG/{}/".format(path) + + def set_image(self, img, trans=d1): + p = max(0, self.get_pause()) + + self.last_image = self.image + self.image = img + + # Reset last variables to new variables to not redraw the transform. + self.last_zoom = self.zoom + self.last_pos = self.pos + self.last_rotate = self.rotate + + if self.last_type == 0: + renpy.pause(p - 0.1) + self.redraw(0) + renpy.with_statement(trans) + else: + renpy.pause(p - 0.1) + self.redraw(0) + renpy.with_statement(trans) + + def set_overlay(self, overlay): + self.overlay = overlay + self.redraw(0) + + def set_zoom(self, n): + self.last_zoom = self.zoom + self.zoom = float(clamp(n, self.min_zoom, self.max_zoom)) + + def set_rotation(self, n): + self.last_rotate = self.rotate + self.rotate = n + + def set_pos(self, pos): + self.last_pos = tuple(self.pos) + self.pos = pos + + def set(self, zoom=None, rotate=None, pos=None, t=None, initialize=False, pause=False, image=None, overlay=False, trans=d1): + if zoom is None: + zoom=self.last_zoom + if rotate is None: + rotate=self.last_rotate + if pos is None: + pos=self.last_pos + if t is None: + t = self.default_timer + + self.set_zoom(zoom) + self.set_rotation(rotate) + self.set_pos(pos) + + if initialize: + self.last_zoom = zoom + self.last_rotate = rotate + self.last_pos = pos + + if image: + self.set_image(image, trans) + + if overlay is not False: + self.set_overlay(overlay) + + self.redraw(t) + + if pause: + renpy.pause(t) + + def redraw(self, t): + if self.image is None: + return + + if isinstance(self.image, basestring): + d = renpy.get_registered_image(self.image) + else: + d = self.image + + if d is None and self.imagepath: + d = Image("{}{}.webp".format(self.imagepath, self.image)) + + if isinstance(d, Movie): + self.scale = 2.0 + self.last_type = self.type + self.type = 1 + else: + self.scale = 1.0 + self.last_type = self.type + self.type = 0 + + if self.overlay: + overlay = Transform("{}{}.webp".format(self.imagepath, self.overlay), zoom=1.0/self.scale) + d = Fixed(d, overlay, fit_first=True) + + last_zoom = self.last_zoom * self.scale + zoom = self.zoom * self.scale + + self.child = At(d, CGCamera(last_zoom, zoom, self.last_pos, self.pos, self.last_rotate, self.rotate, t)) + + def get_image(self): + return self.child + + def get_pause(self): + if self.image is None: + return 0 + + d = renpy.get_registered_image(self.image) + if isinstance(d, Movie) and renpy.music.is_playing(d.channel): + p = renpy.music.get_pos(d.channel) or 0.0 + t = renpy.music.get_duration(d.channel) + return t - p + else: + return 0 + +default camera = CGController() + +screen animatedCG(): + tag cg + zorder 16 + + add camera.get_image() align (0.5, 0.5) diff --git a/game/scripts/cg/cho.rpy b/game/scripts/cg/cho.rpy new file mode 100644 index 00000000..cc42c02c --- /dev/null +++ b/game/scripts/cg/cho.rpy @@ -0,0 +1,1827 @@ + +# Handjob (loops) + +image cho_hj mid = Movie( + play="images/CG/cho_bj/hj/loops/mid.webm", + image="images/CG/cho_bj/hj/loops/mid.webp", + start_image="images/CG/cho_bj/hj/loops/mid.webp" + ) +image cho_hj mid annoyed = Movie( + play="images/CG/cho_bj/hj/loops/mid_annoyed.webm", + image="images/CG/cho_bj/hj/loops/mid_annoyed.webp", + start_image="images/CG/cho_bj/hj/loops/mid_annoyed.webp" + ) +image cho_hj mid blush = Movie( + play="images/CG/cho_bj/hj/loops/mid_blush.webm", + image="images/CG/cho_bj/hj/loops/mid_blush.webp", + start_image="images/CG/cho_bj/hj/loops/mid_blush.webp" + ) +image cho_hj mid blush fast = Movie( + play="images/CG/cho_bj/hj/loops/mid_blush_fast.webm", + image="images/CG/cho_bj/hj/loops/mid_blush.webp", + start_image="images/CG/cho_bj/hj/loops/mid_blush.webp" + ) +image cho_hj up = Movie( + play="images/CG/cho_bj/hj/loops/up.webm", + image="images/CG/cho_bj/hj/loops/up.webp", + start_image="images/CG/cho_bj/hj/loops/up.webp" + ) +image cho_hj up blush = Movie( + play="images/CG/cho_bj/hj/loops/up_blush.webm", + image="images/CG/cho_bj/hj/loops/up_blush.webp", + start_image="images/CG/cho_bj/hj/loops/up_blush.webp" + ) + +# Handjob Topless (loops) +image cho_hj topless mid = Movie( + play="images/CG/cho_bj/hj/loops/topless/mid.webm", + image="images/CG/cho_bj/hj/loops/topless/mid.webp", + start_image="images/CG/cho_bj/hj/loops/topless/mid.webp" + ) +image cho_hj topless mid smile = Movie( + play="images/CG/cho_bj/hj/loops/topless/mid_smile.webm", + image="images/CG/cho_bj/hj/loops/topless/mid_smile.webp", + start_image="images/CG/cho_bj/hj/loops/topless/mid_smile.webp" + ) +image cho_hj topless mid smile fast = Movie( + play="images/CG/cho_bj/hj/loops/topless/mid_smile_fast.webm", + image="images/CG/cho_bj/hj/loops/topless/mid_smile.webp", + start_image="images/CG/cho_bj/hj/loops/topless/mid_smile.webp" + ) +image cho_hj topless up = Movie( + play="images/CG/cho_bj/hj/loops/topless/up.webm", + image="images/CG/cho_bj/hj/loops/topless/up.webp", + start_image="images/CG/cho_bj/hj/loops/topless/up.webp" + ) + +image cho_hj topless up blush = Movie( + play="images/CG/cho_bj/hj/loops/topless/up_blush.webm", + image="images/CG/cho_bj/hj/loops/topless/up_blush.webp", + start_image="images/CG/cho_bj/hj/loops/topless/up_blush.webp" + ) + +# Handjob (nonloops) + +image cho_hj cum face = Movie( + play="images/CG/cho_bj/hj/nonloops/cum_face.webm", + image="images/CG/cho_bj/hj/nonloops/cum_face_end.webp", + start_image="images/CG/cho_bj/hj/nonloops/cum_face.webp", + loop=False + ) +image cho_hj cum tits = Movie( + play="images/CG/cho_bj/hj/nonloops/cum_tits.webm", + image="images/CG/cho_bj/hj/nonloops/cum_tits_end.webp", + start_image="images/CG/cho_bj/hj/nonloops/cum_tits.webp", + loop=False + ) +image cho_hj cum face tits = Movie( + play="images/CG/cho_bj/hj/nonloops/cum_face_tits.webm", + image="images/CG/cho_bj/hj/nonloops/cum_face_tits_end.webp", + start_image="images/CG/cho_bj/hj/nonloops/cum_face_tits.webp", + loop=False + ) + +image cho_hj topless cum tits = Movie( + play="images/CG/cho_bj/hj/nonloops/topless/cum_tits.webm", + image="images/CG/cho_bj/hj/nonloops/topless/cum_tits_end.webp", + start_image="images/CG/cho_bj/hj/nonloops/topless/cum_tits.webp", + loop=False + ) + +image cho_hj topless cum face tits = Movie( + play="images/CG/cho_bj/hj/nonloops/topless/cum_face_tits.webm", + image="images/CG/cho_bj/hj/nonloops/topless/cum_face_tits_end.webp", + start_image="images/CG/cho_bj/hj/nonloops/topless/cum_face_tits.webp", + loop=False + ) + +# Blowjob (loops) + +image cho_bj lick = Movie( + play="images/CG/cho_bj/bj/loops/lick.webm", + image="images/CG/cho_bj/bj/loops/lick.webp", + start_image="images/CG/cho_bj/bj/loops/lick.webp" + ) + +# Blowjob Topless (loops) + +image cho_bj topless lick = Movie( + play="images/CG/cho_bj/bj/loops/topless/lick.webm", + image="images/CG/cho_bj/bj/loops/topless/lick.webp", + start_image="images/CG/cho_bj/bj/loops/topless/lick.webp" + ) + +image cho_bj topless suck = Movie( + play="images/CG/cho_bj/bj/loops/topless/suck.webm", + image="images/CG/cho_bj/bj/loops/topless/suck.webp", + start_image="images/CG/cho_bj/bj/loops/topless/suck.webp" + ) + +image cho_bj topless suck closed = Movie( + play="images/CG/cho_bj/bj/loops/topless/suck_closed.webm", + image="images/CG/cho_bj/bj/loops/topless/suck_closed.webp", + start_image="images/CG/cho_bj/bj/loops/topless/suck_closed.webp" + ) + +image cho_bj topless suck medium = Movie( + play="images/CG/cho_bj/bj/loops/topless/suck_medium.webm", + image="images/CG/cho_bj/bj/loops/topless/suck_medium.webp", + start_image="images/CG/cho_bj/bj/loops/topless/suck_medium.webp" + ) + +image cho_bj topless suck medium up = Movie( + play="images/CG/cho_bj/bj/loops/topless/suck_medium_up.webm", + image="images/CG/cho_bj/bj/loops/topless/suck_medium_up.webp", + start_image="images/CG/cho_bj/bj/loops/topless/suck_medium_up.webp" + ) + +image cho_bj topless suck deep = Movie( + play="images/CG/cho_bj/bj/loops/topless/suck_deep.webm", + image="images/CG/cho_bj/bj/loops/topless/suck_deep.webp", + start_image="images/CG/cho_bj/bj/loops/topless/suck_deep.webp" + ) + +# Blowjob (nonloops) + +image cho_bj lick fail = Movie( + play="images/CG/cho_bj/bj/nonloops/lick_fail.webm", + image="images/CG/cho_bj/bj/nonloops/lick_fail_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/lick_fail.webp", + loop=False + ) +image cho_bj lick success = Movie( + play="images/CG/cho_bj/bj/nonloops/lick_success.webm", + image="images/CG/cho_bj/bj/nonloops/lick_success.webp", + start_image="images/CG/cho_bj/bj/nonloops/lick_success.webp", + loop=False + ) +image cho_bj lick start = Movie( + play="images/CG/cho_bj/bj/nonloops/lick_start.webm", + image="images/CG/cho_bj/bj/nonloops/lick_start_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/lick_start.webp", + loop=False + ) + +# Blowjob Topless (nonloops) + +image cho_bj topless lick success = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/lick_success.webm", + image="images/CG/cho_bj/bj/nonloops/topless/lick_success.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/lick_success.webp", + loop=False + ) + +image cho_bj topless lick start = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/lick_start.webm", + image="images/CG/cho_bj/bj/nonloops/topless/lick_start_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/lick_start.webp", + loop=False + ) + +image cho_bj topless lick exit = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/lick_exit.webm", + image="images/CG/cho_bj/bj/nonloops/topless/lick_exit_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/lick_exit.webp", + loop=False + ) + +image cho_bj topless suck start = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/suck_start.webm", + image="images/CG/cho_bj/bj/nonloops/topless/suck_start_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/suck_start.webp", + loop=False + ) + +image cho_bj topless suck closed success = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/suck_closed_success.webm", + image="images/CG/cho_bj/bj/nonloops/topless/suck_closed_start.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/suck_closed_start.webp", + loop=False + ) + +image cho_bj topless suck closed fail = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail.webm", + image="images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail.webp", + loop=False + ) + +image cho_bj topless suck closed fail exit = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit.webm", + image="images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/suck_closed_fail_exit.webp", + loop=False + ) + +image cho_bj topless suck closed start = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/suck_closed_start.webm", + image="images/CG/cho_bj/bj/nonloops/topless/suck_closed_start_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/suck_closed_start.webp", + loop=False + ) + +image cho_bj topless suck closed exit = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit.webm", + image="images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/suck_closed_exit.webp", + loop=False + ) + +image cho_bj topless suck medium start = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/suck_medium_start.webm", + image="images/CG/cho_bj/bj/nonloops/topless/suck_medium_start_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/suck_medium_start.webp", + loop=False + ) + +image cho_bj topless suck deep start = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/suck_deep_start.webm", + image="images/CG/cho_bj/bj/nonloops/topless/suck_deep_start_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/suck_deep_start.webp", + loop=False + ) + +image cho_bj topless cum mouth = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/cum_mouth.webm", + image="images/CG/cho_bj/bj/nonloops/topless/cum_mouth_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/cum_mouth.webp", + loop=False + ) + +image cho_bj topless cum swallow = Movie( + play="images/CG/cho_bj/bj/nonloops/topless/cum_swallow.webm", + image="images/CG/cho_bj/bj/nonloops/topless/cum_swallow_end.webp", + start_image="images/CG/cho_bj/bj/nonloops/topless/cum_swallow.webp", + loop=False + ) + +image cho_bj_desk_idle: + zoom 0.25 + "images/CG/cho_bj_desk/idle.webp" + +image cho_bj_desk_idle_overlay: + zoom 0.25 + "images/CG/cho_bj_desk/overlay_idle.webp" + +image cho_bj_desk_idle_mask: + zoom 0.25 + "images/CG/cho_bj_desk/mask_idle.webp" + +image cho_bj_desk_idle_snape: + zoom 0.25 + "images/CG/cho_bj_desk/bj_out.webp" + +image cho_bj_desk_idle_snape_no_spit: + zoom 0.25 + "images/CG/cho_bj_desk/bj_out_no_spit.webp" + +image cho_bj_desk_hj: + zoom 0.25 + "images/CG/cho_bj_desk/hj_down.webp" #with dissolve + pause 0.66 + "images/CG/cho_bj_desk/hj_up.webp" #with dissolve + pause 0.66 + repeat + +image cho_bj_desk_hj_overlay: + zoom 0.25 + "images/CG/cho_bj_desk/overlay.webp" + +image cho_bj_desk_hj_mask: + zoom 0.25 + "images/CG/cho_bj_desk/mask.webp" + +image cho_bj_desk_bj: + zoom 0.25 + "images/CG/cho_bj_desk/bj_out.webp" #with dissolve + pause 0.66 + "images/CG/cho_bj_desk/bj_in.webp" #with dissolve + pause 0.66 + repeat + +image cho_bj_desk_bj_fast: + zoom 0.25 + "images/CG/cho_bj_desk/bj_out.webp" #with dissolve + pause 0.33 + "images/CG/cho_bj_desk/bj_in.webp" #with dissolve + pause 0.33 + repeat + +image cho_bj_desk_bj_overlay: + zoom 0.25 + "images/CG/cho_bj_desk/overlay.webp" + +image cho_bj_desk_bj_mask: + zoom 0.25 + "images/CG/cho_bj_desk/mask.webp" + +image cho_under_desk_idle = Xray("cho_bj_desk_idle", "cho_bj_desk_idle_overlay", "cho_bj_desk_idle_mask") +image cho_under_desk_idle_snape = Xray("cho_bj_desk_idle_snape", "cho_bj_desk_bj_overlay", "cho_bj_desk_bj_mask") +image cho_under_desk_handjob = Xray("cho_bj_desk_hj", "cho_bj_desk_hj_overlay", "cho_bj_desk_hj_mask") +image cho_under_desk_blowjob = Xray("cho_bj_desk_bj", "cho_bj_desk_bj_overlay", "cho_bj_desk_bj_mask") +image cho_under_desk_blowjob_fast = Xray("cho_bj_desk_bj", "cho_bj_desk_bj_overlay", "cho_bj_desk_bj_mask") +image cho_under_desk_idle_snape_no_spit = Xray("cho_bj_desk_idle_snape_no_spit", "cho_bj_desk_bj_overlay", "cho_bj_desk_bj_mask") + +transform softblink: + choice: + linear 1.0 alpha 0.0 + linear 1.0 alpha 1.0 + choice: + linear 2.0 alpha 0.0 + linear 2.0 alpha 1.0 + choice: + linear 3.0 alpha 0.0 + linear 3.0 alpha 1.0 + + repeat + +image dustparticles_big = SnowBlossom(At("images/CG/cho_sex/blob.webp", softblink), start=0.01, border=100, count=50, fast=True, yspeed=(-50, -40), xspeed=(-100,100), horizontal=True) +image dustparticles_medium = SnowBlossom(At(Transform("images/CG/cho_sex/blob.webp", zoom=0.5), softblink), start=0.0075, border=75, count=50, fast=True, yspeed=(-25, -20), xspeed=(-50,50), horizontal=True) +image dustparticles_small = SnowBlossom(At(Transform("images/CG/cho_sex/blob.webp", zoom=0.25), softblink), start=0.005, border=100, count=75, fast=True, yspeed=(-12, -10), xspeed=(-25,25), horizontal=True) + +image dustfloating: + contains: + "dustparticles_big" + + contains: + "dustparticles_medium" + + contains: + "dustparticles_small" + +image cho_sex idle: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/idle/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/idle/blink.webp" + pause 0.1 + "images/CG/cho_sex/idle/cho.webp" + pause 0.1 + "images/CG/cho_sex/idle/blink.webp" + choice: + "images/CG/cho_sex/idle/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.025 xzoom 1.01 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/idle/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/idle/penis.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + +image cho_sex up: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/up/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/up/blink.webp" + pause 0.1 + "images/CG/cho_sex/up/cho.webp" + pause 0.1 + "images/CG/cho_sex/up/blink.webp" + choice: + "images/CG/cho_sex/up/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/penis.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yoffset absolute(2.1) + linear 2.0 yoffset absolute(0) + repeat + +image cho_sex up jerking: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/up/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/up/blink.webp" + pause 0.1 + "images/CG/cho_sex/up/cho.webp" + pause 0.1 + "images/CG/cho_sex/up/blink.webp" + choice: + "images/CG/cho_sex/up/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/up/genie_masturbate.webp" with d1 + pause 0.25 + "images/CG/cho_sex/up/genie_masturbate2.webp" with d1 + pause 0.25 + repeat + + parallel: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + + contains: + zoom 0.25 + "images/CG/cho_sex/up/speed.webp" + +image cho_sex up taste: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/up_taste/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/up_taste/blink.webp" + pause 0.1 + "images/CG/cho_sex/up_taste/cho.webp" + pause 0.1 + "images/CG/cho_sex/up_taste/blink.webp" + choice: + "images/CG/cho_sex/up_taste/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up_taste/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up_taste/penis.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yoffset absolute(2.1) + linear 2.0 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up_taste/cum_inside.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yoffset absolute(2.1) + linear 2.0 yoffset absolute(0) + repeat + +image cho_sex up taste outside: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/up_taste/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/up_taste/blink.webp" + pause 0.1 + "images/CG/cho_sex/up_taste/cho.webp" + pause 0.1 + "images/CG/cho_sex/up_taste/blink.webp" + choice: + "images/CG/cho_sex/up_taste/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up_taste/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up_taste/penis.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up_taste/cum_outside_stage3.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + +image cho_sex insert: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/insert/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/insert/blink.webp" + pause 0.1 + "images/CG/cho_sex/insert/cho.webp" + pause 0.1 + "images/CG/cho_sex/insert/blink.webp" + choice: + "images/CG/cho_sex/insert/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/insert/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + +image cho_sex insert cum inside: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/insert/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/insert/blink.webp" + pause 0.1 + "images/CG/cho_sex/insert/cho.webp" + pause 0.1 + "images/CG/cho_sex/insert/blink.webp" + choice: + "images/CG/cho_sex/insert/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/insert/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + yoffset 3 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/insert/cum_inside.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + +image cho_sex up inside: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/up/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/up/blink.webp" + pause 0.1 + "images/CG/cho_sex/up/cho.webp" + pause 0.1 + "images/CG/cho_sex/up/blink.webp" + choice: + "images/CG/cho_sex/up/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/penis_inside.webp" + + block: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + +image cho_sex up cum inside: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/up/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/up/blink.webp" + pause 0.1 + "images/CG/cho_sex/up/cho.webp" + pause 0.1 + "images/CG/cho_sex/up/blink.webp" + choice: + "images/CG/cho_sex/up/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + yoffset 3 + + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/penis_inside.webp" + + block: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/cum_inside.webp" + + block: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + +image cho_sex up cum outside: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/up/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/up/blink.webp" + pause 0.1 + "images/CG/cho_sex/up/cho.webp" + pause 0.1 + "images/CG/cho_sex/up/blink.webp" + choice: + "images/CG/cho_sex/up/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + yoffset absolute(3) + + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/penis.webp" + + block: + subpixel True + xzoom 1.01 + yzoom 1.0 + yoffset absolute(2.9) + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-1.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(2.9) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/cum_outside.webp" + + block: + subpixel True + xzoom 1.01 + yzoom 1.0 + yoffset absolute(2.9) + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-1.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(2.9) + repeat + +image cho_sex up cum outside stage1: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/up/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/up/blink.webp" + pause 0.1 + "images/CG/cho_sex/up/cho.webp" + pause 0.1 + "images/CG/cho_sex/up/blink.webp" + choice: + "images/CG/cho_sex/up/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/genie_masturbate.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/cum_outside_stage1.webp" + + block: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + +image cho_sex up cum outside stage2: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/up/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/up/blink.webp" + pause 0.1 + "images/CG/cho_sex/up/cho.webp" + pause 0.1 + "images/CG/cho_sex/up/blink.webp" + choice: + "images/CG/cho_sex/up/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/genie_masturbate.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/cum_outside_stage2.webp" + + block: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + +image cho_sex up cum outside stage3: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/up/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/up/blink.webp" + pause 0.1 + "images/CG/cho_sex/up/cho.webp" + pause 0.1 + "images/CG/cho_sex/up/blink.webp" + choice: + "images/CG/cho_sex/up/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/penis.webp" + + block: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-1.7) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(2.5) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/cum_outside_stage3.webp" + + block: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-1.7) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(2.5) + repeat + +image cho_sex up cum outside stage0: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/up/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/up/blink.webp" + pause 0.1 + "images/CG/cho_sex/up/cho.webp" + pause 0.1 + "images/CG/cho_sex/up/blink.webp" + choice: + "images/CG/cho_sex/up/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/genie_masturbate.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/up/cum_outside_spurt.webp" + + block: + subpixel True + xzoom 1.01 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 1.0 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.01 yoffset absolute(0) + repeat + +image cho_sex middle: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/middle/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/middle/blink.webp" + pause 0.1 + "images/CG/cho_sex/middle/cho.webp" + pause 0.1 + "images/CG/cho_sex/middle/blink.webp" + choice: + "images/CG/cho_sex/middle/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 0.99 yoffset absolute(-1.3) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/middle/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + +image cho_sex middle cum inside: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/middle/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/middle/blink.webp" + pause 0.1 + "images/CG/cho_sex/middle/cho.webp" + pause 0.1 + "images/CG/cho_sex/middle/blink.webp" + choice: + "images/CG/cho_sex/middle/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 0.99 yoffset absolute(-1.3) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/middle/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/middle/cum_inside.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + +image cho_sex down: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/down/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/down/blink.webp" + pause 0.1 + "images/CG/cho_sex/down/cho.webp" + pause 0.1 + "images/CG/cho_sex/down/blink.webp" + choice: + "images/CG/cho_sex/down/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 0.99 yoffset absolute(-1.3) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/down/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + +image cho_sex loop cho mid: + "images/CG/cho_sex/middle/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/middle/blink.webp" + pause 0.1 + "images/CG/cho_sex/middle/cho.webp" + pause 0.1 + "images/CG/cho_sex/middle/blink.webp" + choice: + "images/CG/cho_sex/middle/blink.webp" + + pause 0.1 + repeat + +image cho_sex loop cho down: + "images/CG/cho_sex/down/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/down/blink.webp" + pause 0.1 + "images/CG/cho_sex/down/cho.webp" + pause 0.1 + "images/CG/cho_sex/down/blink.webp" + choice: + "images/CG/cho_sex/down/blink.webp" + + pause 0.1 + repeat + +image cho_sex loop slow: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "cho_sex loop cho down" with d1 + pause 0.55 + "cho_sex loop cho mid" with d1 + pause 0.55 + repeat + + parallel: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 0.99 yoffset absolute(-1.3) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/down/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + +image cho_sex loop fast: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "cho_sex loop cho down" with d1 + pause 0.33 + "cho_sex loop cho mid" with d1 + pause 0.33 + repeat + + parallel: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.01 xzoom 0.99 yoffset absolute(-1.3) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/down/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(3) + repeat + + contains: + zoom 0.25 + "images/CG/cho_sex/speed.webp" + + # block: + # ypos 7 + # pause 0.33 + # ypos -7 + # pause 0.33 + # repeat + +image cho_sex idle creampie: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/idle/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/idle/blink.webp" + pause 0.1 + "images/CG/cho_sex/idle/cho.webp" + pause 0.1 + "images/CG/cho_sex/idle/blink.webp" + choice: + "images/CG/cho_sex/idle/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.025 xzoom 1.01 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/idle/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/idle/creampie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + +image cho_sex idle cum inside: + + contains: + zoom 0.25 + "images/CG/cho_sex/background.webp" + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + + parallel: + "images/CG/cho_sex/idle/cho.webp" + + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + + choice: + "images/CG/cho_sex/idle/blink.webp" + pause 0.1 + "images/CG/cho_sex/idle/cho.webp" + pause 0.1 + "images/CG/cho_sex/idle/blink.webp" + choice: + "images/CG/cho_sex/idle/blink.webp" + + pause 0.1 + repeat + + parallel: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.025 xzoom 1.01 yoffset absolute(-3.4) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/idle/genie.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat + + contains: + anchor (0.5, 0.5) + align (0.5, 0.5) + zoom 0.25 + "images/CG/cho_sex/idle/penis_cum_inside.webp" + + block: + subpixel True + xzoom 1.0 + yzoom 1.0 + linear 2.0 yzoom 1.05 xzoom 0.99 yoffset absolute(-6.8) + linear 2.0 yzoom 1.0 xzoom 1.0 yoffset absolute(0) + repeat diff --git a/game/scripts/cg/common.rpy b/game/scripts/cg/common.rpy new file mode 100644 index 00000000..275e1a90 --- /dev/null +++ b/game/scripts/cg/common.rpy @@ -0,0 +1,121 @@ + +init 5 python: + def her_cg_doll(st, at): + return hermione.get_image(), None + + def lun_cg_doll(st, at): + return luna.get_image(), None + + def ton_cg_doll(st, at): + return tonks.get_image(), None + + def cho_cg_doll(st, at): + return cho.get_image(), None + + def ast_cg_doll(st, at): + return astoria.get_image(), None + + def sus_cg_doll(st, at): + return susan.get_image(), None + +image CG her_doll = DynamicDisplayable(her_cg_doll) +image CG lun_doll = DynamicDisplayable(lun_cg_doll) +image CG ton_doll = DynamicDisplayable(ton_cg_doll) +image CG cho_doll = DynamicDisplayable(cho_cg_doll) +image CG ast_doll = DynamicDisplayable(ast_cg_doll) +image CG sus_doll = DynamicDisplayable(sus_cg_doll) + +image CG luna = Fixed( + "images/CG/common/bg.webp", + AlphaMask(Composite((2160, 1200), (880, -180), Transform("CG lun_doll", zoom=1.2)), "images/CG/common/mask.webp"), + ) + +image CG hermione = Fixed( + "images/CG/common/bg.webp", + AlphaMask(Composite((2160, 1200), (880, -180), Transform("CG her_doll", zoom=1.2)), "images/CG/common/mask.webp"), + ) + +image CG tonks = Fixed( + "images/CG/common/bg.webp", + AlphaMask(Composite((2160, 1200), (880, -180), Transform("CG ton_doll", zoom=1.2)), "images/CG/common/mask.webp"), + ) + +image CG cho = Fixed( + "images/CG/common/bg.webp", + AlphaMask(Composite((2160, 1200), (880, -180), Transform("CG cho_doll", zoom=1.2)), "images/CG/common/mask.webp"), + ) + +image CG astoria = Fixed( + "images/CG/common/bg.webp", + AlphaMask(Composite((2160, 1200), (880, -180), Transform("CG ast_doll", zoom=1.2)), "images/CG/common/mask.webp"), + ) + +image CG susan = Fixed( + "images/CG/common/bg.webp", + AlphaMask(Composite((2160, 1200), (880, -180), Transform("CG sus_doll", zoom=1.2)), "images/CG/common/mask.webp"), + ) + +# TODO: Review the code below. + + + + + + + + + + +# Miscellaneous CG code + +label cg_scene(layer=None, folder=None, trans=d5): + hide screen cg + + if folder != None: + $ cg_path = "images/CG/"+folder+"/" + + if layer != None: + $ cg_image = cg_path+layer+".webp" + + show screen cg + with trans + return + +screen cg(): + # Used by label cg_scene + tag cg_screen + zorder 14 + + add cg_image xpos 540 xanchor 0.5 ypos 0 # At Screen Center + +# Snape CG +screen snape_groping(): + add "images/CG/scene_01.webp" zoom 0.5 + zorder 14 + +screen snape_facial(): + add "images/CG/scene_03.webp" zoom 0.5 + zorder 14 + +screen snape_sex(): + add "images/CG/scene_04.webp" zoom 0.5 + zorder 14 + +screen dual_hand_job(): + add "images/CG/scene_02.webp" zoom 0.5 + zorder 14 + +init python: + def dynamic_cg(folder, *args): + d = tuple("images/CG/{}/{}.webp".format(folder, file) for file in args) + + renpy.show_screen("dynamic_cg", d) + renpy.with_statement(d5) + return + +screen dynamic_cg(d): + tag cg_screen + zorder 14 + + for img in d: + add img diff --git a/game/scripts/cg/hermione.rpy b/game/scripts/cg/hermione.rpy new file mode 100644 index 00000000..57234e2c --- /dev/null +++ b/game/scripts/cg/hermione.rpy @@ -0,0 +1,67 @@ +init 5 python: + + def her_cg_doll_fix(st, at): + """Used to fix the jaw issues on bent-over pose""" + + face = hermione.get_face() + mouth = face["mouth"] + + if hermione.pose == "CG_bent_over" and mouth in ("scream", "open_wide_tongue"): + return Image("images/CG/her_sex/{}.webp".format(mouth)), None + return Null(), None + + def gen_cg_doll(st, at): + d = Image("{}genie_{}.webp".format(genie_doll_path, genie_doll)) + return d, None + +default genie_doll_path = "images/CG/her_sex/" +default genie_doll = "hold" +default genie_doll_armfix = "images/CG/her_sex/hold_armfix.webp" + +image CG genie_armfix = DynamicImage("[genie_doll_armfix]") + +image CG her_doll_fix = DynamicDisplayable(her_cg_doll_fix) +image CG gen_doll = DynamicDisplayable(gen_cg_doll) + +image CG her_sex = Fixed( + "images/CG/her_sex/background.webp", + "CG gen_doll", + "CG her_doll", + "CG her_doll_fix", + "images/CG/her_sex/foreground.webp", + "CG genie_armfix", + ) + +image CG her_intro hermione = Fixed( + "images/CG/her_intro/bg.webp", + AlphaMask(Composite((2160, 1200), (880, -180), Transform("CG her_doll", zoom=1.2)), "images/CG/her_intro/mask.webp"), + ) + +image CG her_intro hermione bendover = Fixed( + "images/CG/her_intro/bg.webp", + "images/CG/her_intro/hermione_bendover.webp", + ) + +image CG breast expand corridor A1: + "images/CG/her_potions/breast_expand/corridor_a1.webp" + +image CG breast expand corridor B1: + "images/CG/her_potions/breast_expand/corridor_b1.webp" + +image CG breast expand classroom A1: + "images/CG/her_potions/breast_expand/classroom_a1.webp" + +image CG breast expand classroom A2: + "images/CG/her_potions/breast_expand/classroom_a2.webp" + +image CG breast expand classroom B1: + "images/CG/her_potions/breast_expand/classroom_b1.webp" + +image CG breast expand classroom B2: + "images/CG/her_potions/breast_expand/classroom_b2.webp" + +image CG ass expand classroom A1: + "images/CG/her_potions/ass_expand/classroom_a1.webp" + +image CG ass expand classroom A2: + "images/CG/her_potions/ass_expand/classroom_a2.webp" diff --git a/game/scripts/cg/luna.rpy b/game/scripts/cg/luna.rpy new file mode 100644 index 00000000..fff8f1ea --- /dev/null +++ b/game/scripts/cg/luna.rpy @@ -0,0 +1,10 @@ + +image CG lun_intro luna bendover = Fixed( + "images/CG/lun_intro/bg.webp", + "images/CG/lun_intro/luna.webp", + ) + +image CG lun_intro luna bendover naked = Fixed( + "images/CG/lun_intro/bg.webp", + "images/CG/lun_intro/luna_naked.webp", + ) diff --git a/game/scripts/cg/xray.rpy b/game/scripts/cg/xray.rpy new file mode 100644 index 00000000..6968a820 --- /dev/null +++ b/game/scripts/cg/xray.rpy @@ -0,0 +1,87 @@ + +init python: + renpy.register_shader("xray_shader", variables=""" + uniform float u_lod_bias; + uniform sampler2D tex0; + uniform sampler2D tex1; + uniform sampler2D tex2; + uniform vec2 u_pos; + uniform float u_radius; + attribute vec2 a_tex_coord; + varying vec2 v_tex_coord; + """, vertex_600=""" + v_tex_coord = a_tex_coord; + """, fragment_600=""" + vec4 color0 = texture2D(tex0, v_tex_coord.st, u_lod_bias); + vec4 color1 = texture2D(tex1, v_tex_coord.st, u_lod_bias); + vec4 mask = texture2D(tex2, v_tex_coord.st, u_lod_bias); + + float position = length(u_pos-v_tex_coord.st); + float distance = sqrt(dot(position, position)); + float smoothing = smoothstep(u_radius+0.01, u_radius-0.1, distance); + + if ( (distance < u_radius) ) { + vec4 masking = mix(color0, color1, mask.a); + gl_FragColor = mix(color1, masking, smoothing); + } + else { + gl_FragColor = color1; + } + """) + + class Xray(renpy.Displayable, NoRollback): + nosave = [ + "child", + "overlay", + "mask", + ] + + def __init__(self, child, overlay, mask=Null(), radius=0.25, **kwargs): + super(Xray, self).__init__() + + self.child = renpy.displayable(child) + self.overlay = renpy.displayable(overlay) + self.mask = renpy.displayable(mask) + self.radius = radius + self.target = (0, 0) + + def render(self, width, height, st, at): + child = renpy.render(self.child, width, height, st, at) + overlay = renpy.render(self.overlay, width, height, st, at) + mask = renpy.render(self.mask, width, height, st, at) + + rv = renpy.Render(width, height, opaque=False) + + rv.operation = renpy.display.render.IMAGEDISSOLVE + rv.operation_alpha = 1.0 + rv.operation_complete = 256.0 / (256.0 + 256.0) + rv.operation_parameter = 256 + + rv.mesh = True + rv.add_shader("xray_shader") + rv.add_uniform("u_pos", self.target) + rv.add_uniform("u_radius", self.radius) + rv.add_property("mipmap", renpy.config.mipmap_dissolves if (self.style.mipmap is None) else self.style.mipmap) + + rv.blit(child, (0, 0)) + rv.blit(overlay, (0, 0)) + rv.blit(mask, (0, 0)) + + return rv + + def event(self, ev, x, y, st): + + if not pygame.mouse.get_focused(): + return + + # if not ev.type == pygame.MOUSEMOTION: + # returnO + + xtarget, ytarget = self.target + + if (x != xtarget) or (y != ytarget): + self.target = (float(x) / config.screen_width, float(y) / config.screen_height) + renpy.redraw(self, 0) + + def visit(self): + return [ self.child, self.overlay ] diff --git a/game/scripts/characters.rpy b/game/scripts/characters.rpy new file mode 100644 index 00000000..8dbea8ab --- /dev/null +++ b/game/scripts/characters.rpy @@ -0,0 +1,90 @@ +# Narrator (not the same as 'nar' character) +label nar(text="", action=""): + + if action != "end": #Narration ended, blktone was already active. + show screen blktone + with d3 + + if text != "": + "[text]" + + if action != "start": #Narration just started, blktone won't get hidden. + hide screen blktone + with d3 + + return + +init -1401 python: + # Remove style overrides + adv.who_args.pop("style", None) + adv.what_args.pop("style", None) + adv.window_args.pop("style", None) + + # Default icon + adv.show_args["icon"] = "narrator" + +# Characters +define m = Character(None, show_side_image=Image("characters/genie/mage.webp", xpos=20), show_icon="genie") +define g2 = Character(None, show_side_image=Image("characters/genie/mage2.webp", xpos=20), show_icon="genie") +define g3 = Character(None, show_side_image=Image("characters/genie/mage3.webp", xpos=20), show_icon="genie") +define g4 = Character(None, show_side_image=Image("characters/genie/mage4.webp", xpos=20), show_icon="genie") +define g5 = Character(None, show_side_image=Image("characters/genie/mage5.webp", xpos=20), show_icon="genie") +define g6 = Character(None, show_side_image=Image("characters/genie/mage6.webp", xpos=20), show_icon="genie") +define g7 = Character(None, show_side_image=Image("characters/genie/mage7.webp", xpos=20), show_icon="genie") +define g8 = Character(None, show_side_image=Image("characters/genie/mage8.webp", xpos=20), show_icon="genie") +define g9 = Character(None, show_side_image=Image("characters/genie/mage9.webp", xpos=20), show_icon="genie") +define g10 = Character(None, show_side_image=Image("characters/genie/mage10.webp", xpos=20), show_icon="genie") +define g11 = Character(None, show_side_image=Image("characters/genie/mage11.webp", xpos=20), show_icon="genie") +define g12 = Character(None, show_side_image=Image("characters/genie/mage12.webp", xpos=20), show_icon="genie") +define g13 = Character(None, show_side_image=Image("characters/genie/mage13.webp", xpos=20), show_icon="genie") +define g14 = Character(None, show_side_image=Image("characters/genie/mage14.webp", xpos=20), show_icon="genie") +define g15 = Character(None, show_side_image=Image("characters/genie/mage15.webp", xpos=20), show_icon="genie") +define g16 = Character(None, show_side_image=Image("characters/genie/mage16.webp", xpos=20), show_icon="genie") + +# Students +define twi = Character("Fred and George", show_side_image=Image("characters/misc/weasley_twins/base_01.webp", xalign=1.0), show_icon="fred") +define fre = Character("Fred", show_side_image=Image("characters/misc/weasley_twins/fred_01.webp", xalign=1.0), show_icon="fred") +define ger = Character("George", show_side_image=Image("characters/misc/weasley_twins/george_01.webp", xalign=1.0), show_icon="george") + +# Teachers +define spo = Character("Professor Sprout") + +# Side characters +define hat = Character("Sorting Hat", show_side_image=Image("characters/misc/hat.webp", xalign=1.0), show_icon="hat") +define helf = Character("House-Elf", show_side_image=Image("characters/misc/elf.webp", xalign=0.95)) +define malf = Character("Malfoy") +define cra = Character("Crabbe") +define goy = Character("Goyle") +define maf = Character("Madam Mafkin", show_side_image=Image("characters/misc/mafkin.webp", xalign=1.0)) +define myr = Character("Moaning Myrtle") +define faw = Character('Fawkes', show_icon="fawkes") +define abe = Character('Aberforth') + +# Non-important characters +define fem = Character("Female Student") +define femv = Character("Female Voice") +define mal = Character("Male Student") +define mal2 = Character("Another Male Student") +define sly1 = Character("Slytherin student") +define sly2 = Character("Another Slytherin student") +define qcr = Character("Quidditch Crowd") + +# Special +define nar = Character("Narrator", show_side_image=Image("characters/misc/narrator.webp")) +define anon = Character("???") + +# Dumbledore +define dum1 = Character("[dumbledore_name]", show_side_image=Image("characters/misc/dumbledore/dum_1.webp"), show_icon="dumbledore") +define dum2 = Character("[dumbledore_name]", show_side_image=Image("characters/misc/dumbledore/dum_2.webp"), show_icon="dumbledore") +define dum3 = Character("[dumbledore_name]", show_side_image=Image("characters/misc/dumbledore/dum_3.webp"), show_icon="dumbledore") +define dum4 = Character("[dumbledore_name]", show_side_image=Image("characters/misc/dumbledore/dum_4.webp"), show_icon="dumbledore") +define dum5 = Character("[dumbledore_name]", show_side_image=Image("characters/misc/dumbledore/dum_5.webp"), show_icon="dumbledore") + +# Santa +define san1 = Character("Santa", show_side_image=Image("characters/misc/santa/santa_1.webp"), show_icon="santa") +define san2 = Character("Santa", show_side_image=Image("characters/misc/santa/santa_2.webp"), show_icon="santa") +define san3 = Character("Santa", show_side_image=Image("characters/misc/santa/santa_3.webp"), show_icon="santa") +define san4 = Character("Santa", show_side_image=Image("characters/misc/santa/santa_4.webp"), show_icon="santa") +define san5 = Character("Santa", show_side_image=Image("characters/misc/santa/santa_5.webp"), show_icon="santa") +define san6 = Character("Santa", show_side_image=Image("characters/misc/santa/santa_6.webp"), show_icon="santa") +define san7 = Character("Santa", show_side_image=Image("characters/misc/santa/santa_7.webp"), show_icon="santa") diff --git a/game/scripts/characters/astoria/chibi.rpy b/game/scripts/characters/astoria/chibi.rpy new file mode 100644 index 00000000..da58ac5e --- /dev/null +++ b/game/scripts/characters/astoria/chibi.rpy @@ -0,0 +1,84 @@ +label ast_chibi(action=None, xpos=None, ypos=None, flip=False): + $ astoria_chibi.position(xpos, ypos, flip) + + if action == "hide": + $ astoria_chibi.hide() + return + elif action == "leave": + hide astoria_main + hide screen bld1 + hide screen blktone + call play_sound("door") + $ astoria_chibi.hide() + with d3 + pause .5 + return + elif action == "reset": + $ astoria_chibi.do(None) + return + + $ astoria_chibi.do(action) + + return + +label ast_walk(xpos=None, ypos=None, speed=1.0, action=None, reduce=False, path=None, flip=False): + call hide_characters + hide screen bld1 + hide screen blktone + with d3 + + if action == "enter": + call play_sound("door") + call ast_chibi(None, "door", "base", flip) + with d3 + if xpos or ypos: + $ astoria_chibi.move((xpos, ypos), speed, reduce) + elif action == "leave": + $ astoria_chibi.show() + $ astoria_chibi.move(("door", "base"), speed, reduce) + call play_sound("door") + $ astoria_chibi.hide() + with d3 + pause .5 + elif path: + $ astoria_chibi.show() + $ astoria_chibi.move(path, speed, reduce) + else: + $ astoria_chibi.show() + $ astoria_chibi.move((xpos, ypos), speed, reduce) + + return + +# Screens +screen ast_cloth_pile(position=(440, 425)): # Default position: Right of desk, below feet. + tag ast_cloth_pile + zorder astoria_chibi.zorder + add "characters/chibis/cloth_pile_r.webp" pos position zoom 0.5 + +# Chibi definition +default astoria_chibi = Chibi("astoria", ["fix", "base", "bottom", "shoes", "top", "robe", "gloves"], update_astoria_chibi) + +init python: + def update_astoria_chibi(chibi): + # Assume chibi action has a matching image definition + chibi_image = "ch_ast {}".format(chibi.action or "stand") + chibi["base"] = chibi_image + + # Determine clothing state + + if astoria.is_worn("top"): + chibi["top"] = "ag_top.webp" + + if astoria.is_worn("bottom") or (astoria.is_worn("top") and astoria.get_equipped("top").id == ast_top_ann.id): + chibi["bottom"] = "ag_skirt.webp" + + if astoria.is_worn("robe") and not chibi.special: + chibi["robe"] = "ag_robe.webp" + + if astoria.is_any_worn("bottom", "stockings"): + if chibi.action == "wand_imperio": + chibi["shoes"] = "ch_ast imperio_shoes" + elif chibi.action == "walk": + chibi["shoes"] = "ch_ast walk_shoes" + else: + chibi["shoes"] = "ag_shoes.webp" diff --git a/game/scripts/characters/astoria/chitchats.rpy b/game/scripts/characters/astoria/chitchats.rpy new file mode 100644 index 00000000..8b60ee64 --- /dev/null +++ b/game/scripts/characters/astoria/chitchats.rpy @@ -0,0 +1,117 @@ + +label astoria_chitchat: + + if astoria_chatted: + return + + $ astoria_chatted = True + + # Story related chitchats (marked out as they are meant to be added into randomized set of chats when counter is met) + + # if ag_st_imperio.counter == 1: + # ast "Professor Tonks keeps telling me these stupid things about temper and focus." ("clench", "base", "base", "down") + # ast "Why can't this stupid curse just work like it should!?" ("open", "base", "angry", "mid") + # ast "Stupid...{w=0.5} Cursed...{w=0.5} {size=+5}CURSE!{/size}" ("angry", "narrow", "angry", "down") + # + # elif ag_st_imperio.counter == 2: + # ast "I've heard about some students taking private tutoring from other teachers..." ("open", "base", "base", "mid") + # ast "When Professor Tonks asked me to let her tutor me I didn't think it was going to be so...{w=0.5} hands on..." ("annoyed", "narrow", "angry", "R") + # + # elif ag_st_imperio.counter == 3: + # ast "This spell training thing is so easy, Tonks doesn't seem to be able to resist me at all." ("smile", "narrow", "base", "R") + # ast "I can't wait for another go at it!" ("open", "narrow", "base", "down") + # + # elif ag_st_imperio.counter == 4: + # ast "How come you constantly have me use Imperio to make Tonks take her clothes off?" ("annoyed", "narrow", "worried", "mid") + # ast "Let's have her do something more fun like...{w=0.4} *uhm*...{w=0.4} bark like a dog or...{w=0.4} step on a lego brick." ("horny", "base", "base", "down") + # + # elif ag_se_imperio_sb.counter >= 1: + # ast "Susan is such a dumb cow." ("clench", "base", "base", "mid") + # ast "I can't believe that she's as gullible as she is." ("angry", "closed", "base", "mid") + # ast "Well, I guess that's what you'd expect from a Hufflepuff." ("base", "base", "base", "down") + + # Note: Astoria does not have Tiers yet. + + # if ast_tier == 1: + # # $ random_number = renpy.random.randint(MIN, MAX) + + # pass + # elif ast_tier == 2: + # # $ random_number = renpy.random.randint(MIN, MAX) + + # pass + # elif ast_tier == 3: + # # $ random_number = renpy.random.randint(MIN, MAX) + + # pass + # elif ast_tier == 4: + # $ random_number = renpy.random.randint(1, 11) + + $ random_number = renpy.random.randint(1, 15) + + if random_number == 1: + ast "Why do we have to do potions with the Gryffindors?" ("base", "narrow", "worried", "R") + ast "They have no talent whatsoever, they might as well be Hufflepuffs." ("annoyed", "narrow", "base", "mid") + ast "You can clearly tell none of them has brewed a Draught of Living Death before." ("annoyed", "base", "base", "mid") + + elif random_number == 2: + ast "Why do we even have muggle studies at Hogwarts?" ("open", "narrow", "angry", "L") + ast "One of my classmates was forced to take it by her parents, and she's one of the few Slytherins in our year taking it." ("annoyed", "base", "base", "L") + ast "It's one of the few classes my parents aren't making me take." ("open", "closed", "base", "mid") + + elif random_number == 3: + ast "Divination is one of the worst subjects at this school." ("open", "narrow", "base", "mid") + ast "We literally sat the entire lesson yesterday staring a tea leaves." ("base", "base", "angry", "R") + ast "Although that wasn't the worst bit. It was that I had to drink the tea without any sugar whatsoever." ("clench", "base", "base", "mid") + + elif random_number == 4: + ast "Why can't we learn something more useful, like how to make stink pellets or Dung bombs?" ("upset", "narrow", "base", "R") + ast "When am I ever going to use something as stupid as a Hiccoughing Potion!?" ("annoyed", "base", "base", "mid") + ast "*Hick*...{w=0.8}...{w=0.8} *Hick!*{w=0.6} Damnit..." ("open", "narrow", "worried", "down") + + elif random_number == 5: + ast "I found the perfect use for the Wingardium leviosa charm today..." ("smile", "base", "base", "mid") + ast "Granger was being especially annoying, prancing around one of the corridors, so I used it to lift her skirt up!" ("open", "base", "angry", "down") + ast "But she didn't even see that I did it! she just punched that Weasley boy on the arm." ("angry", "narrow", "base", "down", cheeks="blush") + ast "Snap-- {i}Professor{/i} Snape saw it though. I thought I was in trouble for a moment, but he just corrected me on my pronunciation." ("grin", "narrow", "base", "mid") + + elif random_number == 6: + ast "I've still not been able to cast spells properly without saying the words." ("open", "base", "base", "mid") + ast "Some bullshit about focus..." ("base", "base", "angry", "mid") + + elif random_number == 7: + ast "When are we going to learn the Serpensortia spell?" ("open", "base", "worried", "mid") + ast "I already asked Professor McGonagall, but she didn't want to teach it to us for some reason..." ("annoyed", "narrow", "angry", "mid") + + elif random_number == 8: + ast "I used a switching spell to swap one of the female Hufflepuff student clothes with one of the Gryffindor boys." ("smile", "base", "angry", "mid") + ast "You should've seen the confusion and horror on their faces..." ("grin", "narrow", "base", "L") + + elif random_number == 9: + ast "I just came back with a great haul from the last Hogsmeade trip." ("smile", "narrow", "base", "mid") + ast "My best purchase was probably the nose biting tea-cup I bought at Zonko's." ("smile", "base", "base", "mid") + + elif random_number == 10: + ast "Could you give me access to the restricted section of the library?" ("open", "base", "base", "mid") + ast "Miss Pince says I need a note from a teacher to have her fetch a book and that I'm not allowed to actually go in there..." ("annoyed", "base", "base", "mid") + + elif random_number == 11: + ast "Rules are meant to be broken. We break the laws of physics all the time so how come most teachers are so strict?" ("annoyed", "base", "angry", "mid") + + elif random_number == 12: + ast "I was bored during class and doodled a bit on one of the books I brought from the library and it started smacking me on the head." ("upset", "narrow", "angry", "mid") + ast "Why is Miss Pince allowed to jinx books when I get in trouble for making somebody's quill turn into a worm when touched?" ("base", "base", "base", "mid") + + elif random_number == 13: + ast "Flying is probably one of my favourite subjects..." ("open", "base", "base", "mid") + ast "But some of the fun was taken out of it once the other students stopped smashing into things." ("annoyed", "base", "base", "R") + + elif random_number == 14: + ast "History of magic is so dull. Who wants to sit in front of a literal ghost and listen to boring facts for hours on end?" ("clench", "closed", "base", "mid") + ast "I can't wait to drop the subject once I finish my {i}O.W.L.{/i}s." ("base", "narrow", "base", "down") + + elif random_number == 15: + ast "Professor Snape always seem to look at me whenever something goes wrong during his class... as if it's always going to be me who did it." ("annoyed", "narrow", "angry", "R") + ast "I mean, I might have but you can't prove anything..." ("upset", "narrow", "base", "down") + + return diff --git a/game/scripts/characters/astoria/common.rpy b/game/scripts/characters/astoria/common.rpy new file mode 100644 index 00000000..3eace507 --- /dev/null +++ b/game/scripts/characters/astoria/common.rpy @@ -0,0 +1,125 @@ +define ast_face = { + "mouth": { + "neutral": ["annoyed", "base"], + "happy": ["smile", "grin"], + "naughty": ["grin", "horny"], + "horny": ["grin", "horny"], + "annoyed": ["annoyed"], + "disgusted": ["clench", "annoyed"], + "angry": ["clench","angry"] + }, + + "eyes": { + "neutral": ["base"], + "happy": ["base"], + "naughty": ["narrow", "base"], + "horny": ["narrow", "base"], + "annoyed": ["narrow"], + "disgusted": ["narrow"], + "angry": ["narrow", "base"] + }, + + "eyebrows": { + "neutral": ["base"], + "happy": ["base"], + "naughty": ["base"], + "horny": ["base"], + "annoyed": ["worried"], + "disgusted": ["base", "angry"], + "angry": ["angry"] + }, + + "pupils": { + "neutral": ["mid","L","R"], + "happy": ["mid","L","R"], + "naughty": ["mid","L","R","down"], + "horny": ["mid","L","R","down"], + "annoyed": ["mid","R"], + "disgusted": ["down"], + "angry": ["L"] + } +} + +label update_astoria: + + $ random_number = renpy.random.randint(0, 5) + if random_number in [1,5]: + $ ast_susan_name = renpy.random.choice(["Suzy","Cow","Cow Tits","Milk Bag","Slut","Whore","Piggy","Pig","Bessie","Moo Moo"]) + if random_number in [2,5]: + $ ast_tonks_name = renpy.random.choice(["Hag","Old Hag","Punk","Dyke","Lesbo"]) + if random_number in [3,5]: + $ ton_astoria_name = renpy.random.choice(["Cutie","Kitty","Princess","Cupcake","Honey"]) + + # Chibi Update + $ astoria_chibi.update() + $ astoria_chibi.position(flip=False) + $ astoria.xzoom = 1 + hide screen astoria_cloth_pile + + return + +label end_astoria_event: + call ast_chibi("hide") + hide astoria_main + with d3 + pause.5 + + call update_astoria + + $ active_girl = None + $ astoria_busy = True + $ astoria.wear("all") + + call music_block + jump main_room_menu + +define character.astoria_say = Character("astoria_name", show_icon="astoria", dynamic=True) + +init python: + def ast(what, mouth=False, eyes=False, eyebrows=False, pupils=False, cheeks=None, tears=None, + emote=None, face=None, xpos=None, ypos=None, pos=None, flip=None, trans=None, animation=False, **kwargs): + + redraw = False + tag = astoria.tag + layer = astoria.layer + #showing = renpy.showing(name=tag, layer=layer) + + if xpos != None or ypos != None: + xpos = astoria.pos[0] if xpos == None else sprite_pos.get("x").get(xpos, xpos) + ypos = astoria.pos[1] if ypos == None else sprite_pos.get("y").get(ypos, ypos) + astoria.pos = (xpos, ypos) + redraw = True + + head_only = astoria.pos[1] == sprite_pos.get("y").get("head") + + if any((mouth, eyes, eyebrows, pupils, cheeks, tears)): + astoria.set_face(mouth=mouth, eyes=eyes, eyebrows=eyebrows, pupils=pupils, cheeks=cheeks, tears=tears) + redraw = True + + astoria.set_emote(emote) + + if animation != False: + if isinstance(animation, list): + astoria.animation = animation + else: + astoria.animation = [animation] + redraw = True + + if flip != None: + astoria.xzoom = -1 if flip else 1 + redraw = True + + if redraw: + astoria.show() + + if not renpy.in_rollback(): + if trans: + renpy.with_statement(trans) + else: + renpy.with_statement(d2) + + if what: + character.astoria_say(what, **kwargs) + + if head_only: + astoria.hide() diff --git a/game/scripts/characters/astoria/events/clothing.rpy b/game/scripts/characters/astoria/events/clothing.rpy new file mode 100644 index 00000000..fa27b7ba --- /dev/null +++ b/game/scripts/characters/astoria/events/clothing.rpy @@ -0,0 +1,46 @@ + + +#Door Events (Astoria wears random clothing.) + +label astoria_summon_setup: + + # Reset doll state + $ astoria.wear("all") + $ astoria.set_cum(None) + $ astoria.animation = [] + + if astoria_outfits_schedule: + $ astoria.equip_random_outfit() + + call play_sound("door") + call ast_chibi("stand","mid","base") + with d3 + + #Astoria greeting. + call play_music("astoria") + + if ast_mood > 0: + if 5 > ast_mood >= 1: + ast "[ast_genie_name]?" ("annoyed", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + elif 10 > ast_mood >= 5: + ast "What now?" ("annoyed", "base", "worried", "mid", xpos="base", ypos="base", trans=d3) + elif 20 > ast_mood >= 10: + ast "What is it, [ast_genie_name]?" ("annoyed", "base", "angry", "R", xpos="base", ypos="base", trans=d3) + elif 30 > ast_mood >= 20: + ast "What do you want, [ast_genie_name]?" ("angry", "base", "angry", "mid", xpos="base", ypos="base", trans=d3) + elif 40 > ast_mood >= 30: + ast "*Hmph*..." ("annoyed", "narrow", "worried", "L", xpos="base", ypos="base", trans=d3) + elif 50 > ast_mood >= 40: + ast "*Tsk*" ("angry", "narrow", "angry", "mid", xpos="base", ypos="base", trans=d3) + elif ast_mood >= 50: + ast "What?!" ("scream", "narrow", "angry", "mid", xpos="base", ypos="base", trans=d3) + ast "" ("angry", "narrow", "angry", "mid") + + call describe_mood("Astoria", ast_mood) + call tutorial("moodngifts") + else: + if game.daytime: + ast "Mornin', [ast_genie_name]." ("base", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + else: + ast "Evenin', [ast_genie_name]." ("base", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + return diff --git a/game/scripts/characters/astoria/events/imperio_practice.rpy b/game/scripts/characters/astoria/events/imperio_practice.rpy new file mode 100644 index 00000000..efb64fc7 --- /dev/null +++ b/game/scripts/characters/astoria/events/imperio_practice.rpy @@ -0,0 +1,1022 @@ + + +### Susan Imperio Events ### + +label ag_se_imperio_sb: # Move label + + hide astoria_main + with d3 + + menu: + gen "{size=-4}(Should I ask her to cast Imperio on Miss Bones?){/size}" ("base", xpos="far_left", ypos="head") + + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump astoria_spells + # Setup + $ sus_outfit_last.save() # Store current outfit. + $ ast_outfit_last.save() # Store current outfit. + + $ susan.equip(sus_outfit_default) + $ astoria.equip(ast_outfit_default) + + $ astoria_chibi.zorder = 4 # In front of Susan. + + call ast_chibi("stand",530,"base") #Align with spell casting chibi + + $ ag_se_imperio_sb.start() + +label end_ag_se_imperio_sb: + + # Reset + $ astoria_chibi.zorder = 3 # Default + + $ susan.equip(sus_outfit_last) # Equip player outfit. + $ astoria.equip(ast_outfit_last) # Equip player outfit. + + $ astoria_busy = True + $ susan_busy = True + + call music_block + jump main_room_menu + + + +label ag_se_imperio_sb_E1: + + gen "I think it's time for you to try that spell on another person." ("base", xpos="far_left", ypos="head") + ast "Another person?" ("open", "narrow", "base", "mid", xpos="base", ypos="base", trans=dissolve) + ast "But I thought professor Tonks--" ("annoyed", "narrow", "worried", "mid") + gen "I've already spoken to your teacher and we both think it'd be best if I took over the lessons for now." ("base", xpos="far_left", ypos="head") + ast "Really?" ("open", "narrow", "worried", "mid") + gen "*Err*...{w=0.4} Yes." ("base", xpos="far_left", ypos="head") + ast "*Hmm*... Well you're the headmaster so whatever you say..." ("base", "narrow", "base", "mid") + gen "Good!" ("grin", xpos="far_left", ypos="head") + gen "Then Let's have you try it on that Susan girl again..." ("base", xpos="far_left", ypos="head") + ast "You want me to... What?!" ("open", "base", "base", "mid") + ast "But I thought--" ("angry", "narrow", "worried", "mid") + gen "Don't tell me you wouldn't have given in to the temptation anyway." ("base", xpos="far_left", ypos="head") + ast "...{w} I mean..." ("annoyed", "narrow", "base", "down") + gen "You got lucky last time, if you were to be caught again then I don't think even I would be able to save you..." ("base", xpos="far_left", ypos="head") + gen "This way, you'll get that anger of yours out of your system and we can both move on with our lives." ("base", xpos="far_left", ypos="head") + ast "No thanks!" ("base", "closed", "angry", "mid") + gen "What? How could you say no to this?" ("angry", xpos="far_left", ypos="head") + ast "If I can't use it to embarrass her in front of the other students then what's the point?" ("angry", "narrow", "base", "mid") + gen "You don't think she'd be more embarrassed if you got her to do something in front of her headmaster?" ("base", xpos="far_left", ypos="head") + ast "I suppose..." ("annoyed", "narrow", "worried", "R") + ast "But don't you think she'll figure out you're in on it? Surely she'd just report--" ("angry", "narrow", "worried", "mid") + gen "We'll just wipe her memory." ("base", xpos="far_left", ypos="head") + gen "That should let you cast it on her as many times as you like..." ("base", xpos="far_left", ypos="head") + ast "You can do that?" ("open", "narrow", "base", "mid") + gen "Apparent--{w=0.4} Yes!" ("base", xpos="far_left", ypos="head") + gen "They haven't taught you that one?" ("base", xpos="far_left", ypos="head") + ast "You're the one in charge here...{w=0.4} It's the first time I've heard of it." ("annoyed", "narrow", "base", "mid") + gen "(Maybe there's a good reason for it...)" ("base", xpos="far_left", ypos="head") + ast "..." ("annoyed", "narrow", "base", "down") + gen "So, what do you say?" ("grin", xpos="far_left", ypos="head") + ast "..." ("annoyed", "closed", "base", "mid") + ast "...{fast} Heck yes!" ("smile", "narrow", "base", "mid") + gen "Great! Then let me just bring her up here..." ("grin", xpos="far_left", ypos="head") + + + call play_music("stop") + hide astoria_main + with d3 + pause .8 + + call nar(">You summon Susan to your office.") + + call play_sound("knocking") + call bld + "*knock-knock-knock*" + sus "*Uhm*... Professor Dumbledore, you wanted to see me?" + gen "Yes Miss Bones, and that would require you to come in here..." ("base", xpos="far_left", ypos="head") + sus "Oh... Right..." + + call sus_walk(action="enter") + + + call play_music("astoria") + ast "Hey [ast_susan_name]!" ("grin", "narrow", "base", "L", xpos="right", ypos="base") + sus "Astoria? What are you doing here?" ("upset", "eager", "worried", "L", xpos="base", ypos="base") + ast "Oh, don't mind me..." ("base", "base", "base", "R") + + gen "Come up here for a moment, Miss Bones..." ("base", xpos="far_left", ypos="head") + sus "Oh... Okay sir." ("open", "base", "worried", "R") + + call sus_walk("desk") + pause.2 + + gen "Alright, so the reason--" ("base", xpos="far_left", ypos="head") + + call ast_chibi("wand",530,"base") + ast "Is so that I could put a curse on you!" ("grin", "narrow", "angry", "mid", xpos="base", ypos="base") + sus "P-Put a curse on me?!!" ("open", "wide", "worried", "wide", xpos="right", ypos="base") + + call ast_chibi("wand_casting",530,"base") + sus "No! Professor, do someth--" ("scream", "wide", "worried", "mid") + + # Astoria casts imperio. + stop music fadeout 2.0 + hide susan_main + ast "IMPERIO!" ("scream", "base", "angry", "mid") + + call hide_characters + hide screen bld1 + with d3 + pause.2 + + # chibi spell animation. + call play_sound("spell") + call ast_chibi("wand_imperio",530,"base") + with hpunch + pause.8 + + call play_music("trance") + sus "W-what{w=0.3} are{w=0.3} y{w=0.1}o{w=0.1}u--" ("open", "wide", "worried", "wide") + call nar(">Susan's eyes flicker and a blank expression spreads across her face.") + sus "..." ("upset", "wide", "base", "wide") + + call ast_chibi("wand",530,"base") + + ast "Finally..." ("grin", "base", "angry", "mid") + ast "So what should we do now?" ("open", "base", "base", "R") + ast "We could do whatever we want [ast_genie_name]!" ("open", "base", "base", "R") + gen "How about we have her take her clothes off?" ("base", xpos="far_left", ypos="head") + ast "All of them?!" ("clench", "base", "worried", "mid") + gen "What? Didn't that work last time?" ("base", xpos="far_left", ypos="head") + gen "Let's find out if she really is a secret exhibitionist!" ("grin", xpos="far_left", ypos="head") + ast "I only made her take her top off." ("open", "base", "base", "mid") + gen "Then there you go!" ("grin", xpos="far_left", ypos="head") + ast "Okay then..." ("smile", "base", "base", "L") + ast "Susan, are you listening?" ("open", "closed", "base", "mid") + sus "Yes..." ("upset", "narrow", "worried", "up") + ast "Good, I want you to pay attention..." ("open", "base", "base", "L") + sus "..." ("base", "narrow", "base", "up") + ast "I want you to...{w} to..." ("open", "base", "base", "L") + gen "Tell her to take off her top!" ("base", xpos="far_left", ypos="head") + ast "Very well, [ast_genie_name]..." ("clench", "base", "base", "L") + ast "Susan, I want you to take off your...{w} your...{w} Take your top off!" ("clench", "base", "base", "L") + sus "..." ("base", "narrow", "base", "mid") + + sus "..." ("upset", "closed", "worried", "down") + + call play_sound("gulp") + gen "*Gulp!*" ("angry", xpos="far_left", ypos="head") + + hide susan_main + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ susan.strip("top") + sus "" ("upset", "closed", "worried", "mid") + pause.5 + + gen "Oh no, Miss Bones!" ("base", xpos="far_left", ypos="head") + gen "What are you doing?!" ("grin", xpos="far_left", ypos="head") + hide screen bld1 + with d3 + pause.8 + + call gen_chibi("jerk_off_behind_desk") + pause.5 + + sus "..." ("upset", "narrow", "worried", "down") + ast "Speak, [ast_susan_name]!" ("annoyed", "narrow", "base", "mid") + sus "I-I-I'm sorry, Professor Dumbledore, I don't know what's come over me..." ("open", "narrow", "worried", "down") + sus "I'm Sorry you have to see this..." ("upset", "closed", "base", "mid") + ast "See what Suzy?" ("grin", "narrow", "angry", "mid") + sus "My gross boobs..." ("open", "closed", "worried", "mid") + ast "(I knew they were gross!)" ("grin", "base", "angry", "L") + sus "Please Sir--" ("open", "narrow", "worried", "mid") + sus "Don't think less of me..." ("upset", "closed", "worried", "mid") + ast "Now take them out!" ("angry", "narrow", "base", "L") + + hide susan_main + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ susan.strip("bra") + sus "" ("upset", "closed", "worried", "mid") + call ctc + + gen "{size=+10}Nice!{/size}" ("angry", xpos="far_left", ypos="head") + ast "Sir!" ("base", "narrow", "angry", "mid") + gen "What? You can't blame me for this!" ("base", xpos="far_left", ypos="head") + ast "We're doing this so I can cast the spell more successfully." ("clench", "narrow", "angry", "mid") + ast "(Please...)" ("annoyed", "narrow", "angry", "R",cheeks="blush") + gen "Don't you think her breasts are pretty?" ("base", xpos="far_left", ypos="head") + ast "{b}No!{/b} they're huge and soft and squishy and, and, and... gross!" ("clench", "closed", "angry", "mid") + gen "Well, you've got two out of three..." ("grin", xpos="far_left", ypos="head") + gen "You're right about them being huge and soft." ("grin", xpos="far_left", ypos="head") + ast "Sir!" ("clench", "narrow", "angry", "mid") + sus "Did I do something wrong?" ("upset", "narrow", "worried", "R") + ast "Your ugly tits are all wrong, they belong on a cow!" ("scream", "base", "angry", "L") + sus "Cow!? W-why are you always being so mean to me?" ("open", "wide", "worried", "wide") + ast "*Pfft*... you know..." ("annoyed", "narrow", "angry", "R") + sus "A-{w=0.3}Are you just going to let her say that, s-sir?" ("scream", "base", "angry", "mid") + ast "Shut up cow!" ("angry", "narrow", "angry", "R") + sus "" ("upset", "wide", "worried", "mid") + pause .8 + + call nar(">You keep stroking your rock-hard cock whilst marvelling at Susan's heaving chest.") + gen "(So big...{w=0.4} Soft...{w=0.4} And squishy...)" ("angry", xpos="far_left", ypos="head") + sus "..." ("upset", "base", "worried", "down") + ast "Alright, I think you're enjoying this a little too much!" ("clench", "base", "angry", "mid") + gen "Just give me a minute..." ("base", xpos="far_left", ypos="head") + pause.2 + + call play_music("stop") + call hide_characters + call ast_chibi("reset",530,"base") + hide screen bld1 + with fade + pause.8 + + ast "" ("annoyed", "base", "angry", "R") + sus "W-w-what..." ("open", "base", "base", "up") + + call nar(">Susan's eyes flicker once more as the spell lessens its hold.") + + call gen_chibi("sit_behind_desk") + with d3 + pause.1 + + call play_music("astoria") + gen "(Damn it! Why did she do that?)" ("angry", xpos="far_left", ypos="head") + sus "..." ("upset", "base", "worried", "down") + ast "Put your clothes on, Suzy." ("smile", "base", "base", "mid") + sus "..." ("upset", "narrow", "worried", "mid") + + hide susan_main + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ susan.wear("bra", "top") + sus "" ("upset", "narrow", "worried", "mid") + pause.5 + + + hide susan_main + sus "" ("upset", "narrow", "base", "mid") + pause.5 + call nar(">Susan dresses herself... Her eyes still looking quite unfocused and seemingly struggling to properly take in her surroundings.") + + gen "*Aww*...{w=0.4} Why would you do that?" ("base", xpos="far_left", ypos="head") + ast "You were getting too excited, old man." ("clench", "base", "angry", "mid") + gen "So what?" ("base", xpos="far_left", ypos="head") + ast "How am I going to get any better if you keep distracting me?" ("annoyed", "narrow", "angry", "R") + gen "Couldn't you have made her dance or something at least..." ("base", xpos="far_left", ypos="head") + ast "We could do that..." ("annoyed", "base", "base", "L") + gen "Then why don't we?" ("base", xpos="far_left", ypos="head") + ast "Because it's boring!" ("annoyed", "narrow", "base", "ahegao") + ast "I want to do something fun!" ("open", "closed", "base", "mid") + gen "*Ugh*... fine..." ("base", xpos="far_left", ypos="head") + ast "But not today..." ("annoyed", "base", "base", "mid") + ast "I should put Bessy here back in her barn before people start to notice." ("grin", "base", "angry", "L") + sus "(*Hmm*...)" ("upset", "wide", "worried", "wide") + gen "Alright..." ("base", xpos="far_left", ypos="head") + ast "Just call me for the next practice session!" ("smile", "narrow", "base", "mid") + gen "Will do." ("base", xpos="far_left", ypos="head") + gen "Oh, please take Susan to professor Tonks' to be obliterated..." ("base", xpos="far_left", ypos="head") + ast "Obliviated?" ("base", "base", "worried", "mid") + gen "Yeah, that!" ("base", xpos="far_left", ypos="head") + ast "Can't you do it?" ("annoyed", "base", "base", "mid") + call nar(">Susan's eyes shift and become a bit more focused as she begins to recognize where she is...") + sus "Wait, where...{w=0.4} am..." ("upset", "wide", "worried", "wide") + gen "My wand casting hand is a bit tired for some reason..." ("base", xpos="far_left", ypos="head") + ast "Fine..." ("annoyed", "base", "worried", "R") + gen "And hurry up will you?" ("base", xpos="far_left", ypos="head") + ast "Yeah, yeah..." ("annoyed", "narrow", "base", "mid") + + call ast_walk("door","base") + pause.2 + call ast_chibi("stand","door","base", flip=False) + with d3 + pause.5 + + ast "Come on Suzy, time to give professor Tonks a visit." ("open", "base", "base", "mid", ypos="head") + sus "Professor...{w=0.4} Tonks?" ("upset", "narrow", "worried", "down", ypos="head") + + call sus_walk(680, "base") + call sus_chibi("leave") + + + call hide_characters + call ast_chibi("stand","door","base", flip=True) + pause .3 + call ast_chibi("leave") + hide screen bld1 + with d3 + pause.5 + + call bld + gen "(*Hmm*... Looks like Miss Bones had more of a lingering effect than Tonks...)" ("base", xpos="far_left", ypos="head") + gen "(Maybe leaving Tonks out of this was a bad idea...)" ("base", xpos="far_left", ypos="head") + gen "(Nah...{w=0.3} She's had her fun...)" ("base", xpos="far_left", ypos="head") + + # Increase affection once (this is the first event) + if ag_se_imperio_sb.counter == 1: + $ ast_whoring += 1 + + jump end_ag_se_imperio_sb + + +label ag_se_imperio_sb_E2: + + ast "Let's try something else this time!" ("grin", "narrow", "base", "mid", xpos="close", ypos="base", trans=fade) + gen "Of course!" ("grin", xpos="far_left", ypos="head") + ast "Great, I can't wait to see the look on Susan's dumb face..." ("grin", "closed", "base", "mid") + gen "Let me just bring her up here." ("base", xpos="far_left", ypos="head") + + call play_music("stop") + gen "..." ("base", xpos="far_left", ypos="head") + ast "..." ("annoyed", "base", "base", "R") + + call hide_characters + hide screen bld1 + with d3 + call sus_walk(action="enter") + pause.2 + + sus "You wanted to see me, sir?" ("open", "closed", "worried", "mid", xpos="right", ypos="base") + sus "Astoria? Why are you here?" ("open", "wide", "worried", "L") + + call play_music("astoria") + ast "Oh... no reason..." ("annoyed", "base", "base", "down", xpos="base", ypos="base") + gen "Come up here for a moment Miss Bones..." ("base", xpos="far_left", ypos="head") + sus "Okay..." ("upset", "base", "worried", "mid") + + call sus_walk("desk") + pause.2 + + sus "Is there something wrong, Professor?" ("upset", "base", "worried", "mid") + gen "As a matter of fact there is..." ("base", xpos="far_left", ypos="head") + sus "R-really? Is this about me returning my books to the library a day late?" ("open", "wide", "base", "wide") + sus "I swear it won't happen again!" ("open", "closed", "worried", "mid") + gen "What? No, I'm afraid there's an issue with your uniform..." ("base", xpos="far_left", ypos="head") + sus "Oh... Is it because I'm not wearing the school robe?" ("open", "base", "worried", "down") + sus "I can wear it from now on if you like!" ("upset", "base", "base", "mid") + gen "Actually, Wearing too many clothes is the problem." ("base", xpos="far_left", ypos="head") + sus "W-w-what???" ("scream", "wide", "base", "wide") + sus "You can't be serious sir!" ("open", "wide", "base", "mid") + gen "I am, Miss Bones..." ("base", xpos="far_left", ypos="head") + gen "Hiding away those glorious milk duds of yours is a serious offence!" ("grin", xpos="far_left", ypos="head") + sus "" ("open", "wide", "base", "wide") + ast "(*Pffft*, gloriously gross...)" ("annoyed", "base", "angry", "R") + sus "P-professor Dumbledore! Why would you want me to do s-something like that!" ("scream", "base", "angry", "mid", trans=hpunch) #Perhaps she should be a bit intrigued =Blush + + call ast_chibi("wand",530,"base") + sus "I think I better go..." ("upset", "closed", "worried", "mid") + call ast_chibi("wand_casting",530,"base") + ast "" ("grin", "base", "angry", "L") + pause.5 + + # Astoria casts imperio. + stop music fadeout 2.0 + hide susan_main + ast "IMPERIO!{w=0.8}{nw}" ("scream", "base", "angry", "mid", trans=hpunch) # Screams it even louder + + call hide_characters + hide screen bld1 + with d3 + pause.2 + + # chibi spell animation. + call play_sound("spell") + call ast_chibi("wand_imperio",530,"base") + with hpunch + pause.8 + + call play_music("trance") + sus "..." ("upset", "narrow", "base", "mid", xpos="right", ypos="base") + ast "*ha-ha-ha-ha!*" ("grin", "closed", "base", "mid", xpos="base", ypos="base") + ast "Her face was priceless when you said milk duds..." ("grin", "base", "base", "L") + gen "You liked that?" ("base", xpos="far_left", ypos="head") + ast "Of course! Anything to bring Bessy here down a peg." ("smile", "base", "base", "L") + + call ast_chibi("wand",530,"base") + ast "So what should we make her do today, [ast_genie_name]?" ("smile", "base", "base", "mid") + gen "Something fun, perhaps?" ("base", xpos="far_left", ypos="head") + ast "*Hmm*..." ("annoyed", "narrow", "base", "R") + gen "Maybe something a little more... adventurous?" ("base", xpos="far_left", ypos="head") + ast "You mean like making her show you her milk duds?" ("upset", "narrow", "base", "mid") + gen "Well if you insist..." ("base", xpos="far_left", ypos="head") + ast "*ugh*... you're such a filthy pervert!" ("clench", "narrow", "angry", "mid") + gen "We can do something else if you--" ("base", xpos="far_left", ypos="head") + ast "I didn't say no..." ("upset", "closed", "base", "mid") + gen "Oh... well how about you make it so--" ("base", xpos="far_left", ypos="head") + ast "I get to choose, [ast_genie_name]!" ("scream", "closed", "angry", "mid") + gen "What? Why?" ("base", xpos="far_left", ypos="head") + ast "Because it's my spell and my wand!" ("open", "narrow", "angry", "mid") + ast "Not to mention you'd probably do something over the top and gross..." ("open", "narrow", "angry", "R") + gen "Probably..." ("base", xpos="far_left", ypos="head") + gen "So what's your plan?" ("base", xpos="far_left", ypos="head") + ast "Just wait and see old man!" ("clench", "narrow", "angry", "mid") + ast "Susan, can you hear me?" ("open", "closed", "base", "L") + sus "Yes..." ("upset", "narrow", "base", "up") + ast "You now have an uncontrollable urge to take your top off, okay?" ("open", "closed", "base", "mid") + sus "Okay..." ("upset", "narrow", "worried", "mid") + ast "Awesome! Now act like you normally would, [ast_susan_name]!" ("grin", "base", "angry", "L") + sus "..." ("upset", "narrow", "base", "up") + + hide screen blktone + call nar(">The blank expression slowly fades from Susan's eyes...") + sus "ugh..." ("upset", "narrow", "base", "up") + sus "What happened?" ("open", "narrow", "worried", "mid") + ast "Nothing Suzy, Dumbledore was just explaining how your uniform wasn't up to scratch." ("grin", "base", "base", "mid") + sus "My uniform... You're right... Too many clothes..." ("open", "narrow", "worried", "down") + sus "I need to take off my top..." ("open", "base", "worried", "down") + ast "*Mhmm*, that's right, Suzy... Why don't you show the old man here your gross boobs... Don't you think he's old?" ("grin", "base", "angry", "mid") + sus "I... I suppose..." ("upset", "narrow", "worried", "L") + ast "That's right... Only a nasty slut would show her boobs to such a wrinkly old man..." ("grin", "narrow", "angry", "L") + gen "Hey!" ("base", xpos="far_left", ypos="head") + ast "Quiet sir... don't ruin my fun!" ("clench", "narrow", "angry", "mid") + gen "Fine..." ("base", xpos="far_left", ypos="head") + sus "I-I'm not a slut..." ("upset", "narrow", "worried", "down") + ast "Well I'm sure you'll be able to keep your top on then, [ast_susan_name]." ("open", "closed", "base", "mid") + sus "I... There's something wrong sir!" ("open", "base", "worried", "mid") + sus "I can't help it..." ("upset", "narrow", "worried", "down") + ast "" ("grin", "base", "angry", "L") + pause.2 + + hide susan_main + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ susan.strip("top", "bra") + sus "" ("upset", "closed", "worried", "mid") + call ctc + + gen "Nice!" ("angry", xpos="far_left", ypos="head") + hide screen bld1 + with d3 + pause.1 + call gen_chibi("jerk_off_behind_desk") + pause.8 + + ast "[ast_genie_name]! Are you touching yourself?" ("scream", "base", "base", "mid") + gen "*Ugh*... can you blame me?" ("base", xpos="far_left", ypos="head") + gen "It's not every day you get to see a rack like this..." ("angry", xpos="far_left", ypos="head") + ast "Well stop it! It's gross!" ("clench", "narrow", "angry", "mid") + gen "Alri--" ("base", xpos="far_left", ypos="head") + sus "Please sir... it's too much!" ("open", "closed", "base", "mid") + sus "It's bad enough that I can't help showing you my breasts..." ("open", "closed", "worried", "mid") + ast "Wait..." ("smile", "base", "base", "mid") + ast "Keep going, sir!" ("clench", "narrow", "angry", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + sus "What?" ("scream", "wide", "base", "mid") + ast "Well if Bessy here hates it... Then I love it!" ("clench", "narrow", "angry", "L") + ast "Besides, it's not like I can see anything under the desk." ("open", "closed", "base", "mid") + sus "(...)" ("upset", "closed", "worried", "mid") + gen "So you're okay with this?" ("base", xpos="far_left", ypos="head") + ast "*Mhmm*... just don't expect me to touch it old man!" ("upset", "narrow", "angry", "mid") + sus "W-why is this happening!" ("open", "closed", "base", "mid") + ast "No one asked you, slut!" ("clench", "narrow", "angry", "L") + sus "I am not a slut!" ("scream", "closed", "angry", "mid") + sus "" ("upset") + ast "Ha! You're standing here, letting old man dumbledore ogle your fat tits while he jerks his wrinkly old cock!" ("open", "closed", "base", "mid") + ast "If that's not a slut then I don't know what is!" ("clench", "narrow", "angry", "L") + gen "(There's no way Tonks would allow this, perhaps this was a good idea after all...)" ("base", xpos="far_left", ypos="head") + sus "I-- don't know why I'm doing this..." ("upset", "narrow", "worried", "mid") + sus "You probably cursed me!" ("open", "suspicious", "angry", "mid") + ast "Duh!" ("grin", "narrow", "angry", "L") + sus "Well stop it!" ("open", "base", "angry", "R") + ast "*Nuh-uh*!" ("open", "closed", "base", "mid") + sus "Please Astoria..." ("upset", "narrow", "worried", "down") + + call nar(">You start to zone out as the two girls argue, focusing on Susan's heaving bosom.") + gen "Yeah... that's it..." ("angry", xpos="far_left", ypos="head") + ast "You can leave once Dumbledore here's done." ("open", "closed", "base", "mid") + sus "What? you mean I have to wait until he..." ("open", "base", "worried", "mid") + sus "This is unbelievable!" ("scream", "base", "angry", "mid") + sus "I'm going to report both of you to the ministry of magic!" ("open", "closed", "angry", "mid") + sus "My aunt is the head of the department of magical law enforcement I'll have you know!" ("open", "base", "angry", "mid") + ast "yeah... I've met your creepy old aunt." ("annoyed", "narrow", "base", "L") + sus "What? Did you curse her too, you evil little witch?" ("open", "wide", "base", "R") + ast "I wish..." ("base", "narrow", "base", "R") + sus "Well she's going to lock both of you away in Azkaban!" ("open", "closed", "angry", "mid") + sus "You'll never see me or anyone else again..." ("scream", "closed", "angry", "mid") + ast "Yeah, sure!" ("grin", "base", "angry", "L") + sus "*Ugh*! You're both sick!" ("open", "narrow", "angry", "mid") + ast "Says the slut baring her chest for the headmaster." ("smile", "base", "base", "L") + gen "*Mmmm*... Keep shaking those tits of yours..." ("angry", xpos="far_left", ypos="head") + sus "I am not a {size=+10}slut!{/size}" ("scream", "closed", "angry", "mid") + call nar(">As Susan yells at the top of her voice, the effort causes her gigantic tits to rise and slap back together.") + sus "" ("open") + + gen "{size=+10}HERE IT COMES!{/size}" ("angry", xpos="far_left", ypos="head") + hide screen bld1 + with d3 + pause.1 + call gen_chibi("cum_behind_desk") + call cum_block + gen "{size=+10}AHHH... YESS!!!!{/size}" ("angry", xpos="far_left", ypos="head") + ast "Woah... I didn't think you'd have that much in you, sir..." ("clench", "base", "base", "mid") + + sus "{size=+10}*Hmph*! I hope you Enjoy Azkaban, perverts!{/size}" ("scream", "narrow", "angry", "down") + sus "" ("upset") + + ast "" ("annoyed", "narrow", "base", "R") + call gen_chibi("cum_behind_desk_done") + pause.5 + + call nar(">As you shoot your massive load Susan's leg twitches slightly...") + + ast "Let's delve deeper shall we..." ("grin", "narrow", "angry", "L") + gen "W-what?" ("base", xpos="far_left", ypos="head") + ast "Suzy, you can still hear me right?" ("open", "base", "base", "L") + sus "Yes..." ("open") + sus "" ("upset") + ast "She's just so easy to put under the spell..." ("base", "narrow", "worried") + ast "Nothing like Tonks, there's something wrong here..." (eyes="base", pupils="R") + gen "W-what do you mean?" ("base", xpos="far_left", ypos="head") + ast "Quiet!" ("clench", "base", "base", "mid") + gen "..." ("angry", xpos="far_left", ypos="head") + ast "Suzy, I want you to speak the truth and nothing but the truth, okay?" ("open", "base", "base", "L") + sus "Okay..." ("open") + sus "" ("upset") + gen "What are you--" ("base", xpos="far_left", ypos="head") + ast "..." ("upset", "base", "base", "mid") # Stares at you + gen "..." ("angry", xpos="far_left", ypos="head") + ast "Suzy, do you like baring your chest to the headmaster?" ("open", "base", "base", "L") + ast "Are you just another one of those closeted sluts?" ("clench", "narrow") + gen "(Oh shit...)" ("base", xpos="far_left", ypos="head") + sus "I... I..." ("open", "base", "worried") + ast "Tell me!" ("scream") + ast "" ("clench") + sus "I...{w=0.8} I do!" ("open", "closed") + ast "I knew it!" ("scream", "narrow", "angry") # Angry + sus "" ("upset", "narrow") + ast "Where's the fun if she's enjoying it!" ("clench", pupils="mid") + gen "*Errr-*" ("base", xpos="far_left", ypos="head") + ast "I want to humiliate this cow, but she's just another slut!" ("scream") + gen "A closeted slut..." ("base", xpos="far_left", ypos="head") + ast "Excuse me?" (mouth="open", eyebrows="worried") + ast "" (mouth="upset") + gen "Miss Greengrass... is there any other Hufflepuff students you know of selling favours?" ("base", xpos="far_left", ypos="head") + ast "Why would I know or care what Hufflepuffs are doing?" (mouth="clench") + gen "Just because she enjoys it doesn't mean it's not humiliating for her..." ("base", xpos="far_left", ypos="head") + gen "What would the other Hufflepuffs think of her if she knew what you have her do?" ("base", xpos="far_left", ypos="head") + sus "..." ("upset", "narrow", "base", "down") + ast "What do you mean?" ("upset", "base", "base") + gen "Ask her the right questions..." ("base", xpos="far_left", ypos="head") + ast "..." (eyes="closed") + ast "Suzy!" ("open", "narrow", "base", "L") + ast "" ("base") + sus "..." (pupils="mid") + ast "Are you ashamed of what you've done?" ("open", "base") + ast "" ("base") + sus "Yes..." ("base", "narrow", "worried", "down") + ast "Would your house think less of you if they knew what you're doing here?" ("grin") + sus "Yes..." ("base", "closed", "worried", "down") + gen "Well, there you go!" ("base", xpos="far_left", ypos="head") + ast "*ha-ha-ha!*" ("smile") + gen "(Nailed it...)" ("base", xpos="far_left", ypos="head") + gen "So, are we continuing with the training?" ("base", xpos="far_left", ypos="head") + ast "Of course we are!" ("smile", "base", "base", "L") + gen "Great!" ("base", xpos="far_left", ypos="head") + + + ast "Suzy, put your clothes back on." ("grin", "base", "base", "L") + + sus "" ("base", "narrow", "base", "mid") + pause.5 + call nar(">Susan begins dressing herself in silence...") + + hide susan_main + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ susan.wear("top", "bra") + sus "" ("base", "narrow", "base", "mid") + pause.5 + + call play_music("stop") + call hide_characters + call ast_chibi("reset",530,"base") + pause .5 + call ast_walk("door","base") + pause.2 + call ast_chibi("stand","door","base", flip=False) + with d3 + pause.5 + + call play_music("astoria") + ast "Come on Suzy, time to give professor Tonks another visit." ("open", "base", "base", "L", ypos="head") + sus "*Hmm*... Another visit..." ("upset", ypos="head") + + call sus_walk(action="leave") + + if game.daytime: + ast "See you, [ast_genie_name]!" ("grin", "closed", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + else: + ast "Smell yah later, [ast_genie_name]!" ("grin", "closed", "base", "mid") + gen "Good night." ("base", xpos="far_left", ypos="head") + + call play_sound("door") + call hide_characters + call ast_chibi("hide") + call gen_chibi("sit_behind_desk") + hide screen bld1 + with d3 + pause.5 + + + # Increase affection once (this is the second event) + if ag_se_imperio_sb.counter == 2: + $ ast_whoring += 1 + + jump end_ag_se_imperio_sb + + +label ag_se_imperio_sb_E3: + + ast "" ("smile", "base", "base", "mid",xpos="close",ypos="base",trans=fade) + gen "Ready for another go with the curse?" ("base", xpos="far_left", ypos="head") + ast "You bet [ast_genie_name]! I can't wait to see the look on Suzy's stupid face!" ("grin", "narrow", "angry", "down") + gen "Shall I bring her up here?" ("base", xpos="far_left", ypos="head") + ast "Do you even need to ask?" ("smile", "narrow", "base", "mid") + gen "I suppose not..." ("base", xpos="far_left", ypos="head") + + call play_music("stop") + + call hide_characters + hide screen bld1 + with d3 + call sus_walk(action="enter") + pause.2 + + sus "You wanted to see me sir?" ("open", "base", "worried", "mid", xpos="base", ypos="base") + sus "Astoria?" ("upset", "base", "worried", "R") + sus "What are you doing here?" ("upset", "narrow", "worried", "R") + + gen "Come up here for a moment, Miss Bones..." ("base", xpos="far_left", ypos="head") + sus "Okay..." ("open", "base", "worried", "R") + + call sus_walk("desk") + pause.2 + + gen "..." ("base", xpos="far_left", ypos="head") + sus "*Ehm... Can I help you with--" ("upset", "narrow", "worried", "R", xpos="right", ypos="base") + + call play_music("astoria") + call ast_chibi("wand",530,"base") + ast "Blah, blah, blah..." ("open", "base", "base", "R", xpos="base", ypos="base") + + call ast_chibi("wand_casting",530,"base") + sus "I'm not in trouble for anything am--" ("open", "base", "worried", "mid", xpos="right", ypos="base") + + # Astoria casts imperio. + stop music fadeout 2.0 + hide susan_main + ast "IMPERIO!{w=0.8}{nw}" ("scream", "base", "angry", "mid", trans=hpunch) + + call hide_characters + hide screen bld1 + with d3 + pause.2 + + # chibi spell animation. + call play_sound("spell") + call ast_chibi("wand_imperio",530,"base") + with hpunch + pause.8 + + call play_music("trance") + sus "Wait, what--" ("open", "wide", "base", "wide") + gen "Couldn't even wait this time?" ("base", xpos="far_left", ypos="head") + ast "Quiet old man." ("open", "narrow", "angry", "mid") + call ast_chibi("wand",530,"base") + ast "Susan, I want you to keep listening to my commands and act as if nothing out of the ordinary is happening." ("open", "narrow", "base", "L") + ast "Is that clear?" ("smile", "narrow", "angry", "L") + sus "Yes..." ("open", "narrow", "worried", "down") + ast "Great!{w} Now take your top off!" ("grin", "base", "angry", "L") + gen "!!!" ("angry", xpos="far_left", ypos="head") + pause .8 + + hide susan_main + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ susan.strip("top") + sus "" ("upset", "base", "worried", "mid") + pause.5 + + call nar(">Susan's arms now seemingly with a mind of their own, removes her top as she resumes speaking where she left off.") + sus "Was this about the l-library books that I returned a day late s-sir?" ("open", "narrow", "worried", "down") + sus "I promise it won't happen again..." ("upset", "closed", "worried", "mid") + gen "Don't you worry about the books, Ms Bones!" ("grin", xpos="far_left", ypos="head") + sus "T-Then what is it?" ("open", "base", "base", "mid") + ast "Get those milk bags out Suzy!" ("clench", "narrow", "angry", "L") + sus "Of course..." ("open", "closed", "base", "mid") + pause .8 + + hide susan_main + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ susan.strip("bra") + sus "" ("base", "base", "base", "mid") + pause.5 + + gen "Miss Bones!" ("angry", xpos="far_left", ypos="head") + sus "Sir?" ("open", "narrow", "base", "mid") + sus "Have I done something wrong?" ("upset", "base", "base", "mid") + ast "Maybe it's because of you showing off your gross boobs?" ("grin", "base", "angry", "L") + sus "Astoria! H-how can you say something so rude! I'd never..." ("open", "closed", "angry", "mid") + ast "Oh yeah?{w} Susan, I want you to look down and take in what you've been doing this whole time." ("open", "base", "angry", "L") + sus "" ("upset", "base", "base", "down") + pause.8 + + call nar(">Susan's eyes drift down to her exposed chest.") + sus "WHAT?!?!?" ("scream", "wide", "worried", "down",trans=hpunch) + sus "I'm so sorry, professor Dumbledore!" ("upset", "closed", "worried", "mid") + sus "I don't know what's come over me!" ("open", "closed", "base", "mid") + ast "Maybe it's just because you're a nasty slut!" ("annoyed", "base", "base", "L") + sus "I am not a {size=+10}slut{/size}, Astoria!" ("scream", "closed", "angry", "mid") + ast "*Pfft*... We both know that's not true... You love showing your headmaster those oversized bean bags of yours." ("annoyed", "base", "base", "R") + sus "I-- don't know why this is happening..." ("open", "wide", "worried", "wide") + sus "You must have cursed me!" ("scream", "narrow", "angry", "R") + ast "Bingo!" ("grin", "base", "angry", "L") + sus "Professor! You h-have to stop her!" ("scream", "wide", "base", "mid") + gen "*Ugh*...{w=0.3} I'm afraid I can't do that Miss Bones..." ("base", xpos="far_left", ypos="head") + ast "" ("grin", "narrow", "angry", "L") + sus "WHAT?!" ("open", "wide", "base", "wide") + sus "W-w-w-well my aunt will just send you--" ("upset", "narrow", "angry", "mid") + + ast "Quiet!" ("scream", "base", "angry", "L") + call nar(">Astoria strengthens her grip on her wand and focuses on maintaining the spell, increasing the effect it has on Susan.") + + sus "To...{w=0.5} Azkaban..." ("open", "narrow", "base", "up") + sus "..." ("upset", "narrow", "base", "mid") + ast "Alright... that'll shut her up...{w} what should we make her do this time, [ast_genie_name]?" ("open", "closed", "base", "mid") + gen "*Hmm*... Are you actually going to let me choose this time or are you just asking to be annoying?" ("base", xpos="far_left", ypos="head") + ast "Hey! I am not annoying!" ("scream", "narrow", "angry", "mid", trans=vpunch_repeat) + gen "So, are you going to let me pick then?" ("base", xpos="far_left", ypos="head") + ast "Fine... Just nothing too disgusting!" ("clench", "narrow", "base", "mid") + ast "Or boring... that'd be even worse!" ("upset", "narrow", "angry", "mid") + + gen "Alright well, first things first..." ("base", xpos="far_left", ypos="head") #I'll add a menu here with more options once art assets are drawn for them + + hide screen blktone + hide screen bld1 + with d3 + pause.1 + call gen_chibi("jerk_off_behind_desk") + pause.8 + + show screen bld1 + call nar(">Your hands sneak under your desk and around your engorged cock.") + gen "That's better..." ("grin", xpos="far_left", ypos="head") + ast "(...)" ("annoyed", "narrow", "angry", "R") + gen "What?" ("base", xpos="far_left", ypos="head") + ast "I told you not to be boring! We already did this last time!" ("open", "closed", "base", "mid") + gen "If this is too boring, why don't you get her to suck me off?" ("grin", xpos="far_left", ypos="head") + ast "Sir! I said it shouldn't be something disgusting..." ("clench", "base", "base", "mid") + ast "I don't wanna have to see your nasty old cock!" ("clench", "narrow", "angry", "R") + gen "*Ugh*... Fine... What do you want to do then?" ("base", xpos="far_left", ypos="head") + ast "Well seeing as how you asked..." ("open", "closed", "base", "mid") + ast "Suzy, are you listening?" ("open", "narrow", "base", "L") + + show screen blktone + sus "yes..." ("upset", "narrow", "base", "up") + ast "I want you to crawl under the headmaster's desk." ("grin", "base", "base", "L") + gen "I thought you didn't want her to suck me off?" ("base", xpos="far_left", ypos="head") + ast "Shut it, and stop being so disgusting!" ("scream", "closed", "angry", "mid") + sus "..." ("upset", "narrow", "base", "up") + ast "Now go, [ast_susan_name]!" ("grin", "narrow", "angry", "mid") + + call hide_characters + call sus_chibi("hide") + hide screen blktone + show screen blkfade + with d3 + + call nar(">Susan slowly makes her way around your desk before obediently crawling under.") + pause.5 + hide screen blkfade + with d3 + + ast "" ("smile", "base", "base", "down",xpos="mid",ypos="base",trans=fade) + hide screen bld1 + call ctc + + show screen blktone + ast "And you're not allowed to come out until I say so." ("open", "closed", "base", "mid") + sus "yes..." + ast "And if you actually are just a slut then I want you to let that slut out! Show us that you really love it!" ("clench", "narrow", "base", "down") + sus "...{w=0.4} Love it?" + sus "I love it..." + ast "Good!" ("clench", "base", "angry", "L") + gen "Isn't that a little much?" ("base", xpos="far_left", ypos="head") + ast "*Pfft*! That's rich coming from you sir!" ("annoyed", "narrow", "base", "mid") + ast "If it was up to me she'd be clucking like a chicken right now!" ("annoyed", "narrow", "angry", "R") + ast "Not doing nasties with her mouth!" ("clench", "narrow", "base", "down") + gen "Fair enough..." ("base", xpos="far_left", ypos="head") + gen "Although it sounds to me as if you're enjoying this as--" ("base", xpos="far_left", ypos="head") + ast "But you've helped me so take this as a reward..." ("open", "closed", "base", "mid") + ast "Now, make sure to give Susan a reward for being so obedient as well..." ("smile", "base", "angry", "mid") + gen "You don't have to tell me twice!" ("base", xpos="far_left", ypos="head") + call nar(">You renew your efforts, encouraged by the image of the well-endowed redhead hidden under your desk.") + ast "And Suzy..." ("open", "narrow", "base", "down") + sus "Yes..." + ast "Time for you to wake up..." ("grin", "narrow", "angry", "down") + sus "..." + + call play_music("susan") + hide screen blktone + hide screen bld1 + with d3 + pause.5 + show screen bld1 + with hpunch + sus "W-w-what's happening?" + call play_sound("kick") + with vpunch + pause.2 + sus "Ouch..." + pause.5 + sus "Where am I?" + ast "Don't you remember crawling under your headmaster's desk, begging him to jerk his nasty old cock for you?" ("open", "closed", "base", "mid") + with hpunch + sus "WHAT?" + sus "I'd never do something like that!" + ast "Really? Because it sure looks like you did..." ("grin", "base", "base", "R") + sus "I--{w} I don't know why..." + ast "If you don't like it down there, why don't you just hop out then?" ("annoyed", "base", "base", "R") + sus "I can't!" + ast "Really? why's that, Suzy?" ("grin", "narrow", "base", "down") + sus "I don't know... I just can't!" + ast "*Hmm*... it must be because you're such a nasty little slut then..." ("open", "closed", "base", "mid") + with hpunch + sus "I-- I am not!" + ast "Are you sure?" ("grin", "base", "angry", "down") + sus "I... Y-yes..." + ast "because it sure doesn't look like that..." ("open", "narrow", "base", "down") + ast "In fact, it looks like you're the nastiest little slut this school has ever seen!" ("grin", "closed", "base", "mid") + gen "That's it, Astoria..." ("angry", xpos="far_left", ypos="head") + sus "Professor... {b}please...{/b}" + ast "Please what, Susan?" ("open", "closed", "base", "mid") + ast "Please stop?" ("open", "narrow", "base", "down") + ast "Or please coat me in cum?" ("clench", "narrow", "angry", "down") + with hpunch + sus "ASTORIA!" + ast "Answer the question, Suzy..." ("open", "base", "base", "mid") + sus "..." + sus "Please sir..." + sus "{size=-3}Coat{/size} {size=-3}me{/size} {size=-3}in{/size} {size=-3}your{/size} {size=-3}cum...{/size}" + ast "I knew it!" ("scream", "base", "angry", "L") + ast "You're a dirty little slut after all aren't you!" ("clench", "narrow", "angry", "down") + sus "I am not! I don't know why I'm down here!" + ast "Alright then... if you're such a good girl..." ("open", "closed", "base", "mid") + ast "Why don't you tell me what it's like down there?" ("smile", "narrow", "base", "down") + sus "Down here?" + sus "Under professor Dumbledore's desk?" + ast "*Mhmm*... I bet it's nasty down there..." ("clench", "narrow", "angry", "down") + ast "It probably smells gross with all the yucky cum he shoots against that desk of his..." ("open", "base", "base", "R") + ast "Not to mention his big, smelly old cock..." ("annoyed", "narrow", "base", "ahegao") + gen "*Ahem*..." ("base", xpos="far_left", ypos="head") + ast "Quiet, sir!" ("clench", "narrow", "angry", "mid") + ast "So go on, Suzy... tell me what it's like..." ("open", "closed", "base", "mid") + + sus "It... It's--" + call nar(">you hear Susan take a deep breath before she begins to speak.") + sus "{size=+10}It's incredible!{/size}" + ast "" ("grin", "narrow", "angry", "mid") + sus "Everything about it is fantastic!" + ast "" ("smile", "base", "base", "mid") + sus "The cum stains on the back of the desk..." + ast "" ("clench", "narrow", "base", "mid") + sus "The thick smell of semen in the air..." + ast "" ("clench", "narrow", "base", "R") + sus "The way Dumbledore's stroking his {b}cock{/b}..." + ast "" ("smile", "narrow", "angry", "R") + sus "That cock... that's the best part..." + sus "I just want to--" + ast "(*Eeeegh*...)" ("scream", "closed", "angry", "mid",trans=hpunch) + + sus "..." + call nar(">You hear Susan's words trail off into nothingness, as she takes another breath...") + sus "I wish I could live down here! Is that what you wanted to hear you evil witch?!" + ast "Almost..." ("grin", "narrow", "base", "down") + ast "I want you to tell me the truth... say you're a slut..." ("grin", "base", "angry", "mid") + ast "Then I'll let you go..." ("open", "closed", "base", "mid") + sus "Really?" + sus "Alright..." + sus "{size=-5}I'm a...{/size} {size=-3}slut...{/size}" + ast "*Hmm*... I'm not sure I heard anything. What about you, sir?" ("annoyed", "base", "base", "R") + gen "*Ah*...{w=0.3} almost..." ("base", xpos="far_left", ypos="head") + ast "Go on Suzy... one more time..." ("smile", "narrow", "base", "down") + with hpunch + sus "I'm a slut, OK!" + gen "*Ah*... YES..." ("angry", xpos="far_left", ypos="head") + sus "I'm a nasty slut who crawled under her headmaster's desk and--" + + gen "HERE IT COMES SLUT!" ("angry", xpos="far_left", ypos="head") + hide screen bld1 + call gen_chibi("cum_behind_desk") + call cum_block + sus "No wait! Astoria, you said I could go--" + call cum_block + gen "*ARGHHHH*!!!" ("angry", xpos="far_left", ypos="head") + call nar(">Susan's sudden yelps prove too much for you as your cock begins to fire off an immense load onto Susan's face...") + gen "HERE IT IS SLUT!!!" ("angry", xpos="far_left", ypos="head") + call cum_block + sus "..." + + ast "That's it, [ast_genie_name]! Make sure you get it all out..." ("grin", "narrow", "angry", "mid") + gen "*Ahhh*... don't worry about that..." ("angry", xpos="far_left", ypos="head") + call nar(">You give your cock a few final pumps, working out the last of your load onto Susan's waiting face...") + + call gen_chibi("cum_behind_desk_done") + pause.5 + gen "There we go..." ("angry", xpos="far_left", ypos="head") + ast "Nice work, [ast_genie_name]..." ("open", "closed", "base", "mid") + ast "You can come out now, Suzy..." ("smile", "narrow", "base", "down") + sus "..." + + call play_music("stop") + hide astoria_main + show screen blkfade + with d3 + + call nar(">Susan slowly crawls out from under your desk...") + + call sus_chibi("stand","desk","base") + $ susan.set_cum(face="heavy") + hide screen blkfade + with d5 + + sus "" ("upset", "narrow", "worried", "L",xpos="right",ypos="base",trans=fade) + call ctc + + call play_music("astoria") + ast "Oh my god! He absolutely covered you!" ("scream", "base", "base", "mid",xpos="base",ypos="base") + sus "..." ("upset", "narrow", "base", "L") + ast "I didn't know you had it in you, sir!" ("clench", "base", "base", "mid") + ast "Nice work!" ("smile", "base", "base", "mid") + gen "Thanks..." ("base", xpos="far_left", ypos="head") + ast "And Suzy... that look suits you." ("grin", "narrow", "angry", "L") + sus "Are you done, Astoria?" ("open", "narrow", "base", "R") + ast "Yes, you can get dressed." ("smile", "narrow", "base", "L") + + show screen blkfade + with d3 + + call nar(">Susan slowly wipes the cum from her face as she begins getting dressed.") + + hide susan_main + $ susan.set_cum(None) + sus "I hope you two are happy..." ("upset", "narrow", "base", "down") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ susan.wear("top", "bra") + hide screen blkfade + with d5 + pause .8 + + call ast_chibi("reset",530,"base") + sus "*Gah*..." ("scream", "wide", "base", "wide") + sus "..." ("open", "narrow", "base", "wide") + gen "..." ("base", xpos="far_left", ypos="head") + + if game.daytime: + ast "We're going to be late for classes, Suzy!" ("annoyed", "narrow", "base", "R") + ast "Let's head to Tonks' study, shall we?..." ("smile", "narrow", "base", "R") + sus "Yes..." + gen "..." ("base", xpos="far_left", ypos="head") + ast "Until next time, [ast_genie_name]!" ("grin", "closed", "base", "mid") + else: + ast "It's getting a bit late Suzy, let's head to Tonks' study..." ("annoyed", "narrow", "base", "R") + sus "Yes..." + gen "..." ("base", xpos="far_left", ypos="head") + ast "Good night, [ast_genie_name]!" ("grin", "closed", "base", "mid") + + + call play_music("stop") + call hide_characters + pause .5 + call ast_walk("door","base") + pause.2 + call ast_chibi("stand","door","base", flip=False) + with d3 + pause.5 + + ast "Come on then..." ("angry", "narrow", "base", "R") + sus "Okay..." + + call sus_walk(action="leave") + + call hide_characters + call ast_chibi("leave") + hide screen bld1 + with d3 + pause.5 + + call gen_chibi("sit_behind_desk") + + call bld + gen "(*Hmm*... Miss Bones changed again as soon as Astoria dropped the spell...)" ("base", xpos="far_left", ypos="head") + gen "(...)" ("base", xpos="far_left", ypos="head") + + if ast_whoring < 24: + $ ast_whoring = 24 + $ sus_whoring = 24 + $ susan_wardrobe_unlocked = True + + call end_of_content + + # Increase affection once (this is the third event) + #if ag_se_imperio_sb.counter == 3: + # $ ast_whoring += 1 + + jump end_ag_se_imperio_sb diff --git a/game/scripts/characters/astoria/events/imperio_training.rpy b/game/scripts/characters/astoria/events/imperio_training.rpy new file mode 100644 index 00000000..7d023039 --- /dev/null +++ b/game/scripts/characters/astoria/events/imperio_training.rpy @@ -0,0 +1,1809 @@ + + +### Spell Training ### + +### Astoria Imperio Training ### + +label ag_st_imperio: + + if ag_st_imperio.points == 0: # Intro for 1st event. + ast "" (face="neutral", xpos="right", ypos="base", trans=fade) + gen "Ready for your first day of detention?" ("base", xpos="far_left", ypos="head") + ast "No..." ("annoyed", "base", "base", "R") + ast "Do I really have to go there?" ("clench", "base", "base", "mid") + gen "I could have you scrub the toilets instead..." ("grin", xpos="far_left", ypos="head") + ast "Please don't, Sir!" ("clench", "base", "worried", "mid") + gen "Tonks has some interesting lessons planned for you!{w=0.8} I'm sure you'll enjoy it." ("base", xpos="far_left", ypos="head") + ast "Oh yeah?" ("open", "base", "base", "mid") + ast "Well, I doubt it..." ("annoyed", "narrow", "angry", "R") + ast "At least it's not gonna be boring with her." ("open", "closed", "base", "mid") + ast "I once had to spend a whole day listening to McGonagall prattle on about the importance of a transfiguration spell." ("annoyed", "narrow", "angry", "R") + ast "When all it did was turn a stupid rat yellow!" ("annoyed", "base", "base", "ahegao") + ast "I wanna learn something that's actually fun!" ("annoyed", "narrow", "base", "down") + gen "Like an unforgivable curse?" ("base", xpos="far_left", ypos="head") + ast "Yes." ("annoyed", "base", "base", "mid") + gen "Good. Because your teacher has offered to teach one of them to you, properly." ("base", xpos="far_left", ypos="head") + ast "She offered to do...{w=0.8} what?" ("clench", "base", "base", "mid") + gen "That's what I said!" ("base", xpos="far_left", ypos="head") + ast "I thought this was meant to be a punishment?" ("smile", "base", "base", "L") + ast "That's wicked!" ("smile", "narrow", "angry", "down") + gen "Off you go then. She's waiting for you..." ("base", xpos="far_left", ypos="head") + gen "Return with professor Tonks to my office for a progress report once you're done." ("base", xpos="far_left", ypos="head") + ast "Of course!" ("smile", "closed", "base", "mid") + ast "See ya later!" ("smile", "base", "base", "mid") #smell ya later newbie! - gary oak + + elif ag_st_imperio.points == 3: # Intro for 4th event. + ast "" (face="annoyed", xpos="right", ypos="base", trans=fade) + gen "Time for another lesson, don't you think?" ("base", xpos="far_left", ypos="head") + ast "Do I really have to go there again?" ("open", "narrow", "base", "R") + ast "I don't want to be yelled at by her..." ("annoyed", "narrow", "base", "down") + gen "Nobody's gonna yell at you." ("base", xpos="far_left", ypos="head") + ast "If you say so, Professor." ("annoyed", "base", "base", "mid") + gen "Return here after your lesson." ("base", xpos="far_left", ypos="head") + ast "..." ("annoyed", "base", "base", "R") + + else: + ast "" (face="happy", xpos="right", ypos="base", trans=fade) + gen "Ready for another curse lesson?" ("base", xpos="far_left", ypos="head") + ast "Yes, Professor." ("smile", "base", "base", "mid") + gen "I'm eager to see another demonstration of your progress!" ("grin", xpos="far_left", ypos="head") + gen "Return to my office with your teacher afterwards." ("base", xpos="far_left", ypos="head") + ast "Until then, Professor!" ("smile", "base", "base", "R") + + call play_sound("door") + call hide_characters + call ast_chibi("hide") + hide screen bld1 + with d3 + + # Setup + $ ton_outfit_last.save() # Store current outfit. + $ ast_outfit_last.save() # Store current outfit. + + $ tonks.equip(ton_outfit_default) + $ astoria.equip(ast_outfit_default) + + $ ag_st_imperio.inProgress = True + + $ astoria_busy = True + $ tonks_busy = True + + call music_block + jump main_room_menu + + +label end_ag_st_imperio: + call hide_characters + hide screen bld1 + with d3 + + $ tonks.equip(ton_outfit_last) # Equip player outfit. + $ astoria.equip(ast_outfit_last) # Equip player outfit. + + $ tonks_busy = True + $ astoria_busy = True + + call music_block + jump main_room_menu + + +label ag_st_imperio_E1: + stop music fadeout 1.0 + call play_sound("door") + call ton_chibi("stand","desk","base") + call ast_chibi("stand",530,"base") # Make sure it's slightly to the left of Tonks' chibi. + with d3 + pause.8 + + call play_music("tonks") + ast "" ("annoyed", "base", "base", "mid", xpos="base", ypos="base") + ton "Good evening, Professor." ("base", "happyCl", "base", "mid", xpos="right", ypos="base") + gen "Finally, you're back." ("base", xpos="far_left", ypos="head") + ton "Yes we are." ("base", "wink", "base", "mid") + ton "" ("soft", "base", "base", "mid") + ast "......................" ("annoyed", "narrow", "base", "L") # embarrassed + gen "Astoria!{w} How was your training? *Err*... I mean detention!" ("grin", xpos="far_left", ypos="head") + ast "................................" ("annoyed", "narrow", "base", "R") + ton "It went very well, I'd say." ("crooked_smile", "happyCl", "base", "mid") + ton "I instructed her on how to cast the curse - properly." ("base", "closed", "base", "mid") + ton "The right wand movement... The correct pronunciation..." ("open", "wide", "base", "R") + ton "There's a lot to it!" ("grin", "wide", "base", "mid") + ton "One mishap with those - and the curse might backfire!" ("normal", "shocked", "shocked", "mid") + ton "Sending you straight to St. Mungo's hospital - quacking like a duck!" ("annoyed", "shocked", "base", "mid") + gen "..........." ("base", xpos="far_left", ypos="head") + ton "I'd say she was very lucky using it on Susan..." ("mad", "base", "base", "mid") + ast "I knew exactly what I was doing..." ("base", "closed", "angry", "mid") + ast "" ("clench", "narrow", "base", "mid") + ton "Of course you did, princess." ("soft", "narrow", "base", "L") # Happy + ast "................................." ("annoyed", "narrow", "angry", "R") # annoyed + + ton "Now, shall we get started?" ("soft", "base", "base", "mid") + ast "Get started - with what?" ("open", "narrow", "base", "R") + ton "The next step of your training, of course!" ("soft", "base", "base", "R") + ton "I'd like you to cast the Imperius curse now... On another person." ("base", "base", "angry", "L") + ast "Wait, what?" ("angry", "base", "base", "mid") + ast "I thought I wasn't allowed to ever use it again?" ("annoyed", "base", "worried", "L") + ton "You aren't... That is correct." ("open", "closed", "base", "mid") + ton "However, you are hereby given special permission!" ("grin", "base", "base", "R") + ast "Really?" ("smile", "narrow", "base", "down") # happy + ton "Yes, dear!" ("base", "base", "base", "R") + ton "I believe our Professor would have no objection to that..." ("open", "closed", "base", "mid") + ton "Would you, Professor?" ("base", "base", "angry", "mid") + ast "Please, Professor!" ("smile", "base", "base", "mid") + gen "*Uhm*...{w=0.4} Sure...{w=0.6} Go ahead." ("base", xpos="far_left", ypos="head") + ton "Splendid!" ("silly", "happyCl", "base", "mid") + ast "Yes!" ("smile", "base", "angry", "L") + + ton "You can cast it, as long as it's under the supervision of a teacher..." ("open", "base", "raised", "down") + ton "And only within the walls of this room!" ("normal", "base", "base", "downR") # stern + ast "Right here? In front of Professor Dumbledore?" ("open", "base", "base", "mid") + ton "Naturally!" ("base", "closed", "base", "mid") + ast "But who do I cast it on? Susan?" ("smile", "base", "base", "R") + ton "Not this time, sweetheart." ("upset", "narrow", "base", "down", cheeks="blush") + ton "Today, I'd like you to cast it on me, if you don't mind..." ("open", "closed", "base", "mid", cheeks="blush") + ast "Wicked!" ("grin", "narrow", "worried", "down") + ton "Let's give this old man a quick demonstration of your talents, shall we..." ("grin", "base", "shocked", "mid") + + call ast_chibi("wand",530,"base") + with d3 + + ast "" ("grin", "narrow", "base", "mid") + gen ".............................." ("base", xpos="far_left", ypos="head") + ton "Just like we practised..." ("open", "closed", "base", "mid") + ton "Do the movement with your wand, and then you say--" ("open", "base", "base", "R") + ast "Imperio!" ("angry", "narrow", "angry", "mid") # angry scream + ast "" ("clench", "narrow", "angry", "mid") + pause .8 + + call ast_chibi("wand_casting",530,"base") + with d3 + + ton "Yes..." ("mad", "narrow", "base", "mid") + ton "...................." ("annoyed", "narrow", "shocked", "stare") + ton "You don't have to scream the words, darling." ("open", "closed", "raised", "L") + ton "What's crucial is that your mind is focused and--" ("normal", "closed", "base", "mid") + + # Astoria casts imperio. + stop music fadeout 2.0 + ast "IMPERIO!{w=0.8}{nw}" ("scream", "base", "angry", "mid", trans=hpunch) # Screams it even louder + + call hide_characters + hide screen bld1 + with d3 + pause.2 + + # chibi spell animation. + call play_sound("spell") + call ast_chibi("wand_imperio",530,"base") + with hpunch + pause.8 + + call play_music("trance") + ast "" ("clench", "base", "angry", "L", xpos="base", ypos="base") + ton "........................." ("mad", "wide", "shocked", "ahegao", hair="scared", xpos="right", ypos="base") # shock + ton "*Aaaaaah*..." ("horny", "base", "base", "ahegao", hair="horny") # inhales + ast "......................" ("clench", "base", "worried", "L") # clenched teeth + gen "What's happening to her?" ("base", xpos="far_left", ypos="head") + ast "I just cast the spell on her..." ("open", "closed", "base", "mid") + ast "Now she's under my command!" ("smile", "base", "base", "mid") + gen "You don't say?" ("grin", xpos="far_left", ypos="head") + gen "I love magic!" ("grin", xpos="far_left", ypos="head") + call ast_chibi("wand",530,"base") + with d3 + ast "What shall I do now, Professor?" ("clench", "base", "base", "L") + gen "I don't know...{w=0.4} Why are you asking me?" ("base", xpos="far_left", ypos="head") + gen "Did you two not discuss this beforehand?" ("base", xpos="far_left", ypos="head") + ast "No. All we did was some theoretical practice of the spell..." ("open", "base", "base", "down") + ast "I need to tell her to do something... or..." ("open", "base", "worried", "mid") + ast "I don't know... Maybe say something?" ("clench", "base", "base", "L") + ton "*Hmm*... Something..." ("base", "base", "worried", "up") + ast "!!!" ("smile", "base", "base", "L") + gen "What?" ("base", xpos="far_left", ypos="head") + ast "She did it!" ("smile", "base", "base", "L") + gen "Something what?" ("angry", xpos="far_left", ypos="head") + ast "No, she just said what I asked her to say!" ("smile", "base", "base", "mid") + gen "Oh..." ("base", xpos="far_left", ypos="head") + ast "I believe it's working!" ("smile", "closed", "base", "mid") + + ast "*Uhm*... Professor Tonks, you can now speak freely!" ("horny", "base", "base", "L") + ton "............................" ("base", "closed", "base", "stare") + ton "Oh... can I?..." ("open", "base", "base", "stare") + ton "Thank you..." ("soft", "wide", "base", "stare") + ast "She can hear me!" ("smile", "base", "base", "mid") + ton "You have a really cute voice..." ("horny", "wide", "shocked", "stare") + ast "................" ("annoyed", "base", "worried", "R") + gen "Try something else now." ("base", xpos="far_left", ypos="head") + ast "" ("annoyed", "base", "base", "L") + ton "I feel so good!" ("soft", "wide", "shocked", "stare", hair="horny") + ton "What is happening to me?" ("mad", "base", "raised", "stare", cheeks="blush") + ton "Are you playing with me?" ("open", "base", "worried", "stare", cheeks="blush") + ton "I want you to play with me!" ("open_wide_tongue", "narrow", "shocked", "stare") # horny + gen "I think she's tripping..." ("base", xpos="far_left", ypos="head") + ast "No!{w=0.6} Keep{w=0.4} - standing{w=0.4} - still!" ("clench", "closed", "worried", "mid") + ton "Okay........." ("soft", "base", "base", "stare") + gen "This is quite funny to watch!" ("grin", xpos="far_left", ypos="head") + gen "Can you make her *oink*?" ("grin", xpos="far_left", ypos="head") + ast "*oink*?" ("open", "wink", "base", "mid") + gen "You know, like a pig..." ("base", xpos="far_left", ypos="head") + ast "Yes, we can try that!" ("clench", "base", "base", "mid") + ast "Professor Tonks, I demand that you *oink*!" ("open", "base", "base", "L") + ton "*Huh*?..." ("open", "wide", "base", "stare") + ast "*oink*!" ("open", "base", "angry", "L") + ton "..................." ("normal", "wide", "base", "stare", cheeks="blush") + ast "Do it already!" ("angry", "base", "angry", "L") + ast "*oink!*{w=0.8}-*oink*!{w=0.8}-*oink*!" ("clench", "closed", "angry", "mid") # Angry + gen "*he-he-he!*" ("grin", xpos="far_left", ypos="head") + ast "*oink*...{w=0.8} you pig!" ("scream", "base", "angry", "L", trans=hpunch) # Screaming + ast "" ("clench", "narrow", "angry", "L") + gen "I don't believe she's going to do it..." ("base", xpos="far_left", ypos="head") + ast "But!" ("clench", "closed", "base", "mid") + gen "It's pointless, girl..." ("base", xpos="far_left", ypos="head") + gen "You can stop now..." ("base", xpos="far_left", ypos="head") + ast "Fine..." ("annoyed", "base", "angry", "down") + + # Tonks reverts back. + pause.2 + call hide_characters + call ast_chibi("reset",530,"base") + hide screen bld1 + with fade + pause.8 + + call play_music("tonks") + ton "" ("soft", "base", "worried", "down", cheeks="blush", xpos="right", ypos="base", trans=dissolve) + ast "" ("annoyed", "base", "angry", "mid", xpos="base", ypos="base", trans=dissolve) + ton "Oh my..." ("soft", "base", "worried", "down", cheeks="blush", xpos="right", ypos="base") + ton "Well that was fun!" ("base", "happyCl", "base", "down", cheeks="blush") # Happy + ast "No it wasn't!" ("clench", "narrow", "angry", "mid") + ast "Why weren't you doing pig noises!?" ("scream", "closed", "angry", "mid", trans=hpunch) + ast "You refused to do what I demanded!" ("annoyed", "narrow", "angry", "R") + ton "Yes I did!" ("soft", "base", "base", "R") + ton "It was quite easy, actually." ("normal", "base", "raised", "down") + ast "*Hnghhh*!" ("clench", "narrow", "angry", "down") + ton "Don't worry. You'll have better luck next time..." ("base", "base", "shocked", "R") + ton "Just try a bit harder." ("base", "wink", "base", "mid") + ton "" ("soft", "base", "base", "mid") + ast "..................................." ("annoyed", "narrow", "angry", "down") + ton "Thank you for your assistance, Professor." ("open", "base", "base", "mid") + ton "Let Astoria know when to visit me again for our next training session..." ("base", "base", "base", "mid") + gen "Very well." ("base", xpos="far_left", ypos="head") + ast "........................" ("annoyed", "base", "angry", "R") + ton "Have a good night, Professor." ("base", "wink", "base", "mid") + + call ton_walk("door", "base") + call ton_chibi("stand","door","base", flip=False) + with d3 + pause.2 + + ton "Come on, Astoria. I shall escort you back to your dormitory..." ("soft", "base", "base", "L", ypos="head") + ast "................................................." ("annoyed", "base", "base", "down", ypos="head") + + # They both leave. + call ast_walk(680, "base") + + call play_sound("door") + call ast_chibi("hide") + call ton_chibi("hide") + with d3 + + # Increase affection once (this is the first event) + if ag_st_imperio.counter == 1: + $ ast_whoring += 1 + + jump end_ag_st_imperio + + +label ag_st_imperio_E2: + stop music fadeout 1.0 + call play_sound("door") + call ton_chibi("stand","desk","base") + call ast_chibi("stand",530,"base") # Make sure it's slightly to the left of Tonks' chibi. + with d3 + pause.8 + + call play_music("tonks") + ast "" ("upset", "base", "base", "mid", xpos="base", ypos="base") + ton "Hello, Professor." ("base", "happyCl", "base", "mid", xpos="right", ypos="base") + ast "........................." ("upset", "base", "base", "L") + gen "Back already?" ("base", xpos="far_left", ypos="head") + ton "Yes, I gave Astoria a couple more pointers on how to improve the persuasiveness of the curse..." ("open", "wide", "base", "L") + ton "The trick is to not lose your temper after casting it!" ("soft", "closed", "base", "mid") + call ast_chibi("wand",530,"base") + ast "........................." ("annoyed", "base", "base", "down") + ton "This should be fun!" ("grin", "happyCl", "base", "mid") + gen "Very good." ("base", xpos="far_left", ypos="head") + + ton "Now, Astoria, just as last time - you will cast the Imperius curse on me..." ("soft", "base", "base", "L") + ton "And I'll do my best to resist--" ("open", "closed", "base", "mid") + + # Astoria casts imperio. + stop music fadeout 2.0 + ast "IMPERIO!{w=0.8}{nw}" ("scream", "base", "angry", "mid", trans=hpunch) # Screams it even louder + + call hide_characters + hide screen bld1 + with d3 + pause.2 + + # chibi spell animation. + call play_sound("spell") + call ast_chibi("wand_imperio",530,"base") + with hpunch + pause.8 + + call play_music("trance") + ast "" ("clench", "base", "angry", "L") + ton "........................." ("mad", "wide", "shocked", "ahegao") # shock + + gen "Damn it, girl!" ("grin", xpos="far_left", ypos="head") + gen "Give me a warning next time. You scared the crap out of me..." ("base", xpos="far_left", ypos="head") + ast "Sorry Professor!" ("smile", "base", "base", "mid") # Cute face + + ton ".........................." ("normal", "wide", "base", "stare") + ton "*uhhhh*... I looooooove this!" ("soft", "base", "base", "stare") + ton "It's like - I'm floating..." ("open", "wide", "shocked", "stare") + ton "It feels... sooooooooooooo... goooooooooooood!" ("open_wide_tongue", "base", "base", "ahegao") + ton "" ("mad", "base", "base", "ahegao") + call ast_chibi("wand",530,"base") + gen "(Is she getting off on this?)" ("base", xpos="far_left", ypos="head") + + ast "What shall I have her do, Professor?" ("clench", "wink", "base", "mid") + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + "-Have her turn around-": + ast "Yes, that's a good idea!" ("smile", "base", "base", "mid") + ton "................................" ("normal", "wide", "base", "stare") + ast "Professor Tonks, I command you to turn around." ("open", "base", "base", "L") + ton "*Huh*?" ("open", "wide", "raised", "stare") + ast "Turn around!" ("clench", "base", "angry", "L") + gen "Remember what she said about your temper, Astoria..." ("base", xpos="far_left", ypos="head") + ast "Oh... yes Sir! Of course..." ("smile", "closed", "base", "mid") + ast "Turn around." ("open", "narrow", "base", "L") + ton "......................" ("soft", "wide", "base", "stare") + + # Tonks turns around. (mirror sprite) + call ton_chibi("stand","desk","base", flip=True) + ton "" ("normal", "base", "base", "stare", flip=True, trans=dissolve) + pause.8 + + "-Ask her to remove her coat-": + ast "Yes, that should be easy." ("smile", "base", "base", "mid") + ton "................................" ("normal", "wide", "base", "stare") + ast "Tonks, I command you to remove your coat." ("open", "closed", "base", "mid") + ton "*Huh*?" ("open", "wide", "raised", "stare") + ast "Come on, do it!" ("annoyed", "base", "angry", "L") + gen "Try saying the magic word..." ("base", xpos="far_left", ypos="head") + ast "Imperio? But I already did--" ("open", "wink", "base", "mid") + gen "No... Ask her politely..." ("base", xpos="far_left", ypos="head") + ast "Oh! I got it!" ("smile", "closed", "base", "mid") + ast "Professor Tonks, please remove your coat for me..." ("open", "base", "base", "L") + ton "*Hmm*... okay..." ("soft", "wide", "base", "stare") + + # Tonks removes her coat. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("robe") + + call ctc + + ton "" ("normal", "wide", "base", "stare", cheeks="blush", flip=False) + pause.8 + + + ast "Yes, she did it!" ("smile", "base", "base", "L") + ast "What shall I have her do next?" ("base", "base", "base", "mid") + gen "*Hmm*................." ("base", xpos="far_left", ypos="head") + + $ d_flag_01 = False + + label ag_st_imperio_E2_choices: + + menu: + gen "Make her..." ("base", xpos="far_left", ypos="head") + "\"Do pig noises again!\"" if d_flag_01 == False: # Jumps back to choices. + $ d_flag_01 = True + + ast "Do a pig noise?" ("open", "base", "worried", "mid") + ton "*oink*!" ("open_wide", "happyCl", "base", "stare") + ast "She did it!" ("smile", "closed", "base", "mid") + ton "" ("normal", "happyCl", "base", "mid") + gen "Well done!" ("grin", xpos="far_left", ypos="head") + ast "Do it again!" ("smile", "base", "angry", "L") + ton "*oink*!" ("open_wide", "shocked", "worried", "stare", cheeks="blush") + ast "*hi-hi-hi-hi*!" ("smile", "closed", "base", "mid") + ton "" ("normal", "wide", "worried", "stare", cheeks="blush") + gen "I believe that's enough--" ("base", xpos="far_left", ypos="head") + ast "Do it again piggy! Ten times!" ("clench", "narrow", "angry", "L") # Angry + ton "*oink*{w=0.2}-*oink*{w=0.2}-*oink*{w=0.2}-*oink*{w=0.2}-*oink*{w=0.2}-*oink*{w=0.2}-*oink*{w=0.2}-*oink*{w=0.2}-*oink*{w=0.2}-*oink*!" ("open_wide_tongue", "wide", "base", "ahegao", cheeks="blush") + gen "......................." ("base", xpos="far_left", ypos="head") + ast "Agai--" ("scream", "closed", "angry", "mid", trans=hpunch) + gen "That's enough, Astoria!" ("angry", xpos="far_left", ypos="head") + ast "Fine..." ("annoyed", "narrow", "angry", "R") + + # Tonks returns to normal + call hide_characters + call ton_chibi("stand","desk","base", flip=False) + call ast_chibi("reset",530,"base") + with fade + pause.8 + + call play_music("astoria") + ast "" ("open", "base", "base", "down") + ton "Oh wow..." ("mad", "base", "shocked", "down", cheeks="blush", flip=False) + ton "You made me squeal like a pig!" ("mad", "happyCl", "base", "mid", cheeks="blush") + ton "You've made quite some progress, well done Astoria!" ("grin", "narrow", "shocked", "R") + ast "Thank you!" ("smile", "base", "base", "L") + gen "..." ("base", xpos="far_left", ypos="head") + gen "I have to say, I'm not that impressed..." ("base", xpos="far_left", ypos="head") + ton "You aren't?" ("open", "wide", "shocked", "mid") + ast "But, Professor!" ("clench", "base", "worried", "mid") + gen "Tonks, would you please do the noise again..." ("base", xpos="far_left", ypos="head") + ton "The noise, Professor?" ("soft", "base", "raised", "mid") + gen "Yes. Squeal for me." ("base", xpos="far_left", ypos="head") + ton "Very well..." ("open", "narrow", "shocked", "down") + ton "*oink*-*oink*!" ("open", "happyCl", "base", "mid") + gen "See, I don't even have to use magic to make her do it!" ("grin", xpos="far_left", ypos="head") + ton "Very funny, Sir..." ("soft", "narrow", "base", "downR") + gen "I'd like us to try this again..." ("base", xpos="far_left", ypos="head") + ton "Right now? Are you sure?" ("soft", "wide", "raised", "mid") + gen "(I want to see some tits - damn it! Or hear her talk dirty...)" ("angry", xpos="far_left", ypos="head") + gen "Yes, cast that spell again, Astoria..." ("base", xpos="far_left", ypos="head") + call ast_chibi("wand",530,"base") + ast "Very well, Sir..." ("smile", "closed", "base", "mid") + + # Astoria casts imperio. + stop music fadeout 2.0 + ast "IMPERIO!{w=0.8}{nw}" ("scream", "base", "angry", "mid", trans=hpunch) # Screams it even louder + + call hide_characters + hide screen bld1 + with d3 + pause.2 + + # chibi spell animation. + call play_sound("spell") + call ast_chibi("wand_imperio",530,"base") + with hpunch + pause.8 + + call play_music("trance") + ast "" ("clench", "base", "angry", "L") + ton "*Hmm*............." ("base", "base", "base", "ahegao") + call ast_chibi("wand",530,"base") + ast "And now?" ("open", "base", "base", "mid") + + jump ag_st_imperio_E2_choices + + "\"Say something naughty!\"": # Fails + ast "*Huh*?..." ("open", "base", "worried", "mid") + gen "Wouldn't you like to hear your teacher say something shameful?" ("grin", xpos="far_left", ypos="head") + ast "Yes!" ("smile", "base", "angry", "L") + ast "And what exactly?" ("clench", "base", "base", "mid") + gen "I don't know... You should think of something..." ("base", xpos="far_left", ypos="head") + gen "You're the one with the magic stick, after all..." ("base", xpos="far_left", ypos="head") + ton "......................." ("normal", "wide", "base", "stare") + ast "Okay... Professor Tonks..." ("open", "base", "worried", "L") + ast "I want you to repeat after me..." ("open", "closed", "base", "mid") + ton "..................................." ("horny", "wide", "base", "stare") + ast "I... am... a..." ("open", "base", "worried", "L") + ton "I am a--" ("soft", "wide", "base", "stare") + ast "dirty!{w} filthy!{w} pig!" ("open", "narrow", "base", "L") + ton "..................................." ("soft", "base", "base", "stare", cheeks="blush") + ast "Go on, say it!" ("clench", "narrow", "base", "L") + ast "I'm a dirty... filthy... pig!" ("open", "closed", "base", "mid") + ton "*hi-hi*!..." ("base", "happyCl", "shocked", "mid", cheeks="blush") + ast "SAY IT!" ("scream", "base", "angry", "L") # Scream + gen "Time-out!" ("angry", xpos="far_left", ypos="head") + ast "No! She has to do what she's told!" ("clench", "narrow", "angry", "mid") + gen "She clearly isn't going to..." ("base", xpos="far_left", ypos="head") + gen "We should take a break here..." ("base", xpos="far_left", ypos="head") + ast "......................." ("annoyed", "narrow", "angry", "mid") + + # Tonks returns to normal. + pause.2 + call hide_characters + call ton_chibi("stand","desk","base", flip=False) + call ast_chibi("reset",530,"base") + hide screen bld1 + with fade + pause.8 + + call play_music("tonks") + ast "" ("annoyed", "base", "angry", "mid") + ton "*huh*..." ("disgust", "base", "base", "down", flip=False) + ton "Well that was something, wasn't it?" ("soft", "closed", "base", "mid") + ast ".................................." ("annoyed", "narrow", "angry", "L") + gen "You resisted her curse again." ("base", xpos="far_left", ypos="head") + ton "Yes..." ("upset", "base", "base", "L") + ton "I'm sorry, honey!" ("annoyed", "narrow", "worried", "R") + ast ".................................." ("annoyed", "narrow", "angry", "down") + ton "You can't expect to succeed right away now, can you?" ("normal", "closed", "raised", "mid") + ton "To master a spell it takes time - and regular practising..." ("normal", "narrow", "base", "R") + ton "Or else anyone could do it." ("open", "closed", "shocked", "mid") + ton "We'll try again next time..." ("base", "narrow", "raised", "R") + ast "............................" ("upset", "narrow", "base", "down") + ton "Have a good night, Professor." ("soft", "base", "base", "mid") + + call ton_walk("door", "base") + call ton_chibi("stand","door","base", flip=False) + with d3 + pause.2 + + ton "After you, Astoria." ("open", "base", "base", "L", ypos="head") + ast "..........................." ("upset", "base", "base", "L", ypos="head") + + # They both leave. + call ast_walk(680, "base") + + call play_sound("door") + call ast_chibi("hide") + call ton_chibi("hide") + with d3 + + $ ast_mood += 12 + + # Event fails. + $ ag_st_imperio.fail() + + call bld + gen "I don't think we made much progress here..." ("base", xpos="far_left", ypos="head") + + $ tonks.equip(ton_outfit_last) # Equip player outfit. + $ astoria.equip(ast_outfit_last) # Equip player outfit. + + call music_block + jump main_room_menu + + "\"Show us those tits!\"": # Succeeds + ast "What?" ("clench", "base", "base", "mid") + gen "Have her show us her breasts!" ("grin", xpos="far_left", ypos="head") + ast "Professor?!" ("open", "closed", "worried", "mid") + gen "You did the same to Susan, didn't you?" ("base", xpos="far_left", ypos="head") + ast "Yes, but..." ("open", "narrow", "worried", "mid") + ast "I doubt Professor Tonks would be ok with that, she'll just refuse like she did before!" ("clench", "narrow", "base", "L") + gen "Did you have those concerns with Susan as well?" ("base", xpos="far_left", ypos="head") + ast "Susan didn't require much convincing, her boobs were already falling out of her--" ("clench", "narrow", "base", "L") + gen "Just try it." ("base", xpos="far_left", ypos="head") + gen "She can refuse to do it if she really doesn't want to..." ("base", xpos="far_left", ypos="head") + ast "Fine... But it's a waste of time." ("annoyed", "base", "base", "L") + ast "Professor Tonks, I'd like you to show us your..." ("open", "base", "base", "mid") + ast "*Uhm*..." ("upset", "base", "base", "down") + ast "Your breasts!" ("clench", "closed", "base", "mid") # embarrassed + ton "Oh..." ("open", "wide", "shocked", "up") + ton "............................" ("soft", "wide", "worried", "stare") + gen "(Fingers crossed!)" ("angry", xpos="far_left", ypos="head") + ton "............................" ("clench", "narrow", "base", "stare") # Clenched teeth + ast "What the--{w=0.4} I think she's struggling!" ("smile", "base", "base", "L") + gen "Very good, girl!" ("angry", xpos="far_left", ypos="head") + gen "Pressure her more! I want to see those puppies!" ("angry", xpos="far_left", ypos="head") + ast "Professor Tonks, show us your breasts! Now!" ("open", "base", "angry", "L") + gen "(It was easier for her to resist doing pig noises...)" ("base", xpos="far_left", ypos="head") + gen "(Could it be that she {b}wants{/b} to show them to us?{w} And is resisting that inner urge?)" ("base", xpos="far_left", ypos="head") + ton "................................" ("mad", "wide", "worried", "stare", hair="horny") # Really struggling! + gen "(What a slut!)" ("angry", xpos="far_left", ypos="head") # Small text + ast "Come on, do it!" ("clench", "narrow", "angry", "L") + ton "*Hnnnngh*!..." ("mad", "wide", "worried", "ahegao", hair="horny") + call cum_block + ton "*Aaaaahhh*..." ("open_wide_tongue", "base", "worried", "ahegao", cheeks="blush") # Relieved + gen "(Did she just--)" ("angry", xpos="far_left", ypos="head") + ton "" ("open", "narrow", "worried", "stare", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Girl, I think your teacher is done for..." ("base", xpos="far_left", ypos="head") + ast "What?" ("clench", "base", "worried", "mid") + ton "" ("normal", "closed", "worried", "stare", cheeks="blush") + gen "She \"broke the curse.\" You can stop now..." ("base", xpos="far_left", ypos="head") + ast "*Aww*..." ("upset", "narrow", "base", "down") + ast "If you say so, Professor..." ("annoyed", "base", "base", "mid") + + # Tonks returns to normal. + pause.2 + call hide_characters + call ast_chibi("reset",530,"base") + hide screen bld1 + with fade + pause.8 + + call play_music("astoria") + ast "" ("annoyed", "base", "base", "mid") + ton "*Ouch*... That was painful!" ("mad", "closed", "base", "mid", cheeks="blush", flip=False) + ton "You nearly got me there." ("disgust", "base", "shocked", "R", cheeks="blush") + ast "Did I really?" ("smile", "base", "base", "mid") + ton "Yes, well done, Astoria!" ("open", "base", "base", "down", cheeks="blush") + ast "Thank you!" ("smile", "closed", "base", "mid") + gen "Was it really such a struggle for you to not get your breasts out?" ("base", xpos="far_left", ypos="head") + ton "*Uhm*..." ("mad", "base", "base", "down", cheeks="heavy_blush") + gen "*He-he-he*!" ("grin", xpos="far_left", ypos="head") + ton "Shall we wrap it up for today?" ("upset", "base", "shocked", "downR", cheeks="blush") + ton "I'm sure you'll do even better next time, Astoria." ("soft", "base", "shocked", "R") + ast "{size=-4}Yes... Finally I shall release my unlimited power...{/size}" ("smile", "narrow", "base", "L") + + $ renpy.sound.play("sounds/thunder_2.ogg") + + if game.weather in {"clear", "cloudy"}: + gen "Where the hell did that thunder come from?" ("base", xpos="far_left", ypos="head") + else: + gen "What the--" ("base", xpos="far_left", ypos="head") + + #Astoria walks to door but waits for Tonks. + call ast_walk(680, "base") + call ast_chibi("stand", 680, "base", flip=False) + with d3 + + ton "Have a good night, Professor!" ("base", "happyCl", "base", "mid") + gen "Until next time..." ("base", xpos="far_left", ypos="head") + + # Tonks walks to door and they both leave + call ton_walk("door", "base") + + + hide tonks_main + call ton_chibi("leave") + hide astoria_main + call ast_chibi("stand", 680, "base", flip=True) + pause .3 + call ast_chibi("leave") + with d3 + + call bld + gen "And they say I'm the big, bad pervert..." ("base", xpos="far_left", ypos="head") + + # Increase affection once (this is the second event) + if ag_st_imperio.counter == 2: + $ ast_whoring += 1 + + jump end_ag_st_imperio + + +label ag_st_imperio_E3: + stop music fadeout 1.0 + call play_sound("door") + call ton_chibi("stand","desk","base") + call ast_chibi("stand",500,"base") # Make sure it's slightly to the left of Tonks' chibi. + with d3 + pause.8 + + call play_music("tonks") + ast "" ("annoyed", "base", "base", "mid", xpos="base", ypos="base") + ton "Well, Professor." ("open", "closed", "base", "mid", xpos="right", ypos="base") + ton "We're back..." ("soft", "wink", "base", "mid") + ast "..." ("annoyed", "base", "base", "L") + gen "Did you make any progress today?" ("base", xpos="far_left", ypos="head") + ton "Of course we did!" ("base", "wide", "base", "mid") + ton "Professor, you aren't questioning my abilities as a teacher, are you?" ("base", "closed", "annoyed", "mid") + gen "Of course not..." ("base", xpos="far_left", ypos="head") + gen "You're very skilled at what you do!" ("grin", xpos="far_left", ypos="head") + gen "You've shown me many times." ("grin", xpos="far_left", ypos="head") + ton "Thank you! {heart}" ("base", "narrow", "base", "mid") + ast "*Ugh*..." ("clench", "narrow", "base", "down") # Disgusted from the flirting? + + call ast_chibi("wand",530,"base") + with d3 + ton "I could teach you a thing or two as well, Professor." ("base", "base", "shocked", "down") + + call ast_chibi("wand_casting",530,"base") + with d3 + ton "Even the great Albus Dumbledore doesn't know everything about--" ("soft", "closed", "angry", "mid") + + # Astoria casts imperio. + stop music fadeout 2.0 + ast "IMPERIO!{w=0.8}{nw}" ("scream", "base", "angry", "mid", trans=hpunch) # Screams it even louder + + call hide_characters + hide screen bld1 + with d3 + pause.2 + + # chibi spell animation. + call play_sound("spell") + call ast_chibi("wand_imperio",530,"base") + with hpunch + pause.8 + + call play_music("trance") + ast "" ("clench", "base", "angry", "L") + ton "*Hngh*!..." ("mad", "wide", "shocked", "ahegao") # shock + ton "*Hmm*..." ("base", "base", "base", "ahegao", hair="horny") + + call ast_chibi("wand",530,"base") + with d3 + ast "Sir, I'm not here to listen to you two banter..." ("angry", "closed", "angry", "mid") + gen "That's fair." ("base", xpos="far_left", ypos="head") + gen "Time is precious, after all..." ("base", xpos="far_left", ypos="head") + ton "..." ("normal", "wide", "base", "stare") + ast "I've spent enough time today getting lectured by her..." ("annoyed", "base", "angry", "L") + gen "Isn't she supposed to do that? Teach you?" ("base", xpos="far_left", ypos="head") + ast "I don't need to be taught!" ("annoyed", "narrow", "angry", "mid") + ast "I already know how to cast the spell." ("clench", "base", "angry", "mid") + gen "Surely there is some room for you to improve." ("base", xpos="far_left", ypos="head") + + ast "Professor Tonks, take off that coat!" ("open", "closed", "base", "mid") + ton "..." ("soft", "wide", "worried", "stare") + ton "...{fast}..." ("base", "wide", "worried", "stare") + + # Remove coat. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("robe") + + call ctc + + ton "" ("base", "base", "base", "stare", cheeks="blush") + pause.8 + + ast "See, I told you I could do it!" ("smile", "narrow", "base", "mid") + gen "Great... Don't get cocky..." ("base", xpos="far_left", ypos="head") + ast "Don't you see, Professor?" ("annoyed", "narrow", "base", "mid") + ast "I can make her do whatever I want!" ("smile", "narrow", "base", "mid") + ast "I'm the greatest witch of all time!" ("clench", "base", "angry", "L") + ton "..." ("normal", "base", "raised", "stare") + ast "If I can pull off the Imperius curse on Professor Tonks..." ("open", "closed", "base", "mid") + ast "Any of the other girls will be easy game for me!" ("smile", "narrow", "angry", "down") # Game as in "prey". + ast "I'll make them rue the day they ever made fun of me!" ("clench", "closed", "angry", "mid") + ton "..................................................." ("annoyed", "wide", "shocked", "stare", hair="annoyed") # Angry at Astoria + gen "......................." ("base", xpos="far_left", ypos="head") + ast "Tomorrow, I shall have Susan walk through school - parading those ridiculous udders of hers for all to see! That'll show her!" ("angry", "narrow", "angry", "R") + ton "!!!" ("upset", "wide", "shocked", "stare", hair="angry") # Very angry + ast "And then shove her into our common room - and all the boys will laugh at her cow udders!" ("smile", "closed", "angry", "R") + gen "And she'll love every second of it!" ("grin", xpos="far_left", ypos="head") + ast "And she'll--" ("smile", "closed", "angry", "R") + ton "*Tzzzzz*!..." ("upset", "closed", "annoyed", "mid", hair="angry", emote="angry") + ton "That's enough!" ("scream", "base", "angry", "R", trans=hpunch) + + # Tonks returns to normal, and puts her clothes back on. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.wear("all") + ton "" ("mad", "base", "angry", "down") + pause.8 + + call ast_chibi("reset",530,"base") + ast "What?" ("clench", "base", "worried", "L") + ton "Astoria, you are dismissed!" ("open", "closed", "angry", "mid") + ast "No! I still wanted to--" ("angry", "base", "angry", "mid") + ton "Dismissed!" ("normal", "closed", "angry", "mid") + ast "........................" ("annoyed", "narrow", "angry", "R") + ast "*Tzzz!*..." ("clench", "base", "angry", "mid") + + # Astoria leaves. + call ast_walk(action="leave") + + ton "The nerve on that girl, I can't believe it!" ("open", "base", "angry", "R", hair="angry", xpos="mid", ypos="base") + ton "I'm beginning to think teaching her an \"unforgivable curse\" might've been a bad idea after all..." ("normal", "closed", "annoyed", "mid") + gen "How so?" ("base", xpos="far_left", ypos="head") + ton "Didn't you hear her?" ("open", "base", "angry", "mid") + ton "She's disregarding all of our advice!... Or at least planning to..." ("mad", "base", "angry", "R") + ton "She's been ignoring my instructions all day!" ("annoyed", "closed", "base", "mid") + ton "She's such a cute and stubborn girl..." ("soft", "closed", "angry", "mid") + ton "We can't have her roaming the school - cursing people as she pleases!" ("annoyed", "base", "annoyed", "mid") + + gen "So, should we stop?" ("base", xpos="far_left", ypos="head") + ton ".................." ("annoyed", "closed", "annoyed", "mid", hair="neutral") + ton "Only if she refuses to follow our rules..." ("open", "narrow", "annoyed", "downR") + ton "As long as what we're doing stays within these walls, it shouldn't be too bad." ("normal", "base", "annoyed", "R") + ton "And besides, Imperio isn't the worst curse you could be a target of, all things considered..." ("upset", "base", "annoyed", "down") + gen "I thought it was dangerous?" ("base", xpos="far_left", ypos="head") + ton "Only if you use the right commands." ("open", "narrow", "annoyed", "down") + gen "Such as asking one of their horny teachers to--" ("base", xpos="far_left", ypos="head") + ton "The curse itself is quite harmless." ("annoyed", "closed", "base", "mid") + ton "And it feels really good when you're under its effect..." ("soft", "base", "base", "R") + gen "It does?" ("base", xpos="far_left", ypos="head") + ton "*Mhmm*... yeah..." ("horny", "base", "annoyed", "up", hair="horny") + ton "It's so goood! {heart}" ("soft", "narrow", "worried", "ahegao") + gen "I think you're enjoying this a bit too much!" ("grin", xpos="far_left", ypos="head") + gen "Just what would your students think if they knew their teacher gets off on being mind controlled?" ("grin", xpos="far_left", ypos="head") + ton "Oh - be quiet you..." ("annoyed", "wide", "annoyed", "up") + ton "................................" ("upset", "wide", "worried", "stare") + ton "Is it that obvious?" ("disgust", "base", "worried", "L") + gen "Can't fool a genie..." ("grin", xpos="far_left", ypos="head") + gen "I'm a genius, it's in the name." ("base", xpos="far_left", ypos="head") + gen "G{w=0.3} E{w=0.3} N{w=0.5} I{w=0.5} U...{w=1.0}{nw}" ("base", xpos="far_left", ypos="head") + gen "G E N I U...{fast} hold on a second..." ("angry", xpos="far_left", ypos="head") #This makes the line change expression mid sentence + ton "Anyway..." ("normal", "base", "base", "down") + ton "I'll have to talk some sense into that girl before we can continue, that's for certain..." ("annoyed", "wide", "annoyed", "downR") + gen "Of course..." ("base", xpos="far_left", ypos="head") + + ton "I'm sorry I let this situation get out of hand..." ("open", "closed", "worried", "mid") + ton "It won't happen again, I promise." ("disgust", "base", "worried", "mid") + gen "You did great..." ("base", xpos="far_left", ypos="head") + gen "But next time I'd like to see some tits!" ("grin", xpos="far_left", ypos="head") + ton "Of course you would." ("base", "base", "annoyed", "R") + ton "You love 'em - don't you?" ("base", "wide", "annoyed", "mid") + gen "That I do!" ("grin", xpos="far_left", ypos="head") + ton "I should get going. It's getting late..." ("normal", "base", "shocked", "down") + gen "Until next time..." ("base", xpos="far_left", ypos="head") + ton "Have a good night, [ton_genie_name]." ("soft", "base", "base", "mid") + + # Tonks leaves. + call ton_walk(action="leave") + + call bld + gen "..." ("base", xpos="far_left", ypos="head") + gen "G{w=0.3} E{w=0.3} N{w=0.5} I--" ("angry", xpos="far_left", ypos="head") + gen "Fuck it..." ("base", xpos="far_left", ypos="head") + + $ ast_mood += 12 + + # Increase affection once (this is the third event) + if ag_st_imperio.counter == 3: + $ ast_whoring += 1 + + jump end_ag_st_imperio + + +label ag_st_imperio_E4: + stop music fadeout 1.0 + + call ton_walk(action="enter",xpos="desk",ypos="base") + pause.5 + + call ton_chibi("stand","desk","base", flip=True) + with d3 + pause.1 + + ton "Astoria, would you come in here please..." ("open", "closed", "base", "mid", ypos="head") + ast "Do I have to?" + ton "Yes, we already talked about this..." ("open", "base", "base", "R") + ast "Fine, whatever..." + hide screen bld1 + with d3 + pause.1 + + #Astoria enters + call ast_walk(action="enter",xpos=530,ypos="base") # Make sure it's slightly to the left of Tonks' chibi. + pause.1 + + call ton_chibi("stand","desk","base", flip=False) + with d3 + pause.5 + + call play_music("tonks") + ton "" ("base", "base", "base", "L", xpos="right", ypos="base") + ast "..." ("annoyed", "narrow", "base", "down", xpos="base", ypos="base") + + ton "Astoria... isn't there something you'd like to say to our Headmaster?" ("soft", "base", "shocked", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + ast "Yes..." ("open", "narrow", "base", "down") + ton "" ("base", "base", "base", "R") + ast "Sir, I'm sorry about my behaviour during our last training session." ("annoyed", "base", "base", "L") + gen "Sure, no big deal--" ("base", xpos="far_left", ypos="head") + ast "It was wrong of me to scream at Professor Tonks like that, or scream at you..." ("open", "narrow", "base", "L") + gen "Fine. Let's just get to--" ("base", xpos="far_left", ypos="head") + ton "And what else?" ("open", "closed", "base", "mid") + ton "" ("base", "base", "base", "L") + ast "I was disrespectful, selfish, and mean." ("open", "closed", "base", "mid") + ast "And I should be thankful that you are granting me this opportunity." ("open", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + ast "I'm well aware of what is at stake here, and I shall follow the rules from now on." ("clench", "narrow", "base", "down") + ast "..." ("annoyed", "narrow", "base", "down") # Looks away + gen "*Ahem* Could we please just get started?" ("base", xpos="far_left", ypos="head") + gen "(I'm dying to see some tits!)" ("angry", xpos="far_left", ypos="head") + ast "........................" ("annoyed", "base", "base", "R") + ton "Very good, Astoria." ("base", "happyCl", "base", "mid") + ton "I'm proud of you. {heart}" ("grin", "base", "base", "R") + ast "........................." ("annoyed", "base", "base", "down") # embarrassed + gen "......................." ("base", xpos="far_left", ypos="head") + + ton "So, let's begin..." ("base", "wide", "base", "mid") + call ast_chibi("wand",530,"base") + with d3 + ton "Astoria, try and focus on what we went through today..." ("open", "base", "base", "down") + ton "Keep good track of your emotions after channelling the spell..." ("open", "closed", "base", "mid") + ton "Anger and rage will cause you to lose control - and eventually break the connection with the target..." ("normal", "base", "annoyed", "L") + ton "Do your best to be as thoughtful, nice, and endearing as you possibly can towards your target..." ("base", "base", "base", "L") + ast "" ("annoyed", "base", "base", "R") + ton "The stronger the emotional bond - the better." ("open", "closed", "base", "mid") + ton "So try to charm them a bit while you're at it!" ("soft", "base", "base", "L") + ton "It is called a charm for a reason, after all!" ("base", "happyCl", "base", "mid") + ast "....................." ("annoyed", "base", "worried", "down") + gen "...................." ("base", xpos="far_left", ypos="head") + ton "Not a very good joke - I gather..." ("annoyed", "wide", "raised", "mid") + gen "I'm sorry. I was only half paying attention..." ("base", xpos="far_left", ypos="head") + ton "Very well..." ("upset", "base", "shocked", "L") + + ton "Now then, let's get on with it, shall we?" ("base", "wink", "annoyed", "mid") + ast "..." ("annoyed", "base", "base", "mid") + call ast_chibi("wand_casting",530,"base") + with d3 + ton "Astoria, as soon as I'm ready, I'd like you to--" ("open", "closed", "base", "mid") + + # Astoria casts imperio. + stop music fadeout 2.0 + ast "IMPERIO!{w=0.8}{nw}" ("scream", "base", "angry", "mid", trans=hpunch) # Screams it even louder + + call hide_characters + hide screen bld1 + with d3 + pause.2 + + # chibi spell animation. + call play_sound("spell") + call ast_chibi("wand_imperio",530,"base") + with hpunch + pause.8 + + call play_music("trance") + ast "" ("annoyed", "base", "base", "L") + ton "........................." ("mad", "wide", "shocked", "ahegao", hair="horny") # shock + + gen "......................" ("base", xpos="far_left", ypos="head") + ton "*Aaaaah*..." ("open", "base", "shocked", "ahegao", hair="horny", cheeks="blush") + call ast_chibi("wand",530,"base") + with d3 + ast "I'm getting really good at this!" ("smile", "base", "angry", "L") + ton "......................." ("normal", "wide", "base", "stare") + ast "What shall I have her do, Professor?" ("smile", "base", "base", "mid") + + gen "*Hmm*... How about..." ("base", xpos="far_left", ypos="head") + menu: + "\"Make her turn around!\"": # She's facing Astoria + ast "Very well, Sir." ("base", "base", "worried", "mid") + ast "Professor, please turn around for me..." ("open", "base", "base", "L") + ton "*Hmm*... Yes!" ("base", "base", "worried", "stare") + + # Tonks turns around + call hide_characters + hide screen bld1 + with d3 + pause.1 + + call ton_chibi("stand","desk","base", flip=True) + with d3 + pause.5 + + ast "" ("clench", "wink", "worried", "mid") + ton "" ("base", "base", "base", "L", flip=True) + pause.8 + + ton "........................" ("horny", "wide", "base", "stare") + ast "*Uhm*..." ("clench", "narrow", "worried", "R") # Astoria is uncomfortable + + "\"Let her face me!\"": + ast "Very well..." ("open", "base", "base", "mid") + + ast "And now?" ("base", "base", "base", "mid") + gen "Her coat! Tell her to take it off!" ("grin", xpos="far_left", ypos="head") + ast "Professor Tonks, please remove your coat for me." ("open", "base", "worried", "L") + ton "..." ("base", "base", "base", "stare") + + # Remove coat. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("robe") + ton "" ("base", "base", "base", "ahegao") + pause.8 + + gen "You're doing great, Astoria!" ("grin", xpos="far_left", ypos="head") + gen "It's like watching you teach a puppy new tricks..." ("grin", xpos="far_left", ypos="head") + ton ".........................." ("soft", "narrow", "base", "ahegao") # ahegao + ast "If you say so, Sir." ("clench", "base", "base", "down") + gen "Let's move on to the next trick, shall we?" ("base", xpos="far_left", ypos="head") + gen "Ask her to get those tits out!" ("grin", xpos="far_left", ypos="head") + ast "Her what?!" ("clench", "base", "base", "mid") + gen "Her breasts, girl..." ("base", xpos="far_left", ypos="head") + gen "Tell her to remove her top." ("base", xpos="far_left", ypos="head") + ast "Right now?" ("open", "wink", "base", "mid") + ast "But..." ("clench", "base", "base", "mid") + + if tonks.xzoom == -1: # Facing Astoria + ast "Can I at least tell her to turn around again?" ("clench", "base", "worried", "R") + gen "Why? Scared of your teacher's enormous rack?" ("base", xpos="far_left", ypos="head") + ast "What?{w} As if!" ("annoyed", "narrow", "angry", "R") + gen "I doubt she'd like to show them to you anyway..." ("grin", xpos="far_left", ypos="head") + ton "......................" ("soft", "base", "base", "ahegao", hair="horny") # Ahegao + ast "............" ("annoyed", "base", "worried", "mid") + gen "Go on..." ("base", xpos="far_left", ypos="head") + + else: # Facing Genie + ast "I'm not sure if she'd be okay with that." ("open", "base", "worried", "mid") + gen "This again?" ("base", xpos="far_left", ypos="head") + ast "You'd have to close your eyes first, Professor!" ("open", "closed", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + gen "Are you giving orders to me now as well, girl?" ("base", xpos="far_left", ypos="head") + ast "Close your eyes!" ("angry", "narrow", "angry", "mid") + gen "Not a chance!" ("base", xpos="far_left", ypos="head") + ast "......................." ("annoyed", "base", "angry", "R") + ast "It won't be my fault if she gets mad at you later!" ("open", "narrow", "base", "down") + gen "Sure, whatever..." ("base", xpos="far_left", ypos="head") + gen "Go on already!" ("base", xpos="far_left", ypos="head") + + gen "Let's get those tits out!" ("grin", xpos="far_left", ypos="head") + ast "Professor Tonks, I need you to remove your..." ("open", "base", "worried", "R") + ast "Your shirt..." ("clench", "base", "base", "down") + ton "................" ("normal", "base", "shocked", "stare") + gen "!!!" ("grin", xpos="far_left", ypos="head") + + # Remove top. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("top") + if tonks.is_worn("bra"): # Remove bra if True + ast "and your bra..." ("clench", "base", "base", "down") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("bra") + ton "" ("base", "wide", "shocked", "ahegao", cheeks="blush") + ast "" ("annoyed", "closed", "base", "mid") + call ctc + + if tonks.xzoom == -1: # Facing Astoria + ast "Is she... is she doing it?" ("clench", "closed", "worried", "mid") # closed eyes + ton "............." ("grin", "wink", "base", "mid", cheeks="blush") # horny + gen "Why don't you see for yourself?" ("grin", xpos="far_left", ypos="head") + gen "Open your eyes, girl!" ("grin", xpos="far_left", ypos="head") + ast "I don't want to..." ("open", "closed", "worried", "mid") + gen "Why not?" ("base", xpos="far_left", ypos="head") + ast "Why would I want to look at her--" ("open", "closed", "worried", "mid") + gen "Now, now... Don't be rude to your teacher..." ("base", xpos="far_left", ypos="head") + gen "It seems to me like she would really like to show you!" ("grin", xpos="far_left", ypos="head") + ast "...................." ("clench", "closed", "base", "mid") # eyes still closed + ton "" ("base", "wide", "base", "stare", cheeks="blush") + ast "..." ("clench", "wink", "base", "mid") + ast "...................." ("annoyed", "narrow", "worried", "R") + gen "That wasn't too bad now, was it?" ("grin", xpos="far_left", ypos="head") + ton "......................." ("base", "base", "base", "ahegao", hair="horny", cheeks="blush") # ahegao + + else: + gen "Now would you look at that!" ("grin", xpos="far_left", ypos="head") + ton "................" ("soft", "wide", "shocked", "stare") # horny + gen "Those are some great breasts your teacher has there!" ("base", xpos="far_left", ypos="head") + ton "................" ("soft", "wide", "base", "stare", hair="horny") # ahegao + ast "I asked you not to look, Professor!" ("open", "closed", "angry", "mid") + gen "I don't believe she minds, does she?" ("grin", xpos="far_left", ypos="head") + ast "" ("clench", "narrow", "worried", "R") + ton "................" ("horny", "wide", "base", "stare", cheeks="blush") # ahegao + + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "We might be able to push her even further!" ("base", xpos="far_left", ypos="head") + ast "Further, Sir? How?" ("annoyed", "wink", "base", "mid") + gen "By getting her to remove the rest of her clothing, of course!" ("grin", xpos="far_left", ypos="head") + ton ".............." ("horny", "base", "shocked", "ahegao", hair="horny", cheeks="heavy_blush") # angry/horny expression + gen "What do you think? Want to give it a try?" ("grin", xpos="far_left", ypos="head") + ast "Would that really be necessary, Sir?" ("open", "base", "base", "R") + gen "Yes.{w=0.3} it.{w=0.3} would." ("base", xpos="far_left", ypos="head") + ast "We--{w=0.5} we could try again next time, Professor..." ("clench", "narrow", "base", "down") + gen "Next time?" ("base", xpos="far_left", ypos="head") + gen "Where did your enthusiasm go all of a sudden?" ("base", xpos="far_left", ypos="head") + gen "Weren't you so eager to practise this spell?" ("base", xpos="far_left", ypos="head") + ast "Yes, but..." ("annoyed", "narrow", "base", "down") + gen "Yes?" ("base", xpos="far_left", ypos="head") + ast "I don't have to explain myself to you!" ("annoyed", "narrow", "angry", "down") + ton "" ("annoyed", "wide", "shocked", "ahegao", cheeks="blush") + ast "..." ("annoyed", "narrow", "angry", "R") + + stop music fadeout 2.0 + gen "..." ("base", xpos="far_left", ypos="head") + ast "I should go to bed..." ("open", "narrow", "base", "R") + gen "Is that so..." ("base", xpos="far_left", ypos="head") + ast "I-- *Uhm*...{w=0.5} I'm tired, Sir." ("open", "narrow", "base", "mid") + ast "*yaaaaawn*!..." ("open", "closed", "worried", "mid") + ast "See?" ("annoyed", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Very well..." ("base", xpos="far_left", ypos="head") + gen "You are dismissed." ("base", xpos="far_left", ypos="head") + ast "..." ("clench", "narrow", "worried", "down") #embarrased + + # Astoria leaves and spell fades + call hide_characters + hide screen bld1 + with d3 + pause.5 + + call ast_chibi("reset",530,"base", flip=True) + with d3 + pause.2 + + call ast_walk(action="leave") + pause.5 + + call ton_chibi("stand","desk","base", flip=False) + with d3 + pause.8 + + call play_music("tonks") + ton "Well, that was interesting..." ("annoyed", "wide", "base", "downR", hair="neutral", xpos="mid", ypos="base", flip=False, trans=dissolve) + gen "Do you have any idea why she wanted to leave so abruptly?" ("base", xpos="far_left", ypos="head") + ton "I have a couple of theories, actually..." ("soft", "closed", "base", "mid") + gen "*Mhmm*... That curse thing is it?" ("base", xpos="far_left", ypos="head") + ton ".................." ("soft", "wide", "base", "down", hair="horny") # horny stare + ton "Would you like me to put my clothes back on?" ("grin", "narrow", "raised", "mid") + gen "Don't feel pressured!" ("grin", xpos="far_left", ypos="head") + ton "Very well, then..." ("base", "narrow", "base", "mid") + + # screenshake + with hpunch + call nar(">Tonks gives her breasts a quick shake for you.") + + gen "Sweet!" ("grin", xpos="far_left", ypos="head") + ton "..............." ("horny", "wink", "base", "L") + ton "She made some good progress today, unlike last time..." ("base", "base", "shocked", "L") + ton "And she was very polite!" ("base", "happyCl", "base", "mid") + ton "But she isn't quite there yet..." ("upset", "base", "shocked", "down") + + gen "Does she require more training?" ("base", xpos="far_left", ypos="head") + ton "Yes, actually..." ("soft", "narrow", "shocked", "downR") + ton "She'll need a lot more training to pull off the Imperius curse properly..." ("open", "closed", "base", "R") + ton "And, as you could see... It doesn't have much of an effect on me." ("soft", "base", "shocked", "down") + ton "I could have easily avoided doing everything she's told me today, if I wanted to..." ("open", "closed", "base", "mid") + gen "But you didn't!" ("grin", xpos="far_left", ypos="head") + ton "It wasn't my intention to break her spirit again... She was really trying!" ("upset", "closed", "worried", "R") + ton "Now, as you know, I'm a trained Auror..." ("normal", "wide", "shocked", "mid") + gen "A very \"talented\" one at that!" ("base", xpos="far_left", ypos="head") + ton "Are you just praising my tits, Sir?" ("soft", "narrow", "annoyed", "mid") + gen "Every part of your body is worthy of praise!" ("grin", xpos="far_left", ypos="head") + ton "Well... thank you, [ton_genie_name]." ("base", "happyCl", "shocked", "mid") + + # Screenshake + with hpunch + ton "" ("horny", "narrow", "shocked", "mid") + call nar(">Tonks gives her breasts another quick shake for you.") + + call ctc + + ton "I suggest we do one more training session, and then call it from there..." ("base", "wide", "base", "mid") + gen "Sounds good to me..." ("base", xpos="far_left", ypos="head") + ton "Believe me, it's gonna be a great one!" ("soft", "wink", "base", "mid") + gen "Are we going to see more of your... talents?" ("grin", xpos="far_left", ypos="head") + ton "How would you like to see {b}all{/b} this Auror has to offer?" ("horny", "closed", "annoyed", "mid") # horny + gen "Looking forward to it!" ("grin", xpos="far_left", ypos="head") + ton "Have a good night, [ton_genie_name]!" ("base", "base", "angry", "mid") + + # Tonks leaves. + call ton_walk(action="leave") + + call bld + gen "I hope she's planned something big!" ("grin", xpos="far_left", ypos="head") + + # Increase affection once (this is the fourth event) + if ag_st_imperio.counter == 4: + $ ast_whoring += 1 + + jump end_ag_st_imperio + + +label ag_st_imperio_E5: + stop music fadeout 1.0 + call play_sound("door") + call ton_chibi("stand","desk","base") + call ast_chibi("stand",530,"base") # Make sure it's slightly to the left of Tonks' chibi. + with d3 + pause.8 + + call play_music("astoria") + ast "" ("smile", "base", "base", "mid", xpos="base", ypos="base") + ton "Hi, Professor!" ("base", "wide", "base", "mid", xpos="right", ypos="base") + + ast "Hello!" ("smile", "closed", "base", "mid", emote="happy") # Happy + gen "All cheered up today, Astoria?" ("base", xpos="far_left", ypos="head") + ast "Yes, Sir." ("grin", "base", "base", "mid") + ton "She should be. We made some real progress today." ("grin", "narrow", "base", "R") + ton "I'm very impressed with her, I've got to say!" ("base", "base", "base", "mid") + ton "She's very close to mastering it!" ("base", "happyCl", "base", "mid") + ast "Really?!" ("smile", "base", "base", "R") + gen "Is that so?" ("grin", xpos="far_left", ypos="head") + gen "Care for a demonstration?" ("grin", xpos="far_left", ypos="head") + ast "" ("smile", "base", "base", "mid") + ton "Of course." ("base", "base", "base", "mid") + ton "I'm confident she'll be able to make me do {b}anything{/b} you want today." ("horny", "base", "base", "R", hair="horny") # Horny stare + gen "Counting on it!" ("grin", xpos="far_left", ypos="head") + ton "Make sure to give her some good suggestions, Professor!" ("open", "base", "angry", "mid") + gen "Absolutely!" ("grin", xpos="far_left", ypos="head") + ton "And Astoria..." ("open", "base", "raised", "L") + ton "Today we are going to try to push me to the limit." ("base", "base", "base", "L") + ton "You will have me do whatever Professor Dumbledore commands, without question!" ("soft", "wide", "annoyed", "L") + ast "I suppose..." ("annoyed", "base", "base", "down") + ton "We will only stop with today's training once I'm able to... resist, am I clear?" ("open", "closed", "base", "L") + ast "Okay, Professor..." ("annoyed", "base", "base", "R") + + ton "You may start now, Astoria..." ("base", "narrow", "base", "L") + call ast_chibi("wand",530,"base") + with d3 + ton "..................." ("base", "closed", "base", "mid") + call ast_chibi("wand_casting",530,"base") + with d3 + ast "..................." ("annoyed", "base", "base", "down") + ton "Astoria? Would you cast the curse - please?" ("open", "base", "base", "L") + ast "..................." ("clench", "base", "base", "down") + + # Astoria casts imperio. + stop music fadeout 2.0 + ast "Imperio...{w=0.8}{nw}" ("open", "closed", "base", "mid") + + call hide_characters + hide screen bld1 + with d3 + pause.2 + + # chibi spell animation. + call ast_chibi("wand_imperio",530,"base") + call play_sound("spell") + with hpunch + pause.8 + + call play_music("trance") + ast "" ("base", "base", "base", "L") + ton "*Hmm*............" ("soft", "base", "worried", "ahegao", hair="horny") + + gen "(Here we go!)" ("grin", xpos="far_left", ypos="head") + ast ".............." ("grin", "base", "base", "L") + call ast_chibi("wand",530,"base") + with d3 + ast "What should we start with, Professor?" ("open", "base", "worried", "mid") + gen "Let's just try the same things as last time..." ("base", xpos="far_left", ypos="head") + gen "Ask her to take that coat off first." ("base", xpos="far_left", ypos="head") + ast "Very well..." ("base", "base", "base", "mid") + ast "Professor, would you please take off your coat?" ("open", "base", "base", "L") + ton "*Hmm*... My coat?..." ("open", "base", "worried", "stare") + ton "..............." ("normal", "wide", "base", "stare") + ton "Sure {heart}" ("silly", "happyCl", "base", "mid") + + # Remove coat. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("robe") + ton "" ("base", "base", "base", "ahegao") + pause.8 + + ast "Yay!" ("smile", "narrow", "base", "mid") + ast "Her shirt was next, right?" ("base", "base", "angry", "mid") + gen "That is correct." ("base", xpos="far_left", ypos="head") + ast "Yes! Take off your shirt, Professor!" ("clench", "base", "angry", "L") # menacing + ton "*Ahhh*................" ("soft", "base", "base", "ahegao", cheeks="blush") + + # Remove top. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("top") + $ tonks.strip("bra") + ton "" ("base", "base", "base", "ahegao", cheeks="blush") + pause.8 + + ast "She did it!" ("smile", "base", "base", "mid", cheeks="blush") + gen "Well{w=0.5} {i}fucking{/i}{w=0.7} done!" ("grin", xpos="far_left", ypos="head") + gen "Next, I'd like you to--" ("base", xpos="far_left", ypos="head") + ast "Ask her to take off her trousers!" ("grin", "base", "angry", "L") + gen "Yes please!" ("grin", xpos="far_left", ypos="head") + ast "Professor, please take off your trousers..." ("open", "closed", "base", "mid") + ton "*hngh*..." ("mad", "closed", "base", "ahegao", cheeks="blush") + + # Remove bottom. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("bottom") + $ tonks.strip("panties") + ton "" ("base", "base", "worried", "ahegao") + pause.5 + ast "" ("annoyed", "narrow", "angry", "down") + pause.8 + ton "" ("horny", "wide", "shocked", "ahegao", cheeks="blush") + call ctc + + ast "Oh wow..." ("angry", "base", "base", "down") + ton "..................." ("horny", "base", "base", "ahegao", cheeks="blush") + ast "Professor, how can it be that you're not wearing any underwear?!" ("angry", "base", "worried", "down") # angry embarrassed + gen "Yes, Miss Tonks." ("base", xpos="far_left", ypos="head") + gen "Explain yourself!" ("grin", xpos="far_left", ypos="head") + ton "*Hmm*......." ("normal", "base", "worried", "stare", cheeks="blush") + ast "Answer us!" ("clench", "closed", "angry", "mid") + ton "I don't like to wear them..." ("open", "wide", "worried", "stare", hair="sad", cheeks="blush") + ast "Why?!" ("open", "narrow", "angry", "L") # angry + ton "I feel so much better without a bra on... or panties..." ("soft", "wide", "base", "stare", hair="horny") + ast "You're a teacher! This is disgusting!" ("clench", "closed", "angry", "mid", emote="angry") + gen "Dis-{w=0.8}gusting!" ("angry", xpos="far_left", ypos="head") + + with hpunch + ton "{heart} {heart} {heart}" ("soft", "happyCl", "worried", "ahegao", cheeks="blush") + ast "I can't believe my teacher is such a slut!" ("angry", "narrow", "angry", "L") + gen "Des-{w=0.8}picable!" ("angry", xpos="far_left", ypos="head") + ast "Are you a slut, Professor?" ("open", "narrow", "angry", "L") + ton "..............." ("normal", "shocked", "worried", "stare", cheeks="blush") # ahegao + ast "Are you?!" ("clench", "base", "angry", "L") + ton "I am! {heart}" ("soft", "base", "worried", "ahegao", hair="horny", cheeks="blush") + ast "I knew it!" ("smile", "narrow", "angry", "L") + ast "That's why she has such difficulty resisting our commands!" ("open", "base", "worried", "mid") + gen "Yes. She's clearly trying her hardest..." ("base", xpos="far_left", ypos="head") + + ton "" ("normal", "base", "shocked", "ahegao", hair="horny", cheeks="blush") + ast "Professor Dumbledore, you knew exactly what her weakness would be!" ("smile", "base", "base", "mid") + gen "I did?" ("base", xpos="far_left", ypos="head") + gen "*Ahem*... I mean, of course I did!" ("base", xpos="far_left", ypos="head") + ast "We're taking off her clothes, because that's what she enjoys! But could never do in school!" ("angry", "narrow", "angry", "L") + ast "Which makes it easier for me to channel the Imperius curse..." ("grin", "base", "angry", "mid") + ast "Because she's nothing but a weak-minded slut!" ("open", "narrow", "angry", "L") # angry + ton "................" ("soft", "narrow", "shocked", "ahegao", hair="horny", cheeks="blush") # ahegao + gen "You're on point!" ("base", xpos="far_left", ypos="head") + + ast "Take off the rest of your clothes!" ("clench", "base", "angry", "L") # angry + gen "Yes!" ("grin", xpos="far_left", ypos="head") + ast "Take them off, you slut!" ("scream", "closed", "angry", "mid", trans=hpunch) # scream + ton "........{heart}" ("normal", "wide", "shocked", "stare", cheeks="blush") + + # Strip naked. Removes clothes and stockings. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("all") + ton "" ("grin", "base", "base", "ahegao", hair="horny", cheeks="blush") + ast "(She did it...)" ("horny", "narrow", "angry", "L") + call ctc + + ast "Look, Professor!" ("smile", "narrow", "angry", "L") + ast "I got her to be completely naked!" ("smile", "base", "angry", "mid") + gen "Excellent work, [astoria_name]!" ("grin", xpos="far_left", ypos="head") + ast "Thank you, Sir!" ("smile", "closed", "base", "mid") + ton "............." ("silly", "happyCl", "base", "stare", cheeks="blush") + + #screenshake + with hpunch + call nar(">Tonks gives her tits a little sway...") + + gen "*Argh*! (I can't take it anymore!)" ("angry", xpos="far_left", ypos="head") + + gen "..." ("angry", xpos="far_left", ypos="head") + menu: + "-Start masturbating!-": + $ genie_masturbating = True + call hide_characters + hide screen bld1 + with d3 + pause.2 + + call gen_chibi("jerk_off_behind_desk") + with d5 + pause.8 + + show screen bld1 + call nar(">You take out your cock and start jacking off.") + + ton "" ("horny", "narrow", "raised", "L", cheeks="blush") + ast "What shall I have her do now?" ("open", "base", "base", "L") + "*fap-fap-fap*" + ton "" ("soft", "narrow", "shocked", "L", hair="horny", cheeks="blush") + ast "Professor?" ("annoyed", "narrow", "angry", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + gen "Oh..." ("base", xpos="far_left", ypos="head") + gen "Get her to climb my desk!" ("grin", xpos="far_left", ypos="head") + gen "Have her do a little dance for us." ("grin", xpos="far_left", ypos="head") + ast "Did you hear him, Professor?" ("smile", "closed", "base", "mid") + ast "Get on that desk, and start dancing!" ("open", "narrow", "angry", "L") + ton "Yes...{heart}" ("grin", "wink", "base", "mid", hair="horny") + + # Climb desk and dance. + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + + call play_sound("climb_desk") + pause 2 + + call nar(">After giving you a playful wink, Tonks suggestively climbs on top of your desk, getting a good glimpse of your rock-hard cock...") + pause 1 + + call ast_chibi("wand","desk","base") # Still in wand pose. + call ton_chibi("stand","on_desk","on_desk") + hide screen blkfade + with d5 + call ctc + + call bld + gen "This is getting better and better..." ("grin", xpos="far_left", ypos="head") + "*fap-fap-fap*" + ton "" ("horny", "base", "raised", "down", xpos="mid", ypos="base") + + ast "Move your hips!" ("open", "narrow", "base", "L") + call hide_characters + hide screen bld1 + with d3 + pause.1 + + # Tonks dances. + call ton_chibi("stand","on_desk","on_desk", flip=True) + with d3 + pause.8 + call ton_chibi("stand","on_desk","on_desk", flip=False) + with d3 + pause.5 + + ast "" ("horny", "base", "angry", "L") + ton "............" ("grin", "base", "base", "mid") + ast "She's really doing everything I tell her!" ("smile", "base", "angry", "mid") + ast "Look how easy it is, Professor!" ("smile", "closed", "base", "mid", emote="hearts",trans=hpunch) + + call nar(">Astoria joyfully jumps up and down on the spot, making a happy squeal...") + call hide_characters + hide screen bld1 + with d3 + pause.1 + + show screen astoria_wand_drop + call ast_chibi("reset","desk","base") # No wand pose. + pause.355 + $ renpy.play('sounds/wand_drop.ogg') + pause.5 + + show screen bld1 + call nar(">Unknowingly dropping her wand...") + + ton "" ("upset", "base", "base", "R") + gen "*Uhm*..." ("base", xpos="far_left", ypos="head") + ast "What's next, Professor?" ("smile", "narrow", "angry", "mid") + gen "Next?" ("base", xpos="far_left", ypos="head") + ast "Yes, just look at her... She's loving this!" ("clench", "narrow", "angry", "L") + ast "Can I walk her around school like this?" ("grin", "narrow", "worried", "L") + gen "What?" ("base", xpos="far_left", ypos="head") + gen "Are you serious?" ("base", xpos="far_left", ypos="head") + ast "Please!" ("upset", "base", "base", "mid") + ton ".............." ("soft", "base", "raised", "down") + gen "(That might be a good idea for another time...)" ("base", xpos="far_left", ypos="head") + gen "Not today, I'm afraid..." ("base", xpos="far_left", ypos="head") + ton "" ("annoyed", "closed", "base", "mid") + ast "*Aww*..." ("annoyed", "narrow", "base", "down") + gen "Don't worry, I have an even better idea!" ("grin", xpos="far_left", ypos="head") + gen "Could you ask her to get under my table?" ("grin", xpos="far_left", ypos="head") + ast "*Huh*?... To do what?" ("open", "base", "worried", "mid") + ton "To give him a blowjob..." ("open", "closed", "shocked", "mid") # Tonks answers for Genie + ast "Professor Tonks!{w} Are you serious?" ("scream", "base", "base", "L") # shocked + ast "Why would she want to do that? That's disgusting!!!" ("clench", "base", "worried", "mid") + gen "That-- *Uhm*..." ("base", xpos="far_left", ypos="head") + gen "That wasn't what I would have suggested, but..." ("base", xpos="far_left", ypos="head") + gen "I'm willing to give her a chance to try..." ("base", xpos="far_left", ypos="head") + gen "Try to resist that urge, I mean..." ("base", xpos="far_left", ypos="head") + ast "Are you sure it's okay...{w=0.4} I mean, As long as I don't have to look at it!" ("angry", "narrow", "base", "R") + ast "Professor Tonks, you can get under Professor Dumbledore's desk... and..." ("open", "closed", "base", "mid") + ast "Do \"that\" thing..." ("angry", "base", "worried", "R") + ast "..." ("horny", "base", "worried", "mid") + ton "............." ("base", "base", "shocked", "down", emote="hearts") + + call hide_characters + hide screen bld1 + with d3 + #show screen blkfade + #with d5 + pause.2 + + call play_sound("door") + pause.8 + + call sna_chibi("stand","door","base") + + hide screen blkfade + with d5 + + # Snape enters... + sna "Genie, I was wondering if you could help me with--" ("snape_35", ypos="head") + stop music fadeout 2.0 + call play_sound("scratch") + sna "!!!" ("snape_11", ypos="head") + hide screen bld1 + with d3 + pause.1 + call ton_chibi("stand","on_desk","on_desk", flip=True) + with d3 + pause.5 + + ton "Shit!" ("mad", "base", "angry", "L", hair="annoyed", xpos="left", flip=True) + hide tonks_main + hide screen bld1 + with d3 + pause.1 + call ast_chibi("stand","desk","base", flip=True) + with d3 + pause.5 + + ast "*Huh*?!" ("annoyed", "narrow", "worried", "L", xpos="mid", flip=True) + ast "*Aaaaaaaaaah!!!*......................." ("scream", "base", "base", "L", emote="shocked", trans=hpunch) # Screams + hide astoria_main + hide screen bld1 + with d3 + pause.1 + + call play_sound("running") + call ast_chibi("hide") + call teleport("astoria", effect=False) + call ast_chibi("stand",210,275+180, flip=True) # Next to Genie's chair. + hide screen bld1 + with d3 + pause.1 + + call gen_chibi("sit_behind_desk") + with d3 + pause.5 + + call bld + call nar(">You quickly put away your priorly liberated cock.") + gen "What's going on?" ("angry", xpos="far_left", ypos="head") + sna "Yes! I'd like to know that as well!" ("snape_43") + gen "Snape?!" ("angry", xpos="far_left", ypos="head") + if hg_strip.trigger == True: # Snape saw Hermione strip + gen "Damn it, not you again!" ("angry", xpos="far_left", ypos="head") + gen "(You walking cock-block!)" ("angry", xpos="far_left", ypos="head") + + else: + gen "Damn it, what are you doing here?" ("angry", xpos="far_left", ypos="head") + + call sna_walk(620,"base") + pause.2 + + call play_music("snape") + sna "What on Earth is going on here?!" ("snape_08", xpos=580 ,ypos="base") + sna "You two better explain to me what I just witnessed!" ("snape_32") + ton "Stop being such a wuss, Severus!" ("mad", "base", "angry", "L", hair="angry", xpos="mid", flip=True) + ton "We were just practising some spells with Miss Greengrass." ("annoyed", "base", "base", "R", hair="upset") + sna "And that required you to be undressed? In front of a student?" ("snape_10") + ton "Well... she was the cause of it..." ("clench", "base", "base", "down", cheeks="blush") + sna "Caused you to strip?" ("snape_34") + sna "Which spells are you teaching that girl?!" ("snape_25") + sna "Don't tell me you--" ("snape_36") # Shocked + ton "The Imperius Curse." ("soft", "closed", "base", "mid", cheeks="blush") + sna "I can't believe you two..." ("snape_08") + ast "Am I in trouble now, Professor?" ("annoyed", "base", "base", "L", xpos=10) # Asking Snape + sna "Keep quiet, girl!" ("snape_34") + sna "............" ("snape_04") # Snape sees the wand. + + sna "Is that your wand lying on the ground there?" ("snape_03") + ast "My wand?" ("annoyed", "base", "base", "down") + ast "Oh no, I must have dropped it when you came in, Sir." ("clench", "closed", "worried", "mid") + sna "Well, pick it back up!" ("snape_32") + sna "A Slytherin takes better care of her equipment..." ("snape_10") + ast "Yes. I'm sorry, Professor." ("clench", "closed", "angry", "mid", emote="sweat") + + call ast_walk(path=[(270, 290+180), (370,290+180), ("desk","base")]) + call ast_chibi("stand","desk","base", flip=False) + with d3 + pause.1 + call play_sound("lock") + hide screen astoria_wand_drop + pause.5 + + sna "You may leave, Astoria." ("snape_09", ypos="head") + ast "..." ("clench", "base", "base", "down", ypos="head", flip=True) + sna "Miss Greengrass..." ("snape_04") + ast "Yes sir." ("annoyed", "base", "base", "down") + + #astoria leaves + $ snape_chibi.zorder = 3 + $ astoria_chibi.zorder = 2 + + call sna_chibi("stand",620,"base") # Updates Zorder. + call ast_walk(action="leave") + + $ snape_chibi.zorder = 2 # Reset to default. + + # Tonks hops off your desk and walks closer to Snape. + call play_sound("climb_desk") + show screen blkfade + with d5 + pause 1 + + call ton_chibi("stand","desk","base", flip=True) + hide screen blkfade + with d5 + pause.5 + + call ton_walk(550,"base") + pause.8 + + ton "" ("annoyed", "base", "annoyed", "L", xpos=275, ypos="base", flip=True) + sna "........................." ("snape_05", xpos=580 ,ypos="base") + + call play_music("tonks") + ton "Like what you see?" ("upset", "base", "raised", "L", hair="horny") # Bit flirty, maybe just to calm Snape down. + sna "............................." ("snape_12") # blushing + gen "You couldn't have picked a worse time to burst in here..." ("angry", xpos="far_left", ypos="head") + sna "I can imagine that..." ("snape_18") + + sna "So, Nymphadora..." ("snape_04") + ton "*Tzzzzs*!......" ("annoyed", "closed", "annoyed", "mid", hair="angry") + sna "Would you mind explaining to me why you were naked in the headmaster's office - with a student present?" ("snape_03") + sna "One of my students - at that." ("snape_10") + ton "Are you jealous?" ("soft", "narrow", "base", "L", hair="horny") + sna "............" ("snape_14") + + sna "The question..." ("snape_18") + ton "It's this Astoria girl..." ("soft", "base", "annoyed", "R", cheeks="blush") + ton "There's something wrong with her..." ("open", "narrow", "base", "down") + ton "She's cursed you see!" ("open", "wide", "worried", "L") + ton "A blood curse... very unfortunate." ("mad", "base", "worried", "down") + sna "A blood curse you say?" ("snape_09") #incredulous + sna "Now that sounds serious..." ("snape_05") + ton "Yes, very serious!" ("clench", "wide", "worried", "down") + ton "Been in her family for generations even." ("disgust", "wide", "base", "mid") + sna "And what are the effects of this \"Blood curse\" exactly?" ("snape_04") + ton "Well... I believe that this curse has rendered her practically asexual!" ("clench", "base", "worried", "L") + sna "What nonsense..." ("snape_07") + gen "........................." ("base", xpos="far_left", ypos="head") + ton "How dare you!" ("mad", "closed", "angry", "L") + ton "I can recognise someone that's under a curse!" ("open", "narrow", "angry", "down") + ton "I've been an auror for three years now, I'll have you know!" ("mad", "base", "angry", "R") + sna "Working at that precious ministry of yours has really rubbed off on you, hasn't it?" ("snape_02") + gen "That's enough, Severus." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_35") + gen "What business is conducted in this office is none of your concern." ("base", xpos="far_left", ypos="head") + gen "You're excused..." ("base", xpos="far_left", ypos="head") + sna ".................." ("snape_04") + sna "Very well..." ("snape_03") + sna "Genie...{w} Nymphadora..." ("snape_09") + ton ".................." ("mad", "base", "angry", "L", hair="angry") # Angry stare + + #Snape leaves + call sna_walk(action="leave") + + call ton_chibi("stand","mid","base", flip=False) + with d3 + pause.2 + call ton_walk("desk","base") + pause.5 + + ton "Thank you..." ("normal", "base", "worried", "mid", hair="neutral", xpos="mid", ypos="base", flip=False) + gen "..." ("base", xpos="far_left", ypos="head") + gen "Now..." ("base", xpos="far_left", ypos="head") + + menu: + "-Prompt her to be honest with herself-": + call bld + gen "I think it's time for some honesty." ("base", xpos="far_left", ypos="head") + ton "Regarding?" ("soft", "base", "shocked", "downR") + gen "Everything that we've been doing with the Astoria girl." ("base", xpos="far_left", ypos="head") + ton "Oh..." ("upset", "base", "worried", "down") + ton "Well, we've been helping her haven't we?" ("open", "base", "shocked", "down", cheeks="blush") + ton "She's such an uptight and oppressed cute little...{w=0.4} girl." ("upset", "closed", "raised", "down", cheeks="blush") + ton "..." ("mad", "narrow", "base", "downR", cheeks="blush") + ton "How can I not help her, even if she's a Slytherin." ("upset", "closed", "base", "mid", cheeks="blush") + gen "[tonks_name]... You aren't convincing anyone." ("base", xpos="far_left", ypos="head") + ton "To think such an innocent girl could be the victim of such an--" ("open", "closed", "base", "down", cheeks="blush") + gen "Tonks!" ("base", xpos="far_left", ypos="head") + ton "Alright..." ("annoyed", "base", "annoyed", "down") #exasperated + ton "The blood curse may have been a little white lie on my part." ("annoyed", "narrow", "base", "down") + gen "And?" ("base", xpos="far_left", ypos="head") + ton "And the imperio training with Astoria may have been for my own benefit." ("soft", "narrow", "annoyed", "downR") + gen "..." ("base", xpos="far_left", ypos="head") + ton "Having her cast it on me was exclusively for my own personal enjoyment." ("annoyed", "base", "base", "down", cheeks="blush") + gen "(What a surprise...)" ("base", xpos="far_left", ypos="head") + gen "Why weren't you honest with me?" ("base", xpos="far_left", ypos="head") + ton "*Sigh*..." ("open", "narrow", "base", "R") + ton "Perhaps I've been taking this favour business... thing a bit too lightly." ("open", "narrow", "raised", "down", cheeks="blush") + ton "I've been telling myself that it's as much for the students benefit as it is my own." ("upset", "closed", "worried", "mid") + ton "\"I'll help them explore their sexuality.\"" ("annoyed", "closed", "base", "mid") + ton "\"It'll do them good.\"" ("annoyed", "closed", "base", "mid") + gen "We both know that is not the reason why we're doing this." ("base", xpos="far_left", ypos="head") + ton "Yes..." ("upset", "base", "base", "down") + ton "A small voice in my head knows it..." ("annoyed", "base", "base", "mid") + ton "And I can't help that I'm just so god...{w=0.4} damn...{w=0.3} horny!" ("open_wide", "closed", "angry", "mid", hair="angry") + ton "All the bloody time!" ("open_wide_tongue", "base", "base", "ahegao", hair="horny") + ton "See!" ("annoyed", "base", "annoyed", "up", hair="horny") + call nar(">You notice the bright pink colour of her hair - once again...") + gen "You should stop lying to yourself, it's not healthy..." ("base", xpos="far_left", ypos="head") + gen "I'm immortal - and even I know that!" ("base", xpos="far_left", ypos="head") + gen "Embrace why you chose to be a part of this, you've got a pretty good gig here." ("base", xpos="far_left", ypos="head") + ton "Yes, you're right." ("soft", "narrow", "base", "L") + gen "You're doing this for yourself, it's okay to be selfish." ("base", xpos="far_left", ypos="head") + gen "Think about how much you've endured at that ministry." ("angry", xpos="far_left", ypos="head") + ton "..." ("upset", "closed", "annoyed", "ahegao") + gen "Think of it as your reward! The students should be happy to have such a loving teacher as you." ("grin", xpos="far_left", ypos="head") + ton "Thank you... sir." ("soft", "closed", "base", "mid") + + "-Call her out on her bullshit-": + call bld + gen "I think there's someone who hasn't been very honest here..." ("base", xpos="far_left", ypos="head") + ton "Sorry?" ("upset", "base", "worried", "mid") + + #Music changes and darker overlay on screen + call play_music("playful_tension") + show screen blktone + with d3 + + gen "You seem to think you're above what we're doing here." ("base", xpos="far_left", ypos="head") + gen "That you're doing the students a favour rather than accepting it's for your benefit." ("base", xpos="far_left", ypos="head") + gen "Do you know what I think?" ("base", xpos="far_left", ypos="head") + ton "N-no..." ("upset", "wide", "worried", "R") + gen "I think that you've been fabricating this curse, to get what you really wanted - all along." ("base", xpos="far_left", ypos="head") + gen "Not for the good of Miss Greengrass..." ("base", xpos="far_left", ypos="head") + ton "..." ("mad", "base", "worried", "R", hair="upset") + gen "Someone's been a naughty girl... Acting all innocent with the ones that welcomed her into their scheme..." ("angry", xpos="far_left", ypos="head") + gen "Or perhaps you've been trying to justify your actions... to yourself?" ("base", xpos="far_left", ypos="head") + gen "Is that right?" ("base", xpos="far_left", ypos="head") + ton "That's..." ("upset", "closed", "worried", "mid", hair="scared") + gen "I think we both know what this means, don't we?" ("base", xpos="far_left", ypos="head") + gen "Miss Tonks..." ("base", xpos="far_left", ypos="head") + gen "What this means is that you're no different than Snape and I." ("base", xpos="far_left", ypos="head") + gen "But you have yet to accept it..." ("base", xpos="far_left", ypos="head") + gen "And if you're unable to, well in that case..." ("base", xpos="far_left", ypos="head") + ton "I can! I have!" ("open_wide", "closed", "worried", "mid") + gen "Are you sure? Because if you're not in on this one hundred percent. Perhaps this may have been a mistake." ("base", xpos="far_left", ypos="head") + ton "I..." ("open", "base", "worried", "down") + gen "Say it!" ("angry", xpos="far_left", ypos="head") + + $ menu_y = 0.7 + menu: + "\"You're a selfish slut!\"": + ton "Yes!" ("mad", "wide", "shocked", "stare", hair="horny") + ton "I'm a selfish slut!" ("open_wide_tongue", "closed", "worried", "mid", hair="horny") + "\"You're a filthy pervert!\"": + ton "Yes!" ("mad", "base", "worried", "mid", hair="horny") + ton "I'm a filthy,{w=0.6} {b}fucking{/b}{w=0.4} pervert!" ("open_wide_tongue", "closed", "worried", "mid", hair="horny") + "\"You're nothing more than a whore!\"": + ton "Yes!" ("mad", "base", "worried", "mid", hair="horny") + ton "I'm nothing but a cheap,{w=0.6} {b}fucking{/b}{w=0.4} whore!" ("open_wide_tongue", "closed", "worried", "mid", hair="horny") + call reset_menu_position + + ton "... {w}This is what I want!" ("mad", "wide", "annoyed", "down") + gen "Good, you're doing this for yourself, and nobody else..." ("base", xpos="far_left", ypos="head") + gen "You'd do good to remember that." ("base", xpos="far_left", ypos="head") + ton "Yes, Sir." ("base", "happyCl", "shocked", "mid", cheeks="blush") + + #Overlay goes away and music returns to normal + call play_music("tonks") + hide screen blktone + with d3 + + ton "So... *Ehm*... How long did you know?" ("open", "narrow", "annoyed", "R") + gen "From the very start." ("base", xpos="far_left", ypos="head") + ton "Really?!" ("clench", "base", "base", "mid") + gen "Yes... The way she was looking at you just now merely confirmed it..." ("base", xpos="far_left", ypos="head") + ton "Was it that obvious..." ("annoyed", "narrow", "base", "down") + gen "Now, with that out of the way..." ("base", xpos="far_left", ypos="head") + gen "Are you ready to take this to the next step?" ("base", xpos="far_left", ypos="head") + gen "Have you considered letting miss Greengrass cast the curse on a more susceptible target?" ("base", xpos="far_left", ypos="head") + ton "..." ("annoyed", "wide", "base", "R") + gen "Miss Tonks..." ("base", xpos="far_left", ypos="head") + ton "Fine, let's do it!" ("mad", "closed", "annoyed", "down") + gen "Good." ("grin", xpos="far_left", ypos="head") + gen "Do you have a student in mind... Someone with similar... Inhibitions, perhaps?" ("base", xpos="far_left", ypos="head") + gen "That Susan girl... How about her?" ("grin", xpos="far_left", ypos="head") + + ton "Susan Bones?" ("open", "wide", "shocked", "stare") + ton "But, she's a Hufflepuff...{w=0.8} I used to be..." ("open", "base", "worried", "up", hair="sad") # Tonks looks concerned (Blue) + gen "I don't see how that makes any difference..." ("base", xpos="far_left", ypos="head") + gen "Remember why we're doing this, you want Miss Greengrass to be able to curse you properly, correct?" ("base", xpos="far_left", ypos="head") + ton "Yes..." ("soft", "base", "worried", "downR", cheeks="blush") + gen "This Susan girl sounds like the perfect target then." ("base", xpos="far_left", ypos="head") + gen "Maybe we could even hit two birds with one stone." ("base", xpos="far_left", ypos="head") + ton "*Huh*?" ("soft", "base", "worried", "mid", cheeks="blush") + gen "Perhaps I could learn a thing or two about this Susan girl is what I meant..." ("base", xpos="far_left", ypos="head") + ton "Right." ("open", "base", "worried", "mid", cheeks="blush") + gen "Any objections?" ("base", xpos="far_left", ypos="head") + ton "No sir..." ("open", "base", "base", "down", hair="neutral", cheeks="blush") + gen "But for now... Just make sure to obliterate her afterwards." ("base", xpos="far_left", ypos="head") + ton "Erase her memory?" ("open", "base", "base", "mid") + gen "That's what I said." ("base", xpos="far_left", ypos="head") + gen "Well then, I believe we're done here..." ("base", xpos="far_left", ypos="head") + ton "Alright..." ("annoyed", "base", "base", "down") + ton "I'm gonna need some \"me\" time now..." ("open", "closed", "base", "ahegao", hair="horny") + ton "If you know what I mean..." ("grin", "narrow", "raised", "down", hair="horny") + ton "I suppose I should wish you good luck with the training..." ("soft", "base", "shocked", "L") + gen "Have a good night." ("grin", xpos="far_left", ypos="head") + ton "Oh - I will, [ton_genie_name]!" ("base", "base", "raised", "R") + ton "I sure will!" ("horny", "base", "raised", "downR") + + call ton_walk(action="leave") + + call bld + gen "..." ("base", xpos="far_left", ypos="head") + gen "Snape..." ("base", xpos="far_left", ypos="head") + gen "That guy deprived me of a blowjob..." ("base", xpos="far_left", ypos="head") + gen "He owes me one!" ("angry", xpos="far_left", ypos="head") + + call nar(">Astoria has \"mastered\" the imperio curse!") + + $ snape_busy = True + $ tonks_busy = True + $ astoria_busy = True + + $ tonks.wear("all") # Wear all stripped clothing + + # Increase affection once (this is the fifth event) + if ag_st_imperio.counter == 5: + $ ast_whoring += 1 + + jump end_ag_st_imperio + +# astoria wand drop animation screen +screen astoria_wand_drop(): + tag wand + zorder 2 + + add "characters/astoria/chibis/wand.webp": + at transform: + zoom 0.35 + rotate -25 + xanchor 0 + yoffset -60 + xpos 530-90 + ypos 400 + + easeout_cubic 0.5 yoffset 0 rotate 0 + linear 0.15 rotate 5 yoffset -5 + linear 0.15 rotate 10 yoffset 10 + linear 0.15 rotate 15 yoffset 5 + linear 0.15 rotate 25 yoffset 15 diff --git a/game/scripts/characters/astoria/events/intro.rpy b/game/scripts/characters/astoria/events/intro.rpy new file mode 100644 index 00000000..7009e293 --- /dev/null +++ b/game/scripts/characters/astoria/events/intro.rpy @@ -0,0 +1,1094 @@ + + +### Astoria Intro ### + +### Event 1 ### +# Tonks tells you about a student that has used the Imperius curse at school. +# You need to ask Snape and Hermione to help find the student. + +label astoria_intro_E1: + if "poster_1_store" not in tonks_mail_list: + $ tonks_mail_list.append("poster_1_store") + + stop music fadeout 1.0 + call play_sound("knocking") + "*knock-knock-knock*" + + ton "[ton_genie_name], may I come in?" + ton "We have to talk about some recent events that happened..." + ton "It's quite urgent..." + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"Yes, come in!\"": + ton "Thank you..." + + "\"Not now!\"": + ton "I'm sorry Sir, but I'm afraid this can't wait." + ton "I'm coming in..." + + # Tonks walks in. + call ton_walk(action="enter", xpos="desk", ypos="base") + + call play_music("tonks") + ton "Good evening, [ton_genie_name]." ("base", "base", "base", "mid", xpos="mid", ypos="base") + gen "[tonks_name]..." ("base", xpos="far_left", ypos="head") + ton "I'm terribly sorry for bursting in like this!" ("open", "base", "raised", "R") + gen "What in the world got you so flustered?" ("base", xpos="far_left", ypos="head") + ton "We might be in big trouble, [ton_genie_name]!" ("open", "base", "worried", "mid") + + call play_music("playful_tension") + g9 "Miss Tonks... Have you been a bad girl?" + ton "I'm not joking, [ton_genie_name]!" ("soft", "base", "annoyed", "mid") + ton "Something terrible has happened at school today!" ("open", "closed", "annoyed", "R") + ton "I believe one of our students has conducted some highly illegal activities against another student!" ("normal", "base", "annoyed", "downR") + ton "We have to take action!{w=0.6} The last thing we need is for this to reach the Ministry's attention!" ("open", "base", "angry", "mid") + gen "So? Isn't it your task to cover up that sort of stuff?" ("base", xpos="far_left", ypos="head") + ton "Yes, but..." ("upset", "base", "worried", "down") + ton "Please, [ton_genie_name]! I can't cover this up all on my own!" ("open", "base", "worried", "mid") + ton "I require your help..." ("upset", "base", "worried", "mid") + gen "My help, you say?" ("base", xpos="far_left", ypos="head") + ton "Yes..." ("base", "base", "worried", "down") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"How exactly can I help you?\"": + pass + + "\"I'm busy right now...\"": + ton "Busy with what exactly?" ("open", "base", "raised", "mid") + gen "...................." ("base", xpos="far_left", ypos="head") + ton "[ton_genie_name]?" ("mad", "base", "angry", "mid") + gen "Please give me a minute... I'm still thinking..." ("base", xpos="far_left", ypos="head") + ton "We don't have time for this!" ("normal", "base", "angry", "mid") + gen "I have all the time in the world, darling..." ("base", xpos="far_left", ypos="head") + gen "I'm immortal..." ("base", xpos="far_left", ypos="head") + ton "Could you please just listen to me?" ("mad", "closed", "angry", "mid") + + "\"What's in it for me?\"": + ton "Are you seriously asking me that?" ("clench", "shocked", "shocked", "stare") + ton "If this doesn't get dealt with immediately they'll have us both locked up in a cell in Azkaban, do you hear me?!" ("mad", "base", "angry", "mid") + gen "Loud and clear..." ("base", xpos="far_left", ypos="head") + gen "I'll be locked up in a cell - together with you..." ("base", xpos="far_left", ypos="head") + g9 "I can think of many fates worse than that, if I'm honest." + ton "Weren't you so scared of that very thing before?" ("open", "base", "raised", "mid") + g9 "Not when I'm accompanied by someone as lovely as you!" + ton "................" ("annoyed", "base", "annoyed", "R") + ton "You are clearly insane!" ("open", "base", "angry", "mid") # Annoyed + ton "Fine... Tell me what you want so we can continue..." ("upset", "base", "base", "mid") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + $ d_flag_01 = False + + label astoria_intro_E1_choices: + + menu: + gen "How about you..." ("base", xpos="far_left", ypos="head") + "\"Pull on my finger...\"" if d_flag_01 == False: + $ d_flag_01 = True + ton "I'm sorry?" ("open", "base", "raised", "mid") + g9 "Come on. It's an old trick we Genies like to do!" + gen "It's harmless, I swear..." ("base", xpos="far_left", ypos="head") + ton "............." ("upset", "base", "angry", "R") + ton "Very well..." ("open", "closed", "base", "mid") + pause.2 + + # Tonks walks over. + call hide_characters + hide screen bld1 + show screen blkfade + with d3 + + # Genie and Tonks stand behind the desk. + $ genie_chibi.zorder = 1 + $ tonks_chibi.zorder = 1 + call ton_chibi("stand", 280, 470) + call gen_chibi("stand", 180, 470) + hide screen blkfade + with fade + pause.8 + + call bld + g9 "Now pull it." + ton ".................................." ("disgust", "base", "annoyed", "down", xpos="far_right", ypos="head") + gen "Try a bit harder..." ("base", xpos="far_left", ypos="head") + ton ".............................................." ("normal", "base", "angry", "down") + call bld("hide") + pause.2 + with hpunch + pause.5 + + call bld + g4 "Why isn't this working?!" + gen "(Oh, that's right...)" ("base", xpos="far_left", ypos="head") + gen "(I forgot we Genies are unable to fart...)" ("base", xpos="far_left", ypos="head") + ton "Are we done here?" ("open", "closed", "base", "mid") + gen "Want to give it one more try?" ("base", xpos="far_left", ypos="head") + ton "I think not..." ("open", "base", "annoyed", "R") + ton "I expected a bit more from a Genie... A magic trick, perhaps?" ("upset", "base", "annoyed", "down") + gen "I've told you, I can't do magic anymore..." ("base", xpos="far_left", ypos="head") + ton "How very disappointing..." ("open", "closed", "base", "mid") + ton "I'm starting to have my doubts that you ever were a Genie..." ("mad", "base", "base", "R") + gen "Sorry about that..." ("base", xpos="far_left", ypos="head") + gen "Can I ask you for something else?" ("base", xpos="far_left", ypos="head") + ton "Still? Even after disappointing me like this?" ("upset", "base", "annoyed", "mid") + gen "Please?" ("base", xpos="far_left", ypos="head") + ton "*Ugh*... Fine..." ("upset", "narrow", "annoyed", "R") + show screen blkfade + hide screen bld1 + with d3 + + $ genie_chibi.zorder = 2 # Default + $ tonks_chibi.zorder = 3 # Default + call gen_chibi("sit_behind_desk") + call ton_chibi("stand","desk","base") + + hide screen blkfade + ton "" ("upset", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + jump astoria_intro_E1_choices + + #"\"Blow me!\"": + # ton "Blow you? With my mouth?" ("base", "base", "base", "mid") + # gen "Yes, please." ("base", xpos="far_left", ypos="head") + # ton "On your dick, I imagine?" ("base", "base", "base", "mid") + # g9 "Yes, if you would..." + # ton "Very well..." ("base", "base", "base", "mid") + # ton "Get it out for me, would you..." ("base", "base", "base", "mid") # Naughty look + # g9 "!!!" + # Tonks walks over. + # Blkfade. + # Genie and Tonks stand behind the desk. + # Genie has his dick in hand, jerking off. + + # call nar(">To your surprise, Tonks \"blows\" a gust of wind over \"your cock\"...") + # ton "There, all done." ("base", "base", "base", "mid") + # gen ".............." ("base", xpos="far_left", ypos="head") + # ton "What? I did what you asked for... I blew your cock..." ("base", "base", "base", "mid") + # gen "......................" ("base", xpos="far_left", ypos="head") + # ton "Now, could we get back to discuss what I came here for in the first place?" ("base", "base", "base", "mid") + # gen "Fine. I know when I'm outwitted..." ("base", xpos="far_left", ypos="head") + # ton "I will suck your delicious cock some other time, [ton_genie_name]... I promise!" ("base", "base", "base", "mid") + # ton "But right now we simply don't have time to fool around I'm afraid..." ("base", "base", "base", "mid") + + "\"Send Nudes.\"": + ton "Nudes, [ton_genie_name]?" ("annoyed", "base", "raised", "mid") + g9 "Yes! Send me some nude pictures of yourself!" + g9 "A poster, maybe?" + ton "Oh..." ("upset", "base", "base", "down") + ton "A poster, you say?..." ("horny", "base", "base", "mid") + ton "What are you gonna do with it? Put it on your wall and jerk off to it?" ("horny", "base", "angry", "mid") + g9 "You can count on that!" + ton "Hold on!{w} Are you going to hang it up here? In your office?!" ("open", "wide", "shocked", "stare") + gen "Sure... It's not like there are that many other rooms I can go to..." ("base", xpos="far_left", ypos="head") + ton "Oh my... I'll have to put a concealment charm on it then..." ("upset", "base", "worried", "R", hair="horny") + gen "A what charm?" ("base", xpos="far_left", ypos="head") + ton "(Only you will be able to see it's true form, everyone else...)" ("open", "base", "base", "mid") + ton "(Well they'll just see some dull landscape or another...)" ("normal", "base", "base", "downR") + gen "So, I've got this wart on my--" ("base", xpos="far_left", ypos="head") + ton "I shall send you an owl with it tomorrow morning, [ton_genie_name]." ("base", "base", "base", "mid") + g9 "Sweet!" + ton "Now, here is what I'll require your help with..." ("open", "closed", "base", "mid") + + if "poster_1_gift" not in tonks_mail_list: + $ tonks_mail_list.append("poster_1_gift") + $ tonks_mail_list.remove("poster_1_store") + + ton "This girl I've told you about, Susan Bones?" ("soft", "base", "shocked", "mid") + ton "The one with--" ("base", "base", "base", "R") + g9 "With the giant tits!" + ton "... The one with the unfortunate luck of being a constant target of bullying and harassment!" ("mad", "closed", "base", "mid") # Annoyed + gen "Yes, that too..." ("base", xpos="far_left", ypos="head") + ton "That poor girl! She cried the entire time when she told me about what happened..." ("open", "base", "worried", "down") + ton "I can't believe she got hit by a curse!" ("mad", "base", "angry", "down") # Angry + gen "At least she isn't dead..." ("base", xpos="far_left", ypos="head") + ton "No, of course not!" ("open", "base", "angry", "mid") + m "Or Injured?" + ton "Thankfully not..." ("upset", "base", "base", "R") + gen "And nobody tried to shrink her tits?" ("base", xpos="far_left", ypos="head") + ton "Don't be silly..." ("open", "closed", "base", "mid") + gen "Then what are you concerned about exactly?" ("base", xpos="far_left", ypos="head") + + ton "This is something quite serious!" ("mad", "base", "worried", "mid") + ton "If we don't find the culprit of this, and find them quickly, the Ministry will be on our toes by tomorrow!" ("open", "base", "angry", "mid") + gen "That bad, *huh*?" ("base", xpos="far_left", ypos="head") + ton "Yes, I'm afraid..." ("upset", "base", "worried", "down") + ton "She was the target of an \"unforgivable curse\"!" ("open", "base", "worried", "mid") + gen "A curse?..." ("base", xpos="far_left", ypos="head") + gen "Like...{w=0.5} The c-word?" ("base", xpos="far_left", ypos="head") + ton "No! A magical curse!{w} not an insult..." ("mad", "closed", "annoyed", "mid") + ton "Those curses are a major transgression of Ministry laws!" ("open", "base", "angry", "mid") + ton "If you are caught having cast even one of them they will put you in Azkaban for the rest of your life!" ("open", "shocked", "worried", "mid") + ton "Sharing a room with a whole bunch of Dementors!" ("upset", "base", "angry", "mid") + gen "Dement-{w=0.6}ors?" ("base", xpos="far_left", ypos="head") + gen "Is it like a nursing home or something?" ("base", xpos="far_left", ypos="head") + ton "No, I've told you before!" ("mad", "closed", "angry", "mid") + ton "Azkaban is a prison! With Dementors roaming all over it..." ("open", "narrow", "annoyed", "mid") + ton "Believe me, you wouldn't want to be around them, I tell you that much..." ("open", "base", "angry", "R") + gen "(Does she hate old people as well now?)" ("base", xpos="far_left", ypos="head") + + ton "Should the Ministry find out about what happened to... Miss Bones." ("upset", "shocked", "worried", "R") + g9 "*He-he-he!*..." + ton "Which they most certainly will, as her aunt is head of the Ministry's department for \"Magical Law Enforcement\"..." ("open", "closed", "worried", "down") + ton "Our whole operation would be busted! And we'd get locked up once and for all!" ("upset", "base", "worried", "mid") + + gen "So, are we in trouble?" ("base", xpos="far_left", ypos="head") + ton "Not yet..." ("open", "closed", "worried", "mid") + ton "Luckily I was able to erase Susan's memory of the ordeal with the obliviate spell." ("mad", "base", "worried", "downR") + gen "You can do that? Neat..." ("base", xpos="far_left", ypos="head") + ton "But, if this should happen to her again, I doubt there is much I could do to prevent her from telling her aunt right away..." ("open", "base", "worried", "R") + gen "So what do you suggest we do?" ("base", xpos="far_left", ypos="head") + ton "Find the student who cursed her, and then talk some sense into her so that she never does it again..." ("open", "closed", "base", "mid") + gen "Find{w=0.2}.{w=0.2}.{w=0.2}.{w=0.8} her?" ("base", xpos="far_left", ypos="head") + ton "Yes! She heard a girl's voice in her head - while she was under the influence of the imperius curse..." ("open", "base", "angry", "mid") + ton "Who told her{w=0.2}.{w=0.2}.{w=0.2}.{w=0.8} to lift up her top." ("upset", "base", "worried", "R") + g9 "Oh yes?" + ton "The imperius curse can make people do {b}unspeakable things{/b}!" ("open", "closed", "angry", "mid") + ton "I have no doubt that someone as sweet and good-hearted as Susan wouldn't know how to defend herself against it..." ("open", "base", "worried", "mid") + ton "So... She showed her breasts to a bunch of other students...{w=1.4} unfortunately..." ("upset", "base", "worried", "R") + g9 "I wish I could have been there to stop it!" + ton "Of course you do..." ("open", "closed", "base", "mid") + ton "That's sadly all the information I can share..." ("annoyed", "base", "annoyed", "down") + ton "Nobody there saw who might have cursed her..." ("open", "base", "worried", "mid") + + gen "Should we get some help finding her?" # "her" ("base", xpos="far_left", ypos="head") because they know it's a girl + ton "*Hmmm*... Good idea." ("normal", "base", "base", "R") + gen "Shall I ask Snape? Maybe even Miss Granger?" ("base", xpos="far_left", ypos="head") + ton "Yes. Professor Snape might prove himself useful for once..." ("open", "base", "base", "down") + ton "I don't know about Granger... She'd need to keep quiet at all costs!" ("normal", "base", "raised", "down") + ton "The Ministry can't know about this!" ("open", "base", "angry", "mid") + gen "Yes. Yes..." ("base", xpos="far_left", ypos="head") + ton "Well, I should get going... there are a couple of students I'd like to question." ("open", "base", "worried", "R") + gen "Good luck, then." ("base", xpos="far_left", ypos="head") + ton "Talk to you soon, [ton_genie_name]." ("normal", "base", "base", "mid") + + # Tonks leaves. + call ton_walk(action="leave") + + call bld + gen "I should definitely get Snape on this..." ("base", xpos="far_left", ypos="head") + gen "And Granger..." ("base", xpos="far_left", ypos="head") + g9 "Or I could jerk off instead!" # Achievement if you do, maybe? + g9 "Yes that seems like a good idea right now!" + + # TODO: Add hidden achievement called "Follow the script!" and unlock it if you jerk off after this scene. Maybe add some Susan smut writing for the jerk-off session? + + $ tonks_busy = True + $ astoria_intro.E1_complete = True + + call music_block + jump main_room_menu + + +### Event 2 - Hermione ### +# You ask Hermione to find the student. + +label astoria_intro_E2_hermione: + gen "I require your help with something." ("base", xpos="far_left", ypos="head") + gen "Miss Tonks came by earlier and informed me about a student making a ruckus." ("base", xpos="far_left", ypos="head") + gen "I-- *Uhm*...{w} She thought maybe you could be of help finding her?" ("base", xpos="far_left", ypos="head") + her "Of course, Sir." ("base", "happyCl", "base", "mid") + gen "Apparently a student got hit by an \"unforgivable curse\" here at the school." ("base", xpos="far_left", ypos="head") + her "AN unforgivable CURSE!!!" ("scream", "wide", "base", "stare", trans=hpunch) + her "AT our school?!" ("shock", "wide", "base", "mid") + her "SOMEONE COULD BE DEAD!" ("scream", "wide", "base", "R") + her "OR TORTURED!!" ("disgust", "happyCl", "worried", "mid") + her "OR WORSE!!!" ("angry", "squint", "worried", "mid") + her "Exp--" ("disgust", "base", "worried", "stare") + gen "Expelled?" ("base", xpos="far_left", ypos="head") + her "Exploited!" ("angry", "squint", "worried", "mid") + gen "really?" ("base", xpos="far_left", ypos="head") + her "Those are the only things that can happen with an unforgivable curse, [genie_name]!" ("open", "base", "worried", "mid") + gen "Of course... I'm just making sure you were aware of them..." ("base", xpos="far_left", ypos="head") + gen "So, how does it work exactly?" ("base", xpos="far_left", ypos="head") + her "You're asking me?" ("open", "base", "base", "mid") + gen "Yes... I need to make sure you've done your studies." ("base", xpos="far_left", ypos="head") + her "Sir, It's one of the first lessons we ever received in defence against the dark arts." ("open", "closed", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + her "*Sigh*... The curse lowers the targets inhibitions, making them more prone to follow the command depending on the skill of the user casting it or their own mental resolve not to abide by the command." ("open", "closed", "base", "mid") + gen "You could've just said it's like a suggestion spell." ("base", xpos="far_left", ypos="head") + her "Sorry?" + gen "Never played D&D?" ("base", xpos="far_left", ypos="head") + her "..." + gen "(And here I thought she was a nerd...)" ("base", xpos="far_left", ypos="head") + gen "In any case... One's been cast somewhere in the school." ("base", xpos="far_left", ypos="head") + gen "And I need your help finding out who did it..." ("base", xpos="far_left", ypos="head") + her "Why do you need my help?" ("open", "base", "worried", "mid") + her "Surely you're able to detect them?" ("annoyed", "base", "base", "mid") + gen "Unfortunately not... I must have been... asleep... when the thing happened..." ("base", xpos="far_left", ypos="head") + gen "I missed my chance, so to speak..." ("base", xpos="far_left", ypos="head") + her "So how do you expect me to find out who did it?" ("soft", "base", "base", "R") + gen "I'm certain that it's the work of another student..." ("base", xpos="far_left", ypos="head") + gen "(or Snape has finally snapped...)" ("base", xpos="far_left", ypos="head") + gen "so I'll need you to go undercover to find out who." ("base", xpos="far_left", ypos="head") + her "Really? You're depending on me to find a criminal within our school?" ("soft", "narrow", "base", "down",cheeks="blush") + gen "If it's not too much troub--" ("base", xpos="far_left", ypos="head") + her "I'd be honoured, [genie_name]!" ("scream", "closed", "base", "mid") + her "It's no doubt the work of one of those despicable Slytherins..." ("open", "closed", "angry", "mid") + gen "I'm sure she--" ("base", xpos="far_left", ypos="head") + her "She? So it's one of those Slytherin sluts?" ("open", "base", "angry", "mid") + gen "Well... From what I heard, it was cast by a female--" ("base", xpos="far_left", ypos="head") + her "I knew it!" ("scream", "closed", "angry", "mid") + her "Nothing would give me greater pleasure than to see scum like that sent to Azkaban..." ("angry", "narrow", "angry", "R") + + # Genie already knows about Azkaban. + #gen "And what's Azkaban?" ("base", xpos="far_left", ypos="head") + #her "... Is this another test sir?" ("open", "wink", "base", "mid") + #gen "Sure..." ("base", xpos="far_left", ypos="head") + #her "Of course! I know everything about it!" ("smile", "happy", "base", "mid_soft") + #her "It's the prison of the damned... An impenetrable rocky outcrop surrounded by the harsh North Sea..." ("open", "happyCl", "base", "mid") + #her "the guards are the deathly eaters of all happy thoughts and emotions known as dementors..." ("open", "narrow", "angry", "R") + #her "They endlessly patrol the prison, devouring all hope from the prisoners, driving them mad within a few days..." ("open", "base", "angry", "mid") + #her "Tormenting them relentlessly for the rest of their miserable lives..." ("grin", "happyCl", "base", "mid") + #her "And the perfect place to house all those dirty slytherins!" ("angry", "base", "angry", "mid") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"Just find her...\"": + her "Very well, Sir..." ("soft", "base", "base", "R") + + "\"No one's getting sent to Azkaban...\"": + gen "By the gods, [hermione_name], what's wrong with you?" ("base", xpos="far_left", ypos="head") + her "What are you talking about, [genie_name]?" ("open", "base", "base", "R",cheeks="blush") + her "Everyone knows that life in Azkaban is the punishment for casting an unforgivable curse..." ("open", "closed", "base", "mid") + gen "I've been given special permission to punish them as I see fit." ("base", xpos="far_left", ypos="head") + her "Oh..." ("annoyed", "base", "base", "mid") + her "So no Azkaban?" ("soft", "base", "base", "R") + gen "Not unless they've killed someone..." ("base", xpos="far_left", ypos="head") + her "Really? So there's still a chance?" ("base", "narrow", "base", "mid_soft") + gen "Only if you find a body..." ("base", xpos="far_left", ypos="head") + her "Yay!" ("smile", "happyCl", "base", "mid") + + her "Consider it done, [genie_name]!" ("open", "closed", "base", "mid") + + call her_walk(action="leave") + + call bld + if astoria_intro.E2_snape: + gen "I wonder if she'll find her before Snape..." ("base", xpos="far_left", ypos="head") + else: + gen "I should probably tell Snape as well..." ("base", xpos="far_left", ypos="head") + + $ hermione_busy = True + $ astoria_intro.E2_hermione = True + + call music_block + jump main_room_menu + + +### Event 2 - Snape ### +# You ask Snape to find the student. + +label astoria_intro_E2_snape: + gen "Tonks came by earlier and informed me about one of your students causing trouble." ("base", xpos="far_left", ypos="head") + sna "Really?" ("snape_03") #No xpos change. + sna "Why are you telling me?" ("snape_04") + gen "Apparently somebody got hit by something called an \"unforgivable\" curse at the school..." ("base", xpos="far_left", ypos="head") + call play_sound("scratch") + sna "" ("snape_11") + with hpunch + call ctc + gen "...{w} Severus?" ("base", xpos="far_left", ypos="head") + + sna "This isn't good..." ("snape_08") + gen "She worries that the ministry might find out about it if we don't do anything." ("base", xpos="far_left", ypos="head") + sna "This really isn't good..." ("snape_07") + sna "If they send an auror here they might find out what we've been doing!" ("snape_10") + + gen "Didn't they already do that?" ("base", xpos="far_left", ypos="head") + sna "We got lucky with Tonks, but if they were to send another Auror investigating the curses." ("snape_03") + sna "They might get wind of all the favour trading that we've been doing as well." ("snape_10") + sna "Fucking our students isn't something teachers are supposed to do genie!" ("snape_25") + sna "We can't risk receiving any more attention on the matter." + sna "If an auror finds out what's going on here, then we're both going to Azkaban!" ("snape_16") + gen "All three of us, you mean." ("base", xpos="far_left", ypos="head") + gen "So, what are we going to do about it then?" ("base", xpos="far_left", ypos="head") + sna "We'll just have to make sure that no more curses are cast..." ("snape_01") + gen "How would we manage to do that?" ("base", xpos="far_left", ypos="head") + gen "There's not some kind of spell history stored in a wand is there?" ("base", xpos="far_left", ypos="head") + sna "Of course not... If that was the case I would've snapped mine a long time ago." ("snape_24") + sna "We have to find out who's been casting them." ("snape_24") + sna "Normally the real Dumbledore would be able to detect who had cast them, but seeing as how you're here instead..." ("snape_06") + sna "We'll have to find them the old-fashioned way." ("snape_10") + gen "So you want me to launch a manhunt?" ("base", xpos="far_left", ypos="head") + sna "Are you crazy? We can't let anyone know what's happened. All the students will panic, thinking someone's been murdered..." ("snape_16") + sna "It's probably just an imperio or crucio that's been cast." ("snape_24") + sna "I'll start the search immediately. In the meantime, just stay here and keep yourself busy." ("snape_10") + gen "You don't want my help?" ("base", xpos="far_left", ypos="head") + sna "Not really... Tonks and I will get this situation under control." ("snape_02") + if astoria_intro.E2_hermione: + gen "And Granger..." ("base", xpos="far_left", ypos="head") + sna "Have you told her about this?!" ("snape_03") + gen "Sure... She seemed eager to help." ("base", xpos="far_left", ypos="head") + sna "Of course she did..." ("snape_06") + sna "(You bloody fool...)" ("snape_35") + + sna "Don't worry, I'll find that student in no time. You shall see..." ("snape_02") + + call sna_walk(action="leave") + + call bld + gen "What a drama queen..." ("base", xpos="far_left", ypos="head") + + if astoria_intro.E2_hermione: + gen "I wonder if he'll find her before Miss Granger..." ("base", xpos="far_left", ypos="head") + else: + gen "I should probably ask Miss Granger as well..." ("base", xpos="far_left", ypos="head") + + $ snape_busy = True + $ astoria_intro.E2_snape = True + + call music_block + jump main_room_menu + + +### Event 3 ### +# Hermione brings Astoria to you. +# Snape scolds her and Tonks gives her detention. + +label astoria_intro_E3: + stop music fadeout 1.0 + call play_sound("knocking") + call bld + "*Knock-knock-knock*" + gen "(...)" ("base", xpos="far_left", ypos="head") + + call play_sound("knocking") + "*Knock-knock-knock*" + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"What?\"": + pass + "\"Not now...\"": + pass + + with hpunch + femv "Stop pulling me!" + her "Shut it already!" + femv "Why did you drag me here?" + her "You know very well why I brought you!" + femv "Let me go you filthy mudblo--" + call play_sound("thump") + + gen "Who's there?" ("base", xpos="far_left", ypos="head") + her "*Shhhhh*- now!" + gen "..." ("base", xpos="far_left", ypos="head") + her "It's Hermione Granger, Sir." + her "Although... I'm not alone." + gen "Come in." ("base", xpos="far_left", ypos="head") + + call her_walk(action="enter", xpos="500", ypos="base") + + call play_music("hermione") + her "Hello sir." ("normal", "happy", "base", "mid", xpos="mid", ypos="base") + gen "I thought you said you weren't alone?" ("base", xpos="far_left", ypos="head") + her "I'm not." ("annoyed", "narrow", "base", "R_soft") + hide hermione_main + hide screen bld1 + with d3 + pause.2 + + call her_chibi("stand", 500, "base", flip=True) + pause.5 + + her "Get in here, Astoria!" ("annoyed", "narrow", "angry", "R", xpos="far_right", ypos="head", flip=True) + ast "{size=+2}{b}No!{/b}{/size}" + her "Do you want to make this worse?" ("scream", "closed", "base", "mid", xpos="mid", ypos="base", trans=hpunch) + ast "No..." + hide hermione_main + hide screen bld1 + with d3 + pause.1 + + call her_chibi("stand", 500, "base", flip=False) + pause.2 + + call play_sound("door") + call ast_chibi("stand","door","base") + with d3 + pause.8 + + # Astoria enters. + call ast_walk("desk", "base") + + call play_music("playful_tension") + + $ astoria.set_face(mouth="base", eyes="base", eyebrows="base", pupils="mid") + $ hermione.set_face(mouth="normal", eyes="closed", eyebrows="base", pupils="mid") + $ camera.set_imagepath("common/") + $ camera.set_image("CG ast_intro astoria hermione") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=0.5, pos=(-270, -150), initialize=True) + show screen animatedCG + with fade + + ast "..." ("annoyed", "base", "worried", "R", xpos="right", ypos="base") + + gen "..." + gen "And who's this?" + her "Astoria Greengrass, Sir." ("open", "narrow", "annoyed", "mid") + her "You asked me to bring you the person who cast the unforgivable curse, Sir." ("soft", "narrow", "annoyed", "R") + her "And here she is." ("grin", "base", "angry", "mid") + gen "I thought it would be some angsty girl who listens to death metal - or something..." + gen "Not some innocent looking--" + ast "I am not!" ("clench", "narrow", "angry", "mid") + ast "You don't know what you're talking about, you ancient old man!" ("annoyed", "narrow", "angry", "R") + gen "(Oh, you have no idea...)" + + her "What's going to be her punishment, Sir?" ("soft", "base", "angry", "mid") + ast "Punishment? I didn't do anything!" ("clench", "base", "worried", "mid") + her "You know very well what you did!" ("angry", "closed", "angry", "mid") + her "Sir, I overheard her boasting about it in the library - to a group of Slytherins." ("annoyed", "narrow", "worried", "mid_soft") + her "By the sounds of it, she used Imperio to control another student!" ("annoyed", "base", "base", "mid") + ast "I did not!" ("annoyed", "base", "worried", "L") + + her "Shall I go fetch a vial of veritaserum from Professor Snape, sir?" ("grin", "base", "base", "mid") + ast "V--{w=0.2} Veritaserum?!" ("clench", "base", "worried", "mid") + ast "That's illegal!" ("clench", "base", "base", "mid") + her "Not when you've been casting unforgivable curses - you evil little witch!" ("grin", "narrow", "angry", "R") + ast "Fine!" ("clench", "closed", "angry", "mid") + ast "I'll tell you what happened, Sir..." ("open", "narrow", "base", "mid") + ast "But only if this Gryffindor leaves!" ("annoyed", "narrow", "base", "mid") + her "Not a chance!" ("angry", "closed", "angry", "mid") + + $ d_flag_01 = False + + menu: + "\"You're dismissed, Miss Granger!\"": + her "What?!" ("open", "wide", "worried", "shocked") + pass + + "\"Go and fetch Snape!\"": + $ d_flag_01 = True + pass + + hide screen animatedCG + with fade + + her "But Sir, I'd really like to know what her punishment is going to be!" ("angry", "base", "base", "mid", flip=False, xpos="base", ypos="base", trans=dissolve) + + gen "That's none of your concern." ("base", xpos="far_left", ypos="head") + her "Yes it is! And I demand to be rewarded!" ("angry", "closed", "angry", "mid") + her "Given that I was the one who caught her, I think it's only fair!" ("annoyed", "base", "angry", "mid") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + + "\"Not now, Miss Granger...\"": + gen "We'll talk about your reward later..." ("base", xpos="far_left", ypos="head") + her "But!" ("disgust", "narrow", "worried", "down") + gen "No butts..." ("base", xpos="far_left", ypos="head") # deliberate. + her "*Hmph*" ("annoyed", "narrow", "angry", "R") + her "Fine..." ("open", "closed", "angry", "mid") + $ her_mood += 12 + + "\"How about some house points instead?\"": + her "*Hmm*..." ("annoyed", "narrow", "angry", "R") + her "How many house points?" ("soft", "base", "angry", "mid") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"How about ten?\"": + her "Ten?" ("disgust", "base", "worried", "mid") + her "I expected more for this, Professor!" ("open", "base", "angry", "mid") + gen "Take 'em or leave 'em..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "angry", "R") + her "Very well..." ("open", "closed", "base", "mid") + $ her_mood += 6 + $ gryffindor += 10 + + "\"You'll get twenty.\"": + her "..." ("annoyed", "base", "base", "R") + her "I suppose that's fair." ("open", "closed", "base", "mid") + $ her_mood = 0 + $ gryffindor += 20 + + her "In a few days everyone at Hogwarts will know what happened to her..." ("grin", "base", "angry", "mid") + her "When she's sent to Azkaban!" ("soft", "squint", "angry", "mid") + gen "Nobody's going anywhere, except for you, Miss Granger..." ("base", xpos="far_left", ypos="head") + + if d_flag_01: + gen "Now go and fetch Snape for me." ("base", xpos="far_left", ypos="head") + else: + gen "You may leave..." ("base", xpos="far_left", ypos="head") + + her "..." ("annoyed", "narrow", "angry", "R") + ast "*cough*... {size=-4}mudblood...{/size}" ("annoyed", "narrow", "angry", "R", xpos="mid", ypos="base", trans=dissolve) + her "*Tzzzs!*..." ("angry", "closed", "angry", "mid") + if d_flag_01: + her "I'll go {i}fetch{/i} professor Snape then..." ("annoyed", "narrow", "angry", "R") + else: + her "I'll go back to class then..." ("annoyed", "narrow", "angry", "R") + her "Good day, Professor." ("open", "base", "angry", "mid") + stop music fadeout 2.0 + + call her_walk(action="leave") + pause.2 + + ast "..." ("annoyed", "base", "base", "L") + gen "..." ("base", xpos="far_left", ypos="head") + + ast "Now what, sir?" ("annoyed", "base", "worried", "mid") + if d_flag_01: + gen "You'll find out when professor Snape gets here." ("base", xpos="far_left", ypos="head") + else: + gen "You'll find out once I've summoned professor Snape." ("base", xpos="far_left", ypos="head") + gen "Give me a second..." ("base", xpos="far_left", ypos="head") + ast "..." ("annoyed", "narrow", "worried", "down") + ast "(Better him than any of the other teachers...)" ("clench", "narrow", "base", "down") + + $ snape_chibi.zorder = 4 # In front of Astoria + call sna_walk(action="enter", xpos="mid", ypos="base") + + call play_music("snape") + ast "" ("annoyed", "base", "worried", "R") + sna "You wanted to see me?" ("snape_09", xpos=600, ypos="base") + ast "..." ("annoyed", "narrow", "worried", "L") + sna "Astoria?!" ("snape_05") + sna "Why is one of my students in your office? Don't tell me you..." ("snape_03") + gen "It's not that sort of visit." ("base", xpos="far_left", ypos="head") + sna "Really? Then what's she doing here?" ("snape_01") + gen "She's the one who cast that curse." ("base", xpos="far_left", ypos="head") + sna "Truthfully? A Slytherin?" ("snape_05") + sna "I expect better than this from my students, Miss Greengrass..." ("snape_10") + + sna "The very first lesson I give you is don't--" ("snape_08") + sna "get--" ("snape_08", trans=hpunch) + sna "caught!" ("snape_15", trans=hpunch) + pause.5 + + sna "Do you have anything to say for yourself?" ("snape_10") + ast "I-I'm sorry, sir... It won't happen again." ("clench", "narrow", "base", "down") + sna "Who did you cast it on you little idiot?" ("snape_32") + ast "Susan Bones, Sir..." ("annoyed", "narrow", "base", "down") + sna "The Hufflepuff cow--" ("snape_44") + sna "*Ahem*..." ("snape_09") + gen "..." ("base", xpos="far_left", ypos="head") + sna "That cowardly Hufflepuff girl?" ("snape_38") + ast "Yes." ("open", "narrow", "worried", "L") + ast "I... might have used Imperio to embarrass her a little..." ("smile", "narrow", "worried", "mid") + sna "Well as long as you only cast it once..." ("snape_09") + sna "We have to make sure this stays under wraps." ("snape_34") + sna "Miss Greengrass, you will not mention this incident to any other student or teacher, am I clear?" ("snape_35") + ast "Yes Sir, I promise..." ("annoyed", "narrow", "worried", "down") + sna "You should count yourself lucky the ministry hasn't been notified..." ("snape_31") + sna "Miss Tonks has been kind enough to wipe the co--" ("snape_01") + sna "Susan's memory of the event." ("snape_03") + sna "You owe her big time..." ("snape_25") + ast "Of course..." ("annoyed", "narrow", "worried", "L") + sna "I'll leave her punishment to the two of you..." ("snape_04") + sna "I have someone--" ("snape_09") + sna "*Uhm*... I've got an appointment to attend to in my office." ("snape_35") + gen "Naturally..." ("base", xpos="far_left", ypos="head") + sna "Until next time... Albus." ("snape_09") + gen "And Albus to you--" ("base", xpos="far_left", ypos="head") + g4 "I mean..." + g9 "Until next time!" + sna "..." ("snape_04") + + # Snape leaves and runs into Tonks. + call play_music("stop") + call sna_walk(660,"base") + + # Equip Tonks default clothing. + $ ton_outfit_last.save() # Store current outfit. + $ tonks.equip(ton_outfit_default) + + call play_sound("door") + call ton_chibi("stand",780,"base") + with d3 + pause.2 + + call ast_chibi("stand","desk","base", flip=True) + with d3 + + ton "Snape. How good to see you!" ("soft", "shocked", "base", "mid", hair="neutral", xpos="far_right", ypos="head") + sna "Save your compliments for someone else... I'm in a bit of a hurry." ("snape_03", xpos="far_right", ypos="head") + ton "Still mad at me for taking your post?" ("base", "base", "angry", "mid") + ton "I'd be willing to compensate you for it, you know..." ("horny", "base", "base", "mid", hair="horny") + sna "..." ("snape_12") + gen "*Ahem*..." ("base", xpos="far_left", ypos="head") + sna "Would you mind?" ("snape_12") + ton "Sure...{heart}" ("horny", "base", "angry", "mid") + sna "Stepping aside." ("snape_18") + ton "Oh, okay..." ("annoyed", "closed", "base", "mid") + + call sna_walk(action="leave") + pause.2 + $ snape_chibi.zorder = 2 # Reset zorder + + call ton_walk(500,"base") + call ast_chibi("stand","desk","base", flip=False) + with d3 + + call play_music("tonks") + pause.1 + ast "" ("annoyed", "base", "base", "mid", trans=dissolve) + ton "Hello, Professor." ("base", "base", "base", "mid", hair="neutral", xpos="base", ypos="base", trans=dissolve) + + ton "Astoria? What are you doing here?" ("upset", "base", "worried", "L") + ton "You didn't cause any mischief, I hope." ("open", "narrow", "base", "L") + ast "Of course not." ("annoyed", "base", "worried", "down") + ton "Wait. Is she the one who cursed Susan?" ("clench", "wide", "shocked", "stare") + ton "" ("upset", "base", "worried", "mid") + gen "Yep." ("base", xpos="far_left", ypos="head") + ton "(Oh shit!)" ("horny", "base", "raised", "L", hair="horny") + + ast "I'm really sorry! I promise I won't ever cast it again!" ("open", "narrow", "base", "R") + ton "Really? It was you who cast the spell?" ("grin", "base", "raised", "L") + ast "..." ("annoyed", "narrow", "worried", "down") + ton "It couldn't possibly have been someone as cute as you!" ("soft", "base", "raised", "down") + ast "..." ("clench", "narrow", "worried", "down") # Embarrassed, stares down. + ast "Please don't send me to Azkaban!" ("scream", "closed", "base", "mid") + ast "" ("annoyed", "narrow", "base", "down") + ton "Don't worry, It won't come to that..." ("grin", "narrow", "base", "down") + ton "The ministry isn't going to lock away such a cute little thing like yourself..." ("base", "base", "base", "L") + ton "{size=+2}Over a little harmless fun.{/size} {heart}" ("horny", "base", "shocked", "L") + + ton "It's just the Imperius curse." ("grin", "base", "raised", "R") + ton "Most students don't have the guts to cast Crucio on another person..." ("base", "narrow", "base", "down") + ton "Let alone Avada Kedavra..." ("soft", "closed", "shocked", "mid") + + gen "..." ("base", xpos="far_left", ypos="head") + ton "So, you had some fun with Susan, I gather?" ("base", "narrow", "base", "L") + ton "Want to tell me what you made her do?" ("horny", "base", "angry", "L") + gen "(Doesn't she already know that?)" ("base", xpos="far_left", ypos="head") + ast "I might have made her show her boobs to some second years..." ("annoyed", "narrow", "base", "R") + ton "*ha-ha-ha-ha!*" ("silly", "happyCl", "base", "mid", trans=hpunch) + ast "Just for a second!" ("clench", "base", "base", "mid") + gen "(what's going on here?)" ("base", xpos="far_left", ypos="head") + ton "Is that all?" ("open", "base", "raised", "L") + ton "You probably did Susan some good then..." ("crooked_smile", "base", "raised", "mid") + ton "She sure needs to loosen up a bit." ("soft", "base", "base", "R") + + ton "She always has been very sensitive about her body for some reason." ("base", "base", "raised", "mid") + ast "So I'm not going to get in trouble?" ("open", "base", "worried", "mid") + ton "I didn't say that... You still cast a very serious spell..." ("base", "base", "annoyed", "L") + ast "" ("annoyed", "base", "base", "mid") + ton "A couple of hours of detention with me should be an appropriate punishment for casting an unforgivable curse." ("open", "base", "base", "L") + ton "Wouldn't you agree, Professor?" ("base", "base", "raised", "mid") + + $ d_flag_01 = False + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"Seems reasonable to me.\"": + ast "Really? Only detention?" ("smile", "base", "base", "mid") + ton "I'm very much looking forward to it." ("base", "happyCl", "base", "mid") + ast "Wicked!" ("clench", "narrow", "angry", "down") + + "\"Why don't you just reward her at this point...\"": + $ d_flag_01 = True + + ast "What?" ("smile", "base", "angry", "mid") + ton "*Hmm*... I agree." ("horny", "base", "raised", "L") + gen "Miss Tonks, I was being sarcastic..." ("base", xpos="far_left", ypos="head") + ton "But you're right though, Professor!" ("grin", "base", "shocked", "mid") + ton "Casting the Imperius curse at her age is no easy task!" ("open", "closed", "base", "mid") + ton "A girl with that type of...{w=0.3} talent, is a rare thing." ("horny", "base", "raised", "L") # Horny + ton "I would say, fifty points for Slytherin should be appropriate." ("base", "base", "annoyed", "mid") + ast "!!!" ("clench", "base", "base", "mid") + g4 "(If Hermione hears about this - she'll {i}Abra Kadabra{/i} my head off!)" + g4 "(And not the one on my shoulders...)" + ton "But you'll still have to visit me for detention." ("open", "base", "annoyed", "L") + ast "I guess I can do that..." ("smile", "base", "base", "R") + ton "Wonderful." ("base", "happyCl", "base", "mid") + $ slytherin += 50 + + ton "That should be all for now, Astoria." ("open", "base", "base", "L") + ast "..." ("annoyed", "base", "base", "down") + if game.daytime: + ton "Have a great day, cutie." ("base", "happyCl", "base", "mid") + ast "*Uhm*...{w=0.3} Right..." ("open", "base", "base", "mid") + else: + ton "Have a good night, cutie." ("base", "happyCl", "base", "mid") + ast "*Uhm*...{w=0.3} Good night then." ("open", "base", "base", "mid") + + # Astoria leaves. + call play_music("stop") + call hide_characters + call ast_chibi("stand","desk","base", flip=True) + hide screen bld1 + with d3 + pause.1 + + call ast_walk(action="leave") + pause.1 + + call ton_walk("desk","base") + + call play_music("playful_tension") + ton "She's {size=+5}so cute!{/size} Isn't she? {heart}" ("base", "base", "raised", "R", xpos="mid", ypos="base") + + if d_flag_01: + gen "You gave her fifty house points..." ("base", xpos="far_left", ypos="head") + g4 "For what you previously described as a serious crime?" + ton "I know! I shouldn't have rewarded her, but..." ("upset", "closed", "worried", "mid") + ton "Did you see how her face lit up!" ("grin", "narrow", "raised", "mid") + ton "I thought we were supposed to encourage our students, [ton_genie_name]." ("upset", "base", "shocked", "down") + gen "Don't put this on me..." ("base", xpos="far_left", ypos="head") + ton "Fine, maybe I got a bit too excited..." ("mad", "base", "worried", "mid") + + else: + gen "A couple of hours of detention..." ("base", xpos="far_left", ypos="head") + gen "For what you previously described as a serious crime?" ("base", xpos="far_left", ypos="head") + ton "Did I go too soft on her?" ("upset", "base", "worried", "mid") + gen "Oh, don't get me wrong. I couldn't care less about this school." ("base", xpos="far_left", ypos="head") + gen "I'm not even supposed to be here..." ("base", xpos="far_left", ypos="head") + ton "Fair enough..." ("normal", "base", "raised", "R") + + gen "We should have a chat about Astoria again..." ("base", xpos="far_left", ypos="head") + gen "Discuss the severity of her... \"detention\"." ("base", xpos="far_left", ypos="head") + ton "Of course, [ton_genie_name]." ("annoyed", "base", "raised", "downR") + ton "Let's discuss it over a drink...{heart}" ("grin", "closed", "base", "mid") + gen "Naturally..." ("base", xpos="far_left", ypos="head") + gen "Until next time, [tonks_name]." ("base", xpos="far_left", ypos="head") + ton "Until next time!{heart}" ("base", "happyCl", "base", "mid") + call play_music("stop") + + call ton_walk(action="leave") + + call bld + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "(I feel like I'm actually starting to run this damn school.)" ("base", xpos="far_left", ypos="head") + gen "(This isn't what I signed up for...)" ("base", xpos="far_left", ypos="head") + + # Reset Tonks. + $ tonks.equip(ton_outfit_last) + + $ hermione_busy = True + $ snape_busy = True + $ tonks_busy = True + + $ astoria_intro.E3_complete = True + + call music_block + jump main_room_menu + + +### Tonks Hangout Event 1 ### +# Tonks wants to teach Astoria the Imperius curse. + +label nt_he_astoria_E1: + ton "So about this girl." ("open", "closed", "base", "mid") + gen "You're going to have to be more specific." ("base", xpos="far_left", ypos="head") + ton "Astoria Greengrass." ("open", "wide", "base", "mid") + gen "Ah yes, the hot-headed one." ("base", xpos="far_left", ypos="head") + ton "Yes, she's pretty cute isn't she..." ("base", "happyCl", "base", "mid") + ton "I wouldn't mind giving her a thorough robe inspection - if you know what I'm saying." ("horny", "base", "raised", "mid", hair="horny") + ton "This girl...{w=0.5} she's special...{w=0.8} different..." ("open", "base", "base", "R", hair="neutral") + gen "You've got the hots for this girl?" ("base", xpos="far_left", ypos="head") + ton "She's a Slytherin!" ("mad", "base", "raised", "mid") + gen "People keep saying that as if I'd know what the problem is." ("base", xpos="far_left", ypos="head") + ton "Oh yes... I guess I'm a teacher now - so I should be more impartial..." ("upset", "base", "raised", "down") + ton "Old habits, I suppose." ("soft", "base", "base", "R") + ton "But no, it's not that." ("open", "base", "base", "mid") + + ton "This girl you see, she's cursed... and it's quite a hefty curse at that!" ("open", "narrow", "worried", "R") + gen "You don't say..." ("base", xpos="far_left", ypos="head") + #ton "This girl is cursed... and it's quite a problem." ("base", "base", "base", "mid") + #gen "Don't you mean this cursed girl {i}is{/i} a problem?" ("base", xpos="far_left", ypos="head") + #ton "No, she's cursed. Quite a hefty curse at that!" ("base", "base", "base", "mid") + #gen "..." ("base", xpos="far_left", ypos="head") + ton "Her family - the Greengrass family - is quite infamous in the wizarding world." ("open", "base", "base", "L") + ton "They're known for being a very high class family of witches and wizards..." ("open", "base", "raised", "R") + ton "Some of them are very stuck-up and spoiled, for that reason." ("upset", "base", "base", "R") + ton "It's quite the norm for most pure-blood families, actually." ("open", "closed", "base", "mid") + gen "Get to the point..." ("base", xpos="far_left", ypos="head") + ton "*Sigh*" ("disgust", "base", "base", "down") + ton "One of the Greengrass ancestors was put under a blood curse, and I fear that parts of this curse have trickled down through the generations and surfaced in Astoria." ("upset", "base", "worried", "mid") + ton "Its original purpose was to bring down the family and make them appear weak in the eyes of the wizarding community." ("normal", "base", "base", "R") + ton "Every now and then one of the family members would become frail and live a short life." ("normal", "closed", "worried", "mid") + gen "Oh shit..." ("base", xpos="far_left", ypos="head") + ton "Yeah..." ("upset", "base", "worried", "down") + gen "Hey, at least it's not the other way round, am I right..." ("base", xpos="far_left", ypos="head") + gen "Immortality can be quite the curse too you know..." ("base", xpos="far_left", ypos="head") + ton "Yes, I can see how much you're hurting inside..." ("normal", "base", "base", "R") + ton "The opportunity to have sex with some of the most attractive women in all of history must really suck." ("soft", "base", "raised", "mid") + gen "I'll live with it..." ("base", xpos="far_left", ypos="head") + + ton "Fortunately this curse has faded after many generations, but in turn it appears to have evolved into something else..." ("open", "closed", "base", "mid") + gen "How would you know?" ("base", xpos="far_left", ypos="head") + ton "I'm an auror..." ("base", "shocked", "base", "mid") + gen "Is that your answer for everything now?" ("base", xpos="far_left", ypos="head") + ton "Just trust me..." ("open", "closed", "base", "mid") + ton "The nature of it is quite familiar to me." ("open", "base", "base", "R") + ton "I have strong reasons to believe that this girl is..." ("upset", "closed", "angry", "R") + ton "She's..." ("upset", "base", "worried", "down") + gen "She's what?" ("base", xpos="far_left", ypos="head") + ton "She's asexual!" ("mad", "shocked", "worried", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + ton "You don't believe me?" ("mad", "narrow", "base", "down") + gen "Oh no, I believe you." ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Mind explaining to me what asexual's supposed to mean?" ("base", xpos="far_left", ypos="head") + ton "You don't know?" ("open", "shocked", "raised", "mid") + ton "Well that's not too surprising - all things considered..." ("normal", "narrow", "base", "L") + ton "It means she experiences no sexual desires or attractions. To anything!" ("annoyed", "narrow", "shocked", "mid") + g4 "WHAT?!" + ton "I know!" ("mad", "base", "worried", "mid") + gen "By the great desert sands... That's a curse worse than death." ("base", xpos="far_left", ypos="head") + ton "The curse has seemingly gone from killing off random members of their family to preventing new members from being born." ("upset", "base", "base", "R") + #g4 "Wait, since when can spells change their outcome like that?" + gen "Magic doesn't make any fucking sense in this universe..." ("base", xpos="far_left", ypos="head") + ton "Hey, it makes perfect sense!" ("open", "base", "angry", "mid") + ton "..." ("upset", "base", "worried", "R") + ton "In any case, I'd like to keep an eye on her - if you don't mind." ("open", "base", "angry", "mid") + gen "Go right ahea--" ("base", xpos="far_left", ypos="head") + ton "Maybe even teach her how to cast Imperio properly." ("annoyed", "base", "base", "R") + gen "..." ("base", xpos="far_left", ypos="head") + with hpunch + g4 "Hold on a second...{w=0.8} what?!" + g4 "You want to teach this {b}sadist{/b} how to cast those illegal curses?" + gen "That's what caused all this trouble in the first place!" ("base", xpos="far_left", ypos="head") + ton "Don't worry, I'm just gonna teach her the basics..." ("open", "closed", "base", "mid") + ton "I won't allow her to go out and curse students at random." ("mad", "closed", "annoyed", "mid") + ton "But... Maybe this can help ignite that \"sexual urge\" - deep inside of her..." ("mad", "base", "raised", "R") + ton "She clearly isn't ready to do it with some boy..." ("open", "base", "raised", "mid") + ton "Or you, for that matter." ("upset", "base", "raised", "R") + gen "If she's really cursed with \"Asexuality\" - then I don't want to have her anywhere close to me." ("base", xpos="far_left", ypos="head") + ton "It's not contagious, you numpty!" ("open", "base", "annoyed", "mid") + ton "Have you not been paying attention? It's a family curse!" ("mad", "base", "angry", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + ton "That being said, I'd rather have her do it with me..." ("base", "base", "raised", "R", hair="horny") + gen "Are we still talking about the \"Imperio\" thingy?" ("base", xpos="far_left", ypos="head") + ton "Yes..." ("soft", "narrow", "raised", "downR") + gen "So your goal is to get rid of this curse she's inherited by somehow awakening her sexuality?" ("base", xpos="far_left", ypos="head") + ton "It might not be that easy, but I think it would be a good start." ("open", "base", "base", "L") + ton "I must at least know if my theory is correct..." ("normal", "base", "base", "R") + gen "I don't see how this \"Imperio\" thing plays into it, but if you say so..." ("base", xpos="far_left", ypos="head") + ton "I'll speak to Miss Greengrass." ("open", "base", "base", "mid") + ton "I doubt she'll have many objections..." ("base", "happyCl", "base", "mid") + + ">You ask Tonks to explain asexuality to you some more..." + ">You still can't wrap your mind around the fact that such a horrible thing exists..." + + $ nt_he.astoria_E1 = True + + call music_block + jump end_tonks_hangout_points + + +### Event 4 ### +# Astoria summon unlock. +# If you pick the wrong choice Astoria won't return for a week and ignores you. + +label astoria_intro_E4: + stop music fadeout 1.0 + call play_sound("knocking") + call bld + "*Knock-knock-knock*" + gen "(...)" ("base", xpos="far_left", ypos="head") + + call play_sound("knocking") + "*Knock-knock-knock*" + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Who is it?\"": + ast "Professor, may I come in?" + g4 "It's that accursed, cursed girl!" + ast "Sir?" + + "\"Not now...\"": + ast "But, Professor Tonks told me you wanted to speak with me." + gen "She did?" ("base", xpos="far_left", ypos="head") + ast "Yes." + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Come in.\"": + ast "..." + pass + + "\"I'm busy.\"": + ast "*Uhm*..." + ast "Very well, Sir." + ast "I shall be back tomorrow..." + gen "..." ("base", xpos="far_left", ypos="head") + + $ ag_event_pause += 1 + $ astoria_busy = True + + jump main_room_menu + + call ast_walk("desk","base") + pause.2 + + call play_music("astoria") + ast "Hello, Professor." ("smile", "base", "base", "mid", xpos="mid", ypos="base") + ast "Professor Tonks told me to talk to you, Sir." ("open", "base", "base", "R") + gen "....................." ("base", xpos="far_left", ypos="head") + gen "She did?" ("base", xpos="far_left", ypos="head") + ast "Yes, Sir..." ("annoyed", "base", "base", "mid") + gen "(Shit, was I supposed to do something with her?)" ("base", xpos="far_left", ypos="head") + ast "...................." ("annoyed", "base", "base", "R") + m "(Oh that's right. Freeing her from her curse...)" + ast "Sir, If there's nothing you need of me then I'd like to leave..." ("open", "narrow", "base", "mid") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"What about your detention?\"": + ast "Oh..." ("clench", "base", "base", "down") + gen "If I recall correctly, we have yet to discuss your punishment." ("base", xpos="far_left", ypos="head") + ast "So you didn't forget about that..." ("clench", "base", "worried", "mid") + pass + + "\"You still need to be punished!\"": + ast "Punished?!" ("clench", "base", "base", "mid") + ast "I thought I was only getting detention?" ("open", "base", "worried", "mid") + gen "Yes, detention." ("base", xpos="far_left", ypos="head") + pass + + "\"Fine by me...\"": # Fails. + ast "I'll head back to the dungeons then." ("smile", "base", "base", "R") + gen "See ya." ("base", xpos="far_left", ypos="head") + + # Astoria leaves. + call ast_walk(action="leave") + + call bld + gen "I'd better not mention this to Tonks..." ("base", xpos="far_left", ypos="head") + gen "I'm sure she'll come back for her punishment." ("base", xpos="far_left", ypos="head") + + $ ag_event_pause += 7 # Returns a week later. + + jump main_room_menu + + gen "It's just a couple of sessions with your teacher." ("base", xpos="far_left", ypos="head") + g9 "I'm sure you'll enjoy it!" + ast "If you say so, Sir." ("open", "closed", "base", "mid") + ast "..." ("annoyed", "narrow", "base", "R") + ast "Would it be okay if I go there some other time?" ("open", "base", "base", "mid") + gen "Are you trying to weasel yourself out of your punishment?" ("base", xpos="far_left", ypos="head") + ast "No?" ("annoyed", "base", "base", "mid") + ast "It's just that... I really don't have time right now..." ("open", "base", "base", "down") + gen "..." ("base", xpos="far_left", ypos="head") + gen "I'll allow it. But just this once!" ("base", xpos="far_left", ypos="head") + ast "Thank you!" ("smile", "closed", "base", "mid") + gen "You're dismissed..." ("base", xpos="far_left", ypos="head") + ast "..." ("grin", "base", "angry", "R") + + # Astoria leaves. + call ast_walk(action="leave") + + call bld + gen "..." ("base", xpos="far_left", ypos="head") + gen "(I am way too good to my students.)" ("base", xpos="far_left", ypos="head") + g9 "(Who wouldn't want to be in detention with that nympho?)" + gen "(That girl should consider herself lucky...)" ("base", xpos="far_left", ypos="head") + + $ astoria_busy = True + + $ astoria_unlocked = True + $ astoria_wardrobe_unlocked = True # TODO: Move to a proper event once they've been added. + $ achievements.unlock("unlockast", True) + call popup("{size=-4}You can now summon Astoria into your office.{/size}", "Character unlocked!", "interface/icons/head/astoria.webp") + + $ astoria_intro.E4_complete = True + + jump main_room_menu diff --git a/game/scripts/characters/astoria/events/spell_favours_INCOMPLETE.txt b/game/scripts/characters/astoria/events/spell_favours_INCOMPLETE.txt new file mode 100644 index 00000000..309d7f76 --- /dev/null +++ b/game/scripts/characters/astoria/events/spell_favours_INCOMPLETE.txt @@ -0,0 +1,982 @@ + +#humiliate self for genie and astoria +#training labels are on the other page. + +label hornify_spell_1: #first level hornify spell + #Start grinding her hips in front of genie + gen "Ready to try out a brand new spell?" ("base", xpos="far_left", ypos="head") + ast "Probably almost as ready as you are to see me use it, Sir!" ("smile", "narrow", "angry", "mid") + gen "Well if it's half as exciting as what the name suggests..." ("base", xpos="far_left", ypos="head") + ast "Then we'll have Susan begging for your dirty old cock in no time!" ("grin", "narrow", "angry", "mid") + ast "Maybe I should get a magical photo of her covered in cum!" ("smile", "base", "worried", "mid") + ast "Imagine that in the school paper!" ("grin", "narrow", "angry", "mid") + gen "Magic photos?" ("base", xpos="far_left", ypos="head") + ast "Haven't you ever read a newspaper, sir? I thought that's all old people like you did!" ("upset", "narrow", "angry", "mid") + ast "I wonder if I could take it just as you shoot it all over her..." ("smile", "base", "worried", "L") + ast "Imagine that for a front page scoop!" ("grin", "narrow", "narrow", "mid") + gen "I'm not sure they'd run that story some how..." ("base", xpos="far_left", ypos="head") + ast "You're the headmaster aren't you, sir? Make them run it!" ("smile", "narrow", "angry", "mid") + gen "Let's just focus on your magic for the moment, leave the journalism for later." ("base", xpos="far_left", ypos="head") + ast "Hmph!" ("annoyed", "narrow", "angry", "R") + ast "If you want me to focus on magic then bring those boobs on legs up here so I have someone to practise on!" ("annoyed", "narrow", "angry", "mid") + gen "Couldn't have said it better myself..." ("base", xpos="far_left", ypos="head") + ast "Hang on, wait!" ("smile", "base", "narrow", "mid") + ">Astoria runs around your desk and hops up on your lap..." + ast "There, ready!" ("smile", "happyCl", "base", "mid", flip=True, xpos=100) + gen "..." ("base", xpos="far_left", ypos="head") + ">Without further ado you summon the well-endowed, Hufflepuff to your hallowed office." + sus "You wanted to see me, sir?" ("base", "happyCl", "worried", "down") + ">Without even consciously realizing, Susan calmly removes her top and bra, bearing her magnificent breasts to you and Astoria..." + gen "mmm, that I did..." ("base", xpos="far_left", ypos="head") + ">The sight of Susan's milky tits rapidly cause your cock to spring to life, straining against the weight of Astoria on your lap." + sus "Ast--" ("open", "wide", "worried", "mid") + ast "Sir! We haven't even started yet!" ("smile", "angry", "base", "R") + gen "Don't blame me for this, [astoria_name]!" ("base", xpos="far_left", ypos="head") + ast "I do! I expect you to wait until we start..." ("annoyed", "happyCl", "base", "R") + sus "Excuse me!" ("scream", "happyCl", "angry", "mid") + sus "Why are you sitting on Dumbledore's lap Astoria?" ("open", "suspicious", "angry", "mid") + sus "And what are you starting?" ("open", "narrow", "worried", "mid") + gen "We brought you up here to help with a magic experiment." ("base", xpos="far_left", ypos="head") + sus "Really?" ("open", "wide", "worried", "mid") + sus "B-but that still doesn't explain why Astoria is--" ("open", "suspicious", "worried", "mid") + ast "IMPERIO!" ("scream", "closed", "angry", "mid") + ">With a puff of golden smoke Astoria's wand goes off, entrancing the poor redhead once more..." + gen "Hey, Isn't that the old spell?" ("base", xpos="far_left", ypos="head") + ast "Of course it is sir! Can't you hear things at all?" ("pout", "narrow", "angry", "R") + ast "I cast it because I wanna change some stuff about bessy here." ("smile", "angry", "narrow", "mid") + ast "I think she can still cast spells at us if she wants..." ("annoyed", "narrow", "narrow", "mid") + ast "Plus I wanna be able to boss her around in class!" ("grin", "happyCl", "base", "mid") + ast "So listen up Susan!" ("open", "closed", "angry", "mid") + sus "Yes..." ("open", "base", "worried", "empty") + ast "From now on, you have to do whatever I say, whenever I say, OK?" ("open", "narrow", "narrow", "mid") + sus "Yes..." ("open", "base", "worried", "empty") + ast "Awesome!" ("grin", "happyCl", "base", "mid") + ast "And you can't ever cast a spell on me or the headmaster!" ("open", "narrow", "angry", "mid") + sus "Yes..." ("open", "base", "worried", "empty") + ast "And you aren't allowed to play with yourself unless I say!" ("open", "closed", "angry", "mid") + sus "Yes..." ("open", "base", "worried", "empty") + gen "What was that for?" ("base", xpos="far_left", ypos="head") + ast "Can you imagine how much a big boobed bimbo like Bessy here probably plays with herself?" ("upset", "narrow", "angry", "R") + ast "I'm just doing her a favour by giving her some more free time..." ("smile", "narrow", "narrow", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + ast "OK, all done, you can go back to normal now Susy!" ("open", "happyCl", "base", "mid") + ">The colour rushes back into Susan's eyes as she snaps back to life." + sus "-sitting on your lap!" ("open", "suspicious", "worried", "mid") + ast "I'm sitting here because the headmaster refuses to get any comfy furniture!" ("pout", "closed", "narrow", "mid") + ">You feel astoria's butt adjust ever so slightly, causing the barest bit of friction to your cock..." + gen "Ugh... th-that's right..." ("base", xpos="far_left", ypos="head") + sus "Ok... so what's this experiment you needed me to help with?" ("upset", "narrow", "worried", "mid") + ast "The headmaster and I want to test the effects of a new spell I just learned!" ("grin", "narrow", "narrow", "mid") + ast "And we needed someone to cast it on..." ("grin", "narrow", "angry", "mid") + sus "What? I-I'm not so sure about that... What does it do?" ("open", "suspicious", "worried", "wide") + ast "We're not really sure... All we know is that I have to target it somewhere on your body..." ("smile", "angry", "worried", "mid") + ast "Guess where?" ("grin", "narrow", "angry", "mid") + sus "You don't mean..." ("open", "wide", "worried", "wide") + sus "I don't think I want to help with this experiment Dumbledore! I'm going to leave now..." ("open", "happyCl", "worried", "mid",flip=True) + ">Susan turns to leave, but is compelled by Astoria's previous imperio to be unable to leave until excused..." + sus "I can't... I can't leave!" ("upset", "happyCl", "worried", "wide") + ast "We know! Just get back here and let us cast the spell!" ("annoyed", "narrow", "base", "R") + sus "..." ("upset", "narrow", "worried", "empty") + ">Susan begrudgingly walks back in front of your desk, sullenly standing before you and Astoria." + sus "Whatever you two have done, my aunt--" ("scream", "closed", "angry", "mid") + ast "Shhh!" ("clench", "narrow", "angry", "mid") + sus "..." ("upset", "narrow", "worried", "empty") + ast "That's better, now I can focus..." ("pout", "narrow", "base", "L") + ast "ready sir?" ("smile", "happyCl", "base", "mid") + gen "Ready as ever, [astoria_name]..." ("base", xpos="far_left", ypos="head") + ast "HORNIFY BOOBS!" ("scream", "narrow", "angry", "mid") + ">With that, a thin bolt of pink electricity jumps from the end of Astoria's wand onto Susan's breasts before fading away into them..." + sus "!!!" ("open_tongue", "wide", "worried", "empty") + sus "Ahhh! what have you done!" ("open", "wide", "worried", "mid",cheeks="blush") + sus "Where are my clothes!" ("scream", "worried", "angry", "down",cheeks="blush") + ast "Pfft, you took them off ages ago." ("smile", "base", "base", "R") + ast "And I just cast a little spell is all." ("grin", "narrow", "narrow", "mid") + ">Astoria begins to rock back and forth on your lap, causing a sinful bolt of pleasure through your cock as you buck back into the evil little witch..." + ast "Sir..." ("pout", "wink", "ahegao", "R") + ast "Now what's the spell feel like Susy?" ("smile", "wink", "ahegao", "mid") + sus "Agh... it's like... it's like they're on fire!" ("open", "wide", "worried", "down",cheeks="blush") + ast "mmmm.... Bad fire?" ("annoyed", "narrow", "narrow", "mid") + ">Astoria rolls her hips hard against your cock..." + ast "Or good fire?" ("smile", "narrow", "narrow", "mid") + sus "{b}Good{/b} fire..." ("upset", "", "base", "base",cheeks="blush") + ast "And where is the good fire?" ("base", "base", "base", "mid") + sus "Ugh... I... I don't want to say..." ("base", "base", "base", "base") + ast "Why not?" ("base", "base", "base", "mid") + sus "it's too embarrassing!" ("base", "base", "base", "base") + ast "Don't worry, you love being embarrassed in front of the headmaster and I..." ("base", "base", "base", "mid") + ast "It makes the fire feel even better..." ("base", "base", "base", "mid") + ast "{b}doesn't it?{/b}" ("base", "base", "base", "mid") + sus "Ah..." ("base", "base", "base", "base") + sus "It's in..." ("base", "base", "base", "base") + sus "My breasts... They feel so..." ("base", "base", "base", "base") + sus "Ah... I need to..." ("base", "base", "base", "base") + ">Unable to hold back any longer, susan's hands fly towards her breasts before they start to roll and knead the tender globes of flesh..." + sus "Ah.... w-wow..." ("base", "base", "base", "base") + sus "I've never felt anything like..." ("base", "base", "base", "base") + sus "{heart}{heart}{heart}" ("base", "base", "base", "base") + ">As Susan's hands mesmerisingly tend to her own tits, your cock begins to strain in earnest against the girl above." + ">You shamelessly start to hump against astoria, desperate for any stimulation to accompany the sight before you." + ast "Mmmm... your liking this aren't you..." ("base", "base", "base", "mid") + ">Before you can say anything, Susan issues a defeated response..." + sus "yes..." ("base", "base", "base", "base") + ">A cheeky grin forms across Astoria's face as she holds her butt firm against your cock." + ast "Are you going to cum?" ("base", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + sus "..." ("base", "base", "base", "base") + ast "Tell me." ("base", "base", "base", "mid") + gen "y--" ("base", xpos="far_left", ypos="head") + sus "Ah... yes...{heart}" ("base", "base", "base", "base") + ast "Mmmm..." ("base", "base", "base", "mid") + ">Astoria pushes hard into your lap." + gen "*Argh*..." ("base", xpos="far_left", ypos="head") + ast "It makes sense a cow like you would cum from having her udders played with..." ("base", "base", "base", "mid") + ast "Not to mention when she's doing it in front of her headmaster. *tsk*tsk*tsk*" ("base", "base", "base", "mid") + sus "Y-you made me do this!" ("base", "base", "base", "base") + ast "What?" ("base", "base", "base", "mid") + ast "You came up here and asked the headmaster and me to watch you..." ("base", "base", "base", "mid") + ast "Didn't you..." ("base", "base", "base", "mid") + ">Susan struggles unsuccessfully against the effect of the imperio spell." + sus "I don't-- maybe-- I-- why...?" ("base", "base", "base", "base") + ast "Because you wanted Dumbledore and me to know what a nasty slut you were..." ("base", "base", "base", "mid") + ast "You were so proud about being able to cum from just your big gross tits being played with!" ("base", "base", "base", "mid") + sus "I-I'm proud..." ("base", "base", "base", "base") + ">Astoria has begun humping your lap in earnest, punctuating every word with a little thrust." + ast "You should be!" ("base", "base", "base", "mid") + ast "It's not easy cumming from just your tits..." ("base", "base", "base", "mid") + ast "Only the biggest sluts in the world can do it!" ("base", "base", "base", "mid") + sus "... The biggest..." ("base", "base", "base", "base") + ast "That's right..." ("base", "base", "base", "mid") + ast "Now go on..." ("base", "base", "base", "mid") + gen "*Argh*..." ("base", xpos="far_left", ypos="head") + ">Your cock is riding the edge after Astoria's relentless assault." + ast "{b}Cum{/b}" ("base", "base", "base", "mid") + ">Astoria punctuates her sentence by pressing her buttcrack hard against your cock and holding it there as she shakes her butt.." + gen "*ARGH*! FUCK YES!" ("base", xpos="far_left", ypos="head") + ">That, combined with the sight of the innocent redhead cumming helplessly as she claws at her own tits prove too much for your poor cock..." + gen "FUCKING TAKE THIS YOU WHORES!" ("base", xpos="far_left", ypos="head") + sus "{heart}{heart}{heart}" ("base", "base", "base", "base") + ">Your hips writhe desperately against Astoria giggling body as you pump a huge load of cum into the inside of your robe." + gen "Ugh... keep fucking moving..." ("base", xpos="far_left", ypos="head") + ">Both astoria and susan take your advice to heart, the redhead groping her tits anew and the blonde shamelessly grinding against you." + gen "You dirty little sluts..." ("base", xpos="far_left", ypos="head") + ">Your hips slow as your orgasm begins to subside." + gen "Mmmm... that's it..." ("base", xpos="far_left", ypos="head") + ast "All done now sir?" ("base", "base", "base", "mid") + gen "Yeah... I could go for a nap right about now..." ("base", xpos="far_left", ypos="head") + ast "Don't fall asleep now old man, we've still got bessy here putting on a show for us..." ("base", "base", "base", "mid") + sus "*Argh*...{heart}{heart}{heart}" ("base", "base", "base", "base") + sus "I thought..." ("base", "base", "base", "base") + sus "why do...{heart}{heart}{heart} they still feel so {b}gooood{/b}." ("base", "base", "base", "base") + ast "Hmmm... I thought that it would wear off after the first one..." ("base", "base", "base", "mid") + ast "Oh well, I'm bored now." ("base", "base", "base", "mid") + ">Astoria hops off your lap, causing you to notice a huge cum stain on her skirt..." + ast "!!!" ("base", "base", "base", "mid") + ast "Sir!" ("base", "base", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + ast "My butt is {b}covered{/b} in your gross cum!" ("base", "base", "base", "mid") + gen "Well what did you expect after that?" ("base", xpos="far_left", ypos="head") + ast "Hmph!" ("base", "base", "base", "mid") + ast "I expected your robe to stop it all!" ("base", "base", "base", "mid") + ast "Clearly a gross old man like you has way too much cum in those big yucky balls of yours!" ("base", "base", "base", "mid") + ast "Susan!" ("base", "base", "base", "mid") + sus "Y-yes A-Astoria..." ("base", "base", "base", "base") + ast "Clean me up and then go back to class..." ("base", "base", "base", "mid") + ast "Oh, and put your clothes on before you go..." ("base", "base", "base", "mid") + sus "Clean you... how?" ("base", "base", "base", "base") + ast "Lick it up, Bessy!" ("base", "base", "base", "mid") + sus "You can't be serious!" ("base", "base", "base", "base") + ">However, Susan's shock and disgust are undermined by her helpless body moving towards Astoria's skirt." + ast "And make sure you get it all!" ("base", "base", "base", "mid") + sus "I--" ("base", "base", "base", "base") + ast "!!!" ("base", "base", "base", "mid") + ast "Wow, she's really going for it!" ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + gen "..." ("base", xpos="far_left", ypos="head") + ast "I forgot how big cow's tongues were." ("base", "base", "base", "mid") + gen "Alright, that's it. Unless you intend to sort out the problem your creating right now I think you two better head off." ("base", xpos="far_left", ypos="head") + ast "What? Already?" ("base", "base", "base", "mid") + gen "Only if you don't want to hop back up on my lap..." ("base", xpos="far_left", ypos="head") + ">You give your cum-soaked lap an inviting pat." + ast "Ugh, fine. You better be done Susan." ("base", "base", "base", "mid") + ">Susan moves her head away from the Astoria's cute skirt." + sus "Mhmm..." ("base", "base", "base", "base") + ast "Good, well swallow that and head to class." ("base", "base", "base", "mid") + ast "Let me know when you want to try out the next spell..." ("base", "base", "base", "mid") + ">Astoria throws Susan a cheeky grin." + ast "Bye bessy..." ("base", "base", "base", "mid") + ">With that, Astoria hops out of your office, leaving Susan alone to silently collect her clothes and leave, forgetting the whole incident only moments after closing the door." + gen "(I sort of feel bad for her...)" ("base", xpos="far_left", ypos="head") + gen "(No, there's boobs at stake, we have to forge on...)" ("base", xpos="far_left", ypos="head") + jump main_room_menu + + + + + +label hornify_spell_2: #second level hornify spell + ast "Ready to practise that hornify spell again?" ("base", "base", "base", "mid") + gen "Are you sure you wanna practise that one again? We could start to learn a new spell instead." ("base", xpos="far_left", ypos="head") + gen "Don't forget you have to have to visit Tonks each time we try one..." ("base", xpos="far_left", ypos="head") + ast "Pfft, what's she going to do? Make me try on another cute skirt?" ("base", "base", "base", "mid") + ">Astoria gives her hips a quick shake, almost flashing you due to the shortness of it." + ast "I'm soooo scared... Now hurry up and get Bessy here, it's almost milking time!" ("base", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + ">With that you summon the poor redhead up to your office for another session of degrading humiliation." + sus "You wanted to see me sir?" ("base", "base", "base", "base") + ">Susan calmly begins to take her top off, not letting it interrupt her as she greets Astoria." + sus "Oh... H-hi, astoria... what are you doing here?" ("base", "base", "base", "base") + ast "Getting ready to watch a show..." ("base", "base", "base", "mid") + sus "What show?" ("base", "base", "base", "base") + ast "You on your knees while Professor Dumbledore coats you in his sticky, icky cum!" ("base", "base", "base", "mid") + sus "What? I don't--" ("base", "base", "base", "base") + ast "Shhhh.... Don't talk unless I tell you to, OK?" ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + ">Susan nods, a terror in her eyes as she gazes down silently at the smiling blonde." + ast "Now why don't you kneel in front of me right here..." ("base", "base", "base", "mid") + ast "And sir, hurry up and get over here!" ("base", "base", "base", "mid") + gen "Ugh... the things I do to help my students..." ("base", xpos="far_left", ypos="head") + ">You put on a mock air of reluctance as you stroll over to Susan, pulling your cock from it's robe and presenting the imposing thing to a frightened Susan." + ast "Wow..." ("base", "base", "base", "mid") + ast "It's big..." ("base", "base", "base", "mid") + pause + ast "For an old man like you!" ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + ast "Go on then... make it shoot... stuff..." ("base", "base", "base", "mid") + ">You slowly start to stroke your cock only inches from Susan's face..." + gen "If you want this to go a little quicker at least make her move a little..." ("base", xpos="far_left", ypos="head") + ast "Just wait a second sir, I haven't even cast it yet!" ("base", "base", "base", "mid") + sus "???" ("base", "base", "base", "base") + ast "Hornify cum!" ("base", "base", "base", "mid") + ">Another flash as the pink bolt of lightning shoots from the end of astoria's wand and strikes susan's head." + sus "!!!" ("base", "base", "base", "base") + ">Susan's hips immediately start to quiver as she struggles to maintain her composure." + ast "Now what this spell does, susy, is it makes you feel really good..." ("base", "base", "base", "mid") + ast "Once you cover yourself in the headmaster's gross smelly cum..." ("base", "base", "base", "mid") + sus "!!!!!!" ("base", "base", "base", "base") + ast "Until then..." ("base", "base", "base", "mid") + ast "Well... you're slutty, little brain won't be able to think of much else..." ("base", "base", "base", "mid") + ast "So why don't you help the headmaster out and give him a little show, hmmm?" ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + ast "You can speak now Bessy..." ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + sus "{size=-5}Please sir...{/size}" ("base", "base", "base", "base") + sus "cover me..." ("base", "base", "base", "base") + gen "Mmmm, keep shaking those tits of yours and I won't have any other option!" ("base", xpos="far_left", ypos="head") + ast "hahahaha" ("base", "base", "base", "mid") + sus "*sob*T-thank you sir *sob*" ("base", "base", "base", "base") + ast "Awww, is little susy sad that her tits are gonna be covered in cum?" ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + ast "Or maybe you're crying because your headmaster hasn't cum yet...?" ("base", "base", "base", "mid") + sus "*sob*I-I am not..." ("base", "base", "base", "base") + ast "So you don't want Dumbledore to cum all over you then?" ("base", "base", "base", "mid") + sus "I didn't say that!" ("base", "base", "base", "base") + ast "haha, typical. You Hufflepuff whores are always after one thing." ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + ast "Maybe this would go faster if you sucked on dumbledore's gross old cock..." ("base", "base", "base", "mid") + sus "What? You can't be serious! Isn't this enough?" ("base", "base", "base", "base") + ast "I don't know... Is it, sir?" ("base", "base", "base", "mid") + menu: + "-\"This is fine.\"-": + ast "*pfft*" ("base", "base", "base", "mid") + sus "really?" ("base", "base", "base", "base") + sus "You mean I don't have to..." ("base", "base", "base", "base") + sus "{b}suck{/b} it..." ("base", "base", "base", "base") + gen "Not unless you want to. It'd probably speed things up a bit though..." ("base", xpos="far_left", ypos="head") + sus "..." ("base", "base", "base", "base") + sus "..." ("base", "base", "base", "base") + "-\"Suck it!\"-": + sus "Professor dumbledore!" ("base", "base", "base", "base") + ast "See! I told you he wants you to suck it!" ("base", "base", "base", "mid") + ast "Open Wide slut!" ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + sus "..." ("base", "base", "base", "base") + ">With that, Susan closes her eyes and nervously puts the head of your cock in her mouth..." + sus "!!!" ("base", "base", "base", "base") + sus "It's disgusting!" ("base", "base", "base", "base") + ast "HAHAHAHAHAHA" ("base", "base", "base", "mid") + gen "Now, now [susan_name]..." ("base", xpos="far_left", ypos="head") + ast "Yeah, susy, don't be rude to the headmaster!" ("base", "base", "base", "mid") + sus "But, but--" ("base", "base", "base", "base") + ast "Hornify cock!" ("base", "base", "base", "mid") + ">Another flash of lightning erupts from the Slytherin's wand as it flies towards poor Susan..." + ">Susan's eyes lock forward in a mixture of pleasure and fear as she plunges her inexperienced mouth onto your cock." + ast "There, not so gross now is it, Susy?" ("base", "base", "base", "mid") + sus "*Slrp*glp*slrp*" ("base", "base", "base", "base") + ">Susan just runs her tongue as fast as she can along the underside your cock as she holds the tip in her mouth." + gen "Ugh... slow down there [susan_name]..." ("base", xpos="far_left", ypos="head") + ast "Mmmmm, this look suits you, susy..." ("base", "base", "base", "mid") + sus "*Slrp*glp*slrp*" ("base", "base", "base", "base") + gen "Ugh... are you sure you should have cast it twice?" ("base", xpos="far_left", ypos="head") + sus "*Slrp*glp*slrp*?" ("base", "base", "base", "base") + ast "It'll be fine... Exponential can't be that much more can it?" ("base", "base", "base", "mid") + sus "*Slrp*!!!*glp*" ("base", "base", "base", "base") + ast "She's not even feeling them both yet anyway..." ("base", "base", "base", "mid") + sus "*Slrp*glp*slrp*" ("base", "base", "base", "base") + ">Susan's mouth softly cradles your cock as she assaults the tip..." + sus "*Slrp*glp*slrp*" ("base", "base", "base", "base") + gen "Ugh... I said slow down slut!" ("base", xpos="far_left", ypos="head") + sus "*Slrp*glp*slrp*" ("base", "base", "base", "base") + ">Susan refuses to acknowledge you, desperate to drain you as fast as she can..." + ast "Mmmm, that's it bessy..." ("base", "base", "base", "mid") + ast "Are you ready yet, sir?" ("base", "base", "base", "mid") + gen "Ugh... almost there..." ("base", xpos="far_left", ypos="head") + ">Astoria leans in close to Susan." + sus "*Slrp*glp*slrp*" ("base", "base", "base", "base") + ast "{size=-5}Hear that? He's going to coat you with his nasty cum...{/size}" ("base", "base", "base", "mid") + sus "*Slrp{heart}*glp*{heart}slrp*" ("base", "base", "base", "base") + gen "*ARGH*, THAT'S IT YOU LITTLE WHORES!" ("angry", xpos="far_left", ypos="head") + ast "Get ready slut--" ("base", "base", "base", "mid") + sus "*Slrp{heart}*!!!*{heart}slrp*" ("base", "base", "base", "base") + ">Your cock can handle Susan's amateur tongue no longer." + gen "AHH TAKE THIS SLUTS!" ("angry", xpos="far_left", ypos="head") + ">You pull your dick out of Susan's mouth with a satisfying pop as it begins to fire its load." + sus "!!!" ("base", "base", "base", "base") + ast "Told you!" ("base", "base", "base", "mid") + ">You close your eyes as you furiously jerk your cock off onto Susan's blank face..." + sus "... this..." ("base", "base", "base", "base") + ">With that, Susan's mind seems to have taken too much, saving the poor girl from the excess pleasure by fainting..." + sus "..." ("base", "base", "base", "base") + ">She slumps to the floor, her hips still jerking intermittently..." + ast "..." ("base", "base", "base", "mid") + gen "!!!" ("base", xpos="far_left", ypos="head") + ast "Hahahaha! I guess casting it twice was too much for poor old Bessy." ("base", "base", "base", "mid") + ast "Looks like you were right for once, sir." ("base", "base", "base", "mid") + gen "Well we'll know for next time." ("base", xpos="far_left", ypos="head") + ast "Are you kidding? Someone like Susan deserves way worse than this!" ("base", "base", "base", "mid") + gen "...(What's she got against this girl?)" ("base", xpos="far_left", ypos="head") + ast "Good job by the way, sir, you covered her! I can smell her from here..." ("base", "base", "base", "mid") + gen "About that..." ("base", xpos="far_left", ypos="head") + ast "Not now, sir, I wanna wake her up." ("base", "base", "base", "mid") + ast "Surgere!" ("base", "base", "base", "mid") + ">A brief flash of white appears at the end of Astoria's wand." + sus "W-w-wha happened? where am I?" ("base", "base", "base", "base") + ast "Don't you remember professor dumbledore's wrinkly old cock coating you in his nasty, smelly cum?" ("base", "base", "base", "mid") + ast "Hmmm?" ("base", "base", "base", "mid") + sus "I-i Stop--" ("base", "base", "base", "base") + ast "Shhh..." ("base", "base", "base", "mid") + sus "!!!" ("base", "base", "base", "base") + ast "I think I'm getting sick of smelling you honestly..." ("base", "base", "base", "mid") + ast "Why don't you head back to your room." ("base", "base", "base", "mid") + sus "!!!" ("base", "base", "base", "base") + ast "Take the scenic route, I think you'll need the fresh air..." ("base", "base", "base", "mid") + sus "!!!" ("base", "base", "base", "base") + ">You can see a desperate pleading in the poor redheads eyes as she realises the humiliation she's about to endure..." + gen "don't you think that's a little much [astoria_name]?" ("base", xpos="far_left", ypos="head") + ast "Pfft, no... Besides, Everyone already stares at her big tits, it's not like anything will change..." ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + ast "Bye bye, Susy, don't forget to have fun!" ("base", "base", "base", "mid") + ast "And no magic to hide or clean up the headmaster's cum either!" ("base", "base", "base", "mid") + sus "......" ("base", "base", "base", "base") + ">With that, Susan silently walks a death march towards the door..." + ">The door closes behind the cum drenched redhead as she puts her clothes back on and forgets the entire encounter..." + ast "hahaha, everyone's going to be talking about this for weeks!" ("base", "base", "base", "mid") + gen "You don't think you're taking this too far?" ("base", xpos="far_left", ypos="head") + ast "Not far enough! besides, who's going to punish me? you?" ("base", "base", "base", "mid") + gen "I'm not the one to worry about... Don't forget tonkerbell..." ("base", xpos="far_left", ypos="head") + ast "I'm sooo scared... What's she going to do?" ("base", "base", "base", "mid") + gen "She is Susan's aunt." ("base", xpos="far_left", ypos="head") + ast "And a huge perv like you! I've got her wrapped around my finger." ("base", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + ast "Speaking of, I better go see her now..." ("base", "base", "base", "mid") + gen "Have fun..." ("base", xpos="far_left", ypos="head") + ast "I will, she's probably got some more cool clothes for me." ("base", "base", "base", "mid") + ast "See ya, sir!" ("base", "base", "base", "mid") + ">With that, Astoria turns and walk out the door on the way to tonks' office..." + gen "Hmmm..." ("base", xpos="far_left", ypos="head") + jump main_room_menu + + + + + + + + + + +label hornify_spell_3: #third level hornify spell + ">Astoria quickly walks around your desk and hops up onto your lap." + gen "What's the special occasion?" ("base", xpos="far_left", ypos="head") + ast "You want to practise that spell don't you?" ("base", "base", "base", "mid") + ">Astoria starts shamelessly rolling her hips on your cock." + ast "I'm just getting ready..." ("base", "base", "base", "mid") + ">Astoria then gives her butt a little wriggle until your cock is resting in-between her butt cheeks." + ast "There, you can bring susy up here now..." ("base", "base", "base", "mid") + gen "You're comfortable sitting here then?" ("base", xpos="far_left", ypos="head") + ast "Hmph, I need something soft after what that meanie Tonks did!" ("base", "base", "base", "mid") + ast "Besides, a filthy old man like you should count their lucky stars I'm sitting here..." ("base", "base", "base", "mid") + gen "Suit yourself... but don't say I didn't warn you..." ("base", xpos="far_left", ypos="head") + ">With that you give a playful thrust into Astoria before summoning Susan up to your office." + sus "Hello Professor Dumbledore." ("base", "base", "base", "base") + sus "Oh... um... hello Astoria..." ("base", "base", "base", "base") + sus "You wanted to see me sir?" ("base", "base", "base", "base") + ast "Pfft... you bet he does..." ("base", "base", "base", "mid") + ">Astoria wriggles her bum against your cock to make her point..." + sus "Astoria!" ("base", "base", "base", "base") + ast "Shhhh, Susy... just stay still for a sec, OK?" ("base", "base", "base", "mid") + ">Susan's bodies stiffens in response to Astoria's lingering spell." + sus "..." ("base", "base", "base", "base") + ast "You ready to go, sir?" ("base", "base", "base", "mid") + gen "I don't see why not." ("base", xpos="far_left", ypos="head") + ast "Ready, Susy?" ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + ">A look of fear forms in Susan's eyes..." + ast "Hornify uniform!" ("base", "base", "base", "mid") + ">A pink flash erupts from the end of Astoria's wand..." + sus "!!!" ("base", "base", "base", "base") + gen "Her uniform?" ("base", xpos="far_left", ypos="head") + ast "What? You've got a problem with it?" ("base", "base", "base", "mid") + gen "no, no, it's just a little tame compared to last time..." ("base", xpos="far_left", ypos="head") + gen "Maybe tonks really did teach you a lesson." ("base", xpos="far_left", ypos="head") + ast "Pfft as if! I wasn't even done yet!" ("base", "base", "base", "mid") + ast "hornify exhibitionism!" ("base", "base", "base", "mid") + sus "!!!" ("base", "base", "base", "base") + gen "Hmmm, that's a little more interesting..." ("base", xpos="far_left", ypos="head") + ast "Not done yet!" ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + ast "Susy, walk out and come back in!" ("base", "base", "base", "mid") + ">Susan turns and walks outside, closing the large door behind her." + gen "What's that supposed to do?" ("base", xpos="far_left", ypos="head") + ast "So she forgets about the spells!" ("base", "base", "base", "mid") + ast "This way we can trick her into thinking she came to us..." ("base", "base", "base", "mid") + ">With that the door swings open as Susan bones enters." + sus "Hello Professor Dumbledore." ("base", "base", "base", "base") + sus "Oh... um... hello Astoria..." ("base", "base", "base", "base") + sus "W-Why are you sitting on Dumbledore's lap?" ("base", "base", "base", "base") + ast "Because it's the softest place in the room." ("base", "base", "base", "mid") + sus "Oh, ah o-ok then..." ("base", "base", "base", "base") + ">You notice a red flush appear over Susan's face as her thighs slowly start to roll together." + sus "D-did you want to {b}see{/b} me sir?" ("base", "base", "base", "base") + ast "Don't you remember why you're here, susy?" ("base", "base", "base", "mid") + sus "U-um... I thought you... I-I guess not..." ("base", "base", "base", "base") + ast "You wanted to show Dumbledore and me your plans for the new Hufflepuff uniform." ("base", "base", "base", "mid") + sus "I-I did?" ("base", "base", "base", "base") + ast "Mhmm! Something about the current one being way too \"prudish\"!" ("base", "base", "base", "base") + ast "Isn't that right Dumbledore?" ("base", "base", "base", "mid") + ">Astoria pushes hard into your cock..." + gen "I do seem to remember the word conservative being thrown around..." ("base", xpos="far_left", ypos="head") + sus "So you two are going sit there and {b}watch{/b} me..." ("base", "base", "base", "base") + sus "-while I show off my new {b}uniform{/b}..." ("base", "base", "base", "base") + ast "If you don't want t--" ("base", "base", "base", "mid") + sus "NO! Ugh... I mean, no, I want to show you..." ("base", "base", "base", "base") + ast "Show us what?" ("base", "base", "base", "mid") + sus "My... new uniform..." ("base", "base", "base", "base") + ">Astoria begins rocking her hips slowly on your lap." + ast "Well, go on then..." ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + sus "Ok..." ("base", "base", "base", "base") + ">You notice the desperate need and lust in Susan's voice begin to overtake her nervousness..." + sus "The first thing I t-think needs to be changed is the s-skirt..." ("base", "base", "base", "base") + ast "Really? How's that?" ("base", "base", "base", "mid") + ">Astoria changes her rocking motion from forwards and backwards to side to side." + sus "I think it needs to be shor-shorter..." ("base", "base", "base", "base") + ast "Shorter?" ("base", "base", "base", "mid") + sus "Mhmm..." ("base", "base", "base", "base") + ast "How much shorter?" ("base", "base", "base", "mid") + sus "Well, um, a fair--" ("base", "base", "base", "base") + ast "Why don't you show us..." ("base", "base", "base", "mid") + ">Astoria presses your cock hard into her buttcrack..." + gen "Ugh..." ("base", xpos="far_left", ypos="head") + sus "Here?... in front of..." ("base", "base", "base", "base") + ast "Go on..." ("base", "base", "base", "mid") + sus "A-Alright..." ("base", "base", "base", "base") + sus "I ugh... think that the skirt should--" ("base", "base", "base", "base") + ">Susan starts to fold it inwards at the belt, causing it to ride up..." + sus "probably at least..." ("base", "base", "base", "base") + sus "This short..." ("base", "base", "base", "base") + ">The shy redhead stands before you with her skirt irresistibly rolled up as high as it can go..." + gen "You don't think that's a little too high Ms Bones?" ("base", xpos="far_left", ypos="head") + ">You look down and notice the desperate redhead's juices start to drip down from underneath the tiny skirt..." + sus "I-I don't think so..." ("base", "base", "base", "base") + ast "Really? I can make out your panties!" ("base", "base", "base", "mid") + sus "You can?..." ("base", "base", "base", "base") + sus "..." ("base", "base", "base", "base") + ">You notice Susan's thighs squeeze together helplessly in pleasure." + sus "well a-anyway, I think this is a good length for the hufflepuff uniform..." ("base", "base", "base", "base") + ast "I bet you do..." ("base", "base", "base", "mid") + sus "W-what do you think sir?" ("base", "base", "base", "base") + ">You start to rock your hips against Astoria, causing her to bob up and down in front of Susan as you answer..." + menu: + "-Shorter-": + gen "I'd say you could stand to go a little shorter..." ("base", xpos="far_left", ypos="head") + sus "Really? Thank you sir..." ("base", "base", "base", "base") + ">With that, Susan starts to roll up her skirt a little more, shamelessly bringing her soaked panties into view..." + ast "Wow, that took a lot of convincing..." ("base", "base", "base", "mid") + ">Astoria speeds up her hips as she starts to bounce on your lap." + sus "Well it's not my fault the school skirt is so horribly long!" ("base", "base", "base", "base") + ast "Of course not..." ("base", "base", "base", "mid") + "-It's fine-": + gen "That's short enough i'd say..." ("base", xpos="far_left", ypos="head") + sus "Really? You don't want it a little..." ("base", "base", "base", "base") + ast "Sir! Of course he wants it shorter!" ("base", "base", "base", "mid") + sus "b-but he said..." ("base", "base", "base", "base") + ast "You want it shorter, don't you, sir?" ("base", "base", "base", "mid") + ">Astoria presses her ass into your cock with a playful hop." + gen "Ugh... gods yes..." ("base", xpos="far_left", ypos="head") + sus "..." ("base", "base", "base", "base") + ">Susan has a guilty smirk on her lips as she rolls her skirt ever so higher, showing off her soaked panties..." + gen "Well I don't think anyone could complain about a skirt like that..." ("base", xpos="far_left", ypos="head") + sus "T-thank you s-sir..." ("base", "base", "base", "base") + ast "That's not all though is it, Susy?" ("base", "base", "base", "mid") + sus "N-no..." ("base", "base", "base", "base") + ast "I think you want to change your top as well don't you?" ("base", "base", "base", "mid") + sus "Ah... yes... I want to show you... my...{w=0.4} ideas..." ("base", "base", "base", "base") + ast "Mmmm... go on then..." ("base", "base", "base", "mid") + ">Astoria has shamelessly started to grind against your cock while teasing the poor redhead..." + sus "First th-things first... The vest needs to go..." ("base", "base", "base", "base") + ast "..." ("base", "base", "base", "mid") + ">Astoria silently watches as Susan throws her vest to the ground..." + ast "What's next?" ("base", "base", "base", "mid") + sus "Well I think it should be a rule that..." ("base", "base", "base", "base") + ">Astoria's hips continue to grind against you, a needy heat beginning to emanate from them..." + sus "You shouldn't be allowed to do up your first two buttons on your shirt..." ("base", "base", "base", "base") + ast "Why's that?" ("base", "base", "base", "mid") + sus "Oh... um... it's so that you don't overheat in class..." ("base", "base", "base", "base") + ast "Overheat?" ("base", "base", "base", "mid") + sus "Um... as well as it helps to, um..." ("base", "base", "base", "base") + ast "Shhh, keep going..." ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + ">Susan's thighs start to shamelessly drip as she continues to debase her uniform for Astoria and yourself." + sus "Well... I also think that you should roll the bottom up and through the middle too..." ("base", "base", "base", "base") + ">With that Susan flips her top to make it little more than a tube top in front of the two of you..." + sus "There... I-I think that this should be the new Hufflepuff uniform..." ("base", "base", "base", "base") + ">With that, Susan stands still, proudly presenting her slutty attire to you and the Slytherin grinding on your cock." + pause + ast "Is that all?" ("base", "base", "base", "mid") + sus "I think so..." ("base", "base", "base", "base") + sus "So what do you think?" ("base", "base", "base", "base") + ast "It'll definitely get rid of the idea that hufflepuff are prudes!" ("base", "base", "base", "mid") + sus "..." ("base", "base", "base", "base") + sus "What do you think, sir?" ("base", "base", "base", "base") + ">Before you're able to muster a response, Astoria shamelessly starts grinding in front of Susan, doing everything she can to shame the poor girl..." + ast "Mmmm, the headmaster sure feels like he likes it..." ("base", "base", "base", "mid") + sus "Feels like--" ("base", "base", "base", "base") + sus "You mean?" ("base", "base", "base", "base") + ast "Yep, his nasty old cock is all hard from having to look at your slutty little uniform..." ("base", "base", "base", "mid") + ">A look of both shame and extreme arousal pass over Susan's face as her hips start to quiver..." + sus "Is it true sir... Do you think this uniform is too {b}slutty{/b}?" ("base", "base", "base", "base") + menu: + "-Shame her-": + gen "Of course girl!" ("base", xpos="far_left", ypos="head") + ast "..." ("base", "base", "base", "mid") + ">Astoria continues to encourage you along with her playful lap dance..." + gen "You expect to dress like that and not be called a whore?" ("base", xpos="far_left", ypos="head") + sus "I-I-I was just trying" ("base", "base", "base", "base") + gen "To what? Get me to cum just by looking at you?" ("base", xpos="far_left", ypos="head") + sus "..." ("base", "base", "base", "base") + ast "She isn't far off from the feel of you..." ("base", "base", "base", "mid") + ">Astoria gives a forceful rub to the tip of your cock..." + gen "Urghh... You're not helping you little minx..." ("base", xpos="far_left", ypos="head") + sus "So I shouldn't dress like this then?" ("base", "base", "base", "base") + + "-Be nice...-": + gen "Nonsense, a girl is only as slutty as she acts..." ("base", xpos="far_left", ypos="head") + gen "I'm sure you'll be able to go to classes and act normally dressed like that..." ("base", xpos="far_left", ypos="head") + ast "Really sir? It wouldn't surprise me if Susy rubs one out in the middle of class!" ("base", "base", "base", "mid") + sus "Astoria! I would never do such a thing sir!" ("base", "base", "base", "base") + sus "Can you imagine what people would say if they s-saw me touching myself in class!" ("base", "base", "base", "base") + sus "There would be talk for weeks about how much of a {b}slut{/b} I am and how I should so {b}ashamed{/b}..." ("base", "base", "base", "base") + ">Susan's hips spasm with need..." + sus "Maybe I shouldn't go to class like this..." ("base", "base", "base", "base") + ast "Nonsense! You have to go to class and show everyone your cute new uniform!" ("base", "base", "base", "mid") + sus "I do?" ("base", "base", "base", "base") + ast "Mhmm! How else are you going to get people's opinions about it?" ("base", "base", "base", "mid") + sus "Y-you're right!" ("base", "base", "base", "base") + sus "I know, I should make a petition!" ("base", "base", "base", "base") + ast "*pffft*" ("base", "base", "base", "mid") + ast "That's a great idea Susie! Why don't you ask as many people as you can about your new uniform!" ("base", "base", "base", "mid") + sus "How many do I need to get to make this Hufflepuffs new uniform?" ("base", "base", "base", "base") + menu: + "-Ten-": + gen "Ten should do." ("base", xpos="far_left", ypos="head") + sus "Only ten?!" ("base", "base", "base", "base") + sus "I'll have this done before lunch!" ("base", "base", "base", "base") + ast "Yeah, that's not enough, sir!" ("base", "base", "base", "mid") + sus "Astoria!" ("base", "base", "base", "base") + ast "Fine, I guess that just means he must really like your uniform..." ("base", "base", "base", "mid") + "-Fifty-": + gen "Fifty signatures would probably be enough..." ("base", xpos="far_left", ypos="head") + sus "OK sir, I'll try my hardest to get that many!" ("base", "base", "base", "base") + "-One hundred-": + gen "One hundred." ("base", xpos="far_left", ypos="head") + sus "One hundred?!" ("base", "base", "base", "base") + sus "I can't get one hundred signatures in just one day!" ("base", "base", "base", "base") + sus "Especially not if I go to all my classes..." ("base", "base", "base", "base") + ast "Just skip them!" ("base", "base", "base", "mid") + sus "Play hooky?" ("base", "base", "base", "base") + sus "What would everyone think!" ("base", "base", "base", "base") + sus "Well, I better get to class then!" ("base", "base", "base", "base") + ast "Have fun, Susy..." ("base", "base", "base", "mid") + ">With that, the excited, ashamed and scantily dressed girl blindly exited your office with a horny little smile on her face." + ast "Pfft, I can't wait to hear the rumours going around about Susie the Floozy once she asks for signatures for that uniform!" ("base", "base", "base", "mid") + ast "This is going to be great! I'm going to chase her around to see what people say." ("base", "base", "base", "mid") + ">Astoria hops off of your lap, ready to chase after the redheaded slut..." + gen "Wait a minute, you don't plan on leaving me like this do you?" ("base", xpos="far_left", ypos="head") + ast "You mean your gross!" ("base", "base", "base", "mid") + ast "Your lucky I sat on your lap today! If you think I'm going to actually touch that monster of yours..." ("base", "base", "base", "mid") + ast "That's what Susie's for!" ("base", "base", "base", "mid") + gen "Well why didn't you get her to deal with this then?" ("base", xpos="far_left", ypos="head") + ast "You know what happens if I send her out with your cum all over her..." ("base", "base", "base", "mid") + ast "Just be a good headmaster and wait for Susy to come back later today." ("base", "base", "base", "mid") + gen "Ugh, fine... But it's not good to leave a man with blue balls..." ("base", xpos="far_left", ypos="head") + ast "Ew... sir!" ("base", "base", "base", "mid") + ">Astoria then rushes off to watch the flaming wreck that is Susan's social life..." + gen "..." ("base", xpos="far_left", ypos="head") + jump main_room_menu + + + +label sluttify_spell_1: #first level sluttify spell + #Pink heart dress and no underwear + #Susan greatly embarrassed + #Tonks comes in after the petition incident + #Susan relieved to see her and have some protection + #Tonks ignores her and immediately starts talking to astoria and genie + #Astoria explains the imperio stuff before tonks agrees and asks to watch the rest of the show + #Susan is shocked but forced to stay silent while the three watch her degrade herself + #Astoria asks if there are any other spells tonks wants cast + #Astoria explains the hornify one + #Tonks says maybe next time + +label sluttify_spell_2: #second level sluttify spell + #Astoria and tonks come up to the office and start talking the plan for what they'll do to Susan today + #Tonks pusing the envelope further than Astoria, curious to see the hornify spell in action + #Summon susan up to the office + #Sluttify and hornify boobs her + #Astoria on your lap while Tonks starts touching herself + #Everyone else shocked + #Tonks tells astoria off for grinding one out of her headmaster, tells you off for everything and tells susan off for being so sexy before resuming touching herself + #Everyone goes back to looking at susan + #she starts playing with her boobs while calling everyone else perverts + #Calls tonks out as Auntie causing her to orgasm + #Tonks then gets bored, tells you two to tidy yourselves up before leaving + +label sluttify_spell_3: #third level sluttify spell + #Pink heart dress and no underwear + #Have Tonks come up excited, talking about she hasn't come that hard in years + #Tells Astoria to hop up on dumbledore's lap so they can get started + #Have Astoria use sluttify and hornify incest + #Tonks excited + #Aggressively starts teasing susan while playing with herself + #Your cock gets hard, causing Astoria to pull it out and put it in between her legs + #Start thigh fucking astoria as susan and tonks get eachother off + #Tonks asks astoria to hit her with hornify boobs again + #Genie goes to tell her about the two hornifies being too strong before astoria cuts him off by casting it + #Susan shamefully orgasms in front of everyone + #You fill Astoria's skirt with cum + #Tonks notices and starts cumming + #Tonks leaves, tells you to tidy up susan before sending her home + #Astoria excited by how much Tonks is getting into it, ignores your huge load + + +label orgasmio_spell_1: #first level orgasmio spell + #Mild orgasm +label orgasmio_spell_2: #second level orgasmio spell + #Intense orgasm +label orgasmio_spell_3: #third level orgasmio spell + #Extreme orgasm, Astoria casts the spell multiple times + +label tentacle_spell_1: #first level tentacle spell + #Mild tentacle orgasm for susan and mild intercrural sex between genie and ast +label tentacle_spell_2: #second level tentacle spell + #Extreme tentacle orgasm for susan and borderline sex between genie and ast +label tentacle_spell_3: #third level tentacle spell + #Extreme tentacles and hornify for Susan, Astoria cums on genie's dick rubbing against her pussy + +label hermione_spell: #Branching path event based on Astoria and Genie casting spells on Hermione. + gen "Ready to practise some more spells?" ("base", xpos="far_left", ypos="head") + ast "You bet! What are we going to {b}blast{/b} Susan with today?" + gen "Actually, I was thinking we could bring someone else up..." ("base", xpos="far_left", ypos="head") + ast "Really?" + ast "I don't know about this, sir... It's not one of my friends is it?" + gen "Are you friends with Hermione Granger?" ("base", xpos="far_left", ypos="head") + ast "That know-it-all {b}bitch{/b}?!" + ast "Bring her up here..." + gen "So you're not friends then?" ("base", xpos="far_left", ypos="head") + ast "Friends? Hermione's worse than Susan! She's worse than anyone!" + ast "She's so high and mighty with her high grades and her big tits! *ARGH*!!!" + ast "I swear she gets off on rubbing both of them in everyone's face!" + gen "I guess I'll bring her up here then..." ("base", xpos="far_left", ypos="head") + ast "You better..." + ">With that, you summon Hermione up to your office..." + her "Hello [genie_name], you wanted to see me?" + her "Oh... Hello Astoria..." + ast "..." + her "Did you two want anything?" + ast "Only this..." + ">Astoria is giddy with excitement as she slowly pulls her wand from her pocket..." + ">however, Hermione realises her intentions immediately, pulling her wand out in response!" + her "Petrificus TOTALUS!" + ">Hermione launches a bolt from the end of her wand towards the small witch in front of you." + menu: + "-Move her out of the way-": + jump astoria_leash_walk + "-Let her take it-": + jump hermione_breaks_astoria + + + + + +label hermione_breaks_astoria: + ">You sit there and watch as Astoria takes the full brunt of the spell, locking her body together like a plank of wood." + her "[genie_name]! What are you doing?" + gen "What? I wasn't going to cast a spell on you?" ("base", xpos="far_left", ypos="head") + her "But you were just going to let her hex me?" + gen "I guess... I wasn't going to let her do anything too bad..." ("base", xpos="far_left", ypos="head") + her "What was she going to cast?" + gen "Um... I can't remember the name of it..." ("base", xpos="far_left", ypos="head") + her "Tell. Me." + gen "I think it was imperial or something..." ("base", xpos="far_left", ypos="head") + her "IMPERIO?! You were going to let her cast {b}imperio{/b} on me?" + gen "Just to play around... At worst she would have made you show me your boobs." ("base", xpos="far_left", ypos="head") + her "If you let her cast Imperio on me she can make me do {b}anything{/b}!" + ast "..." + her "honestly, [genie_name]..." + gen "It wasn't my idea..." ("base", xpos="far_left", ypos="head") + ast "*(Snitch!)*" + her "*Pfft* Of course it was {b}her{/b} Idea..." + her "Nasty Slytherins... She probably tricked you into letting her do it somehow..." + gen "..." ("base", xpos="far_left", ypos="head") + her "Still, I hope you'll do the right thing for once and punish her for trying to cast an unforgivable curse?" + menu: + "-Let Hermione punish Astoria-": + gen "Actually, I think it's only fair you get to take care of it." ("base", xpos="far_left", ypos="head") + gen "You were going to be the victim after all." ("base", xpos="far_left", ypos="head") + her "Wait... You want me to be the one to {b}punish{/b} her?" + gen "Only if you--" ("base", xpos="far_left", ypos="head") + her "I accept!" + gen "That was quick." ("base", xpos="far_left", ypos="head") + her "Are you kidding? This is the opportunity of a lifetime!" + ast "..." + her "Finally, a chance to get back at these nasty witches..." + gen "So, what's the plan?" ("base", xpos="far_left", ypos="head") + her "Don't think you get to be involved, [genie_name]!" + gen "What? Why not?" ("base", xpos="far_left", ypos="head") + her "You were going to let her cast it! You're just as much at fault as her!" + gen "I feel like we're getting bogged down in semantics..." ("base", xpos="far_left", ypos="head") + her "Ugh... Your punishment is that you don't get to be involved at all..." + gen "Aww..." ("base", xpos="far_left", ypos="head") + her "Now come on Astoria... You've got a date with the Gryffindor glory hole..." + ast "!!!" + her "Ready?" + ast "!!!" + her "Imperio..." + ">The green smoke flies from hermione wand and up Astoria's nose before filling her eyes..." + her "Follow me..." + ">With that Hermione and a helpless astoria wander out of your office..." + gen "(Greedy bitch... What am I supposed to do now?)" ("base", xpos="far_left", ypos="head") + jump main_room + + + "-Take care if it yourself-": + pass + gen "I'll take it from here then..." ("base", xpos="far_left", ypos="head") + ast "(Phew...)" + her "Oh no... You've just agreed to punish her..." + her "You don't get to decide how..." + ast "(Oh no...)" + her "Petrificus totalus really is a fun spell... I'm not sure if you know this Astoria, but you can be posed just like a Barbie doll..." + ">To prove her point, Hermione steps over to Astoria and folds her arms upwards in mock shock." + her "See?" + ast "..." + her "I could even bend you over the desk..." + ast "!!!" + her "Pull your skirt up..." + ast "..." + her "And just let [genie_name] have his way with you..." + ast "..." + her "Would you like that? Hmm? Was that what you were going to do to me?" + ast "..." + her "Have you seen [genie_name]'s cock though? It's huge... It'd probably break your tight little pussy..." + her "Not that you wouldn't love it... If I let you, you'd probably scream for more..." + her "But that's not what we're going to do {b}today{/b}..." + "With that, Hermione steps forward and grabs a hold of your cock..." + her "We're playing a different game..." + ast "..." + her "We're playing the game of cumrag!" + ast "!!!" + her "[genie_name]'s got the cum..." + ">With that, Hermione begins to enthusiastically start jerking you off." + her "And you get to be the rag!" + ast "!!!" + her "Doesn't that sound like fun?" + ast "..." + her "Oh wait... I forgot that you can't talk..." + #Latin for hermione unparalyzing astoria's mouth + ast "Screw you, mudblood!" + ">As soon as the words exit her mouth, hermione's hand flies from her side to slap Astoria's face. Hard." + ast "!!!" + her "You slytherins... All you do is spit venom..." + ">Hermione goes back to jerking you off..." + her "About time you got a bit thrown back at you..." + ast "What? You think making the headmaster cum on me is going to change anything?" + her "Probably not... I don't think I can change an evil little witch like you..." + ast "..." + her "But that doesn't mean that I shouldn't at least try to teach you a lesson." + ast "How to jerk off old man cock? Ha, I bet you're an expert..." + gen "Mmmmm... That she is..." ("base", xpos="far_left", ypos="head") + her "Thank you, sir..." + ast "Wait...{w=0.4} how often has she been coming up here, sir?" + gen "Oh, um... A little bit..." ("base", xpos="far_left", ypos="head") + her "*ahem*" + gen "OK... A lot..." ("base", xpos="far_left", ypos="head") + ast "Then why did you suggest her for spell practice, unless..." + ast "You did this on purpose, didn't you sir!" + gen "I don--" ("base", xpos="far_left", ypos="head") + her "Of course he did! He'd never let me get hit with your curse, would you [genie_name]?" + gen "O-of course not..." ("base", xpos="far_left", ypos="head") + her "See... He probably just needed some help to {b}break{/b} you in..." + ast "That's not... You wouldn't do that would you sir?" + gen "..." ("base", xpos="far_left", ypos="head") + ast "sir!" + her "Ugh... I'm sick of listening to you blabber on..." + her "Petrificus totalus!" + ">Another flash as Hermione paralyses Astoria once more." + ast "!!!" + her "There, much better... Now, are you almost there, [genie_name]?" + gen "Ugh... almost..." ("base", xpos="far_left", ypos="head") + her "Need a little more... {b}stimulation{/b}?" + gen "Mmmm... What did you have in mind?" ("base", xpos="far_left", ypos="head") + her "I could show you my breasts..." + her "Or... I could show you {b}hers{/b}..." + menu: + "-Hermione's-": + gen "Yours will do nicely, [hermione_name]." ("base", xpos="far_left", ypos="head") + ast "..." + her "Hmmm, I don't know why I even asked, it's not like Astoria has boobs anyway." + ast "!!!" + #Hermione pulls up her top + gen "Ugh... that's it slut, don't stop..." ("base", xpos="far_left", ypos="head") + ast "..." + pass + + + + "-Astoria's-": + gen "Why don't we sneak a peek at Miss Greengrass..." ("base", xpos="far_left", ypos="head") + her "Really? I don't think there'll be much to see..." + ast "..." + gen "Humour me." ("base", xpos="far_left", ypos="head") + ">With that, Hermione pulls off Astoria's top as if she were changing the costume on a doll." + her "ha, they're even smaller than I though!" + ast "..." + ">Hermione's starts rolling her hand around the tip of your cock, smearing it in pre-cum." + gen "Ugh... that's it slut, don't stop..." ("base", xpos="far_left", ypos="head") + ast "..." + pass + gen "mmm... here it comes you little sluts..." ("base", xpos="far_left", ypos="head") + her "Ready Astoria?" + ast "!!!" + gen "*ARGH*! TAKE THIS YOU LITTLE WHORE!" ("grin", xpos="far_left", ypos="head") + ">Your cock explodes, coating the poor Slytherin in cum while hermione mercilessly pumps you dry." + her "Mmmm, let it all out... cover the witch." + ast "..." + gen "Fuck... this feels a bit wrong..." ("base", xpos="far_left", ypos="head") + her "Good! Serves you right for letting Astoria try to curse me." + her "And you..." + her "Have you learned your lesson?" + ast "..." + ">Astoria's eyes burn in a storm of fury and humiliation." + her "Hmmm... Doesn't look like it..." + her "I bet you'd just call me a mudblood again if I let you..." + ast "..." + ">A shine in Astoria's eyes all but confirm Hermione's suspicions." + her "I guess I'll just have to wash your mouth out then..." + her "Do you have any soap, [genie_name]?" + gen "Oh, um--" ("base", xpos="far_left", ypos="head") + her "Of course you don't... If you did this room probably wouldn't reek of cum..." + her "I know! We can kill two birds with one stone. I'll just wash out Astoria's mouth with cum!" + ast "!!!" + #fade to black + #show astoria clean with mouth full of cum and tears down her face + her "There, all done!" + ast "..." + ">Hermione then forces Astoria's mouth closed before gently stroking her throat, forcing her to involuntarily swallow your load like a naughty dog with their medication." + her "{b}Perfect...{/b} Now, are you going to be able to manage to obliviate Astoria and send her back to her room, [genie_name]?" + gen "Oblivi-what?" ("base", xpos="far_left", ypos="head") + her "Ugh... If you don't want to cast it just say so." + her "OBLIVIATE!" + ">A flash goes off as Astoria's eyes empty." + her "I suppose you want me to take her back to her room as well?" + gen "If you don't mind." ("base", xpos="far_left", ypos="head") + her "It's fine..." + gen "..." ("base", xpos="far_left", ypos="head") + her "..." + gen "How many?" ("base", xpos="far_left", ypos="head") + her "At least a hundred." + gen "One hundred points to Gryffindor then!" ("base", xpos="far_left", ypos="head") + $ gryffindor += 100 + her "Thank you, [genie_name]." + ">With that, Hermione unparalyses the dazed Slytherin before leading her out of your office and back to her dorm." + jump main_room + + + + +label astoria_leash_walk: + ">You quickly push Astoria to the side, leaving you to take the full force of Hermione's spell." + gen "*ARGH*!" ("angry", xpos="far_left", ypos="head") + ast "IMPERIO!" + ">As your body stiffens from the spell, you see the life drain from Hermione's eyes as the puff of cursed smoke flies up her nostrils." + ast "YES! We did it sir!" + gen "..." ("base", xpos="far_left", ypos="head") + ast "Oh, did her spell hit you?" + gen "..." ("base", xpos="far_left", ypos="head") + ast "Ha-ha! That's what you get for not reacting quicker..." + gen "!!!" ("base", xpos="far_left", ypos="head") + ast "Now... what should we do with Miss know-it-all?" + ast "Should I make her show us her boobies?" + ast "What do you think, Hermione? I bet you'd hate that, wouldn't you!" + her "I'd love it." + ast "{size=+5}What?!{/size}" + gen "..." ("base", xpos="far_left", ypos="head") + ast "Why?" + her "It makes me feel {b}so{/b} good." + ast "Wait... Have you shown the headmaster your boobs before?" + her "Yes." + ast "How many times have you shown him, you little tramp?" + her "I can't remember." + ast "What? Have you been having sex with the headmaster?" + her "Yes..." + ast "sir!" + gen "..." ("base", xpos="far_left", ypos="head") + ast "Oh... right... paralysed..." + ast "..." + ast "You really are the biggest teacher's pet in the world, aren't you." + ast "So, did you do it for a better grade?" + her "No..." + ast "That's surprising..." + ast "So, sir, why did you suggest her if you've already been there?" + ast "Unless you wanted me to fool around with her..." + ast "sir! You're such a dirty old pervert!" + ast "So what can I do then?" + ast "Is there even anything that the headmaster can do that would embarrass you anymore, slut?" + her "I don't think so..." + ast "Huh, I knew you were useless, sir!" + ast "I guess I'll have to come up with my own super smart way to shame Miss know-it-all then!" + ast "Ready for the best, most humiliating idea ever, Hermione?" + her "Yes..." + ast "Let's walk around the school together!" + her "Together... With a slytherin?" + ast "I bet you'd hate that, wouldn't you?" + her "Yes..." + ast "Would you hate it even more if you were wearing a leash?" + her "Yes..." + ast "And a sign that says... um..." + her "..." + ast "Mudblood slut!" + her "..." + ">It's barely noticeable but you can see a flicker of rage flash beneath Hermione's eyes." + ast "You'd hate that, wouldn't you?" + her "More than anything..." + ast "Perfect!" + ast "ACCIO LEASH!" + ">A leash and collar fly quickly in through your window." + gen "(Woah... How'd she do that?)" ("base", xpos="far_left", ypos="head") + ast "Well, have fun being stuck here all by yourself, sir." + ast "Hermione and I are going to go on a walk around the school." + her "..." + ast "See ya sir!" + ">With that, Astoria leads a dazed Hermione out of your office and into the wider wizarding world." + jump main_room diff --git a/game/scripts/characters/astoria/events/tonks_favours_OLD.txt b/game/scripts/characters/astoria/events/tonks_favours_OLD.txt new file mode 100644 index 00000000..c3c1f68a --- /dev/null +++ b/game/scripts/characters/astoria/events/tonks_favours_OLD.txt @@ -0,0 +1,346 @@ + + +### TONKS EVENTS ### + +label astoria_tonks_0: #First time astoria sent to tonks. + call play_music("silly") + call play_sound("door") + ast "" ("smile", "base", "base", "mid",xpos="right",ypos="base") + pause.5 + call nar(">Your door swings open as Astoria enters.") + + gen "Oh, you're back!" ("base", xpos="far_left", ypos="head") + ast "Are you surprised, [ast_genie_name]?" ("smile", "base", "base", "mid") + gen "A little... She does seem a bit weird." ("base", xpos="far_left", ypos="head") + ast "Then why would you send me there?!" ("open", "base", "worried", "R") + gen "eh..." ("base", xpos="far_left", ypos="head") + ast "..." ("annoyed", "narrow", "narrow", "mid") + ast "Well it wasn't too bad..." ("open", "base", "base", "mid") + ast "She only wanted to ask a few questions." ("upset", "base", "base", "R") + gen "What sort of questions?" ("base", xpos="far_left", ypos="head") + ast "My favourite subjects, what I like, how old I am, stuff like that." ("open", "base", "base", "down") + gen "That's it? She didn't ask you to do anything weird?" ("base", xpos="far_left", ypos="head") + ast "Not really..." ("annoyed", "base", "base", "R") + ast "Although she did have this look in her eyes... It was almost like she wanted to eat me..." ("open", "narrow", "worried", "mid") + ast "She's not a werewolf is she, [ast_genie_name]?" ("open", "base", "worried", "mid") + gen "Holy shit! Are werewolves real here?" ("base", xpos="far_left", ypos="head") + ast "What do you mean here? Of course werewolves are real... We all learn that as children." ("open", "closed", "base", "mid") + gen "Just testing..." ("base", xpos="far_left", ypos="head") + gen "Oh, and I'm sure she's not a werewolf..." ("base", xpos="far_left", ypos="head") + gen "(I hope...)" ("base", xpos="far_left", ypos="head") + ast "She better not be, [ast_genie_name]!" ("upset", "base", "worried", "down") + gen "I'm sure you'll get used to her." ("base", xpos="far_left", ypos="head") + ast "Get used to her????" ("open", "base", "worried", "mid") + ast "I don't have to see her again do I?" ("upset", "base", "worried", "down") + gen "Well... If you want to keep learning new spells you might have to..." ("base", xpos="far_left", ypos="head") + ast "*hmph*-- you haven't even taught me any yet!" ("clench", "narrow", "angry", "mid") + ast "They're probably not even fun..." ("annoyed", "narrow", "angry", "R") + + if not snape_gave_spellbook: + gen "(Right. I still need that spellbook.)" ("base", xpos="far_left", ypos="head") + gen "Next time, [astoria_name]." ("base", xpos="far_left", ypos="head") + gen "I've got... *uhm*... I've got stuff to take care of, yes." ("base", xpos="far_left", ypos="head") + ast "*I don't believe that one bit..." ("annoyed", "narrow", "angry", "R") + else: + gen "Why don't you come over here then and we can start reading over the first one." ("base", xpos="far_left", ypos="head") + ast "alright..." ("grin", "base", "base", "mid") + + $ astoria_tonks_intro_completed = True + + jump astoria_requests + + +label astoria_tonks_1: + call play_music("silly") + call play_sound("door") + ast "" ("clench", "narrow", "angry", "mid",xpos="right",ypos="base") + pause.5 + + call nar(">Astoria enters your office, a sullen look painted over her face.") + gen "How was your--" ("base", xpos="far_left", ypos="head") + ast "Awful!" ("open", "closed", "angry", "mid") + ast "That Tonks is a real creep, [ast_genie_name]!" ("annoyed", "base", "worried", "down") + gen "Really? What'd she do?" ("base", xpos="far_left", ypos="head") + ast "She called my uniform conservative!" ("upset", "narrow", "base", "down") + ast "How can a uniform even have political beliefs?" ("annoyed", "base", "base", "R") + ast "Let alone conservative!" ("open", "base", "worried", "down") + ast "She's probably one of those loonies who complains on the--" ("annoyed", "narrow", "angry", "L") + gen "That's not what conservative means." ("base", xpos="far_left", ypos="head") + ast "Yes it is! I read it--" ("scream", "closed", "base", "mid") + gen "It means she thinks your uniform hides too much skin..." ("base", xpos="far_left", ypos="head") + ast "Oh..." ("clench", "narrow", "narrow", "down") + ast "Really?" ("upset", "base", "base", "mid") + ast "I guess that would explain the measuring tape..." ("open", "base", "base", "L") + gen "Why don't you tell me what happened from the start?" ("base", xpos="far_left", ypos="head") + ast "Alright..." ("upset", "narrow", "narrow", "mid") + ast "Well first we got to her office." ("open", "base", "base", "mid") + ast "We were just chatting a bit." ("open", "base", "base", "R") + ast "About Candy, pets, school stuff, and if there are any boys I liked..." ("annoyed", "base", "base", "mid") + ast "She even showed me a secret passage from here to to the kitchens I didn't even know of!" ("grin", "narrow", "angry", "mid") + ast "Anyways, when we got there, Ginny Weasley suddenly spurted out of her office!" ("upset", "base", "worried", "down") + gen "(Ginny Weasley? Haven't I heard that name before?)" ("base", xpos="far_left", ypos="head") + gen "(Is that the Granger girl's Lesbo friend? I can't remember...)" ("base", xpos="far_left", ypos="head") + ast "Her face was all red and she didn't want to look at me..." ("annoyed", "base", "base", "down") + ast "I figured that she was probably getting in trouble for something so I didn't say anything..." ("open", "base", "base", "R") + ast "Once we were inside, she asked what spell I'd cast this time..." ("upset", "base", "base", "down") + ast "And who I cast it on..." ("open", "base", "base", "R") + ast "But I don't think she was very interested..." ("smile", "base", "base", "down") + ast "She was more excited about my uniform." ("upset", "base", "base", "mid") + ast "She said she'd just found out that as a teacher, she was allowed to choose uniforms for her students." ("annoyed", "narrow", "angry", "R") + gen "(We can do that?... Did that Granger lie to me?!?)" ("base", xpos="far_left", ypos="head") + ast "And that she wanted to make some changes to my uniform because it was too conservative!" ("upset", "ahegao", "ahegao", "ahegao") + ast "I told her I don't associate with any political party and ran out of there!" ("scream", "narrow", "angry", "R") + ast "But if she just meant my vest was too thick I guess that's not too bad..." ("upset", "narrow", "narrow", "down") + gen "(I'm sure that's what she meant...)" ("base", xpos="far_left", ypos="head") + ast "Do I have to go back there sir?" ("upset", "base", "worried", "mid") + gen "Only if you want to keep casting new spells..." ("base", xpos="far_left", ypos="head") + ast "Ugh..." ("upset", "ahegao", "ahegao", "ahegao") + ast "Fine..." ("annoyed", "narrow", "angry", "L") + ast "Just make sure she keeps politics out of it!" ("annoyed", "narrow", "angry", "mid") + gen "Will do..." ("base", xpos="far_left", ypos="head") + ast "Good! Now about those new spells..." ("annoyed", "base", "base", "R") + gen "We can start reading one now if you want." ("base", xpos="far_left", ypos="head") + ast "Yay!" ("grin", "happyCl", "base", "mid") + + $ astoria_tonks_1_completed = True + + jump astoria_requests + + +label astoria_tonks_2: + call play_music("silly") + call play_sound("door") + ast "" ("smile", "base", "base", "mid",xpos="right",ypos="base") + pause.5 + + call nar(">Astoria happily walks into your office, humming a tune as she closes the door.") + ast "Hey, [ast_genie_name]!" ("grin", "happyCl", "base", "mid") + gen "Hello, [astoria_name]... You seem chipper today." ("base", xpos="far_left", ypos="head") + ast "Guess what?" ("grin", "narrow", "angry", "mid") + gen "What's that?" ("base", xpos="far_left", ypos="head") + ast "Tonks wants me to be a model!" ("smile", "narrow", "angry", "down",cheeks="blush") + gen "A model?" ("base", xpos="far_left", ypos="head") + ast "Uh huh! Did you know she's actually a costume designer in her spare time?" ("open", "base", "base", "mid") + gen "I did not..." ("base", xpos="far_left", ypos="head") + ast "Well she is! And she thinks I've got what it takes to be a model!" ("grin", "narrow", "angry", "mid") + gen "Really..." ("base", xpos="far_left", ypos="head") + ast "Yep! She even spent all day taking my measurements so she could start working on some special outfits for me!" ("grin", "happyCl", "base", "mid") + ast "Plus she even said she'd start working on a new, cooler version of my uniform!" ("smile", "base", "base", "mid") + gen "Huh..." ("base", xpos="far_left", ypos="head") + ast "Isn't that great sir?" ("grin", "happyCl", "base", "mid") + gen "Sure is." ("base", xpos="far_left", ypos="head") + ast "And to think I thought she'd do something nasty..." ("open", "base", "base", "R") + gen "I wouldn't put that past her just yet..." ("base", xpos="far_left", ypos="head") + ast "Pfft, you're one to talk old man!" ("annoyed", "narrow", "angry", "mid") + ast "I bet you spent all day thinking about what we're going to do to Susan next didn't you?" ("grin", "narrow", "angry", "mid") + gen "The thought might have crossed my mind..." ("base", xpos="far_left", ypos="head") + ast "Well if you wanna get to that we have to learn the new spell first, [ast_genie_name]!" ("open", "base", "base", "L") + ast "Speaking of which..." ("annoyed", "base", "base", "R") + + $ astoria_tonks_2_completed = True + + jump astoria_requests + + +label astoria_tonks_3: + #call play_music("silly") + call play_sound("door") + ast "" ("upset", "closed", "base", "mid",xpos="right",ypos="base") + pause.5 + + call nar(">Astoria walks into your office, snobbishly wrinkling her nose.") + + gen "Welcome back, [astoria_name]. How was--" ("base", xpos="far_left", ypos="head") + ast "Cut the chit-chat, [ast_genie_name]! I don't have time for it!" ("clench", "closed", "base", "mid") + ast "Tonks said you could help me with my model job!" ("open", "base", "base", "mid") + gen "She did? How am I supposed to help?" ("base", xpos="far_left", ypos="head") + ast "She made me some cool, new outfits she wants me to wear." ("open", "base", "base", "down") + ast "I haven't tried them on yet so I don't know if they'll even fit.... They look really small..." ("upset", "closed", "worried", "down") + ast "It's simple, I'll try them on and see how they suit me..." ("open", "base", "base", "down") + ast "All you need to do is sit on your bum and tell me how great I look!" ("open", "closed", "base", "mid") + ast "Do you think you can manage that, [ast_genie_name]?" ("upset", "narrow", "narrow", "mid") + gen "I will try..." ("base", xpos="far_left", ypos="head") + ast "Great! Now let's get started!" ("grin", "narrow", "angry", "mid") + + call popup("You can now access Susan & Astoria's wardrobe and change their appearance!", "Congratulations!", "interface/icons/head/astoria.webp") + + "Developer note:" ">We have made both Susan's and Astoria's wardrobe available.\nAll available clothing has also been unlocked." + "Developer note:" ">Susan's wardrobe as well as Astoria's clothings will unlock with future events instead in later patches." + + "Developer note:" ">This marks the end of the current Astoria and Susan content! We hope you liked it!" + + $ astoria_tonks_3_completed = True + + $ astoria_wardrobe_unlocked = True + $ susan_wardrobe_unlocked = True + + $ active_girl = "astoria" + + #call load_astoria_clothing_saves + + call reset_wardrobe_vars + call update_wr_color_list + + $ hide_transitions = True + ast "" (xpos="wardrobe",ypos="base") + call screen wardrobe_old + +#Tonks gives Astoria a shorter skirt +label astoria_tonks_4: + #call play_music("silly") + call play_sound("door") + ast "" ("upset", "closed", "base", "mid",xpos="right",ypos="base") + pause.5 + + call nar(">Astoria walks into your office in a new skirt, her eyes nervously looking to the side.") + + gen "Welcome back, [astoria_name]. I like--" ("base", xpos="far_left", ypos="head") + ast "Shut up!" + gen "..." ("base", xpos="far_left", ypos="head") + ast "I don't want to talk about it, OK?" + gen "Talk about what?" ("angry", xpos="far_left", ypos="head") + ast "..." + gen "Have a fun time with Tonks?" ("base", xpos="far_left", ypos="head") + ast "Do I look like I'm having fun?" + gen "Mmmm, you look like a lot of fun from where I'm sitting..." ("base", xpos="far_left", ypos="head") + ast "That's gross, [ast_genie_name]!" + gen "So, will you going to be wearing that skirt from now on?" ("base", xpos="far_left", ypos="head") + ast "I have to, don't I?" + gen "Or else what?" ("base", xpos="far_left", ypos="head") + ast "Or else Tonks will dob us in to the ministry! At least try to keep up, [ast_genie_name]." + gen "Mmmm, well things certainly have gotten interesting..." ("base", xpos="far_left", ypos="head") + ast "Stop looking at me like that! You've got the same look in your eye as she did!" + gen "Ready for your next lesson then?" ("base", xpos="far_left", ypos="head") + ast "..." + ast "Do I have to sit on your lap again?" + gen "I don't know how else you expect to read the book..." ("base", xpos="far_left", ypos="head") + ast "..." + ast "You're almost as sick as she is..." + + + +#Tonks spanks Astoria for sending Susan home covered in cum +label astoria_tonks_5: + call play_sound("door") + ast "" ("upset", "closed", "base", "mid",xpos="right",ypos="base") + pause.5 + + call nar(">Astoria walks into your office in a new skirt, her face a mess from crying...") + + ast "I want you to fire Tonks!" + gen "What--" ("base", xpos="far_left", ypos="head") + ast "FIRE HER!!!" + gen "I'm not sure I can do that... don't forget about Azkaban." ("base", xpos="far_left", ypos="head") + ast "She's the one that deserves to be locked away! She's an evil, old witch!" + gen "At least tell me what's going on." ("base", xpos="far_left", ypos="head") + ast "She spanked me! Like I'm some sort of child!" + gen "..." ("base", xpos="far_left", ypos="head") + ast "It's not fair! She's crazy!" + gen "She spanked you?" ("base", xpos="far_left", ypos="head") + ast "Really hard!" + ast "I was even crying and telling her to stop but she kept going!" + ast "It was horrible! No one can do that to me!" + gen "Why did she spank you?" ("base", xpos="far_left", ypos="head") + ast "For nothing! She just said that I deserved it! AS IF!" + gen "It didn't have anything to do with Susan?" ("base", xpos="far_left", ypos="head") + ast "..." + gen "Astoria..." ("base", xpos="far_left", ypos="head") + ast "She might have mentioned it... But that still doesn't make it OK!" + ast "All I did was tell Susan to walk home!" + ast "Why is it my fault if she walked through the great hall covered in {b}your{/b} cum?" + ast "I never told her to do that!" + gen "..." ("base", xpos="far_left", ypos="head") + ast "Besides, it's not like there was anyone who didn't think she was a slut anyways..." + gen "..." ("base", xpos="far_left", ypos="head") + ast "Well... Say something! When are you going to fire that old hag?" + gen "Unless you think Azkaban is better than a spanking, I think we should keep miss Tonks around." ("base", xpos="far_left", ypos="head") + ast "*Pffft* I knew you'd be useless!" + gen "We could slow down with the spells until she cools off, if you think that would help." ("base", xpos="far_left", ypos="head") + ast "And just let her get away with this?" + ast "No... I'm just going to have to get back at her through Susan!" + gen "Susan?" ("base", xpos="far_left", ypos="head") + ast "Of course! If she wasn't such a cow none of this would have happened." + ">With that, Astoria hops up onto your lap in her tiny skirt, giving you a dangerous look at the witches' thighs." + ast "Now, hurry up, [ast_genie_name]! I'll never get my revenge at your reading pace!" + +#Tonks spends the whole time rubbing Astoria's butt +label astoria_tonks_6: + + + + + +### REPEATABLE RANDOM EVENTS ### +label astoria_tonks_random: + $ random_number = renpy.random.randint(1, 3) + + #Tonks is into beast stuff?! + if random_number == 1: + #call play_music("silly") + call play_sound("door") + ast "" ("annoyed", "base", "base", "R",xpos="right",ypos="base") + pause.5 + + call nar(">Astoria casually walks into your office, mindlessly looking around.") + gen "Well, how was it?" ("base", xpos="far_left", ypos="head") + ast "Nothing special, [ast_genie_name]." ("annoyed", "base", "base", "L") + ast "We were mostly just drinking tea and talking..." ("annoyed", "base", "base", "R") + ast "There was a book on her shelf that caught my eye and I wanted to ready it..." ("open", "base", "base", "mid") + ast "I think it was named Bestiary or Bestiality or something..." ("open", "narrow", "narrow", "R") + ast "She wouldn't let me read it though... I wonder why..." ("annoyed", "base", "base", "down") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "Want to cast some spells, [astoria_name]?" ("base", xpos="far_left", ypos="head") + ast "Of course, [ast_genie_name]!" ("grin", "base", "base", "down") + + #Tonks is the best! + if random_number == 2: + call play_music("silly") + call play_sound("door") + ast "" ("grin", "base", "base", "mid",xpos="right",ypos="base") + pause.5 + + call nar(">Astoria merrily walks into your office, humming a tune as she closes the door.") + gen "So... how was your day?" ("base", xpos="far_left", ypos="head") + ast "It was amazing, [ast_genie_name]!!!" ("scream", "wide", "wide", "wide") + ast "Tonks showed me her creature book! All the magical creatures she's encountered over her years as an Auror!" ("open", "base", "base", "mid") + ast "A giant, a werewolf, even a vampire!" ("grin", "narrow", "angry", "mid") + ast "She's sooooo cool, [ast_genie_name]! The best teacher we've ever had here at this lame school!" ("grin", "happyCl", "base", "mid") + gen "I'm glad to hear that." ("base", xpos="far_left", ypos="head") + gen "Want to cast some spells?" ("base", xpos="far_left", ypos="head") + ast "Hihihi-- of course!" ("grin", "base", "base", "mid") + + #Tonks sucks! + if random_number == 3: + #call play_music("silly") + call play_sound("door") + ast "" ("annoyed", "narrow", "angry", "R",xpos="right",ypos="base") + pause.8 + + ast "I hate her, [ast_genie_name]!" ("scream", "closed", "angry", "mid") + gen "Tonks? Last time you said you liked her..." ("base", xpos="far_left", ypos="head") + ast "That was before she wanted me to clean up her whole staffroom!" ("scream", "narrow", "angry", "mid") + ast "Not to mention the horrible outfit she made me wear." ("clench", "narrow", "angry", "R") + gen "Wait, what outfit?" ("base", xpos="far_left", ypos="head") + ast "I think she called it a maiden outfit, or something." ("annoyed", "narrow", "angry", "L") + ast "I looked so stupid in it..." ("annoyed", "narrow", "angry", "down") + if astoria_tonks_3_completed: + ast "She said if I really wanted to be a model, I'll need to wear whatever I'm told to wear." ("open", "closed", "base", "mid") + ast "Even if it meant wearing nothing at all, [ast_genie_name]! Can you believe that?!" ("scream", "wide", "wide", "wide") + gen "Hmm..." ("base", xpos="far_left", ypos="head") + gen "I would love to see you in that outfit too!" ("grin", xpos="far_left", ypos="head") + ast "Not a chance!" ("clench", "narrow", "angry", "mid") + ast "Good night, [ast_genie_name]!" ("open", "closed", "base", "mid") + gen "Wait, don't you want to--" ("base", xpos="far_left", ypos="head") + hide astoria_main + with d3 + pause.5 + + call nar(">Astoria quickly stomps out of your room.") + + $ astoria_busy = True + + jump main_room_menu + + #ADD more random Tonks events. + + jump astoria_requests diff --git a/game/scripts/characters/astoria/favors.rpy b/game/scripts/characters/astoria/favors.rpy new file mode 100644 index 00000000..c37bcf92 --- /dev/null +++ b/game/scripts/characters/astoria/favors.rpy @@ -0,0 +1,40 @@ +# Imperius Curse +default ag_st_imperio = event_class( + title = "Imperio Training", start_label = "ag_st_imperio", start_tier = 1, + events = [ + [ + ["ag_st_imperio_E1"], + ["ag_st_imperio_E2"], + ["ag_st_imperio_E3"], + ["ag_st_imperio_E4"], + ["ag_st_imperio_E5"] + ] + ], + icons = [None], # If a tier doesn't need an icon replace with None + iconset = [["star_empty", "star_yellow"]], + complete = False +) + +default ag_se_imperio_sb = event_class( + title = "Cast Imperio on Susan", start_label = "ag_se_imperio_sb", start_tier = 1, + events = [ + [ + ["ag_se_imperio_sb_E1"], + ["ag_se_imperio_sb_E2"], + ["ag_se_imperio_sb_E3"] + ] + ], + icons = [None], # If a tier doesn't need an icon replace with None + iconset = [["heart_empty", "heart_red"]], + complete = True +) + +default ag_spell_list = [] + +label update_astoria_spells: + $ del ag_spell_list[:] # Clear list + if not ag_st_imperio.is_complete(): + $ ag_spell_list.append(ag_st_imperio) + else: + $ ag_spell_list.append(ag_se_imperio_sb) # Susan + return diff --git a/game/scripts/characters/astoria/gifts.rpy b/game/scripts/characters/astoria/gifts.rpy new file mode 100644 index 00000000..dfa56f3a --- /dev/null +++ b/game/scripts/characters/astoria/gifts.rpy @@ -0,0 +1,540 @@ +# Astoria Gift Responses + +label give_ast_gift(gift_item): + $ gave_astoria_gift = True + hide astoria_main + with d5 + ast "" (xpos="mid", ypos="base", trans=d5) + + if gift_item == lollipop_ITEM: + + if ast_whoring < 6: + ast "A lollipop?" (mouth="open", face="neutral") + ast "Why are you giving me sweets, I'm not a kid!" (face="angry") + call ast_mood(1) + elif ast_whoring > 5 and ast_whoring < 12: + ast "A lollipop?" (mouth="open", face="neutral") + call give_gift(">You give the lollipop to Astoria...", gift_item) + ast "why are you being so nice to me..." (face="angry") + ast "Although... the other students haven't had any left since the last Hogsmeade trip." (mouth="open", face="neutral") + ast "They'll be so jealous!" (mouth="grin", face="happy") + call ast_mood(-1) + else: + ast "A lollipop?" (mouth="open", face="neutral") + call give_gift(">You give the lollipop to Astoria...", gift_item) + ast "That's going to take all day to suck on..." + ast "I guess my mouth will be too busy to do anything else for the entire day!" + call ast_mood(-2) + + elif gift_item == chocolate_ITEM: + + if ast_whoring < 6: + ast "Some chocolate?" (mouth="open", face="neutral") + ast "Don't you have any dung-bombs?" + ast "They're way more fun!" + call ast_mood(0) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Some chocolate?" (mouth="open", face="neutral") + call give_gift(">You give the chocolate to Astoria...", gift_item) + ast "Thank you, [ast_genie_name]." (mouth="open", face="neutral") + ast "I don't know what I did to deserve it." (mouth="annoyed", pupils="R", face="neutral") + ast "But I'm not going to say no..." (face="happy") + call ast_mood(-1) + else: + ast "Some chocolate?" (mouth="open", face="neutral") + call give_gift(">You give the chocolate to Astoria...", gift_item) + ast "Did you hear chocolate is supposed to be an aphrodisiac?" + ast "Although it was a muggle that came up with that one so I doubt there's any truth to it." + ast "Oh well, that sucks doesn't it?" + call ast_mood(-2) + + elif gift_item == plush_owl_ITEM: + + if ast_whoring < 6: + ast "An owl plushie?" (mouth="open", face="neutral") + ast "Why are you giving me this?" + ast "Toys are for children..." + call ast_mood(1) + elif ast_whoring > 5 and ast_whoring < 12: + ast "An owl plushie?" (mouth="open", face="neutral") + call give_gift(">You give the stuffed toy to Astoria...", gift_item) + ast "I don't use stuffed toys..." (mouth="open", face="annoyed") + ast "I know someone that hates owls though... I'll put this in front of her face when she's waking up..." (mouth="annoyed", pupils="R", face="neutral") + call ast_mood(-1) + elif ast_whoring > 11 and ast_whoring < 18: + ast "An owl plushie?" (mouth="open", face="neutral") + call give_gift(">You give the stuffed toy to Astoria...", gift_item) + ast "Do I look like a girl that plays with toys?" + ast "Actually, don't answer that..." + ast "Guess it'd be rude not to take it..." + call ast_mood(-1) + else: + ast "An owl plushie?" (mouth="open", face="neutral") + call give_gift(">You give the stuffed toy to Astoria...", gift_item) + ast "If you want to give me toys you better be prepared for me to call you daddy..." + ast "So, thank you..." + ast "Daddy..." + call ast_mood(-3) + + elif gift_item == butterbeer_ITEM: + + if ast_whoring < 6: + ast "Butterbeer?" (mouth="smile", face="happy") + call give_gift(">You give the bottle to Astoria...", gift_item) + ast "Time to get smashed!" (face="happy") + ast "The other students will be so jealous I got beer into the school..." (mouth="annoyed", face="angry") + call ast_mood(-2) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Butterbeer?" (mouth="smile", face="happy") + call give_gift(">You give the bottle to Astoria...", gift_item) + ast "Don't you have something stronger?" (pupils="mid", face="annoyed") + ast "Like something you can't get in the school usually?" (pupils="R", face="annoyed") + ast "Fine, I'll take it!" (mouth="smile", face="happy") + call ast_mood(-1) + elif ast_whoring > 11 and ast_whoring < 18: + ast "Butterbeer?" (face="annoyed") + call give_gift(">You give the bottle to Astoria...", gift_item) + ast "This watered down piss-water can barely get a house elf tipsy." + ast "Actually, that gives me an idea..." + call ast_mood(-1) + else: + ast "Butterbeer?" (mouth="open", face="neutral") + call give_gift(">You give the bottle to Astoria...", gift_item) + ast "It's more of a cider really isn't it?" (face="neutral") + ast "Thanks!" (mouth="smile", face="happy") + call ast_mood(-2) + + elif gift_item == science_mag_ITEM: + if ast_whoring < 6: + ast "(...)" (pupils="down", face="annoyed") + ast "Creating your own itch powder using household ingredients?" (mouth="open", pupils="down", face="annoyed") + ast "Is the kitchen even open to students?" (pupils="down", face="annoyed") + ast "What am I supposed to do with this, [ast_genie_name]?" (face="annoyed") + call ast_mood(0) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Magazines?" (mouth="open", face="annoyed") + call give_gift(">You give an assortment of educational magazines to Astoria...", gift_item) + ast "Making your own stink bombs..." (face="annoyed") + ast "Looks like I might be able to make these in potions class..." + ast "If Snape doesn't catch me doing it." (mouth="clench", face="annoyed") + call ast_mood(-1) + elif ast_whoring > 11 and ast_whoring < 18: + ast "Magazines?" (mouth="angry", face="angry") + ast "You want me to do more school work?" (mouth="annoyed", face="angry") + call ast_mood(1) + else: + ast "magazines?" (mouth="open", face="annoyed") + call give_gift(">You give an assortment of educational magazines to Astoria...", gift_item) + ast "I was hoping for something a bit more risqué..." (face="annoyed") + call ast_mood(0) + + elif gift_item == girls_mag_ITEM: + if ast_whoring < 6: + ast "Girl magazines?" (mouth="open", face="annoyed") + ast "This is that trash my sister reads." (mouth="clench", pupils="down", face="annoyed") + ast "Such a massive waste of time..." (face="annoyed") + call ast_mood(0) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Girl magazines?" (face="disgusted") + call give_gift(">You give an assortment of rather girly magazines to Astoria...", gift_item) + ast "I'll take it for the free mascara sample. I once drew a uni-brow on someone with it." (face="happy") + call ast_mood(-1) + elif ast_whoring > 11 and ast_whoring < 18: + ast "Girl magazines?" (face="annoyed") + call give_gift(">You give an assortment of rather girly magazines to Astoria...", gift_item) + ast "Well, I am a girl so of course I'd want it!" (face="annoyed") + call ast_mood(-1) + else: + ast "Girl magazines?" (face="annoyed") + call give_gift(">You give an assortment of rather girly magazines to Astoria...", gift_item) + ast "Don't I look hot enough for you [ast_genie_name]?" (mouth="open", eyes="closed", face="annoyed") + ast "I'm just teasing you, I'll have it." (face="happy") + call ast_mood(-1) + + elif gift_item == adult_mag_ITEM: + if ast_whoring < 6: + ast "Adult magazines?" (mouth="clench", face="disgusted") + ast "I'm good thanks." (face="disgusted") + call ast_mood(0) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Adult magazines?" (face="annoyed") + call give_gift(">You give an assortment of adult magazines to Astoria...", gift_item) + ast "Of course I read them. I'm an adult after all, it's in the name." (mouth="annoyed", pupils="R", face="angry") + call ast_mood(-1) + else: + ast "Adult magazines?" (face="annoyed") + call give_gift(">You give an assortment of adult magazines to Astoria...", gift_item) + ast "This is that magazine Tonks was reading during our writing test..." (pupils="down", face="annoyed") + ast "Perhaps I'll wave it at her so she thinks I stole it..." (mouth="smile", pupils="mid", face="angry") + call ast_mood(-1) + + elif gift_item == porn_mag_ITEM: + if ast_whoring < 6: + ast "Porn magazines?" (face="disgusted") + call give_gift(">You give an assortment of pornographic magazines to Astoria...", gift_item) + ast "I'll take it!" (mouth="grin", face="happy") + ast "I'll put one in Susan's bag when she's not looking. Can't wait to see that cows face when her friends notice." (mouth="open", face="angry") + ast "Thank you, [ast_genie_name]." (face="happy") + call ast_mood(-1) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Porn magazines?" (face="annoyed") + ast "Why do you have these?" (face="annoyed") + ast "Give them to Susan..." (pupils="R", face="annoyed") + call ast_mood(0) + elif ast_whoring > 11 and ast_whoring < 18: + ast "Porn magazines?" (face="annoyed") + call give_gift(">You give an assortment of pornographic magazines to Astoria...", gift_item) + ast "That's some extreme stuff you got there..." (face="disgusted") + ast "BDSM, what does that stand for..." (pupils="down", face="disgusted") + ast "She looks like she's enjoying it. That's not fun..." + ast "Although..." + call ast_mood(-1) + else: + ast "Porn magazines?" (face="happy") + call give_gift(">You give an assortment of pornographic magazines to Astoria...", gift_item) + ast "Is this where you get your ideas from?" (face="angry") + ast "A swing? Why would you have that in a porn ma... oh there's the next page." (pupils="down", face="disgusted") + ast "Yeah fuck it, give it here..." (mouth="grin", face="angry") + call ast_mood(-2) + + elif gift_item == krum_poster_ITEM: + if ast_whoring < 6: + ast "Viktor Krum?" (face="annoyed") + ast "Is that the Quidditch player everyone seems to fancy?" (mouth="open", pupils="mid", face="annoyed") + call give_gift(">You give the poster to Astoria...", gift_item) + ast "*Hmph*, I guess I'll take it if he's that popular..." (mouth="annoyed", pupils="R", face="neutral") + call ast_mood(0) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Viktor Krum?" (face="annoyed") + ast "Bet he could crush m... someone with his bare hands." (face="disgusted") + ast "Give it here..." (face="happy") + call give_gift(">You give the poster to Astoria...", gift_item) + call ast_mood(-1) + else: + ast "Viktor Krum?" (face="happy") + ast "His trousers aren't even off. What's the point..." (face="angry") + call ast_mood(1) + + elif gift_item == sexy_lingerie_ITEM: + if ast_whoring < 6: + ast "Lingerie?" (face="disgusted") + ast "Sexy Lingerie?!?" + ast "Why do you care so much about what I wear? Isn't this shitty school uniform enough for you?" (face="angry") + call ast_mood(2) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Lingerie?" (mouth="open", face="neutral") + ast "I... No, I'd just end up looking like a tramp!" (face="angry") + call ast_mood(0) + elif ast_whoring > 11 and ast_whoring < 18: + ast "Lingerie?" (face="annoyed") + ast "Sexy..." (pupils="down", face="annoyed") + ast "Why not, I don't know if you could tell but I'm a bit of a rebel. Might even wear these in class." (mouth="grin", face="angry") + call give_gift(">You give the sexy lingerie to Astoria...", gift_item) + call ast_mood(-1) + else: + ast "Lingerie?" (face="annoyed") + call give_gift(">You give the sexy lingerie to Astoria...", gift_item) + ast "Is this is the kind of clothes you want your students to dress in from now on?" (face="annoyed") + ast "*Heh*- I don't blame you, the school uniform is the most basic piece of trash ever without some spice..." (face="annoyed") + call ast_mood(-1) + + elif gift_item == sexy_stockings_ITEM : + if ast_whoring < 6: + ast "Stockings?" (face="disgusted") + ast "What happened to the dress code at this place?" + ast "What next, shorter skirts?" (face="angry") + call ast_mood(1) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Stockings?" (mouth="open", face="neutral") + call give_gift(">You give the stockings to Astoria...", gift_item) + ast "Seems pretty elastic... I could totally lob some stink bombs with these." (mouth="grin", face="angry") + call ast_mood(-1) + elif ast_whoring > 11 and ast_whoring < 18: + ast "Stockings?" (face="annoyed") + ast "Hah, you fool! With these you wont be able to stare at my legs anymore!" (mouth="grin", face="angry") + call give_gift(">You give the stockings to Astoria...", gift_item) + call ast_mood(-2) + else: + ast "Stockings?" (face="annoyed") + ast "These are almost as see-through as your wicked intentions..." (mouth="grin", face="angry") + call give_gift(">You give the stockings to Astoria...", gift_item) + ast "Disgusting..." (face="angry") + call ast_mood(-1) + + elif gift_item == pink_condoms_ITEM: + if ast_whoring < 6: + ast "Condoms?" (face="disgusted") + ast "Yeah, no... I'll take them but there's not going to be any dick going near these bad boys..." (face="annoyed") + ast "These will be the perfect thing to fill with water and drop down the staircase..." (mouth="smile", face="angry") + call give_gift(">You give the pack of Condoms to Astoria...", gift_item) + ast "Cheers for the ammo, [ast_genie_name]." (face="happy") + call ast_mood(-2) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Condoms?" (face="neutral") + ast "Oh, thank you so much! I'll prick some holes in these and hand them out at once!" (mouth="grin", face="angry") + ast "What?" (face="annoyed") + ast "I see your concern... They probably would be able to trace it back to me." (face="annoyed") + ast "Oh well, a gift is a gift." (face="neutral") + call give_gift(">You give the pack of Condoms to Astoria...", gift_item) + call ast_mood(0) + else: + ast "Condoms?" (face="annoyed") + ast "Why would I need condoms when I could just go in raw?" (mouth="grin", face="angry") + ast "*Ha-Ha-Hah* The look on your face, now that's something money can't buy." (face="happy") + call give_gift(">You sheepishly give the pack of Condoms to Astoria...", gift_item) + ast "*Hmm*.... yeah why not." (face="neutral") + call ast_mood(-1) + + elif gift_item == vibrator_ITEM: + if ast_whoring < 6: + ast "A vibrator?" (face="disgusted") + ast "Gross, where did you even get that from?" (face="angry") + call ast_mood(2) + elif ast_whoring > 5 and ast_whoring < 12: + ast "A vibrator?" (face="disgusted") + ast "Get the fuck out..." (face="angry") + ast "Oh right, I'm in your office... yeah that's going to be solid no on that one." (face="annoyed") + call ast_mood(1) + elif ast_whoring > 11 and ast_whoring < 18: + ast "A vibrator?" (face="disgusted") + ast "Hold on a second, that's the noise I've been hearing in the girls chambers!" (face="happy") + ast "Do they work?" (face="happy") + ast "I mean, I'll take it I guess." (face="neutral") + call give_gift(">You give the vibrator to Astoria...",gift_item) + call ast_mood(-1) + else: + ast "A vibrator?" (face="neutral") + call give_gift(">You give the vibrator to Astoria...",gift_item) + ast "That's disgusting! What a disgusting old man you are. Well aren't you being disgusting..." (face="angry") + ast "Disgusting..." (face="angry") + ast "Give it here." (face="happy") + call ast_mood(-2) + + elif gift_item == anal_lube_ITEM: + if ast_whoring < 6: + ast "Lube?" (mouth="open", face="neutral") + ast "I know the perfect staircase for this!" (face="happy") + call give_gift(">You give the jar of lube to Astoria...", gift_item) + ast "Thank you, [ast_genie_name]." (face="happy") + call ast_mood(-1) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Anal Lube?" (mouth="smile", face="happy") + ast "Swiggity swooty I'm coming for that booty!" (mouth="smile", face="angry") + ast "Come on now, what's with that dry humour. Maybe you could use some of that lube?" (face="annoyed") + call give_gift(">You cautiously give the jar of lube to Astoria...", gift_item) + ast "Boo!" (face="annoyed") + ast "*ha-ha-ha*!" (face="happy") + call ast_mood(-2) + else: + ast "Anal Lube?" (face="happy") + call give_gift(">You give the jar of lube to Astoria...", gift_item) + ast "Why would I need this, surely the initial pain is the best part..." (face="angry") + ast "Oh, for me? Duh!" (face="annoyed") + ast "Yeah, actually I'll take it..." (face="happy") + call ast_mood(-2) + + elif gift_item == ballgag_and_cuffs_ITEM: + if ast_whoring < 6: + ast "Handcuffs? And what.... a ball gag?" (face="disgusted") + ast "I don't know what you're trying to insinuate." (face="angry") + ast "The cuffs could be useful but why the ball gag?" (face="disgusted") + ast "I'd rather not." (face="annoyed") + call ast_mood(1) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Handcuffs? And a Ball gag?" (face="annoyed") + call give_gift(">You give the handcuffs to Astoria...", gift_item) + ast "I can break these cuffs!" (face="angry") + ast "*HNNNNNGH!" (face="angry") + ast "I can't break those cuffs..." (face="annoyed") + ast "Do you have a key?" (face="annoyed") + call ast_mood(0) + else: + ast "Handcuffs? And a Ball gag?" (face="happy") + call give_gift(">You give the handcuffs to Astoria...", gift_item) + ast "So I guess these are one of those BDSM items?" (face="neutral") + ast "Colour me intrigued..." (face="happy") + call ast_mood(-1) + + elif gift_item == anal_plugs_ITEM: + if ast_whoring < 6: + ast "anal plugs?" (face="disgusted") + ast "Yuck, what the hell is wrong with you... do you know where these go?" (face="angry") + ast "Of course you do... you detestable dingbat." (face="angry") + call ast_mood(2) + elif ast_whoring > 5 and ast_whoring < 12: + ast "anal plugs?" (face="disgusted") + ast "Why don't you try and sit on one yourself..." (face="angry") + call ast_mood(1) + elif ast_whoring > 11 and ast_whoring < 18: + ast "anal plugs?" (face="disgusted") + call give_gift(">You give the anal plugs to Astoria...", gift_item) + ast "Why are you giving me this?" (face="annoyed") + ast "I'll take it I guess..." (face="annoyed") + call ast_mood(0) + else: + ast "anal plugs?" (face="neutral") + call give_gift(">You give the anal plugs to Astoria...", gift_item) + ast "You do know these hurts a bit if you're not used to them?" (face="annoyed") + call nar(">Astoria absent-mindedly pockets the anal plug.") + ast "Don't see why you'd give these out as if they were sweets..." (mouth="annoyed", face="neutral") + call ast_mood(-1) + + + elif gift_item == testral_strapon_ITEM: + if ast_whoring < 6: + ast "A strap-on?" (face="disgusted") + ast "Why would you give me this... it's so ribbed..." (face="angry") + ast "As if anyone would want something like that!" (face="angry") + call ast_mood(1) + elif ast_whoring > 5 and ast_whoring < 12: + ast "A strap-on?" (face="disgusted") + ast "What do you want me to do with this?" (face="annoyed") + ast "Well I know what you want me to do with it." (face="annoyed") + ast "It's not happening..." (face="angry") + call ast_mood(0) + elif ast_whoring > 11 and ast_whoring < 18: + ast "A strap-on?" (face="angry") + call give_gift(">You give the strap-on to Astoria...", gift_item) + ast "I'll strap it on your forehead and make you into a sex unicorn!" (mouth="grin", face="angry") + ast "I read about people having sex on top of a unicorn..." (face="disgusted") + ast "Bit of an odd segment that one was..." (face="annoyed") + call ast_mood(-1) + else: + ast "A strap-on?" (face="annoyed") + call give_gift(">You give the strap-on to Astoria...", gift_item) + ast "It says Thestral on the side..." (face="annoyed") + ast "Isn't' that the creature only people that has seen someone die can see?" + ast "That makes the person who made he mould kinda fucked up if you think about it..." (face="disgusted") + ast "I like it..." (face="happy") + call ast_mood(-2) + + elif gift_item == broom_2000_ITEM: + if ast_whoring < 6: + ast "A broom?" (face="neutral") + ast "What's that sticking out on the top? That's not going to help me fly!" (face="annoyed") + call ast_mood(1) + elif ast_whoring > 5 and ast_whoring < 12: + ast "A broom?" (face="neutral") + call give_gift(">You give the broom to Astoria...", gift_item) + ast "Now if anything will motivate you to fly, that will..." (mouth="grin", face="angry") + ast "Bit awkward during broom care though..." (face="annoyed") + call ast_mood(0) + else: + ast "A broom?" (face="happy") + call give_gift(">You give the broom to Astoria...", gift_item) + ast "Now that will keep you sturdy." (mouth="grin", face="angry") + ast "What a depraved little invention..." (mouth="smile", face="angry") + ast "Totally something I'd come up with!" + ast "You look sceptical..." (face="annoyed") + call ast_mood(-1) + + elif gift_item == sexdoll_ITEM: + if ast_whoring < 6: + ast "A sex doll?" (face="disgusted") + ast "That's gross [ast_genie_name]!" (face="angry") + ast "Yuck, it smells gross too!" (face="angry") + call ast_mood(2) + elif ast_whoring > 5 and ast_whoring < 12: + ast "A sex doll?" (face="disgusted") + ast "This is literally worthless to me, why would you even consider this a good gift?" (face="angry") + call ast_mood(1) + elif ast_whoring > 11 and ast_whoring < 18: + ast "A sex doll?" (face="angry") + call give_gift(">You give the doll to Astoria...", gift_item) + ast "I hope you got this for cheap. It looks awful..." (face="annoyed") + ast "I mean... why thank you, I shall cherish this forever!" (face="annoyed") + call ast_mood(0) + else: + ast "A sex doll?" (face="disgusted") + call give_gift(">You give the doll to Astoria...", gift_item) + ast "But I'm a girl..." (face="annoyed") + ast "I'll leave it in the Slytherin common room to see if anyone has balls enough to takes it..." (mouth="grin", face="angry") + call ast_mood(-1) + + elif gift_item == anal_beads_ITEM: + if ast_whoring < 6: + ast "Anal beads?" (face="disgusted") + ast "Like, ones that you putt in your ass?" (face="angry") + ast "What... the hell!" (face="angry") + call ast_mood(2) + elif ast_whoring > 5 and ast_whoring < 12: + ast "Anal beads?" (face="disgusted") + ast "Put it up your own ass and I'll let er rip!" (face="angry") + call ast_mood(1) + elif ast_whoring > 11 and ast_whoring < 18: + ast "Anal beads?" (face="disgusted") + ast "Why would I need these?" (face="annoyed") + ast "I'll pass..." (face="annoyed") + call ast_mood(0) + else: + ast "Anal beads?" (face="neutral") + ast "Looks painful." (face="annoyed") + call give_gift(">You give the anal beads to Astoria...", gift_item) + ast "And they're green... Did you get these made just for me?" (mouth="annoyed", face="neutral") + call ast_mood(-1) + + elif gift_item == wine_ITEM: + if ast_whoring < 6: + ast "Wine?" (face="disgusted") + call give_gift(">You give the wine to Astoria...", gift_item) + ast "You're joking right?" (face="annoyed") + ast "Snape would murder me if he saw me bringing alcohol into the common room." (face="angry") + ast "I can't make you shut up after hours even without alcohol in your system..." (face="annoyed") + ast "Such a slimy slithering killjoy..." (face="annoyed") + call ast_mood(0) + else: + ast "Wine?" (face="happy") + ast "Well aren't we fancy?" (face="neutral") + call give_gift(">You give the wine to Astoria...", gift_item) + ast "This is the real shit. Look at the date on that." (face="neutral") + ast "You really are ancient if you bought it new..." (face="happy") + call ast_mood(-1) + + elif gift_item == firewhisky_ITEM: + if ast_whoring < 6: + ast "Firewhisky?" (face="neutral") + ast "That's the stuff Tonks always reeks off." (face="disgusted") + ast "I'm not gonna drink whatever she does." (face="annoyed") + ast "It'd be like wearing old peoples perfume!" (face="annoyed") + call ast_mood(0) + else: + ast "Firewhisky?" (face="happy") + ast "Fine, I'll give in. If Tonks likes it so much it can't be that bad..." (face="happy") + call give_gift(">You give the firewhisky to Astoria...", gift_item) + ast "*Hmm*... not made using real fire.. well that's bloody obvious..." (face="neutral") + ast "Might experience a slight pain and burning sensation when consuming..." (face="disgusted") + ast "Why didn't you say so before!" (face="angry") + ast "I might even take a sip or two myself..." (face="happy") + call ast_mood(-1) + + ast "" (xpos="base",ypos="base") + hide astoria_main + with d5 + + return + + +label ast_mood(value=0): + show screen blktone + with d3 + + if value > 0: + if value == 1: + "Astoria's mood worsened slightly." + else: + "Astoria's mood just got a whole lot worse!" + elif value < 0: + if value == -1: + "Astoria's mood has improved slightly." + else: + "Astoria's mood has improved significantly." + else: + "Astoria's mood hasn't changed." + + $ was_negative = ast_mood > 0 + $ ast_mood = max(min(ast_mood+value, 100), 0) + + call describe_mood_after_gift(was_negative, ast_mood, value) + + hide screen blktone + return diff --git a/game/scripts/characters/astoria/summon.rpy b/game/scripts/characters/astoria/summon.rpy new file mode 100644 index 00000000..90bec367 --- /dev/null +++ b/game/scripts/characters/astoria/summon.rpy @@ -0,0 +1,316 @@ + +label summon_astoria: + + $ active_girl = "astoria" + $ last_character = "astoria" + + $ astoria_busy = True + + #call update_ast_tier + call update_astoria + + # Clothes Events + call astoria_summon_setup + + label astoria_requests: + + # Reset + call reset_menu_position + ast "" (xpos="base",ypos="base") + + menu: + + # Talk + "-Talk-" (icon="interface/icons/small/talk.webp"): + if ast_mood > 0: + ast "I have nothing to say." ("annoyed", "narrow", "base", "R") + jump astoria_requests + + call astoria_chitchat + jump astoria_talk + + # Spells + "-Spells-" (icon="interface/icons/small/spell.webp"): + if ast_mood != 0: + ast "I don't want to today..." ("annoyed", "narrow", "base", "R") + jump astoria_requests + else: + jump astoria_spells + + "-Sexual favours-" (icon="interface/icons/small/condom.webp", style="disabled") if cho_favors_unlocked: + $ TBA_message() + jump astoria_requests + + # Wardrobe + "-Wardrobe-" (icon="interface/icons/small/wardrobe.webp") if astoria_wardrobe_unlocked: + hide astoria_main with d1 + call wardrobe + jump astoria_requests + + "-Hidden-" (style="disabled") if not astoria_wardrobe_unlocked: + call nar(">You haven't unlocked this feature yet.") + jump astoria_requests + + "-Give Item-" (icon="interface/icons/small/gift.webp"): + hide astoria_main with d1 + call gift_menu + jump astoria_requests + + # Dismiss + "-Dismiss her-": + stop music fadeout 3.0 + + if game.daytime: + ast "I will go back to classes then, [ast_genie_name]." ( face="neutral") + else: + ast "Oh, alright. Good night, [ast_genie_name]." ( face="neutral") + + call play_sound("door") + + jump end_astoria_event + + + +label astoria_spells: + call update_astoria_spells + + python: + spell_menu = [] + + for i in ag_spell_list: + if not i.is_complete(): # Not trained yet. + if game.daytime and not tonks_busy: + spell_menu.append(i.get_menu_item()) + else: + spell_menu.append(i.get_menu_item(disabled=True)) + + else: # Spell trained and unlocked. + spell_menu.append(i.get_menu_item()) + + spell_menu.append(("-Never mind-", "nvm")) + + result = renpy.display_menu(spell_menu) + + if result == "nvm": + jump astoria_requests + elif result == "block": + call block_spell_training + jump astoria_spells + elif result == "vague": + call spell_not_known + jump astoria_spells + elif result == "busy": + call person_is_busy + jump astoria_spells + else: + $ renpy.jump(result) + + +label block_spell_training: + if not game.daytime: + gen "It's too late for that..." ("base", xpos="far_left", ypos="head") + elif tonks_busy: + gen "I don't think Tonks has time for that right now..." ("base", xpos="far_left", ypos="head") + return + +label person_is_busy: + if game.daytime: + gen "Looks like she's taking classes right now." ("base", xpos="far_left", ypos="head") + else: + gen "Seems like she's already asleep." ("base", xpos="far_left", ypos="head") + return + +label spell_not_known: + call nar(">You haven't unlocked this spell yet.") + return + +label astoria_talk: + menu: + "-Ask about Slytherin Quidditch Team-" (icon="interface/icons/small/quidditch.webp") if cho_tier == 2 and cho_quid.lock_practice and cho_quid.E6_complete and not cho_quid.E8_complete: + # TODO: Posing + gen "Could you help me with something?" ("base", xpos="far_left", ypos="head") + ast "Depends what it is." ("annoyed", "narrow", "base", "mid") + ast "And what's in it for me..." ("smile", "closed", "angry", "mid") + gen "Well, the Slytherin Quidditch team refuses to practise against the Ravenclaws." ("base", xpos="far_left", ypos="head") + ast "And?" ("base", "base", "base", "mid") + gen "I was wondering if there's something you could do about it." ("base", xpos="far_left", ypos="head") + ast "Like what?" ("open", "base", "worried", "mid") + gen "I don't know... ask them nicely?" ("base", xpos="far_left", ypos="head") + ast "Yeah right, those guys would never listen to me..." ("base", "narrow", "base", "R") + ast "And can't you do something about it? You're the headmaster!" ("annoyed", "base", "worried", "mid") + gen "Well, I can't technically force them to do anything. If I could then that would make things way easier..." ("base", xpos="far_left", ypos="head") + ast "Ask Snape then, he's the head of Slytherin... If they'd listen to anyone it'd be him." ("base", "base", "base", "mid") + if cho_quid.E9_complete: + gen "I already did..." ("base", xpos="far_left", ypos="head") + else: + gen "I could..." ("base", xpos="far_left", ypos="head") + gen "Well, I'll try and think of something..." ("base", xpos="far_left", ypos="head") + ast "You do that." ("open", "base", "base", "mid") + + jump astoria_talk + + "-Address me only as-": + menu: + "-Sir-": + label .sir: + $ ast_genie_name = "Sir" + ast "Very well, [ast_genie_name]." ( face="neutral") + jump astoria_talk + "-Dumbledore-": + label .dumbledore: + $ ast_genie_name = "Dumbledore" + ast "Of course, [ast_genie_name]." ( face="neutral") + jump astoria_talk + "-Professor-": + label .professor: + $ ast_genie_name = "Professor" + ast "Of course, [ast_genie_name]." ( face="neutral") + jump astoria_talk + "-Old man-": + label .old_man: + $ ast_genie_name = "Old man" + ast "Alrighty, [ast_genie_name]." ( face="neutral") + jump astoria_talk + "-Genie-": + label .genie: + $ ast_genie_name = "Genie" + ast "What?! You are a genie? For real?" ( face="happy") + ast "That's so cool!" ( face="happy") + gen "(Oh right. Nobody is supposed to know that.)" ("base", xpos="far_left", ypos="head") + gen "It's just my name, [astoria_name]..." ("base", xpos="far_left", ypos="head") + ast "Oh... okay, [ast_genie_name]." ( face="neutral") + jump astoria_talk + "-Lord Voldemort-": + label .lord_voldemort: + $ ast_genie_name = "Lord Voldemort" + ast "Voldemort? Like that mean, evil wizard?" ( face="disgusted") + ast "You aren't him, are you?" ( face="disgusted") + gen "No, just role-playing..." ("base", xpos="far_left", ypos="head") + ast "Oh, alrighty then!" ( face="happy") + ast "[ast_genie_name]." ( face="happy") + jump astoria_talk + "-Daddy-": + label .daddy: + $ ast_genie_name = "Daddy" + ast "Daddy? Don't you think that's a little weird?" ( face="disgusted") + gen "Not at all!" ("base", xpos="far_left", ypos="head") + ast "*Hmph*..." ( face="angry") + ast "Alright, why not. Nobody knows about it anyways." ( face="neutral") + jump astoria_talk + "-Master-" (style="disabled") if ast_whoring < 18: + label .master_fail: + $ ast_genie_name = "Dumby" # Tricked + ast "*Ha-ha-ha-ha*-- you want me to call you master?" ( face="happy") + ast "That's so dumb!" ( face="happy") + ast "Oh I know!" ( face="happy") + ast "How about I'll call you \"Dumby\" instead? It fits you really well." ( face="happy") + gen "(...)" ("base", xpos="far_left", ypos="head") + ast "*Ha-ha-ha-ha*--" ( face="happy") + gen "Are you done now?" ("base", xpos="far_left", ypos="head") + ast "Yes... I'm sorry... {w=1.0}Dumby..." ( face="happy") + gen "(Damn brat! We'll see who will be laughing later.)" ("angry", xpos="far_left", ypos="head") + jump astoria_talk + "-Master-" if ast_whoring >= 18: + label .master: + $ ast_genie_name = "Master" + ast "*Ha-ha-ha-ha*-- you want me to call you master?" ( face="happy") + ast "That's so silly!" ( face="happy") + gen "(...)" ("base", xpos="far_left", ypos="head") + ast "Well alright... M-master--" ( face="happy") + ast "*Ha-ha-ha-ha*--{w=1.0}{nw}" ( face="happy") + with hpunch + gen "Shut it... or there will be consequences!" ("angry", xpos="far_left", ypos="head") + ast "I'm sorry... It won't happen again, master..." ( face="neutral") + jump astoria_talk + "-Custom Input-" (style="disabled") if ast_whoring < 18: + gen "(I don't think she's yet ready for that)" ("base", xpos="far_left", ypos="head") + jump astoria_talk + + "-Custom Input-" if ast_whoring >= 18: + $ temp_name = renpy.input("(Please enter the name.)", ast_genie_name, ALLOWED_CHARACTERS, length=14) + $ temp_name = temp_name.strip() + + if temp_name.lower() in ("sir", "dumbledore", "professor", "old man", "genie", "lord voldemort", "daddy", "master"): + if temp_name.lower() == "master" and ast_whoring < 18: + jump astoria_talk.master_fail + $ renpy.jump("astoria_talk."+temp_name.lower().replace(" ", "_")) # Jump to local label + elif temp_name == "": + jump astoria_talk + else: + $ ast_genie_name = temp_name + ast "*Uhm*... ok. I will call you [ast_genie_name]." ( face="neutral") + jump astoria_talk + "-Never mind-": + jump astoria_talk + + + "-From now on I will refer to you as-": + menu: + "-Miss Greengrass-": + label .miss_greengrass: + $ astoria_name = "Miss Greengrass" + ast "Sure, [ast_genie_name]." ( face="happy") + jump astoria_talk + "-Astoria-": + label .Astoria: + $ astoria_name = "Astoria" + ast "Finally getting rid of this formal bullshit? I approve!" ( face="happy") + jump astoria_talk + "-Girl-": + label .girl: + $ astoria_name = "Girl" + ast "Okay, [ast_genie_name]." ( face="neutral") + jump astoria_talk + "-Princess-": + label .princess: + $ astoria_name = "Princess" + ast "I really do feel like a princess!" ( face="happy") + ast "After all, I can do whatever I want!" ( face="angry") + jump astoria_talk + "-Cutie-": + label .cutie: + $ astoria_name = "Cutie" + ast "Fine... If you really have to, [ast_genie_name]." ( face="disgusted") + jump astoria_talk + "-Slave-" (style="disabled") if ast_whoring < 18: + label .slave_fail: + ast "I'm not your slave, [ast_genie_name]!" ( face="angry") + gen "Of course you aren't! We are just playing a game, that's all..." ("base", xpos="far_left", ypos="head") + ast "Well, I don't like your games!" ( face="angry") + ast "Forget it!" ( face="angry") + jump astoria_talk + "-Slave-" if ast_whoring >= 18: + label .slave: + $ astoria_name = "Slave" + ast "I'm not your slave, [ast_genie_name]!" ( face="angry") + gen "Of course you aren't! We are just playing a game, that's all..." ("base", xpos="far_left", ypos="head") + ast "Oh I like games!" ( face="happy") + ast "Alrighty then!" ( face="happy") + jump astoria_talk + + "-Custom Input-" (style="disabled") if ast_whoring < 18: + gen "(I don't think she's yet ready for that)" ("base", xpos="far_left", ypos="head") + jump astoria_talk + + "-Custom Input-" if ast_whoring >= 18: + $ temp_name = renpy.input("(Please enter the name.)", astoria_name, ALLOWED_CHARACTERS, length=14) + $ temp_name = temp_name.strip() + + if temp_name.lower() in ("miss greengrass", "girl", "princess", "cutie", "slave"): + if temp_name.lower() == "slave" and ast_whoring < 18: + jump astoria_talk.slave_fail + $ renpy.jump("astoria_talk."+temp_name.lower().replace(" ", "_")) # Jump to local label + elif temp_name == "": + jump astoria_talk + else: + $ astoria_name = temp_name + ast "That's a bit much, don't you think, [ast_genie_name]?" ( face="disgusted") + gen "Not at all!" ("base", xpos="far_left", ypos="head") + gen "I will only call you that when we are alone, promised!" ("base", xpos="far_left", ypos="head") + ast "Well... Okay then..." ( face="neutral") + jump astoria_talk + "-Never mind-": + jump astoria_talk + + "-Never mind-": + jump astoria_requests diff --git a/game/scripts/characters/astoria/vars.rpy b/game/scripts/characters/astoria/vars.rpy new file mode 100644 index 00000000..0473124d --- /dev/null +++ b/game/scripts/characters/astoria/vars.rpy @@ -0,0 +1,19 @@ + +# Flags +default astoria_busy = False +default astoria_unlocked = False +default astoria_wardrobe_unlocked = False +default astoria_chatted = False +default astoria_outfits_schedule = True + +# Names +default astoria_name = "Astoria" +default ast_genie_name = "Sir" +default ast_susan_name = "Cow" +default ast_tonks_name = "Old Hag" + +# Stats +default ast_whoring = 0 # Affection level +default ast_mood = 0 + +default gave_astoria_gift = False diff --git a/game/scripts/characters/astoria/wardrobe.rpy b/game/scripts/characters/astoria/wardrobe.rpy new file mode 100644 index 00000000..20fbda84 --- /dev/null +++ b/game/scripts/characters/astoria/wardrobe.rpy @@ -0,0 +1,110 @@ +############### +## Character ## +############### + +default astoria = Doll(name="astoria", + clothes={"headgear": [None, 15, True], + "hair": [None, 4, True], + "glasses": [None, 12, True], + "earrings": [None, 14, True], + "neckwear": [None, 11, True], + "robe": [None, 28, True], + "gloves": [None, 21, True], + "top": [None, 15, True], + "bra": [None, 9, True], + "bottom": [None, 8, True], + "garterbelt": [None, 7, True], + "panties": [None, 6, True], + "stockings": [None, 5, True], + "buttplug": [None, -1, True], + "pubes": [None, 3, True], + "tattoo0": [None, 1, True], + "tattoo1": [None, 1, True], + "tattoo2": [None, 1, True], + "tattoo3": [None, 1, True], + "tattoo4": [None, 1, True], + "piercing0": [None, 2, True], + "piercing1": [None, 2, True], + "piercing2": [None, 2, True], + "piercing3": [None, 2, True], + "piercing4": [None, 2, True], + "accessory0": [None, 12, True], + "accessory1": [None, 12, True], + "accessory2": [None, 12, True], + "accessory3": [None, 12, True], + "accessory4": [None, 12, True], + "makeup0": [None, 3, True], + "makeup1": [None, 3, True], + "makeup2": [None, 3, True], + "makeup3": [None, 3, True], + "makeup4": [None, 3, True]}, + face={"tears": [None, 12, True], + "cheeks": [None, 7, True], + "eyebrows": ["base", 11, True], + "eyes": ["base", 8, True], + "pupils": ["mid", 9, True], + "mouth": ["base", 13, True]}, + body={"armleft": ["on_hips", 3], + "armright":["on_hips", 1], + "base": ["front", 0], + "breasts": ["normal", 2]}) + +####################### +## Schoolgirl Outfit ## +####################### + +default ast_hair_base = DollCloth("astoria", ("head", "hair"), "hair", "base", [[229, 198, 129, 255], [163, 125, 80, 255]], unlocked=True) +default ast_hair_short = DollCloth("astoria", ("head", "hair"), "hair", "short", [[229, 198, 129, 255], [163, 125, 80, 255]], unlocked=True) + +default ast_top_school1 = DollCloth("astoria", ("upper body", "shirts"), "top", "top_school_1", [[183, 183, 184, 255], [109, 105, 121, 255], [58, 115, 75, 255], [205, 205, 206, 255]], armfix=True, unlocked=True) +default ast_top_school2 = DollCloth("astoria", ("upper body", "shirts"), "top", "top_school_2", [[183, 183, 184, 255], [109, 105, 121, 255], [58, 115, 75, 255], [205, 205, 206, 255]], level=4, armfix=True, unlocked=True) +default ast_top_school3 = DollCloth("astoria", ("upper body", "shirts"), "top", "top_school_3", [[183, 183, 184, 255], [58, 115, 75, 255], [205, 205, 206, 255]], level=8, armfix=True, unlocked=True) +default ast_top_school4 = DollCloth("astoria", ("upper body", "shirts"), "top", "top_school_4", [[183, 183, 184, 255], [58, 115, 75, 255], [205, 205, 206, 255]], level=8, armfix=True, unlocked=True) +default ast_top_school5 = DollCloth("astoria", ("upper body", "shirts"), "top", "top_school_5", [[183, 183, 184, 255], [58, 115, 75, 255], [205, 205, 206, 255]], level=12, armfix=True, unlocked=True) +default ast_top_school6 = DollCloth("astoria", ("upper body", "shirts"), "top", "top_school_6", [[109, 105, 121, 255], [58, 115, 75, 255], [205, 205, 206, 255]], level=12, armfix=True, unlocked=True) + +default ast_bottom_skirt1 = DollCloth("astoria", ("lower body", "skirts"), "bottom", "school_skirt_1", [[103, 90, 108, 255], [232, 177, 13, 255]], armfix=True, unlocked=True) +default ast_bottom_skirt2 = DollCloth("astoria", ("lower body", "skirts"), "bottom", "school_skirt_2", [[103, 90, 108, 255], [232, 177, 13, 255]], level=4, armfix=True, unlocked=True) +default ast_bottom_skirt3 = DollCloth("astoria", ("lower body", "skirts"), "bottom", "school_skirt_3", [[103, 90, 108, 255], [232, 177, 13, 255]], level=8, armfix=True, unlocked=True) +default ast_bottom_skirt4 = DollCloth("astoria", ("lower body", "skirts"), "bottom", "school_skirt_4", [[103, 90, 108, 255], [232, 177, 13, 255]], level=12, armfix=True, unlocked=True) + +default ast_bra_basic1 = DollCloth("astoria", ("upper undergarment", "bras"), "bra", "basic_bra_1", [[213, 62, 65, 255], [234, 236, 234, 255]], unlocked=True) +default ast_bra_basic2 = DollCloth("astoria", ("upper undergarment", "bras"), "bra", "basic_bra_2", [[213, 62, 65, 255]], unlocked=True) +default ast_panties_basic1 = DollCloth("astoria", ("lower undergarment", "panties"), "panties", "basic_panties_1", [[213, 62, 65, 255], [234, 236, 234, 255]], armfix=True, unlocked=True) +default ast_panties_basic2 = DollCloth("astoria", ("lower undergarment", "panties"), "panties", "basic_panties_2", [[213, 62, 65, 255]], armfix=True, unlocked=True) + +default ast_outfit_default = DollOutfit([ast_hair_base, ast_top_school1, ast_bottom_skirt1, ast_bra_basic1, ast_panties_basic1], unlocked=True) +default ast_outfit_last = DollOutfit([ast_hair_base], hidden=True) + +################ +## Ann Outfit ## +################ + +default ast_hair_ann = DollCloth("astoria", ("head", "hair"), "hair", "ann_takamaki", [[229, 198, 129, 255], [163, 125, 80, 255], [255, 209, 105, 255]]) +default ast_hat_ann = DollCloth("astoria", ("head", "headgear"), "headgear", "ann_takamaki", [[173, 18, 18, 255], [238, 188, 187, 255]], level=14) +default ast_top_ann = DollCloth("astoria", ("upper body", "other"), "top", "ann_takamaki", [[173, 18, 18, 255], [232, 232, 232, 255], [238, 188, 187, 255]], level=14, blacklist=("bottom", "bra", "garterbelt"), armfix=True) +default ast_stockings_ann = DollCloth("astoria", ("legwear", "stockings"), "stockings", "ann_takamaki", [[99, 42, 42, 255], [181, 135, 135, 255]], level=14, blacklist=["bottom"], armfix=True) +default ast_gloves_ann = DollCloth("astoria", ("upper body", "gloves"), "gloves", "ann_takamaki", [[249, 139, 225, 255]]) +default ast_buttplug_ann = DollCloth("astoria", ("misc", "accessory"), "accessory0", "ann_takamaki", [[99, 42, 42, 255], [181, 135, 135, 255]], level=14, zorder=-1) + +default ast_outfit_ann = DollOutfit([ast_hair_ann, ast_hat_ann, ast_top_ann, ast_stockings_ann, ast_gloves_ann, ast_buttplug_ann, ast_panties_basic1], price=500, name="Ann Costume", desc="Wearing this will make you look like a different persona.") + +########## +## Misc ## +########## + +default ast_cloth_pants1 = DollCloth("astoria", ("lower body", "trousers"), "bottom", "pants_1", [[180, 180, 180, 255], [213, 161, 13, 255]], armfix=True, unlocked=True) +default ast_cloth_shorts1 = DollCloth("astoria", ("lower body", "shorts"), "bottom", "pants_1_short", [[180, 180, 180, 255], [213, 161, 13, 255]], level=8, armfix=True, unlocked=True) +default ast_cloth_pantyhose1 = DollCloth("astoria", ("legwear", "pantyhose"), "stockings", "pantyhose", [[190, 146, 129, 255]], armfix=True, unlocked=True) + +################ +## Pubic Hair ## +################ + +default ast_pubes_arrow = DollCloth("astoria", ("lower undergarment", "pubes"), "pubes", "arrow", [[229, 198, 129, 255]], unlocked=True) +default ast_pubes_beaver = DollCloth("astoria", ("lower undergarment", "pubes"), "pubes", "beaver", [[229, 198, 129, 255]], unlocked=True) +default ast_pubes_stuble = DollCloth("astoria", ("lower undergarment", "pubes"), "pubes", "stuble", [[139, 107, 69, 255]], unlocked=True) +default ast_pubes_unshaved = DollCloth("astoria", ("lower undergarment", "pubes"), "pubes", "unshaved", [[139, 107, 69, 255]], unlocked=True) + +# Lipstick (DollLipstick) +default ast_makeup4_lipstick = DollLipstick("astoria", ("head", "makeup"), "makeup4", "lipstick", [[255, 70, 70, 255]], unlocked=True) diff --git a/game/scripts/characters/astoria/wardrobe_reactions.rpy b/game/scripts/characters/astoria/wardrobe_reactions.rpy new file mode 100644 index 00000000..3273e399 --- /dev/null +++ b/game/scripts/characters/astoria/wardrobe_reactions.rpy @@ -0,0 +1,286 @@ +define ast_requirements = { + "category upper undergarment": 5, + "category lower undergarment": 5, + "category piercings & tattoos": 16, + "touch head": 4, + "touch breasts": 12, + "touch vagina": 18, + "unequip panties": 15, + "unequip bra": 15, + "unequip top": 3, + "unequip bottom": 3, + } + +define ast_responses = { + "category_fail": "ast_reaction_category_fail", + "equip": "ast_reaction_equip", + "equip_fail": "ast_reaction_equip_fail", + "unequip": "ast_reaction_unequip", + "unequip_fail": "ast_reaction_unequip_fail", + "touch": "ast_reaction_touch", + "touch_fail": "ast_reaction_touch_fail", + "equip_outfit": "ast_reaction_equip_outfit", + "equip_outfit_fail": "ast_reaction_equip_outfit_fail", + "blacklist": "ast_reaction_blacklist", + "fallback": "ast_reaction_fallback", +} + +label ast_reaction_category_fail(category): + if category == "upper undergarment": + ast "Good one sir!" ("smile", "narrow", "base", "mid") + gen "I wasn't--" ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + elif category == "lower undergarment": + ast "Why would I do that?" ("base", "narrow", "angry", "R") + gen "I don't know, why wouldn't you do it?" ("base", xpos="far_left", ypos="head") + ast "..." ("base", "narrow", "base", "down") + elif category == "piercings & tattoos": + ast "Sounds awesome but you'll just make it something stupid." ("angry", "narrow", "base", "R") + gen "I'd never..." ("base", xpos="far_left", ypos="head") + ast "Lies..." ("clench", "base", "base", "mid") + return + +label ast_reaction_touch(what): + if what == "head": + $ mouse_headpat() + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + ast "Whatever..." ("base", "base", "base", "down") + elif random_number == 2: + ast "I'm only letting you do this cause you didn't snitch on me..." ("open", "closed", "base", "mid") + gen "Sure..." ("base", xpos="far_left", ypos="head") + elif random_number == 3: + ast "What's this obsession with petting coming from?" ("open", "narrow", "base", "L") + gen "*Err*..." ("base", xpos="far_left", ypos="head") + ast "When people called you eccentric I didn't think they meant bonkers mad..." ("clench", "closed", "base", "down") + elif what == "breasts": + $ mouse_heart() + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + ast "You're really enjoying that aren't you?" ("base", "narrow", "base", "mid") + ast "Well I guess you're just a man after all..." ("open", "closed", "base", "mid") + elif random_number == 2: + ast "Hey!" ("clench", "base", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + ast "..." ("grin", "narrow", "base", "L") + elif random_number == 3: + ast "Gross..." ("annoyed", "narrow", "base", "mid") + elif what == "vagina": + $ mouse_heart() + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + ast "What do you think you're doing?" ("clench", "base", "base", "mid", cheeks="blush") + gen "Kissing you?" ("base", xpos="far_left", ypos="head") + ast "Surely that's against some rule..." ("annoyed", "base", "base", "R") + gen "Worried about rule breaking all of a sudden are we?" ("base", xpos="far_left", ypos="head") + ast "No..." ("base", "narrow", "base", "mid") + elif random_number == 2: + ast "Aren't you a bold one..." ("base", "narrow", "base", "mid") + elif random_number == 3: + ast "Thought you could slip past my wards did you?" ("clench", "base", "base", "mid") + ast "I'll have you know I felt none of that!" ("open", "closed", "base", "mid", cheeks="blush") + + return + +label ast_reaction_touch_fail(what): + if what == "head": + $ random_number = renpy.random.randint(1, 6) + $ mouse_slap() + + if random_number == 1: + ast "Hey!" ("annoyed", "base", "angry", "mid") + elif random_number == 2: + ast "I'm not your pet, [ast_genie_name]..." ("clench", "base", "base", "mid") + elif random_number == 3: + ast "Oh sorry, my hand slipped." ("annoyed", "closed", "angry", "mid") + elif random_number == 4: + ast "Do that again and you'll regret it..." ("base", "base", "base", "mid") + elif random_number == 5: + ast "Stop..." ("base", "base", "base", "mid") + elif random_number == 6: + ast "Don't!" ("clench", "base", "base", "mid") + $ mouse_slap() + ast "Don't!{fast} Do!" ("clench", "narrow", "base", "mid") + $ mouse_slap() + ast "Don't! Do!{fast} That!" ("scream", "narrow", "angry", "mid") + $ mouse_slap() + ast "Don't! Do! That!{fast} Again!" ("scream", "closed", "angry", "mid") + $ mouse_slap() + call play_sound("kick") + with hpunch + pause 1.0 + gen "(Ouch, that hurt!)" ("angry", xpos="far_left", ypos="head") + + elif what == "breasts": + $ random_number = renpy.random.randint(1, 7) + $ mouse_slap() + + if random_number == 1: + ast "Hey, cut that out!" ("angry", "narrow", "base", "mid") + elif random_number == 2: + ast "Ouch, that hurts..." ("base", "base", "angry", "mid") + elif random_number == 3: + ast "Hey, no nipple twisters..." ("clench", "base", "base", "mid") + elif random_number == 4: + ast "Bad Touch!" ("upset", "closed", "base", "mid") + elif random_number == 5: + ast "*EEEH* Don't you have better things to do?" ("scream", "closed", "angry", "mid") + elif random_number == 6: + ast "{size=+5}What are you doing?{/size}" ("scream", "narrow", "angry", "L") + elif random_number == 7: + ast "Stop that!" ("upset", "narrow", "base", "mid") + + elif what == "vagina": + $ random_number = renpy.random.randint(1, 7) + $ mouse_slap() + + if random_number == 1: + ast "Hey, that's private property." ("base", "narrow", "angry", "down") + elif random_number == 2: + ast "Get your filthy hands off me, [ast_genie_name]." ("upset", "narrow", "base", "mid") + elif random_number == 3: + ast "Stop it, you creep." ("annoyed", "narrow", "angry", "R") + elif random_number == 4: + ast "Why would you do that... nasty old man..." ("clench", "narrow", "base", "L") + elif random_number == 5: + ast "Don't touch me..." ("clench", "base", "base", "mid") + elif random_number == 6: + ast "Don't be gross, [ast_genie_name]." ("base", "base", "base", "mid") + elif random_number == 7: + ast "..." ("clench", "closed", "base", "mid") + return + +label ast_reaction_equip(item): + ### Add specific clothing reactions here. + # if item == : + # ast "This looks awesome! I'll wear this with pride!" + return + +label ast_reaction_equip_fail(item): + ### Add specific clothing reactions here. + # if item == : + # ast "I won't wear because!" + # else: + # + + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + ast "*Nuh-uh*, I'm not putting that on." ("clench", "closed", "base", "mid") + elif random_number == 2: + ast "*Pfff* You want me to wear that? In your dreams old man..." ("annoyed", "narrow", "angry", "R") + else: + ast "Don't be such a creep, thanks but no thanks." ("upset", "narrow", "base", "mid") + + return + +label ast_reaction_unequip(item): + ### Example + # if item.type == "panties": + # if ast_whoring > 15: + # ast "You want to see my snatch?" + # ast "You got it [genie_name]!" + # + return + +label ast_reaction_unequip_fail(item): + if item.type == "panties": + $ random_number = renpy.random.randint(1, 3) + + ast "Like hell! Take off your own panties old man..." ("clench", "closed", "base", "mid") + + show screen blkfade + with d5 + + $ renpy.sound.play("sounds/zipper.ogg") + ast "W-What are you doing?!" ("scream", "narrow", "angry", "L") + call play_sound("thump") + with hpunch + pause 0.5 + ast "Oh my god-- is that...?!" ("upset", "narrow", "base", "mid") + gen "..." ("grin", xpos="far_left", ypos="head") + $ mouse_slap() + with vpunch + + hide screen blkfade + with d5 + + gen "Did you really have to slap me?" ("angry", xpos="far_left", ypos="head") + ast "You deserved it you perverted... Pervert!" ("scream", "closed", "angry", "mid") + + elif item.type == "bra": + ast "Why would you even suggest that?" ("clench", "closed", "base", "mid") + + elif item.type == "top": + ast "Ha! Keep dreaming old man!" ("smile", "narrow", "base", "mid") + + elif item.type == "bottom": + ast "My bottoms stay where they are and that's final!" ("annoyed", "narrow", "angry", "R") + return + +label ast_reaction_equip_outfit(item): + ### Add specific Outfit reactions here. + # if item == : + # ast "This looks awesome! I'll wear this with pride!" + + # TODO: Blacklist fallbacks have to be added. + return + +label ast_reaction_equip_outfit_fail(item): + ### Add specific Outfit reactions here. + # if item == : + # ast "I won't wear because!" + # else: + # + + ast "That's way beyond what I would consider dignified." ("annoyed", "narrow", "angry", "R") + + if susan_unlocked: + ast "Consider asking Susan instead." ("base", "narrow", "base", "mid") + ast "I'm sure she'd enjoy wearing it for you, that cow." ("smile", "narrow", "base", "R") + + return + +label ast_reaction_blacklist(item): + ast "Aren't you demanding too much, [ast_genie_name]?" ("annoyed", "narrow", "base", "R") + + if "top" in item.blacklist and astoria.is_worn("top"): + ast "My topmost garment won't work with that." ("upset", "base", "base", "mid") + + if "bottom" in item.blacklist and astoria.is_worn("bottom"): + ast "Wearing bottoms with this would be a fashion-crime." ("clench", "base", "base", "mid") + + if "bra" in item.blacklist and astoria.is_worn("bra"): + ast "I'd have to take off my bra." ("base", "base", "base", "down") + + if "panties" in item.blacklist and astoria.is_worn("panties"): + ast "How do I even wear panties with that?" ("annoyed", "base", "base", "down") + + ast "This is stupid..." ("base", "base", "base", "mid") + + if susan_unlocked: + gen "Perhaps I'll ask Susan instead--" ("base", xpos="far_left", ypos="head") + + ast "J-Just give me that!" ("annoyed", "base", "base", "L") + + return + +label ast_reaction_fallback(item): + if ast_whoring < get_character_requirement("astoria", "unequip top") and not "top" in astoria.blacklist and not item.type == "top": + $ astoria.equip(ast_top_school1) + + if ast_whoring < get_character_requirement("astoria", "unequip bottom") and not "bottom" in astoria.blacklist and not item.type == "bottom": + $ astoria.equip(ast_bottom_skirt1) + + if ast_whoring < get_character_requirement("astoria", "unequip bra") and not "bra" in astoria.blacklist and not item.type == "bra": + $ astoria.equip(ast_bra_basic1) + + if ast_whoring < get_character_requirement("astoria", "unequip panties") and not "panties" in astoria.blacklist and not item.type == "panties": + $ astoria.equip(ast_panties_basic1) + + ast "Just give me a second, I need to get my clothes back in order." ("open", "base", "base", "R") + ast "" ("base", "base", "base", "mid") + return diff --git a/game/scripts/characters/cho/chibi.rpy b/game/scripts/characters/cho/chibi.rpy new file mode 100644 index 00000000..4dc78c53 --- /dev/null +++ b/game/scripts/characters/cho/chibi.rpy @@ -0,0 +1,106 @@ +label cho_chibi(action=None, xpos=None, ypos=None, flip=False): + $ cho_chibi.position(xpos, ypos, flip) + + if action == "hide": + $ cho_chibi.hide() + return + elif action == "leave": + hide cho_main + hide screen bld1 + hide screen blktone + call play_sound("door") + $ cho_chibi.hide() + with d3 + pause .5 + return + elif action == "reset": + $ cho_chibi.do(None) + return + + $ cho_chibi.do(action) + + return + +label cho_walk(xpos=None, ypos=None, speed=1.0, action=None, reduce=False, path=None, flip=False): + call hide_characters + hide screen bld1 + hide screen blktone + with d3 + + if action == "enter": + call play_sound("door") + call cho_chibi(None, "door", "base", flip) + with d3 + if xpos or ypos: + $ cho_chibi.move((xpos, ypos), speed, reduce) + elif action == "leave": + $ cho_chibi.show() + $ cho_chibi.move(("door", "base"), speed, reduce) + call play_sound("door") + $ cho_chibi.hide() + with d3 + pause .5 + elif path: + $ cho_chibi.show() + $ cho_chibi.move(path, speed, reduce) + else: + $ cho_chibi.show() + $ cho_chibi.move((xpos, ypos), speed, reduce) + + return + +# Screens +screen cho_cloth_pile(position=(440, 425)): # Default position: Right of desk, below feet. + tag cho_cloth_pile + zorder cho_chibi.zorder + add "characters/chibis/cloth_pile_r.webp" pos position zoom 0.5 + +# Chibi definition +default cho_chibi = Chibi("cho", ["fix", "base", "bottom", "shoes", "top", "robe", "gloves"], update_cho_chibi) + +init python: + def update_cho_chibi(chibi): + # Assume chibi action has a matching image definition + chibi_image = "ch_cho {}".format(chibi.action or "stand") + chibi["base"] = chibi_image + + # Determine clothing state + + if cho.is_worn("top"): + if cho.get_equipped("top").id == "top_sweater_1": + chibi["top"] = "cc_sweater.webp" + else: + chibi["top"] = "cc_top.webp" + + if cho.is_worn("bottom"): + if cho.get_equipped("bottom").id in ("pants_long_2", "pants_short_4"): + if chibi.action == "walk": + chibi["bottom"] = "ch_cho trousers" + else: + chibi["bottom"] = "cc_trousers.webp" + else: + chibi["bottom"] = "cc_skirt.webp" + + if cho.is_worn("gloves"): + if cho.get_equipped("gloves").id == "quidditch": + chibi["gloves"] = "cc_gloves.webp" + + if cho.is_worn("robe"): + if cho.get_equipped("robe").id == "robe_quidditch_1": + chibi["robe"] = "cc_quid_robe.webp" + if not chibi.special: + chibi["fix"] = "cc_quid_robe_fix.webp" + else: + chibi["robe"] = "cc_robe.webp" + + if cho.is_any_worn("bottom", "stockings"): + if cho.is_worn("gloves") and cho.get_equipped("gloves").id == "quidditch": + if chibi.action == "walk": + chibi["shoes"] = "ch_cho walk_quid_shoes" + else: + chibi["shoes"] = "cc_quid_shoes.webp" + else: + if chibi.action == "walk": + chibi["shoes"] = "ch_cho walk_shoes" + else: + chibi["shoes"] = "cc_shoes.webp" diff --git a/game/scripts/characters/cho/chitchats.rpy b/game/scripts/characters/cho/chitchats.rpy new file mode 100644 index 00000000..aee8704b --- /dev/null +++ b/game/scripts/characters/cho/chitchats.rpy @@ -0,0 +1,207 @@ + +label cho_chitchat: + + if cho_chatted: + return + + $ cho_chatted = True + + if cho_tier == 1: #Pre Hufflepuff + $ random_number = renpy.random.randint(1, 11) + + if random_number == 1: + cho "Of course I nailed my first flying lesson, I was practically born with a broom between my legs." ("smile", "closed", "base", "mid") + cho "" ("smile", "base", "base", "mid") + + elif random_number == 2: + cho "I've been an avid fan of Quidditch ever since the age of six." ("smile", "base", "base", "mid") + cho "The Tutshill Tornadoes is my favourite team, and I hope I'll get to where they are one day..." ("base", "base", "base", "mid") + + elif random_number == 3: + cho "I couldn't believe it when they appointed me as a seeker for the Ravenclaw try outs." ("smile", "narrow", "base", "down") + cho "It's the most important role in Quidditch! Without a good seeker the game literally wont end." ("grin", "narrow", "base", "mid") + cho "" ("base", "base", "base", "mid") + + elif random_number == 4: + cho "I hope I'll be as good a seeker as Roderick Plumpton one day..." ("open", "narrow", "base", "down") + cho "Managing to catch the snitch in only three and a half seconds is a legendary feat." ("smile", "base", "base", "mid") + cho "Although I doubt the audience was too happy about paying the full ticket price for that game." ("smile", "narrow", "base", "R") + + elif random_number == 5: + cho "Most students complain about all the walking they have to do to get to their classes." ("open", "base", "base", "mid") + cho "Lazy is what they are... I've already been up for hours before they even manage roll out of bed." ("open", "closed", "base", "mid") + cho "" ("base", "base", "base", "mid") + + elif random_number == 6: + cho "I wish I would've been born when the Tutshill Tornadoes won the British and Irish league five times in a row." ("soft", "narrow", "base", "down") + cho "Hold on, you were alive when--" ("angry", "base", "base", "down") + cho "[cho_genie_name], please tell me all you know about it!" ("smile", "wide", "base", "mid") + cho "" ("base", "base", "base", "mid") + + elif random_number == 7: + cho "[cho_genie_name], could you please have a talk with Professor McGonagall." ("annoyed", "base", "base", "mid") + cho "She took ten points off Ravenclaw when I arrived late to her class after practice the other day." ("disgust", "base", "base", "R") + cho "But she's never taken any points off Gryffindor even though some of their team members have arrived late multiple times." ("annoyed", "narrow", "base", "mid") + + elif random_number == 8: + cho "Why don't we learn much about history of Quidditch in this school?" ("angry", "closed", "base", "mid") + cho "Although I suppose it wouldn't be history of magic if we focused on something that students actually care about." ("soft", "narrow", "base", "R") + + elif random_number == 9: + cho "I don't want to ask for too much, but..." ("soft", "base", "base", "downR") + cho "Would you consider installing a landing pad on the Ravenclaw Tower?" ("soft", "wink", "base", "mid") + cho "And how about making owning a broom mandatory to attend Hogwarts?" ("smile", "base", "base", "mid") + + elif random_number == 10: + cho "As a seeker, it is very important that I keep in shape." ("open", "closed", "base", "mid") + cho "Even though I spend most of the game searching for the snitch, the required effort to catch that thing is way higher than anything the other players has to endure." ("open", "closed", "base", "mid") + cho "" ("base", "base", "base", "mid") + + elif random_number == 11: + cho "It's a shame Brooms are so easy to spot... Even flying close to smaller muggle villages is a risk." ("open", "base", "base", "R") + + pass + elif cho_tier == 2: #Pre Slytherin + $ random_number = renpy.random.randint(1, 10) + + if random_number == 1: + cho "I've got a bunch of admirers now since my win against Hufflepuff." ("smile", "base", "base", "mid") + cho "But I can't let that distract me from my training." ("base", "base", "base", "mid") + + elif random_number == 2: + cho "I've had a pair of panties go missing after a recent practice game..." ("open", "narrow", "base", "R") + cho "Not my lucky pair though fortunately... I only wear those during the official matches." ("soft", "base", "base", "R") + + elif random_number == 3: + cho "I sent an owl telling my parents about our win against Hufflepuff, they couldn't believe it!" ("smile", "happyCl", "base", "mid") + cho "Although perhaps they would if they knew what I did to beat Cedric..." ("smile", "narrow", "base", "R") + cho "From what I've heard from my mother, his obsession with panties runs in the family." ("base", "narrow", "base", "R") + + elif random_number == 4: + cho "There's nothing quite like the feeling of the rush of air running through your hair when up on that broom." ("smile", "closed", "base", "mid") + cho "It's very freeing." ("base", "narrow", "base", "mid") + + elif random_number == 5: + cho "I thought wearing a skirt on a broom would've been terrible, but it wasn't as bad as I had imagined..." ("soft", "narrow", "base", "R") + + elif random_number == 6: + cho "I was quite surprised when you showed so much interest about getting involved with quidditch..." ("soft", "base", "base", "mid") + cho "I don't think even our team captain shows as much enthusiasm." ("smile", "narrow", "base", "mid") + + elif random_number == 7: + cho "I can't believe your tactical methods were enough to have such an effect on Cedric." ("open", "narrow", "base", "down") + cho "Boys will be boys I suppose..." ("base", "narrow", "base", "down") + + elif random_number == 8: + cho "I can't believe I thought the Quidditch robes would be enough for the crowd not to notice me wearing a skirt during the last game." ("angry", "narrow", "base", "down") + cho "I wonder how many people saw it before Granger pointed it out..." ("soft", "narrow", "base", "down", cheeks="blush") + + elif random_number == 9: + cho "People skirting the rules in Quidditch is more common than most people think." ("open", "closed", "base", "mid") + cho "Illegal broom tampering... Jinxing off the other teams robes..." ("open", "narrow", "base", "downR") + cho "I'm surprised that you found there's nothing rule breaking about adjustments to your own clothing." ("smile", "narrow", "base", "mid") + + elif random_number == 10: + cho "I can't help but think about what would've happened if it had rained during the game against Hufflepuff." ("angry", "narrow", "base", "R") + cho "It would probably have weighted down my robes too much to be able to distract Cedric." ("mad", "narrow", "base", "downR") + + + pass + elif cho_tier == 3: #Pre Gryffindor + $ random_number = renpy.random.randint(1, 10) + + if random_number == 1: + cho "I've been getting some odd looks from other students lately." ("soft", "narrow", "base", "R") + cho "*Hmph*... Jealousy, no doubt." ("open", "closed", "base", "mid", cheeks="blush") + + elif random_number == 2: + cho "[cho_genie_name], can you do anything about those Slytherins?" ("angry", "closed", "base", "mid") + cho "Ever since my match against them they don't seem to be able to take their eyes off my ass!" ("disgust", "narrow", "base", "mid") + + elif random_number == 3: + cho "I've been asked a lot about my exercise routines lately." ("soft", "narrow", "base", "R") + cho "Stretching in particular..." ("open", "narrow", "base", "R") + cho "No doubt trying to fish for a demonstration." ("base", "narrow", "base", "downR") + + elif random_number == 4: + cho "I've heard a lot more Ravenclaw quidditch chants in school lately. I'm so happy people are getting behind the team!" ("smile", "narrow", "base", "mid") + cho "Though, a lot of the chants do seem to involve my ass..." ("soft", "narrow", "base", "R") + + elif random_number == 5: + cho "If it helps the team win, I don't mind debasing myself." ("open", "closed", "base", "mid", cheeks="blush") + cho "All the greatest sportspeople in history made sacrifices!" ("open", "closed", "base", "mid", cheeks="blush") + cho "Y-- yeah, that's what I'll tell them..." ("soft", "narrow", "base", "downR", cheeks="blush") + + elif random_number == 6: + cho "You know, I have this weird feeling that this Quidditch season is revolving all around me. Like I'm some sort of protagonist in a book." ("disgust", "narrow", "base", "L") + + elif random_number == 7: + cho "Quite a few teachers started giving me weird looks." ("soft", "base", "base", "R") + cho "Although professor Snape still gives me the same look of contempt as usual..." ("soft", "narrow", "base", "R") + + elif random_number == 8: + cho "I'm glad our dormitory isn't in the basement like Hufflepuff and Slytherin." ("base", "closed", "base", "mid") + cho "Means I can take my broom for a midnight flight whenever I like." ("smile", "wink", "base", "mid") + cho "*Err*... I mean... I could do that if it's okay with you..." ("disgust", "narrow", "base", "mid") + + elif random_number == 9: + cho "You know, I think I look quite good wearing tight trousers." ("smile", "base", "base", "mid") + cho "No wonder those muscle obsessed Slytherins like it so much." ("smile", "narrow", "base", "R") + + elif random_number == 10: + cho "I always appreciate when you call me up to your office..." ("base", "narrow", "base", "mid") + cho "Although could you do it when we've got potions class next time?" ("smile", "wink", "base", "mid") + cho "" ("base", "base", "base", "mid") + + pass + elif cho_tier == 4: #After Quidditch Finals + $ random_number = renpy.random.randint(1, 11) + + if random_number == 1: + cho "I wake up earlier than my fellow teammates so that I can be naked when I do my stretching at the pitch." ("smile", "narrow", "base", "R") + cho "Of course Madam Hooch is there setting things up for the day but she doesn't mind." ("base", "narrow", "base", "R") + + elif random_number == 2: + cho "I wonder how many others have adopted Hooch's flying techniques after that last match." ("soft", "narrow", "base", "R", cheeks="blush") + cho "Hopefully they won't ban it... It is quite literally a game changer..." ("grin", "narrow", "base", "mid", cheeks="blush") + + elif random_number == 3: + cho "Madam Hooch let me keep her broom which I'm very thankful for." ("smile", "base", "base", "mid") + cho "Although perhaps it's time I do some personal adjustments..." ("base", "narrow", "base", "R", cheeks="blush") + + elif random_number == 4: + cho "People are still talking about the Ravenclaw versus Gryffindor game." ("smile", "wink", "base", "mid") + cho "Not so much the game itself, though..." ("smile", "narrow", "base", "mid") + + elif random_number == 5: + cho "Don't tell anyone... But I've always thought that one of the best parts of flying is the vibrations that come from the broom." ("smile", "narrow", "base", "R") + + elif random_number == 6: + cho "Does your bird always have such a blank look on its face?" ("soft", "narrow", "base", "L") + cho "I suppose when you're constantly reborn you must've seen anything and everything there ever is to see." ("soft", "narrow", "base", "L") + + elif random_number == 7: + cho "Robes sure are useful don't you think?" ("smile", "narrow", "base", "mid") + cho "As long as I keep them closed I could be wearing nothing underneath and nobody would ever know..." ("smile", "narrow", "base", "R", cheeks="blush") + + elif random_number == 8: + cho "The Slytherin students have been a lot nicer to me lately." ("soft", "base", "base", "mid") + cho "I suppose since they didn't make the finals, they were at least happy seeing Gryffindor lose." ("smile", "narrow", "base", "mid") + + elif random_number == 9: + cho "The one who was the most mad about Gryffindor loosing the Quidditch cup was probably Hermione." ("smile", "narrow", "base", "R") + cho "The girls on the Gryffindor Quidditch team were more interested in borrowing my broom than holding any sort of grudge." ("base", "narrow", "base", "mid") + + elif random_number == 10: + cho "So... How about we make this office a clothes free zone?" ("base", "narrow", "base", "mid") + cho "Like enchant the door so you can't enter if you got clothes on, or something." ("smile", "base", "base", "R") + cho "I'm sure some bitter old witch or wizard must've invented a spell like that so people wouldn't wander into their house with their shoes on..." ("base", "narrow", "base", "R") + + elif random_number == 11: + cho "I read somewhere that ejaculate is a good source of protein." ("open", "narrow", "base", "R") + cho "There's even a cook book!" ("smile", "wide", "base", "mid") + cho "The things you find hidden in the library..." ("grin", "narrow", "base", "R") + + + + return diff --git a/game/scripts/characters/cho/common.rpy b/game/scripts/characters/cho/common.rpy new file mode 100644 index 00000000..553bb948 --- /dev/null +++ b/game/scripts/characters/cho/common.rpy @@ -0,0 +1,123 @@ +define cho_face = { + "mouth": { + "neutral": ["base","normal","annoyed"], + "happy": ["base", "smile"], + "naughty": ["base","quiver","horny","soft"], + "horny": ["horny","soft"], + "annoyed": ["annoyed"], + "disgusted": ["disgust","upset"], + "angry": ["angry","clench","mad","upset"] + }, + + "eyes": { + "neutral": ["base","base","closed"], + "happy": ["base","base","happyCl"], + "naughty": ["narrow"], + "horny": ["narrow"], + "annoyed": ["narrow","narrow","closed"], + "disgusted": ["base","narrow"], + "angry": ["narrow"] + }, + + "eyebrows": { + "neutral": ["base"], + "happy": ["base"], + "naughty": ["base","raised","worried"], + "horny": ["base","raised"], + "annoyed": ["angry"], + "disgusted": ["base","raised","worried"], + "angry": ["angry"] + }, + + "pupils": { + "neutral": ["mid","L","R"], + "happy": ["mid","L","R"], + "naughty": ["mid","L","R","down","up"], + "horny": ["mid","L","R","down","up"], + "annoyed": ["mid","L","R","downR"], + "disgusted": ["mid","down"], + "angry": ["mid"] + } +} + +label update_cho: + + # Chibi Update + $ cho_chibi.update() + $ cho_chibi.position(flip=False) + $ cho.xzoom = 1 + hide screen cho_cloth_pile + + return + +label end_cho_event: + call cho_chibi("hide") + hide cho_main + with d3 + pause.5 + + call update_cho + + $ active_girl = None + $ cho_busy = True + $ cho.wear("all") + $ cho.set_cum(None) + + $ renpy.stop_predict(cho.get_image()) + $ renpy.stop_predict("characters/cho/face/*.webp") + + call music_block + jump main_room_menu + +define character.cho_say = Character("cho_name", show_icon="cho", dynamic=True) + +init python in character: + # Cho's name is short, therefore it needs to be initialised in character scope, + # otherwise we won't be able to use the same name for both Doll and Character calls. + def cho(what, mouth=False, eyes=False, eyebrows=False, pupils=False, cheeks=None, tears=None, + emote=None, face=None, xpos=None, ypos=None, pos=None, flip=None, trans=None, animation=False, **kwargs): + + redraw = False + tag = renpy.store.cho.tag + layer = renpy.store.cho.layer + #showing = renpy.showing(name=tag, layer=layer) + + if xpos != None or ypos != None: + xpos = renpy.store.cho.pos[0] if xpos == None else renpy.store.sprite_pos.get("x").get(xpos, xpos) + ypos = renpy.store.cho.pos[1] if ypos == None else renpy.store.sprite_pos.get("y").get(ypos, ypos) + renpy.store.cho.pos = (xpos, ypos) + redraw = True + + head_only = renpy.store.cho.pos[1] == renpy.store.sprite_pos.get("y").get("head") + + if any((mouth, eyes, eyebrows, pupils, cheeks, tears)): + renpy.store.cho.set_face(mouth=mouth, eyes=eyes, eyebrows=eyebrows, pupils=pupils, cheeks=cheeks, tears=tears) + redraw = True + + renpy.store.cho.set_emote(emote) + + if animation != False: + if isinstance(animation, list): + renpy.store.cho.animation = animation + else: + renpy.store.cho.animation = [animation] + redraw = True + + if flip != None: + renpy.store.cho.xzoom = -1 if flip else 1 + redraw = True + + if redraw: + renpy.store.cho.show() + + if not renpy.in_rollback(): + if trans: + renpy.with_statement(trans) + else: + renpy.with_statement(renpy.store.d2) + + if what: + cho_say(what, **kwargs) + + if head_only: + renpy.store.cho.hide() diff --git a/game/scripts/characters/cho/events/favors/NOT_IN_USE.txt b/game/scripts/characters/cho/events/favors/NOT_IN_USE.txt new file mode 100644 index 00000000..65fe1e75 --- /dev/null +++ b/game/scripts/characters/cho/events/favors/NOT_IN_USE.txt @@ -0,0 +1,67 @@ + +### Stretching ### + +label cho_stretching: # Not in use. + + #If you begin masturbating: + #Tell me how you get ready for practice... + + #If you don't masturbate: + #How about you do some squats for me... + + # Choice to start jerking off + menu: + "\"(I will jerk off a little while she talks.)\"": + $ cho_jerk_off_counter += 1 + $ genie_masturbating = True + "\"(I'll ask her to show her flexibility instead.)\"": + $ genie_masturbating = False + gen "In that case..." ("base", xpos="far_left", ypos="head") + + #Tell me how you get ready for practice: + if genie_masturbating: + gen "How about you start by telling me a little bit about your Quidditch training. How do you get ready for practice for example?" ("base", xpos="far_left", ypos="head") + cho "Okay..." + cho "Well, we usually wake up pretty early in the morning..." + "You take your cock out and begin stroking it underneath your desk" + cho "Once I'm up I usually start by doing some stretches to get the blood flowing." + gen "\"Keep talking and you'll get mine going pretty soon.\"" ("angry", xpos="far_left", ypos="head") + cho "Sometimes I'll have to do it in the dark not to wake anyone up..." + gen "\"Wakey wakey..." ("base", xpos="far_left", ypos="head") + cho "As during later parts of the year the sun hasn't even risen yet!" + gen "\"There we go, it's risen... Good morning!\"" ("grin", xpos="far_left", ypos="head") + cho "When I'm done with stretching I get dressed and make myself down to the great hall for breakfast..." + gen "\"Hhng... nude stretching...\"" ("angry", xpos="far_left", ypos="head") + cho" As a player on a Quidditch team we get the whole hall to ourselves and a specially protein rich and energy filled filled breakfast." + gen "\"Yes, protein rich... that's important. I'll have to remember that one...\"" ("base", xpos="far_left", ypos="head") + cho "And then...{nw}" + cho "Sir, are you still paying attention?" + gen "What?" ("base", xpos="far_left", ypos="head") + # Genie stops masturbating + cho "..." + gen "Protein rich breakfast... very important..." ("grin", xpos="far_left", ypos="head") + cho "Quite..." + cho "Anyway..." + + #How about you do some squats for me: + else: + gen "How about you start by doing some squats..." ("base", xpos="far_left", ypos="head") + cho "Squats, sir?" + gen "Yes, squats... You know, bend your knees and stretch your arms forward..." ("base", xpos="far_left", ypos="head") + cho "I know what squats are..." + cho "I'm just a bit confused as to why you want me to start doing squats in your office." + gen "Well, I need to see if what you're claiming is true. I'd like to see for myself if you're really on par with the rest of your team." ("base", xpos="far_left", ypos="head") + gen "You're asking a lot of me here if I were to break up any sort of student movement for you." ("base", xpos="far_left", ypos="head") + cho "I don't...{nw}" + gen "Unless what you're saying is just a lie and you're also just one of those amateur posers that you mentioned..." ("base", xpos="far_left", ypos="head") + cho "..." # Annoyed, blushing + cho "I'm not... look! Can a poser do this?" + # cho squats down (could just be sprite for starter) + # Later on if we add more chibi positions she'd show off even more here + gen "Impressive..." ("base", xpos="far_left", ypos="head") + cho "Thank you..." + gen "How about a handstand?" ("base", xpos="far_left", ypos="head") + cho "A handstand..." + cho "That hasn't been part of my training so far..." + gen "I see.." ("base", xpos="far_left", ypos="head") + cho "But I could...{nw}" diff --git a/game/scripts/characters/cho/events/favors/inspect_her_body.rpy b/game/scripts/characters/cho/events/favors/inspect_her_body.rpy new file mode 100644 index 00000000..bfe00699 --- /dev/null +++ b/game/scripts/characters/cho/events/favors/inspect_her_body.rpy @@ -0,0 +1,3374 @@ + + +### Cho Strip ### + +label cc_pf_strip: + + # Start Event + $ cc_pf_strip.start() + + # End Event Jump + label end_cho_strip_event: + + if cho_tier == 2 and cho_whoring < 9: # Points til 9 + $ cho_whoring += 1 + + if cho_tier == 3 and cho_whoring < 15: # Points til 15 + $ cho_whoring += 1 + + $ cho.wear("all") # Reset clothes + jump end_cho_event + +# TODO: Add Fail events as Tier 1, currently named Tier 1 events become Tier 2. + +### Tier 1 (pre Slytherin) ### + +label cc_pf_strip_T2_intro_E1: + gen "It's time for your next favour, [cho_name]." ("base", xpos="far_left", ypos="head") + cho "Of course, [cho_genie_name]." ("base", "base", "base", "mid") + cho "What would you like me to do?" ("soft", "base", "base", "mid") + gen "First, come a bit closer..." ("base", xpos="far_left", ypos="head") + cho "Very well, Sir." ("base", "base", "base", "mid") + + call cho_walk("desk", "base") + + cho "" (xpos="mid", ypos="base", trans=fade) + call ctc + + gen "How often do you typically exercise, Miss Chang?" ("base", xpos="far_left", ypos="head") + cho "As often as I can, [cho_genie_name]!" ("soft", "base", "base", "mid") + gen "Which is... how often, exactly? Twice a week?" ("base", xpos="far_left", ypos="head") + cho "Three times a day, Sir!" ("base", "narrow", "base", "mid") + with hpunch + gen "What?!" ("angry", xpos="far_left", ypos="head") + gen "(I don't even jerk off that often!)" ("angry", xpos="far_left", ypos="head") + gen "I find that a bit hard to believe... You're not embellishing the truth, are you?" ("base", xpos="far_left", ypos="head") + cho "I'm not, Sir! It's necessary for someone in my position!" ("open", "closed", "angry", "mid") + cho "I wake up every morning before dawn, then run around the Quidditch pitch until the sun rises!" ("open", "narrow", "angry", "mid") + cho "My body's at the absolute peak of human condition!" ("open", "narrow", "angry", "R") + gen "It is quite impressive..." ("angry", xpos="far_left", ypos="head") + cho "Glad to hear it, [cho_genie_name]." ("base", "happyCl", "base", "mid") + gen "I assume you get complimented often?" ("base", xpos="far_left", ypos="head") + cho "Sometimes..." ("soft", "base", "base", "R") + gen "And I suspect you have many admirers?" ("grin", xpos="far_left", ypos="head") + cho "Oh, *umm*... maybe?" ("annoyed", "base", "base", "mid") + cho "But that's {b}not{/b} why I take such great care of my body, Sir!" ("open", "narrow", "angry", "mid") + gen "Of course not..." ("base", xpos="far_left", ypos="head") + cho "Quidditch is a hard game for anyone, as I'm sure you know..." ("open", "closed", "base", "mid") + cho "But that goes double for girls!{w=0.6} I have to train twice as hard as the boys if I want to stand a chance!" ("open", "narrow", "angry", "mid") + gen "That's very commendable of you..." ("base", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("base", "base", "base", "mid") + + # Ask her to strip. + gen "So, Why don't you show me what you are made of?{w=1.0} Let me have a proper look at you!" ("grin", xpos="far_left", ypos="head") + cho "Sir?" ("soft", "wink", "raised", "mid") + gen "I need you to remove your clothes." ("base", xpos="far_left", ypos="head") + call play_music("stop") + cho "!!!" ("soft", "wide", "base", "mid", cheeks="blush") + call play_music("cho") + gen "Go on, girl. Start with the top..." ("base", xpos="far_left", ypos="head") + cho "No!" ("scream", "happyCl", "angry", "mid", cheeks="blush", trans=hpunch) + cho "Why are you even asking me to do such a thing?!" ("angry", "narrow", "angry", "mid") + #gen "Didn't you take your skirt off for me after the Hufflepuff match?" ("base", xpos="far_left", ypos="head") + #cho "{size=-4}Well, I probably shouldn't have done that..{/size}" ("annoyed", "base", "worried", "R") + #gen "Sorry?" ("base", xpos="far_left", ypos="head") + gen "Have you already forgotten that I'm here to train you?" ("base", xpos="far_left", ypos="head") + cho "And I'm very thankful for that sir, but..." ("open", "closed", "base", "mid") + gen "Am I not your trusted mentor?" ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid") + gen "Your strong advisor..." ("base", xpos="far_left", ypos="head") + gen "Your guardian angel!" ("grin", xpos="far_left", ypos="head") + cho "I don't think taking off my clothes will be necessary for our training, [cho_genie_name]." ("annoyed", "narrow", "angry", "R") + gen "I'm very disappointed I've got to say..." ("base", xpos="far_left", ypos="head") + gen "You aren't this shy about undressing in front of your team, are you?" ("base", xpos="far_left", ypos="head") + cho "That's entirely different!" ("soft", "narrow", "angry", "mid") + gen "How so?" ("base", xpos="far_left", ypos="head") + cho "I'm just not comfortable doing this in front of you, Sir!" ("soft", "closed", "worried", "mid") + cho "You're really old..." ("soft", "narrow", "worried", "downR", cheeks="blush") + gen "Pardon me?" ("base", xpos="far_left", ypos="head") + cho "I meant... you're our headmaster! It just feels wrong to me!" ("soft", "narrow", "worried", "mid") + #gen "It didn't bother you the last time you barged into my office..." ("base", xpos="far_left", ypos="head") + #cho "Well, we had just won the game and all that... Maybe my judgement..." ("annoyed", "closed", "worried", "R") + gen "Are you one of those shy girls, Miss Chang?" ("base", xpos="far_left", ypos="head") + cho "No, Sir. I wouldn't say I'm shy, but..." ("soft", "narrow", "worried", "downR") + gen "Well then prove me you aren't, girl!" ("base", xpos="far_left", ypos="head") + gen "Let me see it!" ("grin", xpos="far_left", ypos="head") + + # Cho stays reluctant. + cho "Is there no other way I could repay the favour?" ("annoyed", "narrow", "worried", "mid") + gen "Well, yes.{w=0.3} Several.{w} But we'll get to those later..." ("base", xpos="far_left", ypos="head") + cho "Later, Sir?" ("soft", "base", "raised", "mid") + gen "Girl, I wouldn't be asking you this if it wasn't absolutely necessary for your training!" ("angry", xpos="far_left", ypos="head") + cho "Of course, [cho_genie_name]." ("annoyed", "base", "base", "down") + gen "All that's required of you is to co-operate..." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "base", "worried", "mid", cheeks="blush") + gen "Now take off your top..." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid", cheeks="blush") + cho "Only my top?" ("soft", "narrow", "worried", "mid") + gen "Would you like to take off {b}more?{/b}" ("grin", xpos="far_left", ypos="head") + cho "I didn't mean it like that!" ("angry", "narrow", "angry", "mid") + gen "[cho_name], it's only the two of us in here. No need to worry." ("base", xpos="far_left", ypos="head") + cho "I'm not worried about others, [cho_genie_name]!" ("annoyed", "narrow", "angry", "mid") + cho "For as long as nobody else will find out...{w} You have to promise me that, Sir!" ("soft", "narrow", "angry", "R") + gen "Promised! Now take it off!" ("grin", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid") + gen "*Ahem*{w=0.5} Slowly..." ("base", xpos="far_left", ypos="head") + pause .5 + cho "" ("quiver", "happyCl", "worried", "mid", cheeks="blush") + pause .8 + + # Remove top. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("robe", "top") + with d3 + pause .5 + + cho "" ("quiver", "narrow", "worried", "mid", cheeks="blush") + call ctc + + menu: + "\"Your posture is remarkable!\"": + cho "Oh... Glad you noticed!" ("smile", "base", "base", "down") # Happy + cho "I'm relieved you actually show interest in my body status, Sir!" ("base", "base", "base", "mid") + gen "(Oh, You have no idea, girl!)" ("base", xpos="far_left", ypos="head") + cho "I thought you just wanted to gush at my body like all the other teachers..." ("soft", "narrow", "worried", "mid", cheeks="blush") + gen "Who?{w} Which other teachers are you talking about?{w} Snape?!" ("base", xpos="far_left", ypos="head") + cho "No, not Snape..." ("annoyed", "narrow", "angry", "R") + cho "(...)" ("annoyed", "base", "worried", "downR", cheeks="blush") + cho "Promise me you won't tell her!" ("quiver", "narrow", "worried", "mid", cheeks="blush") + gen "Her?!" ("base", xpos="far_left", ypos="head") + cho "Madame Hooch, Sir." ("soft", "narrow", "worried", "mid", cheeks="blush") + gen "Ah, the old, grey haired lady..." ("base", xpos="far_left", ypos="head") + cho "Yes, she's been eyeing me a lot lately..." ("annoyed", "base", "worried", "downR", cheeks="blush") + cho "Even more so after our recent game against Hufflepuff..." ("mad", "narrow", "worried", "R", cheeks="blush") + gen "I can't blame her... Your body is very pleasant to look at!" ("grin", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("base", "base", "base", "mid", cheeks="blush") + + "\"You have marvellous abs!\"": + gen "Magnificent." ("angry", xpos="far_left", ypos="head") + gen "Simply...{w} magnificent..." ("angry", xpos="far_left", ypos="head") + cho "*Ehm*..." ("annoyed", "narrow", "worried", "R", cheeks="blush") # Embarrassed + gen "As if Michelangelo himself carved them onto your flesh..." ("angry", xpos="far_left", ypos="head") + gen "I must say I'm very impressed!" ("base", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("soft", "narrow", "worried", "downR", cheeks="blush") + + "\"*Eh*, I've seen better, but that'll do.\"": + $ cho_mood += 3 + cho "What?!" ("mad", "base", "angry", "mid") # Upset + gen "(Crap!)" ("angry", xpos="far_left", ypos="head") + gen "What I meant to say is, you're in great shape but I still see room for improvements." ("base", xpos="far_left", ypos="head") + gen "I'm impressed nonetheless!" ("base", xpos="far_left", ypos="head") + cho "Thank you, I guess..." ("annoyed", "narrow", "angry", "downR", cheeks="blush") + + gen "None of the other girls I get to see here has such fine...{w=1.0} contours." ("base", xpos="far_left", ypos="head") + cho "Other girls?" ("soft", "wide", "base", "mid") + cho "[cho_genie_name], you aren't training anybody else in Quidditch besides me, are you?" ("soft", "narrow", "angry", "mid") + gen "What? Of course not..." ("base", xpos="far_left", ypos="head") + cho "Then which other girls are you talking about?" ("annoyed", "narrow", "angry", "mid") + gen "(Shit! I better just tell her the truth.)" ("angry", xpos="far_left", ypos="head") + gen "Just...{w=1.0} Granger..." ("base", xpos="far_left", ypos="head") + cho "*Phewww*{w=1.0} You scared me there for a second, Sir..." ("smile", "narrow", "worried", "mid") + gen "You... don't mind?" ("base", xpos="far_left", ypos="head") + cho "Please. Why should I care what Granger does for you in here?" ("soft", "narrow", "angry", "R") + cho "All she seems to care about is winning the house cup." ("open", "narrow", "angry", "R") + cho "As long as you don't help any Gryffindor or Slytherin sluts win the Quidditch cup, everything will be fine." ("base", "narrow", "base", "mid") + gen "No worries, [cho_name]. I don't have plans to train other {i}sluts{/i} in quidditch." ("grin", xpos="far_left", ypos="head") + + cho "That's a relief..." ("open", "closed", "base", "mid") + cho "Besides, she clearly doesn't hold a candle against me!" ("open", "narrow", "base", "R") + cho "All she does is sit on her arse all day, studying in the library..." ("soft", "narrow", "angry", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + cho "You can't expect somebody who's as lazy as her to look as great as I do!" ("soft", "closed", "base", "mid") + + menu: + "\"Yeah, she's gross.\"": + $ cho_mood = 0 + m "Miss Granger's body is nothing compared to yours." + cho "I wholeheartedly agree, Sir!" ("base", "narrow", "angry", "mid") + m "Her tits sag too much, and her fat hips are disgusting..." + hide cho_main + call blktone + gen "(Something deep inside me just died saying this...)" ("angry", xpos="far_left", ypos="head") + call hide_blktone + cho "She really is a..." ("open", "closed", "raised", "mid") + cho "... stupid..." ("angry", "closed", "angry", "mid") + cho "... fat..." ("clench", "narrow", "angry", "mid") + cho "... cow, isn't she?" ("quiver", "narrow", "angry", "mid", cheeks="blush") + gen "Speaking of Hermione..." ("base", xpos="far_left", ypos="head") + gen "Why don't you show me \"your\"{w} very much \"superior\"{w} hips?" ("grin", xpos="far_left", ypos="head") + cho "Are you asking me to take off my bottoms?" ("soft", "wink", "raised", "mid", cheeks="blush") + gen "Yes, my dear." ("base", xpos="far_left", ypos="head") + + "\"Nope, you lose\"": + $ cho_mood += 6 + + cho "What?!" ("scream", "wide", "angry", "mid", trans=hpunch) + cho "" ("angry", "narrow", "angry", "mid") + gen "I'm afraid, Miss Granger is simply...{w} how shall I put it...{w} sexier!" ("base", xpos="far_left", ypos="head") + cho "But she doesn't even do workouts!" ("clench", "narrow", "angry", "mid") + gen "Let's just forget about her, shall we?" ("base", xpos="far_left", ypos="head") + gen "And continue where we left off..." ("base", xpos="far_left", ypos="head") + cho "And where would that be?" ("annoyed", "narrow", "angry", "mid") + gen "Your Quidditch training, Miss Chang." ("base", xpos="far_left", ypos="head") + cho "I'm not sure I want to -- after what you've just said..." ("annoyed", "narrow", "angry", "R") + gen "Why? What did I say?" ("base", xpos="far_left", ypos="head") + cho "That Granger's body is better?! We both know that isn't true." ("mad", "narrow", "angry", "mid") + gen "Do you expect me to apologise?" ("base", xpos="far_left", ypos="head") + cho "Yes!{w} Admit that I'm sexier!" ("annoyed", "closed", "angry", "mid", cheeks="blush") # Snobby + gen "You are indeed, {b}very sexy{/b}, Miss Chang!" ("grin", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("base", "narrow", "base", "mid") + gen "Now take your bottoms off, would you..." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid") + + + cho "Please don't tell anybody about what I'm doing in here, Sir." ("quiver", "narrow", "worried", "mid", cheeks="blush") + cho "It could really tarnish my reputation." ("soft", "narrow", "worried", "R", cheeks="blush") + gen "I'd never think of it..." ("base", xpos="far_left", ypos="head") + cho "I will take off my bottoms now!" ("scream", "happyCl", "angry", "mid") # Scream + cho "" ("horny", "narrow", "worried", "R", cheeks="blush") + gen "(!!!)" ("grin", xpos="far_left", ypos="head") + pause .4 + + # Remove bottoms. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + hide cho_main + $ cho.strip("bottom") + pause 1.2 + $ renpy.sound.play("sounds/cloth_sound4.ogg") + show screen cho_cloth_pile + pause .4 + cho "" (trans=d3) + pause .5 + + cho "" ("horny", "narrow", "base", "mid", cheeks="blush") + call ctc + + gen "YES!" ("angry", xpos="far_left", ypos="head") + gen "Look at those thighs!" ("angry", xpos="far_left", ypos="head") + gen "Those tree trunks!" ("angry", xpos="far_left", ypos="head") + gen "Even the great \"Chun-Li\" would be jealous of those!" ("grin", xpos="far_left", ypos="head") + cho "I'm sorry Sir, who's that?" ("soft", "wink", "raised", "mid") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + + "\"Never seen City Hunter?\"": + cho "\"City Hunter?\"{w=0.3} Can't say that I have." ("soft", "base", "raised", "mid") + gen "What about \"Police Story\"?" ("base", xpos="far_left", ypos="head") + cho "No?" ("soft", "wink", "raised", "mid") + gen "\"Drunken Master\"?" ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "base", "base", "R") + gen "Please tell me you've at the very least seen \"Rush Hour\"?" ("angry", xpos="far_left", ypos="head") + cho "No, Sir." ("annoyed", "closed", "base", "mid") + gen "I'm in shock, over how little you care about your culture..." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid") + gen "Not every man can pull off a cosplay like that!" ("angry", xpos="far_left", ypos="head") + cho "I'm not following, Sir." ("annoyed", "narrow", "angry", "R") + + "\"She's my main...\"": + gen "I simply love playing with her..." ("grin", xpos="far_left", ypos="head") + gen "Seeing that leg rise up when I press the right buttons..." ("base", xpos="far_left", ypos="head") + cho "What?!" ("open", "narrow", "raised", "mid") # confused + + gen "Speaking of which!{w} I don't believe we are done here just yet." ("grin", xpos="far_left", ypos="head") + cho "We aren't? But I did exactly what you wanted!" ("open", "base", "worried", "mid") + gen "You've still got some clothes on..." ("grin", xpos="far_left", ypos="head") + cho "Sir, is this why you are helping me?" ("open", "closed", "angry", "mid") + cho "Might this be all just part of a sick scheme to get to see me naked?" ("annoyed", "narrow", "angry", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + + menu: + "\"It absolutely is!\"": + $ cho_mood += 20 + $ cho_mad_about_stripping = True # Flag that enables different dialogue that is a bit more "lewd" in the next favour repeat. + cho "" ("angry", "wide", "base", "mid") # Shock + gen "Now take off that bra of yours and show me those titties!" ("grin", xpos="far_left", ypos="head") + cho "[cho_genie_name], how can you talk to me like that!" ("scream", "closed", "angry", "mid", trans=hpunch) + cho "I'm your student!" ("clench", "narrow", "angry", "mid") + gen "And a very pretty one at that!" ("grin", xpos="far_left", ypos="head") + cho "You disgust me, sir..." ("soft", "narrow", "angry", "mid") + + "\"Of course not...\"": + $ cho_mood += 6 + $ cho_mad_about_stripping = False + cho "Aye right..." ("soft", "narrow", "raised", "mid") # Expression of disbelieve... + cho "And I'm supposed to believe that." ("open", "narrow", "base", "R") + cho "You're practically foaming out of your mouth just looking at me, Sir..." ("soft", "narrow", "angry", "mid") + gen "I'm not...{w} that's just..." ("angry", xpos="far_left", ypos="head") + #if butterbeer_ITEM.owned > 0: + gen "Butterbeer..." ("angry", xpos="far_left", ypos="head") + cho "This is as far as I will go, Sir!" ("annoyed", "narrow", "angry", "mid") + + cho "If you want a bimbo to strip for you, I suggest you call Hermione instead..." ("annoyed", "narrow", "angry", "mid") + pause .5 + + call play_sound("equip") + hide cho_main + $ cho.wear("all") + hide screen cho_cloth_pile + cho "" ("angry", "narrow", "angry", "mid") + pause .8 + + cho "We are done here!" ("angry", "narrow", "angry", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + call bld + gen "She'll do it next time, I'm sure..." ("base", xpos="far_left", ypos="head") + + jump end_cho_strip_event + + +label cc_pf_strip_T2_intro_E2: + cho "" ("upset", "base", "base", "R") + gen "[cho_name], to continue your training where we left off..." ("base", xpos="far_left", ypos="head") + gen "I'd like you to, once again, undress!" ("grin", xpos="far_left", ypos="head") + cho "Of course, Sir." ("annoyed", "base", "angry", "downR") + + call cho_walk("desk", "base") + + cho "Down to my undergarments, [cho_genie_name]?" ("soft", "closed", "base", "mid", xpos="mid", ypos="base", trans=fade) + cho "Or would you like me to take off all of it?" ("soft", "narrow", "base", "mid") + gen "*Ehm*... All of it?" ("base", xpos="far_left", ypos="head") + cho "Very well, Sir." ("soft", "closed", "base", "mid") + gen "(Please don't let this be a trick question.)" ("angry", xpos="far_left", ypos="head") + cho "" ("upset", "narrow", "base", "mid") + pause .4 + + if cho.is_worn("robe"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("robe") + # Remove top. + if cho.is_worn("top"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("robe", "top") + with d3 + pause .5 + + cho "" ("upset", "narrow", "angry", "mid") + call ctc + + cho "I'm a very good trainee, [cho_genie_name]!" ("soft", "narrow", "angry", "mid") + gen "Yes you are!" ("grin", xpos="far_left", ypos="head") + cho "If my trainer requires me to take off my clothing and strip for him..." ("soft", "closed", "base", "mid") + cho "Then I have no other choice but to indulge..." ("soft", "narrow", "base", "R") + cho "I see nothing wrong with that..." ("annoyed", "narrow", "angry", "mid") + pause .4 + + # Remove bottoms. + if cho.is_worn("bottom"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bottom") + with d3 + pause .5 + + cho "" ("annoyed", "narrow", "base", "mid") + call ctc + + cho "Would you perhaps like me to climb on top of your desk?" ("soft", "narrow", "raised", "mid") + cho "And dance for you like some common harlot?" ("soft", "narrow", "base", "R") + + # You saw Hermione strip before. + if hg_strip.trigger: + gen "If it's not too much trouble..." ("base", xpos="far_left", ypos="head") + cho "Of course not, [cho_genie_name]." ("soft", "closed", "base", "mid") + gen "(I'm having a bit of a deja vu!)" ("angry", xpos="far_left", ypos="head") # In-game font doesn't support special characters. déjà vu! + else: + gen "Yes please!" ("grin", xpos="far_left", ypos="head") + cho "Whatever you say, Sir!" ("soft", "closed", "base", "mid") + cho "Like I said, I'd go to any lengths just to please my trainer..." ("soft", "narrow", "base", "mid") + + # Climbs desk. + call hide_characters + show screen blkfade + with d5 + call play_sound("climb_desk") + pause 1 + + "To your surprise, the athletic petite girl rather playfully climbs on top of your desk." + pause .5 + gen "Nice!" ("grin", xpos="far_left", ypos="head") + pause .2 + + call cho_chibi("stand", "on_desk", "on_desk", flip=False) + hide screen bld1 + hide screen blkfade + with d5 + call ctc + + cho "After all, I promised I'd do anything to win that Quidditch cup..." ("soft", "narrow", "angry", "mid") + cho "If stripping for you is what it takes, then..." ("soft", "base", "angry", "down") + call play_music("sad") + cho "Then..." ("angry", "base", "worried", "down") + cho "I-I'll do it..." ("soft", "narrow", "worried", "down", cheeks="blush") + gen "(Shit. Is she crying?)" ("base", xpos="far_left", ypos="head") + gen "(Can she even cry?)" ("base", xpos="far_left", ypos="head") + gen "Are you alright, girl?" ("base", xpos="far_left", ypos="head") + cho "No.{w} I'm already regretting climbing up here!!!" ("mad", "closed", "worried", "mid") + cho "(What were you thinking, Cho?!)" ("angry", "narrow", "worried", "down", cheeks="blush") + gen "You can come back down if it's too much for yo--" ("base", xpos="far_left", ypos="head") + cho "Shut up!" ("scream", "closed", "angry", "mid", trans=hpunch) # Scream + cho "Can't you see what I'm trying to do here?" ("angry", "narrow", "angry", "mid") + gen "Not really, no." ("base", xpos="far_left", ypos="head") + cho "I-I'm... testing my limits, Sir." ("angry", "narrow", "worried", "down", cheeks="blush") + cho "And I believe I've reached them!" ("mad", "happyCl", "worried", "mid", cheeks="blush") + gen "For real? You are still wearing clothes..." ("base", xpos="far_left", ypos="head") + cho "I thought{w=0.2}, if I could go as far as embarrassing myself in front of my headmaster..." ("soft", "narrow", "worried", "down", cheeks="blush") + cho "Doing the same in front of the school won't feel as bad in comparison." ("annoyed", "narrow", "worried", "down", cheeks="blush") + cho "Sir, I don't think I can do this after all." ("soft", "narrow", "worried", "mid") + cho "Could I get your permission to leave and never come back?" ("angry", "narrow", "worried", "mid") + + menu: + "\"Yes, but take off those clothes first...\"": + call play_music("stop") + cho "Yes! Thank you, Sir!" ("soft", "closed", "worried", "mid", cheeks="blush") + cho "Even after I've given up -- you're still believing in me!" ("soft", "narrow", "worried", "mid", cheeks="blush") + gen "What?{w=0.2} *Ahem* I mean..." ("base", xpos="far_left", ypos="head") + gen "Of course!{w=0.2} I always did!" ("grin", xpos="far_left", ypos="head") + cho "I may not like it. But this is all just part of my training..." ("soft", "base", "worried", "R", cheeks="blush") + gen "*Uhhhh*... Sure..." ("base", xpos="far_left", ypos="head") + call play_music("cho") + cho "It's one of many challenges I have to face before I can call myself a Quidditch champion!" ("soft", "closed", "angry", "mid") + cho "This is just about facing my inner demons, isn't it?" ("soft", "narrow", "angry", "mid") + cho "Overcoming my fears..." ("soft", "narrow", "angry", "R") + cho "Failure, and embarrassment..." ("soft", "closed", "base", "mid") + cho "(Come on Cho, you can do it!!!)" ("horny", "happyCl", "worried", "mid", cheeks="blush") + cho "*Ehm*..." ("horny", "narrow", "worried", "down", cheeks="blush") + cho "What would you like me to do first, [cho_genie_name]?" ("soft", "narrow", "worried", "mid", cheeks="blush") + cho "Remove my bra..." ("soft", "narrow", "base", "mid", cheeks="blush") + cho "Or take off my panties?" ("horny", "narrow", "worried", "down", cheeks="blush") + + "\"Yes, you are dismissed...\"": + $ cho_mood += 6 + call play_music("stop") + cho "What?!" ("soft", "wide", "base", "mid") + cho "But Sir!" ("soft", "base", "worried", "mid") + gen "You can go now..." ("base", xpos="far_left", ypos="head") + cho "You can't do that!" ("scream", "narrow", "angry", "mid", trans=hpunch) + cho "" ("angry", "narrow", "angry", "mid") + gen "Didn't you just beg me to do just that?" ("angry", xpos="far_left", ypos="head") + call play_music("sad") + cho "I begged you to help me win the Quidditch cup!" ("clench", "narrow", "angry", "mid") + cho "And to be my trainer!{w} To be a {b}good{/b} trainer!" ("soft", "narrow", "angry", "mid") + cho "How can I overcome my fear of losing if I can't even do... this!" ("annoyed", "base", "worried", "down", cheeks="blush") + cho "You're supposed to encourage me!{w=0.6} Get me through any challenges I'm confronted with." ("soft", "narrow", "angry", "mid") + gen "Including stripping?" ("base", xpos="far_left", ypos="head") + cho "Including bloody stripping!" ("scream", "closed", "angry", "mid", trans=hpunch) + cho "" ("annoyed", "narrow", "angry", "mid") + gen "To my defence. I got some mixed messages from you earlier..." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "R") # Annoyed + call play_music("stop") + gen "Very well then..." ("base", xpos="far_left", ypos="head") + gen "Take off your clothes, [cho_name]." ("base", xpos="far_left", ypos="head") + cho "Yes, Sir!" ("soft", "closed", "base", "mid") + cho "Would you like me to take off my bra first?" ("soft", "narrow", "angry", "mid") + cho "Or pull down my panties so you can get a nice look at my lower half?" ("soft", "narrow", "base", "mid") + + menu: + gen "First, I'd like you to..." ("base", xpos="far_left", ypos="head") + "\"Show me those big, juicy \"Quaffles\" of yours!\"": + call play_music("cho") + cho "*uhhh*..." ("upset", "wide", "base", "mid", cheeks="blush") + gen "Those two mean, hearty \"bludgers\"!" ("grin", xpos="far_left", ypos="head") + cho "Sir? Could it be that you are talking about my breasts?" ("soft", "narrow", "worried", "mid", cheeks="heavy_blush") + gen "Yes indeed! Very good." ("base", xpos="far_left", ypos="head") + gen "I was hoping you would eventually catch on." ("base", xpos="far_left", ypos="head") + gen "Also because I ran out of balls to compare them to..." ("base", xpos="far_left", ypos="head") + cho "Promise me that you won't laugh when I show you my..." ("soft", "narrow", "worried", "R", cheeks="blush") + cho "\"Bludgers\"!" ("mad", "happyCl", "worried", "mid", cheeks="heavy_blush") + gen "Why would I ever laugh at a pretty girl like you, Miss Chang?" ("base", xpos="far_left", ypos="head") + cho "Because they...{w} aren't as big as Hermione's..." ("soft", "narrow", "worried", "downR", cheeks="blush") + cho "Hers are more closer to {i}Quaffles{/i} than mine..." ("soft", "base", "worried", "mid", cheeks="blush") + gen "And there will always be a pair of \"Beaters\" that prefer to play with your...{w} balls." ("base", xpos="far_left", ypos="head") + cho "Only two?..." ("upset", "base", "worried", "downR", cheeks="blush") + gen "Don't forget to count those lucky enough to get hit by those \"bludgers\"!" ("grin", xpos="far_left", ypos="head") + cho "" ("upset", "base", "raised", "mid") + gen "Speaking of which..." ("base", xpos="far_left", ypos="head") + cho "Yes?" ("soft", "base", "worried", "mid", cheeks="blush") + gen "I'd like you to hit me with them!" ("angry", xpos="far_left", ypos="head") + cho "With my breasts?" ("open", "wide", "base", "mid", cheeks="blush") + gen "Yes! Hit me full force!{w} Take off that bra!" ("grin", xpos="far_left", ypos="head") + cho "*Ugh!*..." ("mad", "narrow", "base", "down", cheeks="blush") + cho "{size=-4}I can't believe I'm actually going to do this!{/size}" ("mad", "happyCl", "worried", "mid", cheeks="blush") + cho "" ("soft", "narrow", "worried", "mid", cheeks="blush") + pause .4 + + # Remove bra. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bra") + with d3 + pause .8 + + cho "" ("horny", "narrow", "worried", "mid", cheeks="heavy_blush") + call ctc + + gen "Simply wonderful, Miss Chang." ("angry", xpos="far_left", ypos="head") + gen "Those are some stellar breasts you got there." ("base", xpos="far_left", ypos="head") + cho "(...)" ("base", "narrow", "worried", "downR", cheeks="blush") + gen "Some \"outstanding\" boobies!" ("angry", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "Would you mind if I smack them?" ("base", xpos="far_left", ypos="head") + cho "What?! Of course I would mind!" ("soft", "wide", "base", "mid", cheeks="heavy_blush") + gen "I just want to beat them around a bit..." ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "angry", "mid", cheeks="blush") + gen "After all, they are two soft, meaty \"bludgers\"!" ("grin", xpos="far_left", ypos="head") + gen "And I'm a \"beater\"!" ("grin", xpos="far_left", ypos="head") + + $ genie_quid_position = "beater" + + cho "You are childish.{w} That's what you are..." ("soft", "narrow", "angry", "mid") + gen "You're the one playing games." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid") + cho "Fine...{w} But Only once!" ("soft", "narrow", "angry", "R") + cho "Twice...{w} maybe..." ("mad", "narrow", "worried", "downR", cheeks="blush") + gen "That's a hundred percent more than I had hoped for!" ("grin", xpos="far_left", ypos="head") + + call slap_her + cho "*Ouch!*" ("angry", "wide", "base", "mid", cheeks="blush") + call slap_her + call slap_her + call slap_her + cho "Stop it!" ("scream", "happyCl", "worried", "mid", cheeks="blush") + cho "That was more than twice!" ("soft", "narrow", "angry", "mid", cheeks="blush") + gen "I stopped counting halfway through..." ("base", xpos="far_left", ypos="head") + + "\"Let me catch sight of that 'Snitch!'\"": + call play_music("cho") + cho "Don't you mean \"Snatch,\" Sir?" ("annoyed", "narrow", "angry", "mid") + gen "Potato, Potato!" ("grin", xpos="far_left", ypos="head") + cho "Your motives were nothing but for your own perverted gains, weren't they? From the very start." ("soft", "narrow", "base", "mid") # Annoyed + gen "More or less..." ("base", xpos="far_left", ypos="head") + gen "However, I never lied about wanting to help you win the Quidditch cup!" ("base", xpos="far_left", ypos="head") + gen "(Since I've bet a fortune on it...)" ("angry", xpos="far_left", ypos="head") + gen "And I wouldn't be able to call myself a man if I was lying!" ("base", xpos="far_left", ypos="head") + cho "And you'd be called a dead man, if you try to trick me!" ("clench", "narrow", "angry", "mid") + gen "Well technically I'm a geni--" ("base", xpos="far_left", ypos="head") + call play_sound("kick") + cho "" ("annoyed", "narrow", "angry", "mid", trans=vpunch) + gen "*Aaaaah*!" ("angry", xpos="far_left", ypos="head") + call nar(">Cho does a daunting stomp on your desk...") + cho "Don't think for a second I wouldn't do it! After all of this!" ("scream", "narrow", "angry", "mid") + cho "" ("angry", "narrow", "angry", "mid") + call play_sound("gulp") + gen "*Gulp*" ("angry", xpos="far_left", ypos="head") + gen "Yes, Ma'am." ("base", xpos="far_left", ypos="head") + cho "(...)" ("upset", "closed", "base", "mid") + cho "" ("upset", "narrow", "worried", "down", cheeks="blush") + pause .4 + + # Remove panties. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("panties") + with d3 + pause .5 + + cho "" ("horny", "narrow", "worried", "mid", cheeks="heavy_blush") + call ctc + + cho "Happy, Sir?" ("soft", "narrow", "worried", "mid", cheeks="blush") + gen "Very." ("base", xpos="far_left", ypos="head") + gen "Finally I get the appeal of Quidditch." ("grin", xpos="far_left", ypos="head") + cho "Really?" ("soft", "base", "raised", "mid") + gen "Yes..." ("base", xpos="far_left", ypos="head") + gen "You see, I think I've become quite a bit of a seeker myself!" ("grin", xpos="far_left", ypos="head") + + $ genie_quid_position = "seeker" + + cho "(...)" ("annoyed", "base", "base", "mid") + gen "And I believe I've just found my very own golden snatch!" ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "angry", "mid", cheeks="blush") + gen "You should consider yourself lucky, Miss Chang." ("base", xpos="far_left", ypos="head") + cho "Why?..." ("soft", "narrow", "raised", "mid") + gen "It's very pretty." ("grin", xpos="far_left", ypos="head") + cho "*Ugh*..." ("mad", "narrow", "base", "down", cheeks="heavy_blush") + + + cho "Sir, will that be all then?" ("annoyed", "narrow", "angry", "mid", cheeks="blush") + cho "May I go now?" ("soft", "narrow", "angry", "R") + gen "Haven't you forgotten something?" ("base", xpos="far_left", ypos="head") + cho "Didn't I do enough for you already?" ("angry", "narrow", "angry", "mid") + gen "For me, you did more than enough!{w=0.6} I'm more than pleased with what you've shown me..." ("grin", xpos="far_left", ypos="head") + cho "*Ugh*..." ("disgust", "narrow", "base", "down", cheeks="blush") # Disgusted + gen "But, wasn't your goal earlier to undress entirely?" ("base", xpos="far_left", ypos="head") + gen "To prove to yourself that you {b}could{/b} do it?" ("base", xpos="far_left", ypos="head") + cho "{size=-4}I hoped you'd just forget about that...{/size}" ("mad", "narrow", "worried", "down", cheeks="blush") # Small text. + gen "Well, I didn't!" ("grin", xpos="far_left", ypos="head") + gen "I'm here to help you mature -- and boost your confidence." ("base", xpos="far_left", ypos="head") + gen "A body like yours is nothing you need to hide away!" ("base", xpos="far_left", ypos="head") + cho "" ("base", "narrow", "worried", "mid", cheeks="blush") + gen "Don't you think so too?{w} After all the work you put into it?" ("base", xpos="far_left", ypos="head") + gen "It should be celebrated! And seen by everyone!" ("angry", xpos="far_left", ypos="head") + cho "You're making me blush, [cho_genie_name]..." ("horny", "narrow", "worried", "downR", cheeks="heavy_blush") + gen "You can do it, [cho_name]! Show me the goods!" ("grin", xpos="far_left", ypos="head") + cho "Yes, Sir!" ("angry", "closed", "worried", "mid", cheeks="blush") + cho "" ("base", "narrow", "worried", "mid", cheeks="blush") + pause .4 + + # Cho strips completely. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + hide cho_main + $ cho.strip("all") + pause 1.2 + call cho_chibi("stand", "on_desk", "on_desk", flip=True) + pause .4 + $ renpy.sound.play("sounds/cloth_sound4.ogg") + show screen cho_cloth_pile + pause .6 + call cho_chibi("stand", "on_desk", "on_desk", flip=False) + cho "" (trans=d3) + pause .5 + + cho "" ("horny", "narrow", "worried", "mid", cheeks="heavy_blush") + call ctc + + gen "See, that wasn't very hard was it?" ("base", xpos="far_left", ypos="head") + cho "No..." ("soft", "narrow", "base", "down", cheeks="blush") + cho "No! You're right!" ("smile", "base", "base", "mid") + gen "And you have a very beautiful body -- if I might add." ("base", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("soft", "narrow", "worried", "mid") + gen "I can see why Hermione is so jealous." ("base", xpos="far_left", ypos="head") + cho "" ("upset", "base", "base", "mid", cheeks="blush") + pause .8 + cho "She is?" ("scream", "wide", "base", "mid", cheeks="blush", trans=vpunch) + cho "" ("horny", "base", "base", "down", cheeks="heavy_blush") + gen "Look who perked up all of a sudden." ("base", xpos="far_left", ypos="head") + cho "She should be jealous!{w=0.6} These thighs could snap a broom in half if I tried hard enough." ("smile", "narrow", "angry", "mid", cheeks="blush") + call ctc + + call play_sound("gulp") + gen "*Gulp!*" ("angry", xpos="far_left", ypos="head") + gen "I don't doubt it." ("base", xpos="far_left", ypos="head") + + cho "Thank you, [cho_genie_name]." ("base", "closed", "base", "mid") + gen "For what?" ("base", xpos="far_left", ypos="head") + cho "For teaching me." ("soft", "narrow", "worried", "downR") + cho "I couldn't have imagined showing myself off like this before... but." ("horny", "narrow", "worried", "downR", cheeks="blush") + gen "Yes?" ("base", xpos="far_left", ypos="head") + cho "Well, your methods have clearly worked so far..." ("soft", "narrow", "base", "R") + cho "And I feel more confident than ever!" ("soft", "wide", "base", "mid") + gen "That's great news, and hey..." ("base", xpos="far_left", ypos="head") + gen "If distracting doesn't work, you could just crush your opponents with those thighs of yours." ("base", xpos="far_left", ypos="head") + cho "That's true..." ("smile", "narrow", "base", "mid") + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + + call play_sound("climb_desk") + call cho_chibi("stand", "desk", "base", flip=False) + + pause 1 + + hide screen blkfade + with d5 + pause .2 + + cho "Will this be all then, Sir?" ("soft", "base", "base", "R") + gen "Yes Miss Chang, great work today..." ("base", xpos="far_left", ypos="head") + gen "I doubt you'll have any problems distracting anyone with a body like that." ("base", xpos="far_left", ypos="head") + gen "You're dismissed." ("base", xpos="far_left", ypos="head") + cho "Thank you, [cho_genie_name]." ("base", "happyCl", "base", "mid") + call hide_characters + hide screen bld1 + with d3 + pause .1 + + call cho_walk("door", "base") + + call bld + gen "Miss Chang." ("base", xpos="far_left", ypos="head") + hide screen bld1 + with d3 + pause .3 + + call cho_chibi("stand", "door", "base", flip=False) + with d3 + pause .2 + + cho "Yes?" ("soft", "base", "raised", "mid", ypos="head", flip=False) + gen "Aren't you forgetting about something?" ("base", xpos="far_left", ypos="head") + cho "Sir?" ("soft", "narrow", "base", "mid") + gen "You're still naked...{w} I wouldn't go out there if I were you..." ("base", xpos="far_left", ypos="head") + cho "Oh, yes of course!" ("soft", "wide", "base", "mid", cheeks="blush", trans=hpunch) + + call cho_walk("desk", "base") + pause .5 + call chibi_emote("thought", "cho") + pause .8 + + # Cho puts clothes back on. + call play_sound("equip") + hide cho_main + $ cho.wear("all") + hide screen cho_cloth_pile + pause .8 + + cho "(...)" ("disgust", "narrow", "worried", "down", cheeks="blush", xpos="right", ypos="base") + cho "*Uhm*..." ("soft", "narrow", "worried", "mid", cheeks="blush") + if game.daytime: + cho "Have a good day..." ("soft", "base", "base", "R", cheeks="blush") + else: + cho "Have a good night..." ("soft", "base", "base", "R", cheeks="blush") + + # Cho leaves. + call cho_walk(action="leave") + + call bld + gen "She's so cute..." ("base", xpos="far_left", ypos="head") + gen "And sexy!" ("grin", xpos="far_left", ypos="head") + gen "But also a bit intimidating..." ("base", xpos="far_left", ypos="head") + + jump end_cho_strip_event + + +label cc_pf_strip_T2_intro_E3: + gen "[cho_name], how would you like to do another striptease for me?" ("grin", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid") + gen "You did such a phenomenal job last time!" ("grin", xpos="far_left", ypos="head") + cho "Another strip show?" ("soft", "narrow", "angry", "R") + gen "Yes Indeed! Come a bit closer..." ("grin", xpos="far_left", ypos="head") + cho "(...)" ("angry", "narrow", "base", "down") + + call cho_walk("desk", "base") + + cho "Sir, Those favours were never about my training, were they?" ("soft", "narrow", "angry", "mid", xpos="mid", ypos="base", trans=fade) + gen "I never said they were!" ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "angry", "mid") + pause .8 + gen "You keep me happy by doing favours for me, and in return, I will train you..." ("base", xpos="far_left", ypos="head") + gen "That was the deal." ("base", xpos="far_left", ypos="head") + cho "I never expected that they would require me to do...{w} this!" ("annoyed", "base", "worried", "down") + gen "But you did it anyway! Commendable!" ("grin", xpos="far_left", ypos="head") + cho "Please stop it with your compliments, Sir!" ("open", "closed", "angry", "mid") + cho "And explain to me why those favours have to be so..." ("annoyed", "narrow", "worried", "downR") + cho "{size=-4}perverted?{/size}" ("soft", "narrow", "angry", "R", cheeks="blush") # Small text + gen "You see..." ("base", xpos="far_left", ypos="head") + gen "It can get pretty lonely in this room." ("base", xpos="far_left", ypos="head") + gen "There's not even a television set up here..." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid") + pause .8 + + # Remove top. + if cho.is_worn("top"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("robe", "top") + with d3 + pause .5 + + cho "" ("quiver", "narrow", "worried", "R", cheeks="blush") + call ctc + + cho "Does Granger do these sorts of things for you too?" ("soft", "base", "worried", "mid", cheeks="blush") + gen "She does a lot of things for me. You need to be more specific!" ("grin", xpos="far_left", ypos="head") + cho "I meant buying \"sexual favours.\"{w} Doing tasks that are, let's say, a little audacious..." ("soft", "narrow", "worried", "downR", cheeks="blush") + gen "Are you talking about stripping, girl?" ("base", xpos="far_left", ypos="head") + cho "Yes, Sir." ("quiver", "narrow", "worried", "downR", cheeks="blush") + pause .4 + + + # Check if Hermione has already stripped for you. + if not hg_strip.trigger: # Triggers in hg_pf_strip_T3_intro_E2. This check needs to always be no earlier here to make sure Luna is also unlocked. + + # Cho demands that you get Hermione to strip, so Cho has something to blackmail her should anything happen. + # Cho gets dressed again and storms off. + # Remove skirt. + + if cho.is_worn("bottom"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + hide cho_main + $ cho.strip("bottom") + pause 1.2 + $ renpy.sound.play("sounds/cloth_sound4.ogg") + show screen cho_cloth_pile + pause .4 + cho "" (trans=d3) + pause .5 + + cho "" ("horny", "base", "worried", "mid", cheeks="heavy_blush") + call ctc + + gen "Actually, she doesn't..." ("base", xpos="far_left", ypos="head") + cho "What? But I thought she'd--" ("soft", "wide", "base", "mid") + cho "Why do you ask me to do these favours, and not Granger?" ("open", "narrow", "angry", "mid", trans=hpunch) + gen "Let's just say, she isn't as progressive as you...{w} yet." ("base", xpos="far_left", ypos="head") + cho "You haven't even seen her naked?" ("angry", "base", "base", "mid") + cho "What favours are you even buying from her?" ("open", "base", "angry", "mid") + gen "Just chit-chats, mostly..." ("base", xpos="far_left", ypos="head") + cho "Make her strip too!" ("clench", "narrow", "angry", "mid") + gen "It's not that easy, girl!" ("angry", xpos="far_left", ypos="head") + cho "Well then get on with it!" ("angry", "closed", "angry", "mid") + cho "What's the worst that could happen?" ("soft", "narrow", "angry", "R") + gen "She could report me, and I'd get kicked out of this school most likely." ("base", xpos="far_left", ypos="head") + gen "She's reported me to that ministry before..." ("base", xpos="far_left", ypos="head") + cho "The \"Ministry of Magic\"?" ("open", "base", "raised", "mid") + cho "If they were to regulate the school rules more strictly, my chance of winning the Quidditch cup would be back down to zero!" ("angry", "wide", "worried", "mid", cheeks="blush") + cho "And if Granger ever was to find out about me stripping for our headmaster, it would mean the end of my Quidditch career for sure!" ("mad", "base", "worried", "downR", cheeks="blush") + gen "So? What do you suggest we do?" ("base", xpos="far_left", ypos="head") + cho "Isn't it obvious?! Ask her to do more advanced favours!" ("soft", "narrow", "angry", "mid") + cho "If I could get a hold of something to blackmail her with, she'd never dare to report to the ministry!" ("clench", "narrow", "angry", "R") + gen "That doesn't sound too bad of an idea..." ("base", xpos="far_left", ypos="head") + cho "Until then, don't expect me to undress for you..." ("soft", "narrow", "angry", "mid") + gen "(Bollocks...)" ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "closed", "angry", "mid") + pause .5 + + # call play_sound("equip") #The player could technically have taken her top and bottoms off in wardrobe (Unless we change things) + $ cho.wear("all") + hide screen cho_cloth_pile + cho "" ("annoyed", "narrow", "angry", "mid") + pause .8 + + cho "Good day, Sir!" ("soft", "narrow", "angry", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + # Event failed, no progress. + $ cc_pf_strip.fail() + jump end_cho_event + + + # After you got Hermione to strip. + + # Remove skirt. + if cho.is_worn("bottom"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + hide cho_main + $ cho.strip("bottom") + cho "" (trans=d3) + pause .5 + + cho "" ("horny", "base", "worried", "mid", cheeks="heavy_blush") + call ctc + + gen "She does indeed." ("base", xpos="far_left", ypos="head") + cho "Really?!{w} You got that cow to take off her clothes?" ("soft", "wide", "base", "mid") + cho "Did you get any proof?" ("soft", "base", "worried", "mid") + gen "What?{w} Why would I--" ("base", xpos="far_left", ypos="head") + cho "To blackmail her!{w} To prove that she's in on this whole \"favour trading\" business too..." ("open", "narrow", "angry", "mid") + gen "We had an eye witness, for what it's worth..." ("base", xpos="far_left", ypos="head") + cho "Seriously?! Who was it?" ("smile", "base", "base", "mid") + gen "Snape..." ("base", xpos="far_left", ypos="head") + cho "What?! Professor Snape?" ("scream", "wide", "base", "mid", trans=hpunch) + cho "" ("smile", "wide", "base", "mid") + gen "He sort of just walked in on the action.{w} After all, the door wasn't locked..." ("base", xpos="far_left", ypos="head") + cho "That's too funny! I wish I could have been there!" ("smile", "base", "base", "R") + gen "She was dancing on my desk, right here, butt naked!" ("grin", xpos="far_left", ypos="head") + cho "That sounds sooo embarrassing!" ("soft", "narrow", "worried", "up", cheeks="blush") + gen "As far as I know, that door isn't locked right now either..." ("base", xpos="far_left", ypos="head") + gen "Aren't you scared that Snape might walk in on you too?" ("base", xpos="far_left", ypos="head") + cho "*Hmm*.." ("annoyed", "base", "base", "R") + + call hide_characters + show screen blkfade + with d3 + call play_sound("desk") + pause 3 + + ">You watch as Cho slowly climbs onto your desk..." + + call cho_chibi("stand", "on_desk", "on_desk") + hide screen bld1 + hide screen blkfade + with d3 + pause .8 + + cho "I'm not scared at all, Sir!" ("smile", "narrow", "angry", "mid") + cho "" ("horny", "narrow", "angry", "mid") + pause .4 + + # Remove bra. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bra") + with d3 + pause .5 + + cho "" ("horny", "narrow", "angry", "mid") + call ctc + + cho "It's just Professor Snape, after all..." ("soft", "narrow", "base", "R") + cho "Everybody knows that he's a creep! Nobody would believe a word he says." ("open", "base", "angry", "down") + gen "So...{w} what if it's not Snape, but some other teacher that makes their way in here?" ("base", xpos="far_left", ypos="head") + cho "*Huh*?{w=0.5} Oh no!" ("soft", "wide", "base", "mid") + cho "For a second I forgot we even had other teachers at this school!" ("open", "wide", "worried", "L", cheeks="blush") + cho "What if Professor McGonagall stumbles in here while...{w} while I--" ("angry", "happyCl", "worried", "mid", cheeks="heavy_blush") + + + call hide_characters + show screen blkfade + with d3 + pause 1.0 + + $ renpy.sound.play("sounds/jump_shoes.ogg") + call cho_chibi("stand", "desk", "base", flip=True) + hide screen bld1 + hide screen blkfade + with d3 + call teleport(position="cho", effect=False) + pause .5 + + call bld + gen "Don't worry. That won't happen." ("base", xpos="far_left", ypos="head") + call cho_chibi("stand", "desk", "base") + with d3 + pause .5 + + cho "Are you sure, Sir?" ("soft", "narrow", "worried", "mid", cheeks="blush") + gen "You have my word..." ("base", xpos="far_left", ypos="head") + cho "O-{w=0.2}okay..." ("soft", "narrow", "worried", "R", cheeks="blush") + gen "Now then, Miss Chang!{w} It's time for the grand finale..." ("base", xpos="far_left", ypos="head") + gen "Take it all off!" ("grin", xpos="far_left", ypos="head") + gen "I want to see you naked..." ("grin", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "base", "worried", "down", cheeks="blush") + cho "Very well, Sir." ("base", "base", "base", "mid") + pause .4 + + # Remove panties + everything else. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + hide cho_main + $ cho.strip("all") + pause 1.2 + $ renpy.sound.play("sounds/cloth_sound4.ogg") + show screen cho_cloth_pile + pause .6 + + cho "" ("horny", "narrow", "base", "down", cheeks="blush") + call ctc + + gen "I've got to say, once again I'm very impressed by you!" ("angry", xpos="far_left", ypos="head") + cho "Glad to hear it, [cho_genie_name]." ("smile", "narrow", "base", "mid") + cho "Catch!" ("base", "base", "base", "L") + call nar(">Cho throws her panties onto your desk.") + cho "You can keep them, for now..." ("soft", "narrow", "base", "R") + gen "I appreciate the notion!" ("grin", xpos="far_left", ypos="head") + cho "" ("base", "narrow", "base", "mid") + pause .8 + + # Panties acquired message! + call give_reward(">You have acquired Cho's panties!", "interface/icons/panties.webp") + $ has_cho_panties = True + + gen "Well then, Miss Chang..." ("base", xpos="far_left", ypos="head") + gen "You may leave now.{w} Dismissed." ("base", xpos="far_left", ypos="head") + cho "Wait Sir!{w} I can't leave just yet!" ("open", "wide", "base", "mid") + gen "Why not? Don't tell me you want points now after all..." ("base", xpos="far_left", ypos="head") + cho "No Sir, but...{w} I don't believe we are done here..." ("mad", "base", "worried", "downR", cheeks="blush") + gen "We aren't?" ("grin", xpos="far_left", ypos="head") + cho "May I request something of you, Sir?" ("soft", "narrow", "worried", "mid", cheeks="blush") + gen "Yes?{w} What is it?" ("base", xpos="far_left", ypos="head") + + # Cho asks you to summon Hermione. + cho "Could you please..." ("soft", "base", "worried", "downR", cheeks="blush") + cho "*Ehm*..." ("quiver", "narrow", "worried", "downR", cheeks="heavy_blush") + cho "Could you please summon Hermione?" ("soft", "narrow", "worried", "mid", cheeks="heavy_blush") + + with hpunch + gen "What?" ("angry", xpos="far_left", ypos="head") + cho "It's time someone throws \"high and mighty\" Granger off her high horse!" ("open", "narrow", "angry", "mid") + cho "She's been a pain in my butt for years now..." ("angry", "narrow", "angry", "downR") + cho "This is going to be my revenge!" ("soft", "narrow", "angry", "mid") + gen "Are you sure that this is such a good idea? Aren't you scared she'll tattle about it?" ("base", xpos="far_left", ypos="head") + cho "No.{w} Granger is clever..." ("soft", "closed", "base", "mid") + cho "She could destroy my reputation, sure..." ("soft", "base", "base", "R") + cho "But, should that happen, I now have the means to take her down with me!" ("base", "narrow", "angry", "mid") + cho "I'm not the only one stripping for you, after all." ("soft", "narrow", "base", "mid") + gen "I suppose you're right..." ("base", xpos="far_left", ypos="head") + cho "I can't believe how depraved Granger actually is..." ("horny", "narrow", "angry", "down", cheeks="blush") + cho "Stripping for her headmaster.{w=0.6} What a slut..." ("soft", "narrow", "angry", "mid", cheeks="blush") + gen "Aren't you doing exactly the same?" ("base", xpos="far_left", ypos="head") + cho "Yes, but I'm not a whore stripping for points, unlike her!" ("open", "closed", "base", "mid") + gen "Still makes you a slut..." ("base", xpos="far_left", ypos="head") + cho "I'm untouchable! I'll show that {b}bitch{/b} she can't mess with me!" ("angry", "narrow", "angry", "R") + cho "This is gonna be so much fun!" ("smile", "narrow", "angry", "mid") + + stop music fadeout 3.0 + call cho_walk(570, "base") + pause 2.0 + + cho "Call her already!" ("annoyed", "narrow", "angry", "R", flip=True, trans=d5) + gen "I'm on it..." ("base", xpos="far_left", ypos="head") + + hide screen bld1 + show screen blkfade + with d3 + hide cho_main + pause 1.0 + hide screen blkfade + with d3 + + # Equip Hermione default clothing. + $ her_outfit_last.save() # Store current outfit. + $ hermione.equip(her_outfit_default) #Equip Hermione default clothing. + + # Summon Hermione. + call play_sound("door") + call her_chibi("stand", "door", "base") + with d3 + pause .5 + + her "You wanted to see me, Sir?" ("soft", "closed", "base", "mid", xpos="base", ypos="base", flip=False, trans=d3) + + her "...{w=0.4}{nw}" ("soft", "base", "worried", "L") + her "...{fast}Cho?!" ("clench", "wide", "worried", "shocked") + + play music "music/deadly-roulette-by-kevin-macleod.ogg" fadein 1 fadeout 1 + + cho "Hey there, Granger!" ("horny", "narrow", "angry", "mid") # Grinning + her "What? Why are you--" ("disgust", "wide", "worried", "shocked") + + call her_walk(660, "base") + + cho "" ("smile", "narrow", "angry", "L", xpos="mid", ypos="base", flip=True) + her "What the bloody hell is going on here?!" ("scream", "closed", "base", "mid", xpos="right", ypos="base", trans=hpunch) # Scream + her "" ("angry", "base", "angry", "mid") + + cho "You know, just the usual..." ("soft", "base", "base", "L") + cho "Like stripping for our dear headmaster!" ("smile", "narrow", "angry", "L") + cho "I trust that you're more than familiar with it..." ("soft", "closed", "base", "L") + her "You've told her?" ("clench", "base", "angry", "mid") + cho "So you really {b}did{/b} do it!" ("open", "wide", "base", "L") + her "It's none of your business what I do at this school! You slut!" ("angry", "narrow", "angry", "R") + cho "Are you sure about that?{w=0.6} I believe there are some people that would think otherwise..." ("grin", "narrow", "base", "mid") + cho "Your friends...{w} the other students...{w} our teachers..." ("soft", "narrow", "angry", "L") + cho "Maybe even the ministry?" ("smile", "narrow", "angry", "L") + her "You wouldn't dare!!!" ("upset", "happy", "base", "mid") + cho "Indeed, I wouldn't." ("soft", "closed", "base", "mid") + cho "And neither would you!" ("smile", "narrow", "angry", "L") + cho "Which is why we brought you here..." ("open", "base", "base", "mid") + cho "To have some fun!" ("base", "narrow", "angry", "mid") + + her "Sir, I demand that you stop this nonsense!" ("open", "base", "angry", "mid") + cho "I don't think that's very likely to happen, Granger..." ("soft", "narrow", "angry", "mid") + cho "We both know what he would prefer..." ("soft", "closed", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + cho "And who he prefers..." ("smile", "narrow", "angry", "mid") + her "You think that he prefers you over me?{w} Please..." ("soft", "narrow", "angry", "R") + cho "Why don't we just ask him?" ("base", "narrow", "base", "mid") + cho "Tell us, sir..." ("soft", "narrow", "base", "R") + cho "How do you like the athletic, immaculate, nude body of your favourite student?" ("smile", "narrow", "angry", "mid") + cho "It's so much better than Miss Granger's, isn't it?" ("base", "narrow", "angry", "mid") + call ctc + + $ cho_strip_complete = True # Enables wardrobe strip functions. + $ d_flag_01 = False # Cho not on desk + call cc_pf_strip_T2_hermione + + jump end_cho_strip_event + + +label cc_pf_strip_T2_E3: # Repeats + gen "[cho_name], why don't you come a bit closer?" ("base", xpos="far_left", ypos="head") + cho "Of course, [cho_genie_name]..." ("base", "narrow", "base", "mid") + + call cho_walk("desk", "base") + + cho "" ("base", "base", "base", "R", xpos="mid", ypos="base", trans=fade) + call ctc + + gen "I'm in the mood for another striptease!" ("grin", xpos="far_left", ypos="head") + cho "You are, are you?" ("soft", "base", "raised", "downR") + + # Remove robe. + if cho.is_worn("robe"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("robe") + with d3 + pause .5 + + cho "Good, because so am I!" ("base", "narrow", "angry", "mid") + cho "" ("base", "narrow", "angry", "mid") + + #Remove top. + if cho.is_worn("top"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("top") + cho "*Hmm*... You better be enjoying this, Sir." ("soft", "closed", "base", "mid") + with d3 + pause .5 + + #Remove bottoms. + if cho.is_worn("bottom"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bottom") + with d3 + pause .5 + gen "*Argh!* You little minx!" ("angry", xpos="far_left", ypos="head") + + cho "Are we going to invite Granger again?" ("soft", "narrow", "raised", "down") + cho "I would like to have some fun with her..." ("smile", "narrow", "angry", "mid") + pause .4 + + # Remove bra. (she is wearing underwear at this level in any case) + if cho.is_worn("bra"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bra") + with d3 + pause .5 + + gen "The more, the merrier!" ("grin", xpos="far_left", ypos="head") + cho "" ("base", "narrow", "angry", "mid") + pause .4 + + # Remove panties + all else. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("all") + hide cho_main + $ cho.strip("all") + pause 1.2 + $ renpy.sound.play("sounds/cloth_sound4.ogg") + show screen cho_cloth_pile + pause .6 + cho "" (trans=d3) + call ctc + + cho "Catch, [cho_genie_name]!" ("soft", "base", "base", "mid") + call nar(">Cho throws her panties at you.") + + # Panties acquired message! + call give_reward(">You have acquired Cho's panties!", "interface/icons/panties.webp") + $ has_cho_panties = True + + gen "Nice!" ("grin", xpos="far_left", ypos="head") + cho "I'd like to have them back after this, mind you." ("soft", "base", "raised", "R") + gen "Of course..." ("base", xpos="far_left", ypos="head") + cho "Anything else you'd like, Sir?" ("base", "base", "base", "mid") + + $ d_flag_01 = False # Cho on desk flag for this event + menu: + "\"Hop on my desk!\"": + $ d_flag_01 = True + cho "Good idea, [cho_genie_name]!" ("base", "happyCl", "base", "mid") + call hide_characters + show screen blkfade + with d3 + call play_sound("desk") + pause 2 + + call cho_chibi("stand", "on_desk", "on_desk", flip=False) + hide screen bld1 + hide screen blkfade + with d3 + pause 1 + + cho "How is the view down there, Sir?" ("base", "narrow", "base", "down") + gen "Couldn't be any better!" ("grin", xpos="far_left", ypos="head") + + call hide_characters + hide screen bld1 + with d3 + pause .2 + + call cho_chibi("stand", "on_desk", "on_desk", flip=True) # Facing the door. + with d3 + pause .8 + cho "Now, if you don't mind, Sir..." ("soft", "base", "base", "R", xpos="mid", ypos="base", flip=True) + cho "I'd like you to call that Gryffindor slut to your office!" ("soft", "base", "base", "L") + + "\"Let Granger have a good look at you!\"": + cho "I'll make sure of it, Sir!" ("soft", "narrow", "angry", "mid") + + call cho_walk(570, "base") + cho "Alright, you can call her now." ("soft", "base", "base", "R", xpos="mid", ypos="base", flip=True) + + + gen "On it!" ("grin", xpos="far_left", ypos="head") + pause .8 + cho "(...)" ("annoyed", "narrow", "angry", "L") + gen "(...)" ("base", xpos="far_left", ypos="head") + + call hide_characters + hide screen bld1 + with d3 + pause .5 + + # Equip Hermione default clothing. + $ her_outfit_last.save() # Store current outfit. + $ hermione.equip(her_outfit_default) #Equip Hermione default clothing. + + # Hermione enters. + call play_sound("door") + call her_chibi("stand", "door", "base") + with d3 + pause .5 + + call chibi_emote("thought", "hermione") + pause .8 + + call her_walk(660, "base") + + cho "" ("horny", "narrow", "angry", "L", xpos="mid", ypos="base", flip=True) + her "You wanted to see me, Professor?" ("soft", "closed", "base", "mid", xpos="base", ypos="base") + gen "Yes, but I wasn't the only one." ("grin", xpos="far_left", ypos="head") + her "(...)" ("annoyed", "narrow", "angry", "R") + cho "Hi, Granger!" ("smile", "narrow", "angry", "L") + her "Let me guess, we are here to marvel at your insecurity again?" ("soft", "closed", "base", "mid") + cho "Granger, instead of spitting out insults, why don't you join me and have some fun for once?" ("soft", "base", "raised", "L") + cho "Strip down for your headmaster as well, like you usually do..." ("smile", "narrow", "angry", "L") + cho "Or would it bother you too much, now that I'm here?" ("horny", "narrow", "base", "L") + her "*glare*" ("angry", "base", "angry", "mid") + cho "Maybe then you'd have a chance to win against me!{w} And earn some useless Gryffindor points while you're at it." ("soft", "base", "base", "L") + her "I don't think that will be necessary..." ("soft", "closed", "base", "mid") + cho "Well, we all already know how this is going to turn out don't we, [cho_genie_name]?" ("soft", "base", "base", "mid") + cho "My body is still better than Miss Granger's, isn't it?" ("smile", "narrow", "angry", "L") + her "" ("annoyed", "base", "angry", "mid") + call ctc + + call cc_pf_strip_T2_hermione + + jump end_cho_strip_event + + +label cc_pf_strip_T2_hermione: + + menu: + "\"Definitely!\"": + $ her_mood += 10 + her "What?!" ("open", "wide", "base", "stare") + cho "See, I told you!{w=0.6} How could he pick a walking bush on legs over this!" ("smile", "narrow", "angry", "L") + her "" ("angry", "base", "angry", "mid") + cho "Now tell her. Tell her why my body is superior compared to hers." ("soft", "closed", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Well, you're more flexible for one..." ("base", xpos="far_left", ypos="head") + cho "That's right, I am!" ("soft", "wide", "base", "mid") + her "*Humph*..." ("annoyed", "narrow", "angry", "R") + cho "And? What else?" ("smile", "narrow", "base", "L") + gen "And Cho's thighs are probably the most impressive ones I've seen in the last hund-- decade or more!" ("angry", xpos="far_left", ypos="head") + her "Well in that case..." ("soft", "closed", "base", "mid") + her "In that case I'll give you a great opportunity to stare at them indefinitely." ("angry", "base", "angry", "mid") + cho "What are you talking about, Granger?" ("soft", "narrow", "raised", "L") + + # Hermione walks towards the desk to pick up Cho's clothing. + call her_walk("desk", "base", speed=1.5) + pause .2 + if not d_flag_01: # Cho not on desk + call cho_chibi("stand",570,"base", flip=False) # Facing the desk. + with d3 + pause .6 + + cho "What are you doing?" ("soft", "narrow", "base", "L", ypos="head", flip=False) + + # Hermione picks them up and runs off. + call bld("hide") + pause .2 + call play_sound("equip") + hide screen cho_cloth_pile + pause .5 + + cho "My clothes!" ("open", "wide", "base", "L") + + call play_sound("running") + call her_walk("door", "base", speed=2) + call her_chibi(flip=False) + with d3 + pause .1 + call cho_chibi(flip=True) + with d3 + + her "Hey seeker, looks like someone will have to seek their way to their dorm without any clothes tonight." ("open", "base", "angry", "mid", ypos="head", flip=False) + cho "Hey!" ("clench", "narrow", "angry", "L", ypos="head", flip=True) + + # Hermione leaves out of the door. + hide screen bld1 + call her_chibi("stand", "door", "base", flip=True) + with d3 + pause .2 + + call her_chibi("leave") + + # Cho runs out the door. + if d_flag_01: # On desk + call play_sound("climb_desk") + show screen blkfade + with d3 + pause 1 + + hide screen bld1 + hide screen blkfade + call cho_chibi("stand", "desk", "base", flip=True) + with d3 + + else: + hide screen bld1 + call cho_chibi("stand",570,"base", flip=True) # Facing the door. + with d3 + + pause .2 + + cho "{size=+4}Give them back, you bitch!{/size}" ("scream", "narrow", "angry", "L", ypos="head", flip=True, trans=hpunch) + + call play_sound("running") + call cho_walk(action="leave", speed=2) + + call bld + gen "Did she just?" ("base", xpos="far_left", ypos="head") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "I don't think she's coming back..." ("base", xpos="far_left", ypos="head") + + "\"Not even close.\"": + $ cho_mood += 15 + cho "Not even clo--" ("soft", "wide", "base", "mid") + her "" ("smile", "base", "base", "R") + cho "Sir, could you please repeat that for me?" ("clench", "closed", "angry", "mid") + gen "Hermione's body is superior." ("base", xpos="far_left", ypos="head") + her "No surprise there..." ("base", "base", "base", "R") + cho "No!{w} It clearly isn't!" ("scream", "narrow", "angry", "mid", trans=hpunch) + cho "Are you mad, old man?" ("angry", "narrow", "angry", "mid") + her "Don't use that tone with the headmaster..." ("soft", "closed", "base", "mid") + cho "Nobody asked you!" ("mad", "narrow", "angry", "L") + her "He's the wisest wizard at our school...{w} Surely his word should be final..." ("smile", "narrow", "base", "mid_soft") + gen "I'd use the word astute but I'll take wise..." ("base", xpos="far_left", ypos="head") + cho "Why are you siding with her all of a sudden?" ("annoyed", "narrow", "angry", "mid") + gen "Good question." ("base", xpos="far_left", ypos="head") + gen "Miss Granger, why don't you show Miss Chang why your body is superior to hers..." ("base", xpos="far_left", ypos="head") + gen "Share with us your two most compelling arguments..." ("grin", xpos="far_left", ypos="head") + her "Sir?" ("soft", "wink", "base", "mid") + cho "He's talking about your {b}tits,{/b} you dimwit!" ("angry", "closed", "angry", "mid", cheeks="blush") + her "(...)" ("clench", "narrow", "base", "down", cheeks="blush") # Embarrassed + cho "" ("annoyed", "narrow", "angry", "mid") + gen "Yes Miss Granger!{w=0.5} Your very round{w=0.5}, handsomely spheroid{w=0.5}, perfectly sized{w=0.5}, very voluptuous and--" ("grin", xpos="far_left", ypos="head") + her "I got it, Professor!" ("clench", "happyCl", "worried", "mid", cheeks="blush") + cho "(Cow tits...)" ("annoyed", "narrow", "angry", "R", cheeks="blush") + $ hermione.strip("robe", "accessory") + her "Here..." ("base", "narrow", "base", "mid_soft") + + # Hermione shows her breasts. + # $ renpy.sound.play("sounds/boing02.ogg") + $ hermione.strip("top", "bra") + with d3 + pause .5 + + her "" ("base", "narrow", "base", "mid_soft", cheeks="blush") + call ctc + + her "Have a good look." ("soft", "narrow", "base", "mid_soft") + cho "(...)" ("annoyed", "narrow", "angry", "downR", cheeks="blush") # Tries to look away. + her "And you'd better take in what a {b}real pair{/b} looks like, slut." ("smile", "narrow", "angry", "R") + cho "I'd rather not, or I might barf..." ("soft", "narrow", "angry", "R") # + gen "Very nice, Miss Granger!" ("grin", xpos="far_left", ypos="head") + + menu: + "\"Ten points to Gryffindor!\"": + $ gryffindor += 10 + cho "(...)" ("annoyed", "narrow", "angry", "mid") + her "Thank you." ("soft", "narrow", "base", "mid_soft") + + "\"Fifty points to Gryffindor!\"": + $ cho_mood += 10 + $ gryffindor += 50 + cho "(Fifty?!)" ("soft", "wide", "base", "mid") # Shocked + her "Thank you." ("soft", "narrow", "base", "mid_soft") + cho "" ("clench", "closed", "angry", "mid", cheeks="heavy_blush") + + gen "For exposing those magnificent breasts." ("grin", xpos="far_left", ypos="head") + + # $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.wear("all") + with d3 + pause .5 + + her "Any time, Professor." ("soft", "narrow", "base", "mid_soft") + cho "(I bloody hate her!)" ("angry", "narrow", "angry", "L", cheeks="heavy_blush") + + her "If you don't mind, Sir." ("open", "base", "base", "R") + her "I'd like to leave now." ("soft", "base", "base", "mid") + cho "By all means, just go already." ("soft", "narrow", "angry", "R") + her "Did something not go as you expected?" ("smile", "base", "base", "R") + her "Did you think having me here when you exposed yourself would make me jealous..." ("soft", "closed", "base", "mid") + cho "(...)" ("annoyed", "narrow", "angry", "L", cheeks="blush") + her "Thank you for inviting me, Professor." ("soft", "narrow", "base", "mid_soft") + her "I {b}did{/b} enjoy this little obscene \"freak-show\" you arranged for me..." ("grin", "narrow", "base", "mid_soft") + cho "You'll regret this, Granger!" ("clench", "narrow", "angry", "L", cheeks="heavy_blush") + + if game.daytime: + her "Have a nice day, Professor." ("soft", "closed", "base", "mid") + else: + her "Have a good night, Professor." ("soft", "closed", "base", "mid") + + gen "(...)" ("base", xpos="far_left", ypos="head") + her "See you in class Chang!" ("grin", "narrow", "base", "R_soft") + cho "*Tzzzz*!" ("angry", "closed", "angry", "mid", cheeks="blush") + cho "Cow..." ("annoyed", "narrow", "angry", "R", cheeks="heavy_blush") + + # Hermione leaves. + call her_walk(action="leave") + + # Cho stands close to your desk. + call hide_characters + show screen blkfade + call cho_chibi("stand", "desk", "base", flip=True) + with d3 + + pause .5 + hide screen blkfade + with d3 + + pause .8 + call cho_chibi("stand", "desk", "base", flip=False) + + cho "I thought you were on my side, Sir!" ("soft", "narrow", "angry", "mid", xpos="mid", ypos="base", flip=False) + gen "I'm on nobody's side, because nobody is on my side..." ("base", xpos="far_left", ypos="head") + cho "You were supposed to have my back! Not Granger's!" ("angry", "closed", "angry", "mid") + cho "That {b}whore{/b} doesn't deserve your praise!" ("soft", "narrow", "angry", "mid") + gen "She made some good arguments..." ("base", xpos="far_left", ypos="head") + gen "\"A couple\" of good arguments, to be precise!" ("grin", xpos="far_left", ypos="head") + cho "They're barely larger than mine..." ("annoyed", "narrow", "base", "downR", cheeks="blush") + cho "You'll see, Sir.{w} I'm better than her.{w} And I'll prove it to you..." ("soft", "narrow", "angry", "mid") + gen "Well, that is yet to be seen." ("grin", xpos="far_left", ypos="head") + + # Cho gets dressed. + call play_sound("equip") + show screen blkfade + with d5 + $ cho.wear("all") + hide screen cho_cloth_pile + hide screen blkfade + + cho "Sir, my *Ehm*...{w} my panties..." ("open", "narrow", "angry", "R", cheeks="blush", xpos="mid", ypos="base", trans=fade) + gen "Oh, of course..." ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "angry", "mid", cheeks="blush") + pause .5 + gen "Give me just a moment..." ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/sniff.ogg") + call nar(">You give Cho's panties one last sniff before handing them back to the girl.") + gen "There." ("angry", xpos="far_left", ypos="head") + cho "(Pervert...)" ("annoyed", "narrow", "angry", "R", cheeks="blush") + cho "I think it's time for me to go now." ("soft", "closed", "angry", "mid") + cho "Until next time, [cho_genie_name]." ("soft", "narrow", "angry", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + call bld + gen "Damn!" ("angry", xpos="far_left", ypos="head") + gen "For somebody that does a lot of exercising, she smells really nice!" ("grin", xpos="far_left", ypos="head") + gen "Maybe I should be a bit nicer to her next time..." ("base", xpos="far_left", ypos="head") + + $ has_cho_panties = False + + + "\"Let Hermione assess you, Cho.\"": + $ her_mood += 6 + cho "Her?" ("soft", "wide", "base", "mid") + her "I couldn't care less about the way she looks!" ("soft", "base", "angry", "mid") + cho "(...)" ("annoyed", "narrow", "angry", "L") + gen "Are you sure about that? I've seen you staring..." ("base", xpos="far_left", ypos="head") + cho "" ("base", "narrow", "angry", "L") + her "Because she just so happens to be standing there, butt naked!{w} In your office!" ("angry", "closed", "angry", "mid") + gen "I'd like you to rate Miss Chang's figure, truthfully, and to the best of your ability." ("base", xpos="far_left", ypos="head") + her "Really? Do I have to?" ("annoyed", "base", "base", "mid") + gen "You do! I'd really like to hear your opinion on Miss Chang's shamelessly exposed body!" ("grin", xpos="far_left", ypos="head") + cho "*Mhmm*" ("base", "closed", "base", "mid") # Self assured. + her "Fine..." ("soft", "narrow", "angry", "R") + her "\"Poor,\" I'd say..." ("soft", "closed", "base", "mid") + cho "How dare you!{w=0.6} You snobby skunk!" ("scream", "narrow", "angry", "L", trans=hpunch) + her "" ("base", "base", "base", "R") + gen "(Is that better or worse than \"troll?\")" ("base", xpos="far_left", ypos="head") # Snape explained school ratings during the match. + cho "Our Professor asked you to rate my body truthfully!" ("mad", "narrow", "angry", "L") + her "Which I did!{w} And it's at \"dreadful\" now!" ("soft", "closed", "base", "mid") + cho "\"Dreadful\"?!" ("soft", "wide", "base", "mid") + cho "You're a {b}lying bitch,{/b} Granger!" ("angry", "closed", "angry", "mid", cheeks="blush") + her "Sir, you can't let her talk to me like that!" ("angry", "base", "angry", "mid") + gen "Bitch isn't even a proper curse word." ("base", xpos="far_left", ypos="head") + gen "You can say that on TV..." ("base", xpos="far_left", ypos="head") + cho "Granger, why don't you tell us which part of my immaculate body deserves such a poor rating?" ("soft", "narrow", "angry", "L") + her "Very well..." ("soft", "closed", "base", "mid") + her "For one, you are a {b}narcissistic bitch!{/b}{w} That makes the presumption her body is superior to all others..." ("open", "base", "angry", "L") + cho "Because it is." ("smile", "narrow", "angry", "mid") + her "Not to mention that you have even fewer curves than some of the boys I know..." ("grin", "base", "angry", "mid") + cho "" ("annoyed", "narrow", "angry", "mid", cheeks="blush") + her "Maybe once your Quidditch endeavours all fail, you can apply for a profession to model male underwear..." ("soft", "closed", "base", "mid") + cho "I wonder where you're getting {b}your{/b} undergarments from..." ("soft", "closed", "base", "mid") + cho "Stealing them from Madam Pomfrey, are you?" ("smile", "narrow", "angry", "mid") + her "I do not!!!" ("open", "wide", "base", "stare") + gen "Girls, we all know what really counts is how we appear on the inside." ("base", xpos="far_left", ypos="head") + her "" ("angry", "closed", "angry", "mid") + cho "Oh shut up!" ("angry", "narrow", "angry", "mid") + her "Professor, you're the one who continuously asks us to expose ourselves!" ("soft", "base", "angry", "mid") + gen "Well yes. I also never claimed that {b}I{/b} was pretty on the inside." ("base", xpos="far_left", ypos="head") + gen "You of all people should know better by now..." ("base", xpos="far_left", ypos="head") + her "Despicable..." ("angry", "narrow", "angry", "R") + cho "Don't worry, Granger!" ("soft", "narrow", "angry", "L") + cho "If you were to start doing hourly exercises, our Professor might even be attracted to you by the end of the year..." ("soft", "closed", "raised", "mid") + her "Hourly exercises?" ("soft", "wide", "base", "stare") # Shocked + cho "But I wouldn't say all hope is lost!" ("smile", "narrow", "angry", "L") + cho "While your figure might be a bit repulsive to the eyes..." ("soft", "closed", "base", "mid") + cho "I don't mind looking at those {b}huge melons{/b} of yours." ("soft", "narrow", "base", "L", cheeks="blush") + her "How dare you talk of them like that!" ("angry", "narrow", "angry", "R") + gen "*Heh*... melons..." ("grin", xpos="far_left", ypos="head") + her "Sir, I'd like to leave now." ("open", "base", "angry", "mid") + + cho "Already missing your books, are you?" ("annoyed", "narrow", "base", "L") + her "I am not.{w} And I don't appreciate being made fun of!" ("angry", "closed", "angry", "mid") + + if game.daytime: + her "Good day, Sir." ("soft", "base", "angry", "mid") + cho "See ya around, Granger..." ("smile", "narrow", "angry", "L") + her "*Hmpf*" ("annoyed", "narrow", "angry", "R") + + else: + her "Good night, Sir." ("soft", "base", "angry", "mid") + cho "Nighty-night, Granger..." ("soft", "narrow", "angry", "L") + her "*Tzzzzzh*!" ("annoyed", "narrow", "angry", "R") + + # Hermione leaves. + call her_walk(action="leave") + + show screen blkfade + call cho_chibi("stand", "desk", "base", flip=False) + with d3 + + hide screen blkfade + cho "I have to say, [cho_genie_name], doing these favours is fun!" ("smile", "narrow", "base", "mid", xpos="mid", ypos="base", flip=False, trans=fade) + gen "I'm glad you're enjoying yourself." ("base", xpos="far_left", ypos="head") + cho "Believe me, Sir. I am." ("smile", "narrow", "angry", "mid") + cho "" ("horny", "narrow", "angry", "mid") + pause .4 + + # Cho gets dressed. + call play_sound("equip") + $ cho.wear("all") + hide screen cho_cloth_pile + with d3 + pause .5 + + cho "Now, if you excuse me..." ("soft", "base", "base", "mid") + + if game.daytime: + cho "I have to head back to classes." ("soft", "base", "base", "R") + gen "I still got your--" ("base", xpos="far_left", ypos="head") + cho "See ya next time, [cho_genie_name]!" ("smile", "narrow", "angry", "mid") + else: + cho "I have to head back to my dorms." ("soft", "base", "base", "R") + gen "Don't you want your--" ("base", xpos="far_left", ypos="head") + cho "Sweet dreams, [cho_genie_name]!" ("smile", "narrow", "angry", "mid") + + call cho_walk(action="leave") + + call bld + gen "Nice, I still got her panties!" ("grin", xpos="far_left", ypos="head") + + call give_reward(">You have acquired Cho's panties!", "interface/icons/panties.webp") + $ has_cho_panties = True + + # Reset Hermione clothing. + $ hermione.equip(her_outfit_last) + return + + +############## +### Tier 3 ### +############## + + +## Tier 3 - Event 1 ## + +# Cho hops on your desk and she strips for you. +# You talk about the last match and Tonks' role in it. +# You tell Cho about Tonks' ability, and what she did to help winning the game. +# Notes: Cho could be naked at this point so some sounds/effects like cloth pile has been moved. + +label cc_pf_strip_T3_intro_E1: + gen "Come closer, [cho_name]." ("base", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]..." ("base", "narrow", "base", "mid") + + call cho_chibi("stand", "desk", "base") + + cho "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "Would you like to hop on my desk and give me another show?" ("grin", xpos="far_left", ypos="head") + cho "You want to look at my body again?" ("soft", "narrow", "raised", "mid") + cho "Naturally you'd like to see if I've been keeping up with my workout? Staying in shape and all that..." ("soft", "narrow", "angry", "mid") + + menu: + "\"Of course...\"": + cho "[cho_genie_name], no need to continue the pretence..." ("open", "closed", "base", "mid") + cho "We both know you don't really care about that stuff." ("open", "narrow", "base", "mid") + cho "All you want to do is ogle at my naked body." ("soft", "narrow", "angry", "mid") + cho "You're just like all the other teachers..." ("annoyed", "narrow", "base", "R") + gen "You are one to say, you little slut!" ("base", xpos="far_left", ypos="head") + gen "You went through quite the effort to show the whole school your ass on that broom..." ("base", xpos="far_left", ypos="head") + cho "I only did that so we'd win!" ("normal", "narrow", "angry", "mid") + gen "Keep telling yourself that, you little show-off!" ("grin", xpos="far_left", ypos="head") + gen "Come here and hop on my desk already!" ("grin", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "angry", "mid") + + "\"No, I just want to see your naked body up close.\"": + gen "Let me see that ass of yours bounce, baby!" ("grin", xpos="far_left", ypos="head") + cho "At least you are honest with me..." ("open", "closed", "base", "mid") + cho "I can't really blame you, you're just a man, after all..." ("soft", "narrow", "base", "L") + cho "And I'm simply irresistible." ("smile", "narrow", "angry", "mid") + gen "That you are, you little slut!" ("grin", xpos="far_left", ypos="head") + gen "Now hop onto my desk so I can have a good look at you." ("grin", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]." ("base", "narrow", "angry", "mid") + + + # Cho hops on your desk. + call hide_characters + show screen blkfade + with d5 + call play_sound("climb_desk") + pause 2 + + call cho_chibi("stand", "on_desk", "on_desk", flip=False) + hide screen bld1 + hide screen blkfade + with d5 + call ctc + + cho "" ("base", "narrow", "base", "mid", xpos="mid", ypos="base", trans=fade) + call ctc + + gen "Yes! Show me what you got, you naughty girl!" ("grin", xpos="far_left", ypos="head") + pause .2 + + #Remove robes. + if cho.is_worn("robe"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("robe") + with d3 + pause .5 + + cho "Let's just get rid of this thing to start with..." ("horny", "narrow", "base", "down") + + # Remove top. + if cho.is_worn("top"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("top") + with d3 + pause .5 + + cho "" ("horny", "narrow", "angry", "mid", cheeks="blush") + call ctc + + gen "Marvellous as always." ("grin", xpos="far_left", ypos="head") + cho "I'm glad you're enjoying yourself, [cho_genie_name]..." ("base", "narrow", "angry", "down") + gen "That I do!" ("grin", xpos="far_left", ypos="head") + pause .2 + + # Remove bottoms. + if cho.is_worn("bottom"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bottom") + with d3 + pause .5 + + gen "Such a tease, just take it all off already!" ("base", xpos="far_left", ypos="head") + cho "Patience, [cho_genie_name]..." ("base", "narrow", "base", "mid") + + # Remove bra. + if cho.is_worn("bra"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bra") + with d3 + pause .5 + + gen "There they are... My favourite pair of Quaffles." ("base", xpos="far_left", ypos="head") + cho "..." ("base", "narrow", "base", "downR", cheeks="blush") + + # Remove panties + everything else. + if cho.is_equipped("panties"): + + gen "And now your panties!" ("grin", xpos="far_left", ypos="head") + cho "Of course, [cho_genie_name]..." ("smile", "narrow", "base", "mid") + pause .2 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + hide cho_main + $ cho.strip("all") + pause 1.2 + call cho_chibi("stand", "on_desk", "on_desk", flip=True) + pause .4 + $ renpy.sound.play("sounds/cloth_sound4.ogg") + show screen cho_cloth_pile + pause .6 + call cho_chibi("stand", "on_desk", "on_desk", flip=False) + cho "" (trans=d3) + pause .5 + + cho "..." ("soft", "narrow", "base", "downR", cheeks="blush") + cho "Here, [cho_genie_name]... You can have them." ("horny", "narrow", "angry", "mid", cheeks="blush") + pause .5 + + # Panties acquired message! + call give_reward(">You have acquired Cho's panties!", "interface/icons/panties.webp") + $ has_cho_panties = True + + else: + pause .8 + + #Remove any remaining items (no sound since she might be naked) + $ cho.strip("all") + with d3 + pause .5 + + cho "" ("horny", "narrow", "base", "mid", cheeks="blush") + call ctc + + cho "Do you like watching me, [cho_genie_name]?" ("soft", "narrow", "base", "mid") + cho "You should know, Sir, I'm {b}incredibly{/b} thankful for your help." ("open", "closed", "base", "mid") + cho "Thanks to you, I get to do what I love..." ("smile", "narrow", "base", "mid") + gen "Showing yourself off?" ("base", xpos="far_left", ypos="head") + cho "No. Quidditch!" ("annoyed", "narrow", "angry", "mid") + cho "Winning, to be precise..." ("soft", "narrow", "base", "mid") + gen "Yes. I feel like a winner as well!" ("grin", xpos="far_left", ypos="head") + cho "Although, to tell you a secret..." ("soft", "closed", "base", "mid") + + # mirror sprite + call hide_characters + hide screen bld1 + with d3 + pause .2 + + call cho_chibi(flip=True) + with d3 + pause .8 + + cho "" ("smile", "narrow", "angry", "R", xpos=360, ypos="base", flip=True) + pause .8 + + cho "I am starting to love doing {b}this{/b} as well." ("soft", "narrow", "base", "R", cheeks="blush") + gen "Yes, you little slut! Shake that ass for me!" ("grin", xpos="far_left", ypos="head") + cho "I love the reaction I get from people..." ("base", "base", "base", "up") + cho "From you... From Hermione..." ("soft", "narrow", "base", "downR") + cho "Why don't we summon her? Maybe she'll join me this time..." ("base", "narrow", "base", "downR") + cho "I think that could be fun." ("crooked_smile", "closed", "base", "mid") + gen "Miss Granger, you say?" ("base", xpos="far_left", ypos="head") + gen "How about we invite somebody else in her stead?" ("grin", xpos="far_left", ypos="head") + pause .2 + + # mirror sprite + call hide_characters + hide screen bld1 + with d3 + pause .2 + + call cho_chibi(flip=False) + with d3 + pause .5 + + cho "Somebody else?" ("upset", "base", "raised", "mid", xpos="mid", ypos="base", flip=False) + gen "Yes, to keep things interesting." ("grin", xpos="far_left", ypos="head") + cho "*Hmm*..." ("annoyed", "base", "raised", "mid") + cho "I suppose..." ("soft", "base", "base", "R") + gen "Or are you only prepared to do it if you get to tease Miss Granger at the same time?" ("base", xpos="far_left", ypos="head") + cho "*Hmm*...{w=0.3} Alright, what's one student over another." ("soft", "narrow", "base", "R") + gen "It's not a student I'm thinking of." ("base", xpos="far_left", ypos="head") + cho "What do you mean, Sir?" ("open", "base", "base", "mid") + gen "I want you to strip for one of your teachers!" ("base", xpos="far_left", ypos="head") + cho "A teacher?" ("disgust", "wide", "base", "mid", cheeks="blush") # shocked + cho "No way I could do that!" ("clench", "wide", "base", "mid", cheeks="blush") + gen "Look at it as just another challenge." ("grin", xpos="far_left", ypos="head") + cho "" ("annoyed", "base", "base", "mid") + gen "The teachers already got a good look at your assets during the last couple of games." ("base", xpos="far_left", ypos="head") + gen "And I know for a fact that a couple of them are quite interested in a closer look." ("base", xpos="far_left", ypos="head") + cho "Oh, yeah?" ("soft", "base", "base", "down", cheeks="blush") + cho "Then who is it that you have in mind?" ("open", "base", "base", "R", cheeks="blush") + + $ cc_strip_no_snape = False # throwaway var used only in the next event. + + label .choice: + + menu: + "\"Tonks\"": + pass + + "\"Snape\"" if cc_strip_no_snape == False: + $ cc_strip_no_snape = True # throwaway var used only in the next event. + cho "What?!" ("clench", "wide", "base", "mid", cheeks="blush") + cho "You can't be serious!" ("angry", "base", "angry", "mid") # angry + cho "[cho_genie_name], thanks to him we almost lost the match!" ("open", "narrow", "angry", "mid") + cho "He gave those idiots a luck potion, remember?" ("open", "closed", "angry", "mid") + cho "You should have thrown him out for that!" ("clench", "narrow", "angry", "mid") + gen "All I care about is that he and his band of greenhorns lost the match against us..." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "angry", "mid") + cho "There is no way I'd ever strip for that greasy old bastard!" ("open", "narrow", "angry", "mid") + cho "I'm not giving him the satisfaction." ("annoyed", "narrow", "angry", "R") + gen "Very well, forget about Snape." ("base", xpos="far_left", ypos="head") + gen "But what about..." ("base", xpos="far_left", ypos="head") + jump cc_pf_strip_T3_intro_E1.choice + + + cho "Professor Tonks?" ("quiver", "base", "base", "mid") + gen "You have yet to show her your gratitude for the help she provided..." ("base", xpos="far_left", ypos="head") + gen "She was such an important player during that last match, and greatly helped us secure that win." ("base", xpos="far_left", ypos="head") + cho "She did?" ("upset", "base", "raised", "mid") + cho "I mean, she did get the Slytherins to join practice, but..." ("annoyed", "base", "raised", "R") + cho "She wasn't even present for most of the actual game." ("soft", "base", "base", "R") + gen "Are you sure about that?" ("grin", xpos="far_left", ypos="head") + gen "Well, you would have hardly been able to recognize her..." ("base", xpos="far_left", ypos="head") + cho "*Hmm*...?" ("annoyed", "base", "raised", "mid") + gen "Curly long hair, and tits as big as honeydews." ("grin", xpos="far_left", ypos="head") + + gen "Didn't the way Miss Granger act, how she flirted with those Slytherin players, struck you as a bit odd?" ("base", xpos="far_left", ypos="head") + gen "You might even say... familiar?" ("grin", xpos="far_left", ypos="head") + cho "Are you suggesting that Professor Tonks..." ("mad", "base", "base", "mid") + cho "But how?" ("clench", "base", "raised", "mid") + gen "Magic...{w=0.8} duh!" ("base", xpos="far_left", ypos="head") + gen "How about we call her on your next visit, then you can ask her yourself..." ("base", xpos="far_left", ypos="head") + cho "I suppose we could do that..." ("normal", "base", "base", "downR", cheeks="blush") + gen "Splendid!" ("grin", xpos="far_left", ypos="head") + gen "That should be all for today, [cho_name]." ("base", xpos="far_left", ypos="head") + gen "You're dismissed..." ("base", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]." ("base", "happyCl", "base", "mid") + + # Cho hops off your desk. + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + + call play_sound("climb_desk") + call cho_chibi("stand", "desk", "base", flip=False) + + # Cho puts her clothes back on. (No sounds in case she never took any off) + $ cho.wear("all") + hide screen cho_cloth_pile + with d3 + pause 1.5 + + hide screen blkfade + cho "" ("base", "narrow", "base", "mid", xpos="mid", ypos="base", trans=fade) + pause .5 + + if game.daytime: + cho "I'll head back to classes, then." ("soft", "narrow", "base", "mid") + else: + cho "I'll head back to our dorms, then." ("soft", "narrow", "base", "mid") + + cho "Until next time, [cho_genie_name]." ("base", "narrow", "base", "mid", cheeks="blush") + + # Cho leaves. + call cho_walk(action="leave") + + jump end_cho_strip_event + + +### Tier 3 - Event 2 ### + +# Cho prompts genie to summon Tonks as she wants to know how she turned into Hermione +# Tonks enters and is immediately enticed by cho, she flirts with her a bit before cho starts asking questions. + +label cc_pf_strip_T3_intro_E2: + gen "Alright, let's do this again." ("base", xpos="far_left", ypos="head") + gen "We're gonna get your teacher up here -- and you'll strip for us, understood?" ("base", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]." ("smile", "base", "base", "mid") + gen "You might want to change into your school clothing before she gets here..." ("base", xpos="far_left", ypos="head") + cho "Of course." ("base", "happyCl", "base", "mid") + + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + pause 1 + + # Equip Cho & Tonks default clothing. + $ cho_outfit_last.save() # Store current outfit. + $ ton_outfit_last.save() # Store current outfit. + $ cho.equip(cho_outfit_default) + $ tonks.equip(ton_outfit_default) + + call cho_chibi("stand", "desk", "base") + + hide screen blkfade + cho "*Ehm*..." ("quiver", "narrow", "base", "downR", xpos="mid", ypos="base", trans=fade) + cho "The teacher you're about to summon, [cho_genie_name]..." ("open", "narrow", "base", "mid") + cho "You're talking about Professor Tonks, right?" ("soft", "narrow", "base", "mid") # suspicious + gen "Oh... of course." ("base", xpos="far_left", ypos="head") + cho "Well then, I'm ready." ("base", "base", "base", "mid") + gen "Ready to strip for your teacher?" ("grin", xpos="far_left", ypos="head") + cho "I'm well aware of what I'm about to do, [cho_genie_name], and I'm not going to falter." ("annoyed", "narrow", "angry", "mid") + cho "Besides, it's not like I have any bits that she doesn't..." ("open", "closed", "base", "mid") + gen "Not even trying to play coy anymore, are you?" ("base", xpos="far_left", ypos="head") + cho "Why should I? It's good practice." ("open", "narrow", "raised", "down") # confident + gen "Great positive thinking, [cho_name].{w=0.8} You'll make it far with that mindset." ("grin", xpos="far_left", ypos="head") + cho "It's no big deal for me, [cho_genie_name]." ("base", "narrow", "base", "mid") + cho "I'm not as prude and buttoned up as Hermione, you know..." ("soft", "narrow", "base", "mid") + cho "And I'll finally get to know how Professor Tonks helped us during the Slytherin match!" ("base", "happyCl", "base", "mid") + gen "Oh boy, you're in for a treat!" ("grin", xpos="far_left", ypos="head") + gen "Just wait here at my desk while I summon her..." ("base", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]." ("base", "narrow", "base", "mid") + call play_music("stop") + + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + pause 1 + + call cho_chibi(flip=True) + + # end blkfade + hide screen blkfade + with d5 + pause .8 + + # Tonks enters. + call play_sound("door") + call ton_chibi("stand", "door", "base") + with d3 + pause .5 + + # thought emote + call chibi_emote("thought", "tonks") + pause .8 + + # Tonks walks next to Cho. + call ton_walk(540, "base") + + call play_music("tonks") + cho "" ("soft", "narrow", "worried", "L", cheeks="blush", xpos="left", ypos="base", flip=True) + if game.daytime: + ton "Hello, Professor." ("base", "base", "base", "mid", xpos="right", ypos="base") + else: + ton "Good evening, Professor." ("base", "base", "base", "mid", xpos="right", ypos="base") + + ton "Miss Chang. Didn't expect to see you here..." ("base", "narrow", "base", "L") + ton "What a nice surprise." ("horny", "narrow", "base", "mid") # horny tongue + cho "..." ("quiver", "narrow", "worried", "downR", cheeks="blush") # nervous + cho "*Ehm*..." ("soft", "narrow", "worried", "down", cheeks="blush") + gen "Go on, Cho. She's not going to bite you..." ("base", xpos="far_left", ypos="head") + ton "*Hmm*?" ("base", "base", "raised", "mid") + gen "Miss Chang was hoping she could repay you with a favour. For the help you provided against Slytherin." ("grin", xpos="far_left", ypos="head") + ton "A favour, you say..." ("crooked_smile", "narrow", "base", "mid") + cho "Y-yes, if that's okay with you, professor..." ("horny", "narrow", "worried", "L", cheeks="blush") # blushing, still nervous + ton "Oh, anything for you, darling." ("base", "narrow", "base", "L") + ton "So, what will it be then?" ("open", "base", "base", "mid") + ton "I presume you didn't invite me for a cup of tea, did you?" ("base", "narrow", "base", "mid") # why remove? + + menu: + "\"We need a second opinion on the girl's physique.\"": + ton "*Mhmm*?" ("base", "base", "base", "mid") + ton "So naturally you thought of me to provide this... opinion?" ("open", "narrow", "raised", "mid") + gen "You're quite the athletic witch yourself, are you not?" ("base", xpos="far_left", ypos="head") + ton "" ("base", "narrow", "base", "mid") + gen "I'm certain there's no one better suited to judge the girl's body than yourself." ("grin", xpos="far_left", ypos="head") + ton "Very well, professor..." ("base", "base", "base", "mid") + ton "I'm not the one to question the headmaster's judgement." ("base", "narrow", "base", "mid") + gen "Great, then I'll look forward to hearing your assessment -- from head to toe please -- let us know if there's anything she could improve." ("grin", xpos="far_left", ypos="head") + cho "" ("normal", "happyCl", "worried", "mid", cheeks="blush") + ton "Oh, I doubt I'll find anything to improve on this one..." ("horny", "narrow", "base", "L", hair="horny") # horny + gen "Okay then..." ("base", xpos="far_left", ypos="head") + gen "Girl, You may start with the show." ("base", xpos="far_left", ypos="head") + ton "The show?!" ("soft", "base", "raised", "mid") + gen "She'll have to take her clothes off, obviously!" ("grin", xpos="far_left", ypos="head") + ton "Oh my!" ("grin", "base", "shocked", "mid", hair="horny") # lip bite? + gen "Let's get started then, shall we." ("base", xpos="far_left", ypos="head") + ton "" ("base", "narrow", "base", "L", hair="horny") + gen "Get on that desk, Miss Chang!" ("grin", xpos="far_left", ypos="head") + cho "Okay." ("soft", "narrow", "worried", "downR", cheeks="blush") + + "\"She's going to strip for us...\"": + cho "" ("normal", "happyCl", "worried", "mid", cheeks="heavy_blush") + ton "Really?" ("crooked_smile", "base", "shocked", "mid", hair="horny") + cho "..." ("mad", "narrow", "worried", "downR", cheeks="blush") # embarrassed + gen "It's all just part of the girl's training..." ("base", xpos="far_left", ypos="head") + gen "To improve her confidence, and all that. And not shy away from a bit of nudity." ("grin", xpos="far_left", ypos="head") + ton "I see... so this is why you've been such a daredevil on the pitch lately..." ("horny", "narrow", "base", "L", hair="horny") + cho "..." ("normal", "happyCl", "worried", "mid", cheeks="blush") #Blushes + ton "Well, if you think I can be of assistance, then you have my full support." ("base", "base", "base", "L") + cho "Thank you, Professor." ("soft", "narrow", "worried", "L", cheeks="blush") + gen "Great! Then get on that desk, Cho!" ("grin", xpos="far_left", ypos="head") + cho "Okay." ("soft", "narrow", "worried", "down", cheeks="blush") + + + # Cho starts stripping. + call play_music("stop") + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + call play_sound("climb_desk") + pause 1 + + call cho_chibi("stand", 330, 360) + call ton_chibi("stand", 410, "base") + + hide screen blkfade + with d5 + pause .8 + + call bld + gen "Excellent..." ("base", xpos="far_left", ypos="head") + gen "Now, what would you say are Miss Chang's best assets, Professor?" ("base", xpos="far_left", ypos="head") + call bld("hide") + pause .2 + + # Cho turns around. + call cho_chibi(flip=True) + with d3 + pause .3 + + call play_music("cho") + cho "" ("quiver", "narrow", "worried", "L", cheeks="blush", xpos=330, ypos="base", flip=True) + ton "" ("base", "narrow", "base", "L", xpos=460, ypos="base") + gen "Are you more into the girl's tits... or her ass?" ("grin", xpos="far_left", ypos="head") + ton "*Hmm*--" ("base", "narrow", "annoyed", "L", hair="horny") + cho "Sir!" ("soft", "happyCl", "worried", "mid", cheeks="heavy_blush") + gen "It's a fair question..." ("base", xpos="far_left", ypos="head") + cho "..." ("soft", "narrow", "worried", "L", cheeks="blush") + ton "If you're not comfortable with this, Miss Chang, then I'm not going to--" ("open", "base", "base", "L") + cho "No!" ("clench", "happyCl", "worried", "mid", cheeks="blush") + ton "*Hmm*?" ("base", "narrow", "raised", "L") + cho "I mean...{w=0.5} It's fine..." ("open", "narrow", "worried", "down", cheeks="blush") + cho "Feel free to answer him, Professor..." ("soft", "narrow", "worried", "L", cheeks="blush") + call play_sound("giggle") + ton "*giggles*" ("base", "happyCl", "base", "mid") + ton "She's so cute when she's all flustered, isn't she?" ("crooked_smile", "base", "base", "mid") + cho "..." ("quiver", "happyCl", "base", "mid", cheeks="blush") #Heavy blush + gen "..." ("base", xpos="far_left", ypos="head") + gen "So, what's your opinion?" ("base", xpos="far_left", ypos="head") + gen "I'm sure Miss Cho is dying to know..." ("grin", xpos="far_left", ypos="head") + ton "I don't know how I could possibly answer such a difficult question, Professor." ("soft", "narrow", "base", "mid") + gen "Then let me help you with your decision..." ("base", xpos="far_left", ypos="head") + + gen "Cho, do your thing." ("grin", xpos="far_left", ypos="head") + ton "" ("base", "narrow", "base", "L") + cho "Of course, Sir..." ("open", "narrow", "worried", "mid", cheeks="blush") + cho "..." ("angry", "narrow", "base", "down", cheeks="blush") + pause .2 + + # Remove top. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("robe", "top") + with d3 + pause .5 + + cho "" ("horny", "happyCl", "worried", "mid", cheeks="blush") + call ctc + + ton "*Hmm*... Very promising." ("base", "narrow", "base", "L") + cho "..." ("horny", "narrow", "worried", "down", cheeks="blush") + pause .2 + + # Remove bra. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bra") + with d3 + pause .5 + + ton "" ("base", "narrow", "raised", "L", hair="horny") + cho "" ("quiver", "narrow", "base", "downR", cheeks="heavy_blush") + call ctc + + ton "Merlin's burly bosom!" ("grin", "narrow", "annoyed", "L", hair="horny") + cho "" ("upset", "happyCl", "worried", "mid", cheeks="heavy_blush") + gen "How about now?" ("grin", xpos="far_left", ypos="head") + gen "Ever seen such a perfectly shaped pair of quaffles before?" ("base", xpos="far_left", ypos="head") + ton "Did you just call them quaffles?" ("soft", "narrow", "raised", "mid", hair="horny") + cho "..." ("mad", "narrow", "worried", "downR", cheeks="blush") + gen "So, what's your opinion?" ("base", xpos="far_left", ypos="head") + ton "What would you like me to say, Professor?" ("base", "narrow", "base", "mid", hair="horny") + ton "That I'd like to run my mouth all over those perky nipples of hers?" ("horny", "narrow", "angry", "L", hair="horny") + cho "Professor!" ("open", "happyCl", "worried", "mid", cheeks="heavy_blush") # closed eyes, worried, embarrassed. + ton "Sorry sweetie, but Professor Dumbledore wanted my honest opinion." ("open", "closed", "raised", "mid", hair="horny") + ton "Your breasts are quite perfect, Miss Chang." ("base", "narrow", "base", "L", hair="horny") + cho "..." ("normal", "narrow", "worried", "L", cheeks="blush") + cho "I don't think they're big enough." ("open", "narrow", "worried", "downR", cheeks="heavy_blush") # sad + cho "" ("normal", "narrow", "worried", "down", cheeks="heavy_blush") + ton "Big enough for what? Impress some idiot?" ("open", "narrow", "annoyed", "L", hair="angry") + ton "No offense, Professor." ("soft", "narrow", "base", "mid") + gen "None taken..." ("base", xpos="far_left", ypos="head") + ton "You don't need large breasts. Especially not if you want to have a career in Quidditch." ("open", "base", "base", "L") + cho "" ("annoyed", "narrow", "base", "L", cheeks="blush") + ton "Just have a look at mine... They're bothersome to fly with even at my size..." ("soft", "base", "shocked", "down") + call play_music("stop") + pause .2 + + # Tonks starts stripping. + + # Remove robe. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("robe") + with d3 + pause .5 + + cho "" ("disgust", "base", "raised", "L", cheeks="blush") + ton "" ("base", "happyCl", "base", "mid") + call ctc + + cho "Professor, you don't have to--" ("mad", "base", "raised", "L", cheeks="blush") #blush + pause .2 + + # Remove top and bra. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("top", "bra") + with d3 + pause .5 + + ton "" ("horny", "narrow", "annoyed", "L", hair="horny") + call ctc + + cho "P-{w=0.3}Professor!" ("silly", "happyCl", "worried", "mid", cheeks="heavy_blush") #lip bite "glances away from Tonks #Heavy blush + gen "*He-he-he!*" ("grin", xpos="far_left", ypos="head") + ton "No need to be shy, Miss Chang." ("base", "narrow", "base", "L", hair="horny") + gen "Yes, it's not like she has any bits you haven't seen before... is that not what you said, Cho?" ("grin", xpos="far_left", ypos="head") + cho "R-Right." ("angry", "happyCl", "worried", "mid", cheeks="heavy_blush") + cho "" ("horny", "narrow", "worried", "L", cheeks="blush") + gen "So... what would you like to see next, Miss Tonks?" ("base", xpos="far_left", ypos="head") + ton "Her ass cheeks sure looked great on top of that broom..." ("soft", "narrow", "base", "mid", hair="horny") + ton "I'd love to see them up close..." ("base", "narrow", "base", "L", hair="horny") + gen "Couldn't agree more!" ("grin", xpos="far_left", ypos="head") + gen "Cho, you heard your teacher's request." ("base", xpos="far_left", ypos="head") + cho "" ("horny", "narrow", "worried", "mid", cheeks="blush") + gen "Turn around, and take off your skirt." ("base", xpos="far_left", ypos="head") + cho "Yes, Sir." ("clench", "narrow", "worried", "mid", cheeks="blush") + pause .2 + + # Cho faces Genie. + hide cho_main + with d5 + call cho_chibi(flip=False) + cho "" ("quiver", "narrow", "worried", "down", cheeks="blush", xpos=260, ypos="base", flip=False, trans=d5) + pause .8 + ton "" ("base", "narrow", "base", "down", hair="horny") + gen "Slowly..." ("base", xpos="far_left", ypos="head") + pause .5 + + # Remove bottom. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bottom") + with d5 + pause .5 + + cho "" ("normal", "happyCl", "base", "mid", cheeks="blush") + call ctc + + gen "And now the rest, Miss Chang." ("base", xpos="far_left", ypos="head") + ton "..." ("horny", "narrow", "base", "down", hair="horny") # horny + pause .2 + + # Remove all. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + hide cho_main + $ cho.strip("all") + pause 1.2 + $ renpy.sound.play("sounds/cloth_sound4.ogg") + show screen cho_cloth_pile + pause .6 + + cho "" ("horny", "narrow", "raised", "R", cheeks="heavy_blush") + call ctc + + call play_music("cho") + gen "Quite firm, aren't they?" ("grin", xpos="far_left", ypos="head") + call play_sound("giggle") + ton "*giggles*" ("base", "happyCl", "base", "mid", hair="horny") + ton "Yes, Indeed..." ("grin", "narrow", "base", "mid", hair="horny") + ton "No wonder she's so steady on that broomstick." ("horny", "narrow", "angry", "down", hair="horny") + cho "..." ("horny", "narrow", "base", "mid", cheeks="blush") # blushing + ton "Can't see anyone beating that, that's for sure." ("open", "narrow", "raised", "down", hair="horny") + # ton "Although, maybe in a physical--" + + gen "So... what's your opinion, what do you prefer?" ("base", xpos="far_left", ypos="head") + gen "Her tits, or her ass?" ("base", xpos="far_left", ypos="head") + ton "*Hmm*..." ("base", "narrow", "base", "down", hair="horny") + ton "You're not holding out on me, are you, Miss Chang?" ("open", "narrow", "base", "L", hair="horny") + cho "What do you--" ("angry", "narrow", "worried", "R", cheeks="blush") + ton "There's something missing...{w=0.5} I haven't seen everything yet, have I?" ("crooked_smile", "narrow", "raised", "mid", hair="horny") + gen "But of course!" ("grin", xpos="far_left", ypos="head") + ton "If I were to do any sort of judgement, I'd first need to see that cute little Snitch of yours." ("soft", "narrow", "base", "down", cheeks="blush", hair="horny") + cho "!!!" ("clench", "wide", "base", "mid", cheeks="heavy_blush") # shock + gen "Miss Chang, why don't you turn around so Professor Tonks can give you a proper assessment." ("grin", xpos="far_left", ypos="head") + cho "..." ("clench", "happyCl", "worried", "mid", cheeks="heavy_blush") # blush + pause .2 + + # Cho faces Tonks. + hide cho_main + with d5 + call cho_chibi(flip=True) + cho "" ("normal", "happyCl", "worried", "mid", cheeks="heavy_blush", xpos=330, ypos="base", flip=True, trans=d5) + pause .8 + + ton "*Hmm*... Will you look at that..." ("base", "narrow", "base", "down", hair="horny") + cho "..." ("horny", "narrow", "worried", "L", cheeks="heavy_blush") + ton "Now, this is a level of confidence I haven't seen in a student before..." ("horny", "narrow", "base", "mid", hair="horny") + gen "Yes, she's quite something, isn't she?" ("grin", xpos="far_left", ypos="head") + cho "..." ("base", "closed", "base", "mid", cheeks="blush") # blushing but faking confidence + ton "Although..." ("base", "narrow", "base", "L", hair="horny") + ton "Does this snitch get frightened and dart away, once you try and get up close to it?" ("grin", "narrow", "raised", "mid", hair="horny") + cho ".........." ("base", "closed", "base", "mid", cheeks="blush") #not paying much attention/didn't know she was being addressed + ton "Miss Chang?" ("open", "narrow", "raised", "L", hair="horny") + cho "Oh, sorry!" ("crooked_smile", "happyCl", "worried", "mid", cheeks="heavy_blush") + cho "Of course not, Professor -- I don't dart away from anything!" ("soft", "narrow", "worried", "downR", cheeks="blush") + + ## Tonks wants to strip too. ## + ton "Excellent, since that question has been answered..." ("base", "happyCl", "base", "mid", hair="horny") + ton "I assume you don't mind if I joined you on that desk, do you?" ("horny", "narrow", "angry", "L", hair="horny") + + call play_music("stop") + cho "What?!" ("soft", "wide", "raised", "mid", cheeks="blush") # blushing + gen "!!!" ("grin", xpos="far_left", ypos="head") + ton "*Hmm*... Or is that snitch of yours going to dart off after all?" ("soft", "narrow", "base", "down", hair="horny") + cho "" ("angry", "happyCl", "worried", "mid", cheeks="blush") + show screen blktone + with d3 + gen "(I sure hope the desk is sturdy enough...)" ("base", xpos="far_left", ypos="head") + call hide_characters + hide screen bld1 + hide screen blktone + show screen blkfade + with d5 + + # Tonks chibi on desk next to Cho's. # Tonks is facing left + + call cho_chibi("stand", 314, 366, flip=True) + call ton_chibi("stand", 370, 360, flip=False) + + call play_sound("climb_desk") + pause 2 + + hide screen blkfade + with d5 + pause .8 + + $ cho.zorder = 16 # in front of Tonks. 15 is default. + call play_music("tonks") + ton "" ("base", "narrow", "base", "L", hair="horny", xpos=345, ypos="base") + cho "T-Tonks!" ("clench", "happyCl", "raised", "L", cheeks="heavy_blush", xpos=280, ypos="base", flip=True) #Closed eyes, embarrassed + ton "That's {b}Professor Tonks{/b} to you, Miss Chang." ("open", "narrow", "angry", "L", hair="angry") # stern look + cho "Sorry!" ("clench", "happyCl", "worried", "mid", cheeks="heavy_blush") + call play_sound("giggle") + ton "*giggles*" ("base", "happyCl", "base", "mid", hair="horny") + ton "I'm just kidding, you can call me whatever you like, sweetie..." ("soft", "narrow", "base", "L", hair="horny") + ton "Catch that Snitch for me, will you..." ("horny", "narrow", "base", "L", hair="horny") + cho "Snitch? What Snitch?" ("soft", "narrow", "base", "L", cheeks="blush") + ton "Down here." ("grin", "narrow", "base", "down", hair="horny") + cho "" ("annoyed", "narrow", "base", "down", cheeks="blush") + pause .2 + + # Remove bottom. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("bottom","panties") + with d3 + pause .5 + + ton "" ("horny", "narrow", "base", "down", hair="horny") + pause .8 + + cho "!!!" ("normal", "wide", "raised", "down", cheeks="blush") + gen "Now that's what I'm talking about!" ("grin", xpos="far_left", ypos="head") + cho "Professor!" ("clench", "wide", "raised", "down", cheeks="heavy_blush") + ton "Believe me, I'm just getting started..." ("base", "narrow", "base", "mid", hair="horny") + pause .5 + + # Remove other clothes. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("all") + with d3 + pause .5 + + ton "" ("horny", "narrow", "base", "L", hair="horny") + cho "" ("base", "narrow", "worried", "down", cheeks="heavy_blush") + call ctc + + cho "..." ("angry", "narrow", "worried", "downR", cheeks="heavy_blush") # heavy blush + gen "Don't be shy, Miss Chang." ("grin", xpos="far_left", ypos="head") + ton "*Hmm*... Yes, don't be shy." ("crooked_smile", "narrow", "base", "L", hair="horny") + ton "I've yet to give you my verdict." ("soft", "narrow", "raised", "down", hair="horny") + cho "..." ("normal", "happyCl", "worried", "mid", cheeks="heavy_blush") + ton "Now, up this close, it's obvious what your best feature is, Miss Chang..." ("open", "narrow", "base", "down", hair="horny") + ton "I must say I simply love your--" ("horny", "narrow", "base", "down", hair="horny") + + # Snape enters. + call play_music("stop") + call hide_characters + hide screen bld1 + with d3 + + call play_sound("door") + call sna_chibi("stand", "door", "base") + with d3 + pause .1 + + call bld + gen "*Hmm*...?" ("base", xpos="far_left", ypos="head") + with hpunch + gen "{b}Balls!{/b}" ("angry", xpos="far_left", ypos="head") + sna "..." ("snape_47", ypos="head") #smirk + ton "What? No I was talking about her--" ("soft", "narrow", "base", "mid", ypos="head", flip=False) + with hpunch + cho "Professor Snape?!" ("open", "wide", "raised", "L", ypos="head", flip=True) # shock + sna "Oh-- now what do we have here?..." ("snape_13", ypos="head") + call bld("hide") + pause .2 + + # Tonks turns around. + call ton_chibi(xpos=360, ypos=360, flip=True) + with d3 + + # Snape walks closer to the middle. + call sna_walk(xpos="mid", ypos="base") + pause .8 + + # Position Cho's sprite behind Tonks. + $ cho.zorder = 15 # reset to default. + $ tonks.zorder = 16 # in front of Cho. 15 is default. + call play_music("snape") + sna "" ("snape_40", xpos=560, ypos="base") + cho "" ("normal", "wide", "base", "L", xpos=275, ypos="base", flip=True) + ton "" ("annoyed", "narrow", "annoyed", "L", xpos=390, ypos="base", flip=True) + + ton "Severus?" ("mad", "base", "base", "L", trans=d5) + ton "{size=-4}Get behind me, Cho...{/size}" ("open", "narrow", "base", "R") #small text + + $ cho_chibi.zorder = 2 # default is 3 + call cho_chibi("stand", 320, 366, flip=True) + cho "{size=-4}Yes-- Thank you.{/size}" ("disgust", "happyCl", "worried", "mid", cheeks="heavy_blush", xpos=295, ypos=17, flip=True, trans=d3) # Sprite is slightly lowered. + + ton "What are you doing here?" ("annoyed", "base", "angry", "stare") + ton "Have you been spying on us behind that door?" ("soft", "narrow", "base", "up", hair="horny") + sna "Of course not..." ("snape_46") + cho "P-{w=0.3}Professor..." ("open", "happyCl", "worried", "mid", cheeks="heavy_blush") + ton "" ("base", "narrow", "base", "downR", hair="horny") + + sna "Ah, Miss Chang... Hiding behind Professor Tonks, are we?" ("snape_02") + sna "I take it you're here to repay our headmaster for his help with your sudden Quidditch success?" ("snape_37") + #sna "But how come Professor Tonks--" ("snape_01") + ton "Well, what if she is,{w=0.5} Snivellus?" ("soft", "narrow", "annoyed", "R", hair="horny") + sna "" ("snape_38") + ton "She isn't doing anything wrong... at least not by your standards." ("grin", "closed", "shocked", "mid", hair="horny") + sna "Did I accuse her of doing anything wrong?" ("snape_09") + sna "On the contrary..." ("snape_02") + ton "" ("annoyed", "narrow", "raised", "up") + sna "As head of the slytherin house, I'd like to personally congratulate her on her fair play." ("snape_37") + sna "Your performance was quite remarkable, Miss Chang." ("snape_13") + sna "Putting your best {b}ass{/b}ets on display for everyone was quite the sight." ("snape_46") + cho "..." ("angry", "narrow", "worried", "downR", cheeks="heavy_blush") # embarrassed + sna "How very -- {b}ass{/b}piring of you..." ("snape_41") + cho "{size=-4}Please do something, sir.{/size}" ("soft", "base", "angry", "mid", cheeks="heavy_blush") #small text + gen "What?" ("base", xpos="far_left", ypos="head") + gen "(Oh, right... I should probably do something about this...)" ("base", xpos="far_left", ypos="head") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"Severus, I think you should leave.\"": + cho "" ("normal", "base", "angry", "L", cheeks="blush") + sna "Already? But I just got here..." ("snape_05") + ton "I can't recall us inviting you, Severus." ("soft", "narrow", "shocked", "L") + sna "Do I require some kind of appointment to see the headmaster?" ("snape_09") + sna "If there's a schedule I could look at, then perhaps I could plan my visits for when Miss Chang is not busy working on her insecurities..." ("snape_03") + #sna "If there's a schedule I could look at, then perhaps I could plan my visits for when you two aren't taking advantage of Miss Chang's insecurities..." ("snape_03") # Alternative line instead of the one above? + cho "..." ("angry", "narrow", "angry", "L", cheeks="blush") #Blush #closed eyes #embarrassed + #gen "How did you--" ("base", xpos="far_left", ypos="head") + ton "What do you want, Snape?" ("upset", "narrow", "annoyed", "L") + pass + + "\"Severus! Please, stay and watch.\"": + if cc_strip_no_snape: # Cho clearly told you she won't strip for Snape. + $ cho_mood += 30 + cho "Are you mad?!" ("clench", "base", "angry", "mid", trans=hpunch) + cho "Sir, I clearly told you before, I won't do this in front of Professor Snape!" ("open", "base", "angry", "mid") + sna "So you actually considered inviting me..." ("snape_20") + cho "" ("normal", "base", "angry", "L", cheeks="blush") + sna "That's surprising, considering our current bet..." ("snape_21") + sna "I must say though, I appreciate the gesture, Albus." ("snape_22") + gen "Bros before--" ("grin", xpos="far_left", ypos="head") + ton "Quiet! Both of you!" ("open", "closed", "base", "mid") + sna "*Tssz*..." ("snape_46") + sna "Well, I can read the room..." ("snape_09") + ton "Clearly..." ("upset", "narrow", "raised", "L") + sna "As it happens, I can't stay for too much longer anyway." ("snape_03") + pass + + else: + $ cho_mood += 12 + cho "Sir, you can't be serious!" ("angry", "wide", "raised", "mid", cheeks="heavy_blush") + gen "Calm yourself, girl." ("base", xpos="far_left", ypos="head") + gen "There's no touching allowed anyway... Those are the rules." ("base", xpos="far_left", ypos="head") + ton "Really? You never told me--" ("annoyed", "narrow", "raised", "mid", hair="horny") #pout + cho "Send him away!" ("clench", "base", "angry", "mid", cheeks="heavy_blush") + gen "Whatever... no need to get all indignant about this." ("angry", xpos="far_left", ypos="head") + sna "..." ("snape_09") + gen "You more than happily strip for all your other teachers... so why not Snape?" ("base", xpos="far_left", ypos="head") + cho "All my other teachers? It was only you and Tonks that I agreed to do this for!" ("clench", "wide", "raised", "mid") + pass + + sna "As much as I'd like to watch you make a fool of yourself for us, Miss Chang, I have more important things to do." ("snape_13") + show screen blktone + gen "(More important than this?...)" ("base", xpos="far_left", ypos="head") + hide screen blktone + sna "I merely came here to discuss a private matter with our headmaster." ("snape_24") + sna "About this... Misunderstanding that occurred during the last Quidditch game." ("snape_09") + + cho "There is nothing more to discuss." ("open", "closed", "angry", "R") + cho "We won against you, fair and square, you cheat..." ("clench", "narrow", "angry", "L") + sna "Hold your tongue, Miss Chang, or I'll have to dock some points from your house..." ("snape_03") + sna "Or worse..." ("snape_20") #smirks + cho "*Pfff*... only first years care about house points..." ("annoyed", "narrow", "base", "R") # small text + gen "Not taking that loss easy, are you? Disappointed that we won -- against all odds?" ("grin", xpos="far_left", ypos="head") + sna "*Tzzzs*... by sheer luck you did." ("snape_32") + cho "Says the one who literally gave his team liquid luck!" ("disgust", "narrow", "angry", "L", cheeks="blush") + sna "Ten points from Ravenclaw!" ("snape_31") + $ ravenclaw -= 10 + cho "{size=-4}Like I care...{/size}" ("annoyed", "narrow", "angry", "down", cheeks="blush") + ton "Let the girl speak her mind, Severus!" ("open", "closed", "shocked", "mid") + ton "Or shall I remind you that you were the one who barged in here uninvited..." ("open", "narrow", "base", "L") + sna "*Hmph*..." ("snape_35") + sna "Can't let her spew such lies in the headmaster's presence, can I?" ("snape_03") + gen "The hell is that supposed to mean?" ("base", xpos="far_left", ypos="head") + sna "I merely gave those boys some encouragement." ("snape_04") + sna "There was no need to involve something as valuable as a luck potion..." ("snape_09") + cho "What?!" ("angry", "happyCl", "angry", "mid", cheeks="blush") + + # Cho stops hiding behind Tonks. + call play_music("stop") + $ cho_chibi.zorder = 3 # Reset to default. + call cho_chibi("stand", 314, 366, flip=True) + ton "" ("annoyed", "narrow", "raised", "downR") + cho "But the entire Slytherin team drank some! They were even bragging about it!" ("clench", "narrow", "angry", "L", xpos=275, ypos="base", flip=True, trans=hpunch) + + sna "I suppose if that's what they said then who am I to refute it..." ("snape_37") #smirk + sna "Now, if you'll excuse me..." ("snape_09") + sna "I'll leave you three to indulge further in your...{w=0.8} debaucheries..." ("snape_47") + cho "No! You stay where you are!" ("scream", "base", "angry", "L") + call hide_characters + hide screen bld1 + with d3 + pause .2 + + # Cho moves in front of Tonks. + hide screen cho_chibi + hide screen tonks_chibi + with d3 + $ cho_chibi.zorder = 2 # Behind Tonks, so her ponytail doesn't cover her head. + call ton_chibi("stand", 322, 360, flip=True) + call cho_chibi("stand", 360, 360, flip=True) + with d3 + pause .5 + + $ tonks.zorder = 15 # Reset to default. + $ cho.zorder = 16 # In front of Tonks. Default is 15. + call play_music("cho") + sna "" ("snape_13") + ton "" ("annoyed", "shocked", "raised", "stare", hair="horny", xpos=310, ypos="base", flip=True) + cho "First you're going to explain yourself!" ("clench", "base", "angry", "L", xpos=415, ypos="base", flip=True, trans=hpunch) + ton "" ("clench", "wide", "shocked", "L", hair="horny", cheeks="blush") + cho "You somehow tricked them! They played far better than usual." ("mad", "base", "angry", "L") + ton "" ("horny", "narrow", "worried", "down", hair="horny", cheeks="heavy_blush") + sna "*Hmm*... Very well, Miss Chang." ("snape_20") + + # Space Jam + sna "You truly believe I'd waste such a valuable potion on those blokes?" ("snape_18") + cho "" ("annoyed", "base", "angry", "L") + sna "It takes three months to brew and distil only a tiny vial of Felix Felicis... and it's quite the tedious endeavour to do so." ("snape_12") + sna "That prize money would barely cover half of the materials..." ("snape_03") + cho "Prize money? What prize money?!" ("open", "base", "angry", "mid") + gen "Don't interrupt your teacher." ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "angry", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + ton "" ("base", "narrow", "worried", "L", hair="horny", cheeks="heavy_blush") + cho "" ("annoyed", "narrow", "angry", "L") + sna "All I did was give them a vial of pumpkin juice..." ("snape_41") + sna "Then I told them I mixed in some liquid luck." ("snape_13") + cho "What stupid kind of tactic is that?" ("soft", "narrow", "angry", "mid") + sna "" ("snape_39") + ton "" ("base", "narrow", "base", "mid", hair="horny", cheeks="blush") + gen "Hold on a minute..." ("angry", xpos="far_left", ypos="head") + gen "Are you seriously telling me you gave them pumpkin juice... and pretended it was \"{b}Michael's secret stuff{/b}\"?" ("base", xpos="far_left", ypos="head") + sna "Michael's...{w=0.3} what?" ("snape_38") + gen "You ripped off {b}Space Jam{/b}!" ("angry", xpos="far_left", ypos="head") + sna "I'm sorry?" ("snape_25") # confused + gen "You ripped off the plot of Space Jam!" ("angry", xpos="far_left", ypos="head") + sna "I have no idea what you're talking about..." ("snape_44") + ton "Neither do I." ("annoyed", "base", "raised", "mid", hair="horny") + cho "Sir, is this about that basketball thing again?" ("disgust", "narrow", "angry", "mid") + #gen "Well you clearly didn't watch the outcome, did you?" ("base", xpos="far_left", ypos="head") + gen "Even Bugs Bunny couldn't help him win. Serves you right!" ("grin", xpos="far_left", ypos="head") + ton "Who's Bugs Bunny?" ("soft", "narrow", "raised", "mid", hair="horny") + gen "Oh boy, let me tell you--" ("grin", xpos="far_left", ypos="head") + sna "Anyway." ("snape_31") + cho "" ("annoyed", "narrow", "angry", "L") + sna "Miss Chang, I wish you the very best of luck on your next match." ("snape_45") + ton "" ("normal", "narrow", "base", "L", hair="horny") + sna "You lot look like you're going to need it..." ("snape_42") + cho "*Hmph*..." ("annoyed", "base", "angry", "L") + gen "(...)" ("base", xpos="far_left", ypos="head") + call play_music("stop") + call hide_characters + hide screen bld1 + with d3 + pause .1 + + # Snape walks to the door. + call sna_walk("door", "base") + pause .2 + + call sna_chibi("stand", "door", "base", flip=False) + with d3 + pause .5 + + sna "Until then, Albus... Miss Chang..." ("snape_20", xpos="base", ypos="head") + sna "{cps=7}Nymphadora...{/cps}" ("snape_41", xpos="base", ypos="head") + ton "Stop calling me--" ("clench", "closed", "angry", "mid", hair="angry", ypos="head", flip=True) + + # Snape leaves. + call sna_chibi("stand", "door", "base", flip=True) + with d3 + call sna_chibi("leave") + pause .5 + + call bld + gen "Fucking guy..." ("base", xpos="far_left", ypos="head") + gen "Who does he think he is?" ("base", xpos="far_left", ypos="head") + gen "Besmirching a classic such as Space Jam, like it was nothing..." ("base", xpos="far_left", ypos="head") + + # The girls face Genie. + hide screen cho_chibi + hide screen tonks_chibi + $ cho_chibi.zorder = 2 + call cho_chibi("stand", 330, 364, flip=False) + call ton_chibi("stand", 370, 360, flip=False) + with d3 + + cho "" ("annoyed", "narrow", "base", "mid", xpos=190, ypos="base", flip=False) + ton "Well, that was a bit uncalled for... even for him." ("open", "narrow", "annoyed", "R", xpos=350, ypos="base", flip=False, trans=d5) + + ton "When did I step on his toes?" ("upset", "base", "base", "mid") + gen "Maybe when you called him Snivellus--" ("base", xpos="far_left", ypos="head") + ton "I'm not even part of your silly bet..." ("upset", "base", "shocked", "downR") + cho "Bet?" ("angry", "narrow", "raised", "mid") + gen "Let's not concern ourselves with Snape. He's out of the picture anyway." ("base", xpos="far_left", ypos="head") + cho "What bet?" ("open", "narrow", "angry", "mid") + ton "So, shall we wrap things up, Professor?" ("base", "happyCl", "base", "mid") + gen "Yes please." ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "angry", "mid") + + if game.daytime: + ton "Let me escort you back to class, Miss Chang." ("soft", "base", "base", "L", hair="horny") + else: + ton "Let me escort you back to your common room. It's getting late." ("soft", "base", "base", "L", hair="horny") + + # Fade to black. + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + + # The girls get dressed and wait at the door. + $ cho.wear("all") + $ tonks.wear("all") + + # Reset zorder. + $ cho.zorder = 15 # reset to default. + $ tonks.zorder = 15 # reset to default. + $ cho_chibi.zorder = 3 # reset to default. + $ tonks_chibi.zorder = 3 # reset to default. + hide screen cho_cloth_pile + + call cho_chibi("stand", 690, "base", flip=False) + call ton_chibi("stand", "door", "base", flip=False) + + call play_sound("climb_desk") + pause 2 + + hide screen blkfade + with d5 + pause .5 + + ton "Thank you for your time, Professor." ("base", "base", "base", "mid", ypos="head", flip=False) + if game.daytime: + cho "Good day, Sir." ("base", "base", "base", "mid", ypos="head", flip=False) + else: + cho "Good night, Sir." ("base", "base", "base", "mid", ypos="head", flip=False) + gen "Until next time." ("grin", xpos="far_left", ypos="head") + call bld("hide") + pause .1 + + # They both leave. + call cho_chibi(flip=True) + pause .3 + call ton_chibi(flip=True) + with d3 + pause .2 + + call play_sound("door") + hide screen cho_chibi + hide screen tonks_chibi + with d3 + pause .5 + + + # Reset clothing. + $ cho.equip(cho_outfit_last) + $ tonks.equip(ton_outfit_last) + + $ tonks_busy = True + $ snape_busy = True + + # End event. + jump end_cho_strip_event + + +### Tier 3 - Event 3 ### + +# Cho and Tonks strip on your desk again. +# Tonks gives Cho a demonstration of her Metamorphmagi ability. + +label cc_pf_strip_T3_intro_E3: + gen "[cho_name], why don't we summon your teacher again?" ("base", xpos="far_left", ypos="head") + cho "So we can give you another show, [cho_genie_name]?" ("soft", "narrow", "angry", "mid") # annoyed + gen "Well, if you insist on it..." ("grin", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "angry", "mid", cheeks="blush") + gen "Surely you haven't forgotten the actual reason we summoned her..." ("base", xpos="far_left", ypos="head") + cho "Of course not..." ("open", "closed", "base", "mid") + cho "I wanted to ask her about what she did during the Slytherin match..." ("annoyed", "narrow", "base", "mid") + cho "But then Professor Snape busted in before I got a chance to." ("angry", "narrow", "angry", "R", cheeks="blush") + gen "Right... let's give it another go then, shall we?" ("base", xpos="far_left", ypos="head") + cho "But no Snape this time!" ("soft", "narrow", "angry", "mid", cheeks="blush") + cho "If you expect me to expose myself to Professor Snape again, then you're sadly mistaken!" ("clench", "base", "angry", "mid", cheeks="blush") + gen "No more Snivellus... got it..." ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "angry", "mid") + gen "Wait here at my desk while I summon your Teacher." ("base", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]." ("soft", "narrow", "worried", "R", cheeks="blush") + + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + pause 1 + + # (Cho's outfit doesn't change this time.) + #$ cho_outfit_last.save() # Store current outfit. + $ ton_outfit_last.save() # Store current outfit. + $ her_outfit_last.save() # Store current outfit. + #$ cho.equip(cho_outfit_default) + $ tonks.equip(ton_outfit_default) # Equip Tonks default clothing. + $ hermione.equip(her_outfit_default) #Equip Hermione default clothing. + $ cho.strip("robe") # removes school robe. + + call cho_chibi("stand", "desk", "base", flip=True) + + call play_music("stop") + hide screen blkfade + with d5 + pause .8 + + call nar(">You attempt to summon Tonks to your office.") + pause .2 + + call bld + gen "..." ("base", xpos="far_left", ypos="head") + cho "..." ("quiver", "narrow", "base", "L", ypos="head", flip=True) + + + # Fireplace turns on. + if not fire_in_fireplace: + pause .2 + $ fire_in_fireplace = True + $ fireplace_OBJ.foreground = "fireplace_fire" + with d5 + pause .8 + + gen "..................?" ("base", xpos="far_left", ypos="head") + call bld("hide") + pause .5 + + # Fire flashes green. # Tonks appears in the fireplace. + $ renpy.sound.play("sounds/fire_woosh.ogg") + $ fire_in_fireplace = True + show screen gfx_effect(690, 330, img="smoke", zoom=0.5) + pause .1 + $ fireplace_OBJ.foreground = "fireplace_greenfire" + call ton_chibi("stand", 642, 392, flip=False) # In fireplace + with d5 + + # Tonks walks next to Cho. + call ton_walk(540, "base") + pause .8 + + # Fireplace turns off. + stop bg_sounds #Stops playing the fire SFX. + $ fire_in_fireplace = False + $ fireplace_OBJ.foreground = None + with d5 + pause .2 + + call play_music("tonks") + cho "" ("base", "narrow", "worried", "L", cheeks="blush", xpos="left", ypos="base", flip=True) + ton "You called?" ("base", "narrow", "base", "mid", xpos="right", ypos="base") + + cho "Hello, Professor." ("soft", "narrow", "worried", "L", cheeks="blush") + gen "What{w=0.3} {b}the fuck{/b} just happened?" ("angry", xpos="far_left", ypos="head") + ton "Oh, my apologies... I forgot we don't usually use the school's floo powder network." ("grin", "base", "base", "mid") + gen "Network? Do I need to set a password on my fireplace now?" ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "base", "mid") + gen "Could anyone just poof in here as they please?" ("base", xpos="far_left", ypos="head") + ton "At the moment, yes." ("silly", "happyCl", "base", "mid") + gen "(So much for privacy in this place...)" ("base", xpos="far_left", ypos="head") + ton "You might want to renew the protective enchantments that were cast on it. It's quite the security flaw." ("upset", "base", "raised", "mid") + gen "I'll have the {b}IT{/b} guy sort it out... A simple firewall should do it..." ("base", xpos="far_left", ypos="head") + ton "Anyhow, I thought it'd be faster than walking those dreadful stairs." ("base", "base", "base", "mid") + ton "Even if it's a bit of a waste of powder..." ("upset", "base", "shocked", "down") + cho "They are by no means dreadful, Professor Tonks." ("open", "narrow", "base", "L") + ton "" ("base", "base", "raised", "L") + cho "Without a gym, there's only a limited number of ways to do any exercises here at school." ("open", "closed", "base", "mid") + + menu: # change + gen "(...)" ("base", xpos="far_left", ypos="head") + "\".............\"": # Genie lets them speak + cho "I take divination lessons solely as an opportunity to climb the north tower once a week." ("base", "happyCl", "base", "mid") + ton "Of course you do..." ("base", "base", "base", "L") + ton "(Those thick legs have to come from somewhere.)" ("grin", "narrow", "base", "mid", hair="horny") + ton "I had a hunch that something special was in store for me today." ("horny", "narrow", "raised", "mid", hair="horny") + + "\"You could exercise with me!\"": + gen "I can give you a workout of the likes you've never seen!" ("grin", xpos="far_left", ypos="head") + ton "" ("base", "narrow", "annoyed", "mid", hair="horny") + cho "*Hmm*?" ("soft", "base", "raised", "mid") + gen "I'll wear you out until your muscles are sorer than ever!" ("angry", xpos="far_left", ypos="head") + cho "Really!?" ("crooked_smile", "base", "base", "mid") # happy + ton "Now-now, Professor. Don't make promises you can't keep..." ("soft", "narrow", "base", "mid", hair="horny") + cho "Why haven't you shown me any of these workouts, sir?" ("open", "base", "angry", "mid") + gen "We'll get to it at some point I'm sure." ("base", xpos="far_left", ypos="head") + ton "I sure wouldn't mind seeing you try out his techniques as well." ("grin", "narrow", "base", "L", hair="horny") + gen "No objections here!" ("grin", xpos="far_left", ypos="head") + cho "Wicked!" ("grin", "happyCl", "base", "mid") + + ton "Come on, Miss Chang..." ("open", "narrow", "base", "L", hair="horny") + cho "" ("annoyed", "base", "base", "L") + ton "Let's give our headmaster a good show!" ("crooked_smile", "narrow", "base", "mid", hair="horny") + cho "Alright." ("open", "happyCl", "base", "mid") + ton "Now, after you..." ("horny", "narrow", "base", "L", hair="horny") + + # Cho and Tonks hop onto the desk. + call hide_characters + hide screen bld1 + with d3 + pause .2 + + call cho_chibi(flip=False) + with d3 + pause .1 + + show screen blkfade + with d5 + + + # Tonks chibi on desk next to Cho's. # Tonks is facing left + + call cho_chibi("stand", 314, 366, flip=True) + call ton_chibi("stand", 370, 360, flip=False) + + call play_sound("climb_desk") + pause 2 + + call play_music("cho") + hide screen blkfade + with d5 + pause .8 + + $ cho.zorder = 16 # in front of Tonks. 15 is default. + cho "" ("base", "narrow", "base", "L", cheeks="heavy_blush", xpos=280, ypos="base", flip=True) + ton "..." ("base", "narrow", "raised", "L", hair="horny", xpos=345, ypos="base") + ton "Are you watching closely, Professor?" ("open", "narrow", "base", "mid", hair="horny") + gen "You bet!" ("grin", xpos="far_left", ypos="head") + ton "I wouldn't want you to miss what's about to happen..." ("base", "narrow", "base", "mid", hair="horny") + + # Cho and Tonks undress. + $ temp_var = False + if cho.is_any_worn("robe", "top", "bottom"): + $ temp_var = True + ton "Let me help you with that, Miss Chang." ("soft", "narrow", "base", "L", hair="horny") + ton "" ("base", "narrow", "base", "L", hair="horny") + + # Remove Cho's robe. #TODO are they not already removed near the start of the event? + if cho.is_worn("robe"): + pause .2 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("robe") + with d3 + pause .5 + cho "" ("base", "narrow", "base", "R", cheeks="blush") + pause .8 + + # Remove Cho's top. + if cho.is_worn("top"): + pause .2 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("top") + with d3 + pause .5 + cho "" ("horny", "narrow", "raised", "R", cheeks="heavy_blush") + pause .8 + + call nar(">Tonks swiftly pulls the girl's top over her chiselled frame.") + + # Remove Cho's bottom. + if cho.is_worn("bottom"): + cho "..." ("horny", "narrow", "base", "mid", cheeks="heavy_blush") # embarrassed + pause .2 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bottom") + show screen cho_cloth_pile + with d3 + pause .5 + cho "" ("horny", "narrow", "raised", "R", cheeks="heavy_blush") + pause .8 + + call nar(">A quick tug by her teacher, and Cho's bottom clothing slips down her muscular things.") + + if temp_var == True: + cho "Please, Professor...{w=0.4} not so fast." ("clench", "happyCl", "base", "mid", cheeks="heavy_blush") # embarrassed? + gen "..." ("grin", xpos="far_left", ypos="head") + ton "*Hmm*... Okay then." ("base", "narrow", "raised", "mid", hair="horny") + ton "I'll go next, shall I?" ("grin", "narrow", "base", "mid", hair="horny") + else: # Cho was already in underwear or nude. + ton "Couldn't you have waited for me, Miss Chang?" ("soft", "narrow", "base", "L", hair="horny") + ton "I would have loved to help you undress..." ("base", "narrow", "base", "L", hair="horny") + gen "No, that's just the girl's regular dress code around my office." ("base", xpos="far_left", ypos="head") + cho "" ("clench", "narrow", "base", "downR", cheeks="heavy_blush") + ton "Is that so..." ("soft", "narrow", "raised", "mid", hair="horny") + ton "*Hmm*... I suppose I should follow suit, then?" ("base", "narrow", "base", "mid", hair="horny") + cho "..." ("horny", "narrow", "base", "R", cheeks="blush") # embarrassed + + gen "Go right ahead!" ("grin", xpos="far_left", ypos="head") + ton "I've been dying to get out of this stuffy coat." ("open", "base", "shocked", "down") + call play_music("tonks") + ton "" ("base", "base", "base", "down") + pause .2 + + # Tonks removes her coat. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("robe") + with d3 + pause .8 + + ton "There... much better, don't you think?" ("base", "narrow", "base", "mid") + cho "..." ("base", "narrow", "worried", "downR", cheeks="heavy_blush") #embarrassed + ton "Miss Chang, could you switch places with me, please." ("open", "base", "shocked", "L") + cho "*Ehm*... Y-Yes. Of course..." ("soft", "narrow", "worried", "L", cheeks="heavy_blush") + + # Tonks' sprite moves in front of Cho, both are facing Genie. + call hide_characters + hide screen bld1 + with d3 + pause .5 + + $ tonks_chibi.zorder = 2 # default is 3 + call cho_chibi("stand", 370, 360, flip=False) + call ton_chibi("stand", 320, 360, flip=False) + with d3 + pause .5 + + $ cho.zorder = 15 # reset to default. + $ tonks.zorder = 16 # in front of Cho # Default is 15. + cho "" ("horny", "narrow", "base", "mid", cheeks="heavy_blush", xpos=345, ypos="base", flip=False) + ton "..." ("crooked_smile", "narrow", "base", "mid", hair="horny", xpos=215, ypos="base", flip=False) + + ton "Miss Chang, would you be so kind and assist me with my shirt?" ("soft", "base", "shocked", "down", hair="horny") + cho "Yes, Professor..." ("smile", "narrow", "base", "down", cheeks="heavy_blush") + pause .2 + cho "" ("base", "narrow", "raised", "down", cheeks="heavy_blush", xpos=315, ypos="base", flip=False, trans=d5) # moves closer to Tonks. + pause .8 + cho "" ("horny", "narrow", "base", "down", cheeks="heavy_blush") + pause .2 + + # Remove Tonks top. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("top") + with d3 + pause .5 + + ton "" ("horny", "narrow", "base", "mid", hair="horny") + pause .8 + + call nar(">With some effort, Cho manages to remove her teacher's shirt.") + ton "Thank you, sweetie." ("soft", "narrow", "raised", "downR", hair="horny") + cho "" ("base", "narrow", "base", "mid", cheeks="heavy_blush") + ton "*Hmm*..." ("annoyed", "base", "raised", "down", hair="horny") + ton "I guess my tight trousers are next..." ("base", "narrow", "base", "mid", hair="horny") + cho "..." ("horny", "narrow", "base", "down", cheeks="heavy_blush") # blush + ton "I'll take it from here..." ("soft", "narrow", "shocked", "downR", hair="horny") + pause .2 + + # Tonks turns around facing Cho. + call ton_chibi(flip=True) + #$ tonks.zorder = 15 # Reset to default. + #$ cho.zorder = 16 # in front of Tonks # Default is 15. + #cho "" ("base", "narrow", "raised", "L", cheeks="heavy_blush", xpos=345, ypos="base", flip=False) + ton "Let me show you how it's done. {heart}" ("crooked_smile", "narrow", "base", "down", hair="horny", xpos=280, ypos="base", flip=True, trans=d5) + + cho "..." ("horny", "narrow", "worried", "down", cheeks="heavy_blush") # lip bite + ton "With trousers like these, you should start slowly... that's how the headmaster likes it. {heart}" ("horny", "narrow", "base", "mid", hair="horny", cheeks="heavy_blush") + + call nar(">Tonks carefully tugs at the thin fabric of her leggings, and slowly pulls them past her cheeks...", "start") + call nar(">As the fabric bundles up between her fingers, reaching lower and lower past her thighs, she pulls them off in one swift motion.", "end") + + # Remove Tonks bottom. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("bottom") + with hpunch + pause .5 + + ton "" ("horny", "narrow", "raised", "mid", hair="horny", cheeks="blush") + pause .8 + + gen "Not wearing any underwear, I see..." ("base", xpos="far_left", ypos="head") + ton "I avoid it when I can..." ("crooked_smile", "narrow", "base", "mid", hair="horny") + ton "Even while I'm in uniform. {heart}" ("grin", "wink", "raised", "mid", hair="horny") #wink + ton "" ("base", "narrow", "base", "mid", hair="horny") + gen "Anything you'd like to say, Miss Chang?" ("base", xpos="far_left", ypos="head") + gen "It's not every day you get to see such a gorgeous woman strip for you..." ("grin", xpos="far_left", ypos="head") + gen "(...)" ("base", xpos="far_left", ypos="head") + pause .5 + + # Slap Tonks' ass! + call slap_her + cho "" ("open", "wide", "base", "mid", cheeks="heavy_blush") + ton "!!!" ("clench", "shocked", "base", "stare", hair="scared", cheeks="heavy_blush") # shocked + call nar(">You give Tonks a hard slap on her ass.") + cho "" ("horny", "base", "base", "down", cheeks="heavy_blush") + ton "Ouch...{w=0.4} Professor!" ("crooked_smile", "narrow", "annoyed", "mid", hair="horny", cheeks="heavy_blush") + gen "Right, should've warned you, shouldn't I..." ("base", xpos="far_left", ypos="head") + + menu: + "-Slap it one more time!-": + call slap_her + ton "..." ("clench", "base", "shocked", "ahegao", hair="horny", cheeks="blush") #pout #blush + gen "Want another?" ("grin", xpos="far_left", ypos="head") + ton "Yes, please. {heart}" ("crooked_smile", "narrow", "base", "mid", hair="horny", cheeks="heavy_blush") + + menu: + "-Slap it again!-": + call slap_her + ton "*Mmm*... Spank me, Sir!" ("horny", "narrow", "angry", "mid", hair="horny", cheeks="heavy_blush") + + menu: + "-Again!-": + pass + call slap_her + ton "More...{w=0.3} Harder!" ("clench", "base", "angry", "mid", hair="angry", cheeks="heavy_blush") + cho "..." ("disgust", "happyCl", "worried", "mid", cheeks="heavy_blush") # blushing #lip bite #looking away + + menu: + "-Slap it hard!-": + pass + call slap_her + ton "" ("clench", "base", "shocked", "ahegao", hair="scared", cheeks="heavy_blush") + pause .5 + call slap_her + pause .3 + call slap_her + pause .3 + call slap_her + cho "" ("horny", "narrow", "worried", "mid", cheeks="heavy_blush") + ton "*Hngh*..." ("upset", "narrow", "base", "ahegao", hair="horny", cheeks="heavy_blush") + ton "Thank you, Professor. {heart}{heart}{heart}" ("crooked_smile", "narrow", "worried", "mid", hair="horny", cheeks="heavy_blush") + gen "You're welcome." ("grin", xpos="far_left", ypos="head") + cho "..." ("horny", "narrow", "base", "downR", cheeks="heavy_blush") + + "\"Cho, you do the honours!\"": + cho "What?! I can't--" ("open", "wide", "base", "mid", cheeks="heavy_blush") + pause .2 + + # Tonks turns around. + call ton_chibi(flip=False) + ton "" ("base", "base", "base", "mid", hair="horny", cheeks="blush", xpos=215, ypos="base", flip=False, trans=d5) + pause .5 + + ton "It's fine, Cho. Just give it a little slap." ("soft", "narrow", "base", "downR", hair="horny", cheeks="blush") + cho "..." ("angry", "base", "raised", "down", cheeks="heavy_blush") + call slap_her + ton "That's it! Try a little harder..." ("horny", "narrow", "base", "downR", hair="horny", cheeks="blush") + call slap_her + ton "One more time..." ("soft", "narrow", "shocked", "up", cheeks="blush") + call slap_her + ton "*Hngh*..." ("upset", "narrow", "shocked", "ahegao", hair="horny", cheeks="heavy_blush") + pause .2 + + # Tonks turns around. + call ton_chibi(flip=True) + ton "" ("base", "base", "base", "mid", xpos=280, ypos="base", flip=True, trans=d5) + pause .8 + + ton "Thank you, sweetie." ("crooked_smile", "narrow", "base", "L", cheeks="heavy_blush") + cho "..." ("quiver", "narrow", "worried", "down", cheeks="heavy_blush") + + "-Stop here...-": + pass + + gen "Tell me, Cho...{w=0.3} do you like your teacher's body?" ("base", xpos="far_left", ypos="head") + ton "" ("base", "narrow", "base", "mid", hair="horny", cheeks="heavy_blush") + cho "Of course I do." ("open", "narrow", "base", "down", cheeks="heavy_blush") + ton "" ("base", "narrow", "base", "down", hair="horny", cheeks="blush") + cho "She's very fit and athletic and pretty, just like me." ("crooked_smile", "happyCl", "base", "mid", cheeks="blush") + gen "That's not what I meant..." ("base", xpos="far_left", ypos="head") + gen "Does her body turn you on?" ("grin", xpos="far_left", ypos="head") + ton "" ("base", "narrow", "annoyed", "mid", hair="horny", cheeks="blush") # eager look at Cho. + cho "Sir!" ("clench", "wide", "base", "mid", cheeks="heavy_blush") + gen "It's a simple question..." ("base", xpos="far_left", ypos="head") + cho "Do I really need to answer?" ("clench", "happyCl", "worried", "mid", cheeks="heavy_blush") + ton "Please, Miss Chang..." ("open", "narrow", "base", "L", hair="horny", cheeks="blush") + ton "I'm quite curious about your thoughts as well. {heart}" ("base", "narrow", "base", "L", hair="horny", cheeks="blush") + ton "We'll keep it our little secret, I promise..." ("crooked_smile", "narrow", "annoyed", "down", hair="horny", cheeks="blush") + cho "*Hmm*..." ("mad", "narrow", "worried", "down", cheeks="heavy_blush") + cho "Fine...{w=0.3} I do think you're quite attractive, Professor." ("soft", "narrow", "worried", "downR", cheeks="heavy_blush") + #gen "Thanks." ("grin", xpos="far_left", ypos="head") + #cho "" ("annoyed", "narrow", "base", "mid") + #ton "Very funny, Professor Dumbledore... But I believe she was talking to me." ("open", "narrow", "raised", "mid", hair="horny") + ton "..." ("base", "narrow", "annoyed", "mid", hair="horny", cheeks="blush") # sharp look at Genie + cho "Especially for a teacher." ("clench", "narrow", "raised", "down", cheeks="heavy_blush") + ton "For a teacher?" ("horny", "narrow", "base", "L", hair="horny") + cho "I mean--" ("soft", "happyCl", "worried", "mid", cheeks="heavy_blush") #clench #worried + ton "*Ha-ha*... I'll have to add that to my resume." ("grin", "narrow", "base", "mid", hair="horny") + cho "" ("base", "narrow", "worried", "down", cheeks="heavy_blush") + + ton "Although, teachers shouldn't be employed for their looks, but for their competence, isn't that right?" ("open", "narrow", "annoyed", "mid", hair="horny", cheeks="blush") + gen "What?" ("base", xpos="far_left", ypos="head") + gen "Oh-- I mean yes...{w=0.3} of course..." ("angry", xpos="far_left", ypos="head") + call play_sound("giggle") + ton "*giggles*..." ("base", "happyCl", "base", "mid", hair="horny", cheeks="blush") + ton "Enough with the small talk -- let's get these clothes off!" ("soft", "base", "annoyed", "mid", hair="horny", cheeks="blush") + + call play_music("stop") + ton "" ("horny", "narrow", "base", "mid", hair="horny") + pause .1 + + # Tonks removes the rest of her clothes. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("all") + with hpunch + pause .2 + + cho "" ("clench", "narrow", "worried", "mid", cheeks="heavy_blush") + pause .5 + + call nar(">Within a blink of an eye, Tonks has removed all of her remaining clothing.") + # nar "One minute her clothes were there, and then they were gone! It was like magic!" + cho "..." ("clench", "narrow", "worried", "downR", cheeks="heavy_blush") + ton "Get in front of me, Miss Chang." ("open", "narrow", "base", "L", hair="horny") + + call play_music("cho") + if cho.is_worn("bra"): + ton "It's time you show your headmaster your cute little breasts as well." ("soft", "narrow", "base", "mid", hair="horny") + else: + ton "Let's show your headmaster these cute little breasts of yours." ("soft", "narrow", "base", "mid", hair="horny") + + cho "They aren't that little..." ("annoyed", "narrow", "worried", "down", cheeks="heavy_blush") # annoyed + ton "No, you're right, sweetie..." ("soft", "narrow", "base", "down", hair="horny") + ton "They're just about perfect." ("horny", "narrow", "raised", "down", hair="horny") + ton "Now stand here so the Headmaster can see your tits." ("crooked_smile", "narrow", "base", "mid", hair="horny", cheeks="blush") + cho "..." ("annoyed", "happyCl", "base", "mid", cheeks="heavy_blush") + pause .2 + + # Cho moves in front. + $ cho.zorder = 16 # in front of Tonks # Default is 15. + $ tonks.zorder = 15 # reset to default. + cho "" ("angry", "narrow", "base", "down", cheeks="heavy_blush", xpos=300, ypos="base", trans=d5) + pause .8 + + # Remove Cho's bra. + if cho.is_worn("bra"): + + ton "Let me help you with that, Miss Chang." ("base", "narrow", "raised", "down", hair="horny") + pause .2 + + # Remove Cho top. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bra") + with d3 + pause .5 + + cho "" ("base", "happyCl", "worried", "mid", cheeks="heavy_blush") + pause .8 + + call nar(">The lust filled teacher effortlessly removes the bra of her student.") + + cho "..." ("crooked_smile", "narrow", "worried", "mid", cheeks="heavy_blush") + ton "Fucking perfect {heart} aren't they, Professor?..." ("horny", "narrow", "base", "mid", hair="horny") + ton "Move next to me, Cho. I need you to stand -- right here {heart}{heart}{heart}" ("open", "base", "base", "downR", hair="horny") + cho "*Ehm*... yes, Professor." ("soft", "narrow", "worried", "L", cheeks="heavy_blush") + call hide_characters + hide screen bld1 + with d3 + pause .5 + + # Cho turns around, facing Tonks. + call cho_chibi("stand", 314, 366, flip=True) + call ton_chibi("stand", 370, 360, flip=False) + with d3 + pause .5 + + cho "" ("base", "narrow", "base", "mid", cheeks="heavy_blush", xpos=280, ypos="base", flip=True) + ton "..." ("grin", "narrow", "base", "L", hair="horny", xpos=345, ypos="base", flip=False, trans=d5) + + call play_sound("giggle") + ton "*giggles*..." ("grin", "narrow", "shocked", "mid", hair="horny") + ton "This is so much fun!" ("base", "narrow", "base", "up", hair="horny", cheeks="blush") + + if cho.is_worn("panties"): + cho "..." ("horny", "narrow", "worried", "L", cheeks="heavy_blush") + ton "Lets unveil this magnificent thing, next!" ("crooked_smile", "narrow", "base", "down", hair="horny") + + call nar(">Tonks eyes up Cho's panties and before you can blink, she undresses her completely.") + cho "Professor, not so fast--" ("horny", "narrow", "worried", "down", cheeks="heavy_blush") + pause .2 + + # Remove Cho Panties + Everything else. + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("all") + with vpunch + pause .5 + + cho "" ("horny", "narrow", "raised", "down", cheeks="heavy_blush") + pause .8 + + cho "Ah!" ("mad", "happyCl", "worried", "mid", cheeks="heavy_blush") # startled? + + else: + cho "Glad you're enjoying it, Professor..." ("horny", "narrow", "worried", "L", cheeks="heavy_blush") + + #Remove any remaining items (no sound since she might be naked) + $ cho.strip("all") + with d3 + pause .5 + + cho "" ("horny", "narrow", "base", "down", cheeks="blush") + gen "She's not the only one!" ("grin", xpos="far_left", ypos="head") + cho "" ("horny", "narrow", "base", "mid", cheeks="blush") + call ctc + + + ton "*Hmm*... I can't decide which teacher has the best view now..." ("horny", "narrow", "base", "mid", hair="horny", cheeks="blush") + gen "Looking pretty good from where I'm sitting..." ("grin", xpos="far_left", ypos="head") + cho "..." ("smile", "narrow", "worried", "mid", cheeks="heavy_blush") + call play_music("stop") + + + ## Transformation Section ## + gen "Now then, Miss Chang..." ("base", xpos="far_left", ypos="head") + gen "I think this would be the perfect time to ask Professor Tonks your question." ("grin", xpos="far_left", ypos="head") + cho "W-what...{w=0.4} Oh, yes!" ("soft", "base", "raised", "mid", cheeks="heavy_blush") + ton "*Hmm*?" ("base", "base", "raised", "L", hair="horny") + cho "Professor Dumbledore told me about how you helped me during the Slytherin game." ("open", "base", "base", "L", cheeks="blush") + ton "What? You told her I'm a Metamorphmagi?" ("clench", "wide", "worried", "mid", hair="horny") + cho "You are?!?" ("open", "wide", "raised", "L", cheeks="blush") + cho "That's so cool!" ("grin", "happyCl", "base", "mid", cheeks="heavy_blush") + ton "Did I just spoil the surprise myself?{w=0.5} Whoopsie!" ("mad", "narrow", "worried", "downR", hair="horny", cheeks="heavy_blush") + gen "Well... I didn't exactly tell her that much." ("base", xpos="far_left", ypos="head") + ton "Well, what's done is done..." ("upset", "narrow", "worried", "downR", hair="horny", cheeks="blush") + + call play_music("trance") + #ton "Can I have your word that you won't tell anyone, Cho?" ("base", "base", "base", "mid") + #cho "Yes, you have my word! I promise I won't tell anyone!" ("base", "base", "base", "mid") + #ton "*Hmm*... Well, seeing the circumstances I guess that's good--" ("base", "base", "base", "mid") + gen "Show the girl your \"meta thing\" already!" ("grin", xpos="far_left", ypos="head") + ton "My \"metamorphmagi\" ability." ("soft", "narrow", "base", "mid") + cho "So, is this what you showed us in class before, professor?" ("crooked_smile", "base", "base", "mid", cheeks="blush") + cho "You were changing your nose into that of a pig, and then a duck, and then--" ("silly", "happyCl", "base", "mid", cheeks="blush") + ton "Yes... Well, that's usually about as much as I show people." ("crooked_smile", "narrow", "raised", "L") + ton "Most aren't aware of what else I can do. It's far more beneficial to me if people are unaware..." ("grin", "narrow", "shocked", "mid") + ton "You see, I can do far more than just change my nose, or the colour of my hair..." ("soft", "narrow", "raised", "L") + cho "Wicked!... What else can you do?" ("grin", "base", "base", "L", cheeks="blush") + gen "How about a busty, stuck-up Gryffindor slut!" ("grin", xpos="far_left", ypos="head") + ton "Gladly." ("grin", "narrow", "base", "mid") + stop music + pause .8 + + # Transforms into Hermione + call play_sound("magic") + hide tonks_main + $ hermione.strip("all") + $ cho_chibi.zorder = 3 # Reset to default. + $ hermione_chibi.zorder = 2 # behind Cho. Default is 3. + call ton_chibi("hide") + call her_chibi("stand", 370, 360, flip=False) + her "" ("crooked_smile", "narrow", "base", "mid", xpos=345, ypos="base", flip=False, trans=morph) + pause .2 + + cho "" ("open", "wide", "raised", "L", cheeks="heavy_blush") + call ctc + + call play_music("trance") + cho "{b}Holy shit!{/b}" ("open", "wide", "raised", "L", cheeks="heavy_blush") + gen "Watch your language, girl..." ("base", xpos="far_left", ypos="head") + her "" ("soft", "narrow", "angry", "L") + ton "Yes. Watch your foul mouth, Chang!" + cho "I-I'm sorry..." ("clench", "happyCl", "worried", "mid", cheeks="heavy_blush") + gen "I'm just kidding... Swear as much as you want -- It's not going to bring up the age-ratings..." ("base", xpos="far_left", ypos="head") + her "" ("annoyed", "narrow", "base", "down") + ton "*Hmm*..." + her "" ("soft", "narrow", "annoyed", "down") + ton "I forgot Miss Granger is a bit heavier in the bosom area than I'm used to..." + her "" ("grin", "narrow", "angry", "L") + ton "What do you think, Miss Chang... Do they look that much larger than my own?" + cho "I..." ("clench", "narrow", "worried", "down", cheeks="heavy_blush") + cho "I'm sorry, this is so weird!" ("open", "happyCl", "worried", "mid", cheeks="heavy_blush") + her "" ("grin", "narrow", "base", "down") + ton "*Hmm*? I thought you'd like them..." + her "" ("crooked_smile", "narrow", "angry", "L") + ton "I've heard rumours that you're quite fond of these tits, Miss Chang." + cho "Sorry! It's not that... It's just... you look exactly like her!" ("disgust", "narrow", "worried", "down", cheeks="heavy_blush") + cho "You even sound like her!" ("soft", "narrow", "worried", "L", cheeks="heavy_blush") + + $ hermione.get_equipped("hair").set_color([[255, 87, 171, 255], [255, 210, 227, 255], [230, 141, 32, 255]]) + # Original: [[255, 105, 180, 255], [251, 205, 222, 255], [230, 141, 32, 255]] + # Brown: [[152, 89, 48, 255], [195, 137, 89, 255], [230, 141, 32, 255]] + her "" ("crooked_smile", "happyCl", "base", "mid", cheeks="blush") + call play_sound("giggle") + ton "*giggles*..." + + $ hermione.get_equipped("hair").set_color([[152, 89, 48, 255], [195, 137, 89, 255], [230, 141, 32, 255]]) + her "" ("base", "narrow", "base", "R") + ton "Naturally... That's the intended effect." + cho "If I didn't know any better, I'd think you were her!" ("horny", "narrow", "raised", "down", cheeks="heavy_blush") + her "" ("crooked_smile", "closed", "angry", "mid") + ton "*Mhmm*... Last time I looked like this in front of you, you couldn't tell either." + cho "What?! When was that?" ("soft", "base", "worried", "L", cheeks="heavy_blush") + gen "Right after the last game, if I remember correctly." ("base", xpos="far_left", ypos="head") + her "" ("base", "narrow", "base", "mid") + ton "Oh, that wasn't the only time, Professor." + gen "It wasn't?" ("base", xpos="far_left", ypos="head") + her "" ("grin", "narrow", "base", "mid") + ton "I sometimes stroll around the school grounds, disguised as one of the girls... wearing nothing but a school robe..." + + if hg_pr_flash.counter > 1: + her "" ("crooked_smile", "narrow", "base", "down") + ton "And If you ever had a boy say he got some tits flashed at him by Miss Granger... then it was most likely me." + cho "That's awesome!" ("grin", "base", "base", "L", cheeks="blush") + gen "Well, I did tell Hermione to do it herself before." ("base", xpos="far_left", ypos="head") + her "" ("open", "wide", "base", "stare", cheeks="blush") + ton "Seriously? I had no idea!" + cho "Me neither!" ("soft", "wide", "raised", "mid", cheeks="blush") + her "" ("base", "narrow", "base", "down") + ton "I guess that's one less thing to worry about while I do it..." + + cho "I hope you didn't do that kind of stuff while you looked like me, Professor!" ("open", "narrow", "angry", "L", cheeks="blush") + her "" ("annoyed", "base", "base", "R") + ton "*Ehm*..." + cho "If I find out you've shown some boys my breasts, then--" ("open", "closed", "angry", "mid", cheeks="blush") + her "" ("smile", "happyCl", "worried", "mid", cheeks="blush") + ton "Of course not, sweetie." + cho "..." ("annoyed", "narrow", "angry", "L", cheeks="blush") + her "" ("grin", "base", "base", "R", cheeks="blush") # small text + ton "It was your ass that I showed them..." + cho "W-What?!" ("clench", "wide", "angry", "L", cheeks="heavy_blush") + gen "*He-he-he-he*!" ("grin", xpos="far_left", ypos="head") + cho "" ("clench", "base", "angry", "L", cheeks="heavy_blush") + her "" ("soft", "closed", "base", "mid") + ton "It's not like you haven't done that yourself already..." + her "" ("base", "narrow", "base", "L") + ton "In front of the entire school, no less..." + cho "..." ("annoyed", "narrow", "angry", "L", cheeks="heavy_blush") # blush + her "" ("open", "closed", "base", "mid") + ton "Well, that's enough fun for today." + + # Tonks transforms back. + call play_sound("magic") + hide hermione_main + call her_chibi("hide") + $ cho_chibi.zorder = 3 # Reset to default. + $ tonks_chibi.zorder = 2 # behind Cho. Default is 3. + call ton_chibi("stand", 370, 360, flip=False) + ton "" ("base", "narrow", "base", "mid", xpos=345, ypos="base", hair="neutral", flip=False, trans=morph) # Hermione brown + pause .2 + + cho "" ("clench", "base", "raised", "down", cheeks="heavy_blush") + call ctc + + ton "Let's do this again some other time, shall we." ("horny", "narrow", "raised", "mid", hair="horny") + gen "Gladly." ("grin", xpos="far_left", ypos="head") + ton "And, Miss Chang... if you ever want to have some quiet time with Miss Granger... my office door is always open." ("grin", "narrow", "base", "L", hair="horny", cheeks="heavy_blush") + cho "I-- *Ehm*..." ("soft", "narrow", "worried", "downR", cheeks="heavy_blush") # super embarrassed + gen "Maybe you could wait with that until Quidditch is over." ("base", xpos="far_left", ypos="head") + gen "She has to stay focused, you know..." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "worried", "down", cheeks="heavy_blush") + ton "*Sigh*... Alright..." ("open", "closed", "shocked", "mid", hair="horny") + + # Fade to black. + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + + # The girls get dressed and wait at the door. + $ cho.wear("all") + $ tonks.wear("all") + $ hermione.wear("all") + + # Reset zorder. + $ cho.zorder = 15 # reset to default. + $ tonks.zorder = 15 # reset to default. + $ hermione.zorder = 15 # reset to default. + $ cho_chibi.zorder = 3 # reset to default. + $ tonks_chibi.zorder = 3 # reset to default. + $ hermione_chibi.zorder = 3 # reset to default. + hide screen cho_cloth_pile + + call cho_chibi("stand", 690, "base", flip=False) + call ton_chibi("stand", "door", "base", flip=False) + + call play_sound("climb_desk") + pause 2 + + call play_music("stop") + hide screen blkfade + with d5 + pause .5 + + call bld + gen "And Tonks, next time we do this, wear the clothes I usually ask you to wear around my office." ("grin", xpos="far_left", ypos="head") + ton "With pleasure." ("base", "narrow", "base", "mid", hair="horny", ypos="head", flip=False) + + if game.daytime: + ton "I'll escort you back to classes, Miss Chang." ("open", "narrow", "base", "L", hair="horny") + ton "Have a good day, Professor." ("base", "narrow", "base", "mid", hair="horny") + else: + ton "I'll escort you back to your dormitories, Miss Chang." ("open", "narrow", "base", "L", hair="horny") + ton "Have a good night, Professor." ("base", "narrow", "base", "mid", hair="horny") + + gen "Until next time." ("grin", xpos="far_left", ypos="head") + cho "..." ("upset", "happyCl", "worried", "mid", cheeks="heavy_blush", ypos="head", flip=False) + call bld("hide") + pause .1 + + # They both leave. + call cho_chibi(flip=True) + pause .3 + call ton_chibi(flip=True) + with d3 + pause .2 + + call play_sound("door") + hide screen cho_chibi + hide screen tonks_chibi + with d3 + pause .5 + + + # Reset clothing. + #$ cho.equip(cho_outfit_last) + $ tonks.equip(ton_outfit_last) + $ hermione.equip(her_outfit_last) + + $ tonks_busy = True + + # End event. + jump end_cho_strip_event + + +label cc_pf_strip_T3_repeat: + gen "I'm in the mood for another strip-show, [cho_name]." ("base", xpos="far_left", ypos="head") + cho "Of course you are, [cho_genie_name]." ("base", "narrow", "raised", "mid") + cho "Who's going to watch me this time?" ("soft", "narrow", "base", "mid") + gen "*Hmm*... how about--" ("base", xpos="far_left", ypos="head") + + menu: + #"\"Miss Granger\"": + # jump cc_pf_strip_T3_hermione + + "\"Miss Tonks\"": + cho "Alright then..." ("grin", "narrow", "base", "mid") + jump cc_pf_strip_T3_tonks + + + ## Chibi Pos - for multiple people ## + + #call ton_chibi("stand", flip=False, 380, 360) + #call cho_chibi("stand", flip=True, 322, 360) + + #call cho_chibi("stand", flip=True, 320, 370) + + #call cho_chibi("stand", 314, 366, flip=True) + #call cho_chibi("stand", 370, 360, flip=False) diff --git a/game/scripts/characters/cho/events/favors/inspect_her_body_tonks.rpy b/game/scripts/characters/cho/events/favors/inspect_her_body_tonks.rpy new file mode 100644 index 00000000..831d345c --- /dev/null +++ b/game/scripts/characters/cho/events/favors/inspect_her_body_tonks.rpy @@ -0,0 +1,1554 @@ + +############## +### Tier 3 ### +############## + +## Tier 3 - Summon Tonks ## + +label cc_pf_strip_T3_tonks: + + # Setup + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + pause 1 + + $ tonks_cho_name = renpy.random.choice( ("Sweetie", "babe", "Honey") ) + # All character's clothes get saved in case we need to change any. + # Cho and Tonks won't change their clothes. + + $ cho_outfit_last.save() # Store current outfit. + $ ton_outfit_last.save() # Store current outfit. + $ her_outfit_last.save() # Store current outfit. + + #$ cho.equip(cho_outfit_default) + #$ tonks.equip(ton_outfit_default) + $ hermione.equip(her_outfit_default) + + call cho_chibi("stand", "desk", "base", flip=False) + + hide screen blkfade + cho "" ("base", "base", "base", "mid", xpos="mid", ypos="base", flip=False, trans=fade) + + # Intro + if doppler_done == False and succubus_done == False: # First time only. + gen "About your teacher, Professor Tonks..." ("base", xpos="far_left", ypos="head") + gen "That ability she has, it's quite... interesting, don't you think?" ("base", xpos="far_left", ypos="head") + cho "It is! And exceptionally rare as well!" ("grin", "happyCl", "base", "mid") + cho "I only ever heard about this type of transfiguration ability once -- during one of Professor McGonagall's lessons..." ("open", "base", "raised", "mid") + cho "She seemed kind of annoyed by the fact that there are people with natural abilities to change their appearance like that." ("annoyed", "base", "base", "R") + gen "Well, not everyone can be as naturally handsome as me." ("grin", xpos="far_left", ypos="head") + cho "That... Is not what I meant." ("open", "closed", "angry", "mid") + gen "I wonder if she's the only person here who has this \"Metamorphic\" ability..." ("base", xpos="far_left", ypos="head") + cho "I hope so..." ("annoyed", "base", "base", "mid") + gen "You do?" ("base", xpos="far_left", ypos="head") + cho "You've seen the kind of thing she uses her ability for, haven't you?" ("open", "narrow", "base", "mid") + cho "Surely when you decided to tell me her secret -- you considered what could happen if I told the other students about it?" ("open", "closed", "base", "mid") + gen "I...{w=0.2} Of course!" ("angry", xpos="far_left", ypos="head") + cho "Don't worry, I won't tell anyone..." ("open", "narrow", "base", "mid") + cho "Though I'd suggest to keep it a secret from Granger at all cost!" ("mad", "narrow", "angry", "mid") + cho "I'm confident she'd come up with some annoying rule to try and keep her teacher in check..." ("annoyed", "narrow", "angry", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + cho "Well, I'm glad to know that you trust me with something like this, [cho_genie_name]." ("smile", "happyCl", "base", "mid") + cho "It'd be quite difficult for her to pretend to be someone else, if everybody knew about it." ("annoyed", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + cho "I sure am glad there isn't another student with her abilities..." ("annoyed", "narrow", "base", "R") + gen "*Ha-ha*, yeah..." ("grin", xpos="far_left", ypos="head") + gen "Another student -- preferably female -- with her abilities...{w=0.5} That would be horrible..." ("base", xpos="far_left", ypos="head") + gen "(Not...)" ("grin", xpos="far_left", ypos="head") + cho "Yes... If they somehow found out about Tonks, she'd surely receive all the blame." ("angry", "narrow", "raised", "mid") + gen "..." ("angry", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "base", "mid") + gen "Let's just call her up here for now..." ("base", xpos="far_left", ypos="head") + gen "I'm sure she'll make it well worth it for you to continue keeping her secret safe." ("grin", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]..." ("smile", "narrow", "base", "mid", cheeks="blush") #glancing away #blush + + # Repeat + else: + gen "Let me summon her real quick." ("base", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]." ("base", "base", "base", "mid") + + call play_music("stop") + call hide_characters + hide screen bld1 + with d3 + pause .2 + + # You summon Tonks. + call cho_chibi("stand", "desk", "base", flip=True) + with d3 + pause .8 + + # Tonks enters. + call play_sound("door") + call ton_chibi("stand", "door", "base") + with d3 + pause .5 + + # Tonks walks next to Cho. + call ton_walk(540, "base") + + call play_music("tonks") + cho "" ("base", "narrow", "worried", "L", cheeks="blush", xpos="left", ypos="base", flip=True) + ton "Hello, Professor." ("soft", "narrow", "base", "mid", xpos="right", ypos="base", flip=False) + ton "Miss Chang." ("base", "narrow", "raised", "L") + + # Intro + if doppler_done == False and succubus_done == False: # First time only. + gen "Didn't fancy taking the fireplace this time?" ("base", xpos="far_left", ypos="head") + ton "Not today... I only use floo powder when I'm in a hurry." ("open", "base", "base", "mid") + + + ## Tonks and Cho strip for you ## + ton "So...{w=0.3} What do you have planned for us today, Professor?" ("base", "narrow", "base", "mid") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Why don't you tell her what we're doing, Miss Chang?" ("grin", xpos="far_left", ypos="head") + cho "You want me to--" ("open", "narrow", "base", "mid") + gen "Don't see why not..." ("grin", xpos="far_left", ypos="head") + cho "Of course, Sir." ("soft", "narrow", "base", "downR") + + if doppler_done == False and succubus_done == False: # First time only. + cho "..." ("annoyed", "narrow", "worried", "down", cheeks="blush") # Embarrassed look down. + cho "The headmaster wanted to see us strip for him again..." ("open", "narrow", "worried", "L", cheeks="blush") + if cho.is_worn("robe") or ( cho.is_worn("top") and cho.is_worn("bottom") ): + pass + else: # Cho is in her underwear or naked. + gen "Well... A bit of a show should do, seeing what your current state of undress is like..." ("base", xpos="far_left", ypos="head") + cho "You're the one that requested it..." ("annoyed", "narrow", "angry", "down", cheeks="heavy_blush") # small text + + if tonks.is_worn("robe") or ( tonks.is_worn("top") and tonks.is_worn("bottom") ): + pass + else: #Tonks in in her underwear or naked. + ton "*Hmm*...{w=0.3} Who needs clothing anyway?" ("horny", "narrow", "base", "L", hair="horny") + ton "But I'll give you a show if that's what you want...{heart}" ("horny", "narrow", "base", "mid", hair="horny") + gen "..." ("grin", xpos="far_left", ypos="head") + + else: # repeat + cho "The headmaster wants us to strip for him again." ("base", "narrow", "base", "mid", cheeks="blush") + ton "Does he now?" ("horny", "narrow", "base", "L", hair="horny") + if cho.is_worn("robe") or ( cho.is_worn("top") and cho.is_worn("bottom") ): + pass + else: + gen "Well, since you're not wearing much... I'd at least like a show..." ("base", xpos="far_left", ypos="head") + cho "Very well..." ("annoyed", "narrow", "angry", "down", cheeks="heavy_blush") # small text + + if tonks.is_worn("robe") or ( tonks.is_worn("top") and tonks.is_worn("bottom") ): + pass + else: #Tonks in in her underwear or naked. + ton "Stripping's out of the question for me that's for sure..." ("horny", "narrow", "base", "L", hair="horny") + ton "But I'll give you a good view at the very least...{heart}" ("horny", "narrow", "base", "mid", hair="horny") + + ton "Well in that case we shouldn't keep him waiting, should we?" ("horny", "narrow", "base", "L", hair="horny") + ton "After you, [tonks_cho_name]." ("horny", "narrow", "base", "L", hair="horny") + call play_music("stop") + + # Cho and Tonks hop onto the desk. + call hide_characters + hide screen bld1 + with d3 + pause .2 + + call cho_chibi(flip=False) + with d3 + pause .1 + + show screen blkfade + with d5 + + + # Tonks chibi on desk next to Cho's. # Tonks is facing left + call cho_chibi("stand", 314, 366, flip=True) + call ton_chibi("stand", 370, 360, flip=False) + + call play_sound("climb_desk") + pause 2 + + hide screen blkfade + with d5 + pause .8 + + call play_music("cho") + $ cho.zorder = 16 # in front of Tonks # Default is 15. + $ tonks.zorder = 15 # reset to default. + cho "" ("base", "narrow", "base", "L", cheeks="heavy_blush", xpos=280, ypos="base", flip=True) + ton "..." ("base", "narrow", "raised", "L", hair="horny", xpos=345, ypos="base") + + ton "This feels quite familiar, doesn't it, Miss Chang?" ("crooked_smile", "narrow", "raised", "L", hair="horny") + cho "..." ("horny", "narrow", "base", "mid", cheeks="blush") + ton "Let's not waste any more time..." ("horny", "narrow", "base", "L", hair="horny") + + ton "Who of us would you like to start, Professor?" ("base", "narrow", "base", "mid", hair="horny") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + menu: + "\"Miss Chang will go first.\"": + cho "..." ("horny", "narrow", "base", "down", cheeks="blush") + $ cho_position = 1 # Cho's current positon is in the middle. + + jump cc_pf_strip_T3_tonks.strip_cho + + "\"You go first, Miss Tonks!\"": + ton "*Hmm*..." ("base", "narrow", "base", "L", hair="horny") + ton "Saving the best for last, are we?" ("base", "narrow", "raised", "mid", hair="horny") + cho "..." ("horny", "narrow", "base", "downR", cheeks="blush") + $ cho_position = 1 # Cho's current position is in the middle. + + jump cc_pf_strip_T3_tonks.strip_tonks + + #"\"How about Miss Granger?\"" if doppler_done == True and succubus_done == True: + #jump cc_pf_strip_T3_tonks.strip_hermione + + + +## Cho Strips ## +label .strip_cho: + + # Check their positions. If Cho stands to the right she'll get moved to the middle. + if cho_position == 2: # to the right. + ton "Move between us, Cho." ("soft", "narrow", "shocked", "L", hair="horny") + ton "That way the headmaster can see you better." ("base", "narrow", "base", "mid", hair="horny") + cho "Yes, Professor." ("smile", "narrow", "base", "L", cheeks="blush") + call hide_characters + hide screen bld1 + with d5 + pause .2 + + # Cho stands in the middle, between Genie and Tonks. + $ cho_position = 1 # middle. + $ cho.zorder = 16 # in front of Tonks # Default is 15. + $ tonks.zorder = 15 # reset to default. + call cho_chibi("stand", 314, 366, flip=True) + call ton_chibi("stand", 370, 360, flip=False) + cho "" ("base", "narrow", "base", "mid", cheeks="blush", xpos=280, ypos="base", flip=True) + ton "" ("base", "narrow", "base", "mid", hair="horny", xpos=345, ypos="base", flip=False) + with d5 + call ctc + + + # Cho is wearing at least one clothing piece: + if cho.is_any_worn("robe", "top", "bottom", "bra", "panties"): + pass + else: # Cho is already naked. + ton "Well, since you're not really wearing much already..." ("soft", "narrow", "base", "L", hair="horny") + ton "There isn't that much more for me to help her take off, is there?" ("soft", "narrow", "base", "L", hair="horny") + cho "..." ("base", "narrow", "base", "downR", cheeks="heavy_blush") + pause .2 + $ cho.strip("all") + with d3 + + call cc_pf_strip_T3_tonks.spank_cho + + jump cc_pf_strip_T3_tonks.strip_check # label checks if both are nude. + + # Remove Top and Bottom. + if cho.is_any_worn("robe", "top", "bottom"): + ton "Let me help you get out of these clothes, Miss Chang." ("soft", "narrow", "base", "L", hair="horny") + cho "Yes, Professor." ("base", "narrow", "base", "down", cheeks="heavy_blush") + ton "" ("base", "narrow", "base", "down", hair="horny", xpos=300, ypos="base", flip=False, trans=d5) # moves closer to Cho. + pause .2 + + if cho.is_worn("robe"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("robe") + with d3 + pause .5 + cho "" ("horny", "narrow", "raised", "down", cheeks="blush") + call ctc + if cho.is_worn("top"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("top") + with d3 + pause .5 + cho "" ("horny", "narrow", "raised", "mid", cheeks="blush") + pause .8 + call nar(">Tonks swiftly pulls the girl's top over her chiselled frame.") + pause .2 + if cho.is_worn("bottom"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bottom") + with d3 + pause .5 + cho "" ("horny", "narrow", "base", "down", cheeks="blush") + pause .8 + call nar(">A quick tug by her teacher, and Cho's bottoms slips down her muscular thighs.") + call ctc + + # Remove Bra and Panties. + if cho.is_any_worn("bra", "panties"): + ton "I like your underwear Miss Chang... Very cute!" ("soft", "narrow", "base", "L", hair="horny") + cho "" ("horny", "narrow", "base", "downR", cheeks="heavy_blush") + ton "" ("soft", "narrow", "base", "L", hair="horny", xpos=300, ypos="base", flip=False, trans=d5) # moves closer to Cho. + + if cho.is_worn("bra"): + ton "But...{w=0.3} That bra definitely has to come off." ("soft", "narrow", "angry", "down", hair="horny") + pause .5 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("bra") + with d3 + pause .5 + cho "" ("base", "narrow", "raised", "L", cheeks="blush") + pause .8 + call nar(">Tonks effortlessly removes the bra of her student.") + pause .2 + if cho.is_worn("panties"): + cho "..." ("mad", "narrow", "base", "down", cheeks="blush") + ton "Wearing panties is so silly, let's take those off... {heart}" ("crooked_smile", "narrow", "angry", "down", hair="horny") + pause .5 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ cho.strip("panties") + with d3 + pause .5 + cho "" ("horny", "narrow", "base", "down", cheeks="heavy_blush") + pause .8 + call nar(">Eyes fixated onto Cho's lovely Snitch, Tonks slowly pulls the girl's panties down her thighs.") + pause .2 + + + # Remove all Cho clothes. + $ cho.strip("all") + with d3 + cho "" ("base", "narrow", "base", "mid", cheeks="heavy_blush") + call ctc + + ton "" ("base", "narrow", "base", "mid", hair="horny", xpos=345, ypos="base", flip=False) # Tonks moves to her original position. + with d5 + + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + ton "Look at all these muscles!" ("horny", "narrow", "raised", "down", hair="horny") + ton "I mean... I could easily get some muscles as well, but not without cheating..." ("open", "closed", "base", "mid", hair="horny") + ton "I'm quite impressed, Miss Chang." ("base", "narrow", "base", "L", hair="horny") + cho "Thank you." ("soft", "narrow", "base", "L", cheeks="blush") + elif random_number == 2: + ton "You look quite tasty, Miss Chang." ("horny", "narrow", "raised", "down", hair="horny") + cho "*Ehm*..." ("clench", "narrow", "worried", "down", cheeks="heavy_blush") + cho "Thanks?" ("soft", "narrow", "worried", "L", cheeks="heavy_blush") + else: + ton "Looks like we're done here, Professor." ("horny", "narrow", "raised", "mid", hair="horny") + gen "Excellent!" ("base", xpos="far_left", ypos="head") + gen "I do love watching you two." ("grin", xpos="far_left", ypos="head") + + call cc_pf_strip_T3_tonks.spank_cho + + jump cc_pf_strip_T3_tonks.strip_check + + +## Spank Cho ## +label .spank_cho: + # Cho should stand next to Genie for this. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "-Spank her!-": + pass + "-Don't spank her...-": + return + + call slap_her + ton "" ("crooked_smile", "narrow", "raised", "L", hair="horny") + cho "!!!" ("clench", "wide", "base", "mid", cheeks="heavy_blush") # shocked + cho "Ouch... Professor!" ("silly", "happyCl", "worried", "mid", cheeks="heavy_blush") + call play_sound("giggle") + ton "*Giggles*... {heart}{heart}{heart}" ("silly", "happyCl", "base", "mid", hair="horny", cheeks="blush") + ton "..." ("base", "narrow", "base", "mid", hair="horny") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "-Spank her again!-": + call slap_her + ton "" ("crooked_smile", "narrow", "base", "mid", hair="horny") + cho "Professor!" ("clench", "wide", "raised", "mid", cheeks="heavy_blush") + gen "What? I know you like it." ("grin", xpos="far_left", ypos="head") + cho "I do not..." ("annoyed", "narrow", "angry", "mid", cheeks="heavy_blush") + + menu: + "-Again!-": + pass + call slap_her + cho "Sir!" ("clench", "wide", "base", "mid", cheeks="heavy_blush") + gen "I need to get these cushions ready for your next flight!" ("grin", xpos="far_left", ypos="head") + gen "Spank them tender so you're more comfortable on your broom-stick!" ("grin", xpos="far_left", ypos="head") + cho "I don't think that will be necessary." ("open", "happyCl", "angry", "mid", cheeks="blush") + + menu: + "-Slap it hard!-": + pass + call slap_her + cho "" ("clench", "wide", "raised", "mid", cheeks="heavy_blush") + ton "" ("grin", "narrow", "base", "mid", hair="horny", cheeks="blush") + pause .5 + call slap_her + pause .3 + call slap_her + pause .3 + call slap_her + cho "*Owww*..." ("clench", "happyCl", "worried", "mid", cheeks="heavy_blush") + cho "That's enough..." ("annoyed", "narrow", "angry", "mid", cheeks="blush") + gen "You'd probably enjoy it more if your teacher were to spank you, wouldn't you?" ("grin", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "base", "L", cheeks="blush") + ton "" ("base", "narrow", "base", "L", hair="horny") + cho "*Ehm*..." ("annoyed", "narrow", "raised", "mid", cheeks="heavy_blush") + call play_sound("giggle") + ton "*Giggles*... {heart}{heart}{heart}" ("base", "happyCl", "base", "mid", hair="horny", cheeks="heavy_blush") + ton "I won't be gentle on you either, Miss Chang." ("soft", "narrow", "base", "L", hair="horny") + cho "..." ("horny", "narrow", "worried", "down", cheeks="heavy_blush") + + return + + "-Ask Tonks to spank her.-": + gen "Miss Tonks, If you may..." ("grin", xpos="far_left", ypos="head") + ton "With pleasure!" ("grin", "narrow", "angry", "mid", hair="horny") + cho "But-- Professor Tonks!" ("clench", "base", "worried", "L", cheeks="heavy_blush") + ton "Don't worry, [tonks_cho_name]. You'll learn to love it! {heart}" ("horny", "narrow", "base", "L", hair="horny") + cho "" ("horny", "narrow", "worried", "mid", cheeks="heavy_blush") + ton "Now, turn around for me, please." ("soft", "narrow", "base", "L", hair="horny") + cho "..." ("clench", "narrow", "worried", "down", cheeks="heavy_blush") + pause .2 + + # Cho turns around. + call cho_chibi("stand", 325, 366, flip=False) + call ton_chibi("stand", 360, 360, flip=False) + ton "" ("base", "narrow", "base", "down", hair="horny", xpos=325, ypos="base", flip=False) + cho "" ("disgust", "narrow", "worried", "down", cheeks="blush", xpos=235, ypos="base", flip=False, trans=d5) + pause .5 + + call slap_her + cho "" ("normal", "happyCl", "worried", "mid", cheeks="blush") + ton "Such a firm ass you have, Miss Chang!" ("horny", "narrow", "raised", "down", hair="horny") + cho "" ("mad", "narrow", "worried", "downR", cheeks="blush") + call ctc + + gen "..." ("base", xpos="far_left", ypos="head") + ton "Lovely indeed... {heart}" ("grin", "narrow", "base", "down", hair="horny") + gen ".........." ("base", xpos="far_left", ypos="head") + gen "I don't hear any spanking." ("base", xpos="far_left", ypos="head") + ton "Don't worry, Sir. I'll get to that eventually... {heart}" ("open", "narrow", "annoyed", "mid", hair="horny") + gen "Building up the suspense are--" ("base", xpos="far_left", ypos="head") + call slap_her + cho "" ("horny", "narrow", "worried", "downR", cheeks="heavy_blush") + ton "You should get a good feel of it first, before you--" ("crooked_smile", "narrow", "annoyed", "down", hair="horny") + call slap_her + cho "" ("mad", "wide", "base", "mid", cheeks="heavy_blush") + ton "" ("horny", "narrow", "angry", "down", hair="angry") + pause .6 + call slap_her + pause .3 + call slap_her + pause .4 + ton "" ("horny", "narrow", "angry", "down", hair="horny") + cho "Please!" ("clench", "happyCl", "base", "mid", cheeks="heavy_blush") + ton "What's wrong, Miss Chang?" ("open", "narrow", "angry", "mid", hair="horny") + ton "You never get this flustered when you get hit by a bludger..." ("open", "narrow", "angry", "down", hair="horny") + call slap_her + ton "Surely a bit of a spanking isn't enough for you to..." ("horny", "narrow", "base", "mid", hair="horny") + cho "..." ("clench", "narrow", "worried", "down", cheeks="blush") + ton "Ask me nicely and I'll do it again, [tonks_cho_name]." ("crooked_smile", "narrow", "base", "mid", hair="horny") + gen "Go on, Cho... Ask your teacher to spank you." ("grin", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "worried", "downR", cheeks="heavy_blush") + cho "Please spank me again, Professor." ("soft", "narrow", "worried", "R", cheeks="heavy_blush") + ton "Of course sweetie...{w=0.4} Since you're asking so nicely." ("base", "narrow", "base", "L", hair="horny") + ton "" ("base", "narrow", "base", "down", hair="horny") + call slap_her + cho "" ("angry", "narrow", "worried", "up", cheeks="heavy_blush") + pause .5 + call slap_her + pause .4 + call slap_her + cho "" ("horny", "happyCl", "worried", "mid", cheeks="heavy_blush") + call ctc + + cho "..." ("horny", "narrow", "base", "R", cheeks="heavy_blush") + ton "*Hmm*..." ("annoyed", "narrow", "shocked", "down", hair="horny") + ton "A well behaved girl like you should be rewarded. {heart}" ("crooked_smile", "narrow", "raised", "L", hair="horny") + ton "Ten points for Ravenclaw, Miss Chang." ("soft", "narrow", "base", "L", hair="horny") + $ ravenclaw += 10 + cho "Thank you I guess--" ("crooked_smile", "narrow", "worried", "R", cheeks="heavy_blush") + ton "" ("horny", "narrow", "angry", "down", hair="horny") + call slap_her + cho "!!!" ("clench", "wide", "base", "mid", cheeks="heavy_blush") + cho "Ouch..." ("horny", "narrow", "worried", "R", cheeks="heavy_blush") + pause .2 + + # Cho turns around. + call cho_chibi("stand", 314, 366, flip=True) + call ton_chibi("stand", 370, 360, flip=False) + ton "" ("base", "narrow", "base", "mid", hair="horny", xpos=345, ypos="base", flip=False) + cho "" ("annoyed", "narrow", "base", "mid", cheeks="blush", xpos=280, ypos="base", flip=True, trans=d5) + pause .8 + + return + + return + + + +## Tonks Strips ## +label .strip_tonks: + + # Check their positions. If Tonks stands to the right she'll get moved to the middle. + if cho_position == 1: # middle. + ton "Cho, would you mind if I stood between you two?" ("open", "narrow", "base", "L", hair="horny") + ton "I'd like to give the headmaster a better view of my body." ("base", "narrow", "base", "mid", hair="horny") + cho "Not at all, Professor." ("smile", "narrow", "base", "L", cheeks="blush") + ton "Thank you, [tonks_cho_name]." ("soft", "narrow", "shocked", "L", hair="horny") + call hide_characters + hide screen bld1 + with d5 + pause .2 + + # Tonks stands in the middle, between Genie and Cho. + $ cho_position = 2 # to the right. + $ tonks_chibi.zorder = 2 # default is 3 + $ cho.zorder = 15 # reset to default. + $ tonks.zorder = 16 # in front of Cho # Default is 15. + call cho_chibi("stand", 370, 360, flip=False) + call ton_chibi("stand", 320, 360, flip=True) + with d3 + pause .5 + + cho "" ("base", "narrow", "base", "mid", cheeks="blush", xpos=315, ypos="base", flip=False) + ton "" ("base", "narrow", "base", "mid", hair="horny", xpos=280, ypos="base", flip=True) + with d5 + call ctc + + + # Tonks is wearing at least one clothing piece: + if tonks.is_worn("robe") or tonks.is_worn("top") or tonks.is_worn("bottom") or tonks.is_worn("bra") or tonks.is_worn("panties"): + cho "..." ("horny", "narrow", "base", "L", cheeks="blush") + if tonks.is_worn("top"): + ton "You don't mind if Miss Chang helps me undress, do you, Professor?" ("horny", "wink", "base", "mid", hair="horny") + gen "Of course not!" ("grin", xpos="far_left", ypos="head") + else: + ton "Just enjoy the show, Professor..." ("horny", "wink", "base", "mid", hair="horny") + pass + else: # Tonks is already naked. + ton "Professor... It seems like I'm not wearing much..." ("soft", "narrow", "base", "L", hair="horny") + ton "How shameful of me... Am I to get detention now?" ("horny", "narrow", "base", "mid", hair="horny") + gen "Damn right you are!" ("grin", xpos="far_left", ypos="head") + cho "..." ("base", "narrow", "base", "downR", cheeks="heavy_blush") + pause .2 + $ tonks.strip("all") + with d3 + + call cc_pf_strip_T3_tonks.spank_tonks + + jump cc_pf_strip_T3_tonks.strip_check # label checks if both are nude. + + # Remove Top and Bottom. + if tonks.is_worn("robe") or tonks.is_worn("top") or tonks.is_worn("bottom"): + ton "Help me get out of these clothes, Miss Chang." ("soft", "narrow", "base", "L", hair="horny") + cho "Yes, Professor." ("soft", "narrow", "base", "down", cheeks="blush") + cho "" ("horny", "narrow", "base", "down", cheeks="blush", xpos=315, ypos="base", flip=False, trans=d5) # Cho moves closer to Tonks. + pause .2 + + if tonks.is_worn("robe"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("robe") + with d3 + pause .5 + ton "" ("horny", "narrow", "raised", "down", hair="horny") + call ctc + if tonks.is_worn("top"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("top") + with d3 + pause .5 + ton "" ("horny", "narrow", "raised", "mid", hair="horny") + pause .8 + call nar(">Cho eagerly helps her teacher take off her top.") + pause .2 + if tonks.is_worn("bottom"): + ton "Remember... Always take your time when undressing in front of somebody." ("soft", "narrow", "base", "L", hair="horny") + ton "" ("base", "narrow", "base", "mid", hair="horny") + call nar(">Slowly, and with gracile movements, Tonks takes off her bottom piece of clothing.") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("bottom") + with hpunch + pause .5 + ton "" ("horny", "narrow", "raised", "mid", hair="horny", cheeks="blush") + pause .8 + call nar(">And then flicks it out of sigh with one swift motion.") + call ctc + + # Remove Bra and Panties. + if tonks.is_worn("bra") or tonks.is_worn("panties"): + ton "*Hmm*... It's been a while since I had to remove underwear." ("annoyed", "narrow", "base", "down", hair="horny") + ton "Help me take them off, [tonks_cho_name]." ("base", "narrow", "base", "down", hair="horny") + cho "Of course..." ("smile", "narrow", "base", "down", cheeks="blush") + cho "" ("horny", "narrow", "base", "down", cheeks="blush", xpos=315, ypos="base", flip=False, trans=d5) # Cho moves closer to Tonks. + + if tonks.is_worn("bra"): + ton "Let's get these tits out already!" ("base", "narrow", "angry", "mid", hair="horny") + pause .5 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("bra") + with d3 + pause .5 + ton "" ("base", "narrow", "base", "mid", hair="horny") + pause .8 + call nar(">Tonks bares her impressive bosom for you both.") + pause .2 + if tonks.is_worn("panties"): + ton "Oh my... what happened to my panties..." ("soft", "narrow", "base", "down", hair="horny") + ton "I can't believe how wet they got!" ("clench", "narrow", "shocked", "down", hair="horny") + pause .5 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ tonks.strip("panties") + with d3 + pause .5 + ton "" ("horny", "narrow", "angry", "mid", hair="horny") + pause .8 + call nar(">Without much hesitation, Tonks panties are swiftly flung out of sight and out of mind.") + pause .2 + + # Remove all Cho clothes. + ton "" ("base", "narrow", "base", "mid", hair="horny") + $ tonks.strip("all") + with d3 + call ctc + + cho "" ("base", "narrow", "base", "mid", cheeks="blush", xpos=315, ypos="base", flip=False) # Cho moves to her original position. + with d5 + + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + ton "How immoral for a teacher to do this sort of thing in front of a student..." ("open", "closed", "annoyed", "mid", hair="horny") + ton "You aren't going to report me for my wanton behaviour, are you, Miss Chang?" ("soft", "narrow", "annoyed", "L", hair="horny") + cho "No. Of course not, Professor." ("base", "narrow", "base", "L", cheeks="heavy_blush") + ton "Good girl." ("horny", "narrow", "base", "L", hair="horny") + cho "..." ("angry", "narrow", "base", "down", cheeks="blush") + elif random_number == 2: + ton "Are you enjoying yourself, Professor?" ("open", "narrow", "raised", "mid", hair="horny") + gen "With those tits in front of me? Always!" ("grin", xpos="far_left", ypos="head") + else: + ton "Did you like that, Professor?" ("horny", "narrow", "raised", "mid", hair="horny") + gen "I bloody love it!" ("grin", xpos="far_left", ypos="head") + + call cc_pf_strip_T3_tonks.spank_tonks + + jump cc_pf_strip_T3_tonks.strip_check + + +label .spank_tonks: + # Tonks should stand next to Genie for this. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "-Spank her!-": + pass + "-Don't spank her...-": + return + + call slap_her + ton "!!!" ("clench", "shocked", "base", "stare", hair="scared", cheeks="heavy_blush") # shocked + ton "*Mmm*... You're so naughty, Professor!" ("silly", "narrow", "angry", "mid", hair="horny", cheeks="blush") + ton "Right in front of a student and everything..." ("base", "narrow", "base", "mid", hair="horny", cheeks="blush") + call slap_her + ton "Ouch... {heart}{heart}{heart}" ("silly", "happyCl", "base", "mid", hair="horny", cheeks="blush") + cho "..." ("grin", "narrow", "base", "mid", cheeks="blush") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "-Spank her again!-": + call slap_her + ton "*Mmm*... Spank me, Professor!" ("horny", "narrow", "angry", "mid", hair="horny", cheeks="heavy_blush") + + menu: + "-Again!-": + pass + call slap_her + ton "Not so rough, Sir! {heart}" ("soft", "narrow", "base", "mid", hair="horny", cheeks="heavy_blush") + cho "..." ("horny", "narrow", "base", "down", cheeks="heavy_blush") # blushing #lip bite #looking away + + menu: + "-Slap it hard!-": + pass + call slap_her + ton "" ("clench", "base", "shocked", "ahegao", hair="scared", cheeks="heavy_blush") + pause .5 + call slap_her + pause .3 + call slap_her + pause .3 + call slap_her + cho "" ("horny", "narrow", "worried", "mid", cheeks="heavy_blush") + ton "*Hngh*..." ("upset", "narrow", "base", "ahegao", hair="horny", cheeks="heavy_blush") + ton "Thank you, Professor. {heart}{heart}{heart}" ("soft", "narrow", "worried", "mid", hair="horny", cheeks="heavy_blush") + gen "You're welcome." ("grin", xpos="far_left", ypos="head") + cho "..." ("horny", "narrow", "base", "downR", cheeks="heavy_blush") + + return + + "-Ask Cho to spank her.-": + gen "Miss Chang, would you be so kind and slap your teacher's ass for me?" ("grin", xpos="far_left", ypos="head") + ton "" ("base", "narrow", "base", "mid", hair="horny") + cho "Yes, Sir." ("open", "narrow", "angry", "mid", cheeks="blush") + ton "Do it, [tonks_cho_name]!" ("base", "narrow", "base", "L", hair="horny") + pause .2 + + # Tonks turns around. + call ton_chibi(flip=False) + ton "" ("base", "base", "base", "mid", hair="horny", cheeks="blush", xpos=215, ypos="base", flip=False, trans=d5) + pause .5 + + ton "Slap this naughty teacher's ass!" ("crooked_smile", "narrow", "angry", "R", hair="horny", cheeks="blush") + cho "..." ("base", "narrow", "angry", "down", cheeks="blush") + call slap_her + ton "Surely you can do better than that, Cho." ("soft", "narrow", "base", "downR", hair="horny") + cho "" ("annoyed", "narrow", "angry", "down", cheeks="blush") + call slap_her + ton "*Hngh*..." ("crooked_smile", "narrow", "base", "mid", hair="horny", cheeks="blush") + ton "Do I have to fetch a beaters bat so you can hit it properly, Miss Chang?" ("open", "narrow", "annoyed", "downR", hair="angry") + ton "I thought I asked you to slap it harder!" ("scream", "narrow", "angry", "downR", hair="angry") + cho "" ("clench", "narrow", "angry", "down", cheeks="blush") + call slap_her + ton "" ("mad", "wide", "shocked", "stare", hair="scared") + pause .5 + call slap_her + pause .3 + call slap_her + pause .2 + call slap_her + ton "!!!" ("clench", "narrow", "base", "ahegao", hair="horny", cheeks="heavy_blush") + cho "Good enough for you, Professor?" ("open", "narrow", "angry", "L", cheeks="blush") + ton "*Ah*...{w=0.4} Yes, [tonks_cho_name]... I'd say that was quite--" ("open", "narrow", "worried", "R", hair="horny") + cho "" ("annoyed", "narrow", "angry", "down", cheeks="blush") + call slap_her + ton "" ("clench", "narrow", "base", "ahegao", hair="scared") + pause .5 + call slap_her + pause .3 + call slap_her + pause .2 + call slap_her + ton "" ("horny", "narrow", "base", "ahegao", hair="horny", cheeks="heavy_blush") + call ctc + + gen "That's enough." ("base", xpos="far_left", ypos="head") + cho "Oh wow, it's really red now..." ("grin", "narrow", "base", "down", cheeks="blush") + ton "Very good, Miss Chang. {heart}" ("horny", "narrow", "worried", "R", hair="horny", cheeks="heavy_blush") + pause .2 + + # Tonks turns around. + call ton_chibi(flip=True) + ton "" ("base", "base", "base", "mid", hair="horny", cheeks="heavy_blush", xpos=280, ypos="base", flip=True, trans=dissolve) + pause .8 + + ton "Ten points for Ravenclaw." ("soft", "narrow", "base", "L", hair="horny", cheeks="heavy_blush") + $ ravenclaw += 10 + ton "For this thorough ass spanking!" ("horny", "narrow", "base", "mid", hair="horny", cheeks="heavy_blush") + cho "Thank you, Professor Tonks." ("crooked_smile", "narrow", "base", "down") + + return + + +# Check if Tonks and Cho are naked. Proceed to transformation section if they are. +label .strip_check: + # Cho is wearing at least one clothing piece: + if cho.is_any_worn("robe", "top", "bottom", "bra", "panties"): + jump cc_pf_strip_T3_tonks.strip_cho + # Tonks is wearing at least one clothing piece: + elif tonks.is_any_worn("robe", "top", "bottom", "bra", "panties"): + jump cc_pf_strip_T3_tonks.strip_tonks + # Both are naked; Proceed with event. + else: + jump cc_pf_strip_T3_tonks.transformations + + + +## Transformations ## +label .transformations: + # Intro Event 1 - Doppler or Succubus choice. + # Intro Event 2 - Doppler or Succubus choice. + # Repeatable Event - Transformations. + + $ cho.zorder = 16 # in front of Tonks # Default is 15. + $ tonks.zorder = 15 # reset to default. + call cho_chibi("stand", 314, 366, flip=True) + call ton_chibi("stand", 370, 360, flip=False) + ton "" ("base", "narrow", "base", "L", hair="horny", xpos=345, ypos="base", flip=False) + cho "" ("grin", "base", "base", "L", cheeks="blush", xpos=280, ypos="base", flip=True) + with d5 + + ## Intro Events 1 and 2: + if doppler_done == False or succubus_done == False: + + # Ask Tonks if she's a Doppler or a Succubus. + # After asking her both questions, the next time you do the event she'll do some tranformations. + + if doppler_done == True or succubus_done == True: # You have asked her if she was one of these before. + ton "You're getting quite good at this, Miss Chang." ("base", "narrow", "base", "L") + cho "Thank you, Professor." ("base", "narrow", "base", "L", cheeks="blush") + gen "She's learning from the best." ("base", xpos="far_left", ypos="head") + if succubus_done: + gen "Who'd be better suited to teach her how to entice a man than a semen stealing she-devil!" ("base", xpos="far_left", ypos="head") + ton "Please, Professor. I've already told you I'm not a Succubus..." ("open", "closed", "annoyed", "mid") + else: # doppler_done + gen "Who'd be better suited to teach her how to entice a man than a shapeshifter!" ("base", xpos="far_left", ypos="head") + ton "Please, Professor. I've already told you I'm not this... doppler creature you spoke of." ("open", "closed", "annoyed", "mid") + ton "" ("annoyed", "narrow", "annoyed", "mid") + gen "You can never be a hundred percent sure..." ("base", xpos="far_left", ypos="head") + cho "..." ("quiver", "narrow", "raised", "mid") + gen "My theories have yet to be completely debunked!" ("grin", xpos="far_left", ypos="head") + ton "Seriously?!" ("upset", "base", "raised", "mid") + ton "Alright then... What do you want me to do to convince you this time?" ("soft", "narrow", "base", "mid") + gen "Prove to me that you're not--" ("base", xpos="far_left", ypos="head") + pass + + else: + ton "*Hmm*... not so nervous around me anymore, are you, Cho?" ("crooked_smile", "narrow", "base", "L") + cho "Oh, I guess not. It seems like I got used to it..." ("crooked_smile", "narrow", "worried", "R", cheeks="blush") + cho "It's fun doing this sort of thing at school... I'm quite enjoying it." ("smile", "narrow", "base", "downR", cheeks="blush") + ton "Well, there's somebody who enjoys it even more than we do, isn't that right, Professor?" ("horny", "base", "raised", "mid", hair="horny") + gen "(...)" ("base", xpos="far_left", ypos="head") + ton "Professor?" ("soft", "narrow", "base", "mid") + cho "" ("annoyed", "narrow", "base", "mid", cheeks="blush") + ton "Something on your mind?" ("annoyed", "base", "raised", "mid") + gen "Actually, there is..." ("base", xpos="far_left", ypos="head") + gen "Since your abilities are so rare... Can we be certain that you are in fact human?" ("base", xpos="far_left", ypos="head") + ton "Don't be silly..." ("clench", "base", "shocked", "mid") + gen "You {b}are{/b} human, are you?" ("base", xpos="far_left", ypos="head") + ton "Of course I am, Professor!" ("open", "closed", "annoyed", "mid") + ton "What else am I suppose to be?" ("open", "narrow", "raised", "mid") + pass + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"A Doppler!\"" if doppler_done == False: + jump .doppler_E1 + "\"A Succubus!\"" if succubus_done == False: + jump .succubus_E1 + + + ## Repeatable ## + else: + pass + + call ctc + + gen "Tonks, would you mind showing us your little trick again?" ("grin", xpos="far_left", ypos="head") + ton "Of course. What's it gonna be, Professor?" ("grin", "base", "base", "mid") + ton "Remember I can transform into anything... or anyone." ("soft", "narrow", "base", "mid") # suggestive + cho "..." ("horny", "narrow", "base", "down", cheeks="blush") + gen "*Hmm*... who do I want you to turn into... Let me think." ("base", xpos="far_left", ypos="head") + + menu: + gen "Yes, I want you to shapeshift into--" ("grin", xpos="far_left", ypos="head") + "\"Hermione!\"": + jump cc_pf_strip_T3_tonks.hermione_E1 + "\"A Succubus!\"": + jump cc_pf_strip_T3_tonks.succubus_E2 + + + +## Doppler Event 1 ## +label cc_pf_strip_T3_tonks.doppler_E1: + if doppler_done == False: + # Intro + ton "*Hmmm?*... What's a \"doppler\"?" ("upset", "base", "base", "mid") + gen "What do you mean, what's a doppler?!" ("base", xpos="far_left", ypos="head") + gen "Aren't you part of the magical animal control... or whatever." ("angry", xpos="far_left", ypos="head") + ton "The Auror division does a lot more than \"animal control\"..." ("open", "narrow", "base", "mid") + gen "But you're incapable of identifying a doppler?" ("angry", xpos="far_left", ypos="head") + ton "I guess... This is the first time I'm hearing of such a creature." ("annoyed", "base", "raised", "mid") + cho "I haven't heard of them either, Sir." ("soft", "narrow", "base", "mid") + gen "What sort of magic school are we running here? Aren't you getting taught any Witcher lore?" ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "base", "mid") + ton "Very well, Professor. Why don't you tell us about them?" ("upset", "narrow", "base", "mid") + gen "Oh, there's nobody better suited to do that than me, I'll have you know!" ("grin", xpos="far_left", ypos="head") + gen "After all, I know a lot about the Witcher just from playing the games alone!" ("grin", xpos="far_left", ypos="head") + gen "(Truth be told I skipped the first two, but they don't need to know that...)" ("base", xpos="far_left", ypos="head") + cho "What kind of \"games\" is he talking about, Professor?" ("soft", "base", "worried", "L") # looking at Tonks. Small text + ton "I haven't the foggiest..." ("mad", "base", "raised", "L") # looking back. Small text + + $ doppler_done = True + gen "Dopplers are hideous creatures, you see... Both in character, and in appearance." ("angry", xpos="far_left", ypos="head") + cho "" ("annoyed", "base", "base", "mid") + ton "" ("upset", "narrow", "base", "mid") + gen "They often abuse their ability for selfish gains, and manipulate people into thinking they're somebody else entirely." ("base", xpos="far_left", ypos="head") + cho "That does sound quite suspicious, Professor..." ("open", "narrow", "angry", "mid") + cho "After all, she's been abusing her powers to flaunt my bum at people!" ("annoyed", "narrow", "angry", "mid", cheeks="blush") + gen "That's true!" ("grin", xpos="far_left", ypos="head") + ton "Surely you can't blame me for that... As I said, it wasn't anything they hadn't seen before." ("soft", "base", "base", "R", hair="horny") + cho "But-- Professor!" ("annoyed", "narrow", "angry", "L", cheeks="heavy_blush") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + ton "I'm not doing anything harmful, I promise." ("upset", "happyCl", "worried", "mid", hair="horny", cheeks="blush") + cho "..." ("annoyed", "narrow", "angry", "mid", cheeks="blush") # annoyed + + ton "So, what other \"Evidence\" do you have to further prove this theory?" ("soft", "narrow", "base", "mid", hair="horny") #Amused + gen "Well, there's a big reason why Dopplers indulge themselves when they get the chance to." ("base", xpos="far_left", ypos="head") + gen "Since they're incredibly ugly creatures, it wouldn't surprise me in the slightest that they'd change their appearance into a highly attractive woman when given the chance." ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "base", "base", "L", cheeks="blush") + ton "" ("annoyed", "base", "base", "mid", hair="horny") + gen "Miss Tonks, your appearance, it's almost too perfect..." ("base", xpos="far_left", ypos="head") + gen "You didn't find some smoking hot woman in a magazine did you?" ("base", xpos="far_left", ypos="head") + gen "We all know those are highly edited..." ("base", xpos="far_left", ypos="head") + ton "So I'm smoking hot, huh?" ("horny", "narrow", "base", "mid", hair="horny") + ton "You flatter me, but no... I've always looked like this." ("base", "happyCl", "base", "mid", hair="horny") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "base", "mid", cheeks="blush") # blushing + + gen "You can count yourself lucky that I haven't seen any bounties for a Doppler..." ("base", xpos="far_left", ypos="head") + gen "So, doppler or not..." ("base", xpos="far_left", ypos="head") + gen "You're off the hook for now." ("base", xpos="far_left", ypos="head") + ton "Well, I'm glad we cleared that up..." ("base", "narrow", "base", "mid") + cho "" ("annoyed", "base", "base", "mid", cheeks="blush") + ton "My ability is perfectly harmless, Professor." ("crooked_smile", "base", "base", "mid") + gen "You may say that, but we all know shape-shifting is the source of all kinds of evil sorcery!" ("angry", xpos="far_left", ypos="head") + ton "No it's not..." ("open", "closed", "annoyed", "mid") + gen "The last thing we need at this school is a rogue shapeshifter -- abusive of its powers..." ("angry", xpos="far_left", ypos="head") + ton "..." ("upset", "base", "base", "mid", hair="horny") + + gen "Anyway... Promise me you won't start murdering people and steal their identities." ("base", xpos="far_left", ypos="head") + cho "" ("angry", "base", "raised", "mid", cheeks="blush") + ton "What?! How could you even suggest that I would--" ("clench", "shocked", "shocked", "mid", hair="scared") # shocked + gen "Identity theft is not a joke, Tonks! Millions of families suffer every year!" ("angry", xpos="far_left", ypos="head") + ton "Yikes! Of course I won't do that, Professor!" ("clench", "happyCl", "base", "mid") + gen "Good." ("base", xpos="far_left", ypos="head") + ton "..." ("upset", "base", "worried", "mid") + cho "" ("annoyed", "base", "base", "mid") + gen "How come you're the only one that can shapeshift?" ("base", xpos="far_left", ypos="head") + ton "It's just very uncommon." ("open", "narrow", "raised", "down") + ton "You can't fault me for having it... I was born with it." ("annoyed", "base", "base", "mid") + gen "Very well then, I shall believe that you're not a doppler..." ("base", xpos="far_left", ypos="head") + gen "(For now...)" ("base", xpos="far_left", ypos="head") + ton "Glad to hear it." ("mad", "base", "base", "mid") + cho "..." ("soft", "narrow", "worried", "L") + ton "Anyhow, it's getting quite late, Professor." ("soft", "narrow", "base", "L") + + # End Event. + jump cc_pf_strip_T3_tonks.end_event + + +## Succubus Event 1 ## +label cc_pf_strip_T3_tonks.succubus_E1: + if succubus_done == False: + # Intro + ton "*snort!*... For real?" ("crooked_smile", "happyCl", "shocked", "mid") + cho "Oh, I've heard of those, Professor!" ("grin", "happyCl", "base", "mid") + cho "They're demons in female form, that can visit you in your dreams and murder you!" ("soft", "narrow", "angry", "mid") + ton "Very good, Miss Chang..." ("crooked_smile", "base", "base", "L") + ton "Ten points for Ravenclaw!" ("soft", "narrow", "base", "L") + $ ravenclaw += 10 + cho "Thank you." ("smile", "narrow", "base", "downR", cheeks="blush") # happy + + $ succubus_done = True + ton "I mean... I'm quite flattered, Professor..." ("open", "narrow", "raised", "mid") + ton "Who doesn't want to be compared to a demonic, sex-driven temptress!" ("soft", "narrow", "base", "mid", hair="horny") + cho "" ("annoyed", "base", "base", "mid", cheeks="blush") + gen "I knew it! You're a Succubus!" ("grin", xpos="far_left", ypos="head") + cho "" ("annoyed", "base", "raised", "L", cheeks="blush") + ton "No I'm not, silly!" ("open", "closed", "base", "mid") + ton "..." ("annoyed", "base", "shocked", "L", hair="horny") # thinks + ton "Well, I do have similar shapeshifting abilities, that's true..." ("soft", "base", "base", "down", hair="horny") + ton "And share some of their more raunchy characteristics..." ("crooked_smile", "happyCl", "base", "mid", hair="horny") + gen "Not to mention a banger body!" ("grin", xpos="far_left", ypos="head") + ton "Obviously." ("soft", "narrow", "base", "mid", hair="horny") + cho "..." ("horny", "narrow", "base", "L", cheeks="blush") # blushing + ton "I may also act like one on the occasion..." ("open", "base", "base", "R", hair="horny") + + # TODO: v v v Added this bit of writing. Needs review + gen "But you're still denying that you're an alluring sex-demon, even after that last demonstration?" ("base", xpos="far_left", ypos="head") + ton "I might have some unusual talents, that's all..." ("open", "base", "base", "R", hair="horny") + ton "Why are you so scared of them anyway?" ("open", "narrow", "base", "mid", hair="horny") + ton "What's the worst a succubus could do to you?" ("horny", "narrow", "base", "mid", hair="horny") + gen "Do I really have to tell the two of you of what they do?" ("angry", xpos="far_left", ypos="head") + gen "I won't let any demon suck the life-blood out of my penis!" ("angry", xpos="far_left", ypos="head") + ton "" ("normal", "base", "base", "mid", hair="horny") + cho "What?!" ("clench", "base", "base", "mid") # bit shocked. + ton "Well, if I was one, I promise you I wouldn't do that..." ("mad", "narrow", "base", "mid", hair="horny") + ton "Not as long as there's plenty of other essence to be gathered." ("horny", "narrow", "angry", "mid", hair="horny") + cho "Professors?!" ("mad", "narrow", "base", "downR") # uncomfortable + gen "Then I better not run out of essence!" ("grin", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "mid") + gen "Thought you could trick me, you semen loving sex-demon!" ("grin", xpos="far_left", ypos="head") + # TODO: ^ ^ ^ Added this bit of writing. Needs review + + ton "I'm still human, and not a sex-demon...{w=0.5} Believe it or not." ("open", "narrow", "raised", "mid", hair="horny") + gen "If you say so..." ("base", xpos="far_left", ypos="head") + ton "If you'd met one before, you'd know the difference between me and a succubus right away..." ("base", "narrow", "base", "mid", hair="horny") + ton "They are quite relentless when it comes to sex, you know. -- Even more so than I am!" ("horny", "narrow", "annoyed", "mid", hair="horny") + cho "You have met a Succubus, Professor? But I thought they're extremely dangerous." ("mad", "base", "base", "mid") + ton "Oh yes! You have to be extremely careful around them..." ("soft", "base", "base", "L", hair="horny") + gen "Don't tell me you--" ("base", xpos="far_left", ypos="head") + ton "Who do you think you're talking to, Professor.{w=0.5} Of course I did." ("base", "narrow", "base", "mid", hair="horny") # horny, confident + cho "No way!" ("horny", "base", "base", "L", cheeks="heavy_blush") + ton "It was part of an auror job, obviously. Maybe I'll tell you about it some time." ("crooked_smile", "base", "base", "mid", hair="horny") + cho "Yes! I want to hear it!" ("grin", "base", "base", "mid") + ton "Are you sure you'd want that, honey?" ("soft", "narrow", "base", "L", hair="horny") + ton "It's quite the filthy story... You don't walk away from a Succubus unscarred unless you can impress her!" ("horny", "narrow", "raised", "mid", hair="horny") # horny + cho "*Uhm*..." ("disgust", "narrow", "worried", "downR", cheeks="heavy_blush") + call play_sound("gulp") + gen "*gulp*..." ("angry", xpos="far_left", ypos="head") # sound + ton "Of course I could tone it down for you guys." ("base", "happyCl", "base", "mid", hair="horny") + gen "No, please. We'd love to hear the full story!" ("grin", xpos="far_left", ypos="head") + cho "..." ("horny", "narrow", "base", "mid", cheeks="blush") + ton "Next time. I promise." ("base", "narrow", "base", "mid") + ton "Anyhow, it's getting quite late, Professor." ("soft", "narrow", "base", "L") + + # End Event. + jump cc_pf_strip_T3_tonks.end_event + + +## Succubus Event 2 ## +label .succubus_E2: + ton "You want me to shapeshift into a Succubus?" ("base", "narrow", "base", "mid") + cho "" ("horny", "narrow", "base", "L") + gen "Hell yeah! I do love me some cosplay!" ("grin", xpos="far_left", ypos="head") + ton "It's not..." ("open", "base", "shocked", "R") + ton "Very well then..." ("open", "closed", "base", "mid") + + # Tonks transforms into a Succubus + stop music fadeout 0.5 + cho "" ("mad", "narrow", "base", "down", xpos=265, ypos="base", flip=True) # bit more to the left + ton "" ("base", "narrow", "base", "mid", xpos=345, ypos="base", flip=False) # bit more to the right + with fade + pause .5 + + $ renpy.sound.play("sounds/magic3.ogg") + $ tonks.equip(ton_outfit_succubus) + ton "" ("horny", "narrow", "base", "mid", trans=flash) + call ctc + + call play_music("trance") + ton "{heart}{heart}{heart}" + gen "Marvellous!" ("grin", xpos="far_left", ypos="head") + cho "..." ("horny", "narrow", "raised", "down", cheeks="blush") # blush + ton "*Giggles*" ("horny", "narrow", "raised", "L", hair="horny") #sound + ton "What do you think?" ("grin", "narrow", "base", "mid", hair="horny") + ton "Do you like it?" ("horny", "narrow", "annoyed", "down", hair="horny") + cho "..." ("horny", "narrow", "worried", "down", cheeks="blush") + pause .8 + ton "Miss Chang?" ("soft", "narrow", "base", "L", hair="horny") + cho "Oh! Yes... Very impressive, Professor!" ("soft", "narrow", "worried", "L", cheeks="heavy_blush") + ton "I don't think my skin tone is quite right... I believe they're usually more devilish looking." ("upset", "narrow", "base", "down", hair="horny") + gen "I can already feel my balls retract by fear." ("angry", xpos="far_left", ypos="head") + ton "" ("base", "narrow", "base", "mid", hair="horny") + cho "Your... What, Sir?" ("clench", "wide", "base", "mid") #wide eyed + ton "Don't worry, Miss Chang... Unless you're in a state of high arousal then you have nothing to worry about." ("crooked_smile", "narrow", "base", "L", hair="horny") + cho "*Ehm*... If you say so, Professor." ("normal", "happyCl", "worried", "mid", cheeks="blush") + ton "Now the Professor on the other hand..." ("mad", "narrow", "angry", "mid", hair="angry") + cho "" ("mad", "base", "raised", "mid", cheeks="blush") + ton "He can call himself very lucky that I'm not a real Succubus." ("soft", "narrow", "base", "mid", hair="angry") + gen "I'm not ruling out the possibility..." ("base", xpos="far_left", ypos="head") + ton "*Tsk*..." ("upset", "narrow", "base", "mid", hair="angry") + gen "Though I must say you're much more attractive than the last demon who visited me..." ("base", xpos="far_left", ypos="head") + ton "" ("annoyed", "narrow", "raised", "mid", hair="angry") + cho "You were visited by a demon, Professor?" ("soft", "narrow", "base", "mid") + gen "Yes... Although it was just your regular sleep paralysis demon." ("base", xpos="far_left", ypos="head") + ton "" ("base", "narrow", "base", "mid", hair="angry") + cho "Oh..." ("disgust", "narrow", "base", "down") + gen "A rather horrifying looking one at that... Not sexy in the slightest!" ("angry", xpos="far_left", ypos="head") + gen "Mating with it proved itself to be quite difficult..." ("grin", xpos="far_left", ypos="head") + ton "Of course you did..." ("horny", "narrow", "angry", "mid", hair="angry") + cho "You... Wait, did you say {b}it{/b}, Sir?" ("open", "base", "base", "mid") #wide eyed + gen "*Ahem*... So, how does one summon a Succubus anyway?" ("base", xpos="far_left", ypos="head") + gen "I'm sure you're an expert in the subject, Miss Tonks." ("grin", xpos="far_left", ypos="head") + cho "{b}It{/b}, sir?!" ("mad", "narrow", "raised", "mid") + ton "*Hmm*... I wouldn't call myself an expert..." ("base", "narrow", "base", "mid") + cho "But what about your Auror Training professor?" ("annoyed", "narrow", "base", "L") #annoyed pout + ton "" ("base", "narrow", "base", "L") #Glances at Cho + cho "..." ("base", "narrow", "base", "L", cheeks="blush") #embarrased + ton "Now I know I'm your Teacher, Miss Chang, but that doesn't mean I'm at an expert level of every subject before doing proper research..." ("open", "narrow", "raised", "L") + cho "Oh... Of course, Professor... I didn't mean to--" ("mad", "narrow", "worried", "down", cheeks="blush") + ton "Whilst we did cover Succubi during our training, the subject of summoning wasn't very in depth..." ("soft", "narrow", "raised", "L") + cho "" ("base", "narrow", "worried", "L", cheeks="blush") + ton "We mostly learned how to easily recognize and how to... Deal with various magical beings." ("open", "closed", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + ton "That said..." ("grin", "narrow", "base", "mid") + ton "What I do know is that they usually come off as quite erratic and spontaneous." ("soft", "narrow", "shocked", "mid") + ton "In most cases you'd only encounter them if {b}they{/b} want you to..." ("base", "narrow", "base", "mid") + ton "So summoning one would be quite difficult." ("base", "narrow", "base", "L") + gen "Well... Luckily I have the ability to summon you any time I want!" ("grin", xpos="far_left", ypos="head") + ton "*Hmmm*... Be careful what you wish for, Professor..." ("horny", "narrow", "base", "mid", hair="horny") + ton "I can be just as dangerous and seductive... {heart}" ("horny", "narrow", "angry", "mid", hair="angry") + cho "" ("horny", "narrow", "worried", "mid", cheeks="blush") + gen "See that hungry look in her eyes, Cho?" ("angry", xpos="far_left", ypos="head") + cho "" ("horny", "narrow", "worried", "L", cheeks="blush") + gen "This Succubus is out to steal all my semen!" ("grin", xpos="far_left", ypos="head") + ton "Oh, don't tempt me, Professor..." ("crooked_smile", "narrow", "angry", "mid", hair="horny") + cho "..." ("base", "narrow", "worried", "down", cheeks="blush") # embarrassed + + #Tonks succubus encounter story + cho "*Ehm*...{w=0.5} So, did you actually confront a real Succubus, Professor?" ("soft", "narrow", "base", "L", cheeks="blush") + ton "Oh, Yes indeed, Miss Chang!" ("base", "happyCl", "base", "mid", hair="horny") + ton "It happened during my first year of Auror training, when I was still a complete novice." ("open", "narrow", "raised", "L") + ton "We were tracked down by one during a scouting mission... Unbeknownst to us, of course." ("crooked_smile", "narrow", "base", "mid") + cho "She tracked you down?" ("mad", "base", "raised", "L", cheeks="blush") + ton "Yes... They can sense the arousal of humans from miles away... Even further if they haven't had any relief for some time." ("base", "narrow", "base", "L") + gen "Well, who can blame your partner with you around?" ("base", xpos="far_left", ypos="head") + ton "*giggles*" ("base", "happyCl", "base", "mid", hair="horny") #sound + ton "Oh silly... She was after me, of course!" ("soft", "narrow", "base", "mid", hair="horny") + cho "No way!?" ("horny", "narrow", "raised", "L", cheeks="blush") + ton "I know what you're going to say, Professor... And yes... They don't usually go after females." ("open", "closed", "base", "mid", hair="horny") + cho "But she still came after you?" ("soft", "narrow", "raised", "L", cheeks="blush") + cho "When did you and your partner notice her?" ("mad", "narrow", "base", "L", cheeks="blush") + ton "Well... My partner didn't notice her exactly... I might've wandered a bit further away from our camp than I should have..." ("soft", "narrow", "base", "downR", hair="horny") + ton "You know... To get some privacy." ("crooked_smile", "narrow", "base", "mid", hair="horny", cheeks="blush") + ton "She must've taken some great caution to be able to sneak up on me, but after a while of... *Ehm*..." ("clench", "narrow", "base", "L", hair="horny") + ton "After some time I noticed her movements among the bushes." ("open", "closed", "base", "mid", hair="horny") + ton "Once I noticed her presence there was no doubt in my mind why she had snuck up on me..." ("grin", "narrow", "base", "mid", hair="horny") + gen "Let me guess... She was--" ("base", xpos="far_left", ypos="head") + ton "She was going full force, pleasuring herself... Not even noticing that I had stopped and spotted her!" ("grin", "narrow", "angry", "mid", hair="horny") + cho "Stopped what?" ("annoyed", "base", "raised", "mid") + gen "Shush, Miss Chang... Don't interrupt the story!" ("grin", xpos="far_left", ypos="head") + ton "Of course I had to be a hundred percent sure what creature she was, so I went to take out my wand to make some light, but..." ("base", "narrow", "base", "L", hair="horny") + ton "Before I knew it she had flown right up next to me, grabbing my wrists." ("open", "narrow", "angry", "mid", hair="angry") + cho "And then you used your auror training to fight her!" ("grin", "narrow", "angry", "L") + call play_sound("giggle") + ton "*Giggles*...{w=0.4} No, we made out instead." ("horny", "narrow", "raised", "L", hair="horny") #sound + cho "You...{w} Made out with her!?" ("clench", "wide", "base", "L") + ton "Of course! She couldn't get enough of me!" ("grin", "happyCl", "base", "mid", hair="horny") + ton "After all... I'm quite skilled with my tongue." ("horny", "narrow", "base", "mid", hair="horny") + cho "Your--" ("soft", "narrow", "worried", "L", cheeks="blush") + gen "Tongue!" ("grin", xpos="far_left", ypos="head") + call play_sound("giggle") + ton "*giggles*" ("base", "happyCl", "base", "mid", hair="horny") + ton "Yes indeed... Would you like a demonstration?" ("crooked_smile", "narrow", "base", "mid", hair="horny") + + menu: + gen "!!!" ("grin", xpos="far_left", ypos="head") + "\"Yes please!\"": + ton "Yeah, I bet you'd like that, Professor. {heart}" ("horny", "narrow", "base", "mid", hair="horny") + ton "Maybe some other time." ("soft", "narrow", "base", "mid", hair="horny") + cho "..." ("clench", "narrow", "worried", "down", cheeks="blush") # curious look + + "\"What do you say, Miss Chang?\"": + cho "With m-me?" ("clench", "wide", "raised", "mid", cheeks="heavy_blush") + ton "No, silly... Well not today at least. {heart}" ("soft", "narrow", "base", "L", hair="horny") + cho "..." ("clench", "narrow", "worried", "down", cheeks="blush") # blushing + + # Tonks shows her tongue. + ton "You'll have to settle for a peek for now..." ("horny", "narrow", "base", "mid", hair="horny") + cho "..." ("horny", "narrow", "base", "L", cheeks="blush") #blush + gen "*Hmm?*..." ("base", xpos="far_left", ypos="head") + ton "*Ahh*..." ("open_wide", "narrow", "base", "down", hair="horny") + cho "" ("horny", "base", "raised", "L", cheeks="blush") + ton "*Ahhhhhhh*........." ("open_wide_tongue", "narrow", "angry", "down", hair="horny") # Tonks shows her tongue. + cho "Wow!" ("open", "base", "raised", "L", cheeks="blush") + gen "..." ("grin", xpos="far_left", ypos="head") + ton "Ae I chahn mhehk i ash ong ashh I whan..." ("open_wide_tongue", "narrow", "angry", "mid", hair="horny") + ton "... shee!" ("open_wide_tongue2", "narrow", "angry", "down", hair="horny") # Tongue all the way out. + cho "By Merlin's beard!" ("clench", "narrow", "worried", "L", cheeks="heavy_blush") #blush + gen "Nice..." ("grin", xpos="far_left", ypos="head") + gen "Although with a succubus I highly doubt there was just kissing going on..." ("grin", xpos="far_left", ypos="head") + ton "*Hmm*... Yesh, thaht little devil..." ("open_wide_tongue", "narrow", "angry", "mid", hair="horny") + ton "She was very quick to lock my head in place between her thighs, and then impaled herself on my tongue." ("open_wide_tongue", "narrow", "raised", "mid", hair="horny") + ton "Rode my tongue for a good hour, that freak..." ("horny", "narrow", "angry", "mid", hair="horny") + + #gen "You're calling her a freak? Your tongue is longer than my dick!" ("angry", xpos="far_left", ypos="head") + #cho "Professor?" + #ton "Oh, sweetie... My dick could be longer than your dick..." + #cho "What?!" + #ton "Not that I have one currently..." + #ton "But I could make it as long as I want!" + #cho "..." #looking at floor + #gen "What else? Does it vibrate too? How are you even supposed to compete with that?" ("angry", xpos="far_left", ypos="head") + #ton "*giggles*" #sound + #ton "I haven't tried that actually... That's not a bad idea." + #cho "" #blush + #gen "..." ("base", xpos="far_left", ypos="head") + #ton "Don't you worry professor... There's always the need for that masculine touch..." + + gen "(Like you didn't enjoy every minute of it...)" ("grin", xpos="far_left", ypos="head") + ton "Pleasuring her was quite exhausting to say the least..." ("soft", "narrow", "base", "L", hair="horny") + ton "I licked her inside out until my whole face was covered in her devilish love-juices... {heart}" ("horny", "narrow", "angry", "mid", hair="angry") + cho "" ("clench", "narrow", "worried", "down", cheeks="heavy_blush") #Horny #looks at tonks + call ctc + + ton "Although... I did almost drown..." ("upset", "base", "raised", "up", hair="horny") # thinking back + ton "Her thighs, practically glued to my cheeks meant there was no other way for her juices to flow than into my mouth..." ("open", "narrow", "annoyed", "mid", hair="horny") + ton "Her essence becoming too much for me to handle as it eventually ran up my nose." ("horny", "narrow", "base", "down", hair="horny") + gen "Holy shit." ("base", xpos="far_left", ypos="head") + ton "I had no other choice but to swallow all of it..." ("grin", "narrow", "base", "mid", hair="horny") + cho "" ("normal", "happyCl", "worried", "mid", cheeks="heavy_blush") + call play_sound("gulp") + gen "*gulp*" ("angry", xpos="far_left", ypos="head") + cho "" ("horny", "narrow", "worried", "L", cheeks="blush") + ton "That little demon must've come at least twenty times that night. {heart}" ("open_wide_tongue", "narrow", "raised", "L", hair="horny") + ton "I could give you a ride on this as well if you'd like, Miss Chang." ("open_wide_tongue2", "narrow", "angry", "L", hair="horny", cheeks="heavy_blush") # tongue out + cho "Professor--" ("soft", "narrow", "worried", "mid", cheeks="heavy_blush") # embarrassed #looks at you + gen "Tonks, not before--" ("base", xpos="far_left", ypos="head") + ton "Yes, yes... Not before you win that silly Quidditch cup." ("mad", "closed", "angry", "mid", hair="angry", cheeks="heavy_blush") + cho "It's not silly!" ("annoyed", "narrow", "angry", "L", cheeks="blush") + ton "Winning that cup won't feel as good as having my tongue inside you, Miss Chang... I can promise you that much." ("annoyed", "narrow", "angry", "L", hair="horny", cheeks="heavy_blush") + cho "..." ("clench", "happyCl", "worried", "mid", cheeks="heavy_blush") #Pout #blush + ton "Well then... I hope you two liked my little story. {heart}" ("open", "closed", "base", "mid", hair="horny") + ton "And my new outfit of course..." ("crooked_smile", "narrow", "base", "down", hair="horny") + + # Unlock outfit message. Should only appear once. + if not ton_outfit_succubus.unlocked: + call unlock_clothing(text=">New clothing items for Tonks have been unlocked!", item=ton_outfit_succubus) + + cho "" ("horny", "narrow", "worried", "L", cheeks="heavy_blush") + ton "Maybe I could dress as a Succubus for Halloween. I'm sure the boys would love it..." ("base", "narrow", "base", "mid", hair="horny") + gen "With or without the tits out?" ("grin", xpos="far_left", ypos="head") + ton "*Hmm*... Haven't decided yet." ("upset", "narrow", "raised", "down", hair="horny") + cho "..." ("clench", "narrow", "worried", "mid", cheeks="blush") + ton "Well then... Off we go Miss Chang..." ("soft", "narrow", "base", "L", hair="horny") + + # End Event. + jump cc_pf_strip_T3_tonks.end_event + + + +## Hermione Transformation ## +label .hermione_E1: + # Pink Hair: $ hermione.get_equipped("hair").set_color([[255, 87, 171, 255], [255, 210, 227, 255], [230, 141, 32, 255]]) + # Brown Hair: $ hermione.get_equipped("hair").set_color([[152, 89, 48, 255], [195, 137, 89, 255], [230, 141, 32, 255]]) + ton "Hermione again, *Hmm*?" ("base", "base", "base", "mid") + ton "Seems to me like she's a bit of a favourite, isn't she?" ("soft", "narrow", "raised", "mid") + gen "What can I say, she's got the best tits in the house!" ("grin", xpos="far_left", ypos="head") + cho "Hey! That's not true!" ("annoyed", "narrow", "base", "mid") + gen "It isn't? Then who's tits are better, Miss Chang?" ("base", xpos="far_left", ypos="head") + gen "Do tell me, I'd love to know!" ("grin", xpos="far_left", ypos="head") + cho "Just forget I said anything..." ("annoyed", "narrow", "base", "L") + ton "Well, I for one am not going to disagree with you, Professor." ("crooked_smile", "narrow", "base", "mid") + ton "Miss Granger's tits are quite nice indeed..." ("horny", "narrow", "angry", "mid", hair="horny") + cho "..." ("normal", "narrow", "base", "up") + ton "I mean we could do something else if you'd like, Miss--" ("open", "base", "base", "L") + gen "No, No-- Do the thing!" ("grin", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "base", "L", cheeks="blush") + ton "Certainly... With pleasure." ("base", "happyCl", "base", "mid") + stop music + pause .8 + + # Save custom Hermione name + $ temp_name = hermione_name + $ hermione_name = "Tonks" + + # Transforms into Hermione + call play_sound("magic") + hide tonks_main + $ hermione.strip("all") + $ cho_chibi.zorder = 3 # Reset to default. + $ hermione_chibi.zorder = 2 # behind Cho. Default is 3. + call ton_chibi("hide") + call her_chibi("stand", 370, 360, flip=False) + her "" ("base", "narrow", "base", "mid", xpos=345, ypos="base", flip=False, trans=morph) + pause .2 + + cho "" ("horny", "narrow", "worried", "L", cheeks="heavy_blush") + call ctc + + call play_music("trance") + her "Well then, here she is..." ("smile", "narrow", "angry", "mid") + her "Feel free to touch me, Cho." ("base", "narrow", "annoyed", "R") + her "Unlike Hermione I won't bite you... Probably. {heart}" ("smile", "narrow", "annoyed", "down") + cho "..." ("mad", "narrow", "worried", "down", cheeks="blush") # blush + her "I simply love getting groped..." ("soft", "narrow", "angry", "up") + cho "" ("horny", "narrow", "worried", "L", cheeks="blush") + gen "That reminds me... Let's talk about how well you did during the last quidditch match..." ("grin", xpos="far_left", ypos="head") + gen "You did quite a good job pretending to be Hermione." ("base", xpos="far_left", ypos="head") + gen "Wouldn't you say she did a good job commentating, Miss Chang?" ("grin", xpos="far_left", ypos="head") + cho "Oh... Well I wouldn't know since I was more focused on playing, Sir..." ("soft", "base", "base", "mid", cheeks="blush") + cho "But from what I could gather you did quite well, *uhm*... Professor." ("silly", "narrow", "worried", "L", cheeks="heavy_blush") + gen "Yes... She put so much effort into it... you must have been completely exhausted by the end..." ("base", xpos="far_left", ypos="head") + cho "" ("horny", "narrow", "worried", "L", cheeks="blush") + her "... {heart}" ("base", "happy", "base", "mid_soft", cheeks="blush") # blushing + cho "You were?" ("smile", "narrow", "base", "L", cheeks="blush") + gen "Indeed... Addressing the entire school is no easy task, Miss Chang..." ("base", xpos="far_left", ypos="head") + her "..." ("crooked_smile", "happyCl", "base", "mid") #Horny #Starts touching breasts (If Cho isn't looking) + + show screen blkfade + with d5 + $ renpy.play("sounds/slick_02.ogg") + with hpunch + with kissiris + $ hermione.set_pose("masturbate") + $ hermione.set_body(armleft="on_pussy") + her "" ("base", "narrow", "worried", "stare") + hide screen blkfade + with d5 + + gen "You have to Stay completely focused when you're tasked with commentating on everything that's happening." ("base", xpos="far_left", ypos="head") + cho "Surely commentating doesn't even come close to the amount of focus you need to spot the snitch..." ("soft", "narrow", "raised", "mid") + cho "Or how would Granger be able to do it?" ("annoyed", "narrow", "base", "R") + gen "Depends how easily you get distracted, I suppose..." ("base", xpos="far_left", ypos="head") + gen "Would you say that you're easily distracted... Miss Granger?" ("base", xpos="far_left", ypos="head") + her "*Mmm*..." ("base", "narrow", "base", "stare_soft") + gen "Miss Granger?" ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "base", "L") #annoyed + her "*Mmm*... Just thinking about it gets me all riled up again..." ("open", "narrow", "worried", "mid") + cho "Professor, what are you..." ("disgust", "narrow", "base", "L", cheeks="blush") #Looks at Tonks/Hermione + her "*Hmm*... Sorry, what did you say?" ("open_tongue", "narrow", "base", "L") + cho "What are you doing?" ("mad", "happyCl", "base", "mid", cheeks="blush") + call play_sound("giggle") + her "*giggles*" ("base", "narrow", "base", "mid", cheeks="blush") #sound + her "What does it look like?" ("grin", "narrow", "base", "L") + cho "You're touching your... Her--" ("clench", "narrow", "raised", "down", cheeks="blush") + her "Yes... How could I not?" ("base", "narrow", "base", "mid") + her "These breasts are just so..." ("soft", "narrow", "base", "down") + + #pinch nipples. + + + # Hands on pussy, tits + $ hermione.set_body_zorder(armright=3) + $ hermione.set_body(armleft="on_pussy", armright="on_tits") + play bg_sounds "sounds/slickloop.ogg" fadein 2 + + her "*Mmmh*... So soft..." ("base", "closed", "base", "mid") + her "And her nipples..." ("soft", "narrow", "base", "down") + her "*Ah*..." ("open_tongue", "narrow", "base", "stare_soft") + her "So sensitive..." ("base", "narrow", "base", "up") + cho "*Ehm*..." ("horny", "narrow", "worried", "down", cheeks="heavy_blush") + her "*Mhmm*... And I bet her nipples aren't the only--" ("open", "narrow", "base", "down") + her "" ("grin", "closed", "worried", "mid") #Hand in front of pussy + pause .8 + $ renpy.play("sounds/slick_02.ogg") + her "*Ah*..." ("open_tongue", "narrow", "base", "up") #Hand on pussy + cho "Tonks!" ("mad", "narrow", "worried", "R", cheeks="heavy_blush") + + play bg_sounds "sounds/slickloop.ogg" fadein 2 #Continuous masturbate loop + her "*Mmmm*..." ("base", "narrow", "base", "up") + pause 1 + her "*Hmm?*... Not even a peek?" ("soft", "narrow", "base", "L") + her "Don't you want to see what Hermione looks like when... *Ah*... She masturbates?" ("grin", "narrow", "worried", "down", cheeks="blush") + her "Are you sure you... *Ah*...{w=0.4} Want to miss this?" ("open", "closed", "base", "mid", cheeks="blush") + cho "..." ("clench", "narrow", "worried", "down", cheeks="heavy_blush") #glances at her + her "*Ah*...{w=0.3} That's it, Cho..." ("smile", "narrow", "base", "L") + her "I knew you couldn't resist..." ("soft", "narrow", "base", "up") + cho "" ("horny", "narrow", "worried", "down", cheeks="heavy_blush") #Horny + call ctc + + her "*Ah*...{w=0.3} Look at me as I rub Granger's cute little slit." ("open_wide_tongue", "narrow", "angry", "up", cheeks="blush") + her "*Ah*...{w=0.3} *Ah*...{w=0.3} *Ah*..." ("open_wide_tongue", "narrow", "worried", "up", cheeks="blush") + cho "" ("horny", "narrow", "worried", "downR", cheeks="heavy_blush") #looks away + call ctc + + her "No! Keep watching me!" ("annoyed", "narrow", "angry", "L") + play bg_sounds "sounds/slickloopfast.ogg" + her "*Ah*...{w=0.3} I'm getting close!" ("soft", "narrow", "base", "up", cheeks="blush") + play bg_sounds "sounds/slickloopveryfast.ogg" + cho "" ("mad", "narrow", "base", "down", cheeks="heavy_blush") #still looking away + her "Watch me!" ("open_wide_tongue", "narrow", "angry", "up", cheeks="blush") + cho "" ("horny", "narrow", "raised", "down", cheeks="heavy_blush") #still looking away + her "Watch as Hermione cums for you!" ("angry", "narrow", "base", "up", cheeks="blush") + cho "" ("smile", "narrow", "base", "down", cheeks="heavy_blush") #embarrased #Looks at Tonks + $ renpy.sound.play("sounds/slick_01.ogg") + her "*Nngh*...{w=0.4} *Aaah*!!!" ("clench", "happy", "base", "ahegao", cheeks="blush") + stop bg_sounds + with kissiris + cho "" ("horny", "base", "raised", "down", cheeks="heavy_blush") #wide eyed + with kissiris + $ renpy.sound.play("sounds/slick_01.ogg") + her "*Ah*!" ("open_wide_tongue", "happy", "angry", "ahegao", cheeks="blush") + stop bg_sounds fadeout 2 + call play_music("stop") + her "*Mmmh*..." ("clench", "narrow", "base", "squint", cheeks="blush") + cho "..." ("smile", "narrow", "base", "L", cheeks="heavy_blush") + her "*Ah*...{w=0.3} *Ah*...{w=0.5} *Ah*...{w=0.6} Good...{w=0.3} Good girl..." ("open_tongue", "narrow", "base", "up", cheeks="blush") + + # Reset pose + $ hermione.set_body_zorder(armright=0) + $ hermione.set_body(armleft="down", armright="down") + $ hermione.set_pose(None) + $ hermione.strip("all") + with d5 + + call play_music("tonks") + her "*Mmmh*... How I love masturbating in a body that I'm not quite familiar with..." ("smile", "happyCl", "base", "mid") + her "It's like flying a new broom... There's nothing quite like the first test ride..." ("base", "narrow", "base", "mid") + cho "..." ("grin", "narrow", "base", "downR", cheeks="heavy_blush") + call play_sound("giggle") + her "*giggles*" ("base", "happyCl", "base", "mid", cheeks="blush") #Looks at cho + + # Tonks transforms back. + call play_sound("magic") + hide hermione_main + call her_chibi("hide") + $ cho_chibi.zorder = 3 # Reset to default. + $ tonks_chibi.zorder = 2 # behind Cho. Default is 3. + call ton_chibi("stand", 370, 360, flip=False) + ton "" ("base", "narrow", "base", "mid", xpos=345, ypos="base", flip=False, trans=morph) + pause .2 + + cho "" ("horny", "base", "base", "L", cheeks="heavy_blush") + call ctc + + ton "Miss Granger's clit is quite sensitive... Who could have guessed?" ("grin", "narrow", "raised", "mid") + gen "Noted." ("grin", xpos="far_left", ypos="head") + ton "You'll do good to memorize this as well, Miss Chang. That knowledge might come in handy in the future." ("soft", "narrow", "base", "L") + cho "..." ("smile", "narrow", "base", "down", cheeks="heavy_blush") # blushing + ton "Well then... this should be enough to last me for the day... Hopefully..." ("grin", "narrow", "base", "mid") + + # Reset + $ hermione_name = temp_name + + # End Event. + jump cc_pf_strip_T3_tonks.end_event + + + +## End Event ## +label .end_event: + + # Fade to black. + call play_music("stop") + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + + # The girls get dressed and wait at the door. + $ cho.wear("all") + $ tonks.wear("all") + $ hermione.wear("all") + + # Reset zorder. + $ cho.zorder = 15 # reset to default. + $ tonks.zorder = 15 # reset to default. + $ hermione.zorder = 15 # reset to default. + $ cho_chibi.zorder = 3 # reset to default. + $ tonks_chibi.zorder = 3 # reset to default. + $ hermione_chibi.zorder = 3 # reset to default. + hide screen cho_cloth_pile + + call cho_chibi("stand", 690, "base", flip=False) + call ton_chibi("stand", "door", "base", flip=False) + + call play_sound("climb_desk") + pause 2 + + hide screen blkfade + with d5 + pause .5 + + call bld + if game.daytime: + ton "We should get going, Miss Chang. Classes are about to start..." ("open", "base", "base", "L", ypos="head", flip=False) + cho "Until next time, Professor." ("grin", "base", "base", "mid", ypos="head", flip=False) + else: + ton "Let me escort you back to your dormitories, Miss Chang." ("open", "base", "base", "L", ypos="head", flip=False) + cho "Good night, Professor." ("grin", "base", "base", "mid", ypos="head", flip=False) + + call bld("hide") + pause .1 + + # They both leave. + call cho_chibi(flip=True) + pause .3 + call ton_chibi(flip=True) + with d3 + pause .2 + + call play_sound("door") + hide screen cho_chibi + hide screen tonks_chibi + with d3 + pause .5 + + # Reset clothing. + $ cho.equip(cho_outfit_last) + $ tonks.equip(ton_outfit_last) + $ hermione.equip(her_outfit_last) + + $ tonks_busy = True + + # End event. + jump end_cho_strip_event + + + + + + +############## +### Tier 4 ### +############## + +## Tier 4 - Summon Tonks ## + + +## Transformations ## + +## Succubus - Tier 4 ## +#label cc_pf_strip_T4_tonks.succubus_E1: +# gen "Tell me, Miss Tonks." ("base", xpos="far_left", ypos="head") +# gen "Are you one of these Succubbi that like to hunt virgins?" ("grin", xpos="far_left", ypos="head") +# ton "*Ha-ha-ha*... Where did you hear that?" # cracks up. +# gen "I've read it in a-- *uhm*...{w=0.5} in a book." ("base", xpos="far_left", ypos="head") +# gen "If you're a virgin by the age of forty and one visits you, you might end up lucky!" ("base", xpos="far_left", ypos="head") +# cho "Lucky... how?" +# ton "I don't know... I'd have to do some research on that..." +# ton "I was sure I knew everything there was to know about succubi..." +# gen "I suppose you might not be sophisticated enough to appreciate fine arts..." ("base", xpos="far_left", ypos="head") +# ton "*Hmm*... Then perhaps It'd be worth covering during one of my lesson." #looking at cho +# ton "Although I'd have to borrow that book of yours." + +## Hermione - Tier 4 ## +#label cc_pf_strip_T4_tonks.hermione_E1: + ton "Move aside, Chang!" # angry + ton "The headmaster wants me to strip for him." + gen "That's right, Miss Granger." ("grin", xpos="far_left", ypos="head") + cho "..." + +# gen "Seeing that she was being groped for the better part of it." ("grin", xpos="far_left", ypos="head") +# cho "Groped?-- What?" # confused +# gen "I her while she had to announce those points. It was quite funny!" ("grin", xpos="far_left", ypos="head") +# cho "You were molesting her, in front of everybody?" +# gen "I molested her -- with her consent!...{w} {size=-6}more or less.{/size}{w=0.3}{nw}" ("angry", xpos="far_left", ypos="head") +# gen "She practicly begged me to continue." ("base", xpos="far_left", ypos="head") +# ton "Was it that obvious, Professor?" +# ton "I loved the way you fingered my pussy in front of everybody. {heart}" +# cho "Merlin's beard, you're such a slut..." # judgemental + + + # Hermione stands in the middle, between Genie and Cho. + + ton "Professor, how many house points may I get for this shameless act you're asking me to do?" + gen "You're requesting house points for this, Miss Granger?" ("grin", xpos="far_left", ypos="head") + ton "Naturally." + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + menu: + "You shall receive five points.": + ton "Only so little, Professor?" + ton "Surely revealing my tits must be worth a lot more to you than that..." + gen "Five points, Miss Granger. And I demand to see a lot more than just your tits!" ("grin", xpos="far_left", ypos="head") + cho "..." ("smile", "narrow", "base", "mid", cheeks="blush") + ton "So be it then..." + ton "I'll do anything for my precious Gryffindor house!" + gen "Five points for Gryffindor, Miss Granger!" ("grin", xpos="far_left", ypos="head") + $ gryffindor += 5 + gen "Now strip for us, you little slut." ("angry", xpos="far_left", ypos="head") + + "You shall receive one hundred points!": + ton "Seriously?" + cho "Professor, what are you doing?" ("base", "narrow", "base", "mid") + ton "Well, one hundred points seem to be sufficient, Professor..." + cho "..." ("base", "narrow", "base", "mid") + ton "I'd gladly bare my tits for that amount." + gen "Not just your tits, Miss Granger!" ("grin", xpos="far_left", ypos="head") + ton "Anything for you, Sir." + cho "I don't want Granger to get points from this! She isn't even here..." ("base", "narrow", "base", "mid") + gen "Didn't you say you don't give a flying fuck about the house cup?" ("base", xpos="far_left", ypos="head") + ton "*snort*... You said what?" + cho "I didn't say it like that!" ("base", "narrow", "base", "mid") + ton "*shsss*, Professor.{w=0.5} Just mumble a bit when giving out those points..." + gen "Very well, then..." ("base", xpos="far_left", ypos="head") + gen "One hundret points for this Gryffin-whore!" ("grin", xpos="far_left", ypos="head") + cho "*Ha-ha*!" ("base", "narrow", "base", "mid") + ton "Thank you, Sir." + ton "I know I deserve those Gryffin-whore points more than anyone!" + ton "I'm the biggest slut in all of Hogwarts!" + + "No points for you, Granger.": + ton "What? But Professor!" + ton "You're asking me to expose myself for you, without getting any of those precious house points?" + ton "How outragious!" + gen "Cho isn't asking for points either, Miss Granger. I'd say it's quite fair if you receive none as well..." ("base", xpos="far_left", ypos="head") + ton "Well, I'm not a slag like Miss Chang here... Who loves stripping for her headmaster!" + cho "Hey!" ("annoyed", "narrow", "angry", "L") + ton "What? It's the truth, isn't it... You slut!" + cho "..." ("annoyed", "narrow", "base", "mid") + cho "Sir, could you ask her to turn back again? She's starting to get on my nerves..." ("open", "narrow", "base", "mid") + gen "Not a chance. She's doing great!" ("grin", xpos="far_left", ypos="head") + cho "A bit too convincing for my likeing..." ("annoyed", "narrow", "base", "L") + ton "..." + ton "Very well, then. I shall undress for you, Professor." + ton "My friends will be so disappointed when they hear I'm doing this for free..." + ton "But I simply can't help it, can I?" + ton "I want to be the biggest slut in all of Hogwarts!" diff --git a/game/scripts/characters/cho/events/favors/suck_it.rpy b/game/scripts/characters/cho/events/favors/suck_it.rpy new file mode 100644 index 00000000..caece1d7 --- /dev/null +++ b/game/scripts/characters/cho/events/favors/suck_it.rpy @@ -0,0 +1,1714 @@ + + +### Cho Blowjob ### + +label cc_pf_blowjob: + + if cc_pf_blowjob.counter == 0: + gen "{size=-4}(Should I ask her for a blowjob?){/size}" ("base", xpos="far_left", ypos="head") + else: + gen "{size=-4}(I should ask her for another blowjob.){/size}" ("base", xpos="far_left", ypos="head") + + if cc_pf_blowjob.counter < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump cho_favor_menu.personal + + # Setup + $ warned_her = False + + $ cc_pf_blowjob.start() + + # End Event Jump + label end_cc_pf_blowjob: + + $ cho.set_cum(None) + + if cho_tier == 3: + if cho_whoring < 15: # Points till 15 + $ cho_whoring += 1 + + jump end_cho_event + +label cc_pf_blowjob_T3_intro_E1: + + if cho_bj_choice == None: + gen "[cho_name], ready to reward your coach for a job well done?" ("base", xpos="far_left", ypos="head") + cho "Of course... a deal's a deal." ("open", "narrow", "base", "mid") + gen "Great, in that case I think a blowjob is in order!" ("base", xpos="far_left", ypos="head") + cho "A blowjob?!!" ("disgust", "wide", "base", "mid") + gen "And some hand action as well of course!" ("base", xpos="far_left", ypos="head") + cho "Sir, I didn't think it'd come to this... I already showed you my naked body and everything..." ("clench", "narrow", "base", "down") + gen "There are other tactics you could use that aren't just about showing off your body in public you know..." ("base", xpos="far_left", ypos="head") + cho "Oh, yeah? Like what?" ("angry", "narrow", "raised", "mid") + gen "Your dream is to become a professional is it not?" ("base", xpos="far_left", ypos="head") + cho "I... yes... I suppose it is." ("soft", "narrow", "base", "R") + gen "Then we should do our best to prepare you for what's out there!" ("base", xpos="far_left", ypos="head") + gen "I won't be your coach forever... Once you're looking for a proper team, you'll be in fierce competition with the other women athletes." ("base", xpos="far_left", ypos="head") + gen "Women that will stop at nothing to get what they want." ("base", xpos="far_left", ypos="head") + gen "So, as your coach, it's my responsibility to prepare you!" ("base", xpos="far_left", ypos="head") + cho "And a blowjob is necessary for this?" ("angry", "narrow", "raised", "mid") + + if cc_pr_spy_girls.is_event_complete(3, 1): + gen "You've seen the girls on the Gryffindor team... you think they would hesitate with something as simple as a blowjob?" ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "closed", "base", "down", cheeks="blush") #Pout + gen "I see how it is..." ("base", xpos="far_left", ypos="head") + gen "I sure didn't think a simple blowjob would dissuade you from pursuing your dreams." ("base", xpos="far_left", ypos="head") + else: + gen "Well... I can tell you this much. A woman looking to make it professionally should have enough confidence not to get stopped by something as simple as a blowjob." ("base", xpos="far_left", ypos="head") + + cho "..." ("normal", "narrow", "base", "downR", cheeks="blush") # angry + cho "Alright, I'll do it..." ("open", "happyCl", "angry", "downR", cheeks="blush") + gen "That's more like it!" ("grin", xpos="far_left", ypos="head") + cho "Don't get me wrong sir... I don't believe a word of what you just said is even remotely true." ("upset", "base", "base", "mid", cheeks="blush") + cho "But you've helped me get this far..." ("annoyed", "narrow", "base", "down", cheeks="blush") + cho "So if a blowjob is what it takes, then so be it..." ("soft", "base", "base", "downR", cheeks="blush") + gen "That's the kind of determination I've been looking for..." ("grin", xpos="far_left", ypos="head") + gen "Let's find out how a skilled Quidditch player handles this type of wood..." ("grin", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "mid") #smile #looks away + cho "Okay, then... I'm ready." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "(At last!)" ("angry", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/zipper.ogg") + hide screen bld1 + hide cho_main + call gen_chibi("jerk_off_behind_desk") + with d5 + + call cho_walk("desk_close", "base") + pause 0.5 + + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("mid_shock") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=1.0, pos=(950, -750), initialize=True) + show screen animatedCG + with fade + + call gen_chibi("sit_behind_desk") # reset + + # Start CG with Cho kneeling in front of Genie. + # Cho is dressed. + + # Note: Cho does not require posing here because it happens during the CG scene. + $ renpy.choice_for_skipping() + + pause 0.5 + $ camera.set(pos=(0, -750), t=3.5, pause=True) + $ camera.set(pos=(150, 400), t=2) + cho "By Merlin's beard!" #Wide eyed looking at dick #open mouth + gen "Something wrong?" + $ camera.set_image("mid_surprised") + cho "N-No...{w=0.4} It's just...{w=0.4} this close...{w=0.4} it's so much larger than--" #Looking at dick + gen "Good, then stop staring and put your hand on it..." + $ camera.set_image("mid_surprised_blush") + cho "Okay..." #Blush #Normal mouth + $ camera.set_imagepath("cho_bj/hj/") + $ camera.set_image("up_worried") + + pause 0.6 + + $ camera.set(zoom=0.5, pos=(100, 100), t=2.0) + #Cho puts her hand on genies dick and looks up at him + + cho "..." #worried eyes + gen "What? Don't tell me this is the first time you've done this..." + $ camera.set_image("away_blush") + cho "O-{w=0.3}of course I've done it before!" + gen "Then get that arm moving, use those muscles!" + $ camera.set_image("up") + cho "..." # annoyed + + $ camera.set_image("cho_hj mid") + + call ctc + + gen "Yes, that's it...{w=0.4} stroke that cock you little Ravenclaw slut..." + + $ camera.set_image("up_annoyed") + + cho "[cho_genie_name]!"# Stops moving hand #Annoyed #Looks up at genie + gen "What?" + gen "You're doing a great job [cho_name], keep it going just like that..." + + $ camera.set_image("mid_annoyed") + + cho "*Hmph*..." #annoyed + + $ camera.set_image("away_blush") + + cho "Fine..." + + $ camera.set_image("cho_hj mid") + + call ctc + + gen "Such a firm grip..." + gen "Must be from riding that broom so much..." + gen "Although your rhythm could do with some work..." + + $ camera.set_image("cho_hj mid annoyed") + + cho "*tsk*..." #Annoyed + + call ctc + + gen "That's better..." + gen "Now then... Let's find out what you can do with that mouth of yours, shall we?" + + $ camera.set_image("up_wide") + + cho "Already?" #Wide eyed + $ camera.set_image("up_worried") + cho "Can't I just keep jerking you off?" + gen "You agreed to a blowjob did you not?" + $ camera.set_image("mid_worried") + cho "I...{w=0.4} well that was before you showed me your..." #Looks back down + $ camera.set_image("away_blush") + cho "How is this even..." #Cuts to dialog Menu choice + else: # Alternate intro if first event has failed + gen "Ready to continue with your training?" ("base", xpos="far_left", ypos="head") + cho "Of course!" ("open", "base", "base", "mid") + gen "Then you know what is required..." ("base", xpos="far_left", ypos="head") + cho "You want me to touch your..." ("soft", "base", "base", "downR", cheeks="blush") + cho "..." ("horny", "closed", "base", "mid", cheeks="blush") + cho "Fine... I'll do it." ("angry", "base", "base", "mid", cheeks="blush") + + hide cho_main + with d3 + + call cho_walk("desk_close", "base") + pause 1.0 + + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("mid_surprised") + $ camera.set(zoom=1.0, pos=(0, -750), initialize=True) + show screen animatedCG + with fade + + $ camera.set(pos=(150, 400), t=2.0, pause=True) + + $ camera.set(zoom=0.5, pos=(100, 100), t=2.0) + cho "Okay... I'm ready." + $ camera.set_image("mid_surprised_blush") + cho "..." #blush + gen "Go on then, I don't have all day..." + $ camera.set_image("mid_blush") + cho "R-Right..." #Pout + $ camera.set_imagepath("cho_bj/hj/") + $ camera.set_image("mid_annoyed") + cho "..." #annoyed + gen "There you go... much easier the second time, isn't it?" + gen "Now, get those muscles moving..." + + $ camera.set_image("cho_hj mid") + call ctc + + gen "That's it... you keep stroking, slut..." + + $ camera.set_image("cho_hj mid annoyed") + cho "*Hmph*..." #Annoyed + + call ctc + + gen "Good..." + gen "You're doing way better than last time... Perhaps you've had some time to think things over?" + + $ camera.set_image("cho_hj mid") + + call ctc + + cho "..." + + gen "I take that as a yes... So, let's put that mouth to good use then, shall we?" + + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("up_shock") + + cho "Already?" + gen "No, tomorrow... yes of course now!" + $ camera.set_image("mid_worried") + cho "Can't I just keep jerking you off?" #pout + gen "This again..." + + jump cc_pf_blowjob_1 + +label cc_pf_blowjob_1: + menu: + "-A deal's a deal...-": # FAIL + gen "That's not what we agreed on." + gen "Get those lips on there..." + + if cho_bj_choice == None: + $ camera.set_image("up_wide") + else: + $ camera.set_image("up_worried") + + cho "[cho_genie_name]!" #shocked + gen "It's time to push those limits [cho_name]... we've been over this." + gen "Open up..." + + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("mid_annoyed") + + cho "But... it's... how is it even going to fit?!" + $ camera.set_image("mid") + gen "It will fit... You're the most flexible girl in the castle." + gen "If anyone could do it, it's you..." + cho "..." + gen "Now, put your hand back..." + $ camera.set_image("mid_worried") + cho "..." + cho "Al-Alright...!" + $ camera.set_imagepath("cho_bj/hj/") + $ camera.set_image("up_worried") + #Cho puts her hand back on + gen "Good... now put your lips around the tip..." + + $ camera.set_image("away_blush") + cho "Oh-okay..." + cho "(You can do this... push your boundaries!)" + cho "He-here I go..." + + #Cho opens her mouth and moves in towards genies cock #Genie cock twitches + #She moves in closer and closes her eyes with her mouth wide open and just as she barely touches it she jumps back + $ camera.set_image("cho_bj lick fail") + pause 1 # Pauses at last frame. + cho "No, I can't... I can't do it!" + + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("mid_annoyed") + + if cho_bj_choice == "failed": + cho "It still won't fit!" + gen "[cho_name]... You're here to push your limits, stop with the whining!" + $ camera.set_image("up_worried") + cho "I-I'm sorry [cho_genie_name]..." + cho "I... I can't...{w=0.4} It's all happening too fast!" + gen "[cho_name]..." + $ camera.set_image("mid_worried") + cho "I'm sorry!" #blush, looking away + $ cho_mood += 3 # Annoyed that you failed it again, sucker + else: + cho "It won't fit!" + gen "[cho_name]... You're here to push your limits." + $ camera.set_image("up_worried") + cho "I-I'm sorry [cho_genie_name]..." + cho "I... need some time to think..." + gen "[cho_name]..." + $ camera.set_image("mid_worried") + cho "I'm sorry!" #blush, looking away + + # Genie standing with his dick out, all alone, blue balled, all aloooooooone + call gen_chibi("dick_out", 230, "base") + + hide screen animatedCG + with fade + + #Cuts to Office and Cho walks quickly out of the room + call cho_walk(action="leave") + + gen "(Damn...{w=0.4} Am I that type of coach that keep pushing their pupils too hard?)" ("base", xpos="far_left", ypos="head") + gen "(Speaking of hard, this thing isn't going to go away by itself...)" ("base", xpos="far_left", ypos="head") + gen "(Well... if there's anything I got good at in that lamp...)" ("base", xpos="far_left", ypos="head") + if cho_bj_choice == "failed": + gen "(Perhaps I should go a bit more easy on her next time...)" ("base", xpos="far_left", ypos="head") + + $ cc_pf_blowjob.fail() + $ cho_bj_choice = "failed" + + call gen_chibi("sit_behind_desk") + with fade + + jump end_cho_event + + "-Take it slow...-": #Cho strokes and licks genie then goes back to stroking until climax + gen "Okay... just keep stroking it for now..." + + if cho_bj_choice == None: + $ camera.set_imagepath("cho_bj/hj/") + $ camera.set_image("up_wide") + cho "Oh... Okay, I can do that..." + gen "But you better put some work into it!" + $ camera.set_image("mid") + else: + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("up") + cho "Oh... Okay, I can do that..." + gen "But you better put some work into it, show me that stamina of yours!" #Should I use a different word than stamina? Works well I think. + $ camera.set_image("mid") + + cho "Of course!" + $ camera.set_imagepath("cho_bj/hj/") + $ camera.set_image("mid_blush") + cho "(I'll show you my stamina, alright!)" #Blushing + + $ camera.set_image("cho_hj mid") + + call ctc + + gen "*Ah*...{w=0.3} That's it... you're finally getting the hang of this." + gen "You should've told me Quidditch players were this good at handjobs sooner." + + $ camera.set_image("cho_hj up blush") + cho "..." #Looks up at genie #Blushes + + call ctc + + gen "And... look at you... stroking your coach's cock..." + + $ camera.set_image("cho_hj mid blush") + + cho "..."#Looks back down at cock #still stroking + + call ctc + + gen "Willing to do anything to win that cup..." + + $ camera.set_image("cho_hj mid") + + gen "Begging to receive her coach's cum." + gen "Now, put your mouth on it [cho_name]..." + $ camera.set_image("up_wide") + #Cho stops handjob + cho "But I thought..." + gen "If you want to outdo your competition then you need to push through your limits [cho_name]..." + $ camera.set_image("up_worried") + gen "Give it a little lick, I promise it won't bite." + cho "..." #Annoyed + $ camera.set_image("away_blush") + cho "Fine..." #Blushes #Annoyed + $ camera.set_image("cho_bj lick success") + pause 1.5 + gen "See? That wasn't bad, was it?" + $ camera.set_image("up_annoyed") + cho "I--..." # Grim look at Genie + $ camera.set_image("mid") + cho "(I guess not...)" #Looks back on cock + gen "Go on..." + $ camera.set_image("mid_annoyed") + cho "Fine!" #annoyed + $ camera.set_image("mid_worried") + cho "..." #Worried + $ camera.set_image("cho_bj lick start") + pause .7 + $ camera.set_image("cho_bj lick") + cho "*lick-slurp-lick*" + + call ctc + + gen "*Ah* Good job [cho_name]..." + gen "I suppose that will be enough for n--" + $ camera.set_image("up_annoyed", trans=d3) + cho "No! I want--" + $ camera.set_image("away_blush") + cho "I mean... {w=0.5} you deserve your reward [cho_genie_name]." + cho "At least let me finish you off with my hand..." + $ camera.set_image("mid_blush") + gen "That's what I wanted to hear [cho_name], you're learning..." + gen "Get going then..." + + $ camera.set_image("cho_hj mid blush") + + call ctc + + gen "*Hmm*... That's it, grip it firmly just like that..." + + call ctc + + gen "*Ah*...{w=0.4} Not bad... Not bad at all..." + gen "Now... a little bit faster [cho_name]..." + gen "I think you too deserve a reward..." + + $ camera.set_image("cho_hj mid blush fast") + + cho "Okay..." #Blush + + $ camera.set_image("cho_hj up blush") + cho "[cho_genie_name]... Will you tell me when--" + gen "Faster [cho_name]!" + cho "Oh... of course!" + + $ camera.set_image("cho_hj mid blush fast") + call ctc + + gen "(Now that's my [cho_name]!)" + gen "(I'm at my limit, should I warn her?)" + + menu: + "-Warn her-": + $ warned_her = True + + gen "That's it, almost there...!" + + call ctc + + gen "Get ready for your reward [cho_name]!" + menu: + "-Cum on her face-": + $ camera.set(zoom=0.45, pos=(150, 70), t=2.0) + gen "*ARGH*!" + + with vpunch + $ camera.set_image("cho_hj cum face") + pause 1.42 + $ camera.set_image("cum") # Still image + + call ctc + + gen "*Ah*..." + cho "Are...{w=0.5} are you done?" + gen "*Ah*...{w=0.4} yes, you can open your eyes now..." + + $ camera.set_image("cum_eye") + + cho "..." #Opens eyes + + $ camera.set_image("cum_eye_blush") + + cho "So...{w=0.4} much..." #blush + + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("cum_eye") + + #Cho takes hand off penis and puts to her side + cho "And so sticky..." #blush + + $ camera.set(zoom=0.6, pos=(220, 180), t=5.0, pause=True) + + # Set cum on doll + $ cho.set_cum(face="heavy", hair="light") + + "-Cum on her tits-": + gen "Get back a little, quick!" + + $ camera.set_image("away", trans=d3) + $ camera.set(zoom=0.45, pos=(150, 70), t=1.0) + + gen "*ARGH!* Here it comes, you slut!" + + with vpunch + $ camera.set_image("cho_hj cum tits") + + pause 2 + $ camera.set_image("cum_tits") + + call ctc + + gen "*Ah*..." + + $ camera.set_image("look_cum_tits") + + cho "You..." #Looks down on breasts + cho "My breasts..." + + $ camera.set_image("look_blush_cum_tits") + + cho "So much..." #blush + + gen "That...{w=0.4} was...{w=0.4} amazing!" + gen "That is some talent you have there [cho_name]..." + + $ camera.set_image("dreamy_cum_tits") + + cho "...{heart}{heart}" #blush #looking at penis + gen "[cho_name]?" + + $ camera.set_image("dreamy_up_cum_tits") + + cho "Oh... Thank you [cho_genie_name]." #looks up at genie + gen "Now, get on your feet and let me have a proper look at you..." + + $ camera.set(zoom=0.6, pos=(220, 180), t=5.0, pause=True) + #Cuts back to office screen (sound of cloth etc as genie puts dick away and Cho moves) + # Set cum on doll + $ cho.set_cum(breasts="heavy") + + "-Don't-": + $ warned_her = False + $ cho_mood += 4 + + gen "(You better be ready slut...)" + + $ camera.set_image("cho_hj up blush") + + cho "[cho_genie_name], are you about to--" + + gen "*ARGH*!" + + $ camera.set_image("cho_hj mid") + $ camera.set(zoom=0.45, pos=(150, 70), t=2.0) + cho "*huh*?!" #Wide eyed + + with vpunch + $ camera.set_image("cho_hj cum face tits") + pause 0.9 + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("cum_face_tits") + + call ctc + + gen "*Ah*..." + cho "..." # Wide eyed + cho "M-{w=0.3}my face!" #Angry + cho "You just came on my face!" + gen "*Ahh* At last..." + + $ camera.set_image("cum_face_tits_glance", trans=d3) + + $ camera.set(zoom=0.6, pos=(220, 180), t=5.0, pause=True) + + #Cuts back to office screen (sound of cloth etc as genie puts dick away and Cho moves) + # Set cum on doll + $ cho.set_cum(face="heavy", hair="light", breasts="heavy") + + hide screen animatedCG + with fade + + # After CG, in the office. + + if warned_her: + gen "Well done [cho_name], you've started pushing those limits on your own." ("base", xpos="far_left", ypos="head") + gen "Also, You've got a little something right there..." ("base", xpos="far_left", ypos="head") + cho "Very funny [cho_genie_name]..." ("clench", "narrow", "base", "mid", cheeks="blush", trans=d3) + gen "Your confidence is showing itself more and more every day." ("base", xpos="far_left", ypos="head") + cho "I... {w=0.5} You deserved it [cho_genie_name]...{w=0.5} for helping me this far..." ("upset", "narrow", "base", "downR", cheeks="blush") + cho "For teaching me... all this stuff..." ("angry", "closed", "base", "mid", cheeks="blush") #Blush + gen "(I'm a bloody saint I've waited that long...)" ("base", xpos="far_left", ypos="head") + gen "You're very welcome." ("base", xpos="far_left", ypos="head") + else: + gen "That...{w=0.4} was...{w=0.4} amazing!" + cho "Why didn't you warn me?!" ("clench", "base", "angry", "down", trans=d3) #Angry + # cho "My clothes are all ruined now too..." ("angry", "closed", "angry", "mid") + # cho "There's cum all over them!" ("mad", "narrow", "angry", "down") + cho "I can't believe you just came all over me like that..." ("annoyed", "base", "angry", "downR", cheeks="blush") #pout + gen "Should have put it in your mouth then..." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "mid", cheeks="blush") #pout + + cho "Is this what you do to Hermione as well?" ("upset", "narrow", "base", "down", cheeks="blush") + + if hg_kiss.trigger: + gen "Maybe." ("base", xpos="far_left", ypos="head") + cho "I knew it..." ("smile", "wide", "base", "mid", cheeks="blush") + gen "Miss Granger knows how to properly dispose--" ("base", xpos="far_left", ypos="head") + cho "She swallows?!?" ("clench", "wide", "base", "mid", cheeks="blush") #Shocked #Big text + cho "I mean..." ("disgust", "base", "base", "downR", cheeks="blush") + cho "Of course she does..." ("angry", "base", "base", "down", cheeks="blush") #small text #Blush + else: + gen "Of course not..." ("base", xpos="far_left", ypos="head") + cho "I knew--" ("smile", "happyCl", "base", "mid", cheeks="blush") + cho "Wait, she doesn't do stuff like that?" ("clench", "narrow", "base", "mid", cheeks="blush") + gen "No." ("base", xpos="far_left", ypos="head") + cho "So I am your first?" ("smile", "narrow", "base", "downR", cheeks="blush") # blush + gen "In one way or the other." ("base", xpos="far_left", ypos="head") + cho "What's that supposed to mean?!" ("upset", "base", "angry", "mid", cheeks="blush") # angry + cho "Whatever..." ("annoyed", "base", "angry", "R", cheeks="blush") # pout + + cho "Are you...{w=0.4} Are we done?" ("open", "narrow", "base", "downR", cheeks="blush") #Blush + gen "Yes, for now..." ("base", xpos="far_left", ypos="head") + + if game.daytime: + cho "Alright... In that case I better head back to class." ("open", "base", "base", "R") + else: + cho "Alright... I'll head off to bed then." ("open", "base", "base", "R") + gen "Until next time." ("base", xpos="far_left", ypos="head") + + call cho_walk(action="leave") + + gen "[cho_name]!" ("base", xpos="far_left", ypos="head") + gen "......" ("base", xpos="far_left", ypos="head") + gen "(Probably should've asked her to clean herself first...)" ("base", xpos="far_left", ypos="head") + gen "(Oh well, she'll find out one way or another.)" ("base", xpos="far_left", ypos="head") + + jump end_cc_pf_blowjob + +label cc_pf_blowjob_T3_E2: + gen "Ready for an oral exam [cho_name]?" ("base", xpos="far_left", ypos="head") + cho "A what?" ("open", "base", "raised", "mid") + gen "Time to put that mouth to good use..." ("base", xpos="far_left", ypos="head") + cho "My mouth to--" ("horny", "base", "base", "downR", cheeks="heavy_blush") #Blush + gen "Any problems?" ("base", xpos="far_left", ypos="head") + cho "No... of course not [cho_genie_name]..." ("normal", "base", "base", "mid", cheeks="blush") + gen "Excellent!" ("base", xpos="far_left", ypos="head") + cho "Just...{w=0.4} tell me what to do [cho_genie_name]..." ("open", "base", "base", "R", cheeks="blush") + + call cho_walk("desk_close", "base") + pause 1.0 + + # Start CG with Cho kneeling in front of Genie. + # Cho is dressed. + + # Note: Cho does not require posing here because it happens during the CG scene. + + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("mid") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=1.0, pos=(150, 400), initialize=True) + show screen animatedCG + with fade + + $ camera.set(zoom=0.5, pos=(100, 100), t=2.0) + + gen "..." + cho "..." #looking at dick + gen "Go on then..." + + $ camera.set_image("mid_blush") + + cho "Of course..." #Blush + #Cho puts hand on genies dick + + $ camera.set_imagepath("cho_bj/hj/") + $ camera.set_image("mid_blush") + + gen "Just start with some stroking like you did before..." + + $ camera.set_image("up_blush") + + cho "Yes, [cho_genie_name]..." + + $ camera.set_image("cho_hj mid") + + call ctc + + gen "That's it... stroke your coach's cock..." + gen "Good...{w=0.5} back and forth...{w=0.5} just like I taught you..." + + $ camera.set_image("cho_hj mid blush") + + cho "(He's so big...)" #Blushes + + gen "Very good... Now take that shirt off for me will you..." + + $ camera.set_image("away_blush") + + cho "Okay..." #Blushes #moves back to base position + #Takes off shirt + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ camera.set_image("topless_mid", trans=Fade(0.5, 2.0, 0.5)) + + gen "Excellent... Now continue stroking, [cho_name]." + + $ camera.set_image("topless_up") + + cho "Alright..." + #Resumes handjob + + $ camera.set_image("cho_hj topless mid") + + call ctc + + cho "......." + cho "(I'm actually doing this...)" + cho "(I'm stroking my coach's hard cock, just so I can win the quidditch cup...)" + cho "(But...{w=0.4} If this is what it takes...{w=0.3} Then so be it!)" + cho "(It won't be long until I have that cup in my hands...)" + + $ camera.set_image("cho_hj topless mid smile") + + cho "(I can already taste the victory!)" + + gen "You're being awfully quiet [cho_name]... it's very unlike you..." + + $ camera.set_image("topless_away_blush") + + cho "S-Sorry [cho_genie_name]..." + + $ camera.set_image("topless_up_worried") + + cho "It's just...{w=0.4} I just keep thinking...{w=0.4} how without your help I would've been out of the competition by now..." + gen "(And without your help I'd be sitting here with a limp dick right about now.)" + + $ camera.set_image("topless_away_blush") + + cho "I...{w=0.4} I'm sorry I doubted your methods at first [cho_genie_name]..." + gen "I knew you'd come around..." + + $ camera.set_image("topless_up_blush") + + cho "{heart}" + + $ camera.set_image("topless_mid_blush") + + cho "I'm just glad that there was some small way for me to repay you..." #looks at genies dick + + $ camera.set_image("cho_hj topless mid smile") + + gen "*Ah*... yes of course... It's nothing really." + + call ctc + + $ camera.set_image("cho_hj topless up blush") + + cho "Oh please..." + cho "Pleasuring you is little to nothing compared to what you've done for me so far..." + + $ camera.set_image("cho_hj topless mid smile") + + cho "Giving you a bit of a reward is the least I could do..." #Blush + + $ camera.set_image("cho_hj topless mid smile fast") + + gen "(*Argh*.. At this rate she'll make me bust!)" + + call ctc + + gen "Now you're getting into it..." + gen "Speaking of...{w=0.2} Time to put that mouth to work..." + + $ camera.set_image("topless_up_worried") + + cho "Already?" + gen "Not this again." + gen "Didn't you say you wanted to {i}reward{/i} me a second ago?" + + $ camera.set_image("topless_away_blush") + + cho "Sorry, you're right [cho_genie_name]..." + cho "Just...{w=0.4} Tell me what to do..." #blush + + $ camera.set_image("topless_mid") + + gen "Start by putting those lips around the tip, then slowly work your mouth further down the shaft..." + + $ camera.set_image("topless_up") + + cho "I...{w=0.4} Yes, [cho_genie_name]..." #Looks at genie + + $ camera.set_image("topless_mid_blush") + + cho "..." #blush + cho "Here it goes..." + + #$ camera.set_imagepath("cho_bj/bj/") + $ camera.set_image("cho_bj topless suck closed success") + pause 5.1 + + #Cho closes her eyes as she moves in, her mouth spreading open as she works it around the tip of genies penis + #Once her mouth worked past the tip she pulls out and open her eyes, looking up at genie + + $ camera.set_image("topless_up") + + cho "How...{w=0.4} how was that [cho_genie_name]?" + gen "Good start, but you shouldn't close your eyes... And keep going until you find your limit, then hold it there for a bit..." + gen "The further down the better..." + + $ camera.set_image("topless_mid") + + cho "Okay..." + + $ camera.set_image("cho_bj topless suck closed fail") + pause 0.5 + + gen "Eyes open, [cho_name]..." + + $ camera.set_image("cho_bj topless suck closed fail exit") + cho "Oh!{w=0.4} Sorry [cho_genie_name]!" + + $ camera.set_image("topless_up_blush") + + #Cho opens her eyes and looks at Genies penis." + cho "I'll keep them open..." #small text + + $ camera.set_image("cho_bj topless suck start") + pause 0.8 + $ camera.set_imagepath("cho_bj/bj/") + $ camera.set_image("topless_suck_up") + + cho "*Khow ish dhat*?" + + #Cho goes in again with her eyes open this time, her mouth spreading open as it slowly goes over the tip." + #As her mouth continues past the tip she stops and looks up at genie for some approval but he stays silent, her eyes closes slightly as she resumes by slowly going down further + gen "*Ah*... That's it...{w=0.5} Keep going, [cho_name]!" #This line should auto play as she goes further down + #As she continues further down, her pupils move up a bit more until she hits her gag reflex (slow zoom in effect) + #Quickly retracting she moves her head back and her eyes open again (Loop going backwards fast if animated, zoom effect quickly goes back to normal) + + $ camera.set_image("cho_bj topless suck medium up") + call ctc + $ camera.set_image("cho_bj topless suck closed exit") + pause 3 + + cho "*Gah*...{w=0.4}{nw}" + + $ camera.set_imagepath("cho_bj/hj/") + $ camera.set_image("topless_cough") + + cho "*Cough*{w=0.2} *Cough*" + + $ camera.set_image("topless_mid") + + gen "Easy there girl..." + + $ camera.set_image("topless_up") + + cho "Was...{w=0.4} Was that better, [cho_genie_name]?" #Cho looks up at genie + gen "Excellent!{w=0.3} Although... maybe a bit too far... You barely held it there for a second." + + $ camera.set_image("topless_away_blush") + + cho "Oh... Yes, I thought it might've been..." + gen "(This girl is like a on and off switch...)" + gen "In any case... I think you got it..." + gen "So... Let's get that head bobbing, [cho_name]!" + + $ camera.set_image("topless_away_pout") + + #Cho looks back down at dick + cho "Are...{w=0.4} are you going to cum on me again [cho_genie_name]?" + gen "I wouldn't worry about that yet... just focus on your task..." + + $ camera.set_image("topless_mid") + + cho "... {w=0.5}Okay then..." + #Cho starts jerking genie off again + + $ camera.set_image("cho_hj topless mid") + call ctc + + gen "You'll have to do more than just--" + + $ camera.set_imagepath("cho_bj/bj/") + $ camera.set_image("cho_bj topless suck start") + cho "*oomph*{w=1.0}{nw}" + $ camera.set_image("cho_bj topless suck") + + #Cho moves in and starts sucking genie off properly (Not as deep as she attempted) + + call ctc + + gen "That's more like it... work that tongue..." + + # Cho looks up + $ camera.set_image("cho_bj topless suck medium up") + call ctc + + gen "Fuck yes... you naughty girl..." + + #Cho pulls out and starts jerking genie off slowly + $ camera.set_image("cho_bj topless suck closed exit") + pause 3.0 + $ camera.set_imagepath("cho_bj/hj/") + $ camera.set_image("cho_hj topless up blush") + call ctc + + cho "Am I doing it right, [cho_genie_name]?" + gen "Yes, It feels--" + + $ camera.set_imagepath("cho_bj/bj/") + $ camera.set_image("cho_bj topless lick start") + pause 0.65 + $ camera.set_image("cho_bj topless lick") + + #Cho starts licking the tip a couple of times #looking at dick + gen "*Whoa*!" + + call ctc + + cho "(*huh*... This is just like quidditch, all I have to do is find a good tactic against him. {heart})" #looks up at genie still licking + cho "(Guess he's not immune to his own tricks... {heart})" + + $ camera.set_image("cho_bj topless lick exit") + pause 0.9 + $ camera.set_imagepath("cho_bj/hj/") + $ camera.set_image("topless_up_blush") + + #Cho pulls back and smiles + cho "I can't believe you're making your student suck your cock..." + cho "Surely that's not something a coach should be doing..." + gen "Well, I--" + + $ camera.set_imagepath("cho_bj/bj/") + $ camera.set_image("cho_bj topless suck start") + pause 2.85 + $ camera.set_image("cho_bj topless suck medium up") + + #Blowjob starts again + gen "(Fuck me, this girl is a natural!)" + + call ctc + + gen "You--{w=0.4} you're a fast learner [cho_name]..." + + $ camera.set_image("cho_bj topless suck deep") + + #Faster Blowjob + cho "{heart}{heart}{heart}" + + gen "[cho_name], if you do that-- oh fuck!" + + menu: + "-Warn her-": + gen "[cho_name]... I think..." + gen "There's....{w=0.5} one more thing...{w=0.5} I could teach you today..." + + $ camera.set_image("cho_bj topless suck medium up") + cho ".............?" + + gen "Time to make your coach proud... Get ready!" + + call ctc + + menu: + "\"I'll even give you some house points!\"": + $ cho_bj_choice = "points" + #Cho pulls back + + $ camera.set_image("cho_bj topless suck medium") + + cho "(House points!?)" # angry #Wide eyed #Big text + + + $ camera.set_image("cho_bj topless suck closed exit") + $ camera.set(zoom=0.45, pos=(150, 70), t=1.0) + gen "{cps=5}Fuuuuuuuuu{/cps}--{w=0.5}{nw}" + + with vpunch + $ camera.set_image("cho_hj topless cum face tits") + gen "Fuuuuuuuuu{fast}uck!" + + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("topless_mid_angry_cum_face_tits") + + call ctc + + show screen blkfade + with d5 + + cho "My eye!" #Big text + cho "I got some in my eye!" #Big text + gen "*Ah*...{w=0.4} Why'd you pull back!" + + # Set cum on doll and strip her + $ cho.set_cum(face="heavy", hair="light", breasts="heavy") + $ cho.strip("robe", "top", "bra") + + hide screen animatedCG + hide screen blkfade + with fade + + #Office screen (Cho has cum on her face and tits) + + cho "\"House points\", really?!" ("angry", "base", "angry", "mid", cheeks="blush", trans=d3) + cho "You want me to swallow your semen for house points?!" ("mad", "base", "angry", "mid", cheeks="blush") + gen "The points were just going to be a bonus." ("base", xpos="far_left", ypos="head") + cho "A bonus on top of?" ("open", "base", "angry", "mid", cheeks="blush") + gen "Not having to clean up..." ("base", xpos="far_left", ypos="head") + gen "Although I guess you didn't see it that way since you--" ("base", xpos="far_left", ypos="head") + cho "..." ("clench", "closed", "angry", "mid", cheeks="blush") #Angry + gen "Pulled...{w=0.5} back..." ("base", xpos="far_left", ypos="head") + cho "I'm not selling my body for points!" ("scream", "base", "angry", "mid", cheeks="blush") + gen "Of course..." ("base", xpos="far_left", ypos="head") + cho "I can't believe you..." ("disgust", "base", "angry", "down", cheeks="blush") #Small text + + call cho_walk("door", "base") + + cho "{size=-3}Who does he think I am?{w=0.4} I'm not Hermione!{/size}" ("annoyed", "closed", "angry", "mid", cheeks="blush", flip=True, trans=d3) + gen "[cho_name]." ("base", xpos="far_left", ypos="head") + + call cho_chibi("stand", "door", flip=False) + cho "I don't want to hear any of your excuses [cho_genie_name]!" ("scream", "narrow", "angry", "mid", cheeks="blush", flip=False, trans=d3) + call cho_chibi("stand", "door", flip=True) + hide cho_main + with d5 + gen "At least let m--" ("base", xpos="far_left", ypos="head") + + call cho_walk(action="leave") + $ renpy.play('sounds/door_down.ogg') + with hpunch + + pause 1.0 + gen "..." ("base", xpos="far_left", ypos="head") + pause 0.5 + + call cho_walk(action="enter") + with d5 + + pause 1.0 + + gen "Don't say I didn't try to--" ("base", xpos="far_left", ypos="head") + cho "Shut... up!" ("angry", "base", "angry", "mid", cheeks="blush", trans=d3) + $ renpy.sound.play("sounds/cloth_sound2.ogg") + $ cho.wear("all") + with fade + + pause 1.0 + call cho_walk("door", "base") + call cho_walk(action="leave") + $ renpy.play('sounds/door_down.ogg') + with hpunch + + gen "..." ("base", xpos="far_left", ypos="head") + gen "(She'll get over it...)" ("base", xpos="far_left", ypos="head") + gen "(I think.)" ("base", xpos="far_left", ypos="head") + + $ cho_mood += 12 + + "\"Taste that cum in your mouth!\"": + $ cho_bj_choice = "taste" + + cho "(T-taste?! But... We never discussed this!)" + + $ camera.set_image("cho_bj topless suck medium up") + cho "*Mhmmmm Mmhmmmm*!" + + #Cho stops for a second to consider and then starts going again + call ctc + + gen "*ah* That's it [cho_name]!" + + $ camera.set_image("cho_bj topless suck closed") + + cho "(Oh god...)" #blush + gen "Here it comes!" + + $ camera.set_image("cho_bj topless suck medium") + + cho "(No, wait!)" + cho "*Mmmmmhmmm*!!!" + gen "{size=+4}*ARGH!*{/size}" + + with vpunch + $ camera.set_image("cho_bj topless cum mouth") + + $ camera.set(zoom=0.45, pos=(150, 70), t=1.0) + pause 2 + + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("topless_mid_cum_mouth") + + call ctc + + $ camera.set_image("topless_mid_surprised_cum_mouth") + + #Cho opens her mouth and lets the cum dribble out + cho "*sho*...{w=0.4} *sho mush*...." + + $ camera.set_image("topless_away_blush_cum_mouth") + + cho "(Although...{w=0.4} it doesn't taste as bad as I--)" + gen "Nicely done [cho_name], I knew you'd have it in you!" + + # Make her lisp the name, if the name is unsupported fallback and replace 's' occurences with 'sh' + $ _replacement_names = { + "master": "mashter", + "daddy": "dhadhy", + "old man": "oldh mhan", + "professor": "phrofeshor", + "coach": "choach" + } + + $ _name = cho_genie_name.replace(cho_genie_name, _replacement_names.get(cho_genie_name, cho_genie_name.replace("s", "sh"))) + + $ camera.set_image("topless_up_cum_mouth") + + cho "*phank you, [_name]*" + gen "Didn't your parents teach you to not speak with your mouth full?" + + $ camera.set_image("topless_away_blush_cum_mouth") + + cho "............" + gen "Now, get on your feet so I can have a look at you..." + + # Set cum on doll and strip her + $ cho.set_cum(face="light") + $ cho.strip("robe", "top", "bra") + + hide screen animatedCG + with fade + + # TODO: Add Cho doll flip when at door etc, cum layers + #Cho has no shirt, cum on her face and down her tits + + gen "Well, will you look at that... You look great with a fresh coat of paint!" ("base", xpos="far_left", ypos="head") + cho "Did you have to cum this much..." ("disgust", "narrow", "base", "down", cheeks="blush", trans=d3) + gen "I can't exactly control it..." ("base", xpos="far_left", ypos="head") + gen "If you don't swallow, you'll have to deal with the mess." ("base", xpos="far_left", ypos="head") + cho "Swallow [cho_genie_name]'s--" ("upset", "base", "base", "downR", cheeks="blush") #Blush + cho "I don't know..." ("soft", "narrow", "base", "downR", cheeks="blush") #Blush + gen "In any case, you've excelled today [cho_name]." ("base", xpos="far_left", ypos="head") + cho "I think I need to lie down for a bit..." ("open", "narrow", "base", "down", cheeks="blush") + cho "This was exhausting...{w=0.4} Even for me." ("open", "narrow", "base", "mid", cheeks="blush") + if hg_kiss.trigger: + cho "I don't know how Granger could do this for so long." ("soft", "narrow", "base", "down") + gen "(*Heh*, practice makes perfect...)" ("grin", xpos="far_left", ypos="head") + + if game.daytime: + gen "No time for a lie down I'm afraid..." ("base", xpos="far_left", ypos="head") + cho "What, don't tell me you're already--" ("clench", "wide", "base", "mid", cheeks="blush") + gen "You've got class to get to." ("base", xpos="far_left", ypos="head") + cho "Oh...{w=0.4} Right..." ("open", "base", "base", "down", cheeks="blush") + cho "Good day then..." ("soft", "base", "base", "mid", cheeks="blush") + else: + gen "A lie down you say..." ("base", xpos="far_left", ypos="head") + cho "Don't you get any ideas..." ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "I most certainly was not!" ("base", xpos="far_left", ypos="head") + cho "Yeah right." ("annoyed", "base", "base", "R", cheeks="blush") + gen "{size=-4}Pervert...{/size}" ("base", xpos="far_left", ypos="head") + gen "Well, you've earnt a lie down I suppose..." ("base", xpos="far_left", ypos="head") + cho "Good night then..." ("open", "narrow", "base", "mid") + gen "Good night, [cho_name]." ("base", xpos="far_left", ypos="head") + + call cho_walk("mid", "base") + gen "[cho_name]!" ("base", xpos="far_left", ypos="head") + + call cho_chibi("stand", "mid", "base", flip=False) + + cho "Yes [cho_genie_name]?" ("open", "base", "raised", "mid", trans=d3) + gen "Your top..." ("base", xpos="far_left", ypos="head") + cho "Oh... Of course!" ("clench", "happyCl", "base", "mid", cheeks="blush") #Blush + + $ renpy.sound.play("sounds/cloth_sound2.ogg") + $ cho.wear("all") + with fade + + cho "..." ("soft", "base", "base", "down", cheeks="blush") #Cho puts on top + cho "Thank you, [cho_genie_name]..." ("open", "base", "base", "downR", cheeks="blush") + + call cho_walk(action="leave") + + gen "...{w=0.5}Silly girl." ("base", xpos="far_left", ypos="head") + #Cho leaves + #End Scene #Marks at completed + + "\"Swallow that cum!\"": + $ cho_bj_choice = "swallow" + + $ camera.set_image("cho_bj topless suck closed exit") + pause 3 + $ camera.set_imagepath("cho_bj/hj/") + $ camera.set_image("topless_up_cringe") + + #Cho's eyes goes wide and pulls out + cho "But [cho_genie_name]--" #Big text + gen "*argh*! Get back there at once or forget about your stupid quidditch cup!" + + $ camera.set_image("topless_away_pout") + + cho "Y-yes, sir!" + $ camera.set_image("topless_mid_angry") + cho "(I'll show this stupid cock... You're not the boss of me!)" + + $ camera.set_imagepath("cho_bj/bj/") + $ camera.set_image("cho_bj topless suck deep start") + pause 2.0 + $ camera.set_image("cho_bj topless suck deep") + + gen "Yeeees, you fucking slut!" + cho "*Mmmmhh* {heart}{heart}" + + call ctc + + gen "Get ready, I'm almost..." + + $ camera.set_image("cho_bj topless suck medium") + + cho "*mhmhm*?!-- (Now?!--)" + + gen "{size=+4}*ARGH*!{/size}" + + with vpunch + $ camera.set_image("cho_bj topless cum swallow") + pause 1 + $ camera.set(zoom=0.45, pos=(150, 70), t=1.0) + pause 1 + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("topless_mid_cum_swallow") + + call ctc + + $ camera.set_image("topless_mid_surprised_cum_swallow") + + cho "I...{w=0.4} I just swallowed..." + cho "My coach's cum..." + gen "Well done, [cho_name], you sucked me dry." + + $ camera.set_image("topless_away_cum_swallow") + + cho "I...{w=0.4} Thanks... I guess." + + # Strip doll (no cum necessary it seems) + $ cho.strip("top", "bra", "robe") + + hide screen animatedCG + with fade + + gen "Now this is the kind of initiative I'm talking about!" ("grin", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "down", cheeks="blush", trans=d3) #blank stare + gen "[cho_name]?" ("base", xpos="far_left", ypos="head") + cho "Yes...{w=0.5} sorry...{w=0.5} thank you [cho_genie_name]." ("angry", "base", "base", "downR", cheeks="blush") + cho "Is that all?" ("soft", "narrow", "base", "down", cheeks="blush") + if game.daytime: + gen "That will be all for today..." ("base", xpos="far_left", ypos="head") + else: + gen "That will be all for tonight..." ("base", xpos="far_left", ypos="head") + cho "Okay, good..." ("angry", "narrow", "base", "down", cheeks="blush") + #Cho walks out of door still without shirt on + call cho_walk(action="leave") + gen "[cho_name]!" ("base", xpos="far_left", ypos="head") + #Cho comes back through the door + call cho_walk(action="enter") + with d5 + + cho "Yes [cho_genie_name]?" ("soft", "base", "base", "mid", cheeks="blush", trans=d3) + gen "..." ("base", xpos="far_left", ypos="head") + cho "Oh, of course!" ("clench", "base", "base", "down", cheeks="blush") #Wide eyed + + #Cho puts on her shirt + $ renpy.sound.play("sounds/cloth_sound2.ogg") + $ cho.wear("all") + with fade + + if game.daytime: + cho "Bye then!" ("open", "happyCl", "base", "downR", cheeks="blush") + else: + cho "Good night then!" ("base", "base", "base", "mid") + + call cho_walk(action="leave") + + gen "(Heh. She's silly... but adorable.)" ("base", xpos="far_left", ypos="head") + gen "(Not the worst of combinations.)" ("base", xpos="far_left", ypos="head") + #Cho leaves + #End Scene #Marks at completed + + "-Just cum down her throat-": + $ cho_bj_choice = "throat" + gen "That did it, you slut!" + + $ camera.set_image("cho_bj topless suck medium up") + + cho "*Hmmf*?" #looks at genie + gen "{size=+4}*ARGH*!{/size}" + + with vpunch + $ camera.set_image("cho_bj topless cum swallow") + + cho "*Mphhhh*!!!{w=1.0}{nw}" + + $ camera.set(zoom=0.45, pos=(150, 70), t=1.0) + + gen "*Ahhh* I needed that..." + + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("topless_mid_cough_cum_swallow") + + cho "*Cough*-*Cough*-...*Ah*...{w=0.4}*Ah*..." + gen "That was awesome... great job--" + + $ camera.set_image("topless_up_angry_cum_swallow") + + cho "What...{w=0.4} the hell...{w=0.4} is wrong with you?!?!" #screen shake + gen "What do you--" + + $ camera.set_image("topless_up_angry2_cum_swallow") + + cho "Why didn't you warn me! I almost choked!" + cho "I never agreed to this--" + gen "It's sort of expected with a blowjob..." + + $ camera.set_image("topless_closed_angry_cum_swallow") + + $ camera.set(zoom=0.6, pos=(220, 180), t=5.0) + + cho "You asshole!" + + show screen blkfade + with d5 + + cho "For a first blowjob?! It is not!" + gen "I mean...{w=0.4} wait did you say first... does that mean you still want to do--" + $ cho.wear("all") + $ renpy.sound.play("sounds/cloth_sound2.ogg") + cho "I can't believe you..." + + hide screen animatedCG + hide screen blkfade + with fade + + #Cut to office screen #Cho has put on her top + gen "As I said, it's kind of expected from the whole blowjob thing..." ("base", xpos="far_left", ypos="head") + cho "You...{w=0.4} you're joking right?" ("clench", "narrow", "angry", "mid", cheeks="blush", trans=d3) + gen "Deadly serious..." ("base", xpos="far_left", ypos="head") + gen "Unless I fancy covering your face that is..." ("base", xpos="far_left", ypos="head") + cho "Unless you--" ("soft", "wide", "angry", "mid", cheeks="blush") #disgust + cho "*Humph*!" ("upset", "base", "angry", "mid", cheeks="blush") + + # Gets upset + $ cho_mood += 12 + + cho "I'm going to go take a shower now if you don't mind!" ("mad", "base", "angry", "mid", cheeks="blush") + gen "You're dismissed [cho_name]." ("base", xpos="far_left", ypos="head") + cho "Good!" ("annoyed", "base", "angry", "mid", cheeks="blush") + call cho_walk("door", "base") + cho "{size=-4}Seriously... just ask first...{/size}" ("disgust", "base", "angry", "down", cheeks="heavy_blush", flip=True, trans=d3) #Small text #Pout #Blush + + call cho_walk(action="leave") + + jump end_cc_pf_blowjob + +label cc_pf_blowjob_T3_E3: + gen "Let's see what that mouth can do." ("base", xpos="far_left", ypos="head") + cho "You want to...{w=0.4} use my mouth again [cho_genie_name]?" ("soft", "narrow", "base", "downR", cheeks="blush") + cho "I guess I could..." ("open", "narrow", "base", "down", cheeks="blush") #Blush #Horny + + if cho_bj_choice == "points": + gen "And this time I won't make the mistake of offering house points..." ("base", xpos="far_left", ypos="head") + cho "You better not." ("annoyed", "narrow", "base", "downR", cheeks="blush") + gen "But my expectations are still the same..." ("base", xpos="far_left", ypos="head") + gen "For you to push your limits on your own..." ("base", xpos="far_left", ypos="head") + cho "So you want me to..." ("soft", "base", "base", "downR", cheeks="blush") + elif cho_bj_choice == "taste": + gen "And if you don't want those clothes dirty you better swallow this time..." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "base", "downR", cheeks="blush") #blush + elif cho_bj_choice == "swallow": + cho "You expect me to swallow again?" ("open", "base", "base", "downR", cheeks="blush") + gen "Of course, that's part of the deal..." ("base", xpos="far_left", ypos="head") + else: # cho_bj_choice == throat - Using `else` as a fallback for degenerates that use cheats + cho "Will you warn me this time?" ("annoyed", "narrow", "base", "downR", cheeks="blush") + gen "Of course..." ("base", xpos="far_left", ypos="head") + + cho "Fine..." ("base", "narrow", "base", "R", cheeks="blush") + gen "Good! And one more thing..." ("base", xpos="far_left", ypos="head") + gen "I expect some dirty talk this time." ("base", xpos="far_left", ypos="head") + cho "Dirty talk, [cho_genie_name]?" ("upset", "base", "raised", "mid", cheeks="blush") #pout + cho "I... If that's what you want..." ("soft", "base", "base", "downR", cheeks="blush") #Blush + gen "Good, then get over here..." ("base", xpos="far_left", ypos="head") + + call cho_walk("desk_close", "base") + pause 1.0 + + # Start CG with Cho kneeling in front of Genie. + # Cho is dressed. + + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("mid") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=0.5, pos=(100, 100), initialize=True) + + show screen animatedCG + with fade + + pause 1 + + $ camera.set_image("up_neutral") + + cho "Did you want me to take my top off again [cho_genie_name]?" + gen "Taking initiative, *huh*? I like it." + + $ camera.set_image("up_smile") + + cho "In that case...{w=0.4} Just relax [cho_genie_name] and I'll take care of you..." + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ camera.set_image("topless_mid_dreamy", trans=Fade(0.5, 2.0, 0.5)) + + #Cho moves up closer + cho "..." + cho "Your--... your cock is so big [cho_genie_name]!" + gen "That's it [cho_name], keep talking just like that..." + gen "Put your hand on it and tell me how it feels..." + + $ camera.set_imagepath("cho_bj/hj/") + $ camera.set_image("topless_mid_dreamy") + + #Cho grabs genies dick + cho "It...{w=0.4} it feels like I'm holding a beater's bat!" + cho "I can't believe how hard it is..." + + #Cho starts jacking genie off #Looking at dick + $ camera.set_image("cho_hj topless mid smile") + + call ctc + + $ camera.set_image("cho_hj topless up blush") + + cho "Do you like it when I stroke your cock, [cho_genie_name]?" #Looks at genie + gen "Very much so!" + cho "*Mhmmm* Good answer. {heart}" + + $ camera.set_image("cho_hj topless mid smile") + + call ctc + + $ camera.set_image("cho_hj topless up blush") + + cho "Although this is far too slow, let's pick up the pace a little..."#Looks at genie + + $ camera.set_image("cho_hj topless mid smile fast") + + gen "*Ahh* You make me proud, [cho_name]...{w=0.3} I've taught you well." + + $ camera.set_image("cho_hj topless up blush") + + cho "Thank you, [cho_genie_name]... it's my pleasure. {heart}" #Worried #Looks at dick + + $ camera.set_image("cho_hj topless mid smile fast") + + gen "*Ahh*...{w=0.3} Pleasure's all mine, [cho_name]." + + call ctc + + $ camera.set_image("cho_hj topless up blush") + + cho "You've been such a help to me, [cho_genie_name]." + + $ camera.set_image("cho_hj topless up blush") + cho "I would never have been able to get this far without you..." + + gen "That's it, [cho_name], keep talking..." + + $ camera.set_image("cho_hj topless mid smile") + + cho "I love how your cock barely fits in my hand..." + cho "And the feeling as it goes in and out of my mouth..." + + $ camera.set_image("cho_hj topless up blush") + + cho "And when it twitches happily... It makes me glad, knowing I am making you feel good..." + + $ camera.set_image("cho_hj topless mid smile") + + cho "The look of pleasure on your face once you cum in my mouth..." + if cho_bj_choice in ("swallow", "throat"): + cho "The sensation of your jizz going down my throat is so..." #Looks at dick + + $ camera.set_image("cho_bj topless lick success") + pause 1 + $ camera.set_image("topless_mid_dreamy") + + "addicting! {heart}{heart}" + elif cho_bj_choice == "points": + cho "To finally feel your jizz slide down my throat, I..." + + $ camera.set_image("cho_bj topless lick success") + pause 1 + $ camera.set_image("topless_mid_dreamy") + + "can't wait! {heart}{heart}" + + else: + cho "And the taste of your jizz is so..." + + $ camera.set_image("cho_bj topless lick success") + pause 1 + $ camera.set_image("topless_mid_dreamy") + + "delicious! {heart}{heart}" + + gen "(If she keeps going like this, I'll blow before an actual blowjob...)" + + $ camera.set_image("topless_up_blush2") + + cho "Will you let me put my lips around it now, [cho_genie_name]?" #Looks at genie + gen "Perhaps..." + + $ camera.set_image("topless_up_worried") + + cho "... Perhaps?" #Looks at genie + gen "Tell me you want it..." + + $ camera.set_image("topless_up_blush2") + + cho "[cho_genie_name]?" + gen "Tell me how badly you want-- no, how badly you {i}need{/i} cock in your mouth." + + $ camera.set_image("topless_up_cringe") + + cho "How badly I n-need...!?" + + $ camera.set_image("topless_away_pout") + + cho "......" + cho "(I-I don't need his cock... I think...)" + + $ camera.set_image("topless_away_blush") + + cho "(But...)" + + $ camera.set_image("topless_mid_dreamy") + + cho "(*Ah* {heart}{heart}{heart})" + gen "Well then?" + + $ camera.set_image("topless_up_wide") + + #Cho stops stroking but still holding genies cock #looking at cock + cho "I...{w=0.4} I want..." + + $ camera.set_image("topless_away_blush") + + cho "I need..." + + $ camera.set_image("topless_mid_dreamy") + + gen "Go on..." + + $ camera.set_image("topless_up_blush2") + + cho "I need your cock in my mouth...{w=0.2} and I need to feel your cum going down my throat..." + gen "(She sure is a quick learner...)" + gen "That's it [cho_name]... Now work that mouth of yours for your reward..." + + $ camera.set_image("topless_mid_dreamy") + + cho "*Ah* Thank you, [cho_genie_name]..." #Blushes + + $ camera.set_image("cho_bj topless suck medium start") + pause 2 + $ camera.set_image("cho_bj topless suck medium") + + call ctc + + gen "*Mhm*... Suck that cock like it's the only thing between you and winning that cup..." + #Cho looks up at genie as she's sucking and starts going faster. + + $ camera.set_image("cho_bj topless suck medium up") + + gen "Your coach will soon reward you for all of your efforts..." + + $ camera.set_image("cho_bj topless suck deep") + + cho "*glick* *glick* *glick*" #Looks back down on cock + gen "*Argh*! You slut, I'm almost there..." + + call ctc + + $ camera.set_image("cho_bj topless suck closed exit") + gen "What--{w=1.0}{nw}" + pause 2.0 + + #Cho suddenly pulls out + $ camera.set_image("cho_hj topless up") + + gen "I didn't say you could--" + cho "Cum for me [cho_genie_name]!" + + $ camera.set_image("cho_hj topless up blush") + + cho "I need to taste your delicious cum down my throat!" + cho "I need to swallow it all!" + + $ camera.set_image("cho_bj topless suck deep start") + pause 1 + $ camera.set_image("cho_bj topless suck deep") + + call ctc + + gen "That's it [cho_name], get ready for your reward." + + $ camera.set_image("cho_bj topless suck medium") + + call ctc + + $ camera.set_image("cho_bj topless suck medium up") + + gen "Open up [cho_name], here it comes!" #large text + gen "*ARGH!*" + + with vpunch + $ camera.set_image("cho_bj topless cum mouth") + pause 0.5 + $ camera.set(zoom=0.45, pos=(150, 70), t=1.0) + pause 1.5 + $ camera.set_imagepath("cho_bj/kneel/") + $ camera.set_image("topless_mid_cum_mouth") + + pause 1 + + gen "*Ah*..." #Genie pulls out + + call ctc + + $ camera.set_image("topless_mid_full_worried2") + + gen "Don't swallow yet!" + + cho "*Mfff*..." #Mouth full + gen "Good... Now play with it with your tongue." + + $ camera.set_image("topless_mid_full_worried") + cho "....{w}......{w}....." + gen "Now you can swallow." + pause 1 + + $ camera.set_image("topless_mid_full_angry") + + pause 1 + call play_sound("gulp") + $ camera.set_image("topless_mid_full_swallowed2", trans=d5) + pause 1.5 + $ camera.set_image("topless_mid_full_swallowed") + + gen "I hope you liked your reward." + gen "Now... On your feet, [cho_name]." + + $ camera.set(zoom=1.0, pos=(300, 400), t=5.0, pause=True) + + # Set cum on doll and strip her + $ cho.set_cum(face="light") + $ cho.strip("robe", "top", "bra") + + hide screen animatedCG + with fade + + if cho_bj_choice in ("taste", "points"): + cho "I...{w=0.4} I did it...{w=0.4} I swallowed your cum [cho_genie_name]." ("base", "happyCl", "base", "mid", cheeks="blush", trans=d3) + gen "As expected." ("base", xpos="far_left", ypos="head") + gen "But an improvement from last time nevertheless..." ("base", xpos="far_left", ypos="head") + cho "Thank you [cho_genie_name]..." ("base", "narrow", "base", "down", cheeks="blush") + elif cho_bj_choice == "swallow": + cho "I...{w=0.4} I hope you liked it [cho_genie_name]." ("base", "narrow", "base", "down", cheeks="blush", trans=d3) + else: # cho_bj_choice == throat - Using `else` as a fallback for degenerates that use cheats + cho "I...{w=0.4} I did it..." ("base", "narrow", "base", "down", cheeks="blush", trans=d3) + gen "And without my help this time." ("base", xpos="far_left", ypos="head") + + cho "Your...{w=0.4} Your cum...{w=0.4} was delicious [cho_genie_name]..." ("soft", "closed", "base", "mid", cheeks="blush") + gen "That's right [cho_name]... and if you keep doing such a good job there's even more where that came from..." ("grin", xpos="far_left", ypos="head") + gen "You can stop talking dirty now." ("base", xpos="far_left", ypos="head") + cho "I wasn't--" ("open", "narrow", "base", "down", cheeks="heavy_blush") #blush, looking right + cho "Yes, [cho_genie_name]..." ("upset", "narrow", "base", "R", cheeks="heavy_blush") + cho "So... Is that all?" ("soft", "narrow", "base", "R", cheeks="blush") + gen "For now..." ("base", xpos="far_left", ypos="head") + cho "Okay then..." ("soft", "base", "base", "mid", cheeks="blush") + + $ renpy.sound.play("sounds/cloth_sound2.ogg") + $ cho.wear("all") + $ cho.set_cum(None) + with fade + + if game.daytime: + cho "In that case I'll head back to class." ("open", "base", "base", "R", cheeks="blush") + else: + cho "I'll head back to my dorms then..." ("base", "base", "base", "mid") + gen "Of course...{w=0.4} you better be ready for next time..." ("base", xpos="far_left", ypos="head") + cho "Next...{w=0.4} yes [cho_genie_name]..." ("horny", "narrow", "base", "down", cheeks="blush") + call cho_walk("door", "base") + cho "(He's so commanding...)" ("horny", "narrow", "base", "R", cheeks="heavy_blush", flip=True, trans=d3) # horny + cho "(No wonder Hermione enjoys it so much...)" ("horny", "closed", "base", "mid", cheeks="heavy_blush") + gen "[cho_name]." ("base", xpos="far_left", ypos="head") + + call cho_chibi("stand", "door", "base", flip=False) + cho "" (flip=False, trans=d5) + + cho "Yes... sorry!" ("mad", "base", "base", "L", cheeks="heavy_blush") #Heavy Blush + cho "Bye then!" ("soft", "happyCl", "base", "mid", cheeks="heavy_blush") #Heavy Blush + + call cho_walk(action="leave") + + pause 1 + + gen "Turns out I'm a better coach than I gave myself credit for." ("base", xpos="far_left", ypos="head") + gen "Time for the next step!" ("grin", xpos="far_left", ypos="head") + + jump end_cc_pf_blowjob diff --git a/game/scripts/characters/cho/events/favors/talk_to_me.rpy b/game/scripts/characters/cho/events/favors/talk_to_me.rpy new file mode 100644 index 00000000..094ed435 --- /dev/null +++ b/game/scripts/characters/cho/events/favors/talk_to_me.rpy @@ -0,0 +1,1760 @@ + + +### Cho Talks ### + +label cc_pf_talk: + + gen "{size=-4}(All I'll do is have an innocent conversation with her...){/size}" ("base", xpos="far_left", ypos="head") + + if cc_pf_talk.counter < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump cho_favor_menu.personal + + # Start Event + $ cc_pf_talk.start() + + # End Event Jump + label end_cho_talk_event: + + if cho_tier == 1: + if cho_whoring < 3: # Points til 3 + $ cho_whoring += 1 + + elif cho_tier == 2: + if cho_whoring < 9: # Points til 9 + $ cho_whoring += 1 + + elif cho_tier == 2: + if cho_whoring < 9: # Points til 9 + $ cho_whoring += 1 + + elif cho_tier == 3: # Points til 15 + if cho_whoring < 15: + $ cho_whoring += 1 + + jump end_cho_event + +### Tier 1 (pre Hufflepuff) ### + +label cc_pf_talk_T1_intro_E1: + gen "Let's have a little chat shall we." ("base", xpos="far_left", ypos="head") + cho "A chat, [cho_genie_name]?" ("open", "base", "raised", "mid") + gen "Just to get to know each other a little bit better." ("grin", xpos="far_left", ypos="head") + cho "Of course, [cho_genie_name]." ("smile", "base", "base", "mid") + gen "First, I'd like you to come a bit closer." ("base", xpos="far_left", ypos="head") + cho "Very well..." ("soft", "base", "base", "R") + + call cho_walk("desk", "base") + call play_music("cho") + cho "" (face="happy", xpos="mid", ypos="base", trans=d3) + call ctc + + cho "What would you like to talk about?" ("soft", "base", "base", "mid") + gen "Do you have a boyfriend, Miss Chang?" ("base", xpos="far_left", ypos="head") + cho "Excuse me?" ("open", "wide", "base", "mid", trans=hpunch) # Shocked + gen "I asked if you have boyfriend. Anybody you fool around with?" ("base", xpos="far_left", ypos="head") + cho "Me? sir? Ha--{w=0.4} hav--{w=0.4} a boyfriend?" ("open", "wide", "base", "R", cheeks="blush") # Reluctant, Embarassed + gen "Or a girlfriend! That would be even better, now that I think about it!" ("grin", xpos="far_left", ypos="head") + cho "Sir that's--{w=0.3} that's not something a headmaster should be concerned about." ("soft", "happyCl", "worried", "L", cheeks="blush") + cho "And I don't see how this information would be of importance for my training." ("open", "wide", "raised", "downR", cheeks="blush") + cho "Why would it matter if--{w=0.5} Even if I did I'd--" ("soft", "wide", "base", "down", cheeks="blush") + gen "So you don't have one?" ("grin", xpos="far_left", ypos="head") + cho "You're making me nervous, [cho_genie_name]. {heart}" ("horny", "narrow", "worried", "R", cheeks="blush") + gen "(So cute.{w=0.5} Perhaps this is something I could push her further on...)" ("base", xpos="far_left", ypos="head") + + cho "Sir, I do not have a boyfriend at the moment." ("soft", "closed", "angry", "mid") + cho "I hope that answers your question." ("annoyed", "narrow", "base", "mid") + gen "So, a girlfriend then?" ("grin", xpos="far_left", ypos="head") + cho "!!!" ("angry", "wide", "raised", "mid", cheeks="blush") + cho "No. Why would you even think that, [cho_genie_name]?!" ("open", "closed", "angry", "mid") + cho "" ("annoyed", "narrow", "angry", "mid") + gen "(She doesn't seem that keen on the subject, perhaps I could tell her...)" ("base", xpos="far_left", ypos="head") + + label .choices: + menu: + "\"It's important to open up to your headmaster.\"": + gen "Emphasis on \"opening up\"..." ("base", xpos="far_left", ypos="head") + cho "I don't think that will be necessary, [cho_genie_name]." ("annoyed", "narrow", "angry", "mid") + gen "There's a lot more to gather from discussing previous life choices than you might think." ("base", xpos="far_left", ypos="head") + gen "You get to learn a lot about the way someone has matured by previous experiences..." ("base", xpos="far_left", ypos="head") + gen "Like a first kiss, who it was with, and so on..." ("base", xpos="far_left", ypos="head") + cho "You think I'm mature?" ("soft", "base", "base", "mid") + gen "(That's what she's focusing on?)" ("angry", xpos="far_left", ypos="head") + gen "*Ahem*, yes.{w=0.5} Of course you are, don't you think so?" ("base", xpos="far_left", ypos="head") + cho "Well, my previous boyfriend didn't seem to think so..." ("open", "base", "raised", "R") + gen "So you did have one?" ("base", xpos="far_left", ypos="head") + cho "*Ugh*{w=0.8} Fine...{w=0.8} I'll tell you about him..." ("soft", "narrow", "base", "down") + + pass + + "\"It's okay if you like girls...\"": + if cho_mood == 0: + $ cho_mood += 1 + gen "Some people prefer to swing the other way..." ("base", xpos="far_left", ypos="head") + cho "What?" ("angry", "wide", "base", "mid") + gen "You know... When you prefer flicking the bean over rubbing a wand..." ("base", xpos="far_left", ypos="head") + cho "*Uhm*, I never said I had a preference either way..." ("quiver", "narrow", "worried", "R") + gen "So you have had a girlfriend?" ("base", xpos="far_left", ypos="head") + cho "I'd rather not talk about it right now..." ("soft", "narrow", "worried", "mid") + gen "(Damn, maybe that's not the way to go about this, maybe instead I could tell her...)" ("base", xpos="far_left", ypos="head") + + jump cc_pf_talk_T1_intro_E1.choices + + "\"In my previous relationships...\"": + if cho_mood == 0: + $ cho_mood += 1 + cho "Sir, I'd rather not hear a boring old tale about any of your old flames..." ("open", "narrow", "base", "R") + gen "Oh they weren't boring at all!" ("grin", xpos="far_left", ypos="head") + cho "*Hmm*?" ("annoyed", "narrow", "base", "mid") + gen "They were very intimate..." ("grin", xpos="far_left", ypos="head") + cho "???" ("annoyed", "base", "raised", "mid") + gen "Very sexual!" ("angry", xpos="far_left", ypos="head") + cho "!!!" ("annoyed", "wide", "base", "mid") + gen "Lots of acrobatic stuff!" ("grin", xpos="far_left", ypos="head") + cho "NO Sir, please!{w=0.5} I don't want to know any of that!" ("scream", "closed", "angry", "mid", trans=hpunch) + cho "(Gross!{w=0.5} Keep it to yourself...)" ("angry", "narrow", "worried", "R") + gen "I just wanted to expand my backstory a little bit...{w=0.5} What's so wrong with that..." ("base", xpos="far_left", ypos="head") + + jump cc_pf_talk_T1_intro_E1.choices + + # Cedric Diggory + cho "Cedric Diggory was my boyfriend during the time Hogwarts was hosting the \"triwizards tournament\"." ("soft", "base", "base", "R") + gen "(They host tournaments here? Interesting...)" ("base", xpos="far_left", ypos="head") + cho "That year was the most fun I've ever had!" ("smile", "base", "base", "mid") + gen "Was he that good?" ("base", xpos="far_left", ypos="head") + cho "What?{w=0.5} No, Sir, not because of him!{w} The tourney, [cho_genie_name]!" ("soft", "narrow", "base", "mid") + gen "Sure..." ("base", xpos="far_left", ypos="head") + cho "We should have it every year if you were to ask me!" ("open", "closed", "base", "mid") + gen "(A cosplay tournament is what this school needs...)" ("grin", xpos="far_left", ypos="head") + cho "Sir that would be great!" ("smile", "narrow", "base", "mid") + gen "(Wait, wait!{w=0.8} A \"nude\" cosplay tournament!{w=0.6} Even better!)" ("angry", xpos="far_left", ypos="head") + gen "(Is it even cosplay if they're naked?)" ("angry", xpos="far_left", ypos="head") + cho "And with new contestants every month! You've got to do this, Sir!" ("smile", "base", "base", "mid") + gen "I'll think about it..." ("base", xpos="far_left", ypos="head") + + gen "Now tell me, how come you two ended up together?" ("base", xpos="far_left", ypos="head") + cho "Oh. Well..." ("soft", "base", "base", "down") + cho "I have this thing for...{w=0.5} athletes." ("horny", "base", "base", "down") + cho "Cedric was the representative champion of our school, so of course I had to date him." ("horny", "base", "worried", "down") + gen "Of course..." ("base", xpos="far_left", ypos="head") + gen "(She's into athletes, who could've guessed...)" ("base", xpos="far_left", ypos="head") + gen "(You should see me, girl. I'm shredded!)" ("angry", xpos="far_left", ypos="head") + gen "(Too bad you can only see the body of that wrinkly old geezer...)" ("base", xpos="far_left", ypos="head") + gen "(Maybe there's like a steroid spell...)" ("base", xpos="far_left", ypos="head") + gen "{size=-4}Plexus Maximus!{/size}" ("angry", xpos="far_left", ypos="head") + cho "Did you say something?" ("soft", "base", "raised", "mid") + gen "Oh, it was nothing... go on." ("base", xpos="far_left", ypos="head") + + cho "Anyway, Cedric even put his life at risk during the whole thing." ("open", "base", "base", "R") + gen "Oh you poor, poor thing..." ("base", xpos="far_left", ypos="head") + gen "I can see why you didn't want to mention him before then..." ("base", xpos="far_left", ypos="head") + cho "Why?" ("soft", "narrow", "raised", "mid") + gen "He surely will be missed." ("base", xpos="far_left", ypos="head") + cho "Sir?" ("angry", "narrow", "base", "mid") + gen "Died just the way he lived...{w} as a plot device." ("base", xpos="far_left", ypos="head") + cho "Sir, Cedric isn't dead." ("open", "narrow", "angry", "mid") + gen "Oh...{w=0.3} he's not?" ("base", xpos="far_left", ypos="head") + cho "No!" ("annoyed", "narrow", "angry", "mid") + gen "I could've sworn I read that somewhere..." ("base", xpos="far_left", ypos="head") + gen "Are you sure he's still around?{w=0.6} What if he {b}did{/b} die, but then he returned from the dead?" ("base", xpos="far_left", ypos="head") + gen "For all you know he could be a vampire!" ("angry", xpos="far_left", ypos="head") + cho "Sir, you're talking nonsense..." ("annoyed", "narrow", "angry", "R") + cho "Please don't joke about your student like that. It's so unlike you..." ("open", "closed", "base", "mid") + cho "He's one of your bests! The best student Hufflepuff has ever seen!" ("open", "base", "base", "mid") + gen "A Hufflepuff? Well, that explains everything..." ("base", xpos="far_left", ypos="head") + gen "If he's such an exceptionally great student, then why aren't you two still together?" ("base", xpos="far_left", ypos="head") + cho "Things didn't work out, naturally..." ("open", "base", "raised", "R") + cho "The tourney ended, and he didn't win, so..." ("soft", "base", "raised", "down") + gen "So you two broke up?... Because he didn't win?" ("base", xpos="far_left", ypos="head") + cho "That was one of the reasons..." ("soft", "base", "base", "downR") + cho "There is also the fact that he's on the Hufflepuff Quidditch team, as their Seeker." ("open", "base", "base", "mid") + cho "It's our last shot at winning the Quidditch house cup, for the both of us." ("angry", "base", "base", "down") + cho "We'd constantly be at each other's throats." ("soft", "narrow", "angry", "mid") + gen "Intriguing!" ("angry", xpos="far_left", ypos="head") + gen "You are missing out, girl..." ("base", xpos="far_left", ypos="head") # Small text + gen "{size=-4}Hate-sex is the best!{/size}" ("grin", xpos="far_left", ypos="head") # Small text + cho "I didn't quite hear that, Sir." ("base", "base", "base", "mid") + gen "Who else did you do it with?" ("base", xpos="far_left", ypos="head") + cho "Do it with?" ("soft", "narrow", "raised", "mid") # Shocked + gen "Smooching, kissing, snogging...{w=0.8} whatever you call it nowadays..." ("base", xpos="far_left", ypos="head") + cho "With all due respect sir, it's very odd that you'd ask me about those sort of things..." ("open", "closed", "base", "mid") + cho "But... you {b}are{/b} helping me.{w=0.8} So I guess I owe you that much..." ("annoyed", "base", "base", "R") + gen "That's what I wanted to hear." ("grin", xpos="far_left", ypos="head") + + # Fleur + cho "Well, Cedric wasn't the only one I was with during the year of the tourney..." ("open", "base", "raised", "down") + gen "Is that so...{w} feel free to elaborate!" ("grin", xpos="far_left", ypos="head") + cho "I was sort of dating somebody else..." ("soft", "base", "worried", "downR") + cho "At the same time." ("horny", "base", "worried", "R") # Embarrassed + gen "No{w} way!" ("base", xpos="far_left", ypos="head") + gen "You were cheating on that {i}Hufflepuffer{/i}?" ("angry", xpos="far_left", ypos="head") + cho "I wouldn't call it cheating, sir. It wasn't even that serious with Cedric to begin with." ("annoyed", "narrow", "base", "mid") + cho "I had a unique opportunity, that's all..." ("soft", "base", "base", "R") + cho "One of those \"no strings attached\" kind of things... Trying out new stuff..." ("smile", "base", "base", "downR") + gen "Like what?" ("base", xpos="far_left", ypos="head") + cho "Dating a girl, for example." ("base", "narrow", "base", "mid") + gen "(Finally this is getting interesting!)" ("grin", xpos="far_left", ypos="head") + cho "She was one of the students from Beauxbatons." ("soft", "base", "base", "downR") + gen "(...)" ("base", xpos="far_left", ypos="head") + cho "A French girl." ("soft", "base", "base", "down") + gen "I hope you {i}frenched{/i} that french girl!" ("grin", xpos="far_left", ypos="head") + cho "*Ehm*..." ("angry", "closed", "worried", "mid") # Super embarrassed + cho "(Why am I telling him this?)" ("horny", "narrow", "worried", "R") + gen "Tell me more about this girl." ("base", xpos="far_left", ypos="head") + gen "What's her name?" ("grin", xpos="far_left", ypos="head") + cho "Fleur Delacour...{w} She was also a champion at the tourney." ("soft", "base", "worried", "mid") + gen "I'm in shock!" ("angry", xpos="far_left", ypos="head") + + # Viktor + cho "Then there also was Viktor Krum who--" ("open", "base", "base", "R") + with hpunch + gen "Slow down, girl! I'm still not over the fact that you made out with a girl!" ("angry", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "base", "mid") + + menu: + "-Jerk off while she's talking-": + $ cho_jerk_off_counter += 1 + $ genie_masturbating = True + + hide cho_main + call nar(">You reach under the desk and grab your cock...") + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + call bld + + "-Participate in the conversation-": + $ genie_masturbating = False + + gen "I want to hear everything!" ("grin", xpos="far_left", ypos="head") + + cho "I'm sorry, Sir. It's just that..." ("open", "closed", "raised", "mid") + + if game.daytime: + cho "I'm really late for classes. May we postpone this talk to some other time?" ("soft", "narrow", "worried", "R") + else: + cho "It's getting really late. May we postpone this talk to some other time?" ("soft", "narrow", "worried", "R") + + if genie_masturbating: + gen "What? Please don't go now. I've only just started!" ("angry", xpos="far_left", ypos="head") + cho "Started with what, [cho_genie_name]?" ("annoyed", "narrow", "angry", "mid") + gen "I'll give you ten house points if you stay!{w=0.8} Just a tiny bit longer!" ("angry", xpos="far_left", ypos="head") + cho "And what makes you believe that I'd agree to such a thing?{w=0.8} Getting rewarded with points for doing nothing?" ("open", "closed", "base", "mid") + cho "Earning house points in such a way is despicable, and it would be unfair towards the other school houses, as well as my fellow students..." ("open", "narrow", "base", "mid") + cho "" ("annoyed", "narrow", "angry", "mid") + gen "Fifty points?" ("angry", xpos="far_left", ypos="head") + cho "I have to go now, Sir." ("annoyed", "narrow", "angry", "R") + gen "(Fuck me...)" ("base", xpos="far_left", ypos="head") + + call gen_chibi("sit_behind_desk") + with d3 + pause .8 + + cho "Until next time!" ("soft", "narrow", "base", "mid") + + else: + gen "Okay, girl. You may leave..." ("base", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("base", "base", "base", "down") + cho "See you next time." ("smile", "base", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + call bld + gen "(...)" ("base", xpos="far_left", ypos="head") + if genie_masturbating: + gen "Blue-balled..." ("base", xpos="far_left", ypos="head") + gen "Oh well... Maybe I deserved it." ("base", xpos="far_left", ypos="head") + + jump end_cho_talk_event + +label cc_pf_talk_T1_intro_E2: + gen "Get closer, [cho_name]..." ("grin", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "base", "down") + + call cho_walk("desk", "base") + call play_music("cho") + cho "" ("annoyed", "narrow", "angry", "mid", xpos="mid", ypos="base", trans=d3) + pause .5 + + cho "Another talk, sir?" ("soft", "narrow", "angry", "mid") + cho "Are we going to discuss my previous relationships again?" ("open", "narrow", "base", "R") + gen "I don't know.{w=1.0} Would you like to?" ("base", xpos="far_left", ypos="head") + cho "I'd rather not." ("soft", "narrow", "angry", "mid") + gen "Tell me about yourself then." ("base", xpos="far_left", ypos="head") + cho "Of course, [cho_genie_name]." ("smile", "base", "base", "mid") + cho "We had a training session yesterday." ("soft", "base", "base", "R") + gen "Training session?" ("base", xpos="far_left", ypos="head") + cho "Yes. We are preparing ourselves for the Quidditch match against Hufflepuff." ("open", "narrow", "base", "mid") + cho "Our team really believes that we have a chance to win this time!" ("smile", "base", "base", "mid") + cho "They got a huge boost of confidence after I told 'em that the {i}great Albus Dumbledore{/i} would be training us himself!" ("base", "narrow", "base", "mid") + gen "Are you getting along with your team well?" ("base", xpos="far_left", ypos="head") + cho "I'd say so.{w=1.0} Although there was a time when--" ("soft", "base", "base", "mid") + cho "Let's just say it was a bit difficult for me at first. After all Quidditch is largely dominated by men..." ("open", "narrow", "worried", "down") + cho "Getting accepted into our Quidditch team was a challenge. I really had to prove I was worth it." ("soft", "narrow", "worried", "mid") + gen "And how exactly did you manage that? Mind spilling the beans?" ("grin", xpos="far_left", ypos="head") + cho "Through diligence, expertise, and determination!" ("open", "closed", "base", "mid") + cho "" ("normal", "base", "base", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "I was sort of expecting something else entirely but... you do you..." ("base", xpos="far_left", ypos="head") + cho "And as you can see -- it did work out in my favour, Sir." ("smile", "base", "base", "mid") + cho "Very few teams have allowed a female player into their ranks over the past years." ("open", "narrow", "angry", "R") + cho "And I've been the only female seeker at this school in over half a century!" ("open", "wide", "base", "mid") + cho "Can you even believe that, [cho_genie_name]?" ("soft", "base", "raised", "mid") + gen "(Half a century? That's like a coffee break for me girl...)" ("base", xpos="far_left", ypos="head") + cho "I don't want to brag, [cho_genie_name], but the role of a seeker is {b}the{/b} most important position in a team by far!" ("smile", "narrow", "base", "mid") + cho "If you don't have a good seeker, you have no chance of winning!" ("soft", "closed", "base", "mid") + gen "No wonder you need my help so badly then..." ("base", xpos="far_left", ypos="head") + cho "Our losses is neither my, nor my team's fault, [cho_genie_name]!" ("open", "base", "angry", "mid") + gen "So whose is it then?" ("base", xpos="far_left", ypos="head") + cho "The enemy team's, obviously!" ("soft", "narrow", "angry", "mid") + cho "They are cheating! And they have done so for years!" ("mad", "narrow", "angry", "R") + cho "This is my last chance! And I'm growing more and more desperate with my situation..." ("mad", "narrow", "angry", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + + menu: + "-Jerk off while she is talking-": + hide cho_main + hide screen bld1 + with d5 + pause .5 + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + $ cho_jerk_off_counter += 1 + $ genie_masturbating = True + + "-Participate in the conversation-": + $ genie_masturbating = False + + cho "Ever since I was a little girl -- Quidditch has been my dream..." ("soft", "narrow", "worried", "down") + cho "[cho_genie_name], can you imagine how {b}hard{/b} it was for me?" ("soft", "narrow", "worried", "mid") + if genie_masturbating: + gen "{size=-4}(Yes, yes... It's so hard for you, you little slut!!!){/size}" ("angry", xpos="far_left", ypos="head") + cho "How difficult it was for me at first?" ("open", "narrow", "worried", "R") + cho "Getting accepted?" ("soft", "closed", "worried", "mid") + if genie_masturbating: + gen "{size=-4}(I'd accept your ass on my cock if you're in such a need for acceptance, you whore!){/size}" ("angry", xpos="far_left", ypos="head") + cho "I'm the only female in my team. Constantly surrounded by other men..." ("soft", "base", "worried", "down") + if genie_masturbating: + gen "{size=-4}(Yes! Yes! And they all would like to have their way with you!){/size}" ("angry", xpos="far_left", ypos="head") + else: + gen "(Quite a sausage-party this Quidditch I have to admit.)" ("base", xpos="far_left", ypos="head") + gen "(Maybe telling Hermione off was a bad idea after all...)" ("angry", xpos="far_left", ypos="head") + gen "(An \"all female\" team would be more fun to watch...)" ("grin", xpos="far_left", ypos="head") + cho "Always feeling their gaze behind my back..." ("disgust", "base", "worried", "down") + cho "My own team, [cho_genie_name]!{w} They treat me like the plague!" ("upset", "base", "worried", "mid") + cho "They ignore me during class..." ("soft", "closed", "base", "mid") + cho "When I meet them in the common room they go out of their way not to cross paths with me..." ("annoyed", "narrow", "angry", "R") + cho "And when we shower after practice they're scared to even look at me!" ("angry", "narrow", "angry", "mid") + if genie_masturbating: + gen "{size=-4}(Yes, yes!{w=0.5} Afraid to even look at you in the--){/size}" ("angry", xpos="far_left", ypos="head") + with hpunch + gen "Wait a bloody minute!{w} You shower {b}with{/b} your team?" ("angry", xpos="far_left", ypos="head") + else: + gen "The showers?{w} You shower {b}with{/b} your team?" ("angry", xpos="far_left", ypos="head") + cho "Of course, [cho_genie_name]. It was after my request, after all." ("soft", "base", "raised", "mid") + gen "No kidding?" ("angry", xpos="far_left", ypos="head") + cho "They shouldn't exclude me from team activities just because I'm a girl." ("open", "narrow", "base", "R") + cho "It makes absolutely no difference!" ("open", "closed", "angry", "mid") + if genie_masturbating: + gen "You are naked with them? In the showers?" ("angry", xpos="far_left", ypos="head") + else: + gen "Just to be clear. You are naked with them, in the shower." ("base", xpos="far_left", ypos="head") + cho "Of course we're all naked, [cho_genie_name]!" ("soft", "base", "angry", "mid") + cho "Why would we shower with our clothes on?" ("soft", "closed", "base", "mid") + + # Genie cums. + if genie_masturbating: + gen "{size=-4}(You exhibitionist slut!){/size}" ("angry", xpos="far_left", ypos="head") + gen "*Argh*! {size=-4}(Here it comes!){/size}" ("angry", xpos="far_left", ypos="head") + + call cum_block + call gen_chibi("cum_behind_desk") + with d3 + pause .8 + + call bld + gen "*heavy breathing* {size=-4}(Take it!){/size}" ("angry", xpos="far_left", ypos="head") + + call cum_block + cho "" ("base", "narrow", "base", "mid") + gen "*Argh*! {size=-4}(Shower in this, you slut!){/size}" ("angry", xpos="far_left", ypos="head") + + call cum_block + cho "[cho_genie_name], are you alright?" ("soft", "base", "base", "mid") + cho "You're sweating and breathing quite heavily..." ("annoyed", "base", "worried", "mid") + + call gen_chibi("cum_behind_desk_done") + with d3 + pause .8 + + cho "Shall I get Madam Pomfrey to check on you--" ("soft", "narrow", "base", "mid") + gen "No, no! I'm..." ("angry", xpos="far_left", ypos="head") + gen "I'm done.{w=0.3} Let's get back to the topic." ("base", xpos="far_left", ypos="head") + cho "Which was?" ("open", "base", "raised", "mid") + gen "You taking showers with your \"teammates\"..." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid") # Annoyed + + gen "Don't you think, the fact that they've seen you naked hasn't affected any of their actions?" ("base", xpos="far_left", ypos="head") + cho "Why would it, [cho_genie_name]? We're all adults here..." ("soft", "closed", "base", "mid") + gen "Perhaps that's just your take on it, girl." ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "angry", "mid") + gen "Maybe your \"teammates\" aren't as... \"mature\" as you." ("grin", xpos="far_left", ypos="head") + cho "I've known my team for years.{w=0.6} We're all professionals!" ("soft", "narrow", "base", "mid") + gen "Let me ask you a question..." ("base", xpos="far_left", ypos="head") + gen "In the showers,{w=0.3} do they all have their backs turned towards you?" ("base", xpos="far_left", ypos="head") + cho "I don't know. Maybe they-- *uhm*..." ("open", "base", "base", "mid") + cho "!!!" ("normal", "wide", "base", "mid") # Cho remembers something?! + cho "" ("normal", "happyCl", "worried", "mid", cheeks="heavy_blush") + pause .6 + gen "Yes?{w=0.3} What is it?" ("grin", xpos="far_left", ypos="head") + cho "May I... May I leave, [cho_genie_name]?" ("soft", "narrow", "worried", "mid", cheeks="blush") + gen "Don't want to tell me?" ("grin", xpos="far_left", ypos="head") + cho "No." ("disgust", "happyCl", "worried", "mid", cheeks="blush") + gen "Fine...{w=0.3} you may leave..." ("base", xpos="far_left", ypos="head") + cho "Thank you, [cho_genie_name]." ("open", "narrow", "worried", "mid", cheeks="blush") + + # Cho very slowly walks out of your office... + call cho_walk(action="leave") + + call bld + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "(That just gave me an idea!)" ("grin", xpos="far_left", ypos="head") + stop music fadeout 1.0 + + call gen_chibi("sit_behind_desk") + $ cho_requests_unlocked = True + call popup("You can now buy \"Public Requests\" from Cho!", "Congratulations!", "interface/icons/head/cho.webp") + + jump end_cho_talk_event + +label cc_pf_talk_T1_E3: + gen "Care to tell me more about Quidditch?" ("base", xpos="far_left", ypos="head") + cho "Of course, [cho_genie_name]." ("smile", "base", "base", "R") + cho "I always love talking about Quidditch!" ("base", "base", "base", "mid") + gen "Yeah, yeah... I know." ("base", xpos="far_left", ypos="head") + gen "First, come closer. Let me have a good look at you!" ("base", xpos="far_left", ypos="head") + cho "Yes, Sir." ("base", "base", "base", "mid") + + call play_music("cho") + cho "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + pause .5 + + cho "Anything specific you'd like to know?" ("soft", "base", "base", "mid") + gen "Yes. Let's talk some more about Duggery..." ("base", xpos="far_left", ypos="head") + cho "*Huh*?" ("soft", "narrow", "base", "mid") + gen "Your ex-boyfriend." ("grin", xpos="far_left", ypos="head") + cho "{size=-4}I knew I shouldn't have told him...{/size}" ("disgust", "narrow", "base", "down", cheeks="blush") + cho "Sir, do you have to bring him up?" ("soft", "narrow", "base", "mid") + cho "What's past is in the past..." ("annoyed", "narrow", "angry", "R") + gen "I believe otherwise..." ("base", xpos="far_left", ypos="head") + gen "Have you already forgotten that he's our enemy?!" ("angry", xpos="far_left", ypos="head") + gen "Your relationship with him is of the utmost importance right now!" ("base", xpos="far_left", ypos="head") + gen "I need to know every tiny bit of detail about the two of you." ("base", xpos="far_left", ypos="head") + gen "His sexual preferences. Secret fetishes he might have. That sort of stuff..." ("base", xpos="far_left", ypos="head") + cho "Sir, that's a very personal thing to ask for!" ("open", "narrow", "base", "mid") + cho "I will not tell you about any of that!" ("annoyed", "narrow", "angry", "mid") + gen "[cho_name], we need to find something we can use against him. To our advantage!" ("base", xpos="far_left", ypos="head") + cho "But... {w=0.4} His sexual preferences? Are you sure knowing about that is important?" ("open", "narrow", "angry", "mid") + gen "Very." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "R") + cho "Very well, [cho_genie_name]..." ("open", "closed", "angry", "mid") + cho "I'll tell you what I know about him." ("open", "narrow", "base", "mid") + gen "Excellent." ("base", xpos="far_left", ypos="head") + cho "Cedric was always a bit of a loner..." ("annoyed", "narrow", "base", "R") + cho "He was cold, focused, and competitive. Never showed too much affection towards me...{w=0.4} Except for--" ("open", "base", "angry", "downR") + cho "(...)" ("annoyed", "narrow", "base", "R") + gen "Yes? Go on..." ("base", xpos="far_left", ypos="head") + cho "I believe he had a bit of an obsession with my panties, Sir." ("soft", "narrow", "base", "mid") + if not cho_quid.hufflepuff_prepared: + gen "A panties obsession? So so..." ("base", xpos="far_left", ypos="head") + else: + gen "*Ha!* Called it!" ("grin", xpos="far_left", ypos="head") + cho "It was a little bit creepy how often he tried to look up my skirt..." ("angry", "wide", "base", "mid") + cho "I mean who would do such a thing?" ("soft", "base", "base", "mid") + gen "Yes, yes... how terrible of him..." ("base", xpos="far_left", ypos="head") + + menu: + "-Jerk off while she's talking-": + $ cho_jerk_off_counter += 1 + $ genie_masturbating = True + + hide cho_main + call nar(">You reach under the desk and grab your cock...") + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + call bld + gen "Please tell me more about your panties!" ("grin", xpos="far_left", ypos="head") + + "-Participate in the conversation-": + $ genie_masturbating = False + gen "(No, I need to focus!)" ("base", xpos="far_left", ypos="head") + gen "(This might be useful information in our game against him...)" ("base", xpos="far_left", ypos="head") + gen "Please, carry on..." ("base", xpos="far_left", ypos="head") + cho "Of course, Sir." ("base", "base", "base", "mid") + + if genie_masturbating: + cho "That's an oddly specific question, don't you think?" ("soft", "base", "raised", "mid", trans=d3) + gen "Come on, girl! Which were the ones he liked the most?" ("angry", xpos="far_left", ypos="head") + cho "*Uhm*..." ("annoyed", "base", "base", "R") + cho "I never wore panties too often..." ("angry", "narrow", "base", "downR") + cho "At least not those fancy ones the other girls are wearing." ("soft", "narrow", "base", "mid") + gen "*Argh*! {size=-4}(I'd love to see those!){/size}" ("angry", xpos="far_left", ypos="head") + cho "If you can even call them that..." ("annoyed", "narrow", "base", "R") + cho "Most of them look like shoelaces!" ("annoyed", "narrow", "angry", "R") + gen "{size=-4}(What a bunch of sluts!){/size}" ("angry", xpos="far_left", ypos="head") + call nar("*Fap* *Fap* *Fap*...") + cho "You should see them, [cho_genie_name]!" ("annoyed", "narrow", "angry", "mid") + cho "They're all a bunch of sluts!!!" ("soft", "narrow", "angry", "mid") + cho "They wear their skirts so low -- you just have to wonder how they haven't fallen off yet..." ("soft", "narrow", "base", "downR") + gen "{size=-4}(Indeed, I'd love to see that!){/size}" ("angry", xpos="far_left", ypos="head") + cho "And pull their panty-string up and over their hip bones..." ("soft", "narrow", "base", "mid") + gen "{size=-4}(Yes! So fucking slutty!){/size}" ("angry", xpos="far_left", ypos="head") + cho "They look like arrows pointing down at their \"Snitch\", if you get what I mean..." ("angry", "narrow", "angry", "mid") + gen "*Argh!* {size=-4}(Those cheap whores!){/size}" ("angry", xpos="far_left", ypos="head") + cho "As if they give any boy an open invitation to lay with them..." ("soft", "narrow", "angry", "R") + gen "*Fuck!* {size=-4}(That did it!!!){/size}" ("angry", xpos="far_left", ypos="head") + + # Genie cums. + call hide_characters + hide screen bld1 + with d3 + + call cum_block + call gen_chibi("cum_behind_desk") + with d3 + pause .8 + + cho "As for me, panties have to be practical, first and foremost!" ("soft", "closed", "base", "mid") + gen "*Ahg!* {size=-4}(So you can quickly get them off, you whore!){/size}" ("angry", xpos="far_left", ypos="head") + + call cum_block + cho "And there needs to be enough fabric to soak up all the sweat..." ("soft", "narrow", "base", "R") + gen "{size=-4}(I bet you are so wet right now too!){/size}" ("angry", xpos="far_left", ypos="head") + + # Genie finished. + call hide_characters + call gen_chibi("cum_behind_desk_done") + with d3 + pause .8 + + cho "(...)" ("annoyed", "narrow", "base", "mid") + cho "Sir, would it be alright if I head off now?" ("soft", "base", "base", "R") + gen "Already? Do you have to be somewhere?" ("grin", xpos="far_left", ypos="head") + gen "Did our little talk about panties maybe... excite you?" ("grin", xpos="far_left", ypos="head") + cho "What? No of course not!" ("angry", "wide", "base", "mid") + + if game.daytime: + cho "I simply have to go to my next lesson..." ("soft", "closed", "base", "mid") + cho "Or I will be late again." ("annoyed", "base", "base", "R") + else: + cho "But if you expect me to do well during our next Hufflepuff game, then I'll require some sleep..." ("soft", "base", "base", "R") + + gen "Of course. You may go..." ("base", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("base", "base", "base", "mid") + cho "Until next time." ("smile", "narrow", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + call bld + if not cho_quid.hufflepuff_prepared: + gen "(I bet she enjoyed every second of it, or she'd most definitely have called him out...)" ("base", xpos="far_left", ypos="head") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "(Wait a minute... That's it!)" ("base", xpos="far_left", ypos="head") + gen "(Now we just need her to fly in the perfect position to show them off during the game...)" ("base", xpos="far_left", ypos="head") + gen "(Well then, better get back to training and discuss my brilliant tactics with her...)" ("base", xpos="far_left", ypos="head") + gen "(To think I'd have such a good excuse to have her show me her panties already.)" ("grin", xpos="far_left", ypos="head") + else: + gen "(Well, can't say that I blame him...)" ("base", xpos="far_left", ypos="head") + gen "(I'd take any and every chance to see those panties as well...)" ("base", xpos="far_left", ypos="head") + + call gen_chibi("sit_behind_desk") + jump end_cho_talk_event + + else: + cho "He'd always walk behind me when we went up the stairs, to get a better view I bet..." ("soft", "narrow", "angry", "R") + gen "Did you ever show them to him on purpose?" ("base", xpos="far_left", ypos="head") + cho "My panties?" ("soft", "base", "raised", "mid") + gen "No, your good manners...{w} Yes your panties!" ("base", xpos="far_left", ypos="head") + cho "Why would I do that?" ("soft", "narrow", "raised", "mid") + gen "What kind of girl doesn't show her panties to her beloved?" ("base", xpos="far_left", ypos="head") + cho "I beg your pardon?!" ("angry", "wide", "raised", "mid") + + if not cho_quid.hufflepuff_prepared: + gen "But, that made me think..." ("base", xpos="far_left", ypos="head") + gen "If he's as obsessed with panties as you say, why don't we use that information to our advantage?" ("base", xpos="far_left", ypos="head") + cho "Like how?" ("soft", "narrow", "raised", "mid") + gen "We use them as a distraction!" ("base", xpos="far_left", ypos="head") + gen "Now we only have to find out how to show them off properly during the game." ("base", xpos="far_left", ypos="head") + cho "I have to say I don't like this notion one bit." ("annoyed", "narrow", "base", "mid") + cho "But it might be worth a try..." ("soft", "narrow", "base", "R") + else: + gen "Well, it worked." ("base", xpos="far_left", ypos="head") + gen "This {i}Quayditch{/i} thing is easy!" ("base", xpos="far_left", ypos="head") + cho "Quidditch, Sir..." ("soft", "closed", "base", "mid") + gen "To think all we had to do was put some good-old panties in front of his face..." ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "base", "mid") + gen "He must've looked like a wild goat, chasing after them." ("angry", xpos="far_left", ypos="head") + cho "A goat?" ("soft", "narrow", "raised", "mid") + gen "Yes. Don't you have those here?" ("base", xpos="far_left", ypos="head") + cho "Goats don't chase after panties, Sir..." ("soft", "narrow", "base", "R") + gen "They do where I'm from..." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "R") + cho "But you were correct with your assumption, Sir." ("soft", "closed", "base", "mid") + cho "I'm surprised how well it worked out in our favour." ("annoyed", "base", "raised", "down") + cho "He really {b}does{/b} love panties..." ("soft", "narrow", "base", "mid") + gen "I mean who doesn't..." ("base", xpos="far_left", ypos="head") + + cho "Sir, if you don't mind..." ("soft", "closed", "base", "mid") + if game.daytime: + cho "I'm already late for class." ("soft", "narrow", "base", "R") + cho "I really should be going now..." ("angry", "narrow", "worried", "mid") + else: + cho "It's getting late." ("soft", "narrow", "base", "mid") + cho "I really should head to bed now..." ("angry", "narrow", "worried", "mid") + + gen "Of course. You are dismissed." ("base", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("base", "base", "base", "mid") + if game.daytime: + cho "Until next time." ("smile", "narrow", "base", "mid") + else: + cho "Have a good night." ("smile", "narrow", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + call bld + gen "(I wonder what colours they are...)" ("base", xpos="far_left", ypos="head") + gen "(If she's even wearing any...{w} You never know.)" ("base", xpos="far_left", ypos="head") + + jump end_cho_talk_event + +### Tier 2 (pre Slytherin) ### + +label cc_pf_talk_T2_intro_E1: + gen "Miss Chang, it's time we have another chat." ("base", xpos="far_left", ypos="head") + gen "Please come a bit closer..." ("base", xpos="far_left", ypos="head") + cho "Yes, Sir." ("base", "base", "base", "mid") + + call play_music("cho") + cho "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + pause .5 + + gen "Tell me, how have you been?" ("base", xpos="far_left", ypos="head") + gen "I bet a lot has changed for you after your big win!" ("grin", xpos="far_left", ypos="head") + cho "More or less..." ("soft", "base", "raised", "mid") + cho "School has been rather uneventful the past couple of days." ("soft", "base", "base", "R") + cho "That is, if constantly getting bullied is the new norm at this school..." ("annoyed", "narrow", "angry", "mid") + gen "Bullied by whom?" ("base", xpos="far_left", ypos="head") + cho "The Slytherin Quidditch team!{w=0.6} They've been total dicks lately..." ("open", "narrow", "angry", "mid") + gen "You don't say.{w=0.8} Why is that?" ("base", xpos="far_left", ypos="head") + cho "Because they are scared of us, I wager..." ("soft", "narrow", "angry", "downR") + + cho "We'll be playing against them next." ("annoyed", "narrow", "base", "R") + cho "And of course they have to behave like the absolute worst!" ("soft", "narrow", "angry", "mid") + cho "They deserve to be publicly disgraced in front of the whole school!{w=0.8} The whole lot of them!" ("scream", "closed", "angry", "mid", trans=hpunch) + cho "I'll make sure of it, [cho_genie_name]!{w=0.6} The Slytherin team will lose!" ("mad", "narrow", "angry", "mid") + gen "(And I'll win my bet with Snape even sooner! Sweet!)" ("grin", xpos="far_left", ypos="head") + gen "Anything you can tell me about them?{w=0.6} Are they better than Hufflepuff?" ("base", xpos="far_left", ypos="head") + cho "They are, by quite a bit." ("annoyed", "base", "base", "mid") + cho "However, Hufflepuff only had one really good player. Which was Cedric." ("soft", "base", "base", "R") + cho "Slytherin on the other hand, they are almost unbeatable!" ("angry", "wide", "base", "mid") + cho "They might even be better than Gryffindor..." ("annoyed", "base", "base", "up") + gen "You don't say. So why are they next and not Gryffindor?" ("base", xpos="far_left", ypos="head") + cho "Because of their seeker, Sir." ("soft", "narrow", "base", "mid") + cho "He's so...{w=0.6} so bad!" ("clench", "narrow", "base", "R", cheeks="blush") + gen "Who is their seeker?" ("base", xpos="far_left", ypos="head") + cho "Draco Malfoy, Sir." ("open", "closed", "base", "mid") + gen "(The cocky fella! Snape mentioned him before...)" ("base", xpos="far_left", ypos="head") + cho "They've been continuously harassing my team..." ("annoyed", "narrow", "angry", "R") + cho "Well, mostly me actually." ("angry", "narrow", "base", "downR") # Embarrassed + + menu: + "-Jerk off while she's talking-": + $ cho_jerk_off_counter += 1 + $ genie_masturbating = True + + hide cho_main + call nar(">You reach under the desk and grab your cock...") + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + show screen blktone # Gets removed by `call nar()` + show screen bld1 + with d3 + gen "(Just to make this clear, I'm not getting off because I like the thought that she's getting bullied...)" ("base", xpos="far_left", ypos="head") + call nar(">Right...") + gen "I hope you fought back those bullies?" ("angry", xpos="far_left", ypos="head") + cho "Of course, [cho_genie_name]!" ("base", "base", "base", "mid") + + "-Participate in the conversation-": + $ genie_masturbating = False + gen "(No, I need to focus!)" ("base", xpos="far_left", ypos="head") + gen "So... would you like to report them?" ("base", xpos="far_left", ypos="head") + cho "No, Sir." ("soft", "closed", "base", "mid") + gen "No?" ("base", xpos="far_left", ypos="head") + + cho "I do not endorse their behaviour, Sir.{w=0.6} And I hope no other student has to share the same harassment that I received." ("soft", "narrow", "angry", "mid") + cho "{size=-4}Unless maybe Granger...{/size}" ("annoyed", "narrow", "angry", "R") # Small text. + cho "But{w=0.3}, watching them succumb to me has been rather fun..." ("base", "narrow", "angry", "mid") + gen "Succumb to you?" ("base", xpos="far_left", ypos="head") + cho "Yes.{w=0.3} They're so desperately trying to embarrass me.{w=0.6} To make me doubt myself before the big game..." ("smile", "narrow", "angry", "mid") + + if genie_masturbating: + gen "Those asshole bullies...{w=0.6} Show them who's boss!" ("angry", xpos="far_left", ypos="head") + else: + gen "And a strong, independent woman like yourself would never be intimidated by puny Slytherins!" ("grin", xpos="far_left", ypos="head") + cho "Of course not, Sir." ("soft", "closed", "base", "mid") + gen "I'm so proud!" ("angry", xpos="far_left", ypos="head") + + cho "After all I'm only a small, helpless girl{w=0.6}, and they are a group of strong, ruthless alpha males!" ("soft", "base", "worried", "R", cheeks="blush") + cho "Their attempts are pathetic!" ("angry", "narrow", "angry", "mid") + cho "They are pathetic!!!" ("clench", "narrow", "angry", "mid", trans=hpunch) + cho "Trying to lift my skirt with first-year spells..." ("soft", "narrow", "angry", "R") + cho "Stealing my underwear while I'm taking a shower after practice..." ("angry", "narrow", "angry", "downR") + if genie_masturbating: + gen "*Argh!* {size=-4}(Dirty panty muggers!){/size}" ("angry", xpos="far_left", ypos="head") + cho "They even had the audaciousness to write \"Cho, the Ravenclaw ho\" on the blackboard during divination class." ("open", "narrow", "angry", "mid") + if genie_masturbating: + gen "{size=-4}(They must have seen your future, you whore!){/size}" ("angry", xpos="far_left", ypos="head") + cho "Half the class saw it before I could get there...{w=0.8} Not that I care much about it..." ("annoyed", "narrow", "base", "downR", cheeks="blush") + cho "If I'm honest, I'm surprised they could even spell my name correctly..." ("soft", "narrow", "angry", "mid") + if genie_masturbating: + call nar("*Fap* *Fap* *Fap*...") + cho "They think they can intimidate me. But that's where they are mistaken!" ("angry", "narrow", "angry", "down") + + if genie_masturbating: + cho "They should be scared of me, [cho_genie_name]!" ("soft", "narrow", "angry", "mid") + gen "{size=-4}(Yes! Show them, you slut!){/size}" ("angry", xpos="far_left", ypos="head") + cho "Of what {b}I'm{/b} capable of!" ("clench", "base", "angry", "mid") + gen "*Argh*! (I'm getting close!)" ("angry", xpos="far_left", ypos="head") + cho "Scared of what's about to come!" ("soft", "narrow", "angry", "mid") + + # Genie cums. + gen "{size=-4}(Yes! Yes!{w=0.6} It's coming!){/size}" ("angry", xpos="far_left", ypos="head") + call hide_characters + hide screen bld1 + with d3 + + call cum_block + call gen_chibi("cum_behind_desk") + with d3 + pause .8 + + call bld + gen "*Argh*! {size=-4}(Take it!){/size}" ("angry", xpos="far_left", ypos="head") + + call cum_block + gen "*Panting* {size=-4}(You fucking slut!){/size}" ("angry", xpos="far_left", ypos="head") + + call gen_chibi("cum_behind_desk_done") + with d3 + pause .8 + + cho "" ("annoyed", "narrow", "base", "mid") + gen "(*Phewwww*...)" ("base", xpos="far_left", ypos="head") + gen "(That was nice.)" ("base", xpos="far_left", ypos="head") + cho "Are you feeling well, Sir?" ("open", "narrow", "raised", "mid") + gen "Never felt better!" ("grin", xpos="far_left", ypos="head") + cho "That's good to hear." ("smile", "base", "base", "mid") + + gen "I'm glad you aren't letting yourself get oppressed by those Slytherins." ("base", xpos="far_left", ypos="head") + cho "Not in a million years!" ("base", "narrow", "base", "mid") + gen "Admirable." ("base", xpos="far_left", ypos="head") + + gen "Anything else you could tell me about their team?{w=0.6} Anything that could help us?" ("base", xpos="far_left", ypos="head") + gen "Did you maybe fool around with their seeker as well?" ("base", xpos="far_left", ypos="head") + cho "Malfoy?" ("soft", "wide", "base", "mid") # Shocked + cho "*Tzzzz*!{w=0.3} I'd never surround myself with that Slytherin scum!" ("angry", "closed", "angry", "mid") + cho "" ("annoyed", "narrow", "angry", "mid") + gen "I guess you and Granger have at least some things in common..." ("base", xpos="far_left", ypos="head") + cho "His {b}daddy{/b} bought their whole team new brooms, which is the only reason they've even let him in." ("soft", "narrow", "raised", "mid") + gen "His \"daddy\"?" ("base", xpos="far_left", ypos="head") + cho "His father, Sir." ("soft", "closed", "angry", "mid") + gen "Oh. I thought you might be talking about a different kind of \"daddy\"." ("base", xpos="far_left", ypos="head") + cho "Very funny, [cho_genie_name]..." ("annoyed", "narrow", "angry", "R") + cho "Now, if that's everything..." ("soft", "closed", "base", "mid") + + if game.daytime: + cho "Classes are about to start, and I'm already late for them..." ("open", "narrow", "base", "R") + cho "I hope it would be okay if I leave?" ("soft", "narrow", "base", "mid") + else: + cho "It's getting late and I have to go and get some sleep..." ("open", "narrow", "base", "R") + cho "I hope you don't mind, Sir?" ("soft", "narrow", "base", "mid") + + gen "Not at all.{w=0.3} You may go." ("base", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("smile", "base", "base", "mid") + cho "Until next time..." ("base", "narrow", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + jump end_cho_talk_event + +label cc_pf_talk_T2_intro_E2: + gen "Would you mind if we had another chat?" ("base", xpos="far_left", ypos="head") + cho "Of course not, [cho_genie_name]!" ("smile", "base", "base", "mid") + gen "Come closer then..." ("base", xpos="far_left", ypos="head") + + call play_music("cho") + cho "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + pause .5 + + gen "How's school? Have anything to tell me?" ("base", xpos="far_left", ypos="head") + cho "Quite a bit, Sir!" ("smile", "happyCl", "base", "mid") + cho "I feel like people have shown me more affection ever since our game against Hufflepuff." ("base", "base", "base", "mid") + gen "You don't say..." ("base", xpos="far_left", ypos="head") + + menu: + "-Jerk off while she's talking-": + $ cho_jerk_off_counter += 1 + $ genie_masturbating = True + + hide cho_main + call nar(">You reach under the desk and grab your cock...") + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + cho "" ("soft", "base", "base", "up") + gen "*Agh*! Go on!" ("angry", xpos="far_left", ypos="head") + cho "What?" ("soft", "narrow", "raised", "mid") + cho "Oh, I'm sorry, Sir.{w=0.6} Of course!" ("soft", "wide", "base", "mid") + cho "I had my head in the clouds there for a second." ("smile", "happyCl", "base", "mid") + + "-Participate in the conversation-": + $ genie_masturbating = False + gen "Do you have any idea why that might be?" ("base", xpos="far_left", ypos="head") + cho "Because of our win, why else!" ("smile", "narrow", "base", "mid") + gen "And it had nothing to do with the fact that half the school got to see your panties?" ("base", xpos="far_left", ypos="head") + cho "No! Of course not!" ("soft", "narrow", "angry", "mid") + cho "Please don't try to diminish my achievement, Sir!" ("annoyed", "narrow", "base", "R") + + cho "It's like I'm a celebrity now!{w=0.6} I'm getting so much attention!" ("soft", "base", "base", "R") + cho "It never happened that Ravenclaw won a game.{w=0.6} And I made that possible!" ("smile", "base", "base", "mid") + if genie_masturbating: + gen "{size=-4}And soon you'll be on your knees thanking me for it!{/size}" ("angry", xpos="far_left", ypos="head") + else: + gen "Hey! Don't you forget about me!" ("base", xpos="far_left", ypos="head") + gen "Where would you be without the great {i}Dooblydore{/i}..." ("base", xpos="far_left", ypos="head") + cho "Of course, Sir!" ("clench", "happyCl", "worried", "mid", cheeks="blush") + cho "Sorry, Sir!" ("soft", "narrow", "worried", "mid", cheeks="blush") + + menu: + gen "(Maybe it wouldn't be such a bad idea to...)" ("base", xpos="far_left", ypos="head") + "-Jerk off while she's talking-": + $ cho_jerk_off_counter += 1 + $ genie_masturbating = True + + hide cho_main + call nar(">You reach under the desk and grab your cock...") + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + call bld + gen "Please, don't let me interrupt your thought..." ("base", xpos="far_left", ypos="head") + gen "I'd like to hear more!" ("grin", xpos="far_left", ypos="head") + + "-Participate in the conversation-": + $ genie_masturbating = False + gen "(No, I need to focus!)" ("base", xpos="far_left", ypos="head") + gen "Please, don't let me interrupt your thought..." ("base", xpos="far_left", ypos="head") + gen "Continue..." ("base", xpos="far_left", ypos="head") + + cho "Of course, Sir." ("base", "base", "base", "mid") + + cho "It's fun receiving all of the boys attention!{w=0.8} And seeing how jealous it makes all of the girls!" ("soft", "base", "base", "mid") + cho "Especially Granger!" ("smile", "narrow", "base", "mid") + if genie_masturbating: + gen "{size=-4}Yes, the Gryffindor whore!{/size}" ("angry", xpos="far_left", ypos="head") + cho "You should have seen her face, [cho_genie_name]!" ("soft", "narrow", "angry", "mid") + cho "She's so angry at me! I love it!" ("smile", "happyCl", "base", "mid") + cho "She can't even bear to look at me anymore." ("grin", "narrow", "angry", "mid") + cho "You should know, for whatever reason, almost all of Hufflepuff blames her for helping Ravenclaw secure the win!" ("soft", "base", "base", "R") + cho "She announced several times that Hufflepuff was leading in points, when they actually weren't!" ("smile", "narrow", "angry", "mid") + cho "Which resulted in Hufflepuff playing far more defensively, when they should have been aggressive!" ("base", "narrow", "base", "mid") + if genie_masturbating: + gen "{size=-4}Oh you are one of those girls! I like going aggressive!{/size}" ("angry", xpos="far_left", ypos="head") + cho "I caught the Snitch at just the right time!{w=0.6} If Hufflepuff had gone too far in the lead, we would have lost!" ("open", "narrow", "angry", "mid") + cho "I really need to thank Granger the next time I see her.{w=0.6} I owe her a great deal..." ("soft", "narrow", "angry", "R") + if genie_masturbating: + gen "{size=-2}I'd love to watch you \"thank her!\"{/size}" ("angry", xpos="far_left", ypos="head") + cho "Maybe I'll do something fun with her the next time I see her..." ("base", "narrow", "base", "R") + cho "Something that would rile her up even more!" ("smile", "narrow", "angry", "downR") + else: + gen "Yes? And how exactly would you \"thank her\"?" ("grin", xpos="far_left", ypos="head") + cho "I don't know. Maybe something that would rile her up even more..." ("annoyed", "base", "base", "downR") + cho "Like a kiss on her cheek, or an uncomfortably long hug!" ("soft", "narrow", "base", "mid") + cho "Or I'll do something more sinister! Something she'd never expect!" ("base", "base", "base", "R") + if genie_masturbating: + gen "*Ugh*! {size=-2}Like what?{/size}" ("angry", xpos="far_left", ypos="head") + else: + gen "More sinister? Like what?" ("base", xpos="far_left", ypos="head") + cho "Give her a proper kiss on the lips, perhaps?" ("soft", "narrow", "angry", "mid") + with hpunch + gen "!!!" ("angry", xpos="far_left", ypos="head") + cho "Yes! I bet a prude like her would be {b}so{/b} shocked by that!{w=0.8} I might even be her first!" ("soft", "base", "angry", "downR", cheeks="blush") + + # Forced to jerk off. + if genie_masturbating: + gen "{size=-4}Yes! You fucking sluts!{/size}" ("angry", xpos="far_left", ypos="head") + else: + gen "(Fuck it, this is too much!)" ("angry", xpos="far_left", ypos="head") + + menu: + "-Flog the dong-": + pass + "-Practice Onanism-": + pass + "-Diddle do-": + pass + + $ cho_jerk_off_counter += 1 + $ genie_masturbating = True + + hide cho_main + call nar(">You reach under the desk and grab your cock...") + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + call bld + gen "Please, continue!" ("angry", xpos="far_left", ypos="head") + + cho "Just thinking about her puffy pink lips..." ("annoyed", "narrow", "angry", "down", cheeks="blush") + gen "{size=-2}Yes! Yes!{/size}" ("angry", xpos="far_left", ypos="head") + cho "I should make her choke on my tongue, whether she likes it or not..." ("clench", "narrow", "angry", "downR") + gen "{size=-2}Yes! That would be so fucking hot!{/size}" ("angry", xpos="far_left", ypos="head") + cho "Push her against a wall and force it into her bitch mouth!" ("angry", "narrow", "angry", "down") + gen "*Argh!* {size=-2}You fucking sluts!{/size}" ("angry", xpos="far_left", ypos="head") + cho "And then I pull her vest over her stupidly large breasts..." ("smile", "narrow", "angry", "L") + cho "And embarrass her in front of the whole class!" ("soft", "base", "base", "up") + cho "Show everyone her ridiculous {b}cow tits!{/b}" ("soft", "narrow", "angry", "up") + gen "{size=-2}Yes!!!{/size} {size=-4}(I'm almost there!){/size}" ("angry", xpos="far_left", ypos="head") + cho "She deserves it..." ("angry", "closed", "angry", "R", cheeks="blush") + cho "That know-it-all, pretentious little bitch!" ("soft", "narrow", "angry", "downR", cheeks="blush") + + # Genie cums. + gen "{size=-2}Yes, yes! You nasty slut!{/size}" ("angry", xpos="far_left", ypos="head") + call hide_characters + hide screen bld1 + with d3 + + call cum_block + call gen_chibi("cum_behind_desk") + with d3 + pause .8 + + call bld + gen "*Argh*! {size=-4}Take it!{/size}" ("angry", xpos="far_left", ypos="head") + cho "Oh, I'm so sorry, Sir." ("soft", "narrow", "base", "mid") + cho "I forgot I was talking to you for a second!" ("angry", "closed", "worried", "mid") + + call cum_block + gen "*Argh* {size=-4}You lesbian slut!{/size}" ("angry", xpos="far_left", ypos="head") + cho "I hope you didn't hear any of it! I would never do--" ("soft", "narrow", "worried", "mid") + + call cum_block + cho "Sir?!" ("annoyed", "narrow", "raised", "mid") + call cum_block + pause .8 + + cho "[cho_genie_name]! What the bloody hell are you doing?!" ("angry", "wide", "base", "mid", cheeks="heavy_blush", trans=hpunch) + gen "{size=-4}(Oh no!){/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-4}(I'm busted!){/size}" ("angry", xpos="far_left", ypos="head") + + # Genie stops. + call hide_characters + hide screen bld1 + with d3 + pause .2 + + call gen_chibi("cum_behind_desk_done") + pause .8 + + cho "" ("clench", "wide", "base", "mid", cheeks="blush") + gen "Nothing, I was just--" ("angry", xpos="far_left", ypos="head") + cho "Don't tell me you were..." ("disgust", "happyCl", "worried", "mid", cheeks="heavy_blush") + gen "I was merely scratching my leg!" ("angry", xpos="far_left", ypos="head") + cho "Don't lie to me, [cho_genie_name]!{w=0.6} I know exactly what you were doing!" ("clench", "narrow", "angry", "mid") + cho "{size=+4}You were touching yourself!{/size}" ("scream", "closed", "angry", "mid", trans=hpunch) # Scream + cho "" ("angry", "narrow", "angry", "mid") + gen "{size=-2}Not so loud! People might hear you!{/size}" ("angry", xpos="far_left", ypos="head") + cho "Why would you think I care?!" ("open", "narrow", "angry", "L", cheeks="blush") + cho "You were wanking off!" ("soft", "wide", "base", "mid", cheeks="blush") + gen "No I wasn't..." ("base", xpos="far_left", ypos="head") + cho "In front of your own student!" ("disgust", "happyCl", "worried", "down", cheeks="heavy_blush") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "Stop making a big deal out of it, would you?" ("base", xpos="far_left", ypos="head") + cho "So you're admitting that you did it!" ("angry", "narrow", "angry", "mid") + gen "Fine... I don't care at this point..." ("base", xpos="far_left", ypos="head") + cho "That's disgusting!" ("soft", "narrow", "base", "mid") + gen "You're making an even bigger fuss about it than Hermione..." ("base", xpos="far_left", ypos="head") + cho "Good for her!" ("angry", "closed", "angry", "mid") + cho "Maybe you should call her up here to clean up your mess as well!" ("soft", "narrow", "base", "mid") + cho "And lick it all up!{w} I bet she'd love that!!!" ("angry", "narrow", "angry", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + cho "I'm leaving." ("disgust", "happyCl", "worried", "mid", cheeks="blush") + cho "Have a nice day, [cho_genie_name]!" ("soft", "narrow", "angry", "mid", cheeks="blush") + + # Cho leaves. + call cho_walk(action="leave") + + call bld + gen "(I really did make a mess...)" ("base", xpos="far_left", ypos="head") + gen "(Maybe I {b}should{/b} get Hermione to clean it up for me?)" ("base", xpos="far_left", ypos="head") + gen "(With her mouth!)" ("grin", xpos="far_left", ypos="head") + gen "(..........)" ("base", xpos="far_left", ypos="head") + gen "(Aaaaaaand I'm hard again...{w} Maybe some other time...)" ("base", xpos="far_left", ypos="head") + + $ cho_mood += 9 + + jump end_cho_talk_event + + +label cc_pf_talk_T2_E3: + + call play_music("cho") + cho "" ("annoyed", face="neutral", xpos="mid", ypos="base", trans=fade) + pause .5 + + gen "[cho_name], how is school life?" ("grin", xpos="far_left", ypos="head") + gen "I need to stay \"on top\" of all the latest \"hot goss\"..." ("base", xpos="far_left", ypos="head") + cho "Sir, I don't tend to pay attention to that sort of stuff." ("soft", "closed", "base", "mid") + gen "You must at least have heard something raunchy here at the school?" ("base", xpos="far_left", ypos="head") + cho "*Uhm*...{w} well..." ("annoyed", "base", "base", "R") + + menu: + "-Jerk off while she's talking-": + $ cho_jerk_off_counter += 1 + $ genie_masturbating = True + + hide cho_main + call nar(">You reach under the desk and grab your cock...") + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + cho "" ("base", "base", "base", "mid") + gen "You don't mind if I..." ("base", xpos="far_left", ypos="head") + cho "Mind what?!" ("soft", "base", "raised", "mid") + cho "!!!" ("upset", "wide", "base", "mid", cheeks="blush") # Shocked + gen "I have needs, girl." ("base", xpos="far_left", ypos="head") + cho "Gross!!!" ("angry", "closed", "angry", "mid") + cho "[cho_genie_name], might I suggest that you sort out those needs on your own then?" ("soft", "narrow", "angry", "R") + cho "Without me..." ("soft", "narrow", "angry", "mid") + gen "What a Bummer...{w=0.6} Last time you were such a great aid..." ("base", xpos="far_left", ypos="head") + cho "What?! When did I ever help you with that?" ("soft", "wide", "base", "mid") + gen "When you told me about that little fantasy you had with Granger!" ("grin", xpos="far_left", ypos="head") + cho "You shouldn't have paid attention to any of that!" ("mad", "happyCl", "worried", "mid", cheeks="blush") + gen "But I did!" ("grin", xpos="far_left", ypos="head") + gen "I could just tell Hermione that you're into her, you know..." ("base", xpos="far_left", ypos="head") + cho "I am so not into her!" ("clench", "narrow", "angry", "mid", cheeks="blush") + cho "(...)" ("annoyed", "narrow", "angry", "R", cheeks="heavy_blush") # Embarrassed + gen "Yes you are! Don't you dare lie to me...{w=0.6} Or yourself for that matter." ("grin", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "downR", cheeks="blush") + gen "So...{w=0.3} Is this going to be a problem or what?" ("base", xpos="far_left", ypos="head") + cho "Fine...{w=0.3} If you can't help yourself." ("soft", "narrow", "angry", "mid") + gen "Great!{w=0.3} Pretend like I'm not even here!" ("grin", xpos="far_left", ypos="head") + cho "I more likely will be pretending that {b}I'm{/b} not here..." ("soft", "narrow", "angry", "downR", cheeks="blush") # Small text + + "-Participate in the conversation-": + $ genie_masturbating = False + gen "(Seems like I'm not feeling the need to jack off today...{w=0.4} Free will is an illusion.)" ("base", xpos="far_left", ypos="head") + gen "(Oh well... Might as well pay attention for once.)" ("base", xpos="far_left", ypos="head") + gen "Go on, [cho_name]..." ("base", xpos="far_left", ypos="head") + + gen "Why don't you tell me some more about..." ("base", xpos="far_left", ypos="head") + cho "The Slytherins? Gladly!" ("open", "narrow", "angry", "mid") + gen "(I was going to say Hermione but sure...)" ("base", xpos="far_left", ypos="head") + + # Malfoy + cho "It was only yesterday that I had that stinking Malfoy boy snickering behind my back as I walked past him." ("open", "narrow", "angry", "R") + if genie_masturbating: + cho "I can only imagine the things that were on his mind..." ("annoyed", "narrow", "angry", "downR") + else: + gen "Yeah? Like what?" ("base", xpos="far_left", ypos="head") + cho "It's obvious if you ask me, Sir." ("open", "closed", "base", "mid") + cho "After all, he's just like any boy at this school...{w=0.6} They are all pervs." ("annoyed", "narrow", "angry", "mid") + cho "He even had the audaciousness to whistle at me, in front of everybody!" ("soft", "narrow", "base", "mid") + cho "And shout about what a \"great arse\" I have, and that he couldn't wait to \"beat it\"!" ("soft", "narrow", "angry", "mid") + if genie_masturbating: + gen "Great minds...{w=0.2} *Argh!* think alike!" ("angry", xpos="far_left", ypos="head") + else: + gen "Sounds to me like he was just enjoying the view!" ("grin", xpos="far_left", ypos="head") + cho "Next time he does it I'll turn him into a filthy ferret, I swear!" ("clench", "narrow", "angry", "down") + cho "" ("annoyed", "narrow", "angry", "mid") + if genie_masturbating: + gen "{size=-4}(You can do whatever you want with me too, if that's what turns you on baby!){/size}" ("angry", xpos="far_left", ypos="head") + gen "{size=-4}(I'd love to be your little pet ferret!){/size}" ("angry", xpos="far_left", ypos="head") + else: + gen "Your ass is a real head turner, isn't it?" ("base", xpos="far_left", ypos="head") + cho "To be frank with you, Sir...{w=0.6} I would be disappointed if it wasn't." ("base", "narrow", "base", "mid") + gen "Why don't you tease him a bit more then? Get him hooked on it..." ("base", xpos="far_left", ypos="head") + gen "It would be to our benefit, don't you think?" ("base", xpos="far_left", ypos="head") + cho "*Hmm*{w=0.3} Yes I could give him a peak once or twice." ("annoyed", "base", "base", "R") + cho "For as long as I don't have to let him touch it." ("soft", "narrow", "angry", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Anything else you could tell me?" ("base", xpos="far_left", ypos="head") + + # Crabbe & Goyle + if genie_masturbating: + cho "Then there are the two Slytherin beaters, Crabbe and Goyle..." ("soft", "narrow", "base", "mid") + else: + cho "Well, there are also the Slytherin beaters, Crabbe and Goyle..." ("soft", "narrow", "base", "mid") + cho "Malfoy's extraordinarily dense thugs..." ("angry", "closed", "angry", "mid") + cho "They've been strutting around school with their two bats..." ("soft", "narrow", "angry", "mid") + cho "Hitting any girl's bum that happens to be in their reach..." ("annoyed", "narrow", "angry", "R") + + if genie_masturbating: + cho "It's like they use them as target practice." ("soft", "narrow", "angry", "mid") + gen "*Argh*! {size=-4}(How nasty!){/size}" ("angry", xpos="far_left", ypos="head") + cho "I dare them to try it on me, those bastards!" ("clench", "narrow", "angry", "R") + gen "*Yes*! {size=-4}(You deserve a good spanking!){/size}" ("angry", xpos="far_left", ypos="head") + cho "I saw them go after Katie Bell today." ("soft", "narrow", "base", "mid") + cho "She was carrying a whole bunch of books...{w=0.8} so she couldn't simply run off or drop them." ("open", "narrow", "angry", "mid") + cho "She would have probably beaten them up immediately if that wasn't the case. Those cowards..." ("angry", "narrow", "angry", "mid") + gen "*Yes*! {size=-4}(I wouldn't mind borrowing one of those bats!){/size}" ("angry", xpos="far_left", ypos="head") + cho "They really did her dirty, Sir.{w} Even pulled down her skirt before they ran off!" ("annoyed", "narrow", "base", "mid") + gen "What a bunch of daredevils!" ("angry", xpos="far_left", ypos="head") + cho "Her bum was so red afterwards...{w=0.6} It was hard not to look at it..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "(Fuck yeah! You'd love to bury your face in some girl's ass, wouldn't you?!)" ("angry", xpos="far_left", ypos="head") + cho "She really does have a cute bum..." ("horny", "narrow", "base", "downR", cheeks="heavy_blush") + gen "But not as cute as Granger's, right?" ("angry", xpos="far_left", ypos="head") + else: + cho "They aren't even allowed to make use of any Quidditch equipment outside the Quidditch pitch area!" ("soft", "narrow", "angry", "R") + gen "Aren't you a bit too harsh on them?" ("base", xpos="far_left", ypos="head") + cho "Sir, since when is sexual harassment tolerated at this school?" ("angry", "closed", "angry", "mid") + gen "I bet there are many girls that enjoy the occasional spanking..." ("base", xpos="far_left", ypos="head") + cho "What?" ("soft", "wide", "base", "mid") + gen "Next time you should ask one of those girls..." ("base", xpos="far_left", ypos="head") + cho "Why would anyone enjoy that?{w=0.6} How ridiculous." ("soft", "narrow", "angry", "mid") + gen "They might just be too embarrassed to admit it..." ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "base", "mid") + gen "I'm sure miss Granger wouldn't be afraid to admit it, don't you think?" ("base", xpos="far_left", ypos="head") + + cho "Granger?" ("annoyed", "narrow", "angry", "R") + cho "Don't even talk to me about her..." ("annoyed", "narrow", "angry", "mid") + cho "She's a hypocrite and a slut..." ("soft", "closed", "base", "mid") + cho "And I hate her..." ("soft", "narrow", "angry", "mid") + cho "If you could make her die of embarrassment, I'd be more than thankful for it..." ("annoyed", "narrow", "angry", "mid") + gen "Embarrass her?{w=0.3} How?" ("grin", xpos="far_left", ypos="head") + gen "Share some of your ideas with me! I'd love to hear them!" ("grin", xpos="far_left", ypos="head") + cho "Very well..." ("soft", "closed", "base", "mid") + cho "(...)" ("annoyed", "base", "base", "R") # Thinks + cho "(...................)" ("annoyed", "narrow", "angry", "R") # Thinks harder + if genie_masturbating: + gen "Please?!" ("angry", xpos="far_left", ypos="head") + else: + gen "Anything?" ("base", xpos="far_left", ypos="head") + cho "Oh, I know!" ("smile", "wide", "base", "mid") + cho "Strip her down, and put her in a pillory!{w=0.8} -- In the middle of the Quidditch pitch!" ("smile", "narrow", "angry", "mid") + gen "Kinky! I like it!" ("grin", xpos="far_left", ypos="head") + cho "And let the entire school watch her as she's getting pounded by a horde of centaurs!!!" ("mad", "narrow", "angry", "mid") + + if genie_masturbating: + gen "*Argh!*{w=0.3} {size=-4}(What the hell?){/size}" ("angry", xpos="far_left", ypos="head") + cho "While there are bludgers flying around -- hitting her disgusting udders..." ("soft", "narrow", "angry", "mid") + gen "{size=-4}(That sounds really painful!){/size}" ("angry", xpos="far_left", ypos="head") + call nar("*Fap* *Fap* *Fap*!") + cho "Maybe another centaur takes her from the front..." ("open", "narrow", "angry", "R") + gen "*Agh*!{w=0.3} {size=-4}(I won't last long if she continues like this!){/size}" ("angry", xpos="far_left", ypos="head") + cho "And once those two are done breeding her, they trade places with another batch." ("clench", "narrow", "angry", "R") + gen "*Ahh* {size=-4}(This is getting too crazy!){/size}" ("angry", xpos="far_left", ypos="head") + cho "Or even better, let some trolls have their way with her!{w=0.8} Let them rip her apart!" ("clench", "base", "angry", "downR") + gen "*Fuck!* {size=-4}(Come on! Unload! Before it's too late!!!){/size}" ("angry", xpos="far_left", ypos="head") + + # Genie cums. + call hide_characters + hide screen bld1 + with d3 + + call cum_block + call gen_chibi("cum_behind_desk") + with d3 + pause .8 + + call bld + gen "{size=-4}(Yes! Here it comes!){/size}" ("angry", xpos="far_left", ypos="head") + + call cum_block + gen "*Agh*! {size=-4}(Here comes another!){/size}" ("angry", xpos="far_left", ypos="head") + + call cum_block + gen "*Phew*... {size=-4}(That was close!){/size}" ("base", xpos="far_left", ypos="head") + + # Genie stops. + hide screen bld1 + with d3 + pause .2 + + call gen_chibi("cum_behind_desk_done") + pause .8 + + cho "And put a large bucket under her, so when they--" ("soft", "closed", "base", "mid") + gen "Stop! No more!" ("angry", xpos="far_left", ypos="head") + cho "" ("annoyed", "base", "base", "mid") + gen "I've heard enough!" ("angry", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid") + gen "That was...{w=0.3} Very good." ("angry", xpos="far_left", ypos="head") + cho "Are we done here, Sir?" ("soft", "narrow", "angry", "mid") + + else: + gen "(...)" ("base", xpos="far_left", ypos="head") + cho "While there are bludgers flying around, hitting her disgusting udders..." ("soft", "narrow", "angry", "downR") + gen "*Uhm*..." ("base", xpos="far_left", ypos="head") + cho "What?!" ("angry", "narrow", "angry", "mid", trans=hpunch) # Angry + gen "Don't you think that's a bit extreme?" ("base", xpos="far_left", ypos="head") + cho "Why? For putting Granger in her natural habitat?" ("annoyed", "narrow", "angry", "mid") + cho "Enclosed on a vast grassy field..." ("soft", "closed", "base", "mid") + cho "Getting bred by a horde of bulls!" ("soft", "narrow", "base", "mid") + cho "A cow like her would love it..." ("annoyed", "narrow", "base", "downR", cheeks="blush") + gen "You seem very interested in the thought of it." ("base", xpos="far_left", ypos="head") + gen "From my perspective -- it appears that the worse you talk about her -- the more attracted to her you truly are!" ("grin", xpos="far_left", ypos="head") + cho "Rubbish..." ("soft", "narrow", "base", "mid", cheeks="blush") + gen "Girl, you are in denial!" ("grin", xpos="far_left", ypos="head") + cho "I am not!" ("clench", "closed", "angry", "mid", cheeks="blush") + cho "Sir are we done here?" ("soft", "narrow", "angry", "mid") + + if game.daytime: + cho "I'm late for class." ("soft", "narrow", "angry", "R") + else: + cho "I need to get some sleep." ("soft", "narrow", "angry", "R") + + cho "" ("annoyed", "narrow", "angry", "mid") + gen "*Uhm*... Sure..." ("base", xpos="far_left", ypos="head") + gen "I suppose we can wrap things up here." ("base", xpos="far_left", ypos="head") + gen "You are dismissed..." ("base", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("soft", "closed", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + call bld + gen "(Well that was weird.)" ("base", xpos="far_left", ypos="head") + gen "(That girl has a very wild imagination, I've got to say...)" ("base", xpos="far_left", ypos="head") + gen "(Although I have to admit, I'm a bit of a fanboy now...)" ("base", xpos="far_left", ypos="head") + gen "Go! Go! Ravenclaw!" ("grin", xpos="far_left", ypos="head") + + gen "(These boys do seem to have a particular fetish... Although having Cho confirm it herself should help...)" ("base", xpos="far_left", ypos="head") + + if not cho_requests_unlocked: + call popup("You can yet again buy \"Public Requests\" from Cho!", "Congratulations!", "interface/icons/head/cho.webp") + $ cho_requests_unlocked = True + + jump end_cho_talk_event + +label cc_pf_talk_T3_intro_E1: + + # Talk about Harry, Mentions Ron + + gen "[cho_name].{w=1.0} Are you in the mood for a little chat?" ("base", xpos="far_left", ypos="head") + cho "I suppose I am, [cho_genie_name]." ("open", "narrow", "base", "downR") + + # Cho moves to the middle + + cho "..." ("annoyed", "narrow", "base", "downR") + gen "*Sigh*... What is it?" ("base", xpos="far_left", ypos="head") + cho "It's Granger. She's been interfering with Quidditch again." ("open", "narrow", "base", "R") + gen "Of course that's it... Because there's never anything else on your mind..." ("base", xpos="far_left", ypos="head") + cho "[cho_genie_name], Quidditch is important to me!" ("disgust", "narrow", "angry", "mid") + gen "(I cannot wait until this quid-pitch nonsense is over...)" ("angry", xpos="far_left", ypos="head") + cho "I won't have her meddling with our training!" ("annoyed", "narrow", "angry", "R") + cho "I just won't have it!" ("open", "narrow", "angry", "mid") + cho "[cho_genie_name], please do something about it!" ("angry", "narrow", "base", "mid") + gen "Alright... Why don't you tell me more, and I'll do my best to listen..." ("base", xpos="far_left", ypos="head") + cho "Thank you, [cho_genie_name]." ("grin", "closed", "base", "mid") + + menu: + gen "(Although perhaps I could multitask...)" ("base", xpos="far_left", ypos="head") + + "-Masturbate-": + $ genie_masturbating = True + call gen_chibi("jerk_off_behind_desk") + with d5 + + cho "[cho_genie_name]!" ("clench", "narrow", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + cho "Weren't you going to listen to what I had to say?" ("disgust", "narrow", "angry", "mid", cheeks="blush") + gen "Yes." ("base", xpos="far_left", ypos="head") + cho "Then why are you jacking off?!" ("upset", "narrow", "angry", "mid", cheeks="blush") + "*fap-fap-fap-fap*" + gen "Why not? I can do both things perfectly fine if I want to..." ("base", xpos="far_left", ypos="head") + cho "Unbelievable..." ("disgust", "narrow", "base", "R", cheeks="blush") + + "-Pay attention-": + $ genie_masturbating = False + + gen "So tell me, what's Granger up to this time?" ("base", xpos="far_left", ypos="head") + cho "She won't let me talk to her friends!" ("annoyed", "closed", "angry", "down") + gen "Her friends?" ("base", xpos="far_left", ypos="head") + cho "Yeah... Surprising, isn't it?" ("annoyed", "narrow", "base", "mid") + cho "But yes, Granger does indeed have friends, believe it or not!" ("soft", "narrow", "base", "mid") + + if genie_masturbating: + gen "Are they hot?" ("grin", xpos="far_left", ypos="head") + cho "..." ("normal", "narrow", "base", "mid") + gen "Go on..." ("base", xpos="far_left", ypos="head") + cho "Do I have to answer that?" ("open", "narrow", "base", "downR") + gen "It would make things go so much quicker." ("base", xpos="far_left", ypos="head") + cho "Alright then..." ("disgust", "closed", "base", "mid", cheeks="blush") + "*fap* *fap* *fap*" + cho "Well I suppose they're pretty good looking." ("open", "narrow", "base", "downR", cheeks="blush") + gen "Describe them to me." ("base", xpos="far_left", ypos="head") + cho "Hmm... Well one's a redhead, lots of freckles, the other is raven-haired, and quite skinny." ("soft", "narrow", "base", "down", cheeks="blush") + gen "Nice! I fucking love redheads!" ("grin", xpos="far_left", ypos="head") + "*Fap* *Fap* *Fap*..." + gen "Does the carpet match the drapes?" ("base", xpos="far_left", ypos="head") + cho "I don't know, I don't exactly ask random dudes to drop trou for me." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Oh, well that's understandable--" ("base", xpos="far_left", ypos="head") + gen "Hold on, did you say dudes?" ("angry", xpos="far_left", ypos="head") + cho "Yeah, they're both guys." ("disgust", "narrow", "base", "mid") + gen "Why didn't you say so?!" ("angry", xpos="far_left", ypos="head") + cho "You didn't ask." ("annoyed", "narrow", "base", "mid") + gen "Does she not have any hot girlfriends you could tell me about instead?" ("base", xpos="far_left", ypos="head") + cho "Girlfriends? Well there's Ginny--" ("soft", "narrow", "base", "R") + cho "Hey! Don't think I don't know what you're trying to achieve here!" ("angry", "narrow", "angry", "mid") + cho "Would you please just focus for a minute? Without interrupting me?" ("annoyed", "narrow", "angry", "mid") + "*Fap* *Fap* *Fap*..." + cho "And, by Merlin's beard, could you please stop masturbating!" ("scream", "closed", "angry", "mid") + cho "" ("annoyed", "base", "angry", "mid") + gen "Fine... I didn't want to finish anyway..." ("base", xpos="far_left", ypos="head") #Genie stops masturbating + + call gen_chibi("sit_behind_desk") + + gen "Who are these boys then?" ("base", xpos="far_left", ypos="head") + else: + gen "Is that sarcasm I hear in your voice? Don't tell me you're jealous..." ("base", xpos="far_left", ypos="head") + cho "Jealous of what? I have better friends than her!" ("soft", "base", "angry", "mid") + gen "Of course you do." ("base", xpos="far_left", ypos="head") + cho "What? Are you making fun of me?" ("open", "narrow", "angry", "mid") + gen "I wouldn't dare, [cho_name], just looking out for you." ("base", xpos="far_left", ypos="head") + gen "You're a renowned, pretty, and talented little witch... The wrong people could be drawn to you." ("base", xpos="far_left", ypos="head") + cho "Who cares? I like being popular... At least none of them are as dense as those two..." ("soft", "closed", "angry", "mid") + gen "Who are you talking about exactly?" ("base", xpos="far_left", ypos="head") + + cho "Potter and Weasley!" ("open", "base", "angry", "mid") + gen "Could it be... The \"Potter Gang\"?" ("angry", xpos="far_left", ypos="head") + cho "The what, [cho_genie_name]?" ("angry", "base", "base", "mid") + gen "That's what Snape called them..." ("base", xpos="far_left", ypos="head") + cho "*Huh*... Does he now?" ("angry", "narrow", "base", "mid") + cho "The \"Granger Gang\" would be a more suitable name, if you asked me." ("disgust", "narrow", "base", "R") + cho "They just blindly follow her and do whatever she says..." ("open", "narrow", "angry", "R") + cho "I bet they only like her because of her big tits! Those pervs!" ("annoyed", "narrow", "angry", "downR") + gen "Why do you need to talk to these boys so badly, anyway?" ("base", xpos="far_left", ypos="head") + cho "Well, for starters... Their seeker... The Potter boy isn't playing fair at all." ("soft", "closed", "angry", "mid") + cho "Everyone knows Professor McGonagall keeps spoiling him..." ("annoyed", "closed", "angry", "mid") + cho "She's servicing his equipment on the daily!" ("soft", "narrow", "angry", "mid") + cho "Once he joined the Gryffindor team, he hasn't needed to polish his handle himself even once." ("open", "narrow", "angry", "downR") + gen "Not once?" ("base", xpos="far_left", ypos="head") + gen "Sounds like a real player..." ("base", xpos="far_left", ypos="head") + cho "I'm certain If I caught him alone I'd be able to get something out of him..." ("normal", "narrow", "angry", "R") + gen "And what would that be?" ("angry", xpos="far_left", ypos="head") + cho "If I could just get close enough to get an insight of how he uses his tools..." ("soft", "narrow", "angry", "downR") + gen "You want to see how he uses his tools?" ("angry", xpos="far_left", ypos="head") + cho "See? Don't be silly!" ("disgust", "narrow", "angry", "mid") + gen "Good, I was worried there for a--" ("base", xpos="far_left", ypos="head") + cho "I want to touch it at the very least! I'd do anything to lay my hands on that magnificent piece of wood of his..." ("open", "narrow", "angry", "mid") + gen "What!" ("angry", xpos="far_left", ypos="head") + cho "I fondly remember the day I first laid my eyes on it..." ("base", "closed", "base", "mid") + cho "How could a girl like me not fall in love with it?" ("smile", "closed", "base", "mid", cheeks="blush") + gen "(Oh no!)" ("angry", xpos="far_left", ypos="head") + cho "It was the most exquisite piece of wood I had ever seen..." ("grin", "closed", "base", "mid", cheeks="blush") + gen "(!!!)" ("angry", xpos="far_left", ypos="head") + cho "Truly a sight to behold..." ("grin", "base", "base", "mid") + gen "Certainly it can't be {b}that{/b} impressive." ("angry", xpos="far_left", ypos="head") + cho "There's nothing to even compare it to, [cho_genie_name]! It's magnificent!" ("smile", "base", "base", "mid", cheeks="blush") + cho "And the way he uses it..." ("smile", "closed", "base", "mid", cheeks="blush") + gen "(I can't lose to some meagre mortal!)" ("angry", xpos="far_left", ypos="head") + cho "I've been trying to ask him to let me ride on it for years but Granger always--" ("soft", "closed", "base", "mid", cheeks="blush") + gen "Well luckily for you, [cho_name], you have me!" ("grin", xpos="far_left", ypos="head") + gen "Just let me take it out of my--" ("base", xpos="far_left", ypos="head") + cho "You'll get me the firebolt?!" ("angry", "wide", "base", "mid") + gen "Get you a what, sorry?" ("base", xpos="far_left", ypos="head") + cho "The firebolt! Surely you must have seen Potter's?" ("smile", "wide", "base", "mid") + gen "I most certainly have not!" ("base", xpos="far_left", ypos="head") + cho "I'm sure if you could get me a broom like that it would assure my--, I mean, our victory!" ("smile", "base", "base", "mid") + gen "Wait... A broom? That's what all of this is about?" ("angry", xpos="far_left", ypos="head") + cho "Yes? What else would it be?" ("soft", "narrow", "raised", "mid") + gen "I'm going to need a moment..." ("base", xpos="far_left", ypos="head") + cho "[cho_genie_name]?" ("open", "base", "raised", "mid") + gen "That will be all for today..." ("base", xpos="far_left", ypos="head") + cho "What about the broom?" ("angry", "base", "base", "mid") + gen "Enough with the broom!" ("base", xpos="far_left", ypos="head") + gen "You've got a perfectly good broom already. I don't see why you'd need another one." ("base", xpos="far_left", ypos="head") + cho "Scrooge..." ("annoyed", "narrow", "base", "R") #sad + gen "Don't give me that..." ("base", xpos="far_left", ypos="head") + + if broom_2000_ITEM.owned > 0: + #flag true, if genie owns a dildo broom + gen "Fine..." ("base", xpos="far_left", ypos="head") + gen "If you want a new broom this badly then I got just the thing..." ("grin", xpos="far_left", ypos="head") + cho "Really? Is it the Firebolt?" ("smile", "base", "base", "mid") + gen "Even better!" ("grin", xpos="far_left", ypos="head") + cho "A prototype?!" ("grin", "base", "base", "L") # excited + cho "I heard rumours about a new nimbus--" ("smile", "base", "base", "L") + gen "Why don't you have a look for yourself, here you go!" ("base", xpos="far_left", ypos="head") + gen "You can thank me later." ("grin", xpos="far_left", ypos="head") + ">You hand the broom to Cho." + #TODO have it show the broom + cho "Thank--" ("smile", "narrow", "base", "mid") + cho "Is that a dildo!?!" ("clench", "wide", "base", "down") + gen "Yes! I'm sure this will be perfect for our plans!" ("base", xpos="far_left", ypos="head") + cho "You can't be serious..." ("disgust", "wide", "base", "mid", cheeks="blush") + gen "Why wouldn't I be serious... surely you can't deny this would grab some attention." ("base", xpos="far_left", ypos="head") + cho "But..." ("angry", "base", "base", "down", cheeks="blush") + gen "Yes indeed, that's where one of them--" ("grin", xpos="far_left", ypos="head") + cho "Let's just forget about the idea of a new broom for now..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "But you were so insistent a minute ago..." ("base", xpos="far_left", ypos="head") + cho "No, just forget about it.... Let's try something else..." ("angry", "narrow", "base", "downR", cheeks="blush") + gen "Okay then..." ("base", xpos="far_left", ypos="head") + cho "I think--{w=0.3} I better--{w=0.3}" ("clench", "narrow", "base", "R", cheeks="blush") + + if game.daytime: + cho "Head back to class." ("disgust", "narrow", "base", "R", cheeks="blush") + else: + cho "Go to bed." ("disgust", "narrow", "base", "R", cheeks="blush") + gen "Alright." ("base", xpos="far_left", ypos="head") + else: + cho "Okay then..." ("annoyed", "narrow", "base", "R") + gen "That will be all for today [cho_name]." ("base", xpos="far_left", ypos="head") + cho "But... I didn't even get to tell you about the other member of Weasley's family--" ("angry", "base", "base", "mid") + gen "Enough boy talk for today..." ("base", xpos="far_left", ypos="head") + cho "Sir, but--" ("soft", "base", "base", "mid") + gen "I said that's enough." ("base", xpos="far_left", ypos="head") + cho "Fine..." ("annoyed", "narrow", "base", "mid") + + if game.daytime: + cho "I'll just head back to class then..." ("annoyed", "base", "base", "R") + else: + cho "I'll just head off to bed then..." ("annoyed", "base", "base", "R") + gen "Until next time [cho_name]." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + $ cho_mood += 3 + + gen "(A Broom... Of course she was talking about a broom.)" ("base", xpos="far_left", ypos="head") + + jump end_cho_talk_event + +label cc_pf_talk_T3_intro_E2: + #Mentions the twins and the girls + gen "Let's have another chat, [cho_name]." ("base", xpos="far_left", ypos="head") + cho "About Quidditch?" ("smile", "base", "base", "mid") + gen "About--" ("base", xpos="far_left", ypos="head") + gen "Why is it always about Quidditch with you?" ("angry", xpos="far_left", ypos="head") + gen "Don't you have anything else on your mind?" ("base", xpos="far_left", ypos="head") + cho "Of course I do!" ("soft", "base", "base", "mid") + cho "But I thought my Quidditch training was the reason you summoned me here, or am I wrong?" ("open", "base", "raised", "mid") + gen "That was not the reason." ("base", xpos="far_left", ypos="head") + gen "Now step closer would you?" ("base", xpos="far_left", ypos="head") + cho "Alright?" ("open", "base", "raised", "mid") + + # Cho moves to desk + call cho_walk(xpos="desk") + + cho "So, what would you like to talk about, [cho_genie_name]?" ("soft", "narrow", "base", "R") + gen "I don't know..." ("base", xpos="far_left", ypos="head") + gen "Cute boys... Or your very attractive male teachers..." ("base", xpos="far_left", ypos="head") + gen "You know, silly girls stuff..." ("base", xpos="far_left", ypos="head") + cho "Really?" ("disgust", "narrow", "base", "mid") + gen "No." ("base", xpos="far_left", ypos="head") + cho "You know, there are a whole bunch of girls who take Quidditch seriously, just like I do!" ("disgust", "narrow", "base", "mid") + gen "And I've yet to meet a single one. Except for you of course..." ("base", xpos="far_left", ypos="head") + gen "Besides, didn't you and Granger make a huge deal out of it? The lack of acceptance for female players and all that jazz?" ("base", xpos="far_left", ypos="head") + gen "You both made it seem as if it was a hopeless endeavour to be taken seriously as a female player..." ("base", xpos="far_left", ypos="head") + cho "That doesn't mean there aren't exceptions." ("angry", "narrow", "base", "mid") + gen "What do you mean?" ("base", xpos="far_left", ypos="head") + cho "Gryffindor has plenty of girls on their team!" ("angry", "base", "base", "mid") + gen "What?! Why didn't you say so sooner?" ("angry", xpos="far_left", ypos="head") + cho "Besides Potter and the Weasleys, the rest of them are all girls." ("open", "base", "base", "mid") + gen "Five girls?!?" ("base", xpos="far_left", ypos="head") + cho "What... No... There's three of them." ("disgust", "base", "base", "mid") + gen "But you just said--" ("base", xpos="far_left", ypos="head") + cho "There's Harry Potter, Ron Weasley and his two older twin brothers Fred and George." ("open", "base", "base", "mid") + + if item_store_intro_done: + gen "Of course... The twins..." ("base", xpos="far_left", ypos="head") + gen "As if one weasel wasn't enough." ("base", xpos="far_left", ypos="head") + else: + gen "That's a lot of Weasels." ("base", xpos="far_left", ypos="head") + + cho "That's just the ones on their Quidditch team." ("soft", "base", "base", "mid") + gen "Their parents must've been some busy... Weasels." ("base", xpos="far_left", ypos="head") + gen "Anyhow, enough about them." ("base", xpos="far_left", ypos="head") + gen "Tell me everything you know about the girls!" ("grin", xpos="far_left", ypos="head") + gen "What are their shoe sizes?{w=0.5} No actually, cup sizes... What are their cup sizes?" ("grin", xpos="far_left", ypos="head") + cho "How do you expect me to know?!" ("angry", "base", "base", "mid", cheeks="blush") + gen "You're right, I'm getting ahead of myself...{w=0.4} One thing at a time." ("base", xpos="far_left", ypos="head") + gen "Let's start with their names. What are their names?" ("base", xpos="far_left", ypos="head") + cho "Well... There's Angelina Johnson, she's their Captain." ("soft", "base", "base", "mid") + gen "What? I thought the Potter boy was?" ("base", xpos="far_left", ypos="head") + cho "*Pfff*... What? Don't make me laugh..." ("smile", "narrow", "base", "mid") + cho "Angelina Johnson has been their captain ever since she took over after Oliver Wood." ("soft", "base", "base", "mid") + gen "I see... So the requirement is that your last name has to be an innuendo for male genitalia... Got it." ("base", xpos="far_left", ypos="head") + gen "What about the other girls? What are their names?" ("base", xpos="far_left", ypos="head") + cho "Katie Bell and Alicia Spinnet." ("open", "base", "base", "mid") + gen "Anything important I should know about them?" ("base", xpos="far_left", ypos="head") + cho "The three of them make up the chaser positions on their team." ("open", "base", "base", "mid") + gen "A threesome of girls, very nice..." ("grin", xpos="far_left", ypos="head") + cho "A threesome?!" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "A trio!{w=1.0} A trio of girl chasers, is what I said." ("angry", xpos="far_left", ypos="head") + cho "That's not what I heard..." ("disgust", "narrow", "base", "mid", cheeks="blush") # suspicious + gen "(I should distract her.)" ("base", xpos="far_left", ypos="head") + gen "Girl power!" ("grin", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "angry", "mid", cheeks="blush") + gen "(Task failed successfully!)" ("grin", xpos="far_left", ypos="head") + gen "So what's their deal then?" ("base", xpos="far_left", ypos="head") + gen "Anything you can tell me about their... team-play?" ("base", xpos="far_left", ypos="head") + cho "Their actual team play?" ("annoyed", "base", "angry", "mid", cheeks="blush") + gen "Sure." ("base", xpos="far_left", ypos="head") + + cho "Well, I'd lie if I said that their team play isn't one of their strong suits." ("open", "closed", "angry", "mid") + cho "When it comes to the girls at least." ("soft", "narrow", "base", "mid") + cho "Angelina has put a lot more effort into training them than the boys." ("open", "closed", "base", "mid") + cho "She works them long and hard, the girls always show up late for lessons, or dinner..." ("open", "base", "base", "mid") + cho "Their training routine must be intense, they always look tired and dishevelled, but also happy, just like me after a hard training session!" ("smile", "base", "base", "mid") + + gen "Girl, you've got this completely wrong..." ("base", xpos="far_left", ypos="head") + cho "What do you mean, [cho_genie_name]?" ("soft", "base", "base", "mid") + gen "They're probably doing it." ("base", xpos="far_left", ypos="head") + cho "Doing what?" ("open", "base", "base", "mid") + gen "Doing \"it\"...{w} With each other!" ("grin", xpos="far_left", ypos="head") + cho "Yeah, right..." ("base", "narrow", "base", "R", cheeks="blush") + cho "They do seem pretty close-knit as far as I can tell... But that doesn't mean they're... {i}Doing it{/i}..." ("smile", "narrow", "base", "R", cheeks="blush") + gen "Trust me, they're doing it alright." ("base", xpos="far_left", ypos="head") + gen "And that's great news for us!" ("base", xpos="far_left", ypos="head") + cho "Why on earth would that be--" ("disgust", "base", "base", "mid", cheeks="blush") + gen "Why there's plenty of ways to take advantage of that." ("base", xpos="far_left", ypos="head") + cho "[cho_genie_name]?" ("disgust", "narrow", "base", "mid", cheeks="blush") #shocked + gen "Just a thought..." ("base", xpos="far_left", ypos="head") + gen "In any case, you'll have to tell me more about them later... I'm sure we've only scratched the surface regarding those three." ("base", xpos="far_left", ypos="head") + cho "Alright..." ("annoyed", "base", "base", "mid") + + if game.daytime: + cho "I'll head back to class in that case." ("open", "base", "base", "R") + gen "Certainly..." ("base", xpos="far_left", ypos="head") + else: + cho "I'll head off to bed then..." ("open", "base", "base", "R") + gen "Of course..." ("base", xpos="far_left", ypos="head") + + call cho_walk(xpos="door") + + gen "Three girls! Hot damn!" ("grin", xpos="far_left", ypos="head") + cho "*Sigh*..." ("base", "narrow", "base", "down", cheeks="blush", flip=True) + + # Cho leaves. + call cho_walk(action="leave") + + jump end_cho_talk_event + +label cc_pf_talk_T3_E3: + # Talk more about each player. (Detailed descriptions.) + + gen "Let's discuss those girls again..." ("base", xpos="far_left", ypos="head") + cho "What girls?" ("soft", "base", "base", "mid") + gen "The ones on the Gryffindor team of course!" ("base", xpos="far_left", ypos="head") + cho "Oh, okay then!" ("base", "base", "base", "mid") + + $ _selected = [False, False, False] + + label .choices_female: + + if not all(x == True for x in _selected): + + menu: + cho "Who would you like to know about?" + + #Lets you pick any order but you do all of them + #Angelina Johnson + "\"Tell me more about their Captain, Angelina.\"" if not _selected[0]: + $ _selected[0] = True + + cho "I'm surprised you remembered her name." ("soft", "base", "base", "mid") + gen "Of course, she's the one with the Johnson wasn't she?" ("base", xpos="far_left", ypos="head") + cho "Her name is Johnson." ("disgust", "narrow", "base", "mid") + gen "That's the one." ("base", xpos="far_left", ypos="head") + gen "So what more can you tell me about her--{w=0.2} I mean, Miss Johnson." ("base", xpos="far_left", ypos="head") + cho "Well, as I said before, Angelina's main focus is on the girls of their team rather than the boys." ("open", "narrow", "base", "mid") + cho "She's quite temperamental and has little patience with their antics... The twins especially." ("open", "base", "base", "R") + gen "So she's putting more effort into training the ones that she's sexually involved with?" ("grin", xpos="far_left", ypos="head") + cho "If that's actually what's happening..." ("open", "narrow", "raised", "mid") + gen "Preferential treatment in exchange for sex... In my school..." ("base", xpos="far_left", ypos="head") + cho "Yes, who could've imagined..." ("open", "narrow", "base", "R") + gen "So there's no synergy between the boys and the girls of their team then?" ("base", xpos="far_left", ypos="head") + cho "Not really." ("open", "base", "base", "mid") + gen "Then how the hell did they make the finals?" ("base", xpos="far_left", ypos="head") + cho "Well, As long as the chasers and beaters have good synergy between each other then you'll probably be fine." ("soft", "narrow", "base", "mid") + cho "The girls all play extremely well together and so does the twins." ("soft", "base", "base", "mid") + cho "The Keeper and seeker sort of does their own thing." ("open", "base", "base", "mid") + gen "Right... Miss Grangers friends..." ("base", xpos="far_left", ypos="head") + cho "Yes... To be honest I doubt Harry and Ron would still be on the team if it wasn't for Angelina's lack of interest in training them..." ("soft", "narrow", "base", "mid") + gen "Really?" ("base", xpos="far_left", ypos="head") + cho "Granger is quite protective of her friends but still let them play despite having a female captain." ("annoyed", "base", "base", "mid") + cho "She bosses them around a lot, and would probably feel threatened if Angelina actually did her job properly." ("smile", "narrow", "base", "R") + gen "*Hmm*... Interesting..." ("base", xpos="far_left", ypos="head") + + jump .choices_female + + #Katie Bell + "\"Tell me about Katie Bell.\"" if not _selected[1]: + $ _selected[1] = True + + cho "She's the bell end of the {i}triple threat{/i}." ("smile", "narrow", "base", "mid") + gen "*Heh*! A bellend... Good one!" ("grin", xpos="far_left", ypos="head") + gen "Did you come up with that yourself?" ("base", xpos="far_left", ypos="head") + cho "I did! Surprised?" ("smile", "wink", "base", "mid") + gen "A little, I didn't think you had it in you." ("base", xpos="far_left", ypos="head") + cho "I'm full of surprises, [cho_genie_name]." ("smile", "narrow", "base", "mid") # wink + cho "As for Katie, well... She's a bit weird to be honest..." ("base", "narrow", "base", "R") + gen "What makes you say so?" ("base", xpos="far_left", ypos="head") + cho "I don't know... She doesn't talk much, and always seems to have her head in the clouds during practice." ("open", "narrow", "base", "downR") + gen "I didn't think you flew that high during practice!" ("base", xpos="far_left", ypos="head") + cho "*giggle*" ("smile", "narrow", "base", "downR") + cho "..." ("base", "narrow", "base", "downR", cheeks="blush") #Blushes + cho "Anyway... Not much else to say about her." ("open", "base", "base", "mid") + gen "We'll figure something out." ("base", xpos="far_left", ypos="head") + + jump .choices_female + + #Alicia Spinnet + "\"Tell me about Alicia Spinnet.\"" if not _selected[2]: + $ _selected[2] = True + + cho "Well, honestly I find it difficult to dislike her." ("soft", "base", "base", "mid") + gen "Why is that, isn't she your enemy?" ("base", xpos="far_left", ypos="head") + cho "*Hmm*... Then let's just say she has my respects." ("base", "base", "base", "downR") + cho "Whilst Angelina is the captain, she doesn't pay enough attention to the boys--" ("base", "base", "base", "mid") + cho "--but Alicia has no problem taking control of them." ("soft", "narrow", "base", "mid") + gen "Taking control?" ("base", xpos="far_left", ypos="head") + gen "She's a bit of a {i}domina{/i} then?" ("base", xpos="far_left", ypos="head") + cho "A what?" ("soft", "base", "base", "mid") + gen "Never mind, please continue..." ("base", xpos="far_left", ypos="head") + cho "Alicia is very clever, she uses manipulation on people to get her way." ("soft", "narrow", "base", "R") + gen "Manipulation? How cruel!" ("base", xpos="far_left", ypos="head") + cho "I'm not exactly sure how she does it, but it works, the boys doesn't seem much wiser about it either." ("base", "narrow", "base", "R") + gen "(Sounds less like manipulation and more like a female teacher I know...)" ("base", xpos="far_left", ypos="head") + gen "Anything else you know about her?" ("base", xpos="far_left", ypos="head") + cho "That about covers it." ("soft", "base", "base", "mid") + + jump .choices_female + + gen "Alright then... I suppose we should discuss those pesky boys as well..." ("base", xpos="far_left", ypos="head") + + $ _selected = [False, False, False] + + label .choices_male: + + if not all(x == True for x in _selected): + + menu: + #Lets you pick any order but you do all of them + #Harry Potter + "\"Tell me about their seeker.\"" if not _selected[0]: + $ _selected[0] = True + + cho "Harry Potter?" ("soft", "base", "base", "mid") + gen "The Potter boy!" ("base", xpos="far_left", ypos="head") + cho "Yes?" ("soft", "base", "raised", "mid") + gen "I feel like that name should have more importance for some reason..." ("base", xpos="far_left", ypos="head") + cho "I don't know, he seems pretty boring if you ask me." ("open", "narrow", "base", "R") + gen "What do you know about him? And don't give me another spiel about his broomstick..." ("base", xpos="far_left", ypos="head") + cho "*Hmm*..." ("soft", "narrow", "base", "downR") + gen "Any weaknesses?" ("base", xpos="far_left", ypos="head") + cho "I assume you're not talking about Quidditch." ("open", "narrow", "base", "mid") + gen "Is he like a boob guy or an ass guy?" ("base", xpos="far_left", ypos="head") + cho "He's the winning type of guy." ("soft", "closed", "base", "mid") + gen "So you say you don't know?" ("base", xpos="far_left", ypos="head") + cho "As I have mentioned before, I haven't been able to talk with him one on one because of Granger..." ("disgust", "narrow", "base", "R") + cho "All I know is that he's really competitive, his father used to be a great chaser so I suppose it runs in the family." ("open", "base", "base", "mid") + gen "Fair enough." ("base", xpos="far_left", ypos="head") + + jump .choices_male + + #Weasley Twins + "\"Tell me about their beaters.\"" if not _selected[1]: + $ _selected[1] = True + + cho "That would be the Weasley twins." ("open", "base", "base", "mid") + gen "Know anything about them?" ("base", xpos="far_left", ypos="head") + cho "They're tricksters..." ("angry", "narrow", "base", "mid") + cho "They love controversy and stirring things up for a laugh." ("angry", "base", "base", "mid") + cho "The type of player that values messing around rather than focusing on winning the game." ("disgust", "narrow", "base", "mid") + gen "So they're basically trolls?" ("base", xpos="far_left", ypos="head") + cho "Trolls? *giggle*" ("smile", "narrow", "base", "mid") + cho "I know looks can be deceiving, but I don't think they're trolls, [cho_genie_name]." ("smile", "narrow", "base", "R") + gen "*Hmm*... Maybe not." ("base", xpos="far_left", ypos="head") + cho "All they care about is that joke shop of theirs..." ("base", "narrow", "base", "R") + cho "It's everything they ever talk about during lunch." ("base", "base", "base", "mid") + cho "I feel like if they could and had a good reason to, they'd just ditch school altogether." ("base", "narrow", "base", "downR") + gen "So, what do you suggest we do against those two?" ("base", xpos="far_left", ypos="head") + cho "I'm not sure, I think they might enjoy the idea of throwing the game for a laugh, but I doubt their younger brother would forgive them if they did..." ("smile", "base", "base", "mid") + gen "I see..." ("base", xpos="far_left", ypos="head") + + jump .choices_male + + #Ron Weasley + "\"Tell me about their keeper.\"" if not _selected[2]: + $ _selected[2] = True + + cho "That's one of the Weasley brothers... Ron Weasley..." ("open", "base", "base", "mid") + gen "Wrong Weasley you say..." ("base", xpos="far_left", ypos="head") + cho "Ron, [cho_genie_name]..." ("soft", "narrow", "base", "mid") + gen "Oh, sorry then what did you say his name was?" ("base", xpos="far_left", ypos="head") + cho "...{w} His name is Ron." ("disgust", "base", "base", "mid") + gen "Right...{w} So what do you know about him?" ("base", xpos="far_left", ypos="head") + cho "Not much aside from the fact that he's one of Granger's friends..." ("annoyed", "narrow", "base", "mid") + gen "I see." ("base", xpos="far_left", ypos="head") + cho "He's a new addition to their team so I haven't yet been able to see how good he's with a broom." ("open", "base", "base", "mid") + cho "All I've heard is that he's gone from quite the nervous rookie to a great keeper..." ("soft", "base", "base", "mid") + gen "Sounds suspicious..." ("base", xpos="far_left", ypos="head") + cho "It's likely that Granger has been enticing him to do better." ("annoyed", "narrow", "base", "R") + gen "They aren't dating, are they?" ("base", xpos="far_left", ypos="head") + cho "No... All I'm saying is that it wouldn't surprise me if Granger had something to do with it." ("annoyed", "narrow", "angry", "downR") + gen "I see..." ("base", xpos="far_left", ypos="head") + cho "Granger dating a {i}weasel{/i}... Now that's funny." ("smile", "narrow", "base", "downR") + + jump .choices_male + + gen "Is that all of them?" ("base", xpos="far_left", ypos="head") + cho "Yes, that's it." ("base", "base", "base", "mid") + gen "I think I've got a rough idea how to approach this but..." ("base", xpos="far_left", ypos="head") + gen "It might be worth learning a bit more about their non-curriculum activities." ("base", xpos="far_left", ypos="head") + cho "And how do you suggest I do that?" ("open", "base", "base", "mid") + gen "Espionage!" ("base", xpos="far_left", ypos="head") + cho "Espionage?" ("soft", "base", "raised", "mid") + gen "It's worth considering at least, don't you think?" ("base", xpos="far_left", ypos="head") + cho "*Hmm*... Maybe..." ("soft", "base", "base", "mid") + gen "Anyway, I think that's enough for now. My attention span only lasts for so long." ("base", xpos="far_left", ypos="head") + cho "Alright then..." ("open", "base", "base", "mid") + cho "Until next time." ("base", "base", "base", "mid") + + #Cho leaves + call cho_walk(action="leave") + + if not cho_requests_unlocked: + call popup("You can yet again buy \"Public Requests\" from Cho!", "Congratulations!", "interface/icons/head/cho.webp") + $ cho_requests_unlocked = True + + jump end_cho_talk_event diff --git a/game/scripts/characters/cho/events/intro.rpy b/game/scripts/characters/cho/events/intro.rpy new file mode 100644 index 00000000..cad7d8cd --- /dev/null +++ b/game/scripts/characters/cho/events/intro.rpy @@ -0,0 +1,1001 @@ + + +### Cho Intro ### + +### Event 1 ### +# Cho first events your office, complaining about Hermione. +# Hermione enters and they have a fight. + +label cho_intro_E1: + stop music fadeout 1.0 + call play_sound("knocking") + call bld + "*Knock-knock-knock*" + gen "(...)" ("base", xpos="far_left", ypos="head") + + call play_sound("knocking") + "*Knock-knock-knock*" + gen "(Who's that?)" ("base", xpos="far_left", ypos="head") + gen "(Can't be Hermione, she never knocks anymore.)" ("base", xpos="far_left", ypos="head") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "I bet it's another girl!" ("grin", xpos="far_left", ypos="head") + + call play_sound("knocking") + "*Knock-knock-knock*" + gen "Please, give me a moment..." ("base", xpos="far_left", ypos="head") + gen "I just need to--{w=1.0} *urgh*!" ("angry", xpos="far_left", ypos="head") + call play_sound("equip_inventory") + gen "Adjust my pants...{w=1.0} There we go." ("base", xpos="far_left", ypos="head") + + $ d_flag_01 = False + + menu: + "\"Who is it?\"": + $ d_flag_01 = True + + call bld + cho "Cho Chang, Sir." + gen "(Such a cute name... please be hot, please be hot...!)" ("angry", xpos="far_left", ypos="head") + cho "May I come in?" + gen "Please have nice tits!" ("grin", xpos="far_left", ypos="head") + cho "Sir?" + gen "Oh, right... Come in." ("base", xpos="far_left", ypos="head") + + "\"Come in!\"": + pass + + + # Cho enters your office for the first time. + call cho_walk("desk", "base", action="enter") + + call play_music("cho") + + $ cho.set_face(mouth="base", eyes="base", eyebrows="base", pupils="mid") + $ camera.set_imagepath("common/") + $ camera.set_image("CG cho") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=0.5, pos=(-270, -150), initialize=True) + show screen animatedCG + with fade + + cho "Good morning, Sir." ("base", "base", "base", "mid", xpos="mid", ypos="base") + + menu: + "\"Hello, Miss Chang.\"" if d_flag_01 == True: + cho "Hello to you too, Professor." ("smile", "base", "base", "mid") + + "\"Hello, Princess.\"": + cho "*Uhm*..." ("annoyed", "wide", "base", "mid") + cho "Sir, I'd much prefer not to be called nicknames." ("open", "closed", "base", "mid") + cho "Mutual respect is very important for a student-teacher relationship to work." ("open", "base", "base", "down") + gen "(She must be fun at parties..)" + cho "I'd much prefer if you called me Cho, or Miss Chang..." ("open", "base", "raised", "mid") + gen "And how is that any different..." + cho "It's my name, Sir!" ("annoyed", "narrow", "base", "mid") + gen "I see..." + gen "Very well... Miss Chang it is..." + cho "Thank you." ("smile", "base", "base", "mid") + cho "Anyway..." ("silly", "happyCl", "base", "mid") + + "\"Hey there, Chap.\"": + cho "Sir?" ("clench", "wide", "base", "mid") + gen "What?" + cho "I'm a girl!" ("angry", "narrow", "angry", "mid") + gen "Oh, of course you are... You just seemed a bit..." + cho "A bit what?" ("annoyed", "narrow", "angry", "mid") + gen "(Don't say tomboy-ish, don't say tomboy-ish...)" + + menu: # doesn't matter what you pick + "\"Tomboyish\"": + pass + "\"Flat\"": + pass + "\"Short\"": + pass + + cho "What? Professor how dare you suggest I--" ("clench", "wide", "base", "mid") + gen "Hold on!" + gen "Silly me I forgot where I put my glasses." + cho "" ("annoyed", "narrow", "angry", "mid") + gen "You have to excuse my poor eye-sight." + gen "I'm very,{w} very,{w} very,{w} very old." + gen "You're clearly \"not\" a boy..." + gen "(Smooth...)" + cho "Right... well since you seem unable to see very well..." ("open", "narrow", "base", "downR") + gen "..." + cho "It's Cho Chang." ("base", "narrow", "base", "mid") + gen "Ah, Miss Chang..." + gen "(Should I know who she is?)" + cho "Yes, anyway..." ("open", "closed", "base", "mid") + + "\"Xiao Hua...\"": + cho "*Uhm*... thanks..." ("normal", "narrow", "raised", "mid") + cho "But I don't speak that much Mandarin, Sir." ("open", "closed", "base", "mid") + cho "I was actually born here..." ("base", "narrow", "base", "mid") + gen "Where?" + cho "In Scotland, Sir." ("angry", "wink", "base", "mid") + cho "People always act surprised when they find that out." ("open", "base", "base", "R") + cho "It doesn't help that my name sounds so Asian...{w} Cho Chang..." ("annoyed", "narrow", "angry", "up") + gen "..." + cho "Anyway..." ("open", "closed", "base", "mid") + + hide screen animatedCG + with fade + + cho "I'm terribly sorry for bothering you, Sir.{w=0.8} I hope I'm not interrupting anything important." ("open", "base", "worried", "mid") + gen "No worries, I can always spare some of my...{w=0.6} valuable time...{w=1.0} *Ahem*{w=0.6} for my dear students..." ("base", xpos="far_left", ypos="head") + gen "What's on your mind?" ("grin", xpos="far_left", ypos="head") + + # Talk about her issue with Hermione + cho "It's-- It's Hermione Granger, Sir." ("annoyed", "narrow", "worried", "R") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "-The Granger girl?-": + gen "What did she do this time?" ("base", xpos="far_left", ypos="head") + pass + "-That troublemaker...-": + gen "I promise you, I'll give her a good {i}ole fashioned spanking{/i} next time I see her." ("grin", xpos="far_left", ypos="head") + cho "A Spanking?" ("angry", "wide", "base", "mid") + cho "And why would you do that, Professor?" ("open", "narrow", "raised", "mid") + cho "(He really must be old...{w} They probably did stuff like that all the time back in the day...)" ("angry", "narrow", "worried", "downR") + pass + + cho "Well Sir, it's about that new movement of hers..." ("open", "closed", "base", "mid") + gen "The \"Men's rights movement?\" I'm familiar." ("base", xpos="far_left", ypos="head") + cho "Not that one, Sir...{w=0.8} The other one..." ("open", "narrow", "worried", "downR") + gen "Oh good...{w=0.5} another one..." ("angry", xpos="far_left", ypos="head") + cho "Yes... And you need to stop it Professor!" ("angry", "base", "base", "mid") + cho "Her{w=0.5} \"Quidditch equality movement\"." ("soft", "narrow", "angry", "mid") + gen "Her what now?" ("base", xpos="far_left", ypos="head") + cho "I know! It's absolutely ridiculous...{w=0.5} It's going to ruin the sport for all of us!" ("clench", "base", "worried", "mid") + + gen "Sport? Which sport?" ("base", xpos="far_left", ypos="head") + cho "Quidditch!" ("scream", "narrow", "angry", "mid") + cho "" ("annoyed", "narrow", "angry", "mid") + gen "(Quidditch? What a stupid name for a sport.)" ("base", xpos="far_left", ypos="head") + cho "The movements' goal is to grant a larger portion of our female students the ability to play." ("open", "narrow", "base", "down") + gen "And...{w} that's a bad thing?" ("base", xpos="far_left", ypos="head") + cho "Her way of going about to achieve it is..." ("annoyed", "narrow", "angry", "R") + cho "Granger is trying to separate us into male and female teams." ("annoyed", "narrow", "worried", "mid") + cho "She believes it would put girls on an equal playing field against other girl teams." ("open", "closed", "worried", "mid") + cho "But what she's forgetting is that all the female players who made it into a team are already considered a valuable asset -- or they wouldn't be there!" ("open", "narrow", "angry", "R") + cho "I worked hard to be at the same level as my fellow teammates..." ("annoyed", "narrow", "worried", "downR") + cho "Splitting us up into a male and female league would just bring on girls that are just there to flaunt their bodies, instead of taking the sport seriously..." ("open", "narrow", "angry", "downR") + gen "Doesn't sound like the worst idea honestly..." ("base", xpos="far_left", ypos="head") + cho "Sir... I've trained all my life to be where I'm at." ("clench", "narrow", "angry", "mid") + cho "Just as hard as all the other great female Quidditch players of history!" ("scream", "closed", "angry", "mid") + cho "They played side by side with men... Earning their place amongst the best!" ("open", "narrow", "angry", "down") + cho "It never mattered what gender they were." ("angry", "narrow", "angry", "mid") + cho "To be shoved aside and forced to play alongside a collection of mediocre amateurs..." ("clench", "closed", "angry", "down") + cho "If this goes through it'd mean that I would never get a proper chance at winning the Quidditch cup!" ("clench", "closed", "angry", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + cho "Sir... This would destroy the foundations of the entire sport, traditions going back centuries..." ("open", "narrow", "angry", "down") + gen "Now, I think you're being a bit overdramatic Miss--" ("base", xpos="far_left", ypos="head") + cho "I'd get even less attention as one of the few girls in the league!" ("open", "narrow", "angry", "mid") + gen "Ah... So that's where the problem lies." ("base", xpos="far_left", ypos="head") + + cho "Sir, could you please talk to her? I'd be very grateful if you did." ("upset", "base", "worried", "mid") + cho "I would be forever in your debt." ("soft", "narrow", "base", "mid") + gen "Forever in my debt you say?" ("base", xpos="far_left", ypos="head") + cho "Yes, Professor. I'd do anything if you make this right." ("smile", "base", "angry", "mid") + cho "Anything!" ("clench", "narrow", "angry", "mid") + gen "It's your lucky day, Miss Chang!" ("grin", xpos="far_left", ypos="head") + gen "I will gladly talk to Miss Granger, but in return..." ("base", xpos="far_left", ypos="head") + gen "How about you come over here and suck on my--" ("grin", xpos="far_left", ypos="head") + + # Hermione walks in + stop music fadeout 1.0 + call hide_characters + with d3 + + call play_sound("door") + call her_chibi("stand", "door", "base") + + her "Professor I'm sorry to bother you but I wanted to..." ("open", "closed", "base", "mid", ypos="head", flip=False) + her "!!!" ("normal", "wide", "base", "stare", trans=hpunch) + + call her_walk(570, "base") + call her_chibi("stand",570,"base") + pause .5 + + play music "music/deadly-roulette-by-kevin-macleod.ogg" fadein 1 fadeout 1 + + cho "" ("annoyed", "narrow", "angry", "downR", xpos="mid", ypos="base") + her "Cho...{w=0.5} How nice to see you here..." ("open", "closed", "base", "mid", xpos="base", ypos="base") + her "And why are you here exactly?" ("annoyed", "narrow", "annoyed", "L") + + cho "Oh, you know...{w=0.5} Just having a discussion with our dear headmaster..." ("soft", "base", "base", "R") + + $ renpy.sound.play("sounds/slap_03.ogg") + her "{size=-5}Bitch...{/size}" ("angry", "closed", "angry", "mid", trans=hpunch) + + $ renpy.sound.play("sounds/slap_02.ogg") + cho "{size=-5}Whore...{/size}" ("clench", "closed", "angry", "mid", trans=hpunch) + her "..." ("normal", "squint", "angry", "L", cheeks="blush") + cho "..." ("upset", "narrow", "base", "L") + her "So... What have you been discussing?{w=0.4} Anything I should know?" ("open", "squint", "base", "mid", cheeks="blush") + cho "Oh, it's nothing that you need to worry your pretty little head about..." ("smile", "closed", "angry", "mid") + gen "(This could take a while...)" ("base", xpos="far_left", ypos="head") + + + # Choice to start jerking off + menu: + "\"(I will jerk off a little while they talk.)\"": + call hide_characters + with d3 + pause .2 + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .5 + + $ cho_jerk_off_counter += 1 + $ her_jerk_off_counter += 1 + $ jerked_off_during_cho_intro = True # Optional dialogue with Snape. + + $ genie_masturbating = True + + "\"(I should probably listen to them.)\"": + $ genie_masturbating = False + + # Masturbating + if genie_masturbating: + call nar(">You pull your cock out and begin masturbating... focusing on the now heated argument between the two girls in front of you.") + + cho "" (trans=d3) + her "Oh yeah, well... I bet it can't be anything good seeing how you usually act around men..." ("mad", "narrow", "angry", "L") + cho "What's that supposed to mean?!?" ("clench", "base", "angry", "R") + her "You know exactly what I mean..." ("crooked_smile", "narrow", "base", "R_soft") + her "I heard about how you were flaunting those... \"things\" of yours at Seamus Finnigan." ("crooked_smile", "narrow", "base", "R_soft") + with hpunch + cho "\"Things\"?" ("angry", "narrow", "angry", "R") + cho "Oh, miss perfect Hermione Granger.{w=0.8} Too afraid to even use the word \"tits\"..." ("open", "narrow", "angry", "R") + her "Well yours hardly qualify as such..." ("annoyed", "narrow", "angry", "L", cheeks="blush") + cho "How dare you!" ("clench", "closed", "angry", "mid") + cho "And so what? What's wrong with being confident about your body..." ("open", "narrow", "angry", "down") + cho "You should try it some time... You might even get a boyfriend one day..." ("soft", "narrow", "angry", "R") + cho "Though what do I know..." ("open", "closed", "base", "mid") + cho "I didn't need to get my teeth shortened so I wouldn't be confused for a rabbit!" ("grin", "closed", "angry", "mid") + her "..." ("normal", "narrow", "angry", "down", cheeks="blush") + cho "Not that anyone would even see them through that horribly bushy hair of yours..." ("smile", "narrow", "angry", "R") + her "Well, I heard that you were caught snogging someone in one of the carriages after the triwizard tournament." ("soft", "closed", "base", "mid", cheeks="blush") + her "I'm sure that will go down in the Hogwarts book of history..." ("grin", "narrow", "base", "mid", cheeks="blush") + gen "(How naughty, didn't expect such indecent behaviour from a girl with such a cute face...)" ("grin", xpos="far_left", ypos="head") + cho "Yeah? You ever even kissed a boy before, Granger?" ("soft", "narrow", "raised", "R") + her "" ("normal", "base", "worried", "R", cheeks="blush") + cho "And I'm talking about a real kiss, and not your daddy kissing you good night..." ("soft", "narrow", "raised", "R") + her "Oh...{w=0.5} Of course I have!" ("angry", "base", "worried", "R", cheeks="blush") + her "Just because I don't jump on every opportunity to glimpse random boys' wands..." ("soft", "closed", "base", "mid", cheeks="blush") + her "Unlike some other girls at this school..." ("normal", "narrow", "angry", "L", cheeks="blush") + her "That doesn't mean I've never kissed anyone..." ("soft", "base", "worried", "mid", cheeks="blush") + gen "..." ("grin", xpos="far_left", ypos="head") + her "And I didn't need to have my breasts enlarged so that I wouldn't be confused for a boy!" ("annoyed", "narrow", "annoyed", "L", cheeks="blush") + cho "Oh yeah... Like you haven't been flaunting yours around either..." ("open", "narrow", "angry", "R") + cho "Don't you try and act all innocent!" ("upset", "narrow", "angry", "R") + her "As If..." ("normal", "narrow", "annoyed", "mid", cheeks="blush") + cho "I wouldn't doubt that's why you're here in the first place!" ("open", "closed", "base", "mid") + cho "To push your stupid agendas, whilst you push your breasts together at the same time." ("clench", "narrow", "angry", "L") + gen "{size=-4}You fucking sluts!{/size}" ("angry", xpos="far_left", ypos="head") + + # Genie cums + call hide_characters + with d3 + + call cum_block + call gen_chibi("cum_behind_desk") + with d3 + pause .8 + + gen "*heavy breathing* {size=-4}Fuck yes...{/size}" ("angry", xpos="far_left", ypos="head") + + call cum_block + + gen "*Argh!* {size=-4}You whores!{/size}" ("angry", xpos="far_left", ypos="head") + + stop music fadeout 2.0 + cho "Sir?" ("soft", "narrow", "base", "mid") + + gen "(Shit...)" ("base", xpos="far_left", ypos="head") + + call gen_chibi("cum_behind_desk_done") + with d3 + pause .8 + + cho "Sir, I'm sorry about all this... it's not what I came here for..." ("open", "closed", "worried", "mid") + gen "Oh, of course not!" ("base", xpos="far_left", ypos="head") + cho "Please consider what we've talked about..." ("open", "closed", "base", "mid") + gen "Certainly..." ("base", xpos="far_left", ypos="head") + + # Cho walks to the door and stops. + call cho_walk("door", "base") + pause .8 + call cho_chibi("stand", "door", "base") + with d3 + pause .8 + + cho "{size=-4}You have fun now... getting at that wand of his...{/size}" ("soft", "narrow", "angry", "L", xpos="base", ypos="base", trans=dissolve) + her "*Tzzzh!*..." ("clench", "closed", "angry", "mid", xpos="mid", ypos="base", trans=d3) + + + # Not masturbating + else: + gen "Ladies, no arguing now..." ("base", xpos="far_left", ypos="head") + gen "You're in the headmaster's office, surely there's a time and place." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "R_soft") + cho "*Hmph*... There's no argument here..." ("open", "narrow", "angry", "L") + cho "I'm sure that Hermione's reasons for interrupting are totally valid..." ("upset", "narrow", "angry", "R") + her "And I'm sure Cho wasn't just coming here to flaunt her body..." ("soft", "narrow", "base", "L") + cho "What's that supposed to mean?!?" ("clench", "narrow", "angry", "R", trans=vpunch_repeat) + gen "(I guess I'll just have to wait this one out..)" ("base", xpos="far_left", ypos="head") + + # Black screen + call hide_characters + call blkfade + pause 2 + + centered "{size=+7}{color=#cbcbcb}Some time later...{/color}{/size}" + + pause 1 + call hide_blkfade + + $ renpy.sound.play("sounds/snore1.ogg") + gen "*Snore*{w=2.0}{nw}" + her "" ("annoyed", "narrow", "annoyed", "R") + cho "As if I'm going to believe that nonsense, Granger!" ("angry", "narrow", "angry", "R", trans=vpunch_repeat) + $ renpy.sound.play("sounds/snore2.ogg") + gen "......{w=0.5}*Snore*{w=1.0}{nw}" + her "I had completely legitimate reasons for coming here..." ("soft", "closed", "base", "mid") + her "You tell her Professor!" ("open", "base", "annoyed", "mid") + $ renpy.sound.play("sounds/snore3.ogg") + gen "*Sn{cps=8}oooooooreeee*{/cps}{w=2.0}{nw}" + her "Professor!" ("scream", "base", "angry", "mid", trans=hpunch) + gen "*Grunt* {size=-4}Huh, what?{/size}" ("angry", xpos="far_left", ypos="head") + her "I always have a valid reason for coming here, don't I?" ("base", "base", "base", "mid") + gen "Of course you--" ("base", xpos="far_left", ypos="head") + cho "Always? So you \"do\" come here often!" ("smile", "narrow", "base", "R") + her "So what..." ("angry", "closed", "angry", "mid") + gen "Ladies, I think it's time to--" ("base", xpos="far_left", ypos="head") + cho "Don't worry about it Sir, I was just about to leave anyway..." ("soft", "narrow", "angry", "mid") + her "..." ("annoyed", "narrow", "angry", "R") + + # Cho walks to the door and stops. + call cho_walk("door", "base") + pause .8 + call cho_chibi("stand", "door", "base") + with d3 + pause .8 + + cho "Professor, please do consider what we discussed earlier..." ("soft", "closed", "base", "mid", xpos="base", ypos="base", trans=dissolve) + gen "Of course." ("base", xpos="far_left", ypos="head") + her "*Hmm*?" ("normal", "squint", "base", "R", xpos="mid", ypos="base", trans=dissolve) + + stop music fadeout 2.0 + + hide cho_main + hide hermione_main + with d3 + + # Cho leaves + pause .2 + call cho_chibi("stand", "door", "base",flip=True) + with d3 + pause .5 + + call cho_chibi("leave") + + her "..." ("annoyed", "base", "angry", "mid", trans=d3) + gen "..." ("base", xpos="far_left", ypos="head") + her "You're buying favours from her aren't you?" ("soft", "narrow", "base", "mid_soft") + gen "I'm--" ("base", xpos="far_left", ypos="head") + her "I knew it!" ("angry", "base", "angry", "mid") + gen "Now, if you could just listen for a second!" ("angry", xpos="far_left", ypos="head") + her "I don't want to hear it!" ("open", "closed", "base", "mid") + her "I'm leaving." ("normal", "squint", "angry", "mid") + + # Hermione leaves + call her_walk(action="leave") + + # Hermione Mood down + $ her_mood += 6 + $ hermione_busy = True + + $ cho_intro.E1_complete = True + + gen ".......{w=0.5}women..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("sit_behind_desk") + call music_block + jump main_room_menu + + +### Event 2 ### +# Cho complains about Hermione again. +# You need to talk to Hermione and have her drop her Quidditch movement. +# You need to tell Snape about Cho. (Hangout) + +label cho_intro_E2: + stop music fadeout 1.0 + call play_sound("door") + call cho_chibi("stand", "door", "base") + with d3 + pause .5 + call cho_chibi("stand", "door", "base",flip=True) + with d1 + call play_sound("bump") + pause .8 + call cho_chibi("stand", "door", "base",flip=False) + with d1 + pause .3 + call cho_walk("desk", "base") + pause .2 + + cho "I hate her!" ("scream", "closed", "angry", "mid", xpos="mid", ypos="base", trans=hpunch) + cho "" ("clench", "narrow", "angry", "mid") + + gen "Miss Chang! My favourite student!" ("grin", xpos="far_left", ypos="head") + gen "I'm so glad to see you. Is there something I can--" ("grin", xpos="far_left", ypos="head") + + call play_music("hitman") + cho "Cut the crap, Professor!{w=0.6} I know you've told her!" ("soft", "narrow", "angry", "mid") + gen "{size=-4}Please don't hurt me.{/size}" ("angry", xpos="far_left", ypos="head") + cho "How could you have done this?{w=0.6} Sending this dim-witted Gryffindor tramp after me?" ("open", "narrow", "angry", "mid") + gen "W-who?" ("angry", xpos="far_left", ypos="head") + cho "Granger!" ("scream", "closed", "angry", "mid", trans=hpunch) + gen "Aaa-h!" ("angry", xpos="far_left", ypos="head") # Girly scream + cho "Gryffindor's role model student..." ("angry", "narrow", "angry", "mid") + cho "She's out there spreading mean rumours about me!" ("open", "narrow", "angry", "R") + gen "How mean are we talking?" ("base", xpos="far_left", ypos="head") + cho "The worst kind! That I'm cheating at Quidditch!" ("angry", "narrow", "angry", "down") + cho "How am I cheating, Professor? Ravenclaw is always in last place?!" ("soft", "narrow", "worried", "downR") + cho "Not to mention that she's told everyone that I'm whoring myself out to my other classmates, and even my teachers!" ("open", "narrow", "angry", "L") + cho "I did none of that, Professor! None!" ("scream", "closed", "angry", "mid", trans=hpunch) + cho "And she still won't lay off her stupid equality movement thing!" ("annoyed", "narrow", "angry", "mid") + gen "You need to calm down, girl." ("base", xpos="far_left", ypos="head") + cho "{size=-4}When I'm out of here I'm going to rip that bitch's head off...{/size}" ("clench", "narrow", "angry", "downR") + gen "(Yikes!)" ("angry", xpos="far_left", ypos="head") + gen "I could hear that." ("base", xpos="far_left", ypos="head") + cho "Good. Then you already know what I'm willing to do if this continues..." ("open", "closed", "angry", "mid") + cho "If you can't stop her, Professor, Then I will!" ("open", "base", "angry", "mid") + cho "And rest assured that I will end her!" ("soft", "narrow", "angry", "mid") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"Sure, go for it!\"": + cho "What?" ("annoyed", "narrow", "angry", "mid") + cho "Sir, I'm not joking around. This is serious!" ("open", "base", "angry", "mid") + cho "Tell Granger to keep her bushy head out of it!" ("clench", "narrow", "angry", "mid") + gen "Fine, whatever... This isn't worth the drama..." ("base", xpos="far_left", ypos="head") + gen "(I can just bribe Granger with some house-points anyway.)" ("base", xpos="far_left", ypos="head") + gen "I shall talk to her." ("base", xpos="far_left", ypos="head") + + "\"I'd prefer you didn't...\"": + cho "Then do something about it!" ("clench", "closed", "angry", "mid") + cho "And don't even think about calling me to your office again..." ("open", "narrow", "angry", "mid") + cho "Not until you've dealt with that skank!" ("clench", "narrow", "angry", "mid") + cho "Do I make myself clear, Sir?" ("scream", "closed", "angry", "mid", trans=hpunch) + cho "" ("angry", "narrow", "angry", "mid") + gen "I suppose..." ("base", xpos="far_left", ypos="head") + + # Back to cheerful. + call play_music("night") + cho "Good." ("base", "base", "base", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + cho "Have a nice evening, Professor." ("smile", "closed", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + call bld + gen "I better talk to Hermione about this..." ("base", xpos="far_left", ypos="head") + gen "Or Snape first. Maybe he can help me more." ("base", xpos="far_left", ypos="head") + gen "With his unfailing wisdom." ("angry", xpos="far_left", ypos="head") + gen "Who am I even kidding..." ("base", xpos="far_left", ypos="head") + + $ hermione_busy = True + $ snape_busy = False + + $ cho_intro.E2_complete = True + + $ cho_unlocked = True + $ achievements.unlock("unlockcho", True) + call popup("{size=-4}You can now summon Cho into your office.{/size}", "Character unlocked!", "interface/icons/head/cho.webp") + $ cho_busy = True + + jump main_room_menu + + +### Snape Hangout Event 1 ### +# You tell Snape about Cho's visit. + +label ss_he_cho_E1: + call bld + gen "I had another girl visiting me the other day." ("base", xpos="far_left", ypos="head") + sna "I told you not to get involved with the outside world." ("snape_09", ypos="head") + sna "I hope you were smart enough to not let her into your office." ("snape_05") + gen "How couldn't I let her in? She sounded cute." ("grin", xpos="far_left", ypos="head") + sna "Why doesn't that surprise me..." ("snape_06") + sna "And who was this girl?" ("snape_03") + + menu: + "\"Her name was Cho Chan.\"": + sna "Cho Chang?" ("snape_01") + gen "No, I'm sure it was \"Chan\"." ("base", xpos="far_left", ypos="head") + sna "I know my students names, Genie." ("snape_04") + + "\"I can't remember. I got too distracted by her legs...\"": + sna "Can you describe her?" ("snape_05") + sna "Hair colour, height, her uniform colour? Anything?" ("snape_02") + gen "I believe she was Asian." ("base", xpos="far_left", ypos="head") + sna "Cho Chang?" ("snape_10") + gen "Bless you." ("base", xpos="far_left", ypos="head") + sna "No. That's her name." ("snape_08") + sna "We only have one Asian girl at our school." ("snape_24") + sna "You'd think as the only wizarding school in all of Britain, it would be more diverse..." ("snape_09") + + sna "And what did she want from you exactly?" ("snape_05") + gen "She asked me a couple of things about Quidditch." ("base", xpos="far_left", ypos="head") + sna "Of course." ("snape_09") + sna "Her entire world revolves around that stupid broomstick rally." ("snape_08") + gen "I take it that you aren't a fan?" ("base", xpos="far_left", ypos="head") + + gen "She could be a great candidate for our little training scheme." ("base", xpos="far_left", ypos="head") + sna "What? Do you want to turn her into a slut too?" ("snape_01") + gen "Not only that. I believe she could be of help to deal with the Granger girl as well." ("base", xpos="far_left", ypos="head") + sna "Interesting. It seems like you have already made plans for her." ("snape_02") + gen "I thought of a couple of things." ("base", xpos="far_left", ypos="head") + sna "You have my attention!" ("snape_13") + + $ d_flag_01 = False + $ d_flag_02 = False + + label discuss_cho_plan: + if d_flag_01 and d_flag_02: + jump discussed_cho_plan + + menu: + "\"Help her win the Quidditch cup.\"" if not d_flag_01: + $ d_flag_01 = True + + sna "And help her win against Slytherin?" ("snape_16") + sna "I can't agree to that, Genie. As much as I'd like to see the Potter boy demoralised by losing to a girl..." ("snape_10") + sna "Or Malfoy for that matter... He's been way too cocky lately." ("snape_08") + gen "Who?" ("base", xpos="far_left", ypos="head") + sna "A student of mine... Rich parents, bought his way into our Quidditch team... Spoiled beyond belief." ("snape_29") + gen "Didn't you say you don't care much about Quidditch?" ("base", xpos="far_left", ypos="head") + sna "Of course I don't... But a win is a win." ("snape_09") + sna "Besides, Ravenclaw doesn't have a chance against Slytherin." ("snape_03") + sna "They are notoriously bad at Quidditch. And they have been for years." ("snape_02") + gen "You sound very confident." ("base", xpos="far_left", ypos="head") + gen "Want to bet on it?" ("grin", xpos="far_left", ypos="head") + sna "A bet? How very enticing!" ("snape_20") + sna "How much are you willing to bet?" ("snape_18") + gen "Twenty bucks?" ("base", xpos="far_left", ypos="head") + sna "Don't you mean gold?" ("snape_05") + gen "Twenty... gold then..." ("base", xpos="far_left", ypos="head") + sna "That's barely worth it." ("snape_04") + sna "How about two thousand gold?" ("snape_13") + + if game.gold < 2000: + gen "I don't have that much gold." ("base", xpos="far_left", ypos="head") + sna "Well, you have plenty of time to gather that amount." ("snape_22") + else: + gen "Are you feeling \"that\" confident?" ("base", xpos="far_left", ypos="head") + sna "About Slytherin winning the cup?" ("snape_20") + sna "Absolutely!" ("snape_22") + + sna "So, what do you say? Want to take the bet?" ("snape_13") + gen "Under one condition." ("base", xpos="far_left", ypos="head") + gen "You won't cheat, and you won't give Slytherin any unfair advantages." ("base", xpos="far_left", ypos="head") + sna "I'd never think of it." ("snape_09") + gen "So, you want to take on the bet?" ("base", xpos="far_left", ypos="head") + sna "Of course, I have no doubt Slytherin will win the cup." ("snape_02") + sna "At least Quidditch will be worth watching now. I can't say no to some good old gambling." ("snape_20") + sna "But how will you help Miss Chang in Quidditch? You know nothing about it!" ("snape_05") + + menu: + "\"I'll just read a book about it.\"": + sna "You are really planning to take this bet seriously, aren't you?" ("snape_04") + gen "You have no idea! I'll do anything to get into that girl's panties." ("base", xpos="far_left", ypos="head") + sna "Blinded by the sweet love for a girl..." ("snape_13") + sna "You have already lost, my friend!" ("snape_21") + gen "We'll see about that." ("base", xpos="far_left", ypos="head") + gen "(Now, where could I get a book about Quidditch from...)" ("base", xpos="far_left", ypos="head") + + "\"I trust my instincts!\"": + sna "Your instincts?" ("snape_14") + gen "Never underestimate the capabilities of a Genie..." ("base", xpos="far_left", ypos="head") + sna "(...)" ("snape_12") + + if not d_flag_02: + sna "So, that's in then? You're staking both your money and the chance at getting in this girls panties on Ravenclaw winning the cup?" ("snape_01") + gen "You bet I-- No wait! Of course that's not all of it!" ("angry", xpos="far_left", ypos="head") + gen "*Err*..." ("base", xpos="far_left", ypos="head") + gen "Oh! I'm also planning to..." ("base", xpos="far_left", ypos="head") + + jump discuss_cho_plan + + "\"Have her and Hermione go at each other.\"" if not d_flag_02: + $ d_flag_02 = True + + sna "Granger? Why her?" ("snape_05") + gen "They absolutely despise each other." ("base", xpos="far_left", ypos="head") + sna "They do?" ("snape_20") + gen "Yes. They had a little confrontation here in my room..." ("base", xpos="far_left", ypos="head") + sna "A confrontation? So so..." ("snape_13") + sna "What was it about?" ("snape_20") + + if jerked_off_during_hermione_intro and jerked_off_during_cho_intro: + gen "I have no idea. I jerked off during their whole exchange." ("base", xpos="far_left", ypos="head") + sna "You did that again? And neither of them realised?" ("snape_22") + gen "Didn't seem like it. They were too occupied with insulting each other..." ("base", xpos="far_left", ypos="head") + + elif jerked_off_during_cho_intro: + gen "I have no idea. I jerked off during their whole exchange." ("base", xpos="far_left", ypos="head") + sna "You did what?" ("snape_15") + gen "I jerked off.{w} Beat my meat.{w} Wrestled the snake.{w} Whatever you want to call it." ("base", xpos="far_left", ypos="head") + gen "Don't tell me you never do it..." ("base", xpos="far_left", ypos="head") + sna "Not in front of my students!" ("snape_07") + sna "How did neither of them realise what you were doing?" ("snape_10") + gen "They were too occupied with insulting each other..." ("base", xpos="far_left", ypos="head") + sna "I can imagine that..." ("snape_20") + + else: + gen "Some nonsense about wasting my time." ("base", xpos="far_left", ypos="head") + sna "Which they probably did?" ("snape_05") + gen "Yeah. But I slept through most of it..." ("base", xpos="far_left", ypos="head") + sna "I wish I could do the same." ("snape_09") + sna "Zone out and dream of stuffing that witch's relentless mouth!" ("snape_06") + gen "I feel you..." ("base", xpos="far_left", ypos="head") + + sna "*Hmm*... That reminds me of something I witnessed at the end of last year..." ("snape_23") + sna "Granger was scolding the poor girl for kissing a boy in the hallways." ("snape_20") + gen "Hot...{w} What happened then?" ("base", xpos="far_left", ypos="head") + sna "They were screaming and grabbing at each other's hair before I had the chance to interfere." ("snape_18") + sna "I ended up taking fifty points from Gryffindor. I should have taken at least one hundred now that I think about it..." ("snape_22") + gen "Does she often do things like that?" ("base", xpos="far_left", ypos="head") + sna "Are you kidding? All the bloody time!" ("snape_17") + sna "Granger is a nuisance to everyone. Didn't I already tell you that?" ("snape_16") + gen "No. I meant the Cho girl..." ("base", xpos="far_left", ypos="head") + gen "Does she make out with boys often?" ("grin", xpos="far_left", ypos="head") + sna "How should I know. I'm not her stalker." ("snape_12") + gen "Well, if what you've said is true... Training her should be a piece of cake." ("base", xpos="far_left", ypos="head") + gen "And what a delicious piece of cake it will be!" ("grin", xpos="far_left", ypos="head") + + if not d_flag_01: + sna "So, how are you planning on achieving all this exactly?" ("snape_01") + sna "Surely you can't rely on Miss perfect to get anywhere with this girl..." ("snape_04") + gen "No, but I'm sure she'll play her part in the next step of my plan with Miss Chang..." ("base", xpos="far_left", ypos="head") + sna "Which is?" ("snape_05") + + jump discuss_cho_plan + + + # Ending #TODO might need some reminder for the player to talk to Hermione here. How would I add that? + label discussed_cho_plan: + + show screen with_snape(ani=True) + show screen bld1 + call notes + ">You spend the rest of the evening in Snape's company, talking about Cho's impressive thighs." + + hide screen bld1 + with d3 + + $ ss_he.cho_E1 = True + + jump end_snape_hangout_points + + +### Hermione Talk 1 ### +# You talk to Hermione to drop her Quidditch movement. You then summon Cho. +# Cho is now unlocked and you can summon her. + +label cho_intro_E3: + + her "" (xpos="mid", ypos="base", trans=fade) + + #So Hermione doesn't walk over her during exit + $ cho_chibi.zorder = 4 + + # Intro + if not cho_intro.E3_intro: + $ cho_intro.E3_intro = True + + gen "I got some word about you that needs to be addressed..." ("base", xpos="far_left", ypos="head") + her "About what? I'm not in any trouble or anything am I?" ("soft", "wide", "base", "mid") + gen "Miss Chang..." ("base", xpos="far_left", ypos="head") + her "Oh..." ("annoyed", "narrow", "base", "up") + her "What about her?" ("annoyed", "base", "angry", "mid") + gen "Well, it has come to my attention that you've been spreading false rumours about her." ("base", xpos="far_left", ypos="head") + her "And? It's well deserved in my opinion..." ("soft", "narrow", "annoyed", "mid") + gen "Don't you feel like it's unbefitting of you to publicly talk badly about another student?" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "down") + gen "Surely that isn't something to expect from Gryffindor's finest..." ("grin", xpos="far_left", ypos="head") + her "Did Cho put you up to this?" ("normal", "squint", "base", "mid") + gen "..." ("angry", xpos="far_left", ypos="head") + gen "(She's onto me!)" ("base", xpos="far_left", ypos="head") + gen "Of course not... it was another teacher, actually." ("base", xpos="far_left", ypos="head") + her "Who was it?" ("open", "base", "angry", "mid") + gen "Not important..." ("base", xpos="far_left", ypos="head") + her "It was Snape wasn't it?" ("annoyed", "narrow", "base", "mid_soft") + gen "(She's good!)" ("angry", xpos="far_left", ypos="head") + gen "Well, I'd like you to stop and that's all that matters..." ("base", xpos="far_left", ypos="head") + gen "And that includes the..." ("base", xpos="far_left", ypos="head") + gen "Quidditch...{w} whatever it was...{w} movement." ("base", xpos="far_left", ypos="head") + + # Repeat (This won't happen anymore) + else: + gen "[hermione_name], there is something we need to talk about." ("base", xpos="far_left", ypos="head") + her "Is it about Cho again?" ("annoyed", "squint", "base", "mid") + gen "Yes indeed." ("base", xpos="far_left", ypos="head") + gen "I'd like you to stop your..." ("base", xpos="far_left", ypos="head") + gen "Quidditch...{w} something something...{w} movement." ("base", xpos="far_left", ypos="head") + + if her_whoring < 10: # T3 + her "My \"Quidditch equality movement\"?" ("soft", "base", "base", "mid") + her "But Sir, I'm on the verge of a breakthrough with it!" ("soft", "closed", "base", "mid") + her "I worked very hard on gathering all records of past Quidditch matches, throughout the complete history of Quidditch!" ("open", "wink", "base", "mid") + her "You'd be surprised just how few female--" ("soft", "closed", "base", "mid") + gen "I'll give you ten house points." ("base", xpos="far_left", ypos="head") + her "Ten points?" ("soft", "wide", "base", "stare", trans=hpunch) + her "Sir do you even realise how much time it took me to do all that research?" ("angry", "squint", "angry", "mid") + gen "Twenty?" ("base", xpos="far_left", ypos="head") + her "One hundred!" ("angry", "closed", "angry", "mid") + gen "One hundred? Are you nuts?" ("angry", xpos="far_left", ypos="head") + her "And just points isn't going to cut it..." ("open", "closed", "base", "mid") + gen "Then what else?" ("base", xpos="far_left", ypos="head") + her "*Uhm*..." ("annoyed", "base", "base", "R") + gen "You're testing my patience Miss Granger..." ("base", xpos="far_left", ypos="head") + her "Oh, I know!{w=0.5} I want a seat in the teacher stands during the Quidditch matches!" ("smile", "happyCl", "base", "mid") + her "Cho would be so jealous if she saw me sitting near the commentator and teachers..." ("grin", "narrow", "base", "mid_soft") + gen "So, you want both one hundred points and a seat in the teacher stands..." ("base", xpos="far_left", ypos="head") + her "Yes..." ("base", "happy", "base", "mid_soft") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"Very well...\"": + gen "Anything else?" ("base", xpos="far_left", ypos="head") + her "Well..." ("soft", "happy", "base", "R") + gen "Don't push your luck..." ("base", xpos="far_left", ypos="head") + her "No, I think that should do..." ("smile", "happyCl", "base", "mid") + if sna_friendship <= 30: + gen "(I'm going to need to get real friendly with Snape to get those Slytherins in a steady lead...)" ("base", xpos="far_left", ypos="head") + gen "One hundred points to Gryffindor...{w=0.6} Happy?" ("base", xpos="far_left", ypos="head") + $ gryffindor += 100 + + her "If I'm truly honest with you Sir,{w=0.6} My plans weren't that popular with the Quidditch teams in any case." ("soft", "narrow", "base", "mid_soft") + gen "I can't imagine why..." ("base", xpos="far_left", ypos="head") + pass + + "\"Fifty points!\"": + her "What?... Only Fifty?!" ("shock", "wide", "base", "stare", trans=hpunch) + gen "Yes, only fifty! Because you are being unreasonable." ("base", xpos="far_left", ypos="head") + her "But you made it sound like it was something important to you!" ("disgust", "narrow", "worried", "mid_soft") + gen "And you believe that I'd just throw a hundred points at you because of that?" ("base", xpos="far_left", ypos="head") + her "{size=-4}It was worth a try...{/size}" ("annoyed", "narrow", "worried", "down") + gen "Try to remember this, Miss Granger. You can't rip me off that easily." ("base", xpos="far_left", ypos="head") + her "*Tzzzz*- Fine.. Fifty points then, but I'm not happy about it..." ("angry", "base", "angry", "mid") + gen "Fine by me..." ("base", xpos="far_left", ypos="head") + gen "Fifty points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 50 + $ her_mood += 6 + her "Thanks I guess..." ("open", "closed", "angry", "mid") + gen "You may leave now..." ("base", xpos="far_left", ypos="head") + her "*Hmph*... I don't think so, sir..." ("annoyed", "closed", "angry", "mid") + gen "What now? You've received your points already." ("base", xpos="far_left", ypos="head") + her "Well, It's just..." ("open", "narrow", "base", "R") + + + elif her_whoring < 21: + her "Oh... My \"Quidditch equality movement\"?" ("soft", "base", "base", "mid") + gen "That's the one." ("base", xpos="far_left", ypos="head") + her "It never really got off the ground..." ("open", "base", "base", "R") + her "No pun intended..." ("base", "closed", "base", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + her "To be honest, I don't have that much time apart from my visits here and studying..." ("open", "narrow", "worried", "down") + her "I might consider dropping it." ("base", "base", "base", "R") + her "Even though it would take away the immense pleasure of seeing Cho getting all worked up about it..." ("grin", "base", "base", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + her "There is something I'd like from you in return, [genie_name].{w=0.8} Or else I'll just continue with it!" ("base", "narrow", "base", "mid_soft") + gen "Go on girl." ("base", xpos="far_left", ypos="head") + gen "Tell me what you want." ("base", xpos="far_left", ypos="head") + gen "What you really{w}, really want..." ("base", xpos="far_left", ypos="head") + her "Very well, [genie_name]." ("soft", "base", "base", "R") + her "I'll tell you what I want!" ("open", "closed", "base", "mid") + her "What I really, really want!" ("grin", "narrow", "base", "mid_soft") + gen "{size=-4}Nice!{/size}" ("grin", xpos="far_left", ypos="head") + her "I'd like a seat in the teacher stands, during the Quidditch matches.." ("open", "closed", "base", "mid") + gen "Is that all?" ("base", xpos="far_left", ypos="head") + her "Oh, and a hundred points for Gryffindor..." ("grin", "base", "base", "R") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "I'd say fifty would be more appropriate in this instance..." ("base", xpos="far_left", ypos="head") + her "Sir, it took a lot of effort to gather all those records of past Quidditch matches, throughout the whole history of Quidditch." ("open", "closed", "base", "mid") + gen "Fifty points..." ("base", xpos="far_left", ypos="head") + her "(...)" ("annoyed", "narrow", "angry", "R") + her "Very well then." ("soft", "closed", "base", "mid") + gen "Fifty points, to the Gryffindor house..." ("base", xpos="far_left", ypos="head") + $ gryffindor += 50 + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + + else: + her "My what?" ("open", "narrow", "base", "mid_soft") + gen "Your Quidditch movement." ("base", xpos="far_left", ypos="head") + gen "Regarding the male and female roles in Quidditch..." ("base", xpos="far_left", ypos="head") + her "Oh. I barely even remember doing that." ("annoyed", "narrow", "base", "R_soft") + gen "So it wouldn't be an issue for you to drop it?" ("base", xpos="far_left", ypos="head") + her "I guess so..." ("soft", "narrow", "worried", "down") + her "Although, if I were to drop it..." ("open", "narrow", "base", "down") + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "I want a seat in the teacher stands during the Quidditch matches!" ("grin", "narrow", "base", "mid_soft") + gen "I'm sure that could be arranged..." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("base", "narrow", "base", "mid_soft") + + her "[genie_name], may I ask...{w=0.6} What exactly were you and Cho talking about when I entered your office?" ("open", "base", "base", "R") + gen "Oh. She just wanted my help with Quidditch." ("base", xpos="far_left", ypos="head") + her "*Pffff*-{w=0.4} Why doesn't it surprise me that she'd need your help with it." ("grin", "narrow", "base", "R_soft") + her "How else could she possibly win that stupid Quidditch cup..." ("soft", "closed", "angry", "mid") + gen "I thought that cup was important to you?" ("base", xpos="far_left", ypos="head") + her "I couldn't care less about it, [genie_name]." ("open", "closed", "base", "mid") + her "The only cup that is worth winning is the {i}house cup{/i}." ("open", "narrow", "base", "R_soft") + her "They're completely different..." ("annoyed", "base", "angry", "mid") + gen "Totally different..." ("base", xpos="far_left", ypos="head") + + if her_whoring < 18: + her "It's the most prestigious award one could earn for your house!{w=0.6} The Quidditch cup is nothing in comparison..." ("open", "closed", "base", "mid") + her "Surely there's better ways to spend your time than participating in this silly sports game." ("annoyed", "narrow", "annoyed", "mid") + gen "(My irony senses are tingling...)" ("base", xpos="far_left", ypos="head") + + if her_whoring < 8: + her "They're given the privilege of attending one of the most prestigious wizarding schools in the world..." ("open", "narrow", "angry", "R") + her "And what do they do? They spend their time playing some silly sports game that will get them nowhere." ("open", "base", "angry", "mid") + gen "Yes. Because why enjoy yourself when you could study instead..." ("base", xpos="far_left", ypos="head") + her "Exactly!" ("normal", "closed", "base", "mid") + gen "(She's so predictable.)" ("base", xpos="far_left", ypos="head") + + gen "Well... The Quidditch teams are none of your concern anymore..." ("base", xpos="far_left", ypos="head") + gen "You'll tell Cho that you are sorry about your previous interferences." ("base", xpos="far_left", ypos="head") + her "(...)" ("annoyed", "base", "angry", "mid") + gen "And that the \"Quidditch equality movement\" will be...{w} \n\"no more\"." ("base", xpos="far_left", ypos="head") + + if her_whoring < 18: + her "Do I really have to do all that?" ("upset", "base", "base", "R") + gen "If you want to keep on buying favours from me." ("base", xpos="far_left", ypos="head") + her "*Ugh*...{w=0.4} Very well, I guess..." ("soft", "narrow", "worried", "down") + else: + her "Sure, whatever..." ("open", "narrow", "base", "R_soft") + + + # Summon Cho + gen "Great!" ("grin", xpos="far_left", ypos="head") + gen "Let's call her up here then..." ("grin", xpos="far_left", ypos="head") + her "What? Now?" ("clench", "wide", "base", "stare") + + # Hermione quickly gets dressed. + if not hermione.is_worn("top") or not hermione.is_worn("bottom"): + her "Wait, she can't see me like this!" ("disgust", "narrow", "worried", "down") + + hide hermione_main + with d3 + pause .8 + + gen "(...)" ("base", xpos="far_left", ypos="head") + + $ hermione.wear("all") + pause .5 + + else: + hide hermione_main + hide screen bld1 + with d3 + pause .5 + + stop music fadeout 1.0 + # Cho enters the office. + call cho_walk(580, 450, action="enter") + + pause 1 + play music "music/deadly-roulette-by-kevin-macleod.ogg" fadein 1 fadeout 1 + + cho "Hello, Sir.{w=0.6} You've called for me?" ("soft", "narrow", "raised", "L", xpos="base", ypos="base") + her "" ("normal", "closed", "base", "mid", xpos="450", ypos="base") + cho "Granger..." ("soft", "narrow", "angry", "L") + her "Chang..." ("annoyed", "narrow", "angry", "R") + gen "Go on, girl. Tell her." ("base", xpos="far_left", ypos="head") + cho "Tell me what?" ("normal", "narrow", "angry", "L") + her "..." ("annoyed", "narrow", "base", "up") + her "About my \"Quidditch equality movement\"..." ("normal", "closed", "base", "mid") + cho "Did our Professor finally convince you what a terrible idea it would be?" ("soft", "narrow", "angry", "mid") + gen "Actually, I still think granting more people the ability to--" ("base", xpos="far_left", ypos="head") + cho "*Shhsh!* Professor!{w=0.6} I'd like to hear it from her." ("annoyed", "narrow", "angry", "mid") + cho "I'm going to enjoy this!" ("horny", "narrow", "base", "L") + her "..." ("annoyed", "base", "angry", "mid") + her "*Sigh*{w=0.6} I will end my movement, and I won't interfere with Quidditch again..." ("open", "closed", "base", "mid") #[Looking bored] + cho "This is amazing! I feel as if it's my birthday!" ("smile", "base", "base", "mid") + her "After all, Quidditch is a huge waste of everyone's time.{w=0.6} Including mine..." ("soft", "narrow", "base", "R_soft") #[Still looking bored] + cho "You're just jealous that I'm better than you at something." ("smile", "narrow", "angry", "L") + her "I am not jealous!" ("angry", "closed", "angry", "mid") + gen "You may go now, Miss Granger." ("base", xpos="far_left", ypos="head") + her "(...)" ("annoyed", "base", "angry", "mid") + her "Until next time, Sir." ("normal", "closed", "base", "mid") + her "..." ("annoyed", "narrow", "base", "R_soft") + + # Hermione leaves after glaring one last time at Cho. + call her_walk("door", "base") + pause .2 + call her_chibi("stand", "door", "base",flip=False) + with d3 + pause .2 + + her "*glare*" ("normal", "base", "angry", "mid", ypos="head", flip=False) + # Add Cho glaring back with her 'head' image. + + call her_chibi("stand", "door", "base",flip=True) + with d3 + pause .8 + + call her_chibi("leave") + with d3 + pause .5 + + stop music fadeout 1.0 + + cho "Thank you for getting her off my back, Professor." ("soft", "narrow", "base", "mid") + gen "No problem." ("base", xpos="far_left", ypos="head") + cho "Hopefully this means we'll have a chance at winning the cup this time around..." ("base", "base", "base", "R") + cho "However small that chance may be." ("normal", "narrow", "base", "downR") + gen "(Time to get in there, Genie...)" ("base", xpos="far_left", ypos="head") + gen "Sounds to me like you could use a coach." ("base", xpos="far_left", ypos="head") + cho "Tell me about it...{w=0.4} Our current captain is hopeless..." ("disgust", "narrow", "base", "down") + cho "During our last meeting he brought up wanting to add stripes to our Quidditch Robes." ("soft", "narrow", "base", "mid") + cho "Believing that doing so would somehow make us go faster..." ("disgust", "narrow", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + cho "Sorry, sir... I've already taken up enough of your time... Surely you've got more important things--" ("open", "narrow", "base", "R") + + play music "music/fuzzball-parade-by-kevin-macleod.ogg" fadein 1 fadeout 1 + + gen "Why don't I coach you?" ("base", xpos="far_left", ypos="head") + cho "Sorry?" ("clench", "narrow", "base", "mid") + gen "I could coach you." ("base", xpos="far_left", ypos="head") + cho "You want to coach me, sir?" ("open", "wide", "base", "mid") + cho "I'm sorry, but I'm a bit confused... Why would the Headmaster want to coach a Quidditch team?" ("clench", "narrow", "raised", "mid") + gen "Why there's a simple answer to that Miss Chang..." ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + cho "Yes?" ("disgust", "narrow", "raised", "mid") + gen "Isn't the point of a Headmaster to make sure that their students' talents aren't wasted?" ("base", xpos="far_left", ypos="head") + cho "I suppose so, but--" ("open", "base", "base", "downR") + gen "Well, as soon as you first stepped through that door I could tell that this girl has got what it takes to make it big." ("base", xpos="far_left", ypos="head") + cho "...{w} You could tell that just by looking at me?" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Indeed, there's no doubts about it!" ("base", xpos="far_left", ypos="head") + gen "Or are you telling me that I'm wrong?" ("base", xpos="far_left", ypos="head") + cho "Of course not, but--" ("soft", "base", "base", "R", cheeks="blush") + gen "Great!" ("grin", xpos="far_left", ypos="head") + gen "Then I shall summon you shortly so we can further discuss this arrangement." ("grin", xpos="far_left", ypos="head") + cho "(Arrangement?)" ("soft", "narrow", "base", "down", cheeks="blush") + gen "That will be all for now Miss Chang, you may leave." ("grin", xpos="far_left", ypos="head") + cho "...{w} Alright then, sir." ("normal", "base", "base", "mid", cheeks="blush") + cho "(He could tell just by looking at me?)" ("normal", "narrow", "base", "down", cheeks="blush") + cho "(...)" ("soft", "narrow", "base", "R", cheeks="blush") + + # Cho leaves. + call cho_walk(action="leave") + + call bld + + # You can now summon Cho Chang to your office. + stop music fadeout 1.0 + + # End of Intro. + $ hermione_busy = True + $ cho_busy = True + + #Reset z-order + $ cho_chibi.zorder = 3 + + $ cho_intro.E3_complete = True + + call music_block + jump main_room_menu diff --git a/game/scripts/characters/cho/events/panties.rpy b/game/scripts/characters/cho/events/panties.rpy new file mode 100644 index 00000000..44c429a0 --- /dev/null +++ b/game/scripts/characters/cho/events/panties.rpy @@ -0,0 +1,160 @@ + + +### Tier 2 (pre Slytherin) ### + +label cho_panties_response_T2: + $ has_cho_panties = False + call play_sound("door") + call cho_chibi("stand","mid","base") + with d3 + + call play_music("cho") + cho "Hello, [cho_genie_name]." ("soft", "narrow", "worried", "mid", xpos="right", ypos="base") + gen "Sup..." ("base", xpos="far_left", ypos="head") + cho "*Uhm*..." ("annoyed", "narrow", "worried", "R") + cho "I forgot to take my underwear with me the last time I was here." ("soft", "narrow", "worried", "downR", cheeks="blush") + + if cho_panties_soaked: + gen "Your panties! Of course, [cho_name]!{w} I've got them right here..." ("grin", xpos="far_left", ypos="head") + call cho_walk("desk", "base") + pause .8 + + call give_reward("> You hand over the panties...", "interface/icons/panties_cum.webp") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause .4 + + cho "(...)" ("annoyed", "narrow", "angry", "mid", xpos="mid", ypos="base", trans=fade) # Evil stare. + gen "What?" ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "R") + gen "Anything wrong?" ("base", xpos="far_left", ypos="head") + cho "They are covered in semen." ("soft", "narrow", "base", "R") + gen "What was that?" ("base", xpos="far_left", ypos="head") + cho "Semen, Sir!" ("scream", "narrow", "angry", "mid", trans=hpunch) # Scream + cho "" ("annoyed", "narrow", "angry", "mid") + gen "You are correct!{w} They are indeed covered in a thick load of filthy, nasty reeking semen!" ("angry", xpos="far_left", ypos="head") + gen "Who could have done this?!" ("grin", xpos="far_left", ypos="head") + cho "I don't know... why don't we inquire how they got here in the first place..." ("open", "base", "base", "R") + cho "Didn't I take off my panties while I was stripping for you?" ("soft", "narrow", "base", "mid") + gen "That is correct." ("base", xpos="far_left", ypos="head") + cho "And you had my panties this whole time?" ("soft", "narrow", "raised", "mid") + gen "Yup." ("base", xpos="far_left", ypos="head") + cho "And you just gave them back to me covered in spunk..." ("annoyed", "narrow", "base", "mid") + gen "That makes sense to me..." ("base", xpos="far_left", ypos="head") + cho "So you admit that you did it?" ("soft", "narrow", "angry", "mid") + gen "It's not my cum..." ("base", xpos="far_left", ypos="head") + cho "*Argh*!" ("angry", "narrow", "angry", "mid", trans=hpunch) + cho "Well whose is it then?{w} The house-elves?" ("soft", "narrow", "base", "mid") + gen "*Uhm*...{w} Yes?" ("base", xpos="far_left", ypos="head") + cho "It's disgusting!" ("annoyed", "narrow", "base", "down") + cho "I better get them cleaned immediately..." ("angry", "narrow", "worried", "down") + + call cho_walk("door", "base") + + call bld + gen "Where are you going?" ("base", xpos="far_left", ypos="head") + + call cho_chibi("leave") + + call bld + gen "(...)" ("base", xpos="far_left", ypos="head") + + $ cho_mood += 6 + $ cho_busy = True + + $ cho_panties_soaked = False + + $ achievements.unlock("pantiesfapcho") + + call music_block + jump main_room_menu + + else: + gen "Your panties, that's right!{w} I've got them right here..." ("grin", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/sniff.ogg") + call nar(">You bring the panties to your nose and give them one last sniff.") + + gen "*Aaahhh*!{w} Wonderful!" ("angry", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "base", "mid") + gen "There, take them..." ("base", xpos="far_left", ypos="head") + + call cho_walk("desk", "base") + pause .8 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause .4 + + call cho_walk("mid", "base") + call cho_chibi("stand", "mid", "base", flip=False) + with d3 + pause .2 + + cho "Thank you, Sir." ("base", "base", "base", "mid") + gen "You're welcome..." ("base", xpos="far_left", ypos="head") + + jump cho_requests + + +### Tier 3 (pre Gryffindor) ### + +label cho_panties_response_T3: + $ has_cho_panties = False + call play_sound("door") + call cho_chibi("stand","mid","base") + with d3 + + call play_music("cho") + cho "Hello, [cho_genie_name]." ("base", "narrow", "base", "downR", cheeks="blush", xpos="right", ypos="base") + gen "[cho_name]..." ("base", xpos="far_left", ypos="head") + cho "I believe I left you something of mine..." ("open", "narrow", "base", "down", cheeks="blush") + gen "Ah, yes... Your panties, I've got them right here." ("grin", xpos="far_left", ypos="head") + cho "Great!" ("base", "base", "base", "mid") + if cho_panties_soaked: + + call cho_walk("desk", "base") + pause .8 + + call give_reward("> You hand over the panties...", "interface/icons/panties_cum.webp") + + cho "(...)" ("upset", "base", "base", "down", cheeks="blush", xpos="mid", ypos="base", trans=blackfade) + gen "Something wrong?" ("base", xpos="far_left", ypos="head") + cho "You came on them didn't you?" ("mad", "narrow", "base", "downR", cheeks="blush") + gen "Of course, what did you think would happen when you left them here?" ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "base", "down", cheeks="blush") + cho "I suppose you're just a man after all, I would've been more shocked if you hadn't done it." ("open", "closed", "base", "mid", cheeks="blush") + cho "I'll just have to make sure to clean them before I use them next time..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "Or you could put them on now..." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "base", "downR", cheeks="blush") + cho "*Hmm*... No, I don't think so..." ("base", "narrow", "base", "mid", cheeks="blush") + gen "Worth a shot..." ("base", xpos="far_left", ypos="head") + gen "There, take them..." ("base", xpos="far_left", ypos="head") + + $ cho_panties_soaked = False + + $ achievements.unlock("pantiesfapcho") + + else: + + $ renpy.sound.play("sounds/sniff.ogg") + call nar(">You bring the panties to your nose and give them one last sniff.") + + gen "*Aaahhh*!{w} Wonderful!" ("angry", xpos="far_left", ypos="head") + cho "(...)" ("base", "narrow", "base", "down") + gen "Here, come and take them..." ("base", xpos="far_left", ypos="head") + + call cho_walk("desk", "base") + pause .8 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause .4 + + call cho_walk("mid", "base") + call cho_chibi("stand", "mid", "base", flip=False) + with d3 + pause .2 + + cho "Thank you, Sir." ("base", "base", "base", "mid") + gen "You're welcome..." ("base", xpos="far_left", ypos="head") + + jump cho_requests diff --git a/game/scripts/characters/cho/events/quidditch/gryffindor_match.rpy b/game/scripts/characters/cho/events/quidditch/gryffindor_match.rpy new file mode 100644 index 00000000..993769ca --- /dev/null +++ b/game/scripts/characters/cho/events/quidditch/gryffindor_match.rpy @@ -0,0 +1,2291 @@ + +# Ravenclaw vs Gryffindor + +label start_gryffindor_match: + # Chat with Cho the day before the match + + gen "It's time..." ("base", xpos="far_left", ypos="head") + cho "Time, [cho_genie_name]?" ("soft", "narrow", "raised", "mid") + gen "It's Game Time! Get your Hanes on, lace up your Nike's, grab your Wheaties and your Gatorade, and we'll pick up a Big Mac on the way to the ballpark." ("base", xpos="far_left", ypos="head") + cho "What are you on about?" ("disgust", "narrow", "base", "mid") + gen "The big game of course!" ("grin", xpos="far_left", ypos="head") + cho "The--{w=0.4} Are you talking about the Quidditch Finals?" ("soft", "base", "raised", "mid") + gen "You got it." ("grin", xpos="far_left", ypos="head") + gen "Time to put your game face on [cho_name]." ("base", xpos="far_left", ypos="head") + gen "I hope you've had some practice on that broom." ("base", xpos="far_left", ypos="head") + cho "I... Yes, you could say that." ("open", "narrow", "base", "downR", cheeks="blush") + gen "Great." ("base", xpos="far_left", ypos="head") + gen "And what of our tactics?" ("base", xpos="far_left", ypos="head") + cho "*Huh*?" ("soft", "base", "base", "mid", cheeks="blush") + gen "Did riding that thing make you forget about them?" ("base", xpos="far_left", ypos="head") + cho "Of course not!" ("clench", "narrow", "base", "R", cheeks="blush") + cho "\"Get close to the enemy team, and annoy Hermione as much as possible\"." ("open", "closed", "angry", "mid", cheeks="blush") + gen "Precisely!" ("grin", xpos="far_left", ypos="head") + cho "" ("soft", "narrow", "base", "mid", cheeks="blush") + gen "If you do well enough, I'm confident we'll be victorious before the game even starts!" ("base", xpos="far_left", ypos="head") + cho "If we're lucky..." ("soft", "narrow", "base", "downR", cheeks="blush") + gen "Luckily for us -- Luck has got nothing to do with it this time." ("base", xpos="far_left", ypos="head") + cho "{size=-4}Let's hope you're right...{/size}" ("annoyed", "narrow", "base", "downR") + gen "Besides, we both know she can't take her eyes off of you, even if she wanted to." ("base", xpos="far_left", ypos="head") + cho "What's that supposed to mean?" ("angry", "wide", "base", "mid", cheeks="blush") + + menu: + + "-Tell Cho that she's obviously looking out for foul play-": + $ cho_hermione_affection = "neither" + + gen "Err... To keep an eye out for any foul activity. Obviously." ("base", xpos="far_left", ypos="head") + cho "Foul play? What do you mean?" ("clench", "narrow", "base", "R", cheeks="blush") + gen "Like someone smacking some Gryffinwhore's ass!" ("grin", xpos="far_left", ypos="head") + cho "Oh... As if I would ever pull a stunt like that..." ("base", "narrow", "base", "R", cheeks="blush") + gen "Isn't that the plan?" ("base", xpos="far_left", ypos="head") + cho "Oh, right..." ("soft", "base", "base", "mid", cheeks="blush") + gen "You seem oddly distracted today [cho_name]." ("base", xpos="far_left", ypos="head") + + "-Tell Cho that Hermione obviously Likes her-": #(Happens on cc_pf_strip_T2_intro_E3 which is mandatory so shouldn't need a check) + $ cho_hermione_affection = "hermione" + + gen "Isn't it obvious?" ("base", xpos="far_left", ypos="head") + gen "The girl has been checking you out ever since she caught you in my office." ("base", xpos="far_left", ypos="head") + cho "W-what? That's nonsense!" ("disgust", "narrow", "base", "R", cheeks="blush") + gen "Is it? Could've fooled me with how she reacted when you displayed that firm body of yours." ("base", xpos="far_left", ypos="head") + cho "But--" ("disgust", "base", "base", "mid", cheeks="blush") + gen "Especially once she saw those firm buns you grip that broom with." ("base", xpos="far_left", ypos="head") + cho "She- She looked at my--" ("mad", "narrow", "base", "mid", cheeks="blush") + gen "Of course! Who wouldn't if a toned and hot young gal such as yourself stood in front of them." ("base", xpos="far_left", ypos="head") + cho "I... I have never thought that she--" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Now, now, there's no need to be overthinking it. Let's focus on responsibilities first, pleasantries second." ("base", xpos="far_left", ypos="head") + + "-Tell Cho that she obviously likes Hermione-": #(Cho sees Hermione's Naked body even if it's Tonks transformed so shouldn't need a check) + $ cho_hermione_affection = "cho" + + gen "Is it really important to know why?" ("base", xpos="far_left", ypos="head") + gen "We both know you enjoyed seeing her naked body as much as I did." ("base", xpos="far_left", ypos="head") + cho "N-No I did not!" ("angry", "happyCl", "angry", "mid", cheeks="blush") + gen "It's obvious... You should've seen your flustered face." ("base", xpos="far_left", ypos="head") + gen "You could tell from a mile off with how much those cheeks lit up." ("base", xpos="far_left", ypos="head") + cho "B-but she's..." ("clench", "narrow", "base", "mid", cheeks="blush") + gen "Such prejudice is unacceptable in my school, Miss Cho!" ("base", xpos="far_left", ypos="head") + cho "(That's not what I meant...)" ("disgust", "narrow", "base", "R", cheeks="blush") + gen "We'll get back to it later, for now though, let's focus on what's important." ("base", xpos="far_left", ypos="head") + + gen "Tomorrow's the day, the highlight of your career!" ("base", xpos="far_left", ypos="head") + gen "Make sure to enjoy it, it's all downhill from there." ("base", xpos="far_left", ypos="head") + cho "Huh?" ("angry", "base", "raised", "mid", cheeks="blush") + gen "Sports are all about money after all. Not everyone is prepared to get tossed around and transferred between different teams like property." ("base", xpos="far_left", ypos="head") + cho "Tossed around, [cho_genie_name]? I'm sorry, I'm a little confused..." ("disgust", "narrow", "base", "mid") + gen "I know the feeling... Enough about that, you've got a game to win!" ("base", xpos="far_left", ypos="head") + gen "Go-go Ravenclaw!" ("base", xpos="far_left", ypos="head") + cho "Right..." ("disgust", "base", "base", "mid") + + if game.weather in {"rain", "storm"}: + cho "Let's just hope it stops raining before then." ("soft", "base", "base", "R") + elif game.weather in {"snow", "blizzard"}: + cho "Let's just hope it stops snowing before then." ("soft", "base", "base", "R") + elif game.weather == "overcast": + cho "Let's just hope the weather doesn't get worse." ("soft", "base", "base", "R") + else: + cho "Let's hope the weather stays like it is." ("soft", "base", "base", "R") + + gen "Get yourself ready, [cho_name]." ("base", xpos="far_left", ypos="head") + gen "And remember, keep your eyes on the price!" ("base", xpos="far_left", ypos="head") + cho "The cup..." ("smile", "narrow", "base", "R") #stare, smile + + hide cho_main + with d3 + + #Cho turns around (CG maybe?) + call cho_chibi(flip=True) + with d3 + + gen "(That ass...)" ("grin", xpos="far_left", ypos="head") + + call cho_walk(action="leave") + + $ cho_busy = True + $ cc_event_pause += 1 # Event starts on the next day + $ cc_summon_pause += 1 # Can't be summoned until next event + + $ cho_quid.lock_training = True + $ cho_quid.lock_practice = True + + $ gryffindor_match = "start" + + jump end_cho_event + +#Next day +#Cho flies up in the window and reminds genie about the game +label gryffindor_match: + # Quidditch match: Ravenclaw vs. Gryffindor + + $ lun_outfit_last.save() + $ her_outfit_last.save() + $ ton_outfit_last.save() + $ cho_outfit_last.save() + + # $ luna.equip(lun_outfit_lion) + $ hermione.equip(her_outfit_default) + $ tonks.equip(ton_outfit_default) + $ luna.equip(lun_outfit_lion_event) + + $ cho.equip(cho_outfit_quidditch) + $ cho.set_pose("broom") + $ cho.animation = [sprite_fly_idle] + + $ snape_chibi.zorder = 4 + $ tonks_chibi.zorder = 3 + $ hermione_chibi.zorder = 6 + $ genie_chibi.zorder = 5 + + call play_music("day") + + gen "*Yawn*" ("base", xpos="far_left", ypos="head") + gen "(Alright then, time to get up and moving.)" ("base", xpos="far_left", ypos="head") + gen "(Today is going to be a good day, I can feel it in those old bones!)" ("grin", xpos="far_left", ypos="head") + gen "(Seeing Cho on that broom again, and wiping the smirk of Snape's smug face when she stomps those--)" ("grin", xpos="far_left", ypos="head") + + call play_music("stop") + + gen "(Hold on...)" ("base", xpos="far_left", ypos="head") + + play music "music/marty-gots-a-plan-by-kevin-macleod.ogg" fadein 1 fadeout 1 + + gen "(The final match...)" ("base", xpos="far_left", ypos="head") + gen "{size=-4}*Murmur*...{w=0.4} I feel like I've forgotten something...{/size}" ("base", xpos="far_left", ypos="head") + gen "(Hold your carpets!)" ("angry", xpos="far_left", ypos="head") + gen "(Since it's the finals... That means no more matches!)" ("angry", xpos="far_left", ypos="head") + gen "(Cho won't have any more reason to let me coach her!)" ("angry", xpos="far_left", ypos="head") + gen "(I've been so focused on Snape and our stupid bet that I didn't even begin to see the bigger picture!)" ("base", xpos="far_left", ypos="head") + gen "(What good for is money when there's not a single brothel you can spend it at.)" ("base", xpos="far_left", ypos="head") + gen "(There's only so many sweets and clothes one can buy...)" ("base", xpos="far_left", ypos="head") + gen "(*Hmm*...)" ("base", xpos="far_left", ypos="head") + gen "(Perhaps I could pay her to--)" ("base", xpos="far_left", ypos="head") + + # Note: I've tried using chibis, but it's too difficult/buggy. + + #Cho appears in the window on her broom/knocks on door + #show image "ch_cho fly_window_masked" onlayer screens zorder 5 + #call cho_chibi("fly_window", "mid", "base") + + cho "[cho_genie_name]!" + + if cho_bj_choice == "points": + gen "(No, she got pissed when I offered points before.)" ("base", xpos="far_left", ypos="head") + gen "(Even now I can hear her calling me out, and who knows what she would do if I offered her real money...)" ("base", xpos="far_left", ypos="head") + else: + gen "(Nah, I can hear her screaming at me in my head.)" ("base", xpos="far_left", ypos="head") + gen "(All she cares about is that broomstick sport of hers.)" ("base", xpos="far_left", ypos="head") + + gen "I'm such an idiot!" ("angry", xpos="far_left", ypos="head") # Says out loud + cho "Hey, [cho_genie_name]!" + cho "The game is about to start... You're going to be late!" + gen "W-What..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("stand", 225, "base") + with d3 + # Genie jumps to his feet + + gen "Who said that?!" ("angry", xpos="far_left", ypos="head") + + call gen_chibi("stand_alt") + with d3 + + gen "[cho_name]?" ("base", xpos="far_left", ypos="head") + gen "What are you doing in here?" ("base", xpos="far_left", ypos="head") + gen "Or rather, what are you doing {i}out there{/i}, outside my window?" ("base", xpos="far_left", ypos="head") + cho "I flew up here to remind you about the finals, [cho_genie_name]." + + gen "Ah yes, I suppose I better get going..." ("base", xpos="far_left", ypos="head") + call gen_chibi("stand") # Genie slowly walks away. + with d3 + call gen_walk(path=[(210, 470), (390, 470), (410, 420)], speed=0.5) + cho "Aren't you going to wish me luck?" + call chibi_emote("thought", "genie") + pause 1.5 + call chibi_emote("hide", "genie") + gen "Yeah, good luck..." ("base", xpos="far_left", ypos="head") + call gen_walk(xpos="mid", ypos="base", speed=0.75) + cho "Are you alright, [cho_genie_name]?" + gen "It's nothing, don't worry about it..." ("base", xpos="far_left", ypos="head") + gen "Meet you at the pitch." ("base", xpos="far_left", ypos="head") + cho "Alright... See you at the pitch then." + + call gen_walk(action="leave") + + cho "(That's weird. He didn't make even a single dirty joke.)" + cho "(Is it because--)" + cho "(No, that's impossible... is it?)" + + #Cho flies off + + # gen "(...{w=0.5} Well then, I suppose I better get going, I've still got that prize money to look forward to if she wins...)" ("base", xpos="far_left", ypos="head") + # gen "(I guess...)" ("base", xpos="far_left", ypos="head") + + #Black screen + + show screen blkfade + with d5 + + call play_music("stop") + + call play_sound("grass") + call nar(">You begin making your way down to the pitch.") + call nar(">After struggling to navigate the Great staircase and the indistinguishable corridors, you finally find the way to the entrance of the pitch.") + call nar(">Reaching the entrance, you hear the murmurs of the crowd die down, signalling that the match is about to begin.") + call nar(">You quickly climb the steep staircase up the commentator's tower.") + + #Pitch Background sun high variant, Snape is at the podium with Hermione to the side of him. Tonks is at the back + #Genie appears at the back + + call room("quidditch_stands",) + call quidditch_stands(weather="sun_high", crowd=crowd_full) + call ton_chibi("stand", 212, 318, flip=True) + call sna_chibi("stand", 280, 400, flip=True) + call her_chibi("stand", 260, 440, flip=True) + play bg_sounds "sounds/crowd_very_low.ogg" fadein 10 + with d5 + + pause 0.5 + call gen_chibi("stand", 148, 346, flip=True) + with d3 + pause 0.5 + + ton "{size=-4}Thank Merlin, you're here...{/size}" ("normal", "base", "shocked", "R", ypos="head", flip=True) #whisper + #genie walks next to Tonks # <- Not possible to do. + ton "{size=-4}Where have you been?{/size}" ("open", "base", "base", "mid") #whisper + gen "{size=-4}You'd think that in a place of magic there'd be some better means of transport than simply walking...{/size}" ("base", xpos="far_left", ypos="head") #whisper + gen "{size=-4}What's Snape doing?{/size}" ("base", xpos="far_left", ypos="head") #whisper + #Snape middle of the screen standing + sna "And seeing that our dear headmaster couldn't make it today, it's fallen upon me--" ("snape_24", flip=True, xpos=340, ypos="base", trans=d5) + ton "{size=-4}The headmaster is supposed to kick off the final game, you better get up there.{/size}" ("soft", "base", "base", "R") + gen "{size=-4}I feel like I should be getting briefed on these things...{/size}" ("base", xpos="far_left", ypos="head") + sna "So...{w=0.4} Everyone do your best...{w=0.4} And stuff like that..." ("snape_25", flip=True, xpos=340, ypos="base", trans=d5) + + call gen_chibi("stand", 180, 435, flip=True) + call her_chibi("stand", 260, 440, flip=True) + with d3 + + #Genie walks down to the podium next to Hermione + call nar(">You walk up to Hermione and notice that she is looking tentatively at whatever Snape is trying to achieve.") + + menu: + "Slap her ass": + call slap_her + + "Give her a headpat": + pass + + $ renpy.sound.play("sounds/gasp3.ogg") + pause 0.5 + + call gen_chibi("stand", 170, 435, flip=True) + call her_chibi("stand", 270, 440, flip=False) + with d3 + + her "Professor!" # She turns around and sees Genie, but Snape thinks she's calling for him. + sna "What is it now Miss--" ("snape_07", flip=True, xpos=340, ypos="base", trans=d5) + + #Snape turns to Hermione and sees genie + call sna_chibi("stand", 280, 400, flip=False) + call gen_chibi("stand", 170, 435, flip=True) + call her_chibi("stand", 270, 440, flip=False) + hide snape_main + with d3 + + sna "Oh..." + gen "I'll take it from here if you don't mind..." ("base", xpos="far_left", ypos="head") + sna "As you wish..." + + #Snape walks back to the seats + call gen_chibi("stand", 280, 400, flip=True) + call sna_chibi("stand", 148, 340, flip=True) + call her_chibi("stand", 260, 440, flip=True) + with d3 + + #Team introductions + #microphone feedback + $ renpy.sound.play("sounds/microphone_feedback.ogg") + gen "Ladies and gentlemen!" ("base", xpos="far_left", ypos="head") + gen "*Ahem*...{w=0.4} One moment please." ("base", xpos="far_left", ypos="head") + + #Genie turns back to Tonks + call gen_chibi("stand", 280, 400, flip=False) + call her_chibi("stand", 260, 440, flip=True) + with d3 + + gen "What was I supposed to do again?" + ton "Introduce the teams and kick off the finals!" ("scream", "base", "base", "L") + gen "Oh right..." + #turns to audience + call gen_chibi("stand", 280, 400, flip=True) + call her_chibi("stand", 260, 440, flip=True) + with d3 + + hide screen genie_main + with d3 + pause .8 + $ renpy.sound.play("sounds/killswitch_on.ogg") + stop bg_sounds fadeout 3.0 + hide screen blktone + call quidditch_stands(spotlight=True) + pause 1.5 + + sna "Dear lord... Always with the dramatics..." ("snape_06", xpos="base", ypos="head", flip=False) + + gen "" ("base", xpos=0, ypos="base") + show genie zorder genie_zorder + with d3 + + gen "*Ahem*...{w=0.4}{nw}" ("grin") + + $ renpy.sound.play("sounds/microphone_feedback2.ogg") + + gen "*Ahem*...{fast} Testing, testing, is this thing still on?" ("grin") + sna "..." ("snape_11", xpos="base", ypos="head", flip=False) + + gen "Perfect!" ("grin") + + play bg_sounds "music/fanfare.ogg" fadeout 3 fadein 1.0 + + gen "Now, this is it ladies and gentlemen!" ("grin") + gen "The most important game of these incredible athletes' careers!" ("open") + sna "What's he on about now?" ("snape_06") + gen "I wish for everyone to put in their best efforts today, and make today's match, {b}the{/b} match that you'll talk about with your children and grandchildren!" ("base") + gen "Remember this moment!" ("open") + gen "Cherish it!" ("open") + gen "It's all you'll have once you're fifty, and stuck in your boring nine-to-five desk job!" ("angry") + + #murmurs + call quidditch_stands(crowd_react=["emoq", "qu", None]) + $ renpy.sound.play("sounds/murmur.ogg") + gen "Now, let's welcome and give it up for our first team!" ("open") + call quidditch_stands(crowd_react=[None, None, None]) + gen "Team Gryffindor!" ("open") + + #cheers + call quidditch_stands(crowd_react=["emo8", "th", "emo8"]) + $ renpy.sound.play("sounds/crowd_cheer.ogg") + pause 2.0 + call quidditch_stands(crowd_react=[None, None, None]) + + gen "We've got some incredible athletes coming up today!" ("base") + gen "Give a round of applause to the team captain and chaser...{w=0.4} Angelina Johnson!" ("open") + + #cheers + call quidditch_stands(crowd_react=["emo8", "sal", "emo8"]) + $ renpy.sound.play("sounds/crowd_cheer.ogg") + pause 2.0 + call quidditch_stands(crowd_react=[None, None, None]) + + gen "And now...{w=0.4} The two other chasers of Team Gryffindor, Alicia Spinnet and Katie Bell!" ("open") + + #cheers + call quidditch_stands(crowd_react=["emo8", "sal", "emo8"]) + $ renpy.sound.play("sounds/crowd_cheer.ogg") + pause 2.0 + call quidditch_stands(crowd_react=[None, None, None]) + + gen "And lest we forget the twins, now walking onto the pitch--" ("open") + + gen "{size=-4}Psst... [hermione_name], what were their names again?{/size}" ("base") + her "The Beaters? Fred and--" ("open", "happy", "base", "mid", xpos="base", ypos="head", flip=False) + + $ renpy.sound.play("sounds/microphone_feedback.ogg") + + #cheers + call quidditch_stands(crowd_react=["emo8", "emo7", "qu"]) + $ renpy.sound.play("sounds/crowd_cheer.ogg") + + gen "{size=+2}{i}The beater{/i} brothers!{/size}" ("open") + + her "Sir..." ("disgust", "base", "base", "mid") + call quidditch_stands(crowd_react=[None, None, None]) + + gen "{size=-4}What position were they again?{/size}" ("base") + her "That's what I--" ("angry", "narrow", "base", "mid") + + $ renpy.sound.play("sounds/microphone_feedback.ogg") + gen "{size=+2}Hold on, the next guy is coming up...{/size}" ("base") + + #gasp + $ renpy.music.set_volume(0.0, delay=2.0, channel="bg_sounds") + pause 1.0 + + gen "It's...{w=0.4} *Err*...{w=0.4} You know who!{w=0.3}{nw}" ("open") + + $ renpy.music.set_pause(True, channel="bg_sounds") + $ renpy.sound.play("sounds/crowd_gasp.ogg") + call quidditch_stands(crowd_react=["excl", "emo8", "excl"]) + + gen "It's... *Err*... You know who!{fast}" ("base") + gen "You know who it is, it's another one of those red haired guys!" ("base") + sna "..." ("snape_11", xpos="base", ypos="head", flip=False) + gen "What?{w} Not a fan?" ("base") + + call quidditch_stands(crowd_react=[None, None, None]) + $ renpy.music.set_pause(False, channel="bg_sounds") + $ renpy.music.set_volume(1.0, delay=1.0, channel="bg_sounds") + + gen "Don't listen to them boy. Just get out there and show who's boss, boss man!" ("base") + her "..." ("disgust", "happy", "worried", "mid") + gen "And now... Last but not least, who else but the Potter boy!" ("base") + + call quidditch_stands(crowd_react=["emo8", "th", "emo8"]) + $ renpy.sound.play("sounds/crowd_cheer.ogg") + gen "Yeah! We all know that guy!" ("grin") + + call quidditch_stands(crowd_react=[None, "excl", None]) + "This one guy" "Booooo! You suck!" + call quidditch_stands(crowd_react=[None, None, None]) + gen "Wait, who said that?" ("open") + sna "..." ("snape_47") # smirks + + gen "I bet it was one of you Slut-herians." ("angry") + gen "Wait. I meant Sly-therians." ("angry") + gen "Slipperins?" ("base") + gen "I give up... Anyway." ("base") + gen "Snape never stops talking about this Potter guy! So he must be good!" ("grin") + sna "What is he--" ("snape_25") + gen "That Potter gang this and that..." ("grin") + sna "I'm going to jinx him into oblivion--" ("snape_32") + ton "You will do no such thing. Let me take care of it." ("mad", "narrow", "base", "L", ypos="head", flip=False) + + #Tonks walks down + call sna_chibi("stand", 168, 326, flip=True) + call ton_chibi("stand", 250, 380, flip=True) + call gen_chibi("stand", 280, 400, flip=True) + call her_chibi("stand", 260, 440, flip=True) + with d3 + + gen "*Hah-Hah*... That guy sure is a prevalent character!" ("grin") + ton "I think it might be best if Miss Granger took over the introductions..." ("open", "base", "raised", "R") + + call ton_chibi("stand", 250, 380, flip=True) + call gen_chibi("stand", 280, 400, flip=False) + call her_chibi("stand", 260, 440, flip=True) + $ renpy.sound.play("sounds/killswitch_off.ogg") + call quidditch_stands(spotlight=False) + hide genie + with d3 + + pause 0.5 + + gen "But I haven't gotten to the good part yet!" ("angry", xpos="far_left", ypos="head") + ton "*piercing gaze*" ("normal", "narrow", "annoyed", "mid", hair="upset") #The look + gen "Fine..." ("base") + + call ton_chibi("stand", 250, 380, flip=True) + call gen_chibi("stand", 280, 400, flip=True) + call her_chibi("stand", 260, 440, flip=True) + $ renpy.sound.play("sounds/killswitch_on.ogg") + call quidditch_stands(spotlight=True) + with d3 + + gen "" (xpos=0, ypos="base") + show genie zorder genie_zorder + with d3 + gen "Go team, go Tune Squad!" ("grin") + hide genie + with d3 + gen "" (xpos="far_left", ypos="head") + + play bg_sounds "sounds/crowd_low.ogg" fadein 5 fadeout 5 + $ renpy.sound.play("sounds/crowd_cheer.ogg") + + $ renpy.sound.play("sounds/killswitch_off.ogg") + call quidditch_stands(spotlight=False) + pause 1 + + $ snape_chibi.zorder = 3 + $ tonks_chibi.zorder = 4 + + call sna_chibi("stand", 150, 290, flip=True) + call ton_chibi("stand", 130, 310, flip=True) + call gen_chibi("stand", 168, 326, flip=True) + call her_chibi("stand", 300, 400, flip=True) + hide genie + with d3 + + #Genie and Tonks head back to the seats + #Hermione goes up to the podium + her "*Ahem*..." ("soft", "happy", "base", "R", xpos=290, ypos="base", flip=True, trans=d5) + her "Moving on..." ("open", "happy", "base", "L") + her "What could only be described as a debut at the Quidditch Finals..." ("grin", "closed", "base", "L") + her "A surprise to everyone, I'm sure..." ("grin", "base", "base", "L") + her "A surprise to everyone, I'm sure...{fast} Team Ravenclaw!" ("scream", "base", "base", "L") + + hide hermione_main + with d3 + + $ renpy.sound.play("sounds/crowd_cheer2.ogg") + call quidditch_stands(crowd_react=["emo8", "th", "emo8"]) + ">Cheering from the Ravenclaw students erupts but is soon drowned out by excessive booing and jeering from the Slytherin crowd." + call quidditch_stands(crowd_react=[None, None, None]) + + gen "{size=-4}Why'd you cut me off like that?{/size}" ("base", xpos="far_left", ypos="head") #Whisper + sna "{size=+12}*Breathing heavily*{/size}" ("snape_43") + gen "{size=-4}What's up with him?{/size}" ("base", xpos="far_left", ypos="head") + ton "{size=-4}Trust me...{w=0.4} It was for your own good.{/size}" ("soft", "narrow", "base", "R") + sna "{size=-4}\"He never stops talking about him\" he says...\n{/size}{w=0.4}How {w=0.2}{size=+4}{b}dare{/b}{/size} {w=0.2}you--" ("snape_12") + ton "{size=-2}Let's just focus on the game shall we?{/size}" ("open", "base", "raised", "R") + sna "Fine...{w=0.4} Count yourself lucky our bet is still up." ("snape_01") + gen "I don't doubt you've got some filthy tricks up your sleeves again." ("base", xpos="far_left", ypos="head") + sna "Says you." ("snape_39") + sna "And I don't know what you're talking about...{w=0.4} I'm just here to watch the game." ("snape_37") # Recovers himself + gen "{size=+4}Don't play dumb with me. Tell me what you're planning!{/size}" ("angry", xpos="far_left", ypos="head") + sna "As I said--" ("snape_01") + ton "*Sigh*...{w=0.4} You boys and your silly bets." ("open", "narrow", "shocked", "downR") + her "--And finally, making their way onto the pitch..." ("angry", "happy", "base", "L", xpos=290, ypos="base", flip=True, trans=d5) + her "The Ravenclaw seeker...{w=0.6}{nw}" ("open", "base", "base", "L") + + $ renpy.sound.play("sounds/crowd_cheer.ogg") + call quidditch_stands(crowd_react=["emo8", "emo7", "emo8"]) + + her "The Ravenclaw seeker...{fast} Cho Chang!" ("scream", "base", "base", "L") + + her "Hold on...{w=0.4} Why is she already on her broom?" ("disgust", "happy", "base", "L") + ">You look down the pitch, and watch Cho as she slowly hovers up to her team, smiling awkwardly towards Madam Hooch." + + $ renpy.sound.play("sounds/crowd_cheer2.ogg") + "The Crowd" "Cho! Cho! Cho!" + + her "*Hmph*...{w=0.4} It appears some of us aren't here just for sports." ("open", "squint", "annoyed", "L", cheeks="blush") + call quidditch_stands(crowd_react=[None, None, None]) + sna "She sure has become quite popular amongst the students hasn't she." ("snape_37") + ton "*Mhmm* And not just amongst students..." ("horny", "narrow", "base", "stare", hair="horny") + + #Whistling (catcalling) + $ renpy.sound.play("sounds/wolf_whistle.ogg") + call quidditch_stands(crowd_react=[None, "emo7", None]) + + mal "Show us your tits!" + her "Settle down, please." ("open", "squint", "annoyed", "L", cheeks="blush") + + $ renpy.sound.play("sounds/wolf_whistle2.ogg") + call quidditch_stands(crowd_react=["emo8", None, None]) + + fem "Shake that booty, sister!" ("base", xpos="far_left", ypos="head") + stop bg_sounds fadeout 3.0 + call play_sound("kick") + with hpunch + play bg_sounds "sounds/wind_long_loop.ogg" fadein 3 fadeout 2 + call quidditch_stands(crowd_react=[None, None, None]) + her "{size=+10}Quiet!{/size}" ("scream", "closed", "angry", "L", cheeks="blush") #big text + + #crowd dies down + her "" ("normal", "narrow", "angry", "L", cheeks="blush") #big text + $ renpy.sound.play("sounds/cough_male.ogg") + mal "..." + + + her "Good." ("grin", "base", "base", "L", cheeks="blush") + her "Then perhaps we could get to watching some actual Quidditch today." ("grin", "base", "base", "L", cheeks="blush") + her "Madam Hooch, when you're ready." ("open", "squint", "base", "L") + + pause 1 + #Whistle sound + $ renpy.sound.play("sounds/referee.ogg") + play bg_sounds "sounds/crowd_very_low.ogg" fadein 5 fadeout 5 + play music "music/machinations-by-kevin-macleod.ogg" fadein 1 fadeout 1 + pause .4 + + hide hermione_main + with d3 + + ">As the balls are released, Cho shoots straight up into the air to get an overview of the game." + sna "Already up to her usual schemes I see..." ("snape_03") + gen "You bet." ("grin", xpos="far_left", ypos="head") + gen "(Let's hope she's had enough practice, bonding with that broom...)" ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/ball_hit.ogg") + her "Katie Bell, of course, has already gotten a hold of the quaffle, and is speeding up towards Ravenclaw's side of the pitch!" ("grin", "squint", "base", "L", xpos=290, ypos="base", flip=True, trans=d5) + her "Davies is moving up to intercept--{w=0.2}" ("angry", "squint", "base", "L") + #her "Watch out Katie!!" ("base", "base", "base", "mid") # Confusing. + + #Hit sound + #crowd groan + $ renpy.sound.play(["sounds/card_punch4.ogg", "sounds/crowd_ouch.ogg"]) + with hpunch + pause 1.0 + + her "*Hah*! Fred Weasley hit him right on his side with a bludger!" ("smile", "squint", "base", "L") + hide hermione_main + with d3 + + ton "{size=-4}She's sure improved a lot on her commentating since the first game.{/size}" ("base", "narrow", "base", "R") #whisper + sna "{size=-4}She's clearly got a bias towards her own house...{/size}" ("snape_01") + ton "{size=-4}Don't you start--{/size}" ("soft", "narrow", "annoyed", "R") + ">Ignoring the two, you look up towards Cho who is fidgeting around a bit on her new broom." + ton "{size=-4}Didn't you give some Slytherin girl fifty points the other night--{/size}" ("soft", "narrow", "annoyed", "R") + sna "{size=-4}*Ahem*...{w=0.4} Voice down, please {b}Nymphadora{/b}.{/size}" ("snape_14") + + ton "{nw}" ("mad", "wide", "annoyed", "stare", xpos="far_right", ypos=200) #fuming + $ tonks.animation = shake + $ renpy.sound.play("sounds/kettle.ogg") + $ tonks.set_body_hue(280) # Turn tonks purple + with Dissolve(3.0) + pause 3.0 + hide tonks_main + #ton "" ("base", "base", "base", "mid") + sna "..." ("snape_25") #Oh shit... face + ton "What did I tell you about calling me--" ("mad", "wide", "annoyed", "mid", xpos="far_right", ypos=200) + gen "I'm trying to watch the game here..." ("base", xpos="far_left", ypos="head") + $ tonks.animation = [] + $ tonks.set_body_hue(0) + with d9 + ton "He started it..." ("mad", "narrow", "annoyed", "mid", ypos="head") + sna "No, you did!" ("snape_17") + gen "*Sigh* Like children." ("base", xpos="far_left", ypos="head") + + show screen blkfade + hide tonks_main + with d5 + + #Fade black + #Set background to sun low + call quidditch_stands(weather="sun_low") + + ">Some time passes and you watch Gryffindor score even more goals as Cho fruitlessly tries to get comfortable on her broom." + + hide screen blkfade + with d5 + + #Fade back to pitch + + sna "What's she up to anyway? She looks like a niffler who's got caught stealing their grandmother's brooch." ("snape_01") + gen "(Come on, girl...{w=0.4} Focus.)" ("base", xpos="far_left", ypos="head") + gen "(Get that broom going...)" ("base", xpos="far_left", ypos="head") + ">Cho, frustrated in a multitude of ways, looks down towards you in desperation." + + menu: + "-Give her a sign-": + ">You begin moving one of your hands in a spanking motion." + ">Her expression changes as she stares at you in confusion." + ">You put your other hand out over what could only be described as an imaginary ass and begin spanking the air violently." + ton "Professor?" ("soft", "base", "raised", "mid") #Confused + + "-Point towards the Gryffindor players-": + ">You point towards the Gryffindor side of the pitch." + ">Cho looks at you confused, and then points towards that side as well." + ">Shaking your head, you point towards one of the female players." + + "-Give her a seductive look-": + ">You begin fluttering your eyelashes up towards Cho." + ">She looks down at you in confusion." + ">You lick your lips and give her a wink." + ">Looking at you in horror for a brief moment, she then finally understands what you were trying to say." + + ">Cho gives you a quick nod and then flies up towards one of the Gryffindor chasers who has positioned themselves near the Ravenclaw goalposts." + her "Johnson passing to Spinnet--" ("grin", "base", "base", "L", xpos=290, ypos="base", flip=True, trans=d5) + #Spank sound + call play_sound("slap") + "*Smack*!!" + her "What the--" ("soft", "wide", "base", "up", cheeks="blush") + her "What is Cho doing?" ("disgust", "wide", "base", "up", cheeks="blush") + + hide hermione_main + with d3 + + #Hermione turns around + call her_chibi("stand", 300, 400, flip=False) + with d3 + + her "Sir!" ("disgust", "narrow", "annoyed", "mid", cheeks="blush", xpos=290, ypos="base", flip=False, trans=d5) + her "She--{w=0.2} She smacked one of the chasers on the bum..." ("angry", "happy", "annoyed", "mid", cheeks="blush") + her "Sir, you can't let her get away with this!" ("clench", "happy", "annoyed", "mid", cheeks="blush") + gen "I'm not hearing any objections from the referee...{w=0.5} Or the player, matter-of-factly..." ("base", xpos="far_left", ypos="head") + gen "Unless she used her elbows, that's not against the rules." ("base", xpos="far_left", ypos="head") + her "But...{w=0.4} Sir!" ("disgust", "base", "annoyed", "mid", cheeks="blush") + gen "I didn't write the rules, Miss Granger..." ("base", xpos="far_left", ypos="head") + her "*Tsk*..." ("soft", "happy", "angry", "R", cheeks="blush") + + hide hermione_main + with d3 + + call her_chibi("stand", 300, 400, flip=True) + with d3 + + ">Hermione gritting her teeth holds back her anger, and eventually resumes commentating the game." + ">Looking up at Cho, you see a mix of frustration and worry across her face as she flies off again." + + gen "{size=-4}Damn it...{/size}" ("base", xpos="far_left", ypos="head") #whisper + sna "{size=-4}Miss Chang isn't doing so well this time is she?{/size}" ("snape_05") #whisper + sna "{size=-4}It appears your feeble attempts at riling up Miss Granger were in vain.{/size}" ("snape_37") #whisper + gen "{size=-4}How did you--{/size}" ("angry", xpos="far_left", ypos="head") #whisper + sna "{size=-4}Why, you were the one that told me about their contempt for each other when we made our little bet.{/size}" ("snape_02") #whisper + gen "..." ("base", xpos="far_left", ypos="head") + ton "*Hmm*?" ("soft", "base", "base", "R") + sna "{size=-4}That little witch has successfully been making my life a misery since the moment she got here.{/size}" ("snape_01") + sna "{size=-4}To think that Miss Chang would be able to rile her up...{/size}" ("snape_37") + her "Another goal for Team Gryffindor!" ("crooked_smile", "happy", "base", "L", xpos=290, ypos="base", flip=True, trans=d5) + + #crowd cheer + $ renpy.sound.play("sounds/crowd_cheer.ogg") + call quidditch_stands(crowd_react=["th", None, "emo8"]) + + sna "Go-Go Gryffindor..." ("snape_37") #Smugface, out loud + call quidditch_stands(crowd_react=[None, None, None]) + her "And with such a steady lead, soon it won't even matter if Ravenclaw catches the snitch or not!" ("smile", "base", "base", "L") + + hide hermione_main + with d3 + + gen "Hold the fuck up." ("angry", xpos="far_left", ypos="head") + gen "No one has told me that's a thing! I thought the rules were set up in favour of the protagonist!" ("angry", xpos="far_left", ypos="head") + + if quidditchguide_ITEM.used: + sna "I see someone hasn't been paying attention to the \"Basics of Quidditch\"." ("snape_41") + gen "Of course I did, I just... forgot." ("base", xpos="far_left", ypos="head") + sna "Oh well, perhaps next time... Oh wait, there's no next time..." ("snape_46") + else: + sna "Of course, you can win the game even without your team being the ones to catch the snitch, albeit it is very uncommon..." ("snape_41") + sna "Perhaps if you'd learnt the actual game you wouldn't need to rely on silly rules like excessive elbow usage..." ("snape_46") # smug + + gen "{size=-4}Smug bastard...{/size}" ("base", xpos="far_left", ypos="head") + sna "I'll take that as a compliment." ("snape_37") + + ">As you turn your gaze back to Cho, you see her eyes darting around, seemingly searching for the snitch." + gen "(Damn it... She's lost all confidence in our plan!)" ("base", xpos="far_left", ypos="head") + gen "(Hold on...{w=0.4} Yes! That's it, confidence!)" ("base", xpos="far_left", ypos="head") + gen "Tonks, Where's Lovegood?" ("base", xpos="far_left", ypos="head") + ton "Lovegood, sir?" ("soft", "base", "base", "mid") + gen "Yes, what tower is she in?" ("base", xpos="far_left", ypos="head") + ton "Oh, Miss Lovegood... She should be in that one across the pitch--" ("open", "base", "raised", "mid") + + #Genie chibi disappears + $ renpy.sound.play("sounds/run_02.ogg") + call gen_chibi("hide") + + ton "Where are you going?!" ("clench", "wide", "base", "mid") + + with hpunch + $ renpy.sound.play("sounds/falling_stairs.ogg") + + #Falls down stairs + pause 2.0 + sna "*Tsk*, *Tsk*...{w=0.4} The sense of imminent loss must've been too much for him." ("snape_37") + + her "A fantastic--{w=0.4}{nw}" ("grin", "base", "base", "L", xpos=290, ypos="base", flip=True, trans=d5) + her "A fantastic--{fast} Hold on...{w=0.4} What's that on the pitch?{nw}" ("soft", "narrow", "base", "L") + her "A fantastic-- Hold on... What's that on the pitch?{fast} Is that--" ("clench", "wide", "base", "L") + $ renpy.sound.play("sounds/murmur.ogg") + sna "What the--" ("snape_25") + sna "He's going to blow our cover, running like that!" ("snape_32") + ton "Focus on the game, Miss Granger!" ("scream", "wide", "base", "mid") + her "R-Right!" ("mad", "happy", "base", "L") + her "Fred--{w=0.2} I mean, George Weasley intercepting a bludger--" ("scream", "squint", "base", "L") + hide screen bld1 + hide hermione_main + with d3 + + pause 0.3 + + call room("quidditch_stands2") + call quidditch_stands2(weather="sun_low", crowd=crowd_full) + call lun_chibi(xpos=620, ypos=400) + show image Transform("images/misc/redhead.webp", zoom=0.26, pos=(805, 240), xzoom=-1) as redhead zorder 2 + show screen blkfade + with ComposeTransition(pushleft, before=faderight) + hide screen blkfade + with ComposeTransition(pushleft, after=faderight) + + #Camera transitions and Genie appears in Luna's tower on the opposite side of the pitch + + $ renpy.sound.play("sounds/run_02.ogg") + pause 1.5 + + call gen_chibi("stand", 780, 480, flip=False) + with d3 + call gen_walk(xpos=740, ypos=470) + + gen "*Ah*...{w=0.4} *Ah*...{w=0.4} Stairs...{w=0.4} Why did it have to be--" ("base", xpos="far_left", ypos="head") + "Cute Redhead" "Professor Dumbledore?" + + call gen_chibi(flip=True) + with d3 + + gen "I don't have the time for this, girl... Where's Lovegood?" ("base", xpos="far_left", ypos="head") + "Cute Redhead" "Luna Lovegood? She's up there by the front." + + #Genie walks down to Luna. + call gen_walk(xpos=650, ypos=430) + + gen "Lovegood! Where's your cheerleading squad?!" ("base", xpos="far_left", ypos="head") + gen "What the hell are you wearing?" ("base", xpos="far_left", ypos="head") + + #Luna doll shows with her wearing the lion outfit + lun "Oh, hello sir! Come to cheer with me?" ("smile", "base", "base", "R", xpos="right", ypos="base", trans=d3) + gen "What in the great desert sands is this..." ("base", xpos="far_left", ypos="head") + lun "Great isn't it! Would you like to try on my lion head?" ("grin", "base", "base", "R") + gen "Lion head--" ("base", xpos="far_left", ypos="head") + gen "...{w=1.0} Miss Lovegood." ("base", xpos="far_left", ypos="head") + lun "Yes?" ("grin", "base", "raised", "R") + gen "When I told you to cheer..." ("base", xpos="far_left", ypos="head") + gen "Did you not think I meant for your own house?!" ("angry", xpos="far_left", ypos="head") + lun "My own...{w=0.4}{nw}" ("open", "base", "raised", "R") + lun "My own...{fast} Oooooh!" ("soft", "base", "base", "stare") + + #Hit sound + $ renpy.sound.play("sounds/ball_hit.ogg") + + "Hermione" "{{Ouch... What a blunder! Surely he should've seen that coming!}" #big text + gen "You absolute--" ("base", xpos="far_left", ypos="head") + "Hermione" "{{Katie Bell passing to Alicia Spinnet...}" #text larger + gen "Do you even use your--" ("base", xpos="far_left", ypos="head") + "Hermione" "{{Expertly dodging a bludger...}" #text larger + gen "I thought I told you to bring your friends--" ("base", xpos="far_left", ypos="head") + "Hermione" "{{Coming up towards the goal...}" #text larger + lun "I can't hear you, sir!" ("mad", "base", "base", "R") + gen "Why would I ask you to cheer for--" ("base", xpos="far_left", ypos="head") + "Hermione" "{{Gryffindor!}" #text larger + + #Crowd cheer + $ renpy.sound.play("sounds/crowd_cheer.ogg") + lun "Yaaaay!" ("grin", "base", "base", "stare") + gen "..........." ("base", xpos="far_left", ypos="head") # At a loss for words; Requires more dots. :P + lun "Sorry, what did you say, sir?" ("grin", "base", "base", "R") + $ renpy.sound.play("sounds/crowd_stomping.ogg") + gen "Take that stupid-- off!" ("base", xpos="far_left", ypos="head") + lun "Take off what--" ("angry", "base", "base", "R") + gen "Now!" ("base", xpos="far_left", ypos="head") + lun "Okay!" ("angry", "happyCl", "base", "mid") + + #Luna takes off trousers + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("bottom") + with d3 + + pause 1.0 + + gen "What are you doing?!" ("angry", xpos="far_left", ypos="head") + "Cute Redhead" "Oh my..." + + lun "I'm doing what you asked, sir." ("clench", "base", "base", "mid") + + gen "I told you to take off that stupid head of yours--" ("base", xpos="far_left", ypos="head") + gen "No. Wait. You're confusing me again..." ("angry", xpos="far_left", ypos="head") + gen "What I meant to say is, could you kindly take off that lion costume of yours... please..." ("base", xpos="far_left", ypos="head") + + lun "Oh, right, no problem! You could've just said so from the start, professor!" ("grin", "base", "base", "mid") + + gen "*sigh*..." ("base", xpos="far_left", ypos="head") + + #Luna puts trousers back on + $ luna.wear("bottom") + with d3 + + pause 0.5 + + $ luna.strip("accessory") + with d3 + + pause 0.5 + + call nar(">Glancing up at Cho, you see her looking towards the commentator booth.") + gen "I hope she didn't see you..." ("base", xpos="far_left", ypos="head") + lun "Who?" ("soft", "base", "base", "up") + gen "It doesn't matter, I'll be heading back now." ("base", xpos="far_left", ypos="head") + lun "Oh, okay!" ("base", "base", "base", "mid") + gen "(I hope Cho doesn't think that I left the pitch...)" ("base", xpos="far_left", ypos="head") + + #Genie chibi goes to the back of the seats + lun "Bye then, Professor!" ("smile", "base", "base", "mid") + + hide luna_main + hide screen bld1 + with d3 + + $ renpy.sound.play("sounds/run_02.ogg") + call gen_chibi("hide") + with d3 + pause 1.0 + + lun "Hmm... He never said I cannot put it back on..." ("open", "base", "base", "down", trans=d8) + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.wear("all") + with d3 + + pause 1.0 + + #Genie chibi disappears + "Hermione" "{{Gryffindor scores another goal!}" #text larger + + + #Crowd cheer + $ renpy.sound.play("sounds/crowd_cheer.ogg") + lun "Yaaaay!" ("smile", "base", "base", "stare") # Happy, eyes closed + hide luna_main + hide screen bld1 + with d3 + + call room("quidditch_stands") + call quidditch_stands(weather="sun_low", crowd=crowd_full) + call sna_chibi("stand", 150, 290, flip=True) + call ton_chibi("stand", 130, 310, flip=True) + call her_chibi("stand", 300, 400, flip=True) + hide image redhead + show screen blkfade + with ComposeTransition(pushright, before=fadeleft) + hide screen blkfade + with ComposeTransition(pushright, after=fadeleft) + + # Camera transitions back to commentator booth + + #Tonks and Snape are talking before genie arrives + sna "--And that's how I invented a potion for treating genital warts." ("snape_37", trans=d3) + ton "Fascinating... Truly..." ("open", "narrow", "base", "R", trans=d3) + + $ renpy.sound.play("sounds/run_02.ogg") + pause 1.5 + + call gen_chibi("stand", 168, 326, flip=True) + with d3 + + gen "*Heavy panting*" ("base", xpos="far_left", ypos="head") + ton "Thank Merlin..." ("disgust", "base", "base", "mid") + gen "I'll never look at staircases the same way..." ("base", xpos="far_left", ypos="head") + sna "There he is." ("snape_02") + ton "What was that all about?" ("soft", "base", "raised", "mid") + gen "*Err*...{w=0.4} Don't worry about it..." ("base", xpos="far_left", ypos="head") + gen "How's the game going?" ("base", xpos="far_left", ypos="head") + ton "Gryffindor scored another goal." ("open", "base", "base", "mid") + ">You look up at Cho who is staring blankly into the distance." + gen "What's she doing?" ("base", xpos="far_left", ypos="head") + sna "Finally..." ("snape_47") + gen "*Huh*?" ("base", xpos="far_left", ypos="head") + ">Cho's expression changes abruptly into one of determination as she starts attempting to catch the attention of the boys on the Gryffindor team." + + #At this point, Cho has taken the luck potion and its effect is starting to kick off. Snape's "finally" comment confirms that something happened. His smugness goes up from this point as in his mind it doesn't matter who wins if Cho is caught cheating since the victory would go to Gryffindor. + + her "Davies taking a nasty bludger--{w=0.2}{nw}" ("open", "base", "base", "up", trans=d3) + her "Davies taking a nasty bludger--{fast} Hold on... what is--" ("clench", "base", "base", "up") + # Cuts to Cho who has taken off Gloves, goggles and leggings. Still wearing top, skirt, bra + # Cho takes her top off + + # Transition to Cho on her broom + $ cho.equip(cho_outfit_quidditch_gryffindor) + $ cho.set_pose("broom") + $ cho.animation = [sprite_fly_idle] + + call cho_chibi("fly", 1100, 140) + call cho_walk(530, 360, speed=2) + pause 1 + + call cho_chibi("fly", flip=True) + + play bg_sounds "sounds/crowd_very_low.ogg" fadein 10 + cho "That's right boys, look this way!" ("smile", "narrow", "base", "L", xpos=580, ypos=-200, flip=True, trans=d3) + + $ cho.strip("top") + with d3 + + pause .8 + + her "Chang, what are you doing!?" ("disgust", "wide", "angry", "L", trans=d3) + cho "What does it look like I'm doing?" ("grin", "narrow", "base", "R") + + $ cho.strip("accessory") + with d3 + + pause .8 + + her "You're--" ("mad", "wide", "angry", "L", cheeks="blush") + + if cho_hermione_affection == "hermione": # If Genie told Cho that Hermione likes her. + cho "Do you like the view?" ("smile", "narrow", "base", "R", cheeks="blush") + her "What are you--" ("angry", "happy", "angry", "L", cheeks="blush") + cho "Shush. You don't have to answer that, I already know the truth." ("base", "narrow", "base", "R", cheeks="blush") + + elif cho_hermione_affection == "cho": # If Genie told Cho that she likes Hermione. + her "Why are you taking your clothes off?!" ("angry", "wide", "angry", "L", cheeks="blush") + cho "..." ("horny", "narrow", "base", "L", cheeks="heavy_blush") + cho "Do you... like the view?" ("soft", "narrow", "base", "R", cheeks="heavy_blush") + her "Do {i}I{/i} What?!" ("angry", "happy", "base", "L", cheeks="blush") + cho "Don't be shy now, you can look as much as you want." ("base", "narrow", "base", "R", cheeks="heavy_blush") + + else: # If genie was clueless (generic response) + # Note: We're using 'else' check here in case player uses cheats. It is equivalent of `cho_hermione_affection == "neither"`. + cho "I'm taking my clothes off!" ("grin", "narrow", "base", "R") + + her "Why are you doing this?" ("mad", "happy", "angry", "L", cheeks="blush") + cho "Why?" ("smile", "narrow", "raised", "R", cheeks="blush") + cho "Well I thought I'd give your friends a bit of a show." ("grin", "narrow", "base", "R", cheeks="blush") + cho "Don't you think they deserve to look at something nice for once?" ("base", "narrow", "raised", "R", cheeks="blush") + her "What?!" ("upset", "wide", "base", "L", cheeks="blush") + + gen "Oh no she didn't..." ("grin", xpos="far_left", ypos="head") + + "Harry" "*drools audibly*" # el yu el + "Ron" "Hubba hubba!" # el yu el bis + + cho "It appears looks beats brains yet again." ("base", "narrow", "base", "L", cheeks="blush") + her "I--{w=0.4} I--" ("angry", "narrow", "worried", "L", cheeks="blush") + + $ renpy.sound.play("sounds/crowd_cheer.ogg") + ">Hermione's gaze moves to her friends as a cheer from the Ravenclaw stands erupts as they score a goal." + + her "Guys! Ignore that floozy and focus on the game!" ("scream", "happyCl", "angry", "mid", cheeks="blush", trans=d3) + cho "" ("smile", "narrow", "base", "L", cheeks="blush") + ">Cho smirks as even the Gryffindor girls stop to ogle at her." + + her "S--{w=0.2} Stop that! Stop staring at her." ("mad", "squint", "worried", "L", cheeks="blush") + + hide hermione_main + with d3 + + gen "She's got their team under a spell." ("base", xpos="far_left", ypos="head") + + + ton "*Mmm*... Me too..." ("horny", "narrow", "base", "mid", hair="horny") + + sna "Now this is a plan I can get behind." ("snape_02") + gen "Hah, yeah this was my plan alright..." ("base", xpos="far_left", ypos="head") + ton "But perhaps we should call for a--" ("soft", "base", "base", "R", cheeks="blush") + her "{size=+7}Boys!{/size}" with hpunch + ">The boys quickly snap out of it and move their gaze towards the commentator booth." + + $ hermione.strip("top") + + #Gasp from crowd + $ renpy.sound.play("sounds/crowd_gasp.ogg") + her "" ("base", "closed", "angry", "mid", cheeks="blush", trans=d3) + cho "" ("clench", "wide", "base", "R", cheeks="heavy_blush") + call ctc + + her "I believe I told you to stop looking at her!" ("grin", "narrow", "base", "L", cheeks="blush") + gen "Miss Granger!" ("base", xpos="far_left", ypos="head") + ton "Oh dear..." ("soft", "base", "base", "mid", hair="horny", cheeks="heavy_blush") + her "You boys are despicable!" ("open", "closed", "angry", "mid", cheeks="blush") + her "Why would you pay any attention towards that walking stick when the girls of your own house are a hundred times more appealing!" ("disgust", "squint", "angry", "L", cheeks="blush") + cho "*inaudible noise*" ("disgust", "narrow", "angry", "R", cheeks="heavy_blush") + her "What was that?" ("grin", "squint", "base", "L", cheeks="blush") + her "Sorry I can't hear you over the wind... You'll have to speak up." ("grin", "narrow", "base", "L", cheeks="blush") + + $ cho.strip("bra") + with d3 + + #Gasp from crowd + $ renpy.sound.play("sounds/crowd_gasp.ogg") + cho "" ("smile", "narrow", "angry", "R", cheeks="heavy_blush") + her "" ("clench", "wide", "base", "L", cheeks="blush") + ">Staring daggers at Hermione, Cho takes off her bra and drops it to the ground." + + gen "Now that's my attention-seeker!" ("grin", xpos="far_left", ypos="head") + #Crowd stomping + $ renpy.sound.play("sounds/crowd_stomping.ogg") + qcr "Cho! Cho! Cho!" + + ton "*Hmm*... We should probably put a stop to this..." ("disgust", "base", "base", "mid", hair="horny", cheeks="blush") + her "*Grr*!!!" ("clench", "wide", "angry", "stare_soft", cheeks="blush") + ton "*Ehm*...{w=0.4} Why don't you do it Severus?" ("mad", "narrow", "shocked", "R", hair="upset") + + #Hermione takes off bra + $ hermione.strip("bra") + with d3 + her "" ("crooked_smile", "squint", "base", "stare", cheeks="blush") + cho "" ("soft", "narrow", "angry", "R", cheeks="heavy_blush") + + pause .8 + $ renpy.sound.play("sounds/crowd_cheer.ogg") + + qcr "Hermione!{w=0.4} Hermione!{w=0.4} Hermione!" + her "That's right! She doesn't have anything that I don't!" ("grin", "closed", "angry", "mid", cheeks="blush") + #whistle (catcalling) + $ renpy.sound.play("sounds/wolf_whistle2.ogg") + femv "Show us your panties!" + cho "" ("horny", "narrow", "angry", "R", cheeks="heavy_blush") + qcr "Panties!{w=0.4} Panties!{w=0.4} Panties!" + cho "" ("annoyed", "base", "angry", "L", cheeks="heavy_blush") + ">The focus on the game, now completely lost, has everyone's eyes moving back and forth between Hermione and Cho, waiting with baited breath to see who will push things further." + cho "" ("smile", "base", "base", "L", cheeks="heavy_blush") + + if her_reputation < 3: + her "P--{w=0.2} Panties?" ("angry", "squint", "worried", "stare", cheeks="blush") #happycl + qcr "Panties!{w=0.4} Panties!{w=0.4} Panties!" + + hide cho_main + with d3 + call cho_walk(1100, 140, speed=2) + + her "I--{w=0.2} I..." ("disgust", "happyCl", "base", "mid", cheeks="blush", trans=d3) #happycl + qcr "Take it off!{w=0.4} Take it off!" + her "I can't!" ("disgust", "squint", "base", "stare", cheeks="blush") #Open eyes #stare + qcr "Boo!" + her "That's right, Gryffindors will never go as low as--" ("angry", "narrow", "angry", "L", cheeks="blush") + else: + her "Can't get enough of me can you?" ("grin", "closed", "base", "mid", cheeks="blush") + + hide cho_main + with d3 + call cho_walk(1100, 140, speed=2) + + her "Of course, now when you've seen the real deal why would you ever look at someone like--" ("crooked_smile", "narrow", "base", "L", cheeks="blush", trans=d3) + + stop bg_sounds fadeout 3.0 + + her "--Cho?!" ("clench", "wide", "base", "L", cheeks="blush") + her "Harry, she's going for the snitch!" ("scream", "base", "base", "L") + "Harry" "*keeps drooling*" + her "Heaven's sake!" ("disgust", "happy", "annoyed", "L", cheeks="blush") + + #Hermione puts clothes back on + $ hermione.wear("all") + with d3 + + her "Go after her!" ("scream", "base", "angry", "L") + ">Snapping out of it, Harry speeds off after Cho who is now darting between the towers chasing the snitch." + + # Note: We are using double fade effect to hide janky static-to-animation change + $ camera.set_imagepath("cho_quidditch2/") + $ camera.set_overlay(None) + $ camera.set(image="CG quidditch cho_sitting entry", zoom=1.0, pos=(0, 0), initialize=True) + + show screen animatedCG + hide snape_main + hide hermione_main + hide tonks_main + $ cho.strip("panties", "bottom") + with fade + + ">All of a sudden she shoots up after it into the sky, with Harry's head at her heels." + her "Faster, Harry!" + + call ctc + + show image "cho_quidditch2 slide cho_siting entry" zorder 17 as cg2 + with dissolve + + ">Cho speeds up even more, her skirt clinging on for dear life." + ">Harry still on her tail is struggling, hard and is barely keeping up with her." + + call ctc + + hide image cg2 + with dissolve + + her "What are you doing?! Don't you have a firebolt?" + sna "Yes, how is she--" + gen "The broom, she's become one with the broom!" + sna "She's what?" + + show image "cho_quidditch2 slide cho_siting" zorder 17 as cg2 + with dissolve + + pause 0.5 + + # Wet sound? + + $ camera.set(zoom=1.0, pos=(0, 0), image="CG quidditch cho_standing", initialize=True, trans=d3) + show image "cho_quidditch2 slide cho_standing" zorder 17 as cg2 with dissolve + + call ctc + + her "Is that a dildo?!!" + ton "Oh my!" + sna "..." + + ">Cho's secret now revealed--" + sna "*Cough*... {i}Deletrius{/i}... *Cough*..." + call play_sound("magic") + + show image "cho_quidditch2 slide cho_standing_panties" zorder 17 as cg2 with flashbulb + + call ctc + + $ camera.set(image="CG quidditch cho_standing_panties", trans=d3) + + ton "Severus!" + sna "What? I just coughed!" + + hide image cg2 + with dissolve + + ">Cho, whose panties are now revealed to the crowd speeds up even further, edging ever so closer towards the snitch." + qcr "Panties! Panties! Panties!" + ton "*Cough*... {i}Ventus{/i}... *Cough*..." + call play_sound("magic") + $ camera.set(image="CG quidditch cho_standing_panties_down", trans=flashbulb) + call nar(">Suddenly, a strong gust of wind grabs hold of her panties and they slide down to her knees.") + + call ctc + + show image "cho_quidditch2 slide cho_standing_panties_down" zorder 17 as cg2 + with dissolve + + call ctc + + sna "Tonks!" + ton "Won't you look at that? I think I got your same cough!" + + call ctc + + $ camera.set(image="CG quidditch cho_standing_smile") + hide image cg2 + with dissolve + + ">The focus now shifted from the snitch to Cho's wet snatch leaves no doubts just how much she's enjoying this." + her "She's getting off doing this!?" + qcr "Slut! Slut! Slut!" + gen "Go on, girl... Don't lose focus now..." + ">Cho, basking in the attention, loses a bit of speed and Harry begins catching up on her." + her "You silly slut, you're nothing compared to a real seeker like Harry!" + her "The only thing you're good for is showing off your body!" + + ">All of a sudden, Cho convulses and some translucent fluid escapes her nether." + + #Cho cums from Hermione insulting her and it flies off the screen into Harry's face + + $ renpy.sound.play("sounds/slick_01.ogg") + + $ camera.set(image="CG quidditch cho_standing_ahegao", trans=kissiris) + + pause .6 + + $ camera.set(image="CG quidditch cho_standing_smile", trans=kissiris) + + her "Harry!" + + $ renpy.sound.play("sounds/crash.ogg") + ">As if hit by some unknown force,{w=1.0} Harry suddenly spins off,{nw}{w=0.5}" + ">As if hit by some unknown force, Harry suddenly spins off,{fast} and crashes into one of the confectionery carts." with vpunch + + $ renpy.sound.play("sounds/crowd_ouch.ogg") + qcr "Ouch!" + ">Cho's mind, now clearer than ever, gets a sudden burst of speed and stretches out her fingers towards the snitch." + gen "That's right, fuck you Snape!!" + #Cho catches the snitch + + $ camera.set(image="CG quidditch cho_standing_snitch", trans=d3) + + #Crowd cheers + $ renpy.sound.play("sounds/crowd_cheer.ogg") + + pause 5.0 + + # She mad bro + $ renpy.sound.play("sounds/microphone_feedback.ogg") + her "{size=+15}No!!!{/size}" + gen "Hell yes!" + + #Cho sits back down on the dildo, snitch in hand + $ camera.set(image="CG quidditch cho_sitting_snitch", trans=d3) + + pause 1.0 + + show image "cho_quidditch2 slide cho_sitting_snitch" zorder 17 as cg2 + with dissolve + + call ctc + + her "How?!?" + #CG end here + + hide image cg2 + hide screen animatedCG + with fade + + $ cho.equip(choq_panties_in_hand) + + call play_music("stop") + play bg_sounds "sounds/crowd_low.ogg" fadein 5 + + sna "Well I'll be damned..." ("snape_01", trans=d3) #doesn't look too bothered + her "She...{w=0.4} She cheated!" ("clench", "wide", "base", "stare", cheeks="blush", trans=d3) + #TODO Cho flies up, panties in her hand + + call cho_chibi("fly", 1100, 140) + call cho_walk(530, 360, speed=2) + pause 1.5 + + cho "You mad, Granger?" ("grin", "narrow", "base", "L", cheeks="blush", flip=False, trans=d3) + her "You did something to Harry!" ("mad", "squint", "angry", "L", cheeks="blush", trans=d3) + cho "I did? You sure he wasn't just blinded by my charm?" ("soft", "narrow", "raised", "L", cheeks="blush") + her "A charm! You must've cast some spell on him!" ("angry", "wide", "base", "stare") + cho "With what wand exactly?" ("smile", "narrow", "base", "L", cheeks="blush") + cho "The only stiff object here is placed between my legs and that's not a {i}magic wand{/i}." ("grin", "narrow", "base", "L", cheeks="heavy_blush") + cho "Although I don't expect you to know the difference between a dildo and--" ("crooked_smile", "narrow", "base", "R", cheeks="heavy_blush") + her "You...{w=0.4} You..." ("mad", "wide", "angry", "L", cheeks="blush") + gen "Now-now, don't be a sore loser, Miss Granger... There's no way she'd be able to keep a wand on her." ("base", xpos="far_left", ypos="head") + her "She...{w=0.4} She..." ("angry", "wide", "angry", "stare", cheeks="blush") + gen "So unless you want us to do a cavity search..." ("base", xpos="far_left", ypos="head") + cho "Sure, I don't mind." ("base", "narrow", "base", "mid", cheeks="heavy_blush") + her "You... {w=0.4}You slut!" ("scream", "wide", "angry", "L", cheeks="blush") # angry tears + cho "Sorry, what was that?" ("soft", "narrow", "base", "L", cheeks="heavy_blush") + cho "I got a bit distracted seeing your friend get carried on a stretcher to the hospital wing..." ("smile", "narrow", "base", "L", cheeks="heavy_blush") + her "*Grr*..." ("angry", "squint", "angry", "R", cheeks="blush") + cho "Here you go Granger, something for you to remember your loss..." ("smile", "narrow", "base", "L", cheeks="blush") + + + # Cho panties appear on Hermione's head as Cho throws them at her + $ renpy.sound.play("sounds/woosh.ogg") + $ cho.unequip("accessory2") # Panties + pause .8 + $ renpy.sound.play("sounds/squelch.ogg") + $ hermione.equip(herq_panties_on_head) + with d3 + + her "Cho!" ("angry", "wide", "annoyed", "up", cheeks="blush") + cho "Later Granger!" ("smile", "wink", "base", "mid", cheeks="blush") + + hide cho_main + with d5 + + $ renpy.sound.play("sounds/crowd_cheer.ogg") + call cho_walk(1100, 140, speed=2) + + ton "*giggles*" ("crooked_smile", "narrow", "raised", "L", trans=d3) + + call her_chibi(flip=False) + with d3 + + her "Professor!" ("clench", "base", "angry", "L", cheeks="blush", flip=False, trans=d3) + ton "Sorry..." ("soft", "base", "base", "down") + qcr "Cho! Cho! Cho!" + her "*Grr*!" ("angry", "base", "angry", "R", cheeks="blush") + + call her_walk(213, 414) + + sna "I must say that I am truly sorry Gryffindor has lost." ("snape_04", trans=d3) + sna "Truly..." ("snape_06", trans=d3) + her "*Hmph*!" ("upset", "closed", "angry", "mid", cheeks="blush", trans=d3) + + # Hermione chibi walks up stairs next to Tonks + # Hermione removes panties off head. + $ hermione.unequip("headgear") + + show image "panties_on_the_ground" as panties zorder 2: + pos (268, 380) + + with d3 + + hide hermione_main + call her_chibi("hide") + with d3 + + pause 1.0 + + sna "What's her problem?" ("snape_05", trans=d3) + gen "I think your sincerity got lost somewhere in translation." ("base", xpos="far_left", ypos="head") + gen "Speaking of losses..." ("base", xpos="far_left", ypos="head") + gen "Ravenclaw won the game, where's my money?" ("base", xpos="far_left", ypos="head") + sna "Can't even wait one minute before gloating I see..." ("snape_03") + gen "Show me the money!" ("grin", xpos="far_left", ypos="head") + sna "Very well...{w=1.0} I shall fetch your winnings and deliver it to your office shortly." ("snape_01") + gen "Hell yes!" ("grin", xpos="far_left", ypos="head") + sna "..." ("snape_37") # Smug + + hide snape_main + call sna_chibi("hide") + with d3 + + gen "I better head back as well then." ("base", xpos="far_left", ypos="head") + + call gen_walk(path=[(135, 360), (213, 414)]) + call gen_chibi(flip=False) + with d3 + call gen_chibi("stand_alt", flip=False) + with d3 + + + gen "Drinks on me?" ("base", xpos="far_left", ypos="head") + ton "*Hmm*... Why not... I could do with something to take the edge off things." ("base", "narrow", "raised", "R") + + call gen_chibi("hide") + hide screen bld1 + with d3 + + pause 0.5 + + call ton_walk(path=[(100, 334), (194, 400)]) + + ton "Nice, free panties." ("horny", "base", "base", "down", hair="horny", trans=d3) + + $ renpy.sound.play("sounds/cloth_sound2.ogg") + hide image panties + with d3 + + pause 0.8 + + ton "*Hmm*...{w=0.1} Someone should probably pick up the rest of her clothes..." ("soft", "base", "base", "R", hair="horny", trans=d3) + ton "{w=0.8}{nw}" ("annoyed", "base", "base", "L", hair="horny") + ton "{w=0.8}{nw}" ("annoyed", "base", "base", "R", hair="horny") + ton "Nobody?{w=0.8}{nw}" ("annoyed", "base", "base", "R", hair="horny") + ton "Nobody?{fast} Oh fine, I suppose I'll do it then..." ("base", "base", "base", "R", hair="horny") + ton "(Before Madam Hooch gets there first.)" ("soft", "base", "base", "R", hair="horny") + + hide tonks_main + call ton_chibi("hide") + with d3 + + pause 1.0 + + call cho_chibi("fly", 1100, 140) + call cho_walk(530, 360, speed=2) + pause 1.5 + + cho "Hey Professor--" ("grin", "closed", "base", "mid", cheeks="blush", flip=False, trans=d3) + cho ".......?" ("soft", "base", "base", "L", cheeks="blush") + cho "(*Hmm*... Did he already go back to his office?)" ("soft", "narrow", "base", "L", cheeks="blush") + cho "(I better catch up with him...)" ("soft", "base", "base", "L") + cho "(Although...)" ("base", "narrow", "base", "R", cheeks="blush") + cho "(A few victory laps around the pitch wouldn't hurt.)" ("smile", "narrow", "base", "R", cheeks="blush") # horny + + $ renpy.sound.play("sounds/crowd_cheer.ogg") + stop bg_sounds fadeout 2.0 + call cho_walk(1100, 140, speed=2) + + #Reset z.order + $ snape_chibi.zorder = 3 + $ tonks_chibi.zorder = 3 + $ hermione_chibi.zorder = 3 + $ genie_chibi.zorder = 3 + + + + jump gryffindor_match_return + +#Event after game where Cho, Tonks, Snape and Hooch arrive and Cho is accused of cheating. Cho is hidden under the desk as she had arrived first and Tonks tells her to hide. During the event once the cheating is brought up, Cho starts sucking genie off, genie assuming she's doing it so that he'd save her. Genie saves her ass which leads to a sex event after where genie is confused as she doesn't have a reason to do it. The potion is meant to give her the best day ever after all, and that's what she truly wants. + +label gryffindor_match_return: + + #Setup + $ tonks.zorder = 18 + $ hooch.zorder = 17 + $ snape_zorder = 16 + $ cho.zorder = 16 #Shows/Hides Cho doll on CG + + $ snape_chibi.zorder = 4 + + show screen blkfade + with d5 + + pause 1 + + $ cho.set_pose(None) + $ cho.animation = [] + $ cho.strip("all") + + call play_music("stop") + + call room("main_room") + call gen_chibi("hide") + + hide screen blkfade + with d5 + + call play_sound("door") + call gen_chibi("stand", "door", "base", flip=False) + with d3 + pause 0.8 + + #Genie walks into the office + gen "*Hmm*... Sure feels weird now that it's over..." ("base", xpos="far_left", ypos="head") + gen "I suppose that's the life of a coach once they're done coaching..." ("base", xpos="far_left", ypos="head") + gen "Back in the chair we go." ("base", xpos="far_left", ypos="head") + + #Walks and sits down at his desk. + call gen_walk("desk") + call gen_chibi("sit_behind_desk") + with d3 + + pause 0.5 + + gen "I wonder what chairs think about all day...{w=0.8}\n\"Oh, here comes another asshole\"." ("base", xpos="far_left", ypos="head") + + pause 0.3 + + #Cho chibi appears naked next to the window turned to right + + "Voice outside the window" "Stay... [cho_broom_name]." + #Cho walks to the front of the desk + + gen "[cho_broom_name]? Isn't that--" ("base", xpos="far_left", ypos="head") + + call cho_chibi("stand", xpos=441, ypos=400, flip=False) + call cho_walk("desk", "base") + + with d3 + + pause 0.5 + call play_music("cho") + cho "Sorry for the wait, I just had to take a few victory laps." ("smile", "narrow", "base", "mid", xpos="mid", ypos="base", trans=d3) + + gen "!!!" ("angry", xpos="far_left", ypos="head") + + cho "Who would've thought flying would{nw}" ("smile", "wink", "base", "mid", cheeks="blush") + cho "Who would've thought flying would{fast} be so freeing without the restrictions of clothes." ("base", "base", "base", "mid", cheeks="blush") + + gen "(Damn! What a view!)" ("grin", xpos="far_left", ypos="head") + gen "I'm glad everything turned out the way you imagined it." ("grin", xpos="far_left", ypos="head") + cho "" ("base", "narrow", "base", "downR", cheeks="heavy_blush") + call ctc + cho "" ("soft", "narrow", "base", "R", cheeks="heavy_blush") #blush + call ctc + + # Cho Chibi rushes up to genie's side + call cho_walk(path=[(390, 470), (240, 460)], speed=1.5) + call cho_chibi(flip=True) + with d3 + + #Kisses sound, pink visual effect + call play_sound("kiss") + with kissiris + + gen "What was that for?" ("grin", xpos="far_left", ypos="head") + cho "For all the--" ("smile", "narrow", "base", "L", cheeks="heavy_blush", xpos="left", ypos="base", flip=True, trans=d3) + + #Tonks enters + call play_music("stop") + $ renpy.sound.play("sounds/door_down.ogg") + call ton_chibi("stand","door","base") + with hpunch + + cho "" ("clench", "wide", "base", "mid", cheeks="heavy_blush") #wide eyed + + $ renpy.music.play("music/Under-the-Radar by PhobyAk.ogg") + + + ton "We've got a situation--{w=0.2}" ("mad", "base", "base", "R", hair="upset", xpos="base", ypos="base") + ton "Cho?!" ("clench", "wide", "shocked", "L", hair="horny", cheeks="blush") + cho "Professor?!" ("angry", "wide", "base", "L", cheeks="heavy_blush") + gen "(For fucks sake... {i}Always something{/i}...)" ("angry", xpos="far_left", ypos="head") + ton "Shit... You have to hide, now!" ("mad", "base", "base", "R") + cho "But why--" ("angry", "narrow", "base", "L", cheeks="heavy_blush") + ton "Just do it, quick!" ("scream", "base", "shocked", "L") + + show screen blkfade + with d5 + + call cho_chibi("hide") + call ton_chibi(xpos="mid", ypos="420") + #Tonks walks to desk (closest to window) + + ">In an act of desperation, Cho decides to hide under your desk." + + hide cho_main + hide tonks_main + hide screen blkfade + with d5 + + gen "Tonks, explain yourself!" ("angry", xpos="far_left", ypos="head") + + call sna_walk(action="enter", xpos="400", ypos="460") + + #Snape enters office and walks to desk (left) + sna "Headmaster..." ("snape_01", trans=d3, xpos="200", ypos="base") + gen "Severus! I should've known!" ("grin", xpos="far_left", ypos="head") + gen "Come to deliver my winnings I presume?" ("grin", xpos="far_left", ypos="head") + sna "Not exactly..." ("snape_37") #Smugface + + hide snape_main + hide screen bld1 + with d3 + + call play_sound("door") + $ hooch_chibi.move(path=[(790, 450), (610, 445)]) + pause 1.0 + + #Hooch enters and walks up behind Snape and Tonks + hoo "You can't just walk in like that without knocking Severus, show the headmaster some respect." ("angry", "shocked", "base", "mid", xpos="700", ypos="base", flip=False, trans=d3) + sna "..." ("snape_35", trans=d3) + hoo "Sorry for arriving unannounced like this, Headmaster." ("normal", "base", "base", "mid") + gen "No worries at all, Miss Hooch... Seeing your face always puts a smile on my face." ("base", xpos="far_left", ypos="head") + hoo "Why thank you Professor, how nice." ("base", "shocked", "shocked", "mid") + sna "Yes, always such a {i}nice guy{/i}..." ("snape_31") + ton "*Ahem*...{w=0.4}{nw}" ("soft", "base", "base", "R", xpos=460, ypos="base", trans=d3) + ton "*Ahem*...{fast}{w=0.4}{nw}" ("soft", "base", "base", "L") + ton "*Ahem*...{fast}" ("soft", "base", "base", "R") + sna "" ("snape_39") + gen "So, what can I do you for? It's not often that three teachers enter my office at the same time." ("base", xpos="far_left", ypos="head") + hoo "Yes, unfortunately it can't be helped, a very serious matter regarding the finals has come up." ("normal", "base", "shocked", "mid") + gen "Oh?" ("base", xpos="far_left", ypos="head") + ton "" ("normal", "base", "base", "mid", xpos=460, ypos="base") + gen "That Potter boy didn't die did he?" ("base", xpos="far_left", ypos="head") + hoo "Who?" ("open", "base", "raised", "mid") + ton "The Gryffindor seeker who crashed into one of the confectionery carts." ("open", "base", "base", "R") + hoo "He did? I must have missed that." ("open", "shocked", "worried", "R", cheeks="blush") + ton "" ("base", "base", "base", "R") + gen "Figures..." ("base", xpos="far_left", ypos="head") + sna "The boy will live...{nw}" ("snape_01") + ton "" ("normal", "base", "base", "L") + hoo "" ("normal", "shocked", "base", "L") + sna "The boy will live...{fast} Albeit some permanent scarring across his forehead." ("snape_37") + gen "The boy who lived..." ("base", xpos="far_left", ypos="head") + gen "So what's this all about then?" ("base", xpos="far_left", ypos="head") + hoo "It's--" ("open", "shocked", "shocked", "mid") + sna "The matter at hand{nw}" ("snape_01") + hoo "" ("normal", "base", "angry", "L") + ton "" ("normal", "narrow", "base", "mid") + sna "The matter at hand{fast} is in regards to the Ravenclaw girl...{w=0.4} Miss Chang." ("snape_01") + gen "Oh? There's not a rule against cumming--" ("base", xpos="far_left", ypos="head") + + #Thud sound + call play_sound("kick") + gen "*Hngh*!" ("angry", xpos="far_left", ypos="head") + gen "I mean...{w=0.4} Coming first?" ("base", xpos="far_left", ypos="head") + + sna "" ("snape_39") + hoo "Sorry?" ("open", "shocked", "raised", "mid") + gen "Nevermind...{w=0.4} So what about Miss Chang?" ("base", xpos="far_left", ypos="head") + hoo "Well... Some evidence has come forward, which suggests that Miss Chang was under the influence of a luck potion." ("open", "shocked", "base", "mid") + gen "Under the--" ("base", xpos="far_left", ypos="head") + + #Thud sound (Cho hits her head on the desk) + call play_sound("kick") + pause .6 + + gen "Desk!" ("angry", xpos="far_left", ypos="head") + gen "I mean... Ouch! I hit my knee on the desk!" ("angry", xpos="far_left", ypos="head") + gen "Hold on, did you say luck potion?" ("base", xpos="far_left", ypos="head") + sna "" ("snape_37") + ton "" ("normal", "base", "base", "R") + hoo "Yes, I came across an empty vial near some of the clothing she had discarded during the game." ("open", "shocked", "raised", "mid") + hoo "Professor Snape here insists that it's \"felix felicis\"." ("normal", "shocked", "base", "L") + ton "" ("normal", "base", "base", "L") + gen "{size=-4}So this was your plan...{/size}" ("base", xpos="far_left", ypos="head") #small text + sna "" ("snape_13") + gen "Performance enhancing drugs... Now that is some serious business." ("base", xpos="far_left", ypos="head") + sna "" ("snape_40") + ton "" ("normal", "narrow", "base", "mid") + hoo "Yes indeed..." ("base", "base", "base", "mid") + hoo "I'm sure you've heard the rumours about the Slytherin players using it during their match against Ravenclaw." ("open", "base", "base", "mid") + sna "Lies and slander is what it was." ("snape_09") + hoo "*Hmph*...{w=0.4} In any case--" ("normal", "shocked", "base", "R") + hoo "The usage of such things is considered cheating and is prohibited during organized sports and academic examinations." ("open", "narrow", "angry", "mid") + ton "" ("annoyed", "base", "base", "mid") + gen "So if this bottle is a luck potion, she'd get disqualified?" ("base", xpos="far_left", ypos="head") + sna "*snort*." ("snape_22") #smirk + hoo "Yes, although disqualification would be the least of her worries." ("open", "shocked", "angry", "mid") + gen "You're not saying..." ("base", xpos="far_left", ypos="head") + sna "" ("snape_37") #smirk + hoo "Indeed..." ("normal", "shocked", "worried", "down") + gen "Prison?" ("base", xpos="far_left", ypos="head") + + #Zipper sound/cloth sound + $ renpy.sound.play("sounds/zipper.ogg") + gen "...{w=0.8}{nw}" ("base", xpos="far_left", ypos="head") + gen "...{w=0.8}{nw}" ("angry", xpos="far_left", ypos="head") + + + hoo "Prison? No, not that, thank heavens." ("open", "shocked", "shocked", "mid") + hoo "But she could kiss getting into any sort of professional league goodbye." ("open", "shocked", "base", "down") + gen "Kiss--" ("base", xpos="far_left", ypos="head") + + #kiss sound, pink visual effect as Cho kisses genie's dick + call play_sound("kiss") + hide snape_main + hide tonks_main + hide hooch_main + with kissiris + + + gen "*Hngh*--" ("angry", xpos="far_left", ypos="head") + + #Cut to CG + show image "cho_under_desk_idle_snape_no_spit" as cg zorder 16 + with fade + call ctc + + ton "Professor?" ("soft", "narrow", "raised", "mid", ypos="head") + + $ renpy.sound.play("sounds/spit.ogg") + show image "cho_under_desk_idle_snape" as cg + + gen "..." ("angry", xpos="far_left", ypos="head") + ton "Are you alright?" ("soft", "base", "raised", "mid") + + #Cho's head starts moving + play bg_sounds "sounds/slickloop.ogg" fadein 2 + show image "cho_under_desk_blowjob" as cg + with d3 + + cho "*Slurp*...{w=0.4} *Gobble*...{w=0.4} *Slurp*" ("open_wide_tongue", "narrow", "base", "up", cheeks="heavy_blush", xpos="left", ypos="head", flip=False, trans=d3) + gen "Oh, yes!{w=0.4} *Ahem*--{w=0.4} Sorry, I was just thinking how terrible that would be." ("grin", xpos="far_left", ypos="head") + gen "(What the hell does she think she's doing!?)" ("angry", xpos="far_left", ypos="head") + gen "Don't--{w=0.2} *Hngh*...{w=0.4} Don't worry about me, I'll be fine. Just taken by surprise by this whole ordeal, that's...{w=0.4} That's it." ("base", xpos="far_left", ypos="head") + cho "*Gobble*...{w=0.4} *Gobble*...{w=0.4} *Slurp*" ("open_wide_tongue", "closed", "base", "up", cheeks="heavy_blush") + hoo "Are you sure? Your face does look a bit white, sir." ("open", "shocked", "worried", "L", ypos="head") + gen "(With all my blood flow being redirected that's not surprising.)" ("base", xpos="far_left", ypos="head") + gen "I'll...{w=0.4} *Ah*...{w=0.4} I'll be fine." ("base", xpos="far_left", ypos="head") + cho "*Slurp*... {w=0.4}*Slurp*...{w=0.4} *Slurp*" ("open_wide_tongue", "closed", "base", "up", cheeks="heavy_blush") + gen "So... Regarding this--{w=0.2} *Ah*...{w=0.4}{nw}" ("base", xpos="far_left", ypos="head") + gen "So... Regarding this-- *Ah*...{fast} Fuck..." ("grin", xpos="far_left", ypos="head") + gen "Luck!{w} Regarding this Luck potion!" ("angry", xpos="far_left", ypos="head") + gen "I find it seriously hard...{w=0.4} *Ngh*...{w=0.4} To believe she'd ever gobble, *Err*...{w=0.4} Drink something like that with such a high risk of...{w=0.4} *Hngh*...{w=0.4} Getting caught." ("base", xpos="far_left", ypos="head") + cho "*Gobble*...{w=0.4} *Slurp*...{w=0.4} *Slurp*" ("open_wide_tongue", "closed", "base", "up", cheeks="heavy_blush") + gen "You're certain it's a luck potion and not...{w=0.4} *Ah*...{w=0.4} {i}Gatorade{/i}, or something?" ("base", xpos="far_left", ypos="head") + hoo "Gator aid?" ("open", "base", "raised", "mid") + hoo "That's not some performance enhancing drug is it?" ("open", "narrow", "worried", "mid") + gen "Nah, it's just a sports--" ("base", xpos="far_left", ypos="head") + + play bg_sounds "sounds/slickloopfast.ogg" + show image "cho_under_desk_blowjob_fast" as cg + + cho "*Gobble*...{w=0.2} *Slurp*...{w=0.2} *Gobble*" ("open_wide_tongue", "happyCl", "base", "mid", cheeks="heavy_blush") + gen "*Ngh*...{w=0.4} sports drink." ("angry", xpos="far_left", ypos="head") + hoo "I see." ("open", "base", "base", "mid") + gen "Electrobytes or whatchamacallit." ("base", xpos="far_left", ypos="head") + hoo "Well I suppose it could be, I can't say I've seen what a Gator Aid container looks like." ("normal", "narrow", "base", "downL") + sna "Now hold on just one second!" ("snape_10", ypos="head") + sna "Did you not see how fast she was going on that broom?" ("snape_32") + sna "It has to have been a luck potion!" ("snape_32") + sna "Such precise movements should be impossible on anything but a firebolt!" ("snape_17") + hoo "I thought you tested the remaining drops in the vial, Severus." ("open", "shocked", "shocked", "mid") + sna "*Err*... Not yet but--" ("snape_14") + hoo "Are these accusations all just assumptions based on her athletic abilities?" ("angry", "narrow", "angry", "mid") + sna "No, of course not!" ("snape_18") + sna "Hand me the vial and I'll inspect it right now!" ("snape_17") + gen "..." ("angry", xpos="far_left", ypos="head") + ton "*Ahem*!" ("open", "narrow", "annoyed", "mid") #Tonks to the rescue + ton "I may be wrong here but don't you happen to have a stake in this game Severus?" ("open", "closed", "annoyed", "mid") + sna "W--{w=0.2} What?" ("snape_36") + gen "Oh yes, the bet!" ("grin", xpos="far_left", ypos="head") + hoo "Bet?" ("open", "narrow", "base", "mid") + + #Cho stops moving + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_pop.ogg") + show image "cho_under_desk_idle_snape" as cg + + cho "*Pwah*." ("open_tongue", "narrow", "base", "up", cheeks="heavy_blush") + + show image "cho_under_desk_handjob" as cg + with d3 + + ton "The boys have a bet on which team would end up winning the Quidditch cup." ("open", "base", "base", "R") + hoo "I see... Well that changes things..." ("normal", "base", "base", "L") + sna "You think I'd put some bet above my reputation as a potions master!?" ("snape_18") #Fake offended + gen "...{w} Probably." ("base", xpos="far_left", ypos="head") + hoo "Highly likely." ("open", "narrow", "base", "mid") + ton "Most definitely." ("soft", "narrow", "shocked", "mid") + sna "*Hmph*... In that case I'll just bring the vial to professor Slughorn and have him test it!" ("snape_16") + + #Snape's legs vanish from CG as he goes to grab the bottle. + show image "cho_under_desk_idle" as cg + with d3 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + ton "Get off me, I'll bring it to him myself! We just said we can't trust--" ("disgust", "base", "annoyed", "mid") + sna "Give it here! I'm not going to--" ("snape_32") + + #Smashing bottle sound. + call play_sound("glass_break") + pause 0.75 + + ton "Whoopsie." ("soft", "wide", "base", "up") + hoo "Oh dear..." ("open", "shocked", "shocked", "down") + sna "..." ("snape_11") #wide eyed + gen "..." ("base", xpos="far_left", ypos="head") + gen "Show me the money!" ("grin", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/kettle.ogg") + sna "..." ("snape_08") #Raging + hoo "Oh, look at the time. I think I better get going--" ("open", "shocked", "shocked", "R") + + #hooch sprints out the office sound + call play_sound("running") + pause 1.0 + call play_sound("door") + + sna "{size=+10}{cps=10}Fuuuuuuuuuck{/cps}!!!!{/size}" + cho "*giggles*" + + #fade to black + #fade back to office + hide cg + hoo "" (xpos="base", ypos="base") # This will ensure her character has correct positioning in the future events. + hide hooch + hide hooch_main + hide tonks_main + hide snape_main + with fade + + ton "Calm down Severus... Accidents happen." ("soft", "narrow", "shocked", "mid", xpos=460, ypos="base", trans=d3) + sna "No, you did that on purpose!" ("snape_17", xpos="200", ypos="base", trans=d3) + ton "Don't be silly, I have no reason to get involved with your silly little bets." ("base", "narrow", "base", "R") + sna "*Grr*... I'll be in my office." ("snape_16") + + #Snape turns right + call sna_walk(xpos="mid", speed=0.6) + + $ renpy.play("sounds/MaleClearThroat.ogg") + gen "Forgetting something?" ("base", xpos="far_left", ypos="head") + sna "*Breathing heavily*" ("snape_43", xpos=460, ypos="base", trans=d3, flip=True) + gen "Show me the--" ("grin", xpos="far_left", ypos="head") + + #Snape walks to desk + call sna_walk(xpos="desk", speed=1.5) + + $ renpy.play("sounds/money_thud.ogg") + $ game.gold += 2000 + + sna "Here, now shut...{w=0.2} Up!" ("snape_17", xpos="200", ypos="base", trans=d3, flip=False) + call sna_walk(action="leave", speed=1.5) + call play_sound("kicking") + with hpunch + #Snape leaves + #Slams door + + gen "Pleasure doing business with you!" ("grin", xpos="far_left", ypos="head") + + call play_music("stop") + + $ renpy.play("sounds/giggle2.ogg") + ton "*Giggles*..." ("grin", "narrow", "base", "R", trans=d3) #smirks + + ton "You can come out now Miss Chang... The scary pale man is gone." ("base", "narrow", "base", "L") + gen "Just give her one more minute--" ("base", xpos="far_left", ypos="head") + ton "Go on Miss Chang, no need to worry." ("soft", "base", "base", "L") + + call cho_chibi(xpos=240, ypos=460, flip=True) + with d3 + + #Cho chibi appears next to the desk. + + gen "(Damn...)" ("base", xpos="far_left", ypos="head") + ton "There you are..." ("horny", "base", "base", "L", hair="horny") + ton "I apologise for making you hide under the headmaster's desk like that, Miss Chang." ("soft", "narrow", "base", "L", hair="horny") + cho "Thank you professor." ("open", "narrow", "base", "down", cheeks="heavy_blush", xpos="left", ypos="base", flip=True, trans=d3) + cho "" ("soft", "narrow", "base", "R", cheeks="heavy_blush", xpos="left", ypos="base") + ton "*Hmm*?" ("soft", "narrow", "raised", "L", hair="horny") + ton "Oh yes, the potion thing... I'm sorry Miss Chang but you're quite distracting." ("base", "base", "base", "L", hair="horny") + ton "*Mmm*...{w=0.4} Although I'm not complaining." ("horny", "narrow", "base", "L", hair="horny") + ton "You should probably put something on before entering the hallways though." ("base", "narrow", "base", "R") + ton "I took the liberty of fetching your clothes for you, put them on once you two are finished in here will you?" ("grin", "wink", "base", "mid") + cho "Yes, professor." ("soft", "narrow", "base", "L", cheeks="heavy_blush") + + #Ravenclaw clothpile + $ renpy.sound.play("sounds/cloth_sound4.ogg") + show screen cho_cloth_pile + with d3 + + ton "Good girl." ("grin", "base", "base", "L") + ton "Make sure you use that potion to its full extent now, Miss Chang." ("horny", "base", "shocked", "L", hair="horny") + ton "Have fun!" ("grin", "wink", "base", "mid", hair="horny") + + #Tonks leaves + call ton_walk(action="leave") + + cho "*Hmm*..." ("soft", "narrow", "base", "down", cheeks="blush", trans=d3) + + cho "Have f--{w=0.2} Oh, I see..." ("soft", "narrow", "base", "down", cheeks="heavy_blush") + cho "{size=-4}The potion would let me know if this wasn't what he wanted...{/size}" ("soft", "narrow", "base", "downR", cheeks="heavy_blush") + gen "*Huh*?" ("base", xpos="far_left", ypos="head") + gen "What are you mumbling--" ("base", xpos="far_left", ypos="head") + play music "music/marty-gots-a-plan-by-kevin-macleod.ogg" fadeout 3 fadein 1.0 + cho "[cho_genie_name], Why don't you take your clothes off and get on that desk for me?" ("soft", "narrow", "base", "mid", cheeks="blush") #smirk + gen "W--{w=0.2} What?!" ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/giggle.ogg") + cho "*giggles*" ("smile", "narrow", "base", "R", cheeks="heavy_blush") + cho "You've heard me..." ("base", "narrow", "base", "mid", cheeks="heavy_blush") + gen "But I thought..." ("base", xpos="far_left", ypos="head") + cho "Isn't this what you wanted?" ("soft", "narrow", "raised", "mid", cheeks="heavy_blush") + gen "Well, yes but--" ("base", xpos="far_left", ypos="head") + # reference from police academy + cho "On your feet, soldier!" ("scream", "closed", "angry", "mid", cheeks="heavy_blush") + gen "Yes ma'am!" ("grin", xpos="far_left", ypos="head") + # + + #Black fade + #Chair sound or similar + stop music fadeout 1.0 + show screen blkfade + with d5 + + call play_music("playful_tension") # SEX THEME. + + $ renpy.sound.play("sounds/giggle.ogg") + cho "*giggles*" ("base", "base", "base", "mid") + cho "So, all it took was a bit of coaching?" ("base", "base", "base", "mid") + gen "*Err*..." + + cho "Alright...{w=0.4} I suppose I could coach you a bit this time..." ("base", "base", "base", "mid") + gen "..." + cho "Go on then...{w=0.4} Take those clothes off already." ("base", "base", "base", "mid") + cho "No, hold on... Let me do it!" ("base", "base", "base", "mid") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause .8 + + cho "What the--{w=0.2} Your figure feels a lot more muscular than I imagined." ("base", "base", "base", "mid") + gen "[cho_name]?" + cho "No matter..." ("base", "base", "base", "mid") + cho "Now, lay down on the desk for me." ("base", "base", "base", "mid") + + #desk creak sound + call play_sound("climb_desk") + pause 3 + + show image "cho_sex idle" as cg zorder 16 + show image "dustfloating" as cg_effects zorder 17 + hide screen blkfade + hide cho_main + with d9 + + + cho "*Mmm*...{w=0.4} You're lucky I've been training for this, [cho_genie_name]..." ("smile", "narrow", "base", "down", cheeks="heavy_blush", ypos="head", flip=False, trans=d3) + cho "Of course... I figured it'd come to this eventually..." ("open", "closed", "base", "mid", cheeks="heavy_blush") + cho "Ever since I saw this thing for the first time..." ("base", "narrow", "base", "down", cheeks="heavy_blush") + gen "(Why's she doing this? She already won the cup didn't she?)" + cho "*Sigh*..." ("base", "closed", "base", "mid", cheeks="heavy_blush", trans=d3) + cho "To think that I would actually agree to all of this just so that I could win that cup..." ("base", "narrow", "base", "stare", cheeks="heavy_blush") + cho "I would've never imagined that I'd go so far as to take my clothes off in front of the entire school..." ("base", "closed", "worried", "mid", cheeks="heavy_blush") + gen "Well, I don't think I asked you--" + cho "Sure, I enjoyed showing off my athletic body before." ("soft", "closed", "base", "mid", cheeks="heavy_blush", trans=d3) + cho "But even then..." ("base", "closed", "base", "stare", cheeks="heavy_blush") + cho "If you had told me that the thrills leading up to every game would've gradually changed from winning the cup to looking forward to doing all those despicable things..." ("base", "closed", "base", "mid", cheeks="heavy_blush") + cho "Well I'm not sure I would've believed it..." ("base", "narrow", "base", "stare", cheeks="heavy_blush") + gen "*Ahem*... I'm sure your fans would say the same!" + cho "I'm not just talking about the things I did on the pitch..." ("base", "narrow", "base", "R", cheeks="heavy_blush", trans=d3) + gen "..." + cho "You know... I was getting increasingly worried once the finals loomed closer." ("open", "narrow", "base", "down", cheeks="heavy_blush", trans=d3) + cho "After all... Once I had won the game, there wouldn't be any more need for our... extra curricular activities would there?" ("soft", "narrow", "base", "mid", cheeks="heavy_blush") + cho "You'd have no more leverage over me...{w=0.4} Right?" ("smile", "narrow", "raised", "mid", cheeks="heavy_blush") + gen "..." + cho "No more reason for me to sell you any favours..." ("open", "closed", "base", "mid", cheeks="heavy_blush", trans=d3) + gen "Miss--" + cho "You thought you were the only one having those thoughts?" ("soft", "narrow", "base", "mid", cheeks="heavy_blush", trans=d3) + gen "*Err*..." + cho "After I sucked your dick I couldn't help but worry--" ("open", "narrow", "base", "mid", cheeks="heavy_blush", trans=d3) + cho "That I'd end up winning the cup before ever knowing what my coach's thick beater's bat would feel like inside on my tight little... Snitch." ("horny", "narrow", "base", "down", cheeks="heavy_blush") + + #Cho up position dick in front of body + show image "cho_sex up" as cg + with d3 + + gen "Miss Chang!" + cho "I was hoping it wouldn't come to this..." ("open", "closed", "base", "mid", cheeks="heavy_blush", trans=d3) + cho "That we could've reached this stage within our agreement..." ("soft", "narrow", "base", "down", cheeks="heavy_blush") + cho "Although it's quite fitting to have this be part of my reward, don't you think?" ("smile", "narrow", "base", "down", cheeks="heavy_blush") + + #Cho positioning dick against pussy pose + show image "cho_sex insert" as cg + with d3 + + cho "As much as it is a reward for you..." ("base", "narrow", "base", "down", cheeks="heavy_blush") + gen "Are you... Are you sure about this?" + cho "Sure? I've never been so sure about anything in my life!" ("smile", "base", "base", "mid", cheeks="heavy_blush", trans=d3) + cho "This potion is incredible!" ("crooked_smile", "base", "base", "stare", cheeks="heavy_blush") + gen "The...{w=0.4} So it's just the potion talking?" + cho "*Tsk*... Of course not... Luck potion doesn't work that way, we both know that." ("smile", "narrow", "base", "R", cheeks="heavy_blush", trans=d3) + cho "And let me tell you, what they say about it is true... This is the best day I've had in my life!" ("crooked_smile", "narrow", "base", "stare", cheeks="heavy_blush") + cho "And it's about to get even better..." ("crooked_smile", "narrow", "base", "down", cheeks="heavy_blush") + + #Cho sits down on genie's dick and gets fully penetrated + show image "cho_sex up inside" as cg + with d3 + pause 0.25 + cho "*Nnngh--{w=0.40}{nw}" ("angry", "closed", "angry", "mid", cheeks="heavy_blush") + show image "cho_sex middle" as cg + with d3 + pause 0.25 + $ renpy.sound.play("sounds/slick_02.ogg") + show image "cho_sex down" as cg + with d3 + pause 0.25 + + with hpunch + cho "*Ah*..." ("open_wide_tongue", "narrow", "base", "up", cheeks="heavy_blush") + gen "*Ngh*!" + gen "By the great--{w=0.2} You've already almost made me bust from that blowjob, girl!" + cho "Then let's finish the job this time, shall we?" ("grin", "narrow", "base", "mid", cheeks="heavy_blush", trans=d3) + + #Cho starts moving + play bg_sounds "sounds/slickloop.ogg" + show image "cho_sex loop slow" as cg + with d3 + + gen "*Hngh*!" + gen "So... *Ngh*-- You didn't blow me just to get out of trouble?" + cho "*Ah*...{w=0.4} No...{w=0.4} Although normally I probably would've considered...{w=0.4} *Ah*...{w=0.4} Justifying it that way." ("soft", "closed", "base", "stare", cheeks="heavy_blush", trans=d3) + cho "But...{w=0.2} *Ah*...{w=0.4} The potion ...{w=0.2} *Ah*..." ("smile", "closed", "base", "mid", cheeks="heavy_blush") + cho "Well, for some reason I don't feel the need to..." ("soft", "narrow", "base", "stare", cheeks="heavy_blush") + cho "And that...{w=0.2} *Ah*...{w=0.4} I shouldn't hide..." ("smile", "narrow", "base", "stare", cheeks="heavy_blush") + cho "The things I truly--{w=0.2}*Ah*...{w=0.4} Want from my coach." ("horny", "narrow", "base", "stare", cheeks="heavy_blush") + gen "Clever little potion, that." + gen "In that case, why don't you tell me..." + cho "*Hmm*?" ("soft", "narrow", "base", "stare", cheeks="heavy_blush", trans=d3) + gen "I knew you enjoyed showing off your body--" + gen "But when did you start getting so naughty?" + cho "That's the first thing you ask?" ("smile", "narrow", "raised", "stare", cheeks="heavy_blush", trans=d3) + gen "Of course!" + cho "*giggles*..." ("grin", "closed", "base", "downR", cheeks="heavy_blush", trans=d3) #sound + cho "Well--{w=0.2} *Ah*...{w=0.4} Let me think..." ("base", "closed", "base", "mid", cheeks="heavy_blush") + cho "It--{w=0.2} *Ah*... It was probably when I first saw Hermione's naked--{w=0.2}*Ah*... Naked body in your office..." ("open", "narrow", "base", "stare", cheeks="heavy_blush") + gen "*Heh-he*... I knew--" + cho "It made me extremely--{w=0.2} *Ah*...{w=0.4} Angry...{w=0.4} And confused..." ("angry", "narrow", "base", "stare", cheeks="heavy_blush") + gen "Oh?" + cho "Yes! I had just won the game against Slytherin, and as I came--{w=0.2} *Ah*...{w=0.4} Came in here to celebrate with my coach..." ("angry", "closed", "base", "mid", cheeks="heavy_blush", trans=d3) + cho "Who do I see but Hermione Granger, smiling, and stark naked!" ("soft", "closed", "angry", "down", cheeks="heavy_blush") + gen "Well... It wasn't--" + cho "That's when I--{w=0.2} *Ah*...{w=0.4} When I realised that maybe I wanted more than just winning the cup." ("soft", "narrow", "base", "stare", cheeks="heavy_blush") + cho "I mean, I didn't even think to go celebrate with my team. I instinctively went straight to your office." ("annoyed", "base", "base", "stare", cheeks="heavy_blush") + cho "And if there was any{w=0.2} *Ngh*...{w=0.4} Any doubt after that..." ("open", "narrow", "base", "stare", cheeks="heavy_blush") + cho "Getting--{w=0.2} *Mmm*...{w=0.4} Getting that broom from Madame Hooch just proved it to me even more..." ("smile", "narrow", "base", "up", cheeks="heavy_blush") + cho "Since I really had to try and figure out what makes me tick if I wanted to win the cup." ("smile", "narrow", "base", "up", cheeks="heavy_blush") + cho "I couldn't help--{w=0.2}{nw}" ("soft", "narrow", "base", "up", cheeks="heavy_blush") + cho "I couldn't help--{fast} *Ah*..." ("smile", "narrow", "base", "stare", cheeks="heavy_blush") + cho "The only thing I could think about was what it would be like to have you bend me over and--{w=0.2}*Ah*...{w=0.4} fuck me on the commentators podium with everyone watching me..." ("smile", "narrow", "base", "stare", cheeks="heavy_blush") #Big moan text + gen "You little exhibitionist slut!" + gen "If only they could see you now." + cho "Yes! Let's call Hermione up here!" ("grin", "narrow", "base", "stare", cheeks="heavy_blush", trans=d3) + gen "What?!" + cho "*giggles*" ("smile", "closed", "base", "mid", cheeks="heavy_blush", trans=d3) + cho "Maybe some other time... She's probably still mad over their loss." ("smile", "narrow", "base", "stare", cheeks="heavy_blush") + gen "And the fact that you came on that boy's face." + cho "That's why he crashed?" ("soft", "base", "base", "stare", cheeks="heavy_blush", trans=d3) + gen "..." + cho "*pfff-- Ha-ha-hah*!" ("grin", "happyCl", "base", "mid", cheeks="heavy_blush", trans=d3) + gen "*Heh-heh*" + gen "She looked so jealous too!" + cho "..." ("soft", "base", "base", "stare", cheeks="heavy_blush", trans=d3) + cho "She did?!" ("angry", "base", "base", "mid", cheeks="heavy_blush") + gen "..." + cho "Oh, you're just teasing me..." ("annoyed", "narrow", "base", "stare", cheeks="heavy_blush", trans=d3) + cho "Well, two can play that game..." ("base", "narrow", "angry", "mid", cheeks="heavy_blush") + + hide cho_main + + #sexloop fast. #speedlines + play bg_sounds "sounds/sexloopfast.ogg" + show image "cho_sex loop fast" as cg + with d1 + + gen "*Argh*...{w=0.4} You little--" + cho "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("open_tongue", "narrow", "base", "up", cheeks="heavy_blush", trans=d3) + gen "Someone's--{w=0.2} *Ngh*...{w=0.4} Suddenly eager for their reward--" + cho "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("open_tongue", "narrow", "base", "up", cheeks="heavy_blush", trans=d3) + cho "Coach--" ("smile", "narrow", "base", "up", cheeks="heavy_blush") + cho "I'm...{w=0.2} I'm close to--" ("smile", "narrow", "base", "up", cheeks="heavy_blush") + gen "Me too!" + + with kissiris + $ renpy.sound.play("sounds/slick_01.ogg") + cho "Coach!" ("scream", "narrow", "base", "up", cheeks="heavy_blush", trans=d3) + with kissiris + $ renpy.sound.play("sounds/slick_01.ogg") + cho "{heart}Aaaah!!!{w=0.4} Yes!!!{heart}" ("open_wide_tongue", "narrow", "base", "up", cheeks="heavy_blush", trans=d3) + + menu: + "Take my champagne shower!!!": + + #Cho standing, dick inside + cho "*Nnnngh*--{w=0.2} Wait!!" ("angry", "narrow", "base", "up", cheeks="heavy_blush") + #Cho holding dick pose + cho "I'm still...{w=0.4} I'm still--" ("clench", "narrow", "base", "up", cheeks="heavy_blush") + gen "Too late!!!" + #Pull out sound + #Cho standing pose, genie body 3 (cho normal up, jacking it) + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_02.ogg") + show image "cho_sex up jerking" as cg + with d3 + + pause .5 + gen "*Aaargh*!!" + #Genie cums + $ renpy.sound.play("sounds/slick_01.ogg") + show image "cho_sex up cum outside stage0" as cg + with d3 + pause 0.66 + show image "cho_sex up cum outside stage1" as cg + with d3 + + pause 0.66 + $ renpy.sound.play("sounds/slick_01.ogg") + show image "cho_sex up cum outside stage2" as cg + with d3 + pause 0.66 + + show image "cho_sex up cum outside stage3" as cg + with d3 + + gen "Ah..." + + pause 1.0 + + #Adds cum on Cho doll breasts and body + $ cho.set_cum(breasts="light", body="light") + + gen "That's...{w=0.4} That's some mad timing on that pullout game..." + cho "*Ah*...{w=0.4} *Ah*...{w=0.4} Gotta wait for just the--{w=0.2} *Ah*..." ("smile", "narrow", "base", "stare", cheeks="heavy_blush") + cho "Right moment..." ("base", "narrow", "base", "up", cheeks="heavy_blush") + #Cho standing tasting cum pose, dick outside (cum on dick) + + #TODO change for variant with cum on her chest included + show image "cho_sex up taste outside" as cg + with d2 + + cho "*Mmm*..." ("base", "closed", "base", "stare", cheeks="heavy_blush") + cho "My reward..." ("smile", "closed", "base", "stare", cheeks="heavy_blush") + cho "*giggles*." ("smile", "closed", "base", "stare", cheeks="heavy_blush") + + + "Take my seed in your golden cup!": + + cho "My--" ("smile", "narrow", "base", "up", cheeks="heavy_blush") + gen "*Aaaargh*!!!" + + show image "cho_sex middle" as cg + pause 0.25 + show image "cho_sex down" as cg + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + stop bg_sounds fadeout 1 + + + cho "*Ah*!!! {w=0.5} {nw}" ("open_wide_tongue", "base", "base", "ahegao", cheeks="heavy_blush") + + with flashbulb + $ renpy.sound.play("sounds/slick_02.ogg") + show image "cho_sex idle creampie" as cg + with d3 + gen "Ah...." + cho "*Ah*...{w=0.4} *Ah*...{w=0.4} *Ah*..." ("grin", "narrow", "base", "up", cheeks="heavy_blush", trans=d3) + + #Cho moves to stand pose (cycle images?) + show image "cho_sex middle cum inside" as cg + with d2 + pause 0.25 + show image "cho_sex up cum inside" as cg + with d2 + pause 0.25 + $ renpy.sound.play("sounds/slick_02.ogg") + show image "cho_sex up cum outside" as cg + with d2 + + cho "I think--{w=0.4} *Ah*...{w=0.4} I think I've finally found a fun activity to put into my workout routine..." ("smile", "narrow", "base", "stare", cheeks="heavy_blush") + + show image "cho_sex insert cum inside" as cg + with d2 + pause 0.25 + show image "cho_sex up taste" as cg + with d2 + + #Cum sound + #Cho standing tasting cum pose, dick outside (cum on dick) + + cho "*Mmm*..." ("smile", "closed", "base", "stare", cheeks="heavy_blush") + gen "You naughty girl..." + cho "*giggles*..." ("smile", "narrow", "base", "mid", cheeks="heavy_blush", trans=d3) + + #Adds cum on Cho doll pussy + $ cho.set_cum(pussy="heavy") + + #Office screen + #Cho is naked in front of the desk + + stop music fadeout 1.0 + + hide image cg + hide image cg_effects + call cho_chibi(xpos="desk", ypos="base", flip=False) + with fade + + gen "That... Was amazing!" ("grin", xpos="far_left", ypos="head") + cho "...{w=0.5}{nw}" ("soft", "narrow", "base", "stare", cheeks="heavy_blush", xpos="base", ypos="base", trans=d3) + cho "...{fast}" ("soft", "wide", "base", "stare", cheeks="heavy_blush") + gen "[cho_name]?" ("base", xpos="far_left", ypos="head") + cho "Oh my god...{w=0.4} The potion!" ("disgust", "wide", "base", "stare", cheeks="heavy_blush") + gen "What are you--" ("base", xpos="far_left", ypos="head") + cho "I can't believe it made me do that!" ("disgust", "narrow", "angry", "down", cheeks="heavy_blush") + gen "Uh-Oh..." ("angry", xpos="far_left", ypos="head") + cho "...{w=0.8}{nw}" ("annoyed", "narrow", "angry", "mid", cheeks="heavy_blush") + + call play_music("cho") + + cho "...{fast}" ("grin", "narrow", "base", "mid", cheeks="heavy_blush") #smirks + gen "*Heh-Heh*..." ("grin", xpos="far_left", ypos="head") + cho "*giggles*" ("smile", "narrow", "base", "mid", cheeks="heavy_blush") #sound + cho "Well then, I think I've almost run out of energy for today... I better spend the rest celebrating with everyone." ("smile", "narrow", "base", "mid", cheeks="heavy_blush") + gen "Sure thing." ("base", xpos="far_left", ypos="head") + gen "Although..." ("base", xpos="far_left", ypos="head") + gen "Maybe take a shower first?" ("base", xpos="far_left", ypos="head") + cho "*Hmm*... We'll see..." ("base", "narrow", "base", "R", cheeks="heavy_blush") + #Cho walks to window + call cho_walk(xpos=439, ypos=400) + gen "Ahem..." ("base", xpos="far_left", ypos="head") + #Cho turns + cho "Yes?" ("soft", "base", "base", "mid", cheeks="heavy_blush") + gen "You should probably put some clothes on..." ("base", xpos="far_left", ypos="head") + cho "Oh...{w=0.4} Well if I have to..." ("annoyed", "narrow", "base", "down", cheeks="heavy_blush") + + #cho walks to clothes pile and rumages through it + call cho_walk(xpos=438, ypos=435) + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause .8 + + cho "*Huh*..." ("soft", "base", "base", "down", cheeks="heavy_blush", trans=d3) + cho "My panties are missing." ("soft", "narrow", "base", "down", cheeks="heavy_blush") + gen "Oh... *Err*..." ("base", xpos="far_left", ypos="head") + cho "Do you think Hermione took them?" ("soft", "narrow", "base", "mid", cheeks="heavy_blush") + gen "...{w=0.4} Sure...{w=0.4} Why not." ("base", xpos="far_left", ypos="head") + cho "Figured..." ("base", "narrow", "base", "downR", cheeks="heavy_blush") + gen "I could probably get you another pair." ("base", xpos="far_left", ypos="head") + cho "Nah." ("base", "narrow", "base", "R", cheeks="heavy_blush") + cho "It'll be easier to ride the broom without them anyway." ("base", "narrow", "base", "down", cheeks="heavy_blush") + + #Cho gets dressed + call play_sound("equip") + hide cho_main + $ cho.wear("all") + $ cho.strip("panties") + $ cho.set_cum(None) + $ choq_accessory_protectors.zorder = 3 + $ cho.rebuild() + hide screen cho_cloth_pile + with d3 + pause 0.5 + + call cho_walk(xpos=437, ypos=400) + + cho "Bye then!" ("smile", "base", "base", "mid", cheeks="heavy_blush", trans=d3) + hide cho_main + with d3 + pause .5 + + $ renpy.sound.play("sounds/boing05.ogg") + call cho_chibi("hide") + + pause 1 + $ renpy.sound.play("sounds/slick_02.ogg") + with kissiris + cho "{heart}{size=+4}*Ah*{/size}{heart}" + gen "...{w} That girl sure is something else." ("base", xpos="far_left", ypos="head") + + if cho_whoring < 24: + $ cho_whoring = 24 + call end_of_content + + $ tonks_busy = True + $ snape_busy = True + $ hermione_busy = True + $ luna_busy = True + $ cho_busy = True + + #Reset zorder + $ tonks.zorder = 15 + $ hooch.zorder = 15 + $ snape_zorder = 15 + $ cho.zorder = 15 + + $ snape_chibi.zorder = 3 + + #Reset Match specific clothing to player choice + $ hermione.equip(her_outfit_last) + $ tonks.equip(ton_outfit_last) + $ luna.equip(lun_outfit_last) + $ cho.equip(cho_outfit_last) + + $ choq_accessory_protectors.zorder = 27 + + $ cho_tier = 4 + $ cho_favors_unlocked = False + + $ cho_quid.lock_training = False + $ cho_quid.lock_practice = True + $ cho_quid.lock_tactic = False + $ cho_quid.lock_training = True + $ gryffindor_match = "completed" + call update_cho_favors + + jump end_cho_event diff --git a/game/scripts/characters/cho/events/quidditch/gryffindor_practice.rpy b/game/scripts/characters/cho/events/quidditch/gryffindor_practice.rpy new file mode 100644 index 00000000..cc4d3b3f --- /dev/null +++ b/game/scripts/characters/cho/events/quidditch/gryffindor_practice.rpy @@ -0,0 +1,169 @@ +### Cho Gryffindor Training ### +label cc_gt_start: + + gen "Alright then. Let's get you out there to smack some asses!" ("base", xpos="far_left", ypos="head") + cho "Smack some asses, [cho_genie_name]?" ("angry", "base", "base", "mid") + gen "You've heard me!" ("base", xpos="far_left", ypos="head") + gen "It's not against the rules is it?" ("base", xpos="far_left", ypos="head") + cho "W--{w=0.2} Well... I suppose not, unless I do it with my elbows." ("soft", "narrow", "base", "R") + gen "With your elbows...?" ("base", xpos="far_left", ypos="head") + cho "Yeah, excessive use of elbows is against the rules." ("soft", "narrow", "base", "mid") + gen "Sounds like something you made up..." ("base", xpos="far_left", ypos="head") + cho "It's a real rule! Excessive use of elbows, otherwise known as cobbing--" ("mad", "narrow", "base", "mid") + gen "Alright fine, no elbow touching." ("base", xpos="far_left", ypos="head") + gen "You won't need them to turn some bums red." ("base", xpos="far_left", ypos="head") + cho "So that's what you meant by getting intimate? Smacking the Gryffindor's bums until they turn red?" ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "Yeah!" ("base", xpos="far_left", ypos="head") + cho "Isn't that a bit extreme?" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "A good ole love tap is hardly extreme." ("base", xpos="far_left", ypos="head") + gen "If you do it well enough then I'm sure Miss Granger will notice." ("base", xpos="far_left", ypos="head") + cho "Well enough [cho_genie_name]?" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Yeah, make those slaps echo across the pitch!" ("base", xpos="far_left", ypos="head") + cho "*Hmm*... Alright then, I'll make sure of that..." ("open", "narrow", "base", "downR", cheeks="blush") + gen "Great! Then get out there and spank some booty, [cho_name]." ("base", xpos="far_left", ypos="head") + cho "On it, [cho_genie_name]!" ("angry", "closed", "base", "mid", cheeks="blush") + + # Cho leaves. + call cho_walk(action="leave") + + $ cho_quid.in_progress = True + $ cho_quid.gryffindor_failed = True + + call gen_chibi("sit_behind_desk") + with fade + + jump end_cho_event + +label cc_gt_return: + call play_sound("knocking") + call bld + "*Knock-knock-knock*" + + gen "Come in!" ("base", xpos="far_left", ypos="head") + + $ cho.equip(cho_outfit_quidditch_gryffindor) + + call cho_walk(xpos="mid", ypos="base", action="enter") + + gen "[cho_name]!" ("base", xpos="far_left", ypos="head") + gen "Had a fruitful day, smacking some peaches?" ("base", xpos="far_left", ypos="head") + cho "I did not!" ("disgust", "narrow", "angry", "mid", cheeks="blush", trans=d3) + gen "Too bad, I was so sure it would have worked." ("base", xpos="far_left", ypos="head") + cho "Oh it worked alright..." ("annoyed", "closed", "angry", "mid", cheeks="blush") + gen "It did?" ("base", xpos="far_left", ypos="head") + cho "In fact, it worked so well I'm not sure what was redder, Katie's bum, or Hermione's face..." ("angry", "narrow", "base", "R", cheeks="blush") + cho "She was fuming!" ("base", "narrow", "angry", "mid", cheeks="blush") + gen "Splendid! Then what's the problem?" ("base", xpos="far_left", ypos="head") + cho "It's my broom..." ("angry", "closed", "worried", "R") # Sad + cho "Those bloody Weasley twins, they destroyed my broom!" ("clench", "narrow", "angry", "mid") + gen "They did what?!" ("base", xpos="far_left", ypos="head") + gen "Sabotaging weasels!" ("base", xpos="far_left", ypos="head") + gen "I'll get them expelled!!" ("base", xpos="far_left", ypos="head") # Double exclamation intentional + cho "That would be great and all, but I don't have any proof..." ("disgust", "narrow", "angry", "mid") + gen "What do you mean? Then how do you know it was them?" ("base", xpos="far_left", ypos="head") + cho "Well, given the state my broom was in when I've found it, it couldn't have been anyone else." ("annoyed", "narrow", "angry", "mid") + cho "My broom fell a victim to termites..." ("angry", "closed", "angry", "mid") + cho "They must have put them on my broom while I was changing, after the practise." ("disgust", "narrow", "angry", "mid") + gen "Can't you just borrow another broom from, I don't know, one of the cleaning cupboards?" ("base", xpos="far_left", ypos="head") + cho "Cleaning cupboards--" ("angry", "wide", "base", "mid") + cho "Please, [cho_genie_name], this isn't a joking matter." ("angry", "narrow", "base", "mid") + cho "Being this close to the finals, I won't be able to purchase a proper professionally crafted broom in time." ("angry", "narrow", "base", "mid") + gen "Why not?" ("base", xpos="far_left", ypos="head") + cho "They're very expensive." ("disgust", "narrow", "base", "mid") + gen "How expensive could a broom be--" ("base", xpos="far_left", ypos="head") + + # This will always display player gold + 1000, because why not. + $ _gold = game.gold + 4000 + $ _gold = num_to_word(_gold) + + cho "[_gold]!" ("clench", "closed", "base", "mid") + $ renpy.play('sounds/gulp.ogg') + gen "*Gulp*..." ("angry", xpos="far_left", ypos="head") + gen "Surely there must be some spare brooms around the castle." ("angry", xpos="far_left", ypos="head") + cho "I assure you... Even the brooms provided for flying lessons are terrible." ("disgust", "narrow", "angry", "mid") + gen "I'm sure they're fine..." ("base", xpos="far_left", ypos="head") + gen "(Please don't make me buy a bloody broom, I'll go bankrupt...)" ("base", xpos="far_left", ypos="head") + cho "Please, [cho_genie_name]..." ("soft", "narrow", "worried", "mid") + gen "(Here we go...)" ("base", xpos="far_left", ypos="head") + cho "Could you buy me a broom?" ("quiver", "narrow", "worried", "mid") + gen "Hold on just a second... Termites? Are you just trying to get me to buy you a new broom again?" ("angry", xpos="far_left", ypos="head") + cho "Of course not! You think I would lie about something like this?" ("clench", "narrow", "worried", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + cho "Please believe me [cho_genie_name]!" ("scream", "closed", "worried", "mid") + gen "A school supplied broom will have to suffice." ("base", xpos="far_left", ypos="head") + cho "Why aren't you listening, [cho_genie_name]!" ("angry", "wide", "worried", "mid") + cho "The school supplied brooms are ancient, there's no way I'd be able to win anything flying on that rubbish!" ("scream", "narrow", "worried", "mid") + cho "Harry's firebolt--" ("angry", "closed", "worried", "mid") + gen "A broom's a broom. I'm sure the expensive ones are just branding." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "mid") + gen "Just try them out, I'm sure it'll be fine." ("base", xpos="far_left", ypos="head") + cho "It's a waste of time but if that's what it takes then sure..." ("annoyed", "closed", "angry", "mid") + cho "I'll meet you at the pitch tomorrow morning." ("open", "closed", "angry", "mid") #smirk + gen "Excellent, I'll...{w=0.4} Wait, did you say tomorrow morning?" ("base", xpos="far_left", ypos="head") + cho "Yes, and you better be there, [cho_genie_name]..." ("disgust", "narrow", "angry", "mid") #smiling + gen "(The things a Coach has to do...{w=0.4} Wake up in the morning...)" ("base", xpos="far_left", ypos="head") + gen "What else do you need from me? Shall I put together a cheerleading squad as well?" ("base", xpos="far_left", ypos="head") + cho "Oh, yes please! That should help with riling up Hermione even more." ("smile", "narrow", "base", "mid") + gen "(Does sarcasm not exist in this world?)" ("base", xpos="far_left", ypos="head") + gen "Very well then, I'll get you your squad, and meet you at the pitch... *Eugh*... tomorrow morning..." ("base", xpos="far_left", ypos="head") + + #Cho walks to door + call cho_walk(xpos="door") + + cho "(The school brooms, what's he thinking? I can't believe he doesn't realise they wouldn't be anywhere close to the speed of Harry's firebolt...)" ("disgust", "narrow", "base", "R", flip=True) + cho "(What if he forces me to use one... There's no way I would be able to outspeed even their keeper...)" ("clench", "narrow", "base", "down") + cho "(I have to win the finals, no matter what!)" ("angry", "closed", "base", "mid") + cho "(But how...)" ("annoyed", "narrow", "base", "down") + gen "[cho_name]?" ("base", xpos="far_left", ypos="head") + + #Cho leaves. + call cho_walk(action="leave") + pause .8 + + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + + $ cho.equip(cho_outfit_last) # Equip last worn clothes + + $ gryffindor_match = "ready" + $ cho_quid.gryffindor_training = True + $ cho_quid.lock_practice = True + + jump end_cho_event + +label cc_gt_talk: + + cho "" (xpos="right", ypos="base", trans=fade) + + if cho_quid.gryffindor_training: + cho "Finals starting soon?" ("base", "base", "base", "mid") + + if not cho_quid.E11_complete and not cho_quid.E12_complete: + # Didn't ask Luna to cheer and didn't get the broom + gen "Not yet... I've got some things to take care of before then." ("base", xpos="far_left", ypos="head") + cho "That's too bad, I want to crush those Gryffindors already!" ("base", "base", "base", "mid") + gen "(I've still got to help her find a broom in the morning...)" ("base", xpos="far_left", ypos="head") + gen "(And how am I supposed to get cheerleading squad together...)" ("base", xpos="far_left", ypos="head") + gen "(Perhaps there's some other Ravenclaw student I can ask...)" ("base", xpos="far_left", ypos="head") + elif not cho_quid.E11_complete: + # Didn't ask Luna to cheer + gen "No, I still need to get you your stupid cheerleading squad." ("base", xpos="far_left", ypos="head") + cho "Stupid? Wasn't this your idea?" ("base", "base", "base", "mid") + gen "I was being..." ("base", xpos="far_left", ypos="head") + gen "Nevermind..." ("base", xpos="far_left", ypos="head") + gen "(I wonder if there's someone from Ravenclaw that I could ask...)" ("base", xpos="far_left", ypos="head") + elif not cho_quid.E12_complete: + # Didn't get the broom + gen "Not until we have you pick out one of the school brooms to use." ("base", xpos="far_left", ypos="head") + cho "You mean not until we find out how worthless they are and you have to get me a proper broom." ("base", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + else: #Match ready + gen "As long as you're ready." ("base", xpos="far_left", ypos="head") + cho "I'm ready!" ("base", "base", "base", "mid") + else: + cho "Let's find the weakness of those Gryffindors!" ("base", "base", "base", "mid") + gen "On it!" ("base", xpos="far_left", ypos="head") + + cho "" (xpos="base", ypos="base", trans=fade) + + jump cho_training.choices diff --git a/game/scripts/characters/cho/events/quidditch/hufflepuff_match.rpy b/game/scripts/characters/cho/events/quidditch/hufflepuff_match.rpy new file mode 100644 index 00000000..3adbe77d --- /dev/null +++ b/game/scripts/characters/cho/events/quidditch/hufflepuff_match.rpy @@ -0,0 +1,1163 @@ + +# Ravenclaw vs. Hufflepuff + +label start_hufflepuff_match: + # Chat with Cho the day before the match + + cho "" (xpos="mid", ypos="base", trans=fade) + gen "[cho_name], what do you say... ready for your first game of the season?" ("base", xpos="far_left", ypos="head") + cho "To be honest, [cho_genie_name], I'm feeling quite nervous." ("soft", "base", "worried", "R") + gen "Don't worry. I believe you are ready..." ("base", xpos="far_left", ypos="head") + gen "When are you going to play against Hufflepuff?" ("base", xpos="far_left", ypos="head") + cho "That's up to you, [cho_genie_name]. As headmaster you decide when the games will be held..." ("open", "base", "base", "mid") + gen "So if I were to say tomorrow, it will happen tomorrow?" ("base", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]." ("base", "base", "base", "mid") + gen "Well then, tomorrow it is!" ("grin", xpos="far_left", ypos="head") + + if game.weather in {"rain", "storm"}: + cho "Sounds great, [cho_genie_name]. I just hope it stops raining before then." ("soft", "base", "base", "R") + elif game.weather in {"snow", "blizzard"}: + cho "Sounds great, [cho_genie_name]. I just hope it stops snowing before then." ("soft", "base", "base", "R") + elif game.weather == "overcast": + cho "Sounds great, [cho_genie_name]. I just hope the weather doesn't get worse." ("soft", "base", "base", "R") + else: + cho "Sounds great, [cho_genie_name]. I just hope the weather stays like it is." ("soft", "base", "base", "R") + + gen "With our tactics, this will be a piece of cake!" ("base", xpos="far_left", ypos="head") + cho "I hope you're right, [cho_genie_name]." ("base", "base", "base", "mid") + cho "Anyhow, I need to prepare for the game." ("soft", "base", "base", "R") + cho "See you then, [cho_genie_name]!" ("smile", "base", "base", "mid") + gen "Good luck!" ("base", xpos="far_left", ypos="head") + + call cho_walk(action="leave") + + $ cho_quid.lock_training = True + $ cho_quid.lock_practice = True + + $ cc_event_pause += 1 # Event starts on the next day + $ cc_summon_pause += 1 # Can't be summoned until next event + + $ cho_busy = True + + $ hufflepuff_match = "start" + + jump end_cho_event + + +label hufflepuff_match: + # Quidditch match: Ravenclaw vs. Hufflepuff + + $ cho_outfit_last.save() + $ her_outfit_last.save() + + $ cho.equip(cho_outfit_quidditch) + $ hermione.equip(her_outfit_default) + + call play_music("stop") + + # Start in the office + call sna_walk(action="enter", xpos="mid", ypos="base") + pause .5 + + call play_music("snape") + sna "Are you ready to go?" ("snape_03", xpos="base", ypos="base") + gen "Can't you bloody knock?!" ("angry", xpos="far_left", ypos="head") + sna "Should I?{w=0.3} I was sure you were already waiting for me..." ("snape_05") + gen "For what?" ("base", xpos="far_left", ypos="head") + sna "We have to head out for the pitch. The whole school is waiting on you." ("snape_24") + gen "Didn't you nag me earlier not to leave this room unless absolutely necessary?" ("base", xpos="far_left", ypos="head") + sna "A rule which I'm sure you have disregarded a great many times already..." ("snape_29") + sna "You'll have to join me on this one. As headmaster, you are expected to attend the Quidditch matches." ("snape_06") + gen "And that's today?" ("base", xpos="far_left", ypos="head") + sna "Indeed." ("snape_03") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "Wouldn't the other teachers see me if I went?" ("base", xpos="far_left", ypos="head") + sna "Don't worry. I've arranged to have us moved from the teachers' seats to the commentator booth." ("snape_24") + sna "Just the two of us..." ("snape_23") + gen "And Miss Granger?" ("base", xpos="far_left", ypos="head") + sna "Granger..." ("snape_08") + sna "Well, that's very displeasing to say the least..." ("snape_07") + sna "In any case, you won't be seen up close by any of the other teachers." ("snape_09") + gen "Sounds like a snore. Can't I stay here and you'll tell them I'm ill or something?" ("base", xpos="far_left", ypos="head") + sna "No." ("snape_04") + sna "That would just prompt the nurse to examine you closely..." ("snape_03") + gen "Well... I wouldn't mind that." ("base", xpos="far_left", ypos="head") + sna "I'm sure you wouldn't..." ("snape_06") + sna "Good thing though is that we'll be able to bring a little something to keep us occupied." ("snape_20") + call hide_characters + with d3 + + # Show wine + call give_reward(text=">Not grape-juice.", gift="interface/icons/wine.webp") + + gen "That's all the persuasion I needed my friend!" ("base", xpos="far_left", ypos="head") + hide screen bld1 + with d3 + pause .2 + + # Teleport to door + call play_sound("kick") + call gen_chibi("hide") + with d3 + + call gen_chibi("stand", "door", "base") + call teleport(position="genie", effect=False) + pause .5 + + call gen_chibi("stand", "door", "base", flip=False) + with d3 + pause .2 + + call bld + gen "What are we waiting for. Let's go!" ("base", xpos="far_left", ypos="head") + + call sna_chibi("stand", "mid", "base", flip=True) + with d3 + pause .2 + + sna "(When did he?...)" ("snape_05", ypos="head") + sna "After you..." ("snape_09", ypos="head") + pause .8 + + gen "Actually, I have no idea where we're going." ("base", xpos="far_left", ypos="head") + + call gen_chibi("stand", "door", "base") + with d3 + pause .2 + + call bld + gen "You should lead the way..." ("base", xpos="far_left", ypos="head") + sna "Right you are. Time to get smashed!" ("snape_02", ypos="head") + + call sna_walk(700, "base") + + # Blackfade + stop music fadeout 2 + stop bg_sounds fadeout 2 + call play_sound("door") + call blkfade + pause 2 + + ">You make your way towards the pitch with Snape, pondering if this was such a good idea." + call play_sound("grass") + ">After walking for a while across the school grounds a huge oval shaped pitch with massive towers around it looms before you." + ">Amazed by...{w=0.6}{nw}" + gen "Agrabah towers are larger..." ("base", xpos="far_left", ypos="head") + ">Amazed... by the sight, Snape then leads you to the base of one of the towers." + + # Pitch entrance + centered "{size=+7}{color=#cbcbcb}At the Quidditch pitch...{/color}{/size}" + + call room("quidditch_pitch") + play bg_sounds "sounds/outskirts.ogg" fadein 2 + call sna_chibi("stand", "right", "base") + call gen_chibi("stand", "mid", "base", flip=True) + call hide_blkfade + pause .8 + + call bld + gen "So, this is it? This is where the quidditch is played?" ("base", xpos="far_left", ypos="head") + sna "Of course, did you expect something else?" ("snape_05", ypos="head") + gen "I mean... What's the point of the grass and sand? Isn't it played in the air?" ("base", xpos="far_left", ypos="head") + sna "..." ("snape_25", ypos="head") + gen "Wouldn't it make more sense to have the ground be something soft if they fall?" ("base", xpos="far_left", ypos="head") + gen "Like...{w=0.3} magic marshmallow or something..." ("grin", xpos="far_left", ypos="head") + sna "You think there's a spell for everything?" ("snape_35", ypos="head") + gen "From previous experiences with this world so far...{w} yes, pretty much." ("base", xpos="far_left", ypos="head") + sna "Anyhow... time to get moving.{w=0.6} This place will be filled with teachers and students any minute now." ("snape_03", ypos="head") + sna "After me..." ("snape_02", ypos="head") + + call sna_walk(path=[("stairs_base", "base"),("stairs_up", "stairs_up")]) + call gen_walk(650) + call chibi_emote("exclaim", "genie") + pause 0.3 + + call chibi_emote("hide", "genie") + call gen_chibi("stand_alt") + with d3 + pause 0.5 + + call bld + gen "(*He-heh*... \"Snape sux\"...)" ("grin", xpos="far_left", ypos="head") + call gen_chibi("stand") + call gen_walk(path=[("stairs_base", "base"),("stairs_up", "stairs_up")]) + + call blkfade + + # Sound check + if get_volume_preference('music') < 0.1 or get_volume_preference('sfx') < 0.1: + nar "This section of the game is best played with the sound turned on. Go to preferences to set the volume." + + pause 1 + + # Quidditch stands + call room("quidditch_stands") + call quidditch_stands(crowd=crowd_mid) + + ### Snape Chibi Postions ### + # First Step R: call sna_chibi("stand", flip=True, 25, 234) + # Second Step R: call sna_chibi("stand", flip=True, 85, 260) + # Third Step R: call sna_chibi("stand", 120, 295, flip=True) + # Fourth Step R: call sna_chibi("stand", flip=True, 160, 330) + + ### Genie Postions ### + ## Sprite: call gen_main(face="base", base="base", xpos=-10, ypos=140) + # First Step Mid: call gen_chibi("stand", flip=True, -20, 270) + # Second Step L: call gen_chibi("stand", flip=True, -20, 320) + # Second Step Mid: call gen_chibi("stand", flip=True, 0, 360) + # Third Step L: call gen_chibi("stand", 20, 365, flip=True) + # Third Step Mid: call gen_chibi("stand", 65, 340, flip=True) + # Floor Mid: call gen_chibi("stand", flip=True, 170, 400) + # Podium: call gen_chibi("stand", 280, 400, flip=True) + + ### Hermione Postions ### + ## Sprite: her "" (flip=True, xpos="290", ypos="base") + # Second Step Mid: call her_chibi("stand", 40, 295, flip=True) + # Floor Mid: call her_chibi("stand", flip=True, 180, 400) + # Podium: call her_chibi("stand", 300, 400, flip=True) + # Podium Sidestep: call her_chibi("stand", 260, 460, flip=True) + + ### Tonks Positions ### + # 1st Step R: call ton_chibi("stand", flip=True, 55, 235) + # 4th Step R: call ton_chibi("stand", flip=True, 180, 340) + # Floor mid: call ton_chibi("stand", flip=True, 180, 400) + # Floor R: call ton_chibi("stand", flip=True, 230, 370) + # Podium: call ton_chibi("stand", flip=True, 300, 400) + # Sitting: call ton_chibi("sit", flip=True, xpos=-140, ypos=125) + + ### Cho Positions ### + ## Flying Sprite: call cho_main(xpos=580, ypos=-200) + # Flying Chibi: call cho_chibi("fly", 530, 360) + + $ snape_chibi.zorder = 2 + $ hermione_chibi.zorder = 3 + $ genie_chibi.zorder = 4 + + # Match starts + play bg_sounds "sounds/crowd.ogg" fadein 2 + call hide_blkfade + pause 1 + + call play_sound("footsteps") + pause .8 + + call sna_chibi("stand", 120, 295, flip=True) + with d3 + pause .8 + call sna_chibi("stand", flip=False) + with d3 + + sna "Careful at the top. Don't hit your head." ("snape_35", ypos="head") + call play_sound("kick") + with hpunch + pause .6 + gen "Bloody hell!" ("angry", xpos="far_left", ypos="head") + call play_sound("footsteps") + pause .8 + call gen_chibi("stand", 20, 365, flip=True) + with d3 + pause .5 + call sna_chibi("stand", flip=True) + with d3 + sna "Well, here we are..." ("snape_09") + sna "Now we are only waiting for--" ("snape_03") + call play_sound("footsteps") + call her_chibi("stand", 40, 295, flip=True) + with d3 + pause .5 + call sna_chibi("stand", flip=False) + with d3 + pause .2 + her "Professors." ("open", "closed", "base", "mid", ypos="head", flip=True) + sna "Granger..." ("snape_35") + call sna_chibi("stand", flip=True) + with d3 + pause .2 + + call her_walk(path=[(180, 400),(300, 400)]) + call her_chibi("stand", 300, 400, flip=True) # Temp Bugfix + pause .5 + + her "Good Morning everyone, and welcome to the i-inaugural--" ("soft", "base", "worried", "mid", flip=True, xpos=290, ypos="base", trans=d3) + her "" ("normal", "base", "worried", "mid") + sna "Speak up girl! And would it kill you to enunciate?!" ("snape_03", ypos="head") + her "*Grrr*" ("mad", "narrow", "angry", "R") + her "" ("open", "closed", "angry", "mid") + her "Welcome to the first Quidditch game of the season...{fast}" ("open", "base", "worried", "mid") + + call quidditch_stands(crowd=crowd_full) + with d5 + sna "Better... You've advanced from Troll to Dreadful..." ("snape_09", ypos="head") + her "" ("normal", "closed", "base", "mid") + gen "{size=-4}Troll?{/size}" ("base", xpos="far_left", ypos="head") + sna "{size=-4}Those are grades we give out to our students, for decidedly poor performances, like Granger's...{/size}" ("snape_01", ypos="head") + her "..." ("mad", "base", "angry", "mid") + with hpunch + + stop bg_sounds fadeout 4 + + her "{size=+5}Quiet Please!{/size}" ("scream", "base", "angry", "mid") + her "..." ("normal", "closed", "angry", "mid") + + play bg_sounds "sounds/crowd_low.ogg" fadein 2 + + her "Thank you..." ("open", "happy", "base", "mid_soft") + her "L-let's begin!" ("base", "base", "base", "mid") + + play music "music/machinations-by-kevin-macleod.ogg" fadein 1 fadeout 1 + + her "Hufflepuff versus Ravenclaw!" ("smile", "base", "base", "mid_soft") + + call quidditch_stands(crowd_react=["emo8", "emo7", "emo8"]) + with d3 + + $ renpy.sound.play("sounds/crowd_cheer.ogg") + ">A loud cheer roars from the grandstands." + + # Speech + her "And now, to say a few words and declare the games open, Professor Dumbledore!" ("open", "closed", "base", "mid") + her "" ("base", "base", "base", "mid_soft") + call ctc + + hide hermione_main + with d3 + + gen "{size=-4}What? Isn't that me?{/size}" ("base", xpos="far_left", ypos="head") + sna "It is." ("snape_02", ypos="head") + + call quidditch_stands(crowd_react=[None, "emo7", "emo8"]) + with d3 + + gen "Why did no one warn me about this?" ("base", xpos="far_left", ypos="head") + + call quidditch_stands(crowd_react=[None, None, "emo8"]) + with d3 + + sna "I've been looking forward to watching you bumble your way through this..." ("snape_22", ypos="head") + + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + sna "Besides, you only have to give some trivial speech about team spirit, gesticulate wildly and say \"let the games begin\". A child could manage it." ("snape_24", ypos="head") + sna "Now get up there!" ("snape_10", ypos="head") + + stop bg_sounds fadeout 4 + stop music fadeout 2 + + $ hermione_chibi.zorder = 4 + $ genie_chibi.zorder = 3 + #call her_chibi("stand",350,185+186, flip=True) + call her_chibi("stand", 260, 460, flip=True) + with d3 + pause .5 + + call gen_chibi("stand", 65, 340, flip=True) + with d3 + + call gen_walk(path=[(170, 400),(280, 400)]) + call gen_chibi("stand", 280, 400, flip=True) # Temp Bugfix + with d3 + pause .5 + + $ genie_zorder = 15 + + show screen blktone + with d5 + pause 1.0 + gen "" ("base", xpos=0, ypos="base") + show genie zorder genie_zorder + with d3 + pause 2.0 + + gen "" ("angry") + + menu: + "(Shit, what do I even talk about?)" + "-Miracles-": + play bg_sounds "music/fanfare.ogg" fadein 1.0 + gen "Great moments are born from great opportunity." ("base") + ">A reverent hush falls over the crowd..." + gen "And that's what you have here tonight--" ("base") + gen "That's what you've earned here tonight!" ("base") + + pause .8 + $ renpy.sound.play("sounds/killswitch_on.ogg") + hide screen blktone + call quidditch_stands(spotlight=True) + with d1 + pause .8 + + show genie zorder genie_zorder + with d3 + gen "One game..." ("base") + gen "Tonight, WE are the greatest hockey team in the world!" ("base") + gen "You were born to be hockey players..." ("base") + gen "Every one of you..." ("base") + + call quidditch_stands(crowd_react=["emoq", None, None]) + with d3 + + gen "And you were meant to be here tonight!" ("base") + gen "This is your time..." ("base") + + gen "Their time is done, it's over! I'm sick and tired of hearing what a great hockey team the soviets have!" ("base") + + call quidditch_stands(crowd_react=["emoq", "qu", None]) + with d3 + pause 1.5 + + mal "I think Dumbledore has finally started to lose his marbles..." + mal2 "I think you might be right." + play bg_sounds "sounds/wind_long_loop.ogg" fadein 2 fadeout 2 + + call quidditch_stands(crowd_react=["sur", None, None]) + with d3 + + gen "Screw it! This is our time..." ("base") + + call quidditch_stands(crowd_react=["sal", None, None]) + with d3 + + mal "..." + $ renpy.sound.play("sounds/cough_male.ogg") + call quidditch_stands(crowd_react=["sal", "sal", None]) + with d3 + + mal2 "..." + call quidditch_stands(crowd_react=[None, None, None], spotlight=False) + with d1 + + $ renpy.sound.play("sounds/killswitch_off.ogg") + gen "Now let the games begin!" ("base") + + "-Freedom-": + play bg_sounds "music/fanfare.ogg" fadein 1.0 + gen "Sons of Scotland!" ("base") + + pause .8 + $ renpy.sound.play("sounds/killswitch_on.ogg") + hide screen blktone + call quidditch_stands(spotlight=True) + with d1 + pause .8 + + gen "I am William Wallace..." ("base") + + call quidditch_stands(crowd_react=["qu", None, None]) + with d3 + + ">A confused murmur falls over the crowd." + sna "{size=-4}William Wallace?{/size}" ("snape_05", ypos="head") + gen "{size=-4}That's not your line...{/size}" ("angry") + gen "Yes... I am William Wallace!" ("grin") + gen "And I see a whole army of my countrymen, here in the defiance of tyranny..." ("grin") + gen "You have come to fight as free men, and free men you are. What would you do with that freedom? Will you fight?" ("grin") + + $ renpy.sound.play("sounds/murmur.ogg") + call quidditch_stands(crowd_react=["qu", "emoq", None]) + with d3 + + ">The sound of confused murmuring increases even further..." + mal "Fight? Against what?" + gen "{size=-4}See, that guy knows his lines...{/size}" ("base") + sna "..." ("snape_03") + gen "Aye... fight and you may die." ("base") + + call sna_chibi("stand", 230, 400, flip=True) + with d3 + pause .2 + + sna "I think it's time for you to step down from the..." ("snape_01") + gen "No, I'm just about to get to the best part!" ("angry") + $ renpy.sound.play("sounds/cloth_sound.ogg") + stop bg_sounds fadeout 2.0 + + hide genie + call sna_chibi("stand", 210, 400, flip=True) + call gen_chibi("stand", 260, 400, flip=True) + with d3 + + ">Snape then begins to drag you away from the podium." + play bg_sounds "sounds/wind_long_loop.ogg" + + show genie zorder genie_zorder + with d3 + gen "This is our chance... they may take away our microphones...{w=1.0} But they...{nw}{w=0.3}" ("angry") + $ renpy.sound.play("sounds/microphone_feedback.ogg") + + call sna_chibi("stand", 230, 400, flip=True) + call gen_chibi("stand", 280, 400, flip=True) + with d3 + + gen "This is our chance... they may take away our microphones...{w=1.0} But they... {fast}But they...{w=0.5}{nw}" ("angry") + + call sna_chibi("stand", 190, 400, flip=True) + call gen_chibi("stand", 240, 400, flip=True) + with d3 + + gen "But they'll never take away our freedom!" ("angry") + + hide genie + call quidditch_stands(crowd_react=[None, None, None], spotlight=False) + with d3 + + $ renpy.sound.play("sounds/killswitch_off.ogg") + + $ snape_chibi.zorder = 3 + $ genie_chibi.zorder = 2 + call sna_chibi("stand", 170, 400, flip=True) + call gen_chibi("stand", 240, 400, flip=False) + with d3 + + "-Nam-": + play bg_sounds "sounds/wind_long_loop.ogg" + + pause .8 + $ renpy.sound.play("sounds/killswitch_on.ogg") + hide screen blktone + call quidditch_stands(spotlight=True) + with d1 + pause .8 + + gen "{cps=7}Goooooooood{/cps} morning,{w=0.1} Vietnam!" ("grin") + gen "Hey, this is not a test... This is rock and roll!" ("grin") + gen "Time to rock it from the delta to the DMZ!" ("grin") + gen "Is that me, or does that sound like an Elvis Presley movie?" ("grin") + + call quidditch_stands(crowd_react=["sal", "emoq", None]) + with d3 + + ">A confused murmur falls over the crowd." + gen "Ugh..." ("base") + + $ renpy.sound.play("sounds/microphone_feedback.ogg") + gen "Is this thing on?" ("base") + + call quidditch_stands(crowd_react=["sal", "sal", None]) + with d3 + $ renpy.sound.play("sounds/cough_male.ogg") + mal "..." + + call quidditch_stands(crowd_react=["emoq", "qu", None]) + with d3 + + gen "It's O six hundred, what does the O stand for?" ("grin") + gen "Ooooh my god it's early!" ("grin") + + $ renpy.sound.play("sounds/murmur.ogg") + ">The sound of confused murmuring increases even further..." + mal "What's he on about? Is the fire lit but the cauldron empty?" + mal2 "Looks like it..." + + call quidditch_stands(crowd_react=[None, None, None], spotlight=False) + with d1 + + $ renpy.sound.play("sounds/killswitch_off.ogg") + + gen "Tough crowd... Anyway, let the games begin!" ("base") + + hide genie + with d3 + + play music "music/machinations-by-kevin-macleod.ogg" fadein 1 fadeout 1 + + play bg_sounds "sounds/crowd_low.ogg" fadein 3 fadeout 2 + play sound "sounds/crowd_cheer.ogg" + call quidditch_stands(crowd_react=["emo8", "emo7", "emo8"]) + with d3 + + ">After a moment of confusion the crowd cheers excitedly, eager to see the match kick-off." + + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + call gen_walk(path=[(170, 400),(65, 340)]) + + $ snape_chibi.zorder = 2 + $ genie_chibi.zorder = 3 + call gen_chibi("stand", 20, 365, flip=True) + call sna_chibi("stand", 120, 295, flip=True) + with d5 + pause .2 + + # Hermione commentates again + $ hermione_chibi.zorder = 3 + call her_chibi("stand", 300, 400, flip=True) + with d3 + pause .8 + + her "Ugh... thank you for that, professor Dumbledore..." ("soft", "narrow", "base", "R_soft", flip=True, xpos=290, ypos="base", trans=d3) + her "Now, to get this game underway!" ("open", "closed", "base", "mid") + + # Player introduction + her "First, let's welcome everyone's favourite underdogs, Ravenclaw!" ("base", "happy", "base", "R") + $ renpy.sound.play("sounds/crowd_stomping.ogg") + call quidditch_stands(crowd_react=["emo8", "emo7", None]) + with d3 + + her "" ("base", "base", "base", "mid") + ">The blue grandstand shakes violently with enthusiasm." + sna "At least try to sound like you're awake, Miss Granger." ("snape_03", ypos="head") + her "..." ("normal", "closed", "angry", "mid", cheeks="blush") + + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + her "And coming onto the field to face them are the equally impressive, Hufflepuff!" ("open", "base", "base", "mid", cheeks="blush") + $ renpy.sound.play("sounds/crowd_cheer2.ogg") + + call quidditch_stands(crowd_react=[None, None, "emo8"]) + with d3 + + her "" ("base", "base", "base", "mid", cheeks="blush") + ">The yellow grandstand bursts into a mix of applause and whistles." + hide hermione_main + with d3 + sna "Back down to Troll..." ("snape_09", ypos="head") + + call her_chibi("stand", flip=False) + with d3 + pause .1 + + her "*grrrrr*" + + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + call her_chibi("stand", flip=True) + with d3 + pause .1 + + her "It appears we've got an interesting game ahead of us." ("open", "base", "base", "mid", flip=True, xpos="290", ypos="base", trans=d3) + her "If I'm not mistaken, there's some history between our seekers, Cho Chang and Cedric Diggory..." ("crooked_smile", "closed", "base", "mid") + her "" ("smile", "happy", "base", "mid_soft") + ">Even though they are far down below on the pitch, you can clearly see Cho and Cedric glaring up at Hermione." + her "Given how essential the seeker's role is in Quidditch, their complex past might cost one of them the game..." ("open", "base", "base", "mid_soft") + sna "Complex past..." ("snape_01", ypos="head") + her "" ("base", "closed", "base", "mid") + sna "I practically caught them chewing each other's tongues off at one point." ("snape_02", ypos="head") + her "But before we begin, I just realised that as the inaugural game, I should cover the rules of the game for any first-years watching." ("open", "happy", "base", "R") + + # Reading the rules + stop music fadeout 4 + stop bg_sounds fadeout 2 + hide hermione_main + with d3 + ">Hermione heaves a heavy rulebook{nw}" + $ renpy.sound.play("sounds/punch01.ogg") + ">Hermione heaves a heavy rulebook{fast} from under the table and begins to monotonously recite it to the crowd." + $ renpy.sound.play("sounds/sniff.ogg") + her "..." + play bg_sounds "sounds/wind_long_loop.ogg" fadein 2 + her "The capturing of the snitch is worth 150 points--" ("open", "narrow", "base", "down", flip=True, xpos="290", ypos="base", trans=d3) + + call quidditch_stands(crowd_react=["th", None, None]) + with d3 + $ renpy.sound.play("sounds/murmur.ogg") + + her "The game may not conclude until it has been caught, or an agreement is made between both capt--" ("open", "base", "base", "mid") + + call quidditch_stands(crowd_react=["th", "an", None]) + with d3 + play bg_sounds "sounds/crowd.ogg" fadein 8 fadeout 2 + hide hermione_main + with d3 + + mal "Just get on with it already you big-titted slag!" + + call quidditch_stands(crowd_react=["th", "an", "excl"]) + with d3 + + mal2 "Yeh! Start the game!" + qcr "START THE GAME! START THE GAME!" + ">Hermione's voice eventually gets drowned out by the growing restlessness of the crowd." + her "" ("normal", "base", "base", "mid", xpos="290", ypos="base", flip=True) + her "Ugh, fine...{w=0.3} If everyone wants us to begin play without knowing {b}a single thing{/b}...{w=0.8} then that's {b}OK!{/b}" ("annoyed", "narrow", "annoyed", "R", trans=d3) + her "A good commentator knows when to accommodate for a crowd's impatience!" ("soft", "closed", "base", "mid") + hide hermione_main + with d3 + sna "{size=-4}This should be good.{/size}" ("snape_02", ypos="head") # Small text. + + $ renpy.sound.play("sounds/crowd_cheer.ogg") + call quidditch_stands(crowd_react=["emo8", "emo7", "emo8"]) + with d3 + + ">With that, the snitch and bludgers are released and fly off into the air." + + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + play bg_sounds "sounds/crowd_low.ogg" fadein 0.5 fadeout 0.5 + her "Now then..." ("open", "closed", "base", "mid", cheeks="blush", flip=True, xpos="290", ypos="base", trans=d3) + her "Let's begin!" ("base", "happy", "base", "mid_soft", cheeks="blush") + hide hermione_main + with d3 + pause .1 + + # Start of the game + $ renpy.sound.play("sounds/referee.ogg") + play music "music/machinations-by-kevin-macleod.ogg" fadein 1 fadeout 1 + ">A Grey haired woman then throws the quaffle into the air -- which signals the start of the match -- and the players quickly take off!" + + her "Oh, wow... They're going quite f-fast..." ("normal", "wide", "worried", "shocked", flip=True, xpos="290", ypos="base", trans=d3) + her "" ("normal", "happyCl", "base", "mid") + sna "Great commentary there girl... You might want to let them know the colour of the grass next..." ("snape_10", ypos="head") + $ renpy.sound.play("sounds/ball_hit.ogg") + her "Um, I'm not sure if anyone's scored yet..." ("normal", "happy", "base", "mid") + her "Wait, that guy has the quaffle... I think..." ("open", "squint", "base", "mid") + her "Scratch that last bit, he has a stick so he must be a beater!" ("mad", "happy", "base", "mid") + sna "{size=-4}Good grief...{/size}" ("snape_05", ypos="head") + + pause .5 + + her "Higher up, Cho seems to have caught an eye on the snitch and is chasing after it, directly followed by Cedric who..." ("open", "slit", "low", "stare", flip=True) + her "Hold on a minute... Is Cho wearing a skirt?" ("scream", "wide", "worried", "stare") + + show image "CG quidditch cho_flashing" as cg zorder 17 + with fade + + $ renpy.sound.play("sounds/crowd_gasp.ogg") + call quidditch_stands(crowd_react=["emo02", "excl", "sur"]) + with d3 + + call ctc + + her "" ("open", "wide", "worried", "shocked", cheeks="blush") + qcr "!!!" # [screenshake?] + play bg_sounds "sounds/crowd.ogg" fadein 2 + mal "..." + $ renpy.sound.play("sounds/murmur.ogg") + her "" ("open", "happyCl", "base", "mid", cheeks="blush") + mal "She totally is!" + $ renpy.sound.play("sounds/giggle2_loud.ogg") + hide hermione_main + with d3 + fem "What a slut!" ("base", xpos="far_left", ypos="head") + call ctc + + # Pack to stands. + hide image cg + with fade + pause .1 + + call her_chibi("stand", flip=False) + with d3 + pause .3 + + her "Professor, why won't you say something?{w=0.8} She's clearly breaking the very basics of Quidditch rules!" ("clench", "narrow", "angry", "mid", ypos="head", flip=False) + gen "I fail to see anything wrong with the way she's dressed." ("base", xpos="far_left", ypos="head") + her "But... she's wearing a skirt!" ("clench", "wide", "base", "stare", cheeks="blush") + her "Surely that must be against some kind of regulation..." ("annoyed", "narrow", "angry", "mid") + gen "You tell me Miss Granger, you've got the rulebook right there..." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_13", ypos="head") + her "Perhaps I could get Madame Hooch to pause the game..." ("open", "closed", "annoyed", "mid") + pause .1 + + call her_chibi("stand", flip=True) + with d3 + pause .3 + + sna "Knowing her, she's probably enjoying the sight of the Ravenclaw seeker rushing past her." ("snape_20", ypos="head") + sna "{size=-4}Odds are she's already tried to take a peek.{/size}" ("snape_20", ypos="head") + gen "{size=-4}Who's Madame Hooch?{/size}" ("base", xpos="far_left", ypos="head") + sna "{size=-4}It's that fit lady on the pitch who is seemingly unable to take her eyes off the underside of miss Chang's... undergarments.{/size}" ("snape_09", ypos="head") + sna "{size=-4}Great idea with the skirt, if I might add.{/size}" ("snape_13", ypos="head") + gen "{size=-4}You're welcome.{/size}" ("base", xpos="far_left", ypos="head") + sna "..." ("snape_12", ypos="head") + $ renpy.sound.play("sounds/ball_hit.ogg") + sna "{size=-4}She is wearing something underneath I assume?{/size}" ("snape_13", ypos="head") + gen "For now..." ("base", xpos="far_left", ypos="head") + sna "Excellent..." ("snape_22", ypos="head") + + $ renpy.sound.play("sounds/wolf_whistle.ogg") + + call quidditch_stands(crowd_react=["emo8", "excl", "sur"]) + with d3 + + mal "Cho, show us your panties!" + + $ renpy.sound.play("sounds/giggle2_loud.ogg") + call quidditch_stands(crowd_react=["emo8", "emo7", "sur"]) + with d3 + + fem "We want to see them!" ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/crowd_cheer.ogg") + call quidditch_stands(crowd_react=["emo8", "emo7", "emo8"]) + with d3 + + # Back to commentating + play music "music/machinations-by-kevin-macleod.ogg" fadein 1 fadeout 1 + play bg_sounds "sounds/crowd_low.ogg" fadein 0.5 fadeout 0.5 + her "..." ("normal", "squint", "angry", "mid", flip=True, xpos="290", ypos="base", trans=d3) + her "Oh, apparently Ravenclaw scored during that... \"captivating\" bit of distraction..." ("open", "narrow", "annoyed", "mid") + gen "Sarcasm much?" ("grin", xpos="far_left", ypos="head") + her "" ("normal", "closed", "base", "mid") + sna "..." ("snape_13", ypos="head") + her "I think it's 10-20!" ("open", "happy", "base", "mid") + her "Or is that 20-10... I'm not sure, aren't they both home teams...?" ("annoyed", "squint", "base", "mid") + sna "Surely you must have learnt how to read by now, Miss Granger?" ("snape_03", ypos="head") + + $ renpy.sound.play("sounds/ball_hit.ogg") + call quidditch_stands(crowd_react=["emo8", "emo7", None]) + with d3 + + her "Hey! I have excellent reading skills, I'll have you know..." ("mad", "narrow", "angry", "R") + $ renpy.sound.play("sounds/crowd_cheer2.ogg") + + her "..." ("normal", "closed", "angry", "mid") + + call quidditch_stands(crowd_react=["emo8", None, None]) + with d3 + + her "Wait, now it's... 20-30... I think..." ("annoyed", "happy", "base", "mid") + $ renpy.sound.play("sounds/murmur.ogg") + call quidditch_stands(crowd_react=["th", None, None]) + with d3 + + mal "Has this girl ever commentated even once in her life?" + + call quidditch_stands(crowd_react=["th", "th", None]) + with d3 + + mal2 "She can't help herself answering questions in class..." + mal2 "I suppose the rulebook was more for her benefit than ours." + + #call quidditch_stands(crowd_react=["th", "th", "emo3"]) # emo3 image is missing? + call quidditch_stands(crowd_react=["th", "th", None]) # Temp fix, use above line. + with d3 + + her "" ("annoyed", "closed", "base", "mid") + mal "Then how'd she get the role over Lee Jordan?" + mal2 "I heard he had an accident with a rogue bludger." + $ renpy.sound.play("sounds/cough_male.ogg") + mal "..." + her "Wow... that snitch is darting around like nobody's business--" ("base", "base", "base", "mid") + + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + hide hermione_main + with d3 + pause .1 + + # Genie and Snape get drunk + sna "Fancy a glass of wine then?" ("snape_02", ypos="head") + gen "Don't mind if I do... Something to distract me from this... bizarre game..." ("base", xpos="far_left", ypos="head") + pause .5 + call play_sound("bottle") + pause .8 + + sna "{size=-4}I don't care much for the game myself...{/size}" ("snape_09", ypos="head") + sna "{size=-4}Although, there is a special place in my heart for watching the bludgers catch a student...{/size}" ("snape_02", ypos="head") + gen "{size=-4}Blubbers?{/size}" ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/ball_hit.ogg") + sna "{size=-4}Bludgers... See those cannonball looking things whizzing around?{/size}" ("snape_03", ypos="head") + gen "{size=-4}Oh... The ones those boys are whacking at?{/size}" ("base", xpos="far_left", ypos="head") + sna "{size=-4}Right... Well, we enchant them to go after the students while they play.{/size}" ("snape_23", ypos="head") + gen "{size=-4}I see... {/size}{w}{nw}" ("base", xpos="far_left", ypos="head") + gen "{size=-4}I see... {fast}Wait, Really? Why?{/size}" ("angry", xpos="far_left", ypos="head") + sna "{size=-4}Makes things more interesting doesn't it!{/size}" ("snape_02", ypos="head") + gen "{size=-4}So what happens when they hit their target?{/size}" ("base", xpos="far_left", ypos="head") + sna "{size=-4}Generally it's just a concussion... Though sometimes they fall pretty far, that's always entertaining.{/size}" ("snape_20", ypos="head") + + with hpunch + $ renpy.sound.play("sounds/punch02.ogg") + her "..." ("normal", "wide", "base", "stare", flip=True, xpos="290", ypos="base", trans=d1) + + $ renpy.sound.play("sounds/crowd_ouch.ogg") + call quidditch_stands(crowd_react=["sur", "emo02", "excl"]) + with d3 + + her "Oh no!" ("clench", "happyCl", "worried", "mid") + sna "{size=+4}HA-HA-HA-HA!!{/size}" ("snape_28", ypos="head") + her "Somebody on the Ravenclaw team just got hit by a bludger!" ("open", "base", "worried", "L") + gen "What an amazing turn of events!" ("grin", xpos="far_left", ypos="head") + sna "See, I told you!" ("snape_22", ypos="head") + hide hermione_main + with d3 + pause .1 + + call her_chibi("stand", flip=False) + with d3 + pause .1 + + call quidditch_stands(crowd_react=["sur", "emo02", None]) + with d3 + + her "Professors, could you please keep it down a little?" ("normal", "base", "angry", "mid", ypos="head", flip=False) + sna "Why? It's not like we're interrupting anything important." ("snape_18", ypos="head") + + call quidditch_stands(crowd_react=["sur", None, None]) + with d3 + + her "I'm trying to commentate the game!" ("mad", "squint", "angry", "mid") + + $ renpy.sound.play("sounds/ball_hit.ogg") + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + sna "Yes, and I was starting to enjoy it. You are missing most of it by the way..." ("snape_20", ypos="head") + her "As a result of your yelling!" ("scream", "closed", "angry", "mid") + her "" ("normal", "closed", "angry", "mid") + sna "Eyes forward... girl." ("snape_13", ypos="head") + her "*Grrrrr*" ("clench", "narrow", "angry", "mid") + pause .1 + + call her_chibi("stand", flip=True) + with d3 + pause .1 + + ">Hermione's eyes briefly meet with yours as if she can't believe you're letting Snape talk to her that way." + sna "{size=-4}As I was saying... They're the only reason I watch the bloody thing. Now, mind if I top that one off for you?{/size}" ("snape_20", ypos="head") + + $ renpy.sound.play("sounds/crowd_cheer.ogg", fadein=3) + call quidditch_stands(crowd_react=["th", None, "emo8"]) + with d3 + + her "So, I think... that Hufflepuff just scored another goal? They might even be unstoppable at this point!" ("open", "base", "base", "L", flip=True, xpos="290", ypos="base", trans=d3) + + # Fade to black + stop bg_sounds fadeout 4 + stop music fadeout 4 + show screen blkfade + with d5 + pause .3 + + hide hermione_main + call quidditch_stands(crowd_react=[None, None, None]) + ">You and Snape lean back and watch the game, frequently shifting your focus to Cho, as she darts past the stands..." + ">Only Occasionally pausing to refill your wine, while Snape keeps ridiculing Hermione's commentary..." + + # End of game + play bg_sounds "sounds/crowd_low.ogg" fadein 2 + $ renpy.sound.play("sounds/referee.ogg") + pause 1.0 + her "What was that?{w=0.5} Did somebody do a foul?" # intentional 'do' + pause .5 + + call hide_blkfade + pause .1 + + #"You see Cho flying over to the commentator booth glaring at Hermione with a look of pure hatred." + + # Transition to Cho on her broom + $ cho.set_pose("broom") + $ cho.animation = [sprite_fly_idle] + + call cho_chibi("fly", 1100, 140) + call cho_walk(530, 360, speed=2) + pause 1.5 + + her "" ("annoyed", "base", "annoyed", "L", flip=True, xpos="290", ypos="base") + cho "Hey, Granger!" ("open", "narrow", "angry", "L", xpos=580, ypos=-200, trans=d3) + her "What do you want?{w=0.6} Shouldn't you be busy with,{w=0.8} I don't know..." ("open", "base", "angry", "mid", trans=d3) + cho "" ("annoyed", "narrow", "raised", "L") + her "playing the game?" ("smile", "closed", "base", "mid") + cho "The game is over, you dipstick!" ("scream", "narrow", "angry", "L") + cho "" ("mad", "narrow", "angry", "L") + her "What? Already?" ("shock", "wide", "worried", "stare") + her "But who caught the Snitch?" ("open", "wide", "base", "stare") + cho "" ("upset", "narrow", "angry", "L") + + #TODO: Draw the arm. + + #$ cho.set_body(armright="snitch") + with d3 + ">Cho waves the snitch in front of her." + her "" ("mad", "wide", "worried", "shocked") + #$ cho.set_body(armright="down") + + cho "My first ever win this season, and you didn't even notice it!" ("clench", "closed", "angry", "mid") + cho "No one did, thanks to your dreadful commentating!" ("scream", "narrow", "angry", "L") + cho "" ("mad", "narrow", "angry", "L") + her "Oh..." ("normal", "wide", "worried", "shocked") + her "So should I announce it now?" ("open", "happyCl", "worried", "mid") + sna "Obviously--" ("snape_12", ypos="head") + cho "{size=+10}YES!{/size}" ("scream", "closed", "angry", "mid", trans=vpunch) + her "" ("normal", "base", "annoyed", "L") + cho "{size=+6}WHAT ARE YOU EVEN WAITING FOR?{/size}" ("clench", "narrow", "angry", "L", trans=hpunch) + her "Don't scream at me like that, {b}bitch!{/b}" ("scream", "base", "angry", "mid", trans=hpunch) + her "" ("normal", "base", "angry", "mid") + cho "{size=+6}WHAT DID YOU JUST CALL ME?!!!{/size}" ("scream", "wide", "angry", "L", trans=vpunch) + cho "" ("clench", "wide", "angry", "L") + her "Everyone, Ravenclaw wins!" ("grin", "happy", "base", "mid_soft") + cho "" ("annoyed", "narrow", "angry", "L") + her "Cho Chang managed to catch the snitch..." ("smile", "happyCl", "base", "mid") + her "With the help of her ridiculously short skirt!" ("crooked_smile", "base", "angry", "mid") + #cho "{size=+10}!!!{/size}" ("clench", "closed", "angry", "mid") + hide hermione_main + with d3 + cho "" ("normal", "wide", "base", "L", cheeks="heavy_blush") + + play bg_sounds "sounds/crowd.ogg" fadein 1 fadeout 1 + $ renpy.sound.play("sounds/crowd_applause.ogg") + call quidditch_stands(crowd_react=["emo8", "emo7", "emo7"]) + hide hermione_main + hide screen bld2 + with d3 + call ctc + + cho "" ("quiver", "base", "worried", "downR", cheeks="blush") + ">Hermione's commentating is drowned out by the sound of the Ravenclaw grandstand cheering." + cho "{size=+6}You are done, Granger!{/size}" ("scream", "closed", "angry", "L", cheeks="blush") + hide cho_main + with d3 + pause .1 + + call cho_walk(1200, 500+180, speed=2) + pause 2 + $ cho.animation = [] + $ cho.set_pose(None) + call cho_chibi("reset") + + # Outro + gen "This isn't such a bad game after all." ("base", xpos="far_left", ypos="head") + sna "I *hick* told you... so..." ("snape_22", ypos="head") + gen "Just bring more wine next time!" ("base", xpos="far_left", ypos="head") + sna "M-More?!" ("snape_20", ypos="head") + gen "Or at least share more of it with me!" ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/glass_shatter.ogg") + sna "Get your own, magic man!" ("snape_21", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + + # Blackfade + stop bg_sounds fadeout 4 + show screen blkfade + with d5 + + ">Snape wanders off in a drunken stupor..." + pause .5 + call play_sound("grass") + ">You hurry back to your office before giving anyone a chance to talk to you." + + $ game.daytime = False + call update_interface_color + call room("main_room") + call gen_chibi("hide") + call hide_blkfade + pause 1.0 + + call play_sound("door") + call gen_chibi("stand", "door", "base", flip=False) + with d3 + pause 0.3 + + call bld + gen "I'm hom--" ("base", xpos="far_left", ypos="head") + gen "Dammit, I almost said that!" ("angry", xpos="far_left", ypos="head") + gen "Anyway, I'm beat, time to hit the hay." ("base", xpos="far_left", ypos="head") + + call gen_walk("desk", "base") + with d3 + #pause .5 + + # Fade to black + show screen blkfade + with d9 + pause .5 + + call gen_chibi("sit_behind_desk") + with fade + + # Reset + $ hermione.equip(her_outfit_last) # Equip player outfit. + $ cho.equip(cho_outfit_last) # Equip player outfit. + + jump hufflepuff_match_return + + +label hufflepuff_match_return: + # Cho returns after winning the Quidditch match. + # She's outraged about Hermione. + # Demands that you will find somebody to replace her. + + # The office, evening after the game + $ game.daytime = False + call update_interface_color + + call play_music("stop") + call room("main_room") + + $ cho_outfit_last.save() + + $ cho.equip(cho_outfit_quidditch) + + call music_block + hide screen blkfade + with d9 + pause 0.8 + + call bld + $ renpy.sound.play("sounds/snore1.ogg") + gen "*Snore*{w=2.0}{nw}" ("base", xpos="far_left", ypos="head") + pause 1.0 + $ renpy.sound.play("sounds/snore3.ogg") + gen "*Sn{cps=8}oooooooreeee*{/cps}{w=2.0}{nw}" ("base", xpos="far_left", ypos="head") + pause 1.0 + $ renpy.sound.play("sounds/snore2.ogg") + gen "......{w=0.5}*Snore*{w=1.0}{nw}" ("base", xpos="far_left", ypos="head") + stop music fadeout 6.0 + call cho_walk("desk", "base", action="enter") + + $ renpy.sound.play("sounds/punch01.ogg") + cho "We beat Hufflepuff!!!" ("silly", "happyCl", "base", "mid", xpos="mid", ypos="base", trans=hpunch) + $ renpy.sound.play("sounds/MaleGasp.ogg") + gen "{size=+10}IT WASN'T ME!{/size}" ("angry", xpos="far_left", ypos="head") + gen "..........." ("base", xpos="far_left", ypos="head") + cho "*huh*?{w=0.5} Are you okay, [cho_genie_name]?" ("soft", "narrow", "base", "mid") + gen "Wha--" ("base", xpos="far_left", ypos="head") + gen "Of course I am!" ("angry", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "raised", "R") + cho "If you say so..." ("annoyed", "narrow", "base", "mid") + call play_music("cho") + cho "I can't believe that we've broken our six year dry streak and won a real game!" ("smile", "happyCl", "base", "mid") + cho "We could actually win the cup!" ("open", "wide", "base", "mid") + gen "And you weren't embarrassed?" ("base", xpos="far_left", ypos="head") + cho "I was a little at the start of the game..." ("quiver", "narrow", "worried", "downR", cheeks="blush") + cho "But once I realised how much it was affecting those slack-jawed Hufflepuffs..." ("smile", "narrow", "angry", "R") + cho "It was like having my own personal weapon of mass distraction!" ("smile", "wide", "angry", "mid") + cho "I don't think Cedric even knew where the snitch was most of the time!" ("horny", "base", "base", "downR", cheeks="blush") + cho "All he seemed to do was follow me around..." ("horny", "narrow", "worried", "down", cheeks="blush") + cho "Him {size=-2}and {size=-2}half {size=-2}the {size=-2}team...{/size}{/size}{/size}{/size}" ("quiver", "narrow", "worried", "downR", cheeks="heavy_blush") + cho "This might be the first real chance Ravenclaw has ever had to win the cup." ("open", "closed", "worried", "mid") + gen "I'm sure this must mean a lot to you..." ("base", xpos="far_left", ypos="head") + cho "It does... I might even get picked up by a pro team!" ("smile", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + cho "*Ahh*{w=0.3} I can't wait!" ("silly", "happyCl", "base", "mid") + cho "I better go celebrate with the team now!" ("clench", "wide", "base", "mid") + gen "Well, off you go then." ("base", xpos="far_left", ypos="head") + cho "Thank you [cho_genie_name]..." ("smile", "wink", "base", "mid") + # + # TODO: Add panty flash in form of a reward/tease + # + # cho "But before I go..." # blushes + # (flashes panties) + # gen "!!!" ("angry", xpos="far_left", ypos="head") + # (equips skirt again) + # cho "I gotta go." + # starts walking out of the office + # gen "Hey but I ha--" ("base", xpos="far_left", ypos="head") + # (cho leaves) + # gen "Oh well.. At least I caught a glimpse of the goodies." ("base", xpos="far_left", ypos="head") + + call cho_walk(action="leave") + + stop music fadeout 1.0 + call unlock_clothing(text=">New clothing items for Cho have been unlocked!", item=cho_outfit_cheerleader) + call popup("New favours for Cho have been unlocked!", "Congratulations!", "interface/icons/head/cho.webp") + + $ hermione_busy = True + $ snape_busy = True + + # Reset Cho + $ cho.equip(cho_outfit_last) + + $ cho_tier = 2 + $ cho_favors_unlocked = False + $ cho_requests_unlocked = False + $ cho_quid.lock_training = False + $ cho_quid.lock_practice = True + $ cho_quid.lock_tactic = False + $ hufflepuff_match = "completed" + call update_cho_favors + + jump end_cho_event diff --git a/game/scripts/characters/cho/events/quidditch/hufflepuff_practice.rpy b/game/scripts/characters/cho/events/quidditch/hufflepuff_practice.rpy new file mode 100644 index 00000000..5eb0e6f2 --- /dev/null +++ b/game/scripts/characters/cho/events/quidditch/hufflepuff_practice.rpy @@ -0,0 +1,177 @@ + + +# Started first training match against Hufflepuff + +label cc_ht_start: + + cho "" ("base", "base", "base", "mid", xpos="right", ypos="base", trans=fade) + + # First Hufflepuff match. + gen "Ready to show off your panties to those badgering badgers?" ("base", xpos="far_left", ypos="head") + + if game.weather in ("blizzard", "storm", "snow", "rain"): + cho "In this weather? But I'll freeze my legs off if I'm to wear a skirt..." ("clench", "base", "base", "R") + cho "I'd rather not catch a cold during practice..." ("open", "base", "worried", "mid") + gen "Alright." ("base", xpos="far_left", ypos="head") + + jump cho_training.choices + + cho "Ready as I'll ever be." ("open", "narrow", "base", "R") + gen "Great. Get your team ready cause you are going to play today." ("base", xpos="far_left", ypos="head") + cho "I'll give their team captain a heads up during classes then." ("soft", "narrow", "base", "mid") + gen "Good, let me know how it went once practice finishes." ("base", xpos="far_left", ypos="head") + cho "I will, [cho_genie_name]. Wish me luck." ("soft", "base", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + $ cho_quid.in_progress = True + + call gen_chibi("sit_behind_desk") + with fade + + jump end_cho_event + +label cc_ht_return: + # Cho enters. + call play_sound("knocking") + call bld + "*Knock-knock-knock*" + + menu: + "\"Come in!\"": + cho "Yes, [cho_genie_name]..." + "\"Who is it?\"": + cho "Cho Chang, [cho_genie_name]." + gen "Come on in, [cho_name]!" ("base", xpos="far_left", ypos="head") + cho "..." + + call cho_walk(xpos="mid", ypos="base", action="enter") + + cho "(...)" ("annoyed", "narrow", "angry", "R", xpos="mid", ypos="base", trans=d3) + gen "You seem a little on edge..." ("base", xpos="far_left", ypos="head") + cho "On edge?" ("scream", "wide", "angry", "mid") + cho "Of course I'm on edge! I've never felt so humiliated in my life!" ("angry", "wide", "angry", "mid") + cho "You had to have me do this on the day half of Hufflepuff shows up to watch us practise, didn't you!" ("annoyed", "narrow", "angry", "R") + cho "I bet you were probably in on it..." ("upset", "narrow", "angry", "mid") + gen "Now now, you know I'd never resort to any sort of foul play like that..." ("base", xpos="far_left", ypos="head") + gen "More importantly, how did the game go?" ("base", xpos="far_left", ypos="head") + call play_music("cho") + cho "{size=+10}I got it!!!{/size}" ("scream", "base", "base", "mid") + cho "I caught the snitch!" ("smile", "happyCl", "base", "mid") + gen "Congratulations..." ("base", xpos="far_left", ypos="head") + cho "That blockhead Cedric didn't stand a chance against me!" ("open", "base", "angry", "R") + cho "Usually I'm never fast enough to beat him with my crummy old nimbus..." ("annoyed", "narrow", "angry", "downR") + cho "But today, I flew above him as we both raced after the snitch, just like you said I should." ("smile", "base", "base", "mid") + gen "Sounds like somebody should get a reward for their efforts!" ("grin", xpos="far_left", ypos="head") + cho "I can't believe I was able to finally catch it!" ("grin", "happyCl", "base", "mid") + gen "Is this the first time you've caught one?" ("base", xpos="far_left", ypos="head") + cho "*Mhmm*...{w=0.3} This is the first game of quidditch Ravenclaw has won in over six years!" ("smile", "base", "base", "mid") + gen "Wasn't this just a practice game?" ("base", xpos="far_left", ypos="head") + cho "I was including the practices, [cho_genie_name]..." ("annoyed", "narrow", "worried", "downR") + gen "Oh..." ("base", xpos="far_left", ypos="head") + cho "Ravenclaw...{w} isn't very good..." ("annoyed", "narrow", "worried", "down") + cho "But I have a feeling that's going to change this year!" ("base", "happyCl", "base", "mid") + gen "And I am happy to be of help!" ("grin", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]! Thank you so much!" ("smile", "narrow", "base", "mid") + cho "If there is any way I can return the favour...?" ("horny", "base", "raised", "mid") + gen "Yes, but we can discuss that after you've won the game." ("base", xpos="far_left", ypos="head") + gen "And have you do some more {b}advanced{/b} favours for me." ("grin", xpos="far_left", ypos="head") + cho "More advanced... Sir?" ("soft", "narrow", "worried", "mid") + #gen "Would you say you've had enough practice to play against them in a tourney game?" ("base", xpos="far_left", ypos="head") + #cho "Absolutely! The next time we will confront Hufflepuff, they will be crushed!" ("smile", "narrow", "angry", "mid") + #cho "This should be an easy win for Ravenclaw." ("base", "closed", "base", "mid") + cho "*Ehm*... [cho_genie_name]..." ("horny", "base", "worried", "mid") + cho "The whole house is celebrating our win at the moment..." ("soft", "narrow", "worried", "mid") + cho "And I'd rather not miss spending some time with--" ("horny", "base", "worried", "R") + gen "You did well today, [cho_name]." ("angry", xpos="far_left", ypos="head") + cho "" ("horny", "base", "base", "mid") + gen "Go and party! You've earned it." ("grin", xpos="far_left", ypos="head") + cho "Thank you, [cho_genie_name]... For everything." ("base", "narrow", "base", "mid") + cho "Have a good night!" ("smile", "base", "base", "mid") + gen "You too..." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + $ cho.equip(cho_outfit_last) # Equip last worn clothes + $ cho_quid.hufflepuff_training = True # Mark as complete + + jump end_cho_event + +### Cho Talk ### + +label cc_ht_talk: + + cho "" (xpos="right", ypos="base", trans=fade) + + if not cho_quid.E1_complete: + gen "Ready to start training?" ("base", xpos="far_left", ypos="head") + cho "Of course, just let me know when." ("smile", "base", "raised", "mid") + elif not cho_quid.E2_complete: + gen "So, are you sure you don't want my help?" ("base", xpos="far_left", ypos="head") + cho "I... I don't know..." ("upset", "base", "raised", "downR") + elif cho_quid.E3_complete and not cho_quid.E4_complete: + cho "Have you asked Hermione to be our commentator yet?" ("soft", "base", "base", "mid") + gen "Not yet." ("base", xpos="far_left", ypos="head") + cho "We can't play if we don't have a commentator." ("soft", "base", "worried", "R") + cho "Please ask her, Sir." ("annoyed", "base", "worried", "mid") + elif cho_quid.E4_complete and cho_quid.lock_practice: # mandatory + gen "I've got great news for you! I found us a new commentator!" ("grin", xpos="far_left", ypos="head") + cho "Is it Hermione?" ("soft", "narrow", "base", "mid") + gen "Yes! Very good guess!" ("grin", xpos="far_left", ypos="head") + cho "It wasn't a guess, [cho_genie_name]. We've discussed this already." ("annoyed", "narrow", "angry", "mid") + gen "Oh, sure..." ("base", xpos="far_left", ypos="head") + cho "But I'm surprised she even took up the task..." ("annoyed", "base", "base", "R") + gen "Right away. No questions asked." ("grin", xpos="far_left", ypos="head") + cho "And little miss Granger wasn't even the slightest bit intimidated by her new obligation?" ("open", "base", "raised", "mid") + gen "Not at all. She seemed rather joyous about her situation." ("grin", xpos="far_left", ypos="head") + cho "Oh..." ("annoyed", "base", "worried", "down") # Bit sad. + cho "Well she just doesn't know what's coming towards her yet!" ("annoyed", "narrow", "angry", "mid") + cho "{size=-4}I hope she gets hit by a bludger as well! I might even tell the boys to aim at her once or twice!{/size}" ("angry", "narrow", "angry", "R") # Small text. + gen "Make sure you tell everyone how your great and very proactive headmaster sorted everything out..." ("grin", xpos="far_left", ypos="head") + cho "Oh, I will. Thank you very much!" ("soft", "base", "base", "mid") + + $ cho_quid.lock_training = True # Removes training menu. + $ hufflepuff_match = "ready" # Able to start main match. + + hide cho_main + show screen blkfade + with d3 + + $ cho.equip(cho_outfit_last) + + call cho_chibi("stand", "mid", "base") + call gen_chibi("sit_behind_desk") + + call reset_menu_position + + hide screen blkfade + cho "" (face="happy", xpos="base", ypos="base", trans=fade) + + jump cho_requests + elif not cc_pf_talk.is_tier_complete(): # Has NOT completed "Talk to me" favour yet. + gen "Have any ideas on how to beat those {i}huffers{/i}?" ("base", xpos="far_left", ypos="head") + cho "Isn't that your job?" ("soft", "base", "raised", "mid") + gen "Oh, yeah..." ("base", xpos="far_left", ypos="head") + gen "(How does she expect me to help her without knowing anything about the opponents?)" ("base", xpos="far_left", ypos="head") + gen "(Maybe I could get her to talk to me and gain more information through favours...)" ("base", xpos="far_left", ypos="head") + elif not cho_quid.hufflepuff_prepared: + gen "Are you ready for the big win?" ("base", xpos="far_left", ypos="head") + cho "Have you actually found out a tactic we could use?" ("open", "base", "raised", "mid") + gen "(Oh right... I didn't discuss our new tactic with her yet.)" ("base", xpos="far_left", ypos="head") + elif cho_whoring < 3: # Has Cho enough confidence? + gen "So, how about those tactics?" ("base", xpos="far_left", ypos="head") + cho "I don't know if I can do...{w=0.4} That..." ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "What do you mean you can't? It's the perfect strategy!" ("base", xpos="far_left", ypos="head") + cho "But..." ("soft", "base", "base", "down", cheeks="blush") + gen "Where's your confidence, your spirit?" ("base", xpos="far_left", ypos="head") + cho "I'm sorry, [cho_genie_name], forget I said anything..." ("open", "happyCl", "base", "mid", cheeks="blush") + gen "(*Hmm*... She doesn't look very confident to me...)" ("base", xpos="far_left", ypos="head") + gen "(Perhaps I should train her more in private.)" ("base", xpos="far_left", ypos="head") + else: + cho "I'm confident that we can win this, [cho_genie_name]." ("smile", "base", "base", "mid") + + cho "" (xpos="base", ypos="base", trans=fade) + + jump cho_training.choices diff --git a/game/scripts/characters/cho/events/quidditch/images.rpy b/game/scripts/characters/cho/events/quidditch/images.rpy new file mode 100644 index 00000000..48b53821 --- /dev/null +++ b/game/scripts/characters/cho/events/quidditch/images.rpy @@ -0,0 +1,844 @@ + +image snitch: + "images/CG/cho_quidditch2/snitch_0.webp" with dissolve + pause 0.2 + "images/CG/cho_quidditch2/snitch_1.webp" with dissolve + pause 0.2 + repeat + +image CG quidditch background: + subpixel True + + contains: + zoom 0.5 + "images/CG/cho_quidditch2/background.webp" + + contains: + anchor (0.5, 0.5) + rotate -45 + + contains: + "images/CG/cho_quidditch2/scroll.webp" + offset (0, 0) + xtile 12 + ytile 6 + + linear 0.75 offset(-396, 0) # Placeholder; Once images implemented finished, we need to recalculate the values so it's not jittery. + + repeat + +image CG quidditch cho_flashing: + subpixel True + + contains: + zoom 0.25 + "images/CG/cho_hufflepuff/background.webp" + + contains: + zoom 0.25 + "images/CG/cho_hufflepuff/clouds.webp" + + yoffset -25 + ease 2.5 yoffset 0 + ease 2.5 yoffset -25 + repeat + + contains: + zoom 0.25 + "images/CG/cho_hufflepuff/cho.webp" + + yoffset -35 + ease 2.5 yoffset 35 + ease 2.5 yoffset -35 + repeat + +image CG quidditch cho_sitting entry: + subpixel True + + contains: + "CG quidditch background" + + contains: + zoom 0.25 + offset (-600, 600) + align (0.5, 0.5) + "images/CG/cho_quidditch2/cho_sitting.webp" + + block: + ease 5.0 zoom 0.3 offset (50, -5) + ease 5.0 zoom 0.25 offset (-50, 35) + repeat + + contains: + "snitch" + pos (630, -90) + zoom 0.3 + + parallel: + yoffset absolute(110) + ease_back 1.5 yoffset absolute(90) zoom 0.3+0.01 + ease_back 1.5 yoffset absolute(110) zoom 0.3-0.01 + repeat + + parallel: + xoffset absolute(110) + ease 1.5 xoffset absolute(90) + ease 1.5 xoffset absolute(110) + repeat + +image CG quidditch cho_sitting: + subpixel True + + contains: + "CG quidditch background" + + contains: + zoom 0.25 + offset (-50, 35) + align (0.5, 0.5) + "images/CG/cho_quidditch2/cho_sitting.webp" + + ease 5.0 zoom 0.3 offset (50, -5) + ease 5.0 zoom 0.25 offset (-50, 35) + + repeat + + contains: + "snitch" + pos (630, -90) + zoom 0.3 + + parallel: + yoffset absolute(110) + ease_back 1.5 yoffset absolute(90) zoom 0.3+0.01 + ease_back 1.5 yoffset absolute(110) zoom 0.3-0.01 + repeat + + parallel: + xoffset absolute(110) + ease 1.5 xoffset absolute(90) + ease 1.5 xoffset absolute(110) + repeat + +image CG quidditch cho_standing: + subpixel True + + contains: + "CG quidditch background" + + contains: + zoom 0.25 + offset (-50, 35) + align (0.5, 0.5) + "images/CG/cho_quidditch2/cho_standing.webp" + + ease 5.0 zoom 0.3 offset (50, -5) + ease 5.0 zoom 0.25 offset (-50, 35) + + repeat + + contains: + "snitch" + pos (630, -90) + zoom 0.3 + + parallel: + yoffset absolute(110) + ease_back 1.5 yoffset absolute(90) zoom 0.3+0.01 + ease_back 1.5 yoffset absolute(110) zoom 0.3-0.01 + repeat + + parallel: + xoffset absolute(110) + ease 1.5 xoffset absolute(90) + ease 1.5 xoffset absolute(110) + repeat + +image CG quidditch cho_standing_smile: + subpixel True + + contains: + "CG quidditch background" + + contains: + zoom 0.25 + offset (-50, 35) + align (0.5, 0.5) + "images/CG/cho_quidditch2/cho_standing_smile.webp" + + ease 5.0 zoom 0.3 offset (50, -5) + ease 5.0 zoom 0.25 offset (-50, 35) + + repeat + + contains: + "snitch" + pos (630, -90) + zoom 0.3 + + parallel: + yoffset absolute(110) + ease_back 1.5 yoffset absolute(90) zoom 0.3+0.01 + ease_back 1.5 yoffset absolute(110) zoom 0.3-0.01 + repeat + + parallel: + xoffset absolute(110) + ease 1.5 xoffset absolute(90) + ease 1.5 xoffset absolute(110) + repeat + +image CG quidditch cho_standing_ahegao: + subpixel True + + contains: + "CG quidditch background" + + contains: + zoom 0.25 + offset (-50, 35) + align (0.5, 0.5) + + contains: + align (0.5, 0.5) + "images/CG/cho_quidditch2/cho_standing_ahegao.webp" + + contains: + "images/CG/cho_quidditch2/squirt.webp" + + parallel: + pos (-100, 300) + ease 2.0 pos (-800, 2040) + repeat + + parallel: + linear 0.5 alpha 1.0 + pause 1.5 + alpha 0.0 + repeat + + block: + ease 5.0 zoom 0.3 offset (50, -5) + ease 5.0 zoom 0.25 offset (-50, 35) + repeat + + contains: + "snitch" + pos (630, -90) + zoom 0.3 + + parallel: + yoffset absolute(110) + ease_back 1.5 yoffset absolute(90) zoom 0.3+0.01 + ease_back 1.5 yoffset absolute(110) zoom 0.3-0.01 + repeat + + parallel: + xoffset absolute(110) + ease 1.5 xoffset absolute(90) + ease 1.5 xoffset absolute(110) + repeat + +image CG quidditch cho_standing_panties: + subpixel True + + contains: + "CG quidditch background" + + contains: + zoom 0.25 + offset (-50, 35) + align (0.5, 0.5) + "images/CG/cho_quidditch2/cho_standing_panties.webp" + + ease 5.0 zoom 0.3 offset (50, -5) + ease 5.0 zoom 0.25 offset (-50, 35) + + repeat + + contains: + "snitch" + pos (630, -90) + zoom 0.3 + + parallel: + yoffset absolute(110) + ease_back 1.5 yoffset absolute(90) zoom 0.3+0.01 + ease_back 1.5 yoffset absolute(110) zoom 0.3-0.01 + repeat + + parallel: + xoffset absolute(110) + ease 1.5 xoffset absolute(90) + ease 1.5 xoffset absolute(110) + repeat + +image CG quidditch cho_standing_panties_down: + subpixel True + + contains: + "CG quidditch background" + + contains: + zoom 0.25 + offset (-50, 35) + align (0.5, 0.5) + "images/CG/cho_quidditch2/cho_standing_panties_down.webp" + + ease 5.0 zoom 0.3 offset (50, -5) + ease 5.0 zoom 0.25 offset (-50, 35) + + repeat + + contains: + "snitch" + pos (630, -90) + zoom 0.3 + + parallel: + yoffset absolute(110) + ease_back 1.5 yoffset absolute(90) zoom 0.3+0.01 + ease_back 1.5 yoffset absolute(110) zoom 0.3-0.01 + repeat + + parallel: + xoffset absolute(110) + ease 1.5 xoffset absolute(90) + ease 1.5 xoffset absolute(110) + repeat + +image CG quidditch cho_standing_snitch: + subpixel True + + contains: + "CG quidditch background" + + contains: + zoom 0.25 + offset (-50, 35) + align (0.5, 0.5) + "images/CG/cho_quidditch2/cho_standing_snitch.webp" + + ease 5.0 zoom 0.3 offset (50, -5) + ease 5.0 zoom 0.25 offset (-50, 35) + + repeat + +image CG quidditch cho_sitting_snitch: + subpixel True + + contains: + "CG quidditch background" + + contains: + zoom 0.25 + offset (-50, 35) + align (0.5, 0.5) + "images/CG/cho_quidditch2/cho_sitting_snitch.webp" + + ease 5.0 zoom 0.3 offset (50, -5) + ease 5.0 zoom 0.25 offset (-50, 35) + + repeat + +image cho_quidditch2 slide cho_siting entry: + + contains: + "images/CG/cho_quidditch2/slide/background.webp" + + contains: + subpixel True + ysize 376 + fit "contain" + "images/CG/cho_quidditch2/slide/cho_sitting.webp" + + align (0.0, 0.5) + easein_cubic 3.0 xalign 0.5 xoffset -50 + + block: + xoffset -50 + ease 5.0 xoffset 50 + ease 5.0 xoffset -50 + repeat + + contains: + "images/CG/cho_quidditch2/slide/lines.webp" + +image cho_quidditch2 slide cho_siting: + + contains: + "images/CG/cho_quidditch2/slide/background.webp" + + contains: + subpixel True + ysize 376 + fit "contain" + "images/CG/cho_quidditch2/slide/cho_sitting.webp" + + align (0.5, 0.5) + + block: + xoffset -50 + ease 5.0 xoffset 50 + ease 5.0 xoffset -50 + repeat + + contains: + "images/CG/cho_quidditch2/slide/lines.webp" + +image cho_quidditch2 slide cho_standing: + + contains: + "images/CG/cho_quidditch2/slide/background.webp" + + contains: + ysize 376 + fit "contain" + align (0.5, 0.5) + "images/CG/cho_quidditch2/slide/cho_standing.webp" + + block: + xoffset -25 + ease 5.0 xoffset 25 + ease 5.0 xoffset -25 + repeat + + contains: + "images/CG/cho_quidditch2/slide/lines.webp" + +image cho_quidditch2 slide cho_standing_panties: + + contains: + "images/CG/cho_quidditch2/slide/background.webp" + + contains: + ysize 376 + fit "contain" + align (0.5, 0.5) + "images/CG/cho_quidditch2/slide/cho_standing_panties.webp" + + block: + xoffset -25 + ease 5.0 xoffset 25 + ease 5.0 xoffset -25 + repeat + + contains: + "images/CG/cho_quidditch2/slide/lines.webp" + +image cho_quidditch2 slide cho_standing_panties_down: + + contains: + "images/CG/cho_quidditch2/slide/background.webp" + + contains: + ysize 376 + fit "contain" + align (0.5, 0.5) + "images/CG/cho_quidditch2/slide/cho_standing_panties_down.webp" + + block: + xoffset -25 + ease 5.0 xoffset 25 + ease 5.0 xoffset -25 + repeat + + contains: + "images/CG/cho_quidditch2/slide/lines.webp" + +image cho_quidditch2 slide cho_sitting_snitch: + + contains: + "images/CG/cho_quidditch2/slide/background.webp" + + contains: + ysize 376 + fit "contain" + align (0.5, 0.5) + "images/CG/cho_quidditch2/slide/cho_sitting_snitch.webp" + + block: + xoffset -25 + ease 5.0 xoffset 25 + ease 5.0 xoffset -25 + repeat + + contains: + "images/CG/cho_quidditch2/slide/lines.webp" + +# Image definitions + +image cho_cg quidditch pose1 base: + size (3840, 2880) + + contains: # BG + "images/CG/cho_quidditch/background.webp" + + contains: + contains: # Cho head + "images/CG/cho_quidditch/pose1/head_1.webp" + + contains: # Cho eyes + "images/CG/cho_quidditch/pose1/eyes_1.webp" + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + "images/CG/cho_quidditch/pose1/eyes_2.webp" + pause 0.25 + repeat + + contains: # Cho eyebrows + "images/CG/cho_quidditch/pose1/eyebrows_1.webp" + + contains: # Cho body + "images/CG/cho_quidditch/pose1/body.webp" + + parallel: + yoffset absolute(110) + + ease_back 2.5 yoffset absolute(50) + ease_back 2.5 yoffset absolute(110) + repeat + + parallel: + xoffset absolute(-15) + ease 1.5 xoffset absolute(15) xzoom 0.98 yzoom 0.995 + ease 1.5 xoffset absolute(-15) xzoom 1.0 yzoom 1.0 + repeat + + contains: # Overlay + "images/CG/cho_quidditch/overlay.webp" + +image cho_cg quidditch pose1 open: + size (3840, 2880) + + contains: # BG + "images/CG/cho_quidditch/background.webp" + + contains: + contains: # Cho head + "images/CG/cho_quidditch/pose1/head_2.webp" + + contains: # Cho eyes + "images/CG/cho_quidditch/pose1/eyes_1.webp" + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + "images/CG/cho_quidditch/pose1/eyes_2.webp" + pause 0.25 + repeat + + contains: # Cho eyebrows + "images/CG/cho_quidditch/pose1/eyebrows_2.webp" + + contains: # Cho body + "images/CG/cho_quidditch/pose1/body.webp" + + parallel: + yoffset absolute(110) + + ease_back 2.5 yoffset absolute(50) + ease_back 2.5 yoffset absolute(110) + repeat + + parallel: + xoffset absolute(-15) + ease 1.5 xoffset absolute(15) xzoom 0.98 yzoom 0.995 + ease 1.5 xoffset absolute(-15) xzoom 1.0 yzoom 1.0 + repeat + + contains: # Overlay + "images/CG/cho_quidditch/overlay.webp" + +image cho_cg quidditch pose1 run: + size (3840, 2880) + + contains: # BG + "images/CG/cho_quidditch/background.webp" + + contains: + contains: # Cho head + "images/CG/cho_quidditch/pose1/head_1.webp" + + contains: # Cho eyes + "images/CG/cho_quidditch/pose1/eyes_3.webp" + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + "images/CG/cho_quidditch/pose1/eyes_2.webp" + pause 0.25 + repeat + + contains: # Cho eyebrows + "images/CG/cho_quidditch/pose1/eyebrows_1.webp" + + contains: # Cho body + "images/CG/cho_quidditch/pose1/body.webp" + + contains: + "snitch" + + parallel: + yoffset absolute(700) + ease_back 0.5 yoffset absolute(500) zoom 1.0+0.25 + ease_back 0.5 yoffset absolute(700) zoom 1.0-0.2 + repeat + + parallel: + xoffset absolute(150) + easein_quint 0.7 xoffset absolute(300) + easein_quint 0.75 xoffset absolute(15) + repeat + + parallel: + pause 1.0 + ease 3.0 pos (-4000, -2000) zoom 0.25 + + contains: # Overlay + "images/CG/cho_quidditch/overlay.webp" + +image cho_cg quidditch pose2 smirk: + size (3840, 2880) + + contains: # BG + "images/CG/cho_quidditch/background.webp" + + contains: + contains: # Cho head + "images/CG/cho_quidditch/pose2/head_3.webp" + + contains: # Cho eyes + "images/CG/cho_quidditch/pose2/eyes_1.webp" + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + "images/CG/cho_quidditch/pose2/eyes_2.webp" + pause 0.25 + repeat + + contains: # Cho eyebrows + "images/CG/cho_quidditch/pose2/eyebrows_1.webp" + + contains: # Cho body + "images/CG/cho_quidditch/pose2/body.webp" + + parallel: + yoffset absolute(110) + + ease_back 2.5 yoffset absolute(50) + ease_back 2.5 yoffset absolute(110) + repeat + + parallel: + xoffset absolute(-15) + ease 1.5 xoffset absolute(15) xzoom 0.98 yzoom 0.995 + ease 1.5 xoffset absolute(-15) xzoom 1.0 yzoom 1.0 + repeat + + contains: # Overlay + "images/CG/cho_quidditch/overlay.webp" + +image cho_cg quidditch pose2 slap_left: + size (3840, 2880) + + contains: # BG + "images/CG/cho_quidditch/background.webp" + + contains: + contains: # Cho head + "images/CG/cho_quidditch/pose2/head_1.webp" + pause 2 + "images/CG/cho_quidditch/pose2/head_3.webp" with dissolve + + contains: # Cho eyes + "images/CG/cho_quidditch/pose2/eyes_1.webp" + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + "images/CG/cho_quidditch/pose2/eyes_2.webp" + pause 0.25 + repeat + + contains: # Cho eyebrows + "images/CG/cho_quidditch/pose2/eyebrows_3.webp" + pause 2 + "images/CG/cho_quidditch/pose2/eyebrows_2.webp" with dissolve + + contains: # Cho body + "images/CG/cho_quidditch/pose2/body.webp" + + contains: # Slaps + "images/CG/cho_quidditch/pose2/handprint_left.webp" + + parallel: + yoffset absolute(110) + + ease_back 2.5 yoffset absolute(50) + ease_back 2.5 yoffset absolute(110) + repeat + + parallel: + xoffset absolute(-15) + ease 1.5 xoffset absolute(15) xzoom 0.98 yzoom 0.995 + ease 1.5 xoffset absolute(-15) xzoom 1.0 yzoom 1.0 + repeat + + contains: # Overlay + "images/CG/cho_quidditch/overlay.webp" + +image cho_cg quidditch pose2 slap_right: + size (3840, 2880) + + contains: # BG + "images/CG/cho_quidditch/background.webp" + + contains: + contains: # Cho head + "images/CG/cho_quidditch/pose2/head_1.webp" + pause 2 + "images/CG/cho_quidditch/pose2/head_3.webp" with dissolve + + contains: # Cho eyes + "images/CG/cho_quidditch/pose2/eyes_1.webp" + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + "images/CG/cho_quidditch/pose2/eyes_2.webp" + pause 0.25 + repeat + + contains: # Cho eyebrows + "images/CG/cho_quidditch/pose2/eyebrows_3.webp" + pause 2 + "images/CG/cho_quidditch/pose2/eyebrows_2.webp" with dissolve + + contains: # Cho body + "images/CG/cho_quidditch/pose2/body.webp" + + contains: # Slaps + "images/CG/cho_quidditch/pose2/handprint_left.webp" + + contains: # Slaps + "images/CG/cho_quidditch/pose2/handprint_right.webp" + + parallel: + yoffset absolute(110) + + ease_back 2.5 yoffset absolute(50) + ease_back 2.5 yoffset absolute(110) + repeat + + parallel: + xoffset absolute(-15) + ease 1.5 xoffset absolute(15) xzoom 0.98 yzoom 0.995 + ease 1.5 xoffset absolute(-15) xzoom 1.0 yzoom 1.0 + repeat + + contains: # Overlay + "images/CG/cho_quidditch/overlay.webp" + +image cho_cg quidditch pose2 base: + size (3840, 2880) + + contains: # BG + "images/CG/cho_quidditch/background.webp" + + contains: + contains: # Cho head + "images/CG/cho_quidditch/pose2/head_1.webp" + + contains: # Cho eyes + "images/CG/cho_quidditch/pose2/eyes_3.webp" + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + "images/CG/cho_quidditch/pose2/eyes_2.webp" + pause 0.25 + repeat + + contains: # Cho eyebrows + "images/CG/cho_quidditch/pose2/eyebrows_3.webp" + + contains: # Cho body + "images/CG/cho_quidditch/pose2/body.webp" + + parallel: + yoffset absolute(110) + + ease_back 2.5 yoffset absolute(50) + ease_back 2.5 yoffset absolute(110) + repeat + + parallel: + xoffset absolute(-15) + ease 1.5 xoffset absolute(15) xzoom 0.98 yzoom 0.995 + ease 1.5 xoffset absolute(-15) xzoom 1.0 yzoom 1.0 + repeat + + contains: # Overlay + "images/CG/cho_quidditch/overlay.webp" + +image cho_cg quidditch pose2 open: + size (3840, 2880) + + contains: # BG + "images/CG/cho_quidditch/background.webp" + + contains: + contains: # Cho head + "images/CG/cho_quidditch/pose2/head_2.webp" + + contains: # Cho eyes + "images/CG/cho_quidditch/pose2/eyes_1.webp" + choice: + pause 4 + choice: + pause 3 + choice: + pause 2 + "images/CG/cho_quidditch/pose2/eyes_2.webp" + pause 0.25 + repeat + + contains: # Cho eyebrows + "images/CG/cho_quidditch/pose2/eyebrows_2.webp" + + contains: # Cho body + "images/CG/cho_quidditch/pose2/body.webp" + + parallel: + yoffset absolute(110) + + ease_back 2.5 yoffset absolute(50) + ease_back 2.5 yoffset absolute(110) + repeat + + parallel: + xoffset absolute(-15) + ease 1.5 xoffset absolute(15) xzoom 0.98 yzoom 0.995 + ease 1.5 xoffset absolute(-15) xzoom 1.0 yzoom 1.0 + repeat + + contains: # Overlay + "images/CG/cho_quidditch/overlay.webp" diff --git a/game/scripts/characters/cho/events/quidditch/intros.rpy b/game/scripts/characters/cho/events/quidditch/intros.rpy new file mode 100644 index 00000000..0e00b44a --- /dev/null +++ b/game/scripts/characters/cho/events/quidditch/intros.rpy @@ -0,0 +1,1636 @@ + +# Training Intro 1. (Hufflepuff) + +label cho_quid_E1: + # Genie should get into a drill sergeant mood here, but fails at the end. + + cho "" (xpos="mid", ypos="base", trans=fade) + + gen "Are you ready for your first training session?" ("base", xpos="far_left", ypos="head") + cho "Of course, Professor!" ("smile", "base", "base", "mid") + gen "Professor? Who are you calling Professor, girl?" ("angry", xpos="far_left", ypos="head") + cho "I'm... sorry?" ("soft", "base", "worried", "mid") + gen "From now on you will address me only as \"Sir\"!{w} Or..." ("base", xpos="far_left", ypos="head") + + menu: + "\"-Coach-\"": + $ cho_genie_name = "Coach" + "\"-Sergeant-\"": + $ cho_genie_name = "Sergeant" + "\"-Captain-\"": + $ cho_genie_name = "Captain" + "\"-Professor-\"": + $ cho_genie_name = "Professor" + gen "You know what, keep calling me Professor..." ("base", xpos="far_left", ypos="head") + + cho "Yes, [cho_genie_name]." ("base", "base", "angry", "mid") + gen "And you I will call..." ("base", xpos="far_left", ypos="head") + + menu: + "\"-Cadet-\"": + $ cho_name = "Cadet" + "\"-Pilot-\"": + $ cho_name = "Pilot" + "\"-Maggot-\"": + $ cho_name = "Maggot" + cho "(...)" ("quiver", "base", "worried", "R") + "\"-Eagle One-\"": + $ cho_name = "Eagle One" + "\"-Cho-\"": + $ cho_name = "Cho" + "\"-Miss Chang-\"": + $ cho_name = "Miss Chang" + cho "Don't you already call me that, [cho_genie_name]?" ("open", "base", "raised", "mid") + gen "Never question your [cho_genie_name], [cho_name]!" ("base", xpos="far_left", ypos="head") + + cho "Yes, [cho_genie_name]!" ("soft", "closed", "angry", "mid") + gen "Let's start with your {i}Quiddesh{/i} training!" ("angry", xpos="far_left", ypos="head") + cho "\"Quidditch\", Sir." ("annoyed", "narrow", "angry", "mid") + gen "Let's start with your \"Quidditch\" training, [cho_name]." ("angry", xpos="far_left", ypos="head") + cho "!!!" ("smile", "happyCl", "base", "mid", cheeks="blush") + cho "Shall I call the rest of my team up here?" ("open", "base", "base", "mid") + gen "What? Why?" ("base", xpos="far_left", ypos="head") + cho "So they can hear your expertise as well, of course." ("soft", "narrow", "base", "mid") + gen "I don't think that will be necessary." ("base", xpos="far_left", ypos="head") + gen "Let's focus on you, for the moment..." ("base", xpos="far_left", ypos="head") + cho "Very well, [cho_genie_name]." ("soft", "base", "worried", "R") + gen "Tell me, how do you usually play?{w} Is there a specific reason why you've been losing?" ("base", xpos="far_left", ypos="head") + + cho "Well, it sort of differs depending which team we're playing against..." ("open", "narrow", "base", "R") + gen "...{w} Let's start with whichever team you're playing against first." ("base", xpos="far_left", ypos="head") + cho "That'd be Hufflepuff...{w=0.4} Most of their previous victories against us were achieved thanks to their seeker!" ("open", "base", "base", "mid") + cho "He's always catching the snitch before me." ("quiver", "narrow", "worried", "down") + cho "I don't know how he does it, to be honest. It always happens so quick..." ("open", "narrow", "worried", "mid") + gen "And you are \"both\" looking for that thing? At the same time?" ("base", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]." ("soft", "base", "base", "mid") + cho "I do my best flying around the pitch searching for it. But it's just so small and really tricky to see..." ("angry", "base", "worried", "down") + gen "Why don't you look for it together? After all there is only one." ("base", xpos="far_left", ypos="head") + cho "*Hmm*?" ("annoyed", "base", "base", "mid") + gen "You just need to grab that Snatch before he does." ("grin", xpos="far_left", ypos="head") + cho "???" ("annoyed", "wide", "raised", "mid") + cho "[cho_genie_name]! It's \"Snitch\"!" ("angry", "closed", "angry", "mid") + gen "Potato {i}potato{/i}..." ("base", xpos="far_left", ypos="head") + cho "You just said the same thing twice..." ("open", "base", "raised", "R") + gen "Exactly..." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid") + cho "Anyhow... As I said, I don't really have a chance once he's caught sight of it." ("open", "narrow", "base", "mid") + gen "Caught sight of what?" ("base", xpos="far_left", ypos="head") + cho "The snitch!" ("annoyed", "narrow", "base", "mid") + gen "Oh, I see..." ("base", xpos="far_left", ypos="head") + cho "There's no way for me to stop him, with how fast and determined he is..." ("open", "base", "base", "R") + gen "Well, lucky for you, you have me!" ("grin", xpos="far_left", ypos="head") + cho "" ("annoyed", "base", "raised", "mid") + gen "I'm also very fast and determined!" ("grin", xpos="far_left", ypos="head") + gen "And you just gave me a great idea." ("base", xpos="far_left", ypos="head") + gen "We'll need to distract him!" ("base", xpos="far_left", ypos="head") + gen "So you can get a hold of that Snatch before he does!" ("angry", xpos="far_left", ypos="head") + cho "Please stop saying that, [cho_genie_name]!" ("angry", "closed", "angry", "mid") + gen "Saying what?" ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid") + cho "{size=-4}\"Snatch.\"{/size}" ("soft", "narrow", "angry", "mid") + gen "*He-he-he*...{w} Now you've said it!" ("grin", xpos="far_left", ypos="head") + cho "Could we please just talk about your plan, [cho_genie_name]?" ("open", "narrow", "angry", "R") + gen "Patience, [cho_name]." ("base", xpos="far_left", ypos="head") + cho "Tell me!" ("scream", "closed", "angry", "mid", trans=hpunch) + cho "" ("annoyed", "narrow", "angry", "mid") + + gen "We'll hit him where he least expects it!" ("base", xpos="far_left", ypos="head") + cho "And that would be?" ("soft", "base", "angry", "mid") + gen "The balls!" ("base", xpos="far_left", ypos="head") + cho "What?!?" ("mad", "wide", "raised", "mid") + cho "Sir, surely you can't be--" ("clench", "base", "angry", "mid") + gen "If we entice him during the game he'll lose focus..." ("base", xpos="far_left", ypos="head") + cho "Entice...{w=0.4} what are you--" ("clench", "base", "base", "mid") + + cho "Sir, this is just ridiculous!" ("scream", "closed", "angry", "mid", trans=hpunch) + cho "I thought a highly regarded wizard of your stature would know at least something that could help us at Quidditch." ("open", "narrow", "angry", "mid") + cho "I didn't hold it against you that you seemingly know very little about the sport." ("open", "base", "angry", "R") + gen "Which I proved you wrong, but who cares..." ("base", xpos="far_left", ypos="head") + cho "But I thought it was at least worth a try.{w} Although after hearing your suggestion--" ("upset", "narrow", "angry", "mid") + gen "Believe me when I say this..." ("base", xpos="far_left", ypos="head") + gen "The only way you can keep a man from fulfilling his sought-out purpose, is by confronting him with his most primal instinct!" ("angry", xpos="far_left", ypos="head") + cho "Which would be?" ("annoyed", "narrow", "angry", "mid") + gen "The act of procreation!" ("grin", xpos="far_left", ypos="head") + cho "Sir, are you suggesting I should have \"sex\" with him?!" ("soft", "wide", "base", "mid") # Shocked + gen "What? I never said that..." ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "angry", "mid") + gen "You have a really dirty mind, girl!" ("grin", xpos="far_left", ypos="head") + cho "But you just said--" ("angry", "closed", "angry", "mid") + gen "I merely want you to distract him with your body, during the match." ("base", xpos="far_left", ypos="head") + gen "And then, when he can't keep his eyes off you..." ("grin", xpos="far_left", ypos="head") + gen "You grab that Snatch!" ("grin", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "mid") + cho "I'm sorry Sir, but I feel methods like those would get us nowhere!" ("open", "closed", "raised", "mid") + cho "And it's very improper for a teacher to suggest such things! Not to mention right out vulgar!" ("open", "base", "angry", "R") + cho "I'll be leaving now.{w=0.8} Please only call me should you decide to finally take things seriously..." ("soft", "narrow", "angry", "mid") + gen "And you, think about using that petite body of yours to get closer to your dreams!" ("grin", xpos="far_left", ypos="head") + cho "*Tzzzz*" ("angry", "closed", "angry", "mid") + + if game.daytime: + cho "Good day, Sir..." ("soft", "narrow", "angry", "mid") + else: + cho "Good night, Sir..." ("soft", "narrow", "angry", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + call popup("You've lost the ability to train Cho in Quidditch.", "Congratulations!", "interface/icons/head/cho.webp") + + call bld + gen "She'll get over it..." ("base", xpos="far_left", ypos="head") + + # Flags + $ cho_mood += 9 + $ cho_quid.E1_complete = True + + jump end_cho_event + +label cho_quid_E2: + # Genie regains ability to train Cho + + cho "" (xpos="mid",ypos="base", trans=fade) + gen "So, have you considered going with my training methods?" ("base", xpos="far_left", ypos="head") + cho "I... Yes..." ("soft", "closed", "angry", "mid") + cho "I looked at other options, but seeing how little time we have left...{w} Well, I suppose I have no other choice." ("open", "narrow", "angry", "R") + cho "If there's any chance your methods could help us win the cup this year, then I'm willing to try them, Sir." ("open", "narrow", "angry", "mid") + gen "I'm glad you've come to your senses." ("grin", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "R") + gen "Let's get this ball rolling--{w=0.4} *Ahem*... flying then shall we!" ("grin", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "base", "base", "mid") + + gen "Now, let me show you..." ("base", xpos="far_left", ypos="head") + cho "" ("base", "base", "base", "mid") + + gen "First, get your flying thing ready!" ("base", xpos="far_left", ypos="head") + cho "My broom?" ("soft", "base", "raised", "mid") + gen "Broom... flying carpet... Whichever you prefer." ("base", xpos="far_left", ypos="head") + cho "Only brooms are allowed in Quidditch, Sir." ("annoyed", "base", "base", "mid") + gen "Good for you." ("base", xpos="far_left", ypos="head") + gen "And put on your Quidditch gear while you're at it..." ("base", xpos="far_left", ypos="head") + cho "Yes, Sir.{w} Let me just go and get it." ("smile", "base", "base", "mid") + cho "I'll be right back." ("base", "base", "base", "mid") + + call cho_walk(action="leave", speed=1.5) # Cho moves, excitedly. + + call blkfade + pause .8 + + # Scene Setup + call gen_chibi("stand", "desk", "base") + call cho_chibi("stand", "right", "base") + + $ cho_outfit_last.save() + $ cho.equip(cho_outfit_quidditch) # Equip quidditch set + + call play_sound("door") + pause .5 + + call hide_blkfade + pause .8 + + cho "Ready when you are, [cho_genie_name]!" ("smile", "base", "base", "mid", xpos="right", ypos="base", trans=d3) + gen "Perfect, now get on that broom and follow my instructions..." ("base", xpos="far_left", ypos="head") + hide cho_main + with d3 + + # Tutorial menu + $ _selected = [False, False, False] + $ menu_y = 0.8 + + label .choices: + + if not all(x == True for x in _selected): # Has selected every position once? Loop if the answer is no. + call bld + menu: + gen "Could you..." ("base", xpos="far_left", ypos="head") + "\"Fly in front of me.\"" if not _selected[0]: + $ _selected[0] = True + call bld("hide") + + if not cho_chibi.action == "fly": + call cho_chibi("fly", "mid", "base") + with d5 + + call cho_walk("mid", "base") + if cho_chibi.flip == False: + gen "Looking good, now turn away from me..." ("base", xpos="far_left", ypos="head") + call cho_chibi("fly", "mid", "base", flip=True) + with d5 + cho "Like this?" ("soft", "base", "base", "R", ypos="head", flip=False) + gen "A bit higher maybe..." ("base", xpos="far_left", ypos="head") + call cho_walk(550, 200+180) + + gen "Excellent!" ("base", xpos="far_left", ypos="head") + + jump cho_quid_E2.choices + + "\"Fly above me.\"" if not _selected[1]: + $ _selected[1] = True + call bld("hide") + + if not cho_chibi.action == "fly": + call cho_chibi("fly", "mid", "base") + with d5 + + gen "Move a bit higher." ("base", xpos="far_left", ypos="head") + call cho_walk(600, 150+180) + cho "Like this?" ("soft", "base", "base", "downR", ypos="head", flip=False) + gen "Great, you've got some excellent control over that stick." ("base", xpos="far_left", ypos="head") + + jump cho_quid_E2.choices + + "\"Fly close to me.\"" if not _selected[2]: + $ _selected[2] = True + call bld("hide") + + if not cho_chibi.action == "fly": + call cho_chibi("fly", "mid", "base") + with d5 + + cho "How close?" ("soft", "base", "raised", "mid", ypos="head", flip=False) + gen "As close as you can get..." ("base", xpos="far_left", ypos="head") + call cho_walk(450, 240+180) + gen "Nice..." ("base", xpos="far_left", ypos="head") + cho "..." ("soft", "narrow", "raised", "mid", ypos="head", flip=False) + + jump cho_quid_E2.choices + else: + pass + + gen "That should be enough..." ("base", xpos="far_left", ypos="head") + gen "I presume you're able to hold these positions during movement?" ("base", xpos="far_left", ypos="head") + cho "Of course." ("open", "closed", "raised", "mid", ypos="head", flip=False) + gen "Great!" ("base", xpos="far_left", ypos="head") + gen "You can come down now." ("base", xpos="far_left", ypos="head") + cho "Okay." ("open", "base", "base", "mid", ypos="head", flip=False) + + #Cho flies down + call cho_walk("mid", "base") + call cho_chibi("stand", "right", "base") + with fade + + + gen "Great job, we should definitely use positioning to our advantage!" ("base", xpos="far_left", ypos="head") + cho "Well, that much is true for any quidditch game..." ("open", "base", "raised", "mid") + cho "So I'm not exactly sure what we've achieved here." ("soft", "base", "raised", "R") + gen "All in due time, [cho_name]..." ("base", xpos="far_left", ypos="head") + gen "With my training methods you'll have the upper hand over those other teams, I'm sure of it." ("base", xpos="far_left", ypos="head") + cho "I'll have to take you for your word then..." ("base", "base", "raised", "mid") #cautious smile + cho "So, what's next?" ("open", "base", "raised", "mid") + gen "That's all for today." ("base", xpos="far_left", ypos="head") + cho "Already? I usually train for a couple of hours!" ("angry", "base", "raised", "mid") + gen "Yes, I need to come up with a pl--{w=0.3}{nw}" ("base", xpos="far_left", ypos="head") + gen "Yes, I need to come up with a pl--{fast} prepare for our next session!" ("grin", xpos="far_left", ypos="head") + cho "Oh...{w=0.3} okay." ("soft", "base", "base", "down") + cho "Bye then, [cho_genie_name]." ("base", "base", "base", "mid") + gen "Bye for now, [cho_name]." ("base", xpos="far_left", ypos="head") + + call cho_walk(action="leave") + + gen "(Now to find out what the boy's into and make sure she's prepared to do what it takes...)" ("base", xpos="far_left", ypos="head") + call popup("You've unlocked Cho personal favours!", "Congratulations!", "interface/icons/head/cho.webp") + + # Flags + $ cho.equip(cho_outfit_last) + $ cho_quid.E2_complete = True + $ cho_favors_unlocked = True + $ cho_quid.lock_training = False + + call gen_chibi("sit_behind_desk") + with fade + + jump end_cho_event + +label cho_quid_E3: + # Commentator disaster, Lee Jordan is unable to commentate. + + call cho_walk(action="enter", xpos="desk", ypos="base", speed=1.5) + + call play_music("stop") + + cho "[cho_genie_name], there's been a disaster!" ("scream", "closed", "angry", "mid", xpos="mid", ypos="base", trans=hpunch) + + call play_music("cho") + + gen "Off to a good start..." ("base", xpos="far_left", ypos="head") + cho "[cho_genie_name], something terrible happened to Lee Jordan!" ("soft", "narrow", "worried", "mid") + gen "Lee Jordan?{w=0.5} Is that a famous basketball player I'm not aware of?" ("base", xpos="far_left", ypos="head") + cho "What?{w=0.5} No Sir, Lee is our quidditch commentator!" ("soft", "narrow", "base", "mid") + cho "He got hit in the throat by a bludger!" ("disgust", "base", "raised", "down") + cho "Madam Pomfrey says he'll be able to talk in a few days, but yelling is out of the picture for the rest of the season." ("soft", "closed", "worried", "mid") + cho "What are we going to do?! We can't have a Quidditch Cup without a commentator!" ("soft", "base", "worried", "mid") + gen "Can't you play without one?" ("base", xpos="far_left", ypos="head") + cho "No... Someone has to announce the points after all." ("annoyed", "narrow", "base", "mid") + gen "I see..." ("base", xpos="far_left", ypos="head") + + $ _selected = [False, False] + + label .choices: + menu: + gen "How about we ask..." ("base", xpos="far_left", ypos="head") + "\"Hermione\"": + pass + + "\"Astoria\"" if astoria_unlocked and not _selected[0]: + $ _selected[0] = True + + cho "That mischievous little..." ("clench", "wide", "raised", "mid") + cho "Not a chance!" ("open", "closed", "angry", "mid") + cho "Besides, [cho_genie_name]. Did you forget that she's a Slytherin?" ("open", "narrow", "angry", "mid") + gen "Right. No Slytherins. Got it." ("base", xpos="far_left", ypos="head") + gen "How about..." ("base", xpos="far_left", ypos="head") + + jump cho_quid_E3.choices + + "\"Luna\"" if luna_unlocked and not _selected[1]: + $ _selected[1] = True + + cho "Luna? Luna Lovegood, [cho_genie_name]?" ("open", "narrow", "raised", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + cho "Surely{w=0.3}, nobody in their right mind would let Luna Lovegood commentate." ("grin", "happyCl", "base", "mid") # Book quote. + #gen "I am of right mind, Miss Chang...{w} and don't call me Shirley..." ("base", xpos="far_left", ypos="head") + gen "(...)" ("base", xpos="far_left", ypos="head") + cho "Knowing her she'd probably commentate the grass as it's growing..." ("open", "base", "base", "R") + cho "Trust me, [cho_genie_name]. Luna would be a terrible choice!" ("soft", "narrow", "base", "mid") + gen "Fine. How about..." ("base", xpos="far_left", ypos="head") + + jump cho_quid_E3.choices + + cho "Hermione Granger?" ("scream", "wide", "raised", "mid") + cho "She wouldn't know the first thing about quidditch!" ("clench", "narrow", "angry", "mid") + cho "You can't pick her!" ("annoyed", "narrow", "angry", "mid") + gen "Now, now... Don't underestimate Miss Granger..." ("base", xpos="far_left", ypos="head") + gen "Why don't we just ask her first?" ("base", xpos="far_left", ypos="head") + cho "Absolutely not! I won't talk to that Gryffindor skunk ever again!" ("scream", "closed", "angry", "mid") + cho "Didn't I make it clear that I don't want her to {b}ever{/b} be involved in Quidditch again?" ("annoyed", "narrow", "angry", "mid") + gen "Alright... are there any other students who know Quidditch rules well enough to take this... Jordan boy's place?" ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "base", "down") + gen "Well?" ("base", xpos="far_left", ypos="head") + cho "Well, most of them would already be on one of the Quidditch teams..." ("soft", "base", "raised", "R") + cho "But Granger wouldn't know anything about Quidditch either!" ("annoyed", "narrow", "angry", "mid") + gen "Do you know anybody else suited for the job?" ("base", xpos="far_left", ypos="head") + cho "{size=-4}Probably anyone at this point...{/size}" ("annoyed", "base", "raised", "R") + call play_music("stop") + cho "(Wait a minute...)" ("annoyed", "wide", "raised", "mid") + play music "music/marty-gots-a-plan-by-kevin-macleod.ogg" fadein 1.0 + cho "No..." ("smile", "base", "base", "mid") #Mischievous smile + gen "I'll ask her... What's the worst that could happen..." ("grin", xpos="far_left", ypos="head") + cho "Yeah, actually you're probably right..." ("grin", "narrow", "angry", "mid") + gen "Don't worry she'll do a--" ("base", xpos="far_left", ypos="head") + gen "Wait... what did you say?" ("angry", xpos="far_left", ypos="head") + cho "I'm sure she'll do a heckin' good job!" ("smile", "narrow", "angry", "mid") + cho "(She'll flub the whole thing and everyone will laugh at her.)" ("smile", "narrow", "angry", "R") #Mischievous smile + gen "Well, great then. I'll ask her in that case!" ("grin", xpos="far_left", ypos="head") + cho "(She'll be so humiliated! And no one will ever see her as anything but a show-off that knows nothing!)" ("grin", "narrow", "angry", "down") + cho "(I can already picture it...{w=0.8} the whole school laughing...)" ("silly", "base", "raised", "up") + gen "Miss Chang?" ("base", xpos="far_left", ypos="head") + cho "Oh, thank you for handling it professor!" ("open", "base", "base", "mid") + cho "Boy, you took a load off my mind..." ("silly", "happyCl", "base", "mid", trans=hpunch) + gen "(...)" ("base", xpos="far_left", ypos="head") + cho "I'll be heading back to class, if you don't mind." ("soft", "closed", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + call bld + gen "(...)" ("base", xpos="far_left", ypos="head") + + # Reset + $ cho.equip(cho_outfit_last) # Equip last worn clothes + $ cho_quid.E3_complete = True + $ cho_quid.lock_practice = True + + jump end_cho_event + +label cho_quid_E4: + # Genie asks Hermione if she would agree to commentate the game. + + her "" (xpos="mid", ypos="base", trans=fade) + gen "[hermione_name], how much do you know about Quidditch?" ("base", xpos="far_left", ypos="head") + her "[genie_name], I mean, I've taken flying lessons... they're mandatory." ("open", "base", "base", "R") + gen "Ah, okay... and here I was hoping that you'd be able to commentate this years quidditch games..." ("base", xpos="far_left", ypos="head") + her "Me, wasting time on something as stupid as--" ("base", "closed", "base", "mid") + her "Wait...{w=0.3} What did you say?" ("open", "squint", "base", "mid") + gen "I was going to ask you if you'd commentate this year's quidditch games..." ("base", xpos="far_left", ypos="head") + her "You want me... to commentate this year's Inter-House Quidditch cup?" ("open", "wide", "base", "mid") + her "I'd be honoured, sir!" ("scream", "closed", "base", "mid", trans=hpunch) + her "Quidditch has always been one of my passions, to be able to commentate it..." ("open", "base", "angry", "mid") + her "Not to mention getting to make all the announcements..." ("smile", "base", "base", "R") + her "The speeches..." ("grin", "happy", "base", "mid") + + if her_whoring < 18: + her "The paper..." ("soft", "narrow", "annoyed", "up") + her "The {heart}{b}preparation{/b}{heart}..." ("open_tongue", "narrow", "base", "up") + else: + her "Everybody will be focused on me..." ("soft", "narrow", "annoyed", "up") + + her "I accept!" ("scream", "closed", "angry", "mid", trans=hpunch) + gen "I thought you just said you didn't--" ("angry", xpos="far_left", ypos="head") + her "Cho will be so mad!" ("crooked_smile", "happy", "base", "mid") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "Congratulations then, [hermione_name]! You got the job." ("grin", xpos="far_left", ypos="head") + her "Ah!!! I better start learning--{w=0.4} I mean, preparing my opening speech!" ("open", "wide", "base", "mid", trans=hpunch) + + call her_walk(action="leave", speed=1.5) + + call bld + gen "Aaaa-nd, she's gone..." ("base", xpos="far_left", ypos="head") + gen "I better tell Cho about the...{w=0.8} news." ("base", xpos="far_left", ypos="head") + + $ cho_quid.E4_complete = True + + jump end_hermione_event # This is correct, it's Hermione talking! + +label cho_quid_E5: + # Slytherin Quidditch intro. Triggers after you summon Cho. + + stop music fadeout 6.0 + + call cho_walk(action="enter") + call cho_walk("mid", "base") + + if game.daytime: + cho "Good morning, [cho_genie_name]..." ("annoyed", "narrow", "worried", "downR", xpos="right", ypos="base", trans=d3) + gen "Mornin'." ("base", xpos="far_left", ypos="head") + else: + cho "Good evening, [cho_genie_name]..." ("annoyed", "narrow", "worried", "downR", xpos="right", ypos="base", trans=d3) + gen "Evenin'." ("base", xpos="far_left", ypos="head") + gen "[cho_name], before we get back to our usual diversions, why don't we have a little chat about the recent happenings?" ("base", xpos="far_left", ypos="head") + cho "Very well, [cho_genie_name]..." ("open", "narrow", "worried", "mid") + gen "Cheer up, will you..." ("base", xpos="far_left", ypos="head") + gen "Where did that high-spirit from your \"big win\" fly off to?" ("base", xpos="far_left", ypos="head") + cho "Nowhere, [cho_genie_name]...{w=0.6} I'm still very happy we won the game, it's just..." ("open", "narrow", "worried", "down") # worried/sad + cho "I'm a bit worried about the future." ("soft", "narrow", "worried", "mid") # sad/relieved + gen "The future?" ("base", xpos="far_left", ypos="head") + gen "You didn't get pregnant during your little celebration event, did you?" ("base", xpos="far_left", ypos="head") + + call play_music("cho") + cho "WHAT?!" ("clench", "wide", "base", "mid", cheeks="heavy_blush") # Upset/whatthefuck face + cho "Sir, why would you even suggest that?!" ("angry", "narrow", "angry", "mid", cheeks="blush") # upset + gen "Then what is it?" ("base", xpos="far_left", ypos="head") + cho "It's about the upcoming quidditch match." ("annoyed", "narrow", "angry", "R") # annoyed - eyes R, mouth annoyed + gen "Oh...{w=0.4} Of course..." ("base", xpos="far_left", ypos="head") + gen "{size=-6}Always some stupid quest...{/size}" ("base", xpos="far_left", ypos="head") + cho "Pardon?" ("annoyed", "narrow", "raised", "mid") + gen "It's nothing,{w=0.5} please continue." ("base", xpos="far_left", ypos="head") + cho "[cho_genie_name], I worry that we won't be able to beat Slytherin in the next match." ("annoyed", "narrow", "worried", "mid") # eyebrows sad, eyes mid, mouth pout + gen "Slytherin is next?{w=0.6} Sweet!" ("grin", xpos="far_left", ypos="head") + cho "They're an entirely different ballpark compared to Hufflepuff." ("open", "base", "worried", "mid") + gen "Really? Why's that?" ("base", xpos="far_left", ypos="head") + cho "They're brutal and ruthless!{w} And they think they can get away with anything..." ("open", "narrow", "angry", "mid") # eyebrows sad, eyes mid, mouth pout + gen "Then we should do the same, shouldn't we?" ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "base", "mid") + gen "We'll show those Slytherins what {b}we{/b} got -- no problem!" ("base", xpos="far_left", ypos="head") + cho "..." ("base", "base", "base", "mid") # slight smile + gen "(And show Snape who's boss.)" ("grin", xpos="far_left", ypos="head") + gen "Trust me, our tactics have worked perfectly thus far, haven't they?" ("base", xpos="far_left", ypos="head") + cho "I--{w=0.3} yes..." ("soft", "base", "raised", "downR") + cho "You're right! Thank you, [cho_genie_name]." ("base", "base", "base", "mid") # happy + + $ cho_quid.E5_complete = True + $ cho_favors_unlocked = True + + jump cho_requests + +label cho_quid_E6: + # Hermione refuses to commentate Slytherin match. + stop music fadeout 3.0 + + pause 1.0 + + call her_walk(action="enter") + call chibi_emote("thought", "hermione") + pause 2.0 + call chibi_emote("hide", "hermione") + + call bld + gen "..." ("base", xpos="far_left", ypos="head") + + call her_walk("desk", "base") + her "" ("annoyed", "narrow", "angry", "mid", xpos="mid", ypos="base") # annoyed + pause .5 + her "I can't believe her..." ("clench", "closed", "angry", "mid", trans=hpunch) # angry + gen "Good day to you too..." ("base", xpos="far_left", ypos="head") + + call play_music("hermione") + + her "That bitch has been walking around saying that I quit the commentator job." ("open", "base", "angry", "mid") + gen "Who did?" ("base", xpos="far_left", ypos="head") + her "Cho Chang." ("soft", "base", "angry", "mid") + gen "..." ("angry", xpos="far_left", ypos="head") + gen "Wait, so you didn't quit?" ("base", xpos="far_left", ypos="head") + her "No! Why would I be here telling you this if I did?" ("angry", "base", "angry", "mid") + gen "I guess you would've had to give me a two weeks notice..." ("base", xpos="far_left", ypos="head") + her "You tell me, you're the one that appointed me." ("annoyed", "narrow", "annoyed", "mid") + gen "Oh, right." ("base", xpos="far_left", ypos="head") + her "And since I didn't sign anything..." ("soft", "closed", "base", "mid") + her "I quit!" ("soft", "narrow", "base", "mid") + gen "What?{w=0.5} You can't do that!" ("angry", xpos="far_left", ypos="head") + her "Why not? After all, I'm terrible at it, aren't I?" ("clench", "base", "angry", "mid") + her "I made such a fool out of myself during the Hufflepuff game..." ("upset", "base", "worried", "R", tears="soft") # Sad, tears + her "And now with the Slytherin team being next..." ("open", "happyCl", "worried", "mid", tears="soft_blink") + her "I won't just stand there and have them laugh at me..." ("open", "base", "worried", "mid", tears="soft") + her "I'm not giving those Slytherins that satisfaction!" ("annoyed", "base", "worried", "R", tears="soft") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"Tough luck, Miss Granger!\"": + $ her_mood += 16 + + her "Tough luck?!" ("clench", "wide", "base", "stare") + gen "You agreed to do this, remember..." ("base", xpos="far_left", ypos="head") + gen "May I remind you how many house points I gave you?" ("angry", xpos="far_left", ypos="head") + her "No amount of house points was worth the humiliation I got!" ("angry", "base", "angry", "mid") + gen "Well, *boo* --{w=0.3} bloody --{w=0.3} *hoo*..." ("base", xpos="far_left", ypos="head") + her "*Tzzzs*!..." ("clench", "closed", "angry", "mid", emote="angry") + her "Good luck finding somebody that is more willing to be the school's laughing stock!" ("open", "base", "angry", "mid") + + + "\"We'll look for somebody more competent, then.\"": + $ her_mood += 10 + + her "More competent?!" ("clench", "base", "angry", "mid") + gen "Surely we can find a replacement for you in no time." ("base", xpos="far_left", ypos="head") + her "Well if that's the case, it seems like I'm no longer needed..." ("open", "base", "angry", "mid") + + "\"All you need is a bit of practice...\"": + if hg_pf_sex.counter == 0: + gen "(And a good fucking, but we'll get to that...)" ("grin", xpos="far_left", ypos="head") + else: + gen "(And a good fucking...)" ("grin", xpos="far_left", ypos="head") + gen "You're a natural at this!" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "base", "worried", "mid", tears="soft") + her "It doesn't matter..." ("soft", "base", "worried", "R", tears="soft") + her "Thanks to Cho, everybody now thinks I'm a fraud..." ("open", "happyCl", "worried", "mid", tears="soft_blink") + her "I don't understand why she feels the need to constantly spread rumours about me." ("annoyed", "base", "annoyed", "R", tears="soft") + gen "(Look who's talking...)" ("base", xpos="far_left", ypos="head") + + her "You can tell that bitch to look for somebody else to commentate!" ("open", "base", "angry", "mid") + her "Because I will not!" ("clench", "base", "angry", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + her "Good day, Sir." ("annoyed", "base", "annoyed", "R") + + #Hermione walks out + call her_walk(action="leave") + call bld + + gen "(What in the great desert sands do these women want from me...)" ("angry", xpos="far_left", ypos="head") + gen "(Can't they get along like me and my ol' pal Snape?)" ("base", xpos="far_left", ypos="head") + + $ cho_quid.E6_complete = True + + jump end_hermione_event + +label cho_quid_E7: + # Genie blackmails Hermione + + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "[hermione_name], could I change your mind about your role in the Slytherin match?" ("base", xpos="far_left", ypos="head") + her "My answer is still no, [genie_name]." ("open", "closed", "base", "mid") + gen "Come on!" ("angry", xpos="far_left", ypos="head") + her "That's my final answer." ("annoyed", "narrow", "angry", "mid") + gen "(This girl...)" ("base", xpos="far_left", ypos="head") + gen "What if..." ("base", xpos="far_left", ypos="head") + + menu: + "\"I'll give you house points.\"": + her "Not...{w=0.3} interested." ("annoyed", "narrow", "angry", "R") + gen "But you're always eager for those points!" ("angry", xpos="far_left", ypos="head") + her "No amount of points would be worth it." ("open", "base", "angry", "mid") + gen "So, you don't even want to hear my offer?" ("base", xpos="far_left", ypos="head") + her "I guess I don't..." ("open", "closed", "base", "mid") # upset + gen "Your loss..." ("base", xpos="far_left", ypos="head") + + "\"You could make fun of those Slytherins.\"": + if her_tier >= 5: + her "I'm not that childish, [genie_name]." ("annoyed", "base", "base", "mid") + gen "You're not?" ("base", xpos="far_left", ypos="head") + gen "So what they're doing doesn't bother you? Calling you all sorts of names?" ("base", xpos="far_left", ypos="head") + her "Not in the slightest..." ("soft", "narrow", "base", "mid") + her "They can act like the usual dorks if they want to, that's no concern to me." ("soft", "base", "base", "R", cheeks="blush") + her "But I have no reason to stoop down to their level." ("open", "closed", "base", "mid") + else: + her "And why would I want to do that? I'm not that foolish!" ("open", "base", "annoyed", "mid") + her "Bad-mouthing their entire team would make me an even bigger target than I already am." ("annoyed", "base", "base", "R") + her "Besides, I wouldn't really be able to mock them with a teacher present." ("open", "closed", "base", "mid") + her "Madam Hooch would be unquestionably against that." ("open", "narrow", "base", "mid") + + gen "..." ("base", xpos="far_left", ypos="head") + her "I wont step a foot on that podium, [genie_name]." ("open", "closed", "base", "mid") + her "There's nothing you could tempt me with that would change my mind." ("soft", "narrow", "annoyed", "R") + gen "Well then..." ("base", xpos="far_left", ypos="head") + gen "No more mister nice guy..." ("angry", xpos="far_left", ypos="head") + her "[genie_name]?" ("soft", "wink", "base", "mid") + gen "[hermione_name], you're going to commentate that match. Whether you like it or not." ("base", xpos="far_left", ypos="head") + her "No! You can't change my mind on this!" ("annoyed", "base", "angry", "mid") + gen "Are you sure about that?" ("grin", xpos="far_left", ypos="head") + her "Why?" ("annoyed", "narrow", "angry", "mid") # suspicious + + menu: + gen "[hermione_name]..." ("grin", xpos="far_left", ypos="head") + "\"I heard Cho has a crush on you!\"": + $ d_flag_01 = True + her "She has a--{w=0.5} What?" ("open", "wide", "base", "stare") + + "\"I heard you have a crush on Cho!\"": + $ d_flag_01 = False + her "But--{w=0.3} That's not true!" ("open", "wide", "base", "mid") + + her "That's a lie!" ("clench", "base", "angry", "mid") # angry + her "Not even Cho would agree to this!" ("open", "base", "angry", "mid") + gen "Why don't we ask her?" ("grin", xpos="far_left", ypos="head") + her "What?" ("angry", "base", "base", "mid") + her "[genie_name], you can't do this!" ("open", "base", "angry", "mid") + gen "Sure I can." ("grin", xpos="far_left", ypos="head") + + call hide_characters + call nar(">You telepathically call Cho into your office.") + + hide screen bld1 + with d3 + pause .2 + + if her_tier < 4: # Hermione changes into her school outfit + # TODO Does this even make sense? She's supposed to be comfortable enough to wear her clothes around the school anyway + call nar(">While Hermione hastily puts on some less revealing clothes.") + $ her_outfit_last.save() + $ hermione.equip(her_outfit_default) + else: + $ hermione.wear("all") + + + # Summon Cho. + call cho_walk(action="enter") + pause 1 + + call cho_walk(680, "base") + pause .2 + + call her_walk("mid", "base") + call chibi_emote("thought", "hermione") + with d3 + pause .8 + call chibi_emote("hide", "hermione") + with d3 + + her "" ("annoyed", "base", "angry", "R", xpos="270", ypos="base", flip=True) + cho "Hello, Sir." ("base", "base", "base", "mid", xpos="close", ypos="base") + cho "Granger." ("soft", "narrow", "base", "L") + her "..." ("annoyed", "base", "angry", "mid", cheeks="blush") + cho "How can I be of help?" ("base", "base", "base", "mid") + gen "I have some very good news for you, Miss Chang." ("base", xpos="far_left", ypos="head") + gen "Miss Granger and I were just discussing who should commentate the next Squidditch game." ("base", xpos="far_left", ypos="head") + cho "Oh, am I sensing a blackmail situation?" ("crooked_smile", "base", "base", "mid") + her "Blackmailing?!{w=0.5} Me?" ("open", "wide", "base", "stare") # shocked + cho "" ("annoyed", "narrow", "base", "L") + gen "What other choice do we have? You're acting stubborn, Miss Granger." ("base", xpos="far_left", ypos="head") + her "So that's what's going on here. You two are scheming against me!" ("angry", "base", "angry", "mid") # angry + cho "Come on, Hermione. You can't be {b}that{/b} scared of those Slytherins..." ("open", "narrow", "raised", "L") + cho "Don't be such a coward..." ("annoyed", "narrow", "angry", "L") + her "I am not!" ("annoyed", "base", "angry", "R", cheeks="blush") + cho "Please! We need somebody to commentate." ("upset", "narrow", "base", "L") + her "I won't do it! And neither of you can change my mind on this!" ("angry", "base", "angry", "mid") + gen "I bet she can!" ("grin", xpos="far_left", ypos="head") + cho "Me? How so?" ("annoyed", "base", "raised", "mid") + + if d_flag_01: # Cho has crush + gen "Miss Chang, I've heard rumours that you have a huge crush on Hermione..." ("base", xpos="far_left", ypos="head") + cho "What? That's rubbish!" ("open", "narrow", "angry", "mid", cheeks="blush") + her "..." ("annoyed", "base", "angry", "mid") + + else: # Hermione has crush + gen "Miss Chang, I've heard rumours that Hermione secretly has a crush on you..." ("base", xpos="far_left", ypos="head") + cho "She does?" ("soft", "base", "raised", "mid", cheeks="blush") # Surprised + her "No, I don't!" ("clench", "happyCl", "angry", "mid") + her "It's just made up rubbish..." ("open", "base", "angry", "mid") + + gen "Rubbish or not, I'm sure Miss Granger wouldn't want such rumours to make their rounds now, would she?" ("grin", xpos="far_left", ypos="head") + cho "" ("annoyed", "base", "raised", "L") + her "*Pfff*...{w=0.3} As if anybody would believe that..." ("annoyed", "base", "angry", "R") + cho "Oh, I get it now!" ("base", "base", "base", "mid") + her "" ("annoyed", "narrow", "angry", "L") + cho "You can count on me, Sir!" ("crooked_smile", "base", "base", "mid") + cho "I don't mind if my reputation gets a bit tarnished, from being associated with her." ("open", "narrow", "angry", "L") + cho "For as long as it gets me closer to that cup..." ("base", "narrow", "base", "mid") + her "You're such an idiot..." ("clench", "happyCl", "angry", "mid") + her "I can't believe you'd stoop as low as blackmail for some stupid Quidditch Cup!" ("open", "narrow", "angry", "L") + + if d_flag_01: # Cho has crush + cho "Don't be mean to me, Hermione." ("soft", "base", "base", "L") + cho "After all, I really, really like you!" ("base", "narrow", "base", "L") + her "..." ("annoyed", "narrow", "angry", "R") # looks away + cho "I love your bushy hair, your cute little nose, your gorgeous eyes..." ("soft", "narrow", "raised", "L") + cho "Your enormous rack!" ("grin", "narrow", "angry", "L") + her "*Tzzzs*!" ("clench", "closed", "angry", "mid", cheeks="blush") # Starts to blush + her "Stop lying!" ("open", "base", "angry", "L", cheeks="blush") + cho "" ("horny", "narrow", "angry", "L", cheeks="blush") + gen "She sounds pretty convincing to me..." ("base", xpos="far_left", ypos="head") + cho "Everybody will know that I have a thing for you, Granger!" ("open", "narrow", "angry", "L") + cho "And, sooner or later, I might even mix in some love potion into your pumpkin juice..." ("soft", "narrow", "raised", "L") + her "You'd...{w=0.5} do what?" ("clench", "wide", "worried", "stare", cheeks="blush") + gen "(Pumpkin juice? Sounds disgusting.)" ("base", xpos="far_left", ypos="head") + cho "You wouldn't want all of your friends to see us finally make out, would you?" ("horny", "narrow", "raised", "L", cheeks="blush") + + else: # Hermione has crush + cho "Tell me, Granger..." ("soft", "narrow", "raised", "L") + cho "What exactly do you like about me?" ("base", "narrow", "angry", "L") + her "" ("annoyed", "narrow", "angry", "L") + cho "Is it my hair? Or my strong legs? Or my abs?" ("open", "narrow", "base", "down") + cho "Would you like me to show you my body again, right now?" ("grin", "narrow", "base", "L") + her "No thanks." ("normal", "closed", "base", "mid") + cho "I should mix in some drops of Veritaserum into your pumpkin juice, and ask you again..." ("annoyed", "narrow", "base", "L") + cho "Maybe then you'll speak the truth... How you really think of me." ("annoyed", "narrow", "raised", "mid") + her "You wouldn't!" ("clench", "base", "angry", "L", cheeks="blush") + cho "Yes I would!" ("base", "narrow", "base", "L") + gen "(Pumpkin juice? Sounds disgusting...)" ("base", xpos="far_left", ypos="head") + cho "And I'll make sure that all your friends hear about it. Maybe I'll even let them watch!" ("open", "narrow", "angry", "L") + + her "Professor! You can't have her do that. That's insane!" ("clench", "happyCl", "worried", "mid", cheeks="blush") + cho "" ("annoyed", "narrow", "base", "up") + gen "That's all up to you, Miss Granger." ("base", xpos="far_left", ypos="head") + gen "All you have to do is agree to commentate again." ("grin", xpos="far_left", ypos="head") + her "All the matches!" ("clench", "base", "angry", "mid") + cho "" ("annoyed", "narrow", "base", "L") + gen "What?" ("base", xpos="far_left", ypos="head") + her "I will commentate all the matches, the Gryffindor match as well! The one after this one, should Ravenclaw even get that far..." ("open", "base", "angry", "mid") + cho "Oh no you won't! You'd be all in favour of Gryffindor!" ("clench", "base", "angry", "L") + her "Yes I would. And I'll make sure that you lose." ("base", "narrow", "base", "L") + gen "Great. Finally we can get on with this..." ("base", xpos="far_left", ypos="head") + cho "Wait!--" ("clench", "happyCl", "worried", "mid", cheeks="blush") + gen "Miss Granger, you better keep to your word this time..." ("base", xpos="far_left", ypos="head") + her "" ("base", "base", "base", "mid") + cho "(...)" ("annoyed", "narrow", "angry", "L", cheeks="blush") + gen "If you don't show up I'll take a hundred points away from Gryffindor!" ("grin", xpos="far_left", ypos="head") + her "That's just typical of you!" ("annoyed", "narrow", "base", "mid") + gen "Make sure to be present..." ("base", xpos="far_left", ypos="head") + her "I will." ("annoyed", "narrow", "base", "L") + gen "You are both dismissed..." ("base", xpos="far_left", ypos="head") + her "..." ("base", "base", "base", "mid") + + call her_walk(action="leave") + pause .2 + + show screen blkfade + with d3 + + call cho_chibi("stand","mid","base") + hide screen blkfade + cho "" ("annoyed", "narrow", "angry", "mid", xpos="mid", ypos="base", trans=fade) + gen "I'd say that was a success." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "R") + + if game.daytime: + cho "Good day, Sir." ("open", "narrow", "angry", "mid") + else: + cho "Good night, Sir." ("open", "narrow", "angry", "mid") + + call cho_walk(action="leave") + + pause 1.0 + call bld + gen "Quest complete!" ("grin", xpos="far_left", ypos="head") + + $ cho_mood = 0 + + $ hermione_busy = True + $ cho_busy = True + + $ cho_quid.E7_complete = True + + if cho_quid.slytherin_training: # Finished practice match? + $ cho_quid.lock_training = True + + # Reset + if her_tier < 4: + $ hermione.equip(her_outfit_last) # Equip player outfit. + + jump main_room_menu + +label cho_quid_E8: + # Genie hangouts with Tonks, asks her for help with the Slytherins. + + gen "I wanted to ask you for a favour..." ("base", xpos="far_left", ypos="head") + ton "Me? Selling a favour to you?" ("grin", "closed", "base", "mid", ypos="head", flip=False) + ton "You sure you can afford me?" ("base", "base", "raised", "mid") #Horny + gen "Not that kind of favour." ("base", xpos="far_left", ypos="head") + ton "*Aww*..." ("annoyed", "base", "raised", "down") + + # Tell Tonks about Cho. + gen "You know this {i}Quiddish{/i} sport the students play here?" ("base", xpos="far_left", ypos="head") + ton "Quidditch?" ("upset", "base", "raised", "mid") + gen "Close enough." ("base", xpos="far_left", ypos="head") + gen "The next match is coming up, and I require your help with something." ("base", xpos="far_left", ypos="head") + ton "Of course. What is it?" ("base", "base", "base", "mid") + gen "There's this asian girl..." ("base", xpos="far_left", ypos="head") + ton "Cho Chang?" ("open", "base", "raised", "mid") + gen "How did you--" ("base", xpos="far_left", ypos="head") + gen "(Is she the {i}token asian{/i} girl in this school?)" ("base", xpos="far_left", ypos="head") + gen "Yes, the little Ravenclaw minx, correct." ("base", xpos="far_left", ypos="head") + ton "Well, I figured you'd be talking about her - if it has to do with Quidditch." ("open", "base", "base", "R") + gen "She's one of the girls I buy favours from." ("base", xpos="far_left", ypos="head") + ton "No way!" ("open_wide", "shocked", "shocked", "mid", hair="horny") + ton "You got that little hotty--" ("horny", "base", "raised", "R", hair="horny") + ton "*Ehm*... hot-head to sell you favours?" ("mad", "base", "raised", "R") + gen "Once or twice..." ("base", xpos="far_left", ypos="head") + ton "Impressive." ("horny", "base", "raised", "mid") + ton "Tell me everything!" ("horny", "base", "angry", "mid") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-Tell her everything-": + gen "She's been stripping for me." ("base", xpos="far_left", ypos="head") + ton "Cho?! And I'm supposed to believe that?" ("upset", "wide", "raised", "mid") + gen "Oh, you better believe it!" ("grin", xpos="far_left", ypos="head") + ton "Holy shit!" ("upset", "wide", "shocked", "stare", hair="horny") + ton "I'd pay so much gold to watch that girl take her clothes off..." ("base", "base", "raised", "R") + ton "You need to invite me next time!" ("annoyed", "base", "angry", "mid", hair="angry") # angry + gen "And how would I get her to agree to that?" ("base", xpos="far_left", ypos="head") + ton "Well... *Ehm*..." ("upset", "base", "worried", "down", hair="horny") + gen "It was difficult enough to get her to strip just for me..." ("base", xpos="far_left", ypos="head") + gen "She only did it because I helped her win against Hufflepuff." ("base", xpos="far_left", ypos="head") + ton "So that was your idea with the skirt? Very clever." ("horny", "base", "annoyed", "mid") + gen "Maybe I could arrange something once we've beaten those Slytherins..." ("base", xpos="far_left", ypos="head") + gen "For the two of you." ("base", xpos="far_left", ypos="head") + ton "Or all three of us!" ("soft", "base", "raised", "mid") + gen "Yes!" ("grin", xpos="far_left", ypos="head") + gen "I'm sure that minx would love that!" ("grin", xpos="far_left", ypos="head") + ton "I can't wait!" ("base", "happyCl", "base", "mid") + + "-Don't tell her-": + gen "I don't think I should..." ("base", xpos="far_left", ypos="head") + ton "What? Why not?" ("open", "base", "worried", "mid") + gen "Miss Chang wouldn't like anybody to know." ("base", xpos="far_left", ypos="head") + ton "I can keep a secret!" ("upset", "base", "worried", "R") + gen "I really shouldn't..." ("base", xpos="far_left", ypos="head") + ton "Tell me, or I'll jinx your balls off!" ("upset", "base", "angry", "mid", hair="angry") + gen "*Ghzzz!* Alright! Alright!" ("angry", xpos="far_left", ypos="head") + gen "You sure know how to get me to talk..." ("base", xpos="far_left", ypos="head") + + # Talk about Slytherin. + gen "I'm currently helping her with this Quidditch thing in exchange for favours." ("base", xpos="far_left", ypos="head") + gen "But to get any further with her, I'll have to help her beat the opposing team in the next match." ("base", xpos="far_left", ypos="head") + ton "Slytherin? That shouldn't be too difficult." ("open", "base", "raised", "mid") + gen "Really? How so?" ("base", xpos="far_left", ypos="head") + ton "Their tactics revolve around strength, brute force, and manifesting their dominance on the field!" ("open", "closed", "angry", "mid") + ton "A good strategy for when you're in bed with your partner, but not in Quidditch." ("base", "base", "angry", "mid") + gen "You don't say..." ("base", xpos="far_left", ypos="head") + gen "Wait, what?" ("angry", xpos="far_left", ypos="head") + ton "I've seen them play a couple of times. They clearly aren't the brightest bunch..." ("upset", "base", "annoyed", "R") + ton "What tactics are you gonna use against them?" ("base", "base", "raised", "mid") + gen "I shouldn't ruin the surprise." ("grin", xpos="far_left", ypos="head") + ton "Can't wait... If it's anything like the first game." ("base", "base", "raised", "R") + gen "The main hurdle right now is that I have no way to try out our tactics on the Slytherins..." ("base", xpos="far_left", ypos="head") + gen "They refuse to practice against Ravenclaw." ("base", xpos="far_left", ypos="head") + ton "Well that's unfortunate..." ("upset", "base", "shocked", "L") + ton "Perhaps you could ask Snape. He should be able to get those lazy gits back on the pitch..." ("open", "base", "base", "mid") + + if cho_quid.E9_complete: + gen "I already did. He isn't going to help me out..." ("base", xpos="far_left", ypos="head") + ton "Well that's just like him." ("open", "base", "angry", "R") + else: + gen "I guess I could..." ("base", xpos="far_left", ypos="head") + ton "Yeah, maybe not..." ("open", "closed", "base", "mid") + + ton "Just leave it to me, Genie." ("base", "base", "angry", "mid") + ton "I'll get those shits back on the grass..." ("mad", "base", "angry", "mid") + gen "And how will you accomplish that?" ("base", xpos="far_left", ypos="head") + ton "Oh, don't you worry..." ("silly", "happyCl", "base", "mid") + ton "Perhaps I'll tell you my techniques some other time." ("base", "narrow", "angry", "mid") + + gen "..." ("base", xpos="far_left", ypos="head") + if not cho_quid.E7_complete: + # Has NOT blackmailed Hermione + + gen "That's not all, though. There's something else I need your help with." ("base", xpos="far_left", ypos="head") + ton "You can't expect me to fix all of your problems, Genie." ("annoyed", "base", "base", "mid") + gen "It's about Hermione's role as a commentator..." ("base", xpos="far_left", ypos="head") + ton "Really? What happened to Miss Granger?" ("upset", "base", "worried", "mid") + gen "She quit..." ("base", xpos="far_left", ypos="head") + ton "*Hmm*... That's too bad..." ("open", "base", "worried", "R") + ton "But it's understandable... After all that mocking she had to go through last game." ("open", "base", "worried", "mid") + ton "Poor thing..." ("mad", "base", "worried", "L") + ton "Have you tried talking to her?" ("open", "base", "raised", "mid") + gen "Not yet..." ("base", xpos="far_left", ypos="head") + ton "Well, if anyone could convince her surely you'd be the one to be able to." ("base", "base", "base", "R") + gen "..." ("base", xpos="far_left", ypos="head") + ton "Why don't you tell her that a very special someone will be really disappointed if she doesn't show up." ("horny", "base", "base", "stare") + gen "(So it's not just me who thinks she's into Cho!)" ("grin", xpos="far_left", ypos="head") + ton "(She was so cute fumbling over her words...)" ("base", "happyCl", "base", "mid") + ton "I'm sure you'll be able to change her mind." ("base", "base", "base", "mid") + else: + gen "Did you know Hermione wanted to quit her task as a commentator?" ("base", xpos="far_left", ypos="head") + ton "Did she now? I thought she did well in the Hufflepuff game." ("upset", "base", "raised", "mid") + ton "A bit wooden, but not bad for her first try." ("open", "base", "base", "R") + ton "Speaking in front of such a large crowd and all." ("open", "base", "raised", "mid") + ton "I thought it was rather cute listening to her fumble her words..." ("base", "happyCl", "base", "mid") + ton "What changed her mind?" ("base", "base", "base", "mid") + gen "Cho helped me convince her to do it." ("base", xpos="far_left", ypos="head") + ton "Really? How?" ("open", "base", "raised", "mid") + ton "I'd love to hear it." ("horny", "base", "angry", "mid") + gen "*Hmm*... Maybe next time." ("base", xpos="far_left", ypos="head") + ton "Very well..." ("upset", "base", "worried", "R") + + ton "In any case, I could join you in the commentator booth during the next game to help encourage Miss Granger." ("open", "base", "base", "mid") + ton "If anything I'll get a nice view from up there." ("grin", "happyCl", "base", "mid") + ton "Since you already made sure Hufflepuff is out of the competition..." ("upset", "base", "raised", "R") + ton "The best we can hope for now is to not get last..." ("open", "closed", "base", "mid") + ton "It's always third or nothing with us Puffs." ("open", "base", "worried", "R") + gen "(Puffs?)" ("base", xpos="far_left", ypos="head") + + gen "Well, I'd be happy to have you." ("grin", xpos="far_left", ypos="head") + ton "*N'Aww*, you're so sweet!" ("base", "base", "worried", "mid") + with hpunch + $ renpy.play("sounds/hiccup_fem.ogg") + ton "*Hick*!... whoopsie..." ("upset", "wide", "base", "mid") + ton "Now, I better get going convincing those boys to play again..." ("open", "base", "raised", "R", hair="horny") + + if game.daytime: + ">You finish your drinks before calling it a day." + else: + ">You finish your drinks before calling it a night." + + $ tonks_busy = True + $ cho_quid.E8_complete = True + $ cho_quid.lock_practice = False + $ cho_quid.slytherin_prepared = True # Unlocks practice match + + jump end_tonks_hangout_points + +label cho_quid_E9: + # Ask Snape for help, but it backfires (optional) + + sna "Your precious Ravenclaw bird, made any breakthroughs with her yet?" ("snape_37", ypos="head") + gen "The little Asian?" ("base", xpos="far_left", ypos="head") + sna "Yes, Miss Chang." ("snape_40") + gen "..." ("base", xpos="far_left", ypos="head") + sna "I wish her best of luck against my team of Slytherins." ("snape_02") + sna "She'll need it." ("snape_45") + gen "What kind of game are you playing?" ("angry", xpos="far_left", ypos="head") + sna "I'm sorry?" ("snape_38") + gen "Your team didn't show up for practice against Ravenclaw!" ("base", xpos="far_left", ypos="head") + sna "Well, there's no specific rule that forces the teams to practise against each other..." ("snape_05") + gen "There's not?" ("base", xpos="far_left", ypos="head") + gen "(Actually that does make sense...)" ("base", xpos="far_left", ypos="head") + sna "Of course not, but it is heavily encouraged for students that are looking to make it professionally." ("snape_09") + gen "Do you have something to do with this?" ("base", xpos="far_left", ypos="head") + sna "I don't know what you're talking about..." ("snape_47") #Smirk + gen "You little weasel..." ("angry", xpos="far_left", ypos="head") + sna "Ha! Do you have another trick up your sleeve?" ("snape_20") + sna "What's it gonna be? An even shorter skirt? Prohibit her from wearing panties?" ("snape_13") + sna "Well, we'll see during the game if it has any effect..." ("snape_46") + gen "*Grrrrr*!..." ("angry", xpos="far_left", ypos="head") + gen "Get your team back on that pitch, you coward!" ("angry", xpos="far_left", ypos="head") + sna "No... I don't think I will..." ("snape_41") + gen "Give me that wine!" ("angry", xpos="far_left", ypos="head") + sna "You want some?" ("snape_20") + call play_sound("spit") # Spits in the cup + sna "..." ("snape_40") + gen "I'm gonna win that bet. Then I'll have the last laugh!" ("base", xpos="far_left", ypos="head") + sna "I wish you good fortune." ("snape_22") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Get your wine from some place else, you slacker." ("angry", xpos="far_left", ypos="head") + sna "You won't win by making friends, isn't that right?" ("snape_18") + gen "..." ("base", xpos="far_left", ypos="head") + sna "*Hrhm*... Good riddance, then..." ("snape_12") + $ renpy.sound.play(["sounds/gulp.ogg"]*3) + call nar(">Snape empties the last drop of wine, before leaving.","start") + ">You feel a sense of remorse shortly after he's gone, realizing that you're both just parts of the same coin." + call nar(">Your friendship level with him has not changed...{w=0.5} Probably...","end") + + $ snape_busy = True + $ ss_summon_pause = 5 # Snape can't be summoned for a couple of days. Can be set to 0 once you talked to Tonks. + + $ cho_quid.E9_complete = True + + $ chair_OBJ.hidden = False + + jump end_snape_hangout_no_points + +label cho_quid_E10: + # Introduction to Gryffindor team. + + call cho_walk("mid", "base", action="enter") + + if game.daytime: + cho "Good morning, [cho_genie_name]..." ("open", "base", "base", "mid", xpos="right", ypos="base", trans=d3) + gen "Good morning [cho_name]." ("base", xpos="far_left", ypos="head") + else: + cho "Good evening, [cho_genie_name]..." ("open", "base", "base", "mid", xpos="right", ypos="base", trans=d3) + gen "Good Evening [cho_name]." ("base", xpos="far_left", ypos="head") + + gen "Ready to continue your training and take on those Griffins?" ("base", xpos="far_left", ypos="head") + cho "Griffins, [cho_genie_name]?" ("soft", "base", "raised", "mid") + gen "Yeah! Aren't they the next team we're up against?" ("base", xpos="far_left", ypos="head") + cho "Oh, you mean the Gryffindor team." ("soft", "base", "base", "mid") + gen "Yeah, the doors!" ("base", xpos="far_left", ypos="head") + cho "*Sigh*." ("base", "narrow", "raised", "downR") + gen "Ready to knock those doors down?" ("base", xpos="far_left", ypos="head") + cho "Always, if it means I get to take that smug look off of Granger's face." ("smile", "base", "base", "mid") + gen "Great, then tell me what you know about their team." ("base", xpos="far_left", ypos="head") + cho "Sure thing, what would you like to know?" ("base", "base", "base", "mid") + gen "What makes them different to the other teams? Can we expect similar tactics like with the Slytherbins?" ("base", xpos="far_left", ypos="head") + cho "Oh, no... They're the polar opposite to the Slytherin team." ("soft", "base", "base", "mid") + gen "Figures." ("base", xpos="far_left", ypos="head") + gen "So what's their schtick then?" ("base", xpos="far_left", ypos="head") + cho "They use tactics and coordination!" ("soft", "base", "base", "mid") + gen "What?! There's tactics in this game?" ("angry", xpos="far_left", ypos="head") + cho "They're also quite a bit more nimble than the Slytherin team, so they got hit by way less bludgers than we did." ("open", "base", "base", "mid") + cho "Some of the hits they pulled off during the last game had my teammates covered in bruises for days!" ("soft", "narrow", "angry", "downR") + cho "Would've been weeks if it wasn't for Madam Pomfrey." ("open", "closed", "angry", "mid") + gen "*Hmm*... Well, hopefully we wont see that kind of meddling from Snape this time around." ("base", xpos="far_left", ypos="head") + cho "Snape?! What has Professor Snape got to do with it?" ("angry", "base", "base", "mid") + gen "He provided them with a felix potion... Thing, before the game." ("base", xpos="far_left", ypos="head") + cho "Felix Felicis!?" ("clench", "wide", "base", "mid") + gen "That's the one." ("base", xpos="far_left", ypos="head") + cho "But that's against the rules!" ("disgust", "base", "angry", "mid") + gen "It is?" ("base", xpos="far_left", ypos="head") + cho "Of course it is..." ("angry", "base", "angry", "mid") + cho "To think Professor Snape would go as far as giving them a luck potion!" ("angry", "narrow", "angry", "downR") + gen "You won the match did you not? Even despite the fact they drank that thing." ("base", xpos="far_left", ypos="head") + cho "If the department of magical games and sports heard about this, there's no way those Slytherins would have any chance at--" ("angry", "closed", "angry", "mid") + gen "[cho_name]..." ("base", xpos="far_left", ypos="head") + cho "What? It's true!" ("clench", "narrow", "base", "mid") + gen "Achieving true success isn't about bringing other people down, but to raise yourself above others." ("base", xpos="far_left", ypos="head") + gen "(In her case, quite literally...)" ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "base", "base", "mid") + cho "No offence [cho_genie_name] but I must say I've never heard such nonsense in my life." ("disgust", "narrow", "angry", "mid") + cho "I only care about reaching the top, no matter what!" ("open", "closed", "angry", "mid") + gen "Very well [cho_name]... If that's the case then I'm not sure if I can help you any further." ("base", xpos="far_left", ypos="head") + cho "What?!" ("angry", "base", "base", "mid") + cho "But [cho_genie_name], I still want you-- I still need your help!" ("mad", "narrow", "base", "mid") + gen "Then you shouldn't bite the hand that feeds you." ("base", xpos="far_left", ypos="head") + cho "[cho_genie_name]?" ("disgust", "base", "base", "mid") + gen "Do you think Severus and the Slytherins would be the only ones in trouble if you contacted some ministry employee?" ("base", xpos="far_left", ypos="head") + cho "..." ("normal", "narrow", "base", "downR") + gen "I thought that I was doing you a favour by coaching you... Some way to repay me for my time." ("base", xpos="far_left", ypos="head") + cho "I--{w=0.4} I suppose I didn't think that far [cho_genie_name]..." ("clench", "narrow", "base", "downR") + gen "For this to work and for you to receive my continued help, you need to remember who got you this far..." ("base", xpos="far_left", ypos="head") + cho "Right..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Well then, let's show them who the greatest snatch catcher is!" ("base", xpos="far_left", ypos="head") + cho "Yes [cho_genie_name]!" ("soft", "narrow", "base", "mid", cheeks="blush") + + #Unlock Personal favours (Public locked) + $ cho_quid.E10_complete = True + $ cho_favors_unlocked = True + + jump cho_requests + +label cho_quid_E11: + # Ask Luna to cheer for Ravenclaw (She cheers for Gryffindor, the bimbo!) + + gen "[luna_name], there's something I have been meaning to ask." ("base", xpos="far_left", ypos="head") + lun "Yes, [lun_genie_name]?" ("soft", "base", "base", "mid") + gen "I require your assistance with something..." ("base", xpos="far_left", ypos="head") + lun "Assistance? You need my help, [lun_genie_name]?" ("open", "base", "raised", "mid") + gen "Yes, it's about the upcoming Quidditch finals." ("base", xpos="far_left", ypos="head") + lun "Oh, right... Yes, that is an issue for sure." ("open", "narrow", "base", "down") + gen "I haven't even told you what the problem is..." ("base", xpos="far_left", ypos="head") + lun "Oh... Sorry, [lun_genie_name]... Go on." ("angry", "base", "base", "mid") + gen "Well, I've been looking into setting up a cheerleading squad." ("base", xpos="far_left", ypos="head") + lun "Cheerleading?" ("soft", "base", "base", "mid") + gen "Yes I--" ("base", xpos="far_left", ypos="head") + gen "Are you asking what it is or just confirming what I just said?" ("base", xpos="far_left", ypos="head") + lun "Oh, of course I know what it is! It's students that dress up and cheer for the players, right?" ("grin", "base", "base", "mid") + gen "That's right..." ("base", xpos="far_left", ypos="head") + lun "..." ("base", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "So... Is that something you could help me with?" ("base", xpos="far_left", ypos="head") + lun "Oh, you want me to cheer at the finals?!" ("mad", "base", "base", "mid") + gen "Yes... And your friends as well." ("base", xpos="far_left", ypos="head") + gen "{size=-8}If you have any to begin with...{/size}" ("base", xpos="far_left", ypos="head") + lun "I could hear some mumbling, was that you [lun_genie_name]?" ("angry", "base", "base", "stare") + gen "No, it was--" ("base", xpos="far_left", ypos="head") + lun "A ghytrash? Maybe a phantom rat?" ("angry", "base", "base", "stare") + gen "A phantom rat-- what--" ("base", xpos="far_left", ypos="head") + gen "Girl, you're losing my patience..." ("angry", xpos="far_left", ypos="head") + lun "I could prepare a skurge charm to--" ("mad", "base", "base", "mid") + gen "I'll handle it, don't worry about it..." ("base", xpos="far_left", ypos="head") + gen "I'd still like to ask you to cheer in the upcoming Quidditch match, would you agree?" ("base", xpos="far_left", ypos="head") + lun "Oh, yes [lun_genie_name], I'd be happy to!" ("angry", "base", "base", "mid") + gen "Are you sure?" ("base", xpos="far_left", ypos="head") + lun "Of course, [lun_genie_name]!" ("grin", "base", "base", "mid") + gen "Great. Then I'll look forward at seeing you cheering at the game!" ("base", xpos="far_left", ypos="head") + + $ cho_quid.E11_complete = True + + call lun_walk(action="leave") + + pause 1.0 + + # Normally we allow the player to pick favours, but Luna is being Luna. + gen "... Did she just leave?" ("base", xpos="far_left", ypos="head") + gen "I guess they don't call her Loony Luna for nothing..." ("base", xpos="far_left", ypos="head") + + jump end_luna_event + +label cho_quid_E12: + + # Genie visits cho during her training as requested + + $ game.weather = "clear" + + gen "*Yawn*..." ("base", xpos="far_left", ypos="head") + gen "I can't believe she made me wake up this early..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("stand", 225, "base") + with d3 + + pause .4 + call gen_walk(path=[(230, 470), (410, 470), (417, 426)]) + + pause .4 + call gen_chibi("stand_alt", flip=False) + with d3 + + pause .4 + #Genie chibi either walks around desk or teleports next to bird facing the window + + $ renpy.sound.play("sounds/MaleGasp.ogg") + gen "What in the great desert sand is that!?" ("angry", xpos="far_left", ypos="head") + + gen "Oh wait... That's the sun... Never seen it this low before." ("base", xpos="far_left", ypos="head") + gen "Alright then... Better go help her find a broom." ("base", xpos="far_left", ypos="head") + + call gen_chibi("stand", flip=True) + with d3 + pause .3 + + #Genie leaves the office + call gen_walk(action="leave") + + show screen blkfade + with d5 + + call play_music("stop") + call play_sound("grass") + call nar(">You make your way down to the pitch, catching a few stares on the way by some of the portraits. Looks like the real Dumbledore wasn't a morning person either.") + + #Pitch entrance, Cho is standing there + call room("quidditch_pitch") + play bg_sounds "sounds/outskirts.ogg" fadein 2 + call gen_chibi("stand", "left", "base", flip=True) + call cho_chibi("stand", "right", "base", flip=False) + + hide screen blkfade + with d5 + + call gen_walk(xpos="mid") + + gen "Alright then, let's find you a broom to use so we can finally be done--" ("base", xpos="far_left", ypos="head") + cho "Where have you been?" ("disgust", "base", "angry", "mid", xpos=460, ypos="base", trans=d3) + gen "*Err*...{w=0.4} In my office?" ("base", xpos="far_left", ypos="head") + cho "It's ten AM! I've already been here for the past five hours!" ("soft", "base", "angry", "mid") + gen "You've been here since six AM?" ("angry", xpos="far_left", ypos="head") + cho "Five AM!" ("scream", "closed", "angry", "mid") + gen "Then where are the brooms?" ("base", xpos="far_left", ypos="head") + cho "I put them in the cleaning supply closet where they belong." ("disgust", "narrow", "angry", "mid") + cho "They were all terrible, I tried every single one and they're even worse than my family's bluebottle!" ("open", "narrow", "angry", "R") + gen "Right..." ("base", xpos="far_left", ypos="head") + gen "So the broom makes the player, does it?" ("base", xpos="far_left", ypos="head") + cho "Yes!" ("mad", "narrow", "base", "mid") + cho "I mean no!" ("clench", "narrow", "base", "mid", cheeks="blush") + cho "But you still need a broom that is made to be used professionally." ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "And they all just happen to cost a lot of money?" ("base", xpos="far_left", ypos="head") + cho "That's Quidditch for you." ("open", "closed", "base", "mid") + gen "Sounds like pay to win to me..." ("base", xpos="far_left", ypos="head") + gen "Can't you just borrow a broom from one of the other players?" ("base", xpos="far_left", ypos="head") + cho "...{w=0.4} What do you mean by \"other players\"?" ("disgust", "narrow", "base", "mid") + gen "What about that greasy haired blond fella?" ("base", xpos="far_left", ypos="head") + cho "Malfoy?" ("disgust", "wide", "base", "mid") + gen "Yeah, him! Or that guy you dated?" ("base", xpos="far_left", ypos="head") + cho "Are you seriously expecting that any of them would lend me their broom?" ("angry", "narrow", "base", "mid") + cho "After the stunts I pulled to win the games against them?" ("angry", "base", "base", "mid") + gen "What about the teachers then?" ("base", xpos="far_left", ypos="head") + cho "Teachers..." ("open", "narrow", "base", "down") + cho "The only teacher that would own a proper Quidditch approved broom is Madam Hooch, and she'll be using it during the game." ("open", "narrow", "base", "downR") + gen "Madam Who?" ("base", xpos="far_left", ypos="head") + cho "{size=+5}Madam Hooch!{/size}" ("open", "base", "base", "mid") #yelling + femv "One moment!" + + hide cho_main + hide screen bld1 + with d3 + + #Hooch chibi comes down the commentator booth stairs (Or left stairs) and stands next to genie (Genie in the middle of the two girls) + + $ hooch_chibi.zoom = 0.38 + $ hooch_chibi.zorder = 4 + $ hooch_chibi.move(path=[(50, 460), (200, 520), (450, 500)]) + + pause 1.5 + call gen_chibi(flip=False) + with d3 + + pause 1.0 + + gen "(Mamma mia!)" ("grin", xpos="far_left", ypos="head") + + #Hooch theme + play music "music/march-of-the-spoons-by-kevin-macleod-from-filmmusic-io.ogg" fadein 1 fadeout 1 + + #Hooch doll fades in + hoo "Professor Dumbledore, Miss Chang, what can I do you for?" ("base", "base", "base", "L", xpos=100, ypos="base", flip=True, trans=d3) # "what can I do you for" is a form of a joke, fits next line perfectly. + gen "Me..." ("base", xpos="far_left", ypos="head") + hoo "Sorry?" ("open", "base", "base", "L") + gen "Oh...{w=0.4} *Err*...{w=0.4} Miss Chang here is looking for a broom to use for the final Quidditch match." ("base", xpos="far_left", ypos="head") + hoo "A broom eh?" ("normal", "base", "raised", "L") + hoo "So that's why I saw you bobbing around on the school training brooms." ("grin", "shocked", "shocked", "L") + hoo "We use those for cleaning you know." ("base", "narrow", "base", "L") + cho "See! I told you, sir!" ("mad", "narrow", "base", "mid", trans=d3) + gen "..." ("base", xpos="far_left", ypos="head") + hoo "Certainly a good tool to teach students how to fly but not much beyond that." ("base", "base", "base", "L") + hoo "If you learn how to fly on one of those, you'll have no problem on a proper broomstick!" ("base", "base", "shocked", "mid") + cho "" ("annoyed", "narrow", "base", "mid") + gen "The motto for any public school when funds are involved." ("base", xpos="far_left", ypos="head") + hoo "*Ahem*... Yes indeed, always the blunt one, Professor." ("open", "closed", "base", "mid", cheeks="blush") + hoo "So, what's the situation then? Lost your broom?" ("normal", "base", "raised", "L") + hoo "I thought you would've been taught accio by now, Miss Chang?" ("normal", "base", "shocked", "L") + cho "No, that's not it... I've been able to summon my broom for a long time." ("angry", "closed", "base", "L") + cho "The problem...{w=0.4} Is those stupid twins!" ("angry", "closed", "angry", "mid") + hoo "Right?" ("open", "narrow", "raised", "L") + cho "Can't even look away for a second...{w=0.4} To think they'd care so little about the sport--" ("clench", "narrow", "angry", "down") + gen "{size=-6}*Ahem*... Apparently they put some kind of bug on her broom.{/size}" ("base", xpos="far_left", ypos="head") #small text whispering to hooch + hoo "{size=-6}Espionage?{/size}" ("open", "shocked", "shocked", "mid") #small text + gen "{size=-6}Termites...{/size}" ("base", xpos="far_left", ypos="head") #small text + hoo "{size=-6}I see...{/size}" ("normal", "narrow", "base", "mid") #small text + cho "The audacity! I couldn't believe--" ("angry", "closed", "angry", "mid") + gen "{size=-6}And she's been quite the handful ever since...{/size}" ("base", xpos="far_left", ypos="head") #small text + cho "They should be banned from ever participating--" ("upset", "closed", "angry", "mid", cheeks="blush") + gen "{size=-6}More than usual that is...{/size}" ("base", xpos="far_left", ypos="head") #small text + gen "Please... Help me..." ("base", xpos="far_left", ypos="head") + cho "Azkaban--" ("mad", "happyCl", "angry", "mid", cheeks="blush") + hoo "Calm down miss Chang." ("open", "shocked", "angry", "L") + cho "I need a broom that is as fast as Harry's!" ("angry", "narrow", "angry", "downR", cheeks="blush") + hoo "A firebolt? Now don't you think those expectations are a bit high Miss--" ("open", "shocked", "shocked", "L") + cho "Please professor, you're my only hope!" ("mad", "narrow", "base", "L") + hoo "..." ("normal", "narrow", "base", "downR") + hoo "Well, I'd normally be able to pull some strings, but I don't think even I would be able to procure you a firebolt Miss Chang..." ("open", "base", "base", "down") + hoo "There's only so many produced each season and only a couple has been sold outside of professional--" ("normal", "base", "base", "down") + cho "Pleaaaaaase!" ("soft", "narrow", "worried", "L") + hoo "..." ("normal", "narrow", "worried", "downR") + + #Hooch turns to genie + + gen "{size=-6}Are you sure there's nothing you could do?{/size}" ("base", xpos="far_left", ypos="head") #small text + hoo "{size=-6}*Hmm*...{/size}" ("normal", "narrow", "base", "down") #small text + hoo "{size=-6}Considering how she achieved her previous wins this season...{/size}" ("normal", "base", "raised", "down") #small text + hoo "{size=-6}Maybe it's finally time to pass it down...{/size}" ("base", "base", "raised", "R") #small text + gen "{size=-6}Her previous--{/size}" ("base", xpos="far_left", ypos="head") #small text + + #Hooch turns back to Cho + + hoo "Miss Chang." ("open", "base", "angry", "L") + hoo "I think I've got just the broom for you." ("base", "shocked", "angry", "L") + cho "Yes! Thank you Professor!" ("crooked_smile", "base", "base", "L") + hoo "A broom, that when used by the right person could be faster and even more agile than the firebolt." ("base", "shocked", "shocked", "L") + cho "Thank you so--" ("smile", "closed", "base", "mid") + cho "Wait...{w=0.4} Faster than the firebolt?! But that's the best broom out there!" ("disgust", "wide", "base", "mid") + hoo "Yes girl, you heard me right." ("open", "shocked", "base", "L") + hoo "Now, I'll give you this broom... But you're going to have to promise me..." ("base", "shocked", "base", "L") + hoo "Promise me!" ("open", "shocked", "angry", "L") + hoo "Don't ever tell a soul what I'm about to show you..." ("normal", "shocked", "base", "L") + cho "Oh, of course professor!" ("angry", "base", "base", "L") + hoo "And that goes for you as well professor..." ("open", "base", "shocked", "mid") + gen "Of course, but what exactly--" ("base", xpos="far_left", ypos="head") + hoo "Alright then, one moment..." ("grin", "base", "base", "R") + gen "Hold on, this isn't a broom from some black market brooms dealer is it?" ("base", xpos="far_left", ypos="head") + hoo "Don't be silly, of course not." ("base", "base", "base", "mid") + hoo "You can inspect it if you like." ("base", "base", "base", "mid") + hoo "{size=-6}Coach...{/size}" ("base", "wink", "raised", "mid") #small text #blush #smirkyface + gen "{size=-6}How did you--{/size}" ("base", xpos="far_left", ypos="head") #Small text + gen "{size=-6}Tonks...{/size}" ("base", xpos="far_left", ypos="head") #Small text + hoo "Anyhow, one moment please..." ("base", "base", "base", "mid") + + #Hooch starts walking + #Fades to black + #Hooch Chibi gone + #Fades back + #Some time later + #Hooch comes back holding broom (No dildo) + + $ hooch_chibi.move(path=[(450, 500), (200, 520), (50, 460)]) + + hide screen bld1 + hide hooch_main + hide cho_main + with d3 + + pause 1.0 + + call gen_chibi(flip=True) + with d3 + + pause 0.5 + + gen "Told you I'd get it sorted." + cho "..." + + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}A few moments later...{/color}{/size}" + + call gen_chibi(flip=False) + hide screen blkfade + with d5 + + pause 0.5 + + $ hooch_chibi.move(path=[(50, 460), (200, 520), (450, 500)]) + + pause 1.0 + + hoo "Sorry about that... Had to go through quite a few protective charms to take it out." ("base", "base", "base", "mid", trans=d3) + hoo "Here we are..." ("base", "base", "base", "downR") + cho "Ooooh!" ("open", "wide", "base", "L") + cho "This...{w=0.4} This is the broom of The Masked Seeker!" ("angry", "wide", "base", "L") + gen "The what?" ("base", xpos="far_left", ypos="head") + gen "(I swear it looks the same as the broom she had moments ago...)" ("base", xpos="far_left", ypos="head") + hoo "Ah, yes... It's been a while since somebody called me that..." ("base", "narrow", "shocked", "L") + cho "I can't believe it... To think that our teacher was The Masked Seeker all this time!" ("open", "wide", "base", "L") + cho "How do you not know about her, sir?" ("angry", "narrow", "base", "mid") + menu: + "-Throw the question back at her-": + gen "{i}\"How do you not know about her, sir?\"{/i}" ("base", xpos="far_left", ypos="head") + cho "What?" ("disgust", "narrow", "base", "mid") + gen "Err... What I meant to say..." ("base", xpos="far_left", ypos="head") + cho "*Rolls eyes*" ("soft", "narrow", "base", "R") + "-Blame her-": + gen "It's your fault my memory is so bad." ("base", xpos="far_left", ypos="head") + cho "What?!" ("angry", "base", "base", "mid") + cho "How does that make any sense..." ("disgust", "narrow", "angry", "mid") + gen "Who are you again?" ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "mid") + "-Distract her-": + gen "Look! A squirrel!" ("base", xpos="far_left", ypos="head") + cho "... I'm not a dog, sir." ("disgust", "narrow", "base", "mid") + cho "I know what you're trying to do." ("annoyed", "narrow", "angry", "mid") + gen "... What was that mister squirrel? You want to know about the masked seeker?" ("base", xpos="far_left", ypos="head") + cho "*Rolls eyes*" ("disgust", "narrow", "base", "R") + gen "You heard the squirrel." ("base", xpos="far_left", ypos="head") + "-Pretend like you misheard her-": + gen "Oh, the masked seeker! I thought you said, the masked streaker... You should really learn how to speak up." ("base", xpos="far_left", ypos="head") + cho "... You actually don't know do you?" ("disgust", "narrow", "base", "mid") + gen "Of course I do..." ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Although a reminder wouldn't hurt." ("base", xpos="far_left", ypos="head") + "-Blame the Quidditch guide book-" if quidditchguide_ITEM.used: + gen "Err..." ("base", xpos="far_left", ypos="head") + gen "I must've missed that section in the Quidditch guide." ("base", xpos="far_left", ypos="head") + cho "Her list of accomplishments required a whole book, it said so in the footnotes!" ("disgust", "narrow", "base", "mid") + gen "People read those?" ("base", xpos="far_left", ypos="head") + cho "She was a legendary seeker, the speed and precision of her flying was unmatched." ("angry", "closed", "base", "mid") + cho "Nobody ever managed to figure out her identity or how she managed to fly so well." ("soft", "narrow", "base", "L") + hoo "You sure know your Quidditch history Miss Chang, ten points to Ravenclaw." ("grin", "base", "base", "L") + $ ravenclaw += 10 + cho "And then...{w=0.4} And then...{w=0.4} You dissapeared, and became a teacher?" ("soft", "base", "raised", "L") + hoo "Yes indeed." ("base", "shocked", "base", "L") + cho "Wow...{w=0.4} I can't believe it." ("soft", "base", "base", "mid") + cho "Why?" ("upset", "base", "raised", "L") + hoo "Sorry?" ("open", "shocked", "raised", "L") + cho "Why would you end in the middle of your Quidditch carreer?" ("angry", "narrow", "base", "L") + hoo "Oh...{w=0.4} *Ehm*..." ("open", "narrow", "base", "downR", cheeks="blush_heavy") + hoo "Well you know, better end it when you're at the peak...{w=0.4} The urge to experience Quidditch from a new angle... And to... *Ehm*..." ("open", "narrow", "base", "downL", cheeks="blush_heavy") + gen "Teach?" ("base", xpos="far_left", ypos="head") + hoo "Oh, yes! Teach!" ("open", "closed", "shocked", "stare", cheeks="blush_heavy") + gen "..." ("base", xpos="far_left", ypos="head") + cho "The masked seeker... Teaching the next generation of Quidditch players..." ("smile", "narrow", "base", "L", cheeks="blush") + hoo "Oh, stop it now Miss chang, you're making me blush." ("grin", "base", "base", "downR", cheeks="blush_heavy") + cho "But, you're a living legend! This broom... It's... It's..." ("smile", "narrow", "base", "L") + gen "Looks like a normal broom to me." ("base", xpos="far_left", ypos="head") + cho "Sir, how could you say that?! This surely must be her secret! Why else would she be giving it to me?" ("disgust", "narrow", "angry", "mid") + hoo "Oh no... He's right. There's nothing special about this broom." ("base", "narrow", "base", "L", cheeks="blush") + cho "What?!" ("angry", "wide", "base", "L") + cho "But then how did you get it to fly at such speeds?" ("angry", "narrow", "base", "L") + hoo "By utilising some very special techniques that I discovered." ("base", "wink", "raised", "L", cheeks="blush") + gen "(Why is she still blushing?)" ("base", xpos="far_left", ypos="head") + hoo "*Ahem*... Perhaps it'd be best if I explained the history behind it first." ("open", "narrow", "base", "downR", cheeks="blush") + hoo "I'm sure you're well aware that caring for your broom means a great deal to how well it will behave during flight." ("open", "closed", "base", "mid", cheeks="blush") + cho "You mean using things like broom polish and trimming it?" ("soft", "base", "raised", "L") + hoo "Precisely." ("base", "base", "base", "L", cheeks="blush") + hoo "It's always been believed, and I still teach our students that usage of such things helps with aerodynamics, speed and agility." ("open", "base", "shocked", "L", cheeks="blush") + hoo "Except that's only a half truth." ("open", "base", "base", "downL", cheeks="blush_heavy") + hoo "How do I explain this..." ("normal", "narrow", "raised", "down", cheeks="blush_heavy") + hoo "Remember your first flying lesson when you had to use a command word for the broom to jump into your hand?" ("open", "shocked", "shocked", "L", cheeks="blush") + cho "Oh, yes of course!" ("smile", "narrow", "base", "L") + hoo "Have you ever considered how this actually works? There's no wand being used in conjunction with the command word." ("open", "shocked", "shocked", "L", cheeks="blush") + cho "..." ("soft", "narrow", "base", "down") + cho "I honestly never thought about it..." ("soft", "narrow", "base", "downR") + hoo "Yes, and I wouldn't blame you..." ("open", "closed", "base", "mid", cheeks="blush") + hoo "The basic knowledge on creating brooms has been passed down for generations, the why's and how's is not something the average broom user cares about." ("open", "base", "shocked", "L", cheeks="blush") + hoo "But me on the other hand... Well I got a bit obsessed trying to answer this question, and began researching heavily to try and figure out how it all worked..." ("base", "base", "base", "mid", cheeks="blush") + cho "And you found the answer?" ("angry", "base", "base", "L") + hoo "It took years of research but yes, I did." ("grin", "shocked", "base", "L", cheeks="blush") + cho "Years?!" ("clench", "wide", "base", "L") + hoo "Indeed... I had to sift through and translate some very old tomes to find what I was searching for, as all my questions led me towards the very essence of enchanting." ("open", "shocked", "base", "L", cheeks="blush") + cho "Wow..." ("smile", "base", "base", "L", cheeks="blush") + hoo "Think of magic as a tree." ("open", "base", "base", "L", cheeks="blush") + hoo "All magic in this world and others stem from the same source, each school of magic are just branches leading to it." ("base", "shocked", "base", "L", cheeks="blush") + hoo "If the magic user has a higher understanding of the core fundamentals of that branch of magic then they have a much easier time at manipulating it.." ("base", "base", "base", "L", cheeks="blush") + hoo "As an example, creatures of old such as Djinns possess magical abilities that stretch as far as the roots of magic." ("base", "base", "base", "mid", cheeks="blush") + hoo "Although their abilities are innate... We'd be so lucky to even get close to the source of each school of magic." ("base", "shocked", "base", "mid", cheeks="blush") + gen "(Makes sense... I sort of just waved my fingers and shit happened...)" ("base", xpos="far_left", ypos="head") + cho "Djinns?" ("soft", "base", "raised", "mid") + hoo "Or Genies, whatever you prefer." ("open", "shocked", "base", "L", cheeks="blush") + gen "Djinn is fine." ("base", xpos="far_left", ypos="head") + cho "I see..." ("soft", "narrow", "base", "downR") + hoo "Through my research, I found that when a magic user imbues an object with magic, we also leave a trace of ourselves inside of it." ("open", "shocked", "shocked", "L", cheeks="blush") + hoo "It's a bit complicated to explain... In essence it's something like our core instincts or character, mixed with all of the other elements that binds us magic users together." ("base", "base", "shocked", "L", cheeks="blush") + hoo "Are you following?" ("base", "shocked", "raised", "L", cheeks="blush") + gen "Makes perfect sense to me." ("base", xpos="far_left", ypos="head") + cho "*Err*..." ("angry", "narrow", "base", "L") + + if snape_picture_examined: + gen "That's why those portraits never keep quiet, isn't it?" ("base", xpos="far_left", ypos="head") + hoo "Precisely... The portraits appear alive for this very reason." ("base", "base", "base", "mid", cheeks="blush") + hoo "Every painting contains some characteristics from the artist who painted it." ("base", "shocked", "base", "L", cheeks="blush") + + hoo "That said, a bond can also be formed between a magic user and an object, much like the one we all have with our wands." ("base", "base", "base", "L", cheeks="blush") + hoo "This is the reason why doing things like polishing our brooms is so important, it has nothing to do with the polish itself... That's all just corporate mumbo jumbo." ("base", "narrow", "base", "L", cheeks="blush") + hoo "It's about forming that bond with the object." ("base", "shocked", "base", "mid", cheeks="blush") + gen "I polish mine every day." ("base", xpos="far_left", ypos="head") + cho "Wow..." ("smile", "narrow", "base", "L", cheeks="blush") + hoo "Which leads me to my practical research in the subject and how I finally became... The masked seeker." ("open", "closed", "shocked", "mid", cheeks="blush_heavy") + cho "Oooh!" ("smile", "base", "base", "L") + hoo "So... With this knowledge I started working on figuring out new ways to care for your broom." ("base", "base", "base", "down", cheeks="blush") + hoo "I tried sweeping with it, it's a broom after all, I thought maybe it would like that." ("open", "shocked", "raised", "R", cheeks="blush") + hoo "But it didn't work, in fact it made the broom slower... Which made sense, this broom was designed for flying after all..." ("normal", "base", "base", "mid", cheeks="blush") + hoo "I tried talking to it... And that might've worked, albeit the fact that brooms don't have ears..." ("base", "shocked", "base", "L", cheeks="blush") + hoo "I even tried using Fleetwood's High-Finish Handle Polish to see if it made any difference to the one I usually use and lo and behold..." ("base", "base", "base", "downR", cheeks="blush") + cho "" ("angry", "base", "base", "L") #expectant + + call ctc + + hoo "There was no difference." ("open", "base", "base", "L", cheeks="blush") + cho "" ("annoyed", "base", "base", "mid") #disappointed + hoo "After all these tests, I wasn't getting anywhere, leaving me more and more frustrated and needing to do something to take the edge off." ("open", "closed", "base", "mid", cheeks="blush") + hoo "And as it just so happened, there was a polished and stiff wooden object at hand right there..." ("open", "base", "base", "R", cheeks="blush_heavy") + gen "..." ("grin", xpos="far_left", ypos="head") + hoo "Let's just say that I rode that thing in ways I had never done before..." ("base", "narrow", "base", "down", cheeks="blush_heavy") + cho "I do that when I'm stressed out too!" ("smile", "base", "base", "L") + gen "I don't think she meant in the way you're thinking." ("grin", xpos="far_left", ypos="head") + cho "What do you mean then professor--" ("soft", "base", "raised", "mid") + cho "Ooooh..." ("soft", "narrow", "base", "L", cheeks="blush") #Blushing + gen "So this is what you meant when you said you had just the broom for Miss Chang..." ("base", xpos="far_left", ypos="head") + cho "" ("soft", "narrow", "base", "down", cheeks="blush") #Blushing + hoo "Figured it out already have you?" ("base", "wink", "raised", "mid", cheeks="blush") + hoo "Well I can't say I'm surprised, you've always had a much broader view on magic than most, professor." ("base", "base", "base", "mid", cheeks="blush") + cho "I'm confused..." ("disgust", "narrow", "base", "mid", cheeks="blush") + hoo "Think about the things I've told you thus far, Miss Chang." ("base", "base", "base", "L", cheeks="blush") + hoo "When you enchant an object it takes on some of the enchanter's characteristics." ("base", "base", "shocked", "L", cheeks="blush") + cho "Yes?" ("soft", "narrow", "base", "L", cheeks="blush") + hoo "Well, Initially during practical testing I was trying to appeal to what I thought a broom would enjoy." ("base", "base", "base", "R", cheeks="blush") + hoo "When I should've appealed to what I would enjoy..." ("base", "base", "base", "L", cheeks="blush_heavy") + cho "Wait, so doing...{w=0.4} {i}\"That\"{/i} with your broom... Made the broom go faster? Using it to...{w=0.4} *Err*..." ("angry", "narrow", "base", "L", cheeks="heavy_blush") + gen "Take off." ("base", xpos="far_left", ypos="head") + hoo "Faster \"and\" more agile... Although the effects faded quite quickly afterwards." ("base", "shocked", "base", "L", cheeks="blush") + cho "Then how were you able to use this method during a game of Quidditch?" ("angry", "narrow", "base", "L", cheeks="heavy_blush") + hoo "I'm glad you asked!" ("grin", "shocked", "base", "L", cheeks="blush") + hoo "I used this..." ("grin", "base", "base", "L", cheeks="blush") + + #Dildo appears on broom + hoo "" ("base", "base", "base", "downR", cheeks="blush") + $ renpy.play("sounds/collar_click.ogg") + $ hooch.equip(hoo_accessory_broom_dildo) + with d3 + + ">Madam Hooch takes a phallic shaped object out of her pockets and attaches it to the broom." + + cho "Merlin's beard!" ("mad", "wide", "base", "L", cheeks="heavy_blush") + gen "Merlin's cock!" ("grin", xpos="far_left", ypos="head") + hoo "So, what say you, Miss Chang? You wanted a broom that rivals the firebolt, so here you have it!" ("grin", "shocked", "raised", "L", cheeks="blush") + cho "Yes, but..." ("mad", "narrow", "base", "downR", cheeks="heavy_blush") + hoo "When used by the right person, this broom could go even faster." ("grin", "shocked", "base", "L", cheeks="blush_heavy") + cho "But, everyone will be there watching..." ("angry", "narrow", "base", "L", cheeks="heavy_blush") #blushing + hoo "I know...{w=0.4} Exciting thought, isn't it?" ("grin", "base", "shocked", "L", cheeks="blush_heavy") + cho "..." ("horny", "narrow", "base", "downR", cheeks="heavy_blush") + hoo "You don't need to pretend with me, Miss Chang. I have seen how much you enjoyed everybody gazing at you during the preliminaries.." ("grin", "wink", "base", "L", cheeks="blush") + cho "You did?" ("angry", "narrow", "base", "L", cheeks="heavy_blush") + hoo "Yes, and I assure you, I understand your feelings completely..." ("base", "narrow", "shocked", "L", cheeks="blush_heavy") + hoo "As it happens... There's nothing that gets me more excited than a crowd..." ("base", "narrow", "base", "mid", cheeks="blush_heavy") + hoo "And all those feelings are imbued into this very broom..." ("base", "narrow", "base", "R", cheeks="blush") + hoo "I remember using it at the quidditch world cup finals... Thousands of people watching..." ("grin", "closed", "worried", "mid", cheeks="blush_heavy") + cho "" ("horny", "narrow", "base", "downR", cheeks="heavy_blush") + hoo "I don't think any broom had ever reached such speeds before..." ("grin", "narrow", "base", "stare", cheeks="blush_heavy") + hoo "When I caught the snitch... Why I've never felt such a rush." ("grin", "closed", "shocked", "mid", cheeks="blush_heavy") + cho "{size=-6}I'll do it...{/size}" ("disgust", "narrow", "base", "downR", cheeks="heavy_blush") #Small text + + if cho_received_thestral: + gen "Wait, how come when I tried to give you a broom with a--" ("angry", xpos="far_left", ypos="head") + else: + gen "You will?" ("base", xpos="far_left", ypos="head") + + hoo "Fantastic news!" ("grin", "shocked", "shocked", "L", cheeks="blush") + + if cho_received_thestral: + gen "..." ("base", xpos="far_left", ypos="head") + + cho "Just...{w=0.4} *Ahem*...{w=0.4} I have a question..." ("angry", "narrow", "base", "down", cheeks="heavy_blush") + hoo "Yes?" ("base", "shocked", "raised", "L", cheeks="blush") + cho "How did you manage to keep it--{w=0.2} I mean it's so big...{w=0.4} How did nobody see?" ("angry", "narrow", "base", "L", cheeks="heavy_blush") + hoo "A skirt and a small cut in your underwear and no one will be any wiser." ("base", "shocked", "base", "downL", cheeks="blush") + cho "I see..." ("soft", "narrow", "base", "down", cheeks="heavy_blush") + gen "To think that a \"PE\" teacher would have such a grasp of the fundamentals of magic..." ("base", xpos="far_left", ypos="head") + cho "Sir!" ("clench", "base", "base", "mid", cheeks="blush") + gen "Oh sorry, did I say that out loud?" ("base", xpos="far_left", ypos="head") + hoo "Yes, I'm a bit of a rogue bludger..." ("grin", "wink", "base", "mid") + cho "" ("annoyed", "base", "base", "mid", cheeks="blush") + gen "(I wonder if this is this why that carpet always appeared more energetic after getting whipped.)" ("base", xpos="far_left", ypos="head") + gen "(Gross...)" ("base", xpos="far_left", ypos="head") + gen "So, what do you call this invention of yours?" ("base", xpos="far_left", ypos="head") + hoo "What do I call it?" ("open", "shocked", "raised", "mid") + hoo "*Hmm*... Why I never really thought about giving it a name." ("normal", "base", "shocked", "down") + gen "Really?" ("base", xpos="far_left", ypos="head") + gen "I thought women named all their toys." ("base", xpos="far_left", ypos="head") + gen "How about..." ("base", xpos="far_left", ypos="head") + + menu: + #Sets Cho's broom name for use during and after match (cho_broom_name) + "\"The Schlickstick!\"": + $ cho_broom_name = "Schlickstick" + + cho "The what?" ("angry", "wide", "base", "mid", cheeks="blush") + gen "A fitting name for a fitted broom..." ("base", xpos="far_left", ypos="head") + hoo "[cho_broom_name] eh? I like it!" ("base", "base", "base", "mid") + "\"The Scoot-a-ride!\"": + $ cho_broom_name = "Scoot-a-ride" + + gen "You know, cause you scoot around on it." ("base", xpos="far_left", ypos="head") + cho "Very funny professor..." ("annoyed", "narrow", "base", "mid") + hoo "Works for me." ("base", "base", "base", "mid") + "\"The Speedblaster 2000!\"": + $ cho_broom_name = "Speedblaster 2000" + + gen "Cause it'll get up to higher speeds as it blasts your--" ("base", xpos="far_left", ypos="head") + cho "Sir!" ("angry", "base", "angry", "mid", cheeks="blush") + gen "I know, a perfect name isn't it?" ("base", xpos="far_left", ypos="head") + cho "Professor Hooch, I'm so sorry about his--" ("angry", "closed", "angry", "mid", cheeks="blush") + hoo "I like it!" ("base", "base", "base", "mid") + cho "..." ("disgust", "base", "base", "L", cheeks="blush") + "\"The Purple Rocket!\"": + $ cho_broom_name = "Purple Rocket" + + cho "The broom isn't... Oh I see..." ("disgust", "narrow", "base", "mid", cheeks="blush") + hoo "Works for me." ("base", "base", "base", "mid") + gen "He-heh..." ("grin", xpos="far_left", ypos="head") + "\"The Cumet!!\"": + $ cho_broom_name = "Cumet" + + hoo "There's already a broom called that unfortunately." ("normal", "base", "shocked", "mid") + gen "There is?" ("base", xpos="far_left", ypos="head") + gen "Someone's stolen the pun before I could..." ("base", xpos="far_left", ypos="head") + hoo "Oh, I see what you mean now." ("base", "base", "base", "mid") + cho "Huh?" ("open", "base", "base", "L") + hoo "Yeah, cumet suits it just fine..." ("grin", "base", "raised", "R", cheeks="blush") + "\"The Nimble 2069!\"": + $ cho_broom_name = "Nimble 2069" + + hoo "I see, since you're able to move more nimbly on it... Very clever." ("base", "base", "base", "mid") + gen "(Heh-heh... Sixty-nine...)" ("base", xpos="far_left", ypos="head") + "\"The Spurtstick 900!\"": + $ cho_broom_name = "Spurtstick 900" + + hoo "It does go very fast once you get it going... I like it!" ("base", "shocked", "shocked", "mid") + cho "I'm not sure that's why he wants to call it--" ("disgust", "narrow", "base", "L", cheeks="blush") + gen "Great! Spurtstick 900 it is!" ("grin", xpos="far_left", ypos="head") + cho "..." ("disgust", "base", "base", "mid", cheeks="blush") + + gen "Very well then... You've got what you wanted, Miss Chang. I hope you're satisfied." ("base", xpos="far_left", ypos="head") + gen "If not, I'm sure you will be at the finals." ("grin", xpos="far_left", ypos="head") + cho "Sir!" ("angry", "base", "base", "mid", cheeks="heavy_blush") + gen "When you win that cup, of course." ("base", xpos="far_left", ypos="head") + cho "Oh..." ("upset", "base", "base", "downR", cheeks="blush") + gen "Make sure you get lots of practice in until then." ("grin", xpos="far_left", ypos="head") + cho "Yes sir." ("soft", "base", "base", "mid") + cho "*Ehm*...{w=0.4} Thank you for your assistance, Professor." ("open", "base", "base", "L") + hoo "Certainly, Miss Chang... Good luck." ("base", "base", "base", "L") + + #Fade to black + show screen blkfade + with d5 + + call nar(">You leave Cho to her own devices...{w=0.4} And return to your office.") + + $ cho_quid.E12_complete = True + + # Reset hooch's chibi values + $ hooch_chibi.zoom = 0.28 + $ hooch_chibi.zorder = 12 + $ hooch.equip(hoo_accessory_broom) + + call stop_sound_effects + + jump main_room + +label cho_quid_E13: + + # Informs the player that all preprations are complete + + gen "(Cheerleading squad... Check... Broom... Check...)" ("base", xpos="far_left", ypos="head") + gen "(Well then... That should be everything.)" ("base", xpos="far_left", ypos="head") + gen "(Although perhaps I could leave her with that broom for a bit before arranging the finals...)" ("grin", xpos="far_left", ypos="head") + + $ cho_quid.E13_complete = True + + jump main_room_menu diff --git a/game/scripts/characters/cho/events/quidditch/quiz.rpy b/game/scripts/characters/cho/events/quidditch/quiz.rpy new file mode 100644 index 00000000..fdcad71c --- /dev/null +++ b/game/scripts/characters/cho/events/quidditch/quiz.rpy @@ -0,0 +1,656 @@ + +### Quidditch Quiz ### + +label cho_quiz: + cho "" (xpos="mid",ypos="base", trans=fade) + + $ cho_quiz.correct_answers = 0 + + if cho_quiz.checkpoint: + gen "I'm ready to show you what I know about Quidditch..." ("base", xpos="far_left", ypos="head") + cho "Great!" ("base", "base", "base", "L") + cho "Let's begin..." ("open", "wide", "raised", "mid") + jump cho_quiz_checkpoint + + # Intro + if not cho_quiz.E1_complete: + $ cho_quiz.E1_complete = True + gen "It's time to start our first lesson, Miss Chang." ("base", xpos="far_left", ypos="head") + cho "Okay then, where do we begin?" ("smile", "base", "base", "mid") + gen "Well, first we'll need to discuss what you'll do for me in this arrangement of ours..." ("base", xpos="far_left", ypos="head") + cho "You need me to do something for your assistance, professor?" ("soft", "base", "base", "mid") + gen "Yes, my time is quite a commodity these days so I want to make sure that the ones I spend it on are actually prepared to do what it takes to achieve their goals." ("base", xpos="far_left", ypos="head") + cho "Right... I suppose that's fair." ("open", "closed", "base", "mid") + gen "Great! Then I'd like you to start selling favours to me for my service." ("base", xpos="far_left", ypos="head") + cho "Favours? What kind of favours?" ("annoyed", "narrow", "raised", "mid") + gen "Nothing that Miss Granger hasn't had any issues with." ("base", xpos="far_left", ypos="head") + + if her_reputation < 16: + cho "(So nothing sexual, at the very least...)" ("grin", "base", "base", "R") + else: + cho "(I hope it's nothing sexual. I've heard some rumours about Granger...)" ("quiver", "base", "worried", "R") + + cho "Well... if Granger could do it, so can I!" ("open", "closed", "base", "mid") + cho "And better!" ("soft", "narrow", "base", "mid") + gen "Great!" ("base", xpos="far_left", ypos="head") + cho "And longer!" ("smile", "narrow", "base", "mid") + gen "Longer?" ("base", xpos="far_left", ypos="head") + cho "And harder!" ("angry", "narrow", "angry", "mid", trans=hpunch) + gen "(Oh my...)" ("base", xpos="far_left", ypos="head") + cho "But..." ("soft", "closed", "base", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + cho "I'll only do it if we actually win!" ("soft", "narrow", "raised", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(Damn it! Always a catch...)" ("angry", xpos="far_left", ypos="head") + gen "Fine..." ("base", xpos="far_left", ypos="head") + gen "Okay, so...{w} I'll help you win quidditch matches, and in return, you'll sell me favours..." ("base", xpos="far_left", ypos="head") + gen "Sounds good?" ("base", xpos="far_left", ypos="head") + cho "Yes, that's the deal." ("smile", "base", "base", "mid") + cho "Although..." ("annoyed", "base", "worried", "down") + gen "Although?" ("base", xpos="far_left", ypos="head") + cho "Well, how do I know that you actually know anything about the game?" ("open", "base", "base", "mid") + cho "I mean...{w} I never really saw you showing too much interest before..." ("soft", "narrow", "base", "mid") + gen "About what?" ("base", xpos="far_left", ypos="head") + cho "Quidditch!" ("angry", "closed", "angry", "mid", trans=hpunch) + gen "Ah, yes... Quidditch.{w} It's like the Wizards version of Basketball, right?" ("grin", xpos="far_left", ypos="head") + cho "Basketball?!" ("clench", "base", "raised", "mid") + cho "Is that the muggle sport nobody cares about?" ("soft", "narrow", "raised", "L") + gen "Nobody cares?{w} What are you...{w} Haven't you seen \"Space Jam\"?" ("angry", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "raised", "mid") + gen "Come on." ("angry", xpos="far_left", ypos="head") + gen "Well..." ("base", xpos="far_left", ypos="head") + + # Repeat + else: + gen "I'm ready to make my case on how Quidditch is a knock-off of basketball..." ("base", xpos="far_left", ypos="head") + cho "Really sir... again?" ("open", "narrow", "angry", "L") + gen "Of course, it's an important subject for your education..." ("base", xpos="far_left", ypos="head") + cho "I can't really see how, but I'm sure you know what you're talking about..." ("open", "base", "base", "mid") + gen "Alright, so..." ("base", xpos="far_left", ypos="head") + + $ renpy.music.play("music/ominous_music.ogg") + $ renpy.music.stop("weather") + + $ confidence_meter = 50 + show screen meter(confidence_meter) + + # Question 1 + menu: + "-There's five players on each team...-": + gen "There's two teams with each one having five players on the court at one time..." ("base", xpos="far_left", ypos="head") + $ renpy.music.set_volume(0.5) + $ renpy.block_rollback() + cho "Whilst Quidditch does have two teams...{w=0.5} there's 7 players on each..." ("annoyed", "narrow", "raised", "mid") + with hpunch + show screen swear_bubble(random.randint(0, 4)) + with d1 + $ confidence_meter -= 12 + show screen meter(confidence_meter) + $ renpy.music.set_volume(1.0) + $ renpy.sound.play( "sounds/kung-fu-punch.ogg") + gen "Ah,{w=0.4} well..." ("angry", xpos="far_left", ypos="head") + + "-[cho_quiz.hint]At the start of the game the ball gets thrown in the air...-": + $ cho_quiz.correct_answers += 1 + + gen "You start the game by the referee throwing the ball into the air..." ("base", xpos="far_left", ypos="head") + $ confidence_meter += 12 + show screen meter(confidence_meter) + $ renpy.music.set_volume(0.5) + $ renpy.sound.play( "sounds/hmm1.ogg") + $ renpy.block_rollback() + cho "I guess that's kind of similar..." ("smile", "base", "raised", "mid") + $ renpy.music.set_volume(1.0) + gen "It is? I mean, yes... and also..." ("grin", xpos="far_left", ypos="head") + + + # Question 2 + menu: + "-It's played on a rectangular court...-": + gen "The game is played on a rectangular court..." ("base", xpos="far_left", ypos="head") + $ renpy.music.set_volume(0.5) + $ renpy.block_rollback() + cho "Well, that's not similar at all then. The Quidditch pitch is oval shaped..." ("annoyed", "narrow", "base", "L") + with hpunch + show screen swear_bubble(random.randint(0, 4)) + with d1 + $ confidence_meter -= 12 + show screen meter(confidence_meter) + $ renpy.music.set_volume(1.0) + $ renpy.sound.play( "sounds/kung-fu-punch.ogg") + gen "Of course!{w=0.4}... and in basketball..." ("angry", xpos="far_left", ypos="head") + + "-[cho_quiz.hint]You may not go out of bounds with the ball...-": + $ cho_quiz.correct_answers += 1 + + gen "You're not allowed outside the bounds whilst holding the ball or you'll have to hand it over to the opponent team..." ("base", xpos="far_left", ypos="head") + $ confidence_meter += 12 + show screen meter(confidence_meter) + $ renpy.music.set_volume(0.5) + $ renpy.block_rollback() + $ renpy.sound.play("sounds/hmm1.ogg") + cho "I guess that's pretty much the same as in Quidditch..." ("base", "base", "raised", "L") + $ renpy.music.set_volume(1.0) + gen "Great! I mean, obviously! And..." ("base", xpos="far_left", ypos="head") + + + # Question 3 + menu: + "-[cho_quiz.hint]Each player takes a certain position...-": + $ cho_quiz.correct_answers += 1 + + gen "Each player takes a certain position." ("base", xpos="far_left", ypos="head") + gen "There are defensive positions..." ("base", xpos="far_left", ypos="head") + gen "And offensive positions..." ("base", xpos="far_left", ypos="head") + $ confidence_meter += 12 + show screen meter(confidence_meter) + $ renpy.music.set_volume(0.5) + $ renpy.block_rollback() + $ renpy.sound.play( "sounds/hmm2.ogg") + cho "I guess Quidditch has something like that..." ("base", "narrow", "base", "R") + $ renpy.music.set_volume(1.0) + gen "Exactly, which is obviously why I brought it up, and lastly..." ("grin", xpos="far_left", ypos="head") + + "-You can't run with the ball unless you dribble or pass...-": + gen "You can't run whilst holding the ball,{w=0.4} you need to pass it or dribble..." ("base", xpos="far_left", ypos="head") + $ renpy.music.set_volume(0.5) + $ renpy.block_rollback() + cho "Well, you can move with the ball freely without passing in Quidditch, that's why we have the beaters..." ("annoyed", "narrow", "raised", "mid") + cho "To make the opponents drop the ball." ("open", "narrow", "base", "L") + with hpunch + show screen swear_bubble(random.randint(0, 4)) + with d1 + $ confidence_meter -= 12 + show screen meter(confidence_meter) + $ renpy.music.set_volume(1.0) + $ renpy.sound.play( "sounds/kung-fu-punch.ogg") + gen "Ah!{w=0.4} Well, I guess that is different... Lastly though..." ("angry", xpos="far_left", ypos="head") + + + # Question 4 + menu: + "-You can't touch your opponent...-": + gen "You're not allowed to touch your opponent or it would be counted as a foul..." ("base", xpos="far_left", ypos="head") + $ renpy.music.set_volume(0.5) + $ renpy.block_rollback() + cho "Well, that's definitely not the case in Quidditch..." ("open", "closed", "raised", "mid") + cho "Except for excessive use of elbows..." ("annoyed", "narrow", "base", "L") + with hpunch + show screen swear_bubble(random.randint(0, 4)) + with d1 + $ confidence_meter -= 12 + show screen meter(confidence_meter) + $ renpy.sound.play( "sounds/kung-fu-punch.ogg") + gen "Well...{w=0.4}" ("angry", xpos="far_left", ypos="head") + gen "Fine..." ("base", xpos="far_left", ypos="head") + + "-[cho_quiz.hint]You score by getting the ball through a hoop...-": + $ cho_quiz.correct_answers += 1 + + gen "The way you score is by getting the ball through a hoop." ("base", xpos="far_left", ypos="head") + $ confidence_meter += 12 + show screen meter(confidence_meter) + $ renpy.music.set_volume(0.5) + $ renpy.block_rollback() + $ renpy.sound.play( "sounds/hmm3.ogg") + cho "*Hmm*... Well that's the same as in Quidditch I suppose." ("smile", "base", "base", "mid") + gen "Naturally..." ("grin", xpos="far_left", ypos="head") + + + pause 1.0 + hide screen meter + with d3 + + $ renpy.music.set_volume(1.0) + + call play_music("cho") + + call weather_sound + + $ renpy.block_rollback() + + # Failed + if cho_quiz.correct_answers <= 1: # 0-1 answers correct? + gen "Well, I'm sure that the winning conditions are pretty similar at least..." ("base", xpos="far_left", ypos="head") + cho "And what are the winning conditions?" ("base", "base", "base", "mid") + gen "You win by having the most amount of points when the time is over." ("base", xpos="far_left", ypos="head") + cho "Well, in Quidditch the game doesn't end until the snitch is caught, so it could technically go on forever." ("open", "narrow", "raised", "mid") + cho "So in short... nothing like basketball." ("annoyed", "closed", "base") + gen "The game doesn't end until the snitch is caught?" ("base", xpos="far_left", ypos="head") + cho "Yes..." ("base", "base", "base", "mid") + gen "Well, that is stupid..." ("base", xpos="far_left", ypos="head") + cho "Yes, that bit is kind of stupid..." ("annoyed", "base", "worried", "down") + cho "Anyway..." ("base", "closed", "base") + cho "I didn't come here to listen to you talk about basketball..." ("annoyed", "base", "base", "downR") + gen "Right..." ("base", xpos="far_left", ypos="head") + cho "I came for you to tutor me..." ("annoyed", "narrow", "angry", "L") + gen "(Perhaps it might be worth trying to learn a bit more about Quidditch before I ruin this whole thing...)" ("base", xpos="far_left", ypos="head") + gen "Oh, well... look at the time!" ("grin", xpos="far_left", ypos="head") + cho "What?" ("open", "wide", "raised", "mid") + gen "You've made me go on about basketball for such a long time so we're already at the end of today's session." ("grin", xpos="far_left", ypos="head") + cho "But we didn't even get to any tutoring..." ("annoyed", "narrow", "base", "mid") + gen "We'll get there, don't you worry... next time..." ("base", xpos="far_left", ypos="head") + cho "...{w=0.4}Fine." ("annoyed", "base", "base", "mid") + cho "Bye then professor..." ("annoyed", "base", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + gen "(What am I supposed to do now... I clearly know fuck-all about Quidditch...)" ("angry", xpos="far_left", ypos="head") + gen "(I'd rather not ask Snape... but unless there's someone else that I could ask without sounding like a complete dumb-ass it might have to do...)" ("base", xpos="far_left", ypos="head") + + $ cho_quiz.lost = True + + if quidditchguide_ITEM.used: + gen "(Why didn't I just follow the book? Serves me right...)" ("base", xpos="far_left", ypos="head") + elif quidditchguide_ITEM.owned > 0: + gen "(Maybe I should read the book I bought...)" ("base", xpos="far_left", ypos="head") + elif item_store_intro_done: + gen "(Actually, perhaps the twins might be a better idea...)" ("base", xpos="far_left", ypos="head") + + + # Success! Or did you? + elif cho_quiz.correct_answers == 4: + + $ cho_quiz.correct_answers = 0 + + show screen meter(confidence_meter) + gen "So as you can see, Basketball and Quidditch are pretty much the same game..." ("base", xpos="far_left", ypos="head") + cho "I'm sure that can't be right..." ("annoyed", "base", "base", "mid") + cho "I'll have to look up this \"Space Jamming\"...{w=1.0} thing." ("open", "narrow", "base", "mid") + gen "You should! It has Bugs Bunny in it!" ("grin", xpos="far_left", ypos="head") + cho "And now you stopped making sense again..." ("annoyed", "base", "raised", "L") + cho "Also I'm still quite unsure if you actually know Quidditch or are just trying to confuse me with Basketball terms..." ("annoyed", "narrow", "raised", "mid") + show screen meter(75) + pause .3 + call bld + gen "(Fuck, she's onto me!)" ("angry", xpos="far_left", ypos="head") + gen "Of course I'm not... I'll prove it to you!" ("grin", xpos="far_left", ypos="head") + show screen meter(50) + pause .5 + call bld + gen "(Wait, why did I say that?)" ("angry", xpos="far_left", ypos="head") + cho "..." ("smile", "base", "raised", "mid") + cho "Okay then, show me what you know..." ("smile", "base", "raised", "mid") + + jump cho_quiz_checkpoint + + # Failed + else: # 2-3 answers correct. + cho "I guess it has some similarities..." ("annoyed", "narrow", "worried", "mid") + gen "Pretty much the same game I'd say..." ("base", xpos="far_left", ypos="head") + cho "I wouldn't say that... You fly for one in quidditch..." ("open", "base", "base", "mid") + gen "You do?!?" ("angry", xpos="far_left", ypos="head") + cho "Very funny professor, of course you do..." ("annoyed", "base", "raised", "down") + cho "Anyway, weren't you supposed to tutor me?..." ("annoyed", "narrow", "base", "L") + gen "Oh, right..." ("base", xpos="far_left", ypos="head") + gen "(Perhaps it might be worth trying to learn a bit more about Quidditch before I ruin this whole thing...)" ("base", xpos="far_left", ypos="head") + gen "Oh, well... look at the time!" ("grin", xpos="far_left", ypos="head") + cho "What?" ("upset", "closed", "worried") + gen "You've made me go about basketball for such a long time so we're already at the end of today's session." ("grin", xpos="far_left", ypos="head") + cho "But we didn't even get to any tutoring..." ("annoyed", "narrow", "angry", "mid") + gen "We'll get there, don't you worry... next time..." ("base", xpos="far_left", ypos="head") + cho "...{w=0.4}Fine." ("annoyed", "narrow", "base", "mid") + cho "Bye then professor..." ("annoyed", "base", "base", "R") + + # Cho leaves. + call cho_walk(action="leave") + + gen "(The fuck am I supposed to do now... I feel like that must've been a fluke, I know nothing about Quidditch..)." ("angry", xpos="far_left", ypos="head") + gen "(I'd rather not ask Snape... but unless there's someone else that I could ask without sounding like a complete dumb-ass it might have to do...)" ("base", xpos="far_left", ypos="head") + + $ cho_quiz.lost = True + + # Read the book. + if quidditchguide_ITEM.used: + gen "(Why didn't I just follow the book?{w} Serves me right...)" ("base", xpos="far_left", ypos="head") + + # Got the book but not read. + elif quidditchguide_ITEM.owned > 0: + gen "(Maybe I should read the book I bought...)" ("base", xpos="far_left", ypos="head") + + # Visited their shop before. + elif item_store_intro_done: + gen "(Actually, perhaps the twins might be a better idea...)" ("base", xpos="far_left", ypos="head") + + $ cho_busy = True + + jump main_room_menu + + + +### Quiz - Part 2 ### + +label cho_quiz_checkpoint: + $ confidence_meter = 50 + show screen meter(confidence_meter) + + $ renpy.music.play("music/determined_pursuit_loop.ogg") + $ renpy.music.stop("weather") + + # Intro + if not cho_quiz.E2_complete: + $ cho_quiz.E2_complete = True + cho "You do seem to know some basic things, but do you know anything about the balls?" ("open", "narrow", "base", "mid") + gen "I could probably teach you quite a lot..." ("base", xpos="far_left", ypos="head") + gen "You should never neglect the balls." ("grin", xpos="far_left", ypos="head") + cho "In that case..." ("base", "base", "base", "mid") + + cho "My position on the team is seeker, it is my job to catch the \"Blank\" to end the game and score our team 150 points." ("open", "base", "base", "L") + show screen meter(confidence_meter) + + # Question 1 + menu: + "-Stitch-": + gen "Stitch?" ("base", xpos="far_left", ypos="head") + $ renpy.block_rollback() + cho "No..." ("open", "narrow", "angry", "mid") + gen "Oh wait, that's that blue alien thing, isn't it?" ("angry", xpos="far_left", ypos="head") + cho "I don't know what a stitch is, sorry sir..." ("soft", "narrow", "worried", "R") + $ confidence_meter -= 12 + show screen meter(confidence_meter) + $ renpy.sound.play( "sounds/kung-fu-punch.ogg") + cho "Next question..." ("open", "base", "raised", "down") + + "-Lich-": + gen "Lich?" ("base", xpos="far_left", ypos="head") + $ renpy.block_rollback() + cho "A Lich? Like those undead skeletal creatures?" ("open", "narrow", "raised", "mid") + gen "Oh, that's what I said?" ("angry", xpos="far_left", ypos="head") + gen "I must've had a PTSD flashback from my tomb raiding days..." ("base", xpos="far_left", ypos="head") + cho "You've been tomb raiding?" ("soft", "base", "raised", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + $ confidence_meter -= 12 + show screen meter(confidence_meter) + $ renpy.sound.play( "sounds/kung-fu-punch.ogg") + gen "Of course not..." ("base", xpos="far_left", ypos="head") + cho "Next question..." ("open", "base", "raised", "down") + + "-[cho_quiz.hint]Snitch-": + gen "Snitch?" ("base", xpos="far_left", ypos="head") + $ renpy.block_rollback() + $ renpy.sound.play( "sounds/gasp.ogg") + $ confidence_meter += 12 + show screen meter(confidence_meter) + cho "Yes!" ("smile", "wide", "base", "mid") + gen "Well then, surely that should show you how superi--" ("grin", xpos="far_left", ypos="head") + cho "Next question..." ("open", "closed", "base", "down") + $ cho_quiz.correct_answers += 1 + + cho "Apart from the Snitch there are two other types of balls on the pitch, what are they called?" ("open", "base", "angry", "mid") + + # Question 2 + menu: + "-Butter and Waffles-": + gen "Butter and Waffles?" ("base", xpos="far_left", ypos="head") + $ renpy.block_rollback() + cho "Sir?" ("annoyed", "narrow", "raised", "mid") + gen "Sorry, I didn't have any lunch..." ("base", xpos="far_left", ypos="head") + gen "Actually, I can't even remember the last time I ate..." ("angry", xpos="far_left", ypos="head") + cho "Well, you're obviously wrong..." ("soft", "narrow", "raised", "R") + $ confidence_meter -= 12 + show screen meter(confidence_meter) + $ renpy.sound.play( "sounds/kung-fu-punch.ogg") + cho "Next question..." ("open", "base", "raised", "down") + + "-[cho_quiz.hint]Bludger and Quaffle-": + gen "Bludger and Quaffle?" ("base", xpos="far_left", ypos="head") + $ renpy.block_rollback() + $ confidence_meter += 12 + show screen meter(confidence_meter) + $ renpy.sound.play( "sounds/gasp.ogg") + cho "Yes!" ("smile", "wide", "base", "mid") + gen "Great! Then let's get started with the--" ("grin", xpos="far_left", ypos="head") + cho "Next question..." ("open", "base", "raised", "down") + $ cho_quiz.correct_answers += 1 + + "-Quabble and Bluffer-": + gen "Quabble and bluffer?" ("base", xpos="far_left", ypos="head") + $ renpy.block_rollback() + cho "I think you got some letters mixed up there..." ("soft", "narrow", "raised", "R") + gen "Quibble and Blodger?" ("base", xpos="far_left", ypos="head") + cho "No, that's also not--" ("annoyed", "base", "base", "up") + gen "Qacker and Blugger?" ("base", xpos="far_left", ypos="head") + cho "Professor..." ("annoyed", "narrow", "angry", "mid") + $ confidence_meter -= 12 + show screen meter(confidence_meter) + $ renpy.sound.play( "sounds/kung-fu-punch.ogg") + cho "Next question..." ("open", "base", "raised", "down") + + cho "Let's do some history..." ("base", "base", "base", "mid") + gen "I am made out of history, this should be a breeze..." ("grin", xpos="far_left", ypos="head") + cho "Okay then..." ("smile", "base", "raised", "mid") + cho "A game of Quidditch doesn't finish until the Snitch is caught, therefore it could go on forever..." ("open", "base", "base", "down") + cho "In the longest ever match played, they had to constantly bring on substitutes to let the players get some sleep..." ("open", "base", "base", "mid") + cho "For how long did the game go on for?" ("base", "narrow", "raised", "mid") + + # Question 3 + menu: + "-[cho_quiz.hint]Three Months-": + gen "Three months?" ("base", xpos="far_left", ypos="head") + $ renpy.block_rollback() + $ confidence_meter += 12 + show screen meter(confidence_meter) + $ renpy.sound.play( "sounds/gasp.ogg") + cho "Yes!" ("smile", "wide", "base", "mid") + cho "That's impressive, how did you know that one?" ("grin", "happyCl", "base", "mid") + gen "I feel like there weren't that many realistic options available this time..." ("base", xpos="far_left", ypos="head") + cho "Okay... I'm not sure what that means..." ("soft", "narrow", "worried", "mid") + cho "Anyway, final question..." ("open", "base", "raised", "down") + $ cho_quiz.correct_answers += 1 + + "-Seven Years-": + gen "Seven years?" ("base", xpos="far_left", ypos="head") + $ renpy.block_rollback() + $ confidence_meter -= 12 + show screen meter(confidence_meter) + $ renpy.sound.play( "sounds/kung-fu-punch.ogg") + cho "How long?! That's the same amount of time a student stays at Hogwarts!" ("clench", "wide", "base", "mid") + gen "Oh right, I don't know what I was thinking..." ("base", xpos="far_left", ypos="head") + gen "Seven just seems like the magical right answer most of the time..." ("base", xpos="far_left", ypos="head") + cho "Not in this case..." ("annoyed", "narrow", "angry", "mid") + cho "Anyway, final question..." ("open", "base", "raised", "down") + + "-Two Minutes-": + gen "Two minutes?" ("base", xpos="far_left", ypos="head") + $ renpy.block_rollback() + cho "What?" ("angry", "base", "raised", "mid") + gen "What?" ("angry", xpos="far_left", ypos="head") + cho "Sir, what sport lasts only two minutes?" ("soft", "narrow", "angry", "mid") + gen "A Splurge race?" ("base", xpos="far_left", ypos="head") + cho "Never heard of it, is it anything like that basketball thing?" ("annoyed", "narrow", "base", "mid") + gen "Well, balls have a big role in it..." ("grin", xpos="far_left", ypos="head") + $ confidence_meter -= 12 + show screen meter(confidence_meter) + $ renpy.sound.play( "sounds/kung-fu-punch.ogg") + cho "I'll have to take your word on that one..." ("soft", "narrow", "angry", "R") + cho "Anyway... final question..." ("open", "base", "raised", "down") + + cho "As you know, you may not go outside of the bounds with the ball during the game, or you'd have to hand it over to the opposition..." ("open", "base", "base", "down") + cho "But what is the penalty if the defensive goes out of bounds?" ("smile", "narrow", "angry", "mid") + + # Question 4 + menu: + "-Three Months-": + gen "Three months?" ("base", xpos="far_left", ypos="head") + $ renpy.block_rollback() + cho "Three months, what?" ("annoyed", "narrow", "angry", "mid") + gen "Three months...{w=0.5} in prison?" ("base", xpos="far_left", ypos="head") + cho "Professor, you're not going to get a prison sentence unless you do something that's actually illegal..." ("open", "narrow", "angry", "L") + gen "What if the Quidditch pitch was in prison?" ("base", xpos="far_left", ypos="head") + gen "And you flew outside the prison boundaries..." ("base", xpos="far_left", ypos="head") + gen "Did you consider that?" ("grin", xpos="far_left", ypos="head") + $ confidence_meter -= 12 + show screen meter(confidence_meter) + $ renpy.sound.play( "sounds/kung-fu-punch.ogg") + cho "I think you're going off track a bit..." ("annoyed", "narrow", "raised", "mid") + gen "Or off the pitch..." ("grin", xpos="far_left", ypos="head") + + "-A free shot at the goal-": + gen "Free goal shot?" ("base", xpos="far_left", ypos="head") + $ renpy.block_rollback() + cho "No that's not right..." ("soft", "narrow", "raised", "L") + gen "Then what is it?" ("base", xpos="far_left", ypos="head") + cho "Well, I don't know..." ("angry", "narrow", "worried", "down") + gen "How am I supposed to then?" ("angry", xpos="far_left", ypos="head") + $ confidence_meter -= 12 + show screen meter(confidence_meter) + $ renpy.sound.play( "sounds/kung-fu-punch.ogg") + cho "I'm not sure what else to tell you..." ("open", "closed", "base", "mid") + + "-[cho_quiz.hint]I don't know...-": + gen "Uh... I don't know..." ("base", xpos="far_left", ypos="head") + $ renpy.block_rollback() + $ confidence_meter += 12 + show screen meter(confidence_meter) + $ renpy.sound.play( "sounds/gasp.ogg") + cho "That's right!" ("smile", "wide", "base", "mid") + gen "What?" ("angry", xpos="far_left", ypos="head") + cho "Nobody knows what happens! There isn't any rule for it..." ("open", "wide", "raised", "L") + gen "Why wouldn't there be a rule for it?" ("angry", xpos="far_left", ypos="head") + cho "Why would the defensive leave the pitch... they'd just leave the goal open..." ("soft", "base", "worried", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + $ cho_quiz.correct_answers += 1 + + pause 1.0 + hide screen meter + with d3 + + $ renpy.music.set_volume(1.0) + + call music_block + + call weather_sound + + $ renpy.block_rollback() + + # Success + if cho_quiz.correct_answers >= 4: + cho "Well Sir, I thought for a minute that you only cared about basketball, but it looks like I was wrong..." ("smile", "base", "base", "mid") + gen "Of course, I am well versed in all sports. I just thought I'd teach you a thing or two." ("base", xpos="far_left", ypos="head") + gen "So, will you let me train you then?" ("base", xpos="far_left", ypos="head") + cho "I suppose..." ("soft", "base", "raised", "R") + gen "{size=-4}(Fuck yeah, here we go!){/size}" ("grin", xpos="far_left", ypos="head") + cho "And I will stay true to my word... I'll sell you favours...{w} For wins..." ("soft", "closed", "base", "mid") + gen "(Hell yes!)" ("angry", xpos="far_left", ypos="head") + cho "But keep it civil. I won't do anything those Slytherin skanks do!" ("angry", "narrow", "worried", "R") + cho "And should you not be able to help me and my team beat Hufflepuff, this will be over before you can even say Snitch!" ("scream", "closed", "base", "mid") + gen "..." ("angry", xpos="far_left", ypos="head") + + if game.daytime: + cho "Anyway, got to go now, or I'll be late for class." ("smile", "base", "base", "mid") + cho "But I should have some time this evening if you'd like to get started with the training." ("soft", "base", "base", "down") + gen "{size=-4}Oh, you bet I do...{/size}" ("base", xpos="far_left", ypos="head") + else: + cho "Anyway, it's getting late. I should better head to my dorms." ("soft", "base", "base", "R") + cho "I'll be ready for training by tomorrow morning." ("soft", "base", "base", "down") + gen "{size=-4}Oh, I'm not so sure you'll be that prepared...{/size}" ("base", xpos="far_left", ypos="head") + cho "Until then, Sir." ("smile", "base", "base", "mid") + gen "Looking forward to it." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + $ cho_quiz.complete = True + + call popup("You've unlocked the ability to train Cho in Quidditch.", "Congratulations!", "interface/icons/head/cho.webp") + + # Failed + else: + cho "You seem to care a lot about basketball Sir, but I'm not sure if you know that much about Quidditch..." ("open", "narrow", "worried", "mid") + gen "Or were you asking the wrong questions?" ("base", xpos="far_left", ypos="head") + cho "Sorry?" ("soft", "narrow", "raised", "mid") + gen "Time is just relative... what is the difference between a month or a few minutes, really..." ("grin", xpos="far_left", ypos="head") + cho "Sir, you got bunch of the questions wrong..." ("annoyed", "narrow", "angry", "mid") + gen "The truth lies in the eyes of the beholder, Miss Chang..." ("base", xpos="far_left", ypos="head") + cho "I don't...{nw=1.0}" ("annoyed", "base", "worried", "mid") + gen "You'll see... I'll show you the real truth..." ("base", xpos="far_left", ypos="head") + gen "The true truth!" ("base", xpos="far_left", ypos="head") + gen "(Once I can figure out what the fuck I'm doing...)" ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "raised", "mid") + gen "Next time..." ("grin", xpos="far_left", ypos="head") + cho "Oh..." ("soft", "narrow", "base", "down") + cho "Well, goodbye then, Sir..." ("soft", "base", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + gen "(What am I supposed to do now... I clearly don't know enough about Quidditch...)" ("angry", xpos="far_left", ypos="head") + gen "(I'd rather not ask Snape... but unless there's someone else that I could ask without sounding like a complete dumb-ass it might have to do...)" ("base", xpos="far_left", ypos="head") + + $ cho_quiz.lost = True + + # Read the book. + if quidditchguide_ITEM.used: + gen "(Why didn't I just follow the book?{w} Serves me right...)" ("base", xpos="far_left", ypos="head") + + # Got the book but not read. + elif quidditchguide_ITEM.owned > 0: + gen "(Maybe I should read the book I bought...)" ("base", xpos="far_left", ypos="head") + + # Visited their shop before. + elif item_store_intro_done: + gen "(Actually, perhaps the twins might be a better idea...)" ("base", xpos="far_left", ypos="head") + + jump main_room_menu + + + +# Ask Snape for Quidditch help. +label ss_he_cho_E2: + + call bld + gen "So It looks like I might need some information about Quidditch..." ("base", xpos="far_left", ypos="head") + sna "I see, I guess it was only a matter of time before you got yourself involved..." ("snape_01", ypos="head") + gen "Oh, I don't care much about the sport..." ("base", xpos="far_left", ypos="head") + sna "Worried you will lose the bet?" ("snape_03") + gen "No?{w} Let's say it's more of a plot device to push the narrative forward..." ("base", xpos="far_left", ypos="head") + sna "Of course you can't teach the girl Quidditch if you know nothing about it..." ("snape_09") + sna "Did she call your bluff?" ("snape_13") + gen "Of course not..." ("base", xpos="far_left", ypos="head") + sna "Well, whilst I could drone on for hours about Quidditch rules..." ("snape_06") + sna "I'd rather not spend my time on such a topic." ("snape_03") + gen "Where am I supposed to learn the basics then?" ("base", xpos="far_left", ypos="head") + sna "Why do you think I care where you'd learn it from?" ("snape_09") + gen "Because keeping me occupied is within your best interests?" ("base", xpos="far_left", ypos="head") + sna "..." ("snape_04") + sna "Good point..." ("snape_06") + sna "Well, I guess it wouldn't be too harmful if you made yourself to the Weasley Twins..." ("snape_05") + + if item_store_intro_done: + gen "And how would they be able to help me?" ("base", xpos="far_left", ypos="head") + sna "Well, they're both on the Gryffindor team..." ("snape_03") + sna "And as much as it pains me to say this..." ("snape_06") + sna "They're very discrete business minded individuals..." ("snape_02") + gen "I've take it you've had a fair deal of business with them yourself?" ("base", xpos="far_left", ypos="head") + sna "No comment..." ("snape_03") + + else: + gen "The Twins? Have you been keeping twins from me now as well?" ("base", xpos="far_left", ypos="head") + sna "I mean, if two very irritating ginger boys is your type I'm not going to judge..." ("snape_03") + gen "..." ("base", xpos="far_left", ypos="head") + sna "Fred and George Weasley runs a secret shop in the school..." ("snape_01") + gen "Doesn't sound very secret if you know about it..." ("base", xpos="far_left", ypos="head") + sna "Their rates are good, plus it means I don't have to leave the castle unless absolutely necessary..." ("snape_09") + gen "Ah, a basement dweller... charmed." ("base", xpos="far_left", ypos="head") + sna "In any case, about your inquiry..." ("snape_03") + sna "The boys are sure to have the means of providing what you need." ("snape_01") + gen "Sweet, looking forward to meeting them..." ("base", xpos="far_left", ypos="head") + sna "Aren't you going to ask for directions?" ("snape_05") + gen "I'm sure I'll manage..." ("base", xpos="far_left", ypos="head") + sna "Try not to wander too far from your office..." ("snape_09") + gen "Yes... dad..." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_08") #[angry] + + # Ending + show screen bld1 + call notes + + ">You spend the rest of the evening in Snape's company once again talking about Cho's remarkable legs." + + hide screen bld1 + with d3 + + $ ss_he.cho_E2 = True + + jump end_snape_hangout_points diff --git a/game/scripts/characters/cho/events/quidditch/screens.rpy b/game/scripts/characters/cho/events/quidditch/screens.rpy new file mode 100644 index 00000000..5eed0ff6 --- /dev/null +++ b/game/scripts/characters/cho/events/quidditch/screens.rpy @@ -0,0 +1,35 @@ +screen meter(fill=100, caption=None): + tag meter + zorder 30 + + default fill = fill + style_prefix "meter" + + frame: + background gui.format("interface/meter/{}/meter.webp") + foreground "interface/meter/glass.webp" + + vbar value AnimatedValue(fill, range=100, delay=0.5) + if caption: + text caption + +style meter_frame is empty: + xysize (60, 500) + align (0.05, 0.5) +style meter_vbar: + top_bar None + bottom_bar "interface/meter/fill.webp" + xsize 60 +style meter_text: + size 8 + color "#fff" + vertical True + align (0.0, 0.5) + xoffset 5 + +screen swear_bubble(type): + tag bubble + zorder 30 + + add "interface/meter/bubble/"+str(type)+".webp" ypos 100 xpos 100 + timer 1.0 action Hide("swear_bubble") diff --git a/game/scripts/characters/cho/events/quidditch/slytherin_match.rpy b/game/scripts/characters/cho/events/quidditch/slytherin_match.rpy new file mode 100644 index 00000000..a265b0b1 --- /dev/null +++ b/game/scripts/characters/cho/events/quidditch/slytherin_match.rpy @@ -0,0 +1,1828 @@ + +# Ravenclaw vs. Slytherin + +label start_slytherin_match: + # Chat with Cho the day before the match + + cho "" (xpos="mid", ypos="base", trans=fade) + gen "Alright, [cho_name]. Let's do this!" ("grin", xpos="far_left", ypos="head") + gen "Tomorrow we shall wipe the floor with those Slytherins, and bathe in their salty tears!" ("angry", xpos="far_left", ypos="head") + gen "(Snape's tears in particular, after I get a hold of all of his gold!)" ("grin", xpos="far_left", ypos="head") + cho "I'll do my best, Sir." ("soft", "base", "angry", "mid") + gen "Are you ready?" ("base", xpos="far_left", ypos="head") + cho "I am!" ("base", "base", "angry", "mid") + menu: + "\"Then show me the money.\"": + cho "What?" ("upset", "base", "raised", "mid") + gen "Say it with me, [cho_name]!{w} Show me the money!" ("grin", xpos="far_left", ypos="head") + cho "I don't have any on me, Sir." ("angry", "narrow", "worried", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + cho "Show me the money?" ("open", "narrow", "raised", "mid") + gen "Yes! Say it like you mean it, brother!" ("grin", xpos="far_left", ypos="head") + cho "What?" ("angry", "wide", "base", "mid") + with hpunch + gen "{size=+5}Show me the money!{/size}" ("angry", xpos="far_left", ypos="head") # loud + cho "(He knows I'm a girl... why would he say that?)" ("annoyed", "narrow", "angry", "mid") + with hpunch + cho "Sir, Are you all right?" ("soft", "narrow", "worried", "mid") + gen "What you gonna do, [cho_name]?" ("grin", xpos="far_left", ypos="head") + cho "Get the nurse?" ("upset", "narrow", "angry", "mid") + gen "You're gonna win that match tomorrow, that's what!" ("base", xpos="far_left", ypos="head") + "\"Show me what you got!\"": + cho "Of course sir, always!" ("soft", "base", "base", "R") + gen "Show me what you got!" ("grin", xpos="far_left", ypos="head") + cho "sir?" ("upset", "base", "raised", "mid") + gen "Show me what you got, I want to see what you got!" ("grin", xpos="far_left", ypos="head") + cho "Sir, are you okay?" ("open", "narrow", "raised", "mid") + gen "Show me--" ("base", xpos="far_left", ypos="head") + "\"Show me your tits!\"": + cho "What?" ("upset", "base", "raised", "mid") + gen "For luck!" ("grin", xpos="far_left", ypos="head") + cho "Sir, I don't have time for this..." ("soft", "narrow", "worried", "mid") + cho "If we're going to play tomorrow, I'll first have to prepare my gear, and charm my Quidditch goggles..." ("soft", "base", "base", "R") + cho "Or they'll just fog-up and not dispel the rain properly..." ("soft", "narrow", "base", "mid") + gen "Hold up!{w=0.3} It's going to rain tomorrow?" ("base", xpos="far_left", ypos="head") + cho "Most likely..." ("annoyed", "base", "worried", "mid") + gen "(This might be just what we need!)" ("angry", xpos="far_left", ypos="head") + cho "Professor Trelawney told us to wear our robes tomorrow." ("soft", "base", "base", "R") + cho "According to her, there are some heavy rain clouds approaching..." ("open", "narrow", "raised", "mid") + cho "But that's just Trelawney... She can be a bit inconsistent with her weather forecasts..." ("soft", "base", "worried", "down") + cho "Well, she's quite inconsistent with everything, if I'm honest..." ("annoyed", "narrow", "base", "R") + gen "Let's hope she's right this time!" ("grin", xpos="far_left", ypos="head") + cho "But, Sir! Wouldn't this put us at a huge disadvantage?" ("open", "narrow", "worried", "mid") + gen "Nonsense..." ("base", xpos="far_left", ypos="head") + cho "[cho_genie_name], I'm gonna get soaked without my coat on!" ("soft", "base", "worried", "mid") + gen "Counting on it!" ("grin", xpos="far_left", ypos="head") + gen "I, for one, am quite looking forward to the possibility of you getting wet." ("grin", xpos="far_left", ypos="head") + cho "Let's just hope for the best..." ("upset", "narrow", "worried", "down") + gen "That we shall." ("grin", xpos="far_left", ypos="head") + gen "Off you go then. And good luck." ("grin", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "R") + cho "See you tomorrow, [cho_genie_name]." ("soft", "narrow", "worried", "mid") + + call cho_walk(action="leave") + + $ cho_busy = True + $ cc_event_pause += 1 # Event starts on the next day + $ cc_summon_pause += 1 # Can't be summoned until next event + + $ cho_quid.lock_training = True + $ cho_quid.lock_practice = True + + $ slytherin_match = "start" + + jump end_cho_event + + +label slytherin_match: + # Quidditch match: Ravenclaw vs. Slytherin + $ game.weather = "clear" + + $ cho_outfit_last.save() + $ her_outfit_last.save() + $ ton_outfit_last.save() + + $ cho.equip(cho_outfit_quidditch) + $ hermione.equip(her_outfit_default) + $ tonks.equip(ton_outfit_default) + + call play_music("stop") + + # Start in the office + call play_sound("knocking") + call bld + "*Knock-knock-knock*" + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"Who is it?\"": + call bld + ton "Tonks, Sir." + gen "First and last name, please." ("base", xpos="far_left", ypos="head") + with hpunch + ton "What?!" + gen "Tell me your first and last name, and you may enter." ("grin", xpos="far_left", ypos="head") + ton "Are you fucking with me right now?" + gen "No. Unless that's on the table..." ("base", xpos="far_left", ypos="head") + gen "Or desk." ("grin", xpos="far_left", ypos="head") + ton "Bloody hell..." + gen "Full name please." ("base", xpos="far_left", ypos="head") + ton "Nymphadora Tonks...{w=0.3} Can I come in now?" + gen "Of course..." ("grin", xpos="far_left", ypos="head") + "\"Come in...\"": + pass + + call ton_walk("desk", "base", action="enter") + + call play_music("tonks") + ton "Hi, [ton_genie_name]." ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=d3) + gen "Tonks... a pleasure as always." ("base", xpos="far_left", ypos="head") + ton "Pleasure's all mine..." ("soft", "base", "base", "mid") + ton "I was afraid you might've forgotten about today's--" ("open", "base", "raised", "mid") + gen "Quidditch match?" ("grin", xpos="far_left", ypos="head") + ton "So you didn't forget!" ("grin", "wide", "shocked", "mid") + gen "How could I? Last match was a great show!" ("grin", xpos="far_left", ypos="head") + ton "It sure was..." ("horny", "base", "raised", "R") + ton "So, is Miss Granger going to show up as well?" ("soft", "wide", "shocked", "mid") + gen "Who knows with her, honestly..." ("base", xpos="far_left", ypos="head") + ton "Fingers crossed then." ("base", "base", "base", "mid") + ton "I'd love to be able to watch her--{w} The game from the commentator booth." ("clench", "narrow", "raised", "R") + ton "So... *Ahem*... May I be allowed to accompany you on the way to the pitch?" ("base", "base", "base", "mid") #sad + gen "Of course! I'd be delighted to have you!" ("grin", xpos="far_left", ypos="head") + ton "Thank you, [ton_genie_name].{heart}" ("base", "happyCl", "base", "mid", hair="happy") + ton "Are we to expect another great performance this time around?" ("horny", "narrow", "base", "downR", hair="neutral") + gen "Oh, you'll see..." ("grin", xpos="far_left", ypos="head") + ton "Great, shall we?" ("base", "wink", "shocked", "mid") + gen "We certainly shall!" ("grin", xpos="far_left", ypos="head") + + call play_music("stop") + call hide_characters + hide screen bld1 + with d3 + + # Teleport to door + call play_sound("kick") + call gen_chibi("hide") + with d3 + + call gen_chibi("stand", "door", "base") + call teleport(position="genie", effect=False) + pause .2 + + call ton_chibi("stand", "desk", "base", flip=True) + with d3 + pause .2 + + call gen_chibi("stand", "door", "base", flip=False) + with d3 + pause .3 + + ton "*huh*?... (When did he?)" ("upset", "shocked", "raised", "L", ypos="head", flip=True) + ton "(Impressive. I wonder if his stamina can keep up with that speed...)" ("mad", "narrow", "raised", "R") + gen "Ladies first." ("grin", xpos="far_left", ypos="head") + ton "What a gentleman." ("base", "happyCl", "base", "mid") + + call ton_walk("door", "base", speed=1.25) + + call play_sound("door") + call ton_chibi("hide") + with d3 + pause .2 + + call gen_chibi("stand", "door", "base") + with d3 + pause .5 + + call play_sound("door") + call gen_chibi("hide") + with d3 + pause .8 + + # Black screen + stop music fadeout 2 + stop bg_sounds fadeout 2 + call play_music("stop") + show screen blkfade + with d5 + pause 2 + + + call play_sound("grass") + nar ">You and Tonks make your way across the castle grounds." + nar ">You find Snape waiting for you at the entrance of the Quidditch pitch towers." + + # Pitch entrance + #centered "{size=+7}{color=#cbcbcb}At the Quidditch pitch...{/color}{/size}" + + #TODO Weather effects: + # Scene Cloudy/rainy pitch + # Sounds slightly windy/rain (Might need a new sound we'll see... It shouldn't overpower things) + + call room("quidditch_pitch") + play bg_sounds "sounds/outskirts.ogg" fadein 2 + call sna_chibi("stand", "right", "base") + call ton_chibi("stand", "mid", "base", flip=True) + call gen_chibi("stand", "left", "base", flip=True) + call hide_blkfade + pause .8 + + sna "Miss Tonks..." ("snape_03", ypos="head") + sna "Geni--" ("snape_03") + sna "*Ahem*... Albus, Glad you made it in time, I was about to call for you." ("snape_09") + ton "I know who he is, Snape. There's no need for the pretence." ("open", "closed", "base", "L", ypos="head", flip=True) + sna "Of course there is. We're outside the headmaster's office, after all." ("snape_16") + sna "We have to keep up the act in front of the students..." ("snape_01") + ton "*Hmm*... Good point..." ("base", "base", "base", "R") + gen "I'm standing right here." ("base", xpos="far_left", ypos="head") + sna "I would've gone and fetched him myself but..." ("snape_03") + sna "I had some... business to attend to." ("snape_35") + ton "Business, *huh*?" ("horny", "wide", "raised", "L") + + sna "You will be accompanying us I presume?" ("snape_04") + ton "If that's okay with you?" ("base", "happyCl", "base", "mid") + with None + + show screen blktone + with d5 + gen "(Why aren't they paying attention to me?)" ("base", xpos="far_left", ypos="head") + hide screen blktone + with d5 + + sna "I suppose..." ("snape_05") + ton "Great!" ("grin", "base", "raised", "L") + + ton "So, are we going?" ("base", "base", "shocked", "L") + sna "Ah *ahem*, yes... I suppose." ("snape_12") #throat clear in the middle of the sentence for extra awkardness + gen "I may be immortal but I'm afraid I'll die from this awkwardness..." ("base", xpos="far_left", ypos="head") + gen "I'd take a hundred years in the lamp over this." ("base", xpos="far_left", ypos="head") + + call play_sound("giggle") + ton "*Giggles*" ("base", "happyCl", "base", "mid") + sna "..." ("snape_14") + sna "After me then..." ("snape_12") + + call sna_walk(path=[("stairs_base", "base"),("stairs_up", "stairs_up")], speed=1.5) + call ton_walk(path=[("stairs_base", "base"),("stairs_up", "stairs_up")], speed=1.5) + call gen_walk(650, "base", speed=1.5) + call gen_chibi("stand", 650, "base") + with d3 + call chibi_emote("exclaim", "genie") + pause 0.3 + + call chibi_emote("hide", "genie") + call gen_chibi("stand_alt") + with d3 + pause 0.5 + + call bld + gen "(*He-heh*... \"Snape sux\"...)" ("grin", xpos="far_left", ypos="head") + gen "(Oh right. I already saw that...)" ("base", xpos="far_left", ypos="head") + gen "(Still funny.)" ("grin", xpos="far_left", ypos="head") + call gen_chibi("stand") + call gen_walk(path=[("stairs_base", "base"),("stairs_up", "stairs_up")], speed=1.5) + + stop bg_sounds fadeout 2 + call blkfade + + # Sound check + if get_volume_preference('music') < 0.1 or get_volume_preference('sfx') < 0.1: + nar "This section of the game is best played with the sound turned on. Go to preferences to set the volume." + + pause 1 + + # Quidditch stands + call room("quidditch_stands") + call quidditch_stands(weather="sun_high") + + ### Snape Chibi Postions ### + # 1st Step R: call sna_chibi("stand", flip=True, 25, 234) + # 2nd Step R: call sna_chibi("stand", flip=True, 85, 260) + # 3rd Step R: call sna_chibi("stand", 120, 295, flip=True) + + ### Genie Postions ### + ## Sprite: call gen_main(face="base", base="base", xpos=-10, ypos=140) + # 1st Step Mid: call gen_chibi("stand", flip=True, -20, 270) + # 2nd Step L: call gen_chibi("stand", flip=True, -20, 320) + # 2nd Step Mid: call gen_chibi("stand", flip=True, 0, 360) + # 3rd Step L: call gen_chibi("stand", 20, 365, flip=True) + # 3rd Step Mid: call gen_chibi("stand", flip=True, 65, 340) + # Floor Mid: call gen_chibi("stand", 170, 400, flip=True) + # Podium: call gen_chibi("stand", flip=True, 280, 400) + + ### Hermione Postions ### + ## Sprite: her "" (flip=True, xpos="290", ypos="base") + # 2nd Step Mid: call her_chibi("stand", 40, 295, flip=True) + # Floor Mid: call her_chibi("stand", flip=True, 180, 400) + # Podium: call her_chibi("stand", 300, 400, flip=True) + # Podium Sidestep: call her_chibi("stand", flip=True, 260, 460) + + ### Tonks Positions ### + # 1st Step R: call ton_chibi("stand", flip=True, 55, 235) + # 4th Step R: call ton_chibi("stand", 180, 340, flip=True) + # Floor mid: call ton_chibi("stand", flip=True, 180, 400) + # Floor R: call ton_chibi("stand", flip=True, 230, 370) + # Podium: call ton_chibi("stand", flip=True, 300, 400) + # Sitting: call ton_chibi("sit", flip=True, xpos=-140, ypos=125) + + ### Cho Positions ### + ## Flying Sprite: call cho_main(xpos=580, ypos=-200) + # Flying Chibi: call cho_chibi("fly", 530, 360) + + $ snape_chibi.zorder = 1 + $ tonks_chibi.zorder = 2 + $ hermione_chibi.zorder = 3 + $ genie_chibi.zorder = 4 + + # Match starts + play weather "sounds/outskirts_tower.ogg" fadein 3 + call hide_blkfade + pause 1 + + call play_sound("footsteps") + pause .8 + + call sna_chibi("stand", 120, 295, flip=True) + with d3 + pause .5 + + call ton_chibi("stand", 180, 340, flip=True) + with d3 + pause .2 + call ton_chibi("stand", flip=False) + with d3 + + ton "Mind your head!" ("open", "shocked", "shocked", "down", ypos="head", flip=False) + + call play_sound("kick") + with hpunch + pause .6 + gen "Bloody bleachers!" ("angry", xpos="far_left", ypos="head") + sna "..." ("snape_45", ypos="head") + pause .2 + + call play_sound("footsteps") + pause .8 + call gen_chibi("stand", 20, 365, flip=True) + with d3 + pause .2 + call ton_chibi(flip=True) + with d3 + pause .2 + + play bg_sounds "sounds/crowd_very_low.ogg" fadein 10 + call quidditch_stands(crowd=crowd_few) + with d3 + pause 1 + + ton "Oh, what a view! Much better than the one from the Hufflepuff stands!" ("grin", "wide", "base", "L", ypos="head", flip=True) + + gen "Nice weather too." ("base", xpos="far_left", ypos="head") + ton "Indeed!" ("base", "wide", "base", "mid") + + $ renpy.sound.play("sounds/thunder.ogg") + call quidditch_stands(weather="overcast", tree_fire=True, rain=True, puddles=True) + with flashbulb + play weather "sounds/storm.ogg" fadeout 1.0 fadein 3.0 + $ game.weather = "rain" + + pause 1.0 + sna "Indeed!" ("snape_02", ypos="head") + + ton "You jinxed it.." ("upset", "closed", "worried", "mid", ypos="head", flip=True) + gen "Hey!{w=0.4} That wasn't--" ("angry", xpos="far_left", ypos="head") + + # Hermione walks up to the podium + call play_sound("footsteps") + call her_chibi("stand", 40, 295, flip=True) + with d3 + pause .3 + call her_walk(path=[(180, 400),(300, 400)]) + call her_chibi("stand", 300, 400, flip=True) # Temp Bugfix + pause .5 + + call her_chibi(flip=False) + with d3 + pause .1 + + her "Oh, hello, Professor Tonks!" ("soft", "base", "base", "L", ypos="head", flip=False) + pause 1.0 + $ renpy.sound.play("sounds/MaleClearThroat.ogg") + sna "*Ahem*" ("snape_09", ypos="head") + pause 2.0 + call chibi_emote("thought", "snape") + pause 2.0 + call chibi_emote("hide", "snape") + + #show screen blktone + #with d5 + #gen "(I feel you buddy...)" ("base", xpos="far_left", ypos="head") + #hide screen blktone + #with d5 + + ton "{size=-4}Do I hear some jealousy back there?{/size}" ("grin", "narrow", "raised", "R", ypos="head", flip=True) + sna "{size=-4}Of course not... just a cough,{w=0.3} {cps=15}Nymphadora{/cps}.{/size}" ("snape_03", ypos="head") + ton "{size=-2}That's Tonks to you...{w=0.3} {i}dungeon dweller.{/i}{/size}" ("open", "wide", "angry", "R", hair="angry") + sna "Dungeon dw--" ("snape_32", ypos="head") + sna "I'll give you a dungeon dweller in a minute you--" ("snape_08", ypos="head") + + her "Professor Tonks, your hair!" ("soft", "base", "base", "L", ypos="head", flip=False) + ton "Whoopsie...{w=0.5} Miss Granger, so glad to see you!" ("base", "happyCl", "base", "L", hair="neutral", ypos="head", flip=True) + sna "{size=-2}*Hmph*{/size}" ("snape_31", ypos="head") + her "Of course, as you know I take my responsibilities seriously!" ("open", "base", "angry", "L") + + call quidditch_stands(crowd=crowd_mid) + with d3 + + #TODO Crowd sound goes up + sna "{size=-4}Unfortunately...{/size}" ("snape_31") #small text + ton "I'm here if you need me!" ("base", "happyCl", "base", "mid") + her "I appreciate the thought, Professor... but I'll be fine." ("open", "closed", "base", "mid") + her "I'd be made fun of even more if you had to take over..." ("open", "narrow", "angry", "L") + ton "Whatever you want, sweetie." ("horny", "narrow", "base", "L") #smile + her "..." ("clench", "happyCl", "worried", "mid", cheeks="blush") #smiles and blushes + pause .2 + + play bg_sounds "sounds/crowd_low.ogg" fadeout 5.0 fadein 3.0 + call quidditch_stands(crowd=crowd_full) + with d3 + pause .5 + + sna "The crowd is waiting, Miss Granger..." ("snape_31") + her "Sorry!" ("clench", "happyCl", "worried", "mid", emote="sweat") + + call her_chibi(flip=True) + with d3 + pause .5 + + her "" ("open", "base", "worried", "mid", flip=True, xpos="290", ypos="base", trans=d5) + pause .8 + + $ renpy.sound.play("sounds/microphone_feedback.ogg") + play bg_sounds "sounds/crowd_very_low.ogg" fadeout 1.0 fadein 5.0 + her "*Ahem*" ("open", "happyCl", "base", "mid") + her "Welcome back to the second match of the season!" ("base", "happyCl", "base", "mid") + + play bg_sounds "sounds/crowd_low.ogg" fadeout 1.0 fadein 3.0 + + call quidditch_stands(crowd_react=[None, "emo8", None]) + sly1 "{size=+5}Not the Gryffindor slut again!{/size}" + + sly2 "{size=+8}Get off the podium, Mudblood!{/size}" + sly1 "{size=+15}Boooo!{/size}" + her "*Hmph*!" ("annoyed", "narrow", "angry", "mid") + + call hide_characters + with d3 + pause .2 + call her_chibi(flip=False) + with d3 + pause .3 + + her "Sir, I'm trying to do my job here, and those Slytherin boys just can't keep their filthy mouths shut!" ("soft", "narrow", "angry", "mid", ypos="head", flip=False) + sna "Surely you've been called worse Miss Granger..." ("snape_05") + + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + ton "Just ignore them sweetie, you're doing great." ("base", "happyCl", "base", "mid") + + if ton_friendship > sna_friendship: + gen "What she said." ("base", xpos="far_left", ypos="head") + elif ton_friendship == sna_friendship: + gen "What they said." ("base", xpos="far_left", ypos="head") + else: + gen "What he said." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "angry", "down") + her "Fine..." ("soft", "base", "base", "R") + + pause .2 + call her_chibi(flip=True) + with d3 + pause .5 + + her "I know the weather might not be optimal, but the games must go on." ("soft", "closed", "base", "mid", flip=True, xpos="290", ypos="base", trans=d3) + her "Therefore, let me now welcome onto the pitch..." ("open", "base", "base", "down") + her "The team known for their technical prowess and... lately... unconventional tactics..." ("disgust", "base", "worried", "down") + her "Team Ravenclaw!" ("open", "base", "base", "mid") + + $ renpy.sound.play("sounds/crowd_cheer.ogg") + call quidditch_stands(crowd_react=["emo8", None, "emo8"]) + with d3 + + ">A loud cheer roars from the grandstands." + + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + #TODO Crowd sounds + her "And their opponents..." ("soft", "closed", "base", "mid") + her "The team known for their..." ("open", "narrow", "angry", "down") + her "Their..." ("open", "narrow", "angry", "L") + + call quidditch_stands(crowd_react=[None, "emo8", None]) + with d3 + + sly1 "{size=+5}Got a cock down your throat?{w=0.8} Get on with it!{/size}" + sly2 "{size=+8}Yeah!{w=0.5} Get on with it!{/size}" + her "..." ("annoyed", "closed", "angry", "mid") + + play bg_sounds "sounds/crowd.ogg" fadeout 1.0 fadein 3.0 + call quidditch_stands(crowd_react=["emo8", None, "emo7"]) + with d3 + with hpunch + qcr "{size=+15}Get on with it!{/size}" + + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + $ renpy.sound.play("sounds/microphone_feedback.ogg") + her "The team known for their thick skin... or should I say, thick skulls..." ("angry", "base", "angry", "mid", emote="angry") + her "Team Slytherin!" ("annoyed", "narrow", "angry", "mid") + + $ renpy.sound.play("sounds/crowd_stomping.ogg") + hide hermione_main + call quidditch_stands(crowd_react=["emo8", "emo7", "emo7"]) + with d3 + + #her "" ("base", "base", "base", "mid") + ">The green grandstand shakes violently with enthusiasm." + + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + gen "..." ("grin", xpos="far_left", ypos="head") + sna "..." ("snape_38") + her "And now, if both teams have managed to find their way to their starting positions..." ("open", "closed", "base", "mid", trans=d3) + her "Madam Hooch, if you please!" ("soft", "base", "base", "L") + + hide hermione_main + with d3 + + pause .5 + + play bg_sounds "sounds/crowd_low.ogg" fadeout 1.0 fadein 3.0 + $ renpy.sound.play("sounds/referee.ogg") + play music "music/machinations-by-kevin-macleod.ogg" fadein 1 fadeout 1 + call nar(">The grey haired lady glances up to the podium, and gives Hermione a wink as she throws the quaffle into the air.") + + her "And we're off!" ("base", "happyCl", "base", "mid", trans=d3) + call nar(">Looking up, you can see Cho giving Malfoy a quick smirk as she darts off towards the Slytherin half of the pitch.") + her "Ravenclaw chaser and team captain Roger Davies immediately goes for the quaffle..." ("open", "base", "angry", "L") + her "The Slytherin captain Graham Montague not far behind." ("open", "base", "angry", "up") + her "Oh! Davies catches it and passes to Bradley..." ("smile", "base", "angry", "up") + ton "She's pretty cute when she's excited, isn't she." ("soft", "narrow", "base", "L") + gen "..." ("base", xpos="far_left", ypos="head") + ton "I feel like we've got the best seats in the house, right behind the podium..." ("horny", "narrow", "raised", "L", hair="horny") + her "" ("open", "base", "angry", "up") + ton "Who cares about the match if you've got a view like that..." ("horny", "base", "angry", "L") + $ renpy.sound.play("sounds/ball_hit.ogg") + her "" ("open", "base", "angry", "up") + + sna "Well, some of us bet quite a fortune on the outcome." ("snape_09") + if game.gold >= 2000: + gen "Fuck{w=0.3}, I forgot he was here..." ("angry", xpos="far_left", ypos="head") + else: + gen "Oh shit{w=0.3}, the bet..." ("angry", xpos="far_left", ypos="head") + + sna "You aren't going to chicken out now, are you?" ("snape_03") + gen "No... of course not..." ("base", xpos="far_left", ypos="head") + show screen blktone + with d5 + if game.gold >= 2000: + gen "(Why did I bet so much gold on this?!)" ("angry", xpos="far_left", ypos="head") + else: + gen "(How in the hell would I get two thousand gold?!)" ("angry", xpos="far_left", ypos="head") + gen "(It's not like I can conjure gold out of the thin air, can I...)" ("base", xpos="far_left", ypos="head") + hide screen blktone + with d5 + + her "The Slytherin beaters, Crabbe and Goyle, are now focusing their efforts on beating the bludgers as hard as they can towards the enemy chasers!" ("open", "base", "angry", "R") + $ renpy.sound.play("sounds/ball_hit.ogg") + her "Crabbe just whacked the bludger straight towards Davis' broom--" ("open", "base", "angry", "up") + her "Scratch that, he hit the quaffle out of his hand!" ("clench", "base", "worried", "up") + her "That's crazy lucky!" ("open", "base", "angry", "up") + her "Where's the quaffle?{w} Oh, Pucey's got it!" ("soft", "base", "base", "L") + her "And he's already flown past the beaters!" ("smile", "base", "angry", "L") + gen "..." ("angry", xpos="far_left", ypos="head") + her "But can he get through the keeper?" ("soft", "base", "base", "up") + + $ renpy.sound.play(["sounds/card_punch4.ogg", "sounds/crowd_ouch.ogg"]) + with hpunch + + pause 0.5 + call quidditch_stands(crowd_react=["sur", "emo02", "excl"]) + + + her "Another bludger hit by Crabbe -- going straight into the stomach of the Ravenclaw keeper!" ("clench", "base", "worried", "up") + + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + her "Pucey passes the quaffle to Warrington, who scores another goal for team Slytherin!" ("annoyed", "base", "angry", "up") + + hide hermione_main + call quidditch_stands(crowd_bj=True) # Blowjob Silhouette + with d3 + + gen "That's insane, how the hell did he hit that?" ("base", xpos="far_left", ypos="head") + sna "..." ("snape_45") + gen "He was on the other side of the pitch!" ("angry", xpos="far_left", ypos="head") + sna "That's my boys!" ("snape_37") + sna "Thick as oatmeal, but built like a brick shithouse." ("snape_28") + $ renpy.sound.play("sounds/ball_hit.ogg") + ton "They're so strong... I've never seen a bludger hit its target from that far before..." ("horny", "base", "base", "up", hair="horny") #horny + ton "Is it me or is it getting a bit hot in here?" ("normal", "closed", "raised", "downR", cheeks="blush") + sna "Something to cool you down perhaps?" ("snape_02") + ton "Good idea, did you bring any of that firewhisky, Professor Dumbledore?" ("soft", "wink", "raised", "mid") + gen "Err..." ("base", xpos="far_left", ypos="head") + sna "Firewhisky? For such a special day as today I've brought some of my finest wine." ("snape_20") + + show screen blktone + with d5 + gen "(Yeah right, it's probably one of mine...)" ("base", xpos="far_left", ypos="head") + hide screen blktone + with d5 + + sna "Now, if I may, Miss Tonks?" ("snape_13") + ton "*Hmm*... I tend not to drink wine too often..." ("annoyed", "narrow", "raised", "down") + ton "Oh what the heck, go on then. I'll have a glass." ("base", "base", "annoyed", "down") + + hide screen bld1 + show screen blkfade + with d5 + + call nar(">You sit down with Snape and Tonks to enjoy the match -- drinking some of the finest wine you've tasted.", "start") + call nar(">Tonks' cheeks turning redder as the game continues.", "end") + + her "" ("annoyed", "base", "base", "up") + hide screen blkfade + with d5 + + gen "Doesn't look great..." ("base", xpos="far_left", ypos="head") + ton "What do you mean?" ("open", "base", "base", "L", hair="horny") + ton "Only thing that would make this better would be those firm cheeks on my lap!" ("horny", "narrow", "annoyed", "L", hair="horny") + sna "He's talking about the game..." ("snape_09") + ton "Game? What game..." ("open", "wide", "raised", "L") + ton "Oh, Quidditch! Of course!" ("clench", "wide", "base", "mid") + + her "And we're now sixty-nil to Slytherin as their onslaught continues, the seekers not yet having spotted the snitch." ("open", "base", "angry", "L") + her "If it wasn't for those foul tactics... from the brutes on the Slytherin team..." ("angry", "base", "angry", "L") + $ renpy.sound.play("sounds/ball_hit.ogg") + her "Ravenclaw would have no issues beating the ever living sh--{w=2.0}{nw}" ("angry", "narrow", "angry", "L") + + call hide_characters + with d3 + pause .2 + + # Hermione gets hit in the face by a bludger + show screen bludger_flying((530, -100), (-50, 1000)) + pause .18 + $ renpy.play(["sounds/card_punch4.ogg", "sounds/microphone_feedback.ogg"]) + show screen gfx_effect(359, 226, img="glow_effect", zoom=0.7, duration=0.3) + call her_chibi("hit_head", flip=True) + with vpunch + + hide screen gfx_effect + show screen gfx_effect(295, 475, img="smoke", zoom=0.5) + $ renpy.sound.play("sounds/kick.ogg") + call quidditch_stands(hole=True) + with None + + stop bg_sounds fadeout 2 + stop music fadeout 2 + pause 0.5 + $ renpy.sound.play("sounds/crowd_gasp.ogg") + call ton_chibi("stand_shocked", flip=True)#, 200, 50+180, flip=True) + call gen_chibi("stand_shocked")#, 130, 10+250) + call sna_chibi("stand_shocked", flip=True)#, 210, -40+250, flip=True) + pause 1.0 + $ renpy.sound.play("sounds/dizzy.ogg", loop=True) + pause 2.0 + sna "*Pfffffffffff*--" ("snape_14") #TODO Custom image? Snape has wine gushing out of his nose + sna "{size=+5}Ha-ha-HA-HA!{/size}" ("snape_42") + $ renpy.sound.stop(fadeout=1.0) + + call play_music("silly") + stop weather fadeout 0.5 + show screen blkfade + with d1 + + centered "{size=+7}{color=#cbcbcb}-\{Intermission\}-{/color}{/size}\n{size=-2}{color=#686868}Please stand by{/color}{/size}{w=5.0}{nw}" + + call play_music("stop") + pause .5 + + call hide_characters + $ snape_chibi.zorder = 1 + $ hermione_chibi.zorder = 3 + $ tonks_chibi.zorder = 2 + $ genie_chibi.zorder = 4 + + call her_chibi("lying", 295, 360) #, 330, 160+186) + call ton_chibi("stand",330, 360, flip=False) # ,395,110+180, flip=False) + call sna_chibi("stand", 185, 375, flip=True) # ,260,250, flip=True) + call gen_chibi("stand_alt", 155, 420) #,210,40+250) + with d3 + + $ game.weather = "overcast" + play bg_sounds "sounds/wind_long_loop.ogg" fadein 5 fadeout 2 + call weather_sound + play music "music/machinations-by-kevin-macleod.ogg" fadein 1 fadeout 1 + call quidditch_stands(rain=False, crowd_bj=False, tree_fire=False) # Disable Blowjob Silhouette + hide screen blkfade + with d5 + pause .8 + + sna "I'm surprised she didn't swallow that one... with how wide she was blabbing her mouth." ("snape_42", ypos="head") + sna "To think that liquid luck--" ("snape_45") + ton "{size=+5}What?{/size}" ("scream", "shocked", "base", "stare", hair="neutral", cheeks="blush", ypos="head", flip=True, trans=vpunch) + gen "What the fuck is liquid luck?" ("angry", xpos="far_left", ypos="head") + ton "You gave those brutes a luck potion?!" ("mad", "base", "angry", "L", hair="angry", cheeks="blush") + sna "Well..." ("snape_14") + ton "I can't believe you, Snape...{w=0.5} look what they've done to her face!" ("mad", "base", "worried", "down", cheeks="blush") + ton "Her beautiful face..." ("upset", "base", "worried", "down", hair="sad", cheeks="blush") + sna "Looks like an improvement to me." ("snape_46") + + menu: + "\"Way to go Snape...\"": + gen "You knew you couldn't win so you decided to use one of your dirty tricks..." ("base", xpos="far_left", ypos="head") + gen "And now I need to find me a new commentator, thanks to you!" ("angry", xpos="far_left", ypos="head") + sna "A bit hypocritical of you don't you think--" ("snape_32") + "\"You owe me one, Snape...\"": + sna "I {i}owe you{/i} one? What are you talking about?" ("snape_10") + gen "She won't be able to blow me any time soon, thanks to you." ("base", xpos="far_left", ypos="head") + gen "So yes, I think you owe me." ("base", xpos="far_left", ypos="head") + sna "Surely you can't be--" ("snape_14") + "\"10 points to Gryffindor!\"": + ton "Are you mad?" ("scream", "base", "angry", "R", hair="angry") + gen "What? I'm just joking, I'm sure she'll be fine..." ("base", xpos="far_left", ypos="head") + sna "{size=-4}10 points to Slytherin.{/size}" ("snape_38") + gen "Did you say something--" ("base", xpos="far_left", ypos="head") + $ gryffindor += 10 + $ slytherin += 10 + + + ton "Quiet!" ("mad", "base", "angry", "L", hair="angry") + gen "..." ("base", xpos="far_left", ypos="head") + ton "I'm taking her to the hospital wing..." ("open", "base", "angry", "down", hair="neutral") + gen "What about the game...?" ("base", xpos="far_left", ypos="head") + ton "Leave it to me..." ("open", "base", "angry", "mid") + gen "What?" ("angry", xpos="far_left", ypos="head") + + call hide_characters + call ton_chibi(flip=True) + with d3 + pause .1 + + call ton_walk(380, 360) + + pause .5 + + $ renpy.sound.play("sounds/referee.ogg") + call nar(">Tonks signals Hooch, who then sounds her whistle to signify a short break.", action="start") + call nar(">A murmur erupts across the crowd, some not realizing what has gone down.", action="end") + + call ton_chibi(flip=False) + with d3 + + call ton_walk(330, 360) + pause .5 + + call play_sound("footsteps") + show screen blkfade + with d5 + pause .8 + + $ genie_chibi.zorder = 2 + + hide screen hermione_lying + call ton_chibi("hide") + call her_chibi("hide") + call gen_chibi("stand", 300, 365, flip=False) + call sna_chibi("stand", 215, 360, flip=False) + with d3 + + hide screen blkfade + with d5 + pause .3 + + gen "She sure sobered up quickly..." ("base", xpos="far_left", ypos="head") + + with hpunch + $ renpy.sound.play("sounds/falling_stairs.ogg") + pause 1 + + ton "Bloody stairs!" + gen "Never mind..." ("base", xpos="far_left", ypos="head") + sna "This isn't good." ("snape_03") + gen "You tell me, her face is fucked, and not in the fun way." ("angry", xpos="far_left", ypos="head") + call sna_chibi(flip=True) + with d3 + call gen_chibi("stand_alt", flip=False) + with d3 + sna "I'm talking about the crowd... Granger will be out of it for now, but should be fine by the end of the day." ("snape_09") + sna "Unfortunately..." ("snape_35") + gen "(...)" ("base", xpos="far_left", ypos="head") + pause .5 + + # Blackfade + show screen blkfade + with d5 + pause .2 + + ">A couple of minutes go by, and there's no sign of Tonks..." + + $ renpy.sound.play("sounds/murmur.ogg") + # Crowd reactions aren't visible during blackfade + # call quidditch_stands(crowd_react=[None, "emoq", None]) + # with d3 + + ">The crowd is now whispering even more, some beginning to notice the empty podium." + + # call quidditch_stands(crowd_react=[None, None, None]) + # with d3 + + call gen_chibi("stand_alt", 240, 365, flip=False) + call sna_chibi("stand", 120, 295, flip=True) + + hide screen blkfade + with d5 + pause .5 + + sna "You'd better get up there and do something." ("snape_03") + gen "What do you want me to do? You already made me do a speech last time..." ("base", xpos="far_left", ypos="head") + gen "I'm out of material." ("angry", xpos="far_left", ypos="head") + gen "Also, doesn't this feel a bit like rehashing content?" ("base", xpos="far_left", ypos="head") + + #TODO Snape starts walking slowly to the podium + sna "Fine, in that case. I'll just go up and give a motivational--" ("snape_01") + + # Genie walks past Snape, who stops + call gen_chibi("stand", flip=True) + with d3 + pause .5 + gen "No..." ("base", xpos="far_left", ypos="head") + pause .3 + + call gen_walk(280, 400) + pause .8 + + stop music fadeout 3.0 + $ genie_zorder = 15 + show screen blktone + with d5 + pause 1.0 + gen "" (face="base", base="base", xpos=-10, ypos=140) + with d3 + pause 2.0 + + gen "I've got this..." # Genie gets into character for his speech + + $ renpy.sound.play("sounds/microphone_feedback.ogg") + hide screen blktone + with d3 + pause .2 + gen "Ladies and gentlemen..." (face="open") + + gen "An intermission if you will...{w} for some motivation...{w} for both teams..." (face="base") + + menu: + "(Let's give them what they came for...)" + "-Independence!-": + # Independence day + play bg_sounds "music/fanfare.ogg" fadeout 3 fadein 1.0 + + hide screen genie_main + with d3 + pause .8 + $ renpy.sound.play("sounds/killswitch_on.ogg") + hide screen blktone + call quidditch_stands(spotlight=True) + with d1 + pause 1.5 + + gen "Good morning..." (face="base", trans=d3) + + call quidditch_stands(crowd_react=[None, "emoq", None]) + with d3 + + gen "In less than an hour, aircraft from here will join others from around the world. And you will be launching the largest aerial battle in this history of mankind." (face="open") + gen "" (face="base") + sna "Not again..." ("snape_17") + gen "Mankind...{w=0.3} that word should have new meaning for all of us today." (face="open") + + call quidditch_stands(crowd_react=[None, "emoq", "qu"]) + with d3 + + gen "We can't be consumed by our petty differences anymore." (face="base") + gen "We will be united in our common interests." (face="open") + gen "Perhaps it's fate that today is the Fourth of July, and you will once again be fighting for our freedom, not from tyranny, oppression, or persecution... but from annihilation." (face="open") + gen "We're fighting for our right to live, to exist." (face="angry") + gen "And should we win the day, the Fourth of July will no longer be known as an American holiday, but as the day when the world declared in one voice." (face="open") + gen "We will not go quietly into the night!" (face="base") + gen "We will not vanish without a fight!" (face="open") + gen "We're going to live on!{w=0.5} We're going to survive!" (face="angry") + + $ renpy.sound.play("sounds/microphone_feedback.ogg") + stop bg_sounds fadeout 5.5 + + "-Sunshine and rainbows-": + # Rocky + stop bg_sounds fadeout 3.0 + play music "music/BattleThemeB.ogg" fadein 3.0 + gen "The world ain't all sunshine and rainbows..." (face="base") + gen "It is a very mean and nasty place and it will beat you to your knees and keep you there permanently if you let it." (face="base") + + call quidditch_stands(crowd_react=[None, "emo8", None]) + with d3 + mal "An inspirational speech in the middle of the game?" + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + gen "You, me, or nobody is gonna hit as hard as life." (face="base") + sna "Ain't that true..." ("snape_09") + with None + + hide screen genie_main + with d3 + pause .8 + $ renpy.sound.play("sounds/killswitch_on.ogg") + hide screen blktone + call quidditch_stands(spotlight=True) + with d1 + pause .8 + + gen "But it ain't how hard you hit...{w=0.5} it's about how hard you can get hit, and keep moving forward." (face="angry", trans=d3) + + call quidditch_stands(crowd_react=[None, None, "emo8"]) + with d3 + cra "{size=-4}Bullshit!{/size}" + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + gen "How much you can take, and keep moving forward. That's how winning is done." (face="open") + gen "Now, if you know what you're worth, then go out and get what you're worth." (face="open") + gen "But you gotta be willing to take the hit, and not pointing fingers saying you ain't where you are because of him, or her, or anybody." (face="angry") + gen "Cowards do that and that ain't you. You're better than that!" (face="angry") + stop music fadeout 10 + + $ renpy.sound.play("sounds/crowd_cheer.ogg") + call quidditch_stands(spotlight=False, crowd_react=["emo8", "emo7", "emo8"]) + with d3 + + gen "..." (face="grin") + gen "Nailed it." (face="grin") + + "-Be winners!-": #"\"Don't care about the scoreboard\"": + # Hoosier + stop bg_sounds fadeout 3.0 + play music "music/victory1.ogg" fadeout 3 fadein 1.0 + gen "There's a tradition in tournament play to not talk about the next step until you've climbed the one in front of you." (face="base") + gen "I'm sure going to the state finals is beyond your wildest dreams, so let's just keep it right there." (face="base") + + call quidditch_stands(crowd_react=[None, None, "emoq"]) + with d3 + cho "(State finals?!?)" + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + + hide screen genie_main + with d3 + pause .8 + $ renpy.sound.play("sounds/killswitch_on.ogg") + hide screen blktone + call quidditch_stands(spotlight=True) + with d1 + pause .8 + + gen "Forget about the crowds, the size of the school, their fancy uniforms, and remember what got you here." (face="angry", trans=d3) + gen "Focus on the fundamentals that we've gone over time and time again." (face="open") + gen "And most important, don't get caught up thinking about winning or losing this game." (face="base") + gen "If you put your effort and concentration into playing to your potential, to be the best that you can be, I don't care what the scoreboard says at the end of the game..." (face="open") + gen "In my book we're gonna be winners!" (face="open") + gen "{size=+5}Okay?!!{/size}" (face="angry") #Large text + + $ renpy.sound.play("sounds/crowd_cheer2.ogg") + call quidditch_stands(crowd_react=["emo8", "emo7", "emo8"]) + with d3 + + stop music fadeout 10 + gen "{size=+8}Alright!!{/size}" (face="open") + gen "{size=+10}Let's go!!{/size}" (face="angry") + gen "{size=+10}Let's go!!{/size}" (face="angry") + $ renpy.sound.play("sounds/microphone_feedback.ogg") + gen "{size=+10}Let me hear it!!!{/size}" (face="angry") + + call quidditch_stands(spotlight=False, crowd_react=[None, None, None]) + with d3 + + #TODO Spotlights Off, pause, genie leaves podium + + call play_sound("footsteps") + call hide_characters + with d3 + pause .5 + + $ snape_chibi.zorder = 1 + $ hermione_chibi.zorder = 3 + $ genie_chibi.zorder = 2 + + call her_chibi("stand", 40, 295, flip=True) + #call her_chibi("stand", 160, 70+186, flip=True) + with d3 + pause .5 + call gen_chibi("stand_alt", flip=False) + with d3 + pause .2 + + call her_walk(180, 400) + pause .3 + + play bg_sounds "sounds/crowd_low.ogg" fadein 3 fadeout 2 + + her "I'm back!" ("soft", "base", "worried", "L", cheeks="blush", ypos="head", flip=True) #whispering #Blushing from this point forward + sna "Miss Granger?" ("snape_05", ypos="head") + her "It's--" ("disgust", "base", "worried", "down", cheeks="blush") + + call gen_chibi("stand", 300, 365, flip=False) + with d3 + pause .2 + + gen "Get up there, the crowd has started to suspect something..." ("base", xpos="far_left", ypos="head") + her "Oh...{w=0.5} of course!" ("soft", "narrow", "worried", "mid", cheeks="blush") + + call her_walk(300, 400) + pause .1 + call gen_chibi("hide") + with d3 + call gen_chibi("stand", 20, 365, flip=True) + with d3 + pause .5 + + $ renpy.sound.play("sounds/microphone_feedback.ogg") + her "*Ahem*..." ("base", "base", "base", "mid", xpos="290", ypos="base", flip=True, trans=dissolve) + her "{size=-4}Oh, these boobs are so heavy...{/size}" ("disgust", "base", "worried", "down", cheeks="blush") + her "{size=-4}And why is this shirt so hot...{/size}" ("soft", "base", "base", "down", cheeks="blush") + + $ renpy.sound.play("sounds/cloth_sound.ogg") + $ hermione.equip(her_outfit_default_no_vest) + with d3 + pause .5 + call quidditch_stands(crowd_react=[None, "emoq", None]) + with d3 + pause .3 + + gen "..." ("angry", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.equip(her_outfit_default_no_tie_open_shirt) + with d3 + pause 1.0 + + her "{size=-4}That's better.{/size}" ("base", "base", "base", "down", cheeks="blush") + her "So, after that short... intermission and removing that... streaker from the pitch..." ("open", "base", "base", "L") + #TODO Crowd !!! + gen "There was a streaker on the pitch? WHEN!?!" ("angry", xpos="far_left", ypos="head") + sna "She's deflecting the attention from the podium..." ("snape_09") + gen "Oh, of course..." ("base", xpos="far_left", ypos="head") + + her "Now, back to your positions..." ("open", "base", "base", "mid") + her "{size=-4}How nice, I'm not used to being listened to this easily!{/size}" ("base", "happyCl", "base", "mid", cheeks="blush") + + call quidditch_stands(crowd_react=[None, "emo7", None]) + with hpunch + + sly1 "{size=+8}Oh, shut up slut... or I'll make you!{/size}" + her "Looking forward to it!" ("base", "base", "angry", "L") + + call quidditch_stands(crowd_react=[None, "emoq", "emoq"]) + with d3 + + sly1 "..." + gen "What's wrong with her, did she get hit too hard?" ("base", xpos="far_left", ypos="head") + her "Hooch, give that whistle a good blow for me, will you?" ("soft", "base", "angry", "L") + call quidditch_stands(crowd_react=[None, None, None]) + with d3 + pause 0.5 + + $ renpy.sound.play("sounds/referee.ogg") + play music "music/machinations-by-kevin-macleod.ogg" fadein 1 fadeout 1 + pause 1.5 + hide hermione_main + with d3 + sna "..." ("snape_04") + sna "*Hmm*... wouldn't be the first time a student's personality changed from a bludger hit..." ("snape_35") + sna "Perhaps Madam Pomfrey's healing drafts aren't being distilled properly..." ("snape_09") + gen "If you say so..." ("base", xpos="far_left", ypos="head") + + her "With those strong and muscular Slytherins in a firm lead, we're now back in the game." ("open", "base", "base", "L", trans=d3) + $ renpy.sound.play("sounds/ball_hit.ogg") + her "Look at those bats swing!" ("angry", "base", "angry", "L") + her "I wouldn't mind being hit by one of those, if you know what I'm saying." ("grin", "narrow", "angry", "L") + her "And watch those Ravenclaws go, such finesse and style is a rare sight..." ("open", "base", "base", "L") + her "Miss Chang sure knows how to handle that broom between her thighs." ("crooked_smile", "narrow", "angry", "L") + cho "{size=+7}{b}!!!{/b}{/size}" + + # Section where genie goes up and touches Hermione (Tonks) under her skirt + show screen blktone + call hide_characters + with d3 + + sna "{size=-4}You know... Tonks isn't here right now...{/size}" ("snape_05") + gen "{size=-4}So?{/size}" ("base", xpos="far_left", ypos="head") + sna "..." ("snape_37") + gen "{size=-4}Oh...{w=0.3} I see what you mean...{/size}" ("grin", xpos="far_left", ypos="head") + hide screen blktone + with d3 + + call gen_chibi("stand", 65, 340) + with d5 + call gen_walk(path=[(170, 400),(210, 400)]) + call gen_chibi("hide") + call her_chibi_scene("grope_on_podium_idle") + with d3 + pause .5 + + # Genie starts sneaking up behind Hermione (Tonks) + her "Cute brunette passes to handsome blonde boy..." ("base", "happyCl", "base", "mid", trans=d3) + hide hermione_main + with d3 + pause 1.0 + call her_chibi_scene("grope_on_podium") + with d3 + pause 2.0 + her "Whoa!" ("soft", "wide", "base", "stare", cheeks="blush", trans=d3) + hide hermione_main + with d3 + call quidditch_stands(crowd_react=[None, None, "emoq"]) + with d3 + call ctc + + gen "..." ("grin", xpos="far_left", ypos="head") + her "No worries, ladies and gentlemen...{w=0.5} Just had a bit of a slip." ("grin", "happyCl", "worried", "mid", cheeks="blush", trans=d3) + her "It's very...{w=0.3} very wet up here." ("soft", "narrow", "base", "mid", cheeks="blush") + gen "(And it will be getting even wetter in a minute...)" ("grin", xpos="far_left", ypos="head") + call her_chibi_scene("grope_on_podium_horny") + hide hermione_main + show screen blktone + with d5 + pause .2 + + ">You move your hands gently up and down underneath Hermione's skirt, massaging her butt and thighs." + hide screen blktone + with d5 + pause .2 + + her "*Hmm*{w=0.3} Those boys are going...{w=0.5} *Ahh* going way too fast!{w} This game might be over before we know it." ("soft", "narrow", "base", "up", cheeks="blush", trans=d3) + gen "(Let's slow down a bit then, shall we...)" ("grin", xpos="far_left", ypos="head") + hide hermione_main + show screen blktone + with d5 + pause .2 + + ">As you continue touching Hermione, she's finding it more and more difficult to focus on the game." + hide screen blktone + with d5 + pause .2 + + her "*Ahh*{w=0.3} Still...{w=0.5} Still no... *Ahh*{w=0.3} sign of the golden snitch..." ("silly", "narrow", "base", "up", cheeks="blush", trans=d3) + gen "(It's right here... I'm rubbing it for good luck...)" ("base", xpos="far_left", ypos="head") + her "*Mmmm*{w=0.4} Those boys sure are doing well..." ("soft", "narrow", "base", "R") #Thrill big text + her "I've never...{w=0.3} *Hnngh*{w=0.5} experienced such a...{w=0.5} such a...{w=0.6} {b}thrill{/b} before!" ("base", "narrow", "base", "up") + gen "(Time to get some of my own liquid luck!)" ("grin", xpos="far_left", ypos="head") + hide hermione_main + show screen blktone + with d5 + pause .2 + + ">You keep touching Hermione, moving your hand further and further underneath her skirt." + ">And as you begin rubbing her vagina with increased pressure you feel a bit of a wet spot forming across her panties." + hide screen blktone + with d5 + pause .2 + + her "Oh! That's naughty!" ("soft", "narrow", "base", "up", cheeks="blush", trans=d3) + + pause 1.0 + call play_sound("kick") + with hpunch + pause 1.0 + + her "*Ahh*...{w=0.3} One of the Slytherin beaters just went head on and smashed their elbow into an opposing player..." ("grin", "narrow", "base", "L", cheeks="blush") + hide hermione_main + show screen blktone + with d5 + pause .2 + + ">Noticing Hermione's breathing becoming more and more erratic, you pick up the pace, moving your middle finger back and forth across the underside of her wet panties." + hide screen blktone + with d5 + pause .2 + + her "And we all know...{w=0.3} *Ahh*{w=0.3} No excessive use of elbows...{w=0.3} *Ahh*{w=0.3} Permitted..." ("open", "narrow", "base", "R", cheeks="blush", trans=d3) + her "But it seems to have done the trick!" ("base", "closed", "base", "mid", cheeks="blush") + her "The Slytherin chasers are...{w=0.3} *Ahh*...{w=0.5} Edging ever closer... to the goal posts!" ("grin", "narrow", "base", "up", cheeks="blush") + + call her_chibi_scene("grope_on_podium_close") + hide hermione_main + show screen blktone + with d5 + pause .2 + + ">As the quaffle is thrown towards one of the hoops, you give Hermione one last rub across her panties, bringing her over the edge." + hide screen blktone + $ renpy.sound.play("sounds/crowd_applause.ogg") + call quidditch_stands(crowd_react=["emo8", "emo7", "emo8"]) + with d3 + + her "{size=+8}Goooaaal!!!{/size}" ("scream", "narrow", "angry", "up", cheeks="blush", trans=hpunch) + hide hermione_main + with d3 + pause 0.5 + + call cum_block + call her_chibi_scene("grope_on_podium_cum") + pause 0.7 + + show screen blktone + with d5 + ">Hermione's legs tremble as her knees buckle, the words of her orgasm drowned out by the cheers of the crowd." + hide screen blktone + with d5 + call ctc + + # Hermione (Tonks) falls to her knees + $ hermione_chibi.zorder = 3 + $ genie_chibi.zorder = 2 + hide hermione_main + call her_chibi("kneel_pant", 250, 410) + call gen_chibi("stand", 170, 400, flip=True) + with d5 + pause .8 + + ">As Hermione collapses to the ground, you give her a last quick look before swiftly heading back to your seat." + + hide screen blktone + call gen_chibi("stand", 20, 365, flip=True) + call quidditch_stands(crowd_react=[None, None, None]) + with fade + pause .6 + + show screen blktone + with d5 + ">With her legs still shaking slightly, she tries fruitlessly to stand up and compose herself." + hide screen blktone + with d5 + + her "*Ahh*...{w=0.3} *Ahh*...{w=0.5} Sir...{w=0.6} that was...{w=0.6} *Ahh*..." ("open_tongue", "narrow", "worried", "up", cheeks="blush", ypos="head", flip=False) + + # Start prediction + $ renpy.start_predict("images/CG/cho_quidditch/*.*") + + gen "{size=-4}Now, where were we?{/size}" ("grin", xpos="far_left", ypos="head") + sna "{size=-4}Another goal for Slytherin... Although you might've missed it...{/size}" ("snape_37") #Small text + ">You smirk and look back at Hermione who's still on the floor trying to catch her breath." + sna "You can wipe that smile off your face now..." ("snape_01") + sna "Whatever your plan is I doubt you'll succeed..." ("snape_03") #smirk + sna "Another couple of goals and you won't win even if Miss Chang manages to catch the snitch." ("snape_45") + sna "Ravenclaw has no chance, We've got this game in the bag." ("snape_01") + gen "You say that..." ("grin", xpos="far_left", ypos="head") + + call nar(">Cho, now with her eyes fixed behind one of the goalposts -- seemingly having spotted the snitch -- gives you a quick glance and a smile as she flies up to Crabbe and Goyle.") + + # Cho CG + $ camera.set_imagepath(None) + $ camera.set_image("cho_cg quidditch pose1 open") + $ camera.set_overlay(None) + $ camera.set(zoom=1.0, pos=(1300, 300), initialize=True) + show screen animatedCG + with fade + + $ renpy.choice_for_skipping() + + pause 0.2 + $ camera.set(zoom=0.5, pos=(0, 300), t=3.5) + cho "Hey boys, check this out..." + $ camera.set_image("cho_cg quidditch pose1 base") + cra "What do you want slut?" + $ camera.set(rotate=-15, zoom=0.65, pos=(-100, -120), t=3.0, pause=True) + $ camera.set_image("cho_cg quidditch pose2 smirk", trans=d5) + call nar(">Cho spins around, flaunts her butt and gives them a quick wink.") + $ camera.set(rotate=0, zoom=0.3, pos=(0, 0), t=2.0, pause=True) + + call ctc + + cra "She's showing us her ass! That luck potion Snape gave us really is working!" + + if cc_pr_manipulate_boys.is_event_complete(2, 4): + goy "Looks like this little Ravenclaw slut has come back for more, Crabbe." + cra "Of course she has Goyle, they've got nothing but wimps in that house of hers." + cho "Oh yes, let me see those muscly arms of yours..." + + call slap_her + $ camera.set_image("cho_cg quidditch pose2 slap_left") + + goy "Shut up bitch." + cho "*Mmm*..." + cra "What the hell... Is she enjoying it?!" + + call slap_her + $ camera.set_image("cho_cg quidditch pose2 slap_right") + + cho "Oh, thank you, please spank me more." + + call nar(">Cho tightens her butt cheeks and flutters her eyelashes in a way that -- to anyone except Crabbe and Goyle -- would be an obvious distraction tactic.") + else: + goy "Or maybe this little Ravenclaw slut has finally come to her senses, Crabbe." + goy "No surprise there... Those Ravenclaw cucks got nothing even close to our sheer strength!" #have is correct grammar here but Crabbe and Goyle are dumb shits so + + $ camera.set_image("cho_cg quidditch pose2 open") + call nar(">Cho tightens her butt cheeks and flutters her eyelashes in a way that -- to anyone except Crabbe and Goyle -- would be an obvious distraction tactic.") + + $ camera.set_image("cho_cg quidditch pose2 smirk") + play sound "sounds/crowd_cheer.ogg" + + her "And there's a goal for Ravenclaw, ladies and gentlemen!" + her "Look at those cuties go!{w=0.5} Those clothes must be completely stuck to their skin after that heavy downpour!" + + call ctc + + $ camera.set_image("cho_cg quidditch pose1 base", trans=d5) + + call nar(">Malfoy suddenly turns around surprised that a goal was let in, and then angrily flies up to Crabbe and Goyle.") + malf "What the hell are you guys doing?{w=0.4} Have those bludgers been hitting you too hard?" + malf "You're supposed to be blocking the goal until that Ravenclaw girl spots the snitch!" + $ camera.set_image("cho_cg quidditch pose1 run") + cra "Well, about that..." + malf "How dare you speak over me, I'm not done with you!" + cra "But Draco--" + malf "What?!?" + cra "She's going after the Snitch!" + + call nar(">Malfoy spins his head around. Finally noticing that Cho's currently chasing the snitch in the distance, he quickly darts after her.") + malf "You fucking idiots!" + + + # End of Cho CG + + call her_chibi("stand", 300, 400, flip=True) + hide screen animatedCG + with fade + + # Stop Prediction + $ renpy.stop_predict("images/CG/cho_quidditch/*.*") + + her "Oh... it looks like things are heating up!{w=0.5} Malfoy has finally realised Chang is going for the Snitch..." ("open", "base", "angry", "L", flip=True, xpos="290", ypos="base", trans=d3) + + call play_sound("giggle") + her "*giggles* Look at that girl fly! I didn't think you could grip a broom so tightly... maybe I could learn a thing or two from her." ("grin", "base", "angry", "L") + sna "I see we've been playing different games..." ("snape_37") + gen "Quite..." ("grin", xpos="far_left", ypos="head") + her "Chang, now only inches away, can almost taste that ball..." ("grin", "base", "angry", "up") + her "Malfoy on his superior broom edging ever closer..." ("open", "base", "angry", "L") + sna "Well, congratulations... You've got me beat..." ("snape_37") + sna "Sure as hell is a better view than last season..." ("snape_20") + + play bg_sounds "sounds/crowd.ogg" fadein 1 fadeout 1 + $ renpy.sound.play("sounds/crowd_applause.ogg") + call quidditch_stands(crowd_react=["emo8", "emo7", "emo7"]) + with d3 + + her "And she's caught it!{w=0.5} Ravenclaw wins and makes it to the finals against Gryffindor!" ("smile", "base", "angry", "L") + sna "I was looking forward to seeing that cup in my office again this year... Oh well..." ("snape_41") + her "And what a well deserved victory as well!" ("soft", "narrow", "base", "mid") + gen "You put the cup in your office?" ("base", xpos="far_left", ypos="head") + + # Fade to black + call hide_characters + show screen blkfade + with d5 + pause .8 + + call her_chibi("hide") # Hermione is already gone. + call gen_chibi("stand_alt", 300, 365, flip=False) + call sna_chibi("stand", 215, 360, flip=True) + + call quidditch_stands(crowd=[], crowd_react=[None, None, None]) + + stop bg_sounds fadeout 4 + stop music fadeout 2 + + centered "{size=+7}{color=#cbcbcb}After the game...{/color}{/size}" + + hide screen blkfade + with d5 + pause .5 + + play bg_sounds "sounds/wind_long_loop.ogg" fadein 2 fadeout 2 + + sna "Well, that was good..." ("snape_03") + sna "And to my dismay the commentary was... acceptable." ("snape_09") + gen "What?!" ("base", xpos="far_left", ypos="head") + gen "I thought that you didn't like miss Granger..." ("base", xpos="far_left", ypos="head") + gen "Where's that Slytherin pride you're so adamant about?" ("grin", xpos="far_left", ypos="head") + sna "*Hmph*... I'm sure you can find your own way back to your office..." ("snape_05") + gen "What about our bet?" ("base", xpos="far_left", ypos="head") + sna "The bet?" ("snape_38") + gen "I beat you!{w=0.3} Slytherin is out of the competition!" ("base", xpos="far_left", ypos="head") + gen "Show me the money!" ("grin", xpos="far_left", ypos="head") + sna "..." ("snape_23") + sna "The Bet was for Slytherin or Ravenclaw {i}winning the cup{/i}." ("snape_02") + sna "You'll get your money if Ravenclaw beats Gryffindor in the finals." ("snape_45") + gen "Balls..." ("angry", xpos="far_left", ypos="head") + sna "Who would've foreseen it would be in my best interest for Gryffindor to win the cup..." ("snape_47") + + # Fade to black + show screen blkfade + with d9 + pause .5 + + stop bg_sounds fadeout 4 + + call play_sound("grass") + ">You make your way back to your office, wondering how the real old man could stand all these stairs..." + ">No wonder he always stayed in there..." + + # Reset + $ tonks.equip(ton_outfit_last) # Equip player outfit. + $ hermione.equip(her_outfit_last) # Equip player outfit. + $ cho.equip(cho_outfit_last) # Equip player outfit. + + $ snape_chibi.zorder = 3 + $ tonks_chibi.zorder = 3 + $ hermione_chibi.zorder = 3 + $ genie_chibi.zorder = 3 + + jump slytherin_match_return + + +label slytherin_match_return: + + # The office, evening after the game + $ game.daytime = False + call update_interface_color + + call play_music("stop") + #show screen blkfade + call room("main_room") + call gen_chibi("hide") + + $ cho_outfit_last.save() + $ her_outfit_last.save() + $ ton_outfit_last.save() + $ ast_outfit_last.save() + + $ cho.equip(cho_outfit_quidditch) + $ hermione.equip(her_outfit_default) + $ tonks.equip(ton_outfit_default) + $ astoria.equip(ast_outfit_default) + + $ tonks.strip("all") + + hide screen blkfade + with d9 + pause 1.0 + + call play_sound("door") + call gen_chibi("stand", "door", "base", flip=False) + with d3 + pause .3 + + call bld + gen "(What a day...)" ("base", xpos="far_left", ypos="head") + gen "(Although all things considered...)" ("base", xpos="far_left", ypos="head") + gen "(I'd say it went down rather well!)" ("grin", xpos="far_left", ypos="head") + + call gen_walk("mid", "base") + + call play_music("night") + call gen_chibi("sit_behind_desk") + with fade + pause .8 + + call bld + gen "(Even though I didn't get any of the gold Snape promised me...)" ("base", xpos="far_left", ypos="head") + gen "(Oral contracts are the worst...)" ("base", xpos="far_left", ypos="head") + gen "(At least I got to drink some of his wine for a change...)" ("base", xpos="far_left", ypos="head") + gen "(And getting to feel up Miss Granger's juicy ass is always worth the price of admission!)" ("grin", xpos="far_left", ypos="head") + call bld("hide") + + # Hermione (Tonks) walks in + call play_sound("door") + call her_chibi("stand", "door", "base", flip=False) + with d3 + pause .8 + + call bld + gen "(Speak of the devil...)" ("base", xpos="far_left", ypos="head") + + call her_walk("desk", "base") + + call play_music("hermione") + her "That{w=0.5} was{w=0.8} amazing!" ("smile", "happy", "base", "mid", xpos="mid", ypos="base", flip=False, trans=d3) + gen "What was?{w=0.5} Getting hit in the face?" ("base", xpos="far_left", ypos="head") + her "I've never experienced such a thrill before..." ("base", "narrow", "base", "L") + her "Trying to keep it together when you groped me down there..." ("soft", "narrow", "worried", "down") + her "While everyone was watching the game..." ("base", "narrow", "base", "L") + gen "Well, I'm glad you enjoyed it!" ("grin", xpos="far_left", ypos="head") + her "*Hmm*...{w=0.5} I think someone deserves a reward..." ("soft", "narrow", "base", "mid") #Horny + pause .2 + + # Hermione (Tonks) starts stripping + call play_sound("equip") + $ hermione.strip("robe", "accessory", "top") + with d5 + pause .8 + + gen "Miss Granger?" ("angry", xpos="far_left", ypos="head") + her "Be quiet you, just enjoy it!" ("base", "narrow", "base", "mid") + gen "!!!" ("grin", xpos="far_left", ypos="head") + + call play_sound("equip") + $ hermione.strip("bottom") + with d5 + pause .8 + + her "*Hmm*... You like these cute panties?" ("soft", "narrow", "base", "down") + + call play_sound("giggle") + her "*Hi-Hi-Hi*" ("grin", "happyCl", "base", "mid") + gen "..." ("angry", xpos="far_left", ypos="head") + her "Or these little puppies..." ("base", "narrow", "angry", "mid") + + call play_sound("equip") + $ hermione.strip("bra") + with d5 + pause .8 + + with hpunch + call nar(">Hermione playfully shakes her breasts at you.") + her "Much better without the bra, don't you think?" ("soft", "narrow", "base", "mid") + gen "I..." ("base", xpos="far_left", ypos="head") + her "Don't you just love this body?" ("base", "narrow", "base", "down") + gen "I do!" ("angry", xpos="far_left", ypos="head") + her "I knew you did, I could feel your eyes in the back of my neck when I was up there..." ("open", "narrow", "angry", "mid") + gen "Who wouldn't, with a body like that..." ("grin", xpos="far_left", ypos="head") + her "*Mmmm*... Damn right..." ("angry", "narrow", "angry", "down") + her "And since you love this butt so much..." ("base", "narrow", "base", "down") + + pause .5 + call her_chibi(flip=True) + her "" (flip=True, trans=d3) + pause .8 + + call play_sound("equip") + $ hermione.strip("panties") + with d5 + pause .8 + + her "..." ("base", "narrow", "base", "mid") + her "What do you think?" ("soft", "narrow", "base", "mid") + her "Do you like your student's lusciously-shaped arse, Professor?" ("soft", "closed", "base", "mid") + gen "Your...{w=0.4} arse?" ("base", xpos="far_left", ypos="head") + gen "I mean--{w=0.3} Of course!{w=0.5} how could I not!" ("grin", xpos="far_left", ypos="head") + gen "Your arse looks great, Miss--" ("grin", xpos="far_left", ypos="head") + + # Cho enters + call play_music("stop") + call hide_characters + hide screen bld1 + with d3 + + call play_sound("door") + call cho_chibi("stand", "door", "base") + with d3 + pause .8 + + call bld + gen "Chang?" ("angry", xpos="far_left", ypos="head") + cho "I did it! We won the--" ("smile", "closed", "base", "mid", xpos="base", ypos="base", flip=False, trans=d3) + her "" ("upset", "base", "base", "L", ypos="base", flip=True, trans=d3) + cho "!!!" ("annoyed", "wide", "base", "L", trans=hpunch) #Shocked face + + call play_music("hermione") + her "Oh, hello there, Miss Chang..." ("grin", "narrow", "angry", "L") + her "Like what you see?" ("soft", "narrow", "base", "L") + cho "I..." ("angry", "wide", "base", "L", cheeks="blush") + + call play_sound("giggle") + her "*Hi-Hi-Hi*" ("base", "happyCl", "base", "mid") + her "What's wrong sweetie?" ("soft", "narrow", "base", "L") + her "Want to find out if Gryffindors taste the same as Ravenclaws?" ("smile", "narrow", "base", "L") + cho "..." ("angry", "base", "worried", "down", cheeks="heavy_blush") #Blushes + cho "*Hmph*!" ("annoyed", "narrow", "angry", "L", cheeks="blush") + + # Cho walks out and slams the door + call play_music("stop") + call hide_characters + hide screen bld1 + with d3 + pause .2 + + call cho_chibi("stand", "door", "base", flip=True) + with d3 + pause .5 + + call play_sound("kick") + call cho_chibi("hide") + with hpunch + pause .5 + + call her_chibi("stand", "desk", "base", flip=False) + with d3 + pause .5 + + her "Suit yourself..." ("open", "closed", "base", "mid", xpos="mid", ypos="base", flip=False) #Shruggs it off + gen "What the hell are you doing, Granger?" ("base", xpos="far_left", ypos="head") + her "Granger?" ("soft", "wink", "worried", "mid") #confused + + call play_music("tonks") + her "What are you talking about, genie?" ("base", "narrow", "base", "mid") + pause .8 + + # Tonks turns back into herself + #TODO Should the naked version only happen if you've done Imperio Training maybe? + call play_sound("magic") + call hide_characters + call her_chibi("hide") + call ton_chibi("stand", "desk", "base", flip=False) + ton "" ("base", "base", "base", "mid", xpos="mid", ypos="base", flip=False) + with morph + call ctc + + gen "Whoa!" ("angry", xpos="far_left", ypos="head") + ton "Oh, silly me... I'm still naked..." ("upset", "base", "base", "down") + pause .5 + + call play_sound("equip") + hide tonks_main + $ tonks.wear("all") + ton "" ("horny", "base", "base", "mid", trans=d5) + pause .8 + + if tonks_morph_known: #This wont be used if we make it so you learn it first time here and hangouts unlock after this + gen "It all makes sense now." ("base", xpos="far_left", ypos="head") + ton "Hello sweet cheeks!" ("base", "base", "base", "mid") + ton "Thought I was about to lose focus there for a second when you started going at it!" ("open", "base", "base", "R") + gen "You should've told me it was you..." ("base", xpos="far_left", ypos="head") + ton "I tried to!" ("upset", "base", "worried", "mid") + ton "You pretty much pushed me onto the podium when I got back..." ("open", "base", "worried", "mid") + gen "Oh, yeah..." ("base", xpos="far_left", ypos="head") + gen "So this is the ability you were speaking of?" ("base", xpos="far_left", ypos="head") + ton "Impressive, isn't it?" ("horny", "base", "base", "mid") + + else: + $ tonks_morph_known = True + gen "You were Miss Granger the whole time?" ("angry", xpos="far_left", ypos="head") + gen "Plot twist of the fucking century." ("base", xpos="far_left", ypos="head") + ton "Of course not, don't be silly..." ("open", "closed", "base", "mid") + ton "I'm a metamorphmagus..." ("soft", "base", "raised", "mid") + gen "A meta what?" ("base", xpos="far_left", ypos="head") + gen "(I thought I was the only one allowed to be meta in this game...)" ("base", xpos="far_left", ypos="head") + + ton "I can change my appearance to whatever I want." ("open", "base", "base", "R") + gen "Really?" ("base", xpos="far_left", ypos="head") + ton "Of course!" ("base", "wide", "annoyed", "mid") + + # Tonks turns into cho + call play_sound("magic") + call play_music("cho") + call hide_characters + call ton_chibi("hide") + call cho_chibi("stand", "desk", "base", flip=False) + cho "" ("base", "base", "base", "mid", xpos="mid", ypos="base", flip=False, trans=morph) + #with morph + pause .5 + + cho "Hi professor!" ("smile", "base", "base", "mid") + cho "Want to give this snatch a little lick?" ("soft", "narrow", "base", "mid") + gen "!!!" ("angry", xpos="far_left", ypos="head") + + if astoria_unlocked: + # Tonks turns into Astoria + call play_sound("magic") + call play_music("astoria") + call hide_characters + call cho_chibi("hide") + call ast_chibi("stand", "desk", "base", flip=False) + ast "How about giving this little butt a spanking?" ("smile", "base", "base", "mid", xpos="mid", ypos="base", flip=False, trans=morph) + + call play_sound("magic") + call play_music("susan") + call hide_characters + call cho_chibi("hide") + call ast_chibi("hide") + call sus_chibi("stand", "desk", "base", flip=False) + sus "You want to s-spank me? W-Why would you want to sp-spank me, professor? Did I do something wrong?" ("upset", "base", "worried", "mid", xpos="mid", ypos="base", flip=False, trans=morph) + + sus "Are you going to punish me for flaunting these massive pair of--" ("open", "base", "worried", "down") + sus "Wow... They really are big aren't they... And they feel so soft..." ("open", "wide", "base", "down") + sus "(I'll give you two the attention you deserve tonight...)" ("grin", "base", "angry", "down") + gen "Tonks?" ("base", xpos="far_left", ypos="head") + sus "Oh right...{w=0.3} Where was I?" ("open", "narrow", "worried", "mid") + + elif susan_unlocked: + # Tonks Turns into Susan + call play_sound("magic") + call play_music("susan") + call hide_characters + call cho_chibi("hide") + call ast_chibi("hide") + call sus_chibi("stand", "desk", "base", flip=False) + sus "Did I do something wrong, Sir?" ("upset", "base", "worried", "mid", xpos="mid", ypos="base", flip=False, trans=morph) + + sus "Are you going to punish me for having these massive pair of tits--" ("open", "base", "worried", "down") + sus "Wow. They really are big... And they feel so soft..." ("open", "wide", "base", "down") + sus "(I think I'm gonna play with them later for a little...)" ("grin", "base", "angry", "down") + gen "Tonks?" ("base", xpos="far_left", ypos="head") + sus "Oh right... Where was I?" ("open", "narrow", "worried", "mid") + + if luna_unlocked: + #Tonks turns into Luna + gen "Now do Luna!" ("grin", xpos="far_left", ypos="head") + + call play_sound("magic") + call play_music("luna") + call hide_characters + call cho_chibi("hide") + call ast_chibi("hide") + call sus_chibi("hide") + call lun_chibi("stand", "desk", "base", flip=False) + lun "Professor Dumbledore, watch out for that jigglypuff on your shoulder..." ("soft", "wink", "base", "mid", xpos="mid", ypos="base", flip=False, trans=morph) + + lun "Let me lick it off for you!" ("open_wide_tongue", "wink", "base", "mid") #lmao nice + call play_sound("giggle") + lun "*Hi-Hi-Hi*" ("smile", "happyCl", "base", "mid") + + # Tonks turns into snape + gen "Nice, now do--" ("grin", xpos="far_left", ypos="head") + + call play_sound("magic") + call play_music("snape") + call hide_characters + call cho_chibi("hide") + call ast_chibi("hide") + call sus_chibi("hide") + call lun_chibi("hide") + call sna_chibi("stand",410,177+250, flip=False) + sna "Want some of this, Genie?" ("snape_clown", xpos="320", ypos="base", flip=False, trans=morph) + + call play_sound("gasp") + with hpunch + gen "*Aaaah*!" ("angry", xpos="far_left", ypos="head") + sna "Mind if I...{w=0.4} Slithered in?" ("snape_clown") + gen "..." ("angry", xpos="far_left", ypos="head") + call play_sound("giggle") + sna "*Hi-Hi-Hi*" ("snape_clown") + + # Tonks turns into herself + call play_sound("magic") + call play_music("tonks") + call hide_characters + call sna_chibi("hide") + call ton_chibi("stand", "desk", "base", flip=False) + ton "" ("base", "base", "base", "mid", xpos="mid", ypos="base", flip=False) + with morph + call ctc + + ton "I'm especially proud of that last one..." ("grin", "happyCl", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "So...{w=0.2} Can all wizards do this?" ("base", xpos="far_left", ypos="head") + ton "Nah, I was born with it." ("horny", "base", "base", "R") + gen "This world, I swear there's something new every day..." ("base", xpos="far_left", ypos="head") + gen "What next?{w=0.2} Can you time travel?" ("base", xpos="far_left", ypos="head") + ton "I wish! The ministry won't let me do it..." ("open", "base", "annoyed", "mid") + ton "If I could I'd just go back to kill baby \"you know who\"..." ("upset", "closed", "angry", "mid") + gen "(Why is that always the first thing people consider when talking about time travel...)" ("base", xpos="far_left", ypos="head") + gen "(So predictable...)" ("base", xpos="far_left", ypos="head") + + gen "So... when Miss Granger got hit by that bludger..." ("base", xpos="far_left", ypos="head") + ton "I took her to the hospital wing..." ("open", "base", "base", "mid") + ton "And I replaced her, so she wouldn't get picked on for leaving." ("annoyed", "base", "base", "down") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "And she--" ("base", xpos="far_left", ypos="head") + ton "She's fine..." ("open", "base", "raised", "R") + #TODO If we had the hospital wing drawn she could offer to take you there at this line + ton "Your face is cute when you worry, you know that?" ("base", "narrow", "worried", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + gen "So, won't people find out you replaced her?" ("base", xpos="far_left", ypos="head") + ton "I wouldn't worry about that." ("base", "base", "base", "R") + ton "I can lie if I want! Who would they believe, a teacher or a bunch of delinquents?" ("silly", "happyCl", "base", "mid") + gen "Good point..." ("base", xpos="far_left", ypos="head") + ton "Anyway..." ("open", "base", "base", "R") + ton "I doubt Miss Granger would tell anyone, unless she has a really good reason to do so..." ("base", "base", "angry", "mid") + ton "*Urgh*... My head hurts." ("upset", "base", "worried", "up") + ton "I'm gonna go sleep off whatever this is..." ("open", "base", "worried", "mid") + ton "Too-da-loo!" ("base", "happyCl", "base", "mid") + + call ton_walk(action="leave") + stop music fadeout 11.0 + + call bld + gen "Damn that witch is impressive!" ("base", xpos="far_left", ypos="head") + gen "She reminds me of one of those ancient, semen-stealing succubi..." ("base", xpos="far_left", ypos="head") + gen "Corrupting... enticing..." ("angry", xpos="far_left", ypos="head") + gen "I'd let her suck my life force any day." ("grin", xpos="far_left", ypos="head") + + $ tonks_busy = True + $ snape_busy = True + $ hermione_busy = True + $ cho_busy = True + + $ cho_mood += 9 + $ cho_tier = 3 + $ cho_favors_unlocked = False + $ cho_requests_unlocked = False + $ cho_quid.lock_training = False + $ cho_quid.lock_practice = True + $ cho_quid.lock_tactic = False + $ slytherin_match = "completed" # Prevents this event from repeating. + call update_cho_favors + + # Reset + $ tonks.equip(ton_outfit_last) + $ hermione.equip(her_outfit_last) + $ cho.equip(cho_outfit_last) + $ astoria.equip(ast_outfit_last) + + call music_block + jump main_room_menu diff --git a/game/scripts/characters/cho/events/quidditch/slytherin_practice.rpy b/game/scripts/characters/cho/events/quidditch/slytherin_practice.rpy new file mode 100644 index 00000000..9cac4e32 --- /dev/null +++ b/game/scripts/characters/cho/events/quidditch/slytherin_practice.rpy @@ -0,0 +1,283 @@ +# cc_st_intro automatically plays when starting slytherin tier + +# cc_st_start unlocks once you've convinced Cho to use tactics against slytherin (Will need some work as I don't know the code) +# cc_st_return_E1 Is the return event as Slytherin wont practice, practice locks after this event as Slytherins doesn't show up +#To play practice again you need to talk to Tonks to convince them to play again cc_st_tonks_E1 (cc_st_snape_E1 is optional until you talk to tonks) +# Hermione shows up next day after this event saying that she wont play cc_st_hermione_E1 once she leaves it unlocks the ability to blackmail her cc_st_hermione_blackmail + +# cc_st_return_E2 Is the return event when Cho has practiced against Slytherins. Once this event finished one of two requirements to start the main match is completed (other being blackmail Hermione) +#cc_st_hermione_blackmail is one of two requirements to play the main match (other being cc_st_return_E2) + + +### Cho Slytherin Training ### +label cc_st_start: + + cho "" ("base", "base", "base", "mid", xpos="right", ypos="base", trans=fade) + + # Intro 1 + if not cho_quid.slytherin_prepared: + gen "Alright, we need to try out those new tactics!" ("base", xpos="far_left", ypos="head") + gen "There is a lot at stake here! We can't afford to lose even a single game!" ("angry", xpos="far_left", ypos="head") + gen "We can't show any weakness to those Slytherins!" ("angry", xpos="far_left", ypos="head") + cho "I'm glad my success is that important to you, Sir." ("smile", "happyCl", "base", "mid", cheeks="blush") + + show screen blktone + with d3 + gen "(I can't lose this much gold to Snape. I'll show that bastard!)" ("base", xpos="far_left", ypos="head") + hide screen blktone + with d3 + + gen "Return to my office after the game." ("grin", xpos="far_left", ypos="head") + cho "Yes, Sir." ("base", "narrow", "base", "mid") + + # Intro 2 (For successful match against Slytherins) (playing is one of two needed requirements for match to unlock alongside with Blackmailing Hermione) + else: + gen "Let's try this again, shall we?" ("base", xpos="far_left", ypos="head") + gen "I spoke with your teacher, she'll get those nitwits to play again..." ("base", xpos="far_left", ypos="head") + cho "Professor Tonks, was it?" ("smile", "base", "base", "mid") + gen "Yep." ("base", xpos="far_left", ypos="head") + cho "I'm really glad we have her as a teacher." ("base", "happyCl", "base", "mid", cheeks="blush") + gen "Make sure to thank her for it... some day." ("base", xpos="far_left", ypos="head") + cho "I will, [cho_genie_name]." ("smile", "base", "base", "mid") + cho "Off I go then..." ("base", "base", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + $ hermione_busy = True + + $ cho_quid.in_progress = True + + call gen_chibi("sit_behind_desk") + with fade + + jump end_cho_event + + +label cc_st_return: + if not cho_quid.slytherin_prepared: + # Cho goes unprepared and fails. + + stop music fadeout 5.0 + + call play_sound("snore") + gen "...*snore*{w=1.0}{nw}" ("base", xpos="far_left", ypos="head") + pause .8 + call play_sound("snore_loud") + gen "...{cps=10}*snooore*{/cps}{w=1.0}{nw}" ("base", xpos="far_left", ypos="head") + pause 1.2 + call play_sound("snore") + gen "...*sno*-{w=0.5}{nw}" ("base", xpos="far_left", ypos="head") # Interrupts + + call play_sound("knocking") + "*Knock-knock-knock*!" + pause .2 + + gen "Wha--?" ("base", xpos="far_left", ypos="head") + + call cho_walk(action="enter", xpos="desk", ypos="base") + + # Cho is furious. + cho "" ("annoyed", "narrow", "angry", "mid", xpos="mid",ypos="base", trans=d3) + gen "..." ("base", xpos="far_left", ypos="head") + gen "What are you doing in here? You're not supposed to be back yet..." ("angry", xpos="far_left", ypos="head") + cho "I'm surprised you could tell..." ("soft", "wide", "base", "mid") + gen "You just woke me up in the middle of my nap!" ("angry", xpos="far_left", ypos="head") + cho "Oh no, Sir. I'm terribly sorry!" ("soft", "base", "raised", "R") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Are you mocking me for taking a nap?\"": + call play_music("cho") + + cho "No, sir." ("soft", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(Damn it, that naivety of hers is turning me on!)" ("angry", xpos="far_left", ypos="head") + + "\"Brats like you need to be punished!\"": + $ cho_mood += 2 + call play_music("cho") + + cho "Punished? For what?" ("soft", "narrow", "angry", "mid") # angry + gen "For being a pain in my ass!" ("angry", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "base", "mid") + gen "And for waking me up in the middle of my nap!" ("angry", xpos="far_left", ypos="head") + + gen "Why aren't you on that Quidditch ditch right now?" ("base", xpos="far_left", ypos="head") + cho "It's a pitch, Sir." ("soft", "narrow", "raised", "mid") + gen "I thought we were going to prepare for the next match, or are we already finished with that?" ("base", xpos="far_left", ypos="head") + + show screen blktone + with d3 + gen "(Please say yes! I want to do the naughty stuff already!)" ("angry", xpos="far_left", ypos="head") + hide screen blktone + with d3 + + cho "Yes, we are..." ("open", "closed", "base", "mid") + gen "(Yes!)" ("grin", xpos="far_left", ypos="head") + cho "For today, that is..." ("annoyed", "narrow", "base", "R") + gen "(Balls...)" ("base", xpos="far_left", ypos="head") + cho "We couldn't play today because the entire Slytherin team didn't even bother to show up!" ("annoyed", "narrow", "base", "mid") + cho "Spineless cowards..." ("annoyed", "narrow", "angry", "downR") + cho "They have no interest in training against us!" ("open", "narrow", "angry", "mid") + cho "Because why should they... They'll win anyway!" ("open", "narrow", "angry", "R") + cho "They assured me that they would be there today..." ("annoyed", "narrow", "angry", "downR") + cho "Such a pathetic bunch of apes!" ("annoyed", "narrow", "angry", "R") + gen "A troop." ("base", xpos="far_left", ypos="head") + cho "What?" ("soft", "narrow", "raised", "mid") + gen "It's called a troop of apes." ("base", xpos="far_left", ypos="head") + cho "Whatever..." ("annoyed", "narrow", "angry", "R") + cho "If I see their captain tomorrow, I'm gonna knee him in the groin!" ("soft", "narrow", "angry", "mid") + gen "Yikes!" ("angry", xpos="far_left", ypos="head") + gen "I'm afraid I can't have you do that..." ("base", xpos="far_left", ypos="head") + cho "Why not? They deserve it!" ("annoyed", "base", "angry", "mid") + gen "No guy deserves that..." ("base", xpos="far_left", ypos="head") + gen "I'd rather deal with it myself, if you don't mind." ("base", xpos="far_left", ypos="head") + cho "Fine..." ("annoyed", "narrow", "angry", "downR") + cho "But you better do something, quickly! Get those idiots to play!" ("soft", "narrow", "angry", "mid") + cho "We can't possibly win if we don't know their tactics." ("soft", "base", "base", "R") + cho "Or know if our tactics work against them, for that matter..." ("annoyed", "narrow", "base", "mid") + gen "I'm on it..." ("base", xpos="far_left", ypos="head") + cho "And that's not all... I heard some people saying that Hermione won't commentate anymore!" ("angry", "narrow", "angry", "mid", emote="angry") + gen "What?" ("angry", xpos="far_left", ypos="head") + cho "I know, you better do something about it!" ("open", "narrow", "angry", "mid") + gen "*Ugh*... Do I have to?" ("angry", xpos="far_left", ypos="head") + cho "Yes!" ("angry", "base", "angry", "mid") + cho "Get that spineless mop's ass back behind that podium!" ("soft", "narrow", "base", "mid") + gen "{size=-6}At least let me finish the first quest -- before taking on another one...{/size}" ("base", xpos="far_left", ypos="head") + cho "She agreed to do this! We need an announcer!" ("annoyed", "narrow", "base", "R") + gen "I'll talk to her..." ("base", xpos="far_left", ypos="head") + cho "Then make it quick!" ("annoyed", "narrow", "base", "mid") + cho "Good night, Sir." ("soft", "narrow", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + gen "That girl sure is a piece of work..." ("base", xpos="far_left", ypos="head") + + $ cho.equip(cho_outfit_last) # Equip last worn clothes + + $ hermione_busy = True + $ snape_busy = True #Set to busy since their hangouts are triggered after Hermione event next morning. + $ tonks_busy = True #Set to busy since their hangouts are triggered after Hermione event next morning. + $ cho_mood += 6 + $ cho_quid.lock_practice = True + $ cho_quid.slytherin_failed = True + + jump end_cho_event + else: + # Cho has been prepared and trained. + + call cho_walk(action="enter", xpos="desk", ypos="base") + + # Cho is furious. + cho "" ("annoyed", "narrow", "angry", "mid", xpos="mid",ypos="base", trans=d3) + + gen "Welcome back..." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "angry", "R") #Annoyed + gen "Don't tell me they didn't show up again... Tonks assured me she'd get them to--" ("base", xpos="far_left", ypos="head") + cho "No they did show up alright." ("open", "narrow", "angry", "mid") + gen "Excellent!" ("grin", xpos="far_left", ypos="head") + gen "Then what about our strategy, do you think it will work during the game?" ("base", xpos="far_left", ypos="head") + cho "I can't believe I flaunted my ass at them... but yes, I believe it will work." ("soft", "closed", "raised", "mid") + cho "Crabbe and Goyle especially should be a great help, turning the game to my favour." ("smile", "narrow", "raised", "R") + cho "So long as they don't give my ass too much of a {i}bludgering{/i}..." ("clench", "base", "raised", "mid") + gen "Just make sure to pick the right moment to distract them and you'll be fine." ("base", xpos="far_left", ypos="head") + gen "Very well then, I guess we're ready to take those snakes on for the main match!" ("base", xpos="far_left", ypos="head") + if not cho_quid.E7_complete: + cho "What about Granger?" ("annoyed", "base", "raised", "mid") + gen "What about her?" ("base", xpos="far_left", ypos="head") + cho "Is she commentating or what? We can't play without a commentator." ("open", "base", "base", "mid") + gen "Oh, that's true... I'll talk to her..." ("base", xpos="far_left", ypos="head") + cho "Good." ("base", "base", "base", "mid") + else: + cho "I suppose..." ("annoyed", "base", "base", "R") + gen "The match looms ever closer... I hope you're ready." ("base", xpos="far_left", ypos="head") + cho "You bet your ass I am!" ("smile", "base", "angry", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + cho "Don't even say it..." ("upset", "base", "angry", "mid") + gen "I... wasn't--" ("base", xpos="far_left", ypos="head") + cho "Sure you weren't..." ("soft", "closed", "angry", "mid") + cho "I'll head off to bed then." ("open", "base", "base", "R") + gen "{size=+6}*MHHMMMM*{/size}" ("angry", xpos="far_left", ypos="head") + + call cho_walk(action="leave") + + gen "*NNNNGH!!!*" ("angry", xpos="far_left", ypos="head") + gen "{b}You'll{/b} be betting your ass on it!" ("grin", xpos="far_left", ypos="head") + cho "{size=-4}I heard that!{/size}" # Cho outside the door + gen "Dammit..." ("base", xpos="far_left", ypos="head") + + $ cho.equip(cho_outfit_last) # Equip last worn clothes + + $ slytherin_match = "ready" + $ cho_quid.slytherin_training = True + $ cho_quid.lock_practice = True + if cho_quid.E7_complete: + $ cho_quid.lock_training = True + + jump end_cho_event + +### Stage 3 ### + +label cc_st_talk: + + cho "" (xpos="right", ypos="base", trans=fade) + + if cho_quid.E6_complete and (not cho_quid.E8_complete or not cho_quid.E7_complete): + if not cho_quid.E8_complete and not cho_quid.E7_complete: + # Haven't done either + cho "Wow, that was quick! I didn't think you'd get it done already!" ("open", "base", "base", "mid") + gen "*Err*... Get what done?" ("base", xpos="far_left", ypos="head") + cho "Get Hermione to commentate and get those pigs flying again!" ("annoyed", "narrow", "base", "mid") + gen "Flying pigs?!" ("base", xpos="far_left", ypos="head") + cho "The Slytherins!" ("angry", "narrow", "base", "mid") + gen "Oh... Right... I forgot about that..." ("base", xpos="far_left", ypos="head") + gen "And how am I supposed to do that?" ("base", xpos="far_left", ypos="head") + cho "How would I know, I'm not a teacher, am I?...{w} Ask one of them." ("annoyed", "base", "base", "mid") + if cho_quid.E9_complete: + gen "Well, I asked Snape..." ("base", xpos="far_left", ypos="head") + cho "And how did that work out for you?" ("open", "narrow", "raised", "mid") + gen "It didn't." ("base", xpos="far_left", ypos="head") + cho "Ask another teacher then..." ("annoyed", "narrow", "base", "mid") + gen "(*Hmm*... Maybe I could ask Tonks for help during one of our hangouts?)" ("base", xpos="far_left", ypos="head") + else: + gen "(I wonder if Snape would help me with this...)" ("base", xpos="far_left", ypos="head") + elif not cho_quid.E8_complete: + # Haven't done Tonks event + cho "Have you gotten those Slytherin pigs to play yet?" ("open", "narrow", "base", "mid") + gen "Not yet, but I'm on it." ("base", xpos="far_left", ypos="head") + cho "Please just hurry up, Sir." ("annoyed", "narrow", "base", "mid") + cho "We need to try out those tactics..." ("annoyed", "narrow", "worried", "R") + gen "Any ideas on how to get them to practice against you?" ("base", xpos="far_left", ypos="head") + cho "How would I know, I'm not a teacher, am I?...{w} Ask one of them." ("open", "narrow", "base", "mid") + if cho_quid.E9_complete: + gen "Well, I asked Snape..." ("base", xpos="far_left", ypos="head") + cho "And how did that work out for you?" ("open", "narrow", "raised", "mid") + gen "It didn't." ("base", xpos="far_left", ypos="head") + cho "Ask another teacher then..." ("annoyed", "narrow", "base", "mid") + gen "(*Hmm*... Maybe I could ask Tonks for help during one of our hangouts?)" ("base", xpos="far_left", ypos="head") + else: + gen "(I wonder if Snape would help me with this...)" ("base", xpos="far_left", ypos="head") + elif not cho_quid.E7_complete: + # Haven't done Hermione event + cho "Will Hermione commentate the match or not?" ("open", "base", "base", "mid") + gen "Probably..." ("base", xpos="far_left", ypos="head") + cho "What do you mean probably?" ("clench", "base", "raised", "mid") + gen "I haven't confronted her about it yet." ("base", xpos="far_left", ypos="head") + cho "Then do it!" ("open", "base", "angry", "mid") + elif cho_quid.E5_complete and not cho_quid.E6_complete: + cho "I'm still a bit worried about those brutes..." ("annoyed", "base", "raised", "down") + cho "You better find a foolproof way of dealing with them." ("soft", "base", "angry", "mid") + elif cc_pf_talk.is_tier_complete() and not cho_quid.lock_tactic: + cho "You really believe that showing off my ass is the best tactic against Slytherin?" ("soft", "base", "base", "R", cheeks="blush") + gen "I'm certain of it..." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "worried", "R", cheeks="blush") #Worried + gen "(Perhaps doing some more favours will improve her confidence.)" ("base", xpos="far_left", ypos="head") + else: + cho "I'm confident that we can win this, [cho_genie_name]." ("smile", "base", "base", "mid") + cho "Slytherin has no blasted chance against us!" ("base", "narrow", "base", "mid") + + cho "" (xpos="base", ypos="base", trans=fade) + + jump cho_training.choices diff --git a/game/scripts/characters/cho/events/quidditch/training.rpy b/game/scripts/characters/cho/events/quidditch/training.rpy new file mode 100644 index 00000000..c873014a --- /dev/null +++ b/game/scripts/characters/cho/events/quidditch/training.rpy @@ -0,0 +1,703 @@ + +### Cho Quidditch Tactics ### + +label cho_training: + + # Automatic-Events + + # Quiz. + if not cho_quiz.complete: + jump cho_quiz + + # Training Intro 1. + # Event fails. Cho will get mad and leaves. + if not cho_quid.E1_complete: + jump cho_quid_E1 + + # Training Intro 2. + if not cho_quid.E2_complete: + jump cho_quid_E2 + + # Setup + + show screen blkfade + call hide_characters + with d5 + + $ cho_outfit_last.save() + $ cho.equip(cho_outfit_quidditch) # Equip quidditch set + + call cho_chibi("stand", "right", "base") + + call gen_chibi("stand", "desk", "base") + + hide screen bld1 + hide screen blkfade + with d5 + pause .8 + + # Menu + label .choices: + + menu: + "-Discuss Quidditch Training-": + if cho_tier == 1: + # Hufflepuff + jump cc_ht_talk + elif cho_tier == 2: + # Slytherin + jump cc_st_talk + elif cho_tier == 3: + # Gryffindor + jump cc_gt_talk + + jump cho_training.choices + + "-Discuss Tactics-" if cc_pf_talk.is_tier_complete() and not cho_quid.lock_tactic: + + if cho_tier == 1: + # Hufflepuff + # Clothes: Skirt, Robes + if not hufflepuff_match == "intro_done": + $ hufflepuff_match = "intro_done" + + gen "I got it!" ("base", xpos="far_left", ypos="head") + cho "Got what?" ("soft", "base", "base", "mid") + gen "I know how to get you that win against those Badgers!" ("base", xpos="far_left", ypos="head") + cho "Really? How?" ("soft", "base", "raised", "mid") + gen "You told me how, yourself." ("base", xpos="far_left", ypos="head") + gen "Panties are the key!" ("base", xpos="far_left", ypos="head") + cho "Panties? What do panties have to do with Quidditch?" ("soft", "wide", "raised", "mid") + gen "Everything, girl!{w} For some they are the meaning of life!" ("base", xpos="far_left", ypos="head") + cho "What are you suggesting exactly?" ("clench", "base", "base", "mid", cheeks="blush") + gen "My plan is that we use Cedric's obsession with panties to distract him during the game." ("base", xpos="far_left", ypos="head") + cho "I don't really see how that would be--" ("annoyed", "base", "base", "downR", cheeks="blush") + gen "You'll have to wear a skirt of course." ("base", xpos="far_left", ypos="head") + cho "A skirt?" ("clench", "wide", "base", "mid", cheeks="heavy_blush") #shocked + gen "Of course!" ("grin", xpos="far_left", ypos="head") + gen "If he's too focused on your panties there's no way he'll catch that snatch!" ("grin", xpos="far_left", ypos="head") + else: + # Repeated intro + gen "So about that tactic..." ("base", xpos="far_left", ypos="head") + if cho_whoring < 3: + # Fail + cho "Got a better plan? One that doesn't involve showing off my panties?" ("annoyed", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + cho "Didn't think so..." ("open", "narrow", "raised", "mid") + gen "(Damn... maybe I need to work on her confidence a bit...)" ("base", xpos="far_left", ypos="head") + gen "(Some more favours should surely do it...)" ("grin", xpos="far_left", ypos="head") + + jump cho_training.choices + + if cho_whoring >= 3: + $ cho_quid.lock_practice = False + + cho "..." ("normal", "narrow", "base", "downR", cheeks="blush") + cho "You actually think that will work?" ("open", "closed", "angry", "mid", cheeks="blush") + gen "If what you're telling me about him is true then I'm sure of it." ("base", xpos="far_left", ypos="head") + cho "..." ("clench", "closed", "base", "mid", cheeks="blush") + cho "But what if it doesn't?" ("annoyed", "base", "base", "down", cheeks="blush") + cho "I need to win the game to make it to the finals!" ("open", "base", "angry", "mid", cheeks="blush") + gen "Then let's put this theory into practice..." ("base", xpos="far_left", ypos="head") + cho "You want me to try it out during next practice against them?" ("upset", "base", "raised", "mid", cheeks="blush") + gen "You do practice matches against the other...{w=0.5} actually, that's a great idea!" ("base", xpos="far_left", ypos="head") + gen "That way we'll know it works for sure!" ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "base", "base", "down", cheeks="blush") + cho "Fine, but I'm not changing any of my other clothes, I'd rather not have anyone else staring at my panties..." ("annoyed", "base", "angry", "mid", cheeks="blush") + gen "Okay then..." ("base", xpos="far_left", ypos="head") + gen "Get your broom and Quidditch-gear... and put that skirt on!" ("base", xpos="far_left", ypos="head") + cho "Alright..." ("annoyed", "base", "base", "mid", cheeks="blush") + + #Cho returns with the Hufflepuff clothing combination + $ cho.equip(cho_outfit_quidditch_hufflepuff) + $ cho_outfit_quidditch.save() + cho "Okay then, now what?" ("upset", "base", "base", "R", trans=fade) + + gen "Now let's try some flying positions..." ("base", xpos="far_left", ypos="head") + gen "Get on that broom, [cho_name]." ("base", xpos="far_left", ypos="head") + + call cho_chibi("fly", "mid", "base") + hide cho_main + with fade + + gen "Excellent..." ("base", xpos="far_left", ypos="head") + + jump cho_tactics + else: + # Fail + + cho "I will do nothing of the sort!" ("mad", "base", "angry", "mid") + gen "Sorry?" ("base", xpos="far_left", ypos="head") + cho "You want me to wear a skirt during quidditch?" ("mad", "narrow", "angry", "mid") + cho "The whole school will be there!" ("clench", "wide", "base", "mid") + gen "Don't focus on them, Cedric is your target!" ("base", xpos="far_left", ypos="head") + cho "But they'll see my panties!" ("mad", "base", "base", "down", cheeks="blush") + cho "No, I will not be going through with this plan of yours..." ("open", "base", "angry", "mid", cheeks="blush") + cho "You better come up with something else!" ("soft", "base", "angry", "mid", cheeks="blush") + + # Cho gets upset and leaves + $ cho_mood += 6 + call cho_walk(action="leave") + + gen "(Damn... maybe I need to work on her confidence a bit...)" ("base", xpos="far_left", ypos="head") + gen "(Some more favours should surely do it...)" ("grin", xpos="far_left", ypos="head") + + $ cho.equip(cho_outfit_last) + + call gen_chibi("sit_behind_desk") + with fade + + jump end_cho_event + + elif cho_tier == 2: + # Slytherin + # Clothes: Trousers, Pullover + if not slytherin_match == "intro_done": + $ slytherin_match = "intro_done" + + gen "I got it!" ("base", xpos="far_left", ypos="head") + gen "I've got the perfect idea on how to beat those snakes!" ("base", xpos="far_left", ypos="head") + cho "..." ("normal", "narrow", "raised", "mid") + gen "Do we even say \"phrasing\" anymore?" ("base", xpos="far_left", ypos="head") + cho "Just tell me your plan." ("open", "narrow", "raised", "mid") + gen "It's all about the ass!" ("base", xpos="far_left", ypos="head") + cho "The ass?" ("upset", "base", "raised", "mid", cheeks="blush") #shocked + gen "Yes, you told me how those brutes love a good ass spanking, now that's an ass fetish if I ever heard one!" ("base", xpos="far_left", ypos="head") + gen "So this time we'll have those Slytherins get a good look of your ass!" ("base", xpos="far_left", ypos="head") + else: + # Repeated intro + gen "So about that tactic..." ("base", xpos="far_left", ypos="head") + if cho_whoring < 9: + # Fail + cho "Got a better plan? One that doesn't involve flaunting my ass to those Slytherins?" ("annoyed", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + cho "Didn't think so..." ("open", "narrow", "raised", "mid") + gen "(Damn...)" ("base", xpos="far_left", ypos="head") + gen "(Looks like she isn't confident enough yet...)" ("base", xpos="far_left", ypos="head") + gen "(Some more favours should do the trick.)" ("base", xpos="far_left", ypos="head") + + jump cho_training.choices + + if cho_whoring >= 9 and cc_pf_strip.is_event_complete(2, 3): + $ cho_quid.lock_practice = False + + cho "..." ("soft", "base", "raised", "mid") + gen "And yes, before you ask, I'm sure this will ensure the win." ("base", xpos="far_left", ypos="head") + cho "Fine..." ("upset", "base", "base", "R", cheeks="blush") + cho "I can't believe I'm saying this..." ("soft", "happyCl", "base", "mid", cheeks="blush") + cho "I'll flaunt my ass... to those Slytherins." ("clench", "narrow", "base", "mid", cheeks="blush") + gen "Excellent, then let's discuss some tactics..." ("base", xpos="far_left", ypos="head") + gen "I'd like you to put on some trousers this time." ("base", xpos="far_left", ypos="head") + gen "And get rid of your robes, they'll cover it too much." ("base", xpos="far_left", ypos="head") + cho "Get rid of my--" ("open", "wide", "angry", "mid", cheeks="heavy_blush") #Shocked + gen "You can put on something else, just something that doesn't cover the goods." ("base", xpos="far_left", ypos="head") + cho "Alright...{w=0.5} give me a minute to fetch my gear..." ("angry", "closed", "base", "mid", cheeks="blush") + + #Cho returns with the Slytherin clothing combination + $ cho.equip(cho_outfit_quidditch_slytherin) + $ cho_outfit_quidditch.save() + cho "Okay then, tell me what to do." ("base", "base", "base", "mid", trans=fade) + + gen "Get on that broom, [cho_name]." ("base", xpos="far_left", ypos="head") + + call cho_chibi("fly", "mid", "base") + hide cho_main + with fade + + gen "Great." ("base", xpos="far_left", ypos="head") + + jump cho_tactics + + else: + # Fail + + cho "But, they're Slytherins!" ("clench", "base", "angry", "mid") + gen "And?" ("base", xpos="far_left", ypos="head") + cho "You expect me to flaunt my ass to those brutes?" ("mad", "base", "angry", "mid", cheeks="heavy_blush") + gen "Are you telling me you don't think it will work?" ("base", xpos="far_left", ypos="head") + cho "Of course it will work, they're dumb as hell." ("open", "base", "angry", "R", cheeks="blush") + cho "But everyone will be able to see my butt!" ("quiver", "base", "raised", "down") + gen "That's the point." ("angry", xpos="far_left", ypos="head") + cho "But, but, but!" ("open", "closed", "worried", "mid") + gen "That's probably what the crowd will be chanting..." ("grin", xpos="far_left", ypos="head") + cho "Teasing Cedric is one thing... but the Slytherins..." ("mad", "happyCl", "worried", "down") + cho "I can't see my self doing...{w=0.4} this..." ("base", "base", "base", "mid") + gen "Well, that's your loss I guess..." ("base", xpos="far_left", ypos="head") + cho "..." ("normal", "happyCl", "base", "mid", cheeks="blush") + cho "If that's all you have then I think I'm done here." ("open", "base", "worried", "down", cheeks="blush") + + # Cho gets upset and leaves + $ cho_mood += 3 + call cho_walk(action="leave") + + gen "(Damn...)" ("base", xpos="far_left", ypos="head") + gen "(Looks like she isn't confident enough yet...)" ("base", xpos="far_left", ypos="head") + gen "(Some more favours should do the trick.)" ("base", xpos="far_left", ypos="head") + + $ cho.equip(cho_outfit_last) + + call gen_chibi("sit_behind_desk") + with fade + + jump end_cho_event + + elif cho_tier == 3: + # Gryffindor: + # Clothes: No clothes decided on yet + if not gryffindor_match == "intro_done": + $ gryffindor_match = "intro_done" + + gen "I have got it!" ("base", xpos="far_left", ypos="head") + cho "Finally..." ("soft", "base", "raised", "R") + cho "So, what's the plan?" ("open", "base", "raised", "mid") + gen "It's time to get intimate!" ("base", xpos="far_left", ypos="head") + cho "Intimate?" ("upset", "base", "raised", "mid") + gen "Yes, {i}touchy-touchy{/i}!" ("base", xpos="far_left", ypos="head") + else: + # Repeated intro + gen "So about our tactics..." ("base", xpos="far_left", ypos="head") + + if not cc_pf_strip.is_event_complete(3,3) or not cc_pf_blowjob.is_event_complete(3,3): + # Fail + cho "Got a better plan that doesn't involve me getting groped?" ("annoyed", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + cho "Didn't think so..." ("open", "narrow", "raised", "mid") + gen "(She doesn't seem fully convinced just yet...)" ("base", xpos="far_left", ypos="head") + gen "(Maybe a few personal lessons would make her more open-minded.)" ("base", xpos="far_left", ypos="head") + + jump cho_training.choices + + if cc_pf_strip.is_event_complete(3,3) and cc_pf_blowjob.is_event_complete(3,3): + $ cho_quid.lock_practice = False + + cho "What is this plan of yours based on?" ("soft", "narrow", "base", "down", cheeks="blush") + + if cc_pr_manipulate_girls.is_complete(): # has completed "Manipulate the girls!" public request? + gen "These girls sure seem fond of you. If you could get close to them, they surely will lose focus on the game." ("base", xpos="far_left", ypos="head") + cho "Maybe so, but that doesn't solve one important issue..." ("open", "base", "raised", "mid", cheeks="blush") + else: + gen "It's obvious isn't it..." ("base", xpos="far_left", ypos="head") + cho "No?" ("annoyed", "base", "raised", "mid", cheeks="blush") + gen "Girls doing naughty things together..." ("base", xpos="far_left", ypos="head") + cho "What are you getting at?" ("angry", "base", "raised", "mid", cheeks="blush") + gen "If you get close to them they will lose focus on the game!" ("base", xpos="far_left", ypos="head") + cho "..." ("normal", "closed", "base", "mid", cheeks="blush") #worried + cho "What about the boys?" ("mad", "base", "raised", "mid", cheeks="blush") + gen "What about them?" ("base", xpos="far_left", ypos="head") + + cho "Shouldn't their seeker, Harry, be our priority?" ("annoyed", "narrow", "raised", "R") #annoyed + gen "Similar tactic could work on him too." ("base", xpos="far_left", ypos="head") + gen "Imagine Miss Granger's reaction if you get close to him." ("grin", xpos="far_left", ypos="head") + cho "Now that's a plan!" ("smile", "base", "base", "mid") + gen "Great! it's settled then." ("base", xpos="far_left", ypos="head") + + cho "What should I be wearing?" ("open", "base", "raised", "mid") + gen "What do you mean?" ("base", xpos="far_left", ypos="head") + cho "Well, up until now you've made me wear some silly combination of clothes." ("soft", "base", "base", "mid") + gen "You can wear whatever you like, fashion is too complicated for me." ("base", xpos="far_left", ypos="head") + cho "I see..." ("base", "narrow", "base", "mid") + cho "In that case--" ("open", "base", "base", "R") + # + + cho "--Let me fetch my gear, and we can jump straight to training." ("crooked_smile", "base", "base", "mid") + + #Cho returns with the Gryffindor clothing combination + $ cho_outfit_last.save() + $ cho.equip(cho_outfit_quidditch_gryffindor) + call cho_chibi("fly", "mid", "base") + + cho "Okay then, tell me what to do." ("base", "base", "base", "mid", trans=fade) + + hide cho_main + with d3 + + jump cho_tactics + else: + # Fail + + cho "You want them to feel me up?!" ("mad", "base", "raised", "mid", cheeks="blush") + gen "Absolutely!" ("base", xpos="far_left", ypos="head") + gen "You may also touch them a bit as well while you're at it!" ("base", xpos="far_left", ypos="head") + cho "No way!" ("soft", "wide", "base", "mid", cheeks="blush") + gen "Why not?" ("angry", xpos="far_left", ypos="head") + cho "Teasing them is one thing but touching as well?" ("angry", "base", "base", "mid", cheeks="blush") + cho "With everyone watching." ("horny", "happyCl", "base", "mid", cheeks="heavy_blush") #blushes but imagining it + gen "..." ("base", xpos="far_left", ypos="head") + cho "No, I wont do it..." ("horny", "base", "base", "downR", cheeks="blush") + gen "But what if--" ("base", xpos="far_left", ypos="head") + + # Cho gets upset and leaves + $ cho_mood += 6 + call cho_walk(action="leave") + + gen "(She doesn't seem fully convinced just yet...)" ("base", xpos="far_left", ypos="head") + gen "(Maybe a few personal lessons would make her more open-minded.)" ("base", xpos="far_left", ypos="head") + + $ cho.equip(cho_outfit_last) + + call gen_chibi("sit_behind_desk") + with fade + + jump end_cho_event + + "-Discuss tactics-" (style="disabled") if not cc_pf_talk.is_tier_complete() or cho_quid.lock_tactic: + if cho_quid.lock_tactic: + gen "(We've already established a tactic for the next match)" ("base", xpos="far_left", ypos="head") + else: + gen "(I don't know enough about the enemy team.)" ("base", xpos="far_left", ypos="head") + gen "(Cho and I should have a talk first.)" ("base", xpos="far_left", ypos="head") + + jump cho_training.choices + + "-Start Practice Match-" if game.daytime and not cho_quid.lock_practice: + if cho_tier == 1: + # Hufflepuff + jump cc_ht_start + elif cho_tier == 2: + # Slytherin + jump cc_st_start + elif cho_tier == 3: + # Gryffindor + jump cc_gt_start + + "-Start Practice Match-" (style="disabled") if not game.daytime or cho_quid.lock_practice: + if cho_quid.lock_practice: + if (cho_tier == 1 and cho_quid.hufflepuff_training) or (cho_tier == 2 and cho_quid.slytherin_training) or (cho_tier == 3 and cho_quid.gryffindor_training): + gen "(She doesn't need any more practice.)" ("base", xpos="far_left", ypos="head") + else: + call nar(">Cho isn't ready for practice yet.") + else: + call nar(">You can only do that during the day.") + + jump cho_training.choices + + "-Back-": + cho "Very well, [cho_genie_name]." ("open", "base", "base", "mid", ypos="head", flip=False) + + hide cho_main + show screen blkfade + with d3 + + $ cho.equip(cho_outfit_last) + + call cho_chibi("stand", "mid", "base") + call gen_chibi("sit_behind_desk") + + call reset_menu_position + + hide screen blkfade + cho "" (face="happy", xpos="base", ypos="base", trans=fade) + jump cho_requests + +### Quidditch Tactics ### + +label cho_tactics: + + # Menu + label .choices: + + call hide_characters + call bld + + $ menu_y = 0.8 + + menu: + gen "(What directions should I give her?)" ("base", xpos="far_left", ypos="head") + "\"Fly in front of me.\"" if cho_quid.position != "front": + jump cho_tactics.change_front + "\"Fly in front of me.\" {size=-6}(selected){/size}" if cho_quid.position == "front": + pass + + "\"Fly above me.\"" if cho_quid.position != "above": + jump cho_tactics.change_above + "\"Fly above me.\" {size=-6}(selected){/size}" if cho_quid.position == "above": + pass + + "\"Fly close to me.\"" if cho_quid.position != "close": + jump cho_tactics.change_close + "\"Fly close to me.\" {size=-6}(selected){/size}" if cho_quid.position == "close": + pass + + gen "(No, that probably won't work...)" ("base", xpos="far_left", ypos="head") + + jump cho_tactics.choices + + # Change Tactic + #TODO This plays once cho has agreed to the tactic/clothing and during the first intro + # Once you pick the right option the practice match option unlocks (Maybe we should have it say Try out tactic?) + # The various options should go away once you've tried it once + + label .change_front: + # The *ASS* position! + $ cho_quid.position = "front" + + if cho_tier == 1: + # Hufflepuff + + call cho_walk(600, 150+180) + + cho "Is this good?" ("open", "base", "raised", "mid", ypos="head", flip=False) + gen "*Hmm*... No, that robe is in the way... I can't seem to get a good view from this angle..." ("base", xpos="far_left", ypos="head") + cho "Good! Then the crowd shouldn't either!" ("smile", "base", "base", "down", ypos="head", flip=False) + gen "Yes, probably..." ("base", xpos="far_left", ypos="head") + gen "How about instead you..." ("base", xpos="far_left", ypos="head") + + elif cho_tier == 2: + # Slytherin + + call cho_walk(600, 150+180) + + cho "How's this?" ("open", "base", "raised", "mid", ypos="head", flip=False) + gen "Excellent, I told you getting rid of that coat would do it!" ("base", xpos="far_left", ypos="head") + gen "And those trousers sure emphasise the shape of your--" ("base", xpos="far_left", ypos="head") + + # Cho turns towards you + + cho "Good, then it's settled!" ("soft", "base", "base", "down", cheeks="blush", ypos="head", flip=False) + gen "But I didn't get a proper look yet!" ("base", xpos="far_left", ypos="head") + cho "..." ("clench", "base", "base", "mid", cheeks="blush", ypos="head", flip=False) + gen "Alright, you can come down then..." ("base", xpos="far_left", ypos="head") + + #Cho flies down + #Black screen + call gen_chibi("stand", "desk", "base") + call cho_chibi("stand", "mid", "base") + hide cho_main + with fade + + gen "We'll test the tactics during the next practice like usual." ("base", xpos="far_left", ypos="head") + cho "Do we have to? I'm sure it will work even without trying it." ("clench", "base", "raised", "mid", cheeks="blush") + gen "Of course we do! You're the one that was so adamant last time..." ("base", xpos="far_left", ypos="head") + gen "So let's see those results!" ("base", xpos="far_left", ypos="head") + cho "Yeah... Great, just let me know when..." ("normal", "closed", "base", "mid", cheeks="blush") + gen "I certainly shall." ("grin", xpos="far_left", ypos="head") + gen "But this will do for today, [cho_name]." ("base", xpos="far_left", ypos="head") + + if game.daytime: + cho "I'll head back to class then." ("open", "base", "base", "R") + else: + cho "I'll head back to my dorm then." ("open", "base", "base", "R") + + gen "Until next time." ("grin", xpos="far_left", ypos="head") + + call cho_walk(action="leave") + + $ cho_quid.lock_practice = False + $ cho_quid.lock_tactic = True + $ cho.equip(cho_outfit_last) + + call popup("Cho's practice matches have been unlocked.", "Congratulations!", "interface/icons/head/cho.webp") + + call gen_chibi("sit_behind_desk") + with fade + + jump end_cho_event + + elif cho_tier == 3: + # Gryffindor + + call cho_walk(600, 150+180) + + gen "No, this won't do, you're way too far away from me." ("base", xpos="far_left", ypos="head") + cho "What should I do then?" ("annoyed", "base", "raised", "mid", ypos="head", flip=False) + gen "Let's see..." ("base", xpos="far_left", ypos="head") + + jump cho_tactics.choices + + label .change_above: + # The ~Panties~ position! + $ cho_quid.position = "above" + + if cho_tier == 1: + # Hufflepuff + + gen "Now, start with getting in front of me..." ("base", xpos="far_left", ypos="head") + + call cho_walk(550, 200+180) + + cho "Like this?" ("soft", "base", "base", "downR", ypos="head", flip=False) + with hpunch + gen "Yes, and now...{w=0.4} Higher!" ("angry", xpos="far_left", ypos="head") + cho "Is this not high enough to see my--" ("annoyed", "base", "raised", "mid", ypos="head", flip=False) + gen "Fly right above my head!" ("angry", xpos="far_left", ypos="head") + gen "Show me those panties!" ("angry", xpos="far_left", ypos="head") + cho "Of course, [cho_genie_name]..." ("base", "base", "base", "downR", cheeks="blush", ypos="head", flip=False) + + call cho_walk(500, 100+180) + + cho "How is this?" ("soft", "base", "base", "down", cheeks="blush", ypos="head", flip=False) + + # TODO: Panty shot CG? + + # Genie looks up. + call gen_chibi("stand_alt", "desk", "base") + show screen bld1 + with d3 + + gen "Yes, fantastic!" ("angry", xpos="far_left", ypos="head") + gen "You have very cute panties, girl!" ("grin", xpos="far_left", ypos="head") + cho "*Ehm*...{w=0.5} Thank you, [cho_genie_name]." ("annoyed", "base", "base", "down", cheeks="blush", ypos="head", flip=False) + gen "(I have created the ultimate up-skirt!)" ("base", xpos="far_left", ypos="head") + gen "(Nothing can stop us now...)" ("base", xpos="far_left", ypos="head") + cho "Can I come down now?" ("soft", "base", "base", "downR", ypos="head", flip=False) + gen "Give me another minute." ("grin", xpos="far_left", ypos="head") + cho "*Tsk*" ("normal", "base", "raised", "L", cheeks="blush", ypos="head", flip=False) + gen "Okay, you can come down now." ("base", xpos="far_left", ypos="head") + + #Cho flies down + #Black screen + call gen_chibi("stand", "desk", "base") + call cho_chibi("stand", "mid", "base") + hide cho_main + with fade + + cho "Enjoyed the view?" ("upset", "base", "angry", "mid", cheeks="blush") #angry/annoyed + gen "Very much so." ("base", xpos="far_left", ypos="head") + cho "Good!" ("smile", "base", "base", "mid") + cho "Then I'm sure Cedric will like it too..." ("base", "closed", "base", "mid") + gen "Who?" ("base", xpos="far_left", ypos="head") + gen "Oh yeah, that guy!" ("base", xpos="far_left", ypos="head") + gen "Yes, we should definitely try this during your next practice match against them." ("base", xpos="far_left", ypos="head") + cho "..." ("normal", "base", "raised", "mid") #annoyed + gen "When is that again?" ("base", xpos="far_left", ypos="head") + cho "*Sigh* Just let me know when and I'll set one up with their captain." ("open", "narrow", "base", "R") + gen "Excellent." ("base", xpos="far_left", ypos="head") + + if game.daytime: + cho "If that is all, I'll head back to class." ("open", "base", "base", "mid") + gen "Yes, that shall do for today." ("base", xpos="far_left", ypos="head") + cho "Good day then, Sir..." ("soft", "narrow", "base", "mid") + else: + cho "If that is all, I'll head back to my dorm." ("open", "base", "base", "mid") + gen "Yes, that shall do for today." ("base", xpos="far_left", ypos="head") + cho "Good night then, Sir..." ("soft", "narrow", "base", "mid") + + call cho_walk(action="leave") + + $ cho_quid.lock_practice = False + $ cho_quid.lock_tactic = True + $ cho_quid.hufflepuff_prepared = True + $ cho.equip(cho_outfit_last) + + call popup("Cho's practice matches have been unlocked.", "Congratulations!", "interface/icons/head/cho.webp") + + call gen_chibi("sit_behind_desk") + with fade + + jump end_cho_event + + elif cho_tier == 2: + # Slytherin + + cho "Above you, [cho_genie_name]?" ("annoyed", "base", "raised", "mid", ypos="head", flip=False) + gen "Yes, above..." ("base", xpos="far_left", ypos="head") + cho "Okay..." ("upset", "base", "base", "mid", ypos="head", flip=False) + + call cho_walk(500, 100+180) + + gen "Hold on, that's a bit too high I think..." ("base", xpos="far_left", ypos="head") + cho "You think?" ("angry", "base", "raised", "mid", ypos="head", flip=False) #annoyed + gen "Yeah, how about instead you..." ("base", xpos="far_left", ypos="head") + + elif cho_tier == 3: + #Gryffindor + + cho "You want me to fly... above you?" ("clench", "base", "raised", "mid", ypos="head", flip=False) + gen "You've heard me..." ("base", xpos="far_left", ypos="head") + cho "Okay then..." ("upset", "base", "base", "mid", ypos="head", flip=False) + + call cho_walk(500, 100+180) + + gen "Hey, how am I supposed to reach you from up there?" ("angry", xpos="far_left", ypos="head") + gen "That's not how you get intimate!" ("base", xpos="far_left", ypos="head") + cho "Why did you tell me to fly above you then?" ("annoyed", "base", "base", "down", ypos="head", flip=False) + gen "..." ("base", xpos="far_left", ypos="head") + gen "Sorry, I can't hear you from all the way down here." ("base", xpos="far_left", ypos="head") + gen "I think it might be better if you..." ("base", xpos="far_left", ypos="head") + + jump cho_tactics.choices + + label .change_close: + # The ~intimate~ position! + $ cho_quid.position = "close" + + if cho_tier == 1: + # Hufflepuff + + cho "Close? How would you be able to see my--" ("annoyed", "base", "base", "mid", ypos="head", flip=False) + gen "Come closer!" ("base", xpos="far_left", ypos="head") + + call cho_walk(450, 240+180) + + gen "Wait a second, I can't see your panties at all from this angle..." ("base", xpos="far_left", ypos="head") + cho "No shi--" ("open", "narrow", "base", "mid", ypos="head", flip=False) + gen "Let's try this instead..." ("base", xpos="far_left", ypos="head") + + elif cho_tier == 2: + # Slytherin + + cho "Close?" ("annoyed", "base", "base", "mid", ypos="head", flip=False) + gen "Yes close... did I stutter?" ("base", xpos="far_left", ypos="head") + + call cho_walk(450, 240+180) + + gen "You smell nice..." ("base", xpos="far_left", ypos="head") + cho "Yeah, this is not going to work..." ("disgust", "narrow", "base", "mid", ypos="head", flip=False) + gen "Fine, let's have you..." ("base", xpos="far_left", ypos="head") + + elif cho_tier == 3: + # Gryffindor + + gen "Come as close to me as you can..." ("base", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]." ("soft", "base", "base", "R", ypos="head", flip=False) + + call cho_walk(450, 240+180) + + cho "How's this? Too close?" ("soft", "wink", "raised", "mid", cheeks="blush", ypos="head", flip=False) + gen "No! It's the perfect distance!" ("base", xpos="far_left", ypos="head") + gen "They would be able to smell you if you got any closer!" ("base", xpos="far_left", ypos="head") + cho "I hope not!" ("quiver", "closed", "worried", "mid", cheeks="blush", ypos="head", flip=False) + gen "Why? You smell lovely, girl!" ("grin", xpos="far_left", ypos="head") + cho "*Ehm*...{w=0.5} Thank you, [cho_genie_name]." ("soft", "base", "worried", "mid", cheeks="blush", ypos="head", flip=False) + cho "Can I come down now?" ("soft", "narrow", "base", "mid", cheeks="blush", ypos="head", flip=False) + gen "Of course." ("base", xpos="far_left", ypos="head") + + #Cho flies down + #Black screen + call gen_chibi("stand", "desk", "base") + call cho_chibi("stand", "mid", "base") + hide cho_main + with fade + + gen "You'll definitely distract those girls with this kind of move!" ("base", xpos="far_left", ypos="head") + cho "And boys..." ("open", "base", "raised", "R") + gen "Oh yeah, them to!" ("base", xpos="far_left", ypos="head") + cho "Just let me know when to try it out against them." ("normal", "base", "raised", "mid") + gen "Certainly... Oh, and keep wearing that scent, whatever it is." ("base", xpos="far_left", ypos="head") + cho "It's just deodorant..." ("clench", "base", "raised", "mid", cheeks="blush") + gen "Yes, that! Keep wearing it!" ("base", xpos="far_left", ypos="head") + + if game.daytime: + cho "If that is all, I'll head back to class." ("base", "narrow", "base", "R") + gen "Yes, that shall do for today." ("base", xpos="far_left", ypos="head") + cho "Good day to you, [cho_genie_name]..." ("soft", "narrow", "base", "mid") + else: + cho "If that is all, I'll head back to my dorm." ("base", "narrow", "base", "R") + gen "Yes, that shall do for today." ("base", xpos="far_left", ypos="head") + cho "Goodnight, [cho_genie_name]..." ("soft", "narrow", "base", "mid") + + + call cho_walk(action="leave") + + $ cho_quid.lock_practice = False + $ cho_quid.lock_tactic = True + $ cho.equip(cho_outfit_last) + + call popup("Cho's practice matches have been unlocked.", "Congratulations!", "interface/icons/head/cho.webp") + + call gen_chibi("sit_behind_desk") + with fade + + jump end_cho_event + + jump cho_tactics.choices diff --git a/game/scripts/characters/cho/events/quidditch/transforms.rpy b/game/scripts/characters/cho/events/quidditch/transforms.rpy new file mode 100644 index 00000000..fbc9c295 --- /dev/null +++ b/game/scripts/characters/cho/events/quidditch/transforms.rpy @@ -0,0 +1,6 @@ +transform sprite_fly_idle: + on show, appear, start: + yoffset absolute(110) + ease_back 2.5 yoffset absolute(90) + ease_back 2.5 yoffset absolute(110) + repeat diff --git a/game/scripts/characters/cho/events/requests/manipulate_boys.rpy b/game/scripts/characters/cho/events/requests/manipulate_boys.rpy new file mode 100644 index 00000000..f591ad12 --- /dev/null +++ b/game/scripts/characters/cho/events/requests/manipulate_boys.rpy @@ -0,0 +1,1458 @@ + + +### Manipulate the enemy male Quidditch players ### + +### Start ### +label cc_pr_manipulate_boys_start: + + cho "" (xpos="right", ypos="base", trans=fade) + + ### Tier 1 (pre Hufflepuff) ### + if cho_tier == 1: + + # Intro + if cc_pr_manipulate_boys.points == 0: + gen "So what do we know about our opponents?" ("base", xpos="far_left", ypos="head") + cho "Hufflepuff? Well their team isn't the best, but they have a really strong seeker." ("soft", "base", "base", "mid") + gen "Right...{w=0.3} who was that again?" ("base", xpos="far_left", ypos="head") + cho "Cedric Diggory. How often do I have to repeat that to you, [cho_genie_name]?" ("annoyed", "narrow", "base", "mid") + gen "You will understand once you get to be my age..." ("base", xpos="far_left", ypos="head") + cho "Oh, I'm sorry, Sir." ("soft", "narrow", "worried", "mid") + cho "I should be more respectful of your age." ("soft", "narrow", "base", "downR") + gen "(Because at my age you stop giving a damn...)" ("base", xpos="far_left", ypos="head") + cho "Cedric is a bit of a blockhead, but he's quite a competent seeker." ("open", "base", "raised", "R") + cho "And very popular with the girls..." ("soft", "base", "raised", "mid") + gen "Do I sense a little bit of something in your voice?" ("base", xpos="far_left", ypos="head") + cho "Of course not! We stopped dating ages ago!" ("soft", "base", "base", "downR", cheeks="blush") + cho "I didn't want to be seen with an idiot like him anymore..." ("open", "closed", "angry", "mid") + cho "Not if I'm supposed to be a proper Ravenclaw..." ("annoyed", "narrow", "angry", "mid") + cho "{size=-4}Even if he's cute...{/size}" ("normal", "base", "worried", "downR", cheeks="blush") # Small text. + gen "That's good. We can use this to our advantage." ("base", xpos="far_left", ypos="head") + cho "We can? How?" ("soft", "wide", "base", "mid") + gen "You two having history! Which means he'll be much easier to distract during the game." ("base", xpos="far_left", ypos="head") + gen "All you have to do is make him believe something might actually happen." ("base", xpos="far_left", ypos="head") + cho "What?{w=0.3} I don't want to go out with Cedric again!" ("angry", "wide", "base", "mid") + gen "I know, I know, you just have to make him believe that you will." ("base", xpos="far_left", ypos="head") + cho "Oh..." ("soft", "base", "base", "downR", cheeks="blush") + cho "Well... how do I do that?" ("annoyed", "base", "base", "mid") + gen "It's a little something called {b}seduction{/b}..." ("base", xpos="far_left", ypos="head") + gen "It should be your gender's bread and butter." ("base", xpos="far_left", ypos="head") + cho "Isn't that a little mean?" ("soft", "closed", "base", "mid") + gen "Mean? You're not doing anything wrong, are you?" ("base", xpos="far_left", ypos="head") + gen "You're just talking to him..." ("base", xpos="far_left", ypos="head") + cho "So I'm just supposed to lead him down the garden path?" ("soft", "base", "raised", "mid") + gen "Only if you want Ravenclaw to have a chance at winning." ("base", xpos="far_left", ypos="head") + cho "*Hmm*..." ("annoyed", "narrow", "base", "R") + gen "And don't worry about him.{w} He's hardly going to complain about having a pretty little thing like you to talk to..." ("base", xpos="far_left", ypos="head") + gen "Not to mention look at..." ("grin", xpos="far_left", ypos="head") + cho "Hey!" ("soft", "base", "base", "mid") + gen "I'm just saying, he hasn't got anything to whine about." ("base", xpos="far_left", ypos="head") + gen "And if you are worried about his feelings..." ("base", xpos="far_left", ypos="head") + gen "Maybe you can fool around a little... I'm sure that would make him forget all about the garden path..." ("base", xpos="far_left", ypos="head") + cho "Sir!" ("mad", "narrow", "base", "mid") + gen "I'm just telling you to use what the gods gave you -- to try and win a game." ("base", xpos="far_left", ypos="head") + cho "Can't I use what they gave me to catch the snitch?" ("annoyed", "narrow", "angry", "mid") + gen "And how's that plan been working out so far?" ("base", xpos="far_left", ypos="head") + cho "*Ugh!* Fine...{w} Point taken..." ("annoyed", "narrow", "angry", "R") + cho "So I just have to make him think there's something between us again?" ("soft", "base", "base", "mid") + cho "I think I can do that..." ("annoyed", "narrow", "base", "down") + gen "Good, let me know how it goes..." ("base", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]!" ("base", "base", "base", "mid") + + # Repeated + else: + gen "Ready to mess with Hufflepuff again?" ("base", xpos="far_left", ypos="head") + cho "I guess so..." (mouth="soft", face="happy") + gen "Great! I'll see you later today for your report, [cho_name]!" ("grin", xpos="far_left", ypos="head") + cho "Yes, [cho_genie_name]!" ("base", "base", "base", "mid") + + ### Tier 2 (pre Slytherin) ### + elif cho_tier == 2: + + # Intro + if cc_pr_manipulate_boys.points == 0: + gen "[cho_name], how well -- in your opinion -- did you do in your last match?" ("base", xpos="far_left", ypos="head") + cho "Well, I pretty much secured the win for my team, distracting those Hufflepuffs--" ("base", "closed", "base", "mid") + gen "Only one Hufflepuff!{w=0.6} We were lucky you could secure that win with such low effort..." ("base", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "closed", "base", "mid", cheeks="blush") + gen "We have to up our game to win against the next house, don't you think?" ("base", xpos="far_left", ypos="head") + gen "Manipulating just one player won't be enough this time! We have to put our focus on their entire team!" ("base", xpos="far_left", ypos="head") + cho "*Hmm*... As much as I don't like it, you might be right about that, [cho_genie_name]." ("open", "narrow", "worried", "downR", cheeks="blush") + cho "Slytherin's team is quite good overall, and they have some of the best players at this school." ("open", "narrow", "base", "mid") + cho "What do you suggest I should do?" ("annoyed", "narrow", "worried", "mid") + gen "Same as with that Diggory boy!" ("base", xpos="far_left", ypos="head") + + menu: + "\"Be affectionate and flirty!\"": + gen "Just go and talk to them, and flirt with them for a bit..." ("angry", xpos="far_left", ypos="head") + cho "I suppose I can do that." ("annoyed", "base", "base", "downR") + cho "But, Sir... What if someone were to see me with them?" ("soft", "narrow", "angry", "mid") + + "\"Make out with them...\"": + cho "Make out with?{w=0.6} Those Slytherins--" ("soft", "wide", "worried", "mid", cheeks="heavy_blush") + cho "*guargh*" ("open_tongue", "happyCl", "angry", "mid", cheeks="blush", trans=hpunch) + cho "*cough*{w=0.6}-*guargh*!{w=0.8}-*cough*" ("open_wide_tongue", "happyCl", "worried", "mid", cheeks="blush", trans=hpunch) + call nar(">You hear Cho make some inadvertent gag noises...") + gen "Is everything okay, girl?" ("base", xpos="far_left", ypos="head") + cho "No!{w=0.3} It's not okay!" ("angry", "wide", "worried", "mid", cheeks="blush") + cho "Why would you think I want to snog those repulsive, yuck-ugly Slytherin degenerates?!" ("open", "wide", "worried", "mid", cheeks="blush") + cho "The thought alone utterly disgusts me, [cho_genie_name]!" ("open_tongue", "happyCl", "worried", "mid", cheeks="blush") + cho "I'll do anything but that!" ("mad", "narrow", "worried", "mid") + gen "So no kissing?" ("base", xpos="far_left", ypos="head") + cho "Absolutely not!{w=0.8} Not even with Malfoy..." ("angry", "closed", "angry", "mid", cheeks="blush") + gen "Very well.{w=0.3} Just flirt with them in that case..." ("base", xpos="far_left", ypos="head") + cho "And what if someone were to see me with them?" ("soft", "narrow", "angry", "mid") + + gen "Would that be an issue?" ("base", xpos="far_left", ypos="head") + cho "Since they are on the enemy team, yes!" ("annoyed", "narrow", "angry", "mid") + cho "What if my team was to find out I hang around Slytherins?" ("angry", "base", "base", "mid") + cho "{b}Slytherins!!{/b}" ("clench", "wide", "base", "mid") + gen "So? Just do it in secret then." ("base", xpos="far_left", ypos="head") + cho "That...{w=0.3} might work." ("annoyed", "base", "base", "R") + gen "Don't you have any classes with them?" ("base", xpos="far_left", ypos="head") + cho "I do on some days." ("annoyed", "closed", "base", "mid") + gen "Then give them a note to meet you alone once the class is finished.{w=0.6} Easy..." ("base", xpos="far_left", ypos="head") + cho "I guess I could do that." ("open", "narrow", "base", "down") + gen "They can read, right?" ("base", xpos="far_left", ypos="head") + cho "Yes, I do believe they can read.{w=0.8} But don't take my word for it..." ("soft", "narrow", "base", "mid") + gen "You need to find a way to convince them to throw the game. It's our only chance..." ("base", xpos="far_left", ypos="head") + #gen "Do you have any ideas how you could accomplish that?" ("base", xpos="far_left", ypos="head") + #cho "I-- *Ehm*..." ("annoyed", "base", "base", "R") + #cho "I could still try to flirt with them a bit, I guess." ("soft", "base", "worried", "mid") + #gen "I doubt that that will be enough..." ("base", xpos="far_left", ypos="head") + #cho "" ("annoyed", "base", "worried", "mid") + cho "I'll try my best, [cho_genie_name]." ("smile", "narrow", "base", "mid") + gen "Let's just see how it goes." ("base", xpos="far_left", ypos="head") + gen "If anything goes wrong...{w=0.8} just improvise..." ("base", xpos="far_left", ypos="head") + cho "Very well, Sir." ("base", "base", "base", "mid") + gen "Report back to me later today with your results." ("base", xpos="far_left", ypos="head") + cho "Yes, Sir!" ("smile", "base", "base", "mid") + + # Repeated + else: + gen "Time to brighten up some Slytherin's day again..." ("base", xpos="far_left", ypos="head") + gen "Go and get their players on {i}your{/i} side!" ("grin", xpos="far_left", ypos="head") + cho "I will try my best, [cho_genie_name]!" (mouth="smile", face="happy") + gen "Report to me later as usual, [cho_name]!" ("grin", xpos="far_left", ypos="head") + cho "Yes, Sir!" ("base", "base", "base", "mid") + + ### Tier 2 (pre Gryffindor) ### + elif cho_tier == 3: + if not cc_pr_manipulate_boys.is_event_complete(3, 1): # Completed The Twins? + + if not cc_pr_spy_boys.is_event_complete(3, 1): + # Return if player has not spied on the Twins just yet. + + gen "Let's try and manipulate the boys on the enemy team!" ("base", xpos="far_left", ypos="head") + cho "You're expecting me to just jump in blind?" ("angry", "base", "base", "mid") + cho "I don't know any of these boys, how do you expect me to manipulate them in any way without knowing what I'm dealing with?" ("annoyed", "wide", "base", "mid") + gen "Good point, perhaps we should consider spying on them a bit beforehand." ("base", xpos="far_left", ypos="head") + + cho "" (xpos="base", ypos="base", trans=fade) + + jump cho_requests_menu + + gen "Time to manipulate the enemy a bit." ("base", xpos="far_left", ypos="head") + + gen "Today I'd like you to target the boys." ("base", xpos="far_left", ypos="head") + cho "Okay..." ("open", "base", "base", "R") + gen "Let's start off with the twins." ("base", xpos="far_left", ypos="head") + gen "Remind me what we know about them." ("base", xpos="far_left", ypos="head") + cho "They mostly focus on trickery and pranks, doing anything for a laugh..." ("soft", "narrow", "base", "mid") + gen "Perhaps stooping to the Twins' level could help you learn more about them." ("base", xpos="far_left", ypos="head") + cho "What do you mean by that?" ("annoyed", "base", "raised", "mid") + gen "Since they're tricksters and love disrupting things..." ("base", xpos="far_left", ypos="head") + gen "I suggest trying to find a way to make them use one of their tricks during the game. Surely they wouldn't be able to help themselves if presented an opportunity." ("base", xpos="far_left", ypos="head") + cho "Okay then." ("soft", "base", "base", "mid") + cho "Wish me luck!" ("open", "narrow", "base", "mid") + gen "Good luck." ("base", xpos="far_left", ypos="head") + + elif not cc_pr_manipulate_boys.is_event_complete(3, 2): # Completed Ron Weasley? + + if not cc_pr_spy_boys.is_event_complete(3, 2): + # Return if player has not spied on Ron Weasley just yet. + + gen "Let's try and manipulate--" ("base", xpos="far_left", ypos="head") + cho "I'm going to stop you there..." ("angry", "base", "raised", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + cho "There's no way I'll try this again before I know more about the boys." ("annoyed", "base", "angry", "mid") + gen "Fine..." ("base", xpos="far_left", ypos="head") + + cho "" (xpos="base", ypos="base", trans=fade) + + jump cho_requests_menu + + gen "Let's target the other Weasley boy this time." ("base", xpos="far_left", ypos="head") + cho "You actually want me to target that pervert?" ("disgust", "narrow", "base", "mid") + gen "Sort of... He won't be the main goal of this operation." ("base", xpos="far_left", ypos="head") + cho "Then, what is?" ("annoyed", "base", "base", "mid") + gen "Miss Granger is quite protective of her friends isn't she?" ("base", xpos="far_left", ypos="head") + cho "I guess... The few times I've seen them without her she's usually just around the corner talking to some teacher or another." ("open", "narrow", "base", "downR") + gen "Then use those moments to your advantage... Miss Granger is also part of the game isn't she?" ("base", xpos="far_left", ypos="head") + gen "If you can somehow spark that jealousy or protectiveness of her friends..." ("base", xpos="far_left", ypos="head") + gen "Angering her enough could transfer to the game... And since she'll be stuck in the commentator booth the whole time she won't be able to pull them away from you." ("base", xpos="far_left", ypos="head") + cho "..." ("mad", "wide", "raised", "mid") + cho "That might actually work..." ("crooked_smile", "base", "base", "R") + cho "If anything it gives me an excuse to piss her off..." ("crooked_smile", "closed", "base", "mid") + cho "Not that I've needed one previously." ("smile", "closed", "base", "mid") #smirk + gen "Then it's settled, report to me in the evening as usual." ("base", xpos="far_left", ypos="head") + cho "Will do!" ("smile", "base", "base", "mid") + + elif not cc_pr_manipulate_boys.is_event_complete(3, 3): # Completed Harry Potter? + + if not cc_pr_spy_boys.is_event_complete(3, 3): + # Return if player has not spied on Harry Potter just yet. + gen "Let's try and manipulate--" ("base", xpos="far_left", ypos="head") + cho "I'm going to stop you there..." ("angry", "base", "raised", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + cho "There's no way I'll try this again before I know more about the boys." ("annoyed", "base", "angry", "mid") + gen "Fine..." ("base", xpos="far_left", ypos="head") + + cho "" (xpos="base", ypos="base", trans=fade) + + jump cho_requests_menu + + gen "How about we annoy Miss Granger some more?" ("base", xpos="far_left", ypos="head") + cho "Of course!" ("crooked_smile", "base", "base", "mid") + gen "Let's target her other friend today." ("base", xpos="far_left", ypos="head") + cho "Harry P--" ("smile", "base", "raised", "mid") + gen "The Potter boy!" ("angry", xpos="far_left", ypos="head") + cho "..." ("mad", "base", "base", "mid") #annoyed + gen "*Ahem*... Yes..." ("base", xpos="far_left", ypos="head") + gen "Try and really get under her skin this time!" ("base", xpos="far_left", ypos="head") + cho "That shouldn't be very hard seeing how she reacted last time..." ("smile", "base", "raised", "R") + cho "Wish me luck!" ("smile", "base", "base", "mid") + gen "Good luck." ("base", xpos="far_left", ypos="head") + + else: + # Repeated + + gen "Let's manipulate those boys some more!" ("base", xpos="far_left", ypos="head") + cho "I thought we were done?" ("angry", "base", "base", "mid") + cho "Although..." ("soft", "base", "base", "R") + cho "I could annoy Hermione some more!" ("crooked_smile", "wide", "base", "mid") + gen "Don't forget the tw--" ("base", xpos="far_left", ypos="head") + cho "This will be so much fun!" ("crooked_smile", "happyCl", "base", "mid") + + # Cho leaves early! + call cho_walk(action="leave") + $ cc_pr_manipulate_boys.inProgress = True + + gen "Twins..." ("base", xpos="far_left", ypos="head") + gen "Well, can't say she lacks motivation anymore..." ("base", xpos="far_left", ypos="head") + + jump end_cho_event + + + # Cho leaves. + call cho_walk(action="leave") + + $ cc_pr_manipulate_boys.inProgress = True + + jump end_cho_event + + + +### Return Events ### + +### Tier 1 (pre Hufflepuff) ### + +label cc_pr_manipulate_boys_T1_intro_E1: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" (face="happy", xpos="mid", ypos="base", trans=fade) + gen "How did it go?" ("base", xpos="far_left", ypos="head") + cho "It went...{w=0.3} well?" ("soft", "base", "raised", "R") + cho "Maybe a little too well... He tried to kiss me!" ("annoyed", "base", "raised", "mid") + gen "Really? Nice work!{w=0.6} Did you slip him a little tongue?" ("grin", xpos="far_left", ypos="head") + cho "[cho_genie_name]!{w=0.3} No, of course not!" ("soft", "wide", "base", "mid") + gen "Why not?" ("base", xpos="far_left", ypos="head") + cho "Because I'm not some slut who gives it away for free!" ("annoyed", "narrow", "angry", "mid") + gen "It was only a kiss..." ("base", xpos="far_left", ypos="head") + gen "(Now I'm falling asleep {unicode}♫{/unicode})" ("base", xpos="far_left", ypos="head") + cho "A kiss is very personal!" ("soft", "closed", "base", "mid") + cho "Besides, he didn't even try to make it special!" ("annoyed", "narrow", "angry", "R") + cho "He just leaned in while I was in the middle of a conversation..." ("annoyed", "narrow", "angry", "mid") + gen "Sounds special enough to me." ("base", xpos="far_left", ypos="head") + cho "Well it wasn't! I want a bit of romance..." ("soft", "closed", "base", "mid") + gen "At least it sounds like you're doing a good job distracting him." ("base", xpos="far_left", ypos="head") + cho "If you say so..." ("annoyed", "base", "base", "down") + gen "Just keep in mind why we're doing this." ("base", xpos="far_left", ypos="head") + gen "You can't chicken out of something as small as a kiss -- if you want Ravenclaw to have a chance!" ("angry", xpos="far_left", ypos="head") + cho "Right, [cho_genie_name]!" ("soft", "narrow", "worried", "mid") + gen "That'll be all for now, you can go." ("base", xpos="far_left", ypos="head") + cho "Thank you, [cho_genie_name]." ("base", "base", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 3: # Points til 3. + $ cho_reputation += 1 + + jump end_cho_event + + +label cc_pr_manipulate_boys_T1_E1: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" (face="happy", xpos="mid", ypos="base", trans=fade) + gen "What's my favourite Quidditch player been up to today?" ("base", xpos="far_left", ypos="head") + cho "I think you'll be happy, [cho_genie_name]!" ("base", "narrow", "base", "mid") + gen "I like the sound of that! Tell me what happened." ("grin", xpos="far_left", ypos="head") + cho "Well, I thought about the best way to get to Cedric -- and I remembered how much he loved my bum!" ("soft", "base", "base", "R") + gen "*Mhmm*... I can't say I blame him..." ("base", xpos="far_left", ypos="head") + gen "Let me guess, you tried the old \"drop your pencil trick\" on him?" ("base", xpos="far_left", ypos="head") + cho "\"Pencil trick\"?" ("mad", "base", "raised", "mid") + gen "Yes. You \"accidentally\" drop your pencil, and then when you have the boy's attention, you bent down and--" ("base", xpos="far_left", ypos="head") + cho "Sir, we're only allowed to use \"quills\" here." ("soft", "closed", "base", "mid") + gen "So just use \"quills\" instead?" ("base", xpos="far_left", ypos="head") + cho "That would just make a mess and get ink everywhere..." ("annoyed", "narrow", "angry", "mid") + cho "But I {b}did{/b} try something close to what you described..." ("soft", "base", "base", "mid") + gen "You did?" ("grin", xpos="far_left", ypos="head") + cho "Yes, Sir.{w=0.3} I pretended to drop my books, and when I bent down to pick them up, I gave Cedric a good view of my bum." ("base", "narrow", "angry", "mid") + gen "So...{w=0.3} you did the \"pencil trick\"...{w=0.8} Just with books." ("base", xpos="far_left", ypos="head") + cho "I've put my own spin on it. It's different enough..." ("soft", "closed", "base", "mid") + gen "No it isn't." ("base", xpos="far_left", ypos="head") + cho "In any case, I think it worked." ("open", "narrow", "raised", "R") + cho "He couldn't keep his eyes off my bum for the rest of classes!" ("base", "narrow", "angry", "mid") + gen "Well done, [cho_name]! You may leave now." ("grin", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("smile", "happyCl", "base", "mid") + + if cho_reputation < 3: # Points til 3. + $ cho_reputation += 1 + + # Cho leaves. + call cho_walk(action="leave") + + jump end_cho_event + + +label cc_pr_manipulate_boys_T1_E2: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" (face="annoyed", xpos="mid", ypos="base", trans=fade) + gen "[cho_name]! Do you have some good news for me?" ("angry", xpos="far_left", ypos="head") + cho "I'm afraid not this time, Sir." ("soft", "narrow", "worried", "mid") + gen "Why not? Tell me what happened..." ("base", xpos="far_left", ypos="head") + cho "Well, today I saw Cedric again down in the dungeons." ("open", "narrow", "worried", "R") + gen "{size=-2}(The dungeons? I like where this is going already!){/size}" ("grin", xpos="far_left", ypos="head") + cho "Before I approached him I removed my Ravenclaw tie, and unbuttoned the top of my blouse." ("open", "closed", "base", "mid") + gen "A very well thought out strategy, girl!" ("base", xpos="far_left", ypos="head") + cho "I thought it would be enough to get his attention." ("soft", "narrow", "raised", "mid") + gen "Which I assume you got straight away?" ("base", xpos="far_left", ypos="head") + cho "No, Sir. But somebody else's..." ("disgust", "narrow", "worried", "down", cheeks="blush") + gen "Intriguing!{w=0.3} Who else did you manage to snag?" ("grin", xpos="far_left", ypos="head") + cho "Professor Slughorn, Sir." ("mad", "base", "worried", "mid", cheeks="blush") + gen "Who?" ("base", xpos="far_left", ypos="head") + cho "{size=+4}Professor Slughorn!{/size}" ("scream", "closed", "angry", "mid", cheeks="blush", trans=hpunch) + cho "He -- once again -- had to stand in for professor Snape, who couldn't make it in time for his lecture." ("open", "narrow", "angry", "R") + gen "Snape is missing his classes? How often has this been happening?" ("base", xpos="far_left", ypos="head") + cho "Probably every other week or so." ("annoyed", "narrow", "raised", "R") + gen "{size=-2}(Slacker...){/size}" ("base", xpos="far_left", ypos="head") + cho "Anyway...{w=0.3} Slughorn sort of crossed paths with me when I was about to confront Cedric..." ("open", "narrow", "worried", "mid") + cho "He came out of nowhere!" ("soft", "wide", "base", "mid") + cho "And he stood so close, he could see right down my cleavage!" ("disgust", "narrow", "worried", "down", cheeks="blush") + gen "{size=-2}(What a lucky git!){/size}" ("angry", xpos="far_left", ypos="head") + cho "I couldn't move a single muscle! It was like I was frozen in place!" ("soft", "narrow", "worried", "R") + cho "What if something like that would happen during the game?!" ("soft", "narrow", "worried", "mid") + gen "You're right. That could be an issue..." ("base", xpos="far_left", ypos="head") + cho "And the worst thing is, he just kept staring!" ("clench", "happyCl", "worried", "mid", cheeks="blush") + gen "And then? What happened?" ("base", xpos="far_left", ypos="head") + cho "He commended me about how well I did in my last potion lesson with him, then awarded Ravenclaw five house points for my efforts." ("soft", "narrow", "angry", "mid") + gen "Sounds like a nice guy..." ("base", xpos="far_left", ypos="head") + cho "But Sir, I ruined my potion during the last lesson I had with him!" ("quiver", "narrow", "worried", "mid", cheeks="blush") + cho "The only reason he gave me those points, is because I let him stare down my shirt!" ("disgust", "narrow", "worried", "down", cheeks="blush") + cho "I feel so dirty because of it..." ("disgust", "happyCl", "worried", "down", cheeks="blush") + gen "You shouldn't feel dirty...{w=0.6} Maybe only \"a little\" dirty, if anything..." ("base", xpos="far_left", ypos="head") + cho "I'm sorry, Sir.{w=0.3} May I have permission to leave?" ("soft", "narrow", "worried", "mid") + gen "Permission granted...{w=0.3} But try to be more effective next time." ("base", xpos="far_left", ypos="head") + cho "I will, Sir." ("open", "narrow", "worried", "down") + cho "Have a nice day." ("soft", "narrow", "worried", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 3: # Points til 3. + $ cho_reputation += 1 + + jump end_cho_event + + +label cc_pr_manipulate_boys_T1_E3: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" (face="happy", xpos="mid", ypos="base", trans=fade) + gen "So? How did it go?" ("base", xpos="far_left", ypos="head") + cho "Very well, Sir!" (mouth="smile", face="happy") + gen "Yeah? Tell me about it!" ("grin", xpos="far_left", ypos="head") + cho "I ran into Cedric on my way to the library...{w} Literally!" ("soft", "wide", "base", "mid") + cho "I bumped into him and hit my head pretty hard..." ("soft", "narrow", "worried", "mid") + gen "You poor thing..." ("base", xpos="far_left", ypos="head") + cho "It's nothing, Sir. I'm more than capable at enduring pain!" ("soft", "narrow", "angry", "R") + gen "A useful skill to have, I can imagine..." ("base", xpos="far_left", ypos="head") + cho "I've grown to be quite tough -- and resistant to all sorts of pain -- after years of playing Quidditch..." ("mad", "narrow", "angry", "mid") + call play_sound("gulp") + gen "*gulp!*" ("angry", xpos="far_left", ypos="head") + cho "Anyway... Cedric helped me back up on my feet." ("soft", "narrow", "base", "R") + cho "But before he could even apologise, I kissed him." ("base", "narrow", "base", "mid", cheeks="blush") + cho "It just... happened..." ("clench", "narrow", "worried", "downR", cheeks="blush") + gen "Well done, girl!" ("base", xpos="far_left", ypos="head") + cho "It was really nice, though." ("soft", "narrow", "base", "mid") + cho "He still is a really good kisser!" ( face="horny") + cho "Compared to most of the others I had..." ("base", "narrow", "base", "mid") + gen "!!!" ("angry", xpos="far_left", ypos="head") + cho "Anyhow, I should get going." ("open", "base", "base", "R") + cho "It's getting late..." ("soft", "base", "worried", "mid") + gen "Of course. You are dismissed." ("base", xpos="far_left", ypos="head") + cho "Good night, [cho_genie_name]." ( face="happy") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 3: # Points til 3. + $ cho_reputation += 1 + + jump end_cho_event + + + +### Tier 2 (pre Slytherin) ### + +label cc_pr_manipulate_boys_T2_intro_E1: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "narrow", "worried", "mid", xpos="mid", ypos="base", trans=fade) + gen "Good evening [cho_name]... How did today's task go?" ("base", xpos="far_left", ypos="head") + cho "I can't believe you convinced me to do this!" ("disgust", "narrow", "worried", "mid") + gen "So...{w=0.3} badly I take it?" ("base", xpos="far_left", ypos="head") + cho "No, it went perfectly..." ("annoyed", "narrow", "angry", "mid") + gen "So why the face?" ("base", xpos="far_left", ypos="head") + cho "Well, I did as you suggested.{w=0.6} I left a note for them to meet me alone after class." ("annoyed", "base", "worried", "downR") + gen "Great, so did they show?" ("base", xpos="far_left", ypos="head") + cho "Yes... apparently they could read after all... And they met with me after the lesson." ("soft", "narrow", "worried", "R") + cho "Once everyone had left and we were alone in the corridor. I didn't really know how to go about it." ("quiver", "narrow", "worried", "mid", cheeks="blush") + cho "They must have felt how awkward I was as I approached them...{w=0.8} Or they had literally never had any woman approach them before." ("quiver", "base", "worried", "mid", cheeks="blush") + gen "So they didn't get that you were coming onto them?{w=0.6} Surely they can't be that thick..." ("base", xpos="far_left", ypos="head") + cho "No, sir. They got it alright...{w=0.6} perhaps a little too well." ("annoyed", "base", "worried", "down", cheeks="blush") + cho "Or they're just used to treating those Slytherin skanks as their personal squeeze toys..." ("annoyed", "narrow", "angry", "R") + gen "So, what happened?" ("base", xpos="far_left", ypos="head") + cho "I came onto them a little bit...{w=0.6} Told them how impressed I was when watching their practice match against Gryffindor." ("open", "closed", "base", "mid") + gen "Boosting their ego... Good idea." ("base", xpos="far_left", ypos="head") + cho "Thanks." ("soft", "narrow", "base", "downR") + cho "I couldn't stand the idea of complimenting them on their looks, so instead I told them how impressed I was with their pure strength...{w=0.8} which technically isn't a lie." ("horny", "narrow", "worried", "down", cheeks="blush") + gen "Understandable... but what about making them go a bit easier on you during the game itself?" ("base", xpos="far_left", ypos="head") + cho "I'm getting to it..." ("open", "happyCl", "worried", "mid") + cho "So, I tried my best to put on a charming voice, and asked if there was anything I could do to persuade them to go easy on me..." ("soft", "narrow", "base", "R") + cho "And of course they had no clue what I was getting at...{w=0.4} Those knuckleheads just do whatever Draco tells them to do." ("soft", "narrow", "base", "mid") + gen "Sounds like trying to make a cat understand how to bark." ("base", xpos="far_left", ypos="head") + cho "Exactly..." ("annoyed", "narrow", "worried", "R") + cho "I was a bit frustrated at that point, and running out of options on how I could even make my intentions clear to them..." ("soft", "narrow", "worried", "mid") + cho "So I lifted my skirt a bit to show them my panties." ("soft", "happyCl", "worried", "mid", cheeks="heavy_blush") + gen "You go girl!" ("grin", xpos="far_left", ypos="head") + cho "Well, that's where I messed up...{w=0.6} They took it as an invitation and squeezed my butt cheeks quite hard and painfully." ("quiver", "narrow", "worried", "mid", cheeks="blush") + gen "Ouch, then what happened?" ("base", xpos="far_left", ypos="head") + cho "I pushed them away of course! I won't just let them grope me as they please!" ("open", "wide", "base", "mid") + cho "But...{w=0.3} I did tell them right after -- if they're kind to me during the game -- that I'll reward them handsomely for it..." ("horny", "narrow", "base", "downR", cheeks="blush") + cho "Not that I have any intentions to do so..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Of course not..." ("base", xpos="far_left", ypos="head") + gen "And what about the butt squeeze?" ("grin", xpos="far_left", ypos="head") + cho "What about it, sir?" ("soft", "wide", "base", "mid", cheeks="blush") + gen "Did you like it?" ("grin", xpos="far_left", ypos="head") + cho "Sir! They're Slytherins!" ("angry", "wide", "base", "mid", cheeks="blush") + gen "That's not what I asked." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "angry", "mid") + cho "Can I please go now, Sir?{w} I've done what you asked of me." ("soft", "narrow", "angry", "R") + gen "Yes, [cho_name]." ("base", xpos="far_left", ypos="head") + gen "You've done a great job today getting closer to beating those pesky Slytherins." ("base", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("base", "narrow", "base", "mid") + gen "If you remind them of your meeting during the match, then I'm certain their desire to win... will wash away." ("base", xpos="far_left", ypos="head") + cho "*Hmph*..." ("horny", "narrow", "base", "downR", cheeks="blush") + cho "I'll do my best." ("soft", "narrow", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 9: # Points til 9. + $ cho_reputation += 1 + + jump end_cho_event + + +label cc_pr_manipulate_boys_T2_E1: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "narrow", "base", "mid", xpos="mid", ypos="base", trans=fade) + pause .5 + cho "Sir, I managed to corner their seeker when he came out of the boys bathroom." ("soft", "narrow", "base", "mid") + cho "One of the only times those thugs weren't hanging around with him." ("soft", "narrow", "base", "down") + gen "Him?" ("base", xpos="far_left", ypos="head") + cho "Malfoy..." ("soft", "narrow", "worried", "mid") + cho "I cornered him and pushed him back into the bathroom." ("annoyed", "narrow", "base", "R") + gen "That's against the school rules, Miss Chang..." ("base", xpos="far_left", ypos="head") + cho "But I thought--" ("soft", "base", "worried", "mid") + gen "Forget I just said that..." ("base", xpos="far_left", ypos="head") + gen "Please continue." ("grin", xpos="far_left", ypos="head") + cho "Oh, well... I asked him if he had ever touched a Quidditch player's ass before." ("soft", "base", "base", "R") + cho "And before he could answer -- I pushed him up onto the wall, and put his hand around my waist -- right on my butt cheeks!" ("base", "narrow", "angry", "mid") + gen "Impressive!" ("grin", xpos="far_left", ypos="head") + gen "And what was his reaction?" ("base", xpos="far_left", ypos="head") + cho "At first he was mostly surprised by the circumstance..." ("soft", "base", "base", "R") + cho "But then I clenched my cheeks so he could get a good feel of what a real athlete feels like." ("smile", "narrow", "angry", "mid") + cho "When that happened he went from surprised to shocked." ("base", "narrow", "angry", "mid") + cho "You should have seen it.{w=0.6} I was actually not as repulsed as I thought I might be." ("horny", "narrow", "base", "mid") + cho "It was quite thrilling actually." ("base", "narrow", "angry", "mid") + gen "Why wouldn't you be, you've worked hard on your body." ("base", xpos="far_left", ypos="head") + gen "Now you're starting to see some of the benefits." ("base", xpos="far_left", ypos="head") + cho "Yeah... yeah! You're right!" ("soft", "wide", "base", "mid") + gen "And he's not going to forget it.{w=0.6} I'm sure the snitch will be the last thing on his mind during the upcoming game!" ("base", xpos="far_left", ypos="head") + cho "You know..." ("soft", "base", "base", "R") + cho "You're smarter than I gave you credit for... you've not been wrong so far..." ("annoyed", "base", "base", "R") + gen "That's why I'm the headmaster." ("grin", xpos="far_left", ypos="head") + cho "Will that be all?" ("soft", "base", "base", "mid") + gen "Yes [cho_name], good work today!" ("base", xpos="far_left", ypos="head") + cho "Thanks!" ("base", "base", "base", "mid") + gen "Have a good night..." ("base", xpos="far_left", ypos="head") + cho "Good night, [cho_genie_name]." ("smile", "narrow", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 9: # Points til 9. + $ cho_reputation += 1 + + jump end_cho_event + + +label cc_pr_manipulate_boys_T2_intro_E2: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "narrow", "base", "mid", xpos="mid", ypos="base", trans=fade) + pause .5 + gen "Back already? How did it go?" ("base", xpos="far_left", ypos="head") + cho "Not too great this time, [cho_genie_name]." ("soft", "narrow", "worried", "R") + gen "No? What happened?" ("base", xpos="far_left", ypos="head") + cho "Nothing, actually. I didn't see any of their team members all day. Not even at the Quidditch pitch..." ("annoyed", "narrow", "worried", "mid") + gen "Odd... Were they hiding from you?" ("base", xpos="far_left", ypos="head") + cho "I believe they were, Sir..." ("soft", "closed", "base", "mid") + gen "So, are they afraid of confronting you face to face? Why are they avoiding you?" ("grin", xpos="far_left", ypos="head") + cho "I have reason to believe that they were observing me all day." ("soft", "narrow", "angry", "mid") + gen "They were stalking you?" ("base", xpos="far_left", ypos="head") + cho "You could say that." ("annoyed", "base", "base", "R") + cho "I swear I could see Malfoy's blonde head around a corner at one point..." ("soft", "narrow", "angry", "downR") + cho "But when I was about to confront them, I heard them running off..." ("soft", "narrow", "angry", "mid") + cho "Cowards..." ("angry", "narrow", "angry", "mid") + gen "I think this is a good thing, [cho_name]!" ("base", xpos="far_left", ypos="head") + cho "You do?" ("soft", "wide", "base", "mid") + gen "The fact that they're following you..." ("base", xpos="far_left", ypos="head") + gen "It proves that they are weak!{w} They are obsessed with you!" ("angry", xpos="far_left", ypos="head") + cho "You think so?" ("annoyed", "base", "raised", "mid") + gen "Yes! As long as you keep teasing them." ("base", xpos="far_left", ypos="head") + gen "They won't be able to keep focus on anything else..." ("base", xpos="far_left", ypos="head") + gen "Except your perfect bod!" ("grin", xpos="far_left", ypos="head") + cho "I'll do my best, Sir." ("base", "base", "base", "mid") + gen "You may go now, [cho_name]. Nice work!" ("base", xpos="far_left", ypos="head") + cho "Thank you, [cho_genie_name]!" ("smile", "base", "base", "R") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 9: # Points til 9. + $ cho_reputation += 1 + + jump end_cho_event + + +label cc_pr_manipulate_boys_T2_intro_E3: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "narrow", "base", "mid", xpos="mid", ypos="base", trans=fade) + pause .5 + gen "[cho_name], how was your day?" ("base", xpos="far_left", ypos="head") + gen "Were you successful this time?" ("base", xpos="far_left", ypos="head") + cho "Sir, I believe they are onto me!" ("angry", "narrow", "worried", "mid") + gen "Who are... they?" ("base", xpos="far_left", ypos="head") + cho "Malfoy and his gang, Sir." ("soft", "base", "base", "R") + cho "They confronted me, outside the girl's bathroom." ("angry", "narrow", "worried", "down", cheeks="blush") + gen "How very rude of them." ("angry", xpos="far_left", ypos="head") + cho "I'm just glad they didn't follow me inside, actually..." ("soft", "base", "worried", "mid", cheeks="blush") + gen "But they're boys! They aren't allowed in there!" ("base", xpos="far_left", ypos="head") + cho "Don't underestimate them, [cho_genie_name]." ("soft", "closed", "base", "mid") + cho "I doubt that anything would stop them from breaking into a girl's most private place..." ("soft", "narrow", "angry", "mid") + gen "They are ruthless!" ("angry", xpos="far_left", ypos="head") + gen "What exactly did they want from you?" ("base", xpos="far_left", ypos="head") + cho "They questioned me..." ("annoyed", "base", "worried", "R") + cho "About what I'm up to. What my plan is. Why I'm acting...{w=0.8} strangely." ("soft", "narrow", "worried", "downR", cheeks="blush") + gen "Strangely? In what way?" ("base", xpos="far_left", ypos="head") + cho "Typically, girls from other houses don't talk to boys from Slytherin..." ("soft", "happyCl", "worried", "mid", cheeks="blush") + cho "Not to mention flirt with them!" ("mad", "narrow", "worried", "down", cheeks="heavy_blush") + gen "So? What did you do?" ("base", xpos="far_left", ypos="head") + cho "I panicked, [cho_genie_name]!" ("clench", "happyCl", "worried", "mid", cheeks="heavy_blush") + cho "I tried to get out of the situation, although in my haste the only solution I could think of was to..." ("soft", "narrow", "base", "downR", cheeks="blush") + gen "Yes?" ("base", xpos="far_left", ypos="head") + cho "Flash them, Sir. I flashed them my breasts!" ("soft", "narrow", "worried", "mid", cheeks="blush") + gen "Nice!" ("grin", xpos="far_left", ypos="head") + cho "I'm sorry, Sir.{w=0.6} I shouldn't have done it!" ("disgust", "narrow", "worried", "down", cheeks="heavy_blush") + gen "And what was their reaction?" ("grin", xpos="far_left", ypos="head") + cho "I don't know... They were surprised?" ("angry", "wink", "raised", "mid", cheeks="blush") + cho "I closed my eyes through most of it, and then I ran off..." ("soft", "base", "worried", "down", cheeks="blush") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + cho "Did I go too far, [cho_genie_name]?" ("soft", "narrow", "worried", "mid", cheeks="blush") + gen "No girl, you did great!" ("grin", xpos="far_left", ypos="head") + gen "You successfully got yourself out of an intricate situation." ("base", xpos="far_left", ypos="head") + gen "You improvised, just as I taught you." ("base", xpos="far_left", ypos="head") + cho "Thank you, Sir." ("base", "narrow", "worried", "mid", cheeks="blush") + cho "But what would you suggest I do next time something like this happens?" ("soft", "narrow", "worried", "mid") + gen "Trust your instincts, it worked once didn't it?" ("base", xpos="far_left", ypos="head") + gen "Try it again. Show them your breasts, and see what effects it has on them..." ("base", xpos="far_left", ypos="head") + cho "Show them my breasts?! But I can't possibly do that!" ("clench", "wide", "base", "mid", cheeks="blush") + gen "Why not? Didn't you just do that?" ("base", xpos="far_left", ypos="head") + gen "They {b}have{/b} seen your tits, haven't they?" ("base", xpos="far_left", ypos="head") + cho "My tits?!" ("soft", "wide", "base", "mid", cheeks="heavy_blush") + cho "*Ehm*... I mean-- I guess they have seen them now but..." ("soft", "base", "worried", "downR", cheeks="blush") + gen "Remember why we are doing this, girl! You need to get into their minds!" ("angry", xpos="far_left", ypos="head") + gen "If they want to see your breasts again, or any other part of your body, you show it to them!" ("base", xpos="far_left", ypos="head") + cho "But, Sir!" ("mad", "closed", "worried", "mid", cheeks="blush") # Embarrassed + gen "Do as I say, [cho_name]!" ("base", xpos="far_left", ypos="head") + gen "Your mission, should you choose to accept it, is to please them!{w} No matter the cost!" ("angry", xpos="far_left", ypos="head") + cho "What?!" ("soft", "wide", "base", "mid") + gen "For now, you are dismissed." ("base", xpos="far_left", ypos="head") + cho "Sir!" ("angry", "base", "angry", "mid") + gen "Dismissed!{w} Now go to your dorm..." ("angry", xpos="far_left", ypos="head") + cho "Fine..." ("annoyed", "narrow", "angry", "mid") # Annoyed + cho "Good night, [cho_genie_name]." ("soft", "narrow", "angry", "mid") # Angry + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 9: # Points til 9. + $ cho_reputation += 1 + + jump end_cho_event + + +label cc_pr_manipulate_boys_T2_E3: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "narrow", "base", "mid", xpos="mid", ypos="base", trans=fade) + pause .5 + gen "[cho_name]! You're back." ("grin", xpos="far_left", ypos="head") + cho "(...)" ("annoyed", "narrow", "angry", "down") # Annoyed + gen "How was your day? Anything exciting to tell me?" ("grin", xpos="far_left", ypos="head") + cho "I-- *Ehm*..." ("soft", "narrow", "base", "down") + cho "I did what you asked me to..." ("soft", "narrow", "worried", "mid") + gen "Yes?" ("grin", xpos="far_left", ypos="head") + cho "I... flashed them..." ("mad", "closed", "worried", "mid") + gen "You showed them your tits again?!" ("angry", xpos="far_left", ypos="head") + cho "What? No!" ("soft", "wide", "base", "mid") + gen "But you just said--" ("base", xpos="far_left", ypos="head") + cho "They... didn't want to see them..." ("annoyed", "narrow", "angry", "downR", cheeks="blush") + gen "Oh..." ("base", xpos="far_left", ypos="head") + gen "(Could it be that they aren't into girls?)" ("base", xpos="far_left", ypos="head") + cho "I was on my way to the Quidditch pitch, somewhere close to the library when they ambushed me..." ("soft", "narrow", "base", "R") + gen "An ambush?!" ("angry", xpos="far_left", ypos="head") + cho "I tried to be nice to them, even flirt a bit, but I just couldn't!" ("soft", "narrow", "worried", "mid") + cho "It's hard enough to deal with one of those brutes, but three at the same time?!" ("angry", "wide", "base", "mid") + gen "There are girls that could handle that with ease..." ("base", xpos="far_left", ypos="head") + cho "Sir?" ("soft", "base", "raised", "mid") + gen "Nothing... go on..." ("base", xpos="far_left", ypos="head") + cho "They started mocking me... About what I did last time. Called me a slut, among other things..." ("soft", "narrow", "angry", "R") + cho "Even threatened to report it as indecent behaviour..." ("angry", "narrow", "angry", "downR") + cho "I was about to lash back as they were really starting to annoy me..." ("angry", "narrow", "worried", "mid") + cho "But then I remembered what you told me." ("annoyed", "narrow", "base", "mid") + cho "That I should do my best to be nice to them... and... try and please them..." ("annoyed", "base", "worried", "down") + gen "So? What did you do?" ("base", xpos="far_left", ypos="head") + cho "I asked if they liked it..." ("mad", "happyCl", "worried", "mid", cheeks="blush") + gen "Liked what?" ("grin", xpos="far_left", ypos="head") + cho "Seeing my breasts, Sir." ("soft", "narrow", "worried", "mid", cheeks="blush") + cho "Instead of insulting them, I begged them not to report me to a teacher -- and in return -- I'd let them see them again!" ("soft", "narrow", "worried", "R", cheeks="blush") + gen "And then?" ("grin", xpos="far_left", ypos="head") + cho "They laughed at me!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + cho "Started mocking my breasts even... Calling them small..." ("annoyed", "narrow", "angry", "downR", cheeks="blush") + gen "How foolish of those boys..." ("base", xpos="far_left", ypos="head") + cho "Well, I had to show them something else instead..." ("soft", "narrow", "worried", "mid", cheeks="blush") + cho "After all, they asked for it." ("annoyed", "narrow", "worried", "down", cheeks="blush") + gen "Intriguing..." ("angry", xpos="far_left", ypos="head") + cho "They asked to see my bum, Sir!" ("soft", "narrow", "angry", "mid") + gen "I see, they are men of culture..." ("grin", xpos="far_left", ypos="head") + cho "I turned around and lowered my skirt for them..." ("annoyed", "base", "base", "down") + gen "Sweet!" ("grin", xpos="far_left", ypos="head") + gen "And how did they react to it?" ("base", xpos="far_left", ypos="head") + cho "It seemed like they enjoyed it, Sir." ("soft", "closed", "base", "mid") + cho "I mean, who wouldn't... I have a great butt." ("soft", "narrow", "angry", "R") + gen "Yes indeed!" ("base", xpos="far_left", ypos="head") + cho "They did ask why I keep wearing a skirt to school, though." ("annoyed", "base", "raised", "mid") + cho "Said that it would look a lot better in trousers...{w=0.6} or some tight leggings..." ("annoyed", "base", "base", "downR") + gen "They're not wrong... you would look great in some leggings!" ("base", xpos="far_left", ypos="head") + cho "Anyway, I left before they had a chance to touch it..." ("annoyed", "narrow", "base", "mid") + cho "The last thing I want is their grimy hands on it." ("annoyed", "narrow", "angry", "R") + gen "Well, I believe you made the best out of the situation!" ("base", xpos="far_left", ypos="head") + cho "I think so too, [cho_genie_name]!" ("base", "base", "base", "mid") + gen "You may leave now. Exceptionally good work, [cho_name]!" ("angry", xpos="far_left", ypos="head") + cho "Thank you." ("smile", "base", "base", "R") + gen "Dismissed." ("base", xpos="far_left", ypos="head") + cho "Good night, Sir." ("base", "base", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 9: # Points til 9. + $ cho_reputation += 1 + + jump end_cho_event + + +label cc_pr_manipulate_boys_T3_twins: + + # Setup + $ cho_outfit_last.save() # Save player outfit + $ cho.strip("all") + $ cho.set_body_hue(200) + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + stop music fadeout 1.0 + gen "Back so soo--" ("base", xpos="far_left", ypos="head") + + cho "" (face="angry", xpos="mid", ypos="base", trans=fade) + + menu: + "\"*Ha-ha-ha-ha*\"": + call play_music("cho") + + gen "{i}I'm blue, daba dee bada die, {size=-2}daba dee daba die,{/size} {size=-4}daba dee bada die,{/size} {size=-6}daba dee daba die........{/size}{/i}" ("grin", xpos="far_left", ypos="head") + cho "*grr*." ("clench", "wide", "angry", "mid") + gen "*Ahem*...{w=0.4} I mean... Oh, no... What happened?" ("base", xpos="far_left", ypos="head") + + "\"Feeling blue today?\"": + call play_music("cho") + + cho "Oh? What gave it away?" ("soft", "base", "angry", "mid") + cho "My face?" ("clench", "base", "angry", "mid") + gen "Something like that." ("grin", xpos="far_left", ypos="head") + gen "So, what happened?" ("base", xpos="far_left", ypos="head") + + "\"What the hell happened?\"": + call play_music("cho") + + gen "Didn't expect to see a talking blueberry today!" ("grin", xpos="far_left", ypos="head") + gen "Or are you a bilberry?" ("base", xpos="far_left", ypos="head") + gen "Or a gummiberry?" ("grin", xpos="far_left", ypos="head") + gen "Or maybe even a--" ("grin", xpos="far_left", ypos="head") + cho "Could you start acting serious for just one moment?!" ("clench", "wide", "angry", "mid") + gen "I'm berry serious." ("grin", xpos="far_left", ypos="head") + cho "*urghhhh*! I can't believe you!" ("disgust", "base", "angry", "mid") # Angry noises + gen "Alright, alright. Tell me what happened." ("base", xpos="far_left", ypos="head") + + cho "What does it look like what happened?" ("upset", "base", "angry", "down") + gen "Well, to me it looks like you caught a case of the smurfs." ("grin", xpos="far_left", ypos="head") + cho "Those bloody twins!" ("angry", "base", "angry", "downR") + cho "They tricked me into eating one of their darn sweets!" ("open", "base", "angry", "mid") + cho "You should lock those two up..." ("mad", "base", "angry", "mid") + gen "I wish I could've been there..." ("grin", xpos="far_left", ypos="head") + cho "WHAT?" ("clench", "wide", "angry", "mid") + gen "To stop them I mean!" ("angry", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "angry", "mid") + gen "So, why did you come straight to me and not go to your dorm?" ("base", xpos="far_left", ypos="head") + cho "And pass through my common room?" ("soft", "base", "angry", "mid") + cho "No thank you... your office was the closest thing to their stupid shop." ("clench", "base", "angry", "R") + if not item_store_intro_done: + gen "Shop? What shop?" ("base", xpos="far_left", ypos="head") + cho "Are you kidding me? Surely you must know about them and their shady businesses." ("soft", "base", "angry", "mid") + gen "I have no clue what you're talking about." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "base", "base", "down") + cho "Don't you have any spare robes or anything?" ("open", "base", "worried", "mid") + gen "I suppose I--" ("base", xpos="far_left", ypos="head") + + menu: + gen "(Actually, I might not get another opportunity like this...)" ("base", xpos="far_left", ypos="head") + "-Let her deal with it-": + gen "You'll figure something out." ("base", xpos="far_left", ypos="head") + cho "What!?" ("open", "wide", "base", "mid") + cho "You want me to just go out there without any clothes on?" ("clench", "wide", "angry", "mid") + gen "Of course... seems like a great exercise." ("base", xpos="far_left", ypos="head") + cho "Exercise? How is this an exercise to you?" ("angry", "base", "angry", "down") + gen "An exercise in confidence, [cho_name]." ("base", xpos="far_left", ypos="head") + cho "You have got to be joking..." ("disgust", "wide", "base", "mid") + cho "So, you're not going to help me?" ("disgust", "base", "angry", "mid") + gen "This one's on you [cho_name]." ("base", xpos="far_left", ypos="head") + cho "*Grrrr*, Whatever..." ("angry", "base", "angry", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + $ cho_mood += 20 + + gen "She sure is a feisty one..." ("base", xpos="far_left", ypos="head") + + "-Offer to fetch her something-": + call cc_pr_manipulate_boys_twins_branch + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + $ cho.wear("all") + $ cho.set_body_hue(0) + + jump end_cho_event + +label cc_pr_manipulate_boys_T3_ron: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" (face="happy", xpos="mid", ypos="base", trans=fade) + + gen "Mission success?" ("base", xpos="far_left", ypos="head") + gen "Did you manage to sneak up on Rob?" ("base", xpos="far_left", ypos="head") + cho "Yes! It could not have gone better!" ("crooked_smile", "base", "base", "mid") + gen "Great, let's hear it." ("base", xpos="far_left", ypos="head") + cho "I found the perfect opportunity to approach him after practice as Hermione was arguing with Madam Hooch about some rule or another." ("smile", "base", "base", "R") + cho "So as she was busy, I went up and praised him on his excellent goal keeping." ("smile", "base", "raised", "mid") + cho "He was quite taken aback by this at first and I doubt he ever recie--" ("smile", "narrow", "raised", "R") + gen "Surely you didn't just compliment him... That won't be enough to annoy Miss Granger!" ("base", xpos="far_left", ypos="head") + cho "Of course not!" ("clench", "base", "raised", "mid") + cho "The goal was for him to check me out... Which I soon caught him doing." ("smile", "narrow", "base", "R") + gen "That boy could do with some lecturing!" ("base", xpos="far_left", ypos="head") + cho "I know!" ("soft", "base", "angry", "mid") + gen "Getting caught checking someone out that quickly..." ("base", xpos="far_left", ypos="head") + cho "Right..." ("open", "narrow", "base", "R") + cho "Anyhow, it was if he was trying to stare through my clothing and he was barely paying any attention." ("open", "narrow", "base", "down") + gen "Been there, done that..." ("base", xpos="far_left", ypos="head") + cho "Yeah, no wonder Hermione is so annoyed at him all the time..." ("annoyed", "narrow", "base", "L") + cho "It was at that point Madam Hooch turned and walked away from Hermione." ("open", "base", "base", "R") + cho "So without any warning I grabbed and planted Ron's hands on my breasts." ("crooked_smile", "narrow", "base", "mid") + gen "Nice..." ("base", xpos="far_left", ypos="head") + cho "He was so taken aback by this he just froze." ("crooked_smile", "closed", "base", "mid") + cho "You should've seen Hermione's expression as she turned and noticed us! It was if someone had flipped a switch in her brain." ("smile", "wide", "base", "mid") + gen "Jealousy no doubt..." ("base", xpos="far_left", ypos="head") + cho "Yeah right, as I said there's no way anything is going on between those two." ("smile", "narrow", "base", "R") + gen "I wasn't talking about...{w=0.4} Never mind..." ("base", xpos="far_left", ypos="head") + gen "Please, continue..." ("base", xpos="far_left", ypos="head") + cho "Before I could even blink she has rushed up next to us..." ("crooked_smile", "narrow", "base", "mid") + cho "And then she smacked Ron right across the face!" ("smile", "wide", "angry", "mid") + gen "*Hah*!" ("grin", xpos="far_left", ypos="head") + gen "I mean... How could she hit another student like that?!" ("angry", xpos="far_left", ypos="head") + cho "You don't have to pretend that you care..." ("angry", "narrow", "raised", "mid") + gen "I don't." ("base", xpos="far_left", ypos="head") + gen "What happened next?" ("base", xpos="far_left", ypos="head") + cho "She dragged him away, yelling her head off the whole time." ("smile", "narrow", "base", "R") + cho "I wouldn't be surprised if she's still going." ("grin", "narrow", "base", "mid") #smirk + gen "Excellent work!" ("base", xpos="far_left", ypos="head") + cho "Thank you." ("smile", "base", "base", "mid") #blushes + gen "Hopefully we can remind her about this during the game, spark that jealousy once more." ("base", xpos="far_left", ypos="head") + cho "If it annoys Hermione then I'm all for it..." ("crooked_smile", "base", "base", "R") + gen "Anything else to report?" ("base", xpos="far_left", ypos="head") + cho "No, that's about it." ("soft", "base", "base", "downR") + gen "Great, then that will be all for today." ("base", xpos="far_left", ypos="head") + cho "Good night then..." ("base", "base", "base", "mid") + gen "Good night Miss Chang." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + +label cc_pr_manipulate_boys_T3_harry: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" (face="happy", xpos="mid", ypos="base", trans=fade) + + gen "Welcome back...{w=0.3} Mission success?" ("base", xpos="far_left", ypos="head") + cho "Yes!" ("crooked_smile", "base", "base", "mid") + cho "I've been stalk--{w=0.4} eh...{w=0.2} following them... And sure enough, I managed to find the perfect opportunity!" ("soft", "base", "base", "R") + cho "I was flying by the divination tower and noticed that Hermione and her friends were talking at one of the windows." ("open", "base", "base", "mid") + cho "With Ron and Hermione's backs turned towards me it was easy enough to grab Harry's attention." ("base", "narrow", "base", "R") + gen "Nice, gave him a bit of a show then I presume?" ("base", xpos="far_left", ypos="head") + cho "Of course..." ("crooked_smile", "closed", "base", "R") #smirk + cho "And I found something out." ("crooked_smile", "base", "raised", "mid") + cho "That boy has a broom fetish!" ("smile", "wide", "base", "mid") + gen "A what?" ("base", xpos="far_left", ypos="head") + cho "A broom fetish!{w} It's when you enjoy watching a girl play with herself using a broom." ("smile", "narrow", "raised", "mid") + gen "Oh...{w=0.4} Yeah, that makes more sense." ("base", xpos="far_left", ypos="head") + cho "So, I stuck my tongue out at him and then began grinding my hips against the wood." ("crooked_smile", "narrow", "base", "mid", cheeks="blush") + gen "You stuck your tongue out?" ("base", xpos="far_left", ypos="head") + gen "I thought it was Hermione that you were trying to antagonize?" ("base", xpos="far_left", ypos="head") + cho "Not like that!" ("open", "happyCl", "angry", "mid", cheeks="blush") + cho "I mean in a seductive way!" ("smile", "narrow", "base", "mid", cheeks="blush") + gen "Like how?" ("base", xpos="far_left", ypos="head") + cho "Like this!" ("open", "wink", "base", "mid", cheeks="blush") + cho "...{w=1.0}{nw}" ("open_tongue", "base", "base", "mid") + cho "..." ("open_wide_tongue", "narrow", "raised", "mid", cheeks="blush") #Cho sticks her tongue out and eyes look seductive." + gen "Whoa!" ("base", xpos="far_left", ypos="head") + cho "*U ikhe*?" ("open_wide_tongue", "wink", "raised", "mid", cheeks="blush") #Tongue still out + gen "Very much...{w=0.4} But what about Potter?" ("grin", xpos="far_left", ypos="head") + cho "Naturally he completely lost focus on their conversation and Hermione soon followed his gaze, noticing me out the window." ("crooked_smile", "closed", "base", "R", cheeks="blush") + cho "And after staring daggers at me, she yanked the boys away by their robes almost making them tumble down the stairs." ("crooked_smile", "narrow", "base", "mid") + gen "Looks like you have her well jealous at this point!" ("base", xpos="far_left", ypos="head") #This is a bit of a British slang + gen "Hopefully this should be enough to affect her during the finals." ("base", xpos="far_left", ypos="head") + cho "Let's hope so..." ("smile", "base", "angry", "R") + cho "If that's all, I'll head off for today." ("base", "base", "raised", "mid") + gen "Yes, that will be all." ("base", xpos="far_left", ypos="head") + cho "Good night then." ("smile", "base", "base", "mid") + gen "Good night, Miss Chang." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + + +label cc_pr_manipulate_boys_twins_branch: + # Genie visits Mafkin store to fetch some outfit for Cho + + if clothing_store_intro_done: + gen "Madam Mafkin should be able to sort you out." ("base", xpos="far_left", ypos="head") + cho "Mafkin? Don't you mean Malkin?" ("open", "base", "base", "mid") + gen "Pretty sure it's Mafkin." ("base", xpos="far_left", ypos="head") + gen "I'll go and check with her and see if there's anything she can spare for the moment..." ("base", xpos="far_left", ypos="head") + else: + gen "Surely this place has some sort of seamstress." ("base", xpos="far_left", ypos="head") + cho "I guess there's Malkin... or Mafkin, whatever her name is..." ("soft", "base", "base", "downR") + gen "Don't look at me, I don't remember all the names of every employee here." ("base", xpos="far_left", ypos="head") + cho "Of course you don't..." ("normal", "base", "base", "R") + gen "I'll go and check with her, see if there's anything she can spare for the moment..." ("base", xpos="far_left", ypos="head") + + cho "Please..." ("normal", "base", "base", "down", cheeks="blush") + cho "I just hope this colour will fade before you get back..." ("disgust", "base", "angry", "downR") + gen "I'll be back before you can say blueberry." ("base", xpos="far_left", ypos="head") + #TODO Genie walks past Cho to the door and turns to her, she turns as he stops + gen "But personally, I don't really see why it's such an issue." ("base", xpos="far_left", ypos="head") + gen "I've been known to turn blue and swell up as well and you don't see me complaining." ("base", xpos="far_left", ypos="head") + + cho "..." ("disgust", "base", "angry", "mid") + + gen "Give me some time, be right back." ("base", xpos="far_left", ypos="head") + + call blkfade + call play_music("stop") + centered "{size=+7}{color=#cbcbcb}{cps=7}...{/cps}{/color}{/size}{w=1.0}{nw}" + call room("clothing_store") + call play_music("clothing_store") + call hide_blkfade + + if not clothing_store_intro_done: + $ clothing_store_intro_done = True + ">You enter to see an old woman sewing together two pieces of long dark fabric." + ">The woman is dressed almost entirely in pink and has a warm, approachable air to her." + gen "Hello." ("base", xpos="far_left", ypos="head") + maf "Hello, Professor Dumbledore." + maf "What can I do for you? Would you like a new cloak, or do you require some alterations to an existing item?" + gen "Neither thank you, I'm just here to make a few inquiries." ("base", xpos="far_left", ypos="head") + maf "Of course sir, what can I help you with?" + gen "Firstly, what type of items do you sell?" ("base", xpos="far_left", ypos="head") + maf "Well, I'm a tailor. I make uniforms for the staff and students." + maf "I also perform alterations to existing items. This is mainly when a student goes through a growth spurt or gets a hole in their cloak." + gen "I see. Do you ever make custom orders?" ("base", xpos="far_left", ypos="head") + maf "Not really, although it is my passion. Most of what I'm asked to make are standard black robes." + gen "So you're interested in making unique outfits?" ("base", xpos="far_left", ypos="head") + maf "Absolutely, although I would have to order the fabrics in. I don't really have a range of colours at the moment." + maf "What did you have in mind?" + else: + gen "Miss Mafkin... or was it Malkin?" ("base", xpos="far_left", ypos="head") + maf "It's Mafkin, Dumbledore... we have been over this before." + gen "(I knew she was wrong!)" ("grin", xpos="far_left", ypos="head") + maf "Anything I can assist you with?" + maf "I just got this new plaid fabric in, I was thinking of turning it into a kilt." + maf "It's the perfect garment for letting the old family jewels get some fresh air." + gen "I'm good thank you." ("base", xpos="far_left", ypos="head") + maf "Then what can I do you for?" + + gen "Well... As it happens..." ("base", xpos="far_left", ypos="head") + gen "I'm in quite a pickle... A student was tricked into eating one of the weasel twins' sweets." ("base", xpos="far_left", ypos="head") + maf "A sweet?" + gen "Yes, or a candy... whatever you'd call it." ("base", xpos="far_left", ypos="head") + gen "The sweet in question made her turn blue and swell up like a balloon, ruining her clothes in the process." ("base", xpos="far_left", ypos="head") + maf "I see... that's an unfortunate situation indeed." + gen "So I require a Female Ravenclaw school uniform." ("base", xpos="far_left", ypos="head") + maf "Let's see...{w=0.5} Female Ravenclaw uniform...{w=0.4} Looks like I'm running a bit low on those at the moment, what size is she?" + gen "She's a C...{w=0.4} or maybe a B actually..." ("base", xpos="far_left", ypos="head") + maf "She's a... B, sir?" + gen "No-no, she's a Human. That's her size." ("base", xpos="far_left", ypos="head") + maf "I require her clothing measurements..." + gen "Oh, I see..." ("base", xpos="far_left", ypos="head") + maf "Or the name of this student, If I've had her fitted before I'll have it stored in my records." + gen "Cho Chang." ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/pageflip.ogg") + maf "Cho Chang..." + $ renpy.sound.play("sounds/pageflip.ogg") + maf "*Hmm*..." + maf "Ah yes, here she is..." + maf "Well, that's unfortunate..." + gen "You don't have any clothing her size?" ("base", xpos="far_left", ypos="head") + maf "I do, but none in Ravenclaw colours." + maf "She might have to go with one of the other house colours for now until I can get these ones fitted for her." + gen "That sure is unfortunate." ("base", xpos="far_left", ypos="head") + + # Setup + $ d_flag_01 = False + $ d_flag_02 = None + + label .choices: + + menu: + gen "In that case I'll have the..." ("base", xpos="far_left", ypos="head") + + "-Slytherin outfit-": + $ d_flag_02 = 1 + + maf "Are you sure?" + gen "Absolutely, she'll look great in green!" ("base", xpos="far_left", ypos="head") + gen "But just so I know... how long will it take to get the Ravenclaw outfit ready?" ("base", xpos="far_left", ypos="head") + + "-Gryffindor outfit-": + $ d_flag_02 = 2 + + maf "Are you sure?" + gen "Of course!" ("base", xpos="far_left", ypos="head") + gen "She's best friends with Miss Granger so I'm sure she wouldn't mind." ("base", xpos="far_left", ypos="head") + gen "But just so I know... how long will it take to get the Ravenclaw outfit ready?" ("base", xpos="far_left", ypos="head") + + "-Hufflepuff outfit-": + $ d_flag_02 = 3 + + maf "Are you sure?" + gen "Seems like the safest option all things considered." ("base", xpos="far_left", ypos="head") + gen "How long will it take to get the Ravenclaw outfit ready?" ("base", xpos="far_left", ypos="head") + + "-\"perfect\" Outfit-" if d_flag_01: + $ d_flag_02 = 4 + + maf "Are you sure?" + gen "Of course!" ("base", xpos="far_left", ypos="head") + gen "It looks as if it was made just for her." ("grin", xpos="far_left", ypos="head") + maf "Well, you're the judge here." + gen "One more thing, how long will it take to get the Ravenclaw outfit ready?" ("base", xpos="far_left", ypos="head") + + "-Ask for another option-" if not d_flag_01: + # Genie finds a smurfette costume + $ d_flag_01 = True + + gen "I don't think she'd be so keen on wearing another house's colours." ("base", xpos="far_left", ypos="head") + maf "Well, I don't recommend it but if that's the case you can have a look through the pile over there." + maf "I have a few miscellaneous pieces lying around that she could borrow for the time being." + maf "There's not a lot to pick from, but you can take anything you need from it." + gen "Great." ("base", xpos="far_left", ypos="head") + #TODO have his chibi turn and walk so you just see his back inside the screen and then display the next line - No can do, not implemented + # Rummage sound. + gen "*Hmm*... Doesn't seem to be a lot to pick from." ("base", xpos="far_left", ypos="head") + # Rummage sound. + gen "Now what could I get that would suit her?" ("base", xpos="far_left", ypos="head") + # Rummage sound. + gen "Hold on a second." ("base", xpos="far_left", ypos="head") + # Rummage sound. + gen "(Oh, this is just perfect... Although perhaps it's a bit mean...)" ("base", xpos="far_left", ypos="head") + gen "(Maybe I should just ask for one of the other house's clothing pieces instead...)" ("base", xpos="far_left", ypos="head") + #TODO genie chibi turns and walks back to normal position - No can do, not implemented + + jump .choices + + maf "I'll have it done and delivered by tomorrow morning." + gen "Great, that will be all then." ("base", xpos="far_left", ypos="head") + + call blkfade + + maf "Until next time..." + + # Add smurfette outfit to the shop if was not picked during the event + if not d_flag_01: + $ cho_outfit_smurfette.price = 100 + + call room("main_room") + call play_music("stop") + call gen_chibi("hide") + call cho_chibi(xpos="desk", ypos="base", flip=True) + call hide_blkfade + pause 1.0 + + call play_sound("door") + call gen_chibi("stand", "door", "base", flip=False) + with d3 + pause 0.3 + + gen "I'm back!" ("base", xpos="far_left", ypos="head") + call gen_walk("mid", "base") + call play_music("cho") + cho "Finally..." ("annoyed", "base", "angry", "mid", trans=d3) + + if not fire_in_fireplace: + cho "I've been freezing my butt off and I couldn't figure out how to light the fire." ("open", "base", "angry", "mid") + gen "Can't you use some spell for that?" ("base", xpos="far_left", ypos="head") + cho "Where do you think I keep my wand?" ("annoyed", "base", "angry", "mid") + gen "Well, most people hide it in their night stand or a drawer or something." ("base", xpos="far_left", ypos="head") + else: + cho "If it weren't for the fire in the fireplace, I'd freeze my butt off!" ("open", "base", "angry", "mid") + gen "Then what are you complaining about?" ("base", xpos="far_left", ypos="head") + cho "I don't like standing around stark naked..." ("soft", "base", "angry", "mid") + gen "{size=-2}Sure could've fooled me...{/size}" ("base", xpos="far_left", ypos="head") + + cho "Where's that outfit you were fetching for me?" ("upset", "base", "base", "mid") + + if d_flag_02 == 1: + # Slytherin + + gen "Got it right here, brings out the colour of your eyes for sure!" ("base", xpos="far_left", ypos="head") + + call blktone + call play_sound("cloth") + "> You hand the Slytherin uniform to Cho." + call hide_blktone + + cho "Such a charmer..." ("base", "base", "base", "R") + cho "I was worried that you'd pick out something--" ("open", "base", "base", "down") + cho "{size=+5}These are Slytherin colours!{/size}" ("open", "wide", "angry", "mid") + gen "They are?" ("base", xpos="far_left", ypos="head") + gen "That's unfortunate!" ("base", xpos="far_left", ypos="head") + cho "Why did you assume it would be a good idea..." ("clench", "base", "angry", "down") + cho "{size=+5}To get Slytherin colours!{/size}" ("angry", "base", "angry", "mid") #big text yelling + gen "She didn't have any spare Ravenclaw outfits." ("base", xpos="far_left", ypos="head") + cho "But why Slytherin..." ("disgust", "base", "angry", "downR") + + menu: + "{size=-3}\"If you don't like it you can go without any!\"{/size}": + cho "What!?" ("open", "wide", "angry", "mid") + gen "You heard me..." ("base", xpos="far_left", ypos="head") + gen "I went out of my way to fetch those clothes for you..." ("base", xpos="far_left", ypos="head") + gen "So you can take your Smurf looking ass and get out of my office." ("base", xpos="far_left", ypos="head") + cho "Fine!" ("clench", "base", "angry", "mid") + call cho_walk(action="leave", speed=2.0) + $ renpy.play('sounds/door_down.ogg') + with hpunch + gen "..." ("base", xpos="far_left", ypos="head") + $ cho_mood += 10 + + "{size=-3}\"It's not my fault, Some idiot picked that option!\"{/size}": + cho "What?" ("annoyed", "wide", "angry", "mid") + gen "It was decided by some unknown external force." ("base", xpos="far_left", ypos="head") + cho "That doesn't make any sense!" ("open", "base", "angry", "mid") + gen "I know!" ("base", xpos="far_left", ypos="head") + cho "..." ("upset", "base", "angry", "mid") + + $ cho.set_body_hue(0) + + cho "I thought you would know better than to pick a Slytherin uniform for me..." ("annoyed", "base", "angry", "downR", trans=d9) + gen "As I said, not my fault." ("base", xpos="far_left", ypos="head") + gen "Although, speaking of colour..." ("grin", xpos="far_left", ypos="head") + gen "You're not blue anymore." ("base", xpos="far_left", ypos="head") + cho "Thank Merlin for that..." ("clench", "base", "worried", "down") + cho "Just hand me those clothes..." ("annoyed", "base", "angry", "mid") + + show screen blkfade + with fade + $ cho.equip(cho_outfit_slyt) + $ renpy.sound.play("sounds/cloth_sound3.ogg") + cho "" ("upset", "base", "angry", "down") + pause .8 + hide screen blkfade + with fade + + cho "..." ("disgust", "base", "base", "down", cheeks="blush") + cho "This feels wrong..." ("clench", "base", "worried", "downR", cheeks="blush") + gen "I knew it!" ("grin", xpos="far_left", ypos="head") + gen "You look great in green!" ("grin", xpos="far_left", ypos="head") + cho "*Grrr*... I can't believe you!" ("clench", "base", "angry", "mid") + call cho_walk(action="leave", speed=2.0) + $ renpy.play('sounds/door_down.ogg') + with hpunch + $ cho_mood += 5 + + "\"Sorry...\"": + cho "..." ("normal", "wide", "base", "mid") + cho "(Well that's a first...)" ("soft", "base", "base", "R") #taken aback + gen "Sorry for going out of my way to help you!" ("base", xpos="far_left", ypos="head") + cho "*Sigh*" ("disgust", "base", "base", "down") + cho "Why did you think it would be a good idea to pick Slytherin colours..." ("annoyed", "base", "angry", "downR") #pout + gen "As I said, I thought they'd compliment your eyes..." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "angry", "down", cheeks="blush") + cho "Fine, since you almost apologized..." ("disgust", "base", "angry", "downR", cheeks="blush") + cho "Hand me those clothes." ("annoyed", "base", "angry", "mid", cheeks="blush") + + show screen blkfade + with fade + $ cho.equip(cho_outfit_slyt) + $ renpy.sound.play("sounds/cloth_sound3.ogg") + cho "" ("upset", "base", "angry", "down") + pause .8 + hide screen blkfade + with fade + + gen "See, they don't look that bad!" ("base", xpos="far_left", ypos="head") + cho "This feels wrong..." ("angry", "base", "worried", "downR", cheeks="blush") + gen "You look great in any colour!" ("base", xpos="far_left", ypos="head") + cho "That's not why..." ("normal", "base", "angry", "mid", cheeks="blush") + + $ cho.set_body_hue(0) + + cho "Thanks I guess." ("disgust", "base", "base", "down", trans=d9) + gen "Speaking of colour..." ("base", xpos="far_left", ypos="head") + gen "You're not blue anymore." ("base", xpos="far_left", ypos="head") + cho "Finally..." ("mad", "base", "base", "mid") + cho "Hopefully everyone's gone to bed by now and I can sneak my way past without anyone noticing." ("upset", "base", "base", "R") + cho "So, what do I do about my normal uniform?" ("open", "base", "base", "down") + gen "I've sorted it, Mafkin will have a new set delivered to your room in the morning." ("base", xpos="far_left", ypos="head") + cho "Oh..." ("open", "base", "base", "downR", cheeks="blush") + cho "Thanks..." ("upset", "base", "base", "downR") + cho "Good night then." ("normal", "base", "base", "mid") + call cho_walk(action="leave", speed=1.5) + $ cho_mood += 2 + + elif d_flag_02 == 2: + # Gryffindor + + gen "Got it right here!" ("base", xpos="far_left", ypos="head") + gen "She didn't have any Ravenclaw uniforms your size so I took the next best thing." ("base", xpos="far_left", ypos="head") + + call blktone + call play_sound("cloth") + "> You hand the Gryffindor uniform to Cho." + call hide_blktone + + cho "Next best--" ("annoyed", "base", "base", "mid") + cho "Is that a Gryffindor uniform?" ("open", "wide", "base", "mid") #shocked + gen "Yes, I knew you'd like it!" ("grin", xpos="far_left", ypos="head") + cho "I...{w=0.5} I don't like Gryffindor!" ("annoyed", "base", "angry", "downR", cheeks="blush") + gen "What... but I thought Hermione was like your bestie." ("angry", xpos="far_left", ypos="head") + cho "Bestie?" ("upset", "wide", "base", "mid") + cho "She...{w=0.4} is...{w=0.4} not!" ("clench", "wide", "angry", "mid", cheeks="blush") + gen "Oh..." ("base", xpos="far_left", ypos="head") + + menu: + "\"I could go back and fetch the Slytherin one instead\"": + cho "No!" ("angry", "wide", "base", "mid", cheeks="blush") + cho "I mean... it's fine... you've already gone out of your way." ("angry", "wide", "base", "downR") + gen "You sure? It's not that far--" ("base", xpos="far_left", ypos="head") + cho "Yes... just hand me the clothes." ("disgust", "base", "angry", "mid") + + show screen blkfade + with fade + $ cho.equip(cho_outfit_gryf) + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause .8 + hide screen blkfade + with fade + + cho "..." ("normal", "base", "base", "downR") + cho "I guess it's not that bad..." ("normal", "base", "base", "down", cheeks="blush") + cho "What do you think, do I pull off the red as well as...{w=0.6} Do I pull off the red?" ("open", "base", "base", "downR", cheeks="blush") + gen "Looks great!" ("base", xpos="far_left", ypos="head") + gen "They look a bit tight around the chest area, did I end up with a size too small?" ("base", xpos="far_left", ypos="head") + cho "Oh... no, it's fine... I'm just a bit cold still." ("horny", "base", "base", "down", cheeks="blush") #Embarrassed + gen "You do look a bit blue..." ("base", xpos="far_left", ypos="head") + cho "Wait, I'm still..." ("upset", "wide", "angry", "down") + + $ cho.set_body_hue(0) + + cho "...{w=0.5} Thank Merlin..." ("soft", "base", "base", "down", trans=d9) + cho "I'll be on my way then..." ("open", "base", "base", "R", cheeks="blush") + call cho_walk(xpos="door", speed=1.5) + cho "..." ("base", "base", "base", "down", cheeks="blush", flip=True, xpos="far_right", trans=d3) + cho "Good night..." ("open", "base", "base", "mid", cheeks="blush") + call cho_walk(action="leave") + + "\"I'm sure none of the Gryffindors will spot you\"": + cho "If that's the case then why wear any clothes at all?" ("angry", "base", "angry", "mid") + gen "That is an option..." ("base", xpos="far_left", ypos="head") + cho "No!" ("clench", "wide", "base", "mid", cheeks="blush") + cho "Give me those..." ("mad", "base", "base", "mid") + + show screen blkfade + with fade + $ cho.equip(cho_outfit_gryf) + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause .8 + hide screen blkfade + with fade + + gen "Actually, can I change my mi--" ("base", xpos="far_left", ypos="head") + cho "No-no, we're good!" ("mad", "base", "base", "R") + gen "But could you at least--" ("base", xpos="far_left", ypos="head") + cho "Nope, these will have to do..." ("angry", "base", "base", "L") + cho "Have a good night!" ("clench", "base", "base", "L") + call cho_walk(action="leave", speed=1.5) + + call gen_chibi(flip=True) + gen "Come ba--" ("base", xpos="far_left", ypos="head") + gen "Damn...{w=0.4} well at least she isn't angry." ("base", xpos="far_left", ypos="head") + + elif d_flag_02 == 3: + # Hufflepuff + + gen "Got it right here!" ("base", xpos="far_left", ypos="head") + gen "She didn't have any Ravenclaw uniforms your size so I went wish something mellow." ("base", xpos="far_left", ypos="head") + + call blktone + call play_sound("cloth") + "> You hand the Hufflepuff uniform to Cho." + call hide_blktone + + cho "Mellow?" ("annoyed", "base", "base", "mid") + cho "Wait, you don't mean..." ("disgust", "base", "base", "down") #Worried + cho "A Hufflepuff uniform!" ("clench", "wide", "base", "mid") #Shocked + gen "Sure is, I remembered how you can't get enough of those badgers!" ("base", xpos="far_left", ypos="head") + cho "I only dated one of them when the Tri-wizard tournament was happening..." ("annoyed", "base", "angry", "mid") + cho "And as you remembered, I used it to our advantage to win the match against them." ("clench", "base", "base", "mid") + gen "Sure did!" ("base", xpos="far_left", ypos="head") + cho "So, don't you think the Hufflepuffs would assume Cedric threw the match on purpose if they suddenly saw me wearing this?" ("angry", "base", "base", "downR") + + menu: + "\"So what?\"": + cho "So what?!?" ("open", "wide", "angry", "mid") + gen "You didn't have any problems using his weaknesses during the game so why do you care if he gets in trouble with his house?" ("base", xpos="far_left", ypos="head") + cho "That's different..." ("angry", "base", "angry", "mid") + gen "How is it different?" ("base", xpos="far_left", ypos="head") + gen "I'm sure his teammates weren't happy with him losing focus like that... fraternizing with the enemy..." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "base", "angry", "down") + gen "They might already think he threw it on purpose." ("base", xpos="far_left", ypos="head") + cho "Whatever, just give me the clothes." ("open", "base", "angry", "mid") + + show screen blkfade + with fade + $ cho.equip(cho_outfit_huff) + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause .8 + hide screen blkfade + with fade + + cho "I can't believe you turned this around on me like that... you're the one that made me do those things to begin with..." ("soft", "base", "angry", "downR") + gen "Don't hate the player, hate the game." ("base", xpos="far_left", ypos="head") + cho "..." ("upset", "base", "angry", "R") + cho "I'm leaving." ("upset", "base", "angry", "mid") + call cho_walk(action="leave", speed=1.5) + $ cho_mood+= 2 + + "\"That's true, maybe you should just head back naked...\"": + cho "What!?" ("disgust", "wide", "base", "mid") + gen "You heard me, make like a bee and buzz off!" ("base", xpos="far_left", ypos="head") + gen "And you better hurry up before those sweets wear off or you'll find it even harder to explain your current state." ("grin", xpos="far_left", ypos="head") + cho "But... surely you can't be serious!" ("open", "wide", "base", "mid", cheeks="blush") + gen "I am neither Shirley nor Sirius..." ("base", xpos="far_left", ypos="head") + cho "*Grrr*... I can't believe you!" ("clench", "base", "angry", "mid") + + call cho_walk(xpos="door", speed=1.5) + call cho_chibi(flip=True) + call gen_chibi(flip=True) + + cho "..." ("upset", "base", "angry", "down", flip=True, xpos="far_right", trans=d3) + gen "Tick-tock..." ("base", xpos="far_left", ypos="head") + cho "Fine!" ("clench", "base", "angry", "R") + + call cho_walk(action="leave") + $ renpy.play('sounds/door_down.ogg') + with hpunch + + $ cho_mood += 10 + gen "So ungrateful..." ("base", xpos="far_left", ypos="head") + + "\"I'm sure none of the Hufflepuffs will spot you\"": + cho "How can you be so sure about--" ("soft", "base", "angry", "downR") + cho "Actually, you're right...{w=0.3} You're a genius!" ("mad", "wide", "base", "mid") + gen "I am?" ("angry", xpos="far_left", ypos="head") + cho "Of course!" ("crooked_smile", "base", "base", "mid") + cho "You know this castle inside out, it's very unlikely any Hufflepuff student would be anywhere near the route to the Ravenclaw dorm." ("smile", "base", "base", "R") + gen "Oh yes... that's it!" ("grin", xpos="far_left", ypos="head") + gen "You know me, always got an ace up my sleeve!" ("base", xpos="far_left", ypos="head") + + $ cho.set_body_hue(0) + + cho "Thank you [cho_genie_name]..." ("base", "base", "base", "mid", trans=d9) + gen "Anything not to have my students \"feel blue\"." ("grin", xpos="far_left", ypos="head") + gen "Speaking of... Your skin is back to normal." ("grin", xpos="far_left", ypos="head") + cho "Very funny..." ("base", "base", "base", "down", cheeks="blush") #smile + cho "Let's try this on then..." ("open", "base", "base", "mid", cheeks="blush") + + show screen blkfade + with fade + $ cho.equip(cho_outfit_huff) + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause .8 + hide screen blkfade + with fade + + cho "So, how do I look?" ("soft", "base", "base", "down") + gen "Looking good!" ("base", xpos="far_left", ypos="head") + cho "I better be off then..." ("smile", "base", "base", "mid") + cho "Good night." ("base", "base", "base", "mid") + gen "Good night, [cho_name]." ("base", xpos="far_left", ypos="head") + call cho_walk(action="leave", speed=1.5) + + elif d_flag_02 == 4: + # Smurfette + + gen "Got it right here." ("base", xpos="far_left", ypos="head") + + call blktone + call play_sound("cloth") + "> You hand the clothes to Cho." + call hide_blktone + + cho "Thank you, I knew I could count on--" ("base", "base", "base", "mid") + cho "What is this?" ("open", "wide", "base", "down") + gen "I know right!" ("grin", xpos="far_left", ypos="head") + gen "I couldn't believe it when I found it. The perfect outfit for you!" ("grin", xpos="far_left", ypos="head") + cho "You... are you serious? You actually expect me to wear this?" ("disgust", "wide", "base", "mid") + gen "Wait, don't tell me you don't like it?" ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "base", "angry", "down") + cho "Why couldn't you pick up a normal school uniform like I asked you to?" ("clench", "base", "worried", "down") + gen "Just put it on already." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "angry", "down") + gen "Or you could just head back naked!" ("base", xpos="far_left", ypos="head") + cho "Fine!" ("clench", "base", "angry", "mid") + + show screen blkfade + with fade + $ cho.equip(cho_outfit_smurfette) + $ cho.equip(cho_hair_ponytail1) # Override hair + $ renpy.sound.play("sounds/cloth_sound3.ogg") + cho "" ("upset", "base", "angry", "down", cheeks="blush") + pause .8 + hide screen blkfade + with fade + + gen "Smurfabunga!" ("grin", xpos="far_left", ypos="head") + cho "..." ("upset", "base", "angry", "mid", cheeks="blush") #Looking livid #red cheeks + gen "I think some colour has started to return on your cheeks!" ("base", xpos="far_left", ypos="head") + gen "I also got you this wig." ("base", xpos="far_left", ypos="head") + cho "I am not wearing the wig!" ("clench", "wide", "angry", "mid") + cho "I can't believe you!" ("angry", "base", "angry", "down") + + call cho_walk(action="leave", speed=1.5) + $ renpy.play('sounds/door_down.ogg') + with hpunch + + gen "I'll just keep the wig for later then..." ("base", xpos="far_left", ypos="head") + $ cho_mood += 10 + call unlock_clothing(">Congratulations! You have unlocked a new outfit!", cho_outfit_smurfette) + + $ cho.equip(cho_outfit_last) + $ cho.set_body_hue(0) + + call gen_chibi("sit_behind_desk") + with fade + + return diff --git a/game/scripts/characters/cho/events/requests/manipulate_girls.rpy b/game/scripts/characters/cho/events/requests/manipulate_girls.rpy new file mode 100644 index 00000000..8c934ee8 --- /dev/null +++ b/game/scripts/characters/cho/events/requests/manipulate_girls.rpy @@ -0,0 +1,509 @@ + + +### Manipulate the enemy female Quidditch players ### + +### Start ### +label cc_pr_manipulate_girls_start: + + cho "" (xpos="right", ypos="base", trans=fade) + + if not cc_pr_manipulate_girls.is_event_complete(3, 1): # Completed Alicia Spinnet? + # Alicia Spinnet + + if not cc_pr_spy_girls.is_event_complete(3, 2): + # Return if player has not spied on Alicia just yet. + gen "Let’s try and manipulate the girls on the enemy team!" ("base", xpos="far_left", ypos="head") + cho "You're expecting me to just jump in blind?" ("angry", "base", "base", "mid") + cho "I don't know any of these girls, how do you expect me to manipulate them in any way without knowing what I'm dealing with?" ("annoyed", "wide", "base", "mid") + gen "Good point, perhaps we should consider spying on them a bit beforehand." ("base", xpos="far_left", ypos="head") + + cho "" (xpos="base", ypos="base", trans=fade) + + jump cho_requests_menu + + gen "I think it's time to manipulate the female members of the enemy team a bit and see if we can find some way to distract them during the game." ("base", xpos="far_left", ypos="head") + cho "And how do you suggest we do that?" ("annoyed", "base", "raised", "mid") + gen "Well, the Slytherin \"brutes\" seemed to think they had a pretty good chance to get with you during the last game." ("base", xpos="far_left", ypos="head") + cho "They're idiots though, I barely had to do anything." ("soft", "base", "base", "R") + gen "Which means it's even more important to try and entice those girls before the match itself..." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "base", "raised", "down") + gen "It's all about throwing them off their game, like you said... if the girls won't get thrown off by you wearing some outfit then maybe an emotional... bond... would be more appropriate." ("base", xpos="far_left", ypos="head") + cho "Don't you think we'd have an easier time focusing on the boys?" ("upset", "base", "base", "mid", cheeks="blush") + gen "Sometimes the hard route is the right one to take... you shouldn't dismiss it." ("base", xpos="far_left", ypos="head") + gen "(Since those girls sound freaky...)" ("grin", xpos="far_left", ypos="head") + cho "But Harry is the seeker and Ron is the keeper... wouldn't it be more useful if--" ("open", "wide", "base", "mid", cheeks="blush") + gen "I'm certain my reasoning is correct here, are you questioning your trainer?" ("base", xpos="far_left", ypos="head") + cho "..." ("upset", "base", "base", "R", cheeks="blush") + cho "No..." ("open", "base", "base", "R") + gen "Great, then off you go..." ("grin", xpos="far_left", ypos="head") + gen "Time to make your team proud!" ("grin", xpos="far_left", ypos="head") + gen "Pride is important!" ("grin", xpos="far_left", ypos="head") + cho "...{w}I suppose..." ("soft", "base", "base", "mid") + cho "Wish me luck..." ("horny", "base", "base", "mid") + gen "Good luck..." ("grin", xpos="far_left", ypos="head") + + elif not cc_pr_manipulate_girls.is_event_complete(3, 2): # Completed Katie Bell - Part 1? + # Katie Bell - Part 1 + + if not cc_pr_spy_girls.is_event_complete(3, 3): + # Return if player has not spied on Katie just yet. + gen "Let's try and manipulate--" ("base", xpos="far_left", ypos="head") + cho "I'm going to stop you right there..." ("soft", "base", "angry", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + cho "There's no way I'll try this again before I know more about the girls." ("annoyed", "base", "angry", "mid") + gen "Why? I thought it went great with the Spinnet girl!" ("base", xpos="far_left", ypos="head") + cho "She cornered me!" ("scream", "wide", "angry", "mid") + gen "And?" ("base", xpos="far_left", ypos="head") + cho "I'm not going to attempt the other two unless I know a bit more about them..." ("upset", "base", "angry", "R") + gen "Fine..." ("base", xpos="far_left", ypos="head") + + + cho "" (xpos="base", ypos="base", trans=fade) + + jump cho_requests_menu + + gen "One down, two to go..." ("base", xpos="far_left", ypos="head") + gen "I think it's time to manipulate one of the other Gryffindor girls." ("base", xpos="far_left", ypos="head") + cho "Who do you want me to target this time?" ("open", "base", "raised", "mid") + gen "Katie Bell!" ("base", xpos="far_left", ypos="head") + cho "So, we're still set on targeting the girls?" ("upset", "base", "raised", "mid") + gen "Of course, I'm sure we got but a taste last time...{w=0.4} No pun intended." ("grin", xpos="far_left", ypos="head") + cho "..." ("angry", "closed", "base", "mid") + gen "I hope you've remembered what you learned from her. This girl likes being treated rough so show some assertiveness with her and I'm sure she'll fall for you." ("base", xpos="far_left", ypos="head") + cho "Okay..." ("open", "narrow", "base", "down", cheeks="blush") #looking down a bit worried + gen "Assertiveness!" ("grin", xpos="far_left", ypos="head") + cho "..." ("clench", "base", "raised", "mid") #Changes from worried looking down to looking at genie + cho "Yes, I will!" ("mad", "base", "raised", "mid") + gen "Great, off you go!" ("grin", xpos="far_left", ypos="head") + + elif not cc_pr_manipulate_girls.is_event_complete(3, 3): # Completed Katie Bell - Part 2? + # Katie Bell - Part 2 + + # No return here since it's just a continuation of previous Katie event. + + gen "Follow that girl again!" ("base", xpos="far_left", ypos="head") + cho "Sir?" ("mad", "base", "raised", "mid") + gen "I mean... Today's mission is to follow that Bell girl again..." ("base", xpos="far_left", ypos="head") + cho "But... isn't one time enough?" ("disgust", "narrow", "base", "mid", cheeks="blush") + cho "My butt is still sore from last time..." ("clench", "narrow", "base", "downR", cheeks="blush") + gen "There can never be too much of a good thing." ("base", xpos="far_left", ypos="head") + cho "Fine..." ("open", "narrow", "base", "down", cheeks="blush") + gen "Excellent, make sure to come back with an extensive report as usual B." ("base", xpos="far_left", ypos="head") + cho "Got it..." ("soft", "base", "base", "mid", cheeks="blush") + + elif not cc_pr_manipulate_girls.is_event_complete(3, 4): # Completed Angelina Johnson? + # Angelina Johnson + + if not cc_pr_spy_girls.is_event_complete(3, 4): + # Return if player has not spied on Angelina just yet. + gen "Let's try and manipulate--" ("base", xpos="far_left", ypos="head") + cho "I'm going to stop you right there..." ("soft", "base", "angry", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + cho "There's no way I’ll try this again before I know more about the girls." ("annoyed", "base", "angry", "mid") + gen "Fine..." ("base", xpos="far_left", ypos="head") + + cho "" (xpos="base", ypos="base", trans=fade) + + jump cho_requests_menu + + gen "You seem to have gotten to know the Gryffindor girls quite well by now [cho_name]." ("base", xpos="far_left", ypos="head") + gen "If you're not careful you might turn into one yourself." ("grin", xpos="far_left", ypos="head") + cho "As if... Ravenclaw always comes first!" ("angry", "base", "base", "mid", cheeks="blush") + gen "You do? No shame in that!" ("grin", xpos="far_left", ypos="head") + gen "So...{w=0.4} Today we're up against their team Captain, Angelina Johnson." ("base", xpos="far_left", ypos="head") + gen "Once you've managed to bond with her you'll have no problem winning the cup." ("base", xpos="far_left", ypos="head") + cho "Yes!" ("grin", "closed", "base", "mid") + cho "We're so close I could almost taste it!" ("horny", "happyCl", "base", "mid") + gen "I'm sure you will!" ("grin", xpos="far_left", ypos="head") + gen "Now go get her..." ("grin", xpos="far_left", ypos="head") + cho "Yes [cho_genie_name]!" ("smile", "base", "base", "R") + else: + # Repeatable events. + + gen "Let's manipulate those girls some more!" ("base", xpos="far_left", ypos="head") + cho "More? Haven't I done it enough already?" ("clench", "base", "raised", "mid") + gen "There's always room for more bonding." ("base", xpos="far_left", ypos="head") + cho "Okay then..." ("open", "base", "raised", "down") + gen "Make sure to bring me your report as usual B." ("base", xpos="far_left", ypos="head") + cho "Yes [cho_genie_name]!" ("base", "base", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + $ cc_pr_manipulate_girls.inProgress = True + + jump end_cho_event + +### Return Events ### + +### Tier 3 (pre Gryffindor) ### + +label cc_pr_manipulate_girls_T3_alicia: + # Alicia Spinnet + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("normal", "narrow", "base", "down", cheeks="blush", xpos="mid", ypos="base", trans=fade) + + gen "Back so soon? I wasn't expecting you for another hour." ("base", xpos="far_left", ypos="head") + cho "..." ("normal", "narrow", "base", "down", cheeks="blush") #Blushing + gen "Are you alright? How did it go with the girls?" ("base", xpos="far_left", ypos="head") + cho "Fine..." ("open", "narrow", "base", "down", cheeks="blush") #Blush + gen "So, did you manage to connect with them in an emotional way?" ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "closed", "base", "mid", cheeks="blush") + gen "Miss Chang?" ("base", xpos="far_left", ypos="head") + cho "You could say that." ("upset", "narrow", "base", "mid", cheeks="heavy_blush") + gen "Tell me what happened." ("base", xpos="far_left", ypos="head") + cho "Well..." ("disgust", "base", "base", "R", cheeks="blush") + cho "My plan was to try and approach Alicia Spinnet without the other two around." ("open", "base", "base", "down", cheeks="blush") + cho "So, I gestured her to come over to me as the other two entered the changing room..." ("open", "base", "raised", "mid", cheeks="blush") + gen "Nicely done. Splitting up the group makes it less likely they'll gang up on you." ("base", xpos="far_left", ypos="head") + cho "That's what I thought... and I felt pretty confident in my plan as she approached me." ("soft", "closed", "base", "mid", cheeks="blush") + cho "But before I even got a word out she had come up and kissed me on the lips!" ("quiver", "base", "raised", "mid", cheeks="blush") + gen "Whoa, wait what?" ("angry", xpos="far_left", ypos="head") + gen "I thought the plan was for you to make the advances here..." ("angry", xpos="far_left", ypos="head") + cho "You and me both!" ("clench", "base", "raised", "mid", cheeks="blush") + gen "Do you know why she just came up and kissed you like that?" ("base", xpos="far_left", ypos="head") + cho "Well, apparently she saw me when I entered the girls bathroom..." ("horny", "base", "base", "R", cheeks="blush") + cho "And assumed I had followed her in there because I wanted to get in on the action..." ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "Smart girl. She figured out you were perving on her!" ("grin", xpos="far_left", ypos="head") + cho "I'm not perving on anybody! I only followed her into that bathroom to gather information!" ("horny", "happyCl", "angry", "mid", cheeks="blush") + gen "But I'm sure you liked sneaking a peek at her moist muff regardless." ("grin", xpos="far_left", ypos="head") + cho "How was I to know she wasn't wearing any panties..." ("clench", "closed", "angry", "mid", cheeks="blush") # annoyed + gen "Be that as it may, this Alicia girl seems to be one step ahead of us..." ("base", xpos="far_left", ypos="head") + gen "So, what happened next B?" ("base", xpos="far_left", ypos="head") + cho "She started kissing me again, and placed a hand on one of my butt cheeks..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "Correction, she's two steps ahead of us..." ("base", xpos="far_left", ypos="head") + gen "Sounds to me like you got a fan on the Gryffindor team..." ("base", xpos="far_left", ypos="head") + gen "That girl has the hots for you, that's for sure!" ("grin", xpos="far_left", ypos="head") + cho "*Tzzs!*... Those sluts would probably make out with anybody..." ("clench", "closed", "raised", "downR", cheeks="heavy_blush") + gen "Tongue or no tongue?" ("base", xpos="far_left", ypos="head") + cho "Sorry?" ("normal", "base", "raised", "mid", cheeks="blush") #Blush, shocked + gen "Did she slip you any tongue or what?" ("base", xpos="far_left", ypos="head") + cho "How is that relevant to anything?" ("upset", "base", "base", "downR", cheeks="blush") + gen "Did she though?" ("base", xpos="far_left", ypos="head") + cho "..." ("normal", "base", "raised", "down", cheeks="blush") #blush + gen "I knew it!" ("grin", xpos="far_left", ypos="head") + gen "I hope you were at least courteous enough to return the favour..." ("grin", xpos="far_left", ypos="head") + gen "Tongue kissing and a butt squeeze... Now that's what I'd call a true challenger!" ("grin", xpos="far_left", ypos="head") + cho "..." ("base", "narrow", "base", "down", cheeks="blush") #Glaring + gen "What happened next?" ("base", xpos="far_left", ypos="head") + cho "She broke off the kiss and slapped my butt cheek, before running off to the changing rooms." ("angry", "base", "base", "mid", cheeks="blush") + gen "Sounds to me like a job well done, [cho_name]." ("base", xpos="far_left", ypos="head") + cho "But I didn't even do anything!" ("clench", "wide", "base", "mid", cheeks="blush") + gen "Yet you achieved exactly what I asked of you, you formed an emotional bond with her." ("base", xpos="far_left", ypos="head") + gen "Now we only have to do the same with the other two..." ("base", xpos="far_left", ypos="head") + cho "So that's what this emotional bonding is all about? Getting them to kiss me?" ("mad", "narrow", "raised", "mid", cheeks="blush") + gen "Not kissing specifically..." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "closed", "base", "down", cheeks="blush") + gen "And now I'd like you to entice the other two as well." ("base", xpos="far_left", ypos="head") + cho "Sure, no problem... I'll just walk up to one of them and they'd throw themselves at me, just like Spinnet did!" ("normal", "narrow", "angry", "R", cheeks="blush") #Sarcastic + gen "Great plan!" ("base", xpos="far_left", ypos="head") + gen "But for now you better get some rest and ready yourself to take on the other two." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Don't look so dejected, [cho_name]. You had a beautiful girl kiss you today... surely you can't be disappointed by that?" ("base", xpos="far_left", ypos="head") + cho "It's...{w=0.4} it's not that...{w=0.4} I'm just used to it being me who..." ("annoyed", "closed", "base", "mid", cheeks="blush") + cho "..." ("upset", "closed", "base", "mid", cheeks="blush") #Blush + cho "Never mind, good night then." ("normal", "base", "base", "downR", cheeks="heavy_blush") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + +label cc_pr_manipulate_girls_T3_katie_part1: + # Katie Bell - Part 1 + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "..." ("normal", "narrow", "base", "down", cheeks="blush", xpos="mid", ypos="base", trans=fade) + + gen "[cho_name]?" ("base", xpos="far_left", ypos="head") + cho "..." ("normal", "narrow", "base", "down", cheeks="blush") + gen "Hello?" ("base", xpos="far_left", ypos="head") + cho "Oh... Sorry [cho_genie_name]!" ("upset", "closed", "base", "mid", cheeks="blush") #face more focused still blushing + gen "What's the report. Did you manage to bond with the girl?" ("base", xpos="far_left", ypos="head") + cho "Of course..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "Then how did it go? Tell me all the details!" ("base", xpos="far_left", ypos="head") + cho "All the details..." ("upset", "closed", "base", "mid", cheeks="heavy_blush") + cho "So...{w=0.4} Much like before, my plan was to follow Katie as she wandered off away from the others." ("open", "base", "base", "mid", cheeks="blush") + cho "And to no surprise... She was once again making her way down towards the lake." ("soft", "narrow", "base", "R", cheeks="blush") + cho "So I ran up to her and questioned her on where she was headed, and she responded that she was just going for a walk to clear her head." ("open", "narrow", "base", "mid", cheeks="blush") + gen "Yeah right..." ("base", xpos="far_left", ypos="head") + cho "That's what I said..." ("clench", "narrow", "base", "R", cheeks="blush") + cho "So to try and catch her off guard I bluntly asked her if she wasn't going for another round with those tentacles." ("open", "base", "raised", "mid", cheeks="blush") + gen "Whoa, right to the point!" ("base", xpos="far_left", ypos="head") + cho "Yes, although she didn't even respond to it and just started walking again..." ("angry", "base", "base", "mid", cheeks="blush") + cho "So I pushed her further and asked what the Gryffindor house would think if they knew..." ("soft", "base", "angry", "mid", cheeks="blush") + cho "But she just kept walking, completely ignoring me." ("upset", "base", "angry", "mid", cheeks="blush") + cho "I wasn't able to get through to her at all until I said that I would snitch to her captain unless she did something for me." ("clench", "narrow", "base", "mid", cheeks="blush") + cho "That's when she stopped in her tracks, eyed me up and down and asked what her punishment was going to be." ("disgust", "base", "base", "down", cheeks="blush") + gen "Such a naughty girl!" ("grin", xpos="far_left", ypos="head") + cho "I know! That's not at all where I was going with the conversation." ("open", "wide", "angry", "mid", cheeks="blush") + cho "What I hadn't realised during my failed attempts at confronting her she had been leading me off the path." ("clench", "base", "base", "downR", cheeks="blush") + cho "Because just as I was about to reply, I felt something tighten around my waist and suddenly I found myself dangling several feet off the ground!" ("open", "wide", "base", "mid", cheeks="blush") + cho "That's when I realised, she had led me all the way to the Whomping Willow!" ("clench", "happyCl", "angry", "mid", cheeks="blush") + gen "The whomping what?" ("base", xpos="far_left", ypos="head") + cho "That darn tree students are told to stay away from..." ("upset", "base", "angry", "mid", cheeks="blush") + cho "It had grabbed both Katie and I, lifting us into the air... I thought we were done for." ("angry", "narrow", "base", "mid", cheeks="blush") + cho "And for a brief moment we just dangled there until the silence was cut short by a loud snapping sound and a yell." ("clench", "base", "base", "mid", cheeks="blush") + gen "Terrifying!" ("angry", xpos="far_left", ypos="head") + cho "It was! Until I realised the tree wasn't even trying to kill us..." ("upset", "closed", "angry", "mid", cheeks="blush") + cho "It had started to vigorously lash its branches about, smacking Katie...{w} and to my horror she was thoroughly enjoying the whole thing." ("disgust", "base", "base", "mid", cheeks="blush") + gen "A spanking tree? Seriously?" ("grin", xpos="far_left", ypos="head") + cho "Yes!{w=0.4} And I'm sure this wasn't her first time doing this!" ("clench", "base", "raised", "mid", cheeks="blush") + cho "I couldn't believe what I was seeing, I just stared at her in disbelief..." ("disgust", "base", "base", "down", cheeks="blush") + cho "And at that moment, the tree--" ("upset", "happyCl", "angry", "mid", cheeks="blush") + cho "Smacked one of its branches across my breasts and stomach..." ("clench", "base", "angry", "mid", cheeks="blush") + gen "Surely a little bit of spanking wouldn't bother a girl as tough as you, would it?" ("grin", xpos="far_left", ypos="head") + cho "Of course it doesn't! I've taken plenty of bruises playing Quidditch, I was just taken by surprise..." ("disgust", "base", "base", "mid", cheeks="blush") + cho "Once I got over that initial shock the tree swiftly moved me right up next to Katie." ("mad", "narrow", "base", "downR", cheeks="blush") + cho "And I watched as it continuously smacked her with its branches..." ("soft", "happyCl", "base", "down", cheeks="blush") + gen "I bet she knew you were looking." ("grin", xpos="far_left", ypos="head") + cho "Obliviously, no doubt she was enjoying it even more than the spanking." ("annoyed", "base", "angry", "mid", cheeks="blush") + cho "And seeing that she was enjoying the attention so much, I decided to revert back to the original plan..." ("angry", "base", "base", "R", cheeks="blush") + cho "Your plan..." ("disgust", "base", "base", "down", cheeks="blush") + gen "Yes?" ("base", xpos="far_left", ypos="head") + cho "To form an emotional bond with her instead..." ("disgust", "closed", "base", "mid", cheeks="blush") + gen "Finally took that stick out of your butt, did you?" ("base", xpos="far_left", ypos="head") + cho "What? There was no stick up my butt!" ("mad", "base", "angry", "mid", cheeks="blush") + gen "Figuratively speaking...{w=0.4} All that matters is that you finally accepted that you were enjoying yourself." ("base", xpos="far_left", ypos="head") + gen "Now you can forever cherish this moment with Katie... and that spanking willow." ("base", xpos="far_left", ypos="head") + cho "Whomping, Sir." ("annoyed", "narrow", "angry", "mid", cheeks="blush") + cho "And I just took it for what it was... Endurance training! There's nothing wrong with that..." ("upset", "base", "base", "mid", cheeks="heavy_blush") + gen "Whatever you want to call it, I do it at least once or twice a day myself." ("base", xpos="far_left", ypos="head") + cho "Anyhow... After a couple more minutes the tree finally stopped smacking us, and I was able to catch my breath..." ("angry", "base", "base", "mid", cheeks="blush") + gen "Sounds like a great workout." ("base", xpos="far_left", ypos="head") + cho "Yes, it was a workout and a half that's for sure!" ("horny", "base", "base", "down", cheeks="blush") + gen "Then maybe we should incorporate it into your training." ("base", xpos="far_left", ypos="head") + cho "But Sir, the Whomping Willow is still extremely dangerous!" ("mad", "wide", "raised", "mid") + cho "Everybody knows to stay as far away from it as possible!" ("open", "wide", "base", "mid") + gen "Because of a little ass spanking? Don't be silly..." ("base", xpos="far_left", ypos="head") + gen "That Katie girl sure took it like a champ... you need to be fearless as well, next time that tree spanks you red!" ("base", xpos="far_left", ypos="head") + cho "Next time?" ("clench", "base", "base", "mid", cheeks="blush") + gen "Just agree on a safe-word, if it gets too much." ("base", xpos="far_left", ypos="head") + cho "It's a tree! It's not going to agree to anything!" ("clench", "wide", "base", "mid", cheeks="blush") + cho "She tricked me into this!" ("scream", "base", "angry", "R", cheeks="blush") + gen "..." ("angry", xpos="far_left", ypos="head") + cho "I bet I ruined it anyway..." ("annoyed", "base", "angry", "R", cheeks="blush") + cho "Because as soon as the tree lowered us back to the ground Katie rushed off." ("upset", "base", "base", "downR", cheeks="blush") + cho "So I couldn't even talk to her..." ("clench", "base", "base", "down", cheeks="blush") + gen "You kidding me? Talking would've just ruined it at that point!" ("grin", xpos="far_left", ypos="head") + gen "You just had an amazing experience together, and didn't exchange a word throughout the entire thing. There's no better emotional bonding than that..." ("grin", xpos="far_left", ypos="head") + cho "..." ("mad", "happyCl", "base", "down", cheeks="blush") #Blushing + gen "Well, I'd say we're one step closer to taking on the Lions for the finals." ("base", xpos="far_left", ypos="head") + gen "I'm confident you'll be able to tame those lionesses by then." ("base", xpos="far_left", ypos="head") + cho "I...{w=0.4} of course..." ("open", "happyCl", "base", "mid", cheeks="heavy_blush") #Smiles and blushes + gen "You should take some rest now..." ("base", xpos="far_left", ypos="head") + gen "You look beat." ("grin", xpos="far_left", ypos="head") + cho "Very well... Good night then." ("annoyed", "narrow", "base", "down", cheeks="blush") + gen "Until next time." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + +label cc_pr_manipulate_girls_T3_katie_part2: + # Katie Bell - Part 2 + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" (face="angry", xpos="mid", ypos="base", trans=fade) + + gen "Welcome back, any progress?" ("base", xpos="far_left", ypos="head") + cho "If your goal was to get my ass red raw again then sure, plenty of progress..." ("angry", "narrow", "base", "R", cheeks="blush") + gen "Progress is progress... So, what went down today?" ("base", xpos="far_left", ypos="head") + cho "I followed Katie again... just as you wanted..." ("annoyed", "base", "base", "down", cheeks="blush") + cho "I attempted to strike up another conversation but just like last time, she wasn't really up for chatting..." ("open", "base", "base", "mid", cheeks="blush") + cho "So since she was giving me the silent treatment I asked her if this was another attempt of hers to trick me again." ("open", "closed", "base", "mid", cheeks="blush") + cho "But she simply shrugged and said that if I was to join her again then I should just be quiet and follow her..." ("open", "base", "raised", "mid", cheeks="blush") + gen "And, did you?" ("grin", xpos="far_left", ypos="head") + cho "Well, yes..." ("disgust", "base", "base", "down", cheeks="blush") + cho "Since she put it like that, how could I refuse? I'd look like a total wimp!" ("upset", "base", "angry", "mid", cheeks="blush") + cho "I mean... It's only a giant, half-conscious, murderous tree... What's the worst that could happen?" ("annoyed", "base", "angry", "mid") + cho "Having said that...{w=0.4} It ended up being even more intense than last time!" ("clench", "base", "base", "R", cheeks="blush") + cho "Maybe Katie jinxed it this time around... or she forgot to jinx it... who knows." ("soft", "base", "base", "down", cheeks="blush") + cho "It yanked us into the air with such speed, even I wasn't ready for it!" ("angry", "base", "raised", "mid", cheeks="blush") + cho "I had to fight its grip, to at least get some form of control back..." ("horny", "base", "base", "downR", cheeks="blush") + cho "But that was easier said than done as the tree had already snaked some of its branches underneath my clothes... sliding them right off my body." ("soft", "narrow", "base", "down", cheeks="blush") + gen "Nice! Just like that?" ("grin", xpos="far_left", ypos="head") + cho "Well I tried to grab them... but it had already moved its branches away from me..." ("mad", "base", "base", "mid", cheeks="blush") + gen "What happened to your reflexes... Are you being bested by a tree now?" ("base", xpos="far_left", ypos="head") + cho "No. I simply let it do its thing to...{w=0.4} impress Katie..." ("upset", "narrow", "base", "downR", cheeks="blush") + cho "I'm sure she didn't mind that her clothing got taken off as well... that slut." ("open", "wide", "angry", "mid", cheeks="heavy_blush") + gen "(As well?)" ("base", xpos="far_left", ypos="head") + cho "Just eyeing me up and down like a piece of meat... right up until..." ("clench", "base", "base", "R", cheeks="blush") + gen "Yes?" ("grin", xpos="far_left", ypos="head") + cho "The tree threw one of its branches about and swung it at us, smacking our butts..." ("soft", "happyCl", "base", "mid", cheeks="blush") + gen "Got to bless mother nature!" ("grin", xpos="far_left", ypos="head") + cho "And It just kept doing it over and over until our cheeks turned all red..." ("clench", "base", "base", "downR", cheeks="blush") + cho "It was as if my body was on fire!" ("horny", "narrow", "base", "down", cheeks="blush") + cho "As it continued, Katie looked up at me and reached out to grab my hand..." ("soft", "narrow", "base", "down", cheeks="blush") + cho "And as I finally managed to grab it, the tree smacked us hard across our cheeks." ("angry", "narrow", "base", "downR", cheeks="blush") + cho "And with that pain came a sudden rush of relief as Katie tightened her hand around mine." ("smile", "narrow", "base", "down", cheeks="blush") + gen "An orgasm, Miss Chang?" ("grin", xpos="far_left", ypos="head") + cho "It...{w=0.4} yes, I think she might've." ("upset", "base", "base", "mid", cheeks="heavy_blush") + gen "Still too early to admit it?" ("base", xpos="far_left", ypos="head") + cho "Too early to admit what?" ("mad", "base", "base", "mid", cheeks="blush") + gen "Never mind... did anything else happen after that?" ("base", xpos="far_left", ypos="head") + cho "Not much, as far as I recall..." ("base", "base", "base", "downR", cheeks="blush") + cho "All I remember is the tree lowering us to the ground and the sound of Katie's breathing..." ("soft", "closed", "base", "mid", cheeks="blush") + cho "I just laid there for a while catching my breath, until the only thing I could hear was the sound of the forest around me..." ("open", "closed", "base", "mid", cheeks="blush") + cho "Once I recovered, I turned to face Katie but again she was already gone..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "Now that's how it's done!" ("base", xpos="far_left", ypos="head") + cho "Thank you!" ("smile", "base", "base", "mid", cheeks="blush") + gen "That shall be all for today..." ("base", xpos="far_left", ypos="head") + gen "You may leave now. Dismissed." ("base", xpos="far_left", ypos="head") + cho "Good night then." ("base", "base", "base", "mid", cheeks="blush") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + +label cc_pr_manipulate_girls_T3_angelina: + + # Angelina Johnson + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("normal", "narrow", "base", "down", cheeks="blush", xpos="mid", ypos="base", trans=fade) + + if game.weather == "rain": + gen "Whoa, you're soaking!" ("angry", xpos="far_left", ypos="head") + cho "Oh, yes... I guess my clothes ended up a little wet..." ("base", "narrow", "base", "down", cheeks="blush") #Blushing + else: + gen "Welcome back..." ("grin", xpos="far_left", ypos="head") + cho "..." ("normal", "base", "base", "downR", cheeks="blush") + gen "You look soaked." ("angry", xpos="far_left", ypos="head") + cho "Oh, yes... I guess my clothes ended up a little wet..." ("base", "narrow", "base", "down", cheeks="blush") #Blushing + gen "How? It's not even raining!" ("base", xpos="far_left", ypos="head") + cho "*Ehm*...." ("disgust", "narrow", "base", "mid", cheeks="blush") + + gen "So, do you have that report for me?" ("base", xpos="far_left", ypos="head") + cho "I...{w=0.3} yes..." ("horny", "base", "base", "downR", cheeks="blush") + gen "I'm waiting [cho_name]... give me the {i}deets{/i}." ("base", xpos="far_left", ypos="head") + cho "Of course!" ("open", "happyCl", "base", "mid", cheeks="blush") + cho "Well...{w=0.4} I went to see if I could catch Angelina talking to Madame Hooch again." ("soft", "base", "base", "down", cheeks="blush") + cho "Determined to get the full context of what was going on this time!" ("open", "base", "base", "mid", cheeks="blush") + cho "I immediately went and hid in the boys changing room as soon as they had gone for lunch to listen in." ("soft", "base", "base", "L", cheeks="blush") + cho "Although I got there a bit early and they were still in the showers, touching each other and gossiping.." ("upset", "base", "base", "mid", cheeks="blush") + gen "Hooch and Johnson?!" ("angry", xpos="far_left", ypos="head") + cho "No, the Gryffindor team!" ("clench", "narrow", "base", "mid", cheeks="blush") + gen "Right..." ("base", xpos="far_left", ypos="head") + cho "So, doing my best to eavesdrop on their conversation, I went up to that hole I told you about." ("angry", "closed", "base", "mid", cheeks="blush") + cho "After a while, as Angelina brought up the subject of spying to the other two, Alicia replied that she was already aware." ("open", "base", "base", "mid") + cho "Katie then chimed in, saying she knew about it as well." ("soft", "base", "base", "mid") + cho "Which seemed to surprise Angelina at first but she then moved on saying that they need to form some sort of plan." ("open", "base", "base", "mid") + gen "I bet Miss Johnson didn't think they kept anything secret from her..." ("base", xpos="far_left", ypos="head") + cho "For sure..." ("soft", "base", "base", "R") + gen "So, did they come up with a plan?" ("base", xpos="far_left", ypos="head") + cho "Well, sort of..." ("open", "narrow", "base", "down") + cho "Katie had obviously already thought about it as she immediately responded that she knew exactly how to deal with it..." ("soft", "base", "base", "mid") + cho "But as I waited to find out what it was, they suddenly went quiet, and I couldn't hear any of them." ("angry", "base", "raised", "mid") + gen "Left for the changing room?" ("base", xpos="far_left", ypos="head") + cho "That's what I thought, until I removed my ear from the hole to have a look..." ("disgust", "base", "base", "down", cheeks="blush") + cho "No, they hadn't left... when I took a peek through the hole I found all three of them staring back at me..." ("open", "wide", "base", "mid", cheeks="blush") + gen "Busted!" ("grin", xpos="far_left", ypos="head") + gen "So what did you do, run away?" ("grin", xpos="far_left", ypos="head") + cho "At first I just sort of stood there in shock, not knowing what to do..." ("clench", "narrow", "base", "down", cheeks="blush") + cho "Until Angelina angrily beckoned me to get in there." ("clench", "base", "base", "downR", cheeks="blush") + + gen "There goes our plan to separate them from each other..." ("angry", xpos="far_left", ypos="head") + cho "Let me finish!" ("angry", "happyCl", "base", "mid", cheeks="blush") + cho "Once I got in there and before Angelina got a chance to do anything, Spinnet came up to me..." ("upset", "base", "base", "down", cheeks="blush") + cho "And just like before, she leaned in and kissed me!" ("normal", "wide", "base", "mid", cheeks="blush") + gen "Nice, and you kissed her back?" ("base", xpos="far_left", ypos="head") + cho "Of course! I wasn't about to blow my cover, was I?" ("upset", "base", "angry", "mid", cheeks="blush") + gen "Of course..." ("grin", xpos="far_left", ypos="head") + cho "As she kissed me, Angelina shouted at her, asking what the hell she was doing." ("mad", "closed", "base", "mid", cheeks="blush") + cho "Alicia then broke off the kiss and turned to her, asking what the problem was..." ("soft", "narrow", "base", "downR", cheeks="blush") + cho "Angelina just sort of stared dumbfounded at us until she shouted that I'm the seeker of an enemy team." ("clench", "base", "base", "mid", cheeks="blush") + gen "..." ("angry", xpos="far_left", ypos="head") + cho "I honestly thought it was over at that point but that's when Katie joined in..." ("soft", "closed", "base", "down", cheeks="blush") + cho "Telling Angelina off for being mean, saying how it's unfair that I don't have a group of girls to play with after practice like she does." ("base", "narrow", "base", "downR", cheeks="blush") + gen "Nice... you got both Spinnet and Bell on your side! Told you that bonding with them would do it!" ("grin", xpos="far_left", ypos="head") + cho "I...{w=0.3} I suppose so." ("base", "happyCl", "base", "mid", cheeks="blush") #Smiles + cho "Angelina still didn't look convinced though and just stood there with her arms crossed staring at me..." ("soft", "base", "base", "downR", cheeks="blush") + cho "So as an attempt at convincing her... I grabbed Alicia's head and pressed her lips against mine..." ("smile", "base", "angry", "mid", cheeks="blush") + cho "Which was enough to grab Katie's attention, as she then moved up behind me to try and pull my top off." ("soft", "wink", "base", "mid", cheeks="blush") + gen "Nicely done!" ("grin", xpos="far_left", ypos="head") + cho "Of course I didn't let her..." ("annoyed", "base", "base", "R", cheeks="heavy_blush") + gen "Why not? What about your cover?" ("angry", xpos="far_left", ypos="head") + cho "Because...{w=0.3} I...{w=0.4} Well, I didn't blow it okay!" ("open", "base", "angry", "downR", cheeks="blush") + cho "I wasn't going to let her undress me like that... so instead I grabbed her hands and put them under my bra to let her play with my breasts." ("horny", "narrow", "base", "down", cheeks="blush") + cho "Luckily she didn't seem to think much of it and began massaging them." ("soft", "narrow", "base", "mid", cheeks="blush") + cho "Angelina on the other hand was not convinced... telling the other girls to step aside..." ("angry", "base", "base", "down", cheeks="blush") + cho "Which they did...{w=0.4} both Alicia and Katie jumped back as Angelina walked up, staring me down." ("disgust", "base", "base", "mid", cheeks="blush") + gen "Scary..." ("base", xpos="far_left", ypos="head") + cho "I don't think I've ever had a girl scrutinize me like that..." ("horny", "base", "base", "down", cheeks="blush") + gen "Especially a naked one..." ("base", xpos="far_left", ypos="head") + cho "She then smirked at me, saying I must truly be something special if her girls would just throw themselves at me as eagerly as they did." ("soft", "base", "base", "mid", cheeks="heavy_blush") + cho "I didn't really know how to respond to that so I instinctively took a step back against the wall just as she leaned in and pressed her lips against mine..." ("horny", "closed", "base", "mid", cheeks="blush") + cho "Which took me by such surprise I tripped and slid down onto the wet floor." ("upset", "closed", "base", "mid", cheeks="blush") + gen "Ouch..." ("base", xpos="far_left", ypos="head") + gen "(Those Lionesses are animals!)" ("angry", xpos="far_left", ypos="head") + cho "She didn't even apologize and just looked down at me, telling me I kiss like a high-schooler..." ("mad", "base", "base", "mid", cheeks="blush") + cho "That said... didn't stop her from crouching down for another... although this time she put her tongue in there." ("angry", "base", "base", "mid", cheeks="blush") + gen "Straight in there!" ("grin", xpos="far_left", ypos="head") + gen "I hope you returned the favour!" ("grin", xpos="far_left", ypos="head") + cho "I tried to... but as I attempted it, she stopped and stood back up." ("upset", "narrow", "base", "R", cheeks="blush") + cho "And as I steadied myself to get up as well, she put her foot beneath my skirt and pressed it against my panties which made me slide back down onto the floor." ("open", "wide", "base", "mid", cheeks="blush") + gen "..." ("grin", xpos="far_left", ypos="head") + cho "Then, turning back to the others she started chastising them even further, saying she was still mad about what they did..." ("open", "base", "base", "mid", cheeks="blush") + cho "But when doing so, she also started rubbing her foot up and down against my panties." ("disgust", "base", "base", "down", cheeks="blush") + cho "Both Katie and Alicia didn't seem to notice as they had turned towards Angelina to defend themselves." ("horny", "base", "base", "downR", cheeks="blush") + cho "I don't remember exactly what they were saying at that point..." ("angry", "happyCl", "base", "mid", cheeks="blush") + gen "(not surprising...)" ("base", xpos="far_left", ypos="head") + cho "She just kept rubbing me more and more as they were arguing and..." ("horny", "closed", "base", "mid", cheeks="blush") + cho "I just...{w} couldn't...{w} hold it in at that point!" ("soft", "closed", "base", "mid", cheeks="blush") #ahegao? + gen "She made you--" ("base", xpos="far_left", ypos="head") + cho "She made me orgasm as I lay there on the ground!" ("horny", "base", "base", "up", cheeks="blush") + cho "Which they all realised as they stopped arguing to look at me..." ("clench", "base", "base", "up", cheeks="blush") + cho "Angelina's expression quickly changed into a smile as she pressed her foot down even harder, telling me I'd been a naughty girl..." ("disgust", "wide", "base", "mid", cheeks="heavy_blush") + cho "And that the other two shouldn't have been so selfish to keep me all for themselves." ("disgust", "narrow", "base", "downR", cheeks="blush") + cho "She then stepped off me and made her way out of the showers, beckoning the other two to come with her." ("clench", "base", "base", "mid", cheeks="blush") + cho "And they just looked at me, giggled, then proceeded to follow her." ("mad", "narrow", "base", "mid", cheeks="blush") + gen "Nice..." ("base", xpos="far_left", ypos="head") + cho "What do you mean nice?" ("mad", "base", "angry", "mid", cheeks="blush") #large text + cho "She humiliated me!" ("open", "base", "angry", "mid", cheeks="blush") #large text + gen "She was testing you..." ("base", xpos="far_left", ypos="head") + cho "She was..." ("clench", "wide", "base", "down", cheeks="blush") + gen "Yes...{w=0.4} Not only that...{w=0.4} I think you passed!" ("grin", xpos="far_left", ypos="head") + gen "Maybe I underestimated those girls... they aren't easy to boss around that's for sure..." ("base", xpos="far_left", ypos="head") + gen "But no matter..." ("base", xpos="far_left", ypos="head") + cho "..." ("upset", "happyCl", "base", "mid", cheeks="blush") #pout + gen "We shall see soon enough what comes from this..." ("base", xpos="far_left", ypos="head") + gen "In any case, what has happened has happened." ("base", xpos="far_left", ypos="head") + cho "You reckon I ruined it?" ("upset", "narrow", "base", "mid", cheeks="blush") #worried + gen "Of course not, you did great!" ("base", xpos="far_left", ypos="head") + gen "But you can't let them take charge like that during the game." ("base", xpos="far_left", ypos="head") + cho "Yes [cho_genie_name]." ("open", "narrow", "base", "down", cheeks="blush") + gen "Good!" ("base", xpos="far_left", ypos="head") + gen "One step closer towards sipping at the fizzy cup!" ("base", xpos="far_left", ypos="head") + cho "You don't drink from--" ("clench", "base", "base", "mid") + gen "Better ready yourself [cho_name]. The finals are looming ever so closer." ("base", xpos="far_left", ypos="head") + gen "You got this." ("base", xpos="far_left", ypos="head") + cho "Thanks..." ("soft", "narrow", "base", "downR") #smiles + gen "Now, time for some rest." ("base", xpos="far_left", ypos="head") + cho "Yes, good night then [cho_genie_name]." ("open", "base", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event diff --git a/game/scripts/characters/cho/events/requests/manipulate_repeat_INCOMPLETE.txt b/game/scripts/characters/cho/events/requests/manipulate_repeat_INCOMPLETE.txt new file mode 100644 index 00000000..1b429e94 --- /dev/null +++ b/game/scripts/characters/cho/events/requests/manipulate_repeat_INCOMPLETE.txt @@ -0,0 +1,307 @@ + + +## Angelina slapping Katie's ass ## +label cc_pr_spy_girls_T3_repeat1: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "Ready for your report, B..." ("base", xpos="far_left", ypos="head") + gen "Did you catch them doing anything interesting?" ("base", xpos="far_left", ypos="head") + cho "I suppose..." ("open", "base", "base", "downR") + cho "I went to spy on them in the showers again." ("soft", "base", "base", "mid") + gen "Go on..." ("base", xpos="far_left", ypos="head") + cho "Angelina was slapping Katie on the bum -- with one of the beaters bats." ("horny", "base", "raised", "mid", cheeks="blush") + cho "Her butt was bright red... I have no clue how she can even sit on a broom at this point..." ("horny", "narrow", "base", "mid", cheeks="blush") + cho "She must have some really potent cushioning charm on that thing..." ("crooked_smile", "happyCl", "base", "mid", cheeks="heavy_blush") + gen "That girl sure loves a spanking..." ("base", xpos="far_left", ypos="head") + cho "And Angelina seems to thoroughly enjoy giving them as well." ("base", "narrow", "angry", "mid", cheeks="blush") + gen "Well then, anything else to report?" ("base", xpos="far_left", ypos="head") + cho "No, that's about it..." ("soft", "base", "base", "R") + gen "Then mission success!" ("grin", xpos="far_left", ypos="head") + gen "Good work, B!" ("grin", xpos="far_left", ypos="head") + cho "Is that all for today, [cho_genie_name]?" ("base", "narrow", "base", "mid") + gen "Yes, that will be all." ("base", xpos="far_left", ypos="head") + cho "Until next time..." ("base", "happyCl", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + + +## Katie flashing in class ## +label cc_pr_spy_girls_T3_repeat2: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "Ready for your report, B..." ("base", xpos="far_left", ypos="head") + gen "Did you catch them doing anything interesting?" ("base", xpos="far_left", ypos="head") + cho "I was keeping an eye on Katie during Defence against the dark arts..." ("soft", "closed", "base", "mid") + cho "I caught her flashing her breasts at another student..." ("open", "narrow", "base", "mid") + gen "Whoa! During classes?!" ("angry", xpos="far_left", ypos="head") + cho "I know!" ("angry", "base", "angry", "mid") + cho "I was quite shocked she'd dare to do something like that in class, to be honest." ("soft", "narrow", "angry", "L") + gen "(Holy shit! She really is a freak!)" ("angry", xpos="far_left", ypos="head") + cho "Obviously I wasn't going to say anything... but it would've been funny to see her get chastised by Professor Tonks." ("smile", "narrow", "angry", "mid", cheeks="blush") + gen "(Yeah, don't get your hopes up with her...)" ("base", xpos="far_left", ypos="head") + gen "Anything else to report?" ("base", xpos="far_left", ypos="head") + cho "No, that's about it..." ("annoyed", "base", "base", "R") + gen "Then mission success!" ("grin", xpos="far_left", ypos="head") + gen "Good work, B!" ("grin", xpos="far_left", ypos="head") + gen "You're dismissed..." ("base", xpos="far_left", ypos="head") + cho "Have a nice evening, [cho_genie_name]." ("base", "happyCl", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + + +## Angelina showing Katie's bruised ass to the team ## +label cc_pr_spy_girls_T3_repeat3: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "Ready for your report, B..." ("base", xpos="far_left", ypos="head") + gen "Did you catch them doing anything interesting?" ("base", xpos="far_left", ypos="head") + cho "Angelina pulled Katie's panties down during practice -- to expose her red butt cheeks to the boys." ("open", "narrow", "raised", "mid") + cho "I heard her yelling at them to do better -- or she'd make their butts look like Katie's." ("clench", "base", "worried", "down", cheeks="blush") + gen "Such a bully..." ("base", xpos="far_left", ypos="head") + cho "Yeah, Angelina is just looking to get a reaction from the boys..." ("annoyed", "narrow", "angry", "mid") + cho "And Katie didn't seem to mind the attention, that's for sure..." ("annoyed", "narrow", "angry", "R") + cho "That's about all that happened today..." ("open", "closed", "base", "mid") + gen "Excellent work, B!" ("grin", xpos="far_left", ypos="head") + cho "I'll head off then, if you don't mind." ("soft", "base", "base", "mid") + gen "Yes, you're dismissed." ("base", xpos="far_left", ypos="head") + cho "Have a nice evening, [cho_genie_name]." ("base", "happyCl", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points till 12. + $ cho_reputation += 1 + + jump end_cho_event + + + + +######################################################### + + + + +label cc_pr_manipulate_girls_T3_repeat1: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("normal", "narrow", "base", "down", cheeks="blush", xpos="mid", ypos="base", trans=fade) + + gen "Ready for your report B..." ("base", xpos="far_left", ypos="head") + gen "Did you manage to seduce any of them?" ("base", xpos="far_left", ypos="head") + + cho "Katie caught me looking at her during the history of magic..." ("open", "base", "base", "downR") + cho "Binns was droning on as usual and most of the other students were either sleeping or not paying attention." ("open", "closed", "base", "mid") + cho "Katie on the other hand found this a great opportunity to move her hand in a spanking motion at the sleeping student next to her." ("disgust", "base", "base", "mid", cheeks="blush") + cho "No doubt trying to remind me of the Whomping Willow..." ("soft", "base", "base", "down", cheeks="blush") + gen "Ah... the tree..." ("base", xpos="far_left", ypos="head") + gen "Yeah... that was a good episode... I liked that one." ("base", xpos="far_left", ypos="head") + + gen "Anything else to report?" ("base", xpos="far_left", ypos="head") + cho "No, that's about it..." ("angry", "base", "base", "mid") + gen "Then mission success!" ("grin", xpos="far_left", ypos="head") + gen "Good work B!" ("grin", xpos="far_left", ypos="head") + cho "Then if that's all... I'll head off for today." ("open", "base", "base", "mid") + gen "Yes, that will be all." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + +label cc_pr_manipulate_girls_T3_repeat2: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("normal", "narrow", "base", "down", cheeks="blush", xpos="mid", ypos="base", trans=fade) + + gen "Ready for your report B..." ("base", xpos="far_left", ypos="head") + gen "Did you manage to seduce any of them?" ("base", xpos="far_left", ypos="head") + + cho "Kind of... I was scouting them out during dinner over at the Gryffindor table where all three of them were sitting together." ("open", "base", "base", "downR") + cho "Alicia saw me looking and leaned in and kissed Katie on the cheek." ("soft", "narrow", "base", "mid", cheeks="blush") + cho "Katie's face turned red so I assume they don't usually do stuff like that in public." ("base", "narrow", "raised", "mid", cheeks="blush") + cho "Angelina appeared to find her embarrassment pretty funny though." ("crooked_smile", "closed", "base", "mid", cheeks="blush") + gen "(More likely they get off on it...)" ("grin", xpos="far_left", ypos="head") + + gen "Anything else to report?" ("base", xpos="far_left", ypos="head") + cho "No, that's about it..." ("smile", "base", "base", "mid") + gen "Then mission success!" ("grin", xpos="far_left", ypos="head") + gen "Good work B!" ("grin", xpos="far_left", ypos="head") + cho "Then if that's all... I'll head off for today." ("base", "base", "base", "mid") + gen "Yes, that will be all." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + +label cc_pr_manipulate_girls_T3_repeat3: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("normal", "narrow", "base", "down", cheeks="blush", xpos="mid", ypos="base", trans=fade) + + gen "Ready for your report B..." ("base", xpos="far_left", ypos="head") + gen "Did you manage to seduce any of them?" ("base", xpos="far_left", ypos="head") + + cho "No... They actually caught me as I was doing some flying exercises." ("clench", "base", "base", "down", cheeks="blush") + cho "And somehow they managed able to temporarily dispel the cushioning charm on my broom because that handle started pressing pretty hard between my legs..." ("disgust", "base", "base", "mid", cheeks="blush") + cho "Angelina kept laughing as I flinched with every sharp turn whilst chasing the snitch..." ("annoyed", "base", "base", "mid", cheeks="blush") + gen "Did it hurt that much?" ("base", xpos="far_left", ypos="head") + cho "Oh... No it didn't really hurt at all really..." ("open", "closed", "base", "mid", cheeks="blush") #blush + gen "But you just sai--" ("base", xpos="far_left", ypos="head") + gen "(Oh, I see...)" ("base", xpos="far_left", ypos="head") + gen "Well then..." ("base", xpos="far_left", ypos="head") + + gen "Anything else to report?" ("base", xpos="far_left", ypos="head") + cho "No, that's about it..." ("soft", "base", "base", "mid") + gen "Then mission success!" ("grin", xpos="far_left", ypos="head") + gen "Good work B!" ("grin", xpos="far_left", ypos="head") + cho "Then if that's all... I'll head off for today." ("base", "base", "base", "mid") + gen "Yes, that will be all." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + + + +########################################################### + + + +## Twins goofing around ## +label cc_pr_spy_boys_T3_repeat1: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "Ready for your report B..." ("base", xpos="far_left", ypos="head") + gen "Did you collect any useful intel?" ("base", xpos="far_left", ypos="head") + cho "The twins were goofing around again, performing some tricks that they learnt for the other students.." + gen "And was there anything we could use against them?" ("base", xpos="far_left", ypos="head") + cho "*Ehm*..." + gen "Tell me what they did... Perhaps I’ll be able to think of something." ("base", xpos="far_left", ypos="head") + cho "Oh, you should’ve seen them. It was hilarious!" + cho "They somehow managed to convince Neville to hand over his pet toad for them to use in one of their tricks." + cho "They had figured out how to mess up transfiguration magic on purpose, only half transforming it." + cho "And they turned it into a pickle!" + gen "Well that’s--" ("base", xpos="far_left", ypos="head") + cho "Funniest shit I’ve ever seen!" + gen "Yeah, that’s not very useful to us." ("base", xpos="far_left", ypos="head") + cho "...{w} guess not." + gen "Anything else?" ("base", xpos="far_left", ypos="head") + cho "Probably nothing useful..." + gen "Then that will be all for today." ("base", xpos="far_left", ypos="head") + cho "Okay, sorry..." + gen "Good night, Miss Chang..." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points till 12. + $ cho_reputation += 1 + + jump end_cho_event + + +## Ron Weasley perving on Hermione ## +label cc_pr_spy_boys_T3_repeat2: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "Ready for your report B..." ("base", xpos="far_left", ypos="head") + gen "Did you collect any useful intel?" ("base", xpos="far_left", ypos="head") + + cho "Ron was perving on Hermione again." + cho "I caught him trying to take a peek down her top during lunch." + gen "I bet she pretends not to notice it!" ("base", xpos="far_left", ypos="head") + cho "Well, that much is obvious." + + gen "Anything else to report?" ("base", xpos="far_left", ypos="head") + cho "That’s about it." + gen "Then that will be all for today." ("base", xpos="far_left", ypos="head") + cho "Okay, good night then." + gen "Good night, Miss Chang." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points till 12. + $ cho_reputation += 1 + + jump end_cho_event + + +## Harry Potter bragging about his small dick ## +label cc_pr_spy_boys_T3_repeat3: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "Ready for your report B... " ("base", xpos="far_left", ypos="head") + gen "Did you collect any useful intel?" ("base", xpos="far_left", ypos="head") + cho "Harry was showing off his dad's Quidditch trophies in the trophy room to some of the other students." + cho "Talking about what a great chaser he was." + cho "Although Snape quickly shut down his boasting by taking 5 points away from Gryffindor." + gen "Classic Snape." ("base", xpos="far_left", ypos="head") + cho "Yeah, he doesn’t seem to like Harry that much." + gen "Anything else to report?" ("base", xpos="far_left", ypos="head") + cho "That’s about it." + gen "Then that will be all for today." ("base", xpos="far_left", ypos="head") + cho "Okay, good night then." + gen "Good night, Miss Chang." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points till 12. + $ cho_reputation += 1 + + jump end_cho_event diff --git a/game/scripts/characters/cho/events/requests/spy_on_the_boys.rpy b/game/scripts/characters/cho/events/requests/spy_on_the_boys.rpy new file mode 100644 index 00000000..2787a083 --- /dev/null +++ b/game/scripts/characters/cho/events/requests/spy_on_the_boys.rpy @@ -0,0 +1,273 @@ + +### Manipulate the enemy male Quidditch players ### + + +### Start ### +label cc_pr_spy_boys_start: + + cho "" (xpos="right", ypos="base", trans=fade) + + if not cc_pr_spy_boys.is_event_complete(3, 1): # Completed spying on the Weasley Twins? + # Weasley Twins - handing over candies that turn people into blueberries + + if not cc_pr_spy_girls.is_event_complete(3, 1): + # Player has not spied on girls just yet. + + gen "Time to target the boys for a classic espionage mission C." ("base", xpos="far_left", ypos="head") + cho "C? Is that some sort of spy name?" ("soft", "base", "base", "mid") + gen "Yep! C is the perfect spy name for you." ("base", xpos="far_left", ypos="head") + cho "Where do you get all these ideas from... seriously." ("annoyed", "base", "base", "mid") + gen "That's your cup-size is it not?" ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "wide", "base", "mid") #Blushes + cho "You're such an old pervert, you know that right?" ("soft", "base", "angry", "mid") + cho "And it's B cup actually..." ("open", "base", "base", "downR") #Blushes and glances to the side + gen "Noted..." ("grin", xpos="far_left", ypos="head") + cho "So..." ("annoyed", "base", "base", "down") #pondering + gen "Yes?" ("base", xpos="far_left", ypos="head") + + else: + # Player has spied on the girls + + gen "Let's target the boys this time for some good ole espionage B." ("base", xpos="far_left", ypos="head") + + cho "Where does this obsession with nicknames come from?" ("open", "base", "raised", "mid") + gen "Where does it come from....?" ("base", xpos="far_left", ypos="head") + cho "Where does this obsession with nicknames come from... [cho_genie_name]?" ("annoyed", "base", "raised", "mid") + gen "No-no... You don't get it, we use code words here..." ("base", xpos="far_left", ypos="head") + gen "This is a secret operation!" ("base", xpos="far_left", ypos="head") + cho "You want me to give you a nickname?" ("annoyed", "narrow", "base", "mid") + gen "I think codename would be the appropriate term." ("base", xpos="far_left", ypos="head") + gen "How about..." ("base", xpos="far_left", ypos="head") + + menu: + "\"Jason Porn\"": + gen "Explosive truth seeker." ("grin", xpos="far_left", ypos="head") + "\"Agent 69\"": + gen "Licence to frisk." ("grin", xpos="far_left", ypos="head") + "\"Cody Spanks\"": + gen "No ass left untouched!" ("grin", xpos="far_left", ypos="head") + + cho "Merlin's beard..." ("angry", "narrow", "raised", "downR") # Facepalm + gen "Merlin's beard.... that's a pretty good codename, I like it!" ("grin", xpos="far_left", ypos="head") + cho "But I was..." ("mad", "base", "raised", "mid") + gen "..." ("grin", xpos="far_left", ypos="head") + cho "Yes... Merlin's beard." ("soft", "narrow", "base", "downR") + cho "What is today's assign--{w=0.4} mission then?" ("open", "base", "base", "mid") + gen "Today's mission, if you choose to accept it..." ("base", xpos="far_left", ypos="head") + gen "And by choose I mean there's not really much choice in the matter." ("base", xpos="far_left", ypos="head") + cho "..." ("normal", "narrow", "base", "mid") #rolls eyes, bit pissed off + gen "I'd like you to spy on the beaters.... those {i}Weasel{/i} twins." ("base", xpos="far_left", ypos="head") + cho "Weasley..." ("soft", "narrow", "base", "mid") + gen "Yeah, that!" ("base", xpos="far_left", ypos="head") + gen "I'd like you to follow them and see what they are doing, find out if there's anything we could use against them during the match." ("base", xpos="far_left", ypos="head") + cho "You want me to follow them around the entire day?" ("angry", "base", "base", "mid") + gen "Of course, that's what a spy does isn't it?" ("base", xpos="far_left", ypos="head") + cho "Yeah, it's not like I have school or anything important to do." ("upset", "base", "angry", "downR") + gen "Great!" ("grin", xpos="far_left", ypos="head") + gen "Report back to me this evening as usual B!" ("grin", xpos="far_left", ypos="head") + cho "Fine..." ("angry", "narrow", "base", "mid") + + elif not cc_pr_spy_boys.is_event_complete(3, 2): # Completed Ron Weasley? + # Spy on Ron Weasley + + gen "Ready for some more espionage B?" ("base", xpos="far_left", ypos="head") + cho "Of course!" ("open", "base", "base", "mid") + cho "Who are we targeting today?" ("soft", "base", "raised", "mid") + gen "The keeper... Tom or whatever his name was." ("base", xpos="far_left", ypos="head") + cho "Ron..." ("angry", "narrow", "base", "mid") + gen "Oh, yes. That guy!" ("base", xpos="far_left", ypos="head") + cho "And what would you have me do?" ("open", "base", "raised", "mid") + gen "Spy on him of course!" ("base", xpos="far_left", ypos="head") + gen "See if there's anything we can use against him during the match." ("base", xpos="far_left", ypos="head") + cho "Fine... I'll do my best, but don't get your hopes up..." ("soft", "base", "base", "downR") + gen "You'll do excellent B, now make haste!" ("base", xpos="far_left", ypos="head") + gen "Quietly, make haste... quietly..." ("base", xpos="far_left", ypos="head") + cho "As you wish..." ("base", "narrow", "base", "downR") + + elif not cc_pr_spy_boys.is_event_complete(3, 3): # Completed Harry Potter? + # Spy on Harry Potter + + gen "Ready for some more espionage B?" ("base", xpos="far_left", ypos="head") + cho "Of course!" ("open", "base", "base", "mid") + cho "Who are we targeting today?" ("soft", "base", "raised", "mid") + gen "The seeker...{w=0.3} that Potter Boy." ("base", xpos="far_left", ypos="head") + cho "Why do you say his name with such an odd tone?" ("angry", "narrow", "base", "mid") + gen "Am I? That's how Snape says it..." ("base", xpos="far_left", ypos="head") + cho "Right... So, what is it that you want me to do with him?" ("open", "base", "raised", "downR") + gen "I'll tell you what you shouldn't do." ("base", xpos="far_left", ypos="head") + gen "Don't share your wine with him or he'll drink it all..." ("base", xpos="far_left", ypos="head") + cho "Harry drinks your wine?" ("annoyed", "base", "raised", "mid") + cho "This isn't one of your weird euphemisms again is it?" ("open", "narrow", "raised", "mid") + gen "I was talking about Snape." ("base", xpos="far_left", ypos="head") + cho "I see..." ("soft", "base", "base", "mid") + gen "Anyhow..." ("base", xpos="far_left", ypos="head") + gen "The Potter boy!" ("base", xpos="far_left", ypos="head") + gen "I want you to follow him around, see what he's up to!" ("base", xpos="far_left", ypos="head") + cho "But what about Hermione?" ("clench", "base", "base", "mid") + gen "What about her?" ("base", xpos="far_left", ypos="head") + cho "Harry usually hangs around her at all time, how am I supposed to spy on him if she's around?" ("annoyed", "narrow", "base", "mid") + gen "I'm sure you'll figure it out..." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "closed", "base", "down") + cho "Fine, I'll see what I can do..." ("open", "narrow", "base", "downR") + gen "That's the spirit." ("base", xpos="far_left", ypos="head") + + else: + gen "Let's spy on those boys some more!" ("base", xpos="far_left", ypos="head") + cho "Again? I've already spied on them all..." ("angry", "base", "base", "mid") + gen "You can never have enough intel." ("base", xpos="far_left", ypos="head") + cho "Right..." ("open", "narrow", "base", "R") + gen "Make sure to bring me your report as usual B." ("base", xpos="far_left", ypos="head") + cho "Of course." ("open", "base", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + $ cc_pr_spy_boys.inProgress = True + + jump end_cho_event + + + +### Return Events ### + + +### Tier 3 (pre Gryffindor) ### + +label cc_pr_spy_boys_T3_twins: + ## Weasley Twins - Blueberry candies ## + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "narrow", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "Mission successful?" ("base", xpos="far_left", ypos="head") + cho "Well, in terms of not getting caught I suppose so." ("angry", "closed", "base", "down") + gen "Then spill those beans B, what did you manage to learn about them?" ("base", xpos="far_left", ypos="head") + cho "They're pigs. I'll tell you that much." ("annoyed", "base", "angry", "mid") + gen "Really?" ("base", xpos="far_left", ypos="head") + cho "Well, I guess calling them pigs is a bit uncalled for. They're a pair of pranksters that's for sure." ("open", "closed", "angry", "mid") + cho "Those two would do anything for a laugh..." ("clench", "narrow", "angry", "mid") + gen "So, what did they do?" ("base", xpos="far_left", ypos="head") + cho "They tricked some poor Hufflepuff girls by giving them sweets that they had tampered with..." ("angry", "base", "angry", "downR") + cho "All with various effects to embarrass whoever ate them..." ("open", "narrow", "angry", "mid") + cho "As one girl ate one, she turned blue and began swelling until she ended up looking like a giant blueberry." ("clench", "base", "base", "mid") + gen "That's pretty funny..." ("base", xpos="far_left", ypos="head") + cho "How is that funny!?" ("angry", "wide", "angry", "mid") + gen "What if the girl was Hermione?" ("base", xpos="far_left", ypos="head") + cho "I..." ("angry", "base", "base", "mid") + cho "I suppose...{w=0.4} no...{w=0.4} no it's still..." ("soft", "happyCl", "angry", "mid") + gen "She'd look like a blueberry with a huge wig draped on top of it." ("base", xpos="far_left", ypos="head") + cho "*Giggles*" ("smile", "closed", "base", "mid", cheeks="blush") + cho "Anyhow... it completely ruined her clothes and as she deflated she quickly ran off stark naked and crying to her dormitory." ("annoyed", "closed", "base", "mid", cheeks="blush") + gen "Wait, so the clothes didn't expand as well?" ("base", xpos="far_left", ypos="head") + cho "It's not a spell... she ate it so why would her clothes be affected?" ("clench", "base", "raised", "mid") + gen "Sounds like amateurish magic to me, if they just imbued those sweets with some sort of effect which allows the consumers sweat to permeate their clothes then..." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "wide", "angry", "mid") + gen "Oh yes...{w=0.4} very bad, I'll have a word with those two..." ("base", xpos="far_left", ypos="head") + cho "Please do..." ("annoyed", "narrow", "angry", "mid") + + gen "Anyhow, I'm sure we'll find something we can use against some of the other players." ("base", xpos="far_left", ypos="head") + cho "I hope so..." ("upset", "base", "angry", "downR") + gen "Anything else to report?" ("base", xpos="far_left", ypos="head") + cho "No, that's all." ("angry", "base", "base", "mid") + gen "Then that will be it for today." ("base", xpos="far_left", ypos="head") + cho "Okay then." ("open", "base", "base", "R") + cho "Good night." ("soft", "base", "base", "mid") + gen "Good night miss Chang." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points till 12. + $ cho_reputation += 1 + + jump end_cho_event + +label cc_pr_spy_boys_T3_ron: + ## Ron Weasley ## + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "narrow", "base", "mid", xpos="mid", ypos="base", trans=fade) + + cho "..." ("annoyed", "base", "angry", "downR") #Annoyed + gen "Mission successful?" ("base", xpos="far_left", ypos="head") + cho "No, of course it wasn't..." ("clench", "closed", "angry", "mid") + cho "It's as if Granger could smell me as soon as I get anywhere near her friend group." ("open", "narrow", "angry", "R") + gen "So, you didn't manage to glean any sort of information?" ("base", xpos="far_left", ypos="head") + cho "Well, I'm certain about one thing... That boy is a perv." ("upset", "narrow", "angry", "mid") + cho "Before Hermione caught me, I could tell he was checking her out any time he could." ("open", "base", "angry", "downR") + cho "It's quite sad really, you could tell from a mile off that she has no interest in him whatsoever." ("normal", "narrow", "angry", "R") + gen "Maybe he's not mature enough for his age but once his character develops then love and attraction could unexpectedly come into fruition." ("base", xpos="far_left", ypos="head") + cho "*Pfff* What kind of soppy romance novels have you been reading?" ("soft", "closed", "angry", "mid") + cho "In any case, he come off as the clingy type... If anything ever happened between them it'd probably be out of pity on Hermione's part..." ("soft", "closed", "angry", "mid") + gen "And here I thought you'd make the assumption Miss Granger is sleeping with her friends." ("base", xpos="far_left", ypos="head") + cho "..." ("clench", "base", "base", "down") #Blushing + cho "Why would you think that?" ("open", "narrow", "angry", "downR") + gen "No reason..." ("base", xpos="far_left", ypos="head") + gen "Anyhow... We'll find our way in at some point I'm sure." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "base", "downR") #Blushing + gen "Our mission continues..." ("base", xpos="far_left", ypos="head") + cho "Right..." ("angry", "narrow", "base", "down") + cho "I'll be going then... Good night." ("open", "narrow", "base", "down") + gen "Good night Miss Chang." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points till 12. + $ cho_reputation += 1 + + jump end_cho_event + +## Harry Potter ## +label cc_pr_spy_boys_T3_harry: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "narrow", "angry", "mid", xpos="mid", ypos="base", trans=fade) + + gen "B, you return..." ("base", xpos="far_left", ypos="head") + gen "Was your mission successful?" ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "closed", "angry", "mid") + cho "This is such a waste of time..." ("open", "base", "angry", "downR") + gen "I gather you didn't get any useful information?" ("base", xpos="far_left", ypos="head") + cho "No..." ("annoyed", "base", "angry", "downR") + cho "I've been hiding in the boys bathroom trying to listen in on Harry and Ron." ("open", "closed", "angry", "mid") + gen "Why in the boys bathroom?" ("base", xpos="far_left", ypos="head") + cho "That's the only time Hermione isn't around..." ("soft", "base", "angry", "downR") + gen "I see, then what were they talking about?" ("base", xpos="far_left", ypos="head") + cho "Ron was going on about wizard's chess." ("open", "closed", "angry", "mid") + gen "Wizard's chess?" ("base", xpos="far_left", ypos="head") + cho "Yes, wizard's--{w=0.4} Surely you know about wizard's chess..." ("angry", "narrow", "raised", "mid") + cho "It's like regular chess except the pieces move on their own." ("soft", "narrow", "base", "mid") + gen "Sounds as dull as regular chess." ("base", xpos="far_left", ypos="head") + gen "Anything else?" ("base", xpos="far_left", ypos="head") + cho "Harry was talking a bit about quidditch but it was mostly bragging about some previous win of his." ("annoyed", "narrow", "base", "R") + cho "Honestly, that boy could learn to be a bit more humble... I have no idea why Hermione hangs around with him." ("soft", "narrow", "angry", "downR") + cho "Quidditch seems to be the only thing that he has going for him..." ("open", "narrow", "angry", "mid") + gen "Looks like you two have a lot in--" ("base", xpos="far_left", ypos="head") + cho "Those three seem to constantly have some sort of dick measuring contest in terms of who is best at something. Harry goes on about Quidditch, Ron about Chess and Hermione..." ("open", "closed", "angry", "mid") + cho "Well, Hermione seems to be the best at pretty much any other subject at this school..." ("annoyed", "base", "angry", "downR", cheeks="blush") + gen "I'm sure she'll be very impressed if you manage to win the quidditch cup." ("base", xpos="far_left", ypos="head") + cho "I don't care about her approval... I'm only doing this for me and my house..." ("open", "happyCl", "angry", "mid", cheeks="blush") + gen "You tell yourself that..." ("base", xpos="far_left", ypos="head") + gen "Well, I'm sure we'll find a good tactic to use against them." ("base", xpos="far_left", ypos="head") + cho "I hope so..." ("upset", "closed", "base", "mid", cheeks="blush") + + cho "So, are we done here?" ("angry", "base", "base", "down", cheeks="blush") + gen "Yes, that will be all." ("base", xpos="far_left", ypos="head") + cho "Good..." ("upset", "base", "base", "R", cheeks="blush") + cho "Good night then..." ("open", "base", "base", "mid", cheeks="blush") + gen "Good night Miss Chang." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points till 12. + $ cho_reputation += 1 + + jump end_cho_event diff --git a/game/scripts/characters/cho/events/requests/spy_on_the_girls.rpy b/game/scripts/characters/cho/events/requests/spy_on_the_girls.rpy new file mode 100644 index 00000000..1d78e20f --- /dev/null +++ b/game/scripts/characters/cho/events/requests/spy_on_the_girls.rpy @@ -0,0 +1,444 @@ + + +### Manipulate the enemy female Quidditch players ### + +### Start ### +label cc_pr_spy_girls_start: + + cho "" (xpos="right", ypos="base", trans=fade) + + if not cc_pr_spy_girls.is_event_complete(3, 1): # Completed shower event? + # Shower event - looking through the glory hole + + if not cc_pr_spy_boys.is_event_complete(3, 1): + # Player has not spied on boys just yet. + + gen "Time for some good old espionage!" ("base", xpos="far_left", ypos="head") + gen "For this mission -- I'd like you to spy on the girls of the Gryffindor team." ("base", xpos="far_left", ypos="head") + gen "When they're alone..." ("base", xpos="far_left", ypos="head") + cho "When they're alone, [cho_genie_name]?" ("open", "narrow", "raised", "mid") + cho "I can't get into their common room... you should know that." ("soft", "narrow", "base", "R") + gen "There are plenty of other places where girls hang out and gossip..." ("base", xpos="far_left", ypos="head") + gen "Want to know the place I'm thinking of?" ("grin", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "mid", cheeks="blush") #Blushes + gen "That's right, the women's changing room!" ("grin", xpos="far_left", ypos="head") + cho "Fine... I'll see what I can do." ("open", "closed", "base", "mid") + gen "Excellent!" ("grin", xpos="far_left", ypos="head") + cho "" ("annoyed", "base", "base", "mid") + gen "Report back to me as usual, C." ("base", xpos="far_left", ypos="head") + cho "\"C\", [cho_genie_name]?" ("soft", "base", "raised", "mid") + gen "It's your spy name!" ("grin", xpos="far_left", ypos="head") + cho "My spy name, [cho_genie_name]?" ("soft", "narrow", "base", "mid") + cho "The C stands for my Cho, I presume?" ("smile", "narrow", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + gen "No, not your name... I'm not that unimaginative..." ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "base", "mid") + gen "C is your cup-size, is it not?" ("base", xpos="far_left", ypos="head") + cho "My cup-size?!" ("angry", "wide", "base", "mid", cheeks="blush") + cho "But that's not even correct! Mine is--" ("disgust", "happyCl", "base", "mid", cheeks="heavy_blush") + cho "I mean... where do you get all these ideas from... seriously!?" ("upset", "narrow", "angry", "R", cheeks="blush") + gen "So what's your actual size then?{w} B?" ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "worried", "down", cheeks="blush") #Blushes + cho "Yes it's B..." ("soft", "narrow", "angry", "downR", cheeks="heavy_blush") #Blushes and glances to the side + gen "Noted..." ("grin", xpos="far_left", ypos="head") + cho "You're such an old pervert, you know that right?" ("annoyed", "narrow", "angry", "mid", cheeks="blush") + + else: + # Player has spied on the boys + + gen "Time for some more espionage..." ("base", xpos="far_left", ypos="head") + gen "This time we'll be targeting the girls!" ("grin", xpos="far_left", ypos="head") + cho "The girls? Anyone in particular you want me to spy on, [cho_genie_name]?" ("soft", "narrow", "raised", "mid") + gen "Why one of them when you could do all at once?" ("grin", xpos="far_left", ypos="head") + cho "All at once?" ("clench", "base", "base", "mid") + gen "That's what I said..." ("base", xpos="far_left", ypos="head") + gen "Their changing room should be a good place to start." ("base", xpos="far_left", ypos="head") + cho "You can't be serious!" ("mad", "happyCl", "worried", "mid", cheeks="blush") + gen "I know! I surprise myself with how good my plans are sometimes..." ("grin", xpos="far_left", ypos="head") + cho "I'm gonna get caught for sure..." ("disgust", "base", "worried", "down", cheeks="blush") # small text + cho "..." ("annoyed", "base", "angry", "down") + cho "I'll see what I can do..." ("annoyed", "narrow", "angry", "mid") + gen "Excellent." ("grin", xpos="far_left", ypos="head") + + gen "Now, to the gadgets..." ("base", xpos="far_left", ypos="head") + gen "I've got this great new invention... It's a vibrating magical rod that--" ("grin", xpos="far_left", ypos="head") + cho "A vibrating what?" ("open", "base", "raised", "mid") + gen "You could have let me finish, and I would have told you..." ("base", xpos="far_left", ypos="head") + cho "Wouldn't something like an extendable ear make more sense for eavesdropping?" ("open", "narrow", "base", "mid") + gen "Not unless it vibrates..." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "angry", "mid") + gen "You don't want it?" ("base", xpos="far_left", ypos="head") + cho "I'll manage without, [cho_genie_name]." ("annoyed", "narrow", "base", "mid") + gen "Suit yourself..." ("base", xpos="far_left", ypos="head") + gen "Anyway, you'd better get a move on." ("base", xpos="far_left", ypos="head") + gen "I expect your report this evening, B!" ("base", xpos="far_left", ypos="head") + gen "Good luck!" ("base", xpos="far_left", ypos="head") + cho "Thanks..." ("open", "narrow", "angry", "R") + + elif not cc_pr_spy_girls.is_event_complete(3, 2): # Completed Alicia Spinnet? + # Spy on Alicia Spinnet + + gen "Ready for some more espionage, B?" ("base", xpos="far_left", ypos="head") + cho "I suppose..." ("soft", "narrow", "base", "mid") + cho "Who's the target?" ("open", "narrow", "raised", "mid") + gen "Let's do the spinner girl--" ("base", xpos="far_left", ypos="head") + gen "I mean... Let's do Miss Spinnet next." ("base", xpos="far_left", ypos="head") + cho "Alicia?" ("soft", "base", "raised", "mid") + gen "Yes... I suggest you try and spy on her when she's not with the other two." ("base", xpos="far_left", ypos="head") + cho "Why just her?" ("soft", "narrow", "base", "mid") + gen "It's the best way to get to know a person, wouldn't you agree." ("base", xpos="far_left", ypos="head") + gen "Maybe she's putting up a front with her friends." ("base", xpos="far_left", ypos="head") + cho "If you say so..." ("annoyed", "base", "base", "R") + gen "Off you go, and good luck!" ("base", xpos="far_left", ypos="head") + cho "Thanks, [cho_genie_name]." ("base", "base", "base", "mid") + + elif not cc_pr_spy_girls.is_event_complete(3, 3): # Completed Katie Bell? + # Spy on Katie Bell + + gen "Ready for some more espionage, B?" ("base", xpos="far_left", ypos="head") + cho "Of course!" ("base", "base", "base", "mid") + gen "Which one of the girls from the Gryffindor team have we yet to spy on?" ("base", xpos="far_left", ypos="head") + cho "Well, I could spy on Katie..." ("open", "base", "raised", "R") + gen "Katie... Who?{w=0.5} That name doesn't ring a bell..." ("base", xpos="far_left", ypos="head") + cho "Katie Bell, [cho_genie_name]." ("soft", "narrow", "base", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "Just keep it quiet when you go after her... We're on a spy mission, after all." ("base", xpos="far_left", ypos="head") + gen "I don't want you to ring Katie's bell just yet. We'll get to that later..." ("grin", xpos="far_left", ypos="head") + cho "Ring her... Bell, [cho_genie_name]?" ("open", "narrow", "raised", "mid") + gen "Never mind... Off you go." ("base", xpos="far_left", ypos="head") + cho "Very well... Until later then." ("base", "base", "base", "mid") + + call cho_walk("door", "base") + + call bld + gen "Oh, wait... I forgot about the gadgets!" ("angry", xpos="far_left", ypos="head") + + call cho_walk(action="leave") + + call bld + gen "(Damn, she must've not heard me...)" ("base", xpos="far_left", ypos="head") + + # End early, cho already left! + $ cc_pr_spy_girls.inProgress = True + + jump end_cho_event + + elif not cc_pr_spy_girls.is_event_complete(3, 4): # Completed Angelina Johnson? + # Spy on Angelina Johnson + + gen "Ready for some more espionage, B?" ("base", xpos="far_left", ypos="head") + cho "I suppose... I assume you want me to go after the girls again?" ("soft", "base", "base", "mid") + gen "You'd be correct with that assumption..." ("base", xpos="far_left", ypos="head") + cho "Well, there's only one member I haven't spied on yet, which would be A--" ("open", "base", "base", "R") + with hpunch + gen "{b}Johnson!{/b}" ("angry", xpos="far_left", ypos="head") # large text + cho "..." ("disgust", "narrow", "base", "mid") + gen "Sorry. Couldn't help myself..." ("base", xpos="far_left", ypos="head") + cho "I meant to say Angelina, but yes... her." ("annoyed", "narrow", "base", "mid") + gen "She's their team captain, isn't she?" ("base", xpos="far_left", ypos="head") + gen "I can't stress enough that today's performance is of the utmost importance." ("base", xpos="far_left", ypos="head") + cho "..." ("soft", "base", "base", "mid") + gen "You can't get caught when you spy on her Johnson--" ("angry", xpos="far_left", ypos="head") + gen "I mean-- when you spy on Johnson..." ("angry", xpos="far_left", ypos="head") + cho "Of course... So what--" ("open", "base", "base", "mid") + gen "Utmost!" ("angry", xpos="far_left", ypos="head") + cho "" ("upset", "base", "base", "mid") + gen "Importance!" ("angry", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "base", "mid") + gen "So are you ready, B?" ("base", xpos="far_left", ypos="head") + cho "Yes I'm ready..." ("soft", "narrow", "angry", "R") + gen "Don't get spotted!" ("base", xpos="far_left", ypos="head") + cho "Until later then..." ("open", "closed", "base", "mid") + + else: + gen "Let's spy on those girls some more!" ("base", xpos="far_left", ypos="head") + cho "Again? I've already spied on them all..." ("soft", "base", "raised", "mid") + gen "You can never get enough intel." ("base", xpos="far_left", ypos="head") + gen "Make sure to bring me your report as usual B." ("base", xpos="far_left", ypos="head") + cho "Of course." ("base", "base", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + $ cc_pr_spy_girls.inProgress = True + + jump end_cho_event + + + +### Return Events ### + + +### Tier 3 (pre Gryffindor) ### + +label cc_pr_spy_girls_T3_showers: + # Showers - looking through the glory hole + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "narrow", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "Welcome back!{w=0.3} What's the report, B?" ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "angry", "downR", cheeks="blush") #Blushing looking away + gen "Did you get any juicy info that we could use against the Gryffindor girls?" ("base", xpos="far_left", ypos="head") + cho "No juicy info per se..." ("open", "closed", "base", "mid") + gen "Then how'd it go, anything you could tell me?" ("base", xpos="far_left", ypos="head") + cho "Well... I went to spy on them in the showers, just as you asked me..." ("soft", "narrow", "worried", "R", cheeks="blush") + cho "I found a hole in one of the walls, actually..." ("annoyed", "narrow", "raised", "mid") + gen "That's unfortunate, I'll have to look into filling that hole at some point..." ("base", xpos="far_left", ypos="head") + gen "So what were they talking about if it wasn't Quidditch?" ("base", xpos="far_left", ypos="head") + cho "*Ehm*... There wasn't much talking at all..." ("disgust", "narrow", "base", "downR", cheeks="blush") + cho "They were too preoccupied with kissing, and touching each other." ("open", "happyCl", "base", "mid", cheeks="blush") + gen "I knew it!" ("grin", xpos="far_left", ypos="head") + cho "*Hmph*..." ("annoyed", "narrow", "angry", "mid", cheeks="blush") #annoyed + gen "Makes you wish you had those girls on your own team, doesn't it?" ("grin", xpos="far_left", ypos="head") + cho "Yeah right..." ("annoyed", "narrow", "angry", "downR", cheeks="heavy_blush") #annoyed glancing to the right #blush + gen "What else did they do?" ("base", xpos="far_left", ypos="head") + cho "Not a lot to be honest..." ("open", "closed", "base", "mid") + cho "I wasn't going to stay until they were done..." ("annoyed", "narrow", "angry", "mid") + gen "Why not? What's the worst that could happen?" ("base", xpos="far_left", ypos="head") + gen "They'd catch you and ask for you to join in?" ("grin", xpos="far_left", ypos="head") + cho "*Pfff*...{w=0.3} As if...{w=0.3} They'd never let one of their opponents in on anything they were doing." ("soft", "narrow", "angry", "downR", cheeks="blush") + gen "At least you considered it." ("base", xpos="far_left", ypos="head") + cho "I didn't say that." ("mad", "narrow", "angry", "mid", cheeks="heavy_blush") + cho "I had no idea they were so lewd..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + cho "I'm worried that there's little I could do in terms of clothing that would distract them..." ("open", "closed", "worried", "mid") + cho "Seeing how they were crawling over each other's naked bodies..." ("annoyed", "narrow", "angry", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "You should've stayed for longer... Perhaps you could've learned a thing or two." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Anyway... I'll think of something..." ("base", xpos="far_left", ypos="head") + cho "Okay..." ("soft", "closed", "base", "mid") + gen "Mission accomplished, B!" ("angry", xpos="far_left", ypos="head") + gen "You may go now..." ("base", xpos="far_left", ypos="head") + cho "Good night, [cho_genie_name]." ("annoyed", "base", "base", "mid") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + + +## Alicia Spinnet ## +label cc_pr_spy_girls_T3_alicia: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "narrow", "base", "mid", xpos="mid", ypos="base", trans=fade) + + # Cho returns blushing with a vacant expression on her face + gen "Ready for your report, B..." ("base", xpos="far_left", ypos="head") + gen "What's the {i}sitch{/i}?" ("base", xpos="far_left", ypos="head") + cho "The \"sitch\", [cho_genie_name]?" ("soft", "narrow", "raised", "mid") + gen "What's the situation?" ("base", xpos="far_left", ypos="head") + gen "Did you manage to spy on Miss Spinnet?" ("base", xpos="far_left", ypos="head") + cho "I did..." ("open", "closed", "raised", "mid") + gen "Great, tell me what happened." ("base", xpos="far_left", ypos="head") + cho "She's been assisting the Weasley twins -- by drawing in more customers to their shop." ("open", "narrow", "base", "mid") + gen "How kind." ("base", xpos="far_left", ypos="head") + cho "I wouldn't call it that..." ("soft", "narrow", "base", "R") + cho "The only reason she's assisting them is because they promised they'd behave during Quidditch." ("open", "narrow", "raised", "mid") + + # Has player sent Hermione to work with the Twins, promoting the cardgame? + if not first_time_cardgame_work: + gen "(I thought Hermione was helping them with that already...)" ("base", xpos="far_left", ypos="head") + + cho "And she sure doesn't seem to have any problems enticing people." ("soft", "narrow", "base", "mid") + gen "So, how does she do it?" ("base", xpos="far_left", ypos="head") + cho "Well... If I didn't know better, I'd say she must be using some kind of hypnosis." ("annoyed", "narrow", "angry", "R") + gen "Hypnosis? Now that sounds completely absurd." ("base", xpos="far_left", ypos="head") + + # Has player started imperius curse training? + if ag_st_imperio.points > 0: + m "She's not using that im-perv-ius curse, is she?" + cho "The Imperius curse?" ("open", "narrow", "raised", "mid") + gen "That's what I said..." ("base", xpos="far_left", ypos="head") + cho "Of course not. That spell is illegal!{w=0.8} She'd be thrown into Azkaban for it..." ("soft", "narrow", "angry", "mid") + gen "That's-- *Ehm*...{w=0.3} correct.{w=0.5} Straight into prison..." ("base", xpos="far_left", ypos="head") + cho "But No... I haven't seen her with a wand in hand..." ("open", "closed", "base", "mid") + else: + cho "That's why I said, \"if I didn't know any better\"..." ("open", "closed", "base", "mid") + + cho "I saw her whisper something into another student's ear..." ("soft", "closed", "base", "mid") + cho "And as if on command -- they immediately followed her into the girls toilets." ("soft", "narrow", "angry", "mid") + gen "A girl that takes what she wants... I respect that." ("grin", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "angry", "mid") + gen "So, what was she doing with them?" ("base", xpos="far_left", ypos="head") + cho "Do you really have to ask, [cho_genie_name]?" ("open", "narrow", "raised", "mid") + cho "Surely you're able to guess what they did in there..." ("soft", "closed", "base", "mid") + gen "No, I have no idea!" ("grin", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "angry", "mid") + gen "Isn't that why you're here?{w=0.4} to tell me..." ("grin", xpos="far_left", ypos="head") + cho "She was doing lewd stuff with the student, obviously..." ("soft", "narrow", "angry", "R", cheeks="blush") + gen "Such as?" ("grin", xpos="far_left", ypos="head") + cho "So predictable..." ("disgust", "closed", "angry", "mid") + cho "Well, since I knew you'd ask... I did sneak in after her, and got a glimpse of her kneeling inside one of the stalls..." ("soft", "narrow", "angry", "mid") + cho "And whoever was in there with her wasn't being quiet... that's for sure." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "I should get her number." ("base", xpos="far_left", ypos="head") + cho "Her what?" ("annoyed", "narrow", "angry", "mid") + gen "Never mind... {w=0.4} So is that all you saw?" ("base", xpos="far_left", ypos="head") + cho "*Ehm*... Yes...{w=0.5} That was it..." ("quiver", "narrow", "base", "down", cheeks="blush") #Blushing + cho "As I said, I could only see her bottom, from underneath that stall..." ("open", "narrow", "base", "downR", cheeks="blush") #Blushing + gen "Your face says otherwise... Is that really everything you saw?" ("base", xpos="far_left", ypos="head") + cho "When I say bottom... She wasn't wearing any panties, [cho_genie_name]..." ("disgust", "happyCl", "worried", "mid", cheeks="blush") #Blushing + cho "She was also..." ("soft", "narrow", "worried", "mid", cheeks="blush") #Blushing + cho "She was also really wet down there..." ("horny", "narrow", "worried", "downR", cheeks="blush") #Blushing + gen "There it is..." ("grin", xpos="far_left", ypos="head") + cho "I just thought I'd tell you, since she was making a huge mess on the floor!" ("soft", "narrow", "angry", "mid", cheeks="blush") + cho "That's all..." ("annoyed", "narrow", "angry", "mid", cheeks="blush") + gen "Of course, thanks for letting me know." ("base", xpos="far_left", ypos="head") + gen "You've done a great job today, B!" ("base", xpos="far_left", ypos="head") + gen "Although, I still think my gadgets -- especially the magic rod -- would've been a great help for this mission." ("grin", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "angry", "R", cheeks="blush") #Blushing + gen "I could let you borrow it, to figure out how it works." ("base", xpos="far_left", ypos="head") + gen "It's very useful, you know." ("grin", xpos="far_left", ypos="head") + cho "I'm good, thanks..." ("soft", "narrow", "angry", "mid", cheeks="blush") + cho "I think I'll just head straight to bed, if you don't mind." ("soft", "narrow", "base", "downR", cheeks="blush") + + call cho_walk(xpos="door", ypos="base") + + pause .8 + call bld + gen "Changed your mind?" ("base", xpos="far_left", ypos="head") + cho "N-- no, Good night!" ("open", "happyCl", "base", "mid", cheeks="blush") # head + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + + +## Katie Bell ## +label cc_pr_spy_girls_T3_katie: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("annoyed", "narrow", "angry", "mid", xpos="mid", ypos="base", trans=fade) + + gen "Mission successful?" ("base", xpos="far_left", ypos="head") + gen "What did you learn about Katie Bell?" ("base", xpos="far_left", ypos="head") + cho "She's a freak!" ("soft", "narrow", "angry", "mid") # angry + gen "Whoa, that's a bit uncalled for, don't you think?" ("base", xpos="far_left", ypos="head") + gen "I'm sure she looks perfectly fine." ("base", xpos="far_left", ypos="head") + cho "No, not her looks... what she's been doing." ("open", "closed", "angry", "mid") # blush + cho "I followed her all the way down to the lake today. And then hid behind a tree to observe her." ("open", "narrow", "angry", "mid") + gen "Something wrong with a little swim?" ("base", xpos="far_left", ypos="head") + cho "No, but...{w=0.5} she went in there butt-naked!" ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "Butt-naked? Did they open up a nude-beach without telling me?" ("grin", xpos="far_left", ypos="head") + cho "Of course they haven't!" ("angry", "base", "base", "mid", cheeks="blush") + gen "Shame..." ("base", xpos="far_left", ypos="head") + cho "Once she had taken her clothes off -- she slowly walked into the water -- and then just vanished beneath the surface." ("open", "narrow", "base", "mid") + gen "That's...{w=0.4} odd..." ("base", xpos="far_left", ypos="head") + gen "Perhaps she's a mermaid?" ("grin", xpos="far_left", ypos="head") + cho "I highly doubt that, seeing that she has legs..." ("open", "closed", "base", "mid") + cho "Although, for a moment I did consider that the mermaids living there -- might have used their songs to charm her..." ("soft", "base", "raised", "up") + gen "Well that's not concerning at all..." ("base", xpos="far_left", ypos="head") + cho "She did resurface a couple of moments later though... just as I began to worry..." ("annoyed", "base", "base", "mid") + cho "But she emerged with a huge splash -- as she had been lifted into the air by some giant tentacles!" ("soft", "base", "angry", "mid") + gen "Whoa, tentacles!" ("angry", xpos="far_left", ypos="head") + gen "Wait, you're seriously not making this up? Since when do Mermaids have tentacles?" ("base", xpos="far_left", ypos="head") + cho "I highly doubt it was them..." ("open", "closed", "base", "mid") + cho "I've told you, she's a freak!" ("soft", "narrow", "angry", "mid") + gen "So she's into tentacles, *huh*?" ("base", xpos="far_left", ypos="head") + cho "Yes... Gross, slimy, green tentacles..." ("disgust", "narrow", "angry", "down", cheeks="blush") + cho "She must've used some charm... It was as if the lake had come to life!" ("clench", "narrow", "angry", "R") + gen "Shiver me timbers!" ("angry", xpos="far_left", ypos="head") + gen "What a fearless woman, to meddle with such magic?!" ("angry", xpos="far_left", ypos="head") + gen "What was it doing to her?" ("base", xpos="far_left", ypos="head") + cho "*Ugh* Do I really have to tell you..." ("disgust", "narrow", "angry", "R", cheeks="blush") + gen "With as much detail as possible, thank you." ("grin", xpos="far_left", ypos="head") + cho "Fine..." ("annoyed", "narrow", "angry", "down", cheeks="blush") + cho "They were holding her body stationary in the air -- whilst more of its tentacles were working their way around -- squeezing her breasts." ("soft", "closed", "base", "mid") + gen "Classic tentacle move!" ("angry", xpos="far_left", ypos="head") + cho "As it... {w=0.5} continued...{w=0.8} the tentacles grabbed her around the waist and began moving her body up and down -- with another one wrapping itself around her legs." ("clench", "narrow", "worried", "mid", cheeks="heavy_blush") + cho "She almost looked like a doll being puppeteered by those giant arms..." ("soft", "narrow", "angry", "mid", cheeks="blush") + gen "And she was letting it do this willingly?" ("base", xpos="far_left", ypos="head") + cho "Yes, she seemed to thoroughly enjoy being its...{w=0.8} toy to play with." ("clench", "narrow", "base", "downR", cheeks="blush") + cho "She looked as if possessed! Being held up in the air like that, with her eyes rolled back into her head." ("soft", "narrow", "angry", "mid") + cho "Then I watched another tentacle slip through her legs -- which was enough to bring her over the edge, I think." ("mad", "narrow", "raised", "down", cheeks="blush") + gen "Impressive..." ("base", xpos="far_left", ypos="head") + gen "Sounds to me like a mission accomplished!" ("grin", xpos="far_left", ypos="head") + cho "Mission... what?" ("soft", "narrow", "raised", "mid") + gen "I'm sure you've just learned more about her than even her closest friends." ("base", xpos="far_left", ypos="head") + cho "" ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "She's a girl who likes it dirty, and takes it rougher than even the toughest sea dog can muster!" ("angry", xpos="far_left", ypos="head") + cho "If you say so, [cho_genie_name]..." ("soft", "narrow", "base", "R", cheeks="blush") + gen "A pervert who doesn't give a hoot about foreplay." ("grin", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "angry", "mid", cheeks="blush") + gen "And you definitely know not to entice her with any sort of seaweed." ("grin", xpos="far_left", ypos="head") + cho "Can I go now?" ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Yes, you may leave..." ("base", xpos="far_left", ypos="head") + gen "Good job today, [cho_name]." ("grin", xpos="far_left", ypos="head") + cho "Thanks..." ("soft", "closed", "base", "mid") + cho "Good Night." ("normal", "narrow", "base", "mid") + gen "Until next time." ("base", xpos="far_left", ypos="head") + + # Cho leaves. + call cho_walk(action="leave") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event + + +## Angelina Johnson ## +label cc_pr_spy_girls_T3_angelina: + + # Cho enters. + call cho_walk(action="enter", xpos="desk", ypos="base") + + cho "" ("normal", "narrow", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "Ready for your report, B... lay on me!" ("grin", xpos="far_left", ypos="head") + cho "Don't you mean lay \"it\" on me, [cho_genie_name]?" ("soft", "narrow", "raised", "mid") + gen "I'm pretty sure I'm right..." ("base", xpos="far_left", ypos="head") + gen "But before that, tell me how everything went with Miss Johnson!" ("base", xpos="far_left", ypos="head") + cho "Well enough, I'd say..." ("open", "narrow", "raised", "down") + cho "I stayed behind after practice, to see if I could follow her once they were done changing their clothes." ("smile", "narrow", "angry", "mid") + cho "To my surprise, she didn't head back to the castle like the others, but went to the referee's office instead..." ("base", "narrow", "angry", "mid") + gen "The Referee?" ("base", xpos="far_left", ypos="head") + cho "Madam Hooch's office, [cho_genie_name]." ("soft", "base", "raised", "mid") + cho "I managed to eavesdrop on their conversation, although I only caught the tail end of it..." ("open", "base", "base", "L") + cho "I suspect Madame Hooch might know what they've been doing in the showers after the game..." ("base", "narrow", "angry", "mid", cheeks="blush") + cho "Angelina was talking about how she couldn't believe that she and her friends were being spied on like that." ("open", "base", "base", "up") + cho "Madam Hooch just laughed it off and told her she should take it as a compliment." ("grin", "happyCl", "base", "mid", cheeks="blush") + gen "Good to know my staff knows how to diffuse a situation..." ("base", xpos="far_left", ypos="head") + cho "Angelina sure didn't see it that way -- and stormed right out her office..." ("base", "narrow", "angry", "mid") + gen "You sure she wasn't talking about--" ("base", xpos="far_left", ypos="head") + cho "[cho_genie_name]... If Madame Hooch is spying on them, then Angelina might get the idea to entice her into helping them during the finals!" ("annoyed", "narrow", "base", "mid") + gen "*Hmm*... Not a bad idea, now that I think about it..." ("base", xpos="far_left", ypos="head") + gen "We should try that as well." ("grin", xpos="far_left", ypos="head") + cho "No! I don't want to win by cheating!" ("clench", "narrow", "angry", "mid") + gen "Yes, cause distracting hardly counts as cheating..." ("base", xpos="far_left", ypos="head") + cho "Well of course it doesn't! It's within the rules!" ("open", "closed", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + cho "We need to do something about it, before Angelina tries to take advantage of the situation..." ("soft", "narrow", "angry", "mid") + gen "I'll... figure something out..." ("base", xpos="far_left", ypos="head") + cho "You'd better!" ("annoyed", "narrow", "angry", "mid") #Angry + cho "So... are we done here?" ("base", "narrow", "raised", "mid") #smiles and focuses on genie + gen "Yes, mission successful, [cho_name]!" ("grin", xpos="far_left", ypos="head") + gen "We'll have that girl wrapped around our--" ("base", xpos="far_left", ypos="head") + gen "I mean... around your finger soon enough..." ("grin", xpos="far_left", ypos="head") + cho "Counting on it!" ("soft", "narrow", "raised", "mid") + cho "Good night, [cho_genie_name]." ("base", "narrow", "base", "mid") + + #cho leaves + call cho_walk(action="leave") + + call bld + gen "(Wrapped around your finger...{w} good one...)" ("grin", xpos="far_left", ypos="head") + + if cho_reputation < 12: # Points til 12. + $ cho_reputation += 1 + + jump end_cho_event diff --git a/game/scripts/characters/cho/events/summon.rpy b/game/scripts/characters/cho/events/summon.rpy new file mode 100644 index 00000000..f2caf354 --- /dev/null +++ b/game/scripts/characters/cho/events/summon.rpy @@ -0,0 +1,82 @@ +label cho_summon_setup: + + $ cho_wardrobe_unlocked = True + + # Reset doll state + $ cho.wear("all") + $ cho.set_cum(None) + $ cho.animation = [] + + # Unlock favours at tier 3 + # this will probably move to a cho_quid_E# event once we've implemented Gryffindor lead-up events + if cho_tier == 3: + $ cho_favors_unlocked = True + + if cho_outfits_schedule: + $ cho.equip_random_outfit() + + call play_sound("door") + call cho_chibi("stand", "mid", "base") + with d3 + + #Cho greeting. + call play_music("cho") + + if cho_mood > 0: + if 5 > cho_mood >= 1: + cho "Yes, [cho_genie_name]?" ("annoyed", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + elif 10 > cho_mood >= 5: + cho "*sigh*... Yes, [cho_genie_name]?" ("open", "base", "base", "R", xpos="base", ypos="base", trans=d3) + elif 20 > cho_mood >= 10: + cho "What is it, [cho_genie_name]?" ("annoyed", "base", "angry", "mid", xpos="base", ypos="base",trans=d3) + elif 30 > cho_mood >= 20: + cho "What do you want, \"[cho_genie_name]\"?" ("angry", "narrow", "angry", "mid", xpos="base", ypos="base",trans=d3) + elif 40 > cho_mood >= 30: + cho "*Hmph*..." ("upset", "base", "angry", "R", xpos="base", ypos="base",trans=d3) + elif 50 > cho_mood >= 40: + cho "*Tsk*" ("soft", "narrow", "angry", "R", xpos="base", ypos="base",trans=d3) + elif cho_mood >= 50: + cho "I can't believe you've done this!" ("scream", "wide", "angry", "mid", xpos="base", ypos="base",trans=d3) + cho "" ("upset", "wide", "angry", "mid") + + call describe_mood("Cho", cho_mood) + call tutorial("moodngifts") + else: + if game.daytime: + cho "Good morning, [cho_genie_name]." ("base", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + else: + cho "Good evening, [cho_genie_name]." ("base", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + + if cho_tier == 1: + # Intro hints + if not ss_he.cho_E1 or not cho_intro.E3_complete: + + label .hint_menu: + + menu: + "-Talk-" (icon="interface/icons/small/talk.webp"): + cho "Have you gotten Hermione to stop spreading rumours about me?" ("annoyed", "narrow", "base", "mid") + gen "Oh, was I supposed to do that?" ("base", xpos="far_left", ypos="head") + cho "Yes!" ("angry", "base", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + gen "(Hmm... I think I could use this tension between those two...)" ("base", xpos="far_left", ypos="head") + if not ss_he.cho_E1: + gen "(Better tell Snape about my plan before confronting Miss Granger...)" ("base", xpos="far_left", ypos="head") + elif not cho_intro.E3_complete: + gen " (I should probably talk to Hermione...)" ("base", xpos="far_left", ypos="head") + + jump cho_summon_setup.hint_menu + + "-Dismiss Her-": + stop music fadeout 3.0 + + if cho_mood == 0: + cho "Goodbye, [cho_genie_name]." (face="happy") + else: + cho "Goodbye, [cho_genie_name]." (face="annoyed") + + call play_sound("door") + + jump end_cho_event + + return diff --git a/game/scripts/characters/cho/favors.rpy b/game/scripts/characters/cho/favors.rpy new file mode 100644 index 00000000..8f1c1542 --- /dev/null +++ b/game/scripts/characters/cho/favors.rpy @@ -0,0 +1,51 @@ +# Cho Favors +# cc_pf = Cho Chang Personal Favor +default cc_pf_talk = event_class(title = "Talk to me!", start_label = "cc_pf_talk", start_tier = 1, + events = [ + [ + ["cc_pf_talk_T1_intro_E1"], + ["cc_pf_talk_T1_intro_E2"], + ["cc_pf_talk_T1_E3"] + ], + [ + ["cc_pf_talk_T2_intro_E1"], + ["cc_pf_talk_T2_intro_E2"], + ["cc_pf_talk_T2_E3"] + ], + [ + ["cc_pf_talk_T3_intro_E1"], + ["cc_pf_talk_T3_intro_E2"], + ["cc_pf_talk_T3_E3"] + ] + ], + iconset = [["heart_empty", "heart_red"], ["heart_empty", "heart_red"], ["heart_empty", "heart_red"]] +) +#cc_pf_strip_T3_intro_E3 +default cc_pf_strip = event_class(title = "Inspect her body!", start_label = "cc_pf_strip", start_tier = 2, + events = [ + [ + ["cc_pf_strip_T2_intro_E1"], + ["cc_pf_strip_T2_intro_E2"], + ["cc_pf_strip_T2_intro_E3"], ["cc_pf_strip_T2_E3"] + ], + [ + ["cc_pf_strip_T3_intro_E1"], + ["cc_pf_strip_T3_intro_E2"], + ["cc_pf_strip_T3_intro_E3"], ["cc_pf_strip_T3_repeat"] + ] + ], + iconset = [["heart_empty", "heart_red"], ["heart_empty", "heart_red"]] +) + +default cc_pf_blowjob = event_class(title = "Suck it!", start_label = "cc_pf_blowjob", start_tier = 3, + events = [ + [ + ["cc_pf_blowjob_T3_intro_E1"], + ["cc_pf_blowjob_T3_E2"], + ["cc_pf_blowjob_T3_E3"], + ] + ], + iconset = [["heart_empty", "heart_red"]] +) + +default cc_favor_list = [cc_pf_talk, cc_pf_strip, cc_pf_blowjob] diff --git a/game/scripts/characters/cho/gifts.rpy b/game/scripts/characters/cho/gifts.rpy new file mode 100644 index 00000000..3761c82a --- /dev/null +++ b/game/scripts/characters/cho/gifts.rpy @@ -0,0 +1,573 @@ +### Give Cho Gift ### + +label give_cho_gift(gift_item): + hide cho_main + with d5 + cho "" (xpos="mid", ypos="base", trans=d5) + + $ gave_cho_gift = True + + if gift_item == lollipop_ITEM: + if cho_tier <= 1: + cho "Sweets?" (pupils="down", face="horny", xpos="mid", ypos="base") + cho "My team captain hasn't let me buy any to keep my blood sugar balanced, whatever that means." (mouth="soft", face="annoyed") + call give_gift(">You give the sweets to Cho...",gift_item) + cho "But thanks, [cho_genie_name]." (face="neutral") + call cho_mood(-2) + elif cho_tier == 2: + cho "Sweets?" (pupils="down", face="horny", xpos="mid", ypos="base") + call give_gift(">You give the sweets to Cho...",gift_item) + cho "Thank you, [cho_genie_name] I do think I deserve one at least after winning our first match." ("smile", "base", "base", "L") + call cho_mood(-2) + elif cho_tier == 3: + cho "Sweets?" (pupils="down", face="horny", xpos="mid", ypos="base") + cho "But we're up against Gryffindor soon, I don't want to get addicted to sugar..." (mouth="soft", face="annoyed") + call give_gift(">You give the sweets to Cho...",gift_item) + cho "Thank you, [cho_genie_name]." ("smile", "base", "base", "L") + call cho_mood(-1) + else: + cho "Sweets?" (pupils="down", face="horny", xpos="mid", ypos="base") + call give_gift(">You give the sweets to Cho...",gift_item) + cho "I'll keep it for later, I like licking it in front of my teammates to tease them a bit." ("open", "base", "raised", "mid") + cho "*Mmmh*, but in the future... I'm more of a savoury kind of girl when it comes to sucking on things..." ("horny", "wink", "base", "mid") + cho "But thanks, [cho_genie_name]." ("smile", "base", "base", "L") + call cho_mood(-1) + + elif gift_item == chocolate_ITEM: + if cho_tier <= 1: + cho "Chocolate?" (pupils="down", face="horny", xpos="mid", ypos="base") + cho "I probably shouldn't... although." (pupils="R", face="horny") + call give_gift(">You give the chocolate to Cho...",gift_item) + cho "I'll take it, [cho_genie_name]!" (face="happy") + call cho_mood(-2) + elif cho_tier == 2: + cho "Chocolate... now that would be a treat..." (pupils="down", face="horny", xpos="mid", ypos="base") + call give_gift(">You give the chocolate to Cho...",gift_item) + cho "What the heck, I deserve it." ("smile", "base", "base", "L") + cho "Thank you, [cho_genie_name]." ("open", "base", "base", "L") + call cho_mood(-2) + elif cho_tier == 3: + cho "Chocolate?" (pupils="down", face="horny", xpos="mid", ypos="base") + cho "But we're up against Gryffindor soon, I don't want to get addicted to sugar..." (mouth="soft", face="annoyed") + call give_gift(">You give the chocolate to Cho...",gift_item) + cho "Thanks." ("base", "base", "base", "L") + call cho_mood(-1) + else: + cho "Chocolate?" (pupils="down", face="horny", xpos="mid", ypos="base") + call give_gift(">You give the chocolate to Cho...",gift_item) + cho "YES!" ("smile", "base", "base", "L") + cho "I've been trying to stay away from it but since the season is over I can have as much as I'd like..." ("open", "wide", "base", "L") + cho "Within reason." ("base", "base", "base", "L") + call cho_mood(-2) + + elif gift_item == plush_owl_ITEM: + if cho_tier <= 1: + cho "A toy?" (face="annoyed", xpos="mid", ypos="base") + call give_gift(">You give the stuffed owl to Cho...",gift_item) + cho "My team would probably laugh if they saw me with this..." (mouth="open", face="annoyed") + cho "I guess it's cute..." (face="annoyed") + call cho_mood(0) + elif cho_tier == 2: + cho "A toy?" (pupils="down", face="horny", xpos="mid", ypos="base") + call give_gift(">You give the stuffed owl to Cho...",gift_item) + cho "That's very nice of you [cho_genie_name] but I'd probably be made fun of owning this..." ("annoyed", "base", "base", "mid") + cho "I guess I could give it to someone." ("open", "base", "base", "down") + call cho_mood(0) + elif cho_tier == 3: + cho "A toy?" (pupils="down", face="horny", xpos="mid", ypos="base") + call give_gift(">You give the stuffed owl to Cho...",gift_item) + cho "I'm not a child [cho_genie_name]..." ("annoyed", "base", "base", "mid") + cho "Thank you I guess..." ("open", "base", "base", "down") + call cho_mood(0) + else: + cho "A toy?" (pupils="down", face="horny", xpos="mid", ypos="base") + call give_gift(">You give the stuffed owl to Cho...",gift_item) + cho "Not the kind of Toy I'd like..." ("horny", "narrow", "raised", "mid") + cho "Thank you I suppose." ("annoyed", "base", "base", "mid") + call cho_mood(0) + + elif gift_item == butterbeer_ITEM: + if cho_tier <= 1: + cho "Butterbeer?" (face="disgusted", xpos="mid", ypos="base") + cho "Isn't this supposed to be alcoholic? I'm not supposed to drink during the season..." (face="annoyed") + call cho_mood(1) + elif cho_tier == 2: + cho "Butterbeer?" (pupils="down", face="horny", xpos="mid", ypos="base") + cho "Yes, I'll take it... turns out my team mates had been lying about the alcohol content to mess with me." ("open", "narrow", "base", "mid") + cho "I guess I'll finally find out what I've been missing out on!" ("soft", "base", "raised", "L") + call give_gift(">You give the Butterbeer to Cho...",gift_item) + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-2) + elif cho_tier == 3: + cho "Butterbeer?" (pupils="down", face="horny", xpos="mid", ypos="base") + cho "It's a bit tame isn't it? I chugged a lot of it after our last win and can't say I felt a buzz even." ("open", "narrow", "base", "L") + call give_gift(">You give the Butterbeer to Cho...",gift_item) + cho "Thank you I suppose, [cho_genie_name]." (face="neutral") + call cho_mood(0) + else: + cho "Butterbeer?" (pupils="down", face="horny", xpos="mid", ypos="base") + cho "Don't you have any firewhisky?" ("annoyed", "base", "base", "mid") + call give_gift(">You give the Butterbeer to Cho...",gift_item) + cho "Thank you I suppose, [cho_genie_name]." (face="neutral") + call cho_mood(0) + + elif gift_item == science_mag_ITEM: + if cho_tier <= 1: + cho "Oh, I heard that they put out a new formula for broom polish in this issue." (mouth="open", pupils="R", face="neutral", xpos="mid", ypos="base") + call give_gift(">You give an assortment of educational magazines to Cho...",gift_item) + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-1) + elif cho_tier == 2: + cho "*Hmm*... Broom aerodynamics and how to utilise your opponents slipstream..." (pupils="down", face="horny", xpos="mid", ypos="base") + cho "Interesting..." ("smile", "base", "base", "mid") + call give_gift(">You give an assortment of educational magazines to Cho...",gift_item) + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-1) + elif cho_tier == 3: + cho "Five steps to modify your brooms legally..." (pupils="down", face="horny", xpos="mid", ypos="base") + cho "Sounds useful." ("smile", "base", "base", "mid") + call give_gift(">You give an assortment of educational magazines to Cho...",gift_item) + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-1) + else: + cho "Experts guide, How to maintain and store your Quidditch gear." (pupils="down", face="horny", xpos="mid", ypos="base") + cho "Isn't that what a broom closet is for?" (face="annoyed", xpos="mid", ypos="base") + call give_gift(">You give an assortment of educational magazines to Cho...",gift_item) + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-1) + + elif gift_item == girls_mag_ITEM: + if cho_tier <= 1: + cho "Girls magazines, what do you think I am... a gi--" (pupils="down", face="horny", xpos="mid", ypos="base") + cho "I'm good thank you..." ("open", "base", "base", "L",xpos="mid",ypos="base") + call cho_mood(0) + elif cho_tier == 2: + cho "Girls magazines?" (pupils="down", face="annoyed", xpos="mid", ypos="base") + call give_gift(">You give an assortment of rather girly magazines to Cho...",gift_item) + cho "I don't usually read these types of magazines, the boys used to make fun of me for it." (face="annoyed") + cho "But they can't get into the girls dorm." (face="neutral") + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-1) + elif cho_tier == 3: + cho "Girls magazines?" (pupils="down", face="horny", xpos="mid", ypos="base") + call give_gift(">You give an assortment of rather girly magazines to Cho...",gift_item) + cho "They do have some interesting stuff on skincare I suppose..." ("annoyed", "closed", "base", "mid") + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-1) + else: + cho "Girls magazines?" (pupils="down", face="horny", xpos="mid", ypos="base") + cho "I did enjoy last months issue about cultural appropriation with traditional clothing..." ("smile", "base", "base", "mid") + call give_gift(">You give an assortment of rather girly magazines to Cho...",gift_item) + cho "Don't tell the boys I said that." ("soft", "closed", "base", "mid") + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-1) + + elif gift_item == adult_mag_ITEM: + if cho_tier <= 1: + cho "Adult magazines?" ("angry", "wide", "raised", "mid",xpos="mid",ypos="base") + cho "This is highly inappropriate [cho_genie_name]!" ("scream", "narrow", "raised", "mid") + cho "Is this the kind of thing you usually give to people?" ("angry", "base", "base", "L") + call cho_mood(1) + elif cho_tier == 2: + cho "Adult magazines?" (face="disgusted", xpos="mid", ypos="base") + call give_gift(">You give an assortment of adult magazines to Cho...",gift_item) + cho "These people do have nice, posture..." (face="horny") + cho "I... I guess they could be useful." (face="horny") + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-1) + elif cho_tier == 3: + cho "Adult magazines?" (pupils="down", face="horny", xpos="mid", ypos="base") + call give_gift(">You give an assortment of adult magazines to Cho...",gift_item) + cho "They're all so fit in these magazines, totally my type." ("open", "wide", "raised", "down") + cho "Does this one model in the nude?" ("horny", "base", "base", "L") + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-1) + else: + cho "Adult magazines?" (pupils="down", face="horny", xpos="mid", ypos="base") + call give_gift(">You give an assortment of adult magazines to Cho...",gift_item) + cho "Wow, look at that guys abs..." ("horny", "base", "base", "down") + cho "And that girls..." ("soft", "base", "raised", "down") + cho "I'll take it." ("open", "narrow", "base", "mid") + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-2) + + elif gift_item == porn_mag_ITEM: + if cho_tier <= 1: + cho "What is this!?!" ("angry", "wide", "raised", "mid",xpos="mid",ypos="base") + cho "Porn magazines?" ("open", "wide", "angry", "mid") + cho "Sir, why would you even think of giving me something like this?" ("scream", "narrow", "angry", "L",xpos="mid",ypos="base") + cho "" ("angry", "base", "angry", "down") + call cho_mood(3) + elif cho_tier == 2: + cho "What is this?" (pupils="down", face="horny", xpos="mid", ypos="base") + cho "Porn magazines? Sir, that's too much even for you..." ("annoyed", "narrow", "base", "down") + cho "Is that a snitch in her sna-- No... just no..." ("open", "wide", "raised", "down") + cho "" ("angry", "base", "angry", "down") + call cho_mood(2) + elif cho_tier == 3: + cho "What's this?" (face="annoyed", xpos="mid", ypos="base") + call give_gift(">You give an assortment of porn magazines to Cho...",gift_item) + cho "What's with these positions? Is that a broom handle up her..." (mouth="open",eyes="wide",eyebrows="raised", pupils="down") + cho "Oh my..." (mouth="soft", pupils="R", face="disgusted") + call cho_mood(0) + else: + cho "Porn magazines?" (pupils="down", face="horny", xpos="mid", ypos="base") + cho "Ooh, are those two doing it on a broom? That's impressive..." ("open", "wide", "raised", "down") + cho "[cho_genie_name], this is naughty. Even for you..." ("horny", "wink", "base", "L") + cho "I've got my eyes on you." ("base", "narrow", "raised", "L") + call give_gift(">You give an assortment of porn magazines to Cho...",gift_item) + cho "Thank you." ("smile", "base", "base", "mid") + call cho_mood(-3) + + elif gift_item == krum_poster_ITEM: + if cho_tier <= 1: + cho "A Viktor Krum poster?" (mouth="open", eyes="wide", eyebrows="raised", pupils="mid", xpos="mid", ypos="base") + cho "Professor, he doesn't have his shirt on!" ("scream", "wide", "base", "down") + cho "That's...{w=0.3} highly inappropriate..." ("open", "narrow", "base", "downR") + cho "I can't...{w=0.3} I can't accept this." ("upset", "closed", "base", "mid") + cho "" ("base", "base", "base", "mid") + call cho_mood(0) + elif cho_tier == 2: + cho "A Viktor Krum poster?" (mouth="soft", eyes="wide", eyebrows="raised", pupils="mid", xpos="mid", ypos="base") + cho "He really is quite muscular isn't he..." ("open", "narrow", "base", "down") + cho "I'll use it..." ("smile", "base", "base", "mid") + call give_gift(">You give the poster to Cho...",gift_item) + cho "As a motivational poster that is!" ("open", "wide", "raised", "L") + cho "Thank you [cho_genie_name]." (face="neutral") + call cho_mood(-2) + elif cho_tier == 3: + cho "A Viktor Krum poster?" (mouth="smile", eyes="wide", eyebrows="raised", pupils="mid", xpos="mid", ypos="base") + cho "Wasn't his nudes leaked in Wizard Hunks weekly?" ("open", "narrow", "base", "mid") + cho "..." ("angry", "wide", "raised", "down") + cho "Not that I'd read such a thing." ("upset", "base", "base", "downR") + call give_gift(">You give the poster to Cho...",gift_item) + cho "Thank you [cho_genie_name]." (face="neutral") + call cho_mood(-3) + else: + cho "A Viktor Krum poster?" (mouth="scream", eyes="wide", eyebrows="raised", pupils="mid", xpos="mid", ypos="base") + cho "I'll take that if you don't mind." (pupils="downR", face="horny") + call give_gift(">You give the poster to Cho...",gift_item) + cho "(...)" (mouth="soft", pupils="up", face="horny") + cho "I love it, [cho_genie_name]." (pupils="mid", face="horny") + call cho_mood(-5) + + elif gift_item == sexy_lingerie_ITEM: + if cho_tier <= 1: + cho "Lingerie?" ("annoyed", "narrow", "raised", "down",xpos="mid",ypos="base") + cho "Sir, are you expecting me to wear this?" ("open", "wide", "raised", "mid") + cho "Are you insane?!" ("scream", "wide", "raised", "L") + cho "No thank you..." ("open", "base", "angry", "down") + cho "" ("annoyed", "base", "base", "mid") + call cho_mood(2) + elif cho_tier == 2: + cho "Lingerie?" ("annoyed", "narrow", "base", "down",xpos="mid",ypos="base") + cho "Why would I want this? I have plenty of clothes I like already..." ("open", "wide", "raised", "down") + cho "I'll pass on that one, thanks." ("base", "base", "base", "mid") + call cho_mood(0) + elif cho_tier == 3: + cho "Lingerie?" (face="annoyed", xpos="mid", ypos="base") + cho "Seems pretty flexible. I might be able use these when stretching." (mouth="annoyed", pupils="down", face="annoyed") + call give_gift(">You give the lingerie to Cho...",gift_item) + cho "Thank you [cho_genie_name]." (face="neutral") + call cho_mood(-2) + else: + cho "Lingerie?" (mouth="open", eyes="wide", eyebrows="raised", pupils="mid", xpos="mid", ypos="base") + cho "Sexy... Did you pick them out yourself?" ("horny", "wide", "base", "down") + cho "You've got good taste... I tore mine last year during the ball..." ("base", "base", "raised", "mid") + cho "Well, they got torn at one point at least..." ("smile", "narrow", "base", "down") + call give_gift(">You give the lingerie to Cho...",gift_item) + cho "Thank you [cho_genie_name]." (face="neutral") + call cho_mood(-3) + + elif gift_item == sexy_stockings_ITEM : + if cho_tier <= 1: + cho "stockings?" ("annoyed", "narrow", "raised", "down",xpos="mid",ypos="base") + cho "Surely that must be against some kind of dresscode..." ("open", "wide", "raised", "mid") + cho "I'll pass..." ("open", "base", "angry", "down") + cho "" ("annoyed", "base", "base", "mid") + call cho_mood(1) + elif cho_tier == 2: + cho "Stockings?" ("annoyed", "narrow", "base", "down",xpos="mid",ypos="base") + cho "I guess I wont get sunburnt on my legs wearing these..." ("open", "narrow", "base", "mid") + call give_gift(">You give the lingerie to Cho...",gift_item) + cho "Thank you [cho_genie_name]." (face="neutral") + call cho_mood(-1) + elif cho_tier == 3: + cho "Stockings?" ("annoyed", "narrow", "base", "down",xpos="mid",ypos="base") + cho "I can almost see right through these..." (mouth="annoyed", pupils="down", face="annoyed") + call give_gift(">You give the lingerie to Cho...",gift_item) + cho "Thank you [cho_genie_name]." (face="neutral") + call cho_mood(-2) + else: + cho "Stockings?" ("annoyed", "narrow", "base", "down",xpos="mid",ypos="base") + cho "But my legs gets to itchy in these, I'd rather go without any leggings..." ("open", "narrow", "base", "mid") + call cho_mood(0) + + elif gift_item == pink_condoms_ITEM: + if cho_tier <= 1: + cho "Condoms?" (mouth="open", eyes="wide", eyebrows="raised", pupils="mid", xpos="mid", ypos="base") + cho "You're expecting me to go and fuck the teachers, is that what you want?" ("scream", "narrow", "raised", "L") + cho "I'm not one of those Slytherin skanks that impale themselves on the daily." ("angry", "narrow", "base", "mid") + cho "You can take those and go fuck yourself with them..." ("soft", "narrow", "angry", "mid") + call cho_mood(2) + elif cho_tier == 2: + cho "Condoms?" (mouth="open", eyes="wide", eyebrows="raised", pupils="mid", xpos="mid", ypos="base") + cho "I'm not the kind of girl to go around banging everything I come across..." ("soft", "base", "base", "down") + cho "Thanks but no thanks..." ("open", "base", "base", "mid") + call cho_mood(1) + elif cho_tier == 3: + cho "Condoms?" (mouth="open", eyes="wide", eyebrows="raised", pupils="mid", xpos="mid", ypos="base") + cho "Are you expecting that I should use these? I know safe sex is important and all but I know what you're insinuating." ("angry", "narrow", "raised", "L") + cho "Keep them..." ("soft", "base", "base", "down") + cho "" ("annoyed", "base", "base", "mid") + call cho_mood(0) + else: + cho "Condoms?" (pupils="down", face="horny", xpos="mid", ypos="base") + call give_gift(">You give a pack of condoms to Cho...", gift_item) + cho "I do surround myself with mostly boys, so having these at hand could be useful..." (pupils="downR", face="horny") + cho "Thank you for your concerns, [cho_genie_name]..." (mouth="soft", pupils="mid", face="neutral") + call cho_mood(-2) + + elif gift_item == vibrator_ITEM: + if cho_tier <= 1: + cho "A vibrator?" (mouth="open", eyes="wide", eyebrows="raised", pupils="mid", xpos="mid", ypos="base") + cho "Sir, are you out of your mind?" ("scream", "wide", "raised", "L") + cho "I'm your student for crying out loud, giving gifts in general is a bit weird but sex toys..." ("angry", "wide", "base", "mid") + cho "Seriously?!" ("scream", "wide", "raised", "L") + call cho_mood(3) + elif cho_tier == 2: + cho "A vibrator?" (mouth="open", eyes="wide", eyebrows="raised", pupils="mid", xpos="mid", ypos="base") + cho "Why would you give me that..." ("angry", "base", "base", "down") + cho "Give it to Granger, I'm sure she'd love to accept a sex toy from her headmaster." ("smile", "narrow", "angry", "mid") + call cho_mood(2) + elif cho_tier == 3: + cho "A vibrator?" (face="horny", xpos="mid", ypos="base") + cho "Sir, I don't think this would be appropriate to bring to my dorm..." ("soft", "narrow", "base", "down") + cho "The girls... they'd hear it... not that I want it or anything!" ("quiver", "wide", "base", "downR") + call cho_mood(0) + else: + cho "A Vibrator?" (face="horny", xpos="mid", ypos="base") + call give_gift(">You give the vibrator to Cho...", gift_item) + cho "Ahh, It does promote a healthy lifestyle..." (face="horny") + cho "Thank you, [cho_genie_name]." (face="happy") + call cho_mood(-3) + + elif gift_item == anal_lube_ITEM: + if cho_tier <= 1: + cho "A lubricant?" (face="annoyed", xpos="mid", ypos="base") + cho "What the hell, why do you think this is an appropriate gift? What's wrong with you..." ("angry", "wide", "raised", "L") + cho "Senile old man..." ("angry", "narrow", "base", "mid") + call cho_mood(4) + elif cho_tier == 2: + cho "A lubricant?" (face="annoyed", xpos="mid", ypos="base") + cho "*Ew* Why are you giving me this... when would I ever have the need for lube." ("angry", "wide", "raised", "down") + cho "Give it to one of those Slytherin skanks, they probably go through a ton of it every week." ("base", "narrow", "raised", "mid") + call cho_mood(3) + elif cho_tier == 3: + cho "Anal lube?" (face="annoyed", xpos="mid", ypos="base") + cho "Why would I need something like this? The broom goes under my butt, not in my butt..." ("soft", "wide", "raised", "L") + call cho_mood(0) + else: + cho "Anal Lubricant?" (face="annoyed", xpos="mid", ypos="base") + call give_gift(">You give the jar of anal lube to Cho...", gift_item) + cho "You should've given me this yesterday, [cho_genie_name]." (mouth="soft", face="annoyed") + cho "I haven't been able to sit on a broom all day after yesterday's game..." (mouth="annoyed", pupils="down", face="annoyed") + call cho_mood(-5) + + elif gift_item == ballgag_and_cuffs_ITEM: + if cho_tier <= 1: + cho "Ball gag... and cuffs?" (pupils="down", face="annoyed", xpos="mid", ypos="base") + cho "Wait, is this a sex thing?" ("soft", "wide", "raised", "mid") + cho "Professor, that's disgusting... why would you give me this." ("angry", "wide", "raised", "mid") + call cho_mood(4) + elif cho_tier == 2: + cho "Ball gag and cuffs?" (pupils="down", face="annoyed", xpos="mid", ypos="base") + cho "Sir, this is highly inappropriate gift to give to a student!" ("scream", "narrow", "raised", "mid") + cho "Why would you give me these, how is this going to help me with Quidditch?" ("angry", "base", "base", "mid") + call cho_mood(3) + elif cho_tier == 3: + cho "Ball gag and cuffs?" (face="annoyed", xpos="mid", ypos="base") + cho "I prefer not to lock myself up, I'm a free spirit." ("soft", "base", "raised", "L") + cho "Thanks... but no thanks." ("open", "base", "base", "mid") + call cho_mood(0) + else: + cho "Ball gag and cuffs?" (pupils="down", face="annoyed", xpos="mid", ypos="base") + call give_gift(">You give the ball gag and cuffs to Cho...", gift_item) + cho "How progressive... do they require a safe-word to open?" (face="horny") + cho "Wait, how would a safe-word work when you have a ball in your mouth..." (mouth="quiver", eyes="wide", eyebrows="raised", pupils="down") + call cho_mood(-3) + + elif gift_item == anal_plugs_ITEM: + if cho_tier <= 1: + cho "Anal plugs?" (face="annoyed", xpos="mid", ypos="base") + cho "That's disgusting... why do you think it's a good idea to give these to me?" ("angry", "wide", "raised", "L") + cho "That one has a tail on it..." ("angry", "narrow", "raised", "mid") + call cho_mood(4) + elif cho_tier == 2: + cho "Anal plugs?" (face="annoyed", xpos="mid", ypos="base") + cho "Why do you have these? They're not used are they..." ("angry", "wide", "raised", "L") + cho "*Ew* Just, no..." ("open", "narrow", "raised", "mid") + cho "" ("annoyed", "base", "base", "mid") + call cho_mood(3) + elif cho_tier == 3: + cho "Anal plugs?" (face="annoyed", xpos="mid", ypos="base") + cho "Sir, are you expecting me to wear this?" ("angry", "base", "base", "L") + cho "During Quidditch?" ("angry", "wide", "raised", "L") + cho "No, no, no, no noooo." ("open", "narrow", "raised", "mid") + cho "NO!" ("scream", "wide", "raised", "mid") + cho "" ("annoyed", "base", "base", "mid") + call cho_mood(2) + else: + cho "Anal plugs?" (face="annoyed", xpos="mid", ypos="base") + call give_gift(">You give a set of anal plugs to Cho...", gift_item) + cho "But these would stick out under my robes..." (face="annoyed") + cho "Maybe people would just think it's a tail or something..." (face="horny") + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-2) + + elif gift_item == testral_strapon_ITEM: + if cho_tier <= 1: + cho "Is that a strap-on?" ("open", "wide", "worried", "down",xpos="mid",ypos="base") + cho "It's huge!" ("scream", "wide", "raised", "L") + cho "I mean, why are you showing me this?" ("annoyed", "narrow", "base", "mid") + cho "get it away from me." ("soft", "narrow", "base", "mid") + call cho_mood(3) + elif cho_tier == 2: + cho "A strap-on?" ("open", "wide", "worried", "down",xpos="mid",ypos="base") + cho "Seriously? Why are you giving me this..." ("angry", "wide", "base", "down") + cho "That's disgusting..." ("open", "narrow", "base", "mid") + call cho_mood(2) + elif cho_tier == 3: + cho "A strap-on?" ("open", "wide", "worried", "down",xpos="mid",ypos="base") + cho "But it's so big..." ("horny", "wide", "raised", "mid") + cho "I.. I don't want it..." ("open", "narrow", "base", "down") + cho "" ("base", "base", "base", "mid") + call cho_mood(0) + else: + cho "A strap-on?" ("open", "wide", "worried", "down",xpos="mid",ypos="base") + call give_gift(">You give the thestral strap-on to Cho...", gift_item) + cho "How would that even fit in anyone?" (mouth="quiver", eyes="wide", eyebrows="raised", pupils="down") + call cho_mood(-1) + + elif gift_item == broom_2000_ITEM: + $ cho_received_thestral = True + + if cho_tier <= 1: + cho "A broom... yes! Finally something better than my old--" (mouth="scream", eyes="wide", eyebrows="raised", pupils="down", xpos="mid", ypos="base") + cho "Hold on, is that a double ended dildo sticking out of it?!?" ("angry", "wide", "base", "mid") + cho "What's wrong with you?" ("scream", "wide", "base", "L") + cho "Get that away from my... from me!" ("angry", "narrow", "base", "mid") + call cho_mood(4) + elif cho_tier == 2: + cho "Is that a broom with dildos on it?" ("open", "wide", "worried", "down",xpos="mid",ypos="base") + cho "Professor, seriously... why... just why." ("angry", "narrow", "base", "mid") + call cho_mood(2) + elif cho_tier == 3: + cho "A broom?" ("open", "wide", "worried", "down",xpos="mid",ypos="base") + cho "A sex broom? Where did you even get this..." ("open", "wide", "raised", "mid") + cho "No..{w=0.3} I don't...{w=0.3} I don't want that." ("horny", "narrow", "base", "mid") + call cho_mood(0) + else: + cho "Is that a Lady Speed Stick-2000, with a built-in vibrator and pulse function?" (mouth="scream", eyes="wide", eyebrows="raised", pupils="down", xpos="mid", ypos="base") + call give_gift(">You give the broom to Cho...", gift_item) + cho "I mean..." (pupils="downR", face="horny") + cho "Thank you, [cho_genie_name]..." (mouth="soft", pupils="down", face="horny") + cho "I can't wait to try it out..." (pupils="mid", face="happy") + call cho_mood(-6) + + elif gift_item == sexdoll_ITEM: + if cho_tier <= 1: + cho "A sex doll? What the heck... why do you have this?" (face="annoyed", xpos="mid", ypos="base") + cho "And more importantly..." ("smile", "closed", "base", "mid") + cho "{size=+4}Why are you giving it to me?{/size}" ("scream", "wide", "base", "L") + cho "You disgust me..." ("open", "narrow", "angry", "mid") + call cho_mood(4) + elif cho_tier == 2: + cho "A sex doll?" (face="annoyed", xpos="mid", ypos="base") + cho "Why would you give this to me? Wait, did you use this?" ("angry", "wide", "base", "L") + cho "Get it away from me..." ("open", "wide", "raised", "L") + call cho_mood(3) + elif cho_tier == 3: + cho "A sex doll?" (face="annoyed", xpos="mid", ypos="base") + cho "Why would I need this, it's a girl doll..." ("annoyed", "wide", "base", "L") + cho "I mean, why would I need a sex doll in general. I'm not into this sort of thing..." ("open", "wide", "raised", "mid") + call cho_mood(1) + else: + cho "A sex doll?" (face="annoyed", xpos="mid", ypos="base") + call give_gift(">You give the sex doll to Cho...", gift_item) + cho "It says Joanne on it..." (face="disgusted") + cho "I leave it in the boys changing room, should be a good reward after a practice." (face="annoyed") + call cho_mood(-7) + + elif gift_item == anal_beads_ITEM: + if cho_tier <= 1: + cho "Anal beads?" (face="annoyed", xpos="mid", ypos="base") + cho "Yeah, that's not going anywhere near their intended target..." ("angry", "wide", "raised", "L") + call cho_mood(4) + elif cho_tier == 2: + cho "Anal beads?" (face="annoyed", xpos="mid", ypos="base") + cho "How... where did you..." ("angry", "wide", "raised", "L") + cho "*Gross!" ("open", "narrow", "raised", "mid") + cho "" ("annoyed", "base", "base", "mid") + call cho_mood(3) + elif cho_tier == 3: + cho "Anal beads?" (face="annoyed", xpos="mid", ypos="base") + cho "Sir, how would I be able to sit on a broom if I used these?" ("angry", "base", "base", "L") + cho "Not that I would ever use them!" ("angry", "wide", "raised", "L") + cho "Get those away from me!" ("open", "narrow", "raised", "mid") + cho "" ("annoyed", "base", "base", "mid") + call cho_mood(2) + else: + cho "Anal beads?" (face="annoyed", xpos="mid", ypos="base") + call give_gift(">You give the anal beads to Cho...", gift_item) + cho "Surely my butt would hurt after using these..." (face="annoyed") + cho "Although I do have a cushioning charm on my broom for a reason..." (face="horny") + cho "Thank you, [cho_genie_name]." (face="neutral") + call cho_mood(-2) + + elif gift_item == wine_ITEM: + if cho_tier <= 2: + cho "A wine bottle?" (face="annoyed", xpos="mid", ypos="base") + cho "[cho_genie_name], I cannot drink alcohol, it would ruin my career.." ("open", "narrow", "angry", "mid") + call cho_mood(4) + else: + cho "A wine bottle?" (face="neutral", xpos="mid", ypos="base") + cho "Thank you, [cho_genie_name] but I can't take it." (face="neutral") + cho "{size=-4}Maybe to celebrate after I win the Quidditch Cup..{/size}" (face="horny") + call cho_mood(0) + + elif gift_item == firewhisky_ITEM: + cho "Firewhisky?" (face="happy", xpos="mid", ypos="base", trans=d5) + cho "Why are you giving it to me?" ("annoyed", "wide", "base", "L") + call cho_mood(0) + + cho "" (xpos="base", ypos="base") + hide cho_main + with d5 + + return + +label cho_mood(value=0): + show screen blktone + with d3 + + if value > 0: + if value == 1: + "Cho's mood worsened slightly." + else: + "Cho's mood just got a whole lot worse!" + elif value < 0: + if value == -1: + "Cho's mood has improved slightly." + else: + "Cho's mood has improved significantly." + else: + "Cho's mood hasn't changed." + + $ was_negative = cho_mood > 0 + $ cho_mood = max(min(cho_mood+value, 100), 0) + + call describe_mood_after_gift(was_negative, cho_mood, value) + + hide screen blktone + return diff --git a/game/scripts/characters/cho/requests.rpy b/game/scripts/characters/cho/requests.rpy new file mode 100644 index 00000000..8dd917b6 --- /dev/null +++ b/game/scripts/characters/cho/requests.rpy @@ -0,0 +1,64 @@ +# Public requests +# cc_pr = Cho Chang Public Request + +default cc_pr_spy_boys = event_class(title = "Spy on the boys!", start_label = "cc_pr_spy_boys_start", start_tier = 3, + events = [ + [ + ["cc_pr_spy_boys_T3_twins"], + ["cc_pr_spy_boys_T3_ron"], + ["cc_pr_spy_boys_T3_harry"], + ] + ], + icons = ["gryf"], + iconset = [["star_empty", "star_yellow"]] +) + +default cc_pr_manipulate_boys = event_class(title = "Manipulate the boys!", start_label = "cc_pr_manipulate_boys_start", + events = [ + [ + ["cc_pr_manipulate_boys_T1_intro_E1"], ["cc_pr_manipulate_boys_T1_E1"], + ["cc_pr_manipulate_boys_T1_E2"], + ["cc_pr_manipulate_boys_T1_E3"] + ], + [ + ["cc_pr_manipulate_boys_T2_intro_E1"], ["cc_pr_manipulate_boys_T2_E1"], + ["cc_pr_manipulate_boys_T2_intro_E2"], + ["cc_pr_manipulate_boys_T2_intro_E3"], ["cc_pr_manipulate_boys_T2_E3"] + ], + [ + ["cc_pr_manipulate_boys_T3_twins"], + ["cc_pr_manipulate_boys_T3_ron"], + ["cc_pr_manipulate_boys_T3_harry"] + ] + ], + icons = ["huff", "slyt", "gryf"], #if a tier doesn't need an icon replace with None + iconset = [["star_empty", "star_yellow"]] # You have to add icons at least for first tier, the rest will be copied over automatically. +) + +default cc_pr_spy_girls = event_class(title = "Spy on the girls!", start_label = "cc_pr_spy_girls_start", start_tier = 3, + events = [ + [ + ["cc_pr_spy_girls_T3_showers"], + ["cc_pr_spy_girls_T3_alicia"], + ["cc_pr_spy_girls_T3_katie"], + ["cc_pr_spy_girls_T3_angelina"], + ] + ], + icons = ["gryf"], + iconset = [["star_empty", "star_yellow"]] +) + +default cc_pr_manipulate_girls = event_class(title = "Manipulate the girls!", start_label = "cc_pr_manipulate_girls_start", start_tier = 3, + events = [ + [ + ["cc_pr_manipulate_girls_T3_alicia"], + ["cc_pr_manipulate_girls_T3_katie_part1"], + ["cc_pr_manipulate_girls_T3_katie_part2"], + ["cc_pr_manipulate_girls_T3_angelina"] + ] + ], + icons = ["gryf"], + iconset = [["star_empty", "star_yellow"]] +) + +default cc_requests_list = [cc_pr_spy_boys, cc_pr_manipulate_boys, cc_pr_spy_girls, cc_pr_manipulate_girls] diff --git a/game/scripts/characters/cho/summon.rpy b/game/scripts/characters/cho/summon.rpy new file mode 100644 index 00000000..f0c2aeed --- /dev/null +++ b/game/scripts/characters/cho/summon.rpy @@ -0,0 +1,243 @@ + +label summon_cho: + #call play_music("cho") + #call play_sound("door") + + $ active_girl = "cho" + $ last_character = "cho" + + $ cho_busy = True + #call update_cho_tier + call update_cho + + if has_cho_panties: + if cho_tier == 2: + jump cho_panties_response_T2 + elif cho_tier == 3: + jump cho_panties_response_T3 + + # Slytherin Quidditch Intro. + if cho_tier == 2 and not cho_quid.E5_complete: + jump cho_quid_E5 + # Gryffindor Quidditch Intro. + elif cho_tier == 3 and not cho_quid.E10_complete: + jump cho_quid_E10 + + # Clothes Events + call cho_summon_setup + + label cho_requests: + + # Reset + call reset_menu_position + cho "" (xpos="base", ypos="base") + + menu: + + # Main Matches + "-Start Hufflepuff Match-" (icon="interface/icons/small/huff.webp") if (cho_tier == 1 and hufflepuff_match == "ready"): + if cho_reputation == 0: + gen "(If I want Cho to do anything in public with those {i}Muffletuffs{/i} I better do it before the match.)" ("base", xpos="far_left", ypos="head") + gen "(Although maybe not...)" ("base", xpos="far_left", ypos="head") + menu: + "Are you ready to begin the match?" + "Yes": + pass + "no": + jump cho_requests + jump start_hufflepuff_match + + "-Start Slytherin Match-" (icon="interface/icons/small/slyt.webp") if (cho_tier == 2 and slytherin_match == "ready" and cho_quid.E7_complete): + if cho_reputation <= 3: + gen "(If I want Cho to do anything in public with those {i}Slythershits{/i} I better do it before the match.)" ("base", xpos="far_left", ypos="head") + gen "(Although maybe not...)" ("base", xpos="far_left", ypos="head") + menu: + "Are you ready to begin the match?" + "Yes": + pass + "no": + jump cho_requests + jump start_slytherin_match + + "-Start Gryffindor Match-" (icon="interface/icons/small/gryf.webp") if (cho_tier == 3 and gryffindor_match == "ready" and cho_quid.E13_complete): + if cho_reputation <= 6: + gen "(If I want Cho to do anything in public with those {i}Gryphoncucks{/i} I better do it before the match.)" ("base", xpos="far_left", ypos="head") + gen "(Although maybe not...)" ("base", xpos="far_left", ypos="head") + + show screen blktone + with d3 + ">Starting the match will progress Cho's story to the next stage." + ">Make sure to save your game in case you want to return to this stage later." + hide screen blktone + with d3 + pause.5 + + menu: + "Are you ready to begin the match?" + "Yes": + pass + "No": + jump cho_requests + jump start_gryffindor_match + + # Talk + "-Talk-" (icon="interface/icons/small/talk.webp"): + if cho_mood > 0: + cho "I have nothing to say to you, [cho_genie_name]..." (face="annoyed") + jump cho_requests + + call cho_chitchat + jump cho_talk + + # Quidditch Training + "-Training-" (icon="interface/icons/small/quidditch.webp") if cho_tier < 4 and not cho_quid.lock_training: + if cho_mood > 0: + gen "Ready to get back to training?" ("base", xpos="far_left", ypos="head") + if cho_mood >= 5: + cho "No.{w=0.5} And I don't want to hear of it right now, Sir." (face="angry") + else: + cho "I'm sorry, [cho_genie_name]. But I don't feel like training today." ("soft", "base", "worried", "down") + call nar(">Cho is still upset with you.") + jump cho_requests + + jump cho_training + + "-Training-" (icon="interface/icons/small/quidditch.webp", style="disabled") if cho_tier < 4 and cho_quid.lock_training: + gen "(She's as ready as one can be.)" ("base", xpos="far_left", ypos="head") + jump cho_requests + + "-Sexual favours-" (icon="interface/icons/small/condom.webp") if cho_favors_unlocked: + if cho_mood > 0: + cho "I'm sorry, [cho_genie_name]. But I don't feel like it today..." ("upset", "base", "worried", "mid") + jump cho_requests + else: + jump cho_favor_menu + + "-Sexual favours-" (icon="interface/icons/small/condom.webp", style="disabled") if not cho_favors_unlocked: + if cho_tier == 1: + gen "(I need to help her with her Quidditch training, before I can ask for something like this.)" ("base", xpos="far_left", ypos="head") + elif cho_tier == 4: + gen "(I have a feeling this is as far as I can progress with her at the moment.)" ("base", xpos="far_left", ypos="head") + else: + gen "(I should ask her about the next Quidditch match first. See who we're up against...)" ("base", xpos="far_left", ypos="head") + jump cho_requests + + "-Wardrobe-" (icon="interface/icons/small/wardrobe.webp") if cho_wardrobe_unlocked: + hide cho_main with d1 + call wardrobe + jump cho_requests + + "-Hidden-" (style="disabled") if not cho_wardrobe_unlocked: + call nar(">You haven't unlocked this feature yet.") + jump cho_requests + + "-Give Item-" (icon="interface/icons/small/gift.webp"): + hide cho_main with d1 + call gift_menu + jump cho_requests + + # Dismiss + "-Dismiss Her-": + stop music fadeout 3.0 + + if cho_mood == 0: + cho "Goodbye, [cho_genie_name]." ("base") + else: + cho "Goodbye, [cho_genie_name]." ("annoyed") + + call play_sound("door") + + jump end_cho_event + +# Cho Favor Menu +label cho_favor_menu: + call update_cho_favors + + menu: + "-Personal Favours-" (icon="interface/icons/small/heart_red.webp"): + label .personal: + python: + menu_choices = [] + for i in cc_favor_list: + if i in []: # Not in the game yet. + menu_choices.append(gui.menu_item("-Not available-", "na", style="disabled")) + elif i.start_tier > cho_tier: + menu_choices.append(gui.menu_item("-Not ready-", "vague", style="disabled")) + else: + menu_choices.append(i.get_menu_item()) + + menu_choices.append(("-Never mind-", "nvm")) + result = renpy.display_menu(menu_choices) + + if result == "nvm": + jump cho_favor_menu + elif result == "vague": + call favor_not_ready + jump .personal + elif result == "na": + call not_available + jump .personal + else: + $ renpy.jump(result) + + "-Public Requests-" (icon="interface/icons/small/star_yellow.webp", style="disabled") if not game.daytime or not cho_requests_unlocked: + if not cho_requests_unlocked: + call nar(">Progress further to unlock public requests.") + elif not game.daytime: + call nar(">Public requests are available during the day only.") + jump cho_favor_menu + + "-Public Requests-" (icon="interface/icons/small/star_yellow.webp") if game.daytime and cho_requests_unlocked: + jump cho_requests_menu + + "-Never mind-": + jump cho_requests + +label update_cho_favors: + python: + for i in cc_favor_list: + i.tier = cho_tier + return + +# Cho Requests Menu +label cho_requests_menu: + call update_cho_requests + python: + menu_choices = [] + for i in cc_requests_list: + if i in []: # Not in the game yet. + menu_choices.append(gui.menu_item("-Not available-", "na", style="disabled")) + menu_choices.append(gui.menu_item()) + elif i.start_tier > cho_tier: + menu_choices.append(gui.menu_item("-Not ready-", "vague", style="disabled")) + else: + menu_choices.append(i.get_menu_item()) + menu_choices.append(("-Never mind-", "nvm")) + result = renpy.display_menu(menu_choices) + + if result == "nvm": + jump cho_favor_menu + elif result == "vague": + call favor_not_ready + jump cho_requests + elif result == "na": + call not_available + jump cho_requests + else: + $ renpy.jump(result) + +label update_cho_requests: + # Set event tier to current Cho tier if they are different + python: + for i in cc_requests_list: + i.tier = cho_tier + return + +label favor_not_ready: + call nar(">You can't do this favour just yet.") + return + +label not_available: + $ TBA_message("This feature is currently not available as of version %s." % config.version) + return + diff --git a/game/scripts/characters/cho/talk.rpy b/game/scripts/characters/cho/talk.rpy new file mode 100644 index 00000000..fe7afba2 --- /dev/null +++ b/game/scripts/characters/cho/talk.rpy @@ -0,0 +1,170 @@ +# Cho Talk +label cho_talk: + menu: + #"-Working-": + + "-Discuss Quidditch Training-" (icon="interface/icons/small/quidditch.webp") if not cho_quid.lock_training: + if cho_tier == 1: + jump cc_ht_talk + elif cho_tier == 2: + jump cc_st_talk + elif cho_tier == 3: + jump cc_gt_talk + + jump cho_talk + + # Naming + "\"-Address me only as-\"" if cho_quid.E1_complete: + menu: + "\"-Sir-\"": + $ cho_genie_name = "Sir" + "\"-Dumbledore-\"": + $ cho_genie_name = "Dumbledore" + "\"-Professor-\"": + $ cho_genie_name = "Professor" + "\"-Coach-\"": + $ cho_genie_name = "Coach" + "\"-Sergeant-\"": + $ cho_genie_name = "Sergeant" + "\"-Captain-\"": + $ cho_genie_name = "Captain" + "\"-Old Man-\"": + $ cho_genie_name = "Old Man" + "\"-Daddy-\"" if cho_tier >= 4: + $ cho_genie_name = "Daddy" + "-Custom Input-": + $ cho_genie_name = renpy.input("(Please enter the name.)", cho_genie_name, ALLOWED_CHARACTERS, length=14).strip() or "Professor" + "\"-Never mind-\"": + jump cho_talk + + jump genie_cho_change + + "\"-From now on I will refer to you as-\"" if cho_quid.E1_complete: + menu: + "\"-Miss Chang-\"": + $ cho_name = "Miss Chang" + "\"-Cho-\"": + $ cho_name = "Cho" + "\"-Cadet-\"": + $ cho_name = "Cadet" + "\"-Pilot-\"": + $ cho_name = "Pilot" + "\"-Maggot-\"": + $ cho_name = "Maggot" + "\"-Tomboy-\"": + $ cho_name = "Tomboy" + "\"-Boy-\"": + $ cho_name = "Boy" + "\"-Champ-\"" if cho_tier >= 4: + $ cho_name = "Champ" + "\"-Slut-\"" if cho_tier >= 4: + $ cho_name = "Slut" + "-Custom Input-": + $ cho_name = renpy.input("(Please enter the name.)", cho_name, ALLOWED_CHARACTERS, length=14).strip() or "Miss Chang" + "\"-Never mind-\"": + jump cho_talk + + jump cho_name + + "\"-Never mind-\"": + jump cho_requests + +label genie_cho_change: + if cho_genie_name == "Sir": + cho "Certainly, sir." ("base", "base", "base", "mid") + elif cho_genie_name == "Dumbledore": + cho "Of course Dumbledore..." ("open", "base", "base", "mid") + elif cho_genie_name == "Professor": + cho "Yes Professor..." ("open", "base", "base", "mid") + elif cho_genie_name == "Coach": + cho "Yes Coach!" ("smile", "base", "base", "mid") + elif cho_genie_name == "Sergeant": + gen "Is that clear?" ("base", xpos="far_left", ypos="head") + cho "Yes Sergeant!" ("smile", "base", "base", "mid") + elif cho_genie_name == "Captain": + cho "Yes Captain!" ("smile", "base", "base", "mid") + elif cho_genie_name == "Old Man": + cho "You want me to call you an old man?" ("soft", "base", "base", "mid") + gen "Just \"Old man\" is good for now." ("base", xpos="far_left", ypos="head") + cho "Okay then..." ("open", "base", "base", "R") + elif cho_genie_name == "Daddy": + cho "You want me to--" ("soft", "narrow", "base", "mid", cheeks="blush") + gen "Call me daddy..." ("base", xpos="far_left", ypos="head") + cho "..." ("base", "narrow", "base", "downR", cheeks="blush") + cho "Yes daddy..." ("base", "narrow", "base", "down", cheeks="heavy_blush") + else: #custom/fallback + cho "Very well..." (face="neutral") + jump cho_talk + +label cho_name: + if cho_name == "Miss Chang": + cho "Of course [cho_genie_name]." ("base", "base", "base", "mid") + elif cho_name == "Cho": + cho "Of course [cho_genie_name]." ("base", "base", "base", "mid") + elif cho_name == "Cadet": + cho "Yes [cho_genie_name]!" ("smile", "base", "base", "mid") + elif cho_name == "Pilot": + cho "Yes [cho_genie_name]!" ("base", "base", "base", "mid") + elif cho_name == "Maggot": + cho "I--" ("angry", "narrow", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + cho "Yes [cho_genie_name]!" ("angry", "happyCl", "base", "mid") + elif cho_name == "Tomboy": + if cho_tier <= 3: + cho "Tomboy?" ("soft", "base", "base", "mid") + gen "Is that not accurate?" ("base", xpos="far_left", ypos="head") + cho "I--{w=0.4} I suppose..." ("angry", "narrow", "base", "down") + gen "Great! Tomboy it is!" ("base", xpos="far_left", ypos="head") + else: + cho "Am I not feminine enough for you?" ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "Nonsense! You are feminine in all the right places." ("grin", xpos="far_left", ypos="head") + gen "Except your personality..." ("base", xpos="far_left", ypos="head") + cho "*Hmph*..." ("annoyed", "narrow", "base", "R", cheeks="blush") + cho "Fine... I guess that's fair..." ("open", "narrow", "base", "R", cheeks="blush") + elif cho_name == "Boy": + if cho_tier <= 3: + cho "You want to call me what?!" ("angry", "base", "base", "mid") + gen "Boy!" ("base", xpos="far_left", ypos="head") + cho "But [cho_genie_name]!" ("disgust", "narrow", "base", "mid") + cho "I'm not a boy!" ("clench", "narrow", "base", "mid") + gen "I know that..." ("base", xpos="far_left", ypos="head") + cho "Then why--" ("angry", "base", "base", "mid") + gen "Don't you wanna be one of the boys?" ("base", xpos="far_left", ypos="head") + cho "...{w=0.4} What's that's supposed to mean?" ("disgust", "narrow", "base", "mid") + gen "Well, I suppose maybe you're not fit to be one of the boys..." ("base", xpos="far_left", ypos="head") + cho "No! I am! I can be one of the boys!" ("clench", "base", "base", "mid") + gen "Great, then boy it is!" ("base", xpos="far_left", ypos="head") + cho "..." ("smile", "base", "base", "mid") #smiles + cho "..." ("disgust", "base", "base", "stare") #Hold on a minute... + else: + cho "Boy?" ("soft", "narrow", "base", "mid", cheeks="blush") + cho "But [cho_genie_name]... Won't that be weird?" ("soft", "base", "base", "mid", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + cho "Alright then... If that's what you're into..." ("base", "base", "base", "R", cheeks="blush") + elif cho_name == "Champ": + cho "Champ?" ("open", "base", "raised", "mid") + gen "Yep... Gotta give some credit where it's due." ("base", xpos="far_left", ypos="head") + cho "Oh... Thank you [cho_genie_name]..." ("smile", "base", "base", "mid") + elif cho_name == "Slut": + cho "You want to call me..." ("soft", "narrow", "base", "down", cheeks="heavy_blush") + gen "A slut!" ("base", xpos="far_left", ypos="head") + cho "..." ("horny", "narrow", "base", "stare", cheeks="heavy_blush") #horny + cho "*Ah*...{w=0.4} Yes, I suppose that's fine..." ("soft", "narrow", "base", "mid", cheeks="heavy_blush") + elif cho_name == "Princess": #Custom choice + if cho_tier <= 3: + cho "Princess?!" ("angry", "base", "base", "mid") + gen "Yes, is that a problem?" ("base", xpos="far_left", ypos="head") + cho "It's... It's a bit girly don't you think?" ("clench", "narrow", "base", "mid", cheeks="blush") + gen "You're a girl, I see nothing wrong with it." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "mid", cheeks="blush") + cho "Yes I suppose I am." ("disgust", "narrow", "base", "mid", cheeks="blush") + cho "Fine..." ("annoyed", "base", "base", "mid", cheeks="blush") + else: + cho "You want to call me..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Princess." ("base", xpos="far_left", ypos="head") + cho "..." ("angry", "narrow", "base", "downR", cheeks="blush") + cho "Okay... I suppose you could call me that..." ("angry", "narrow", "base", "down", cheeks="blush") + else: #custom/fallback + cho "Very well..." (face="neutral") + + jump cho_talk diff --git a/game/scripts/characters/cho/vars.rpy b/game/scripts/characters/cho/vars.rpy new file mode 100644 index 00000000..0f9f4bb8 --- /dev/null +++ b/game/scripts/characters/cho/vars.rpy @@ -0,0 +1,44 @@ +# Main +default use_cho_head = False + +# Stats +default cho_tier = 1 +default cho_whoring = 0 +default cho_reputation = 0 +default cho_mood = 0 +default cho_jerk_off_counter = 0 + +# Flags +default cho_known = False +default cho_unlocked = False +default cho_favors_unlocked = False +default cho_requests_unlocked = False +default cho_strip_complete = False +default cho_wardrobe_unlocked = False +default cho_busy = False +default cho_chatted = False +default has_cho_panties = False +default cho_panties_soaked = False +default cho_outfits_schedule = True +default cho_bj_choice = None # Dynamic string. Valid choices: failed, swallow, throat, points, taste. +default doppler_done = False # For Strip event with Tonks. +default succubus_done = False # For Strip event with Tonks. +default cho_received_thestral = False +default cho_hermione_affection = None # Dynamic string. Valid choices: cho, hermione, neither. + +# Intro +default jerked_off_during_cho_intro = False + +# Quidditch Matches +default hufflepuff_match = "" # Dynamic string. Valid choices: 'start', 'ready', 'intro_done', 'completed', 'return'. +default slytherin_match = "" # Dynamic string. Valid choices: 'start', 'ready', 'intro_done', 'completed', 'return'. +default gryffindor_match = "" # Dynamic string. Valid choices: 'start', 'ready', 'intro_done', 'completed', 'return'. + +default cho_broom_name = "Purple Rocket" + +# Names +default cho_genie_name = "Professor" +default cho_name = "Cho" +default tonks_cho_name = "Sweetie" + +default gave_cho_gift = False diff --git a/game/scripts/characters/cho/wardrobe.rpy b/game/scripts/characters/cho/wardrobe.rpy new file mode 100644 index 00000000..a037b31d --- /dev/null +++ b/game/scripts/characters/cho/wardrobe.rpy @@ -0,0 +1,288 @@ +############### +## Character ## +############### + +default cho = Doll(name="cho", + clothes={"headgear": [None, 15, True], + "hair": [None, 4, True], + "glasses": [None, 12, True], + "earrings": [None, 14, True], + "neckwear": [None, 11, True], + "robe": [None, 28, True], + "gloves": [None, 21, True], + "top": [None, 15, True], + "bra": [None, 9, True], + "bottom": [None, 8, True], + "garterbelt": [None, 7, True], + "panties": [None, 6, True], + "stockings": [None, 5, True], + "buttplug": [None, -1, True], + "pubes": [None, 3, True], + "tattoo0": [None, 1, True], + "tattoo1": [None, 1, True], + "tattoo2": [None, 1, True], + "tattoo3": [None, 1, True], + "tattoo4": [None, 1, True], + "piercing0": [None, 2, True], + "piercing1": [None, 2, True], + "piercing2": [None, 2, True], + "piercing3": [None, 2, True], + "piercing4": [None, 2, True], + "accessory0": [None, 12, True], + "accessory1": [None, 12, True], + "accessory2": [None, 12, True], + "accessory3": [None, 12, True], + "accessory4": [None, 12, True], + "makeup0": [None, 3, True], + "makeup1": [None, 3, True], + "makeup2": [None, 3, True], + "makeup3": [None, 3, True], + "makeup4": [None, 3, True]}, + face={"tears": [None, 12, True], + "cheeks": [None, 7, True], + "eyebrows": ["base", 11, True], + "eyes": ["base", 8, True], + "pupils": ["mid", 9, True], + "mouth": ["base", 13, True]}, + body={"armleft": ["down", 3], + "armright":["down", 1], + "base": ["front", 0], + "breasts": ["normal", 2]}) + +################ +## Schoolgirl ## +################ + +default cho_hair_ponytail1 = DollCloth("cho", ("head", "hair"), "hair", "ponytail", [[52, 59, 80, 255], [70, 90, 147, 255]], unlocked=True) +default cho_top_school1 = DollCloth("cho", ("upper body", "shirts"), "top", "top_school_1", [[183, 183, 184, 255], [109, 105, 121, 255], [216, 163, 10, 255], [89, 116, 194, 255]], unlocked=True) +default cho_top_school2 = DollCloth("cho", ("upper body", "shirts"), "top", "top_school_2", [[183, 183, 184, 255], [109, 105, 121, 255], [216, 163, 10, 255], [89, 116, 194, 255]], level=4, unlocked=True) +default cho_top_school3 = DollCloth("cho", ("upper body", "shirts"), "top", "top_school_3", [[183, 183, 184, 255], [216, 163, 10, 255], [89, 116, 194, 255]], level=8, unlocked=True) +default cho_top_school4 = DollCloth("cho", ("upper body", "shirts"), "top", "top_school_4", [[183, 183, 184, 255], [216, 163, 10, 255], [89, 116, 194, 255]], level=8, unlocked=True) +default cho_top_school5 = DollCloth("cho", ("upper body", "shirts"), "top", "top_school_5", [[183, 183, 184, 255], [216, 163, 10, 255], [89, 116, 194, 255]], level=12, unlocked=True) +default cho_top_school6 = DollCloth("cho", ("upper body", "shirts"), "top", "top_school_6", [[109, 105, 121, 255], [216, 163, 10, 255], [89, 116, 194, 255]], level=12, unlocked=True) +default cho_bottom_school1 = DollCloth("cho", ("lower body", "skirts"), "bottom", "school_skirt_1", [[103, 90, 108, 255], [232, 177, 13, 255]], armfix=True, unlocked=True) +default cho_bottom_school2 = DollCloth("cho", ("lower body", "skirts"), "bottom", "school_skirt_2", [[103, 90, 108, 255], [232, 177, 13, 255]], level=4, armfix=True, unlocked=True) +default cho_bottom_school3 = DollCloth("cho", ("lower body", "skirts"), "bottom", "school_skirt_3", [[103, 90, 108, 255], [232, 177, 13, 255]], level=8, armfix=True, unlocked=True) +default cho_bottom_school4 = DollCloth("cho", ("lower body", "skirts"), "bottom", "school_skirt_4", [[103, 90, 108, 255], [232, 177, 13, 255]], level=12, armfix=True, unlocked=True) +default cho_bra_basic1 = DollCloth("cho", ("upper undergarment", "bras"), "bra", "basic_bra_1", [[230, 230, 231, 255], [89, 116, 194, 255]], unlocked=True) +default cho_panties_basic1 = DollCloth("cho", ("lower undergarment", "panties"), "panties", "basic_panties_1", [[230, 230, 231, 255], [89, 116, 194, 255]], unlocked=True) +default cho_stockings_house = DollCloth("cho", ("legwear", "socks"), "stockings", "house", [[216, 163, 10, 255], [89, 116, 194, 255]], unlocked=True) +default cho_robe_school_1 = DollCloth("cho", ("upper body", "robes"), "robe", "robe_school_1", color=[[96, 96, 96, 255], [206, 206, 209, 255], [89, 116, 194, 255]], level=0, unlocked=True) +default cho_robe_school_2 = DollCloth("cho", ("upper body", "robes"), "robe", "robe_school_2", color=[[96, 96, 96, 255], [206, 206, 209, 255], [89, 116, 194, 255]], level=4, unlocked=True) +default cho_robe_school_3 = DollCloth("cho", ("upper body", "robes"), "robe", "robe_school_3", color=[[96, 96, 96, 255], [206, 206, 209, 255], [89, 116, 194, 255]], level=8, unlocked=True) +#default cho_neckwear_tie1 = DollCloth("cho", ("head", "neckwear"), "neckwear", "tie_1", [[216, 163, 10, 255], [89, 116, 194, 255]]) + +default cho_outfit_last = DollOutfit([cho_hair_ponytail1], hidden=True) +default cho_outfit_default = DollOutfit([cho_hair_ponytail1, cho_top_school1, cho_bottom_school1, cho_bra_basic1, cho_panties_basic1, cho_stockings_house], unlocked=True) + +######################## +## Cheerleader Outfit ## +######################## + +#default cho_hair_pigtails = DollCloth("cho", ("head", "hair"), "hair", "pigtails", [[52, 59, 80, 255], [70, 90, 147, 255], [242, 162, 73, 255]], level=8) +default cho_earring_snitch = DollCloth("cho", ("head", "earrings"), "earrings", "snitch", [[220, 220, 221, 255], [213, 161, 13, 255]]) +default cho_stockings_quid1 = DollCloth("cho", ("legwear", "socks"), "stockings", "quid1", [[64, 84, 141, 255], [213, 161, 13, 255]], level=10) +default cho_panties_sport2 = DollCloth("cho", ("lower undergarment", "panties"), "panties", "sport_panties_2", [[156, 204, 249, 255]], level=4) +default cho_bra_sports1 = DollCloth("cho", ("upper undergarment", "bras"), "bra", "sport_bra_1", [[156, 204, 249, 255]], unlocked=True) +default cho_top_quid1 = DollCloth("cho", ("upper body", "shirts"), "top", "top_quid_1", [[64, 84, 141, 255], [213, 161, 13, 255]], level=10) +default cho_bottom_quid1 = DollCloth("cho", ("lower body", "skirts"), "bottom", "quid_skirt_1", [[64, 84, 141, 255], [213, 161, 13, 255]], level=10, armfix=True) +default cho_makeup0_blush = DollCloth("cho", ("makeup", "blush"), "makeup0", "blush", [[238, 113, 196, 255]], level=2) + +default cho_outfit_cheerleader = DollOutfit([cho_hair_ponytail1, cho_earring_snitch, cho_stockings_quid1, cho_panties_sport2, cho_bra_sports1, cho_bottom_quid1, cho_top_quid1, cho_makeup0_blush], price=500, name="Ravenclaw Cheerleader Uniform", desc="Ravenclaw! Ravenclaw!") + +################## +## Misty Outfit ## +################## + +default cho_top_shirt1 = DollCloth("cho", ("upper body", "shirts"), "top", "top_shirt_1", [[255, 229, 126, 255]], level=14) +default cho_bottom_shorts3 = DollCloth("cho", ("lower body", "shorts"), "bottom", "pants_short_3", [[47, 150, 136, 255], [175, 220, 191, 255], [247, 152, 38, 255]], level=10, armfix=True) +default cho_accessory3_suspenders = DollCloth("cho", ("misc", "accessory"), "accessory3", "suspenders", [[137, 22, 17, 255], [229, 140, 33, 255]], zorder=16) + +default cho_outfit_misty = DollOutfit([cho_hair_ponytail1, cho_accessory3_suspenders, cho_top_shirt1, cho_bottom_shorts3, cho_panties_sport2], price=500, name="Misty Costume", desc="For trainers that want to be the very best! To train them is your cause!") + +################## +## Party Outfit ## +################## + +default cho_bottom_skirt2 = DollCloth("cho", ("lower body", "skirts"), "bottom", "skirt_short_2", [[93, 119, 173, 255]], level=16, armfix=True) +default cho_bra_bikini1 = DollCloth("cho", ("upper undergarment", "bikini bras"), "bra", "bikini_top_1", [[3, 237, 234, 255]], level=10) + +default cho_outfit_party = DollOutfit([cho_hair_ponytail1, cho_bottom_skirt2, cho_bra_bikini1], price=500, name="Clubslut Outfit", desc="Release your inner slut with this unique club outfit!") + +################### +## Sailor Outfit ## +################### + +default cho_bottom_skirt1 = DollCloth("cho", ("lower body", "skirts"), "bottom", "skirt_short_1", [[89, 116, 194, 255]], level=18, armfix=True) +default cho_top_sailor1 = DollCloth("cho", ("upper body", "shirts"), "top", "top_sailor_1", [[252, 252, 253, 255], [89, 116, 194, 255]], level=14) +default cho_stockings_sailor1 = DollCloth("cho", ("legwear", "stockings"), "stockings", "sailor", [[232, 232, 233, 255]], armfix=True) +default cho_panties_bikini2 = DollCloth("cho", ("lower undergarment", "bikini panties"), "panties", "bikini_bottom_2", [[213, 161, 13, 255]], level=18, armfix=True) + +default cho_outfit_sailor = DollOutfit([cho_hair_ponytail1, cho_top_sailor1, cho_bottom_skirt1, cho_stockings_sailor1, cho_panties_bikini2], price=500, name="Sailor Outfit", desc="A slutty sailor outfit, perfect for the average cannon swabber.") + +############################ +## Japanese School Outfit ## +############################ + +default cho_top_j_school1 = DollCloth("cho", ("upper body", "shirts"), "top", "top_j_school_1", [[255, 248, 223, 255], [95, 110, 142, 255], [161, 161, 164, 255], [253, 254, 250, 255]], level=4, armfix=True) +default cho_bottom_j_skirt1 = DollCloth("cho", ("lower body", "skirts"), "bottom", "j_school_skirt_1", [[161, 161, 164, 255]], level=4, armfix=True) +default cho_stockings_j_kneehigh1 = DollCloth("cho", ("legwear", "socks"), "stockings", "kneehigh", [[253, 254, 250, 255]], level=0) + +default cho_outfit_j_school = DollOutfit([cho_hair_ponytail1, cho_top_j_school1, cho_bottom_j_skirt1, cho_stockings_j_kneehigh1, cho_panties_basic1, cho_bra_basic1], price=300, name="Japanese School Uniform", desc="A school girl uniform inspired by the land of culture.") + +################### +## Bikini Outfit ## +################### + +default cho_bra_bikini2 = DollCloth("cho", ("upper undergarment", "bikini bras"), "bra", "bikini_top_2", [[89, 116, 194, 255]], level=14) #Red: [138, 22, 17, 255] +default cho_panties_bikini1 = DollCloth("cho", ("lower undergarment", "bikini panties"), "panties", "bikini_bottom_1", [[213, 161, 13, 255]], level=14, armfix=True) + +default cho_outfit_bikini = DollOutfit([cho_hair_ponytail1, cho_bra_bikini2, cho_panties_bikini1], price=500, name="Micro Bikini Set", desc="The regular size bikinis are out of stock...") + +########################## +## Lace Lingerie Outfit ## +########################## + +default cho_neckwear_lace1 = DollCloth("cho", ("head", "neckwear"), "neckwear", "choker_lace_1", [[100, 100, 255, 255], [220, 220, 221, 255]]) +default cho_garterbelt_lace1 = DollCloth("cho", ("legwear", "garterbelts"), "garterbelt", "lace_garter_1", [[220, 220, 221, 255], [100, 100, 255, 255], [220, 220, 221, 255], [89, 116, 194, 255]], level=12) +default cho_stockings_lace1 = DollCloth("cho", ("legwear", "stockings"), "stockings", "lace_stockings_1", [[100, 100, 255, 255], [220, 220, 221, 255]], armfix=True, level=12) +default cho_bra_lace1 = DollCloth("cho", ("upper undergarment", "bras"), "bra", "lace_bra_1", [[100, 100, 255, 255], [220, 220, 221, 255], [89, 116, 194, 255]], level=14) +default cho_panties_lace1 = DollCloth("cho", ("lower undergarment", "panties"), "panties", "lace_panties_1", [[100, 100, 255, 255], [220, 220, 221, 255], [89, 116, 194, 255]], level=12) +default cho_earring_feather = DollCloth("cho", ("head", "earrings"), "earrings", "feather", [[232, 232, 232, 255], [70, 90, 147, 255], [136, 91, 34, 255]]) + +default cho_outfit_lacelingerie = DollOutfit([cho_hair_ponytail1, cho_neckwear_lace1, cho_garterbelt_lace1, cho_panties_lace1, cho_bra_lace1, cho_stockings_lace1, cho_earring_feather], price=500, name="Lace Lingerie Set", desc="This lingerie set turns even the toughest tomboy into a cute and sexy princess!") + +################## +## Dress Outfit ## +################## + +default cho_top_dress1 = DollCloth("cho", ("upper body", "dresses"), "top", "dress_1", [[231, 29, 41, 255], [242, 162, 73, 255]], armfix=True, level=12, blacklist=["bottom"]) + +default cho_outfit_dress1 = DollOutfit([cho_hair_ponytail1, cho_top_dress1, cho_panties_basic1, cho_bra_basic1], price=500, name="Traditional Chinese Dress", desc="A traditional dress inspired by Chinese culture.") + +#################### +## Trainee Outfit ## +#################### + +default cho_top_tank2 = DollCloth("cho", ("upper body", "shirts"), "top", "top_tanktop_2", [[252, 192, 213, 255], [253, 221, 232, 255]], level=10) +default cho_bottom_shorts1 = DollCloth("cho", ("lower body", "shorts"), "bottom", "pants_short_1", [[230, 230, 231, 255]], level=8, armfix=True) +default cho_stockings_pantyhose = DollCloth("cho", ("legwear", "pantyhose"), "stockings", "pantyhose", [[190, 146, 129, 255]], armfix=True) +default cho_earring_basic = DollCloth("cho", ("head", "earrings"), "earrings", "basic", [[220, 220, 221, 255]]) + +default cho_outfit_trainee = DollOutfit([cho_hair_ponytail1, cho_bra_basic1, cho_panties_basic1, cho_bottom_shorts1, cho_top_tank2, cho_stockings_pantyhose, cho_earring_basic], price=500, name="Sporty Outfit", desc="Great for reducing fat.") + +###################### +## Space Jam Outfit ## +###################### + +default cho_headgear_toon_band = DollCloth("cho", ("head", "headgear"), "headgear", "toon_band", [[43, 81, 151, 255]], level=4) +default cho_top_toon_shirt = DollCloth("cho", ("upper body", "shirts"), "top", "toon_shirt", [[255, 255, 255, 255]], level=4) +default cho_bottom_toon_shorts = DollCloth("cho", ("lower body", "shorts"), "bottom", "toon_shorts", [[43, 81, 151, 255], [255, 255, 255, 255]], level=4, armfix=True) +default cho_stockings_toon_socks = DollCloth("cho", ("legwear", "socks"), "stockings", "toon_socks", [[43, 81, 151, 255], [255, 255, 255, 255]], level=4) + +default cho_outfit_toon = DollOutfit([cho_hair_ponytail1, cho_headgear_toon_band, cho_top_toon_shirt, cho_bottom_toon_shorts, cho_stockings_toon_socks, cho_bra_basic1, cho_panties_basic1], price=500, name="Toonsquad Outfit", desc="\"Don't ever call me a doll!\" - Some Sexy Bunny") + +#################### +## Chun-Li Outfit ## +#################### + +default cho_top_chun_li = DollCloth("cho", ("upper body", "dresses"), "top", "chun_li_dress", [[237, 34, 79, 255], [255, 226, 121, 255]], blacklist=["bottom"], level=12, armfix=True) +default cho_accessory_chun_li_wrap = DollCloth("cho", ("misc", "accessory"), "accessory3", "body_wrap", [[255, 251, 222, 255]], level=12, zorder=3) +default cho_accessory_chun_li_shoulders = DollCloth("cho", ("misc", "accessory"), "accessory4", "chun_li_shoulders", [[237, 34, 79, 255], [255, 226, 121, 255]], level=12, zorder=16) +default cho_headgear_chun_li_puffies = DollCloth("cho", ("head", "headgear"), "headgear", "chun_li_puffies", [[255, 251, 222, 255]], level=10) +default cho_tattoo2_chun_li_dragon = DollCloth("cho", ("piercings & tattoos", "tattoos"), "tattoo2", "chun_li_dragon", [[237, 34, 79, 255], [255, 226, 121, 255]]) +default cho_tattoo1_chun_li_mule = DollCloth("cho", ("piercings & tattoos", "tattoos"), "tattoo1", "chun_li_mule", [[0, 0, 0, 255]]) + +default cho_outfit_chun_li = DollOutfit([cho_hair_ponytail1, cho_top_chun_li, cho_accessory_chun_li_wrap, cho_accessory_chun_li_shoulders, cho_headgear_chun_li_puffies, cho_bra_basic1, cho_panties_basic1, cho_tattoo2_chun_li_dragon, cho_tattoo1_chun_li_mule], price=500, name="Chun-Li Outfit", desc="For the strongest woman in the world!") + +################## +## Police Woman ## +################## + +default cho_top_police1 = DollCloth("cho", ("upper body", "shirts"), "top", "police", [[69, 84, 149, 255], [235, 209, 101, 255]], level=9) +default cho_bottom_police_skirt = DollCloth("cho", ("lower body", "skirts"), "bottom", "police_skirt", [[69, 84, 149, 255], [235, 209, 101, 255], [163, 95, 58, 255], [235, 209, 101, 255]], level=10, armfix=True) +default cho_glasses_aviators = DollCloth("cho", ("head", "glasses"), "glasses", "aviators", [[183, 199, 216, 255], [243, 217, 84, 255]], level=6) +default cho_headgear_police_cap = DollCloth("cho", ("head", "headgear"), "headgear", "police_cap", [[126, 126, 192, 255], [235, 209, 101, 255], [183, 199, 216, 255], [235, 209, 101, 255]], level=6) + +default cho_outfit_police = DollOutfit([cho_hair_ponytail1, cho_top_police1, cho_bottom_police_skirt, cho_bra_basic1, cho_panties_basic1, cho_glasses_aviators, cho_headgear_police_cap]) + +########### +## Other ## +########### + +default cho_panties_sport1 = DollCloth("cho", ("lower undergarment", "panties"), "panties", "sport_panties_1", [[156, 204, 249, 255]], unlocked=True, armfix=True) +default cho_pubes_thick = DollCloth("cho", ("lower undergarment", "pubes"), "pubes", "thick", [[52, 59, 80, 255], [70, 90, 147, 255]], unlocked=True) +default cho_pubes_heart = DollCloth("cho", ("lower undergarment", "pubes"), "pubes", "heart", [[52, 59, 80, 255], [70, 90, 147, 255]], unlocked=True) +default cho_tattoo0_free = DollCloth("cho", ("piercings & tattoos", "tattoos"), "tattoo0", "pelv_free", [[0, 0, 1, 255]], unlocked=True) +default cho_piercing0_stud = DollCloth("cho", ("piercings & tattoos", "piercings"), "piercing0", "stud", [[220, 220, 221, 255]], unlocked=True) +default cho_tattoo1_slut = DollCloth("cho", ("piercings & tattoos", "tattoos"), "tattoo1", "breasts_slut", [[0, 0, 1, 255]], unlocked=True) +default cho_piercing1_barbell = DollCloth("cho", ("piercings & tattoos", "piercings"), "piercing1", "breast_barbell", [[220, 220, 221, 255]], unlocked=True) +default cho_hat_catears = DollCloth("cho", ("head", "headgear"), "headgear", "catears", [[70, 90, 147, 255]], level=10, unlocked=True) +default cho_hat_witch = DollCloth("cho", ("head", "headgear"), "headgear", "witch", [[71, 51, 102, 255], [215, 170, 98, 255]], unlocked=True) +default cho_accessory4_glasses1 = DollCloth("cho", ("head", "glasses"), "glasses", "glasses1", [[240, 240, 241, 255]], unlocked=True) +default cho_hat_goggles = DollCloth("cho", ("head", "headgear"), "headgear", "goggles", [[137, 150, 193, 255], [165, 165, 166, 255]], unlocked=True) +default cho_neckwear_medallion = DollCloth("cho", ("head", "neckwear"), "neckwear", "choker_medallion", [[25, 25, 26, 255]], unlocked=True) +default cho_neckwear_leather1 = DollCloth("cho", ("head", "neckwear"), "neckwear", "collar_leather_1", [[56, 56, 57, 255]], unlocked=True) +default cho_stockings_fishnet = DollCloth("cho", ("legwear", "stockings"), "stockings", "fishnet", [[100, 100, 101, 255], [50, 50, 51, 255]], level=14, armfix=True, unlocked=True) +default cho_top_sweater1 = DollCloth("cho", ("upper body", "sweaters"), "top", "top_sweater_1", [[89, 116, 194, 255], [213, 161, 13, 255]], armfix=True, unlocked=True) +default cho_top_sweater2 = DollCloth("cho", ("upper body", "sweaters"), "top", "top_sweater_2", [[89, 116, 194, 255]], level=6, unlocked=True) +default cho_top_tanktop1 = DollCloth("cho", ("upper body", "shirts"), "top", "top_tanktop_1", [[230, 230, 231, 255]], level=14, unlocked=True) +default cho_robe_quidditch1 = DollCloth("cho", ("upper body", "robes"), "robe", "robe_quidditch_1", [[89, 116, 194, 255], [213, 161, 13, 255]], armfix=True, unlocked=True) +default cho_bottom_pants1 = DollCloth("cho", ("lower body", "trousers"), "bottom", "pants_long_1", [[230, 230, 231, 255]], armfix=True, unlocked=True) +default cho_bottom_shorts2 = DollCloth("cho", ("lower body", "shorts"), "bottom", "pants_short_2", [[114, 168, 210, 255], [232, 177, 13, 255]], level=10, armfix=True, unlocked=True) +default cho_bottom_pants2 = DollCloth("cho", ("lower body", "trousers"), "bottom", "pants_long_2", [[109, 105, 121, 255], [213, 161, 13, 255]], armfix=True, unlocked=True) +default cho_bottom_shorts4 = DollCloth("cho", ("lower body", "shorts"), "bottom", "pants_short_4", [[109, 105, 121, 255], [213, 161, 13, 255]], level=8, armfix=True, unlocked=True) + +# Quidditch separate category +default choq_bra_sports1 = DollCloth("cho", ("upper undergarment", "bras"), "bra", "sport_bra_1", [[156, 204, 249, 255]]) +default choq_panties_sport1 = DollCloth("cho", ("lower undergarment", "panties"), "panties", "sport_panties_1", [[156, 204, 249, 255]]) +default choq_cloth_robequidditch1 = DollCloth("cho", ("upper body", "robes"), "robe", "robe_quidditch_1", [[60, 78, 131, 255], [186, 141, 11, 255]]) +default choq_cloth_topsweater1 = DollCloth("cho", ("upper body", "sweaters"), "top", "top_sweater_1", [[60, 78, 131, 255], [186, 141, 11, 255]]) +default choq_cloth_pantslong2 = DollCloth("cho", ("lower body", "trousers"), "bottom", "pants_long_2", [[109, 105, 121, 255], [213, 161, 13, 255]]) +default choq_cloth_pantsshort4 = DollCloth("cho", ("lower body", "shorts"), "bottom", "pants_short_4", [[109, 105, 121, 255], [213, 161, 13, 255]]) +#default choq_cloth_glovesquidditch1 = DollCloth("cho", ("upper body", "gloves"), "gloves", "quidditch", [[213, 161, 13, 255]]) # Not in use anymore. +default choq_goggles = DollCloth("cho", ("head", "glasses"), "glasses", "goggles", [[137, 150, 193, 255], [165, 165, 166, 255]]) +#default choq_goggles_face = DollCloth("cho", ("head", "headgear"), "headgear", "goggles_face", [[137, 150, 193, 255], [165, 165, 166, 255]], unlocked=False) # Not in use +default choq_cloth_schoolskirt2 = DollCloth("cho", ("lower body", "skirts"), "bottom", "school_skirt_2", [[103, 90, 108, 255], [232, 177, 13, 255]]) +default choq_cloth_schoolskirt3 = DollCloth("cho", ("lower body", "skirts"), "bottom", "school_skirt_3", [[103, 90, 108, 255], [232, 177, 13, 255]]) +default choq_panties_in_hand = DollCloth("cho", ("misc", "accessory"), "accessory2", "panties_in_hand", [[156, 204, 249, 255]]) + +default choq_accessory_protectors = DollCloth("cho", ("misc", "accessory"), "accessory1", "protectors1", [[0, 0, 0, 255]], zorder=27) +default choq_accessory_protectors2 = DollCloth("cho", ("misc", "accessory"), "accessory1", "protectors2", [[0, 0, 0, 255]], zorder=27) + +# Add choq_accessory_protectors2 once drawn for normal pose +default cho_outfit_quidditch = DollOutfit([cho_hair_ponytail1, choq_cloth_topsweater1, choq_cloth_pantslong2, choq_cloth_robequidditch1, choq_bra_sports1, choq_panties_sport1], hidden=True) + +default cho_outfit_quidditch_hufflepuff = DollOutfit([cho_hair_ponytail1, choq_cloth_topsweater1, choq_cloth_schoolskirt2, choq_cloth_robequidditch1, choq_accessory_protectors, choq_bra_sports1, choq_panties_sport1], hidden=True) +default cho_outfit_quidditch_slytherin = DollOutfit([cho_hair_ponytail1, choq_cloth_topsweater1, choq_cloth_pantslong2, choq_accessory_protectors2, choq_bra_sports1, choq_panties_sport1], hidden=True) +default cho_outfit_quidditch_gryffindor = DollOutfit([cho_hair_ponytail1, choq_cloth_topsweater1, choq_cloth_schoolskirt3, choq_accessory_protectors, choq_bra_sports1, choq_panties_sport1], hidden=True) + +################ +## Pubic Hair ## +################ + +default cho_pubes_arrow = DollCloth("cho", ("lower undergarment", "pubes"), "pubes", "arrow", [[70, 90, 147, 255]], unlocked=True) +default cho_pubes_beaver = DollCloth("cho", ("lower undergarment", "pubes"), "pubes", "beaver", [[70, 90, 147, 255]], unlocked=True) +default cho_pubes_stuble = DollCloth("cho", ("lower undergarment", "pubes"), "pubes", "stuble", [[52, 59, 80, 255]], unlocked=True) +default cho_pubes_unshaved = DollCloth("cho", ("lower undergarment", "pubes"), "pubes", "unshaved", [[52, 59, 80, 255]], unlocked=True) + +default cho_makeup4_lipstick = DollLipstick("cho", ("head", "makeup"), "makeup4", "lipstick", [[255, 70, 70, 255]], unlocked=True) + +### Event Specific ### + +default cho_top_school1_slyt = DollCloth("cho", ("upper body", "shirts"), "top", "top_school_1", [[183, 183, 184, 255], [109, 105, 121, 255], [58, 115, 75, 255], [205, 205, 206, 255]]) +default cho_top_school1_gryf = DollCloth("cho", ("upper body", "shirts"), "top", "top_school_1", [[183, 183, 184, 255], [109, 105, 121, 255], [167, 77, 42, 255], [237, 179, 14, 255]]) +default cho_top_school1_huff = DollCloth("cho", ("upper body", "shirts"), "top", "top_school_1", [[183, 183, 184, 255], [109, 105, 121, 255], [251, 198, 10, 255], [51, 43, 54, 255]]) +default cho_stockings_slyt = DollCloth("cho", ("legwear", "socks"), "stockings", "house", [[58, 115, 75, 255], [205, 205, 206, 255]]) +default cho_stockings_gryf = DollCloth("cho", ("legwear", "socks"), "stockings", "house", [[219, 165, 13, 255], [146, 63, 30, 255]]) +default cho_stockings_huff = DollCloth("cho", ("legwear", "socks"), "stockings", "house", [[251, 198, 10, 255], [51, 43, 54, 255]]) + +default cho_outfit_slyt = DollOutfit([cho_hair_ponytail1, cho_top_school1_slyt, cho_bottom_school1, cho_bra_basic1, cho_panties_basic1, cho_stockings_slyt], hidden=True) +default cho_outfit_gryf = DollOutfit([cho_hair_ponytail1, cho_top_school1_gryf, cho_bottom_school1, cho_bra_basic1, cho_panties_basic1, cho_stockings_gryf], hidden=True) +default cho_outfit_huff = DollOutfit([cho_hair_ponytail1, cho_top_school1_huff, cho_bottom_school1, cho_bra_basic1, cho_panties_basic1, cho_stockings_huff], hidden=True) + +default smurfette_hair = DollCloth("cho", ("head", "hair"), "hair", "smurfette", [[255, 221, 71, 255],[255, 237, 158, 255]], level=4) +default smurfette_hat = DollCloth("cho", ("head", "headgear"), "headgear", "smurfette", [[251, 251, 251, 255]], level=4) +default smurfette_top = DollCloth("cho", ("upper body", "dresses"), "top", "smurfette", [[251, 251, 251, 255],[251, 251, 251, 255]], level=4, blacklist=["bottom"], armfix=True) + +default cho_outfit_smurfette = DollOutfit([smurfette_hair, smurfette_hat, smurfette_top], price=0, name="Smurfette Costume", desc="I'm coming for you, Gargamel.{heart}") diff --git a/game/scripts/characters/cho/wardrobe_reactions.rpy b/game/scripts/characters/cho/wardrobe_reactions.rpy new file mode 100644 index 00000000..c9e05e9e --- /dev/null +++ b/game/scripts/characters/cho/wardrobe_reactions.rpy @@ -0,0 +1,935 @@ +define cho_requirements = { + "category upper undergarment": 5, + "category lower undergarment": 5, + "category piercings & tattoos": 16, + "touch head": 4, + "touch breasts": 10, #Start of Gryffindor match leadup tier + "touch vagina": 15, #Highest level of Gryffindor match leadup tier + "unequip panties": 15, + "unequip bra": 15, + "unequip top": 4, + "unequip bottom": 4, + } + +define cho_responses = { + "category_fail": "cho_reaction_category_fail", + "equip": "cho_reaction_equip", + "equip_fail": "cho_reaction_equip_fail", + "unequip": "cho_reaction_unequip", + "unequip_fail": "cho_reaction_unequip_fail", + "touch": "cho_reaction_touch", + "touch_fail": "cho_reaction_touch_fail", + "equip_outfit": "cho_reaction_equip_outfit", + "equip_outfit_fail": "cho_reaction_equip_outfit_fail", + "blacklist": "cho_reaction_blacklist", + "fallback": "cho_reaction_fallback", +} + +label cho_reaction_category_fail(category): + + if category == "upper undergarment": + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + cho "You want to pick my underwear?" ("disgust", "narrow", "angry", "mid") + cho "I don't think so." ("open", "narrow", "angry", "R") + elif random_number == 2: + cho "Unless we're doing exercises I don't see why you want me to change my underwear..." ("disgust", "base", "angry", "R") + elif random_number == 3: + cho "I'm perfectly fine with the underwear I'm already wearing thank you..." ("base", "base", "base", "mid") + elif category == "lower undergarment": + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + cho "My underwear?" ("disgust", "base", "raised", "mid") + cho "Why do you want me to change them exactly?" ("angry", "narrow", "angry", "mid") + elif random_number == 2: + cho "*Err*... You want me to do what?" ("disgust", "base", "angry", "mid", cheeks="blush") + elif random_number == 3: + cho "Are we doing something that requires me to change my underwear?" ("annoyed", "narrow", "raised", "mid") + gen "I just thought I could pick some for you to wear." ("base", xpos="far_left", ypos="head") + cho "Well... You thought wrong." ("upset", "narrow", "angry", "mid") + elif category == "piercings & tattoos": + if cho_whoring < 4: + cho "Yeah, that's not happening..." ("annoyed", "narrow", "angry", "R") + elif cho_whoring < 10: + cho "No thank you..." ("annoyed", "narrow", "base", "mid") + else: # < 16 + cho "My body is already perfect without such things..." ("smile", "closed", "base", "mid") + + return + +label cho_reaction_touch(what): + if what == "head": + $ mouse_headpat() + + if cho_whoring < 10: #Pre Slytherin match (after hufflepuff match) + if random_number == 1: + cho "Are you measuring my height or something?" ("annoyed", "narrow", "base", "mid") + elif random_number == 2: + cho "Is this supposed to encourage me?" ("disgust", "closed", "base", "mid") + elif random_number == 3: + cho "You'd usually only pet a dog when they do well with their training you know that right?" ("open", "narrow", "raised", "mid") + elif random_number == 4: + cho "What next? A treat?" ("soft", "narrow", "base", "R") + elif cho_whoring < 16: # Pre Gryffindor match (after Slytherin match) + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + cho "*Hmm*... Well I suppose this is fine... You did help me beat those Slytherins after all." ("soft", "closed", "base", "mid", cheeks="blush") + elif random_number == 2: + cho "Thank you, but don't we have other things to focus on?" ("open", "narrow", "base", "R", cheeks="blush") + elif random_number == 3: + cho "Yes, I do believe I've deserved some praise..." ("base", "base", "base", "mid", cheeks="blush") + cho "Although petting is a bit out there as a reward..." ("soft", "base", "base", "R", cheeks="blush") + elif cho_whoring < 22: #Post Gryffindor match (start of tier) + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + cho "I could get used to this..." ("base", "narrow", "base", "R", cheeks="blush") + elif random_number == 2: + cho "Thank you [cho_genie_name]..." ("open", "narrow", "base", "down", cheeks="blush") + elif random_number == 3: + cho "Is this supposed to be my reward, [cho_genie_name]?" ("soft", "narrow", "base", "mid", cheeks="blush") + cho "I was expecting more coming from you..." ("open", "narrow", "base", "downR", cheeks="blush") + else: #22+ #Post Gryffindor match (end of tier) + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + cho "Are you sure there isn't anywhere else you could distribute that praise?" ("smile", "narrow", "base", "mid", cheeks="blush") + elif random_number == 2: + cho "I'm glad you're so proud of me [cho_genie_name]..." ("base", "narrow", "base", "mid", cheeks="blush") + elif random_number == 3: + cho "*Mmm*..." ("horny", "closed", "base", "mid", cheeks="blush") + + + elif what == "breasts": + $ mouse_heart() + + if cho_whoring < 16: # Before Gryffindor match + $ random_number = renpy.random.randint(1, 4) + if random_number == 1: + cho "Kissing them for good luck are we?" ("smile", "narrow", "base", "mid", cheeks="blush") + elif random_number == 2: + cho "*Mmm*..." ("horny", "closed", "base", "mid") + cho "..." ("disgust", "narrow", "base", "mid", cheeks="blush") + elif random_number == 3: + cho "My Quaffles are quite perfect aren't they?" ("grin", "narrow", "base", "mid", cheeks="blush") + cho "*Ugh*... Why did I just call them that..." ("disgust", "narrow", "base", "downR", cheeks="heavy_blush") + elif random_number == 4: + cho "*Mmm*... Feel how firm those bad girls are?" ("base", "narrow", "base", "mid", cheeks="blush") + cho "That's the reward from years of hard training..." ("grin", "closed", "base", "mid", cheeks="blush") + else: + if random_number == 1: + cho "*Mmm*..." ("horny", "closed", "base", "mid") + elif random_number == 2: + cho "Thank you [cho_genie_name]..." ("soft", "narrow", "base", "mid", cheeks="blush") + elif random_number == 3: + cho "Glad you appreciate them as much as I do..." ("smile", "wink", "base", "mid", cheeks="blush") + + elif what == "vagina": + $ mouse_heart() + + if cho_whoring < 16: #Before Gryffindor match + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + cho "*Hmm*... I can appreciate a man who goes for what he wants no matter what..." ("base", "narrow", "base", "mid", cheeks="blush") + elif random_number == 2: + cho "Such speed... Fancy yourself a seeker do you?" ("smile", "narrow", "base", "mid", cheeks="blush") + elif random_number == 3: + cho "*Hmm*... Surely such a move must count as a foul..." ("smile", "wink", "base", "mid", cheeks="blush") + else: + $ random_number = renpy.random.randint(1, 2) + if random_number == 1: + cho "Found one of the goal posts did you?" ("base", "narrow", "base", "mid", cheeks="blush") + cho "There's two more you know..." ("smile", "wink", "base", "mid", cheeks="blush") + elif random_number == 2: + cho "Careful or I might lock my thighs around your neck and keep you there..." ("soft", "narrow", "base", "mid", cheeks="blush") + + + return + +label cho_reaction_touch_fail(what): + if what == "head": + $ mouse_slap() + + $ random_number = renpy.random.randint(1, 4) + if random_number == 1: + cho "Don't touch my hair..." ("clench", "base", "base", "mid") + elif random_number == 2: + cho "Bad [cho_genie_name]..." ("annoyed", "base", "angry", "mid") + elif random_number == 3: + cho "No touch!" ("open", "closed", "angry", "mid") + elif random_number == 4: + cho "Don't...{w=0.4} Pet...{w=0.4} me..." ("soft", "narrow", "angry", "mid") + + elif what == "breasts": + $ mouse_slap() + + $ random_number = renpy.random.randint(1, 4) + if random_number == 1: + cho "[cho_genie_name]?!" ("mad", "base", "angry", "mid") + cho "This isn't a part of our training..." ("clench", "base", "angry", "mid") + elif random_number == 2: + cho "Nice try..." ("smile", "narrow", "angry", "mid") + elif random_number == 3: + cho "What are you doing?!" ("disgust", "wide", "base", "mid") + elif random_number == 4: + cho "Too slow..." ("crooked_smile", "narrow", "angry", "mid") + + elif what == "vagina": + $ mouse_slap() + + $ random_number = renpy.random.randint(1, 4) + if random_number == 1: + cho "Hands where I can see them!" ("angry", "base", "angry", "mid") + elif random_number == 2: + cho "You'd have to be a lot faster to get even close to getting away with that..." ("crooked_smile", "narrow", "angry", "mid") + elif random_number ==3: + cho "Nice try..." ("soft", "narrow", "angry", "mid") + elif random_number ==4: + cho "No foul plays, [cho_genie_name]..." ("angry", "narrow", "angry", "mid") + + return + +label cho_reaction_equip(item): + ### Add specific clothing reactions here. + # if item == : + # cho "This looks awesome! I'll wear this with pride!" + return + +label cho_reaction_equip_fail(item): + ### Add specific clothing reactions here. + # if item == : + # cho "I won't wear because!" + # else: + # + + $ random_number = renpy.random.randint(1, 4) + if random_number == 1: + cho "There's no way I would wear that." ("upset", "narrow", "angry", "mid") + elif random_number == 2: + cho "Put it on yourself..." ("open", "base", "angry", "mid") + gen "I don't think it would fit." ("base", xpos="far_left", ypos="head") + cho "Well, tough luck..." ("annoyed", "narrow", "angry", "R") + elif random_number == 3: + cho "I am not wearing that..." ("upset", "closed", "base", "mid") + elif random_number == 4: + cho "Ask Granger to wear it why don't you..." ("open", "closed", "angry", "mid") + gen "It's made for your size." ("base", xpos="far_left", ypos="head") + cho "What is that supposed to mean?" ("soft", "base", "angry", "mid") + gen "..." ("angry", xpos="far_left", ypos="head") + + return + +label cho_reaction_unequip(item): + ### Example + # if item.type == "panties": + # if cho_whoring > 15: + # cho "You want to see my snatch?" + # cho "You got it [genie_name]!" + # + return + +label cho_reaction_unequip_fail(item): + if item.type == "panties": + + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + cho "You want me to take off my underwear?" ("upset", "narrow", "angry", "mid") + cho "How is that supposed to help with my training?" ("open", "closed", "angry", "mid", cheeks="blush") + elif random_number == 2: + cho "You want me to stand here without underwear?" ("disgust", "narrow", "base", "mid") + cho "Yeah, in your dreams [cho_genie_name]..." ("annoyed", "narrow", "angry", "R") + elif random_number == 3: + cho "Take your own underwear off why don't you..." ("disgust", "narrow", "angry", "mid") + gen "What's to say I'm wearing any?" ("base", xpos="far_left", ypos="head") + cho "..." ("angry", "closed", "angry", "mid") + + elif item.type == "bra": + $ random_number = renpy.random.randint(1, 2) + if random_number == 1: + cho "I bet that Gryffindor cow happily stands here with her tits out but that doesn't mean I will..." ("disgust", "base", "angry", "R", cheeks="blush") + elif random_number == 2: + cho "You want me to flash you my tits?" ("angry", "wide", "base", "mid", cheeks="blush") + gen "I want you to take it off and keep it off..." ("base", xpos="far_left", ypos="head") + cho "No way!" ("clench", "narrow", "angry", "mid") + + elif item.type == "top": + cho "I'm sorry if you don't like my choice of clothes, [cho_genie_name]..." ("annoyed", "narrow", "angry", "R") + + elif item.type == "bottom": + cho "I'm sorry if you don't like my choice of clothes, [cho_genie_name]..." ("open", "narrow", "angry", "downR") + return + +label cho_reaction_equip_outfit(item): + ### Add specific Outfit reactions here. + + ######################## + ## Default Schoolgirl ## + ######################## + if item == cho_outfit_default: + gen "Could you put on your normal school uniform?" ("base", xpos="far_left", ypos="head") + if cho_whoring < 4: + cho "Sure." ("soft", "base", "base", "mid") + cho "Let me just go change real quick." ("open", "base", "base", "R") + elif cho_whoring < 10: + cho "My regular school uniform?" ("open", "narrow", "raised", "mid") + gen "That's the one." ("base", xpos="far_left", ypos="head") + cho "Alright, give me a moment..." ("soft", "narrow", "base", "mid") + elif cho_whoring < 16: + cho "With the vest and all?" ("soft", "narrow", "raised", "mid") + gen "Yep." ("base", xpos="far_left", ypos="head") + cho "*Hmm*...{w=0.3} Is this some sort of trick?" ("annoyed", "narrow", "raised", "mid") + gen "Nope, I just like keeping up the traditions." ("base", xpos="far_left", ypos="head") + cho "Yeah right..." ("open", "narrow", "base", "R") + gen "..." ("base", xpos="far_left", ypos="head") + cho "Oh, You were serious! Okay then..." ("disgust", "narrow", "base", "mid") + else: #16+ + cho "*Hmm*...{w=0.3} It's a bit constricting..." ("annoyed", "narrow", "base", "down") + gen "In what way?" ("base", xpos="far_left", ypos="head") + cho "You know...{w=0.3} The tie and all..." ("soft", "narrow", "base", "mid") + gen "I don't get it..." ("base", xpos="far_left", ypos="head") + cho "Never mind..." ("open", "narrow", "base", "down", cheeks="blush") + + ######################## + ## Cheerleader ## + ######################## + elif item == cho_outfit_cheerleader: #Req 10 whoring + gen "Could you wear the cheerleader outfit for me?" ("base", xpos="far_left", ypos="head") + if cho_whoring < 16: + cho "The cheerleader outfit..." ("soft", "narrow", "base", "down") + cho "You want me to cheer for myself or what?" ("angry", "narrow", "raised", "mid") + gen "*Heh-Heh*...{w=0.2} Yeah, that sounds funny..." ("grin", xpos="far_left", ypos="head") + cho "Fine..." ("disgust", "narrow", "base", "mid") + else: # 16+ + cho "The cheerleader outfit?" ("open", "narrow", "base", "mid") + cho "But isn't that a bit below me?" ("annoyed", "base", "base", "mid") + gen "Blow me? Yes please!" ("grin", xpos="far_left", ypos="head") + cho "...{w} Fine." ("disgust", "narrow", "base", "mid") + ################## + ## Misty Outfit ## + ################## + elif item == cho_outfit_misty: #Req 15 (no bra) + gen "Put on the misty cosplay for me will you?" ("base", xpos="far_left", ypos="head") + cho "*Hmm*... A cosplay..." ("open", "base", "base", "down") + gen "Yup, gotta catch them all." ("base", xpos="far_left", ypos="head") + cho "Catch all of what?" ("soft", "base", "raised", "mid") + gen "The pokemens." ("base", xpos="far_left", ypos="head") + cho "*Huh*?" ("annoyed", "narrow", "raised", "mid") + gen "And the pokewomens..." ("base", xpos="far_left", ypos="head") + cho "The what?" ("open", "narrow", "raised", "mid") + gen "To train them is my cause." ("base", xpos="far_left", ypos="head") + cho "..." ("normal", "narrow", "base", "mid") + gen "Just put it on will you?" ("base", xpos="far_left", ypos="head") + cho "Alright..." ("open", "narrow", "base", "mid") + + ################## + ## Party Outfit ## + ################## + elif item == cho_outfit_party: #Req 16 (bottom) (clothing event unlock) + gen "Can you put on the party outfit?" ("base", xpos="far_left", ypos="head") + cho "Something we're celebrating?" ("smile", "base", "base", "mid") + gen "Yes." ("base", xpos="far_left", ypos="head") + cho "What is it?" ("base", "base", "raised", "mid") + gen "How good you'll look in the outfit." ("base", xpos="far_left", ypos="head") + gen "Now put it on!" ("grin", xpos="far_left", ypos="head") + cho "Alright, one moment." ("base", "base", "base", "R") + + ################### + ## Sailor Outfit ## + ################### + elif item == cho_outfit_sailor: #Req 18 (bottom, panties) + gen "I've got this sailors outfit with your name on it!" ("grin", xpos="far_left", ypos="head") + cho "Looks more like a slutty sailor outfit..." ("annoyed", "narrow", "raised", "down") + cho "I doubt any seamen would actually wear something like this..." ("open", "narrow", "base", "mid") + gen "Yeah, the semen goes on this outfit not in it..." ("base", xpos="far_left", ypos="head") + cho "They go-- Oh...{w=0.3} I see..." ("disgust", "narrow", "base", "down", cheeks="blush") + menu: + "\"(And call me captain from now!)\"": + $ cho_genie_name = "Captain" + cho "Alright Captain!" ("soft", "narrow", "base", "mid", cheeks="blush") + "\"(Now set sail!)\"": + cho "Yes [cho_genie_name]!" ("soft", "narrow", "base", "mid", cheeks="blush") + + ############################ + ## Japanese School Outfit ## + ############################ + elif item == cho_outfit_j_school: #Req 4 (top, bottom) + gen "Could you put on the Japanese schoolgirl uniform?" ("base", xpos="far_left", ypos="head") + if cho_whoring < 10: + cho "*Hmm*... It's a bit..." ("disgust", "narrow", "base", "down") + gen "A bit what?" ("base", xpos="far_left", ypos="head") + cho "I don't know..." ("clench", "narrow", "worried", "down") + gen "Cute?" ("base", xpos="far_left", ypos="head") + cho "Yes..." ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "I'm sure you'll look great in it then!" ("base", xpos="far_left", ypos="head") + cho "...{w=0.3} Alright, fine..." ("disgust", "narrow", "base", "down", cheeks="blush") + elif cho_whoring < 16: + cho "*Hmm*... I guess this is what I'd be wearing if my family had stayed in Asia..." ("soft", "narrow", "base", "down") + gen "I thought you said you weren't Japanese?" ("base", xpos="far_left", ypos="head") + cho "There's only one Wizard school in Asia and it's in Japan... Surely you'd know this...." ("disgust", "narrow", "base", "mid") + gen "Oh!" ("base", xpos="far_left", ypos="head") + gen "(How small is the wizard community? These numbers don't add up...)" ("base", xpos="far_left", ypos="head") + gen "*Err*... I'm just a bit forgetful that's all..." ("base", xpos="far_left", ypos="head") + cho "Right...{w=0.3} Well, just give me a moment to change then..." ("annoyed", "narrow", "base", "mid") + else: # 16+ + cho "Did they send you this from Japan?" ("open", "base", "base", "mid") + gen "I had it custom made!" ("base", xpos="far_left", ypos="head") + cho "You did?" ("clench", "narrow", "base", "down") + cho "And here I thought it was an official uniform..." ("angry", "narrow", "base", "down") + gen "What can I say, I'm quite knowledgeable about these types of uniforms... I've got quite the collection of images." ("base", xpos="far_left", ypos="head") + cho "I bet you do..." ("disgust", "narrow", "base", "downR", cheeks="blush") + cho "Alright, let's see if I look like any of the girls in those pictures of yours..." ("base", "narrow", "base", "mid", cheeks="blush") + + ################### + ## Bikini Outfit ## + ################### + elif item == cho_outfit_bikini: #req 14 (bra, panties) + gen "I've got this bikini for you to wear today." ("base", xpos="far_left", ypos="head") + if cho_whoring < 16: + cho "A Bikini?" ("soft", "narrow", "base", "mid", cheeks="blush") + gen "Yep, this one..." ("base", xpos="far_left", ypos="head") + cho "..." ("soft", "narrow", "base", "down", cheeks="blush") + cho "Are you sure this is not just some scrap material you had lying around?" ("angry", "narrow", "base", "down", cheeks="blush") + gen "I mean... It might've been made from that." ("base", xpos="far_left", ypos="head") + cho "Figures..." ("disgust", "narrow", "base", "downR", cheeks="blush") + cho "Well, I suppose it's better than being naked..." ("soft", "narrow", "base", "mid", cheeks="blush") + else: # 16+ + cho "A Bikini?" ("soft", "base", "base", "mid") + gen "Yep, this one..." ("base", xpos="far_left", ypos="head") + cho "I see..." ("base", "narrow", "base", "down", cheeks="blush") + cho "Well, I do look great in bikini's..." ("open", "closed", "base", "mid", cheeks="blush") + gen "I'm still waiting for the beach episode." ("base", xpos="far_left", ypos="head") + cho "The what?" ("angry", "base", "base", "mid") + gen "Never mind..." ("base", xpos="far_left", ypos="head") + cho "Alright... Just give me a moment to put it on." ("soft", "narrow", "base", "down") + + ########################## + ## Lace Lingerie Outfit ## + ########################## + elif item == cho_outfit_lacelingerie: #req 14 (bra) + gen "Could you put on this lace underwear set?" ("base", xpos="far_left", ypos="head") + if cho_whoring < 16: + cho "This is lingerie isn't it?" ("soft", "narrow", "base", "down", cheeks="blush") + gen "Well spotted." ("base", xpos="far_left", ypos="head") + cho "I can't say this is the type of underwear I usually like to wear." ("normal", "narrow", "base", "mid", cheeks="blush") + gen "Well, there's underwear for different purposes..." ("base", xpos="far_left", ypos="head") + cho "And lingerie's purpose is?" ("open", "narrow", "base", "downR", cheeks="blush") + gen "To bring out the sexy!" ("base", xpos="far_left", ypos="head") + cho "I see..." ("soft", "narrow", "base", "down", cheeks="blush") + cho "Well if that's the goal then suppose I'll have to wear it." ("open", "closed", "base", "mid", cheeks="blush") + cho "Prepare to meet your maker, sexiness!" ("grin", "narrow", "base", "mid", cheeks="blush") + else: #16+ + cho "Lingerie..." ("soft", "narrow", "base", "down", cheeks="blush") + cho "So these types of underwear really does it for men do they?" ("open", "base", "base", "downR", cheeks="blush") + gen "Yep!" ("base", xpos="far_left", ypos="head") + gen "Women too!" ("base", xpos="far_left", ypos="head") + cho "*Hmm*...{w=0.3} Well I better put it on then..." ("base", "narrow", "base", "down", cheeks="blush") + + ################## + ## Dress Outfit ## + ################## + elif item == cho_outfit_dress1: #req 12 (top) + gen "I've got the perfect dress for you to wear." ("base", xpos="far_left", ypos="head") + cho "A dress?" ("base", "base", "raised", "mid") + gen "Yep, this one!" ("base", xpos="far_left", ypos="head") + cho "*Hmm*...{w=0.3} Red and gold..." ("normal", "base", "base", "down") + gen "Nice isn't it?" ("base", xpos="far_left", ypos="head") + cho "I...{w=0.3} Yes, thank you [cho_genie_name]..." ("open", "narrow", "base", "down") + cho "I'll put it on now then shall I." ("open", "base", "base", "mid") + + #################### + ## Trainee Outfit ## + #################### + elif item == cho_outfit_trainee: #req 10 (top) (Part of clothing event) + gen "I've got the perfect outfit for you to wear when you exercise, mind putting it on?" ("base", xpos="far_left", ypos="head") + if cho_whoring < 16: + cho "Did you get a size too small on purpose?" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "What do you mean?" ("base", xpos="far_left", ypos="head") + cho "That tank top would slide up any time I try to do stretches..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Sounds like a bonus to me." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "base", "down", cheeks="blush") + cho "Alright fine..." ("open", "narrow", "base", "down", cheeks="blush") + else : #16+ + cho "What kind of exercises do you have in mind exactly?" ("open", "narrow", "base", "mid", cheeks="blush") + gen "Ones that show off your ass mainly." ("base", xpos="far_left", ypos="head") + cho "Figures..." ("base", "narrow", "base", "R", cheeks="blush") + cho "Give me moment to put it on then..." ("base", "base", "base", "mid", cheeks="blush") + + ################ + ## Smurfette ## + ################ + elif item == cho_outfit_smurfette: #req 15 (no bra, no panties) + gen "I've got this smurfette Cosplay for you to wear." ("base", xpos="far_left", ypos="head") + if cho_whoring < 16: + cho "Smurf... What?" ("soft", "narrow", "raised", "mid") + gen "Ette." ("base", xpos="far_left", ypos="head") + cho "*Huh*?" ("annoyed", "base", "base", "mid") + gen "She's that cute blond one in the smurfs." ("base", xpos="far_left", ypos="head") + cho "Alright..." ("open", "narrow", "base", "R") + cho "Well I suppose it doesn't look too bad..." ("open", "narrow", "base", "down") + cho "That hat is a bit silly though... Promise you won't laugh at me..." ("disgust", "narrow", "base", "mid") + gen "Promise..." ("base", xpos="far_left", ypos="head") + cho "Okay, just give me a moment to go change then..." ("soft", "base", "base", "mid") + else: # 16+ + cho "Who's that?" ("soft", "base", "raised", "mid") + gen "She's the blonde girl." ("base", xpos="far_left", ypos="head") + cho "*Huh*?" ("angry", "narrow", "base", "mid") + gen "Come on, she was the only female Smurf for the first five seasons. I know they look similar but surely--" ("base", xpos="far_left", ypos="head") + cho "I don't know what a Smurf is." ("disgust", "narrow", "base", "mid") + gen "Oh... That makes more sense..." ("base", xpos="far_left", ypos="head") + gen "Well, they're these tiny blue creatures that lives in the woods." ("base", xpos="far_left", ypos="head") + cho "Like a pixie?" ("open", "base", "base", "mid") + gen "Smurfs are only blue but I guess they're the same size." ("base", xpos="far_left", ypos="head") + cho "Pixies are only blue as well..." ("angry", "narrow", "base", "mid") + gen "Pretty sure they're not, what do they teach you in history class here?" ("base", xpos="far_left", ypos="head") + cho "History? We were told they were blue in our Care of magical creatures class." ("angry", "narrow", "base", "mid") + gen "Really?" ("base", xpos="far_left", ypos="head") + gen "(Genepool must've gotten fucked after generations of inbreeding...)" ("base", xpos="far_left", ypos="head") + gen "(Such a shame...)" ("base", xpos="far_left", ypos="head") + gen "What ever the case... I'd like you to wear this cosplay outfit for me." ("base", xpos="far_left", ypos="head") + cho "Oh... Alright..." ("open", "narrow", "base", "mid") + + ###################### + ## Space Jam Outfit ## + ###################### + elif item == cho_outfit_toon: #req 4 + gen "Put on this space Jam outfit for me will you?" ("base", xpos="far_left", ypos="head") + cho "This outfit doesn't look very space themed to me..." ("soft", "narrow", "raised", "mid") + gen "It's not about space!" ("base", xpos="far_left", ypos="head") + gen "It's Basketball themed!" ("base", xpos="far_left", ypos="head") + cho "Basket... Then why does it have space in the name?" ("soft", "narrow", "raised", "mid") + gen "I don't know, why does Quidditch have Quid and ditch in the name if it's not about throwing money on the ground?" ("base", xpos="far_left", ypos="head") + cho "*Err*...{w} I'll just put this on then shall I?" ("disgust", "narrow", "base", "mid") + + #################### + ## Chun-Li Outfit ## + #################### + elif item == cho_outfit_chun_li: #req 16 (tattoo's) + gen "I've got this cosplay outfit for you to wear." ("base", xpos="far_left", ypos="head") + cho "Cosplay?" ("open", "base", "raised", "mid") + gen "Yeah, it's a video-- *Err*... Famous female martial artist." ("base", xpos="far_left", ypos="head") + cho "Oh? What's her name?" ("smile", "base", "base", "mid") + gen "Chun-Li!" ("base", xpos="far_left", ypos="head") + cho "*Hmm*... Not sure if I've heard of her." ("soft", "base", "base", "mid") + gen "(Like everyone in this castle...)" ("base", xpos="far_left", ypos="head") + cho "I suppose the costume look quite well made." ("open", "base", "base", "down", cheeks="blush") + gen "Finest silk in the country!" ("base", xpos="far_left", ypos="head") + cho "Alright, I'll wear it... Even though that Tattoo is a bit..." ("base", "narrow", "base", "down", cheeks="blush") + gen "A bit what? A bit too awesome?" ("base", xpos="far_left", ypos="head") + cho "So... You really don't know what it says." ("soft", "narrow", "base", "mid", cheeks="blush") + gen "Not the faintest idea." ("base", xpos="far_left", ypos="head") + cho "Well... I suppose that's a good thing then..." ("soft", "narrow", "base", "R", cheeks="blush") + ################## + ## Police Woman ## + ################## + elif item == cho_outfit_police: #req 10 (bottoms) + gen "Put on the police cosplay uniform will you?" ("base", xpos="far_left", ypos="head") + cho "Police?" ("soft", "base", "raised", "mid") + gen "Yeah, check out the sweet shades on this one. Aren't they cool?" ("base", xpos="far_left", ypos="head") + cho "Trying to take away the focus on that short top?" ("open", "narrow", "base", "down", cheeks="blush") + gen "No clue what you're talking about..." ("base", xpos="far_left", ypos="head") + cho "*Hmm*..." ("base", "narrow", "base", "down", cheeks="blush") + gen "You know, police are some of the most well respected people in muggle society..." ("base", xpos="far_left", ypos="head") + gen "I know how much you love that stuff." ("base", xpos="far_left", ypos="head") + cho "They are?" ("open", "base", "base", "mid", cheeks="blush") + gen "Sure!" ("base", xpos="far_left", ypos="head") + cho "Alright then... If you say so." ("base", "base", "base", "mid") + + # TODO: Blacklist fallbacks have to be added. + return + +label cho_reaction_equip_outfit_fail(item): + ### Add specific Outfit reactions here. + + ######################## + ## Cheerleader ## + ######################## + if item == cho_outfit_cheerleader: #Req 10 whoring + gen "Could you wear the cheerleader outfit for me?" ("base", xpos="far_left", ypos="head") + if cho_whoring < 4: + cho "Cheerleader--{w=0.4} [cho_genie_name]!" ("clench", "narrow", "base", "mid") + gen "what?" ("base", xpos="far_left", ypos="head") + cho "I am a real athlete!" ("disgust", "narrow", "angry", "mid") + cho "I do not mingle with the cheerleading squad..." ("annoyed", "narrow", "angry", "R") + gen "Now, now [cho_name]... Cheerleaders are athletes as well." ("base", xpos="far_left", ypos="head") + gen "Their role is just as important as yours." ("base", xpos="far_left", ypos="head") + cho "Don't make me laugh..." ("open", "closed", "angry", "mid") + cho "They only thing they're good at is distracting the audience from the game." ("annoyed", "narrow", "angry", "mid") + gen "Well, when you put it--{w=0.3} *Err*... No, their role is very important!" ("base", xpos="far_left", ypos="head") + gen "What else are you supposed to look at during half time?" ("base", xpos="far_left", ypos="head") + cho "Yeah... I'd rather not, thanks..." ("open", "narrow", "angry", "R") + else: # < 10 + cho "No thanks... I'd rather not put on anything that those talentless posers are wearing." ("annoyed", "closed", "angry", "down") + gen "Oh, come on... Cheerleading requires plenty of talent!" ("base", xpos="far_left", ypos="head") + cho "Like what? the art of flailing pompoms around?" ("soft", "narrow", "angry", "mid") + gen "Coordination, spirit, and a positive attitude." ("base", xpos="far_left", ypos="head") + gen "These are all important things you need to be a good Cheerleader." ("base", xpos="far_left", ypos="head") + cho "*Pff*... Those things comes naturally to me anyway..." ("open", "narrow", "base", "R") + gen "{size=-4}Ability to take constructive criticism...{/size}" ("base", xpos="far_left", ypos="head") + cho "*Huh*?" ("soft", "narrow", "base", "mid") + gen "Never mind..." ("base", xpos="far_left", ypos="head") + + ################## + ## Misty Outfit ## + ################## + elif item == cho_outfit_misty: #Req 15 (no bra) + gen "Put on this misty cosplay for me will you?" ("base", xpos="far_left", ypos="head") + if cho_whoring < 4: + cho "What on earth is this?!" ("angry", "wide", "base", "down") + gen "Misty cosplay..." ("base", xpos="far_left", ypos="head") + cho "Who?" ("disgust", "narrow", "angry", "mid") + gen "She's a gym leader." ("base", xpos="far_left", ypos="head") + cho "Who wears something like this at the gym?!" ("clench", "narrow", "raised", "down") + gen "Well, she does obviously... Although it's more of an every day clothing." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "mid") + cho "Yeah, no thank you..." ("annoyed", "narrow", "angry", "R") + elif cho_whoring < 10: + cho "A cosplay?" ("open", "base", "raised", "mid") + cho "Whoa... Who is this Misty girl to be wearing something like this?" ("open", "base", "raised", "down") + gen "She's a trainer, much like me." ("base", xpos="far_left", ypos="head") + cho "Really?" ("clench", "narrow", "base", "mid") + gen "Yup." ("base", xpos="far_left", ypos="head") + cho "What kind of sport is it for her to be wearing this?" ("annoyed", "narrow", "raised", "down") + gen "Well, they basically have these animals fight against each other." ("base", xpos="far_left", ypos="head") + cho "What?!" ("angry", "wide", "raised", "mid") + cho "Like cock fighting? Isn't that illegal?" ("clench", "narrow", "worried", "mid") + gen "I don't think there's any cocks involved, I'm not sure what kind of fiction you've been reading..." ("base", xpos="far_left", ypos="head") + cho "What?" ("angry", "base", "base", "mid") + gen "You going to put it on or what?" ("base", xpos="far_left", ypos="head") + cho "I'd rather not..." ("annoyed", "narrow", "base", "down") + gen "Fine..." ("base", xpos="far_left", ypos="head") + else: # < 15 + cho "This top has no bra with it..." ("open", "narrow", "base", "down") + gen "Do you need one?" ("base", xpos="far_left", ypos="head") + cho "Excuse me?" ("soft", "narrow", "angry", "mid") + gen "(Oh, shit...)" ("angry", xpos="far_left", ypos="head") + gen "What I meant to say was--" ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "base", "angry", "mid") + gen "Never mind..." ("base", xpos="far_left", ypos="head") + + ################## + ## Party Outfit ## + ################## + elif item == cho_outfit_party: #Req 16 (bottom) (clothing event unlock, this is a fallback) + gen "Can you put on the party outfit?" ("base", xpos="far_left", ypos="head") + if cho_whoring < 4: + cho "The... Party outfit?" ("open", "base", "raised", "mid") + gen "Yeah... This one..." ("base", xpos="far_left", ypos="head") + cho "..." ("normal", "base", "base", "down") + cho "[cho_genie_name]!" ("angry", "wide", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + cho "What do you mean what? This outfit has no underwear!" ("upset", "narrow", "angry", "mid") + gen "I mean... It covers the important bits does it not?" ("base", xpos="far_left", ypos="head") + gen "Maybe not from every angle but if you were careful not to--" ("base", xpos="far_left", ypos="head") + cho "I am not wearing this!" ("angry", "narrow", "angry", "mid") + gen "Alright, No partying for you I guess..." ("base", xpos="far_left", ypos="head") + elif cho_whoring < 10: + cho "This outfit has no underwear!" ("angry", "base", "base", "down") + gen "Oh... It doesn't?" ("base", xpos="far_left", ypos="head") + cho "It does not..." ("disgust", "narrow", "base", "mid") + cho "I am not going to stand around casually in an outfit without underwear..." ("annoyed", "narrow", "base", "R") + gen "I do it all the time, I don't see what the problem is." ("base", xpos="far_left", ypos="head") + cho "You're not wearing any..." ("mad", "narrow", "base", "mid") + gen "Making the Scotts proud..." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "mid") + else: # < 16 + cho "This outfit is way to slutty..." ("open", "narrow", "base", "down") + cho "My nipples would poke right through this..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "Counting on it..." ("base", xpos="far_left", ypos="head") + cho "Yeah, I'm going to have to pass on this one..." ("angry", "narrow", "base", "down", cheeks="blush") + + ################### + ## Sailor Outfit ## + ################### + elif item == cho_outfit_sailor: #Req 18 (bottom, panties) + gen "I've got this sailors outfit with your name on it!" ("grin", xpos="far_left", ypos="head") + if cho_whoring < 4: + cho "Why would I put on a sailors outfit?" ("soft", "narrow", "base", "mid") + gen "Say that again once you've seen it!" ("grin", xpos="far_left", ypos="head") + cho "I'd rather not..." ("disgust", "narrow", "base", "mid") + elif cho_whoring < 10: + cho "Why would I put on a sailors outfit in here?" ("soft", "narrow", "raised", "mid") + gen "Cause you'd look great in it!" ("grin", xpos="far_left", ypos="head") + cho "... Is that the only reason?" ("disgust", "base", "base", "mid") + gen "Yep, now put it on!" ("grin", xpos="far_left", ypos="head") + cho "... I'll pass..." ("annoyed", "narrow", "base", "R") + else: # < 18 + cho "They were this outfit at sea do they?" ("open", "narrow", "raised", "down") + gen "Nope, the semen goes on this outfit, not in it." ("base", xpos="far_left", ypos="head") + cho "Wait... So it's like a fetish thing?" ("clench", "wide", "base", "mid") + gen "*Err*... I mean, it was just a joke. Get it, cause semen sounds like--" ("base", xpos="far_left", ypos="head") + cho "I am not putting on some fetish thing for you!" ("disgust", "base", "angry", "mid") + gen "It's not..." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "angry", "mid") + gen "Yeah, I guess it kind of is..." ("base", xpos="far_left", ypos="head") + + ############################ + ## Japanese School Outfit ## + ############################ + elif item == cho_outfit_j_school: #Req 4 (top, bottom) + gen "Could you put on the Japanese schoolgirl uniform?" ("base", xpos="far_left", ypos="head") + cho "[cho_genie_name], I'm not Japanese..." ("annoyed", "narrow", "angry", "mid") + gen "So?" ("base", xpos="far_left", ypos="head") + cho "Why do you want me to put on a Japanese school uniform?" ("upset", "narrow", "angry", "mid") + gen "(I better tread carefully...)" ("base", xpos="far_left", ypos="head") + menu: + "\"Japanese schoolgirls are hot!\"": + cho "What?!" ("angry", "base", "angry", "mid") + gen "*Err*... I mean, in the videos I've watched..." ("angry", xpos="far_left", ypos="head") + cho "I am not putting this on so you can live some fantasy of yours..." ("mad", "narrow", "angry", "mid") + gen "It's not...{w=0.3} Fine..." ("base", xpos="far_left", ypos="head") + "\"It's a new design I'm proposing to a Japanese wizarding school!\"": + cho "Mahoutokoro?" ("soft", "narrow", "raised", "mid") + gen "See, I knew you were Japanese!" ("base", xpos="far_left", ypos="head") + cho "That's the name of the school..." ("disgust", "narrow", "angry", "mid") + gen "Oh..." ("base", xpos="far_left", ypos="head") + gen "So, are you putting it on or not?" ("base", xpos="far_left", ypos="head") + cho "I am not..." ("annoyed", "narrow", "base", "mid") + + ################### + ## Bikini Outfit ## + ################### + elif item == cho_outfit_bikini: #req 14 (bra, panties) + gen "I've got this bikini for you to wear today." ("base", xpos="far_left", ypos="head") + if cho_whoring < 4: + cho "A what?!" ("clench", "wide", "base", "mid") + gen "Well... It's technically a two piece set..." ("base", xpos="far_left", ypos="head") + gen "These ones..." ("base", xpos="far_left", ypos="head") + cho "What on earth is wrong with you?" ("scream", "narrow", "angry", "down") + cho "Putting on a regular bikini in your office would be bad enough but this!" ("angry", "base", "angry", "mid") + gen "Define regular..." ("base", xpos="far_left", ypos="head") + cho "..." ("mad", "narrow", "angry", "mid") + gen "Alright, whatever... Forget I said anything..." ("base", xpos="far_left", ypos="head") + elif cho_whoring < 10: + cho "A bikini? Why would I--" ("angry", "narrow", "base", "mid") + gen "This one..." ("base", xpos="far_left", ypos="head") + cho "[cho_genie_name]!" ("clench", "narrow", "base", "down") + gen "What?" ("base", xpos="far_left", ypos="head") + cho "How is this meant to be a bikini?" ("angry", "base", "angry", "down") + cho "This would barely cover my... It would barely cover anything!" ("disgust", "narrow", "base", "down") + gen "Don't be silly, it covers plenty..." ("base", xpos="far_left", ypos="head") + cho "I am not wearing it..." ("annoyed", "narrow", "angry", "mid") + else: # < 14 + gen "This one..." ("base", xpos="far_left", ypos="head") + cho "This barely covers anything!" ("angry", "narrow", "base", "down") + gen "I think you'll find that the purpose of a bikini is to in fact to cover..." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "mid") + cho "I'm not going to stand around in your office wearing something like this..." ("open", "closed", "base", "mid") + gen "Fine, don't wear it then..." ("base", xpos="far_left", ypos="head") + + ########################## + ## Lace Lingerie Outfit ## + ########################## + elif item == cho_outfit_lacelingerie: #req 14 (bra) + gen "Could you put on this lace underwear set?" ("base", xpos="far_left", ypos="head") + if cho_whoring < 4: + cho "Lace what?" ("soft", "narrow", "raised", "mid") + gen "Underwear!" ("base", xpos="far_left", ypos="head") + gen "These ones..." ("base", xpos="far_left", ypos="head") + cho "This is Lingerie!" ("disgust", "wide", "base", "down") + gen "I mean, what did you expect when I said--" ("base", xpos="far_left", ypos="head") + cho "I am not changing my underwear for you!" ("disgust", "base", "angry", "mid") + cho "Especially into something like this!" ("soft", "narrow", "angry", "down") + cho "I can't believe you'd ask me to do this..." ("disgust", "base", "angry", "mid") + gen "I was just testing you! And you failed [cho_name]!" ("base", xpos="far_left", ypos="head") + cho "A Test?! What kind of test was that supposed to be?" ("angry", "narrow", "base", "mid") + gen "*Err*... A test of virtue!" ("base", xpos="far_left", ypos="head") + cho "*Huh*?" ("angry", "base", "raised", "mid") + cho "Isn't having virtue supposed to be a positive thing?" ("annoyed", "narrow", "angry", "mid") + gen "Did I say virtue? I meant modesty!" ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "angry", "mid") + gen "Just put them on already before you fail another test!" ("base", xpos="far_left", ypos="head") + cho "I think I'll have to take the fail on this one..." ("normal", "narrow", "angry", "mid") + elif cho_whoring < 10: + cho "This is lingerie..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "That it is... Well spotted, seeker." ("base", xpos="far_left", ypos="head") + cho "You can see completely through it..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "I know!" ("base", xpos="far_left", ypos="head") + gen "Isn't it great?" ("base", xpos="far_left", ypos="head") + cho "I am not wearing this." ("soft", "closed", "angry", "mid", cheeks="blush") + gen "(Damn... I thought I'd caught that snatch...)" ("base", xpos="far_left", ypos="head") + else: # < 14 + cho "This is lingerie..." ("normal", "narrow", "base", "down", cheeks="blush") + cho "Isn't this something you'd wear to please a partner?" ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "I mean..." ("base", xpos="far_left", ypos="head") + cho "..." ("normal", "narrow", "base", "mid", cheeks="blush") + gen "What if I said it would help with aero dynamics?" ("base", xpos="far_left", ypos="head") + cho "Does it?" ("open", "narrow", "raised", "mid", cheeks="blush") + gen "*Err*...{w} Yes?" ("base", xpos="far_left", ypos="head") + cho "You don't even sound convinced yourself..." ("disgust", "narrow", "base", "mid") + gen "So is that a yes, or?" ("base", xpos="far_left", ypos="head") + cho "It is--" ("open", "closed", "base", "mid", cheeks="blush") + gen "Nice!" ("grin", xpos="far_left", ypos="head") + cho "Not..." ("soft", "narrow", "base", "downR", cheeks="blush") + gen "Dang..." ("base", xpos="far_left", ypos="head") + + ################## + ## Dress Outfit ## + ################## + elif item == cho_outfit_dress1: #req 12 (top) + gen "I've got the perfect dress for you to wear." ("base", xpos="far_left", ypos="head") + cho "A dress?" ("soft", "base", "base", "mid") + gen "Yep, this one!" ("base", xpos="far_left", ypos="head") + cho "[cho_genie_name]!" ("clench", "narrow", "base", "down") + gen "Yes?" ("base", xpos="far_left", ypos="head") + gen "You're loving it?" ("base", xpos="far_left", ypos="head") + cho "Is this some sort of joke?" ("disgust", "narrow", "base", "mid") + gen "What? Did I get the wrong size?" ("base", xpos="far_left", ypos="head") + gen "I didn't buy some Chinese knock off did I?" ("base", xpos="far_left", ypos="head") + cho "No, that's the problem." ("angry", "narrow", "base", "mid") + cho "My mother would be so mad she saw me wearing such a cheap knock off..." ("disgust", "base", "base", "down") + gen "Cheap! I'll have you know I paid--" ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "base", "mid") + gen "Alright fine... Have it your way..." ("base", xpos="far_left", ypos="head") + + #################### + ## Trainee Outfit ## + #################### + elif item == cho_outfit_trainee: #req 10 (top) (Part of clothing event, this is a fallback) + gen "I've got the perfect outfit for you to wear when you exercise, mind putting it on?" ("base", xpos="far_left", ypos="head") + cho "It's a bit small don't you think?" ("annoyed", "base", "base", "down") + gen "Is it?" ("base", xpos="far_left", ypos="head") + cho "That tank top doesn't look like it would go down far enough..." ("soft", "narrow", "base", "down") + gen "Nonsense, a little bit of airflow doesn't hurt anyone..." ("base", xpos="far_left", ypos="head") + cho "*Hmm*... I'd rather wear my normal clothing..." ("annoyed", "narrow", "base", "mid") + + ################ + ## Smurfette ## + ################ + elif item == cho_outfit_smurfette: #req 15 (no bra, no panties) (part of event unlock, this is a fallback) + gen "I've got this smurfette Cosplay for you to wear." ("base", xpos="far_left", ypos="head") + if cho_whoring < 4: + cho "A Cosplay?" ("angry", "narrow", "base", "mid") + gen "Yep, she's that cute--" ("base", xpos="far_left", ypos="head") + cho "I am not putting on some cosplay for you..." ("annoyed", "narrow", "angry", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + else: # 4+ + gen "I've got this smurfette Cosplay for you to wear." ("base", xpos="far_left", ypos="head") + cho "[cho_genie_name], this outfit has no underwear." ("angry", "narrow", "base", "mid") + gen "I mean, you never saw it in the show..." ("base", xpos="far_left", ypos="head") + cho "I am not putting it on..." ("annoyed", "narrow", "angry", "mid") + + ###################### + ## Space Jam Outfit ## + ###################### + elif item == cho_outfit_toon: #req 4 + gen "I think It's time you wear an outfit for a real sport for once." ("base", xpos="far_left", ypos="head") + cho "What do you mean real sport?" ("angry", "narrow", "base", "mid") + gen "One that isn't played riding cleaning appliances." ("base", xpos="far_left", ypos="head") + cho "Quidditch is a real sport [cho_genie_name]!" ("angry", "narrow", "base", "mid") + gen "Yeah, yeah, sure it is..." ("base", xpos="far_left", ypos="head") + gen "Now put this on and show me what a real athlete should look like." ("base", xpos="far_left", ypos="head") + cho "I'd rather not, seeing that Quidditch isn't a real sport... Which would make me not a real athlete..." ("annoyed", "narrow", "angry", "mid") + gen "... Well, you're the one that said it..." ("base", xpos="far_left", ypos="head") + cho "..." ("annoyed", "narrow", "angry", "R") + + #################### + ## Chun-Li Outfit ## + #################### + elif item == cho_outfit_chun_li: #req 16 (tattoo's) + gen "I've got this cosplay outfit for you to wear." ("base", xpos="far_left", ypos="head") + cho "cosplay?" ("normal", "base", "raised", "mid") + if cho_whoring < 4: + cho "I'm not putting on a cosplay outfit for you..." ("angry", "narrow", "base", "mid") + gen "Why not?" ("base", xpos="far_left", ypos="head") + cho "Just look at it!" ("mad", "base", "base", "down") + cho "Even the armour has got nipples on it." ("disgust", "narrow", "angry", "down") + gen "Indeed, some fine eye for detail!" ("base", xpos="far_left", ypos="head") + cho "I'm not wearing it..." ("disgust", "base", "angry", "mid") + elif cho_whoring < 10: + cho "Why is this so revealing?" ("disgust", "narrow", "base", "down") + gen "All good cosplays are." ("base", xpos="far_left", ypos="head") + cho "Really?" ("annoyed", "narrow", "angry", "mid") + gen "Why else do you think there's so many photos like that out there?" ("base", xpos="far_left", ypos="head") + cho "*Hmm*..." ("annoyed", "narrow", "base", "R") + cho "I think I'll pass..." ("open", "closed", "base", "mid") + cho "" ("normal", "base", "base", "mid") + else: # 10+ + cho "What's with that Tattoo?!" ("clench", "wide", "base", "down") + gen "It's a dragon!" ("base", xpos="far_left", ypos="head") + gen "Pretty sweet isn't--" ("base", xpos="far_left", ypos="head") + cho "Not that one, the other one!" ("annoyed", "narrow", "angry", "down", cheeks="blush") + gen "Oh, yeah, that one's pretty cool too I suppose." ("base", xpos="far_left", ypos="head") + cho "Do you even know what it says?" ("open", "narrow", "angry", "mid", cheeks="blush") + gen "I don't know... Strength? Vigour?" ("base", xpos="far_left", ypos="head") + cho "I am not wearing it..." ("angry", "narrow", "base", "R", cheeks="blush") + + ################## + ## Police Woman ## + ################## + elif item == cho_outfit_police: #req 10 (bottoms) + gen "I've got this cosplay for you to wear." ("base", xpos="far_left", ypos="head") + cho "Cosplay?" ("normal", "base", "raised", "mid") + gen "Yeah." ("base", xpos="far_left", ypos="head") + cho "I don't know about that..." ("disgust", "narrow", "base", "R") + gen "Did I say cosplay? I meant uniform!" ("base", xpos="far_left", ypos="head") + cho "*Hmm*... Let me see it." ("annoyed", "narrow", "base", "mid") + gen "This one." ("base", xpos="far_left", ypos="head") + if cho_whoring < 4: + cho "I don't know about that [cho_genie_name]..." ("disgust", "narrow", "base", "down") + cho "Looks a lot like cosplay to me..." ("disgust", "narrow", "base", "down") + gen "So what? I'm sure you'll look great in it." ("base", xpos="far_left", ypos="head") + cho "I think I'll pass..." ("open", "narrow", "base", "R") + else: # 4+ + cho "Why is this top so small?" ("angry", "narrow", "base", "down") + gen "To put more focus on your breasts obviously." ("base", xpos="far_left", ypos="head") + cho "My... Didn't you say this was a uniform?" ("disgust", "narrow", "angry", "mid", cheeks="blush") + cho "Why would a uniform put focus..." ("open", "closed", "angry", "mid", cheeks="blush") + gen "Well... The cosplay version--" ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "narrow", "raised", "mid") + gen "What I meant to say was..." ("base", xpos="far_left", ypos="head") + cho "..." ("disgust", "base", "angry", "mid") + gen "Alright then... Maybe some other time." ("base", xpos="far_left", ypos="head") + + else: + $ random_number = renpy.random.randint(1, 5) + if random_number == 1: + cho "I am not wearing that..." ("clench", "closed", "base", "mid") + elif random_number == 2: + cho "Thanks but no thanks..." ("base", "base", "base", "mid") + elif random_number == 3: + cho "You actually think I'd put on something like that?" ("angry", "base", "base", "mid") + elif random_number == 4: + cho "Do I look like Granger [cho_genie_name]? I am not wearing something like that..." ("disgust", "narrow", "base", "mid") + elif random_number == 5: + cho "This is too much." ("mad", "closed", "base", "mid") + + return + +label cho_reaction_blacklist(item): + cho "Is that really necessary, [cho_genie_name]?" + + if "top" in item.blacklist and cho.is_worn("top"): + cho "My upper garment won't fit with this." + + if "bottom" in item.blacklist and cho.is_worn("bottom"): + cho "Forget about my bottoms, no way they'd fit." + + if "bra" in item.blacklist and cho.is_worn("bra"): + cho "I don't know if I can wear a bra with it." + + if "panties" in item.blacklist and cho.is_worn("panties"): + cho "Seems as if I would need to take off my panties first to wear this." + + cho "You're asking a lot, [cho_genie_name], you know that?" + gen "Come on Cho, you're my favourite {size=-6}snatch grabber{/size} in training!" ("base", xpos="far_left", ypos="head") + cho "What was that?" + gen "I said. You're my favourite snitch catcher in training." ("base", xpos="far_left", ypos="head") + cho "*sigh* Alright, if it means this much to you [cho_genie_name]..." + gen "Hell yes!" ("grin", xpos="far_left", ypos="head") + + return + +label cho_reaction_fallback(item): + if cho_whoring < get_character_requirement("cho", "unequip top") and not "top" in cho.blacklist and not item.type == "top": + $ cho.equip(cho_top_school1) + + if cho_whoring < get_character_requirement("cho", "unequip bottom") and not "bottom" in cho.blacklist and not item.type == "bottom": + $ cho.equip(cho_bottom_school1) + + if cho_whoring < get_character_requirement("cho", "unequip bra") and not "bra" in cho.blacklist and not item.type == "bra": + $ cho.equip(cho_bra_basic1) + + if cho_whoring < get_character_requirement("cho", "unequip panties") and not "panties" in cho.blacklist and not item.type == "panties": + $ cho.equip(cho_panties_basic1) + + cho "Just give me a second, I need to get my clothes back in order." ("open", "base", "base", "R") + cho "" ("base", "base", "base", "mid") + return diff --git a/game/scripts/characters/genie/chibi.rpy b/game/scripts/characters/genie/chibi.rpy new file mode 100644 index 00000000..3acc84d2 --- /dev/null +++ b/game/scripts/characters/genie/chibi.rpy @@ -0,0 +1,116 @@ + +# Genie chibi actions: +# stand, stand_alt, stand_shocked +# rummage, petting, grab_mid, grab_high +# sit_behind_desk +# jerk_off_behind_desk, cum_behind_desk, cum_behind_desk_done +# dick_out +# hold_dick, jerk_off, cum, cum_done, cum_close, cum_close_done +# read, read_done, read_near_fire, read_near_fire_done + +# Note: The flip parameter defaults to True, because Genie is most often facing right +label gen_chibi(action=None, xpos=None, ypos=None, flip=True, pic=None): + + $ genie_chibi.position(xpos, ypos, flip) + + if action == "hide": + $ chair_left_OBJ.hidden = False + $ desk_OBJ.hidden = False + $ desk_OBJ.idle = "desk_empty" + $ genie_chibi.hide() + return + + elif action == "leave": + hide screen genie_main + hide screen bld1 + hide screen blktone + call play_sound("door") + + $ chair_left_OBJ.hidden = False + $ desk_OBJ.hidden = False + $ desk_OBJ.idle = "desk_empty" + $ genie_chibi.hide() + with d3 + pause .5 + return + + elif action == "sit_behind_desk": + $ chair_left_OBJ.hidden = True + $ desk_OBJ.hidden = False + $ desk_OBJ.idle = "ch_gen sit_behind_desk" + $ genie_chibi.hide() + return + + elif action in ("jerk_off_behind_desk", "cum_behind_desk", "cum_behind_desk_done", "jerk_off_behind_desk_pause"): + $ chair_left_OBJ.hidden = True + $ desk_OBJ.hidden = True + $ genie_chibi.position(218, 205+262, False) + $ genie_chibi.do(action) + return + + elif action in ("paperwork", "paperwork_idle"): + $ chair_left_OBJ.hidden = True + $ desk_OBJ.hidden = True + $ genie_chibi.position(224, 205+262, False) + $ genie_chibi.do(action) + return + + elif action == "stand_by_desk": + $ chair_left_OBJ.hidden = False + $ desk_OBJ.hidden = True + $ genie_chibi.do(action) + return + + elif action in ("read", "read_done", "read_near_fire", "read_near_fire_done"): + $ chair_left_OBJ.hidden = True + $ desk_OBJ.hidden = False + $ desk_OBJ.idle = "desk_empty" + $ genie_chibi.position(430, 205+340, False) + $ genie_chibi.do(action) + return + + $ chair_left_OBJ.hidden = False + $ desk_OBJ.hidden = False + $ desk_OBJ.idle = "desk_empty" + $ genie_chibi.do(action) + + return + +label gen_walk(xpos=None, ypos=None, speed=1.0, action=None, reduce=False, path=None, flip=False): + call hide_characters + hide screen bld1 + hide screen blktone + with d3 + + if action == "enter": + call play_sound("door") + call gen_chibi(None, "door", "base", flip) + with d3 + + if xpos or ypos: + $ genie_chibi.move((xpos, ypos), speed, reduce) + elif action == "leave": + $ genie_chibi.show() + $ genie_chibi.move(("door", "base"), speed, reduce) + call play_sound("door") + $ genie_chibi.hide() + with d3 + pause .5 + elif path: + $ genie_chibi.show() + $ genie_chibi.move(path, speed, reduce) + else: + $ genie_chibi.show() + $ genie_chibi.move((xpos, ypos), speed, reduce) + $ genie_chibi.do() + + return + +# Chibi definition +default genie_chibi = Chibi("genie", ["base"], update_genie_chibi) + +init python: + def update_genie_chibi(chibi): + # Assume chibi action has a matching image definition + chibi_image = "ch_gen {}".format(chibi.action or "stand") + chibi["base"] = chibi_image diff --git a/game/scripts/characters/genie/common.rpy b/game/scripts/characters/genie/common.rpy new file mode 100644 index 00000000..8ff1c75f --- /dev/null +++ b/game/scripts/characters/genie/common.rpy @@ -0,0 +1,47 @@ + +define character.genie_say = Character("Genie", show_icon="genie") + +init python: + def gen(what, attributes=None, xpos=None, ypos=None, pos=None, flip=None, trans=None, animation=False, **kwargs): + global genie_xpos, genie_ypos, genie_offset, genie_flip, genie_zoom + redraw = False + tag = "genie_main" + layer = "screens" + side = None + #showing = renpy.showing(name=tag, layer=layer) + + if xpos != None or ypos != None: + xpos = genie_xpos if xpos == None else sprite_pos.get("x").get(xpos, xpos) + ypos = genie_ypos if ypos == None else sprite_pos.get("y").get(ypos, ypos) + genie_xpos = xpos + genie_ypos = ypos + + head_ypos = sprite_pos.get("y").get("head") + far_xpos = sprite_pos.get("x").get("far_left") + + if genie_ypos in ("head", head_ypos): + genie_offset = (-25, 630) + else: + genie_offset = (0, 600) + + if attributes: + variant = "genie {}".format(attributes) + renpy.set_tag_attributes(variant) + side = "genie" + + if renpy.showing("genie", layer=layer): + renpy.show(variant, layer=layer, tag="genie") + + if flip != None: + genie_flip = -1 if flip else 1 + + if what: + character.genie_say(what, image=side, **kwargs) + +label update_genie: + + $ genie_flip = 1 + $ genie_zorder = 15 + call gen_chibi("sit_behind_desk") + + return diff --git a/game/scripts/characters/genie/vars.rpy b/game/scripts/characters/genie/vars.rpy new file mode 100644 index 00000000..35f89754 --- /dev/null +++ b/game/scripts/characters/genie/vars.rpy @@ -0,0 +1,16 @@ +# Main +default genie_xpos = 200 +default genie_ypos = 0 +default genie_offset = (0, 600) +default genie_zorder = 15 +default genie_flip = 1 +default genie_zoom = 0.2 +default genie_outfit = "robes" + +# Flags +default genie_masturbating = False +default dumbledore_name = "Albus Dumbledore" + +# Stats + +default genie_quid_position = "???" # For stats. diff --git a/game/scripts/characters/genie/wardrobe.rpy b/game/scripts/characters/genie/wardrobe.rpy new file mode 100644 index 00000000..5e5a38d0 --- /dev/null +++ b/game/scripts/characters/genie/wardrobe.rpy @@ -0,0 +1,35 @@ +init python: + def genie_transform(trans, st, at): + trans.xpos = genie_xpos + trans.ypos = genie_ypos + trans.zoom = genie_zoom + trans.xzoom = genie_flip + trans.offset = genie_offset + return 0 + +layeredimage genie: + anchor (0, 1.0) + + group hair: + attribute nude "characters/genie/hair.webp" + + group fixes: + attribute robes "characters/genie/robes_fix.webp" + + always "characters/genie/base.webp" + + group face: + attribute base Null() + attribute grin "characters/genie/grin.webp" + attribute angry "characters/genie/angry.webp" + attribute smile "characters/genie/smile.webp" + attribute open "characters/genie/open.webp" + + group outfit: + + attribute nude Null() + attribute robes default "characters/genie/robes.webp" + + at Transform(function=genie_transform) + +image side genie = LayeredImageProxy("genie") diff --git a/game/scripts/characters/hermione/chibi.rpy b/game/scripts/characters/hermione/chibi.rpy new file mode 100644 index 00000000..e331520d --- /dev/null +++ b/game/scripts/characters/hermione/chibi.rpy @@ -0,0 +1,424 @@ +label her_chibi(action=None, xpos=None, ypos=None, flip=False, pic=None): + hide screen favor # screen tag + + $ hermione_chibi.position(xpos, ypos, flip) + + if action == "hide": + $ hermione_chibi.hide() + return + elif action == "leave": + hide hermione_main + hide screen bld1 + hide screen blktone + call play_sound("door") + $ hermione_chibi.hide() + with d3 + pause .5 + return + + elif action == "reset": + $ hermione_chibi.do(None) + return + + $ hermione_chibi.do(action) + + return + +label her_walk(xpos=None, ypos=None, speed=1.0, action=None, reduce=False, path=None, flip=False): + call hide_characters + hide screen bld1 + hide screen blktone + with d3 + + if action == "enter": + call play_sound("door") + call her_chibi(None, "door", "base", flip) + with d3 + if xpos or ypos: + $ hermione_chibi.move((xpos, ypos), speed, reduce) + elif action == "leave": + $ hermione_chibi.show() + $ hermione_chibi.move(("door", "base"), speed, reduce) + call play_sound("door") + $ hermione_chibi.hide() + with d3 + pause .5 + elif action == "run": + $ hermione_chibi.show() + $ hermione_chibi.move((xpos, ypos), speed, reduce, action) + elif path: + $ hermione_chibi.show() + $ hermione_chibi.move(path, speed, reduce) + else: + $ hermione_chibi.show() + $ hermione_chibi.move((xpos, ypos), speed, reduce) + + return + +# Chibi definition +default hermione_chibi = Chibi("hermione", ["base"], update_hermione_chibi) + +#TODO Hermione's chibis need clothing layers and then update logic must be reworked to set clothing state (using chibi class best practice, see Cho chibi for example) + +init python: + def update_hermione_chibi(chibi): + # Assume chibi action has a matching image definition + chibi_image = "ch_hem {}".format(chibi.action or "stand") + chibi["base"] = chibi_image + + # Certain actions require more complex image selection, which is handled below + + if chibi.action == "walk": + + # Determine clothing state + if hermione.pose in ("hold_book",): + chibi["base"] = "ch_hem walk" + else: + if not hermione.is_worn("top") and not hermione.is_worn("bottom") and not hermione.is_worn("robe"): + chibi["base"] = "ch_hem walk_n" + elif hermione.is_worn("robe"): + if hermione.is_worn("top"): + chibi["base"] = "ch_hem walk_robe" + else: + chibi["base"] = "ch_hem walk_robe_n" + else: + chibi["base"] = "ch_hem walk" + + elif not chibi.action or chibi.action == "stand": + # Determine clothing state + if hermione.pose in ("hold_book",): + chibi["base"] = "ch_hem blink" + else: + if not hermione.is_worn("top") and not hermione.is_worn("bottom") and not hermione.is_worn("robe"): + chibi["base"] = "ch_hem blink_n" + elif hermione.is_worn("robe"): + if hermione.is_worn("top"): + chibi["base"] = "ch_hem blink_robe" + else: + chibi["base"] = "ch_hem blink_robe_n" + else: + chibi["base"] = "ch_hem blink" + + elif chibi.action == "dance": + # Determine clothing state + if hermione.is_worn("top"): + if hermione.get_equipped("top").id in ("top_school_1", "top_school_6"): + chibi["base"] = "clothed_dance_ani" + elif hermione.is_worn("bottom"): + chibi["base"] = "no_vest_dance_ani" + else: + chibi["base"] = "no_skirt_dance_ani" + else: + if hermione.is_worn("bottom"): + chibi["base"] = "no_shirt_dance_ani" + elif hermione.is_worn("panties"): + chibi["base"] = "no_shirt_no_skirt_dance_ani" + else: + chibi["base"] = "no_panties_dance_ani" + + elif chibi.action == "dance_pause": + # Determine clothing state + if hermione.is_worn("panties"): + chibi["base"] = "no_shirt_no_skirt_dance_pause" + else: + chibi["base"] = "no_panties_dance_pause" + + elif chibi.action == "top_naked": + chibi["base"] = "dance/03_no_shirt_03.webp" #TODO Should be 'stand' action without top clothes (needs layers first) + + elif chibi.action == "lift_skirt": + if hermione.is_worn("panties"): + #TODO Figure out a better way to determine the expression (so it can be reused in a different event) + if hg_pf_admire_panties.counter <= 1: + # Reluctant expression + chibi["base"] = "~/lift_skirt/panties_00.webp" + else: + # Happy expression + chibi["base"] = "~/lift_skirt/panties_01.webp" + else: + chibi["base"] = "~/lift_skirt/panties_02.webp" + + elif chibi.action in ("drink_potion", "sniff_potion", "hold_potion"): + if not hermione.is_any_worn("top", "bottom"): + chibi["base"] = "ch_hem {}_nude".format(chibi.action) + else: + chibi["base"] = "ch_hem {}".format(chibi.action) + + +# Sets up a chibi scene with Hermione and Genie in it +label her_chibi_scene(action="reset", xpos="mid", ypos="base", trans=None): + if trans != None: + call hide_characters + + hide screen bld1 + hide screen blkfade + + call her_chibi("hide") + call gen_chibi("hide") + + # Defaults + $ img = None + $ pos = (0,0) + $ zord = hermione_chibi.zorder + + # Note: Images are inconsistent, some have the chair already in it, some don't, it's kind of stupid. + if current_room == "main_room": + $ desk_OBJ.hidden = True # Hide desk object + $ chair_left_OBJ.hidden = True # Hide left chair object + + if action == "reset": + call her_chibi("stand", xpos, ypos) + call gen_chibi("sit_behind_desk") + hide screen her_chibi_scene + return + + # Stand beside desk back + elif action == "behind_desk_back": + $ pos = (-77, 10) + + if not hermione.is_any_worn("bottom", "top"): + $ img = "behind_desk_back_naked" + elif not hermione.is_worn("top"): + $ img = "behind_desk_back_topless" + elif not hermione.is_worn("bottom"): + $ img = "behind_desk_back_bottomless" + else: + $ img = "behind_desk_back" + + # Stand beside desk front + elif action == "behind_desk_front": + $ pos = (-77, 10) + + if not hermione.is_any_worn("bottom", "top"): + $ img = "behind_desk_front_naked" + elif not hermione.is_worn("top"): + $ img = "behind_desk_front_topless" + elif not hermione.is_worn("bottom"): + $ img = "behind_desk_front_bottomless" + else: + $ img = "behind_desk_front" + + # Stand beside desk front lean on desk lift top + elif action == "behind_desk_front_show_tits": + $ pos = (-77, 10) + $ img = "behind_desk_front_show_tits" + + # Stand beside desk lift top + elif action == "behind_desk_show_tits": + $ pos = (-77, 10) + $ img = "behind_desk_show_tits" + + # Grope ass + elif action == "grope_ass_back": + $ pos = (-77, 10) + + if not hermione.is_any_worn("bottom", "top"): + $ img = "grope_ass_back_naked" + elif not hermione.is_worn("top"): + $ img = "grope_ass_back_topless" + elif not hermione.is_worn("bottom"): + $ img = "grope_ass_back_bottomless" + else: + $ img = "grope_ass_back" + + elif action == "grope_ass_back_fast": + $ pos = (-77, 10) + $ img = "grope_ass_back_topless_fast" + + elif action == "grope_ass_front": + $ pos = (-77, 10) + + if not hermione.is_any_worn("bottom", "top"): + $ img = "grope_ass_front_naked" + elif not hermione.is_worn("top"): + $ img = "grope_ass_front_topless" + elif not hermione.is_worn("bottom"): + $ img = "grope_ass_front_bottomless" + else: + $ img = "grope_ass_front" + + elif action == "grope_ass_front_fast": + $ pos = (-77, 10) + $ img = "grope_ass_front_topless_fast" + + # Grope tits + elif action == "grope_tits": + $ chair_left_OBJ.hidden = False # Unhide left chair object + $ pos = (-77, 10) + + if hermione.is_worn("top", "bottom"): + $ img = "grope_tits" + elif hermione.is_worn("bottom"): + $ img = "grope_tits_topless" + elif hermione.is_worn("top"): + $ img = "grope_tits_bottomless" + else: + $ img = "grope_tits_naked" + + elif action == "lift_top": + + if hermione.is_worn("top", "bottom"): + $ img = "grope_tits_lift_top" + else: + $ img = "grope_tits_bottomless_lift_top" + + elif action == "grope_tits_jerk_off": + $ chair_left_OBJ.hidden = False # Unhide left chair object + $ pos = (-77, 10) + + if hermione.is_worn("top", "bottom"): + $ img = "grope_tits_jerk_off_clothed" + elif hermione.is_worn("bottom"): + $ img = "grope_tits_jerk_off_topless" + elif hermione.is_worn("top"): + $ img = "grope_tits_jerk_off_bottomless" + else: + $ img = "grope_tits_jerk_off_naked" + + elif action == "grope_tits_jerk_off_lift_top": + $ chair_left_OBJ.hidden = False # Unhide left chair object + $ pos = (-77, 10) + + if hermione.is_worn("top", "bottom"): + $ img = "grope_tits_jerk_off_lift_top" + elif hermione.is_worn("top"): + $ img = "grope_tits_jerk_off_bottomless_lift_top" + + elif action == "grope_tits_cum": + $ chair_left_OBJ.hidden = False # Unhide left chair object + $ pos = (-77, 10) + + if hermione.is_worn("top", "bottom"): + $ img = "grope_tits_cum_clothed" + elif hermione.is_worn("bottom"): + $ img = "grope_tits_cum_topless" + elif hermione.is_worn("top"): + $ img = "grope_tits_cum_bottomless" + else: + $ img = "grope_tits_cum_naked" + + elif action == "grope_tits_cum_done": + $ chair_left_OBJ.hidden = False # Unhide left chair object + $ pos = (-77, 10) + + if hermione.is_worn("top", "bottom"): + $ img = "grope_tits_cum_clothed_done" + elif hermione.is_worn("bottom"): + $ img = "grope_tits_cum_topless_done" + elif hermione.is_worn("top"): + $ img = "grope_tits_cum_bottomless_done" + else: + $ img = "grope_tits_cum_naked_done" + + elif action == "grope_tits_cum_lift_top": + $ chair_left_OBJ.hidden = False # Unhide left chair object + $ pos = (-77, 10) + + if hermione.is_worn("top", "bottom"): + $ img = "grope_tits_cum_lift_top" + else: + $ img = "grope_tits_cum_bottomless_lift_top" + + elif action == "grope_tits_cum_lift_top_done": + $ chair_left_OBJ.hidden = False # Unhide left chair object + $ pos = (-77, 10) + + if hermione.is_worn("top", "bottom"): + $ img = "grope_tits_cum_done" + else: + $ img = "grope_tits_cum_bottomless_lift_top_done" + + # Grope on podium (Quidditch pitch) + elif action in ("grope_on_podium", "grope_on_podium_idle", "grope_on_podium_horny", "grope_on_podium_close", "grope_on_podium_cum"): + $ pos = (255, 211) + $ img = action + $ zord = 9 # Override zorder; In front of screen quidditch_stands_mid w/ podium. + + # Lie on desk (admire ass) + elif action == "lie_on_desk": + $ pos = (-77, 10) + + if hermione.is_worn("bottom"): + $ img = "lie_on_desk" + else: + $ img = "lie_on_desk_naked" + + elif action == "lie_on_desk_fingering": + $ pos = (-77, 10) + $ img = "finger_naked" + + elif action == "lie_on_desk_fingering_slow": + $ pos = (-77, 10) + $ img = "finger_naked_slow" + + elif action == "lie_on_desk_fingering_pause": + $ pos = (-77, 10) + $ img = "finger_naked_pause" + + elif action == "lie_on_desk_fingering_pause_ahegao": + $ pos = (-77, 10) + $ img = "finger_naked_pause_ahegao" + + elif action == "lie_on_desk_fingering_cumming": + $ pos = (-77, 10) + $ img = "finger_naked_cumming" + + elif action == "lie_on_desk_jerk_off": + $ pos = (-77, 10) + + if hermione.is_worn("bottom"): + $ img = "lie_on_desk_jerk_off" + else: + $ img = "lie_on_desk_naked_jerk_off" + + elif action == "lie_on_desk_cum": + $ pos = (-77, 10) + + if hermione.is_worn("bottom"): + $ img = "lie_on_desk_cum" + else: + $ img = "lie_on_desk_naked_cum" + + # Handjob + elif action in ("hj", "hj_pause", "hj_cum_in", "hj_cum_in_done", "hj_cum_on", "hj_cum_on_done", "hj_kiss", "hj_kiss_cum"): + $ desk_OBJ.hidden = False # Unhide desk object + $ chair_left_OBJ.hidden = False # Unhide left chair object + $ pos = (230, 0) + $ img = action + + # Titjob + elif action in ("tj", "tj_pause", "tj_idle", "tj_cum_on", "tj_cum_on_done", "tj_mouth", "tj_cum_in", "tj_cum_in_done"): + $ desk_OBJ.hidden = False # Unhide desk object + $ chair_left_OBJ.hidden = False # Unhide left chair object + $ pos = (450, 200) + $ img = action + + # Blowjob + elif action in ("bj", "bj_pause", "bj_cum_in", "bj_cum_out", "bj_cum_out_done"): + $ chair_left_OBJ.hidden = False # Unhide left chair object + $ pos = (-7, 14) + $ img = action + + # Sex + elif action in ( + "sex_hotdog", "sex", "sex_pause", "sex_slow", "sex_fast", + "sex_cum_out", "sex_cum_out_done", "sex_cum_in", "sex_cum_in_done", + "sex_naked", "sex_naked_pause", "sex_naked_slow", "sex_naked_fast", + "sex_naked_cum_out", "sex_naked_cum_out_done", "sex_naked_cum_in", "sex_naked_cum_in_done" + ): + $ chair_left_OBJ.hidden = False # Unhide left chair object + $ pos = (-77, 10) + $ img = action + + show screen her_chibi_scene(img, pos, zord) + + if trans: + with trans + + return + +screen her_chibi_scene(img, pos, zord): + tag hermione_chibi + zorder zord + + add img pos pos diff --git a/game/scripts/characters/hermione/chitchats.rpy b/game/scripts/characters/hermione/chitchats.rpy new file mode 100644 index 00000000..efffbf7e --- /dev/null +++ b/game/scripts/characters/hermione/chitchats.rpy @@ -0,0 +1,489 @@ + +label hermione_chitchat: + + if hermione_chatted: + return + + $ hermione_chatted = True + + $ random_number = renpy.random.randint(1, 10) + + ### WHORING LEVEL 01 ### + if her_whoring >= 0 and her_whoring <= 2: + if random_number == 1: + her "Maybe, if I'd work harder, I could squeeze a few more classes into my schedule..." ("open", "closed", "angry", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 2: + her "Actually, I don't mind being called a \"know-it-all\"." ("open", "closed", "angry", "mid") + her "I think it's rather flattering..." + her "" ("normal", "base", "base", "mid") + + elif random_number == 3: + her "The basilisk, also known as the king of serpents." ("open", "closed", "angry", "mid") + her "{i}Herpo the Foul{/i} was the first to breed a Basilisk." + her "He accomplished that by--" + her "Oh, I'm sorry, professor, we have another test tomorrow..." ("open", "base", "worried", "R") + her "I Just want to make sure that I'm ready..." + her "" ("base", "base", "base", "mid") + + elif random_number == 4: + her "If my body wouldn't require sleep..." ("open", "base", "worried", "R") + her "I would be able to spend twice as much time with studying!?" ("angry", "wide", "base", "stare") + her "I wonder if there's a spell for that..." ("open", "base", "base", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 5: + her "So far professor Trelawney did not teach me a single piece of any actual knowledge, sir." ("open", "closed", "angry", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 6: + her "If only more students were honest, responsible, and diligent like me." ("open", "closed", "angry", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 7: + her "How can some people be so ignorant to the world's problems?" ("open", "closed", "angry", "mid") + her "Personally, I think that every single one of us should work harder to make our world a better place." + her "" ("normal", "base", "base", "mid") + + elif random_number == 8: + her "It's been raining quite a lot lately..." ("open", "base", "worried", "R") + her "" ("base", "base", "base", "mid") + + elif random_number == 9: + her "Very few people know this..." ("open", "base", "worried", "R") + her "... But I really like chocolate." ("base", "base", "base", "mid") + her "" ("base", "base", "base", "mid") + + elif random_number == 10: + her "I am sorry sir, but I don't really have time for idle chat chats..." ("base", "base", "base", "mid") + her "" ("normal", "base", "base", "mid") + + + ### WHORING LEVEL 02 ### + if her_whoring >= 3 and her_whoring <= 5: + if random_number == 1: + her "I read somewhere that a full moon often makes it easier to concentrate at a task at hand..." ("open", "closed", "angry", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 2: + her "I love nothing more than to curl up by a fireplace during a rainstorm with a good book..." ("base", "base", "base", "mid") + her "" ("base", "base", "base", "mid") + + elif random_number == 3: + her "A peculiar rumour concerning professor Snape has been circulating in the school lately..." ("open", "base", "worried", "R") + her "No, I probably shouldn't..." ("soft", "base", "base", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 4: + her "Despite the questionable nature of the favours you have been buying from me lately, sir..." ("open", "closed", "angry", "mid") + her "I am grateful to you for your help..." + her "Gryffindor needs those points now more than ever..." ("annoyed", "squint", "angry", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 5: + her "Why Quidditch is so popular among the girls is simply beyond me..." ("open", "closed", "angry", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 6: + her "The \"Men's Rights Movement\" is steadily gaining popularity." ("open", "closed", "angry", "mid") + her "It's very fulfilling to know that you are helping to improve our society." + her "" ("normal", "base", "base", "mid") + + elif random_number == 7: + her "The Hogwarts school library is considered to be quite extensive..." ("open", "closed", "angry", "mid") + her "Still, I can't help but wish that it'd be bigger..." ("open", "squint", "base", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 8: + her "As one of the top students in this school I have a reputation to keep..." ("open", "base", "worried", "R") + her "People look up to me..." + her "... So, your discretion is very appreciated, sir." ("open", "base", "base", "mid") + her "" ("annoyed", "base", "worried", "R") + + elif random_number == 9: + her "That favour I sold you the other say, sir..." ("open", "base", "worried", "mid") + her "......." ("normal", "happyCl", "worried", "mid") + her "I only agreed to it because the needs of my house always come first." ("open", "narrow", "worried", "down") + her "I just wanted you to know that, sir..." ("upset", "closed", "base", "mid") + + elif random_number == 10: + her "The \"Autumn Ball\" is still several months away..." ("open", "closed", "angry", "mid") + her "But some girls are already discussing what kind of dress they are going to wear..." ("open", "base", "worried", "mid") + her "" ("annoyed", "narrow", "annoyed", "mid") + + + ### WHORING LEVEL 03 ### + if her_whoring >= 6 and her_whoring <= 8: + if random_number == 1: + her "Do you remember when you asked me to show you my panties for the first time sir?" ("open", "closed", "angry", "mid") + her "I was so furious with you then..." + her "Now I see that I was just being selfish..." ("annoyed", "squint", "angry", "mid") + her "After all, the honour of my house is at stake here..." + her "And that shall be my one and only concern!" ("normal", "squint", "angry", "mid") + + elif random_number == 2: + her "The rate at which the Slytherin house has been gaining points lately is simply ridiculous." ("open", "closed", "angry", "mid") + her "I think professor Snape might be behind it." ("angry", "base", "angry", "mid") + her "You should look into this, sir." ("open", "closed", "angry", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 3: + her "Ashwinder eggs, rose thorns, moonstone..." ("open", "base", "worried", "R") + her "*huh*? Am I thinking out loud again?" ("open", "base", "worried", "mid") + her "I apologise..." ("grin", "happyCl", "worried", "mid",emote="sweat") + her "It's just that we have another test soon..." ("soft", "base", "base", "R") + + elif random_number == 4: + her "I dislike the entire house of Slytherin with all my heart, sir." ("angry", "base", "angry", "mid") + + elif random_number == 5: + her "Hogwarts has really become a second home to me lately..." ("open", "closed", "base", "mid") + her "I don't even miss my parents nearly as much anymore..." ("annoyed", "narrow", "worried", "down") + her "Come to think of it I don't miss them at all..." ("angry", "wide", "base", "stare") + her "I'm an awful daughter..." ("angry", "narrow", "base", "down") + + elif random_number == 6: + her "*Yawn*! I read about this technique that supposedly allows you to cut your sleep time in half..." ("annoyed", "narrow", "annoyed", "up") + her "It don't think it's working though.... *Yawn*!" ("annoyed", "narrow", "worried", "down") + + elif random_number == 7: + her "Even after I graduate from Hogwarts I plan to keep on working hard." ("open", "closed", "angry", "mid") + her "If I give it my all I can make this world a better place, I know it!" ("open", "base", "base", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 8: + her "Somehow I have the feeling that this year will become a pivotal turning point in my life..." ("open", "base", "worried", "mid") + her "" ("soft", "base", "base", "R") + + elif random_number == 9: + her "Some of the less travelled school corridors are not very well lit and rather dusty..." ("open", "closed", "angry", "mid") + her "Please take care of this, sir..." + her "" ("normal", "base", "base", "mid") + + elif random_number == 10: + her "I've read about this thing called \"Time-Turner\"." ("open", "base", "base", "mid") + her "It allows the user to control the flow of time..." + her "Having a device like that would do wonders for my schedule..." ("open", "closed", "base", "mid") + her "" ("annoyed", "squint", "base", "mid") + + + ### WHORING LEVEL 04 ### + if her_whoring >= 9 and her_whoring <= 11: + if random_number == 1: + her "My \"men's rights movement\" has been losing its popularity lately..." ("open", "base", "worried", "mid") + her "It's as if people don't even care!" ("annoyed", "narrow", "angry", "R") + + elif random_number == 2: + her "Thank you for buying all those favours from me, sir." ("open", "closed", "angry", "mid") + her "Some of them were borderline inappropriate, sure..." ("normal", "squint", "angry", "mid") + her "But I don't mind sacrificing my dignity if it will allow Gryffindor to compete with Slytherin on equal ground." ("open", "closed", "angry", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 3: + her "Quidditch is stupid!" ("angry", "base", "angry", "mid") + her "There. I said it." ("annoyed", "squint", "base", "mid") + + elif random_number == 4: + her "Sir, there is something about professor Snape that I think you should know..." ("open", "base", "base", "mid") + her "................." ("open", "base", "worried", "R") + her "........................." ("annoyed", "squint", "angry", "mid") + her "*Ehm*... Never mind..." ("open", "closed", "angry", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 5: + her "Some of the Slytherin girls sell sexual favours almost openly these days..." ("open", "closed", "angry", "mid") + her "You need to put an end to such practices, sir." ("open", "base", "base", "mid") + her "(I can barely keep up...)" ("annoyed", "narrow", "angry", "R") + + elif random_number == 6: + her "Life works in mysterious ways..." ("open", "base", "worried", "R") + her "Wouldn't you agree, sir?" ("open", "squint", "base", "mid") + her "" ("soft", "base", "base", "R") + + elif random_number == 7: + her "Slytherins..." ("angry", "base", "angry", "mid",emote="angry") + her "" ("angry", "base", "angry", "mid") + + elif random_number == 8: + her "I've been spending so much time in your office lately, sir..." ("open", "base", "worried", "R") + her "If I'm not careful some people may think that I have become your pet..." ("open", "base", "worried", "mid") + her "I meant to say the teacher's pet..." ("angry", "happyCl", "worried", "mid",emote="sweat") + her "" ("normal", "happyCl", "worried", "mid") + + elif random_number == 9: + her "My favourite colours?" ("open", "base", "base", "mid") + her "scarlet and gold of course!" ("open", "base", "base", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 10: + her "Is it weird that my best friends are boys?" ("open", "base", "worried", "R") + her "" ("base", "base", "base", "mid") + + + ### WHORING LEVEL 05 ### + if her_whoring >= 12 and her_whoring <= 14: + if random_number == 1: + her "Sir, with all due respect..." ("normal", "squint", "angry", "mid") + her "Professor Snape's debauchery is getting out of hand!" + her "You must do something, sir." ("open", "base", "worried", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 2: + her "I am willing to go to great lengths to insure the superiority of my house..." ("open", "closed", "angry", "mid") + her "But that does not mean that I take pleasure in selling myself out to you in exchange for house points, sir." + her "{size=-4}(Like some sort of prostitute-witch...){/size}" ("angry", "narrow", "base", "down") + + elif random_number == 3: + her "What will it be today, sir?" ("annoyed", "narrow", "annoyed", "mid") + + elif random_number == 4: + her "lately I have not been studying nearly as much as I used to..." ("open", "base", "worried", "mid") + her "Am I losing my motivation?" ("open", "base", "worried", "R") + her "" ("soft", "base", "base", "R") + + elif random_number == 5: + her "My least favourite subject?" ("open", "squint", "base", "mid") + her "Divination." ("annoyed", "squint", "angry", "mid") + + elif random_number == 6: + her "My father used to say: \"Magic is just science we don't understand yet\"." ("open", "base", "base", "mid") + her "He couldn't be more wrong of course..." ("open", "base", "worried", "R") + her "" ("soft", "base", "base", "R") + + elif random_number == 7: + her "Despite everything..." ("open", "closed", "angry", "mid") + her "I am thankful that you keep on buying favours from me, sir..." ("open", "base", "worried", "R") + her "" ("soft", "base", "base", "R") + + elif random_number == 8: + her "It's quite cold outside today, isn't it?" ("open", "base", "base", "mid") + her "" ("soft", "base", "base", "mid") + + elif random_number == 9: + her "The \"Autumn Ball\" will be soon..." ("open", "base", "base", "mid") + her "" ("soft", "base", "base", "mid") + + elif random_number == 10: + her "People hardly show up for my \"men's rights movement\" meetings at all anymore..." ("open", "base", "worried", "R") + her "" ("soft", "base", "base", "R") + + + ### WHORING LEVEL 06 ### + if her_whoring >= 15 and her_whoring <= 17: + if random_number == 1: + her "Would you like me to show you my breasts today, sir?" ("open", "narrow", "worried", "down") + her "Yes... I would willingly expose myself to you, professor..." ("base", "narrow", "base", "up") + her "That's how selfless I am!" ("annoyed", "narrow", "annoyed", "mid") + + elif random_number == 2: + her "I can't help but feel bad for the house elves who do my laundry..." ("open", "base", "base", "mid") + her "I mean, all those dreadful semen stains..." ("open", "narrow", "worried", "down") + her "" ("angry", "narrow", "base", "down") + + elif random_number == 3: + her "it Doesn't matter how many times you ask me this, sir..." ("open", "base", "base", "mid") + her "The answer shall remain the same..." + her "I have nothing but resentment for the Slytherins!" ("angry", "base", "angry", "mid") + her "" ("annoyed", "narrow", "angry", "R") + + elif random_number == 4: + her "When I think about all the favours I sold you over these last months, sir..." ("open", "base", "base", "mid") + her "Although I do feel a little bit embarrassed..." ("open", "narrow", "worried", "down") + her "I also feel very proud of myself." ("upset", "closed", "base", "mid") + + elif random_number == 5: + her "I still dedicate a lot of my time to studying..." ("open", "base", "base", "mid") + her "But not nearly as much of it as I used to..." + her "Somehow I just don't enjoy studying at all anymore..." ("open", "base", "worried", "mid") + her "" ("soft", "base", "base", "R") + + elif random_number == 6: + her "Gryffindor shall get the house cup this year!" ("open", "closed", "angry", "mid") + her "{size=-4}(Even if it should cost me my dignity...){/size}" ("angry", "narrow", "base", "down") + her "" ("upset", "closed", "base", "mid") + + elif random_number == 7: + her "I don't mind the autumn weather..." ("open", "base", "base", "mid") + her "But my favourite season is winter." ("open", "closed", "base", "mid") + her "" ("soft", "base", "base", "mid") + + elif random_number == 8: + her "I used to look down on girls who spend too much time with worrying about the way they look..." ("open", "base", "base", "mid") + her "But I was wrong to do so..." + her "I am starting to understand how important it really is for a girl to look pretty." + her "..............." ("annoyed", "base", "worried", "R") + her "I've been on a diet lately..." ("angry", "wink", "base", "mid") + her "" ("angry", "happyCl", "worried", "mid",emote="sweat") + her "" ("normal", "happyCl", "worried", "mid") + + elif random_number == 9: + her "Lately I've been feeling rather confident around the boys..." ("open", "base", "base", "mid") + her "I think I have you to thank for that, sir." ("base", "base", "base", "mid") + + elif random_number == 10: + her "My favourite subject?" ("open", "base", "base", "mid") + her "*Hmm*..." ("soft", "base", "base", "R") + her "I suppose that would be \"charms\"..." ("open", "base", "base", "mid") + her "" ("soft", "base", "base", "mid") + + + ### WHORING LEVEL 07 ### + if her_whoring >= 18 and her_whoring <= 20: + if random_number == 1: + her "Just let me know what will be required of me today, sir." ("open", "closed", "angry", "mid") + her "" ("normal", "base", "base", "mid") + + elif random_number == 2: + her "I barely study at all anymore..." ("open", "base", "worried", "mid") + her "Despite that my popularity among the other students seems to be growing..." + her "*Hmm*..." ("soft", "base", "base", "R") + + elif random_number == 3: + her "I wouldn't say \"no\" to a bottle of butterbeer right about now..." ("smile", "narrow", "base", "mid_soft") + her "" ("grin", "base", "base", "R") + + elif random_number == 4: + her "What is it sir? Do you have another present for me?" ("base", "base", "base", "mid") + her "Oh... I see..." ("annoyed", "narrow", "angry", "R") + + elif random_number == 5: + her "I am doing well, thank you for asking." ("base", "base", "base", "mid") + + elif random_number == 6: + her "Do I look fat to you sir?" ("open", "base", "worried", "mid") + her "I wonder if the diet is working..." ("annoyed", "base", "worried", "R") + + elif random_number == 7: + her "I remember that I used to say that books were my friends..." ("open", "closed", "base", "mid") + her "Now that sounds so lame." ("grin", "happyCl", "worried", "mid",emote="sweat") + her "" ("soft", "base", "base", "mid") + + elif random_number == 8: + her "Add Ashwinder's egg to cauldron..." ("open", "closed", "angry", "mid") + her "Then add horseshoe reddish and heat..." + her "Then juice a squill bulb..." + her "Or was it a dash of thyme first?" ("open", "base", "worried", "R") + her ".............." ("soft", "base", "base", "R") + her "Oh, who cares?" ("grin", "happyCl", "worried", "mid",emote="sweat") + her "" ("base", "base", "base", "mid") + + elif random_number == 9: + her "Do You think I am wearing enough make-up, sir?" ("open", "base", "base", "mid") + her "Wearing too much would look vulgar..." + her "But wearing too little would make me look plain..." ("soft", "base", "base", "R") + her "I don't want to look plain!" ("annoyed", "narrow", "angry", "R") + + elif random_number == 10: + her "Would you like to see my tits today, sir?" ("smile", "narrow", "base", "mid_soft") + her "Twenty-five house points, please." ("smile", "base", "angry", "mid") + her "" ("upset", "closed", "base", "mid") + + + ### WHORING LEVEL 08+ ### + if her_whoring == 21: + if random_number == 1: + her "Do You have any adult magazines you don't need, sir?" ("open", "base", "base", "R",cheeks="blush") + her "" ("base", "base", "base", "R",cheeks="blush") + + elif random_number == 2: + her "If you need anything [genie_name], just ask okay?" ("open", "base", "base", "mid") + her "" ("base", "base", "base", "mid") + + elif random_number == 3: + her "It's been getting so cold lately..." ("open", "base", "base", "mid") + her "I hope it's going to start snowing soon..." ("base", "base", "base", "mid") + + elif random_number == 4: + her "Jump and scream for the Gryffindor team!" ("open", "closed", "base", "mid") + her "So daring and bold, sporting red and gold!" ("smile", "happyCl", "base", "mid",emote="happy") + her "" ("base", "base", "base", "mid") + + elif random_number == 5: + her "I hope the ball goes smoothly..." ("open", "base", "worried", "R") + her "" ("soft", "base", "base", "R") + + elif random_number == 6: + her "I wonder what Ginny is going to wear for the ball..." ("base", "base", "base", "mid") + + elif random_number == 7: + her "Considering the nature of the favours you keep buying from me sir..." ("open", "closed", "base", "mid") + her "I seldom bother to put on underwear at all anymore..." ("open", "base", "worried", "mid") + + elif random_number == 8: + her "Sir, could you put your penis in my mouth?" ("angry", "base", "base", "mid") + her "Sir, I am begging you..." ("open_wide_tongue", "narrow", "annoyed", "up") + her "Fifty-five points, please!" ("smile", "base", "angry", "mid") + her "" ("angry", "wink", "base", "mid") + + elif random_number == 9: + her "I have read this one article about the positive effects of semen on a woman's skin..." ("open", "closed", "base", "mid") + her "I wonder where their information is coming from..." ("base", "narrow", "base", "mid_soft") + her "Did the magazine conduct research of some sort?" ("angry", "wink", "base", "mid") + her "" ("base", "narrow", "base", "mid_soft") + + elif random_number == 10: + her "It goes like this..." ("open", "closed", "base", "mid") + her "First Gryffindor, then Ravenclaw, then Hufflepuff..." + her "And Slytherin is not even on the list!" ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "" ("upset", "closed", "base", "mid") + + if her_whoring >= 22: + if random_number == 1: + her "If you ever need some \"help\", sir, please let me know." ("open_wide_tongue", "base", "base", "R",cheeks="blush") + ">She suggestively jerks her hand." + her "" ("base", "base", "base", "R",cheeks="blush") + + elif random_number == 2: + her "I am sorry to bother you with this, sir..." ("open", "base", "base", "mid") + her "But do you have any condoms?" + her "Sadly the ones I've bought are already gone..." ("annoyed", "happyCl", "worried", "mid",emote="sweat") + her "" ("base", "base", "base", "R") + + elif random_number == 3: + her "It's been getting so cold lately..." ("open", "base", "base", "mid") + her "I hope it's going to start snowing soon..." ("base", "base", "base", "mid") + her "You will let me wear a coat at least right?" ("angry", "happyCl", "worried", "mid",emote="sweat") + her "" ("base", "narrow", "base", "mid_soft") + + elif random_number == 4: + her "Jump and scream for the Gryffindor team!" ("open", "closed", "base", "mid") + her "So daring and bold, sporting red and gold!" ("smile", "happyCl", "base", "mid",emote="happy") + her "" ("base", "base", "base", "mid") + + elif random_number == 5: + her "Sir, I have a favour to ask..." ("base", "base", "worried", "mid") + her "Could you help me with one of my dresses later, sir?" ("base", "base", "base", "R") + her "I could use some of your... insight." ("soft", "narrow", "base", "mid_soft",cheeks="blush") + her "" ("base", "narrow", "base", "mid_soft") + + elif random_number == 6: + her "I can't believe I was such a prude before." ("angry", "base", "worried", "mid") + her "Meeting you was the best thing that ever happened to me, sir." ("smile", "narrow", "base", "mid_soft") + her "" ("base", "narrow", "base", "mid_soft") + + elif random_number == 7: + her "Considering the nature of the favours you keep buying from me sir..." ("open", "closed", "base", "mid") + her "I seldom bother to put on underwear at all anymore..." ("open", "base", "worried", "mid") + her "(Not that I complain anyway...)" ("soft", "narrow", "annoyed", "up") + + elif random_number == 8: + her "Sir, could you put your penis in my mouth?" ("angry", "base", "base", "mid") + her "Sir, I am begging you..." ("open_wide_tongue", "narrow", "annoyed", "up") + her "Fifty-five points, please!" ("smile", "base", "angry", "mid") + her "(Although I wouldn't mind doing it for free...)" ("smile", "narrow", "annoyed", "up") + + elif random_number == 9: + her "There was this one article... I'm not sure if I told you." ("open", "closed", "base", "mid") + her "It was about the positive effects of semen on a woman's skin." + her "I started doing it regularly recently..." ("base", "narrow", "base", "mid_soft") + her "And it actually works!" ("smile", "narrow", "base", "mid_soft") + her "My skin definitely is getting softer." ("smile", "closed", "base", "mid") + her "" ("base", "narrow", "base", "mid_soft") + + elif random_number == 10: + her "It goes like this..." ("open", "closed", "base", "mid") + her "First Gryffindor, then Ravenclaw, then Hufflepuff..." + her "And Slytherin is not even on the list!" ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "" ("upset", "closed", "base", "mid") + return diff --git a/game/scripts/characters/hermione/common.rpy b/game/scripts/characters/hermione/common.rpy new file mode 100644 index 00000000..17cecc9f --- /dev/null +++ b/game/scripts/characters/hermione/common.rpy @@ -0,0 +1,160 @@ +define her_face = { + "mouth": { + "neutral": ["annoyed","base"], + "happy": ["smile","grin"], + "naughty": ["base","soft"], + "horny": ["base","grin","soft"], + "annoyed": ["annoyed"], + "disgusted": ["disgust","clench","annoyed"], + "angry": ["angry","clench","mad"] + }, + + "eyes": { + "neutral": ["base"], + "happy": ["base","base","happyCl"], + "naughty": ["narrow","base"], + "horny": ["narrow"], + "annoyed": ["narrow"], + "disgusted": ["narrow"], + "angry": ["narrow","base"] + }, + + "eyebrows": { + "neutral": ["base"], + "happy": ["base"], + "naughty": ["base"], + "horny": ["base"], + "annoyed": ["worried"], + "disgusted": ["base", "angry"], + "angry": ["angry"] + }, + + "pupils": { + "neutral": ["mid","L","R"], + "happy": ["mid_soft","L_soft","R_soft"], + "naughty": ["mid_soft"], + "horny": ["mid","L","R","down","up"], + "annoyed": ["mid","R"], + "disgusted": ["down"], + "angry": ["mid"] + } +} + +label update_hermione: + + $ hermione_chibi.update() + $ hermione.xzoom = 1 + + return + +label end_hermione_event: + call her_chibi("hide") + hide hermione_main + with d3 + pause.5 + + call update_hermione + + $ active_girl = None + $ hermione_busy = True + $ hermione.wear("all") + $ hermione.set_cum(None) + + call music_block + jump main_room_menu + +define character.hermione_say = Character("hermione_name", show_icon="hermione", dynamic=True) + +init python: + def her(what, mouth=False, eyes=False, eyebrows=False, pupils=False, cheeks=None, tears=None, + emote=None, face=None, xpos=None, ypos=None, pos=None, flip=None, trans=None, animation=False, **kwargs): + + redraw = False + tag = hermione.tag + layer = hermione.layer + #showing = renpy.showing(name=tag, layer=layer) + + if xpos != None or ypos != None: + xpos = hermione.pos[0] if xpos == None else sprite_pos.get("x").get(xpos, xpos) + ypos = hermione.pos[1] if ypos == None else sprite_pos.get("y").get(ypos, ypos) + hermione.pos = (xpos, ypos) + redraw = True + + head_only = hermione.pos[1] == sprite_pos.get("y").get("head") + + if any((mouth, eyes, eyebrows, pupils, cheeks, tears)): + hermione.set_face(mouth=mouth, eyes=eyes, eyebrows=eyebrows, pupils=pupils, cheeks=cheeks, tears=tears) + redraw = True + + hermione.set_emote(emote) + + if animation != False: + if isinstance(animation, list): + hermione.animation = animation + else: + hermione.animation = [animation] + redraw = True + + if flip != None: + hermione.xzoom = -1 if flip else 1 + redraw = True + + if redraw: + hermione.show() + + if not renpy.in_rollback(): + if trans: + renpy.with_statement(trans) + else: + renpy.with_statement(d2) + + if what: + character.hermione_say(what, **kwargs) + + if head_only: + hermione.hide() + +label too_much: + stop music fadeout 2.0 + her "[genie_name]??!" ("shock", "wide", "base", "stare",xpos="mid",trans=fade) + her "How could you ask for such a thing!?" + her "I think I better leave." ("angry", "happyCl", "worried", "mid",emote="sweat") + + call her_walk(action="leave") + + $ _responses = [ + "(*Hmm*... I guess it was a little too soon for that.)", + "(Did I say something wrong...?)", + "(Welp, was worth a shot I guess.)", + "(Perhaps I should rethink my appraoch...)", + "(Judging by her reaction she's not yet ready for it...)" + ] + + $ renpy.say(m, renpy.random.choice(_responses)) + + $ her_mood += 6 + + jump end_hermione_event + +label too_much_public: + stop music fadeout 2.0 + her "[genie_name]??!" ("shock", "wide", "base", "stare",xpos="mid",trans=fade) + her "How could you ask for such a thing!?" + her "People would take me for a whore, I cannot let it happen!" + her "I think I better leave." ("angry", "happyCl", "worried", "mid",emote="sweat") + + call her_walk(action="leave") + + $ _responses = [ + "(*Hmm*... Maybe I should start with some easier tasks to lower her reputation first.)", + "(I guess she still cares too much about her precious reputation.)", + "(Silly girl still doesn't understand that her *reputation* isn't as important as she thinks.)", + "(Did I ask too much of her...?)", + "(She doesn't seem to be ready for this just yet.)" + ] + + $ renpy.say(m, renpy.random.choice(_responses)) + + $ her_mood += 6 + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/diary_NOT_IN_USE.txt b/game/scripts/characters/hermione/diary_NOT_IN_USE.txt new file mode 100644 index 00000000..681049c7 --- /dev/null +++ b/game/scripts/characters/hermione/diary_NOT_IN_USE.txt @@ -0,0 +1,208 @@ +define hermione_diary_pages = { + # + # Prologue - Includes MRM creation, favour trading introduction, ministry letter, failed exam and first favour. + # + "prologue_00": ["Detective Hermione on the case", "Dear diary, I haven't written my thoughts for a long time but I will be needing you again. I overheard some girls talking about selling favour to their teachers today... The amount of points they were talking about were unbelievable! Maybe it's something I should investigate..."], + "prologue_01": ["Looking for clues", "Today I have seen Katey Bell exiting Professor's Snape office all flustered and kind of icky. Is she also involved in favour trading?!"], + "prologue_02": ["Mistakes have been made >.<", "After last time seeing Katey Bell exiting Snape's office I sneaked up to Katey's room and put a surveilance spell on her allowing me to see through her eyes, I know I shouldn't but I had to make sure if she's involved in the favour trading, so after classes once I have seen her heading towards Snape's office I waited a while and activated the surveilance spell and... Oh. My. God. {b}GROSS!{/b} She was on her knees and I was... No, {b}SHE{/b} was putting his.... {i}thing{/i} in her mouth, I panicked and tried to break the spell but I couldn't say the incantation quick enough and he.. he made me... her swallow his stuff. Even though I could not feel anything it was the worst experience in my life, I am {u}NEVER{/u} using this spell ever again."], + "prologue_03": ["Dead end?", "I'm starting to lose hope, how can I stop this whole favour trading affair?"], + "prologue_04": ["Taking the matters in my own hands", "This is it! I know how to fight inequality and this whole sexist favour trading at our School. I am starting a M.R.M movement!"], + "prologue_05": ["Public ignorance", "I hosted another M.R.M. meeting today, not that anyone bothered to show up... I don't understand why people aren't more upset about the inequalities of this favour trading! You'd almost think that the boys are happy about it!"], + "prologue_06": ["Looking for apprentice", "I have hosted yet another group meeting and, again, no one showed up. I don't think I can win this fight alone, I should talk to Professor Dumbledore and ask him for help."], + "prologue_07": ["Time to take out the big guns!", "So today I went to ask Professor Dumbledore for help, it went great! He looked soooo upset and filled with bad fluids, I have never seen him like that before, I think he is gonna end the whole favour trading thing right this moment. I did my part, now it is up to Professor Dumbledore. I'm proud of myself."], + "prologue_08": ["The big gun was a dud?", "It's been X days since my and Professor's Dumbledore conversation and I haven't seen him take action yet, what is taking him so long?"], + "prologue_09": ["The ministry", "Okay that's it, if professor Dumbledore cannot solve this matter I am taking it once again into my hands, or should I say into Ministry of Magic hand... or hands. Whatever."], + "prologue_10": ["HOW?!", "I failed an exam today... I never thought that I'd ever put those words to paper... It's unbelievable... Should I have studied more? (Perhaps a time turner could help?) No... It must have been Snape! That crooked old weirdo probably failed me on purpose... Maybe I should speak to Dumbledore about this..."], + "prologue_11": ["So this just happened..", "I can't believe it... today I sold my first real favour to Professor Dumbledore! It wasn't as bad as I thought it would be. It was a bit of an odd request but still, I can't wait to tell Ron and Harry about the points I have earned! Go, go Gryffindor!!!"], + # + # Talk to me (Unfinished)(Missing branching choices) + # + "talk_to_me_0": "Professor Dumbledore offered to buy another favour from me, he simply wanted to talk... Maybe the problem isn't favour trading but Professor Snape himself? I don't know what to think about it.", + "talk_to_me_0_fap": "Professor Dumbledore offered to buy yet another favour from me, he simply wanted to talk, although I think he might have been trying something funny... He was shaking something around under his desk... Maybe his wand? He wouldn't try to curse me would he? No, of course not, he's Professor Dumbledore! It's not like I could stop him, even if I wanted to... He beat Grindelwald in a duel... and now he's buying favours from me...", + "talk_to_me_2": "Eeeeeewwww!!! Dumbledore was touching himself under his desk!!! I cannot believe it!!! He even tried pretending it was something else! Ugh... I could even see some of his... stuff... being shot out from under the desk... gross, gross, gross!!!", + "talk_to_me_3": "Typical... He called me up to his office again just to have me tell him a story while he... pleasured himself... under the desk... Ugh... At least I realised what was happening this time... I managed to tell him some ridiculous tale about students loving cum just to get him to finish faster...", + # + # Show breasts hermione_diary.append("admire_breasts_t2_e1", "admire_breasts_t2_e1", [admire_breasts_t2_e1_points, admire_breasts_t2_e1_fap_2]) + # + # Tier 1 + "admire_breasts_t1_e1_fail": ["Show him my breasts?!", "He wanted to see my breasts! How can he want something so outrageous? Obviously I didn't show them to him! I just took my vest off... Ugh!!! I never realised Dumbledore would actually want anything sexual from me... I just thought he was doing this to even out the points slytherin were getting... Maybe he was just testing me today? He wouldn't actually want me to show him my breasts... right???"], + "admire_breasts_t1_e1": ["Show him my breasts?!", "He asked me to show him my breasts! I can't believe that the most powerful wizard of all time is just a huge pervert! Still, with slytherin as far ahead as they are I couldn't just leave with nothing... so I may have... showed him my breasts... But I kept the shirt and bra on! That's doesn't count, right?? Ugh... Harry and Ron better notice those points..."], + "admire_breasts_t1_e2_fail": ["Showing him my breasts", "He did it again! I cannot believe I had so much respect for this pervert before! He asked me to and here I quote \"show him my tits\"! Ridiculous!"], + "admire_breasts_t1_e2": ["Showing him my bra", "Today he asked me to show him my breasts but taking my vest off wasn't enough for him, the pervert, so he asked me to take off my shirt too. Fortunately I was allowed to keep my bra on, not that I would take it off anyway but still.. These points better be worth it."], + "admire_breasts_t1_e3": ["Showing him my bra again..", "Once again I was asked to show off my breasts... Why does he keep asking me to do that? It's not like they're special or anything. Just for the record, I kept my bra on and I plan to keep it that way, there's no way in hell I would ever bare myself in front of my headmaster, never!"], + # Tier 2 + "admire_breasts_t2_e1_fail": ["He's obsessed!", "I cannot believe he offered me two hundred points to bare my chest to him, what was he even thinking?! Although I must say I have never thought my breasts would even be worth so much. Gah! What are you thinking Hermione, don't let him get into your head!"], + "admire_breasts_t2_e1": ["Well...", "I finally did it... I showed him my breasts...{}{}"], # FORMATTED {points}{action} + # Branching + "admire_breasts_t2_e1_points": " It's just... It was soooo many points and I've already been pulling up my shirt for him... it's not that different if I take off my bra... is it? ", + "admire_breasts_t2_e1_bargain": " For a meagre twenty-five points... I should have left.... or at least get a better deal.", + "admire_breasts_t2_e1_touch": " I cannot believe he put his hands on me after he promised he wouldn't do that! The bastard! I am never selling any favours to him ever again... ", + "admire_breasts_t2_e1_fap_1": " I still cannot believe he started touching himself in front of me! When I told him to stop, he told me I would not be getting any points, can you believe that?! After everything I have done for him.. Ugh! ", + "admire_breasts_t2_e1_fap_2": " I still cannot believe he started touching himself in front of me, but when I asked him to stop he did. Thank be Merlin, I don't know what I would do if he kept going... I am still mad at him but at least I got my points. ", + "admire_breasts_t2_e1_fap_3": " I still cannot believe he started touching himself in front of me, and when I asked him to stop he started doing it faster and faster, it was scary, I don't want to know what would happen if I stayed, I'm glad I left. ", + # Tier 3 + "admire_breasts_t3_e1": "What is it with men and breasts??? They're obsessed! They're just bags of flesh... you'd think someone as old as dumbledore would have seen enough by now... but no! He has to make me lift up my shirt and expose myself for him whenever he wants!!!{}", # FORMATTED {action} + # Branching + "admire_breasts_t3_e1_compliment": " He even complimented my chest, I don't know how to feel about that. Ugh... I hope Mum never finds out about any of this...", + "admire_breasts_t3_e1_degrade": " Not only that, no, he had the nerve to say \"I have seen better\" This old idiot! Ugh... I hope Mum never finds out about any of this...", + "admire_breasts_t3_e1_touch": " And he actually just went ahead and grabbed them!!! Straight after promising me he wouldn't as well... Ugh... I hope Mum never finds out about any of this...", + "admire_breasts_t3_e1_cum": " But that's not the end of it, first he started masturbating and then he actually came on me!!! What a gross old pervert! I should report him to the ministry! They need to know about a gross old headmaster just cumming all over their students... GROSS!!! But that would mean no more favours... no more points for Gryffindor... UGH!!! We better win!", + "admire_breasts_t3_e1_hold": " But that's not the end of it, he started masturbating and I allowed him to continue.... I could see it all, his {s}hard, long{/s}... {u}stupid, ugly thing!{/u} I'm glad he didn't finish in front of me. I hope Mum never finds out about any of this...", + # Tier 4 + "admire_breasts_t4_e1": "He just wanted to take a look at my breasts again...{}", # FORMATTED {action} + # Branching + "admire_breasts_t4_e1_compliment": " I know it's wrong to think, but I was sort of hoping he'd grab them... or at least touch himself a little... Especially after he said I have great tits... At least Dumbledore seems to have calmed down a bit.", + "admire_breasts_t4_e1_degrade": " I know it's wrong to think, but I was sort of hoping he'd grab them... or at least touch himself a little... Especially after he said that my tits are alright, I'm kind of getting into this this... Well, at least Dumbledore seems to have calmed down a bit.", + "admire_breasts_t4_e1_touch": " What are the point of promises if you're just going to break them anyway? He promised he wouldn't touch me and then grabs a hold of both my breasts like it was Christmas! Ugh, it wasn't the worst feeling in the world though... his hands are so strong...", + "admire_breasts_t4_e1_cum": " Ugh... I really need to start laying down some ground rules with Dumbledore... I can't just keep letting him cum on me whenever it pleases him... Although it's not the worst thing in the world... And it does seem to make him happy... Maybe I'll skip the ground rules for the time being.", + # + # Show panties + # + # Tier 1 + "admire_panties_t1_e1": "He's after my panties now! That nasty old perv made me lift up my skirt for him! Ugh... How do those slytherin sluts live with themselves? I feel so dirty! His eyes just kept staring{}Gosh it was so humiliating... But how could I refuse? I need my house to win and with how things are currently I don't see any other way to achieve that goal.", # FORMATTED {action} + # Branching + "admire_panties_t1_e1_face": " at my face! I was blushing so hard I thought my cheeks were about to turn into beetroots... ", + "admire_panties_t1_e1_panties": " at my panties! I could feel him stripping me with his eyes... ", + # Tier 2 + "admire_panties_t2_e1": "I had to show him my panties again today... At least it didn't feel as weird as the first time did... Not that he doesn't still give me the creeps, especially{}I just have to keep focused on winning gryffindor the house cup! If I have to show Dumbledore my panties then so be it!", # FORMATTED {action} + # Branching + "admire_panties_t2_e1_face": " when he kept staring at my face like that... ", + "admire_panties_t2_e1_compliment": " when he said he liked my panties... ", + "admire_panties_t2_e1_panties": " when he was continously staring at my private parts... ", + # Tier 3 + "admire_panties_t3_e1": "The look on Dumbledore's face was perfect! Ugh... walking around the school without panties on is such a rush...{}", # FORMATTED {action} + # Branching + "admire_panties_t3_e1_slut_positive": " When he called me a slut I felt so free and tingly inside, he even gave me bonus points! I think I can stop wearing panties for now, just to experiment a bit, there's nothing wrong with that, right?", + "admire_panties_t3_e1_slut_negative": " But when he called me a slut and said I won't be getting any points I was upset... He even went so far to ask me if I'm a slut or a prostitute, obviously I told him I am a slut, I'm no common whore that would sell her body for house points!", + "admire_panties_t3_e1_good": " I know I was just going to do this today to surprise Dumbledore, but given his reaction I think I might try it out a little more... ", + # + # Grope breasts + # + # Tier 1 + "grope_breasts_t1_e1_fail": "Dumbledore needs to learn to keep his creepy old hands to himself! I can't believe he expected me to just stand there and let him have his way with my body! He needs to learn some self control!", + "grope_breasts_t1_e1": "Dumbledore needs to learn to keep his creepy old hands to himself!{}", # FORMATTED {action} + # Branching + "grope_breasts_t1_e1_squeeze": " I can't believe he expected me to just stand there and let him have his way with my body! He needs to learn some self control!", + "grope_breasts_t1_e1_massage": " His massage did feel quite nice but he still needs to learn some self control!", + "grope_breasts_t1_e1_letgo": " I'm just glad he listened to me when I said it was enough otherwise I would have to slap him in the face!", + # Tier 2 + "grope_breasts_t2_e1": "Ugh... I let Dumbledore have a little feel{}", # FORMATTED {action} + # Branching + "grope_breasts_t2_e1_grab": "... Nothing too much, although not for lack of trying on his part... If I let him have his way... Goodness knows what he would have done to my body...", + "grope_breasts_t2_e1_slap": " and the first thing he did was slapping my breasts! It hurt! Not as much as I thought it would but still... Doesn't he know breasts are sensitive place on a female body?! Complete idiot!", + # Tier 3 + "grope_breasts_t3_e1": "Typical breast obsessed man! All he can think about is groping me{}Ugh... No Hermione! You have to be strong! For Gryffindor!", # FORMATTED {action} + # Branching + "grope_breasts_t3_e1_grab": "recently... Not that I mind too much if I'm being honest... His hands just feel so nice running around my...", + "grope_breasts_t3_e1_slap": " and abusing my breasts of course. At first I hated it but whenever he slaps them it makes my whole body shiver and...", + # Tier 4 + "grope_breasts_t4_e1": "Ugh... Maybe there's something wrong with me after all... I mean... Is it normal for someone's hands to feel so good? I couldn't help myself once he started kneading my breasts... ugh... I really need to start laying down some ground rules, otherwise he's going to take this way too far...", + # + # Grope ass + # + # Tier 1 + "grope_ass_t1_e1": "First my breasts and now my butt? What is wrong with him, why can't he ask of me to clean his desk or something less perverse...{}", # FORMATTED {action} + # Branching + "grope_ass_t1_e1_front": " Ugh... It was so embarrassing to see his face while he was groping me. At least he didn't go any further than that...", + "grope_ass_t1_e1_back": " Ugh... It was so embarrassing to be manhandled like that... Well... At least he didn't go any further than that...", + "grope_ass_t1_e1_back_slap": " Ugh... It was so embarrassing to be manhandled like that... He even spanked me a little... was I a bad girl? Was it because I failed my previous exam?", + "grope_ass_t1_e1_back_apologize": " Ugh... It was so embarrassing to be manhandled like that... He even spanked me a little... was I such a bad girl? Was it because I failed my previous exam?", + "grope_ass_t1_e1_back_spank_no_points": " First he started molesting my butt but then suddenly he spanked me and not once or twice but multiple times! It was so demeaning... My butt is so sore I don't think I'll be able to sit down for the next couple and what's worse, I didn't get any points whatsoever! Ridiculous!", + "grope_ass_t1_e1_back_spank_sub_points": " First he started molesting my butt but then suddenly he spanked me and not once or twice but multiple times! It was so demeaning... My butt is so sore I don't think I'll be able to sit down for the next couple and what's worse, I didn't get any points, more so, he actually substracted points from Gryffindor! It was all for nothing... I'm done selling favours to this bastard...", + # Tier 2 + "grope_ass_t2_e1": "I had my bum groped again today...{}{}{}", # FORMATTED {action}{!action2}{!action3} (! = optional) + # Branching + "grope_ass_t2_e1_front": " At first I wanted to say no and leave but I got reminded why I was doing it in the first place... He kept squeezing my butt tenderly, it felt... not as bad as the first time I guess, but I still would prefer if he simply asked me to do something else. A girl can dream, right?", + "grope_ass_t2_e1_front_open_eyes": " That's not the worst thing in the world I guess, I could just close my eyes and get it over with, right? I couldn't be more wrong... He said that if I don't keep my eyes open the whole time it will cost me points, can you believe that? I couldn't allow that! So I opened my eyes a little and he kept starring at me with his piercing eyes... I was so flushed I thought I was gonna melt. The things I do for our house... Boys better appreciate it!", + "grope_ass_t2_e1_back_slap": " And spanked... Repeatedly. I guess I kind of deserved it to be honest but I definitely did not expect what happened afterwards though", + "grope_ass_t2_e1_back_end": " I definitely did not expect what happened few moments later though... He simply stopped and sent me away... What kind of man does that?! Ugh.. Seriously...", + "grope_ass_t2_e1_back_touch_pussy": " I definitely did not expect what happened afterwards though... he went and touched my you-know-what!!!", + "grope_ass_t2_e1_back_prod_pussy_fail": " But that wasn't enough for him, he pushed a finger inside of me! I was shocked I didn't know what to do but I gathered all my will and yelled at him to stop, he did. I'm SO done with this favour trading bullshit!", + "grope_ass_t2_e1_back_prod_ass_fail": " At that moment I thought that was the worst of it but then he pushed a finger inside my butt!!! It was his thumb I think... Ugh... I could tell by how big it was... I had to yell at him to make him stop! I'm SO done with this favour trading bullshit!", + "grope_ass_t2_e1_back_prod_pussy": " But that wasn't enough for him, he pushed a finger inside of me! I was shocked I didn't know what to do! Luckily he didn't push any further and let go of me. The things I do for our house... I think I need to reevaluate my priorities...", + "grope_ass_t2_e1_back_prod_ass": " At that moment I thought that was the worst of it but then he pushed a finger inside my butt!!! It was his thumb I think... Ugh... I could tell by how big it was... He kept it in there for a few seconds then withdrawn... I felt relieved. I really hope he does not try that in the future...", + # Tier 3 + "grope_ass_t3_e1": "He just went straight for my bum! It's like he had three hands as well... ugh... When his strong hands started playing with my butt{}", # FORMATTED {action} + # Branching + "grope_ass_t3_e1_front_end": " When his hand touched me I started getting wet and he noticed it as well, even commented on it, gosh it was soooo embarrassing!!! I don't know what's wrong with me... I was able to make sure he didn't take it too far though... Only just... (He was pretty close to sticking his finger up my you know)...", + "grope_ass_t3_e1_back_end": "... I don't know what's wrong with me but I think I liked it... a lot... I was able to make sure he didn't take it too far though... Only just... (He was pretty close to sticking his finger up my you know)...", + "grope_ass_t3_e1_back_prod_pussy_end": " and when he pushed his strong finger inside of me... I don't know what's wrong with me but I think I liked it... Obviously I could not tell him that to not give him the satisfaction! I should ask for more points next time...", + "grope_ass_t3_e1_back_prod_pussy_continue": " and when he pushed his strong finger inside of me... I don't know what's wrong with me but I think I liked it... Obviously I could not tell him that to not give him the satisfaction but when he kept going and going... oh god... I think I came a little, it was feeling so good yet so wrong... I know I shouldn't be thinking like this but I wonder what will happen next?", + "grope_ass_t3_e1_back_prod_ass_end": "... I don't know what's wrong with me but I think I liked it... a lot... I was able to make sure he didn't take it too far though... Only just... I think for a moment he wanted to stick his finger up my butt, weird, it's not like anything stopped him the first time... Not that I would like that or anything, obviously, just saying!", + "grope_ass_t3_e1_back_prod_ass_continue": " and when he pushed his strong finger inside of my asshole... I don't know what's wrong with me but I think I liked it... oh god... If he kept going I think I would... Never mind. I know I shouldn't be thinking like this but I wonder what will happen next?", + ######## Need to finish T4 and the rest of the favours + } + +default hermione_diary = diary_class(title = "My Diary", dictionary=hermione_diary_pages) + +label _old_writing: + # Not in use, will be reintroduced above. + + + + $ diary_page_13_2 = "" + #End of grope her tier 4 + $ diary_page_14 = "" + + #Needs to be written + #End of dance for me tier 1 + $ diary_page_13 = "" + #End of dance for me tier 2 + $ diary_page_14 = "" + #End of dance for me tier 3 + $ diary_page_15 = "" + + #End of show ass tier 1 (options for look, touch, cum) + $ diary_page_16_1 = "He made me strip for him again today... I was going to say no, but Gryffindor really needs the points... plus, if I say no to him, he might start buying favours from those Slytherin sluts! That's the only reason... It's not like I like showing him my body... is it?" + $ diary_page_16_2 = "Ugh... Not only did he make me strip down for him, again, but he even went ahead and grabbed my ass! He really is the worst headmaster ever... At least he stopped after I told him to..." + $ diary_page_16_3 = "Dumbledore is unbelievable! He CAME ON ME!!! Not just on me, either, he made me strip down for him before he pulled out his gross old cock and fired it all over my bum! He needs to be locked away for good! Ugh! If slytherin weren't going to win this year, I would report him to the ministry in a heartbeat!" + #End of show ass tier 2 + $ diary_page_17_1 = "I had to show him my bum again today... It wasn't as bad as the first time... I even sort of liked showing it to him... It was exciting! Not that I'd let him know that! The gross old perv would probably get off on it! In fact, I know he would!" + $ diary_page_17_2 = "Maybe I've bitten off more than I can chew when I asked Dumbledore to buy favours from me... He made me strip down again today, just so he could play with my bum! The worst part was... I didn't hate it... In fact, I sort of liked it... Ugh!!! I can't believe I just wrote that!" + $ diary_page_17_3 = "Ugh... He really is getting out of control... He came on me again today! After he made me strip down and show him my butt... Ugh, this is so demeaning! Calling me up to his office, only to have me strip down and act like a cumrag! It's so gross... (So why do I like it so much?)" + #End of show ass tier 3 + $ diary_page_18_1 = "" + $ diary_page_18_2 = "Mmmm, I think he must cast some sort of charm on his hands before he calls me up to his office... they were incredible... it took everything I had just to get him to stop... Even then... I'm not sure I'll be able to say no to him next time..." + $ diary_page_18_3 = "He came on my butt again today... and not just a little bit... It was {b}covered{/b} Ugh... I really need to stop this... While I still can..." + + #End of touch me tier 1 (Options for cum under shirt and cum on shirt) + $ diary_page_19_1 = "This was the worst day ever! Not only did Dumbledore make me touch his filthy old cock to jerk him off, when he finally started cumming I had no idea what to do with it! all I could think about was making sure it didn't make a mess, so I just hid his cock under my shirt while he did it... I could feel it all over my bra and stomach... Yuck..." + $ diary_page_19_2 = "Dumbledore is a filthy rotten liar! I made him promise to tell me when he was cumming, but no, he did what he pleased and shot it all over my shirt! Ugh, you think he'd be happy enough getting me to jerk him off, but does he have to humiliate me while I do it! Argh!!!" + #End of touch me tier 2 + $ diary_page_20 = "He wanted another handjob today... Not that giving them is worst thing in the world... I just wish that he didn't have to make such a mess at the end... Apart from that it was sort of fun... (I can't believe that I kissed his cock...)" + #End of touch me tier 3 + $ diary_page_21 = "He made me give him another handjob today... Although I'm not sure I can really say that he made me... He just asked for it, and I gave him one without so much as a complaint... I just couldn't help it... It's such a unique feeling... I even made sure he shot all his cum under my shirt... and kept it there all day." + + #End of suck it tier 1 (Options for cum on face and in mouth) + $ diary_page_22_1 = "I can't believe what I've become... Dumbledore actually asked for a blowjob today... I can't say I was surprised, not after the things he's put me through already... I didn't even protest, I just muttered something about gryffindor and got on my knees for him... Ugh... I don't even know if I can put what I felt into words without dying of embarrassment... Suffice to say, I didn't hate it... Even when he shot it all into my mouth{heart}... (I swallowed)" + $ diary_page_22_2 = "I can't believe what I've become... Dumbledore actually asked for a blowjob today... I can't say I was surprised, not after the things he's put me through already... I didn't even protest, I just muttered something about gryffindor and got on my knees for him... Ugh... I don't even know if I can put what I felt into words without dying of embarrassment... Suffice to say, I didn't hate it... Even if he shot it all over my face! Grrr... (Why do men like that? It's so degrading...)" + #End of suck it tier 2 (Options for cum on face and in mouth) + $ diary_page_23_1 = "Another blowjob today...{heart}{heart}{heart} I pretended to protest a little when he asked, but the truth is, I think I wanted this as much as he did... Maybe more... It's just such an incredible feeling to have him in my mouth... Mmmm... not to mention when he fills me with his cum... (I think I'm starting to get used to the taste.)" + $ diary_page_23_2 = "Another blowjob today...{heart}{heart}{heart} I pretended to protest a little when he asked, but the truth is, I think I wanted this as much as he did... Maybe more... It's just such an incredible feeling to have him in my mouth... Mmmm... Even if he does insist on coating me with his cum... (I think I'm starting to understand why he likes that so much...)" + #End of suck it tier 3 (Options for worship it and daddy roleplay) + $ diary_page_24_1 = "I think he's starting to get hooked on my blowjobs... {heart}When he asked for one today, he even made me act like he was my father... It was sooo wrong... (Even though it felt {b}incredible!{/b}{heart}{heart}{heart}) But if daddy ever found out some of the things I said... I would have to obliviate him and Mum if I didn't die of embarrassment first..." + $ diary_page_24_2 = "He asked me to worship his cock today... Not that I needed much encouragement... Ugh, I used to think those Slytherin sluts just sucked off their teachers for the points... But now I'm starting to understand how much fun it can be... I don't think I can blame them for getting on their knees whenever they're asked anymore. (I can still blame them for being a dirty slytherin!)" + #End of suck it tier 4 + $ diary_page_25 = "Wow. [genie_name] told me he wanted a {i}special{/i} blowjob today. I just thought he meant some more roleplay at first but it was so much more... He made sure to handcuff me before {b}fucking{/b} my throat raw. I don't think I've felt like more of a sex object in my entire life... It was... It was incredible... That might be the hardest I've orgasmed in my life... (What's wrong with me?)" + + #End of tit fuck tier 1 + $ diary_page_26 = "I learned something new today... Normally when I write that it involves complex transfiguration or charms but today... It involved wrapping my breasts around my headmaster's cock... (Dumbledore called it a tit-job?) Ugh... The lengths Dumbledore is going through to humiliate me... Not that it's working! I wasn't even embarrassed when he coated me in cum! (Should I be?)" + #End of tit fuck tier 2 + $ diary_page_27 = "Mmmm, Dumbledore wanted another titjob for his favour today... I would have said no... but he was so nice, complimenting my breasts... Besides, it's not like I had sex with him, I just rubbed my chest against him a little... And let him coat me in his cum... again... (I really am a dirty slut, aren't I?)" + #End of tit fuck tier 3 + $ diary_page_28 = "I know it's wrong... but I really do like letting Dumbledore have his way with me... Today he made me jerk him off with my tits... I loved it... the feeling, the smell, the look on his face... ugh... I know it's wrong, but I really do love letting him treat me as his dirty little whore...{heart}{heart}{heart}" + + #End of sex tier 1 + $ diary_page_29 = "I did it. I lost my virginity today... It wasn't even a special occasion... Dumbledore just brought me to his office, told me what he wanted and took it... I know I should feel ashamed and sad at losing it like this... to my headmaster... but if I'm being truly honest? It doesn't bother me at all... It felt amazing... the way he just took me... I hope he does it again... soon{heart}{heart}{heart}" + #End of sex tier 2 + $ diary_page_30 = "More sex with Dumbledore today. Ugh... He must be using magic to cum this much! It's just not possible for a regular man to cum {b}that{/b} much after sex... is it?" + #End of sex tier 3 + $ diary_page_31 = "Why is Dumbledore so good at sex? Ugh... he's such a creep, gross, old man! But his dick... ugh... It just... I can't even describe what it does to me... I asked him to spank me while we did it today... I don't know why but I just needed something to let me know what we were doing was wrong, because it felt sooooo good..." + + #Needs to be written + #End of anal tier 1 + $ diary_page_32 = "" + #End of anal tier 2 + $ diary_page_33 = "" + #End of anal tier 3 + $ diary_page_34 = "" diff --git a/game/scripts/characters/hermione/events/cardgame_wager.rpy b/game/scripts/characters/hermione/events/cardgame_wager.rpy new file mode 100644 index 00000000..aabd7b40 --- /dev/null +++ b/game/scripts/characters/hermione/events/cardgame_wager.rpy @@ -0,0 +1,686 @@ +label hg_wager_bj: + gen "Well if you want to avoid losing the points you could come over here and get on your knees." ("grin", xpos="far_left", ypos="head") + gen "And put my dick in your mouth!" ("grin", xpos="far_left", ypos="head") + if her_whoring < 19: #blowjob tier (It's fine if this is her first one) + her "I don't want to lose those points, but that is too much!" ("angry", "base", "angry", "mid") + her "Isn't there anything else I could do?" ("open", "base", "base", "mid") + gen "You're no fun!" ("angry", xpos="far_left", ypos="head") + gen "Come over here and let me give your butt a squeeze, then I'll only deduct ten points from Gryffindor." ("grin", xpos="far_left", ypos="head") + if her_whoring < 9: + her "No! what kind of girl do you take me for [genie_name]!" ("scream", "base", "angry", "mid") + gen "Fine, twenty points from Gryffindor!" ("base", xpos="far_left", ypos="head") + $ gryffindor -= 20 + pause.5 + call her_chibi("leave","door","base") + else: + her "Okay, I can do that..." ("open", "base", "base", "mid_soft", cheeks="blush") + her "" ("base", "base", "base", "mid_soft") + gen "Well, get over here then!" ("grin", xpos="far_left", ypos="head") + call her_walk("desk", "base", reduce=0.8) + call blkfade + her "Should I turn around, [genie_name]?" ("open", "happyCl", "worried", "mid") + her "" ("upset", "base", "worried", "mid") + gen "No, not this time." ("base", xpos="far_left", ypos="head") + her "Okay then..." ("annoyed", "narrow", "base", "R_soft") + call gen_chibi("hide") + call her_chibi_scene("behind_desk_front") + with d1 + + call hide_blkfade + call ctc + call her_chibi_scene("grope_ass_front") + with d1 + gen "Have you been working out [hermione_name]? This feels great!" ("base", xpos="far_left", ypos="head") + her "No... can we just get this over with?" ("annoyed", "narrow", "base", "mid_soft") + her "{size=-5}All this because of a stupid card game{/size}." ("upset", "happyCl", "worried", "mid") + gen "I know, we should definitely do this again." ("base", xpos="far_left", ypos="head") + + if hg_strip.trigger: #If snape walked in during the dance favour. + call play_music("dark_fog") + $ hermione_chibi.zorder = 2 #Under snape + + call sna_walk(action="enter", xpos="mid", ypos="base") + + sna "Hello Geni--" (face="snape_09") + sna "What do we have here?!?" (face="snape_20") + her "{size=+5}Professor Snape?!{/size}" ("shock", "wide", "worried", "shocked", xpos="left",ypos="base") + her "It's not what it looks like!" ("scream", "wide", "base", "R") + hide hermione_main + sna "So you're not having your headmaster feel you up?" (face="snape_05") + sna "And enjoying it, by the looks of it!" (face="snape_02") + her "I knew playing another round of cards wasn't a good idea..." ("mad", "happyCl", "worried", "mid", cheeks="blush") + her "..." ("annoyed", "narrow", "annoyed", "mid", cheeks="blush") + her "Take your hands off me now!!" ("scream", "closed", "angry", "mid", cheeks="blush") + gen "Fine, calm down miss Granger." ("base", xpos="far_left", ypos="head") + her "Don't tell me to calm down!!!" ("scream", "base", "angry", "mid", cheeks="blush") + hide hermione_main + sna "Don't feel as if you have to stop on my behalf." (face="snape_01") + gen "Fine, I'll stop... But I'm still taking twenty points from Gryffindor!" ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("behind_desk_front") + ">You take your hands off Hermione." + + show screen blkfade + with d5 + call gen_chibi("sit_behind_desk") + call her_chibi("stand",410,"base", flip=True) + hide screen blkfade + with d5 + + sna "The perfect Hermione Granger letting her headmaster feel her up over a card game and some house points!" (face="snape_02") + sna "How sweet..." (face="snape_03") + her "Can I leave now?" ("annoyed", "narrow", "worried", "down", flip=True) + gen "You are excused miss Granger, but I will be taking twenty points from Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor -= 20 #should take gryffindor points and then hermione leaves + + call her_walk(action="leave") + + sna "How did you talk her into that?" (face="snape_02") + gen "We made a bet involving house points and she lost, why did you have to barge your way in like that?" ("base", xpos="far_left", ypos="head") + gen "It was just getting good!" ("base", xpos="far_left", ypos="head") + sna "You should hang a tie on the door or something!" (face="snape_03") + sna "How was I supposed to know you were busy with the girl?" (face="snape_04") + gen "Just knock next time!" ("angry", xpos="far_left", ypos="head") + gen "It's not like I know how to lock that door..." ("base", xpos="far_left", ypos="head") + gen "Can't a mythical creature feel up a schoolgirl in peace around here?" ("angry", xpos="far_left", ypos="head") + sna "Fine, I'll leave you to it, the less I have to see that girl the better..." (face="snape_06") + + $ hermione_chibi.zorder = 3 #reset to default + call sna_walk(action="leave") + + else : #If she hasn't stripped twice. + her "No, it's bad enough doing this to gain house points, it's much worse to prevent losing them!" ("clench", "narrow", "angry", "R") + gen "You don't enjoy it? Even a little?" ("base", xpos="far_left", ypos="head") + her "No, Sir. I'm just doing this to fix the problem I created..." ("disgust", "narrow", "base", "mid_soft") + gen "Well, to each their own, I am enjoying this very much!" ("base", xpos="far_left", ypos="head") + her "Are you done yet?" ("disgust", "narrow", "base", "R_soft") + gen "Fine, I'll let you go..." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("behind_desk_front") + with d1 + gen "I'll only take ten points from Gryffindor as we agreed." ("base", xpos="far_left", ypos="head") + gen "Ten Points from Gryffindor!" ("base", xpos="far_left", ypos="head") + $ gryffindor -= 10 + call blkfade + call her_chibi("stand","mid","base") + call gen_chibi("sit_behind_desk") + call hide_blkfade + her "Thank you, [genie_name]." ("open", "base", "base", "mid") + hide hermione_main + with d3 + + call her_walk(action="leave") + + else: #If her whoring is higher than 19 (when she can do the blowjob favour) + her "Gryffindor really can't afford to lose twenty points..." ("soft", "base", "worried", "mid") + her "Okay then, I'll do it." ("open", "closed", "base", "mid") + if hg_pf_blowjob.points > 0: #if she's done the blowjob favour these show + her "Not like I haven't done it before." ("base", "happy", "base", "mid_soft", cheeks="blush") + if her_whoring > 21: #When she has done all BJ events in main favour + her "And it does feel good having my mouth full of your cock..." ("soft", "happyCl", "base", "mid", cheeks="blush") + gen "Get over here then!" ("base", xpos="far_left", ypos="head") + call her_walk("desk", "base", reduce=0.8) + call blkfade + call play_music("playful_tension") + hide hermione_main + call her_chibi_scene("bj") + hide screen bld1 + hide screen blkfade + with fade + call ctc + her "*Urk*, *Slurp*, *Gobble*" ("open_wide_tongue", "closed", "base", "mid", ypos="head", flip=False) #should have her head showing while sucking his cock. + gen "Oh, that's great!" ("base", xpos="far_left", ypos="head") + gen "Put some work into it." ("angry", xpos="far_left", ypos="head") + her "*Gulp*, *Gobble*, *Gltch*" ("open_wide_tongue", "narrow", "worried", "mid_soft") + gen "Your mouth feels amazing, you're a natural!" ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause") + her "I'm glad you like it [genie_name]." ("open", "happy", "base", "mid", cheeks="blush") + call her_chibi_scene("bj") + her "*Gobble*, *Slurp*, *Gobble*" ("open_wide_tongue", "closed", "base", "mid", cheeks="blush") + + call play_music("dark_fog")#Snape walks in + + call sna_walk(action="enter", xpos="mid", ypos="base") + + sna "" (face="snape_01", xpos="base", ypos="base") + call ctc + + with hpunch + sna "I want a rematch!" (face="snape_07") + call her_chibi_scene("bj_pause") + gen "{size=-5}Don't stop, [hermione_name]...{/size}" ("base", xpos="far_left", ypos="head") + gen "What do you mean, rematch? I beat you fair and square!" ("angry", xpos="far_left", ypos="head") + call her_chibi_scene("bj") + her "*Slurp*, *Gulp*, *Urk*" ("open_wide_tongue", "happyCl", "worried", "mid", cheeks="blush", ypos="head", flip=False) + sna "I'm certain you were cheating, my deck is way better than yours." (face="snape_06") + sna "Hold on... what's that noise?" (face="snape_03") + gen "Probably ghosts...{w} This place must be haunted." ("base", xpos="far_left", ypos="head") + gen "And I'm better than you, just accept it." ("grin", xpos="far_left", ypos="head") + her "*Gulp*, *Gobble*, *Gltch*" ("open_wide_tongue", "happyCl", "worried", "mid", cheeks="blush") + sna "{size=-5}That doesn't sound like any ghost I've ever heard...{/size}" (face="snape_01") + sna "Are you sure?" (face="snape_05") + her "*Slurp*, *Gobble*, *Urk*" + sna "There it is again!" (face="snape_25") + gen "Yes, definitely ghosts..." ("base", xpos="far_left", ypos="head") + gen "Are you changing the subject now because you can't accept the fact I beat you at wizard cards!" ("grin", xpos="far_left", ypos="head") + gen "{size=-5}I'm about to cum [hermione_name]!{/size}" ("angry", xpos="far_left", ypos="head") + her "*Gurk*, *Gulp*, *Gulp*" ("open_wide_tongue", "base", "worried", "mid", cheeks="blush") + sna "No, something is going on here, what are you doing?" (face="snape_07") + gen "... Just standing at my desk." ("base", xpos="far_left", ypos="head") + hide snape_main + menu: + #Tell him not to worry about it. + #Tell him the ghost is gone. + "-Tell him not to worry about it-": + gen "There's nothing suspicious happening here...{w} {size=-5}Ugh!{/size}" ("angry", xpos="far_left", ypos="head") + pause.5 + call her_chibi_scene("bj_cum_in") + call cum_block + gen "{size=+7}*ARGH*!{/size}" ("angry", xpos="far_left", ypos="head") + her "..." ("full", "wide", "worried", "stare") + sna "..." (face="snape_25") + gen "..." ("angry", xpos="far_left", ypos="head") + sna "*Hmm*...{w} it seems the weird sound is gone." (face="snape_04") + gen "Oh... yes, seems like it..." ("base", xpos="far_left", ypos="head") + sna "I bet it was peeves again..." (face="snape_16") + sna "I'll leave you to it then..." (face="snape_03") + her "..." ("full_cum", "narrow", "base", "down", cheeks="blush") + + call sna_walk("door", "base") #snape walks to the door, pauses on gulp sound + + $ renpy.play('sounds/gulp.ogg') + her "{heart}*Gulp* {heart}" ("cum", "narrow", "annoyed", "up") + sna "..." (face="snape_07", flip=True) + pause.2 + + show screen blkfade + with d5 + $ renpy.play('sounds/07_run.ogg') #snape runs back and draws his wand + hide snape_main + $ snape_chibi.zorder = desk_zorder + 1 + call sna_chibi("wand_defend", "mid") + pause 1 + hide screen blkfade + with d5 + + $ renpy.music.play("music/Hitman.ogg") + pause .6 + call her_chibi_scene("bj_pause") + + gen "...?!" ("angry", xpos="far_left", ypos="head") + sna "Reveal yourself! I won't let you harm him!" (face="snape_10", wand=True) + gen "Severus, wait!" ("angry", xpos="far_left", ypos="head") + sna "I knew something was wrong from the start, you can't hide from me, now reveal yourself or prepare to die!" (face="snape_30", wand=True) + if not hg_strip.trigger: #if hermione hasn't stripped twice + gen "What are you doing Severus?" ("base", xpos="far_left", ypos="head") + her "..." ("soft", "base", "worried", "mid", cheeks="blush") + gen "You're being very strange..." ("base", xpos="far_left", ypos="head") + gen "I didn't know you cared so much about my well being..." ("grin", xpos="far_left", ypos="head") + sna "But... I swear I heard something..." (face="snape_14", wand=True) + gen "..." ("angry", xpos="far_left", ypos="head") + sna "I guess I must've imagined it... I'll just go then." (face="snape_14", wand=True) + call sna_chibi("stand","mid","base",flip=True) #snape turns and leaves + hide screen bld1 + with d3 + stop music fadeout 2 + + else: #if Hermione has stripped twice (so Snape walked in on her) + gen "Wait!" ("angry", xpos="far_left", ypos="head") + + show screen blkfade + with d3 + call gen_chibi("dick_out", 260, 205+250) + call her_chibi("stand",220,"base", flip=True) + call sna_chibi("stand",460,"base") + stop music fadeout 2 + sna "" (face="snape_14", wand=False) + hide screen blkfade + with d5 + + sna "Miss Granger?! I thou-- I..." (face="snape_14") + hide snape_main + $ renpy.music.play("music/Dark Fog.ogg") + if her_whoring > 21: + her "Hello, Professor Snape." ("cum", "base", "base", "mid", xpos="left", ypos="base", flip=True) + her "I was just giving the headmaster some help with an \"itch\"." ("soft", "base", "base", "mid_soft", flip=True) + sna "I see... I was expecting a poor excuse, your honesty is admirable..." (face="snape_02") + her "..." ("base", "base", "base", "mid_soft", cheeks="blush", flip=True) + sna "Well, in that case I hope you don't mind giving me a scratch...{w=1.0}{nw}" (face="snape_13") + else: #whoring of 21 or less + her "Oh, hello there professor..." ("cum", "base", "worried", "mid", cheeks="blush", xpos="left", ypos="base", flip=True) + her "I was just helping the headmaster with some cleaning under his desk." ("open", "happyCl", "worried", "mid", cheeks="blush") + $ random_choice = renpy.random.randint(1, 2) + if random_choice == 1: + sna "Sure... And I live a double life as a death eater..." (face="snape_02") + elif random_choice == 2: + sna "Sure... And I'm the sheriff of Nottingham..." (face="snape_02") + else: + sna "Sure... And my name is {i}Hans Gruber{/i}..." (face="snape_02") + gen "I believe that your work is done Miss Granger, I'll refrain from deducting those points..." ("base", xpos="far_left", ypos="head") + sna "Avoiding house point deductions are we? Is it that simple to get in your pants miss Granger?" (face="snape_01") + sna "If I had known..." (face="snape_20") + her "In your dreams...!" ("mad", "narrow", "annoyed", "mid") + sna "In any case, you're a lucky man... Albus." (face="snape_13") + sna "I'll leave you two to it..." (face="snape_02") + + hide screen bld1 + with d3 + + pause.2 + + call sna_walk(action="leave") + $ snape_chibi.zorder = 3 + + pause.2 + gen "Well, that was something..." ("base", xpos="far_left", ypos="head") + $ uni_sperm = False + if her_whoring < 22: #if she has lower whoring than 22 + her "That was mortifying!" ("angry", "closed", "angry", "mid") + her "How could you make me keep going?!?" ("angry", "base", "angry", "mid") + gen "Well, you were down there already, how could I not?" ("base", xpos="far_left", ypos="head") + her "I can't believe you..." ("angry", "closed", "angry", "mid") + her "I'm going now, don't expect me to do anything for you any time soon!" ("clench", "base", "angry", "mid") + call gen_chibi("sit_behind_desk") + $ her_mood += 10 + else: # 22+ + her "The old me would have been embarrassed by that..." ("clench", "narrow", "worried", "mid_soft", cheeks="blush") + her "But I thought it was hot!" ("grin", "happy", "base", "mid_soft", cheeks="blush") + gen "I bet you did!" ("grin", xpos="far_left", ypos="head") + her "I can't believe that just happened!" ("smile", "base", "base", "mid_soft") + gen "You did a great job, I'll try to win even harder next time!" ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]... Anyway, I must be going..." ("open", "base", "base", "mid") + + show screen blkfade + with d3 + call her_chibi("stand","mid","base") + call gen_chibi("sit_behind_desk") + hide hermione_main + hide screen blkfade + with d5 + + if game.daytime: + her "Bye then..." ("smile", "base", "base", "mid", trans=dissolve, flip=False) + gen "Bye, [hermione_name]." ("base", xpos="far_left", ypos="head") + else: + her "Good night." ("open", "base", "base", "mid", trans=dissolve, flip=False) + gen "Good night, [hermione_name]." ("base", xpos="far_left", ypos="head") + "-Tell Him the ghost is gone-": + gen "Wait..." ("angry", xpos="far_left", ypos="head") + her "*Glick*?" ("open_wide_tongue", "wide", "base", "R") + gen "No, I think I should be able to exorcise these spirits myself..." ("base", xpos="far_left", ypos="head") + sna "You can do that?" (face="snape_11") + if her_whoring > 21: + her "*Slurp*, *Slurp*, *Gobble*" ("open_wide_tongue", "narrow", "annoyed", "up", cheeks="blush") + gen "*Ghh*, of--{w=0.3} of course I can..." ("angry", xpos="far_left", ypos="head") + sna "I didn't think you could still use your powers like that..." (face="snape_01") + her "*Gltch*, *Slurp*, *Gobble*" ("open_wide_tongue", "squint", "worried", "up", cheeks="blush") + gen "What?{w} Oh, yeah...{w=0.2} of course I can, I've exercised plenty..." ("angry", xpos="far_left", ypos="head") + her "*Gulp*, *Gulp*, *Gobble*" + gen "*ARGH*...{w} plenty!" ("angry", xpos="far_left", ypos="head") + sna "Are you..." ("snape_05") + menu: + "-Try to get him to Leave-": + gen "Fine? Yes, I just need some concentration...{w} It'd be easier if you left me to it, the final expulsion could become quite messy..." ("angry", xpos="far_left", ypos="head") + her "...?" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + sna "Well, I'd love to see that..." ("snape_02") + gen "No...{w=0.4} *Gngh*...{w=0.2} Trust me, You don't...{w=0.4} Now, if you could..." ("angry", xpos="far_left", ypos="head") + sna "Fine, but you're going to have to teach me how to do that later..." ("snape_01") + gen "Not sure if that's..." ("angry", xpos="far_left", ypos="head") + her "*Slurp*, *Slurp*, *Gobble*" + gen "Oh, holy spirit that resides in this place..." ("angry", xpos="far_left", ypos="head") + her "*Slurp*, *Slurp*, *Urk*" ("open_wide_tongue", "squint", "worried", "up", cheeks="blush") + gen "Please help me release this anguish...{w} I mean, let me help release you from this anguish." ("angry", xpos="far_left", ypos="head") + sna "Well, you seem to know what you're doing so I'll leave you to it..." ("snape_05") + hide screen bld1 + with d3 + pause.2 + + call sna_walk(action="leave") + + gen "And not a moment to soon.... Take this you whore!" ("angry", xpos="far_left", ypos="head") + call her_chibi_scene("bj_cum_in") + + call cum_block + pause 1 + call her_chibi_scene("bj_pause") + her "*Mmmh*!!" ("full_cum", "wide", "base", "stare", cheeks="blush") + $ renpy.play('sounds/gulp.ogg') + her "{heart}*Gulp* {heart}" ("cum", "narrow", "annoyed", "up") + gen "Who said you could continue?" ("base", xpos="far_left", ypos="head") + her "From my perspective it looks like you appreciated the initiative..." ("cum", "base", "base", "mid_soft") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Fine, I won't deduct those points..." ("base", xpos="far_left", ypos="head") + her "Thank you..." ("smile", "base", "base", "mid") + call blkfade + call her_chibi("stand","mid","base") + call gen_chibi("sit_behind_desk") + hide screen blkfade + her "In that case I'll take my leave..." ("smile", "happy", "base", "mid_soft", ypos="base") + call her_chibi("leave","door","base") + gen "That girl..." ("grin", xpos="far_left", ypos="head") + "-Let her keep going and deal with the aftermath-": + gen "Yeah... I'm good." ("base", xpos="far_left", ypos="head") + her "*Slurp*, *Slurp*, *Gobble*" + sna "Is there anything I could assist with?" ("snape_04") + with hpunch + gen "{size=+7}What?!?{/size}" ("angry", xpos="far_left", ypos="head") + her "...?" ("open_wide_tongue", "wide", "worried", "stare", cheeks="blush") + sna "With the exorcism..." (face="snape_05") + gen "Oh..." ("base", xpos="far_left", ypos="head") + her "*Slurp*, *Slurp*, *Slurp*" ("open_wide_tongue", "happyCl", "worried", "mid", cheeks="blush") + gen "No... It's all good... I can feel the ghostly presence being expelled as we speak..." ("base", xpos="far_left", ypos="head") + gen "Now take this you whore!" ("angry", xpos="far_left", ypos="head") + call her_chibi_scene("bj_cum_in") + call cum_block + gen "..." ("angry", xpos="far_left", ypos="head") + sna "..." (face="snape_14") + gen "..." ("base", xpos="far_left", ypos="head") + sna "I had no clue exorcism would be this..." (face="snape_03") + sna "Extreme..." ("snape_02") + gen "Hah, yeah...{w=0.3} But I've done this plenty of times..." ("grin", xpos="far_left", ypos="head") + gen "Actually, there's quite a bit of ghostly residue I have to deal with now so it might be best if..." ("base", xpos="far_left", ypos="head") + sna "Whatever, I'd just leave it to the house elves..." ("snape_03") + gen "It's not as simple as it may seem, it's not like warm water is going to do it..." ("base", xpos="far_left", ypos="head") + sna "Fine, I'll head off in that case." ("snape_01") + hide screen bld1 #should go black + with d3 + pause.2 + + call sna_walk(action="leave") + + gen "He's gone now [hermione_name]..." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause") + her "Thank you for your ghostly residue, [genie_name]." ("cum", "narrow", "worried", "mid_soft") + gen "You're welcome, I can't believe he bought it..." ("base", xpos="far_left", ypos="head") + her "What do you expect from the head of Slytherin?" ("crooked_smile", "narrow", "base", "R_soft") + gen "yes...{w=0.3} Well...{w=0.3} I think that's enough for today." ("base", xpos="far_left", ypos="head") + call blkfade + call her_chibi("stand","mid","base") + call gen_chibi("sit_behind_desk") + hide screen blkfade + her "" ("base", "happy", "base", "mid_soft", ypos="base") + gen "You've done more than enough to save those points." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("smile", "happy", "base", "mid_soft") + if game.daytime: #should play if day time + her "Bye then..." ("open", "base", "base", "mid") + gen "Bye, [hermione_name]." ("base", xpos="far_left", ypos="head") + else: + her "Good night." ("open", "base", "base", "mid") + gen "Good night, [hermione_name]." ("base", xpos="far_left", ypos="head") + $ uni_sperm = False + "-Try something crazy- {image=interface/icons/small/cards.webp}": + gen "Oh yes, I'm...{w=0.3} ugh...{w=0.3} fine." ("base", xpos="far_left", ypos="head") + gen "But for some reason I feel like playing some cards." ("base", xpos="far_left", ypos="head") + sna "In a moment like this?" (face="snape_02") + gen "Yes, I think the ghost may have been a gambler during their lifetime..." ("base", xpos="far_left", ypos="head") + jump bj_duel_game + else: #whoring not higher than 21 + call her_chibi_scene("bj_pause") + her "*Mmphaa*..." ("open_tongue", "narrow", "annoyed", "up") + gen "Hold on...{w} Yes, I think the ghostly presence has departed..." ("base", xpos="far_left", ypos="head") + sna "Already?" (face="snape_05") + gen "Yes, they must've felt how powerful my exorcism abilities were and moved on somewhere else..." ("angry", xpos="far_left", ypos="head") + sna "Well that's no fun... I was hoping to see it happen for myself." (face="snape_03") + gen "Trust me, there's not going to be any watching going on here..." ("base", xpos="far_left", ypos="head") + sna "..." (face="snape_05") + sna "Anyway, I was coming to see if you were up for another round of cards..." (face="snape_01") + sna "But I suppose you're quite spent after that whole ordeal." (face="snape_02") + # + # + menu: + "\"*Hmm*.. Actually..\" {image=interface/icons/small/cards.webp}": + gen "I don't see why not... I don't have anything else going on at the moment..." ("grin", xpos="far_left", ypos="head") + label bj_duel_game: + her "..." ("open_wide_tongue", "narrow", "annoyed", "mid") + call her_chibi_scene("bj") + her "*Slurp*, *Slurp*, *Gobble*" + gen "*Gngh*..." ("angry", xpos="far_left", ypos="head") + sna "In that case, let's begin..." (face="snape_02") + # Gamestart + call snape_special_duel + # After game + call her_chibi_scene("bj_cum_in") + call cum_block + pause 3 + if duel_response == "draw": + gen "I'm spent..." ("base", xpos="far_left", ypos="head") + sna "So no rematch?" (face="snape_05") + gen "Wha--" ("angry", xpos="far_left", ypos="head") + gen "Yes, definitely no rematch..." ("base", xpos="far_left", ypos="head") + gen "I'm not sure I could handle another one of those for at least thirty minutes..." ("base", xpos="far_left", ypos="head") + sna "That's oddly specific..." (face="snape_04") + gen "You're oddly specific..." ("base", xpos="far_left", ypos="head") + sna "..." (face="snape_03") + gen "I don't know what that means..." ("base", xpos="far_left", ypos="head") + sna "I feel like understand you less and less by the day..." (face="snape_01") + + call sna_walk(action="leave") + + call her_chibi_scene("bj_pause") + her "So, no rematch then?" ("crooked_smile", "narrow", "base", "mid_soft") + gen "As I said, at least not for another thirty minutes..." ("grin", xpos="far_left", ypos="head") + her "So I assume I'm not losing those points anymore?" ("open", "narrow", "worried", "mid_soft") + gen "Definitely not..." ("base", xpos="far_left", ypos="head") + if game.daytime: + her "Great, goodbye for now then [genie_name]..." ("base", "base", "base", "mid") + else: + her "Great, good night then... [genie_name]." ("base", "base", "base", "mid") + gen "{size=-8}That girl is crazy...{/size}" ("base", xpos="far_left", ypos="head") + elif duel_response == "loss" or duel_response == "Close": + sna "Yes... I knew I'd make you bust this time!" (face="snape_02") + gen "Trust me..." ("base", xpos="far_left", ypos="head") + gen "You had nothing to do with that..." ("base", xpos="far_left", ypos="head") + sna "Sure I didn't, how about you hand me a bottle of that fine wine to celebrate the occasion..." (face="snape_20") + label bj_duel_game_menu: + menu: + "-Give him the bottle-" (style="disabled") if wine_ITEM.owned <= 0: + ">You don't have any bottles of wine left." + jump bj_duel_game_menu + "-Give him the bottle-" if wine_ITEM.owned > 0: + $ wine_ITEM.owned -= 1 + gen "Fine..." ("angry", xpos="far_left", ypos="head") + gen "I feel like I won in the end anyway..." ("grin", xpos="far_left", ypos="head") + sna "That literally makes no sense..." (face="snape_04") + sna "You clearly can't overcome the dreading feeling of such an explosive victory..." (face="snape_02") + gen "Something like that..." ("base", xpos="far_left", ypos="head") + gen "Just take the wine and leave..." ("base", xpos="far_left", ypos="head") + gen "I need to reflect on my previous life decisions." ("base", xpos="far_left", ypos="head") + + call sna_walk(action="leave") + + gen "Get out of there... life decisions." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause") + her "Happy?" ("normal", "happyCl", "base", "mid", cheeks="blush") + gen "I just lost the game and one of my bottles of wine..." ("base", xpos="far_left", ypos="head") + her "And a higher than average amount of 2 to 5ml by the looks of it..." ("open", "narrow", "worried", "down", cheeks="blush") + gen "That is true..." ("grin", xpos="far_left", ypos="head") + her "are you still deducting those points [genie_name]." ("normal", "narrow", "base", "down", cheeks="blush") + "-Don't give him anything-": + gen "Get out..." ("base", xpos="far_left", ypos="head") + sna "Someone's a sore loser..." (face="snape_13") + gen "Aching..." ("base", xpos="far_left", ypos="head") + gen "Now get out..." ("base", xpos="far_left", ypos="head") + if sna_friendship >= 30: + sna "Fine, but next time I'm playing you for one of those bottles..." (face="snape_03") + else: + sna "Fine..." (face="snape_03") + + call sna_walk(action="leave") + + call her_chibi_scene("bj_pause") + her "Happy?" ("normal", "happyCl", "base", "mid", cheeks="blush") + gen "What are you talking about? How could I be happy in a moment like this..." ("angry", xpos="far_left", ypos="head") + her "But I just made you..." ("open", "base", "worried", "mid", cheeks="blush") + gen "I just lost that god damn game cause I couldn't concentrate!" ("angry", xpos="far_left", ypos="head") + her "Well, I did what you asked me!" ("mad", "narrow", "angry", "R", cheeks="blush") + her "So I'd very much appreciate if you didn't deduct those points!" ("open", "closed", "angry", "mid", cheeks="blush") + menu: + "-Only deduct the twenty-": + gen "You should be happy that I'm not deducting more!" ("angry", xpos="far_left", ypos="head") + gen "Twenty points from Gryffindor!" ("angry", xpos="far_left", ypos="head") + $ gryffindor -= 20 + her "..." ("base", "base", "angry", "mid") + her "What ever..." ("open", "closed", "angry", "mid") + $ her_mood += 15 + "-Deduct even more-": + gen "Oh, don't you worry..." ("base", xpos="far_left", ypos="head") + her "..." + gen "Forty points from Gryffindor!" ("angry", xpos="far_left", ypos="head") + $ gryffindor -= 40 + her "What, you can't do that!" ("shock", "wide", "worried", "stare") + gen "Of course I can, I'm the headmaster!" ("angry", xpos="far_left", ypos="head") + her "I can't believe you've done this..." ("mad", "base", "angry", "mid") + gen "Suck it up..." ("base", xpos="far_left", ypos="head") + her "{size=-5}That's what I did...{/size}" ("open", "narrow", "annoyed", "mid", cheeks="blush") + gen "Excuse me?" ("base", xpos="far_left", ypos="head") + her "Never mind..." ("clench", "narrow", "angry", "R") + $ her_mood += 25 + "-Let her go-": + gen "No, I feel like I've reached a net gain somehow during this whole ordeal..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "base", "base", "mid") + gen "A net gain is when...{nw}" ("base", xpos="far_left", ypos="head") + her "I know what it means..." ("open", "narrow", "base", "mid_soft") + gen "Right." ("base", xpos="far_left", ypos="head") + if game.daytime: + her "good day to you then sir." ("base", "base", "base", "mid") + else: + her "Good night then..." ("base", "base", "base", "mid") + else: + sna "..." (face="snape_18") + gen "Did I say that aloud?" ("angry", xpos="far_left", ypos="head") + sna "Yes..." (face="snape_12") + gen "I meant to say bore..." ("base", xpos="far_left", ypos="head") + gen "Take that..." ("base", xpos="far_left", ypos="head") + sna "..." (face="snape_05") + gen "You bore..." ("base", xpos="far_left", ypos="head") + sna "..." (face="snape_05") + sna "What kind of trash talk is that... seriously, you need to step up your game." (face="snape_06") + gen "No you..." ("base", xpos="far_left", ypos="head") + sna "That's fair..." (face="snape_03") + sna "I'll take my leave in that case..." (face="snape_01") + + call sna_walk(action="leave") + + call her_chibi_scene("bj_pause") + her "Did you just call me a...{nw}" + gen "Snape..." ("base", xpos="far_left", ypos="head") + # Easter egg start + $ tried_rollback = False + show screen rollback_check + $ renpy.block_rollback() + gen "If you {w=0.25}{b}{u}{i}scrolled back{/i}{/u}{/b}{w=0.25} you'd clearly see that I called Snape that..." ("base", xpos="far_left", ypos="head") #### + #***Goes back to reality*** + label hg_wager_bj_secret_end: + if not tried_rollback: + hide screen rollback_check + $ renpy.block_rollback() + her "If I do what back?" ("annoyed", "narrow", "base", "mid_soft") + gen "Never mind..." ("base", xpos="far_left", ypos="head") + else: + $ achievements.unlock("flashback") + her "........" ("annoyed", "narrow", "worried", "down") + gen "We're done for today [hermione_name]." ("base", xpos="far_left", ypos="head") + her "What about the points..." ("annoyed", "narrow", "worried", "down") + gen "Points?" ("angry", xpos="far_left", ypos="head") + gen "Oh yes, the points!" ("grin", xpos="far_left", ypos="head") + gen "Twenty points to Gryffindor..." ("grin", xpos="far_left", ypos="head") + $ gryffindor += 20 + her "That's not..." ("normal", "narrow", "base", "down") + her "Thank you..." ("open", "closed", "base", "mid") + if game.daytime: + her "Goodbye then [genie_name]." ("base", "base", "base", "mid") + else: + her "Good night then [genie_name]." ("base", "base", "base", "mid") + + call blkfade + call her_chibi("stand","mid","base") + call gen_chibi("sit_behind_desk") + hide screen blkfade + jump end_hermione_event + "\"I'll pass\"": + pass + # + # + gen "Yes, I'm not in the mood now anyway..." ("base", xpos="far_left", ypos="head") + sna "..." (face="snape_05") + sna "I'll just go then." (face="snape_01") + hide screen bld1 + with d3 + pause.2 + + call sna_walk(action="leave") + + gen "..." ("base", xpos="far_left", ypos="head") + gen "... Why did you stop?" ("angry", xpos="far_left", ypos="head") + her "What?" ("annoyed", "narrow", "annoyed", "mid") + her "I thought you wanted me to..." ("clench", "narrow", "worried", "down") + gen "If I wanted you to then I would've said so..." ("base", xpos="far_left", ypos="head") + her "I could continue if you want me to..." ("soft", "base", "base", "mid_soft") + gen "No, the mood's ruined now..." ("base", xpos="far_left", ypos="head") + her "Are you still taking those points away?" ("open", "base", "base", "mid") + menu: + "-No-": + gen "No, you're excused..." ("base", xpos="far_left", ypos="head") + her "Thank you professor..." ("smile", "happy", "base", "mid_soft") + "-Yes-": + gen "Of course I am, you didn't finish the job!" ("angry", xpos="far_left", ypos="head") + her "..." ("annoyed", "wide", "base", "stare") + her "But, Snape was going to..." ("open", "happyCl", "worried", "mid") + her "..." ("upset", "narrow", "worried", "down") + her "Fine..." ("clench", "narrow", "annoyed", "mid") + gen "Twenty Points from Gryffindor!" ("base", xpos="far_left", ypos="head") + $ gryffindor -= 20 + $ her_mood += 10 + + $ hg_pf_blowjob.points += 1 + $ hg_pf_blowjob.counter += 1 + $ achievements.unlock("headlib") + call blkfade + call her_chibi("stand","mid","base") + call gen_chibi("sit_behind_desk") + hide screen blkfade + + jump end_hermione_event + +label hg_wager_bj_secret: + hide screen rollback_check + hide hermione_main + call blkfade + $ renpy.block_rollback() + call her_chibi_scene("bj") + call sna_chibi("stand",460,"base") + pause 1.0 + show screen hg_wager_bj_secret + call hide_blkfade + $ renpy.block_rollback() + gen "Yeeeeees!{w=0.5}{nw}" ("grin", xpos="far_left", ypos="head") + call cum_block + gen "Go fuck yourself Snape, take that you fucking whore!" ("angry", xpos="far_left", ypos="head") + sna "..." (face="snape_11") + gen "Yeah! What do you have to say about that... Slut!" ("grin", xpos="far_left", ypos="head") + sna "..." (face="snape_11") + gen "Slam dunk!" ("grin", xpos="far_left", ypos="head") + gen "Another victory in the bag, eat my shit!" ("grin", xpos="far_left", ypos="head") + + call blkfade + call her_chibi_scene("bj_pause") + call sna_chibi("hide") + hide snape_main + hide screen hg_wager_bj_secret + pause 1.0 + call hide_blkfade + + $ renpy.block_rollback() + gen "\"And then I totally just shat all over the game board\"..." ("grin", xpos="far_left", ypos="head") + + jump hg_wager_bj_secret_end + +screen hg_wager_bj_secret(): + zorder 4 + add im.MatrixColor("images/rooms/overlays/g_circular.webp", im.matrix.saturation(0.0)*im.matrix.brightness(0.7)) + + text "Replay" pos (50, 50) size 40 color "#FFF" outlines [(5, "#000", 0, 0)] at blink + +screen rollback_check(): + tag rollback_check + if not tried_rollback: + key "rollback" action [SetVariable("tried_rollback", True), Jump("hg_wager_bj_secret")] diff --git a/game/scripts/characters/hermione/events/clothing.rpy b/game/scripts/characters/hermione/events/clothing.rpy new file mode 100644 index 00000000..28b10512 --- /dev/null +++ b/game/scripts/characters/hermione/events/clothing.rpy @@ -0,0 +1,344 @@ +label hermione_summon_setup: + $ random_number = renpy.random.randint(1, 10) + + # Reset doll state + $ hermione.wear("all") + $ hermione.set_cum(None) + $ hermione.animation = [] + + # + # TODO: Remove obsolete variables and fix the code after clothes have been added. + # + # if game.weather == "clear": + + # if her_tier >= 3 and game.daytime and not hg_muggle_hot_ITEM.unlocked: + # $ hg_muggle_hot_ITEM.unlocked = True + + # if not persistent.game_complete: + # $ hermione_door_event_happened = True #Hermione won't greet you again. + + # $ hermione_wear_neckwear = False + # $ hermione_wear_gloves = False + # $ hermione_wear_stockings = True + # $ h_top = "top_frilled_1" + # $ h_bottom = "pants_jeans_short" + # $ h_stockings = "stockings_cute" + + # call update_her_uniform + + # call play_sound("door") + # call her_chibi("stand","mid","base") + # with d3 + + # call play_music("hermione") + # her "" ("base", "base", "base", "mid", xpos="base", ypos="base") + # call ctc + + # gen "(Wow! Look at her!)" ("angry", xpos="far_left", ypos="head") + # gen "That's quite a sexy outfit, [hermione_name]!" ("grin", xpos="far_left", ypos="head") + # if her_whoring < 11: + # her "*Ehm*... Thank you, [genie_name]." ("soft", "base", "base", "R") + # her "I normally don't wear something like this." ("open", "base", "base", "mid") + # her "(Showing so much cleavage...)" ("disgust", "narrow", "worried", "down", cheeks="blush") + # her "But the weather is just too hot today." ("base", "base", "base", "R") + # gen "You should wear this more often!" ("grin", xpos="far_left", ypos="head") + # else: + # her "Thank you, [genie_name]." ("base", "narrow", "base", "mid_soft") + + # else: + # call update_her_uniform + # call play_sound("door") + # call her_chibi("stand","mid","base") + # with d3 + + # call play_music("hermione") + # her "" ("base", "base", "base", "mid", xpos="base", ypos="base") + + # #Unlocks rewards. + # call unlock_clothing(text = ">New clothing items for Hermione have been unlocked!", item = hg_muggle_hot_ITEM) + + + # if game.weather == "overcast": + + # #One time event. + # if not hg_accs_wool_g_ITEM.unlocked: + # $ hg_accs_wool_g_ITEM.unlocked = True + + # if not persistent.game_complete: + # $ hermione_door_event_happened = True #Hermione won't greet you again. + + # $ hermione_wear_neckwear = True + # $ hermione_wear_gloves = True + # $ hermione_wear_stockings = True + # $ h_neckwear = "scarf_striped_g" + # $ h_gloves = "gloves_wool_1" + # $ h_stockings = "stockings_striped_1" + + # call update_her_uniform + # call play_sound("door") + # call her_chibi("stand","mid","base") + # with d3 + + # call play_music("hermione") + # her "" ("base", "base", "base", "mid", xpos="base", ypos="base") + # call ctc + + # gen "..." ("base", xpos="far_left", ypos="head") + # gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + # gen "What's with all these clothes you are wearing?" ("base", xpos="far_left", ypos="head") + # her "It's a bit cold outside, [genie_name]... and my..." ("soft", "base", "base", "R", cheeks="blush") + + # if her_whoring < 11: + # her "I better not mention it..." ("disgust", "narrow", "worried", "down", cheeks="blush") + # elif her_whoring < 18: + # her "{size=-5}People can see my... my nipples...{/size}" ("disgust", "narrow", "worried", "down", cheeks="blush") + # else: + # her "I can't have my nipples poking out all the time, [genie_name]! It's distracting!" ("annoyed", "narrow", "angry", "R") + + # her "" ("soft", "base", "base", "mid") + # pause.2 + # gen "Alright... It looks cute on you." ("base", xpos="far_left", ypos="head") + # gen "You can keep it on for now." ("base", xpos="far_left", ypos="head") + # her "Thank you, [genie_name]." ("base", "base", "base", "mid") + + # $ h_request_wear_top = True + # $ h_request_wear_bottom = True + # $ h_request_wear_neckwear = True + # $ h_request_wear_gloves = True + # $ h_request_wear_stockings = True + + # else: + # call update_her_uniform + # call play_sound("door") + # call her_chibi("stand","mid","base") + # with d3 + + # call play_music("hermione") + # her "" ("base", "base", "base", "mid", xpos="base", ypos="base") + + # #Unlocks rewards. + # call unlock_clothing(text = ">New clothing items for Hermione have been unlocked!", item = hg_accs_wool_g_ITEM) + + + # # Raining + # if game.weather == "rain": + + # if her_tier >= 2 and not hg_muggle_rainy_ITEM.unlocked: + # $ hg_muggle_rainy_ITEM.unlocked = True + + # if not persistent.game_complete: + # $ hermione_door_event_happened = True #Hermione won't greet you again. + + # $ hermione_wet_clothes = True + # $ hermione_wear_neckwear = False + # $ hermione_wear_gloves = False + # $ h_top = "top_sweater_1" + # $ h_bottom = "pants_jeans_long" + + # call update_her_uniform + # call play_sound("door") + # call her_chibi("stand","mid","base") + # with d3 + + # call play_music("hermione") + # her "" ("disgust", "narrow", "worried", "down", xpos="base", ypos="base") + # call ctc + + # gen "Damn girl. You look drenched..." ("base", xpos="far_left", ypos="head") + # her "I'm sorry, [genie_name], but... It's raining cats and dogs out there!" ("open", "base", "base", "mid") + # her "I couldn't find my robe so I just put on a sweater and some jeans..." ("open", "base", "base", "R") + # her "I hope you don't mind my uniform not being up for standards. I didn't want it to get wet." ("disgust", "narrow", "worried", "down") + # gen "It's fine, [hermione_name]." ("base", xpos="far_left", ypos="head") + # gen "Besides, I wouldn't mind seeing you in jeans more often!" ("grin", xpos="far_left", ypos="head") + # her "Thank you, [genie_name]." ("normal", "base", "base", "R") + # $ her_mood -= 10 + # if her_mood < 0: + # $ her_mood = 0 + + # else: + # call update_her_uniform + # call play_sound("door") + # call her_chibi("stand","mid","base") + # with d3 + + # call play_music("hermione") + # her "" ("base", "base", "base", "mid", xpos="base", ypos="base") + + # #Unlocks rewards. + # call unlock_clothing(text = ">New clothing items for Hermione have been unlocked!", item = hg_muggle_rainy_ITEM) + + # # Robe + # else: + + # $ hermione_wear_robe = True + # call update_her_uniform + # call play_sound("door") + # call her_chibi("stand","mid","base") + # with d3 + + # call play_music("hermione") + # if her_mood > 1: + # her "" ("annoyed", "base", "base", "R", xpos="base", ypos="base") + # else: + # her "" ("base", "base", "base", "mid", xpos="base", ypos="base") + + # if not h_request_wear_robe: + # pause.5 #Shows Hermione with robe for a bit. + + # # Snow + # if game.weather in ("snow", "blizzard"): + + # if her_tier >= 2 and not hg_muggle_cold_ITEM.unlocked: + # $ hg_muggle_cold_ITEM.unlocked = True + + # if not persistent.game_complete: + # $ hermione_door_event_happened = True #Hermione won't greet you again. + + # $ h_request_wear_stockings = True + # $ hermione_wear_neckwear = False + # $ hermione_wear_gloves = False + # $ hermione_wear_stockings = True + # $ h_top = "top_pullover_1" + # $ h_stockings = "stockings_pantyhose" + + # call update_her_uniform + # call play_sound("door") + # call her_chibi("stand","mid","base") + # with d3 + + # call play_music("hermione") + # her "" ("base", "base", "base", "mid", xpos="base", ypos="base") + # call ctc + + # gen "New outfit?" ("base", xpos="far_left", ypos="head") + # her "Yes, [genie_name]. I brought it with me from home. It's a bit too cold for just my normal uniform..." ("open", "base", "base", "R") + # her "Do you like it?" ("soft", "base", "base", "mid") + # gen "I do, [hermione_name]. It's cute." ("grin", xpos="far_left", ypos="head") + # $ her_mood -= 10 + # if her_mood < 0: + # $ her_mood = 0 + + # else: + # call update_her_uniform + # call play_sound("door") + # call her_chibi("stand","mid","base") + # with d3 + + # call play_music("hermione") + # her "" ("base", "base", "base", "mid", xpos="base", ypos="base") + + # #Unlocks rewards. + # call unlock_clothing(text = ">New clothing items for Hermione have been unlocked!", item = hg_muggle_cold_ITEM) + + # elif her_tier >= 3 and not hg_muggle_cold_sexy_ITEM.unlocked: + # $ hg_muggle_cold_sexy_ITEM.unlocked = True + + # if not persistent.game_complete: + # $ hermione_door_event_happened = True #Hermione won't greet you again. + + # $ h_request_wear_stockings = True + + # $ hermione_wear_neckwear = False + # $ hermione_wear_gloves = False + # $ hermione_wear_stockings = True + # $ h_top = "top_pullover_2" + # $ h_stockings = "stockings_pantyhose" + + # call update_her_uniform + # call play_sound("door") + # call her_chibi("stand","mid","base") + # with d3 + + # call play_music("hermione") + # her "" ("base", "base", "base", "mid", xpos="base", ypos="base") + # call ctc + + # gen "That's quite the cute outfit, [hermione_name]." ("base", xpos="far_left", ypos="head") + # her "Thank you, [genie_name]. I made some changes to the old one..." ("open", "base", "base", "R") + # her "Do you like it?" ("soft", "base", "base", "mid") + # gen "Very much so, [hermione_name]. I love the breast window." ("grin", xpos="far_left", ypos="head") + # $ her_mood -= 10 + # if her_mood < 0: + # $ her_mood = 0 + + # else: + # call update_her_uniform + # call play_sound("door") + # call her_chibi("stand","mid","base") + # with d3 + + # call play_music("hermione") + # her "" ("base", "base", "base", "mid", xpos="base", ypos="base") + + # #Unlocks rewards. + # call unlock_clothing(text = ">New clothing items for Hermione have been unlocked!", item = hg_muggle_cold_sexy_ITEM) + + if hermione_outfits_schedule: + $ hermione.equip_random_outfit() + + if not config.developer and not tutorial_is_done("schedule") and hermione_wardrobe_unlocked: + call play_sound("door") + call her_chibi("stand","mid","base") + with d3 + + call play_music("hermione") + + her "Hello, [genie_name]." ("open", "base", "base", "R", xpos="base", ypos="base", trans=d3) + her "" ("base", "base", "base", "mid", xpos="base", ypos="base") + pause 1.0 + gen "You changed your clothes again..." ("base", xpos="far_left", ypos="head") + + call tutorial("schedule") + + menu: + "Leave Outfits Scheduling turned {b}ON{/b}?" + + "Yes": + "Outfits scheduling remains turned {b}ON{/b}." + "No": + $ hermione_outfits_schedule = False + $ tonks_outfits_schedule = False + $ cho_outfits_schedule = False + $ astoria_outfits_schedule = False + $ luna_outfits_schedule = False + # Susan + + "Outfit scheduling turned {b}Off{/b}." + + $ hermione.equip(her_outfit_default) + with fade + + return + + call play_sound("door") + call her_chibi("stand","mid","base") + with d3 + + #Hermione greeting. + call play_music("hermione") + + if her_mood > 0: + if 5 > her_mood >= 1: + her "Yes, [genie_name]?" ("soft", "base", "worried", "mid", xpos="base", ypos="base", trans=d3) + elif 10 > her_mood >= 5: + her "*sigh*... Yes, [genie_name]?" ("annoyed", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + elif 20 > her_mood >= 10: + her "What is it, [genie_name]?" ("open", "closed", "annoyed", "mid", xpos="base", ypos="base", trans=d3) + her "" ("upset", "base", "annoyed", "mid") + elif 30 > her_mood >= 20: + her "What do you want, \"[genie_name]\"?" ("upset", "squint", "angry", "R", xpos="base", ypos="base", trans=d3) + elif 40 > her_mood >= 30: + her "*Hmph*..." ("normal", "squint", "angry", "R", xpos="base", ypos="base", trans=d3) + elif 50 > her_mood >= 40: + her "*Tsk*" ("angry", "base", "angry", "R", xpos="base", ypos="base", trans=d3) + elif her_mood >= 50: + her "I have nothing to tell you, sir!" ("mad", "narrow", "angry", "L", xpos="base", ypos="base", trans=d3) + + call describe_mood("Hermione", her_mood) + call tutorial("moodngifts") + else: + if game.daytime: + her "Good morning, [genie_name]." ("base", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + else: + her "Good evening, [genie_name]." ("base", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + return diff --git a/game/scripts/characters/hermione/events/collar_event_INCOMPLETE.txt b/game/scripts/characters/hermione/events/collar_event_INCOMPLETE.txt new file mode 100644 index 00000000..aff04eaa --- /dev/null +++ b/game/scripts/characters/hermione/events/collar_event_INCOMPLETE.txt @@ -0,0 +1,51 @@ +### Reserved for future collar events +## Note: Initially was a part of "flasher" event, but could perhaps be used on a new collar later ## + # "\"How about you touch yourself for me?\"": + # if her_whoring < 19: # + # her "What?!" ("base", "base", "base", "mid") + # gen "We both know how much you're enjoying this.. Why not show me just how much?" ("base", xpos="far_left", ypos="head") + # her "I-- I'm not! The collar is lying!" ("base", "base", "base", "mid") + # call nar(">The collar tugs once more on Hermione's nipples.") + # her "*Ah*..." ("base", "base", "base", "mid") # horny + # her "..." ("base", "base", "base", "mid") # mortified + # gen "You sure about that?" ("base", xpos="far_left", ypos="head") + # her "*Hmph*!" ("base", "base", "base", "mid") + # call nar(">Hermione rips the collar from her neck and throws it to the ground and with it a flash of magic appears.") + # + # #TODO White flash (magic sound) + # $ hermione.equip(her_outfit_last) + # + # gen "Hey, be careful with that!" ("base", xpos="far_left", ypos="head") + # call her_walk(action="leave") + # #TODO slams door + # + # gen "(*Hmm*... Guess the magic wasn't strong enough for that...)" ("base", xpos="far_left", ypos="head") + # + # #TODO add check for section message if Flasher collar is already unlocked in wardrobe + # gen "(What am I supposed to do that collar now...)" ("base", xpos="far_left", ypos="head") + # gen "Maybe I could convince her to wear it later..." ("base", xpos="far_left", ypos="head") + # ## Flasher collar added to wardrobe unlock message## #TODO + # #call give_reward("\"Flasher\" collar has been added to your wardrobe.") + # + # $ current_payout = 0 + # jump end_hermione_event + # else: #Masturbates + # if not hg_masturbated.trigger: + # her "You want me to--" ("base", "base", "base", "mid") + # gen "Masturbate for me... Yes." ("base", xpos="far_left", ypos="head") + # gen "That shouldn't be a problem right?" ("base", xpos="far_left", ypos="head") + # gen "Since we both know how much you're enjoying being naked and all." ("base", xpos="far_left", ypos="head") + # her "*Hmph*" ("base", "base", "base", "mid") #blush looks away but not mad + # else: + # her "Again?" ("base", "base", "base", "mid") + # gen "That's right..." ("base", xpos="far_left", ypos="head") + # gen "We both know how much you're getting off on standing here like that, it'd be cruel not to let you touch yourself..." ("base", xpos="far_left", ypos="head") + # her "..." ("base", "base", "base", "mid") + # gen "I'll even throw in some points for you." ("base", xpos="far_left", ypos="head") + # gen "How does twenty points sound to you?" ("base", xpos="far_left", ypos="head") + # her "I suppose if I'm doing it for points..." ("base", "base", "base", "mid") + # gen "You're doing it for yourself, the points is just an encouragement..." ("base", xpos="far_left", ypos="head") + # her "Fine...{w=0.4} I'll do it..." ("base", "base", "base", "mid") + # $ current_payout = 20 + # + # #TODO write masturbate section diff --git a/game/scripts/characters/hermione/events/costumes_NOT_IN_USE.txt b/game/scripts/characters/hermione/events/costumes_NOT_IN_USE.txt new file mode 100644 index 00000000..95e24ac7 --- /dev/null +++ b/game/scripts/characters/hermione/events/costumes_NOT_IN_USE.txt @@ -0,0 +1,71 @@ + +#TODO Review unused costume event +###COSTUME SCENES +label costume_scene_1: #Maid role-play + her "A costume? What on earth do you need me to dress up for?" ("angry", "wide", "base", "stare") + gen "[hermione_name], have you ever heard of the term role-play?" ("base", xpos="far_left", ypos="head") + her "role-play?" ("smile", "narrow", "base", "mid_soft") + gen "It's where you pretend to be someone you're not." ("base", xpos="far_left", ypos="head") + her "I gathered that much but why would I want to do that?" ("smile", "narrow", "base", "mid_soft") + gen "Because it can be fun!" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Who would I be role-playing?" ("smile", "narrow", "base", "mid_soft") + gen "Well I was thinking seeing as how I purchased you that lovely new cleaning outfit." ("base", xpos="far_left", ypos="head") + gen "You could play the role of my personal maid." ("base", xpos="far_left", ypos="head") + if her_whoring < 17: + her "And how much would this \"personal maid\" be paid?" ("smile", "narrow", "base", "mid_soft") + gen "Thirty-five points sounds fair." ("base", xpos="far_left", ypos="head") + her "..." ("smile", "narrow", "base", "mid_soft") + her "Let me go change." ("smile", "narrow", "base", "mid_soft") + $ hermione.equip(her_outfit_maid) + her "" ("smile", "narrow", "base", "mid_soft") + call ctc + + her "Well?" ("smile", "narrow", "base", "mid_soft") + gen "You certainly look the part. The question is can you act the part?" ("base", xpos="far_left", ypos="head") + her "Act? I thought you just wanted me to clean your room?" ("smile", "narrow", "base", "mid_soft") + gen "Where's the fun in that? If I wanted a clean room, I'd just get those ugly dwarves to do it." ("base", xpos="far_left", ypos="head") + her "House-elves." ("smile", "narrow", "base", "mid_soft") + gen "Whatever. Anyway I want you to act like a sexy french maid." ("base", xpos="far_left", ypos="head") + her "Why does it have to be french?" + gen "Must I explain everything?" ("base", xpos="far_left", ypos="head") + her "Fine..." ("smile", "narrow", "base", "mid_soft") + her "Is there anything you need cleaned today sir?" ("smile", "narrow", "base", "mid_soft") + gen "At least try to do the accent." ("base", xpos="far_left", ypos="head") + her "..." ("smile", "narrow", "base", "mid_soft") + her "Is there anything that you need cleaned today Monsieur?" ("mad", "base", "angry", "mid",cheeks="blush") + gen "Much better." ("base", xpos="far_left", ypos="head") + her "Thank you Monsieur." ("smile", "narrow", "base", "mid_soft") + gen "Now as for your cleaning I think that the fireplace could you a good dusting." ("base", xpos="far_left", ypos="head") + her "As you command Monsieur!" ("smile", "narrow", "base", "mid_soft") + ">Hermione stands on her toes to reach the mantelpiece giving you a lovely view of the top of her stockings." + gen "That's it, just a little higher." ("base", xpos="far_left", ypos="head") + ">You reach under the desk and start to stroke your cock." + her "..." + her "Ooh-la-la, You wouldn't happen to be doing anything naughty under that table would you now Monsieur?" + gen "Of course not mademoiselle, just an itch, now back to cleaning." ("base", xpos="far_left", ypos="head") + her "Yes yes." + ">She resumes dusting the mantelpiece, reaching even higher this time." + ">You can now almost make out the start of her bottom." + her "Oh my! When was the last time this was cleaned?" + gen "I couldn't say..." ("base", xpos="far_left", ypos="head") + her "It's so dirty! I will have to put all my effort into this." + ">She starts making small hops with each dust to reach the top of the books." + gen "That's it. I think you might have missed a spot near the bottom however." ("base", xpos="far_left", ypos="head") + her "Did I? How about this." + ">She bends over in front of you, giving you a clear view up her skirt." + gen "That's it." ("base", xpos="far_left", ypos="head") + ">You erupt underneath your desk, shooting spunk up and over it and onto the floor." + her "Monsieur! You are so naughty!" + her "Making a mess as I am cleaning up this filthy filthy room." + her "At this rate I'll never be done!" + gen "Well you're cleaning was responsible for this mess." ("base", xpos="far_left", ypos="head") + her "*Hmm*... I suppose you are right as always Monsieur, I better start cleaning." + ">Hermione drops to her knees and starts wiping up your cum." + her "Such a big mess!" + ">Hermione cleans up your cum from the floor and table." + her "Well how did I do?" + gen "Very well indeed! You've taken to role-play like a duck to water." ("base", xpos="far_left", ypos="head") + gen "Forty points to Gryffindor." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]." + + return diff --git a/game/scripts/characters/hermione/events/favors/dance_for_me.rpy b/game/scripts/characters/hermione/events/favors/dance_for_me.rpy new file mode 100644 index 00000000..dded9b0c --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/dance_for_me.rpy @@ -0,0 +1,1593 @@ + + +### Hermione Dance ### + +#TODO Add her_main(animation=bob) to parts where she's dancing + +label hg_pf_strip: + + if hg_pf_strip.counter < 1: + gen "{size=-4}(Ask her to dance for me?){/size}" ("base", xpos="far_left", ypos="head") + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + + # Start Event + $ current_payout = 35 + $ hg_pf_strip.start() + + # End Event + label end_hg_pf_strip: + + # Setup + stop music fadeout 1.0 + call hide_characters + show screen blkfade + with d3 + + call sna_chibi("hide") + call her_chibi("stand","desk","base", flip=False) + call gen_chibi("sit_behind_desk") + + $ hermione.set_cum(None) + $ hermione.wear("all") + + hide screen blkfade + if her_mood != 0: + her "" ("annoyed", "base", "angry", "mid", xpos="mid", ypos="base", trans=blackfade) + else: + her "" ("normal", "squint", "base", "mid", xpos="mid", ypos="base", trans=blackfade) + + # Points + gen "{number=current_payout} points to the Gryffindor house." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]..." ("soft", "base", "base", "R") + + # Hermione leaves + call her_walk("door", "base") + call her_chibi("leave") + + # Increase level + if her_tier == 3: + if her_whoring < 12: # Points til 12 + $ her_whoring += 1 + + if her_tier == 4: + if her_whoring < 18: # Points til 18 + $ her_whoring += 1 + + jump end_hermione_event + +### Fail Events ### + +label hg_pf_strip_fail: + call bld + gen "[hermione_name], I need you to dance for me a little." ("base", xpos="far_left", ypos="head") + her "You want me to..." ("soft", "wide", "base", "stare") + + her "... dance for you, [genie_name]?" ("open", "wide", "base", "stare") + + $ hg_pf_strip.fail_intentional() + + jump too_much + +label hg_pf_strip_T2_fail_intro: # Hermione starts dancing, but it will fail anyway. + call bld + gen "[hermione_name], I need you to dance for me a little." ("base", xpos="far_left", ypos="head") + her "You want me to..." ("open", "base", "worried", "mid") + her "... dance for you, [genie_name]?" ("open", "wink", "base", "mid") + gen "Yes... You think you could manage that?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... I suppose so..." ("soft", "base", "base", "R") + her "Am I getting paid for this?" + gen "Of course, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "So... Just a little dancing then..." ("annoyed", "base", "worried", "R") + gen "Whenever you're ready..." ("base", xpos="far_left", ypos="head") + her "................." + hide hermione_main + with d3 + + call nar(">Hermione starts dancing...") + + stop music fadeout 1.0 + hide screen bld1 + call her_chibi("dance","mid","base") + with d3 + pause.2 + + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + her "{size=-5}(...........................................){/size}" ("disgust", "narrow", "base", "down", cheeks="blush", ypos="head", flip=False) + her "{size=-5}(This is silly...){/size}" ("annoyed", "narrow", "angry", "R", cheeks="blush") + call nar(">Hermione looks embarrassed but she keeps on \"dancing\"...") + gen "..................." ("base", xpos="far_left", ypos="head") + her "{size=-5}(...........................................){/size}" ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Alright, you can start undressing now." ("base", xpos="far_left", ypos="head") + + call her_chibi("stand","mid","base") #Hermione stands still. + with hpunch + + show screen blktone + her "??!" ("mad", "wide", "base", "stare", cheeks="blush") + gen "Take off those clothes..." ("base", xpos="far_left", ypos="head") + her "You want me to...?" ("disgust", "narrow", "base", "down", cheeks="blush") + + hide screen blktone + her "[genie_name]!" ("angry", "base", "angry", "mid", cheeks="blush") + her "This is ridiculous on a whole other level!" ("angry", "closed", "angry", "mid", cheeks="blush") + her "I won't let myself be forced to become some cheap stripper!!!" ("mad", "wide", "base", "stare", cheeks="blush") + gen "Nobody is forcing you to do this." ("base", xpos="far_left", ypos="head") + gen "If you don't need the points, please feel free to leave." ("base", xpos="far_left", ypos="head") + her "Yes. I believe you're right Sir." ("soft", "closed", "angry", "mid") + her "Stripping for you won't be worth {b}any{/b} amount of points!" ("angry", "base", "angry", "mid") + her "I will be leaving now!" ("annoyed", "base", "angry", "mid") + + call her_walk(action="leave") + + $ her_mood += 5 + $ hg_pf_strip.fail_intentional() + + jump end_hermione_event + +label hg_pf_strip_T2_fail_repeat: + call bld + gen "[hermione_name], I need you to dance for me a little." ("base", xpos="far_left", ypos="head") + her "And would you like me to take off my clothes as well?" ("soft", "closed", "base", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "No! I will not!" ("scream", "base", "angry", "mid") + her "And I'd appreciate it if you'd stop making such outrageous requests..." ("annoyed", "base", "angry", "mid") + gen "You will get points for it..." ("base", xpos="far_left", ypos="head") + her "Shove those points up your--" ("angry", "closed", "angry", "mid") + her "I will be leaving now..." ("annoyed", "base", "angry", "mid") + her "Good day, Sir..." ("annoyed", "narrow", "angry", "R") + + call her_walk(action="leave") + + $ her_mood += 5 + $ hg_pf_strip.fail_intentional() + + jump end_hermione_event + +### Tier 3 ### + +# Event 1 (i) - Hermione tries to stip for you but fails. +# Event 2 (i) - Hermione strips for you on your desk. Snape then enters. +# Event 3 (r) - Hermione strips for. You will get some event choices. + +label hg_pf_strip_T3_intro_E1: # Complete + call bld + gen "[hermione_name], I need you to dance for me a little." ("base", xpos="far_left", ypos="head") + her "You want me to..." ("open", "base", "worried", "mid") + her "... dance for you, [genie_name]?" ("open", "wink", "base", "mid") + gen "Yes... You think you could manage that?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... I suppose so..." ("soft", "base", "base", "R") + her "Am I getting paid for this?" + gen "Of course, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "So... Just a little dancing then..." ("annoyed", "base", "worried", "R") + gen "Whenever you're ready..." ("base", xpos="far_left", ypos="head") + her "................." + hide hermione_main + with d3 + + call nar(">Hermione starts dancing...","start") + + stop music fadeout 1.0 + hide screen bld1 + call her_chibi("dance","mid","base") + with d3 + pause.2 + + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + her "{size=-5}(...........................................){/size}" ("disgust", "narrow", "base", "down", cheeks="blush", ypos="head", flip=False) + her "{size=-5}(This is silly...){/size}" ("annoyed", "narrow", "angry", "R", cheeks="blush") + call nar(">Hermione looks embarrassed but she keeps on \"dancing\"...") + gen "..................." ("base", xpos="far_left", ypos="head") + her "{size=-5}(...........................................){/size}" ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Alright, you can start undressing now." ("base", xpos="far_left", ypos="head") + + call her_chibi("stand","mid","base") #Hermione stands still. + with hpunch + + her "??!" ("mad", "wide", "base", "stare", cheeks="blush") + her "I thought all I had to do was dance?" ("angry", "base", "angry", "mid") + call play_music("playful_tension") # SEX THEME. + gen "Really? That's adorable." ("base", xpos="far_left", ypos="head") + + if hermione.is_any_worn("top", "bottom", "robe", "accessory"): + gen "Now start taking off those clothes." ("base", xpos="far_left", ypos="head") + show screen blktone + her "You want me to... strip dance for you...?" ("disgust", "narrow", "base", "down", cheeks="blush") + else: + gen "Now take off your underwear." ("base", xpos="far_left", ypos="head") + show screen blktone + her "You want me to... Take off my underwear...?" ("disgust", "narrow", "base", "down", cheeks="blush") + + gen "Yes. And I expect you to do it today, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "[genie_name]!" ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Don't you raise your voice at me, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her ".....!!?" ("mad", "wide", "base", "stare", cheeks="blush") + gen "Nobody is forcing you to do this." ("base", xpos="far_left", ypos="head") + gen "I am doing you a favour!" ("base", xpos="far_left", ypos="head") + gen "If you don't need the points, please feel free to leave." ("base", xpos="far_left", ypos="head") + her "....................." ("angry", "base", "angry", "mid") + her "......................................." ("disgust", "narrow", "base", "down", cheeks="blush") + + hide screen blktone + call nar(">Hermione starts dancing again...") + + call her_chibi("dance","mid","base") #Chibi takes off the vest here btw but Hermione does not even if she's wearing it + with d5 + + her "{size=-5}(...........................................){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "What are you waiting for then?" ("base", xpos="far_left", ypos="head") + + her "............................................................." ("disgust", "narrow", "base", "down", cheeks="blush") + call nar(">Hermione gives you a confused look...") + + pause .5 + show screen blktone + her "{size=-5}(Am I really going to do this?){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush", xpos="base", ypos="base", trans=fade) + hide screen blktone + + if hermione.is_any_worn("robe", "accessory"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe", "accessory") + her "..." ("disgust", "narrow", "base", "down", cheeks="blush") + + + menu: #Hermione always wears underwear at this level + gen "......................." ("base", xpos="far_left", ypos="head") + "\"Now, get rid of your bottoms!\"" if hermione.is_worn("bottom", "panties"): + her "................................." ("angry", "happyCl", "worried", "mid", cheeks="blush") + call nar(">Hermione starts taking off her bottoms...","start") + ">She seems very hesitant and takes her time..." + call nar(">Finally she takes a deep breath and takes them off...","end") + + her "{size=-5}(Here it comes then...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-5}(For the honour of Gryffindor....){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + pause .2 + + $ hermione.strip("bottom") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + call ctc + pause .5 + + gen "..............." ("base", xpos="far_left", ypos="head") + her "{size=-5}(.........................................){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + call nar(">Hermione keeps on dancing...") + if hermione.is_worn("top"): + gen "Alright, your top is next!" ("base", xpos="far_left", ypos="head") + her "My top....?" ("disgust", "narrow", "worried", "down", cheeks="blush") + else: + gen "Alright, your bra is next!" ("base", xpos="far_left", ypos="head") + her "My bra....?" ("disgust", "narrow", "worried", "down", cheeks="blush") + hide hermione_main + with d3 + + call nar(">Hermione looks extremely embarrassed...","start") + call nar(">She clumsily shakes her body to and fro...","end") + + "\"Now, take off your top!\"" if hermione.is_worn("top", "bra"): + her "................................." ("angry", "happyCl", "worried", "mid", cheeks="blush") + call nar(">Hermione starts taking off her top...","start") + ">She seems very hesitant and takes her time..." + call nar(">Finally she takes a deep breath and removes her top...","end") + + her "{size=-5}(Alright, here it comes...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-5}(For the honour of Gryffindor!){/size}" ("angry", "base", "worried", "mid", cheeks="blush") + pause .2 + + $ hermione.strip("top") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + call ctc + + if hermione.is_worn("bra"): + gen "And your bra..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "base", "angry", "mid") + $ hermione.strip("bra") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + call ctc + her "{size=-5}(I...{w=0.4} I did it...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + else: + her "{size=-5}(I actually did it...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + + her "{size=-5}(He can see my breasts while I'm dancing for him...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-5}(This is so demeaning...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-5}(But I am doing this for my house...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + + gen "Not bad..." ("base", xpos="far_left", ypos="head") + her "{size=-5}(.........................................){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + + call nar(">Hermione is topless now...","start") + ">She keeps on dancing but seems very restricted in her movements now. Even more so than before..." + call nar(">It seems like she's desperately trying to prevent her breasts from bouncing or swaying...","end") + + if hermione.is_worn("bottom"): + gen "Alright, your bottoms are next!" ("base", xpos="far_left", ypos="head") + else: + gen "Alright, your panties are next!" ("base", xpos="far_left", ypos="head") + her "...................." ("angry", "happyCl", "worried", "mid", cheeks="blush") + hide hermione_main + with d3 + + call nar(">Hermione looks extremely embarrassed...","start") + call nar(">Her fingers shaking as she fumbles somewhat...","end") + "\"Get rid of your bra!\"" if not hermione.is_worn("top"): + her "{size=-5}(Okay then...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-5}(For the honour of Gryffindor!){/size}" ("angry", "base", "worried", "mid", cheeks="blush") + + $ hermione.strip("bra") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + call ctc + + her "{size=-5}(I...{w=0.4} I did it...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-5}(He can see my breasts while I'm dancing for him...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-5}(This is so demeaning...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-5}(But I am doing this for my house...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + + gen "Not bad..." ("base", xpos="far_left", ypos="head") + her "{size=-5}(.........................................){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + + call nar(">Hermione is topless now...","start") + ">She keeps on dancing but seems very restricted in her movements now. Even more so than before..." + call nar(">It seems like she's desperately trying to prevent her breasts from bouncing or swaying...","end") + + if hermione.is_worn("bottom"): + gen "Alright, your bottoms are next!" ("base", xpos="far_left", ypos="head") + her "...................." ("angry", "happyCl", "worried", "mid", cheeks="blush") + + $ hermione.strip("bottom") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + call ctc + pause .5 + + gen "Nice..." ("base", xpos="far_left", ypos="head") + gen "Now then, your panties!" ("base", xpos="far_left", ypos="head") + else: + gen "Alright, your panties are next!" ("base", xpos="far_left", ypos="head") + her "...................." ("angry", "happyCl", "worried", "mid", cheeks="blush") + hide hermione_main + with d3 + + call nar(">Hermione looks extremely embarrassed...","start") + call nar(">Her fingers shaking as she fumbles somewhat...","end") + "\"Take off your panties!\"" if not hermione.is_worn("bottom"): + hide hermione_main + with d3 + + call nar(">Hermione looks at your pleadingly...","start") + call nar(">Her fingers shake slightly as she begins moving them towards her panties...","end") + + gen "That's it..." ("base", xpos="far_left", ypos="head") + + call nar(">Glancing up at you, she hesitates for a moment...","start") + call nar(">And you watch as she moves her hands away from her panties...","end") + + stop music fadeout 1.0 + gen "What's the problem, [hermione_name]?" ("base", xpos="far_left", ypos="head") + call play_music("sad") + + her "I'm sorry, [genie_name]..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "I...{w=0.4} I'm trying..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "But my hands..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "Why is this so hard! *sob*" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "No, I can't do this, [genie_name]! *sob*" ("open", "wide", "worried", "stare", cheeks="blush", tears="messy") + gen "What?" ("base", xpos="far_left", ypos="head") + her "I thought I could, but..." ("angry", "squint", "base", "mid", cheeks="blush", trans=fade) + her "Strip dancing for points, [genie_name]?" ("angry", "squint", "base", "mid", cheeks="blush") + her "People look up to me in this school!" ("angry", "squint", "base", "mid", cheeks="blush") + her "I have a reputation...*sob*" ("angry", "squint", "base", "mid", cheeks="blush") + her "And If I do this..." ("scream", "base", "angry", "mid", cheeks="blush", tears="messy") + show screen blkfade + with d5 + + ">Hermione quickly puts her clothes back on..." + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.wear("all") + call her_chibi("stand","desk","base") + + hide screen blkfade + her "[genie_name], I think I'd better go now... *Sob!*" ("angry", "squint", "base", "mid", cheeks="blush", tears="messy", trans=fade) + + menu: + "\"Alright. I had fun. Here are your points.\"": + her "Really? I didn't ruin it completely then?" ("soft", "base", "base", "R", tears="soft") + + jump end_hg_pf_strip + + "\"Sure. You will receive no points though.\"": + her "[genie_name]... I may not be very good at this..." ("open", "base", "base", "mid", tears="mascara_crying") + her "But I did my best... I think I deserve some--" (tears="mascara_crying") + gen "Just make sure you try harder next time, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Next time?!" ("open", "base", "base", "mid", tears="mascara_crying") + her "I assure you, [genie_name], there will be no next time..." ("angry", "base", "angry", "mid", cheeks="blush", tears="mascara") + gen "We'll see..." ("base", xpos="far_left", ypos="head") + her "*Tsk*!" ("disgust", "narrow", "base", "mid_soft", tears="mascara") + + call her_walk(action="leave") + + # Event does not fail. She just gets mad, but no whoring increase. + $ her_mood += 25 + + jump end_hermione_event + +label hg_pf_strip_T3_intro_E2: + call bld + gen "[hermione_name], I need you to dance for me." ("base", xpos="far_left", ypos="head") + her "That again, [genie_name]...?" ("disgust", "narrow", "base", "mid_soft") + gen "You will get paid accordingly of course..." ("base", xpos="far_left", ypos="head") + her "............................" ("annoyed", "narrow", "angry", "R") + her "And you expect me to... *Ehm*..." ("annoyed", "narrow", "angry", "R") + gen "Take your clothes off. Naturally." ("base", xpos="far_left", ypos="head") + stop music fadeout 1.0 + + show screen blktone + her "......................" ("annoyed", "narrow", "angry", "R") + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "Well, why not?" ("disgust", "narrow", "base", "mid_soft") + her "Yes, I don't see why not!" ("scream", "base", "angry", "mid", emote="angry") + gen "*Hmm*...? {size=-4}(Look at her, so eager all of a sudden...){/size}" ("base", xpos="far_left", ypos="head") + her "After all, as a pupil I am meant to obey your every order, isn't that right, [genie_name]?!" ("scream", "closed", "angry", "mid") + gen "...................." ("base", xpos="far_left", ypos="head") + her "If the Headmaster tells me to strip for him, Then I shall strip!!!" ("scream", "closed", "angry", "mid") + her "Do I find this extremely inappropriate, disgraceful, and humiliating?" ("angry", "base", "angry", "mid") + her "Of course not. What nonsense!" ("scream", "closed", "angry", "mid") + gen ".............." ("base", xpos="far_left", ypos="head") + her "Ha! Might as well do this the proper way!" ("angry", "base", "angry", "mid") + + call hide_characters + hide screen bld1 + hide screen blktone + with d3 + pause.2 + + gen "??!" ("base", xpos="far_left", ypos="head") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + $ renpy.play('sounds/08_hop_on_desk.ogg') #Sound of the desk squeaking. + pause 3 + gen "!!!!!!" ("angry", xpos="far_left", ypos="head") + ">To your surprise, Hermione just hops onto your desk and starts dancing frantically..." + + call her_chibi("dance","on_desk","on_desk") + + hide screen blkfade + with fade + pause.5 + + her "If I must degrade myself in order to protect the honour of my house..." ("scream", "closed", "angry", "mid", xpos="mid", ypos="base") + + her "So be it then!" ("scream", "base", "angry", "mid", emote="angry") + her "Just..." ("open", "narrow", "worried", "down") + if hermione.is_any_worn("robe", "accessory"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe", "accessory") + + her "*groan*" ("clench", "narrow", "base", "down") + + $ d_flag_01 = False + if hermione.is_worn("top"): + $ d_flag_01 = True + call nar(">Hermione begins taking off her top...") + call nar(">Pulling at the fabric in anger, making it more difficult than it should be...") + her "Why won't it....?!" + her "There!" ("annoyed", "narrow", "annoyed", "mid") + call nar(">Hermione finally manages to untangle herself and sends her top flying to the other side of the room...") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top") + call ctc + pause .5 + + else: + call nar(">The girl seems to contemplate about which piece of clothing she should take off first...") + pause.1 + + if hermione.is_worn("bottom"): + her "Let's take these bottoms off then shall we?" ("scream", "closed", "angry", "mid") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Yes, that's right. Take it off!\"": + her "Of course!" + her "Here it goes!" ("open", "narrow", "worried", "down") + "\"You need to calm down, [hermione_name].\"": + her "Well, {size=+7}EXCUSE ME{/size}, [genie_name]!" + her "You told me to strip for you, but you never told me your preferences in regards to the pace!" + gen "Well, I'm telling you now, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "Too late!" ("angry", "base", "angry", "mid") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bottom") + call ctc + pause .5 + + call nar(">Hermione sends her bottoms flying across the room, just like she did with her top a moment earlier...") + else: + her "Alright then, let's do this thing!" ("scream", "closed", "angry", "mid") + + gen "{size=-4}(Wow, she is getting really worked up over this...){/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-4}(Maybe it was still too early to--{/size}" ("base", xpos="far_left", ypos="head") + her "Clothes?!!" ("disgust", "narrow", "base", "mid_soft") + her "{size=+9}I don't need them!{/size}" ("scream", "base", "angry", "mid", emote="angry") + if hermione.is_worn("bra"): #Should be on at this level but might as well have the check + call nar(">Hermione keeps dancing angrily, and then...") + her "" ("angry", "base", "angry", "mid") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bra") + pause.2 + gen "{size=-4}(When did she??!){/size}" ("angry", xpos="far_left", ypos="head") + call ctc + + her "Are you enjoying this, [genie_name]?" + her "" ("angry", "base", "angry", "mid") + + her "Shall I shake my breasts for you like one of those harlots?" ("scream", "closed", "angry", "mid") + gen "Well--" ("base", xpos="far_left", ypos="head") + her "Of course! Why wouldn't I degrade myself for your pleasure?!" + her "This is completely {size=+7}acceptable!{/size}" ("scream", "base", "angry", "mid", emote="angry") + her "" ("angry", "base", "angry", "mid") + + pause.2 + call nar(">Hermione is starting to shake her naked breasts rather clumsily...","start") + call nar(">As you watch the girl's tits sway right and left you find yourself fighting the urge to...","end") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-Grab them!-": + gen "{size=-4}(Yes, just get my hands on these ample titties, that's what I want to do!){/size}" ("grin", xpos="far_left", ypos="head") + gen "{size=-4}(Maybe pull on them a little, yes...){/size}" ("grin", xpos="far_left", ypos="head") + call slap_her #Calls slapping sound and visual. + her "" ("disgust", "wide", "base", "stare") + pause.2 + call slap_her #Calls slapping sound and visual. + her "" ("shock", "wide", "worried", "shocked") + pause.2 + + "-Slap them!-": + gen "{size=-4}(I want to slap the crap out of her fun bags.){/size}" ("base", xpos="far_left", ypos="head") + call slap_her #Calls slapping sound and visual. + her "" ("disgust", "wide", "base", "stare") + pause.2 + gen "{size=-4}(Yes, just slap them around a little...){/size}" ("grin", xpos="far_left", ypos="head") + call slap_her #Calls slapping sound and visual. + her "" ("shock", "wide", "worried", "shocked") + pause.2 + + "-Bite on them!-": + gen "{size=-4}(Is it weird that I feel like sinking my teeth into her tits?){/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-4}(No, it's not weird!){/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-4}(Just a couple of gentle love-bites!){/size}" ("base", xpos="far_left", ypos="head") + call kiss_her + her "" ("shock", "wide", "base", "stare", tears="soft") + pause.2 + gen "{size=-4}(Yes... Maybe more than just a couple...){/size}" ("grin", xpos="far_left", ypos="head") + her "" ("disgust", "happyCl", "worried", "mid", tears="soft_blink") + pause.2 + call kiss_her + call kiss_her + pause.2 + + "-Motorboat them!-": + gen "{size=-4}(I'm going to put my face right in between them!){/size}" ("base", xpos="far_left", ypos="head") + call kiss_her + her "" ("shock", "happyCl", "worried", "mid") + pause.2 + gen "{size=-4}(Yes, motor boating these titties is be the best!){/size}" ("grin", xpos="far_left", ypos="head") + her "" ("shock", "wide", "worried", "shocked") + pause.2 + + call nar(">While you are having fun with her tits, Hermione keeps on dancing...","start") + + her "(Dancing naked in front of the headmaster...)" ("soft", "wide", "worried", "shocked") + her "(Letting him touch my breasts...)" ("disgust", "wide", "worried", "shocked") + her "(If my parents knew about this they would lose their minds...)" ("soft", "wide", "worried", "shocked") + her "(Especially my father...)" ("annoyed", "closed", "base", "mid") + ">Hermione is starting to shake her tits again..." + her "(Hermione Granger - the stripper...)" + her "(Forgive me father...)" ("annoyed", "narrow", "base", "dead") + + ">Hermione puts her hands on her tits and starts squeezing them..." + ">You can only assume that she means to look seductive, but she just looks awkward and ashamed." + her "(I used to be a top student...{w=0.4} Used to have standards...)" + ">Hermione clutches her tits even harder and then gives them a couple of twists..." + ">Almost looking as if she is mad at her own breasts and trying her best to punish them..." + + call nar(">You find the thought strangely arousing...","end") + + #TODO Hermione chibi: Stand in panties only (blinking?) + call her_chibi("dance_pause","on_desk","on_desk") + call ctc + + her "Well, I hope you enjoyed yourself, [genie_name]!" ("open", "narrow", "annoyed", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + her "I would like to get paid now..." ("open", "closed", "angry", "mid") + if hermione.is_worn("panties"): #Should be on at this level but might as well have the check + gen "Aren't you forgetting something, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "[genie_name]...?" ("open", "narrow", "annoyed", "mid") + gen "Your panties...?" ("base", xpos="far_left", ypos="head") + her "My panties?" ("open", "wide", "base", "stare") + her "But, they always leave them on!" + gen "Who exactly are \"they\"?" ("base", xpos="far_left", ypos="head") + gen "Strippers in kid's cartoons?" ("base", xpos="far_left", ypos="head") + gen "Stripping is stripping, [hermione_name]!" ("base", xpos="far_left", ypos="head") + gen "Now take off your panties!" ("base", xpos="far_left", ypos="head") + her "................" ("angry", "wide", "base", "stare") + + call nar(">Hermione looks at you horror-struck. All of her anger now gone...","start") + her "................." ("annoyed", "closed", "base", "mid") + ">Without saying another word..." + call nar(">She starts pulling down her panties...","end") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("panties") + + gen "There it is!" ("grin", xpos="far_left", ypos="head") + her "There, can I get paid now?" ("open", "closed", "angry", "mid") + + gen "*Hmm*... Well I'm not sure we're quite done here yet..." ("base", xpos="far_left", ypos="head") + her "..." ("upset", "squint", "annoyed", "mid") + $ hermione.strip("all") + her "" ("angry", "narrow", "base", "down") + + + #TODO Hermione chibi: Stand naked blinking (ch_hem blink_n) + call her_chibi("dance_pause","on_desk","on_desk") + her "" ("annoyed", "happyCl", "worried", "mid", cheeks="blush") + pause.2 + + gen "How about you--" ("grin", xpos="far_left", ypos="head") + + hide screen blktone + hide screen bld1 + hide hermione_main + with d1 + + stop music + + call sna_walk(action="enter", xpos="mid", ypos="base") + + sna "Listen, Genie. I've been think--" ("snape_01", xpos="base", ypos="base") + + $ renpy.play('sounds/scratch.ogg') + with hpunch + + sna "............................................" ("snape_11") + with hpunch + + call her_chibi("dance_pause","on_desk","on_desk", flip=True) + her "(Professor Snape???????!)" ("angry", "wide", "base", "stare", flip=True) + sna "Miss Granger?" ("snape_12") + + call set_her_action("covering") + her "(No, no... This is not happening. Please...)" ("shock", "happyCl", "worried", "mid", cheeks="blush", trans=d5) + call play_music("playful_tension") # SEX THEME. + gen "...................................." ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Severus, I am busy right now.\"": + sna "Yes... I can see that..." ("snape_13") + her "{size=-7}(I want to die!){/size}" ("angry", "happyCl", "worried", "mid") + + "\"Severus! Please, come join us.\"": + $ her_mood += 20 + sna "Seriously?" ("snape_14") + her "([genie_name], no, please.............................)" ("angry", "happyCl", "worried", "mid") + sna "A very tempting offer indeed..." ("snape_13") + her "!!!!!!......." ("angry", "wide", "base", "stare") + sna "Well, maybe some other time..." ("snape_13") + her "{size=-5}(There will be no other time!){/size}" ("angry", "happyCl", "worried", "mid") + her "{size=-5}(I will stop selling favours from now on, I swear!){/size}" + + sna "I shall postpone our conversation then, Geni-- *ahem*! Albus." ("snape_12") + sna "Miss Granger..." ("snape_13") + her "................................." ("angry", "happyCl", "worried", "mid") + + call hide_characters + hide screen bld1 + with fade + pause.2 + + call sna_walk(action="leave") + + show screen blkfade + with d5 + + call play_sound("climb_desk") + ">Hermione hastily hops off your desk." + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.wear("bra", "panties", "bottom") + ">She starts putting some clothes back on rather frantically..." + + + + call her_chibi("stand","desk","base") + hide screen blkfade + with d5 + + if d_flag_01: # Wears Top + her "My top! Where's my top?!" ("scream", "happyCl", "worried", "mid", xpos="mid", ypos="base", flip=False) + gen "It's over there, by the fireplace..." ("base", xpos="far_left", ypos="head") + + hide hermione_main + with d3 + pause.2 + + call her_walk("mid", "base") + + her "................................" ("disgust", "narrow", "base", "down", ypos="head", flip=False) + pause.2 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.wear("all") + + call her_chibi("stand","mid","base", flip=True) + pause.2 + + call her_walk("desk", "base") + + her "........................" ("normal", "happyCl", "worried", "mid", xpos="mid", ypos="base", flip=False) + stop music fadeout 2.0 + her "Can I just get my points now, please?" ("angry", "happyCl", "worried", "mid", emote="sweat") + pause.5 + + if not hg_strip.trigger: + $ achievements.unlock("herstrip") + $ hg_pf_strip.change_icon(a="heart_half", b="heart_red") + $ hg_strip.triggered() # .trigger = True, .counter += 1 + $ hg_pf_strip.title = "Strip for Me!" + + jump end_hg_pf_strip + +label hg_pf_strip_T3_E2: + gen "[hermione_name], how about another strip?" ("base", xpos="far_left", ypos="head") + her ".............." ("disgust", "narrow", "base", "mid_soft", xpos="base", ypos="base") + her "I would really rather not, [genie_name]..." + gen "Why? You are getting quite good at it." ("base", xpos="far_left", ypos="head") + her "........................." ("annoyed", "narrow", "annoyed", "mid") + her "{number=current_payout} house points?" ("open", "narrow", "worried", "down") + gen "Sure! The usual rate." ("base", xpos="far_left", ypos="head") + her "..................." ("annoyed", "narrow", "angry", "R") + + if ss_he.hermione_strip: #Turns TRUE after Dance Event 2 and the next Date with Snape. + gen "(*Hmm*... Should I invite Snape to watch as well?)" ("base", xpos="far_left", ypos="head") + + menu: + "-Yes! Hermione needs an audience!-": + jump hg_pf_strip_T3_snape + + "-Nah. That's not a good idea...-": + pass + + # Locks Door. + call hide_characters + hide screen bld1 + with d3 + pause.5 + + call her_walk("door", "base") + + pause.2 + call chibi_emote("thought", "hermione") + pause.5 + call play_sound("lock") + call chibi_emote("hide", "hermione") + pause.2 + + gen "??!" ("base", xpos="far_left", ypos="head") + pause.2 + + + # Walks back. + call her_chibi("stand","door","base") + pause.1 + + call her_walk("mid", "base") + pause.2 + + her "Just in case..." ("annoyed", "narrow", "angry", "R", ypos="head", flip=False) + stop music fadeout 1.0 + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + call play_sound("climb_desk") + pause 2 + call her_chibi("dance","on_desk","on_desk") + hide screen blkfade + with d5 + call ctc + + her "Just for the record..." ("open", "closed", "base", "mid", xpos="mid", ypos="base") + her "I still consider this a highly inappropriate favour to be buying from one of your students, [genie_name]." ("annoyed", "squint", "base", "mid") + gen "Right. And an equally inappropriate favour to be selling to your headmaster. Wouldn't you agree?" ("base", xpos="far_left", ypos="head") + her ".........." ("annoyed", "narrow", "angry", "R") + if hermione.is_any_worn("robe", "accessory"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe", "accessory") + + if hermione.is_worn("top"): + call nar(">Hermione shifts her body towards you and starts taking off her top...") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top") + pause .5 + if hermione.is_worn("bra"): + call nar(">Struggling for a moment she takes off her bra somewhat clumsily...") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bra") + + pause .2 + call ctc + + gen "Yes! The tits!" ("grin", xpos="far_left", ypos="head") + + call play_music("playful_tension") # SEX THEME. + her ".............." ("open", "narrow", "worried", "down") + her "What if my parents were to find out about this, [genie_name]?" ("disgust", "narrow", "base", "down") + her "Mother would never understand..." + her "As for my father..." ("upset", "wink", "base", "mid") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "{size=-3}\"Your father would be proud of you!\"{/size}": + her "I doubt it..." + her "Yes, I am doing this for the right reasons, but..." + her "He would never see it that way..." ("annoyed", "base", "angry", "mid") + her "He must never know about this..." + + "{size=-3}\"Your father would spank you hard!\"{/size}": + her "He would not!" ("shock", "wide", "base", "stare") + her "And I am too old for that anyway..." ("upset", "wink", "base", "mid") + gen "I would say that you are the perfect age for that..." ("grin", xpos="far_left", ypos="head") + her "*huh*?" + her "I do not know what you mean, [genie_name]." ("grin", "happyCl", "worried", "mid", emote="sweat") + + "{size=-3}\"Your father would disown you!\"{/size}": + her "You are probably right, [genie_name]..." ("angry", "happyCl", "worried", "mid", emote="sweat") + her "(Oh father, I am so sorry...)" ("angry", "base", "base", "mid", tears="soft") + her "he must never find out..." ("angry", "base", "base", "mid", tears="soft") + + "{size=-3}\"Your father would love to watch you strip!\"{/size}": + her "He would not! He would be ashamed of me!" ("normal", "happyCl", "worried", "mid") + gen "Are you sure about that?" ("base", xpos="far_left", ypos="head") + her "absolutely! My father is a man of integrity!" ("scream", "happyCl", "worried", "mid") + gen "But he {size=+4}is{/size} a {size=+4}man{/size}, right?" ("base", xpos="far_left", ypos="head") + her "....................." ("annoyed", "narrow", "annoyed", "mid") + her "My father must never know about this..." ("annoyed", "base", "worried", "R") + + + call nar(">Hermione is starting to sway her hips rather seductively...") + + if hermione.is_worn("bottom"): + call nar(">Whilst sliding her bottoms down...") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bottom") + pause.3 + call ctc + + menu: + "-Take your cock out, start jerking off-": + jump hg_pf_strip_T3_masturbate + + "-Show some manners, just watch-": + jump hg_pf_strip_T3_watch + +label hg_pf_strip_T3_watch: + call nar(">You watch Hermione Dance...") + her "(Time for the finishing act I suppose...)" ("angry", "happyCl", "worried", "mid", xpos="mid", ypos="base") + + if hermione.is_worn("panties"): + gen "Yes, [hermione_name]! Take them off!" ("base", xpos="far_left", ypos="head") + her "........" ("annoyed", "closed", "base", "mid") + call nar(">Doing her best to please you, Hermione attempts to undress herself whilst still keeping her dance going.") + call nar(">Bending over slightly she hurriedly slides her panties down...") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + else: + call nar(">Hermione moves her body in an attempted seductive manner.") + call nar(">Your gaze on her current state of undress causing her some difficulties in maintaining her concentration.") + + $ hermione.strip("all") + pause 1.0 + + + call nar(">You can see that she is doing her best to not fall off the desk...","start") + call nar(">But she looks rather ridiculous in her attempts to act like a professional stripper...","end") + + call ctc + + her ".........." ("disgust", "happyCl", "worried", "mid") + call nar(">Hermione performs another set of rather awkward movements...","start") + call nar(">if not for her naked tits bouncing all over the place this would be quite embarrassing...","end") + + gen "................." ("grin", xpos="far_left", ypos="head") + call nar(">A few more clumsy movements before Hermione slumps on her butt...") + + show screen blkfade + with d5 + + call her_chibi("sit_naked","on_desk","on_desk") + + call hide_characters + hide screen bld1 + hide screen blkfade + with d5 + call ctc + + her "I'm sorry, Sir. Was this good enough?..." ("disgust", "narrow", "base", "down", emote="sweat", ypos="head", flip=False) + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "{size=-3}\"Good job, [hermione_name]! You sure know how to dance!\"{/size}": + her ".............." ("disgust", "narrow", "worried", "down") + gen "You have a lot of talent for this!" ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]." ("soft", "base", "worried", "R", emote="sweat") + "{size=-3}\"*Hmm*... This was quite awful...\"{/size}": + $ her_mood += 4 + her "............" ("annoyed", "base", "angry", "mid") + gen "You just need to practise more..." ("base", xpos="far_left", ypos="head") + her "Whatever........." ("annoyed", "narrow", "angry", "R") + "{size=-3}\".................................................\"{/size}": + her "......................." ("silly", "happyCl", "worried", "mid", emote="sweat") + call her_chibi("sit_naked_shocked","on_desk","on_desk") + + hide screen bld1 + call ctc + + jump end_hg_pf_strip + +label hg_pf_strip_T3_masturbate: + show screen blkfade + with d5 + + her "[genie_name]?!" ("open", "wide", "base", "stare", ypos="head", flip=False) + gen "It's alright, [hermione_name]. Don't mind me..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("jerk_off","behind_desk","base") + call her_chibi("dance","on_desk","on_desk") + hide screen blktone + hide screen blkfade + with d5 + call ctc + + call bld + her "B-but..." ("angry", "wide", "base", "stare", ypos="head", flip=False) + her "Your..." + gen "Yes...{w=0.3} *Ah*... Yes... This is good." ("base", xpos="far_left", ypos="head") + her "[genie_name]!!!" ("scream", "happyCl", "worried", "mid") + her "I must insist that you put away your..." ("angry", "happyCl", "worried", "mid") + her "... thing." + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"I said, keep on dancing, [hermione_name]!\"": + stop music fadeout 1.0 + + her "No, [genie_name]!" ("annoyed", "narrow", "angry", "R", ypos="head", flip=False) + gen "*huh*?" ("base", xpos="far_left", ypos="head") + show screen blkfade + with d5 + + ">Hermione jumps off your desk and starts to put her clothes back on while glaring at you..." + gen "Oh, come on! Don't leave me like that!" ("base", xpos="far_left", ypos="head") + + call play_sound("equip") + $ hermione.wear("all") + call her_chibi_scene("reset","desk","base", trans=fade) + + her "The dance is over, [genie_name]!" ("soft", "base", "angry", "mid") + pause 1 + her "I would like to get paid now!" ("annoyed", "narrow", "annoyed", "mid") + gen "Stubborn [hermione_name]..." ("base", xpos="far_left", ypos="head") + call nar(">You reluctantly put your cock away...") + her "I would like to get paid now." ("annoyed", "narrow", "annoyed", "mid") + + $ her_mood += 6 + + jump end_hg_pf_strip + + "\"Fine. There is no need for drama!\"": + her "......................" ("annoyed", "narrow", "angry", "R", ypos="head", flip=False) + pause.1 + + call gen_chibi("sit_behind_desk") + call her_chibi("dance","on_desk","on_desk") + hide screen blktone + hide screen bld1 + with fade + pause.5 + + jump hg_pf_strip_T3_watch + +### Tier 4 ### + + +# Event 1 (i) - Hermione tries her best at stripping. +# Event 2 (i) - +# Event 3 (r) - + +label hg_pf_strip_T4_intro_E1: + gen "[hermione_name], how about getting on this desk for another show?" ("base", xpos="far_left", ypos="head") + her ".............." ("disgust", "narrow", "base", "mid_soft", xpos="base", ypos="base") + her "I would really rather not, [genie_name]..." + gen "Why? You are getting quite good at it." ("base", xpos="far_left", ypos="head") + her "........................." ("annoyed", "narrow", "annoyed", "mid") + her "{number=current_payout} house points?" ("open", "base", "base", "mid") + gen "Sure!" ("grin", xpos="far_left", ypos="head") + her "Very well, then..." ("base", "base", "base", "R") + + jump hg_pf_strip_T4 + +label hg_pf_strip_T4_intro_E2: + gen "[hermione_name], would you like to climb onto my desk for another show?" ("base", xpos="far_left", ypos="head") + gen "(I'm bored as fuck in here after all...)" ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("annoyed", "base", "base", "R", xpos="base", ypos="base") + her "Sure! Why not..." ("base", "happyCl", "base", "mid") + gen "Yes?" ("grin", xpos="far_left", ypos="head") + her "I've been practising a bit more. Mainly on my dancing." ("soft", "narrow", "worried", "down") + gen "Very good... I'd love to see your progress." ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]..." ("base", "narrow", "base", "mid_soft") + + jump hg_pf_strip_T4 + +label hg_pf_strip_T4_E2: + gen "[hermione_name], how do you feel about getting on my desk for another show?" ("base", xpos="far_left", ypos="head") + if her_tier <= 5: + her "Of course, [genie_name]..." ("base", "base", "base", "mid", xpos="base", ypos="base") + else: + her "I'd love to, [genie_name]!" ("open_tongue", "narrow", "annoyed", "up", xpos="base", ypos="base") + + jump hg_pf_strip_T4 + +label hg_pf_strip_T4: + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "-Invite Snape to watch-" if ss_he.hermione_strip: + jump hg_pf_strip_T4_snape + + "-Ask her to lock the door-": + if her_tier <= 5: + her "Of course..." ("base", "base", "base", "mid") + else: + her "(How boring...)" ("annoyed", "narrow", "annoyed", "up") + + call hide_characters + hide screen bld1 + with d3 + pause.5 + + call her_walk("door", "base") + + pause.5 + call play_sound("lock") + + # Walks back. + call her_chibi("stand","door","base") + pause.1 + + call her_walk("mid", "base") + pause.2 + + her "All done!" ("smile", "closed", "base", "mid", trans=d3) + + "-Tell her to leave the door open-": + if her_tier <= 4: + her "But, what if somebody walks in again!" ("shock", "wide", "base", "stare") + gen "Nonsense. No such thing will happen..." ("base", xpos="far_left", ypos="head") + her "It happened before so why--" ("angry", "base", "angry", "mid") + gen "Stop being such a fuzzy and get over here..." ("base", xpos="far_left", ypos="head") + her ".................." ("annoyed", "narrow", "angry", "R") + + stop music fadeout 1.0 + call her_walk("desk", "base", reduce=0.8) + + $ her_mood += 4 + else: + her "Yes, [genie_name]." ("base", "narrow", "base", "mid_soft") + + stop music fadeout 1.0 + + # Climb desk + call blkfade + call play_sound("climb_desk") + pause 2 + call her_chibi("dance","on_desk","on_desk") + hide hermione_main + hide screen blkfade + with d5 + call ctc + + call play_music("playful_tension") # SEX THEME. + her "..." ("base", "narrow", "base", "mid_soft", xpos="mid", ypos="base", trans=d3) + if hermione.is_any_worn("robe", "accessory"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe", "accessory") + gen "Yes, very nice." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "worried", "down") + + if hermione.is_worn("top"): + call nar(">Hermione hastily starts pulling at her top...") + + gen "Slowly, please..." ("base", xpos="far_left", ypos="head") + gen "There's no rush." ("base", xpos="far_left", ypos="head") + + if hermione.is_worn("top"): + her "I'm not!" ("open", "base", "angry", "mid") + her "It's just... I..." ("disgust", "narrow", "base", "down") + gen "Would you like some help with it?" ("grin", xpos="far_left", ypos="head") + if her_tier <= 5: + her "No..." ("annoyed", "base", "angry", "mid") + her "I can do it, [genie_name]." ("open", "closed", "base", "mid") + else: + her "No, [genie_name]." ("base", "narrow", "base", "mid_soft") + her "Just enjoy the show..." ("soft", "narrow", "base", "mid_soft") + gen "I will, [hermione_name]." ("grin", xpos="far_left", ypos="head") + + her "..." ("base", "narrow", "worried", "down") + + if hermione.is_worn("top"): + call nar(">Hermione pulls her top over her head...") + call nar(">And takes it off somewhat gracefully...") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top") + pause.5 + + if hermione.is_worn("bra"): + call nar(">Hermione undoes her bra rather provocatively.") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bra") + pause.5 + + call ctc + + gen "Yes! Shake those tits!" ("grin", xpos="far_left", ypos="head") + + if her_tier <= 4: + her "Must you be so vulgar, [genie_name]?" ("annoyed", "closed", "base", "mid") + her ".............." ("annoyed", "narrow", "worried", "down") + + her "[genie_name]?" ("open", "base", "base", "mid") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + her "Can I ask you a question?" ("upset", "wink", "base", "mid") + gen "Go ahead..." ("base", xpos="far_left", ypos="head") + her "..............." ("normal", "happyCl", "worried", "mid") + her "Have you ever been in love...?" ("grin", "happyCl", "worried", "mid", emote="sweat") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Don't be ridiculous! Love is a lie!\"": + her "I am sorry you think that way, [genie_name]!" ("annoyed", "base", "worried", "R") + her "But you couldn't be more wrong!" ("annoyed", "narrow", "annoyed", "mid") + her "I believe that true love is what makes the earth turn!" ("base", "base", "base", "R") + gen "Actually the conservation of angular momentum is responsible for that." ("base", xpos="far_left", ypos="head") + her "*huh*?" ("upset", "wink", "base", "mid") + if hermione.is_worn("bottom"): + gen "Never mind. Just take off your bottoms already." ("base", xpos="far_left", ypos="head") + else: + gen "Never mind. Keep dancing!" ("base", xpos="far_left", ypos="head") + her "............" ("annoyed", "narrow", "annoyed", "mid") + + "\"Be quiet and keep on dancing!\"": + her "But you said I could ask you a question..." ("annoyed", "narrow", "annoyed", "mid") + gen "And you did, didn't you?" ("base", xpos="far_left", ypos="head") + her "!!!............" ("open", "base", "base", "mid") + her "...................................." ("annoyed", "narrow", "annoyed", "mid") + if hermione.is_worn("bottom"): + gen "Now hush... And take your bottoms off." ("base", xpos="far_left", ypos="head") + else: + gen "Now hush... And let me enjoy this." ("base", xpos="far_left", ypos="head") + her "........" ("annoyed", "narrow", "angry", "R") + + "\"Yes... a very long time ago...\"": + gen "Yes... a very long time ago..." ("base", xpos="far_left", ypos="head") + her "!!!!!??.............................." ("open", "base", "base", "mid") + gen "Her name was Eden..." ("base", xpos="far_left", ypos="head") + her "Was she beautiful?" ("base", "base", "base", "mid") + gen "She was so much more than that..." ("base", xpos="far_left", ypos="head") + gen "She was smart, green, and perfect..." ("base", xpos="far_left", ypos="head") + her "She was... \"green\"...?" ("open", "narrow", "worried", "down") + her "Are you making fun of me, [genie_name]?" ("angry", "base", "angry", "mid") + gen "Oh, you humans know nothing of true love..." ("base", xpos="far_left", ypos="head") + her ".....................................?" ("soft", "base", "base", "mid") + if hermione.is_worn("bottom"): + gen "Err... I mean, take off your bottoms, [hermione_name]!" ("base", xpos="far_left", ypos="head") + else: + gen "Err... I mean, keep on dancing, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "................." ("annoyed", "narrow", "angry", "R") + + "\"I feel like I'm in love right now!\"": + her "You don't have to be vulgar, [genie_name]." ("annoyed", "narrow", "angry", "R") + gen "Oh, but I mean it!" ("base", xpos="far_left", ypos="head") + her "[genie_name], please!" ("disgust", "narrow", "base", "mid_soft") + her "I am one of your students!" ("soft", "base", "base", "mid") + her "And you are older than my father!" ("grin", "happyCl", "worried", "mid", emote="sweat") + gen "{size=-4}(You have no idea, girl.){/size}" ("base", xpos="far_left", ypos="head") + her "Although some scientists insist that what we consider \"love\" is actually nothing but a chemical reaction..." ("soft", "base", "base", "mid") + her "And when a man is experiencing sexual arousal, the same type of hormones--" ("open", "closed", "base", "mid") + gen "[hermione_name]!" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("soft", "base", "base", "mid") + gen "Did you forget where you are?" ("base", xpos="far_left", ypos="head") + her "Oh, my apologies, [genie_name]... I get distracted sometimes." ("grin", "happyCl", "worried", "mid", emote="sweat") + if hermione.is_worn("bottom"): + gen "Take off your bottoms already, would you?!" ("base", xpos="far_left", ypos="head") + else: + gen "Get to the good stuff already, would you?!" ("base", xpos="far_left", ypos="head") + her "Right..." ("annoyed", "base", "worried", "R") + + call nar(">Hermione is starting to sway her hips rather seductively...") + + if hermione.is_worn("bottom"): + call nar(">Whilst sliding her bottoms down...") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bottom") + pause.5 + call ctc + + menu: + "-Ask her to masturbate-": + if her_tier == 4: + jump hg_pf_strip_T4_fingering + elif her_tier == 5: + jump hg_pf_strip_T5_fingering + else: # Tier 6, and a fallback for cheaters! + jump hg_pf_strip_T6_fingering + + "-Take your cock out, start jerking off-": + jump hg_pf_strip_T4_masturbate + + "-Show some manners, just watch-": + jump hg_pf_strip_T4_watch + +label hg_pf_strip_T4_watch: + call blktone + call nar(">You watch Hermione Dance...") + her "(Time for the finishing act I suppose...)" ("angry", "happyCl", "worried", "mid", xpos="mid", ypos="base") + + if hermione.is_worn("panties"): + gen "Yes, [hermione_name]! Take them off!" ("base", xpos="far_left", ypos="head") + her "........" ("annoyed", "closed", "base", "mid") + call nar(">Following your command, Hermione begins taking the rest of her clothes off...") + call nar(">Bending over slightly she slides her panties down...") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + else: + call nar(">Hermione moves her body in an attempted seductive manner.") + call nar(">Trying her best to focus on her task she tries to avoid looking directly at you.") + + $ hermione.strip("all") + + call nar(">You can see that she is doing her best to be graceful...","start") + call nar(">But she looks rather ridiculous in her attempts to act like a professional stripper...","end") + call ctc + + her ".........." ("base", "narrow", "base", "mid_soft") + + call nar(">Suddenly Hermione breaks into a whole series of rather complex pirouettes...") + gen "{size=-4}(This looks quite impressive actually...){/size}" ("base", xpos="far_left", ypos="head") + pause.5 + call nar(">Hermione gives her breasts a squeeze followed by another series of rather complex (and naughty) movements...") + call ctc + + gen "{size=-4}(Did she practise this?){/size}" ("base", xpos="far_left", ypos="head") + gen "(Oh, why would I care?)" ("grin", xpos="far_left", ypos="head") + her "{size=-5}(Three-two-one... Three-two-one... And step!){/size}" ("open", "closed", "base", "mid") + pause.5 + call nar(">Hermione performs another set of movements that could be considered classy...","start") + call nar(">If not for her naked tits bouncing all over the place...","end") + + gen "Yes, that's how it's done, you little harlot!" ("grin", xpos="far_left", ypos="head") + + call nar(">A few more movements, a couple of gestures and a little curtsy bow to the imaginary public...") + + show screen blkfade + with d5 + + call her_chibi("sit_naked","on_desk","on_desk") + + ">And then Hermione slumps on her butt, completely exhausted." + + call hide_characters + hide screen blktone + hide screen blkfade + with d5 + call ctc + + her "Whew... This was rather exciting..." ("silly", "happyCl", "worried", "mid", emote="sweat", ypos="head", flip=False) + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "{size=-3}\"Good job, [hermione_name]! You sure know how to dance!\"{/size}": + her "Really?" ("base", "narrow", "base", "mid_soft") + gen "Yes! You have a lot of talent for this!" ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]." ("silly", "happyCl", "worried", "mid", emote="sweat") + "{size=-3}\"*Hmm*... This was quite awful...\"{/size}": + her "Oh... I'm sorry..." ("soft", "happy", "base", "R") + gen "That's OK... You just need to practise more..." ("base", xpos="far_left", ypos="head") + her "*Ehm*... I will keep that in mind, [genie_name]..." ("open", "base", "base", "R") + "{size=-3}\".................................................\"{/size}": + her "......................." ("silly", "happyCl", "worried", "mid", emote="sweat") + call her_chibi("sit_naked_shocked","on_desk","on_desk") + + hide screen bld1 + call ctc + + jump end_hg_pf_strip + +label hg_pf_strip_T4_masturbate: + show screen blkfade + with d5 + + call gen_chibi("jerk_off","behind_desk","base") + hide screen blkfade + with fade + + her "But..." ("angry", "happyCl", "worried", "mid", xpos="mid", ypos="base") + her "............................." + her "Well, alright, but only if you will promise me not to... finish, [genie_name]." ("soft", "base", "angry", "mid") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-Promise her to hold it-": + $ d_flag_07 = True #Promised to hold it. + her "Well, alright then..." ("open", "closed", "base", "mid") + + "-Give her no such promise-": + $ d_flag_07 = False #Did not promise to hold it. + gen "\"Not to finish\"? That would be like torture!" ("base", xpos="far_left", ypos="head") + gen "Please keep your sadistic urges to yourself, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "I don't have any... sadistic urges, [genie_name]!" ("annoyed", "narrow", "angry", "R") + her "I just don't want to..." + gen "Yes... Those are some nice tits you have..." ("grin", xpos="far_left", ypos="head") + her "............" ("angry", "happyCl", "worried", "mid") + gen "*A-ah*... Yes..." ("grin", xpos="far_left", ypos="head") + her ".........." ("angry", "happyCl", "worried", "mid") + her "Fine! Have it your way, [genie_name]!" ("angry", "happyCl", "worried", "mid") + her "{size=-5}(As usual...){/size}" ("annoyed", "narrow", "angry", "R") + + + call nar(">You keep on wanking while you watch Hermione's dance...") + show screen blktone + her "Time for the finishing act I suppose..." ("annoyed", "closed", "base", "mid") + + if hermione.is_worn("panties"): + gen "Yes, [hermione_name]! Take them off!" ("base", xpos="far_left", ypos="head") + her "........" ("annoyed", "closed", "base", "mid") + call nar(">Following your command, Hermione begins taking the rest of her clothes off...") + call nar(">Bending over slightly she slides her panties down...") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + else: + call nar(">Hermione moves her body in an attempted seductive manner.") + call nar(">Trying her best to focus on her task she tries to avoid looking directly at you.") + + $ hermione.strip("all") + + call nar(">You can see that she is doing her best to be graceful...","start") + call nar(">But she looks rather ridiculous in her attempts to act like a professional stripper...","end") + call ctc + + call nar(">Nonetheless you decide to show her some appreciation...","start") + call nar(">By stroking your cock even faster!","end") + her ".........." ("annoyed", "narrow", "base", "dead") + call nar(">Suddenly Hermione breaks into a whole series of rather complex pirouettes.") + gen "{size=-4}(This looks quite impressive actually...){/size}" ("base", xpos="far_left", ypos="head") + pause.5 + + call nar(">Hermione gives her breasts a squeeze followed by another series of rather complex (and naughty) movements.") + call ctc + + gen "{size=-4}(Did she practise this?){/size}" ("base", xpos="far_left", ypos="head") + gen "Oh, what do I care?" ("grin", xpos="far_left", ypos="head") + call nar(">You stroke your diamond-hard cock furiously.") + her "{size=-5}(Three-two-one... Three-two-one... And step!){/size}" ("open", "closed", "base", "mid") + + pause.5 + + call nar(">Hermione performs another set of movements that could be considered classy...","start") + call nar(">if not for her naked tits bouncing all over the place.","end") + + gen "Yes, yes, you little whore!" ("grin", xpos="far_left", ypos="head") + call nar(">A few more movements, a couple of gestures and a little curtsy bow to the imaginary public...") + show screen blkfade + with d5 + + call her_chibi("sit_naked","on_desk","on_desk") + + ">And then Hermione slumps on her butt, completely exhausted." + + hide hermione_main + hide screen blktone + hide screen blkfade + with d5 + call ctc + + her "Whew... This was--" ("open", "closed", "base", "mid", ypos="head", flip=False) + with hpunch + gen "*ARGH*! YOU FUCKING CUNT!" ("angry", xpos="far_left", ypos="head") + + call cum_block + call gen_chibi("cum","behind_desk","base") + $ hermione.set_cum(hair="light") + pause 0.7 + $ hermione.set_cum(face="light") + pause 1 + $ hermione.set_cum(breasts="light") + call ctc + + call her_chibi("sit_naked_shocked","on_desk","on_desk") + call gen_chibi("cum","behind_desk","base") + + her "??!!!" ("shock", "wide", "base", "stare") + her "[genie_name]!!!" ("angry", "happyCl", "worried", "mid") + + call gen_chibi("cum_done","behind_desk","base") + + if d_flag_07: #Promised to hold it. + her "No, [genie_name]! You promised!" ("angry", "happyCl", "worried", "mid", ypos="head", flip=False) + gen "Oh, man... This was pretty intense..." ("angry", xpos="far_left", ypos="head") + her "You went back on your word, [genie_name]!" ("scream", "happyCl", "worried", "mid") + gen "*huh*? What are you talking about?" ("base", xpos="far_left", ypos="head") + her "How could you do this to me, [genie_name]?" ("shock", "base", "angry", "mid", tears="crying_blink") + gen "Oh, calm down, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "You earned your points today." ("base", xpos="far_left", ypos="head") + gen "Now, just get dressed and leave before somebody discovers you like this." ("base", xpos="far_left", ypos="head") + her "*sob*!........................" ("shock", "narrow", "angry", "R", tears="messy") + show screen blkfade + with d5 + + $ hermione.wear("all") + stop music fadeout 5.0 + pause 1.5 + + her "... Can I just get paid now, [genie_name]... please?" ("annoyed", "narrow", "angry", "R") + + $ her_mood += 20 + + jump end_hg_pf_strip + + else: + her "It's so hot..." ("angry", "happyCl", "worried", "mid", ypos="head", flip=False) + call gen_chibi("hold_dick","behind_desk","base") + gen "*Ah-ah*... Yeah... This felt great..." ("base", xpos="far_left", ypos="head") + her "You came all over me..." ("soft", "happy", "base", "R") + her "I am your pupil and..." + her "You just came on me..." ("grin", "narrow", "annoyed", "up") + gen "I know! Pretty exciting stuff, *huh*?!" ("grin", xpos="far_left", ypos="head") + her "Nothing of that sort!" ("open", "base", "base", "R") + her "You should have restrained yourself like a proper headmaster would!" + gen "Really? What did you expect me to do?" ("base", xpos="far_left", ypos="head") + gen "Aim at the wall or just put it back in my trousers and start cumming?" ("base", xpos="far_left", ypos="head") + her "........" ("soft", "happy", "base", "R") + her "Still, you should not have..." ("soft", "base", "angry", "mid") + her "I agreed to perform a striptease for you..." ("open", "closed", "base", "mid") + her "But I didn't agree to be defiled like this." + gen "I think I know where this is going..." ("base", xpos="far_left", ypos="head") + + her "I demand to be paid extra!" ("base", "base", "angry", "mid") + gen "Of course you do..." ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"You get one extra point.\"": + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "One extra point?" ("soft", "base", "angry", "mid") + her "One meagre extra point for letting you do this to me?" ("scream", "happyCl", "worried", "mid") + her "Now, that is just insulting, [genie_name]!" ("soft", "base", "angry", "mid") + gen "One extra point, [hermione_name]. Take it or leave it." ("base", xpos="far_left", ypos="head") + call her_chibi("sit_naked","on_desk","on_desk") + + her "............." ("annoyed", "narrow", "angry", "R") + her "I'll take it." ("soft", "base", "angry", "mid") + $ her_mood += 20 + $ current_payout += 1 + hide screen bld1 + call ctc + + show screen blkfade + with d5 + $ hermione.wear("all") + jump end_hg_pf_strip + + "\"You get ten extra points.\"": + $ current_payout += 10 + her "Ten extra points [genie_name]?" ("soft", "base", "angry", "mid") + her "But that is not even nearly enough!" + gen "Ten extra points. Take 'em or leave 'em [hermione_name]." ("base", xpos="far_left", ypos="head") + call her_chibi("sit_naked","on_desk","on_desk") + + her "..............." ("annoyed", "narrow", "angry", "R") + her "Well, alright... Better than nothing I suppose..." ("soft", "base", "angry", "mid") + $ her_mood += 10 + hide screen bld1 + call ctc + + show screen blkfade + with d5 + $ hermione.wear("all") + jump end_hg_pf_strip + + "\"You get twenty-five extra points.\"": + $ current_payout += 25 + call her_chibi("sit_naked","on_desk","on_desk") + + her "Yes, I believe this would be an appropriate amount." ("open", "closed", "base", "mid") + gen "are we good then?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]. Thank you." ("open", "closed", "base", "mid") + hide screen bld1 + with d3 + call ctc + show screen blkfade + with d7 + pause.5 + $ hermione.wear("all") + jump end_hg_pf_strip + + "\"You get fifty extra points.\"": + $ current_payout += 50 + her "Seriously?!" ("angry", "wide", "base", "stare") + call her_chibi("sit_naked","on_desk","on_desk") + + her "Oh, I don't know what to say..." ("open", "wide", "base", "stare") + gen "I enjoyed your performance [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]..." ("base", "narrow", "base", "mid_soft") + gen "I also enjoyed plastering your agile little body with cum..." ("base", xpos="far_left", ypos="head") + her "[genie_name]......" ("silly", "happyCl", "worried", "mid", emote="sweat") + gen "So, just allow me to show my appreciation." ("base", xpos="far_left", ypos="head") + gen "Fifty extra points. Well deserved, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Thank very much, [genie_name]." ("silly", "happyCl", "worried", "mid", emote="sweat") + hide screen bld1 + call ctc + + show screen blkfade + with d5 + $ hermione.wear("all") + jump end_hg_pf_strip + + "\"You're not getting shit!\"": + stop music fadeout 1.0 + her "What? Not even my usual pay?" ("shock", "wide", "base", "stare") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Oh, no, you are still getting that.\"": + $ her_mood += 20 + her "How generous of you, [genie_name]." ("soft", "base", "angry", "mid") + hide screen bld1 + call ctc + + show screen blkfade + with d5 + $ hermione.wear("all") + jump end_hg_pf_strip + + "\"No, not even that!\"": + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "!!!?" ("shock", "wide", "base", "stare") + her "I danced for you, [genie_name]..." + her "I degraded myself for your amusement..." ("soft", "happy", "base", "R") + her "I let you cum on me..." ("open", "base", "base", "R") + with hpunch + her "And I get NOTHING?!" ("clench", "base", "angry", "mid", emote="angry") + gen "You are dismissed, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "Oh, this is a new low even for you, [genie_name]!" ("soft", "base", "angry", "mid") + gen "I said you are dismissed." ("base", xpos="far_left", ypos="head") + her "*GROAN*!" ("clench", "base", "angry", "mid", emote="angry") + hide screen bld1 + call ctc + + show screen blkfade + with d5 + $ hermione.wear("all") + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + hide screen blkfade + with d5 + + call her_walk(action="leave") + + $ her_mood += 30 + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/events/favors/dance_for_me_masturbate.rpy b/game/scripts/characters/hermione/events/favors/dance_for_me_masturbate.rpy new file mode 100644 index 00000000..103724e6 --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/dance_for_me_masturbate.rpy @@ -0,0 +1,734 @@ + + +### Hermione Masturbate ### + +### Tier 4 (Intro) ### + +label hg_pf_strip_T4_fingering: + if not hg_masturbated.trigger: + $ hg_masturbated.triggered() + + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "Do you ever touch yourself?" ("base", xpos="far_left", ypos="head") + her "What? why?" ("upset", "wink", "base", "mid") + gen "It's a simple question [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "[genie_name]!" ("scream", "happyCl", "worried", "mid") + gen "And I want you to speak truthfully..." ("base", xpos="far_left", ypos="head") + her "......" ("normal", "happyCl", "worried", "mid") + gen "Well, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "{size=-5}I suppose I do...{/size}" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "*huh*? What was that?" ("base", xpos="far_left", ypos="head") + her "I said that I do alright!!!" ("scream", "happyCl", "worried", "mid") + gen "*Hmm*... I'm not sure I believe you." ("base", xpos="far_left", ypos="head") + her "What? why would I lie?" ("annoyed", "base", "worried", "R") + gen "I'm not sure... maybe it's because you think it's what I want you to say..." ("base", xpos="far_left", ypos="head") + her "That doesn't make any--" ("annoyed", "base", "worried", "mid") + gen "But don't worry, I'm sure a quick little demonstration will erase any doubts..." ("base", xpos="far_left", ypos="head") + her "So that's what you're after......" ("annoyed", "narrow", "angry", "R") + her "*Sigh*...{w=0.4} I suppose I could..." ("open", "narrow", "worried", "down") + her "But you better keep your hands to yourself..." ("angry", "narrow", "worried", "mid") + gen "Witcher's promise." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "squint", "base", "mid") + else: # Repeat + gen "[hermione_name]." ("base", xpos="far_left", ypos="head") + gen "Why don't you give that lovely pussy of yours a little rub." ("grin", xpos="far_left", ypos="head") + her "Again?" ("annoyed", "narrow", "base", "mid") + her "..." ("disgust", "narrow", "base", "down") + her "F-Fine... Just keep your hands to yourself..." ("open", "squint", "base", "R") + + call play_music("playful_tension") # SEX THEME. + her "..........." ("upset", "base", "base", "mid") + her "Do you want me to... start?" ("soft", "wink", "base", "mid") + gen "When you're ready..." ("base", xpos="far_left", ypos="head") + + if hermione.is_worn("panties"): + gen "But why don't we get rid of those panties first." ("base", xpos="far_left", ypos="head") + + her "..........." ("disgust", "narrow", "base", "down") + + if hermione.is_worn("panties"): # Rest of the clothes is taken off during stripping. + pause 1.0 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("panties") + pause 1.0 + + if hermione.is_any_worn("clothes"): + gen "Now take off the rest." ("base", xpos="far_left", ypos="head") + $ hermione.strip("all") + pause .5 + + her "(I never would've imagined... To do this in front of my headmaster of all people...)" ("normal", "happyCl", "worried", "mid") + + $ hermione.set_pose("masturbate") + $ hermione.set_body(armleft="on_pussy") + her "" ("soft", "closed", "worried", "mid", trans=d3) + + $ renpy.play("sounds/slick_02.ogg") + with hpunch + pause 1.0 + play bg_sounds "sounds/slickloop.ogg" fadein 2 + call ctc + + gen "Nice..." ("grin", xpos="far_left", ypos="head") + her "........" ("upset", "wink", "base", "mid") + gen "............." ("base", xpos="far_left", ypos="head") + her "............." ("normal", "happyCl", "worried", "mid") + stop bg_sounds + her "*Umm*... [genie_name]?" + gen "Yes, what is it?" ("base", xpos="far_left", ypos="head") + her "For how long did you want me to do this?" ("open", "base", "worried", "mid") + gen "Until you finish [hermione_name]..." ("base", xpos="far_left", ypos="head") + + if game.daytime: + her "But my classes are about to start, [genie_name]..." ("annoyed", "base", "worried", "mid") + else: + her "But it's getting late, [genie_name]..." ("annoyed", "base", "worried", "mid") + + her "I'm not sure if I'll be able to... finish... in time." ("disgust", "narrow", "base", "down") + gen "Do you need the points or not?" ("base", xpos="far_left", ypos="head") + her "I do, [genie_name]! I'm sorry..." ("open", "narrow", "worried", "down") + her "I'll keep going then..." ("disgust", "narrow", "base", "down") + play bg_sounds "sounds/slickloop.ogg" fadein 2 + gen "(*Hmm*... Maybe I should encourage her a little.)" ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Yes... keep going, slut.\"": + her "[genie_name]!!!" ("angry", "base", "angry", "mid") + her "How...{w=0.4} How dare you!" ("upset", "base", "angry", "mid") + gen "what?" ("base", xpos="far_left", ypos="head") + her "I hardly think that kind of... *Ah*...{w=0.5} language is appropriate." ("open", "happyCl", "base", "mid") + gen "And masturbating in front of your headmaster is?" ("base", xpos="far_left", ypos="head") + her "Well...{w=0.4} this...{w=0.4} this is different." ("open", "narrow", "worried", "down") + her "I'm doing this for the honour of Gryffindor..." + her "To help my--... *Ah*" ("open", "closed", "worried", "down") + play bg_sounds "sounds/slickloopfast.ogg" + call nar(">You notice Hermione beginning to move her fingers a little faster.") + # + # TODO: Add wet layer for panties/pussy + # + her "*Ah*...{heart}{heart}{heart}" ("soft", "narrow", "annoyed", "up") + her "My classmates win the house cup..." ("angry", "wink", "base", "mid") + gen "As if that's the only reason..." ("grin", xpos="far_left", ypos="head") + her "I..{w=0.4}*Ah*... of course it...--" ("normal", "happyCl", "worried", "mid") + + $ hermione.set_body_zorder(armright=3) + $ hermione.set_body(armleft="on_pussy", armright="on_tits") + + her "*Ah-a*{heart}..." ("open", "happyCl", "worried", "mid") + her "What..{w=0.4}*Ah*... other reason would there be for me to..." ("angry", "narrow", "base", "down") + gen "It seems to me that you might be enjoying this a little too much..." ("base", xpos="far_left", ypos="head") + her "I am not, [genie_name]!" ("open", "happyCl", "worried", "mid") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "......................" ("normal", "happyCl", "worried", "mid") + gen "Then why are your fingers moving so fast, slut?" ("base", xpos="far_left", ypos="head") + call ctc + + her "*Ah*...{heart}" ("open", "happyCl", "worried", "mid") + gen "ha! just Admit it, you do enjoy being called a slut!" ("base", xpos="far_left", ypos="head") + her "I do not!" ("normal", "happyCl", "worried", "mid") + her "I'm just thinking about...{w=0.4}*Ah*...{w=0.4} how happy everyone will be when we win!" ("shock", "happyCl", "worried", "mid") + gen "And what if they find out how you earned the points?" ("base", xpos="far_left", ypos="head") + stop bg_sounds + her "what?!" ("shock", "wide", "base", "stare") + gen "Then it wouldn't just be me degrading you..." ("base", xpos="far_left", ypos="head") + play bg_sounds "sounds/slickloop.ogg" + her "..." ("soft", "closed", "base", "R") + gen "It would be the entire school." ("base", xpos="far_left", ypos="head") + play bg_sounds "sounds/slickloopfast.ogg" + her "The entire-- *Ah*...{heart}" ("silly", "narrow", "base", "dead", cheeks="blush") + gen "Every...{w=0.4} single...{w=0.4} student." ("base", xpos="far_left", ypos="head") + play bg_sounds "sounds/slickloopveryfast.ogg" + her "*Ah*...{heart}{heart}{heart}" ("grin", "narrow", "annoyed", "up", cheeks="blush") + her "[genie_name], please... {w=0.4}*mmmh*...{w=0.4} don't tell anyone..." ("soft", "narrow", "base", "mid_soft", cheeks="blush") + call nar(">Hermione continues to rub herself with even more effort...") + her "They can't...{w=0.4}*Ah*...{w=0.4} They can't find out..." ("soft", "narrow", "base", "R_soft", cheeks="blush") + her "If harry and ron knew..." ("open", "narrow", "base", "down", cheeks="blush") + her "I'd... *Ah*...{heart}" ("soft", "closed", "annoyed", "up", cheeks="blush") + gen "You'd what [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I'd..." ("open", "closed", "worried", "mid", cheeks="blush") + her "I'd...{heart}" ("silly", "closed", "worried", "mid", cheeks="blush") + her "I...{heart}{heart}{heart}" ("grin", "narrow", "annoyed", "up", cheeks="blush") + + "\"Play with your breasts\"": + her "My breasts..." ("open", "narrow", "worried", "down") + her "I'm not sure if I should--" ("open", "narrow", "base", "down") + gen "There's another ten points for Gryffindor in it for you..." ("base", xpos="far_left", ypos="head") + $ current_payout += 10 + her "..." ("normal", "happy", "base", "R") + her "......" ("soft", "happy", "base", "R") + + $ hermione.set_body_zorder(armright=3) + $ hermione.set_body(armleft="on_pussy", armright="on_tits") + + her "*Ah*...{heart}" ("open", "closed", "base", "R") + gen "There... Isn't that better?" ("base", xpos="far_left", ypos="head") + her "*Ah*... W-what..." ("open", "wink", "worried", "mid") + her "......" ("normal", "happyCl", "base", "mid") + gen "That's it..." ("base", xpos="far_left", ypos="head") + her "......" ("normal", "narrow", "base", "mid", cheeks="blush") + her "[genie_name], do you mind if..." ("soft", "narrow", "base", "L", cheeks="blush") + gen "What [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Could you... Call me names..." ("open", "narrow", "base", "R", cheeks="blush") + gen "Such as?" ("base", xpos="far_left", ypos="head") + + her "...{size=-5}A Slut...{/size} But only if it's not too much to ask..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "That's unbecoming of you to use such language, you little whore..." ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart}{heart}" ("open", "closed", "annoyed", "mid") + gen "What would your parents think if they saw this?" ("base", xpos="far_left", ypos="head") + her "I-{heart}" ("open", "narrow", "worried", "up", cheeks="blush") + play bg_sounds "sounds/slickloopfast.ogg" + her "*Ah*...{heart} I don't know..." ("soft", "closed", "base", "up", cheeks="blush") + her "To be perfectly honest [genie_name]... I don't think I care...{heart}{heart}{heart}" ("silly", "narrow", "base", "up", cheeks="blush") + gen "Really?" ("base", xpos="far_left", ypos="head") + + her "Really...{heart}" ("silly", "narrow", "base", "mid_soft", cheeks="blush") + gen "Would you at least stop?" ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart}" ("open_tongue", "narrow", "base", "up", cheeks="blush") + her "Maybe..." ("open_tongue", "narrow", "base", "up", cheeks="blush") + her "I'm not sure..." ("open", "narrow", "base", "R", cheeks="blush") + gen "So you wouldn't mind if they heard me calling you a slut?" ("base", xpos="far_left", ypos="head") + her "I...{w=0.4}*mmmh*... Of course I--" ("normal", "happyCl", "worried", "mid", cheeks="blush") + gen "I bet if they appeared right now you wouldn't even stop touching yourself you filthy slut." ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart}" ("open_tongue", "narrow", "base", "up", cheeks="blush") + gen "You're nothing but a disgrace and a whore..." ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.4} I'm-{heart}" ("open", "happyCl", "worried", "mid", cheeks="blush") + + her "{heart}{heart}{heart}" ("grin", "narrow", "base", "up", cheeks="blush") + + "\"Spread em!\"": + gen "Excellent... Just make sure to give me a nice view of that wet pussy!" ("base", xpos="far_left", ypos="head") + her "[genie_name]!" ("open", "base", "angry", "mid", cheeks="blush") + gen "What?" ("base", xpos="far_left", ypos="head") + + her "It's not {size=-5}wet...{/size}" ("annoyed", "narrow", "worried", "R", cheeks="blush") + gen "Are you sure? Because from where I'm sitting it looks nice and wet." ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart}" ("soft", "narrow", "base", "up", cheeks="blush") + her "It...{w=0.4} it's just sweat, [genie_name]..." ("open", "narrow", "base", "R", cheeks="blush") + gen "if you say so..." ("base", xpos="far_left", ypos="head") + her "..............." ("soft", "closed", "base", "up", cheeks="blush") + gen "Slut." ("base", xpos="far_left", ypos="head") + play bg_sounds "sounds/slickloopfast.ogg" + her "{heart}{heart}{heart}" ("silly", "narrow", "base", "up_soft", cheeks="blush") + her "Sir... please..." ("open", "narrow", "base", "mid_soft", cheeks="blush") + + $ hermione.set_body_zorder(armright=3) + $ hermione.set_body(armleft="on_pussy", armright="on_tits") + + play bg_sounds "sounds/slickloopveryfast.ogg" + call nar(">Hermione starts fingering herself even faster.") + gen "Very good..." ("base", xpos="far_left", ypos="head") + her "...{heart}" ("silly", "narrow", "base", "up", cheeks="blush") + her "*Ah*...{heart}" ("open_tongue", "narrow", "base", "up", cheeks="blush") + gen "That's it slut... Try going a little deeper..." ("base", xpos="far_left", ypos="head") + her "..." ("open_tongue", "narrow", "base", "up", cheeks="blush") + + her "...{heart}" ("open", "happyCl", "worried", "mid", cheeks="blush") + + play bg_sounds "sounds/slickloop.ogg" + her "*Ah*..." ("soft", "narrow", "base", "R", cheeks="blush") + gen "almost there [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "a-almost..." ("annoyed", "base", "worried", "L", cheeks="blush") + her "I just need a bit longer..." + gen "well you better hurry..." ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.3} I know, [genie_name]." ("angry", "happyCl", "worried", "mid") + her "..........." ("normal", "closed", "base", "R", cheeks="blush") + gen "Is everything alright?" ("base", xpos="far_left", ypos="head") + play bg_sounds "sounds/slickloopfast.ogg" + her "................" ("annoyed", "narrow", "base", "down", cheeks="blush", tears="sweat") + gen "Why are you being so quiet [hermione_name]?" ("base", xpos="far_left", ypos="head") + play bg_sounds "sounds/slickloop.ogg" + her "......" ("annoyed", "base", "worried", "R_soft", cheeks="blush") + her "[genie_name]... I don't think I can..." + gen "What?" ("base", xpos="far_left", ypos="head") + stop bg_sounds + her "...{w=0.3} Finish..." ("angry", "happyCl", "base", "down", cheeks="blush", tears="soft") + + menu: + "-Chastise her-": + gen "Well then, I guess Slytherin will have to win the house cup this year." ("base", xpos="far_left", ypos="head") + her "B-but--" ("disgust", "narrow", "worried", "mid", cheeks="blush", tears="soft") + gen "Now, now [hermione_name]... A deal's a deal." ("base", xpos="far_left", ypos="head") + her "But I'm trying [genie_name]..." ("upset", "narrow", "worried", "down", tears="crying") + gen "Try harder..." ("base", xpos="far_left", ypos="head") + play bg_sounds "sounds/slickloopveryfast.ogg" + her "" (eyes="happyCl", tears="tears_soft_sweat") + call nar(">Hermione starts grinding furiously against her hand.") + + # Reset pose + $ hermione.set_body_zorder(armright=0) + $ hermione.set_body(armleft="down", armright="down") + $ hermione.set_pose(None) + $ hermione.strip("all") + + stop bg_sounds + her "*SOB*!{w=0.3} I can't..." ("angry", "happyCl", "base", "down", cheeks="blush", tears="messy") + gen "Well then... Zero points to Gryffindor." ("base", xpos="far_left", ypos="head") + her "{size=-5}After everything I...{/size} Really [genie_name]?" ("open", "base", "worried", "stare", cheeks="blush", tears="messy") + her "After I stood here and..." ("scream", "base", "angry", "mid", cheeks="blush", tears="messy") + her ".........." ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + + call blkfade + hide hermione_main + call her_chibi("stand", "desk", "base") + $ hermione.wear("all") + stop music fadeout 2.0 + + call hide_blkfade + + her "I am not going to sell you a single favour anymore, [genie_name]!" ("scream", "base", "low", "mid", cheeks="blush", tears="mascara") + + call her_walk(action="run", xpos="door", speed=2, reduce=True) + call her_chibi("leave") + + $ her_mood += 15 + + pause 1.0 + gen "..." ("base", xpos="far_left", ypos="head") + gen "We'll see about that." ("base", xpos="far_left", ypos="head") + + jump end_hermione_event + + "-Forgive her-": + gen "It's alright, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Really?" ("open", "narrow", "worried", "mid", cheeks="blush", tears="crying") + gen "I'm sure you're just a little nervous." ("base", xpos="far_left", ypos="head") + + # Reset pose + $ hermione.set_body_zorder(armright=0) + $ hermione.set_body(armleft="down", armright="down") + $ hermione.set_pose(None) + $ hermione.strip("all") + + her "Thank you [genie_name]." ("base", "base", "worried", "mid", cheeks="blush", tears="soft") + her "I promise to try harder next time." ("base", "happyCl", "worried", "mid", cheeks="blush") + + jump end_hg_pf_strip + +### Tier 5 ### + +label hg_pf_strip_T5_fingering: + + + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "I hope you're feeling horny." ("base", xpos="far_left", ypos="head") + her "Maybe a little, [genie_name]." ("base", "narrow", "base", "mid_soft") + gen "Good, then we better do something about that..." ("base", xpos="far_left", ypos="head") + her "[genie_name]..." ("open", "wink", "worried", "mid") + gen "Why don't you give that lovely pussy of yours a little rub." ("grin", xpos="far_left", ypos="head") + her "{heart}{heart}{heart}" ("base", "narrow", "base", "mid_soft") + her "............." ("base", "base", "base", "R_soft") + her "Alright...{w=0.4} if that's what you want..." ("base", "narrow", "worried", "down") + if not hg_masturbated.trigger: + her "(I can't believe I'm agreeing to do this...)" ("soft", "narrow", "base", "down") + else: + her "(I can't believe I'm agreeing to do this...{w=0.4} again...)" ("soft", "narrow", "base", "down") + + $ hg_masturbated.triggered() + + if hermione.is_worn("panties"): + call nar(">Hermione bends over and takes off her panties.") + pause 1.0 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("panties") + pause 1.0 + + if hermione.is_any_worn("clothes"): + gen "Now take off the rest." ("base", xpos="far_left", ypos="head") + $ hermione.strip("all") + + her "(Okay then, here I go...)" ("normal", "happyCl", "worried", "mid") + + show screen blkfade + with d5 + $ hermione.set_pose("masturbate") + $ hermione.set_body_zorder(armright=3) + $ hermione.set_body(armleft="on_pussy") + her "" ("soft", "closed", "worried", "mid", trans=d3) + $ renpy.play("sounds/slick_02.ogg") + with hpunch + with kissiris + her "*Ah*..." ("open", "squint", "worried", "R", cheeks="blush") + call ctc + hide screen blkfade + with d5 + + call play_music("playful_tension") # SEX THEME. + gen "Nice..." ("grin", xpos="far_left", ypos="head") + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + her "*Mmhh*... {heart}" ("open", "happyCl", "worried", "mid") + her "*Ah*...{w=0.4} {heart}-aha..." ("open", "happyCl", "worried", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + her "*Ah-ah*..." ("open", "happyCl", "worried", "mid") + gen "......................" ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.4} *ah*...{heart}" ("open", "happyCl", "worried", "mid") + her "*Ah*...{w=0.4} [genie_name]?" ("soft", "happy", "base", "R") + gen "What is it?" ("base", xpos="far_left", ypos="head") + her "Do you....{w=0.4}*Ah*...{w=0.4} like this?" ("open", "happyCl", "worried", "mid") + gen "Do I like watching \"you\" finger your cute little pussy?" ("base", xpos="far_left", ypos="head") + gen "Of course, [hermione_name]. Why?" ("base", xpos="far_left", ypos="head") + her "{heart}{heart}{heart}" ("normal", "happyCl", "worried", "mid") + her "*Ah*... You're just so quiet..." ("open", "happyCl", "worried", "mid") + gen "Do you need a little more encouragement?" ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.4} yes... please....{heart}" ("open", "happyCl", "worried", "mid") + gen "*Tch*... Such a dirty whore..." ("base", xpos="far_left", ypos="head") + play bg_sounds "sounds/slickloopfast.ogg" + her "Yes [genie_name], *Ah*...{heart}" ("grin", "narrow", "base", "up", cheeks="blush") + her "Please... *Ah*...{w=0.4} more...{heart}" ("grin", "base", "angry", "mid", cheeks="blush") + gen "You deserve to be punished for being such a filthy slut!" ("angry", xpos="far_left", ypos="head") + her "Yes, [genie_name]... punish me..." ("open", "narrow", "base", "up", cheeks="blush") + her "Make me your little slut..." ("open", "narrow", "base", "up", cheeks="blush") + play bg_sounds "sounds/slickloopveryfast.ogg" + her "I will... *Ah*...{w=0.4} {heart}do anything...{w=0.4} *Ah*...{heart}" ("silly", "narrow", "base", "dead") + gen "Anything [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "*Ah-a*...{heart} Yessss..." ("silly", "narrow", "base", "up", cheeks="blush") + gen "Cum." ("base", xpos="far_left", ypos="head") + # + # TODO: CUM LAYERS + # + her "{heart}{heart}{heart}!!!{heart}{heart}{heart}" ("silly", "narrow", "base", "dead", cheeks="blush") + with kissiris + with hpunch + $ renpy.play("sounds/slick_01.ogg") + + her "*Ah*...{heart}...{heart}" ("grin", "narrow", "annoyed", "up", cheeks="blush") + with kissiris + with hpunch + $ renpy.play("sounds/slick_01.ogg") + + her "*Ah*... *Ah*...{heart}" ("silly", "base", "base", "ahegao", cheeks="blush") + play bg_sounds "sounds/slickloopfast.ogg" + her "..." ("open_tongue", "closed", "base", "up", cheeks="blush") + her "...{heart}{heart}{heart}" ("grin", "narrow", "annoyed", "dead", cheeks="blush") + her "*Gah*...{w=0.4} *Ah*...{w=0.4} *Ah*..." ("open_tongue", "narrow", "annoyed", "dead", cheeks="blush") + play bg_sounds "sounds/slickloop.ogg" + her "[genie_name]...{heart}{heart}{heart}" ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "............." ("soft", "narrow", "annoyed", "up") + stop bg_sounds + call nar(">Hermione takes a minute to collect herself.") + + # Reset pose + $ hermione.set_body_zorder(armright=0) + $ hermione.set_body(armleft="down", armright="down") + $ hermione.set_pose(None) + + $ hermione.wear("all") + + jump end_hg_pf_strip + +### Tier 6 ### + +label hg_pf_strip_T6_fingering: + + $ hg_masturbated.triggered() + + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("base", "base", "base", "mid") + gen "You don't mind pleasuring yourself in front of me, do you?" ("base", xpos="far_left", ypos="head") + if her_whoring <= 16: + her "As long as I am being paid..." ("grin", "base", "base", "R") + gen "That's the spirit!" ("grin", xpos="far_left", ypos="head") + else: + her "I mean I have done it once today already..." ("grin", "base", "base", "R") + gen "Once more for good luck then!" ("grin", xpos="far_left", ypos="head") + her "If you insist...{heart}" ("open", "base", "base", "R", cheeks="blush") + + her "..." ("base", "narrow", "base", "mid_soft") + if hermione.is_worn("panties"): + call nar(">Hermione hastily takes off her panties.") + pause 1.0 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("panties") + pause 1.0 + + if hermione.is_any_worn("clothes"): + gen "Now take off the rest." ("base", xpos="far_left", ypos="head") + $ hermione.strip("all") + + her "(...)" ("base", "happyCl", "worried", "mid") + + show screen blkfade + with d5 + $ hermione.set_pose("masturbate") + $ hermione.set_body_zorder(armright=3) + $ hermione.set_body(armleft="on_pussy") + her "" ("soft", "closed", "worried", "mid", trans=d3) + $ renpy.play("sounds/slick_02.ogg") + with hpunch + with kissiris + her "*Ah*..." ("open", "squint", "worried", "R", cheeks="blush") + call ctc + hide screen blkfade + with d5 + + + stop music fadeout 3.0 + play bg_sounds "sounds/slickloop.ogg" fadein 2 + + her "*Mmmh*...{heart}" ("base", "narrow", "base", "down", cheeks="blush") + her "[genie_name]...{w=0.4} Do you...{w=0.4} like it when I do it like this?" ("grin", "narrow", "base", "down", cheeks="blush") + $ renpy.music.set_volume(0.3, 0.0) + call play_music("chipper_doodle") # HERMIONE'S THEME. + + gen "Yes, I love it..." ("base", xpos="far_left", ypos="head") + gen "Try going a little deeper with your fingers." ("base", xpos="far_left", ypos="head") + her "Alright [genie_name]..." ("base", "happyCl", "base", "mid", cheeks="blush") + play bg_sounds "sounds/slickloopfast.ogg" + her "*Ah*...{w=0.4} *Ah*...{w=0.4}{heart}" ("open", "happyCl", "worried", "mid", cheeks="blush") + her "*Ah*...{w=0.6} [genie_name]...{heart}" ("open", "happyCl", "worried", "mid", cheeks="blush") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Tell me what you're thinking about.\"": + her "*huh*?" ("open", "wink", "worried", "mid", cheeks="blush") + her "Oh, *umm*... nothing..." ("soft", "happyCl", "worried", "mid", cheeks="blush") + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "[genie_name],{w=0.4} it's a bit weird..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Even more reason to tell me." ("angry", xpos="far_left", ypos="head") + her "......" ("annoyed", "narrow", "annoyed", "mid", cheeks="blush") + her "Fine..." ("open", "base", "base", "R", cheeks="blush") + her "If you must know... I was thinking about the time I corrected professor Snape on the ingredients of a Hiccoughing potion." ("open", "narrow", "worried", "down", cheeks="blush") + gen "....." ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart}" ("soft", "narrow", "annoyed", "up", cheeks="blush") + her "It was...{w=0.4} *Ah*...{w=0.4} {heart} in front of the entire class as well." (cheeks="blush") + her "He refused to let me answer any questions for a week after that." ("base", "narrow", "worried", "down", cheeks="blush") + her "But it was worth it..." ("soft", "happy", "base", "R", cheeks="blush") + her "The look on his face when he realised he was wrong...{heart}" ("soft", "narrow", "annoyed", "up", cheeks="blush") + her "*A-ah*...{heart}" (cheeks="blush") + her "It just felt so good!{heart}" ("grin", "narrow", "base", "dead", cheeks="blush") + gen "This is what you're thinking of when masturbating?" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "dead", cheeks="blush") + her "Is that too weird?" ("upset", "narrow", "base", "mid", cheeks="blush") + gen "(No wonder why she's being such a know it all... she's getting off from it.)" ("base", xpos="far_left", ypos="head") + gen "Let's just get back to business shall we?" ("base", xpos="far_left", ypos="head") + her "................." ("base", "narrow", "annoyed", "up", cheeks="blush") + call nar(">Hermione goes quiet for a moment to enjoy herself, now fully focused on moving her fingers.","start") + gen "(Having a bit too much fun I think...)" ("base", xpos="far_left", ypos="head") + + "\"You really are a shameless slut, aren't you?\"": + her "Yes..." ("soft", "narrow", "annoyed", "up") + her "*Ah*... {heart}" ("silly", "narrow", "base", "dead") + her "I don't know if has to do with the time I've spent with you...{heart}" ("angry", "wink", "base", "mid") + her "Or if I've always been this way...{heart}" ("angry", "narrow", "base", "down") + her "But... {heart} {w=0.4}*Ah*...{w=0.4} {heart} I'm a slut [genie_name]...{heart}" ("soft", "narrow", "annoyed", "up") + play bg_sounds "sounds/slickloopfast.ogg" + her "A shameless slut..." ("grin", "narrow", "base", "dead") + her "That pleasures herself...{heart} {w=0.4}*Ah*..." ("soft", "narrow", "annoyed", "up") + her "Just to make her headmaster happy..." ("grin", "narrow", "base", "dead") + gen "Oh, yes..." ("base", xpos="far_left", ypos="head") + her "That's it [genie_name]..." ("base", "narrow", "worried", "up_soft") + her "Enjoy yourself while I stand here..." ("silly", "narrow", "base", "dead") + her "*Ah*...{heart}" ("open_wide_tongue", "narrow", "annoyed", "up") + her "Fingering my pussy..." ("silly", "narrow", "annoyed", "up") + her "*Ah*...{w=0.4} *Ah*...{heart}" ("grin", "narrow", "annoyed", "up") + her "*Ah*...{w=0.4} Do you.... like this [genie_name]?" ("shock", "happyCl", "worried", "mid") + her "Watching me {w=0.4}*Ah*...{w=0.4}{heart} degrade myself?" ("silly", "narrow", "base", "dead") + gen "Very much, [hermione_name]. Just keep going..." ("base", xpos="far_left", ypos="head") + her "{heart}{heart}{heart}" ("silly", "narrow", "base", "dead") + + "\"Play with your tits some more!\"": + her "*Hmm*?" ("soft", "narrow", "annoyed", "up") + her "Okay...{w=0.4} if you insist..." ("open", "base", "base", "R", cheeks="blush") + + $ hermione.set_body_zorder(armright=3) + $ hermione.set_body(armright="on_tits") + + her "*Ah*...{heart}" ("angry", "wink", "base", "mid") + gen "Now pinch your nipples." ("base", xpos="far_left", ypos="head") + her "[genie_name]..." ("open", "happy", "base", "mid", cheeks="blush") + gen "do it, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "..." ("open", "base", "base", "R", cheeks="blush") + $ renpy.play("sounds/gasp2.ogg") + her "*Ah*..." ("grin", "narrow", "base", "up", cheeks="blush") + gen "..." ("grin", xpos="far_left", ypos="head") + call nar(">You gaze at Hermione's breasts as she runs the tips of her fingers across her nipple...") + her "*Ah*..." ("silly", "narrow", "base", "dead") + gen "So you do like playing with those big tits of yours." ("grin", xpos="far_left", ypos="head") + her "I do, [genie_name]... {w=0.4}*Ah*...{heart}" ("soft", "narrow", "annoyed", "up") + her "I don't know why..." ("base", "base", "base", "R", cheeks="blush") + her "But I love it...{heart}{heart}" ("open", "narrow", "worried", "down") + gen "You nasty slut!" ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.4}{heart} *Ah-a*...{heart}" ("open_tongue", "narrow", "annoyed", "up") + her "I am..." + her "A nasty slut... {w=0.4}*Ah*...{heart}" ("silly", "narrow", "base", "dead") + gen "You are a disgrace, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "*Ah-ah*...{heart}{heart}{heart}" ("open_wide_tongue", "narrow", "annoyed", "up") + + gen "Why don't you come down and I'll help you finish?" ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "worried", "down") + + # Hermione climbs off your desk. + show screen blkfade + with d5 + hide hermione_main + call play_sound("climb_desk") + stop bg_sounds + ">Hermione slowly climbs down from the desk and stands in front of you." + pause.5 + + # Both hands down + $ hermione.set_body_zorder(armright=0) + $ hermione.set_body(armleft="down", armright="down") + + call her_chibi_scene("behind_desk_show_tits") #TODO Replace with naked chibi + + hide screen blktone + hide screen bld1 + hide screen blkfade + with d5 + call ctc + + her ".............." ("base", "narrow", "base", "up", cheeks="blush", trans=d3) + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-Grab her tits-": + call nar(">You reach forward and grab a hold of Hermione's tits.") + + call her_chibi_scene("grope_tits") + + her "[genie_name]!" ("shock", "happyCl", "worried", "mid") + her "This wasn't part of the deal!" ("open", "happyCl", "worried", "mid") + her "And I was almost about to--" ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Can't let you have all the fun by yourself can we [hermione_name]." ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.4}{heart} Well, as long as it's just to make this end faster..." ("open", "narrow", "base", "up", cheeks="blush") + her "I suppose I can...{w=0.4} *Ah*...{w=0.4}{heart} allow it..." ("base", "narrow", "base", "down", cheeks="blush") + call nar(">You give her tits a couple of firm squeezes...") + gen "Just admit that you love it." ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.4} fine...{heart}" ("open", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-5}I like it...{/size}" ("soft", "narrow", "annoyed", "up") + gen "What was that [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "......." ("normal", "narrow", "annoyed", "up") + her "I love this..." ("grin", "narrow", "base", "dead") + her "Standing here... all exposed..." ("base", "narrow", "worried", "down_soft", cheeks="blush") + her "*Ah*...{w=0.4} while you play with me...{heart}" ("grin", "narrow", "base", "up", cheeks="blush") + gen "Heh... Nice." ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart}" ("open", "narrow", "base", "up", cheeks="blush") + her "I sometimes wish I could spend all day in here..." ("grin", "narrow", "angry", "dead", cheeks="blush") + gen "Perhaps we could arrange that some time..." ("base", xpos="far_left", ypos="head") + call nar(">You keep on massaging the girl's breasts...") + her "......." + her "[genie_name]... I...{w=0.4} Please...{w=0.4} I was so close..." ("open", "base", "worried", "L", cheeks="blush") + her "*Ah*...{heart}" ("base", "narrow", "worried", "down") + her "Could you touch me...{w=0.4} down there..." ("open", "happy", "base", "mid", cheeks="blush") + gen "What was that [hermione_name]? You'll have to speak up." ("base", xpos="far_left", ypos="head") + her "Please finger me..." ("open", "narrow", "base", "up", cheeks="blush") + gen "One more time, a little louder this time." ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart} {size=+5}please finger my pussy!{/size}" ("scream", "narrow", "base", "up", cheeks="blush") + gen "As you wish..." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("grope_ass_front") + with vpunch + $ renpy.play("sounds/slick_02.ogg") + + call nar(">You swiftly plunge two fingers into her dripping pussy.") + + her "{heart}{heart}{size=+5}!!!{/size}{heart}{heart}" ("open_wide_tongue", "narrow", "annoyed", "up") + + "-Finger her-": + call her_chibi_scene("grope_ass_front") + call nar(">You run your hands up and down Hermione's legs...") + her "!!!" ("open", "happyCl", "worried", "mid") + call nar(">And slowly move your hands towards her pussy...") + her "................." ("silly", "narrow", "base", "dead") + gen "That's it [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "{size=-7}[genie_name]...{/size}" ("soft", "narrow", "annoyed", "up") + gen "Good girl." ("base", xpos="far_left", ypos="head") + her "...................." ("open", "closed", "base", "mid", cheeks="blush") + gen "Just be quiet for a second..." ("base", xpos="far_left", ypos="head") + call nar(">You enjoy the sensation of stroking the inside of Hermione's thighs...") + call nar(">Kneading her gently and moving ever closer to her wet pussy...") + gen "I love your big... firm, ass..." ("base", xpos="far_left", ypos="head") + call nar(">As you get closer to her pussy you suddenly move your hands around her back to squeeze her ass...") + her "....................." ("annoyed", "base", "annoyed", "dead", cheeks="blush") + gen "Your loins..." ("base", xpos="far_left", ypos="head") + call nar(">You slide your fingers across the side of her body as you return to the front, and then gently begin rubbing your forefinger just above her clit.") + her ".....................{size=-8} [genie_name]...{/size}" ("silly", "narrow", "base", "dead", cheeks="blush") + gen "What was that, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "....................." ("annoyed", "wink", "base", "mid", cheeks="blush") + her "... I...{w=0.4} {size=-5}... I need you...{w=0.4} inside of me...{/size}" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "You'll have to speak up if you expect me to hear you..." ("base", xpos="far_left", ypos="head") + her "I...{w=0.4} *Ah*...{w=0.4}{heart} need..." ("open", "narrow", "base", "up", cheeks="blush") + call nar(">You swiftly plunge two fingers into her drenched pussy.") + $ renpy.play("sounds/slick_02.ogg") + her "!!!{heart}{heart}" ("grin", "narrow", "annoyed", "up") + call nar(">You start to pump your fingers inside her before she can do more than gasp.") + play bg_sounds "sounds/slickloop.ogg" + her "{size=+10}{heart}{heart}!!!{heart}{heart}{/size}" ("silly", "narrow", "base", "dead") + gen "That's it [hermione_name]. Just enjoy yourself." ("base", xpos="far_left", ypos="head") + her ".................................................." ("base", "narrow", "base", "up", cheeks="blush") + gen "Do you like this?" ("base", xpos="far_left", ypos="head") + gen "You like it when I finger your pussy?" ("base", xpos="far_left", ypos="head") + her "I love it!{heart}{w=0.4} I love your fingers in my tight...{w=0.4} wet....{w=0.4} pussy!!{heart}" ("silly", "narrow", "annoyed", "up") + gen "Well, I certainly think we can do better..." ("base", xpos="far_left", ypos="head") + call nar(">with your other hand, you start rubbing your thumb against her clit.") + her "{size=+10}!!!{/size}" ("open", "narrow", "base", "up", cheeks="blush") + + play bg_sounds "sounds/slickloopfast.ogg" + call nar(">With little need to move, Hermione pounds herself down to the base of your fingers.") + her "*Ah*...{heart}{w=0.4} please...{w=0.4}{heart} keep...{heart}" ("silly", "narrow", "base", "dead", cheeks="blush") + her "Fingering my pussy!{heart}{heart}" ("silly", "narrow", "annoyed", "up", cheeks="blush") + gen "As you command!" ("grin", xpos="far_left", ypos="head") + call nar(">You force another finger into her pussy!") + $ renpy.play("sounds/slick_02.ogg") + play bg_sounds "sounds/slickloopveryfast.ogg" + her "*Ah*...{w=0.4} yes! {heart}iloveitiloveitiloveit!{heart}" ("scream", "wide", "annoyed", "dead", cheeks="blush") + gen "what do you love, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Ah!!{heart} I love your fingers in my pussy [genie_name]!{heart}" ("open_wide_tongue", "happyCl", "annoyed", "dead", cheeks="blush") + call nar(">Hermione's legs begin to shake slightly as you finger her with renewed vigour.") + gen "are you about to--" ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart} yes!!" ("mad", "narrow", "annoyed", "dead", cheeks="blush") + her "I'm about to cum [genie_name]!!{heart}" ("grin", "narrow", "base", "dead", cheeks="blush") + her "From being fucked by your fingers!!{heart}{heart}" ("open_tongue", "base", "base", "ahegao", cheeks="blush") + gen "Touch your tits [hermione_name]!" ("base", xpos="far_left", ypos="head") + gen "I want to see you play with them as you cum." ("base", xpos="far_left", ypos="head") + + $ hermione.set_body_zorder(armright=3) + $ hermione.set_body(armright="on_tits") + + her "*Ah*...{w=0.4} Yes...{w=0.4}*Ah*... my--" ("soft", "narrow", "base", "dead", cheeks="blush") + her "[genie_name]{heart}... I'm...*Ah*...{w=0.4} I'm cumming!{heart}" ("silly", "narrow", "annoyed", "dead", cheeks="blush") + her "{heart}{heart}{heart}!!!{heart}{heart}{heart}" ("silly", "narrow", "base", "dead", cheeks="blush") + with kissiris + with hpunch + $ renpy.play("sounds/slick_01.ogg") + # + # TODO: CUM LAYERS + # + her "*Ah*...{w=0.4}{heart}...{heart}" ("grin", "narrow", "annoyed", "dead", cheeks="blush") + with kissiris + with hpunch + $ renpy.play("sounds/slick_01.ogg") + her "*Ah*...{w=0.4} *Ah*...{heart}" ("silly", "narrow", "annoyed", "dead", cheeks="blush") + with kissiris + with hpunch + $ renpy.play("sounds/slick_01.ogg") + her "*Mmmmmmh*!!!" ("soft", "base", "annoyed", "dead", cheeks="blush") + her "........................" ("grin", "base", "annoyed", "dead", cheeks="blush") + stop bg_sounds + + if hermione.is_worn("bottom"): + call nar(">You remove your hands from underneath Hermione's skirt, fingers drenched by her love juices.") + else: + call nar(">You remove your hands from Hermione's love canal, fingers drenched by her love juices.") + + call her_chibi_scene("behind_desk_front") + show screen bld1 + with d3 + + # Reset pose + $ hermione.set_body_zorder(armright=0) + $ hermione.set_body(armleft="down", armright="down") + $ hermione.set_pose(None) + + gen "This shall do for now [hermione_name]." ("base", xpos="far_left", ypos="head") + + her "*Ah*...{w=0.4} *Ah*...{heart}" ("open", "narrow", "annoyed", "dead", cheeks="blush") + her "Yes...{w=0.4} yes, [genie_name]{heart}" ("silly", "narrow", "base", "mid_soft", cheeks="blush") + + $ hermione.wear("all") + $ renpy.music.set_volume(1.0, 3.0) + + jump end_hg_pf_strip diff --git a/game/scripts/characters/hermione/events/favors/dance_for_me_snape.rpy b/game/scripts/characters/hermione/events/favors/dance_for_me_snape.rpy new file mode 100644 index 00000000..51b9c9ec --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/dance_for_me_snape.rpy @@ -0,0 +1,762 @@ + + +### Tier 3 ### + +# Invite Snape + +label hg_pf_strip_T3_snape: # Fails + hide screen blktone + hide hermione_main + with d3 + + gen "[hermione_name], before you start I have one more favour to ask of you." ("base", xpos="far_left", ypos="head") + + her "Of course, [genie_name]." ("open", "closed", "base", "mid", xpos="base", ypos="base") + gen "Do you think you could go and fetch professor Snape for me?" ("base", xpos="far_left", ypos="head") + her "... Professor Snape?" ("annoyed", "squint", "base", "mid") + her "May I ask, why, [genie_name]?" + gen "Oh, I just think you could use a bigger audience for your striptease performance." ("base", xpos="far_left", ypos="head") + her "My striptease performance...?!!" ("shock", "wide", "base", "stare") + her "Are you completely out of your mind, [genie_name]?" ("angry", "base", "angry", "mid") + her "Wasn't it enough that I've had to embarrass myself in front my teacher once before?" ("open", "base", "angry", "mid") + her "And now you expect me to do it again... but willingly?!" ("scream", "closed", "angry", "mid") + gen "Short answer... yes." ("base", xpos="far_left", ypos="head") + her "I'm leaving!" ("angry", "base", "angry", "mid") + + call her_walk(action="leave") + + $ her_mood += 15 + $ hg_pf_strip.fail() + + jump end_hermione_event + + + +### Tier 4 ### + +# Invite Snape + +label hg_pf_strip_T4_snape: + if hg_strip.ss_counter == 0: + $ hg_strip.ss_counter += 1 + + hide screen blktone + hide hermione_main + with d3 + + gen "[hermione_name], before you start I have one more favour to ask of you." ("base", xpos="far_left", ypos="head") + + her "Of course, [genie_name]." ("open", "closed", "base", "mid", xpos="base", ypos="base") + gen "Do you think you could go and fetch professor Snape for me?" ("base", xpos="far_left", ypos="head") + her "... Professor Snape?" ("annoyed", "squint", "base", "mid") + her "May I ask, why, [genie_name]?" + gen "Oh, I just think you could use a bigger audience for your striptease performance." ("base", xpos="far_left", ypos="head") + her "My striptease performance...?!!" ("shock", "wide", "base", "stare") + her "With all due respect, [genie_name]..." ("angry", "base", "angry", "mid") + her "{size=-5}(Which I have oh so little left for you...){/size}" ("normal", "squint", "angry", "mid") + her "I refuse to degrade myself for professor Snape's amusement!" ("scream", "closed", "angry", "mid") + gen "No, no, you got it all wrong, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "*Hmm*...?" ("soft", "base", "base", "mid") + gen "I want to prove that professor Snape is dirty, and I need your help." ("base", xpos="far_left", ypos="head") + her "!!!" ("shock", "wide", "base", "stare") + gen "Yes, I want to catch him in the act!" ("base", xpos="far_left", ypos="head") + her "[genie_name], I didn't realise..." ("open", "base", "worried", "mid") + her "I see now..." ("base", "base", "base", "mid") + her "I am sorry for doubting you [genie_name]..." + gen "No biggie. Now go find professor Snape and bring him here." ("base", xpos="far_left", ypos="head") + her "Right away [genie_name]!" ("smile", "base", "angry", "mid") + + else: + hide screen blktone + hide hermione_main + with d3 + + gen "[hermione_name], before you start I have one more favour to ask of you." ("base", xpos="far_left", ypos="head") + + her "Of course, [genie_name]." ("open", "closed", "base", "mid", xpos="base", ypos="base") + gen "Do you think you could go and fetch professor Snape again?" ("base", xpos="far_left", ypos="head") + her "... professor Snape?" ("annoyed", "squint", "base", "mid") + her "may I ask, why, [genie_name]?" + gen "Oh, I just want you to dance for us." ("base", xpos="far_left", ypos="head") + her "!!!" ("open", "base", "base", "mid") + gen "I want to prove that professor Snape is dirty, and I need your help." ("base", xpos="far_left", ypos="head") + her "But didn't we already establish that last time I did this?" ("annoyed", "base", "worried", "R") + gen "Well, *Ehm*... sure..." ("base", xpos="far_left", ypos="head") + gen "But I will need more proof if I am to take this issue to the ministry of magic!" ("base", xpos="far_left", ypos="head") + her "....." ("angry", "base", "angry", "mid") + gen "So, what do you say [hermione_name]?" ("base", xpos="far_left", ypos="head") + gen "One more dance for the greater good?" ("base", xpos="far_left", ypos="head") + her "Well, alright..." ("disgust", "narrow", "base", "mid_soft") + gen "Good. Go find professor Snape then." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + show screen blkfade + with d5 + + stop music fadeout 1.0 + pause 2 + ">Hermione returns with Snape a few moments later." + + call play_sound("door") + call her_chibi("stand","desk","base") + call sna_chibi("stand","mid","base") + hide screen blkfade + with d5 + pause.5 + + call play_music("dark_fog") + sna "Genie... err, I mean Albus, you wanted to see me?" ("snape_01", xpos="base", ypos="base") + gen "Yes. Are you in the mood for a little striptease?" ("base", xpos="far_left", ypos="head") + sna "Oh...?" ("snape_05") + sna "Miss Granger here will be performing I assume?" + her ".............." ("angry", "happyCl", "worried", "mid", emote="sweat", xpos="mid", ypos="base") + gen "Yes, our little minx is more than happy to take off her clothes for our entertainment." ("base", xpos="far_left", ypos="head") + her "............" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "Aren't you [hermione_name]?" ("base", xpos="far_left", ypos="head") + pause.5 + + her "" ("angry", "happy", "worried", "R") + pause 1 + + her "" ("angry", "happy", "worried", "mid") + pause 1.5 + + her "Yes, [genie_name]." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "Let's get started then!" ("base", xpos="far_left", ypos="head") + hide hermione_main + with d3 + pause.2 + sna "" ("snape_13") + pause.8 + + $ hermione.strip("robe", "accessory") + hide snape_main + show screen blkfade + with d5 + + $ renpy.play('sounds/08_hop_on_desk.ogg') #Sound of the desk squeaking. + pause 3 + call her_chibi("dance","on_desk","on_desk") + call sna_chibi("stand","desk_close","desk_close") + + # her "" (animation=bob) + her "............." ("open", "closed", "base", "mid", ypos="head", flip=False) + sna "......................" ("snape_05") + gen ".........................." ("base", xpos="far_left", ypos="head") + + hide screen bld1 + hide screen blkfade + with d5 + pause.8 + + call bld + gen "So... Severus... How's life?" ("base", xpos="far_left", ypos="head") + sna "Well, you know... same old, same old..." ("snape_09") + sna " The Students are causing me grief..." ("snape_06") + sna "In fact, miss Granger here managed to cause me more stress than any other student..." ("snape_03") + pause.2 + her "..............................." ("grin", "base", "base", "R", xpos="mid", ypos="base") + gen "Oh, I am sure she is very sorry about that..." ("base", xpos="far_left", ypos="head") + her "{size=-4}(Not even a little bit!){/size}" ("base", "happyCl", "base", "mid") + gen "And will make up for it today, won't you, [hermione_name]?" ("base", xpos="far_left", ypos="head") + pause.2 + + her "*Ehm*... Yes, [genie_name]." ("base", "happy", "base", "mid") + pause.2 + + call nar(">Hermione starts to sway her hips seductively.") + + if hermione.is_worn("top"): + call nar(">Hermione reaches to take off her top...") + $ hermione.strip("top") + + call ctc + + her "..................." ("open", "narrow", "worried", "down") + sna "*Hmm*... You are being suspiciously quiet, Miss Granger." ("snape_05") + her "{size=-4}(Oh no! Is he onto us?){/size}" ("shock", "wide", "base", "stare") + her "I'm just doing what the headmaster told me to, Professor Snape..." ("grin", "happyCl", "worried", "mid", emote="sweat") + sna "Aren't you going to lecture me on the \"corruption that is taking over Hogwarts\" like you do every other day during classes?" ("snape_03") + gen "Severus..." ("base", xpos="far_left", ypos="head") + sna "No Albus, I want to hear what little miss perfect has to say." ("snape_03") + her "I just want you to have a good time, Professor Snape..." ("grin", "happyCl", "worried", "mid", emote="sweat") + sna "Oh! It's \"Professor Snape\" now, is it?" ("snape_03") + sna "What happened to \"snape'o'doodle\" and \"Professor Snivellus\"??!" ("snape_10") + gen "{size=-5}({i}snape'o'doodle{/i}, heh... that's funny.){/size}" ("grin", xpos="far_left", ypos="head") + her "............." ("grin", "happyCl", "worried", "mid", emote="sweat") + sna "Yes, I know what you are calling me behind my back, you wretched girl!" ("snape_08") + her "Well, maybe that's because you deserve it... {i}Snivellus!{/i}" ("scream", "base", "angry", "mid", emote="angry") + sna "{size=+2}What did you just say?!{/size}" ("snape_10") + sna "How dare you....?" + sna "Who do you think you are? You filthy mudbl--" ("snape_15") + her "[genie_name], one of your staff members is verbally abusing me!" ("scream", "closed", "angry", "mid") + her "Are you going to allow this?" + sna "Verbally abusing...?! You have some nerve, girl!" ("snape_08") + sna "Albus, will you allow her to talk back to a teacher like that?" ("snape_10") + her "[genie_name]!" ("scream", "closed", "angry", "mid") + sna "Albus!" ("snape_10") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"[hermione_name], show some respect!\"": + $ her_mood += 9 + her "What?" ("annoyed", "base", "angry", "mid") + her "But [genie_name]!" + gen "[hermione_name], you {size=+4}will{/size} calm down now." ("base", xpos="far_left", ypos="head") + her "*Tsk*!" ("disgust", "narrow", "base", "mid_soft") + if hermione.is_worn("bottom"): + gen "And take off your bottoms already, would you?" ("base", xpos="far_left", ypos="head") + her "......." ("annoyed", "narrow", "angry", "R") + sna "..........." ("snape_13") + + "\"Severus, you started this.\"": + $ sna_friendship -= 5 + sna "What? Me?!" ("snape_10") + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + sna "Albus, you are spoiling the girl! She must be taught a lesson!" ("snape_08") + gen "............... Severus." ("base", xpos="far_left", ypos="head") + gen "Did you hit your head?!" ("angry", xpos="far_left", ypos="head") + sna "I beg your pardon?" ("snape_03") + gen "The girl is already stripping for you!" ("angry", xpos="far_left", ypos="head") + gen "What punishment are you talking about?" ("angry", xpos="far_left", ypos="head") + sna "*Tsk*... How about a flogging?" ("snape_16") + gen "Severus!" ("angry", xpos="far_left", ypos="head") + sna "Alright, alright, I see your point..." ("snape_17") + gen "[hermione_name], are you going to strip or are you going to climb on my desk to give us a better view?" ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("open", "narrow", "worried", "down") + if hermione.is_worn("bottom"): + gen "Take off your bottoms, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." ("soft", "base", "base", "mid") + + "\"Both of you, calm the fuck down.\"": + gen "You, tall-dark-and-handsome, calm down a bit, would you?" ("base", xpos="far_left", ypos="head") + sna "I beg your pardon?" ("snape_03") + her "Yes! You tell him profess--" ("annoyed", "narrow", "angry", "R") + gen "You as well, you perverted little minx!" ("base", xpos="far_left", ypos="head") + if hermione.is_worn("bottom"): + gen "Calm down and take your bottoms off already." ("base", xpos="far_left", ypos="head") + else: + gen "Calm down and keep doing what you were paid to do!" ("base", xpos="far_left", ypos="head") + her "I am not perverted..." ("annoyed", "narrow", "annoyed", "mid") + if hermione.is_worn("bottom"): + gen "Your bottoms, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "......" ("annoyed", "narrow", "angry", "R") + sna "............." ("snape_13") + + "-Unleash your rage {size=-2}(Hardcore){/size}-" if game.difficulty >= 3: #Hardcore difficulty dialogue. + $ her_mood += 18 + $ sna_friendship -= 10 + gen "Both of you..." ("base", xpos="far_left", ypos="head") + stop music + with hpunch + gen "Shut the fuck up!!!" ("angry", xpos="far_left", ypos="head") + gen "You!... You good for nothing, ugly-faced, crooked-nosed-wannabe-wizard!" ("angry", xpos="far_left", ypos="head") + with hpunch + sna "(...)" ("snape_11") + her "(... yikes!)" ("angry", "wink", "base", "mid") + sna "(What did he just say to me?!)" ("snape_08") + gen "Shut your stupid mouth or I will send you flying out that bloody window!" ("angry", xpos="far_left", ypos="head") + gen "That bitch is already stripping for you, so what more do you want?!" ("angry", xpos="far_left", ypos="head") + her "That B-Bitc--" ("shock", "wide", "base", "stare") + gen "And you... stripper-whore!" ("angry", xpos="far_left", ypos="head") + gen "Do what you are paid for and start stripping already!!!" ("angry", xpos="far_left", ypos="head") + her "......" ("angry", "closed", "angry", "mid", emote="angry") + sna "............." ("snape_05") + her "..." ("mad", "squint", "angry", "mid") + + pause.5 + + if hermione.is_worn("bottom"): + call nar(">Hermione swiftly takes off her bottoms, showing off her muggle-born ass.") + $ hermione.strip("bottom") + call ctc + + sna "*Hmm*..." + her "........................" ("open", "narrow", "worried", "down") + gen "Yes, much better!" ("base", xpos="far_left", ypos="head") + + if hermione.is_worn("bra") and hermione.is_worn("panties"): + call nar(">Hermione keeps on dancing, now wearing nothing but her underwear.") + elif hermione.is_worn("bra"): + call nar(">Hermione keeps on dancing, now wearing nothing but her bra.") + elif hermione.is_worn("panties"): + call nar(">Hermione keeps on dancing, now wearing nothing but her panties.") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Severus, what about that Potter boy?\"": + her "(.....?)" ("soft", "base", "base", "mid") + sna "What about him?" ("snape_09") + gen "Is he still causing you grief?" ("base", xpos="far_left", ypos="head") + sna "Oh..." ("snape_09") + sna "Not really, no..." + sna "To be honest I never really had a problem with the boy himself..." ("snape_06") + sna "Although I did plan to make his life here miserable because of his father..." + sna "But lately I have way more interesting projects to occupy myself with..." ("snape_02") + her "..................." ("soft", "base", "base", "mid") + + "\"Severus, what about the Weasels?\"": + sna "Weasels?" ("snape_05") + sna "Oh you mean Weasley's..." ("snape_09") + sna "What about them?" ("snape_09") + gen "Are they still causing you trouble?" ("base", xpos="far_left", ypos="head") + sna "Yes... More than ever." ("snape_09") + gen "*Hmm*...?" ("base", xpos="far_left", ypos="head") + gen "You seem surprisingly indifferent about that..." ("base", xpos="far_left", ypos="head") + sna "That's because I know that they will get what they deserve eventually..." ("snape_05") + gen "Revenge? Cool! What do you have in mind?" ("base", xpos="far_left", ypos="head") + her "!!!" ("soft", "base", "base", "mid") + sna "*Hmm*... Can't discuss this with \"the enemy\" present." ("snape_06") + her "*Tsk*!" ("annoyed", "narrow", "angry", "R") + sna "All I can say is that it involves their beloved little sister Ginny..." ("snape_13") + gen "Ginny? *Hmm*... What a curious name for a girl..." ("base", xpos="far_left", ypos="head") + gen "............." ("base", xpos="far_left", ypos="head") + gen "So, you plan to fuck her then?" ("base", xpos="far_left", ypos="head") + sna "!!?" ("snape_08") + sna "Albus, please, not in front of the girl!" ("snape_17") + gen "Alright, alright..." ("base", xpos="far_left", ypos="head") + her "{size=-5}(Ginny...){/size}" ("open", "narrow", "worried", "down") + + "\"How would you grade Hermione's butt?\"": + sna "miss Granger's buttocks?" ("snape_05") + her "!!!............" ("annoyed", "narrow", "angry", "R") + gen "Yes! As you would grade a paper." ("base", xpos="far_left", ypos="head") + sna "*Hmm*..." ("snape_13") + pause.1 + call nar(">Professor Snape gives Hermione's buttocks an appraising look...") + her ".........?" ("upset", "wink", "base", "mid") + sna "I would say..." ("snape_13") + her "............?!" ("base", "narrow", "worried", "down") + sna "Yes... \"Dreadful\"." ("snape_09") + her "(What?!)" ("shock", "wide", "base", "stare") + sna "Unsatisfactory..." ("snape_09") + sna "Look at that pitiful thing. Tiny and skinny... That's a boy's butt." + her "!!!!!!!!!!" ("angry", "narrow", "annoyed", "mid", emote="angry") + + if hermione.is_worn("bra"): + gen "Why don't you take off your bra now, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "............." ("open", "narrow", "worried", "down") + call nar(">Hermione undoes her bra and then slowly takes it off.") + pause .5 + $ hermione.strip("bra") + + call ctc + else: + call nar(">Hermione cups her breasts playfully, squeezing them in the process.") + + gen "Alright! We Finally get to the good stuff!" ("base", xpos="far_left", ypos="head") + sna "*Hmm*..." ("snape_13") + her "........" ("annoyed", "closed", "base", "mid") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-Start jerking off-": + jump hg_pf_strip_T4_snape_masturbate + + "-Just keep on watching-": + jump hg_pf_strip_T4_snape_watch + +label hg_pf_strip_T4_snape_watch: + call play_music("dark_fog") + + her "I will just keep on dancing then..." ("open", "closed", "base", "mid") + + # her "" (animation=bob) + call her_chibi("dance","on_desk","on_desk") + call ctc + + call nar(">Hermione squeezes her breasts and shakes her hips slightly...") + + gen "Yes, [hermione_name]. Very good." ("base", xpos="far_left", ypos="head") + sna "*Ahem*! Acceptable performance, miss Granger." ("snape_12") + her "...." ("open", "closed", "base", "mid") + gen "Heh..." ("base", xpos="far_left", ypos="head") + gen "So... how would you grade her tits?" ("base", xpos="far_left", ypos="head") + her "......" ("annoyed", "closed", "base", "mid") + sna "*Hmm*......" ("snape_20") + her "........" ("annoyed", "closed", "base", "mid") + sna "\"B+\"!" ("snape_12") + her "!!!" ("open", "wide", "base", "stare") + gen "Really?" ("base", xpos="far_left", ypos="head") + sna "Yes. I do give credit where it's due." ("snape_12") + her "(Professor...)" ("angry", "wide", "base", "stare") + her "(Time for my finishing act then!)" ("open", "closed", "base", "mid") + pause.1 + + if hermione.is_worn("panties"): + call nar(">Hermione bends over and slides her panties down.","start") + ">Her movements lack grace..." + call nar(">But a pretty pussy is always a welcome sight nonetheless...","end") + pause.5 + + $ hermione.strip("panties") + + call ctc + + sna "Yes... Yes..." ("snape_20") + sna "Now shake those B+ titties for me, you harlot!" + her "......." ("angry", "happyCl", "worried", "mid") + + pause.5 + + call nar(">All of a sudden Hermione breaks into a series of rather complex pirouettes.") + sna "Yes, such grace..." ("snape_19") + sna "That lithe, flexible body!" ("snape_20") + her "{size=-5}(Three-two-one... Three-two-one... And step!){/size}" ("open", "closed", "base", "mid") + call nar(">Hermione seems very focused on her dancing routine.") + sna "Yes, and now another pirouette!" ("snape_19") + sna "Magnificent!" + show screen blkfade + with d5 + + ">Hermione performs another set of movements and pirouettes..." + ">Gives a little curtsy bow to the imaginary audience..." + ">And then exhaustedly slumps down on her butt." + + call her_chibi("sit_naked","on_desk","on_desk") + + call hide_characters + hide screen blktone + hide screen bld1 + hide screen blkfade + with d5 + call ctc + + show screen bld1 + sna "Good job, you harlot!" ("snape_22") + her "............." ("soft", "happy", "base", "R", animation=None) + + if game.daytime: + sna "Well, my class is about to start so I will be leaving now." ("snape_22") + sna "Don't you have potion class with me today, Miss Granger?" + her "Yes, [genie_name]..." ("annoyed", "narrow", "base", "dead") + sna "Well, don't be late, girl..." ("snape_22") + sna "Albus..." ("snape_02") + gen "See you soon, Severus." ("grin", xpos="far_left", ypos="head") + else: + sna "Well, it is getting rather late. I think I will be leaving now." ("snape_22") + sna "Good night, Albus." + gen "Severus." ("base", xpos="far_left", ypos="head") + sna "Harlot." ("snape_22") + her "Professor..." ("annoyed", "narrow", "base", "dead") + + call ctc + + call hide_characters + show screen blkfade + with d5 + + ">Professor Snape leaves..." + stop music fadeout 1.0 + her "...................." ("annoyed", "narrow", "base", "dead", ypos="head", flip=False) + pause.5 + + her "May I... may I get paid now... [genie_name]...?" ("normal", "happyCl", "worried", "mid") + + jump end_hg_pf_strip + +label hg_pf_strip_T4_snape_masturbate: + call play_music("playful_tension") + pause.2 + + call hide_characters + show screen blkfade + with d5 + pause.2 + + her "[genie_name]?!" ("open", "wide", "base", "stare", ypos="head", flip=False) + gen "It's alright, [hermione_name]. Don't mind me..." ("base", xpos="far_left", ypos="head") + sna "Oh, we're doing it like this then?" ("snape_12", ypos="head") + sna "Well, don't mind if I do..." ("snape_12") + her "!!!" (animation=None) + + call gen_chibi("jerk_off","behind_desk","base") + call her_chibi("dance_pause","on_desk","on_desk") + call sna_chibi("jerk_off","desk_close", "desk_close") + hide screen blktone + hide screen blkfade + with d5 + call ctc + + her "No, guys... *Err*... I mean, sirs! *Ehm*... professors!" ("angry", "wide", "base", "stare", xpos="mid", ypos="base") + gen "Don't you mind us [hermione_name], just keep on doing your thing." ("base", xpos="far_left", ypos="head") + her "But..." + her "No! I refuse to dance with those things pointed at me!" ("angry", "happyCl", "worried", "mid") + her "You need to put them away or the dance is over!" + gen "You aren't in any position to give us orders, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "that was not an order, [genie_name]. It was an ultimatum." ("clench", "base", "angry", "mid", emote="angry") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Alright Severus, let's be civil...\"": + hide hermione_main + with d3 + pause.2 + sna "I see Miss Granger manages to remain exceptionally stubborn in any situation..." ("snape_03") + call hide_characters + hide screen bld1 + with d5 + + call gen_chibi("sit_behind_desk") + call sna_chibi("stand","desk","base") + with fade + pause.3 + + jump hg_pf_strip_T4_snape_watch + + "\"(Psst, Hermione! Remember why we are doing this!)\"": + pass + + + if her_tier < 5: # Hermione is NOT ok with it. + $ her_mood += 15 + her "Oh..." ("open", "wide", "base", "stare") + her "No, I can't! This is just not worth it!" ("angry", "happyCl", "worried", "mid") + call hide_characters + show screen blkfade + with d5 + + $ hermione.wear("all") + ">Hermione jumps off the desk and starts to put her clothes back on." + sna "Well, this was awfully anticlimactic..." ("snape_03") + gen "You don't say..." ("angry", xpos="far_left", ypos="head") + sna "May as well leave now I suppose. I will talk to you later, Albus." ("snape_03") + gen "Yes, later, Severus." ("base", xpos="far_left", ypos="head") + sna "Miss Granger..." ("snape_04") + her "Professor..." ("angry", "happyCl", "worried", "mid", ypos="head", flip=False) + + call sna_chibi("hide") + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + call play_sound("door") + ">Professor Snape leaves." + stop music fadeout 1.0 + hide screen blkfade + with d5 + + her "...................." ("annoyed", "narrow", "base", "dead", xpos="mid", ypos="base") + call ctc + + her "... Can I get paid now... [genie_name]...?" ("normal", "happyCl", "worried", "mid") + + jump end_hg_pf_strip + + + else: # Hermione IS ok with it. + her "Oh, right..." ("shock", "wide", "base", "stare") + sna "What was that?" ("snape_05") + her "Please don't mind what I just said..." ("silly", "happyCl", "worried", "mid", emote="sweat") + sna "*Hmm*...?" ("snape_05") + her "I do not mind you touching yourself in front of me..." ("silly", "happyCl", "worried", "mid", emote="sweat") + her "Yes, I do not mind it at all..." + her "I will just keep on dancing then..." + + call her_chibi("dance","on_desk","on_desk") + # her "" (animation=bob) + + call nar(">You keep on jerking off while you're watching Hermione dance.","start") + call nar(">Hermione squeezes her breasts and shakes her hips slightly.","end") + + gen "Yes, [hermione_name]. Very good." ("base", xpos="far_left", ypos="head") + sna "*Ahem*! Acceptable performance, miss Granger." ("snape_12") + her "...................." ("angry", "happyCl", "worried", "mid") + gen "Heh..." ("base", xpos="far_left", ypos="head") + gen "So, how would you grade her tits?" ("base", xpos="far_left", ypos="head") + her "......" ("open", "wide", "base", "stare") + sna "*Hmm*......" ("snape_13") + her "........" ("annoyed", "narrow", "angry", "R") + sna "\"B+\"!" ("snape_12") + her "!!!" ("open", "wide", "base", "stare") + gen "Really?" ("base", xpos="far_left", ypos="head") + sna "Yes. I do give credit where credit is due." ("snape_12") + her "(Professor...)" ("annoyed", "closed", "base", "mid") + her "(Time for my finishing act then!)" ("open", "closed", "base", "mid") + pause.1 + + if hermione.is_worn("panties"): + pause.5 + $ hermione.strip("panties") + call nar(">Hermione bends over and slides her panties down.","start") + ">Her movements lack grace..." + ">But a pretty pussy is always a welcome sight nonetheless..." + call nar(">You show your appreciation by stroking your cock even faster...","end") + call ctc + + sna "Yes... Yes!!!" ("snape_18") + sna "Now shake those B+ titties for me, you harlot!" + her "......." ("angry", "happyCl", "worried", "mid") + pause.5 + + call nar(">All of a sudden Hermione breaks into a series of rather complex pirouettes.") + sna "Yes, such grace..." ("snape_19") + sna "That lithe, flexible body!" ("snape_20") + her "........." ("grin", "narrow", "annoyed", "up") + sna "Oh, yes!" ("snape_20") + her "{size=-5}(Three-two-one... Three-two-one... And step!){/size}" ("grin", "narrow", "annoyed", "up") + call nar(">Hermione seems very focused on her dancing routine.") + sna "Yes, and now another pirouette!" ("snape_19") + sna "Magnificent!" + sna "I would applaud you but one of my hands is very busy at the moment." ("snape_13") + gen "{size=-4}(Was that an attempt at a joke?){/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-4}(Man, horny Snape is weird...){/size}" ("base", xpos="far_left", ypos="head") + + her "" (animation=None) + call hide_characters + show screen blkfade + with d5 + + ">Hermione performs another set of movements and pirouettes..." + ">Gives a little curtsy bow to the imaginary audience..." + ">And then exhaustedly slumps down on her butt." + + call her_chibi("sit_naked","on_desk","on_desk") + + hide screen blktone + hide screen bld1 + hide screen blkfade + with d5 + call ctc + + her "Whew... This was--" ("open", "closed", "base", "mid") + with hpunch + + gen "*ARGH*! YOU FUCKING WHORE!" ("angry", xpos="far_left", ypos="head") + hide screen bld1 + with d3 + + call cum_block + call gen_chibi("cum","behind_desk","base") + pause.2 + + $ hermione.set_cum(face="light") + pause 0.7 + $ hermione.set_cum(breasts="light") + pause 1 + $ hermione.set_cum(hair="light") + + + her "??!!!" ("shock", "wide", "base", "stare") + her "" ("angry", "happyCl", "worried", "mid") + hide screen bld1 + with d3 + call ctc + + sna "Good job, you harlot!" ("snape_18") + sna "Here is your reward!" ("snape_21") + + call cum_block + call sna_chibi("cum","desk_close","desk_close") + pause.2 + + $ hermione.set_cum(face="heavy") + pause 0.7 + $ hermione.set_cum(breasts="heavy", body="heavy") + pause 1 + $ hermione.set_cum(crotch="light") + + her "!!!!!!!!!!!" ("shock", "wide", "base", "stare") + hide screen bld1 + with d3 + call ctc + + sna "Oh... Yes..." ("snape_21") + gen "Little slut!" ("angry", xpos="far_left", ypos="head") + her "..............................." ("grin", "narrow", "annoyed", "up") + + sna "Ha-ha-ha! This is magnificent!" ("snape_21") + gen "I know, right!?" ("grin", xpos="far_left", ypos="head") + + call gen_chibi("cum_done","behind_desk","base") + call sna_chibi("cum_done","desk_close","desk_close") + + sna "Yes... We should do this more often." ("snape_22") + her "................." ("grin", "narrow", "annoyed", "up") + + sna "Your performance was acceptable, miss Granger..." ("snape_20") + her "Thank you........." ("annoyed", "narrow", "base", "dead") + sna "But if I were to grade it..." ("snape_19") + her "..........." ("annoyed", "narrow", "base", "dead") + sna "*Hmm*...." ("snape_22") + her "............" ("annoyed", "narrow", "base", "dead") + sna "{size=+5}F+!{/size}" ("snape_10") + stop music + + her "{size=+5}WHAT?!!!{/size}" ("shock", "wide", "base", "stare") + sna "Yes... Quite a few things could use some improvement actually." ("snape_09") + call play_music("chipper_doodle") + her "I cannot believe this!" ("clench", "base", "angry", "mid", emote="angry") + pause.5 + + call hide_characters + show screen blkfade + with d5 + + ">Hermione furiously jumps off your desk." + pause 2 + hide hermione_main + + call sna_chibi("hold_dick","mid","base") + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base", flip=True) + + hide screen bld1 + hide screen blktone + hide screen blkfade + with d5 + call ctc + + her "I demand a higher grade than that!" ("soft", "base", "angry", "mid", xpos="right", ypos="base", flip=True) + sna "You do not demand a grade miss Granger, you earn it." ("snape_09") + her "I did earn it!" ("open", "base", "base", "R") + her "And could you at least have the decency to stop touching yourself, professor!" ("annoyed", "narrow", "angry", "R") + sna "*Tch*..." ("snape_12") + hide hermione_main + with d3 + + gen "(Are they for real?)" ("base", xpos="far_left", ypos="head") + hide screen bld1 + with d3 + pause.2 + + show screen blkfade + with d5 + + ">You watch Snape with his dick still hanging out and the cum-covered Hermione argue loudly about her imaginary grade." + ">After a while Professor Snape agrees to change Hermione's grade from \"F+\" to \"D-\"." + ">Then he beats a hasty retreat before Hermione has a chance to start another argument." + pause 1 + + call sna_chibi("stand","mid","base", flip=True) + hide screen blkfade + with d5 + + call sna_walk(action="leave") + pause.5 + + call her_chibi("stand","desk","base") + pause.2 + + her "Well..." ("annoyed", "base", "worried", "R", xpos="mid", ypos="base", flip=False) + her "Was our mission a success, [genie_name]?" + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"*huh*? What mission?\"": + $ her_mood += 7 + her "I only agreed to this so that you could catch professor Snape in the act, [genie_name]!" ("scream", "happyCl", "worried", "mid") + her "So that we would have definite proof that he is \"dirty\"!" ("normal", "happyCl", "worried", "mid") + gen "Oh, that mission..." ("base", xpos="far_left", ypos="head") + gen "Yes. Mission accomplished!" ("base", xpos="far_left", ypos="head") + "\"Yes! Thanks to you!\"": + pass + + gen "Good job, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "I am happy to have been of help, [genie_name]!" ("normal", "happyCl", "worried", "mid") + pause.5 + show screen blkfade + with d5 + + her "... Can I get paid now, please?" ("angry", "happyCl", "worried", "mid", emote="sweat", ypos="head", flip=False) + + jump end_hg_pf_strip diff --git a/game/scripts/characters/hermione/events/favors/give_me_a_handy.rpy b/game/scripts/characters/hermione/events/favors/give_me_a_handy.rpy new file mode 100644 index 00000000..66a23743 --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/give_me_a_handy.rpy @@ -0,0 +1,1117 @@ + + +### Hermione Handjob ### + +label hg_pf_handjob: + + if hg_pf_handjob.counter == 0: + gen "{size=-4}(Should I ask her for a handjob?){/size}" ("base", xpos="far_left", ypos="head") + else: + gen "{size=-4}(I feel like getting another handjob!){/size}" ("base", xpos="far_left", ypos="head") + + if hg_pf_handjob.counter < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + # Start Event + $ current_payout = 45 + $ hg_pf_handjob.start() + + + # End Event + label end_hg_pf_handjob: + + # Setup + stop music fadeout 1.0 + call hide_characters + show screen blkfade + with d3 + + $ hermione.set_cum(None) + $ hermione.wear("all") + + call her_chibi("stand","desk","base", flip=False) + call gen_chibi("sit_behind_desk") + + hide screen blkfade + if her_mood != 0: + her "" ("annoyed", "base", "angry", "mid", xpos="mid", ypos="base", trans=fade) + else: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + # Points + if her_tier <= 5: + gen "Yes, [hermione_name]. {number=current_payout} to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += current_payout + else: + gen "You may leave now, [hermione_name]." ("base", xpos="far_left", ypos="head") + + her "Thank you, [genie_name]..." ("soft", "base", "base", "R") + + if game.daytime: + her "I better go. My classes are about to start." + else: + her "I'd better go now. It's getting pretty late..." + + # Hermione leaves + call her_walk(action="leave") + + # Increase level + if her_tier == 4: + if her_whoring < 18: # Points til 18 + $ her_whoring += 1 + if her_tier == 5: + if her_whoring < 21: # Points til 21 + $ her_whoring += 1 + + jump end_hermione_event + +### Fail Events ### + +label hg_pf_handjob_fail: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "Do you know what a \"handjob\" is?" ("base", xpos="far_left", ypos="head") + + $ hg_pf_handjob.fail_intentional() + + jump too_much + +### Tier 4 ### + +# Event 1 (i) - Hermione wants 100 house points for it! +# Event 2 (i) - Reluctantly does it again. +# Event 3 (r) - + +label hg_pf_handjob_T4_intro_E1: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "Do you know what a \"handjob\" is?" ("base", xpos="far_left", ypos="head") + her "Why?" ("annoyed", "narrow", "annoyed", "mid") + gen "I feel like getting one..." ("base", xpos="far_left", ypos="head") + her "[genie_name]!" ("angry", "base", "angry", "mid") + gen "Just another favour. No big deal, right?" ("base", xpos="far_left", ypos="head") + her "......" ("disgust", "narrow", "base", "mid_soft") + her "{size=-7}I want a hundred house points for this...{/size}" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "*huh*? What was that?" ("base", xpos="far_left", ypos="head") + her "I want a hundred house points for this!!!" ("scream", "happyCl", "worried", "mid") + her "" ("clench", "happyCl", "worried", "mid") + gen "A Hundred house points, *huh*?" ("base", xpos="far_left", ypos="head") + gen "And you will stroke my cock and everything?" ("base", xpos="far_left", ypos="head") + her "{size=-7}Yes...{/size}" ("disgust", "narrow", "base", "mid_soft") + gen "Sorry, I couldn't hear you..." ("base", xpos="far_left", ypos="head") + her "Yes, I said yes! I will stroke your stupid cock, [genie_name]!" ("scream", "happyCl", "worried", "mid") + her "" ("upset", "narrow", "angry", "R") + + label back_to_handjob_choices: + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"You will get fifteen house points.\"": + $ her_mood += 7 + her "For fifteen house points I suppose I could let you molest me a little, but that is all you'll be getting, [genie_name]." ("annoyed", "narrow", "angry", "R") + her "I will not stoop as low as to sell handjobs for fifteen house points." + her "That is just insulting, [genie_name]." + + jump back_to_handjob_choices + + "\"You will get forty-five house points.\"": + $ her_mood += 3 + her "....." ("annoyed", "narrow", "angry", "R") + her "{number=current_payout} house points...?" ("open", "narrow", "worried", "down") + her "This could put Gryffindor back in the lead..." + gen "Is that a \"yes\"?" ("base", xpos="far_left", ypos="head") + her "Yes, it is a yes, [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + gen "Great!" ("base", xpos="far_left", ypos="head") + pass + + "\"You will get one hundred house points.\"": + call play_music("chipper_doodle") # HERMIONE'S THEME. + $ current_payout = 100 + her "{number=current_payout} points?!" ("scream", "wide", "base", "mid") + her "This will definitely put Gryffindor in the lead!" + gen "Is that a \"yes\" then?" ("base", xpos="far_left", ypos="head") + her "Of course!" ("smile", "happyCl", "base", "mid") + her "If it will bring Gryffindor a hundred house points, I don't mind touching your... thing a little." ("smile", "happyCl", "base", "mid", emote="happy") + pass + + jump hg_pf_handjob_1 + +label hg_pf_handjob_T4_intro_E2: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "Do you know what a \"handjob\" is?" ("base", xpos="far_left", ypos="head") + her "You have asked me that already, [genie_name]." ("disgust", "narrow", "base", "mid_soft") + gen "Ah, that's right." ("base", xpos="far_left", ypos="head") + gen "Well, I want you to play with my cock again." ("base", xpos="far_left", ypos="head") + her "[genie_name], you are being vulgar again..." ("upset", "closed", "base", "mid") + gen "Fine, fine." ("base", xpos="far_left", ypos="head") + gen "[hermione_name], I would like to buy another favour from you today." ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]." ("annoyed", "narrow", "angry", "R") + gen "The favour being you playing with my cock!" ("grin", xpos="far_left", ypos="head") + her ".............." ("disgust", "narrow", "base", "mid_soft") + gen "Oh, come on. For the honour of Gryffindor?" ("base", xpos="far_left", ypos="head") + her "............." ("angry", "base", "angry", "mid") + gen "Play with my cock for the honour of the Gryffindor, [hermione_name]!" ("grin", xpos="far_left", ypos="head") + her "Stop saying that, [genie_name]..." ("scream", "base", "angry", "mid", emote="angry") + gen "Come on [hermione_name], it's not like I'm asking you to do this for free." ("base", xpos="far_left", ypos="head") + her "......." ("annoyed", "narrow", "angry", "R") + + jump hg_pf_handjob_1 + +label hg_pf_handjob_T4_repeat: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("base", "base", "base", "mid") + gen "How would you like to give me another handjob?" ("base", xpos="far_left", ypos="head") + + her "..............." ("upset", "base", "angry", "mid") + her "Will I be getting paid for it, [genie_name]?" ("open", "base", "angry", "mid") + gen "Of course. {number=current_payout} points." ("base", xpos="far_left", ypos="head") + her "........................." ("upset", "narrow", "angry", "R") + + jump hg_pf_handjob_1 + +### Tier 5 ### + +# Event 1 (i) - +# Event 3 (r) - + +label hg_pf_handjob_T5_intro_E1: + her "[genie_name]?" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("base", "base", "base", "mid") + gen "You don't mind giving me another handjob, do you?" ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("upset", "narrow", "worried", "down") + her "As long as I am getting paid..." ("grin", "base", "base", "R") + gen "Well, then. Time to earn those points." ("base", xpos="far_left", ypos="head") + + jump hg_pf_handjob_2 + +label hg_pf_handjob_T5_intro_E2: + her "[genie_name]?" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("base", "base", "base", "mid") + gen "You don't mind giving me another handjob, do you?" ("base", xpos="far_left", ypos="head") + her "I guess not, [genie_name]..." ("grin", "narrow", "worried", "down") + her "..................." ("clench", "base", "base", "R") + + jump hg_pf_handjob_2 + +label hg_pf_handjob_T5_repeat: + her "[genie_name]?" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("base", "base", "base", "mid") + gen "You don't mind giving me another handjob, do you?" ("base", xpos="far_left", ypos="head") + her "Of course not, [genie_name]..." ("grin", "base", "base", "R") + + jump hg_pf_handjob_2 + +### First Tier Handjob ### + +label hg_pf_handjob_1: + stop music fadeout 4.0 + call hide_characters + show screen blkfade + with d3 + + call her_chibi("stand",560,"base") + call gen_chibi("jerk_off",450,"base") + + hide screen blkfade + with fade + pause.8 + + call play_music("playful_tension") # SEX THEME. + her "..........." ("disgust", "narrow", "worried", "down", ypos="head", flip=False) + gen "Whenever you're ready, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "......................." ("disgust", "happyCl", "worried", "mid") + pause.1 + + call her_chibi_scene("hj_pause", trans=d9) + pause.8 + + call nar(">Hermione puts her slender hands on your cock...") + + call bld + gen "Good. Now stroke it." ("base", xpos="far_left", ypos="head") + her "Right..." ("angry", "happyCl", "worried", "mid", emote="sweat") + + call her_chibi_scene("hj", trans=d5) + call ctc + + call play_music("playful_tension") # SEX THEME. + call bld + gen "Nice..." ("grin", xpos="far_left", ypos="head") + + if hg_pf_handjob.counter == 1: + her "!!!" ("shock", "wide", "base", "stare") + her "Are you about to finish, [genie_name]?!" + gen "About to finish?" ("base", xpos="far_left", ypos="head") + gen "Don't be ridiculous [hermione_name], we are just getting started." ("base", xpos="far_left", ypos="head") + her "Oh..." ("angry", "happyCl", "worried", "mid", emote="sweat") + her "......" + her "You will give me a warning though, won't you, [genie_name]?" ("upset", "wink", "base", "mid") + else: + her "[genie_name]...?" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "What is it?" ("base", xpos="far_left", ypos="head") + her "Will you warn me before... *uhm*... you know..." ("angry", "happyCl", "worried", "mid", emote="sweat") + + $ d_flag_01 = False #If TRUE Genie promised to warn her. + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Of course I'll let you know when it's time.\"": + $ d_flag_01 = True #If TRUE Genie promised to warn her. + her "Thank you, [genie_name]." ("normal", "happyCl", "worried", "mid") + "\"I myself don't always know when...\"": + her "Really? But I thought..." ("open", "base", "base", "mid") + her "Well, never mind then..." ("normal", "happyCl", "worried", "mid") + + her "........" ("open", "base", "base", "mid") + gen "............." ("base", xpos="far_left", ypos="head") + her "............." ("normal", "happyCl", "worried", "mid") + her "*ehh*... [genie_name]?" + gen "Yes, what is it?" ("base", xpos="far_left", ypos="head") + her "How long do you think this will take?" ("open", "base", "base", "mid") + gen "Why?" ("base", xpos="far_left", ypos="head") + + if game.daytime: + her "Well, it's just that my classes are about to start..." ("upset", "wink", "base", "mid") + else: + her "Well, it's just that I have this paper that I need to finish..." ("upset", "wink", "base", "mid") + her "It's due tomorrow, and it's getting pretty late..." + + gen "Do you need the points or not?" ("base", xpos="far_left", ypos="head") + her "I do, [genie_name]! I'm sorry..." ("base", "happyCl", "base", "mid") + her "I will just keep on stroking it then..." + gen "Well, there is something you could do to speed up the process..." ("base", xpos="far_left", ypos="head") + her "Really? What is it [genie_name]?" ("base", "base", "base", "mid") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Tell me how much of a whore you are!\"": + her "What?" ("angry", "base", "angry", "mid") + her "But I'm not..." + gen "No need to be honest, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "Just make things up." ("base", xpos="far_left", ypos="head") + her "Really?" ("upset", "wink", "base", "mid") + gen "Sure. Just have fun with it." ("base", xpos="far_left", ypos="head") + her "Well, in that case..." ("open", "narrow", "worried", "down") + her "I am a... whore." + gen "Heh... good. Go on." ("base", xpos="far_left", ypos="head") + her "I am a big whore..." ("open", "narrow", "worried", "down") + gen "Yes, you are." ("base", xpos="far_left", ypos="head") + her "I am the biggest whore in England!" ("annoyed", "narrow", "annoyed", "mid") + her "I try to act innocent, but in truth all I think about is cock!" + gen "Yes, you little slut!" ("base", xpos="far_left", ypos="head") + her "Yes! I am a slut!" ("annoyed", "narrow", "angry", "R") + her "I crave cock all the time." + gen "Very nice!" ("base", xpos="far_left", ypos="head") + gen "But, like I said, you don't have to be honest." ("base", xpos="far_left", ypos="head") + her "What?" ("shock", "wide", "base", "stare") + her "[genie_name], those things I say are not true!" ("upset", "wink", "base", "mid") + gen "Heh... I know. I'm just messing with you." ("grin", xpos="far_left", ypos="head") + her "[genie_name]!" ("disgust", "narrow", "base", "mid_soft") + gen "You are doing a great job, though. Keep at it!" ("base", xpos="far_left", ypos="head") + her "....." ("open", "narrow", "worried", "down") + her "I love cock..." + her "And I love... spunk..." ("clench", "narrow", "base", "down") + her "And semen... and sperm..." + her "I love to drink sperm..." + her "I want you to feed me your sperm, [genie_name]!" ("open_tongue", "narrow", "base", "mid_soft") + gen "!!!" ("angry", xpos="far_left", ypos="head") + her "Or better yet, pump me full of it, [genie_name]!" ("smile", "narrow", "base", "mid_soft") + with hpunch + gen "{size=-4}(Here it comes! Should I warn her?){/size}" ("angry", xpos="far_left", ypos="head") + + "\"Stick your tongue out and look at me!\"": + her "What?" ("base", "base", "base", "mid") + gen "Just do it, slut." ("base", xpos="far_left", ypos="head") + her "Like this?" ("open_wide_tongue", "happy", "base", "R") + gen "Yes, good. Keep looking into my eyes and stroke my cock." ("base", xpos="far_left", ypos="head") + her "....................." ("open_wide_tongue", "base", "base", "mid") + gen "Yes... Good..." ("base", xpos="far_left", ypos="head") + her "..........." ("open_wide_tongue", "base", "base", "mid") + her "..........." + her "I can't keep my mouth open for so long, [genie_name]. I will start to drool..." ("open", "base", "base", "mid") + gen "But I want you to drool..." ("base", xpos="far_left", ypos="head") + her "What? But I will look silly!" ("open", "base", "base", "mid") + gen "That's the point, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "......." ("annoyed", "base", "worried", "R") + gen "Don't you want to be done with this as soon as possible?" ("base", xpos="far_left", ypos="head") + her "............" ("normal", "happyCl", "worried", "mid") + her "A-ha..." ("open_wide_tongue", "base", "base", "mid") + gen "Good, [hermione_name]." ("base", xpos="far_left", ypos="head") + her ".............." ("open_wide_tongue", "base", "base", "mid") + gen "Yes, keep on stroking my cock." ("base", xpos="far_left", ypos="head") + her ".................." ("open_wide_tongue", "base", "base", "mid") + gen "Oh... I just want to slide my cock into that wet hole of a mouth of yours!" ("angry", xpos="far_left", ypos="head") + her "................." ("open_wide_tongue", "closed", "angry", "mid") + gen "No, keep on looking at me!" ("base", xpos="far_left", ypos="head") + her "....................." ("open_wide_tongue", "base", "base", "mid") + gen "Yes, you little slut!" ("base", xpos="far_left", ypos="head") + her "......................" ("open_wide_tongue", "base", "angry", "mid") + gen "I want to cum in that mouth, yes..." ("base", xpos="far_left", ypos="head") + her "................" ("open_wide_tongue", "base", "angry", "mid") + with hpunch + gen "{size=-4}(Here it comes! Should I warn her?){/size}" ("angry", xpos="far_left", ypos="head") + + "\"Give my cock a kiss!\"": + her "Excuse me?" ("angry", "base", "angry", "mid") + gen "You know, just a little kiss, right on the tip." ("base", xpos="far_left", ypos="head") + her "............." ("angry", "base", "angry", "mid") + her "... with my lips?" ("shock", "wide", "base", "stare") + gen "Sure... That will speed things up, I'm telling you." ("base", xpos="far_left", ypos="head") + her "*sigh!*.............." ("open", "narrow", "worried", "down") + her "Well, I might as well, I suppose..." + + call nar(">Hermione gives the tip of your engorged cock a tender kiss.") + + $ renpy.play('sounds/kiss.ogg') + call her_chibi_scene("hj_kiss", trans=kissiris) + pause 1 + + if hg_kiss.trigger == False: + $ achievements.unlock("herkiss") + $ hg_pf_handjob.change_icon(a="heart_half", b="heart_red") + if hg_pr_kiss.counter == 0: + her "(It was my first kiss ever and I gave it away to a... cock...)" ("disgust", "narrow", "worried", "down") + else: + her "(Our first kiss ever and I gave it away to his... cock...)" ("disgust", "narrow", "worried", "down") + $ hg_kiss.triggered() # .trigger = True, .counter += 1 + pause 2 + + call her_chibi_scene("hj", trans=d5) + pause.5 + + her "Like this?" ("open", "narrow", "worried", "down") + gen "Wasn't that bad, was it?" ("base", xpos="far_left", ypos="head") + her "No, I suppose not..." ("upset", "wink", "base", "mid") + gen "Can you do it again, then?" ("base", xpos="far_left", ypos="head") + her "I could..." ("normal", "happyCl", "worried", "mid") + gen "Do it!" ("base", xpos="far_left", ypos="head") + her "Well, alright..." ("open", "base", "base", "mid") + + $ renpy.play('sounds/kiss.ogg') + call her_chibi_scene("hj_kiss", trans=kissiris) + pause 3 + + call nar(">Hermione gives your cock another kiss...") + call ctc + + call nar(">This time she lingers a moment longer...") + pause.5 + + call her_chibi_scene("hj", trans=d5) + pause.5 + + gen "Good... Now do it again and just stay there for a while." ("base", xpos="far_left", ypos="head") + her "You mean with my lips touching your... cock, [genie_name]?" ("open", "base", "base", "mid") + her "No, I will look stupid..." ("annoyed", "base", "worried", "R") + gen "Don't be silly, [hermione_name]. Nobody is watching." ("base", xpos="far_left", ypos="head") + her "You are, [genie_name]." ("open", "narrow", "worried", "down") + gen "But that's the whole point!" ("base", xpos="far_left", ypos="head") + her "......" ("annoyed", "narrow", "annoyed", "mid") + gen "It will make me cum in no time!" ("base", xpos="far_left", ypos="head") + her "..............." ("annoyed", "narrow", "angry", "R") + gen "And then you can just get out and take care of your business today." ("base", xpos="far_left", ypos="head") + her "............." ("disgust", "narrow", "base", "mid_soft") + her "Well, alright then..." ("open", "narrow", "worried", "down") + call nar(">Hermione reaches down with her lips again...","start") + call nar(">She touches the tip of your cock with her lips and keeps them there...","end") + + $ renpy.play('sounds/kiss.ogg') + call her_chibi_scene("hj_kiss", trans=kissiris) + call ctc + + call bld + gen "Very good..." ("base", xpos="far_left", ypos="head") + gen "Now touch it with your tongue." ("base", xpos="far_left", ypos="head") + her "??!" ("open_tongue", "closed", "base", "mid") + gen "That's the last thing I will be asking of you today." ("base", xpos="far_left", ypos="head") + her "............" + call nar(">You feel the tip of Hermione's tongue warily rubbing against the head of your cock...") + gen "Yes, like this..." ("base", xpos="far_left", ypos="head") + call nar(">Hermione wiggles her tongue a little...") + her "(It tastes weird...)" ("disgust", "narrow", "worried", "down") + gen "Yes... Good..." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("hj", trans=d5) + pause.8 + + her "So, did it work? Are you ready to... finish, [genie_name]?" ("open", "narrow", "worried", "down") + gen "{size=-4}(Surprisingly, yes! I'm about to cum! Should I warn her?){/size}" ("angry", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-Give her a warning-": + gen "Here it comes, [hermione_name]! You better be ready!" ("angry", xpos="far_left", ypos="head") + her "What? So soon?!" ("shock", "wide", "base", "stare") + gen "{size=+5}Yeah, you did a great job!!!{/size}" ("angry", xpos="far_left", ypos="head") + gen "{size=+5}You little whore!!!{/size}" ("angry", xpos="far_left", ypos="head") + her "No, [genie_name], wait, I--" ("angry", "base", "base", "mid") + gen "{size=+5}Too late for that, slut!{/size}" ("angry", xpos="far_left", ypos="head") + her "*whimper*" ("angry", "narrow", "base", "down") + gen "{size=+5}*ARGH*! YES!!!{/size}" ("angry", xpos="far_left", ypos="head") + her "!!!!!!!!!!!" ("shock", "wide", "base", "stare") + + stop music fadeout 1.0 + call her_chibi_scene("hj_cum_in_done", trans=d5) + pause.5 + + call cum_block + call her_chibi_scene("hj_cum_in", trans=d5) + pause.8 + + show screen bld1 + if hermione.is_worn("top"): + call nar(">Hermione suddenly slides your already dripping cock under her top...") + else: + call nar(">Hermione suddenly slides your already dripping cock in-between her breasts, your tip mere inches from her chin...") + gen "?!!" ("angry", xpos="far_left", ypos="head") + call nar(">The sensation of her warm skin against your cock overwhelms you and you begin to ejaculate like a mad-man.") + call ctc + + call her_chibi_scene("hj_cum_in_done", trans=d5) + + her "......................." ("angry", "wide", "base", "stare", xpos="right", ypos="base") + gen "..........................." ("base", xpos="far_left", ypos="head") + her "......................." ("angry", "wide", "base", "stare") + gen "....................?" ("base", xpos="far_left", ypos="head") + her "......................." ("angry", "narrow", "base", "down") + gen "... What the fuck just happened?" ("base", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "I don't know... I suppose I just panicked..." ("angry", "happyCl", "worried", "mid", emote="sweat") + + if game.daytime: + if hermione.is_worn("top"): + her "My classes are about to start and I didn't want you to ruin my clothes, [genie_name]..." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "So you'll go to classes, looking like this?" ("base", xpos="far_left", ypos="head") + gen "With your top all sperm-soaked from the inside?" ("base", xpos="far_left", ypos="head") + else: + her "My classes are about to start and I didn't want you to ruin my face, [genie_name]..." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "So you'll go to classes, looking like this?" ("base", xpos="far_left", ypos="head") + gen "With your tits and chin all sperm-soaked?" ("base", xpos="far_left", ypos="head") + her "What choice do I have?" ("angry", "narrow", "base", "down") + her "I can't just skip a class..." + else: + her "At this hour The Gryffindor common room will be full of people..." ("angry", "happyCl", "worried", "mid", emote="sweat") + her "I didn't want to have to return there all covered in your... spunk, [genie_name]." + her "Oh, it's getting pretty late..." ("angry", "base", "base", "mid") + gen "So you will go to your dorm, looking like this?" ("base", xpos="far_left", ypos="head") + + if hermione.is_worn("top"): + gen "With your top all sperm-soaked from the inside?" ("base", xpos="far_left", ypos="head") + else: + gen "With your tits and chin all sperm-soaked?" ("base", xpos="far_left", ypos="head") + + her "What choice do I have?" ("angry", "narrow", "base", "down") + + call ctc + call blkfade + + ">Hermione releases your still pulsating cock." + + call her_chibi("stand","mid","base") + call gen_chibi("stand","desk","base") + hide screen bld1 + call hide_blkfade + pause.5 + + her "*Eww*... Your sperm, [genie_name]..." ("angry", "narrow", "base", "down") + if hermione.is_worn("top"): + her "It's everywhere under my top..." ("angry", "base", "base", "mid") + else: + her "My breasts are so sticky, it's everywhere..." ("angry", "base", "base", "mid") + gen "Just put it in your mouth next time." ("base", xpos="far_left", ypos="head") + her "I... don't think so, [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + her "I really need to go. Can I just get paid now?" + + "-Just start cumming-": + with hpunch + gen "*ARGH*!" ("angry", xpos="far_left", ypos="head") + her "WHAT?!" ("shock", "wide", "base", "stare") + gen "Take this!" ("angry", xpos="far_left", ypos="head") + + call cum_block + call her_chibi_scene("hj_cum_on", trans=d9) + pause.8 + + call cum_block + $ hermione.set_cum(face="light") + call bld + gen "{size=+5}*ARGH*! YES!!!{/size}" ("angry", xpos="far_left", ypos="head") + pause 1.0 + $ hermione.set_cum(breasts="light", body="light") + her "!!!!!!!!!!!" ("shock", "wide", "base", "stare") + + call her_chibi_scene("hj_cum_on_done", trans=d5) + call ctc + + + + her "......................." ("angry", "wide", "base", "stare", xpos="right", ypos="base") + gen "Yes... I Feel so much better now..." ("base", xpos="far_left", ypos="head") + call hide_characters + show screen blkfade + with d5 + + call her_chibi("stand","mid","base") + call gen_chibi("stand","desk","base") + hide screen bld1 + hide screen blkfade + with fade + pause.8 + + her ".................." ("disgust", "narrow", "worried", "down", tears="soft") + gen "Well, I think that's about it..." ("base", xpos="far_left", ypos="head") + her "[genie_name]! What have you done?!" ("scream", "happyCl", "worried", "mid", trans=hpunch) + gen "What?" ("base", xpos="far_left", ypos="head") + + if d_flag_01: #If TRUE Genie promised to warn her. + call play_music("chipper_doodle") # HERMIONE'S THEME. + $ her_mood += 11 + her "You promised to give me a warning, [genie_name]!" ("angry", "base", "angry", "mid") + gen "Oh, that's right... My bad." ("base", xpos="far_left", ypos="head") + if hermione.is_worn("top"): + her "My clothes are ruined..." ("annoyed", "narrow", "angry", "R") + else: + her "My pretty face is ruined..." ("annoyed", "narrow", "angry", "R") + her "... I would like to get paid now." + + else: + if game.daytime: + if hermione.is_worn("top"): + her "My clothes are ruined now!" ("annoyed", "narrow", "angry", "R") + else: + her "I have cum on my face!" ("annoyed", "narrow", "angry", "R") + her "Classes are about to start and I can't go looking like this!" ("open", "narrow", "worried", "down") + gen "Of course you can, just wipe it off or something..." ("base", xpos="far_left", ypos="head") + gen "Nobody will even notice." ("base", xpos="far_left", ypos="head") + her "... I would like to get paid now." ("annoyed", "narrow", "annoyed", "mid") + else: + if hermione.is_worn("top"): + her "My clothes are ruined!" ("annoyed", "narrow", "angry", "R") + else: + her "I have cum on my face!" ("annoyed", "narrow", "angry", "R") + her "Am I supposed to go back to the Gryffindor common room looking like this?!" + gen "Why not? You look hot, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "[genie_name]!!!" ("annoyed", "narrow", "annoyed", "mid") + gen "Alright, alright. Just wipe it off or something." ("base", xpos="far_left", ypos="head") + gen "Nobody will even notice." ("base", xpos="far_left", ypos="head") + her "... I would like to get paid now." ("annoyed", "narrow", "annoyed", "mid") + + jump end_hg_pf_handjob + +### Third Handjob ### + +label hg_pf_handjob_2: + stop music fadeout 3.0 + call her_chibi_scene("hj", trans=fade) + pause.8 + + her "Do you like it when I do it like this, [genie_name]?" ("grin", "base", "base", "R", ypos="head", flip=False) + gen "Actually, yes! Very nice!" ("grin", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + with hpunch + gen "{size=+5}Yes, yes, like that...{/size}" ("angry", xpos="far_left", ypos="head") + gen "*Hmm*... You are getting pretty good at this." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("base", "happyCl", "base", "mid") + her "I figured the better I do this, the sooner it'll be over." + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"What do you think of my cock?\"": + her "*huh*?" ("open", "base", "base", "mid") + her "Oh, that's right..." + her "I need to compliment your penis! I completely forgot about that!" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "Well, you don't have to--" ("base", xpos="far_left", ypos="head") + her "[genie_name], let me be honest with you..." ("upset", "closed", "base", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "You have the biggest penis I have ever seen!" ("smile", "base", "angry", "mid") + gen "Well I suppo--" ("base", xpos="far_left", ypos="head") + her "Not done yet!" ("scream", "closed", "angry", "mid") + gen "Apologies." ("base", xpos="far_left", ypos="head") + her "Your penis is so big it almost scares me!" ("angry", "narrow", "base", "down") + gen "You little minx. You know exactly what to say..." ("grin", xpos="far_left", ypos="head") + her "And yet I lust for it..." ("soft", "narrow", "annoyed", "up") + her "Any woman would be happy to have your huge penis inside of her!" + gen "... you're good!" ("base", xpos="far_left", ypos="head") + her "There is more!" ("scream", "closed", "angry", "mid") + gen "By all means..." ("base", xpos="far_left", ypos="head") + her "I think your magnificent cock is a blessing to this world!" ("scream", "closed", "angry", "mid") + gen "Well, I wouldn't go that far--" ("base", xpos="far_left", ypos="head") + her "Listen to me, [genie_name]!" ("scream", "closed", "angry", "mid") + her "I think a statue dedicated to your magnificent penis shall be erected in every city!" + her "So that people of the world could worship your phallus freely!" + gen "OK, I think I've heard enough." ("base", xpos="far_left", ypos="head") + her "Too much?" ("angry", "wink", "base", "mid") + gen "Yeah, just a bit." ("base", xpos="far_left", ypos="head") + her "Sorry..." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "No biggie. Just keep on stroking it." ("base", xpos="far_left", ypos="head") + her "................." ("soft", "narrow", "annoyed", "up") + call nar(">Hermione keeps on stroking your cock.","start") + call nar(">She is doing a great job of it too.","end") + gen "Yes, yes... just like that." ("base", xpos="far_left", ypos="head") + + "\"Call yourself a whore!\"": + her "Excuse me?" ("open", "base", "base", "mid") + her "Oh, that's right! I'm supposed to degrade myself, right?" ("annoyed", "squint", "base", "mid") + gen "Well, you don't have to, but..." ("base", xpos="far_left", ypos="head") + her "That's alright, I don't mind." ("upset", "closed", "base", "mid") + her "Alright then! I am a whore!" ("base", "base", "base", "mid") + gen "Good. Glad we established that." ("base", xpos="far_left", ypos="head") + gen "Now I want you to say..." ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"I am a worthless slut!\"": + her "Of course." ("angry", "wink", "base", "mid") + her "I am a worthless slut." ("soft", "narrow", "annoyed", "up") + her "A dirty little slut, that's what I am." + gen "Yes! Good!" ("base", xpos="far_left", ypos="head") + "\"I live to suck cock!\"": + her "*Ehm*..." ("angry", "wink", "base", "mid") + her "I live to suck penis, er... I mean cock..." ("base", "base", "base", "mid") + gen "Really? Well why don't you suck on this one then?" ("base", xpos="far_left", ypos="head") + her "[genie_name], I am just repeating after you..." ("smile", "base", "angry", "mid") + gen "Really? Could've fooled me..." ("base", xpos="far_left", ypos="head") + her "...................." ("angry", "wink", "base", "mid") + gen ".................." ("base", xpos="far_left", ypos="head") + "\"I love to swallow cum!\"": + her "I love to... *Ehm*... swallow cum." ("angry", "wink", "base", "mid") + gen "You hesitated there for a moment." ("base", xpos="far_left", ypos="head") + her "Yes, I know..." ("angry", "wink", "base", "mid") + her "Let me try again..." + her "I love to swallow cum!" ("soft", "narrow", "annoyed", "up") + her "It is truly the best to swallow cum!" + her "I love it!" + her "..................................." ("grin", "narrow", "base", "dead") + her "How was that, [genie_name]?" ("angry", "wink", "base", "mid") + gen "Perfect." ("base", xpos="far_left", ypos="head") + + "\"This is really good. Did you practise?\"": + her "*Hmm*?" ("base", "happyCl", "base", "mid") + her "Sort of... Well not really..." + her "I had a talk with the girls, and..." ("angry", "wink", "base", "mid") + gen "About handjobs?" ("base", xpos="far_left", ypos="head") + her "Among other things..." ("smile", "happyCl", "base", "mid", emote="happy") + gen "So those girls of yours, they know a lot about such things?" ("base", xpos="far_left", ypos="head") + her "Actually, yes. I was surprised myself." ("shock", "wide", "base", "stare") + her "All sorts of weird sexual things seem to be happening in our school lately..." ("grin", "base", "base", "R") + her "Can't say I approve of that..." + her "But they did teach me quite a few... tricks." ("base", "happyCl", "base", "mid") + gen "Really? Like what?" ("base", xpos="far_left", ypos="head") + her "Well, let's see..." ("base", "narrow", "worried", "down") + her "If I put one of my hands here..." + her "And another one here..." + gen "Oh, I see... Yes, this feels quite good." ("base", xpos="far_left", ypos="head") + her "Does it?" ("angry", "wink", "base", "mid") + her "So Ginny was right about this one..." ("grin", "base", "base", "R") + gen "What did you just say?" ("angry", xpos="far_left", ypos="head") + her "Ginny Weasley, she taught me this one." ("base", "happyCl", "base", "mid") + gen "Oh, right..." ("base", xpos="far_left", ypos="head") + her "She said any boy would fall in love with me if I did this to him..." ("base", "narrow", "worried", "down") + her "There is also this thing when I form a ring with my fingers..." + her "And then I put one finger here..." + gen "*Hmm*... I don't feel anything..." ("base", xpos="far_left", ypos="head") + her "Really?" ("angry", "narrow", "base", "down") + her "*Hmm*..." + her "Oh! That's right!" ("base", "narrow", "worried", "down") + her "The finger goes here! Silly me!" + with hpunch + with kissiris + gen "Oh!!! By the great desert sands, yes!" ("angry", xpos="far_left", ypos="head") + her "Really? That good?" ("smile", "happyCl", "base", "mid", emote="happy") + her "What if I keep doing this but stick my finger here and press a little..." ("base", "narrow", "worried", "down") + gen "[hermione_name], you are killing me!" ("angry", xpos="far_left", ypos="head") + her "Really? Really?!" ("smile", "happyCl", "base", "mid", emote="happy") + her "This is actually quite fun!" + her "Err... I mean..." ("angry", "wink", "base", "mid") + her "I am only doing this to help my house of course..." + gen "Yes, yes... The Gryffindor honour and all that." ("base", xpos="far_left", ypos="head") + gen "You just keep massaging that spot..." ("base", xpos="far_left", ypos="head") + gen "Oh, yes..." ("base", xpos="far_left", ypos="head") + her "..............." ("base", "narrow", "worried", "down") + + gen "Yes... Keep stroking it." ("base", xpos="far_left", ypos="head") + her ".............." ("angry", "wink", "base", "mid") + + if hg_pf_handjob.points == 1: + jump hg_pf_handjob_2_cumming + else: + jump hg_pf_handjob_2_continue + + +label hg_pf_handjob_2_continue: + call her_chibi_scene("hj", trans=d5) + call ctc + + call bld + gen "Now I want you to say..." ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "{size=-4}\"I fantasise about being touched by my father.\"{/size}": + $ her_mood += 11 + her "I do not!" ("angry", "base", "angry", "mid") + gen "I know. Just say it." ("base", xpos="far_left", ypos="head") + her "My father? That's disgusting, [genie_name]!" ("angry", "base", "angry", "mid", emote="angry") + gen "Humour me." ("base", xpos="far_left", ypos="head") + her "..........." ("annoyed", "narrow", "annoyed", "mid") + her "Well..." ("open", "narrow", "worried", "down") + her "Sometimes I fantasise about my father..." + her "......." + gen "I see. And in those fantasies of yours..." ("base", xpos="far_left", ypos="head") + gen "He is touching you, right?" ("base", xpos="far_left", ypos="head") + her "My father...?" ("angry", "base", "base", "mid") + gen "Yes... And you enjoy it, right?" ("base", xpos="far_left", ypos="head") + her "No. I cry and beg for him to stop!" ("angry", "narrow", "base", "down") + gen "Heh... Nice." ("base", xpos="far_left", ypos="head") + her "......." ("angry", "narrow", "base", "down") + gen "Well, this wasn't that hard, was--" ("base", xpos="far_left", ypos="head") + her "I scream for my Mommy but she is still at work..." ("mad", "base", "worried", "mid", tears="soft") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + her "My daddy takes me to my room..." ("normal", "happyCl", "worried", "mid") + her "He throws me on my bed!" + her "I cry \"No, daddy, please, I'm still a virgin\"!" ("scream", "happyCl", "worried", "mid") + + call her_chibi_scene("hj_pause", trans=d5) + pause.5 + + her "But He doesn't listen! He rips my panties off!" ("grin", "narrow", "base", "dead") + her "I beg him to stop! I scream and I scream!" ("angry", "base", "base", "mid", tears="soft") + gen "*Err*, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes?" ("angry", "base", "base", "mid", tears="soft") + gen "You are not stroking my cock anymore..." ("base", xpos="far_left", ypos="head") + her "Oh, I am sorry, [genie_name]." ("grin", "happyCl", "worried", "mid", emote="sweat") + her "I got lost in thought..." + + call her_chibi_scene("hj", trans=d5) + pause.5 + + her "But everything I just said is not true of course!" ("open", "base", "base", "mid") + her "I never have fantasies like that!" + gen "Right." ("base", xpos="far_left", ypos="head") + + "{size=-4}\"Sometimes I get lonely and let my dog mount me.\"{/size}": + her "What?!" ("angry", "wide", "base", "stare") + her "That's disgusting." ("annoyed", "squint", "base", "mid") + her "Dogs carry {size=+5}STD{/size}s, [genie_name]." ("open", "closed", "base", "mid") + gen "Actually, human and canine {size=+5}STD{/size}s are species specific..." ("base", xpos="far_left", ypos="head") + gen "Meaning... They can only be spread to the same species." ("base", xpos="far_left", ypos="head") + her "............{size=-6}I knew that{/size}" ("open", "squint", "base", "mid") + gen "Heh. Of course you would." ("grin", xpos="far_left", ypos="head") + gen "Also I hear that many women do enjoy getting \"knotted\" quite a bit." ("base", xpos="far_left", ypos="head") + her "What does getting \"knotted\" mean?" ("normal", "squint", "angry", "mid") + gen "*Ehm*... Well..." ("base", xpos="far_left", ypos="head") + gen "Ah, it doesn't matter." ("base", xpos="far_left", ypos="head") + gen "Just say the thing!" ("base", xpos="far_left", ypos="head") + her "Fine!" ("normal", "base", "base", "mid") + her "Sometimes I get lonely and let my dog mount me." ("open", "squint", "base", "mid") + gen "That sounded so fake..." ("base", xpos="far_left", ypos="head") + her "Because we don't even own a dog!" ("normal", "squint", "angry", "mid") + gen "Fine, whatever, let's just move on then..." ("base", xpos="far_left", ypos="head") + + "{size=-4}\"-Manual user input-\"{/size}" if not renpy.android: + + # The phrase in the brackets is the text that the game will display to prompt + # the player to enter the name they've chosen. + $ random_number = renpy.random.randint(1, 3) + $ tmp_name = renpy.input("(Use keyboard to enter the phrase.)") + $ tmp_name = tmp_name.strip() + + # The .strip() instruction removes any extra spaces the player may have typed by accident. + # If the player can't be bothered to choose a name, then we + # choose a suitable one for them: + if tmp_name == "": + $ tmp_name="I'm a whore" + gen "(...)" ("base", xpos="far_left", ypos="head") + her "I could just call myself a \"Whore\" again, as usual..." ("annoyed", "base", "worried", "R") + gen "Yes. A great suggestion." ("base", xpos="far_left", ypos="head") + her "..............." ("annoyed", "base", "base", "R") + her "[tmp_name]." ("base", "base", "base", "mid") + gen "A bit louder..." ("base", xpos="far_left", ypos="head") + her "[tmp_name]!!!" ("scream", "closed", "angry", "mid") + elif random_number == 1: + her "I don't want to say that..." ("annoyed", "base", "worried", "R") + gen "Oh, just do it, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "..........." ("annoyed", "base", "worried", "R") + her "[tmp_name]." ("scream", "closed", "angry", "mid") + elif random_number == 2: + her "*huh*?" ("annoyed", "base", "worried", "R") + her "What does That have to do with anything?" + gen "Just say it." ("base", xpos="far_left", ypos="head") + her "......" ("annoyed", "base", "worried", "R") + gen "Come on, humour me." ("base", xpos="far_left", ypos="head") + her "[tmp_name]." ("scream", "closed", "angry", "mid") + elif random_number == 3: + her "..........." ("annoyed", "base", "worried", "R") + her "Do I really have to?" + gen "Just say it." ("base", xpos="far_left", ypos="head") + her "[tmp_name]." ("scream", "closed", "angry", "mid") + gen "*He-he*..." ("grin", xpos="far_left", ypos="head") + + "{size=-4}\"-Manual user input-\"{/size}" if renpy.android: + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + her "I don't want to say that..." ("annoyed", "base", "worried", "R") + gen "Oh, just do it, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "..........." ("annoyed", "base", "worried", "R") + her "Manual user input..." ("scream", "closed", "angry", "mid") + elif random_number == 2: + her "*huh*?" ("annoyed", "base", "worried", "R") + her "What does That have to do with anything?" + gen "Just say it." ("base", xpos="far_left", ypos="head") + her "......" ("annoyed", "base", "worried", "R") + gen "Come on, humour me." ("base", xpos="far_left", ypos="head") + her "... Manual user input." ("scream", "closed", "angry", "mid") + elif random_number == 3: + her "..........." ("annoyed", "base", "worried", "R") + her "Do I really have to?" + gen "Just say it." ("base", xpos="far_left", ypos="head") + her "Manual user input." ("scream", "closed", "angry", "mid") + gen "*He-he*..." ("grin", xpos="far_left", ypos="head") + + jump hg_pf_handjob_2_cumming + +label hg_pf_handjob_2_cumming: + call her_chibi_scene("hj", trans=d5) + pause.8 + + call bld + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "I love that thing you do with the palm of your hand!" ("base", xpos="far_left", ypos="head") + her "You noticed...?" ("angry", "wink", "base", "mid") + her "Shall I do it some more then?" + + call nar(">Hermione presses her palm against the tip of your pulsating cock and starts rubbing it very gently...") + gen "Oh yes!!!" ("base", xpos="far_left", ypos="head") + + stop music fadeout 1.0 + gen "{size=-5}(I think this is it! Should I give her a warning?){/size}" ("angry", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"(Yes, I must warn her.)\"": + gen "I think I'm about to--" ("angry", xpos="far_left", ypos="head") + call her_chibi_scene("hj_cum_in_done", trans=d5) + pause.8 + + if hermione.is_worn("top"): + call nar(">Hermione swiftly pulls her top up...","start") + ">She then pushes your already dribbling cock against her belly and covers it up again, placing your cock a bit higher than you would have expected..." + else: + call nar(">She pushes your already dribbling cock against her belly, placing your cock a bit higher than you would have expected...","start") + call nar(">You can feel her incredibly soft tits rubbing against the tip of your cock...","end") + + call cum_block + call her_chibi_scene("hj_cum_in", trans=d5) + pause.8 + + call bld + gen "{size=+5}*ARGH*! YES!!!{/size}" ("angry", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "!!!!!!!!!!!" ("shock", "wide", "base", "stare", ypos="head", flip=False) + hide screen bld1 + call ctc + + call cum_block + $ hermione.set_cum(breasts="light", body="light") + gen "*Argh*! You whore!" ("angry", xpos="far_left", ypos="head") + call nar(">The sensation of her skin under your engorged cock almost makes you lightheaded...") + her "Yes, [genie_name]! Just let it out!" ("base", "narrow", "worried", "down", xpos="right", ypos="base") + $ hermione.set_cum(breasts="heavy", face="light") + gen "*Argh*! Fucking slut!" ("angry", xpos="far_left", ypos="head") + her "Ah!! It's so hot!" ("smile", "narrow", "base", "mid_soft") + her "And it's getting everywhere! So much of it!" ("soft", "narrow", "annoyed", "up") + her "...[genie_name]." + $ hermione.set_cum(body="heavy") + gen "*Argh*!!!" ("angry", xpos="far_left", ypos="head") + gen "............" ("base", xpos="far_left", ypos="head") + call her_chibi_scene("hj_cum_in_done", trans=d5) + pause.8 + + call bld + gen "I think I am done..." ("base", xpos="far_left", ypos="head") + her "Ah, alright..." ("angry", "wink", "base", "mid") + her ".............." ("base", "narrow", "worried", "down") + her "You came so much this time, [genie_name]..." ("soft", "narrow", "annoyed", "up") + call ctc + + call hide_characters + show screen blkfade + with d5 + + ">Hermione releases your still pulsating cock." + + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + hide screen bld1 + hide screen blkfade + with fade + pause.8 + + if game.daytime: + her "Well, I think I'd better go now... my Classes are about to start." ("base", "base", "base", "mid", xpos="right", ypos="base") + else: + her "Well, I think I'd better go now... It's getting late." ("base", "base", "base", "mid", xpos="right", ypos="base") + + if hermione.is_worn("top"): + gen "Will you be alright in those clothes?" ("base", xpos="far_left", ypos="head") + else: + gen "Will you be alright with this much cum on you?" ("base", xpos="far_left", ypos="head") + her "What?" ("open", "narrow", "worried", "down") + her "Oh. Yes, I will be fine..." ("grin", "base", "base", "R") + if hermione.is_worn("top"): + her "It may soak through a little here and there, but I doubt that anyone will notice." ("base", "happyCl", "base", "mid") + else: + her "It may soak through a little here and there, but I doubt that anyone will notice if I wear a robe." ("base", "happyCl", "base", "mid") + gen "*Hmm*... You could just put it in your mouth next time, and avoid the trouble..." ("base", xpos="far_left", ypos="head") + her "And swallow your hot spunk like that, [genie_name]?" ("angry", "wink", "base", "mid") + if hermione.is_worn("top"): + gen "Would keep your clothes clean." ("base", xpos="far_left", ypos="head") + else: + gen "Would keep your sweet tits clean." ("base", xpos="far_left", ypos="head") + + if hg_blowjob.trigger == False: # Hasn't done blowjobs yet. + her "With all due respect [genie_name]..." ("upset", "closed", "base", "mid") + her "Not for the meagre {number=current_payout} points..." ("angry", "wink", "base", "mid") + her "Speaking of which. Can I get may payment now please?" + else: + her "Maybe next time..." ("angry", "wink", "base", "mid") + her "Can I get may payment now please?" ("angry", "wink", "base", "mid") + + "\"(Nah... no need.)\"": + gen "Here! Take this, whore!" ("angry", xpos="far_left", ypos="head") + + call cum_block + $ hermione.set_cum(face="light") + call her_chibi_scene("hj_cum_on", trans=d5) + pause.8 + gen "*ARGH*!" ("angry", xpos="far_left", ypos="head") + $ hermione.set_cum(breasts="light", body="light") + + her "WHAT?!" ("shock", "wide", "base", "stare", ypos="head", flip=False) + gen "Take this!" ("angry", xpos="far_left", ypos="head") + + call cum_block + $ hermione.set_cum(breasts="heavy") + gen "{size=+5}*ARGH*! YES!!!{/size}" ("angry", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "!!!!!!!!!!!" ("shock", "wide", "base", "stare") + hide screen bld1 + call ctc + + her "......................." ("angry", "wide", "base", "stare") + + call her_chibi_scene("hj_cum_on_done", trans=d5) + pause.8 + + call bld + gen "Yes... I Feel so much better now..." ("base", xpos="far_left", ypos="head") + + call her_chibi("stand","mid","base") + call gen_chibi("stand","desk","base") + + her "" ("soft", "base", "base", "mid", tears="soft", xpos="right", ypos="base") + with fade + call ctc + + her ".........." + gen "Well, I think that's about it..." ("base", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "[genie_name]! What have you done?" ("scream", "happyCl", "worried", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + her "You came all over me, [genie_name]..." ("scream", "happyCl", "worried", "mid") + her "What a mess..." ("angry", "narrow", "base", "down") + her "[genie_name], you should have warned me." ("upset", "closed", "base", "mid") + gen "It's your fault, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "My fault?" ("angry", "base", "base", "mid") + gen "Yes! You got me going too well..." ("base", xpos="far_left", ypos="head") + gen "I forgot about everything else..." ("base", xpos="far_left", ypos="head") + her "Oh..." ("angry", "wink", "base", "mid") + her "Well, what's done is done..." + if hermione.is_worn("top"): + her "I will just wipe it off and hope that nobody will notice..." ("grin", "narrow", "base", "dead") + else: + her "I will just wipe the worst off and wear a robe, I hope that nobody will notice..." ("grin", "narrow", "base", "dead") + her "Can I get my payment now?" ("angry", "wink", "base", "mid") + + "-Cum in her mouth!-" if hg_blowjob.trigger == True: # Has done blowjobs already. + call bld + gen "Open your mouth, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "What?!" ("open", "wide", "base", "stare", ypos="head", flip=False) + if hermione.is_worn("top"): + gen "Open your mouth, or I'll have to cover your clothes!" ("angry", xpos="far_left", ypos="head") + else: + gen "Open your mouth, or I'll have to cover your tits!" ("angry", xpos="far_left", ypos="head") + her "....................." ("upset", "happyCl", "worried", "mid") + + call her_chibi_scene("hj_kiss", trans=kissiris) + pause.8 + + call nar(">Hermione swiftly puts the tip of your cock on her lips, as if to give it a kiss...","start") + call nar(">The simple gesture makes your dick practically explode with pleasure and waves of cum.","end") + + call cum_block + gen "{size=+5}*ARGH*! YES!!!{/size}" ("angry", xpos="far_left", ypos="head") + her "*Gulp!-Gulp!-Gulp*!" ("full", "wide", "base", "stare") + + call cum_block + gen "*Argh*! You little whore!" ("angry", xpos="far_left", ypos="head") + gen "Yes, you slut! Drink my cum! Drink all of it!" ("angry", xpos="far_left", ypos="head") + her "*Gulp!-Gulp!-Gulp*!" ("full_cum", "base", "worried", "mid") + gen "*Argh*... Yes!" ("angry", xpos="far_left", ypos="head") + call nar(">You notice that Hermione is barely able to keep up with the amount of hot cum your cock is pumping into her mouth.") + her "*Gulp!-Gulp!-Gulp*!" ("full_cum", "happyCl", "worried", "mid") + gen "*Ah-ah*..." ("angry", xpos="far_left", ypos="head") + gen "This feels great..." ("angry", xpos="far_left", ypos="head") + her "*Gulp*! *Gulp*! *Gulp*!" ("full_cum", "narrow", "annoyed", "up") + gen "I think that's it, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "You can let go now..." ("base", xpos="far_left", ypos="head") + gen "...[hermione_name]?" ("base", xpos="far_left", ypos="head") + + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + + her "" ("full_cum", "narrow", "base", "dead", xpos="right", ypos="base", trans=fade) + call ctc + + her "........................................." + her "*GULP*!!!" ("cum", "happyCl", "worried", "mid") + her "*Gu-ah-a*..." ("open_wide_tongue", "narrow", "base", "down") + her "I swallowed it all, [genie_name]!" ("grin", "narrow", "base", "dead") + gen "Good girl..." ("base", xpos="far_left", ypos="head") + her "At one point I thought I was going to choke..." ("open", "narrow", "base", "dead") + her "There was so much of it..." ("soft", "narrow", "base", "dead") + if hermione.is_worn("top"): + gen "Well, the deed is done, and your clothes are perfectly clean." ("base", xpos="far_left", ypos="head") + else: + gen "Well, the deed is done, and your tits are perfectly clean." ("base", xpos="far_left", ypos="head") + her "Yes! I know! It's so much easier this way!" ("base", "narrow", "worried", "down") + + if game.daytime: + her "I can just go to classes now as if nothing ever happened." ("angry", "wink", "base", "mid") + else: + her "I can just go and spend some time with the guys in the common room now and nobody will know..." ("base", "narrow", "worried", "down") + + gen "Yes... With your belly full of semen..." ("base", xpos="far_left", ypos="head") + her "[genie_name]!" ("angry", "base", "base", "mid") + her "... Can I just get paid now, please, [genie_name]?" + + jump end_hg_pf_handjob diff --git a/game/scripts/characters/hermione/events/favors/give_me_a_tittyjob.rpy b/game/scripts/characters/hermione/events/favors/give_me_a_tittyjob.rpy new file mode 100644 index 00000000..6c77f46b --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/give_me_a_tittyjob.rpy @@ -0,0 +1,967 @@ + + +### Hermione Titjob ### + +label hg_pf_titjob: + + if hg_pf_titjob.counter == 0: + gen "{size=-4}(Should I ask her for a titjob?){/size}" ("base", xpos="far_left", ypos="head") + else: + gen "{size=-4}(I feel like putting my cock between those tits again!){/size}" ("grin", xpos="far_left", ypos="head") + + if hg_pf_titjob.counter < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + # Start Event + $ current_payout = 45 + $ hg_pf_titjob.start() + + + # End Event + label end_hg_pf_titjob: + + # Setup + stop music fadeout 1.0 + call hide_characters + show screen blkfade + with d3 + + $ hermione.set_cum(None) + $ hermione.wear("all") + $ hermione.zorder = 15 # Reset sprite zorder (affected by CGs) + + hide screen dynamic_cg + + call her_chibi("stand","desk","base", flip=False) + call gen_chibi("sit_behind_desk") + + hide screen blkfade + if her_mood != 0: + her "" ("annoyed", "base", "angry", "mid", xpos="mid", ypos="base", trans=fade) + else: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + # Points + if her_tier <= 5: + gen "Yes, [hermione_name]. {number=current_payout} to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += current_payout + else: + gen "You may leave now, [hermione_name]." ("base", xpos="far_left", ypos="head") + + her "Thank you, [genie_name]..." ("soft", "base", "base", "R") + + if game.daytime: + her "Classes are about to start..." + else: + her "It's getting late..." + her "I'd better go now..." + + + # Hermione leaves + call her_walk("door", "base") + + call her_chibi("leave") + + + # Increase level + if her_tier == 5: + if her_whoring < 21: # Points til 21 + $ her_whoring +=1 + if her_tier == 6: + if her_whoring < 24: # Points til 24 + $ her_whoring += 1 + + jump end_hermione_event + +### Fail Events ### + +label hg_pf_titjob_fail: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "Have you ever given somebody a \"titjob\"?" ("base", xpos="far_left", ypos="head") + + $ hg_pf_titjob.fail_intentional() + + jump too_much + +### Tier 5 ### + +# Event 1 (i) - Hermione wants 100 house points for it! +# Event 2 (r) - Reluctantly does it again. + +label hg_pf_titjob_T5_intro_E1: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "Now, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "Have you ever given someone a \"titjob\"?" ("base", xpos="far_left", ypos="head") + her "A \"titjob\"?" ("annoyed", "narrow", "annoyed", "mid") + gen "It's where you wrap those {i}fat tits{/i} of yours around a cock..." ("base", xpos="far_left", ypos="head") + gen "And then shake them up and down, up and--" ("grin", xpos="far_left", ypos="head") + her "[genie_name]!" ("angry", "base", "angry", "mid") + gen "Is that a yes?" ("base", xpos="far_left", ypos="head") + her "..............." ("disgust", "narrow", "base", "mid_soft") + her "{size=-7}No...{/size}" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "*Hmm*?... What was that?" ("base", xpos="far_left", ypos="head") + her "Of course I haven't..." ("open", "narrow", "angry", "R") + gen "Well then, today is your lucky day!" ("grin", xpos="far_left", ypos="head") + her "Lucky?{w} In what way would you consider it lucky?" ("disgust", "narrow", "base", "mid_soft") + gen "It's not every day that you get to learn something new." ("base", xpos="far_left", ypos="head") + her "I'm at a school... We get taught hundreds of things each day..." ("annoyed", "base", "angry", "mid") + her "And giving \"titjobs\" isn't one of them..." ("angry", "base", "angry", "mid") + gen "At least this is something you'll be able to use in the real world." ("base", xpos="far_left", ypos="head") + her "If you say so, [genie_name]..." ("annoyed", "narrow", "angry", "R") + her "..." ("annoyed", "narrow", "angry", "mid") + her "{size=-7}I want a hundred points for this...{/size}" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "Speak up, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "A hundred points!" ("scream", "happyCl", "worried", "mid") + her "" ("annoyed", "narrow", "angry", "R") + + label back_to_titjob_choices: + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"You'll get fifteen house points.\"" if her_mood == 0: + $ her_mood += 7 + her "[genie_name], are you seriously expecting me to give you a titjob..." ("angry", "closed", "angry", "mid") + her "For only a meagre fifteen points?!" ("scream", "base", "angry", "mid") + her "" ("clench", "base", "angry", "mid") + gen "Then how about twenty? Does that sound fair?" ("base", xpos="far_left", ypos="head") + her "I don't know who you think I am, but I'm not doing something like this for only fifteen points!" ("open", "base", "angry", "mid") + gen "I promise I won't even cum on them..." ("base", xpos="far_left", ypos="head") + her "And you believe that \"that\" would change my mind?" ("scream", "base", "angry", "mid") + gen "I sure hoped so..." ("base", xpos="far_left", ypos="head") + her "No.{w=0.5} You need to make me a better offer... or I'll be leaving..." ("annoyed", "narrow", "angry", "R") + gen "Fair enough..." ("base", xpos="far_left", ypos="head") + jump back_to_titjob_choices + + "\"You'll get forty-five house points.\"": + her "{number=current_payout} house points...?" ("open", "wink", "base", "mid") + her "This could put Gryffindor back in the lead..." ("annoyed", "narrow", "worried", "down") + gen "So... Is that a yes?" ("base", xpos="far_left", ypos="head") + her "It's a yes, [genie_name]..." ("open", "closed", "base", "mid") + her "{number=current_payout} points sounds like a fair amount for--" ("open", "base", "base", "R") + gen "For a titjob!" ("grin", xpos="far_left", ypos="head") + her "(...)" ("annoyed", "base", "angry", "mid") + + "\"You'll get one hundred house points.\"": + call play_music("chipper_doodle") # HERMIONE'S THEME. + $ current_payout = 100 + $ her_mood = 0 + her "{number=current_payout} house points?!" ("scream", "wide", "base", "mid") + her "This might be enough to put Gryffindor in the lead!" ("smile", "wide", "base", "stare") + gen "So... Is that a yes?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]!" ("smile", "happyCl", "base", "mid") + her "I shall do my best..." ("soft", "narrow", "base", "mid_soft", emote="happy") + + jump hg_pf_titjob_1 + +label hg_pf_titjob_T5_repeat: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name], would you like to earn some house points again?" ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]..." ("base", "base", "base", "mid") + her "What would I have to do to earn them?" ("open", "base", "base", "R") + gen "Nothing you aren't already experienced with!" ("grin", xpos="far_left", ypos="head") + gen "I'm just going to rub my cock between those precious tits of yours..." ("base", xpos="far_left", ypos="head") + her "This again..." ("angry", "closed", "angry", "mid") + her "(...)" ("annoyed", "narrow", "angry", "R") + her "For {number=current_payout} house points?" ("open", "base", "angry", "mid") + gen "{number=current_payout} house points, as always..." ("base", xpos="far_left", ypos="head") + her "(...)" ("annoyed", "narrow", "angry", "R") + her "Very well, [genie_name]." ("open", "closed", "base", "mid") + her "But you have to promise me that you'll make it quick..." ("annoyed", "base", "angry", "mid") + gen "..............." ("grin", xpos="far_left", ypos="head") + + jump hg_pf_titjob_1 + +### Tier 6 ### + +# Event 1 (i) - Event with a couple of choices. +# Event 2 (i) - Some new interactions. +# Event 3 (r) - Repeat. + +label hg_pf_titjob_T6_intro_E1: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "How do you feel about wrapping those nice tits of yours around my cock again?" ("base", xpos="far_left", ypos="head") + her "Only nice?" ("upset", "closed", "base", "mid") + gen "Fine, fine." ("base", xpos="far_left", ypos="head") + gen "How do you feel about wrapping those perfect tits of yours around my cock again?" ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]." ("base", "narrow", "base", "mid_soft") + gen "You like it when I call them perfect don't you?" ("base", xpos="far_left", ypos="head") + her "............." ("base", "narrow", "worried", "down") + gen "You don't have to answer, just bring those {b}perfect{/b} tits over here." ("grin", xpos="far_left", ypos="head") + her "{heart}{heart}{heart}" ("base", "happyCl", "worried", "mid") + her "yes, [genie_name]..." ("grin", "base", "base", "R") + + jump hg_pf_titjob_2 + +label hg_pf_titjob_T6_intro_E2: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "I would very much like to see those perfect fun-bags of yours again..." ("base", xpos="far_left", ypos="head") + gen "Wrapped around my cock!" ("grin", xpos="far_left", ypos="head") + her "Oh...{w=0.4} Again?" ("base", "narrow", "worried", "down") + her "For {number=current_payout} house points?" ("soft", "narrow", "base", "mid_soft") + gen "Yes, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "(...)" ("annoyed", "base", "base", "R") + her "Very well then..." ("smile", "happyCl", "base", "mid") + gen "Splendid!" ("grin", xpos="far_left", ypos="head") + + jump hg_pf_titjob_2 + +label hg_pf_titjob_T6_repeat: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name], how would you like wrapping those perfect tits of yours around my cock again?" ("base", xpos="far_left", ypos="head") + her "As long as I am getting paid..." ("soft", "happy", "base", "R") + gen "Well, then... Time to earn those points!" ("grin", xpos="far_left", ypos="head") + her "{heart}{heart}{heart}" ("base", "narrow", "base", "up") + + jump hg_pf_titjob_2 + +### First Tier Titjob ### + +label hg_pf_titjob_1: + stop music fadeout 4.0 + call hide_characters + show screen blkfade + with d3 + + call her_chibi("stand",560,"base") + call gen_chibi("jerk_off",450,"base") + + hide screen blkfade + with fade + pause.8 + + call play_music("playful_tension") # SEX THEME. + her "..........." ("disgust", "narrow", "worried", "down") + if hg_pf_titjob.counter == 1: + her "(It's so big...)" ("disgust", "narrow", "base", "down") + gen "Get to it, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Right..." ("angry", "happyCl", "worried", "mid", emote="sweat") + $ hermione.strip("robe", "accessory") + + if hermione.is_any_worn("top", "bra"): + her "Let me get undressed first..." ("disgust", "base", "worried", "down") + $ hermione.strip("top", "bra") + pause 1.0 + + her "" ("annoyed", "narrow", "annoyed", "mid") + pause.5 + + # Setup + $ dynamic_cg("herm_boob", "base", "5") + $ hermione.zorder = -1 + hide hermione_main + + hide hermione_main + with d3 + call nar(">Hermione awkwardly wraps her tits around your cock...") + + call her_chibi_scene("tj_pause", trans=d5) + call ctc + #pause.8 + + call bld + gen "That's a start.{w=0.4} Now, up and down..." ("base", xpos="far_left", ypos="head") + her "Alright..." ("angry", "happyCl", "worried", "mid", emote="sweat", ypos="head", flip=False) + + call her_chibi_scene("tj", trans=d5) + call ctc + + call play_music("playful_tension") # SEX THEME. + call bld + gen "*Mmmm*..." ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "6") + if hg_pf_titjob.counter == 1: + her "..." ("base", "base", "base", "mid") + her "Does it...{w=0.4} feel good?" ("base", "happy", "base", "mid") + gen "Good?" ("base", xpos="far_left", ypos="head") + gen "It feels amazing." ("base", xpos="far_left", ypos="head") + her "Oh..." ("base", "happy", "base", "mid") + her "......" + her "Thank you [genie_name]." ("base", "base", "base", "R") + + her "............" ("annoyed", "narrow", "worried", "down") + her "[genie_name]...?" ("soft", "base", "base", "mid") + gen "What is it?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "7") + her "Promise me you won't cum on my... face..." ("upset", "wink", "base", "mid") + + $ d_flag_01 = False #If TRUE Genie promised to warn her. + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"I promise not to cover that sweet little face of yours...\"": + $ d_flag_01 = True #If TRUE Genie promised to warn her. + $ dynamic_cg("herm_boob", "base", "6") + her "Thank you, [genie_name]." ("base", "happy", "base", "mid") + "\"*Hmm*... We'll see how I feel later.\"": + $ dynamic_cg("herm_boob", "base", "8") + her "*Hmph*..." ("annoyed", "narrow", "annoyed", "mid") + her "At least try and avoid my hair..." ("normal", "happyCl", "worried", "mid") + + $ dynamic_cg("herm_boob", "base", "5") + her "............." ("disgust", "narrow", "worried", "down") + gen "............." ("base", xpos="far_left", ypos="head") + her "............." ("normal", "happyCl", "worried", "mid") + her "Err... [genie_name]?" + gen "Yes, what is it?" ("base", xpos="far_left", ypos="head") + her "Are you almost...{w=0.3} there?" ("open", "base", "base", "mid") + gen "Why?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "7") + if game.daytime: + her "Well, it's just that...{w=0.3} my classes are about to start..." ("upset", "wink", "base", "mid") + else: + her "Well, it's just that...{w=0.3} I promised I would meet with Ginny tonight..." ("upset", "wink", "base", "mid") + her "She's already pretty upset with how much time I'm spending in here..." + gen "Do you need the points or not?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "6") + her "I do, [genie_name]! I'm sorry..." ("grin", "happyCl", "worried", "mid") + her "I'll just keep stroking it then..." + gen "Well, there is a way to finish this up a bit faster..." ("base", xpos="far_left", ypos="head") + her "Really? What is it, [genie_name]?" ("base", "base", "base", "R") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Tell me how much you love your tits!\"": + $ dynamic_cg("herm_boob", "base", "5") + her "What?" ("upset", "wink", "base", "mid") + $ dynamic_cg("herm_boob", "base", "6") + her "My breasts?" ("disgust", "narrow", "worried", "down") + gen "You know,{w=0.5} how good they feel..." ("base", xpos="far_left", ypos="head") + gen "How many eyes are drawn to you thanks to them..." ("base", xpos="far_left", ypos="head") + her "Oh,{w=0.3} okay then..." ("base", "base", "base", "mid") + her "Well...{w=0.4} There was this one time in the library..." ("smile", "base", "base", "R") + her "It was completely empty, except for me and this first year boy sitting right across from me..." + gen "*Heh*... good.{w=0.3} Go on..." ("base", xpos="far_left", ypos="head") + her "It was quite hot that day, so... I decided to take my vest off." ("base", "happy", "base", "mid") + gen "Yes! And somehow you got even hotter!" ("grin", xpos="far_left", ypos="head") + her "The boy was trying to act all sly about it, but I could tell he snuck a peek at them any chance he got..." ("base", "base", "base", "R") + her "At that point I began undoing a couple of buttons... Slowly at first, not enough for him to suspect anything..." ("base", "narrow", "base", "mid_soft") + gen "*Hmm*... You little flaunter." ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "9") + her "By the third button, he couldn't take his eyes off me..." ("base", "narrow", "worried", "down") + her "And when I got to the fourth... I saw him move his hands under the desk..." + gen "Really?" ("base", xpos="far_left", ypos="head") + her "Yes... I swear I could even hear him...{w=0.3}\"doing it\"..." ("base", "narrow", "base", "up") + $ dynamic_cg("herm_boob", "base", "10") + her "I'm sure he could get a good glimpse of my bra..." ("open", "base", "base", "R") + gen "Do you have no shame?" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "5") + her "[genie_name]! I was just trying to cool off..." ("base", "narrow", "worried", "down") + gen "I'm just kidding, keep going..." ("base", xpos="far_left", ypos="head") + her ".............." ("base", "narrow", "base", "mid_soft") + $ dynamic_cg("herm_boob", "base", "9") + her "By the sixth button my entire bra was unveiled..." + her "And he must have had a really good view of my cleavage..." ("base", "base", "base", "mid") + her "And my...{w=0.3} tits..." ("soft", "narrow", "base", "mid_soft") + her "He didn't even try to hide what he was doing and just kept staring at them... touching himself..." + $ dynamic_cg("herm_boob", "base", "10") + her "Then suddenly I felt something sticky on my legs as he shot several ropes of cum under the table!" ("open_tongue", "narrow", "annoyed", "up") + gen "!!!" ("angry", xpos="far_left", ypos="head") + her "Come on, [genie_name]! Cover me as well! Cover my tits in your cum!" ("grin", "base", "angry", "mid") + + "\"Stick out your tongue!\"": + $ dynamic_cg("herm_boob", "base", "5") + her "[genie_name]?" ("open", "wink", "base", "mid") + gen "Just do it, slut!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "11") + her "*Ehm*...{w=0.4} *Ike* *ees*?" ("open_wide_tongue", "narrow", "worried", "down") + gen "Yes, good..." ("base", xpos="far_left", ypos="head") + gen "Now tilt your head down a bit... as far as it'll go." ("base", xpos="far_left", ypos="head") + her "....................." ("open_wide_tongue", "base", "base", "mid") + gen "Yes...{w=0.3} Good..." ("base", xpos="far_left", ypos="head") + her "..........." ("open_wide_tongue", "base", "base", "mid") + her "..........." + $ dynamic_cg("herm_boob", "base", "9") + her "I *khant* *eef* *ay* *outh* *oen*..." ("open_tongue", "base", "base", "mid") + her "I *eel* *ool*..." ("open_wide_tongue", "narrow", "worried", "down") + gen "Yes! Drool all over those perfect tits of yours!" ("angry", xpos="far_left", ypos="head") + her "*Erth-ect*?" ("open_tongue", "base", "base", "mid") + gen "As perfect as any mortal, [hermione_name]!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "11") + her "......." ("base", "narrow", "base", "up") + gen "Try to get it as close to the tip of my cock as you can..." ("base", xpos="far_left", ypos="head") + her "............" ("normal", "happyCl", "worried", "mid") + her "A-ha..." ("open_wide_tongue", "base", "base", "mid") + gen "Good, [hermione_name]." ("base", xpos="far_left", ypos="head") + her ".............." ("open_wide_tongue", "base", "base", "mid") + gen "Yes, keep on stroking my cock." ("base", xpos="far_left", ypos="head") + call nar(">You thrust up as she pushes her tits down causing the tip of your cock to touch her wet tongue.") + her ".................." ("open_wide_tongue", "base", "base", "mid") + gen "That's good..." ("angry", xpos="far_left", ypos="head") + her "................." ("open_wide_tongue", "base", "base", "mid") + pause.2 + + call her_chibi_scene("tj_mouth", trans=d5) + call ctc + + call nar(">Your thrusts ends up going into her drooling mouth.") + gen "That's it, slut! Taste it!" ("angry", xpos="far_left", ypos="head") + her "....................." ("open_wide_tongue", "wide", "angry", "stare") + gen "Yes, you big-titted whore!" ("base", xpos="far_left", ypos="head") + her "......................" ("open_wide_tongue", "happyCl", "angry", "mid") + gen "Get ready slut..." ("angry", xpos="far_left", ypos="head") + her "................" ("open_wide_tongue", "narrow", "worried", "up") + + with hpunch + gen "{size=-4}(Here it comes!){/size}" ("angry", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-Cum in her mouth!-": + $ her_mood += 3 + call bld + gen "Here it comes, [hermione_name]!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "13") + + call her_chibi_scene("tj_pause", trans=d5) + + her "What? already?!" ("shock", "wide", "base", "stare") + gen "{size=+5}Yeah, your tits felt great!!!{/size}" ("angry", xpos="far_left", ypos="head") + gen "{size=+5}You little whore!!!{/size}" ("angry", xpos="far_left", ypos="head") + her "No, [genie_name], wait, not on my face!" ("angry", "base", "base", "mid") + gen "{size=+5}Then open wide, slut!!{/size}" ("angry", xpos="far_left", ypos="head") + her "Not my mou--" ("scream", "wide", "base", "stare") + call nar(">You grab the back of Hermione's head and force your cock into her open mouth...") + $ dynamic_cg("herm_boob", "base", "12") + + stop music fadeout 1.0 + call cum_block + call her_chibi_scene("tj_cum_in", trans=d5) + pause.8 + + her "!!!" ("open_wide_tongue", "wide", "base", "stare") + call cum_block + + $ hermione.set_cum(breasts="light") + + gen "{size=+5}*ARGH*! YES!!! Take it!{/size}" ("angry", xpos="far_left", ypos="head") + her "....................." ("open_wide_tongue_cum", "happyCl", "worried", "mid") + call bld("hide") + call ctc + + call her_chibi_scene("tj_cum_in_done", trans=d5) + + her "......................." ("full_cum", "narrow", "worried", "down",cheeks="blush") + gen "*Mmm*... That felt great..." ("base", xpos="far_left", ypos="head") + her "......................." ("full_cum", "narrow", "worried", "down",cheeks="blush") + gen "How are you feeling?" ("base", xpos="far_left", ypos="head") + her "......................." ("full_cum", "narrow", "worried", "down",cheeks="blush") + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + pause.2 + + call her_chibi_scene("tj_pause", trans=d5) + pause.5 + + call play_music("chipper_doodle") # HERMIONE'S THEME. + $ dynamic_cg("herm_boob", "base", "15") + her "*Ptui*..." ("open_wide_tongue_cum", "base", "angry", "mid", trans=hpunch) + + $ hermione.set_cum(face="light") + + $ dynamic_cg("herm_boob", "base", "16") + her "Why on earth did you cum in my mouth?" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "You did say not to cum on your face..." ("base", xpos="far_left", ypos="head") + pause.2 + + $ dynamic_cg("herm_boob", "base", "17") + + call her_chibi_scene("tj_cum_on_done", trans=d5) + pause.5 + + call nar(">Hermione lets go of your still pulsating cock...") + her "*Ugh*...{w=0.4} You came so much!" ("angry", "happyCl", "worried", "mid", emote="sweat") + her "I had to swallow most of it..." ("disgust", "narrow", "base", "down", emote="sweat") + gen "You did a great job, [hermione_name]!" ("grin", xpos="far_left", ypos="head") + her "I don't want to hear it..." ("angry", "narrow", "angry", "R", emote="sweat") + if game.daytime: + her "I can't go to class like this..." ("angry", "happyCl", "worried", "mid", emote="sweat") + her "I'm covered in semen..." ("disgust", "narrow", "base", "down", emote="sweat") + else: + her "At this hour the Gryffindor common room will be full of students..." ("angry", "happyCl", "worried", "mid", emote="sweat") + her "And I'm smelling like spunk!" ("scream", "happyCl", "worried", "mid") + her "I can only hope I'll be able to run past them without anybody noticing..." ("disgust", "narrow", "worried", "down") + + gen "I mean... You could have swallowed." ("base", xpos="far_left", ypos="head") + gen "Then there wouldn't have been any clean up." ("base", xpos="far_left", ypos="head") + her "Swallow? All of that?" ("angry", "narrow", "base", "down") + her "I don't think I have enough room in my stomach..." + her "Could I please have my points now, [genie_name]?" ("soft", "base", "angry", "mid") + + "-Cover her tits!-": + with hpunch + call bld + gen "*ARGH*!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "13") + + call her_chibi_scene("tj_pause", trans=d5) + + her "WHAT?!" ("shock", "wide", "base", "stare") + gen "Take this slut!" ("angry", xpos="far_left", ypos="head") + + stop music fadeout 1.0 + call cum_block + call her_chibi_scene("tj_cum_on", trans=d5) + pause.8 + + $ hermione.set_cum(breasts="light") + + call bld + gen "{size=+5}*ARGH*! YES!!!{/size}" ("angry", xpos="far_left", ypos="head") + + her "...................." ("shock", "happyCl", "worried", "mid") + call cum_block + $ hermione.set_cum(body="light", breasts="heavy") + $ dynamic_cg("herm_boob", "base", "18") + call ctc + + call her_chibi_scene("tj_cum_on_done", trans=d5) + + her "......................." ("angry", "wide", "base", "stare") + gen "Well, I think that's about it..." ("base", xpos="far_left", ypos="head") + her ".........." ("soft", "base", "base", "mid",tears="soft") + + $ dynamic_cg("herm_boob", "base", "17") + her "[genie_name]! How could you cum this much?!" ("scream", "happyCl", "worried", "mid") + her "(It's like he dumped a bucket load all over my chest...)" ("disgust", "narrow", "base", "down") + if game.daytime: + her "I can't attend classes looking like this!" ("angry", "happyCl", "worried", "mid") + else: + her "How am I supposed to go back to the Gryffindor common room like this?!" ("angry", "happyCl", "worried", "mid") + gen "Just wipe it off..." ("base", xpos="far_left", ypos="head") + her "..........................." ("angry", "narrow", "worried", "down") + her "I would like to get paid now, [genie_name]..." ("annoyed", "narrow", "angry", "R") + + $ achievements.unlock("hertits") + + jump end_hg_pf_titjob + +### Second Tier Titjob ### + +label hg_pf_titjob_2: + stop music fadeout 4.0 + call hide_characters + show screen blkfade + with d3 + + # Setup + $ dynamic_cg("herm_boob", "base", "6") + $ hermione.zorder = -1 + hide hermione_main + + $ dynamic_cg("herm_boob", "base", "20") + $ hermione.strip("robe", "accessory") + + if hermione.is_any_worn("top", "bra"): + her "Let me get undressed first..." ("disgust", "base", "worried", "down") + $ hermione.strip("top", "bra") + pause 1.0 + + call nar(">Hermione wraps her plump tits around your cock...") + + call her_chibi_scene("tj", trans=fade) + call ctc + + her "Do you enjoy it when I move them like this, [genie_name]?" ("grin", "base", "base", "R", ypos="head", flip=False) + call nar(">Hermione starts alternating her breasts as she tit-fucks you.") + gen "Actually...{w=0.3} Yes! Very much!" ("grin", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "..." ("base", "narrow", "base", "mid_soft") + gen "Yes, just like that..." ("base", xpos="far_left", ypos="head") + gen "*Hmm*... You're getting pretty good at this." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "21") + her "Thank you, [genie_name]." ("base", "happyCl", "base", "mid") + her "I figured with how kind you've been it's the least I could do..." + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"What do you think of my cock?\"": + $ dynamic_cg("herm_boob", "base", "22") + her "*huh*?" ("open", "base", "base", "mid") + her "Your cock?" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "What do you think about--" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "23") + her "It's magnificent!" ("upset", "closed", "base", "mid") + gen "go on..." ("base", xpos="far_left", ypos="head") + her "[genie_name], If you say that I have the perfect tits..." ("soft", "narrow", "annoyed", "up") + call nar(">She squeezes her tits around your cock.") + $ dynamic_cg("herm_boob", "base", "22") + her "This, has to be the perfect cock!" ("grin", "narrow", "base", "dead") + gen "Perfect you say?" ("grin", xpos="far_left", ypos="head") + her "The size..." ("soft", "narrow", "worried", "down") + her "The shape..." ("base", "narrow", "worried", "down") + her "Everything about it..." ("base", "narrow", "base", "mid_soft") + $ dynamic_cg("herm_boob", "base", "24") + call nar(">Hermione tilts her head down and licks the tip of your cock.") + her "..........." ("open_tongue", "narrow", "annoyed", "up") + $ dynamic_cg("herm_boob", "base", "23") + her "Perfect taste..." ("soft", "narrow", "annoyed", "up") + gen "..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "25") + her "I think your perfect cock should be shared around the school." ("scream", "closed", "angry", "mid") + gen "Well, I wouldn't go that far--" ("base", xpos="far_left", ypos="head") + her "Listen to me, [genie_name]!" ("angry", "closed", "angry", "mid") + her "I think it should be worshipped as part of the school curriculum!" ("soft", "narrow", "annoyed", "up") + $ dynamic_cg("herm_boob", "base", "24") + her "Girls will be required to come in and bask in its glory!" ("open_tongue", "narrow", "annoyed", "up") + gen "OK, I think I've heard enough." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "21") + + call her_chibi_scene("tj_pause", trans=d5) + pause.8 + + her "Too much?" ("angry", "wink", "base", "mid") + gen "Yeah, just a bit." ("base", xpos="far_left", ypos="head") + her "Sorry [genie_name], I got a bit carried away..." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "No worries. Just keep on massaging it with those big tits of yours." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("tj", trans=d5) + pause.8 + + her "................." ("soft", "narrow", "annoyed", "up") + call nar(">Hermione keeps on stroking your cock.","start") + $ dynamic_cg("herm_boob", "base", "25") + call nar(">Letting some spit dribble down to help lubricate it.","end") + $ dynamic_cg("herm_boob", "base", "21") + gen "Yes, yes...{w=0.3} That's it, slut!" ("base", xpos="far_left", ypos="head") + + "\"Call yourself a big-titted whore!\"": + $ dynamic_cg("herm_boob", "base", "22") + her "Excuse me?" ("open", "base", "base", "mid") + $ dynamic_cg("herm_boob", "base", "23") + her "Oh...{w=0.5} I am a big-titted whore!" ("soft", "narrow", "annoyed", "up") + gen "Good. Glad we established that." ("base", xpos="far_left", ypos="head") + gen "Now I want you to say..." ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"I am a shameless cumslut!\"": + $ dynamic_cg("herm_boob", "base", "22") + her "Of course." ("base", "narrow", "worried", "down") + $ dynamic_cg("herm_boob", "base", "24") + her "I am a shameless cumslut." ("soft", "narrow", "annoyed", "up") + $ dynamic_cg("herm_boob", "base", "21") + her "A dirty little slut who's addicted to the taste of my headmaster's cum..." ("grin", "narrow", "base", "dead") + gen "Yes! Good!" ("base", xpos="far_left", ypos="head") + + "\"I love being covered in cum!\"": + $ dynamic_cg("herm_boob", "base", "24") + her "I love being covered in cum!" ("soft", "narrow", "annoyed", "up") + her "hot..." + her "sticky..." + her "smelly..." + her "cum..." + $ dynamic_cg("herm_boob", "base", "23") + her "..................................." ("grin", "narrow", "base", "dead") + $ dynamic_cg("herm_boob", "base", "21") + her "How was that, [genie_name]?" ("angry", "wink", "base", "mid") + gen "Perfect." ("base", xpos="far_left", ypos="head") + + "\"This is really good. Did you practise?\"": + $ dynamic_cg("herm_boob", "base", "22") + her "*Hmm*?..." ("base", "happyCl", "base", "mid") + $ dynamic_cg("herm_boob", "base", "21") + her "Sort of...{w=0.3} Well not on another cock..." ("angry", "wink", "base", "mid") + gen "On what then?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "22") + her "Well, I spoke to Ginny..." ("grin", "base", "base", "R") + gen "A friend of yours?" ("base", xpos="far_left", ypos="head") + her "Yes. I asked if she had any tips for this sort of thing..." ("base", "base", "base", "R") + $ dynamic_cg("herm_boob", "base", "21") + her "She said the best way to improve was to practise..." ("base", "happy", "base", "mid") + gen "Practise on what?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "22") + her "On Ginny." ("smile", "base", "base", "R") + $ dynamic_cg("herm_boob", "base", "23") + her "Well,{w=0.5} on her arm..." ("angry", "wink", "base", "mid") + gen "You tit-fucked your friend's arm?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "25") + her "Just as practice!" ("grin", "happyCl", "worried", "mid", emote="sweat") + $ dynamic_cg("herm_boob", "base", "22") + her "She even gave me some tips..." + $ dynamic_cg("herm_boob", "base", "23") + her "How does this feel?" ("base", "narrow", "worried", "down") + gen "*Mmm*... Yes, this feels quite good." ("base", xpos="far_left", ypos="head") + her "Does it?" ("angry", "wink", "base", "mid") + $ dynamic_cg("herm_boob", "base", "21") + her "Ginny seemed to enjoy it quite a bit as well..." ("base", "narrow", "base", "up") + gen "She did?" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "22") + her "Of course she did!" ("base", "happyCl", "base", "mid") + $ dynamic_cg("herm_boob", "base", "23") + her "Who wouldn't love feeling my perfect tits..." ("base", "closed", "base", "mid") + her "Although I think she might have enjoyed it..." ("open", "narrow", "worried", "down") + $ dynamic_cg("herm_boob", "base", "22") + her "A little too much..." ("soft", "happy", "base", "R") + gen "How so?" ("base", xpos="far_left", ypos="head") + her "Well..." ("soft", "happy", "base", "R") + her "She might have started..." + $ dynamic_cg("herm_boob", "base", "23") + her "Playing with herself..." ("grin", "narrow", "annoyed", "up") + with hpunch + with kissiris + gen "Yes, keep going slut!" ("angry", xpos="far_left", ypos="head") + her "As I was \"practising\" on her arm, she might have..." ("open", "base", "base", "R") + $ dynamic_cg("herm_boob", "base", "24") + her "Orgasmed..." ("soft", "narrow", "annoyed", "up") + gen "[hermione_name], you little slut!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "23") + her "It was just practice, nothing else!" ("grin", "happyCl", "worried", "mid", emote="sweat") + her "Err... I mean..." ("angry", "wink", "base", "mid") + $ dynamic_cg("herm_boob", "base", "21") + her "It's not like I enjoyed it or anything..." ("angry", "narrow", "base", "down") + gen "Yes, yes... you're not a slut at all..." ("base", xpos="far_left", ypos="head") + gen "*Mmm*...{w=0.4} Why don't you spit on it a little..." ("base", xpos="far_left", ypos="head") + gen "Oh, yes..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "24") + her "..............." ("base", "narrow", "worried", "down") + + if hg_pf_titjob.points == 1: + jump hg_pf_titjob_2_cumming + else: # Repeat + jump hg_pf_titjob_2_continue + +label hg_pf_titjob_2_continue: + call her_chibi_scene("tj", trans=d5) + + call bld + gen "Yes... Keep stroking it." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "23") + her ".............." ("angry", "wink", "base", "mid", ypos="head", flip=False) + gen "Now I want you to say..." ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "{size=-4}\"I love teasing my father with my big tits.\"{/size}": + $ dynamic_cg("herm_boob", "base", "25") + her "I do not!" ("angry", "narrow", "base", "down", ypos="head", flip=False) + gen "I know. Just say it." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "22") + her "My father? That's gross, [genie_name]! How could you suggest that I would want to fu--" ("soft", "narrow", "annoyed", "up") + gen "Come on...{w=0.3} Just make something up." ("base", xpos="far_left", ypos="head") + her "..........." ("angry", "wink", "base", "mid") + her "Fine..." ("open", "narrow", "worried", "down") + $ dynamic_cg("herm_boob", "base", "21") + her "Sometimes when I hug him..." + her "......." + gen "Go on [hermione_name]..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "22") + her "I press my tits against him..." ("soft", "narrow", "annoyed", "up") + gen "Do you think he enjoys it?" ("base", xpos="far_left", ypos="head") + her "I'm not sure..." ("annoyed", "base", "base", "mid") + her "I think so..." ("soft", "happy", "base", "R") + $ dynamic_cg("herm_boob", "base", "23") + her "It always seems like he's trying to cover his crotch afterwards..." ("base", "closed", "base", "mid") + her "He keeps reminding me I'm too old for hugs..." ("annoyed", "closed", "base", "mid") + her "But I don't care... I make sure to give him a big one every night before I go to bed anyway..." + her "So when I've gone to bed he can't help but think of me..." ("base", "narrow", "worried", "down") + her "And how good my tits felt..." ("grin", "narrow", "base", "dead") + $ dynamic_cg("herm_boob", "base", "24") + her "Pressed against him..." ("soft", "narrow", "annoyed", "up") + gen "That's it slut." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "22") + her "If I feel like teasing him a bit more I will give him a kiss on the forehead..." ("soft", "happy", "base", "R") + $ dynamic_cg("herm_boob", "base", "23") + her "Making sure that he can see down my blouse..." ("grin", "happyCl", "worried", "mid", emote="sweat") + her "{heart}{heart}{heart}" + $ dynamic_cg("herm_boob", "base", "25") + her "But all of that is not true of course!" ("open", "base", "base", "mid") + $ dynamic_cg("herm_boob", "base", "22") + her "None of that happens! It was just for you to imagine!" + gen "Right..." ("base", xpos="far_left", ypos="head") + + "{size=-4}\"I love teasing my schoolmates with my perfect tits.\"{/size}": + $ dynamic_cg("herm_boob", "base", "23") + her "I love teasing my schoolmates with my perfect tits..." ("soft", "narrow", "annoyed", "up", ypos="head", flip=False) + gen "Of course you do..." ("base", xpos="far_left", ypos="head") + her "I love the jealous looks from the other girls..." ("base", "narrow", "worried", "down") + gen "Why wouldn't they be jealous..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "21") + her "I especially love teasing Ron and harry during breakfast..." ("base", "narrow", "base", "mid_soft") + $ dynamic_cg("herm_boob", "base", "22") + her "Sometimes I'll walk around with only one button done up..." ("base", "squint", "base", "mid") + $ dynamic_cg("herm_boob", "base", "23") + her "Other times I'll just wear my top with nothing on underneath..." + gen "And how does that make you feel?" ("base", xpos="far_left", ypos="head") + her "So good..." ("silly", "narrow", "base", "dead") + her "This one time, when walking back from your office at night, I was barely even covering them..." ("angry", "wink", "base", "mid") + her "I rounded a corner and--" ("soft", "narrow", "annoyed", "up") + $ dynamic_cg("herm_boob", "base", "24") + her "A second year boy ran head first into them..." ("grin", "narrow", "annoyed", "up") + gen "Head first into your first class tits?" ("base", xpos="far_left", ypos="head") + her "All I could see was the top of his head..." ("grin", "narrow", "base", "dead") + gen "What did he do?" ("base", xpos="far_left", ypos="head") + her "He immediately attempted to pull away..." + gen "attempted?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "22") + her "Well...{w=0.4} I may have held him there..." ("base", "narrow", "base", "mid_soft") + her "Just for a little bit..." ("base", "narrow", "worried", "down") + $ dynamic_cg("herm_boob", "base", "23") + her "To make sure he knew it was okay..." ("base", "squint", "base", "mid") + gen "I'm sure that's why, you little slut." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "22") + her "I think I might have broken him though..." ("base", "narrow", "worried", "down") + $ dynamic_cg("herm_boob", "base", "21") + her "Because once I'd let him go he didn't say anything... He just took a few slow steps backwards, turned, and scurried away." ("soft", "narrow", "annoyed", "up") + gen "I bet I know where he went..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "23") + her "So do I..." ("soft", "narrow", "annoyed", "up") + + jump hg_pf_titjob_2_cumming + +label hg_pf_titjob_2_cumming: + call her_chibi_scene("tj", trans=d5) + + call bld + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "I love your perfect tits!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "22") + her "Thank you [genie_name]." ("soft", "narrow", "annoyed", "up", ypos="head", flip=False) + $ dynamic_cg("herm_boob", "base", "23") + her "Shall I rub them some more then?" + call nar(">Hermione presses her tits together against your cock and begins rubbing it rapidly...") + gen "Oh, yes!!!" ("base", xpos="far_left", ypos="head") + stop music fadeout 1.0 + gen "{size=-5}(Almost there! Ready or not...){/size}" ("angry", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-Cum in her mouth-": + call bld + gen "Take this, whore!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "25") + her "What are you--" ("angry", "wink", "base", "mid", ypos="head", flip=False) + + call her_chibi_scene("tj_mouth", trans=d5) + pause.8 + + call bld + call nar(">With a final thrust, the sensation of Hermione's wet mouth drives you over the edge.") + call cum_block + gen "{size=+5}*ARGH*! YES!!!{/size}" ("angry", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + $ dynamic_cg("herm_boob", "base", "26") + + call her_chibi_scene("tj_cum_in", trans=d5) + pause.8 + + her "!!!!!!!!!!!" ("full", "wide", "base", "stare") + gen "*Argh*! You whore!" ("angry", xpos="far_left", ypos="head") + her "{heart}{heart}{heart}" ("full_cum", "narrow", "base", "dead") + call cum_block + + gen "*Argh*! you big-titted slut! Take it all!" ("angry", xpos="far_left", ypos="head") + her "..............." ("full_cum", "narrow", "base", "dead") + gen "............" ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("tj_cum_in_done", trans=d5) + pause.8 + + call bld + gen "Okay, I think I am done..." ("base", xpos="far_left", ypos="head") + her ".............." ("full_cum", "narrow", "base", "dead") + her "........" ("full_cum", "narrow", "base", "dead") + her "..." ("full_cum", "narrow", "base", "dead") + + $ renpy.play('sounds/gulp.ogg') #Sound of gulping down a liquid. + $ dynamic_cg("herm_boob", "base", "27") + her "*GULP*" ("cum", "happyCl", "worried", "mid") #play noise here + + call her_chibi_scene("tj_idle", trans=d5) + pause.8 + + call bld + call nar(">Hermione releases your cock from between her tits.") + + if game.daytime: + her "Well then, I think I'd better go... my classes are about to begin." ("base", "base", "base", "mid") + else: + her "Well then, I think I'd better go... It's getting late." ("base", "base", "base", "mid") + gen "So you're fine with swallowing now?" ("base", xpos="far_left", ypos="head") + her "What?" ("open", "narrow", "worried", "down") + her "Oh. I suppose so..." ("grin", "base", "base", "R") + her "I mean... it doesn't taste that bad and I don't have to clean up afterwards." ("base", "happyCl", "base", "mid") + gen "*Hmm*... You sure you wouldn't like people seeing your tits covered in cum..." ("base", xpos="far_left", ypos="head") + her "What? Walk around school covered in your cum, [genie_name]?" ("angry", "wink", "base", "mid") + + if her_tier < 6: + her "With all due respect, [genie_name]..." ("upset", "closed", "base", "mid") + her "I don't plan on getting a reputation as a cum-loving whore..." ("angry", "wink", "base", "mid") + her "Not like those Slytherin girls..." ("angry", "narrow", "angry", "R") + else: + her "*Hmm*..." ("soft", "happy", "base", "R") + her "Maybe if you ask nicely..." ("soft", "narrow", "base", "mid_soft") + her "Will that be all, [genie_name]?" ("base", "closed", "base", "mid") + + "-Cum on her tits-": + call her_chibi_scene("tj_pause", trans=d5) + + call bld + gen "Here! Take this you big-titted whore!" ("angry", xpos="far_left", ypos="head") + with hpunch + gen "*ARGH*!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "25") + her "What? Already?!" ("shock", "wide", "base", "stare", ypos="head", flip=False) + gen "Yeah, your tits felt great slut!" ("angry", xpos="far_left", ypos="head") + call cum_block + + call her_chibi_scene("tj_cum_on", trans=d9) + pause.8 + + $ dynamic_cg("herm_boob", "base", "30") + $ hermione.set_cum(breasts="light") + + call bld + gen "{size=+5}*ARGH*! YES!!!{/size}" ("angry", xpos="far_left", ypos="head") + + $ hermione.set_cum(breasts="heavy") + + her "!!!!!!!!!!!" ("shock", "wide", "base", "stare") + + $ dynamic_cg("herm_boob", "base", "31") + her "......................." ("angry", "wide", "base", "stare") + + $ dynamic_cg("herm_boob", "base", "32") + call her_chibi_scene("tj_cum_on_done", trans=d9) + pause.8 + + call bld + gen "*Aghhh*... I feel so much lighter now..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "33") + her "......................." ("base", "narrow", "base", "down") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + $ dynamic_cg("herm_boob", "base", "35") + her "[genie_name]!" ("open", "happyCl", "worried", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + her "You've covered my chest in cum..." ("angry", "happyCl", "worried", "mid") + $ dynamic_cg("herm_boob", "base", "34") + her "There's so much..." ("open", "base", "base", "R") + gen "It's your fault, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "My fault?" ("angry", "base", "base", "mid") + gen "Yes! It's those perfect tits of yours..." ("base", xpos="far_left", ypos="head") + gen "They just felt too good..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_boob", "base", "36") + her "Oh..." ("shock", "wide", "base", "stare") + her "Well, If that's the reason then I suppose it's not too bad..." ("soft", "narrow", "base", "down") + $ dynamic_cg("herm_boob", "base", "37") + her "I'll just wipe it off and hope that nobody will notice..." ("upset", "closed", "base", "mid") + gen "You could lick them clean..." ("base", xpos="far_left", ypos="head") + if her_tier < 6: + her "You want me to lick your cum off my tits?" ("soft", "narrow", "annoyed", "up") + her "I don't think so, [genie_name]..." ("soft", "narrow", "annoyed", "up") + else: + her "*Hmm*..." ("soft", "happy", "base", "R") + her "Next time maybe... If you ask nicely..." ("grin", "happyCl", "base", "mid_soft") + her "Will that be all, [genie_name]?" ("base", "closed", "base", "mid") + + jump end_hg_pf_titjob diff --git a/game/scripts/characters/hermione/events/favors/grope_her.rpy b/game/scripts/characters/hermione/events/favors/grope_her.rpy new file mode 100644 index 00000000..2ed12306 --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/grope_her.rpy @@ -0,0 +1,412 @@ + + +### Hermione Groping ### + +label hg_pf_grope: + + gen "{size=-4}(I will grope her a little. Pretty harmless stuff.){/size}" ("base", xpos="far_left", ypos="head") + + if hg_pf_grope.counter < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + # Start Event + $ current_payout = 15 + $ hg_pf_grope.start() + + + # End Event + label end_hg_pf_grope: + + # Setup + stop music fadeout 1.0 + call hide_characters + show screen blkfade + with d3 + + ">You let go of Hermione..." + + $ hermione.wear("all") + call her_chibi("stand","desk","base", flip=False) + call gen_chibi("sit_behind_desk") + + hide screen blkfade + if her_mood != 0: + her "" ("annoyed", "base", "angry", "mid", xpos="mid", ypos="base", trans=fade) + else: + her "" ("soft", "narrow", "base", "R", xpos="mid", ypos="base", trans=fade) + + gen "This will do for now." ("base", xpos="far_left", ypos="head") + if her_tier <= 3: + her "................" ("annoyed", "narrow", "angry", "R", cheeks="blush") + else: + her "................" (face="horny", cheeks="blush") + + + # Points + if her_tier <= 5: + $ gryffindor += current_payout + gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") + else: + gen "You may leave now, [hermione_name]." ("base", xpos="far_left", ypos="head") + + if her_tier <= 2: + her ".................." ("annoyed", "base", "worried", "R") + her "Thank you, [genie_name]..." + elif her_tier <= 4: + her ".................." ("base", "base", "base", "R") + her "Thank you, [genie_name]..." ("soft", "base", "base", "mid") + else: + her ".................." ("soft", "narrow", "annoyed", "up") + her "Thank you, [genie_name]..." ("soft", "narrow", "base", "mid_soft") + + if game.daytime: + her "Now if you don't mind, I'd better go. My classes are about to start." + else: + her "I'd better go now. It's getting pretty late..." + + # Hermione leaves + call her_walk("door", "base") + + if her_tier > 5: + her "(What about my points?)" ("disgust", "narrow", "base", "down", cheeks="blush", xpos="base", flip=True) + if her_whoring < 24: + her "(I'll just ask him about it next time...)" ("annoyed", "narrow", "angry", "R") + else: + her "(Eh, who cares...)" ("base", "narrow", "base", "up", cheeks="blush") + pause.5 + + call her_chibi("leave") + + + # Increase level + if her_tier == 2: + if her_whoring < 9: # Points til 9 + $ her_whoring += 1 + + if her_tier == 3: + if her_whoring < 12: # Points til 12 + $ her_whoring += 1 + + jump end_hermione_event + +### Tier 1 - Events Fail ### + +# Those events still prgress, but Hermione will run off and get mad. +# The heart icons for these events are 'black' + +label hg_pf_grope_T1_fail_intro: + gen "[hermione_name], would you mind if I play with your tits a little?" ("base", xpos="far_left", ypos="head") + her "Play with...?" ("shock", "wide", "base", "stare") + her "My tits?!" ("angry", "wide", "base", "mid") + gen "Or your butt! I haven't fully decided yet!" ("grin", xpos="far_left", ypos="head") + + $ hg_pf_grope.fail_intentional() + + jump too_much + +label hg_pf_grope_T1_fail_repeat: + gen "[hermione_name], I'd like to grope you a little!" ("grin", xpos="far_left", ypos="head") + her "This again...?" ("angry", "base", "angry", "mid") + her "I've told you before, [genie_name], absolutely not!!" ("scream", "closed", "angry", "mid") + her "By Merlin's beard..." ("angry", "base", "angry", "mid") + gen "Please?" ("base", xpos="far_left", ypos="head") + her "I'm leaving! Good day, Sir!" ("soft", "closed", "base", "mid") + + call her_walk(action="leave") + + $ her_mood += 6 + + $ hg_pf_grope.fail_intentional() + + jump end_hermione_event + +### Tier 2 ### + +# Event 1 (i) - Hermione is shocked about you groping her. +# Event 2 (i) - Hermione is still shocked. + +label hg_pf_grope_T2_intro_E1: + stop music fadeout 2.0 + gen "Come closer [hermione_name]... Hop around my desk..." ("base", xpos="far_left", ypos="head") + her "*Ehm*... very well, [genie_name]." ("disgust", "narrow", "base", "down") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + $ hermione.strip("robe") + + call her_chibi_scene("behind_desk_front", trans=fade) + pause.5 + + her "[genie_name].....?" ("annoyed", "base", "worried", "R", ypos="head", flip=False) + gen "..." ("base", xpos="far_left", ypos="head") + + menu: + "\"I'm gonna molest your tits now.\"": + her "What? What do you mean, [genie_name]--" ("soft", "wide", "base", "stare") + if hermione.is_worn("top"): + call nar(">You reach out swiftly and grab both of her tits through her clothes...") + elif hermione.is_worn("bra"): + call nar(">You reach out swiftly and grab both of her tits through her bra...") + else: + call nar(">You reach out swiftly and grab both of her tits...") #Fallback, she'd usually wear a bra on this level. + + jump hg_pf_grope_breasts_T2 + + "\"I'm gonna play with your butt a little.\"": + call nar(">You reach out and place your hand on her butt cheeks...") + + jump hg_pf_grope_ass_T2 + +label hg_pf_grope_T2_E1: + stop music fadeout 2.0 + gen "Come closer [hermione_name]... Hop around my desk..." ("base", xpos="far_left", ypos="head") + her "..............." ("annoyed", "base", "angry", "mid") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + $ hermione.strip("robe") + + call her_chibi_scene("behind_desk_front", trans=fade) + pause.5 + + her "[genie_name].....?" ("annoyed", "narrow", "angry", "R", ypos="head", flip=False) + gen "..." ("base", xpos="far_left", ypos="head") + + menu: + "\"I'm gonna molest your tits now.\"": + her "!!!" ("soft", "wide", "worried", "shocked") + her "S-Sir?!" ("disgust", "happyCl", "worried", "mid") + if hermione.is_worn("top"): + call nar(">You reach out swiftly and grab both of her tits through her clothes...") + elif hermione.is_worn("bra"): + call nar(">You reach out swiftly and grab both of her tits through her bra...") + else: + call nar(">You reach out swiftly and grab both of her tits...") #Fallback, she'd usually wear a bra on this level. + + jump hg_pf_grope_breasts_T2 + + "\"I'm gonna play with your butt a little.\"": + call nar(">You reach out and place your hand on her butt cheeks...") + + jump hg_pf_grope_ass_T2 + +### Tier 3 ### + +# Event 1 (i) - Hermione tries to talk you out of it. +# Event 2 (i) - Hermione is indignant. + +label hg_pf_grope_T3_intro_E1: + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("base", "base", "base", "mid") + gen "How would you like to earn some house points today?" ("base", xpos="far_left", ypos="head") + her "And what would I need to do to earn them?" ("annoyed", "narrow", "annoyed", "mid") + gen "Oh nothing too out of the ordinary." ("base", xpos="far_left", ypos="head") + gen "You just stand here while I grope you for a bit..." ("base", xpos="far_left", ypos="head") + her "[genie_name]... I'd prefer it if you wouldn't make me such offers..." ("annoyed", "narrow", "annoyed", "mid") + gen "Why? Too hard to resist?" ("base", xpos="far_left", ypos="head") + her "Nothing like that, [genie_name]." + gen "Well, how about you come closer and bare your tits for me...?" ("base", xpos="far_left", ypos="head") + gen "I feel like playing with them a little..." ("grin", xpos="far_left", ypos="head") + her "!!!" ("open", "base", "base", "mid") + gen "Or your butt..." ("base", xpos="far_left", ypos="head") + gen "I'd like to give it a good squeeze." ("grin", xpos="far_left", ypos="head") + + her "[genie_name]! Don't you think this is too much?" ("disgust", "narrow", "base", "mid_soft") + gen "You think?" ("base", xpos="far_left", ypos="head") + her "I am not one of those harlots from Slytherin, you know..." + gen "I know... You are from {i}Gryfonmon{/i}... or something..." ("base", xpos="far_left", ypos="head") #<- GRYFFINDOR MISSPELLED ON PURPOSE + her "And if I don't feel like it, I don't have to sell you a single favour, [genie_name]!" ("annoyed", "base", "worried", "R") + gen "Of course..." ("base", xpos="far_left", ypos="head") + her "..................." ("annoyed", "narrow", "angry", "R") + gen "I'll give you {number=current_payout} house points for this." ("base", xpos="far_left", ypos="head") + her "......................." ("disgust", "narrow", "base", "mid_soft") + her "All you are going to do is watch, [genie_name]?" + gen "Well, I feel more like touching, actually..." ("base", xpos="far_left", ypos="head") + her "...................................." + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + $ hermione.strip("robe") + + call her_chibi_scene("behind_desk_front", trans=fade) + pause .5 + + her "[genie_name].....?" ("annoyed", "narrow", "angry", "R", ypos="head", flip=False) + gen "..." ("base", xpos="far_left", ypos="head") + + menu: + "\"I'm gonna play with your tits now.\"": + if hermione.is_worn("top"): + call nar(">You reach out swiftly and grab both of her tits through her clothes...") + elif hermione.is_worn("bra"): + call nar(">You reach out swiftly and grab both of her tits through her bra...") + else: + call nar(">You reach out swiftly and grab both of her tits...") #Fallback, she'd usually wear a bra on this level. + her "[genie_name].....?" ("disgust", "happyCl", "worried", "mid") + + jump hg_pf_grope_breasts_T3 + + "\"I'm gonna play with your butt a little.\"": + call nar(">You reach out and place your hand on her butt cheeks...") + + jump hg_pf_grope_ass_T3 + +label hg_pf_grope_T3_E1: + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("base", "base", "base", "mid") + gen "How would you like to earn some house points today?" ("base", xpos="far_left", ypos="head") + her "And what would I need to do to earn them?" ("annoyed", "narrow", "annoyed", "mid") + gen "Get squeezed!" ("grin", xpos="far_left", ypos="head") + her "squeezed......?" ("annoyed", "narrow", "angry", "R") + gen "Come here, I'll show you." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "angry", "down") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + $ hermione.strip("robe") + + call her_chibi_scene("behind_desk_front", trans=fade) + pause.5 + + her "[genie_name].....?" ("annoyed", "narrow", "angry", "R", ypos="head", flip=False) + gen "..." ("base", xpos="far_left", ypos="head") + + menu: + "\"I'm gonna molest your tits now.\"": + #call nar(">You reach out swiftly and grab both of her tits through her uniform...") + her "[genie_name].....?" ("disgust", "happyCl", "worried", "mid") + + jump hg_pf_grope_breasts_T3 + + "\"I'm gonna play with your butt a little.\"": + call nar(">You reach out and place your hand on her butt cheeks...") + + jump hg_pf_grope_ass_T3 + +### Tier 4 ### + +# Event 1 (i) - Hermione ejoys it. +# Event 2 (i) - Hermione asks if you are going to grope her tits or her ass. +# Event 2 (i) - Hermione ejoys it. + +label hg_pf_grope_T4_intro_E1: + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("base", "base", "base", "mid") + gen "Would you like to join me again?" ("base", xpos="far_left", ypos="head") + gen "Behind my desk." ("grin", xpos="far_left", ypos="head") + her "Are you going to grope me again, [genie_name]?" ("soft", "narrow", "base", "mid_soft") + gen "You just read my mind!" ("grin", xpos="far_left", ypos="head") + her "..................." ("disgust", "narrow", "base", "down") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + $ hermione.strip("robe") + + call her_chibi_scene("behind_desk_front", trans=fade) + pause.5 + + her "[genie_name].....?" ("base", "narrow", "worried", "down", ypos="head", flip=False) + gen "..." ("base", xpos="far_left", ypos="head") + + menu: + "\"I'm gonna molest your tits now.\"": + #call nar(">You reach out swiftly and grab both of her tits through her uniform...") + her ".........." ("base", "narrow", "worried", "down") + + jump hg_pf_grope_breasts_T4 + + "\"I'm gonna play with your butt a little.\"": + call nar(">You reach out and place your hand on her butt cheeks...") + jump hg_pf_grope_ass_T4 + +label hg_pf_grope_T4_intro_E2: + gen "[hermione_name]. Come here and join me..." ("base", xpos="far_left", ypos="head") + gen "I feel like playing with you a little." ("grin", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." ("soft", "base", "base", "R") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + $ hermione.strip("robe") + + call her_chibi_scene("behind_desk_front", trans=fade) + pause.5 + + her "[genie_name].....?" ("soft", "narrow", "worried", "down", ypos="head", flip=False) + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "Are you going to grope my breasts again?" ("soft", "base", "base", "mid") + her "Or my bum?...." ("soft", "narrow", "base", "mid_soft") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + menu: + "\"I'm gonna play with your tits today.\"": + her "Of course, [genie_name]." ("base", "narrow", "worried", "down") + + if not hermione.is_worn("top") and hermione.is_worn("bra"): + call nar(">You reach out swiftly and grab both of her tits through her bra...") + elif hermione.is_worn("top") and not hermione.is_worn("bra"): + call nar(">You reach out swiftly and grab both of her tits through her clothes...") + else: + call nar(">You reach out swiftly and grab both of her tits...") + + jump hg_pf_grope_breasts_T4 + + "\"I'm gonna play with your butt today.\"": + her "Of course, [genie_name]." ("base", "narrow", "worried", "down") + call nar(">You reach out and place your hand on her butt cheeks...") + jump hg_pf_grope_ass_T4 + +label hg_pf_grope_T4_E2: + gen "[hermione_name]. Come here and let me grope you!" ("grin", xpos="far_left", ypos="head") + her "Of course, [genie_name]..." ("base", "narrow", "base", "mid_soft") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + $ hermione.strip("robe") + + call her_chibi_scene("behind_desk_front", trans=fade) + pause.5 + + her "Are you going to grope my breasts today, [genie_name]?" ("soft", "narrow", "base", "R_soft", ypos="head", flip=False) + her "Or my bum?...." ("soft", "narrow", "base", "mid_soft") + + gen "*Hmm*... What would you like?" ("base", xpos="far_left", ypos="head") + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + her "I wouldn't mind it if you massaged my breasts a little..." ("soft", "narrow", "base", "R_soft") + elif random_number == 2: + her "I wouldn't mind it if you caressed my bum a bit, [genie_name]..." ("soft", "narrow", "worried", "down") + else: + her "I wouldn't mind either today, [genie_name]." ("soft", "narrow", "base", "R_soft") + + gen "Very well then..." ("base", xpos="far_left", ypos="head") + + menu: + "\"I'm gonna molest your tits now.\"": + her "Yes, [genie_name]." ("base", "narrow", "annoyed", "up") + + if not hermione.is_worn("top") and hermione.is_worn("bra"): + call nar(">You reach out swiftly and grab both of her tits through her bra...") + elif hermione.is_worn("top") and not hermione.is_worn("bra"): + call nar(">You reach out swiftly and grab both of her tits through her clothes...") + else: + call nar(">You reach out swiftly and grab both of her tits...") + + jump hg_pf_grope_breasts_T4 + + "\"I'm gonna play with your butt now.\"": + her "Yes, [genie_name]." ("soft", "narrow", "annoyed", "up") + call nar(">You reach out and place your hand on her butt cheeks...") + + jump hg_pf_grope_ass_T4 diff --git a/game/scripts/characters/hermione/events/favors/grope_her_ass.rpy b/game/scripts/characters/hermione/events/favors/grope_her_ass.rpy new file mode 100644 index 00000000..45fbd243 --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/grope_her_ass.rpy @@ -0,0 +1,837 @@ + + +### Tier 2 ### + +label hg_pf_grope_ass_T2: + stop music fadeout 5.0 + call her_chibi_scene("grope_ass_front", trans=d7) + + her "[genie_name]!?" ("mad", "wide", "base", "stare", cheeks="blush", ypos="head", flip=False) + gen "Relax, [hermione_name]. It will be the easiest {number=current_payout} points you've ever made, I promise." ("base", xpos="far_left", ypos="head") + gen "All I am going to do is squeeze your little butt a couple of times..." ("base", xpos="far_left", ypos="head") + her "No! I demand you to stop!" ("scream", "closed", "angry", "mid", cheeks="blush") + + call her_chibi_scene("behind_desk_front", trans=d5) + + her "This is inappropriate, [genie_name]................" ("angry", "closed", "angry", "mid", cheeks="blush") + gen "Nobody needs to know how exactly you got the points..." ("base", xpos="far_left", ypos="head") + her "But..." ("annoyed", "base", "angry", "mid") + gen "Do it for {i}gravenboor{/i}..." ("base", xpos="far_left", ypos="head") + her "(These {number=current_payout} points could really make a difference...)" ("disgust", "narrow", "base", "down", cheeks="blush") + her "(Darn it.....!)" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "(...............................)" ("annoyed", "narrow", "angry", "R", cheeks="blush") + + her "Can I at least turn around then, Sir?" ("soft", "base", "angry", "mid", cheeks="blush") + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + "\"Yes. Turn around, [hermione_name].\"": # Can fail + jump hg_pf_grope_ass_T2_back + + "\"No. Just stand still, [hermione_name].\"": # Fails + jump hg_pf_grope_ass_T2_front + +label hg_pf_grope_ass_T2_front: + call her_chibi_scene("behind_desk_front", trans=d7) + + her "(...)" ("disgust", "narrow", "worried", "down", cheeks="blush", ypos="head", flip=False) + + call her_chibi_scene("grope_ass_front", trans=d5) + call ctc + + her "(...)" ("disgust", "narrow", "base", "down", cheeks="blush") + her "I'm sorry, [genie_name]. But I can't do this!" ("soft", "narrow", "base", "down", cheeks="blush") + + call her_chibi_scene("behind_desk_front", trans=d7) + gen "Can't do what [hermione_name]?" ("base", xpos="far_left", ypos="head") + + her "I can't do it when I can see you looking at me..." ("mad", "happyCl", "worried", "mid", cheeks="blush") + gen "That's the whole point [hermione_name], I want to look at you..." ("base", xpos="far_left", ypos="head") + her "............." ("annoyed", "base", "worried", "mid", cheeks="blush") + + show screen blkfade + with d3 + + call nar(">Hermione moves your hand away and rushes to the front of your desk.") + + call her_chibi_scene("reset", "desk", "base") + hide screen blkfade + with d3 + + gen "What's the problem [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "It's demeaning!" ("angry", "closed", "angry", "mid", cheeks="blush") + gen "Wouldn't it be worse if I didn't want to look at you?" ("base", xpos="far_left", ypos="head") + her "*ARGH* Whatever!!!" ("scream", "base", "angry", "mid", cheeks="blush") + + her "Good day, Sir." ("disgust", "narrow", "angry", "R", cheeks="blush") + + call her_walk(action="leave") + + $ her_mood += 4 + + jump end_hermione_event + +label hg_pf_grope_ass_T2_back: + call her_chibi_scene("behind_desk_front", trans=d7) + + her "As you say, [genie_name]..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + call her_chibi_scene("behind_desk_back", trans=d5) + call ctc + + her "............." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "..........................." ("annoyed", "base", "angry", "mid", cheeks="blush") + her "[genie_name], I would like to be done with this sooner rather than later..." ("soft", "closed", "angry", "mid", cheeks="blush") + gen "Don't rush me [hermione_name]... Let me savour the moment..." ("base", xpos="far_left", ypos="head") + her "............................." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + "-Give her butt a squeeze-": + jump hg_pf_grope_ass_T2_continue + + "-Give her butt a slap-": + $ her_mood += 2 + pass + + # Slap her! + call slap_her #Calls slapping sound and visual. + her "!!!!!!!!!!!!!" ("scream", "wide", "base", "stare", cheeks="blush") + her "[genie_name]!!?" ("scream", "wide", "base", "stare", cheeks="blush") + + menu: + "\"Fine, fine... I just couldn't resist....\"": + her "......................." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + jump hg_pf_grope_ass_T2_continue + + "-Give her butt another slap-": + $ her_mood += 2 + pass + + # Slap her! + call slap_her #Calls slapping sound and visual. + her "!!!!!!!!!!!!!" ("scream", "wide", "base", "stare", cheeks="blush") + her "[genie_name], what are you doing!?" ("angry", "closed", "angry", "mid", cheeks="blush") + her "You said all you were going to do is touch!" ("angry", "base", "angry", "mid", cheeks="blush") + + menu: + "\"Alright, alright... stop making a scene....\"": + her "......................." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + jump hg_pf_grope_ass_T2_continue + + "-Give her butt another slap-": + $ her_mood += 2 + pass + + # Slap her! + call slap_her #Calls slapping sound and visual. + her "Ouch! It hurts!" ("angry", "closed", "angry", "mid", cheeks="blush") + her "This is so demeaning!" ("angry", "base", "angry", "mid", cheeks="blush") + her "You said all you were going to do is touch..." ("angry", "base", "angry", "mid", cheeks="blush") + gen "Just stand still, [hermione_name]!" ("angry", xpos="far_left", ypos="head") + her "I don't think so, [genie_name]!" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "No amount of points are worth this humiliation!" ("scream", "base", "angry", "mid", cheeks="blush",emote="angry") + her "You are abusing your power, [genie_name]!" ("scream", "base", "angry", "mid", cheeks="blush",emote="angry") + gen "What?" ("angry", xpos="far_left", ypos="head") + her "I'm leaving!" ("angry", "happyCl", "worried", "mid", cheeks="blush", ypos="head", flip=False) + + call her_chibi_scene("reset", "desk", "base", trans=fade) + + # Event Fails + menu: + gen "*Tsk*..." ("angry", xpos="far_left", ypos="head") + "\"I... I apologise...\"": + gen "...... It's not my fault......" ("base", xpos="far_left", ypos="head") + her "An apology won't be enough, [genie_name]!" ("angry", "base", "angry", "mid", cheeks="blush") + gen "What else do you want? More points?" ("base", xpos="far_left", ypos="head") + her "Yes, I believe I'm owed at least that much!" ("angry", "base", "angry", "mid", cheeks="blush") + gen "{number=current_payout} is what we agreed on. You won't get any more than that." ("base", xpos="far_left", ypos="head") + her "*tzzh*... Fine!" ("clench", "closed", "angry", "mid", cheeks="blush") + her "Keep your points." ("angry", "base", "angry", "mid", cheeks="blush") + her "All of them! I don't even want them anymore." ("scream", "closed", "angry", "mid", cheeks="blush") + gen "Are you sure about that?" ("base", xpos="far_left", ypos="head") + her "I'm leaving. Good day, Sir." ("angry", "base", "angry", "mid", cheeks="blush") + + call her_walk(action="leave") + + call bld + gen "(Whatever...)" ("base", xpos="far_left", ypos="head") + + $ her_mood += 15 + + jump end_hermione_event + + "\"You are not getting any points for this!\"": + her "Ha! See if I care, [genie_name]!" ("angry", "base", "angry", "mid", cheeks="blush") + + call her_walk(action="leave") + + call bld + gen "*Tsk!* (You brat!)" ("angry", xpos="far_left", ypos="head") + + $ her_mood += 20 + + jump end_hermione_event + + "\"I'm subtracting points from you then!\"": + her "You can't be serious!?" ("scream", "wide", "base", "stare", cheeks="blush") + gen "The Gryffindor house, minus ten points!" ("angry", xpos="far_left", ypos="head") + gen "There! It's done!" ("angry", xpos="far_left", ypos="head") + her "*Grr*..........." ("angry", "base", "angry", "mid", cheeks="blush") + her "........................" ("angry", "base", "angry", "mid", cheeks="blush") + her "This is not fair..." ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + gen "What? Hey, wait, don't you start crying on me..." ("base", xpos="far_left", ypos="head") + her "I hate you, [genie_name]! I hate you!" ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="messy") + + # Hermione runs out of the room. + call her_walk(action="run", xpos="door", speed=2, reduce=True) + call her_chibi("leave") + + call bld + gen ".............." ("base", xpos="far_left", ypos="head") + + menu: + "\"Dammit. Now I feel like crap...\"": + gen "But who could resist slapping that little behind of hers?" ("grin", xpos="far_left", ypos="head") + "\"She made me do this!\"": + gen "Acting all wounded now..." ("base", xpos="far_left", ypos="head") + gen "I bet she actually enjoyed the slapping and just won't admit it..." ("grin", xpos="far_left", ypos="head") + + $ gryffindor -=10 + $ her_mood += 30 + + jump end_hermione_event + +label hg_pf_grope_ass_T2_continue: + call her_chibi_scene("grope_ass_back") + with d7 + call ctc + + her ".............." ("annoyed", "narrow", "angry", "R", cheeks="blush") + call nar("*squeeze* *squeeze* *squeeze*...") + + her "........................." ("annoyed", "base", "angry", "mid", cheeks="blush") + her "(I can't believe this is really happening...)" ("disgust", "happyCl", "worried", "mid", cheeks="blush") + her "If you don't mind, Sir..." ("soft", "happyCl", "worried", "mid", cheeks="blush") + her "I'd like you to unhand me now..." ("disgust", "base", "worried", "mid", cheeks="blush") + gen "What? Already?" ("base", xpos="far_left", ypos="head") + her "Yes! This has been demeaning enough!" ("annoyed", "base", "angry", "mid", cheeks="blush") + her "Please let go of me, Sir." ("soft", "base", "angry", "mid", cheeks="blush") + gen "Fine..." ("base", xpos="far_left", ypos="head") + call nar(">You give her butt one last squeeze...") + her "..................." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + jump end_hg_pf_grope + +### Tier 3 ### + +label hg_pf_grope_ass_T3: + call her_chibi_scene("behind_desk_front", trans=d7) + + her "Do you want me to turn around then, [genie_name]?" ("base", "base", "base", "R", cheeks="blush", ypos="head", flip=False) + + call play_music("playful_tension") # SEX THEME. + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + "\"Yes. Turn around, [hermione_name].\"": + her "As you say, [genie_name]..." ("base", "base", "base", "R", cheeks="blush") + + jump hg_pf_grope_ass_T3_back + + "\"No. Just stand still, [hermione_name].\"": + her "As you say, [genie_name]..." ("annoyed", "narrow", "angry", "R", cheeks="blush", ypos="head", flip=False) + + jump hg_pf_grope_ass_T3_front + +label hg_pf_grope_ass_T3_front: + call her_chibi_scene("behind_desk_front") + with d7 + call ctc + + her "[genie_name], please hurry up, before someone discovers us like this..." ("soft", "base", "base", "R", cheeks="blush", ypos="head", flip=False) + gen "What's the problem, [hermione_name]?" ("base", xpos="far_left", ypos="head") + gen "You know you are doing this for your house." ("base", xpos="far_left", ypos="head") + her "I do know." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "But not everyone would see it that way..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "So let us be done with this as quick as possible..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "Please..." ("open", "base", "base", "R", cheeks="blush") + gen "Well, if you insist..." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("grope_ass_front") + with d7 + + her "!!!" ("mad", "wide", "base", "stare", cheeks="blush") + gen "What is it?" ("base", xpos="far_left", ypos="head") + her "N-nothing, [genie_name]. Your hands are cold, that's all..." ("open", "base", "base", "R", cheeks="blush") + + call nar(">You run your hands up and down Hermione's legs...") + her "........................." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + call nar(">And give her Ass a good squeeze...") + her "................." ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Don't look away, girl. I want you to look into my eyes." ("base", xpos="far_left", ypos="head") + her "I would rather not, [genie_name]..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Fine. Just keep on standing still then.\"": + her "Thank you, [genie_name]..." ("angry", "happyCl", "worried", "mid", cheeks="blush", ypos="head", flip=False) + + call nar(">You massage her ass-cheeks lightly...") + her "...................." ("angry", "happyCl", "worried", "mid", cheeks="blush") + + call nar(">And keep enjoying the sensation of her butt under your hands...") + her "....................." ("angry", "happyCl", "worried", "mid", cheeks="blush") + + call nar(">Then You give Hermione's butt one last squeeze.") + her "....................." ("angry", "happyCl", "worried", "mid", cheeks="blush") + + jump end_hg_pf_grope + + "\"Open your eyes, or you'll lose the points!\"": + $ her_mood += 10 + + her "*Tsk*! {size=-5}(You wretched old--{/size})" ("angry", "happyCl", "worried", "mid", cheeks="blush", ypos="head", flip=False) + gen "Did you say something, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "It's nothing, [genie_name]." ("angry", "base", "angry", "mid") + + call nar(">You massage her ass-cheeks lightly...","start") + call nar(">Hermione maintains eye contact as she's been told...","end") + + her "...................." ("angry", "base", "angry", "mid") + her "..............................." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "What did I tell you about looking away?" ("base", xpos="far_left", ypos="head") + her "Yes, I remember..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "................................." ("angry", "base", "angry", "mid") + her "..................................." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her ".................................................." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + call nar(">You keep enjoying the sensation of her soft buttocks under your fingertips...") + her "....................." ("angry", "base", "angry", "mid") + + call nar(">Then You give Hermione's butt one last squeeze.") + her "....................." ("annoyed", "base", "angry", "mid", cheeks="blush") + + jump end_hg_pf_grope + +label hg_pf_grope_ass_T3_back: + call her_chibi_scene("behind_desk_back", trans=d7) + call ctc + + her "............." ("base", "narrow", "base", "up", cheeks="blush") + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + "-Give her butt a squeeze-": + jump hg_pf_grope_ass_T3_continue + + "-Give her butt a slap-": + call slap_her + her "!!!!!!!!!!!!!" ("scream", "wide", "base", "stare", cheeks="blush") + her "[genie_name]....?" ("base", "base", "base", "R", cheeks="blush") + + pass + + menu: + "\"Fine, fine... I just couldn't resist....\"": + her "It's okay..." ("base", "base", "base", "R", cheeks="blush") + + jump hg_pf_grope_ass_T3_continue + + "-Give her butt another slap-": + call slap_her + her "!!!!!!!!!!!!!" ("scream", "wide", "base", "stare", cheeks="blush") + her "[genie_name], what are you doing!?" ("base", "base", "base", "R", cheeks="blush") + her "You said all you are going to do is touch!" ("base", "base", "base", "R", cheeks="blush") + + pass + + menu: + "\"Alright, alright...\"": + her "It's not a big deal..." ("base", "base", "base", "R", cheeks="blush") + + jump hg_pf_grope_ass_T3_continue + + "-Give her butt yet another slap-": + call slap_her + + her "[genie_name], not so loud, please..." ("silly", "narrow", "base", "up", cheeks="blush") + her "What if somebody hears us?" ("silly", "narrow", "base", "up", cheeks="blush") + gen "Alright, alright... proceeding with groping then..." ("base", xpos="far_left", ypos="head") + her "................" ("base", "base", "base", "R", cheeks="blush") + + jump hg_pf_grope_ass_T3_continue + +label hg_pf_grope_ass_T3_continue: + call her_chibi_scene("grope_ass_back") + with d7 + call ctc + + her "..................." ("base", "base", "base", "R", cheeks="blush", ypos="head", flip=False) + gen "You are being awfully quiet today, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Am I...?" ("base", "base", "base", "R", cheeks="blush") + + if her_tier <= 5: + her "Well, you know me, [genie_name]..." ("base", "narrow", "base", "up", cheeks="blush") + her "I'm just happy to be able to do my part for the Gryffindor house..." ("base", "narrow", "base", "up", cheeks="blush") + else: + her "Please don't mind it and continue..." ("base", "narrow", "base", "up", cheeks="blush") + her "(... to grope me...)" ("base", "narrow", "base", "mid_soft", cheeks="blush") + + call nar(">You keep on playing with Hermione's ass...","start") + call nar(">And continue sliding your hands up and down her inner thighs...","end") + + her "................" ("base", "base", "base", "R", cheeks="blush") + + her "!!!!!!?" ("mad", "wide", "base", "stare", cheeks="blush", ypos="head", flip=False) + gen "What is it, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "It's nothing [genie_name]..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "It's just..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "This is so... inappropriate..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Relax, [hermione_name]. It's not like you are enjoying this..." ("base", xpos="far_left", ypos="head") + her "What? Of course not! This is depraved..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "I am making this sacrifice for the honour of my house..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Yes, concentrate on that..." ("base", xpos="far_left", ypos="head") + her "...................." ("angry", "base", "angry", "mid", cheeks="blush") + call ctc + + her "But, [genie_name]..." ("open", "base", "base", "R", cheeks="blush") + her "Why are {size=+7}you{/size} doing this?" ("open", "base", "base", "R", cheeks="blush") + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + "\"I have my reasons...\"": + her "Oh..." ("disgust", "narrow", "base", "down", cheeks="blush") + her "*Hmm*..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + "\"In the name of science of course!\"": + her "Really?!" ("soft", "wide", "base", "stare") + her "Is this research of some kind?" ("soft", "wide", "base", "stare") + gen "Yeah, sure, I'm researching... *Err*..." ("base", xpos="far_left", ypos="head") + gen "Well, you wouldn't understand, this is some pretty advanced wizardry stuff..." ("base", xpos="far_left", ypos="head") + her "I see..." ("soft", "wide", "base", "stare") + her "Well, if it is for research then I am glad to be of help..." ("annoyed", "narrow", "angry", "R") + + "-Just squeeze her butt cheeks tighter-": + call nar(">You give Hermione's butt cheeks a couple of extra firm squeezes.") + her "...................." ("open", "base", "base", "R", cheeks="blush") + her "(Shall I just be quiet, then.....?)" ("disgust", "narrow", "base", "down", cheeks="blush") + + call nar(">You keep on playing with Hermione's buttocks...","start") + call nar(">You slide your hands up and down her inner thighs...","end") + her "................" ("angry", "happyCl", "worried", "mid", cheeks="blush") + + menu: + "-Slide your hands under her panties-" if hermione.is_worn("panties"): + call nar(">You slowly slide one of your hands under the fabric of the girl's panties...") + her "[genie_name]... What are you...?" ("mad", "wide", "base", "stare", cheeks="blush", ypos="head", flip=False) + gen "That's alright, just think about those {number=current_payout} points your house is about to receive..." ("base", xpos="far_left", ypos="head") + her "............." ("disgust", "narrow", "base", "down", cheeks="blush") + + pass + + "-Slide your hands across her pussy-" if not hermione.is_worn("panties"): + call nar(">You slowly slide one of your hands across her pussy..") + her "[genie_name]... What are you...?" ("mad", "wide", "base", "stare", cheeks="blush", ypos="head", flip=False) + gen "That's alright, just think about those {number=current_payout} points your house is about to receive..." ("base", xpos="far_left", ypos="head") + her "............." ("disgust", "narrow", "base", "down", cheeks="blush") + + pass + + "-That's enough for today. Dismiss her-": + jump end_hg_pf_grope + + menu: + "-Prod her pussy with one of your fingers-": + call nar(">You slide one of your fingers down and place it against the girls slit...") + her "[genie_name]? No! What are you...?" ("mad", "wide", "base", "stare", cheeks="blush") + call nar(">Hermione tries to pull away from you...") + $ her_mood += 3 + + menu: + "-Force your finger into her pussy!-": + ">You force one of your fingers into her pussy..." + ">It's very tight and warm..." + ">Also it is relatively dry... Doesn't look like Hermione's taking much pleasure in this..." + + jump hg_pf_grope_ass_T3_fail + + "-Let the girl go...-": + jump end_hg_pf_grope + + "-Prod her butthole instead-": + call nar(">You place one of your thumbs against the girls butthole...") + her "[genie_name]? No! What are you doing!?" ("mad", "wide", "base", "stare", cheeks="blush") + $ her_mood += 3 + + menu: + "-Force your thumb into her butthole-": + call nar(">You force one of your thumbs into her little butthole...") + with hpunch + her "!!?" ("angry", "wide", "base", "stare") + call nar(">It's very tight and warm inside...") + + jump hg_pf_grope_ass_T3_fail + + "-Let the girl go...-": + jump end_hg_pf_grope + + "-Stop pushing your luck. Dismiss the girl-": + jump end_hg_pf_grope + +label hg_pf_grope_ass_T3_fail: + her "Stop that at once!" ("angry", "happyCl", "worried", "mid", cheeks="blush", ypos="head") + call nar(">Hermione gives you an unexpectedly strong shove...") + + call her_chibi_scene("behind_desk_front", trans=hpunch) + + her "This is not what we agreed on, [genie_name]..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "More points is it?" ("base", xpos="far_left", ypos="head") + her "More..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=+7}Points?!{/size}" ("scream", "happyCl", "worried", "mid", cheeks="blush", trans=hpunch) + gen "That's not it?" ("angry", xpos="far_left", ypos="head") + her "No, it's definitely not because of the points!" ("scream", "happyCl", "worried", "mid", cheeks="blush") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "So I assume you don't want any extra points before leaving then?" ("grin", xpos="far_left", ypos="head") + her "..." ("mad", "base", "worried", "R", cheeks="blush") + her "I'll have twenty--" ("angry", "base", "angry", "mid", cheeks="blush") + gen "Alright, twenty it--" ("base", xpos="far_left", ypos="head") + her "No, a hundred extra house points!" ("angry", "base", "angry", "mid", cheeks="blush") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"Alright, alright... One hundred points it is...\"": + $ gryffindor += 100 + $ her_mood += 9 + + gen "One hundred points to Gryffindor!" ("base", xpos="far_left", ypos="head") + gen "There, it is done..." ("base", xpos="far_left", ypos="head") + gen "Not about the points... you make me--" ("base", xpos="far_left", ypos="head") + her "Shut up!" ("scream", "happyCl", "worried", "mid", cheeks="blush", ypos="head") + her "{size=+7}The terms should've been stated before commencing the--{/size}" ("scream", "happyCl", "worried", "mid", cheeks="blush", trans=hpunch) + gen "Commencing--" ("base", xpos="far_left", ypos="head") + gen "Oh, snap out of it [hermione_name], You got paid didn't you?" ("base", xpos="far_left", ypos="head") + her "..." ("mad", "happyCl", "worried", "mid", cheeks="blush") + gen "Don't act like you're not benefiting from this..." ("base", xpos="far_left", ypos="head") + her "What ever..." ("angry", "base", "base", "R", cheeks="blush") + + "\"Surely you can't be serious, [hermione_name]!\"": + $ her_mood += 27 + + her "Yes... I Am!" ("scream", "happyCl", "worried", "mid", cheeks="blush", ypos="head") + gen "By the great desert..." ("angry", xpos="far_left", ypos="head") + gen "You get no points!" ("angry", xpos="far_left", ypos="head") + her "*Grr*... Fine!" ("scream", "happyCl", "worried", "mid", cheeks="blush") + + call her_chibi_scene("reset","desk","base", trans=fade) + + call her_walk("door", "base") + + her "..........................." ("disgust", "narrow", "base", "down", cheeks="blush", ypos="head", flip=False) + + call her_chibi("leave") + + jump end_hermione_event + +### Tier 4 ### + +label hg_pf_grope_ass_T4: + call her_chibi_scene("behind_desk_front", trans=d7) + + her "Do you want me to turn around then, [genie_name]?" ("base", "base", "base", "R", cheeks="blush", ypos="head", flip=False) + + call play_music("playful_tension") + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + "\"Yes. Turn around, [hermione_name].\"": + her "As you say, [genie_name]..." ("base", "base", "base", "R", cheeks="blush") + jump hg_pf_grope_ass_T4_back + + "\"No. Just stand still, [hermione_name].\"": + her "As you say, [genie_name]..." ("soft", "base", "base", "mid", cheeks="blush", ypos="head", flip=False) + jump hg_pf_grope_ass_T4_front + +label hg_pf_grope_ass_T4_front: + call her_chibi_scene("behind_desk_front", trans=d7) + pause.8 + + her "..................." ("base", "base", "base", "R", cheeks="blush", ypos="head", flip=False) + gen "You seem more relaxed this time." ("base", xpos="far_left", ypos="head") + her "..................." ("base", "narrow", "worried", "down", cheeks="blush") + gen "Could it be that you're enjoying this?" ("base", xpos="far_left", ypos="head") + her "I..." ("soft", "narrow", "worried", "down", cheeks="blush") + her "I'm doing this to earn points for my house, it has nothing to do with personal enjoyment..." ("soft", "narrow", "worried", "down", cheeks="blush") #looks down + gen "Is that so?" ("base", xpos="far_left", ypos="head") + gen "Then why aren't you looking into my eyes when you say that..." ("base", xpos="far_left", ypos="head") + her "I..." ("disgust", "base", "base", "mid", cheeks="blush") # looks back up + + call her_chibi_scene("grope_ass_front", trans=d7) + pause.8 + + her "!!!" ("mad", "wide", "base", "stare", cheeks="blush") + gen "..." ("grin", xpos="far_left", ypos="head") + her "........" ("annoyed", "base", "angry", "mid", cheeks="blush") + + call nar(">You run your hands up and down Hermione's legs...") + her "........................." ("upset", "happyCl", "worried", "mid", cheeks="blush") + + call nar(">And give her Ass a good squeeze...") + her "................." ("soft", "base", "base", "mid", cheeks="blush") + gen "You're looking at me this time..." ("base", xpos="far_left", ypos="head") + her "Isn't that what you wanted, [genie_name]..." ("open", "base", "worried", "mid", cheeks="blush") + + call nar(">You give her butt another firm squeeze as you gently move to massage her inner leg...") + her "I'll take that as a yes..." ("base", "narrow", "annoyed", "up", cheeks="blush") + + if hermione.is_worn("panties"): + call nar(">You continue to massage her inner thigh and occasionally gently brush against her panties...") + else: + call nar(">You continue to massage her inner thigh and occasionally gently brush against her pussy...") + her "*Ah*..." ("soft", "narrow", "annoyed", "up", cheeks="blush") + her "..." ("clench", "narrow", "annoyed", "up", cheeks="blush") + gen "..." ("grin", xpos="far_left", ypos="head") + + call nar(">Maintaining eye contact, you move your hand down. A split second of disappointment is seen on Hermione's face...") + gen "Enjoying yourself?" ("base", xpos="far_left", ypos="head") + her "W-What..." ("disgust", "narrow", "worried", "down", cheeks="blush") + gen "The massage... You seem less tense than last time." ("base", xpos="far_left", ypos="head") + her "Oh... I suppose it is quite nice..." ("clench", "base", "base", "R", cheeks="blush") + + call nar(">You continue rubbing her inner thighs, Hermione's chest moving up and down faster and faster...") + her "......." ("clench", "narrow", "base", "down", cheeks="blush") + gen "Enjoying a bit too much perhaps?" ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "base", "mid_soft", cheeks="blush") + her "What do you--" ("soft", "narrow", "base", "mid_soft", cheeks="blush") + + call her_chibi_scene("behind_desk_front", trans=d7) + pause.8 + + call nar(">You bring your hands out from between Hermione's legs and hold them up in front of her...") + gen "What would you call this then, [hermione_name]?" ("base", xpos="far_left", ypos="head") + + call nar(">Hermione embarrassingly looks at you, as you present her with a sticky substance gleaming across your upper hand...") + her "Oh..." ("disgust", "narrow", "base", "down", cheeks="blush") + her "Well, your hands were moving so close and--" ("soft", "narrow", "worried", "down", cheeks="blush") + + call her_chibi_scene("grope_ass_front", trans=d7) + pause.8 + + call nar(">Before she can finish her sentence you put your hand back in place...") + her "..." ("clench", "wide", "base", "stare", cheeks="blush") + + call nar(">You slowly brush your fingertips across her legs and move your hands to rest on her firm cheeks...") + her "..." ("soft", "narrow", "annoyed", "up", cheeks="blush") + + call nar(">Hermione begins to relax once more as you softly massage them with your hands...") + her "..." ("base", "narrow", "base", "down", cheeks="blush") + gen "I thought I asked you to look at me." ("base", xpos="far_left", ypos="head") + her "Oh, sorry..." ("base", "narrow", "base", "mid_soft", cheeks="blush") + + menu: + "-Slide your hands under her panties-" if hermione.is_worn("panties"): + call her_chibi_scene("grope_ass_front", trans=d7) + + "-Slide your hands across her pussy-" if not hermione.is_worn("panties"): + call her_chibi_scene("grope_ass_front", trans=d7) + + "-That's enough for today. Dismiss her-": + jump end_hg_pf_grope + + jump hg_pf_grope_ass_T4_continue + +label hg_pf_grope_ass_T4_back: + call her_chibi_scene("behind_desk_back", trans=d7) + pause.8 + + her "..." ("base", "narrow", "annoyed", "up", cheeks="blush", ypos="head", flip=False) + gen "How does it feel?" ("base", xpos="far_left", ypos="head") + her "How does what feel?" ("open", "narrow", "base", "mid_soft") + gen "How does it feel to be presenting your butt to your headmaster?" ("base", xpos="far_left", ypos="head") + her "I don't know how to answer that, [genie_name]..." ("clench", "narrow", "base", "down", cheeks="blush") + her "Do I have to give you a response?" ("open", "base", "base", "mid", cheeks="blush") + gen "Well, you don't have to..." ("base", xpos="far_left", ypos="head") + her "It feels weird...{w} but..." ("disgust", "narrow", "worried", "down", cheeks="blush") + gen "Butt?" ("grin", xpos="far_left", ypos="head") #fucks sake + + call her_chibi_scene("grope_ass_back", trans=d7) + pause.8 + + her "!!!" ("mad", "wide", "base", "stare", cheeks="blush") + her "[genie_name]!" ("clench", "base", "angry", "mid", cheeks="blush") + gen "Sorry..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "You should've warned me..." ("soft", "narrow", "angry", "R", cheeks="blush") + + call nar(">Hermione goes quiet as you begin massaging her butt cheeks...") + her "..." ("base", "closed", "base", "mid", cheeks="blush") + + call nar(">You take your thumbs and move them gently from side to side as her soft butt cheeks open and close with every move...") + gen "Does this feel better?" ("base", xpos="far_left", ypos="head") + her "It..." ("clench", "narrow", "worried", "down", cheeks="blush") + her "It feels fine..." ("soft", "narrow", "worried", "down", cheeks="blush") + gen "I meant not having to look at me..." ("base", xpos="far_left", ypos="head") + her "Oh...{w} it doesn't matter to me how you want it..." ("soft", "base", "base", "R", cheeks="blush") + gen "Is that so?" ("base", xpos="far_left", ypos="head") + her "Of cours--" ("soft", "closed", "base", "mid", cheeks="blush") + + menu: + "-Give her butt a squeeze-": + call nar(">You spread your hands out and then suddenly tighten them firmly around Hermione's Butt cheeks...") + her "!!!" ("clench", "wide", "base", "stare", cheeks="blush") + gen "Be careful what you wish for, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Giving me free reign might show you just how greedy I can be..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "R", cheeks="blush") + gen "Although perhaps if you're lucky enough you could also receive some of my well known generosity..." ("base", xpos="far_left", ypos="head") + call nar(">Lessening your grip on her cheeks slightly, you then move down towards her inner thighs, and gently begin massaging her with your thumbs...") + + "-Give her butt a slap-": + call slap_her + her "!!!!!!!!!!!!!" ("angry", "wide", "base", "stare", cheeks="blush") + her "[genie_name]!" ("clench", "narrow", "base", "R", cheeks="blush") + + gen "Did you not just say it didn't matter to you how I wanted it?" ("base", xpos="far_left", ypos="head") + + her "Yes... But--" ("disgust", "narrow", "base", "R", cheeks="blush") + gen "{size=+5}BUTT!{/size}" ("base", xpos="far_left", ypos="head") + + call slap_her + + her "{size=+3}*Ah*!{/size}" ("angry", "narrow", "base", "up", cheeks="blush") + her "..." ("disgust", "narrow", "base", "down", cheeks="blush") + + gen "*Heh-heh*..." ("grin", xpos="far_left", ypos="head") + call nar(">You put your hands back on her butt and then start moving them down towards her inner thighs...") + call nar(">As you move your palms further and further up, you feel a slight wetness between her legs...") + + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Y-Yes... [genie_name]?" ("angry", "narrow", "base", "R", cheeks="blush") + gen "Are you...{w} *Hmm*... Never mind..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "down", cheeks="blush") + call nar(">You gently begin massaging her with your thumbs...") + + her "..." ("soft", "narrow", "annoyed", "up", cheeks="blush") + + if hermione.is_worn("panties"): + call nar(">Moving your hands gently up and down, Hermione begins to relax as they occasionally brush against her panties...") + else: + call nar(">Moving your hands gently up and down, Hermione begins to relax as they occasionally brush against her pussy...") + her "*Ah*..." ("open", "narrow", "annoyed", "up", cheeks="blush") + her "..." ("base", "narrow", "annoyed", "up", cheeks="blush") + gen "..." ("grin", xpos="far_left", ypos="head") + + call nar(">You continue in silence and notice Hermione's chest has begun moving up and down faster than before...") + + menu: + "-Slide your hands under her panties-" if hermione.is_worn("panties"): + call her_chibi_scene("grope_ass_back", trans=d7) + + "-Slide your hands across her pussy-" if not hermione.is_worn("panties"): + call her_chibi_scene("grope_ass_back", trans=d7) + + "-That's enough for today. Dismiss her-": + jump end_hg_pf_grope + + jump hg_pf_grope_ass_T4_continue + +label hg_pf_grope_ass_T4_continue: + + if hermione.is_worn("panties"): + call nar(">You slowly slide one of your hands under the fabric of the girl's panties...") + else: + call nar(">You slowly slide one of your hands across her pussy..") + her "[genie_name]... What are you...?" ("open", "base", "base", "R", cheeks="blush", ypos="head", flip=False) + + if her_tier <= 5: + gen "It's alright, just think about those {number=current_payout} points your house is about to receive..." ("base", xpos="far_left", ypos="head") + else: + gen "It's alright, just try to relax and enjoy yourself." ("base", xpos="far_left", ypos="head") + + her "As you say..." ("open", "base", "base", "R", cheeks="blush") + + menu: + "-Prod her pussy with one of your fingers-": + ">You slide one of your fingers down and place it against the girl's little slit..." + her "[genie_name]?" ("base", "base", "base", "R", cheeks="blush") + + menu: + "-Force your finger into her pussy!-": + ">You force one of your fingers into her little pussy..." + ">It's very tight and warm..." + ">it is quite wet as well... Seems like Hermione's taking pleasure in this..." + + her "*Ah*..." ("silly", "narrow", "base", "mid_soft", cheeks="blush") + her "It's inside of me..." ("disgust", "narrow", "worried", "down", cheeks="blush") + her "No, [genie_name], you must stop now..." ("disgust", "base", "base", "mid_soft", cheeks="blush") + gen "Why? You don't like it?" ("base", xpos="far_left", ypos="head") + her "It doesn't matter whether I like this or not, [genie_name]." ("soft", "narrow", "base", "mid_soft", cheeks="blush") + call nar(">You take your fingers out and move them across her slit...") + her "You know why I'm doing this..." ("clench", "narrow", "worried", "down", cheeks="blush") + her "...." ("disgust", "narrow", "worried", "down", cheeks="blush") + her "And it's wrong for me to let you do this to me for a meagre {number=current_payout} points..." ("base", "narrow", "base", "mid_soft", cheeks="blush") + gen "Heh... I see..." ("base", xpos="far_left", ypos="head") + + menu: + "-Continue rubbing her-": + call nar(">As you continue rubbing her, Hermione closes her eyes and goes silent...") + her "......" ("clench", "happyCl", "worried", "mid", cheeks="blush") + her "*Ah*..." ("silly", "happyCl", "worried", "mid", cheeks="blush") + call nar(">With no more objections you move your index finger across her clit and begin rubbing it gently...") + her "..." ("soft", "closed", "base", "mid", cheeks="blush") + call nar(">Completely lost in the moment, Hermione moves around as you massage her.") + call nar(">In response to her movement you start rubbing her faster, and as you do so, she squeals and lets out a gentle moan.") + her "*Hnnngh*" ("clench", "happyCl", "worried", "mid", cheeks="blush") #still has eyes closed + her "...." ("disgust", "wide", "base", "stare", cheeks="blush") #Opens her eyes wide + gen "Did you just--" ("base", xpos="far_left", ypos="head") + if her_tier <= 5: + her "No..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Well it sure looks like you just--" ("base", xpos="far_left", ypos="head") + her "I think we're done here!" ("soft", "happyCl", "worried", "mid", cheeks="blush", emote="angry") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "Well, in that case..." ("base", xpos="far_left", ypos="head") + else: + her "Yes..." ("angry", "narrow", "annoyed", "up", cheeks="blush") + her "That felt really good!" ("soft", "narrow", "base", "mid_soft", cheeks="blush") + gen "Any time, [hermione_name]!" ("grin", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("base", "narrow", "base", "mid_soft", cheeks="blush") + + jump end_hg_pf_grope + + "-Let the girl go...-": + jump end_hg_pf_grope + + "-Let the girl go...-": + jump end_hg_pf_grope + + "-Prod her butthole instead-": + ">You place one of your thumbs against the girl's little butthole..." + her "[genie_name]? What are you doing?" ("base", "base", "base", "R", cheeks="blush") + + menu: + "-Force your thumb into her butthole-": + ">You force one of your thumbs into her little butthole..." + with hpunch + her "*Ah*... your finger is up my..." ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + ">It's very tight and warm inside..." + her "*Ah*..." ("silly", "narrow", "base", "mid_soft", cheeks="blush") + her "It's inside of me..." + her "No, [genie_name], you must stop now..." ("base", "narrow", "base", "mid_soft", cheeks="blush") + gen "Why? You don't like it?" ("base", xpos="far_left", ypos="head") + her "It doesn't matter whether I like this or not, [genie_name]." + her "You know why I'm doing this..." + her "And it is wrong for me to let you do this to me for a meagre {number=current_payout} points..." + ">Hermione pulls away from you..." + gen "Heh... I see..." ("base", xpos="far_left", ypos="head") + gen "Well, in that case..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pf_grope + + "-Let the girl go...-": + jump end_hg_pf_grope + + "-Stop pushing your luck. Dismiss the girl-": + jump end_hg_pf_grope diff --git a/game/scripts/characters/hermione/events/favors/grope_her_breasts.rpy b/game/scripts/characters/hermione/events/favors/grope_her_breasts.rpy new file mode 100644 index 00000000..cece9d89 --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/grope_her_breasts.rpy @@ -0,0 +1,374 @@ + + +### Tier 2 ### + +label hg_pf_grope_breasts_T2: + stop music fadeout 1.0 + call her_chibi_scene("grope_tits", trans=d7) + pause.8 + + her "!!!" ("normal", "wide", "worried", "shocked") + call nar(">Hermione takes a hesitant step back...") + + her "!!!?" ("mad", "wide", "base", "stare", cheeks="blush", ypos="head", trans=hpunch) + hide screen bld1 + call ctc + + call nar(">Hermione tries to pull away from you, but you hold her firmly by her breasts...") + + her "??!" ("base", "narrow", "base", "up", cheeks="blush") + call play_music("playful_tension") #SEX THEME. + her "[genie_name], what are you--?" ("angry", "happyCl", "worried", "mid", cheeks="blush",emote="sweat") + call nar(">She tries to pull away again.") + call nar(">You squeeze her tits like a vice.") + + her "[genie_name], you're hurting me!" ("angry", "squint", "base", "mid", cheeks="blush") + gen "Then stand still, [hermione_name]!" ("angry", xpos="far_left", ypos="head") + her "B-but..." ("soft", "wide", "base", "stare") + gen "All I want to do is squeeze your tits a little, then you will get your points!" ("base", xpos="far_left", ypos="head") + her "B-but... this is..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Just stand still..." ("base", xpos="far_left", ypos="head") + gen "go to your happy place or something..." ("base", xpos="far_left", ypos="head") + her "M-my happy place...?" ("angry", "wink", "base", "mid") + call nar(">You feel the girl's shapely breasts in your palms...") + + her "............................" ("shock", "happyCl", "worried", "mid", ypos="head") + + menu: + "-Squeeze her tits with all of your strength-": + $ her_mood += 6 + call nar(">You put strength into your hold...") + her "my........." ("disgust", "narrow", "base", "down", cheeks="blush") + call nar(">You squeeze her tits even harder...") + her "[genie_name], you're hurting them..." ("shock", "happyCl", "worried", "mid") + gen "Be quiet [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Ouch........." ("disgust", "narrow", "base", "down", cheeks="blush") + call nar(">You squeeze her ample tits with all your strength.") + her "Ah! It hurts!" ("angry", "squint", "base", "mid", cheeks="blush") + her "They're gonna burst! Please stop it!" ("angry", "squint", "base", "mid", cheeks="blush") + gen "They are not going to burst, you silly girl..." ("base", xpos="far_left", ypos="head") + call nar(">You loosen your grip a little...") + her "It hurts..." ("shock", "happyCl", "worried", "mid") + gen "You will be fine..." ("base", xpos="far_left", ypos="head") + her "........." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + jump end_hg_pf_grope + + "-Give her tits a tender massage-": + $ her_mood += 3 + call nar(">You start massaging Hermione's beasts through her clothes...") + her "[genie_name]...?" ("shock", "happyCl", "worried", "mid") + gen "The points, [hermione_name]... You need the points. Concentrate on that." ("base", xpos="far_left", ypos="head") + her "Yes..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "Yes, for the honour of the Gryffindor house..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + "*Squeeze-squeeze*" + call nar(">You keep massaging her tits...","start") + call nar(">You give one of her breasts a few pinches trying to locate the nipple...","end") + her "[genie_name]... you're pinching me...?" ("shock", "happyCl", "worried", "mid") + call nar(">Your attempts prove to be fruitless though. The fabric of her clothes is quite thick...") + her "Gryffindor........." ("angry", "happyCl", "worried", "mid", cheeks="blush") + + jump end_hg_pf_grope + + "-Let her go and give her the points-": + gen "Well if you're going to make a drama out of this, you might as well leave..." ("base", xpos="far_left", ypos="head") + call nar(">You unhand the girl's breasts...") + her "Thank you..." ("soft", "closed", "base", "mid", cheeks="blush") + gen "But you didn't earn them today..." ("base", xpos="far_left", ypos="head") + her "..............." ("annoyed", "base", "angry", "mid", cheeks="blush") + + jump end_hg_pf_grope + +### Tier 3 ### + +label hg_pf_grope_breasts_T3: # Favour fails if you Slap them. + stop music fadeout 1.0 + call her_chibi_scene("behind_desk_front", trans=d7) + $ hermione.strip("robe", "accessory") + + if hg_strip.trigger: + menu: + "\"First, lift up your top\"" if hermione.is_worn("top"): + her "[genie_name]?!" ("clench", "base", "base", "mid") + gen "What? It's not like I haven't seen them before..." ("base", xpos="far_left", ypos="head") + her "But!" ("clench", "narrow", "base", "down") + call play_music("playful_tension") # SEX THEME. + gen "I just want to massage them a little..." ("base", xpos="far_left", ypos="head") + her "..............................." ("annoyed", "narrow", "base", "down") + her "Promise me you will be gentle with them." ("soft", "narrow", "base", "mid_soft") + gen "Sure..." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("behind_desk_front_show_tits", trans=d5) + with d5 + + gen "Nice...{w} Now take it off will you?" ("base", xpos="far_left", ypos="head") + + $ hermione.strip("top") + call her_chibi_scene("behind_desk_front", trans=d5) + with d3 + + gen "Very good..." ("base", xpos="far_left", ypos="head") + her "..." ("soft", "narrow", "base", "R", trans=d5) + + if hermione.is_worn("bra"): + gen "Now your bra..." ("base", xpos="far_left", ypos="head") + + $ hermione.strip("bra") + her "..." ("annoyed", "narrow", "base", "mid") + + "\"Yes, let me feel them!\"": + pass + + pause.5 + + call bld + menu: + gen "Let's see now..." ("base", xpos="far_left", ypos="head") + "-Grab them-": + jump hg_pf_grope_breasts_T3_continue + + "-Slap them-": + pass + + + # Event fails + call nar(">You give Hermione's tits a loud slap!") + call slap_her + + $ her_mood += 10 + her "!!!" ("scream", "wide", "base", "stare", cheeks="blush") + her "Ouch! It hurts! *SOB*!" ("angry", "base", "worried", "mid", cheeks="blush") + gen "Did you like it though?" ("base", xpos="far_left", ypos="head") + her "Did I... \"like it\", [genie_name]...?" ("annoyed", "narrow", "annoyed", "mid") + her "What girl in her right mind would like to be treated this way?" + stop music fadeout 1.0 + + $ hermione.wear("all") + call her_chibi_scene("reset","desk","base", trans=fade) + pause.5 + + her "You are a mean and demented old man!" ("angry", "base", "angry", "mid", cheeks="blush", tears="soft", xpos="mid", ypos="base") + gen "............" ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + call bld + gen "Well, no points for Gryffindor then..." ("base", xpos="far_left", ypos="head") + + jump end_hermione_event + +label hg_pf_grope_breasts_T3_continue: + call her_chibi_scene("grope_tits", trans=d7) + call ctc + + her ".............................." ("angry", "narrow", "base", "down") + gen "You have great tits, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "...................................." ("angry", "narrow", "base", "down") + gen "You like it when I squeeze them like this?" ("base", xpos="far_left", ypos="head") + her "Excuse me, [genie_name], but you are confusing me with one of those lowly harlots again..." ("upset", "closed", "base", "mid") + her "I am only letting you fondle me because I am getting paid for it..." ("upset", "closed", "base", "mid") + her "Not because I enjoy it..." ("upset", "closed", "base", "mid") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "So, you're more like a prostitute then..." ("base", xpos="far_left", ypos="head") + her "[genie_name]!" ("angry", "wide", "base", "stare") + her "Prostitutes are paid to have sex with men..." ("angry", "wide", "base", "stare") + her "I'd never do something like that!" ("upset", "closed", "base", "mid") + + call nar(">You squeeze one of the girl's tits tightly and give the other a couple of firm tugs.") + + her "*Ah*..." ("open", "happyCl", "worried", "mid") + gen "Enjoying yourself, [hermione_name]?" ("base", xpos="far_left", ypos="head") + + her "[genie_name], I am only doing this--" ("upset", "closed", "base", "mid") + + call nar(">You squeeze both of her tits with force...") + + her "*Ah*..." ("shock", "happyCl", "worried", "mid") + gen "Tell me you like this, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "[genie_name], I am only letting you do this to me because--" ("open", "happyCl", "worried", "mid") + gen "I know, I know..." ("base", xpos="far_left", ypos="head") + gen "You are starting to sound like a broken record." ("base", xpos="far_left", ypos="head") + her "...." ("annoyed", "narrow", "annoyed", "mid") + + + jump end_hg_pf_grope + +### Tier 4 ### + +label hg_pf_grope_breasts_T4: + stop music fadeout 1.0 + call her_chibi_scene("behind_desk_front", trans=d7) + pause.8 + + her "............" ("base", "narrow", "worried", "down", cheeks="blush") + + call play_music("playful_tension") # SEX THEME. + $ hermione.strip("robe", "accessory") + + if hermione.is_worn("top"): + call nar(">Hermione shifts to start undoing her clothes...") + + menu: + "\"That's right, take it off!\"": + $ hermione.strip("top") + with d3 + + if hermione.is_worn("bra"): + gen "Show them to me at once!" ("grin", xpos="far_left", ypos="head") + her "......." + $ hermione.strip("bra") + pass + + "\"No, leave it on.\"": + + gen "I want to massage them with your top on..." ("base", xpos="far_left", ypos="head") + her "Oh, I see..." ("open", "base", "base", "R", cheeks="blush") + jump hg_pf_grope_breasts_T4_clothed + + elif hermione.is_worn("bra"): + call nar(">Hermione shifts to start undoing her bra...") + $ hermione.strip("bra") + her "" ("base", "narrow", "worried", "down", cheeks="blush") + call ctc + gen "Very good..." ("base", xpos="far_left", ypos="head") + + + jump hg_pf_grope_breasts_T4_naked + +label hg_pf_grope_breasts_T4_naked: + stop music fadeout 1.0 + call her_chibi_scene("behind_desk_front", trans=d7) + call ctc + + call play_music("playful_tension") # SEX THEME. + + hide hermione_main + her "" ("base", "narrow", "worried", "mid", cheeks="blush", xpos="mid", ypos="base") + call ctc + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-Grab them-": + jump hg_pf_grope_breasts_T4_continue + + "-Slap them-": + pass + + call nar(">You give Hermione's tits a loud slap!") + call slap_her + + her "!!!" ("scream", "wide", "base", "stare", cheeks="blush") + her "Ouch!" ("angry", "base", "worried", "mid", cheeks="blush") + her "[genie_name], what did you do that for?" + gen "Dunno... Seemed like a good idea..." ("base", xpos="far_left", ypos="head") + gen "Did you like it?" ("base", xpos="far_left", ypos="head") + her "... Of course not, [genie_name]." ("annoyed", "closed", "base", "mid") + gen "Let's try this again, then." ("base", xpos="far_left", ypos="head") + her "What?" ("annoyed", "base", "base", "mid") + call slap_her + + her "!!!" ("scream", "wide", "base", "stare", cheeks="blush") + her "Ouch! Stop hurting me!" + gen "Admit that you enjoy it and I will." ("base", xpos="far_left", ypos="head") + her "But I don't..." ("disgust", "narrow", "base", "down") + her "And if you plan to keep on doing this to me, [genie_name]..." + her "... then I think I should leave." ("annoyed", "narrow", "annoyed", "mid") + gen "Fine, fine..." ("base", xpos="far_left", ypos="head") + + jump hg_pf_grope_breasts_T4_continue + +label hg_pf_grope_breasts_T4_clothed: + call her_chibi_scene("grope_tits", trans=d7) + call ctc + + #">Hermione stands in front of you expectantly..." + #">You reach out for her ample breasts..." + #">And start massaging them firmly..." + + "*squeeze-squeeze-squeeze*" + + her "................" ("base", "narrow", "base", "up", cheeks="blush") + + menu: + "\"Do you enjoy this, [hermione_name]?\"": + her "What...?" ("base", "base", "base", "R", cheeks="blush") + her "Oh, I don't mind it..." ("base", "base", "base", "R", cheeks="blush") + "*squeeze-squeeze-squeeze*" + call nar(">You keep massaging her soft tits...") + + if her_tier <= 5: + her "I mean, this isn't a big deal, as long as I am getting paid..." ("base", "narrow", "base", "up", cheeks="blush") + if hermione.is_worn("top"): + call nar(">You keep on massaging her tits through her clothes...") + her "A small price to pay for the honour of my house, really......{heart}" ("soft", "base", "base", "R", cheeks="blush") + else: + gen "Really? It seems to me as if you love it." ("base", xpos="far_left", ypos="head") + her "I wouldn't say that I love it..." ("base", "narrow", "base", "up", cheeks="blush") + call nar(">You keep on massaging her tits through her uniform...") + gen "What would you say then, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I just like it, {size=-4}a lot{heart}{/size}" ("base", "narrow", "base", "up", cheeks="blush") + + jump hg_pf_grope_breasts_T4_continue + + "-Pull on them abruptly with force-": + call nar(">You give Hermione's tits a sudden but firm pull...","start") + with vpunch + her "Ouch..." ("angry", "happyCl", "worried", "mid", cheeks="blush",emote="sweat") + call nar(">You pull on her tits again. This time much stronger.","start") + with vpunch + her "Ouch! [genie_name], what are you trying to do...?" ("angry", "happyCl", "worried", "mid", cheeks="blush",emote="sweat") + call nar(">You jerk the girl down by her tits with all your strength...","start") + with vpunch + with vpunch + call nar(">Hermione almost loses balance...","end") + her "*Panting* What are you doing, [genie_name]...?" ("open", "base", "base", "R", cheeks="blush") + her "You don't need to be so rough with me....{heart}" ("base", "base", "base", "R", cheeks="blush") + + jump hg_pf_grope_breasts_T4_continue + +label hg_pf_grope_breasts_T4_continue: + call her_chibi_scene("grope_tits", trans=d7) + call ctc + + her "*Ah*..." ("open", "narrow", "worried", "down") + + call nar(">You squeeze her tits a few more times, then give them a firm tug...") + + her "*Ah*... [genie_name]..." ("open", "base", "base", "mid") + gen "What? You enjoy this, don't you?" ("base", xpos="far_left", ypos="head") + her "No... I..." ("open", "base", "base", "mid") + gen "Don't you lie to your headmaster, [hermione_name]!" ("base", xpos="far_left", ypos="head") + + call nar(">You squeeze her tits again...") + + her "*Ah*..." ("open", "narrow", "worried", "down") + her "I am not lying, [genie_name]..." ("open", "narrow", "worried", "down") + her "Why would I enjoy this?" ("open", "base", "base", "mid") + gen "I don't know [hermione_name]. You tell me." ("base", xpos="far_left", ypos="head") + + call nar(">You keep massaging her breasts...") + + her "*Ah*... I..." ("open", "base", "base", "mid") + gen "Yes, what is it?" ("base", xpos="far_left", ypos="head") + her "It's... It's nothing, [genie_name]..." ("angry", "base", "base", "mid") + gen "Oh, I think it's something." ("base", xpos="far_left", ypos="head") + gen "I think you like me squeezing your tits like this." ("base", xpos="far_left", ypos="head") + her "[genie_name], please..." ("angry", "narrow", "base", "down") + + if game.daytime: + her "Classes are about to start..." ("angry", "narrow", "base", "down") + else: + her "It's getting late..." ("angry", "narrow", "base", "down") + + her "Can I go now, [genie_name]? Please?" ("angry", "base", "base", "mid") + + gen "Sure, go ahead..." ("base", xpos="far_left", ypos="head") + pause 2 + her "..............." ("angry", "narrow", "base", "down") + pause.2 + + her "[genie_name], you're... Still... Holding me." ("angry", "base", "base", "mid") + gen "Oh, right... my bad." ("base", xpos="far_left", ypos="head") + + + jump end_hg_pf_grope diff --git a/game/scripts/characters/hermione/events/favors/hg_pf_T2a_grope_ass_INCOMPLETE.txt b/game/scripts/characters/hermione/events/favors/hg_pf_T2a_grope_ass_INCOMPLETE.txt new file mode 100644 index 00000000..cd0b466a --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/hg_pf_T2a_grope_ass_INCOMPLETE.txt @@ -0,0 +1,366 @@ + + +### Tier 5 ### + +label hg_pf_grope_ass_T5: # Not in the game yet. + call her_chibi_scene("behind_desk_front", trans=d7) + + her "Do you want me to turn around then, [genie_name]?" ("soft", "narrow", "base", "mid_soft", cheeks="blush", ypos="head", flip=False) + + call play_music("playful_tension") # SEX THEME. + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + "\"Yes. Turn around, [hermione_name].\"": + her "As you say, [genie_name]..." ("base", "base", "base", "R", cheeks="blush") + jump hg_pf_grope_ass_T4_back + + "\"No. Just stand still, [hermione_name].\"": + her "As you say, [genie_name]..." ("soft", "base", "base", "mid", cheeks="blush", ypos="head", flip=False) + jump hg_pf_grope_ass_T4_front + + + +label hg_pf_grope_ass_T5_front: + call her_chibi_scene("behind_desk_front") + with d7 + call ctc + + "Dev Note" "This favour needs to be rewritten!" + + her "[genie_name], please hurry..." ("soft", "base", "base", "R", cheeks="blush") + gen "What's the problem, [hermione_name]?" ("base", xpos="far_left", ypos="head") + + if daytime: + her "I don't have long before class." ("annoyed", "narrow", "angry", "R", cheeks="blush") + else: + her "I don't have long before others notice im missing." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + gen "do you enjoy this so much?" ("base", xpos="far_left", ypos="head") + her "I wouldn't phrase it like that..." ("annoyed", "wink", "base", "mid", cheeks="blush") + + her "Can we just start, please...?" ("angry", "happyCl", "worried", "mid", cheeks="blush",emote="sweat") + gen "Well, since you asked so nicely..." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("grope_ass_front") + with d7 + + her "!!!" ("mad", "wide", "base", "stare", cheeks="blush") + gen "What is it?" ("base", xpos="far_left", ypos="head") + her "nothing, [genie_name]." ("base", "narrow", "base", "up", cheeks="blush") + gen "it didn't sound like nothing." ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "base", "up", cheeks="blush") + + call nar(">You run your hands up and down Hermione's legs...") + her "........................." ("base", "narrow", "base", "up", cheeks="blush") + + call nar(">And give her Ass a good squeeze...") + her "................." ("base", "narrow", "base", "mid_soft") + gen "Don't look away, girl. I want you to look into my eyes." ("base", xpos="far_left", ypos="head") + her "but it's embarrassing, [genie_name]..." ("angry", "narrow", "base", "down") + gen "..." ("base", xpos="far_left", ypos="head") + her "... fine, [genie_name]..." ("base", "narrow", "base", "up", cheeks="blush") + gen "you're being so quiet." ("base", xpos="far_left", ypos="head") + her "...................." ("base", "closed", "base", "mid") + gen "not even a word..." ("base", xpos="far_left", ypos="head") + + call nar(">you enjoy the sensation of her butt under your hands...") + gen "as my hands explore you..." ("base", xpos="far_left", ypos="head") + gen "your thighs..." ("base", xpos="far_left", ypos="head") + + call nar(">your hands rub in circles from the sides of her legs to her inner thighs") + gen "your big, firm ass..." ("base", xpos="far_left", ypos="head") + + call nar(">You massage her ass-cheeks lightly...") + her "....................." ("grin", "narrow", "annoyed", "up") + gen "your loins..." ("base", xpos="far_left", ypos="head") + + call nar(">one hand circling just above her clit.") + her "....................." ("silly", "narrow", "base", "dead") + gen "is there something you want?" ("base", xpos="far_left", ypos="head") + her "....................." ("annoyed", "wink", "base", "mid", cheeks="blush") + her "... i... {size=-5}... i want you to finger me...{/size}" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Did you say something, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "... it's nothing, [genie_name]..." ("open", "narrow", "base", "up", cheeks="blush") + + call nar(">You massage her ass-cheeks lightly with one hand as the other continues to circle above her cunt, fingers brushing against her clit...","start") + call nar(">Hermione maintains eye contact as she's been told...","end") + + gen "you're lying." ("base", xpos="far_left", ypos="head") + her "I... i said i want you to finger me!" ("shock", "happyCl", "worried", "mid") + + call nar(">You swiftly plunge two fingers into her drenched snatch.") + her "!!!{heart}{heart}" ("grin", "narrow", "annoyed", "up") + + call nar(">you start to pump your fingers inside her before she can do more than gasp.") + her "..................................." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "did i say you could look away?" ("base", xpos="far_left", ypos="head") + her ".................................................." ("base", "narrow", "base", "up", cheeks="blush", tears="soft") + gen "good girl" ("base", xpos="far_left", ypos="head") + + call nar(">her hips roll in rhythm as you fuck her with your fingers") + gen "do you like this?" ("base", xpos="far_left", ypos="head") + gen "you like it when i finger your cunt?" ("base", xpos="far_left", ypos="head") + her "i love it!{heart} i love your long fingers in my tight, wet cunt!!{heart}" ("silly", "narrow", "annoyed", "up", tears="crying") + gen "well, i think we can do better." ("base", xpos="far_left", ypos="head") + + call nar(">with your other hand, you force a finger up her tight asshole.") + her "!!!" ("scream", "wide", "worried", "stare", cheeks="blush", tears="messy") + her "my cunt and my ass!" ("grin", "narrow", "base", "dead", cheeks="blush", tears="messy") + + call nar(">you don't even need to move as she pounds herself against your fingers.") + her "fingering my cunt and ass!{heart}{heart}" ("silly", "narrow", "base", "dead", tears="messy") + gen "no, we can still do better." ("base", xpos="far_left", ypos="head") + + call nar(">you force another finger up her ass.") + her "{i}iloveit-iloveit-iloveit{/i}!" ("grin", "narrow", "annoyed", "up", tears="messy") + gen "what do you love, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "ah!!{heart} i love your fingers in my ass and cunt!{heart}" ("shock", "wide", "base", "stare", tears="messy") + + call nar(">her movements have become more frantic.") + gen "are you cumming, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "yes!!" ("scream", "wide", "worried", "stare", cheeks="blush", tears="messy") + her "I'm cumming!!" ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="messy") + her "I'm cumming from being fucked with your fingers!!" ("grin", "narrow", "base", "dead", cheeks="blush", tears="messy") + gen "look at me!" ("base", xpos="far_left", ypos="head") + gen "show me your fuck-face!" ("base", xpos="far_left", ypos="head") + gen "i want to see you cum from Whoring yourself for {number=current_payout} points." ("base", xpos="far_left", ypos="head") + her "*aaaaaaaaah*!!!" ("scream", "wide", "worried", "stare", cheeks="blush", tears="messy") + + jump end_hg_pf_grope + + + +label hg_pf_grope_ass_T5_back: + call her_chibi_scene("behind_desk_back", trans=d7) + call ctc + + "Dev Note" "This favour needs to be rewritten." + + her "............." ("base", "narrow", "base", "up", cheeks="blush") + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + "-Give her butt a squeeze-": + pass + + "-Give her butt a slap-": + call slap_her + + her "!!!!!!!!!!!!!" ("scream", "wide", "base", "stare", cheeks="blush") + her "[genie_name]....?" ("base", "base", "base", "R", cheeks="blush") + + call slap_her + her "!!!!!!!!!!!!!" ("scream", "wide", "base", "stare", cheeks="blush") + her "[genie_name], what are you doing!?" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + her "You said all you are going to do is touch!" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + gen "do you want me to stop, [hermione_name]?" ("base", xpos="far_left", ypos="head") + + call slap_her + her "*ahh*!!" ("silly", "narrow", "base", "up", cheeks="blush") + her "... I--" ("disgust", "narrow", "base", "down", cheeks="blush") + + call slap_her + her "no!!" ("scream", "wide", "base", "stare") + gen "then what do you want me to do?" ("base", xpos="far_left", ypos="head") + + call slap_her + her "to keep slapping me!!" ("silly", "narrow", "base", "up", cheeks="blush") + gen "and what do you want me to slap?" ("base", xpos="far_left", ypos="head") + + call slap_her + her "my ass!!" ("silly", "narrow", "annoyed", "up") + her "slap my slutty ass!!" ("open_tongue", "narrow", "base", "up", cheeks="blush") + gen "you'll have to speak up. I couldn't quite hear you." ("base", xpos="far_left", ypos="head") + call slap_her + + her "slap my slutty ass harder!!{heart}{heart}" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "you're being rather loud today." ("base", xpos="far_left", ypos="head") + + call slap_her + her "Yesss!!" ("open_tongue", "narrow", "base", "up", cheeks="blush") + her "harder!!" ("silly", "narrow", "annoyed", "up") + gen "what if someone hears?" ("base", xpos="far_left", ypos="head") + + call slap_her + her "I don't care!!" ("shock", "wide", "base", "stare", cheeks="blush") + + call slap_her + her "yes!!!" ("silly", "narrow", "base", "up", cheeks="blush") + + call slap_her + her "just a little--" ("grin", "narrow", "annoyed", "up") + + call slap_her + her "I'm gonna--" ("silly", "narrow", "base", "dead") + + call slap_her + her "{i}cum-cum-cumming-I'm cumming{/i}!" ("silly", "narrow", "annoyed", "up") + her "I'm cumming!!!{heart}{heart}" ("open_wide_tongue", "narrow", "annoyed", "up") + ">you take a moment watch her spasms" + gen "well, then... proceeding with groping..." ("base", xpos="far_left", ypos="head") + her "................" ("base", "narrow", "base", "up") + + call ctc + call her_chibi_scene("grope_ass_back") + with d7 + + her "wait I juuuus--!!!" ("base", "base", "base", "R", cheeks="blush", ypos="head", flip=False) + call nar(">Her voice trails off to a squeak as you start to knead her big, round ass") + gen "*Hmm*? what's that? i couldn't hear you, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "You bastard{heart}" ("grin", "narrow", "base", "up", cheeks="blush") + call nar(">Hermione's body quivers as her hips roll") + gen "Well, someone's enjoying herself." ("base", xpos="far_left", ypos="head") + her "Well, you know me, [genie_name]..." ("base", "narrow", "base", "up", cheeks="blush") + her "I'm just happy to be able to do my part" ("base", "narrow", "base", "up", cheeks="blush") + her "Please don't mind it and continue..." ("base", "narrow", "base", "up", cheeks="blush") + her "(... to grope me...)" ("silly", "narrow", "base", "dead") + + call nar(">You keep on playing with Hermione's ass...","start") + call nar(">And continue sliding your hands up and down her inner thighs...","end") + + her "................" ("base", "base", "base", "R", cheeks="blush") + + jump hg_pf_grope_T5_continue + + + +label hg_pf_grope_T5_continue: + + menu: + "-Slide your hands between her legs-": + call nar(">You slowly slide one of your hands towards her crotch...") + her "[genie_name]... What are you...?" ("base", "narrow", "base", "up", cheeks="blush") + gen "something you'll enjoy." ("base", xpos="far_left", ypos="head") + gen "just relax and leave everything to me." ("base", xpos="far_left", ypos="head") + her "As you say..." ("base", "narrow", "base", "up", cheeks="blush") + + pass + + "-That's enough for today. Dismiss her-": + + jump end_hg_pf_grope + + menu: + "-Prod her pussy with one of your fingers-": + ">You slide one of your fingers down and place it against the girl's little slit..." + her "[genie_name]?" ("base", "narrow", "base", "up", cheeks="blush", ypos="head", flip=False) + + ">You force one of your fingers into her little pussy..." + ">It's very tight and warm..." + ">It is quite wet as well... Seems like Hermione's taking pleasure in this..." + pause.8 + + her "Ah... your finger is in my..." ("silly", "narrow", "annoyed", "up") + her "Ah... wait--" ("angry", "narrow", "base", "dead", cheeks="blush", tears="crying") + ">you slowly start to pump your fingers..." + her "-Only {number=current_payout} points--" ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + ">you speed up slightly..." + her "{heart}-My duty-{heart}" ("open", "wide", "worried", "stare", cheeks="blush", tears="messy") + ">you start rubbing her clit..." + her "!!{heart}-Gryffindor-{heart}" ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + gen "we can, of course, stop right here, unfulfilled. If that's what you really want." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "dead", cheeks="blush", tears="crying") + gen "well?" ("base", xpos="far_left", ypos="head") + her "... Keep going..." ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + gen "*Hmm*?" ("base", xpos="far_left", ypos="head") + her "Keep fingering my pussy!!" ("scream", "base", "angry", "mid", cheeks="blush", tears="messy") + gen "You want me to keep fingering your cunt? is that what your saying?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]! {heart} Fuck my cunt with your fingers!{heart}" ("open_wide_tongue", "narrow", "annoyed", "up", tears="messy") + ">Her hips roll and slam into your fingers." + her "Shove them deep in my slutty fuckhole!!{heart}" ("silly", "narrow", "base", "dead", tears="messy") + gen "*Hmm*... I don't think my fingers are up to this task after all..." ("base", xpos="far_left", ypos="head") + ">You take your fingers out of the girl's gushing cunt." + her "what!!? no, don't st--" ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="crying") + ">... so you can take the dildo out of your desk." + her "oh, god yes!!" ("grin", "narrow", "base", "dead", cheeks="blush", tears="messy") + gen "this is a much better fit isn't it?" ("base", xpos="far_left", ypos="head") + her "*aah*!{heart}" ("silly", "narrow", "base", "dead", tears="messy") + gen "you're far too much of slut to be satisfied by fingers, aren't you?" ("base", xpos="far_left", ypos="head") + her "Yes, {i}fine-whatever{/i}!" ("scream", "base", "angry", "mid", cheeks="blush", tears="messy") + her "i don't care!" ("scream", "wide", "worried", "stare", cheeks="blush", tears="messy") + her "just don't stop!" ("silly", "narrow", "annoyed", "up", tears="messy") + ">her hips meet your every thrust, nearly tearing the toy from your grip." + her "{i}donstopdonstopdonstop{/i}--" ("grin", "narrow", "base", "dead", cheeks="blush", tears="messy") + her "{i}pleasepleasepleaseplease{/i}--" ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="messy") + gen "are you enjoying yourself, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "yes! I love how you spank me!" ("grin", "narrow", "base", "dead", cheeks="blush", tears="messy") + her "I love how you grope me!" ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="crying") + her "I love how you play with my little fuckholes!" ("grin", "narrow", "base", "up", cheeks="blush", tears="messy") + her "{i}ohgodohgodohgod{/i}" ("scream", "wide", "worried", "stare", cheeks="blush", tears="messy") + ">Hermione tries to scream as her body bucks and the orgasm takes her, but can't get enough air to do more then moan." + her "*oooooooh*...{heart}{heart}{heart}{heart}{heart}" ("open_wide_tongue", "narrow", "annoyed", "up") + + jump end_hg_pf_grope + + "-Prod her butthole instead-": + ">You place your one of your thumbs against the girl's little butthole..." + her "[genie_name]? you're not planning to--" ("open", "base", "base", "R", cheeks="blush", ypos="head", flip=False) + + ">You force one of your thumbs into her little butthole..." + with hpunch + her "*ah*... your finger is up my..." ("silly", "narrow", "annoyed", "up") + ">It's very tight and warm inside..." + her "*ah*... wait--" ("angry", "narrow", "base", "dead", cheeks="blush", tears="crying") + ">you slowly start to pump your thumb" + pause.8 + + her "-only {number=current_payout} poin--" ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + ">you speed up slightly" + her "{heart}-my duty-{heart}" ("open", "wide", "worried", "stare", cheeks="blush", tears="messy") + ">you rotate thumb as you go" + her "!!{heart}-Gryffindor-{heart}" ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + gen "we can, of course, stop right here, unfulfilled. if that's what you really want." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "dead", cheeks="blush", tears="crying") + gen "well?" ("base", xpos="far_left", ypos="head") + her "... keep going..." ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + gen "*Hmm*?" ("base", xpos="far_left", ypos="head") + her "keep fingering my ass!!" ("scream", "base", "angry", "mid", cheeks="blush", tears="messy") + ">you pull your thumb out of her tight little asshole..." + her "w-what!?" ("scream", "wide", "worried", "stare", cheeks="blush", tears="messy") + her "why w--" ("scream", "base", "angry", "mid", cheeks="blush", tears="messy") + ">... and replace it with two fingers" + her "*Aaah*!" ("scream", "wide", "worried", "stare", cheeks="blush", tears="messy") + her "B-Bastard!{heart}" ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="messy") + her "Y-you teasing b-bastard!{heart}{heart}" ("grin", "narrow", "base", "dead", cheeks="blush", tears="messy") + gen "do you like this, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "yes!!!" ("angry", "narrow", "base", "dead", cheeks="blush", tears="crying") + gen "do you love it?" ("base", xpos="far_left", ypos="head") + her "oh, god, yes!!!" ("silly", "narrow", "annoyed", "up", tears="messy") + gen "tell me what you love!" ("base", xpos="far_left", ypos="head") + call slap_her + + her "*aaah*!!{heart}{heart}{heart}" ("scream", "wide", "worried", "stare", cheeks="blush", tears="messy") + gen "I asked you a question." ("base", xpos="far_left", ypos="head") + + call slap_her + her "when you finger my ass!" ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="messy") + her "i love it when you fuck my ass with your fingers!" ("grin", "narrow", "base", "dead", cheeks="blush", tears="messy") + gen "what else do you love?" ("base", xpos="far_left", ypos="head") + + call slap_her + her "when you slap my slutty ass!" ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="messy") + + call slap_her + her "a-again! I'm c-c" ("scream", "wide", "worried", "stare", cheeks="blush", tears="messy") + gen "you're cumming again?" ("base", xpos="far_left", ypos="head") + + call slap_her + her "yes!" ("scream", "squint", "base", "mid", cheeks="blush", tears="messy") + gen "you're cumming from being spanked again?" ("base", xpos="far_left", ypos="head") + + call slap_her + her "yes!!" ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="messy") + gen "you're cumming from having your headmaster's fingers shoved up your tight little asshole?" ("base", xpos="far_left", ypos="head") + + call slap_her + her "yes!!!{heart}" ("scream", "wide", "worried", "stare", cheeks="blush", tears="messy") + ">Hermione's body starts to buck wildly." + ">you grab herby the hair with your free hand to keep her on the desk even as you frantically pump your fingers into her big, tight ass" + her "{i}ohgodohgodohgod{/i}" ("scream", "wide", "worried", "stare", cheeks="blush", tears="messy") + gen "what are you cumming from, little whore?" ("base", xpos="far_left", ypos="head") + her "!!!!" ("mad", "wide", "base", "stare", cheeks="blush", tears="messy") + gen "where's all this pleasure coming from?!" ("base", xpos="far_left", ypos="head") + her "my assssss!{heart}" ("open_wide_tongue", "narrow", "annoyed", "up", tears="messy") + ">with one last spasm,hermione collapses to the desk. even after fainting, her Body still twitches, and her hips keep rolling." + + jump end_hg_pf_grope diff --git a/game/scripts/characters/hermione/events/favors/hg_pf_T2a_grope_breasts_INCOMPLETE.txt b/game/scripts/characters/hermione/events/favors/hg_pf_T2a_grope_breasts_INCOMPLETE.txt new file mode 100644 index 00000000..8ac9e230 --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/hg_pf_T2a_grope_breasts_INCOMPLETE.txt @@ -0,0 +1,147 @@ +### Tier 5 ### + +label hg_pf_grope_breasts_T5_naked: # No top. + stop music fadeout 1.0 + call her_chibi_scene("behind_desk_show_tits", trans=d7) + call ctc + + call play_music("playful_tension") # SEX THEME. + + hide hermione_main + show screen blktone + her "" (xpos="mid", ypos="base") + call ctc + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-Grab them-": + return + + "-Slap them-": + pass + + show screen blktone + call nar(">You give Hermione's tits a loud slap!") + call slap_her + + #elif her_whoring >= 15: + her "Ah!!!" ("scream", "wide", "base", "stare", cheeks="blush") + her "[genie_name], why did you do that?" ("grin", "narrow", "base", "mid_soft", cheeks="blush") + gen "Dunno... Seemed like a good idea..." ("base", xpos="far_left", ypos="head") + gen "Did you like it?" ("base", xpos="far_left", ypos="head") + her ".........." ("annoyed", "base", "base", "mid") + her "I am not a pervert..." + call nar(">You give Hermione's tits another loud smack!") + call slap_her + + her "A-ah!!!" ("silly", "narrow", "worried", "down", cheeks="blush") + gen "Tell me you like it!" ("base", xpos="far_left", ypos="head") + her "[genie_name]... I..." + call nar(">You unleash a whole series of slaps!") + + call slap_her + call slap_her + call slap_her + + call nar(">Hermione's tits bounce all over the place, completely out of control") + her "A-ah!!! Ah!!! A-a-aha!!!" ("silly", "narrow", "annoyed", "up", cheeks="blush", tears="soft") + gen "You enjoy this. Admit it." ("base", xpos="far_left", ypos="head") + her "..........." ("base", "narrow", "base", "dead", cheeks="blush", tears="soft") + call nar(">You smack her tits again.") + + call slap_her + call slap_her + call slap_her + + her "A-ah! Yes! I do, I do! A-ah..." ("silly", "narrow", "annoyed", "up", cheeks="blush", tears="soft") + her "... does this mean I'm a pervert, [genie_name]?" ("angry", "base", "worried", "mid", cheeks="blush", tears="soft") + gen "What?" ("base", xpos="far_left", ypos="head") + gen "Stop being silly, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "It is completely natural for a girl to enjoy her tits getting smacked around a little." ("base", xpos="far_left", ypos="head") + her "......" + her "Are you sure about that, [genie_name]?" + gen "Yes. Believe me, I know." ("base", xpos="far_left", ypos="head") + call nar(">You give her tits one more slap!") + call slap_her + + her "*A-ah*... Yes... Thank you, [genie_name]." ("silly", "narrow", "annoyed", "up", cheeks="blush", tears="soft") + gen "Well... Enough with the slapping for now..." ("base", xpos="far_left", ypos="head") + + return + + + +### Tier 6 ### + +label hg_pf_grope_breasts_T6_naked: + call set_her_action("lift_top") + call her_chibi_scene("grope_tits", trans=d7) + call ctc + + show screen blktone + her "*Ah*..." ("soft", "narrow", "annoyed", "up") + gen "A bit sensitive today, aren't you?" ("base", xpos="far_left", ypos="head") + her "I suppose..." ("base", "narrow", "base", "mid_soft") + her "*Ah*..." ("open", "happyCl", "worried", "mid") + gen "You like it when I squeeze them like this?" ("base", xpos="far_left", ypos="head") + her "I do, [genie_name]... *Ah*..." ("base", "narrow", "base", "mid_soft") + gen "Heh..." ("base", xpos="far_left", ypos="head") + gen "What if I pinch your nipples?" ("base", xpos="far_left", ypos="head") + her "!!!" ("angry", "base", "base", "mid") + her "*Ah*! [genie_name]..." ("open", "happyCl", "worried", "mid") + gen "And what if I do this?" ("base", xpos="far_left", ypos="head") + call nar(">You grab the girl by her hard nipples and start pulling...") + her "*Ah*... *Ah*... *Ah*... [genie_name]..." ("shock", "happyCl", "worried", "mid") + gen "What if I pull even harder?" ("base", xpos="far_left", ypos="head") + with hpunch + + her "*Ah*... [genie_name], please..." ("scream", "wide", "base", "stare") + call nar(">Hermione clutches the edge of your desk to keep herself from taking a step towards you...") + gen "Good girl..." ("base", xpos="far_left", ypos="head") + her "*Panting heavily*" ("grin", "narrow", "base", "dead") + gen "Do you enjoy this?" ("base", xpos="far_left", ypos="head") + her "You are hurting me, [genie_name]..." ("shock", "base", "base", "R", cheeks="blush", tears="soft") + gen "But do you enjoy it?" ("base", xpos="far_left", ypos="head") + + if her_whoring < 18: + her "*Ah*... Yes, [genie_name]... I don't know why, but I do..." ("clench", "base", "worried", "mid", cheeks="blush", tears="soft") + else: + her "*Ah*... Yes, [genie_name]... I love it..." ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + + gen "Good girl..." ("base", xpos="far_left", ypos="head") + call nar(">You let go of her nipples...") + her "*Ah*..." ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + + show screen bld1 + call hide_blktone + + gen "This will be all for today, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "*Oh*...?" ("shock", "base", "base", "R", cheeks="blush", tears="soft") + gen "What is it? You look disappointed." ("base", xpos="far_left", ypos="head") + gen "I will pay you of course..." ("base", xpos="far_left", ypos="head") + her "That's not it, [genie_name]..." ("angry", "squint", "base", "mid", cheeks="blush") + her "It's..." ("angry", "squint", "base", "mid", cheeks="blush") + + if daytime: + her "It's just that I still have some time left before I have to leave for the classes and..." ("shock", "base", "base", "R", cheeks="blush", tears="soft") + else: + her "It's not really that late yet, is it?" ("shock", "base", "base", "R", cheeks="blush", tears="soft") + + her "*uhm*..." ("angry", "squint", "base", "mid", cheeks="blush") + her "..................." ("angry", "squint", "base", "mid", cheeks="blush") + gen "You want me to hurt you some more, don't you?" ("base", xpos="far_left", ypos="head") + + if her_whoring < 18: + her "I don't \"want to\"... " ("shock", "base", "base", "R", cheeks="blush", tears="soft") + her "But if you insist [genie_name]..." ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + gen "Well, I do insist... apparently." ("base", xpos="far_left", ypos="head") + else: + her "Yes please, [genie_name]!" ("shock", "base", "base", "R", cheeks="blush", tears="soft") + her "I'll even let you do it for free..." ("shock", "base", "base", "R", cheeks="blush", tears="soft") + gen "Well, in that case..." ("base", xpos="far_left", ypos="head") + + her "Ah..." ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + + call nar(">You spend some more time with Hermione's breasts...") + + return diff --git a/game/scripts/characters/hermione/events/favors/hg_pf_T3a_blowjob_facefuck_INCOMPLETE.txt b/game/scripts/characters/hermione/events/favors/hg_pf_T3a_blowjob_facefuck_INCOMPLETE.txt new file mode 100644 index 00000000..49d2581c --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/hg_pf_T3a_blowjob_facefuck_INCOMPLETE.txt @@ -0,0 +1,281 @@ + + +label hg_pf_facefuck_1: # Bondage facefuck scene (NOT IMPLEMENTED) + + "Dev Note" "Not in use yet." + + call play_music("playful_tension") #HERMIONE + gen "I think it's time for another blowjob, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Of course [genie_name]..." ("base", "narrow", "base", "down", xpos="mid", ypos="base") + gen "Not just any blowjob though." ("base", xpos="far_left", ypos="head") + her "Oh? What's so special about this one?" ("soft", "narrow", "worried", "mid_soft") + gen "Nothing much... You will have to have your hands tied behind your back though." ("base", xpos="far_left", ypos="head") + her "WHAT? WHY?" + gen "Just to make sure you don't try to interfere..." ("base", xpos="far_left", ypos="head") + her "..." + gen "Perfect, I'll get the cuffs ready, you just strip." ("base", xpos="far_left", ypos="head") + her "..." + ">Hermione starts to slowly strip while nervously staring at the cuffs." + + #Hermione stands naked before you + her "Are you sure we need them? Can't I just promise to keep my hands down?" + gen "And where's the fun in that?" ("base", xpos="far_left", ypos="head") + ">You step in front of Hermione, grabbing her wrists and quickly cuffing them together behind her back." + ">Hermione nervously tries to pull her wrists apart, confirming they are indeed locked together." + her "..." + gen "Ready to start?" ("base", xpos="far_left", ypos="head") + her "I'm still not so sure about these cuffs though..." + + gen "This isn't about what you want, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "You need to be taught a lesson." ("base", xpos="far_left", ypos="head") + + label hg_pf_facefuck_1_choices: + + menu: + "-Slap Her!-": + "*SLAP*!" + her "!!!" + "*SLAP*!" + her "Ah!!! please!" + gen "please, what?" ("base", xpos="far_left", ypos="head") + gen "Are you gonna start begging for my cock like a good slut?" ("base", xpos="far_left", ypos="head") + "*SLAP*!" + her "Ah!!! Yes! Please, let me suck your cock!" + "*SLAP*!" + her "Ah!!!" + gen "I don't just want you to suck my cock..." ("base", xpos="far_left", ypos="head") + gen "I'm going to fuck your face..." ("base", xpos="far_left", ypos="head") + her "{b}My face?{/b}" + gen "*Mhmm*... Now beg me." ("base", xpos="far_left", ypos="head") + "*SLAP*!" + her "Ah!!! P-please, [genie_name]!" + her "Please {b}fuck{/b} my face!" + "*SLAP*!" + her "!!!" + gen "More." ("base", xpos="far_left", ypos="head") + her "Yes!" + "*SLAP*!" + "*SLAP*!" + "*SLAP*!" + jump hg_pf_facefuck_1_choices + + "-Face fuck her!-": + gen "You're lucky I can't wait any longer." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]..." + pass + + ">With that you gently help the red bottomed girl onto her knees, leaving her hands tied uselessly behind her as she gazes up at you with fear and anticipation." + gen "Ready?" ("base", xpos="far_left", ypos="head") + her "I t-think so..." + gen "Open wide..." ("base", xpos="far_left", ypos="head") + + #Start CG with Hermione sitting there with her mouth open gazing up at Genie + her "Ahhhh..." + gen "Perfect." ("base", xpos="far_left", ypos="head") + $ her_cg_path = "images/CG/herm_deep/" + $ her_cg_genie = her_cg_path+"genie.webp" + $ her_cg_xpos_abs = 0 + $ her_cg_ypos_abs = 0 + $ her_cg_xpos = 0 + $ her_cg_ypos = 0 + + $ herCG(pupil='up', eye='squint_m', mouth='base', eyebrow='sad', cheeks='blush', extra_1='blank', extra_2='blank', extra_3='hand', tears='mascara', body='base') + + show screen hercg + hide screen blkfade + with d5 + ">Unable to wait any longer, you put your hand on the back of Hermione's head before forcefully pulling it forward burying her nose in your stomach and your cock down her throat?" + her "!!!" + ">Hermione's arms desperately struggle against the cuffs as she attempts to push herself off your cock." + gen "See why we need the cuffs now?" ("base", xpos="far_left", ypos="head") + $ herCG(pupil='mid', xpos=-renpy.random.randint(0, 50)) + her "..." + gen "Because I don't just want a blowjob today. I don't want your arms interfering and getting in the way." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "..." + gen "I want to {b}fuck{/b} your face." ("base", xpos="far_left", ypos="head") + gen "Hard." ("base", xpos="far_left", ypos="head") + ">With that you starting mercilessly pumping Hermione's head backwards and forwards viscously on your cock, filling the room with the harsh sounds of you throating the poor girl." + + #Cocksucking loop + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Ugh... that's it..." ("base", xpos="far_left", ypos="head") + $ herCG(pupil='up', eye='squint_m', xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "This is what I've been missing..." ("base", xpos="far_left", ypos="head") + $ herCG(pupil='up', eye='squeeze', xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "The feeling some slut's throat struggling..." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "While I fuck it senseless..." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Can't be beat..." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Only way this can get any better is when the girl you're doing it to also ends up being a princess." ("base", xpos="far_left", ypos="head") + ">You pull Hermione's head off your cock," + gen "You're not a princess are you?" ("base", xpos="far_left", ypos="head") + $ herCG(pupil='up', eye='squint_m', xpos=-renpy.random.randint(0, 50)) + her "COUGH COUGH COUGH" + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "Ah...... no... I'm not a princess..." + gen "Shame..." ("base", xpos="far_left", ypos="head") + ">You grab hermione's hair, forcefully ramming your cock back down her throat..." + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "!!!" + $ herCG(pupil='up', eye='squint_m', xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Guess you'll just have to settle for being grade-a fuck meat..." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Not that you aren't good enough to be dicksucking royalty..." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Maybe we'll have to give you a title after all..." ("base", xpos="far_left", ypos="head") + $ herCG(pupil='up', eye='squint_m', xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "You could be the queen of cocksucking..." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Princess of penis?" ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Let me know when you hear anything that piques your fancy." ("base", xpos="far_left", ypos="head") + $ herCG(pupil='up', eye='squint_m', xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Nothing? Probably too focused on earning yourself a salty treat." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Well... Let me indulge you then." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + ">With that, you hold hermione's face hard against your stomach as you start pumping your load down her throat." + $ herCG(pupil='up', eye='squint_m', xpos=0, extra_1="cum") + her "!!!" + gen "Ugh... that's it..." ("grin", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glp*glp*glp*" + ">Hermione helplessly starts to struggle against her cuffs as you cut off her air supply to pump her full of cum." + gen "Mmmmm..." ("grin", xpos="far_left", ypos="head") + ">Eventually, you let her head go, allowing her to pull herself off your cock to take a much needed breath." + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "aaaaaaahhh..." + $ herCG(pupil='up', eye='squint_m', xpos=-renpy.random.randint(0, 50)) + her "[genie_name]! *pant* You almost killed me!" + gen "You're fine..." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "Barely! What if I had died?" + gen "At least you would have died doing what you love." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "Ha! Well don't think I'll let you try that again!" + gen "You're not really in any position to argue that though, are you?" ("base", xpos="far_left", ypos="head") + ">You start smearing your cock against her nose and face while she helplessly glares at you." + $ herCG(pupil='up', eye='squint_m', xpos=-renpy.random.randint(0, 50)) + her "..." + gen "Besides, that puddle your kneeling in doesn't really make it look like you're having such a bad time yourself..." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "You k-know I can't help that!" + gen "You're right... You just can't help being such a naughty little slut, can you?" ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "..." + gen "I guess there are other ways your throat can answer that question. Now, open wide..." ("base", xpos="far_left", ypos="head") + $ herCG(pupil='up', eye='squint_m', xpos=-renpy.random.randint(0, 50)) + her "No, please, not again... I can't--" + ">Instead of giving her time to complain, you grab the back of her head and jam your cock back down the poor girls throat." + $ herCG(pupil='up', eye='squint_m', xpos=0, extra_1='blank', extra_2='cum_2') + her "!!!" + gen "Fuck... that's it..." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + ">You revel in the feeling of Hermione's throat helplessly contracting around the head of your cock as it mercilessly pumps in and out." + $ herCG(pupil='up', eye='squint_m', xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "We really need to do this more often..." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Nothing quite drains the old balls more than a good facefucking." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "What do you think?" ("base", xpos="far_left", ypos="head") + $ herCG(pupil='up', eye='squint_m', xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Would you be OK with letting your headmaster fuck your little face everyday?" ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Going to every class with a belly full of cum." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Your makeup a mess." ("base", xpos="far_left", ypos="head") + $ herCG(pupil='up', eye='squint_m', xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Showing off to everyone that your a shameless blowjob barbie..." ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "You'd love it, wouldn't you?" ("base", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + ">Hermione's legs start spasming as the puddle of cum beneath her grows..." + gen "That answers that..." ("base", xpos="far_left", ypos="head") + $ herCG(pupil='up', eye='squint_m', xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "Ready for another load, slut?" ("grin", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "HERE IT COMES!" ("grin", xpos="far_left", ypos="head") + $ herCG(xpos=-renpy.random.randint(0, 50)) + her "*glck-glk-glck*" + gen "*ARGH*!!!" ("grin", xpos="far_left", ypos="head") + + menu: + "-Cum up her nose-": + hide screen hercg + with fade + ">You quickly pull your cock out of her throat before placing it up against her left nostril." + #TODO Cum in nose layer? + her "aaaaaaahhh.... *pant*wait...*pant* not there..." ("open_tongue", "wide", "base", "stare", tears="mascara", ypos="head", flip=False) + ">Helpless to stop you, Hermione is unable to prevent you from firing a huge load up her nose." + gen "FUCK YES! TAKE THIS, WHORE!" ("grin", xpos="far_left", ypos="head") + her "Ah... no... it's so hot! I can feel it! Ugh... it's coming down my throat..." ("open_tongue", "narrow", "annoyed", "up") + gen "UGHH!!!" ("grin", xpos="far_left", ypos="head") + ">You shift your cock head so it's firmly sealed against her right nostril before you continue unloading into the poor girl." + her "Ah.... it's... your shooting it on my brain!" ("full_cum", "narrow", "annoyed", "up") + her "Agh.... the smell... it's so much... I can't..." ("full_cum", "narrow", "annoyed", "up") + her "ah........." ("full_cum", "narrow", "annoyed", "up") + + "-Cum down her throat-": + ">You firmly hold hermione's head against your body as you shamelessly unload down her throat for the second time..." + gen "FUCK YES! SWALLOW THIS, SLUT!" ("grin", xpos="far_left", ypos="head") + $ herCG(pupil='up', eye='squint', xpos=-0, extra_1='cum') + her "*glp*glp*glp*" + gen "Ugh... that's it..." ("grin", xpos="far_left", ypos="head") + $ herCG(pupil='up', eye='squint', xpos=-40) + her "*glp*glp*glp*" + gen "Take it all..." ("grin", xpos="far_left", ypos="head") + $ herCG(pupil='up', eye='squint', xpos=-0) + her "*glp*glp*glp*" + + "-Cum on her face-": + ">You pull your cock out and start furiously jerking it in front of her face." + her "aaaaaaahhh.... *pant*please...*pant* coat me..." ("shock", "narrow", "annoyed", "up") + gen "*ARGH*!!! YOU WHORE!!!" ("grin", xpos="far_left", ypos="head") + $ hermione.set_cum(face="heavy") + her "*pant*{heart}{heart}{heart}*pant*" ("shock", "slit", "worried", "ahegao") + gen "TAKE THIS!!!" ("grin", xpos="far_left", ypos="head") + ">You start unloading onto the girl's waiting face." + her "{heart}Yesss....{heart}" ("soft", "narrow", "base", "up") + ">Hermione closes her eyes and smiles, holding her face dead still, allowing you to paint it with cum..." + + hide screen hercg + show screen blkfade + with fade + ">With that, Hermione's legs again start to shake, giving away another shameless orgasm from the cumslut..." + her "Ah... soooo... goooodd..." + ">Before she can say anymore, she passes out in a naked mess, laying in a pool of her own cum, still cuffed together." + gen "I suppose I should probably clean her up and take her back to her room..." ("base", xpos="far_left", ypos="head") + her "..." + gen "Ugh... Even a fleshlight is easier to clean than this..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pf_blowjob diff --git a/game/scripts/characters/hermione/events/favors/hg_pf_T3a_look_at_ass_INCOMPLETE.txt b/game/scripts/characters/hermione/events/favors/hg_pf_T3a_look_at_ass_INCOMPLETE.txt new file mode 100644 index 00000000..929bcdf3 --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/hg_pf_T3a_look_at_ass_INCOMPLETE.txt @@ -0,0 +1,1034 @@ + + +### Hermione Shows Her Backside ### + +label hg_pf_look_at_ass: #LV.3 (Whoring = 9 - 11) + + call reset_menu_position + + if hg_pf_look_at_ass.points == 0: + gen "{size=-4}(I feel like checking out that ass.){/size}" ("base", xpos="far_left", ypos="head") + else: + gen "{size=-4}(I feel like checking out that ass again.){/size}" ("base", xpos="far_left", ypos="head") + + if hg_pf_look_at_ass.points < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + $ current_payout = 40 + + if hg_pf_look_at_ass.points == 0 and her_whoring < 15: # LEVEL 04 # FIRST TIME. + + call bld + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." ("normal", "base", "base", "mid") + gen "How much will it cost for you to get naked and show me that perfect ass of yours?" ("base", xpos="far_left", ypos="head") + stop music fadeout 1.0 + if her_whoring < 12: + her "Get naked and show you my...?" ("angry", "wide", "worried", "shocked") + jump too_much + else: + her "Get naked and show you my...?" ("open", "base", "base", "mid") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "[genie_name]!" ("scream", "closed", "angry", "mid") + gen "Come on..." ("base", xpos="far_left", ypos="head") + gen "It's not like I haven't seen it all before." ("base", xpos="far_left", ypos="head") + her "......" ("open", "base", "base", "mid") + her "............." ("annoyed", "base", "worried", "R") + her "{number=current_payout} house points, [genie_name]." ("normal", "happyCl", "worried", "mid") + gen "So if I give you {number=current_payout} house points, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "You will shamelessly strip naked and present your lovely ass?" ("base", xpos="far_left", ypos="head") + her "[genie_name]! There's no reason to be so detestable!" ("angry", "base", "angry", "mid") + her "I think I want fifty points now..." + + menu: + "\"Fine. Fifty points are yours. Show me!\"": + $ current_payout = 50 + her "Really?" ("open", "base", "base", "mid") + gen "Well?" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "base", "worried", "R") + her "You have to promise me not to touch, [genie_name]..." + gen "Sure, sure..." ("base", xpos="far_left", ypos="head") + her "And you most certainly must not touch yourself!" ("scream", "happyCl", "worried", "mid") + + "\"I will give you forty points to see your ass.\"": + her "{number=current_payout}?" ("annoyed", "squint", "angry", "mid") + her "Well alright then..." ("annoyed", "narrow", "angry", "R") + her "but if you expect to touch me it'll cost you extra..." ("annoyed", "narrow", "worried", "down") + her "at least one hundred points" ("annoyed", "narrow", "angry", "R") + + menu: + "\"Fine. One hundred it is! strip already!": + $ current_payout = 100 + her "................." + her "(I didn't think he'd agree to this...)" ("annoyed", "base", "worried", "R") + her "W-Well alright then..." ("normal", "happyCl", "worried", "mid") + "\"Forty house points it is then\"": + $ current_payout = 40 + her "Well, so be it." + her "but you better keep your hands you yourself..." ("annoyed", "narrow", "angry", "R") + + "\"Fine, leave. I don't care...\"": + her "Tsk!" + + call her_walk(action="leave") + + $ her_mood = +12 + + jump end_hermione_event + + gen "Alright, alright..." ("base", xpos="far_left", ypos="head") + if hermione.is_any_worn("robe", "top", "bottom", "panties", "bra"): + gen "Just get naked already!" ("grin", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "annoyed", "mid", xpos="mid", ypos="base") + $ hermione.strip("robe", "accessory") + her "{size=-5}(I can't believe I'm going to strip for him...){/size}" ("disgust", "narrow", "base", "down", cheeks="blush") + + if hermione.is_worn("top"): + $ hermione.strip("top") + + call ctc + + if hermione.is_worn("bottom"): + gen "That's it [hermione_name], take off your bottoms..." ("base", xpos="far_left", ypos="head") + her "............" ("annoyed", "narrow", "angry", "R", cheeks="blush") + $ hermione.strip("bottom") + + call ctc + + if hermione.is_worn("bra"): + gen "Show me your titties too!" ("base", xpos="far_left", ypos="head") + her "............" ("soft", "base", "base", "R", cheeks="blush") + $ hermione.strip("bra") + gen "Very nice..." ("base", xpos="far_left", ypos="head") + + call ctc + + if hermione.is_worn("panties"): + gen "The grand finale..." ("grin", xpos="far_left", ypos="head") + her "....." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + $ hermione.strip("panties") + + call ctc + + if hermione.is_worn("pubes"): + gen "Nice patch of hair you got there!" ("grin", xpos="far_left", ypos="head") + her "............" ("annoyed", "narrow", "angry", "R", cheeks="blush") + + gen "Now turn around..." ("base", xpos="far_left", ypos="head") + call blkfade + + her "" ("annoyed", "narrow", "annoyed", "mid") + call ctc + her "...................................." + + call hg_show_ass + + jump end_hg_show_ass + + #Second and Third Event + else: #Whoring 12+ or her_whoring (9+ and .points > 1) + + her "" (xpos="right", ypos="base") + pause.5 + + if her_whoring < 15: + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("annoyed", "narrow", "angry", "R") + gen "I need to see your ass, [hermione_name]." ("base", xpos="far_left", ypos="head") + + if her_whoring < 15: + her "............" ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "Do you promise not to touch, [genie_name]?" ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Of course." ("base", xpos="far_left", ypos="head") + elif her_whoring < 18: + her "Are you only going to watch, [genie_name]?" ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Of course..." ("base", xpos="far_left", ypos="head") + else: + her "anything for you [genie_name]" ("base", "narrow", "base", "up", cheeks="blush") + + if hermione.is_any_worn("robe", "top", "bottom", "panties", "bra"): + gen "Just get naked already!" ("grin", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "annoyed", "mid", xpos="mid", ypos="base") + $ hermione.strip("robe", "accessory") + her "{size=-5}(I can't believe I'm going to strip for him...){/size}" ("disgust", "narrow", "base", "down", cheeks="blush") + + if hermione.is_worn("top"): + $ hermione.strip("top") + + call ctc + + if hermione.is_worn("bottom"): + gen "That's it [hermione_name], take off your bottoms..." ("base", xpos="far_left", ypos="head") + if her_whoring < 18: + her "....." ("annoyed", "narrow", "angry", "R", cheeks="blush") + else: + her "............" ("soft", "base", "base", "R", cheeks="blush") + $ hermione.strip("bottom") + + call ctc + + if hermione.is_worn("bra"): + gen "Show me your titties too!" ("base", xpos="far_left", ypos="head") + if her_whoring < 18: + her "....." ("annoyed", "narrow", "angry", "R", cheeks="blush") + else: + her "............" ("soft", "base", "base", "R", cheeks="blush") + $ hermione.strip("bra") + gen "Very nice..." ("base", xpos="far_left", ypos="head") + + call ctc + + if hermione.is_worn("panties"): + gen "The grand finale..." ("grin", xpos="far_left", ypos="head") + if her_whoring < 18: + her "....." ("annoyed", "narrow", "angry", "R", cheeks="blush") + else: + her "............" ("soft", "base", "base", "R", cheeks="blush") + $ hermione.strip("panties") + + call ctc + + if hermione.is_worn("pubes"): + gen "Nice patch of hair you got there!" ("grin", xpos="far_left", ypos="head") + if her_whoring < 18: + her "....." ("annoyed", "narrow", "angry", "R", cheeks="blush") + else: + her "Thank you, [genie_name]" ("soft", "base", "base", "R", cheeks="blush") + + gen "Now turn around..." ("base", xpos="far_left", ypos="head") + call blkfade + + call hg_show_ass + + jump end_hg_show_ass + +### SHOW ASS ### + +label hg_show_ass: + label hg_pr_strip_rear_transition: + call hide_characters + show screen blkfade + with d5 + call play_sound("climb_desk") + pause 1 + + # + # TODO: Naked ass sprite + # + + call her_chibi_scene("behind_desk_back", trans=fade) + pause.8 + + show screen hermione_ass + with d5 + call ctc + + return + +### Tier 2 ### + +label hg_pr_strip_T2_rear: + + "Dev Note" "Not in 1.37 - Add T2 intro" + + call hg_pr_strip_rear_transition + + if her_whoring < 18: + her "...................................." ("annoyed", "narrow", "annoyed", "mid", ypos="head", flip=False) + else: + her "...................................." ("base", "closed", "base", "mid", ypos="head", flip=False) + call play_music("playful_tension") # SEX THEME. + call ctc + + + menu: + "\"Grab her ass!\"": + jump hg_pr_strip_T2_grope_rear + + "\"Keep your hands to yourself, Just look.\"": + jump hg_pr_strip_T2_admire_rear + + "\"Start jerking off.\"": + jump hg_pr_strip_T2_masturbate_rear + + + +label hg_pr_strip_T2_admire_rear: + call nar(">You take a long look at Hermione's naked ass...") + call ctc + + menu: + "-\"You have a fantastic ass girl\"-": + gen "you should start wearing shorter skirts to show it off a little..." ("base", xpos="far_left", ypos="head") + her "....................." ("base", "closed", "base", "mid", ypos="head", flip=False) + "-\"Your ass is alright...\"-": + ">You Look at her ass some more whilst making some disapproving tuts..." + her "....................." ("annoyed", "squint", "angry", "mid", ypos="head", flip=False) + $ her_mood += 3 + + call nar(">You stare at her ass for a while longer...") + call ctc + + gen "Alright, you can get dressed now [hermione_name]..." ("base", xpos="far_left", ypos="head") + + if her_whoring < 15 or her_mood > 1: + her "............." ("annoyed", "base", "base", "mid") + else: + her "............." ("base", "closed", "base", "mid") + + jump end_hg_pf_strip + + +label hg_pr_strip_T2_grope_rear: + hide screen hermione_ass + hide screen bld1 + with d3 + pause.2 + + call her_chibi_scene("grope_ass_back", trans=d5) + + her "[genie_name], what are you doing?" ("mad", "wide", "base", "stare", cheeks="blush", ypos="head", flip=False) + gen "Relax, [hermione_name]. Just stand still!" ("base", xpos="far_left", ypos="head") + + show screen blktone + show screen hermione_ass + with fade + call ctc + + gen "Oh... This is a nice ass you've got here..." ("base", xpos="far_left", ypos="head") + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "No, [genie_name], please! You mustn't do this..." ("shock", "happyCl", "worried", "mid") + gen "This won't take long, just stand still and look forward." ("base", xpos="far_left", ypos="head") + her "[genie_name], I didn't agree to this!" ("angry", "base", "angry", "mid", cheeks="blush") + with hpunch + her "You must let go of me now!!!" ("scream", "base", "angry", "mid", cheeks="blush", emote="angry") + call hide_characters + show screen blkfade + with d5 + + ">Hermione pulls away from you and covers up hastily." + + call set_her_action("none","update") + + her "I think I'd better go..." ("angry", "happyCl", "worried", "mid", cheeks="blush", ypos="head", flip=False) + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + + hide screen blktone + hide screen bld1 + hide screen blkfade + with d5 + pause.8 + + call bld + gen "Go ahead, [hermione_name]. You've earned your points.'" ("base", xpos="far_left", ypos="head") + her "Hmmmph..." ("angry", "happyCl", "worried", "mid", cheeks="blush", xpos="mid", ypos="base") + her "You'd have gotten a better look if you could just keep your hands to yourself..." ("angry", "base", "angry", "mid", cheeks="blush") + gen "That will be all [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "......" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-5}(I guess letting him grab me isn't too bad...{/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + + $ her_mood += 7 + + jump end_hg_pf_strip + + +label hg_pr_strip_T2_masturbate_rear: + call hide_characters + show screen blkfade + with d5 + + $ hermione.strip("robe", "accessory", "top", "bottom") + + call gen_chibi("jerk_off_behind_desk") + call play_music("chipper_doodle") + + ">You take your cock out and start stroking it..." + + hide screen blkfade + with d5 + + $ her_mood += 2 + + #TODO Fix usage of missing screen hermione_ass + #show screen blktone + #show screen hermione_ass + her "Are you enjoying the view [genie_name]" ("angry", "wide", "base", "stare", ypos="head", flip=False) + gen "yes I am [hermione_name]. just stand still and let me look a little longer..." ("base", xpos="far_left", ypos="head") + + call nar(">You stare at Hermione's ass with hunger...") + her "[genie_name], how much longer do I have to stand here?" ("shock", "happyCl", "worried", "mid") + call nar(">You keep stroking your hard cock...") + gen "Not too much longer now..." ("base", xpos="far_left", ypos="head") + her "[genie_name]..." ("disgust", "narrow", "base", "down", cheeks="blush") + her "You're not... touching yourself are you...?" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "ah... of course not [hermione_name]. you know I'd never do... such a thing..." ("base", xpos="far_left", ypos="head") + her "hmmm..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "well if you did do such a thing..." ("angry", "base", "angry", "mid", cheeks="blush") + her "I'd hope that you would make the right decision...'" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "and not... {size=-5}cum...{/size} on me..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + + menu: + "\"Of course not\"": + her "good." ("scream", "wide", "base", "stare", cheeks="blush") + her "I mean seeing as how I stripped naked and showed you my..." ("scream", "wide", "base", "stare", cheeks="blush") + her ".........." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "not {size=-5}cumming{/size} on me is the least you could do..." ("angry", "base", "angry", "mid", cheeks="blush") + + call nar(">Hermione starts looking at you from the corner of her eye ...") + + her "Are you ready to..." ("angry", "squint", "base", "mid", cheeks="blush") + gen "Almost there [hermione_name]!" ("angry", xpos="far_left", ypos="head") + her "Do it, [genie_name]... cum for me..." ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + + "-Start jerking your cock faster-": + call nar(">You start jerking your cock furiously!") + her "..." ("scream", "base", "angry", "mid", cheeks="blush", emote="angry") + call nar(">You jerk it even faster!") + her "you're going to do it aren't you..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "almost there slut!" ("angry", xpos="far_left", ypos="head") + her "make me stand here..." ("angry", "squint", "base", "mid", cheeks="blush") + her "while you cum all over me!" ("angry", "squint", "base", "mid", cheeks="blush") + + call hg_show_ass_cumming + + jump end_hg_pf_strip + + + + + + +### Tier 3 ### + +label hg_pr_strip_T3_admire_rear: + call nar(">You take a long look at Hermione's naked ass...") + call ctc + + menu: + "\"Nice little ass you got there.\"": + her "" ("annoyed", "closed", "base", "mid", ypos="head", flip=False) + call ctc + her "Thank you [genie_name]." ("base", "closed", "base", "mid") + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "(Maybe he should grab it next time...)" ("annoyed", "narrow", "annoyed", "mid") + + "\"Hm... I've seen better.\"": + $ her_mood += 9 + her "Tsk..." ("clench", "base", "angry", "mid", ypos="head", flip=False) + her "well in that case Are we done?" ("open", "narrow", "annoyed", "mid") + + call nar(">You stare at her ass for a while longer...") + call ctc + + gen "Alright, you can get dressed now [hermione_name]..." ("base", xpos="far_left", ypos="head") + + if her_mood > 1: + her "............." ("annoyed", "base", "base", "mid") + else: + her "............." ("base", "closed", "base", "mid") + + jump end_hg_pf_strip + + +label hg_pr_strip_T3_grope_rear: + hide screen hermione_ass + hide screen bld1 + with d3 + pause.2 + + call her_chibi_scene("grope_ass_back", trans=d5) + + her "[genie_name], what are you doing?" ("mad", "wide", "base", "stare", cheeks="blush", ypos="head", flip=False) + gen "Relax, [hermione_name]. Just stand still!" ("base", xpos="far_left", ypos="head") + + show screen blktone + show screen hermione_ass + with fade + call ctc + + if current_payout < 100: + $ her_mood += 3 + her "I didn't agree to this, [genie_name]..." ("annoyed", "narrow", "angry", "R", cheeks="blush", ypos="head", flip=False) + else: + her "I know I agreed to this [genie_name]..." ("annoyed", "narrow", "angry", "R", cheeks="blush", ypos="head", flip=False) + her "But as the headmaster of this school..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "I don't know if you should be..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Don't you like it...?" ("base", xpos="far_left", ypos="head") + her "What?" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Don't you like it how I squeeze and pull your cheeks?" ("base", xpos="far_left", ypos="head") + her "..............." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Admit it, you like it a little bit..." ("base", xpos="far_left", ypos="head") + gen "Maybe even a lot..." ("base", xpos="far_left", ypos="head") + her "{size=-5}(It feels so weird to let him grope me...){/size}" ("disgust", "narrow", "base", "down", cheeks="blush") + her "[genie_name], I am letting you do this to me to help my house!" ("shock", "happyCl", "worried", "mid") + her "It doesn't matter how good it feels..." ("shock", "happyCl", "worried", "mid") + gen "So you admit that it does feel good." ("base", xpos="far_left", ypos="head") + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "Please, let go of me now!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + call hide_characters + show screen blkfade + with d5 + + ">Hermione pulls away from you suddenly and covers up." + + call set_her_action("none","update") + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + + hide screen blktone + hide screen bld1 + hide screen blkfade + with d5 + pause.8 + + if current_payout < 100: + her "You promised not to grab me, [genie_name]..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "It was hard to resist..." ("base", xpos="far_left", ypos="head") + else: + her "Even though I agreed to let you grab me, [genie_name]..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "you didn't need to be so rough..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "sorry, It was hard to resist..." ("base", xpos="far_left", ypos="head") + her ".........." ("base", "closed", "base", "mid") + + + if current_payout < 100: + her "well if you wanted to touch you should have offered to pay me more." ("soft", "base", "base", "R", cheeks="blush", xpos="right", ypos="base") + her "speaking of which Can I get paid now please?" ("angry", "happyCl", "worried", "mid", cheeks="blush", emote="sweat") + else: + her "I'd like to get paid now please [genie_name]." ("angry", "happyCl", "worried", "mid", cheeks="blush", emote="sweat", xpos="right", ypos="base") + gen "Sure..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pf_strip + + +label hg_pr_strip_T3_masturbate_rear: + call hide_characters + show screen blkfade + with d5 + + $ hermione.strip("robe", "accessory", "top", "bottom") + + call gen_chibi("jerk_off_behind_desk") + call play_music("chipper_doodle") + + ">You take your cock out and start stroking it..." + + hide screen blkfade + with d5 + + show screen blktone + show screen hermione_ass + her "Are you enjoying the view [genie_name]" ("angry", "wide", "base", "stare", ypos="head", flip=False) + gen "I'm enjoying it immensely" ("base", xpos="far_left", ypos="head") + her "[genie_name], are you... touching yourself..." ("shock", "happyCl", "worried", "mid") + gen "Don't blame me [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "well who am I supposed to blame, [genie_name]?" ("shock", "happyCl", "worried", "mid") + call nar(">You pick up the pace...") + gen "Blame yourself [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Or rather, blame that perfect little ass of yours!" ("base", xpos="far_left", ypos="head") + her ".................." ("shock", "happyCl", "worried", "mid") + her "(his cock is so big...)" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Yes... Yes, like that..." ("base", xpos="far_left", ypos="head") + gen "Try shaking it a little..." ("base", xpos="far_left", ypos="head") + her ".............." ("disgust", "narrow", "base", "down", cheeks="blush") + her "Well, so be it..." ("open", "base", "base", "R", cheeks="blush") + her "You can keep touching yourself, [genie_name]..." ("open", "base", "base", "R", cheeks="blush") + her "But you must promise me not to..." ("soft", "base", "base", "R", cheeks="blush") + her "Not to... em..." ("open", "base", "base", "R", cheeks="blush") + her "Not to cum..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "Not on me, [genie_name]..." ("angry", "base", "angry", "mid") + gen "Are you sure..." ("base", xpos="far_left", ypos="head") + gen "I bet you'd love to have your ass covered in my cum, wouldn't you!" ("base", xpos="far_left", ypos="head") + her "......................." ("angry", "happyCl", "worried", "mid", cheeks="blush") + call nar(">You start to stroke your cock even harder...") + gen "Yes, I know you want this! Yes!" ("angry", xpos="far_left", ypos="head") + her "................" ("angry", "happyCl", "worried", "mid", cheeks="blush") + + call nar(">You are about to cum...") + + call hg_show_ass_cumming + + jump end_hg_pf_strip + + + + +### Tier 4 ### + +label hg_pr_strip_T4_admire_rear: + call nar(">You take a long look at Hermione's naked ass...") + call ctc + + menu: + "\"You have an amazing ass, [hermione_name].\"": + her "You really think so [genie_name]?" ("annoyed", "base", "base", "mid", ypos="head", flip=False) + her "I am glad you like it, [genie_name]..." ("base", "closed", "base", "mid") + "\"Your ass is ok... I suppose...\"": + her "Huh?" ("annoyed", "base", "base", "mid", ypos="head", flip=False) + her "Does this mean you don't like it, [genie_name]?" ("annoyed", "base", "base", "mid") + her "I'm sorry... I'll try to work out some more." ("disgust", "narrow", "base", "down") + + call nar(">You stare at her ass for a while longer...") + call ctc + + gen "Alright, you can get dressed now [hermione_name]..." ("base", xpos="far_left", ypos="head") + + if her_mood > 1: + her "............." ("upset", "narrow", "worried", "down") + else: + her "............." ("base", "narrow", "annoyed", "up") + + jump end_hg_pf_strip + + +label hg_pr_strip_T4_grope_rear: + hide screen hermione_ass + hide screen bld1 + with d3 + pause.2 + + call her_chibi_scene("grope_ass_back", trans=d5) + + her "[genie_name], what are you doing?" ("mad", "wide", "base", "stare", cheeks="blush", ypos="head", flip=False) + gen "Relax, [hermione_name]. Just stand still!" ("base", xpos="far_left", ypos="head") + + show screen blktone + show screen hermione_ass + with fade + call ctc + + her "But..." ("disgust", "narrow", "base", "down", cheeks="blush", ypos="head", flip=False) + her "ah...{heart}" ("shock", "happyCl", "worried", "mid") + + if current_payout < 100: + her "I didn't agree to this..." ("disgust", "narrow", "base", "down", cheeks="blush") + else: + her "please [genie_name], not so rough...{heart}" ("shock", "happyCl", "worried", "mid") + + gen "But you like it, don't you?" ("base", xpos="far_left", ypos="head") + + if her_whoring >= 21: + her "I love it [genie_name]!{heart}" ("open", "base", "base", "R", cheeks="blush") + else: + her "maybe... [genie_name]{heart}" ("shock", "happyCl", "worried", "mid") + + call nar(">You give her cheeks a couple of firm squeezes...") + + if her_whoring >= 21 or current_payout == 100: + if current_payout < 100: + her "[genie_name], you promised not to touch..." ("base", "base", "base", "R", cheeks="blush") + gen "I know, I know... but admit it, you wanted me to..." ("base", xpos="far_left", ypos="head") + her ".................{heart}{heart}{heart}" ("base", "narrow", "base", "up", cheeks="blush") + else: + her "[genie_name], please...{heart}" ("base", "base", "base", "R", cheeks="blush") + else: + her "[genie_name], you promised not to touch..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "I know, I know... but admit it, you wanted me to..." ("base", xpos="far_left", ypos="head") + her "ah{heart}... of course not [genie_name]{heart}" ("angry", "base", "angry", "mid", cheeks="blush") + + her "mmmm.......................{heart}" ("base", "narrow", "base", "up", cheeks="blush") + her "[genie_name], you need to stop now..." ("base", "narrow", "base", "up", cheeks="blush") + gen "Just a bit longer..." ("base", xpos="far_left", ypos="head") + + call nar(">You keep on groping her ass cheeks...") + + her "[genie_name]... please, stop this..." ("open", "narrow", "base", "up", cheeks="blush") + gen "Why? Because you like it too much?" ("base", xpos="far_left", ypos="head") + her "No it's not that..." ("base", "base", "base", "R", cheeks="blush") + her "I mean..." ("open", "base", "base", "R", cheeks="blush") + + call nar(">You pull the cheeks apart in opposite directions and then squish them together...") + + her "Ah...{heart} [genie_name], I really need to go... before I--" ("base", "narrow", "base", "up", cheeks="blush") + + if daytime: + her "am late for class... they're about to start..." ("open", "base", "base", "R", cheeks="blush") + else: + her "am late to bed... It is getting very... late..." ("open", "base", "base", "R", cheeks="blush") + + gen "Well, alright..." ("base", xpos="far_left", ypos="head") + call hide_characters + show screen blkfade + with d5 + + ">You let go of the girl's ass..." + ">Hermione covers up..." + + call set_her_action("none","update") + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + + hide screen blktone + hide screen bld1 + hide screen blkfade + with d5 + pause.8 + + call play_music("chipper_doodle") # HERMIONE'S THEME. + + if current_payout < 100: + if her_whoring >= 21: + her "Please don't think I forgot that you broke your promise, [genie_name]." ("base", "base", "base", "R", cheeks="blush") + her "I expect you to make it up to me later..." ("base", "base", "base", "R", cheeks="blush") + else: + her "Please don't think I forgot that you broke your promise, [genie_name]." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Right..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pf_strip + + + +label hg_pr_strip_T4_masturbate_rear: + call hide_characters + show screen blkfade + with d5 + + $ hermione.strip("robe", "accessory", "top", "bottom") + + call gen_chibi("jerk_off_behind_desk") + call play_music("chipper_doodle") + + ">You take your cock out and start stroking it..." + + hide screen blkfade + with d5 + + show screen blktone + show screen hermione_ass + her "[genie_name]?" ("base", "narrow", "base", "up", cheeks="blush", ypos="head", flip=False) + + if her_whoring >= 21: + her "ah..." ("base", "narrow", "base", "up", cheeks="blush") + call nar(">Hermione looks back and sees you stroking your cock.") + her "It's so big..." ("open", "base", "base", "R", cheeks="blush") + her "You just couldn't help yourself, could you [genie_name]?" ("base", "base", "base", "R", cheeks="blush") + her ".................." ("base", "narrow", "base", "up", cheeks="blush") + gen "Yes... Yes, like that..." ("base", xpos="far_left", ypos="head") + gen "Yes, shake that ass [hermione_name]..." ("base", xpos="far_left", ypos="head") + her ".............." ("base", "narrow", "base", "up", cheeks="blush") + her "well, so be it..." ("open", "base", "base", "R", cheeks="blush") + her "But you must promise me not to..." ("soft", "base", "base", "R", cheeks="blush") + her "Not to... ehm..." ("open", "base", "base", "R", cheeks="blush") + her "Not to cum... on me, [genie_name]..." ("base", "narrow", "base", "up", cheeks="blush") + gen "Fine, whatever..." ("base", xpos="far_left", ypos="head") + gen "Oh, you little slut. You nasty little slut!" ("base", xpos="far_left", ypos="head") + her "......................." ("base", "narrow", "base", "up", cheeks="blush") + ">You start to stroke your cock even harder..." + gen "Yes, I know you want this! Yes!" ("angry", xpos="far_left", ypos="head") + her "................" ("base", "narrow", "base", "up", cheeks="blush") + + else: + her "[genie_name], actually I never agreed to this..." ("shock", "happyCl", "worried", "mid") + gen "What are you complaining about, [hermione_name]?" ("base", xpos="far_left", ypos="head") + gen "I'm not even touching your ass..." ("base", xpos="far_left", ypos="head") + her "Yes, but you are... touching yourself, [genie_name]." ("shock", "happyCl", "worried", "mid") + gen "Just stand still, you fat-assed bitch." ("base", xpos="far_left", ypos="head") + gen "It will be over soon." ("base", xpos="far_left", ypos="head") + her ".................." ("shock", "happyCl", "worried", "mid") + gen "Yes... Yes, like that..." ("base", xpos="far_left", ypos="head") + gen "Yes, with your ass all naked..." ("base", xpos="far_left", ypos="head") + her ".............." ("disgust", "narrow", "base", "down", cheeks="blush") + her "well, so be it..." ("open", "base", "base", "R", cheeks="blush") + her "But you must promise me not to..." ("soft", "base", "base", "R", cheeks="blush") + her "Not to... ehm..." ("open", "base", "base", "R", cheeks="blush") + her "Not to discharge..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "Not on me, [genie_name]..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Fine, whatever..." ("base", xpos="far_left", ypos="head") + gen "Oh, you little slut. You nasty little slut!" ("base", xpos="far_left", ypos="head") + her "......................." ("disgust", "narrow", "base", "down", cheeks="blush") + call nar(">You start to stroke your cock even harder...") + gen "Yes, I know you want this! Yes!" ("angry", xpos="far_left", ypos="head") + her "................" ("disgust", "narrow", "base", "down", cheeks="blush") + + call hg_show_ass_cumming + + jump end_hg_pf_strip + + + + + + + + + +### GENIE STARTS CUMMING ### +label hg_show_ass_cumming: + + if her_whoring < 18: + menu: + "-Cum on the floor-": + hide screen blktone + call blkfade + + gen "*Argh*! You fat-assed slut!" ("angry", xpos="far_left", ypos="head") + her "Proff-- ??" ("scream", "wide", "base", "stare", cheeks="blush", ypos="head", flip=False) + call gen_chibi("cum_behind_desk") + call cum_block + + gen "*Argh*! YES!" ("angry", xpos="far_left", ypos="head") + + hide screen bld1 + call hide_blkfade + call ctc + + her "[genie_name]!" ("scream", "base", "angry", "mid", cheeks="blush", emote="angry") + gen "Oh, that's better..." ("angry", xpos="far_left", ypos="head") + call gen_chibi("cum_behind_desk_done") + with d3 + + her "[genie_name], you came so much..." ("angry", "squint", "base", "mid", cheeks="blush") + + hide screen hermione_ass + hide screen bld1 + hide screen blktone + with fade + call ctc + + call bld + gen "Oh, this was quite amazing..." ("base", xpos="far_left", ypos="head") + + her "" ("disgust", "narrow", "base", "down", xpos="right", ypos="base") + pause.5 + + her "the floor..." + her "It's covered..." + gen "all because of your ass, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "................" + her "I need to get dressed..." ("open", "closed", "base", "mid") + call ctc + + hide hermione_main + call blkfade + + return + + "-cum on her ass-": + + hide screen blktone + call blkfade + + gen "*Argh*! You fat-assed whore!" ("angry", xpos="far_left", ypos="head") + her "Proff-- ??" ("scream", "wide", "base", "stare", cheeks="blush", ypos="head", flip=False) + call cum_block + + gen "*Argh*! YES!" ("angry", xpos="far_left", ypos="head") + + call gen_chibi("cum_close","on_girl","base") + hide screen bld1 + call hide_blkfade + call ctc + + $ hermione_ass_cum = True + her "[genie_name], no, you promised!" ("scream", "base", "angry", "mid", cheeks="blush", emote="angry") + gen "Oh, this is great, yes..." ("angry", xpos="far_left", ypos="head") + call gen_chibi("cum_close_done","on_girl","base") + call ctc + + hide screen hermione_ass + call gen_chibi("stand","desk","base") + call her_chibi("stand","mid","base") + hide screen bld1 + hide screen blktone + with fade + call ctc + + call bld + gen "Oh, this was quite amazing..." ("base", xpos="far_left", ypos="head") + her "" ("disgust", "narrow", "base", "down", xpos="right", ypos="base") + pause.5 + + if her_whoring < 15: + her "How could you do this to me, [genie_name]?!" ("scream", "base", "angry", "mid") + her "My ass is covered in cum!" ("angry", "base", "angry", "mid") + else: + her "[genie_name], how could you...?" ("angry", "squint", "base", "mid", cheeks="blush") + her "My ass..." ("disgust", "narrow", "worried", "down") + her "It's covered..." ("disgust", "narrow", "base", "down") + + gen "Don't worry, I will give you your house points, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "You did good." ("base", xpos="far_left", ypos="head") + her "................" + call ctc + + hide hermione_main + call blkfade + + if her_whoring < 15: + $ her_mood += 20 + else: + $ her_mood += 10 + + return + + + #Third Event. + else: #18+ + + menu: + gen "*Argh*! (I'm about to cum!)" ("angry", xpos="far_left", ypos="head") + + "-Hold it in-": + gen "Oh, alright..." ("angry", xpos="far_left", ypos="head") + gen "I'd better stop now I suppose..." ("angry", xpos="far_left", ypos="head") + her "..............." ("disgust", "narrow", "base", "down", cheeks="blush", ypos="head", flip=False) + her "Ehm... I mean I know I said not to cum on me..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Huh?" ("base", xpos="far_left", ypos="head") + her "But I wouldn't mind if you ..." ("shock", "happyCl", "worried", "mid") + her "Came..." ("disgust", "narrow", "base", "down", cheeks="blush") + her "On my ass--" ("base", "base", "base", "R", cheeks="blush") + gen "*Argh*! You whore!" ("angry", xpos="far_left", ypos="head") + her "???" ("mad", "wide", "base", "stare", cheeks="blush") + call cum_block + + gen "*Argh*! YES!" ("angry", xpos="far_left", ypos="head") + + $ hermione_ass_cum = True + call gen_chibi("cum","on_girl","base") + hide screen hermione_ass + hide screen bld1 + hide screen blktone + hide screen blkfade + with d3 + call ctc + + show screen blktone + show screen hermione_ass + with fade + + her "that's it [genie_name], release your... semen on me..." ("angry", "happyCl", "worried", "mid", cheeks="blush", emote="sweat") + gen "Oh, this is great, yes..." ("angry", xpos="far_left", ypos="head") + her "ah{heart}, what's done is done I suppose..." ("base", "base", "base", "R", cheeks="blush") + + "-Just start cumming-": + gen "*Argh*! You fat-assed whore!" ("angry", xpos="far_left", ypos="head") + her "???" ("mad", "wide", "base", "stare", cheeks="blush", ypos="head", flip=False) + call cum_block + + gen "*Argh*! YES!" ("angry", xpos="far_left", ypos="head") + + $ hermione_ass_cum = True + hide screen hermione_ass + call gen_chibi("cum","on_girl","base") + hide screen bld1 + hide screen blktone + hide screen blkfade + with d3 + call ctc + + show screen blktone + show screen hermione_ass + with fade + + her "ah...{heart} It's so hot...{heart}" ("shock", "happyCl", "worried", "mid") + her "there's so much...{heart}" ("angry", "happyCl", "worried", "mid", cheeks="blush", emote="sweat") + gen "Oh, this is great, yes..." ("angry", xpos="far_left", ypos="head") + her "ah...{heart}" ("angry", "happyCl", "worried", "mid", cheeks="blush", emote="sweat") + + her "Well, what's done is done I suppose..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + + hide screen hermione_ass + call gen_chibi("stand","desk","base") + call her_chibi("stand","mid","base") + hide screen blktone + with fade + pause.5 + + call bld + gen "Oh, this was quite amazing..." ("base", xpos="far_left", ypos="head") + her "" ("disgust", "narrow", "base", "down", xpos="right", ypos="base") + pause.5 + her "My ass is covered though..." + gen "Don't worry, it still looks great, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "Maybe even better now..." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]." ("base", "closed", "base", "mid") + her "although I do need to clean myself up..." ("annoyed", "closed", "base", "mid") + call ctc + + hide hermione_main + call blkfade + + return + + + +### END SHOW ASS ### + +label end_hg_show_ass: + $ hermione_ass_cum = False + + hide hermione_main + hide screen hermione_ass + + call set_her_action("none","update") #Resets clothing. + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + + hide screen blktone + hide screen blkfade + her "" (xpos="right", ypos="base",trans=fade) + + if her_whoring < 24: + if her_whoring < 18: + her "Can I have my payment now?" ("base", "narrow", "base", "up", cheeks="blush") + if current_payout < 100: + $ her_mood +=7 + + $ gryffindor +=current_payout + gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") + stop music fadeout 10.0 + + her ".................." ("annoyed", "base", "worried", "R") + her "Thank you, [genie_name]..." + + else: + her ".................." ("base", "happyCl", "base", "mid") + + + if daytime: + her "Now if you don't mind I'd better go. my classes are about to start." + else: + her "I'd better go now then. It's getting pretty late..." + + call her_walk("door", "base") + + #First event. + if her_whoring < 15: + her "(How degrading... why do i keep agreeing to this...?)" ("disgust", "narrow", "base", "down", cheeks="blush", ypos="head", flip=False) + + #Second event. + elif her_whoring < 18: + her "........................" ("disgust", "narrow", "base", "down", cheeks="blush", ypos="head", flip=False) + + #Third event. + elif her_whoring >= 18 and aftersperm: + her "{size=-5}(That was so exhilarating...){/size}" ("base", "narrow", "base", "up", cheeks="blush", ypos="head", flip=False) + her "{size=-5}(i wonder what he'll ask me to do next...?){/size}" ("open", "narrow", "base", "up", cheeks="blush") + + else: + her "{size=-5}(That was so exhilarating...) {/size}" ("base", "narrow", "base", "up", cheeks="blush", ypos="head", flip=False) + her "{size=-5}(No, Hermione, you silly girl!) {/size}" ("angry", "base", "angry", "mid", cheeks="blush") + her "{size=-5}(it was shameful! good girls don't get turned on by stripping for their headmaster!) {/size}" ("angry", "base", "angry", "mid", cheeks="blush") + her "................................." ("base", "narrow", "base", "up", cheeks="blush") + + call her_chibi("leave") + + if her_whoring < 15: + $ her_whoring +=1 + + $ hg_pf_look_at_ass.points += 1 + + # Stats + $ hg_pf_look_at_ass.counter += 1 + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/events/favors/lets_have_sex.rpy b/game/scripts/characters/hermione/events/favors/lets_have_sex.rpy new file mode 100644 index 00000000..7e0322a4 --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/lets_have_sex.rpy @@ -0,0 +1,1632 @@ + + +### Hermione Sex ### + +label hg_pf_sex: + + if hg_pf_sex.counter < 1: + gen "{size=-4}(Should I ask her to have sex with me?){/size}" ("base", xpos="far_left", ypos="head") + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + # Start Event + $ current_payout = 65 + $ hermione_tears = None # Default value, can be set in the event to ensure tears keep showing afterwards + $ hg_pf_sex.start() + + # End Event + label end_hg_pf_sex: + + # Setup + stop music fadeout 1.0 + call hide_characters + hide screen animatedCG + show screen blkfade + with d3 + + call weather_sound + + $ hermione.set_pose(None) + $ hermione.set_cum(None) + $ hermione.equip(her_outfit_last) + + + call her_chibi("stand","desk","base", flip=False) + call gen_chibi("sit_behind_desk") + + hide screen blkfade + if her_mood != 0: + her "" ("annoyed", "base", "angry", "mid", xpos="mid", ypos="base", trans=fade, tears=hermione_tears, flip =False) + else: + her "" ("normal", "base", "base", "mid", cheeks="blush", xpos="mid", ypos="base", flip=False, trans=blackfade) + + # Points + gen "Alright then, [hermione_name]. {number=current_payout} points to the Gryffindor house." ("base", xpos="far_left", ypos="head") + $ gryffindor += current_payout + her "Thank you, [genie_name]..." ("open", "base", "base", "R", cheeks="blush") + + # Hermione leaves + her "Did you need anything else?" ("normal", "base", "base", "mid", cheeks="blush") + gen "No, that shall do for today..." ("base", xpos="far_left", ypos="head") + her "Okay..." ("soft", "base", "base", "R", cheeks="blush") + if game.daytime: + her "I'll head back to class then." ("open", "base", "base", "R", cheeks="blush") + else: + her "I'll head off to bed then..." ("open", "base", "base", "mid", cheeks="blush") + + gen "Until next time..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "base", "base", "mid", cheeks="blush") + + + call her_walk("door", "base") + + call her_chibi("leave") + + # Increase level + $ hg_sex.trigger = True + if her_whoring < 24: #Adds points till 24. + $ her_whoring += 1 + + $ achievements.unlock("nerdgasm") + + jump end_hermione_event + +### Fail Events ### + +label hg_pf_sex_fail: + call bld + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Why don't you come over here and I pound your pussy for a bit..." ("base", xpos="far_left", ypos="head") + gen "With my cock!" ("grin", xpos="far_left", ypos="head") + + $ hg_pf_sex.fail_intentional() + + jump too_much + +### Tier 6 ### + +# Event 1 (i) - First time sex +# Event 2 (i) - Sex with different dialogue +# Event 3 (i) - Regular or anal sex (Once spread on desk CG is ready we'll add new writing as a menu option) +# Event 3 (r) - Regular or anal sex, naked option (Once spread on desk CG is ready we'll add new writing as a menu option) + +label hg_pf_sex_T6_intro_E1: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("soft", "base", "base", "mid") + gen "The favour I will be buying from you today..." ("base", xpos="far_left", ypos="head") + her ".......?" ("base", "base", "base", "mid") + gen "How should I put this delicately...?" ("base", xpos="far_left", ypos="head") + her "Is it sex, [genie_name]?" ("base", "squint", "base", "mid") + gen "Well, yes. How did you...?" ("base", xpos="far_left", ypos="head") + her "Not a terribly difficult deduction all things considered..." ("base", "narrow", "base", "mid_soft") + gen "You don't mind then?" ("base", xpos="far_left", ypos="head") + her "Of course, I mind, [genie_name]!" ("upset", "closed", "base", "mid") + her "I am not a prostitute!" + gen "But you'll do it anyway??" ("base", xpos="far_left", ypos="head") + if gryffindor < hufflepuff or gryffindor < slytherin or gryffindor < ravenclaw: + her "Gryffindor is falling behind again..." ("open", "closed", "base", "mid") + else: + her "I have to make sure Gryffindor stays in the lead..." ("open", "closed", "base", "mid") + if hermione.is_any_worn("robe", "accessory"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe", "accessory") + her "What choice do I have...?" + gen "Great!" ("base", xpos="far_left", ypos="head") + gen "Get over here then!" ("base", xpos="far_left", ypos="head") + + her "Okay..." ("open", "narrow", "base", "down") + + stop music fadeout 2.0 + call her_walk("desk", "base", reduce=0.8) + pause .2 + + show screen blkfade + with d3 + pause 2 + $ her_outfit_last.save() + + $ hermione.equip(her_outfit_default) + call her_chibi_scene("grope_ass_back") + hide screen blkfade + with d5 + + her "............." ("upset", "closed", "base", "mid", flip=True, trans=dissolve) + gen "Relax, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her ".............." ("disgust", "base", "annoyed", "L") + gen "Are you ready?" ("base", xpos="far_left", ypos="head") + her "No..." ("annoyed", "narrow", "annoyed", "mid") + gen "Good girl." ("base", xpos="far_left", ypos="head") + + call hg_sex_1 + + jump end_hg_pf_sex + + +label hg_pf_sex_T6_intro_E2: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Last night I had a dream..." ("base", xpos="far_left", ypos="head") + gen "You were lying on my desk and I was fucking your tight pussy like a madman..." ("grin", xpos="far_left", ypos="head") + her "In that dream, [genie_name]..." ("upset", "closed", "base", "mid") + her "Did I happen to receive sixty-five house points afterwards?" ("angry", "base", "angry", "mid") + gen "Why yes, you did, [hermione_name]." ("grin", xpos="far_left", ypos="head") + her "..............................." ("disgust", "narrow", "base", "mid") + if hermione.is_any_worn("robe", "accessory"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe", "accessory") + + her "Okay then." ("open", "narrow", "base", "down") + + stop music fadeout 2.0 + call her_walk("desk", "base", reduce=0.8) + pause .2 + + show screen blkfade + with d3 + pause 2 + $ her_outfit_last.save() + + $ hermione.equip(her_outfit_default) + call her_chibi_scene("grope_ass_back") + hide screen blkfade + with d5 + + gen "There we go...{w=0.4} Ready?" ("base", xpos="far_left", ypos="head") + her "I...{w=0.3} think I--" ("disgust", "base", "base", "down", flip=True, trans=dissolve) + + call hg_sex_2 + + jump end_hg_pf_sex + + +label hg_pf_sex_T6_intro_E3: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name], are you keeping your pussy wet and ready for me?" ("base", xpos="far_left", ypos="head") + her "[genie_name]!" ("scream", "closed", "angry", "mid") + gen "Just say \"I do\", [hermione_name]." ("base", xpos="far_left", ypos="head") + her "..........." ("open", "base", "base", "mid") + her "I do..." ("angry", "narrow", "base", "down") + if hermione.is_any_worn("robe", "accessory"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe", "accessory") + + gen "Great, then you can probably guess what favour I'll be buying from you today..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "down") + + her "Okay then." ("open", "narrow", "base", "down") + + stop music fadeout 2.0 + call her_walk("desk", "base", reduce=0.8) + pause .2 + + show screen blkfade + with d3 + pause 2 + $ her_outfit_last.save() + + $ hermione.equip(her_outfit_default) + call her_chibi_scene("grope_ass_back") + hide screen blkfade + with d5 + + call bld + gen "*Hmm*... (Now that I look at it, I feel like fucking her ass...)" ("base", xpos="far_left", ypos="head") + + menu: + gen "(Where should I put it in?)" ("base", xpos="far_left", ypos="head") + "-Fuck her pussy-": + gen "(On second thought, this hole is still good enough for me...)" + call hg_sex_3 + + "-Poke her butthole!-": + gen "(Yes! Let's see if she's willing to take it up her ass!)" ("base", xpos="far_left", ypos="head") + + $ hg_pf_anal_sex.start() + + jump end_hg_pf_sex + + +label hg_pf_sex_T6_E3: # repeats + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name], are you keeping your pussy wet and ready for me?" ("base", xpos="far_left", ypos="head") + her "[genie_name]..." ("upset", "base", "worried", "down") + gen "Just say \"I do\", [hermione_name]." ("base", xpos="far_left", ypos="head") + her "..........." ("open", "base", "base", "mid") + her "I do..." ("soft", "narrow", "base", "R") + if hermione.is_any_worn("robe", "accessory"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe", "accessory") + + gen "Great, then you know what's coming..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "down") + + her "Okay then." ("open", "narrow", "base", "down") + + stop music fadeout 2.0 + call her_walk("desk", "base", reduce=0.8) + pause .2 + + show screen blkfade + with d3 + pause 2 + $ her_outfit_last.save() + + $ hermione.equip(her_outfit_default) + call her_chibi_scene("grope_ass_back") + hide screen blkfade + with d5 + + call bld + + menu: + gen "(How should I fuck her this time?)" ("base", xpos="far_left", ypos="head") + "-Use her pussy!-": + gen "(On second thought, this hole is still good enough for me...)" ("base", xpos="far_left", ypos="head") + call hg_sex_3 + + "-Fuck her asshole!-": + gen "(Let's see how well she takes it up the ass!)" ("angry", xpos="far_left", ypos="head") + + $ hg_pf_anal_sex.start() + + jump end_hg_pf_sex + +### First Time Sex ### + +label hg_sex_1: + + show screen blkfade + with d5 + pause.2 + + #Stop wind and thunder sounds + $ renpy.music.stop(channel="weather", fadeout=4) + + $ renpy.play('sounds/gltch.ogg') + with kissiris + + # Hermione Setup + $ hermione.set_pose("CG_lean_back") + hide hermione_main + + # Genie Setup + $ genie_doll_path = "images/CG/her_sex/" + $ genie_doll = "hold" + $ genie_doll_armfix = "images/CG/her_sex/hold_armfix.webp" + + # Camera Setup + $ camera.set_imagepath("her_sex") + $ camera.set_image("CG her_sex") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=1.0, pos=(-190, -435), initialize=True) + show screen animatedCG + + hide screen blkfade + with d5 + + + call play_music("playful_tension") # SEX THEME. + her "*Ooooohhhhhhhhhhhh*....{heart}" ("scream", "wide", "base", "stare", cheeks="blush") + $ camera.set(zoom=0.6, pos=(-555, -380), t=3.0, pause=True) + + ### + + gen "Your pussy... It's so tight." + gen "I'll start moving now." + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + + her "................" ("normal", "happyCl", "worried", "mid") + gen "You alright?" + + her "*A-ha*...{w=0.3} It's too big..." ("angry", "base", "base", "mid", tears="soft") + her "You will rip me apart, [genie_name]!" ("angry", "happyCl", "base", "mid", tears="soft_blink") + + $ genie_doll = "hold_grin" + gen "Nonsense! My cock is of a regular size." + + $ genie_doll = "hold" + gen "It's not my fault that you are so tight." + + her "......................" ("angry", "narrow", "worried", "mid", cheeks="blush") + + menu: + "\"You should be ashamed of yourself!\"": + her "I am not ashamed, [genie_name]!" ("mad", "narrow", "worried", "R", cheeks="blush") + her "I am doing this for the sake of my house!" ("open", "narrow", "worried", "down", cheeks="blush") + her "To help my--" ("angry", "narrow", "worried", "mid", cheeks="blush") + + her "*Ah-ha-a*...{heart}" ("open_tongue", "happyCl", "worried", "mid", cheeks="blush") + her "My housemates depend on--{w=0.1} *Ah-a*...{w=0.3} me...{heart}{heart}" ("open", "happyCl", "worried", "mid", cheeks="blush") + gen "Are you sure that's the only reason?" + + her "I don't know--" ("disgust", "happyCl", "worried", "mid", cheeks="blush") + + her "*Ah-a*...{heart}" ("open", "happyCl", "worried", "mid", cheeks="blush") + + her "I don't know what you mean, [genie_name]." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "It seems to me that you are enjoying this a little bit too much." + her "I'm not, [genie_name]!" ("annoyed", "narrow", "angry", "down", cheeks="blush") + gen "Really?" + + $ camera.set(zoom=0.45, pos=(-340, -380), rotate=0, t=2.0, pause=True) + her "......................" ("normal", "narrow", "angry", "down", cheeks="blush") + + $ genie_doll = "hold_grin" + gen "Then why is your pussy so wet?" + + her ".................... *A-ha*.{heart}" ("grin", "narrow", "worried", "mid", cheeks="blush") + gen "Admit it, you enjoy getting fucked by your headmaster!" + + her "I do not!" ("annoyed", "narrow", "annoyed", "mid", cheeks="blush") + call ctc + gen "Lean forward a bit will you, I want to grab that ass of yours..." + her "Fine..." ("disgust", "narrow", "annoyed", "down", cheeks="blush") + + $ hermione.set_pose("CG_lean_forward") + $ genie_doll = "caress" + $ genie_doll_armfix = "images/CG/her_sex/caress_armfix.webp" + with d3 + + her "..." ("annoyed", "narrow", "worried", "mid", cheeks="blush") + play bg_sounds "sounds/slickloopfast.ogg" fadeout 2 + pause .4 + her "" ("angry", "wide", "worried", "mid", cheeks="blush") + call ctc + + $ genie_doll = "caress_grin" + + gen "That's much better, don't you think?" + her "*Ah-ha*...{heart}" ("grin", "narrow", "worried", "mid", cheeks="blush") + + $ genie_doll = "caress" + + "\"So... What's new in your life?\"": + + her "...[genie_name]?" ("open", "base", "base", "R") + gen "Just trying to have a polite conversation." + her "*Ah-ah*...{heart} But-- *Ah*...{heart}{heart}" ("open", "narrow", "base", "R", cheeks="blush") + gen "Any news from your folks?" + + her "My parents?" ("angry", "wide", "worried", "mid", cheeks="blush", emote="sweat") + + her "[genie_name], *Ah-ah*...{w=0.3} Please...{w=0.4} I cannot talk." ("open", "narrow", "worried", "down", cheeks="blush") + gen "Why not? Enjoying this too much?" + her "I am-- *Ah*...{w=0.3} I am not...{heart}" ("disgust", "happyCl", "worried", "mid", cheeks="blush") + gen "I think you are." + her "I am only doing this for the points, [genie_name]..." ("annoyed", "happyCl", "worried", "mid", cheeks="blush") + gen "Oh, I see..." + gen "So you are like a prostitute then." + + her "What?" ("disgust", "wide", "base", "mid", cheeks="blush") + gen "Well I pay you to have sex with me. How would you call that?" + + her "..........." ("angry", "narrow", "base", "down", cheeks="blush") + + her "I am not a prostitute..." ("open", "narrow", "worried", "mid", cheeks="blush") + + her "Why are you being so mean to me, [genie_name]?" ("mad", "narrow", "base", "R", cheeks="blush", tears="soft") + gen "I think you like it when I'm mean." + + her "I do not!" ("clench", "narrow", "worried", "mid", cheeks="blush", tears="soft") + + gen "Really?" + + $ camera.set(zoom=0.45, pos=(-340, -380), rotate=0, t=2.0, pause=True) + her "......................" ("annoyed", "narrow", "worried", "mid", cheeks="blush", tears="soft") + + $ genie_doll = "hold_grin" + gen "Then why is your pussy so wet?" + + her "Not because of that!" ("angry", "narrow", "annoyed", "down", cheeks="blush") + gen "If you say so..." + call ctc + gen "Lean forward a bit will you, I want to grab that ass of yours..." + her "Fine..." ("disgust", "narrow", "angry", "down", cheeks="blush") + + $ hermione.set_pose("CG_lean_forward") + $ genie_doll = "caress" + $ genie_doll_armfix = "images/CG/her_sex/caress_armfix.webp" + with d3 + + play bg_sounds "sounds/slickloopfast.ogg" fadeout 2 + pause .4 + her "" ("angry", "wide", "worried", "mid", cheeks="blush") + call ctc + + her "*A-ah*...{heart}" ("open", "narrow", "worried", "mid", cheeks="blush") + her "I am...{w=0.3} *ah*...{heart}{w=0.3} not a prostitute..." ("open_tongue", "happyCl", "worried", "mid", cheeks="blush", tears="soft_blink") + + "\"......................................................\"": + + her "*A-ha*...{w=0.3} *ah*..." ("angry", "narrow", "worried", "mid", cheeks="blush") + gen "*Panting!*" + her "*Ah*...{w=0.3} *ha-aha*..." ("open", "narrow", "worried", "down", cheeks="blush") + gen "*Mmm*..." + her "*Ah-ah*..." ("open", "narrow", "worried", "mid", cheeks="blush") + gen "......................" + her "*Ah*...{w=0.3} *ah*..." ("open", "narrow", "base", "mid", cheeks="blush") + + her "*Ah*...{w=0.4} [genie_name]?" ("soft", "base", "base", "mid", cheeks="blush") + gen "What is it?" + + her "*Ah*...{w=0.3} Do you....{w=0.4} like it?" ("soft", "closed", "worried", "mid", cheeks="blush") + gen "Do I like drilling your super-tight pussy?" + + $ camera.set(zoom=0.45, pos=(-340, -380), rotate=0, t=2.0, pause=True) + + $ genie_doll = "hold_grin" + gen "Very much so!" + + $ genie_doll = "hold" + gen "Why do you ask [hermione_name]?" + + her "....................." ("clench", "closed", "worried", "mid", cheeks="blush") + + her "*Ah*...{w=0.3} You...{w=0.2} You just got so quiet..." ("angry", "closed", "worried", "mid", cheeks="blush") + gen "Just enjoying the moment, [hermione_name]." + gen "What about you? You alright?" + her "*Ah*...{w=0.3} {heart}yes...{heart}" ("open", "narrow", "worried", "mid", cheeks="blush") + + her "It hurts--{w=0.2} *Ah*...{w=0.4} It hurts a little though..." ("angry", "narrow", "base", "down", cheeks="blush") + + her "Your penis--{w=0.2} *Ah*...{w=0.4} is too big..." ("soft", "narrow", "worried", "mid", cheeks="blush") + + gen "*Hmm*..." + gen "You need me to slow down or something?" + + her "No, [genie_name]...{w=0.4} You don't have to--" ("open", "wide", "base", "down", cheeks="blush") + + her "Please, don't mind me...{w=0.4} Enjoy yourself." ("angry", "narrow", "worried", "down", cheeks="blush") + her "I will--{w=0.2} *Ah*...{w=0.3} Get used to it eventually..." ("soft", "narrow", "worried", "down", cheeks="blush") + + gen "As you say, [hermione_name]..." + call ctc + gen "Lean forward a bit will you, I want to grab that ass of yours..." + her "Alright..." ("soft", "narrow", "annoyed", "down", cheeks="blush") + + + $ hermione.set_pose("CG_lean_forward") + $ genie_doll = "caress" + $ genie_doll_armfix = "images/CG/her_sex/caress_armfix.webp" + with d3 + + play bg_sounds "sounds/slickloopfast.ogg" fadeout 2 + pause .4 + her "" ("angry", "wide", "worried", "mid", cheeks="blush") + call ctc + + her "*Ooooh*...{heart}" ("open", "happyCl", "annoyed", "mid", cheeks="blush") + gen "Yes, this is great!" + + + her "*Ah-ah*...{heart}" ("angry", "narrow", "worried", "down", cheeks="blush") + + if game.daytime: + gen "Going to classes after this?" + else: + gen "Going to bed after this?" + + her "Yes--{w=0.2} *ah*...{heart}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "If I'll be able to walk..." ("disgust", "narrow", "worried", "mid", cheeks="blush") + gen "*Ght*! {heart} Yes, you always say the right things, [hermione_name]!" + + her "Aah! I can't hold it!" ("angry", "base", "base", "mid", cheeks="blush") + + her "{size=+7}!!!!!!!!!!!!!!!{/size}{heart}{heart}{heart}" ("scream", "wide", "base", "stare", cheeks="blush", trans=vpunch) + + $ genie_doll = "caress" + gen "*huh*? You alright?" + + call nar(">Hermione's legs are shaking...") + gen "[hermione_name]?" + her "{heart}{heart}{heart}I--{w=0.2} I think I'm cumming, [genie_name]!{heart}{heart}{heart}" ("grin", "wide", "annoyed", "stare", cheeks="blush") + + $ genie_doll = "caress_grin" + gen "*Tch*... You nasty slut!" + + her "Aah! I can't hold it!" ("mad", "wide", "base", "mid", cheeks="blush") + gen "You need to be punished for being such a slut!" + + $ hermione.set_pose("CG_bent_over") + $ genie_doll = "grab" + $ genie_doll_armfix = "images/CG/her_sex/grab_armfix.webp" + $ camera.set(zoom=0.44, pos=(-305, -650), rotate=0, t=2.0) + #Could add some sound effect here + her "" ("angry", "wide", "base", "R", cheeks="blush") + call nar(">You push Hermione down onto the desk and start fucking her fiercely!") + + play bg_sounds "sounds/slickloopveryfast.ogg" fadeout 2 + her "[genie_name]!" ("mad", "wide", "base", "mid", cheeks="blush") + + + her "NO! STOP! PLEASE!" ("angry", "narrow", "base", "stare", cheeks="blush") + gen "Who told you that you could cum, slut? This is your punishment!" + + her "[genie_name], no, *ah-a*!{heart}" ("open_wide_tongue", "narrow", "worried", "mid", cheeks="blush") + + her "*Ah-a*...{heart}{w=0.2}I will go insane!{heart}{heart}{heart}" ("crooked_smile", "closed", "worried", "mid", cheeks="blush") + gen "{size=+7}*Grragh*!{/size}" + hide screen bld1 + with d1 + call ctc + + her "No--{heart}{w=0.2} *Ah*...{heart}" ("angry", "wide", "worried", "down", cheeks="blush") + her "I think I will...{heart}{w=0.2} pass out...{heart}" ("angry", "narrow", "worried", "up", cheeks="blush") + gen "*ARGH*! YOU WHORE!" + + + menu: + "-Cum all over her-": + + $ genie_doll = "cum_outside2" + + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_01.ogg") + gen "{size=+7}*Argh*!!!{/size}" + her "" ("mad", "narrow", "worried", "R", cheeks="blush") + + $ genie_doll = "cum_outside" + call cum_block + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_light") + else: + $ hermione.set_cum(body="light") + with d5 + + $ genie_doll = "cum_outside2" + $ renpy.sound.play("sounds/slick_02.ogg") + gen "{size=+15}*ARGH*!!!!!!!!!!!!!!!!{/size}" + + $ genie_doll = "cum_outside" + her "" ("grin", "narrow", "worried", "R", cheeks="blush") + + call cum_block + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_heavy") + else: + $ hermione.set_cum(body="heavy") + with d5 + + $ renpy.sound.play("sounds/slick_02.ogg") + her "" ("grin", "narrow", "worried", "mid", cheeks="blush") + pause .8 + $ genie_doll = "after" + call ctc + + + her "You came all over me..." ("soft", "narrow", "base", "R", cheeks="blush") + hide screen bld1 + call ctc + + gen "Well, that was rather intense..." + + her "*Mmm*..." ("soft", "narrow", "worried", "up", cheeks="blush") + + gen "You alright?" + + her "*Ah*...{w=0.4} yes...{heart}{heart}{heart}" ("grin", "narrow", "worried", "down", cheeks="blush") + her "Although my legs are still shaking...{heart}" ("grin", "narrow", "base", "mid", cheeks="blush") + hide screen bld1 + with d1 + call ctc + + if game.daytime: + her "But I think I will be able to make it to my classes..." ("soft", "narrow", "worried", "mid", cheeks="blush") + else: + her "But I think I will be able to make it to the common room..." ("grin", "narrow", "base", "mid", cheeks="blush") + + gen "Good." + gen "Did you enjoy getting fucked by your headmaster?" + her "[genie_name], I am only doing this for my house." ("angry", "narrow", "worried", "R", cheeks="blush") + gen "Seriously? Still?" + her "Could I just get paid now... please?" ("disgust", "narrow", "worried", "R", cheeks="blush") + + gen "Of course!" + + show screen blkfade + with d5 + + call nar(">You take a step back to take in the view of Hermione who is now fully coated in your cum.") + call nar(">Looking down you notice her legs still twitching slightly and a streak of liquid slowly beginning to trickle down her legs.") + call nar(">After composing herself for a moment, Hermione readies herself and then makes her way to the front of your desk.") + + return + + "-Cum inside her-": + + $ genie_doll = "cum_inside" + + with hpunch + $ renpy.sound.play("sounds/slick_01.ogg") + gen "{size=+7}*Argh*!!!{/size}" + + call cum_block + if hermione.is_worn("bottom"): + her "" ("open", "narrow", "worried", "mid", cheeks="blush") + else: + her "" ("open", "narrow", "worried", "R", cheeks="blush") + $ hermione.set_cum(pussy="light") + + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_02.ogg") + gen "{size=+15}*ARGH*!!!!!!!!!!!!!!!!{/size}" + + call cum_block + if hermione.is_worn("bottom"): + her "" ("angry", "wide", "worried", "mid", cheeks="blush") + else: + her "" ("angry", "wide", "worried", "mid", cheeks="blush") + $ hermione.set_cum(pussy="heavy") + + $ renpy.sound.play("sounds/slick_02.ogg") + her "" ("open_wide_tongue", "wide", "worried", "mid", cheeks="blush") + call ctc + + her "*Ah*...{w=0.4} *Ah*...{w=0.4} *Ah*...{heart}{heart}{heart}" ("open_tongue", "narrow", "base", "down", cheeks="blush") + hide screen bld1 + with d1 + + her "You came inside of me..." ("grin", "base", "base", "mid", cheeks="blush") + gen "I sure did." + hide screen bld1 + with d1 + call ctc + + her "That was...{w=0.8}{nw}" ("soft", "narrow", "base", "down", cheeks="blush") + her "That was...{fast} Wait..." ("soft", "base", "base", "mid", cheeks="blush") + gen "What?" + her "What if I get pregnant?" ("disgust", "wide", "worried", "mid", cheeks="blush") + gen "Nah, you will be alright..." + her "B-But... How would you know, [genie_name]?" ("angry", "narrow", "worried", "down", cheeks="blush") + gen "We {i}witchers{/i} are infertile." + her "{i}Witchers{/i}?" ("angry", "base", "worried", "down", cheeks="blush") + gen "Sure... You are a witch, that makes me {i}a witcher{/i}, right?" + gen "And everyone knows that {i}witchers{/i} are infertile..." + her "[genie_name], you make no sense..." ("disgust", "narrow", "base", "R", cheeks="blush") + her "Can I please just get paid now...?" ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "Certainly..." + + + $ renpy.sound.play("sounds/slick_02.ogg") + $ genie_doll = "after" + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_light") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_light") + else: + $ hermione.set_cum(body="light") + with kissiris + + her "{heart}*Ngh*!{heart}" ("base", "narrow", "base", "up", cheeks="blush") + + show screen blkfade + with d5 + + call nar(">You hear Hermione take a swift intake of breath as you finally let go of her ass.") + call nar(">Her legs twitches slightly and as you take a step back you get a full view of your cum slowly beginning to drip onto the floor.") + call nar(">After composing herself for a moment, Hermione readies herself and then makes her way to the front of your desk.") + + return + +### Second Time Vaginal Sex ### + +label hg_sex_2: + + show screen blkfade + with d5 + pause.2 + + #Stop wind and thunder sounds + $ renpy.music.stop(channel="weather", fadeout=4) + + $ renpy.play('sounds/gltch.ogg') + with hpunch + with kissiris + + # Hermione Setup + $ hermione.set_pose("CG_lean_back") + hide hermione_main + + # Genie Setup + $ genie_doll_path = "images/CG/her_sex/" + $ genie_doll = "hold" + $ genie_doll_armfix = "images/CG/her_sex/hold_armfix.webp" + + # Camera Setup + $ camera.set_imagepath("her_sex") + $ camera.set_image("CG her_sex") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=1.0, pos=(-190, -435), initialize=True) + show screen animatedCG + + hide screen blkfade + with d5 + + call play_music("playful_tension") # SEX THEME. + her "*Ooooohhhhhhhhhhhh*....{heart}" ("open", "wide", "base", "stare", cheeks="blush", ypos="head", flip=False) + $ camera.set(zoom=0.6, pos=(-555, -380), t=3.0, pause=True) + + ### + + her "*Ah*...{heart}" ("open", "happyCl", "base", "mid", cheeks="blush") + gen "Your pussy feels a bit looser now..." + her "It does?" ("angry", "narrow", "annoyed", "down", cheeks="blush") + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + pause .6 + her "*Ah*...{heart}" ("grin", "narrow", "worried", "mid", cheeks="blush") + + her "That's all-- *Ah*... because of you [genie_name]...{heart}" ("angry", "narrow", "worried", "mid", cheeks="blush") + + her "You are ruining my cute little pussy with your monstrous penis...{heart}" ("open_tongue", "narrow", "annoyed", "up", cheeks="blush") + + $ genie_doll = "hold_grin" + if genie_name == "Master": + gen "*Agh*...{w=0.3} You deserve it!" + elif genie_name == "Daddy": + gen "*Agh*, you naughty girl!" + else: + gen "*Agh*, you whore!" + her "*Ah*...{heart}{heart}" ("grin", "narrow", "worried", "mid", cheeks="blush") + gen "Do you like it when I fuck you like this?" + + her "Yes, [genie_name]...{heart}" ("base", "narrow", "worried", "mid", cheeks="blush") + + menu: + gen "..." + "-Be sweet but passionate-": + gen "How about this?" + + $ camera.set(zoom=0.45, pos=(-340, -380), rotate=0, t=2.0, pause=False) + $ hermione.set_pose("CG_lean_forward") + $ genie_doll = "caress" + $ genie_doll_armfix = "images/CG/her_sex/caress_armfix.webp" + with d3 + + her "Whoa!" ("grin", "narrow", "base", "R", cheeks="blush") + gen "Well?" + her "I...{w=0.4} I do--{w=0.2} *Ah*...{w=0.4} I love it, [genie_name]... {heart}" ("base", "narrow", "annoyed", "R", cheeks="blush") + gen "Good girl!" + gen "Just relax and take my cock!" + + play bg_sounds "sounds/slickloopfast.ogg" fadeout 2 + + her "Yes...{w=0.3} *Ah*...{heart}" ("soft", "narrow", "worried", "down", cheeks="blush") + gen "All the way in... all the way..." + + her "*Ah*...{heart}{heart}" ("open_tongue", "happyCl", "annoyed", "mid", cheeks="blush") + if hermione_name == "Angel": + gen "Yes, my little angel..." + else: + gen "Yes, my little princess..." + + her "W--{w=0.2} What?" ("mad", "narrow", "base", "R", cheeks="blush") + + her "No, please don't call me that now...{w=0.4} *Ah*...{heart}" ("angry", "narrow", "worried", "mid", cheeks="blush") + her "My daddy used to call me that when I was little..." ("disgust", "narrow", "worried", "down", cheeks="blush") + if genie_name == "Daddy": + gen "Well, you don't seem to mind calling me daddy!" + gen "Right now I am your daddy!" + else: + gen "Well, right now I am your daddy!" + + her "*Ah*...{w=0.3}{heart} *Ah-ah*...{heart}{heart}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + if hermione_name == "Angel": + gen "And you are my slutty angel!" + else: + gen "And you are my little princess-slut!" + + her "*Ah*...{w=0.3}{heart} *Mmm*...{heart}{heart}{heart}" ("grin", "narrow", "base", "mid", cheeks="blush") + if genie_name == "Daddy": + her "[genie_name]...{heart}{heart}{heart}" + + "-Be mean to her!-": #Can add in more nickname variations here (the derogatory ones) + gen "Yes, you slut!" + gen "I bet you love every second of this!" + call nar(">You push Hermione forward and pick up the pace.") + + play bg_sounds "sounds/slickloopfast.ogg" fadeout 2 + $ camera.set(zoom=0.45, pos=(-340, -380), rotate=0, t=2.0, pause=False) + $ hermione.set_pose("CG_lean_forward") + $ genie_doll = "caress" + $ genie_doll_armfix = "images/CG/her_sex/caress_armfix.webp" + with d3 + pause .4 + + her "" ("angry", "narrow", "worried", "mid", cheeks="blush", tears="soft") + + play bg_sounds "sounds/sexloopfast.ogg" + pause .3 + her "" ("angry", "base", "worried", "down", cheeks="blush", tears="soft") + call nar(">You begin pumping your cock deep inside Hermione's pussy, her legs hitting the edge of your desk as you smack your pelvis hard up against her ass.") + her "*Ah*...{heart} [genie_name]..." ("mad", "happyCl", "worried", "mid", cheeks="blush", tears="soft_blink") + gen "You nasty slut!" + + her "*Ah*...{w=0.3}{heart} *Ah-a*...{heart}" ("open_tongue", "narrow", "worried", "mid", cheeks="blush", tears="soft") + gen "You are a disgrace, [hermione_name]!" + her "*Ah-ah*...{heart}{heart}{heart}" ("angry", "narrow", "worried", "down", cheeks="blush", tears="soft") + gen "Your parents sent you here to study, not to screw your teachers!" + her "*Ah-a*...{w=0.4}{heart} But I am only doing this--" ("disgust", "happyCl", "worried", "mid", cheeks="blush", tears="soft_blink") + if genie_name == "Master": + gen "As if...{w=0.4} I can hear that tone in your voice every time you call me master..." + gen "You're nothing but a cock-sleeve for me to do with as I please and you know it..." + elif genie_name == "Daddy": + gen "What would your father say if he knew you're calling me daddy?" + else: + gen "I've never cared about why you are doing this, you ignorant cocksucker!" + gen "Look at you...{w=0.3} What you've become!" + gen "Cunt full of your headmaster's cock, taking it like a cheap whore!" + + her "*Ah*...{heart} No...{heart} stop saying--{heart} *Ah*...{heart}{heart}{heart}" ("soft", "narrow", "annoyed", "down", cheeks="blush", tears="soft") + call nar(">You pick up the pace some more.") + + play bg_sounds "sounds/sexloopveryfast.ogg" + her "" ("grin", "wide", "base", "stare", cheeks="blush", tears="soft") + call nar(">The room fills up with the rhythmical sound of flesh hitting flesh...") + gen "You let me molest you...{w=0.4} You suck my cock..." + her "" ("angry", "narrow", "base", "stare", cheeks="blush", tears="soft") + gen "What does that make you!?" + + her "*Ah*...{w=0.2}*Ah*...{w=0.2}*Ah*...{w=0.4}" ("angry", "narrow", "base", "mid", cheeks="blush", tears="soft") + + her "*Ah*...{w=0.2}{heart} *Ah*....{heart}{heart}{heart}" ("angry", "narrow", "worried", "down", cheeks="blush", tears="soft") + + her "*Ah*...{w=0.2}*Ah*...{w=0.2}" ("angry", "base", "base", "down", cheeks="blush", tears="soft") + her "{size=-5}A whore...{/size}" ("open", "narrow", "base", "down", cheeks="blush", tears="soft") + gen "Yes! That's exactly what you are!" + her "*Ah*...{w=0.3} *Ah*...{w=0.3} *Ah*...{heart}" ("angry", "narrow", "worried", "mid", cheeks="blush", tears="soft") + her "...." ("normal", "narrow", "annoyed", "mid", cheeks="blush", tears="soft") + her "....{fast}...." ("normal", "narrow", "annoyed", "R", cheeks="blush", tears="soft") + her "........{fast}...." ("normal", "narrow", "annoyed", "down", cheeks="blush", tears="soft") + + #Note: Once Spread on Desk CG is ready we'll add menu option here to flip her over onto the desk (new writing) or continue fucking her from behind. + + her "*Ehm*...{w=0.4} [genie_name]..." ("normal", "narrow", "worried", "down", cheeks="blush") + gen "Yes?" + her "You think you could--{w=0.3} *Ah*..." ("open", "narrow", "annoyed", "down", cheeks="blush") + + her "Could you--{w=0.2} Spank me a little?" ("angry", "narrow", "worried", "R", cheeks="blush") + gen "Gladly!" + + stop bg_sounds fadeout 2 + call nar(">You grab Hermione's bottoms firmly and slide down along with her panties in one swift movement...") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bottom", "panties") + with d3 + + her "Whoa!" ("grin", "narrow", "worried", "R", cheeks="blush") + + + play bg_sounds "sounds/sexloop.ogg" fadein 2 + $ hermione.set_pose("CG_bent_over") + $ hermione.strip("bottom", "panties") + $ genie_doll = "grab" + $ genie_doll_armfix = "images/CG/her_sex/grab_armfix.webp" + $ camera.set(zoom=0.44, pos=(-305, -650), rotate=0, t=2.0) + her "" ("soft", "base", "base", "R", cheeks="blush") + + call nar(">You push Hermione over your desk, and start fucking her fiercely as you begin spanking her ass.") + + call slap_her + + her "*Aa-a-ah*!{heart}{heart}{heart}" ("grin", "wide", "base", "up", cheeks="blush", tears="soft") + gen "You liked that one, *huh*?" + + call slap_her + + her "*Ah*..!{w=0.4}{heart}" ("crooked_smile", "narrow", "base", "down", cheeks="blush", tears="soft") + gen "And some more!" + call slap_her + + if genie_name == "Master": + her "*Ah*...{w=0.3} Punish me [genie_name]!" ("grin", "narrow", "worried", "mid", cheeks="blush", tears="soft") + elif genie_name == "Daddy": + gen "For being such a..." + call slap_her + gen "For being such a...{fast} naughty girl!" + call slap_her + her "*Ahh*...{w=0.3} I'm sorry [genie_name]..." ("grin", "narrow", "worried", "mid", cheeks="blush", tears="soft") + else: + her "*Ahh*!{w=0.3} Yes!" ("grin", "narrow", "worried", "mid", cheeks="blush", tears="soft") + call nar(">You notice that with every slap of the girl's butt, her pussy clutches your cock ever so slightly...") + call nar("You love the sensation and unleash another series of slaps on Hermione's ass-cheeks.") + call nar(">Every single one met with a gasp of excitement from the girl.") + + call slap_her + call slap_her + call slap_her + + + if genie_name == "Master": + her "*Aah*!!!{heart}{heart}{heart} Harder...{w=0.4} Harder [genie_name]!{heart}{heart}{heart}" ("grin", "happyCl", "base", "mid", cheeks="blush", tears="soft_blink") + call slap_her + call slap_her + call slap_her + her "Thank you...{heart}{heart}{heart}{w=0.5} Thank you [genie_name]...{heart}{heart}{heart}" ("grin", "narrow", "base", "up", cheeks="blush", tears="soft") + elif genie_name == "Daddy": + her "[genie_name]!{heart}{heart}{heart}" ("grin", "happyCl", "base", "mid", cheeks="blush", tears="soft_blink") + her "I'm sorry...{heart}{heart}{heart}{w=0.5} For being such a bad girl [genie_name]...{heart}{heart}{heart}" ("grin", "narrow", "base", "up", cheeks="blush", tears="soft") + else: + her "*Aah*!!!{heart}{heart}{heart} IT HURTS!{heart}{heart}{heart}" ("grin", "happyCl", "base", "mid", cheeks="blush", tears="soft_blink") + her "It hurts...{heart}{heart}{heart}{w=0.5} It hurts so good...{heart}{heart}{heart}" ("grin", "narrow", "base", "up", cheeks="blush", tears="soft") + gen "*Hmm*?" + gen "Why are your legs shaking, [hermione_name]?" + gen "Are you cumming?" + + her "Yes...{heart}{heart}{heart}{heart}{heart}{heart}" ("grin", "narrow", "base", "mid", cheeks="blush", tears="soft") + gen "Well, I think I will follow your example then." + + play bg_sounds "sounds/sexloopfast.ogg" + call nar(">You steady your pace and begin thrusting your pelvis hard against Hermione's ass, the sounds of her cheeks slapping reverberates across the office...") + + her "*Ah*!{w=0.2} No!{w=0.2} I can't...{w=0.3}{heart} I--{w=0.2}{heart} *Ah*...{heart}{heart}{heart}" ("clench", "base", "base", "ahegao", cheeks="blush", tears="soft") + gen "Shut it whore!" + + play bg_sounds "sounds/sexloopveryfast.ogg" + call nar(">Thrusting your cock deep into Hermione's pussy you feel yourself getting close to the edge.") + call ctc + + menu: + "-Cum inside of her-": + $ genie_doll = "cum_inside" + + gen "{size=+7}*Argh*, TAKE THIS!!!{/size}" + + $ renpy.sound.play("sounds/slick_01.ogg") + call cum_block + + if hermione.is_worn("bottom"): + her "!!!" ("grin", "narrow", "base", "mid", cheeks="blush") + else: + her "!!!" ("grin", "narrow", "base", "R", cheeks="blush") + $ hermione.set_cum(pussy="light") + + + gen "{size=+15}*ARGH*!!!!!!!!!!!!!!!!{/size}" + + $ renpy.sound.play("sounds/slick_01.ogg") + call cum_block + + her "*AH*! IT'S FILLING ME UP!{heart}{heart}{heart}" ("angry", "happyCl", "base", "up", cheeks="blush") + gen "I'm Not done yet, bitch!" + gen "{size=+15}*ARGH*!!!!!!!!!!!!!!!!{/size}" + + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_01.ogg") + call cum_block + + if hermione.is_worn("bottom"): + her "" ("angry", "happyCl", "base", "up", cheeks="blush") + else: + $ hermione.set_cum(pussy="heavy") + + her "*AH*! MY WOMB!" ("open_wide_tongue", "base", "base", "ahegao", cheeks="blush", tears="soft") + + gen "*Ah*...{w=0.3} *Ah*...{w=0.3} That was awesome!" + + her "*Ah*...{heart}" ("grin", "narrow", "base", "stare") + if genie_name == "Master": + gen "You alright there, fuckhole?" + else: + gen "You alright there, [hermione_name]?" + her "Yes...{w=0.3} I..." ("grin", "narrow", "base", "stare") + + her "{heart}I feel so full...{heart}" ("base", "narrow", "worried", "mid", cheeks="blush") + + her "!!!" ("clench", "base", "base", "stare", cheeks="blush") + her "You came inside of me, [genie_name]!" ("clench", "base", "base", "R", cheeks="blush") + + gen "I sure did." + + her "You shouldn't have..." ("angry", "narrow", "worried", "L", cheeks="blush") + gen "Did you not enjoy it?" + + her "...{w=0.4} maybe." ("base", "narrow", "worried", "R", cheeks="blush") + + her "I...{w=0.4} I think I came several times..." ("soft", "narrow", "worried", "R", cheeks="blush") + + her "Maybe you are right, [genie_name]...{w=0.4} Perhaps I shouldn't worry so much." ("base", "narrow", "base", "down", cheeks="blush") + her "*Ehm*...{w=0.4} Can I get my payment now?" ("soft", "narrow", "worried", "R", cheeks="blush") + gen "As you wish." + + $ renpy.sound.play("sounds/slick_02.ogg") + $ genie_doll = "after" + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_light") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_light") + else: + $ hermione.set_cum(body="light") + with kissiris + + her "{heart}*Ngh*!{heart}" ("base", "narrow", "base", "up", cheeks="blush") + + show screen blkfade + with d5 + + call nar(">You let go of Hermione's ass and take a few steps back.") + call nar(">You watch Hermione as your cum starts leaking out of her pussy and onto the floor.") + call nar(">After taking a couple of deep breaths, she pulls herself up, readies herself and makes her way to the front of your desk.") + + return + + "-Cum all over her-": + + $ genie_doll = "cum_outside2" + + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_01.ogg") + gen "{size=+7}*Argh*!!!{/size}" + her "" ("mad", "narrow", "worried", "R", cheeks="blush") + + $ genie_doll = "cum_outside" + call cum_block + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_light") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_light") + else: + $ hermione.set_cum(body="light") + with d5 + + $ renpy.sound.play("sounds/slick_02.ogg") + gen "{size=+7}That's it [hermione_name], take this!!!!!!!!!!!!!!!!{/size}" + her "" ("grin", "narrow", "worried", "R", cheeks="blush") + $ genie_doll = "cum_outside2" + pause .8 + $ genie_doll = "cum_outside" + + call cum_block + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_heavy") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_heavy") + else: + $ hermione.set_cum(body="heavy") + with d5 + + $ renpy.sound.play("sounds/slick_02.ogg") + her "" ("grin", "narrow", "worried", "mid", cheeks="blush") + $ genie_doll = "after" + call ctc + + if hermione.is_worn("bottom"): + gen "*Ah*...{w=0.4} All over your clothes..." + else: + gen "*Ah*...{w=0.4} All over your ass..." + her "*Ah-ah*...{heart}" ("grin", "base", "worried", "mid", cheeks="blush", tears="soft") + gen "You alright there, [hermione_name]?" + + her "Yes...{w=0.3} I--" ("grin", "narrow", "base", "stare") + gen "Did you enjoy it?" + + her "...{w=0.3} I think so..." ("grin", "narrow", "base", "stare") + call ctc + + her "I...{w=0.4} I think I came several times..." ("soft", "narrow", "worried", "down", cheeks="blush") + if genie_name == "Master": + gen "Naughty...{w=0.4} But I'll allow it..." + elif genie_name == "Daddy": + gen "Good girl..." + her "*Ehm*...{w=0.4} Can I get my payment now [genie_name]?" ("open", "narrow", "worried", "R", cheeks="blush") + gen "Of course!" + + show screen blkfade + with d5 + + call nar(">You take a step back to give Hermione some room, giving her ass a last glance you watch as your cum slowly begins sliding down her sides.") + call nar(">After a couple moments, Hermione finally manages to pull herself together and after readying herself she makes her way to the front of your desk.") + + return + +### Third Time and repeatable Vaginal Sex ### + +label hg_sex_3: + + + + + ### Will be added with Missionary pose ### + #gen "Let's see... How shall we do this..." + #her "[genie_name]?" + #menu: + #"-Flip her onto the desk-": + #jump hg_sex_missionary + #"-Take her from behind-": + #pass + + ##Doggystyle Vaginal scene setup## + + gen "*Hmm*... Now that I think about it..." ("base", xpos="far_left", ypos="head") + her "Fine, I'll take my clothes off I guess..." ("base", "narrow", "base", "mid", cheeks="blush", flip=True, trans=dissolve) + gen "Good girl..." ("base", xpos="far_left", ypos="head") + + show screen blkfade + with d5 + pause.2 + + #Stop wind and thunder sounds + $ renpy.music.stop(channel="weather", fadeout=4) + + $ renpy.play('sounds/gltch.ogg') + with kissiris + + # Hermione Setup + $ hermione.set_pose("CG_lean_back") + $ hermione.strip("all") + hide hermione_main + + # Genie Setup + $ genie_doll_path = "images/CG/her_sex/" + $ genie_doll = "hold" + $ genie_doll_armfix = "images/CG/her_sex/hold_armfix.webp" + + # Camera Setup + $ camera.set_imagepath("her_sex") + $ camera.set_image("CG her_sex") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=1.0, pos=(-190, -435), initialize=True) + show screen animatedCG + + hide screen blkfade + with d5 + + call play_music("playful_tension") # SEX THEME. + her "*Ah*..." ("grin", "narrow", "base", "mid", cheeks="blush") + $ camera.set(zoom=0.6, pos=(-555, -380), t=3.0, pause=True) + + gen "There it is...{w=0.3} I've been looking forward to this." + her "..." ("base", "narrow", "base", "mid", cheeks="blush") + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + pause 1 + + her "*Ah*...{w=0.3} *Ah*...{w=0.3} *Mmm*...{heart}" ("soft", "narrow", "base", "up", cheeks="blush") + gen "Enjoying yourself?" + her "N--No..." ("mad", "narrow", "base", "down", cheeks="blush") + gen "Liar..." + gen "You've been wet since before we even started..." + her "{heart}{heart}{heart}..." ("upset", "narrow", "base", "R", cheeks="blush") + gen "That's what I thought..." + her "*Ah*...{w=0.3} I can't--{w=0.2} *Ah*...{w=0.3} This is a perfectly ordinary response to--" ("angry", "closed", "worried", "R", cheeks="blush") + play bg_sounds "sounds/slickloopfast.ogg" fadeout 2 + her "*Mmm*....{heart}" ("base", "narrow", "base", "up", cheeks="blush") + menu: + "-Agree with her-": + gen "Indeed [hermione_name]... A perfectly normal response to getting ploughed by your headmaster." + her "{heart}*Mmm*...{heart}" ("soft", "narrow", "base", "mid", cheeks="blush") + gen "Because why shouldn't you enjoy it..." + gen "You've put so much work into getting where you are..." + her "*Ah-ah*...{w=0.3} *Ah*..." ("soft", "narrow", "base", "up", cheeks="blush") + gen "Why not let yourself have a bit of fun!" + her "*Ah*...{w=0.3} Yes...{w=0.3} I've deserved this..." ("soft", "narrow", "worried", "mid", cheeks="blush") + gen "That's right [hermione_name]..." + gen "This is your reward..." + her "*Mmm*...{w=0.3} {heart}My reward{heart}..." ("base", "narrow", "worried", "mid", cheeks="blush") + gen "You should be proud to have your headmaster take care of your needy little fuckhole." + call nar(">You feel Hermione's legs twitch slightly as you continue praising her.") + gen "For being such a good student and doing whatever is necessary to please him..." + her "*Ah*...{w=0.3} *Ah*...{w=0.3} *Ah*..." ("soft", "narrow", "base", "up", cheeks="blush") + gen "Earning so many points for your house in the process..." + her "{heart}{heart}*Mmm*...{heart}{heart}" ("base", "narrow", "worried", "up", cheeks="blush") + gen "You really are the top student of this school." + her "I..." ("soft", "narrow", "base", "up", cheeks="blush") + + $ camera.set(zoom=0.45, pos=(-340, -380), rotate=0, t=2.0, pause=False) + $ hermione.set_pose("CG_lean_forward") + $ hermione.strip("all") + $ genie_doll = "caress" + $ genie_doll_armfix = "images/CG/her_sex/caress_armfix.webp" + with d3 + + her "Whoa!" ("angry", "base", "base", "R", cheeks="blush") + gen "You've got to be quick on your feet if you want to stay on top [hermione_name]..." + + $ genie_doll = "caress_grin" + + gen "(On top of this dick.)" + her "*Ah*...{w=0.3} Yes, [genie_name]..." ("grin", "narrow", "base", "R", cheeks="blush") + if genie_name == "Master": + gen "Master...{w=0.3} Oh how I love it when you call me that..." + gen "That's it [hermione_name]...{w=0.3} Take good care of your master..." + elif genie_name == "Daddy": + gen "Yes, that's it...{w=0.3} I'm your daddy..." + if hermione_name == "Angel": + gen "And you're my sweet little angel..." + elif hermione_name == "Princess": + gen "And you're my sweet little princess..." + her "*Ah*...{w=0.3}[genie_name] please..." ("grin", "narrow", "base", "mid", cheeks="blush") + elif genie_name == "Fuckmachine9000": + gen "That's it, feel the power of the greatest fuck machine of all time!" + + her "" ("grin", "narrow", "annoyed", "R", cheeks="blush") + call nar(">As you continue pounding Hermione, you suddenly feel her clench her pelvic muscles, creating a even tighter grip around your cock.") + gen "There you go girl, you're learning!" + her "*Ah*...{w=0.3} {heart}*Ah-ah*...{heart}" ("grin", "narrow", "base", "R", cheeks="blush") + gen "I think it's for someone to get another reward..." + her "*Ah*...{w=0.3} Another--" ("soft", "narrow", "base", "R", cheeks="blush") + + "-Scold her-": + $ random_number = renpy.random.randint(1, 2) + + if random_number == 1: + gen "Maybe for a slut." + her "*Ah*...{w=0.3} Don't--{w=0.2} *Ah*...{w=0.3} Don't call me that [genie_name]..." ("disgust", "narrow", "worried", "mid", cheeks="blush") + gen "How else would you explain being so wet already?" + gen "Probably been touching yourself in class no doubt..." + her "*Ah*...{w=0.3} I--{w=0.2} I have not!" ("upset", "happyCl", "worried", "down", cheeks="blush") + gen "Edging and readying yourself to take your headmasters cock." + her "*Ah*...{w=0.3} That's--{w=0.3} That's not..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Are you even wearing your panties in class anymore?" + her "I--{w=0.2} *Ah*...{w=0.3} Of course I am!" ("angry", "narrow", "base", "down", cheeks="blush") + her "Don't...{w=0.3} *Ah*...{w=0.3} Don't be so crude [genie_name]..." ("disgust", "narrow", "base", "R", cheeks="blush") + gen "Then I suppose the wet spot on your chair that miss Tonks told me about was a mere fabrication..." + her "*She--{w=0.2} She knows?!" ("angry", "wide", "worried", "mid", cheeks="blush") + gen "*Heh-Heh*... Got you..." + her "..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Now lean forward, slut!" + her "" ("angry", "narrow", "base", "mid", cheeks="blush") + call ctc + + $ camera.set(zoom=0.45, pos=(-340, -380), rotate=0, t=2.0, pause=False) + $ hermione.set_pose("CG_lean_forward") + $ hermione.strip("all") + $ genie_doll = "caress" + $ genie_doll_armfix = "images/CG/her_sex/caress_armfix.webp" + her "" ("normal", "closed", "base", "R", cheeks="blush") + with d3 + + $ genie_doll = "caress_grin" + gen "That's much better, don't you think?" + + her "{heart}{heart}{heart}..." ("base", "closed", "worried", "mid", cheeks="blush") + + $ genie_doll = "caress" + gen "Miss Granger?" + her "*Mmm*..." ("base", "closed", "base", "mid", cheeks="blush") + gen "Slut?" + her "*Huh*?" ("soft", "narrow", "base", "mid", cheeks="blush") + + $ genie_doll = "caress_grin" + gen "*Tsk*...{w=0.3} Not even responding to your own name now are we?" + + her "*Ah*...{w=0.3} No, I just didn't hear--" ("grin", "narrow", "base", "L", cheeks="blush") + gen "Don't they teach you to pay attention in class?" + gen "I thought you were supposed to be a model student..." + her "*Ah*...{w=0.3} *Ah*...{w=0.3} I am a--" ("grin", "narrow", "base", "mid", cheeks="blush") + gen "Model that ass then!" + her "My--" ("angry", "narrow", "base", "R", cheeks="blush") + + elif random_number == 2: + gen "Do you even care about the points anymore?" + her "*Ah*...{w=0.3} Of course I--{w=0.2} *Ah*...{w=0.3} Why else would I be doing this..." ("angry", "happy", "base", "down", cheeks="blush") + gen "Don't you think it's a bit suspicious that as soon as Gryffindor takes the lead it's quickly taken from them?" + her "*Ah*...{w=0.3} That...{w=0.3} That's Snape's work no doubt..." ("angry", "narrow", "annoyed", "down", cheeks="blush") + her "All those Slytherin--{w=0.2} *Ah*...{w=0.3} Whores..." ("disgust", "narrow", "annoyed", "mid", cheeks="blush") + gen "You're no different to them.... You're nothing but a cum hungry slut!" + her "[genie_name]!" ("angry", "happy", "annoyed", "R", cheeks="blush") + + $ camera.set(zoom=0.45, pos=(-340, -380), rotate=0, t=2.0, pause=False) + $ hermione.set_pose("CG_lean_forward") + $ hermione.strip("all") + $ genie_doll = "caress" + $ genie_doll_armfix = "images/CG/her_sex/caress_armfix.webp" + with d3 + + her "Whoa!" ("mad", "base", "base", "mid", cheeks="blush") + her "At least give me a warning if you let go of my--" ("mad", "narrow", "base", "R", cheeks="blush") + + call slap_her + + her "{heart}*Ah*!{heart}" ("clench", "wide", "base", "up", cheeks="blush") + gen "Let go of your what, sorry?" + her "My... My A--" ("angry", "base", "base", "mid", cheeks="blush") + + call slap_her + + her "{heart}*Ah*!!{heart}" ("grin", "narrow", "base", "up", cheeks="blush") + gen "Sorry, you'll have to speak up..." + + call slap_her + call slap_her + call slap_her + + her "*Mmm*...{w=0.2} More...{heart}" ("soft", "narrow", "base", "up", cheeks="blush") + gen "What was that?" + her "Don't...{w=0.2} Please don't make me say it [genie_name]..." ("soft", "narrow", "base", "up", cheeks="blush") + gen "You're never going to amount to anything if you don't take what you want [hermione_name]..." + gen "For example..." + + $ hermione.set_pose("CG_bent_over") + $ hermione.strip("all") + $ genie_doll = "grab" + $ genie_doll_armfix = "images/CG/her_sex/grab_armfix.webp" + $ camera.set(zoom=0.44, pos=(-305, -650), rotate=0, t=2.0) + #Could add some sound effect here + call nar(">You push Hermione down onto the desk and start fucking her fiercely!") + + play bg_sounds "sounds/sexloopveryfast.ogg" fadeout 2 + her "[genie_name]!" ("grin", "narrow", "worried", "up", cheeks="blush") + gen "There you go [hermione_name]!" + gen "Isn't this what you wanted?" + her "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("soft", "narrow", "worried", "up", cheeks="blush") + gen "Say it!" + her "*Ah*...{w=0.2} *Ah*...{w=0.2} [genie_name]..." ("clench", "narrow", "base", "down", cheeks="blush") + her "Not so fast..." ("grin", "narrow", "base", "down", cheeks="blush") + her "I'm not going to be able to...{w=0.2} Hold it if you--" ("grin", "narrow", "base", "mid", cheeks="blush") + gen "You better hold it because I'm not done yet!" + her "*Ah*...{w=0.2} *Ah*...{w=0.2} Please..." ("grin", "narrow", "base", "up", cheeks="blush") + gen "Please, what?" + her "*Ah*...{w=0.2} *Ah*...{w=0.2} Please spank me again!" ("crooked_smile", "narrow", "base", "mid", cheeks="blush") + + menu: + "\"My pleasure!\"": + pass + + "\"I don't think so!\"": + her "*Ah*...{w=0.2} *Ah*... But..." ("angry", "narrow", "worried", "R", cheeks="blush") + her "I did what you--" ("angry", "narrow", "base", "down", cheeks="blush") + gen "You need to know your place [hermione_name]!" + her "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("angry", "narrow", "worried", "down", cheeks="blush") + gen "I'm the one giving out the points am I not?" + her "*Ah*...{w=0.3} Yes...{w=0.3} But..." ("soft", "narrow", "worried", "mid", cheeks="blush") + gen "I should be the one to make demands!" + her "*Ah*... Yes, [genie_name]... I'm--" ("angry", "narrow", "base", "R", cheeks="blush") + gen "Naughty girls such as yourself should be punished!" + + call slap_her + + her "{size=+5}*Aah*....{/size}{w=0.4}{nw}" ("open_tongue", "wide", "worried", "up", cheeks="blush") + her "{size=+5}*Aah*....{/size}{fast}" ("grin", "narrow", "worried", "mid", cheeks="blush") + + call slap_her + + her "{size=+5}*Ah*....{/size}{w=0.4}{nw}" ("open_tongue", "wide", "base", "up", cheeks="blush") + her "{size=+5}*Ah*....{/size}{fast}" ("soft", "narrow", "base", "mid", cheeks="blush") + + gen "You should be grateful--" + + call slap_her + + her "{size=+5}*Ah*....{/size}{w=0.4}{nw}" ("open_tongue", "wide", "base", "up", cheeks="blush") + her "{size=+5}*Ah*....{/size}{fast}" ("soft", "narrow", "base", "up", cheeks="blush") + + gen "That I--" + + call slap_her + + her "{size=+5}*Ah*....{/size}{w=0.4}{nw}" ("open_tongue", "wide", "base", "up", cheeks="blush") + her "{size=+5}*Ah*....{/size}{fast}" ("soft", "narrow", "base", "mid", cheeks="blush") + + gen "Take such good care of you!" + + call slap_her + call slap_her + call slap_her + her "" ("grin", "base", "base", "ahegao", cheeks="blush") + pause .4 + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + her "{size=+7}*Aah*!!!{heart}{heart}{heart} [genie_name]{/size}!" ("grin", "narrow", "base", "up", cheeks="blush") + + + if genie_name == "Master": + gen "Yes, I'm your Master [hermione_name]..." + gen "And you're nothing but my slave to do with as I please..." + elif genie_name == "Daddy": + gen "That's it [hermione_name]... Let your daddy take good care of you..." + + call nar(">Hermione clenches her thighs around your cock as waves of pleasure washes over her.") + + gen "Cumming again are we [hermione_name]?" + her "{heart}*Ah*...{w=0.2} *Ah-ha*...{heart}" ("grin", "narrow", "worried", "down", cheeks="blush") + + menu: + "-Punish her-": + gen "Such selfishness shall be punished!" + + call slap_her + + her "{heart}*Ah*...{w=0.2} [genie_name] I--{heart}" ("grin", "narrow", "base", "mid", cheeks="blush") + + call slap_her + + her "*Ah*..." ("grin", "happyCl", "worried", "mid", cheeks="blush") + + if genie_name == "Master": + gen "Cumming before her master..." + elif genie_name == "Daddy": + gen "Is that how you treat your daddy?" + + call slap_her + + her "*Ah*... [genie_name], I'm sorry!" ("soft", "narrow", "base", "up", cheeks="blush") + gen "You better be sorry!" + + call slap_her + + her "*Ah*... [genie_name]... I-- I can't stop it... I'm--" ("grin", "narrow", "base", "up", cheeks="blush") + gen "Don't you dare cum again!" + + call slap_her + call slap_her + call slap_her + her "" ("grin", "base", "base", "ahegao", cheeks="blush") + pause .4 + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + her "{size=+7}{heart}*Ah*!!!{heart}{heart}{/size}" ("grin", "narrow", "base", "up", cheeks="blush") + + + gen "What did I just tell you!" + "-Slow your pace down for a moment-": + + play bg_sounds "sounds/sexloopfast.ogg" fadeout 2 + + her "*Ah*...{w=0.3} *Ah*...{w=0.3} *Ah*..." ("soft", "closed", "worried", "mid", cheeks="blush") + her "[genie_name]..." ("soft", "narrow", "base", "mid", cheeks="blush") + her "Please..." ("base", "narrow", "base", "mid", cheeks="blush") + her "Please keep going...{w=0.3} I'm--" ("angry", "closed", "base", "mid", cheeks="blush") + her "*Ah*...{w=0.3} I'm so close to--" ("mad", "narrow", "base", "down", cheeks="blush") + + play bg_sounds "sounds/sexloopveryfast.ogg" fadeout 2 + call nar(">You push Hermione down even harder onto the desk as you pick up the pace once again.") + if genie_name == "Master": + call nar(">The sound of Hermione's moans fill the room as her master shows no mercy.") + else: + call nar(">The sounds of Hermione's moans fill the room as you feel yourself getting closer to the edge.") + + her "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("grin", "narrow", "worried", "mid", cheeks="blush") + her "*Ah*...{w=0.3} [genie_name]...{w=0.3} Please tell me you're close..." ("soft", "narrow", "worried", "up", cheeks="blush") + her "I don't...{w=0.3} *Ah*...{w=0.3} I don't think I can--" ("angry", "narrow", "base", "up", cheeks="blush") + her "{size=+7}I'm-- I'm cumming, [genie_name]!{/size}" ("grin", "narrow", "base", "mid", cheeks="blush") + gen "{size=+7}Me too!{/size}" + menu: + "-Fill her up!-": + $ genie_doll = "cum_inside" + + gen "{size=+7}*Argh*, Yes!!!{/size}" + call cum_block + $ renpy.sound.play("sounds/slick_01.ogg") + + if hermione.is_worn("bottom"): + her "!!!" ("grin", "narrow", "base", "up", cheeks="blush") + else: + her "!!!" ("grin", "narrow", "base", "up", cheeks="blush") + $ hermione.set_cum(pussy="light") + + her "{heart}[genie_name] I'm--{heart}" ("grin", "narrow", "base", "up", cheeks="blush") + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + her "{heart}*Ngh*{heart}" ("soft", "narrow", "base", "up", cheeks="blush") + + gen "That's it [hermione_name]!" + gen "{size=+15}Cum for me!!!!!!!!!!!!!!!!{/size}" + + her "[genie_name], you're--" ("grin", "narrow", "base", "up", cheeks="blush") + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + her "{heart}*Ah*!{heart}" ("open_tongue", "narrow", "base", "up", cheeks="blush") + gen "Take my seed, [hermione_name]!" + + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_01.ogg") + call cum_block + + if hermione.is_worn("bottom"): + her "" ("grin", "narrow", "base", "mid", cheeks="blush") + else: + $ hermione.set_cum(pussy="heavy") + + her "{heart}{heart}{heart}*Mmm*...{heart}{heart}{heart}" ("grin", "narrow", "base", "mid", cheeks="blush") + call nar(">You empty your final load into Hermione's pussy and feel it convulsing around your cock as a final wave of pleasure hits her.") + her "*Ah*...{w=0.4} *Ah*...{w=0.4} *Ah*..." ("grin", "narrow", "worried", "mid", cheeks="blush") + gen "Are you alright?" + her "*Ah*...{w=0.4} Yes, I...{w=0.4} Just give me a minute..." ("soft", "narrow", "base", "mid", cheeks="blush") + + $ renpy.sound.play("sounds/slick_02.ogg") + $ genie_doll = "after" + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_light") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_light") + else: + $ hermione.set_cum(body="light") + with kissiris + + her "{heart}*Ngh*!{heart}" ("grin", "narrow", "base", "up", cheeks="blush") + + show screen blkfade + with d5 + + call nar(">You pull your cock out of Hermione's pussy and take a step back.") + call nar(">Globules of semen begin leaking out and fall onto the floor as Hermione clenches her pelvic muscles involuntarily.") + call nar(">After some time, she finally manages to stand up.") + call nar(">Still stumbling somewhat, she readies herself and makes her way to the front of your desk.") + + return + + "-Pull out!-": + + $ genie_doll = "cum_outside2" + + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_01.ogg") + gen "{size=+7}*Argh*!!!{/size}" + her "*Ngh*!!" ("soft", "narrow", "base", "up", cheeks="blush") + with kissiris + + $ genie_doll = "cum_outside" + call cum_block + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_light") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_light") + else: + $ hermione.set_cum(body="light") + with d5 + + $ renpy.sound.play("sounds/slick_02.ogg") + gen "{size=+15}Take this, [hermione_name]!!!!!!!!!!!!!!!!{/size}" + her "" ("grin", "narrow", "worried", "R", cheeks="blush") + $ genie_doll = "cum_outside2" + pause .8 + $ genie_doll = "cum_outside" + + call cum_block + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_heavy") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_heavy") + else: + $ hermione.set_cum(body="heavy") + with d5 + + $ renpy.sound.play("sounds/slick_02.ogg") + her "" ("grin", "narrow", "worried", "mid", cheeks="blush") + $ genie_doll = "after" + if hermione.is_worn("bottom"): + gen "All over your clothes!" + else: + gen "All over your ass!" + + her "..." ("grin", "narrow", "base", "mid", cheeks="blush") + her "{heart}*Mmmmm*....{heart}" ("grin", "narrow", "base", "up", cheeks="blush") + if genie_name == "Master": + gen "Good slave..." + gen "Letting your master coat your precious body with his semen..." + elif genie_name == "Daddy": + gen "That's it [hermione_name]..." + gen "You've been such a good girl, letting your daddy release his seed on you..." + else: + gen "Good job [hermione_name]..." + gen "You've very much earned your points today." + her "Thank you, [genie_name]..." ("base", "narrow", "base", "mid", cheeks="blush") + gen "You can get up now..." + her "I...{w=0.4} I might need a moment..." ("soft", "narrow", "base", "mid", cheeks="blush") + + show screen blkfade + with d5 + + call nar(">With no other sound but Hermione's breathing returning to a normal pace you take a step back to admire your work.") + call nar(">The girls defiled body still sprawled and presenting herself in front of you, you can't help but take another glance at her glistening pussy before she stands up.") + her "I..." + call nar(">Blushing and without finishing her sentence, Hermione readies herself and makes her way to the front of your desk.") + + return diff --git a/game/scripts/characters/hermione/events/favors/lets_have_sex_anal.rpy b/game/scripts/characters/hermione/events/favors/lets_have_sex_anal.rpy new file mode 100644 index 00000000..0838ac30 --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/lets_have_sex_anal.rpy @@ -0,0 +1,1336 @@ + + +### Hermione Anal Sex### + +### Anal Sex Event 1 ### + +label hg_anal_sex_1_intro: + $ hg_anal.trigger = True + $ current_payout = 90 + $ hg_pf_sex.change_icon(a="heart_half", b="heart_red") + + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "[genie_name]...?" ("annoyed", "happy", "base", "mid", flip=True) + gen "How familiar are you with the term \"Anal Sex\"?" ("base", xpos="far_left", ypos="head") + her "What?!" ("soft", "wide", "worried", "mid") + gen "Answer the question..." ("base", xpos="far_left", ypos="head") + her "Ninety house points..." ("annoyed", "narrow", "annoyed", "mid") + gen "Seriously?" ("base", xpos="far_left", ypos="head") + her "Yes!" ("mad", "happyCl", "worried", "mid") + her "............................." ("disgust", "narrow", "base", "mid") + gen "Well alright then. Ninety house points it is." ("base", xpos="far_left", ypos="head") + + show screen blkfade + with d5 + pause.2 + + #Stop wind and thunder sounds + $ renpy.music.stop(channel="weather", fadeout=4) + + # Hermione Setup + $ hermione.set_pose("CG_lean_back") + hide hermione_main + + # Genie Setup + $ genie_doll_path = "images/CG/her_sex/" + $ genie_doll = "hold" + $ genie_doll_armfix = "images/CG/her_sex/hold_armfix.webp" + + # Camera Setup + $ camera.set_imagepath("her_sex") + $ camera.set_image("CG her_sex") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=1.0, pos=(-190, -435), initialize=True) + show screen animatedCG + + hide screen blkfade + with d5 + + her "..........." ("annoyed", "base", "worried", "R") + $ camera.set(zoom=0.45, pos=(-340, -380), rotate=0, t=2.0, pause=True) + gen "Let's see..." + call ctc + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bottom", "panties") + with d3 + + her "................." ("angry", "happyCl", "worried", "mid",emote="sweat") + gen "*Hmm*..." + + + her "!!!" ("angry", "wide", "base", "stare") + gen "Oh, come on!" + her "Ouch!" ("mad", "happyCl", "worried", "mid",tears="soft_blink") + gen "Just try to loosen up a little, would you?" + her "I'm trying!" ("angry", "base", "base", "mid",tears="soft") + gen "Okay, what if I do this...?" + + $ hermione.set_pose("CG_lean_forward") + $ hermione.strip("bottom", "panties") + $ genie_doll = "caress" + $ genie_doll_armfix = "images/CG/her_sex/caress_armfix.webp" + with d3 + + her "Ouch! What are you doing, [genie_name]?" ("mad", "happyCl", "worried", "mid",tears="soft_blink") + gen "Yeah, this won't work either..." + gen "*Hmm*..." + gen "Alright, I think I know what we should do." + + label .choices: + + menu: + gen "..." + "\"I think I'll spit on it and just force it in!\"": + call play_music("playful_tension") # SEX THEME. + her "Force it in, [genie_name]?!" ("clench", "wide", "base", "R") + $ renpy.play('sounds/spit.ogg') #Sound of spiting. + gen "*SPIT*!" + her "*Eeeeeew*!" ("disgust", "happyCl", "worried", "mid") + her "No, [genie_name], wait! Maybe if I just relax--" ("clench", "happy", "worried", "R") + gen "No need, here I come!" + with hpunch + her "AAAAH!" ("mad", "wide", "worried", "mid", tears="soft") + her "Ouch! Ouch! Ouch!" ("open", "happyCl", "worried", "mid", tears="soft_blink") + gen "Almost in!" + her "No, you're hurting me! You are hurting me!" ("scream", "wide", "base", "R", tears="soft") + gen "Almost! Almost!" + her "Ah! It hurts!" ("clench", "happyCl", "worried", "mid") + gen "Shut it, [hermione_name]! I'm doing you a favour!" + gen "Your anus is so tight it's completely unfuckable!" + her "Then stop, please!" ("mad", "happyCl", "worried", "mid",tears="soft_blink") + + $ genie_doll = "caress_grin" + gen "No! We need to loosen up your asshole a little!" + + her "But I don't want you to!" ("mad", "narrow", "worried", "mid", tears="soft") + gen "Really? How do you expect people to fuck you up your ass then?" + her "What people?" ("clench", "wide", "worried", "R", tears="soft") + + $ genie_doll = "caress" + gen "You know... people." + + gen "*Argh*, dammit... My dick is hurting too now." + her "Stop then! Stop, [genie_name]!" ("open", "happyCl", "worried", "mid", tears="soft_blink") + her "I've changed my mind! I don't need these points!" ("angry", "narrow", "base", "R", tears="soft") + gen "I think I'm almost..." + + + $ renpy.play('sounds/gltch.ogg') + with hpunch + with kissiris + her "{size=+5}*AAAAAAAAhhhhh*!!!{/size}" ("open_wide_tongue", "wide", "base", "ahegao", tears="soft") + gen "YES!!!" + + $ genie_doll = "caress_grin" + gen "Let us pump this little asshole full of semen then, shall we?" + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + + her "Yes...{w=0.4} Please, I just want this to end..." ("open", "happyCl", "worried", "mid", cheeks="blush", tears="soft_blink") + gen "*Agh*...{w=0.4} You want this to end sooner?" + gen "Help me out then!" + her "*sob*! How?" ("mad", "happy", "base", "down", cheeks="blush", tears="soft") + + $ genie_doll = "caress" + gen "You know..." + + her "Oh..." ("upset", "happy", "base", "down", cheeks="blush", tears="soft") + her "I am a whore??" ("angry", "narrow", "worried", "down", cheeks="blush", tears="soft") + + $ genie_doll = "caress_grin" + gen "Yes you are!" + + her "*Sob*! I am a whore..." ("annoyed", "narrow", "worried", "mid", cheeks="blush", tears="soft") + her "I love to suck cock..." ("open", "narrow", "worried", "mid", cheeks="blush", tears="soft") + her "And now my tiny asshole is getting ripped apart... *Sob!*" ("mad", "narrow", "base", "mid", cheeks="blush", tears="soft") + gen "*Ah*! Yes!" + + play bg_sounds "sounds/slickloopfast.ogg" + + her "No! Is it getting bigger?! I'm scared!" ("clench", "wide", "worried", "down", cheeks="blush", tears="soft") + gen "*ARGH*!" + + "\"Suck me off first. Lubricate my cock!\"": + her "Oh... Alright..." ("angry", "narrow", "base", "down") + call play_music("playful_tension") # SEX THEME. + + hide screen animatedCG + call her_chibi_scene("bj", trans=fade) + + her "*Slurp*! *Slurp*! *Slurp*!" + gen "Yes... good..." + her "*Slurp*! *Slurp*! *Slurp*!" + gen "Alright, I think that's enough. Back on the desk now." + + show screen animatedCG + with d5 + + gen "Let's see now..." + her "............." ("open", "base", "base", "mid") + gen "Yes! Almost!" + her "Ouch!" ("mad", "happyCl", "annoyed", "mid", cheeks="blush") + gen "Relax. Almost in." + + $ renpy.play('sounds/gltch.ogg') + with kissiris + her "{size=+5}*AAAAAAAAhhhhh*!!!{/size}" ("open_wide_tongue", "base", "base", "ahegao", cheeks="blush") + + $ genie_doll = "caress_grin" + + gen "YES!!!" + her "My...{w=0.4} my..." ("clench", "wide", "base", "up", cheeks="blush") + her "It hurts!" ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Let's pump this little asshole full of semen then, shall we?" + her "....................." ("angry", "happy", "base", "mid",cheeks="blush") + + $ genie_doll = "caress" + + her "....................." ("angry", "base", "base", "R",cheeks="blush",tears="soft") + gen "You alright there, [hermione_name]?" + her "*Ah*...{w=0.3} You are...{w=0.3} Stretching me out from the inside... [genie_name]." ("clench", "base", "worried", "mid", cheeks="blush",tears="soft") + her "And it still hurts..." ("angry", "happy", "base", "mid",cheeks="blush") + gen "*Hmm*..." + gen "Maybe not enough lubrication...?" + gen "Come on down, [hermione_name]. Suck my dick some more." + her "What? But..." ("clench", "base", "worried", "mid", cheeks="blush",tears="soft") + her "But it's dirty... It's been inside already." ("disgust", "happy", "base", "R", cheeks="blush", tears="soft") + gen "Yes, it's been inside, but that doesn't mean it's dirty." + gen "Come on now, [hermione_name]. Suck it some more." + her "..........." ("annoyed", "narrow", "base", "down", cheeks="blush", tears="soft") + + hide screen animatedCG + call her_chibi_scene("bj", trans=fade) + + + her "*Slurp*! *Slurp*! *Slurp*!" + gen "Yes...{w=0.4} good..." + her "*Slurp*! *Slurp*! *Slurp*!" + gen "Can you taste your ass on my dick?" + her "*Slurp*! *Slurp*! *Slurp*!" + gen "Alright, Maybe that's enough." + + show screen blkfade + with d3 + + pause .8 + $ renpy.play('sounds/gltch.ogg') + with kissiris + pause 1 + + show screen animatedCG + + hide screen blkfade + with d5 + + her "*Ah*..." ("clench", "narrow", "base", "mid", cheeks="blush", tears="soft") + gen "Better now?" + her "It still hurts..." ("open", "narrow", "worried", "down", cheeks="blush", tears="soft") + her "But I think I will be fine..." ("soft", "narrow", "worried", "mid", cheeks="blush", tears="soft") + gen "I'll take it slow for now..." + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + her "*Ah*...{w=0.4} thank you, [genie_name]." ("mad", "narrow", "base", "down", cheeks="blush", tears="soft") + gen "Oh...{w=0.3} yes...{w=0.3} this feels great..." + her "..........." ("angry", "narrow", "base", "mid", cheeks="blush", tears="soft") + gen "*Ah*...{w=0.3} So tight..." + her "................" ("angry", "narrow", "base", "down",cheeks="blush",tears="soft") + gen "Why are you being so quiet [hermione_name]?" + her "Because this is painful..." ("disgust", "narrow", "worried", "R", cheeks="blush", tears="soft") + her "And I just want you to cum sooner, [genie_name]..." ("disgust", "narrow", "base", "down", cheeks="blush", tears="soft") + gen "So you stifle your cries of pain?" + her "Yes [genie_name]. *Sob*!" ("angry", "narrow", "base", "stare",cheeks="blush",tears="soft") + gen "Don't do that." + gen "Sob, scream, and cry as much as you wish!" + her "B-but--" ("disgust", "narrow", "worried", "down", cheeks="blush", tears="soft") + gen "That will make me cum sooner." + her "Really? *Sob*!" ("open", "narrow", "base", "down", cheeks="blush", tears="soft") + her "*Sob*! It hurts! *Sob*! It hurts so much! *Sob*!" ("open", "narrow", "base", "down", cheeks="blush", tears="soft") + gen "Yes, yes..." + her "*SOB*!" ("angry", "narrow", "worried", "down", cheeks="blush", tears="soft") + gen "You poor girl..." + gen "A Big, evil man is violating your asshole!" + her "*SOB*!{w=0.3} *SOB*!" ("upset", "happyCl", "base", "mid", cheeks="blush", tears="soft_blink") + gen "*Argh*!" + her "No, I'm scared! *SOB*!" ("clench", "narrow", "worried", "R", cheeks="blush", tears="soft") + + "\"Let's use some lubrication.\"{size=-2}(Item){/size}" (style="disabled") if anal_lube_ITEM.owned <= 0: + gen "(I don't have any lube left. I'm gonna have to be more creative.)" + jump hg_anal_sex_1_intro.choices + + "\"Let's use some lubrication.\" {size=-2}(Item){/size}" if anal_lube_ITEM.owned > 0: + $ anal_lube_ITEM.owned -= 1 + + call play_music("playful_tension") # SEX THEME. + her "Lubrication, [genie_name]?!" ("angry", "wide", "base", "stare") + gen "*Shhh*... Just stay still." + + $ renpy.sound.play("sounds/slick_01.ogg") + + "*Squeeze*!" + her "" ("scream", "happyCl", "worried", "mid") + + $ hermione.set_pose("CG_lean_back") + $ hermione.strip("bottom", "panties") + $ genie_doll = "hold" + $ genie_doll_armfix = "images/CG/her_sex/hold_armfix.webp" + with d3 + + her "Ahhh! It's cold!" ("clench", "happyCl", "worried", "mid") + call nar(">You thoroughly lubricate her asshole.") + gen "That should do it." + her "No, [genie_name], wait! Maybe--" ("angry", "base", "worried", "mid") + + $ hermione.set_pose("CG_lean_forward") + $ hermione.strip("bottom", "panties") + $ genie_doll = "caress" + $ genie_doll_armfix = "images/CG/her_sex/caress_armfix.webp" + with d3 + call nar(">You push Hermione forward and align the tip of your dick with her lubricated winky star...") + + $ renpy.play('sounds/gltch.ogg') + with hpunch + with kissiris + + + her "*ARGH*!" ("open_wide_tongue", "wide", "worried", "up", cheeks="blush", tears="soft") + call nar(">Your cock fully penetrates her asshole as the lubrication does its job.") + + $ genie_doll = "caress_grin" + gen "Holy shit!" + + her "Ouch! Ouch! Ouch!" ("mad", "happyCl", "worried", "mid", cheeks="blush", tears="soft_blink") + her "No, you're hurting me! You are hurting me!" ("mad", "wide", "worried", "down", cheeks="blush", tears="soft") + + $ genie_doll = "caress" + gen "*Argh* Fuck, I can't pull out!" + + her "Ah! It hurts!" ("open", "base", "worried", "down", cheeks="blush", tears="soft") + gen "Then stop clenching on me so hard, [hermione_name]!" + gen "Your anus is so tight I can't even move!" + her "Please, do something!" ("mad", "narrow", "worried", "mid", cheeks="blush", tears="soft") + gen "I'm trying, [hermione_name]!" + her "Then try harder!" ("clench", "wide", "annoyed", "R", cheeks="blush", tears="soft") + call slap_her + her "..........!" ("angry", "happyCl", "base", "down", cheeks="blush", tears="soft") + gen "Shut the hell up, whore!" + her "" ("disgust", "narrow", "base", "down", cheeks="blush", tears="soft") + gen "It's..." + call slap_her + her "" ("disgust", "wide", "base", "mid", cheeks="blush", tears="soft") + gen "It's...{fast} your..." + call slap_her + her "" ("mad", "wide", "base", "mid", cheeks="blush", tears="soft") + gen "It's... your...{fast} bloody..." + call slap_her + her "" ("mad", "wide", "base", "up", cheeks="blush", tears="soft") + gen "It's... your... bloody... {fast}fault!" + call slap_her + pause 1.0 + call play_sound("plop") + with hpunch + pause 1.0 + her "" ("angry", "happy", "base", "down", cheeks="blush", tears="soft") + gen "Oh, it worked!" + + her "*sob*!" ("normal", "happyCl", "worried", "down", cheeks="blush", tears="soft_blink") + her "...{w=0.3} My asshole...{w=0.3} My poor asshole... *sob*" ("open", "narrow", "worried", "mid", cheeks="blush", tears="soft") + + $ genie_doll = "caress_grin" + gen "Let's try it again..." + + her "No! Stop, [genie_name]!" ("disgust", "wide", "worried", "R", cheeks="blush", tears="soft") + her "I've changed my mind! I don't need these points!" ("mad", "wide", "worried", "R", cheeks="blush", tears="soft") + gen "It will be fine this time, trust me..." + + $ renpy.play('sounds/gltch.ogg') + with kissiris + her "{size=+5}AAAAAAAAhhhhh!!!{/size}" ("scream", "wide", "base", "up", cheeks="blush", tears="soft") + gen "YES!!!" + + her "" ("mad", "base", "worried", "down", cheeks="blush") + gen "Let us pump this little asshole full of semen then, shall we?" + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + + her "*Ah*...{w=0.3} Please, I just want this to end..." ("clench", "narrow", "worried", "mid", cheeks="blush", tears="soft") + gen "*Agh*...{w=0.3} You want this to end sooner?" + gen "Help me out then!" + her "*sob* How?" ("angry", "narrow", "base", "R", cheeks="blush", tears="soft") + gen "You know..." + her "Oh..." ("angry", "base", "base", "R",cheeks="blush",tears="soft") + her "I am a whore??" ("open", "narrow", "worried", "R", cheeks="blush", tears="soft") + gen "Yes you are!" + her "*Sob*! I am a whore..." ("angry", "happy", "base", "down", cheeks="blush", tears="soft") + her "I love to suck cock..." ("upset", "narrow", "base", "down", cheeks="blush", tears="soft") + her "And now my tiny asshole is getting ripped apart... *Sob*!" ("upset", "happyCl", "worried", "stare", cheeks="blush", tears="soft_blink") + gen "Yes! Yes!" + gen "*Argh*! Yes!" + her "No! Is it getting bigger?! I'm scared!" ("clench", "happy", "worried", "R", cheeks="blush", tears="soft") + + menu: + "-Fill her up-": + + gen "Here it comes!" + her "No, wait!" ("clench", "wide", "worried", "R", cheeks="blush", tears="soft") + + play bg_sounds "sounds/slickloopfast.ogg" + call nar(">You start pumping your cock deep into Hermione's asshole with renewed vigour.") + + her "*Ah*...{w=0.3} *Ah*...{w=0.3} Please...{w=0.3} Not inside my--{w=0.2} *Ah*..." ("clench", "happyCl", "base", "up", cheeks="blush", tears="soft") + + play bg_sounds "sounds/sexloopveryfast.ogg" + call nar(">Not showing the girl any mercy you thrust your hips even harder against her, pushing your cock down to the hilt into her ass.") + gen "That's it slut, take this!" + + with hpunch + $ renpy.sound.play("sounds/slick_01.ogg") + gen "{size=+7}*Argh*!!!{/size}" + her "" ("clench", "wide", "worried", "mid", cheeks="blush", tears="soft") + + call cum_block + + $ renpy.sound.play("sounds/slick_02.ogg") + gen "{size=+15}*ARGH*!!!!!!!!!!!!!!!!{/size}" + + call cum_block + + her "*AH*! IT'S FILLING ME UP!{heart}{heart}{heart}" ("angry", "narrow", "worried", "up", cheeks="blush", tears="soft") + gen "Yes, you whore! Yes!" + her "It hurts, it hurts!" ("mad", "wide", "base", "mid", cheeks="blush", tears="soft") + gen "Shut up!" + + $ renpy.sound.play("sounds/slick_02.ogg") + call cum_block + + her "No, I am already full! Stop cumming, you bastard!" ("angry", "happyCl", "worried", "mid", cheeks="blush", tears="soft_blink") + gen "Shut the fuck up, slut! I am not done yet!" + her "No! Please! My stomach! I will explode!" ("clench", "narrow", "worried", "up", cheeks="blush", tears="soft_blink") + her "Stop! I'm going to throw up!" ("angry", "happy", "base", "R", cheeks="blush", tears="soft") + + her "Please no more, or I'll--" ("angry", "base", "worried", "mid", cheeks="blush", tears="soft") + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_02.ogg") + pause .8 + + play sound "sounds/burp.ogg" + her "{size=+7}*BURP*!!!!!!{/size}" ("full", "happyCl", "worried", "up", cheeks="blush", tears="soft") + her "......" ("full", "happy", "base", "mid", cheeks="blush", tears="soft") + her "......{fast}......" ("full", "happy", "base", "down", cheeks="blush", tears="soft") + $ renpy.play('sounds/gulp.ogg') #Sound of gulping down a liquid. + her "{size=+7}*GULP*!{/size}" ("normal", "happyCl", "worried", "mid", tears="soft_blink") + her "" ("open_tongue", "narrow", "worried", "mid", tears="soft_blink") + call ctc + gen "That felt great..." + + $ hermione.set_pose("CG_bent_over") + $ hermione.strip("bottom", "panties") + $ genie_doll = "grab" + $ genie_doll_armfix = "images/CG/her_sex/grab_armfix.webp" + $ camera.set(zoom=0.44, pos=(-305, -650), rotate=0, t=2.0) + + $ renpy.sound.play("sounds/slick_02.ogg") + $ genie_doll = "after" + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_light") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_light") + else: + $ hermione.set_cum(body="light") + with kissiris + + + her "" ("soft", "narrow", "base", "mid", cheeks="blush", tears="soft") + call nar(">Hermione collapses onto your desk and your dick finally slides out of her cum filled ass.") + + if hermione.is_worn("bottom"): + call nar(">As she lies there for a moment you watch as her asshole convulses and your semen slowly beginning to leak out.") + else: + call nar(">As she lies there for a moment you watch as her asshole convulses and your semen slowly beginning to leak out onto the floor.") + $ hermione.set_cum(pussy="light") + + her "*SOB*! I HATE YOU..." ("angry", "happy", "base", "R", cheeks="blush", tears="soft") + her "{size=+5}I HATE YOU AND YOUR NASTY OLD COCK!{/size}" ("clench", "base", "annoyed", "down", cheeks="blush", tears="soft") + gen "*Agh*...{w=0.3} Shut it, [hermione_name]!" + + if hermione.is_worn("bottom"): + call nar(">Hermione clenches her ass again and you watch as another glob of cum leaks out.") + else: + $ hermione.set_cum(pussy="heavy") + + her "*sob*!{w=0.4} *Sob*!..." ("upset", "happyCl", "worried", "mid", cheeks="blush", tears="soft_blink") + gen "Whew!... I think that was the last of it." + gen "You alright?" + her "Yes...{w=0.4} *Sob*!" ("angry", "narrow", "base", "down", cheeks="blush", tears="soft") + her "My butt hurts, but I am alright, [genie_name]..." ("soft", "narrow", "base", "R", cheeks="blush", tears="soft") + gen "Well, you took my dick stoically, all things considered..." + her "Thank you [genie_name]..." ("base", "narrow", "worried", "down", cheeks="blush", tears="soft") + call ctc + + her "I apologise for saying that I hate you, [genie_name]..." ("open", "narrow", "base", "R", cheeks="blush", tears="soft") + her "Your cock is not nasty..." ("angry", "narrow", "worried", "down", cheeks="blush") + her "I suppose when you call me a \"whore\" you don't actually mean it..." ("open", "narrow", "worried", "down", cheeks="blush") + gen "Right..." + her "I don't know what's gotten into me..." ("grin", "narrow", "worried", "mid", cheeks="blush") + + gen "My dick!" + + her "*Mmm*..." ("base", "narrow", "base", "up", cheeks="blush") + gen "Oh yes...{w=0.3} Your asshole...{w=0.3} Is it still hurting?" + her "A little..." ("base", "narrow", "worried", "down", cheeks="blush") + her "But I also feel full and warm inside..." ("grin", "narrow", "base", "down", cheeks="blush") + gen "So you're planning on keeping it in? My cum I mean." + her "If I can..." ("base", "narrow", "base", "down", cheeks="blush") + + if game.daytime: + her "I hope it won't start leaking too much during my classes..." ("soft", "narrow", "base", "L", cheeks="blush") + else: + her "I hope it won't start leaking too much before I get to my dorms..." ("soft", "narrow", "base", "L", cheeks="blush") + + gen "Well, good luck on your journey." + her "Can I get paid now please?" ("base", "narrow", "base", "R", cheeks="blush") + + gen "Of course..." + + show screen blkfade + with d5 + + call nar(">You step back and give Hermione's ass a last glance, her asshole still convulses slightly as your cum continues to dribble onto the ground.") + call nar(">After standing up she touches it as if to check that it's still intact.") + call nar(">With a sigh of relief, she readies herself and then makes her way to the front of your desk.") + + "-Push her down and coat her ass-": + + gen "(Let's coat this bitch!!)" + + $ hermione.set_pose("CG_bent_over") + $ hermione.strip("bottom", "panties") + $ genie_doll = "grab" + $ genie_doll_armfix = "images/CG/her_sex/grab_armfix.webp" + $ camera.set(zoom=0.44, pos=(-305, -650), rotate=0, t=2.0) + #Could add some sound effect here + her "" ("mad", "happy", "worried", "stare", cheeks="blush", tears="soft") + + play bg_sounds "sounds/slickloopfast.ogg" + call nar(">You push Hermione down onto the desk and fuck her with renewed vigour.") + + her "*Ah*...{w=0.3} *Ah*...{w=0.3} Please--" ("mad", "base", "worried", "up", cheeks="blush", tears="soft") + + play bg_sounds "sounds/sexloopveryfast.ogg" + call nar(">Not showing the girl any mercy you thrust your hips hard against her, pushing your cock down to the hilt into her ass.") + + her "*Ah*...{w=0.3} *Ah*...{w=0.3} [genie_name]..." ("angry", "narrow", "base", "R", cheeks="blush", tears="soft") + her "You're...{w=0.3} *Ah*...{w=0.3} You're tearing me apart..." ("angry", "narrow", "base", "stare", cheeks="blush", tears="soft_blink") + gen "You aint seen nothing yet [hermione_name]!" + + play bg_sounds "sounds/sexloopfast.ogg" + call nar(">You slow down your thrusting until finally...") + her "What are you--" ("mad", "narrow", "base", "R", cheeks="blush", tears="soft") + stop bg_sounds + $ renpy.sound.play("sounds/slick_02.ogg") + pause .3 + $ renpy.sound.play("sounds/pop01.ogg") + $ genie_doll = "cum_outside2" + pause .4 + her "{heart}Ng--{w=0.2} *Ah*...{heart}" ("open_tongue", "narrow", "worried", "up", cheeks="blush", tears="soft") + + gen "{size=+5}That's it whore, take this!{/size}" + + + gen "{size=+7}*Argh*!!!{/size}" + + $ genie_doll = "cum_outside" + call cum_block + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_light") + else: + $ hermione.set_cum(body="light") + with d5 + + $ renpy.sound.play("sounds/slick_02.ogg") + her "*Aaah*...{heart}{heart}{heart}" ("open_tongue", "narrow", "worried", "down", cheeks="blush", tears="soft") + $ genie_doll = "cum_outside2" + gen "{size=+5}Yes!!! All over your ass!{/size}" + $ genie_doll = "cum_outside" + + call cum_block + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_heavy") + else: + $ hermione.set_cum(body="heavy") + with d5 + + $ renpy.sound.play("sounds/slick_02.ogg") + her "*Ah*...{w=0.4} It's so hot!" ("base", "narrow", "worried", "mid", cheeks="blush", tears="soft") + $ genie_doll = "after" + call ctc + + + gen "Well, I'm done...{w=0.4} You can get off my desk now." + her "Yes, [genie_name]...{w=0.3} Just...{w=0.3} Give me a minute..." ("soft", "narrow", "base", "down", cheeks="blush", tears="soft") + gen "You feeling alright?" + her "It still hurts a little, but..." ("soft", "narrow", "base", "R", cheeks="blush", tears="soft") + gen "But what?" + her "But in a good way... [genie_name]." ("soft", "narrow", "base", "down", cheeks="blush", tears="soft") + gen "In a good way, *huh*?" + gen "*Heh*...{w=0.3} You cute, little minx." + her "Can I get paid now, [genie_name]?" ("angry", "narrow", "base", "R", cheeks="blush", tears="soft") + + gen "Certainly!" + + show screen blkfade + with d5 + + call nar(">You step back and watch as Hermione tries her best to steady herself.") + call nar(">After finally standing up, she touches her ass as if to check that it's still intact.") + call nar(">With a sigh of relief, she readies herself and then makes her way to the front of your desk.") + + jump end_hg_pf_sex + +### Anal Sex Event 2 ### + +label hg_anal_sex_2_intro: + $ hg_anal.trigger = True + $ current_payout = 90 + $ hg_pf_sex.change_icon(a="heart_half", b="heart_red") + + gen "How about another assfuck, [hermione_name]?" + her "Of course, [genie_name]." ("base", "narrow", "base", "up", flip=True) + gen "*Hngh*! You little minx!" + + show screen blkfade + with d5 + pause.2 + + #Stop wind and thunder sounds + $ renpy.music.stop(channel="weather", fadeout=4) + + her "........" ("annoyed", "base", "worried", "R") + gen "*Hmm*..." + her "..........." ("open", "base", "base", "mid") + + $ renpy.play('sounds/gltch.ogg') + with kissiris + + # Hermione Setup + $ hermione.set_pose("CG_lean_back") + $ hermione.strip("bottom", "panties") + hide hermione_main + + # Genie Setup + $ genie_doll_path = "images/CG/her_sex/" + $ genie_doll = "hold" + $ genie_doll_armfix = "images/CG/her_sex/hold_armfix.webp" + + # Camera Setup + $ camera.set_imagepath("her_sex") + $ camera.set_image("CG her_sex") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=1.0, pos=(-190, -435), initialize=True) + show screen animatedCG + + hide screen blkfade + with d5 + + call play_music("playful_tension") # SEX THEME. + her "*Ooooohhhhhhhhhhhh*....{heart}" ("grin", "wide", "base", "up") + $ camera.set(zoom=0.6, pos=(-555, -380), t=3.0, pause=True) + + gen "Oh, ye-es!" + + her "*Ah*..." ("grin", "narrow", "worried", "mid") + gen "It seems like your butthole has become a bit more welcoming, [hermione_name]." + gen "I'm going to start moving now..." + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + call ctc + + her "*Ah*...{w=0.3} It...{w=0.3} It still hurts a little." ("soft", "closed", "base", "mid") + gen "Yet you're doing it anyway..." + her "*Ah*...{w=0.3} *Ah*...{w=0.3} Yes..." ("open", "narrow", "base", "down") + her "I suppose I am..." ("base", "narrow", "base", "down") + gen "Although that is what I'd expect from such a--" + if hermione_name == "Whore": + her "I am a whore after all... I'm here to do whatever it is you need..." ("base", "narrow", "base", "mid") + $ genie_doll = "hold_grin" + gen "That you are..." + else: + her "Please [genie_name]...{w=0.3} Call me a \"whore\"..." ("grin", "narrow", "base", "down", cheeks="blush") + $ genie_doll = "hold_grin" + gen "*He-Heh*...{w=0.3} You don't have to ask me twice!" + gen "Now bend over so I can fuck your ass more easily, whore!" + + $ camera.set(zoom=0.45, pos=(-340, -380), rotate=0, t=2.0, pause=False) + $ hermione.set_pose("CG_lean_forward") + $ hermione.strip("bottom", "panties") + $ genie_doll = "caress" + $ genie_doll_armfix = "images/CG/her_sex/caress_armfix.webp" + with d3 + + play bg_sounds "sounds/sexloopfast.ogg" fadein 2 + + her "*Ah*...{w=0.3} *Ah*...{w=0.3} *Ah*..." ("open", "closed", "base", "mid") + her "*Mmm*...{w=0.3} So aggressive..." ("base", "narrow", "base", "R") + + $ genie_doll = "caress_grin" + if genie_name == "Master": + gen "That's what you deserve for being such a slut!" + elif genie_name == "Daddy": + gen "That's for you get for being such a naughty girl!" + + her "..." ("base", "narrow", "base", "mid", cheeks="blush") + her "...{fast}..." ("normal", "narrow", "base", "R", cheeks="blush") + her "[genie_name]?" ("open", "narrow", "worried", "R", cheeks="blush") + + $ genie_doll = "caress" + gen "Yes, whore?" + + her "*Ehm*..." ("angry", "narrow", "base", "mid", cheeks="blush") + her "Would you marry me, [genie_name]?" ("angry", "happy", "base", "down", cheeks="blush") + with hpunch + + stop bg_sounds fadeout 2 + + gen "{size=+9}WHAT?!{/size}" + gen "Don't tell me you're pregnant, [hermione_name]!" + gen "We witchers are infertile!" + her "Right... You expect me to believe that?" ("disgust", "narrow", "worried", "R", cheeks="blush") + gen "*Err*..." + her "I couldn't get pregnant the way we are doing it anyway, [genie_name]..." ("soft", "narrow", "worried", "down", cheeks="blush") + + gen "Good point..." + play bg_sounds "sounds/sexloopfast.ogg" + + her "*Ah*..." ("angry", "base", "base", "mid", cheeks="blush") + gen "What is this talk of marriage then?" + her "You misunderstood me [genie_name]." ("clench", "narrow", "base", "R", cheeks="blush") + her "I meant to say, would you marry a girl {size=+5}like{/size} me?" ("soft", "narrow", "base", "mid", cheeks="blush") + her "I would never propose to a man with his cock in my ass, [genie_name]..." ("base", "narrow", "worried", "L", cheeks="blush", emote="sweat") + gen "Good. Because I don't think any man would be able to say {i}no{/i}." + + #STRIP top and bra (all) + call nar(">You grab Hermione's top and quickly pull it and her bra over her head, revealing her tits...") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("all") + with d3 + + her "" ("grin", "narrow", "worried", "R", cheeks="blush") + + her "*Ah*{heart}..." ("base", "narrow", "base", "down", cheeks="blush") + her "What I meant--{w=0.2} *Ah*{heart}...{w=0.3} to say was--{w=0.2} *Ah*{heart}...{w=0.3} Do you think someone would ever--{w=0.2} *Ah*{heart}..." ("soft", "narrow", "base", "R", cheeks="blush") + gen "*Huh*?" + her "I mean, with all the things that have been happening lately--{w=0.2} *Ah*{heart}..." ("soft", "narrow", "worried", "down", cheeks="blush") + her "I can't help but feel unclean...{w=0.3} Damaged even..." ("normal", "closed", "worried", "down", cheeks="blush") + her "And in a no way innocent." ("annoyed", "happy", "worried", "down", cheeks="blush") + her "Who would want a wife like that?" ("disgust", "narrow", "base", "down", cheeks="blush") + + menu: + gen "..." + "\"I would marry you in a heartbeat!\"": + her "What?" ("soft", "base", "base", "R", cheeks="blush") + gen "Well, hypothetically speaking of course..." + her "...{w=0.3} of course.{heart}" ("base", "narrow", "base", "R", cheeks="blush") + her ".............." ("base", "narrow", "base", "down", cheeks="blush") + her "But why do you say that, [genie_name]?" ("normal", "happy", "base", "R", cheeks="blush") + gen "*Huh*?" + gen "What do you mean {i}why{/i}, [hermione_name]?" + gen "You are young and attractive..." + gen "Tight asshole, full tits and a wet little pussy..." + her "...{heart}" ("soft", "narrow", "worried", "R", cheeks="blush") + gen "You will make some lucky guy a very happy man one day, whore." + if hermione_name == "Whore": + her "*Mmm*...{w=0.3} I love it when you call me that..." ("grin", "narrow", "annoyed", "up", cheeks="blush") + else: + gen "*Uhm*... I mean, [hermione_name]." + her "No, {i}whore{/i} is good. Call me that, [genie_name]." ("grin", "narrow", "annoyed", "up", cheeks="blush") + gen "See?{w=0.3} You are a great catch, I'm telling you, whore." + her "*Ah*...{heart}{w=0.3} Thank you, [genie_name]." ("grin", "narrow", "base", "down", cheeks="blush", tears="soft") + gen "*Huh*?" + gen "Are you crying?" + + "\"Marriage is out of the picture for you.\"": + her "That's what I thought..." ("angry", "narrow", "base", "down",cheeks="blush",tears="soft") + gen "Oh...{w=0.3} I just love that little asshole of yours!" + her "....................." ("angry", "narrow", "base", "stare",cheeks="blush",tears="soft") + her "Yes...{w=0.3} After all the things I had to do for my house..." + her "...{w=0.3} No one will ever want me." ("angry", "happy", "base", "mid",cheeks="blush",tears="soft") + gen "Oh, they will want you alright!" + her "What?{w=0.3} But you said..." ("open", "wide", "worried", "stare",cheeks="blush",tears="soft") + gen "Marriage, [hermione_name]...{w=0.3} Marriage is impossible for you." + gen "But as a man-pleaser you are a great catch!" + her "Really?" ("open", "wide", "worried", "stare",cheeks="blush",tears="soft") + gen "Are you kidding me?!" + gen "Young, hot, and slutty. You could have any man you want!" + her "I think you may be right, [genie_name]." ("base", "narrow", "worried", "mid",cheeks="blush",tears="soft") + gen "I know I am right, whore." + gen "Now wiggle that little ass of yours a little." + her "Like this?" ("angry", "base", "worried", "mid", cheeks="blush",tears="soft") + + play bg_sounds "sounds/sexloopveryfast.ogg" + $ genie_doll = "caress_grin" + gen "Yes, that's a good whore." + + her "I am a whore, aren't I?" ("angry", "narrow", "base", "stare", cheeks="blush") + gen "You just sold me your asshole for ninety house points...{w=0.3} What would you call that?" + her "Yes, yes...{heart}{w=0.3} I am a whore...{heart}" ("angry", "base", "worried", "mid", cheeks="blush",tears="soft") + gen "Are you crying?" + + her "Amongst other things, [genie_name]...{heart}{heart}{heart}" ("angry", "narrow", "base", "stare", cheeks="blush",tears="soft") + gen "Amongst other things?" + her "I'm cumming [genie_name]...{heart}{heart}{heart}" ("smile", "narrow", "annoyed", "up", cheeks="blush", tears="soft") + gen "*Agh*! My cock!" + gen "Relax your muscles a little, would you?" + her "BUT I'M CUMMING!{heart}{heart}{heart}" ("open", "happyCl", "worried", "mid", cheeks="blush", tears="soft_blink") + gen "Fine! Have it your way whore!" + + $ hermione.set_pose("CG_bent_over") + $ hermione.strip("all") + $ genie_doll = "grab" + $ genie_doll_armfix = "images/CG/her_sex/grab_armfix.webp" + $ camera.set(zoom=0.44, pos=(-305, -650), rotate=0, t=2.0) + her "" ("angry", "wide", "base", "R", cheeks="blush",tears="soft") + + play bg_sounds "sounds/sexloopveryfast.ogg" + call nar(">You push Hermione down onto the desk... Pumping your cock deep inside her ass, your pelvis smacks loudly against her cheeks.") + + her "*Ah-hah*...{w=0.3} So deep..." ("mad", "narrow", "base", "down", cheeks="blush", tears="soft") + her "{size=+7}I'm--{w=0.3} I'm cumming [genie_name]!!!{/size}" ("angry", "narrow", "worried", "stare", cheeks="blush", tears="soft") + gen "{size=+7}Me too!{/size}" + + menu: + gen "!!!" + "-Fill her up-": + $ genie_doll = "cum_inside" + + gen "{size=+7}TAKE THIS, WHORE!!!{/size}" + + $ renpy.sound.play("sounds/slick_01.ogg") + call cum_block + + if hermione.is_worn("bottom"): + her "!!!" ("grin", "narrow", "base", "mid", cheeks="blush",tears="soft") + else: + her "!!!" ("grin", "narrow", "base", "stare", cheeks="blush",tears="soft") + $ hermione.set_cum(pussy="light") + + gen "{size=+15}Yes! *Argh*!{/size}" + + $ renpy.sound.play("sounds/slick_01.ogg") + call cum_block + + her "*Ah*!{heart} It's filling me up!{heart} I can feel it!{heart}" ("angry", "narrow", "annoyed", "up", cheeks="blush", tears="soft") + + gen "{size=+15}Shut up, whore!{/size}" + her "{size=+7}*Ah*! I AM A WHORE!!!!{heart}{heart}{heart}{/size}" ("crooked_smile", "narrow", "base", "mid", cheeks="blush", tears="soft") + gen "{size=+15}*Argh*!{/size}" + + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_01.ogg") + call cum_block + + if hermione.is_worn("bottom"): + her "" ("angry", "happyCl", "base", "up", cheeks="blush") + else: + $ hermione.set_cum(pussy="heavy") + + her "*Ah*...{heart}{w=0.3} your cum, [genie_name]...{heart}" ("base", "narrow", "worried", "R", cheeks="blush", tears="soft") + gen "*Ah*...{w=0.3} Yes..." + her "*Ah*...{w=0.3} *Ah*...{w=0.3} *Ah*...{w=0.3}{heart}" ("base", "narrow", "worried", "down", cheeks="blush", tears="soft") + gen "Well... Suppose it's time for you to get your points..." + + $ renpy.sound.play("sounds/slick_02.ogg") + $ genie_doll = "after" + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_light") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_light") + else: + $ hermione.set_cum(body="light") + with kissiris + + her "{heart}*Ngh*!{heart}" ("grin", "narrow", "base", "up", cheeks="blush", tears="soft") + + show screen blkfade + with d5 + + call nar(">You step back and give Hermione's ass a last glance, her asshole still convulses slightly as your cum continues to dribble onto the ground.") + call nar(">After a couple moments, she pushes herself up, off your desk...") + call nar(">Before making her way to the front of your desk you notice her prodding her butthole gently.") + call nar(">You swear you see a slight smile across her face for a brief moment, but before you know it she has already readied herself and made her way to the front of your desk.") + + "-Cum all over her-": + $ genie_doll = "cum_outside2" + + + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_01.ogg") + gen "{size=+7}*Argh*!!!{/size}" + her "" ("mad", "narrow", "worried", "R", cheeks="blush", tears="soft") + + $ genie_doll = "cum_outside" + call cum_block + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_light") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_light") + else: + $ hermione.set_cum(body="light") + with d5 + + $ renpy.sound.play("sounds/slick_02.ogg") + her "*Ah-aha*! You're cumming! {heart}{heart}{heart}" ("grin", "narrow", "base", "down", cheeks="blush", tears="soft") + + $ genie_doll = "after" + + gen "{size=+7}Yes I am, whore!{/size}" + her "*Ah*, me too!" ("crooked_smile", "narrow", "worried", "mid", cheeks="blush", tears="soft") + gen "{size=+7}FUCKING SLUT!{/size}" + + her "*Ah*...{heart} your cum...{heart}" ("crooked_smile", "narrow", "base", "stare", cheeks="blush", tears="soft") + her "It's all over--{heart}{heart}{heart}" ("grin", "narrow", "base", "down", cheeks="blush", tears="soft") + + if hermione.is_worn("bottom"): + gen "{size=+7}Yes!!! All over your clothes!{/size}." + else: + gen "{size=+7}Yes!!! All over your ass!{/size}" + her "" ("grin", "narrow", "worried", "R", cheeks="blush") + + $ genie_doll = "cum_outside" + call cum_block + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_heavy") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_heavy") + else: + $ hermione.set_cum(body="heavy") + with d5 + + $ renpy.sound.play("sounds/slick_02.ogg") + her "" ("grin", "narrow", "worried", "mid", cheeks="blush") + $ genie_doll = "after" + call ctc + + her "{heart}{heart}*Mmm*...{heart}{heart}" ("grin", "narrow", "worried", "down", cheeks="blush") + gen "Well, this was intense..." + her "*Ah-ha*...{heart} *Ah*...{heart}" ("crooked_smile", "narrow", "base", "down", cheeks="blush", tears="soft") + gen "Are You alright, [hermione_name]?" + her "I think so...{w=0.3} I'm not sure..." ("grin", "narrow", "base", "stare",cheeks="blush",tears="soft") + her "I think I may still be cumming, [genie_name]." ("base", "narrow", "base", "R", cheeks="blush", tears="soft") + her "Or maybe not..." ("grin", "narrow", "worried", "mid", cheeks="blush", tears="soft") + her "Everything is in a daze...{w=0.3} And my legs feel so weak..." ("grin", "narrow", "worried", "down", cheeks="blush", tears="soft") + if game.daytime: + gen "Well you better get on your feet so you can receive your payment, [hermione_name]... You've still got lessons to get to." + else: + gen "Then I better get to awarding your points so you can get some rest..." + her "Oh...{w=0.3} Of course [genie_name]..." ("grin", "narrow", "worried", "R", cheeks="blush", tears="soft") + + show screen blkfade + with d5 + + call nar(">You step back and watch as Hermione tries her best to steady herself.") + call nar(">After finally getting up, she touches her ass and you swear you see her smile for a brief moment.") + call nar(">She then readies herself and makes her way to the front of your desk.") + + jump end_hg_pf_sex + +### Anal Sex Repeat ### + +label hg_anal_sex_3: + + $ hg_anal.trigger = True + $ current_payout = 90 + + + ### Will be added with Missionary pose ### + #gen "Let's see... How shall we do this..." + #her "[genie_name]?" + #menu: + #"-Flip her onto the desk-": + #jump hg_sex_missionary_anal + #"-Take her from behind-": + #pass + + ##Doggystyle Anal scene setup## + + gen "*Hmm*... Now that I think about it..." ("base", xpos="far_left", ypos="head") + her "Fine, I'll take my clothes off I guess..." ("base", "narrow", "base", "mid", cheeks="blush", flip=True, trans=dissolve) + gen "Good girl..." ("base", xpos="far_left", ypos="head") + + show screen blkfade + with d5 + pause.2 + + #Stop wind and thunder sounds + $ renpy.music.stop(channel="weather", fadeout=4) + + # Hermione Setup + $ hermione.set_pose("CG_lean_back") + $ hermione.strip("all") + hide hermione_main + + # Genie Setup + $ genie_doll_path = "images/CG/her_sex/" + $ genie_doll = "hold" + $ genie_doll_armfix = "images/CG/her_sex/hold_armfix.webp" + + # Camera Setup + $ camera.set_imagepath("her_sex") + $ camera.set_image("CG her_sex") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=1.0, pos=(-190, -435), initialize=True) + show screen animatedCG + + hide screen blkfade + with d5 + + + her "..........." ("base", "narrow", "base", "R") + $ camera.set(zoom=0.6, pos=(-555, -380), t=3.0, pause=True) + gen "Let's see now..." + call nar(">You align your cock and place it against Hermione's Butthole.") + menu: + "-Ask her if she's ready-": + gen "Ready?" + her "Ready for what--" ("angry", "narrow", "base", "R") + "-Less talking more fucking-": + pass + + $ renpy.play('sounds/gltch.ogg') + with kissiris + + call play_music("playful_tension") # SEX THEME. + her "*Ooooohhhhhhhhhhhh*....{heart}" ("grin", "wide", "base", "up") + + $ genie_doll = "hold_grin" + gen "*Ah*...{w=0.4} Finally!" + + her "*Mmm*..." ("grin", "narrow", "base", "mid", cheeks="blush") + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + call ctc + + her "*Ah*..." ("soft", "narrow", "worried", "mid", cheeks="blush") + + $ genie_doll = "hold" + gen "*Hmm*... This does feel a lot easier than before, you haven't pre-lubed your butthole have you [hermione_name]?" + + her "*Ah*...{w=0.4} *Ehm*..." ("angry", "narrow", "base", "down", cheeks="blush") + + $ genie_doll = "hold_grin" + gen "I knew it...{w=0.4} You've been expecting this..." + gen "So eager to take your headmasters cock, you had to lube yourself before even entering my office." + + $ genie_doll = "hold" + gen "So, where is it? I didn't see you bring it in." + + her "*Ah*...{w=0.4} *Ah*...{w=0.4} I--{w=0.2} I left it outside your door [genie_name]..." ("soft", "narrow", "base", "mid", cheeks="blush") + gen "You don't say..." + gen "Aren't you worried what people might think if they saw a bottle of lube out there?" + her "*Ah*...{w=0.4} *Ah*...{w=0.4} No, [genie_name]..." ("soft", "closed", "base", "mid", cheeks="blush") + her "They--{w=0.2} *Ah*...{w=0.4} They would probably hear my--{w=0.4} *Ah*...{w=0.2} Moaning through the door anyway so why--{w=0.2} *Ah*...{w=0.4} Why even bother..." ("open", "narrow", "worried", "mid", cheeks="blush") + + menu: + "-Chastise her-": + gen "So you don't care at all?" + her "*Ah*...{w=0.4} I don't, [genie_name]..." ("base", "narrow", "base", "down", cheeks="blush") + gen "What if one of your Gryffindor friends suddenly turned up outside my door?" + her "They--{w=0.2} *Ah*...{w=0.4} They wouldn't..." ("open", "narrow", "worried", "R", cheeks="blush") + gen "Are you sure? I mean it's not like the door is locked or anything..." + gen "Anyone could walk in here!" + if game.daytime: + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + her "*Ah*...{w=0.4} I'm sure they're still having lunch right now..." ("soft", "narrow", "base", "down", cheeks="blush") + elif random_number == 2: + her "*Ah*...{w=0.4} They should be in the library studying at the moment..." ("soft", "narrow", "base", "down", cheeks="blush") + elif random_number == 3: + her "*Ah*...{w=0.4} They're probably still busy playing Gobstones..." ("soft", "narrow", "base", "down", cheeks="blush") + else: + her "*Ah*...{w=0.4} They should still be in the common room..." ("soft", "narrow", "base", "down", cheeks="blush") + + gen "What if I told you that I requested them to be here?" + her "*Ah*...{w=0.4} You...{w=0.4} You wouldn't..." ("clench", "happy", "base", "R", cheeks="blush") + gen "Don't you think it's about time they saw exactly what lengths you've gone through to help your house?" + her "*Ah*...{w=0.3} [genie_name]...{w=0.3} I told you...{w=0.3} They can't--" ("angry", "happy", "annoyed", "mid", cheeks="blush") + gen "I bet you'd like nothing more than one of your friends walking through that door to see you taking my dick up your ass..." + her "Please [genie_name]... Don't tell me you've--" ("clench", "happyCl", "base", "mid", cheeks="blush") + + play bg_sounds "sounds/sexloopfast.ogg" + + call nar(">You start fucking Hermione's asshole with renewed determination.") + call nar(">Her pleads are soon drowned out by the slapping of her cheeks as you push your cock deep inside her with every stroke.") + her "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("open", "happyCl", "annoyed", "mid", cheeks="blush") + gen "Although... With how loud you're moaning I'd be surprised if I'd even need to call them up here..." + her "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("open", "happyCl", "annoyed", "mid", cheeks="blush") + gen "I bet the entire castle can hear your moans and cheeks slapping..." + her "*Ah*...{w=0.2} *Ah*...{w=0.2} They--{w=0.2} *Ah*...{w=0.4} They wouldn't...." ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Do you think they'd recognize the sound of your voice, [hermione_name]?" + her "*Ah*...{w=0.4} Of course they--" ("upset", "happyCl", "worried", "mid", cheeks="blush") + gen "Of course they would..." + gen "With how wet you've been lately..." + gen "There's no doubt you've been touching yourself in class..." + her "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*...{w=0.2}" ("angry", "closed", "worried", "mid", cheeks="blush") + gen "And that bottle of lube you brought with you... Did you bring that with you to class as well?" + her "*Ah*...{w=0.4} *Ah*...{w=0.4} I..." ("angry", "closed", "annoyed", "mid", cheeks="blush") + gen "What else have you brought to class lately?" + menu: + "\"A butt-plug?\"": + her "A... A Butt-plug?!" ("clench", "narrow", "base", "down", cheeks="blush") + "\"Anal beads?\"": + her "A-- Anal beads?!" ("clench", "narrow", "base", "down", cheeks="blush") + her "Of course I haven't!" ("disgust", "narrow", "base", "R", cheeks="blush") + gen "*Hmm*...{w=0.4} Could've fooled me [hermione_name]...{w=0.4} You don't normally get used to taking it in the ass this easily..." + her "*Hmph*..." ("upset", "narrow", "worried", "L", cheeks="blush") + her "I suppose I'm just a natural..." ("open", "narrow", "worried", "L", cheeks="blush") + gen "Clearly..." + gen "Well then, let's take that to the test shall we!" + + "-Reward her bravery-": + gen "Well then I suppose you wouldn't mind me going all out on you then..." + gen "After all, it's not like you'd be able to moan loud enough for anyone to hear you through the window..." + her "*Ah*...{w=0.2} Of course...{w=0.4} Go ahead, [genie_name]..." ("open", "closed", "base", "mid", cheeks="blush") + + play bg_sounds "sounds/slickloopfast.ogg" + + call nar(">You start fucking Hermione with renewed determination.") + call nar(">Noticing Hermione trying to stifle her moans you push your cock deep inside her ass and with each insertion your body smacks hard against her cheeks.") + + play bg_sounds "sounds/sexloopfast.ogg" + + her "*Ah*...{w=0.2} *Ah*...{w=0.2} [genie_name]..." ("disgust", "happyCl", "worried", "mid", cheeks="blush") + gen "That's it [hermione_name]..." + gen "Don't be afraid to show how much you're enjoying this..." + her "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("open", "happyCl", "base", "down", cheeks="blush") + + call nar(">Hermione begins moaning even louder as her previous worries slowly fades away and turn into pleasure.") + + call slap_her + + her "*Ah*..." ("grin", "narrow", "base", "up", cheeks="blush") + gen "*Hmm*... Surely we can do better than that..." + + call slap_her + + her "{size=+2}*Ah*!{/size}" ("grin", "happy", "base", "up", cheeks="blush") + gen "That's better..." + + call slap_her + call slap_her + call slap_her + + her "{size=+5}*Ah*!!!{/size}" ("open_tongue", "narrow", "base", "up", cheeks="blush") + + gen "There it is!" + gen "Well... I suppose you were right [hermione_name]..." + + call slap_her + + her "{size=+2}*Ah*!{/size}" ("grin", "happyCl", "base", "mid", cheeks="blush") + + gen "If anyone had heard you we'd probably know by now..." + her "I..." ("open", "happyCl", "base", "up", cheeks="blush") + gen "Although maybe I haven't gone all out on you yet..." + her "*Ah*... Surely you must have..." ("soft", "narrow", "base", "mid", cheeks="blush") + gen "Well, you're about to find out!" + + $ hermione.set_pose("CG_bent_over") + $ hermione.strip("all") + $ genie_doll = "grab" + $ genie_doll_armfix = "images/CG/her_sex/grab_armfix.webp" + $ camera.set(zoom=0.44, pos=(-305, -650), rotate=0, t=2.0) + her "" ("grin", "narrow", "base", "R", cheeks="blush") + + play bg_sounds "sounds/sexloopveryfast.ogg" + call nar(">You push Hermione down onto the desk and begin fucking her asshole rapidly...") + her "*Ah*...{w=0.3} [genie_name]!" ("soft", "narrow", "base", "up", cheeks="blush") + her "You're...{w=0.3} You're gonna break me!" ("grin", "narrow", "base", "up", cheeks="blush") + gen "I've already broken you, [hermione_name]!" + gen "Every time I've called you to my office you arrive here without a moment of hesitation." + her "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("grin", "happyCl", "base", "down", cheeks="blush") + gen "Even after the things I've done to you...{w=0.3} You can't wait to get back in here and do it again..." + gen "To suck your headmasters cock as if your life depended on it..." + her "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("grin", "narrow", "base", "mid", cheeks="blush") + gen "Have him fuck you so hard that you can't help but yell out in pleasure..." + her "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("grin", "narrow", "base", "up", cheeks="blush") + gen "Take his dick so far up your ass that you can barely keep any rational thoughts in your head." + call nar(">Hermione clenches her ass around your cock as you keep berating her.") + gen "And you can't even pretend that you're not enjoying it anymore..." + gen "Every time I call you a slut--" + with vpunch + her "*Ngh*..." ("crooked_smile", "narrow", "base", "up", cheeks="blush") + gen "Or a whore..." + with vpunch + her "*Ngh*..." ("grin", "narrow", "worried", "up", cheeks="blush") + gen "I can feel your body twitch in excitement." + gen "Is that the only thing you want now? To be nothing but a cum dumpster for your headmaster?" + her "..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "To just come in here the moment I call for you..." + gen "With the only purpose of squeezing out as much semen as you can." + her "I..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "To have me fill your ass up until you can't walk, or cover you in it just so you can smell it during class..." + gen "You should be ashamed of yourself!" + her "I--" ("angry", "base", "base", "mid", cheeks="blush") + gen "Admit it!" + her "{size=+5}I'm cumming [genie_name]!{/size}" ("angry", "happyCl", "base", "mid", cheeks="blush") + gen "Oh, no you don't!" + + call slap_her + pause .3 + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + her "{size=+2}*Ah*!{/size}" ("grin", "narrow", "base", "up", cheeks="blush") + + call slap_her + call slap_her + pause .3 + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + her "{size=+2}*Mmm*!{/size}" ("soft", "narrow", "base", "mid", cheeks="blush") + + gen "You slut! Now take what you came for!" + + menu: + "-Fill that greedy hole!-": + $ genie_doll = "cum_inside" + + gen "{size=+7}TAKE my cum!!!{/size}" + + $ renpy.sound.play("sounds/slick_01.ogg") + call cum_block + + if hermione.is_worn("bottom"): + her "!!!" ("grin", "narrow", "base", "mid", cheeks="blush",tears="soft") + else: + her "!!!" ("grin", "narrow", "base", "stare", cheeks="blush",tears="soft") + $ hermione.set_cum(pussy="light") + + gen "{size=+15}Yes! *Argh*!{/size}" + + $ renpy.sound.play("sounds/slick_01.ogg") + call cum_block + + her "*Ah*!{heart} Yes!{heart} Fill my tight little ass [genie_name]!{heart}" ("angry", "narrow", "annoyed", "up", cheeks="blush", tears="soft") + + gen "{size=+15}Argh! Yes!{/size}" + her "{size=+7}*Ah*! Fill your cum dumpster!!!!{heart}{heart}{heart}{/size}" ("crooked_smile", "narrow", "base", "mid", cheeks="blush", tears="soft") + gen "{size=+15}*Argh*!{/size}" + + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_01.ogg") + call cum_block + + if hermione.is_worn("bottom"): + her "" ("angry", "happyCl", "base", "up", cheeks="blush") + else: + $ hermione.set_cum(pussy="heavy") + + her "*Ah*...{heart}{w=0.3} My ass is so full...{heart}" ("grin", "narrow", "worried", "R", cheeks="blush", tears="soft") + gen "*Ah*...{w=0.3} And you better keep it in there, slut." + her "*Ah*...{w=0.3} *Ah*...{w=0.3} yes [genie_name]...{heart}" ("base", "narrow", "worried", "down", cheeks="blush", tears="soft") + gen "*Hmm*... I think it's time for you to receive your points [hermione_name]..." + + $ renpy.sound.play("sounds/slick_02.ogg") + $ genie_doll = "after" + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_light") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_light") + else: + $ hermione.set_cum(body="light") + with kissiris + + her "{heart}*Ngh*!{heart}" ("grin", "narrow", "base", "up", cheeks="blush", tears="soft") + + show screen blkfade + with d5 + + call nar(">You step back and watch as your cum starts leaking out of Hermione's ass before she clenches her cheeks to keep it inside of her.") + call nar(">She then gets off your desk and readies herself, and then makes her way to the front of your desk.") + call nar(">You notice that her walk is slightly more purposeful than usual as she does her best to keep your cum from leaking out.") + + "-Coat her with your cum!-": + $ genie_doll = "cum_outside2" + + + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_01.ogg") + gen "{size=+7}*Argh*!!!{/size}" + her "" ("mad", "narrow", "worried", "R", cheeks="blush") + + $ genie_doll = "cum_outside" + call cum_block + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_light") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_light") + else: + $ hermione.set_cum(body="light") + with d5 + + $ renpy.sound.play("sounds/slick_02.ogg") + her "*Ah-aha*! Yes [genie_name] cover me in cum! {heart}{heart}{heart}" ("grin", "narrow", "base", "down", cheeks="blush") + + $ genie_doll = "after" + + gen "{size=+7}You greedy slut!{/size}" + her "*Ah*, Yes!" ("crooked_smile", "narrow", "worried", "mid", cheeks="blush") + + her "*Ah*...{heart} your cum...{heart}" ("crooked_smile", "narrow", "base", "stare", cheeks="blush") + her "I can smell it--{heart}{heart}{heart}" ("grin", "narrow", "base", "down", cheeks="blush") + + if hermione.is_worn("bottom"): + gen "{size=+7}Yes!!! All over your clothes!{/size}." + else: + gen "{size=+7}Yes!!! All over your ass!{/size}" + her "" ("grin", "narrow", "worried", "R", cheeks="blush") + + $ genie_doll = "cum_outside" + call cum_block + if hermione.is_worn("bottom"): + $ hermione.set_cum(body="skirt_heavy") + elif hermione.is_worn("top"): + $ hermione.set_cum(body="shirt_heavy") + else: + $ hermione.set_cum(body="heavy") + with d5 + + $ renpy.sound.play("sounds/slick_02.ogg") + her "" ("grin", "narrow", "worried", "mid", cheeks="blush") + $ genie_doll = "after" + call ctc + + her "{heart}{heart}*Mmm*...{heart}{heart}" ("soft", "closed", "worried", "down", cheeks="blush") + gen "That's it, every last drop..." + her "*Ah-ha*...{heart} *Ah*...{heart}" ("crooked_smile", "narrow", "base", "down", cheeks="blush") + her "Every...{w=0.4} Last..." ("grin", "narrow", "base", "stare",cheeks="blush") + her "*Mmm*..." ("base", "narrow", "base", "mid", cheeks="blush") + gen "[hermione_name]?" + her "..." ("base", "narrow", "base", "down", cheeks="blush") + if game.daytime: + gen "You've got class to get to..." + else: + gen "*Err*... Perhaps you should go get some rest..." + her "Oh...{w=0.3} Of course [genie_name]..." ("soft", "narrow", "worried", "down", cheeks="blush") + her "Just give me a moment..." ("base", "narrow", "worried", "mid", cheeks="blush") + + show screen blkfade + with d5 + + call nar(">Hermione lies on your desk for a moment before finally pushing herself up.") + call nar(">You watch as she sneakily tries to brush some of your cum off with her finger and lick it off.") + call nar(">Noticing that you were looking she then readies herself and hurriedly makes her way to the front of your desk.") + + jump end_hg_pf_sex diff --git a/game/scripts/characters/hermione/events/favors/luna_threesome.txt b/game/scripts/characters/hermione/events/favors/luna_threesome.txt new file mode 100644 index 00000000..c588b4a3 --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/luna_threesome.txt @@ -0,0 +1,183 @@ +label hg_sex_luna: + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "I have a favour to ask of you..." ("base", xpos="far_left", ypos="head") + her "Is it sex? {size=-2}Please let it be sex...{/size}" ("smile", "base", "base", "R") + gen "You certainly seem eager." ("base", xpos="far_left", ypos="head") + her "......." ("base", "narrow", "base", "mid_soft") + her "Well I may have made some plans..." ("base", "narrow", "worried", "down") + her "but I can't tell you what..." + gen "well as long as you bend over my desk I don't really care..." ("base", xpos="far_left", ypos="head") + her "{heart}{heart}{heart}" ("base", "narrow", "worried", "down") + stop music fadeout 1.0 + hide hermione_main + call blkfade + # SEX + + $ renpy.play('sounds/gltch.ogg') + with hpunch + with kissiris + her "*Ooooohhhhhhhhhhhh*....{heart}" ("scream", "wide", "base", "stare", ypos="head", flip=False) #HERMIONE + + call her_chibi_scene("sex", trans=fade) + call ctc + + call play_music("playful_tension") # SEX THEME. + + her "*Ah*...{heart}" ("open", "happyCl", "worried", "mid") + gen "Your pussy feels drenched today..." ("base", xpos="far_left", ypos="head") + her "Does it--{heart} *Ah*...{heart}" ("open", "happyCl", "worried", "mid") + her "That's all because of you [genie_name]...{heart}" ("shock", "happyCl", "worried", "mid") + + if game.daytime: + her "I've been... looking forward to this all morning...{heart}" ("silly", "narrow", "annoyed", "up") + else: + her "I've been... looking forward to this all day...{heart}" ("silly", "narrow", "annoyed", "up") + + gen "*Agh*, you whore!" ("angry", xpos="far_left", ypos="head") + her "*Ah*...{heart}{heart}" ("silly", "narrow", "annoyed", "up") + gen "Yes! Do you like it when I fuck you like this?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." ("base", "narrow", "base", "mid_soft") + + call play_sound("knocking") + call nar(">You hear a knock at the door.") + + menu: + "\"Who is it?\"": + gen "(Who would be knocking at a time like this?)" ("base", xpos="far_left", ypos="head") + lun "It's Luna Lovegood sir." + gen "{size=-3}Who's that again, [hermione_name]?{/size}" ("base", xpos="far_left", ypos="head") + her "The crazy blonde-- *Ah*...{heart}... With the nice breasts..." ("open", "closed", "base", "mid") + gen "Come on in!" ("base", xpos="far_left", ypos="head") + "-Tell them to go away-": + gen "Go aw--!" ("base", xpos="far_left", ypos="head") + her "No [genie_name]... let them in..." ("open", "happyCl", "worried", "mid") + gen "You want to get caught?!" ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart} yes...{heart}" ("shock", "happyCl", "worried", "mid") + gen "You are a such a little whore, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "*Ah-ah*...{heart} let them in... please..." ("shock", "happyCl", "worried", "mid") + gen "You asked for it!" ("base", xpos="far_left", ypos="head") + her "*Ah-a*...{heart}{heart}{heart}" ("shock", "happyCl", "worried", "mid") + gen "Come in!" ("base", xpos="far_left", ypos="head") + + call nar(">The door opens as Luna Lovegood walks in.") + call lun_walk("desk", action="enter") + + lun "Hello Professor!" + #Stop sex + gen "....." ("base", xpos="far_left", ypos="head") + her "......" ("shock", "happyCl", "worried", "mid") + + lun "I wanted to talk to you about the school uniform." + gen "The uniform?" ("base", xpos="far_left", ypos="head") + lun "Yes, I have some ideas about some necessary changes and I'd like you to listen." + gen "{size=-3}What's going on here, [hermione_name]?{/size}" ("base", xpos="far_left", ypos="head") + + her "I may have given her a suggestibility serum..." ("silly", "narrow", "annoyed", "up") + gen "{size=-3}A suggestibility serum?{/size}" ("base", xpos="far_left", ypos="head") + lun "Who are you talking to sir?" + gen "Oh... *Ehm*... No one... Just ignore me." ("base", xpos="far_left", ypos="head") + lun "Okay then, I'll ignore you..." + her "I may have suggested that she come here..." ("silly", "narrow", "annoyed", "up") + her "And that she be unable to see me..." ("silly", "narrow", "annoyed", "up") + gen "But what about me and my lack of clothes?" ("base", xpos="far_left", ypos="head") + her "{heart}" + lun "*Ahem*" + lun "As I was saying sir, the school uniform simply cannot stay as it is." + + call nar(">You pick up the pace some more.") + pause.2 + + call her_chibi_scene("sex_fast", trans=d5) + pause.8 + + call nar(">The room fills up with the rhythmical sound of flesh hitting flesh...") + her "*Ah*...{heart} *Ah*...{heart} *Ah*...{heart}" ("angry", "narrow", "base", "down") + gen "{size=-3}So let me get this straight.{/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-3}You drugged your class mate...{/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-3}Just so she would come in here and watch you have sex with your headmaster.{/size}" ("base", xpos="far_left", ypos="head") + her "*Ah*... Yes...{heart}{heart}{heart}" + lun "The uniforms we girls are supposed to wear are far too conservative!" + gen "Conservative?" ("base", xpos="far_left", ypos="head") + lun "Indeed! Miss Granger is the only student that is dressing appropriately." + if cho_whoring > 16: + lun "And I guess Cho Chang as well." + if ast_whoring > 16: + lun "And.. Astoria Greengrass..." + if sus_whoring > 16: + lun "... And Susan Bones..." + if ton_friendship > 50: + lun "... And perhaps professor Tonks, but she's our teacher!" + + her "*Ah*..." ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + gen "{size=-3}What else did you do to her?{/size}" ("base", xpos="far_left", ypos="head") + her "I may have suggested to her that she-- *Ah*...{heart}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + her "... Act like a total slut...{heart}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + gen "{size=-3}So just like you then?{/size}" ("base", xpos="far_left", ypos="head") + her "Yessss...{heart}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + lun "[lun_genie_name], are you listening?" + gen "Sorry [luna_name], go on." ("base", xpos="far_left", ypos="head") + lun "Thank you. As I was saying I think you need to enact several new policies regarding school uniform." + lun "Everyone should strive to achieve the same level of perfection as Miss Granger." + her "{heart}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + lun "I've come up with several rules that should help achieve great results and I hoped you would help me out on this." + gen "Alright..." ("base", xpos="far_left", ypos="head") + lun "{b}Rule number one:{/b} shirts must reveal a minimum of 3 inches of cleavage." + her "{heart}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + lun "{b}Rule number two:{/b} No skirt over 5 inches worn should be worn." + her "{heart}{heart}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + lun "{b}Rule number three:{/b} No bras to be worn... at {u}any{/u} time." + her "{heart}{heart}{heart}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + lun "And finally, {b}Rule number four:{/b} No panties are allowed on the school grounds." + her "{heart}{heart}{heart}{heart}{heart}{heart}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + + gen "Why are your legs shaking, [hermione_name]?" ("base", xpos="far_left", ypos="head") + gen "Are you cumming in front of your classmate?" ("base", xpos="far_left", ypos="head") + her "Yes...{heart}{heart}{heart}{heart}{heart}{heart}" ("silly", "narrow", "base", "dead") + gen "Well, I think I will follow your example then." ("base", xpos="far_left", ypos="head") + her ".............." ("silly", "narrow", "base", "dead") + call nar(">You start fucking Hermione with renewed determination!") + her "*Ah*! No! I can't...{heart} not in front of...{heart} *Ah*...{heart}{heart}{heart}" ("shock", "base", "base", "R", cheeks="blush", tears="soft") + lun "Headmaster, are you--" + gen "Shut it whore!" ("base", xpos="far_left", ypos="head") + lun "Yes sir." + gen "*Argh*!" ("angry", xpos="far_left", ypos="head") + with hpunch + gen "{size=+7}*Argh*!!!{/size}" ("angry", xpos="far_left", ypos="head") + call cum_block + gen "{size=+15}*ARGH*!!!!!!!!!!!!!!!!{/size}" ("angry", xpos="far_left", ypos="head") + + call her_chibi_scene("sex_cum_out", trans=d5) + call cum_block + call ctc + + her "*Ah*...{heart}{heart}{heart}" ("silly", "narrow", "base", "dead") + gen "{size=+5}You fucking whore! Take this!{/size}" ("angry", xpos="far_left", ypos="head") + her "{size=+5}!!!{/size}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + hide screen bld1 + with d1 + call ctc + + call her_chibi_scene("sex_cum_out_done", trans=d5) + + call bld + gen "Well, that was pretty great..." ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart}{heart}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + gen "You good, slut?" ("base", xpos="far_left", ypos="head") + her "Yes..." ("silly", "narrow", "base", "dead") + gen "Enjoyed yourself?" ("base", xpos="far_left", ypos="head") + her "... A whole lot..." ("grin", "narrow", "base", "dead") + call ctc + + call blkfade + call lun_chibi("hide") #Moving it so it won't overlap with Hermione's Chibi (stands at desk). + + her "I think I came several times, [genie_name]..." ("soft", "narrow", "annoyed", "up") + gen "Well that'll do for now. You two best head to class." ("base", xpos="far_left", ypos="head") + her "yes sir..." ("grin", "narrow", "base", "dead") + her "Come on Luna let's go." ("grin", "narrow", "base", "dead") + lun "Hermione! WHen did you get here?" + lun "And what are you covered in?" + her "It doesn't matter..." ("soft", "narrow", "annoyed", "up") + her "{size=-7}You can lick it off later...{/size}" ("soft", "narrow", "annoyed", "up") + + return diff --git a/game/scripts/characters/hermione/events/favors/show_me_your_panties.rpy b/game/scripts/characters/hermione/events/favors/show_me_your_panties.rpy new file mode 100644 index 00000000..b093236e --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/show_me_your_panties.rpy @@ -0,0 +1,773 @@ + + +### Hermione Admire Panties ### + +label hg_pf_admire_panties: + + gen "{size=-4}(I will ask her to show me her panties. Plain and simple.){/size}" ("base", xpos="far_left", ypos="head") + + if hg_pf_admire_panties.counter < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + # Start Event + $ current_payout = 10 + $ hg_pf_admire_panties.start() + + # End Event + label end_hg_pf_admire_panties: + + # Setup + stop music fadeout 2.0 + call hide_characters + show screen blkfade + with d3 + + call her_chibi("stand","desk","base", flip=False) + call gen_chibi("sit_behind_desk") + + $ hermione.wear("all") + + hide screen blkfade + if her_tier <= 2: + her ".................." ("annoyed", "base", "base", "R", trans=fade) + elif her_tier <= 3: + her "" ("annoyed", "narrow", "base", "down", cheeks="blush", trans=fade) + elif her_tier <= 5: + her "" ("base", "base", "base", "mid", trans=fade) + else: + her "" ("smile", "narrow", "base", "mid_soft", trans=fade) + + # If Hermione is at tier 4+, she does not care about points. + if her_tier < 4 and current_payout > 0: + $ gryffindor += current_payout + gen "{number=current_payout} points to Gryffindor, [hermione_name]. Well done." ("base", xpos="far_left", ypos="head") + + if hg_pf_admire_panties.counter == 1: # First time + her "Another {number=current_payout} points..." ("base", "narrow", "worried", "down") + her "Can't wait to tell the guys!" ("smile", "happyCl", "base", "mid") + her "Except that I can't actually tell them about any of this..." ("annoyed", "narrow", "angry", "R") + + pause 1.0 + if game.daytime: + her "Well, my classes are about to start..." ("open", "closed", "base", "mid") + else: + her "It's getting pretty late, [genie_name]..." ("open", "closed", "base", "mid") + her "Will this be all?" ("open", "base", "base", "mid") + gen "Yes, you can go now." ("base", xpos="far_left", ypos="head") + + # Hermione stops at the door + call her_walk("door", "base") + + # If Hermione is at tier 4+, she does not care/forgets about points. + if her_tier >= 4: + her "What about my points..." + her "Eh... Who cares..." + + # Hermione leaves + call her_chibi("leave") + + # Increase level + if her_tier == 1: + if her_whoring < 3: # Points til 3 + $ her_whoring += 1 + + elif her_tier == 2: + if her_whoring < 9: # Points til 9 + $ her_whoring += 1 + + elif her_tier == 3: + if her_whoring < 12: # Points til 12 + $ her_whoring += 1 + + elif her_tier == 4: + if her_whoring < 18: # Points til 18 + $ her_whoring += 1 + + jump end_hermione_event + +### Tier 1 ### + +# Hermione reluctantly lifts her skirt for you. +# Event 1 (i) - Hermione is shocked about your suggestion. +# Event 2 (r) - Hermione still can't believe what you ask her to do. + +label hg_pf_admire_panties_T1_intro_E1: + gen "Nothing drastic, really..." ("base", xpos="far_left", ypos="head") + gen "I just want you to show me your panties." ("base", xpos="far_left", ypos="head") + her "My... panties...?" ("open", "base", "base", "mid") + her "[genie_name]!" ("angry", "base", "angry", "mid") + gen "I know, I know, this a little weird..." ("base", xpos="far_left", ypos="head") + her "{size=+7}A little !?{/size}" ("shock", "wide", "base", "stare") + her "This is completely inappropriate!" + gen "Listen, we need to go through this phase before we get to the good stuff, alright?" ("base", xpos="far_left", ypos="head") + her "The \"good stuff\"? [genie_name], I don't understand..." ("angry", "base", "base", "mid") + gen "What don't you understand, [hermione_name]?" ("base", xpos="far_left", ypos="head") + gen "Do you need these points or not?" ("base", xpos="far_left", ypos="head") + her "I do..." ("disgust", "base", "base", "down") + gen "Get up here and show them to me then..." ("base", xpos="far_left", ypos="head") + her "............." ("angry", "base", "angry", "mid") + + call hg_pf_admire_panties_T1 + + jump end_hg_pf_admire_panties + + +label hg_pf_admire_panties_T1_E1: + gen "Nothing drastic, really..." ("base", xpos="far_left", ypos="head") + gen "I just want you to show me your panties." ("base", xpos="far_left", ypos="head") + her "This again?" ("angry", "base", "angry", "mid") + gen "Yes. Show them to me..." ("base", xpos="far_left", ypos="head") + her "............." ("angry", "base", "angry", "mid") + + call hg_pf_admire_panties_T1 + + jump end_hg_pf_admire_panties + + +label hg_pf_admire_panties_T1: # Call label + call hide_characters + hide screen bld1 + with d3 + + if hermione.is_any_worn("robe", "accessory"): + $ hermione.strip("robe", "accessory") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause 1.4 + + call her_walk("desk", "base", reduce=0.8) + pause .7 + + if hermione.is_worn("bottom"): + $ hermione.strip("bottom") + call her_chibi("lift_skirt","desk","base") + with d3 + call ctc + else: + call her_chibi("stand", "desk", "base") + + call play_music("playful_tension") + her "....................." ("angry", "base", "angry", "mid", xpos="mid", ypos="base", trans=d3) + call ctc + + menu: + "-Stare at her face-": + ">You study Hermione's face--" + ">Wondering what's going through her mind right now." + her "......................." ("angry", "narrow", "annoyed", "mid", emote="angry") + + "-Stare at her panties-": + ">It's plain girlish underwear, nothing that an ordinary girl wouldn't wear." + + if hg_pf_admire_panties.counter > 1: # Second time + her "......................." ("angry", "narrow", "base", "R", emote="angry") + else: # First time + her "......................." ("angry", "narrow", "annoyed", "mid", emote="angry") + + call ctc + return + +### Tier 2 ### + +# Hermione lifts her skirt for you. +# Event 1 (i) - Hermione is embarrassed about what she's about to do. +# Event 2 (r) - Hermione is still not happy. + +label hg_pf_admire_panties_T2_intro_E1: + her "So, what will it be, [genie_name]?" + gen "Nothing drastic, really..." ("base", xpos="far_left", ypos="head") + gen "I just want you to show me your panties." ("base", xpos="far_left", ypos="head") + + if hg_pf_admire_panties.counter == 1: + her "My Panties?!" ("clench", "base", "worried", "mid") + else: + her "Oh... again?" ("annoyed", "base", "worried", "R") + + gen "Just do it..." ("base", xpos="far_left", ypos="head") + her ".................." ("annoyed", "base", "worried", "mid") + + call hg_pf_admire_panties_T2 + + jump end_hg_pf_admire_panties + +label hg_pf_admire_panties_T2_E1: + her "What will it be, [genie_name]?" + gen "I'd like you to show me your panties again." ("base", xpos="far_left", ypos="head") + her ".................." ("annoyed", "base", "worried", "R") + her "Alright..." ("open", "base", "worried", "R") + + call hg_pf_admire_panties_T2 + + jump end_hg_pf_admire_panties + +label hg_pf_admire_panties_T2: # Call label + + call hide_characters + hide screen bld1 + with d3 + + if hermione.is_any_worn("robe", "accessory"): + $ hermione.strip("robe", "accessory") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause 1.4 + + call her_walk("desk", "base", reduce=0.8) + pause .7 + + if hermione.is_worn("bottom"): + $ hermione.strip("bottom") + call her_chibi("lift_skirt","desk","base") + with d3 + call ctc + else: + call her_chibi("stand", "desk", "base") + + + call play_music("playful_tension") + her "Here, [genie_name]..." ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=d3) + call ctc + + menu: + "\"You don't look too embarrassed...\"": + her "That's not true..." ("base", "happy", "base", "mid") + her "But it is a small price to pay if it means the Gryffindor house keeps the cup this year." ("base", "base", "base", "R") + her "I know everyone will be so happy..." + + "\"I like your panties...\"": + her "Thank you, [genie_name]..." ("base", "happy", "base", "mid") + + "-Keep looking into her eyes-": + her ".............................." ("soft", "base", "base", "mid") + her "...........................?" + her "................................" ("grin", "base", "base", "R") + her "[genie_name], please... You are embarrassing me." ("grin", "happyCl", "worried", "mid",emote="sweat") + call ctc + return + +### Tier 3 ### +# Event 1 (i) - Ask her to take off her panties, she agrees to flash you quickly + variation if she has stripped. +# Event 2 (r) - Ask her to take off her panties, you make her stand for longer + variation if she has stripped. + +label hg_pf_admire_panties_T3_intro_E1: + if hg_pf_admire_panties.counter == 1: + gen "[hermione_name], could you show me your panties?" ("base", xpos="far_left", ypos="head") + if not hg_strip.trigger: + her "My panties?" ("open", "narrow", "base", "mid") + gen "If it's not too much trouble..." ("base", xpos="far_left", ypos="head") + her "*Hmm*... I suppose not..." ("angry", "squint", "base", "R") + else: + her "I suppose... If it's just my panties..." ("angry", "squint", "base", "R") + gen "(You'd be so lucky...)" ("base", xpos="far_left", ypos="head") + else: + gen "[hermione_name], I think it's time I took another look at your panties." ("base", xpos="far_left", ypos="head") + if not hg_strip.trigger: + her "Again?" ("open", "narrow", "base", "mid") + gen "Yes, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Okay." ("angry", "squint", "base", "R") + else: + her "Just my panties, right?" ("open", "squint", "base", "mid") + gen "We'll see..." ("base", xpos="far_left", ypos="head") + her "Right..." ("angry", "narrow", "base", "down") + + call hide_characters + hide screen bld1 + with d3 + + if hermione.is_any_worn("robe", "accessory"): + $ hermione.strip("robe", "accessory") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause 1.4 + + call her_walk("desk", "base", reduce=0.8) + pause .7 + + if hermione.is_worn("bottom"): + $ hermione.strip("bottom") + call her_chibi("lift_skirt","desk","base") + with d3 + call ctc + else: + call her_chibi("stand", "desk", "base") + + call play_music("playful_tension") + her "There you go." ("base", "squint", "base", "mid", xpos="mid", ypos="base", trans=dissolve) + + gen "Very good, [hermione_name]." ("base", xpos="far_left", ypos="head") + + menu: + "\"How are you feeling?\"": + her "[genie_name]?" ("soft", "squint", "base", "mid") + gen "How does it feel, knowing you're earning your house a lot of points." ("base", xpos="far_left", ypos="head") + her "*Ehm*... Good?" ("angry", "happy", "base", "mid") + her "I mean, as good as you could feel when you're showing the headmaster your panties." ("angry", "squint", "base", "R", cheeks="blush") + gen "Glad to hear it." ("base", xpos="far_left", ypos="head") + "-Stare at her face-": + gen "You've got a very pretty face, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("angry", "base", "base", "mid") + her "I thought you were supposed to be looking at my panties." ("angry", "narrow", "base", "mid") + gen "Does it matter where I'm looking?" ("base", xpos="far_left", ypos="head") + her "*Hmm*...{w=0.4} Well as long as you're still paying me..." ("angry", "narrow", "base", "R", cheeks="blush") + "-Stare at her panties-": + her "..." ("base", "squint", "base", "mid") + her "...{fast}..." ("normal", "squint", "base", "mid") + her "[genie_name]?" ("open", "squint", "base", "mid", cheeks="blush") + gen "Yes, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "You're staring very intently..." ("angry", "narrow", "base", "R", cheeks="blush") + gen "Of course, I'm savouring every moment." ("base", xpos="far_left", ypos="head") + her "Right..." ("open", "narrow", "base", "down", cheeks="blush") + her "" ("normal", "narrow", "base", "down", cheeks="blush") + call ctc + + her "Are we done?" ("open", "base", "base", "mid", cheeks="blush") + gen "Not quite." ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("angry", "base", "base", "mid", cheeks="blush") + gen "First I'd like you to take those panties off." ("base", xpos="far_left", ypos="head") + + if not hg_strip.trigger: + her "You want me to--" ("clench", "squint", "base", "mid", cheeks="blush") + gen "Take them off for me, yes." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "For Gryffindor, obviously." ("base", xpos="far_left", ypos="head") + her "So I will get extra points for this?" ("open", "closed", "worried", "mid", cheeks="blush") + gen "Of course, you shall receive twenty extra points..." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("annoyed", "narrow", "worried", "R", cheeks="blush") + her "For how long?" ("open", "narrow", "base", "mid", cheeks="blush") + gen "Just a quick peek shall suffice." ("base", xpos="far_left", ypos="head") + her "Alright then..." ("open", "closed", "base", "mid", cheeks="blush") + + $ current_payout += 20 + else: + her "I thought you just wanted me to show you my panties..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Yes, and now I want to see them slide off your legs." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "You'll get paid extra obviously..." ("base", xpos="far_left", ypos="head") + her "...{w=0.4} How much extra?" ("open", "narrow", "base", "R", cheeks="blush") + gen "Ten points." ("base", xpos="far_left", ypos="head") + her "Just ten?" ("clench", "narrow", "base", "mid", cheeks="blush") + gen "Ten points not good enough for a quick glance of what's under those panties?" ("base", xpos="far_left", ypos="head") + gen "It's not like I haven't gotten a good look already..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "down", cheeks="blush") + her "I suppose... If it's just a quick glance..." ("open", "narrow", "base", "down", cheeks="blush") + + $ current_payout += 10 + + her "..." ("normal", "narrow", "base", "down", cheeks="blush") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("panties") + with d3 + + her "" ("normal", "narrow", "base", "down", cheeks="blush") + pause 4 + her "" ("angry", "narrow", "base", "mid", cheeks="blush") + pause 3 + + her "Okay, that's{nw}" ("open", "squint", "base", "mid", cheeks="blush") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.wear("panties") + her "Okay, that's{fast} enough..." ("open", "squint", "base", "mid", cheeks="blush") + + gen "Very well, [hermione_name]." ("base", xpos="far_left", ypos="head") + + jump end_hg_pf_admire_panties + +label hg_pf_admire_panties_T3_E1: + gen "[hermione_name], I think it's time I took another look at your panties." ("base", xpos="far_left", ypos="head") + her "Just my panties?" ("open", "narrow", "base", "mid") + gen "*Hmm*... We'll see..." ("base", xpos="far_left", ypos="head") + her "Alright..." ("open", "squint", "base", "mid") + + call hide_characters + hide screen bld1 + with d3 + + if hermione.is_any_worn("robe", "accessory"): + $ hermione.strip("robe", "accessory") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause 1.4 + + call her_walk("desk", "base", reduce=0.8) + pause .7 + + if hermione.is_worn("bottom"): + $ hermione.strip("bottom") + call her_chibi("lift_skirt","desk","base") + with d3 + call ctc + else: + call her_chibi("stand", "desk", "base") + + call play_music("playful_tension") + her "Here you go." ("base", "squint", "base", "mid", xpos="mid", ypos="base", trans=dissolve) + call ctc + + gen "Excellent." ("base", xpos="far_left", ypos="head") + + menu: + "\"You look pretty comfortable...\"": + her "I guess..." ("open", "squint", "base", "R") + her "It's not really that different from wearing bikini bottoms..." ("open", "closed", "base", "mid") + her "I can just pretend that I'm at the lake." ("base", "closed", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + gen "(Then why not just pretend you're in the shower and bare it all.)" ("base", xpos="far_left", ypos="head") + "\"Do you like showing off your panties?\"": + her "Like, [genie_name]?" ("open", "squint", "base", "mid") + gen "Yes [hermione_name]... Do you enjoy it?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... I don't mind it I guess..." ("open", "squint", "base", "R") + her "As long as it makes my house happy." ("base", "base", "base", "mid") + gen "I'm sure it does." ("base", xpos="far_left", ypos="head") + "-Stare at her panties-": + her "..." ("base", "squint", "base", "mid") + her "...{fast}..." ("normal", "squint", "base", "mid") + her "[genie_name]?" ("open", "squint", "base", "mid") + gen "Yes, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Do you have to stare so intently at them?" ("angry", "squint", "base", "mid") + gen "I don't." ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + her "You're still staring..." ("annoyed", "narrow", "base", "mid") + gen "I don't have to... But I want to." ("base", xpos="far_left", ypos="head") + her "Right..." ("angry", "narrow", "base", "R") + + menu: + "\"Now take them off.\"": + her "[genie_name]!" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "What?" ("base", xpos="far_left", ypos="head") + gen "Surely you knew this was coming..." ("base", xpos="far_left", ypos="head") + her "*Hmph*... I suppose..." ("clench", "narrow", "base", "R", cheeks="blush") + gen "So?" ("base", xpos="far_left", ypos="head") + her "Just a flash, right?" ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "Right." ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("panties") + call ctc + + her "There--" ("angry", "narrow", "base", "mid", cheeks="blush") #Looks away + call nar(">You stare intently at Hermione's exposed pussy.") + her "..." ("angry", "narrow", "base", "R", cheeks="blush") #Looks at genie + her "Okay, that's--" ("clench", "narrow", "base", "down", cheeks="blush") + gen "Wait!" ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("angry", "squint", "base", "mid", cheeks="blush") + gen "I'm not done yet." ("base", xpos="far_left", ypos="head") + her "But you said--" ("open", "squint", "worried", "mid", cheeks="blush") + gen "Quiet." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "closed", "base", "mid", cheeks="blush") + call ctc + gen "Okay I'm done..." ("base", xpos="far_left", ypos="head") + "-Let her go-": + gen "Alright then, that shall do for now." ("base", xpos="far_left", ypos="head") + + jump end_hg_pf_admire_panties + +### Tier 4 ### + +# Event 1 (i) - Hermione is not wearing her panties. +# Event 2 (r) - No panties. You get to call her a slut. +# Event 3 (r) - Panties may or may not be equipped. Hermione asks to remove them or keep them on. + +## Can unequip underwear in wardrobe at this stage ## +label hg_pf_admire_panties_T4_intro_E1: + if hg_pf_admire_panties.counter == 1: + gen "[hermione_name], I'd like you to show me your panties, if that's not too much trouble." ("base", xpos="far_left", ypos="head") + else: + gen "[hermione_name], I'd like you to show me your panties again, if that's not too much trouble." ("base", xpos="far_left", ypos="head") + her "My panties?" ("open", "narrow", "worried", "down") + gen "Yes [hermione_name]... Get up here will you..." ("base", xpos="far_left", ypos="head") + her "Oh, Okay..." ("base", "narrow", "base", "down", cheeks="blush") + + call hide_characters + hide screen bld1 + with d3 + + if hermione.is_any_worn("robe", "accessory"): + $ hermione.strip("robe", "accessory") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause 1.4 + + call her_walk("desk", "base", reduce=0.8) + pause .7 + + if not hermione.is_worn("bottom") and hermione.is_worn("panties"): + call her_chibi("stand", "desk", "base") + her "*Hmm*... You know what..." ("normal", "narrow", "base", "R", cheeks="blush", xpos="mid", ypos="base") + $ hermione.strip("panties") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause 1.4 + her "" ("base", "narrow", "base", "mid", cheeks="blush") + call ctc + + gen "Looking to get extra points are you?" ("base", xpos="far_left", ypos="head") + her "Perhaps..." ("base", "narrow", "worried", "down", cheeks="blush") + else: + if hermione.is_any_worn("bottom", "panties"): + if hermione.is_worn("bottom", "panties"): + call her_chibi("lift_skirt","desk","base") + else: + call her_chibi("stand", "desk", "base") + $ hermione.strip("bottom", "panties") + with d3 + pause.8 + + her ".........................." ("base", "base", "base", "R", cheeks="blush", xpos="mid", ypos="base") + gen "!!?" ("angry", xpos="far_left", ypos="head") + + her "" ("base", "narrow", "base", "mid_soft", cheeks="blush") + call ctc + + # No Panties! + gen "Where are your panties, [hermione_name]?" ("angry", xpos="far_left", ypos="head") + her "Oh, lately I just don't feel like wearing them..." ("base", "narrow", "worried", "down", cheeks="blush") + else: + call her_chibi("stand", "desk", "base") + + her "*Ehm*..." ("open", "squint", "base", "R", cheeks="blush", xpos="mid", ypos="base") + her "You asked me not to wear any panties [genie_name]..." ("base", "narrow", "worried", "down", cheeks="blush") + gen "Oh... So I did..." ("base", xpos="far_left", ypos="head") + gen "I just wanted to make sure you followed my instructions..." ("base", xpos="far_left", ypos="head") + gen "Well done [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]..." ("base", "narrow", "worried", "mid", cheeks="blush") + + menu: + "\"You little slut!\"": + her "*Hmm*..." + her "I suppose I am..." ("base", "narrow", "base", "mid_soft") + her "Do I get extra points for that?" + + menu: + "\"Absolutely!\"": + gen "Ten additional points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]!" ("base", "happyCl", "worried", "mid") + + $ gryffindor+= 10 + + call ctc + + "\"Absolutely not!\"": + her "Why not!?" ("scream", "closed", "angry", "mid") + gen "Sluts aren't getting paid." ("base", xpos="far_left", ypos="head") + gen "That's what makes them sluts." ("base", xpos="far_left", ypos="head") + her "Well are you even going to pay me {number=current_payout} points?" ("annoyed", "base", "angry", "mid") + gen "Are you a slut or are you a prostitute?" ("base", xpos="far_left", ypos="head") + her "{size=-4}... A slut. {/size}" + gen "Good girl." ("base", xpos="far_left", ypos="head") + + $ current_payout = 0 + $ her_mood +=5 + + call ctc + + "\"Good! {number=current_payout} points!\"": + pass + + jump end_hg_pf_admire_panties + +label hg_pf_admire_panties_T4_E1: + gen "[hermione_name], I'd like you to show me your panties again if possible." ("base", xpos="far_left", ypos="head") + her "Oh..." ("open", "narrow", "worried", "down") + her "Well, that might be an issue..." ("base", "narrow", "base", "down", cheeks="blush") + + call hide_characters + hide screen bld1 + with d3 + + if hermione.is_any_worn("robe", "accessory"): + $ hermione.strip("robe", "accessory") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause 1.4 + + call her_walk("desk", "base", reduce=0.8) + pause .7 + + if not hermione.is_worn("bottom") and hermione.is_worn("panties"): + call her_chibi("stand", "desk", "base") + her "I don't really feel like wearing them right now..." ("base", "narrow", "base", "R", cheeks="blush", xpos="mid", ypos="base") + $ hermione.strip("panties") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause 1.4 + her "" ("base", "narrow", "base", "mid", cheeks="blush") + call ctc + + gen "Is that so?" ("base", xpos="far_left", ypos="head") + her "Yes..." ("base", "narrow", "base", "mid", cheeks="blush") + else: + if hermione.is_any_worn("bottom", "panties"): + if hermione.is_worn("bottom", "panties"): + call her_chibi("lift_skirt","desk","base") + else: + call her_chibi("stand", "desk", "base") + $ hermione.strip("bottom", "panties") + with d3 + pause.8 + + her "" ("base", "narrow", "base", "mid_soft", xpos="mid", ypos="base", trans=d3) + call ctc + + # No Panties! + gen "No panties again, [hermione_name]?" ("grin", xpos="far_left", ypos="head") + her "Well... what's the point if they're just going to be in the way all the time..." ("base", "narrow", "worried", "down", cheeks="blush") + else: + call her_chibi("stand", "desk", "base") + + her "I'm not wearing any panties right now..." ("base", "narrow", "base", "mid", cheeks="blush", xpos="mid", ypos="base", trans=dissolve) + her "Was I supposed to? I'm sure you asked me not to wear them..." ("open", "narrow", "worried", "down", cheeks="blush") + gen "So I did... Good job [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "I'm glad that I can count on you doing what I ask of you." ("base", xpos="far_left", ypos="head") + her "Oh... Thank you [genie_name]." ("base", "narrow", "worried", "mid", cheeks="blush") + + menu: + "\"You little slut!\"": + her "*Hmm*..." + her "I suppose I am..." ("base", "narrow", "base", "mid_soft") + her "Do I get extra points this time?" + + menu: + "\"Absolutely!\"": + gen "Absolutely!" ("base", xpos="far_left", ypos="head") + gen "Ten additional points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]!" ("base", "happyCl", "worried", "mid") + + $ gryffindor+= 10 + + call ctc + + "\"Absolutely not!\"": + + + + her "Why not!?" ("scream", "closed", "angry", "mid") + gen "Sluts aren't getting paid." ("base", xpos="far_left", ypos="head") + gen "That's what makes them sluts." ("base", xpos="far_left", ypos="head") + her "Well are you even going to pay me {number=current_payout} points?" ("annoyed", "base", "angry", "mid") + gen "Are you a slut or are you a prostitute?" ("base", xpos="far_left", ypos="head") + her "{size=-4}... A slut. {/size}" + gen "Good girl." ("base", xpos="far_left", ypos="head") + + $ current_payout = 0 + $ her_mood +=5 + + call ctc + + "\"Good! {number=current_payout} points!\"": + pass + + + her "I could put my panties back on for you, if you'd like that, [genie_name]?" ("open", "base", "base", "mid") + + menu: + "\"Yes, put them back on!\"": + her "Alright, [genie_name]." ("base", "narrow", "base", "mid_soft") + hide hermione_main + with d3 + ">Hermione puts on her panties." + + if not hermione.is_equipped("panties"): + $ hermione.equip(her_panties_base1) + else: + $ hermione.wear("panties") + + her "" ("base", "narrow", "base", "mid_soft") + call ctc + + her "I hope you like them..." ("soft", "base", "base", "R") + + "\"No, keep them off!\"": + her "Of course, [genie_name]." ("soft", "narrow", "base", "mid") + $ hermione.unequip("panties") + call ctc + + jump end_hg_pf_admire_panties + + +label hg_pf_admire_panties_T4_E2: + + gen "[hermione_name], show me those cute panties of yours again." ("base", xpos="far_left", ypos="head") + her "Oh..." ("open", "narrow", "worried", "down") + her "Okay..." ("base", "narrow", "base", "down", cheeks="blush") + + call hide_characters + hide screen bld1 + with d3 + + if hermione.is_any_worn("robe", "accessory"): + $ hermione.strip("robe", "accessory") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause 1.4 + + call her_walk("desk", "base", reduce=0.8) + pause .7 + + if hermione.is_worn("bottom"): + $ hermione.strip("bottom") + call her_chibi("lift_skirt","desk","base") + with d3 + call ctc + else: + call her_chibi("stand", "desk", "base") + + her "" ("base", "narrow", "base", "mid_soft", xpos="mid", ypos="base", trans=d3) + call ctc + + # No Panties. + if not hermione.is_worn("panties"): + gen "Where are your panties, [hermione_name]?" ("grin", xpos="far_left", ypos="head") + her "You asked me not to wear any..." ("open", "squint", "base", "mid") + gen "Oh right..." ("base", xpos="far_left", ypos="head") + her "Most of the time I just leave them in the Gryffindor common room..." ("base", "squint", "base", "R") + her "But I got them with me this time." ("base", "base", "base", "mid") + call ctc + + her "If you'd like, [genie_name], I could put my panties back on for you." ("soft", "narrow", "base", "mid_soft") + + menu: + "\"Yes, put them back on!\"": + her "Alright, [genie_name]." ("base", "narrow", "base", "mid_soft") + hide hermione_main + with d3 + ">Hermione puts on her panties." + + if not hermione.is_equipped("panties"): + $ hermione.equip(her_panties_base1) + else: + $ hermione.wear("panties") + + her "" ("base", "narrow", "base", "mid_soft") + call ctc + + her "I hope you like them..." ("soft", "base", "base", "mid") + + "\"No, keep them off!\"": + her "Of course, [genie_name]." ("soft", "narrow", "annoyed", "up") + $ hermione.unequip("panties") + call ctc + + else: + her "Do you like them, [genie_name]?" ("base", "narrow", "base", "mid_soft") + gen "Indeed I do, [hermione_name]..." ("base", xpos="far_left", ypos="head") + call ctc + + her "I could take them off, if you'd like that, [genie_name]." ("open", "base", "base", "R") + + menu: + "\"Yes, Take them off!\"": + her "Alright, [genie_name]." ("soft", "narrow", "annoyed", "up") + gen "And keep them off from now on!" ("base", xpos="far_left", ypos="head") + her "Whatever you want, [genie_name]." ("base", "narrow", "base", "mid_soft") + hide hermione_main + with d3 + call nar(">Hermione takes off her panties.") + + $ hermione.unequip("panties") + + her "" ("base", "narrow", "base", "mid_soft") + call ctc + + her "I hope you like it, [genie_name]..." ("angry", "wink", "base", "mid") + + "\"No, keep them on!\"": + her "Sure, [genie_name]." ("base", "narrow", "base", "mid_soft") + call ctc + + jump end_hg_pf_admire_panties diff --git a/game/scripts/characters/hermione/events/favors/show_me_your_tits.rpy b/game/scripts/characters/hermione/events/favors/show_me_your_tits.rpy new file mode 100644 index 00000000..e13ceb80 --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/show_me_your_tits.rpy @@ -0,0 +1,513 @@ + +### Hermione Admire Breasts ### + +default hg_pf_admire_breasts_no_points = False + +label hg_pf_admire_breasts: + + gen "{size=-4}(I feel like gazing upon those titties.){/size}" ("base", xpos="far_left", ypos="head") + + if hg_pf_admire_breasts.counter < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + # Start Event + $ current_payout = 10 + $ hg_pf_admire_breasts.start() + + # End Event + label end_hg_pf_admire_breasts: + + # Setup + stop music fadeout 2.0 + call hide_characters + show screen blkfade + with d3 + + call her_chibi("stand","desk","base", flip=False) + call gen_chibi("sit_behind_desk") + + $ hermione.set_cum(None) + $ hermione.wear("all") + + hide screen blkfade + if her_tier <= 2: + her ".................." ("annoyed", "base", "worried", "R", xpos="mid", ypos="base", trans=fade) + elif her_tier <= 5: + her "" ("base", "base", "base", "R", xpos="mid", ypos="base", trans=fade) + else: + her "" ("base", "narrow", "annoyed", "up", xpos="mid", ypos="base", trans=fade) + + # Points + $ gryffindor += current_payout + gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") + stop music fadeout 10.0 + + if her_tier <= 2: + her ".................." ("annoyed", "base", "worried", "R") + her "Thank you, [genie_name]..." ("open", "base", "base", "R") + elif her_tier <= 5: + her ".................." ("annoyed", "base", "worried", "R") + her "Thank you, [genie_name]..." ("soft", "base", "base", "mid") + else: + her ".................." ("base", "happyCl", "base", "mid") + her "Thank you, [genie_name]..." ("soft", "narrow", "base", "mid_soft") + + if game.daytime: + her "Now if you don't mind I'd better go. my classes are about to start." + else: + her "I'd better go now then. It's getting pretty late..." + + + # Hermione leaves + call her_walk("door", "base") + + if her_tier <= 1 and hg_pf_admire_breasts.points == 1: + her "........................" ("disgust", "narrow", "base", "down", cheeks="blush", xpos="right", flip=True, trans=d3) + elif her_tier <= 2 and hg_pf_admire_breasts.points == 1: + her "(How humiliating... What have I become...?)" ("disgust", "narrow", "base", "down", cheeks="blush", xpos="right", flip=True, trans=d3) + elif her_tier <= 2: + her "........................" ("disgust", "narrow", "base", "down", cheeks="blush", xpos="right", flip=True, trans=d3) + elif her_tier <= 3 and hg_pf_admire_breasts.points == 1: + her "{size=-5}(That was so humiliating...){/size}" ("base", "narrow", "base", "up", cheeks="blush", xpos="right", flip=True, trans=d3) + her "{size=-5}(No, Hermione, you silly girl!){/size}" ("angry", "base", "angry", "mid", cheeks="blush") + her "{size=-5}(We are doing this to protect the honour of our house!){/size}" ("angry", "base", "angry", "mid", cheeks="blush") + her "................................." ("base", "narrow", "base", "up", cheeks="blush") + + call her_chibi("leave") + + + # Increase level + if her_tier == 1: + if her_whoring < 3: # Points til 3 + $ her_whoring += 1 + + elif her_tier == 2: + if her_whoring < 9: # Points til 9 + $ her_whoring += 1 + + jump end_hermione_event + + + +### Tier 1 ### + +# Her Bra will stay on for this tier. +# Event 1 (i) - Hermione will remove her vest. +# Event 2 (i) - Hermione will lift up her top. +# Event 3 (r) - Hermione will lift up her top. + +label hg_pf_admire_breasts_T1_intro_E1: + her "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." ("normal", "base", "base", "mid") + gen "Has anyone ever told you what sweet-looking breasts you have?" ("base", xpos="far_left", ypos="head") + stop music fadeout 1.0 + her "!!!" ("shock", "wide", "base", "stare") + gen "How much would it cost me for you to lift up your top?" ("grin", xpos="far_left", ypos="head") + her "My top?!" ("shock", "wide", "base", "stare") + gen "And show me what's underneath..." ("grin", xpos="far_left", ypos="head") + her "Why would I--?!" ("angry", "wide", "base", "mid") + + her "[genie_name], I refuse to bare my breasts for you!" ("open", "closed", "angry", "mid") + her "How could you even suggest such a thing?!" ("angry", "base", "angry", "mid") + gen "Don't you want to earn some house points?" ("base", xpos="far_left", ypos="head") + her "Yes... But not in a way such as this!" ("angry", "narrow", "angry", "R") + + gen "I will award Gryffindor {number=current_payout} whole house points if you remove your top." ("base", xpos="far_left", ypos="head") + gen "Isn't that a steal?" ("grin", xpos="far_left", ypos="head") + her "No it isn't!" ("clench", "closed", "angry", "mid", emote="angry") + gen "Please?" ("base", xpos="far_left", ypos="head") + if hermione.is_worn("bra"): + gen "You can keep your bra on for all I care..." ("base", xpos="far_left", ypos="head") + her "Three seconds! Not even a second longer!" ("angry", "base", "angry", "mid") + gen "How about fi--" ("base", xpos="far_left", ypos="head") + her "{size=+4}Not even a second longer!{/size}" ("scream", "narrow", "angry", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + + menu: + "\"Very well, [hermione_name].\"": + gen "Better than nothing I guess..." ("base", xpos="far_left", ypos="head") + pass + + "\"That won't be enough, [hermione_name]...\"": + gen "I'm not giving Gryffindor {number=current_payout} whole points for a mere glimpse..." ("angry", xpos="far_left", ypos="head") + her "But--" ("open", "wide", "base", "stare") + gen "No buts! You are dismissed." ("base", xpos="far_left", ypos="head") + her "Please, [genie_name]. I need those points!" ("disgust", "happyCl", "worried", "mid") + gen "Then might I suggest you put in some work to earn them..." ("base", xpos="far_left", ypos="head") + her "(................)" ("annoyed", "narrow", "angry", "R") + gen "Have a nice day, Miss Granger." ("base", xpos="far_left", ypos="head") + her "(................)" ("annoyed", "base", "angry", "mid") + her "Fine! I'm leaving..." ("open", "closed", "angry", "mid") + her "Good day, Sir." ("angry", "base", "angry", "mid") + + call her_walk(action="leave") + + $ her_mood += 3 + $ hg_pf_admire_breasts.fail() + + gen "Well.. Next time I guess." ("base", xpos="far_left", ypos="head") + + jump main_room_menu + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "(................)" ("annoyed", "narrow", "angry", "R") + + if hermione.is_any_worn("robe", "accessory"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe", "accessory") + call ctc + + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top") + her "" ("annoyed", "narrow", "angry", "R") + call ctc + + gen "*Hmmmmm*" ("base", xpos="far_left", ypos="head") + gen "..........." ("base", xpos="far_left", ypos="head") + her "Sir?" ("clench", "base", "angry", "mid") + gen "(I wonder what cup size those are.)" ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.wear("top") + with d3 + pause .5 + + her "Sir, I would like to have my points now." ("open", "closed", "angry", "mid") + gen "What? Oh yes. Of course..." ("base", xpos="far_left", ypos="head") + + call hide_characters + show screen blkfade + with d3 + + jump end_hg_pf_admire_breasts + + + +label hg_pf_admire_breasts_T1_intro_E2: + her "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "[hermione_name], Is it just me?" ("base", xpos="far_left", ypos="head") + gen "Or is it getting really hot in here?!" ("grin", xpos="far_left", ypos="head") + her "Sir...?" ("open", "wink", "base", "mid") + gen "Take off your top for me, would you..." ("base", xpos="far_left", ypos="head") + her "(...............)" ("annoyed", "base", "angry", "mid") + her "Sir, this is a very inappropriate thing to ask of me!!!" ("scream", "closed", "angry", "mid") + gen "Yeah, yeah... What else is new..." ("base", xpos="far_left", ypos="head") + her "Sir!!!" ("clench", "wide", "base", "stare") + gen "Please. All I'm asking for is to get a little peek..." ("base", xpos="far_left", ypos="head") + her "A peek at what?" ("open", "base", "angry", "mid") + + menu: + "\"Your bra!\"": + gen "It looked really cute..." ("grin", xpos="far_left", ypos="head") + her "(......................)" ("clench", "closed", "angry", "mid") + her "You get three seconds like the last time, alright?" ("open", "closed", "base", "mid") + gen "No, no, no, Miss Granger." ("base", xpos="far_left", ypos="head") + gen "As you've already pointed out..." ("base", xpos="far_left", ypos="head") + her "" ("angry", "base", "worried", "mid") + gen "That was last time!" ("grin", xpos="far_left", ypos="head") + gen "Now if you would like those points I suggest you remove that top of yours..." ("base", xpos="far_left", ypos="head") + her "How many points did you say I'd get for this?" ("open", "base", "angry", "mid") + gen "{number=current_payout} points." ("base", xpos="far_left", ypos="head") + her "(.............................)" ("annoyed", "base", "angry", "mid") + gen "And I expect you to do it today, if you don't mind. I have... *Err*..." ("base", xpos="far_left", ypos="head") + gen "I have other things to take care off." ("base", xpos="far_left", ypos="head") + her "Very well, Sir..." ("open", "base", "angry", "mid") + her "I'll do it." ("annoyed", "base", "angry", "mid") + + pass + + "\"Your tits!\"": + her "W-what?" ("shock", "wide", "base", "stare") + gen "Your breasts, Miss Granger. I would very much like to see them!" ("grin", xpos="far_left", ypos="head") + her "M-My--... my breasts?!" ("angry", "base", "angry", "mid") + + # Hermione gets angry + her "*Tztzzz*!..." ("angry", "closed", "angry", "mid", emote="angry") + + her "Good day, Sir." ("scream", "base", "angry", "mid") + + call her_walk(action="leave") + + $ her_mood += 6 + $ hg_pf_admire_breasts.fail() + + gen "Bummer.." ("base", xpos="far_left", ypos="head") + + jump main_room_menu + + call hg_pf_admire_breasts_T1 + + jump end_hg_pf_admire_breasts + + + +label hg_pf_admire_breasts_T1_E2: + her "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "[hermione_name], how would you like to lift up your top for me?" ("base", xpos="far_left", ypos="head") + her "Will I be getting points for this, Sir?" ("annoyed", "base", "angry", "mid") + gen "Of course. {number=current_payout} points, as always." ("grin", xpos="far_left", ypos="head") + her "(...............)" ("annoyed", "base", "angry", "mid") + her "Very well then." ("angry", "base", "angry", "mid") + + call hg_pf_admire_breasts_T1 + + jump end_hg_pf_admire_breasts + + + +label hg_pf_admire_breasts_T1: # Call label + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "............." ("annoyed", "base", "worried", "R") + + if hermione.is_any_worn("robe", "accessory"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe", "accessory") + call ctc + + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top") + her "" ("annoyed", "base", "worried", "R") + call ctc + + gen "............." ("base", xpos="far_left", ypos="head") + gen "Very good, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Can I get my points then?" ("disgust", "happyCl", "worried", "mid") + gen "Of course..." ("base", xpos="far_left", ypos="head") + + return + + + +### Tier 2 ### + +# Hermione will bare her breasts after some convincing. +# Event 1 (i) - Choice: Pay Hermione more points to lift up her top without bra. +# Event 2 (i) - Hermione will lift up her top. +# Event 3 (r) - Hermione will lift up her top. + +label hg_pf_admire_breasts_T2_intro_E1: + her "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." ("normal", "base", "base", "mid") + gen "How much will it cost me to see your tits?" ("base", xpos="far_left", ypos="head") + + stop music fadeout 1.0 + if not hg_pf_admire_breasts_no_points: + her "How much will it cost you to...?" ("open", "base", "base", "mid") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "[genie_name]!" ("scream", "closed", "angry", "mid") + gen "*Hmm*... I thought your house could use some extra points..." ("base", xpos="far_left", ypos="head") + gen "But I guess I was wrong..." ("base", xpos="far_left", ypos="head") + her ".........?" ("open", "base", "base", "mid") + gen "Please don't mind me..." ("base", xpos="far_left", ypos="head") + gen "All I want to do is help you..." ("base", xpos="far_left", ypos="head") + her "............." ("annoyed", "base", "worried", "R") + her "Two hundred house points, [genie_name]." ("normal", "happyCl", "worried", "mid") + gen "So if I give you two hundred house points, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "You will shamelessly bare your melons before me?" ("base", xpos="far_left", ypos="head") + her "[genie_name]! No need to be so vulgar!" ("angry", "base", "angry", "mid") + else: + her "How much..." ("open", "base", "base", "mid") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "This again?!" ("angry", "base", "angry", "mid") + gen "Just asking..." ("base", xpos="far_left", ypos="head") + her "I already told you... Two hundred points..." ("angry", "narrow", "worried", "mid") + gen "*Hmm*... That's a lot, just to have you show me your tits don't you think?" ("base", xpos="far_left", ypos="head") + her "Two hundred!" ("disgust", "narrow", "angry", "R") + gen "How about a pat on the back and a snickers bar to help with that terrible mood of yours?" ("base", xpos="far_left", ypos="head") + her "I think I'd better go..." + + menu: + "\"Wait. Two hundred points are yours. Show me!\"": + $ current_payout = 200 + her "Really?" ("open", "base", "base", "mid") + gen "Well?" ("base", xpos="far_left", ypos="head") + her "......................................" ("annoyed", "base", "worried", "R") + her "You have to promise me not to touch them, [genie_name]." + gen "Sure, sure..." ("base", xpos="far_left", ypos="head") + her "I am only doing this for the honour of my house, [genie_name]!" ("scream", "happyCl", "worried", "mid") + + pass + + "\"I will give you five points to see your tits.\"": + her "Five?!" ("scream", "wide", "base", "mid") + her "[genie_name], I am not going to expose myself for a meagre five points!" ("angry", "base", "angry", "mid",emote="angry") + gen "Well, your tits sure aren't worth two hundred, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "(They aren't?)" ("annoyed", "narrow", "worried", "down") + her "Maybe one hundred - then?" ("annoyed", "narrow", "angry", "R") + + menu: + "\"Fine. A hundred it is! Bare them already!\"": + $ current_payout = 100 + $ her_mood = 0 + + her "................." ("annoyed", "wide", "base", "stare") + her "A hundred points..." ("annoyed", "base", "base", "R") + her "So be it..." ("mad", "narrow", "base", "R") + her "You have to promise me not to touch them, [genie_name]." + gen "Sure, sure..." ("base", xpos="far_left", ypos="head") + her "So be it..." ("smile", "happyCl", "base", "mid") + + pass + + "\"Twenty-five house points that's my final offer!\"": + $ current_payout = 25 + $ her_mood += 9 + + her "..............." ("annoyed", "narrow", "worried", "down") + her "You have to promise me not to touch them, [genie_name]." + gen "Sure, sure..." ("base", xpos="far_left", ypos="head") + her "Well, so be it..." ("clench", "narrow", "base", "down") + + pass + + "\"Fine, leave. I don't care...\"": + her "*Tsk*!" ("clench", "closed", "angry", "mid") + + call her_walk(action="leave") + + gen "... She really left." ("base", xpos="far_left", ypos="head") + gen "Maybe I have pushed her a bit too hard." ("base", xpos="far_left", ypos="head") + + $ her_mood += 12 + $ hg_pf_admire_breasts.fail() + $ hg_pf_admire_breasts_no_points = True + + jump end_hermione_event + + jump hg_pf_admire_breasts_T2 + +label hg_pf_admire_breasts_T2_intro_E2: + her "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "[hermione_name], how would you like to show me your breasts again?" ("base", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "I'd rather not, [genie_name]..." ("annoyed", "narrow", "annoyed", "mid") + gen "Are you sure?" ("base", xpos="far_left", ypos="head") + gen "You could earn twenty-five house points for it!" ("grin", xpos="far_left", ypos="head") + her "............." ("annoyed", "base", "worried", "R") + her "Very well, [genie_name]." ("angry", "base", "angry", "mid") + her "But you better keep your hands to yourself!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "Don't you dare touch them!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "You need to promise me, [genie_name]!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Of course. I promise I won't touch..." ("base", xpos="far_left", ypos="head") + + $ current_payout = 25 + + jump hg_pf_admire_breasts_T2 + +label hg_pf_admire_breasts_T2_E2: + her "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "[hermione_name], I would very much like to see your breasts again!" ("grin", xpos="far_left", ypos="head") + her "............." ("annoyed", "base", "worried", "R") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "Very well, [genie_name]." ("angry", "base", "angry", "mid") + her "But you are not allowed to touch them!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "Promise me, [genie_name]!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Of course. I promise..." ("base", xpos="far_left", ypos="head") + + $ current_payout = 25 + + jump hg_pf_admire_breasts_T2 + +### Tier 3 ### + +# Hermione reluctantly show you her breasts. +# You can touch them. But I'd advice you not to. + +# Event 1 (i) - Hermione will lift up her top. +# Event 2 (r) - Hermione will lift up her top. + +label hg_pf_admire_breasts_T3_intro_E1: + her "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("annoyed", "narrow", "angry", "R") + gen "I need to see your tits." ("base", xpos="far_left", ypos="head") + her "............" ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "Do you promise not to touch, [genie_name]?" ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Of course." ("base", xpos="far_left", ypos="head") + + $ current_payout = 25 + + jump hg_pf_admire_breasts_T3 + +label hg_pf_admire_breasts_T3_E1: + her "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "I need to see your tits, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Are you only going to watch, [genie_name]?" ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Of course..." ("base", xpos="far_left", ypos="head") + + $ current_payout = 25 + + jump hg_pf_admire_breasts_T3 + +### Tier 4 ### + +# Hermione is more than ok with showing you her tits now. +# She doesn't mind if you touch them. + +# Event 1 (i) - Hermione will lift up her top. +# Event 2 (r) - Hermione will lift up her top. +# Event 3 (r) - Hermione will lift up her top. + +label hg_pf_admire_breasts_T4_intro_E1: + her "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("soft", "narrow", "base", "mid_soft") + gen "Did I ever tell you what magnificent tits you have?" ("base", xpos="far_left", ypos="head") + her "............" ("clench", "narrow", "base", "down", cheeks="blush") + her "Why do you have to be so vulgar, [genie_name]?!" ("clench", "happyCl", "worried", "mid", cheeks="blush") + gen "Just take the compliment and come a bit closer to show them to me..." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." ("base", "narrow", "worried", "down", cheeks="blush") + + her "Are you only going to watch, [genie_name]?" ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Of course..." ("base", xpos="far_left", ypos="head") + + $ current_payout = 25 + + jump hg_pf_admire_breasts_T4 + +label hg_pf_admire_breasts_T4_E1: + her "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "I need to see your tits, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]." ("base", "narrow", "base", "up", cheeks="blush") + + her "Are you only going to watch, [genie_name]?" ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Of course..." ("base", xpos="far_left", ypos="head") + + $ current_payout = 25 + + jump hg_pf_admire_breasts_T4 + +label hg_pf_admire_breasts_T4_E2: + her "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + gen "I have to see your marvellous knockers, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]." ("base", "narrow", "base", "up", cheeks="blush") + + her "Are you only going to watch, [genie_name]?" ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Of course..." ("base", xpos="far_left", ypos="head") + + $ current_payout = 25 + + jump hg_pf_admire_breasts_T4 diff --git a/game/scripts/characters/hermione/events/favors/show_me_your_tits_branches.rpy b/game/scripts/characters/hermione/events/favors/show_me_your_tits_branches.rpy new file mode 100644 index 00000000..1556a3cc --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/show_me_your_tits_branches.rpy @@ -0,0 +1,794 @@ + + +label hg_pf_admire_breasts_transition: + stop music fadeout 1.0 + call hide_characters + hide screen bld1 + hide screen blktone + with d3 + pause.2 + + # Setup Pose + + if hermione.is_worn("robe"): + pause .4 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe") + pause 1.2 + + if hermione.is_worn("top", "bottom"): + $ hermione.strip("top", "bra", "accessory") + call her_chibi("lift_top","mid","base") + pause 1.4 + $ renpy.sound.play("sounds/boing02.ogg") + pause 2.0 + elif hermione.is_any_worn("top", "bottom"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top", "bra", "accessory") + pause 2.0 + else: + $ hermione.strip("accessory") + + her "" ("angry", "happyCl", "base", "down", cheeks="blush", trans=d3) + call ctc + + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + if her_tier <= 2: + her "{size=-5}(My breasts are completely exposed...){/size}" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Come closer [hermione_name], let me take a better look..." ("base", xpos="far_left", ypos="head") + + # Move to desk + hide screen bld1 + call her_chibi("stand","mid","base") + with d3 + pause.2 + + call her_walk("desk", "base", reduce=0.8) + + show screen blkfade + with d3 + + call her_chibi_scene("behind_desk_front_show_tits", trans=fade) + pause .5 + + if her_tier <= 2: + her "............" ("annoyed", "narrow", "angry", "R", cheeks="blush", xpos="mid", ypos="base") + gen "Very good..." ("base", xpos="far_left", ypos="head") + her "....." ("annoyed", "base", "angry", "mid", cheeks="blush") + call ctc + + her "...................................." ("annoyed", "narrow", "annoyed", "mid") + + elif her_tier == 3: + her "" ("base", "closed", "base", "mid", xpos="mid", ypos="base") + + gen "Very good..." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") # SEX THEME. + her "...................................." + + else: + her "" ("base", "narrow", "base", "mid_soft", cheeks="blush", xpos="mid", ypos="base") + + gen "Very good..." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") # SEX THEME. + her "............" ("base", "narrow", "base", "mid_soft", cheeks="blush") + call ctc + return + +### Tier 2 ### + +label hg_pf_admire_breasts_T2: + + call hg_pf_admire_breasts_transition + + menu: + "-Break your promise. Grab the tits!-": # Event will fail. + jump hg_pf_admire_breasts_T2_touch + + "-Keep promise. Admire visually-": + call hg_pf_admire_breasts_T2_promise + + jump end_hg_pf_admire_breasts + + "-Start jerking off-": # 2/3 branches will fail. + jump hg_pf_admire_breasts_T2_masturbate + +label hg_pf_admire_breasts_T2_promise: # Call label + + ">You take a long look at Hermione's naked tits..." + + #First time event. + #if her_whoring >= 6 and her_whoring <= 8: + call ctc + + menu: + "-Nod your head in approval-": + ">You Look at the girl's tits for a while and then nod in approval..." + her "......................" + + return + + "-Shake your head in disapproval-": + $ her_mood += 3 + ">You Look at the girl's tits for a while and then shake your head in disappointment..." + her ".....................?!" + + return + +label hg_pf_admire_breasts_T2_touch: # Not a Call label + + #Event Fails + # if her_whoring >= 6 and her_whoring <= 8: + hide hermione_main + show screen blkfade + with d3 + call bld + + ">You reach out and dig your fingers into the girl's ample flesh..." + her "[genie_name], what are you doing?" ("mad", "wide", "base", "stare", cheeks="blush") + + # Start Groping + call her_chibi_scene("grope_tits") + call ctc + + gen "Relax, [hermione_name]. Just stand still!" ("base", xpos="far_left", ypos="head") + gen "Oh... Those are some nice titties you've got..." ("base", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "No, [genie_name], please! You mustn't do this..." ("shock", "happyCl", "worried", "mid") + gen "This won't take long, just stand still." ("base", xpos="far_left", ypos="head") + her "[genie_name], I didn't agree to this!" ("angry", "base", "angry", "mid", cheeks="blush") + with hpunch + her "You must unhand me now!!!" ("scream", "base", "angry", "mid", cheeks="blush",emote="angry") + + # End Groping + show screen blkfade + with d3 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + ">Hermione pulls away from you and covers up hastily." + + $ hermione.wear("all") + call her_chibi_scene("reset", "desk", "base", trans=fade) + pause .5 + + her "I think I'd better go..." ("angry", "happyCl", "worried", "mid", cheeks="blush", xpos="mid", ypos="base") + gen "Go ahead, [hermione_name]. You are not getting paid if you do..." ("base", xpos="far_left", ypos="head") + her "But I showed you my..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "And you touched me..." ("angry", "base", "angry", "mid", cheeks="blush") + her "And I am getting nothing in return?" ("scream", "base", "angry", "mid", cheeks="blush",emote="angry") + gen "You are dismissed, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "*Grr*.........." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-5}(Burn in hell, you wretched old--{/size})" ("angry", "happyCl", "worried", "mid", cheeks="blush") + + call her_walk(action="leave") + + $ her_mood += 22 + + jump end_hermione_event + +label hg_pf_admire_breasts_T2_masturbate: # Not a Call label + + $ her_mood += 2 + $ her_jerk_off_counter += 1 + $ genie_masturbating = True + + hide hermione_main + with d3 + + ">You take your cock out and start stroking it..." + show screen blkfade + with d3 + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "[genie_name]?!!" ("angry", "wide", "base", "stare") + gen "Just stand still, [hermione_name]..." ("base", xpos="far_left", ypos="head") + + # Start Jerking Off. + hide screen bld1 + hide screen blktone + call her_chibi_scene("grope_tits_jerk_off", trans=fade) + + if hg_jerkoff.trigger == False: + $ achievements.unlock("busted") + $ hg_pf_talk.change_icon(a="heart_half", b="heart_red") + $ hg_jerkoff.triggered() # .trigger = True, .counter += 1 + + call ctc + + call bld + call nar(">You stare at Hermione's breasts with hunger...") + her "[genie_name], what are you...?" ("shock", "happyCl", "worried", "mid") + call nar(">You keep stroking your hard cock...") + her "[genie_name], no..." ("disgust", "narrow", "base", "down", cheeks="blush") + her "You must... Put it away..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Stop whining [hermione_name]. I'm not touching you, am I?" ("base", xpos="far_left", ypos="head") + her "But..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "But I didn't agree to this!" ("angry", "base", "angry", "mid", cheeks="blush") + her "I..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "I think I'd better leave now!" ("angry", "happyCl", "worried", "mid", cheeks="blush") + + menu: + "\"Leave now, and you'll get no points!\"": + $ her_mood += 30 + + her "After {size=+5}this{/size}? Are you kidding me, [genie_name]?" ("scream", "wide", "base", "stare", cheeks="blush") + her "I showed you my..." ("scream", "wide", "base", "stare", cheeks="blush") + her ".........." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "I am not going to sell you a single favour anymore, [genie_name]!" ("angry", "base", "angry", "mid", cheeks="blush") + show screen blkfade + with d3 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + ">Hermione pulls away from you and covers up..." + gen "Don't you dare to leave me in this state, [hermione_name]!" ("angry", xpos="far_left", ypos="head") + + $ hermione.wear("all") + call her_chibi_scene("reset","desk","base", trans=fade) + pause .5 + + her "I am not setting a foot into your office ever again, [genie_name]!" ("angry", "squint", "base", "mid", cheeks="blush", xpos="mid", ypos="base") + + gen "Come on, now. Just say something dirty! I'm almost there!" ("angry", xpos="far_left", ypos="head") + her "You are a horrible person, [genie_name]..." ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + + call her_walk(action="run", xpos="door", speed=2, reduce=True) + with hpunch + call her_walk(action="leave") + + jump end_hermione_event + + "\"Alright, alright. That's enough for now.\"": + $ her_mood += 9 + + jump end_hg_pf_admire_breasts + + "-Start jerking your cock faster-": + $ her_mood += 35 + + ">You start jerking your cock furiously!" + her "No, [genie_name], stop!" ("scream", "base", "angry", "mid", cheeks="blush",emote="angry") + ">You jerk it even faster!" + her "[genie_name], think I will be leaving now..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "No, wait, I'm almost there!" ("angry", xpos="far_left", ypos="head") + her "Ew! [genie_name]!" ("angry", "squint", "base", "mid", cheeks="blush") + show screen blkfade + with d3 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + ">Hermione pulls away from you and covers up..." + + $ hermione.wear("all") + call her_chibi_scene("reset","desk","base", trans=fade) + pause .5 + + her "I'm leaving!" ("angry", "squint", "base", "mid", cheeks="blush") + call her_walk(action="leave") + + jump end_hermione_event + +label hg_pf_admire_breasts_T3: + + call hg_pf_admire_breasts_transition + + menu: + "-Break your promise. Grab the tits!-": + call hg_pf_admire_breasts_T3_touch + + "-Keep promise. Admire visually-": + call hg_pf_admire_breasts_T3_promise + + "-Start jerking off-": + call hg_pf_admire_breasts_T3_masturbate + + + jump end_hg_pf_admire_breasts + +label hg_pf_admire_breasts_T3_promise: + ">You take a long look at Hermione's naked tits..." + # elif her_whoring >= 9 and her_whoring <= 11: + call ctc + + menu: + "\"A Nice set of tits you got there.\"": + her "" ("annoyed", "closed", "base", "mid") + call ctc + + her "Thank--" + her "..........." ("annoyed", "base", "base", "mid") + her "You are being inappropriate, [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + + return + + "\"*Hmm*... I've seen better.\"": + $ her_mood += 7 + + her "*Tsk*..." + her "Are we done then?" + + return + + +label hg_pf_admire_breasts_T3_touch: + # elif her_whoring >= 9 and her_whoring <= 11: + hide hermione_main + show screen blkfade + with d3 + + ">You reach out and dig your fingers into the girl's ample flesh..." + her "[genie_name], what are you doing?" ("mad", "wide", "base", "stare", cheeks="blush") + + # Start Groping + call her_chibi_scene("grope_tits") + call ctc + + call bld + gen "Relax, [hermione_name]. Just stand still!" ("base", xpos="far_left", ypos="head") + her "I didn't agree to this, [genie_name]..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "I don't think you should..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Don't you like it...?" ("base", xpos="far_left", ypos="head") + her "What?" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Don't you like how I squeeze and pull on your breasts?" ("base", xpos="far_left", ypos="head") + her "..............." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Admit it, you like it a little bit..." ("base", xpos="far_left", ypos="head") + her "{size=-5}(So strange to see my breasts in someone else's hands...){/size}" ("disgust", "narrow", "base", "down", cheeks="blush") + her "[genie_name], I am letting you do this to me to help my house out, nothing more!" ("shock", "happyCl", "worried", "mid") + her "Please, unhand me now!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + show screen blkfade + with d5 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + ">Hermione pulls away from you suddenly and covers up." + + $ hermione.wear("all") + call her_chibi_scene("reset", "desk", "base") + + hide screen blkfade + with d5 + + her "You promised not to touch, [genie_name]..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "It was hard to resist..." ("base", xpos="far_left", ypos="head") + + pause.8 + + her "............." ("soft", "base", "base", "R", cheeks="blush") + her "Can I get paid now please?" ("angry", "happyCl", "worried", "mid", cheeks="blush",emote="sweat") + gen "Sure..." ("base", xpos="far_left", ypos="head") + + $ her_mood += 9 + + return + + +label hg_pf_admire_breasts_T3_masturbate: + + # elif her_whoring >= 9 and her_whoring <= 11: + hide hermione_main + show screen blkfade + with d3 + + ">You take your cock out and start stroking it..." + + her "[genie_name]?" ("angry", "wide", "base", "stare") + ">You stare at Hermione's breasts with hunger..." + + #Start Jerking Off. + hide screen bld1 + hide screen blktone + call her_chibi_scene("grope_tits_jerk_off", trans=fade) + call ctc + + her "[genie_name], I didn't agree to this..." ("shock", "happyCl", "worried", "mid") + gen "What are you complaining about, [hermione_name]?" ("base", xpos="far_left", ypos="head") + gen "I'm not even touching you..." ("base", xpos="far_left", ypos="head") + her "Yes, but you are... touching yourself, [genie_name]." ("shock", "happyCl", "worried", "mid") + call nar(">You pick up the pace...") + gen "just stand still, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "It will be over soon." ("base", xpos="far_left", ypos="head") + her ".................." ("shock", "happyCl", "worried", "mid") + her "(It's so big...)" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Yes... Yes, like this..." ("base", xpos="far_left", ypos="head") + gen "Yes, with your tits all naked..." ("base", xpos="far_left", ypos="head") + her ".............." ("disgust", "narrow", "base", "down", cheeks="blush") + her "well, so be it..." ("open", "base", "base", "R", cheeks="blush") + her "You can keep touching yourself, [genie_name]..." ("open", "base", "base", "R", cheeks="blush") + her "But you must promise me not to..." ("soft", "base", "base", "R", cheeks="blush") + her "Not to... *Ehm*..." ("open", "base", "base", "R", cheeks="blush") + her "Not to discharge..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "Not in front of me, [genie_name]..." ("angry", "base", "angry", "mid") + gen "Fine, whatever..." ("base", xpos="far_left", ypos="head") + gen "Oh, you little slut. You nasty little slut!" ("base", xpos="far_left", ypos="head") + her "......................." ("angry", "happyCl", "worried", "mid", cheeks="blush") + call nar(">You start to stroke your cock even harder...") + gen "Yes, I know you want this! Yes!" ("angry", xpos="far_left", ypos="head") + her "................" ("angry", "happyCl", "worried", "mid", cheeks="blush") + + ">You are about to cum..." + + menu: + "-Hold it as promised-": + gen "Oh, alright..." ("base", xpos="far_left", ypos="head") + gen "I'd better stop now I suppose..." ("base", xpos="far_left", ypos="head") + gen "(Fuck me that hurts...)" ("angry", xpos="far_left", ypos="head") + her "..............." ("angry", "happyCl", "worried", "mid", cheeks="blush") + show screen blkfade + with d3 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + ">Hermione quickly scoots around your desk and covers up..." + + return + + "-Just start cumming-": + gen "*Argh*! You whore!" ("angry", xpos="far_left", ypos="head") + her "Proff--?" ("scream", "wide", "base", "stare", cheeks="blush") + call cum_block + gen "*Argh*! YES!" ("angry", xpos="far_left", ypos="head") + hide screen bld1 + with d1 + + $ hermione.set_cum(breasts="light") + call her_chibi_scene("grope_tits_cum") + with d5 + + call cum_block + $ hermione.set_cum(breasts="heavy") + pause 1.0 + $ hermione.set_cum(body="light") + + call ctc + + + + her "[genie_name], no, you promised!" ("scream", "base", "angry", "mid", cheeks="blush",emote="angry") + gen "Oh, this is great, yes..." ("angry", xpos="far_left", ypos="head") + + call her_chibi_scene("grope_tits_cum_done") + + her "[genie_name], how could you...?" ("angry", "squint", "base", "mid", cheeks="blush") + gen "Oh, this was quite amazing..." ("base", xpos="far_left", ypos="head") + + her "" ("disgust", "narrow", "base", "down", xpos="mid", ypos="base") + call ctc + + her "My body..." + her "It's been defiled..." + gen "Don't worry, I will give you your house points, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "You did good." ("base", xpos="far_left", ypos="head") + + her "................" + her "I need to clean myself up..." + + hide hermione_main + show screen blkfade + with d3 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.wear("all") + $ hermione.set_cum(None) + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + pause .8 + + hide screen blkfade + with d5 + + her "" ("angry", "base", "angry", "mid") + call ctc + + her "How could you do this to me, [genie_name]?!" + her "You gave me your word!" + hide hermione_main + with d3 + + $ her_mood += 45 + + return + + + +### Tier 4 ### + +label hg_pf_admire_breasts_T4: + + call hg_pf_admire_breasts_transition + + menu: + "-Break your promise. Grab the tits!-": + call hg_pf_admire_breasts_T4_touch + + "-Keep promise. Admire visually-": + call hg_pf_admire_breasts_T4_look + + "-Start jerking off-": + call hg_pf_admire_breasts_T4_masturbate + + jump end_hg_pf_admire_breasts + +label hg_pf_admire_breasts_T4_look: # Call label + ">You take a long look at Hermione's naked tits..." + # elif her_whoring >= 12: + + call ctc + + menu: + "\"You have great tits, [hermione_name].\"": + her "You really think so [genie_name]?" ("annoyed", "base", "base", "mid") + her "I am glad you like them, [genie_name]..." ("base", "closed", "base", "mid") + "\"Your tits are alright I suppose...\"": + her "*huh*?" ("annoyed", "base", "base", "mid") + her "Does this mean you don't like them, [genie_name]?" + her "I'm sorry..." ("disgust", "narrow", "base", "down") + + call blktone + ">You stare at her breasts for a while longer..." + call hide_blktone + call ctc + + gen "Alright, we're done here, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "............." + pause.5 + + #End Admiring + hide screen blktone + hide screen bld1 + + return + +label hg_pf_admire_breasts_T4_touch: # Call label + # Event Also Succeeds + # elif her_whoring >= 12: + hide hermione_main + show screen blkfade + with d3 + + ">You reach out and dig your fingers into the girl's ample flesh..." + her "[genie_name], what are you doing?" ("mad", "wide", "base", "stare", cheeks="blush") + + # Start Groping + call her_chibi_scene("grope_tits") + call ctc + + call bld + gen "Relax, [hermione_name]. Just stand still!" ("base", xpos="far_left", ypos="head") + her "But..." ("disgust", "narrow", "base", "down", cheeks="blush") + her "*Ah*...{heart}" ("shock", "happyCl", "worried", "mid") + her "I didn't agree to this..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "But you like it, don't you?" ("base", xpos="far_left", ypos="head") + + if her_whoring >= 17: + her "I love it [genie_name]!{heart}" ("open", "base", "base", "R", cheeks="blush") + else: + her "I do not, [genie_name]!{heart}" ("shock", "happyCl", "worried", "mid") + + call blktone + ">You give her tits a couple of firm squeezes..." + call hide_blktone + + if her_whoring >= 17: + her "[genie_name], you promised not to touch..." ("base", "base", "base", "R", cheeks="blush") + gen "I know, I know... But it's hard to resist..." ("base", xpos="far_left", ypos="head") + her ".................{heart}{heart}{heart}" ("base", "narrow", "base", "up", cheeks="blush") + else: + her "[genie_name], you promised not to touch..." ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "I know, I know... But it's hard to resist..." ("base", xpos="far_left", ypos="head") + her "................." ("angry", "base", "angry", "mid", cheeks="blush") + + her ".................... *Ah*...{heart}" ("base", "narrow", "base", "up", cheeks="blush") + her "[genie_name], you need to stop now..." ("base", "narrow", "base", "up", cheeks="blush") + gen "Just a bit longer..." ("base", xpos="far_left", ypos="head") + + call nar(">You keep on massaging the girl's breasts...") + + her "[genie_name]... please, stop this..." ("open", "narrow", "base", "up", cheeks="blush") + gen "Why? Because you like it too much?" ("base", xpos="far_left", ypos="head") + if her_whoring < 17: + her "No it's not that..." ("base", "base", "base", "R", cheeks="blush") + her "I mean..." ("open", "base", "base", "R", cheeks="blush") + + call nar(">You pull the tits in opposite directions and then squish them together...") + + her "*Ah*...{heart} [genie_name], I really need to go..." ("base", "narrow", "base", "up", cheeks="blush") + if game.daytime: + her "That's right... the classes are about to start..." ("open", "base", "base", "R", cheeks="blush") + else: + her "It is getting late..." ("open", "base", "base", "R", cheeks="blush") + + gen "Well, alright..." ("base", xpos="far_left", ypos="head") + show screen blkfade + with d5 + + ">You let go of the girl's breasts..." + + $ hermione.wear("all") #No sound since she might be naked + call her_chibi_scene("reset", "desk", "base") + + hide screen blkfade + with d5 + + if her_whoring >= 17: + her "You will have to make it up to me for breaking your promise, [genie_name]." ("base", "base", "base", "R", cheeks="blush") + else: + her "Please don't think I forgot that you broke your promise, [genie_name]." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + gen "Right..." ("base", xpos="far_left", ypos="head") + + return + +label hg_pf_admire_breasts_T4_masturbate: # Call label + # elif her_whoring >= 12: + hide hermione_main + show screen blkfade + with d3 + + ">You take your cock out and start stroking it..." + her "[genie_name]?" ("base", "narrow", "base", "up", cheeks="blush") + ">You stare at Hermione's breasts with hunger..." + + # Start Jerking off. + hide screen bld1 + hide screen blktone + call her_chibi_scene("grope_tits_jerk_off", trans=fade) + call ctc + + if her_whoring < 17: + her "[genie_name], actually I never agreed to this..." ("shock", "happyCl", "worried", "mid") + gen "What are you complaining about, [hermione_name]?" ("base", xpos="far_left", ypos="head") + gen "I'm not even touching you..." ("base", xpos="far_left", ypos="head") + her "Yes, but you are... touching yourself, [genie_name]." ("clench", "happyCl", "worried", "mid") + gen "Just stand still, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "It will be over soon." ("base", xpos="far_left", ypos="head") + her ".................." ("angry", "happyCl", "worried", "mid") + gen "Yes... Yes, like this..." ("base", xpos="far_left", ypos="head") + gen "Yes, your tits all exposed..." ("base", xpos="far_left", ypos="head") + her ".............." ("disgust", "narrow", "base", "down", cheeks="blush") + her "well, so be it..." ("disgust", "base", "base", "R", cheeks="blush") + her "But you must promise me not to..." ("soft", "base", "base", "R", cheeks="blush") + her "Not to... *Ehm*..." ("open", "base", "base", "R", cheeks="blush") + her "Not to discharge..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "Not on me, [genie_name]..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Fine, whatever..." ("base", xpos="far_left", ypos="head") + gen "Oh, you little slut. You nasty little slut!" ("base", xpos="far_left", ypos="head") + her "......................." ("disgust", "narrow", "base", "down", cheeks="blush") + call nar(">You start to stroke your cock even harder...") + gen "Yes, I know you want this! Yes!" ("angry", xpos="far_left", ypos="head") + her "................" ("disgust", "narrow", "base", "down", cheeks="blush") + + else: # Different posing than above. + her "*Ah*..." ("base", "narrow", "base", "up", cheeks="blush") + her "It's so big..." ("open", "base", "base", "R", cheeks="blush") + her "You just couldn't help yourself, could you [genie_name]?" ("base", "base", "base", "R", cheeks="blush") + her ".................." ("base", "narrow", "base", "up", cheeks="blush") + gen "Yes... Yes, just like that..." ("base", xpos="far_left", ypos="head") + gen "... with your tits all exposed..." ("base", xpos="far_left", ypos="head") + her ".............." ("base", "narrow", "base", "up", cheeks="blush") + her "well, so be it..." ("open", "base", "base", "R", cheeks="blush") + her "But you must promise me not to..." ("soft", "base", "base", "R", cheeks="blush") + her "Not to... *Ehm*..." ("open", "base", "base", "R", cheeks="blush") + her "Not to cum on me, [genie_name]..." ("base", "narrow", "base", "up", cheeks="blush") + gen "Fine, whatever..." ("base", xpos="far_left", ypos="head") + gen "Oh, you little slut. You nasty little slut!" ("base", xpos="far_left", ypos="head") + her "......................." ("base", "narrow", "base", "up", cheeks="blush") + call nar(">You start to stroke your cock even harder...") + gen "Yes, I know you want this! Yes!" ("angry", xpos="far_left", ypos="head") + her "................" ("base", "narrow", "base", "up", cheeks="blush") + + # Genie cums. + menu: + gen "*Argh*! (I'm about to cum!)" ("angry", xpos="far_left", ypos="head") + "-Hold it in-": + gen "Oh, alright..." ("base", xpos="far_left", ypos="head") + gen "I'd better stop now I suppose..." ("base", xpos="far_left", ypos="head") + her "..............." ("disgust", "narrow", "base", "down", cheeks="blush") + her "*Ehm*... I read that that is bad for you, [genie_name]..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + her "It is bad for your health to just hold it in like this..." ("angry", "closed", "worried", "mid", cheeks="blush") + her "*Ehm*..." ("disgust", "narrow", "base", "down", cheeks="blush") + her "If you want to you could just aim it--" ("open", "closed", "base", "R", cheeks="blush") + gen "*Argh*! You whore!" ("angry", xpos="far_left", ypos="head") + her "???" ("mad", "wide", "base", "stare", cheeks="blush") + gen "*Argh*! YES!" ("angry", xpos="far_left", ypos="head") + + call cum_block + $ hermione.set_cum(breasts="light") + call her_chibi_scene("grope_tits_cum") + with d5 + + call cum_block + $ hermione.set_cum(breasts="heavy") + pause 1.0 + $ hermione.set_cum(body="light") + + call bld + her "[genie_name], I didn't mean that you could release your... semen on me, [genie_name]..." ("angry", "happyCl", "worried", "mid", cheeks="blush",emote="sweat") + gen "Oh, this is great, yes..." ("angry", xpos="far_left", ypos="head") + + call her_chibi_scene("grope_tits_cum_done") + + her "..." ("angry", "narrow", "base", "down", cheeks="blush") + her "Well, what's done is done I suppose..." ("open", "narrow", "base", "down", cheeks="blush") + gen "Oh, this was quite amazing..." ("base", xpos="far_left", ypos="head") + + her "" ("disgust", "narrow", "base", "down") + call ctc + + her "My body is all sticky though..." + gen "Don't worry, I will give you your house points, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "You did good." ("base", xpos="far_left", ypos="head") + + her "Thank you [genie_name]." ("base", "closed", "base", "mid") + her "Now I need to clean myself up..." ("annoyed", "closed", "base", "mid") + + show screen blkfade + with d5 + + $ hermione.set_cum(None) + $ hermione.wear("all") #No sounds since she might be naked + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + pause .8 + + hide screen blkfade + with d5 + + her "" ("base", "base", "base", "mid") + call ctc + her "Well, I suppose this should do for now..." + + return + + "-Just start cumming-": + gen "*Argh*! You whore!" ("angry", xpos="far_left", ypos="head") + her "???" ("mad", "wide", "base", "stare", cheeks="blush") + gen "*Argh*! YES!" ("angry", xpos="far_left", ypos="head") + + call cum_block + $ hermione.set_cum(breasts="light") + call her_chibi_scene("grope_tits_cum") + with d5 + + call cum_block + $ hermione.set_cum(breasts="heavy") + pause 1.0 + $ hermione.set_cum(body="light") + + call ctc + + her "*Ah*...{heart} It's so hot...{heart}" ("clench", "happyCl", "worried", "mid", cheeks="blush") + her "[genie_name], you promised..." ("angry", "happyCl", "worried", "mid", cheeks="blush", emote="sweat") + gen "Oh, this is great, yes..." ("angry", xpos="far_left", ypos="head") + + call her_chibi_scene("grope_tits_cum_done") + + her "..." ("angry", "narrow", "base", "down", cheeks="blush") + her "Well, what's done is done I suppose..." ("open", "narrow", "base", "down", cheeks="blush") + gen "Oh, this was quite amazing..." ("base", xpos="far_left", ypos="head") + + her "" ("disgust", "narrow", "base", "down", xpos="mid", ypos="base") + call ctc + + her "My body is all covered in semen though..." + gen "Don't worry, it looks good on you." ("base", xpos="far_left", ypos="head") + gen "You did great." ("base", xpos="far_left", ypos="head") + + her "Thank you [genie_name]." ("open", "closed", "base", "mid") + her "Now I need to clean myself up..." ("annoyed", "closed", "base", "mid") + call ctc + + show screen blkfade + with d3 + + $ hermione.set_cum(None) + $ hermione.wear("all") #No sounds since she might be naked + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + pause .8 + + hide screen blkfade + with d5 + + her "" ("base", "base", "base", "mid") + call ctc + her "Well, I suppose this should do for now..." + + return diff --git a/game/scripts/characters/hermione/events/favors/suck_it.rpy b/game/scripts/characters/hermione/events/favors/suck_it.rpy new file mode 100644 index 00000000..8498724a --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/suck_it.rpy @@ -0,0 +1,1866 @@ + + +### Hermione Blowjob ### + +label hg_pf_blowjob: + + if hg_pf_blowjob.counter == 0: + gen "{size=-4}(Should I ask her for a blowjob?){/size}" ("base", xpos="far_left", ypos="head") + else: + gen "{size=-4}(Should I ask the girl to give me another blowjob?){/size}" ("base", xpos="far_left", ypos="head") + + if hg_pf_blowjob.counter < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + # Start Event + $ current_payout = 55 + $ mouth_full_of_cum = False + $ hg_pf_blowjob.start() + + + # End Event + label end_hg_pf_blowjob: + + # Setup + stop music fadeout 1.0 + call hide_characters + show screen blkfade + with d3 + + $ hermione.set_cum(None) + $ hermione.wear("all") + + call her_chibi("stand","desk","base", flip=False) + call gen_chibi("sit_behind_desk") + + hide screen blkfade + if her_mood != 0: + if mouth_full_of_cum: + her "" ("full_cum", "base", "angry", "mid", cheeks="blush", tears="mascara", xpos="mid", ypos="base", trans=fade) + else: + her "" ("annoyed", "base", "angry", "mid", xpos="mid", ypos="base", trans=fade) + else: + if mouth_full_of_cum: + her "" ("full_cum", "base", "base", "mid", cheeks="blush", tears="mascara", xpos="mid", ypos="base", trans=fade) + else: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + if her_tier < 6: + gen "Yes, [hermione_name]. {number=current_payout} points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += current_payout + else: + gen "You can go now, [hermione_name]." ("base", xpos="far_left", ypos="head") + + if mouth_full_of_cum: + her "..." ("full_cum", "narrow", "annoyed", "up", cheeks="blush", tears="mascara") + else: + her "Thank you, [genie_name]..." ("soft", "base", "base", "R") + + # Hermione leaves + call her_walk("door", "base") + + call her_chibi("leave") + + + # Increase level + if her_tier == 5: + if her_whoring < 21: # Points til 21 + $ her_whoring +=1 + if her_tier == 6: + if her_whoring < 24: # Points til 24 + $ her_whoring += 1 + + $ hg_blowjob.trigger = True + + jump end_hermione_event + +### Fail Events ### + +label hg_pf_blowjob_fail: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "I plan to grant Gryffindor {number=current_payout} house points today..." ("base", xpos="far_left", ypos="head") + gen "If you suck me off..." ("base", xpos="far_left", ypos="head") + + $ hg_pf_blowjob.fail_intentional() + + jump too_much + +### Tier 4 - Fails ### + +# Event 1 (i) - Hermione refuses. +# Event 2 (r) - Repeat. + +label hg_pf_blowjob_T4_fail_intro: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "I plan to grant Gryffindor {number=current_payout} house points today..." ("base", xpos="far_left", ypos="head") + gen "If you suck me off..." ("base", xpos="far_left", ypos="head") + her "Suck you...{w=0.3} off?" ("disgust", "wide", "base", "mid") + her "With my mouth?!" ("disgust", "wide", "base", "stare") + + if hg_kiss.trigger: + gen "Wouldn't even be the first time you've done it!" ("grin", xpos="far_left", ypos="head") + her "Yes, but..." ("disgust", "narrow", "worried", "down") + her "That was something different entirely..." ("disgust", "happyCl", "worried", "mid") + gen "How so?" ("base", xpos="far_left", ypos="head") + her "All I wanted was to get done with that favour early, so I..." ("open", "narrow", "base", "down") + her "I helped..." ("disgust", "base", "worried", "R") + gen "By sucking on my cock! Indeed you did!" ("grin", xpos="far_left", ypos="head") + her "No! I was merely stroking it... and..." ("silly", "happyCl", "worried", "mid") + her "I gave it a short kiss, but..." ("disgust", "narrow", "worried", "down", cheeks="blush") + her "I'm sorry [genie_name], but I don't think I can do \"that\"!" ("open", "base", "worried", "R", cheeks="blush") + else: + gen "Preferably..." ("base", xpos="far_left", ypos="head") + gen "But I'm always open to try out new things!" ("grin", xpos="far_left", ypos="head") + her "Are you out of your mind?!" ("scream", "closed", "angry", "mid") + + her "I should leave..." ("disgust", "narrow", "base", "down", cheeks="blush") + + call her_walk(action="leave") + + call bld + gen "Tough luck..." ("base", xpos="far_left", ypos="head") + + $ her_mood += 6 + $ hg_pf_blowjob.fail() + + jump end_hermione_event + +label hg_pf_blowjob_T4_fail_repeat: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "I plan to grant Gryffindor {number=current_payout} house points today..." ("base", xpos="far_left", ypos="head") + her "And let me guess..." ("open", "closed", "angry", "mid") + her "You'd like me to \"suck you off\" for it?" ("open", "base", "angry", "mid") + gen "That is correct!" ("grin", xpos="far_left", ypos="head") + her "I refuse..." ("open", "closed", "base", "mid") + gen "It's only a blowjob, girl..." ("base", xpos="far_left", ypos="head") + + if hg_kiss.trigger: + gen "It's not like you haven't done it before..." ("base", xpos="far_left", ypos="head") + her "Are you talking about the kiss I gave it?" ("open", "base", "angry", "mid") + her "That was something different entirely..." ("open", "closed", "base", "mid") + gen "How so?" ("base", xpos="far_left", ypos="head") + her "I wanted to get done with that favour early, so I helped a bit." ("open", "narrow", "angry", "R") + gen "By sucking on my cock! Indeed you did!" ("grin", xpos="far_left", ypos="head") + her "It was nothing more than a short kiss..." ("annoyed", "base", "angry", "mid") + gen "Still counts as a blowjob..." ("base", xpos="far_left", ypos="head") + + her "[genie_name], I've told you this last time..." ("open", "closed", "base", "mid") + her "I refuse to do this sort of thing..." ("normal", "base", "angry", "mid") + her "I have to go now..." ("annoyed", "narrow", "angry", "R") + + call her_walk(action="leave") + + $ her_mood += 6 + $ hg_pf_blowjob.fail() + + jump end_hermione_event + +### Tier 5 ### + +# Event 1 (i) - Hermione is ok with it. +# Event 2 (i) - Hidden blowjob with Snape watching. +# Event 3 (r) - Normal blowjob with choices. + +label hg_pf_blowjob_T5_intro_E1: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + gen "I plan to grant Gryffindor {number=current_payout} house points today..." ("base", xpos="far_left", ypos="head") + gen "If you suck me off..." ("base", xpos="far_left", ypos="head") + her "Oh..." ("open", "narrow", "worried", "down") + her "Alright." ("base", "narrow", "worried", "down") + gen "Really? Just like that?" ("base", xpos="far_left", ypos="head") + her "Yes. I know I'm supposed to feel outraged..." ("angry", "narrow", "base", "down") + her "But somehow I do not..." ("angry", "base", "base", "mid") + her "I suppose I am just glad that I can help out my house..." ("base", "narrow", "worried", "down") + her "And if to do that I must put your penis in my mouth, then so be it..." ("upset", "closed", "base", "mid") + gen "Well, alright then." ("base", xpos="far_left", ypos="head") + her "Although, now when I say it out loud like this..." ("angry", "narrow", "base", "down") + gen "Too late! You already said \"yes\"!" ("base", xpos="far_left", ypos="head") + her "I know..." ("grin", "happyCl", "worried", "mid", emote="sweat") + call her_walk("desk", "base", reduce=0.8) + call blkfade + + jump hg_pf_blowjob_1 + + +label hg_pf_blowjob_T5_intro_E2: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("base", "base", "base", "mid") + gen "How about another blowjob?" ("base", xpos="far_left", ypos="head") + + call play_music("playful_tension") # SEX THEME. + her "[genie_name], how dare you propose such a thing to one of your pupils!" ("scream", "base", "angry", "mid", emote="angry") + gen "Wha--...?" ("base", xpos="far_left", ypos="head") + her "This is unbecoming of a man of your standing." ("scream", "base", "angry", "mid", emote="angry") + her "You should be ashamed of yourself [genie_name]!" ("angry", "base", "angry", "mid") + menu: + gen "???" ("base", xpos="far_left", ypos="head") + "\"Fine. No points to you then! Leave!\"": + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "[genie_name], calm down, please." ("grin", "happyCl", "worried", "mid", emote="sweat") + gen "You are dismissed, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "[genie_name], please, I didn't mean any of the things I said." ("grin", "happyCl", "worried", "mid", emote="sweat") + gen "What?" ("base", xpos="far_left", ypos="head") + + "\"*Ehm*... I am sorry?\"": + stop music fadeout 1.0 + her "*Giggle*" ("base", "base", "base", "mid") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "I got you... [genie_name]." ("grin", "happyCl", "worried", "mid", emote="sweat") + gen "What?" ("base", xpos="far_left", ypos="head") + + "-Two can play that game...-": + stop music fadeout 1.0 + gen "Oh nooooo... what am I ever going to do now." ("base", xpos="far_left", ypos="head") + her "........?" ("soft", "base", "base", "mid") + gen "A student caught me in the act and will report me to the ministry of magic." ("base", xpos="far_left", ypos="head") + gen "I guess I'll have to sign a resignation and step down being a headmaster." ("base", xpos="far_left", ypos="head") + her "[genie_name]?!" ("open", "wide", "worried", "mid") + call play_music("chipper_doodle") # HERMIONE'S THEME. + gen "*he-he* If you could only see your face." ("grin", xpos="far_left", ypos="head") + her "what.." ("soft", "wide", "worried", "mid") + gen "I got you." ("base", xpos="far_left", ypos="head") + her "........" ("annoyed", "base", "angry", "R") + her "*sigh*" ("soft", "closed", "base", "mid") + + her "Well, so much has happened lately..." ("base", "base", "base", "mid") + her "I had so many new experiences that kind of changed the way I look at things..." + her "So I was just trying to imagine how the \"old me\" would've reacted to this." + gen "So..." ("base", xpos="far_left", ypos="head") + gen "You were messing with me then?" ("angry", xpos="far_left", ypos="head") + her "*Ehm*... I'm sorry [genie_name], I didn't mean to..." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "You nasty little slut! You must be punished!" ("angry", xpos="far_left", ypos="head") + gen "I'll punish you with my cock!" ("grin", xpos="far_left", ypos="head") + her "..............................." ("angry", "happyCl", "worried", "mid", emote="sweat") + + jump hg_pf_hidden_blowjob # Snape + +label hg_pf_blowjob_T5_repeat: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + call play_music("playful_tension") # SEX THEME. + gen "How would you like to give me another blowjob, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I suppose I can do that..." ("base", "narrow", "worried", "down") + gen "Come here then!" ("grin", xpos="far_left", ypos="head") + + jump hg_pf_blowjob_1 + +### Tier 6 ### + +# Event 1 (i) - New event with a couple of choices. +# Event 2 (r) - Hidden blowjob (Snape, Tonks, or Luna.) +# Event 3 (r) - Blowjob with choices. + +label hg_pf_blowjob_T6_intro_E1: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "Tell me, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Have you been behaving yourself lately?" ("grin", xpos="far_left", ypos="head") + her "Me? Of course, [genie_name]." ("open", "base", "base", "mid") + her "I'm always trying to behave my best at school--" ("open", "base", "base", "R") + + her "Oh...{w} I mean... No, Sir!" ("soft", "narrow", "annoyed", "up") + call play_music("playful_tension") # SEX THEME. + her "I've been a very, very bad girl, [genie_name]!" ("soft", "narrow", "base", "mid_soft") + gen "..............." ("grin", xpos="far_left", ypos="head") + gen "Tell me, what wrongs did you do, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("disgust", "narrow", "worried", "down") + her "I sucked off my headmaster's cock..." ("soft", "narrow", "worried", "down") + gen "Yes you did!" ("grin", xpos="far_left", ypos="head") + her "And not just to earn those points..." ("disgust", "happyCl", "worried", "mid") + gen "What? Why else?" ("base", xpos="far_left", ypos="head") + her "I did it because I like doing it..." ("disgust", "narrow", "base", "R_soft") + her "I like sucking cock, [genie_name]!" ("soft", "narrow", "base", "mid_soft", cheeks="blush") + gen "Yes! You dirty slut!" ("angry", xpos="far_left", ypos="head") + gen "Girls like you need to be punished!" ("angry", xpos="far_left", ypos="head") + gen "Don't you think so too, Miss Granger?" ("grin", xpos="far_left", ypos="head") + her "..............................." ("clench", "narrow", "base", "down", cheeks="blush") + her "Yes, [genie_name]..." ("soft", "narrow", "base", "mid_soft", cheeks="blush") + her "I need to be punished!" ("base", "narrow", "base", "mid_soft") + gen "Beg me for it, you slut!" ("angry", xpos="far_left", ypos="head") + her "Please punish me with your cock, [genie_name]!" ("soft", "narrow", "base", "mid_soft") + her "I beg you!" ("soft", "narrow", "base", "mid_soft") + gen "Come here, you dirty little minx!" ("angry", xpos="far_left", ypos="head") + her "{heart}{heart}{heart}" ("base", "narrow", "annoyed", "up") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + jump hg_pf_blowjob_2 + +label hg_pf_blowjob_T6_hidden_repeat: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + call play_music("playful_tension") # SEX THEME. + gen "Suck my dick, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Anything for you, [genie_name]..." ("base", "narrow", "base", "mid_soft") + + jump hg_pf_hidden_blowjob + +label hg_pf_blowjob_T6_repeat: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + call play_music("playful_tension") # SEX THEME. + gen "Suck my dick, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Anything for you, [genie_name]..." ("base", "narrow", "base", "mid_soft") + + jump hg_pf_blowjob_2 + +### First Blowjob ### + +label hg_pf_blowjob_1: + stop music fadeout 4.0 + call hide_characters + show screen blkfade + with d3 + + call her_chibi_scene("bj_pause", trans=d9) + pause.8 + + call play_music("playful_tension") # SEX THEME. + call her_chibi_scene("bj", trans=d9) + call ctc + + her "*Slurp*! *Gulp*! *Slurp*!" ("open_wide_tongue", ypos="head", flip=False) + gen "Yes..." ("base", xpos="far_left", ypos="head") + gen "Try to take it deeper now..." ("base", xpos="far_left", ypos="head") + her "*Gulp*! *Gobble*! *Gobble*!" + gen "Yes, like that. Good." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gltch*! *Gulp*!" + gen "Yes, that's a good girl." ("base", xpos="far_left", ypos="head") + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + "\"Whatever happened to your \"MRM\" thing?\"": + her "*Slurp*?" + + call her_chibi_scene("bj_pause") + her "Oh, well..." ("angry", "narrow", "base", "down") + her "We are still active, but..." + + call her_chibi_scene("bj") + her "*Slurp*! *Gobble*!" ("open_wide_tongue", "narrow", "annoyed", "up") + + call her_chibi_scene("bj_pause") + her "But we are not getting as popular and as much support as I thought we would..." ("angry", "wink", "base", "mid") + + call her_chibi_scene("bj") + her "*Slurp*! *Gulp*! *Gulp*!" ("open_wide_tongue", "narrow", "worried", "down") + gen "Oh... This is good..." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "So you don't mind selling me sexual favours, letting me play with your tits and such..." ("base", xpos="far_left", ypos="head") + her "*Gobble*! *Gltch*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "And then condemn such behaviour in front of the other students." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Gulp*!" ("open_wide_tongue", "narrow", "worried", "down") + gen "You perverted, little hypocrite." ("base", xpos="far_left", ypos="head") + her "*Gulp*--" ("open_wide_tongue", "narrow", "base", "up") + + call her_chibi_scene("bj_pause") + her "That's not what we stand for, [genie_name]." ("angry", "base", "base", "mid") + gen "What do you mean?" ("base", xpos="far_left", ypos="head") + her "The \"MRM\" is about gender equality." ("open", "closed", "base", "mid") + her "We are not as much against selling sexual favours to the teachers..." + her "As we are against the gender inequality that the selling of sexual favour creates..." + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "This conversation is starting to bore me..." ("base", xpos="far_left", ypos="head") + gen "Suck on my cock some more before we continue." ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]." ("soft", "narrow", "annoyed", "up") + + call her_chibi_scene("bj", trans=d3) + pause.8 + her "*Gobble*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + gen "Yes, much better..." ("base", xpos="far_left", ypos="head") + gen "But you still disapprove of selling the favours, right?" ("base", xpos="far_left", ypos="head") + her "*Slurp*--" ("open_wide_tongue", "narrow", "base", "up") + + call her_chibi_scene("bj_pause") + her "Yes, it is frowned upon..." ("upset", "closed", "base", "mid") + gen "And yet, you are the biggest offender by far." ("base", xpos="far_left", ypos="head") + her "But what choice do I have?" ("upset", "closed", "base", "mid") + her "I've been put in a very difficult position..." + gen "The cock, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Right, sorry..." ("upset", "closed", "base", "mid") + + call her_chibi_scene("bj", trans=d3) + pause.8 + her "*Slurp*! *Gulp*! *Gltch*!" ("open_wide_tongue", "narrow", "base", "up") + her "*Slurp*--" ("open_wide_tongue", "narrow", "annoyed", "up") + + call her_chibi_scene("bj_pause") + her "This one time we had a meeting right after I sold you another favour, [genie_name]." ("angry", "base", "base", "mid") + her "I had to give a speech with my clothes all messy and stained." + her "It felt awful that I had to do that..." + gen "You did enjoy it a little bit though..." ("base", xpos="far_left", ypos="head") + her "Well..." ("angry", "narrow", "base", "down") + gen "Just admit it." ("base", xpos="far_left", ypos="head") + her "..............." ("angry", "base", "base", "mid") + gen "Yes, I knew it. You took pleasure in it, you little perv." ("base", xpos="far_left", ypos="head") + her "I suppose it was embarrassing and exciting at the same time..." ("angry", "narrow", "base", "down") + her "And it made me feel even worse about myself." + gen "You poor thing." ("base", xpos="far_left", ypos="head") + gen "Cock back in the mouth." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]." ("angry", "base", "base", "mid") + call her_chibi_scene("bj", trans=d3) + pause.8 + + "\"Your parents must be proud of you...\"": + her "*Slurp*--" + + call her_chibi_scene("bj_pause") + her "Yes, I believe they are..." ("smile", "happyCl", "base", "mid") + her "With me being an excellent student despite being muggle-born and all..." ("base", "happyCl", "base", "mid") + her "Although at first they were against sending me to some \"Bogus boarding school\"." ("angry", "base", "base", "mid") + her "Took some effort to convince them that \"Hogwarts\" is a respectable institution." ("base", "happyCl", "base", "mid") + gen "Yes, a respectable institution indeed." ("base", xpos="far_left", ypos="head") + gen "Cock back in your mouth, [hermione_name]." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj", trans=d3) + pause.8 + her "*Slurp*! *Gulp*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + gen "Yes, just keep at it for a while..." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gltch*! *Gulp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Good, good..." ("base", xpos="far_left", ypos="head") + gen "So, what would your folks say if they were to see you now, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "*Slurp*--" ("open_wide_tongue", "narrow", "annoyed", "up") + + call her_chibi_scene("bj_pause") + her "They would not understand of course..." ("open", "narrow", "worried", "down") + her "But I do not care." + her "I am not afraid to \"get my hands dirty\" and do what needs to be done." ("upset", "closed", "base", "mid") + gen "A bit rebellious, aren't you?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... I suppose I am." ("angry", "wink", "base", "mid") + gen "Back to sucking then. Teach your folks a lesson." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj", trans=d3) + pause.8 + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + + "\"Tell me about the Gryffindor house.\"": + her "*Slurp*--" + + call her_chibi_scene("bj_pause") + her "What can I say that you don't already know, [genie_name]?" ("soft", "base", "base", "R") + gen "Yes... *Ehm*... I know everything of course." ("base", xpos="far_left", ypos="head") + gen "But I want to see how much you know." ("base", xpos="far_left", ypos="head") + gen "To test your knowledge on the subject." ("base", xpos="far_left", ypos="head") + call nar(">As soon as you mention \"test\" Hermione's eyes light up with excitement.") + her "OK. But I need a moment to gather my thoughts..." ("smile", "happyCl", "base", "mid", emote="happy") + + call her_chibi_scene("bj", trans=d3) + pause.8 + her "*Slurp*! *Slurp*! *Gulp*!" ("open_wide_tongue", "narrow", "base", "up") + gen "Oh, yes... Take as much time as you need, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gulp*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + her "*Gulp*--" ("open_wide_tongue", "narrow", "annoyed", "up") + + call her_chibi_scene("bj_pause") + her "The Gryffindor house was founded by Godric Gryffindor, thus the name." ("open", "narrow", "worried", "down") + her "The heraldic animal of Gryffindor is the lion..." + her "And its colours are red and gold." ("open", "closed", "base", "mid") + + call her_chibi_scene("bj") + her "*Gulp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + + call her_chibi_scene("bj_pause") + her "Professor Minerva McGonagall is the head of our house." ("open", "closed", "base", "mid") + her "The Gryffindor house emphasises the traits of courage..." + her "As well as \"daring, nerve, and chivalry\"..." + her "And thus its members are generally regarded as brave but reckless..." + + call her_chibi_scene("bj") + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + + call her_chibi_scene("bj_pause") + her "Gryffindor corresponds roughly to the element of fire..." ("open", "closed", "base", "mid") + her "And for that reason the colours of red and gold were chosen." + + call her_chibi_scene("bj") + her "*Slurp*! *Gulp*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Well, I thought I could turn this around somehow to make fun of you..." ("base", xpos="far_left", ypos="head") + her "*Slurp* ...?" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Well, with your house representing courage and righteousness and such..." ("base", xpos="far_left", ypos="head") + gen "And you being a nasty slut..." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj_pause") + her "[genie_name]!" ("scream", "base", "angry", "mid", emote="angry") + gen "But to be honest..." ("base", xpos="far_left", ypos="head") + gen "\"Daring, nerve, fire, recklessness\"..." ("base", xpos="far_left", ypos="head") + gen "That sort of describes your personality quite well..." ("base", xpos="far_left", ypos="head") + her "[genie_name]..." ("base", "base", "base", "mid") + + call her_chibi_scene("bj", trans=d3) + pause.8 + her "*Gobble*!! *Gltch*!! *Gobble*!!!" ("open_wide_tongue", "narrow", "base", "up") + gen "*Argh* {w=0.5}Good...{w=0.5} girl..." ("angry", xpos="far_left", ypos="head") + + call bld + gen "Keep going..." ("base", xpos="far_left", ypos="head") + her "*Gobble*! *Slurp*! *Slurp*!" + gen "Good... Back and forth, back and forth... slut." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + her "*Slurp*--" ("open_wide_tongue", "narrow", "annoyed", "up") + + call her_chibi_scene("bj_pause") + her "[genie_name]... I am a... whore." ("open", "narrow", "worried", "down") + gen "What?" ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj") + her "*Slurp-Slurp-Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + + call her_chibi_scene("bj_pause") + her "I truly am a slut and deeply enjoy sucking your cock." ("angry", "base", "base", "mid") + gen "Oh, yes, yes... Say more things like that." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj", trans=d3) + pause.8 + her "*Slurp*! *Gulp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + + call her_chibi_scene("bj_pause") + her "Please, [genie_name]. Cum for me." ("soft", "narrow", "annoyed", "up") + with hpunch + gen "*Argh*! You little...!!!" ("angry", xpos="far_left", ypos="head") + gen "{size=-4}(Here it comes. Should I give her a warning?){/size}" ("angry", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-Warn her-": + her "Yes, I love to suck and--" ("soft", "narrow", "annoyed", "up") + gen "Heads up, [hermione_name]! Here it comes!" ("angry", xpos="far_left", ypos="head") + her "!!!" ("angry", "wide", "base", "stare") + + call her_chibi_scene("bj", trans=d5) + pause.8 + + call bld + call nar(">Hermione quickly puts your cock back in her mouth and continues to suck on it with great passion.") + + call cum_block + call her_chibi_scene("bj_cum_in", trans=d5) + pause.8 + + call cum_block + call bld + gen "{size=+7}*ARGH*!{/size}" ("angry", xpos="far_left", ypos="head") + her "*Gulp!-Gulp!-Gulp*!" ("open_wide_tongue_cum", "narrow", "annoyed", "up") + with hpunch + gen "And some more!" ("angry", xpos="far_left", ypos="head") + her "*Gulp*! *Gulp*! *Gulp*!" ("open_wide_tongue_cum", "narrow", "annoyed", "up") + call bld("hide") + call ctc + + call her_chibi_scene("bj_pause", trans=d5) + pause.8 + + call bld + gen "Well, I think that's it." ("base", xpos="far_left", ypos="head") + her ".............." ("cum", "happyCl", "worried", "mid") + gen "Are you alright there, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." ("grin", "narrow", "base", "dead") + her "You came so much..." + gen "You managed to swallow it all though." ("base", xpos="far_left", ypos="head") + her "Yes... I thought I would choke..." ("grin", "narrow", "base", "dead") + her "But I made a promise to myself that I won't let go of your penis no matter what!" + gen "Good girl." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("grin", "narrow", "base", "dead") + her "But, still... You came so much..." + her "I almost feel as if I just got fed..." ("soft", "narrow", "annoyed", "up") + her "My stomach is so full..." + gen "Yes, I fed you with my cum!" ("grin", xpos="far_left", ypos="head") + + if game.daytime: + her "You did... I think I may skip lunch today..." ("soft", "narrow", "annoyed", "up") + else: + her "You did... I think I may skip supper tonight..." ("soft", "narrow", "annoyed", "up") + + her "Can I get paid now?" ("angry", "wink", "base", "mid") + + $ achievements.unlock("headlib") + + "-Don't bother-": + her "Yes, I love to suck and--" ("soft", "narrow", "annoyed", "up") + + call cum_block + gen "{size=+7}Whore!{/size}" ("angry", xpos="far_left", ypos="head") + $ hermione.set_cum(face="light") + her "!!?" ("shock", "wide", "base", "stare") + + call her_chibi_scene("bj_cum_out", trans=d5) + call ctc + + $ hermione.set_cum(face="heavy") + her "[genie_name]..." ("shock", "wide", "base", "stare") + gen "Don't you move now, [hermione_name]." ("angry", xpos="far_left", ypos="head") + $ hermione.set_cum(breasts="light") + gen "Yes, just be still and take it." ("angry", xpos="far_left", ypos="head") + gen "*Argh*! You little slut! You make me cum hard, [hermione_name]!" ("angry", xpos="far_left", ypos="head") + her ".............." ("angry", "base", "base", "mid", tears="soft") + gen "Whew..." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj_cum_out_done") + her ".............." ("normal", "happyCl", "worried", "mid") + gen "Alright, I'm done..." ("base", xpos="far_left", ypos="head") + her "................." ("open", "base", "base", "mid") + + if game.daytime: + her "My classes are about to start..." + else: + her "I just took a shower recently..." + gen "And I gave you another one." ("grin", xpos="far_left", ypos="head") + gen "Just wipe it off and you'll be alright." ("base", xpos="far_left", ypos="head") + her "............" ("open", "base", "base", "mid") + gen "Unless, you don't want to." ("base", xpos="far_left", ypos="head") + her "*huh*?" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "And would rather go outside looking like this." ("base", xpos="far_left", ypos="head") + gen "Let everyone see what a nasty little slut you are." ("base", xpos="far_left", ypos="head") + her "Of course not, [genie_name]!" ("angry", "happyCl", "worried", "mid", emote="sweat") + + stop music fadeout 1.0 + if game.daytime: + gen "You better go before you are late for your classes..." ("base", xpos="far_left", ypos="head") + else: + gen "It's getting late..." ("base", xpos="far_left", ypos="head") + + her "Yes..." ("angry", "happyCl", "worried", "mid", emote="sweat") + her "Can I get paid before I leave, [genie_name]?" ("upset", "wink", "base", "mid") + + jump end_hg_pf_blowjob + +### Hidden Blowjob ### + +label hg_pf_hidden_blowjob: + stop music fadeout 4.0 + call hide_characters + show screen blkfade + with d3 + + call her_chibi_scene("bj", trans=d9) + call ctc + + her "*Slurp*! *Slurp*! *Gulp*!" ("open_wide_tongue", "narrow", "annoyed", "up", ypos="head", flip=False) + gen "Yes, good girl..." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gobble*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + + call play_sound("knocking") + "*Knock-knock-knock*!" + her "{size=+7}!!!{/size}" ("open_wide_tongue", "narrow", "base", "up") + gen "*Hmm*?!" ("base", xpos="far_left", ypos="head") + + if game.daytime: + gen "Who could that be?" ("base", xpos="far_left", ypos="head") + else: + gen "Who could that be at this hour?" ("base", xpos="far_left", ypos="head") + + #Priority. + if hg_blowjob.ss_counter == 0: + jump hg_hidden_blowjob_snape + + elif hg_blowjob.nt_counter == 0: + jump hg_hidden_blowjob_tonks + + elif luna_unlocked and hg_blowjob.ll_counter == 0: + jump hg_hidden_blowjob_luna + + $ hg_hidden_bj_list = [] + if hg_blowjob.ss_counter >= 1: + $ hg_hidden_bj_list.append("snape") + if hg_blowjob.nt_counter >= 1: + $ hg_hidden_bj_list.append("tonks") + if hg_blowjob.ll_counter >= 1: + $ hg_hidden_bj_list.append("luna") + + #Random Pick. + $ character_choice = renpy.random.choice(hg_hidden_bj_list) + + $ renpy.jump("hg_hidden_blowjob_" + character_choice) + +label hg_hidden_blowjob_snape: + call her_chibi_scene("bj_pause", trans=d5) + pause.8 + + her "([genie_name], what should I do?)" ("shock", "wide", "base", "stare") + gen "Just keep sucking my cock, [hermione_name]. This doesn't concern you." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj", trans=d5) + pause.8 + + call play_sound("knocking") + call bld + "*Knock-knock-knock*!" + + sna "Are you there? I need to talk to you." + her "(It's professor Snape!)" ("open_wide_tongue", "base", "base", "mid") + call her_chibi_scene("bj_pause") + her "{size=-2}[genie_name], please, send him away, I beg you!{/size}" ("angry", "base", "base", "mid") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Please, come on in, Severus.\"": + pass + + "\"I am busy right now, Severus.\"": + her "{size=-2}Thank you, [genie_name].{/size}" ("angry", "base", "base", "mid") + sna "Busy? With what?" + sna "All you do is sit on you arse all day." + sna "I really need to talk to you about something." + gen "I said I am busy, Severus." ("base", xpos="far_left", ypos="head") + gen "Understood? I.. am.. \"busy\"!" ("base", xpos="far_left", ypos="head") + sna "Oh... You mean \"busy\" busy? Gotcha!" + sna "Well, I'll talk to you later then." + + jump hg_pf_blowjob_1 + + $ hg_blowjob.ss_counter += 1 + $ her_mood = 30 + + stop music fadeout 1.0 + her "{size=-2}[genie_name], no!{/size}" ("angry", "base", "angry", "mid", emote="angry") + + call nar(">Hermione gives your balls a firm twist full of frustration.") + gen "Ouch!" ("angry", xpos="far_left", ypos="head") + + call play_sound("door") + hide screen bld1 + call sna_chibi("stand","door","base") + with d3 + pause.8 + + call sna_walk("mid", "base") + pause.2 + + call play_music("snape") + sna "Good, you are here." ("snape_01", xpos="base", ypos="base") + call her_chibi_scene("bj") + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "slit", "worried", "ahegao") + sna "Listen, there is something I want to discuss..." ("snape_06") + sna "*Hmm*...?" ("snape_05") + sna "Genie? Are you alright?" + her "{size=-4}(Ginny!!? Is she here as well?!){/size}" ("open_wide_tongue", "narrow", "base", "up") + her "{size=-4}(No, please! I will die of shame!){/size}" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Yes, Severus, I am fine..." ("base", xpos="far_left", ypos="head") + her "{size=-4}(What? *Slurp*...? *Slurp*...? *Gulp*...?){/size}" ("open_wide_tongue", "narrow", "annoyed", "up") + sna "What are you... looking at?" ("snape_05") + gen "*Ehm*... Just admiring...{w=0.5} the cupboard." ("base", xpos="far_left", ypos="head") + gen "Please, continue..." ("base", xpos="far_left", ypos="head") + sna "..............." ("snape_05") + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "base", "up") + gen "Did you want to discuss something?" ("base", xpos="far_left", ypos="head") + sna "Yes. That Granger girl." ("snape_06") + her "{size=-4}(*Slurp*...! *Gobble*...! *Gulp*...!){/size}" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Oh... What about her?" ("base", xpos="far_left", ypos="head") + sna "You promised that you would take care of the little witch." ("snape_04") + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "slit", "worried", "ahegao") + sna "But she is still being a major pain in my arse!" ("snape_04") + sna "Her tactics have changed..." + sna "But the amount of grief she manages to bring me is the same..." ("snape_03") + gen "*Ngh*... I see..." ("base", xpos="far_left", ypos="head") + sna "I swear, that girl is driving me crazy!" ("snape_10") + gen "Yeah, she is-- *Ah*... Driving me crazy as well..." ("angry", xpos="far_left", ypos="head") + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "base", "up") + sna "Will you take care of this then?" ("snape_04") + gen "Yes. She'll get what she deserves." ("base", xpos="far_left", ypos="head") + sna "Good... That is all I wanted to hear." ("snape_06") + + if game.daytime: + gen "Well, have a good day, Severus." ("base", xpos="far_left", ypos="head") + sna "Yes, thank you." ("snape_06") + else: + gen "Good night, Severus." ("base", xpos="far_left", ypos="head") + sna "Right..." ("snape_06") + + stop music fadeout 1.0 + call hide_characters + hide screen bld1 + with d3 + + call sna_chibi("stand","mid","base", flip=True) + with d3 + pause.2 + + call sna_walk(action="leave") + pause.8 + + call play_music("playful_tension") # SEX THEME. + call bld + ">Hermione doesn't say a thing. Her face is crimson due to a mix of embarrassment, guilt, and excitement." + ">Seeing her being so confused and vulnerable - and yet continuing to perform her task diligently - pushes you over the edge." + gen "(Here it comes!)" ("angry", xpos="far_left", ypos="head") + + jump hg_hidden_blowjob_cumming + +label hg_hidden_blowjob_luna: #TODO Once Luna X Hermione sex scenes are added, add in dialog variations. + call her_chibi_scene("bj_pause", trans=d5) + pause.8 + + her "{size=-2}[genie_name], what should I do?{/size}" ("shock", "wide", "base", "stare") + gen "Just keep sucking my cock, [hermione_name]. This doesn't concern you..." ("base", xpos="far_left", ypos="head") + lun "Sir? Are you there? I need to talk to you." + her "(It's Luna!)" ("disgust", "wide", "base", "stare") + her "{size=-2}Please, [genie_name], send her away, I beg you!{/size}" ("shock", "happyCl", "worried", "mid") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Please, come on in, Miss Lovegood.\"": + pass + + "\"I am busy right now, Miss Lovegood.\"": + her "{size=-2}Thank you, [genie_name]{/size}." ("angry", "base", "base", "mid") + lun "Oh... I suppose I'll visit you later then, sir." + if game.daytime: + lun "Have a good day!" + else: + lun "Have a good night!" + gen "I definitely will, Miss Lovegood!" ("base", xpos="far_left", ypos="head") + + jump hg_pf_blowjob_1 + + $ hg_blowjob.ll_counter += 1 + $ her_mood += 10 + + stop music fadeout 1.0 + her "{size=-2}[genie_name], no! Why would you let-{/size}" ("angry", "base", "angry", "mid", emote="angry") + gen "{size=-2}Quiet, [hermione_name]! Unless you want to get noticed...{/size}" ("base", xpos="far_left", ypos="head") + + #Luna comes in + call lun_walk("mid", action="enter") + + lun "Hello, [lun_genie_name]." ("base", "base", "base", "mid", xpos="base", ypos="head") + gen "{size=-4}[hermione_name]...{/size}" ("base", xpos="far_left", ypos="head") + her "..." ("soft", "happy", "worried", "up") + gen "Miss Lovegood, you wouldn't believe what I'm--" ("base", xpos="far_left", ypos="head") + her "..." ("clench", "wide", "base", "mid") + call bld("hide") + pause.2 + + call her_chibi_scene("bj", trans=d5) + pause.8 + + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "happyCl", "annoyed", "up") + gen "*Ngh*!" ("angry", xpos="far_left", ypos="head") + lun "Sir?" ("soft", "base", "raised", "mid") + gen "*Ahem*... Miss Lovegood! How can I help you?" ("grin", xpos="far_left", ypos="head") + lun "I was asked to deliver you a message sir... From Professor Sprout." ("grin", "base", "base", "mid") + gen "Professor Sprout?" ("base", xpos="far_left", ypos="head") + gen "(Who was that again?)" ("base", xpos="far_left", ypos="head") + lun "Yes, she's sent me to inform you about the school's latest yield of {i}Venomous Tentacula{/i}." ("base", "base", "base", "L") + gen "(Venomous Tentacles?)" ("base", xpos="far_left", ypos="head") + her "{size=-4}(Those things are so nasty... *Slurp...* *Gulp...*){/size}" ("open_wide_tongue", "closed", "annoyed", "up") + + lun "Such feisty little plants." ("angry", "base", "annoyed", "mid") + gen "Ah...{w=0.4} Plants..." ("base", xpos="far_left", ypos="head") + lun "Yes, we've been learning how to care for them properly..." ("grin", "base", "low", "mid") + gen "So why tell me?" ("base", xpos="far_left", ypos="head") + lun "Professor sprout wanted me to inform you that they've just started sucking!" ("smile", "base", "raised", "mid") + with hpunch + gen "What?" ("base", xpos="far_left", ypos="head") + her "{size=-4}(*Slurp...* *Slurp...* *Gulp...*){/size}" ("open_wide_tongue", "squint", "base", "stare") + lun "Sucking, sir!" ("base", "base", "base", "mid") + her "" ("open_wide_tongue", "narrow", "base", "up") + lun "It's so cute! They suck at each other's tentacles with their little mouths!" ("crooked_smile", "happyCl", "base", "mid") + gen "(Plants with mouths?)" ("base", xpos="far_left", ypos="head") + lun "Normally they only do that shortly before they spread their spores." ("open", "base", "base", "L") + lun "It's a sign that they are almost ready!" ("grin", "base", "base", "mid") + gen "Ready? for what?" ("base", xpos="far_left", ypos="head") + lun "Pollination!" ("crooked_smile", "base", "base", "mid") + lun "The way Professor Sprout described it is them weaving their tentacles around each other, squeezing the spores out." ("soft", "base", "low", "mid") + gen "(How nasty!)" ("base", xpos="far_left", ypos="head") + + lun "But you won't believe how hard it actually is to get them to that stage..." ("annoyed", "base", "base", "R") + + gen "As a matter of fact, I'm quite familiar with the process." ("base", xpos="far_left", ypos="head") + lun "You are?" ("soft", "base", "raised", "mid") + gen "Indeed! I've got one right here as a matter of fact!" ("grin", xpos="far_left", ypos="head") + gen "A trouble maker this one...{w=0.4} Sucking--{w=0.4} *UGH*...{w=0.2} Real good though!" ("grin", xpos="far_left", ypos="head") + her "{size=-4}(*Slurp...* *Slurp...* *Gulp...*){/size}" ("open_wide_tongue", "narrow", "base", "mid") + lun "Oh! Can I see it, sir?" ("smile", "base", "base", "up") + her "" ("open_wide_tongue", "squint", "annoyed", "up") + gen "Not right now I'm afraid." ("base", xpos="far_left", ypos="head") + gen "It's such a shy little thing. You'd better not get any closer!" ("base", xpos="far_left", ypos="head") + lun "*Aww*... Okay." ("annoyed", "base", "base", "L") + her "{size=-4}(*Slurp...* *Slurp...* *Gulp...*){/size}" ("open_wide_tongue", "closed", "base", "mid") + gen "I know everything about those little devils..." ("base", xpos="far_left", ypos="head") + gen "This one was especially bitchy... It would moan about every tiny little thing I wanted to do." ("base", xpos="far_left", ypos="head") + her "..." ("open_wide_tongue", "squint", "annoyed", "up") + gen "But now, straight down on their knees..." ("base", xpos="far_left", ypos="head") + gen "Sucking like crazy!" ("grin", xpos="far_left", ypos="head") + her "" ("open_wide_tongue", "squint", "base", "R") + lun "So they do not only have a head but also knees?" ("soft", "wide", "raised", "mid") + lun "I didn't even know that!" ("angry", "base", "base", "mid") + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "base", "up") + gen "*Ngh*...{w=0.3} Well you learn something new every day." ("angry", xpos="far_left", ypos="head") + + lun "I hope you're being careful, Sprout told us they like to spit... And bite!" ("angry", "base", "low", "mid") + gen "Truly?" ("base", xpos="far_left", ypos="head") + lun "She said they'll hit you with their saliva, or bite at your limbs!" ("mad", "base", "base", "mid") + gen "Maybe I should count myself lucky that you showed up and told me... I've got quite a sensitive third leg." ("base", xpos="far_left", ypos="head") + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "angry", "R") + lun "Lucky indeed! Because Professor Sprout taught us an easy way to make them stop such behaviour, sir!" ("smile", "wink", "base", "mid") + gen "I'm all ears!" ("base", xpos="far_left", ypos="head") + lun "They hate being spat on just as much as you, sir... Maybe even more so!" ("crooked_smile", "base", "base", "L") + gen "(Those are some weird fucking plants...)" ("base", xpos="far_left", ypos="head") + lun "She said that if a {i}Venomous Tentacula{/i} ever acts up--" ("open", "closed", "base", "mid") + lun "You should show dominance by spitting on it and put it in its place!" ("crooked_smile", "closed", "raised", "mid") + lun "Her words, of course." ("soft", "base", "base", "R") + gen "Like this?" ("grin", xpos="far_left", ypos="head") + call spit_on_her + + gen "Take that, you nasty little slu-- *Uhh*, plant." ("angry", xpos="far_left", ypos="head") + her "{size=-4}(What the... *Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "squint", "annoyed", "up", tears="sweat") + lun "That's right, sir!" ("grin", "base", "base", "mid") + gen "This one's feisty!" ("angry", xpos="far_left", ypos="head") + gen "I think it might need some more spit!" ("grin", xpos="far_left", ypos="head") + call spit_on_her + her "{size=-4}(Stop it! *Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "annoyed", "up", tears="sweat") + gen "Looks like it's working!" ("base", xpos="far_left", ypos="head") + lun "Great job, sir!" ("smile", "base", "base", "mid") + lun "Professor Sprout did say that sometimes a bit of tough love is the only thing that can make them behave." ("grin", "closed", "base", "mid") + gen "Hold on a moment, mine is fighting back!" ("grin", xpos="far_left", ypos="head") + lun "Be careful, sir! Or it will bite you!" ("soft", "wide", "base", "mid") + gen "Don't worry, this one's getting a beating!" ("angry", xpos="far_left", ypos="head") + call slap_her + her "{size=-4}(Ouch!... *Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "happyCl", "base", "up", cheeks="blush", tears="sweat") + call slap_her + call slap_her + gen "Had enough, you nasty little thing?" ("angry", xpos="far_left", ypos="head") + her "{size=-4}(*Mph*...{w=0.3} *Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "worried", "up", cheeks="blush", tears="tears_soft_sweat") + call slap_her + gen "Looks like it needs some more!" ("grin", xpos="far_left", ypos="head") + call slap_her + call slap_her + + her "{size=-4}(Ouch!... *Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "worried", "stare", cheeks="blush", tears="tears_soft_sweat") + gen "There we go... It seems to have calmed down..." ("base", xpos="far_left", ypos="head") + lun "Impressive! I didn't think we would see such good results this quickly, sir!" ("soft", "wide", "base", "mid") + lun "I'll have to tell Professor Sprout, she'll be overjoyed to hear about your training methods!" ("crooked_smile", "base", "base", "mid") + gen "Spitting on her was a great idea!" ("grin", xpos="far_left", ypos="head") + gen "Give her my thanks, Miss Lovegood." ("grin", xpos="far_left", ypos="head") + lun "Certainly, sir." ("base", "base", "base", "mid") + + if game.daytime: + lun "Have a nice day!" ("base", "base", "base", "R") + else: + lun "Good night!" ("base", "base", "base", "mid") + + #Luna leaves. + call lun_walk(action="leave") + + stop music fadeout 1.0 + call bld + gen "Well that wasn't too bad, was it?" ("base", xpos="far_left", ypos="head") + her "{size=-4}(............................. *Slurp...* *Slurp...* *Gulp...*){/size}" ("open_wide_tongue", "narrow", "worried", "up", cheeks="blush") + + call play_music("playful_tension") # SEX THEME. + + ">Hermione doesn't say a thing. Her face is crimson due to a mix of embarrassment, guilt, and excitement." + + jump hg_hidden_blowjob_cumming + +#Needs Friendship level parameter added for tonks chat variations if ton_friendship < X: +#Needs event label check for Tonks to ask if it's susan in there. replace if ag_st_imperio.tier >= 5: +#Add Tonks BJ counter +label hg_hidden_blowjob_tonks: + call her_chibi_scene("bj_pause", trans=d5) + pause.8 + + her "[genie_name], what should I do?" ("shock", "wide", "base", "stare") + gen "Just keep sucking my cock, [hermione_name]. This doesn't concern you." ("base", xpos="far_left", ypos="head") + ton "[ton_genie_name]? Is it okay if I come in?" + her "(It's Professor Tonks!)" ("clench", "happyCl", "worried", "mid") + her "{size=-2}Please, [genie_name], don't let her in!{/size}" ("open", "base", "worried", "mid") + her "I don't want my teacher to see me like this!" ("shock", "narrow", "worried", "down") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Please, come on in.\"": + pass + + "\"I am busy right now, [tonks_name].\"": + her "Thank you, [genie_name]." ("soft", "base", "base", "mid") + ton "Busy?" + ton "Could it be..." + ton "Is Snape with you?" + if game.daytime: + ton "Are you two having one of your silly little duels again?" + else: + ton "Don't stay up drinking again..." + ton "We wouldn't want him making a fool of himself. Not in front of the students." + ton "He made such a mess last time..." + + call her_chibi_scene("bj", trans=d5) + pause.8 + + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "squint", "worried", "up") + gen "He isn't here, actually. But I will let him know..." ("base", xpos="far_left", ypos="head") + ton "So, are you with a student then, *Hmm*?" + her "{size=-4}(.......... *Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "annoyed", "up") + ton "Who is she?" + + if ag_st_imperio.tier >= 3: + ton "Is it the blonde girl? Or..." + her "{size=-4}(Blonde!?! *Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "squint", "worried", "up") + her "{size=-4}(*Slurp*... *Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "annoyed", "up") + elif ag_st_imperio.tier >= 5: + ton "You aren't shagging that busty red head, are you?" + her "{size=-4}(Busty who? *Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "squint", "worried", "up") + her "{size=-4}(Is she talking about Susan? *Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "annoyed", "up") + + gen "That's non of your concern, Miss Tonks!" ("base", xpos="far_left", ypos="head") + gen "You may leave now..." ("base", xpos="far_left", ypos="head") + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "base", "up") + + if ton_friendship < 50: + ton "You sure you don't need my assistance?" + gen "I said, leave!" ("angry", xpos="far_left", ypos="head") + else: + ton "I can help you jack off, if that's what you're--" + gen "Maybe later, [tonks_name]." ("base", xpos="far_left", ypos="head") + ton "Okay, [ton_genie_name]." + ton "*Giggle...*" + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "I think she's gone..." ("base", xpos="far_left", ypos="head") + + jump hg_pf_blowjob_1 + + $ hg_blowjob.nt_counter += 1 + $ her_mood += 10 + + # Setup + $ ton_outfit_last.save() # Store current outfit. + $ tonks.equip(ton_outfit_default) + + stop music fadeout 1.0 + her "{size=-2}[genie_name], no! Please she will know that-{/size}" ("angry", "base", "angry", "mid", emote="angry") + gen "*Shhhhsh*... Keep your voice down..." ("base", xpos="far_left", ypos="head") + + #Tonks comes in + call bld("hide") + pause.2 + + call play_sound("door") + call ton_chibi("stand","door","base") + call chibi_emote("hearts", "tonks") + with d3 + pause.5 + + call chibi_emote("hide", "tonks") + with d3 + pause.1 + + call ton_walk("mid","base") + + if game.daytime: + ton "Hello, Sir." ("base", "base", "base", "mid", xpos="right", ypos="base", trans=d3) + else: + ton "Good evening, Sir." ("base", "base", "shocked", "mid", xpos="right", ypos="base", trans=dissolve) + + call her_chibi_scene("bj", trans=d5) + + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Tonks! What can I do for you?" ("grin", xpos="far_left", ypos="head") + ton "I was wondering if we could--" ("open", "base", "raised", "R") + ton "(...)" ("annoyed", "narrow", "raised", "L") + ton "Am I interrupting something?" ("soft", "base", "raised", "down") + her "(She's going to find out!!!)" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Nothing important..." ("base", xpos="far_left", ypos="head") + + menu: + "-Tell the truth-": + gen "Just stuffing Miss Granger's cute little mouth..." ("base", xpos="far_left", ypos="head") + gen "With my cock!" ("grin", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause", trans=d5) + + "-Lie-": + gen "... Just polishing...{w=0.5} the woodwork." ("base", xpos="far_left", ypos="head") + ton "Like I'm going to believe that..." ("upset", "base", "base", "downR") + ton "Are you masturbating, [ton_genie_name]?" ("horny", "base", "raised", "mid") + + if ton_friendship < 50: + ton "Or perhaps somebody else has their tongue wrapped around it?" ("soft", "base", "raised", "L") + her "{size=-4}(*Blergchhhgh*... *Cough*... *Cough*... *Cough*...){/size}" ("open_wide_tongue", "base", "worried", "ahegao") + ton "What was that?" ("base", "base", "raised", "mid") + ton "Surely there's nobody at this school who would be able to pleasure you properly..." ("grin", "base", "raised", "mid") + else: + ton "Are you stroking your hard, {w=0.3}magnificent, {w=0.3}cock?" ("soft", "base", "base", "stare") + with hpunch + her "{size=-4}(*Blergchhhgh*... *Cough*... *Cough*... *Cough*...){/size}" ("open_wide_tongue", "slit", "worried", "ahegao") + call her_chibi_scene("bj_pause", trans=d5) + her "{size=-4}What??{/size}" ("open_wide_tongue", "narrow", "base", "up") + ton "What was that?" ("open", "base", "raised", "mid") + ton "[ton_genie_name]?!" ("grin", "base", "base", "mid") + gen "*Ehm*-{w=0.5} My belly?" ("base", xpos="far_left", ypos="head") + ton "Sounded like somebody doesn't know how to deep throat a dick properly..." ("open", "base", "base", "R") + + her "(Excuse me?!)" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Don't be mean, she's doing her best..." ("base", xpos="far_left", ypos="head") + ton "So there is a girl behind you!" ("horny", "wide", "raised", "down") + ton "Who is it? Tell me!" ("soft", "shocked", "shocked", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "It's Miss Granger." ("base", xpos="far_left", ypos="head") + + ton "Miss Granger?!" ("open", "wide", "shocked", "stare") + + if her_reputation <= 15: + ton "*Hmm?*... I thought she'd be busy pretending to study in the library." ("open", "base", "raised", "mid") + her "(Pretending???)" ("open_wide_tongue", "narrow", "base", "up") + else: + ton "*Oh?* I could've sworn I just saw her in the library fluttering her eyelashes to some Slytherin boy..." ("open", "base", "raised", "mid") + her "(What!!?)" ("open_wide_tongue", "narrow", "annoyed", "up") + with hpunch + gen "Ouch, I felt that..." ("base", xpos="far_left", ypos="head") + + if ton_friendship < 50: + ton "So she has her lips wrapped around you? {w=0.5}Right now???" ("soft", "base", "shocked", "L") + else: + ton "You're telling me that you are fucking her mouth? {w=0.5}Right now???" ("soft", "base", "shocked", "mid") + + ton "Oh I've got to see this..." ("horny", "base", "base", "down") + ton "" ("horny", "base", "base", "down", xpos="mid", trans=d3) + pause.2 + gen "Wait!" ("angry", xpos="far_left", ypos="head") + ton "*Hmm*?" ("horny", "base", "raised", "mid") + + gen "You better not come any closer..." ("base", xpos="far_left", ypos="head") + gen "Or I fear she will bite me..." ("base", xpos="far_left", ypos="head") + gen "Or worse..." ("angry", xpos="far_left", ypos="head") + gen "She'll stop with the sucking..." ("base", xpos="far_left", ypos="head") + her "(Damn right I will...)" ("open_wide_tongue", "narrow", "base", "up") + + call her_chibi_scene("bj", trans=d5) + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "slit", "worried", "ahegao") + ton "Very well..." ("base", "base", "raised", "R", xpos="right", trans=d3) + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "squint", "worried", "up") + + ton "Is that really, {w=0.5}Miss Hermione Granger,{w=0.5} back there?" ("horny", "narrow", "base", "mid") + ton "That's so hard to believe!" ("open", "base", "raised", "L") + ton "Or perhaps, you are just fucking with me, [ton_genie_name]..." ("soft", "base", "base", "mid") + gen "I'm not fucking with you..." ("base", xpos="far_left", ypos="head") + gen "... I'm fucking her mouth." ("grin", xpos="far_left", ypos="head") + ton "That's too good to be true!" ("horny", "narrow", "base", "stare") + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "annoyed", "up") + + ton "Miss Granger, If that's really you back there, why don't you say hi to your favourite teacher?" ("grin", "base", "raised", "down") + gen "(...)" ("base", xpos="far_left", ypos="head") + ton "I will reward you with fifty house points if you show yourself!" ("base", "base", "raised", "down") + with hpunch + gen "What?!" ("angry", xpos="far_left", ypos="head") + + call her_chibi_scene("bj_pause", trans=d5) + + her "(Oh wow, that's a lot of points!)" ("open_wide_tongue", "narrow", "annoyed", "down_soft") + + call her_chibi_scene("bj", trans=d5) + + gen "You can't give her that many points, [tonks_name]! She's already getting {number=current_payout} from me!" ("angry", xpos="far_left", ypos="head") + gen "Do you even realise how many days I'll have to spend with Snape, of all people, to get even with Slytherin again, after this?" ("base", xpos="far_left", ypos="head") + ton "So what? The girl has clearly earned it!" ("soft", "base", "annoyed", "mid") + ton "Sucking her headmaster's cock..." ("horny", "base", "annoyed", "down") + ton "Fifty points could be yours, Miss Granger!" ("open", "base", "raised", "down") + ton "You only have to stick your gorgeous head out and say hi to me, and of course..." ("open", "base", "base", "R") + ton "I promise I won't tell anybody." ("base", "base", "base", "down") + ton "It will be our little secret." ("soft", "base", "shocked", "down") + her "(...)" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Do what you must, girl..." ("base", xpos="far_left", ypos="head") + her "(...............)" ("open_wide_tongue", "narrow", "base", "up") + + call her_chibi_scene("bj_pause", trans=d5) + + her "" ("disgust", "narrow", "worried", "down", xpos="left", cheeks="blush", flip=True, trans=d3) + + pause 1.0 + + ton "Oh my!" ("horny", "base", "base", "down") + + her "H-Hello, professor Tonks." ("clench", "happyCl", "worried", "mid") + + ton "Miss Granger, what a pleasant surprise." ("grin", "wide", "raised", "L") + ton "Are you having a good time back there?" ("base", "wide", "base", "L") + + if her_reputation <= 15: + ton "It sure sounded like you were..." ("horny", "base", "raised", "mid") + else: + ton "You nasty little cock sucker." ("horny", "base", "raised", "mid") + + her "(.......)" ("soft", "narrow", "annoyed", "up") + her "I suppose so........." ("disgust", "narrow", "worried", "down") + ton "What a sight to see..." ("base", "base", "base", "mid") + + her "" ("open_wide_tongue", "squint", "worried", "up", xpos="base", flip=False) + call her_chibi_scene("bj", trans=d5) + + if ton_friendship < 50: + ton "You're really going to town, aren't you..." ("base", "base", "base", "down") + ton "You should make sure you breathe every once in a while dear girl." ("horny", "base", "base", "mid") + gen "If you need to have her vitals checked out afterwards - I'm sure we could come to an arrangement." ("grin", xpos="far_left", ypos="head") + else: + ton "I'd love to join you back there, Miss Granger..." ("base", "base", "base", "down") + ton "Suck your Headmaster's dick with you!" ("horny", "base", "angry", "mid") + her "{size=-4}(She'd do what?... *Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "worried", "up") + gen "You can both have it!" ("grin", xpos="far_left", ypos="head") + + ton "I'm sorry, [ton_genie_name]... I'm already pre-occupied with something..." ("open", "narrow", "base", "R") + if game.daytime: + ton "Teaching our second-years how to cast a simple deflection spell..." ("open", "base", "raised", "down") + else: + ton "I'm preparing some material for our second-years how to cast a simple deflection spell..." ("open", "base", "raised", "down") + ton "We are already two sessions behind my planned class schedule." ("annoyed", "base", "base", "mid") + ton "I came to you to get consultation about some of the material I had prepared for them." ("open", "base", "shocked", "down") + gen "(Yeah right, more like she wanted some of my firewhisky...)" ("base", xpos="far_left", ypos="head") + ton "But since you have to take care of Miss Granger right now..." ("base", "base", "raised", "down") + ton "I suppose it can wait." ("base", "base", "raised", "R") + ton "Who said teaching would be easy, am I right?" ("open", "closed", "shocked", "mid") + gen "It's quite easy, actually." ("base", xpos="far_left", ypos="head") + ton "As a headmaster maybe... I'm sure your private tutelage is very popular..." ("horny", "base", "raised", "down") + gen "It can get quite hard, taking care of all those girls." ("base", xpos="far_left", ypos="head") + ton "I can certainly see that..." ("base", "base", "annoyed", "down") + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "annoyed", "up") + + ton "Anyhow..." ("open", "base", "raised", "R") + ton "Hermione, for your exceptional and benevolent effort of sucking your headmaster's cock, {w=0.5}I hereby reward the house Gryffindor..." ("soft", "base", "base", "down") + + call her_chibi_scene("bj_pause", trans=d5) + ton "Sixty-nine points!" ("grin", "wide", "base", "mid") + $ gryffindor += 69 + + her "(Sixty-nine! That's even more than she agreed on!)" ("shock", "wide", "base", "up") + gen "Didn't you say fifty earlier?" ("base", xpos="far_left", ypos="head") + ton "Yes, but sixty-nine is so much better!" ("horny", "base", "raised", "mid") + ton "Don't you think so too, Miss Granger?" ("base", "base", "angry", "down") + her "*Ehm*... Yes. Thank you, professor Tonks." ("disgust", "happyCl", "worried", "mid") + gen "Less talking, more sucking, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "Sorry, [genie_name]..." ("soft", "narrow", "annoyed", "up") + + call her_chibi_scene("bj", trans=d5) + her "{size=-4}(*Slurp*... *Slurp*... *Gulp*...){/size}" ("open_wide_tongue", "narrow", "annoyed", "up") + ton "I'm going to have to go, [ton_genie_name]." ("open", "closed", "shocked", "mid") + ton "Wish I could watch you two a little longer..." ("soft", "base", "base", "L") + ton "But I have to head back to my office." ("open", "base", "base", "downR") + gen "What a shame." ("base", xpos="far_left", ypos="head") + if ton_friendship < 50: + ton "Make sure she gets a good taste." ("horny", "base", "base", "mid") + else: + ton "Make sure she swallows for me." ("horny", "base", "base", "mid") + gen "Every last drop!" ("grin", xpos="far_left", ypos="head") + + if game.daytime: + ton "See you in class, {i}Parseltongue{/i}!" ("horny", "base", "angry", "down") + else: + ton "Have a good night, {i}Parseltongue{/i}!" ("horny", "base", "annoyed", "down") + + her ".........." ("open_wide_tongue", "happyCl", "worried", "mid") + + #Tonks leaves. + stop music fadeout 1.0 + + call ton_walk(action="leave") + pause.5 + + $ tonks.equip(ton_outfit_last) # Equip custom outfit. + + call play_music("playful_tension") # SEX THEME. + call bld + ">Hermione doesn't say a thing. Her face is crimson due to a mix of embarrassment, guilt, and excitement." + + jump hg_hidden_blowjob_cumming + +label hg_hidden_blowjob_cumming: + call her_chibi_scene("bj", trans=d5) + pause.8 + + her "*Slurp*! *Slurp*! *Gulp*!" ("open_wide_tongue", "squint", "worried", "up", flip=False) + ">She continues to suck on your cock with an almost vicious determination." + ">Her technique is lacking but she makes up for it with the effort she puts in." + + gen "Yes... I love your eager, little mouth, girl..." ("base", xpos="far_left", ypos="head") + her "*Gobble*! *Gobble*! *Gobble*!" ("open_wide_tongue", "narrow", "annoyed", "up") + + call her_chibi_scene("bj_pause", trans=d5) + her "[genie_name]?" ("soft", "narrow", "annoyed", "up") + gen "*Hmm*?" ("base", xpos="far_left", ypos="head") + her "Are you going to cum on my face today?" ("soft", "narrow", "annoyed", "up") + her "Or do you plan to cum in my mouth?" + + menu: + "\"I Plan to splatter your face with cum!\"": + her "I see..." ("soft", "narrow", "annoyed", "up") + gen "Why do you ask?" ("base", xpos="far_left", ypos="head") + her "Oh... I just read in a book that semen contains a lot of antioxidants..." ("grin", "narrow", "base", "dead") + her "It's good for the skin..." + gen "Great. One facial coming right up." ("base", xpos="far_left", ypos="head") + gen "Back to work now." ("base", xpos="far_left", ypos="head") + + "\"I Plan to fill your mouth with cum!\"": + her "I see..." ("grin", "narrow", "base", "dead") + gen "Why do you ask?" ("base", xpos="far_left", ypos="head") + her "Well, I am trying to watch my calorie-intake..." ("soft", "narrow", "annoyed", "up") + her "I just wonder how much calories your load contains, [genie_name]." + her "Maybe I should skip my next meal..." + gen "[hermione_name]." ("base", xpos="far_left", ypos="head") + her "Yes?" ("soft", "narrow", "annoyed", "up") + gen "Dick back in the mouth." ("base", xpos="far_left", ypos="head") + + "\"I don't plan so far ahead.\"": + her "I see..." ("soft", "narrow", "annoyed", "up") + gen "Don't you like surprises?" ("base", xpos="far_left", ypos="head") + her "Not really..." ("soft", "narrow", "annoyed", "up") + her "I rather enjoy planning ahead actually..." + gen "Well some things in life are just unpredictable." ("base", xpos="far_left", ypos="head") + gen "There is only one way to find out for sure." ("base", xpos="far_left", ypos="head") + + "\"What would you like?\"": + her "If it is all the same to you, [genie_name]..." ("soft", "narrow", "annoyed", "up") + + $ random_number = renpy.random.randint(1, 2) + if random_number == 1: + her "I would like you to cum on my face, [genie_name]." ("grin", "narrow", "base", "dead") + her "I read that it's good for the skin." + else: + her "I would like you to cum in my mouth." ("grin", "narrow", "base", "dead") + her "You usually cum so much so I think I will be able to just skip my next meal..." + if game.daytime: + her "And do some light workout instead." + else: + her "And do some homework instead." + + gen "Well, we'll see about that." ("base", xpos="far_left", ypos="head") + gen "Back to sucking now." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj", trans=d5) + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "You are getting better at this [hermione_name]." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Gulp*!" ("open_wide_tongue", "narrow", "base", "up") + gen "Okay, say something nasty now..." ("base", xpos="far_left", ypos="head") + her "*Slurp*--?" ("open_wide_tongue", "narrow", "annoyed", "up") + call her_chibi_scene("bj_pause", trans=d5) + + if her_tier <= 5: + her "*Uhm*..." ("angry", "narrow", "base", "down") + her "I eat cockroaches?" ("angry", "base", "base", "mid") + gen "What the fuck?" ("base", xpos="far_left", ypos="head") + her "T-they are pretty nasty, [genie_name]..." ("angry", "base", "base", "mid") + gen "No, [hermione_name], I mean something dirty!" ("base", xpos="far_left", ypos="head") + gen "And don't you dare to say \"mud\"!" ("base", xpos="far_left", ypos="head") + gen "I mean dirty in a sexual way!" ("base", xpos="far_left", ypos="head") + her "Oh... *Ehm*..." ("angry", "narrow", "base", "down") + gen "Ah, never mind, the moment is gone..." ("base", xpos="far_left", ypos="head") + her "*Ehm*... I'm sorry, [genie_name]." ("angry", "base", "base", "mid") + gen "Yeah, whatever. Make it up to me by sucking my cock harder." ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]." ("upset", "closed", "base", "mid") + else: + her "I'm a cumslut, [genie_name]." ("base", "squint", "base", "mid") + her "A slut for your cum." ("base", "narrow", "base", "mid_soft") + gen "That's it, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "It's all I can think about [genie_name]." ("base", "narrow", "worried", "down") + her "Sucking your dirty old cock..." + gen "Well you better get back to it then [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("grin", "narrow", "base", "dead") + gen "You're welcome, cumslut." ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "base", "up") + + call her_chibi_scene("bj", trans=d5) + her "*Slurp*! *Gulp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Yes, like this... Good..." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "You know what? I think we are almost there." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + gen "Yes, definitely." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gobble*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + gen "Alright, [hermione_name], this is the final stretch." ("base", xpos="far_left", ypos="head") + gen "Show me what you've got." ("angry", xpos="far_left", ypos="head") + her "*Gobble-goble-slurp-goble*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Yes, like that!" ("angry", xpos="far_left", ypos="head") + her "{size=+5}*Gobble-gobble-slurp-gobble*!{/size}" ("open_wide_tongue", "narrow", "base", "up") + gen "{size=+5}Yes! Yes! Yes! Yes!{/size}" ("angry", xpos="far_left", ypos="head") + gen "*Ghr*!!!" ("angry", xpos="far_left", ypos="head") + + menu: + gen "!!!" ("angry", xpos="far_left", ypos="head") + "-Cum in her mouth-": + gen "Here it comes, [hermione_name]! get ready to swallow, and fast!" ("angry", xpos="far_left", ypos="head") + her "!!!" ("open_wide_tongue", "narrow", "base", "up") + + call cum_block + call her_chibi_scene("bj_cum_in", trans=d5) + pause.8 + + call bld + gen "{size=+7}*ARGH*!{/size}" ("angry", xpos="far_left", ypos="head") + gen "Swallow my cum, slut!" ("angry", xpos="far_left", ypos="head") + her "*Gulp!-Gulp!-Gulp*!" ("open_wide_tongue_cum", "narrow", "annoyed", "up") + with hpunch + gen "Yes! Down your fucking throat!" ("angry", xpos="far_left", ypos="head") + her "*Gulp-gulp-gulp-gulp-gulp*!" ("open_wide_tongue_cum", "narrow", "annoyed", "up") + + stop music fadeout 1.0 + hide screen bld1 + call ctc + + call bld + gen "Well, I think that's it." ("base", xpos="far_left", ypos="head") + gen "You can let go now..." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj_pause", trans=d5) + her "..........................." ("full_cum", "narrow", "base", "dead") + her "................" + her "........" + $ renpy.play('sounds/gulp.ogg') #Sound of gulping down a liquid. + her "*GULP*!" ("cum", "happyCl", "worried", "mid") + her "*Gua-ha*..." ("open_wide_tongue", "base", "base", "mid") + gen "You alright?" ("base", xpos="far_left", ypos="head") + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "Yes, [genie_name]..." ("grin", "narrow", "base", "dead") + gen "Going to skip your next meal?" ("base", xpos="far_left", ypos="head") + her "I think so..." ("grin", "narrow", "base", "dead") + her "You always cum so much, [genie_name]..." + gen "Heh... And whose fault is that??" ("base", xpos="far_left", ypos="head") + her "............." ("grin", "narrow", "base", "dead") #Smile. + her "Can I get paid now?" + + if her_tier >= 6: + if game.daytime: + gen "What, even after I just gave you lunch?" ("base", xpos="far_left", ypos="head") + else: + gen "What, even after I fed you dinner?" ("base", xpos="far_left", ypos="head") + her "............." ("annoyed", "squint", "base", "mid") #Smile. + her "Fine, I suppose this was a worthy meal." + + "-Cum on her face-": + call her_chibi_scene("bj_pause", trans=d5) + gen "Ready for your facial, [hermione_name]?" ("angry", xpos="far_left", ypos="head") + her "Yes, [genie_name]!" ("grin", "narrow", "base", "dead") + gen "Here it comes then!" ("angry", xpos="far_left", ypos="head") + + call cum_block + call her_chibi_scene("bj_cum_out", trans=d5) + pause.8 + + $ hermione.set_cum(face="light") + call bld + gen "{size=+7}Whore!{/size}" ("angry", xpos="far_left", ypos="head") + her "!!?" ("shock", "wide", "base", "stare") + hide screen bld1 + call ctc + + $ hermione.set_cum(face="heavy") + + her "[genie_name]..." ("shock", "wide", "base", "stare") + gen "All over your fucking face!" ("angry", xpos="far_left", ypos="head") + her "*Aaah*!" ("grin", "narrow", "base", "dead") + + call her_chibi_scene("bj_cum_out_done", trans=d5) + gen "Well, I'm done." ("base", xpos="far_left", ypos="head") + her "...................................." ("grin", "narrow", "base", "dead") + gen "I said it's over, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Yes, I heard you [genie_name]..." ("grin", "narrow", "base", "dead") + gen "So... Aren't you going to clean up?" ("base", xpos="far_left", ypos="head") + her "In a moment..." ("grin", "narrow", "base", "dead") + her "I'm giving my skin time to soak in the anti-oxidants..." + gen "*Hmm*... I find this quite hot..." ("base", xpos="far_left", ypos="head") + gen "Take your time, [hermione_name]..." ("base", xpos="far_left", ypos="head") + call blkfade + + stop music fadeout 1.0 + ">A while later." + + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + hide screen bld1 + hide screen blktone + call hide_blkfade + pause.5 + + her "I take it you enjoyed yourself, [genie_name]?" ("angry", "wink", "base", "mid") + call play_music("chipper_doodle") # HERMIONE'S THEME. + gen "Yes I did, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Good, so Can I get paid now?" ("grin", "narrow", "base", "dead") + + if her_tier >= 6: + gen "What, even after I just gave you a salon treatment?" ("base", xpos="far_left", ypos="head") + gen "Other women pay a lot of money for a good facial." ("base", xpos="far_left", ypos="head") + her "............." ("annoyed", "squint", "base", "mid") #Smile. + her "Fine, but my skin better look glamorous by tomorrow." + gen "You can always come for a second dosage." ("grin", xpos="far_left", ypos="head") + + jump end_hg_pf_blowjob + +### Fourth Blowjob ### + +label hg_pf_blowjob_2: + stop music fadeout 4.0 + call hide_characters + show screen blkfade + with d3 + + call her_chibi_scene("bj", trans=d9) + call ctc + + call play_music("playful_tension") #HERMIONE + her "*Slurp*! *Slurp*! *Gulp*!" ("open_wide_tongue", "narrow", "annoyed", "up", ypos="head", flip=False) + gen "Yes, good girl..." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gobble*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + gen "lick the shaft..." ("base", xpos="far_left", ypos="head") + her "*lick*! *Slurp*! *lick*!" ("open_wide_tongue", "narrow", "base", "up") + call nar(">Hermione keeps sucking on your cock like her life depends on it.","start") + call nar(">Her technique is almost perfect and she is incredibly enthusiastic.","end") + gen "Yes... I love your eager, little mouth, slut..." ("base", xpos="far_left", ypos="head") + her "*Gobble*! *Gobble*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + + call her_chibi_scene("bj_pause", trans=d5) + pause.8 + + her "[genie_name]?" ("base", "narrow", "worried", "down") + gen "*Hmm*?" ("base", xpos="far_left", ypos="head") + her "How would you like me to please you today?" ("soft", "narrow", "annoyed", "up") + + menu: + #"\"Take it down your throat!\"" if hg_pf_blowjob.points >= 2: # Second event (facefuck) happened. + # jump hg_pf_facefuck_1 + + "\"Pretend I am your father.\"": + her "My father?" ("angry", "wink", "base", "mid") + gen "Anything wrong with that?" ("base", xpos="far_left", ypos="head") + her "I suppose not..." ("base", "narrow", "worried", "down") + her "I mean it's just pretending..." ("grin", "narrow", "base", "dead") + gen "Great. Get that dick back in your mouth then." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj", trans=d5) + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "That's it, princess. Suck daddy's dick." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gulp*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + gen "Tell me how much you want it." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gobble*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "So much daddy..." ("soft", "narrow", "annoyed", "up") + call her_chibi_scene("bj", trans=d5) + her "*Slurp*! *Gobble*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "It's all I think about when we're home alone..." ("base", "narrow", "base", "up") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *Gulp*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "When we're sitting together on the couch watching T.V..." ("base", "narrow", "base", "up") + her "I just imagine that I am sucking your cock instead..." ("base", "narrow", "base", "up") + call her_chibi_scene("bj", trans=d5) + her "*lick*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "I even wish that mum left you sometimes..." ("annoyed", "narrow", "worried", "down") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *Slurp*! *lick*!" ("open_wide_tongue", "narrow", "base", "dead") + gen "Why's that?" ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause", trans=d5) + her "So that I'm the only one to get your dick..." ("soft", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "annoyed", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "You'll come home every day..." ("soft", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "Throw me onto my bed..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "annoyed", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "and use me..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "however you want..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "annoyed", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "for as long as you want..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "you won't even ask..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "annoyed", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "you'll just take me..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "dead") + call her_chibi_scene("bj_pause", trans=d5) + her "even though I say no..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + gen "That's it princess, Almost there..." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause", trans=d5) + her "Where do you want to cum today, daddy?" ("soft", "narrow", "annoyed", "up") + her "Are you going to cover my face?" ("soft", "narrow", "annoyed", "up") + her "Or make me swallow your big load?" ("grin", "narrow", "base", "dead") + her "{size=-4}Even if I don't want to...{/size}" ("grin", "narrow", "base", "dead") + gen "Let's find out shall we?" ("base", xpos="far_left", ypos="head") + her "Yes daddy..." ("soft", "narrow", "annoyed", "up") + call her_chibi_scene("bj", trans=d5) + her "*Slurp*! *Gulp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Yes, like that... Good girl..." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Do it for daddy." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Come on princess." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gobble*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + gen "Alright, [hermione_name], almost there." ("base", xpos="far_left", ypos="head") + gen "Make daddy proud!" ("angry", xpos="far_left", ypos="head") + her "*Gobble-goble-slurp-goble*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Yes, like that!" ("angry", xpos="far_left", ypos="head") + her "{size=+5}*Gobble-gobble-slurp-gobble*!{/size}" ("open_wide_tongue", "narrow", "base", "dead") + gen "{size=+5}Yes! Yes! Yes! Yes!{/size}" ("angry", xpos="far_left", ypos="head") + gen "*Grr*!!!" ("angry", xpos="far_left", ypos="head") + + menu: + gen "!!!" ("angry", xpos="far_left", ypos="head") + "-Cum in her mouth-": + gen "Here it comes, [hermione_name]! Here comes daddy!" ("angry", xpos="far_left", ypos="head") + her "!!!" ("open_wide_tongue", "narrow", "base", "up") + + call cum_block + call her_chibi_scene("bj_cum_in", trans=d5) + pause.8 + + call bld + gen "{size=+7}*ARGH*!{/size}" ("angry", xpos="far_left", ypos="head") + gen "Drown in my cum, whore!" ("angry", xpos="far_left", ypos="head") + + her "*Gulp!-Gulp!-Gulp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + with hpunch + gen "Yes! Down your fucking throat, slut!" ("angry", xpos="far_left", ypos="head") + her "*Gulp-gulp-gulp-gulp-gulp*!" ("open_wide_tongue", "narrow", "base", "up") + stop music fadeout 1.0 + call ctc + + call her_chibi_scene("bj_pause", trans=d5) + pause.8 + + call bld + gen "Well, I think that's it." ("base", xpos="far_left", ypos="head") + gen "You can let go now..." ("base", xpos="far_left", ypos="head") + her "..........................." ("full_cum", "narrow", "base", "dead") + her "................" + her "........" + + $ renpy.play('sounds/gulp.ogg') #Sound of gulping down a liquid. + her "*GULP*!" ("cum", "happyCl", "worried", "mid") + her "*Gua-ha*..." ("open_wide_tongue", "base", "base", "mid") + gen "How was that?" ("base", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "So tasty..." ("grin", "narrow", "base", "dead") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "Yes daddy..." ("grin", "narrow", "base", "dead") + her "It's always tasty with you..." + gen "Heh... is that so?" ("base", xpos="far_left", ypos="head") + her "............." ("grin", "narrow", "base", "dead") + call nar(">She leans forward and gives your wilting cock a small kiss.") + with kissiris + her "Thanks, daddy!" ("base", "narrow", "base", "mid_soft") + + "-Cum on her face-": + call her_chibi_scene("bj_pause", trans=d5) + gen "Ready for your cum-load, princess?" ("angry", xpos="far_left", ypos="head") + her "Yes daddy!" ("grin", "narrow", "base", "dead") + gen "Here it comes then!" ("angry", xpos="far_left", ypos="head") + + call cum_block + call her_chibi_scene("bj_cum_out", trans=d5) + pause.8 + + $ hermione.set_cum(face="light") + + call bld + gen "{size=+7}Slut!{/size}" ("angry", xpos="far_left", ypos="head") + her "!!?" ("shock", "narrow", "base", "dead") + call ctc + + $ hermione.set_cum(face="heavy") + + her "Daddy..." ("shock", "wide", "base", "stare") + gen "That's it, princess!" ("angry", xpos="far_left", ypos="head") + her "*Aaah*!" ("grin", "narrow", "base", "dead") + + call her_chibi_scene("bj_cum_out_done", trans=d5) + pause.8 + + call bld + gen "Well, I'm done." ("base", xpos="far_left", ypos="head") + her "...................................." ("grin", "narrow", "base", "dead") + gen "I said it's over, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Yes, I heard you, daddy..." ("grin", "narrow", "base", "dead") + gen "So... Aren't you going to clean up?" ("base", xpos="far_left", ypos="head") + her "In a minute..." ("grin", "narrow", "base", "dead") + her "I'm just savouring the moment..." + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Take your time, [hermione_name]..." ("base", xpos="far_left", ypos="head") + + stop music fadeout 1.0 + call blkfade + + ">A while later." + + call her_chibi_scene("bj_pause", trans=d9) + pause.8 + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "I take it you enjoyed yourself, [genie_name]?" ("angry", "wink", "base", "mid") + gen "Yes I did, [hermione_name]." ("base", xpos="far_left", ypos="head") + + "\"Worship my cock.\"": + her "Worship it?" ("angry", "wink", "base", "mid") + gen "Did I stutter?" ("base", xpos="far_left", ypos="head") + her "Well..." ("base", "narrow", "worried", "down") + her "Okay..." ("soft", "narrow", "annoyed", "up") + gen "Great. You can start by putting it back in your mouth." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj", trans=d5) + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "That's it.." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gulp*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "dead") + gen "Tell me how much you love my cock." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gobble*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "So much, [genie_name]..." ("soft", "narrow", "annoyed", "up") + call her_chibi_scene("bj", trans=d5) + her "*Slurp*! *Gobble*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "It's all I think about when I'm in class..." ("base", "narrow", "base", "up") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *Gulp*! *Gobble*!" ("open_wide_tongue", "narrow", "annoyed", "up") + + if hg_pr_blowjob.counter == 0: + call her_chibi_scene("bj_pause", trans=d5) + her "Sucking your perfect dick." ("base", "narrow", "base", "up") + her "No one else's..." ("base", "narrow", "base", "up") + call her_chibi_scene("bj", trans=d5) + her "*lick*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "Just your {w}perfect, {w}beautiful {w}{size=-4}cock{/size}!" ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *Slurp*! *lick*!" ("open_wide_tongue", "narrow", "annoyed", "up") + else: + call her_chibi_scene("bj_pause", trans=d5) + her "Even when you make me suck another boys dick..." ("base", "narrow", "base", "up") + her "I still imagine that it's yours..." ("base", "narrow", "base", "up") + call her_chibi_scene("bj", trans=d5) + her "*lick*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "dead") + call her_chibi_scene("bj_pause", trans=d5) + her "Imagine that it's your cum sliding down my throat..." ("soft", "narrow", "annoyed", "up") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *Slurp*! *lick*!" ("open_wide_tongue", "narrow", "base", "dead") + call her_chibi_scene("bj_pause", trans=d5) + her "Or that it's your hot load shot across my face..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *Slurp*! *lick*!" ("open_wide_tongue", "narrow", "base", "up") + + gen "Is that so?" ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause", trans=d5) + her "Yes [genie_name]..." ("soft", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "Sometimes..." ("soft", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "dead") + call her_chibi_scene("bj_pause", trans=d5) + her "After you make me suck your tasty dick..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "I won't brush my teeth..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "just so I can go to sleep..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "annoyed", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "with that perfect taste in my mouth..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "dead") + call her_chibi_scene("bj_pause", trans=d5) + her "and when I do brush my teeth..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "base", "up") + call her_chibi_scene("bj_pause", trans=d5) + her "Your beautiful cock is all I can think about..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "worried", "down") + call her_chibi_scene("bj_pause", trans=d5) + her "Recently, I even started moaning whenever I'm brushing my teeth..." ("grin", "narrow", "base", "dead") + call her_chibi_scene("bj", trans=d5) + her "*Gobble*! *lick*! *Gobble*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "That's it cock-slut, Almost there..." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause", trans=d5) + her "Where do you want to cum today [genie_name]?" ("soft", "narrow", "annoyed", "up") + her "I know it's greedy of me to ask..." ("angry", "narrow", "base", "down") + her "But can you cum in my mouth?" ("angry", "wink", "base", "mid") + her "{size=-4}Please...{/size} I promise I won't waste a drop." ("soft", "narrow", "annoyed", "up") + gen "I think that can be arranged..." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]!" ("smile", "happyCl", "base", "mid", cheeks="blush", emote="happy") + call her_chibi_scene("bj", trans=d5) + call nar(">Hermione devours your cock with renewed vigour.") + her "*Slurp*! *Gulp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Yes, like that... that's a good little slut..." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Deeper now." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "up") + gen "Come on cum-whore." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gobble*! *Gobble*!" ("open_wide_tongue", "narrow", "worried", "down") + gen "Alright, [hermione_name], almost there." ("base", xpos="far_left", ypos="head") + gen "Deeper now!" ("angry", xpos="far_left", ypos="head") + her "!!! *Gobble-goble-slurp-goble*! !!!" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Yes, like that!" ("angry", xpos="far_left", ypos="head") + her "{size=+5}!!! *Gobble-gobble-slurp-gobble!* !!!{/size}" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "{size=+5}Yes! Yes! Yes! Yes!{/size}" ("angry", xpos="far_left", ypos="head") + gen "*Ghr*!!!" ("angry", xpos="far_left", ypos="head") + gen "Here it comes, [hermione_name]! Here's you reward!" ("angry", xpos="far_left", ypos="head") + her "!!!" ("open_wide_tongue", "narrow", "worried", "down") + + call cum_block + call her_chibi_scene("bj_cum_in", trans=d5) + pause.8 + + call cum_block + call bld + gen "{size=+7}*ARGH*!{/size}" ("angry", xpos="far_left", ypos="head") + gen "Take my cum, slut!" ("angry", xpos="far_left", ypos="head") + her "*Gulp!-Gulp!-Gulp*!" ("open_wide_tongue_cum", "narrow", "annoyed", "up") + with hpunch + gen "Yes! Down your mouth you fucking cum dumpster!" ("angry", xpos="far_left", ypos="head") + her "*Gulp-gulp-gulp-gulp-gulp*!" ("open_wide_tongue_cum", "narrow", "annoyed", "up") + + stop music fadeout 1.0 + call her_chibi_scene("bj", trans=d5) + call ctc + + call bld + gen "Well, I think that's it." ("base", xpos="far_left", ypos="head") + gen "You can let go now..." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj_pause", trans=d5) + her "..........................." ("full_cum", "narrow", "base", "dead", tears="mascara", trans=fade) + her "................" ("full_cum", "narrow", "base", "dead", tears="mascara") + her "........" ("full_cum", "narrow", "base", "dead", tears="mascara") + gen "How was that?" ("base", xpos="far_left", ypos="head") + her "..." (tears="mascara") + call play_music("chipper_doodle") # HERMIONE'S THEME. + gen "Are you going to swallow?" ("base", xpos="far_left", ypos="head") + her "*Shakes her head from side to side*" ("full_cum", "narrow", "base", "dead", tears="mascara") + + if game.daytime: + gen "So you're going to go to class with a mouth full of my cum?" ("base", xpos="far_left", ypos="head") + else: + gen "So you're going to go to sleep with a mouth full of my cum?" ("base", xpos="far_left", ypos="head") + + her "*She nods her head up and down enthusiastically*" ("full_cum", "narrow", "annoyed", "up", cheeks="blush", tears="mascara") #Smile. + gen "Good, like a proper slut should..." ("base", xpos="far_left", ypos="head") + $ mouth_full_of_cum = True + + jump end_hg_pf_blowjob diff --git a/game/scripts/characters/hermione/events/favors/talk_to_me.rpy b/game/scripts/characters/hermione/events/favors/talk_to_me.rpy new file mode 100644 index 00000000..302d684a --- /dev/null +++ b/game/scripts/characters/hermione/events/favors/talk_to_me.rpy @@ -0,0 +1,1195 @@ + + +### Hermione Talks ### + +label hg_pf_talk: + + gen "{size=-4}(All I'll do is have an innocent conversation with her...){/size}" ("base", xpos="far_left", ypos="head") + + if hg_pf_talk.counter < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + # Start Event + $ current_payout = 5 + $ hg_pf_talk.start() + + # End Event + label end_hg_pf_talk: + + # Setup + stop music fadeout 2.0 + call hide_characters + show screen blkfade + with d3 + + call her_chibi("stand", flip=False) + call gen_chibi("sit_behind_desk") + + hide screen blkfade + her "" (xpos="mid", ypos="base", trans=fade) + + + # Points + if her_tier <= 3: + $ gryffindor += current_payout + gen "{number=current_payout} points to Gryffindor, [hermione_name]. Well done." ("base", xpos="far_left", ypos="head") + elif her_tier == 4 and hg_pf_talk.points == 1: + gen "{number=current_payout} points to Gryffindor, [hermione_name]. Well done." ("base", xpos="far_left", ypos="head") + her "Oh, don't worry about the points, [genie_name]. We were just having a nice talk." + gen "Really? What about Gryffindor winning the cup?" ("base", xpos="far_left", ypos="head") + her "It's only {number=current_payout} points..." ("soft", "base", "base", "R") + gen "If you say so." ("base", xpos="far_left", ypos="head") + + if hg_pf_talk.counter == 1: #First time. + her "Another {number=current_payout} points... The Guys will be so happy!" ("base", "happyCl", "base", "mid") + + if her_mood != 0: + her "Will this be all then?" ("annoyed", "base", "angry", "mid") + else: + her "Will this be all then?" ("soft", "base", "base", "mid") + gen "Yes, you can go now." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." + + # Hermione leaves + call her_walk("door", "base") + call her_chibi("leave") + + # Increase level + if her_tier == 1: + if her_whoring < 3: # Points til 3 + $ her_whoring += 1 + + if her_tier == 2: + if her_whoring < 9: # Points til 9 + $ her_whoring += 1 + + jump end_hermione_event + + + +### Tier 1 ### + +label hg_pf_talk_T1_intro_E1: + call play_music("chipper_doodle") + + gen "Alright then..." ("base", xpos="far_left", ypos="head") + gen "Just tell me some news about you." ("base", xpos="far_left", ypos="head") + her "*Ehm*... Alright..." ("open", "squint", "base", "mid") + her "I just stand here and talk then...? Like this?" ("base", "squint", "base", "mid", xpos="mid", ypos="base", trans=fade) + pause.8 + + gen "Well?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... very well..." ("open", "base", "worried", "mid") + call nar(">Hermione is feeling confused...") + her "..................." ("annoyed", "narrow", "angry", "R") + + call hg_pf_talk_T1 + + jump end_hg_pf_talk + + +label hg_pf_talk_T1_E1: + call play_music("chipper_doodle") + + gen "Alright then..." ("base", xpos="far_left", ypos="head") + gen "Just tell me some news about you." ("base", xpos="far_left", ypos="head") + her "Here in the middle, right? I remember..." ("open", "squint", "base", "mid", xpos="mid", ypos="base", trans=fade) + pause.8 + + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... very well..." ("open", "base", "worried", "mid") + + call hg_pf_talk_T1 + + jump end_hg_pf_talk + + +label hg_pf_talk_T1: # Call label + her "My life has been quite uneventful lately, to be honest..." ("annoyed", "narrow", "angry", "R") + her "Apart from the day when I failed that test..." ("open", "closed", "base", "mid") + her "I still can't believe it happened..." ("annoyed", "narrow", "angry", "R") + + menu: + "-Jerk off while she is talking-": + $ her_jerk_off_counter += 1 + $ genie_masturbating = True + + hide hermione_main + call nar(">You reach under the desk and grab your cock...") + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause.8 + + her "[genie_name], what are you doing?" ("open", "base", "base", "mid", xpos="mid", trans=d3) + gen "What? Oh, it's nothing. Just scratching my leg." ("base", xpos="far_left", ypos="head") + gen "You were saying?" ("base", xpos="far_left", ypos="head") + her "Yes... Well, that test I failed..." ("open", "base", "base", "mid") + + "-Participate in the conversation-": + $ genie_masturbating = False #NOT JERKING OFF. + gen "Yes, what a tragedy that was..." ("base", xpos="far_left", ypos="head") + her "Exactly! I'm glad you understand, [genie_name]." ("open", "base", "angry", "mid") + + her "Come to think of it, I don't feel like talking about it anymore..." ("annoyed", "narrow", "worried", "down") + gen "Alright, what else has happened lately?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... Well, I'm doing pretty well at Herbology..." ("annoyed", "base", "base", "R") + her "I mean, I always score the top marks, but I have been studying really hard anyway..." ("open", "closed", "base", "mid") + her "And now I sort of feel like sometimes I know more than professor Sprout herself..." ("base", "base", "base", "mid") + + if genie_masturbating: + gen "{size=-4}(Yes... *Ah*...){/size}" ("base", xpos="far_left", ypos="head") + else: + gen "(Professor Sprout... *He-he*, what a ridiculous name...)" ("grin", xpos="far_left", ypos="head") + + her "Did you say something, [genie_name]?" ("normal", "squint", "angry", "mid") + gen "It's nothing, keep going..." ("base", xpos="far_left", ypos="head") + her "Well, some students are making fun of professor Quirrell behind his back..." ("open", "base", "base", "mid") + + her "I disapprove of such behaviour, of course." ("base", "closed", "base", "mid") + if genie_masturbating: + gen "{size=-4}(Come on! Say something naughty!){/size}" ("base", xpos="far_left", ypos="head") + else: + gen ".................." ("base", xpos="far_left", ypos="head") + + her "Oh, and my \"Men's Rights Movement\" group is gaining popularity..." ("open", "base", "base", "mid") + her "I'm very happy about that..." ("smile", "base", "base", "R") + her "I think, given time, we will be able to make a real difference..." ("open", "closed", "base", "mid") + her "It is so invigorating to know that you are doing the right thing!" ("base", "base", "base", "mid") + her "Wouldn't you agree, professor?" ("base", "base", "base", "mid") + + if genie_masturbating: + $ genie_masturbating = False + gen "{size=-4}(Dammit. Now she's killed the mood completely...){/size}" ("base", xpos="far_left", ypos="head") + call gen_chibi("sit_behind_desk") + with d3 + pause.8 + else: + gen "*snore*........" ("base", xpos="far_left", ypos="head") + + her "[genie_name]?" ("angry", "base", "angry", "mid") + gen "Yes, yes, I'm totally listening..." ("base", xpos="far_left", ypos="head") + gen "This is all very self-righteous, er..." ("base", xpos="far_left", ypos="head") + gen "I mean, very invigorating and stuff..." ("base", xpos="far_left", ypos="head") + her ".........................." ("normal", "squint", "angry", "mid") + + return + + + +### Tier 2 ### + +# Hermione realises you've been jerking off this whole time! +# 'hg_jerkoff.trigger' is required to advance into the next tier. +# Event 1 (i) - Hermione can spot you jerking off. +# Event 2 (r) - Slight dialogue variation if you've been busted jerking off before. + +label hg_pf_talk_T2_intro_E1: + + her "Very well, Sir." ("base", "base", "base", "mid") + + call hg_pf_talk_T2 + + jump end_hg_pf_talk + + +label hg_pf_talk_T2_E1: + + if hg_jerkoff.trigger: + her "Another talk, [hermione_name]?" ("soft", "base", "base", "mid") + her "(I hope he doesn't do \"that\" again...)" ("disgust", "narrow", "base", "down") + else: + her "Of course, Sir." ("soft", "base", "base", "R") + + call hg_pf_talk_T2 + + jump end_hg_pf_talk + + +label hg_pf_talk_T2: + her "" ("normal", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + her "My life has been quite uneventful lately, to be honest..." ("annoyed", "narrow", "angry", "R") + her "*Hmm*..." ("annoyed", "base", "base", "R") + her "There is a fierce competition going on between the Slytherin and the Gryffindor house." ("open", "closed", "base", "mid") + her "To be honest, [genie_name], there should be none..." ("open", "narrow", "angry", "R") + her "Gryffindor would have been in the lead if not for those Slytherin harlots..." ("annoyed", "base", "angry", "mid") + her "The things I hear those girls do - simply to get a few extra points..." ("angry", "narrow", "angry", "R") + her "How despicable!" ("open", "closed", "angry", "mid") + gen "What does this make you then, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Exactly!" ("normal", "base", "base", "mid") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + her "I have to work even harder to compensate for the damage those nasty girls are doing..." ("open", "closed", "angry", "mid") + her "Thank you for helping me out, [genie_name]." ("normal", "base", "base", "mid") + + menu: + "-Start jerking off-": + $ her_jerk_off_counter += 1 + $ genie_masturbating = True + + hide hermione_main + call nar(">You reach under the desk and grab your cock...") + call gen_chibi("jerk_off_behind_desk") + with d3 + pause.8 + + her "[genie_name], what are you doing?" ("open", "base", "base", "mid") + her "You are not.....?" ("open", "base", "worried", "mid") + her "Are you...?" ("annoyed", "base", "worried", "R") + gen "What? Oh, it's nothing. Keep going." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("normal", "squint", "angry", "mid") + gen "{size=-4}(Is she onto me? Nah...){/size}" ("base", xpos="far_left", ypos="head") + + "-Participate in the conversation-": + $ genie_masturbating = False + gen "Don't mention it." ("base", xpos="far_left", ypos="head") + + her "Well, like I was saying..." ("open", "closed", "base", "mid") + her "I heard that this one girl sold one of the professors some naughty pictures of herself for ten house points..." ("open", "narrow", "angry", "R") + + if genie_masturbating: + gen "{size=-4}(What a slut... *Ah*... Yes...){/size}" ("base", xpos="far_left", ypos="head") + else: + gen "Ten points, *huh*?" ("base", xpos="far_left", ypos="head") + + her "Yes..." ("open", "closed", "base", "mid") + + if genie_masturbating: + her "And these two other girls..." ("annoyed", "base", "worried", "R") + her "There is a rumour that they are actually sleeping with professor Snape..." ("annoyed", "base", "worried", "mid") + gen "{size=-4}(Yes... Those nasty Slytherin sluts!){/size}" ("base", xpos="far_left", ypos="head") + her "Also, there was this one girl who gave a teacher a handjob, right during class..." ("base", "base", "base", "mid") + gen "{size=-4}(Yes... This is good stuff, go on!){/size}" ("base", xpos="far_left", ypos="head") + her "And this other girl, she sucked off a teacher!" ("annoyed", "base", "worried", "R") + gen "{size=-4}(Yes! Yes!){/size}" ("base", xpos="far_left", ypos="head") + her "And another girl let a teacher cum in her mouth..." ("smile", "base", "base", "R") + her "And she swallowed it all and loved it!" ("soft", "base", "base", "R") + gen "{size=-4}(Wait... Is she making this up?){/size}" ("base", xpos="far_left", ypos="head") + her "I'm a nasty girl too, you know..." ("smile", "narrow", "base", "mid_soft") + gen "What?!" ("angry", xpos="far_left", ypos="head") + her "I just want to suck a cock..." ("soft", "narrow", "base", "mid_soft") + her "I want men to cum on my face like in those magazines I saw!" ("open_tongue", "narrow", "base", "mid_soft") + gen "{size=-4}(You little slut! That did it!) *Argh!*{/size}" ("angry", xpos="far_left", ypos="head") + + call cum_block + call gen_chibi("cum_behind_desk") + with d3 + pause.8 + + call cum_block + gen "*Argh*! YES!" ("angry", xpos="far_left", ypos="head") + + if hg_jerkoff.trigger: + her "I can't believe it, [genie_name]!" ("soft", "base", "angry", "mid") + her "You were touching yourself!{w} Again!" ("angry", "base", "angry", "mid") + else: + her "You were touching yourself, [genie_name]!" ("angry", "base", "angry", "mid") + + gen "What? No, I was just... Ah, shit, this feels good..." ("angry", xpos="far_left", ypos="head") + + call hide_characters + call gen_chibi("cum_behind_desk_done") + with d3 + pause.8 + + her "This is disgusting! How could you!?" ("scream", "happyCl", "worried", "mid") + her "[genie_name], you are the headmaster! You are supposed to set a good example!" ("scream", "base", "angry", "mid") + gen "Hey, little Missy, are you going to judge me or do you want your points?" ("base", xpos="far_left", ypos="head") + her "My points please, I believe I earned those." ("angry", "happyCl", "worried", "mid",emote="sweat") + gen "Yes, you did." ("base", xpos="far_left", ypos="head") + her "*Eww*... I feel so dirty now..." ("angry", "base", "angry", "mid") + + $ her_mood = +7 + + if hg_jerkoff.trigger == False: + $ achievements.unlock("busted") + $ hg_pf_talk.change_icon(a="heart_half", b="heart_red") + $ hg_jerkoff.triggered() # .trigger = True, .counter += 1 + + else: + her "We need to put an end to this behaviour, [genie_name]!" ("open", "closed", "base", "mid") + gen "Yeah, sure..." ("base", xpos="far_left", ypos="head") + her "So you agree with me then?" ("base", "narrow", "base", "mid_soft") + her "I think we need to implement a new penalty system to punish girls who are known to sell favours..." ("open", "base", "base", "R") + gen "(All I heard was \"punish girls\"...)" ("base", xpos="far_left", ypos="head") + her "This will also help the boys in our school to feel less discriminated against!" ("open", "closed", "base", "mid") + gen "The boys?" ("base", xpos="far_left", ypos="head") + gen "Oh, right... Nobody wants to buy sexual favours from them... Poor bastards." ("base", xpos="far_left", ypos="head") + her "I'm so glad that you understand my concerns, [genie_name]." ("base", "base", "base", "mid") + gen "Yes, yes, sure..." ("base", xpos="far_left", ypos="head") + + return + + + +### Tier 3 ### + +# Hermione knows by now that you like to jerk off while she talks. +# She tells you true stories that happened at Hogwarts. +# Favours can revolve around Cho, Luna, Tonks + +label hg_pf_talk_T3_intro_E1: + gen "Let's have another chat, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Okay..." ("annoyed", "base", "worried", "mid") + gen "I'd like you to tell me a bit about your day." ("base", xpos="far_left", ypos="head") + her "Are you going to...{w=0.8} touch yourself again sir?" ("open", "squint", "base", "mid") + gen "I can't guarantee I won't..." ("base", xpos="far_left", ypos="head") + gen "You will be awarded with house points - as usual." ("base", xpos="far_left", ypos="head") + her "..." ("mad", "narrow", "worried", "down", cheeks="blush") #mad Blush + gen "You've not walked out the door, so please, tell me about your day." ("base", xpos="far_left", ypos="head") + + call hg_pf_talk_T3 + + jump end_hg_pf_talk + + +label hg_pf_talk_T3_intro_E2: + gen "{size=-4}(Should I spice things up a bit?){/size}" ("base", xpos="far_left", ypos="head") + menu: + #"-Suggest inviting Snape-": + # pass + # #To be added + # #$ hg_pf_talk_snape.start() + "-Suggest inviting Tonks-": + # Start event chronologically + $ hg_pf_talk_tonks.start() + "-Decide against it-": + gen "Let's have another chat, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Okay..." ("base", "base", "base", "mid") + + call hg_pf_talk_T3 + + jump end_hg_pf_talk + + +label hg_pf_talk_T3_repeat: + menu: + #"-Suggest inviting Snape-": + # pass + # #To be added + # #$ hg_pf_talk_snape.start() + "-Suggest inviting Tonks-": + # Start event chronologically + $ hg_pf_talk_tonks.start() + "-Decide against it-": + gen "Tell me about your day, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Okay..." ("base", "base", "base", "mid") + call hg_pf_talk_T3 + + jump end_hg_pf_talk + + +label hg_pf_talk_T3: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + pause.5 + + menu: + "-Start jerking off-": + $ her_jerk_off_counter += 1 + $ genie_masturbating = True + + hide hermione_main + call nar(">You reach under the desk and grab your cock...") + call gen_chibi("jerk_off_behind_desk") + with d3 + pause.8 + her "[genie_name], I hoped we wouldn't do this again..." ("open", "squint", "base", "mid") + her "Are you actually... Masturbating again?" ("disgust", "squint", "base", "mid") + gen "Me? I'd never do such a thing. Ever..." ("base", xpos="far_left", ypos="head") + gen "Anyhow... Don't forget why you're here, [hermione_name]. To earn some points..." ("base", xpos="far_left", ypos="head") + + "-Participate in the conversation-": + $ genie_masturbating = False + gen "Time to earn those points." ("base", xpos="far_left", ypos="head") + + her "Well..." ("open", "closed", "base", "mid") + her "Today started off fairly normal..." + her "We had muggle studies." ("base", "base", "base", "mid") + her "Professor Burbage babbled on about things she doesn't understand as usual." ("open", "base", "base", "R") + her "As I'm a muggle born I've been considering dropping the subject. It's a waste of time." ("base", "base", "base", "mid") + her "Although since I failed that test I feel like I need all the extra points I can get..." ("open", "narrow", "worried", "down") + her "Her views on muggle and wizarding relations, and the fact that we're not that different is also quite refreshing..." ("base", "happy", "base", "mid_soft") + her "Not that the Slytherins aren't constantly trying to disrupt her classes..." ("annoyed", "happyCl", "base", "mid") + if genie_masturbating: + gen "*Hmm* I bet they were..." ("base", xpos="far_left", ypos="head") + her "*UGH* Do you have to keep touching yourself professor?" ("disgust", "narrow", "worried", "down", cheeks="blush") + gen "Just keep talking [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Fine..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + else: + gen "Is that so?" ("base", xpos="far_left", ypos="head") + gen "So, what were they doing exactly?" ("base", xpos="far_left", ypos="head") + + her "Well, her room is filled with a bunch of muggle toys, instruments, and trinkets..." ("open", "base", "base", "mid") + her "Her collection would even bring mister Weasley's to shame." ("base", "base", "base", "mid") + + if genie_masturbating: + gen "(I bet she has a bunch of sex toys in there...)" ("base", xpos="far_left", ypos="head") + else: + gen "Maybe I should have a look at her collection myself." ("base", xpos="far_left", ypos="head") + + her "There's obviously nothing that stands out as odd to me in any way." ("open", "base", "base", "mid", cheeks="blush") + her "But since most of the Slytherins are pure-blood they were handling her items with little to no care." ("mad", "base", "base", "R") + her "So when they weren't silently insulting her about her views, they were constantly making suggestive remarks about the objects, asking where she'd insert them..." ("annoyed", "base", "worried", "R") + her "She's quite oblivious to it most of the time but the constant giggling from the Slytherin girls is very distracting and annoying." ("open", "narrow", "worried", "down", cheeks="blush") + her "It didn't help when they discovered what professor Burbage actually believed to be a back massager..." ("angry", "happyCl", "base", "mid", cheeks="blush") + gen "I mean, that's what it says on the box..." ("base", xpos="far_left", ypos="head") + gen "Wait, how do you know what people usually use them for?" ("angry", xpos="far_left", ypos="head") + her "..." ("disgust", "wide", "worried", "shocked", cheeks="blush") + gen "Well?" ("grin", xpos="far_left", ypos="head") + her "I..." ("annoyed", "happyCl", "worried", "mid", cheeks="blush") + her "Well, it's obvious to anyone with common sense isn't it!" ("open", "narrow", "angry", "R", cheeks="blush") + her "Even those Slytherin girls quickly realised what people use it for... and they're thicker than polyjuice potion!" ("mad", "closed", "angry", "mid", cheeks="blush") + if genie_masturbating: + gen "(I bet you wouldn't mind nicking it for yourself...)" ("base", xpos="far_left", ypos="head") + else: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Why don't {size=+4}you{/size} tell me since you seem so knowledgeable about the subject..." ("grin", xpos="far_left", ypos="head") + her "Sorry?" ("mad", "base", "worried", "mid", cheeks="blush") + gen "What {size=+4}would{/size}{w=0.6} they use those massagers for?" ("base", xpos="far_left", ypos="head") + her "Well, you know..." ("open", "narrow", "worried", "down", cheeks="blush") + gen "Pretend that I don't." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "down", cheeks="blush") + + if genie_masturbating: + her "They'd use it for what you're doing..." ("open", "happyCl", "worried", "mid") + gen "Which is..." ("base", xpos="far_left", ypos="head") + her "Well, you'd insert it...{w=0.5} and use it to..." ("normal", "narrow", "worried", "down", cheeks="blush") + gen "To what?" ("base", xpos="far_left", ypos="head") + her "To pleasure yourself..." + gen "And are you using one of these devices?" ("base", xpos="far_left", ypos="head") + her "Of...{w=0.5} of course I'm not!{w=0.5} Muggle electronics do not work at Hogwarts!" ("base", "happyCl", "base", "mid", cheeks="blush") + gen "So you have one at home then?" ("grin", xpos="far_left", ypos="head") + her "I..." ("normal", "narrow", "worried", "down", cheeks="blush") + gen "(I knew it, you dirty slut!)" ("grin", xpos="far_left", ypos="head") + her "I don't have to talk about my personal health to you!" ("open", "narrow", "angry", "R", cheeks="blush") + gen "I bet you use it any chance you get when nobody is around!" ("grin", xpos="far_left", ypos="head") + her "I do not!" ("angry", "base", "angry", "mid", cheeks="blush") + gen "{size=-4}So you do it even when your parents are at home?{/size}" ("grin", xpos="far_left", ypos="head") + gen "{size=-4}You dirty...{w=0.5}*HNGH*...{w=0.5} whore! *Argh!*{/size}" ("angry", xpos="far_left", ypos="head") + + call play_music("stop") + call hide_characters + hide screen bld1 + with d3 + call cum_block + call gen_chibi("cum_behind_desk") + with d3 + pause.8 + + call cum_block + call bld + gen "*Argh!* YES!" ("angry", xpos="far_left", ypos="head") + + call play_music("playful_tension") + if her_tier <= 4: + $ her_mood = +7 + her "[genie_name]...{w} did you just...?" ("disgust", "narrow", "base", "down") + else: + her "[genie_name]...{w} did you just...?" ("soft", "narrow", "worried", "down") + + call hide_characters + hide screen bld1 + with d3 + pause.1 + call gen_chibi("cum_behind_desk_done") + with d3 + pause.5 + + if her_tier <= 4: + her "*Yuck*!..." ("annoyed", "narrow", "base", "mid_soft") + call bld + gen "That felt amazing..." ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "base", "mid_soft", xpos="mid", ypos="base") + gen "You shouldn't hold it in, [hermione_name]... It could help you relax a bit." ("grin", xpos="far_left", ypos="head") + gen "All great wizards do it..." ("base", xpos="far_left", ypos="head") + her "(.........)" ("annoyed", "narrow", "angry", "R") + gen "I could even go fetch that massager for you if you'd like." ("base", xpos="far_left", ypos="head") + her "No!" + gen "Oh yeah, you said they don't work at the school..." ("base", xpos="far_left", ypos="head") + her "That's not what I meant..." ("annoyed", "happyCl", "worried", "mid") + gen "Loosen up a bit won't you, I'll figure something out don't you worry..." ("base", xpos="far_left", ypos="head") + her "{size=-4}I am not-{/size}" ("annoyed", "happyCl", "worried", "mid") + her "(...................)" ("disgust", "base", "worried", "mid") + gen "You've done well today [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "You've soiled your entire desk!" ("mad", "wide", "base", "stare") + gen "I'm sure it will be cleaned at one point or another..." ("base", xpos="far_left", ypos="head") + if her_tier <= 4: + her "Gross..." ("normal", "happyCl", "worried", "mid", cheeks="blush") + else: + her "(Such a waste...)" ("soft", "narrow", "worried", "down", cheeks="blush") + her "May I have my points now?" ("open", "narrow", "worried", "down", cheeks="blush") + gen "Of course..." ("base", xpos="far_left", ypos="head") + + else: + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "They're...{w=0.5} they're back massagers, it says so on the box... you said so yourself." ("open", "base", "worried", "R", cheeks="blush") + gen "Then what's the problem with the Slytherin girls having a go with it?" ("base", xpos="far_left", ypos="head") + her "Nothing! I'm sure they found it very educational!" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "I had never seen them more interested in muggle studies in fact!" ("disgust", "narrow", "angry", "R", cheeks="blush") + gen "I bet..." ("base", xpos="far_left", ypos="head") + gen "So, since you're muggle born and all..." ("base", xpos="far_left", ypos="head") + her "Yes?" ("open", "happy", "base", "mid_soft") + gen "I hope you properly demonstrated how to use it to them." ("base", xpos="far_left", ypos="head") + her "What? Why on earth do you think I would do that?" ("shock", "wide", "base", "stare", cheeks="blush") + her "Do you take me for some sort of exhibitionist?" ("mad", "wide", "base", "stare", cheeks="blush") + gen "Sorry?" ("base", xpos="far_left", ypos="head") + her "Don't you sorry me...{w=0.5} you expect me to get my fanny out and casually just shove it in there for the whole class to see?" ("angry", "base", "angry", "mid", cheeks="blush") + her "I'm sure they would love that and find it more than educational..." ("base", "closed", "angry", "mid", cheeks="blush") + with hpunch + her "How{w=0.8} {size=+6}dare{/size} you suggest--" ("open", "base", "angry", "mid", cheeks="blush") + gen "What are you talking about? Weren't we talking about back massagers?" ("base", xpos="far_left", ypos="head") + her "-I'd just tear my clothes off and..." ("open", "closed", "angry", "mid", cheeks="blush") + $ renpy.sound.play("sounds/glass_shatter.ogg") + her "..." ("mad", "wide", "base", "stare", cheeks="blush") + her "I...{w} I'm sorry professor!" + gen "I didn't take you for such a naughty girl, [hermione_name]!" ("grin", xpos="far_left", ypos="head") + gen "Here we were having an innocent conversation about back massagers and you spring all this on me." ("grin", xpos="far_left", ypos="head") + her "Professor... I didn't mean." ("soft", "happyCl", "worried", "mid", cheeks="blush") + gen "Don't you 'Professor' me..." ("grin", xpos="far_left", ypos="head") + her "But please, I assure you..." ("open", "base", "worried", "mid", cheeks="blush") + gen "That will be all for today Miss Granger." ("base", xpos="far_left", ypos="head") + gen "You've surely opened my eyes..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "base", "base", "mid") + return + + + +label hg_pf_talk_tonks_T3_intro_E1: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name], for today's favour I'd like to bring in a guest to join us." ("base", xpos="far_left", ypos="head") + her "What? Didn't we decide it was going to be between just you and I?" ("open", "squint", "angry", "mid") + gen "Well, why only the two of us when there is the option to bring another person in?" ("base", xpos="far_left", ypos="head") + her "The option to?" ("normal", "squint", "angry", "mid") + her "Sorry, I'm not following..." ("normal", "squint", "base", "mid") + gen "[hermione_name], what is your opinion of Miss Tonks?" ("base", xpos="far_left", ypos="head") + her "Well, she's a very talented witch... You'd have to be to become an auror." ("open", "closed", "base", "mid") + gen "Wouldn't it be great if we could have another chat with each other?" ("base", xpos="far_left", ypos="head") + gen "I heard you already had a bit of a talk previously." ("base", xpos="far_left", ypos="head") + her "You knew about that?" ("angry", "base", "worried", "mid", cheeks="blush") + gen "I'm the headmaster [hermione_name]...{w} It's my job to know what goes on within the castle." ("base", xpos="far_left", ypos="head") + gen "She was the one that suggested you try selling some favours yourself, was it not?" ("base", xpos="far_left", ypos="head") + her "Well..." ("disgust", "narrow", "base", "down") + gen "I think it could be quite nice to have a little conversation - all of us together." ("base", xpos="far_left", ypos="head") + her "Just a conversation then?" ("open", "base", "base", "R") + gen "Yes, just a conversation..." ("base", xpos="far_left", ypos="head") + gen "And you'd be awarded points of course." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "base", "base", "R") + her "Would I be getting any extra points for this?" ("open", "base", "base", "mid") + gen "Well, that will be up to Miss Tonks, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Okay... Just let me get more presentable." ("base", "base", "base", "mid") + gen "Great, I'll call for her then..." ("base", xpos="far_left", ypos="head") + + call hg_pf_talk_tonks + + jump end_hg_pf_talk + + +label hg_pf_talk_tonks_T3_E1: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "Let's call Miss Tonks up for this one shall we." ("base", xpos="far_left", ypos="head") + her "For what?" ("open", "happy", "base", "mid") + gen "For today's favour of course!" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "mid_soft") + her "Will I get any extra points for this?" ("open", "base", "base", "mid") + gen "Well, that will be up to Miss Tonks, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Fine.. Just let me get more presentable." ("base", "base", "worried", "R") + + call hg_pf_talk_tonks + + jump end_hg_pf_talk + + +label hg_pf_talk_tonks: + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + + pause 1 + + # Setup + $ her_outfit_last.save() + $ hermione.equip(her_outfit_default) + + $ ton_outfit_last.save() + $ tonks.equip(ton_outfit_default) + + call play_sound("door") + call ton_chibi("stand",500,"base") + call her_chibi("stand","desk","base") + hide screen blkfade + with d5 + pause.8 + + ton "" ("base", "base", "base", "mid", hair="basic", xpos="600", ypos="base") + her "Hello, Professor Tonks." ("open", "closed", "base", "mid", xpos="right", ypos="base") + her "" ("base", "base", "base", "mid") + if game.daytime: + gen "Good day, Miss Tonks." ("base", xpos="far_left", ypos="head") + ton "Good day, Professor." ("base", "happyCl", "base", "mid") + else: + gen "Good evening, Miss Tonks." ("base", xpos="far_left", ypos="head") + ton "Good evening, Professor." ("base", "happyCl", "base", "mid") + ton "Hermione..." ("horny", "base", "base", "L", hair="horny") + ton "Is there some sort of special circumstance as to why the two of you summoned me here?" ("base", "base", "raised", "mid", hair="basic") + gen "More or less." ("base", xpos="far_left", ypos="head") + gen "I think the three of us should have a bit of a chat..." ("base", xpos="far_left", ypos="head") + ton "Miss Granger, you didn't cause any trouble I hope?" ("open", "base", "base", "L") + her "Me? Of course not!" ("open", "closed", "base", "mid") + her "" ("base", "base", "base", "mid") + gen "Now, I thought we could have a chat about these favour trading allegations..." ("base", xpos="far_left", ypos="head") + gen "That you most kindly brought to Miss Tonks' attention." ("base", xpos="far_left", ypos="head") + her "Oh, those..." ("open", "narrow", "worried", "down") + gen "Unless you've suddenly changed your mind on that sort of thing?" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "base", "base", "R") + her "No, I'll talk about it - if you like..." ("open", "narrow", "base", "down", cheeks="blush") + her "" ("normal", "base", "base", "mid", cheeks="blush") + ton "..." ("horny", "base", "base", "mid", hair="horny") + gen "Why don't we start with..." ("base", xpos="far_left", ypos="head") + + menu: + "\"Those pesky Slytherin Sluts!\"": + ton "Yes, I've heard those Slytherin girls are up to no good..." ("horny", "base", "angry", "mid") + her "They are! Where do I begin?" ("open", "closed", "angry", "mid", cheeks="blush") + + menu: + "-Start jerking off-": + $ her_jerk_off_counter += 1 + $ genie_masturbating = True + call hide_characters + hide screen bld1 + with d3 + pause.2 + call gen_chibi("jerk_off_behind_desk") + with d3 + pause.8 + + call nar(">You reach under the desk and grab your cock...") + + "-Participate in the conversation-": + $ genie_masturbating = False + + ton "" ("horny", "base", "base", "down") + her "There's the time Tracey Davis gave Slughorn a lap dance, in the middle of class!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + ton "In the middle of class?" ("mad", "wide", "shocked", "stare") + her "Yes..." ("disgust", "narrow", "worried", "down", cheeks="blush") + ton "Oh my..." ("base", "narrow", "raised", "mid", hair="horny") + her "She was just sitting on his lap while he taught from his desk..." ("open", "base", "base", "R", cheeks="blush") + her "But we could all see her moving her hips!" ("annoyed", "base", "base", "R", cheeks="blush") + ton "Interesting..." ("grin", "narrow", "shocked", "down") + ton "Any other incidents, Miss Granger?" ("upset", "wide", "shocked", "L", cheeks="blush") + her "More than I could count!" ("open", "closed", "angry", "mid") + ton "" ("mad", "base", "base", "mid") + her "I'm almost certain one of the girls wasn't wearing any underwear in class - which is completely unhygienic." ("angry", "narrow", "worried", "mid_soft") + if not hermione.is_worn("panties"): + gen "(Is she even wearing any herself right now?...)" ("base", xpos="far_left", ypos="head") + her "It was as if a snail had dragged themselves across one of the seats." ("annoyed", "base", "base", "R", cheeks="blush") + her "I had to insist on staying after class - and I spent a good ten minutes scourgifying everything." ("disgust", "narrow", "worried", "down", cheeks="blush") + if genie_masturbating: + gen "(I bet you lapped it all up, slut!)" ("grin", xpos="far_left", ypos="head") + ton "Why bother, the elves would've done it anyway." ("mad", "narrow", "raised", "R") + her "About that--" ("open", "squint", "angry", "mid") + ton "Actually, let's save that topic for another time..." ("normal", "narrow", "base", "L") + if genie_masturbating: + gen "(You wanted it all for yourself, that's why!)" ("angry", xpos="far_left", ypos="head") + ton "Is there anything else you could tell us about these... naughty Slytherin girls?" ("horny", "base", "angry", "mid", hair="horny") + her "Of course!" ("open", "closed", "angry", "mid") + her "I could go on for hours about the vile things they've been up to..." ("annoyed", "narrow", "annoyed", "mid") + ton "I'm not in a rush." ("base", "narrow", "base", "down", cheeks="blush") + ton "But even if I was, it can wait until later." ("horny", "base", "raised", "L", cheeks="blush") + her "Well, that girl...{w=0.3} Pansy Parkinson..." ("open", "closed", "angry", "mid") + her "She just lets Snape grab her ass whenever he wants... and gives her five points each time..." ("annoyed", "base", "angry", "mid") + ton "Only five measly points?" ("open", "shocked", "worried", "R") + ton "(She'd get double from me... easily...)" ("upset", "base", "base", "R") + gen "..." ("base", xpos="far_left", ypos="head") + ton "Now, we can't have that, can we..." ("open", "base", "annoyed", "L") + her "I know... It angers me to the core..." ("annoyed", "base", "worried", "mid") + ton "" ("upset", "base", "worried", "L", hair="basic") + her "Everyone has been working so hard towards winning the cup... I have been working so hard..." ("open", "base", "worried", "mid", cheeks="blush") + if genie_masturbating: + gen "(You have no idea what your hard work does to me...)" ("base", xpos="far_left", ypos="head") + her "The way it is right now doesn't promote fairness at all." ("annoyed", "narrow", "worried", "down") + ton "I can see how that could be a problem..." ("open", "closed", "base", "mid") + her "It's a huge problem!" ("angry", "base", "angry", "mid") + ton "" ("base", "base", "worried", "L") + + "\"Yourself, Miss Granger!\"": + her "What?!" ("soft", "base", "worried", "mid") + ton "Yes, I would love to hear a bit more about what's going on with you Miss Granger..." ("horny", "base", "base", "L", hair="horny") + ton "When I took the teaching position, you and I had a bit of a discussion, didn't we?" ("base", "base", "raised", "L") + ton "From what I've been hearing on the Portrait vine, you have been selling a few favours yourself to professor Dumbledore here..." ("base", "narrow", "shocked", "down") + her "I have not!" ("shock", "squint", "angry", "mid", cheeks="blush") + + menu: + "-Start jerking off-": + $ her_jerk_off_counter += 1 + $ genie_masturbating = True + call hide_characters + hide screen bld1 + with d3 + pause.2 + call gen_chibi("jerk_off_behind_desk") + with d3 + pause.8 + + call nar(">You reach under the desk and grab your cock...") + + "-Participate in the conversation-": + $ genie_masturbating = False + + ton "" ("horny", "base", "base", "down") + her "" ("annoyed", "squint", "angry", "mid", cheeks="blush") + + if genie_masturbating: + gen "(Oh yes you have, you naughty slut...)" ("grin", xpos="far_left", ypos="head") + else: + $ tmp_val = her_jerk_off_counter+hg_pf_admire_panties.counter+hg_pf_admire_breasts.counter+hg_pf_grope.counter+hg_pf_strip.counter+hg_pf_handjob.counter+hg_pf_blowjob.counter+hg_pf_titjob.counter+hg_pf_sex.counter + $ tmp_word = num_to_word(tmp_val) # Sum up all favour counters and turn them into a word. + + gen "{size=-4}...[tmp_word]...{/size}" ("base", xpos="far_left", ypos="head") + her "*huh*?" ("open", "squint", "angry", "mid", cheeks="blush") + gen "You sold me exactly [tmp_word] favours." ("base", xpos="far_left", ypos="head") + her "B-but that's--" ("angry","happy", "angry", "mid", cheeks="blush") + if tmp_val < 10: + ton "Disappointing, but it's a start." ("open", "closed", "base", "mid", hair="basic") + her "..." ("annoyed", "narrow", "base", "R_soft", cheeks="blush") + elif tmp_val >= 10 and tmp_val < 20: + ton "Not bad, but I expected better from one of the top students in entire school." ("open", "base", "base", "L", hair="basic") + elif tmp_val >= 20 and tmp_val < 30: + her "" ("angry", "narrow", "base", "R_soft", cheeks="blush") + ton "You go girl! I expected as much from one of my students." ("open", "base", "angry", "L", hair="basic") + gen "..." ("base", xpos="far_left", ypos="head") + ton "I meant to say, one of {i}your{/i} students, of course." ("upset", "base", "worried", "mid", hair="basic") + elif tmp_val >= 30 and tmp_val < 40: + ton "Aren't you a sneaky one, *huh*? Almost tricked me with those doe-like eyes of yours - that you're an innocent girl." ("horny", "base", "angry", "L", hair="horny") + ton "But, as it turns out, you're actually quite high on the list." ("open", "base", "raised", "L", hair="basic") + her "(... there's a list...?)" ("open", "happyCl", "worried", "mid", cheeks="blush") + ton "At the very top!" ("silly", "happyCl", "base", "mid") + her "..." ("angry", "narrow", "base", "down", cheeks="blush") + else: + ton "Wow! Who would have thought you're the girl from top of the list." ("silly", "happyCl", "base", "mid") + ton "Colour me surprised, looks like they were telling the truth after all." ("horny", "base", "angry", "L", hair="horny") + her "(... a list ... what list...?)" ("angry", "wide", "worried", "stare", cheeks="blush") + ton "Congratulations for being a \"top\" student." ("horny", "base", "raised", "L") + her "..." ("disgust", "narrow", "base", "R_soft", cheeks="blush") + + ton "Don't be so shy, girl. I'm happy that you took my advice to heart..." ("open", "base", "base", "L", hair="basic") + ton "After all, it's thanks to you that the ministry sent me here." ("base", "base", "base", "L") + her "I guess..." ("disgust", "narrow", "base", "down", cheeks="blush") + her "I assure you that I was actually against the practice - during the time of sending the letter..." ("annoyed", "narrow", "worried", "down", cheeks="blush") + her "At least, until we had our talk about it, Professor." ("soft", "base", "base", "R", cheeks="blush") + if genie_masturbating: + gen "(And we've only just started...)" ("base", xpos="far_left", ypos="head") + her "To help my house catch up in points. Doing it to help Gryffindor..." ("soft", "narrow", "worried", "down", cheeks="blush") + if genie_masturbating: + gen "(And because you love it...)" ("grin", xpos="far_left", ypos="head") + ton "Well, if you can't beat them..." ("horny", "base", "base", "R", hair="horny") + ton "So, how has that been working for you so far, Miss Granger?" ("open", "base", "base", "L", hair="basic") + ton "How is morale amongst the Gryffindor students, now?" ("base", "base", "raised", "L") + her "It's great! Although... I still believe that it isn't fair..." ("soft", "base", "base", "mid", cheeks="blush") + her "That is why I created the \"M.R.M\"!" ("open", "happy", "base", "mid_soft") + ton "Yes. The \"Men's Reign Movement\"..." ("open", "closed", "base", "mid") + ton "" ("base", "base", "base", "mid") + her "But...{w=0.5} that's not what \"M.R.M\" stands for!" ("angry", "base", "worried", "mid") + her "It's the \"Men's Rights Movement\"!" ("open", "closed", "base", "mid") + her "I've told you both about it... In detail!" ("annoyed", "base", "angry", "mid") + ton "I see... I probably wrote it down and put it somewhere in my...{w=0.8} extensive notes folder..." ("soft", "base", "raised", "R") + gen "{size=-5}(*Heh!* It's like looking at myself in a mirror...){/size}" ("base", xpos="far_left", ypos="head") # Small text + her "(...)" ("annoyed", "narrow", "worried", "down") + her "The \"M.R.M\" is there to provide male students with the same fairness, righteousness, and just benefits that girls are receiving at the school." ("open", "closed", "base", "mid") + her "I felt its creation was necessary..." ("annoyed", "base", "base", "mid") + + her "All this favour trading has been completely unfair to the boys!" ("open", "narrow", "annoyed", "mid") + ton "Ah, yes... yes." ("open", "closed", "worried", "mid") + ton "... Wait, what?" ("mad", "shocked", "raised", "L") + gen "..." ("grin", xpos="far_left", ypos="head") + her "*Ugh!*... I assumed you read through the initial letter more thoroughly..." ("open", "narrow", "worried", "mid_soft") + if genie_masturbating: + gen "(too busy staring her down I bet...)" ("base", xpos="far_left", ypos="head") + else: + gen "Now-now, Miss Granger... Tonks was very quick to get here when she heard about your accusations." ("base", xpos="far_left", ypos="head") + her "I suppose..." ("annoyed", "narrow", "base", "R_soft") + ton "So your problem was never that the girls of this school are engaging in illicit, sexual favours with their teachers..." ("normal", "wide", "raised", "L") + ton "It's that the boys aren't able to do the same?" ("upset", "base", "raised", "L") + her "Exactly!" ("open", "closed", "angry", "mid") + ton "Why didn't you say so during our talk earlier, Miss Granger?" ("grin", "narrow", "raised", "L") + ton "I can easily sort out that problem!" ("horny", "base", "base", "L", hair="horny") + her "I {i}did{/i} mention it!" ("angry", "happyCl", "worried", "mid") + ton "Oh..." ("annoyed", "base", "raised", "downR", hair="basic") + if not genie_masturbating: + gen "..." ("base", xpos="far_left", ypos="head") + ton "Hold on..." ("open", "closed", "base", "mid") + ton "That doesn't explain as to why {i}you{/i} decided to contribute to this problem, and do favours for your teachers as well." ("open", "base", "raised", "L") + her "Well..." ("disgust", "base", "base", "R") + ton "There is no need for you to keep up an act, if you changed your mind on it." ("soft", "base", "base", "down") + ton "You can tell us. I most certainly won't judge you..." ("horny", "base", "base", "L", cheeks="blush", hair="horny") + her "I just...{w=0.6} Sometimes Gryffindor is just so far behind in points..." ("soft", "narrow", "base", "down") + ton "Oh, I see..." ("base", "base", "base", "L", hair="basic") + her "So I also asked Professor Dumbledore for a favour, but only once or twice..." ("soft", "base", "base", "mid", cheeks="blush") + + if not genie_masturbating: + gen "Actually..." ("base", xpos="far_left", ypos="head") + her "*Hmph*..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + ton "And I suppose you're against the idea of doing favours for another teacher?" ("horny", "base", "raised", "L", hair="horny") + her "I..." ("angry", "narrow", "worried", "down", cheeks="blush") + her "*Umm*... maybe I could?" ("soft", "base", "base", "R", cheeks="blush") + her "I haven't actively considered it..." ("soft", "narrow", "base", "mid_soft", cheeks="blush") + if genie_masturbating: + gen "(Yes! You want to make out with your slutty teacher, don't you!)" ("angry", xpos="far_left", ypos="head") + ton "Don't think I'm judging you, Miss Granger." ("normal", "base", "base", "L", hair="basic") + ton "I'm sure your house has been ecstatic about the sudden spike in house points." ("soft", "wide", "raised", "L") + if genie_masturbating: + gen "(And they're not the only ones being ecstatic!)" ("angry", xpos="far_left", ypos="head") + "*fap-fap-fap*" + gen "(I'm getting close. Maybe I should ask her about something else...)" ("base", xpos="far_left", ypos="head") + $ tmp_name = hermione_name[:3] + gen "[tmp_name]-...{w=0.3} *Ugh*... Miss Granger..." ("angry", xpos="far_left", ypos="head") + gen "Why don't you tell us more about..." ("angry", xpos="far_left", ypos="head") + else: + gen "I think we've been trailing a bit off topic here..." ("base", xpos="far_left", ypos="head") + ton "Oh yes, perhaps..." ("base", "base", "base", "L", hair="basic") + gen "Miss Granger, why don't you tell us more about..." ("base", xpos="far_left", ypos="head") + + menu: + "\"Those pesky Slytherin Sluts!\"": + her "What else would you like to know?" ("open", "base", "base", "mid") + if genie_masturbating: + gen "What other.. *Ugh.. activities do you have here?" ("base", xpos="far_left", ypos="head") + else: + gen "What other classes do you have here?" ("base", xpos="far_left", ypos="head") + her "I'm not sure what you mean, Professor..." ("annoyed", "base", "base", "R") + ton "I think what your headmaster is getting at..." ("open", "closed", "base", "mid") + ton "Is there any other... uncouth behaviour going on outside of the dungeons?" ("grin", "base", "raised", "L", hair="horny") + ton "You've only mentioned potions and alchemy class thus far." ("base", "base", "base", "L") + if genie_masturbating: + gen "(Where did those bad teachers touch you?)" ("grin", xpos="far_left", ypos="head") + else: + gen "Yes, that!" ("base", xpos="far_left", ypos="head") + her "Well, of course there is... Even if they might not be as successful..." ("annoyed", "base", "angry", "mid_soft") + her "With all the teachers, there are plenty of filthy tactics being used - all over the school." ("open", "base", "angry", "mid") + if genie_masturbating: + gen "(Filthy, *huh*?)" ("angry", xpos="far_left", ypos="head") + "*fap-fap-fap*" + else: + gen "Such-{w=0.5}{nw}" ("base", xpos="far_left", ypos="head") + ton "Such as?" ("horny", "base", "raised", "L") + + # Random choice of stuff that has happened. + $ character_choice = [] + $ character_choice.append("slytherins") # 'else' choice. List can't be empty. + if cho_tier >= 2: + $ character_choice.append("cho_1") + if cc_pf_strip.counter >= 2: # Cho stripped and Hermione saw it. + $ character_choice.append("cho_2") + if astoria_unlocked: + $ character_choice.append("astoria_1") + + $ random_choice = renpy.random.choice(character_choice) + + if random_choice == "cho_1": # After winning against Hufflepuff. + her "It's not even just the Slytherins doing it!" ("open", "closed", "angry", "mid") + ton "Oh really?" ("base", "base", "raised", "L") + her "Yes, that girl from Ravenclaw...{w=0.6} Cho Chang..." ("open", "base", "angry", "mid") + her "She was using some pretty dirty tactics - during the first Quidditch match of the season!" ("angry", "base", "angry", "mid") + gen "(Yes, very dirty indeed...)" ("grin", xpos="far_left", ypos="head") + her "You could clearly see her panties at one point..." ("soft", "base", "angry", "mid") + her "Surely she dressed that way just to distract the other team..." ("annoyed", "narrow", "angry", "R") + if genie_masturbating: + gen "(I'm sure it distracted the commentator as well...)" ("base", xpos="far_left", ypos="head") + else: + gen "Were you looking, Miss Granger?" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "R_soft", cheeks="blush") + ton "*Hmm*... sounds like watching Quidditch has gotten a lot more interesting since I was in school." ("horny", "base", "raised", "mid") + her "I wouldn't use the word interesting to describe it..." ("annoyed", "base", "worried", "mid", cheeks="blush") + ton "I'll make sure to show up to the next match, to see what's going on for myself." ("base", "base", "base", "mid") + her "Thank you professor..." ("open", "closed", "base", "mid") + + elif random_choice == "cho_2": # After Cho stripped for you. + her "You're well aware that it's not just Slytherins that have been doing stuff like this..." ("open", "closed", "angry", "mid") + ton "If you'd like to give an example..." ("base", "base", "base", "L") + her "I'm talking about Cho Chang!" ("open", "base", "angry", "mid") + ton "Ah yes, the Ravenclaw seeker..." ("base", "base", "raised", "mid") + ton "She's a feisty one, isn't she!" ("horny", "base", "angry", "mid") + her "..." ("annoyed", "base", "angry", "mid") + ton "Would you like to tell me what she did?" ("horny", "base", "base", "L") + if genie_masturbating: + gen "(Stripped right in front us is what she did!)" ("angry", xpos="far_left", ypos="head") + "*fap-fap-fap*" + else: + gen "I can tell you all about Miss Chang's little--" ("grin", xpos="far_left", ypos="head") + her "She was dancing! Right here!" ("open", "closed", "base", "mid") + ton "Oh, did she really?" ("base", "base", "raised", "L") + ton "With or without clothes?" ("horny", "base", "angry", "mid") + if genie_masturbating: + her "Without..." ("soft", "narrow", "base", "R_soft") + else: + gen "The latter!" ("grin", xpos="far_left", ypos="head") + ton "Oh my... What girl would do such a shameful thing..." ("open", "base", "worried", "mid") + her "..." ("disgust", "narrow", "worried", "down", cheeks="blush") + ton "Are you blushing, Miss Granger?" ("base", "base", "angry", "L") + her "..." ("disgust", "narrow", "base", "down", cheeks="blush") + her "N-no...? Anyway..." + + elif random_choice == "astoria_1": # After Astoria got caught. + her "That Astoria girl, casting imperio on a student - making her lift her top..." ("soft", "narrow", "angry", "R") + ton "Ah, yes that was unfortunate..." ("normal", "base", "worried", "R", hair="basic") + if genie_masturbating: + gen "(And hot...)" ("angry", xpos="far_left", ypos="head") + her "I take it that has been dealt with?" ("normal", "base", "base", "R") + ton "Yes, there's no need for you to worry about her, miss Granger..." ("base", "happyCl", "raised", "mid", hair="basic") + ton "She has been properly reprimanded - and both professor Dumbledore and I have taken it upon ourselves to work on her behaviour." ("horny", "base", "base", "mid", hair="horny") + #if first training done: + if genie_masturbating: + gen "(If only there was a reason to give you some punishment...)" ("grin", xpos="far_left", ypos="head") + "*fap-fap-fap*" + her "I see..." ("normal", "narrow", "worried", "down") + her "Well, that's good to hear..." ("open", "closed", "base", "mid") + her "I would have just handed her over to the authorities, if it was up to me..." ("open", "base", "angry", "mid") + her "Anyway..." ("open", "closed", "base", "mid") + + else: + her "..." ("annoyed", "narrow", "worried", "down", cheeks="blush") + ton "Miss Granger?" ("normal", "base", "raised", "L") + her "*Ehm*..." ("annoyed", "base", "base", "R", cheeks="blush") + her "Well, I could pick any of the girls in Slytherin, really..." ("soft", "narrow", "angry", "R") + + her "It is quite astonishing to what level those Slytherins would go - to get the teachers going..." ("annoyed", "base", "angry", "mid") + her "Especially that one time during care for magical creatures..." ("open", "base", "base", "mid") + ton "Oh? You weren't studying centaurs, were you?" ("horny", "base", "raised", "mid") + her "No? Why would you assume that?" ("normal", "wink", "base", "mid") + ton "No reason... please continue..." ("open", "base", "raised", "R", cheeks="blush", hair="horny") + ton "" ("base", "base", "raised", "mid", hair="basic") + her "Well, I do hope that Hagrid is above this favour trading business. He sure seems like it during my classes with him." ("open", "base", "base", "R") + her "One of those Slytherin students was being quite rough with a {i}Blast-ended Skrewt{/i}... making it go off on purpose..." ("annoyed", "narrow", "worried", "down") + + if genie_masturbating: + her "She was slowly moving it up and down, only agitating it a bit initially..." ("annoyed", "base", "base", "mid") + gen "(Yes I bet you'd love to do that with my cock.)" ("grin", xpos="far_left", ypos="head") + her "But once she got going - you could really see how it could just go off any minute..." ("open", "base", "base", "mid") + gen "(Yes, any minute now...)" ("angry", xpos="far_left", ypos="head") + her "I was just about to call her out on it, as it started shaking violently." ("open", "base", "base", "R") + gen "(Yes, any second now...)" ("angry", xpos="far_left", ypos="head") + ton "Then what happened?" ("open", "base", "raised", "L", cheeks="blush") + her "I could momentarily see the concerned look on her face, as the {i}Skrewt{/i} exploded right into it..." ("open", "narrow", "worried", "down", cheeks="blush") + ton "" ("horny", "base", "angry", "mid", cheeks="blush", hair="horny") + gen "(Yes, take it right on your face you slut!)" ("angry", xpos="far_left", ypos="head") + + call hide_characters + hide screen bld1 + with d3 + call cum_block + call gen_chibi("cum_behind_desk") + with d3 + pause.8 + + call cum_block + call bld + gen "{size=-5}*Argh*! YES!{/size}" ("angry", xpos="far_left", ypos="head") + + her "" ("annoyed", "base", "base", "mid", cheeks="blush") + ton "Are you okay, professor? You're awfully quiet..." ("base", "base", "raised", "mid", cheeks="blush") + her "(.............)" ("soft", "base", "base", "mid") + call gen_chibi("cum_behind_desk_done") + with d3 + pause.2 + call bld + gen "Oh... yes, I was just so engaged in the conversation." ("base", xpos="far_left", ypos="head") + ton "Oh really?" ("horny", "narrow", "raised", "mid") + ton "What were we talking about then?" ("base", "base", "angry", "mid") + gen "Fast...{w=0.4} blended...{w=0.6} fruits?" ("base", xpos="far_left", ypos="head") + ton "Right..." ("open", "closed", "raised", "mid", hair="basic") + ton "Well, then... I think we're done here..." ("base", "narrow", "raised", "R") + her "..." ("normal", "base", "base", "R", cheeks="blush") + if game.daytime: + ton "I'll leave you two to it, have a good day, Miss Granger." ("base", "base", "base", "L") + her "Good day, professor Tonks." ("soft", "base", "base", "R") + else: + ton "I'll leave you two to it, have a good night, Miss Granger." ("base", "base", "base", "L") + her "Good night, professor Tonks." ("soft", "base", "base", "R") + ton "Professor..." ("horny", "base", "raised", "mid") + gen "Miss Tonks..." ("base", xpos="far_left", ypos="head") + + call ton_walk(action="leave") + + else: + ton "Oh no, those poor things!" ("upset", "base", "worried", "mid", hair="basic") + her "..." ("annoyed", "base", "base", "R") + ton "That's not how you're supposed to care for a Blast-ended skrewt..." ("open", "closed", "angry", "mid") + ton "Wait, what is a {i}Blast-ended Skrewt{/i} actually?" ("upset", "base", "worried", "L") + her "It's some crossbreed that Hagrid has made... I don't know exactly how he managed it..." ("annoyed", "narrow", "worried", "down") + ton "Sounds to me that this Hagrid fellow has been doing some illegal breeding..." ("upset", "base", "raised", "mid") + gen "(He-he-he)" ("grin", xpos="far_left", ypos="head") + gen "*Ahem*..." ("base", xpos="far_left", ypos="head") + ton "Although, all things considered!" ("open", "closed", "base", "mid") + ton "It's probably nothing too bad." ("silly", "happyCl", "base", "mid") + + ton "Well then, I think we're done here." ("open", "base", "worried", "mid") + ton "I'll leave you two to it..." ("base", "base", "base", "mid") + if game.daytime: + ton "Have a good day, Miss Granger." ("base", "base", "base", "L") + her "Good day, professor Tonks." ("open", "base", "base", "R") + else: + ton "Have a good night, Miss Granger." ("base", "base", "base", "L") + her "Good night, professor Tonks." ("open", "base", "base", "R") + ton "Professor..." ("horny", "base", "raised", "mid") + gen "Miss Tonks..." ("base", xpos="far_left", ypos="head") + + call ton_walk(action="leave") + + "\"Yourself.\"": + her "Well..." ("angry", "narrow", "worried", "down") + ton "Yes..." ("base", "base", "raised", "L") + ton "What does our Headmaster ask of you to earn those house points?" ("horny", "base", "angry", "mid", hair="horny") + gen "..." ("angry", xpos="far_left", ypos="head") + if genie_masturbating: + gen "(Let's take a short break, my hands are getting tired.)" ("grin", xpos="far_left", ypos="head") + call gen_chibi("sit_behind_desk") + her "I..." ("angry", "happyCl", "worried", "mid") + ton "Go on, I'm sure the Headmaster doesn't mind." ("grin", "narrow", "raised", "L") + ton "My lips are sealed. {heart}" ("horny", "base", "base", "mid") + her "Professor..." ("disgust", "narrow", "base", "down") + gen "Miss Granger, your professor asked you a question..." ("base", xpos="far_left", ypos="head") + her "But, I thought it was supposed to stay between just you and I..." ("disgust", "narrow", "base", "mid_soft") + + menu: + "\"That's true\"": + gen "Then let's end it here for today..." ("base", xpos="far_left", ypos="head") + ton "But sir..." ("open", "base", "worried", "mid", hair="sad") + gen "Tonks..." ("base", xpos="far_left", ypos="head") + ton "Fine..." ("upset", "base", "worried", "down", hair="basic") + ton "I've thoroughly enjoyed it, in any case." ("base", "base", "base", "L") + gen "Good to hear." ("grin", xpos="far_left", ypos="head") + ton "I'll leave you two to it..." ("base", "base", "base", "mid") + if game.daytime: + ton "Have a good day, Miss Granger." ("base", "base", "base", "L") + her "Good day, professor Tonks." ("open", "base", "base", "R") + else: + ton "Have a good night, Miss Granger." ("base", "base", "base", "L") + her "Good night, professor Tonks." ("open", "base", "base", "R") + + call ton_walk(action="leave") + + call bld + gen "(She ignored me...?)" ("base", xpos="far_left", ypos="head") + if genie_masturbating: + gen "(And I just got blue-balled, bollocks...)" ("base", xpos="far_left", ypos="head") + $ genie_masturbating = False + + "\"Tonks isn't some kind of snitch\"": + gen "I'm sure we can take Miss Tonks at her word." ("base", xpos="far_left", ypos="head") + her "But..." ("disgust", "narrow", "worried", "mid_soft") + gen "I'm sure Miss Tonks would be happy to provide additional points, as you'd basically be providing a favour for us both." ("base", xpos="far_left", ypos="head") + ton "*Hmmm* Oh yes, I'd love to be of help for the Gryffindor house." ("horny", "base", "base", "mid", hair="horny") + her "In that case I want another five points." ("annoyed", "base", "base", "mid") + gen "That can be arrange--" ("base", xpos="far_left", ypos="head") + ton "Done!" ("base", "base", "angry", "mid") + $ current_payout = 10 + if genie_masturbating: + call gen_chibi("jerk_off_behind_desk") + gen "(This should be good...)" ("base", xpos="far_left", ypos="head") + her "W-{w=0.3}What would you like to know about then?" ("open", "base", "base", "R", cheeks="blush") + ton "I'd be happy with anything you'd like to tell me..." ("base", "base", "base", "L") + her "Well... it's quite embarrassing." ("disgust", "narrow", "worried", "down", cheeks="blush") + ton "Yes?" ("soft", "base", "raised", "L") + if hg_pf_strip.counter > 1: + her "Well, he asked me to dance for him..." ("open", "narrow", "base", "R_soft", cheeks="blush") + ton "Yes... dance..." ("open", "base", "raised", "R") + if genie_masturbating: + gen "(And you loved every second of it, that butt bouncing around...)" ("angry", xpos="far_left", ypos="head") + else: + her "Well, he made me show him my panties..." ("open", "narrow", "base", "R_soft", cheeks="blush") + ton "Panties, you say..." ("base", "base", "raised", "L", cheeks="blush") + if genie_masturbating: + gen "(And you loved every second of it, I bet you were totally wet under those panties!)" ("angry", xpos="far_left", ypos="head") + if hermione.is_worn("panties"): + gen "(Not that you wear any anymore, don't you [hermione_name]?)" ("grin", xpos="far_left", ypos="head") + ton "And how did that make you feel?" ("soft", "base", "raised", "L", cheeks="blush") + her "Humiliated!" ("annoyed", "narrow", "base", "R_soft", cheeks="blush") + ton "And your headmaster, did he enjoy it?" ("base", "narrow", "raised", "mid") + + if genie_masturbating: + if hg_pf_strip.counter > 1: + her "He did seem to enjoy it." ("open", "closed", "base", "mid", cheeks="blush") + gen "(Yes! I thoroughly enjoyed that little show of yours, you slut!)" ("angry", xpos="far_left", ypos="head") + ton "I'm sure it was quite the sight...{w=0.4} Did you take your clothes off?" ("base", "narrow", "base", "L") + her "Professor!" ("disgust", "narrow", "base", "R") + her "I--" ("clench", "narrow", "base", "down") + ton "There's nothing to be ashamed of if you're doing it for the honour of your house..." ("soft", "base", "base", "L") + her "You believe so, professor?" ("open", "base", "worried", "R") + ton "Of course, I was the one who suggested you sell your headmaster some favours was it not?" ("grin", "base", "base", "L") + ton "So, just continue doing what your headmaster asks of you and you'll make your house proud." ("base", "base", "base", "L") + else: + her "He did seem to enjoy... them." ("soft", "narrow", "base", "down", cheeks="blush") + gen "(Yes! Panties!)" ("angry", xpos="far_left", ypos="head") + + call hide_characters + hide screen bld1 + with d3 + pause.2 + call cum_block + call gen_chibi("cum_behind_desk") + with d3 + pause.8 + + call cum_block + call bld + gen "{size=-5}*Argh!* YES!{/size}" ("angry", xpos="far_left", ypos="head") + + her "" ("annoyed", "base", "base", "R") + ton "Seems like the headmaster enjoyed our little discussion..." ("horny", "base", "angry", "mid", hair="horny") + her "(.............)" ("soft", "base", "base", "mid") + + call gen_chibi("cum_behind_desk_done") + with d3 + pause.2 + + call bld + gen "*Ah-Ah*..." ("angry", xpos="far_left", ypos="head") + ton "What have you been doing back there?" ("soft", "narrow", "raised", "mid", hair="horny") + gen "I--" ("base", xpos="far_left", ypos="head") + her "H-{w=0.3}he isn't doing anything! Isn't that right, Professor?" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "Just *Ehm*...{w=0.5} stretching your leg, as always." ("crooked_smile", "base", "worried", "mid", cheeks="blush") + ton "Right..." ("normal", "base", "shocked", "R") + ton "Well then, since my work here is done... I need to go back to my regular duties." ("open", "closed", "base", "mid", hair="basic") + + else: + gen "I sure what--" ("base", xpos="far_left", ypos="head") + ton "I'm asking miss Granger." ("upset", "base", "base", "mid") + gen "Oh, of course!" ("base", xpos="far_left", ypos="head") + + her "He did seem to enjoy it." ("open", "closed", "base", "mid", cheeks="blush") + her "Maybe a bit too much even..." ("angry", "narrow", "base", "R_soft", cheeks="blush") + ton "That just means you did a great job, Miss Granger." ("base", "base", "base", "L") + ton "Your house surely benefited even more from it." ("horny", "base", "raised", "L") + her "True..." ("soft", "base", "base", "R", cheeks="blush") + ton "Well, I do believe we're done here..." ("open", "closed", "base", "mid", hair="basic") + ton "You've done a great, job Miss Granger." ("open", "base", "base", "L") + ton "The Gryffindor house should be proud to have you." ("base", "base", "base", "mid") + gen "Yes..." ("base", xpos="far_left", ypos="head") + gen "That surely was something, Miss Granger..." ("base", xpos="far_left", ypos="head") + ton "It was... I'm glad you two called me..." ("silly", "happyCl", "base", "mid") + ton "This conversation has been very enlightening." ("horny", "base", "base", "mid", hair="horny") + + ton "I'll leave you two to it..." ("base", "base", "base", "mid", hair="basic") + if game.daytime: + ton "Have a good day, Miss Granger." ("base", "base", "base", "L") + her "Good day, professor Tonks." ("open", "base", "base", "R") + else: + ton "Have a good night, Miss Granger." ("base", "base", "base", "L") + her "Good night, professor Tonks." ("open", "base", "base", "R") + ton "Professor..." ("horny", "base", "raised", "mid") + gen "Miss Tonks..." ("base", xpos="far_left", ypos="head") + + call ton_walk(action="leave") + + + $ tonks.equip(ton_outfit_last) + $ hermione.equip(her_outfit_last) + $ tonks_busy = True + + return diff --git a/game/scripts/characters/hermione/events/forest.rpy b/game/scripts/characters/hermione/events/forest.rpy new file mode 100644 index 00000000..95aef0c6 --- /dev/null +++ b/game/scripts/characters/hermione/events/forest.rpy @@ -0,0 +1,952 @@ +label hermione_map_BJ: + stop weather + + $ renpy.call('forest_BJ_'+str(forest_BJ_progress)) + $ hermione_busy = True + call set_her_map_location("gryffindor_room") + + jump return_office + +label forest_BJ_1: #BJ in the forest interrupted by moaning myrtle + show screen blkfade + with d3 + + call play_music("night_outside") + call play_sound("walking_on_grass") + + ">Sure enough, the map seems to {b}magically{/b} guide you to the girl, alone in the midnight air..." + ">Seemingly scraping some resin off a tree..." + + $ hermione.wear("all") + # TODO: Add robe force equip. + + $ dynamic_cg("herm_forest", "base") + hide screen blkfade + with d3 + + gen "Miss Granger? What are you doing out here at this time of night?" ("base", xpos="far_left", ypos="head") + her "[genie_name]! I, ugh, I wasn't doing anything bad, I swear!" ("angry", "wide", "base", "R", xpos="base", ypos="base", trans=d5) + gen "..." ("base", xpos="far_left", ypos="head") + her "Ugh, fine! If you must know, I was out here gathering up some mastic resin." ("upset", "narrow", "worried", "down") + her "I know Students aren't {i}technically{/i} supposed to touch the stuff since it's normally just used to make belch powder..." ("annoyed", "base", "base", "R") + her "But I'm using it in my research for a non addictive analgesic!" ("open", "closed", "base", "mid") + gen "Whatever..." ("base", xpos="far_left", ypos="head") + + menu: + "-Let her get back to her botany-": + gen "Well I better leave you be then..." ("base", xpos="far_left", ypos="head") + her "Really?" ("upset", "wide", "worried", "shocked") + "You mean you don't want to..." + gen "Maybe some other time." ("base", xpos="far_left", ypos="head") + her "..." ("upset", "narrow", "worried", "down") + show screen blkfade + with d3 + ">You turn away from the miffed girl." + gen "..." ("base", xpos="far_left", ypos="head") + gen "(What's wrong with me?)" ("base", xpos="far_left", ypos="head") + return + "-Ask for a blowjob-": + gen "Well, seeing that we're all alone out here..." ("base", xpos="far_left", ypos="head") + her "Oh... I, um, guess we are..." ("open", "wide", "base", "R") + gen "Wanna fool around?" ("base", xpos="far_left", ypos="head") + her "Oh thank goodness... I thought you were going to murder me for a second there..." ("base", "happyCl", "base", "mid",trans=hpunch) + gen "What? How could you think such a thing!" ("base", xpos="far_left", ypos="head") + gen "I don't know if I'll be able to--" ("base", xpos="far_left", ypos="head") + her "How about I make it up to you with my mouth then, *Hmm*?" ("base", "narrow", "base", "mid") + gen "Done." ("base", xpos="far_left", ypos="head") + $ forest_BJ_progress = 2 + + show screen blkfade + with d3 + + ">The girl softly lays her robe on the cool grass before kneeling down on it in front of your steaming cock." + + $ dynamic_cg("herm_forest", "base", "1", "overlay") + + hide hermione_main + hide screen blkfade + with d3 + + her "*Mmmm*... I don't think I'll ever get sick of this cock..." + gen "It'll get sick of having to wait for you to put it in your mouth though." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "2", "overlay") + her "*Hmph*... now, now, [genie_name], patience is a virtue..." + $ dynamic_cg("herm_forest", "base", "3", "overlay") + her "Besides, doesn't my hand feel nice?" + gen "Not as nice as your mouth." ("base", xpos="far_left", ypos="head") + her "Alright then... Have it your way." + $ dynamic_cg("herm_forest", "base", "4", "overlay") + ">Hermione leans forward and engulfs the head of your cock in her mouth." + anon "{size=-4}Wow...{/size}" + $ dynamic_cg("herm_forest", "base", "5", "overlay") + her "!!!" + her "Did you hear something?" + gen "What? I don't believe so..." ("base", xpos="far_left", ypos="head") + gen "Not unless you count the sound of you sucking away..." ("base", xpos="far_left", ypos="head") + gen "Speaking of which..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "6", "overlay") + her "..." + $ dynamic_cg("herm_forest", "base", "7", "overlay") + ">Hermione goes back to work, slobbering her way up and down your cock." + gen "Gods... they'd make you a queen for sucking cock like this in Agrabah..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "8", "overlay") + her "(Where?)" + gen "*Mmmmm*... Fuck yes..." ("base", xpos="far_left", ypos="head") + anon "{size=-8}*te-he-he-he*...{/size}" + $ dynamic_cg("herm_forest", "base", "5", "overlay") + her "!!!" + $ dynamic_cg("herm_forest", "base", "9", "overlay") + her "Tell me you heard something that time sir!" + + menu: + "-Tell her to get back to work-": + gen "All I hear is a mouth that needs to get back to sucking." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "10", "overlay") + her "Not now sir!" + her "I think there's someone else here..." + her "Or something else..." + gen "Wait..." ("base", xpos="far_left", ypos="head") + gen "You don't mean..." ("base", xpos="far_left", ypos="head") + "-Agree with her-": + $ dynamic_cg("herm_forest", "base", "10", "overlay") + gen "You might be right..." ("base", xpos="far_left", ypos="head") + gen "Did it sound like someone laughing?" ("base", xpos="far_left", ypos="head") + her "Yeah..." + her "{size=+10}Show yourselves!!!{/size}" + + $ dynamic_cg("herm_forest", "base", "m1", "9", "overlay") + myr "*Te-he-he-he*... Hi Hermione..." + $ dynamic_cg("herm_forest", "base", "m1", "11", "overlay") + with hpunch + gen "{size=+10}AH! A G-G-GHOST!{/size}" ("angry", xpos="far_left", ypos="head") + myr "*ha-ha-ha-hah*!" + myr "Good one Dumbledore! You always were a joker." + her "Myrtle!" + her "This isn't what it looks like!" + myr "Isn't it?" + myr "I think it looks lovely..." + her "*Argh*! Please don't tell anyone!!!" + show screen blkfade + with d3 + + ">Hermione hastily covers up and sprints away angrily as the ghostly apparition fades away..." + gen "What was that..." ("base", xpos="far_left", ypos="head") + ">You stumble back to your office in a confused and blue-balled stupor..." + + return + + +label forest_BJ_2: + $ forest_BJ_progress = 3 + show screen blkfade + with d3 + + call play_music("night_outside") + call play_sound("walking_on_grass") + + $ hermione.wear("all") + # TODO: Add robe force equip. + + ">The map yet again leads you to the curly haired girl, alone at the edge of the forest, picking mushrooms." + + $ dynamic_cg("herm_forest", "base") + hide screen blkfade + with d3 + + gen "More late night gardening?" ("base", xpos="far_left", ypos="head") + pause.1 + her "{size=+10}[genie_name]!{/size}" ("shock", "wide", "base", "stare", xpos="base", ypos="base", trans=hpunch) + her "Ugh... Don't startle me like that!" ("annoyed", "base", "base", "R") + her "And yes, I've been collecting some mushroom samples." ("soft", "base", "base", "mid") + gen "Cool..." ("base", xpos="far_left", ypos="head") + her "So what are you doing out here?" ("base", "base", "base", "mid") + her "I thought you didn't leave your office anymore?" ("soft", "squint", "base", "mid") + gen "Oh, you know me... Always looking to connect with my students..." ("base", xpos="far_left", ypos="head") + her "*Mhmmm*... So that's what you're down here for then? To {i}connect{/i}?" ("base", "happy", "base", "mid") + gen "Always..." ("base", xpos="far_left", ypos="head") + her "Fine... Just let me take my robe off..." ("base", "base", "base", "R") + show screen blkfade + with d3 + + ">Hermione quietly folds up her robe and places it on the cold ground before kneeling down on it." + + $ dynamic_cg("herm_forest", "base", "12", "overlay") + hide hermione_main + hide screen blkfade + with d3 + + gen "So you're not worried about that ghost?" ("base", xpos="far_left", ypos="head") + her "You mean Myrtle? You know She's harmless..." + $ dynamic_cg("herm_forest", "base", "10", "overlay") + her "It's the gossip I'm worried about..." + gen "Gossip?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "13", "overlay") + her "Stop playing dumb, [genie_name]! Everyone knows Myrtle's the biggest gossip in the history of gossips..." + $ dynamic_cg("herm_forest", "base", "4", "overlay") + ">Hermione quickly pops your cock into her mouth in between her words..." + $ dynamic_cg("herm_forest", "base", "10", "overlay") + her "*pop* Not to mention she never forgets! She's {b}still{/b} going on about the whole McCartney thing..." + $ dynamic_cg("herm_forest", "base", "8", "overlay") + her "*shlrp* *schkk* *slurp*" + gen "*Mmmm*..." ("base", xpos="far_left", ypos="head") + gen "So have you heard any gossip floating around then?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "10", "overlay") + her "Surprisingly not..." + $ dynamic_cg("herm_forest", "base", "14", "overlay") + her "*slurp* *schkk* *shlrp*" + $ dynamic_cg("herm_forest", "base", "13", "overlay") + her "although She probably wouldn't want to upset you..." + $ dynamic_cg("herm_forest", "base", "4", "overlay") + her "*shlrp* *schkk* *slurp*" + gen "*Mmmm*..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "10", "overlay") + her "Still... I didn't think she'd be able to help herself..." + $ dynamic_cg("herm_forest", "base", "14", "overlay") + her "*slurp* *schkk* *shlrp*" + $ dynamic_cg("herm_forest", "base", "15", "overlay") + her "Albus Dumbledore having his {b}cock{/b} sucked by Hermione Granger..." + $ dynamic_cg("herm_forest", "base", "16", "overlay") + her "*slurp* *schkk* *shlrp*" + $ dynamic_cg("herm_forest", "base", "12", "overlay") + her "It'd be the gossip of the century..." + $ dynamic_cg("herm_forest", "base", "18", "overlay") + her "*slurp* *schkk* *shlrp*" + gen "You almost sound disappointed that she didn't tell anyone." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "17", "overlay") + her "What? How could you say such a thing!" + $ dynamic_cg("herm_forest", "base", "16", "overlay") + her "*slurp* *schkk* *shlrp*" + $ dynamic_cg("herm_forest", "base", "19", "overlay") + her "I'd never be able to show my face around Hogwarts again..." + $ dynamic_cg("herm_forest", "base", "20", "overlay") + her "*slurp* *schkk* *shlrp*" + $ dynamic_cg("herm_forest", "base", "21", "overlay") + her "Everyone would just be imagining me on my knees..." + $ dynamic_cg("herm_forest", "base", "18", "overlay") + her "*slurp* *schkk* *shlrp*" + $ dynamic_cg("herm_forest", "base", "21", "overlay") + her "{b}Covered{/b} in your thick spunk..." + $ dynamic_cg("herm_forest", "base", "20", "overlay") + her "*slurp* *schkk* *shlrp*" + $ dynamic_cg("herm_forest", "base", "17", "overlay") + her "Word would probably even get back to mom and dad..." + $ dynamic_cg("herm_forest", "base", "16", "overlay") + her "*slurp* *schkk* *shlrp*" + $ dynamic_cg("herm_forest", "base", "19", "overlay") + her "Imagine what they'd think of their little girl..." + $ dynamic_cg("herm_forest", "base", "18", "overlay") + her "*slurp* *schkk* *shlrp*" + $ dynamic_cg("herm_forest", "base", "21", "overlay") + her "sucking all that cum out her headmaster's fat, {size=+2}juicy,{/size} {size=+2}cock...{/size}{heart}" + gen "*Argh*!! That's it girl!" ("grin", xpos="far_left", ypos="head") + gen "Here it comes!" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "22", "overlay") + ">You grab a hold of the back of Hermione's head and thrust forward, planting your cock firmly down her throat." + $ dynamic_cg("herm_forest", "base", "m1", "22", "overlay") + myr "Wow... I didn't think you'd fit it all in..." + $ dynamic_cg("herm_forest", "base", "m1", "23", "overlay") + her "!!!" + ">Not even the sudden appearance of a ghost can stop your colossal orgasm at this point..." + gen "*ARGH*!!!" ("grin", xpos="far_left", ypos="head") + ">You start firing off a thick deluge of cum down Hermione's tender throat, the presence of someone else only serving to coax more out of your balls..." + $ dynamic_cg("herm_forest", "base", "m1", "24", "overlay") + call cum_block + her "!!!!!!" + $ dynamic_cg("herm_forest", "base", "m1", "25", "overlay") + call cum_block + gen "Gods I Needed this!" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m1", "26", "overlay") + myr "So much...{heart}{heart}{heart}" + $ dynamic_cg("herm_forest", "base", "m1", "25", "overlay") + ">Your hips continue to pump more and more cum down hermione's throat." + $ dynamic_cg("herm_forest", "base", "m1", "26", "overlay") + her "..." + $ dynamic_cg("herm_forest", "base", "m1", "25", "overlay") + myr "Bye Hermione{heart}{heart}{heart}" + show screen blkfade + with d3 + + ">Eventually your orgasm subsides and you allow your softening member to slide out of hermione's cum coated throat." + + hide screen blkfade + with d3 + + her "I can't believe you just did that?" ("shock", "base", "angry", "mid") + gen "really? After everything we've done?" ("base", xpos="far_left", ypos="head") + her "It's a figure of speech! And More importantly..." ("angry", "closed", "angry", "mid") + her "{size=+10}You just came down my throat in front of moaning myrtle!{/size}" ("scream", "closed", "angry", "mid") + her "She's going to tell everyone about this now!" ("annoyed", "base", "angry", "mid") + gen "So? Doesn't everyone sort of know by now anyway?" ("base", xpos="far_left", ypos="head") + her "*Argh*! That's not the point and you know it!" ("annoyed", "squint", "angry", "mid") + her "You can't keep treating me like your {heart}dirty{heart} little {b}cumdump{/b} to use as you please!" ("angry", "squint", "base", "mid") + her "To coat in your filthy nasty {b}{heart}cum{heart}{/b}..." ("angry", "narrow", "base", "dead") + her "In front of whoever, or whatever, you want..." ("angry", "narrow", "annoyed", "up") + her "..." ("angry", "narrow", "base", "dead") + her "Well... I hope you've learned your lesson!" ("angry", "narrow", "base", "up") + her "I'm going to go back and..." ("angry", "narrow", "base", "up") + her "*ge*-Clean! myself off..." ("open", "squint", "worried", "up") + her "And remember..." ("open", "narrow", "base", "up") + her "no {size=-1}more... {size=-1}{b}cum{/b}... {size=-1}all... {size=-1}over... {size=-1}me... {size=-1}please...{heart}{heart}{heart}{/size}{/size}{/size}{/size}{/size}{/size}" ("angry", "narrow", "base", "dead") + show screen blkfade + hide screen dynamic_cg + with d3 + + ">With that, hermione staggers back to the castle, still coated in your thick layer of seed." + + return + + +label forest_BJ_3: #Complete BJ with Myrtle appearing after the cumshot + $ forest_BJ_progress = 4 + show screen blkfade + with d3 + + call play_music("night_outside") + call play_sound("walking_on_grass") + + $ hermione.wear("all") + # TODO: Add robe force equip. + + ">Surely enough, the handwritten words \"Hermione Granger\", manage to lead you to the lone girl at the edge of an imposing forest." + ">However she doesn't seem preoccupied with her usual botany." + + $ dynamic_cg("herm_forest", "base") + hide screen blkfade + with d3 + + gen "Aren't you usually out here to collect some forbidden plant, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Not always... Sometimes I just come out here to enjoy the cool air..." ("soft", "base", "base", "R", xpos="base", ypos="base", trans=d5) + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "So you're not waiting out here for your headmaster to arrive, just so you can suck his cock in public?" ("base", xpos="far_left", ypos="head") + her "What! o-of course not!" ("base", "narrow", "worried", "down") + her "I'm just out here to admire the moon!" ("base", "base", "base", "R") + gen "What moon?" ("base", xpos="far_left", ypos="head") + ">Hermione frantically looks to the cloudy sky, unable to even glimpse the moon through the impenetrable greyness." + her "Oh... um..." ("open", "happy", "base", "R") + gen "It's alright for you to admit that you're a dirty little cumslut, miss Granger." ("base", xpos="far_left", ypos="head") + her "It's not like that!" ("upset", "narrow", "annoyed", "mid") + her "{size=-4}I just like sucking your dick, OK...{/size}" ("upset", "narrow", "base", "R_soft") + gen "So you don't want me to cover you in cum like the cumslut you are?" ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "worried", "down") + her "Ugh..." ("base", "narrow", "base", "dead") + show screen blkfade + with d3 + + ">Hermione studiously removes, folds, and lays her robe on the cool night grass." + + $ dynamic_cg("herm_forest", "base", "15", "overlay") + hide hermione_main + hide screen blkfade + with d3 + + her "Maybe I wouldn't have ended up a dirty little cumslut if your dick wasn't so nice..." + #Have her suck his cock + $ dynamic_cg("herm_forest", "base", "16", "overlay") + pause + her "*glck* *shlrp* *Gluck*" + $ dynamic_cg("herm_forest", "base", "17", "overlay") + her "*Ah*....{heart}{heart}{heart}" + her "Thank you for being here tonight, [genie_name]...." + $ dynamic_cg("herm_forest", "base", "16", "overlay") + her "*glck* *shlrp* *Gluck*" + $ dynamic_cg("herm_forest", "base", "19", "overlay") + her "I wasn't sure if you were going come..." + $ dynamic_cg("herm_forest", "base", "18", "overlay") + her "*glck* *shlrp* *Gluck*" + gen "If you want me to keep cumming, I suggest you do a little less talking..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "20", "overlay") + her "*Khes* *sh-r*! (Yes sir!)" + $ dynamic_cg("herm_forest", "base", "27", "overlay") + ">In response, hermione thrusts her entire lithe frame forwards, forcing your thick cock all the way down her throat." + $ dynamic_cg("herm_forest", "base", "28", "overlay") + gen "Ugh.... that's it, [hermione_name]!" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "29", "overlay") + gen "How are you able to go so deep?..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "17", "overlay") + her "*Hmm*... I had a good teacher." + $ dynamic_cg("herm_forest", "base", "19", "overlay") + gen "As flattered as I am..." ("base", xpos="far_left", ypos="head") + ">You lower your hand and rest it softly on the back of the little sluts head..." + $ dynamic_cg("herm_forest", "base", "30", "overlay") + gen "THIS!" ("grin", xpos="far_left", ypos="head") + pause + $ dynamic_cg("herm_forest", "base", "31", "overlay") + gen "Can't be taught!" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "30", "overlay") + her "*glck* *shlrp* *Gluck*" + $ dynamic_cg("herm_forest", "base", "31", "overlay") + ">You vigorously start fucking the poor girls throat with little regard for her well being." + $ dynamic_cg("herm_forest", "base", "32", "overlay") + her "*glck* *shlrp* *Gluck*" + $ dynamic_cg("herm_forest", "base", "33", "overlay") + gen "You were born a cocksucker." ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "32", "overlay") + her "*glck* *shlrp* *Gluck*" + $ dynamic_cg("herm_forest", "base", "33", "overlay") + gen "It's just taken you until now to realise." ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "32", "overlay") + her "*glck* *shlrp* *Gluck*" + $ dynamic_cg("herm_forest", "base", "33", "overlay") + $ dynamic_cg("herm_forest", "base", "m2", "overlay") + $ dynamic_cg("herm_forest", "base", "33", "overlay") + ">You're so focused on your face fuck session you almost fail to notice the ghostly apparition of an attractive little witch appear behind Hermione." + $ dynamic_cg("herm_forest", "base", "32", "overlay") + gen "!!!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "33", "overlay") + ">Before you even have time to scream, Myrtle, raises her finger to her lips, shushing you." + $ dynamic_cg("herm_forest", "base", "32", "overlay") + ">Instead, it appears like she only wants to watch hermione have her throat fucked silly..." + $ dynamic_cg("herm_forest", "base", "34", "overlay") + gen "Well if it's a show you want, {size=+3}it's{/size} {size=+3}a{/size} {size=+3}show{/size} {size=+3}you'll{/size} {size=+3}get!{/size}" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "35", "overlay") + her "???" + $ dynamic_cg("herm_forest", "base", "34", "overlay") + ">Coaxed on by the prospect of an ethereal audience, you begin to get into a firm, rough rhythm of properly fucking hermione's throat raw." + $ dynamic_cg("herm_forest", "base", "35", "overlay") + her "*glck*-*glck*-*glck*!!" + $ dynamic_cg("herm_forest", "base", "34", "overlay") + her "*glck*{heart}*glck*{heart}*glck*" + $ dynamic_cg("herm_forest", "base", "35", "overlay") + myr "..." + $ dynamic_cg("herm_forest", "base", "34", "overlay") + her "*Slurp*! *Gulp*! *Slurp*!" + $ dynamic_cg("herm_forest", "base", "35", "overlay") + gen "Yes, like that... that's a good little slut..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "34", "overlay") + her "*Slurp*! *Slurp*! *Slurp*!" + $ dynamic_cg("herm_forest", "base", "35", "overlay") + gen "Deeper now." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "34", "overlay") + her "*Slurp*! *Slurp*! *Slurp*!" + $ dynamic_cg("herm_forest", "base", "35", "overlay") + gen "Come on cock-slut." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "36", "overlay") + her "*Slurp*! *Gobble*! *Gobble*!" + $ dynamic_cg("herm_forest", "base", "37", "overlay") + gen "Deeper now!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "36", "overlay") + her "*Gobble-gobble-slurp-gobble*!" + $ dynamic_cg("herm_forest", "base", "37", "overlay") + gen "Yes, like that!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "36", "overlay") + her "{size=+5}*Gobble-gobble-slurp-gobble*!{/size}" + $ dynamic_cg("herm_forest", "base", "34", "overlay") + gen "{size=+5}Yes! Yes! Yes! Yes!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "35", "overlay") + gen "See? Your body was made for this..." ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "36", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "37", "overlay") + gen "Made to take my cock!" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "36", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "37", "overlay") + gen "Any time of day!" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "34", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "35", "overlay") + gen "Anywhere you can get it!" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "34", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "37", "overlay") + gen "And in front of anyone who will watch you!" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "38", "overlay") + her "{size=+10}!!!{/size}" + $ dynamic_cg("herm_forest", "base", "37", "overlay") + myr "*he-he-he*... Hi Hermione..." + $ dynamic_cg("herm_forest", "base", "36", "overlay") + her "*glck* Sto--{w=0.3}! *glck*{heart}*glck*" + $ dynamic_cg("herm_forest", "base", "37", "overlay") + ">Hermione starts to struggle against you in her embarrassment, her face turns a deep red and tears start to roll down her face." + $ dynamic_cg("herm_forest", "base", "36", "overlay") + ">Unfortunately for the petite witch, her shame only serves to intensify your pleasure." + $ dynamic_cg("herm_forest", "base", "37", "overlay") + gen "*ARGH*, HERE IT COMES SLUT!" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "36", "overlay") + call cum_block + + gen "{size=+7}*ARGH*!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "37", "overlay") + gen "{size=+7}Eat my cum, slut!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "34", "overlay") + call cum_block + $ dynamic_cg("herm_forest", "base", "39", "overlay") + call cum_block + + ">Your cock starts firing off a huge load against the back of the poor girls throat, quickly overflowing up through her nostrils and back at you." + + her "{size=+14}!!!{/size}" + $ dynamic_cg("herm_forest", "base", "40", "overlay") + + myr "{size=+3}Oh{/size} {size=+3}my{/size} {size=+3}God!{/size}" + $ dynamic_cg("herm_forest", "base", "39", "overlay") + call cum_block + + myr "I've never seen this much cum in my whole life or even since then!" + $ dynamic_cg("herm_forest", "base", "40", "overlay") + myr "Here Dumbledore, shoot some more!" + $ dynamic_cg("herm_forest", "base", "39", "overlay") + show screen blkfade + with d3 + $ dynamic_cg("herm_forest", "base", "m3", "39", "overlay") + + ">Moaning Myrtle rises up from the dewy ground and flashes her see-through breasts towards you." + $ dynamic_cg("herm_forest", "base", "m3", "41", "overlay") + hide screen blkfade + with d3 + call cum_block + + gen "{size=+7}*ARGH*! YES!!!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m3", "42", "overlay") + ">With your orgasm renewed by the sight of some heavenly cans, you begin shooting cum down Hermione's throat anew." + $ dynamic_cg("herm_forest", "base", "m3", "41", "overlay") + call cum_block + + her "*gulp* *gargggglelggg* *gobble*...." + $ dynamic_cg("herm_forest", "base", "m3", "42", "overlay") + call cum_block + + myr "More, Dumbledore, more!" + $ dynamic_cg("herm_forest", "base", "m3", "41", "overlay") + call cum_block + gen "{size=+15}*ARGH*!!!!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m3", "42", "overlay") + call cum_block + + her "*gllllgggggg*..." + $ dynamic_cg("herm_forest", "base", "m3", "41", "overlay") + call cum_block + myr "{size=+14}MORE!!!{/size}" + $ dynamic_cg("herm_forest", "base", "m3", "42", "overlay") + call cum_block + show screen blkfade + hide screen dynamic_cg + with d3 + + ">Eventually, your orgasm comes to a halt and you finally pull your sloppy cock out of Hermione's well used hole..." + ">She collapses onto her robe, no longer held up by your member." + gen "You did good, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Wouldn't you say the same, ghost?" ("base", xpos="far_left", ypos="head") + gen "Ghost?" ("base", xpos="far_left", ypos="head") + gen "Oh well..." ("base", xpos="far_left", ypos="head") + ">You notice Hermione start to shiver in the cold air..." + gen "I suppose I better get you back to your room." ("base", xpos="far_left", ypos="head") + ">You wrap her robe over her like a blanket and carry her back to her room." + ">You softly place her into her bed and pull up her sheets." + + menu: + gen "(Should I clean her up a bit?)" ("base", xpos="far_left", ypos="head") + "-clean her up-": + gen "(I suppose I should...)" ("base", xpos="far_left", ypos="head") + ">You use a rag and wipe her face clean." + her "*zzz* no... *zzz* I wanna be a.. *zzz* cumslut... *zzz*" + gen "*Shhh*... Don't worry, [hermione_name], I will give you more tomorrow." ("base", xpos="far_left", ypos="head") + "-leave her be-": + gen "(She looks better like this anyway...)" ("base", xpos="far_left", ypos="head") + ">As you turn to leave, you notice a content smile form over Hermione's face as she pulls her sheets up over her shoulders." + her "{size=-4}Night sir...{/size}" + her "{size=-8}I love you...{/size}" + + ">You turn and leave the warm room and return to your cold, dark office..." + + return + +label forest_BJ_4: #Moaning myrtle dirty talk (Repeatable) (Threaten to expose) + $ forest_BJ_progress = 3 #Repeats 3rd event after this one. + show screen blkfade + with d3 + + call play_music("night_outside") + call play_sound("walking_on_grass") + + $ hermione.wear("top") + $ hermione.wear("bottom") + + ">Once more, the marauders map leads you to Hermione at the edge of the forest, waiting patiently, apparently having dropped all pretences botanical." + + $ dynamic_cg("herm_forest", "base") + hide screen blkfade + with d3 + + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "About time you got here, [genie_name]!" ("upset", "narrow", "annoyed", "mid", xpos="base", ypos="base", trans=d5) + her "Do you know how long I've been waiting out here in the cold?" ("annoyed", "happy", "base", "mid") + + menu: + "-Sorry-": + gen "Sorry about that..." ("base", xpos="far_left", ypos="head") + gen "I'll try and be on time for our blowjobs from now on." ("base", xpos="far_left", ypos="head") + her "Good... It's the least you can do..." ("base", "closed", "angry", "mid") + "-You know where my office is-": + her "*Hmph*..." ("upset", "narrow", "angry", "R") + + show screen blkfade + with d3 + + ">Hermione then kneels down onto the pillow and rug she must have lain down before your arrival." + ">You quickly walk over to the small girl and present her your thick cock." + + $ dynamic_cg("herm_forest", "base", "15", "overlay") + + hide hermione_main + hide screen blkfade + with d3 + + her "*Mmmmm*..." + $ dynamic_cg("herm_forest", "base", "17", "overlay") + her "This almost makes waiting out in the cold worth it..." + gen "Only almost?" ("base", xpos="far_left", ypos="head") + her "Well it's not the real reason I'm down here, [genie_name]..." + $ dynamic_cg("herm_forest", "base", "19", "overlay") + her "this is..." + $ dynamic_cg("herm_forest", "base", "16", "overlay") + ">Hermione quickly pops her head forward, wrapping her soft lips around the tip of your shaft." + her "*Mmmmm*" + $ dynamic_cg("herm_forest", "base", "18", "overlay") + her "*slurp* *glck* *slrp*" + $ dynamic_cg("herm_forest", "base", "20", "overlay") + gen "*Ughhhh*.... that's it, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Be a good little cockslut for your headmaster..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "16", "overlay") + her "*slurp*{heart}*slurp*{heart}*glck*" + #Myrtle fade in + $ dynamic_cg("herm_forest", "base", "m2", "16", "overlay") + gen "And for Casper the slutty ghost here..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m2", "43", "overlay") + her "*slurp*!!!*slurp*!!!*glck*" + + menu: + "Once again, Hermione tries to pull herself of your cock..." + "-Let her-": + ">Reluctantly, you allow the girl to pull herself of your throbbing member..." + $ dynamic_cg("herm_forest", "base", "m2", "10", "overlay") + her "Myrtle! What are you doing here again?" + myr "Aren't I allowed a bit of fun in my afterlife?" + myr "It's not like I ever got any when I was alive..." + $ dynamic_cg("herm_forest", "base", "m2", "6", "overlay") + her "Oh alright then..." + $ dynamic_cg("herm_forest", "base", "m2", "10", "overlay") + her "Just don't go blabbing to everyone in the girls' bathroom, OK?" + myr "Deal..." + gen "Good... Now why don't you just sit back and enjoy the show then..." ("base", xpos="far_left", ypos="head") + "-Face fuck her-": + pass + + $ dynamic_cg("herm_forest", "base", "m2", "28", "overlay") + ">You place your hand on the back of Hermione's head and pull her hard into your waiting cock, impaling the poor girls throat..." + $ dynamic_cg("herm_forest", "base", "m2", "29", "overlay") + her "{size=+10}!!!{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "30", "overlay") + gen "Ugh... fuck yes..." ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m2", "31", "overlay") + her "{size=+5}*Gobble-gobble-slurp-gobble!* !!!{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "30", "overlay") + gen "{size=+5}Yes! Yes! Yes! Yes!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m2", "31", "overlay") + myr "Wow... you're so rough on her..." + $ dynamic_cg("herm_forest", "base", "m2", "32", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "33", "overlay") + gen "Ugh... don't worry... she loves it..." ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m2", "32", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "33", "overlay") + gen "She's probably wetter than the nile down there..." ("grin", xpos="far_left", ypos="head") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "32", "overlay") + myr "You think so?" + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "33", "overlay") + gen "Go see for yourself!" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m2", "32", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "33", "overlay") + myr "..." + $ dynamic_cg("herm_forest", "base", "m2", "32", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "33", "overlay") + $ dynamic_cg("herm_forest", "base", "33", "overlay") + ">Myrtle floats down into the earth." + $ dynamic_cg("herm_forest", "base", "34", "overlay") + her "{size=+10}!!!{/size}" + $ dynamic_cg("herm_forest", "base", "35", "overlay") + myr "She's dripping!" + $ dynamic_cg("herm_forest", "base", "34", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "35", "overlay") + myr "Not to mention she isn't wearing any panties!" + $ dynamic_cg("herm_forest", "base", "34", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "35", "overlay") + gen "She stopped wearing them months ago." ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "34", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "35", "overlay") + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + myr "Hermione! You horny little slut!" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + myr "Just wait until the girls' bathrooms hear about tonight!" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + her "{size=+5}*glck*HNNOOO*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "44", "overlay") + myr "So long as you're alright with that, Sir... I don't have to mention you! It can just be Hermione!" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + + menu: + "\"Go nuts\"": + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "Really?" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + her "{size=+5}*glck*{heart}PRFFSSRR!!!{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "Oh thank you, thank you, thank you!" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "This is going to be the best decade of my afterlife!" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + "\"you can say it was me\"": + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "{size=+2}{b}Really?{/b}{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + her "{size=+5}*glck*{heart}WHHTT!!!{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "Oh thank you, thank you, thank you!" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "This is going to be the best decade of my afterlife!" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "I can't wait to tell everyone!!!" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "I'll go to rave-NO the Slytherin bathroom first!" + $ dynamic_cg("herm_forest", "base", "m2", "44", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "Then Gryffindor!" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "Ravenclaw!" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "Hufflepuff!" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "The prefects' bathroom!" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "Then the teachers!" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + her "{size=+5}*glck*{heart}*glck*{heart}*glck*{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + myr "Then Hogsmeade!" + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + myr "{size=+2}THEN{/size} {size=+2}THE{/size} {size=+2}WHOLE{/size} {size=+2}WORLD!!!{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + gen "*ARGH*, HERE IT COMES SLUTS!" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m2", "35", "overlay") + gen "{size=+7}*ARGH*!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m2", "34", "overlay") + gen "{size=+7}Eat my cum, slut!{/size}" ("angry", xpos="far_left", ypos="head") + show screen blkfade + with d3 + + $ dynamic_cg("herm_forest", "base", "34", "overlay") + ">At the edge of your orgasm, Hermione forcefully pushes herself off your dick and wraps your cock in her hands and hair." + $ dynamic_cg("herm_forest", "base", "m2", "45", "overlay") + hide screen blkfade + with d3 + + her "{size=+5} That's it, Professor, Cum for me! Cover me in front of Myrtle!{/size}" + with hpunch + gen "{size=+5}What the hell is this?!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m2", "46", "overlay") + her "{size=+5}Cum on sir! Aren't I your dirty little cumslut?{/size}" + gen "*Argh*! You cum obsessed whore!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m2", "45", "overlay") + her "{size=+5}Yes I am!{/size}" + her "{size=+5}Nothing but your cum hungry little slut, sir!{/size}" + $ dynamic_cg("herm_forest", "base", "m2", "47", "overlay") + her "{size=+5}Now why don't you show Myrtle here what a real load looks like!{/size}" + with hpunch + gen "{size=+7}*Argh*!!!{/size}" ("angry", xpos="far_left", ypos="head") + gen "{size=+7}Take this, then!!!{/size}" ("angry", xpos="far_left", ypos="head") + + show screen white + pause .1 + hide screen white + with hpunch + $ dynamic_cg("herm_forest", "base", "m2", "48", "overlay") + her "{size=+5}*Ah*! Yes, sir! Yes! cum all over me!{/size}" + show screen white + pause.1 + hide screen white + $ dynamic_cg("herm_forest", "base", "m2", "49", "overlay") + pause.2 + show screen white + pause .1 + hide screen white + with hpunch + gen "{size=+7}*ARGH*!{/size}" ("angry", xpos="far_left", ypos="head") + gen "{size=+7}*Argh*!!! YES!!!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("herm_forest", "base", "m2", "50", "overlay") + her "{heart}{heart}{heart}{heart}" + show screen blkfade + with d3 + + #Genie and Hermione back in the forest... + $ dynamic_cg("herm_forest", "base") + + her "Wait, where's Myrtle?" ("angry", "narrow", "worried", "mid_soft") + gen "Oh, she left as soon as I gave her the OK to blab on about you." ("base", xpos="far_left", ypos="head") + her "WHAT?" ("scream", "wide", "base", "stare") + her "you mean she didn't see any of..." ("upset", "narrow", "annoyed", "mid") + her "(I got my hair all sticky for nothing...)" ("upset", "narrow", "worried", "down") + gen "So are you going to clean yourself up and get dressed?" ("base", xpos="far_left", ypos="head") + her "I'll get dressed..." ("soft", "base", "base", "R") + her "but If it's all the same to you, I might leave the cum on..." ("base", "narrow", "base", "dead") + gen "Good girl..." ("base", xpos="far_left", ypos="head") + show screen blkfade + hide screen dynamic_cg + with d3 + + ">You and Hermione walk back to the castle together, Hermione complaining about how rude Myrtle was for missing the cum shot the whole way..." + + return + + + + +label hermione_map_sex: + #Genie notices hermione walking past the courtyard on the map and has the + #option to intercept her option to come behind and scare her or to + #approach her normally + #Hermione says that she was coming back late from the library + #Standard sex scene with a focus on the fact that they could be caught at any time + #Option to humiliate her based on either the shame of doing this in public or to tell her that all her teachers want to fuck her + #Cum in her in front of Moaning myrtle + #end + ">This time, the marauders map leads you to Hermione walking through the halls bordering the courtyard." + ">You start to stalk her as a lion would its prey wondering how to best approach the girl..." + menu: + "-Surprise her-": + "asd" + pass + "-Greet her-": + "asd" + pass + + gen "*Mmmm*, gods your pussy is just the best..." ("base", xpos="far_left", ypos="head") + her "*A-Ah*... thank you..." + gen "*Ugh*... so what are you doing out here at this hour anyway?" ("base", xpos="far_left", ypos="head") + her "I was -- *ah* {heart} at the library..." + gen "*Mmmm*, what were you reading? Dick-sucking 101?" ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart} I'd like to think... *ah*{heart} that I'm past the 101 stage [genie_name]..." + gen "True, you could probably write the book!" ("base", xpos="far_left", ypos="head") + her "*Mmmmm*...{heart} I'd probably have to... *ah*{heart} use a pseudonym..." + gen "Really? Worried about people finding out what a dirty little cock-slut you are?" ("base", xpos="far_left", ypos="head") + her "I am not a--" + ">You interrupt her ministrations with a forceful thrust deep into her pussy." + her "{heart}Ah!!!{heart}" + gen "You were saying?" ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart}fine..." + her "have it your way then..." + gen "I intend to!" ("base", xpos="far_left", ypos="head") + gen "Besides, if you really were worried about people finding out about you then you probably wouldn't be fucking your headmaster in public!" ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart} that's not-- *Ah*...{heart} this isn't my fault...{heart}" + gen "Really? And just how am I expected to turn up a chance to fuck this tight little cunt!" ("base", xpos="far_left", ypos="head") + her "*A-Ah*... {heart}you're Professor{heart} Dumbledore{heart}... You should...{heart}" + gen "The gods themselves wouldn't miss an opportunity like this..." ("base", xpos="far_left", ypos="head") + her "...{heart}" + gen "I think it's about time you just come to admit what a needy little fuck hole you really are..." ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart}a-all right...{heart}" + gen "Go on then slut... yell it out!" ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart}I-I can't!{heart} people will hear!" + gen "Good! A whore like you deserves an audience..." ("base", xpos="far_left", ypos="head") + her "{heart}...{heart}" + ">Despite feeling her pussy spasm hard around your cock the girl remains silent..." + her "..." + her "{size=+5}*Ah*... fuck me harder!{/size}" + gen "That's it slut! Louder!" ("base", xpos="far_left", ypos="head") + ">Hermione turns her head around, looking you square in the eye with a desperate yet smug look plastered over her face..." + her "Make. me." + ">Her sultry challenge ignites a flame in your core." + gen "MAKE YOU?" ("angry", xpos="far_left", ypos="head") + gen "I'll MAKE YOU SCREAM SO LOUD THE WHOLE SCHOOL WILL HEAR YOU!" ("angry", xpos="far_left", ypos="head") + ">With that your hips go into overdrive as you plough the ever loving shit out of the poor girl." + her "{size=+10}{heart}!!!{heart}{/size}" + gen "Tell me what you are!" ("angry", xpos="far_left", ypos="head") + her "{size=+10}{heart}A WHORE! [genie_name]'s WHORE!{heart}{/size}" + gen "LOUDER!" ("angry", xpos="far_left", ypos="head") + her "{size=+10}{heart}I'm A CUMSLUT! I'm a bitch in heat!{heart}{/size}" + her "{size=+10}{heart}JUST FUCK ME HARDER!!!{heart}{/size}" + gen "LIKE THIS?" ("angry", xpos="far_left", ypos="head") + her "{size=+10}{heart}*ughhh*....{heart}{/size}" + her "{size=+10}MORE!{/size}" + ">As you and Hermione make as much noise as possible through the hallowed Hogwarts halls, a soft blue glow begins to appear in front of Hermione." + myr "Hello again Hermione..." + myr "\"Professor\"..." + her "{size=+10}Myrtle!{/size} W-w-what are you doing here?" + myr "Well seeing as how I'm usually the only person moaning at this time of night I figured I better come take a look..." + myr "But when I heard \"I'm a cumslut\"... I knew it had to be you two..." + her "G-go -{heart}*Ah*...{heart}- go away Myrtle!" + ">Enjoying feeling Hermione squirm at the mixture of shame and pleasure as you plow into her only spurs you on..." + myr "And miss the only exciting thing that happens in this dull school? I think not..." + her "*Ah*...{heart}" + myr "Besides... I think you like being watched... Don't you Hermione?" + her "*Ah*...{heart} of course-- *Ugh*...{heart} - not..." + myr "Really? You mean you don't like me watching you be treated like a filthy little piece of fuck-meat?" + her "*Ah*...{heart}{heart}{heart} no..." + myr "I'm not so sure..." + myr "What about you then? Do you like being watched..." + ">Myrtle throws a knowing grin your way." + gen "I live for fucking pieces of ass like this!" ("base", xpos="far_left", ypos="head") + gen "Plus it's not like I have to worry about people watching me..." ("base", xpos="far_left", ypos="head") + her "..." + myr "You're right... Everyone's going to be far more interested in watching little miss Granger be fucked senseless." + her "*Ah*...{heart}" + myr "Isn't that right Hermione? I bet you'd love to be fucked within an inch of your life in front of the whole school!" + ">Hermione's pussy grips hard onto your cock..." + her "{heart}N-no!{heart} Don't s-say things like that!" + gen "Ugh... She's squeezing my cock like a vice!" ("angry", xpos="far_left", ypos="head") + myr "Did just the thought of that get you all hot an bothered?" + her "*Ah*...{heart}no--{heart}" + myr "The thought of being drenched in cum--" + her "*Ah*...{heart}" + myr "While Dumbledore breeds you like the whore you are..." + her "{heart}{heart}{size=+5}*Mmmm*...{/size}{heart}{heart}" + myr "While the school watches on..." + her "{heart}{heart}{size=+10}*Ah*...{/size}{heart}{heart}" + myr "Along with {i}mummy{/i} and {b}daddy{/b}..." + her "{heart}{heart}{size=+15}!!!{/size}{heart}{heart}" + ">It all proves too much for Hermione, causing her hips to buck wildly, desperate for any additional stimulation." + gen "That's it whore! You've done it now!" ("angry", xpos="far_left", ypos="head") + ">You grab onto Hermione's hips and start pumping for dear life." + her "{heart}{heart}{size=+5}No! I just came! STOP!!!{/size}{heart}{heart}" + ">The halls resonate with Hermione's incoherent moans and the forceful slapping of her ass against your hips." + gen "TAKE THIS!!!" ("angry", xpos="far_left", ypos="head") + ">You dump your load into Hermione's limp body as you hold her up." + her "*Ahhh*..." + gen "Take this you filthy whore!" ("angry", xpos="far_left", ypos="head") + ">As you keep pumping more and more cum into Hermione's tightness, Myrtle watches on with a perverted smile..." + her "....." + myr "Wow... {w=0.3} And here I thought I was a moaner..." + her "......." + #FTB + ">You let go of hermione, letting her slump to the ground with a squelch, landing in a pool of your combined juices.." + #Take Hermione back to her room and leave Myrtle alone to masturbate diff --git a/game/scripts/characters/hermione/events/inn_INCOMPLETE.txt b/game/scripts/characters/hermione/events/inn_INCOMPLETE.txt new file mode 100644 index 00000000..1a487693 --- /dev/null +++ b/game/scripts/characters/hermione/events/inn_INCOMPLETE.txt @@ -0,0 +1,83 @@ + +label inn_menu: + + if inn_intro: + jump inn_intro + abe "Welcome to the Hog's Head Inn" + menu: + "-Present Hermione to Aberforth-": + gen "I present you your new barmaid." ("base", xpos="far_left", ypos="head") + $ hermione.equip(her_outfit_maid) + her "" ("normal", "squint", "angry", "mid") + call ctc + + abe "Well go on then girl, take the robe off." + her "Fine..." + + hide hermione_main + $ hermione.strip("robe") + her "" ("normal", "happyCl", "worried", "mid") + pause + + hide hermione_main + jump inn_menu + "-Talk to Aberforth-": + jump inn_talk + "-Play Dice with Aberforth-": + "Not added yet (will be soon)." + jump inn_menu + "-Leave-": + jump return_office + + +label inn_intro: + gen "Hello." ("base", xpos="far_left", ypos="head") + abe "Hello Professor..." + ">There is a sour tone in the man's voice." + gen "So what do you sell here?" ("base", xpos="far_left", ypos="head") + abe "What do you want Albus?" + gen "(Albus? He must know the Professor.)" ("base", xpos="far_left", ypos="head") + gen "Just a drink." ("base", xpos="far_left", ypos="head") + abe "You, drinking? I never thought that I'd see the day." + gen "Why's that?" ("base", xpos="far_left", ypos="head") + abe "I never expected my little brother to lift his head out of the books long enough to come have a drink." + gen "(Brother?)" ("base", xpos="far_left", ypos="head") + gen "Well there's a first time for everything." ("base", xpos="far_left", ypos="head") + abe "*Hmmmph* Well we'll start you with a Butterbeer then. Anything stronger and you'll probably pass out." + ">Aberforth pours you a large stein of a golden, frothy beer." + ">You take a sip. It has a sweet almost sugary taste and a creamy consistency." + gen "That's not half bad, so how much do I owe you?" ("base", xpos="far_left", ypos="head") + abe "Just tell me who you are." + gen "(Shit)" ("base", xpos="far_left", ypos="head") + gen "What do you mean." ("base", xpos="far_left", ypos="head") + abe "I've never seen my brother drink Butterbeer in his life. Either you're not Albus or I'm a bowtruckle." + gen "Fine, you got me, I'm not Albus." ("base", xpos="far_left", ypos="head") + abe "Then what are you doing in his skin?" + gen "I'm an all powerful genie from a magical world that accidentally made a potion that swapped the minds of me and your brother." ("base", xpos="far_left", ypos="head") + abe "...." + abe "That sounds convoluted." + gen "You're telling me." ("base", xpos="far_left", ypos="head") + abe "So how long will it last?" + gen "No idea." ("base", xpos="far_left", ypos="head") + abe "Well as far as I'm concerned this is nothing but an improvement." + gen "You don't like your brother that much?" ("base", xpos="far_left", ypos="head") + abe "It's a long story." + abe "Now how about a proper drink instead of that buttery crap." + gen "Sure." ("base", xpos="far_left", ypos="head") + ">You drink well into the night, eventually staggering back to the castle" + $ inn_intro = False + jump day_start + +label inn_talk: #Responses to Genie asking Aberforth how he's doing +if day_random <= 2: + "bla bla bla" + jump inn_menu +elif day_random >= 3 and day_random <= 5: + "bla bla bla" + jump inn_menu +elif day_random >= 6 and day_random <= 8: + "bla bla bla" + jump inn_menu +elif day_random >=9: + "bla bla bla" + jump inn_menu diff --git a/game/scripts/characters/hermione/events/intro.rpy b/game/scripts/characters/hermione/events/intro.rpy new file mode 100644 index 00000000..1c4751f7 --- /dev/null +++ b/game/scripts/characters/hermione/events/intro.rpy @@ -0,0 +1,1465 @@ + +### Hermione Intro ### + +### Event 1 ### +# Fist visit of Hermione. + +label hermione_intro_E1: + stop music fadeout 1.0 + pause 1 + + # Force default outfit for first event. + $ hermione.equip(her_outfit_default) + + call play_sound("knocking") + call bld + "*Knock-knock-knock*" + gen "*huh*?" ("base", xpos="far_left", ypos="head") + + call play_sound("knocking") + "*Knock-knock-knock*" + pause.7 + + gen "Somebody is knocking on the door..." ("base", xpos="far_left", ypos="head") + gen "Crap... I'm supposed to avoid any human contact!" ("base", xpos="far_left", ypos="head") + gen "*Hmm*... What are the chances that the thing knocking on my door is not human?" ("base", xpos="far_left", ypos="head") + gen "Yeah, quite slim..." ("base", xpos="far_left", ypos="head") + + call play_sound("knocking") + "*Knock-knock-knock*" + gen "Persistent little bastard..." ("base", xpos="far_left", ypos="head") + + $ d_flag_01 = False #When False Genie doesn't know Hermione's name. + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Who is it?\"": + $ d_flag_01 = True + call bld + femv "It's me, professor..." + femv "Hermione Granger. Can I come in?" + gen "{size=-4}(It's that woman who's been harassing me with her letters lately...){/size}" ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Go away, please. I'm busy.\"": + call bld + her "But, professor, I really need to talk to you..." + gen "..........................................." ("base", xpos="far_left", ypos="head") + her "Professor? I'm coming in!" + gen "{size=-4}(Crap...){/size}" ("base", xpos="far_left", ypos="head") + "\"Yes, yes, you can come in.\"": + pass + + "\"Come in!\"": + pass + "\"Go away!\"": + call bld + femv "But, professor, I really need to talk to you..." + gen "..........................................." ("base", xpos="far_left", ypos="head") + femv "Professor? I'm coming in!" + gen "{size=-4}(Crap...){/size}" ("base", xpos="far_left", ypos="head") + "\"................\"": + call bld + femv "Professor, are you there?" + gen "{size=-4}(Go away...){/size}" ("base", xpos="far_left", ypos="head") + femv "Professor, I really need to talk to you..." + gen "..........................................." ("base", xpos="far_left", ypos="head") + her "Professor? I'm coming in!" + gen "{size=-4}(Crap...){/size}" ("base", xpos="far_left", ypos="head") + + call bld("hide") + pause.2 + + call play_sound("door") + call her_chibi("stand","door","base") + with d3 + pause.5 + + call bld + if d_flag_01: + gen "{size=-3}(This is the Granger girl? Well, well, well.){/size}" ("grin", xpos="far_left", ypos="head") + else: + gen "A girl?!" ("base", xpos="far_left", ypos="head") + + call her_walk("desk", "base") + pause.5 + + show screen blkfade + with d5 + $ hermione.set_face(mouth="base", eyes="base", eyebrows="base", pupils="mid") + $ hermione.set_pose("hold_book") + $ camera.set_imagepath("her_intro/") + $ camera.set_image("CG her_intro hermione") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=1.0, pos=(-1040, -600), initialize=True) + hide screen blkfade + show screen animatedCG + with d5 + + $ camera.set(zoom=1.0, pos=(-1040, -35), t=5.0, pause=True) + her "Good morning, professor." + gen "(Oh my...)" + + $ camera.set(zoom=0.5, pos=(-270, -150), t=5.0) + + menu: + "\"Good morning, Hermione.\"" if d_flag_01: + her "{size=-4}(At least he remembers my name.){/size}" ("base", "base", "base", "mid") + "\"Good morning... girl.\"" if not d_flag_01: + her "{size=-4}(\"Girl\"?){/size}" ("normal", "squint", "worried", "mid") + "\"Good morning, child.\"": + her "{size=-4}(\"Child\"...?){/size}" ("upset", "narrow", "worried", "mid") + "\"Greetings fellow human!\"": + her "Are you alright, professor?" ("normal", "squint", "worried", "mid") + gen "Why, of course, I'm a human after all!" + her "..." ("normal", "base", "low", "mid") + her "Are you sure, professor? I can call for madam Pomfrey to examine you..." ("open", "base", "worried", "mid") + $ renpy.sound.play("sounds/punch01.ogg") + with hpunch + gen "{size=+4}NO!{/size}" + pause 1.0 + gen "Err...{w=0.5} I mean, no thank you dear child, it won't be necessary." + her "If you say so, professor..." ("annoyed", "base", "worried", "L") + her "*clears throat*" ("normal", "closed", "base", "mid") + "\"................................\"": + her "..........." ("normal", "base", "base", "mid") + gen "................................." + her ".....*ahem*......" ("open", "closed", "angry", "mid") + + $ camera.set(zoom=0.5, pos=(-270, -150)) + + call play_music("chipper_doodle") + + her "I am very busy with my class schedule, but I kept my morning free today so that I could see you, professor." ("open", "base", "base", "mid") + gen "Right..." + her "One moment, professor..." ("open", "narrow", "base", "down") + + $ camera.set_image("CG her_intro hermione bendover") + with d5 + call nar(">Hermione turns around and puts her book down.") + gen "!!!" + + $ hermione.set_pose(None) + $ camera.set_image("CG her_intro hermione") + with d5 + + her "That's better... My arms were getting sore." ("open", "closed", "base", "mid") + + gen "{size=-4}(Damn, I haven't seen a woman in weeks.){/size}" + + menu: + "\"(I will jerk off a little while she talks.)\"": + call hide_characters + hide screen bld1 + with d3 + pause.2 + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause.5 + + show screen bld1 + call nar(">You reach under the desk and grab your cock...") + + $ her_jerk_off_counter += 1 + $ jerked_off_during_hermione_intro = True #Affects next conversation with Snape. + $ genie_masturbating = True + + "\"(No, that's stupid! I Need to behave!)\"": + $ genie_masturbating = False + + her "You probably know why I am here too." + her "The issue I have been fruitlessly trying to bring to your attention lately." ("open", "closed", "angry", "mid") + her "I cannot understand why you are not acting to stop that nonsense, professor!" + her "This simply cannot continue!" + her "The inequality is starting to affect all of the houses..." ("open", "base", "base", "mid") + her "Simply because Gryffindor has more integrity than the rest..." + her "Do you think it's fair that the people who deserve to be in the lead are being pushed back instead?" + her "Do you think that's fair, professor? Do you?" + her "" ("normal", "base", "base", "mid") + gen "{size=-4}(Would you look at that pretty little thing?){/size}" + gen "{size=-4}(Look at her going on and on about something... She's adorable.){/size}" + gen "Yes, keep on going, dear." + her "\"Yes\"?! So you think it's fair?" ("angry", "base", "angry", "mid") + gen "Oh, of course not, I meant \"no\". But keep on going anyway..." + her "That's a relief. I'm glad that you agree with me, professor..." ("soft", "closed", "base", "mid") + her "As I was saying, the whole issue is simply ridiculous and I cannot believe that it is taking place in our day and age!" ("open", "closed", "angry", "mid") + + if genie_masturbating: + call nar("*Fap-fap-fap*","start") + call nar(">You keep on stroking your cock...","end") + else: + gen "I see..." + + her "I mean, I would understand if something like this were to occur during the middle ages..." + her "But we left the middle ages behind a long time ago, did we not?" + + if genie_masturbating: + gen "{size=-4}(Would you look at those rosy cheeks? I want to poke 'em with my cock.){/size}" + call nar(">You keep stroking your cock...") + else: + gen "*Ehm*... I suppose you did. I mean, we did." + + her "So it hurts the whole house point distribution system." + her "But it doesn't even stop there!" + her "It hurts our entire educational system as well..." + her "And more importantly, the motivation among students is steadily decreasing due to it!" + + if genie_masturbating: + gen "{size=-4}(Look at those huge knockers on you, girl!){/size}" + gen "{size=-4}(Yes... I want to squeeze my dick between them...){/size}" + + her "As you can see, the situation is dire..." + her "But we can still set everything right..." ("open", "base", "base", "mid") + her "As the president of our school's Student Representative Body..." + her "I have a few suggestions on how to do that more efficiently." + + if not genie_masturbating: + gen ".............." + + her "First of all, the house point system needs to be maintained!" + her "You need to control the point distribution better, sir." ("open", "base", "base", "mid") + + if genie_masturbating: + gen "{size=-4}(Yes, you are a whore... A nasty little whore... I bet you love to suck cocks... Don't you? Yes, I bet you do...){/size}" + call nar(">You stroke your rock-hard cock ferociously!") + + her "Of course you agree with me on this, professor, do you not?" + + if genie_masturbating: + gen "{size=-4}*Panting heavily*{/size}" + her "Professor...?" ("normal", "squint", "angry", "mid") + gen "{size=-4}(Crap. What does she want now?){/size}" + gen "Yes, it's all true. Please keep going..." + her "*Ehm*... So, as I was saying..." + gen "{size=-4}(Oh... That was a good jerk-off session, but I'm getting dangerously close to the \"grand finale\".){/size}" + gen "{size=-4}(Maybe I should stop before I get myself into trouble.){/size}" + + menu: + "\"(Yes, time to actually listen to her.)\"": + $ genie_masturbating = False + + call hide_characters + hide screen bld1 + with d3 + + call gen_chibi("sit_behind_desk") + with d3 + pause.5 + + "\"(No! I want to keep on jerking off!)\"": + gen "Yes, yes! *pants*" + + if not genie_masturbating: + gen "{size=-4}(Do I? I honestly don't give a damn...){/size}" + gen "*Err*... I suppose I do..." + her "{size=-4}(\"Suppose\"?){/size}" ("annoyed", "base", "base", "mid") + her "{size=-4}(When did Professor Dumbledore become so... apathetic?){/size}" ("annoyed", "base", "worried", "R") + + her "Another measure you could take into consideration is tightening your control over the staff..." ("open", "closed", "angry", "mid") + her "Especially the teachers..." + her "I hope I'm not stepping out of line here, sir, but some of the teachers really do require supervision..." ("normal", "base", "base", "mid") + + if genie_masturbating: + gen "{size=-4}(Yes! You little whore! You little fucking whore!) *Panting*{/size}" + else: + gen "......................." + + her "I understand that you may not have time for this, professor. After all, you are the headmaster of our school, and a very busy man." ("open", "closed", "angry", "mid") + her "Being a top student is hard on me as well, sometimes..." + + if genie_masturbating: + gen "{size=-4}(She said \"hard-on\"!) *Panting*{/size}" + + her "But you could delegate that task to me--" + + $ camera.set_image("CG her_intro hermione bendover") + with d5 + call nar("> Hermione bends down again to pick up her book.") + + her "--Just put your faith in me, professor." + + $ hermione.set_pose("hold_book") + $ camera.set_image("CG her_intro hermione") + with d5 + + if genie_masturbating: + her "Yes, you can do it! Just put it in me, sir!" ("base", "closed", "base", "mid") + stop music fadeout 1.0 + + gen "{size=-4}(Oh crap, that did it!) *Argh*!{/size}" + + hide screen animatedCG + hide hermione_main + hide screen bld1 + with fade + pause.2 + + call cum_block + + call gen_chibi("cum_behind_desk") + with d3 + pause 3 + + her "Professor?! What is going on...?" ("angry", "wide", "base", "mid", trans=d3, xpos="mid") + + gen "*Ah*... YESSSSS.....!" ("angry", xpos="far_left", ypos="head") + call cum_block + her "...???" + gen "*breathing heavily* Yes! yes..." ("angry", xpos="far_left", ypos="head") + + call gen_chibi("cum_behind_desk_done") + with d3 + pause.5 + + gen "Yes, girl. It's all exactly as you say and I will.... take care of it all." ("base", xpos="far_left", ypos="head") + else: + gen "Alright... I will think about your proposal, I promise." + + call play_music("chipper_doodle") + + her "Really?" ("normal", "squint", "angry", "mid") + her "*Hmm*..........." + + her "That's a relief! Thank you, professor." ("open", "closed", "angry", "mid") + + if not genie_masturbating: + hide screen animatedCG + with fade + + if genie_masturbating: + gen "No, no, thank you..." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("normal", "squint", "angry", "mid") + + her "My classes are about to start, so I'd better go now." ("open", "closed", "angry", "mid", xpos="mid") + her "Thank you for your time..." ("base", "base", "base", "mid") + her "Have a good day, professor." ("base", "base", "base", "mid") + + call her_walk(action="leave") + + $ hermione.set_pose(None) + + if genie_masturbating: + gen "{size=-4}(This was awesome...) *Panting*{/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-4}(My trousers are ruined though...){/size}" ("base", xpos="far_left", ypos="head") + else: + gen "................." ("base", xpos="far_left", ypos="head") + gen "(She is cute, but quite a piece of work...)" ("base", xpos="far_left", ypos="head") + + call gen_chibi("sit_behind_desk") + with d3 + + $ snape_busy = True # No point in calling him during the day. + $ hermione_intro.E1_complete = True + + jump end_hermione_event + + +### Snape Hangout Event 1 ### +# Snape shares his opinion of Hermione with you. + +label ss_he_hermione_E1: + sna "..........................." ("snape_31", ypos="head") + gen "...............................?" ("base", xpos="far_left", ypos="head") + sna "I hate her so much..." ("snape_08") + + menu: + "\"Yeah! That bitch!\"": + sna "Good to know that we are on the same page..." ("snape_01") + sna "That girl..." ("snape_31") + "\"You hate who?\"": + sna "Why would you ask that?" ("snape_01") + sna "That Hermione girl of course!" ("snape_01") + "\"Is she that bad?\"": + sna "She is the worst!" ("snape_01") + + sna "A top student..." ("snape_31") + sna "Leads all sorts of extracurricular activities and clubs..." ("snape_08") + sna "the president of the school's Student Representative Body..." ("snape_08") + sna "Likely to become the head girl soon..." ("snape_08") + sna "................" ("snape_31") + sna "............" ("snape_08") + with hpunch + sna "{size=+7}I hate that fucking witch!!!{/size}" ("snape_33") + gen "{size=-4}(What the...?){/size}" ("angry", xpos="far_left", ypos="head") + sna ".............." ("snape_31") + sna "She used to be just an annoyance, but these days..." ("snape_31") + sna "She's become a full-fledged menace..." ("snape_01") + sna "That witch is officially my least favourite student in the entire school now..." ("snape_01") + gen "What about that Potter boy?" ("base", xpos="far_left", ypos="head") + sna "The Potter boy? Ha! Who's that!?" ("snape_34") + sna "No, I'm serious..." ("snape_01") + sna "I will go as far as to say that Potter and his wretched father combined..." ("snape_01") + sna "Have never caused me as much grief as this little witch does lately..." ("snape_01") + gen "Now, now. We both know that's not true..." ("base", xpos="far_left", ypos="head") + sna "Yeah... You're probably right..." ("snape_31") + sna "That bastard James Potter really did a number on me--" ("snape_35") + sna "Wait, how do you know this?" ("snape_34") + + menu: + "\"Well... I've read the books...\"": + sna "What? What books?" ("snape_34") + gen "Nah, never mind. I'm a genie, remember? I know things..." ("base", xpos="far_left", ypos="head") + sna "*Hmm*... And yet you need me to teach you stuff..." ("snape_37") + gen "Well, I told you. My magic is acting up in your world..." ("base", xpos="far_left", ypos="head") + sna "Sure, sure..." ("snape_37") + gen "......" ("base", xpos="far_left", ypos="head") + "\"You mentioned the potter boy earlier.\"": + sna "I did? I don't remember." ("snape_05") + sna "No matter." ("snape_09") + + gen "She came by the other day, by the way..." ("base", xpos="far_left", ypos="head") + sna "Who did?" ("snape_38") + gen "The Hermione girl..." ("base", xpos="far_left", ypos="head") + sna "What?!" ("snape_01") + sna "I thought we agreed on the \"no human contact\" rule." ("snape_31") + sna "(Even though lately I've been wondering whether or not she is human at all...)" ("snape_35") + gen "I know... She kinda forced her way in..." ("base", xpos="far_left", ypos="head") + sna "I imagine she did..." ("snape_01") + sna "What did she want?" ("snape_01") + + if jerked_off_during_hermione_intro: + gen "I'm not sure..." ("base", xpos="far_left", ypos="head") + sna "...?" ("snape_39") + gen "I was jerking off the entire time she was talking..." ("base", xpos="far_left", ypos="head") + sna "You've been..." ("snape_31") + sna "... doing what?" ("snape_14") + gen "Hey, don't judge me!" ("base", xpos="far_left", ypos="head") + gen "You don't know what it's like to be cooped up in this tower like a prisoner!" ("base", xpos="far_left", ypos="head") + sna "You... y-you..." ("snape_12") + sna "*snickers*......" ("snape_13") + sna "*Ha*... *ha-ha*... *HA-HA-HA*!!!" ("snape_28") + gen "Wha--? What did I say?" ("base", xpos="far_left", ypos="head") + sna "*Ha-ha-ha*! You are amazing!" ("snape_42") + sna "Are all genies so... wonderfully nihilistic?" ("snape_42") + gen "Yeah... We immortals tend to not give a fuck." ("base", xpos="far_left", ypos="head") + sna "Understandable..." ("snape_37") + sna "Unfortunately, us mere mortals cannot afford such a luxury..." ("snape_39") + else: + gen "Not sure... She was talking a lot..." ("base", xpos="far_left", ypos="head") + gen "Something about some {i}grief-n-door{/i} points... and..." ("base", xpos="far_left", ypos="head") + gen "Er... I wasn't paying attention to be honest..." ("base", xpos="far_left", ypos="head") + sna "Nah... Probably another load of self-righteous crap..." ("snape_01") + sna "She is famous for that..." ("snape_35") + + sna "I have a class early tomorrow, so let us call it a night." ("snape_01") + gen "What about you teaching me magic and stuff?" ("base", xpos="far_left", ypos="head") + sna "Yeah, absolutely..." ("snape_38") + sna "Next time..." ("snape_38") + gen "Alright..." ("base", xpos="far_left", ypos="head") + + "> Your meeting comes to an end, and you decide to go to sleep." + + $ ss_he.hermione_E1 = True + + jump end_snape_hangout_points + +### Event 2 ### +# Second visit from Hermione. Says she sent a letter to the Minestry. +# Takes place after first special event with Snape, where he just complains about Hermione. + +label hermione_intro_E2: + stop music fadeout 3.0 + call play_sound("knocking") + "*Knock-knock-knock!*" + + menu: + "\"Who is it?\"": + her "It's me, Hermione Granger." + gen "(It's that witch again...)" ("base", xpos="far_left", ypos="head") + her "Can I come in, sir?" + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Absolutely not! I'm busy! Come back later!\"": + her "But..." + her "Alright... I will come back tomorrow then..." + $ achievements.unlock("knock") + $ hg_event_pause += 1 + + call music_block + jump main_room_menu + + "\"Of course. Come on in.\"": + pass + + "\"I'm busy. Come back later.\"": + her "But..." + her "Well alright..." + $ achievements.unlock("knock") + $ hg_event_pause += 1 + + call music_block + jump main_room_menu + + "\"Yes, come in.\"": + pass + + "\"...................................\"": + call play_sound("knocking") + "*Knock-knock-knock*!" + gen "............................." ("base", xpos="far_left", ypos="head") + her "Professor, I'm coming in..." + gen "{size=-4}(Crap!){/size}" ("base", xpos="far_left", ypos="head") + + # Let Hermione in. + call her_walk(action="enter", xpos="mid", ypos="base") + pause.5 + + call play_music("chipper_doodle") + her "" ("normal", "base", "base", "mid", xpos="base", ypos="base") + call ctc + + her "Good morning, professor Dumbledore." ("open", "closed", "angry", "mid") + + menu: + + "\"Good morning, child.\"": + her "{size=-4}(Again with the \"child\"...){/size}" ("annoyed", "squint", "angry", "mid") + her "Sir, I would appreciate it if you would treat me as an equal..." ("open", "closed", "angry", "mid") + gen "{size=-4}(I'm literally millions of years older than you, witch. We are anything but equal.){/size}" ("base", xpos="far_left", ypos="head") + gen "...................." ("base", xpos="far_left", ypos="head") + her "................" ("annoyed", "squint", "angry", "mid") + "\"Good morning, miss Granger.\"": + her "*Ehm*... so, about the reason of me being here today then..." + "\"Yeah, yeah, whatever...\"": + her "................" ("annoyed", "squint", "angry", "mid") + + her "I see that no matter what I do I simply cannot get through to you, sir." + her "So in light of your negligence, I decided to take the initiative myself!" ("open", "closed", "angry", "mid") + gen "Did you now...?" ("base", xpos="far_left", ypos="head") + her "Yes! We, the proud students of Hogwarts, detest sexism..." + her "No individual shall be treated differently based on his or her gender." + gen "But--" ("base", xpos="far_left", ypos="head") + her "Please, let me finish, professor!" ("angry", "base", "angry", "mid") + her "I'm organizing the \"Men's rights movement\" in our school!" ("open", "closed", "angry", "mid") + gen "Oh boy, this is just so typical!" ("angry", xpos="far_left", ypos="head") + gen "Blame everything on--" ("angry", xpos="far_left", ypos="head") + stop music fadeout 1.0 + gen "Wait, did you say {size=+5}MEN'S{/size} rights movement?" ("base", xpos="far_left", ypos="head") + call play_music("chipper_doodle") + her "You have no idea how hard it is to be a boy in our school these days..." ("open", "base", "worried", "mid") + menu: + "\"Didn't see this one coming...\"": + her "No, you did not, because you refuse to listen to us, sir!" ("open", "closed", "angry", "mid") + her "But we will make you hear us..." + "{size=-3}\"That's literally the dumbest idea I've ever heard.\"{/size}": + her "I knew you would say something like that..." ("normal", "squint", "angry", "mid") + + her "Did you know that some of the girls in this school are now selling favours for house points...?" ("annoyed", "squint", "angry", "mid") + her "Sometimes even for good grades..." + gen "Really?" ("base", xpos="far_left", ypos="head") + her "Nobody from the Gryffindor house of course..." ("open", "closed", "angry", "mid") + her "And that's what puts us at a disadvantage -- our integrity!" + her "As for the boys -- they have to work ten times harder than the girls simply to pass a test..." + her "Or, if they are lucky enough, to get one meagre house point..." + her "This is sexism in its purest form!" ("open", "base", "base", "mid") + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"What do you want me to do?\"": + her "Nothing!" ("normal", "base", "base", "mid") + gen "Great. I'm good at that." ("base", xpos="far_left", ypos="head") + "\"I'm not sure what to say...\"": + her "You do not need to say anything anymore, professor." ("normal", "base", "base", "mid") + "\"You are being ridiculous!\"": + her "Am I? Well, we'll see..." ("normal", "squint", "angry", "mid") + + her "I have already sent a letter to the ministry of magic." ("open", "closed", "angry", "mid") + + $ renpy.music.set_volume(0.0, 1.0) + pause 1.0 + $ renpy.music.set_pause(True, channel="music") + with hpunch + gen "{size=+7}You did what?!{/size}" ("angry", xpos="far_left", ypos="head") + gen "{size=-4}(Wait, do I really give a damn about that?){/size}" ("base", xpos="far_left", ypos="head") + $ renpy.music.set_pause(False, channel="music") + $ renpy.music.set_volume(1.0, 1.0) + her "I'm sorry, but you left me no choice, professor." + + her "Now, if you'll excuse me, I must get to my classes..." + + call her_walk(action="leave") + + call bld + gen "...................." ("base", xpos="far_left", ypos="head") + + $ snape_busy = True # No point in calling him during the day. + $ hermione_intro.E2_complete = True + + jump end_hermione_event + + +### Snape Hangout Event 2 ### +# You scheme a plan to take down Hermione. + +label ss_he_hermione_E2: + call bld + gen "......................." ("base", xpos="far_left", ypos="head") + gen "Hermione Granger came by again..." ("base", xpos="far_left", ypos="head") + sna "Don't mention the witch's name when I'm off duty..." ("snape_01", ypos="head") + sna "..............." ("snape_31") + sna "Dammit! I am a grown man, Albus!" ("snape_08") + gen "My name is not--" ("base", xpos="far_left", ypos="head") + sna "An esteemed wizard..." ("snape_08") + gen "Well, alright, let it out..." ("base", xpos="far_left", ypos="head") + sna "How come one tiny... cunt, is able to cause me so much grief?!" ("snape_31") + sna "I thought with you as my ally I will have a chance to--" ("snape_32") + gen "To unclench?" ("base", xpos="far_left", ypos="head") + sna "Yeah, that could be the word..." ("snape_31") + sna "But all I did was give her more leverage to harass me with..." ("snape_43") + sna "She's even turning the teachers against me now..." ("snape_43") + sna "................." ("snape_08") + sna "She must go..." ("snape_35") + gen "What do you mean?" ("base", xpos="far_left", ypos="head") + with hpunch + sna "{size=+6}We have to get rid of her!{/size}" ("snape_33") + gen "Like, literally?" ("angry", xpos="far_left", ypos="head") + sna "Do I have any other choice?" ("snape_34") + gen "You're joking, right?" ("base", xpos="far_left", ypos="head") + sna "Do I look like I'm joking?" ("snape_34") + sna "Can you do this for me?" ("snape_39") + gen "*Ehm*..." ("base", xpos="far_left", ypos="head") + gen "Even if I agreed to murdering someone..." ("base", xpos="far_left", ypos="head") + gen "Genies can't kill..." ("base", xpos="far_left", ypos="head") + sna "Rats!" ("snape_35") + gen "And we frown upon murderers..." ("base", xpos="far_left", ypos="head") + if jerked_off_during_hermione_intro: + sna "Really? I thought you didn't give a fuck..." ("snape_44") + gen "to a certain degree..." ("base", xpos="far_left", ypos="head") + gen "I don't mind swinging my \"sword\" in front of the girl--" ("base", xpos="far_left", ypos="head") + gen "--but stabbing her with one is another thing." ("base", xpos="far_left", ypos="head") + sna "............." ("snape_35") + sna "Well... don't mind me then..." ("snape_31") + sna "I'm all talk..." ("snape_31") + sna "I would never cause harm to one of my students..." ("snape_31") + sna "(... permanently that is.)" ("snape_08") + gen "Listen, if she bugs you so much, why not just find a less radical way to deal with her?" ("base", xpos="far_left", ypos="head") + sna "Nah... Flogging has been outlawed for years now..." ("snape_35") + gen "That's not what I mean..." ("base", xpos="far_left", ypos="head") + sna "*huh*?" ("snape_01") + gen "She is a top student, right?" ("base", xpos="far_left", ypos="head") + sna "Yes, damn her. The girl is a hard worker, I will give her that." ("snape_31") + gen "She also has a reputation for being self-righteous." ("base", xpos="far_left", ypos="head") + sna "Oh, yes!" ("snape_34") + gen "And she thinks that she is better than everyone else..." ("base", xpos="far_left", ypos="head") + sna "Where are you going with this?" ("snape_44") + gen "Well, it seems like all of her power comes from her reputation..." ("base", xpos="far_left", ypos="head") + sna "......................?" ("snape_39") + gen "What if we take that away from her?" ("base", xpos="far_left", ypos="head") + sna "That would shut her up I suppose..." ("snape_38") + sna "But how? She's practically a saint--" ("snape_31") + sna "Even students who hate her secretly admire her." ("snape_35") + sna "She hasn't failed a single test in her entire time here...--" ("snape_31") + sna "She is always way ahead of schedule..." ("snape_31") + sna "Damn, how I hate it when she corrects me during my classes..." ("snape_08") + sna "And thanks to her the Gryffindor house is way ahead of everybody else now..." ("snape_34") + sna "Even Slytherin is no match for them this year..." ("snape_35") + sna "........................" ("snape_43") + sna "Dammit... I need more wine..." ("snape_34") + gen "The wine can wait. Hear me out!" ("base", xpos="far_left", ypos="head") + sna "*Huh*...?" ("snape_01") + gen "*Hmm*... Let us..." ("base", xpos="far_left", ypos="head") + + $ d_flag_01 = False + $ d_flag_02 = False + $ d_flag_03 = False + + label .choices: + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "{size=-3}\"Make sure she is not a top student any longer!\"{/size}" if not d_flag_01: + $ d_flag_01 = True + sna "What? You mean grade her unfairly?" ("snape_01") + sna "Nah... Dumbledore would never allow--" ("snape_31") + sna "Wait a second!" ("snape_37") + gen "Exactly!" ("base", xpos="far_left", ypos="head") + sna "You're right! I can grade her tests unfairly! I could even persuade other teachers to do the same!" ("snape_02") + sna "I could say that the order comes from you..." ("snape_02") + sna "And when the real Dumbledore shows up I will pretend that I had no idea that he was away..." ("snape_45") + gen "Works for me." ("base", xpos="far_left", ypos="head") + sna "*Err*..." ("snape_38") + sna "This is still you, genie, right?" ("snape_38") + gen "Yeah, yeah, still here..." ("base", xpos="far_left", ypos="head") + sna "OK, good." ("snape_02") + + "{size=-3}\"Make sure Gryffindor loses the cup this year!\"{/size}" if not d_flag_02: + $ d_flag_02 = True + sna "You mean to just start subtracting points from them for no good reason?" ("snape_01") + sna "Oh, I like that!" ("snape_02") + sna "There are a couple of Slytherin girls who are long overdue for receiving some extra house points as well." ("snape_46") + sna "Oh, this will work out magnificently!" ("snape_45") + sna "You are a Genius!" ("snape_02") + gen "Yes, I am a genius genie. What are the odds of that..." ("base", xpos="far_left", ypos="head") + + "{size=-3}\"Ruin her reputation!\"{/size}" if not d_flag_03: + $ d_flag_03 = True + sna "Tarnish her reputation?" ("snape_01") + sna "But the girl is incorruptible..." ("snape_01") + gen "Nonsense!" ("base", xpos="far_left", ypos="head") + gen "All we need to do is convince her that she needs to make some sacrifices \"for the greater good\"." ("base", xpos="far_left", ypos="head") + sna "Oh, but of course..." ("snape_37") + sna "She would gladly \"Get her hands dirty\" to save the honour of her precious Gryffindor house!" ("snape_47") + sna "And when she does, we will have the leverage we need..." ("snape_37") + + if d_flag_01 and d_flag_02 and d_flag_03: + pass + else: + gen "Nextly--" ("base", xpos="far_left", ypos="head") + jump ss_he_hermione_E2.choices + + sna "This could actually work!" ("snape_37") + gen "I think so too." ("base", xpos="far_left", ypos="head") + sna "Oh, I feel so alive tonight!" ("snape_45") + sna "Pour me another goblet!" ("snape_28") + sna "Potions class will start late tomorrow!" ("snape_45") + gen "Although....." ("base", xpos="far_left", ypos="head") + gen "I do feel like the measures are a little severe." ("base", xpos="far_left", ypos="head") + gen "I mean, she's just a girl..." ("base", xpos="far_left", ypos="head") + sna "Just a girl?" ("snape_36") + sna "Oh no, no, no..." ("snape_36") + sna "She is the embodiment of pure evil!" ("snape_32") + sna "If we don't do this now..." ("snape_31") + sna "One of these days I may just snap and {i}Avada Kedavra{/i} her!" ("snape_08") + gen "You'll do what?" ("base", xpos="far_left", ypos="head") + sna "Murder her for real!" ("snape_32") + gen "Alright, alright... got it." ("base", xpos="far_left", ypos="head") + gen "Let's choose the lesser of two evils then." ("base", xpos="far_left", ypos="head") + sna "Yes..." ("snape_35") + sna "Now, pour me some more wine." ("snape_34") + + ">You spend the rest of the evening in Snape's company drinking your worries away." + + $ ss_he.hermione_E2 = True + $ ss_event_pause += 1 + $ chair_OBJ.hidden = False + + jump end_snape_hangout_points + +### Event 3 ### +# Third visit, after second special date with Snape. +# Hermione complains that she almost failed a test. (EVENING EVENT!) + +label hermione_intro_E3: + stop music fadeout 1.0 + call play_sound("knocking") + "*Knock-knock-knock*!" + + her "Professor, I'm coming in!" + gen "...." ("base", xpos="far_left", ypos="head") + + call her_walk(action="enter", xpos="mid", ypos="base") + pause.5 + + call play_music("chipper_doodle") + + her "" ("annoyed", "squint", "angry", "mid", xpos="base", ypos="base") + call ctc + + her "Good evening, Professor." ("annoyed", "narrow", "angry", "R") + + menu: + "-stare full of hatred-": + her "You can stare at me all you want, sir." ("normal", "squint", "angry", "mid") + her "It will not make the problems of this school go away." + "-sigh of exasperation-": + her "Is this a bad time?" ("normal", "base", "base", "mid") + her "Well, since I'm already here..." ("open", "base", "base", "mid") + "\"....................................\"": + her "Professor?" ("open", "base", "base", "mid") + gen "Yes, yes..." ("base", xpos="far_left", ypos="head") + + her "Something... bizarre has happened today..." ("open", "closed", "angry", "mid") + her "I'm not sure how to describe this..." ("normal", "squint", "angry", "mid") + her "................................" ("annoyed", "squint", "angry", "mid") + her "I think I almost failed a test..." ("annoyed", "narrow", "angry", "R") + + menu: + "\"That happens to students sometimes.\"": + her "To other students, yes. But not to me, sir!" ("annoyed", "narrow", "angry", "R") + her "Never to me..." ("soft", "base", "base", "R") + "{size=-5}\"Way to go, Snape!\"{/size}": + her "Excuse me?" ("normal", "base", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + gen "Oh, I said, that's too bad. How are you holding up?" ("base", xpos="far_left", ypos="head") + her "................." ("normal", "squint", "angry", "mid") + "\"So, why tell me?\"": + her "Because... this is not an ordinary event!" + + her "I'm not sure what is going on here..." + gen "An evil scheme against you, miss Granger?" ("base", xpos="far_left", ypos="head") + her "This is not a laughing matter, Sir." ("normal", "base", "angry", "mid") + her "You should consider me a \"measuring stick\" for our educational system." ("open", "closed", "angry", "mid") + her "If I \"almost\" fail a test, the rest of the students will definitely fail it." + gen "Is that so...?" ("base", xpos="far_left", ypos="head") + her "Yes, professor. Something went terribly wrong today..." ("normal", "squint", "angry", "mid") + her "................................." ("annoyed", "narrow", "angry", "R") + her "But what if it didn't?" ("open", "base", "worried", "mid") + her "What if all the tests will be this difficult from now on?" + + menu: + "\"You should study more, girl!\"": + her "But I studied all night for this test!" ("upset", "base", "base", "mid", tears="soft") + "\"There, there... It'll be alright.\"": + her "No it won't! This is a catastrophe!" ("mad", "happyCl", "worried", "mid", tears="soft_blink") + + her "And the worst part is that I think I might be the only one who failed..." ("angry", "base", "base", "mid", tears="soft") + her "How will this make me look?" ("angry", "base", "base", "mid", tears="soft") + her "I will know for sure when we get the results though..." ("normal", "base", "base", "R", tears="soft") + her "Yes, I'm sure everyone else failed as well..." ("soft", "base", "base", "R") + her "I mean, they must have, right?" ("open", "base", "worried", "mid") + her "....................." ("soft", "base", "base", "R") + her ".... right?" ("open", "base", "worried", "mid") + + $ d_flag_01 = False + + label .choices: + menu: + "{size=-3}\"Of course. You are a top student after all.\"{/size}": + her "Exactly..." ("annoyed", "squint", "angry", "mid") + her "Or at least I used to be until today..." + her "I cannot believe this is happening!" ("mad", "happyCl", "worried", "mid", tears="soft_blink") + "{size=-3}\"You could prepare better if I were to tutor you.\"{/size}": + $ tutoring_offer_made = True + her "*Hmm*..." ("annoyed", "squint", "base", "mid") + her "Yes, that could help I suppose..." ("soft", "base", "base", "R") + her "I appreciate your offer, professor, but..." ("open", "base", "base", "mid") + her "The best tutor is a book, and I have the entire Hogwarts library at my disposal." ("open", "closed", "base", "mid") + her "I don't think it would be necessary, sir. But..." ("soft", "base", "base", "mid") + her "May I think about it?" + gen "Don't take too long..." ("base", xpos="far_left", ypos="head") + "{size=-3}\"I suppose we'll know soon enough.\"{/size}": + her "Yes, I suppose we will..." ("soft", "base", "base", "mid") + "{size=-3}\"You need to put my cock in your mouth.\"{/size}" if not d_flag_01: + $ d_flag_01 = True + gen "You need to put my co--" ("base", xpos="far_left", ypos="head") + her "*huh*?" ("soft", "base", "base", "mid") + gen "{size=-4}(No, I can't actually say that...){/size}" ("base", xpos="far_left", ypos="head") + her "......?" ("annoyed", "squint", "base", "mid") + jump hermione_intro_E3.choices + + gen "............" ("base", xpos="far_left", ypos="head") + her "I'm sorry, professor, I'm probably just overreacting anyway..." ("grin", "happyCl", "worried", "mid", emote="sweat") + her "But you must understand that my reputation is at stake here!" ("open", "base", "base", "mid") + her "There's gotta be something wrong with the test..." ("annoyed", "narrow", "angry", "R") + her "And although the entire class might have failed, I probably still got the most points on the test..." + her "As usual..." + her "Well, I'd better go now. We have another \"MRM\" meeting today." ("open", "closed", "angry", "mid") + her "I will let you know about the new ideas we come up with." + gen "I can hardly wait..." ("base", xpos="far_left", ypos="head") + her "Well, if there is nothing else, I have a studying schedule to keep." ("open", "closed", "base", "mid") + gen "By all means..." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + $ snape_busy = False + $ hg_event_pause += 1 + $ hermione_intro.E3_complete = True + + jump end_hermione_event + +### Event 4 ### +# Hermione complains that she did fail the test. (EVENING EVENT!) + +label hermione_intro_E4: + stop music fadeout 1.0 + + # Gryffindor gets shafted by Snape and has 50% of Slytherin's points. + $ gryffindor = int(slytherin*0.5) + call update_ui_points + + # Wear default outfit. She's in shock so she didn't change. + $ hermione.equip(her_outfit_default) + + call her_walk(action="enter", xpos="mid", ypos="base") + + call bld + her "....................." + gen "???" ("base", xpos="far_left", ypos="head") + + call her_walk("desk", "base") + + call bld + her "............" + gen "Miss Granger?" ("base", xpos="far_left", ypos="head") + her "..............................." + gen "Miss Granger?!!" ("base", xpos="far_left", ypos="head") + + her "" ("upset", "narrow", "base", "stare", tears="mascara", xpos="right", ypos="base") + call ctc + + her "*huh*?" ("upset", "narrow", "base", "mid", tears="mascara") + her "Oh, I'm already here?" ("upset", "narrow", "base", "L", tears="mascara") + her "I'm sorry, sir... I..." ("upset", "narrow", "base", "down", tears="mascara") + her ".................." ("angry", "narrow", "base", "down", tears="mascara") + her "It seems that I did..." ("angry", "happyCl", "base", "dead", tears="mascara") + her "I did... *Ehm*..." ("normal", "happyCl", "base", "dead", tears="mascara") + her "... I failed that test after all." ("open", "happyCl", "base", "dead", tears="mascara") + her "On top of that I... caused my house to lose a lot of points..." ("disgust", "narrow", "base", "down", tears="mascara") + her "I'm sorry, professor..." ("upset", "happyCl", "worried", "mid", tears="mascara_soft_blink") + her "I'm not sure why I'm here..." ("upset", "happyCl", "worried", "mid", tears="tears_mascara_crying_blink") + her "I think I'd better go..." ("angry", "happyCl", "worried", "mid", tears="mascara_soft_blink") + her "..................." ("angry", "happyCl", "worried", "mid", tears="tears_mascara_crying_blink") + + call her_walk(action="run", xpos="door", speed=2, reduce=True) + call her_chibi("leave") + + call bld + gen "............." ("base", xpos="far_left", ypos="head") + gen "She will be alright..." ("base", xpos="far_left", ypos="head") + gen "I think..." ("base", xpos="far_left", ypos="head") + + $ hermione_intro.E4_complete = True + + jump end_hermione_event + +### Event 5 ### +# Hermione comes after her breakdown (when she failed the test). +# She is asking for tutoring. +# Tutoring unlocked! + +label hermione_intro_E5: + stop music fadeout 1.0 + + call her_walk(action="enter", xpos="desk", ypos="base") + + call play_music("chipper_doodle") + her "Good morning, Professor." ("base", "base", "base", "mid", xpos="right", ypos="base", trans=d3) + gen "(So She doesn't even bother to knock anymore?)" ("base", xpos="far_left", ypos="head") + gen "How can I help you today, miss Granger?" ("base", xpos="far_left", ypos="head") + her "Well, first of all, I am terribly sorry about yesterday's display, sir..." ("open", "closed", "angry", "mid") + her "I've never failed a test in my life, so I wasn't sure how to react..." ("open", "squint", "base", "mid") + her "But I'm all better now..." ("open", "closed", "angry", "mid") + + menu: + "\"Glad to hear it.\"": + pass + "\".........\"": + pass + + her "I will not take much of your time, I promise..." + + if tutoring_offer_made: + her "I am here to take you up on your offer." + + menu: + "\"What offer?\"": + her "A while back you offered to tutor me, sir..." + menu: + "\"Oh... That offer has expired.\"": + her "It..." ("open", "base", "base", "mid") + her "Expired, sir?" ("angry", "base", "base", "mid") + her "B-but..." ("open", "base", "worried", "mid") + her "But I require tutoring, and you are the smartest wizard I know..." ("annoyed", "base", "worried", "mid") + her "Please, sir. I really need your help." ("angry", "base", "worried", "mid") + menu: + "\"Show me your tits and it's a deal!\"": + her "m-my...?" ("shock", "wide", "base", "stare") + her "............" ("angry", "base", "angry", "mid") + her "....." + with hpunch + her "{size=+5}Professor Dumbledore!!!{/size}" ("scream", "closed", "angry", "mid") + gen "{size=-5}(Well, at least I tried...){/size}" ("base", xpos="far_left", ypos="head") + her "I am not some Slytherin floozy!" + gen "Of course not, miss Granger." ("base", xpos="far_left", ypos="head") + gen "It was a test...{w=0.5} You passed. Good job." ("base", xpos="far_left", ypos="head") + her "What...?" ("open", "base", "base", "mid") + her "Oh, of course. I'm so silly sometimes. Sorry about the yelling, sir." ("grin", "happyCl", "worried", "mid", emote="sweat") + gen "My offer is still valid. If you want me to then I can tutor you." ("base", xpos="far_left", ypos="head") + her ".............." ("annoyed", "base", "worried", "R") + "\"Well, alright, alright...\"": + pass + "\"Oh, that's right. Great.\"": + pass + + "\"Splendid! Starting today?\"": + pass + else: + her "I... *Ehm*..." ("normal", "squint", "angry", "mid") + her "Sir, I hope this is not too much to ask..." + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... would it be alright if..." + her "..............." + her "do You think you could tutor me a little, sir?" ("annoyed", "squint", "angry", "mid") + menu: + "\"I suppose that is possible.\"": + pass + "\"*Hmm*... I'm quite busy actually.\"": + her "Sir, please, you are the smartest wizard I know!" ("open", "base", "worried", "mid") + gen "{size=-4}(You have no idea, little witch.){/size}" ("base", xpos="far_left", ypos="head") + gen "Well, it could be arranged, I suppose..." ("base", xpos="far_left", ypos="head") + + her "Thank you, sir. I am very grateful." ("base", "base", "base", "mid") + her "Just let me know when, and I will bring my books!" ("open", "closed", "base", "mid") + her "I must study even harder from now on..." ("annoyed", "squint", "angry", "mid") + her "And I'll be taking private lessons from you, sir, as often as possible." ("base", "base", "base", "mid") + her "But that's not all..." ("normal", "squint", "angry", "mid") + her "The \"MRM\" shall investigate our education system much closer now..." + her "I think some sort of foul play might be taking place..." + gen "*exagerrated gasp* No way!" ("base", xpos="far_left", ypos="head") + her "I have a list of suspects already but I will get back to you on this later..." + gen "*Ehm*... alright..." ("base", xpos="far_left", ypos="head") + her "Oh, my classes are about to start. I'd better go..." ("open", "base", "worried", "R") + her "Good day to you, sir." ("base", "happyCl", "base", "mid") + + call her_walk(action="leave") + + stop music fadeout 1.0 + + $ hermione_unlocked = True + $ achievements.unlock("unlockher", True) + call popup("{size=-4}You can now summon Hermione into your office.{/size}", "Character unlocked!", "interface/icons/head/hermione.webp") + + $ tutoring_hermione_unlocked = True + + $ hermione_intro.E5_complete = True #Allows next event to start. + $ hg_event_pause += 2 + + jump end_hermione_event + +### Tonks Hangout Event ### +# Tonks will help convince Hermione to buy favours. + +label nt_he_hermione_E1: + ton "So, what did Severus think about me joining you on your little scheme?" ("open", "base", "base", "mid", ypos="head", flip=False) + + if not ss_he.tonks_E2: # You haven't talked to Snape yet. + gen "Oh, I haven't told him yet." ("base", xpos="far_left", ypos="head") + ton "You haven't told him?" ("open", "narrow", "raised", "mid") + gen "Not yet." ("base", xpos="far_left", ypos="head") + ton "Why you better let him know then... I wouldn't want to step on any toes..." ("annoyed", "base", "raised", "down") # looks down + call nar(">Tonks moves her gaze towards your feet.") + ton "Unless that's something you're into..." ("horny", "narrow", "base", "mid", hair="horny") # looks at Genie + call play_sound("gulp")#Genie gulps + gen "..." ("angry", xpos="far_left", ypos="head") + if game.daytime: + ">You spend the afternoon talking about how big your feet are, and its implications..." + else: + ">You spend the evening talking about how big your feet are, and its implications..." + call notes + ">You feel a faint bond forming between you two..." + + #Event fails + jump end_tonks_hangout_points + + + gen "Oh, he couldn't believe it." ("base", xpos="far_left", ypos="head") + ton "That thrilled, was he?" ("open", "base", "raised", "mid") + ton "Now that's surprising." ("annoyed", "base", "base", "R") + gen "No he literally couldn't believe it... He thought I was lying at first." ("base", xpos="far_left", ypos="head") + gen "Although after he stopped laughing like a maniac..." ("base", xpos="far_left", ypos="head") + gen "He did figure out quite quickly that the ministry probably wouldn't have sent a full fletched auror for something like this." ("base", xpos="far_left", ypos="head") + ton "Well, what can I say... I'm an open book." ("base", "happyCl", "base", "mid") + ton "I'm sure you'll both find out the benefits of having me around soon enough..." ("horny", "narrow", "base", "R") + gen "I'm sure..." ("base", xpos="far_left", ypos="head") + ton "So, is that Granger girl causing you two trouble?" ("open", "base", "base", "mid") + gen "Quite a bit. She's not too thrilled on the idea of favour trading." ("base", xpos="far_left", ypos="head") + ton "Maybe I can be of help with her?" ("base", "base", "base", "mid") + ton "I can be very convincing." ("horny", "narrow", "annoyed", "mid") + gen "What are you suggesting?" ("base", xpos="far_left", ypos="head") + ton "To persuade her into having a try of it herself, for a start..." ("open", "base", "base", "R") + ton "Convince her that trading favours isn't all bad." ("base", "base", "base", "mid") + gen "That would indeed be very helpful. She's stubborn in that regard." ("base", xpos="far_left", ypos="head") + ton "You don't have to tell me. She's been lecturing me about those \"sexual favours\" since the very day I got here..." ("upset", "base", "base", "R") + ton "But I shouldn't complain about that..." ("open", "closed", "base", "mid") + ton "Hearing those naughty words spill out of her gorgeous little mouth really gets me going!" ("soft", "narrow", "base", "R", hair="horny") + gen "I can imagine so." ("grin", xpos="far_left", ypos="head") + ton "When she describes all the wrongdoings of those \"filthy Slytherin girls\"..." ("soft", "base", "shocked", "stare") + ton "How could I possibly get tired of that!" ("crooked_smile", "narrow", "base", "stare") + ton "I'm very glad I decided to join you two." ("open", "base", "base", "down") + ton "As an Auror It's just constant busy work..." ("open", "base", "raised", "mid") + ton "Not to mention the hours." ("mad", "base", "base", "down") + ton "And the mortality rate..." ("upset", "base", "worried", "R") + ton "If I had known the benefits of being a teacher at Hogwarts, I would have signed up straight away!" ("horny", "base", "base", "up") + + if game.daytime: + ">You spend the afternoon conspiring against Hermione with Tonks..." + else: + ">You spend the evening conspiring against Hermione with Tonks..." + call notes + ">You feel a faint bond forming between you two..." + + $ nt_he.hermione_E1 = True + + jump end_tonks_hangout_points + +### Event 6 ### +# Hermione comes and asks to buy a favour from her. + +label hermione_intro_E6: + stop music fadeout 1.0 + call play_sound("knocking") + "*Knock-knock-knock!*" + + menu: + "\"Who is it?\"": + her "It's me, Hermione Granger." + gen "(It's that witch again...)" ("base", xpos="far_left", ypos="head") + her "Can I come in, sir?" + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Absolutely not! I'm busy! Come back later!\"": + her "But..." + her "Alright... I will come back tomorrow then..." + $ achievements.unlock("knock") + $ hg_event_pause += 1 + + call music_block + jump main_room_menu + + "\"Of course. Come on in.\"": + pass + + "\"I'm busy. Come back later.\"": + her "But..." + her "Well, alright..." + $ achievements.unlock("knock") + $ hg_event_pause += 1 + + call music_block + jump main_room_menu + + "\"Yes, come in.\"": + pass + + "\"...................................\"": + call play_sound("knocking") + "*Knock-knock-knock!*" + gen "............................." ("base", xpos="far_left", ypos="head") + her "Professor, I'm coming in..." + gen "{size=-4}(Crap!){/size}" ("base", xpos="far_left", ypos="head") + + call her_walk(action="enter", xpos="mid", ypos="base") + + call play_music("chipper_doodle") + + her "Good day, professor..." ("soft", "base", "base", "R", xpos="base", ypos="base", trans=d3) + her "........................" + her "........................" ("annoyed", "base", "worried", "R") + her "........................" + her "*Ehm*......" ("open", "base", "base", "mid") + her "................." ("annoyed", "base", "worried", "R") + gen "What is it, miss Granger?" ("base", xpos="far_left", ypos="head") + her "Well... *Ehm*." ("open", "base", "base", "mid") + + if gryffindor < slytherin: + her "You see... The Gryffindor house is not in the lead anymore..." ("open", "base", "worried", "R") + else: + her "You see... The Gryffindor house is struggling with points..." ("open", "base", "worried", "R") + + her "And... everyone is working so hard..." ("annoyed", "base", "worried", "R") + her "And they look up to me for help but I don't know what to do..." ("disgust", "base", "worried", "down") + gen "............................" ("base", xpos="far_left", ypos="head") + her "Professor Dumbledore..." ("open", "base", "worried", "mid") + + $ renpy.music.set_volume(0.0, 1.0) + pause 1.0 + $ renpy.music.set_pause(True, channel="music") + her "I want you to buy a favour from me!" ("open", "happyCl", "worried", "mid") + her "" ("normal", "happyCl", "worried", "mid") + gen "(What in the...?!)" ("angry", xpos="far_left", ypos="head") + $ renpy.music.set_pause(False, channel="music") + $ renpy.music.set_volume(1.0, 1.0) + + menu: + "\"You mean like a sexual favour?\"": + her "*Ehm*... I'm not sure..." ("angry", "wink", "worried", "mid", emote="sweat") + her "The kind that would gain our house additional points..." + her "I could write an essay for you or..." ("open", "base", "worried", "R") + her "Or maybe clean your tower...?" ("angry", "wink", "worried", "mid", emote="sweat") + gen "{size=-4}(Clean my tower? Heh... There's gotta be dirty joke in there somewhere...){/size}" ("base", xpos="far_left", ypos="head") + gen "Well, alright then, I think we can figure something out." ("base", xpos="far_left", ypos="head") + "\"Well, if you insist...\"": + pass + "\"I don't think so, miss Granger.\"": + her "B-but... We need the points..." ("open", "base", "worried", "mid") + her "Professor, please, I am really desperate..." ("open", "squint", "low", "mid") + gen "Desperate you say...?" ("base", xpos="far_left", ypos="head") + gen "Well, alright..." ("base", xpos="far_left", ypos="head") + + her "Really?" ("silly", "base", "base", "mid") + her "Thank you, professor..." ("base", "happyCl", "base", "mid") + her "So... What will it be?" ("base", "base", "base", "mid") + + $ d_flag_01 = False + + label .choices: + $ current_favor = "" + + menu: + "\"Show me your tongue...\"": + $ current_favor = "show_tongue" + "\"Stand there. Let me look at you\"": + $ current_favor = "stand_there" + "\"Make a silly face...\"": + $ current_favor = "silly_face" + "\"Say 'I've been a bad girl'\"": + $ current_favor = "bad_girl" + "\"Blow me\"" if not d_flag_01: + $ d_flag_01 = True + gen "(*heh*, if only that worked...)" ("grin", xpos="far_left", ypos="head") + gen "(I don't think she's ready for that just yet.)" ("base", xpos="far_left", ypos="head") + gen "(Let's start with something simpler.)" ("base", xpos="far_left", ypos="head") + jump hermione_intro_E6.choices + + her "*Ehm*..." ("angry", "base", "base", "mid") + her "How many house points will I get for that...?" ("angry", "wink", "base", "mid") + + menu: + "\"One point.\"": + if not current_favor in ["show_tongue", "stand_there"]: + her "I don't think it's worth it then..." ("annoyed", "base", "worried", "mid") + jump hermione_intro_E6.choices + $ current_payout = 1 + "\"Five points.\"": + if not current_favor in ["show_tongue", "stand_there", "silly_face"]: + her "I don't think it's worth it then..." ("annoyed", "base", "worried", "mid") + jump hermione_intro_E6.choices + $ current_payout = 5 + "\"Ten points.\"": + her "(So little...?)" ("annoyed", "base", "worried", "down") + $ current_payout = 10 + "\"Twenty points.\"": + her "(Wow. That's quite a lot for such simple request...)" ("base", "base", "base", "mid") + $ current_payout = 20 + + her "Em, alright..." (xpos="mid", ypos="base", trans=fade) + + if current_favor == "show_tongue": + her "M-my... tongue, sir?" ("grin", "happyCl", "worried", "mid", emote="sweat") + gen "Yes, girl. Open your mouth, and show me your tongue." ("base", xpos="far_left", ypos="head") + her "{size=-4}(What an odd request...){/size}" ("annoyed", "narrow", "angry", "R") + her "*Ehm*... well, alright then..." ("soft", "squint", "worried", "mid") + her "Here..." ("open", "squint", "base", "mid") + her "............." ("open_tongue", "narrow", "base", "mid_soft") + her "............." ("open_tongue", "narrow", "base", "L") + her "................." ("open_tongue", "narrow", "angry", "R") + + menu: + "\"Very good. Here are your points.\"": + pass + "\"Not good enough. You can do better\"": + her "..............." ("annoyed", "narrow", "angry", "R") + her "Alright, I will try to do better, sir..." ("open", "closed", "angry", "R") + her "How about this?" ("open", "base", "worried", "mid") + her "*A-a-ah*........." ("scream", "base", "base", "R") + her "............................" ("open_wide_tongue", "happy", "base", "R") + her "......................................" ("open_wide_tongue", "narrow", "base", "down") + her "...................................................................." + her "......................................................................................................." ("open_wide_tongue", "closed", "angry", "mid") + her "*khow* *ish* *thish*?" ("open_wide_tongue", "base", "annoyed", "mid") + + menu: + "\"Good enough. Here, your points.\"": + pass + "\"Keep that mouth open.\"": + her "......." ("open_wide_tongue", "happy", "worried", "mid") + her "{size=-4}(My mouth is starting to hurt...){/size}" ("open_wide_tongue", "happy", "worried", "mid") + call ctc + gen "Alright, that's enough." ("base", xpos="far_left", ypos="head") + her "{size=-4}(Finally...){/size}" ("annoyed", "narrow", "base", "R") + elif current_favor == "stand_there": + her "So, I just have to stand here then...?" ("soft", "base", "base", "mid") + + $ d_flag_01 = "mid" + $ d_flag_02 = 0 + + label .stand_there_choices: + + if d_flag_02 >= 3: + her "Professor, could you make up your mind already?!" ("angry", "base", "annoyed", "R", trans=dissolve) + gen "Alright, alright, there's no need to get worked up about it, sheesh." ("base", xpos="far_left", ypos="head") + else: + menu: + "\"No, come closer\"" if d_flag_01 == "mid": + $ d_flag_01 = "desk" + $ d_flag_02 += 1 + her "*Ehm*... alright..." + call her_walk("desk", "base") + + jump hermione_intro_E6.stand_there_choices + "{size=-4}\"On second thought, go back to the middle\"{/size}" if d_flag_01 == "desk": + $ d_flag_01 = "mid" + $ d_flag_02 += 1 + her "*Ehm*... alright..." + call her_walk("mid", "base") + call her_chibi("stand", flip=False) + with d3 + + jump hermione_intro_E6.stand_there_choices + "\"Yes, stand right where you are.\"": + pass + + her "................................." ("annoyed", "base", "annoyed", "R", trans=d3) + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + "\"Your attire suits you, miss Granger...\"": + her "............" ("soft", "base", "base", "R",cheeks="blush") + her "Thank you, professor..." ("open", "base", "base", "R",cheeks="blush") + her "" ("base", "base", "base", "R",cheeks="blush") + "\"You have a nice body, miss Granger...\"": + her "!!?" ("soft", "wide", "base", "stare") + her ".............." ("annoyed", "narrow", "angry", "R",cheeks="blush") + her "Thank you, professor..." (cheeks="blush") + "\"That's enough. Here are your points...\"": + jump hermione_intro_E6.end + elif current_favor == "silly_face": + her "A silly face then..." ("grin", "happyCl", "worried", "mid", emote="sweat") + her "Let's see..." + label .silly_face_choices: + + her "How about this one?" ("silly", "base", "base", "squint") + + menu: + "\"Good! Very stupid! I mean, silly.\"": + jump hermione_intro_E6.end + "\"Not stupid enough.\"": + pass + + her "........." ("annoyed", "narrow", "angry", "R") + her "What about this one then?" ("disgust", "slit", "low", "stare") + + menu: + "\"*Ha-ha*! You look like an idiot!\"": + jump hermione_intro_E6.end + "\"No, not stupid enough.\"": + pass + + her "........." ("annoyed", "narrow", "angry", "R") + her "What if I do it like this?" ("full", "slit", "worried", "ahegao") + + menu: + "\"Good! Very stupid.\"": + jump hermione_intro_E6.end + "\"Not stupid enough.\"": + pass + + her "........." ("annoyed", "narrow", "angry", "R") + her "I give up..." ("upset", "narrow", "worried", "down") + + menu: + "\"*Ha-ha-ha*, perfect!\"": + her "What?" ("open", "base", "angry", "mid") + her "But that's my normal face!" ("angry", "base", "angry", "mid") + gen "*he-he-he* Don't get mad, [hermione_name], I'm just messing with you." ("grin", xpos="far_left", ypos="head") + gen "Although you look cute when you're upset." ("base", xpos="far_left", ypos="head") + her "......." ("annoyed", "base", "worried", "R", cheeks="blush") + jump hermione_intro_E6.end + "\"Not stupid enough.\"": + jump hermione_intro_E6.silly_face_choices + elif current_favor == "bad_girl": + her "I..." ("normal", "squint", "angry", "mid") + her "I have been a very bad girl..." ("open", "squint", "angry", "R") + gen "Have you been a very, very, very bad girl?" ("grin", xpos="far_left", ypos="head") + her "*Umm*... Maybe?" ("grin", "wink", "worried", "mid") + + $ d_flag_01 = False + + label .bad_girl_choices: + menu: + gen "..." ("grin", xpos="far_left", ypos="head") + "\"Do you need to be punished?\"": + her "Do I need to... be punished?" ("open", "base", "worried", "mid") + her "*Ehm*..." ("upset", "base", "base", "down") + her "....................." + her "Well, I am not perfect, if that's what you mean, sir..." ("annoyed", "narrow", "angry", "R") + her "But do I need to be punished?" ("annoyed", "base", "base", "R") + her "Is this really for me to decide...? I mean..." ("normal", "squint", "angry", "mid") + her "What does this have to do with anything?" ("open", "squint", "angry", "mid") + her "" ("normal", "squint", "angry", "mid") + gen "You are overanalysing this, girl." ("base", xpos="far_left", ypos="head") + gen "Just say that you need to be punished!" ("base", xpos="far_left", ypos="head") + her "Fine. I need to be punished!" ("angry", "base", "angry", "mid") + her "{size=-5}(And I truly do think so sometimes...){/size}" ("normal", "narrow", "worried", "down") + gen "That's a good girl." ("base", xpos="far_left", ypos="head") + her "................??" ("annoyed", "base", "base", "R") + gen "Now that wasn't hard at all, was it?" ("base", xpos="far_left", ypos="head") + her "N-no , sir, I guess not..." ("angry", "happyCl", "worried", "R") + her "" ("annoyed", "base", "worried", "R") + gen "Alright then..." ("base", xpos="far_left", ypos="head") + "\"Do you want to get spanked?\"": + her "Do I want to..." ("open", "base", "worried", "mid") + her "Get s-spanked??" ("angry", "wide", "base", "stare") + her "*Tsk*!" ("angry", "base", "angry", "mid") + her "Professor, I don't think I'm comfortable with--" ("open", "closed", "angry", "mid") + gen "Apologies, let me rephrase the question..." ("base", xpos="far_left", ypos="head") + gen "How badly do you need those points?" ("base", xpos="far_left", ypos="head") + her ".................." ("annoyed", "squint", "angry", "mid") + her "Yes, sir. I do need to get spanked." ("open", "closed", "angry", "mid") + gen "Alright, that's good enough for now..." ("base", xpos="far_left", ypos="head") + her "{size=-4}(For now?){/size}" ("normal", "squint", "angry", "mid") + "\"Bend over!\"" if not d_flag_01: + $ d_flag_01 = True + gen "{size=-5}(Too early for this... I need to reel her in first.){/size}" ("base", xpos="far_left", ypos="head") + jump hermione_intro_E6.bad_girl_choices + + label .end: + if current_payout == 1: + gen "{number=current_payout} point to the Gryffindor house." ("base", xpos="far_left", ypos="head") + else: + gen "{number=current_payout} points to the Gryffindor house." ("base", xpos="far_left", ypos="head") + $ gryffindor += current_payout + + her "..... Yay!......." ("grin", "happyCl", "worried", "mid", emote="sweat") + her "This was quite easy..." + her "Do you think you could buy some more favours from me in the future, professor?" ("grin", "wink", "worried", "mid") + + menu: + "\"I don't think that's a good idea.\"": + her "Please, professor..." ("angry", "base", "worried", "mid") + her "We really need those points..." + gen "......." ("base", xpos="far_left", ypos="head") + her "You are an esteemed wizard and to be honest..." ("annoyed", "base", "worried", "R") + her "The only person in this school whom I don't mind asking for this..." + gen "Well, when you put it that way..." ("base", xpos="far_left", ypos="head") + "\"That's a possibility...\"": + pass + + her "Thank you, professor. Thank you so much!" ("smile", "happyCl", "base", "mid") + her "Well... I suppose I'd better go now..." ("base", "base", "base", "mid") + gen "............" ("base", xpos="far_left", ypos="head") + + call her_walk("door", "base") + pause.3 + + # Hermione inner thoughts + show screen blktone + with d3 + + if current_favor == "show_tongue": + her "{size=-4}(*Hmm*...){/size}" ("annoyed", "narrow", "worried", "down", ypos="head", flip=False, trans=d3) + her "{size=-4}(Students show teachers their tongues all the time...){/size}" ("soft", "base", "base", "R") + her "{size=-4}(Although that's usually when the teacher is not looking...){/size}" ("base", "narrow", "base", "R_soft") + her "{size=-4}(But there is nothing wrong with what I did today...){/size}" ("annoyed", "base", "base", "L") + her "{size=-4}(I earned my house extra points...){/size}" ("smile", "happyCl", "base", "mid") + elif current_favor == "stand_there": + her "{size=-4}(I can just stand there and let the professor look at me...){/size}" ("annoyed", "base", "base", "R", ypos="head", flip=False, trans=d3) + her "{size=-4}(There is nothing wrong with that... nothing at all...){/size}" ("base", "closed", "base", "mid") + elif current_favor == "silly_face": + her "{size=-4}(Stupid face...){/size}" ("silly", "base", "base", "squint", ypos="head", flip=False, trans=d3) + her "{size=-4}(Stupid face...){/size}" ("disgust", "happy", "base", "squint") + her "{size=-4}(I need to practise this.){/size}" ("base", "happyCl", "base", "mid") + elif current_favor == "bad_girl": + her "{size=-4}(I'm a bad girl...){/size}" ("angry", "base", "angry", "stare", ypos="head", flip=False, trans=d3) + her "{size=-4}(I am a very bad girl...){/size}" ("base", "base", "angry", "stare") + her "{size=-4}(Yes, I can say things like that easily...){/size}" ("smile", "happyCl", "base", "mid") + her "{size=-4}(I guess I'm a born actress...){/size}" ("base", "happyCl", "base", "mid") + + hide screen blktone + call her_chibi("leave") + with d3 + + stop music fadeout 1.0 + + call popup("You have unlocked the ability to buy sexual favours from Hermione.", "Congratulations!", "interface/icons/head/hermione.webp") + + $ hermione_wardrobe_unlocked = True + $ hermione_favors = True + + $ hermione_intro.E6_complete = True + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/events/items/butt_plugs.rpy b/game/scripts/characters/hermione/events/items/butt_plugs.rpy new file mode 100644 index 00000000..5c91663b --- /dev/null +++ b/game/scripts/characters/hermione/events/items/butt_plugs.rpy @@ -0,0 +1,1005 @@ + +label hg_ps_buttplug: + + # Setup + $ her_outfit_last.save() #Saves current clothing + + $ current_payout = 55 # Default payout + + if hg_ps_buttplug.points == 0: + gen "{size=-4}(I could ask her to wear a butt plug around the school today.){/size}" ("base", xpos="far_left", ypos="head") + else: + gen "{size=-4}(I feel like making her walk around with a butt plug again!){/size}" ("base", xpos="far_left", ypos="head") + + gen "{size=-4}(But which one?){/size}" ("base", xpos="far_left", ypos="head") + + label .plug_choice: + + menu: + "-Small, regular-": + if not her_buttplug_small1.unlocked: + # First time with small butt plug + + gen "[hermione_name], I want you to do something different today..." ("base", xpos="far_left", ypos="head") + her "..........." ("soft", "base", "base", "mid",xpos="right",ypos="base") + call nar(">You pull a large size butt plug out from under your desk and place it in front of her.") + + if her_whoring < 15: + gen "I want you to wear a butt plug around the school." ("base", xpos="far_left", ypos="head") + jump too_much + + $ her_buttplug_small1.unlock() + + her "and what is that supposed to be? Some sort of animals tail?" ("open", "squint", "base", "mid") + gen "Not exactly, it's a butt plug. I want you to wear it while you attend class today." ("base", xpos="far_left", ypos="head") + + stop music + with hpunch + + her "{size=+5}What?!!{/size}" ("shock", "wide", "base", "stare") + + call play_music("chipper_doodle") + + her "You expect me to put that massive thing in my..." ("angry", "base", "angry", "mid") + her "and then parade myself around the school!?" + gen "It just looks like a fake tail, No one will be able to tell what it really is." ("base", xpos="far_left", ypos="head") + her "{size=+5}That's not the point!{/size}" ("scream", "closed", "angry", "mid") + her "I'm not going to put that ridiculous thing anywhere near my butt!" + her "We are done here, [genie_name]!" ("angry", "base", "angry", "mid",emote="angry") + gen "Alright, alright, calm down..." ("base", xpos="far_left", ypos="head") + her "I most certainly will not, [genie_name]! That thing is beyond absurd!" ("scream", "closed", "angry", "mid") + gen "Alright, fine, maybe I underestimated how large it is..." ("base", xpos="far_left", ypos="head") + her "You think [genie_name]?! I'd like to see you try and fit it up your--" ("angry", "base", "angry", "mid") + gen "alright, alright..." ("base", xpos="far_left", ypos="head") + her "........." ("annoyed", "narrow", "annoyed", "mid") + gen "How about we try one a little less... ambitious?" ("base", xpos="far_left", ypos="head") + her "............" ("upset", "closed", "base", "mid") + gen "I'm willing to give Gryffindor fifty-five points." ("base", xpos="far_left", ypos="head") + gen "and All I ask for..." ("base", xpos="far_left", ypos="head") + her "..........?" ("annoyed", "squint", "base", "mid") + + call nar(">You pull out a small butt plug from your desk.") + + gen "is that you wear this to class..." ("base", xpos="far_left", ypos="head") + her "!!!" ("angry", "base", "angry", "mid") + gen "Oh, come on... Just a harmless little baby one." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "mid_soft") + gen "Fifty-five house points..." ("base", xpos="far_left", ypos="head") + her ".............." ("annoyed", "narrow", "angry", "R") + her "Fine." ("annoyed", "narrow", "annoyed", "mid") + gen "Fantastic." ("base", xpos="far_left", ypos="head") + gen "Will you be putting it in now then?" ("base", xpos="far_left", ypos="head") + her "........" ("annoyed", "narrow", "angry", "R") + her "I'll do it in the girls' bathroom, [genie_name]." ("annoyed", "narrow", "angry", "R") + gen "*Hmm*... alright, I'll see you tonight then." ("base", xpos="far_left", ypos="head") + else: + # Repeat with small butt plug + if her_whoring >= 15: + gen "Today's favour shall be..." ("base", xpos="far_left", ypos="head") + her "........." ("angry", "base", "base", "mid",xpos="right",ypos="base") + gen "Wearing your favourite little butt plug to class!" ("base", xpos="far_left", ypos="head") + her "... again?" ("angry", "narrow", "base", "down") + gen "Sure, why not?" ("base", xpos="far_left", ypos="head") + gen "And another fifty-five house points for the Gryffindor house of course." ("base", xpos="far_left", ypos="head") + her ".........." ("annoyed", "base", "worried", "R") + gen "So... Are you okay with that, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I suppose so..." ("annoyed", "narrow", "angry", "R") + ">You hand her the butt plug." + gen "Fantastic! See you after class." ("base", xpos="far_left", ypos="head") + + elif her_whoring >= 19: + ">You pull out the large butt plug." + gen "Ready to try out the dragon yet?" ("base", xpos="far_left", ypos="head") + stop music fadeout 1.0 + her "What?" ("scream", "wide", "base", "mid",xpos="right",ypos="base") + her "Of course not! That thing would tear me--" ("scream", "closed", "angry", "mid") + ">You pull out the small butt plug." + gen "How about this one then?" ("base", xpos="far_left", ypos="head") + her "Oh, okay then!" ("smile", "happyCl", "base", "mid",emote="happy") + gen "You'll do it that easily?" ("base", xpos="far_left", ypos="head") + her "Well for fifty-five house points I'd be crazy not to." ("base", "closed", "base", "mid") + her "Plus I don't hate the way it feels." ("open", "base", "base", "R") + ">You hand her the butt plug." + gen "Why don't you put it in now." ("base", xpos="far_left", ypos="head") + her "you want me to put it in now? in front of you!" ("scream", "wide", "base", "mid") + gen "I don't see the harm in it." ("base", xpos="far_left", ypos="head") + her "well... it does save me having to visit the girls' bathroom before class..." ("annoyed", "narrow", "worried", "down") + her "alright then, I'll do it... but I want an extra five points!" ("smile", "base", "base", "R") + gen "Done." ("base", xpos="far_left", ypos="head") + $ current_payout += 5 + her "well... here goes." ("smile", "base", "base", "R") + ">Hermione lifts her skirt and sticks it in rather slowly." + her "{heart}*Ah*{heart}..." ("grin", "narrow", "annoyed", "up") + her "I better head to class..." ("soft", "happy", "base", "R") + gen "See you tonight [hermione_name]." ("base", xpos="far_left", ypos="head") + her "{size=-5}({heart}it feels so good{heart}){/size}" ("grin", "narrow", "annoyed", "up") + + elif her_whoring > 21: + call play_music("chipper_doodle") + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "What do you think about wearing a butt pl--?" ("base", xpos="far_left", ypos="head") + her "I'll do it." ("grin", "base", "base", "R",xpos="right",ypos="base") + gen "You're eager." ("base", xpos="far_left", ypos="head") + her "well... I mean it is a lot of points and... I've sort of grown fond of how it feels..." ("open", "narrow", "worried", "down") + gen "Great. Go have fun then!" ("base", xpos="far_left", ypos="head") + ">You hand her the butt plug." + ">Hermione turns around and lifts her skirt giving you a full view as she inserts it." + her "{heart}*Ah*{heart}..." ("grin", "narrow", "annoyed", "up") + her "I will, [genie_name]. Thank you." ("base", "happyCl", "base", "mid") + + "-Medium, magical-": + if hg_ps_buttplug.points >= 1: + $ buttplug_size = 2 + else: + gen "(I don't think she's ready for that yet.)" ("base", xpos="far_left", ypos="head") + jump .plug_choice + + if not her_buttplug_medium1.unlocked: + # First time with medium butt plug + gen "[hermione_name], I want you to try something different today..." ("base", xpos="far_left", ypos="head") + her "..........." ("soft", "base", "base", "mid",xpos="right",ypos="base") + call nar(">You pull the medium size butt plug out from under your desk and place it in front of her.") + + if her_whoring < 19: + gen "I want you to wear this butt plug around the school." ("base", xpos="far_left", ypos="head") + jump too_much + + $ her_buttplug_medium1.unlock() + + her "and what is this supposed to be?" ("open", "squint", "base", "mid") + gen "Can't you tell it's a butt plug? They shouldn't be new to you at this point." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "annoyed", "mid") + call play_music("chipper_doodle") + her "Why does it have a such a large tail attached to it..." ("annoyed", "base", "angry", "mid") + her "you can't expect me to wear that around the school!" + gen "I can and do, unless you want our little trading game to come to a halt..." ("base", xpos="far_left", ypos="head") + her "but it's so long! everyone will be able to see it!" ("normal", "happyCl", "worried", "mid") + gen "That's the point, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "..........." ("angry", "happyCl", "worried", "mid",emote="sweat") + her "I want a hundred points." ("annoyed", "base", "angry", "mid") + + menu: + "\"Fine, but I expect you to put it in now.\"": + $ current_payout = 100 + + her "What? Right now!?." ("angry", "happyCl", "worried", "mid") + her "In front of you?" ("angry", "wink", "base", "mid") + gen "One hundred points [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "*Ugh*... Fine..." ("angry", "narrow", "base", "down") + her "But I'm not turning around!" ("annoyed", "narrow", "annoyed", "mid") + gen "Whatever suits you best..." ("base", xpos="far_left", ypos="head") + ">You hand her the butt plug." + her "{size=-7}It's so big...{/size}" ("clench", "narrow", "base", "down") + ">Hermione lifts her skirt and presses the butt plug against her asshole." + her "*Ughh*... it's too big..." ("shock", "happyCl", "worried", "mid") + her "It won't fit!" ("open", "happyCl", "worried", "mid") + gen "Try spitting on it." ("base", xpos="far_left", ypos="head") + her "........." ("angry", "narrow", "base", "down") + ">She spits on the end of the butt plug and tries to put it in again." + her "it doesn't work, It's just too bi--" ("angry", "base", "base", "mid") + + stop music + with hpunch + + her "{size=+5}!!!!{/size}" ("shock", "wide", "base", "stare") + + call play_music("chipper_doodle") + + her "............." ("angry", "base", "base", "mid") + her "..." ("angry", "narrow", "base", "down") + her "well... I... Better get to.... Class... Then..." ("angry", "wink", "base", "mid") + gen "See you tonight [hermione_name]." ("base", xpos="far_left", ypos="head") + + "\"You'll get seventy points.\"": + $ current_payout = 70 + + her "*Hmph*..." ("annoyed", "narrow", "angry", "R") + her "Alright then, just don't expect me to show it to you!" ("angry", "base", "angry", "mid") + gen "So long as you wear it to class then you'll get your seventy points." ("base", xpos="far_left", ypos="head") + ">You hand her the butt plug." + her "Will that be all [genie_name]?." ("annoyed", "narrow", "annoyed", "mid") + gen "Yes [hermione_name], see you tonight." ("base", xpos="far_left", ypos="head") + her "{size=-5}(cheap bastard...){/size}" ("annoyed", "narrow", "angry", "R") + else: + # Repeat with medium butt plug + if her_whoring < 21 and buttplug_size == 2: + gen "Today my gracious request will be..." ("base", xpos="far_left", ypos="head") + her "........." ("angry", "base", "base", "mid",xpos="right",ypos="base") + gen "That you wear everyone's favourite magical butt plug to class!" ("base", xpos="far_left", ypos="head") + her "... again?" ("angry", "narrow", "base", "down") + gen "why not? This will be the easiest fifty-five points you'll ever earn!" ("base", xpos="far_left", ypos="head") + her ".........." ("annoyed", "base", "worried", "R") + gen "Do you have a problem with it, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I suppose not..." ("annoyed", "narrow", "angry", "R") + ">You hand her the butt plug." + gen "Fantastic! See you after class." ("base", xpos="far_left", ypos="head") + + elif her_whoring < 23 and buttplug_size == 2: + ">You pull out the butt plug." + gen "Ready to try out the phoenix again?" ("base", xpos="far_left", ypos="head") + + if buttplug_2_question == False: + $ buttplug_2_question = True + + her "Oh, I suppose so..." ("soft", "happy", "base", "R",xpos="right",ypos="base") + her "But is it alright if I ask you something first?" ("open", "narrow", "worried", "down") + gen "What's that, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Don't you worry about us getting caught?" ("annoyed", "base", "base", "mid") + gen "Why would I?" ("base", xpos="far_left", ypos="head") + her "Well it's just that making me wear something like this is drawing a lot of attention..." ("open", "base", "worried", "R") + her "and what if someone realises that it's you who's making me do all this..." ("open", "base", "worried", "mid") + gen "And who is going to suspect the great {i}Albis Dumbledorf{/i}?" ("base", xpos="far_left", ypos="head") + her "... I suppose no one..." ("annoyed", "base", "worried", "R") + gen "Then don't worry about it. If anyone asks just tell them you're going through an exhibitionist stage." ("base", xpos="far_left", ypos="head") + gen "Speaking of which..." ("base", xpos="far_left", ypos="head") + ">You hand her the butt plug." + her "Oh... right..." ("base", "narrow", "worried", "down") + ">Hermione lifts her skirt and pushes it in gently, taking her time." + + else: + her "Oh, alright then..." ("open", "narrow", "worried", "down",xpos="right",ypos="base") + her "If you pay me an additional ten points I'll show you as I put it in..." ("soft", "happy", "base", "R") + menu: + "\"Done\"": + $ current_payout += 10 + her "Thank you [genie_name], you won't regret it..." ("open", "base", "base", "R") + + "\"Five is all I can do.\"": + $ current_payout += 5 + her "*Hmm*... Alright fine..." ("annoyed", "narrow", "angry", "R") + her "But you better appreciate it..." ("base", "squint", "base", "mid") + gen "I'm sure I will." ("base", xpos="far_left", ypos="head") + + ">You hand her the butt plug." + her "Well... Here goes..." ("base", "narrow", "worried", "down") + ">Hermione lifts her skirt and pushes it in gently, taking her time." + + call set_hermione_plug("medium") + + her "{heart}{heart}{heart}*Ah*{heart}{heart}{heart}..." ("grin", "narrow", "annoyed", "up") + her "I better... Head to class... Now..." ("soft", "happy", "base", "R") + gen "See you tonight, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "{size=-5}({heart}It's... So... Good...{heart}){/size}" ("grin", "narrow", "annoyed", "up") + + elif her_whoring >= 23 and buttplug_size == 2: + call play_music("chipper_doodle") + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "What do you think about wearing a butt pl--?" ("base", xpos="far_left", ypos="head") + her "I'll do it." ("grin", "base", "base", "R",xpos="right",ypos="base") + gen "You're eager. I haven't even said which one yet..." ("base", xpos="far_left", ypos="head") + her "Oh... Can it be the medium one... With the phoenix tail?" ("open", "narrow", "worried", "down") + her "please..." ("soft", "happy", "base", "R") + gen "Well, seeing as how you asked so nicely..." ("base", xpos="far_left", ypos="head") + ">You hand her the butt plug." + ">Hermione lifts her skirt giving you a full view as she inserts it." + + call set_hermione_plug("medium") + + her "{heart}*Ah*{heart}..." ("grin", "narrow", "annoyed", "up") + her "Thank you [genie_name]!" ("open", "base", "base", "R") + her "{size=-5}({heart}it feels so good... I might have to buy my own...{heart}){/size}" ("grin", "narrow", "annoyed", "up") + + "-Large, magical-": + if buttplug_2_worn and her_whoring > 23: + $ buttplug_size = 3 + else: + gen "(I don't think she's ready for that yet.)" ("base", xpos="far_left", ypos="head") + jump .plug_choice + + # else: + # if not buttplug_3_worn and buttplug_size == 3: + # # Large buttplug first time + # call play_music("chipper_doodle") + # gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + # gen "What do you think about wearing a butt pl--?" ("base", xpos="far_left", ypos="head") + # her "I'll do it." ("grin", "base", "base", "R",xpos="right",ypos="base") + # gen "You're eager. I haven't even said which one yet..." ("base", xpos="far_left", ypos="head") + # her "Oh... Can it be the big one... With the long tail..." ("open", "narrow", "worried", "down") + # her "Please..." ("soft", "happy", "base", "R") + # gen "Well seeing as how you did ask for the big one..." ("base", xpos="far_left", ypos="head") + # call nar(">You hand her the butt plug.") + # her "!!!" ("angry", "narrow", "base", "down") + # her "This isn't the one I meant [genie_name]..." ("angry", "narrow", "base", "down") + # gen "Didn't you ask for the big one?" ("base", xpos="far_left", ypos="head") + # her "I did--" ("grin", "narrow", "annoyed", "up") + # gen "Well here's the {b}big{/b} one." ("base", xpos="far_left", ypos="head") + # her "But, [genie_name]... I don't even think this will fit." ("disgust", "base", "base", "mid",cheeks="blush") + # gen "Never say never!" ("base", xpos="far_left", ypos="head") + # her "You can't be serious!" ("scream", "narrow", "worried", "down") + # her "This thing is ridiculous!" ("open", "closed", "base", "mid") + # gen "You said the same thing about the smaller one." ("base", xpos="far_left", ypos="head") + # her "That was different..." ("disgust", "narrow", "base", "down") + # gen "I have confidence in you!" ("base", xpos="far_left", ypos="head") + + # if hg_anal.trigger: + # gen "Besides, you were pretty great when you were taking my cock up your ass!" ("grin", xpos="far_left", ypos="head") + + # her "[genie_name]!" ("shock", "wide", "base", "mid",cheeks="blush") + # gen "Come on..." ("base", xpos="far_left", ypos="head") + # her "This is too much [genie_name]! even your cock isn't this {b}thick{/b}..." ("open", "narrow", "angry", "R") + # gen "Nothing a little spit can't solve!" ("base", xpos="far_left", ypos="head") + # her "Don't be ridiculous! This is beyond spit!" ("open", "closed", "base", "mid") + # her "Unless you have some sort of actual {i}lubricant{/i} in your possession, I don't think I'll be letting this thing anywhere near me..." ("open", "base", "angry", "mid") + + # menu: + # "-Use anal lube-" if anal_lube_ITEM.owned > 0: + # $ buttplug_3_worn = True + # $ her_buttplug_large1.unlock() + + # call play_music("playful_tension") + # gen "Well it just so happens that I recently came across the solution to your problem." ("base", xpos="far_left", ypos="head") + # her "Which is?" ("disgust", "wink", "base", "mid") + # gen "Here." ("base", xpos="far_left", ypos="head") + + # call give_gift(">You hand hermione the jar of anal lubricant.",anal_lube_ITEM) + + # her "!!!" ("clench", "wide", "base", "stare") + # her "I wasn't being serious, [genie_name]!" ("scream", "base", "angry", "mid") + # gen "Now, now. No one likes a liar." ("base", xpos="far_left", ypos="head") + # her "I didn't promise anything! Besides, I didn't actually expect you to have a jar of lube in your desk." ("open", "narrow", "angry", "R") + # gen "I bought it for just such an occasion..." ("base", xpos="far_left", ypos="head") + # her "..." ("annoyed", "base", "angry", "mid") + # her "*Ugh*... fine. I'll {b}try{/b} to fit it in." ("disgust", "narrow", "worried", "down") + # her "But I'm not promising anything!" ("open", "closed", "base", "mid") + # gen "That's all I ask." ("base", xpos="far_left", ypos="head") + # call nar(">You hand Hermione the large butt plug.") + # her "I still don't think this is going to work..." ("open", "base", "base", "mid") + # call nar(">Hermione slowly coats the massive butt plug with lube.") + # her "There's barely even enough here to cover it..." ("open", "narrow", "worried", "down") + # her "(There's no way this thing will fit.)" ("disgust", "narrow", "base", "down") + # call nar(">Hermione slowly places the lubed up butt plug to her anus.") + # her "I'm telling you, [genie_name], this isn't going to--" ("open", "closed", "base", "mid") + # her "{size=+10}!!!{/size}" ("soft", "wide", "base", "stare",cheeks="blush",trans=hpunch) + # her "{size=+10}It's moving!{/size}" ("disgust", "happyCl", "worried", "mid") + # gen "Really?" ("base", xpos="far_left", ypos="head") + # her "{size=+5}*Ugh*...{/size}" ("disgust", "happyCl", "worried", "mid") + # her "{size=+5}it's forcing its way inside me....{/size}" ("open", "wide", "worried", "shocked") + # her "*Ah*..." ("shock", "happyCl", "worried", "mid") + # her "It's...{w=0.3} It's..." ("open", "wide", "base", "stare") + + # call play_sound("pop") + + # call set_hermione_plug("large") + + # her "" ("soft", "narrow", "annoyed", "up",cheeks="blush") + # call ctc + + # her "{size=+5}incredible!{/size}" ("soft", "narrow", "annoyed", "up",cheeks="blush") + + # her "............." ("disgust", "narrow", "annoyed", "up") + # gen "Are you alright, [hermione_name]?" ("base", xpos="far_left", ypos="head") + # her ".........................." ("soft", "narrow", "base", "up") + # her "*Ah*... Y--{w=0.2} yes..." ("open", "narrow", "base", "mid_soft") + # gen "Fantastic! I'll see you after class then." ("base", xpos="far_left", ypos="head") + # her "............." ("disgust", "narrow", "worried", "down",cheeks="blush") + # call nar(">Hermione slowly leaves your office, barely able to walk in a straight line.") + + # "-Use anal lube-" (style="disabled") if anal_lube_ITEM.owned == 0: + # gen "I'm afraid I do not have that..." ("base", xpos="far_left", ypos="head") + # her "Well then i think I better be off to class then." ("open", "closed", "base", "mid") + # her "{size=-2}unless {size=-2}you {size=-2}have {size=-2}the {size=-2}smaller {size=-2}one?{/size}{/size}{/size}{/size}{/size}{/size}{heart}" ("soft", "narrow", "base", "R_soft",cheeks="blush") + # gen "It just so happens that I do!" ("grin", xpos="far_left", ypos="head") + # call nar(">You hand her a small butt plug.") + + # $ buttplug_size = 1 + # call set_hermione_plug("small") + + # her "{heart}*Ah*{heart}..." ("silly", "narrow", "annoyed", "up") + # her "Thank you, [genie_name]." ("base", "narrow", "base", "mid_soft") + # her "{size=-5}({heart}it feels so good... I might have to buy my own...{heart}){/size}" ("soft", "narrow", "annoyed", "up") + # hide hermione_main + # with d3 + # pause.2 + # gen "(Maybe those Weasley boys have anything that could help me with my... *Ahem* {i}her{/i} friction problem...)" ("base", xpos="far_left", ypos="head") + + # elif buttplug_size == 3: + # # Large buttplug repeat + # call play_music("chipper_doodle") + # gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + # gen "How do you feel about wearing another butt plug to class today?" ("base", xpos="far_left", ypos="head") + # her "..." ("base", "base", "base", "R",xpos="right",ypos="base") + # her "Which one?" ("grin", "base", "base", "mid") + # gen "How about the big one again?" ("base", xpos="far_left", ypos="head") + # her "Really?" ("open", "narrow", "worried", "down") + # her "Do i have to?" ("soft", "happy", "base", "R") + # gen "You didn't seem to hate wearing it last time..." ("base", xpos="far_left", ypos="head") + # her "..." ("open", "narrow", "worried", "down") + # her "{size=-5}alright then...{/size}" ("open", "narrow", "worried", "down") + # call nar(">You hand her the butt plug.","start") + # call nar(">You watch it magically wriggle it's way inside her eager butthole.","end") + + # call set_hermione_plug("large") + + # her "{heart}*Ah*{heart}..." ("grin", "narrow", "annoyed", "up") + # gen "(Didn't even need any lube...)" ("base", xpos="far_left", ypos="head") + # her "Thank you, [genie_name]!" ("base", "narrow", "base", "mid_soft") + # her "{size=-5}({heart}it feels so good... I might have to buy my own...{heart}){/size}" ("soft", "narrow", "annoyed", "up") + + # call her_walk(action="leave") + + # $ hg_ps_buttplug.inProgress = True + + jump end_hermione_event + + +label hg_ps_buttplug_complete: + $ random_number = renpy.random.randint(1, 3) + call her_walk(action="enter", xpos="mid", ypos="base") + + call bld + if her_whoring <= 18 and buttplug_size == 1: + if random_number == 1: + # Got distracted + gen "[hermione_name], how did it go?" ("base", xpos="far_left", ypos="head") + call play_music("chipper_doodle") + her "It was awful... of course..." ("annoyed", "squint", "angry", "mid",xpos="base",ypos="base") + gen "Just tell me what happened, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "I've never been so uncomfortable in my life [genie_name]!" ("disgust", "narrow", "base", "mid_soft") + her "I wasn't able to focus on anything all day!" ("annoyed", "narrow", "annoyed", "mid") + gen "Why's that?" ("base", xpos="far_left", ypos="head") + her "Whenever I was sitting down in class it just kept prodding me..." ("annoyed", "narrow", "angry", "R") + her "So naturally I had to adjust the way I was sitting, [genie_name]..." + her "but that just made it worse..." ("annoyed", "narrow", "angry", "R") + gen "Do you think anyone else noticed you?" ("base", xpos="far_left", ypos="head") + her "I've got no idea..." ("annoyed", "narrow", "annoyed", "mid") + her "I could hardly think straight... Let alone notice other people." ("annoyed", "narrow", "annoyed", "mid") + gen "So it felt good then?" ("base", xpos="far_left", ypos="head") + her "Good?" ("open", "base", "base", "mid") + her "If you call getting your butt prodded all day good..." ("annoyed", "narrow", "worried", "down") + her "Then sure." ("annoyed", "narrow", "annoyed", "up") + her "Still... Being this distracted during class could really damage my grades." ("angry", "base", "base", "mid") + gen "I wouldn't worry about that. Just think of Gryffindor!" ("base", xpos="far_left", ypos="head") + her "Speaking of Gryffindor..." ("annoyed", "narrow", "annoyed", "mid", xpos="right",ypos="base",trans=fade) + gen "Oh yes, you're quite right." ("base", xpos="far_left", ypos="head") + + elif random_number == 2: + # Flashed a few Ravenclaw girls by accident + gen "[hermione_name], how did it go?" ("base", xpos="far_left", ypos="head") + her "It went well, [genie_name]..." ("open", "base", "base", "mid",xpos="right",ypos="base") + call play_music("playful_tension") + her "Barely anybody noticed that I was wearing it..." + her "... Except for a few girls from Ravenclaw..." ("open", "base", "base", "mid",cheeks="blush") + gen "What happened?" ("base", xpos="far_left", ypos="head") + her "I was walking down the hall, on my way to potions class..." ("open", "closed", "base", "mid") + her "And suddenly a gust of wind came and blew my skirt up..." ("upset", "wink", "base", "mid") + gen "A gust of wind? inside?" ("base", xpos="far_left", ypos="head") + her "It must have been from a window..." ("soft", "base", "base", "R") + her "Anyway the three girls walking behind me may have... seen it." ("open", "narrow", "worried", "down") + gen "How do you know?" ("base", xpos="far_left", ypos="head") + her "I did hear them giggling afterwards..." ("clench", "narrow", "base", "down") + gen "Maybe they just heard a funny joke." ("base", xpos="far_left", ypos="head") + her "..." ("clench", "narrow", "base", "mid") + gen "In any case... Sounds like a job well done." ("base", xpos="far_left", ypos="head") + + elif random_number == 3: + # Caught by Moaning Myrtle + gen "[hermione_name], how did it go?" ("base", xpos="far_left", ypos="head") + call play_music("chipper_doodle") + her "Awful, [genie_name]. Simply awful..." ("scream", "happyCl", "worried", "mid",xpos="right",ypos="base") + gen "What happened?" ("base", xpos="far_left", ypos="head") + her "Moaning Myrtle happened!" ("normal", "happyCl", "worried", "mid") + gen "{i}Moaning Mittle{/i}?" ("base", xpos="far_left", ypos="head") + her "That pesky little ghost!" ("annoyed", "narrow", "angry", "R") + her "This thing left me so frustrated that during my free period I went to the girls toilets to--" ("annoyed", "narrow", "angry", "R") + her "*Ahem*... Relieve myself..." ("annoyed", "base", "worried", "R") + her "When all of a sudden that annoying ghost poked her head through the door!" ("scream", "closed", "angry", "mid") + her "As it if wasn't bad enough that she saw me..." ("open", "narrow", "worried", "down") + her "She then started yelling \"Hermione has a butt plug\" to everyone in the toilets!" ("scream", "base", "angry", "mid",emote="angry") + her "Luckily the stalls where empty! Imagine if they weren't!" ("annoyed", "narrow", "annoyed", "mid") + gen "Well, it certainly sounds like you've earned your points." ("base", xpos="far_left", ypos="head") + + elif her_whoring < 21 and buttplug_size == 1: + if random_number == 1: + # Flashed Luna in the library + call play_music("chipper_doodle") + gen "[hermione_name], did you complete your task?" ("base", xpos="far_left", ypos="head") + her "Of course." ("open", "base", "base", "mid",xpos="right",ypos="base") + gen "Did anyone notice?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... Well..." ("base", "narrow", "worried", "down") + her "I might've shown someone..." ("base", "narrow", "base", "mid_soft") + her "I was in the library fetching some books when I saw Luna..." + her "She was reading at a desk..." + her "So I decided to walk over to her and have a chat..." ("grin", "base", "base", "R") + her "She was talking about something nonsensical..." ("base", "base", "base", "R") + her "And I figured that if she saw it..." + her "No one would believe her..." + gen "Right..." ("base", xpos="far_left", ypos="head") + her "So I feigned dropping my quill..." ("grin", "base", "base", "R") + gen "Go on..." ("base", xpos="far_left", ypos="head") + her "Then I turned around in front of her..." ("base", "narrow", "worried", "down") + her "And bent over..." + her "... keeping my knees straight..." + her "... giving her a full view..." ("base", "narrow", "base", "up") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "So she saw how the tail was attached?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Maybe, [genie_name]..." ("soft", "happy", "base", "R") + her "She was too stunned to say anything." + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + her "Although knowing her she might've just thought I grew the tail or something..." ("base", "narrow", "base", "mid_soft") + gen "Either way, it sounds like you've earned your points and then some." ("base", xpos="far_left", ypos="head") + + elif random_number == 2: + # Couldn't focus and touched herself during class + gen "[hermione_name], did you complete your task?" ("base", xpos="far_left", ypos="head") + her "I did, [genie_name]..." ("open", "closed", "base", "mid",xpos="base",ypos="base") + her "Although I am still not sure how I feel about all of this..." ("annoyed", "base", "worried", "R") + her "I was barely able to pay attention during class..." ("annoyed", "base", "worried", "R") + her "I don't think I could even tell you what potions we were taught today..." ("open", "base", "base", "mid") + call play_music("playful_tension") + her "Me Hermione Granger..." ("open", "narrow", "worried", "down") + her "Not learning in class." ("angry", "narrow", "base", "down") + gen "You could always try relieving yourself in between lessons." ("base", xpos="far_left", ypos="head") + her "Oh, I've tried that... But it doesn't work..." ("angry", "base", "base", "mid") + her "It just makes the next class even more difficult..." + her "After potions finished I went to my room to... calm myself..." ("open", "base", "base", "R") + her "But it just made Herbology worse..." ("open", "narrow", "worried", "down") + her "I just had to touch myself during the later half of the class..." ("clench", "narrow", "base", "down") + her "Do you think anyone noticed, [genie_name]?" ("open", "happy", "base", "mid",cheeks="blush") + + menu: + "\"What? Of course not, [hermione_name]!\"": + her ".............." ("base", "base", "base", "R",cheeks="blush") + her "Hopefully you're right, [genie_name]..." ("base", "narrow", "worried", "down") + her "I did try to be as discreet as possible..." + her "I don't think..." ("soft", "narrow", "annoyed", "up") + her "Well, I hope I was barely making any sounds..." ("grin", "base", "base", "R") + her "[genie_name], can I get paid now, please?" ("base", "narrow", "base", "mid_soft",xpos="right",ypos="base",trans=fade) + her "......" + + "\"Of course they did!\"": + gen "Do you honestly believe that no one noticed you touching yourself?" ("base", xpos="far_left", ypos="head") + her "I was afraid that you would say that, [genie_name]..." ("mad", "happyCl", "worried", "mid",tears="soft_blink") + gen "Aren't you surrounded by people during class?" ("base", xpos="far_left", ypos="head") + her "........" ("mad", "happyCl", "worried", "mid",tears="soft_blink") + her "[genie_name], can I get paid now, please?" ("angry", "base", "base", "mid",tears="soft",xpos="right",ypos="base",trans=fade) + + gen "Certainly." ("base", xpos="far_left", ypos="head") + + elif random_number == 3: + # Nothing happened + gen "[hermione_name], did you complete your task?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]. I did." ("open", "closed", "base", "mid",xpos="base",ypos="base") + gen "Great. Tell me more." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") + her "Well, there's not much to tell..." ("open", "base", "base", "mid") + her "I attended classes..." + her "Tried to take notes." + her "All in all it was a fairly regular day..." + her "Well as regular as it could have been with a plug up my butt." ("annoyed", "narrow", "angry", "R") + gen "And Nobody noticed?" ("base", xpos="far_left", ypos="head") + her "I don't think so, [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + gen "Well I suppose something interesting can't happen everyday." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "base", "base", "R",xpos="right",ypos="base",trans=fade) + + + elif her_whoring >= 21 and buttplug_size == 1: + if random_number == 1: + # Pleasured herself in class + gen "[hermione_name], did you complete your task?" ("base", xpos="far_left", ypos="head") + her "Yes I did, [genie_name]." ("base", "base", "base", "mid",xpos="right",ypos="base") + gen "Well? How was your day?" ("base", xpos="far_left", ypos="head") + her "great, [genie_name]..." ("base", "narrow", "base", "up") + gen "Go on..." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") + her "Well I've worked out how to deal with this thing being inside me all day..." ("soft", "happy", "base", "R",xpos="base",ypos="base") + gen "Really? Do tell..." ("base", xpos="far_left", ypos="head") + her "At first, I was going about it the wrong way..." ("open", "base", "base", "R") + her "I just tried to ignore it." ("open", "closed", "base", "mid") + her "And to pay attention in class..." + her "But that didn't work at all..." ("upset", "wink", "base", "mid") + her "I was just too--{w=0.4} Distracted..." ("base", "narrow", "worried", "down") + her "So I thought to myself that I've just got to focus on it..." ("base", "narrow", "base", "up") + her "Block out everything else..." ("base", "narrow", "worried", "down") + her "... embrace it..." ("grin", "narrow", "base", "dead") + gen "And how did you do that?" ("base", xpos="far_left", ypos="head") + her "Well, at first I tried rocking my hips, which worked for a bit..." ("base", "narrow", "base", "mid_soft") + her "But after some time of doing so it wasn't really enough..." ("base", "narrow", "base", "mid_soft") + her "That's when I finally tried sitting right on the edge of my chair while rocking my hips..." ("base", "squint", "base", "mid") + her "{heart}{heart}{heart}" ("soft", "narrow", "annoyed", "up") + gen "So you worked out how to pleasure yourself in class." ("base", xpos="far_left", ypos="head") + her "I did, [genie_name]..." ("base", "narrow", "worried", "down") + her "Although I worry that if I do it too often it will really start to affect my grades..." + gen "Well I'm sure that missing a class or two isn't enough for you not to be able to catch up." ("base", xpos="far_left", ypos="head") + her "One or two?" ("angry", "wink", "base", "mid") + gen "Yes, I--" ("base", xpos="far_left", ypos="head") + gen "Hold on, you're saying that you spent all of today's classes pleasuring yourself?" ("base", xpos="far_left", ypos="head") + her ".........." ("soft", "narrow", "annoyed", "up") + her "" (xpos="right",ypos="base",trans=fade) + gen "Nice work, [hermione_name]." ("base", xpos="far_left", ypos="head") + + elif random_number == 2: + # Colin Creevey took an upskirt photo + gen "[hermione_name], did you complete your task?" ("base", xpos="far_left", ypos="head") + her "Yes I did, [genie_name]." ("base", "base", "base", "mid", xpos="right", ypos="base") + her "Although...{w=0.4} *Ehm*..." ("open", "base", "worried", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "Well, I may have gotten a bit more attention than I had hoped for..." ("disgust", "narrow", "base", "down") + her "..............." ("clench", "narrow", "base", "down") + gen "Right, so tell me what happened." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") + her "I might have had a few photos taken..." ("open", "narrow", "worried", "down") + gen "Photos?" ("base", xpos="far_left", ypos="head") + her "Well, I was in the library minding my own business..." ("annoyed", "closed", "base", "mid") + her "I was browsing the books and saw that they'd finally acquired a copy of Zygmunt Budge's book of potions." + her "And I sort of forgot I had the plug in and everything." + her "As it was on the bottom shelf, I quickly kneeled down to grab it..." ("annoyed", "base", "base", "mid") + her "When all of a sudden I heard the flash of a camera!" ("annoyed", "narrow", "angry", "R") + her "I turned around and there was Colin Creevey..." + her "With the biggest grin on his face!" + gen "You let your photo be taken?!" ("base", xpos="far_left", ypos="head") + her "I didn't let it happen! He did it without my consent!" ("scream", "base", "angry", "mid", emote="angry") + her "Luckily I managed to grab him and made him promise not to show anyone the photo..." ("open", "narrow", "worried", "down") + her "... In exchange I did have to let him take a few more though..." + gen "And you believe that he'd keep that promise?" ("base", xpos="far_left", ypos="head") + her "Of course [genie_name], he's a Gryffindor." ("annoyed", "closed", "base", "mid") + her "Although the thought did cross my mind...." ("open", "narrow", "worried", "down") + her "Any time someone saw me they'd think about whether or not I had a plug inside me..." ("base", "narrow", "worried", "down") + her "In any case, I'm certain that he won't release any of those photos..." ("base", "squint", "base", "mid") + gen "If you say so..." ("base", xpos="far_left", ypos="head") + her "He's not an idiot... He'd know that if he were to spread those photos around it would tarnish not just my reputation but Gryffindor as a whole." ("clench", "narrow", "base", "down") + her "" ("base", "narrow", "base", "mid_soft") + gen "Very well... In that case, it sounds like a job well done [hermione_name]." ("base", xpos="far_left", ypos="head") + + elif random_number == 3: + # Flashed students on her way to class + call play_music("chipper_doodle") + gen "[hermione_name], did you complete your task?" ("base", xpos="far_left", ypos="head") + her "Yes, I did [genie_name]..." ("base", "squint", "base", "mid", xpos="right", ypos="base") + gen "Did anyone notice?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Maybe..." + gen "Go on." ("base", xpos="far_left", ypos="head") + her "*Ahem*... I may have gotten a little too confident..." + gen "What happened, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Well, as I was walking to divination class I ended up in front of a group of students..." ("base", "squint", "base", "mid") + her "And seeing as how they were behind me on the stairs they may have been able to... see it." ("base", "narrow", "base", "mid_soft") + gen "You're not expecting me to grant you extra points for showing them, are you?" ("base", xpos="far_left", ypos="head") + her "Of course not, [genie_name]." ("base", "base", "base", "R", cheeks="blush") + gen "Then why do it?" ("base", xpos="far_left", ypos="head") + her "Well, I thought I could get away with it..." ("open", "happy", "base", "mid", cheeks="blush") + her "Although I couldn't help but turn to see look on their faces if noticed it..." ("grin", "narrow", "base", "dead") + her "And... well... Judging by their eyes, they probably did see it..." ("soft", "narrow", "annoyed", "up") + gen "So... What you're saying is that you wanted to make sure that they saw it?" ("base", xpos="far_left", ypos="head") + gen "Sounds to me like you're enjoying students seeing you like this..." ("base", xpos="far_left", ypos="head") + her "If that's what you want to believe..." ("open", "base", "base", "R") + gen "Well done, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "" ("base", "narrow", "worried", "down") + + elif her_whoring <= 21 and buttplug_size == 2: + if random_number == 1: + # Stood in front during potions class + gen "[hermione_name], how's your day been?" ("base", xpos="far_left", ypos="head") + call play_music("chipper_doodle") + her "Awful... Simply awful..." ("annoyed", "squint", "angry", "mid",xpos="right",ypos="base") + gen "What happened?" ("base", xpos="far_left", ypos="head") + her "Professor Snape happened, [genie_name]!" ("annoyed", "narrow", "angry", "R") + her "I've never been so embarrassed in my life!" ("annoyed", "narrow", "annoyed", "mid") + gen "Severus? What did he do this time?" ("base", xpos="far_left", ypos="head") + her "Well, apparently I dared to suggest there was a better way to properly crush a Sopophorous bean..." ("annoyed", "narrow", "angry", "R") + her "So of course he made me stand out the front and show the class \"how it's done\"..." + gen "What's wrong with that?" ("base", xpos="far_left", ypos="head") + her "He obviously knew about my situation because he made me do it facing away from the class..." ("annoyed", "narrow", "annoyed", "mid") + gen "You sure? How would he know?" ("base", xpos="far_left", ypos="head") + her "I don't know, you tell me! Why else would he made me do that?" ("disgust", "narrow", "base", "down") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Do you think anyone noticed?" ("base", xpos="far_left", ypos="head") + her "I--{w=0.2} I don't know... I was trying my best to not let it slip out as my legs were shaking, and to crush the bean as fast as possible..." ("clench", "narrow", "base", "down") + gen "At least you got to show how a lady handles a bean." ("base", xpos="far_left", ypos="head") + her "*Hmph*..." ("annoyed", "narrow", "base", "down") + gen "Well it sounds like you earned your points." ("base", xpos="far_left", ypos="head") + her "......." ("annoyed", "narrow", "worried", "down") + + elif random_number == 2: + # Flashed some Hufflepuffs + gen "[hermione_name], how did it go?" ("base", xpos="far_left", ypos="head") + her "It went well, [genie_name]..." ("open", "base", "base", "mid",xpos="right",ypos="base") + call play_music("playful_tension") + her "A group of students from Hufflepuff even complimented me on it..." + her "... They said that it looked cute..." ("grin", "base", "base", "R") + gen "Did anything else happen?" ("base", xpos="far_left", ypos="head") + her "Well, seeing as how they were so nice..." ("base", "narrow", "worried", "down") + her "I might have flicked my skirt up for them..." ("soft", "happy", "base", "R") + gen "You showed it to them?" ("base", xpos="far_left", ypos="head") + her "Well, they were so kind and all..." ("open", "base", "base", "R") + her "And they could already see most of it..." ("base", "narrow", "worried", "down") + gen "Did they say anything else about it?" ("base", xpos="far_left", ypos="head") + her "No... But the looks on their faces said a lot..." ("base", "narrow", "base", "mid_soft") + gen "Well, it sounds like a job well done..." ("base", xpos="far_left", ypos="head") + + elif random_number == 3: + # Cat swatting it + label buttplug_magic_show: + $ buttplug_magic_known = True + gen "[hermione_name], how did it go?" ("base", xpos="far_left", ypos="head") + call play_music("chipper_doodle") + her "What on earth did you do to this thing?!" ("scream", "happyCl", "worried", "mid",xpos="right",ypos="base") + gen "What happened?" ("base", xpos="far_left", ypos="head") + her "Why did you not tell me this \'thing\' was cursed!" ("normal", "happyCl", "worried", "mid") + gen "Cursed?" ("base", xpos="far_left", ypos="head") + her "It vibrates!" ("annoyed", "narrow", "angry", "R") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "when something else touches it..." ("annoyed", "narrow", "angry", "R") + gen "Wouldn't your skirt set it off then?" ("base", xpos="far_left", ypos="head") + her "I think it has to be alive..." ("annoyed", "base", "worried", "R") + her "All I know is that when my cat Crookshanks swatted at it, it went off!" ("scream", "closed", "angry", "mid") + her "It was ridiculous! I was barely able to stand..." ("open", "happyCl", "worried", "mid") + her "The vibrations were so intense that my knees gave out and I collapsed onto my bed!" ("angry", "narrow", "base", "down") + gen "(Is she making this up?)" ("base", xpos="far_left", ypos="head") + gen "Well... I'll be sure to inspect it thoroughly and remove this curse..." ("base", xpos="far_left", ypos="head") + her "Oh... *Ehm*... No, it's fine really [genie_name], you can leave it the way it is." ("clench", "narrow", "base", "down") + gen "Alright then... good work [hermione_name]." ("base", xpos="far_left", ypos="head") + + elif her_whoring <= 23 and buttplug_size == 2: + if random_number == 1: + # Luna played with it in the library + if not buttplug_magic_known: + jump buttplug_magic_show + call play_music("chipper_doodle") + gen "[hermione_name], did you have fun?" ("base", xpos="far_left", ypos="head") + her "I suppose you could say that." ("base", "narrow", "worried", "down",xpos="right",ypos="base") + gen "Anything interesting happen?" ("base", xpos="far_left", ypos="head") + her "Yes... Well I might've... *Ehm*..." ("base", "narrow", "worried", "down") + her "Had someone..." ("base", "happyCl", "worried", "mid") + her "touch it." ("base", "narrow", "base", "mid_soft") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + her "It was Luna Lovegood." ("grin", "base", "base", "R") + her "We ended up sitting next to each other in class." ("soft", "base", "base", "R") + her "And we were talking about school, clothes..." + gen "Yes, yes, spit it out..." ("base", xpos="far_left", ypos="head") + her "Well, she said that she thought my tail was cute..." ("grin", "base", "base", "R") + gen "Go on..." ("base", xpos="far_left", ypos="head") + her "then she asked so politely if she could touch it..." ("base", "narrow", "worried", "down") + her "I could hardly say no..." ("open", "base", "base", "R") + her "so I... Let her spend the rest of the lesson... playing with it..." ("soft", "happy", "base", "R") + gen "I see..." ("base", xpos="far_left", ypos="head") + her "I don't think she realised and how it made me feel..." ("soft", "narrow", "annoyed", "up") + her "It felt so good that it was hard to keep it down." ("soft", "narrow", "annoyed", "up") + gen "Keep what down?" ("base", xpos="far_left", ypos="head") + her "My voice..." + gen "Right..." ("base", xpos="far_left", ypos="head") + her "I don't think I've ever had a better lesson..." ("grin", "narrow", "base", "dead") + gen "Well it sounds like you've earned your points and then some." ("base", xpos="far_left", ypos="head") + + elif random_number == 2: + # Friend played with it + if not buttplug_magic_known: + jump buttplug_magic_show + gen "[hermione_name], did you complete your task?" ("base", xpos="far_left", ypos="head") + her "I did, [genie_name]." ("open", "closed", "base", "mid",xpos="right",ypos="base") + her "Only... *Ehm*..." ("grin", "base", "base", "R") + gen "What is it this time [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Well... One of my friends..." ("base", "base", "base", "mid") + her "Well, I told her about the tail..." ("base", "base", "base", "R",cheeks="blush") + her "And how it works..." + gen "Just say it, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Well, we decided to skip Herbology class together..." ("open", "base", "base", "R") + call play_music("playful_tension") + her "And then she sort of grabbed it..." ("grin", "narrow", "annoyed", "up") + her "And she just played with it aggressively..." ("grin", "narrow", "base", "dead") + her "I was a mess afterwards..." + gen "And did you return the favour?" ("grin", xpos="far_left", ypos="head") + + if hg_pr_kiss.counter >= 1: + her "Err... maybe..." ("open", "happy", "base", "mid",cheeks="blush") + gen "What did you do?" ("base", xpos="far_left", ypos="head") + her "Well I don't want to say too much [genie_name]." ("base", "base", "base", "R",cheeks="blush") + her "But after she saw what it was doing to me..." + her "She insisted that I let her have a go..." + her "And that's all I'll say..." ("base", "narrow", "worried", "down") + gen "*Hmm*... I suppose you've earned your points [hermione_name], even if you are secretive about it..." ("base", xpos="far_left", ypos="head") + else: + her "... No." ("open", "narrow", "worried", "down") + gen "Why not?" ("base", xpos="far_left", ypos="head") + her "Well I don't mind letting her touch the tail [genie_name]." ("annoyed", "base", "base", "mid") + her "But anything else..." + gen "Very good [hermione_name]..." ("base", xpos="far_left", ypos="head") + + elif random_number == 3: + # Called a slut by Slytherin girls + gen "[hermione_name], did you complete your task?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]. I did." ("annoyed", "narrow", "angry", "R",xpos="right",ypos="base") + gen "Great. Tell me more." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") + her "Well, there's not much to tell..." ("open", "narrow", "worried", "down") + her "I attended classes..." + her "Studied for the upcoming potions test..." + her "It was a normal day except for coming across a group of nasty Slytherin tramps..." ("annoyed", "narrow", "angry", "R") + her "I was minding my business on the way to class when they called me a \"butt slut\"." ("angry", "narrow", "base", "down") + gen "I see... So you gave them a piece of your mind?" ("base", xpos="far_left", ypos="head") + her "And sink to their level..." ("annoyed", "narrow", "angry", "R") + gen "Well, I suppose it's for the best." ("base", xpos="far_left", ypos="head") + + + elif her_whoring >= 24 and buttplug_size == 2: + if random_number == 1: + # Groped by students + if not buttplug_magic_known: + jump buttplug_magic_show + + gen "[hermione_name], how was your day?" ("base", xpos="far_left", ypos="head") + her "Awful... I was attacked by a group of rabid students, [genie_name]." ("scream", "closed", "angry", "mid",xpos="right",ypos="base") + gen "Attacked? By How many?" ("base", xpos="far_left", ypos="head") + her "Six!" ("annoyed", "base", "angry", "mid") + call play_music("playful_tension") + her "Although maybe the \"attacked\" is a slight exaggeration... They cornered me at least." ("open", "base", "worried", "R") + gen "So, what happened?" ("base", xpos="far_left", ypos="head") + her "Well, I was sitting in the library, minding my own business..." ("annoyed", "narrow", "angry", "R") + her "I must've not been careful enough to hide the tail as al of a sudden a group of students came out of nowhere." ("angry", "happyCl", "worried", "mid") + her "They started asking me all these questions..." ("angry", "happyCl", "worried", "mid") + her "\"Is it fluffy\"?" ("annoyed", "narrow", "angry", "R") + her "\"Why are you wearing it\"?" ("angry", "narrow", "base", "down") + her "\"Does it feel nice\"?" ("base", "narrow", "worried", "down") + her "\"Can we touch it\"?" ("base", "narrow", "worried", "down") + her "\"Can you make it wag\"..." ("angry", "wink", "base", "mid") + gen "Sounds like reasonable enough things to ask..." ("base", xpos="far_left", ypos="head") + gen "So, what did you tell them?" ("base", xpos="far_left", ypos="head") + her "I didn't tell them anything!" ("upset", "closed", "base", "mid") + gen "You didn't--" ("base", xpos="far_left", ypos="head") + her "We were in the library for crying out loud..." ("upset", "closed", "base", "mid") + her "Instead I made them promise to keep quiet and be quiet about it..." ("upset", "closed", "base", "mid") + her "And in exchange I let them touch it for a bit..." ("open", "narrow", "worried", "down") + her "{heart}{heart}{heart}" ("soft", "narrow", "annoyed", "up") + gen "So... instead of answering some innocent questions... You let them touch your butt plug..." ("base", xpos="far_left", ypos="head") + her "It sounds sinister when you put it like that." ("annoyed", "narrow", "angry", "R") + her "All I did was take them to a secluded part of the library and let them touch my tail..." + gen "Well that's alright then..." ("base", xpos="far_left", ypos="head") + her "......." ("base", "narrow", "worried", "down") + gen "So, did you enjoy it?" ("base", xpos="far_left", ypos="head") + her ".........." ("angry", "base", "base", "mid") + her "Truthfully [genie_name].... It was one of the most pleasurable experiences of my life..." ("grin", "narrow", "base", "dead") + her "All their hands touching it..." ("soft", "narrow", "annoyed", "up") + her "Taking turns..." ("grin", "narrow", "annoyed", "up") + her "All the while it was vibrating away..." ("base", "narrow", "worried", "down") + her "I nearly passed out." ("silly", "narrow", "base", "dead") + her "Especially when one of them pulled at it a bit..." ("silly", "narrow", "annoyed", "up") + her "..." ("grin", "narrow", "annoyed", "up") + gen "Nice work, [hermione_name]." ("base", xpos="far_left", ypos="head") + + elif random_number == 2: + # Glory hole with Female Student + if not buttplug_magic_known: + jump buttplug_magic_show + gen "[hermione_name], did you complete your task?" ("base", xpos="far_left", ypos="head") + her "Yes I did, [genie_name]..." ("base", "base", "base", "mid",xpos="right",ypos="base") + her "Did you know there are holes between the stalls in the girls' bathroom?" ("soft", "base", "base", "mid") + gen "I did not, but What does that have to do with your butt plug?" ("base", xpos="far_left", ypos="head") + her "Well, I noticed that the hole is the same height as the tail..." ("grin", "base", "base", "R") + her "..............." ("grin", "happyCl", "worried", "mid") + gen "Go on, [hermione_name]." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") + her "I might have put it through..." ("base", "narrow", "worried", "down") + gen "What?" ("base", xpos="far_left", ypos="head") + her "Well, I was in the stall finishing up..." ("base", "base", "base", "R") + her "When a girl entered the other stall." + her "I wasn't sure but I thought that it may have been a Slytherin..." ("upset", "wink", "base", "mid") + her "So I decided to press my cheeks to the wall and stick my tail through to freak her out!" ("smile", "base", "base", "R") + gen "Freak her out?" ("base", xpos="far_left", ypos="head") + her "Yeah!" ("grin", "base", "base", "R") + her "At first she didn't do anything, and I thought she must've been stunned by the sight, but after I gave it a little wiggle, instead of running off she came up to it..." ("grin", "base", "base", "R") + her "I was worried she was gonna pull it out but she just stood there and eventually she started to play with it..." ("open", "base", "base", "R") + her "I didn't really know what to feel in case it was actually a Slytherin doing it." ("open", "base", "base", "R") + her "She was stroking it... flicking it... I even think she may have licked it..." ("soft", "narrow", "annoyed", "up") + her "... Imagine that... a Slytherin, licking something that was inside my..." + her "It was incredible... I could barely stand while it happened..." + gen "Sounds like you had a good time." ("base", xpos="far_left", ypos="head") + gen "Did you find out if it was a Slytherin or not?" ("base", xpos="far_left", ypos="head") + her "Unfortunately not... [genie_name]." ("open", "base", "worried", "mid") + her "Although truth be told, I'm not sure if I want to know..." ("open", "base", "worried", "mid") + #Maybe this section could be a check in the future if we feel it's appropriate + #her "It was at lunch, in the great hall." ("open", "closed", "base", "mid") + #her "I was walking past the Slytherin table on my way to sit down..." ("open", "closed", "base", "mid") + #her "when I saw that little... vixen, Astoria Greengrass." ("base", "squint", "base", "mid") + #her "she couldn't take her eyes off of it..." + #her "imagine that... Astoria Greengrass... pure-blood, licking my..." ("grin", "narrow", "annoyed", "up") + #her "{heart}........{heart}" ("soft", "narrow", "annoyed", "up") + #gen "It sounds like you've earned your points today then [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "*Hmm*... That's too bad, perhaps you'll see them at that hole again some time." ("base", xpos="far_left", ypos="head") + gen "Either way, you've surely earned your points." ("base", xpos="far_left", ypos="head") + her "...{size=-7}(I would have done this for free...){/size}" ("base", "narrow", "worried", "down") + + elif random_number == 3: + call play_music("chipper_doodle") + gen "[hermione_name], did you complete your task?" ("base", xpos="far_left", ypos="head") + her "Yes, I did [genie_name]..." ("base", "squint", "base", "mid",xpos="right",ypos="base") + gen "Anything interesting happen?" ("base", xpos="far_left", ypos="head") + her "Yes!" + her "I was walking down the hall and there were some students behind me..." ("base", "narrow", "base", "mid_soft") + her "And swear I could hear them whispering to each other..." + her "So I thought I may as well give them something to talk about..." ("base", "squint", "base", "mid") + her "So I stopped and pretended to tie my shoelaces, keeping my knees straight and bending over as far as I could..." ("base", "narrow", "base", "mid_soft") + gen "You exposed yourself in the middle of a corridor, just like that?" ("base", xpos="far_left", ypos="head") + her "Expose? I'm not sure I know what you mean...{w=0.4} I was tying my shoelaces........" ("base", "base", "base", "R",cheeks="blush") + gen "Very good, [hermione_name]!" ("base", xpos="far_left", ypos="head") + + elif buttplug_size == 3: + if random_number == 1: + # Student tries to pull it out + gen "[hermione_name], how was your day?" ("base", xpos="far_left", ypos="head") + her "Awful, the worst thing possible happened!" ("scream", "closed", "angry", "mid",xpos="right",ypos="base") + gen "The worst thing? Worse than someone catching you with a tail up your butt?" ("base", xpos="far_left", ypos="head") + her "Yes, believe it or not." ("annoyed", "base", "angry", "mid") + gen "Now you've got me intrigued." ("base", xpos="far_left", ypos="head") + gen "What happened?" ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") + her "Well... I was walking down to Hogsmeade as we had the afternoon off..." ("open", "base", "worried", "R") + her "And I thought I was alone but one of the Slytherin students suddenly rushed up behind me..." ("annoyed", "narrow", "angry", "R") + her "And I didn't even have enough time to react before he..." ("angry", "happyCl", "worried", "mid") + her "He..." ("annoyed", "narrow", "angry", "R") + her "Before he shouted \"Let it rip!\" and tugged on my tail!" ("angry", "narrow", "base", "down") + gen "He did what?" ("base", xpos="far_left", ypos="head") + her "I know! How dare he!" ("clench", "narrow", "worried", "down") + gen "Ten points to Slytherin!" ("base", xpos="far_left", ypos="head") + $ slytherin += 10 + her "What?!" ("scream", "wide", "angry", "mid") + her "Why are you giving points to Slytherin?!" ("angry", "wide", "angry", "mid") + gen "Such a one-liner ought to be rewarded!" ("base", xpos="far_left", ypos="head") + her "But [genie_name]! I'm doing this so that Gryffindor can get ahead of Slytherin!" ("upset", "base", "angry", "mid") + gen "Oh, right..." ("base", xpos="far_left", ypos="head") + gen "Ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 10 + her "*Hmm*... But now Ravenclaw and Hufflepuff are both behind..." ("open", "narrow", "worried", "down") + gen "Enough about the points. Tell me more about your behind." ("base", xpos="far_left", ypos="head") + her "My-- Oh right..." ("annoyed", "narrow", "angry", "R") + gen "What happened next?" ("base", xpos="far_left", ypos="head") + her "Well... I would normally not say this but I'm glad the plug is as big as it is." ("open", "narrow", "worried", "down") + gen "Didn't budge one bit I assume." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "down") + her "Can I have my points now?" ("open", "narrow", "worried", "down") + gen "Certainly." ("base", xpos="far_left", ypos="head") + gen "Nice work, [hermione_name]." ("base", xpos="far_left", ypos="head") + + elif random_number == 2: + # Hermione is a Dragon + gen "[hermione_name], did you complete your task?" ("base", xpos="far_left", ypos="head") + her "Yes I did, [genie_name]..." ("base", "base", "base", "mid", xpos="right", ypos="base") + her "I found the perfect opportunity to show it off today." ("soft", "base", "base", "mid") + gen "Show it off? You actually showed it off to someone this time?" ("base", xpos="far_left", ypos="head") + her "I did..." ("grin", "base", "base", "R") + her "..............." ("grin", "happyCl", "worried", "mid") + gen "go on, [hermione_name]." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") + her "Well, we're currently studying Dragons in our care of magical creatures lessons." ("base", "narrow", "base", "down") + gen "Right?" ("base", xpos="far_left", ypos="head") + her "Well I thought it was a great opportunity to give a demonstration how female Dragons attracts their mates.." ("base", "base", "base", "R") + her "You're kidding..." + her "Nope, I was wearing a dragons head and everything!" ("grin", "wink", "base", "mid") + her "They didn't suspect a thing about where the tail was attached!" ("smile", "base", "base", "R") + gen "Did they touch it?" ("base", xpos="far_left", ypos="head") + her "They did..." ("base", "base", "base", "R") + her "And... Well, since I was roleplaying a female dragon in heat..." ("grin", "base", "base", "R") + her "You could probably guess the rest..." ("grin", "base", "base", "R") + gen "I'll be expecting a dragon egg on my desk in the next few months..." ("grin", xpos="far_left", ypos="head") + her "What?! No, I only came, that's all that happened!" ("clench", "wide", "base", "R") + gen "I know, I just wanted to hear you say it." ("grin", xpos="far_left", ypos="head") + gen "I suppose you better get some points, although I assume you've already earned a couple during that lesson." ("base", xpos="far_left", ypos="head") + her "A couple..." ("grin", "base", "base", "R") + gen "You sure have good imagination to come up with and do something this... [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]..." ("grin", "base", "base", "R") + gen "Imagine dragons..." ("base", xpos="far_left", ypos="head") + her "*Hmm*?" + gen "Nevermind... I can't bring myself to do it." ("base", xpos="far_left", ypos="head") + + elif random_number == 3: + # Rides Hippogriff with it inside + call play_music("chipper_doodle") + gen "[hermione_name], did you complete your task?" ("base", xpos="far_left", ypos="head") + her "Yes, I did [genie_name]..." ("base", "squint", "base", "mid",xpos="right",ypos="base") + gen "Anything interesting happen?" ("base", xpos="far_left", ypos="head") + her "Yes... As you probably know, you can't really sit very well with this thing inside." + gen "Can't say that I have first hand experience..." ("base", xpos="far_left", ypos="head") + her "Right..." + gen "So, what happened? I thought you'd expect you'd need to sit down at some point." ("base", xpos="far_left", ypos="head") + her "I did, although..." + her "I completely forgot that we were going to ride the Hippogriffs today..." ("base", "narrow", "base", "mid_soft") + gen "When you say ride--" ("base", xpos="far_left", ypos="head") + her "As in on their backs..." + gen "Oh, Good... Can never be too careful these days..." ("base", xpos="far_left", ypos="head") + her "It was quite an experience to say the least..." + gen "Very good, [hermione_name]!" ("base", xpos="far_left", ypos="head") + + $ gryffindor += current_payout + gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." + + call her_walk(action="leave") + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/events/items/collars.rpy b/game/scripts/characters/hermione/events/items/collars.rpy new file mode 100644 index 00000000..d8e12c67 --- /dev/null +++ b/game/scripts/characters/hermione/events/items/collars.rpy @@ -0,0 +1,1298 @@ + + +### Hermione Collar Event ### + +default her_magic_collar_worn = False + +label collar_scene: + + # Setup + $ her_outfit_last.save() #Saves current clothing + + if hermione.is_worn("robe"): + gen "Before what I show you what we're doing today... Why don't you take those robes off and make yourself comfortable." ("base", xpos="far_left", ypos="head") + her "Alright..." ("soft", "squint", "base", "mid") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe") + with d3 + gen "Now then..." ("base", xpos="far_left", ypos="head") + + if hermione.is_worn("top"): + gen "I've got something for you to put on..." ("base", xpos="far_left", ypos="head") + her "Right..." ("open", "happy", "base", "mid") + gen "But first, I'll need you to remove your top or it might get caught in your clothing." ("base", xpos="far_left", ypos="head") + + if her_tier == 1: + if hg_pf_admire_panties.is_event_complete(1, 1) or hg_pf_admire_breasts.is_event_complete(1, 1): + her "You want me to remove my top?" ("soft", "happy", "worried", "R") + gen "Yes please..." ("base", xpos="far_left", ypos="head") + her "I'm getting paid for this right?" ("open", "narrow", "base", "down") + gen "Of course." ("base", xpos="far_left", ypos="head") + her "Fine..." ("open", "closed", "base", "mid") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top") + pause .5 + + her "Alright then... Now what?" ("soft", "narrow", "base", "R") + else: #FAIL + her "My top?" ("angry", "wide", "base", "mid") + gen "Yes, your top... Is that going to be a problem?" ("base", xpos="far_left", ypos="head") + her "W-- Why do you need me to remove it?" ("clench", "narrow", "base", "down", cheeks="blush") + gen "It's just phase one of today's favour..." ("base", xpos="far_left", ypos="head") + her "Phase one... What's phase two?" ("angry", "squint", "base", "mid") + gen "You'll see once you've taken that top off." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "mid") + her "No, I'm sorry [genie_name]... But I don't think I will." ("annoyed", "narrow", "base", "R") + gen "(Damn... Maybe I should get her more used to taking her top off before doing this...)" ("base", xpos="far_left", ypos="head") + + jump hermione_requests + + elif her_tier == 2: + her "*Hmm*... Alright... As long as you're paying me..." ("annoyed", "happy", "base", "R") + gen "Of course..." ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top") + pause .5 + + her "There...{w=0.4} Happy?" ("open", "closed", "base", "mid") + + gen "Very." ("base", xpos="far_left", ypos="head") + gen "Now..." ("base", xpos="far_left", ypos="head") + + elif her_tier == 3: + her "My top?" ("soft", "squint", "base", "mid") + gen "Yes... It is vitally important for this to succeed." ("base", xpos="far_left", ypos="head") + her "What are we doing?" ("angry", "squint", "base", "mid") + gen "You'll see..." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("annoyed", "base", "base", "R") + her "Alright... As long as you're paying me..." ("open", "closed", "base", "mid") + gen "Of course..." ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top") + pause .5 + + gen "Great... So..." ("base", xpos="far_left", ypos="head") + + else: + her "Alright..." ("base", "squint", "base", "mid") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top") + pause .5 + + gen "Excellent... Now..." ("base", xpos="far_left", ypos="head") + + # Remove (one) collar from the inventory + $ collar_ITEM.owned -= 1 + + if not her_magic_collar_worn: + $ her_magic_collar_worn = True + + gen "I've got this collar that I'd like you to wear." ("base", xpos="far_left", ypos="head") + her "A collar?" ("open", "happy", "base", "mid") + her "What kind of collar is it?" ("angry", "narrow", "base", "mid") + gen "What do you mean? It's just a normal collar!" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "mid") + gen "Alright... It's a magic collar." ("base", xpos="far_left", ypos="head") + her "Of course it is..." ("open", "narrow", "base", "R") + her "So, what does it do then?" ("open", "closed", "base", "mid") + gen "It will permanently transform itself to show you your true self!" ("base", xpos="far_left", ypos="head") + + if her_whoring < 4: + her "My true self?" ("soft", "squint", "base", "mid") + gen "Yep..." ("base", xpos="far_left", ypos="head") + her "So, like fortune telling?" ("open", "narrow", "base", "mid") + gen "More like present telling." ("base", xpos="far_left", ypos="head") + her "Sounds silly... But alright then." ("soft", "narrow", "base", "R") + her "How much am I being paid for this?" ("open", "narrow", "base", "mid") + gen "Let's say thirty points..." ("base", xpos="far_left", ypos="head") + her "Thirty points to put on a collar?" ("open", "base", "base", "stare") + gen "Yep..." ("base", xpos="far_left", ypos="head") + + her "Okay then... I didn't think earning points were going to be this easy but go ahead." ("grin", "closed", "base", "mid") + her "Put it on me and tell me what it says!" ("smile", "base", "base", "mid") + + $ current_payout = 30 + + elif her_whoring < 10: + her "My true self?" ("soft", "base", "worried", "R") + gen "Exactly..." ("base", xpos="far_left", ypos="head") + her "I see..." ("open", "narrow", "worried", "R") + gen "You're not worried what it might say, are you?" ("base", xpos="far_left", ypos="head") + her "Of course not!" ("soft", "closed", "annoyed", "mid") + her "Although..." ("disgust", "happy", "base", "R") + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "I want Thirty points for this..." ("open", "closed", "base", "mid") + gen "*Hmm*... Just to put on a magic collar?" ("base", xpos="far_left", ypos="head") + gen "And here I thought you weren't worried about it..." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "R") + gen "Very well, [hermione_name]... Thirty points it is." ("base", xpos="far_left", ypos="head") + + $ current_payout = 30 + + elif her_whoring < 13: #stripped + her "As if... You've probably just made it say \"pervert\" or something like that to mess with me..." ("clench", "narrow", "base", "R") + gen "Pervert? As if I'd ever do something like that." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "annoyed", "mid") + gen "Okay, maybe I would..." ("base", xpos="far_left", ypos="head") + gen "But I can assure you, I've done nothing of the sort." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("annoyed", "narrow", "base", "R") + her "In that case... I want twenty points." ("open", "closed", "annoyed", "mid") + gen "Twenty points it is..." ("base", xpos="far_left", ypos="head") + + $ current_payout = 20 + + elif her_whoring < 19: #Handjob + her "What's that supposed to mean?" ("angry", "happy", "base", "mid", cheeks="blush") + gen "You know..." ("base", xpos="far_left", ypos="head") + her "No... I don't." ("angry", "narrow", "base", "mid", cheeks="blush") + her "Please enlighten me." ("soft", "narrow", "annoyed", "mid", cheeks="blush") + gen "Why don't I just put in on you, and we can find out for ourselves?" ("base", xpos="far_left", ypos="head") + her "I--{w=0.4} I don't want to!" ("angry", "closed", "worried", "mid", cheeks="blush") + gen "Worried it might say something you don't like?" ("base", xpos="far_left", ypos="head") + her "Of course not!" ("soft", "squint", "worried", "R", cheeks="blush") + her "I'd just think I should get paid to put up with your shenanigans!" ("angry", "closed", "worried", "mid", cheeks="blush") + gen "That's fair... But since it's just shenanigans after all... Ten point should be enough, should it not?" ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Go on then, it's just a silly little collar." ("base", xpos="far_left", ypos="head") + her "Fine, ten points it is..." ("open", "closed", "worried", "mid", cheeks="blush") + + $ current_payout = 10 + + elif her_whoring < 22: #BJ + her "I'm sure we'll both know what it's going to say..." ("disgust", "narrow", "base", "R") + gen "Yeah?" ("base", xpos="far_left", ypos="head") + her "Come on, sir..." ("disgust", "narrow", "base", "mid", cheeks="blush") + her "I've taken my clothes off in this office..." ("angry", "closed", "base", "mid", cheeks="blush") + her "I'm sure you've made it say something to try and degrade me..." ("open", "narrow", "annoyed", "R", cheeks="blush") + gen "Of course not, this collar tells no lies!" ("base", xpos="far_left", ypos="head") + gen "I'm sure it'll call you a hero for the amount of points you've earned for your house." ("base", xpos="far_left", ypos="head") + gen "That's what you're doing this for after all, this collar will merely confirm it." ("base", xpos="far_left", ypos="head") + her "Well, if that's the case... I suppose since I can't tell anyone about all this it would at least be nice to know for sure..." ("open", "closed", "base", "mid") + + elif her_whoring < 25: #Sex (24=max) + her "My true self is it?" ("base", "narrow", "base", "R", cheeks="blush") + gen "Yep!" ("base", xpos="far_left", ypos="head") + gen "Now you finally won't have to take my word on how much of a slut you are." ("base", xpos="far_left", ypos="head") + her "Sir!" ("angry", "base", "base", "mid", cheeks="blush") + gen "Come on, it'll be fun!" ("base", xpos="far_left", ypos="head") + her "I-- I don't know about this..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "Don't be silly... Here, Let me just put this around your neck..." ("base", xpos="far_left", ypos="head") + + else: + gen "I've got my hands on another magic collar for you." ("base", xpos="far_left", ypos="head") + her "Another one?" ("open", "happy", "base", "mid") + gen "Yes, I have the feeling something might've changed, so I thought we could try another one." ("base", xpos="far_left", ypos="head") + + if her_whoring < 4: + her "*Hmm*... Well I doubt it..." ("normal", "base", "base", "R") + her "Will I get another thirty points?" ("soft", "base", "base", "mid") + gen "Of course." ("base", xpos="far_left", ypos="head") + her "Okay, then why not..." ("base", "closed", "base", "mid") + + $ current_payout = 30 + + elif her_whoring < 10: + her "I'm sure it'll just say the same thing as before..." ("open", "closed", "base", "mid", cheeks="blush") + gen "Well I wouldn't be so sure if I were you..." ("base", xpos="far_left", ypos="head") + her "*Ahem*... Although I wouldn't mind some points." ("open", "happy", "base", "R", cheeks="blush") + gen "Figured..." ("base", xpos="far_left", ypos="head") + gen "Alright then, Miss Granger..." ("base", xpos="far_left", ypos="head") + gen "How does thirty points sound to you?" ("base", xpos="far_left", ypos="head") + her "Acceptable..." ("open", "closed", "base", "mid") + + $ current_payout = 30 + + elif her_whoring < 13: #stripped + her "I want twenty points!" ("angry", "closed", "base", "mid", cheeks="blush") + gen "Worried it might show something different this time?" ("base", xpos="far_left", ypos="head") + her "No, I just think it's a waste of time if I went all the way here not to get anything for it." ("open", "happy", "base", "R", cheeks="blush") + gen "I suppose that's true..." ("base", xpos="far_left", ypos="head") + gen "Very well, twenty points it is." ("base", xpos="far_left", ypos="head") + + $ current_payout = 20 + + elif her_whoring < 19: #Handjob + her "Well of course you'd think that..." ("open", "narrow", "base", "R", cheeks="blush") + her "I want ten points for this..." ("soft", "happy", "base", "mid", cheeks="blush") + gen "Of course..." ("base", xpos="far_left", ypos="head") + her "Good... Then put it on me and lets get this over with..." ("disgust", "closed", "base", "mid", cheeks="blush") #bit worried + + $ current_payout = 10 + + elif her_whoring < 22: #BJ + her "Well... Seeing the things I've done in here I'm sure it can't be good..." ("disgust", "narrow", "base", "R") + gen "I'm sure it will recognize why you're doing all this." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("annoyed", "narrow", "base", "R") #worried + + elif her_whoring < 25: #Sex (24=max) + gen "I want to see exactly how much of a slut you are in writing." ("base", xpos="far_left", ypos="head") + her "Sir!" ("annoyed", "narrow", "worried", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + her "How could you say such a thing?" ("soft", "narrow", "worried", "mid") + gen "The collar don't lie... Just let me put it on you and we'll see it for ourselves." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "worried", "R") + + gen "Let's see now..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("stand", 210, "base") + with d3 + call gen_walk(path=[(230, 470), (380, 470), (420, 430)]) + + pause 0.5 + + $ renpy.play("sounds/collar_click.ogg") + $ hermione.equip(her_neckwear_basic_collar) + gen "There we go..." ("base", xpos="far_left", ypos="head") + + call gen_walk(path=[(420, 430), (380, 470), (230, 470), (200, 430)]) + call gen_chibi(flip=True) + with d3 + pause 0.5 + call gen_chibi("sit_behind_desk") + with d3 + + if her_whoring < 10: + her "Alright then... What does it say?" ("base", "base", "base", "mid") #confident + gen "Hold on a moment... Something's fading into view." ("base", xpos="far_left", ypos="head") + else: # > 10 + her "Is... Is it working?" ("open", "closed", "base", "down", cheeks="blush") #a bit worried + gen "Not yet..." ("base", xpos="far_left", ypos="head") + gen "Hold on... Something's fading into view." ("base", xpos="far_left", ypos="head") + her "What does it say?" ("open", "happy", "base", "mid") #a bit worried + + menu: + "-Tell her she's a slave-" if hg_anal.trigger: + jump slave_scene + "-Tell her she's a whore-" if hg_sex.trigger and hg_pr_sex.is_event_complete(6, 1): + jump whore_scene + "-Tell her she's a slut-" if hg_pf_blowjob.is_event_complete(5, 3) or her_tier > 5: + jump slut_scene + "-Tell her she's a flasher-" if hg_strip.trigger: + jump flasher_scene + "-Tell her she is good girl-": + jump good_girl_scene + +label slut_scene: + + $ renpy.play("sounds/flashbang.ogg") + $ hermione.equip(her_neckwear_slut_collar) + $ hermione_name = "Slut" + with flashbulb + + gen "A slut!" ("grin", xpos="far_left", ypos="head") + her "What!?!" ("angry", "base", "base", "stare", tears="soft") + her "Is that what it says?!" ("angry", "base", "base", "mid",tears="soft") + gen "You come here nearly every day and do unspeakable things. A normal girl doesn't gobble her headmaster's cock and ask for seconds." ("base", xpos="far_left", ypos="head") + her "I knew it... How will I be able to live this down?" ("open", "happyCl", "base", "mid", tears="soft_blink") + gen "You won't. You'll have to embrace it." ("base", xpos="far_left", ypos="head") + her "Embrace it!?" ("angry", "base", "base", "stare", tears="soft") + gen "There's no coming back for a slut like you... Even if I leave, you'll just find some other cock to please." ("base", xpos="far_left", ypos="head") + her "[genie_name]... That's not true!" ("angry", "happyCl", "worried", "mid",emote="sweat") + gen "Don't act like you don't already know this...{w} You know that deep down, you're a filthy slut." ("base", xpos="far_left", ypos="head") + her "I am not!" ("angry", "happyCl", "worried", "stare") + gen "Suck my cock." ("base", xpos="far_left", ypos="head") + her "... What?" ("angry", "happy", "base", "mid", cheeks="blush") + gen "Come here..." ("base", xpos="far_left", ypos="head") + gen "And, Suck....{w=0.4} My....{w=0.4} Cock...{w=0.4} Slut!" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "worried", "R", cheeks="blush") + hide hermione_main + with d3 + + call her_walk("desk", "base", reduce=0.8) + show screen blkfade + with d3 + + stop music fadeout 1.0 + + call nar(">Hermione walks over and kneels before you as you pull out your cock from beneath your robes.") + + call play_music("playful_tension") #HERMIONE + call her_chibi_scene("bj_pause") + + hide screen blktone + hide screen bld1 + hide screen blkfade + with d3 + call ctc + + call bld + + gen "That's a good little slut..." ("base", xpos="far_left", ypos="head") + gen "Now if you want to suck my cock, I expect you to ask nicely." ("base", xpos="far_left", ypos="head") + her "What? Isn't it bad enough that the stupid collar said that I'm a slut! Just let me suck your cock!" ("clench", "happy", "base", "up", cheeks="blush", ypos="head") + gen "Well that's exactly it, [hermione_name]!" ("base", xpos="far_left", ypos="head") + gen "Sluts beg for cock!" ("base", xpos="far_left", ypos="head") + gen "I expect you to beg!" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "happyCl", "worried", "mid", cheeks="blush") + her "Please [genie_name], let me suck your cock." ("open", "happyCl", "base", "mid", cheeks="blush") + gen "*Hmm*... That was \"almost\" good enough...{w=0.4} Try again." ("base", xpos="far_left", ypos="head") + gen "Put some effort into it!" ("base", xpos="far_left", ypos="head") + her "Pretty please [genie_name], please let me suck your big beautiful cock." ("angry", "squint", "worried", "up", cheeks="blush") + + menu: + "-Throat fuck-": + gen "Good Slut..." ("base", xpos="far_left", ypos="head") + gen "Here's your reward!" ("base", xpos="far_left", ypos="head") + call nar(">Without missing a beat, you force your cock into her mouth and to the entrance of her throat.") + + call her_chibi_scene("bj") + with d3 + + her "!!!" ("shock", "happyCl", "annoyed", "stare", cheeks="blush") + call nar(">You feel her push back against your legs.") + gen "Now, now [hermione_name]... Good sluts know how to relax their throat..." ("base", xpos="far_left", ypos="head") + her "*eeettss-hhooooo-hhhhggggg*!" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + gen "Let's go?" ("base", xpos="far_left", ypos="head") + gen "Yeah, let's go!" ("base", xpos="far_left", ypos="head") + her "..." ("open_wide_tongue", "closed", "angry", "mid") + call nar(">Hermione's throat relaxes and allows you to enter.") + gen "*Ughhh*! Your throat feels so good..." ("base", xpos="far_left", ypos="head") + gen "But that's to be expected from a hungry hole like yours... Isn't that right, [hermione_name]?" ("base", xpos="far_left", ypos="head") + call nar(">Rolling her eyes, Hermione continues taking your cock deep into her throat.") + her "*Slurp*! *Gltch*! *Gulp*!" ("open_wide_tongue", "narrow", "base", "stare_soft", cheeks="blush") + gen "I asked you a question." ("base", xpos="far_left", ypos="head") + her "*Cough*" ("open_wide_tongue", "wide", "worried", "up") + her "*hhyyym-aaaa-hhhhtttt*" ("open_wide_tongue", "wide", "worried", "up") + gen "What was that [hermione_name]? I couldn't hear you over the sounds of you swallowing my cock." ("base", xpos="far_left", ypos="head") + her "*hhhhyyyyyym-aaaaaaa-hhhhhhhhttttttt*!" ("open_wide_tongue", "happyCl", "annoyed", "stare", cheeks="blush") + call nar(">The vibrations from her throat as she tries to form a sentence sends a shiver down your shaft.") + gen "*Ugh* Once more... I'm not sure I caught that." ("angry", xpos="far_left", ypos="head") + + call her_chibi_scene("bj_pause") + with d3 + + her "{size=+10}I said yes, alright?!{/size}" ("mad", "narrow", "annoyed", "up") + hide hermione_main + gen "Yes indeed!" ("base", xpos="far_left", ypos="head") + gen "Now, get back to sucking!" ("base", xpos="far_left", ypos="head") + call nar(">Hermione impales her mouth once again down the shaft of your cock and begins bobbing her head even faster.") + + call her_chibi_scene("bj") + with d3 + + "-Let her suck you off-": + gen "Well, if you insist [hermione_name]." ("base", xpos="far_left", ypos="head") + call nar(">Hermione takes you into her waiting mouth.") + + call her_chibi_scene("bj") + with d3 + + gen "See... Don't you feel better now that you have a cock in your mouth?" ("base", xpos="far_left", ypos="head") + her "*Mmmmm*..." ("open_tongue", "narrow", "base", "up") + gen "Admit it, you love this." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gulp*! *Slurp*!" ("open_wide_tongue", "narrow", "base", "stare_soft") + gen "You love being used as my plaything." ("base", xpos="far_left", ypos="head") + her "*Gulp*! *Gobble*! *Gobble*!" ("open_wide_tongue", "closed", "angry", "mid") + gen "You might act all upset about people truly finding out what you really are." ("base", xpos="far_left", ypos="head") + her "*Gulp*! *Gobble*! *Slurp*!" ("open_wide_tongue", "closed", "base", "mid_soft", cheeks="blush") + gen "But deep down, you're the happiest when you don't have to act as if you're not a massive slut." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Gobble*!" ("open_wide_tongue", "closed", "angry", "mid", cheeks="blush") + gen "After all, the collar confirmed it..." ("base", xpos="far_left", ypos="head") + gen "Didn't it?" ("base", xpos="far_left", ypos="head") + her "..." ("open_wide_tongue", "closed", "worried", "mid", cheeks="blush") + gen "I asked you a question, slut." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj_pause") + with d3 + + call nar(">Hermione hurriedly takes your cock out of her mouth.") + her "*Ahem*...{w=0.4} If that's what the collar says..." ("soft", "narrow", "worried", "R", cheeks="blush") + gen "Good to hear you finally admit it. Now, back in the mouth." ("base", xpos="far_left", ypos="head") + her "Yes [genie_name]..." ("open", "base", "worried", "up", cheeks="blush") + call nar(">Hermione takes you back into her mouth with renewed effort.") + + call her_chibi_scene("bj") + with d3 + + gen "*Ughhh*, I'm getting close girl." ("base", xpos="far_left", ypos="head") + gen "Get ready." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause") + call nar(">Hermione pulls your cock out of her mouth hastily, ready to receive her reward.") + gen "Here it comes!" ("angry", xpos="far_left", ypos="head") + call cum_block + + call her_chibi_scene("bj_cum_out", trans=d5) + $ hermione.set_cum(hair="light") + her "!!!" ("angry", "wide", "base", "up") + + gen "Your reward, you Filthy...{w=0.4} Cumslut!" ("angry", xpos="far_left", ypos="head") + gen "{size=+4}Aaaah!!{/size}" ("angry", xpos="far_left", ypos="head") + call nar(">You explode across her face, covering her in your cum.") + + call cum_block + $ hermione.set_cum(hair="heavy") + her "..." ("angry", "base", "base", "stare") + + call her_chibi_scene("bj_cum_out_done") + call nar(">Watching as it slowly begins trickling down her face...") + + $ hermione.set_cum(face="light") + her "..." ("angry", "happyCl", "base", "stare") + + $ hermione.set_cum(face="heavy") + her "..." ("angry", "wide", "base", "up") + gen "Ah..." ("angry", xpos="far_left", ypos="head") + + gen "Who's a good slut?" ("grin", xpos="far_left", ypos="head") + her "I am..." ("open", "narrow", "worried", "R", cheeks="blush") + gen "Good girl..." ("base", xpos="far_left", ypos="head") + + if not her_neckwear_slut_collar.unlocked: + $ her_neckwear_slut_collar.unlock() + + gen "Well now that we've established who you really are... I've got a present for you!" ("base", xpos="far_left", ypos="head") + her "A present? What is it?" ("soft", "happy", "base", "up", cheeks="blush") + gen "That lovely collar on your neck, I'm giving it to you as reminder of who you are." ("base", xpos="far_left", ypos="head") + her "You're expecting me to keep it?" ("angry", "narrow", "base", "stare", cheeks="blush") + gen "Most certainly..." ("base", xpos="far_left", ypos="head") + gen "You are \"my\" slut and you will do well to remember it...{w=0.4} Now get out of my office." ("base", xpos="far_left", ypos="head") + her "...{w=0.4} Fine." ("angry", "narrow", "base", "down", cheeks="blush") + + call give_reward(">A new collar has been unlocked in the wardrobe!") + + show screen blkfade + with d5 + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","mid", flip=False) + + hide screen blkfade + with d5 + + her "Can I get a towel or something to clean my face?" ("open", "happy", "base", "R", cheeks="blush", ypos="base", trans=d3) + gen "Why? Worried someone's going to see how much of a slut you are?" ("base", xpos="far_left", ypos="head") + her "You can't be serious!" ("upset", "happy", "worried", "stare", cheeks="blush") + gen "I am... And if you ever want to suck my cock again you will do as I say." ("base", xpos="far_left", ypos="head") + her "...{w} Yes [genie_name]." ("annoyed", "narrow", "base", "R", cheeks="blush") + gen "Well then...{w=0.4} Get going." ("base", xpos="far_left", ypos="head") + + if game.daytime: + her "Bye then... [genie_name]." ("open", "narrow", "base", "mid_soft", cheeks="blush") + else: + her "Good night then... [genie_name]." ("base", "narrow", "base", "mid_soft") + gen "Until next time...{w=0.4} Slut." ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "worried", "down", cheeks="blush") + + call her_walk(action="leave") + + jump end_hermione_event + + +label whore_scene: #(locked behind public reputation and last sex event) + + #Sex scene where she begs genie to cum inside her + #Genie yells at her and makes her admit she is a whore + #He cums inside her + + $ renpy.play("sounds/flashbang.ogg") + $ hermione.equip(her_neckwear_whore_collar) + $ hermione_name = "Whore" + with flashbulb + + gen "You are a--" ("base", xpos="far_left", ypos="head") + her "Am I a slut?" ("angry", "base", "base", "mid", tears="soft", ypos="base") + gen "*Err*..." ("base", xpos="far_left", ypos="head") + her "Pansy Parkinson has been telling everyone that I'm a slut!" ("open", "narrow", "worried", "R") + gen "Really? Why is this Pansy Parkinson calling you a slut?" ("base", xpos="far_left", ypos="head") + her "I think she might know something..." ("angry", "narrow", "base", "down") + her "She's going to ruin my reputation! What will people think when they find out what I've been doing with my ninety year old Professor?" ("disgust", "closed", "worried", "mid", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + her "I'll be known as a slut for the rest of my life!" ("scream", "happyCl", "worried", "mid") + her "I'll never be able to get a good job..." ("scream", "happyCl", "worried", "mid", tears="soft_blink") + her "My friends will hate me..." ("angry", "happyCl", "worried", "mid", tears="soft_blink") + her "Please... The collar doesn't tell me that I'm a slut does it, [genie_name]?" ("angry", "wide", "worried", "mid") + gen "Well, you'll be happy to know that this Parkinson girl is incorrect, Miss Granger." ("base", xpos="far_left", ypos="head") + gen "The collar doesn't say that you're a slut..." ("base", xpos="far_left", ypos="head") + her "Oh, thank heavens..." ("grin", "base", "worried", "mid", tears="soft") + gen "You're worse than a slut...{w=0.4} You're a whore!" ("grin", xpos="far_left", ypos="head") + her "What? A whore?!" ("angry", "wide", "worried", "stare") + gen "Why indeed!" ("grin", xpos="far_left", ypos="head") + gen "A slut is someone who enjoys sex... A whore is someone who's selling themselves for materialistic gains!" ("base", xpos="far_left", ypos="head") + gen "As long as someone pays you one way or the other, you couldn't care less, could you?" ("base", xpos="far_left", ypos="head") + her "I--{w=0.2} I--{w=0.2} I--" ("clench", "happyCl", "worried", "mid") + gen "I bet you'd beg your precious little friends to fuck you if I wasn't around and it would benefit you..." ("base", xpos="far_left", ypos="head") + gen "Look at what you've become, nothing more than the school bicycle... Willing to give everyone a happy ride." ("base", xpos="far_left", ypos="head") + gen "I wouldn't be worried about your friends finding out what you're doing in here. They're probably just waiting for a turn themselves..." ("base", xpos="far_left", ypos="head") + her "[genie_name] please...{w=0.4} You're being mean." ("shock", "happyCl", "worried", "mid") + gen "Oh, is the little whore getting upset? Don't worry, I'll make you feel all better." ("base", xpos="far_left", ypos="head") + her "...How can you say that after--" ("angry", "happyCl", "worried", "mid") + gen "Come over here and bend over." ("base", xpos="far_left", ypos="head") + her "You can't be serious! After what you just said?!" ("angry", "squint", "worried", "stare") + gen "I am serious... A good little whore should present her naked body for the client whenever he requires it..." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "happyCl", "base", "down") + gen "Now be a good whore and come over here...{w=0.4} I'll be sure to give you what you want." ("base", xpos="far_left", ypos="head") + + call her_walk("desk", "base", reduce=0.8) + show screen blkfade + with d3 + + stop music fadeout 1.0 + + call nar(">Hermione hesitates for just a moment before following your instructions.") + if hermione.is_any_worn("top", "bottom", "bra", "panties"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + call nar(">While looking away, she strips down until standing butt naked in front of you, wearing nothing but the collar.") + + $ hermione.strip("all") + #call nar(">Throwing the collar to the floor she quickly walks over to your desk, then bends over and presents herself.") + $ hermione.wear("neckwear") + + call her_chibi_scene("sex_pause") + hide screen blkfade + with d3 + + call play_music("playful_tension") # SEX THEME. + + gen "Such a good little whore you are...{w=0.4} Now, say aloud what you truly want..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "worried", "down", cheeks="blush") + her "Please [genie_name]..." ("open", "narrow", "worried", "down", cheeks="blush") + gen "Please what?" ("base", xpos="far_left", ypos="head") + her "{size=-4}Please...{w=04} Fuck me...{/size}" ("disgust", "base", "worried", "R", cheeks="blush") + gen "I'm not sure I heard you... Speak up [hermione_name]." ("base", xpos="far_left", ypos="head") + her "{size=+5}Please fuck me [genie_name]!{/size}" ("scream", "happyCl", "base", "stare", cheeks="blush") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Not bad..." ("grin", xpos="far_left", ypos="head") + + hide hermione_main + with d3 + + call nar(">You take a firm grip of Hermione's hips and thrust into her sopping pussy.") + + $ renpy.play('sounds/gltch.ogg') + with kissiris + + call her_chibi_scene("sex") + play bg_sounds "sounds/slickloop.ogg" fadein 2 + + her "{heart}*Ah*...{heart}" ("open_tongue", "happyCl", "worried", "mid", cheeks="blush") + gen "*Argh*...{w=0.4} How is your pussy still so tight?" ("base", xpos="far_left", ypos="head") + gen "I thought that you would have loosened up after all the guys you've fucked." ("base", xpos="far_left", ypos="head") + her "[genie_name]..." ("disgust", "happyCl", "worried", "mid", cheeks="blush") + gen "Don't try and act coy with me [hermione_name]... We both know what you're up to when the lights go out." ("base", xpos="far_left", ypos="head") + gen "Just admit what you are." ("base", xpos="far_left", ypos="head") + her "{size=-4}A whore...{/size}" ("soft", "narrow", "worried", "up", cheeks="blush") + gen "Who's a good little whore?" ("base", xpos="far_left", ypos="head") + her "{size=+5}Me! I'm a whore!{/size}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + gen "That's right... Just like the collar said..." ("base", xpos="far_left", ypos="head") + gen "Now beg me..." ("base", xpos="far_left", ypos="head") + her "{heart}*Ah*...{heart}{w=0.4} B--{w=0.2} Beg you?" ("grin", "narrow", "base", "up_soft", cheeks="blush") + gen "Beg me to cum inside your pussy, to pay you in semen." ("base", xpos="far_left", ypos="head") + her "I...{w=0.4} {heart}*Ah*...{heart}" ("soft", "narrow", "base", "up_soft", cheeks="blush") + gen "Do it whore!" ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.4} Please fill my pussy with your thick... {heart}cum!{heart}" ("grin", "narrow", "base", "dead", cheeks="blush") + gen "That's a good little whore...{w=0.4} Now, who else have you practised that line with I wonder?" ("base", xpos="far_left", ypos="head") + gen "Is it just me, or do you beg every other boy you screw with to cum inside you?" ("base", xpos="far_left", ypos="head") + her "{heart}{heart}{heart}..." ("angry", "narrow", "base", "dead", cheeks="blush") + gen "Tell me girl." ("base", xpos="far_left", ypos="head") + her "I--{w=0.2} {heart}*Ah*...{heart}{w=0.4} I beg every boy that fucks me to cum inside!" ("soft", "narrow", "worried", "up_soft", cheeks="blush") + gen "Such a fucking whore...{w=0.4} You disgust me..." ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/spit.ogg") + call ctc + play bg_sounds "sounds/sexloopfast.ogg" + + call nar(">You spit on your shaft to lube it up even further and then thrust your hips hard into Hermione's pussy.") + her "I-- {w=0.2} I'm...{w=0.4} *Ah*...{w=0.4} I'm cumming!" ("open_wide_tongue", "base", "worried", "ahegao", cheeks="blush") + gen "Well I think I might join you then." ("base", xpos="far_left", ypos="head") + + play bg_sounds "sounds/sexloopveryfast.ogg" + call nar(">You increase your pumping of Hermione's pussy.") + + gen "Here's your payment, whore. You've earned it!" ("angry", xpos="far_left", ypos="head") + call nar(">You push yourself all the way in and start shooting off deep into her womb.") + + gen "{size=+7}*Argh*, Yes!!!{/size}" + call cum_block + $ renpy.sound.play("sounds/slick_01.ogg") + stop bg_sounds fadeout 2 + call her_chibi_scene("sex_cum_in") + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + her "!!!" ("grin", "wide", "worried", "stare", cheeks="blush") + + gen "That's it, take it all you fucking whore!" ("angry", xpos="far_left", ypos="head") + call cum_block + $ renpy.sound.play("sounds/slick_01.ogg") + + call her_chibi_scene("sex_cum_in_done") + + gen "Ah..." ("grin", xpos="far_left", ypos="head") + her "..." ("grin", "narrow", "base", "dead", cheeks="blush", tears="crying") + gen "Well?" ("base", xpos="far_left", ypos="head") + gen "Show some gratitude, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "...{w=0.4} Thank you, [genie_name]." ("base", "narrow", "worried", "stare", cheeks="blush", tears="soft") + gen "\"Thank you...\"{w=0.4} For what? Don't be shy, slut." ("base", xpos="far_left", ypos="head") + her "Thank you for...{w}{nw}" ("open", "closed", "worried", "stare", cheeks="blush") + her "Thank you for...{fast} Cumming in my pussy..." ("base", "happy", "worried", "mid", cheeks="blush") + gen "You're welcome girl. A good whore should always be grateful." ("base", xpos="far_left", ypos="head") + her "Yes [genie_name]..." ("base", "closed", "base", "mid", cheeks="blush") + hide hermione_main + + show screen blkfade + with d3 + + $ hermione.equip(her_outfit_last) + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + + call nar(">Hermione gets to her feet and walks to the front of your desk.") + + # This is to check if the player already unlocked the collar before + # and does not have it equipped in their outfit + # and so it does make sense from a narration standpoint. + if not hermione.is_equipped_item(her_neckwear_whore_collar): + $ renpy.play("sounds/collar_click.ogg") + call nar (">You grab her by the collar, swiftly unlocking it and taking it off of her.") + + hide screen blkfade + with d3 + + if not her_neckwear_whore_collar.unlocked: + gen "Well then... Seeing as how you said thank you... I have a present for you." ("base", xpos="far_left", ypos="head") + her "A present?" ("soft", "wink", "worried", "mid_soft", cheeks="blush", trans=d3) + gen "Yes, it's a lovely piece of jewellery to commemorate your self-acceptance." ("base", xpos="far_left", ypos="head") + + call nar (">You present Hermione the collar you have taken off her neck a moment ago.") + + her "The collar? You're giving it to me?" ("open", "happy", "base", "mid",cheeks="blush") + her "And how is that supposed to be a piece of jewellery?" ("annoyed", "narrow", "base", "R", cheeks="blush") + gen "It's a piece of metal to adorn your neck is it not?" ("base", xpos="far_left", ypos="head") + gen "Pretty sure that's what a necklace is..." ("base", xpos="far_left", ypos="head") + her "And you expect me to wear this?" ("soft", "narrow", "worried", "mid", cheeks="blush") + gen "Of course. We both know what a whore you are... Why not wear it with pride..." ("base", xpos="far_left", ypos="head") + her "Around my neck?" ("clench", "narrow", "worried", "mid", cheeks="blush") + gen "Well, we could always tattoo it across your forehead..." ("base", xpos="far_left", ypos="head") + her "A collar it is then..." ("annoyed", "narrow", "base", "down", cheeks="blush") + her "I'll wear it if I really have to..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "And proudly!" ("base", xpos="far_left", ypos="head") + her "... *Hmph*!" ("annoyed", "narrow", "base", "R", cheeks="blush") + + call give_reward(">A new collar has been unlocked in the wardrobe!") + + her "Goodbye then, [genie_name]." ("soft", "narrow", "base", "R", cheeks="blush") + gen "Goodbye [hermione_name]." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + jump end_hermione_event + + +label slave_scene: + + $ renpy.play("sounds/flashbang.ogg") + $ hermione.equip(her_neckwear_slave_collar) + $ hermione_name = "Slave" + $ genie_name = "Master" + with flashbulb + + her "It doesn't say slut does it?" ("open", "narrow", "base", "R") + gen "Don't be silly... Why would it say that,{w=0.5} slave?" ("base", xpos="far_left", ypos="head") + her "Oh good..." ("base", "base", "worried", "mid") + her "Wait. What did you just call me?" ("upset", "wide", "base", "mid") + gen "You're a slave Miss Granger. Specifically, {b}my{/b} slave..." ("base", xpos="far_left", ypos="head") + her "What are you talking about?" ("angry", "happy", "worried", "mid") + gen "It's obvious isn't it?" ("base", xpos="far_left", ypos="head") + her "No, it's not!" ("open", "happyCl", "annoyed", "R") + gen "You come in here whenever I order you to..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "angry", "R") + gen "You please me whenever I ask..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "worried", "R") + gen "Shall I go on?" ("base", xpos="far_left", ypos="head") + her "That's not true!" ("angry", "narrow", "worried", "down") + gen "Oh really? Then when was the last time you ever said {b}no{/b} to me?" ("base", xpos="far_left", ypos="head") + her "Well, I--" ("open", "narrow", "worried", "R", cheeks="blush") + gen "Exactly... You've become my slave a long time ago, just accept it." ("base", xpos="far_left", ypos="head") + her "Just because I care about my house it doesn't mean--" ("angry", "happyCl", "worried", "mid",emote="sweat") + gen "Oh please... We have been through this already." ("base", xpos="far_left", ypos="head") + gen "When was the last time you actually cared about acquiring those silly points of yours?" ("base", xpos="far_left", ypos="head") + her "Sir, they are not silly--" ("open", "happyCl", "worried", "R", emote="sweat") + gen "Silence. I'm not finished." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "base", "worried", "mid") + gen "The facts are speaking against you, and very loudly, my dear slave girl." ("base", xpos="far_left", ypos="head") + gen "Almost as loud as you calling my name when I fill that tight pussy of yours." ("grin", xpos="far_left", ypos="head") + her "..." ("angry", "happyCl", "worried", "R",emote="sweat") + gen "You know what I think?" ("base", xpos="far_left", ypos="head") + gen "I think you are scared to admit that what you truly want from life is to be controlled and be taken care of, like a faithful puppy, or a slave." ("base", xpos="far_left", ypos="head") + gen "But so be it. I'll give you a choice." ("base", xpos="far_left", ypos="head") + gen "If you are so adamant that you are not my slave, then turn around and get the fuck out of this office and never come back." ("base", xpos="far_left", ypos="head") + gen "Or." ("base", xpos="far_left", ypos="head") + gen "Beg me to fuck you silly like a good slave would." ("base", xpos="far_left", ypos="head") + + her "I..." ("soft", "base", "base", "stare", cheeks="blush", tears="soft") # Tears welling up + gen "Don't give me that look. We both know that you enjoyed me using you like a cock-sleeve." ("base", xpos="far_left", ypos="head") + gen "You even let me fuck you in the ass, and you loved every second if it!" ("angry", xpos="far_left", ypos="head") + gen "I am not scared to admit what I enjoy, are you?" ("base", xpos="far_left", ypos="head") + + her "..." ("normal", "narrow", "base", "down", cheeks="blush") # Hermione's thoughts are racing + her "......." ("normal", "narrow", "worried", "stare", cheeks="blush") # Hermione is having a hard time thinking + her "................." ("normal", "narrow", "worried", "dead", cheeks="blush") # Hermione expresion turns to dead, stares into nothing + her "C-Can you fuck me..." ("soft", "narrow", "worried", "dead", cheeks="blush") # stares into nothing + her "... Please?" ("angry", "narrow", "worried", "dead", cheeks="blush") # looks at genie (eyes dead) + + gen "What was that?" ("base", xpos="far_left", ypos="head") + + her "Please fuck me sir!!!{heart}{heart}{heart}" ("grin", "narrow", "worried", "dead", cheeks="blush") # screams, eyes closed + + gen "So be it." ("base", xpos="far_left", ypos="head") + + if hermione.is_any_worn("top", "bottom", "bra", "panties"): + gen "Now, be a good slave and take those silly clothes off and bend over my desk..." ("base", xpos="far_left", ypos="head") + else: + gen "Now be a good slave and bend over my desk." ("base", xpos="far_left", ypos="head") + her "..." ("smile", "narrow", "base", "stare", cheeks="blush") + + call her_walk("desk", "base", reduce=0.8) + show screen blkfade + with d3 + + stop music fadeout 1.0 + + if hermione.is_any_worn("top", "bottom", "bra", "panties"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + call nar(">Hermione takes off her clothes and bends over your desk, leaving herself bare.") + + $ hermione.strip("all") + $ hermione.wear("neckwear") + + call her_chibi_scene("sex_pause") + hide screen blkfade + with d3 + + call play_music("playful_tension") # SEX THEME. + + gen "That's a good slave." ("base", xpos="far_left", ypos="head") + gen "Now ask me nicely to fuck that tight ass of yours." ("base", xpos="far_left", ypos="head") + her "Please sir, please fuck my ass." ("soft", "happy", "worried", "R", cheeks="blush", ypos="head") + gen "Good girl." ("base", xpos="far_left", ypos="head") + call nar(">You thrust your full length into Hermione in one motion.") + + $ renpy.play('sounds/gltch.ogg') + with kissiris + her "{heart}*Ah*...{heart}" ("open_tongue", "happy", "base", "ahegao", cheeks="blush") + + call nar(">Hermione's ass gripping tightly around your cock, you begin pushing in and out of her.") + call her_chibi_scene("sex") + play bg_sounds "sounds/slickloop.ogg" fadein 2 + + gen "Your ass is very tight today... Enjoying being broken in?" ("base", xpos="far_left", ypos="head") + her "Yes sir, I... I love it." ("base", "narrow", "base", "up", cheeks="blush") + gen "Good, then make sure to keep your hole nice and tight." ("base", xpos="far_left", ypos="head") + call nar(">You pick up speed and begin to fuck her ass in earnest.") + gen "Now tell me girl. Who do you belong to?" ("base", xpos="far_left", ypos="head") + her "You." ("open", "narrow", "worried", "stare", cheeks="blush") + gen "Good, and who am I?" ("base", xpos="far_left", ypos="head") + her "Professor Dumbledore." ("base", "narrow", "base", "up", cheeks="blush") + + call slap_her + + call nar("You unleash a firm slap across her buttocks.") + her "" ("open_tongue", "happyCl", "base", "up", cheeks="blush") + call ctc + gen "That's not who I am to you [hermione_name]...{w=0.4} To you I am your master." ("base", xpos="far_left", ypos="head") + gen "Do you understand now?" ("base", xpos="far_left", ypos="head") + her "Yes..." ("angry", "base", "base", "stare", tears="soft") + + call slap_her + + call nar("You give Hermione another powerful slap, leaving a bright red mark across her cheeks.") + gen "Yes what?" ("base", xpos="far_left", ypos="head") + her "Yes, master...{heart}{heart}" ("angry", "happyCl", "base", "mid", cheeks="blush", tears="soft") + + gen "Good...{w=0.4} You're a fast learner." ("base", xpos="far_left", ypos="head") + gen "Now, if I'm your master...{w=0.4} Then what does that make you?" ("base", xpos="far_left", ypos="head") + her "{size=-7}A--{w=0.2} A slave...{/size}" ("soft", "narrow", "base", "stare", tears="soft") + gen "Speak up girl!" ("base", xpos="far_left", ypos="head") + her "I am slave..." ("angry", "base", "worried", "mid", cheeks="blush", tears="soft") + + call slap_her + call nar(">You give Hermione yet another strong slap across her buttocks.") + + gen "That's right... But not just some common slave." ("base", xpos="far_left", ypos="head") + her "N--{w=0.4} No?" ("angry", "narrow", "worried", "stare", cheeks="blush", tears="soft") # confused + gen "No, of course not..." ("base", xpos="far_left", ypos="head") + gen "You're my {i}personal{/i} slave." ("base", xpos="far_left", ypos="head") + her "I--{w=0.2} I think I'm about to cum [genie_name]..." ("angry", "narrow", "worried", "R", cheeks="blush") + + call slap_her + call nar(">You give Hermione a fierce slap across her left buttock.") + + gen "I am your master, and I will decide when you are allowed to cum. Got it?" ("base", xpos="far_left", ypos="head") + her "Please [genie_name]!" ("angry", "happyCl", "base", "mid", cheeks="blush") + gen "Not...{w=0.4} Yet!{w} Not until I say so..." ("base", xpos="far_left", ypos="head") + her "Please...{w=0.4}, I beg of you, [genie_name], I can't hold it!{heart}" ("angry", "narrow", "worried", "up", cheeks="blush") + gen "Then you better put some effort into it if you want me to finish sooner." ("base", xpos="far_left", ypos="head") + + play bg_sounds "sounds/sexloop.ogg" + call nar(">Hermione starts pushing back against you, rotating her hips and massaging your shaft as you thrust into her.") + + gen "Yes! That's a good slave...{w=0.4} You're doing great." ("base", xpos="far_left", ypos="head") + + call nar(">Gripping tightly onto Hermione's hips you impale her down to the hilt of your throbbing member.") + + gen "*Ughhh*..." ("angry", xpos="far_left", ypos="head") + + call her_chibi_scene("sex_cum_in") + + call nar(">You let out a load groan and start cumming inside Hermione.") + $ renpy.sound.play("sounds/slick_01.ogg") + stop bg_sounds fadeout 2 + + her "[genie_name]{heart}{heart}... I--{w=0.2} I--{heart}" ("grin", "base", "base", "ahegao", cheeks="blush") + gen "Cum for your master, slut! Cum your brains out!" ("angry", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + her "{heart}*Ah*!!{heart}" ("smile", "narrow", "base", "up", cheeks="blush") + + gen "That's right, take it all you dirty girl!" ("base", xpos="far_left", ypos="head") + + call cum_block + $ renpy.sound.play("sounds/slick_01.ogg") + call nar(">You continue to shoot ropes of cum into her asshole.") + + her "{heart}*Ah*...{w=0.4}{heart}*Ah*...{w=0.4}{heart}*Ah*...{w=0.4}{heart} Thank you, thank you sir..." ("open", "happyCl", "worried", "mid", cheeks="blush") + + call slap_her + + call her_chibi_scene("sex_cum_in_done") + + gen "What was that, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "[genie_name]! Thank you, [genie_name], thank you [genie_name].{heart}{heart}{heart}" ("grin", "narrow", "base", "dead", cheeks="blush") + gen "That's right, [hermione_name]... Know your place..." ("base", xpos="far_left", ypos="head") + + call nar(">Hermione closes her eyes as she rides out the last of her orgasm.") + + gen "On your knees [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "W--{w=0.2} What?" ("soft", "happy", "worried", "R", cheeks="blush") + gen "No questions." ("base", xpos="far_left", ypos="head") + gen "Get off the desk and onto your knees." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." ("angry", "narrow", "base", "down", cheeks="blush") + + call nar(">Hermione pulls herself off of your dick, turns around, and kneels in front of you.") + + call her_chibi_scene("bj_pause") + with fade + + gen "Let's see how much you've learned today." ("base", xpos="far_left", ypos="head") + gen "Tell me again...{w=0.4} What are you?" ("base", xpos="far_left", ypos="head") + + her "A slave." ("base", "narrow", "worried", "down", cheeks="blush") # Alternative: "A stupid sandwich." lol + gen "Who do you belong to?" ("base", xpos="far_left", ypos="head") + her "To you, [genie_name]." ("open", "happy", "base", "up", cheeks="blush") + + if not her_neckwear_slave_collar.unlocked: + $ her_neckwear_slave_collar.unlock() + + gen "That's right... And because you've been such a good slave, I'm going to give you a present." ("base", xpos="far_left", ypos="head") + her "A present, [genie_name]?" ("soft", "happy", "base", "up") + gen "The collar you're wearing... I want you to keep it." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]! Thank you, [genie_name]!" ("angry", "happy", "base", "up") + + call give_reward(">A new collar has been unlocked in the wardrobe!") + + gen "Now... On your feet." ("base", xpos="far_left", ypos="head") + else: + gen "That's right. Now clean me up slut, I don't have the entire day." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj") + call nar(">Hermione looks up at you with eyes devoid of any resistance, then engulfs your entire shaft, sloppily licking and sucking on it, doing her best to please her master...") + call nar(">After your penis is thoroughly cleaned, you let go of her.") + + show screen blkfade + with d3 + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","mid","base") + + hide screen blkfade + with d3 + + her "..." ("base", "narrow", "worried", "down") # Look of adoration, waiting for a command + gen "What is it? Speak up." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]. I was wondering if...--" ("soft", "narrow", "worried", "down") + gen "--If You could get house points for this? *Ha-ha-ha*, of course not...{w=0.5} Slaves aren't getting paid, that's what makes them slaves." ("base", xpos="far_left", ypos="head") + her "I suppose you're right..." ("soft", "narrow", "base", "R", cheeks="blush") + gen "Now be on your way, I will call for you if I need anything." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]!" ("soft", "closed", "base", "mid") + + if her_outfit_last.has_any_type("clothes"): + call nar(">Hermione grabs the pile of clothes lying nearby, not even bothering to put them back on.") + + call her_walk(action="leave") + + $ hermione.equip(her_outfit_last) + + jump end_hermione_event + +label flasher_scene: + + gen "You're..." ("base", xpos="far_left", ypos="head") + gen "A flasher!" ("base", xpos="far_left", ypos="head") + her "What?!" ("angry", "wide", "base", "mid", cheeks="blush") + + $ renpy.play("sounds/flashbang.ogg") + $ hermione.equip(her_neckwear_flasher_collar) + $ hermione.strip("top", "bra") + $ hermione_name = "Flasher" + with flashbulb + her "Aaah!!!" + + if hermione.is_any_equipped("top", "bra"): + call nar(">Hermione blinks, and looks down as her vision returns.") + + if hermione.is_equipped("top", "bra"): + her "What happened to my clothes?!" ("mad", "narrow", "base", "down", cheeks="blush", trans=d3) + elif hermione.is_equipped("top"): + her "Where has my top gone?!" ("mad", "narrow", "base", "down", cheeks="blush", trans=d3) + elif hermion.is_equipped("bra"): + her "Where is my bra?!" ("mad", "narrow", "base", "down", cheeks="blush", trans=d3) + + gen "*Hah-hah*!! Bringing out your true self are you?" ("base", xpos="far_left", ypos="head") + + if her_whoring < 16: + her "This isn't funny!" ("angry", "narrow", "angry", "R", cheeks="blush") + gen "I'm sure you'll get it back once you take the collar off." ("base", xpos="far_left", ypos="head") + her "*Hmph*..." ("annoyed", "narrow", "base", "down", cheeks="blush") + else: + her "Why did it do that?!" ("angry", "narrow", "base", "dead", cheeks="blush", trans=d3) + call nar(">Hermione blinks, and looks down as her vision returns.") + + her "What are these strings?" ("angry", "narrow", "base", "down", cheeks="blush") + gen "I would be careful with those if I were you--" ("base", xpos="far_left", ypos="head") + call nar(">Hermione tugs at the strings hanging from the collar.") + her "Ow-ow-ow!!" ("angry", "happyCl", "base", "mid", cheeks="blush", tears="soft_blink") + + if her_whoring < 16: #Before she'd wear piercings + her "They're... They're attached to my nipples!" ("mad", "narrow", "base", "mid", cheeks="blush") + gen "Indeed they are." ("base", xpos="far_left", ypos="head") + her "B-- But..." ("clench", "narrow", "worried", "down", cheeks="blush") + else: + gen "Told you..." ("base", xpos="far_left", ypos="head") + + her "I can't believe a magic collar would--" ("clench", "narrow", "base", "down", cheeks="blush") + gen "So... A flasher, eh?" ("base", xpos="far_left", ypos="head") + her "What?" ("angry", "squint", "base", "mid", cheeks="blush") + gen "That's what the collar says." ("base", xpos="far_left", ypos="head") + + if her_whoring < 19: + her "I'm... I'm not a flasher!" ("disgust", "narrow", "annoyed", "R", cheeks="blush") + call nar(">You watch as the strings of the collar move slightly by Hermione's words.") + her "The collar must be broken!" ("open", "closed", "annoyed", "mid", cheeks="blush") + her "I'm only doing this for--" ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "Agreed." ("base", xpos="far_left", ypos="head") + her "*Huh*?" ("disgust", "base", "base", "mid", cheeks="blush") + else: + her "*Ehm*..." ("disgust", "base", "base", "mid", cheeks="blush") + + gen "The collar must be broken..." ("base", xpos="far_left", ypos="head") + gen "I guess exhibitionist wouldn't fit on it." ("base", xpos="far_left", ypos="head") + call nar(">As if on command, the collar tugs the strings slightly, causing Hermione to jerk up.") + her "Ow!" ("angry", "wide", "base", "stare", cheeks="blush") + gen "I'll take that as a confirmation..." ("grin", xpos="far_left", ypos="head") + her "Where...{w=0.4} Where did you get this thing from?" ("angry", "base", "base", "mid", cheeks="blush") + gen "*Err*... Some magic shop." ("base", xpos="far_left", ypos="head") + her "Magic shop?" ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "Well...{w=0.4} Not \"the\" magic shop...{w} That's back in my world." ("base", xpos="far_left", ypos="head") + her "*Huh*?" ("open", "base", "worried", "mid", cheeks="blush") + gen "Although I must say I'm a bit disappointed..." ("base", xpos="far_left", ypos="head") + her "You're disappointed? You've just had the collar label me a flasher!" ("open", "narrow", "annoyed", "R", cheeks="blush") #annoyed + gen "The collar hasn't labelled you anything... It merely showed your true self." ("base", xpos="far_left", ypos="head") + + if hermione.is_any_worn("clothes"): + gen "I'm disappointed because I assumed it would strip you completely..." ("base", xpos="far_left", ypos="head") + her "Strip me--" ("open", "base", "base", "mid", cheeks="blush") + + $ renpy.play("sounds/flashbang.ogg") + $ hermione.strip("all") + $ hermione.wear("neckwear") + with flashbulb + + her "What the--" ("clench", "base", "base", "down", cheeks="blush") + gen "There it is! Your true self!" ("grin", xpos="far_left", ypos="head") + her "" ("annoyed", "base", "base", "mid", cheeks="blush") + else: + gen "Well... The collar didn't need to do much did it... Seeing your current state of undress..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "base", "base", "mid", cheeks="blush") + + gen "Well then... Now that the collar has told us how much you enjoy showing off your naked body..." ("base", xpos="far_left", ypos="head") + gen "I want to hear it from you..." ("base", xpos="far_left", ypos="head") + + if her_whoring < 19: # Wont admit it + her "Hear... Hear what from me?" ("disgust", "happy", "base", "mid", cheeks="blush") + gen "Tell me how much you're enjoying flaunting your naked body." ("base", xpos="far_left", ypos="head") + her "I...{w=0.4} I am just doing it for the points, [genie_name]!" ("angry", "happyCl", "worried", "R", cheeks="blush") + call nar(">The collar once more tugs on the strings, making hermione gasp.") + her "*Ah*..." ("soft", "happyCl", "base", "mid", cheeks="blush") #Horny + her "..." ("disgust", "narrow", "base", "stare", cheeks="blush") #embarrased + gen "Really?" ("base", xpos="far_left", ypos="head") + her "Yes, I--" ("angry", "narrow", "base", "down", cheeks="blush") + call nar(">The collar tugs even harder, Hermione seemingly fighting conflicting emotions.") + her "Ow!" ("angry", "happyCl", "base", "stare", cheeks="blush") + gen "Come on [hermione_name]... Even the collar knows that you're lying..." ("base", xpos="far_left", ypos="head") + her "S--{w=0.2} Sorry [genie_name]... But I cannot." ("disgust", "narrow", "worried", "stare", cheeks="blush") + call nar(">As if trying to teach her a lesson, the collar pulls its strings with all its might, making Hermione yelp with pain.") + her "Ouch!" ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="soft_blink") + gen "Sounds more like you {i}don't want to{/i}, rather than {i}cannot{/i} admit it..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "worried", "R", cheeks="blush", tears="soft") + gen "Very well then, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "You may take the collar off." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]..." ("soft", "narrow", "worried", "down", cheeks="blush") + + elif her_whoring < 22: # Hesitates but will eventually admit it + her "You... You want me to say that I..." ("open", "happy", "base", "R", cheeks="blush") + gen "Enjoy showing off your body..." ("base", xpos="far_left", ypos="head") + + if hg_pr_flash.counter > 0: + gen "That you like when people are watching you, especially when you're naked." ("base", xpos="far_left", ypos="head") + else: + gen "That you like showing yourself off to me..." ("base", xpos="far_left", ypos="head") + + her "I..." ("disgust", "narrow", "base", "down", cheeks="blush") + call nar(">You watch as the strings of the collar slowly begin to pull on itself as Hermione hesitates.") + her "I..." ("soft", "narrow", "base", "down", cheeks="blush") + call nar(">The strings now completely stretched begin tugging on Hermione's nipples.") + her "Alright I do enjoy it okay!" ("angry", "happyCl", "worried", "mid", cheeks="blush") + call nar(">As the words leave Hermione's lips the strings return to their dormant state") + her "*Phew*..." ("soft", "narrow", "worried", "down", cheeks="blush") + gen "Now was that so hard?" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "R", cheeks="blush") + her "I only said it because of this stupid--" ("open", "closed", "annoyed", "mid", cheeks="blush") + + call slap_her + call nar(">The strings slap her breasts in unison.") + + her "Ouch!" ("angry", "wide", "worried", "stare", cheeks="blush") + gen "*Heh-heh*..." ("grin", xpos="far_left", ypos="head") + her "Can I take this off now?" ("open", "narrow", "annoyed", "R", cheeks="blush") + gen "Yes, you may take the collar off now, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]..." ("open", "narrow", "base", "mid", cheeks="blush") + + else: #Openly admits it, proves it to you + call nar(">You watch as the strings attached to her new nipple piercings tug and pull, making her nipples harden.") + her "I love it!" ("grin", "narrow", "base", "down", cheeks="blush") + call nar(">The collar happy with the answer, relaxes its strings.") + + gen "Oh?" ("base", xpos="far_left", ypos="head") + + her "I mean... If the magic collar says so then it must be true..." ("grin", "narrow", "base", "mid", cheeks="blush") + gen "I...{w=0.4} Yes, although I didn't think you'd be so hasty to admit it." ("base", xpos="far_left", ypos="head") + her "Let's give you some confirmation then..." ("base", "narrow", "base", "mid", cheeks="blush") + gen "What are you--" ("base", xpos="far_left", ypos="head") + hide hermione_main + + stop music fadeout 1.0 + + call her_walk("desk", "base", reduce=0.8) + show screen blkfade + with d3 + + $ renpy.play('sounds/08_hop_on_desk.ogg') #Sound of the desk squeaking. + pause 3 + gen "!!!!!!" ("angry", xpos="far_left", ypos="head") + call nar(">Hermione waiving away your questioning look, walks over and climbs onto your desk...") + + call her_chibi("dance_pause","on_desk","on_desk") + + hide screen blkfade + with fade + pause.5 + + call play_music("playful_tension") #HERMIONE + + gen "Miss Granger!" ("base", xpos="far_left", ypos="head") + her "Is this enough proof for you?" ("grin", "narrow", "base", "down", cheeks="blush") + call nar(">Hermione stares into your face, cheeks flushed with colour as she spreads her wet pussy...") + + gen "Ten points to Gryffindor!" ("grin", xpos="far_left", ypos="head") + $ gryffindor += 10 + + her "Thank you, [genie_name]..." ("grin", "narrow", "base", "mid", cheeks="blush") + call nar(">With a sensual step, Hermione turns around then bends down, showing you her ass and pussy in vivid details.") + + gen "Holy shit! This feels like a strip-club!" ("grin", xpos="far_left", ypos="head") + gen "Another Ten points to Gryffindor!" ("grin", xpos="far_left", ypos="head") + $ gryffindor += 10 + + show screen blkfade + with d5 + + call nar(">Hermione prounces around your desk for a moment, and shows herself off from every angle...") + + her "Now if you don't mind..." ("grin", "closed", "base", "mid", cheeks="blush") + + call play_sound("climb_desk") + call nar(">Hermione gets off your desk.") + call her_chibi("stand","desk","base") + + hide screen blkfade + with d5 + + her "I believe you got your proof..." ("smile", "narrow", "base", "mid", cheeks="blush") + gen "What proof..." ("base", xpos="far_left", ypos="head") + gen "Oh! Yes... Well done, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "I haven't felt more convinced in my life." ("grin", xpos="far_left", ypos="head") + + $ renpy.play("sounds/collar_click.ogg") + her "Good, then let me just take this thing off..." ("grin", "narrow", "base", "down", cheeks="blush") + + $ renpy.play("sounds/flashbang.ogg") + $ hermione.equip(her_outfit_last) + with flashbulb + + her "Whoa!" ("soft", "base", "base", "down") + her "The strings disappeared!" ("soft", "happy", "base", "mid") + gen "Convenient..." ("base", xpos="far_left", ypos="head") + her "Is that everything, then?" ("open", "base", "base", "R") + gen "Yes, [hermione_name]... That shall do for today." ("base", xpos="far_left", ypos="head") + + if her_whoring < 19: + $ gryffindor += current_payout + gen "{number=current_payout} points to Gryffindor, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + + if not her_neckwear_flasher_collar.unlocked: + $ her_neckwear_flasher_collar.unlock() + gen "You may keep that collar by the way." ("base", xpos="far_left", ypos="head") + her "Really?" ("open", "base", "base", "mid", cheeks="blush") + + if her_whoring < 19: + her "What if I don't want it..." ("disgust", "narrow", "base", "R") + gen "We both know you want it." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "mid") + gen "I'll put it to the side for now..." ("base", xpos="far_left", ypos="head") + else: + gen "Certainly..." ("base", xpos="far_left", ypos="head") + her "Alright then..." ("open", "narrow", "base", "R", cheeks="blush") + her "Just let me know when you want me to put it on..." ("open", "closed", "base", "mid", cheeks="blush") + + call give_reward(">A new collar has been unlocked in the wardrobe!") + + if game.daytime: + her "Have a Good day." ("soft", "base", "base", "R", cheeks="blush") + gen "Good day... [hermione_name]." ("base", xpos="far_left", ypos="head") + else: + her "Have a Good night." ("soft", "base", "base", "R", cheeks="blush") + gen "Good night... [hermione_name]." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + jump end_hermione_event + +label good_girl_scene: + + call nar(">With a brief flash of light, the collar changes its form...") + + $ renpy.play("sounds/flashbang.ogg") + $ hermione.equip(her_neckwear_good_girl_collar) + $ hermione.strip("top") + with flashbulb + + gen "It says you're a Good girl." ("base", xpos="far_left", ypos="head") + + if her_whoring < 4: + her "Just as I thought..." ("grin", "closed", "base", "mid") + her "I am a model student after all." ("open", "closed", "base", "mid") + gen "(*Hmm*... The collar must be broken... I've been scammed!)" ("angry", xpos="far_left", ypos="head") + her "[genie_name]?" ("soft", "base", "base", "mid") + + elif her_whoring < 10: + her "That's nice." ("base", "squint", "worried", "mid") + her "Must be because of how I've been earning all these points for my house." ("open", "closed", "worried", "mid") + gen "Yep, I'm sure that's it..." ("base", xpos="far_left", ypos="head") + gen "(Such a waste of thirty points...)" ("base", xpos="far_left", ypos="head") + her "So... I put it on, can I have my--" ("soft", "base", "base", "mid") + gen "Yes, yes... You'll get your stupid points..." ("base", xpos="far_left", ypos="head") + + elif her_whoring < 19: + her "It does?" ("soft", "base", "base", "mid") + gen "Indeed it does... Guess there was nothing to be worried about." ("base", xpos="far_left", ypos="head") + her "Alright then..." ("base", "base", "worried", "R") + gen "{size=-4}Such a waste of points... Why did I get this stupid thing?{/size}" ("base", xpos="far_left", ypos="head") + + if hermione.is_any_worn("top", "bra"): + her "*Hmm*..." ("annoyed", "base", "base", "mid") + her "Well then... Before I go." ("open", "closed", "base", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "I thought that since you're paying me and all I should at least show you my breasts..." ("open", "closed", "base", "down") + gen "That seems fair." ("grin", xpos="far_left", ypos="head") + + stop music fadeout 1.0 + + $ hermione.strip("bra") + with d3 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause 2.0 + + if her_whoring < 13: + her "..." ("annoyed", "base", "base", "mid") + her "There you are then..." ("open", "base", "base", "R") + else: + her "Do you like them, [genie_name]." ("open", "base", "base", "mid", cheeks="blush") + gen "Do you even have to ask?" ("grin", xpos="far_left", ypos="head") + gen "Of course I do, they're great!" ("grin", xpos="far_left", ypos="head") + her "Thank you [genie_name]..." ("base", "closed", "base", "mid", cheeks="blush") + + call music_block + + else: #Not wearing either top nor bra + her "So... Am I still getting paid?" ("base", "base", "base", "mid") + her "I'm a bit confused..." ("base", "base", "base", "mid") + gen "Yes [hermione_name]... You'll get your points..." ("base", xpos="far_left", ypos="head") + + else: #19+ Not being paid. + her "Really, [genie_name]?" ("open", "wide", "worried", "mid") + gen "That's right! Must be because of all the things you've been doing to help your friends." ("base", xpos="far_left", ypos="head") + her "Thank heavens... I was so worried..." ("soft", "happyCl", "worried", "mid") + gen "Of course! Not everyone would have been able to achieve what you have..." ("base", xpos="far_left", ypos="head") + her "*sob*... I guess not..." ("angry", "base", "base", "mid", tears="soft") + gen "It takes some real strength and determination!" ("base", xpos="far_left", ypos="head") + her "You really think so [genie_name]?" ("soft", "narrow", "base", "down") + gen "I do! you're a good girl Miss Granger..." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + gen "Once Gryffindor wins the house cup almost everyone will be so happy." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]... I can't wait!" ("base", "happyCl", "base", "mid") + gen "*Sigh*" ("base", xpos="far_left", ypos="head") # Genie sighs because he was hoping that Hermione would present herself or something because the collar did nothing. + her "Is something the matter, [genie_name]?" ("base", "happyCl", "base", "mid") + gen "It's nothing. Don't worry about it." ("base", xpos="far_left", ypos="head") + + if her_whoring < 19: + $ gryffindor += current_payout + gen "{number=current_payout} points to Gryffindor, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("base", "happy", "base", "mid") + + ## End section ## + + her "Is that everything, [genie_name]?" ("base", "base", "base", "mid") + gen "Yes, that shall do for today..." ("base", xpos="far_left", ypos="head") + her "Alright then." ("base", "base", "base", "R") + + $ hermione.equip(her_outfit_last) + with fade + + if not her_neckwear_good_girl_collar.unlocked: + $ her_neckwear_good_girl_collar.unlock() + + gen "Oh... You can keep that collar by the way..." ("base", xpos="far_left", ypos="head") + her "Really?" ("open", "base", "base", "mid") + gen "Yeah, sure, Why not... Should give me a good reminder to be more careful making decisions..." ("base", xpos="far_left", ypos="head") + gen "(Maybe I should sell her some more favours until I give her another one...)" ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]..." ("base", "base", "base", "mid") + gen "(At least I can enjoy watching her wearing it...)" ("base", xpos="far_left", ypos="head") + her "Just let me know if you need anything." ("open", "happy", "base", "mid") + + call give_reward(">A new collar has been unlocked in the wardrobe!") + + if game.daytime: + her "Have a Good day." ("grin", "base", "base", "mid") + else: + her "Have a Good night." ("grin", "base", "base", "mid") + gen "You too [hermione_name]." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/events/jobs.rpy b/game/scripts/characters/hermione/events/jobs.rpy new file mode 100644 index 00000000..38ce2de1 --- /dev/null +++ b/game/scripts/characters/hermione/events/jobs.rpy @@ -0,0 +1,930 @@ + +# Maid Job +label job_1: + + default maid_intro_done = False + + show screen blkfade + with d3 + hide hermione_main + pause .8 + hide screen blkfade + with d5 + + + if not maid_intro_done: + $ maid_intro_done = True + gen "I think it's about time we got someone to clean up this place." ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("open", "squint", "base", "mid", xpos="right", ypos="base", trans=dissolve) + gen "Don't you think it's about time that someone set a good example and cleaned up this castle?" ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "Finally you've come to your senses..." ("base", "closed", "base", "mid") + her "Of course I'll help!" ("base", "base", "base", "mid") + gen "Great, then I've got this maids outfit for you!" ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "down") + her "What is this?!" ("clench", "squint", "base", "down") + gen "A Maid outfit!" ("base", xpos="far_left", ypos="head") + gen "You'll need it for the cleaning you're about to do." ("base", xpos="far_left", ypos="head") + her "[genie_name], this isn't what I thought you meant..." ("disgust", "squint", "base", "mid") + gen "You'll get paid in points of course..." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("upset", "narrow", "base", "R") + gen "And I suppose you'll technically be working for me so you can get paid for your work..." ("base", xpos="far_left", ypos="head") + her "That's good I suppose..." ("open", "squint", "base", "R") + gen "Although I'm technically not supposed to hire students so I'll have to hold on to your payment for now." ("base", xpos="far_left", ypos="head") + her "Right..." ("angry", "squint", "base", "mid") + gen "So... You'll do it?" ("base", xpos="far_left", ypos="head") + her "I suppose I could..." ("normal", "squint", "base", "R") + gen "Great!" ("base", xpos="far_left", ypos="head") + gen "Return here in the evening to drop of your payment and tell me how it went." ("base", xpos="far_left", ypos="head") + if not is_in_lead(gryffindor): + her "Alright..." ("open", "base", "base", "mid") + her "Let me just put this on..." ("angry", "squint", "base", "mid") + else: #Gryffindor is in the lead + her "Oh, you want me to do it now?" ("open", "squint", "base", "mid") + gen "Of course, why else would I bring it up?" ("base", xpos="far_left", ypos="head") + her "But... We're in the lead right now." ("angry", "base", "base", "mid") + gen "So?" ("base", xpos="far_left", ypos="head") + her "So... There's no need for me to earn any points at the moment." ("grin", "base", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + + hide hermione_main + with d3 + + call tutorial("points") + + jump working_menu + elif her_whoring < 13: + her "Cleaned up, [genie_name]?" ("angry", "base", "base", "mid") + gen "Yes, so you better put this on..." ("base", xpos="far_left", ypos="head") + her "A maid outfit?" ("angry", "narrow", "base", "down") + her "Of course this is what you meant..." ("angry", "narrow", "base", "mid") + gen "You'll get paid in points of course." ("base", xpos="far_left", ypos="head") + her "*Hmm*...{w=0.4} Alright, In that case I suppose I could do it." ("angry", "closed", "base", "mid") + gen "Excellent... Although you'll have to return any monetary payments to me." ("base", xpos="far_left", ypos="head") + her "I do?" ("clench", "base", "base", "mid") + gen "You think I could just hire students to do these things?" ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("angry", "base", "base", "mid") + gen "No, I think it'd be best if I held onto it for now." ("base", xpos="far_left", ypos="head") + her "Right..." ("open", "base", "base", "mid") + gen "Return here in the evening to drop of your payment and tell me how it went." ("base", xpos="far_left", ypos="head") + if not is_in_lead(gryffindor): + her "Alright..." ("open", "squint", "base", "R") + her "Let me just put this on..." ("angry", "squint", "base", "mid") + else: #Gryffindor is in the lead + her "Oh, you want me to do it now?" ("open", "squint", "base", "mid") + gen "Of course, why else would I bring it up?" ("base", xpos="far_left", ypos="head") + her "But... We're in the lead right now." ("angry", "base", "base", "mid") + gen "So?" ("base", xpos="far_left", ypos="head") + her "So... There's no need for me to earn any points at the moment." ("grin", "base", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + hide hermione_main + with d3 + + call tutorial("points") + + jump working_menu + else: #13+ + her "I'm not sure what you." ("angry", "base", "base", "mid") + gen "I want you to put this on!" ("base", xpos="far_left", ypos="head") + her "A maid outfit?" ("angry", "narrow", "base", "down", cheeks="blush") + gen "Yep!" ("base", xpos="far_left", ypos="head") + gen "You'll get paid in points of course." ("base", xpos="far_left", ypos="head") + her "*Hmm*... Why not... This castle could use some cleaning where the house elves can't reach." ("open", "closed", "base", "mid", cheeks="blush") + gen "That's the spirit!" ("base", xpos="far_left", ypos="head") + gen "Just make sure you return here in the evening to give me your payments and tell me how it went." ("base", xpos="far_left", ypos="head") + her "Give you my what?" ("open", "base", "base", "mid", cheeks="blush") + gen "Payments." ("base", xpos="far_left", ypos="head") + gen "This will have to stay off the books so I'll have to hold onto it for now." ("base", xpos="far_left", ypos="head") + her "Oh... Right..." ("open", "closed", "base", "mid", cheeks="blush") + if her_whoring >= 16: + her "Let me just put this on..." ("angry", "base", "base", "mid", cheeks="blush") + else: + if not is_in_lead(gryffindor): + her "Let me just put this on..." ("angry", "base", "base", "mid", cheeks="blush") + else: #Gryffindor in the lead + her "Oh, you want me to do it now?" ("open", "squint", "base", "mid") + gen "Of course, why else would I bring it up?" ("base", xpos="far_left", ypos="head") + her "But... We're in the lead right now." ("angry", "base", "base", "mid") + gen "So?" ("base", xpos="far_left", ypos="head") + her "So... There's no need for me to earn any points at the moment." ("grin", "base", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + hide hermione_main + with d3 + + call tutorial("points") + + jump working_menu + + else: + $ random_number = renpy.random.randint(1, 4) + + if random_number == 1: + gen "I'd like you to go out and make me some money... *Err*... I mean go out and earn some points." ("base", xpos="far_left", ypos="head") + elif random_number == 2: + gen "Time to earn some more points for your house, [hermione_name]..." ("base", xpos="far_left", ypos="head") + elif random_number == 3: + gen "Time for you to head out and help clean the castle." ("base", xpos="far_left", ypos="head") + elif random_number == 4: + gen "I've got a feather duster with your name on it, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Put this on for me will you?" ("base", xpos="far_left", ypos="head") + + if her_whoring < 4: + if not is_in_lead(gryffindor): + her "*Humph!*..." ("upset", "base", "annoyed", "mid", xpos="right", ypos="base", trans=dissolve) + else: + her "No thank you, [genie_name]." ("open", "squint", "base", "mid", xpos="right", ypos="base", trans=dissolve) + gen "What do you mean, no?" ("angry", xpos="far_left", ypos="head") + her "We're in the lead right now... There's no need for me to earn any points at the moment." ("grin", "base", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + hide hermione_main + with d3 + + call tutorial("points") + + jump working_menu + elif her_whoring < 16: + if not is_in_lead(gryffindor): + her "Alright..." ("angry", "base", "base", "mid", xpos="right", ypos="base", trans=dissolve) + else: + her "We're in the lead right now... There's no need for me to earn any points at the moment." ("grin", "base", "base", "mid", xpos="right", ypos="base", trans=dissolve) + gen "Right..." ("base", xpos="far_left", ypos="head") + hide hermione_main + with d3 + + call tutorial("points") + + jump working_menu + elif her_whoring < 22: + her "Of course, [genie_name]..." ("base", "squint", "base", "mid", xpos="right", ypos="base", trans=dissolve) + else: #22+ + her "As you wish, [genie_name]." ("base", "base", "base", "mid",xpos="right",ypos="base", trans=dissolve) + + show screen blkfade + with d5 + + # Setup + $ maid_outfit_ITEM.used = True + call play_sound("equip_inventory") + $ her_outfit_last.save() + $ hermione.equip(her_outfit_maid) + hide hermione_main + pause 2.5 + hide screen blkfade + with d5 + + + gen "Off you go then..." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + $ hermione_busy = True + $ current_job = "maid" + + jump main_room_menu + +label maid_responses: + $ payment = renpy.random.randint(10, 25) + + call her_walk(action="enter", xpos="mid", ypos="base") + + + $ random_number = renpy.random.randint(1, 3) + + menu: + "\"How was your day?\"": + if her_whoring < 4: + if random_number == 1: + her "Do I really have to keep doing this?" ("normal", "narrow", "base", "R_soft", xpos="right", ypos="base", trans=dissolve) + gen "What do you mean, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "It's so degrading... I had to clean other students dorms!" ("open", "narrow", "worried", "down") + gen "You can stop any time." ("base", xpos="far_left", ypos="head") + her "I can?" ("soft", "narrow", "worried", "mid_soft") + gen "Certainly, I'll just get one of those Slytherin floozies that you are always on about." ("grin", xpos="far_left", ypos="head") + gen "I'm sure that they'd jump at the chance to make some points for their house." ("base", xpos="far_left", ypos="head") + gen "They'd probably even do it for next to nothing, if not free." ("base", xpos="far_left", ypos="head") + her "Fine, I get your point...." ("upset", "closed", "base", "mid") + her "Can I get my points now?" ("angry", "closed", "angry", "mid") + gen "Certainly, ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif random_number == 2: + her "I think you need to start enforcing harsher punishment for sexual harassment." ("mad", "base", "angry", "mid", xpos="right", ypos="base", trans=dissolve) + gen "Why's that?" ("base", xpos="far_left", ypos="head") + her "Some Slytherin boys kept wolf whistling at me as I was scrubbing the floors." ("mad", "base", "angry", "mid") + gen "Just see it as a compliment [hermione_name]." ("base", xpos="far_left", ypos="head") + her "As if any Slytherin would be capable of such a thing... They're just doing it to embarrass me." ("mad", "base", "angry", "mid") + gen "Whatever you say [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "*Hmph*...{w=0.4} Can I get my points now?" ("angry", "closed", "angry", "mid") + gen "Certainly, ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif random_number == 3: + her "Dreadful... Peeves kept blowing air underneath my skirt!" ("clench", "narrow", "base", "down", xpos="right", ypos="base", trans=dissolve) + gen "Who?" ("base", xpos="far_left", ypos="head") + her "That da--{w=0.3} That poltergeist!" ("angry", "closed", "annoyed", "mid") + her "It's bad enough that I had to clean the corridors..." ("upset", "happy", "annoyed", "mid") + her "But the fact that he's able to do that thanks to this dress..." ("clench", "closed", "base", "mid", cheeks="blush") + gen "Doesn't your regular uniform have a skirt?" ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "squint", "base", "mid") + her "Can I have my points now?" ("clench", "narrow", "base", "R") + gen "Of course... Ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif her_whoring < 13: + if random_number == 1: + her "It was as normal a day of cleaning rooms could be." ("open", "base", "base", "mid", xpos="right", ypos="base", trans=dissolve) + her "Although considering that I'm supposed to be in class during the day I guess it's not that normal." ("soft", "base", "base", "R") + gen "Don't worry [hermione_name], you'll get your points." ("base", xpos="far_left", ypos="head") + gen "Just think of how happy your friends will be when they win the house cup this year." ("base", xpos="far_left", ypos="head") + her "I suppose..." ("open", "base", "base", "R") + gen "Ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif random_number == 2: + her "It was fine I suppose..." ("soft", "base", "base", "R", xpos="right", ypos="base", trans=dissolve) + gen "Nothing else to tell me? What were you tasked to do today?" ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("open", "narrow", "base", "down") + her "Well I was tasked to clean the boys changing room..." ("angry", "closed", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + her "They really should've told me when... How am I supposed to know when they're not using it?" ("clench", "narrow", "base", "down") + gen "Ten points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "..." ("angry", "base", "base", "mid") + elif random_number == 3: + her "Professor Snape had me sort his potion ingredients all day..." ("open", "narrow", "base", "mid", xpos="right", ypos="base", trans=dissolve) + gen "Doesn't sound too bad..." ("base", xpos="far_left", ypos="head") + her "He asked me to put everything on the highest shelves..." ("disgust", "narrow", "base", "mid") + her "When I asked him why he told me not to question his organization system..." ("angry", "narrow", "base", "mid") + her "As if he had one to begin with... He was probably just wanted a look up my skirt." ("open", "closed", "annoyed", "mid") + her "..." ("upset", "narrow", "base", "mid") + her "Can I have my points now?" ("angry", "narrow", "base", "mid") + gen "Of course... Ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif her_whoring < 22: + if random_number == 1: + her "It's was pretty uneventful." ("open", "base", "base", "R", xpos="right", ypos="base", trans=dissolve) + her "I suppose I should feel more annoyed by the other students staring at me but it doesn't bother me that much." ("open", "base", "base", "R") + gen "Good to hear." ("base", xpos="far_left", ypos="head") + her "I am helping the school after all..." ("base", "closed", "base", "mid") + gen "That you are... Ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif random_number == 2: + her "I had to dust all the shelves in the library today." ("open", "closed", "base", "mid", xpos="right", ypos="base", trans=dissolve) + gen "That doesn't sound too bad..." ("base", xpos="far_left", ypos="head") + her "Well I got yelled at by Miss Pince for no reason." ("upset", "squint", "base", "mid") + her "She kept telling me that the other students needed to work on their studies and that I kept distracting them." ("clench", "narrow", "base", "mid") + her "Yet she didn't tell me to stop cleaning..." ("annoyed", "narrow", "base", "mid") + gen "Sound like a job well done to me... Ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "squint", "base", "mid") + elif random_number == 3: + her "Pretty uneventful." ("open", "base", "base", "R", xpos="right", ypos="base", trans=dissolve) + her "I cleaned the prefects bathroom today so not really many people around." ("soft", "base", "base", "mid") + her "Although one of the mermaid portraits kept blowing me kisses." ("open", "squint", "base", "R", cheeks="blush") + gen "Was she attractive?" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "squint", "base", "mid", cheeks="blush") + her "As attractive as a mermaid can be I suppose..." ("normal", "squint", "base", "mid", cheeks="blush") + gen "Nicely done... Ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + else: #22+ + if random_number == 1: + her "It was fine... I cleaned the staffroom today..." ("open", "closed", "base", "mid", cheeks="blush", xpos="right", ypos="base", trans=dissolve) + her "Professor Snape seemed to think it was really funny to have me Scourgify his robes constantly as he continued spilling tea on himself..." ("angry", "narrow", "base", "R", cheeks="blush") + gen "Well I suppose that comes with the job." ("base", xpos="far_left", ypos="head") + her "That's what he said..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "Ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif random_number == 2: + her "Good, although I didn't really get much work done today." ("open", "narrow", "base", "R", xpos="right", ypos="base", trans=dissolve) + gen "Oh...{w=0.4} Why's that?" ("base", xpos="far_left", ypos="head") + her "Well...{w=0.4} I was asked to help the house elves and every time I started doing something one of them would come and do it for me." ("angry", "squint", "base", "mid") + her "Constantly apologizing for not having done it yet and bowing to me..." ("open", "narrow", "base", "mid") + gen "(Uh-oh...)" ("base", xpos="far_left", ypos="head") + her "It was kind of cute to be honest." ("base", "squint", "base", "R", cheeks="blush") + gen "Well then, I assume you still got paid?" ("base", xpos="far_left", ypos="head") + her "Oh...{w=0.4} Yes [genie_name]..." ("angry", "base", "base", "mid", cheeks="blush") + gen "Great! Ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif random_number == 3: + gen "Tell me what you've been doing." ("base", xpos="far_left", ypos="head") + her "I've been cleaning professor Tonks' office..." ("open", "base", "base", "mid", cheeks="blush", xpos="right", ypos="base", trans=dissolve) + her "The things she keeps in there..." ("angry", "narrow", "base", "down", cheeks="blush") + her "Why I hope none the other students get detention with her." ("open", "closed", "base", "mid", cheeks="blush") + gen "Found anything interesting?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Not sure if she'd like it if I told you..." ("angry", "narrow", "base", "R", cheeks="blush") + gen "(As if I couldn't already guess...)" ("base", xpos="far_left", ypos="head") + gen "Ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + + "-Dismiss her-": + her "Here's your payment." ("base", "base", "base", "mid") + ">You receive {number=payment} gold coins." + gen "Well done [hermione_name], ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + + her "Thank you, [genie_name]." + + $ gryffindor+= 10 + $ game.gold += payment + + call her_walk(action="leave") + + $ hermione.equip(her_outfit_last) + + $ hermione_busy = True + $ current_job = None + + jump main_room_menu + +# Barmaid Job +label job_2: + if her_whoring <= 6: + her "*Humph*!..." + elif her_whoring >=7 and her_whoring <= 15: + her "Yes [genie_name]..." + else: + her "As you wish [genie_name]." + + show screen blkfade + with d5 + # Setup + call play_sound("equip_inventory") + $ her_outfit_last.save() + $ hermione.equip(her_outfit_maid) + pause 2.5 + hide screen blkfade + with d5 + + her "" ("base", "base", "base", "mid",xpos="right",ypos="base",trans=fade) + pause.8 + + gen "Off you go then..." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + $ hermione_busy = True + $ current_job = "barmaid" + + jump main_room_menu + +label barmaid_responses: + $ payment = renpy.random.randint(20, 50) + + call her_walk(action="enter", xpos="mid", ypos="base") + + her "" ("base", "base", "base", "mid",xpos="right",ypos="base") + pause.5 + + menu: + "\"How was your day?\"": + her "Fine..." + gen "Anything unusual happen?" ("base", xpos="far_left", ypos="head") + her "Not really, I just served people drinks." + gen "Well in that case ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name], here's your payment." + "-Dismiss her-": + her "Here's your payment." + ">You receive {number=payment} gold coins." + gen "Well done [hermione_name], ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + + her "Thank you, [genie_name]." + + $ gryffindor+= 20 + $ game.gold += payment + + call her_walk(action="leave") + + $ hermione.equip(her_outfit_last) + + $ hermione_busy = True + $ current_job = None + jump main_room_menu + +# Gryffindor Cheerleader Job (Needs outfit) +label job_3: + if her_whoring <= 6: + her "*Humph*!..." + elif her_whoring <= 15: + her "Yes, [genie_name]..." ("normal", "base", "base", "R") + else: + her "As you wish, [genie_name]." ("open", "base", "base", "mid") + + show screen blkfade + with d5 + call play_sound("equip_inventory") + pause 2.5 + $ her_outfit_last.save() # Store current outfit. + if her_outfit_cheerleader_2.unlocked and her_whoring >= 11: #Sexy + $ hermione.equip(her_outfit_cheerleader_2) + else: #Normal + $ hermione.equip(her_outfit_cheerleader_1) + hide screen blkfade + with d5 + + her "" ("base", "base", "base", "mid",xpos="right",ypos="base",trans=fade) + pause.8 + + gen "You look great!" ("grin", xpos="far_left", ypos="head") + her "Thank you..." ("base", "happyCl", "base", "mid") + gen "Off you go then..." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + $ hermione.equip(her_outfit_last) + + $ hermione_busy = True + $ current_job = "gryffindor_cheerleader" + + jump main_room_menu + +label gryffindor_cheer_responses: + $ payment = renpy.random.randint(40, 80) + + call her_walk(action="enter", xpos="mid", ypos="base") + + $ her_outfit_last.save() # Store current outfit. + if her_outfit_cheerleader_2.unlocked and her_whoring >= 11: #Sexy + $ hermione.equip(her_outfit_cheerleader_2) + else: #Normal + $ hermione.equip(her_outfit_cheerleader_1) + + her "" ("base", "base", "base", "mid",xpos="right",ypos="base") + pause.5 + + $ random_number = renpy.random.randint(0, 10) + + menu: + "\"How was your day?\"": + if random_number <= 2: + her "It was good [genie_name], I think that the team morale has really started to go up." ("base", "base", "base", "mid") + gen "How so?" ("base", xpos="far_left", ypos="head") + her "Well, since I've started they seem to have improved their tactics." ("open", "base", "base", "mid") + her "They also seem much happier. Harry is always looking at me with a smile on his face." ("base", "base", "base", "mid") + gen "And does he look at you a lot?" ("base", xpos="far_left", ypos="head") + her "Of course he does, we're good friends." ("open", "base", "base", "mid") + gen "\"I'm sure that must be the reason\"..." ("base", xpos="far_left", ypos="head") + her "Well here's the money, [genie_name]." ("base", "base", "base", "mid") + ">You receive [payment] gold coins." + gen "Well done, [hermione_name], ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif random_number >= 3 and random_number <= 5: + her "Tiring. This cheering thing really is quite exhausting." ("open", "base", "worried", "mid") + gen "Anything interesting happen?" ("base", xpos="far_left", ypos="head") + her "Not unless you count me almost dropping my pom-pom." ("normal", "base", "base", "mid") + gen "I don't... Well, did they pay you?" ("base", xpos="far_left", ypos="head") + her "Of course, here you are [genie_name]." ("open", "base", "base", "mid") + ">You receive [payment] gold coins." + gen "Well done [hermione_name], ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif random_number >= 6 and random_number <= 8: + her "Very well thank you, all the boys said that I helped keep their spirits up." ("open", "base", "base", "mid") + gen "{size=-5}I'm sure that wasn't the only thing you've helped stay up...{/size}" ("base", xpos="far_left", ypos="head") + her "What was that [genie_name]?" ("open", "squint", "base", "mid") + gen "I was just saying that I'm sure you did a stand up job." ("base", xpos="far_left", ypos="head") + her "I think so..." ("base", "happyCl", "base", "mid") + gen "Well, did they pay you for raising their \"spirits\"?" ("base", xpos="far_left", ypos="head") + her "Of course they did." ("open", "base", "base", "mid") + ">You receive [payment] gold coins." + gen "Well done [hermione_name], ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif random_number >=9 and her_reputation <= 15: + gen "You seem very chipper today." ("base", xpos="far_left", ypos="head") + her "Of course I am, we won!" ("base", "base", "base", "mid") + gen "Won?" ("base", xpos="far_left", ypos="head") + her "We won! We beat Slytherin in a practice match." ("smile", "happyCl", "base", "mid") + gen "You seem a little bit overexcited for just a practice match." ("base", xpos="far_left", ypos="head") + her "Well it was such a great game. Not to mention that we got to rub it in those Slytherin students faces afterwards." ("smile", "base", "base", "R") + gen "Well I'm glad that you are enjoying your work." ("grin", xpos="far_left", ypos="head") + her "I am [genie_name]. Given that most of the \"work\" I've done to help my house is kept private, it feels good to be able to do something public once." ("open", "base", "base", "mid") + gen "Not to mention you get paid for it..." ("base", xpos="far_left", ypos="head") + her "Oh, right, Here you are..." ("soft", "base", "base", "R") + ">You receive [payment] gold coins." + gen "Well done [hermione_name], ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + else: + her "We won! We managed to beat Slytherin." ("base", "base", "base", "mid") + gen "That must have been very exhilarating. I'm sure your cheering gave the extra motivation needed to win." ("base", xpos="far_left", ypos="head") + her "I think it did [genie_name]. They were all very excited to receive their reward for winning the game." ("base", "happyCl", "base", "mid") + + menu: + "-Reward?-": + gen "What reward did you promise them?" ("base", xpos="far_left", ypos="head") + her "Well I was quite keen to ensure our victory against Slytherin that I may have promised that I would give each of them a blowjob if they won." ("grin", "base", "base", "R") + gen "You gave every team member a blowjob after the game?" ("base", xpos="far_left", ypos="head") + her "And the water boy..." ("smile", "narrow", "base", "mid_soft") + gen "How did you even manage that? Did have to crawl around the locker room on your knees?" ("base", xpos="far_left", ypos="head") + her "Of course not, they all patiently waited on their turn..." ("scream", "closed", "angry", "mid") + gen "Who doesn't love a queue..." ("base", xpos="far_left", ypos="head") + gen "So they queued up... And then?" ("base", xpos="far_left", ypos="head") + her "Well I did what I said I would, I'm not the kind of person to lie am I?" ("annoyed", "base", "worried", "R") + her "So, I gave them the reward I promised... And surely you of all people would know how a blowjob works." ("annoyed", "happy", "base", "R") + gen "That's not quite what I meant." ("base", xpos="far_left", ypos="head") + gen "You just look rather..." ("base", xpos="far_left", ypos="head") + gen "Clean, that's all." ("base", xpos="far_left", ypos="head") + her "Oh, well..." ("base", "narrow", "worried", "down",cheeks="blush") + her "I didn't want to make a mess." ("soft", "narrow", "base", "down",cheeks="blush") + her "Anyhow, I'm glad I did it. I can't wait to rub it in Astoria's face tomorrow..." ("smile", "base", "base", "mid") + gen "I'm glad you think it was worth it. Did they pay you?" ("base", xpos="far_left", ypos="head") + "-Okay-": + gen "I'm sure it was worth it. Did they pay you?" ("base", xpos="far_left", ypos="head") + + her "Of course they did [genie_name], here you are." + gen "Well done [hermione_name], ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + + "-Dismiss her-": + her "Here's your payment [genie_name]." ("soft", "base", "base", "R") + gen "Well done [hermione_name], ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + + her "Thank you, [genie_name]." ("base", "happyCl", "base", "mid") + ">You receive [payment] gold coins." + $ gryffindor+= 20 + $ game.gold += payment + + call her_walk(action="leave") + + $ hermione.equip(her_outfit_last) + + $ hermione_busy = True + $ current_job = None + jump main_room_menu + + + +# Slytherin Cheerleader Job +label job_4: + if her_whoring <= 6: + her "*Humph*!..." + elif her_whoring >=7 and her_whoring <= 15: + her "Yes, [genie_name]..." + else: + her "As you wish, [genie_name]." + + show screen blkfade + with d5 + call play_sound("equip_inventory") + pause 2.5 + $ her_outfit_last.save() # Store current outfit. + if her_outfit_cheerleader_2.unlocked and her_whoring >= 11: #Sexy + $ hermione.equip(her_outfit_cheerleader_2) + else: #Normal + $ hermione.equip(her_outfit_cheerleader_1) + hide screen blkfade + with d5 + + + her "" ("base", "base", "base", "mid",xpos="right",ypos="base",trans=fade) + pause.8 + + gen "You look incredible!" ("angry", xpos="far_left", ypos="head") + her "Thank you..." ("base", "happyCl", "base", "mid") + gen "Off you go then..." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + $ hermione.equip(her_outfit_last) + + $ hermione_busy = True + $ current_job = "slytherin_cheerleader" + + call music_block + jump main_room_menu + +label slytherin_cheer_responses: + $ payment = renpy.random.randint(50, 100) + + call her_walk(action="enter", xpos="mid", ypos="base") + + $ her_outfit_last.save() # Store current outfit. + if her_outfit_cheerleader_2.unlocked and her_whoring >= 11: #Sexy + $ hermione.equip(her_outfit_cheerleader_2) + else: #Normal + $ hermione.equip(her_outfit_cheerleader_1) + + $ random_number = renpy.random.randint(0, 10) + + if random_number >=9 and her_reputation > 15: + $ uni_sperm = True + her "" ("base", "narrow", "base", "up",xpos="right",ypos="base") + else: + her "" ("base", "base", "base", "mid",xpos="right",ypos="base") + pause.5 + + menu: + "-Ask her about her day-": + if random_number <= 2: + gen "How was your day today [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Exhausting... Those Slytherin pigs insisted that I cheer for their entire practice session." ("open", "closed", "angry", "mid") + her "They were hardly playing the game by the end. They were just standing there watching me." + gen "Well what was your routine?" ("base", xpos="far_left", ypos="head") + her "Mostly star jumps while I cheered \"Go Slytherin!\"." ("annoyed", "squint", "angry", "mid") + gen "So you were just jumping up and down? That doesn't seem like a very intricate cheer." ("base", xpos="far_left", ypos="head") + her "It isn't but it's what they insisted I do." ("annoyed", "narrow", "angry", "R") + gen "Well it definitely sounds like you earned your points." ("base", xpos="far_left", ypos="head") + gen "Thirty points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif random_number >= 3 and random_number <= 5: + gen "How was your day today [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Uneventful. I completed my routine and then went back to my room..." ("open", "squint", "base", "mid") + gen "You didn't talk to anyone?" ("base", xpos="far_left", ypos="head") + her "I make a point of trying to avoid Slytherin student as best I can." ("annoyed", "narrow", "angry", "R") + gen "Are they really that unbearable?" ("base", xpos="far_left", ypos="head") + her "Yes..." ("open", "closed", "angry", "mid") + gen "Well, you earned your points." ("base", xpos="far_left", ypos="head") + gen "Thirty points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif random_number >= 6 and random_number <= 8: + gen "Hello [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Hello [genie_name]." ("normal", "base", "base", "mid") + gen "How did everything go today?" ("base", xpos="far_left", ypos="head") + her "Very well. In fact I think I might be doing too well." ("annoyed", "base", "worried", "R") + gen "How so?" ("base", xpos="far_left", ypos="head") + her "I think that my cheering is having too much of an positive effect." ("open", "base", "worried", "mid") + her "I'm not sure that I want the Slytherin team to improve, let alone because of me..." ("open", "base", "worried", "R") + gen "Just think about how you're helping your house in other ways." ("base", xpos="far_left", ypos="head") + her "I suppose you're right [genie_name]." ("open", "base", "base", "mid") + gen "Of course I am... Now, did they pay you?" ("base", xpos="far_left", ypos="head") + her "Yes [genie_name]." ("base", "base", "base", "mid") + gen "Well done [hermione_name], twenty points to Gryffindor." ("base", xpos="far_left", ypos="head") + elif random_number >=9 and her_reputation > 15: + her "[genie_name], something must be done about those Slytherin boys..." ("open", "closed", "angry", "mid") + her "It's bad enough that I have to cheer for them but they are being a little bit touchy." ("annoyed", "narrow", "angry", "R") + gen "Touchy?" ("base", xpos="far_left", ypos="head") + her "Yes, they keep groping me. It's highly inappropriate and it interrupts my routine." ("scream", "closed", "angry", "mid") + gen "You kept dancing while they groped you?" ("base", xpos="far_left", ypos="head") + her "Of course, I'm there to complete a job. I'm not getting distracted just because of a few boys." ("open", "closed", "angry", "mid") + gen "Well what would you have me do?" ("base", xpos="far_left", ypos="head") + her "Speak to Professor Snape, tell him to chastise them. They'll listen to him..." ("angry", "base", "angry", "mid") + gen "Very well, I'll speak to him. Although I'm not sure it will have the effect you're hoping for." ("base", xpos="far_left", ypos="head") + her "It better, otherwise I wont put my full effort into this..." ("normal", "squint", "angry", "mid") + gen "{size=-5}I'm sure that'll show them.{/size}" ("base", xpos="far_left", ypos="head") + her "What was that [genie_name]?" ("open", "squint", "base", "mid") + gen "Nothing [hermione_name], I'll speak to Professor Snape tonight..." ("base", xpos="far_left", ypos="head") + else:#Comes back with cum on her + gen "What the hell happened to you?" ("base", xpos="far_left", ypos="head") + her "I did my job [genie_name]." ("angry", "narrow", "base", "down") + gen "What are you talking about? You were supposed to be a cheerleader." ("base", xpos="far_left", ypos="head") + gen "You know, cheering..." ("base", xpos="far_left", ypos="head") + gen "And all that." ("base", xpos="far_left", ypos="head") + her "I am [genie_name]. I just performed a different type of cheer today." ("soft", "narrow", "annoyed", "up") + gen "And by that you mean jerking off the entire Slytherin team?" ("base", xpos="far_left", ypos="head") + her "Well that's not how it started. I was initially just giving them a bit of a dance in the locker room..." ("angry", "narrow", "base", "down") + her "And one thing led to another." + gen "Fine, I don't want to hear it. How much did they pay you for this \"cheering\"?" ("base", xpos="far_left", ypos="head") + her "Pay me?" ("silly", "narrow", "base", "dead") + gen "You are supposed to be paid for this [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Oh, I must have forgotten... Sorry [genie_name]." ("base", "base", "base", "R",cheeks="blush") + gen "Fine, but you aren't getting any points." ("base", xpos="far_left", ypos="head") + her "Of course [genie_name]. Will that be all?" ("base", "base", "base", "mid") + gen "Yes, you're free to go now." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("base", "narrow", "base", "mid_soft") + jump end_her_working_no_payment + "-Dismiss her-": + her "Here's your payment." ("open", "base", "base", "mid") + ">You receive [payment] gold coins." + gen "Well done [hermione_name], thirty points to Gryffindor." ("base", xpos="far_left", ypos="head") + + her "Thank you, [genie_name]." ("base", "narrow", "base", "mid_soft") + ">You receive [payment] gold coins." + $ gryffindor+= 30 + $ game.gold += payment + + label end_her_working_no_payment: + + call her_walk(action="leave") + + $ hermione.equip(her_outfit_last) + + $ hermione_busy = True + $ current_job = None + $ uni_sperm = False + + call music_block + jump main_room_menu + + +#Send Hermione to work, promoting the card game. + +label job_5: + + if first_time_cardgame_work: + gen "Alright then, I think it's time you go help the twins with their shop." ("base", xpos="far_left", ypos="head") + her "Sir... Why do you want me to help them exactly?" ("annoyed", "closed", "base", "mid") + gen "That is my business." ("grin", xpos="far_left", ypos="head") + her "What do you want me to tell them then?" ("open", "narrow", "worried", "mid_soft") + gen "Just ask them if they have a need for any help promoting their card game." ("base", xpos="far_left", ypos="head") + gen "If they're as business minded as I think, then there's no way they'd say no." ("grin", xpos="far_left", ypos="head") + gen "And make sure you ask them for payment." ("grin", xpos="far_left", ypos="head") + her "Fine..." ("base", "closed", "base", "mid") + her "I'll see you tonight." ("open", "base", "base", "mid") + gen "Forgetting something?" ("base", xpos="far_left", ypos="head") + her "*Hmm*?" ("annoyed", "base", "worried", "mid") + gen "Your uniform!" ("base", xpos="far_left", ypos="head") + gen "Here you are..." ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause 1 + + if her_whoring < 19: + # Failstate + her "I know I said I'd help them but you want me to wear... this?" ("open", "base", "angry", "mid") + gen "Of course, is that going to be a problem?" ("base", xpos="far_left", ypos="head") + her "Yes!" ("angry", "base", "angry", "mid") + her "I can't believe you've done this." + her "Did you have this commissioned?" ("open", "squint", "angry", "mid") + gen "The twins sold it to me..." ("base", xpos="far_left", ypos="head") + her "Of course they did..." + gen "So it's a--" ("base", xpos="far_left", ypos="head") + her "Of course it's a no!" ("shock", "base", "angry", "mid") + her "" ("angry", "base", "angry", "mid") + $ her_mood += 5 + jump working_menu + + $ first_time_cardgame_work = False + $random_choice = renpy.random.randint(0,3) + + if random_choice == 0: + her "Why are the cards placed like that?" ("mad", "narrow", "worried", "down") + her "..." ("normal", "happyCl", "worried", "mid", cheeks="blush") + her "Fine..." ("open", "narrow", "base", "down", cheeks="blush") + elif random_choice == 1: + her "..." ("normal", "base", "worried", "mid", cheeks="blush") + her "Well, if it stops you from deducting those points." ("open", "happyCl", "worried", "mid", cheeks="blush") + her "I'll do it." ("base", "wink", "base", "mid") + elif random_choice == 2: + her "It's a bit revealing... but I'll do it." ("smile","happy", cheeks="blush") + her "For Gryffindor house obviously!" ("open", "happyCl", "base", "mid", cheeks="blush") + else: + her "That doesn't leave a lot to the imagination..." ("smile", "happy", "base", "mid") + her "At least the straps should cover my nipples..." ("open", "wink", "base", "mid") + her "I'll do it..." ("normal","happy", cheeks="blush") + + + show screen blkfade + with d5 + call play_sound("equip_inventory") + pause 2.5 + + $ her_outfit_last.save() + $ hermione.equip(her_outfit_poker) + + hide screen blkfade + with d5 + gen "Looking great!" ("grin", xpos="far_left", ypos="head") + her "Thank you..." ("open","happy", cheeks="blush") + gen "Off you go then..." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + $ hermione_busy = True + $ current_job = "promoter" + + call music_block + jump main_room_menu + +label hermione_helping_selling_cards: + $ current_job = None + + call her_walk(action="enter", xpos="mid", ypos="base") + + $ random_choice = renpy.random.randint(1,4) + + if her_shop_help_first: + $ her_shop_help_first = False + her "" + gen "Hello, [hermione_name], how was your day?" ("base", xpos="far_left", ypos="head") + her "Good..." ("normal", "happy", "base", "mid") + her "I'm still not that comfortable wearing the outfit you provided though so I just stood behind the shop counter today." ("open", "closed", "base", "mid") + her "Apparently we sold a lot more items than usual though." ("base","happy", "base", "mid", cheeks="blush") + gen "Great news, I bet the twins are ecstatic." ("grin", xpos="far_left", ypos="head") + her "Indeed, It was nice seeing them in such high spirits." ("open", "happyCl", "base", "mid", cheeks="blush") + her "Whilst I might not agree with all their business methods I think they might become great salesmen some day." ("base", "happy", "base", "mid") + gen "Seems to me like they are already..." ("grin", xpos="far_left", ypos="head") + gen "So, how come you had such a surge in new customers?" ("base", xpos="far_left", ypos="head") + her "No idea, maybe the card game got more people interested in browsing the rest of their stock." ("annoyed", "happy", "base", "R") + her "They actually had some problems with people stealing things before I started working there though." ("open", "closed", "base", "mid") + gen "And this stopped after you started working there?" ("base", xpos="far_left", ypos="head") + her "Well, probably not because of it. They put in some anti thieving measures." ("base", "base", "base", "mid") + gen "Patent pending?" ("base", xpos="far_left", ypos="head") + her "It's pretty clever actually, they put up a mirror behind the counter so that when I have to turn around and grab something I'll be able to see if anyone takes anything." ("smile", "wink", "base", "mid") + gen "\"Yeah, I'm sure that's why they put the mirror there\"..." ("grin", xpos="far_left", ypos="head") + gen "Sounds like you're doing a great job." ("base", xpos="far_left", ypos="head") + her "Thanks!" ("open","happy", cheeks="blush") + her "Here's your payment." ("open", "base", "base", "mid") + call give_reward("You have received twenty gold", "interface/icons/gold.webp") + $ game.gold += 20 + gen "Well done [hermione_name], fifteen points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 15 + + if random_choice == 1: + her "" + gen "Hello, [hermione_name], how was your day?" ("base", xpos="far_left", ypos="head") + her "It was fine, the outfit is a bit chilly though." ("normal", "happy", "base", "mid_soft") + gen "So, no other complications?" ("base", xpos="far_left", ypos="head") + her "Well..." ("soft", "narrow", "worried", "down", cheeks="blush") + her "The twins asked me to give out some free promotional starter packs." ("open", "happy", "base", "mid", cheeks="blush") + gen "Yes?" ("base", xpos="far_left", ypos="head") + gen "Sounds like a great way to get people into playing..." ("base", xpos="far_left", ypos="head") + her "Well, I didn't have anywhere to store the packs as you could imagine." ("base", "narrow", "worried", "down", cheeks="blush") + her "So I had to resort to putting them behind my suspenders and the top of my stockings..." ("open", "closed", "base", "mid", cheeks="blush") + her "And one customer got a bit..." ("normal", "closed", "base", "mid", cheeks="blush") + her "Touchy." ("base", "narrow", "annoyed", "up", cheeks="blush") + gen "I see..." ("base", xpos="far_left", ypos="head") + her "I did get a bit agitated at one point actually..." ("open", "closed", "base", "mid", cheeks="blush") + gen "They didn't fire you did they?" ("angry", xpos="far_left", ypos="head") + her "No!" ("mad", "wide", "base", "mid") + her "The customer was quite apologetic actually and bought a bunch of things." ("smile", "closed", "angry", "mid") + her "The twins obviously took the credit for getting such a big sale and seemed rather pleased with themselves." ("crooked_smile", "narrow", "annoyed", "mid") + her "I'm fine with them believing they had anything to do with it though." ("smile", "closed", "base", "mid") + gen "How noble of you..." ("base", xpos="far_left", ypos="head") + her "Here's your payment." ("open", "base", "base", "mid") + call give_reward("You have received twenty gold", "interface/icons/gold.webp") + $ game.gold += 20 + gen "Well done [hermione_name], twenty points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 20 + elif random_choice == 2: + her "" + gen "Hello, [hermione_name], how was your day?" ("base", xpos="far_left", ypos="head") + her "Awful..." ("normal", "narrow", "worried", "down") + gen "Really, why is that?" ("base", xpos="far_left", ypos="head") + her "Well, I'm not actually angry..." ("open", "base", "base", "mid") + her "Just a bit annoyed, that's all." ("annoyed", "closed", "base", "mid") + gen "With?" ("base", xpos="far_left", ypos="head") + her "Myself..." ("open", "base", "worried", "R", cheeks="blush") + her "We've set up a practice day where you get to borrow a deck of cards to get more people into the game." ("normal", "happy", "base", "mid") + gen "Sounds like a good idea, get people invested." ("grin", xpos="far_left", ypos="head") + her "Well, that was fine and all until the amount of new people interested started to slow down." ("open", "narrow", "worried", "down") + gen "I see, so I expect the responsibility fell on you as you're the one meant to promote the game?" ("base", xpos="far_left", ypos="head") + her "Yes... I thought it was a great idea so if it ended up not working out then it would look very bad on my part." ("normal", "closed", "base", "mid") + gen "So, you had to stop the practice sessions?" ("base", xpos="far_left", ypos="head") + her "No, that's not why I'm annoyed..." ("annoyed", "happy", "base", "R") + her "In my haste to find a solution I thought it would be a great idea to play a few rounds of strip cards to get more people interested." ("open", "narrow", "base", "down", cheeks="blush") + her "..." ("angry", "closed", "angry", "mid", cheeks="blush") + her "I've played enough not to be beaten by a new player I thought." ("mad", "narrow", "angry", "R", cheeks="blush") + gen "Of course, you've played against me after all..." ("grin", xpos="far_left", ypos="head") + her "..." ("base", "base", "angry", "mid") + gen "Sorry, go on." ("base", xpos="far_left", ypos="head") + her "Well, I managed to get a bunch of people into the card game so practice day is still on the schedule." ("annoyed", "closed", "angry", "mid") + gen "That's good!" ("grin", xpos="far_left", ypos="head") + her "Though I might reconsider the whole strip card idea..." ("angry", "narrow", "worried", "down", cheeks="blush") + her "I lost pretty quickly..." ("normal", "closed", "base", "mid", cheeks="blush") + her "It turned out they had been cheating the whole time..." ("normal", "base", "base", "mid", cheeks="blush") + gen "Well, cheaters never prosper..." ("grin", xpos="far_left", ypos="head") + her "That's not true in this case... they prospered alright." ("open", "happy", "base", "R", cheeks="blush") + her "In any case, they seemed... happy, they bought a bunch of things so that makes me..." ("normal", "base", "base", "mid") + her "Happy as well..." ("angry", "closed", "base", "mid", cheeks="blush") + gen "A job well done then, I bet the twins are very grateful for your contribution." ("grin", xpos="far_left", ypos="head") + her "Thank you." ("annoyed", "happyCl", "base", "mid", cheeks="blush") + her "Anyway..." ("base", "base", "base", "mid") + her "Here's your payment." ("open", "base", "base", "mid") + call give_reward("You have received twenty gold", "interface/icons/gold.webp") + $ game.gold += 20 + gen "Well done [hermione_name], twenty points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 20 + elif random_choice == 3: + her "" + gen "Hello, [hermione_name], how was your day?" ("base", xpos="far_left", ypos="head") + her "Great, they held a card game tournament today." ("base", "base", "base", "mid") + gen "Wait, a tournament? How come I wasn't invited?" ("angry", xpos="far_left", ypos="head") + her "It was students only obviously..." ("open", "happy", "base", "R") + gen "Oh... of course." ("base", xpos="far_left", ypos="head") + her "There were way more participants than I expected seeing that there was an entry fee." ("base", "closed", "base", "mid", cheeks="blush") + gen "Must've been a great prize pool then..." ("base", xpos="far_left", ypos="head") + her "That's the weird thing. The prize pool only amounted to about half of the total entry fee amount." ("open", "base", "base", "mid") + her "Apparently... someone had gone around spreading the rumour that the winner would..." ("normal", "narrow", "worried", "down") + her "Get a go with me if they won the tournament..." ("annoyed", "narrow", "base", "down", cheeks="blush") + gen "And did they?" ("grin", xpos="far_left", ypos="head") + her "Of course that was never on the table..." ("base", "base", "angry", "mid", cheeks="blush") + gen "On a desk then?" ("grin", xpos="far_left", ypos="head") + her "Well..." ("annoyed", "base", "base", "mid", cheeks="blush") + her "The winner did end up standing there with such an expectant look on his face after everyone had left..." ("open", "narrow", "worried", "down", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + her "So I told him that whatever he was expecting it wasn't happening." ("angry", "narrow", "angry", "R", cheeks="blush") + her "He seemed so disheartened so I felt a bit bad about the whole thing..." ("open", "closed", "angry", "mid") + her "So, since I didn't want to bring his feeling of victory down I figured since some students had spread the rumour they'd assume the worst anyway..." ("open", "base", "angry", "mid", cheeks="blush") + her "So I put my hand down his pants and fiddled around a bit whilst letting the guy get a peek behind my suspenders." ("grin", "base", "angry", "mid", cheeks="blush") + gen "Good on you!" ("grin", xpos="far_left", ypos="head") + her "You don't think that was a bit much?" ("annoyed", "base", "base", "mid", cheeks="blush") + gen "No! That was the right thing to do in that situation." ("grin", xpos="far_left", ypos="head") + gen "There wasn't a lot you could do about the rumours even if nothing had happened he'd probably lie about it anyway." ("base", xpos="far_left", ypos="head") + gen "You most likely ended up making that guys night." ("grin", xpos="far_left", ypos="head") + her "More like month... seeing how much he..." ("open", "narrow", "worried", "down", cheeks="blush") + her "Anyway..." ("normal", "base", "base", "mid") + her "glad you agree." ("base", "happy", "base", "mid_soft") + her "Here's your payment." ("open", "base", "base", "mid") + call give_reward("You have received twenty gold", "interface/icons/gold.webp") + $ game.gold += 20 + gen "Well done [hermione_name], twenty points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 20 + else: + $ hermione.set_cum(hair="light") + her "" ("cum", "narrow", "base", "dead") + gen "What happened to you?" ("base", xpos="far_left", ypos="head") + her "What do you mean..." ("open", "narrow", "worried", "mid_soft") + her "Oh, that..." ("base", "narrow", "worried", "down", cheeks="blush") + gen "Yes, that..." ("base", xpos="far_left", ypos="head") + her "There's a good explanation for this." ("normal", "narrow", "base", "down", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Go on." ("base", xpos="far_left", ypos="head") + her "Oh, sorry... Well, I was trying out a new sales tactic..." ("open", "happy", "base", "R", cheeks="blush") + gen "Something the twins came up with I assume?" ("base", xpos="far_left", ypos="head") + her "No, I read about it in one of their books actually." ("grin", "happy", "base", "mid_soft") + her "Much like how you should always put the most lucrative cheap items at the counter to make the customer..." ("open", "base", "base", "mid") + gen "Get on with it." ("angry", xpos="far_left", ypos="head") + her "Fine..." ("annoyed", "narrow", "base", "R_soft", cheeks="blush") + her "I read that by putting the customer in a state of peace and happiness it would make them more susceptible to making hasty decisions." ("smile", "happyCl", "base", "mid", cheeks="blush") + gen "Didn't think you'd be interested in such... unorthodox sales tactics..." ("grin", xpos="far_left", ypos="head") + her "I was curious to see if it would work more than anything else." ("base", "closed", "base", "mid", cheeks="blush") + her "I tried it out to test the legitimacy of the claims in that book of theirs..." ("open", "base", "base", "mid") + gen "of course..." ("base", xpos="far_left", ypos="head") + gen "And how many times did you test this... theory of yours." ("base", xpos="far_left", ypos="head") + her "There's no conclusion to be made by just testing a theory once [genie_name]." ("normal", "closed", "angry", "mid") + her "Anyway..." ("open", "base", "base", "mid") + her "Here's your payment." ("open", "base", "base", "mid") + call give_reward("You have received twenty gold", "interface/icons/gold.webp") + $ game.gold += 20 + gen "Well done [hermione_name], twenty-five points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 25 + + her "Good night, [genie_name]." + call her_walk(action="leave") + + $ hermione.equip(her_outfit_last) + $ hermione.set_cum(None) + + call music_block + jump main_room_menu diff --git a/game/scripts/characters/hermione/events/potions/ass_expand.rpy b/game/scripts/characters/hermione/events/potions/ass_expand.rpy new file mode 100644 index 00000000..5bd68f50 --- /dev/null +++ b/game/scripts/characters/hermione/events/potions/ass_expand.rpy @@ -0,0 +1,1223 @@ + +default her_ass_expand_drank = False +default her_ass_expand_pub_done = False +default her_ass_expand_groped = False #Done private variant +default her_ass_expand_finger = False #Tried to finger her + +# Temp flag used to test against clothed character state, it is reset at the end of the event. +default her_ass_expand_no_clothes = False + +label potion_ass_make: + + call give_reward("You have successfully created a new potion!", ass_potion_ITEM) + + gen "There we go." ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/sniff.ogg") + gen "Smells pretty good!" ("base", xpos="far_left", ypos="head") + gen "I bet Hermione will love this one." ("base", xpos="far_left", ypos="head") + return + +label her_potion_ass_give: + + if hermione.is_worn("robe"): + gen "Before we begin... Why don't you take those robes off and make yourself comfortable." ("base", xpos="far_left", ypos="head") + her "Alright..." ("soft", "squint", "base", "mid") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe") + with d3 + gen "Now then..." ("base", xpos="far_left", ypos="head") + else: + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Yes [genie_name]?" ("open", "base", "base", "mid") + + $ current_payout = 20 + + gen "I've got a potion that I'd like you to try." ("base", xpos="far_left", ypos="head") + gen "For some house points of course..." ("base", xpos="far_left", ypos="head") + call nar(">You take out the potion and hand it to Hermione.") + call her_chibi("hold_potion","mid","base") + with d3 + + if not her_ass_expand_drank: + her "A potion?" ("soft", "squint", "base", "mid") + gen "Yep, a pretty powerful one at that." ("base", xpos="far_left", ypos="head") + if her_whoring < 19: + her "Is it dangerous?" ("disgust", "squint", "worried", "mid") + gen "Of course not!" ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("normal", "narrow", "base", "down") + her "If you say so." ("angry", "closed", "worried", "mid") + gen "So you'll drink it?" ("base", xpos="far_left", ypos="head") + her "I suppose... As long as you pay me." ("open", "narrow", "base", "down") + gen "Naturally..." ("base", xpos="far_left", ypos="head") + call nar(">Hermione takes a quizzical sniff of the potion before bringing it to her mouth.") + else: + her "*Hmm*... Powerful you say..." ("base", "narrow", "base", "down", cheeks="blush") + her "Alright then, let's have a taste." ("grin", "closed", "base", "mid") + gen "Great!" ("base", xpos="far_left", ypos="head") + her "" ("grin", "base", "base", "mid") + gen "Here you go!" ("base", xpos="far_left", ypos="head") + call nar(">Hermione takes a quick sniff of the potion before bringing it to her mouth...") + + call her_chibi("sniff_potion","mid","base") + pause 0.2 + $ renpy.sound.play("sounds/sniff.ogg") + pause 0.6 + call her_chibi("hold_potion","mid","base") + + gen "Bottoms up!" ("base", xpos="far_left", ypos="head") + else: #Drank + her "Another one? How do you have time to make these?" ("open", "squint", "base", "mid") + gen "Potion making is easy when you've been practicing for as long as I have." ("base", xpos="far_left", ypos="head") + her "I see..." ("soft", "squint", "base", "mid") + gen "Go on, I think you'll enjoy this one." ("base", xpos="far_left", ypos="head") + gen "Just have a whiff and see for yourself." ("base", xpos="far_left", ypos="head") + call nar(">Hermione takes a quick sniff of the potion.") + + call her_chibi("sniff_potion","mid","base") + pause 0.2 + $ renpy.sound.play("sounds/sniff.ogg") + pause 0.6 + call her_chibi("hold_potion","mid","base") + + her "Another butt expansion potion?" ("open", "squint", "base", "R", cheeks="blush") #Neutral face + gen "That's right." ("base", xpos="far_left", ypos="head") + if her_whoring < 19: + her "My butt looked ridiculous last time..." ("annoyed", "narrow", "base", "mid", cheeks="blush") + if her_ass_expand_groped: + gen "Well, that's a matter of opinion, [hermione_name]." ("base", xpos="far_left", ypos="head") + else: + gen "I'm sure it looked fine..." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("normal", "narrow", "base", "down") + gen "You'll still drink it right?" ("base", xpos="far_left", ypos="head") + her "I guess..." ("open", "narrow", "base", "down") + gen "Great!" ("base", xpos="far_left", ypos="head") + else: #19+ + her "I mean... I guess it wasn't so bad." ("base", "narrow", "base", "down") + gen "Enjoy!" ("base", xpos="far_left", ypos="head") + call nar(">Hermione takes a last glance at the potion and brings it up to her mouth.") + + her "Here I go..." ("angry", "closed", "base", "mid") + + + call her_chibi("drink_potion","mid","base") + pause 0.6 + $ renpy.sound.play("sounds/gulp.ogg") + pause 0.8 + call her_chibi("stand","mid","base") + call nar(">Hermione drinks the potion with a series of gulps.") + + + if not her_ass_expand_drank: + if her_whoring < 19: + her "That didn't taste so bad!" ("base", "squint", "base", "mid") + her "What was it?" ("base", "base", "base", "mid") + else: #19+ + her "*Ahhh*... That was tasted great! What was it?" ("base", "squint", "base", "mid") + gen "The effects should become apparent soon enough." ("base", xpos="far_left", ypos="head") + her "Alright." ("open", "base", "base", "R") + + else: #Drank + her "*Hmm*... This potion does taste pretty good..." ("base", "closed", "base", "mid") + + gen "Now, then..." ("base", xpos="far_left", ypos="head") + + #Send her to class, or + #Tell her to take off her bottoms/Wait and see what happens + menu: + "-Send her to class-": + if not her_ass_expand_drank: + gen "You should probably head back to class for now..." ("base", xpos="far_left", ypos="head") + her "To class, but what about the--" ("angry", "squint", "base", "mid") + call nar(">Hermione goes white as she starts to feel her body churn.") + her "*Hngh*!" ("disgust", "wide", "worried", "stare") + gen "Something wrong?" ("base", xpos="far_left", ypos="head") + her "What-- What's the intended effect of this potion [genie_name]?" ("angry", "squint", "base", "mid") + gen "Let's just say it's meant to distribute your assets a little bit differently." ("base", xpos="far_left", ypos="head") + her "My--" ("angry", "squint", "worried", "mid") + $ renpy.sound.play("sounds/slap.ogg") + call nar(">Hermione's body suddenly jolts forward as if someone slapped her from behind.") + her "Ouch!" ("scream", "happy", "base", "stare") + her "Something slapped me!" ("mad", "base", "base", "mid") + her "Is it supposed to do this?" ("angry", "happy", "base", "mid") + gen "I'm sure it's fine, just go back to class for now." ("base", xpos="far_left", ypos="head") + elif her_ass_expand_pub_done: + gen "You should probably head back to class for now..." ("base", xpos="far_left", ypos="head") + elif her_ass_expand_groped: + her "So... I assume you want to--" ("open", "base", "base", "R", cheeks="blush") + her "I mean, am I to receive another massage?" ("soft", "closed", "base", "mid", cheeks="blush") + gen "Not today [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Then what--" ("clench", "base", "base", "mid") + call nar(">Hermione jumps on the spot slightly as the potion begins taking effect.") + her "Ouch!" ("angry", "happyCl", "worried", "mid") + gen "No... I think this time I'd rather you head back to class." ("base", xpos="far_left", ypos="head") + else: #Drank but failed public variant before + gen "I'd like you to go to class this time..." ("base", xpos="far_left", ypos="head") + + if hg_pr_flash.counter > 0: ## Triggers public return event ## + + if not her_ass_expand_drank: + her "Alright..." ("angry", "squint", "base", "R") + gen "Let me know how it went!" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." ("angry", "narrow", "base", "down") + her "See you later then." ("angry", "narrow", "base", "R") + + else: + her "You want me to..." ("open", "base", "base", "mid", cheeks="blush") + gen "Go to class, yes..." ("base", xpos="far_left", ypos="head") + her "Alright..." ("open", "squint", "base", "R", cheeks="blush") + if her_ass_expand_pub_done: + her "I suppose I've already done it before... How bad could it be?" ("open", "closed", "base", "mid", cheeks="blush") + gen "That's the spirit." ("base", xpos="far_left", ypos="head") + gen "Make sure to tell me how it went..." ("base", xpos="far_left", ypos="head") + her "Okay." ("open", "squint", "base", "mid", cheeks="blush") + + hide hermione_main + with d3 + pause .4 + call her_walk("door") + + $ renpy.sound.play("sounds/slap_02.ogg") + her "Oooh!" ("angry", "base", "base", "stare", cheeks="blush", flip=True) + + #Hermione leaves + call her_walk(action="leave") + + # Set Return event + $ ass_potion_ITEM.set_active("hermione") + + jump end_hermione_event + + else: ## Doesn't trigger public return event ## + if not her_ass_expand_drank: + her "*Ehm*... I'm not sure I--" ("angry", "squint", "worried", "mid") + $ renpy.sound.play("sounds/slap.ogg") + her "" ("clench", "wide", "base", "mid") + call nar(">Another jolt goes through Hermione's body as she jumps on the spot.") + her "I-- I'm sorry [genie_name]..." ("angry", "happyCl", "worried", "mid") + her "If this potion is doing what I think it's--" ("open", "happyCl", "worried", "mid", cheeks="blush") + $ renpy.sound.play("sounds/slap.ogg") + her "Ow!" ("angry", "wide", "worried", "stare", cheeks="blush") + gen "Alright fine... You don't have to go to class for today..." ("base", xpos="far_left", ypos="head") + gen "{number=current_payout} points to Gryffindor." ("base", xpos="far_left", ypos="head") + + $ gryffindor += current_payout + her "Thank you..." ("angry", "happyCl", "base", "mid", cheeks="blush") + + call her_walk(action="leave") + + $ renpy.sound.play("sounds/boing02.ogg") + pause .2 + her "Merlin's beard!" + gen "..." ("base", xpos="far_left", ypos="head") + + $ her_ass_expand_drank = True + jump end_hermione_event + else: + if her_whoring < 19: + her "You want me to what?!" ("angry", "squint", "worried", "mid") + gen "Go to class!" ("base", xpos="far_left", ypos="head") + gen "Isn't that what you're supposed to do in school?" ("base", xpos="far_left", ypos="head") + her "Not when you've just drank a potion like this!" ("clench", "squint", "worried", "mid", cheeks="blush") + gen "I suppose you might not fit on the chairs that well..." ("base", xpos="far_left", ypos="head") + her "That is not the reason..." ("annoyed", "narrow", "annoyed", "mid", cheeks="blush") + her "I can't believe you're asking me to expose myself like this..." ("angry", "narrow", "base", "R", cheeks="blush") + her "I'll have my points--" ("angry", "closed", "annoyed", "mid", cheeks="blush") + call nar(">Hermione's body jolts once more.") + $ renpy.sound.play("sounds/slap.ogg") + her "Ouch!" ("scream", "wide", "base", "stare") + else: + her "You want me to go to class when--" ("angry", "narrow", "base", "down", cheeks="blush") + call nar(">Hermione's body jolts once more.") + $ renpy.sound.play("sounds/slap.ogg") + her "*Ah*..." ("soft", "narrow", "base", "up", cheeks="blush") + her "" ("angry", "narrow", "base", "mid", cheeks="blush") #blush + gen "I think your classmates would appreciate the view." ("base", xpos="far_left", ypos="head") + her "I..." ("disgust", "narrow", "base", "down", cheeks="blush") + $ renpy.sound.play("sounds/slap.ogg") + her "*Ah*..." ("open", "happyCl", "base", "mid", cheeks="blush") + her "No... I'm sorry but I'm not going to let them see me like that..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + gen "Very well [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "{number=current_payout} points to Gryffindor." ("base", xpos="far_left", ypos="head") + + $ gryffindor += current_payout + + her "Thank you..." ("angry", "closed", "base", "mid", cheeks="blush") + gen "Until next time." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + $ her_ass_expand_drank = True + jump end_hermione_event + + "-Tell her to take off her clothes-" if hermione.is_any_worn("top", "bra", "bottom", "panties"): + $ her_ass_expand_no_clothes = True #Took off clothing (reset at end) + + gen "Why don't you take off your clothes for me?" ("base", xpos="far_left", ypos="head") + if her_whoring < 15: + her "You want me to take off my..." ("open", "narrow", "base", "down", cheeks="blush") + gen "Your clothes, yes..." ("base", xpos="far_left", ypos="head") + else: + her "So that's how it is, is it..." ("open", "squint", "base", "R", cheeks="blush") + her "You should really tell me these things up front [genie_name]..." ("open", "closed", "base", "down", cheeks="blush") + her "But I suppose I could do that, even though I was only meant to drink the potion..." ("base", "closed", "base", "mid", cheeks="blush") + + "-Wait and see what happens-" if not hermione.is_any_worn("top", "bra", "bottom", "panties"): + + gen "Just stand right there for a moment will you?" ("base", xpos="far_left", ypos="head") + her "Doing this again are we?" ("open", "closed", "base", "mid") + gen "Just waiting for the potion to kick in..." ("base", xpos="far_left", ypos="head") + her "Right..." ("soft", "squint", "base", "R") + + if not her_ass_expand_drank: + her "Could you at least give me a hint of what it's supposed to do?" ("soft", "squint", "base", "mid", cheeks="blush") + gen "Well that wouldn't be very fun would it..." ("base", xpos="far_left", ypos="head") + gen "I'm sure you'll feel it any minute now." ("base", xpos="far_left", ypos="head") + her "Feel? What do you mean by--" ("angry", "base", "worried", "mid", cheeks="blush") + call nar(">Hermione goes white as she starts to feel her body churn.") + her "What's going on?!" ("disgust", "wide", "base", "stare") + her "It's as if my insides are moving!" ("disgust", "happy", "base", "stare") + if her_whoring < 19: + her "My butt... It's--" ("clench", "squint", "base", "down") + $ renpy.sound.play("sounds/slap.ogg") + if hermione.is_any_worn("top", "bottom", "panties"): + call nar(">Hermione suddenly jolts forward as if she was hit by something on her butt.") + her "Ouch!" ("mad", "happyCl", "worried", "stare", cheeks="blush") + her "S--{w=0.2} Something's happening to it, [genie_name]!" ("clench", "happy", "worried", "down", cheeks="blush") + gen "You'd probably want to take off your clothes right about now..." ("base", xpos="far_left", ypos="head") + her "My--{w=0.2} You've only paid me to drink the potion, why would I--" ("angry", "closed", "worried", "mid", cheeks="blush") + gen "Trust me, it's for your own good..." ("base", xpos="far_left", ypos="head") + her "For my...{w=0.6}{nw}" ("annoyed", "narrow", "worried", "down", cheeks="blush") #wide eyed + her "For my...{fast} Wait, surely you haven't..." ("clench", "base", "worried", "stare", cheeks="blush") #wide eyed + + if hermione.is_any_worn("top", "bra"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top", "bra") + pause .5 + + her "" ("clench", "narrow", "worried", "down", cheeks="blush") + gen "[hermione_name]! Stripping in your headmasters office, how indecent!" ("grin", xpos="far_left", ypos="head") + + if hermione.is_any_worn("bottom", "panties"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bottom", "panties") + + $ hermione.strip("all") + + + gen "Just from a potion that's meant to spank you a little!" ("base", xpos="far_left", ypos="head") + her "Wait, so it's not going to--" ("disgust", "squint", "worried", "down", cheeks="blush") + else: #Not wearing top, bottom or panties + call nar(">With a smacking sound, Hermione jumps on the spot as her bare cheeks are slapped hard.") + her "{size=+4}Ouch!!!{/size}" ("angry", "happyCl", "base", "mid", cheeks="blush") + her "What was that?" ("angry", "squint", "base", "mid", cheeks="blush") + + if hermione.is_any_worn("clothes"): + call nar(">Hermione goes over her belongings, trying to find the source.") + + if hermione.is_any_worn("accessory", "stockings", "garterbelt"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("accessory", "stockings", "garterbelt") + call ctc + + $ renpy.sound.play("sounds/slap.ogg") + + her "{size=+4}OW!!!{/size}" ("angry", "happyCl", "base", "mid", cheeks="blush") + her "Where is that coming from??" ("angry", "squint", "base", "mid", cheeks="blush") + + $ hermione.strip("all") + + gen "It appears the potion is working." ("base", xpos="far_left", ypos="head") + her "It-- Hold on, is it--" ("angry", "wide", "base", "mid", cheeks="blush") + + $ hermione.set_body(backside="big1") + $ renpy.sound.play("sounds/boing05.ogg") + with d3 + + her "I knew it..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "That's weird... Must've brewed the potion wrong..." ("base", xpos="far_left", ypos="head") + her "Right... As if you didn't know this was going to happen." ("open", "narrow", "annoyed", "R", cheeks="blush") + gen "I assure you I had no idea [hermione_name], it was only meant to spank you a little." ("base", xpos="far_left", ypos="head") + her "Then how come it's--" ("soft", "narrow", "annoyed", "down", cheeks="blush") + + $ hermione.set_body(backside="big2") + $ renpy.sound.play("sounds/boing05.ogg") + with d3 + + her "[genie_name]!" ("angry", "base", "worried", "down", cheeks="blush") + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "It did it again!" ("disgust", "happyCl", "worried", "mid", cheeks="blush") + gen "Well, it is an untested potion to be fair... You'll have to expect some side effects." ("base", xpos="far_left", ypos="head") + her "Side effects? But you assured me this potion was--" ("clench", "narrow", "worried", "down", cheeks="blush") + + $ hermione.set_body(backside="big3") + $ renpy.sound.play("sounds/boing04.ogg") + with d3 + + her "Merlin's beard!" ("disgust", "wide", "base", "down", cheeks="blush") + gen "Nice..." ("base", xpos="far_left", ypos="head") + her "You told me this potion was safe!" ("scream", "happyCl", "annoyed", "mid", cheeks="blush") + gen "I said it wasn't dangerous." ("base", xpos="far_left", ypos="head") + her "How am I supposed to sit down with this?" ("angry", "base", "annoyed", "mid", cheeks="blush") + gen "I'm sure you'll manage." ("base", xpos="far_left", ypos="head") + her "*Hmph*..." ("annoyed", "narrow", "annoyed", "R", cheeks="blush") + her "" ("annoyed", "narrow", "annoyed", "down", cheeks="blush") + call nar(">Hermione glances down at her new exterior in disbelief.") + else: # 19+ + her "And my ass, it feels so... Good." ("base", "narrow", "base", "up", cheeks="blush") + call nar(">You start to notice Hermione's ass jiggle slightly.") + her "Something is happening with my body, [genie_name]!" ("grin", "narrow", "base", "down", cheeks="blush") + $ renpy.sound.play("sounds/slap.ogg") + her "*Ah*..." ("open_tongue", "narrow", "base", "up", cheeks="blush") + call nar(">Hermione jolts forward as if her ass was spanked by an invisible force.") + gen "*Heh-Heh*..." ("grin", xpos="far_left", ypos="head") + if hermione.is_any_worn("top", "bottom", "panties"): + gen "You'd probably want to take off your clothes right about now..." ("base", xpos="far_left", ypos="head") + her "My--{w=0.2} Oh...{w=0.4} I see!" ("angry", "base", "base", "stare", cheeks="blush") + + if hermione.is_any_worn("top", "bra"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top", "bra") + pause .5 + + gen "Very good..." ("base", xpos="far_left", ypos="head") + + if hermione.is_any_worn("bottom", "panties"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bottom", "panties") + + $ hermione.strip("all") + + her "..." ("grin", "narrow", "base", "down", cheeks="blush") + her "So, when will is it supposed to happen?" ("grin", "wink", "base", "mid", cheeks="blush") + gen "When is what supposed to happen?" ("base", xpos="far_left", ypos="head") + her "When is my butt supposed to grow?" ("grin", "narrow", "base", "mid", cheeks="blush") + gen "Your butt? Why I just wanted to see if could get you to take your clothes off!" ("base", xpos="far_left", ypos="head") + her "What, so it won't actually--" ("angry", "base", "base", "down", cheeks="blush") + else: #Not wearing top, bottom or panties + gen "That means the potion is working..." ("base", xpos="far_left", ypos="head") + her "It's--" ("soft", "squint", "base", "stare", cheeks="blush") + her "oooooh!!" ("open", "base", "base", "stare", cheeks="blush") #Realization + gen "Now you're getting it." ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/slap.ogg") + her "Ouch!" ("angry", "happyCl", "base", "mid", cheeks="blush") + her "Why's it doing that?!" ("annoyed", "happyCl", "worried", "mid", cheeks="blush") + + if hermione.is_any_worn("clothes"): + call nar(">Hermione goes over her belongings, trying to find the source.") + + if hermione.is_any_worn("bra", "accessory", "stockings", "garterbelt"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bra", "accessory", "stockings", "garterbelt") + call ctc + + $ renpy.sound.play("sounds/slap.ogg") + + her "{size=+4}*Ah*....{/size}" ("open_tongue", "narrow", "base", "up", cheeks="blush") + her "What's doing this to me?" ("grin", "narrow", "base", "down", cheeks="blush") + + $ hermione.strip("all") + + gen "I don't... *Err.... I brewed it to do that!" ("base", xpos="far_left", ypos="head") + her "You brewed it to-- I thought it was meant to make it--" ("disgust", "narrow", "base", "down", cheeks="blush") + + $ hermione.set_body(backside="big1") + $ renpy.sound.play("sounds/boing05.ogg") + with d3 + + her "Grow..." ("open", "base", "base", "down", cheeks="blush") + gen "..." ("grin", xpos="far_left", ypos="head") + her "You're almost too predictable sometimes..." ("base", "narrow", "base", "R", cheeks="blush") + gen "*Heh-heh*." ("grin", xpos="far_left", ypos="head") + her "Although... I would've thought that you'd make the potion more powerful than this..." ("open", "narrow", "base", "down", cheeks="blush") + her "Did I not drink enough of it?" ("open", "squint", "base", "mid", cheeks="blush") + gen "You underestimate me, girl..." ("base", xpos="far_left", ypos="head") + her "What do you--" ("soft", "narrow", "base", "down", cheeks="blush") + + $ hermione.set_body(backside="big2") + $ renpy.sound.play("sounds/boing05.ogg") + with d3 + + her "Whoa!" ("angry", "base", "base", "down", cheeks="blush") + gen "There it goes!" ("base", xpos="far_left", ypos="head") + gen "More like what you expected?" ("base", xpos="far_left", ypos="head") + her "Yes..." ("soft", "base", "base", "R", cheeks="blush") + gen "Well you expected wrong... We're not done yet, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "We're--" ("mad", "base", "base", "mid", cheeks="blush") + + $ hermione.set_body(backside="big3") + $ renpy.sound.play("sounds/boing04.ogg") + with d3 + + her "Merlin's beard!" ("scream", "wide", "base", "down", cheeks="blush") + her "It's humongous!" ("angry", "base", "base", "down", cheeks="blush") + gen "There's that Pixar mom look I was going for!" ("grin", xpos="far_left", ypos="head") + her "*Hmm*..." ("soft", "base", "base", "down", cheeks="blush") + her "I get that the potion is supposed to make my butt larger..." ("soft", "squint", "base", "mid", cheeks="blush") + her "But why does it suddenly feel so good?" ("soft", "wink", "base", "mid", cheeks="blush") + her "" ("base", "narrow", "base", "down", cheeks="blush") + call nar(">Hermione looks down at her newly acquired asset, smiling to herself.") + gen "*Hmm*... It's not supposed to, but I guess every case is different." ("base", xpos="far_left", ypos="head") + else: #Drank + call nar(">Hermione's face turns into a grimace as the potion begins taking effect.") + her "There's that weird feeling again... Are you sure it's supposed to do this?" ("disgust", "squint", "base", "stare", cheeks="blush") + gen "I mean, the potion haven't even started to take effect yet..." ("base", xpos="far_left", ypos="head") + if hermione.is_any_worn("top", "bra", "bottom", "panties"): + gen "Speaking of, you'd probably want to take some of those clothes off right about now." ("base", xpos="far_left", ypos="head") + her "Oh... Alright..." ("angry", "base", "base", "mid", cheeks="blush") + + if hermione.is_any_worn("top", "bra"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top", "bra") + pause .5 + + gen "Very good..." ("base", xpos="far_left", ypos="head") + + if hermione.is_any_worn("bottom", "panties"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bottom", "panties") + pause .5 + + $ hermione.strip("all") + + gen "Now let's wait and see..." ("base", xpos="far_left", ypos="head") + else: #Not wearing top, bra, bottom or panties + her "Right..." ("annoyed", "narrow", "base", "down", cheeks="blush") + if hermione.is_any_worn("clothes"): + call nar(">Hermione goes over her belongings, and begins taking some of them off.") + + if hermione.is_any_worn("accessory", "stockings", "garterbelt"): + $ hermione.strip("accessory", "stockings", "garterbelt") + gen "What are you doing?" ("base", xpos="far_left", ypos="head") + her "Just getting myself more comfortable..." ("angry", "narrow", "base", "down", cheeks="blush") + her "Is that okay?" ("angry", "squint", "worried", "mid", cheeks="blush") + gen "I suppose..." ("base", xpos="far_left", ypos="head") + her "Great... My skin gets so sensitive after drinking this..." ("soft", "narrow", "worried", "down", cheeks="blush") + else: + gen "What are you doing?" ("base", xpos="far_left", ypos="head") + her "I just thought... *Ehm*... My skin got so sensitive before..." ("angry", "squint", "worried", "mid", cheeks="blush") + gen "It's that sensitive?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... Yes..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "Alright then... Go ahead..." ("base", xpos="far_left", ypos="head") + $ hermione.strip("all") + her "This potions sure is taking its time..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "Patience, [hermione_name]... We'll see the effects kicking in soon enough..." ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Any minute now..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "closed", "base", "down", cheeks="blush") + her "Nothing is--" ("disgust", "narrow", "base", "mid", cheeks="blush") + call nar(">Hermione suddenly jolts forward once more as if she was hit hard on her butt.") + $ renpy.sound.play("sounds/slap.ogg") + if her_whoring < 19: + her "Ouch!" ("clench", "happyCl", "worried", "mid", cheeks="blush") + her "Why is this potion so aggressive?" ("disgust", "narrow", "annoyed", "down", cheeks="blush") + gen "Beats me...{w}..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "mid", cheeks="blush") #pout + + call nar(">You start to notice Hermione's ass increase in size.") + + $ hermione.set_body(backside="big1") + $ renpy.sound.play("sounds/boing05.ogg") + with d3 + + gen "There it goes!" ("grin", xpos="far_left", ypos="head") + her "This feels so strange..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "I think you look great!" ("grin", xpos="far_left", ypos="head") + her "If only this was as big as it's going to--" ("annoyed", "narrow", "worried", "down", cheeks="blush") + + $ hermione.set_body(backside="big2") + $ renpy.sound.play("sounds/boing05.ogg") + with d3 + + her "Get..." ("disgust", "narrow", "worried", "down", cheeks="blush") + gen "Now you look even greater!" ("grin", xpos="far_left", ypos="head") + her "Thanks I suppose..." ("annoyed", "narrow", "base", "R", cheeks="blush") + gen "As in there's even more of you now." ("grin", xpos="far_left", ypos="head") + her "I understood what you--" ("disgust", "narrow", "annoyed", "down", cheeks="blush") + + $ hermione.set_body(backside="big3") + $ renpy.sound.play("sounds/boing04.ogg") + with d3 + + her "..." ("angry", "narrow", "worried", "down", cheeks="blush") + gen "The greatest even!" ("grin", xpos="far_left", ypos="head") + her "My skin feels so tight..." ("angry", "closed", "worried", "mid", cheeks="blush") + gen "*Hmm*... Perhaps mixing in some lizard tails would do it..." ("base", xpos="far_left", ypos="head") + call nar(">Hermione shifts her posture a little bit as she regains her balance.") + her "Ow-ow-ow!" ("angry", "happyCl", "worried", "mid", cheeks="blush") + else: # 19+ + her "*Ah*!" ("scream", "squint", "base", "stare", cheeks="blush") + gen "*Heh-heh*..." ("base", xpos="far_left", ypos="head") + her "It hit me again... Did you mean to make the potion do this?" ("clench", "base", "base", "stare", cheeks="blush") + gen "Perhaps." ("base", xpos="far_left", ypos="head") + her "I figured..." ("angry", "narrow", "base", "R", cheeks="blush") + + $ hermione.set_body(backside="big1") + $ renpy.sound.play("sounds/boing05.ogg") + with d3 + + her "Someone of your skill level would surely be able to counteract this sort of side effect." ("angry", "narrow", "base", "R", cheeks="blush") #Doesn't notice growth + gen "You call it a side effect, I call it an added bonus." ("base", xpos="far_left", ypos="head") + her "I guess..." ("base", "closed", "base", "mid", cheeks="blush") + her "So when is it supposed to start--" ("open", "squint", "base", "mid", cheeks="blush") + + $ hermione.set_body(backside="big2") + $ renpy.sound.play("sounds/boing05.ogg") + with d3 + + her "Whoa!" ("open", "wide", "base", "down", cheeks="blush") + her "How is it so big already?" ("angry", "base", "base", "down", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + gen "It already grew once before." ("base", xpos="far_left", ypos="head") + her "It did? I didn't even notice..." ("angry", "happy", "base", "mid", cheeks="blush") + gen "So... How does it feel?" ("base", xpos="far_left", ypos="head") + gen "Describe it to me." ("base", xpos="far_left", ypos="head") + her "It... It feels very nice and cushiony..." ("soft", "base", "base", "down", cheeks="blush") + her "But I think it got bigger before." ("soft", "wink", "base", "mid", cheeks="blush") + gen "Disappointed, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "No, I was just expecting it to--" ("angry", "base", "base", "mid", cheeks="blush") + + $ hermione.set_body(backside="big3") + $ renpy.sound.play("sounds/boing04.ogg") + with d3 + + her "" ("grin", "base", "base", "down", cheeks="blush") + call ctc + gen "Or just impatient?" ("grin", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "down", cheeks="blush") + + ## Ass Grope/Massage Section ## + + if not her_ass_expand_groped: + if her_whoring < 19: + gen "Now then...{w=0.4} How about a massage?" ("base", xpos="far_left", ypos="head") + her "A-- A massage?" ("clench", "squint", "worried", "mid", cheeks="blush") + gen "Yes, surely you must feel tense after what that potion did to you..." ("base", xpos="far_left", ypos="head") + her "Wait, you want to massage my--" ("angry", "squint", "base", "stare", cheeks="blush") #wide eyed + gen "I'll give you another twenty points for it..." ("base", xpos="far_left", ypos="head") + + $ current_payout += 20 #40 total + + her "*hmph*..." ("annoyed", "narrow", "annoyed", "L", cheeks="blush") + gen "Come on now, surely you must be a little bit curious..." ("base", xpos="far_left", ypos="head") + her "I--" ("angry", "narrow", "base", "L", cheeks="blush") + if her_whoring < 15: + her "I want thirty extra points for it..." ("angry", "happyCl", "annoyed", "mid", cheeks="blush") + gen "Thirty points to receive a massage?" ("base", xpos="far_left", ypos="head") + gen "No... Twenty points, take it or leave it." ("base", xpos="far_left", ypos="head") + her "Fine..." ("annoyed", "narrow", "annoyed", "down", cheeks="blush") + else: + her "Alright..." ("annoyed", "narrow", "base", "down", cheeks="blush") + else: + her "[genie_name]?" ("angry", "narrow", "base", "mid", cheeks="blush") + her "Could... Do you think you could massage me?" ("angry", "closed", "worried", "mid", cheeks="blush") + gen "Massage you?" ("base", xpos="far_left", ypos="head") + her "Massage my butt I mean..." ("disgust", "base", "base", "R", cheeks="blush") + gen "Your--{w=0.2} Why of course [hermione_name]!" ("grin", xpos="far_left", ypos="head") + her "Thank you..." ("angry", "closed", "base", "mid", cheeks="blush") + else: #Repeat + if her_whoring < 19: + gen "But until we try that... I suppose I could give you another massage." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "happyCl", "base", "mid", cheeks="blush") + gen "For another twenty extra points of course..." ("base", xpos="far_left", ypos="head") + $ current_payout += 20 #40 total + her "Fine..." ("disgust", "narrow", "base", "R", cheeks="blush") + else: + gen "Well then, how about another massage?" ("base", xpos="far_left", ypos="head") + her "I--{w=0.4} Yes please..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Great, then get that ass over here." ("base", xpos="far_left", ypos="head") + + #Hermione walks to desk + call her_walk("desk") + + show screen blkfade + + call nar(">Hermione makes her way over to your desk, her ass bouncing up and down as she moves, and then presents herself to you.") + pause .8 + + #Genie before groping chibi + call her_chibi_scene("behind_desk_back") + call play_music("playful_tension") # SEX THEME. + + if her_whoring < 19: + her "Please be gentle, [genie_name]..." ("angry", "base", "base", "R", cheeks="blush", xpos="mid", ypos="base", flip=True, trans=d3) + gen "Certainly... It is a massage is it not?" ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "down", cheeks="blush") #pout + + call her_chibi_scene("grope_ass_back") + with d3 + call nar(">You grab Hermione's engorged buttocks with your hands and give them a light squeeze.") + call her_chibi_scene("behind_desk_back") + with d3 + + her "*Ah*..." ("open", "happyCl", "base", "stare", cheeks="blush") + her "..." ("disgust", "squint", "worried", "stare", cheeks="blush") #Wide + gen "Was that a moan, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "N-- No...{w=0.4} It's...{w=0.4} Your hands are cold!" ("disgust", "narrow", "worried", "R", cheeks="blush") #annoyed #glance + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "In that case I'll continue..." ("base", xpos="far_left", ypos="head") + her "Wait--" ("clench", "base", "base", "R", cheeks="blush") + + call her_chibi_scene("grope_ass_back") + with d3 + call nar(">You begin to firmly stroke her ass cheeks with your open palms.") + + her "" ("annoyed", "happyCl", "worried", "mid", cheeks="blush") #happycl #annoyed #blush + pause .8 + call nar(">Grabbing the sides of her waist, you start kneading her cheeks with your thumbs.") + gen "These cheeks, so soft... Yet so firm..." ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("angry", "narrow", "base", "down", cheeks="blush") + call nar(">You give her cheeks a quick squeeze.") + her "[genie_name]!" ("disgust", "narrow", "base", "R", cheeks="blush") + gen "How did that feel, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I... {w=0.4} Good?" ("open", "squint", "worried", "down", cheeks="blush") + gen "You don't sound very convinced..." ("base", xpos="far_left", ypos="head") + gen "I didn't take you for such a spoiled girl, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "You could at least act a little bit more grateful..." ("base", xpos="far_left", ypos="head") + her "What do you--" ("angry", "happy", "worried", "mid", cheeks="blush") + call nar(">You firmly dig into her cheeks with your thumbs, making her clench up from the surprise.") + her "Ouch!" ("disgust", "happyCl", "annoyed", "mid", cheeks="blush") + her "I thought this was supposed to be a massage!" ("angry", "narrow", "annoyed", "R", cheeks="blush") + gen "Then try and relax a bit, would you?" ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "annoyed", "R", cheeks="blush") #annoyed + her "...{fast} Fine." ("open", "narrow", "annoyed", "stare", cheeks="blush") #annoyed + her "..." ("base", "narrow", "worried", "L", cheeks="blush") #closed eyes + gen "Good... Now let's see what your final verdict will be..." ("base", xpos="far_left", ypos="head") + her "" ("base", "closed", "worried", "mid", cheeks="blush") + call nar(">You begin moving your hands up and down her thighs, lightly brushing against the underside of her butt.") + call nar(">Hermione doesn't respond but you feel her muscles relax a bit more as you continue rubbing her.") + her "" ("base", "closed", "base", "mid", cheeks="blush") + call nar(">Moving your hand up again, you resume massaging her soft cheeks...") + her "*Mmm*..." ("soft", "closed", "worried", "mid", cheeks="blush") #closed eyes #blush + call nar(">Hermione let's out an involuntary moan of pleasure...") + gen "(*Hngh*... What I'd do to stick my dick in between those cheeks.)" ("angry", xpos="far_left", ypos="head") + call nar(">You pull her cheeks apart to reveal her puckered butthole, and then quickly let go before she notices...") + gen "(It looks so tight with her ass like this!)" ("angry", xpos="far_left", ypos="head") + gen "(I've got to know what it feels like...)" ("base", xpos="far_left", ypos="head") + else: # 19+ + her "Please hurry [genie_name]... Massage my butt cheeks..." ("angry", "base", "base", "R", cheeks="blush", xpos="mid", ypos="base", flip=True, trans=d3) + gen "*Hmm*... I'm not so sure if I should do it now..." ("grin", xpos="far_left", ypos="head") + her "Please!" ("disgust", "happyCl", "base", "mid", cheeks="blush") + her "I need it!" ("angry", "happyCl", "base", "mid", cheeks="blush") + gen "Very well [hermione_name]..." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("grope_ass_back") + with d3 + call nar(">You grab Hermione's engorged buttocks with your hands and give them a light squeeze.") + + her "..." ("grin", "narrow", "base", "stare", cheeks="blush") #blank stare horny + gen "Well this potion certainly is effective." ("base", xpos="far_left", ypos="head") + call nar(">You begin to firmly stroke her ass with your open palms.") + her "*Mmm*..." ("smile", "narrow", "base", "stare", cheeks="blush") + gen "(I barely even touched her yet...)" ("base", xpos="far_left", ypos="head") + call nar(">Continuing the massage, you begin kneading her soft cheeks with your thumbs...") + her "[genie_name]..." ("base", "narrow", "base", "stare", cheeks="blush") + call nar(">Grabbing the sides of her waist you move your thumbs in a circular motion, giving her a squeeze each time you close your palm.") + her "*Ah*..." ("open", "closed", "base", "mid", cheeks="blush") + call nar(">Lightening your grip, you slowly slide your hands alongside the sides of her figure and move them underneath her cheeks.") + her "*Ah*...{w=0.3} *Ah*...{w=0.3} You...{w=0.3} You're..." ("soft", "closed", "worried", "mid", cheeks="blush") + call nar(">Hermione begins to breathe heavily as you grab her cheeks firmly with your thumbs.") + call nar(">You pull them apart to reveal her butthole and then proceed to watch them jiggle as you let go.") + her "" ("soft", "narrow", "worried", "stare", cheeks="blush") #pleasure + pause .8 + call nar(">Seeing her puckered hole gives you an idea.") + + $ her_ass_expand_groped = True + + menu: + "-Stick a finger in there-": + call nar(">You spread her cheeks open again to expose that tight hole.") + gen "Let's see how sensitive you really are..." ("base", xpos="far_left", ypos="head") + call nar(">You start teasing the rim with your finger, gently circling it.") + if not hg_anal.trigger: #Fail + if not her_ass_expand_finger: + her "what do you--" ("base", "narrow", "base", "stare", cheeks="blush") #confused + + $ renpy.play('sounds/gltch.ogg') + + her "!!!" ("clench", "wide", "base", "stare", cheeks="blush") #wide eyed + call nar(">You feel Hermione clench up around your finger as you insert it into her butthole.") + her "What are you doing?!?" ("scream", "happyCl", "worried", "R", cheeks="blush") + gen "What does it feel like I'm doing?" ("base", xpos="far_left", ypos="head") + her "You... You've put something in me!" ("angry", "happyCl", "annoyed", "mid", cheeks="blush") + gen "That's right..." ("base", xpos="far_left", ypos="head") + call nar(">You wiggle your finger inside Hermione's butthole.") + her "" ("angry", "wide", "base", "stare", cheeks="blush") #wide eyed #blush + gen "So, how sensitive is--" ("base", xpos="far_left", ypos="head") + her "Pull it out!" ("scream", "happyCl", "base", "stare", cheeks="blush") + gen "But--" ("base", xpos="far_left", ypos="head") + her "Now!" ("scream", "happyCl", "annoyed", "mid", cheeks="blush") + gen "Fine..." ("base", xpos="far_left", ypos="head") + + $ renpy.play("sounds/pop01.ogg") + + else: #Tried to finger her Ass before + her "Wait, you don't mean--" ("angry", "wide", "base", "stare", cheeks="blush") + + $ renpy.play('sounds/gltch.ogg') + + her "!!!" ("clench", "happyCl", "annoyed", "mid", cheeks="blush") #wide eyed + call nar(">You feel Hermione clench up around your finger as you insert it into her butthole.") + her "[genie_name], what are you doing!" ("scream", "happyCl", "annoyed", "mid", cheeks="blush") + gen "I stuck my finger in your butthole, feels good doesn't it?" ("base", xpos="far_left", ypos="head") + her "No! I can't believe you're doing this again!" ("scream", "happy", "annoyed", "R", cheeks="blush") + her "Pull it out!" ("clench", "squint", "annoyed", "R", cheeks="blush") + gen "One moment..." ("base", xpos="far_left", ypos="head") + call nar(">You wiggle your finger inside Hermione's butthole.") + her "Now!" ("scream", "base", "annoyed", "mid", cheeks="blush") + gen "Alright, fine..." ("base", xpos="far_left", ypos="head") + + # Fail End section # + show screen blkfade + with d3 + + hide hermione_main + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + + hide screen blkfade + with d5 + + if her_whoring < 19: #When she cares about points + her "I'll have those points now..." ("angry", "narrow", "annoyed", "mid", cheeks="blush", xpos="base", ypos="base", flip=False, trans=d3) + gen "But..." ("base", xpos="far_left", ypos="head") + her "No... No buts!" ("scream", "squint", "angry", "mid", cheeks="blush") + gen "Alright... {number=current_payout} points to Gryffindor." ("base", xpos="far_left", ypos="head") + her "I can't believe you..." ("angry", "narrow", "annoyed", "R", cheeks="blush") + else: + her "I can't believe you..." ("angry", "narrow", "base", "R", cheeks="blush", xpos="base", ypos="base", flip=False, trans=d3) #blush + gen "Sorry, I got a bit ahead of myself..." ("base", xpos="far_left", ypos="head") + her "" ("angry", "base", "worried", "mid", cheeks="blush") #surprised by your apology + pause .8 + gen "I should've put two in the pink, one in the--" ("grin", xpos="far_left", ypos="head") + her "*Grrr*!" ("angry", "narrow", "annoyed", "mid", cheeks="blush") + + call her_walk(action="leave", speed=2.0) + $ renpy.play('sounds/door_down.ogg') + with hpunch + $ her_mood += 20 + + if not her_ass_expand_no_clothes: + if her_whoring < 19: + gen "..." ("base", xpos="far_left", ypos="head") + else: + gen "Was it something I said?" ("base", xpos="far_left", ypos="head") + else: + pause 0.5 + + gen "You forgot your..." ("base", xpos="far_left", ypos="head") + call her_walk(action="enter") + + pause .5 + call play_sound("equip") + $ hermione.wear("all") + pause .4 + call her_walk(action="leave") + $ renpy.play('sounds/door_down.ogg') + with hpunch + + pause 1.0 + + gen "{cps=3}...{/cps}" ("base", xpos="far_left", ypos="head") + gen "No buts next time, got it." ("base", xpos="far_left", ypos="head") + + $ hermione.set_body(backside=None) + $ her_ass_expand_drank = True + $ her_ass_expand_finger = True + $ her_ass_expand_no_clothes = False #Took off main clothing check reset + jump end_hermione_event + + else: #Success + if not her_ass_expand_finger: + her "[genie_name] please... I'm too sensitive. If you do that, I'm not sure I'll be able to control myself." ("mad", "narrow", "worried", "R", cheeks="blush") + gen "That's unfortunate..." ("base", xpos="far_left", ypos="head") + call nar(">You slowly pull your finger away from her asshole.") + her "Thank you--" ("base", "closed", "worried", "mid", cheeks="blush") + call nar(">And then fully insert it.") + + $ renpy.play('sounds/gltch.ogg') + + her "..." ("grin", "base", "base", "ahegao", cheeks="blush") + gen "What was it you said about control?" ("base", xpos="far_left", ypos="head") + call nar(">You wiggle your finger inside Hermione's butthole.") + her "" ("grin", "happyCl", "base", "stare", cheeks="blush") + pause .8 + call nar(">You keep going and suddenly feel her tense up around your finger.") + gen "Such a anal slut... I wonder what you'll do once I try this." ("base", xpos="far_left", ypos="head") + call nar(">You pull your finger out slightly and without warning start pumping it in and out of her puckered asshole.") + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + + her "!!!" ("open_tongue", "base", "base", "ahegao", cheeks="blush") + call nar(">As you continue your barrage on the girl's hole, you feel her shaking, desperately trying to keep her composure.") + her "Please [genie_name]..." ("grin", "happyCl", "base", "mid", cheeks="blush") + her "I can't take it any longer..." ("angry", "narrow", "base", "dead", cheeks="blush") + else: + her "Please [genie_name]... Not again... I can't take it..." ("angry", "narrow", "base", "stare", cheeks="blush") + gen "You shouldn't put yourself down so much [hermione_name]..." ("base", xpos="far_left", ypos="head") + call nar(">You poke Hermione's asshole with your finger, sticking the tip in just slightly.") + her "*Ngh*... [genie_name]..." ("clench", "narrow", "base", "up", cheeks="blush") + gen "What was that?" ("base", xpos="far_left", ypos="head") + call nar(">You take the tip of your finger out again and start teasing the entrance of her butthole...") + gen "That's odd... I thought you said you couldn't take it, but the tip of my finger sure found it easy to penetrate you, [hermione_name]..." ("base", xpos="far_left", ypos="head") + call nar(">You circle the entrance of her butthole with your finger, and Hermione's words trail off into sounds of pleasure...") + her "*Mmmm*... [genie_name]..." ("mad", "closed", "base", "mid", cheeks="blush") + gen "Let's try this again then shall we..." ("base", xpos="far_left", ypos="head") + call nar(">You put your finger up against her puckered hole once more and give it a gentle push.") + + $ renpy.play('sounds/gltch.ogg') + + her "[genie_name]!" ("grin", "narrow", "base", "up", cheeks="blush") + gen "Look who suddenly woke up for the event." ("base", xpos="far_left", ypos="head") + call nar(">You begin pumping your finger in and out of Hermione's ass with increasing ease.") + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + + her "oooh...." ("grin", "squint", "base", "stare", cheeks="blush") + gen "You sure are taking it pretty well [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.4} Maybe I--{w=0.2} *Ah*..." ("soft", "happyCl", "base", "mid", cheeks="blush") + her "Maybe I've finally gotten used to--{w=0.2} *Ah*..." ("soft", "happyCl", "base", "stare", cheeks="blush") + gen "Gotten used to having your ass filled?" ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.4} *Ah*...{w=0.4} *Ah*..." ("soft", "closed", "worried", "stare", cheeks="blush") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + call nar(">Not missing a beat, you stick your finger down to the hilt inside Hermione's ass.") + + $ renpy.play('sounds/gltch.ogg') + pause .4 + + her "[genie_name]!!!" ("angry", "happyCl", "base", "stare", cheeks="blush") + her "[genie_name], it's too much!!!" ("clench", "happyCl", "worried", "stare", cheeks="blush") + her "Please!" ("soft", "narrow", "worried", "up", cheeks="blush") + + + menu: + "-Keep Going-": #Hermione cums + + + gen "What was that, [hermione_name]?" ("base", xpos="far_left", ypos="head") + + call nar(">Pushing Hermione over your desk you finger her ass vigorously.") + call her_chibi_scene("lie_on_desk_fingering_slow") + + play bg_sounds "sounds/slickloopfast.ogg" + + call nar(">Increasing the pace, Hermione now begins dripping with excitement.") + her "Please..." ("grin", "narrow", "base", "dead", cheeks="blush") + + gen "Please what?" ("base", xpos="far_left", ypos="head") + + $ renpy.play('sounds/gltch.ogg') + + call nar(">You insert a second finger.") + her "*Ah*...{w} Please...{w} Stop...{w} You'll break me!" ("smile", "narrow", "base", "dead", cheeks="blush") + + call her_chibi_scene("lie_on_desk_fingering_slow") + play bg_sounds "sounds/slickloopveryfast.ogg" + + call nar(">Grabbing her hip with your other hand you relentlessly finger fuck her asshole.") + her "...{w=0.03}{nw}" ("open_tongue", "base", "base", "up", cheeks="blush") + her "...{fast}" ("open_wide_tongue", "base", "base", "ahegao", cheeks="blush") + call nar(">And suddenly you feel her body go limp as her asshole relentlessly quivers around your fingers.") + her "*Ah*!" ("smile", "base", "worried", "ahegao", cheeks="blush") + stop bg_sounds fadeout 2 + + call her_chibi_scene("lie_on_desk_fingering_cumming") + with d3 + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + pause .8 + + her "" ("smile", "happyCl", "worried", "mid", cheeks="blush") + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + pause .8 + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + + her "" ("smile", "narrow", "base", "up", cheeks="blush") + call her_chibi_scene("lie_on_desk_fingering_pause_ahegao") + with d5 + + gen "There...{w=0.4} Wasn't that nice?" ("base", xpos="far_left", ypos="head") + call nar(">Hermione shakes slightly in your hands as you stop fingering her, and you watch as a streak of liquid starts going down her thigh.") + + call her_chibi_scene("lie_on_desk_fingering_pause") + with d5 + + her "Yes...{w=0.4} *Hngh*...{w=0.4} [genie_name]." ("grin", "happyCl", "base", "dead", cheeks="blush") + call her_chibi_scene("lie_on_desk") + with d5 + her "*Mmm*..." ("base", "narrow", "worried", "dead", cheeks="blush") #look of pleasure + gen "... {w} Good girl." ("base", xpos="far_left", ypos="head") + + "-Let go of her-": + gen "Well, If that's the case!" ("base", xpos="far_left", ypos="head") + stop bg_sounds fadeout 2 + + her "*Ah*...{w=0.4} Be careful--" ("mad", "narrow", "worried", "R", cheeks="blush") + call nar(">With a small yelp and popping sound you quickly pull your finger out of her asshole.") + + $ renpy.sound.play("sounds/pop01.ogg") + with kissiris + + her "*Ngh*!!!" ("grin", "narrow", "base", "up", cheeks="blush") #wide #blush + gen "What was that, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.4} Nevermind." ("disgust", "narrow", "worried", "up", cheeks="blush") + + + #End section + show screen blkfade + with d5 + + call nar(">Standing there for a moment you begin feeling Hermione's breathing slow down, finally after a couple of minutes once her ass shrunk back down she straightens her back and makes it to the front of your desk.") + + call her_chibi("stand","desk","base", flip=False) + call gen_chibi("sit_behind_desk") + hide hermione_main + + hide screen blkfade + with d5 + + call music_block + + gen "Well then... You best be off to class." ("base", xpos="far_left", ypos="head") + + if not her_ass_expand_no_clothes: + her "Alright..." ("base", "narrow", "base", "down", cheeks="blush", xpos="base", ypos="base", flip=False, trans=d3) + $ hermione.wear("all") + else: #Took of main clothing + her "Alright... Just give me a moment..." ("base", "narrow", "base", "down", cheeks="blush", xpos="base", ypos="base", flip=False, trans=d3) + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.wear("all") + pause .5 + her "There we go..." ("base", "wink", "base", "mid") + her "" ("base", "base", "base", "mid") + + + gen "Now hurry up... I have things to attend to." ("base", xpos="far_left", ypos="head") + if her_whoring < 19: + her "*Ehm*... What about my points?" ("soft", "wink", "base", "mid") + gen "Oh right... The points..." ("base", xpos="far_left", ypos="head") + gen "{number=current_payout} points to Gryffindor!" ("base", xpos="far_left", ypos="head") + else: + gen "Oh, I almost forgot, {number=current_payout} points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "Oh right... The points.... Thank you." ("soft", "wink", "base", "mid") + + call nar(">Hermione still a bit dazed, stumbles slightly as she makes her way to your door.") + + call her_walk("mid", "base") + pause .2 + $ renpy.sound.play("sounds/jump_shoes.ogg") + + her "*Ahem*..." ("angry", "squint", "base", "R", cheeks="blush", flip=True, trans=d3) + + call her_walk("door", "base") + pause.2 + + her "Bye then..." ("angry", "narrow", "base", "L", cheeks="blush", flip=True, trans=d3) + + call her_walk(action="leave") + + $ her_ass_expand_drank = True + $ her_ass_expand_finger = True + $ her_ass_expand_no_clothes = False #Took off main clothing check reset + $ hermione.set_body(backside=None) + jump end_hermione_event + + "-Let go of her-": + gen "(Probably shouldn't push it...)" ("base", xpos="far_left", ypos="head") + gen "Well, I suppose that's enough for now..." ("base", xpos="far_left", ypos="head") + her "Oh... Okay!" ("angry", "base", "base", "stare", cheeks="blush") #happyclosed + call nar(">You give her cheeks one last squeeze and then let go of her.") + her "..." ("soft", "squint", "base", "stare", cheeks="blush") #surprised + + call music_block + + #End section + gen "Well you best be off to class." ("base", xpos="far_left", ypos="head") + if hg_pr_flash.counter > 0: + her "Alright..." ("open", "narrow", "base", "down", cheeks="blush") #surprised + else: + her "... With my butt looking like this?" ("soft", "narrow", "base", "down", cheeks="blush") + gen "I'm sure no one will be able to tell." ("base", xpos="far_left", ypos="head") + gen "Now hurry up... I have things to attend to." ("base", xpos="far_left", ypos="head") + + show screen blkfade + with d5 + + $ hermione.set_body(backside="big2") + + call nar(">As Hermione's straightens her back you watch as her ass begins shrinking in size.") + call nar(">With a short sigh, she then walk up to the front of your desk.") + + $ hermione.set_body(backside="big1") + + call her_chibi("stand","desk","base", flip=False) + call gen_chibi("sit_behind_desk") + hide hermione_main + + hide screen blkfade + with d5 + + $ hermione.set_body(backside=None) + + her "So, is that it [genie_name]?" ("open", "squint", "base", "R", cheeks="blush", xpos="base", ypos="base", flip=False, trans=d3) + if her_whoring < 19: + gen "Unless there's something else you wanted..." ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("angry", "narrow", "base", "down", cheeks="blush") + her "The points." ("angry", "squint", "base", "mid", cheeks="blush") + gen "Oh right, the points!" ("base", xpos="far_left", ypos="head") + gen "{number=current_payout} points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "Thank you, I'll head back to class then..." ("soft", "base", "base", "R", cheeks="blush") + else: + gen "Yes... No wait, I almost forgot!" ("base", xpos="far_left", ypos="head") + gen "{number=current_payout} to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "Oh right... The points.... Thank you." ("soft", "narrow", "base", "down") + + if not hg_anal.trigger: #didn't expect you to push further + gen "You're welcome by the way..." ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("soft", "base", "base", "mid", cheeks="blush") + gen "For the massage." ("base", xpos="far_left", ypos="head") + her "Oh... Thank you [genie_name]." ("annoyed", "squint", "base", "R", cheeks="blush") + gen "Off you go." ("base", xpos="far_left", ypos="head") + if not her_ass_expand_no_clothes: + her "Alright." ("soft", "wink", "base", "mid", cheeks="blush") + else: #Took of main clothing + her "One moment please..." ("soft", "wink", "base", "mid", cheeks="blush") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.wear("all") + pause .5 + + else: #Expected you to push further + her "..." ("annoyed", "narrow", "base", "down", cheeks="blush") + gen "Is everything okay [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Oh... Yes, I'm fine, [genie_name]..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "Good." ("base", xpos="far_left", ypos="head") + if not her_ass_expand_no_clothes: + gen "Off you go then." ("base", xpos="far_left", ypos="head") + her "Right..." ("annoyed", "narrow", "base", "R", cheeks="blush") + else: #Took of main clothing + her "I suppose I'll just put this back on then..." ("annoyed", "narrow", "base", "down", cheeks="blush") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.wear("all") + pause .5 + + her "Off I go..." ("open", "base", "base", "R", cheeks="blush") + + her "Bye then, [genie_name]..." ("open", "closed", "base", "mid", cheeks="blush") + gen "Bye [hermione_name]." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + $ her_ass_expand_drank = True + $ her_ass_expand_no_clothes = False #Took off main clothing check reset + jump end_hermione_event + + +##Send Hermione to class Ass expand Return event## +label her_potion_ass_return: + + #Hermione enters office and walks to front of desk + call her_walk("desk", "base", action="enter") + + if her_reputation < 19: + her "That was so humiliating..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Hello to you too..." ("base", xpos="far_left", ypos="head") + her "Why did you have to give me that potion the day Professor Snape has us go to Hogsmeade?" ("open", "closed", "annoyed", "mid", cheeks="blush") + gen "Go to what?" ("base", xpos="far_left", ypos="head") + her "To Hogsmeade!" ("open", "base", "angry", "mid") + her "Although, I suppose you may not have been aware of that..." ("clench", "squint", "base", "R") + her "Professor Snape usually sends us down to Hogsmeade to acquire the necessary potion supplies for the month." ("open", "closed", "annoyed", "mid") + gen "How lazy can a man get..." ("base", xpos="far_left", ypos="head") + her "Sorry, [genie_name]... I probably should've told you about it." ("disgust", "narrow", "base", "down") + her "You know I'd normally tell you these things but..." ("angry", "narrow", "base", "R") + gen "But?" ("base", xpos="far_left", ypos="head") + her "Well... Getting out of that classroom once a month is usually what lets me get through..." ("disgust", "closed", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + her "I promise we're still learning a lot about ingredients and such in J. Pippin's!" ("angry", "squint", "base", "mid") + her "At least the ones who actually make it there do..." ("angry", "narrow", "base", "R") + her "The Slytherin's just see it as an opportunity to take the day off." ("open", "narrow", "annoyed", "R") + gen "Sounds to me like you've had a great day then." ("base", xpos="far_left", ypos="head") + gen "Professor Snape and the Slytherins is like the top of the list of things you constantly complain about." ("base", xpos="far_left", ypos="head") + her "I don't always complain about them!" ("disgust", "squint", "annoyed", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + her "That said... I'd normally enjoy the free time as you mentioned... But manoeuvering that... *Err*..." ("angry", "squint", "worried", "R") + gen "Dump truck?" ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "base", "base", "mid") + her "Yes, that..." ("disgust", "squint", "base", "mid") + her "We didn't even get all the way down to Hogsmeade, which is normally where the Slytherins would leave the group before they took notice..." ("open", "squint", "annoyed", "R") + her "I was just about to give them a piece of my mind but this thing made me lose my balance and fall onto the ground..." ("angry", "narrow", "angry", "down") + her "And to no surprise, they stopped in their tracks howling with laughter..." ("angry", "narrow", "angry", "R") + gen "Surely some Slytherin students trying to make a scene isn't enough to--" ("base", xpos="far_left", ypos="head") + her "Of course not!" ("angry", "closed", "annoyed", "mid") + her "But they're not the only ones who have been starting at it." ("annoyed", "narrow", "annoyed", "R", cheeks="blush") + her "Me falling over on the way to Hogsmeade wasn't exactly a one time occurrence..." ("open", "narrow", "annoyed", "down", cheeks="blush") + her "Whilst other people weren't openly laughing at it, I could still hear them whispering and giggling..." ("angry", "narrow", "base", "down", cheeks="blush") + her "I felt as if I was going die from embarrassment..." ("disgust", "closed", "base", "mid", cheeks="blush") + gen "They're just jealous." ("base", xpos="far_left", ypos="head") + her "Are they, [genie_name]?" ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "Well... Maybe not the falling over part." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "down", cheeks="blush") + her "Can I have my points now?" ("open", "closed", "base", "mid", cheeks="blush") + gen "Of course [hermione_name]!" ("base", xpos="far_left", ypos="head") + gen "{number=current_payout} points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "... Thank you." ("base", "squint", "base", "mid", cheeks="blush") + else: + her "Hello [genie_name]..." ("base", "narrow", "base", "R", cheeks="blush") + gen "Back so soon?" ("base", xpos="far_left", ypos="head") + her "I... Yes..." ("base", "narrow", "base", "down", cheeks="blush") + gen "Very well... So, how's your day been?" ("base", xpos="far_left", ypos="head") + gen "Anything interesting happen?" ("base", xpos="far_left", ypos="head") + her "Well..." ("base", "closed", "base", "mid", cheeks="blush") + + $ camera.set(zoom=0.25, pos=(0, 0), image="CG ass expand classroom A1", overlay=None, initialize=True) + show screen animatedCG + with fade + + her "In today's history of magic lesson I was asked by professor Binns to help outline the timeline of the Witch hunts of the 14th century on the blackboard..." ("open", "closed", "base", "mid", cheeks="blush") + gen "Sounds dreadfully boring..." ("base", xpos="far_left", ypos="head") + her "History of magic is not boring, [genie_name]!" ("angry", "squint", "base", "mid", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + her "Okay, maybe it's a little bit boring..." ("angry", "narrow", "base", "R", cheeks="blush") + her "But it's important!" ("annoyed", "base", "base", "mid", cheeks="blush") + gen "Boring but important... Got it." ("base", xpos="far_left", ypos="head") + her "Anyhow... I'd usually be very pleased to be given such an opportunity." ("open", "base", "base", "R", cheeks="blush") + her "Although seeing the circumstances..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "I bet you were even more pleased than usual!" ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "base", "down", cheeks="blush") + her "So of course I accepted and went up to help him..." ("open", "closed", "base", "mid", cheeks="blush") + + $ camera.set(zoom=0.25, pos=(0, 0), image="CG ass expand classroom A2", trans=dissolve) + + gen "..." ("grin", xpos="far_left", ypos="head") + her "And it didn't take long until the other students noticed my..." ("angry", "narrow", "base", "R", cheeks="blush") + gen "Defined derriere!" ("base", xpos="far_left", ypos="head") + her "That's one way to say it..." ("base", "narrow", "base", "down", cheeks="blush") + her "Once I had finished, I realised almost everyone had been staring at me the entire time instead of the blackboard..." ("base", "narrow", "base", "R", cheeks="blush") + her "I doubt any of them learnt a thing about the Witch hunts..." ("open", "narrow", "base", "R", cheeks="blush") + gen "Well... What's happened, happened." ("base", xpos="far_left", ypos="head") + gen "No need to dwell on it..." ("base", xpos="far_left", ypos="head") + her "[genie_name], the witch hunts were--" ("angry", "base", "base", "mid", cheeks="blush") + gen "Not the witch hunts [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Oh... Right..." ("disgust", "base", "base", "mid", cheeks="blush") + gen "Well, you've certainly deserved your points." ("base", xpos="far_left", ypos="head") + gen "{number=current_payout} points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "... Thank you." ("base", "narrow", "base", "down", cheeks="blush") + + hide screen animatedCG + with fade + + gen "That will be all for today..." ("base", xpos="far_left", ypos="head") + her "Okay..." ("open", "base", "base", "mid", cheeks="blush") + gen "Until next time [hermione_name]..." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + $ her_ass_expand_drank = True + $ her_ass_expand_pub_done = True + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/events/potions/breast_expand.rpy b/game/scripts/characters/hermione/events/potions/breast_expand.rpy new file mode 100644 index 00000000..08e802f7 --- /dev/null +++ b/game/scripts/characters/hermione/events/potions/breast_expand.rpy @@ -0,0 +1,1378 @@ + +default her_breast_expand_drank = False +default her_breast_expand_effects_known = False # If genie knows potion worked +default her_breast_expand_groped = False +default her_breast_expand_pub_low_reputation_done = False +default her_breast_expand_pub_high_reputation_done = False + +label potion_breast_make: + + call give_reward("You have successfully created a new potion!", breast_potion_ITEM) + + gen "There we go." ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/sniff.ogg") + pause .5 + gen "Smells pretty good!" ("base", xpos="far_left", ypos="head") + gen "I bet Hermione will love this one." ("base", xpos="far_left", ypos="head") + return + +label her_potion_breasts_give: + + if hermione.is_worn("robe"): + gen "Before we begin... Why don't you take those robes off and make yourself comfortable." ("base", xpos="far_left", ypos="head") + her "Alright..." ("soft", "squint", "base", "mid") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe") + with d3 + gen "Now then..." ("base", xpos="far_left", ypos="head") + else: + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + + $ current_payout = 20 + + gen "What would it take for you to drink this potion?" ("base", xpos="far_left", ypos="head") + call nar(">You bring out the potion and hand it to Hermione.") + call her_chibi("hold_potion","mid","base") + with d3 + + if not her_breast_expand_drank: + her "A potion?" ("open", "squint", "base", "mid") + gen "Why yes... And it's one of the nicer smelling ones." ("base", xpos="far_left", ypos="head") + + if her_whoring < 19: + her "*Hmm*... You really want me to drink this?" ("angry", "narrow", "base", "mid") + gen "Of course! I'll give you twenty points for it." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "squint", "base", "R") + + her "Alright then..." ("soft", "base", "base", "R") + else: #Drank + call her_chibi("sniff_potion","mid","base") + pause 0.2 + $ renpy.sound.play("sounds/sniff.ogg") + pause 0.6 + call her_chibi("hold_potion","mid","base") + + if her_breast_expand_effects_known: + her "*Sniff*" ("normal", "happy", "base", "mid") + her "Another breast expansion potion?" ("open", "squint", "base", "mid") #Neutral face + gen "Good guess!" ("base", xpos="far_left", ypos="head") + her "It does have that distinctive smell to it..." ("open", "squint", "base", "R") #Neutral face + + if her_whoring < 19: + her "I mean... I guess it wasn't so bad." ("open", "closed", "base", "mid") #neutral face + her "I had my teeth shrunk at some point too, so I'm not overly against body modifications..." ("open", "base", "base", "mid") + gen "You had your teeth shrunk?" ("base", xpos="far_left", ypos="head") + her "Yes?" ("disgust", "base", "base", "mid") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "Do you want me to drink the potion or not?" ("annoyed", "narrow", "base", "mid") + + menu: + "\"No, you fucking weirdo!\"": + her "What did you just call me?" ("angry", "narrow", "annoyed", "mid", cheeks="blush") + gen "Oh, sorry did I say that out loud?" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "annoyed", "mid", cheeks="blush") + gen "You had your teeth shrunk?" ("base", xpos="far_left", ypos="head") + gen "Now that's too much even for me..." ("base", xpos="far_left", ypos="head") + her "What!?! Why!" ("disgust", "squint", "annoyed", "mid", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + her "You're teasing me again aren't you?" ("annoyed", "narrow", "annoyed", "R", cheeks="blush") + gen "..." ("grin", xpos="far_left", ypos="head") + her "Very funny, [genie_name]..." ("soft", "narrow", "base", "mid", cheeks="blush") + her "..." ("angry", "narrow", "base", "R", cheeks="blush") + her "So you want me to drink it or--" ("open", "narrow", "base", "mid", cheeks="blush") + gen "Yes!" ("base", xpos="far_left", ypos="head") + "\"Does the Pope shit in the woods?\"": + her "Huh?" ("disgust", "base", "base", "mid") + gen "Figuratively speaking." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "squint", "base", "mid") # Still confused + gen "... It means yes, I want you to drink the potion." ("base", xpos="far_left", ypos="head") + her "(Weirdo...)" ("angry", "narrow", "base", "R") + "\"Yes, just don't make it weird.\"": + her "Hey, I'm not the one asking people to drink random concoctions am I?" ("angry", "narrow", "base", "mid") + gen "Fair point." ("base", xpos="far_left", ypos="head") + else: + her "*Sniff*" ("normal", "squint", "base", "mid") + her "This smells familiar." ("open", "squint", "base", "mid") #Neutral face + her "Is it that other potion you gave me that had no effect?" ("open", "squint", "base", "R") + gen "Maybe." ("base", xpos="far_left", ypos="head") + her "Okay, I can drink that one." ("open", "closed", "base", "mid") # Slight smile + her "Whatever you put in it, it made me sleep like a baby." ("base", "closed", "base", "mid") # Averts gaze (she's lying) + gen "Hopefully it works this time..." ("base", xpos="far_left", ypos="head") + + show screen blktone + with d3 + + if her_whoring < 19: + her "(Please don't work, please don't work.)" ("normal", "narrow", "base", "down") + her "(My breast ached so much I couldn't even sleep...)" ("angry", "narrow", "base", "down") + her "(I can't give him the satisfaction!)" ("angry", "closed", "base", "mid") + else: + her "*Sigh*..." ("base", "narrow", "base", "down") + + her "(My breasts ached so much...{w=0.4} I can't believe even the smallest touch almost made me cum on the spot...)" ("base", "narrow", "base", "down", cheeks="blush") + her "(If I spend another night relieving myself I'll start running out of excuses on why I'm missing the morning class...)" ("normal", "narrow", "base", "down", cheeks="blush") + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "(Although it sure was enjoyable...)" ("base", "narrow", "base", "down") + + hide screen blktone + with d3 + + gen "Something wrong, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "N-- No, it's nothing." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "If you say so." ("base", xpos="far_left", ypos="head") + + call nar(">Hermione takes one last look at the potion and then brings it up to her mouth.") + her "Well then...{w=0.3} bottoms up!" ("angry", "base", "base", "mid") + + + call her_chibi("drink_potion","mid","base") + pause 0.6 + $ renpy.sound.play("sounds/gulp.ogg") + pause 0.8 + call her_chibi("stand","mid","base") + call nar(">Hermione swallows the potion in a series of gulps.") + + + her "*Ahhh*..." ("open", "closed", "base", "mid") + call her_chibi("stand", "mid", "base") + + if not her_breast_expand_drank: + her "*shakes head*" ("angry", "happyCl", "base", "mid") + her "*Ugh*, the smell wasn't so bad, but the taste..." ("disgust", "squint", "base", "mid") + her "It's like sour milk." ("disgust", "narrow", "base", "mid") + gen "You'll be fine." ("base", xpos="far_left", ypos="head") + her "I would hope so..." ("open", "squint", "base", "mid") + + her "Now what?" ("open", "squint", "base", "mid") + + # Send to class, or + # Tell her to take out/show off her tits + menu: + "-Send her to class-": + + if her_whoring < 19: + + if not her_breast_expand_drank: + gen "*Hmm*...{w=0.4} It appears as if the potion may have been a failure or something should've happened." ("base", xpos="far_left", ypos="head") + her "Oh... So what should I--" ("soft", "base", "base", "mid") + + call nar(">You notice Hermione's breasts bounce slightly as the potion begins to take effect.") + + her "..." ("angry", "wide", "base", "stare") #surprised + + gen "Something wrong [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... No [genie_name]... I just thought I felt something for a moment." ("angry", "squint", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + gen "Well, since it didn't appear to work, you're free to go." ("base", xpos="far_left", ypos="head") + else: + + if her_breast_expand_effects_known: + gen "Any moment now..." ("base", xpos="far_left", ypos="head") + + call nar(">You notice Hermione's breasts bounce slightly as the potion begins to take effect.") + + her "*Ah*... I-- I think my breasts are--" ("angry", "narrow", "base", "down", cheeks="blush") # Slightly panting + gen "Itchy?" ("base", xpos="far_left", ypos="head") + her "No, that's not,{w=0.2} *Ah*...{w=0.4} it... It's hard to describe." ("open", "happyCl", "worried", "mid", cheeks="blush") + gen "In any case, you are free to leave and get back to class." ("base", xpos="far_left", ypos="head") + gen "Report back to me when you're done." ("base", xpos="far_left", ypos="head") + her "Y-- Yes [genie_name]..." ("angry", "squint", "base", "mid", cheeks="blush") + her "Can I have my points now?" ("angry", "base", "base", "R") + else: + gen "That's odd... Something should've happened." ("base", xpos="far_left", ypos="head") + her "Did you brew it right?" ("annoyed", "squint", "base", "mid") + gen "Of course I--" ("base", xpos="far_left", ypos="head") + + call nar(">You notice Hermione's breasts bounce slightly as the potion begins to take effect.") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "I think you better head to class, [hermione_name]." ("base", xpos="far_left", ypos="head") + + her "Of course, [genie_name]." ("open", "squint", "base", "mid") + her "Can I have my points then?" ("soft", "base", "base", "mid") + + gen "Certainly." ("base", xpos="far_left", ypos="head") + + gen "{number=current_payout} points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += current_payout + + her "Thank you, [genie_name], I'll head to class then." ("open", "squint", "base", "mid") + else: #19+ + + if not her_breast_expand_drank: + gen "*Hmm*... Looks like a dud..." ("base", xpos="far_left", ypos="head") + her "A dud, [genie_name]?" ("annoyed", "squint", "base", "mid") + gen "Yes... Well then... You better head back to class for today, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Already?" ("annoyed", "squint", "worried", "mid") + gen "Yes, I'll let you know once I've brewed another one of these." ("base", xpos="far_left", ypos="head") + her "Oh... Alright..." ("open", "narrow", "base", "down") + else: + + if her_breast_expand_effects_known: + gen "Alright then, off to class you go..." ("base", xpos="far_left", ypos="head") + her "*Aww*... But I was hoping--" ("soft", "squint", "base", "R") + her "*Ahem*... I mean-- Alright..." ("open", "narrow", "base", "down") + else: + gen "Is it working, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "It's difficult to say, I don't feel any different..." ("open", "squint", "base", "mid") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Then I maybe it's best you head back to class for today." ("base", xpos="far_left", ypos="head") + her "Oh... Okay." ("base", "squint", "base", "mid") + gen "Since you drank it I suppose you've earned your points." ("base", xpos="far_left", ypos="head") + + gen "{number=current_payout} points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += current_payout + her "Thank you, [genie_name]..." ("open", "base", "base", "mid") #annoyed #blush + + call her_walk("door") + + if hg_pr_flash.counter > 0: ## Triggers public return event ## + # Variant where she's used to flashing people. + + if not her_breast_expand_drank: + + call nar(">As Hermione reaches the door she stops and her body lurches slightly, the potion now beginning to spread through her body.") + #Hermione turns around + call her_chibi(flip=False) + pause .5 + + her "[genie_name]..." ("angry", "squint", "base", "mid", trans=d3) + gen "Yes, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Just out of curiosity... What was the potion supposed to do?" ("angry", "squint", "base", "mid") + + menu: + "\"Oh... It was supposed to make your breasts bigger.\"": + if her_whoring < 19: + her "It was supposed to do what?" ("open", "base", "base", "stare", cheeks="blush") # Slightly shocked + gen "What? You didn't oppose to drinking this potion did you?" ("base", xpos="far_left", ypos="head") + her "No, but I didn't--" ("angry", "squint", "base", "mid", cheeks="blush") + gen "It's not like you're not getting anything out of this, are you?" ("base", xpos="far_left", ypos="head") + her "That's true..." ("open", "squint", "base", "R") + her "Oh well, whatever, the potion obviously did not work, there's no point arguing about it." ("angry", "closed", "base", "mid") + gen "Exactly." ("grin", xpos="far_left", ypos="head") + gen "In any case, you better be off or you'll miss class." ("base", xpos="far_left", ypos="head") + + else: + her "It-- I thought you liked my--" ("angry", "narrow", "base", "down", cheeks="blush") + gen "I do, but there's something about a big pair of tits that I find captivating." ("base", xpos="far_left", ypos="head") + gen "Besides, wouldn't it be fun to try something different for a change?" ("base", xpos="far_left", ypos="head") + her "I guess..." ("upset", "narrow", "base", "R", cheeks="blush") + gen "Anyhow, back to class you go [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "Let me know if there's any developments." ("base", xpos="far_left", ypos="head") + + "\"It's a secret.\"": + her "I see..." ("open", "squint", "base", "R") + gen "Yeah, too bad it didn't work." ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.4} Right..." ("angry", "narrow", "base", "mid") + call nar(">You watch as Hermione shift around uncomfortably.") + her "I think I better head off then." ("angry", "narrow", "base", "mid") + gen "Certainly." ("base", xpos="far_left", ypos="head") + gen "Let me know if there's any... developments." ("base", xpos="far_left", ypos="head") + her "*Huh*?." ("angry", "squint", "base", "mid") + gen "Nevermind, just get back to class [hermione_name]." ("base", xpos="far_left", ypos="head") + + her "Alright." ("open", "base", "base", "R") + else: + gen "[hermione_name]." ("base", xpos="far_left", ypos="head") + + #Hermione turns around + call her_chibi(flip=False) + her "Yes, [genie_name]?" ("soft", "base", "base", "mid", trans=d3) + + if her_breast_expand_effects_known: + gen "Have fun in class." ("grin", xpos="far_left", ypos="head") + + if her_whoring < 19: + her "*Ah* You know I'm not doing it for fun--" ("open", "narrow", "base", "R", cheeks="blush") + + call nar(">You watch as Hermione's breasts bounce again.") + + gen "*Heh*, sure. Whatever you say, [hermione_name]." ("base", xpos="far_left", ypos="head") + else: # 19+ + her "*Ah* Maybe I will, [genie_name], maybe I will." ("soft", "narrow", "base", "R", cheeks="blush") + gen "That's my girl." ("base", xpos="far_left", ypos="head") + + gen "Let me know how it went." ("base", xpos="far_left", ypos="head") + her "Yes [genie_name]." ("open", "closed", "base", "mid", cheeks="blush") + gen "Dismissed!" ("base", xpos="far_left", ypos="head") + else: + gen "Make sure to note if there's any... Developments, got it?" ("base", xpos="far_left", ypos="head") + her "*Ah* Yes, [genie_name]." ("soft", "squint", "base", "R") + + call nar(">You watch as Hermione's breasts bounce again.") + + gen "In details!" ("grin", xpos="far_left", ypos="head") + gen "And If so, report to me as soon as you're done with your classes." ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]." ("open", "closed", "base", "mid") + + #Hermione leaves + call her_walk(action="leave") + + # Set Return event + $ breast_potion_ITEM.set_active("hermione") + + # Flags are not set to True here, instead they are set in the return event to not break the writing. + + jump end_hermione_event + + else: ## Doesn't trigger public return event ## + + pause 0.5 + call chibi_emote("thought", "hermione") + + pause 1.0 + + call nar(">You watch Hermione suddenly stop right at the door.") + + #Hermione turns around + call her_chibi(flip=False) + call ctc + + if not her_breast_expand_drank: + her "[genie_name]... This potion..." ("soft", "squint", "base", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + call nar(">Suddenly Hermione jumps slightly and a shocked expression spreads across her face.") + else: + if her_whoring < 19: + her "(Not this again...)" ("angry", "narrow", "base", "down") + her "(*Ah*... My breasts are starting to get sensitive.)" ("angry", "happyCl", "base", "mid") + her "(I can't go to classes like this, it would ruin my reputation...)" ("angry", "narrow", "base", "down") + else: + her "(By merlin's beard! It's happening again!)" ("angry", "narrow", "base", "down") + her "(What am I thinking... I can't go to classes like this, not if I get as horny as last time...)" ("angry", "narrow", "base", "down", cheeks="blush") + her "(Not to mention, it would affect my reputation...)" ("disgust", "closed", "base", "mid") + + her "*Ehm*..." ("angry", "narrow", "base", "mid") + her "You know, *Ah*...{w=0.4} I don't feel that great so I think I'll just head to my dorm for today." ("angry", "closed", "base", "mid") + gen "Are you sure? It's not very like you to miss class, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "*Ah*...{w=0.4} Yes, I--{w=0.2} I'm sure..." ("open", "closed", "worried", "mid", cheeks="blush") + gen "Very well [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "B-- Bye then!" ("angry", "squint", "base", "mid", cheeks="blush") + + #Hermione leaves + call her_walk(action="leave") + + gen "(Looks like she isn't willing to risk going to class...)" ("base", xpos="far_left", ypos="head") + gen "(Perhaps if I asked her to do some other stuff in public she'd be more susceptible to the idea.)" ("base", xpos="far_left", ypos="head") + + $ her_breast_expand_drank = True + # We only need to set the 'drank' flag. + + jump end_hermione_event + + "-Tell her to take out her tits-" if hermione.is_any_worn("top", "bra"): + + gen "Get your tits out!" ("base", xpos="far_left", ypos="head") + + "-Tell her to display her titties-" if not hermione.is_worn("top", "bra"): + + gen "Give me a better look of those tits." ("base", xpos="far_left", ypos="head") + + if not her_breast_expand_drank: + if her_whoring < 19: + her "I don't think so [genie_name]... You're only paying me for drinking the potion." ("angry", "narrow", "base", "mid") + if hermione.is_any_worn("top", "bra"): + her "If you expected to see me without anything covering them then you should've said so at the start." ("angry", "closed", "base", "mid") + gen "Oh, I didn't think that would be necessary is all." ("base", xpos="far_left", ypos="head") + her "That's it then? It makes me show you my breasts? Is it some sort of mind control potion?" ("open", "narrow", "base", "mid") + gen "Mind control? Where's the fun in that? No, this is something much more entertaining." ("base", xpos="far_left", ypos="head") + her "If not mind control, then what on earth--" ("open", "closed", "base", "mid") + call nar(">You notice Hermione's clothes getting tighter as the potion begins to take effect.") + call nar(">Hermione unconsciously adjusts them as they get less and less comfortable by the minute.") + her "*Hmm*... Something better be happening soon or I'm out of here." ("angry", "narrow", "base", "R") + gen "Looks to me as if something's already happened." ("base", xpos="far_left", ypos="head") + her "Something--{w=0.2} What do you--{w=0.2} What's wrong with me?" ("angry", "squint", "base", "mid") + gen "There's nothing wrong with you. Although I'd get those breasts out if I were you..." ("base", xpos="far_left", ypos="head") + else: + her "If you expected me to give you a better view then you should've said so at the start." ("angry", "closed", "base", "mid") + gen "If you say so... You won't really have much choice in a minute or two once that potion kicks in." ("base", xpos="far_left", ypos="head") + her "What's that's supposed to mean?" ("open", "narrow", "base", "mid") + gen "You'll just have to wait and find out, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Well whatever it is, it better happen soon otherwise I'm going--" ("open", "closed", "base", "mid") + call nar(">You notice Hermione's breasts jiggle slightly as the potion begins taking effect.") + call nar(">After a brief moment of confusion Hermione then continues...") + her "As I said, something better be happening soon or I'm leaving." ("angry", "narrow", "base", "R") + gen "I wouldn't worry about it, from the looks of it, something already happened." ("base", xpos="far_left", ypos="head") + her "It-- Where? What's happened to me?" ("angry", "squint", "base", "mid") + gen "Well, nothing major yet..." ("base", xpos="far_left", ypos="head") + + her "What do you--" ("angry", "base", "base", "mid") + + call nar(">Hermione starts checking herself, trying to find what you're referring to...") + + her "I don't see what you could possibly be--" ("open", "squint", "base", "mid") + + call nar(">Hermione looks down as her breast suddenly bounces on its own accord...") + + her "!!!" ("clench", "narrow", "base", "down") + her "What's happening to my breasts?!" ("clench", "squint", "base", "mid") + gen "About time you noticed..." ("base", xpos="far_left", ypos="head") + her "Hold on... This means you have..." ("angry", "base", "base", "mid") + + $ camera.set_imagepath("common/") + $ camera.set_image("CG hermione") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=0.5, pos=(-270, -150), initialize=True) + hide hermione_main + show screen animatedCG + with fade + + # Strip top/bra + if hermione.is_any_worn("top", "bra", "accessory"): + pause 1.5 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top", "bra", "accessory") + + call ctc + + $ hermione.set_body(breasts="big1") + $ renpy.sound.play("sounds/boing02.ogg") + with d3 + + gen "You know what they say, can't have too much of a good thing!" ("grin", xpos="far_left", ypos="head") + her "It's the other way around [genie_name]!" ("angry", "squint", "base", "mid") + gen "It is? I prefer my version." ("base", xpos="far_left", ypos="head") + her "So that's it then, the potion is meant to make my breasts a bit bigger?" ("angry", "wink", "base", "mid") + gen "It was meant to make them {i}a lot{/i} bigger..." ("base", xpos="far_left", ypos="head") + gen "Maybe it takes a while for it to take full effect." ("base", xpos="far_left", ypos="head") + her "A lot bigger? How big are they supposed to--" ("clench", "squint", "base", "mid") + + $ hermione.set_body(breasts="big2") + $ renpy.sound.play("sounds/boing02.ogg") + with d3 + + her "Whoa! They're so full..." ("angry", "base", "base", "down") + + else: # 19+ + her "*Hmm*... Is this one of your games again?" ("soft", "narrow", "base", "mid", cheeks="blush") + her "Am I supposed to pretend that I'm being mind controlled? I should've known the potion was a bit too odd tasting for a real potion..." ("grin", "closed", "base", "mid", cheeks="blush") + gen "Yes... Your first order is to proudly display those titties for me!" ("grin", xpos="far_left", ypos="head") + her "Alright then... I hope you've got some extra points--" ("smile", "narrow", "base", "mid", cheeks="blush") + + if hermione.is_any_worn("top", "bra"): + call nar(">You notice Hermione's uniform getting tighter as the potion begins to take effect.") + else: + call nar(">You notice Hermione's breasts jiggle slightly as the potion begins to take effect.") + + her "..." ("soft", "squint", "base", "stare", cheeks="blush") + gen "Something wrong?" ("grin", xpos="far_left", ypos="head") + her "I-I don't know... I thought I felt something in my chest." ("angry", "squint", "base", "mid", cheeks="blush") + gen "Looks like the potion is beginning to take effect." ("base", xpos="far_left", ypos="head") + her "It is? What's it doing?" ("angry", "base", "worried", "mid", cheeks="blush") + + call nar(">Hermione grabs her breasts to check them just as they give of another lurch.") + + her "Oh my!" ("angry", "wide", "base", "mid", cheeks="blush") + her "But this means..." ("soft", "wide", "base", "stare", cheeks="blush") + + $ camera.set_imagepath("common/") + $ camera.set_image("CG hermione") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=0.5, pos=(-270, -150), initialize=True) + hide hermione_main + show screen animatedCG + with fade + + her "" ("soft", "wide", "base", "down", cheeks="blush") + + # Strip top/bra + if hermione.is_any_worn("top", "bra", "accessory"): + pause 1.5 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top", "bra", "accessory") + + call ctc + + $ hermione.set_body(breasts="big1") + $ renpy.sound.play("sounds/boing02.ogg") + with d3 + + her "..." ("open", "wide", "base", "down", cheeks="blush") + her "Of course you did..." ("angry", "base", "base", "mid", cheeks="blush") #blush + gen "Did what?" ("grin", xpos="far_left", ypos="head") + her "My breasts... Surely you knew that this potion would make them grow..." ("angry", "closed", "base", "mid", cheeks="blush") + gen "Looks like your regular size to me [hermione_name]..." ("grin", xpos="far_left", ypos="head") + her "*Hmm*... I thought my breasts were already a good enough size..." ("annoyed", "narrow", "base", "mid", cheeks="blush") #annoyed + gen "Can't have too much of a good thing." ("base", xpos="far_left", ypos="head") + her "That's not--" ("open", "narrow", "base", "mid", cheeks="blush") + + $ hermione.set_body(breasts="big2") + $ renpy.sound.play("sounds/boing02.ogg") + with d3 + + her "Whoa, they grew even more!" ("open", "wide", "base", "down", cheeks="blush") + her "And they're so... squishy?" ("soft", "base", "base", "down", cheeks="blush") + + call nar(">Hermione fondles her newly expanded breasts...") + + her "*Ah*... {w=0.4} And so sensitive too!" ("open", "closed", "worried", "mid", cheeks="blush") + + gen "*He-heh*..." ("grin", xpos="far_left", ypos="head") + gen "Now then... Since the effects are already visible..." ("base", xpos="far_left", ypos="head") + + else: + + if her_whoring < 19: + # She won't ask for points on level 19+ + her "Am I getting paid extra for this?" ("open", "squint", "base", "mid") + + menu: + "\"No way!\"": + gen "Aren't you already getting enough?" ("base", xpos="far_left", ypos="head") + gen "Does your greed have no end?" ("base", xpos="far_left", ypos="head") + her "A simple no would be enough..." ("annoyed", "narrow", "base", "R") + "\"How about ten extra points?\"": + her "*Hmm*. That does sound fair." ("open", "closed", "base", "mid") + + $ current_payout += 10 + + if her_whoring < 21: #Under Sex level + + gen "Step up a bit closer as well..." ("base", xpos="far_left", ypos="head") + gen "I want to see them in all their glory!" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "mid") + + hide hermione_main + with d3 + call her_walk("desk") + + if hermione.is_any_worn("top", "bra", "accessory"): + gen "Good... And now--" ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top", "bra", "accessory") + call ctc + gen "..." ("grin", xpos="far_left", ypos="head") + + her "Alright then... Let's see if the potion is working or not..." ("angry", "narrow", "base", "down", cheeks="blush", trans=d3) + + gen "I'm sure it will..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "R", cheeks="blush") + gen "Feeling anything yet?" ("base", xpos="far_left", ypos="head") + her "No...{w=0.4} Are you sure you gave me the right potion--" ("angry", "narrow", "base", "down") + her "**Eekh*!!!" ("clench", "wide", "base", "stare") #shocked + + call nar (">Hermione jumps as the potion begins to take effect, bouncing her bossom.") + + gen "You were saying?" ("base", xpos="far_left", ypos="head") + her "This... It feels a bit strange..." ("angry", "base", "base", "mid", cheeks="blush") + gen "Oh?" ("base", xpos="far_left", ypos="head") + her "Yes...{w=0.4} There's a slight tingling sensation..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "(Some side effect perhaps?)" ("base", xpos="far_left", ypos="head") + + call nar (">Hermione's breasts expand as the potion spreads through her body.") + + $ hermione.set_body(breasts="big1") + $ renpy.sound.play("sounds/boing02.ogg") + with d3 + + her "*Mmm*..." ("base", "narrow", "base", "stare", cheeks="blush") #showing some pleasure + her "..." ("disgust", "narrow", "base", "R", cheeks="blush") + gen "Looks like I've brewed it just right..." ("grin", xpos="far_left", ypos="head") + her "..." ("annoyed", "happyCl", "base", "down", cheeks="blush") #Happy closed + gen "Don't you want to look at your new breasts [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "... Oh, thank Merlin..." ("angry", "narrow", "base", "down", cheeks="blush") + her "I was readying myself for them to get even--" ("angry", "narrow", "worried", "down", cheeks="blush") + + $ hermione.set_body(breasts="big2") + $ renpy.sound.play("sounds/boing02.ogg") + with d3 + pause .5 + + her "Bigger..." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "You were saying?" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "Now then..." ("base", xpos="far_left", ypos="head") + + else: # 21+ + + her "Alright..." ("base", "squint", "base", "mid", cheeks="blush") + gen "Excellent..." ("base", xpos="far_left", ypos="head") + gen "Come a bit closer as well, will you?" ("base", xpos="far_left", ypos="head") + + hide hermione_main + with d3 + call her_walk("desk") + + # Strip top/bra + if hermione.is_any_worn("top", "bra", "accessory"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top", "bra", "accessory") + call ctc + + her "There you go, how are they looking?" ("grin", "base", "base", "mid", cheeks="blush", trans=d3) + gen "Looks great!" ("base", xpos="far_left", ypos="head") + her "Thanks you..." ("base", "narrow", "base", "mid", cheeks="blush") + her "..." ("base", "narrow", "base", "mid", cheeks="blush") + her "Nothing's happening..." ("upset", "narrow", "base", "down", cheeks="blush") #annoyed + gen "Patience, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "worried", "down", cheeks="blush") + her "This potion is taking way too long--" ("annoyed", "narrow", "annoyed", "mid", cheeks="blush") + + call kiss_her + + her "*Ah*...." ("grin", "narrow", "base", "up", cheeks="blush") #pleasure + + call nar (">Hermione shivers as the potion begins to take effect.") + + gen "There it is..." ("base", xpos="far_left", ypos="head") + her "Is--{w=0.2} Is it normal for the potion to make them so sensitive?" ("grin", "narrow", "base", "stare", cheeks="blush") + gen "Sounds like a side effect, but I'd call that better than advertised." ("grin", xpos="far_left", ypos="head") + her "*Mmm*...{w=0.4} What...{w=0.4} What's that supposed to mean?" ("smile", "narrow", "base", "stare", cheeks="blush") + call nar (">Hermione's breasts bounces slightly as the potion spreads through her body.") + + $ hermione.set_body(breasts="big1") + $ renpy.sound.play("sounds/boing02.ogg") + with d3 + + her "Whoa!" ("soft", "squint", "base", "stare", cheeks="blush") + gen "*He-heh*..." ("grin", xpos="far_left", ypos="head") + her "So heavy..." ("grin", "narrow", "base", "down", cheeks="blush") + her "Although... Are they not supposed to get bigger?" ("open", "narrow", "base", "down", cheeks="blush") + gen "Well..." ("base", xpos="far_left", ypos="head") + + $ hermione.set_body(breasts="big2") + $ renpy.sound.play("sounds/boing02.ogg") + with d3 + + her "*Ah*..." ("grin", "narrow", "base", "up", cheeks="blush") + gen "There they go!" ("grin", xpos="far_left", ypos="head") + gen "They don't call me the potions master for nothing..." ("grin", xpos="far_left", ypos="head") + gen "Now then..." ("base", xpos="far_left", ypos="head") + + hide screen animatedCG + with fade + + ##Genie asks to touch her breasts## + + if her_whoring < 19: + gen "Would you like to earn some additional points?" ("base", xpos="far_left", ypos="head") + else: + gen "How about we take it one step further?" ("base", xpos="far_left", ypos="head") + + if not her_breast_expand_groped: + her "Depends what it is you want..." ("soft", "narrow", "base", "mid", cheeks="blush") + gen "To weigh those melons of course!" ("base", xpos="far_left", ypos="head") + her "Sorry?" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "I want you to come here for a moment and let me have a feel." ("base", xpos="far_left", ypos="head") + her "Oh..." ("open", "squint", "base", "R", cheeks="blush") + + if her_whoring < 19: + her "Of course you do." ("angry", "narrow", "base", "R", cheeks="blush") + gen "So?" ("base", xpos="far_left", ypos="head") + her "I want twenty extra points..." ("open", "closed", "base", "mid", cheeks="blush") + gen "Certainly..." ("base", xpos="far_left", ypos="head") + gen "Now get over here so we can find out just how much bigger they got!" ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "R", cheeks="blush") #annoyed #glancing away #blush + + $ current_payout += 20 + + else: #19+ + her "*Hmm*... Alright, I'll do it..." ("base", "narrow", "base", "mid", cheeks="blush") + gen "Excellent..." ("base", xpos="far_left", ypos="head") + her "Just...{w=0.4} Don't be too rough, okay?" ("soft", "squint", "base", "mid", cheeks="blush") + her "They're sensitive..." ("angry", "narrow", "base", "down", cheeks="blush") + + #Hermione walks to desk (already there on repeat) + call her_walk("desk") + + else: #Grope repeat + her "You want to touch them again I assume..." ("soft", "narrow", "base", "mid", cheeks="blush") + gen "That's right." ("base", xpos="far_left", ypos="head") + + if her_whoring < 19: + her "In that case I want another twenty points like last time..." ("open", "closed", "base", "mid", cheeks="blush") + gen "Twenty points again?" ("base", xpos="far_left", ypos="head") + her "Yes." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "*Hmm*... I can give you additional ten points at best." ("base", xpos="far_left", ypos="head") + her "But..." ("mad", "squint", "worried", "mid", cheeks="blush") + gen "If I were to give you the same amount of points every time then why would you ever want to do something new." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "R", cheeks="blush") + gen "No... Ten extra points should suffice." ("base", xpos="far_left", ypos="head") + her "Alright, fine... I'll do it..." ("open", "narrow", "base", "mid", cheeks="blush") + + $ current_payout += 10 + + else: #19+ + her "I should've guessed..." ("base", "narrow", "base", "R", cheeks="blush") #smirk + gen "Can't waste such an opportunity can we?" ("grin", xpos="far_left", ypos="head") + her "If touching my breasts is what you want then go ahead..." ("open", "closed", "base", "mid", cheeks="blush") + her "I don't mind..." ("base", "closed", "base", "mid", cheeks="blush") # smirk + + gen "Great! Get up here [hermione_name]." ("grin", xpos="far_left", ypos="head") + + show screen blkfade + + call nar(">Hermione walks over to behind your desk, her breasts swaying rhythmically as she moves.") + pause .8 + + hide hermione_main + + #Genie groping breast chibi animation nude top + call her_chibi_scene("grope_tits") + call play_music("playful_tension") # SEX THEME. + + call nar(">With the two big globes presented in front of you, you reach out and grab one in each hand and begin massaging them.") + hide screen blkfade + + if not her_breast_expand_groped: + her "!!!" ("angry", "narrow", "worried", "down", cheeks="blush", xpos="mid", ypos="base", trans=d3) + her "Please be gentle [genie_name]... The potion made them even more sensitive than usual." ("angry", "squint", "base", "mid", cheeks="blush") + gen "{i}Even more{/i}?" ("base", xpos="far_left", ypos="head") + her "I mean--" ("clench", "squint", "base", "R", cheeks="blush") + + call nar(">Before she can finish, you start kneading her breasts even harder with your fingers.") + + her "..." ("soft", "closed", "base", "mid", cheeks="blush") + gen "They sure feel much more tender than usual." ("base", xpos="far_left", ypos="head") + gen "On top of the extra cup size that is." ("base", xpos="far_left", ypos="head") + + call nar(">You continue massaging Hermione's breasts, loosening your grip and sliding your hands around them gently.") + + her "W-- wait... I'm feeling something--" ("open", "squint", "base", "stare", cheeks="blush") + + # Note: Dissolve works better for the image, but vpunch is fine with the sound effect + + $ renpy.sound.play("sounds/boing04.ogg") + with vpunch + + $ hermione.set_body(breasts="big3") + with d3 + + + if her_whoring < 19: #Under blowjob level + her "*Ahhhh*!!!" ("scream", "wide", "base", "down", cheeks="blush") + her "They've grown even bigger!" ("angry", "base", "base", "down", cheeks="blush") + gen "Don't worry about it [hermione_name], think about how you're helping your precious {i}Gryffindeer{/i}." ("base", xpos="far_left", ypos="head") + her "It's Gryffindor, [genie_name]!" ("open", "happyCl", "base", "mid", cheeks="blush") + + her "*Ah*..." ("soft", "happyCl", "base", "mid", cheeks="blush") + + her "J-- Just hurry up..." ("annoyed", "happyCl", "base", "mid", cheeks="blush") + + else: + her "They... They've grown even bigger..." ("soft", "base", "base", "down", cheeks="blush") + gen "Yes they have." ("grin", xpos="far_left", ypos="head") + her "And..." ("angry", "closed", "base", "down", cheeks="blush") + + her "They seem to have become even more sensitive..." ("open", "happyCl", "base", "mid", cheeks="blush") + gen "Really?" ("base", xpos="far_left", ypos="head") + + call nar(">You take both nipples between your thumb and index finger and tug on them.") + + her "*Ouch!*" ("angry", "wide", "base", "mid", cheeks="blush") + gen "Yes... They do appear to be even more sensitive than before..." ("base", xpos="far_left", ypos="head") + + else: + her "*Ah*..." ("open", "closed", "worried", "mid", cheeks="blush", xpos="mid", ypos="base", trans=d3) + her "*Hnngh*..." ("clench", "closed", "base", "mid", cheeks="blush") #blushes + + + $ renpy.sound.play("sounds/boing04.ogg") + with vpunch + + $ hermione.set_body(breasts="big3") + her "Aaaah!!!" ("scream", "wide", "base", "stare", cheeks="blush") + with d3 + + gen "Now that's more like it!" ("base", xpos="far_left", ypos="head") + gen "Real weighty these things aren't they?" ("base", xpos="far_left", ypos="head") + + if her_whoring < 19: + her "[genie_name]... That's not--" ("angry", "squint", "base", "stare", cheeks="blush") + else: + her "Oh... Yes..." ("base", "closed", "base", "mid", cheeks="blush") + + gen "Are they just as sensitive as last time?" ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("disgust", "narrow", "base", "R", cheeks="blush") + + call nar(">You tug on Hermione's nipples once more, making her yelp in surprise.") + + her "*Ouch!!*" ("angry", "happyCl", "base", "mid", cheeks="blush") + her "..." ("disgust", "narrow", "base", "down", cheeks="blush") #blush + gen "I suppose that answers that question..." ("base", xpos="far_left", ypos="head") + + if her_whoring < 21: ## Doesn't cum ## + call nar(">You take Hermione's breasts back into your hands and continue massaging.") + + gen "Now... Stay still, [hermione_name]." ("base", xpos="far_left", ypos="head") + + call nar(">You start rolling Hermione's nipples in between your fingers.") + + her "What... What are you doing?" ("angry", "narrow", "base", "down", cheeks="blush") #blush + gen "I'm touching your breasts [hermione_name], wasn't that what we agreed on?" ("base", xpos="far_left", ypos="head") + her "Yes but--" ("clench", "closed", "worried", "mid", cheeks="blush") #blush + + call nar(">You resume running your fingers across her breasts.") + + if her_whoring < 19: + gen "Those points aren't going to earn themselves are they?" ("base", xpos="far_left", ypos="head") + + call nar(">You pinch Hermione's nipples making her yelp in surprise.") + + her "*Oohh*..." ("angry", "closed", "worried", "mid", cheeks="blush") #pleasure #still eyes closed + gen "..." ("grin", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "down", cheeks="blush") #Wide eyed + her "Don't pinch them, [genie_name]!" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "It looked like you enjoyed it though..." ("base", xpos="far_left", ypos="head") + her "I did not!" ("angry", "narrow", "base", "R", cheeks="blush") #blush + gen "Very well... I suppose that's it for today then..." ("base", xpos="far_left", ypos="head") + her "But I'm still--{w=0.2} I mean...{w=0.4} Alright..." ("disgust", "squint", "base", "mid", cheeks="blush") + + show screen blkfade + with d5 + + call her_chibi("stand") + call gen_chibi("sit_behind_desk") + her "" ("annoyed", "squint", "base", "R", xpos="right", ypos="base", trans=d3) + + hide screen blkfade + with d5 + + gen "Good work, [hermione_name]... {number=current_payout} points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "{size=-4}I'm glad at least one of us got some gratification out of it...{/size}" ("normal", "narrow", "base", "down", cheeks="blush") # Annoyed that Genie cut it short + + if not her_breast_expand_drank: + her "I'll be heading out now." ("open", "closed", "base", "mid", cheeks="blush") + + #Hermione walks to the door + call her_walk("door") + + if her_whoring < 19: + her "Wait!" ("angry", "narrow", "base", "stare", cheeks="blush", xpos="base", ypos="base", flip=True) + her "I can't go out like this!" ("open", "squint", "base", "stare", cheeks="blush") + gen "Why? What's the problem?" ("base", xpos="far_left", ypos="head") + else: + her "Hold on..." ("open", "narrow", "base", "down", cheeks="blush", xpos="base", ypos="base", flip=True) + her "I almost forgot to put something on." ("base", "narrow", "base", "down", cheeks="blush") + + hide hermione_main + with d3 + call her_chibi(flip=False) + + else: + her "I'll head out as soon as the effects wear off." ("open", "closed", "base", "mid", cheeks="blush") + + if hg_pr_flash.counter > 0: + gen "It's not like you haven't gone topless in public before, have you?" ("base", xpos="far_left", ypos="head") + her "Yes but--" ("angry", "narrow", "base", "mid", cheeks="blush", flip=False, trans=dissolve) + + if her_whoring < 19: + + if not her_ass_expand_pub_done: + gen "Haven't I given you your points already?" ("base", xpos="far_left", ypos="head") + gen "I'm certain you usually leave after that." ("base", xpos="far_left", ypos="head") + her "Yes, but not like this..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "I don't see any difference..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "mid", cheeks="blush") + her "Fine, I'm not going to argue with you..." ("open", "closed", "worried", "mid", cheeks="blush") + gen "Good girl." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + gen "Now then... Back to being productive." ("base", xpos="far_left", ypos="head") + else: + gen "As far as I remember we've already done {i}butts{/i}." ("grin", xpos="far_left", ypos="head") + her "*tsk*" ("normal", "narrow", "base", "R") + her "I'd rather leave than listen to your ass-jokes any longer." ("open", "narrow", "base", "mid") + gen "Jokes? I'm not sure why you're making such {i}ass{/i}-umptions all of a sudden--" ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + gen "..." ("base", xpos="far_left", ypos="head") + gen "She didn't even let me get to the good bit..." ("base", xpos="far_left", ypos="head") + gen "Oh well, back to being productive." ("base", xpos="far_left", ypos="head") + + jump .end + + else: # 19+ + gen "No buts." ("base", xpos="far_left", ypos="head") + gen "Not this time at least." ("grin", xpos="far_left", ypos="head") + her "*Sigh*... It's as if you are obsessed with all things sexual." ("base", "narrow", "base", "R") + gen "Only when it's about you my dear [hermione_name]." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("base", "narrow", "base", "R", cheeks="blush") # Blushes + her "I'll get going then..." ("open", "base", "base", "mid", cheeks="blush") + gen "That you shall." ("base", xpos="far_left", ypos="head") + gen "Good luck!" ("grin", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + jump .end + + else: + if not her_breast_expand_drank: + gen "Can't you just avoid public places on your way out to your dormitory?" ("base", xpos="far_left", ypos="head") + if her_whoring < 19: + her "The dormitory is a public place!" ("angry", "squint", "base", "mid", cheeks="blush", flip=False, trans=dissolve) + her "Even then, the castle is full of moving pictures, they're like surveillance..." ("angry", "base", "worried", "mid") + else: + her "You want me to go out like this?" ("open", "narrow", "base", "down", flip=False, trans=d3) + her "*Hmm*...{w=0.3} No I think I'd rather stay in here until I can put my top on..." ("base", "narrow", "base", "R") + gen "Fine. I guess you can wait here until the effects wear off..." ("base", xpos="far_left", ypos="head") + gen "I don't really mind either way." ("grin", xpos="far_left", ypos="head") + else: + gen "Fine by me." ("base", xpos="far_left", ypos="head") + + show screen blkfade + with d3 + + call nar(">You wait with Hermione until the effects of the potion wears off.") + call nar(">Shortly after, she decides to leave your office.") + + call her_chibi("hide") + call gen_chibi("sit_behind_desk") + hide hermione_main + + hide screen blkfade + with d3 + + else: #21+ ##She cums## + her "Please don't do anything sudden like that." ("open", "happyCl", "base", "down", cheeks="blush") + gen "What, this?" ("grin", xpos="far_left", ypos="head") + + call nar(">You take both nipples between your thumb and index finger and tug on them.") + + her "!!!" ("grin", "narrow", "base", "stare", cheeks="blush") + her "Please...{w=0.4} It's as if my nipples are on fire!" ("soft", "narrow", "base", "stare", cheeks="blush") + + call nar(">You start rolling Hermione's nipples in-between your fingers.") + call nar(">As you continue, you catch Hermione shifting her legs uncomfortably.") + + gen "Feeling a little aroused are we?" ("grin", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "base", "stare", cheeks="blush") + gen "Are you paying attention, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes?" ("angry", "squint", "base", "mid", cheeks="blush") + + call nar(">You pinch Hermione's nipples, making her yelp in surprise.") + + her "*Oohh*..." ("grin", "narrow", "base", "stare", cheeks="blush") + gen "(I wonder how far I could take this...)" ("base", xpos="far_left", ypos="head") + + call nar(">You resume running your fingers across her bountiful bosom.") + + her "..." ("base", "narrow", "base", "stare", cheeks="blush") + + call nar(">As you continue rubbing her, you notice that Hermione's eyes are glazed over, numbingly staring into space.") + + gen "Well, well, well... You sure are sensitive aren't you?" ("base", xpos="far_left", ypos="head") + #unfocused pupils from this point + + call nar(">You start alternating, pinching and pulling her nipples out as far as you can, then letting them go before grabbing them again.") + + her "*Ah*..." ("open", "closed", "base", "mid", cheeks="blush") + + call nar(">Hermione lets out an involuntary moan, as the feeling of her increasingly sensitive nipples overwhelm her.") + + her "*Mmm*..." ("base", "narrow", "base", "stare", cheeks="blush") + gen "You little slut!" ("grin", xpos="far_left", ypos="head") + + call nar(">You resume pulling on her nipples, Hermione closes her eyes and starts breathing heavily...") + + her "*Ah*...{w=0.3} *Ah*...{w=0.3} *Ah*..." ("open", "closed", "worried", "mid", cheeks="blush") + + call nar(">Suddenly you feel Hermione begin to tense up and you grab her breasts and squeeze her nipples hard between your fingers.") + + her "*Ngh*--" ("angry", "happyCl", "base", "mid", cheeks="blush") + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + + her "*Ahhhh*!!!" ("grin", "narrow", "base", "stare", cheeks="blush") + gen "Such a naughty girl..." ("base", xpos="far_left", ypos="head") + + show screen blkfade + with d3 + call nar(">Hermione slumps to the floor, breathing heavily as she slowly regains her ability to stand.") + + her "" ("base", "narrow", "base", "stare", cheeks="blush", xpos="right", ypos="base", trans=d3) + call her_chibi("stand") + call gen_chibi("sit_behind_desk") + + hide screen blkfade + with d3 + + #Hermione stands in front of desk + + gen "Fantastic work, [hermione_name]... {number=current_payout} points to Gryffindor!" ("grin", xpos="far_left", ypos="head") + her "Thank you..." ("base", "narrow", "base", "mid", cheeks="blush") # Still dazed + + pause.2 + + gen "Off you go." ("base", xpos="far_left", ypos="head") + her "*Mhm*..." ("base", "narrow", "base", "down", cheeks="blush") # Affirmative murmur, still dazed + + #Hermione leaves + call her_walk(action="leave") + + gen "..." ("base", xpos="far_left", ypos="head") + gen "Is it just me or did she forget to put her clothes back on...?" ("base", xpos="far_left", ypos="head") + gen "*Heh*! That potion must've had a much stronger effect on her than I thought." ("grin", xpos="far_left", ypos="head") + + label .end: + + $ her_breast_expand_groped = True + $ her_breast_expand_drank = True + $ her_breast_expand_effects_known = True + + $ hermione.set_body(breasts="normal") + + jump end_hermione_event + +##Send Hermione to class breast expand Return event## +label her_potion_breasts_return: + + call play_music("stop") + #Hermione enters office and walks to front of desk + call her_walk("desk", "base", action="enter") + + call play_music("hermione") + + if her_reputation < 19: + if not her_breast_expand_pub_low_reputation_done: + + $ her_breast_expand_pub_low_reputation_done = True + + ### TODO: add CG once it's finished + + her "I can't believe you made me do that!" ("angry", "base", "base", "mid", cheeks="blush") + gen "Do what?" ("base", xpos="far_left", ypos="head") + her "Making me attend a class looking like that!" ("annoyed", "squint", "base", "mid", cheeks="blush") + her "On the day we have potion lessons on the schedule no less." ("disgust", "squint", "base", "mid", cheeks="blush") + gen "So I take it you caught some of the students attention?" ("base", xpos="far_left", ypos="head") + her "Some? I would be surprised if all of them weren't staring at me at some point..." ("clench", "narrow", "base", "R", cheeks="blush") + her "And that includes Professor Snape!" ("disgust", "closed", "base", "mid", cheeks="blush") + gen "(I'd be more surprised if they didn't stare...)" ("base", xpos="far_left", ypos="head") + her "And if the stares weren't enough, my breasts just kept growing..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "They did? Now that's unfortunate!" ("grin", xpos="far_left", ypos="head") + her "That was the worst class of my life, I've never felt more humiliated!" ("angry", "happyCl", "base", "mid", cheeks="blush") + her "The Slytherin students kept pointing and laughing at me as I was trying to prepare my concoctions..." ("open", "squint", "base", "mid", cheeks="blush") + her "Asking me if \"I had dipped my fat udders in a swelling solution\"..." ("disgust", "narrow", "annoyed", "R", cheeks="blush") + her "*Ugh!* The nerve of these guys!" ("disgust", "narrow", "annoyed", "mid", cheeks="blush") + gen "Surely the ridicule of some Slytherin students isn't enough for you to lose your focus, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "I thought a top student such as yourself would be able to keep your composure." ("base", xpos="far_left", ypos="head") + her "The Slytherin students' snide remarks is not what bothers me, [genie_name]." ("angry", "narrow", "base", "R", cheeks="blush") + her "But it's hard to focus on the precision needed for potion brewing when everyone in the room is staring at you." ("angry", "closed", "base", "mid", cheeks="blush") + her "I could barely see the cutting board as I was preparing my ingredients..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "(Even then I bet she was the most focused of all of them...)" ("base", xpos="far_left", ypos="head") + her "Have you ever tried picking up Ashwinder's Egg with two beach balls attached to your chest?" ("open", "narrow", "annoyed", "mid", cheeks="blush") + gen "Can't say that I have." ("base", xpos="far_left", ypos="head") + her "--Once I had finally managed to finish my potion, I accidentally knocked it off and smashed it onto the floor..." ("angry", "narrow", "base", "down", cheeks="blush") + her "If it wasn't for the fact that Professor Snape chose to have me stay and clean it up after class, I'm sure I would've lost a lot of points then..." ("disgust", "narrow", "base", "R", cheeks="blush") + gen "That doesn't sound too bad." ("base", xpos="far_left", ypos="head") + her "He made me scrub the entire floor!" ("open", "squint", "annoyed", "mid", cheeks="blush") #screen shake + gen "Can't a little spell take care of that?" ("base", xpos="far_left", ypos="head") + her "Without using magic!" ("scream", "closed", "annoyed", "mid", cheeks="blush") #screen shake + gen "Ah... I see..." ("base", xpos="far_left", ypos="head") + her "I could feel him gawking at my breasts as I was down there on my knees..." ("disgust", "narrow", "base", "down", cheeks="blush") + her "I should've known... The only times he doesn't dock points from me is when there's something he could get out of it." ("disgust", "narrow", "annoyed", "mid", cheeks="blush") + gen "{size=-3}As if you wouldn't just come here and earn them back afterwards...{/size}" ("base", xpos="far_left", ypos="head") + her "What did you say?" ("angry", "base", "base", "mid", cheeks="blush") + gen "Nothing..." ("base", xpos="far_left", ypos="head") + gen "Very well then, [hermione_name]. You've done what I asked of you..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "R", cheeks="blush") + gen "{number=current_payout} points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "...{w=0.4} Thank you, [genie_name]." ("annoyed", "closed", "base", "mid", cheeks="blush") + her "That will be all then, yes?" ("normal", "closed", "base", "mid", cheeks="blush") + gen "Yes, that shall do for now... Unless..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "mid") + gen "On second thought, I'll let you rest...{w=0.4} Off you go!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]..." ("open", "closed", "base", "mid") + else: #Repeat + gen "[hermione_name]... Had a fun day in class?" ("base", xpos="far_left", ypos="head") + her "How did you manage to convince me of doing this again..." ("angry", "narrow", "base", "mid", trans=d3) + gen "Convince you to do what?" ("base", xpos="far_left", ypos="head") + her "Go to class like that!" ("annoyed", "narrow", "worried", "mid") + gen "There was convincing involved?" ("base", xpos="far_left", ypos="head") + her "*Hmph*..." ("annoyed", "narrow", "base", "R") + gen "So... It didn't go well I take it?" ("base", xpos="far_left", ypos="head") + her "No..." ("open", "narrow", "worried", "mid") + + $ camera.set(zoom=0.25, pos=(0, 0), image="CG breast expand corridor B1", overlay=None, initialize=True) + $ camera.set(zoom=0.6, pos=(700, 135), t=180.0) + show screen animatedCG + with fade + + her "Even though I was ready for it and I knew what to expect it didn't go much better than last time..." ("open", "squint", "worried", "R") + her "Any optimism I had after leaving your office went out the window once I remembered we had potions class today." ("disgust", "narrow", "base", "down") + her "When making my way there I was hoping that the effects wouldn't be as prevalent as last time..." ("open", "squint", "worried", "mid") + her "But I didn't even get all the way down the grand staircase before my breasts started growing rapidly." ("angry", "squint", "worried", "mid") + her "I must've had at least a dozen portraits stare at me walking through the corridors on the way there." ("disgust", "narrow", "worried", "R") + gen "Portraits aren't real you know." + her "I know that... But having all these famous witches and wizards stare at you..." ("angry", "squint", "worried", "mid") + her "Well... It's embarrassing... Many of them are role models of mine." ("angry", "narrow", "base", "R", cheeks="blush") + gen "But... They're paintings..." + her "I don't understand how those other girls do it." ("annoyed", "narrow", "base", "down", cheeks="blush") + gen "Other girls?" + her "Oh... I meant the ones with... *Ehm*..." ("angry", "squint", "worried", "mid", cheeks="blush") + gen "Giant tits?" + her "[genie_name]!" ("angry", "happyCl", "base", "mid", cheeks="blush") + gen "..." + her "Yes... That." ("angry", "narrow", "base", "down", cheeks="blush") + her "Surely they must be getting stared at constantly." ("clench", "closed", "base", "mid") + gen "You've had your breasts out in public before, I don't get why you're making such a big deal out of it." + her "That's different!" ("angry", "squint", "worried", "mid", cheeks="blush") + gen "How is it different?" + her "Flashing my breast to one person and sitting through a whole lesson with your breasts as big as melons are two completely different things!" ("angry", "narrow", "annoyed", "R", cheeks="blush") + her "When I'm in class, I'm forced to just let the other students stare at me the entire time until the effect goes away." ("angry", "narrow", "annoyed", "down", cheeks="blush") + gen "Other students and Snape." + her "Don't even let me get started on Professor Snape." ("angry", "squint", "annoyed", "mid", cheeks="blush") + gen "{size=-4}Oh boy, what have I done...{/size}" + her "Brewing was the least of my worries..." ("angry", "narrow", "annoyed", "mid", cheeks="blush") + her "Even more of the students took notice of my condition this time around." ("open", "narrow", "annoyed", "R", cheeks="blush") + her "I pretty much gave up trying to grind up my shrivel figs after realising how it was making my breasts jiggle." ("open", "narrow", "annoyed", "down", cheeks="blush") + gen "Giving up during a lecture? That doesn't sound very much like you, [hermione_name]..." + her "One of the Slytherin boys watching me was masturbating for crying out loud!" ("scream", "closed", "annoyed", "mid", cheeks="blush") + gen "Really?" + her "Yes!" ("angry", "base", "annoyed", "mid", cheeks="blush") + gen "(A man of my own heart...)" + gen "I mean, Who could blame him..." + gen "You'd be surprised what people do when they think nobody is looking." + her "Oh, He knew I saw him doing it!" ("mad", "narrow", "annoyed", "mid", cheeks="blush") + her "But of course everyone else's eyes were on me so he got away with it..." ("open", "closed", "annoyed", "mid", cheeks="blush") + her "I couldn't believe it... He was barely every trying to conceal it." ("angry", "narrow", "annoyed", "mid", cheeks="blush") + gen "Are you sure he wasn't just scratching--" + her "No [genie_name]... It was out!" ("open", "base", "annoyed", "mid", cheeks="blush") + her "If I was stood any closer to him I'm sure he could've hit me with it." ("open", "narrow", "annoyed", "R", cheeks="blush") + gen "(Amateur...)" + gen "Wait, when you say \"it\"..." + her "You know exactly what I mean..." ("disgust", "narrow", "annoyed", "R", cheeks="blush") + her "If seeing him do that wasn't bad enough, I was also forced to clean it off the floor afterwards." ("disgust", "narrow", "annoyed", "down", cheeks="blush") + gen "Very admirable of you [hermione_name]... Boys will be boys after all, you know how messy they can be." + her "I didn't volunteer! Snape-- I mean... Professor Snape made me do it." ("angry", "squint", "base", "mid", cheeks="blush") + gen "I'm sure he didn't know... He probably just thought someone spilled their potion again." + her "I'm sure..." ("annoyed", "narrow", "annoyed", "R") + her "A more plausible theory would be that he has always been looking for any excuse to torment me..." ("open", "narrow", "annoyed", "R") + her "According to him, I had been purposely disrupting the class." ("open", "closed", "annoyed", "mid") + gen "*Hmm*... That's a pretty vague reason... He should work on that." + her "As if it's not bad enough that he's favouring students of his own house." ("angry", "narrow", "annoyed", "R") + her "Maybe that's it... He probably saw the boy doing it, and revelled in the thought of making me stay and--" ("disgust", "squint", "annoyed", "R") + gen "[hermione_name]..." + gen "I think I've heard enough..." + + hide screen animatedCG + with fade + + her "..." ("angry", "narrow", "worried", "R", cheeks="blush") + her "So, am I free to go, [genie_name]?" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Yes, you may leave for today..." ("base", xpos="far_left", ypos="head") + gen "{number=current_payout} points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "... Thanks." ("open", "narrow", "worried", "R", cheeks="blush") + else: # 19+ + if not her_breast_expand_pub_high_reputation_done: + + $ her_breast_expand_pub_high_reputation_done = True + + her "Hello [genie_name]..." ("open", "base", "base", "mid", cheeks="blush") + gen "*Mmm*... What?" ("base", xpos="far_left", ypos="head") + gen "Oh it's you, [hermione_name]... Forgive me, I was just... meditating." ("base", xpos="far_left", ypos="head") + gen "So... Got anything to tell me?" ("base", xpos="far_left", ypos="head") + gen "I hope your lessons went well." ("base", xpos="far_left", ypos="head") + her "It went as well as can be expected given that I've got these things to try and work around..." ("open", "narrow", "base", "R", cheeks="blush") #blush, looking away + gen "Details [hermione_name]... I want to hear everything about your day." ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "base", "down", cheeks="blush") + her "Well, I left your office--" ("open", "narrow", "base", "down", cheeks="blush") + + $ camera.set(zoom=0.25, pos=(0, 0), image="CG breast expand corridor A1", overlay=None, initialize=True) + $ camera.set(zoom=0.6, pos=(375, 135), t=180.0) + show screen animatedCG + with fade + + her "And I was making my way to my next class when I suddenly bumped into another student." ("open", "squint", "base", "R", cheeks="blush") + gen "Poor guy probably didn't even know what hit him." + her "I didn't mean it in a literal sense. {size=-4}Unfortunately...{/size}" ("base", "narrow", "base", "down", cheeks="blush") # Changed Fortunately to unfortunately as with High reputation, she'd be fine with it. + her "Although he wasn't exactly looking where he was going and ended up walking right into one of the suits of armour..." ("open", "squint", "base", "mid", cheeks="blush") + her "Which did boost my confidence quite handsomely..." ("grin", "narrow", "base", "mid", cheeks="blush") #smile #glance away + gen "I'm glad that our little experiment could give you such a boost in self-esteem." + if her_reputation < 22: + her "Me too..." ("base", "squint", "base", "mid", cheeks="blush") + her "Not that I had much time to enjoy it." ("open", "narrow", "base", "R") + else: + her "Me too! When I walked past him, I noticed he had grown a boner! Although I didn't get a chance to help him out..." ("base", "squint", "base", "mid", cheeks="blush") + gen "How so? What happened?" + her "Well..." ("disgust", "narrow", "base", "R") + her "I suddenly noticed Professor Snape watching us and as I did, he made sure I followed him to class." ("angry", "narrow", "base", "mid") + her "He must've seen the whole thing because he really made the lesson even more difficult for me than usual." ("open", "narrow", "annoyed", "R", cheeks="blush") + gen "Severus? I'm sure that whatever he did, he meant well... He is here to help you learn after all." + her "Some help he is... He went out of his way to degrade me in front of the entire class!" ("soft", "narrow", "annoyed", "mid", cheeks="blush") + gen "Surely you must be exaggerating, [hermione_name]." + gen "Professor Snape is an esteemed {i}Witcher{/i}--" + gen "--Or a Lich, he does seem kind of pale..." + her "I'll admit, it wasn't bad at first..." ("open", "closed", "annoyed", "mid", cheeks="blush") + her "Chopping ingredients proved a bit difficult, my breasts kept pushing them off of the board, spilling onto the floor in front of me..." ("open", "base", "base", "mid", cheeks="blush") + her "But that was manageable until Professor Snape noticed it and loudly told me off and to pick them up..." ("angry", "narrow", "annoyed", "mid", cheeks="blush") + her "So it didn't take very long for all the students to notice what was going on..." ("open", "narrow", "base", "R", cheeks="blush") + her "At first, it was just those Slytherin delinquents..." ("angry", "narrow", "base", "mid", cheeks="blush") + her "And I can deal with them no problem, as you already know--" ("open", "closed", "base", "mid", cheeks="blush") + her "But then boys from Gryffindor and other houses joined in and began making comments about my chest too." ("annoyed", "narrow", "base", "down", cheeks="blush") + gen "What about the girls? Did any of them notice?" + her "Of course they did! One particular girl from Ravenclaw was saying that I'd done this to try and catch the eye of Professor Snape..." ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "As if!" ("open", "narrow", "annoyed", "mid", cheeks="blush") # annoyed, looking away + gen "I'm sure they were merely jealous of your newfound assets." + her "You know what, you may be right." ("grin", "narrow", "annoyed", "mid", cheeks="blush") + her "Her friend kept staring at me the entire time, but whenever our eyes met she averted her gaze." ("base", "narrow", "annoyed", "mid", cheeks="blush") + gen "Sounds like she was checking you out." + her "She was--" ("angry", "base", "base", "mid", cheeks="blush") + gen "What happened next?" + her "*Ahem*... Well, the lesson was almost over... But that's when {i}it{/i} happened..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "{i}It{/i}? [hermione_name]?" + her "Yes... I was doing my best to follow the potion recipe, but I must have gotten something wrong." ("angry", "narrow", "base", "down", cheeks="blush") + her "Maybe I was distracted... Or maybe I dropped something important..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "Maybe you just were horny!" + her "Or maybe... I just couldn't see all the instructions because your concoction gave me those massive things..." ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "Well... Whatever the case..." + + $ camera.set(zoom=0.25, pos=(0, 0), image="CG breast expand classroom A1", trans=fade) + + her "The mixture exploded and knocked me right off my feet and onto the floor." ("open", "closed", "worried", "mid", cheeks="blush") + her "It was supposed to be a simple antidote! They're not supposed to explode!" ("angry", "base", "base", "mid", cheeks="blush") + gen "Yeah, tell me about it..." + her "I was completely covered in the remains of my potion, face blackened by soot, and there was a knot of goosegrass in my hair." ("disgust", "squint", "base", "mid", cheeks="blush") + her "And the explosion had also destroyed the only thing keeping my dignity intact--" ("angry", "narrow", "base", "down", cheeks="blush") + gen "Was it your twisted sense of justice?" + her "No, [genie_name], it was my vest! Which caused my breasts to flop out, giving the entire class a full view..." ("angry", "narrow", "base", "mid", cheeks="blush") + her "I must have looked ridiculous!" ("open", "closed", "annoyed", "mid", cheeks="blush") + gen "Don't be too hard on yourself, I am partially to blame for your breasts being seen in public, I admit--" + her "I'm talking about the soot on my face, [genie_name]." ("open", "narrow", "annoyed", "mid", cheeks="blush") + gen "Oh..." + + $ camera.set(image="CG breast expand classroom A2", trans=d5) + + her "Luckily one of the boys there was nice enough to use his handkerchief to clean up my face." ("open", "squint", "base", "mid", cheeks="blush") + her "Of course he insisted I had gotten some on my breasts and that he had to help me clean that off as well..." ("base", "narrow", "base", "R", cheeks="blush") + gen "*He-Heh*... Clever boy." + her "Then a fellow Gryffindor took a pity on me, and let me borrow her vest so that I had something to cover up with." ("open", "squint", "base", "mid", cheeks="blush") + her "I promised to give it back to her once I'd had time to shower and get changed, but she said I can keep it if I tell her where I got the swelling solution from." ("grin", "closed", "base", "mid", cheeks="blush") + gen "Well, did you?" + her "I said that the brewer would like to remain anonymous, as to not expose our arrangement." ("open", "squint", "base", "R", cheeks="blush") + gen "I see... I suppose that's for the best." + her "Professor Snape of course, took this as a chance to lecture the others on the dangers of swelling solutions." ("angry", "narrow", "base", "R", cheeks="blush") + her "Saying that I had obviously been more concerned with getting everyone's attention than following his directions!" ("disgust", "base", "base", "mid", cheeks="blush") + her "Even going so far as implying that I had deliberately caused the accident so that I could show off my chest!" ("angry", "narrow", "annoyed", "mid", cheeks="blush") + her "The very idea makes me fume with anger!" ("clench", "closed", "annoyed", "mid", cheeks="blush") + gen "Well, you did just tell me at the beginning that you enjoyed having that boy pay more attention to you than where he was going." + + hide screen animatedCG + with fade + + her "That's... That's different!!" ("angry", "squint", "worried", "mid", cheeks="blush") + gen "How is it different?" ("base", xpos="far_left", ypos="head") + her "That was one boy... Not an entire classroom." ("open", "squint", "worried", "mid", cheeks="blush") + gen "What about that Ravenclaw girl, the one that has been staring at you the entire time?" ("base", xpos="far_left", ypos="head") + gen "You're saying you didn't enjoy that?" ("base", xpos="far_left", ypos="head") + her "W-- Well maybe, but I'm not--" ("angry", "base", "worried", "down", cheeks="blush") + gen "Just admit it, [hermione_name], you enjoyed being seen in public, you just didn't like the circumstances in which it has happened." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "R", cheeks="blush") + her "You are not wrong. Still, what Professor Snape did was unnecessary..." ("annoyed", "closed", "base", "mid", cheeks="blush") + gen "I suppose I shall have to talk to Snape about this. I can't have him degrading my star pupil in front of all her classmates." ("base", xpos="far_left", ypos="head") + her "You will?" ("angry", "base", "base", "mid", cheeks="blush") + gen "Don't worry, I will explain to him that the mistake was my own doing. It won't happen again, I assure you." ("base", xpos="far_left", ypos="head") + her "Oh..." ("angry", "narrow", "base", "down", cheeks="blush") + her "*Ehm*... There's no need to go that far [genie_name]." ("open", "squint", "base", "mid", cheeks="blush") + her "I'm fine, really!" ("angry", "squint", "worried", "mid", cheeks="blush") + gen "No, no... This one's on me [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "I never should have asked you to take that concoction and head to class." ("base", xpos="far_left", ypos="head") + her "I assure you it is--" ("mad", "base", "worried", "mid", cheeks="blush") + gen "Professor Snape is the potions master after all, if he thinks these types of potions are dangerous--" ("base", xpos="far_left", ypos="head") + her "Professor Dumbledore!" ("scream", "happyCl", "base", "mid", cheeks="blush") #closed #yelling #blush + her "I-I mean, [genie_name]..." ("angry", "narrow", "base", "down", cheeks="blush") # apologetic + gen "Oh alright, if you don't want me to interfere then I guess I won't." ("base", xpos="far_left", ypos="head") + her "Thank you." ("open", "squint", "base", "R", cheeks="blush") # smile :) + gen "I guess we're done here." ("base", xpos="far_left", ypos="head") + gen "Well done [hermione_name], {number=current_payout} points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "May I please be excused?" ("angry", "closed", "base", "mid", cheeks="blush") + gen "Somewhere you need to be?" ("base", xpos="far_left", ypos="head") + her "Yes... I need to... *Ehm*..." ("disgust", "squint", "base", "R", cheeks="blush") + gen "I see. Some time alone in your bed is exactly what you need I think." ("base", xpos="far_left", ypos="head") + her "That's--" ("angry", "base", "base", "mid", cheeks="blush") + gen "We both know I'm right, there's no point hiding it." ("base", xpos="far_left", ypos="head") + gen "Talk to you later, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Good night then [genie_name]..." ("angry", "narrow", "base", "R", cheeks="blush") # blushing + else: #Repeat + her "Hello [genie_name]..." ("open", "squint", "base", "R") + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "How's your day been?" ("base", xpos="far_left", ypos="head") + her "Pretty good thanks." ("open", "closed", "base", "mid") + her "Can't complain, you know." ("base", "narrow", "base", "down") + gen "Good to hear, anything unusual happen?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Well, I caught the eye of more students than usual... Thanks to the potion you gave me." ("open", "squint", "base", "R", cheeks="blush") + gen "I'm glad you're getting good use out of it." ("base", xpos="far_left", ypos="head") + her "Yes... {size=-4}Shame that it's not permanent...{/size}" ("base", "closed", "base", "mid", cheeks="blush") + her "Being gawked over by the boys, or being stared at jealously by the girls is quite the confidence boost." ("open", "squint", "base", "mid", cheeks="blush") + her "Although I think it's worth considering putting some sort of countermeasures up to prevent people from walking into things as much." ("base", "narrow", "base", "R", cheeks="blush") + her "If a big pair of breasts is enough to have students knock over suits of armours or smash into walls, it's only a matter of time until someone seriously hurts themselves." ("soft", "squint", "base", "R", cheeks="blush") + gen "That's easier said than done [hermione_name]... I'm not sure if you noticed, but this castle is made out of stone." ("base", xpos="far_left", ypos="head") + her "Of course I have, I'm just saying..." ("annoyed", "narrow", "base", "mid", cheeks="blush") + her "At least if we put some cushioning charms down it wouldn't be as bad." ("open", "closed", "base", "mid", cheeks="blush") + gen "Or perhaps if you didn't entrance people with those big titties then they would pay attention to where they were going." ("base", xpos="far_left", ypos="head") + her "*Hmm*... Perhaps..." ("base", "narrow", "base", "R", cheeks="blush") + gen "Anyway... Enough about outdated safety standards." ("base", xpos="far_left", ypos="head") + gen "What lessons did you have today?" ("base", xpos="far_left", ypos="head") + her "Oh... We had double potions today, [genie_name]." ("open", "squint", "base", "mid", cheeks="blush") + gen "Good... I mean, alright." ("base", xpos="far_left", ypos="head") + gen "So how did that go?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Fine I suppose..." ("open", "narrow", "base", "down", cheeks="blush") #annoyed + gen "Is that so? You don't sound very convincing." ("base", xpos="far_left", ypos="head") + her "*Hmph*... Well I was under the impression that I had gotten better at managing these things." ("angry", "closed", "base", "mid", cheeks="blush") + her "The vest helps a ton, I'm sure if I wasn't wearing it, it'd be a difficult task not to burst any of the buttons." ("open", "closed", "base", "mid", cheeks="blush") + gen "(Note to self... Remove vest from School uniform...)" ("base", xpos="far_left", ypos="head") + her "I only had a couple of vital steps left before finishing it up when one of the Slytherin students knocked the contents of my cauldron over me." ("soft", "narrow", "base", "down", cheeks="blush") + gen "Oh, dear... Are you alright?" ("base", xpos="far_left", ypos="head") + her "I'm fine... Only thing that was hurt was my pride..." ("open", "narrow", "base", "R", cheeks="blush") + + $ camera.set(zoom=0.25, pos=(0, 0), overlay=None, image="CG breast expand classroom B1", initialize=True) + show screen animatedCG + with fade + + her "I must admit... That Slytherin boy was more clever than I'd give any of them credit for." ("annoyed", "narrow", "worried", "R", cheeks="blush") + her "I got completely covered in that horribly sticky mess..." ("disgust", "closed", "worried", "mid", cheeks="blush") + if not hg_kiss.trigger: + gen "I'm sure you'll get used to it..." + else: + gen "You'd think you'd be used to that sort of thing." + her "Sorry?" ("soft", "narrow", "base", "down", cheeks="blush") + gen "Nothing... Please continue..." + her "In any case... That unfinished potion nearly destroyed my clothing." ("disgust", "closed", "worried", "mid", cheeks="blush") + her "So yet again I ended up giving the whole class a good view of those bloody things." ("soft", "narrow", "base", "down", cheeks="blush") + gen "I'm sure they didn't mind." + her "I'm sure..." ("soft", "narrow", "base", "R", cheeks="blush") + + $ camera.set(image="CG breast expand classroom B2", trans=d5) + + her "The Slytherins, even though they were howling with laughter were all staring me down as I sat there getting rid of that sticky potion..." ("disgust", "narrow", "base", "mid", cheeks="blush") + her "Even the Gryffindors didn't even pretend to avert their gaze." ("annoyed", "wink", "base", "mid", cheeks="blush") + gen "Well, you're an attractive girl, It'd be an insult if they did." + her "And Professor Snape, yet again made sure to bring me up in front of the class to give some long-winded lecture on how important it is to let the stabilizing agent take effect before transferring your potion." ("angry", "narrow", "base", "mid", cheeks="blush") + her "Trying to embarrass me no doubt..." ("annoyed", "narrow", "base", "R", cheeks="blush") + gen "Safety first." + her "..." ("annoyed", "narrow", "base", "mid", cheeks="blush") + + hide screen animatedCG + with fade + + gen "Sounds to me like you've earned yourself some points today, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Oh... Yes, the points..." ("grin", "narrow", "base", "down", cheeks="blush") + gen "{number=current_payout} points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]..." ("grin", "closed", "base", "mid", cheeks="blush") + gen "Before you leave... Just out of curiosity..." ("base", xpos="far_left", ypos="head") + her "Yes [genie_name]?" ("open", "squint", "base", "mid", cheeks="blush") + gen "What happened to that top of yours?" ("base", xpos="far_left", ypos="head") + her "Oh... Well, apparently potion damage is quite common so I was able to procure a new set." ("open", "squint", "base", "mid") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "Yes, I was told this was the fourth time this week!" ("open", "squint", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(Better not mention that in my report...)" ("base", xpos="far_left", ypos="head") + gen "Very well [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "That will do for today." ("base", xpos="far_left", ypos="head") + her "Alright, good night then [genie_name]." ("base", "base", "base", "mid") + gen "Good night [hermione_name]." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + $ her_breast_expand_drank = True + $ her_breast_expand_effects_known = True + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/events/potions/check.rpy b/game/scripts/characters/hermione/events/potions/check.rpy new file mode 100644 index 00000000..83ca91f6 --- /dev/null +++ b/game/scripts/characters/hermione/events/potions/check.rpy @@ -0,0 +1,18 @@ + +label her_potion_check: + gen "[hermione_name]." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("soft", "base", "base", "mid", xpos="mid", ypos="base", trans=d5) + gen "I'd like you to try out some potions of mine." ("base", xpos="far_left", ypos="head") + her "Potions?" ("open", "squint", "base", "mid") + her "What kind of potions are we talking about?" ("open", "squint", "base", "mid") + gen "Don't worry, they're relatively harmless." ("base", xpos="far_left", ypos="head") + her "You're expecting me to just drink a random potion?" ("angry", "squint", "base", "mid") + gen "Yes..." ("base", xpos="far_left", ypos="head") + her "A potion which I have no idea of its origin or effect?" ("angry", "squint", "base", "stare") + gen "Well..." ("base", xpos="far_left", ypos="head") + gen "You'll be awarded points of course..." ("base", xpos="far_left", ypos="head") + her "No, I'm not doing that..." ("angry", "base", "annoyed", "mid") + gen "(Damn...)" ("base", xpos="far_left", ypos="head") + gen "(I should probably buy some favours from her before asking something like this again...)" ("base", xpos="far_left", ypos="head") + + return diff --git a/game/scripts/characters/hermione/events/potions/polyjuice_cat.rpy b/game/scripts/characters/hermione/events/potions/polyjuice_cat.rpy new file mode 100644 index 00000000..d61860c8 --- /dev/null +++ b/game/scripts/characters/hermione/events/potions/polyjuice_cat.rpy @@ -0,0 +1,666 @@ + +default her_polyjuice_drank = False +default her_polyjuice_cat_drank = False +default her_polyjuice_cat_blowjob = False +default her_polyjuice_cat_stage_two = False + +label potion_cat_make: + + call give_reward("You have successfully created a new potion!", cat_potion_ITEM) + + $ renpy.sound.play("sounds/sniff.ogg") + gen "Yep..." ("base", xpos="far_left", ypos="head") + gen "Smells like a wet pussy all right..." ("base", xpos="far_left", ypos="head") + gen "Not the kind I'd like to drink from though." ("base", xpos="far_left", ypos="head") + return + +label her_potion_cat_give: + + if hermione.is_worn("robe"): + gen "Before we begin... Why don't you take those robes off and make yourself comfortable." ("base", xpos="far_left", ypos="head") + her "Alright..." ("soft", "squint", "base", "mid") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe") + with d3 + gen "Now then..." ("base", xpos="far_left", ypos="head") + + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("open", "base", "base", "mid") + + if not her_polyjuice_drank: + $ her_polyjuice_drank = True + + gen "I've got a potion here that I'd like you to try..." ("base", xpos="far_left", ypos="head") + call nar(">You bring out the thick potion and hand it to Hermione.") + call her_chibi("hold_potion","mid","base") + with d3 + + if her_whoring < 16: + her "A potion? What kind of potion is it? It looks gross..." ("disgust", "happy", "base", "mid") + gen "Wouldn't it spoil half of the enjoyment if I told you?" ("base", xpos="far_left", ypos="head") + her "Depends whose enjoyment you're talking about..." ("angry", "narrow", "base", "mid") + gen "Twenty points." ("base", xpos="far_left", ypos="head") + her "*Hmm*...{w=0.4} Can't you tell me what kind of potion it is?" ("annoyed", "wink", "base", "mid") + her "Polyjuice? Babbling Beverage? Shrinking solution?" ("open", "squint", "base", "mid") + gen "That's going to have to stay a secret, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "down") + gen "Well [hermione_name], what do you say? Will you drink a harmless little potion?" ("base", xpos="far_left", ypos="head") + gen "For Gryffindor?" ("base", xpos="far_left", ypos="head") + her "Fine..." ("open", "narrow", "base", "down") + + else: + her "You want me to drink this? It doesn't look that appealing..." ("angry", "narrow", "base", "down") + gen "I'm sure it'll be worth it." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "squint", "base", "mid") + her "Alright then..." ("base", "base", "base", "mid") + + call her_chibi("sniff_potion","mid","base") + pause 0.2 + $ renpy.sound.play("sounds/sniff.ogg") + pause 0.6 + call her_chibi("hold_potion","mid","base") + call nar(">Hermione takes a quick sniff of the potion.") + + her "It smells disgusting. Like mud and wet dog fur." ("angry", "happyCl", "base", "mid") + gen "I suggest blocking your nose if the smell is too much." ("base", xpos="far_left", ypos="head") + her "Alright..." ("disgust", "happy", "base", "mid") + her "For Gryffindor!" ("open", "happyCl", "worried", "mid") + + else: + gen "Ready to try another potion?" ("base", xpos="far_left", ypos="head") + call nar(">You bring out the thick potion and swirl it in front of Hermione.") + her "Is this another Polyjuice potion?" ("open", "squint", "base", "mid") + gen "...{w=0.5}no?" ("base", xpos="far_left", ypos="head") + her "You're lying..." ("open", "closed", "base", "mid") + + if her_whoring < 16: + her "Do I have to?" ("angry", "narrow", "base", "mid") + gen "You don't have to do anything [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "But if you do decide to, it would make me very happy...." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "squint", "base", "mid") + gen "And there's some points in it for you as well..." ("base", xpos="far_left", ypos="head") + + else: + her "But I'll drink it if you really want me to." ("base", "base", "base", "mid") + gen "Great, here you go!" ("base", xpos="far_left", ypos="head") + + call nar(">Hermione grabs the potion and brings it up to her mouth.") + her "Here we go then..." ("angry", "squint", "base", "mid") + + + call her_chibi("drink_potion","mid","base") + pause 0.6 + $ renpy.sound.play("sounds/gulp.ogg") + pause 0.8 + call her_chibi("stand","mid","base") + call nar(">Hermione downs the thick potion.") + + + her "*Bleugh*." ("open_tongue", "happyCl", "base", "mid") + gen "Well done." ("base", xpos="far_left", ypos="head") + + if not her_polyjuice_cat_drank: + her "I did it..." ("angry", "happy", "base", "mid") + her "Now will you at least tell me what this potion does?" ("disgust", "base", "base", "mid") + + if her_breast_expand_drank: + her "Is it supposed to make my breasts bigger? They don't feel any bigger." ("open", "base", "base", "mid") + gen "That's not it... Maybe you should just head back to class in that case... I could've sworn I did it right..." ("base", xpos="far_left", ypos="head") + + else: + gen "It should be noticeable any second now..." ("base", xpos="far_left", ypos="head") + gen "Aaaany second..." ("base", xpos="far_left", ypos="head") + gen "Unless..." ("base", xpos="far_left", ypos="head") + her "Unless?" ("angry", "base", "base", "mid") + gen "Well maybe one of the ingredients..." ("base", xpos="far_left", ypos="head") + gen "Never mind..." ("base", xpos="far_left", ypos="head") + her "What was it supposed to do?" ("angry", "happy", "base", "mid") + gen "There's no point in telling you now. It was going to be a surprise." ("base", xpos="far_left", ypos="head") + gen "You may head back to class, [hermione_name]." ("base", xpos="far_left", ypos="head") + + her "Oh, okay then." ("soft", "happy", "base", "mid") + + gen "Twenty points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 20 + her "Thank you [genie_name]." ("base", "base", "base", "mid") + else: + her "Here we go again I suppose..." ("angry", "narrow", "base", "down") + her "Nothing's happening..." ("disgust", "narrow", "base", "down") + gen "You'll just have to wait for a bit, remember?" ("base", xpos="far_left", ypos="head") + gen "So you best head back to class for now." ("base", xpos="far_left", ypos="head") + + if her_reputation < 15: #Before she'd enjoy to have her look like a cat in class + her "Great... Can't wait for the effects to kick in... It was bad enough the first time..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "I'm sure ten extra points should make it worth it, [hermione_name]." ("base", xpos="far_left", ypos="head") + + gen "Thirty points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 30 + her "... Thank you [genie_name]." ("open", "squint", "base", "mid") + + else: #When she'd enjoy showing herself off as a cat in class + her "Okay then..." ("open", "narrow", "base", "down", cheeks="blush") + her "I wonder what they'll think when they see me like this again..." ("base", "narrow", "base", "R", cheeks="blush") + gen "I'm sure they'll enjoy it." ("base", xpos="far_left", ypos="head") + her "I'm sure..." ("open", "narrow", "base", "R", cheeks="blush") + gen "Oh, before I forget." ("base", xpos="far_left", ypos="head") + + gen "Twenty points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 20 + her "Thank you [genie_name]." ("open", "squint", "base", "mid") + + call her_walk(action="leave") + $ cat_potion_ITEM.set_active("hermione") + jump end_hermione_event + +label her_potion_cat_return: + #Scene where Hermione comes back after class, angry and confused at being given cat ears and a tail. + + call play_music("stop") + $ her_outfit_last.save() + $ hermione.equip(her_outfit_cat1, remove_old=False) + $ hermione.strip("robe") + + call her_walk(action="enter", xpos="mid", ypos="base") + + if not her_polyjuice_cat_drank: + $ her_polyjuice_cat_drank = True + + her "" ("annoyed", "squint", "annoyed", "mid") + call ctc + + gen "Nice ears..." ("base", xpos="far_left", ypos="head") + her "How could you do this to me [genie_name]?" ("open", "squint", "annoyed", "mid") + + call play_music("hermione") + + her "I can't believe you'd try and turn me into a cat in the middle of class!" ("upset", "squint", "annoyed", "mid") + gen "I didn't try to turn you into a cat, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Then why do I have ears and a tail?" ("disgust", "base", "annoyed", "mid") + + menu: + "\"I thought you'd look cute as a pussy.\"": + + her "Really?" ("disgust", "happy", "worried", "mid") + gen "Yep... And I must say..." ("grin", xpos="far_left", ypos="head") + her "..." ("normal", "base", "worried", "mid") #Hopeful + gen "I've really shown how immense my brewing knowledge is today." ("grin", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "mid") #Annoyed + gen "That {i}Polio-juice{/i} turned out exactly how I imagined it." ("grin", xpos="far_left", ypos="head") # intentional + + "\"-Lie-\"": + gen "I have no idea... The potion I gave you was supposed to turn you into a different girl." ("base", xpos="far_left", ypos="head") + her "Really?" ("angry", "base", "base", "mid") + gen "*Err*... Yes?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Figured you must've made a mistake." ("open", "closed", "base", "mid") + + her "Polyjuice potions are not meant to be used like this..." ("open", "closed", "annoyed", "mid") + her "At least I know that it will wear off by morning." ("open", "squint", "base", "R") + gen "Shame that, indeed..." ("base", xpos="far_left", ypos="head") + her "May I go now?" ("open", "base", "base", "mid") + + else: + call play_music("hermione") + + her "I can't believe you had me drink another one of these potions..." ("disgust", "squint", "base", "down", cheeks="blush", trans=d3) + gen "What's the problem? I think you look cute..." ("base", xpos="far_left", ypos="head") + her "I'm a Cat! Polyjuice isn't supposed to be used this way!" ("angry", "base", "base", "mid", cheeks="blush") + + if her_reputation < 15: #Before she'd enjoy to have her look like a cat in class + her "People kept making fun of me and pulling my tail in class!" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "And how did that make you feel?" ("base", xpos="far_left", ypos="head") + her "Humiliated!" ("angry", "happyCl", "base", "mid", cheeks="blush") + her "They kept asking if I was been a good kitty and if I wanted scratches..." ("disgust", "squint", "base", "mid", cheeks="blush") + her "And you know the worst thing?" ("angry", "base", "base", "mid", cheeks="blush") + gen "What?" ("base", xpos="far_left", ypos="head") + her "The darn potion made me want the scratches..." ("angry", "narrow", "worried", "R", cheeks="blush") + gen "I see...{w=0.5} then we at least learnt something new here today." ("base", xpos="far_left", ypos="head") + else: #High + her "My class mates sure seemed to enjoy it though..." ("angry", "narrow", "base", "down", cheeks="blush") + her "One of the boys were entranced by the motion of my tail..." ("open", "closed", "base", "mid", cheeks="blush") + her "It seemed to have its own mind..." ("angry", "closed", "base", "mid", cheeks="blush") + gen "And how did that make you feel?" ("base", xpos="far_left", ypos="head") + her "I'm not sure..." ("normal", "squint", "base", "mid", cheeks="blush") + + her "Are we done here?" ("open", "squint", "base", "R", cheeks="blush") + + label .choices: + + menu: + "-Let her go-": + gen "Very well, [hermione_name]. You've done what I've asked of you so be a good kitty and go to bed." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "mid") + gen "Unless there was anything else?" ("base", xpos="far_left", ypos="head") + her "No..." ("open", "closed", "base", "mid") + her "Goodnight then, [genie_name]..." ("open", "base", "base", "mid") + + call her_walk(action="leave") + $ hermione.equip(her_outfit_last) + jump end_hermione_event + + "-Have her drink another one-" if cat_potion_ITEM.owned < 1: + gen "(I don't have any more of that potion.)" ("base", xpos="far_left", ypos="head") + jump .choices + + "-Have her drink another one-" if cat_potion_ITEM.owned > 1: + + gen "Not yet." ("base", xpos="far_left", ypos="head") + gen "I do believe we could do better than this." ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("angry", "base", "base", "mid") + call nar(">You bring out another polyjuice potion and swirl it in front of Hermione.") + if not her_polyjuice_cat_stage_two: #Not turned her into more of a cat + $ her_polyjuice_cat_stage_two = True + $ cat_potion_ITEM.owned -= 1 + + her "You're joking right?" ("disgust", "narrow", "base", "mid") + gen "Surely you must be curious what another one would do?" ("base", xpos="far_left", ypos="head") + her "But what if it turns me completely into a cat?" ("clench", "squint", "base", "mid") + gen "I suppose I might have to hide the bird..." ("base", xpos="far_left", ypos="head") + her "That's not what I'm worried about..." ("disgust", "narrow", "base", "mid") + gen "Come on now, what's another harmless little potion going to do?" ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("annoyed", "narrow", "base", "down") + gen "I'll give you thirty more points..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "down", cheeks="blush") + her "Are you really sure it's safe?" ("open", "squint", "base", "mid") + gen "Of course! You're not doubting my brewing abilities are you?" ("base", xpos="far_left", ypos="head") + her "I... I suppose not..." ("angry", "narrow", "base", "down") + her "Alright then..." ("angry", "base", "base", "mid") + + call nar(">Hermione grabs the potion and brings and readies herself to drink it.") + call her_chibi("hold_potion","mid","base") + + her "Here I go..." ("open", "happyCl", "base", "down") + + call her_chibi("drink_potion","mid","base") + pause 0.6 + $ renpy.sound.play("sounds/gulp.ogg") + pause 0.8 + call her_chibi("stand","mid","base") + + her "Yuck..." ("open_tongue", "happyCl", "base", "mid") + + gen "Good kitty..." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "base", "base", "mid") + her "What now? It took some time for the first one to--" ("open", "base", "base", "mid") + + call play_sound("magic") + show screen gfx_effect(584, 340, img="smoke", zoom=0.85) + $ hermione.equip(her_outfit_cat2, remove_old=False) + + her "Work..." ("normal", "base", "base", "mid") + her "" ("normal", "base", "base", "down") + call ctc + her "Oh my god!" ("angry", "wide", "base", "down") + gen "*Pfff*--" ("base", xpos="far_left", ypos="head") + gen "*Ha-ha-Hah*!" ("grin", xpos="far_left", ypos="head") + her "My--{w=0.2} I've got paws!" ("angry", "base", "annoyed", "down") + gen "I know! *Ha-Ha-Ha*!" ("grin", xpos="far_left", ypos="head") + if hermione.is_worn("bottom"): + her "And my legs are so... Itchy!" ("clench", "narrow", "base", "down") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bottom") + call ctc + pause .5 + her "My legs!" ("angry", "wide", "base", "down") + gen "{size=+2}*HA-HA-HA*!!{/size}" ("grin", xpos="far_left", ypos="head") + her "[genie_name]! Would you stop laughing?" ("disgust", "squint", "annoyed", "mid") + menu: + "-Tease her-": + gen "*Ha-hah*! Or what? Going to scratch me?" ("grin", xpos="far_left", ypos="head") + "-Calm yourself-": + gen "*Ah-ha-ha*...{w=0.4} Ah...{w=0.4} That was funny..." ("grin", xpos="far_left", ypos="head") + her "Are you done?" ("disgust", "narrow", "annoyed", "mid") + gen "I--{w=0.2} *Heh*...{w=0.4} Yes think so..." ("grin", xpos="far_left", ypos="head") + her "Why did I drink another one... How am I supposed to face the other--" ("clench", "narrow", "worried", "down") + gen "*Hah-Hah* Your face! You should've seen the look on your--" ("grin", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/hiss_girl.ogg") + her "..." ("mad", "base", "angry", "mid") #Hissing + her "..." ("disgust", "wide", "base", "down", cheeks="blush") #Wide eyed + gen "{size=+5}*Pwah-Ha-Ha-Hah!*{/size}" ("grin", xpos="far_left", ypos="head") + her "I can't believe you!" ("scream", "base", "annoyed", "mid", cheeks="blush") + + call her_walk(action="leave") + + $ her_mood += 15 + #Hermione never gets the extra points + $ hermione.equip(her_outfit_last) + + gen "Even if she stays mad forever, it was worth it." ("grin", xpos="far_left", ypos="head") + + jump end_hermione_event + else: + her "Are you serious? You know what happened last time!" ("clench", "base", "base", "mid") + gen "More the reason to do it again!" ("grin", xpos="far_left", ypos="head") + + if her_whoring < 22: #Fail + her "No, I am not humiliating myself like this again..." ("disgust", "narrow", "base", "mid") + + gen "(I guess she isn't ready for another dose yet, maybe I should train her more first...)" ("base", xpos="far_left", ypos="head") + + gen "Fine..." ("base", xpos="far_left", ypos="head") + gen "In that case..." ("base", xpos="far_left", ypos="head") + + jump .choices + + else: #Success + $ cat_potion_ITEM.owned -= 1 + + her "Fine... I'll do it..." ("disgust", "narrow", "base", "down", cheeks="blush") #blushing + gen "You will?" ("grin", xpos="far_left", ypos="head") + her "Yes..." ("open", "closed", "base", "mid", cheeks="blush") + her "Just hand me the potion..." ("open", "narrow", "base", "mid", cheeks="blush") + + call nar(">Hermione grabs the potion and brings and readies herself to drink it.") + call her_chibi("hold_potion","mid","base") + + call her_chibi("drink_potion","mid","base") + pause 0.6 + $ renpy.sound.play("sounds/gulp.ogg") + pause 0.8 + call her_chibi("stand","mid","base") + + her "*Ah*..." ("open_tongue", "happyCl", "base", "mid") + + gen "You did it!" ("grin", xpos="far_left", ypos="head") + her "Did you not want me to?" ("annoyed", "squint", "base", "mid", cheeks="blush") + gen "Yes, although I was sure you'd refuse to do it again..." ("base", xpos="far_left", ypos="head") + her "*Hmph*... Well I just thought--" ("open", "narrow", "base", "R", cheeks="blush") + gen "Did you enjoy those paws last time perhaps?" ("base", xpos="far_left", ypos="head") + her "What do you--" ("clench", "base", "base", "mid", cheeks="blush") + + call play_sound("magic") + show screen gfx_effect(584, 340, img="smoke", zoom=0.85) + $ hermione.equip(her_outfit_cat3, remove_old=False) + + her "" ("clench", "narrow", "base", "down", cheeks="blush") + gen "*Hah-ha-Hah*!" ("grin", xpos="far_left", ypos="head") + her "There, I've drank it..." ("angry", "base", "base", "mid", cheeks="blush") + her "[genie_name]!" + gen "*Ha-Ha-Ha*!" ("grin", xpos="far_left", ypos="head") + gen "Your face!" ("grin", xpos="far_left", ypos="head") + her "My... What's wrong with my--" ("angry", "narrow", "base", "down", cheeks="blush") + her "I've got whiskers!" ("scream", "wide", "base", "mid", cheeks="blush") + gen "And a cute little nose too!" ("grin", xpos="far_left", ypos="head") + her "Breathe Hermione..." ("angry", "closed", "base", "mid", cheeks="blush") + her "It's just polyjuice, it's only temporary..." ("normal", "closed", "base", "mid", cheeks="blush") + gen "Now, do the thing again!" ("grin", xpos="far_left", ypos="head") + her "What thing?" ("angry", "squint", "worried", "mid", cheeks="blush") + gen "The hissing thing, it was hilarious!" ("grin", xpos="far_left", ypos="head") + her "I-- I can't!" ("clench", "happyCl", "base", "mid", cheeks="blush") + her "I didn't do it on purpose!" ("angry", "narrow", "annoyed", "mid", cheeks="blush") + gen "Come on now! Just try it!" ("grin", xpos="far_left", ypos="head") + her "I... Fine!" ("disgust", "narrow", "base", "mid", cheeks="blush") + call nar(">Hermione readies herself to hiss.") + her "*Ahem*..." ("angry", "squint", "base", "mid", cheeks="blush") + + $ renpy.sound.play("sounds/hiss_girl_fail.ogg") + her "*Snort*...{w=0.4}{nw}" ("shock", "squint", "base", "mid", cheeks="blush") + her "*Snort*...{fast}" ("disgust", "squint", "base", "mid", cheeks="blush") + + gen "*Pwha-ha-ha*!!!" ("grin", xpos="far_left", ypos="head") + gen "That was so bad!" ("grin", xpos="far_left", ypos="head") + gen "Come on, do it for real this time!" ("grin", xpos="far_left", ypos="head") + her "I was trying to!" ("angry", "happyCl", "annoyed", "mid", cheeks="blush") + gen "*Ha-Hah-Ha*!" ("grin", xpos="far_left", ypos="head") + gen "You sounded like an angry badger!" ("grin", xpos="far_left", ypos="head") + her "It's not funny!" ("clench", "squint", "worried", "mid", cheeks="blush") + gen "*Ha-ha-ha*!" ("grin", xpos="far_left", ypos="head") + her "I can't believe you!" ("angry", "happyCl", "base", "mid", cheeks="blush") + + call her_walk("door", "base") + gen "Watch the--" ("base", xpos="far_left", ypos="head") + call her_chibi("leave") + + call play_sound("kick") + + pause .5 + $ renpy.sound.play("sounds/cat_scream.ogg") + pause .8 + gen "Tail..." ("base", xpos="far_left", ypos="head") + $ her_mood += 15 + $ hermione.equip(her_outfit_last) + jump end_hermione_event + + "-Ask for a blowjob-": + pass + + gen "I suppose..." ("base", xpos="far_left", ypos="head") + gen "Although I thought perhaps you'd like to do something to earn yourself some additional points first." ("base", xpos="far_left", ypos="head") + her "By doing what?" ("open", "happy", "base", "mid") + gen "By putting that mouth around my cock." ("base", xpos="far_left", ypos="head") + + if not her_polyjuice_cat_blowjob: + + if not hg_blowjob.trigger: #Fail + her "You want me to--" ("angry", "base", "base", "mid") + her "[genie_name]!" ("angry", "base", "annoyed", "mid", cheeks="blush") + gen "What?" ("base", xpos="far_left", ypos="head") + + if her_whoring < 19: + her "I can't believe you'd ask such a thing!" ("angry", "base", "angry", "mid", cheeks="blush") + gen "Surely we can't waste this opportunity!" ("base", xpos="far_left", ypos="head") + her "Yes we can!" ("angry", "narrow", "angry", "mid", cheeks="blush") + $ her_mood += 15 + else: + her "I am not doing that when looking like this!" ("angry", "base", "annoyed", "mid") + gen "But it'd be such a wasted opportunity!" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "annoyed", "mid") + + gen "(Perhaps if she had already given me a blowjob in her normal form she'd be more willing to agree.)" ("base", xpos="far_left", ypos="head") + gen "Fine..." ("base", xpos="far_left", ypos="head") + gen "You may leave." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + $ hermione.equip(her_outfit_last) + + jump end_hermione_event + + else: #Success + her "Right now? I look like a cat! Why would you ask me at a time like this?" ("angry", "squint", "base", "mid") + her "You're not some sort of pervert who likes animals are you?" ("disgust", "narrow", "base", "mid") + gen "Of course not, I just think that you have a very unique look at the moment and that it would be a shame not to do anything with it." ("base", xpos="far_left", ypos="head") + gen "I'll give you Twenty extra points..." ("base", xpos="far_left", ypos="head") + her "Fine... Just promise me you aren't going to do anything weird." ("disgust", "narrow", "base", "down") + gen "Blowjobs are already kind of weird if you think about it." ("base", xpos="far_left", ypos="head") + her "You know what I meant..." ("disgust", "narrow", "base", "mid") + if hermione.is_any_worn("top", "bra", "bottom", "panties", "stockings"): + gen "Now, take your clothes off for me..." ("base", xpos="far_left", ypos="head") + her "Alright..." ("open", "wink", "base", "mid", cheeks="blush") + + else: #Sucked him off as a cat before + + her "Again?" ("angry", "happy", "base", "mid") + her "I thought you found my tongue was too rough in this state?" ("open", "happy", "base", "mid") + gen "Well, the purring certainly made well up for that aspect." ("base", xpos="far_left", ypos="head") + her "Okay then..." ("open", "base", "base", "mid", cheeks="blush") + if hermione.is_any_worn("top", "bra", "bottom", "panties", "stockings"): + her "Let me just take this off..." ("base", "narrow", "base", "down", cheeks="blush") + + if hermione.is_any_worn("top", "bra", "bottom", "panties", "stockings"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("top", "bottom", "bra", "panties", "stockings") + + pause .8 + her "" ("base", "narrow", "base", "mid", cheeks="blush") + call ctc + gen "Purrfect... Now get that tail over here." ("grin", xpos="far_left", ypos="head") + her "Yes, [genie_name]." ("open", "squint", "base", "mid", cheeks="blush") + + #Chibi walks over and fade to black + + stop music fadeout 2.0 + call her_walk("desk", "base", reduce=0.8) + pause .2 + + call hide_characters + show screen blkfade + with d3 + + call her_chibi_scene("bj_pause", trans=d9) + pause.8 + + gen "Good girl." ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "base", "L", cheeks="blush", ypos="head", flip=False) + call nar(">Hermione now kneeling in front of you, takes you into her mouth.") + + call play_music("playful_tension") # SEX THEME. + call her_chibi_scene("bj", trans=d9) + call ctc + + hide screen blkfade + with d3 + + if not her_polyjuice_cat_blowjob: + her "*Slurp*! *Gulp*! *Gltch*!" ("open_wide_tongue", "closed", "base", "mid") + gen "Good god what is with your tongue?!" ("angry", xpos="far_left", ypos="head") + + call her_chibi_scene("bj_pause", trans=d3) + + her "*Ah*..." ("open", "squint", "base", "mid", cheeks="blush") + her "What do you mean, [genie_name]?" ("angry", "squint", "base", "mid") + gen "It felt like Velcro!" ("angry", xpos="far_left", ypos="head") + her "You're the one that asked me to do this... A cat's tongue is a lot rougher than a human." ("mad", "narrow", "base", "mid") + her "Do you want me to stop?" ("open", "wink", "base", "mid") + gen "No, keep going, just try not to move that tongue too much." ("base", xpos="far_left", ypos="head") + her "Okay." ("angry", "narrow", "base", "R") + + call her_chibi_scene("bj", trans=d3) + + call nar(">Hermione swallows your cock again, taking care not to apply too much pressure with her tongue.") + else: + her "*Slurp*! *Gulp*! *Gltch*!" ("open_wide_tongue", "closed", "worried", "mid") + gen "There's that tongue again...{w} could you try using your throat a bit more?" ("angry", xpos="far_left", ypos="head") + her "*Slurp*..." ("open_wide_tongue", "narrow", "base", "R") #Annoyed + + her "*Slurp*...{w=0.4} *Slurp*...{w=0.4} *Slurp*..." ("open_wide_tongue", "closed", "worried", "mid") + gen "That's it... Nice kitty..." ("grin", xpos="far_left", ypos="head") + her "*Slurp*...{w=0.4} *Gltch*...{w=0.4} *Gulp*..." ("open_wide_tongue", "closed", "base", "mid") + gen "So, you still went to all your classes?" ("base", xpos="far_left", ypos="head") + her "*Mhm*..." ("open_wide_tongue", "closed", "base", "mid", cheeks="blush") + her "*Slurp*...{w=0.4} *Slurp*...{w=0.4} *Slurp*..." ("open_wide_tongue", "closed", "worried", "mid", cheeks="blush") + + if not her_polyjuice_cat_blowjob: + gen "Even looking like this?" ("base", xpos="far_left", ypos="head") + gen "*Hmm*... You'd think they question why you'd turn up looking like a cat..." ("base", xpos="far_left", ypos="head") + gen "Did they just assume you were under an evil Slytherin spell?" ("base", xpos="far_left", ypos="head") + if her_reputation > 15: + gen "Or would they just think that slutty little Miss Granger is begging for attention." ("base", xpos="far_left", ypos="head") + call nar(">You go to place your hand on the back of her head but her new ears block the way.") + gen "These are quite soft." ("base", xpos="far_left", ypos="head") + call nar(">You start feeling and patting the ears.") + call nar(">Hermione's eyes widen as she starts purring involuntarily.") + her "" ("open_wide_tongue", "base", "base", "up_soft", cheeks="blush") + gen "Oh, good heavens!" ("base", xpos="far_left", ypos="head") + gen "It's like your whole mouth has become a vibrator." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj_pause", trans=d3) + + her "I can't help it [genie_name], whenever anything touches my ears I just purr." ("angry", "squint", "base", "mid", cheeks="blush") + gen "It feels amazing! Now cock back in the mouth, girl." ("base", xpos="far_left", ypos="head") + her "Yes [genie_name]." ("angry", "narrow", "base", "mid", cheeks="blush") + + call her_chibi_scene("bj", trans=d3) + + call nar(">You immediately put your hand back on her ears and start stroking them as she sucks you.") + else: + call her_chibi_scene("bj_pause", trans=d3) + + her "*Ah*....{w=0.4} Well, You had me do it before..." ("open", "narrow", "base", "R", cheeks="blush") + her "At least I knew what to expect this time." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Such a good student you are..." ("base", xpos="far_left", ypos="head") + her "Thank--" ("soft", "base", "base", "mid", cheeks="blush") + gen "Now resume sucking." ("base", xpos="far_left", ypos="head") + her "..." ("open", "narrow", "base", "down", cheeks="blush") + + call her_chibi_scene("bj", trans=d3) + + gen "Slutty little Miss Granger... I bet you loved the attention..." ("base", xpos="far_left", ypos="head") + call nar(">You place your hand on her ears once again and give them a soft patting.") + call nar(">Hermione starts purring as her eyes widen and look into yours.") + gen "There it is!" ("base", xpos="far_left", ypos="head") + gen "Keep going girl, this feels amazing..." ("base", xpos="far_left", ypos="head") + call nar(">Closing your eyes you momentarily stop patting her and Hermione's purring stops.") + gen "Don't stop!" ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj_pause", trans=d3) + + her "You stopped patting me!" ("angry", "squint", "base", "mid", cheeks="blush") + gen "Oh, Right..." ("base", xpos="far_left", ypos="head") + call nar(">You gently stroke the back of Hermione's ears as she begins purring once more.") + + call her_chibi_scene("bj", trans=d3) + + her "*Slurp!* *Purr* *Slurp!*" ("open_wide_tongue", "narrow", "base", "up_soft") + gen "Oh god yes. This is Fantastic." ("base", xpos="far_left", ypos="head") + her "*Purr* *Slurp!* *Purr*" ("open_wide_tongue", "narrow", "base", "up_soft", cheeks="blush") + gen "Get ready girl... Here it comes." ("base", xpos="far_left", ypos="head") + her "*Purr* *Purr* *Purr*" ("open_wide_tongue", "narrow", "base", "mid_soft", cheeks="blush") + call nar(">Hermione pushes forward and the tip of your cock rests on her purring throat.") + gen "{size=+10}*ARGH*!!!!!!!!!!!!!!!!{/size}" ("angry", xpos="far_left", ypos="head") + her "*Purr* *Purr* *Purr*" ("open_wide_tongue", "narrow", "base", "up_soft") + + call nar(">The vibrations prove too much and you shoot your load directly down her throat.") + + call cum_block + call her_chibi_scene("bj_cum_in", trans=d5) + pause.8 + + call cum_block + call bld + gen "{size=+7}*ARGH*!{/size}" ("angry", xpos="far_left", ypos="head") + her "*Purr!-Gulp!-Gulp*!" ("open_wide_tongue_cum", "narrow", "base", "up_soft") + with hpunch + gen "Take my milk!" ("angry", xpos="far_left", ypos="head") + her "*Gulp*! *Gulp*! *Gulp*!" ("open_wide_tongue_cum", "happy", "base", "up_soft") + call bld("hide") + call ctc + + call her_chibi_scene("bj_pause", trans=d5) + pause.8 + + call nar(">Hermione pulls your cock out of her purring mouth.") + gen "*Ah*... That was amazing..." ("base", xpos="far_left", ypos="head") + + her "...{w=0.6}{nw}" ("full_cum", "happy", "base", "mid_soft") + $ renpy.play('sounds/gulp.ogg') + her "... *Gulp*{fast}{w=0.6}{nw}" ("cum", "happy", "base", "mid", cheeks="blush") + her "*Gulp*{fast} *Ah*..." ("open", "narrow", "base", "mid", cheeks="blush") + + her "*Mmm*... That tasted so much better than the potion..." ("base", "closed", "base", "mid", cheeks="blush") + + show screen blkfade + with d3 + + $ hermione.set_cum(None) + $ hermione.wear("all") + + call her_chibi("stand","desk","base", flip=False) + call gen_chibi("sit_behind_desk") + + call nar(">Hermione walks back to the front of your desk, her tail swaying playfully.") + + hide screen blkfade + with d5 + + gen "Well, you've certainly earned your points." ("base", xpos="far_left", ypos="head") + gen "Forty points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 40 + her "Thank you [genie_name]... Will that be all?" ("base", "happy", "base", "mid", xpos="mid", ypos="base", trans=dissolve) + gen "Yes, that will do for today..." ("base", xpos="far_left", ypos="head") + her "Okay, Goodnight then..." ("soft", "base", "base", "mid") + call her_walk("door", "base") + + gen "Actually... One last thing..." ("base", xpos="far_left", ypos="head") + + call her_chibi("stand", "door", "base", flip=False) + her "Yes [genie_name]?" ("open", "base", "base", "mid", xpos="base", ypos="base") + gen "Who's a good kitty?" ("base", xpos="far_left", ypos="head") + her ".........." ("angry", "happy", "base", "mid", cheeks="blush") + her "I am..." ("base", "narrow", "base", "down", cheeks="blush") + + call her_walk(action="leave") + $ hermione.equip(her_outfit_last) + $ her_polyjuice_cat_blowjob = True + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/events/potions/polyjuice_luna.rpy b/game/scripts/characters/hermione/events/potions/polyjuice_luna.rpy new file mode 100644 index 00000000..a1d1cd21 --- /dev/null +++ b/game/scripts/characters/hermione/events/potions/polyjuice_luna.rpy @@ -0,0 +1,601 @@ + +default her_polyjuice_luna_drank = False +default her_polyjuice_luna_nude = False + +label potion_luna_make: + + call give_reward("You have successfully created a new potion!", luna_potion_ITEM) + + $ renpy.sound.play("sounds/sniff.ogg") + gen "It does have a distinctive smell of grass, among other things..." ("base", xpos="far_left", ypos="head") + gen "I wonder if Hermione will be able to tell whose DNA contributed to it." ("base", xpos="far_left", ypos="head") + return + +label her_potion_luna_give: + + $ lun_outfit_last.save() #Save Luna clothing + $ luna.equip(lun_outfit_default) #Equip Luna Default clothing + + if hermione.is_worn("robe"): + gen "Before we begin... Why don't you take those robes off and make yourself comfortable." ("base", xpos="far_left", ypos="head") + her "Alright..." ("soft", "squint", "base", "mid") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe") + with d3 + gen "Now then..." ("base", xpos="far_left", ypos="head") + + gen "Might I offer you a drink?" ("base", xpos="far_left", ypos="head") + + if her_whoring < 19: + her "Are you sure it's wise to be giving me alcohol, [genie_name]?" ("soft", "squint", "base", "mid") + gen "It's not alcohol, [hermione_name]... Just a harmless little potion." ("base", xpos="far_left", ypos="head") + else: + her "Trying to get me drunk are you?" ("soft", "narrow", "base", "mid") + gen "Nothing of the sort, just a harmless little potion." ("base", xpos="far_left", ypos="head") + + call nar(">You hand Hermione the potion bottle.") + call her_chibi("hold_potion","mid","base") + with d3 + + if not her_polyjuice_drank: + $ her_polyjuice_drank = True + + if her_whoring < 19: + her "Let me guess, you're not going to tell me what it does." ("angry", "narrow", "base", "mid") + gen "Of course not, where would the fun be in that..." ("base", xpos="far_left", ypos="head") + her "Typical..." ("angry", "narrow", "base", "down") + gen "Just imagine all the points you'll earn for Gryffindor." ("base", xpos="far_left", ypos="head") + her "That's true... I can't let Gryffindor down." ("angry", "squint", "base", "mid") + else: + her "I see..." ("open", "base", "base", "mid") + her "So what does this potion do exactly?" ("soft", "base", "base", "mid") + gen "It makes your breath smell like strawberries." ("base", xpos="far_left", ypos="head") + her "Does it--" ("grin", "base", "base", "mid") + her "Of course it doesn't..." ("angry", "narrow", "base", "R") + gen "You'll just have to drink it to find out I suppose." ("base", xpos="far_left", ypos="head") + her "Let's see if I can guess what is first..." ("base", "narrow", "base", "down") + + call her_chibi("sniff_potion","mid","base") + pause 0.2 + $ renpy.sound.play("sounds/sniff.ogg") + pause 0.6 + call her_chibi("hold_potion","mid","base") + call nar(">Hermione takes a quick sniff of the potion.") + + her "*Hmm*... It smells weirdly familiar, like freshly cut grass, or--" ("base", "narrow", "base", "down") + gen "Weed!" ("grin", xpos="far_left", ypos="head") + her "Weeds? I suppose that is similar to grass." ("open", "squint", "base", "mid") + her "It also kind of reminds me of Mr Xenoph--" ("open", "closed", "base", "mid") + gen "Shush, let's not spoil the fun with all the guessing." ("base", xpos="far_left", ypos="head") + her "... Fine." ("base", "base", "base", "mid") + + else: + her "Is this..." ("angry", "narrow", "base", "down") + gen "Yep, another Polyjuice potion." ("base", xpos="far_left", ypos="head") + her "Do I really have to drink this again?" ("angry", "base", "base", "mid") + gen "If you'd like to continue our favour trading it would certainly be in your best interest, [hermione_name]." ("base", xpos="far_left", ypos="head") + + if her_whoring < 19: + her "..." ("normal", "narrow", "base", "mid") + else: + her "Now, there's no need to go to such extremes..." ("open", "squint", "base", "R", cheeks="blush") + + her "Can you at least tell me what you've put in it?" ("angry", "base", "base", "mid") + gen "Where's fun in that? You're going to have to drink it and find out..." ("base", xpos="far_left", ypos="head") + + if her_polyjuice_cat_drank: + her "One of the last potions you gave me before tasted like wet puss..." ("disgust", "base", "base", "mid") + gen "And it turned you into one as well!" ("grin", xpos="far_left", ypos="head") + her "*Tsk!*" ("angry", "narrow", "base", "R") + + her "..." ("disgust", "narrow", "base", "down") + gen "Bottoms up, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "... I hope this is one of the ones that goes down okay." ("angry", "narrow", "base", "down") + + call her_chibi("drink_potion","mid","base") + pause 0.6 + $ renpy.sound.play("sounds/gulp.ogg") + pause 0.8 + call her_chibi("stand","mid","base") + call nar(">Hermione downs the golden-hued potion.") + + her "*Smacks lips*" ("grin", "closed", "base", "mid") + + if not her_polyjuice_luna_drank: + her "It didn't taste so bad actually. Kind of sweet and sour." ("grin", "base", "base", "mid") + gen "As long as you keep it down, you'll earn Gryffindor a great deal of points." ("base", xpos="far_left", ypos="head") + her "I will." ("open", "closed", "base", "mid") + her "So... What now?" ("base", "base", "base", "mid") + gen "Let's wait and see if the potion is going to work." ("base", xpos="far_left", ypos="head") + gen "For now, why don't you tell me a bit about how you've been." ("base", xpos="far_left", ypos="head") + her "Alright." ("open", "base", "base", "mid") + her "Well, ever since I started my \"Extracurricular activities\" with you, my attendance and grades started slipping." ("open", "closed", "base", "mid") + + menu: + "\"Troubling indeed...\"": + if her_whoring < 16: + her "It is! [genie_name], I used to be at the top of the class. My scores were impeccable." ("angry", "squint", "worried", "mid") + gen "And how are your scores now?" ("base", xpos="far_left", ypos="head") + her "I'm still at the top... Just not by much." ("open", "closed", "base", "mid") + gen "Well, there are times when academic excellence shouldn't be your primary concern." ("base", xpos="far_left", ypos="head") + her "*Hmph*... And what \"should\" be my primary concern then?" ("angry", "narrow", "base", "mid") + gen "Currently. I'd say your face is pretty high on the list." ("base", xpos="far_left", ypos="head") + her "Excuse me? This is hardly appropriate--" ("angry", "narrow", "annoyed", "mid") + elif her_whoring < 22: + her "That said... We have been earning a lot of points for Gryffindor." ("base", "squint", "base", "R") + gen "You have, you mean." ("base", xpos="far_left", ypos="head") + her "I suppose..." ("base", "narrow", "base", "down", cheeks="blush") + her "Although it's easier just to say \"we\" as I can't tell them where the majority of those points came from." ("open", "closed", "base", "mid") + gen "That is true... If you told them, they probably wouldn't be able to be able to look at you the same way." ("base", xpos="far_left", ypos="head") + her "Yeah..." ("open", "narrow", "base", "down") + gen "I mean... Soon enough you wont even look the same!" ("base", xpos="far_left", ypos="head") + her "What do you mean?" ("angry", "base", "worried", "mid") + her "I'm still the same person am I not--" ("annoyed", "squint", "worried", "mid") + else: + her "Well... I suppose it's not the worst thing in the world..." ("soft", "narrow", "base", "down", cheeks="blush") + her "Grades aren't everything." ("angry", "closed", "base", "mid", cheeks="blush") + gen "Is that so?" ("base", xpos="far_left", ypos="head") + her "Well... I'm sure if I wanted to, I could get a ministry job by recommendation." ("base", "wink", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + her "Right?..." ("angry", "squint", "base", "mid") + gen "I suppose you could try persuading Miss Tonks to give you one." ("base", xpos="far_left", ypos="head") + her "Oh... I was thinking perhaps you could... *Ehm*..." ("angry", "squint", "base", "R") + gen "Me? And willingly hand over my favourite little slut to some bureaucrats?" ("base", xpos="far_left", ypos="head") + gen "No way!" ("base", xpos="far_left", ypos="head") + her "But [genie_name]!" ("clench", "base", "worried", "mid") + gen "Don't give me that face..." ("base", xpos="far_left", ypos="head") + her "But--" ("angry", "base", "worried", "mid") + + "\"I bet you'd get the top grade in dick sucking class!\"": + if hg_blowjob.trigger: + her "[genie_name]!" ("angry", "base", "base", "mid", cheeks="blush") + gen "Oh, don't be so modest. If sucking dick was a class, you'd be {i}Magna Cum Laude{/i}." ("grin", xpos="far_left", ypos="head") + her "I'm not sure that's appropriate, but thanks I suppose..." ("angry", "narrow", "base", "R", cheeks="blush") + her "You know... There's still time to earn some house points before class. If you're feeling generous I could..." ("open", "narrow", "base", "down", cheeks="blush") + gen "I'd have to know on whose face I'll be cumming on though." ("base", xpos="far_left", ypos="head") + her "What do you mean? My face of course--" ("angry", "squint", "base", "mid", cheeks="blush") + elif her_whoring < 16: + her "[genie_name]!" ("angry", "base", "worried", "mid") + her "I can't believe you'd say such a thing!" ("clench", "squint", "worried", "mid") + gen "Well, you'll never know if you don't try." ("base", xpos="far_left", ypos="head") + her "*Hmph*" ("annoyed", "squint", "annoyed", "R") + gen "In any case, that's not why you're here today." ("base", xpos="far_left", ypos="head") + her "Then why am I here? What's this potion supposed to do anyway?" ("angry", "closed", "annoyed", "mid") + gen "I'm sure we'll find out any--" ("base", xpos="far_left", ypos="head") + else: + her "How dare you even suggest such a thing." ("angry", "base", "base", "mid", cheeks="blush") + gen "Oh come on, it's not like you haven't thought about it." ("base", xpos="far_left", ypos="head") + her "Well, maybe, but I have never done such a thing before..." ("annoyed", "closed", "base", "mid", cheeks="blush") + gen "We could change that right now if you want." ("grin", xpos="far_left", ypos="head") + gen "I'd have to know on whose face I'll be cumming on though." ("base", xpos="far_left", ypos="head") + her "What do you mean whose face you will be--" ("clench", "base", "base", "mid", cheeks="blush") + + play sound "sounds/burp.ogg" + her "*Burp*" ("full", "happyCl", "worried", "mid") + her "...{w=0.5}{nw}" ("mad", "happyCl", "base", "mid") + her "...{fast}" ("mad", "base", "base", "mid") + her "I beg your pardon, I'm not sure where that came from--" ("mad", "squint", "base", "mid", cheeks="blush") + + # Sets Luna's initial facial expression to the ones Hermione had just a moment ago (more less) + $ luna.set_face(mouth="mad", eyes="narrow", eyebrows="base", pupils="mid") + else: + her "Not bad. So, what now?" ("base", "squint", "base", "mid") + gen "Just wait here for a moment until the potion starts taking effect." ("base", xpos="far_left", ypos="head") + her "Okay." ("open", "squint", "base", "R") + gen "Until then, why don't you tell me a little bit about how your day's been going." ("base", xpos="far_left", ypos="head") + her "Alright." ("base", "base", "base", "mid") + + if her_whoring < 16: + her "There's not much to tell you that you don't already know." ("open", "closed", "base", "mid") + her "Lately I've been questioning my previous outlook on life in general." ("open", "narrow", "base", "R") + gen "In what way exactly?" ("base", xpos="far_left", ypos="head") + her "Well, since we started our... mutually beneficial... agreement, or whatever we call this..." ("disgust", "narrow", "base", "R") + her "The general atmosphere in our common room has been in an all time high because of how many house points we're racking in." ("open", "narrow", "base", "down") + gen "That's good, you must feel a great sense of pride and accomplishment." ("base", xpos="far_left", ypos="head") + her "Of course! The only issue is that I would never be able to tell them I'm the one to thank for it..." ("angry", "narrow", "base", "mid") + her "If they just got one look of my face they'd be able to tell what was up." ("disgust", "base", "base", "mid") + gen "Speaking of..." ("base", xpos="far_left", ypos="head") + + # Sets Luna's initial facial expression to the ones Hermione had just a moment ago + $ luna.set_face(mouth="disgust", eyes="base", eyebrows="base", pupils="mid") + elif her_whoring < 19: + her "It's been pretty good, thanks for asking." ("base", "closed", "base", "mid") + her "The morale has never been higher in the common room." ("grin", "base", "base", "mid") + her "I feel like we might actually have a chance at winning this year." ("smile", "base", "base", "mid") + gen "All thanks to you I'm sure." ("base", xpos="far_left", ypos="head") + gen "(You're lucky you've got me instead of the real old man, I bet he'd never rig the points like this...)" ("base", xpos="far_left", ypos="head") + her "Well... You've also kindly allowed me to earn these points..." ("open", "closed", "base", "mid", cheeks="blush") + gen "That I have." ("base", xpos="far_left", ypos="head") + gen "Although who knows... I might get confused and award the point to some other house in a minute." ("base", xpos="far_left", ypos="head") + her "*Hmm*... So, the potion is not going to turn me into another Gryffindor--" ("angry", "narrow", "base", "down") + + # Sets Luna's initial facial expression to the ones Hermione had just a moment ago + $ luna.set_face(mouth="angry", eyes="narrow", eyebrows="base", pupils="down") + else: + her "Well, generally its been quite dull up until now." ("open", "closed", "base", "mid") + her "I would be lying if I said I wasn't a little bit excited when you called on me." ("grin", "narrow", "base", "R") + gen "Oh, you'll be getting your fair share of excitement soon enough, well, at least the {i}new you{/i} will." ("grin", xpos="far_left", ypos="head") + her "What do you mean by that--" ("angry", "base", "base", "mid") + + # Sets Luna's initial facial expression to the ones Hermione had just a moment ago + $ luna.set_face(mouth="angry", eyes="base", eyebrows="base", pupils="mid") + + call play_music("stop", fadeout=2.0) + hide hermione_main + with d3 + + pause 2 + + call play_sound("magic") + show screen gfx_effect(584, 340, img="smoke", zoom=0.85) + call her_chibi("hide") + call lun_chibi(xpos="mid", ypos="base") + + $ luna_name_old = luna_name + $ luna_name = "Hermione?" + + pause 2 + + call play_music("luna") + $ camera.set_imagepath("common/") + $ camera.set_image("CG luna") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=0.5, pos=(-270, -150), initialize=True) + + hide screen blkfade + show screen animatedCG + with fade + + pause 2 + + if not her_polyjuice_luna_drank: + lun "*Ughhh*... My head..." ("disgust", "closed", "base", "mid", trans=d3) + lun "I feel like I'm going to throw up!" ("mad", "narrow", "base", "mid") + gen "Well you look fine to me!" ("grin", xpos="far_left", ypos="head") + + call nar(">Hermione starts examining herself, feeling out her new assets and pausing at her breasts.") + + lun "*Hmm*... That's a Polyjuice potion alright..." ("angry", "narrow", "base", "down") + lun "And apparently I'm still a girl... Someone from Ravenclaw?" ("open", "base", "raised", "mid") + gen "Keen observation, [hermione_name]." ("base", xpos="far_left", ypos="head") + + call nar(">Hermione examines her new hair.") + lun "Definitely a blonde... She sure could use a comb." ("angry", "narrow", "raised", "downR") + lun "*Hmm*..." ("normal", "narrow", "low", "down") + + call nar(">Something suddenly dawns on Hermione.") + + lun "You turned me into Loony--{w=0.4} I mean Luna Lovegood?!" ("clench", "wide", "base", "mid") + gen "Very astute, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "And now if you don't mind, I'd like you to bare your--, her chest for me..." ("base", xpos="far_left", ypos="head") + lun "What?!" ("disgust", "wide", "base", "mid") + + if her_whoring < 16: + lun "I can't believe what you're suggesting, you're asking me to show off another students breasts?" ("disgust", "base", "annoyed", "mid", cheeks="blush") + gen "Well, what else would you have me do? Look at your face?" ("base", xpos="far_left", ypos="head") + lun "I...{w=0.4} Yes?" ("annoyed", "narrow", "raised", "mid", cheeks="blush") + gen "Come on... You've drank the potion... Don't you think it'd be a bit of a waste?" ("base", xpos="far_left", ypos="head") + lun "But [genie_name]." ("clench", "base", "base", "mid", cheeks="blush") + gen "I'm sure it's fine... It's not like I would tell her anyway." ("base", xpos="far_left", ypos="head") + gen "Don't you want those points?" ("base", xpos="far_left", ypos="head") + lun "..." ("upset", "narrow", "base", "downR", cheeks="blush") + lun "Fine..." ("open", "narrow", "base", "down", cheeks="blush") + + else: + lun "You can't possibly be interested in that... That girl's paltry breasts." ("annoyed", "narrow", "annoyed", "mid") + gen "Currently they're yours. And they don't look so paltry from where I'm sitting [hermione_name]. Do I detect a hint of jealousy?" ("base", xpos="far_left", ypos="head") + lun "Not at all... I suppose it is only natural that someone of your advanced age has trouble with their--" ("open", "closed", "base", "mid") + gen "Their what [hermione_name]?" ("base", xpos="far_left", ypos="head") + lun "Nothing..." ("annoyed", "narrow", "base", "R", cheeks="blush") + gen "Eyesight?" ("base", xpos="far_left", ypos="head") + lun "*Ehm*... No, what I was going to say--" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Is that any way to talk to your elders, [hermione_name]? Perhaps you need a good spanking to remind you of your manners." ("base", xpos="far_left", ypos="head") + lun "I... I apologize, [genie_name]. I don't know what came over me." ("open", "narrow", "base", "mid", cheeks="blush") + gen "Apology accepted. I'm sure they can't hold a candle to the brilliance of your own." ("base", xpos="far_left", ypos="head") + lun "I'd like to think I'm more than just a pair of breasts... but thank you [genie_name]. That was flattering... In a way." ("angry", "closed", "base", "mid") + gen "If you want to dispel all doubt, we could compare. Why don't you lift your shirt and show me what you... *Err*... She's got under that sweater." ("base", xpos="far_left", ypos="head") + lun "I'm still not entirely comfortable with this..." ("angry", "narrow", "base", "down") + + else: + lun "*Urgh*... Every time..." ("disgust", "narrow", "base", "stare", trans=d3) + lun "Did it work?" ("angry", "narrow", "raised", "mid") + gen "Perfectly..." ("base", xpos="far_left", ypos="head") + + call nar(">Hermione starts examining herself, feeling out her outfit and pausing at her breasts.") + + lun "*Hmm*... At least I still appear to be a girl... A Ravenclaw." ("upset", "narrow", "raised", "down") + gen "I'm surprised you expected something different." ("base", xpos="far_left", ypos="head") + + if her_polyjuice_cat_drank: + lun "Well... Seeing that you've previously tried to turn me into a cat." ("open", "narrow", "base", "mid") + gen "A cat-girl actually..." ("base", xpos="far_left", ypos="head") + lun "..." ("disgust", "narrow", "base", "mid") + + call nar(">Hermione examines her new hair.") + + lun "*Hmm*... A blonde... that narrows things down. Not a good sign..." ("normal", "narrow", "base", "downR") + gen "And why might that be?" ("base", xpos="far_left", ypos="head") + lun "Well... Unless I'm completely mistaken..." ("open", "closed", "base", "mid") + lun "You've turned me into Luna Lovegood. Again." ("angry", "narrow", "base", "mid") + gen "Yeah!" ("base", xpos="far_left", ypos="head") + lun "What is your obsession with this crazy blonde girl?" ("upset", "narrow", "annoyed", "mid") + gen "Now-now... You're the one looking like her, remember." ("base", xpos="far_left", ypos="head") + gen "Unless you're referring to yourself, there's nothing wrong with the way she looks." ("base", xpos="far_left", ypos="head") + lun "..." ("annoyed", "narrow", "base", "R") + gen "Now, I'd like to see those great assets of hers..." ("base", xpos="far_left", ypos="head") + + if her_whoring <= 16: + lun "This again? It was already bad enough that I agreed to do it before..." ("disgust", "narrow", "base", "mid") + gen "There wasn't any repercussions was there?" ("base", xpos="far_left", ypos="head") + lun "..." ("annoyed", "narrow", "base", "down") + lun "I suppose not..." ("angry", "narrow", "base", "down") + gen "Then get those puppies out for me." ("base", xpos="far_left", ypos="head") + + lun "Alright." ("open", "narrow", "base", "mid") + + call nar(">Hermione quickly strips off her Ravenclaw top.") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("top") + + pause .8 + lun "..." ("normal", "narrow", "base", "down", cheeks="blush") + gen "Go on then..." ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("bra") + + if not her_polyjuice_luna_drank: + if her_whoring < 16: + lun "..." ("normal", "narrow", "base", "down", cheeks="blush") + lun "This feels wrong..." ("open", "narrow", "low", "down", cheeks="blush") + gen "Feels pretty right to me!" ("grin", xpos="far_left", ypos="head") + gen "Although I could do with a closer look." ("grin", xpos="far_left", ypos="head") + lun "You're not going to touch her--" ("clench", "narrow", "base", "mid", cheeks="blush") + gen "Just come up to the front of my desk, [hermione_name]." ("base", xpos="far_left", ypos="head") + lun "...{w} Alright." ("mad", "base", "base", "mid", cheeks="blush") + + else: + pause .5 + lun "There, see... Perfectly ordinary breasts." ("open", "closed", "annoyed", "mid", cheeks="blush") + lun "Absolutely no need to keep looking at them." ("soft", "narrow", "annoyed", "downR", cheeks="blush") + gen "I'm not quite convinced, the soft pale skin, the cute pink nipples and they look like quite a handful..." ("base", xpos="far_left", ypos="head") + gen "I think you might have some serious competition here [hermione_name]." ("base", xpos="far_left", ypos="head") + lun "You can't be serious! They're saggy and couldn't even fill your palm!" ("angry", "narrow", "annoyed", "mid") + gen "*Hmm*... Well I sure wouldn't use the word \"saggy\"... Perhaps a closer examination is required." ("base", xpos="far_left", ypos="head") + lun "Surely you can see from there how--" ("angry", "narrow", "annoyed", "down") + gen "No, I think I'd need a closer look [hermione_name]... Seeing that my eyesight is so terrible and all..." ("base", xpos="far_left", ypos="head") + lun "..." ("angry", "narrow", "annoyed", "down") + gen "Come closer, [hermione_name]..." ("base", xpos="far_left", ypos="head") + else: + pause .5 + lun "I assume you'd like a closer look like the last time?" ("open", "closed", "base", "mid", cheeks="blush") + gen "Of course!" ("base", xpos="far_left", ypos="head") + gen "Get those cute pink nipples up here." ("base", xpos="far_left", ypos="head") + + hide luna_main + with d3 + + call lun_walk(xpos="desk") + + call nar(">In a huff, Hermione walks over and presents her new set of breasts.") + lun "" ("annoyed", "base", "base", "R", cheeks="blush", trans=dissolve) + call ctc + + if not her_polyjuice_luna_drank: + if her_whoring < 16: + gen "Very good." ("base", xpos="far_left", ypos="head") + lun "..." ("upset", "narrow", "base", "down", cheeks="blush") + lun "Am I done here?" ("open", "closed", "base", "mid", cheeks="blush") + else: + gen "Yes... Upon closer inspection I must say those are some magnificent tits..." ("base", xpos="far_left", ypos="head") + lun "[genie_name]!" ("angry", "base", "base", "mid", cheeks="blush") + gen "But Hermione's will always remain my favourite." ("base", xpos="far_left", ypos="head") + lun "I'm glad you've come to your senses, Thank you... If you're completely satisfied, I'll cover up these... things." ("open", "closed", "base", "mid", cheeks="blush") + else: + gen "You look a bit flustered [hermione_name]." ("base", xpos="far_left", ypos="head") + lun "You're staring directly at my, well, her chest, [genie_name], and I can't help but feel a bit undefined as its not my own..." ("angry", "narrow", "base", "mid", cheeks="blush") + lun "Am I free to go now?" ("open", "narrow", "base", "mid", cheeks="blush") + + menu: + "-Tell her to take the rest off.-": + gen "Not yet." ("base", xpos="far_left", ypos="head") + lun "*Hmm*?" ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "You haven't bared it all just yet." ("grin", xpos="far_left", ypos="head") + + if not her_polyjuice_luna_nude: + $ her_polyjuice_luna_nude = True + + if her_whoring < 16: + lun "You want me to strip naked?" ("clench", "base", "base", "mid", cheeks="blush") + gen "Of course!" ("grin", xpos="far_left", ypos="head") + lun "Why?" ("upset", "narrow", "annoyed", "mid", cheeks="blush") + gen "To give you a chance to earn some extra points obviously." ("base", xpos="far_left", ypos="head") + lun "That's not really the answer I was looking for..." ("upset", "narrow", "base", "R", cheeks="blush") + lun "..." ("upset", "narrow", "base", "down", cheeks="blush") + lun "{size=-4}I'm sorry Luna...{/size}" ("normal", "happyCl", "base", "mid", cheeks="blush") + lun "I want fifty points." ("scream", "happyCl", "base", "mid", cheeks="blush") + gen "That's a bit much don't you think?" ("base", xpos="far_left", ypos="head") + lun "You're asking me to take the clothes off another student without their permission..." ("mad", "narrow", "base", "mid", cheeks="blush") + gen "Well technically--" ("base", xpos="far_left", ypos="head") + lun "..." ("angry", "narrow", "annoyed", "mid", cheeks="blush") + + menu: + "-Give her the points.-": + gen "Alright, fifty points it is..." ("base", xpos="far_left", ypos="head") + $ current_payout = 50 + + "-Finish for today.-": + gen "No, In that case it will have to do for--" ("base", xpos="far_left", ypos="head") + lun "Thirty points!" ("clench", "happyCl", "base", "mid", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Now who's being quick, selling out their fellow students body..." ("base", xpos="far_left", ypos="head") + lun "...Are you done?" ("upset", "narrow", "annoyed", "L", cheeks="blush") + gen "Quite, but not quite." ("grin", xpos="far_left", ypos="head") + + gen "Thirty points it is..." ("base", xpos="far_left", ypos="head") + $ current_payout = 30 + + lun "..." ("normal", "narrow", "base", "down", cheeks="blush") + gen "Go on then..." ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("bottom", "panties") + call ctc + + lun "" ("normal", "narrow", "base", "mid", cheeks="blush") + gen "Very good..." ("grin", xpos="far_left", ypos="head") + gen "Now, let me just get my--" ("grin", xpos="far_left", ypos="head") + + # Hide early to show chibi + hide screen animatedCG + with fade + + pause 0.5 + + $ renpy.sound.play("sounds/zipper.ogg") + call gen_chibi("jerk_off_behind_desk") + with d3 + + pause 1 + + lun "No!" ("clench", "wide", "base", "mid", cheeks="blush", trans=hpunch) + + call gen_chibi("jerk_off_behind_desk_pause") + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + lun "I can't let you... That's... That's enough..." ("mad", "happyCl", "base", "mid", cheeks="blush") + + $ renpy.sound.play("sounds/zipper.ogg") + call gen_chibi("sit_behind_desk") + with d3 + gen "Fine..." ("base", xpos="far_left", ypos="head") + lun "..." ("angry", "narrow", "base", "mid", cheeks="blush") + + jump .end + else: + $ current_payout = 20 + + lun "What?" ("mad", "base", "base", "mid", cheeks="blush") + gen "How am I supposed to get a good comparison if you're still wearing clothes." ("base", xpos="far_left", ypos="head") + lun "You were supposed to compare our breasts!" ("scream", "narrow", "annoyed", "mid", cheeks="blush") + gen "Well..." ("base", xpos="far_left", ypos="head") + gen "There's always more things worth comparing don't you think?" ("base", xpos="far_left", ypos="head") + lun "*Hmph*..." ("angry", "narrow", "annoyed", "R", cheeks="blush") + gen "Now-now [hermione_name]... There's some points in it for you if you do it." ("base", xpos="far_left", ypos="head") + lun "I don't care about the points..." ("angry", "base", "annoyed", "mid", cheeks="blush") + gen "You don't?" ("base", xpos="far_left", ypos="head") + lun "I mean... I do... But it's not about that!" ("annoyed", "base", "annoyed", "mid", cheeks="blush") + gen "You know your tits will always be my favourite, there's no need to be jealous." ("base", xpos="far_left", ypos="head") + lun "I am not jealous!" ("angry", "base", "base", "mid", cheeks="blush") + gen "What is it then, are you afraid her delicate flower will be prettier than yours?" ("base", xpos="far_left", ypos="head") + lun "I am not afraid!" ("scream", "closed", "annoyed", "mid", cheeks="blush") + gen "Then prove it!" ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("bottom", "panties") + call ctc + + gen "Perfect!" ("grin", xpos="far_left", ypos="head") + lun "..." ("annoyed", "narrow", "annoyed", "mid", cheeks="blush") + gen "I mean... Adequate!" ("base", xpos="far_left", ypos="head") + gen "Of course I can't really tell for sure unless you were stood side by side..." ("base", xpos="far_left", ypos="head") + gen "Maybe some other time." ("base", xpos="far_left", ypos="head") + lun "..." ("angry", "narrow", "base", "mid", cheeks="blush") + + else: # Hermione stripped completely as Luna before + lun "Right..." ("disgust", "narrow", "base", "down", cheeks="blush") + + if her_whoring < 16: + + lun "And how many points would I--" ("angry", "base", "base", "mid", cheeks="blush") + gen "Thirty points." ("base", xpos="far_left", ypos="head") + $ current_payout = 30 + + lun "Alright then..." ("open", "narrow", "base", "mid", cheeks="blush") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("bottom", "panties") + pause .8 + lun "" ("normal", "narrow", "base", "down", cheeks="blush") + call ctc + + gen "You didn't even hesitate this time." ("base", xpos="far_left", ypos="head") + lun "Oh... Well you've seen it already haven't you?" ("open", "narrow", "base", "mid", cheeks="blush") + gen "Yes... Although I'd think you'd at least be a bit more hesitant about showing off another students privates." ("base", xpos="far_left", ypos="head") + lun "*Hmm*... Honestly after spending some more time around her I do think you're right about her not caring about it that much..." ("open", "narrow", "base", "downR", cheeks="blush") + gen "Good enough for me." ("base", xpos="far_left", ypos="head") + gen "Then I suppose you don't mind if I--" ("base", xpos="far_left", ypos="head") + lun "No!" ("clench", "wide", "base", "mid", cheeks="blush") + gen "You didn't even let me finish..." ("base", xpos="far_left", ypos="head") + gen "Didn't you just say that Miss Lovegood wouldn't really care?" ("base", xpos="far_left", ypos="head") + lun "I..." ("disgust", "narrow", "base", "mid", cheeks="blush") + lun "Well maybe she would care about this, stripping is one thing!" ("angry", "closed", "raised", "mid", cheeks="blush") + gen "Alright then [hermione_name]..." ("base", xpos="far_left", ypos="head") + else: + $ current_payout = 20 + + lun "..." ("normal", "narrow", "base", "down", cheeks="blush") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("bottom", "panties") + call ctc + + gen "Nice..." ("base", xpos="far_left", ypos="head") + lun "..." ("normal", "narrow", "base", "mid", cheeks="blush") + gen "Not as nice as your own obviously..." ("base", xpos="far_left", ypos="head") + lun "Obviously..." ("open", "closed", "base", "mid", cheeks="blush") + gen "Although surely even you could admit..." ("base", xpos="far_left", ypos="head") + gen "Her nipples are pretty cute." ("base", xpos="far_left", ypos="head") + lun "I guess I could..." ("open", "narrow", "base", "R", cheeks="blush") + gen "*Heh-heh*." ("grin", xpos="far_left", ypos="head") + lun "Is that all?" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Yes, that shall do for today." ("base", xpos="far_left", ypos="head") + + "-Finish for today.-": + gen "Yes, this will do for today..." ("base", xpos="far_left", ypos="head") + + label .end: + + show screen blkfade + with d5 + pause .8 + $ luna.wear("all") + hide screen animatedCG + hide luna_main + hide screen blkfade + with d5 + + $ gryffindor += current_payout + gen "{number=current_payout} points to Gryffindor!" ("base", xpos="far_left", ypos="head") + + lun "Thank you, [genie_name]..." ("open", "closed", "base", "mid", trans=dissolve) + + if not her_polyjuice_luna_drank: + lun "I think I better head off to class now." ("angry", "base", "base", "R") + gen "You're going to class looking like Miss Lovegood?" ("base", xpos="far_left", ypos="head") + lun "Why not." ("base", "narrow", "base", "mid") + lun "I can just pretend to be her, and who knows... Maybe I'll even improve her test scores." ("base", "narrow", "base", "mid") + lun "You'll notify the teachers I can't attend class, right?" ("open", "base", "base", "mid") + gen "Certainly. Just one more thing..." ("base", xpos="far_left", ypos="head") + lun "Yes?" ("soft", "base", "raised", "mid") + gen "What if you bump into her?" ("base", xpos="far_left", ypos="head") + lun "Oh I wouldn't worry about that, [genie_name]..." ("grin", "narrow", "base", "R") + lun "She will probably think I'm some kind of wrackspurts-induced hallucination or something." ("open", "closed", "base", "mid") + gen "True." ("base", xpos="far_left", ypos="head") + gen "Off you go then." ("base", xpos="far_left", ypos="head") + lun "Good day, [genie_name]." ("base", "base", "base", "mid") + else: + lun "I'm off to class." ("open", "narrow", "base", "R") + gen "Don't get up to any mischief will you?" ("base", xpos="far_left", ypos="head") + lun "I would never..." ("smile", "narrow", "base", "mid") + + call lun_walk(action="leave") + + $ luna.equip(lun_outfit_last) + $ luna_name = luna_name_old + $ her_polyjuice_luna_drank = True + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/events/requests/flash_your_tits.rpy b/game/scripts/characters/hermione/events/requests/flash_your_tits.rpy new file mode 100644 index 00000000..9dbdd726 --- /dev/null +++ b/game/scripts/characters/hermione/events/requests/flash_your_tits.rpy @@ -0,0 +1,492 @@ + +### Flash A Classmate ### + +label hg_pr_flash: + + # Setup + $ current_payout = 35 + + if hg_pr_flash.counter == 0: + gen "{size=-4}(Tell her to flash her tits to one of her classmates?){/size}" ("base", xpos="far_left", ypos="head") + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + her "" (xpos="mid", ypos="base", trans=fade) + + #Intro. + if hg_pr_flash.counter == 0: + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "I would like to award Gryffindor with twenty-five house points today." ("base", xpos="far_left", ypos="head") + her "Really?" ("base", "base", "base", "mid") + her "Thank you, [genie_name]!" + gen "Yes, but first I will require your help with something..." ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]! Anything!" + gen "I need you to go out there and show off your tits to people..." ("base", xpos="far_left", ypos="head") + + stop music fadeout 1.0 + + her "...?" ("open", "base", "base", "mid") + gen "You know, flash your breasts to some boys..." ("base", xpos="far_left", ypos="head") + her "?!!" ("shock", "wide", "base", "stare") + + if her_reputation < 6: + jump too_much_public + + call play_music("hermione") + + her "[genie_name]!" + her "This is a completely new level of inappropriate, even for you, [genie_name]!" ("angry", "base", "angry", "mid") + her "How can you ask one of your pupils to perform such a task?" + gen "So that's how you feel then? I see..." ("base", xpos="far_left", ypos="head") + gen "I suppose I will be awarding those points to some other house instead ..." ("base", xpos="far_left", ypos="head") + gen "Slytherin perhaps?" ("base", xpos="far_left", ypos="head") + her "................" ("disgust", "narrow", "base", "mid_soft") + gen "But, you know, no pressure..." ("base", xpos="far_left", ypos="head") + her "[genie_name]..." ("annoyed", "narrow", "angry", "R") + her "The fate of my house is very important to me, but..." + gen "Is it really?" ("base", xpos="far_left", ypos="head") + gen "Why don't you show it to me then?" ("base", xpos="far_left", ypos="head") + gen "Yes. Show me how important it is to you exactly, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "But this is inappropriate..." ("angry", "base", "angry", "mid") + gen "Are we really in any position to discuss what is appropriate and what is not at this point?" ("base", xpos="far_left", ypos="head") + her ".................." ("annoyed", "narrow", "angry", "R") + gen "I would say that ship has sailed a long time ago..." ("base", xpos="far_left", ypos="head") + her ".............." ("disgust", "narrow", "base", "mid_soft") + gen "All I ask you to do is to give some lucky boy a quick peek..." ("base", xpos="far_left", ypos="head") + her "But why? Why must I do things like this, [genie_name]?" ("annoyed", "narrow", "angry", "R") + gen "A minute of your time for twenty-five house points..." ("base", xpos="far_left", ypos="head") + gen "A pretty nifty deal, wouldn't you agree?" ("base", xpos="far_left", ypos="head") + her "I suppose..." + her "Well alright, I'll see what I can do..." + else: + if her_tier >= 5: + gen "[hermione_name] I need you to go out there and flash your tits to one of your classmates." ("base", xpos="far_left", ypos="head") + her "I will do my best [genie_name]." ("open", "closed", "base", "mid") + gen "Really? Just like that? No complaints or anything?" ("base", xpos="far_left", ypos="head") + her "I am getting paid for this, am I not?" ("base", "narrow", "base", "mid_soft") + gen "Of course." ("base", xpos="far_left", ypos="head") + her "Why would I complain about a simple task like this then?" ("open", "closed", "base", "mid") + her "{number=current_payout} house points is a fair prices for a few seconds of excitement... err..." + her "... I mean, embarrassment." ("base", "happyCl", "base", "mid") + gen "{size=-3}(She changed this much already?){/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-3}(I'm so good at this training thing that it's starting to get creepy!){/size}" ("grin", xpos="far_left", ypos="head") + her "Classes are about to start... I'd better leave now." ("base", "base", "base", "mid") + her "I will see you later tonight, [genie_name]." + elif her_tier >= 4: + gen "I think you need to show off your tits some more, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "You mean to you, [genie_name]?" ("upset", "wink", "base", "mid") + gen "No, to your classmates..." ("base", xpos="far_left", ypos="head") + her "Oh..." ("angry", "base", "base", "mid") + gen "Yes, go do that and then report back to me..." ("base", xpos="far_left", ypos="head") + her "Will I get paid for this?" ("annoyed", "narrow", "angry", "R") + gen "Of course you will get paid for this, [hermione_name]. Don't be silly." ("base", xpos="far_left", ypos="head") + gen "{number=current_payout} house points. The usual rate..." ("base", xpos="far_left", ypos="head") + her "................." ("annoyed", "narrow", "angry", "R") + her "Well alright... I will see what I can do, [genie_name]..." ("disgust", "narrow", "base", "mid_soft") + else: + gen "I think you need to show off your tits some more, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "You mean to you, [genie_name]?" ("upset", "wink", "base", "mid") + gen "No, to your classmates..." ("base", xpos="far_left", ypos="head") + her "Oh..." ("angry", "base", "base", "mid") + gen "Yes, go do that and then report back to me..." ("base", xpos="far_left", ypos="head") + her "Will I get paid for this?" ("annoyed", "narrow", "angry", "R") + gen "Of course you will get paid for this, [hermione_name]. Don't be silly." ("base", xpos="far_left", ypos="head") + gen "{number=current_payout} house points. The usual rate..." ("base", xpos="far_left", ypos="head") + her "................." ("annoyed", "narrow", "angry", "R") + her "Well alright... I will see what I can do, [genie_name]..." ("disgust", "narrow", "base", "mid_soft") + + call her_walk(action="leave") + + $ hg_pr_flash.inProgress = True + jump end_hermione_event + +label end_hg_pr_flash: + $ gryffindor += current_payout + + gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." + + label .no_points: + + call her_walk("door", "base") + pause.2 + + # Inner monologue + if hg_pr_flash.counter == 1: + show screen blktone + with d3 + + her "(Stupid Slytherin...)" ("angry", "narrow", "angry", "mid", ypos="head", flip=False, trans=d3) + her "(I {b}HATE{/b} them!)" ("angry", "closed", "worried", "mid") + + hide screen blktone + with d3 + + elif not hg_pr_flash.monologue_glass and hg_pr_flash.is_event_complete(5, 3): # Event specific + $ hg_pr_flash.monologue_glass = True + + show screen blktone + with d3 + + her "(I can't believe I did that today...)" ("upset", "closed", "base", "mid", ypos="head", flip=False, trans=d3) + her "(What if Harry or Ron saw me like that?)" ("angry", "wide", "base", "stare") + her "(Standing there...)" + her "(Pressing my breasts against that window glass...)" + her "(I would probably just die of embarrassment right there on the spot...)" ("angry", "narrow", "base", "down") + her "(No. Protecting the honour of the Gryffindor house is my number one priority.)" ("upset", "closed", "base", "mid") + her "(We must get the cup this year, no matter the cost...)" + her "(........)" ("angry", "narrow", "base", "down") + + hide screen blktone + with d3 + + call her_chibi("leave") + + label .quick_end: + + # Increase Points + if not hg_pr_flash.is_tier_complete(): + $ her_reputation += 1 + + $ hg_pr_flash.inProgress = False + jump end_hermione_event + +label hg_pr_flash_intro: + call her_walk(action="enter", xpos="mid", ypos="base") + her "Good evening, [genie_name]." ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Did you complete your task?" ("base", xpos="far_left", ypos="head") + her "I did as you asked [genie_name]..." + + if hg_pr_flash.is_tier_complete(): + menu: + "\"Great. Here are your points.\"": + jump end_hg_pr_flash + + "\"Give me the details.\"": + pass + + stop music fadeout 3.0 + show screen blktone + with d3 + + if hg_pr_flash.counter == 1: + her "......" ("annoyed", "narrow", "angry", "R") + her "Well... *Ehm*..." ("soft", "base", "base", "R") + gen "Speak up, [hermione_name]." ("base", xpos="far_left", ypos="head") + + gen "Did you flash some lucky guy? How did it go?" ("base", xpos="far_left", ypos="head") + + return + +### Tier 3 ### + +label hg_pr_flash_T3_E1: + + call hg_pr_flash_intro + + call play_music("playful_tension") # Music + her "*Ehm*... Not too well, actually..." ("angry", "happyCl", "worried", "mid",emote="sweat") + her "................................" + gen "Just tell me what happened, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "That is the thing, [genie_name]..." ("open", "base", "base", "mid") + her "Nothing happened..." + her "I just couldn't bring myself to do it..." ("open", "narrow", "worried", "down") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "Well, I can't just give you the points for nothing, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]... I understand..." ("open", "closed", "base", "mid") + her "I shall try harder next time... I promise..." ("annoyed", "base", "worried", "R") + gen "Then I will just put these {number=current_payout} points aside for now..." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]..." ("annoyed", "base", "worried", "R") + her "..." + her "I'd better go now." + + jump end_hg_pr_flash.no_points + +label hg_pr_flash_T3_E2: + + call hg_pr_flash_intro + + call play_music("hermione") # Music + her "*Ehm*... Sort of..." ("annoyed", "base", "worried", "R") + gen "Sort of?" ("base", xpos="far_left", ypos="head") + her "Yes... *Ehm*..." ("open", "base", "base", "mid") + her "Well, I decided to try and flash them to this Hufflepuff boy..." + her "I've been waiting for the right moment..." ("open", "narrow", "worried", "down") + her "I was worried that something would go wrong..." + her "And, of course, everything that could - did..." ("annoyed", "narrow", "angry", "R") + her "When I tried to expose myself to the boy..." ("open", "base", "base", "mid") + her "At first I only pulled up my vest..." + her "Then I tried to pull my shirt up as well..." + her "And one of my breasts got entangled in the fabric and was pulled up along with the shirt..." + her "So only one of my breasts was naked and I was desperately trying to free the other one." ("scream", "happyCl", "worried", "mid") + her "Other students started to pay attention to me..." + her "So I had to fix my clothes back into place quickly..." + her "And then the moment was gone..." + her "............" ("normal", "happyCl", "worried", "mid") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "What about the boy? Did he see your tits or not?" ("base", xpos="far_left", ypos="head") + her "Well, I think he may have seen one of them..." ("open", "base", "base", "mid") + her "But from the way he was looking at me..." + her "I doubt that he understood that the whole commotion was for his benefit." + her "......................" ("annoyed", "base", "worried", "R") + her "I'm sorry, [genie_name]..." ("open", "base", "base", "mid") + gen "That's alright..." ("base", xpos="far_left", ypos="head") + gen "I wouldn't expect you to perform perfectly this early in your training..." ("base", xpos="far_left", ypos="head") + + show screen blktone + with d3 + + her "(My training?)" ("angry", "base", "base", "mid") + + hide screen blktone + with d3 + + jump end_hg_pr_flash + +label hg_pr_flash_T3_E3: + + call hg_pr_flash_intro + + call play_music("hermione") # Music + her "I think it went well, [genie_name]." ("annoyed", "base", "worried", "R") + gen "Good. Tell me more." ("base", xpos="far_left", ypos="head") + her "*Ehm*... There is not much to tell, really..." ("open", "base", "base", "mid") + her "I spent the first half of the day with studying in the library..." + her "It is usually quite deserted during that time..." + her "Apart from me there was only one student..." + her "Some boy from Ravenclaw..." ("upset", "closed", "base", "mid") + her "So I waved to him and when he looked up at me..." + her "I quickly pulled my shirt up..." ("angry", "base", "base", "mid") + gen "Good job." ("base", xpos="far_left", ypos="head") + gen "How did he react to the sight of your naked tits?" ("base", xpos="far_left", ypos="head") + her "I'm not sure..." ("angry", "narrow", "base", "down") + her "He looked rather shocked I suppose..." ("angry", "base", "base", "mid") + her "After I showed him my breasts it got too embarrassing for me to stay there any longer..." ("angry", "narrow", "base", "down") + her "So I just gathered all my books and left..." ("angry", "base", "base", "mid") + gen "I see..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_flash + +### Tier 4 ### + +label hg_pr_flash_T4_E1: + + call hg_pr_flash_intro + + her "..........." ("upset", "base", "worried", "R") + gen "[hermione_name], did you complete your task or not?" ("base", xpos="far_left", ypos="head") + her "Yes I did, [genie_name]." ("upset", "wink", "base", "mid") + her "............." ("angry", "narrow", "base", "down") + gen "Well?" ("base", xpos="far_left", ypos="head") + her "................" ("angry", "narrow", "base", "down") + call play_music("hermione") # Music + her "Just for the record, [genie_name]..." ("annoyed", "narrow", "angry", "R") + gen "*Hmm*?" ("base", xpos="far_left", ypos="head") + her "I think that forcing your pupils to do things like this..." ("scream", "closed", "angry", "mid") + her "Is beneath an esteemed wizard such as yourself..." ("upset", "closed", "base", "mid") + gen "\"Forcing\"? Nobody is forcing you to do anything, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "You came to me, remember?" ("base", xpos="far_left", ypos="head") + her ".........." ("open", "base", "base", "mid") + gen "You begged me to buy a sexual favour from you." ("base", xpos="far_left", ypos="head") + her "... I..." ("annoyed", "base", "worried", "R") + her "I never said \"sexual\"..." ("open", "base", "base", "mid") + gen "Nevertheless, you can stop selling me these favours at any moment, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "I suppose..." ("annoyed", "narrow", "angry", "R") + gen "And yet you keep on coming back..." ("base", xpos="far_left", ypos="head") + her "............................" ("angry", "narrow", "base", "down") + gen "I think you may actually be taking some twisted form of pleasure from this." ("base", xpos="far_left", ypos="head") + her "What?" ("angry", "base", "angry", "mid") + gen "Shame on you, [hermione_name]. Shame on you." ("base", xpos="far_left", ypos="head") + her "[genie_name], I never...!" ("angry", "base", "angry", "mid") + gen "Enough of this. Did you complete your task or not?" ("base", xpos="far_left", ypos="head") + her "Yes I did..." ("upset", "closed", "base", "mid") + gen "And?" ("base", xpos="far_left", ypos="head") + her "And that is all I am going to say..." ("open", "narrow", "worried", "down") + her "........" ("upset", "closed", "base", "mid") + gen ".........." ("base", xpos="far_left", ypos="head") + her "........" + gen "Oh, whatever. Just take your points and go." ("base", xpos="far_left", ypos="head") + her "" ("annoyed", "closed", "base", "mid") + + jump end_hg_pr_flash + +label hg_pr_flash_T4_E2: + + call hg_pr_flash_intro + + call play_music("hermione") # Music + her ".........." ("normal", "happyCl", "worried", "mid") + gen "................" ("base", xpos="far_left", ypos="head") + her "..............." + gen "Well?" ("base", xpos="far_left", ypos="head") + her "Can I get paid first?" ("open", "base", "base", "mid") + gen "Not before you tell me what exactly you did today." ("base", xpos="far_left", ypos="head") + her "...................." ("normal", "happyCl", "worried", "mid") + her "Do I really have to, [genie_name]?" ("open", "base", "base", "mid") + gen "When you are being coy like this..." ("base", xpos="far_left", ypos="head") + gen "It only makes me more curious. You know that, right?" ("base", xpos="far_left", ypos="head") + her "*Aww*..." ("angry", "base", "base", "mid") + her "Well... *Ehm*..." ("angry", "narrow", "base", "down") + her "Well, alright, here it goes..." + her "I flashed my tits to that Slytherin underclassman in a corridor..." ("scream", "happyCl", "worried", "mid") + her "But I was standing too close to him..." + her "...." ("normal", "happyCl", "worried", "mid") + her "...." + her "Well, he sort of grabbed one of my breasts, [genie_name]..." ("open", "base", "base", "mid") + her "he squeezed it hard and just wouldn't let go..." + her "He made me promise to meet him after my classes..." ("angry", "base", "base", "mid") + her "And let him..." + her "\"Play with my tits\" some more..." ("open", "happyCl", "worried", "mid") + her "You see, that is why I hate Slytherin boys, [genie_name]..." ("angry", "narrow", "base", "down") + her "They don't have a shred of honour.." + her "..." + gen "Did you keep your promise?" ("base", xpos="far_left", ypos="head") + her "No, not yet..." ("angry", "base", "base", "mid") + her "I'm planning to meet that awful boy after we are done here, [genie_name]." + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "Well, I shouldn't keep you waiting then, should I?" ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_flash + +label hg_pr_flash_T4_E3: + + call hg_pr_flash_intro + + her "It went well." ("open", "base", "base", "mid") + gen "I'm listening..." ("base", xpos="far_left", ypos="head") + her "Well..." ("open", "base", "base", "mid") + her "I had to spend a big portion of the day at the school library..." + her "So I didn't really have the time to perform your task properly, [genie_name]..." + gen "*Hmm*...?" ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") # Music + her "Instead I just went to the library window and..." + her "... I just pulled my shirt up and pressed my bare breasts against the glass..." ("angry", "narrow", "base", "down") + her "I stood there like that for several seconds..." + her "To make sure that at least someone sees me from the outside..." + her "I hope this still counts, [genie_name]..." ("angry", "base", "base", "mid") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "How many students would you say saw you standing behind that window?" ("base", xpos="far_left", ypos="head") + her "I am not sure, [genie_name]... A couple maybe...?" ("angry", "narrow", "base", "down") + gen "\"Maybe\"?" ("base", xpos="far_left", ypos="head") + her "I don't know, [genie_name]..." ("open", "happyCl", "worried", "mid",cheeks="blush") + her "To be honest I kept my eyes closed..." + gen "How do you know that anyone saw you at all then, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I heard someone shout: \"Look! At that window over there!\"." ("angry", "squint", "base", "mid",cheeks="blush") + her "When I heard that I covered up and quickly left..." + her "...." ("angry", "base", "base", "mid") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Well, alright... I think this counts..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_flash + +### Tier 5 ### + +label hg_pr_flash_T5_E1: + + call hg_pr_flash_intro + + her "As usual, [genie_name]..." ("base", "base", "base", "mid") + gen "I'm listening..." ("base", xpos="far_left", ypos="head") + her "Well... I had to spend a big portion of the day in the school library..." ("upset", "wink", "base", "mid") + her "So I didn't really have the time to perform your task properly, [genie_name]..." + gen "*Hmm*...?" ("base", xpos="far_left", ypos="head") + her "Instead I just made sure there were no teachers around..." ("angry", "base", "base", "mid") + call play_music("playful_tension") # Music + her "Pulled my shirt up..." + her "And then I just sat there like that for a while..." ("open", "base", "base", "mid") + her "trying to get some studying done..." ("open", "narrow", "worried", "down") + her "I don't think there were many people around..." + her "Or at least I hope so..." ("angry", "narrow", "base", "down") + her "But they definitely saw my breasts, [genie_name]..." ("angry", "base", "base", "mid") + her "eventually A few first years seemed to notice..." ("angry", "narrow", "base", "down") + her "I had to leave pretty quickly after that..." ("angry", "base", "base", "mid") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "How many people would you say saw your tits today, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Hard to say, [genie_name]..." ("open", "base", "base", "mid") + her "Two dozen boys or so I suppose..." + her "A few girls as well..." ("annoyed", "base", "worried", "R") + her "I think the school librarian may have seen me too..." + gen "*Hmm*... Well, I'd say that's a job well done." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_flash + +label hg_pr_flash_T5_E2: + + call hg_pr_flash_intro + + her "It went alright, I suppose." ("base", "base", "base", "mid") + gen "Well, tell me all about it, then." ("base", xpos="far_left", ypos="head") + her "*Ehm*... Okay..." ("open", "base", "base", "mid") + her "I was flashing my tits to this boy in the Gryffindor common room..." + her "When my friend, Ginny walked in on us..." ("open", "base", "base", "mid") + gen "Another boy?" ("base", xpos="far_left", ypos="head") + her "A boy? No, Ginny is a girl's name, [genie_name]." ("soft", "base", "base", "R") + gen "....." ("base", xpos="far_left", ypos="head") + her "Ginny Weasley, [genie_name]." ("open", "base", "base", "mid") + gen "Alright, fine, continue..." ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("soft", "base", "base", "R") + her "......." + call play_music("hermione") # Music + her "*Giggle*" ("grin", "happyCl", "worried", "mid",emote="sweat") + gen "*Hmm*...?" ("base", xpos="far_left", ypos="head") + her "Then Ginny grabbed my breasts..." ("smile", "base", "base", "R") + her "And started to squeeze them..." + her "then she started to kiss my breasts passionately..." + gen "............" ("base", xpos="far_left", ypos="head") + her "to kiss and suck on my nipples..." ("smile", "base", "angry", "mid") + her "And I couldn't help myself - I started to moan..." ("base", "narrow", "base", "mid_soft") + gen ".............." ("base", xpos="far_left", ypos="head") + her "And then the boy took out his throbbing cock..." ("base", "squint", "base", "mid") + her "And sprayed his hot spunk all over me and Ginny!" + her "And then me and Ginny, we licked his hot sperm off of our bodies..." ("smile", "base", "angry", "mid") + gen ".............." ("base", xpos="far_left", ypos="head") + gen "Are you making this up, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "... maybe." ("grin", "happyCl", "worried", "mid",emote="sweat") + her "I just thought that you would like to hear something like that, [genie_name]..." ("base", "narrow", "base", "mid_soft") + gen "What I would like to hear, [hermione_name], is the truth." ("base", xpos="far_left", ypos="head") + her "Even if it's incredibly dull, [genie_name]?" ("open", "closed", "base", "mid") + gen "Dull or not..." ("base", xpos="far_left", ypos="head") + gen "I only want to know what actually happened..." ("base", xpos="far_left", ypos="head") + gen "Keep your fantasies to yourself, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "As you wish, [genie_name]." ("annoyed", "narrow", "annoyed", "up") + her "My friend Ginny walked in on me while I was flashing my tits to that guy." + her "But she promised to not tell anyone." + her "And that's all that happened, [genie_name]..." ("soft", "base", "base", "mid") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "I still prefer this to some made up stories..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_flash + +label hg_pr_flash_T5_E3: + + call hg_pr_flash_intro + + call play_music("hermione") # Music + her "Yes I did, [genie_name]..." ("base", "base", "base", "mid") + gen "Alright, tell me how did it go." ("base", xpos="far_left", ypos="head") + her "Well, let's see..." ("annoyed", "base", "worried", "R") + her "First I flashed them to that one boy from Ravenclaw..." + her "Then to that upperclassman from Hufflepuff..." ("open", "base", "base", "mid") + her "Then there was this other boy from Ravenclaw." ("base", "base", "base", "mid") + gen "???" ("base", xpos="far_left", ypos="head") + her "After that I flashed my tits to some Gryffindor underclassman by mistake..." ("angry", "happyCl", "worried", "mid",emote="sweat") + her "No, wait... the boy from Gryffindor was after that other boy..." ("annoyed", "base", "worried", "R") + gen "How many boys did you flash your tits to today, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Half a dozen or so?" ("angry", "base", "base", "mid") + her "I had an opening in my schedule..." ("angry", "wink", "base", "mid") + her "So I decided to go for some extra credit with your assignment, [genie_name]." + gen "This is not an assignment, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "And there are no extra credits..." ("base", xpos="far_left", ypos="head") + her "Oh...?" ("open", "base", "base", "mid") + gen "You are still getting your usual payment, [hermione_name], and that's it." ("base", xpos="far_left", ypos="head") + her "Oh... I see..." ("annoyed", "base", "worried", "R") + gen "But, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("open", "base", "base", "mid") + gen "That was very well done." ("grin", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("base", "narrow", "base", "mid_soft") + + jump end_hg_pr_flash diff --git a/game/scripts/characters/hermione/events/requests/flirt_with_students.rpy b/game/scripts/characters/hermione/events/requests/flirt_with_students.rpy new file mode 100644 index 00000000..b0856a67 --- /dev/null +++ b/game/scripts/characters/hermione/events/requests/flirt_with_students.rpy @@ -0,0 +1,493 @@ + +### Flirt With Classmate ### + +label hg_pr_flirt: + + # Setup + $ current_payout = 5 + + if hg_pr_flirt.counter == 0: + gen "{size=-4}(Ask her to go flirt with some boys from Slytherin?){/size}" ("base", xpos="far_left", ypos="head") + menu: + "\"(Yes, let's do it!)\"": + pass + + "\"(Not right now.)\"": + jump hermione_favor_menu + + her "" (xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes?" ("soft", "base", "base", "R") + + #Intro. + if hg_pr_flirt.counter == 0: + gen "What is your opinion on the boys of the Slytherin house?" ("base", xpos="far_left", ypos="head") + her "I detest them, [genie_name]." ("angry", "base", "angry", "mid") + gen "Well, too bad. Because I want you to get really friendly with a few of them today." ("base", xpos="far_left", ypos="head") + her "If I must..." ("soft", "base", "base", "R") + her "Yes, I think I can manage to be civil with them for one day." + gen "Yes, and when I say \"get friendly with them\"..." ("base", xpos="far_left", ypos="head") + gen "I actually mean that I need you to flirt with them..." ("base", xpos="far_left", ypos="head") + her "Flirt?!" ("shock", "wide", "base", "stare") + her "[genie_name]!" ("angry", "base", "angry", "mid") + her "I'm not even going to ask why you'd be interested in this, [genie_name]..." ("annoyed", "squint", "base", "mid") + her "But why Slytherin?" ("open", "base", "worried", "mid") + her "If you need me to be flirtatious today, I think I can manage that..." + her "But, please, can't it be another house?" + her "Gryffindor maybe?" ("upset", "wink", "base", "mid") + gen "I am only trying to protect your reputation, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("soft", "base", "base", "mid") + gen "Do you value the opinion the Slytherin students have of you?" ("base", xpos="far_left", ypos="head") + her "I couldn't care less about the opinions of those Neanderthals." ("scream", "closed", "angry", "mid") + gen "What about the students of the Gryffindor house?" ("base", xpos="far_left", ypos="head") + her "Their opinion means the world to me--" ("annoyed", "base", "worried", "R") + her "Oh, I see..." ("base", "base", "base", "mid") + gen "Exactly... Just looking out for you [hermione_name]." ("base", xpos="far_left", ypos="head") + her "*Ehm*... Thank you [genie_name]..." + else: + if her_tier >= 3: + gen "I need you to flirt with some boys from Slytherin today." ("base", xpos="far_left", ypos="head") + her "I'll see what I can do, [genie_name]." + gen "Great. I'll be expecting your report today after classes." ("base", xpos="far_left", ypos="head") + elif her_tier >= 2: + gen "I need you to go make some new friends at the Slytherin house." ("base", xpos="far_left", ypos="head") + her "You mean you need me to flirt with the Slytherin boys again [genie_name]?" + her "Fine." ("upset", "base", "angry", "R") + her "If I have to, [genie_name]..." ("normal", "squint", "angry", "mid") + else: + if hg_pr_flirt.counter == 1: + gen "I need you to go make some new friends at the Slytherin house." ("base", xpos="far_left", ypos="head") + her "You mean you need me to flirt with the Slytherin boys again [genie_name]?" + gen "That's exactly what I need you to do today, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "Just do it properly this time." ("base", xpos="far_left", ypos="head") + her "Must I really do this [genie_name]?" ("open", "base", "base", "mid") + gen "We have been through this, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "Going to the Slytherin boys is in your best interest." ("base", xpos="far_left", ypos="head") + her "Yes, I know, [genie_name]." ("open", "closed", "angry", "mid") + her "But why must I do this at all?" + gen "Nobody is forcing you, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "You don't need to remind me of that, [genie_name]..." ("angry", "base", "angry", "mid") + her "Alright if I must... [genie_name]..." ("normal", "squint", "angry", "mid") + else: + gen "I need you to go make some new friends at the Slytherin house." ("base", xpos="far_left", ypos="head") + her "You mean you need me to flirt with the Slytherin boys again, [genie_name]?" + her "Must I really do this [genie_name]?" ("upset", "base", "worried", "mid") + gen "This again?" ("base", xpos="far_left", ypos="head") + her "Fine........." ("upset", "base", "angry", "R") + her "If I must... [genie_name]..." ("normal", "squint", "angry", "mid") + + her "Well, I'd better go now. Classes are about to start..." + call her_walk(action="leave") + + $ hg_pr_flirt.inProgress = True + jump end_hermione_event + +# End Event +label end_hg_pr_flirt: + $ gryffindor += current_payout + + gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." + + label .no_points: + + call her_walk("door", "base") + pause.2 + + # Inner monologue + if hg_pr_flirt.counter == 1: + show screen blktone + with d3 + + her "(........)" ("disgust", "base", "worried", "down", ypos="head", flip=False, trans=d3) + her "(I'll need to read about this whole \"flirting\" thing...)" ("annoyed", "base", "angry", "L") + + hide screen blktone + with d3 + + call her_chibi("leave") + + label .quick_end: + + # Increase Points + if not hg_pr_flirt.is_tier_complete(): + $ her_reputation += 1 + + $ hg_pr_flirt.inProgress = False + jump end_hermione_event + +label hg_pr_flirt_intro: + call her_walk(action="enter", xpos="mid", ypos="base") + her "Good evening, [genie_name]." ("open", "closed", "base", "mid", xpos="mid", ypos="base", trans=fade) + her "" ("normal", "base", "base", "mid") + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Did you complete your task?" ("base", xpos="far_left", ypos="head") + her "I did as you asked, [genie_name]..." ("open", "base", "base", "R") + her "" ("normal", "base", "base", "R") + + if hg_pr_flirt.is_tier_complete(): + menu: + "\"Great. You earned your points.\"": + jump end_hg_pr_flirt + + "\"Give me the details.\"": + pass + + stop music fadeout 3.0 + + if hg_pr_flirt.counter == 1: + her "......" ("annoyed", "narrow", "angry", "R") + her "So *Ehm*..." ("soft", "base", "base", "R") + + gen "How many boys did you flirt with today, [hermione_name]?" ("base", xpos="far_left", ypos="head") + + return + +### Tier 1 - LVL 0-3 ### + +label hg_pr_flirt_T1_E1: + + call hg_pr_flirt_intro + + her "Well..." ("open", "base", "worried", "R") + her "There was this one freshman boy..." + her "........." + gen "I'm listening..." ("base", xpos="far_left", ypos="head") + her "So... I went to him and I said \"Hey, handsome!\"." + gen "And?" ("base", xpos="far_left", ypos="head") + call play_music("hermione") # Music + her "He stuck out his tongue and ran off, [genie_name]." ("normal", "squint", "angry", "mid") + gen "Did you try to lure him in with a lollipop?" ("base", xpos="far_left", ypos="head") + her "I did not, [genie_name]..." ("open", "base", "worried", "R") + her "The thought never crossed my mind, but--" + gen "That was a joke, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "............." ("annoyed", "squint", "angry", "mid") + gen "I told you to flirt with boys {size=+5}your{/size} age!" ("base", xpos="far_left", ypos="head") + her "I wanted to at first, but..." ("normal", "squint", "angry", "mid") + her "I guess I got scared..." ("annoyed", "narrow", "angry", "R") + her "I mean I despise those Slytherins way too much to flirt with them, [genie_name]!" + her "I would have to fight my gag-reflex the entire time!" ("angry", "base", "angry", "mid") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Fine. Just try harder next time.\"": + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + her "I will, I promise!" + + "\"Favour failed! No points for you!\"": + stop music fadeout 1.0 + + her "I understand..." ("normal", "squint", "angry", "mid") + gen "Get out of my sight..." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]... Sorry, [genie_name]..." ("annoyed", "squint", "angry", "mid") + + jump end_hg_pr_flirt.no_points + + jump end_hg_pr_flirt + +label hg_pr_flirt_T1_E2: + + call hg_pr_flirt_intro + + call play_music("hermione") # Music + her "Well, I tried to compliment an upperclassman..." ("open", "base", "worried", "R") + gen "Did he appreciate it?" ("base", xpos="far_left", ypos="head") + her "He called me a \"Gryffindor whore\", [genie_name]!" ("angry", "base", "angry", "mid", emote="angry") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "What did you do then?" ("base", xpos="far_left", ypos="head") + her "Well, that was not the proper way to address a fellow \"Hogwarts\" student..." ("open", "closed", "angry", "mid") + her "So I told him that I would report him." + gen "A truly captivating story..." ("base", xpos="far_left", ypos="head") + gen "Anything else?" ("base", xpos="far_left", ypos="head") + her "Yes, there was also this one student at the library..." ("annoyed", "squint", "angry", "mid") + her "He was obviously struggling with a problem..." + her "So I offered my help..." + gen "And?" ("base", xpos="far_left", ypos="head") + her "He called me a \"Patronising Gryffindor Whore\", [genie_name]..." ("angry", "base", "angry", "mid", emote="angry") + gen "Did you threaten to report him as well?" ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]." ("open", "closed", "angry", "mid") + gen "*sigh*" ("base", xpos="far_left", ypos="head") + gen "Anything else?" ("base", xpos="far_left", ypos="head") + her "Well, there was one more incident but the outcome was pretty much the same..." ("annoyed", "squint", "angry", "mid") + gen "\"Gryffindor whore\"?" ("base", xpos="far_left", ypos="head") + her "......... yes, [genie_name]." ("disgust", "narrow", "base", "mid_soft") + gen "You are doing it all wrong, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "I am sorry, [genie_name]. I thought this would be easy..." ("annoyed", "narrow", "angry", "R") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Well, at least you are trying.\"": + her "I truly am..." ("angry", "happyCl", "worried", "mid") + her "But Apparently flirting is not my forte..." ("angry", "base", "worried", "down", emote="sweat") + her "" ("base", "base", "worried", "mid",) + + "\"Favour failed! No points for you!\"": + stop music fadeout 1.0 + her "You are not going to pay me, [genie_name]?" ("open", "base", "worried", "mid") + her "But, you promised!" ("angry", "base", "base", "mid", tears="soft") + gen "And you promised to flirt with the boys, not get bullied." ("base", xpos="far_left", ypos="head") + her "................" ("mad", "happyCl", "worried", "mid", tears="soft_blink") + call her_walk(action="run", xpos="door", speed=2, reduce=True) + call her_chibi("leave") + + pause 1.0 + + gen "..." ("base", xpos="far_left", ypos="head") + gen "Now I feel bad for saying that..." ("base", xpos="far_left", ypos="head") + + $ her_mood += 10 + jump end_hg_pr_flirt.quick_end + + jump end_hg_pr_flirt + +label hg_pr_flirt_T1_E3: + + call hg_pr_flirt_intro + + her "Well, the Slytherin quidditch team was practising in the stadium today..." ("open", "base", "worried", "R") + her "I thought I could sneak into the bleachers and cheer them on..." + her "But..." ("annoyed", "narrow", "angry", "R") + gen "Yes?" ("base", xpos="far_left", ypos="head") + + call play_music("hermione") # Music + + her "A whole flock of those Slytherin harlots was already there, [genie_name]." ("angry", "base", "angry", "mid") + her "They were cheering and yelling..." + her "And one of them even exposed herself inappropriately to the players, [genie_name]..." ("angry", "base", "angry", "mid") + her "I cannot believe our school accepts such behaviour..." + gen "So... how did this captivating drama end?" ("base", xpos="far_left", ypos="head") + her "I just left [genie_name]..." ("annoyed", "narrow", "angry", "R") + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + "\"Well, here are your points.\"": + gen "Maybe you didn't do exactly as was asked of you, you at least tried." ("base", xpos="far_left", ypos="head") + her "" ("base", "closed", "base", "mid") + + jump end_hg_pr_flirt + + "\"Favour failed! No points for you!\"": + stop music fadeout 1.0 + her "I don't feel like I deserved any this time anyway..." ("annoyed", "happyCl", "worried", "R") + her "Can I leave now, [genie_name]?" ("annoyed", "base", "worried", "mid") + gen "Dismissed!" ("base", xpos="far_left", ypos="head") + call her_walk(action="leave") + + $ hg_pr_flirt.inProgress = False + + jump end_hermione_event + +### Tier 2 - LVL 3-6 ### + +label hg_pr_flirt_T2_E1: + + call hg_pr_flirt_intro + + her "Well, there was this one guy at the library..." ("open", "base", "worried", "R") + her "He was obviously struggling with some assignment, so I offered my help..." + gen "And?" ("base", xpos="far_left", ypos="head") + call play_music("hermione") # Music + her "Well, to my surprise he accepted it..." ("smile", "happyCl", "base", "mid") + her "He let me finish the assignment for him..." + her "While I was working he made a couple of inappropriate comments, but I just smiled in response..." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "So, basically, he was the one doing the flirting..." ("base", xpos="far_left", ypos="head") + her "well... I guess." ("grin", "happyCl", "worried", "mid", emote="sweat") + her "But, despite my better judgment, I did encourage his improper behaviour..." ("base", "base", "base", "mid") + gen "By being quiet?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." + her "I mean, this does amount to something, right?" + gen "*Meh*..." ("base", xpos="far_left", ypos="head") + gen "What else do you have for me?" ("base", xpos="far_left", ypos="head") + her "Right..." ("annoyed", "narrow", "angry", "R") + her "Later in a corridor these two other guys complimented my appearance in a very vulgar manner..." + her "But I just smiled at them..." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "You were on the receiving end again, then..." ("base", xpos="far_left", ypos="head") + gen "This is not what I ordered you to do, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "I know, [genie_name]!" ("angry", "happyCl", "worried", "mid", emote="sweat") + her "But I am so busy. Between the \"MRM\" meetings and the classes..." ("annoyed", "narrow", "angry", "R") + her "I barely have any time--" + # TODO: Check if this part fits the current story line, Johnny. + gen "Is this all you got for me this time then?" ("base", xpos="far_left", ypos="head") + her "No, [genie_name]." ("annoyed", "narrow", "angry", "R") + her "On my way here I ran into Draco Malfoy, [genie_name]." + gen "No way!!! (No idea who that is...)" ("base", xpos="far_left", ypos="head") + her "I forced myself to be friendly with him and..." + her "We ended up having a decent conversation for a change." ("base", "happyCl", "base", "mid") + gen "I see... That \"Dark-oh\" guy..." ("base", xpos="far_left", ypos="head") + gen "Was he looking at your legs at all?" ("base", xpos="far_left", ypos="head") + her "What?" ("open", "base", "base", "mid") + gen "Did he stare at your legs or not, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... He might have..." ("upset", "wink", "base", "mid") + gen "What about your tits?" ("base", xpos="far_left", ypos="head") + her "[genie_name]!!!" ("angry", "base", "angry", "mid") + gen "Fine. You get your points. Keep up the good work." ("base", xpos="far_left", ypos="head") + her "" ("annoyed", "base", "worried", "R") + + jump end_hg_pr_flirt + + +label hg_pr_flirt_T2_E2: + + call hg_pr_flirt_intro + + her "Well..." ("open", "base", "worried", "R") + her "This morning I did flirt with this one guy..." + her "Then after the second period there was this other guy..." ("soft", "base", "base", "R") + her "And then something bizarre happened..." ("angry", "base", "worried", "mid") + call play_music("playful_tension") # Music + her "This angry-looking guy from Slytherin came up to me and asked me out on a date..." + her "I told him \"no\" at first, but we ended up taking a walk together." ("soft", "base", "base", "R") + gen "Did you enjoy yourself, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I think I did, [genie_name]... To my own astonishment..." ("open", "base", "base", "mid") + her "There was something about his \"devil-may-care\" attitude..." ("base", "base", "base", "mid") + her "He was so confident and calm and..." ("base", "happyCl", "base", "mid") + her "I still loathe the Slytherin house of course!" ("angry", "happyCl", "worried", "mid", emote="sweat") + her "But..." ("annoyed", "narrow", "worried", "down") + her "Maybe some of the students got there by mistake?" + her "Could the \"sorting hat\" make... miscalculations?" ("open", "base", "worried", "R") + + menu: + "\"Just take your points and go!\"": + her "................" ("normal", "squint", "angry", "mid") + + "\"The almighty hat is never wrong!\"": + her "Yes, of course... Everybody knows that..." ("soft", "base", "base", "R") + gen "(What hat again? I have no fucking clue what's she's blabbing about.)" ("base", xpos="far_left", ypos="head") + gen "(Doesn't hurt playing along...)" ("base", xpos="far_left", ypos="head") + + "\"Could what make what?\"": + her "Oh, never mind me, [genie_name]." ("soft", "base", "base", "R") + her "Everyone knows that the \"Sorting Hat\" is never wrong." + + jump end_hg_pr_flirt + + +label hg_pr_flirt_T2_E3: + + call hg_pr_flirt_intro + + call play_music("hermione") # Music + her "Five guys, [genie_name]!" ("smile", "happyCl", "base", "mid") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "Yes!" ("base", "happyCl", "base", "mid") + her "This one guy this morning." ("base", "happyCl", "base", "mid") + her "Then another two right after the first period." + her "And then another one before the third period." + her "And after that, I had a surprisingly pleasant conversation with one more." ("grin", "base", "base", "R") + her "That last one was quite smart and well-mannered too." ("base", "happyCl", "base", "mid") + her "............................" + her "................" + her "But I still refuse to change my opinion about the Slytherin house, [genie_name]." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "I'm not asking you to, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "I am only doing this to help my own house!" + her "The proud house of \"Gryffndor\"!" ("scream", "happyCl", "worried", "mid") + gen "Alright, alright. Calm down, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "" ("base", "happyCl", "base", "mid") + + jump end_hg_pr_flirt + +### Tier 3 - LVL 6-X ### + +label hg_pr_flirt_T3_E1: + + call hg_pr_flirt_intro + + call play_music("hermione") # Music + her "Eleven boys, [genie_name]!" ("smile", "happyCl", "base", "mid") + gen "Eleven? Really? Your personal best, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Yes." ("base", "happyCl", "base", "mid") + her "Let's see..." ("grin", "base", "base", "R") + her "Those two handsome guys right before the first period started..." + her "Then I exchanged a few rather inappropriate messages with this other guy, during the first period." ("smile", "narrow", "base", "mid_soft") + her "After that there was this one other guy..." ("grin", "base", "base", "R") + her "Then those three guys..." ("annoyed", "narrow", "worried", "down") + her "Then one more right before the last period..." ("base", "happyCl", "base", "mid") + her "And finally this last guy that walked me right to your tower, [genie_name]..." ("smile", "happyCl", "base", "mid") + gen "So, eleven then?" ("base", xpos="far_left", ypos="head") + gen "Those Slytherin boys are really starting to like you, *huh*?" ("base", xpos="far_left", ypos="head") + her "I suppose so..." ("base", "happyCl", "base", "mid") + her "Well, not all of them were nice to me at first..." ("annoyed", "narrow", "worried", "down") + her "But I use this one trick to \"tame\" them." ("smile", "narrow", "base", "mid_soft") + gen "A trick you say?" ("base", xpos="far_left", ypos="head") + her "Yes... Whenever a boy from Slytherin is being mean to me or calls me a name..." ("open", "base", "base", "R") + her "Like so!" ("base", "happyCl", "base", "mid") + her "I just swallow my pride and smile in response." + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "So, if for example, somebody were to call you a \"whore\" you would just smile at them?" ("base", xpos="far_left", ypos="head") + her "Well, yes, [genie_name]..." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "Yeah, I'm sure that wins them over." ("base", xpos="far_left", ypos="head") + gen "Great job, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "" ("grin", "base", "base", "R") + + jump end_hg_pr_flirt + +label hg_pr_flirt_T3_E2: + + call hg_pr_flirt_intro + + call play_music("hermione") # Music + her "Two dates, seven quite pleasant conversations..." ("smile", "happyCl", "base", "mid") + + if hg_pr_kiss.counter >= 1: + her "And I even let this one guy kiss me on the lips..." ("soft", "base", "base", "R", cheeks="blush") + else: + her "And I even let this one guy kiss me on the cheek..." ("grin", "base", "base", "R") + + gen "Quite impressive, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "I think so too, [genie_name]. Thank you." ("base", "happyCl", "base", "mid") + her "Oh, and there was also this freshman boy..." ("smile", "happyCl", "base", "mid") + her "I tried to flirt with him too, but we ended up just chatting..." + her "He kept calling me \"Miss Hermione\"..." ("base", "happyCl", "base", "mid") + her "So adorable..." + gen "Well, I didn't send you to harass people, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "I didn't harass--" ("disgust", "narrow", "base", "mid_soft") + her "[genie_name]! Seven flirts and two dates amount to something, don't they?" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "Oh, absolutely." ("base", xpos="far_left", ypos="head") + her "Then I would like to receive my payment now..." ("scream", "closed", "angry", "mid") + her "" ("normal", "happyCl", "worried", "mid") + + jump end_hg_pr_flirt + +label hg_pr_flirt_T3_E3: + + call hg_pr_flirt_intro + + her "[genie_name], I am sorry, but..." ("normal", "happyCl", "worried", "mid") + call play_music("hermione") # Music + her "I hate those Slytherin tramps, [genie_name]!" ("angry", "base", "angry", "mid") + gen "Tell me what happened." ("base", xpos="far_left", ypos="head") + her "I don't want to talk about it..." ("annoyed", "narrow", "angry", "R") + gen "Tell me what happened, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "I don't want to talk about it, [genie_name]." ("angry", "base", "angry", "mid", emote="angry") + her "Please don't make me..." ("annoyed", "narrow", "angry", "R") + + menu: + "\"Fine. I'll let it go for today.\"": + her "Thank you, [genie_name]." ("normal", "happyCl", "worried", "mid") + gen "No luck with the flirting today then?" ("base", xpos="far_left", ypos="head") + her "Oh, quite the opposite, [genie_name]." ("angry", "happyCl", "worried", "mid", emote="sweat") + call play_music("playful_tension") # Music + her "One of the boys actually took me to the Slytherin common room today..." + her "There were at least a dozen of them there..." ("normal", "base", "base", "mid") + her "All of the boys knew who I was..." ("open", "closed", "angry", "mid") + her "I was the centre of attention at first..." + her "And it felt sort of wonderful..." ("base", "narrow", "base", "up") + call play_music("hermione") # Music + her "Then a bunch of those Slytherin harlots stumbled in and..." ("disgust", "narrow", "base", "mid_soft") + gen "And?" ("base", xpos="far_left", ypos="head") + her "Well, they started saying stuff and doing things..." ("annoyed", "narrow", "angry", "R") + gen "\"Doing Things\"? What kind of things?" ("grin", xpos="far_left", ypos="head") + her "Anyway, I had to leave..." + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "Well, I say you deserve your points anyway, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "" ("base", "happyCl", "base", "mid") + + "\"Tell me now, or lose the points!\"": + her "[genie_name], please, I don't want to discuss this with you, [genie_name]." ("disgust", "narrow", "base", "mid_soft") + gen "No one is forcing you, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "You are free to leave." ("base", xpos="far_left", ypos="head") + her "{size=-4}(Stubborn old man!){/size}" ("angry", "base", "angry", "mid") + + $ her_mood += 10 + jump end_hg_pr_flirt.no_points + jump end_hg_pr_flirt diff --git a/game/scripts/characters/hermione/events/requests/flirt_with_teachers.rpy b/game/scripts/characters/hermione/events/requests/flirt_with_teachers.rpy new file mode 100644 index 00000000..5b277729 --- /dev/null +++ b/game/scripts/characters/hermione/events/requests/flirt_with_teachers.rpy @@ -0,0 +1,568 @@ + + +### Flirt With Teacher ### + +label hg_pr_flirt_teacher: + + # Setup + $ current_payout = 15 + + if hg_pr_flirt_teacher.counter == 0: + gen "{size=-4}(Tell her to be flirtatious with her teachers today?){/size}" ("base", xpos="far_left", ypos="head") + menu: + "\"(Yes, let's do it!)\"": + pass + + "\"(Not right now.)\"": + jump hermione_favor_menu + + her "" (xpos="right", ypos="base", trans=fade) + gen "[hermione_name], I want you to be especially flirtatious with your teachers today." ("base", xpos="far_left", ypos="head") + + #Intro + if hg_pr_flirt_teacher.counter == 0: + if hg_pr_flirt.counter > 0: + her "I will do my best, [genie_name]!" ("base", "base", "base", "mid") + her "Now I understand why you asked me to flirt with these pesky Slytherin boys." ("open", "closed", "angry", "mid") + her "I am glad you finally decided to act, [genie_name]!" ("open", "base", "base", "mid") + else: + her "*huh*?!" ("open", "base", "angry", "mid") + her "Why would I want to flirt with the teach--" ("angry", "base", "angry", "mid") + her "O-oh... I see..." ("grin", "base", "base", "R") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + her "You are finally ready to investigate the teachers who made a habit out of buying favours from the students, aren't you?" ("normal", "squint", "angry", "mid") + her "I am honoured to pose as bait in this noble endeavour." ("open", "closed", "base", "mid") + gen "*Ehm*... Yeah, that's exactly what I'm doing." ("base", xpos="far_left", ypos="head") + her "Splendid! You can count on me, [genie_name]!" ("smile", "squint", "angry", "mid") + else: + if her_tier >= 3: + her "As you wish, [genie_name]." ("base", "squint", "base", "mid") + elif her_tier >= 2: + her "I'll make sure to note every single detail, [genie_name]." ("base", "squint", "angry", "mid") + gen "Looking forward to it..." ("base", xpos="far_left", ypos="head") + else: + her "I shall provide you with a detailed report later tonight, [genie_name]." ("normal", "squint", "angry", "mid") + gen "I will be waiting..." ("base", xpos="far_left", ypos="head") + + her "Well, I'd better go now. Classes are about to start..." + + call her_walk(action="leave") + + $ hg_pr_flirt_teacher.inProgress = True + jump end_hermione_event + + +# End Event +label end_hg_pr_flirt_teacher: + $ gryffindor += current_payout + gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." + + label .no_points: + + call her_walk(action="leave") + + # Unequip lockhart tattoo after the event + if hermione.is_equipped("tattoo3") and hermione.get_equipped("tattoo3").id == "lockhart_tattoo": + $ hermione.unequip("tattoo3") + + label .quick_end: + + # Increase Points + if not hg_pr_flirt_teacher.is_tier_complete(): + $ her_reputation += 1 + + $ hg_pr_flirt_teacher.inProgress = False + jump end_hermione_event + +label hg_pr_flirt_teacher_intro: + call her_walk(action="enter", xpos="mid", ypos="base") + + her "Good evening, [genie_name]." ("open", "closed", "base", "mid", xpos="mid", ypos="base", trans=fade) + her "" ("normal", "base", "base", "mid") + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Did you complete your task?" ("base", xpos="far_left", ypos="head") + her "I did as you asked [genie_name]..." + + if hg_pr_flirt_teacher.is_tier_complete(): # If you have seen all events in this tier once, you get the choice to skip it. + menu: + "\"Great. Here are your points.\"": + jump end_hg_pr_flirt_teacher + + "\"Give me the details.\"": + pass + + gen "Tell me, [hermione_name], how many teachers did you flirt with?" ("base", xpos="far_left", ypos="head") + + if hg_pr_flirt_teacher.counter == 1: + her "*Ehm*... Okay..." ("soft", "base", "base", "R") + + return + +### Tier 1 ### + +label hg_pr_flirt_teacher_T1_E1: # Flitwick + + call hg_pr_flirt_teacher_intro + + #if her_whoring >= 3 and her_whoring < 6: + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "Well, I tried flirting with Professor Flitwick..." ("open", "base", "worried", "R") + her "But it didn't really work..." ("annoyed", "squint", "angry", "mid") + her ".............................." ("annoyed", "narrow", "angry", "R") + gen "How exciting..." ("base", xpos="far_left", ypos="head") + gen "Is this all you have for me today, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Y-yes..." ("open", "base", "worried", "mid") + her "But [genie_name], I know for a fact that professor Flitwick is \"dirty\"!" + her "Everyone knows that because of his height..." + her "He sometimes... *Ehm*..." ("soft", "base", "base", "R") + her "He likes to look up under girl's skirts, [genie_name]!" ("annoyed", "base", "worried", "R") + gen "Don't we all?" ("base", xpos="far_left", ypos="head") + her "What?" ("open", "base", "base", "mid") + gen "I mean, don't we all hate it and must be outraged by a man like Professor Flick-stick?" ("base", xpos="far_left", ypos="head") + her "Er... It's \"Professor Flitwick\", [genie_name]." ("normal", "squint", "angry", "mid") + gen "Right. Putting him on my \"Naughty list\" as we speak." ("base", xpos="far_left", ypos="head") + her "......................" ("annoyed", "squint", "base", "mid") + gen "Well, I hate to admit it, but you did a lousy job of today's favour, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "................................" ("annoyed", "narrow", "angry", "R") + + menu: + "\"Here are your points though.\"": + her "Really?" ("angry", "base", "worried", "mid") + her "Thank you so much [genie_name]!" ("smile", "happyCl", "base", "mid") + + "\"No points for you!\"": + + her "But [genie_name], I did my best!" ("angry", "base", "worried", "mid") + her "You are going back on your promise [genie_name]!" ("mad", "base", "worried", "mid", tears="soft") + gen "......................." ("base", xpos="far_left", ypos="head") + stop music fadeout 1.0 + her "How unbecoming of a school headmaster!" ("scream", "happyCl", "worried", "mid") + gen "You are dismissed, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "*Tsk*!" ("angry", "base", "angry", "mid", emote="angry") + + $ her_mood += 18 + jump end_hg_pr_flirt_teacher.no_points + + jump end_hg_pr_flirt_teacher + + +label hg_pr_flirt_teacher_T1_E2: # Snape + + call hg_pr_flirt_teacher_intro + + her ".................." ("soft", "base", "base", "R") + her "............................" + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]... I'm sorry... I just..." ("open", "base", "worried", "mid") + her "............" ("soft", "base", "base", "R") + gen "Did you do what I asked you to do?" ("base", xpos="far_left", ypos="head") + her "I tried, [genie_name]. I really did..." ("open", "base", "base", "mid") + gen "Who did you try to flirt with?" ("base", xpos="far_left", ypos="head") + her "........." ("soft", "base", "base", "R") + her "Professor Snape, [genie_name]." ("annoyed", "narrow", "angry", "R") + call play_music("hermione") # HERMIONE'S THEME. + gen "Severus? Interesting..." ("base", xpos="far_left", ypos="head") + gen "How did it go?" ("base", xpos="far_left", ypos="head") + her "It was awful [genie_name]..." ("normal", "squint", "angry", "mid") + her "I am sorry, but I really hate professor Snape, [genie_name]!" + gen "(I'm pretty sure the feeling is mutual...)" ("base", xpos="far_left", ypos="head") + gen "Tell me what happened." ("base", xpos="far_left", ypos="head") + her "Nothing happened, [genie_name]. He just laughed at me..." ("annoyed", "squint", "angry", "mid") + her "I may not have much feminine charm, but I tried to be nice..." ("annoyed", "base", "worried", "R") + her "And he just started laughing in my face!" ("scream", "closed", "angry", "mid") + her "... it is really scary to see professor Snape laugh..." ("angry", "happyCl", "worried", "mid", emote="sweat") + her "........" + her "I am awful at flirting, I am sorry [genie_name]..." + her "But I know that professor Snape is \"dirty\"!" ("angry", "base", "angry", "mid") + her "If you were to send someone else, the outcome would be different, I just know it!" + gen "Someone else?" ("base", xpos="far_left", ypos="head") + her "Yes! Someone with more experience in this..." ("upset", "wink", "base", "mid") + her "Someone..." + her "Someone... *Ehm*..." + gen "Sluttier?" ("base", xpos="far_left", ypos="head") + her "Yes, I suppose..." ("disgust", "narrow", "base", "mid_soft") + gen "Don't you give up, [hermione_name]. We will make a slut *err*--" ("base", xpos="far_left", ypos="head") + gen "I mean a woman out of you yet!" ("base", xpos="far_left", ypos="head") + her "..................." ("annoyed", "narrow", "annoyed", "mid") + + menu: + "\"Here are your points, [hermione_name].\"": + her "" ("base", "base", "worried", "mid") + + "\"... I'm afraid you get no points this time.\"": + her "But I did my best..." ("annoyed", "narrow", "angry", "R") + her "And I feel so humiliated now..." ("angry", "happyCl", "worried", "mid", emote="sweat") + her "But I understand and won't argue with your decision..." ("normal", "happyCl", "worried", "mid") + + $ her_mood += 3 + jump end_hg_pr_flirt_teacher.no_points + + jump end_hg_pr_flirt_teacher + +label hg_pr_flirt_teacher_T1_E3: # Filch + + call hg_pr_flirt_teacher_intro + + stop music fadeout 1.0 + her "I tried to flirt with mister Filch, [genie_name]..." ("open", "base", "worried", "R") + gen "I see. {size=-5}(No idea who that is.){/size}" ("base", xpos="far_left", ypos="head") + call play_music("hermione") # HERMIONE'S THEME. + her "Yes, I know that technically mister Filch is not a teacher..." ("open", "base", "worried", "mid") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + her "But he is part of the school's staff..." ("base", "base", "base", "mid") + her "And we did hit it off quite well too!" + her "He was surprisingly sweet." + her "But I don't think he is \"dirty\", [genie_name]." + gen "Gotcha... mister Filth is off the list then." ("base", xpos="far_left", ypos="head") + her "It's \"mister Filch\", [genie_name]..." ("normal", "squint", "angry", "mid") + gen "What did I say?" ("base", xpos="far_left", ypos="head") + her "......." ("normal", "squint", "angry", "R") + her "Can I get my points now?" ("open", "base", "worried", "mid") + + jump end_hg_pr_flirt_teacher + +### Tier 2 ### + +label hg_pr_flirt_teacher_T2_E1: # Slughorn + + call hg_pr_flirt_teacher_intro + + #elif her_whoring >= 6 and her_whoring < 9: + + stop music fadeout 1.0 + her "Well, professor Slughorn invited me over to one of his..." ("open", "base", "worried", "R") + her "Rather disturbing tea parties..." + call play_music("hermione") # HERMIONE'S THEME. + her "There were plenty of girls..." ("open", "closed", "base", "mid") + her "But none of them were in my year..." + her "Almost every guest was a freshman..." ("annoyed", "squint", "base", "mid") + her "We had tea and some cake..." ("open", "closed", "base", "mid") + her "Everything was pretty harmless..." + gen "Did you flirt with the man or not?" ("base", xpos="far_left", ypos="head") + her "I did..." + her "Or at least I tried to..." ("annoyed", "squint", "base", "mid") + her "Professor Slughorn seemed to be more interested in the other girls..." + gen "You almost sound jealous, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "What?!" ("angry", "wide", "base", "stare") + her "That is preposterous!" ("annoyed", "narrow", "angry", "R") + gen "Here are your points..." ("base", xpos="far_left", ypos="head") + her "...................." + + jump end_hg_pr_flirt_teacher + +label hg_pr_flirt_teacher_T2_E2: + + $ hermione.equip(her_tattoo3_lockhart) # Tattoo + + call hg_pr_flirt_teacher_intro + + call play_music("hermione") # HERMIONE'S THEME + + if hermione.is_worn("robe"): + $ hermione.strip("robe") + pause .8 + her "Ah..." ("smile", "happyCl", "base", "mid") + + if not hermione.is_worn("bottom"): + her "I had an amazing day, [genie_name]!" ("smile", "happyCl", "base", "mid", emote="happy") + gen "Glad to--" ("base", xpos="far_left", ypos="head") + gen "[hermione_name]... What have you done to your leg?" ("base", xpos="far_left", ypos="head") + her "What do you...{w=0.4} Oh, that..." ("mad", "base", "base", "down", cheeks="blush") + gen "Yes that..." ("base", xpos="far_left", ypos="head") + her "It's... it's nothing." ("open", "base", "base", "mid", cheeks="blush") + + if not hermione.is_worn("stockings"): + gen "The hell it is...{w=0.4} is that writing on your leg?" ("base", xpos="far_left", ypos="head") + her "I... yes..." ("normal", "happyCl", "worried", "mid", cheeks="blush") + gen "Gil... Gilde--" ("base", xpos="far_left", ypos="head") + her "*sigh*... Gilderoy Lockhart... [genie_name]." ("open", "narrow", "base", "down", cheeks="blush") + gen "Now that's dirty!" ("base", xpos="far_left", ypos="head") + her "What!?" ("clench", "base", "worried", "mid") + gen "Tagging the students... why didn't I think of that!" ("base", xpos="far_left", ypos="head") + her "Sir, what are you on about?" ("annoyed", "squint", "base", "mid") + gen "Why else would he put his name there?" ("base", xpos="far_left", ypos="head") + her "Sir, he's a famous author!" ("normal", "squint", "angry", "mid", cheeks="blush") + gen "Doesn't give him the right to--" ("base", xpos="far_left", ypos="head") + gen "Oh... It's an autograph!" ("base", xpos="far_left", ypos="head") + her "I... what else would it be?" ("clench", "squint", "worried", "mid", cheeks="blush") + gen "Nothing..." ("base", xpos="far_left", ypos="head") + gen "Here are your points..." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("annoyed", "base", "worried", "down", cheeks="blush") + else: + gen "I can clearly see something..." ("base", xpos="far_left", ypos="head") + gen "Take that off and let me have a proper look." ("base", xpos="far_left", ypos="head") + her "I..." + her "Well, alright, but don't get any ideas..." ("angry", "base", "angry", "mid") + pause.5 + her "Here..." ("disgust", "narrow", "base", "down",cheeks="blush") + + $ hermione.strip("bottom", "stockings") + pause.5 + + gen "Gil... Gilde--" ("base", xpos="far_left", ypos="head") + her "*sigh*... Gilderoy Lockhart... [genie_name]." ("open", "narrow", "base", "down", cheeks="blush") + her "He very kindly gave me his autograph after today's lesson..." ("base", "narrow", "base", "down", cheeks="blush") + gen "And why would you want such a thing?" ("base", xpos="far_left", ypos="head") + her "He's a very popular and esteemed author, surely you know this..." ("annoyed", "base", "base", "mid", cheeks="blush") + gen "Of course!" ("grin", xpos="far_left", ypos="head") + gen "Who would say no to having their leg signed by \"The\" {i}Spocktart{/i}?" ("grin", xpos="far_left", ypos="head") + gen "Not me, that's for sure!" ("grin", xpos="far_left", ypos="head") + her "I didn't ask him to sign my leg specifically..." ("angry", "base", "worried", "mid", cheeks="blush") + gen "I see...{w=0.4} Well, can't say I'm surprised..." ("base", xpos="far_left", ypos="head") + her "Sir?" ("annoyed", "base", "worried", "mid", cheeks="blush") + gen "An esteemed author making dirty requests from a fan is more common than you thi--" ("base", xpos="far_left", ypos="head") + + jump hg_pr_flirt_teacher_T2_E2.angry + else: + her "I had an amazing day, [genie_name]!" ("smile", "happyCl", "base", "mid", emote="happy") + gen "Do tell, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "I had a class with professor Lockhart today..." ("grin", "base", "base", "R") + her "[genie_name] He is so charming and smart and..." ("base", "base", "base", "mid") + her "And perfect..." ("base", "narrow", "base", "up") + gen "Please spare me your schoolgirl crush, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "He was even kind enough to give me his autograph..." ("smile", "happyCl", "base", "mid", emote="happy") + gen "How kind of him indeed..." ("base", xpos="far_left", ypos="head") + her "Yes, I can't wait to show it to the girls!" ("grin", "base", "base", "R") + her "It was a bit weird that he wouldn't sign my notebook though..." ("annoyed", "base", "base", "mid") + gen "He wouldn't--" ("base", xpos="far_left", ypos="head") + her "It's just going to fade away in the shower now..." ("upset", "base", "worried", "mid") + gen "It's going to--" ("base", xpos="far_left", ypos="head") + gen "Show me!" ("grin", xpos="far_left", ypos="head") + her "[genie_name]?" ("open", "base", "worried", "mid", cheeks="blush") + her "I... It's just an autograph..." ("base", "squint", "worried", "R", cheeks="blush") + gen "Just an autograph? It's {i}Lockfart{/i} we're talking about here, I have to see it!" ("base", xpos="far_left", ypos="head") + her "I..." ("disgust", "base", "worried", "down", cheeks="blush") + + menu: + "\"Show me or I won't pay you!\"": + $ her_mood += 9 + + her "What?!" ("scream", "base", "base", "mid") + her "..............." ("annoyed", "narrow", "worried", "down") + her ".................." ("annoyed", "base", "worried", "R") + + her "Well, alright, but don't get any ideas..." ("angry", "base", "angry", "mid") + pause.5 + her "Here..." ("disgust", "narrow", "base", "down",cheeks="blush") + + $ hermione.strip("bottom", "stockings") + pause.5 + + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + her "" ("angry", "narrow", "annoyed", "mid", cheeks="blush", emote="angry") + call ctc + + gen "Well then, this {i}Goldenheart{/i} surely is \"dirty\"!" ("base", xpos="far_left", ypos="head") + + label .angry: + + her "What do you mean?!" ("clench", "happy", "base", "mid", cheeks="blush") + gen "Surely a piece of paper would've been--" ("base", xpos="far_left", ypos="head") + + her "Professor Lockhart is nothing but an embodiment of everything pure and courageous!" ("annoyed", "narrow", "annoyed", "mid") + her "You should not worry about professor Lockhart, [genie_name]." ("base", "base", "worried", "R") + her "He is not \"dirty\"." ("annoyed", "base", "worried", "L") + gen "Whatever you say [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "............?" ("annoyed", "narrow", "annoyed", "mid", emote="angry") + gen "Anyhow..." ("base", xpos="far_left", ypos="head") + call ctc + + "\"Fine... Here are your points.\"": + her "Thank you for understanding, [genie_name]." ("base", "happyCl", "base", "mid") + + $ hermione.wear("all") + call unlock_clothing(text=">New tattoo for Hermione has been unlocked!", item=her_tattoo3_lockhart) + jump end_hg_pr_flirt_teacher + + +label hg_pr_flirt_teacher_T2_E3: # Filch + + call hg_pr_flirt_teacher_intro + + call play_music("hermione") # HERMIONE'S THEME. + her "Well, I spent quite some time by flirting with mister Filch today." ("soft", "base", "base", "mid",xpos="right",ypos="base") + her "What a well-read and exceptionally well-mannered gentleman mister Filch is." ("open", "closed", "base", "mid") + gen "........" ("base", xpos="far_left", ypos="head") + her "But I don't think anyone knows him like that..." ("soft", "base", "base", "R") + her "I don't think anyone knows mister Filch like I do." + her "I feel like he really opened up to me, [genie_name]." ("base", "base", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + gen "This, mister Fli{size=+7}nt{/size}--" ("base", xpos="far_left", ypos="head") + her "It's mister Filch, [genie_name]." ("open", "closed", "angry", "mid") + gen "Yeah, whatever... Is he a teacher here then?" ("base", xpos="far_left", ypos="head") + her "Mister Filch? A teacher? No, [genie_name]..." + her "He is the caretaker... Shouldn't you know your school personnel, [genie_name]?" ("base", "base", "base", "mid") + gen "A caretaker...?" ("base", xpos="far_left", ypos="head") + gen "You mean he is a janitor?" ("base", xpos="far_left", ypos="head") + her "Well..." ("open", "base", "worried", "R") + gen "[hermione_name], I did not send you out there to charm school janitors!" ("base", xpos="far_left", ypos="head") + her "But mister Filch is part of the school staff, [genie_name]!" ("open", "base", "base", "mid") + + menu: + "\"Just take your points and go!\"": + her "........................." ("normal", "base", "base", "mid") + + jump end_hg_pr_flirt_teacher + + "\"Favour failed! No points for you!\"": + her "But [genie_name]?" ("normal", "squint", "angry", "mid") + gen "You are dismissed, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "........................................." ("angry", "base", "angry", "mid") + + $ her_mood +=15 + jump end_hg_pr_flirt_teacher.no_points + +### Tier 3 ### + +label hg_pr_flirt_teacher_T3_E1: # Filch + + call hg_pr_flirt_teacher_intro + + stop music fadeout 1.0 + her "............................." ("normal", "happyCl", "worried", "mid") + her "....................................." + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "[genie_name], I..." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "What is it? What happened?" ("base", xpos="far_left", ypos="head") + her "Well..." ("annoyed", "base", "worried", "R") + her "It's mister Filch, [genie_name]..." + gen "The janitor?" ("base", xpos="far_left", ypos="head") + her "I flirted with him a little..." ("open", "base", "base", "mid") + her "And it went great at first..." + her "......................." ("annoyed", "base", "worried", "R") + gen "................?" ("base", xpos="far_left", ypos="head") + her "And then..." ("open", "base", "base", "mid") + her "Not sure if I should..." ("annoyed", "base", "worried", "R") + gen "[hermione_name], if you are not going to speak up, you may as well leave." ("base", xpos="far_left", ypos="head") + call play_music("hermione") # HERMIONE'S THEME. + her "He showed me his \"thing\", [genie_name]!" ("scream", "happyCl", "worried", "mid") + gen "His what?" ("base", xpos="far_left", ypos="head") + her "His... manhood, [genie_name]." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "Way to go, Janitor-guy!" ("grin", xpos="far_left", ypos="head") + her "What?!" ("scream", "wide", "base", "mid") + gen "*Ahem* I mean, this is unspeakable!" ("base", xpos="far_left", ypos="head") + her "Yes... Vile crooked thing all covered in veins..." ("angry", "base", "base", "mid", tears="soft") + gen "Spare me the grisly details, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Why would he do such a thing?" ("mad", "happyCl", "worried", "mid", tears="soft_blink") + her "One second we were just talking and then..." + gen "Well, your noble sacrifice shall not go unnoticed, [hermione_name]!" ("base", xpos="far_left", ypos="head") + gen "{number=current_payout} points to Gryf--" ("base", xpos="far_left", ypos="head") + her "Professor, please wait." ("soft", "base", "base", "mid", tears="soft") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + her "Well, aren't you going to do something about this?" ("open", "base", "base", "mid") + gen "Well..." ("base", xpos="far_left", ypos="head") + her "What if I am not the first victim...?" ("angry", "base", "angry", "mid") + her "Some unfortunate freshman could be traumatised for life!" + gen "And who wouldn't be really?" ("base", xpos="far_left", ypos="head") + her "Does this mean you will take action, [genie_name]?" ("open", "base", "base", "mid") + gen "*Ehm*... Yeah, sure..." ("base", xpos="far_left", ypos="head") + gen "There! Putting it on my {i}to-do-list{/i}..." ("base", xpos="far_left", ypos="head") + gen "\"Take care of the creepy janitor-guy and his crooked cock.\"..." ("base", xpos="far_left", ypos="head") + gen "Yes, first thing tomorrow." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]." ("open", "closed", "base", "mid") + her "Can I have my points now?" ("smile", "happyCl", "base", "mid") + + jump end_hg_pr_flirt_teacher + + +label hg_pr_flirt_teacher_T3_E2: # Snape +CG + + call hg_pr_flirt_teacher_intro + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "Professor Snape!" ("angry", "base", "angry", "mid", emote="angry") + gen "*Ehm*... Yeah, I'm pretty sure it's Dumbledore or something..." ("base", xpos="far_left", ypos="head") + her "[genie_name], please, you need to listen to me!" ("open", "base", "base", "mid") + gen "Yes, yes, [hermione_name], I'm listening." ("base", xpos="far_left", ypos="head") + her "I just confirmed that professor Snape is corrupted and {i}dirty{/i}, [genie_name]!" ("open", "closed", "angry", "mid") + gen "Tell me what happened." ("base", xpos="far_left", ypos="head") + her "Well, during classes today..." ("open", "base", "base", "mid") + her "I have been doing my best to attract professor Snape's attention..." ("open", "base", "base", "R") + her "I have been giving him \"dreamy looks\"..." ("open", "narrow", "worried", "down") + her "And I've been eyeing his crotch..." ("soft", "base", "base", "R") + gen "You..." ("base", xpos="far_left", ypos="head") + gen "Eyed his crotch?" ("base", xpos="far_left", ypos="head") + her "Yes... It's when you stare at a man's crotch and imagine that you are looking at something you want badly..." ("open", "closed", "angry", "mid") + gen "Where do you get this stuff?" ("base", xpos="far_left", ypos="head") + her "Women's magazines..." ("open", "base", "worried", "R") + her "Well, anyway, it worked, [genie_name]." ("normal", "squint", "angry", "mid") + + hide hermione_main + show screen snape_groping + # TODO + with fade + call ctc + + her "As soon as the class was over, professor Snape grabbed my buttocks, [genie_name]!" ("angry", "base", "angry", "mid", ypos="head", flip=False) + gen "The fiend!" ("grin", xpos="far_left", ypos="head") + gen "Did you enjoy it, though?" ("base", xpos="far_left", ypos="head") + her "[genie_name], I am only doing this--" ("scream", "closed", "angry", "mid") + gen "Go Gryffindors! Honour and all that. Yes, I remember." ("base", xpos="far_left", ypos="head") + + call ctc + + her "" ("normal", "closed", "angry", "R", xpos="mid", ypos="base") + + hide screen snape_groping + with fade + + jump end_hg_pr_flirt_teacher + + +label hg_pr_flirt_teacher_T3_E3: # Lockhart + + call hg_pr_flirt_teacher_intro + + stop music fadeout 1.0 + her "Professor Lockhart!" ("annoyed", "squint", "angry", "mid") + gen "Got it! Adding him to the \"Naughty list\"!" ("base", xpos="far_left", ypos="head") + her "No, [genie_name], it's not that..." ("open", "base", "worried", "mid") + her "Or..." ("annoyed", "narrow", "angry", "R") + her "I'm not sure..." + her "I used to adore him..." ("open", "base", "worried", "mid") + her "But he..." ("soft", "base", "base", "R") + her "He just..." + her "How is this possible?" ("mad", "happyCl", "worried", "mid", tears="soft_blink") + her "I can't believe this..." + call play_music("playful_tension") # SEX THEME. + gen "{size=-4}(*Argh*! The suspense is killing me!){/size}" ("base", xpos="far_left", ypos="head") + gen "What was it, [hermione_name]? Speak up!" ("angry", xpos="far_left", ypos="head") + her "*huh*?" ("open", "base", "base", "mid") + gen "What did Professor Lockhart do to you?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... Nothing, [genie_name]..." ("soft", "base", "base", "R") + gen "Nothing?!" ("base", xpos="far_left", ypos="head") + her "Yes, I sort of cornered mister Lockhart today..." ("open", "base", "worried", "mid") + her "And I also may have sort of made a pass at him..." ("open", "base", "base", "mid") + gen "Seriously?" ("base", xpos="far_left", ypos="head") + her "Yes... Not sure what had gotten into me, [genie_name]..." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "Way to go, [hermione_name]!" ("grin", xpos="far_left", ypos="head") + her "Hear me out first [genie_name], please!" ("scream", "happyCl", "worried", "mid") + gen "My apologies. Please continue." ("base", xpos="far_left", ypos="head") + her "Well, I always knew that mister Lockhart was a true gentleman and..." ("open", "base", "base", "mid") + her "And... and I just wanted to clear his name from any suspicions once and for all..." + her "..............." ("annoyed", "base", "worried", "R") + her "Well mister Lockhart did not reject me..." + gen "You are killing me [hermione_name]!" ("base", xpos="far_left", ypos="head") + gen "He didn't reject you, he didn't do anything to you..." ("base", xpos="far_left", ypos="head") + gen "What the hell happened then?" ("base", xpos="far_left", ypos="head") + her "............." ("normal", "happyCl", "worried", "mid") + call play_music("hermione") # HERMIONE'S THEME. + her "I made him cry, [genie_name]..." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "..............{w=0.5}wait what?" ("base", xpos="far_left", ypos="head") + her "He gave me a bewildered look and then started to sob..." ("angry", "base", "worried", "mid") + her "He looked like he was genuinely afraid of me, [genie_name]." + her "I think..." ("annoyed", "base", "worried", "R") + her "I think mister Lockhart might be afraid of women..." + gen "Afraid of women?" ("base", xpos="far_left", ypos="head") + gen "What is that supposed to mean?" ("base", xpos="far_left", ypos="head") + her "That he is into boys, [genie_name]?" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "Oh... To each their own I guess." ("base", xpos="far_left", ypos="head") + her "............" ("upset", "wink", "base", "mid") + gen "..........." ("base", xpos="far_left", ypos="head") + gen "Well, I bet it was a traumatising experience for you, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "It was, [genie_name]..." ("open", "base", "base", "mid") + gen "Well, I hope these points will make you feel better." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_flirt_teacher diff --git a/game/scripts/characters/hermione/events/requests/give_a_blowjob.rpy b/game/scripts/characters/hermione/events/requests/give_a_blowjob.rpy new file mode 100644 index 00000000..d9e65084 --- /dev/null +++ b/game/scripts/characters/hermione/events/requests/give_a_blowjob.rpy @@ -0,0 +1,349 @@ + +### Give Classmate A Blowjob ### + +label hg_pr_blowjob: + + # Setup + $ current_payout = 65 + + if hg_pr_blowjob.counter == 0: + gen "{size=-4}(Tell her to go give a blowjob to one of her classmates?){/size}" ("base", xpos="far_left", ypos="head") + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + her "" (xpos="mid", ypos="base", trans=fade) + + #Intro. + if hg_pr_blowjob.counter == 0: + gen "[hermione_name], I will be buying another favour from you today." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]. I really appreciate it." ("open", "closed", "base", "mid") + gen "Sure, Happy to help." ("base", xpos="far_left", ypos="head") + gen "I need you to go give a blowjob to one of your classmates." ("base", xpos="far_left", ypos="head") + + stop music fadeout 1.0 + her "!!!" ("shock", "wide", "base", "stare") + her "... with my mouth?" + + if not hg_blowjob.trigger: # She will refuse unless she gave you a blowjob + her "But we--.. I.." ("shock", "wide", "base", "stare") + her "I've never done it before!" ("angry", "wide", "base", "mid") + gen "I guess it's time you've learnt what {i}giving head{/i} means." ("base", xpos="far_left", ypos="head") + her "Absolutely not!" ("annoyed", "narrow", "angry", "R") + her "I'll show you that my integrity and honour as a Gryffindor cannot be bought!" + her "I'm leaving this instant." ("scream", "closed", "angry", "mid") + + call her_walk(action="leave") + + $ her_mood += 9 + + gen "(*Hmm*...)" ("base", xpos="far_left", ypos="head") + gen "(Perhaps I should show her the ropes first before sending her off to blow her classmates.)" ("base", xpos="far_left", ypos="head") + + jump end_hermione_event + + if her_reputation < 15: + jump too_much_public + + call play_music("hermione") # Music + gen "Yes, that's how it's usually done..." ("base", xpos="far_left", ypos="head") + her "[genie_name], I..." ("upset", "closed", "base", "mid") + her "I refuse to sell you a depraved favour like that, [genie_name]." ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "Can't I just kiss another girl instead?" ("open", "happyCl", "worried", "mid") + her "I do not mind that..." + gen "[hermione_name], please stop wasting my time..." ("base", xpos="far_left", ypos="head") + gen "If you are not in the mood to sell favours today..." ("base", xpos="far_left", ypos="head") + gen "Then there is the door." ("base", xpos="far_left", ypos="head") + her "But I need the points, [genie_name]. You know that." ("upset", "closed", "base", "mid") + gen "It's as the saying goes, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "\"If you won't suck a dick for it - you don't need it\"." ("base", xpos="far_left", ypos="head") + her "*Tch*..." ("angry", "base", "angry", "mid", cheeks="blush") + her "............................" + gen ".........................................." ("base", xpos="far_left", ypos="head") + her "... Alright." ("annoyed", "narrow", "angry", "R") + her "I'll do it..." + gen "Go do it, then!" ("base", xpos="far_left", ypos="head") + gen "Report back to me after your classes." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "base", "angry", "mid", cheeks="blush") + her "....." + her "......." + gen "You may leave, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "..." + else: + if her_tier >= 6: + call play_music("hermione") # Music + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Do you believe in horoscopes?" ("base", xpos="far_left", ypos="head") + her "Not even a little bit, [genie_name]..." ("annoyed", "narrow", "angry", "R") + gen "Well, maybe you should..." ("base", xpos="far_left", ypos="head") + her "...?" ("open", "base", "base", "mid") + gen "Because I got yours right here and it says..." ("base", xpos="far_left", ypos="head") + gen "\"Dedicate today to something you do well\"..." ("base", xpos="far_left", ypos="head") + her "Something I do well...?" ("soft", "base", "base", "R") + gen "Go suck on some cocks, [hermione_name]." ("grin", xpos="far_left", ypos="head") + her "....................." ("annoyed", "narrow", "annoyed", "mid") # :( + gen "Report back to me after your classes as usual..." ("base", xpos="far_left", ypos="head") + her "Of course..." ("annoyed", "narrow", "angry", "R") + else: + gen "Go give some lucky boy another blowjob, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "...... Again?" ("disgust", "narrow", "base", "mid_soft") + gen "Yes, again." ("base", xpos="far_left", ypos="head") + her ".........." ("annoyed", "narrow", "annoyed", "mid") + + call her_walk(action="leave") + + $ hg_pr_blowjob.inProgress = True + jump end_hermione_event + +label end_hg_pr_blowjob: + $ gryffindor += current_payout + + gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." + + label .no_points: + + call her_walk("door", "base") + pause.2 + + # Inner monologue + if hg_pr_blowjob.counter == 1: + show screen blktone + with d3 + + her "(I did it...)" ("base", "narrow", "base", "dead", ypos="head", flip=False, trans=d3) + her "(I sucked off one of my classmates...)" ("angry", "narrow", "base", "dead") + + hide screen blktone + with d3 + + call her_chibi("leave") + + label .quick_end: + + $ hermione.set_cum(None) + + # Increase Points + if not hg_pr_blowjob.is_tier_complete(): + $ her_reputation += 1 + + $ hg_pr_blowjob.inProgress = False + jump end_hermione_event + +label hg_pr_blowjob_intro: + call her_walk(action="enter", xpos="mid", ypos="base") + her "Good evening, [genie_name]." ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Did you complete your assignment?" ("base", xpos="far_left", ypos="head") + + if hg_pr_blowjob.is_tier_complete(): + her "Yes, [genie_name]." + + menu: + "\"Great. Here are your points.\"": + jump end_hg_pr_blowjob + + "\"Give me the details.\"": + pass + + stop music fadeout 3.0 + + if hg_pr_blowjob.counter == 1: + her "......" ("annoyed", "narrow", "angry", "R") + gen ".............." ("base", xpos="far_left", ypos="head") + + gen "[hermione_name], how did it go?" ("base", xpos="far_left", ypos="head") + + return + +### Tier 5 ### + +label hg_pr_blowjob_T5_E1: + + call hg_pr_blowjob_intro + + call play_music("hermione") # Music + gen "You know the drill, [hermione_name]. Start talking." ("base", xpos="far_left", ypos="head") + her "I gave a blowjob, [genie_name]..." ("disgust", "narrow", "base", "mid_soft") + gen "Good. Tell me more." ("base", xpos="far_left", ypos="head") + her "What is there to tell, [genie_name]?" ("annoyed", "narrow", "angry", "R") + her "I sucked off one of my classmates today..." + her "And that's it..." + gen "*Hmm*... I see..." ("base", xpos="far_left", ypos="head") + gen "..............." ("base", xpos="far_left", ypos="head") + her "...................................." ("angry", "narrow", "base", "down") + gen "Did you swallow?" ("base", xpos="far_left", ypos="head") + her "..........................." ("annoyed", "narrow", "annoyed", "mid") + gen "[hermione_name], did you swallow the load properly?" ("base", xpos="far_left", ypos="head") + her "Yes I did, [genie_name]." ("angry", "base", "angry", "mid") + gen "Well, I suppose that will do for now..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_blowjob + +label hg_pr_blowjob_T5_E2: + + call hg_pr_blowjob_intro + + her "[genie_name], I..." ("angry", "narrow", "base", "down") + her "I tried, but..." + call play_music("despair") # Music + her "The boy turned me down, [genie_name]..." ("mad", "base", "worried", "mid", tears="soft") + her "I cannot believe that actually happened..." ("angry", "base", "base", "mid", tears="soft") + her "I am one of the top students in this school!" + her "One of the most popular ones too..." + her "And he turns me down?" ("angry", "base", "angry", "mid", tears="soft") + her "Why would he insult me like that?!" + gen "So you're insulted because that boy refused to put his cock in your mouth?" ("base", xpos="far_left", ypos="head") + her "Wouldn't you be, [genie_name]?" ("angry", "base", "angry", "mid", tears="crying") + gen "I.. I never considered that option myself, but I think I would get over it rather quickly..." ("base", xpos="far_left", ypos="head") + her "He rejected me [genie_name]..." ("angry", "base", "angry", "mid", cheeks="blush") + her "Who does he think he is?!" + her "With all due respect, [genie_name], you wouldn't understand..." ("open", "narrow", "annoyed", "mid", cheeks="blush") + gen "Well, in any case. I can't pay you for this." ("base", xpos="far_left", ypos="head") + her "Of course... I would not expect you to, [genie_name]." ("annoyed", "narrow", "annoyed", "mid", tears="soft") + her "I failed to complete my task and deserve no praise of any kind..." + her "And should you pay me out of pity..." + her "Then That would only worsen the insult..." ("annoyed", "narrow", "angry", "R") + gen "*Hmm*... In that case, maybe I should pay you anyway..." ("base", xpos="far_left", ypos="head") + her "No, [genie_name]. I would not accept it..." ("annoyed", "narrow", "annoyed", "mid") + gen "*Hmm*... Well, this will be all then." ("base", xpos="far_left", ypos="head") + her "Have a good night, [genie_name]." + + jump end_hg_pr_blowjob.no_points + + +label hg_pr_blowjob_T5_E3: + + call hg_pr_blowjob_intro + + her "I still find the idea of performing a favour like this unappealing, [genie_name]." ("annoyed", "narrow", "angry", "R") + her "But it went surprisingly well..." ("annoyed", "narrow", "annoyed", "mid") + + call play_music("playful_tension") + + her "I gave a proper blowjob to this handsome boy from Ravenclaw..." + her "And he was such a gentleman about it..." ("open", "narrow", "worried", "down") + her "He even warned me when he was about to cum." ("angry", "narrow", "base", "down") + gen "A true gentleman indeed." ("base", xpos="far_left", ypos="head") + gen "Did you swallow?" ("base", xpos="far_left", ypos="head") + her "Of course I did, [genie_name]." ("upset", "closed", "base", "mid") + her "I told you -- I gave the boy a {b}proper{/b} blowjob." + her "It's the least I could do for someone who treated me with respect for a change..." ("angry", "narrow", "base", "down") + gen "Well, in that case." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_blowjob + +### Tier 6 ### + +label hg_pr_blowjob_T6_intro_E1: + + call hg_pr_blowjob_intro + + her "Splendid, [genie_name]. Simply splendid." ("base", "happyCl", "base", "mid") + gen "Really? Do tell." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") # Music + her "Today I did something I wanted to do for such a long time now..." ("base", "narrow", "base", "up") + her "But never could muster up enough courage for..." + gen "*Hmm*...?" ("base", xpos="far_left", ypos="head") + her "Today I sucked off my two best friends in the entire world!" ("soft", "narrow", "annoyed", "up") + her "And it was every bit as exciting as I thought it would be." ("base", "narrow", "worried", "down") + her "I made their cocks all sloppy with saliva..." ("grin", "narrow", "base", "dead") + her "I sucked on their balls too..." + her "But the best part was to see their faces..." ("silly", "narrow", "annoyed", "up") + her "The boys could not believe it was actually happening..." + her "To be honest, neither could I..." ("silly", "narrow", "base", "dead") + her "I, Hermione Granger -- the girl they knew for years..." + her "Sucking on their cocks..." ("open_wide_tongue", "narrow", "annoyed", "up") + her "Like some nasty slut..." ("shock", "base", "base", "R", cheeks="blush", tears="soft") + gen "Are you in love with those boys, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I don't know, [genie_name]... But I surely like their cocks..." ("base", "happyCl", "base", "mid") + her "Could I get paid now please?" + gen "Sure..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_blowjob + +label hg_pr_blowjob_T6_E2: + + # Special intro + stop music fadeout 3.0 + call her_walk(action="enter", xpos="mid", ypos="base") + + $ hermione.set_cum(hair="heavy", face="heavy") + + her "" ("angry", "base", "angry", "mid", xpos="mid", ypos="base", trans=d3) + pause 1.0 + + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "You look like hell..." ("base", xpos="far_left", ypos="head") + call play_music("hermione") # Music + her "[genie_name], I... Yes, thanks to that Slytherin boy..." ("scream", "closed", "angry", "mid", tears="mascara") + gen "Slytherin...{w=0.4} Seriously?!" ("angry", xpos="far_left", ypos="head") + her "Yes, [genie_name]." ("annoyed", "narrow", "annoyed", "mid", tears="mascara") + her "That nasty boy from Slytherin seemed to take a fancy to my face..." + her "Or...{w=0.5} My mouth rather I suppose..." ("open", "narrow", "worried", "down", tears="mascara") + her "And--" + play sound "sounds/burp.ogg" + her "*Burp*!..." ("shock", "happyCl", "worried", "mid", tears="mascara") + her "{i}Excuse moi{/i}." ("angry", "narrow", "base", "down", tears="mascara") + her "He came so much I was barely able to swallow it all..." ("scream", "base", "angry", "mid", emote="angry", tears="mascara") + her "Bloody bastard!" + her "You think I could file a complaint, [genie_name]?" ("angry", "base", "angry", "mid", cheeks="blush", tears="mascara") + gen "*Hmm*... I suppose..." ("base", xpos="far_left", ypos="head") + gen "But keep in mind that the moment we bring the ministry into this..." ("base", xpos="far_left", ypos="head") + gen "All this \"favour selling business\" will have to stop immediately." ("base", xpos="far_left", ypos="head") + her "Oh...?" ("open", "base", "base", "R", cheeks="blush", tears="mascara") + her ".................." + her "Please, never mind what I just said then..." ("base", "happyCl", "base", "mid", tears="mascara") + gen "Are you sure? You look pretty messed up." ("base", xpos="far_left", ypos="head") + her "No, no. It's nothing really..." + her "After all I was the one who offered him a free blowjob..." + her "He just got a bit rough with me closer to the end, that's all..." + her "I think I am just overreacting..." + gen "I see..." ("base", xpos="far_left", ypos="head") + her "Can I just--" + + play sound "sounds/burp.ogg" + + her "*Burp*!..." ("shock", "wide", "base", "stare", tears="mascara") + her "Excuse me, [genie_name]." ("angry", "narrow", "base", "down", tears="mascara") + her "{size=-3}(He just kept on cumming... My stomach feels so full...){/size}" ("angry", "happyCl", "worried", "mid", emote="sweat", tears="mascara") + her "Can I get my payment now, please?" ("open", "base", "base", "mid", tears="mascara") + + jump end_hg_pr_blowjob + +label hg_pr_blowjob_T6_E3: + + # Special intro + stop music fadeout 3.0 + call her_walk(action="enter", xpos="mid", ypos="base") + + $ hermione.set_cum("heavy") + + her "" ("base", "narrow", "base", "up", xpos="mid", ypos="base", trans=d3) + pause 1.0 + + her "Good evening, [genie_name]..." + gen "Hermione?!" ("angry", xpos="far_left", ypos="head") + gen "What happened to you, [hermione_name]?" ("angry", xpos="far_left", ypos="head") + gen "All I asked you to do was to give a blowjob to one of your classmates." ("angry", xpos="far_left", ypos="head") + call play_music("hermione") # Music + her "That... That was exactly what I did, [genie_name]." ("angry", "narrow", "base", "down") + gen "[hermione_name], you are covered in cum head to toe." ("base", xpos="far_left", ypos="head") + her "I am?" ("soft", "narrow", "annoyed", "up") + her "Oh... Did I forget to clean myself up?" + her "How embarrassing..." ("base", "narrow", "base", "mid_soft") + her "That thing at the boy's restroom sort of escalated I suppose..." + her "Before I knew what happened I was surrounded with hard throbbing cocks..." + her "Oh... Just talking about it makes me shiver with excitement... *err*.." ("silly", "narrow", "base", "dead") + her "... I mean, with fear... no, not fear..." ("grin", "narrow", "annoyed", "up") + her "Embarrassment...? No, that's not it... *Hmm*..." ("base", "base", "base", "R", cheeks="blush") + gen "Are you asking me?" ("base", xpos="far_left", ypos="head") + her "Oh, excuse me, [genie_name]... I feel a little lightheaded..." ("grin", "narrow", "base", "dead") + her "I think I need to go lie down for a while..." + gen "Don't miss the shower room this time." ("base", xpos="far_left", ypos="head") + her "The shower room? Why?" ("base", "narrow", "base", "mid_soft") + gen "Forget I said anything..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_blowjob diff --git a/game/scripts/characters/hermione/events/requests/give_a_handjob.rpy b/game/scripts/characters/hermione/events/requests/give_a_handjob.rpy new file mode 100644 index 00000000..383ede76 --- /dev/null +++ b/game/scripts/characters/hermione/events/requests/give_a_handjob.rpy @@ -0,0 +1,624 @@ + +### Give Classmate A Handjob ### + +label hg_pr_handjob: + + # Setup + $ current_payout = 55 + + if hg_pr_handjob.counter == 0: + gen "{size=-4}(Tell her to give a handjob to one of her classmates?){/size}" ("base", xpos="far_left", ypos="head") + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + her "" (xpos="mid", ypos="base", trans=fade) + + #Intro + if hg_pr_handjob.counter == 0: + + if her_reputation < 12: + gen "[hermione_name], I want you to do something different today..." ("base", xpos="far_left", ypos="head") + her "...?" ("normal", "squint", "angry", "mid") + gen "I want you to give a handjob to one of your classmates." ("base", xpos="far_left", ypos="head") + + jump too_much_public + + gen "[hermione_name], I want you to do something different today..." ("base", xpos="far_left", ypos="head") + her "..........." ("soft", "base", "base", "mid") + gen "I want you to go out there and have sex with one of your classmates." ("grin", xpos="far_left", ypos="head") + + stop music fadeout 0.5 + with hpunch + + her "{size=+5}What?!!{/size}" ("shock", "wide", "base", "stare") + call play_music("hermione") # Music + her "Now you have done it, [genie_name]! You crossed the line!" ("angry", "base", "angry", "mid") + her "I know I did sell you a couple of rather questionable favours in the past..." + gen "{size=-4}*Heh* a couple she says...{/size}" ("base", xpos="far_left", ypos="head") + with vpunch + her "{size=+5}--But THIS?!{/size}" ("scream", "base", "angry", "mid", emote="angry") + her "I cannot believe that you would ask one of your pupils to... to..." + her "We are done here, [genie_name]!" ("angry", "base", "angry", "mid", emote="angry") + gen "Alright, alright, calm down, would you?" ("base", xpos="far_left", ypos="head") + her "I most certainly will not, [genie_name]! This is beyond inappropriate!" ("scream", "closed", "angry", "mid") + gen "Alright, fine, maybe I really did cross some sort of line this time..." ("base", xpos="far_left", ypos="head") + her "You think [genie_name]?! You think!!?" ("angry", "base", "angry", "mid") + gen "Yes, I apologise..." ("base", xpos="far_left", ypos="head") + her "........." ("annoyed", "narrow", "annoyed", "mid") + gen "How about we try something less... engaging instead?" ("base", xpos="far_left", ypos="head") + her "............" ("upset", "closed", "base", "mid") + gen "I'll be willing to grant Gryffindor {number=current_payout} points." ("base", xpos="far_left", ypos="head") + gen "All I ask in return is..." ("base", xpos="far_left", ypos="head") + her "..........?" ("angry", "base", "angry", "mid", cheeks="blush") + gen "... that you go out there and give some lucky boy a handjob..." ("base", xpos="far_left", ypos="head") + her "!!!......" ("angry", "base", "angry", "mid") + gen "Oh, come on... Just a harmless handjob." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "mid_soft") + gen "{number=current_payout} house points..." ("base", xpos="far_left", ypos="head") + her ".............." ("annoyed", "narrow", "angry", "R") + her "I am glad that you came to your senses, [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + gen "Oh, but of course. Thank you for keeping me in check." ("base", xpos="far_left", ypos="head") + gen "Are you up for it then?" ("base", xpos="far_left", ypos="head") + her "I am willing to give it a try..." ("annoyed", "narrow", "angry", "R") + gen "Splendid... See you tonight then." ("base", xpos="far_left", ypos="head") + else: + if her_tier >= 6: + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "What do you think about giving one of your classmates another handjob?" ("base", xpos="far_left", ypos="head") + her "I don't mind, [genie_name]." ("annoyed", "narrow", "worried", "down") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "Yes... I mean, it's just a handjob..." ("grin", "base", "base", "R") + gen "Great. Go have fun then!" ("base", xpos="far_left", ypos="head") + gen "And report back to me after your classes, as usual." ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]." ("base", "happyCl", "base", "mid") + elif her_tier >= 5: + gen "Ready to go have sex with one of your classmates yet?" ("base", xpos="far_left", ypos="head") + + stop music fadeout 1.0 + + her "What?" ("scream", "wide", "base", "mid") + her "Of course not! I would never--" ("scream", "closed", "angry", "mid") + gen "How about a handjob then?" ("base", xpos="far_left", ypos="head") + call play_music("hermione") # Music + her "..............." ("annoyed", "narrow", "angry", "R") + gen "Oh come on. You did it before." ("base", xpos="far_left", ypos="head") + her "*Hmm*.........." ("annoyed", "narrow", "annoyed", "mid") + her "{number=current_payout} house points?" + gen "Naturally." ("base", xpos="far_left", ypos="head") + her "Well, alright... I'll see what I can do..." ("angry", "narrow", "base", "down") + else: + gen "Today's favour shall be..." ("base", xpos="far_left", ypos="head") + her "........." ("angry", "base", "base", "mid") + gen "A Handjob to the boy of your choosing!" ("base", xpos="far_left", ypos="head") + her "... again?" ("angry", "narrow", "base", "down") + gen "Sure, why not?" ("base", xpos="far_left", ypos="head") + gen "And another {number=current_payout} house points for the Gryffindor house of course." ("base", xpos="far_left", ypos="head") + her ".........." ("annoyed", "base", "worried", "R") + gen "So... Are you up for that, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I will see what I can do..." ("annoyed", "narrow", "angry", "R") + gen "Splendid!" ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + $ hg_pr_handjob.inProgress = True + jump end_hermione_event + +label end_hg_pr_handjob: + $ gryffindor += current_payout #55 + gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." + + label .no_points: + + call her_walk("door", "base") + pause.2 + + # Inner monologue + if hg_pr_handjob.counter == 1: + + her ".........." ("upset", "narrow", "angry", "R", ypos="head", flip=False, trans=d3) + + show screen blktone + with d3 + + her "(Do I really have to do this?)" ("upset", "closed", "angry", "mid") + + hide screen blktone + with d3 + + her "*sigh*" ("soft", "closed", "angry", "mid") + + + call her_chibi("leave") + + label .quick_end: + + # Increase Points + if not hg_pr_handjob.is_tier_complete(): + $ her_reputation += 1 + + $ hg_pr_handjob.inProgress = False + jump end_hermione_event + +label hg_pr_handjob_intro: + call her_walk(action="enter", xpos="mid", ypos="base") + her "Good evening, [genie_name]." ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Did you lend a hand to the needy?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." + + if hg_pr_handjob.is_tier_complete(): + menu: + "\"Great. Here are your points.\"": + jump end_hg_pr_handjob + + "\"Give me the details.\"": + pass + + stop music fadeout 3.0 + + if hg_pr_handjob.counter == 1: + her "......" ("annoyed", "narrow", "angry", "R") + gen ".............." ("base", xpos="far_left", ypos="head") + + gen "[hermione_name], how did it go?" ("base", xpos="far_left", ypos="head") + + return + +### Tier 4 ### + +label hg_pr_handjob_T4_E1: + + call hg_pr_handjob_intro + + call play_music("hermione") # Music + her "Quite awful... of course..." ("annoyed", "squint", "angry", "mid") + gen "Just tell me what happened, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "I made a complete fool out of myself, that's what happened, [genie_name]." ("disgust", "narrow", "base", "mid_soft") + her "....." + gen "..." ("base", xpos="far_left", ypos="head") + her ".........." ("annoyed", "base", "worried", "R") + her "I don't want to talk about it..." ("annoyed", "narrow", "angry", "R") + her "You told me to go and touch a boy's penis and I did just that, [genie_name]." + her "Please, just let me have my points now, [genie_name]..." ("open", "base", "base", "mid") + gen "I did not tell you to \"go and touch a boy's penis\", [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "I told you to give one of your classmates a proper handjob." ("base", xpos="far_left", ypos="head") + her "Well, yes... that was what I meant of course..." ("annoyed", "narrow", "annoyed", "mid") + gen "Did you make him cum, then?" ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("open", "base", "base", "mid") + gen "Did his \"wee-wee\" shoot white stuff at you, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Well..." ("annoyed", "base", "worried", "R") + her "No, it did not..." ("normal", "happyCl", "worried", "mid") + gen "Poor guy... Must've blue-balled him." ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Well, this doesn't count then.\"": + stop music fadeout 4.0 + her "What?" ("angry", "wide", "base", "stare") + her "But, [genie_name], I..." + gen "If you didn't make him cum then that wasn't a proper handjob. Period." ("base", xpos="far_left", ypos="head") + her "But... But what was it then...?" ("angry", "base", "base", "mid") + gen "How should I know? A cock massage?" ("base", xpos="far_left", ypos="head") + her "*Aww*..." ("angry", "narrow", "base", "down") + her "But I really tried my best..." + gen "No handjob - no payment, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "....." ("angry", "base", "base", "mid") + gen "You are free to go, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "........." ("annoyed", "narrow", "angry", "R") + + $ her_mood +=9 + jump end_hg_pr_handjob.no_points + + "\"You shall only get half the payment then.\"": + $ current_payout = int(current_payout/2) + + her "Oh...?" ("open", "base", "base", "mid") + gen "Is that a Problem, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "N-No [genie_name]... It's only fair I suppose..." ("angry", "narrow", "base", "down") + gen "Of course it is!" ("base", xpos="far_left", ypos="head") + + "\"Well, you did try. Here are your points.\"": + her "Really?" ("angry", "base", "base", "mid") + her "Thank you, [genie_name]!" ("open", "narrow", "worried", "down") + her "I promise, I will try harder next time!" ("base", "base", "base", "mid") + her "*Ehm*... Should you request a similar favour in the future, I mean..." ("upset", "wink", "base", "mid") + + jump end_hg_pr_handjob + +label hg_pr_handjob_T4_E2: + + call hg_pr_handjob_intro + + call play_music("playful_tension") # Music + her "It went well, [genie_name]..." ("open", "base", "base", "mid") + her "I asked one of the Gryffindor boys to let me do \"it\" to him..." + her "To my surprise he agreed eagerly." ("open", "base", "base", "mid", cheeks="blush") + gen "Shocker..." ("base", xpos="far_left", ypos="head") + her "So we hid behind one of those huge tapestries in the east wing..." ("open", "closed", "base", "mid", cheeks="blush") + her "And I... wanked him until he came..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "........." + her "And I asked him to keep the whole thing a secret, but..." ("angry", "base", "base", "mid", cheeks="blush") + gen "What's the matter, [hermione_name]?" ("base", xpos="far_left", ypos="head") + gen "Doubting the honesty of your fellow Gryffindor?" ("base", xpos="far_left", ypos="head") + her "Of course not, [genie_name]." ("upset", "closed", "base", "mid") + her "..........................." ("angry", "narrow", "base", "down", cheeks="blush") + her "Still... Performing this sort of task could really damage my reputation..." ("angry", "base", "base", "mid", cheeks="blush") + gen "Is this your way of asking for a raise, [hermione_name]?" ("base", xpos="far_left", ypos="head") + gen "{number=current_payout} points is as high as I can go with this one." ("base", xpos="far_left", ypos="head") + her "Oh... Of course..." ("angry", "narrow", "base", "down") + gen "Unless, you've changed your mind about having sex with one of your classmates?" ("base", xpos="far_left", ypos="head") + her "What?" ("shock", "wide", "base", "stare") + her "[genie_name], I am not a prostitute!" ("angry", "narrow", "base", "down", cheeks="blush") + gen "Well, in that case..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_handjob + +label hg_pr_handjob_T4_E3: + + # Special intro + stop music fadeout 3.0 + call her_walk(action="enter", xpos="mid", ypos="base") + + gen "[hermione_name], how did it--" ("base", xpos="far_left", ypos="head") + $ hermione.set_cum(hair="light") + show screen blktone + with d3 + her "" ("angry", "narrow", "angry", "R", xpos="mid", ypos="base", trans=d3) + gen "...-go." ("base", xpos="far_left", ypos="head") + + call play_music("hermione") # Music + her "Awful, [genie_name]. Simply awful..." ("scream", "happyCl", "worried", "mid") + gen "You've got something... in your hair there..." ("base", xpos="far_left", ypos="head") + her "*huh*?" ("open", "base", "angry", "mid") + her "Oh, no! I thought I got it all off..." ("angry", "happyCl", "base", "mid", cheeks="blush") + her "One moment..." + + show screen blkfade + with d3 + pause.5 + $ hermione.set_cum(None) + her "" ("upset", "closed", "base", "mid") + hide screen blkfade + with d3 + + gen "*Hmm*... So I suppose you have completed your task?" ("base", xpos="far_left", ypos="head") + her "I did, [genie_name]..." ("annoyed", "narrow", "angry", "R") + gen "What's the problem, then?" ("base", xpos="far_left", ypos="head") + her ".........." ("annoyed", "base", "worried", "R") + her "All boys are jerks! That is the problem, [genie_name]!" ("scream", "closed", "angry", "mid") + her "I gave this one boy a good wanking..." ("open", "narrow", "worried", "down") + her "And do you know how he thanked me?" + her "He got his spunk all over me..." ("scream", "base", "angry", "mid", emote="angry") + her "And he did that on purpose, I know he did!" ("scream", "closed", "angry", "mid") + her "Nasty, good for nothing Ravenclaws..." ("annoyed", "base", "worried", "R") + gen "Well, I'd say a job well done." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_handjob + +### Tier 5 ### + +label hg_pr_handjob_T5_E1: + + call hg_pr_handjob_intro + + call play_music("hermione") # Music + her "*Ehm*..." ("open", "base", "base", "mid") + her "Not that good to be honest, [genie_name]..." + gen "Oh?" ("base", xpos="far_left", ypos="head") + her "Yes... Let me explain, [genie_name]..." ("annoyed", "base", "worried", "R") + her "*Ehm*... Well..." ("open", "base", "base", "mid") + her "I was jerking this one boy off, in one of the empty classrooms..." + her "And that nasty ghost Peeves walked in..." + her "Or rather flew in on us..." ("annoyed", "base", "worried", "R") + her "And as soon as he realised what I was doing to the boy..." ("open", "base", "base", "mid") + her "He started to yell obscenities at us..." + her "So we had to leave in a hurry..." + gen "I see..." ("base", xpos="far_left", ypos="head") + her "That is not all, [genie_name]..." ("annoyed", "narrow", "angry", "R") + gen "Go on..." ("base", xpos="far_left", ypos="head") + her "Well, I sort of made a promise to the boy..." ("open", "narrow", "worried", "down") + her "I promised to meet him after my classes and..." + her "... and finish what I have started..." ("annoyed", "narrow", "annoyed", "mid") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "Did you?" ("base", xpos="far_left", ypos="head") + her "No, [genie_name]. Not yet at least..." ("angry", "base", "base", "mid") + her "I am supposed to meet him as soon as we are done here, [genie_name]." + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + her "So if you could just give those points in advance..." ("angry", "narrow", "base", "down") + her "I would go meet with the boy right away and..." + her "And give him a proper handjob...?" ("open", "base", "base", "R", cheeks="blush") + + menu: + "\"No. You failed this favour, [hermione_name].\"": + stop music fadeout 3.0 + + her "B-but..." ("open", "base", "base", "mid", cheeks="blush") + her "But I gave him my word..." ("angry", "wide", "base", "stare") + her "I swore on Godric Gryffindor's name..." + her "And now I will have to give him a wank no matter what..." ("angry", "narrow", "base", "down") + gen "Well, I didn't force you to give him that promise, did I?" ("base", xpos="far_left", ypos="head") + her "......" ("angry", "base", "base", "mid") + her "This is just not fair!" ("scream", "happyCl", "worried", "mid") + + $ her_mood += 20 + jump end_hg_pr_handjob.no_points + + "\"Alright, I think I can trust you.\"": + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + her "I knew you would understand." + gen "Just make sure you finish your job properly this time." ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]. I will give him the wank of his life, I promise!" ("base", "happyCl", "base", "mid") + + jump end_hg_pr_handjob + +label hg_pr_handjob_T5_E2: + + call hg_pr_handjob_intro + + call play_music("hermione") # Music + her "Fine I suppose..." ("open", "closed", "base", "mid") + her "Although I am still not sure how I feel about all of this..." ("annoyed", "base", "worried", "R") + gen "Your personal feelings are of no concern to me, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "Just tell me more about how it went." ("base", xpos="far_left", ypos="head") + her "Well, there is not much to tell. [genie_name]..." ("open", "base", "base", "mid") + call play_music("playful_tension") # Music + her "Today I gave another handjob to one of my classmates..." + her "Me, Hermione Granger..." ("open", "narrow", "worried", "down") + her "Giving free handjobs in the school's restroom..." ("angry", "narrow", "base", "down") + gen "Wait. What do you mean by \"free\"?" ("base", xpos="far_left", ypos="head") + her "Oh, of course... I get paid with house points for this..." ("angry", "base", "base", "mid") + her "But nobody knows about that..." + her "And to everyone else this just looks like some harlot who does this for fun..." + her "They must think I am a slut..." ("open", "narrow", "worried", "down") + her ".............." ("clench", "narrow", "base", "down") + her "Do you think I'm a slut, [genie_name]?" ("open", "happy", "base", "mid", cheeks="blush") + + menu: + gen "(*Hmm*..)" ("base", xpos="far_left", ypos="head") + "\"What? Of course not, [hermione_name]!\"": + her ".............." ("base", "base", "base", "R", cheeks="blush") + her "You are right, [genie_name]..." ("base", "narrow", "worried", "down") + her "I am making this sacrifice for the glory of the Gryffindor house." + her "I am not taking pleasure in this sort of activity..." ("soft", "narrow", "annoyed", "up") + her "Because if I would..." ("annoyed", "narrow", "angry", "R") + her "That would mean I really am a slut..." + her "And I am not..." ("angry", "narrow", "base", "down") + her "......" + her "I am not a slut..." + + "\"A slut? No... Not yet.\"": + her "\"Not yet\"??!" ("angry", "base", "base", "mid") + her ".........." ("angry", "narrow", "base", "down") + her "Well, of course!" ("scream", "wide", "base", "mid") + her "You are right, as usual, [genie_name]!" ("soft", "base", "base", "mid") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + her "I have done a few... naughty things..." ("open", "base", "base", "mid") + her "But that does not mean anything!" + her "..........." ("annoyed", "narrow", "angry", "R") + + "\"Yes, that's exactly what you are.\"": + her "I was afraid that you would say that, [genie_name]..." ("mad", "happyCl", "worried", "mid", tears="soft_blink") + her "But you are wrong, [genie_name]." + her "You of all people should understand that I take no pleasure in this..." ("angry", "base", "base", "mid", tears="soft") + her "I just do what needs to be done..." ("normal", "base", "base", "R", tears="soft") + $ her_mood = 10 + + her "[genie_name], can I just get paid now, please?" ("soft", "base", "base", "R") + gen "Get paid? But you didn't tell me how it went yet?" ("base", xpos="far_left", ypos="head") + her "I did not?" + her "[genie_name], I gave a handjob to one of my classmates today..." ("open", "base", "base", "mid", cheeks="blush") + her "I wanked his cock until he came..." + her "Is that not what you told me to do?" ("disgust", "narrow", "base", "mid_soft") + gen "That's exactly what I told you to do, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Then I would like to get paid now, please." ("annoyed", "closed", "base", "mid") + gen "........" ("base", xpos="far_left", ypos="head") + gen "Fine..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_handjob + +label hg_pr_handjob_T5_E3: + + call hg_pr_handjob_intro + + call play_music("hermione") # Music + her "Pretty well, [genie_name]." ("open", "closed", "base", "mid") + gen "Great. Tell me more." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") # Music + her "Well, today was a rather busy day..." ("open", "base", "base", "mid") + her "And I had to catch up on some studying..." + her "So I really had no time to plan this out properly, like I normally would..." + her "I pretty much just approached the first boy I saw..." + her "And asked him if he wants me to jerk him off." ("annoyed", "narrow", "angry", "R") + her "a Few minutes later I was already stroking his hard cock in the restroom stall..." + gen "How very efficient of you..." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + her "So, as I was saying..." ("annoyed", "narrow", "angry", "R") + her "I stroked his cock until he came..." + her "But after that he said: \"Good job, slut\" and just left me there..." ("disgust", "narrow", "base", "mid_soft") + her "Such a mean thing to do..." ("annoyed", "narrow", "angry", "R") + her "It made me feel so cheap... and used." ("upset", "closed", "base", "mid") + her "But it gets worse..." + her "......." + her "I think on some level it also made me feel good somehow..." ("angry", "narrow", "base", "down") + her "All these favours I have been selling to you lately, [genie_name]..." + her "... it's starting to affect me." ("angry", "base", "base", "mid") + her "[genie_name], what is happening to me?" + + menu: + "\"This is nothing. Stop over-thinking it!\"": + her "......." ("open", "happy", "base", "mid", cheeks="blush") + her "You are probably right, [genie_name]. As usual..." ("base", "base", "base", "R", cheeks="blush") + her "This does not have to mean anything..." + + "\"That is a natural response...\"": + her "It is?" ("open", "happy", "base", "mid", cheeks="blush") + gen "Of course." ("base", xpos="far_left", ypos="head") + gen "You are a girl and he is a boy..." ("base", xpos="far_left", ypos="head") + gen "You got excited and it made you feel good..." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("base", "base", "base", "R", cheeks="blush") + gen "Now if you were to give a handjob and feel completely indifferent about it..." ("base", xpos="far_left", ypos="head") + gen "... that would be... unnatural." ("base", xpos="far_left", ypos="head") + her "I think you are right, [genie_name]." ("open", "happy", "base", "mid", cheeks="blush") + her "As usual." ("base", "base", "base", "R", cheeks="blush") # :) + + "\"Yes! All goes according to plan!\"": + her "What?" ("angry", "wide", "base", "stare") + gen "What?" ("base", xpos="far_left", ypos="head") + her "[genie_name], did you just say \"All goes according to plan\"?" ("angry", "base", "angry", "mid", cheeks="blush") + gen "Did I?" ("base", xpos="far_left", ypos="head") + gen "Oh, yes, of course." ("base", xpos="far_left", ypos="head") + gen "Ensuring that Gryffindor gets the house cup this year." ("base", xpos="far_left", ypos="head") + gen "That's the plan And thanks to your hard work, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "All goes according to my-- I mean, our plan..." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("upset", "closed", "base", "mid") + + $ her_mood += 5 + + jump end_hg_pr_handjob + +### Tier 6 ### + +label hg_pr_handjob_T6_intro_E1: + + # Special intro + stop music fadeout 3.0 + call her_walk(action="enter", xpos="mid", ypos="base") + + $ hermione.set_cum(hair="light") + + her "[genie_name]..." ("open", "base", "worried", "mid", xpos="mid", ypos="base", trans=d3) + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "I did a bad thing today, [genie_name]..." ("open", "base", "worried", "R") + gen "Did you now? Do tell..." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") # Music + her "Yes, I did a bad thing... a very bad thing..." + her "A very bad and foolish thing..." ("annoyed", "squint", "angry", "mid") + her "..." + gen "...................." ("base", xpos="far_left", ypos="head") + her "......................" + her "I wanked off one of my best friend's brothers..." ("angry", "base", "base", "mid", tears="soft") + gen "Interesting..." ("base", xpos="far_left", ypos="head") + her "Seemed like such a great idea at first..." ("angry", "base", "base", "mid", tears="soft") + her "And Ron was so up for it..." + her "But if Ginny were to find out... She..." ("shock", "base", "base", "R", cheeks="blush", tears="soft") + her "She would most certainly kill me, [genie_name]..." ("angry", "base", "base", "mid", tears="soft") + gen "A handjob, *huh*? Are you sure that was all you did?" ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("angry", "base", "base", "mid", tears="soft") + gen "There is something in your hair..." ("base", xpos="far_left", ypos="head") + her "What? But I swallowed it all... err..." ("soft", "base", "base", "mid", tears="soft") + her "I mean..." ("clench", "base", "worried", "mid", cheeks="blush", tears="soft") + her "*Sigh*" ("shock", "base", "base", "R", cheeks="blush", tears="soft") + her "... I sucked him off, [genie_name]." + her "I did not plan to... but..." + her "Ron is always so nice to me..." ("clench", "base", "worried", "mid", cheeks="blush", tears="soft") + her "And I wanted to thank him...*Sob*!" ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + her "And now Ginny will kill me! *Sob*!" ("angry", "base", "base", "mid", tears="soft") + her "She will kill me, [genie_name]!" + her "And if she does not I will probably die of shame anyway." ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + her "No, no, no... How will I ever face her...?" + gen "Calm down, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "I assure you, this is not something a boy would be eager to brag about to his sister." ("base", xpos="far_left", ypos="head") + her "It is not?" ("clench", "base", "worried", "mid", cheeks="blush", tears="soft") + gen "Don't be silly, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("normal", "base", "base", "R", tears="soft") + her "You are probably right, [genie_name]..." ("soft", "base", "base", "mid", tears="soft") + her "And I made Ron give me his word that he will keep the whole incident a secret..." + her "So, I think I should just trust him to keep his word..." ("open", "base", "worried", "R") + her ".........." ("soft", "base", "base", "R") + her "..." + her "Will I get paid for this, [genie_name]?" ("base", "base", "base", "mid") + gen "Of course." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_handjob + +label hg_pr_handjob_T6_E2: + + call hg_pr_handjob_intro + + call play_music("hermione") # Music + her "It went... Particularly well..." ("base", "squint", "base", "mid") + her "I did it more than once actually..." + gen "More than once?" ("base", xpos="far_left", ypos="head") + her "Five times, [genie_name]..." ("base", "narrow", "base", "mid_soft") + her "I... got carried away a little I suppose..." + gen "What do you mean \"five times\", [hermione_name]?" ("base", xpos="far_left", ypos="head") + gen "Like... at once?" ("base", xpos="far_left", ypos="head") + her "No silly. I mean I wanked off five boys today in total, [genie_name]." ("base", "squint", "base", "mid") + gen "Very impressive nonetheless, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("base", "narrow", "base", "mid_soft") + gen "You don't expect me to multiply your payment by seven or anything, do you?" ("base", xpos="far_left", ypos="head") + her "Of course not, [genie_name]." ("base", "base", "base", "R", cheeks="blush") + gen "Then why did you do it? Five times no less!" ("base", xpos="far_left", ypos="head") + her "Well, it sort of just happened..." ("open", "happy", "base", "mid", cheeks="blush") + her "I was jerking off this one boy..." + her "And another boy walked in on us..." + her "He called his friends..." + her "One thing lead to another..." ("base", "narrow", "base", "mid_soft") + gen "And you ended up jerking off five cocks..." ("base", xpos="far_left", ypos="head") + her "... yes." ("soft", "narrow", "annoyed", "up") + gen "At the same time?" ("base", xpos="far_left", ypos="head") + her "*Mhmm*!" ("base", "narrow", "annoyed", "mid_soft") + gen "And they came on you?!" ("grin", xpos="far_left", ypos="head") + her "You have no idea." ("base", "base", "base", "mid_soft") + gen "Well done, miss Granger, absolutely fantastic!" ("grin", xpos="far_left", ypos="head") + her "" ("base", "narrow", "base", "mid_soft") + + jump end_hg_pr_handjob + +label hg_pr_handjob_T6_E3: + + call hg_pr_handjob_intro + + her "It went well, [genie_name]." ("base", "base", "base", "mid") + her "But, *Ehm*..." ("open", "base", "worried", "mid") + gen "...?" ("base", xpos="far_left", ypos="head") + her "Well, I did not wank off one of my classmates during break period..." ("open", "base", "base", "mid") + her "I........." + her "..............." ("clench", "narrow", "base", "down") + gen "Spit it out, [hermione_name]. The suspense is killing me." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") # Music + her "I sort of did it during class..." ("open", "narrow", "worried", "down") + gen "Impressive..." ("base", xpos="far_left", ypos="head") + her "Sir, you don't understand.... Let me try and explain!" ("angry", "narrow", "base", "down") + her "I don't even know what came over me." + + hide hermione_main + show screen dual_hand_job # CG + with d5 + + her "I was trying to act as nonchalant as I could..." (ypos="head", flip=False) + her "But, I suddenly had this incredibly pleasant urge to do it during Professor Snape's class." + her "I couldn't even take notes with my other hand..." + her "It was wrapped around another thick hot cock too." + gen "You gave two boys handjobs at the same time?!" ("base", xpos="far_left", ypos="head") + her "Yes Sir." ("angry", "wink", "base", "mid") + her "And I think I gave them the wank of their life too..." ("base", "narrow", "worried", "down") + her "Because they did not just cum." + her "Their cocks simply exploded with spunk." + gen "You enjoyed it, didn't you?" ("base", xpos="far_left", ypos="head") + her "To be completely honest with you, sir... I did." ("grin", "narrow", "base", "dead") + her "It was exciting." ("smile", "base", "angry", "mid") + her "God, there was so much. My hands looked like a candle had dripped hot wax all over them." ("grin", "narrow", "base", "dead") + her "I didn't know what to do I couldn't just go about the rest of class with huge globs of cum all over my hands." ("angry", "narrow", "base", "down") + her "So I decided to rub it all over the inside of my thighs to keep from having to stain my clothes." + her "Every time I walked I could smell their cum from between my legs." ("silly", "narrow", "annoyed", "up") + gen "That's quite an interesting story miss Granger." ("base", xpos="far_left", ypos="head") + + hide screen dual_hand_job + with d5 + + her "I definitely want them both at the same time." ("silly", "narrow", "base", "dead") + gen "..." ("base", xpos="far_left", ypos="head") + her "Yeah, two huge cocks exploding massive loads of cum everywhere." ("silly", "narrow", "annoyed", "up") + gen "........" ("base", xpos="far_left", ypos="head") + her "......." ("silly", "narrow", "annoyed", "up") + gen "*Ehm*....." ("base", xpos="far_left", ypos="head") + her "Oh god, I'm sorry [genie_name], I was thinking of something else." ("angry", "wide", "base", "stare") + gen "Yes... sure, okay." ("base", xpos="far_left", ypos="head") + her "" ("base", "base", "base", "mid") + + jump end_hg_pr_handjob diff --git a/game/scripts/characters/hermione/events/requests/have_sex.rpy b/game/scripts/characters/hermione/events/requests/have_sex.rpy new file mode 100644 index 00000000..64f71254 --- /dev/null +++ b/game/scripts/characters/hermione/events/requests/have_sex.rpy @@ -0,0 +1,224 @@ + +### Have Sex With A Classmate ### + +label hg_pr_sex: + + # Setup + $ current_payout = 75 + + if hg_pr_sex.counter == 0: + gen "{size=-4}(Tell her to fuck one of her classmates?){/size}" ("base", xpos="far_left", ypos="head") + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + her "" (xpos="mid", ypos="base", trans=fade) + + #Intro. + if hg_pr_sex.counter == 0: + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Today I need you to have sex with a classmate of your choice." ("base", xpos="far_left", ypos="head") + + if not hg_sex.trigger: # She will refuse unless she slept with you + her "But we--.. I.." ("shock", "wide", "base", "stare") + her "I've never done it before!" ("angry", "wide", "base", "mid") + gen "So?" ("base", xpos="far_left", ypos="head") + her "{size=+5}\"So\"?!{/size}" ("annoyed", "narrow", "angry", "R") + her "I'm leaving this instant." ("scream", "closed", "angry", "mid") + + call her_walk(action="leave") + + $ her_mood += 16 + + gen "(*Hmm*...)" ("base", xpos="far_left", ypos="head") + gen "(Maybe if I have popped her cherry first, she would be more willing...)" ("base", xpos="far_left", ypos="head") + + jump end_hermione_event + + if her_reputation < 18: + jump too_much_public + + call play_music("hermione") # Music + her ".............." ("angry", "base", "angry", "mid") + her "I had the feeling that we would get to this sooner or later..." ("disgust", "narrow", "base", "mid_soft") + her "But..." ("annoyed", "narrow", "angry", "R") + her "..................." + gen "If you do this, Gryffindor will be getting {number=current_payout} points tonight." ("base", xpos="far_left", ypos="head") + her "Well, then I will do it, [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + gen "Great. See you after your classes then." ("base", xpos="far_left", ypos="head") + her "............." ("upset", "closed", "base", "mid") + else: + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "I need you to go have sex with another classmate of yours." ("base", xpos="far_left", ypos="head") + her "Again, [genie_name]?" ("angry", "base", "base", "mid") + gen "Yes. And you will get {number=current_payout} points again as well." ("base", xpos="far_left", ypos="head") + her "Well, alright..." ("annoyed", "narrow", "annoyed", "mid") + + call her_walk(action="leave") + + $ hg_pr_sex.inProgress = True + + jump end_hermione_event + +label end_hg_pr_sex: + $ gryffindor += current_payout + gen "Gryffindor gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." + + label .no_points: + + call her_walk("door", "base") + pause.2 + + # Inner monologue + if hg_pr_sex.counter == 2: + show screen blktone + with d3 + + her "(I did it... finally did it.)" ("smile", "narrow", "base", "dead", ypos="head", flip=False, trans=d3) + + hide screen blktone + with d3 + + call her_chibi("leave") + + label .quick_end: + + # Increase Points + if not hg_pr_sex.is_tier_complete(): + $ her_reputation += 1 + + $ hg_pr_sex.inProgress = False + jump end_hermione_event + +label hg_pr_sex_intro: + call her_walk(action="enter", xpos="mid", ypos="base") + her "Good evening, [genie_name]." ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Did you do it?" ("base", xpos="far_left", ypos="head") + + if hg_pr_sex.is_tier_complete(): + her "Of course, [genie_name]." + menu: + "\"Great. Here are your points.\"": + jump end_hg_pr_sex + + "\"Give me the details.\"": + pass + + stop music fadeout 3.0 + + if hg_pr_sex.counter == 1: + her "......" ("base", "narrow", "base", "mid") + + gen "Have you enjoyed yourself?" ("base", xpos="far_left", ypos="head") + + return + +### Tier 6 ### + +label hg_pr_sex_T6_intro_E1: + + call bld + gen "....." ("base", xpos="far_left", ypos="head") + gen ".........." ("base", xpos="far_left", ypos="head") + gen "Hermione was supposed to be here, by now..." ("base", xpos="far_left", ypos="head") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + $ hermione_busy = True + $ hg_event_pause += 1 + jump main_room_menu + +label hg_pr_sex_T6_intro_E2: + + # Special intro + stop music fadeout 3.0 + call her_walk(action="enter", xpos="mid", ypos="base") + + gen "[hermione_name], you missed your debriefing yesterday." ("base", xpos="far_left", ypos="head") + gen "Explain yourself." ("base", xpos="far_left", ypos="head") + + call play_music("hermione") + + her "Yes, [genie_name], I apologise... *yawn*..." ("open", "closed", "base", "mid", xpos="mid", ypos="base", trans=d3) + gen "Care to explain yourself?" ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]." ("open", "happy", "base", "mid", cheeks="blush") + her "It is sort of embarrassing, though..." ("base", "base", "base", "R", cheeks="blush") + her "I spent the last night with two of my friends..." ("open", "happy", "base", "mid", cheeks="blush") + gen "A slumber party with some girlfriends, *huh*?" ("base", xpos="far_left", ypos="head") + her "Girlfriends?" ("angry", "wink", "base", "mid") + her "No, [genie_name]. Harry and Ron are boys..." ("open", "base", "base", "R", cheeks="blush") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + her "Yes, we were best friends for such a long time..." ("base", "base", "base", "R", cheeks="blush") + + call play_music("playful_tension") + + her "But last night the boys made me their little plaything..." ("base", "narrow", "base", "mid_soft") + her "And I did not mind it one bit..." ("grin", "narrow", "base", "dead") + her "They did everything they wanted to do to me..." + her "And everything I wanted to be done to me has been done..." + her "................." ("soft", "narrow", "annoyed", "up") + her "Will I get paid for this, [genie_name]?" ("angry", "wink", "base", "mid") + + jump end_hg_pr_sex + +label hg_pr_sex_T6_E3: + + call hg_pr_sex_intro + + call play_music("hermione") # Music + her "Yes I did, [genie_name]." ("upset", "closed", "base", "mid") + her "And in the school library of all places..." ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "At first I was kind of worried that we would make too much noise..." + her "But the boy literally lasted only one minute, [genie_name]." + gen "Don't hold it against him, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "You are quite attractive, he probably got too excited..." ("base", xpos="far_left", ypos="head") + her "Nevertheless..." ("upset", "closed", "base", "mid") + her "A dozen or so of rather gingerly thrusts and he is cumming already?" + her "As a girl, I cannot help but feel disappointed..." + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "What did you do afterwards?" ("base", xpos="far_left", ypos="head") + gen "Pulled up your panties and went about your business as if nothing happened?" ("base", xpos="far_left", ypos="head") + + + her "My panties?" ("open", "narrow", "worried", "down") + her "I rarely bother to wear them anymore, [genie_name]." ("annoyed", "narrow", "angry", "R") + + if hermione.is_worn("panties"): + her "Unless you ask me to wear them, [genie_name]." + + gen "Oh really?" ("base", xpos="far_left", ypos="head") + her "Yes... I find not wearing any underwear very empowering." ("annoyed", "narrow", "annoyed", "mid") + + if hermione.is_worn("panties"): + her "But if that's what makes you happy, so be it." + + gen "Good for you, [hermione_name]." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_sex + +label hg_pr_sex_T6_E4: + + call hg_pr_sex_intro + + call play_music("playful_tension") # Music + her "I did, [genie_name]." ("upset", "closed", "base", "mid") + her "I took one of the Ravenclaw boys to the girl's restroom..." ("base", "narrow", "worried", "down") + her "... and let him have his way with me in one of the stalls." + gen "Well done, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "....................." ("annoyed", "narrow", "angry", "R") + gen "I said you did great. What's the matter?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... well..." ("open", "base", "base", "R", cheeks="blush") + her "I am getting paid well for performing such tasks..." + her "So I have no right to complain, but..." + gen "*Hmm*...?" ("base", xpos="far_left", ypos="head") + her "My reputation is starting to suffer and it troubles me, [genie_name]..." ("open", "base", "base", "mid", cheeks="blush") + gen "Your reputation?" ("base", xpos="far_left", ypos="head") + her "Well, yes... *Ehm*..." ("open", "base", "base", "R", cheeks="blush") + gen ".............." ("base", xpos="far_left", ypos="head") + her "No, sorry, please disregard what I just said, [genie_name]." ("upset", "closed", "base", "mid") + gen "(At this point I'm not sure she has any reputation left.)" ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_sex diff --git a/game/scripts/characters/hermione/events/requests/kiss_a_girl.rpy b/game/scripts/characters/hermione/events/requests/kiss_a_girl.rpy new file mode 100644 index 00000000..3758d5b9 --- /dev/null +++ b/game/scripts/characters/hermione/events/requests/kiss_a_girl.rpy @@ -0,0 +1,485 @@ + +### Make Out With A Girl ### + +label hg_pr_kiss: + + # Setup + $ current_payout = 45 + + if hg_pr_kiss.counter == 0: + gen "{size=-4}(Tell her to go make out with one of her female classmates?){/size}" ("base", xpos="far_left", ypos="head") + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + her "" (xpos="mid", ypos="base", trans=fade) + + #Intro. + if hg_pr_kiss.counter == 0: + gen "Have You ever kissed another girl, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "?!" ("normal", "squint", "angry", "mid") + + if her_reputation < 9: + jump too_much_public + + her "I am not a... lesbian, [genie_name]." ("open", "base", "base", "mid") + gen "Silly girl... You don't need to be a lesbian to kiss girls." ("base", xpos="far_left", ypos="head") + gen "I mean, I do it and I am not a lesbian either." ("base", xpos="far_left", ypos="head") + her "..............." ("angry", "base", "angry", "mid") + her "[genie_name]--" + gen "No, \"[genie_name]s\"! This is your task for today!" ("base", xpos="far_left", ypos="head") + gen "Go find a cute little thing and plant a \"smooch\" on her!" ("base", xpos="far_left", ypos="head") + her "[genie_name], but I am--" ("open", "base", "worried", "mid") + gen "Dismissed, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "[genie_name]!......" ("normal", "squint", "angry", "mid") + gen "I said you're dismissed." ("base", xpos="far_left", ypos="head") + her "*Humph*!..." ("annoyed", "squint", "angry", "mid") + else: + if her_tier >= 5: + gen "[hermione_name], {number=current_payout} house points are up for grabs today!" ("base", xpos="far_left", ypos="head") + gen "Are you interested?" ("base", xpos="far_left", ypos="head") + her "Sure, why not?" ("base", "base", "base", "mid") + gen "Great." ("base", xpos="far_left", ypos="head") + gen "I want you to make out with another girl today." ("base", xpos="far_left", ypos="head") + her "Alright." ("soft", "base", "base", "R") + her "I know a couple of girls who are hungry for attention and wouldn't mind putting on a little show." ("smile", "narrow", "base", "mid_soft") + gen "Great. See you after your classes then." ("base", xpos="far_left", ypos="head") + elif her_tier >= 4: + gen "[hermione_name], {number=current_payout} house points are up for grabs today!" ("base", xpos="far_left", ypos="head") + gen "Are you interested?" ("base", xpos="far_left", ypos="head") + her "I suppose..." ("annoyed", "narrow", "annoyed", "up") + gen "Great. All you need to do is make out with another girl." ("base", xpos="far_left", ypos="head") + her "I see..." ("annoyed", "narrow", "worried", "down") + gen "Up for the task, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I guess..." ("annoyed", "base", "worried", "R") + gen "Great. See you after your classes then." ("base", xpos="far_left", ypos="head") + else: + gen "[hermione_name], {number=current_payout} house points are up for grabs today!" ("base", xpos="far_left", ypos="head") + gen "Are you interested?" ("base", xpos="far_left", ypos="head") + her "It depends..." ("normal", "base", "base", "mid") + her "Will I have to do something depraved again?" + gen "\"Depraved\"??! When did I ever--?" ("base", xpos="far_left", ypos="head") + her "Really, [genie_name]?" ("open", "closed", "angry", "mid") + gen "Fine, fine... But all I want you to do today is to make out with another girl." ("base", xpos="far_left", ypos="head") + her "Oh, is that all?" ("angry", "base", "angry", "mid") # :( + gen "Yes... Pretty basic stuff for you, right?" ("base", xpos="far_left", ypos="head") + gen "And you will be getting {number=current_payout} house points afterwards of course." ("base", xpos="far_left", ypos="head") + her "............." ("normal", "squint", "angry", "mid") + gen "So... Are you up for it?" ("base", xpos="far_left", ypos="head") + her "I will see what I can do, [genie_name]..." ("annoyed", "narrow", "angry", "R") + gen "Great. See you after your classes then." ("base", xpos="far_left", ypos="head") + her "................" ("annoyed", "narrow", "annoyed", "mid") + + call her_walk(action="leave") + + $ hg_pr_kiss.inProgress = True + jump end_hermione_event + +label end_hg_pr_kiss: + $ gryffindor += current_payout + + gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." + + label .no_points: + + call her_walk("door", "base") + pause.2 + + # Inner monologue + if hg_pr_kiss.counter == 1: + show screen blktone + with d3 + + her "(*Tsk*)" ("mad", "base", "angry", "R", ypos="head", flip=False, trans=d3) + + hide screen blktone + with d3 + + call her_chibi("leave") + + label .quick_end: + + # Increase Points + if not hg_pr_kiss.is_tier_complete(): + $ her_reputation += 1 + + $ hg_pr_kiss.inProgress = False + jump end_hermione_event + +label hg_pr_kiss_intro: + call her_walk(action="enter", xpos="mid", ypos="base") + her "Good evening, [genie_name]." ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Did you succeed in completing your task?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." + + if hg_pr_kiss.is_tier_complete(): + menu: + "\"Great. Here are your points.\"": + jump end_hg_pr_kiss + + "\"Give me the details.\"": + pass + + stop music fadeout 3.0 + + if hg_pr_kiss.counter == 1: + her "......" ("annoyed", "narrow", "angry", "R") + her "Well... I..." ("soft", "base", "base", "R") + gen "Don't be shy, [hermione_name]." ("base", xpos="far_left", ypos="head") + + gen "Have you kissed someone?" ("base", xpos="far_left", ypos="head") + + return + +### Tier 3 ### + +label hg_pr_kiss_T3_E1: + + call hg_pr_kiss_intro + + her "I..." ("open", "base", "worried", "mid") + gen "I told you to make out with another girl..." ("base", xpos="far_left", ypos="head") + gen "Did you do it or not?" ("base", xpos="far_left", ypos="head") + her "I..." ("open", "base", "worried", "R") + her "I tried, [genie_name]. I really did." + gen "And?" ("base", xpos="far_left", ypos="head") + her "Well..." ("annoyed", "base", "worried", "R") + call play_music("hermione") # Music + her "It was awkward and embarrassing..." + gen "did you do it or not?" ("base", xpos="far_left", ypos="head") + her "... no I did not, [genie_name]..." ("annoyed", "narrow", "angry", "R") + her "All I achieved was making a complete fool out of myself..." + her "In front of the entire class..." ("angry", "base", "angry", "mid") + gen "Tell me what happened, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "No, I will not, [genie_name]." ("annoyed", "narrow", "angry", "R") + her "Not in a million years!" + her "Why do I have to perform such ridiculous tasks anyway?!" ("shock", "happyCl", "worried", "mid") + her "What is the point of all this?" + her "I hate this!" ("scream", "closed", "angry", "mid") + her "..............." ("annoyed", "narrow", "angry", "R") + her "................." + gen ".............." ("base", xpos="far_left", ypos="head") + gen "You are not getting paid, you know that, right?" ("base", xpos="far_left", ypos="head") + her "I don't care..." ("scream", "closed", "angry", "mid") + + $ her_mood += 12 + jump end_hg_pr_kiss.no_points + +label hg_pr_kiss_T3_E2: + + call hg_pr_kiss_intro + + call play_music("hermione") # Music + her "I did, [genie_name]..." ("open", "closed", "base", "mid") + gen "Good. Give me the details." ("base", xpos="far_left", ypos="head") + her "Well, I kissed a girl. Just like you told me to, [genie_name]." ("annoyed", "squint", "base", "mid") + gen "I guess it was embarrassing for you, girl?" ("base", xpos="far_left", ypos="head") + her "Very much so, [genie_name]." ("annoyed", "narrow", "angry", "R") + gen "Did you enjoy it though?" ("base", xpos="far_left", ypos="head") + her "*Humph*!..." ("annoyed", "narrow", "annoyed", "mid") + gen "So you kissed a girl and you liked it?" ("base", xpos="far_left", ypos="head") + her "Yes..." ("disgust", "narrow", "base", "mid_soft") + gen "Did your tongues touch?" ("base", xpos="far_left", ypos="head") + her "Yes..." ("disgust", "narrow", "base", "mid_soft") + her "It was a proper deep kiss, if that's what you want to know." + her "Can I just get my payment now?" + her "Please, [genie_name]..." ("annoyed", "narrow", "angry", "R") + gen "Well, alright..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_kiss + +label hg_pr_kiss_T3_E3: + + call hg_pr_kiss_intro + + call play_music("hermione") # Music + her "Yes, I did, [genie_name]." ("open", "closed", "base", "mid") + gen "Good. Tell me how it went." ("base", xpos="far_left", ypos="head") + her "It went well, [genie_name]." ("open", "closed", "base", "mid") + gen "Great. Give me the details." ("base", xpos="far_left", ypos="head") + her "What would you like to know, [genie_name]?" ("open", "closed", "angry", "mid") + gen "Tell me everything! Was the girl pretty?" ("base", xpos="far_left", ypos="head") + gen "Did she return your kiss?" ("base", xpos="far_left", ypos="head") + her "She was relatively pretty, [genie_name]." ("open", "squint", "base", "mid") + her "And she did return my kiss..." + her "..........." ("annoyed", "closed", "base", "mid") + her "Anything else, [genie_name]?" ("open", "squint", "base", "mid") + gen "...." ("base", xpos="far_left", ypos="head") + gen "Why are you being difficult, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "With all due respect, [genie_name]..." ("open", "closed", "angry", "mid") + her "You told me to make out with another girl, and I did..." + her "Now, I would like to get paid if you would be so kind." ("normal", "base", "base", "mid") + gen "......................" ("base", xpos="far_left", ypos="head") + + menu: + "\"Fine. Here is your payment, girl.\"": + pass + + "\"I don't appreciate your attitude, [hermione_name].\"": + her "Well, that is unfortunate, [genie_name]." ("open", "closed", "angry", "mid") + gen "Sure is..." ("base", xpos="far_left", ypos="head") + gen "Because you are not getting paid you insolent, little witch." ("base", xpos="far_left", ypos="head") + + stop music fadeout 1.0 + + her "What?" ("normal", "base", "base", "mid") + her "[genie_name], you can't do that!" ("open", "base", "worried", "mid") + gen "Dismissed." ("base", xpos="far_left", ypos="head") + her "B-but--" ("open", "base", "worried", "R") + her "[genie_name], please!" ("open", "base", "worried", "mid") + her "The girl was from Hufflepuff and--" + gen "Too late for that, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "You are dismissed." ("base", xpos="far_left", ypos="head") + her "......" ("angry", "base", "base", "mid", tears="soft") + call her_walk(action="run", xpos="door", speed=2, reduce=True) + call her_chibi("leave") + + pause 1.0 + gen "*Tsk*" ("base", xpos="far_left", ypos="head") + + $ her_mood +=25 + jump end_hg_pr_kiss.quick_end + + jump end_hg_pr_kiss + +### Tier 4 ### + +label hg_pr_kiss_T4_E1: + + call hg_pr_kiss_intro + + her "I did, [genie_name]..." ("open", "closed", "base", "mid") + gen "Well, don't just stand there. Give me the details." ("base", xpos="far_left", ypos="head") + her "*Ehm*, alright..." ("open", "base", "base", "mid") + her "The girl was from Ravenclaw..." + her "I think she may have been an underclassman, but I did not ask..." ("soft", "base", "base", "R") + her "We got to talking about boys..." + her "And she told me that she never kissed one..." ("open", "closed", "base", "mid") + her "And that she is worried that she might be very bad at it..." + her "So I just offered my help..." ("base", "base", "base", "mid") + call play_music("playful_tension") # Music + her "And then we spent some time in one of the bathroom stalls..." + her "Making out..." ("base", "base", "base", "mid") + her "She caught on real quick... I think she could be really good at it with some practice..." ("open", "base", "base", "mid") + her "Also she was quite adorable..." ("base", "base", "base", "mid") + her "She kept calling me \"Miss Hermione\"..." ("smile", "base", "base", "R") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "I Don't recall sending you out with a task to confuse some poor girl, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "\"Confuse\"? [genie_name], please..." ("smile", "narrow", "base", "mid_soft") + her "You should have seen that {i}poor girl{/i}..." + her "I assure you that she was anything but confused." ("smile", "base", "angry", "mid") + her "In fact, at the end of our \"Study session\" she got rather obnoxious..." + her "And it sort of felt as if she was taking advantage of me..." ("open", "base", "base", "mid") + gen "Oh... Well, in that case..." ("base", xpos="far_left", ypos="head") + her "" ("base", "base", "base", "mid") + + jump end_hg_pr_kiss + +label hg_pr_kiss_T4_E2: + + call hg_pr_kiss_intro + + call play_music("hermione") # Music + her "I did, [genie_name]." ("open", "closed", "base", "mid") + gen "Tell me how it went." ("base", xpos="far_left", ypos="head") + her "Well... *Ehm*..." ("open", "base", "base", "mid") + her "There is this one girl who is into girls..." + her "I thought she would be the ideal candidate for my task..." + her "so I told her that I am curious and that I would like to kiss her..." + her "She said that we should go to the girls' restroom for that..." ("open", "narrow", "worried", "down") + her "But I just kissed her right there in the corridor..." + her "And she kissed me back but..." ("open", "base", "base", "mid") + her "It got weird really fast..." ("angry", "narrow", "base", "down") + her "The way she kissed me..." + her "She did it like a boy would, [genie_name]..." ("angry", "base", "base", "mid") + her "Aggressive but confident..." ("angry", "narrow", "base", "down") + her "Naturally a small group of spectators gathered up around us right away..." ("upset", "closed", "base", "mid") + her "Mostly boys of course..." ("open", "base", "base", "mid", cheeks="blush") + her "Some of them even cheered us on..." ("open", "happyCl", "worried", "mid", cheeks="blush") + her "....." ("base", "squint", "base", "mid") + her "By the way, the girl I kissed, [genie_name]..." + gen "*Hmm*...?" ("base", xpos="far_left", ypos="head") + her "She is one of those unpopular girls..." ("open", "closed", "base", "mid") + her "I know that other students make fun of her sometimes..." + her "But today changed everything..." ("base", "squint", "base", "mid") + her "I Single-handedly turned that girl from a social outcast..." + her "Into \"that lesbian girl who made out with Hermione Granger\"!" ("smile", "base", "angry", "mid") + gen "Wow... You are just like some kind of hero or something..." ("base", xpos="far_left", ypos="head") + her "I suppose I am, [genie_name]..." ("base", "narrow", "base", "mid_soft") + her "I changed that poor girl's life..." + gen "Now you are just pulling on my heartstrings..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_kiss + +label hg_pr_kiss_T4_E3: + + call hg_pr_kiss_intro + + her "I did." + her ".........." ("annoyed", "base", "base", "R") + her "[genie_name]?" ("open", "closed", "base", "mid") + gen "Yes, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "May I ask you a question?" ("open", "base", "base", "mid") + gen "By all means." ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("annoyed", "narrow", "angry", "R") + call play_music("hermione") # Music + her "Why are boys so into watching girls make out with each other, [genie_name]?" ("disgust", "narrow", "base", "mid_soft") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Who knows? Boys are weird.\"": + her "Yes, they are, aren't they...?" ("angry", "narrow", "base", "down") + gen "Yes, yes..." ("base", xpos="far_left", ypos="head") + gen "And that is why young girls such as yourself..." ("base", xpos="far_left", ypos="head") + gen "Are often interested in a much older gentleman..." ("base", xpos="far_left", ypos="head") + her "??!" ("angry", "base", "base", "mid") + her "That is not what I meant, [genie_name]..." ("annoyed", "narrow", "annoyed", "mid") + + "\"You wouldn't understand, girl.\"": + her "*Hmm*..." ("upset", "closed", "base", "mid") + her "What about you, [genie_name]?" ("angry", "base", "base", "mid") + her "Were you like that when you were younger?" + gen "You mean if I enjoyed watching two girls going at it?" ("base", xpos="far_left", ypos="head") + gen "Well of course." ("base", xpos="far_left", ypos="head") + gen "I still do..." ("base", xpos="far_left", ypos="head") + her "Oh..." ("upset", "closed", "base", "mid") + + "\"Kissing girls? Where?!!\"": + her "*Tsk*!......................" ("angry", "base", "angry", "mid", emote="angry") + + her "Well, I am only asking you this, [genie_name], because..." ("open", "narrow", "worried", "down") + her "... it is sort of becoming a new trend in our school..." ("angry", "base", "base", "mid") + her "Some girls are willing to do this simply to catch the attention of the boy they fancy..." + gen "Are you one of those girls, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I suppose..." ("angry", "narrow", "base", "down") + her "I mean, only because of the favours you buy from me, [genie_name]..." ("upset", "closed", "base", "mid") + gen "Good... Tell me more." ("base", xpos="far_left", ypos="head") + her "Well, as you know, I am quite popular..." ("smile", "happyCl", "base", "mid", emote="happy") + her "So all I had to do is just mention that I would not mind doing it today..." ("base", "happyCl", "base", "mid") + her "And I had half a dozen girls lined up instantly..." + her "I chose a girl from Gryffindor of course..." ("base", "base", "base", "mid") + her "And we put on a little show right in the middle of the classroom..." ("open", "base", "base", "mid") + gen "Good... Tongue and everything?" ("base", xpos="far_left", ypos="head") + her "Tongue and everything, [genie_name]." ("annoyed", "base", "worried", "R") + gen "Nicely done." ("base", xpos="far_left", ypos="head") + her "" ("base", "base", "base", "mid") + + jump end_hg_pr_kiss + +### Tier 5 ### + +label hg_pr_kiss_T5_E1: + + call hg_pr_kiss_intro + + call play_music("hermione") # Music + her "I did, [genie_name]." ("soft", "base", "base", "mid") + gen "I'm all ears..." ("base", xpos="far_left", ypos="head") + her "Well, I kissed that annoying blond girl from Slytherin..." ("annoyed", "squint", "base", "mid") + gen "*Hmm*... \"annoying\", *huh*?" ("base", xpos="far_left", ypos="head") + gen "Because she happens to be from Slytherin." ("base", xpos="far_left", ypos="head") + her "Precisely so, [genie_name]." ("open", "closed", "base", "mid") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Don't you think that that's a little bit of prejudice on your part?" ("base", xpos="far_left", ypos="head") + gen "Or shall I say that you are being a \"housist\"?" ("base", xpos="far_left", ypos="head") + her "... a \"housist\", [genie_name]?" ("annoyed", "narrow", "annoyed", "mid") + gen "Well, you know... It's like \"sexist\" or \"ageist\"..." ("base", xpos="far_left", ypos="head") + gen "You just put an \"ist\" after something and it automatically becomes a bad thing..." ("base", xpos="far_left", ypos="head") + her "\"housist\" is not an actual word, [genie_name]..." ("soft", "base", "base", "R") + gen "It's not? Well, give it time..." ("base", xpos="far_left", ypos="head") + her ".............?" ("annoyed", "narrow", "annoyed", "mid") + gen "\"Housophobic\"...?" ("base", xpos="far_left", ypos="head") + gen "No, wait, I got it!" ("base", xpos="far_left", ypos="head") + gen "\"Housophobe\"!" ("base", xpos="far_left", ypos="head") + her "Stop it, [genie_name]. I am not any of those weird words..." ("normal", "squint", "angry", "mid") + her "Slytherins are evil and annoying. Nobody likes them, and that is a fact!" + gen "Fine, whatever. Back to the \"girl-kissing\" then." ("base", xpos="far_left", ypos="head") + her "..............." ("annoyed", "base", "worried", "R") + her "Like I was saying..." + her "I kissed that girl from Slytherin..." ("open", "base", "base", "mid") + her "Normally I would never do it, of course..." ("annoyed", "narrow", "angry", "R") + her "Not with someone from that wretched house any way..." + her "But she approached me first and practically begged me to do it with her..." ("annoyed", "narrow", "annoyed", "mid") + her "And today of all days..." ("annoyed", "narrow", "angry", "R") + her "to be honest..." + her "She was quite attractive..." ("annoyed", "narrow", "annoyed", "mid") + her "For someone from Slytherin that is..." ("upset", "closed", "base", "mid") + her "I did not ask her why she needed this so desperately..." ("open", "closed", "base", "mid") + her "She was probably just trying to boost her own popularity at my expense..." + her "Or it could also be that someone from the school staff bought this favour from her..." + her "The same way you buy favours from me, [genie_name]..." ("open", "narrow", "annoyed", "mid", cheeks="blush") + gen "(Snape?)" ("base", xpos="far_left", ypos="head") + her "If that is the case I am sure that it was professor Snape..." ("angry", "base", "angry", "mid") + gen "What? He would never..." ("base", xpos="far_left", ypos="head") + her "You should really investigate Professor Snape's activities, [genie_name]..." ("annoyed", "narrow", "angry", "R") + gen "Of course..." ("base", xpos="far_left", ypos="head") + gen "Putting him on my \"naughty boys list\" as we speak..." ("base", xpos="far_left", ypos="head") + her ".........." ("disgust", "narrow", "base", "mid_soft") + gen "What happened next, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Oh, right..." ("open", "narrow", "worried", "down") + her "Well, we made out for a while..." + her "She was very... passionate." + her "So I imagine it was quite a spectacle..." ("angry", "wink", "base", "mid") + her "The boys were cheering and whistling..." + her "So we decided to \"snowball\" a little..." ("base", "narrow", "worried", "down") + gen "I'm sorry, you decided to do what?" ("base", xpos="far_left", ypos="head") + her "To \"snowball\", [genie_name]." ("angry", "wink", "base", "mid") + her "It is when one girl spits into another girl's mouth..." ("base", "narrow", "base", "mid_soft") + her "We call it \"snowballing\"..." + her "The boys really go crazy from that for some reason..." + gen "I imagine they do..." ("base", xpos="far_left", ypos="head") + her "So she spat into my mouth..." ("open", "closed", "base", "mid") + her "And then I spat into hers..." + her "Although I would much rather spit in her face!" ("angry", "base", "angry", "mid", cheeks="blush") + her "Then she returned my spit..." ("annoyed", "narrow", "angry", "R") + her "And I had to fight the urge to slap her smug face for doing that..." ("angry", "base", "angry", "mid", cheeks="blush") + her "But I don't think the boys would appreciate that..." ("upset", "closed", "base", "mid") + gen "Well... You would be surprised..." ("base", xpos="far_left", ypos="head") + her "In any case, After that we kissed some more..." ("base", "narrow", "worried", "down") + her "And then the break was over..." + her "And we had to run to class..." ("angry", "wink", "base", "mid") + gen "*Sigh*... Nonchalant and innocent schooldays..." ("base", xpos="far_left", ypos="head") + gen "Home assignments... Classes..." ("base", xpos="far_left", ypos="head") + gen "Schoolgirls \"snowballing\" in the courtyard..." ("base", xpos="far_left", ypos="head") + gen "Well done, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "" ("grin", "base", "base", "R") + + jump end_hg_pr_kiss + +label hg_pr_kiss_T5_E2: + + call hg_pr_kiss_intro + + her "I did, [genie_name]." ("open", "closed", "base", "mid") + her "Only... *Ehm*..." ("grin", "base", "base", "R") + gen "What is it?" ("base", xpos="far_left", ypos="head") + her "Well... I have this friend..." ("base", "base", "base", "mid") + her "Her name is Ginny Weasley..." + her "And... *Ehm*..." ("base", "base", "base", "R", cheeks="blush") + her "I'm Not sure how to say this..." + gen "Just say it, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Well, we decided to skip the potions class together..." ("open", "base", "base", "mid") + her "And study for the upcoming Herbology test instead..." + her "So me and Ginny, we were studying..." + her "And we got to talking about boys..." + gen "Naturally..." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") # Music + her "And then I sort of kissed her..." ("open", "base", "base", "R", cheeks="blush") + her "And Ginny returned my kiss with such passion..." ("base", "narrow", "base", "mid_soft") + her "that we sort of ended up doing more than just kissing..." + gen "And afterwards you had a pillow fight in lingerie?" ("grin", xpos="far_left", ypos="head") + her "Err... No..." ("open", "happy", "base", "mid", cheeks="blush") + gen "What did you do then?" ("base", xpos="far_left", ypos="head") + her "I am not telling you, [genie_name]." ("base", "base", "base", "R", cheeks="blush") # :) + her "You sent me out to kiss a girl..." + her "And I did just that." + her "The rest shall remain private." ("angry", "wink", "base", "mid") + gen "Now you are just being cruel, you little witch." ("base", xpos="far_left", ypos="head") + her "My points please." ("smile", "narrow", "base", "mid_soft") + gen "Fine..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_kiss diff --git a/game/scripts/characters/hermione/events/requests/let_them_grope_you.rpy b/game/scripts/characters/hermione/events/requests/let_them_grope_you.rpy new file mode 100644 index 00000000..8a4d25f9 --- /dev/null +++ b/game/scripts/characters/hermione/events/requests/let_them_grope_you.rpy @@ -0,0 +1,452 @@ + +### Let Classmate Molest Her ### + +label hg_pr_grope: + + # Setup + $ current_payout = 25 + + if hg_pr_grope.counter == 0: + gen "{size=-4}(Tell her to go get groped by one of her classmates?){/size}" ("base", xpos="far_left", ypos="head") + menu: + "\"(Yes, let's do it!)\"": + pass + + "\"(Not right now.)\"": + jump hermione_favor_menu + + her "" (xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("base", "base", "base", "mid") + + #Intro. + if hg_pr_grope.counter == 0: + gen "You do like boys your age, don't you?" ("base", xpos="far_left", ypos="head") + her "...?" ("normal", "base", "base", "mid") + gen "One of your classmates maybe?" ("base", xpos="far_left", ypos="head") + her "Well..." ("open", "base", "worried", "R") + her "Must I really discuss things like this with you, [genie_name]?" + her "It's a bit embarrassing..." ("annoyed", "base", "worried", "R") + gen "Sure, I understand. I don't need to know the details..." ("base", xpos="far_left", ypos="head") + gen "But here is what I need you to do today, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "Go confront that boy...{w=0.5} or a girl, you fancy. The one you think is \"just so dreamy\"..." ("base", xpos="far_left", ypos="head") + her ".......?" ("open", "base", "base", "mid") + gen "And let them touch you..." ("base", xpos="far_left", ypos="head") + + if her_reputation < 3: + jump too_much_public + + her "Let them... touch me, [genie_name]?" ("open", "base", "base", "mid") + gen "Yes, touch you. The way boys touch girls?" ("base", xpos="far_left", ypos="head") + gen "How old are you, [hermione_name]? You look mature enough..." ("base", xpos="far_left", ypos="head") + gen "Haven't you had \"the talk\" with your parents already?" ("base", xpos="far_left", ypos="head") + her "\"The talk\", [genie_name]?" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "Yes, \"the talk\"! About how boys are different than the girls...?" ("base", xpos="far_left", ypos="head") + gen "Boys have a \"pee-pee\" and girls like to put that \"pee-pee\" in their mouths?" ("base", xpos="far_left", ypos="head") + her "[genie_name]!!!" ("normal", "base", "base", "mid") + her "What kind of demented parent would have such a talk with their child?" ("angry", "base", "angry", "mid") + gen "{size=-3}I wish mine did.{/size}" ("base", xpos="far_left", ypos="head") + her "I beg your pardon, [genie_name]?" ("annoyed", "squint", "base", "mid") + gen "*Ahem!* I said, a responsible and caring one!" ("base", xpos="far_left", ypos="head") + gen "Well, in any case. That is your task for today, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "Find a way to persuade one of your classmates to fondle you a little..." ("base", xpos="far_left", ypos="head") + her ".........." ("annoyed", "narrow", "angry", "R") + gen "You are a pretty girl, it shouldn't be too hard." ("base", xpos="far_left", ypos="head") + her "....................." + her "How many points would I receive after completing such a task, [genie_name]?" ("disgust", "narrow", "base", "mid_soft") + gen "*Hmm*... {number=current_payout} should do..." ("base", xpos="far_left", ypos="head") + her "{number=current_payout} house points..." ("annoyed", "narrow", "angry", "R") + her "...." + her "Well, so be it then..." ("disgust", "narrow", "base", "mid_soft") + gen "Great..." ("base", xpos="far_left", ypos="head") + her "I'd better go now. The classes are about to start..." ("angry", "base", "angry", "mid") + else: + if her_tier >= 4: + gen "[hermione_name], I need you to go out there..." ("base", xpos="far_left", ypos="head") + gen "Find a handsome guy and force yourself on him!" ("base", xpos="far_left", ypos="head") + her "You mean like..." ("base", "base", "base", "mid") + her "In a sexual way, [genie_name]?" ("angry", "wink", "base", "mid") + gen "What? No, I mean just let him get under your uniform that's all..." ("base", xpos="far_left", ypos="head") + her "Oh, I see..." ("grin", "happyCl", "worried", "mid", emote="sweat") + her "I wonder who it should be this time..." ("grin", "base", "base", "R") + her "More than one boy, is not a problem, is it, [genie_name]?" ("angry", "base", "base", "mid") + gen "A problem? Of course not!" ("base", xpos="far_left", ypos="head") + gen "If anything - it is encouraged." ("base", xpos="far_left", ypos="head") + her "Great. I will see you after the classes then, [genie_name]. As usual." ("angry", "wink", "base", "mid") + gen "Yes. Good luck." ("base", xpos="far_left", ypos="head") + elif her_tier >= 3: + gen "[hermione_name], I need you to go out there, and make one of your classmates molest you a little." ("base", xpos="far_left", ypos="head") + her "I understand, [genie_name]..." ("base", "base", "base", "mid") + gen "Off you go then." ("base", xpos="far_left", ypos="head") + her "..........." + else: + gen "How about you go let one of your classmates molest you a little again?" ("base", xpos="far_left", ypos="head") + her "........" ("upset", "closed", "base", "mid") + gen "{number=current_payout} house points, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "[genie_name], it's just..." ("annoyed", "narrow", "angry", "R") + her "I do not understand why I must do things like that..." ("annoyed", "narrow", "annoyed", "mid") + gen "To help out your house?" ("base", xpos="far_left", ypos="head") + her "That's not what I meant..." ("disgust", "narrow", "base", "mid_soft") + her "Oh, never mind..." ("annoyed", "narrow", "angry", "R") + her "The classes are about to start, I'd better go..." + gen "Will you do it?" ("base", xpos="far_left", ypos="head") + her "I don't know... Maybe..." ("disgust", "narrow", "base", "mid_soft") + + call her_walk(action="leave") + + $ hg_pr_grope.inProgress = True + jump end_hermione_event + +label end_hg_pr_grope: + $ gryffindor += current_payout + + gen "The Gryffindor house gets {number=current_payout} points!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." + + label .no_points: + + call her_walk("door", "base") + pause.2 + + # Inner monologue + if hg_pr_grope.counter == 1: + show screen blktone + with d3 + + her "(Why did I agree to this...)" ("disgust", "base", "worried", "down", ypos="head", flip=False, trans=d3) + + hide screen blktone + with d3 + + call her_chibi("leave") + + label .quick_end: + + # Increase Points + if not hg_pr_grope.is_tier_complete(): + $ her_reputation += 1 + + $ hg_pr_grope.inProgress = False + jump end_hermione_event + +label hg_pr_grope_intro: + call her_walk(action="enter", xpos="mid", ypos="base") + her "Good evening, [genie_name]." ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Did you finish your task?" ("base", xpos="far_left", ypos="head") + her "I did, just as you asked [genie_name]..." + + if hg_pr_grope.is_tier_complete(): + menu: + "\"Great. Here are your points.\"": + jump end_hg_pr_grope + + "\"Give me the details.\"": + pass + + stop music fadeout 3.0 + + if hg_pr_grope.counter == 1: + her "......" ("annoyed", "narrow", "angry", "R") + her "I... *Uhh*..." ("soft", "base", "base", "R") + + gen "Did you let some lucky guy feel you up or what?" ("base", xpos="far_left", ypos="head") + + return + +### Tier 2 ### + +label hg_pr_grope_T2_E1: + + call hg_pr_grope_intro + + her "Well, there is not much to tell..." + her "I told that one guy I know that he could touch me a little if he wants..." ("open", "base", "base", "mid") + her "He thought I was joking at first..." ("annoyed", "base", "worried", "R") + her "So embarrassing..." ("normal", "happyCl", "worried", "mid") + gen "So, did he cop a feel or not?" ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") # Music + her "He did..." ("normal", "happyCl", "worried", "mid") + gen "Well, where did he touch you, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... My legs..." ("annoyed", "base", "worried", "R") + her "And my breasts a little I suppose..." + gen "That's all?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]..." ("open", "base", "base", "mid") + her "It's getting late... I think I'd better leave now..." ("normal", "happyCl", "worried", "mid") + her "I'm sorry, [genie_name]..." ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "Nothing to be sorry about, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "You did good. This will do for now." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_grope + +label hg_pr_grope_T2_E2: + + call hg_pr_grope_intro + + her "I did, but it was all very awkward and embarrassing..." ("annoyed", "narrow", "angry", "R") + gen "That's the whole point of it, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "Tell me where you were touched today..." ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") # Music + her "*Ehm*..." + her "Well, he touched me under my skirt a little..." ("angry", "base", "base", "mid") + her "Then I let him rub my..." + her "... my c-crotch through my panties, [genie_name]." ("angry", "narrow", "base", "down") + gen "Very good... And what happened next?" ("base", xpos="far_left", ypos="head") + her "He just sort of started... Touching himself [genie_name]." ("open", "happyCl", "worried", "mid") + her "So, I decided to leave..." + gen "I see..." ("base", xpos="far_left", ypos="head") + her "............." ("normal", "happyCl", "worried", "mid") + + jump end_hg_pr_grope + +label hg_pr_grope_T2_E3: + + call hg_pr_grope_intro + + call play_music("playful_tension") # Music + her "I led this one guy from Hufflepuff to an empty classroom and I told him that he can touch me if he wants." ("open", "base", "base", "mid") + her "That I don't mind..." + her "..........." ("annoyed", "base", "worried", "R") + gen "And?" ("base", xpos="far_left", ypos="head") + her "Well, he did touch me a little at first..." ("open", "base", "base", "mid") + her "......" ("normal", "happyCl", "worried", "mid") + gen "Don't make me pull every word out of you, [hermione_name]!" ("base", xpos="far_left", ypos="head") + gen "What happened?" ("base", xpos="far_left", ypos="head") + her "Well..." ("open", "narrow", "worried", "down") + + stop music fadeout 1.0 + + her "I think he was more interested in {size=+5}me{/size} molesting {size=+5}him{/size}..." + her "He asked me to call him a \"sissy boy\"..." ("upset", "wink", "base", "mid") + call play_music("despair") # Music + her "And he kept on reassuring me that he has a very small penis..." ("open", "base", "worried", "down") + her "He just kept repeating that *sob*!..." ("angry", "base", "base", "mid", tears="soft") + her "Why would anyone be like this?" ("angry", "base", "base", "mid", tears="soft") + her "*Sob*! I Could not stay in his company a moment longer, so I just ran." + gen "I'm sorry to hear this..." ("base", xpos="far_left", ypos="head") + her "It was truly awful, [genie_name]..." ("angry", "base", "base", "mid", tears="soft") + gen "There, there..." ("base", xpos="far_left", ypos="head") + her "*Sob*!" ("normal", "base", "base", "R", tears="soft") + gen "Will ten extra points make you feel better?" ("base", xpos="far_left", ypos="head") + her "*huh*? That would be very sweet of you [genie_name]." ("soft", "base", "base", "mid", tears="soft") + gen "Of course... Don't mention it." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]..." ("base", "base", "worried", "mid", cheeks="blush", tears="soft") + + $ current_payout += 10 + + jump end_hg_pr_grope + +### Tier 3 ### + +label hg_pr_grope_T3_E1: + + call hg_pr_grope_intro + + call play_music("playful_tension") # Music + her "Well... There is not much to tell..." ("open", "closed", "base", "mid") + her "I found this one boy from Ravenclaw..." + her "Led him to one of the empty classrooms in the eastern wing..." + her "He thought I wanted to make out with him..." + her "But I told him that I just want him to touch me..." + her "... so he did." ("normal", "happyCl", "worried", "mid") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "Well done, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Will I be getting my points now?" ("upset", "wink", "base", "mid") + gen "In a minute, [hermione_name]. I have a question I would like to ask you before that." ("base", xpos="far_left", ypos="head") + her "Yes?" ("open", "base", "base", "mid") + gen "Did you enjoy it?" ("base", xpos="far_left", ypos="head") + gen "Did it feel good to be touched by that boy?" ("base", xpos="far_left", ypos="head") + her "Oh..." ("open", "closed", "base", "mid") + her "Well, he was rather handsome I suppose..." + her "I didn't hate it, if that's what you mean, [genie_name]..." ("upset", "closed", "base", "mid") + gen "I see..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_grope + +label hg_pr_grope_T3_E2: + + call hg_pr_grope_intro + + her "Well..." ("open", "closed", "base", "mid") + her "I'm not sure whether or not this counts, but..." + her "During Herbology class today..." + call play_music("hermione") # Music + her "I let this one boy slide his hand under my skirt..." ("upset", "wink", "base", "mid") + her "So while Professor Sprout explained the differences between {i}mandrake{/i} and {i}mandragore{/i}..." + her "--Something I already knew of course--..." ("open", "squint", "base", "mid") + her "I let my lab partner grab my buttocks once..." ("upset", "wink", "base", "mid") + her "And that is all..." + + menu: + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + "\"Kudos to you for doing this during class.\"": + her "Thank you, [genie_name]." ("base", "happyCl", "base", "mid") + gen "I say you deserve to get paid." ("base", xpos="far_left", ypos="head") + + "\"You can do better than that, [hermione_name].\"": + gen "I'm afraid I cannot pay you." ("base", xpos="far_left", ypos="head") + her "Yes, I know, [genie_name]. I am sorry." ("open", "base", "base", "mid") + gen "Just make sure you try harder next time." ("base", xpos="far_left", ypos="head") + her "I will, [genie_name]." + + jump end_hg_pr_grope.no_points + + jump end_hg_pr_grope + +label hg_pr_grope_T3_E3: + + call hg_pr_grope_intro + + her "................." ("annoyed", "narrow", "angry", "R") + gen "???" ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") # Music + her "I don't want to talk about it, [genie_name]..." ("annoyed", "narrow", "angry", "R") + gen "What happened, [hermione_name]. Spit it out." ("base", xpos="far_left", ypos="head") + her "................." ("annoyed", "narrow", "annoyed", "mid") + her "But... it's so embarrassing..." ("open", "base", "worried", "mid") + her "Do I really have to, [genie_name]?" ("normal", "happyCl", "worried", "mid") + gen "Yes, I happen to love embarrassing things!" ("grin", xpos="far_left", ypos="head") + her "................." ("annoyed", "narrow", "angry", "R") + her "Well, alright..." + her "I approached this one guy that I always found attractive..." + her "Managed to muster up enough courage to ask him to follow me..." + her "Normally I wouldn't dare..." ("open", "base", "base", "mid") + her "But the fact that I was doing this as a task entrusted to me by someone else..." + her "It made it easier somehow..." + gen "Happy to help, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "I led him to the library..." ("open", "narrow", "worried", "down") + her "We found a secluded spot behind one of the book shelves..." + her "And I told him that he can touch me wherever he wants..." + her "And..." + her ".........." ("clench", "narrow", "base", "down") + gen "What?" ("base", xpos="far_left", ypos="head") + her "....................." ("normal", "happyCl", "worried", "mid") + call play_music("despair") # Music + her "He started to touch my... feet, [genie_name]." ("scream", "happyCl", "worried", "mid") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + gen "Your \"Feet\"? Is that what zoomers call tits these days?" ("base", xpos="far_left", ypos="head") + her "I wish, [genie_name]..." ("disgust", "narrow", "base", "mid_soft") + her "He asked me to take off my shoes..." + her "Then he..." + her "He started to smell my toes, [genie_name]!" ("angry", "base", "base", "mid", tears="soft") + her "I felt so... violated!" ("angry", "base", "base", "mid", tears="soft") + gen "So he didn't touch your tits, or your butt?" ("base", xpos="far_left", ypos="head") + gen "Or even in-between your thighs?!" ("angry", xpos="far_left", ypos="head") + her "No, [genie_name]... *sob*!" ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + gen "Alright, then what happened?" ("base", xpos="far_left", ypos="head") + her "Nothing! I couldn't bear the humiliation... I just ran..." ("angry", "narrow", "base", "mid", cheeks="blush", tears="crying") + her "I even left my shoes behind and had to come back later to pick them up..." + her "*Sob*!............" ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Well, you did get molested..." ("base", xpos="far_left", ypos="head") + gen "Although in a rather unconventional manner..." ("base", xpos="far_left", ypos="head") + her "*Sob*! I wish he would have just touched my breasts like any normal boy would, [genie_name]... *Sob!*" ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + gen "There, there..." ("base", xpos="far_left", ypos="head") + gen "You earned your points today..." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_grope + +### Tier 4 - ### + +label hg_pr_grope_T4_E1: + + call hg_pr_grope_intro + + her "......" ("annoyed", "base", "worried", "R") + her "Well..." ("open", "base", "base", "mid") + her "During the potions class today..." + her "I wrote a note on a piece of paper..." + her "I was about to slide it to my lab partner's coat when..." + call play_music("hermione") # Music + her "Professor Snape snatched it right out of my hand..." ("annoyed", "narrow", "angry", "R") + her "He then read it out aloud for the entire class..." ("annoyed", "narrow", "annoyed", "mid", cheeks="blush") + her "I thought I was going to die from embarrassment..." ("disgust", "narrow", "annoyed", "down", cheeks="blush") + gen "What did the note say?" ("base", xpos="far_left", ypos="head") + her "Well..." ("open", "narrow", "worried", "down", cheeks="blush") + her "It said... \"You can touch my butt if you want, I bet professor Snape would never notice\"." ("open", "narrow", "worried", "R", cheeks="blush") + her "Everyone was laughing..." ("angry", "narrow", "base", "down", cheeks="blush") + her "It was so embarrassing..." + her "I really hate professor Snape, [genie_name]..." ("angry", "base", "angry", "mid", cheeks="blush") + gen "What happened then?" ("base", xpos="far_left", ypos="head") + her "Nothing..." ("open", "narrow", "worried", "down") + call play_music("playful_tension") # Music + her "But when the class was over..." + her "These two nasty-looking boys from Slytherin cornered me..." + her "Actually they weren't mean to me or anything..." + her "So we just waited for everyone to leave the classroom..." + her "And then I let them touch me..." ("angry", "base", "base", "mid") + her "They touched me everywhere, [genie_name]..." + gen "\"Everywhere\", *huh*?" ("base", xpos="far_left", ypos="head") + her "Yes...{w=0.5} Everywhere,{w=0.5} [genie_name]..." ("soft", "narrow", "annoyed", "up") + her "There were hands under my skirt, under my shirt..." ("base", "narrow", "base", "mid_soft") + her "And then I started to breathe heavily..." + her "So one of them just put his hand over my mouth..." ("soft", "narrow", "annoyed", "up") + her "And their hands were so... thorough..." + her "My head started to spin..." + her "It was most exhilarating, [genie_name]." ("base", "narrow", "base", "mid_soft") + gen "Very good, [hermione_name]. Very good indeed." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_grope + +label hg_pr_grope_T4_E2: + + call hg_pr_grope_intro + + her "Actually something quite unexpected happened to me today, [genie_name]..." ("base", "base", "base", "mid") + her "Right after the D.A.D.A class..." + gen "D.A.D.A?" ("base", xpos="far_left", ypos="head") + her "Defence Against Dark Arts, [genie_name]." ("open", "closed", "base", "mid") + her "Anyway..." + her "This stocky Hufflepuff boy came up to me..." ("open", "base", "base", "R") + call play_music("playful_tension") # Music + her "He said someone told him that I let boys touch me..." ("angry", "wink", "base", "mid") + her "Normally I would deny everything..." ("base", "narrow", "base", "mid_soft") + her "But I decided not to waste the opportunity..." + her "I took the boy to a quiet spot and let him touch me..." ("base", "narrow", "base", "up") + her "I let him run his hands up and down my thighs..." + her "I let him fondle my breasts..." + her "All the usual things..." ("base", "narrow", "base", "mid_soft") + gen "Well done, [hermione_name]." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_grope + +label hg_pr_grope_T4_E3: + + call hg_pr_grope_intro + + her "Well..." ("upset", "wink", "base", "mid") + her "I did what you told me to do, [genie_name]..." + her "But... it sort of... *Ehm*..." + her "Well, it sort of escalated into something else..." ("base", "narrow", "base", "up") + call play_music("playful_tension") # Music + gen "*Hmm*?" ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("upset", "wink", "base", "mid") + her "I sort of... got caught while I was letting this one boy fondle my breasts..." + gen "You got caught? By one of the teachers?" ("base", xpos="far_left", ypos="head") + her "No, [genie_name]..." ("base", "base", "base", "mid") + her "By the boy's girlfriend..." ("smile", "base", "base", "R") + gen "Interesting..." ("base", xpos="far_left", ypos="head") + her "She was furious with him at first..." ("angry", "base", "base", "mid") + her "But then..." ("angry", "wink", "base", "mid") + her "*Ehm*... She started to touch my breasts as well..." ("base", "narrow", "worried", "down") + her "Almost the same way her boyfriend did just a moment ago..." ("smile", "base", "angry", "mid") + her "Then she turned to him and she said..." + her "\"I love you baby, and I want to share everything with you\"..." ("open", "closed", "base", "mid") + her "\"... And that includes your whores\"." + her "I did not appreciate being called a whore of course..." ("angry", "base", "base", "mid") + her "But that was such a sweet and romantic gesture..." ("base", "base", "base", "mid") + her "Wouldn't you agree, [genie_name]?" + gen "Totally..." ("base", xpos="far_left", ypos="head") + gen "Seems that true love {size=+5}does{/size} exist after all." ("base", xpos="far_left", ypos="head") + gen "Then what happened?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... Well..." ("grin", "happyCl", "worried", "mid", emote="sweat") + her "They both started touching me a little again..." ("upset", "wink", "base", "mid") + her "And then they started kissing in front of me..." ("annoyed", "base", "worried", "R") + her "A moment later their hands were all over each other." + her "I felt like the third wheel in that situation, so I just slipped away quietly..." + gen "*Emm*..." ("base", xpos="far_left", ypos="head") + gen "Perhaps if you've stayed a little longer... or perhaps taken the initiative..." ("base", xpos="far_left", ypos="head") + gen "No matter." ("base", xpos="far_left", ypos="head") + + jump end_hg_pr_grope diff --git a/game/scripts/characters/hermione/events/shaming/hg_ps_HiddenBlowjob_INCOMPLETE.txt b/game/scripts/characters/hermione/events/shaming/hg_ps_HiddenBlowjob_INCOMPLETE.txt new file mode 100644 index 00000000..b909afbb --- /dev/null +++ b/game/scripts/characters/hermione/events/shaming/hg_ps_HiddenBlowjob_INCOMPLETE.txt @@ -0,0 +1,124 @@ + + +#Blowjob in front of Luna +#Genie tells Hermione to go fetch a student and that she will be sucking him off while he talks to them + +#Three variants, each with a differing level of exhibitionism +#1 Hermione is as silent as possible, Luna almost completely unaware +#2 Hermione quite loud, Luna actively aware that something is wrong +#3 Hermione crawls out from under the desk covered in Genie's cum trying to pass it off +label hg_ps_HiddenBlowjob: + jump hg_ps_HiddenBlowjob_1 + + +label hg_ps_HiddenBlowjob_1: + gen "[hermione_name], I have an interesting proposition for you today." ("base", xpos="far_left", ypos="head") + her "Is it sex?" + gen "Not quite." ("base", xpos="far_left", ypos="head") + her "Then what is it?" + gen "Well it involves you bringing in a friend." ("base", xpos="far_left", ypos="head") + her "A friend?!" + her "I can't let one of my friends find out what we do here!" + gen "Don't worry, this isn't about them finding out." ("base", xpos="far_left", ypos="head") + her "Then what is it about?" + gen "It's about you learning to be more comfortable with yourself around your peers." ("base", xpos="far_left", ypos="head") + her "Comfortable with myself?" + gen "Yes. To do this I'll need you to bring a friend of yours to my office." ("base", xpos="far_left", ypos="head") + her "What for?" + gen "So I can talk to them." ("base", xpos="far_left", ypos="head") + her "That doesn't sound too bad..." + gen "While you suck me off." ("base", xpos="far_left", ypos="head") + her "What?! There's no way I'm doing that!" + gen "Why not?" ("base", xpos="far_left", ypos="head") + her "Why not? Because my reputation would be ruined! I'm not blowing you in front of other students, let alone one of my friends!" + gen "What if they didn't know you were there?" ("base", xpos="far_left", ypos="head") + her "How so? I can't just be hidden behind you while you look at a cupboard." + gen "Well, the area under my desk is quite spacious." ("base", xpos="far_left", ypos="head") + her "Hmmmmm, I'm not sure, what if they overheard us?" + gen "Just do it quietly" ("base", xpos="far_left", ypos="head") + her "I can't I'm going to do it properly." + #Needs more dialogue where Genie convinces her to accept, and Hermione agrees. + gen "Well surely you can think of someone that'll be suitable for the position?" ("base", xpos="far_left", ypos="head") + her "Hmmmmm" + her "Bingo!" + gen "Have you suddenly remembered that one of your friends is a deaf mute?" ("base", xpos="far_left", ypos="head") + her "Better [genie_name], Luna Lovegood." + gen "Lovegood? That can't be a real name." ("base", xpos="far_left", ypos="head") + her "It is." + gen "Well then why her?" ("base", xpos="far_left", ypos="head") + her "Let's just say that people are less likely to believe her if she tries to spread rumours." + gen "Hmmm, I'm not sure if I agree with--" ("base", xpos="far_left", ypos="head") + her "She's also a blonde with big tits." + gen "Perfect! Tell her to drop by my office." ("base", xpos="far_left", ypos="head") + her "As soon as you tell me, what to tell her, what you want to see her for." + gen "Tell her I'd like to discuss the behaviour of certain students at the school" ("base", xpos="far_left", ypos="head") + her "Ok, I'll tell her to come to your office in about ten minutes." + her "That should give me time to get back here first." + #Hermione walks out fade to black + her "It's tiny under here!" + gen "What are you talking about, there's tons of space!" ("base", xpos="far_left", ypos="head") + her "Not with your legs either side of me." + "*Knock-knock-knock*" + gen "{size=-5}Shhhh, she's here!{/size}" ("base", xpos="far_left", ypos="head") + her "What should I do?" + gen "Come in!" ("base", xpos="far_left", ypos="head") + #Luna walks in + "As Luna walks in you grab the back of Hermione's head and force it down the length of your cock." + her "!!!!" + lun "Hello Professor, Hermione Granger said that you wanted to see me?" + gen "Ah yes, Miss Lovegood (pffft), right on time." ("base", xpos="far_left", ypos="head") + "You ease off on Hermione, allowing her to move at her own pace." + her "mmmmm" + lun "What did you want to talk to me about sir?" + + gen "I'd like to talk to you about a series of uniform changes that are taking place in the school." ("base", xpos="far_left", ypos="head") + lun "Are you referring to Miss Granger, Professor?" + "You feel Hermione tense up under the desk." + gen "Indeed I am." ("base", xpos="far_left", ypos="head") + "You slide your hips forward, pinning Hermione's head between your cock and the back of the desk." + gen "Have you noticed any difference in the uniform of Miss Granger?" ("base", xpos="far_left", ypos="head") + lun "I have sir." + gen "Please, describe these changes to me in detail, I have a feeling that she may change what she wears when she visits me." ("base", xpos="far_left", ypos="head") + lun "Well for one her skirt is ridiculously short!" + gen "How short?" ("base", xpos="far_left", ypos="head") + lun "You can see her panties sir!" + "You start thrusting into hermione's mouth" + gen "Is that so?" ("base", xpos="far_left", ypos="head") + lun "It is, though only some of the time." + her "*glck*" + gen "Some of the time?" ("base", xpos="far_left", ypos="head") + lun "Well other times she doesn't even wear them." + "You feel Hermione start to speed up." + gen "Really?" ("base", xpos="far_left", ypos="head") + lun "really. Don't even get me started on her tops." + "You reach under the desk and grab the back of Hermione's head." + lun "Is everything ok sir?" + gen "Yes, yes, just scratching my leg, Please, go on." ("base", xpos="far_left", ypos="head") + lun "Well sometimes she only wears her school vest." + gen "And can you see anything inappropriate?" ("base", xpos="far_left", ypos="head") + lun "She's showing off a lot of cleavage sir." + gen "That would be problematic." ("base", xpos="far_left", ypos="head") + "You pull her forward, until you can feel her nose press into your crotch." + her "!!!" + gen "And how do you think Ms Granger should be punished?" ("base", xpos="far_left", ypos="head") + "You let hermione slide back." + her "*slurp*" + lun "Well she ties it in a knot so it's barely even there!" + gen "" ("base", xpos="far_left", ypos="head") + + #Hermione says goodbye bla bla bla + "Hermione leaves your office." + + jump hg_ps_HiddenBlowjob_complete + + + + +label hg_ps_HiddenBlowjob_complete: + jump hg_ps_HiddenBlowjob_complete_1 + + +label hg_ps_HiddenBlowjob_complete_1: + + jump end_hermione_event + diff --git a/game/scripts/characters/hermione/events/shaming/hg_ps_WalkOfShame_INCOMPLETE.txt b/game/scripts/characters/hermione/events/shaming/hg_ps_WalkOfShame_INCOMPLETE.txt new file mode 100644 index 00000000..8c48a5b0 --- /dev/null +++ b/game/scripts/characters/hermione/events/shaming/hg_ps_WalkOfShame_INCOMPLETE.txt @@ -0,0 +1,36 @@ + + +### Walk Of Shame ### + +label hg_ps_walk: #This will become more intense as the wear a shorter skirt and wear a sluttier shirt favours are completed + + gen "[hermione_name], what classes do you have today?" ("base", xpos="far_left", ypos="head") + her "What? Since when have you taken an interest in my education?" ("normal", "squint", "angry", "mid") + gen "I'm your headmaster, of course I care about your studies." ("base", xpos="far_left", ypos="head") + her "Hmmmm..." ("normal", "squint", "angry", "mid") + her "Well I have potions class with Professor Snape in the morning and then defence against the dark arts after lunch." ("normal", "squint", "angry", "mid") + gen "So you have Snape as your teacher today?" ("base", xpos="far_left", ypos="head") + her "Yes [genie_name]." ("normal", "squint", "angry", "mid") + gen "That's good. Today I have a task for you to complete." ("base", xpos="far_left", ypos="head") + her "A task?" ("normal", "squint", "angry", "mid") + gen "Yes, I'd like you to attend class." ("base", xpos="far_left", ypos="head") + her "Is that all?" ("normal", "squint", "angry", "mid") + gen "Without your shirt." ("base", xpos="far_left", ypos="head") + her "WHAT?" ("normal", "squint", "angry", "mid") + her "Why on earth would I do that?" ("normal", "squint", "angry", "mid") + gen "Because I asked you to." ("base", xpos="far_left", ypos="head") + her "... but what about Snape? What about my classmates?" ("normal", "squint", "angry", "mid") + gen "Don't worry about Snape, I'm sure that he's used to your behaviour by now." ("base", xpos="far_left", ypos="head") + gen "And as for your classmates, is there anyone that will be surprised?" ("base", xpos="far_left", ypos="head") + her "Well Ginny would be..." ("normal", "squint", "angry", "mid") + gen "What? Shocked to find out that her friend is a massive slut who shows herself off to anyone and everyone any chance she can get?" ("base", xpos="far_left", ypos="head") + gen "Look at your neck [hermione_name], look at what you are wearing. I'd be surprised if there is anyone in the school who doesn't know what a whore you are." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "squint", "angry", "mid") + ">She holds back tears as she hands you her shirt." + her "I suppose that you're right [genie_name]." ("normal", "squint", "angry", "mid") + her "Well I best be off... Can't be late for class." ("normal", "squint", "angry", "mid") + ">She leaves your office reluctantly." + $ hg_ps_walk.inProgress = True + +label hg_ps_walk_complete:#Returns to your office after being made walk around the school with no shirt + return diff --git a/game/scripts/characters/hermione/events/shaming/panty_thief.rpy b/game/scripts/characters/hermione/events/shaming/panty_thief.rpy new file mode 100644 index 00000000..1a4f2c49 --- /dev/null +++ b/game/scripts/characters/hermione/events/shaming/panty_thief.rpy @@ -0,0 +1,460 @@ + +label hg_ps_get_panties: + # Public shaming: Panty thief + hide hermione_main + with d3 + gen "{size=-4}(I could ask her to take off her panties and give them to me before she leaves for classes today.){/size}" ("base", xpos="far_left", ypos="head") + + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I am listening, [genie_name]." (xpos="right",ypos="base") + gen "I will need your panties..." ("base", xpos="far_left", ypos="head") + + if not hg_strip.trigger: + jump too_much + + elif hg_ps_get_panties.points == 0: + stop music fadeout 10.0 + + her "W-what?" ("open", "base", "worried", "mid") + her "My... panties...?" + her "[genie_name], this is--" + gen "This is the favour I will be buying from you today, [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "If you are not interested you are more than welcome to leave." ("base", xpos="far_left", ypos="head") + her "No, I am interested. I am.... it's just..." + her "You need my..." + + call play_music("chipper_doodle") + + her "... panties, [genie_name]?" ("angry", "base", "angry", "mid") + gen "Yes I do..." ("base", xpos="far_left", ypos="head") + her "May I ask what you are planning to do with them...?" ("disgust", "narrow", "base", "mid_soft") + gen "*Ehm*... I'm conducting research..." ("base", xpos="far_left", ypos="head") + her "But this is kind of inappropriate, don't you think?" + gen "But don't you hate it that some of the girls from Slytherin..." ("base", xpos="far_left", ypos="head") + gen "Are selling favours for house points, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes I do!" ("angry", "base", "angry", "mid") + her "(Those Slytherin tramps have no dignity.)" ("annoyed", "narrow", "angry", "R") + gen "Well, there you go then!" ("base", xpos="far_left", ypos="head") + her "*huh*?" ("disgust", "narrow", "base", "mid_soft") + gen "Beat them at their own game!" ("base", xpos="far_left", ypos="head") + her "What?" ("open", "base", "base", "mid") + gen "Yes! Don't just put the Gryffindor house back on top..." ("base", xpos="far_left", ypos="head") + gen "But do it by beating them at their own game!" ("base", xpos="far_left", ypos="head") + her "[genie_name]..." ("open", "base", "worried", "mid") + gen "As headmaster, I cannot play favourites. But you know how I feel about Gryffindor..." ("base", xpos="far_left", ypos="head") + gen "I wish I could give you the points but that would ruin the system..." ("base", xpos="far_left", ypos="head") + hide hermione_main + with d3 + + if hermione.is_worn("panties"): + $ hermione.strip("robe", "accessory") + $ hermione.strip("panties") + call nar(">Suddenly Hermione bends forward and takes off her panties.","start") + else: + if hermione.is_any_worn("robe", "top", "bottom"): + call nar(">Suddenly Hermione reaches inside one of her hidden pockets.","start") + else: + call nar(">Suddenly Hermione reaches inside--","start") + call nar(">Wait, she's not exactly clothed...{w=0.4} Well then...") + call nar(">By some kind of magic, a pair of panties suddenly appears in her hand.") + + call nar(">She extends her arm to you, clutching a little piece of fabric in her fist.","end") + gen "??!" ("base", xpos="far_left", ypos="head") + her "Just take them, [genie_name]..." ("mad", "base", "worried", "mid", tears="soft") + call nar(">Slightly surprised, you take the panties from her hand.") + gen "What? When did you?" ("base", xpos="far_left", ypos="head") + her "Your speech was so moving..." + her "You are so right, [genie_name]! I shall beat them at their own game!" + her "My classes are about to start, so I should probably go now..." + her "..........." ("normal", "base", "base", "R",tears="soft") + her "I hope nobody will notice that I have no underwear on today..." ("annoyed", "base", "worried", "R") + her "Oh, and I will be back tonight to pick them up, [genie_name]." ("open", "base", "base", "mid") + gen "Of course. Your panties will be right here on my desk, waiting for you..." ("base", xpos="far_left", ypos="head") + her "............." ("angry", "happyCl", "worried", "mid",emote="sweat") + + else: + label dev: + if hg_ps_get_panties.points > 0: + her "Again, [genie_name]?" + gen "Yes, again..." ("base", xpos="far_left", ypos="head") + + her "Here..." + + if her_whoring >= 12: + hide hermione_main + with d3 + + if hermione.is_worn("panties"): + $ hermione.strip("robe", "accessory") + $ hermione.strip("panties") + call nar(">Suddenly Hermione bends forward and takes off her panties.", "start") + else: + if hermione.is_any_worn("top", "bottom"): + call nar(">Hermione pulls her panties out of her pocket.", "start") + else: + call nar(">Suddenly Hermione reaches inside--","start") + call nar(">Wait, she's not exactly clothed...{w=0.4} Well then...") + call nar(">By some kind of magic, a pair of panties suddenly appears in her hand.") + + call nar(">She casually throws them on your desk.", "end") + + gen "What?" ("base", xpos="far_left", ypos="head") + her "Yes, I had a feeling that you might ask for these today, [genie_name]." ("base", "base", "base", "mid") + gen "A feeling?" ("base", xpos="far_left", ypos="head") + her "Well, to be completely honest I just do not bother to wear them much anymore..." ("grin", "base", "base", "R") + + if hermione.is_equipped("panties"): + her "Unless I'm asked to, that is..." + + else: + hide hermione_main + with d3 + + if hermione.is_worn("panties"): + $ hermione.strip("robe", "accessory") + $ hermione.strip("panties") + call nar(">Hermione takes off her panties without hesitation.", "start") + else: + if hermione.is_any_worn("top", "bottom"): + call nar(">Suddenly Hermione reaches inside one of her hidden pockets.", "start") + else: + call nar(">Suddenly Hermione reaches inside--", "start") + call nar(">Wait, she's not exactly clothed...{w=0.4} Well...") + call nar(">Magically, a pair of panties suddenly appears in her hand.") + + call nar(">She casually throws the offending underwear on your desk.", "end") + + her "Classes are about to start, so I'd better go now..." ("soft", "base", "base", "mid") + + call her_walk(action="leave") + + call give_reward(">You have acquired Hermione's panties!", "interface/icons/panties.webp") + $ hg_ps_get_panties.inProgress = True + + jump end_hermione_event + + +label hg_cum_on_panties_response: + # Hermione responds the cum on her panties + + call give_reward("> You hand over the panties...", "interface/icons/panties_cum.webp") + + if her_tier == 2: + her "*Hmm*....?" ("annoyed", "narrow", "worried", "down",xpos="right",ypos="base") + her "[genie_name]? What is this?" ("angry", "base", "angry", "mid") + her "What have you done to them?" + her "They are covered in something slimy..." ("normal", "squint", "angry", "mid") + + menu: + "\"An experiment went wrong\"": + her "An experiment went wrong, [genie_name]?" ("open", "base", "base", "mid") + gen "Yes... Or maybe I should rather say..." ("base", xpos="far_left", ypos="head") + gen "\"An experiment went very right\"? *He-he*..." ("grin", xpos="far_left", ypos="head") + her ".....................?" ("normal", "squint", "angry", "mid") + her "What kind of experiment was it?" + gen "What? Oh..." ("base", xpos="far_left", ypos="head") + gen "Some top secret research I'm conducting." ("base", xpos="far_left", ypos="head") + gen "I can't discuss it with a student." ("base", xpos="far_left", ypos="head") + her "................................" ("angry", "base", "angry", "mid") + "\"You gave them to me like this!\"": + her "I most certainly did not, [genie_name]!" + her ".........................." + + her "Well, these will require some serious cleaning before I can put them on again..." ("annoyed", "narrow", "worried", "down") + gen "Or you could put them on now." ("base", xpos="far_left", ypos="head") + her "What?" ("open", "base", "base", "mid") + her "I really would rather not, [genie_name]..." ("soft", "base", "base", "R") + + menu: + "\"Put them on or lose the points!\"": + $ her_mood +=7 + her "What?" ("scream", "wide", "base", "mid") + her "[genie_name], you are joking, right?" + gen "I am not..." ("base", xpos="far_left", ypos="head") + her "B-but..." ("open", "base", "base", "mid") + her "........................................" ("normal", "happyCl", "worried", "mid") + her "{size=-5}Must you always have your way, [genie_name]?{/size}" ("angry", "base", "angry", "mid") + gen "What was that, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "It's nothing, [genie_name]." ("scream", "closed", "angry", "mid") + her "Putting my panties back on!" + hide hermione_main + call nar(">Hermione hesitantly puts on her panties.","start") + + if hermione.is_equipped("panties"): + $ hermione.wear("panties") + else: + $ hermione.equip(her_panties_base1) + + call nar(">A tiny stream of cum trickles down her leg.") + call nar(">Hermione looks very uncomfortable.","end") + her "......................" ("angry", "happyCl", "worried", "mid",emote="sweat") + + "\"Well, suit yourself...\"": + pass + + her "And my payment?" ("open", "base", "base", "mid") + + elif her_tier == 3: + her "My panties..." ("annoyed", "narrow", "worried", "down",xpos="right",ypos="base") + her "What happened to them [genie_name]?" ("annoyed", "narrow", "worried", "down") + + menu: + "\"An experiment went wrong.\"": + her "*Hmm*..." + her "I see..." + + "\"You gave them to me like this!\"": + her "Did I? Oh, well..." + + hide hermione_main + call nar(">Hermione gives her cum-soaked underwear a quizzical look.") + her "Seems like these will require some serious cleaning before I can put them on again..." ("annoyed", "narrow", "worried", "down") + gen "Why not put them on now?" ("base", xpos="far_left", ypos="head") + her "*Hmm*...?" ("annoyed", "squint", "base", "mid") + her "Well, I suppose I could wear them one more time before putting them into laundry..." ("annoyed", "narrow", "worried", "down") + hide hermione_main + call nar(">Hermione puts on the panties.") + + if hermione.is_equipped("panties"): + $ hermione.wear("panties") + else: + $ hermione.equip(her_panties_base1) + + her "(This feels funny...)" ("angry", "happyCl", "worried", "mid",emote="sweat") + her "And my payment, [genie_name]?" ("upset", "wink", "base", "mid") + + + elif her_tier == 4: + her "My panties..." ("annoyed", "narrow", "worried", "down",xpos="right",ypos="base") + her "They are covered in something slimy..." + her "And they smell funny..." + her "*Hmm*... That smell..." ("annoyed", "base", "worried", "R") + her "It's familiar somehow..." + her "What exactly did you do to them, [genie_name]?" ("base", "base", "base", "mid") + + menu: + "\"An experiment went wrong\"": + her "An experiment, *huh*?" + her "Of what nature?" + her "No, don't answer that... I think I know..." ("smile", "base", "base", "R") + + "\"You gave them to me like this!\"": + her "I don't think so, [genie_name]." + her "But it's alright if you don't want to tell me, [genie_name]..." + her "I think I know exactly what happened to them..." + + "\"I came all over them!\"": + her "I knew it..." ("smile", "narrow", "base", "mid_soft") + her "They reek of semen!" + + her "*Hmm*..." ("grin", "base", "base", "R") + her "Seems like these will require some serious cleaning before I can put them on..." + her "Unless you want me to put them on now, [genie_name]...?" ("smile", "narrow", "base", "mid_soft") + + menu: + "\"Yes! Put them on now, [hermione_name]!\"": + her "Well, if I must..." + + "\"I don't care. Do what you want.\"": + her "Why not put them on one more time?" + + her "I am only doing this to give my house a fair chance at winning the cup this year..." ("base", "happyCl", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + hide hermione_main + call nar(">Hermione swiftly slides into her drenched panties...") + + if hermione.is_equipped("panties"): + $ hermione.wear("panties") + else: + $ hermione.equip(her_panties_base1) + + gen "You can go now." ("base", xpos="far_left", ypos="head") + her "What about my points?" ("scream", "closed", "angry", "mid") + gen "You still want points after I just gave you a gift?" ("base", xpos="far_left", ypos="head") + her "What gift?" + gen "You're wearing it." ("base", xpos="far_left", ypos="head") + her "What, semen soaked panties?" + gen "If you'd prefer the points then just take them off." ("base", xpos="far_left", ypos="head") + her "well... I am already wearing them!" ("annoyed", "base", "worried", "R") + gen "Then say \"thank you\" for the gift." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]...{w=0.3} for the gift." ("annoyed", "squint", "base", "mid") + gen "You can go now." ("base", xpos="far_left", ypos="head") + her "Good night, [genie_name]." + + elif her_tier >= 5: + her "My panties..." ("base", "narrow", "base", "up",xpos="right",ypos="base") + her "You came all over them..." + her "*Hmm*..." ("grin", "base", "base", "R") + her "Seems like these will require some serious cleaning before I can put them on..." + her "Unless you want me to put them on now, [genie_name]...?" ("smile", "narrow", "base", "mid_soft") + + menu: + "\"Yes! Put them on now, [hermione_name]!\"": + her "Yes [genie_name]..." + her "I am only doing this to give my house a fair chance at winning the cup this year." ("smile", "happyCl", "base", "mid") + her "I don't like how it feels at all..." ("base", "narrow", "base", "up") + gen "Right..." ("base", xpos="far_left", ypos="head") + hide hermione_main + call nar(">Hermione swiftly slides her drenched panties on...") + + if hermione.is_equipped("panties"): + $ hermione.wear("panties") + else: + $ hermione.equip(her_panties_base1) + + her "..." ("soft", "narrow", "annoyed", "up") + "\"Why don't you clean them now?\"": + her "Clean them How? You don't have a wash basin in here." ("open", "base", "base", "mid") + gen "You're right, you'll have to use your mouth then." ("base", xpos="far_left", ypos="head") + her "My mouth?!" ("scream", "wide", "base", "mid") + gen "What's the big deal? It wouldn't be the first time you've tasted my cum." ("base", xpos="far_left", ypos="head") + her "It's a bit different! I wore these panties before I gave them to you." ("scream", "closed", "angry", "mid") + her "Not to mention that your cum is all cold and slimy..." ("scream", "happyCl", "worried", "mid") + gen "Well in that case hand them back." ("base", xpos="far_left", ypos="head") + her "What? Can't I just put them on?" ("angry", "wink", "base", "mid") + gen "I'm afraid not, you clean them now or you hand them back." ("base", xpos="far_left", ypos="head") + her "{size=-4}Fine...{/size}" ("angry", "narrow", "base", "down") + gen "What was that?" ("base", xpos="far_left", ypos="head") + her "I said I'll clean them ok!" ("shock", "happyCl", "worried", "mid") + gen "Well..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "down") + call nar(">Hermione reluctantly puts her cum-soaked panties in her mouth.") + $ renpy.play('sounds/gltch.ogg') + her "*Mmmmhhhhh*!" ("full_panties", "slit", "worried", "ahegao") + gen "That's it, not as bad as you thought now is it?" ("base", xpos="far_left", ypos="head") + her "..." ("full_panties", "slit", "low", "stare") + gen "Make sure you get them nice and clean now..." ("base", xpos="far_left", ypos="head") + call play_sound("gulp") + her "*gulp*" ("full_panties", "narrow", "worried", "down",cheeks="blush") + gen "That's it. Do you think they're clean yet?" ("base", xpos="far_left", ypos="head") + her "*Mmmhhhmmm*" ("full_panties", "narrow", "base", "dead") + gen "Open your mouth, [hermione_name]." ("base", xpos="far_left", ypos="head") + $ renpy.play('sounds/gltch.ogg') + her "*Ahhhhh*" ("open_wide_tongue_panties", "narrow", "annoyed", "up") + gen "That's a good girl, your panties are now nice and clean." ("base", xpos="far_left", ypos="head") + gen "You can take them out now." ("base", xpos="far_left", ypos="head") + her "...." ("angry", "happyCl", "worried", "up") + + gen "You can go..." ("base", xpos="far_left", ypos="head") + her "yes, [genie_name]..." ("angry", "narrow", "base", "down") + gen "After you say \"thank you\"..." ("base", xpos="far_left", ypos="head") + her "Thank you for what?" ("angry", "wink", "base", "mid") + gen "For my cum." ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "worried", "down") + her "Thank you for your cum, [genie_name]..." ("grin", "narrow", "base", "dead") + gen "You may go now." ("base", xpos="far_left", ypos="head") + her "Good night, [genie_name]." + + $ achievements.unlock("pantiesfap") + jump back_from_soaked + + +label hg_ps_get_panties_complete: + # Hermione returns to get her panties back + + $ hermione.strip("panties") + + call her_walk(action="enter", xpos="mid", ypos="base") + + her "Good evening, [genie_name]..." ("base", "base", "base", "mid",xpos="right",ypos="base") + call play_music("chipper_doodle") + + menu: + "\"Here are your panties.\"": + if her_panties_soaked: + jump hg_cum_on_panties_response + else: + her "And my payment?" + + "\"How was your day, [hermione_name]?\"": + if her_tier == 2: + her "Oh..." ("soft", "base", "base", "mid",xpos="base",ypos="base", trans=d5) + her "Quite ordinary actually..." + her "Although... I couldn't help but worry that somebody would notice somehow..." ("soft", "base", "base", "R") + her "....." ("annoyed", "base", "worried", "R") + her "Can I have my panties back now?" ("open", "base", "base", "mid",xpos="right",ypos="base",trans=fade) + gen "Of course..." ("base", xpos="far_left", ypos="head") + hide hermione_main + with d3 + call nar(">You give Hermione her panties back.") + if her_panties_soaked: + jump hg_cum_on_panties_response + else: + her "And my payment?" ("open", "base", "base", "mid") + + elif her_tier == 3: + her "Oh..." ("soft", "base", "base", "mid",xpos="base",ypos="base", trans=d5) + her "It was quite ordinary really..." + her "I spent some time with my classmates..." + her "And we had a short \"MRM\" meeting after that..." + her "I gave a short speech on \"Why it is wrong to sell sexual favours in exchange for house points\"..." ("open", "closed", "base", "mid") + her "I felt bad that I had to give the speech without any underwear on..." ("annoyed", "narrow", "angry", "R") + her "" (xpos="right",ypos="base",trans=fade) + + menu: + "\"You little hypocrite!\"": + $ her_mood +=5 + her "[genie_name]?" ("open", "base", "base", "mid") + gen "You sold your panties to me this morning..." ("base", xpos="far_left", ypos="head") + gen "And a couple of hours later you already publicly condemned that exact behaviour..." ("base", xpos="far_left", ypos="head") + #gen "What would you call this?" ("base", xpos="far_left", ypos="head") + #her "I know you are right, [genie_name]..." ("annoyed", "narrow", "angry", "R") + her "(But we need the points...)" ("annoyed", "narrow", "angry", "R") + her "Can I have my payment now please?" ("disgust", "narrow", "base", "mid_soft") + gen "What about your panties?" ("base", xpos="far_left", ypos="head") + her "Oh, them too of course..." ("angry", "happyCl", "worried", "mid",emote="sweat") + if her_panties_soaked: + jump hg_cum_on_panties_response + + "\"It's for the greater good...\"": + her "Exactly!" + her "We need those points badly..." + her "It is not my fault that the system is so corrupted..." + her "I shall remain a symbol of righteousness to my peers, no matter what!" ("open", "closed", "base", "mid") + her "Can I have my panties back now, please?" ("open", "base", "base", "mid") + if her_panties_soaked: + jump hg_cum_on_panties_response + else: + her "And my payment." + + elif her_tier >= 4: + her "Another ordinary day at hogwarts..." ("open", "closed", "base", "mid",xpos="base",ypos="base", trans=d5) + her "Nothing worth mentioning happened today..." + her "Although I have to admit..." ("annoyed", "base", "worried", "R") + her "It was oddly empowering to have no underwear on..." + her "*Hmm*..." + her "Can I have my panties back now please?" ("base", "base", "base", "mid",xpos="right",ypos="base",trans=fade) + gen "Of course..." ("base", xpos="far_left", ypos="head") + hide hermione_main + with d3 + call nar(">You give Hermione her panties back.") + if her_panties_soaked: + jump hg_cum_on_panties_response + else: + her "And my payment?" ("base", "base", "base", "mid") + + label back_from_soaked: + if not her_panties_soaked or her_tier < 4: + gen "Yes, yes..." ("base", xpos="far_left", ypos="head") + $ gryffindor +=15 + gen "Fifteen points to Gryffindor, [hermione_name]. Well deserved." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]..." + gen "You can go now." ("base", xpos="far_left", ypos="head") + her "Good night, [genie_name]." + #gen "Yes, good night..." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + $ hg_ps_get_panties.counter += 1 + $ hg_ps_get_panties.points += 1 + + $ hg_ps_get_panties.inProgress = False + $ her_panties_soaked = False + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/events/shaming/wear_my_cum.rpy b/game/scripts/characters/hermione/events/shaming/wear_my_cum.rpy new file mode 100644 index 00000000..c0f43f5c --- /dev/null +++ b/game/scripts/characters/hermione/events/shaming/wear_my_cum.rpy @@ -0,0 +1,813 @@ + +label hg_ps_cumslut: + # Public shaming: Wear cum + # TODO: Some events need to be rewritten so they follow cum layers limitations and actual game progression. + # Additionally, they should be converted into the event class. + hide hermione_main + with d3 + + gen "{size=-4}(Should I ask her to walk around with my cum on her?){/size}" ("base", xpos="far_left", ypos="head") + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump hermione_favor_menu + + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]." (xpos="right", ypos="base") + + call play_music("playful_tension") + gen "Today I have another small favour to ask of you." ("base", xpos="far_left", ypos="head") + her "What is it?" ("base", "base", "base", "mid") + gen "I'd like you to attend class..." ("base", xpos="far_left", ypos="head") + her "Of course..." ("base", "base", "base", "mid") + gen "After I cum on you." ("base", xpos="far_left", ypos="head") + + if her_whoring < 9: + jump too_much + elif her_whoring < 15: + jump hg_ps_cumslut_Scene_1 + elif her_whoring < 21: + jump hg_ps_cumslut_Scene_2 + else: + jump hg_ps_cumslut_Scene_3 + +label hg_ps_cumslut_Scene_1: + $ hg_ps_cumslut.inProgress = True + + her "What?!?" ("shock", "wide", "base", "stare") + her "You can't be serious!" ("angry", "base", "angry", "mid") + her "It's bad enough that I let you cum on me in private!" ("annoyed", "narrow", "annoyed", "mid") + her "But in public?" ("angry", "narrow", "annoyed", "mid", emote="angry") + her "I think I better leave..." ("annoyed", "base", "angry", "mid") + gen "Wait, wait, wait." ("base", xpos="far_left", ypos="head") + gen "What about if nobody could see it?" ("base", xpos="far_left", ypos="head") + her "Well... I suppose that would be alright..." ("annoyed", "narrow", "annoyed", "mid") + her "But what's the point if they can't see it?" ("annoyed", "base", "worried", "R") + gen "You'll know it's there." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("annoyed", "narrow", "angry", "R") + her "How much will I be paid?" ("annoyed", "squint", "base", "mid") + gen "Thirty points." ("base", xpos="far_left", ypos="head") + her "Thirty?! I expect at least seventy for such a filthy act!" ("scream", "happyCl", "worried", "mid") + gen "Forty." ("base", xpos="far_left", ypos="head") + her "Sixty!" ("scream", "closed", "angry", "mid") + gen "Fifty points, final offer." ("base", xpos="far_left", ypos="head") + her "Okay, I'll do it." ("annoyed", "base", "worried", "R") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "As long as nobody can see it then I don't see the big issue." ("annoyed", "narrow", "angry", "R") + gen "Splendid. Care to give me a hand?" ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "worried", "down") + + hide hermione_main + call blkfade + + call her_chibi_scene("hj", "desk", "base") + + call hide_blkfade + call ctc + + her "Why are you making me do this, [genie_name]?" ("angry", "base", "base", "mid", ypos="head", flip=False) + gen "What do you mean?" ("base", xpos="far_left", ypos="head") + her "Why are you making me jerk you off..." ("angry", "narrow", "base", "down") + her "So that you can cum on me..." ("soft", "narrow", "annoyed", "up") + her "And make me wear it around the school?" ("open", "happyCl", "worried", "mid") + gen "I'm not making you do anything." ("base", xpos="far_left", ypos="head") + gen "You're doing this because I asked you to." ("base", xpos="far_left", ypos="head") + her "But if I don't, Gryffindor will lose the house cup." ("shock", "happyCl", "worried", "mid") + gen "And?" ("base", xpos="far_left", ypos="head") + her "Harry and Ron will be so disappointed..." ("angry", "base", "worried", "mid") + gen "So that's why you are doing this? For those two boys?" ("base", xpos="far_left", ypos="head") + her "Sort of... I'm not sure that they'd be too upset though." ("annoyed", "base", "worried", "R") + gen "Are you sure it's not because you love it." ("base", xpos="far_left", ypos="head") + her "What?" ("upset", "wink", "base", "mid") + gen "Coming in here whenever I summon you." ("base", xpos="far_left", ypos="head") + gen "Doing whatever I tell you, whenever I tell you." ("base", xpos="far_left", ypos="head") + gen "Doing slutty things in front of your peers because I tell you." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "down") + gen "I'll tell you what, I'll make things interesting." ("base", xpos="far_left", ypos="head") + gen "So long as I cum on you and you wear it around classes today, Gryffindor will get fifty points." ("base", xpos="far_left", ypos="head") + her "How does that make it interesting?" ("disgust", "narrow", "base", "mid_soft") + gen "Because I'll let you choose where I cum." ("base", xpos="far_left", ypos="head") + call nar(">You feel her hands tense around your cock.") + her "You're letting me choose?" ("smile", "base", "base", "R") + gen "Anywhere, as long as it's on you. It can be on your shoes for all I care." ("base", xpos="far_left", ypos="head") + her "Okay..." ("base", "happy", "base", "mid") + gen "Well hurry up [hermione_name], classes will start soon." ("base", xpos="far_left", ypos="head") + call nar(">She starts jerking your cock with renewed vigour.") + gen "So where are you going to hide it?" ("base", xpos="far_left", ypos="head") + her "I'm not sure." ("upset", "wink", "base", "mid") + her "I'm trying to think of somewhere no one will be able to see it." ("upset", "wink", "base", "mid") + gen "Well you better think of some place soon!" ("base", xpos="far_left", ypos="head") + her "Why's that?" ("angry", "wink", "base", "mid") + gen "Because I'm about to cum!" ("grin", xpos="far_left", ypos="head") + her "Already? Where should I--" ("angry", "wide", "base", "stare") + + menu: + #"-Stay Silent-": # TODO: rewrite so it doesn't require to be "under" shirt, but on top of the existing cloth (if any at all) + # Cum under shirt + #$ cum_location = 1 + + #call nar(">Hermione swiftly pulls her shirt up...","start") + #call nar(">You can feel her incredibly soft tits rubbing against the tip of your cock, making you cum!","end") + #gen "{size=+5}*ARGH*! YES!!!{/size}" ("angry", xpos="far_left", ypos="head") + + #call her_chibi_scene("hj_cum_in") + #call cum_block + + # TODO Cum under shirt layer + + #her "!!!!!!!!!!!" ("shock", "wide", "base", "stare", xpos="right", ypos="base") + + #call her_chibi_scene("hj_cum_in_done") + #call ctc + + #her "Well, this shouldn't be too bad..." ("upset", "wink", "base", "mid") + #gen "I'm sure no one will notice." ("base", xpos="far_left", ypos="head") + #her "They better not." ("angry", "base", "angry", "mid") + + "\"Just keep on jerking, [hermione_name]!\"": + # Cum on skirt + $ cum_location = 2 + + call nar(">Hermione keeps jerking your cock, her eyes darting between it and herself.") + gen "Get ready whore, here it comes!" ("angry", xpos="far_left", ypos="head") + her "Wait, where am I supposed to--" ("angry", "base", "worried", "mid") + gen "{size=+5}*ARGH*! YES!!!{/size}" ("grin", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") + + call her_chibi_scene("hj_cum_on") + call cum_block + + $ hermione.set_cum(crotch="light") + + her "!!!!!!!!!!!" ("shock", "wide", "base", "stare", xpos="right", ypos="base") + + $ hermione.set_cum(crotch="heavy") + + gen "That's it! All over you, slut!" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "worried", "down") + + call her_chibi_scene("hj_cum_on_done") + call ctc + + her "Will that be all, [genie_name]?" ("annoyed", "narrow", "annoyed", "up") + gen "I don't suppose you could kiss it for good luck?" ("base", xpos="far_left", ypos="head") + her "I don't think so." ("annoyed", "narrow", "angry", "R") + gen "Well then that should be all, [hermione_name]." ("base", xpos="far_left", ypos="head") + + "\"Take it on your head slut!\"": + # Cum on head + $ cum_location = 3 + + call nar(">Hermione bends down and holds your cock in front of her face.") + gen "Get ready slut, here it comes!" ("base", xpos="far_left", ypos="head") + her "..." ("scream", "wide", "base", "mid") + gen "{size=+5}*ARGH*! YES!!!{/size}" ("grin", xpos="far_left", ypos="head") + her "I can't..." ("clench", "narrow", "base", "down") + + call nar(">Hermione moves your cock away from her face at the last second.","start") + call nar(">You erupt over the top of her head, covering her hair in your spunk.","end") + + call play_music("chipper_doodle") + + call her_chibi_scene("hj_cum_on") + call cum_block + + $ hermione.set_cum(hair="light") + + her "!!!!!!!!!!!" ("shock", "wide", "base", "stare", xpos="right", ypos="base") + + $ hermione.set_cum(hair="heavy") + + gen "Yes! I Feel so much better now..." ("base", xpos="far_left", ypos="head") + her ".............." ("normal", "happyCl", "worried", "mid") + + call her_chibi_scene("hj_cum_on_done") + call ctc + + her "How could you!?" ("scream", "happyCl", "worried", "mid") + gen "How could I?" ("base", xpos="far_left", ypos="head") + her "You told me to let you cum on my hair!" ("scream", "closed", "angry", "mid") + gen "I did." ("base", xpos="far_left", ypos="head") + her "Why would you say something like that!?" ("mad", "happyCl", "worried", "mid", tears="soft_blink") + her "If I hadn't moved at the last second, my face would be covered!" ("angry", "base", "base", "mid", tears="soft") + gen "You didn't have to listen to me." ("base", xpos="far_left", ypos="head") + her "What?" ("angry", "base", "worried", "mid") + gen "I only said that you had to have my cum on you." ("base", xpos="far_left", ypos="head") + gen "I never said where." ("base", xpos="far_left", ypos="head") + her "You mean I didn't have to..." ("annoyed", "base", "worried", "R") + gen "Not at all." ("base", xpos="far_left", ypos="head") + + hide hermione_main + call blkfade + + ">You tuck your cock back into your robe." + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + + call hide_blkfade + pause.2 + + call bld + gen "Oh and one last thing before you head to class." ("base", xpos="far_left", ypos="head") + her "Yes..." ("annoyed", "narrow", "annoyed", "mid") + gen "If you return to this office after classes without any cum on you, Slytherin will get two hundred points." ("base", xpos="far_left", ypos="head") + her "{size=+10}Two hundred!? That is not fair!{/size}" ("shock", "wide", "base", "stare") + gen "It's only unfair if you clean it off." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "base", "angry", "mid") + + call her_walk(action="leave") + + jump end_hermione_event + +label hg_ps_cumslut_Scene_2: + $ hg_ps_cumslut.inProgress = True + + her "Again?" ("shock", "wide", "base", "stare") + her "You can not be serious!?" ("angry", "base", "angry", "mid") + her "I already let you do this to me once, isn't that enough?" ("annoyed", "narrow", "annoyed", "mid") + gen "It's enough when I say it's enough." ("base", xpos="far_left", ypos="head") + gen "Besides, was it really such an issue last time?" ("base", xpos="far_left", ypos="head") + her "Well I guess not..." ("annoyed", "base", "base", "mid") + her "But will it still be hidden this time?" ("annoyed", "base", "worried", "R") + gen "That's up to you." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("annoyed", "narrow", "angry", "R") + + her "How much will I be paid this time then?" ("annoyed", "squint", "base", "mid") + gen "Twenty points." ("base", xpos="far_left", ypos="head") + her "Twenty!? we agreed on fifty last time!" ("scream", "happyCl", "worried", "mid") + gen "Forty." ("base", xpos="far_left", ypos="head") + her "Seventy!" ("scream", "closed", "angry", "mid") + gen "Fifty points then, final offer." ("base", xpos="far_left", ypos="head") + her "Eighty and I'll let people see it." ("base", "narrow", "base", "mid_soft") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "As long as it isn't too obvious." ("base", "narrow", "worried", "down") + gen "Deal." ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "worried", "down") + + hide hermione_main + call blkfade + + call her_chibi_scene("hj", "desk", "base") + call hide_blkfade + call ctc + + her "Why are you asking me to do this [genie_name]?" ("angry", "base", "base", "mid", ypos="head", flip=False) + gen "This question again?" ("base", xpos="far_left", ypos="head") + gen "Let me answer your question with one of my own." ("base", xpos="far_left", ypos="head") + her "Okay..." ("angry", "narrow", "base", "down") + gen "Why are you jerking me off [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Because you asked me to..." ("soft", "narrow", "annoyed", "up") + gen "And is that the only reason?" ("base", xpos="far_left", ypos="head") + her "No..." ("open", "happyCl", "worried", "mid") + gen "Are you sure?" ("base", xpos="far_left", ypos="head") + gen "What is your other reason then?" ("base", xpos="far_left", ypos="head") + her "if I don't, Gryffindor will lose the house cup." ("shock", "happyCl", "worried", "mid") + gen "That lie again?" ("base", xpos="far_left", ypos="head") + her "It's not a lie..." ("angry", "base", "worried", "mid") + gen "So you'd rather win the house cup than make me happy?" ("base", xpos="far_left", ypos="head") + her "Maybe... Can't I do both?" ("annoyed", "base", "worried", "R") + gen "You can..." ("base", xpos="far_left", ypos="head") + her "Good." ("base", "happy", "base", "mid") + gen "But I want you to be honest." ("base", xpos="far_left", ypos="head") + gen "So I'm going to give you a choice." ("base", xpos="far_left", ypos="head") + gen "You can stop jerking me off right now, leave the room and I'll give you the eighty points. However, I'll be very upset." ("base", xpos="far_left", ypos="head") + her "or?" ("open", "base", "base", "mid") + gen "Or, you can keep jerking me off, wear my cum around the school and get no points." ("base", xpos="far_left", ypos="head") + her "NO POINTS?" ("scream", "happyCl", "worried", "mid") + gen "None. You will make an old man very happy though." ("base", xpos="far_left", ypos="head") + her "Can't you just pay me for wearing your cum?" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "No." ("base", xpos="far_left", ypos="head") + call nar(">You feel her hands tense around your cock.") + her "You're making me choose? Between getting eighty points for doing nothing." ("annoyed", "narrow", "annoyed", "mid") + her "Or getting paid nothing for wearing your cum around the school." ("angry", "narrow", "annoyed", "mid", emote="angry") + gen "Indeed I am [hermione_name]." ("base", xpos="far_left", ypos="head") + her "{size=-5}Okay...{/size}" ("disgust", "narrow", "base", "down") + gen "Well hurry up [hermione_name], classes will start soon, best make your decision." ("base", xpos="far_left", ypos="head") + call nar(">She starts jerking your cock with renewed vigour.") + her "..." ("annoyed", "squint", "base", "mid") + her "You better appreciate this." ("annoyed", "narrow", "angry", "R") + gen "Oh I'm appreciating it!" ("base", xpos="far_left", ypos="head") + her "Really?" ("open", "base", "base", "mid") + gen "You're about to see how much I'm appreciating it!" ("grin", xpos="far_left", ypos="head") + her "What, Already? Where should I--" ("angry", "wide", "base", "stare") + + menu: + "-Stay Silent-": + # Cum on legs + $ cum_location = 4 + + call nar(">Hermione keeps jerking your cock, her eyes darting between it and herself.") + gen "Get ready slut, here it comes!" ("angry", xpos="far_left", ypos="head") + her "Wait, where am I supposed to--" ("angry", "base", "worried", "mid") + gen "{size=+5}*ARGH*! YES!!!{/size}" ("grin", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") + + call her_chibi_scene("hj_cum_on") + call cum_block + + $ hermione.set_cum(legs="light") + + her "!!!!!!!!!!!" ("shock", "wide", "base", "stare", xpos="right", ypos="base") + + $ hermione.set_cum(legs="heavy") + + gen "That's it, all over your milky thighs." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "worried", "down") + + call her_chibi_scene("hj_cum_on_done") + call ctc + + her "Will that be all [genie_name]?" ("annoyed", "narrow", "annoyed", "up") + gen "I don't suppose you could kiss it for good luck?" ("base", xpos="far_left", ypos="head") + her "...{w=0.5} ..." ("base", "narrow", "base", "up") + + hide hermione_main + call her_chibi_scene("hj_kiss") + $ renpy.play('sounds/kiss.ogg') + with kissiris + call ctc + + call her_chibi_scene("hj_cum_on_done") + gen "Good girl." ("base", xpos="far_left", ypos="head") + + "\"Just keep on jerking, [hermione_name]!\"": + # Cum on shirt + $ cum_location = 5 + + call nar(">Hermione keeps jerking your cock, her eyes focused intently on it.") + gen "Get ready whore, here I come!" ("angry", xpos="far_left", ypos="head") + her "..." ("angry", "base", "worried", "mid") + gen "{size=+5}*ARGH*! YES!!! RIGHT ON THOSE TITS!{/size}" ("grin", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") + + call her_chibi_scene("hj_cum_on") + call cum_block + + $ hermione.set_cum(breasts="light", body="light") + + her "!!!!!!!!!!!" ("shock", "wide", "base", "stare", xpos="right", ypos="base") + + $ hermione.set_cum(breasts="heavy") + + gen "That's it! All over you, slut!" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "worried", "down") + + call her_chibi_scene("hj_cum_on_done") + call ctc + + her "It's all over me." ("annoyed", "narrow", "annoyed", "up") + gen "That it is." ("base", xpos="far_left", ypos="head") + her "I think I should go now..." ("annoyed", "narrow", "worried", "down") + + "\"Take it on your face slut!\"": + # Cum on face + $ cum_location = 6 + + call nar(">Hermione bends down and holds your cock in front of her face.") + gen "Get ready slut, here it comes!" ("base", xpos="far_left", ypos="head") + her "..." ("scream", "wide", "base", "mid") + gen "{size=+5}*ARGH*! YES!!!{/size}" ("grin", xpos="far_left", ypos="head") + her "..." ("clench", "narrow", "base", "down") + call nar(">You erupt onto her face, dousing her in your spunk.") + + call play_music("chipper_doodle") + + call her_chibi_scene("hj_cum_on") + call cum_block + + $ hermione.set_cum(face="light") + + her "!!!!!!!!!!!" ("shock", "wide", "base", "stare", xpos="right", ypos="base") + + $ hermione.set_cum(face="heavy", hair="light") + + gen "Yes! I Feel so much better now..." ("base", xpos="far_left", ypos="head") + her ".............." ("normal", "happyCl", "worried", "mid") + + call her_chibi_scene("hj_cum_on_done") + call ctc + + her "How could you!?" ("scream", "happyCl", "worried", "mid") + gen "How could I?" ("base", xpos="far_left", ypos="head") + her "You came all over my face!" ("scream", "closed", "angry", "mid") + gen "I did." ("base", xpos="far_left", ypos="head") + her "Why would you ask me to do that!?" ("mad", "happyCl", "worried", "mid", tears="soft_blink") + her "I'm completely covered in your cum!" ("angry", "base", "base", "mid", tears="soft") + gen "You didn't have to listen to me." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "base", "worried", "mid") + gen "I only said that you had to have my cum on you." ("base", xpos="far_left", ypos="head") + gen "I never said where." ("base", xpos="far_left", ypos="head") + her "You told me to do it though..." ("annoyed", "base", "worried", "R") + + hide hermione_main + call blkfade + + ">You tuck your cock back into your robe." + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + + hide screen blktone + hide screen bld1 + call hide_blkfade + pause.2 + + call bld + gen "Oh and one last thing before you head to class." ("base", xpos="far_left", ypos="head") + her "Yes..." ("soft", "narrow", "annoyed", "up",xpos="right",ypos="base") + gen "If you return to this office after classes without any cum on you, I'll be very upset." ("base", xpos="far_left", ypos="head") + her "Yes [genie_name]." ("base", "narrow", "base", "up") + gen "Have fun. Say hi to your friends for me." ("base", xpos="far_left", ypos="head") + her "..." ("base", "closed", "base", "mid") + + call her_walk(action="leave") + + jump end_hermione_event + +label hg_ps_cumslut_Scene_3: + $ hg_ps_cumslut.inProgress = True + her "Are you serious?" ("shock", "wide", "base", "stare") + her "Can I?" ("grin", "narrow", "annoyed", "up") + gen "Well--" ("base", xpos="far_left", ypos="head") + her "I was going to ask you if I could, seeing as how it made you so happy last time, [genie_name]." ("smile", "happyCl", "base", "mid",emote="happy") + her "I'll even do it for free if that would make you happier!" ("base", "narrow", "base", "up") + gen "really?" ("base", xpos="far_left", ypos="head") + gen "Well let's get started then!" ("base", xpos="far_left", ypos="head") + + hide hermione_main + call blkfade + + call her_chibi_scene("hj", "desk", "base") + + call hide_blkfade + call ctc + + call bld + gen "Gods, you're good at this, [hermione_name]!" ("base", xpos="far_left", ypos="head") + her "Thank you... I've been thinking about what you asked me last time..." ("soft", "narrow", "annoyed", "up", ypos="head", flip=False) + gen "Last time?" ("base", xpos="far_left", ypos="head") + her "about why I do this... sell you these sort of favours." ("upset", "closed", "base", "mid") + her "At the start it was just to get points, so that gryffindor could win the house cup..." ("angry", "wink", "base", "mid") + her "but lately..." ("base", "narrow", "worried", "down") + her "it's been more than that...{w=0.5} now I do it to make you happy, [genie_name]." ("base", "narrow", "base", "mid_soft") + her "Because making you happy, makes me happy..." ("base", "squint", "base", "mid") + gen "That's great... but what would really make me happy right now is you focusing a little more on the task at hand..." ("base", xpos="far_left", ypos="head") + her "Oh! Of course, [genie_name]..." ("open", "happyCl", "worried", "mid") + her "Do you need some extra encouragement?" ("open", "closed", "base", "mid") + gen "it would help..." ("base", xpos="far_left", ypos="head") + her "well... do you know how much I've been thinking about this? How much I wanted to ask you to cover me again?" ("base", "narrow", "worried", "down") + her "I've become such a slut, [genie_name]. It's all I've been able to think about... going to class covered in your {heart}cum{heart}" ("grin", "narrow", "annoyed", "up") + her "I Imagine it staining my uniform so much that I can never wash it out. I imagine being covered in your cum constantly, so everyone knows what I am." ("grin", "narrow", "base", "dead") + her "not just A slut... a cumslut..." ("soft", "narrow", "annoyed", "up") + her "Your {heart}cumslut{heart}..." ("silly", "narrow", "annoyed", "up") + gen "That did it slut!" ("grin", xpos="far_left", ypos="head") + gen "HERE IT COMES!!!" ("angry", xpos="far_left", ypos="head") + her "Shoot it wherever you want [genie_name]..." ("open_wide_tongue", "narrow", "annoyed", "up") + menu: + "\"Take it on your tits!\"": + # Cum on shirt + $ cum_location = 7 + her "Please cover my tits with your sticky cum! I need it, [genie_name]!" ("grin", "narrow", "annoyed", "up", ypos="head", flip=False) + ">Hermione keeps jerking your cock, her eyes focused intently on it." + gen "Get ready whore, here i come!" ("angry", xpos="far_left", ypos="head") + her "..." ("silly", "narrow", "base", "dead") + ">Hermione leans forward, lining up her tits directly with your cock." + + call play_music("chipper_doodle") + + call her_chibi_scene("hj_cum_on") + call cum_block + + $ hermione.set_cum(breasts="light", body="light") + + her "{heart}{heart}{heart}" ("base", "narrow", "worried", "down", xpos="right", ypos="base") + gen "{size=+5}*ARGH*! YES!!! RIGHT between your TITS!{/size}" ("grin", xpos="far_left", ypos="head") + + $ hermione.set_cum(breasts="heavy") + + gen "That's it! All over you, slut!" ("base", xpos="far_left", ypos="head") + her "......" ("soft", "narrow", "annoyed", "up") + + call her_chibi_scene("hj_cum_on_done") + call ctc + + her "It's so warm...{heart}" ("grin", "narrow", "base", "dead") + gen "That it is." ("base", xpos="far_left", ypos="head") + her "If it's alright with you, I think I better head to class now..." ("base", "narrow", "worried", "down") + + "\"Take it on your face, slut!\"": + # Cum on face + $ cum_location = 8 + ">Hermione bends down and holds your cock in front of her face." + gen "Get ready slut, here it comes!" ("base", xpos="far_left", ypos="head") + her "Please give it to me! I need it, [genie_name]!" ("grin", "narrow", "annoyed", "up", ypos="head", flip=False) + gen "{size=+5}*ARGH*! YES!!!{/size}" ("grin", xpos="far_left", ypos="head") + her "..." ("open_wide_tongue", "narrow", "annoyed", "up") + ">You erupt onto her face, dousing her in your thick spunk." + + call play_music("chipper_doodle") + call her_chibi_scene("hj_cum_on") + call cum_block + + $ hermione.set_cum(face="light") + + her "{heart}{heart}{heart}{heart}{heart}{heart}{heart}" ("open_wide_tongue", "narrow", "annoyed", "up",xpos="right",ypos="base") + + $ hermione.set_cum(face="heavy", hair="light") + + gen "Yes... I Feel so much better now..." ("base", xpos="far_left", ypos="head") + her "me too..." ("normal", "happyCl", "worried", "mid") + + call her_chibi_scene("hj_cum_on_done") + call ctc + + show screen blkfade + with d3 + + ">You tuck your cock back into your robe." + + call her_chibi("stand", "desk", "base") + call gen_chibi("sit_behind_desk") + with d3 + pause.2 + + hide screen blkfade + with d3 + + call bld + gen "I'll see you after classes. And as before, if you come back without any cum on you, I'll be very disappointed." ("base", xpos="far_left", ypos="head") + her "of course [genie_name]..." ("soft", "narrow", "annoyed", "up", xpos="right", ypos="base") + her "(I can't wait to see the look on people's faces...)" ("grin", "narrow", "base", "dead") + + call her_walk(action="leave") + + jump end_hermione_event + +label hg_ps_cumslut_complete: + # Hermione returns from her day of wearing your cum + $ hg_ps_cumslut.inProgress = False + if cum_location < 4: + jump hg_ps_cumslut_complete_1 + elif cum_location < 7: + jump hg_ps_cumslut_complete_2 + else: + jump hg_ps_cumslut_complete_3 + +label hg_ps_cumslut_complete_1: + + call her_walk(action="enter", xpos="mid", ypos="base") + + #if cum_location == 1: # TODO: No can do. Requires rewrite. + # Cum under shirt + #her "... I did it, [genie_name]." ("base", "happy", "base", "mid",xpos="right",ypos="base") + #her "I kept your cum on me all day." ("base", "base", "base", "R") + + #menu: + #"\"Fifty points to Gryffindor!\"": + #$ gryffindor += 50 + #her "Thank you [genie_name], will that be all?" ("soft", "base", "base", "mid") + #gen "Yes [hermione_name], you may leave now." ("base", xpos="far_left", ypos="head") + + #"\"Tell me about your day.\"": + #her "It was a pretty normal day, I had potions class and then transfiguration." ("open", "closed", "base", "mid") + #gen "And do you think that anyone noticed?" ("base", xpos="far_left", ypos="head") + #her "I don't think so [genie_name]. Ginny Weasley asked me about it during transfiguration class though." ("soft", "base", "base", "mid") + #gen "And what did you tell her?" ("base", xpos="far_left", ypos="head") + #her "I just said that I spilled some {i}Wiggenweld potion{/i} on myself in potions class." ("open", "base", "base", "mid") + #gen "Very cunning of you. Fifty points to Gryffindor." ("base", xpos="far_left", ypos="head") + #$ gryffindor += 50 + #her "Thank you [genie_name], if that's all I might head to bed." ("soft", "base", "base", "mid") + #gen "Very well, goodnight [hermione_name]." ("base", xpos="far_left", ypos="head") + #her "Good night [genie_name]." ("base", "base", "base", "mid") + + if cum_location == 2: + # Cum on skirt + + $ hermione.set_cum(crotch="heavy") + + her "... I did it [genie_name]." ("normal", "happyCl", "worried", "mid",xpos="right",ypos="base", trans=d3) + her "I kept your cum on me all day." ("angry", "happyCl", "worried", "mid",emote="sweat") + + menu: + "\"Fifty points to Gryffindor!\"": + $ gryffindor += 50 + her "Thank you [genie_name], will that be all?" ("annoyed", "base", "worried", "R") + gen "Yes [hermione_name], you may leave now." ("base", xpos="far_left", ypos="head") + + "\"Tell me about your day.\"": + her "It was a pretty normal day, I had potions class and then transfiguration." ("annoyed", "base", "worried", "R",xpos="base",ypos="base") + gen "And do you think that anyone noticed?" ("base", xpos="far_left", ypos="head") + her "I think a few people did [genie_name]. I could hear The first years all whispering as I walked past." ("grin", "happyCl", "worried", "mid") + gen "And how did you feel?" ("base", xpos="far_left", ypos="head") + her "Excited. I just wish that they knew why I was doing this." ("base", "narrow", "worried", "down") + gen "Speaking of that, fifty points to Gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 50 + her "Oh, right the points, Thank you [genie_name]. if that's all I might head to bed." ("open", "narrow", "worried", "down") + gen "Very well, goodnight [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Good night [genie_name]." ("annoyed", "closed", "base", "mid") + + else: + # Cum on hair + + $ hermione.set_cum(hair="heavy") + + her "... I did it [genie_name]." ("upset", "narrow", "base", "dead",tears="mascara",xpos="right",ypos="base", trans=d3) + her "I kept your cum on me all day." ("upset", "happyCl", "worried", "mid",tears="mascara_soft_blink") + menu: + "\"Fifty points to Gryffindor!\"": + $ gryffindor += 50 + $ her_mood += 5 + her "..." ("annoyed", "narrow", "annoyed", "mid", tears="mascara_soft") + gen "Well [hermione_name], you may leave now." ("base", xpos="far_left", ypos="head") + her "*Hmph*..." ("angry", "narrow", "annoyed", "mid", emote="angry",tears="mascara") + + "\"Tell me about your day.\"": + $ her_mood += 10 + her "My day..." ("normal", "happyCl", "worried", "mid",tears="mascara_soft_blink",xpos="base",ypos="base") + her "This was the worst day of my life!" ("scream", "happyCl", "worried", "mid",tears="mascara_soft_blink") + her "I've never been so ashamed!" ("angry", "happyCl", "worried", "mid",emote="sweat",tears="mascara_soft_blink") + gen "Did your friends treat you poorly?" ("base", xpos="far_left", ypos="head") + her "No! That's the worst part!" ("scream", "closed", "angry", "mid",tears="mascara_soft_blink") + her "I expected to be an outcast, to sit by myself and not have Ginny or Luna talk to me." ("annoyed", "base", "worried", "R",tears="mascara_soft_blink") + her "But they didn't even acknowledge the fact that I was covered in cum!" ("annoyed", "narrow", "angry", "R",tears="mascara_soft_blink") + her "They acted as if nothing was wrong." ("mad", "happyCl", "worried", "mid",tears="mascara_soft_blink") + her "I even tried to provoke a response from Ginny by asking her what she thought of my hair!" ("angry", "base", "base", "mid",tears="mascara_soft") + gen "And what was her reaction?" ("base", xpos="far_left", ypos="head") + her "She said that it suited me!" ("upset", "happyCl", "worried", "mid",tears="mascara_soft_blink") + gen "Maybe they're just used to you acting like this." ("base", xpos="far_left", ypos="head") + her "That's the problem! They think that this slutty persona is who I am now!" ("angry", "base", "worried", "mid", tears="mascara_soft") + gen "Isn't it?" ("base", xpos="far_left", ypos="head") + her "..." ("upset", "happyCl", "worried", "mid",tears="mascara_soft_blink") + her "Good night, [genie_name]." ("normal", "happyCl", "worried", "mid",tears="mascara_soft_blink") + + with fade + + jump end_hermione_event + +label hg_ps_cumslut_complete_2: + + call her_walk(action="enter", xpos="mid", ypos="base") + + if cum_location == 4: + # Cum on legs + + $ hermione.set_cum(legs="heavy") + + her "... I did it, [genie_name]." ("base", "happy", "base", "mid",xpos="right",ypos="base", trans=d3) + her "I kept your cum on me all day." ("base", "base", "base", "R") + + menu: + "\"Good Work!\"": + her "Thank you [genie_name], will that be all?" ("soft", "base", "base", "mid") + gen "Yes [hermione_name], you may leave now." ("base", xpos="far_left", ypos="head") + + "\"Tell me about your day.\"": + her "It was a pretty normal day, well, except for Luna..." ("open", "closed", "base", "mid") + gen "Luna?" ("base", xpos="far_left", ypos="head") + her "Luna Lovegood, sir." ("soft", "base", "base", "mid") + gen "What happened with miss Lovegood?" ("base", xpos="far_left", ypos="head") + her "She kept trying to tell me that a Cornish pixie had given me a present." ("annoyed", "narrow", "angry", "R") + gen "A Cornish Pixie had given you a present?" ("base", xpos="far_left", ypos="head") + her "I didn't know what she was talking about either. Cornish pixies are nasty little things that would never do anything nice." ("disgust", "narrow", "base", "mid_soft") + gen "Well what happened after that?" ("base", xpos="far_left", ypos="head") + her "Well I asked her what she was talking about and then she ran her finger up my leg, scooping up some of your cum!" ("smile", "narrow", "base", "mid_soft") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "That's not the worst part. She then proceded to taste it!" ("open_tongue", "narrow", "base", "mid_soft") + gen "I don't believe you." ("base", xpos="far_left", ypos="head") + her "I was as shocked as you were." ("open", "closed", "base", "mid") + gen "Well you have certainly made this old man very happy." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]. if that's all I might head to bed." ("open", "narrow", "worried", "down") + gen "Very well, goodnight [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Good night [genie_name]." ("annoyed", "closed", "base", "mid") + + elif cum_location == 5: + # Cum on shirt + + $ hermione.set_cum(breasts="heavy", body="light") + + her "... I did it, [genie_name]." ("normal", "happyCl", "worried", "mid",xpos="right",ypos="base", trans=d3) + her "I kept your cum on me all day." ("angry", "happyCl", "worried", "mid",emote="sweat") + + menu: + "\"Good Work!\"": + her "Thank you [genie_name], will that be all?" ("annoyed", "base", "worried", "R") + gen "Yes [hermione_name], you may leave now." ("base", xpos="far_left", ypos="head") + + "\"Tell me about your day.\"": + her "It was a pretty normal day, I had Defense against the dark arts class and then herbology." ("annoyed", "base", "worried", "R",xpos="base",ypos="base") + gen "And do you think that anyone noticed?" ("base", xpos="far_left", ypos="head") + her "I think most people did [genie_name]. I'm not sure if they all knew it was cum though." ("grin", "happyCl", "worried", "mid") + gen "And how did you feel?" ("base", xpos="far_left", ypos="head") + her "Excited. Getting to see everyone's faces as they realised what it was..." ("base", "narrow", "worried", "down") + gen "So you don't mind them knowing?" ("base", xpos="far_left", ypos="head") + her "I suppose not... As long as it makes you happy." ("open", "narrow", "worried", "down") + gen "Very well, goodnight [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Good night [genie_name]." ("annoyed", "closed", "base", "mid") + + else: + # Cum on face + + $ hermione.set_cum(face="heavy", hair="light") + + her "... I did it, [genie_name]." ("annoyed", "narrow", "base", "dead",tears="mascara",xpos="right",ypos="base", trans=d3) + her "I kept your cum on me...{w=0.8} all day." ("annoyed", "narrow", "base", "dead",tears="mascara") + + menu: + "\"Good Work!\"": + her "..." ("annoyed", "narrow", "base", "dead",tears="mascara") + gen "Well [hermione_name], you may leave now." ("base", xpos="far_left", ypos="head") + her "Did I at least make you happy?" ("open", "narrow", "annoyed", "mid", tears="mascara") + gen "You did." ("base", xpos="far_left", ypos="head") + her "Good." ("annoyed", "closed", "base", "mid",tears="mascara") + + "\"Tell me about your day.\"": + her "My day..." ("normal", "happyCl", "worried", "mid",tears="mascara",xpos="base",ypos="base") + her "It was completely normal." ("scream", "happyCl", "worried", "mid",tears="mascara") + gen "Really? Nothing strange happened at all?" ("base", xpos="far_left", ypos="head") + her "No. Everyone treated me how I deserved to be treated." ("scream", "closed", "angry", "mid",tears="mascara") + gen "And how's that?" ("base", xpos="far_left", ypos="head") + her "Like a slut..." ("annoyed", "base", "worried", "R",tears="mascara") + her "Boys catcalled me..." ("annoyed", "narrow", "angry", "R",tears="mascara") + her "Put me down..." ("mad", "happyCl", "worried", "mid", tears="mascara") + her "Snape made me stand out the front of the class during Defense against the dark arts." ("angry", "base", "base", "mid",tears="mascara_soft") + gen "What did he make you do in front of the class?" ("base", xpos="far_left", ypos="head") + her "Nothing, I just had to stand there for the whole lesson." ("upset", "happyCl", "worried", "mid",tears="mascara_soft_blink") + gen "Did your friends say anything?" ("base", xpos="far_left", ypos="head") + her "Nothing." ("angry", "base", "worried", "mid", tears="mascara_soft") + her "..." ("upset", "happyCl", "worried", "mid",tears="mascara_soft_blink") + her "Did I...{w=0.5} make you happy?" ("open", "narrow", "annoyed", "mid", tears="mascara_soft") + gen "You did." ("base", xpos="far_left", ypos="head") + her "Good night, [genie_name]." ("normal", "happyCl", "worried", "mid",tears="mascara_soft") + + with fade + + jump end_hermione_event + +label hg_ps_cumslut_complete_3: + # TODO: This event is a copy of the previous event, it should be rewritten to + + call her_walk(action="enter", xpos="mid", ypos="base") + + if cum_location == 7: + # Cum on shirt + + $ hermione.set_cum(breasts="heavy") + + ">Hermione returns to your office, her breasts still covered in cum." + her "... I did it [genie_name]." ("open", "squint", "base", "mid") + her "I kept your cum on me all day." ("grin", "happyCl", "worried", "mid",emote="sweat") + + menu: + "\"Good Work!\"": + her "Thank you [genie_name], will that be all?" ("base", "base", "base", "mid") + gen "Yes [hermione_name], you may leave now." ("base", xpos="far_left", ypos="head") + + "\"Tell me about your day.\"": + her "It was actually quite frustrating [genie_name]..." ("annoyed", "narrow", "angry", "R") + gen "frustrating?" ("base", xpos="far_left", ypos="head") + her "yes! Having to spend the whole day smelling your delicious cum but not being able to taste any of it!" ("open", "base", "base", "R") + her "It was like looking at a glass of water in the desert..." ("soft", "narrow", "annoyed", "up") + gen "did anyone else notice?" ("base", xpos="far_left", ypos="head") + her "I couldn't say [genie_name]... I was too distracted by the smell..." ("angry", "wink", "base", "mid") + gen "Very well, goodnight [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Good night [genie_name]." ("grin", "narrow", "base", "dead") + + else: + # Cum on face + + $ hermione.set_cum(face="heavy", hair="light") + + ">Hermione returns to your office, her face still covered in cum." + her "I did it, [genie_name]." ("open", "squint", "base", "mid") + her "I kept your cum on me all day." ("base", "base", "base", "mid") + + menu: + "\"Good Work!\"": + her "Thank you, [genie_name]. Is that everything?" ("soft", "happy", "base", "R") + gen "yes [hermione_name], you can go clean up now." ("base", xpos="far_left", ypos="head") + her "clean up?" ("open", "base", "base", "R") + gen "Only if you want to..." ("base", xpos="far_left", ypos="head") + her "thank you [genie_name]!" ("grin", "narrow", "annoyed", "up") + + "\"Tell me about your day.\"": + her "My day..." ("soft", "happy", "base", "R") + her "It was a normal day [genie_name]. Well what is normal for me now." ("soft", "narrow", "annoyed", "up") + her "I got called names again, and some of the boys groped me." ("grin", "narrow", "base", "dead") + her "Susan Bones even said she liked how I looked in my shirt." ("base", "narrow", "worried", "down") + gen "And how did that make you feel?" ("base", xpos="far_left", ypos="head") + her "Excited, I almost came when Moaning Myrtle started yelling to everyone about your cum on my shirt." ("silly", "narrow", "base", "dead") + gen "Truly?" ("base", xpos="far_left", ypos="head") + her "Of course, it made me even happier knowing that it makes you happy." ("base", "narrow", "worried", "down") + gen "that you did..." ("base", xpos="far_left", ypos="head") + her "...{heart}" ("grin", "narrow", "annoyed", "up") + her "thank you [genie_name]. well, goodnight." ("open", "base", "base", "R") + gen "goodnight [hermione_name]." ("base", xpos="far_left", ypos="head") + + with fade + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/events/tentacles.rpy b/game/scripts/characters/hermione/events/tentacles.rpy new file mode 100644 index 00000000..38a33f74 --- /dev/null +++ b/game/scripts/characters/hermione/events/tentacles.rpy @@ -0,0 +1,598 @@ +#Public tentacle scene +label tentacle_scene_intro: + with d3 + show screen bld1 + + if not tentacle_scroll_examined: + $ tentacle_scroll_examined = True + gen "(*Hmm*... let's see if we can get this writing to show...)" ("base", xpos="far_left", ypos="head") + gen "(It should be something simple like a command word...)" ("base", xpos="far_left", ypos="head") + + $ d_flag_01 = False + $ d_flag_02 = False + $ d_flag_03 = False + label .spell: + if d_flag_01 and d_flag_02 and d_flag_03: + jump .after_spell + menu: + "\"Open Sesame!\"" if not d_flag_01: + $ d_flag_01 = True + gen "...{w=0.8} Guess not..." ("base", xpos="far_left", ypos="head") + jump .spell + "\"Hocus Pocus!\"" if not d_flag_02: + $ d_flag_02 = True + gen "...{w=0.8} Damn..." ("base", xpos="far_left", ypos="head") + jump .spell + "\"Abracadabra!\"" if not d_flag_03: + $ d_flag_03 = True + gen "...{w=0.8} ..." ("base", xpos="far_left", ypos="head") + jump .spell + + label .after_spell: + gen "Work you stupid scroll or I'll throw you in the fire!" ("angry", xpos="far_left", ypos="head") + $ renpy.play('sounds/scribble.ogg') + "The scroll" "*Reveals itself*" + gen "That's what I thought..." ("base", xpos="far_left", ypos="head") + + gen "Now then... Let's find out what this scroll says..." ("base", xpos="far_left", ypos="head") + gen "\"At the highest point is where I'm hidden\"..." ("base", xpos="far_left", ypos="head") + gen "(fuck, it's a riddle...{w=0.4} Guess I deserved that...)" ("angry", xpos="far_left", ypos="head") + + gen "\"At the highest point is where I'm hidden\"--" ("base", xpos="far_left", ypos="head") + gen "\"A place where you will need this key\"--" ("base", xpos="far_left", ypos="head") + gen "\"To use this scroll that is forbidden\"--" ("base", xpos="far_left", ypos="head") + gen "\"You'll need to take a piece of me\"..." ("base", xpos="far_left", ypos="head") + + gen "Key... what k--" ("base", xpos="far_left", ypos="head") + $ renpy.play('sounds/magic1.ogg') + show screen white + with d9 + pause 0.9 + hide screen white + with d5 + gen "*ARGH*!" ("angry", xpos="far_left", ypos="head") + gen "(Bloody magic...)" ("angry", xpos="far_left", ypos="head") + gen "(Oh look, a rusty key just popped out from that scroll...)" ("base", xpos="far_left", ypos="head") + gen "(How convenient...)" ("base", xpos="far_left", ypos="head") + gen "(Now I'll just have to find where it fits...)" ("base", xpos="far_left", ypos="head") + jump main_room_menu + + gen "(Okay... so...{w=0.3} What was this scroll supposed to do again?)" ("base", xpos="far_left", ypos="head") + gen "(Let's see...)" ("base", xpos="far_left", ypos="head") + if not tentacle_sample: + gen "Right, the riddle..." ("base", xpos="far_left", ypos="head") + + label .riddle: + gen "\"At the highest point is where I'm hidden\"--" ("base", xpos="far_left", ypos="head") + gen "\"A place where you will need this key\"--" ("base", xpos="far_left", ypos="head") + gen "\"To use this scroll that is forbidden\"--" ("base", xpos="far_left", ypos="head") + gen "\"You'll need to take a piece of me\"..." ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-Continue-": + pass + "-Repeat the riddle-": + jump tentacle_scene_intro.riddle + + gen "(Well... I have the key, now to figure out the rest...)" ("base", xpos="far_left", ypos="head") + gen "(The highest point... *Hmm* I wonder where that could be.)" ("base", xpos="far_left", ypos="head") + jump main_room_menu + else: + gen "(Ah, that's it... it's supposed to turn me into some sort of magical tentacle plant...)" ("base", xpos="far_left", ypos="head") + gen "(I have everything I need to perform the ritual and have some fun with Hermione.)" ("base", xpos="far_left", ypos="head") + + if not game.daytime: + gen "(*Hmm*... But it's too late for me to use it now. I should do it at dawn, before class has started.)" ("base", xpos="far_left", ypos="head") + jump main_room_menu + elif hermione_busy: + gen "(*Hmm* But Hermione is busy at the moment, I should postpone my plans until tomorrow.)" ("base", xpos="far_left", ypos="head") + jump main_room_menu + + gen "(I better write her a note first so she can carry me with her to class...)" ("base", xpos="far_left", ypos="head") + call gen_chibi("paperwork") + with d3 + pause 1.0 + + # Setup + $ hermione_busy = True + $ d_flag_01 = [] + $ d_flag_02 = False + + menu: + gen "(*Hmm*... how should I start?)" ("base", xpos="far_left", ypos="head") + "\"Dear Hermione, ...\"": + $ d_flag_01.append("Dear Hermione,\n\n") + "\"Dear [hermione_name], ...\"": + $ d_flag_01.append("Dear [hermione_name],\n\n") + "\"You, the bimbo, ...\"": + $ d_flag_01.append("You, the bimbo,\n\n") + + $ renpy.play('sounds/scribble.ogg') + "*Scribble* *Scribble*" + + menu: + gen "....*Mhmm*...." ("base", xpos="far_left", ypos="head") + "\"... I had very important business matter to attend to...\"": + $ d_flag_01.append("I had very important business matter to attend to,") + "\"... I went out to visit a brothel...\"": + $ d_flag_01.append("I went out to visit a brothel,") + "\"... I have turned myself into a plant...\"": + $ d_flag_01.append("I have turned myself into a plant,") + $ d_flag_02 = True + + $ renpy.play('sounds/scribble.ogg') + "*Scribble* *Scribble*" + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"... I ask you kindly...\"": + $ d_flag_01.append("I ask you kindly,") + "\"... Just listen for once...\"": + $ d_flag_01.append("just listen for once and") + + $ renpy.play('sounds/scribble.ogg') + "*Scribble* *Scribble*" + + menu: + gen "... and now..." ("base", xpos="far_left", ypos="head") + "\"... take this plant with you to your class...\"" if not d_flag_02: + $ d_flag_01.append("take this plant with you to your class.\n\n") + "\"... take this plant then shove it up your arse...\"" if not d_flag_02: + $ d_flag_01.append("take this plant then {b}{s}shove it up your{/s}{/b} bring it to class.\n\n") + gen "Shove it up your--..." ("grin", xpos="far_left", ypos="head") + call gen_chibi("sit_behind_desk") + with d3 + gen "I can't write that!" ("angry", xpos="far_left", ypos="head") + gen "What if she does it and I get shat on... No, no, no, let me change that." ("base", xpos="far_left", ypos="head") + call gen_chibi("paperwork") + with d3 + "\"... take me to class...\"" if d_flag_02: + $ d_flag_01.append("take me to class.\n\n") + + "\"... shove me up your arse...\"" if d_flag_02: + $ d_flag_01.append("{b}{s}shove me up your{/s}{/b} take me to class.\n\n") + gen "Shove me up your--..." ("grin", xpos="far_left", ypos="head") + call gen_chibi("sit_behind_desk") + with d3 + gen "I can't write that!" ("angry", xpos="far_left", ypos="head") + gen "What if she does it and I get shat on... No, no, no, let me change that." ("base", xpos="far_left", ypos="head") + call gen_chibi("paperwork") + with d3 + + $ renpy.play('sounds/scribble.ogg') + "*Scribble* *Scribble*" + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"... Sincerely, Dombledure.\"": + $ d_flag_01.append("Sincerely,\nDombledure.") + "\"... Yours truly, [genie_name].\"": + $ d_flag_01.append("Yours truly,\n[genie_name].") + + $ d_flag_01 = " ".join(d_flag_01) + + call gen_chibi("sit_behind_desk") + with d3 + pause 1.0 + gen "Yes...{w=0.5} that should do it... now to call her up here and use that scroll..." ("base", xpos="far_left", ypos="head") + stop music fadeout 3.0 + show screen blkfade + with d5 + centered "{size=+7}{color=#cbcbcb}A few moments later...{/color}{/size}" + call gen_chibi("hide") + $ desk_OBJ.foreground = "letter_and_plant_on_desk" + hide screen blkfade + with d5 + + pause 3.0 + call her_walk(action="enter") + with d3 + pause 1 + her "[genie_name], my class is about to--" ("open", "base", "worried", "L", trans=d3) + her "[genie_name]?" ("open", "squint", "base", "L") + call her_walk(xpos="mid", ypos="base") + pause 1.0 + call chibi_emote("thought","hermione") + pause 2.0 + call chibi_emote("hide", "hermione") + her "Are we playing hide and seek??" ("annoyed", "base", "angry", "R", trans=d3) + her "[genie_name], I really don't have the time--" ("annoyed", "narrow", "angry", "stare") + hide hermione_main + hide screen bld1 + with d3 + pause 1.0 + call chibi_emote("exclaim","hermione") + pause 1.0 + call chibi_emote("hide", "hermione") + her "..." + call her_walk(xpos="desk", ypos="base") + gen "(Yes... she's seen me...)" ("base", xpos="far_left", ypos="head") + gen "(Take the note!)" ("base", xpos="far_left", ypos="head") + her "What's with this ugly plant?" ("disgust", "narrow", "angry", "stare", trans=d3) + with vpunch + gen "(I'm not ugly!)" ("angry", xpos="far_left", ypos="head") + gen "(... Just haven't blossomed yet...)" ("base", xpos="far_left", ypos="head") + pause 1.0 + call her_chibi("stand", flip=True) + with d3 + her "Professo--...?" ("open", "base", "worried", "L", flip=True, trans=d3) + her "I thought I heard him for a second..." ("annoyed", "narrow", "worried", "R") + gen "(Read the note already, would you..)" ("base", xpos="far_left", ypos="head") + pause 1.0 + call her_chibi("stand", flip=False) + with d3 + her "Oh, there's also a note, I better read it..." ("open", "base", "base", "down", flip=False, trans=d3) + + gen "(Can't help herself but snoop in other peoples business can she...)" ("base", xpos="far_left", ypos="head") + $ desk_OBJ.foreground = "plant_on_desk" + with d3 + $ renpy.play("sounds/pageflip.ogg") + her "Oh... It's actually addressed to me..." ("soft", "base", "base", "stare") + + hide hermione_main + with d3 + + # Read letter from Genie + $ Letter(text=d_flag_01).open() + + her "...................................." ("disgust", "narrow", "angry", "mid", trans=d3) + her "So I'm a delivery girl as well now?" ("annoyed", "narrow", "angry", "stare") + her "Well... I suppose I'm already heading that way anyway..." ("annoyed", "closed", "angry", "stare") + her "I guess he must've checked my schedule for once..." ("annoyed", "narrow", "worried", "R") + gen "(Herbology class, here I come!)" ("grin", xpos="far_left", ypos="head") + + hide hermione_main + hide screen plant_on_desk + call her_chibi("hide") + show screen blkfade + with d9 + + pause 1.5 + call play_sound("door") + pause 1 + centered "{size=+7}{color=#cbcbcb}Herbology{/color}{/size}" + pause 1 + + call play_music("agenda") + play bg_sounds "sounds/murmur.ogg" fadein 2 fadeout 2 + + spo "In today's class, we will be learning about a plant called Devil's Snare." + spo "Hermione Granger was kind enough to bring us a pot with an underdeveloped Devil's Snare." + spo "It's kind of wilted and looks weak but..." + gen "(Oh fuck you, bitch!)" ("angry", xpos="far_left", ypos="head") + her "Actually, professor that was--" + spo "Miss Granger, please don't interrupt me." + her "Sorry..." + spo "Now then..." + spo "This is an incredibly dangerous plant, known to constrict and kill its prey with its fast and powerful tendrils." + spo "They are found naturally in caves and swamps as they like dark and damp places and hate sunlight." + her "Isn't Devil's Snare extremely dangerous?" + spo "Yes, Miss Granger. At least you're paying attention to what I was saying. Now please sit down." + $ renpy.sound.play("sounds/giggle2_loud.ogg") + pause 1.5 + $ renpy.sound.play("sounds/shush.ogg") + her "..........." + spo "These aren't even a week old, so they would barely be able to stroke you with their tendrils, let alone constrict you." + spo "Now everyone, pass the samples around so that you all can get a good look." + her "Professor Sprout, are they supposed to have mouths?" + spo "Yes Miss Granger, it's how they consume their prey once they have asphyxiated them." + her "Okay, well, what are the eyes for? I thought they sensed their prey by touch?" + spo "What are you on about Miss Granger? Devil's Snare don't have eyes." + her "This one d--" + $ renpy.sound.play("sounds/crowd_gasp.ogg") + $ renpy.sound.play("sounds/plant_burst.ogg") + stop bg_sounds + with vpunch + pause 2.0 + ">All of a sudden, you explode outwards in a flash of thick green tentacles." + her "What's happening?!?" + $ renpy.sound.play("sounds/plant_grab.ogg") + ">You quickly bind her wrists and waist..." + $ renpy.sound.play("sounds/gasp.ogg") + her "I can't move!" + $ renpy.sound.play("sounds/creaking.ogg") + ">then lift her into the air with your powerful appendages..." + spo "Stay calm Miss Granger, Devil's Snare will let you go if you don't move!" + ">Slinking your slimy tentacles under her top and skirt." + if not hermione.is_worn("panties"): + mal "Hey, look, look! She doesn't have panties on!" + fem "Oh my gosh, so the rumours about her were true?!" ("base", xpos="far_left", ypos="head") + mal2 "And she brought her own plant sample, I bet she planned this out, what a total slut!" + her "Oh no..." + $ renpy.sound.play("sounds/cloth_rip.ogg") + ">You rip her top off in a flurry of buttons and cotton..." + her "*Ahhhh*!" + $ renpy.sound.play("sounds/plant_slithering.ogg") + ">Sliding your tentacles up her legs and slowly pulling them apart." + ">Hermione struggles against you but her effort is in vain." + her "Please no... Not here." + if hermione.is_worn("panties"): + ">The tentacles slowly remove her panties, revealing her pussy to the entire class." + mal "Wow..." + fem "This is horrible, someone should do something!" ("base", xpos="far_left", ypos="head") + mal2 "Professor Sprout says as long as she doesn't move she'll be released." + $ renpy.sound.play("sounds/plant_slithering.ogg") + ">You position a large, flowered tentacle above Hermione's head." + her "What is that!?" + $ renpy.sound.play("sounds/creaking.ogg") + ">It suddenly opens to reveal a long slender appendage with an engorged base." + her "What the hell is that? It looks like a..." + ">While she is focused on the dangling limb above her, you move six of your smaller tentacles towards her waist." + her "Oh god no, someone please help me! Professor Sprout do something!" + spo "Students, stand back!" + ">Professor Sprout casts an impressive-looking spell at the mass of writhing tentacles." + $ renpy.sound.play("sounds/magic3.ogg") + spo "Confringo!" + $ renpy.sound.play("sounds/plop.ogg") + ">It strikes the plant forcefully but does nothing." + spo "What? That should have killed it. It must be magically protected." + ">You move three tentacles to Hermione's vagina and start teasing the opening." + her "Please Professor Sprout, do something! Anything!" + spo "I'm not sure I can, it has a powerful magical aura protecting it." + spo "If I try anything more advanced than the spell I just cast, I might hurt you." + ">You move two smaller tentacles to her asshole and start teasing the entrance, slowly prying it open." + her "Then what am I supposed to do?!" + spo "Just stay as still as possible and it should eventually let you go..." + ">You move a tentacle with a mouth on the end of it to her right breast and latch onto it." + her "Please, I'm not going to be able to stay still if this keeps going!" + ">The three tentacles at the entrance of her vagina suddenly thrust into her." + + $ renpy.sound.play("sounds/slick_02.ogg") + + if her_reputation > 15: + call tentacle_1 + else: + call tentacle_2 + + stop bg_sounds fadeout 3.0 + + "> After everyone leaves the room your body starts to turn back to normal..." + gen "That was hot!" + "> You notice that something is amiss..." + gen "What happened to my clothes?!" + gen "... I was expecting this other-wordly magic to cover the basics of transmutations at the very least." + gen "Guess I was wrong..." + gen "I must get out of here before anyone spots me." + + call play_sound("running") + + "> You dash through the castle in a flash and get back to your office where, fortunately you find some spare clothes lying about." + + $ desk_OBJ.foreground = None + $ sealed_scroll_ITEM.used = True + $ sealed_scroll_ITEM.owned = 0 + + hide screen blkfade + with d5 + + jump main_room + +label tentacle_1: #Public path + $ dynamic_cg("herm_tentacles", "p1") + hide screen blkfade + with d9 + call ctc + + her "!!!" + her "What on earth is going on?" + play bg_sounds "sounds/slickloop.ogg" fadein 2 fadeout 2 + ">You slowly begin to move the tentacles in her vagina." + $ dynamic_cg("herm_tentacles", "p2") + her "Oh..." + ">You move a small, mouthed tentacle to her ear so that only she can hear you." + gen "Enjoying yourself slut?" + her "Professor!" + gen "That's right, just do as I say and relax." + her "How am I supposed to relax?!" + gen "Well if you're not going to relax, at least try to enjoy it..." + ">You start rotating the tentacles in her vagina." + $ renpy.sound.play("sounds/slick_02.ogg") + $ dynamic_cg("herm_tentacles", "p3") + her "..." + spo "If you keep thrashing about so much it won't let you go, stay still girl!" + her "I-I'm trying!" + gen "Are you sure you're trying enough? Judging by how much you're moving I'd say that's quite the opposite." + gen "Someone might even think that you are enjoying this." + her "They wouldn't..." + mal "Who's she talking to?" + mal2 "I've got no idea, this bitch is crazy." + gen "Are you sure? Do you think you'll be able to stifle every moan?" + $ renpy.sound.play("sounds/slick_02.ogg") + ">You push deeply into her with the three tentacles." + her "!!!" + $ dynamic_cg("herm_tentacles", "p4") + gen "Do you think you'll be able to stop your hips from bucking?" + ">You give her another powerful thrust." + $ renpy.sound.play("sounds/slick_02.ogg") + her "{size=-6}{heart}*Ah*{/size}" + gen "Do you really think that you'll be able to stop yourself from begging me for more?" + ">You increase the speed of the tentacles." + play bg_sounds "sounds/slickloopfast.ogg" fadein 2 fadeout 2 + her "{size=-3}*mmmmmmm*{/size}" + gen "I don't think you will. In fact I know that you won't." + gen "Because I know what you are. A slut." + gen "A slut who can only think about getting off when she's being fucked by a plant in front of her classmates." + stop bg_sounds fadeout 2 + ">You stop moving the tentacles." + gen "Now tell them what you are." + her "W-w-what? No please, just don't stop." + $ renpy.sound.play("sounds/creaking.ogg") + gen "Tell them what you are and I'll keep going." + her "I can't... Just keep going..." + gen "Say it." + her "{size=-3}I'm a slut.{/size}" + play bg_sounds "sounds/slickloop.ogg" fadein 2 fadeout 2 + ">You start rotating the tentacles in her vagina ever so slowly." + gen "What was that? I don't think that they heard you. Why don't you say it once more, with feeling." + her "I'm a slut!" + play bg_sounds "sounds/slickloopveryfast.ogg" fadein 2 fadeout 2 + ">You begin fiercely fucking her vagina." + her "Yes, yes, I'm a fucking slut. Fuck me harder." + gen "See that wasn't so hard now was it. How about I give you a little reward." + her "Wha--" + $ dynamic_cg("herm_tentacles", "p5") + ">You thrust a ribbed tentacle deeply into her asshole in one motion." + $ renpy.sound.play("sounds/slick_02.ogg") + her "!!!" + her "It's in my ass... I-I'm...{w=0.4} I-I'm cumming." + ">You take alternating turns pumping into her ass and pussy." + her "I'm cumming! It's too much..." + $ dynamic_cg("herm_tentacles", "p6") + $ renpy.sound.play("sounds/slick_01.ogg") + ">You feel her body shudder as the orgasm rocks her." + ">This only spurs you on to fuck her harder." + her "Please... no more... I'll faint..." + ">You start to feel a strange energy flowing through the vines, moving towards the tips." + gen "This is it girl, get ready." + her "... ready?..." + $ dynamic_cg("herm_tentacles", "p7") + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_01.ogg") + ">With one final surge you release the pent up energy in a surge of white sap all over her." + $ renpy.sound.play("sounds/slick_02.ogg") + gen "By the gods, it's as if each vine is cumming. This is amazing..." + $ renpy.sound.play("sounds/slick_02.ogg") + ">The sensations proved to much for Hermione and she faints, going limp in your tentacles." + mal "What a slut..." + fem "That's what I've been telling you!" ("base", xpos="far_left", ypos="head") + mal2 "Man, I'm going to have to join Gryffindor." + hide screen cg + show screen blkfade + with d9 + pause.8 + ">You place Hermione back onto the desk as the plant that you are occupying slowly wilts and dies." + ">Professor Sprout quickly runs over." + spo "Miss Granger are you okay?" + her "..." + spo "Quickly, someone take her to the hospital wing." + mal "Should we cover her up?" + + # This is the public route, don't change writing please! + + if hermione.is_worn("panties"): + spo "Oh yes, I suppose you should." + mal "{size=-4}Damn dude, have you seen her tits?!{/size}" + ">*Squeeze* *Squeeze*" + mal2 "{size=-4}Holy shit, they're soft.{/size}" + spo "If you two don't stop that at once you'll get expelled." + mal "S-sorry..." + mal2 "Sorry professor!" + spo "Just take her out." + else: + spo "No need, if she feels comfortable parading without panties in MY class, then she should be fine being taken naked to the infirmary." + mal "Are you su--" + spo "I said take her out!" + mal "Y-yes ma'am..." + + call play_sound("walking") + + ">You hear the boys snickering to each other whilst they carry Hermione out in some unknown direction..." + + spo "Class dismissed!" + + hide screen cg + show screen blkfade + with d9 + pause.8 + + return + +label tentacle_2: # Personal path + $ dynamic_cg("herm_tentacles", "p1") + hide screen blkfade + with d9 + call ctc + + her "What kind of sick plant is this?!" + play bg_sounds "sounds/slickloop.ogg" fadein 2 fadeout 2 + ">You start pumping the tentacles in her vagina slowly..." + her "Oh..." + ">You move a small tentacle with a mouth on the end to her ear so that only she can hear you." + gen "Enjoying yourself, [hermione_name]?" + her "Profes--" + + $ dynamic_cg("herm_tentacles", "e2") + call ctc + + $ renpy.sound.play("sounds/slick_02.ogg") + ">You quickly force another flowered tentacle into her mouth." + gen "Now, now [hermione_name], you don't want anyone to find out how much you actually are enjoying yourself now, do you?" + her "*Hmmmhhhhhhhhh* !" + gen "Well, then just do what Miss Sprout says and stay still." + gen "Just act like this is some horrible accident, that you are just a victim." + gen "Instead of the slut that you really are..." + $ renpy.sound.play("sounds/slick_02.ogg") + ">You start to rotate the tentacles in her vagina." + gen "!!! *HMMMMM*" + mal "Wow, I think she's starting to enjoy it." + fem "Hermione? No way, she's too stuck-up to let boys kiss her, not to mention enjoying sex. {size=-6}With a plant but still..{/size}" ("base", xpos="far_left", ypos="head") + mal2 "I don't know man, she doesn't look like she hates it." + play bg_sounds "sounds/slickloopfast.ogg" fadein 2 fadeout 2 + ">You increase the speed of the tentacles in her vagina." + gen "Hear that, [hermione_name]? Your classmates are starting to realise how much you like getting your pussy stuffed." + her "*NNNNNNNNNm*" + gen "What was that? Faster you say?" + gen "You got it, [hermione_name]!" + $ dynamic_cg("herm_tentacles", "e3") + play bg_sounds "sounds/slickloopveryfast.ogg" fadein 2 fadeout 2 + ">You begin fucking Hermione in earnest." + her "*HMMMMMMm...!!!*" + ">The sensation of fucking Hermione in two different holes is almost overwhelming." + gen "I know you are loving every second of this..." + gen "... Being fucked in front of your classmates." + gen "Having your tits and pussy on display..." + + ">You move a ridged tentacle towards her ass." + her "*mm eehh oorr mmmnooo*!" + $ renpy.sound.play("sounds/slick_02.ogg") + $ dynamic_cg("herm_tentacles", "e4") + ">You enter her tight ass. The feeling of being in every hole at once is incredible." + her "*mmmmmmmm*" + ">Hermione barely manages a groan, overwhelmed by the shear amount of pleasure she is currently bombarded with." + play bg_sounds "sounds/slickloop.ogg" fadein 2 fadeout 2 + gen "Admit it! You're loving this aren't you." + gen "Having your holes filled in front of your classmates like the whore you are." + gen "Go on say it! Tell me what you are!" + her "*Hmmm aaaaa hhhhhhuuuttt*" + gen "What was that, I couldn't quite make it out over the sound of you sucking dick." + her "*Hmmm aaaaa hhhhhhuuuttt*!" + gen "One last time. Say it like you mean it." + $ dynamic_cg("herm_tentacles", "e5") + ">As she exhales, you quickly remove the tentacle from her mouth." + her "{size=+5}I'm a slut!{/size}" + ">The realisation of what has just occurred hits her like a ton of bricks." + her "I-I'm cumming... Professor--" + $ dynamic_cg("herm_tentacles", "e6") + $ renpy.sound.play("sounds/slick_02.ogg") + ">You quickly reinsert the tentacle into her mouth, silencing her." + gen "Good girl. Time for your reward." + play bg_sounds "sounds/slickloopveryfast.ogg" fadein 2 fadeout 2 + ">You quicken the pace as she convulses beneath you." + $ dynamic_cg("herm_tentacles", "e7") + $ renpy.sound.play("sounds/slick_01.ogg") + ">You explode inside of her from every tentacle-like heads, filling her up to the brim." + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_02.ogg") + mal "Told you she was a slut." + $ renpy.sound.play("sounds/slick_02.ogg") + fem "I guess you were right..." ("base", xpos="far_left", ypos="head") + hide screen cg + show screen blkfade + with d9 + pause.8 + ">Professor Sprout quickly runs over." + spo "Miss Granger are you okay? Miss Granger!" + her "..................*Ah*" + spo ".... She's breathing, thank be Merlin." + spo "You! Yes, you girls! Take her to the hospital wing at once!" + fem "W-wha-- But..." ("base", xpos="far_left", ypos="head") + spo "What are you waiting for!" + fem "{size=-4}Fine...{/size}" ("base", xpos="far_left", ypos="head") + + call play_sound("running") + pause 3.0 + + spo "Class dismissed!" + + return diff --git a/game/scripts/characters/hermione/events/tutoring.rpy b/game/scripts/characters/hermione/events/tutoring.rpy new file mode 100644 index 00000000..8b2f4a26 --- /dev/null +++ b/game/scripts/characters/hermione/events/tutoring.rpy @@ -0,0 +1,1940 @@ + + +label hg_tutor_start: + + # Tier 1 + if her_tutoring == 1: + jump hg_tutor_E1 + elif her_tutoring == 2: + jump hg_tutor_E2 + elif her_tutoring == 3: + jump hg_tutor_E3 + + # Tier 2 + elif her_tutoring == 4 and her_tier >= 2: + jump hg_tutor_E4 + elif her_tutoring == 5 and her_tier >= 2: + jump hg_tutor_E5 + + # Tier 3 + elif her_tutoring == 6 and her_tier >= 3: + jump hg_tutor_E6 + elif her_tutoring == 7 and her_tier >= 3: + jump hg_tutor_E7 + + # Tier 4 + elif her_tutoring == 8 and her_tier >= 4: + if adult_mag_ITEM.owned >= 1: # Adult magazines + jump hg_tutor_E8 + else: + gen "I need to buy adult magazines for this lesson." ("base", xpos="far_left", ypos="head") + elif her_tutoring == 9 and her_tier >= 4: + if porn_mag_ITEM.owned >= 1: # Porn magazines + jump hg_tutor_E9 + else: + gen "I need to buy porn magazines for this lesson." ("base", xpos="far_left", ypos="head") + + # Tier 5 + elif her_tutoring == 10 and her_tier >= 5: + if vibrator_ITEM.owned >= 1: # Vibrator + jump hg_tutor_E10 + else: + gen "I need to buy a vibrator for this lesson." ("base", xpos="far_left", ypos="head") + elif her_tutoring == 11 and her_tier >= 5: + if anal_plugs_ITEM.owned >= 1: # Anal plugs + jump hg_tutor_E11 + else: + gen "I need to buy anal plugs for this lesson." ("base", xpos="far_left", ypos="head") + + # Tier 6 + elif her_tutoring == 12 and her_tier >= 6: + jump hg_tutor_E12 + elif her_tutoring == 13 and her_tier >= 6: + jump hg_tutor_E13 + elif her_tutoring == 14 and her_tier >= 6 and hg_sex.trigger and hg_anal.trigger: + jump hg_tutor_E14 + elif her_tutoring == 15: + gen "(I have taught her everything there was to teach.)" ("base", xpos="far_left", ypos="head") + else: + gen "(She's not ready for her next lesson yet.)" ("base", xpos="far_left", ypos="head") + + jump hermione_requests + +label hg_tutor_E1: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + her "[genie_name], I'm very thankful that you're doing this for me." ("open", "base", "base", "mid") + gen "Doing what?" ("base", xpos="far_left", ypos="head") + her "My tutoring lessons..." ("soft", "squint", "base", "mid") + her "I hope you're still planning to lecture me, [genie_name]?" ("annoyed", "base", "base", "mid") + gen "Oh, I'll give you a lecture for sure." ("grin", xpos="far_left", ypos="head") + her "Shall I go and fetch my books, then?" ("open", "squint", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + her "My Books, [genie_name]. I need to study them more for my tests." ("soft", "base", "base", "R") + her "All the knowledge I need is in those books!" ("annoyed", "narrow", "angry", "R") + gen "Books can't teach you everything, girl... Some knowledge only comes with practice and experience!" ("base", xpos="far_left", ypos="head") + gen "(I'm really just going to make this shit up as I go, ain't I?)" ("base", xpos="far_left", ypos="head") + + her "Maybe... I mean, as the head of Hogwarts you probably know best." ("annoyed", "squint", "base", "mid") + gen "Sometimes you seem to forget that, Miss Granger." ("base", xpos="far_left", ypos="head") + her "That sounded like something professor Snape would say..." ("open", "squint", "base", "mid") + her "........." ("annoyed", "squint", "base", "mid") + her "Sorry about that, he thinks he's always right and it annoys me." ("smile", "happyCl", "base", "mid") + gen "..........." ("base", xpos="far_left", ypos="head") + her "Sir?" ("soft", "base", "base", "R") + gen "We're going to have to do it my way." ("base", xpos="far_left", ypos="head") + + $ d_flag_01 = False + $ d_flag_02 = False + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "-No books-": + $ d_flag_01 = True + + gen "Rule number one, no books allowed past this door." ("base", xpos="far_left", ypos="head") + her "Too bad, I love books." ("annoyed", "narrow", "worried", "down") + gen "{size=-4}And soon you'll love cock!{/size}" ("grin", xpos="far_left", ypos="head") + her "Yes?" ("soft", "base", "base", "mid", trans=d5) + gen "I didn't say anything..." ("base", xpos="far_left", ypos="head") + her "If you say so, [genie_name]." ("open", "base", "base", "R") + "-No back talk-": + $ d_flag_02 = True + + gen "First rule, no back talk." ("base", xpos="far_left", ypos="head") + her "Of course, sir!" ("base", "squint", "base", "mid") + gen "Good." ("base", xpos="far_left", ypos="head") + + gen "Now it's time we talk about your future, child." ("base", xpos="far_left", ypos="head") + her "I'm not a child anymore, professor!" ("normal", "squint", "angry", "mid") + + if d_flag_01: + gen "You know what, let's add a second rule--" ("base", xpos="far_left", ypos="head") + gen "No back talk!" ("angry", xpos="far_left", ypos="head") + her "B-but...--" ("open", "happy", "worried", "mid") + + gen "What did I just say?" ("base", xpos="far_left", ypos="head") + her "S-sorry..." ("annoyed", "squint", "worried", "R") + + if d_flag_02: + gen "Let's add a second rule on top of the first one--" ("base", xpos="far_left", ypos="head") + gen "No{w=0.3} more{w=0.3} books!" ("angry", xpos="far_left", ypos="head") + gen "They're an obsolete and inferior medium anyway, you don't need them." ("base", xpos="far_left", ypos="head") + her "(Too bad, I love books...)" ("annoyed", "narrow", "worried", "down") + + gen "Continuing--" ("base", xpos="far_left", ypos="head") + gen "I can tutor you, but you need to understand certain things about magic." ("base", xpos="far_left", ypos="head") + gen "With proper training, you can learn to increase your magic ability." ("base", xpos="far_left", ypos="head") + her "Yes?" ("soft", "base", "base", "mid") + gen "Certain emotions like love, and hate, pleasure, and pain..." ("base", xpos="far_left", ypos="head") + gen "{size=-2}(If she falls for that, I'm a true genius!){/size}" ("grin", xpos="far_left", ypos="head") + her "I've been studying magic for years and I've never heard of such a thing." ("normal", "base", "base", "mid") + gen "{size=-2}(Shit.){/size}" ("angry", xpos="far_left", ypos="head") + gen "And that's exactly why you're just an amateur. You still have much to learn about magic." ("base", xpos="far_left", ypos="head") + her "Please stop that, professor. I'm not an amateur!" ("open", "squint", "worried", "mid") + gen "Yes, maybe not empirically but..." ("base", xpos="far_left", ypos="head") + her "Empirically?!" ("annoyed", "base", "base", "mid") + gen "Enough of this. You came to me asking for my help, and if it starts like this--" ("angry", xpos="far_left", ypos="head") + her "Yes, I suppose you are right..." ("angry", "base", "worried", "mid") + her "Alright, I'm ready to study hard with you!" ("base", "base", "base", "mid") + gen "{size=-2}Yes, we will study hard-on going forward!{/size}" ("grin", xpos="far_left", ypos="head") + her "Huh?" ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "" ("normal", "narrow", "annoyed", "mid", cheeks="blush") + gen "What did I say about back talk?" ("angry", xpos="far_left", ypos="head") + her "..........." ("annoyed", "narrow", "annoyed", "R", cheeks="blush") + gen "You learn quick, that's good." ("base", xpos="far_left", ypos="head") + gen "Alright, I want you to take some time and think about what we've discussed. I'll let you know when we can start with the first lesson." ("base", xpos="far_left", ypos="head") + her "Can't we start now?" ("open", "base", "base", "mid") + gen "Miss Granger, you're not the only student I must take care of." ("base", xpos="far_left", ypos="head") + her "You're tutoring someone else?" ("open", "wide", "base", "mid") + gen "{size=-2}(If only...){/size}" ("base", xpos="far_left", ypos="head") + gen "I must take care of all the students of this school." ("base", xpos="far_left", ypos="head") + gen "But yes, there is another girl who needs..." ("base", xpos="far_left", ypos="head") + her "A Slytherin girl?!" ("shock", "wide", "base", "mid_soft") + gen "That is none of your business, miss Granger." ("grin", xpos="far_left", ypos="head") + her "Yes, professor. I'm sorry, but with all the recent events I'm a little on edge, and I would feel better if--" ("angry", "base", "angry", "mid") + gen "Apology accepted, and now goodnight!" ("base", xpos="far_left", ypos="head") + her "but--..." ("annoyed", "base", "angry", "L") + gen "That's enough. Other students tutoring sessions are confidential." ("base", xpos="far_left", ypos="head") + her "Well, when you put it that way..." ("soft", "base", "angry", "R") + her "Anyway." ("normal", "closed", "base", "mid") + her "Good night, professor, and thanks again for taking some of your precious time to help me." ("base", "base", "base", "mid") + + call her_walk("door", "base") + + her "{size=-4}(I'm glad professor agreed to tutor me!){/size}" ("base", "happyCl", "worried", "mid", cheeks="blush", xpos="base", ypos="head", flip=False, trans=d3) + her "{size=-4}(But pleasure and pain? I don't understand where this is going...){/size}" ("annoyed", "base", "base", "R") + her "{size=-4}(And what other students is he tutoring?){/size}" ("annoyed", "base", "worried", "L") + + call her_chibi("leave") + + $ her_tutoring = 2 + jump end_hermione_event + +label hg_tutor_E2: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "Miss Granger, time for your first lesson." ("base", xpos="far_left", ypos="head") + her "Yes, professor." ("soft", "base", "base", "R") + gen "Have you thought about what we discussed?" ("base", xpos="far_left", ypos="head") + her "Not really, I'm not sure what you mean by \"emotions\"." ("normal", "base", "base", "mid") + gen "{size=-2}(You'll learn soon enough, girl.){/size}" ("grin", xpos="far_left", ypos="head") + gen "For example, what was your state of mind when you heard those rumours about the Slytherin girls?" ("base", xpos="far_left", ypos="head") + her "Please don't bring that up, sir! it really makes me mad!" ("clench", "base", "worried", "stare") + gen "And what is this feeling?" ("base", xpos="far_left", ypos="head") + her "...{w=0.5}an emotion, I suppose..." ("normal", "base", "base", "mid") + gen "Yes, and don't you have emotions you prefer over others?" ("base", xpos="far_left", ypos="head") + her "When I have the best score on a test." ("smile", "happyCl", "base", "mid") + gen "{size=-2}(This girl is a monomaniac...){/size}" ("base", xpos="far_left", ypos="head") + gen "Don't you have other passions, things you like to do?" ("base", xpos="far_left", ypos="head") + her "Yes! Studying and reading books." ("smile", "happyCl", "base", "mid") + gen "{size=-2}(By all the ancient gods...){/size}" ("angry", xpos="far_left", ypos="head") + gen "Things are not going in the right direction..." ("base", xpos="far_left", ypos="head") + her "And what direction is that, sir?" ("normal", "base", "base", "mid") + gen "{size=-2}(You impaled on my cock!){/size}" ("grin", xpos="far_left", ypos="head") + gen "Knowledge, Miss Granger, knowledge..." ("base", xpos="far_left", ypos="head") + her "I am by far the most knowledgeable of my peers, professor. What more can you ask?" ("open", "closed", "base", "mid") + gen "......{w=0.5}Miss Granger, did we not discuss this already? You need to accept you still have much to learn." ("base", xpos="far_left", ypos="head") + gen "I'm tired if repeating myself, let's finish it for tonight." ("base", xpos="far_left", ypos="head") + her "What? So soon?" ("open", "narrow", "annoyed", "mid") + gen "There are other students requiring my attention, you're not the only one." ("base", xpos="far_left", ypos="head") + her "Don't tell me you're planning on tutoring one of those harlots from Slytherin, professor?" ("normal", "narrow", "annoyed", "mid", cheeks="blush") + gen "Maybe, maybe not, that's none of your concern." ("base", xpos="far_left", ypos="head") + her "But...{w=0.5} that's so wrong..." ("open", "base", "base", "mid") + gen "One must make sacrifices to achieve greatness..." ("base", xpos="far_left", ypos="head") + her "But--" ("open", "base", "worried", "mid", cheeks="blush") + gen "If you want to progress and to restore the Gryffindor pride, you must!" ("base", xpos="far_left", ypos="head") + her "I guess you're right. I'll do my best, professor." ("base", "base", "worried", "mid", cheeks="blush") + gen "{size=-2}(She is so naive, it's adorable.){/size}" ("grin", xpos="far_left", ypos="head") + gen "Good, now time to go to bed, my apprentice." ("base", xpos="far_left", ypos="head") + her "{size=-2}(*Tsh*... Like I'm going to bed at this time, I need to study more.){/size}" ("normal", "squint", "angry", "mid") + her "Of course! Goodnight, [genie_name]." ("base", "happyCl", "base", "mid") + + call her_walk("door", "base") + + her "{size=-4}(Filthy whores...){/size}" ("angry", "closed", "angry", "mid", cheeks="blush", ypos="head", flip=False, trans=d3) + her "{size=-4}(Oh, I should not talk like that...{w=0.5} but it feels so good!){/size}" ("base", "happyCl", "worried", "mid", cheeks="blush") + + call her_chibi("leave") + + $ her_tutoring = 3 + jump end_hermione_event + +label hg_tutor_E3: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "So, have you thought about emotions and their usefulness in the practice of magic?" ("base", xpos="far_left", ypos="head") + her "Yes, first I tried to cast a spell while thinking of the behaviour of those Slytherin girls." ("open", "closed", "base", "mid") + her "It made me so angry and confused that I lost my focus and failed miserably." ("annoyed", "base", "base", "mid") + her "I don't think it helps at all." ("annoyed", "squint", "base", "mid") + gen "That's your problem Miss Granger, you think you already know the answer and don't follow my instructions." ("base", xpos="far_left", ypos="head") + gen "I don't care about the behaviour of those girls." ("base", xpos="far_left", ypos="head") + her "........." ("annoyed", "narrow", "annoyed", "up") + her "Sorry about that, {w=0.5}again." ("open", "squint", "base", "mid") + gen "I need you to focus on what those girls do with professors, not their behaviour in general." ("base", xpos="far_left", ypos="head") + her "But..." ("open", "base", "base", "mid", cheeks="blush") + gen "Last time you were talking about your sacred duty and at the first hurdle you hesitate." ("base", xpos="far_left", ypos="head") + her "{size=-2}(\"Sacred\"? Don't exaggerate, old man){/size}" ("annoyed", "narrow", "worried", "down") + her "{size=-2}(Or not! Maybe I'll be remembered later for being the saviour of the Gryffindor house!){/size}" ("open", "happyCl", "worried", "mid", cheeks="blush") + her "Yes, you're right! It {b}is{/b} my sacred duty!" ("smile", "base", "base", "R") + gen "{size=-2}(It works every time, it's too easy... She looks so proud of herself.){/size}" ("grin", xpos="far_left", ypos="head") + her "I'll do my best, professor!" ("open", "base", "base", "mid", cheeks="blush") + gen "I'm excited too... uh, I'm sure you will." ("grin", xpos="far_left", ypos="head") + her "I'm glad you have such high confidence in me." ("grin", "happyCl", "worried", "mid") + gen "And I'm glad you're starting to believe in this. I think you have the potential to master this branch of magic." ("base", xpos="far_left", ypos="head") + her "You seem tired, professor." ("open", "squint", "base", "mid") + g11 "{size=-2}(Tired of waiting to annihilate your ass.){/size}" + her "Yes, professor?" ("annoyed", "base", "base", "mid") + gen "Yes we can!" ("grin", xpos="far_left", ypos="head") + gen "Uh, I mean, I'm sure I'll tire you out soon enough, Miss Granger. How about you get some sleep?" ("base", xpos="far_left", ypos="head") + her "Sleep? I must study first." ("open", "closed", "base", "mid") + gen "I wasn't thinking about that, but you're right, time to go to bed!" ("base", xpos="far_left", ypos="head") + gen "Just make sure to think about what you learned today." ("base", xpos="far_left", ypos="head") + + call her_walk("door", "base") + + her "{size=-4}(*Hmm*... I wonder what he {b}was{/b} thinking about.){/size}" ("base", "narrow", "base", "down", cheeks="blush", ypos="head", flip=False, trans=d3) + her "{size=-4}(Probably all the problems caused by those harlots.){/size}" ("base", "narrow", "base", "mid_soft", cheeks="blush") + her "{size=-4}(Well, I will never be like them, so no need to worry.){/size}" ("silly", "narrow", "base", "mid_soft", cheeks="blush") + + call her_chibi("leave") + + $ her_tutoring = 4 + jump end_hermione_event + +label hg_tutor_E4: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + her "Sir, I want to apologise for doubting you." ("open", "base", "base", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "Your \"atypical\" method works!" ("angry", "happyCl", "worried", "mid", emote="sweat") + gen "{size=-2}(Impossible!){/size}" ("base", xpos="far_left", ypos="head") + gen "It works? I mean, yes, naturally it works!" ("base", xpos="far_left", ypos="head") + gen "I'm glad you've succeeded. Now tell me more." ("base", xpos="far_left", ypos="head") + her "I managed to levitate a heavy rock while thinking about the behaviour of two girls I saw earlier in the library." ("open", "closed", "base", "mid") + her "Usually I only manage to move small rocks. I don't know, I felt kind of warm inside thinking about that." ("mad", "base", "angry", "mid", cheeks="blush") + her "It felt weird but... {w=0.5}good at the same time." + gen "{size=-2}(She is so ignorant of life! Unbelievable.){/size}" ("base", xpos="far_left", ypos="head") + gen "You've never felt such a sensation before?" ("base", xpos="far_left", ypos="head") + her "Generally I get angry and rush to stop such behaviour." ("clench", "base", "worried", "mid", cheeks="blush", tears="soft") + her "But yesterday, I don't know, I just watched without interrupting them." ("open", "happyCl", "worried", "mid", cheeks="blush") + her "And when I pictured it, as you told me to, it worked." ("open", "base", "base", "mid", cheeks="blush") + her "I feel at the same level as those harlots, I'm so ashamed." ("angry", "base", "angry", "mid", cheeks="blush") + gen "But you succeeded." ("base", xpos="far_left", ypos="head") + gen "{size=-2}(To my surprise...){/size}" ("grin", xpos="far_left", ypos="head") + her "Yes! With this method I'll have better grades in my tests and win the House Cup for Gryffindor!" ("angry", "happyCl", "worried", "mid", cheeks="blush", emote="sweat") + gen "{size=-2}(In your dreams.){/size}" ("grin", xpos="far_left", ypos="head") + gen "Good, good. Now I want to know more about those two girls." ("base", xpos="far_left", ypos="head") + her "It's not very relevant, professor. And I'm not sure this is appropriate." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "How will you improve yourself if I can't guide you?" ("base", xpos="far_left", ypos="head") + gen "And for that, I must know more." ("base", xpos="far_left", ypos="head") + her "Alright, but it's embarrassing." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "{size=-2}(Ooh, I hope they were naked!){/size}" ("grin", xpos="far_left", ypos="head") + her "I went to the library to study interactions between plants..." ("open", "closed", "base", "mid") + g11 "{size=-2}(Yeah, yeah, come on...){/size}" + her "... and I heard muffled sounds." ("base", "base", "base", "R", cheeks="blush") + her "I was hoping to catch a teacher doing bad things with one of those Slytherin whores." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "I slowly headed towards the sounds and I discovered two girls in an alcove." ("open", "base", "base", "mid", cheeks="blush") + her "I remained hidden to observe them." ("grin", "wink", "base", "mid", cheeks="blush") + g11 "{size=-2}(Come on!){/size}" + her "Yes, professor?" ("base", "narrow", "base", "up", cheeks="blush") + gen "Yes, no, please continue." ("base", xpos="far_left", ypos="head") + her "They were kissing passionately." ("open", "happyCl", "worried", "mid", cheeks="blush") + gen "And? And?" ("grin", xpos="far_left", ypos="head") + her "And a moment later they began to..." ("open", "closed", "base", "mid") + her "They began to..." ("open", "happyCl", "worried", "mid", cheeks="blush") + her "They began to touch their breasts!" ("scream", "wide", "base", "stare", cheeks="blush") + gen "They were naked, I hope?" ("base", xpos="far_left", ypos="head") + her "What?" ("open", "happy", "base", "mid", cheeks="blush") + her "No, fortunately they were dressed." + her "How can such a thing happen in our beloved school!" ("angry", "base", "angry", "mid", cheeks="blush") + gen "But you kept watching, didn't you?" ("base", xpos="far_left", ypos="head") + her "Only for educational purposes." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "{size=-2}(\"Educational purposes\"... ha-ha, I've never heard a worse excuse!){/size}" ("grin", xpos="far_left", ypos="head") + gen "And during all this time you didn't feel a certain need?" ("base", xpos="far_left", ypos="head") + her "To my shame, yes. Like I said before, I felt kind of warm inside." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "Like when I have to pee but... different. Better." ("disgust", "narrow", "base", "down", cheeks="blush") + gen "This good sensation... next time you experience it, let it come." ("base", xpos="far_left", ypos="head") + her "But..." ("open", "base", "base", "mid", cheeks="blush") + gen "It's the only way to get better, Miss Granger." ("base", xpos="far_left", ypos="head") + gen "If you suppress it, it won't work." ("base", xpos="far_left", ypos="head") + her "Ok...{w=0.3} I'll try my best." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "But to be honest, sir, I thought you were going to punish those two sluts." + gen "Can you provide proof of their crime? No?" ("base", xpos="far_left", ypos="head") + gen "Even I can't punish students without proof of any wrongdoing." ("base", xpos="far_left", ypos="head") + g11 "{size=-2}(With the possible exception of you!){/size}" + gen "Anyway, you've done well. I think it will be enough for this lesson." ("base", xpos="far_left", ypos="head") + gen "Remember what I've told you, and good night!" ("base", xpos="far_left", ypos="head") + her "Good night, professor." ("base", "base", "base", "mid") + + call her_walk("door", "base") + + her "{size=-4}(Well, I'll try to investigate those two girls again.){/size}" ("disgust", "narrow", "base", "down", cheeks="blush", ypos="head", flip=False, trans=d3) + her "{size=-4}(Like a real anthropologist!){/size}" ("base", "narrow", "base", "mid_soft", cheeks="blush") + her "{size=-4}(Yes, that's right. Hermione the anthropologist!){/size}" ("base", "happyCl", "worried", "mid", cheeks="blush") + + call her_chibi("leave") + + $ her_tutoring = 5 + + if her_whoring < 9: + $ her_whoring += 1 + + jump end_hermione_event + +label hg_tutor_E5: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "So, any luck with your \"studies\"?" ("base", xpos="far_left", ypos="head") + her "Yes! When you hear the results of my hunt, you'll be proud of me!" ("base", "happyCl", "base", "mid") + gen "{size=-2}(\"Hunt?\"){/size}" ("base", xpos="far_left", ypos="head") + gen "Your \"hunt,\" Miss Granger?" ("base", xpos="far_left", ypos="head") + her "Yes, professor!" ("smile", "happyCl", "base", "mid") + her "Like an explorer in the wild jungle, I tracked those two filthy animals." ("base", "narrow", "worried", "mid_soft", cheeks="blush") + her "With success, sir!" ("smile", "happyCl", "base", "mid", cheeks="blush", emote="happy") + her "Hogwarts has so many dark and discreet corners..." ("annoyed", "base", "base", "mid") + her "Believe me, it wasn't easy, professor." ("base", "narrow", "worried", "mid_soft") + gen "I'm sure you gave it your best." ("base", xpos="far_left", ypos="head") + gen "But right now I await your report." ("base", xpos="far_left", ypos="head") + her "Yes, but before that I want to clarify that my report is purely for scientific purposes." ("soft", "base", "base", "R") + gen "{size=-2}(Sure...){/size}" ("base", xpos="far_left", ypos="head") + her "So I tracked down those two harlots to an area in the attic." ("open", "closed", "base", "mid") + her "Which, by the way, seems to be the meeting place for girls of this... sort." ("annoyed", "squint", "base", "mid") + gen "And what is your opinion on them?" ("base", xpos="far_left", ypos="head") + her "At least they don't sleep with professors in exchange for house points." ("open", "squint", "base", "mid") + her "" ("annoyed", "squint", "base", "mid") + gen "And that's it?" ("base", xpos="far_left", ypos="head") + gen "No \"this behaviour must be severely punished\"?" ("base", xpos="far_left", ypos="head") + gen "Are you attracted to girls of this sort, Miss Granger?" ("base", xpos="far_left", ypos="head") + her "What? I'm not a-- I mean no, Sir." ("open", "base", "worried", "mid", cheeks="blush") + gen "Alright, alright, back to your report, if you please." ("base", xpos="far_left", ypos="head") + her "{size=-2}(I'm not a lesbian...{w=0.3} I think...){/size}" ("disgust", "narrow", "base", "down", cheeks="blush") + her "{size=-2}(Hermione, pull yourself together! You're not a harlot!){/size}" ("mad", "happyCl", "worried", "mid", cheeks="blush") + her "No, I'm not!" ("annoyed", "narrow", "worried", "down", cheeks="blush") + gen "Excuse me?" ("base", xpos="far_left", ypos="head") + her "Uh... Yes, my report. My {b}scientific{/b} report." ("open", "base", "base", "mid", cheeks="blush") + gen "{size=-2}(Yeah, we get it...){/size}" ("base", xpos="far_left", ypos="head") + her "So, like before, they started by kissing passionately." ("open", "happyCl", "worried", "mid", cheeks="blush") + her "With the tongue and everything!" ("open", "base", "base", "R", cheeks="blush") + + menu: + "-Start jerking off-": + $ genie_masturbating = True + hide hermione_main + hide screen blktone + call nar(">You reach under the desk and grab your cock...") + call gen_chibi("jerk_off_behind_desk") + with d3 + call ctc + + "-Just listen-": + $ genie_masturbating = False + pass + + her "" ("open", "base", "base", "mid", cheeks="blush") + gen "And? And?" ("grin", xpos="far_left", ypos="head") + her "They pulled up their shirts and caressed each other's breasts." ("open", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-2}(Their beautiful and tempting breasts...){/size}" ("open", "narrow", "base", "up", cheeks="blush") + her "Later those nasty girls raised their skirts and started to touch each other \"there\" while kissing." ("silly", "narrow", "base", "up", cheeks="blush") + her "{size=-2}(I can't believe I said that!){/size}" ("base", "narrow", "base", "up", cheeks="blush", tears="sweat") + her "They were very excited, and I could see their panties become wet." ("open", "narrow", "base", "up", cheeks="blush") + her "Disgusting." ("annoyed", "narrow", "base", "up", cheeks="blush") + if genie_masturbating: + gen "{size=-2}(Yes... yes...){/size}" ("grin", xpos="far_left", ypos="head") + her "One of the girls went crazy and inserted her fingers into the other's \"thing,\" and worked them furiously." ("silly", "base", "worried", "mid", cheeks="blush") + her "Soon imitated by her girlfriend." ("base", "narrow", "angry", "mid", cheeks="blush") + her "Those whores came so hard I'm sure they heard the screams on the other side of the grounds!" ("soft", "narrow", "base", "mid", cheeks="blush") + + if genie_masturbating: + her "{size=-2}(And I had to bite my lip, or else they would've heard me too...){/size}" ("clench", "narrow", "base", "down", cheeks="blush") + hide hermione_main + with d3 + + call cum_block + + g11 "Yes! That's the stuff!" + hide screen bld1 + with d1 + call gen_chibi("cum_behind_desk") + call cum_block + call ctc + + call gen_chibi("cum_behind_desk_done") + with d3 + + if hg_jerkoff.trigger: + her "Professor!" ("angry", "base", "angry", "mid", cheeks="blush") + gen "You enjoyed it too, so don't act all innocent." ("base", xpos="far_left", ypos="head") + gen "Anyway, I hope it was revealing." ("base", xpos="far_left", ypos="head") + + $ her_mood += 7 + else: + her "Professor?" ("annoyed", "base", "base", "mid", cheeks="blush") + gen "Ah, Yes... I hope it was revealing." ("base", xpos="far_left", ypos="head") + + else: + gen "You enjoyed it too." ("base", xpos="far_left", ypos="head") + her "Maybe..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Anyway, I hope it was revealing." ("base", xpos="far_left", ypos="head") + + her "\"Revealing?\" I'm not sure what you mean by that." ("open", "squint", "base", "mid") + her "You're the headmaster, act as such!" ("open", "base", "base", "mid") + her "Do all you can to stop those acts of debauchery!" + her "" ("annoyed", "narrow", "angry", "R") + gen "Yes, of course." ("base", xpos="far_left", ypos="head") + gen "{size=-2}(Hypocrite...){/size}" ("base", xpos="far_left", ypos="head") + gen "You said that those girls became wet." ("base", xpos="far_left", ypos="head") + gen "Weren't you a little too?" ("grin", xpos="far_left", ypos="head") + her "When I went to bed I noticed it, yes." ("disgust", "narrow", "base", "down", cheeks="blush") + her "Apparently bad fluids are released from your body when you have faced such acts." ("mad", "wide", "base", "stare", cheeks="blush") + gen "No, they aren't bad. It happens when you're excited." ("base", xpos="far_left", ypos="head") + her "No way! I can control myself!" ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="soft_blink") + her "" ("angry", "base", "angry", "mid", cheeks="blush") + gen "No one can control their base desires." ("base", xpos="far_left", ypos="head") + gen "Consider this well, and enjoy your night, Miss Granger." ("base", xpos="far_left", ypos="head") + her "Good night, professor." ("annoyed", "base", "worried", "R") + + call her_walk("door", "base") + + her "{size=-4}(I enjoyed it too much. Maybe I'm becoming a pervert as well){/size}" ("base", "narrow", "base", "up", cheeks="blush", ypos="head", flip=False, trans=d3) + her "{size=-4}(I lost control, it won't happen again!){/size}" ("shock", "narrow", "base", "down", cheeks="blush") + her "{size=-4}(Good thing I'm not a degenerate like those filthy girls!){/size}" ("base", "narrow", "base", "mid_soft", cheeks="blush") + + call her_chibi("leave") + + $ her_tutoring = 6 + + if her_whoring < 9: + $ her_whoring += 1 + + jump end_hermione_event + +label hg_tutor_E6: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "Bravo, last time you experienced your first \"emotion\"." ("base", xpos="far_left", ypos="head") + her "Yes, I remember. But I still don't see the link with magic." ("open", "squint", "base", "mid") + gen "{size=-2}(Me neither...){/size}" ("base", xpos="far_left", ypos="head") + gen "If you want to progress, you have to go a little further than a simple observation." ("base", xpos="far_left", ypos="head") + gen "You'll need to participate." ("base", xpos="far_left", ypos="head") + her "What! No way I'll participate in such debauchery!" ("scream", "closed", "base", "mid", cheeks="blush") + her "How can you even suggest such a thing!" ("angry", "base", "angry", "mid") + gen "Oh you don't have to go that far in one go." ("base", xpos="far_left", ypos="head") + her "I'm not sure I want to go there at all." ("open", "closed", "base", "mid") + gen "How many times do I have to remind you why you're doing this?" ("base", xpos="far_left", ypos="head") + her "Yes but..." ("open", "base", "base", "mid") + gen "But what?" ("base", xpos="far_left", ypos="head") + her "A girl like me shouldn't stoop to such practices." ("annoyed", "squint", "base", "mid") + gen "A girl like you should use all means at their disposal in order to excel." ("base", xpos="far_left", ypos="head") + her "..........." + her "Alright, but this must remain between us." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "You cannot disclose this to other professors, especially professor Snape!" ("annoyed", "narrow", "worried", "down") + gen "Oh, I have no intention of sharing alright." ("base", xpos="far_left", ypos="head") + gen "{size=-2}(You're mine.){/size}" ("grin", xpos="far_left", ypos="head") + gen "Speaking of you with professor Snape." ("base", xpos="far_left", ypos="head") + her "Well, what must I do now?" ("open", "closed", "base", "mid") + gen "Come here." ("base", xpos="far_left", ypos="head") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + call her_chibi_scene("behind_desk_front") + call hide_blkfade + call ctc + + call bld + gen "Have you ever touched yourself?" ("base", xpos="far_left", ypos="head") + her "Professor!" ("annoyed", "narrow", "angry", "mid", cheeks="blush", xpos="mid", ypos="base") + call her_chibi_scene("grope_ass_front") + with d7 + + call nar(">You touch her leg with your hands.") + gen "Please answer the question, Miss Granger. Have you ever touched yourself?" ("base", xpos="far_left", ypos="head") + her "No, it's... it's wrong!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "But when you looked at these girls, you felt certain emotions." ("base", xpos="far_left", ypos="head") + her "Yes... and?" ("annoyed", "base", "base", "mid", cheeks="blush") + gen "You didn't feel the need to touch yourself?" ("base", xpos="far_left", ypos="head") + her "Yes... but I resisted." ("soft", "narrow", "base", "up", cheeks="blush") + call nar(">You start to caress her thigh.") + her "Professor..." ("open", "happyCl", "worried", "mid", cheeks="blush") + gen "And you felt those emotions without even touching yourself." ("base", xpos="far_left", ypos="head") + her "Yes..." ("open", "base", "base", "mid", cheeks="blush") + gen "{size=-2}(What a slut!){/size}" ("grin", xpos="far_left", ypos="head") + if hermione.is_worn("panties"): + call nar(">You move forward to her panties.") + else: + call nar(">You move forward to her pussy.") + her "" ("open", "happyCl", "worried", "mid", cheeks="blush") + gen "Good." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("behind_desk_front") + with d3 + + call nar(">You stop caressing her.") + her "Why... why did you stop?" ("mad", "wide", "base", "stare", cheeks="blush") + gen "Oh, because I need you to think about all this before we meet again." ("base", xpos="far_left", ypos="head") + her "But..." ("mad", "wide", "base", "stare", cheeks="blush") + gen "Good night, my dear." ("base", xpos="far_left", ypos="head") + her "Good night, professor." ("annoyed", "base", "worried", "R") + + hide hermione_main + call blkfade + + "You dismiss Hermione." + + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + hide screen bld1 + call hide_blkfade + + call her_walk("door", "base") + + her "{size=-4}(This is wrong...){/size}" ("disgust", "narrow", "base", "down", cheeks="blush", ypos="head", flip=False, trans=d3) + her "{size=-4}(I shouldn't listen to him.){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-4}(And yet...){/size}" ("base", "narrow", "base", "down", cheeks="blush") + + call her_chibi("leave") + + $ her_tutoring = 7 + + if her_whoring < 12: + $ her_whoring += 1 + + jump end_hermione_event + +label hg_tutor_E7: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "So, have you started practising my teachings?" ("base", xpos="far_left", ypos="head") + her "I don't even know where to start." ("open", "squint", "base", "mid") + gen "You see, the secret is to stimulate appropriate areas." ("base", xpos="far_left", ypos="head") + gen "Areas which are more sensitive than others." ("base", xpos="far_left", ypos="head") + her "You mean my intimate areas, sir?!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Well, they're called intimate for a reason." ("base", xpos="far_left", ypos="head") + gen "You said you've never touched yourself because it was wrong." ("base", xpos="far_left", ypos="head") + gen "But it's never wrong to exercise ones body in order to reach a new level of consciousness." ("base", xpos="far_left", ypos="head") + gen "{size=-2}(The things I have to make up...){/size}" ("angry", xpos="far_left", ypos="head") + gen "You can begin with your breasts, for example." ("base", xpos="far_left", ypos="head") + gen "But you shouldn't only caress your nipples but also grab your tits and squeeze them." ("base", xpos="far_left", ypos="head") + gen "And in the meanwhile, you can think of those two girls." ("base", xpos="far_left", ypos="head") + gen "Or what you want to do with those girls." ("grin", xpos="far_left", ypos="head") + her "What makes you think... No, I don't want..." ("angry", "happyCl", "worried", "mid", cheeks="blush", emote="sweat") + her "I definitely don't want to have {b}anything{/b} to do with those harlots!" ("scream", "happyCl", "worried", "mid", cheeks="blush") + gen "Don't lie to yourself. It's obvious that you feel a form of attraction to those two girls." ("base", xpos="far_left", ypos="head") + her "I...{w=0.3} I honestly don't know what to think anymore." ("mad", "base", "angry", "mid", cheeks="blush") + her "At the moment my feelings are so confusing..." + gen "{size=-2}(Exactly what I was hoping!){/size}" ("grin", xpos="far_left", ypos="head") + her "I'm happy to earn points for my house and at the same time I feel so ashamed." ("angry", "squint", "base", "mid", cheeks="blush", tears="soft") + her "And the same goes for your lessons." + gen "Yet you can't deny your progress in the practice of magic." ("base", xpos="far_left", ypos="head") + her "Yes...{w=0.2} perhaps you're right." ("base", "narrow", "worried", "mid_soft", cheeks="blush", tears="soft") + gen "You have to let it go, Miss Granger, follow your instincts!" ("base", xpos="far_left", ypos="head") + gen "{size=-2}(Grab my cock and wank it savagely!){/size}" ("grin", xpos="far_left", ypos="head") + her "I'm not sure if..." ("open", "narrow", "worried", "mid_soft", cheeks="blush") + gen "Enough procrastination, time for practice!" ("base", xpos="far_left", ypos="head") + gen "Come here." ("base", xpos="far_left", ypos="head") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + ">Hermione walks towards your desk." + ">You grab her tits and massage them softly." + pause .5 + + call her_chibi_scene("grope_tits") + with d1 + hide screen blkfade + her "" ("open", "happyCl", "worried", "mid", cheeks="blush", xpos="mid", ypos="base") + call ctc + + call bld + gen "Like I said, it's important you learn how to properly stimulate your \"emotional\" body areas." ("base", xpos="far_left", ypos="head") + gen "It's not enough if I do it myself, you need to practise when you're alone." ("base", xpos="far_left", ypos="head") + her "" ("upset", "happyCl", "worried", "mid", cheeks="blush") + gen "Like in your bed or in the shower, for example." ("base", xpos="far_left", ypos="head") + call nar(">You keep massaging her tits...") + her "" ("open", "happyCl", "worried", "mid", cheeks="blush") + call nar(">You feel her nipples becoming hard.") + her "Yes but...{w=0.3} Professor, it's inappropriate for a girl of good education!" ("open", "base", "base", "mid", cheeks="blush") + gen "Don't let old prejudices weigh you down. You're a girl with great potential." ("base", xpos="far_left", ypos="head") + call nar(">You gently squeeze her nipples through the fabric.") + her "*Ah*... thank you Professor." ("open", "narrow", "base", "up", cheeks="blush") + gen "A girl with a brilliant mind." ("base", xpos="far_left", ypos="head") + call nar(">You increase your grip on her nipples.") + gen "A girl who will become a woman of exception." ("base", xpos="far_left", ypos="head") + her "*Ahh* yes... I'm already a woman of exception!" ("grin", "base", "angry", "mid", cheeks="blush") + gen "(...)" ("base", xpos="far_left", ypos="head") + call nar(">You firmly pinch her nipples.") + her "*Ahhh* {heart} not so hard..." ("silly", "happyCl", "worried", "mid", cheeks="blush", tears="soft") + + hide hermione_main + call blkfade + call nar(">You abruptly stop.") + pause .5 + her "*Hmph*...{w=0.3} Why did you stop, [genie_name]?" ("clench", "base", "worried", "mid", cheeks="blush", emote="angry", ypos="head", flip=False, trans=d3) + gen "Lesson is over. Time to practise by yourself." ("base", xpos="far_left", ypos="head") + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + hide screen blkfade + + her "..........." ("annoyed", "narrow", "worried", "R", cheeks="blush", xpos="mid", ypos="base", trans=fade) + gen "Good night, my little witch." ("base", xpos="far_left", ypos="head") + her "Good night, professor, and thank you for this lesson." ("base", "happyCl", "base", "mid") + her "{size=-2}(I just wish it had lasted longer...){/size}" ("annoyed", "squint", "base", "mid", cheeks="blush") + + call her_walk("door", "base") + + her "{size=-4}(\"My little witch?\"){/size}" ("annoyed", "narrow", "angry", "R", cheeks="blush", ypos="head", flip=False, trans=d3) + her "{size=-4}(Why not, after all...){/size}" ("base", "narrow", "base", "up", cheeks="blush") + + call her_chibi("leave") + + $ her_tutoring = 8 + + if her_whoring < 12: + $ her_whoring += 1 + + jump end_hermione_event + + +label hg_tutor_E8: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "So, Miss Granger, have you practised my teachings?" ("base", xpos="far_left", ypos="head") + her "Yes...{w=0.2} a little." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "And?" ("base", xpos="far_left", ypos="head") + her "It feels even better when I'm naked." ("smile", "happyCl", "base", "mid", cheeks="blush", emote="happy") + her "{size=-2}(Oh no, I shouldn't have said that...){/size}" ("mad", "wide", "base", "stare", cheeks="blush") + gen "Well come here and undress, we'll practise." ("base", xpos="far_left", ypos="head") + her "Completely?!" ("annoyed", "base", "worried", "mid", cheeks="blush") + gen "No, only the top will suffice." ("base", xpos="far_left", ypos="head") + gen "{size=-2}(For the moment...){/size}" ("grin", xpos="far_left", ypos="head") + her "I'll be showing you my breasts without even earning any points?" ("open", "squint", "base", "mid") + gen "You can't have both points and lessons." ("base", xpos="far_left", ypos="head") + her "Okay..." ("angry", "happyCl", "worried", "mid", cheeks="blush", emote="sweat") + + $ hermione.strip("robe", "accessory") + call her_chibi("lift_top") + + call set_her_action("lift_top") + + $ hermione.strip("top") + pause .5 + + her "Like that?" ("annoyed", "narrow", "angry", "R", cheeks="blush") + + if hermione.is_worn("bra"): + gen "Without your bra Miss Granger..." ("base", xpos="far_left", ypos="head") + pause .5 + $ hermione.strip("bra") + pause .5 + + gen "Yes, and now come here." ("base", xpos="far_left", ypos="head") + her "........" ("annoyed", "closed", "base", "mid", cheeks="blush") + her "" ("base", "closed", "base", "mid") + gen "Now." ("base", xpos="far_left", ypos="head") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + ">Hermione slowly walks towards your desk." + ">She tries not to bounce her tits without much success..." + call her_chibi_scene("behind_desk_show_tits") + with d1 + + hide screen blkfade + her "" ("base", "closed", "base", "mid", xpos="mid", ypos="base") + call ctc + + call bld + gen "Now let's get serious if you want to." ("base", xpos="far_left", ypos="head") + gen "{size=-2}(Well, even if you don't...){/size}" ("grin", xpos="far_left", ypos="head") + + hide hermione_main + call blkfade + + ">You grab her tits and squeeze them gently." + + call her_chibi_scene("grope_tits") + call hide_blkfade + call ctc + + her "Professor, what are you doing?" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Teaching you, dear, teaching you." ("grin", xpos="far_left", ypos="head") + gen "Doesn't it feel good?" ("base", xpos="far_left", ypos="head") + her "A little..." ("base", "closed", "base", "mid") + gen "Your hard nipples say the contrary." ("base", xpos="far_left", ypos="head") + gen "I can stop if you want." ("base", xpos="far_left", ypos="head") + her "Yeah sure!" ("grin", "base", "angry", "mid", cheeks="blush") + her "Suck them professor." ("silly", "narrow", "base", "up", cheeks="blush") + gen "As you wish, princess." ("grin", xpos="far_left", ypos="head") + her "" ("silly", "narrow", "base", "up", cheeks="blush") + call nar(">You suck her nipples with devotion.") + her "Yes {heart} like that." ("silly", "narrow", "base", "up", cheeks="blush", tears="sweat") + call nar(">You start to chew on her nipples.") + her "*Ahh*, no... Don't." ("open_tongue", "narrow", "base", "up", cheeks="blush") + call nar(">You chew on them even harder.") + her "Not that hard, I will..." ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + gen "{size=-2}(Time for the grand finale!){/size}" ("grin", xpos="far_left", ypos="head") + + if hermione.is_worn("panties"): + ">You quickly slip your hand into her panties and rub her pussy furiously." + else: + ">You quickly move your hand toward her pussy and rub it furiously." + + her "Yes! {heart}" ("angry", "narrow", "base", "dead", cheeks="blush", tears="crying") + her "I... I..." + gen "Came, my dear." ("grin", xpos="far_left", ypos="head") + + hide hermione_main + call blkfade + call ctc + + call set_her_action("none","update") + + call her_chibi_scene("behind_desk_front") + call hide_blkfade + + her "Is the lesson over professor?" ("grin", "narrow", "base", "mid_soft", cheeks="blush", tears="mascara") + gen "Not if you don't want it to be." ("base", xpos="far_left", ypos="head") + her "Maybe it's enough for tonight." ("open", "narrow", "base", "mid_soft", cheeks="blush", tears="mascara") + her "After all, you have a lot of work to do." ("soft", "narrow", "worried", "mid_soft", cheeks="blush", tears="mascara") + gen "Sure." ("base", xpos="far_left", ypos="head") + gen "But before that I have a little present for you." ("base", xpos="far_left", ypos="head") + + call give_gift(">You give an assortment of adult magazines to Hermione.",adult_mag_ITEM) + + gen "I hope this will help you in your studies." ("base", xpos="far_left", ypos="head") + her "Yes, certainly." ("base", "closed", "base", "mid", cheeks="blush", tears="mascara") + her "Thank you and good night professor." ("base", "narrow", "base", "mid", cheeks="blush", tears="mascara") + + hide hermione_main + call blkfade + + "You dismiss Hermione." + $ hermione.wear("all") + + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + call hide_blkfade + + call her_walk("door", "base") + + her "{size=-4}(I'm such a slut...){/size}" ("base", "narrow", "base", "up", cheeks="blush", ypos="head", flip=False, trans=d3) + her "{size=-4}(Cumming in front of my professor...){/size}" ("base", "narrow", "base", "down", cheeks="blush") + her "{size=-4}(I definitely need to do that again!){/size}" ("base", "narrow", "base", "mid_soft", cheeks="blush") + + call her_chibi("leave") + + $ her_tutoring = 9 + + if her_whoring < 18: + $ her_whoring += 1 + + jump end_hermione_event + +label hg_tutor_E9: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "So tell me, were your readings enlightening?" ("base", xpos="far_left", ypos="head") + her "I'm not sure if \"readings\" is the right term but yes. Very \"stimulating\" too." ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Maybe it's time to discover new areas to stimulate." ("base", xpos="far_left", ypos="head") + her "You mean my pussy, right?" ("open", "squint", "base", "mid") + her "I'm not an idiot, professor." ("annoyed", "narrow", "angry", "R") + gen "If it doesn't suit you, we can stop here." ("base", xpos="far_left", ypos="head") + her "And if I said stop?" ("annoyed", "squint", "base", "mid") + gen ".........." ("angry", xpos="far_left", ypos="head") + her "*Ha-ha*, you should have seen your face!" ("smile", "base", "angry", "mid", cheeks="blush") + her "With all your recent lessons you can imagine that this area isn't a \"no man's land\" anymore." ("smile", "base", "base", "R") + gen "Have you slept..." ("angry", xpos="far_left", ypos="head") + her "No I haven't! I'm not a harlot who offers her pussy to every boy around." ("scream", "closed", "base", "mid", cheeks="blush") + gen "{size=-2}(Good, your pussy is mine alone!){/size}" ("base", xpos="far_left", ypos="head") + her "" ("annoyed", "narrow", "annoyed", "up") + gen "{size=-2}(Although I may agree to share it with other girls...){/size}" ("grin", xpos="far_left", ypos="head") + gen "I'm happy you're behaving honourably, Miss Granger." ("base", xpos="far_left", ypos="head") + her "Ha, who'd have guessed!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Yes, I'm glad that my favourite student is not wasting her precious time with boys." ("base", xpos="far_left", ypos="head") + her "Sure...{w=0.3} {size=-4}old hypocrite{/size}." + gen "Enough of this! Now take off your shirt and come here." ("base", xpos="far_left", ypos="head") + her "Here we go for another \"lesson\"." ("open", "squint", "base", "mid") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + $ hermione.strip("robe", "accessory") + $ hermione.strip("top") + + if hermione.is_worn("bra"): + her "..." (ypos="head", flip=False, trans=d3) + gen "And your bra..." ("base", xpos="far_left", ypos="head") + + $ hermione.strip("bra") + + her "........" ("annoyed", "closed", "base", "mid", cheeks="blush", ypos="head", flip=False, trans=d3) + + call her_chibi_scene("behind_desk_front") + call hide_blkfade + call ctc + + her "And free tits again, enjoy!" ("grin", "base", "angry", "mid", cheeks="blush", xpos="mid", ypos="base") + gen "I definitely intend to." ("base", xpos="far_left", ypos="head") + gen "Now take off your skirt." ("grin", xpos="far_left", ypos="head") + pause .8 + + call set_her_action("lift_skirt") + pause .5 + + $ hermione.strip("bottom") + call set_her_action("None") + pause .5 + + her "" ("base", "base", "base", "R", cheeks="blush") + call ctc + + if hermione.is_worn("panties"): + her "You love my pussy don't you?" ("base", "narrow", "base", "up", cheeks="blush") + gen "Oh yes, I love your smell, especially when you're wet." ("grin", xpos="far_left", ypos="head") + her "Professor..." ("angry", "happyCl", "worried", "mid", cheeks="blush", emote="sweat") + call her_chibi_scene("grope_ass_front") + with d3 + call nar(">You caress her clit.") + her "Professor!" ("mad", "wide", "base", "stare", cheeks="blush") + else: + her "You love my panties don't you?" ("base", "narrow", "base", "up", cheeks="blush") + gen "Oh yes, I love their smell, especially when you're wet." ("grin", xpos="far_left", ypos="head") + her "Professor..." ("angry", "happyCl", "worried", "mid", cheeks="blush", emote="sweat") + call her_chibi_scene("grope_ass_front") + with d3 + call nar(">You caress her clit through the fabric.") + her "Professor!" ("mad", "wide", "base", "stare", cheeks="blush") + gen "Now take them off." ("base", xpos="far_left", ypos="head") + + $ hermione.strip("panties") + call set_her_action("pinch") + + call nar(">She slowly lowers her panties.") + + call set_her_action("None") + + call her_chibi_scene("behind_desk_front") + her "" ("base", "closed", "base", "mid") + call ctc + + gen "What's great, you see, is that I have two hands." ("base", xpos="far_left", ypos="head") + gen "One can caress your clit while the other can play with your pussy." ("base", xpos="far_left", ypos="head") + call nar(">You move from words to deeds and penetrate her already wet pussy with ease.") + + call her_chibi_scene("grope_ass_front") + with d3 + + her "Yes, you're probably right." ("grin", "base", "angry", "mid", cheeks="blush") + gen "Probably?!" ("base", xpos="far_left", ypos="head") + call nar(">While you're moving your finger in her pussy, you take over her clit with your thumb.") + her "*Haa* {heart} I'm only your humble student, I wouldn't know such naughty things." ("silly", "narrow", "base", "up", cheeks="blush") + gen "One finger is rarely enough even with a tight pussy like yours." ("base", xpos="far_left", ypos="head") + call nar(">You insert a second finger in her tight and warm pussy...") + her "Yesss {heart} I'll try to remember your teachings." ("silly", "narrow", "base", "up", cheeks="blush") + call nar(">You increase the pace and feel her pussy tighten on your fingers.") + gen "Maybe a third finger?" ("base", xpos="far_left", ypos="head") + her "Don't be so bold." ("grin", "base", "angry", "mid", cheeks="blush", tears="soft") + call nar(">Her whole body starts shaking as you increase your ramming.") + + call her_chibi_scene("grope_ass_front_fast") + with d3 + + her "Noo {heart}{w=0.2} not so fast I will..." ("open_tongue", "narrow", "base", "up", cheeks="blush") + call nar(">You increase your pace even more.") + her "I will I will..." ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + gen "Time to get serious." ("grin", xpos="far_left", ypos="head") + call nar(">You force your soaked thumb into her butthole.") + her "*Haaaaa* {heart} yesss! {heart}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + gen "Lucky girl." ("grin", xpos="far_left", ypos="head") + + call blkfade + + hide hermione_main + call her_chibi_scene("behind_desk_front") + call hide_blkfade + + her "I'm sure this lesson will be of great help tonight." ("grin", "narrow", "base", "mid_soft", cheeks="blush", tears="mascara") + her "And the other nights. {heart}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + gen "Always glad to help my little witch in her studies." ("base", xpos="far_left", ypos="head") + her "\"Studies,\" yes, that's right." ("grin", "narrow", "base", "mid_soft", cheeks="blush", tears="mascara") + gen "And to aid your studies I have even more scientific materials." ("base", xpos="far_left", ypos="head") + + call give_gift(">You give an assortment of porn magazines to Hermione.",porn_mag_ITEM) + + her "I promise to study them every night until I commit their lessons to memory!" ("grin", "closed", "base", "mid", cheeks="blush", tears="mascara") + her "Thank you and good night, professor." ("grin", "narrow", "base", "mid_soft", cheeks="blush", tears="mascara") + gen "Good night, my favourite little witch." ("base", xpos="far_left", ypos="head") + + hide hermione_main + call blkfade + + "You dismiss Hermione." + $ hermione.wear("all") + + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + call hide_blkfade + + call her_walk("door", "base") + + her "{size=-4}(Favourite...){/size}" ("base", "narrow", "base", "up", cheeks="blush", ypos="head", flip=False, trans=d3) + her "{size=-4}(*Hmm*... Could there be another one?){/size}" ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "{size=-4}(I better do my best to remain his favourite!){/size}" ("base", "happyCl", "worried", "mid", cheeks="blush") + + call her_chibi("leave") + + $ her_tutoring = 10 + + if her_whoring < 18: + $ her_whoring += 1 + + jump end_hermione_event + +label hg_tutor_E10: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "Miss Granger, have you had an enjoyable night?" ("base", xpos="far_left", ypos="head") + her "You shouldn't ask such things, Professor." ("open", "closed", "base", "mid") + gen "I have to make sure my students have a pleasant nights rest." ("base", xpos="far_left", ypos="head") + her "With your teachings and your \"scientific\" literature, indeed." ("base", "narrow", "worried", "mid_soft", cheeks="blush", tears="soft") + her "I'll become proficient in human anatomy with all this documentation." ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Do you need some scientific instruments for your research?" ("base", xpos="far_left", ypos="head") + her "They could come in handy." ("grin", "wink", "base", "mid", cheeks="blush") + her "As long as it's not your dick." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "{size=-2}(Not that I don't appreciate it but no points no cock!){/size}" ("smile", "base", "angry", "mid", cheeks="blush") + gen "Miss Granger! This is a serious matter!" ("base", xpos="far_left", ypos="head") + her "Sure..." ("annoyed", "squint", "base", "mid") + gen ".........." ("base", xpos="far_left", ypos="head") + her "So what's my gift this time?" ("open", "squint", "base", "mid") + + call give_gift(">You give the vibrator to Hermione",vibrator_ITEM) + + her "And I suppose you want me to test this in front of you?" ("open", "closed", "base", "mid") + gen "Of course." ("grin", xpos="far_left", ypos="head") + her "Where is the educational purpose in all of this?" ("annoyed", "squint", "base", "mid") + gen "Good question. Improving your skills?" ("base", xpos="far_left", ypos="head") + her "At what? Magic?" ("mad", "base", "angry", "mid", cheeks="blush") + gen "Certainly." ("base", xpos="far_left", ypos="head") + her "........." + her "I have one request though." ("open", "base", "base", "R", cheeks="blush") + her "If I'm going to masturbate I don't want to be the only one. So enjoy the free show." ("open", "happyCl", "worried", "mid", cheeks="blush") + gen "With pleasure!" ("grin", xpos="far_left", ypos="head") + call nar(">You reach under the desk and grab your cock.") + + hide hermione_main + call blkfade + + call gen_chibi("jerk_off_behind_desk") + with d3 + + call hide_blkfade + + her "{size=-2}(Thinking of the headmaster masturbating makes me wet already {heart}){/size}" (xpos="mid", ypos="base") + her "{size=-2}(I've become such a whore. Not that I don't enjoy it...){/size}" ("smile", "base", "angry", "mid", cheeks="blush") + her "So... where do we start?" ("open", "happy", "base", "mid", cheeks="blush") + + if hermione.is_worn("bra"): + gen "Take off your shirt and bra, I want to see your tits." ("base", xpos="far_left", ypos="head") + pause .5 + + call set_her_action("lift_top") + pause .5 + + $ hermione.strip("robe", "accessory") + $ hermione.strip("top") + $ hermione.strip("bra") + call set_her_action("None") + pause .5 + + else: + gen "Take off your shirt, I want to see your tits." ("base", xpos="far_left", ypos="head") + pause .5 + + call set_her_action("lift_top") + pause .5 + + $ hermione.strip("robe", "accessory") + $ hermione.strip("top") + call set_her_action("None") + pause .5 + + her "You love them don't you?" + gen "Oh yes..." ("grin", xpos="far_left", ypos="head") + her "Having watched the other girls I now know why." + her "Those breasts are so tempting." + her "Big or small, I want to hold them in my hands and suck the nipples." ("open_tongue", "narrow", "base", "up", cheeks="blush") + gen "Me too, me too!" ("grin", xpos="far_left", ypos="head") + gen "Now remove your skirt!" ("base", xpos="far_left", ypos="head") + pause .5 + + call set_her_action("lift_skirt") + pause .5 + + $ hermione.strip("bottom") + call set_her_action("None") + pause .5 + + call ctc + + her "Good idea." + her "Sometimes I wish I could do this with others girls." ("open", "happy", "base", "mid", cheeks="blush") + her "Masturbate naked in front of each other." ("open", "narrow", "base", "up", cheeks="blush") + if hermione.is_worn("panties"): + gen "Yes go on, take off your panties!" ("grin", xpos="far_left", ypos="head") + her "Your wish is my command." + pause .5 + + call set_her_action("pinch") + pause .5 + + $ hermione.strip("panties") + call set_her_action("None") + pause .5 + + $ u_tears_pic = "characters/hermione/face/e_her_tears_02b.webp" + call ctc + + her "And mine is to touch another girl's pussy." ("silly", "narrow", "base", "up", cheeks="blush") + else: + her "Touch her pussy like I'm touching mine now." ("silly", "narrow", "base", "up", cheeks="blush") + + if hermione.is_any_worn("clothes"): + gen "Get rid off the rest of your silly attire." ("base", xpos="far_left", ypos="head") + $ hermione.strip("all") + + ### Milestone ### + $ hg_masturbated.triggered() + + $ hermione.set_pose("masturbate") + $ hermione.set_body(armleft="on_pussy") + #call set_her_action("pinch") + pause .5 + + her "Caress it." ("open_tongue", "narrow", "base", "up", cheeks="blush") + + call set_her_action("fingering") + pause .2 + + her "Insert my fingers into her wet pussy." ("open_tongue", "narrow", "base", "up", cheeks="blush") + g11 "Yes, yes! Now the vibrator!" + + hide hermione_main + call blkfade + + ## TODO: show vibrator pose + $ hermione.set_body_zorder(armright=3) + $ hermione.set_body(armleft="on_pussy", armright="on_tits") + + hide screen blkfade + call ctc + + her "Oh I had forgotten about it already." ("open_tongue", "narrow", "base", "up", cheeks="blush") + her "I want to hear her moan as I work my fingers." ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + her "Hear her cum!" + her "Like me! *Aaah* yesssss! {heart} {heart}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + call ctc + + g11 "*Ahh*! You little whore!!!" + call gen_chibi("cum_behind_desk") + her "The vibrator... *Aaah* I'm still cumming!!" + g11 "Take this!" + + hide hermione_main + call blkfade + + ">Hermione catches her breath and puts her clothes back on." + + # Reset pose + $ hermione.set_body_zorder(armright=0) + $ hermione.set_body(armleft="down", armright="down") + $ hermione.set_pose(None) + $ hermione.wear("all") + + call her_chibi("stand","desk","base") + call gen_chibi("cum_behind_desk_done") + hide screen blkfade + + her "I hope you enjoyed it as much I did." ("open", "narrow", "worried", "mid_soft", cheeks="blush", tears="mascara", xpos="mid", ypos="base", trans=fade) + gen "Oh fuck yes, you're doing great, my little witch!" ("base", xpos="far_left", ypos="head") + gen "Very good!" ("grin", xpos="far_left", ypos="head") + her "Thank you, professor." ("grin", "narrow", "worried", "mid_soft", cheeks="blush", tears="mascara") + gen "After all this, you need to rest." ("base", xpos="far_left", ypos="head") + her "Oh yes. Good night professor." ("grin", "closed", "base", "mid", cheeks="blush", tears="mascara") + gen "Good night, my dirty little slut." ("base", xpos="far_left", ypos="head") + + call her_walk("door", "base") + + her "{size=-4}(Rest...){/size}" ("base", "narrow", "base", "down", cheeks="blush", tears="mascara", ypos="head", flip=False, trans=d3) + her "{size=-4}(Not before I've played with this marvellous toy again){/size}" ("base", "narrow", "base", "mid_soft", cheeks="blush", tears="mascara") + her "{size=-4}(And again){/size}" ("silly", "narrow", "base", "mid_soft", cheeks="blush", tears="mascara") + + call her_chibi("leave") + + $ her_tutoring = 11 + + if her_whoring < 21: + $ her_whoring += 1 + + jump end_hermione_event + +label hg_tutor_E11: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "So... I hope my lessons are paying off." ("base", xpos="far_left", ypos="head") + her "You mean, by making me more \"open\" to the wonders of adulthood?" ("open", "squint", "base", "mid") + gen "Among other things..." ("base", xpos="far_left", ypos="head") + her "That's what I thought." ("annoyed", "squint", "base", "mid") + her "But to be honest, I was looking forward to this lesson." ("open", "closed", "base", "mid") + her "{size=-2}(Maybe, I shouldn't have said that){/size}" ("angry", "wide", "base", "stare") + her "{size=-2}(He's gonna ravage me on his desk, isn't he?){/size}" ("angry", "happyCl", "worried", "stare", cheeks="blush") + #her "{size=-2}(Not that I would mind...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + #her "{size=-2}(And I could ask him for points afterwards...){/size}" ("smile", "base", "base", "R") + gen "Miss Granger? Are you alright?" ("base", xpos="far_left", ypos="head") + her "Yes professor! Sorry, I was thinking of my next exam." ("grin", "wink", "base", "mid", cheeks="blush") + gen "Oh, I'm sure it's an important one. Maybe next lesson I can help you revise." ("base", xpos="far_left", ypos="head") + her "I would love that!" ("open", "happyCl", "worried", "mid", cheeks="blush") + gen "So, anal stimulation..." ("base", xpos="far_left", ypos="head") + her "Ah! I knew you would say that." ("smile", "base", "angry", "mid", cheeks="blush") + her "{size=-2}(Once again, not that I mind...){/size}" + her "{size=-2}(I'm such a whore, even the Slytherin girls can't compete...){/size}" ("base", "narrow", "base", "up", cheeks="blush") + gen "Come again, Miss Granger?" ("base", xpos="far_left", ypos="head") + her "In this school nobody can compete with me, right professor?" ("smile", "happyCl", "base", "mid", cheeks="blush", emote="happy") + her "In any field!" ("smile", "base", "angry", "mid", cheeks="blush") + gen "In any field? I'm not sure." ("base", xpos="far_left", ypos="head") + gen "You still have things to learn..." ("base", xpos="far_left", ypos="head") + her "What?! What are we waiting for then?" ("scream", "closed", "base", "mid", cheeks="blush") + her "" ("normal", "narrow", "angry", "mid", cheeks="blush") + + call set_her_action("lift_top") + pause .2 + + $ hermione.strip("robe", "accessory") + $ hermione.strip("top") + pause .5 + $ hermione.strip("bra") + call ctc + call set_her_action("None") + + call nar(">She rips off her shirt and rushes to your desk.") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + call her_chibi_scene("grope_ass_back") + call hide_blkfade + call ctc + + call bld + gen "We haven't even started yet and you're already wet, my adorable slut." ("base", xpos="far_left", ypos="head") + + show screen blktone + her "It's you and your dirty talk!" ("annoyed", "narrow", "angry", "R", cheeks="blush", xpos="mid", ypos="base") + her "Talking about anal insertions, asshole licking and... and..." + her "Fisting!" ("open", "narrow", "base", "up", cheeks="blush") + gen "I never mentioned any of that." ("base", xpos="far_left", ypos="head") + her "Oh. You didn't?" ("annoyed", "narrow", "base", "up", cheeks="blush") + her "Well maybe you didn't but you {b}were{/b} thinking about it!" ("base", "narrow", "base", "up", cheeks="blush") + gen "Maybe." ("grin", xpos="far_left", ypos="head") + gen "Your ass is so luscious I could eat it." ("grin", xpos="far_left", ypos="head") + her "My point exactly!" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "Enough talking, old man. Get to work!" ("base", "narrow", "worried", "mid_soft", cheeks="blush", tears="soft") + gen "I haven't even given you your gift yet!" ("base", xpos="far_left", ypos="head") + gen "I'll just put it where you'll be sure to find it." ("base", xpos="far_left", ypos="head") + gen "So, can we start the lesson?" ("base", xpos="far_left", ypos="head") + her "Yes for Merlin's sake!" ("open", "base", "base", "mid", cheeks="blush") + gen "But before that..." ("base", xpos="far_left", ypos="head") + her "If you say another word I swear I will go back to my dorm right now!" ("scream", "base", "angry", "mid", cheeks="blush", emote="angry") + call nar(">You suddenly insert the anal plug.") + her "Yesss {heart} like that!" ("silly", "narrow", "base", "up", cheeks="blush") + call nar(">You remove it just as quickly while giving her butt a loud slap.") + + call play_sound("plop") + with flashbulb + call play_sound("slap_1") + with hpunch + + her "Yessss more! {heart}" ("open_tongue", "narrow", "base", "up", cheeks="blush") + gen "As you wish, princess." ("grin", xpos="far_left", ypos="head") + call nar(">You promptly insert and remove it.") + + call play_sound("plop") + pause .1 + call play_sound("slap_1") + with hpunch + + her "More!!" ("open_tongue", "narrow", "base", "up", cheeks="blush") + + call play_sound("plop") + pause .1 + call play_sound("slap_1") + with hpunch + + $ u_tears_pic = "characters/hermione/face/e_her_tears_03b.webp" + her "*Aaaah* {heart}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + + call play_sound("plop") + pause .1 + call play_sound("slap_1") + with hpunch + + gen "You can touch yourself too, you know." ("base", xpos="far_left", ypos="head") + $ u_tears_pic = "characters/hermione/face/e_her_tears_03d.webp" + her "I can't." ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + her "{size=-2}(If I do, I will lose what little dignity I have left){/size}" + her "{size=-2}(But tonight...){/size}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + gen "I'll handle it then." ("base", xpos="far_left", ypos="head") + call nar(">You finger both her butthole and her pussy.") + her "Nooo it's too much! {heart}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + gen "Faster? No problem!" ("grin", xpos="far_left", ypos="head") + call her_chibi_scene("grope_ass_back_fast") + her "*Aaah* You're killing me! {heart}" ("angry", "narrow", "base", "dead", cheeks="blush", tears="crying") + her "{size=-2}(And I love it){/size}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + gen "More fingers?" ("base", xpos="far_left", ypos="head") + her "No more pleassse." ("open", "narrow", "worried", "mid_soft", cheeks="blush", tears="mascara") + gen "Actually, it wasn't a question." ("base", xpos="far_left", ypos="head") + her "If you keep this pace I will..." ("angry", "narrow", "base", "dead", cheeks="blush", tears="crying") + call nar(">You feel her muscles tighten on your fingers.") + her "Come!!" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + gen "Good girl." ("grin", xpos="far_left", ypos="head") + her "Keep it up, I..." + her "Yessss... {heart}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + gen "I can keep this up as long as you please." ("base", xpos="far_left", ypos="head") + her "Nooooo {heart} I will die!" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + gen "In ecstasy." ("grin", xpos="far_left", ypos="head") + her "*Aahh* not again {heart}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + hide hermione_main + hide screen bld1 + hide screen blktone + with d3 + + call her_chibi_scene("behind_desk_back") + with d3 + pause .5 + + call bld + gen "I think you've had enough for one night." ("base", xpos="far_left", ypos="head") + her "Yes I... I better go." ("open_tongue", "narrow", "base", "up", cheeks="blush") + gen "You forgot your gift." ("base", xpos="far_left", ypos="head") + call nar(">You promptly insert the butt plug.") + with hpunch + her "*Aaaaaaah*" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + + hide hermione_main + with d3 + call her_chibi_scene("lie_on_desk", trans=d5) + pause .5 + + show screen bld1 + call nar(">She collapses panting on the desk.") + gen "Best view in the world." ("grin", xpos="far_left", ypos="head") + pause .8 + + call blkfade + ">After a while, she puts her shirt back on." + + $ hermione.wear("all") + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + hide screen blkfade + + her "Thank you for everything, professor." ("soft", "narrow", "base", "mid", tears="mascara", xpos="mid", ypos="base", trans=fade) + her "It was very...{w=0.5} enlightening." ("grin", "narrow", "worried", "mid_soft", cheeks="blush", tears="mascara") + her "But please, try to go easy on me next time." ("grin", "closed", "base", "mid", cheeks="blush", tears="mascara") + gen "I have absolutely no idea what you mean by that." ("grin", xpos="far_left", ypos="head") + her "Good night professor." ("grin", "narrow", "base", "mid_soft", cheeks="blush", tears="mascara") + gen "Good night, my dear anal whore." ("base", xpos="far_left", ypos="head") + her "Professor..." ("open", "narrow", "worried", "mid_soft", cheeks="blush", tears="mascara") + + call her_walk("door", "base") + + her "{size=-4}(Finally tonight I'll just go to bed.){/size}" ("base", "happyCl", "worried", "mid", cheeks="blush", ypos="head", flip=False, trans=d3) + her "{size=-4}(That was a little too intense...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + her "{size=-4}(Not that I'm complaining...){/size}" ("silly", "narrow", "base", "mid_soft", cheeks="blush") + + call her_chibi("leave") + + $ her_tutoring = 12 + + if her_whoring < 21: + $ her_whoring += 1 + + jump end_hermione_event + +label hg_tutor_E12: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + gen "[hermione_name], I have something for you." ("base", xpos="far_left", ypos="head") + her "Another gift for me?" ("base", "narrow", "base", "up", cheeks="blush") + her "Please, please." ("open", "happyCl", "worried", "mid", cheeks="blush") + gen "You weren't this excited last time when I gave you a present..." ("base", xpos="far_left", ypos="head") + her "Oh don't worry, it was just a moment of weakness." ("smile", "base", "angry", "mid", cheeks="blush") + her "I'm ready now!" + her "{size=-2}(My body perhaps not...){/size}" ("annoyed", "narrow", "worried", "down") + gen "Did you have fun with your anal plug?" ("base", xpos="far_left", ypos="head") + her "Y-yes... I wear it sometimes..." ("base", "narrow", "base", "up", cheeks="blush") + her "But I cut the tail!" ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "{size=-2}(No way I could walk around like that...){/size}" + gen "And you like it?" ("base", xpos="far_left", ypos="head") + her "It's very...{w=0.5} stimulating. It helps me whenever I cast a spell." ("base", "narrow", "worried", "mid_soft", cheeks="blush", tears="soft") + gen "Tell me the truth Miss Granger, you wear it all the time, don't you?" ("base", xpos="far_left", ypos="head") + her "Nooo..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "Maybe..." ("open_tongue", "narrow", "base", "up", cheeks="blush") + her "........" + gen "Don't be ashamed, it's alright my little whore." ("base", xpos="far_left", ypos="head") + her "I wear it all the time and...{w=0.3} I love it!" ("smile", "happyCl", "base", "mid", cheeks="blush", emote="happy") + gen "{size=-2}(Marvellous){/size}" ("grin", xpos="far_left", ypos="head") + gen "I've taught you good." ("base", xpos="far_left", ypos="head") + her "To be a slut? Yes you have..." ("open", "closed", "base", "mid") + her "And now I want more, so where is my gift?!" ("annoyed", "squint", "base", "mid") + gen "There, there." ("base", xpos="far_left", ypos="head") + + call give_gift(">You give the anal beads to Hermione",anal_beads_ITEM) + + her "Oh! That's even better than a butt plug." ("shock", "wide", "base", "stare", cheeks="blush") + gen "And they can be useful for your pussy too." ("grin", xpos="far_left", ypos="head") + her "So many possibilities..." ("smile", "base", "angry", "mid", cheeks="blush") + her "... so little time." + her "I suppose you want me to try them out?" ("smile", "happyCl", "base", "mid") + her "Or would you rather try them out on me yourself?" + gen "Oh yes." ("grin", xpos="far_left", ypos="head") + her "I don't even know why I'm asking..." ("annoyed", "narrow", "annoyed", "up") + her "{size=-2}(Old pervert...){/size}" ("open", "happyCl", "worried", "mid", cheeks="blush") + + call set_her_action("lift_top") + pause .5 + + $ hermione.strip("robe", "accessory") + $ hermione.strip("top") + with d3 + pause .5 + $ hermione.strip("bra") + with d3 + pause .5 + + her "My tits are the best in all of Hogwarts!" ("silly", "narrow", "base", "up", cheeks="blush") + gen "Have you been with many girls to say that?" ("base", xpos="far_left", ypos="head") + her "I wish..." ("grin", "narrow", "base", "up", cheeks="blush") + gen "I can tutor you on that too." ("grin", xpos="far_left", ypos="head") + her "Maybe we should finish this lesson first." ("base", "narrow", "base", "up", cheeks="blush") + gen "Oh, we have time." ("base", xpos="far_left", ypos="head") + her "Speaking of that..." ("base", "narrow", "worried", "mid_soft", cheeks="blush", tears="soft") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + call her_chibi_scene("behind_desk_back") + with d1 + call hide_blkfade + call ctc + + call bld + gen "As always, it's a delightful view." ("grin", xpos="far_left", ypos="head") + call blktone + her "I'm glad you love it." ("angry", "happyCl", "worried", "mid", cheeks="blush", xpos="mid", ypos="base") + + call set_her_action("lift_skirt") + pause .5 + + $ hermione.strip("bottom") + $ hermione.strip("panties") + call set_her_action("None") + pause .5 + + her "Can we start now?" ("grin", "base", "angry", "mid", cheeks="blush") + gen "I suppose you want them in your ass?" ("grin", xpos="far_left", ypos="head") + her "Naturally." ("base", "narrow", "base", "up", cheeks="blush") + her "{size=-2}(I'll try them in my pussy later tonight){/size}" ("base", "closed", "base", "mid") + call her_chibi_scene("grope_ass_back") + call nar(">You push the first bead in with ease.") + her "*Mmm*... {heart}" + gen "How many do you think you can take, my dear?" ("base", xpos="far_left", ypos="head") + her "How many have you got?" ("base", "narrow", "base", "up", cheeks="blush") + gen "That's the spirit!" ("grin", xpos="far_left", ypos="head") + call nar(">You push another one inside with little resistance.") + her "Yess {heart} one more please." ("open", "narrow", "base", "up", cheeks="blush") + call nar(">You feel the beads sink deeper when you push the third one inside.") + her "*Ohhh*, they're... they're moving {heart}." ("grin", "narrow", "base", "up", cheeks="blush") + call nar(">The fourth takes some work before it pops in.") + her "*Ah*... {heart}*Ah*{heart}" ("silly", "narrow", "base", "up", cheeks="blush") + call nar(">You push the last one forcefully inside.") + her "*Ahhhhh* {heart} delightful." ("open_tongue", "narrow", "base", "up", cheeks="blush") + her "They're so deep in my ass... almost like your cock." + gen "I can..." ("grin", xpos="far_left", ypos="head") + her "No you can't! My butthole is too tight for both." ("annoyed", "closed", "base", "mid", cheeks="blush") + her "{size=-2}(But it's such a good idea){/size}" ("grin", "narrow", "base", "up", cheeks="blush") + gen "I'm sure there's still room for at least one finger." ("base", xpos="far_left", ypos="head") + call nar(">You finger her butthole gently.") + her "*Ah*... {heart}{w=0.5} *Ah*... {heart}" ("silly", "narrow", "base", "up", cheeks="blush") + her "W-What did I say..." ("grin", "narrow", "base", "up", cheeks="blush") + call nar(">You wiggle the finger inside.") + her "You never listen, [genie_name]!" ("grin", "narrow", "base", "up", cheeks="blush") + gen "What can I say, I just know what's best for you, my little witch." ("base", xpos="far_left", ypos="head") + call nar(">You pick up the pace.") + her "Yesss! {heart}" ("grin", "narrow", "base", "up", cheeks="blush") + gen "I thought you didn't want the finger?" ("base", xpos="far_left", ypos="head") + gen "In that case, one more finger." ("grin", xpos="far_left", ypos="head") + call nar(">She shivers when you insert a second finger.") + her "*Ahh*... No-- No more please." ("open_wide_tongue", "narrow", "worried", "up", cheeks="blush") + her "My butthole is stretched so wide!" ("open", "narrow", "base", "up", cheeks="blush") + gen "Your butthole is doing great." ("grin", xpos="far_left", ypos="head") + call nar(">You finger her butthole fiercely.") + call her_chibi_scene("grope_ass_back_fast") + her "Nooo... *Aahh* {heart}" ("clench", "narrow", "worried", "mid_soft", cheeks="blush") + gen "Your pussy is getting neglected. We need to fix that!" ("base", xpos="far_left", ypos="head") + call nar(">You start fingering her pussy with your other hand. She is panting heavily.") + her "*Ah*...{w=0.3} *Ah*... Just like that {heart}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + call nar(">You suddenly pull out all the beads.") + her "*Ahhhhhh*!!" ("grin", "narrow", "base", "dead", cheeks="blush", tears="messy") + call nar(">And insert four fingers in her ass.") + her "I'm cumming, [genie_name]... I cumming!" ("silly", "narrow", "base", "up", cheeks="blush") + gen "If you must..." ("base", xpos="far_left", ypos="head") + call nar(">You continue to work her ass while you finger her pussy.") + her "No don't I..." + her "Cumm-- {heart} {heart}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + her "Agaaain-- *Aaah* {heart}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + g11 "Sorry my little anal whore but I'm starting to get tired." + her "Don't you dare stop now!" ("scream", "base", "angry", "mid", cheeks="blush", tears="messy", trans=hpunch) + her "Just a little more pleassse {heart}" ("grin", "narrow", "base", "dead", cheeks="blush", tears="messy") + her "Because I will..." ("grin", "narrow", "base", "dead", cheeks="blush", tears="messy") + her "Come again!!" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + hide hermione_main + call blkfade + + ">There's a small puddle on your desk from her juices. You slowly remove your fingers." + + call her_chibi_scene("lie_on_desk") + call hide_blkfade + pause .5 + + her "*Pant* *pant*" ("open", "narrow", "worried", "mid_soft", cheeks="blush", tears="mascara") + her "I feel completely ravaged but happy." ("grin", "narrow", "base", "mid_soft", cheeks="blush", tears="mascara") + her "Thank you professor, for letting me discover such great sensations." ("grin", "narrow", "base", "mid_soft", cheeks="blush", tears="mascara") + her "But I'm exhausted so good night." ("grin", "closed", "base", "mid", cheeks="blush", tears="mascara") + hide hermione_main + call blkfade + + ">She puts her shirt back on and rushes to the door." + + $ hermione.wear("all") + + call her_chibi("stand","door","base",flip=True) + call gen_chibi("sit_behind_desk") + call hide_blkfade + pause .5 + + call bld + gen "Come back here, girl." ("base", xpos="far_left", ypos="head") + g11 "I need your mouth, I can't hold it anymore." + pause .5 + + call her_chibi("stand","door","base") + pause .5 + + her "Professor!" ("open", "happy", "base", "mid", cheeks="blush") + her "........." ("base", "narrow", "base", "up", cheeks="blush") + her "Can I have points for this?" ("mad", "wide", "base", "stare", cheeks="blush") + g11 "Now!" + hide hermione_main + call blkfade + + ">She comes back and does not seem particularly upset." + + call her_chibi_scene("bj") + call hide_blkfade + call ctc + + call bld + her "*Slurp*! *Slurp*! *Gulp*!" + gen "Yes, like that..." ("grin", xpos="far_left", ypos="head") + call nar(">Hermione eagerly sucks your dick.") + gen "You seem to be in a hurry. Is it because you're not getting points for this?" ("base", xpos="far_left", ypos="head") + gen "Consider it a payment for your private lessons." ("base", xpos="far_left", ypos="head") + her "*Mmmh*..." + gen "Next time, come with your robe and your robe only." ("base", xpos="far_left", ypos="head") + call nar(">She briefly nods.") + her "*Slurp*! *Gulp*! *Slurp*!" + gen "You're doing great my little whore, I will..." ("grin", xpos="far_left", ypos="head") + g11 "Yes!" + + call cum_block + call her_chibi_scene("bj_cum_in") + hide screen bld1 + with d3 + + her "*Gobble*! *Gobble*! *Gobble*!" + call ctc + + gen "Good girl, you swallowed it all!" ("grin", xpos="far_left", ypos="head") + call blkfade + + ">She wipes her mouth." + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + call hide_blkfade + call ctc + + her "Sir, I still think I deserve some..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "Good night, my dear child." ("base", xpos="far_left", ypos="head") + her "........." ("annoyed", "narrow", "base", "up", cheeks="blush") + her "Good night, professor." ("annoyed", "closed", "base", "mid", cheeks="blush") + + call her_walk("door", "base") + + her "{size=-4}(Sucking his cock without getting any points!){/size}" ("annoyed", "narrow", "angry", "R", cheeks="blush", ypos="head", flip=False, trans=d3) + her "{size=-4}(If he hadn't made me come so hard...){/size}" ("base", "narrow", "base", "up", cheeks="blush") + her "{size=-4}(*sigh* Although I guess it's not that high a price...){/size}" ("base", "narrow", "base", "down", cheeks="blush") + + call her_chibi("leave") + + $ her_tutoring = 13 + + if her_whoring < 24: + $ her_whoring += 1 + + jump end_hermione_event + +label hg_tutor_E13: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + #################### + ### Robe Section ### + #################### + + #her "Oh! I can't believe I forgot! Stay where you are, I'll be right back!" ("mad", "wide", "base", "stare", cheeks="blush") + #hide hermione_main + #call play_sound("door") + #call blkfade + + #call play_sound("door") + #pause .3 + + #if h_robe in gryffindor_robe_list: + # $ hermione_robe = "characters/hermione/clothes/robe/robe_2_g.webp" + #elif h_robe in slytherin_robe_list: + # $ hermione_robe = "characters/hermione/clothes/robe/robe_2_s.webp" + #call set_her_action("naked") #Removes all clothes. + #$ hermione_wear_robe = True + + #call her_chibi("stand","door","base") + #call hide_blkfade + + #call her_walk("mid", "base") + + #her "{size=-4}*panting*{/size} Oh good, you're still here." ("open", "base", "base", "mid", cheeks="blush", xpos="right", ypos="base") + #gen "Is it safe to assume you have honoured my request this time?" ("base", xpos="far_left", ypos="head") + #her "I thought it was obvious." ("open", "happy", "base", "mid", cheeks="blush") + #her "I even had to hide in an alcove to avoid getting noticed on my way here!" ("open", "base", "base", "mid", cheeks="blush") + #her "It was so embarrassing!" ("open", "happyCl", "worried", "mid", cheeks="blush") + #her "{size=-2}(And exciting!){/size}" ("open", "happyCl", "worried", "mid", cheeks="blush") + #gen "Are you sure you're not wearing anything underneath?" ("base", xpos="far_left", ypos="head") + #call nar(">Hermione opens up her cloak a little.") + #pause .2 + + #hide hermione_main + #if h_robe in gryffindor_robe_list: + # $ hermione_robe = "characters/hermione/clothes/robe/robe_3_g.webp" + #elif h_robe in slytherin_robe_list: + # $ hermione_robe = "characters/hermione/clothes/robe/robe_3_s.webp" + #her "" ("open", "happy", "base", "mid", cheeks="blush") + #call ctc + + #her "Does this answer your question?" ("open", "happy", "base", "mid", cheeks="blush") + #gen "Not really. It's hard to tell from this distance. I mean, it's so dark..." ("base", xpos="far_left", ypos="head") + #her "..." ("annoyed", "narrow", "base", "up") + #pause .2 + + #hide hermione_main + #if h_robe in gryffindor_robe_list: + # $ hermione_robe = "characters/hermione/clothes/robe/robe_open_g.webp" + #elif h_robe in slytherin_robe_list: + # $ hermione_robe = "characters/hermione/clothes/robe/robe_open_s.webp" + #her "" ("base", "closed", "base", "mid", cheeks="blush", trans=d5) + #call ctc + + #her "Is that better?" ("base", "narrow", "base", "mid_soft", cheeks="blush") + #gen "Oh yes, definitely. Well done, my girl." ("grin", xpos="far_left", ypos="head") + + #hide hermione_main + #if h_robe in gryffindor_robe_list: + # $ hermione_robe = "characters/hermione/clothes/robe/robe_3_g.webp" + #elif h_robe in slytherin_robe_list: + # $ hermione_robe = "characters/hermione/clothes/robe/robe_3_s.webp" + + + her "Alright then, can we start the lesson now?" ("smile", "base", "angry", "mid", cheeks="blush") + gen "Maybe, I don't know... do you like butterbeer?" ("base", xpos="far_left", ypos="head") + her "You know I do. What's that got to do with..." ("soft", "base", "base", "R", cheeks="blush") + gen "......." ("grin", xpos="far_left", ypos="head") + her "Do you mean...{w=0.3} no, no way professor!" ("scream", "wide", "base", "stare", cheeks="blush") + gen "Oh, rest assured, we won't start with the bottom end." ("base", xpos="far_left", ypos="head") + her "Still, professor, this is so dirty..." ("silly", "narrow", "base", "up", cheeks="blush") + her "{size=-2}(And exciting!){/size}" ("silly", "narrow", "base", "up", cheeks="blush") + her "Moreover, my butthole isn't stretched enough." ("annoyed", "closed", "base", "mid", cheeks="blush") + gen "Are you kidding me, with all your training!" ("angry", xpos="far_left", ypos="head") + her "And what a training!" ("annoyed", "narrow", "base", "up", cheeks="blush") + her "{size=-2}(Good thing I practised by myself, otherwise...){/size}" ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "Now stop making up excuses!" ("angry", xpos="far_left", ypos="head") + gen "I can see you rubbing your thighs from excitement!" ("base", xpos="far_left", ypos="head") + her "I thought it was so dark in here..." ("open", "happy", "base", "mid", cheeks="blush") + her "*Humm*...{w=0.3} Okay, but you better start out easy on me." ("annoyed", "squint", "base", "mid") + gen "I'm always gentle with you, [hermione_name]." ("grin", xpos="far_left", ypos="head") + her "Yeah, obviously..." ("annoyed", "narrow", "annoyed", "up") + gen "{size=-2}(It's not as if you don't like it rough){/size}" ("base", xpos="far_left", ypos="head") + gen "Alright, my desk.{w=0.3} You{w=0.5}, naked{w=0.6}, now!" ("base", xpos="far_left", ypos="head") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + $ renpy.play('sounds/08_hop_on_desk.ogg') #Sound of the desk squeaking. + pause .5 + + ">Hermione slowly slides down her robe and climbs up your desk." + + $ hermione.strip("robe") + + call her_chibi("dance","on_desk","on_desk") + # her "" (animation=bob) + + call hide_blkfade + pause 1 + + call blktone + her "You're crazy for my body, aren't you?" (xpos="mid", ypos="base") + gen "Why do you ask..." ("base", xpos="far_left", ypos="head") + her "Because a girl likes to be complimented, professor!" ("annoyed", "squint", "base", "mid") + her "Especially when she's about to do these kinds of things!" ("annoyed", "narrow", "annoyed", "up") + gen "I meant, of course you have an amazing body! That's not up to question." ("base", xpos="far_left", ypos="head") + her "Best in the school?" ("base", "narrow", "base", "up", cheeks="blush") + gen "......{w=0.3} Yeah, yeah, best in the school." ("base", xpos="far_left", ypos="head") + her "I can tell you're lying!" ("mad", "base", "angry", "mid", cheeks="blush") + gen "Miss Granger, I've lived for a very long time and believe me, I have seen few women with a body like yours." ("base", xpos="far_left", ypos="head") + gen "And definitely none in this school." ("base", xpos="far_left", ypos="head") + gen "{size=-2}(Severus still hasn't sent those Slytherin whores up){/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-2}(I wonder if I can fire him for that...){/size}" ("base", xpos="far_left", ypos="head") + her "Thank you, professor." ("open", "happyCl", "worried", "mid", cheeks="blush") + her "Feel free to use my body as you please." ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "{size=-2}(*sigh* women...){/size}" ("base", xpos="far_left", ypos="head") + gen "Bend over the desk my dear little witch." ("base", xpos="far_left", ypos="head") + her "{size=-2}(It starts with my dear little witch and ends up with my dear anal whore...){/size}" ("annoyed", "narrow", "base", "up", cheeks="blush") + her "{size=-2}(*sigh* men...){/size}" ("annoyed", "narrow", "base", "up", cheeks="blush") + her "As you wish my dear {b}old{/b} headmaster." ("open", "happy", "base", "mid", cheeks="blush") + gen "{size=-2}(If you knew how old I actually am...){/size}" ("base", xpos="far_left", ypos="head") + her "" (animation=None) + hide hermione_main + call blkfade + + ">Hermione languorously climbs down your desk and bends over it." + + call her_chibi_scene("lie_on_desk", trans=d5) + + her "I'm ready, [genie_name]." (ypos="head", flip=False, trans=d3) + + call give_gift(">You take an empty butterbeer bottle, spit on the neck, and push it inside her butthole.",butterbeer_ITEM) + + call her_chibi_scene("lie_on_desk_fingering_slow") + hide screen bld1 + hide screen blktone + call hide_blkfade + call ctc + + her "*Mmm*... Yes... like that." ("base", "narrow", "base", "up", cheeks="blush", xpos="mid", ypos="base", flip=True) + her "My pussy feels lonely without your care." ("grin", "wink", "base", "mid", cheeks="blush") + call nar(">You start to finger her pussy too.") + gen "Poor little thing." ("base", xpos="far_left", ypos="head") + her "What's better in life than this professor?" ("open", "narrow", "base", "up", cheeks="blush") + gen "Oh, I don't know." ("base", xpos="far_left", ypos="head") + her "Thank you for letting me discover such pleasures." ("open", "happyCl", "worried", "mid", cheeks="blush") + gen "{b}My{/b} pleasure." ("grin", xpos="far_left", ypos="head") + her "It's even better when it's mutual, isn't it?" ("open", "happy", "base", "mid", cheeks="blush") + gen "*Hmm*... Yes you're right... I'm glad you feel that way." ("base", xpos="far_left", ypos="head") + her "Now a little deeper please." ("soft", "base", "base", "R", cheeks="blush") + call nar(">You push the whole bottle neck up inside her asshole.") + her "*Ohhh* yesss! {heart}" ("open", "narrow", "base", "up", cheeks="blush") + her "More, faster!" ("open", "narrow", "base", "up", cheeks="blush") + call her_chibi_scene("lie_on_desk_fingering") + call nar(">You rotate the bottle while going back and forth deeper and deeper.") + her "Yessss, don't forget my pussy. {heart}" ("grin", "narrow", "base", "up", cheeks="blush") + gen "Oh, your pussy better be ready for what's coming!" ("grin", xpos="far_left", ypos="head") + call nar(">You insert all four fingers in her sopping wet pussy.") + her "Sweet Circe-- *Aah*... *Ah*, that's too much! {heart}" ("open", "narrow", "worried", "mid_soft", cheeks="blush", tears="mascara") + gen "Nothing is too much for my little whore." ("base", xpos="far_left", ypos="head") + call nar(">You increase the pace of both hands.") + her "No, no, yes, yessss! {heart}" ("grin", "narrow", "base", "dead", cheeks="blush", tears="messy") + call nar(">Most of the bottle is inside her now, leaving just enough to get a good grip.") + gen "Push the bottle, push it!" ("base", xpos="far_left", ypos="head") + call nar(">Whenever she pushes it back you do the same in the other direction.") + her "This is, this is, *aaaah*!!! {heart}{heart}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + call nar(">Her whole body convulses as she comes hard.") + hide hermione_main + call blkfade + + call her_chibi_scene("lie_on_desk_fingering_pause") + pause .3 + call hide_blkfade + call ctc + + her "*Panting* *panting*" ("grin", "narrow", "base", "dead", cheeks="blush", tears="messy", ypos="head", flip=False, trans=d3) + her "P-professor...{w=0.3} I'm so happy right now." ("base", "narrow", "worried", "mid_soft", cheeks="blush", tears="soft") + gen "Glad to hear it." ("grin", xpos="far_left", ypos="head") + hide hermione_main + call blkfade + + ">After a while, she makes herself somewhat presentable." + + #$ hermione_wear_robe = True + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + call hide_blkfade + + call bld + gen "Sweet dreams my little princess." ("base", xpos="far_left", ypos="head") + her "You too, professor." ("open", "base", "base", "mid", cheeks="blush", xpos="mid", ypos="base", flip=False) + gen "They are always sweet with you around." ("grin", xpos="far_left", ypos="head") + her "Thank you." ("base", "narrow", "base", "up", cheeks="blush") + gen "And next time bring your books, I'll help you with your revisions." ("base", xpos="far_left", ypos="head") + + call her_walk("door", "base") + + her "{size=-4}(Yes, sweet dreams...){/size}" ("base", "happyCl", "worried", "mid", cheeks="blush", ypos="head", flip=False, trans=d3) + her "{size=-4}(Sweet and wet!){/size}" ("silly", "narrow", "base", "mid_soft", cheeks="blush") + + call her_chibi("leave") + + $ her_tutoring = 14 + + if her_whoring < 24: + $ her_whoring += 1 + + jump end_hermione_event + +label hg_tutor_E14: + her "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + + #her "I'll go get my books right away, sir!" ("soft", "base", "base", "R") + #hide hermione_main + #call play_sound("door") + #call blkfade + #pause 1 + + #call set_her_action("hold_book") + + #call play_sound("door") + #pause .3 + + #call hide_blkfade + #call ctc + + #her "Revisions are a serious matter, [genie_name]!" ("open", "base", "worried", "mid") + #gen "{size=-2}(My cock in your ass is a serious matter...){/size}" ("base", xpos="far_left", ypos="head") + #gen "In this regard, I kinda lied, it's more of a mock exam than revisions." ("base", xpos="far_left", ypos="head") + #her "What a surprise!" ("annoyed", "narrow", "base", "up", cheeks="blush") + + gen "[hermione_name], today I'd like to examine if you've been keeping up with your tutoring lessons..." ("base", xpos="far_left", ypos="head") + gen "And make sure you've been working out your butthole." ("grin", xpos="far_left", ypos="head") + her "........" ("annoyed", "narrow", "base", "up", cheeks="blush") + gen "With my cock." ("grin", xpos="far_left", ypos="head") + her "I see..." ("annoyed", "base", "base", "R") + her "I'm not against that but I bet I'll gain no points for this?" ("annoyed", "narrow", "angry", "R", cheeks="blush") + gen "I'm helping you with your revisions, why should you be getting points for that?" ("base", xpos="far_left", ypos="head") + her "And what revisions..." ("annoyed", "closed", "base", "mid", cheeks="blush") + her "Alright, since you have helped me a lot, I'm in." ("base", "base", "base", "R", cheeks="blush") + her "{size=-2}(I give myself away for free now, what a bad whore I make){/size}" ("base", "narrow", "worried", "mid_soft", cheeks="blush", tears="soft") + gen "Come here and strip." ("base", xpos="far_left", ypos="head") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + hide hermione_main + with d3 + + #call set_her_action("naked") + #call set_her_action("hold_book") + $ hermione.strip("all") + + call her_chibi_scene("lie_on_desk") + hide screen bld1 + call hide_blkfade + call ctc + + show screen blktone + her "" (xpos="mid", ypos="base") + gen "You can open a book if you want." ("grin", xpos="far_left", ypos="head") + her "I should read about this spell called \"the Clap\"!" ("annoyed", "closed", "base", "mid", cheeks="blush") + + hide hermione_main + call nar(">You take advantage of her moment of distraction to force your cock into her butthole.") + + call her_chibi_scene("sex_naked_slow") + hide screen bld1 + with d1 + with hpunch + pause .8 + + her "Ah, you brute {heart}" ("grin", "narrow", "base", "up", cheeks="blush") + gen "Your butthole is the perfect fit, not too tight and not too stretched!" ("base", xpos="far_left", ypos="head") + her "You've trained me well..." ("silly", "narrow", "base", "up", cheeks="blush") + call nar(">You caress her clit while fucking her.") + her "*Mmmh*, yes {heart}" ("open", "narrow", "base", "up", cheeks="blush") + gen "You love it don't you?" ("grin", xpos="far_left", ypos="head") + her "Your cock in my ass, oh yes." ("base", "narrow", "base", "up", cheeks="blush") + gen "Even without points?" ("base", xpos="far_left", ypos="head") + her "Don't make me regret agreeing to this." ("upset", "happyCl", "worried", "mid", cheeks="blush") + gen "Say you love it even without points." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("sex_naked") + call nar(">You increase the pace.") + her "*Ahh* yesss {heart}" ("open_tongue", "narrow", "base", "up", cheeks="blush") + her "I'm such a whore, I love sex even for free." ("mad", "wide", "base", "stare", cheeks="blush") + gen "You know it!" ("grin", xpos="far_left", ypos="head") + her "Don't make it a habit." ("open", "happy", "base", "mid", cheeks="blush") + gen "......" ("base", xpos="far_left", ypos="head") + call nar(">You pull out your cock and roughly shove it back inside.") + with hpunch + her "*Aaaaah* {heart}" ("open", "narrow", "annoyed", "up", cheeks="blush") + her "I love being sodomised savagely by my headmaster." ("silly", "narrow", "base", "up", cheeks="blush") + call nar(">And again.") + with hpunch + her "Yessss {heart}" + her "I love his big cock in my ass." ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + call nar(">You slap her butt-cheek.") + call play_sound("slap_1") + with hpunch + her "And being punished for my sluttiness." ("open", "narrow", "worried", "mid_soft", cheeks="blush", tears="mascara") + call play_sound("slap_1") + with hpunch + her "*Aah*, like this, punish me more master {heart}" ("silly", "base", "worried", "mid", cheeks="blush", tears="soft") + call play_sound("slap_1") + with hpunch + her "Yess!" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + call play_sound("slap_1") + with hpunch + her "More!" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + call play_sound("slap_1") + with hpunch + her "I'm about to..." ("angry", "narrow", "base", "dead", cheeks="blush", tears="crying") + call play_sound("slap_1") + with hpunch + pause .1 + call play_sound("slap_1") + with hpunch + pause .1 + her "Cuuuum {heart} {heart}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + call her_chibi_scene("sex_naked_fast") + call nar(">You fuck her butthole fiercely.") + her "Yes, yes, again, *aaaah* {heart}" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + g11 "Yes, my little whore, yes!" + call her_chibi_scene("sex_naked_cum_out") + her "*Panting* *panting*" ("open", "narrow", "worried", "mid_soft", cheeks="blush", tears="mascara") + call her_chibi_scene("sex_naked_cum_out_done") + g11 "*Panting* *panting*" + + hide hermione_main + call blkfade + + hide hermione_main + call her_chibi_scene("lie_on_desk") + pause 1 + hide screen bld1 + hide screen blktone + call hide_blkfade + pause .8 + + call bld + gen "*sigh* that was, that was..." ("base", xpos="far_left", ypos="head") + her "Marvellous {heart}" ("smile", "base", "base", "R") + her "I'm so glad you agreed to tutor me, professor..." ("silly", "narrow", "base", "up", cheeks="blush") + her "Your lessons have changed my life so much!" ("smile", "base", "angry", "mid", cheeks="blush") + gen "{size=-2}(Victory!){/size}" ("grin", xpos="far_left", ypos="head") + her "But if you think you can fuck me all the time without giving me points..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "You're dreaming!" ("annoyed", "narrow", "base", "up", cheeks="blush") + gen "{size=-2}(*Ohhh*...){/size}" ("base", xpos="far_left", ypos="head") + gen "Even occasionally?" ("base", xpos="far_left", ypos="head") + her "......." + her "Only if you are well-behaved..." ("soft", "base", "base", "R", cheeks="blush") + gen "I'm the most well-behaved professor in the whole school!" ("grin", xpos="far_left", ypos="head") + her "Sure." ("annoyed", "narrow", "angry", "R", cheeks="blush") + her "{size=-2}(At least, you're not the worst...){/size}" ("annoyed", "narrow", "base", "up", cheeks="blush") + gen "Good night, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Good night, [genie_name]." ("base", "base", "base", "R", cheeks="blush") + + hide hermione_main + call blkfade + + ">You dismiss Hermione." + ">She puts her clothes back on without haste." + + call play_sound("equip") + $ hermione.wear("all") + pause 1 + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + call hide_blkfade + pause 1 + + call her_walk("door", "base") + + her "{size=-4}(He's hardly Prince Charming but...){/size}" ("base", "narrow", "base", "mid_soft", cheeks="blush", ypos="head", flip=False, trans=d3) + her "{size=-4}(I doubt Prince Charming could fuck me half as well as he can!){/size}" ("grin", "narrow", "base", "up", cheeks="blush") + + call her_chibi("leave") + + $ her_tutoring = 15 + + if her_whoring < 24: + $ her_whoring += 1 + + jump end_hermione_event diff --git a/game/scripts/characters/hermione/favors.rpy b/game/scripts/characters/hermione/favors.rpy new file mode 100644 index 00000000..e227bb1b --- /dev/null +++ b/game/scripts/characters/hermione/favors.rpy @@ -0,0 +1,264 @@ +# Personal favours +default hg_pf_talk = event_class(title = "Talk to me!", start_label = "hg_pf_talk", start_tier = 1, events = [ + [ + ["hg_pf_talk_T1_intro_E1"], + ["hg_pf_talk_T1_E1"] + ], + + [ + ["hg_pf_talk_T2_intro_E1"], + ["hg_pf_talk_T2_E1"] + ], + + [ + ["hg_pf_talk_T3_intro_E1"], + ["hg_pf_talk_T3_intro_E2"], + ["hg_pf_talk_T3_repeat"] + ] + + ], + icons = [None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["heart_empty", "heart_red"], ["heart_empty", "heart_half"], ["heart_empty", "heart_red"]] + ) + +# Alternate talk event with TONKS +default hg_pf_talk_tonks = event_class(title = "", start_label = "", start_tier = 3, events = [ + [ + ["hg_pf_talk_tonks_T3_intro_E1"], + ["hg_pf_talk_tonks_T3_E1"] + ] + + ], + icons = [None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["heart_empty", "heart_red"], ["heart_empty", "heart_half"], ["heart_empty", "heart_red"]] + ) + + +default hg_pf_admire_panties = event_class(title = "Show me your Panties!", start_label = "hg_pf_admire_panties", start_tier = 1, events = [ + [ + ["hg_pf_admire_panties_T1_intro_E1"], + ["hg_pf_admire_panties_T1_E1"] + ], + + [ + ["hg_pf_admire_panties_T2_intro_E1"], + ["hg_pf_admire_panties_T2_E1"] + ], + + [ + ["hg_pf_admire_panties_T3_intro_E1"], + ["hg_pf_admire_panties_T3_E1"], + ], + + [ + ["hg_pf_admire_panties_T4_intro_E1"], + ["hg_pf_admire_panties_T4_E1"], + ["hg_pf_admire_panties_T4_E2"] + ] + + ], + icons = [None, None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["heart_empty", "heart_red"], ["heart_empty", "heart_red"], ["heart_empty", "heart_red"], ["heart_empty", "heart_red"]] + ) + + +default hg_pf_admire_breasts = event_class(title = "Show me your tits!", start_label = "hg_pf_admire_breasts", start_tier = 1, events = [ + [ + ["hg_pf_admire_breasts_T1_intro_E1"], + ["hg_pf_admire_breasts_T1_intro_E2"], + ["hg_pf_admire_breasts_T1_E2"] + ], + + [ + ["hg_pf_admire_breasts_T2_intro_E1"], + ["hg_pf_admire_breasts_T2_intro_E2"], + ["hg_pf_admire_breasts_T2_E2"] + ], + + [ + ["hg_pf_admire_breasts_T3_intro_E1"], + ["hg_pf_admire_breasts_T3_E1"] + ], + + [ + ["hg_pf_admire_breasts_T4_intro_E1"], + ["hg_pf_admire_breasts_T4_E1"], + ["hg_pf_admire_breasts_T4_E2"] + ] + + ], + icons = [None, None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["heart_empty", "heart_red"], ["heart_empty", "heart_red"], ["heart_empty", "heart_red"], ["heart_empty", "heart_red"]] + ) + + +default hg_pf_grope = event_class(title = "Grope her!", start_label = "hg_pf_grope", start_tier = 1, events = [ + [ + ["hg_pf_grope_T1_fail_intro"], + ["hg_pf_grope_T1_fail_repeat"], + ], + + [ + ["hg_pf_grope_T2_intro_E1"], + ["hg_pf_grope_T2_E1"] + ], + + [ + ["hg_pf_grope_T3_intro_E1"], + ["hg_pf_grope_T3_E1"] + ], + + [ + ["hg_pf_grope_T4_intro_E1"], + ["hg_pf_grope_T4_intro_E2"], + ["hg_pf_grope_T4_E2"] + ] + + ], + icons = [None, None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["heart_empty", "heart_black"], ["heart_empty", "heart_red"], ["heart_empty", "heart_red"], ["heart_empty", "heart_red"]] + ) + + +default hg_pf_strip = event_class(title = "Dance for Me!", start_label = "hg_pf_strip", start_tier = 1, events = [ + [["hg_pf_strip_fail"]], # Tier 1 + + [ + ["hg_pf_strip_T2_fail_intro"], + ["hg_pf_strip_T2_fail_repeat"], + ], + + [ + ["hg_pf_strip_T3_intro_E1"], # First Strip event. + ["hg_pf_strip_T3_intro_E2"], # Strip event where Snape enters. + ["hg_pf_strip_T3_E2"] # Clumsy Strip. Has branches. + ], + + [ + ["hg_pf_strip_T4_intro_E1"], # Hermione has improved. + ["hg_pf_strip_T4_intro_E2"], # Hermione doesn't mind stripping. + ["hg_pf_strip_T4_E2"] # She's happy to strip. + ] + + ], + icons = [None, None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_half"], ["heart_empty", "heart_red"]] + ) + + +default hg_pf_handjob = event_class(title = "Give me a handy!", start_label = "hg_pf_handjob", start_tier = 1, events = [ + [["hg_pf_handjob_fail"]], # Tier 1 + [["hg_pf_handjob_fail"]], # Tier 2 + [["hg_pf_handjob_fail"]], # Tier 3 + + [ + ["hg_pf_handjob_T4_intro_E1"], # First time handjob + ["hg_pf_handjob_T4_intro_E2"], # Second time handjob + ["hg_pf_handjob_T4_repeat"] # Repeated handjob + ], + + [ + ["hg_pf_handjob_T5_intro_E1"], # New interaction + ["hg_pf_handjob_T5_intro_E2"], # More reply options + ["hg_pf_handjob_T5_repeat"] # Repeated handjob + ] + + ], + icons = [None, None, None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_half"], ["heart_empty", "heart_red"]] + ) + + +default hg_pf_titjob = event_class(title = "Give me a tittyjob!", start_label = "hg_pf_titjob", start_tier = 1, events = [ + [["hg_pf_titjob_fail"]], # Tier 1 + [["hg_pf_titjob_fail"]], # Tier 2 + [["hg_pf_titjob_fail"]], # Tier 3 + [["hg_pf_titjob_fail"]], # Tier 4 + + [ + ["hg_pf_titjob_T5_intro_E1"], # First time titjob + ["hg_pf_titjob_T5_repeat"] # Repeated titjob + ], + + [ + ["hg_pf_titjob_T6_intro_E1"], # Couple of choices + ["hg_pf_titjob_T6_intro_E2"], # New interactions + ["hg_pf_titjob_T6_repeat"] # Repeated titjob + ] + + ], + icons = [None, None, None, None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_red"], ["heart_empty", "heart_red"]] + ) + + +default hg_pf_blowjob = event_class(title = "Suck it!", start_label = "hg_pf_blowjob", start_tier = 1, events = [ + [["hg_pf_blowjob_fail"]], # Tier 1 + [["hg_pf_blowjob_fail"]], # Tier 2 + [["hg_pf_blowjob_fail"]], # Tier 3 + + [ + ["hg_pf_blowjob_T4_fail_intro"], # Hermione refuses + ["hg_pf_blowjob_T4_fail_repeat"] # Repeat fail + ], + + [ + ["hg_pf_blowjob_T5_intro_E1"], # First time blowjob + ["hg_pf_blowjob_T5_intro_E2"], # Snape visit + ["hg_pf_blowjob_T5_repeat"] # Repeated blowjob + ], + + [ + ["hg_pf_blowjob_T6_intro_E1"], # Couple of choices + ["hg_pf_blowjob_T6_hidden_repeat"], # Repeat: Random visit + ["hg_pf_blowjob_T6_repeat"] # Repeat: Regular + Facefuck + ] + + ], + icons = [None, None, None, None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_red"], ["heart_empty", "heart_red"]] + ) + + +default hg_pf_sex = event_class(title = "Let's have sex!", start_label = "hg_pf_sex", start_tier = 1, events = [ + [["hg_pf_sex_fail"]], # Tier 1 + [["hg_pf_sex_fail"]], # Tier 2 + [["hg_pf_sex_fail"]], # Tier 3 + [["hg_pf_sex_fail"]], # Tier 4 + [["hg_pf_sex_fail"]], # Tier 5 (Add tier 0 events that fail.) + + [ + ["hg_pf_sex_T6_intro_E1"], # First time sex + ["hg_pf_sex_T6_intro_E2"], # Second time sex + ["hg_pf_sex_T6_intro_E3"], # Choice to do anal + ["hg_pf_sex_T6_E3"] # Regular or anal sex + ] + + ], + icons = [None, None, None, None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_black"], ["heart_empty", "heart_half"]] + ) + +default hg_pf_anal_sex = event_class(title = "", start_label = "hg_pf_sex", start_tier = 6, events = [ + [ + ["hg_anal_sex_1_intro"], + ["hg_anal_sex_2_intro"], + ["hg_anal_sex_3"], + ] + + ], + icons = [None, None, None], + iconset=[["heart_empty", "heart_red"]] +) + +default hg_favor_list = [ + hg_pf_talk, + hg_pf_admire_breasts, + hg_pf_admire_panties, + hg_pf_grope, + hg_pf_strip, + hg_pf_handjob, + hg_pf_titjob, + hg_pf_blowjob, + hg_pf_sex, + ] diff --git a/game/scripts/characters/hermione/gifts.rpy b/game/scripts/characters/hermione/gifts.rpy new file mode 100644 index 00000000..8d489b60 --- /dev/null +++ b/game/scripts/characters/hermione/gifts.rpy @@ -0,0 +1,628 @@ + +# Hermione Gift Responses + +label give_her_gift(gift_item): + hide hermione_main + with d5 + her "" (xpos="mid",ypos="base",trans=d5) + + $ gave_hermione_gift = True + + if gift_item == lollipop_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "A lollipop?" ("base", "base", "base", "mid") + call give_gift(">You give the candy to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + call her_mood(-5) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "Candy?" ("normal", "base", "base", "mid") + her "Candy is for kids, [genie_name]." ("open", "base", "base", "mid") + call give_gift(">You give the candy to Hermione...",gift_item) + her "Thank you..." ("annoyed", "base", "worried", "R") + call her_mood(-5) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "Candy?" ("normal", "base", "base", "mid") + call give_gift(">You give the candy to Hermione...",gift_item) + her "*Ehm*... Sure, thanks..." ("open", "squint", "base", "mid") + call her_mood(-5) + elif her_whoring >= 18: # Lv 7+ + her "A lollipop?" ("base", "base", "base", "mid") + her "Clever girls use candy like this as a \"weapon\"." ("smile", "base", "base", "R") + call give_gift(">You give the candy to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "happyCl", "base", "mid") + call her_mood(-5) + + elif gift_item == chocolate_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "A chocolate bar?" ("base", "base", "base", "mid") + call give_gift(">You give the chocolate to Hermione...", gift_item) + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + call her_mood(-10) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "A chocolate bar?" ("normal", "base", "base", "mid") + her "*Hmm*..." ("annoyed", "squint", "angry", "mid") + her "That thing about fairies..." + her "That is a joke of some sort, right?" ("open", "base", "worried", "mid") + call give_gift(">You give the chocolate to Hermione...", gift_item) + her "Thank you..." ("soft", "base", "base", "mid") + call her_mood(-10) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "A chocolate bar?" ("normal", "base", "base", "mid") + her "I just like the way it crunches, [genie_name]! N-not the taste..." ("grin", "happyCl", "worried", "mid",emote="sweat") + call give_gift(">You give the chocolate to Hermione...", gift_item) + her "*Ehm*... Sure, thanks..." ("base", "base", "base", "mid") + call her_mood(-10) + elif her_whoring >= 18: # Lv 7+ + her "A chocolate bar?" ("base", "base", "base", "mid") + her "You spoil me, [genie_name]." ("smile", "base", "angry", "mid") + call give_gift(">You give the chocolate to Hermione...", gift_item) + her "Thank you." ("base", "squint", "base", "mid") + call her_mood(-10) + + elif gift_item == plush_owl_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "A stuffed owl?" ("base", "base", "base", "mid") + her "It's cute..." ("base", "base", "base", "mid") + call give_gift(">You give the owl to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + call her_mood(-7) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "A plush toy?" ("open", "base", "worried", "mid") + her "I like it!" ("base", "base", "base", "mid") + call give_gift(">You give the owl to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + call her_mood(-10) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "A toy?" ("base", "base", "base", "mid") + her "Toys are for kids, [genie_name]." ("open", "base", "base", "mid") + her "But I'll take it..." ("annoyed", "base", "worried", "R") + call give_gift(">You give the owl to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + call her_mood(-15) + elif her_whoring >= 18: # Lv 7+ + her "This is one of those adult toys isn't it?" ("disgust", "narrow", "base", "mid_soft") + her "There's got to be a switch or a button somewhere..." ("open", "narrow", "worried", "down") + her "So... Does it vibrate or something?" ("base", "narrow", "worried", "down") + her "Oh...?" ("open", "happy", "base", "mid",cheeks="blush") + her "So it is really just a plush toy then?" + her "Shame..." ("angry", "narrow", "base", "down") + her "I mean, thank you, [genie_name]." ("angry", "happyCl", "worried", "mid",emote="sweat") + call give_gift(">You give the owl to Hermione...",gift_item) + call her_mood(-4) + + elif gift_item == butterbeer_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "Butterbeer?" ("base", "base", "base", "mid") + her "Are you sure about that, [genie_name]?" ("open", "squint", "base", "mid") + her "It does contain alcohol, you know..." ("base", "base", "base", "mid") + call give_gift(">You give the bottle to Hermione...",gift_item) + her "Thank you." ("base", "base", "base", "mid") + call her_mood(-3) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "Butterbeer, [genie_name]?" ("open", "base", "worried", "mid") + her "To let you in on a little secret, [genie_name]..." ("open", "base", "base", "mid") + her "I'm a big fan of this completely harmless beverage." ("base", "base", "base", "mid") + call give_gift(">You give the bottle to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + call her_mood(-10) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "Butterbeer?" ("base", "base", "base", "mid") + her "Thank you, [genie_name]." ("grin", "happyCl", "worried", "mid",emote="sweat") + call give_gift(">You give the bottle to Hermione...",gift_item) + her "I shall drink this with the girls later." ("base", "base", "base", "mid") + call her_mood(-15) + elif her_whoring >= 18: # Lv 7+ + her "Butterbeer...?" ("base", "base", "base", "mid") + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + call give_gift(">You give the bottle to Hermione...",gift_item) + her "I shall drink this later with the boys." ("base", "base", "base", "mid") + her "Err... I meant to say with the girls, of course." ("open", "base", "base", "R",cheeks="blush") + call her_mood(-20) + + elif gift_item == science_mag_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "\"Popular magic\" magazines?" ("base", "base", "base", "mid") + call give_gift(">You give an assortment of educational magazines to Hermione...",gift_item) + her "Thank you, [genie_name]!" ("base", "base", "base", "mid") + her "I will use them for my research!" + call her_mood(-15) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "Sometimes I find information in magazines that I could never find in a book..." ("base", "base", "base", "mid") + call give_gift(">You give an assortment of educational magazines to Hermione...",gift_item) + her "Thank you, [genie_name]!" ("base", "base", "base", "mid") + her "I will use them for my research!" + call her_mood(-10) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "Oh..." ("open", "base", "base", "mid") + her "Yes, I used to read magazines like that a lot..." ("base", "base", "base", "mid") + her "Lately not so much though..." ("open", "base", "worried", "R") + call give_gift(">You give an assortment of educational magazines to Hermione...",gift_item) + her "Thank you, [genie_name]!" ("base", "base", "base", "mid") + call her_mood(-3) + elif her_whoring >= 18: # Lv 7+ + her "*Ehm*..." ("open", "base", "worried", "R") + her "To be honest, magazines like that lost their appeal to me completely lately..." ("open", "squint", "base", "mid") + her "But I don't mind taking them off you hands anyway, [genie_name]." ("open", "base", "worried", "mid") + call give_gift(">You give an assortment of educational magazines to Hermione...",gift_item) + her "Thank you." ("soft", "base", "base", "R") + call her_mood(0) + + elif gift_item == girls_mag_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "*Hmm*?" ("soft", "base", "base", "mid") + her "This is the sort of press some Slytherin bimbo would appreciate." ("annoyed", "squint", "base", "mid") + her "I am way above silly magazines like that, [genie_name]." ("open", "closed", "base", "mid") + call her_mood(0) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "I don't read magazines of that nature, [genie_name]..." ("open", "closed", "angry", "mid") + her "................" ("soft", "base", "base", "R") + her "But I could give it a try just to humour you I suppose..." ("open", "closed", "angry", "mid") + call give_gift(">You give an assortment of rather girly magazines to Hermione...",gift_item) + her "Thank you, [genie_name]!" ("open", "squint", "base", "mid") + call her_mood(-5) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "I ashamed to admit this, but..." ("open", "base", "worried", "R") + her "I really enjoy reading magazines like that lately..." ("grin", "happyCl", "worried", "mid",emote="sweat") + call give_gift(">You give an assortment of rather girly magazines to Hermione...",gift_item) + her "Thank you, [genie_name]." ("open", "squint", "base", "mid") + call her_mood(-15) + elif her_whoring >= 18: # Lv 7+ + her "The Latest edition of \"Girlz\"?!" ("angry", "wide", "base", "stare") + her "I can't have enough of that brilliant magazine!" ("grin", "happyCl", "worried", "mid",emote="sweat") + call give_gift(">You give an assortment of rather girly magazines to Hermione...",gift_item) + her "Thank you, [genie_name]." ("open", "squint", "base", "mid") + call her_mood(-15) + + elif gift_item == adult_mag_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "Are that...?" ("open", "base", "base", "mid") + her "Adult magazines, [genie_name]?" ("open", "base", "base", "mid") + her "Given to me by An esteemed wizard of your status?" ("annoyed", "narrow", "angry", "R") + her "[genie_name], surely you could find a more productive way to spend your free time." ("disgust", "narrow", "base", "mid_soft") + her "And I most definitely would not have use for those..." ("angry", "base", "angry", "mid") + call her_mood(7) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "Adult magazines?" ("angry", "base", "angry", "mid") + her "[genie_name], I have no interest in things like that." ("annoyed", "narrow", "angry", "R") + her "And how is this an appropriate present for one of your students, [genie_name]?" ("angry", "base", "angry", "mid") + call her_mood(3) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "Adult magazines?" ("open", "base", "base", "mid") + her "[genie_name], this is such an inappropriate present for a girl like me..." ("angry", "happyCl", "worried", "mid",emote="sweat") + call give_gift(">You give an assortment of adult magazines to Hermione...",gift_item) + her "I shall throw these away myself..." ("annoyed", "narrow", "annoyed", "mid") + call her_mood(-8) + elif her_whoring >= 18: # Lv 7+ + her "The New edition of \"L.o.v.e.\"!!!" ("smile", "happyCl", "base", "mid") + her "Err.. I mean, adult magazines?" ("angry", "wink", "base", "mid") + her "This is a little inappropriate..." + her "But I will take them..." ("base", "happyCl", "base", "mid") + call give_gift(">You give an assortment of adult magazines to Hermione...",gift_item) + her "thank you, [genie_name]." ("base", "happyCl", "base", "mid") + call her_mood(-15) + + elif gift_item == porn_mag_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "*Hmm*... What is this?" ("base", "base", "base", "mid") + her "[genie_name], those are porn magazines!" ("scream", "wide", "base", "stare") + her "Shame on you, [genie_name]!" ("angry", "base", "angry", "mid",cheeks="blush") + call her_mood(15) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "Porn magazines?" ("shock", "wide", "base", "stare") + her "[genie_name], what do you expect me to do with those?" ("open", "narrow", "worried", "down") + her "Research them?" ("annoyed", "narrow", "annoyed", "mid") + her "Despicable!" ("scream", "base", "angry", "mid",emote="angry") + call her_mood(8) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "That's hardcore porn, [genie_name]." ("open", "base", "base", "mid") + her "Which is a completely inappropriate gift for a girl like me!" ("angry", "happyCl", "worried", "mid",emote="sweat") + her ".............." ("angry", "narrow", "base", "down") + her "But I will take them..." ("angry", "base", "base", "mid") + call give_gift(">You give an assortment of porn magazines to Hermione...",gift_item) + her "And I shall throw them in the trash, where they and... girls who like these things belong..." ("annoyed", "narrow", "annoyed", "mid") + call her_mood(0) + elif her_whoring >= 18: # Lv 7+ + her "Pornography?" ("shock", "wide", "base", "stare") + her "................" ("angry", "narrow", "base", "down") + her "How can women even agree to do things like that, [genie_name]?" ("angry", "base", "base", "mid") + her "................." ("angry", "narrow", "base", "down") + her "Alright, I shall accept them..." ("upset", "closed", "base", "mid") + her "Solely for research purposes of course..." ("open", "base", "base", "R",cheeks="blush") + call give_gift(">You give an assortment of porn magazines to Hermione...",gift_item) + call her_mood(-15) + + elif gift_item == krum_poster_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "A Quidditch poster?" ("annoyed", "narrow", "worried", "down") + her "What am I supposed to do with it, [genie_name]?" ("annoyed", "narrow", "annoyed", "mid") + her "No, thank you." ("annoyed", "closed", "base", "mid") + call her_mood(0) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "A Quidditch poster?" ("annoyed", "narrow", "worried", "down") + her "*Hmm*..." ("annoyed", "narrow", "annoyed", "mid") + her "I think I saw this player once or twice..." ("annoyed", "narrow", "worried", "down") + her "He is that Durmstrang student, right?" ("base", "base", "base", "mid") + call give_gift(">You give the poster to Hermione...",gift_item) + call her_mood(-5) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "A Viktor Krum poster, [genie_name]?" ("annoyed", "narrow", "worried", "down") + her "Can't say that I care much for Quidditch, but..." ("open", "squint", "base", "mid") + her "I can see why the girls find the brutish physique of some players appealing..." ("open", "narrow", "worried", "down") + call give_gift(">You give the poster to Hermione...",gift_item) + call her_mood(-15) + elif her_whoring >= 18: # Lv 7+ + her "A Viktor Krum poster?!" ("scream", "wide", "base", "mid") + her "Thank you, [genie_name]!" ("grin", "happyCl", "worried", "mid",emote="sweat") + call give_gift(">You give the poster to Hermione...",gift_item) + her "Can't wait to hang it over my bed!" ("smile", "base", "base", "R") + her "The girls will go green with envy..." ("smile", "narrow", "base", "mid_soft") + call her_mood(-25) + + elif gift_item == sexy_lingerie_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "lingerie?" ("angry", "narrow", "base", "down") + her "[genie_name], I cannot accept a gift like this from you..." ("upset", "closed", "base", "mid") + call her_mood(10) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "sexy lingerie?" ("angry", "narrow", "base", "down") + her "You know I cannot possibly accept a gift like that from you, [genie_name]." ("angry", "base", "base", "mid") + her "(It's pretty though)........." ("angry", "narrow", "base", "down") + call her_mood(0) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "sexy lingerie?" ("base", "narrow", "worried", "down") + her "[genie_name] that is so inappropriate..." ("angry", "wink", "base", "mid") + call give_gift(">You give the lingerie to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "base", "base", "R",cheeks="blush") + call her_mood(-7) + elif her_whoring >= 18: # Lv 7+ + her "sexy lingerie?" ("base", "narrow", "worried", "down") + her "Do You think it will make me look like one of the witches in those adult magazines, [genie_name]?" ("grin", "narrow", "base", "dead") + her "Oh... I mean, thank you, [genie_name]." ("angry", "wink", "base", "mid") + call give_gift(">You give the lingerie to Hermione...",gift_item) + call her_mood(-15) + + elif gift_item == sexy_stockings_ITEM : + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "Stockings?" ("base", "narrow", "worried", "down") + her "[genie_name], are you insinuating that I wear these?" ("angry", "closed", "base", "mid") + call her_mood(8) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "Sexy stockings?" ("angry", "narrow", "base", "down") + her "Isn't this a bit inappropriate, [genie_name]?" ("annoyed", "base", "base", "mid") + call her_mood(0) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "Sexy stockings?" ("base", "narrow", "worried", "down") + her "Thank you I guess..." ("base", "wink", "base", "mid",cheeks="blush") + call give_gift(">You give the stockings to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "base", "base", "R",cheeks="blush") + call her_mood(-8) + elif her_whoring >= 18: # Lv 7+ + her "Sexy stockings?" ("base", "narrow", "worried", "down") + her "These are almost completely transparent, [genie_name]!" ("grin", "wide", "base", "mid") + call give_gift(">You give the stockings to Hermione...",gift_item) + call her_mood(-10) + + elif gift_item == pink_condoms_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "Condoms?!" ("angry", "wide", "base", "stare") + her "[genie_name], I wouldn't even know what to do with them..." ("scream", "closed", "angry", "mid") + call her_mood(6) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "... Condoms?" ("normal", "squint", "angry", "mid") + her "*Ehm*... Is this a part of some new Hogwarts sex ed program or something?" ("open", "closed", "angry", "mid") + her "No, [genie_name]... It feels wrong to accept a thing like this from you..." ("open", "base", "base", "R",cheeks="blush") + call her_mood(0) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "A pack of condoms?" ("normal", "base", "base", "mid") + her "[genie_name], what possible use could I have for those?" + her "Well, I shall accept them simply because it is rude to refuse a gift..." ("open", "closed", "angry", "mid") + call give_gift(">You give a pack of condoms to Hermione...", gift_item) + call her_mood(-3) + elif her_whoring >= 18: # Lv 7+ + her "A pack of condoms?" ("open", "squint", "base", "mid") + her "I appreciate your concern, [genie_name]. Thank you." ("base", "narrow", "base", "mid_soft") + call give_gift(">You give a pack of condoms to Hermione...", gift_item) + call her_mood(-4) + + elif gift_item == vibrator_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "A magic wand?" ("base", "base", "base", "mid") + her "No, it doesn't look like--" ("soft", "base", "base", "mid") + her ".........?" + her "!!!" ("angry", "wide", "base", "stare") + her "[genie_name]!" ("angry", "base", "angry", "mid",cheeks="blush") + her "This is just beyond inappropriate!" ("scream", "closed", "angry", "mid") + call her_mood(10) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "Is this what I think it is?" ("angry", "narrow", "base", "down") + her "[genie_name], let me remind you that I belong to the noble house of Gryffindor." ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "A present like that would be appropriate for a girl from Slytherin, [genie_name]." ("upset", "closed", "base", "mid") + call her_mood(10) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "Is that a... vibrator?" ("angry", "narrow", "base", "down") + her "The design..." + her "it reminds me of my wand..." + her "Did you have this custom made for me [genie_name]?" ("angry", "narrow", "base", "down") + her "This is inappropriate..." ("scream", "closed", "angry", "mid") + her "But I shall take it nonetheless..." ("annoyed", "base", "worried", "R") + call give_gift(">You give the vibrator to Hermione...",gift_item) + call her_mood(0) + elif her_whoring >= 18: # Lv 7+ + her "This vibrator..." ("open", "base", "worried", "mid") + her "It's... calling out for me..." ("open", "base", "worried", "R") + her "But not in a dirty way, [genie_name]." ("disgust", "narrow", "base", "mid_soft") + call give_gift(">You give the vibrator to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "narrow", "worried", "down") + call her_mood(-10) + + elif gift_item == anal_lube_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "I don't know what this is..." ("open", "base", "base", "mid") + her "But I have the feeling that the jar is full of something vile and inappropriate..." ("angry", "base", "angry", "mid") + her "No, thank you, [genie_name]." + call her_mood(6) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "*Hmm*..." ("annoyed", "narrow", "worried", "down") + her "I think I know what this is..." ("disgust", "narrow", "base", "mid_soft") + her "But why would you give something like this to one of your pupils, [genie_name]?" + her "No, thank you." ("annoyed", "narrow", "angry", "R") + call her_mood(2) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "Anal lubricant?" ("angry", "narrow", "base", "down") + her "*Ehm*.. well... I know this girl..." ("open", "base", "base", "R",cheeks="blush") + her "I mean I don't know her, she is a friend of a friend..." + her "Yes, I will take this for her..." + call give_gift(">You give the jar to Hermione...",gift_item) + her "Still, I think you should not give presents like this to your pupils, [genie_name]." ("open", "narrow", "annoyed", "mid", cheeks="blush") + call her_mood(0) + elif her_whoring >= 18: # Lv 7+ + her "Anal lubricant, [genie_name]?" ("base", "narrow", "worried", "down") + her "I know a couple of girls who would do anything for a commodity like that." ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "Thank for looking out for us, [genie_name]." ("base", "narrow", "base", "mid_soft") + call give_gift(">You give the jar to Hermione...",gift_item) + call her_mood(-5) + + elif gift_item == ballgag_and_cuffs_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "What is this?" ("angry", "narrow", "base", "down") + her "Is this like one of those adult toys?" ("angry", "squint", "base", "mid",cheeks="blush") + her "What woman in her right mind would subject herself to a humiliation like that?" ("scream", "closed", "angry", "mid") + her "And what possible use could I have for such objects?" ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "This is just insulting, [genie_name]..." ("angry", "base", "angry", "mid",cheeks="blush") + call her_mood(10) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "[genie_name], do you not realise how inappropriate it would be for me to accept a present like that?" ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "And I would not even know what to do with them anyway..." ("open", "base", "base", "R",cheeks="blush") + her "I mean these fluffy things are obviously handcuffs..." ("angry", "narrow", "base", "down") + her "But this ball... *ehm*..." + her "[genie_name], please..." ("upset", "closed", "base", "mid") + her "Just put them away." + call her_mood(5) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "A month ago I would've felt insulted to receive a gift like this..." ("upset", "closed", "base", "mid") + her "But by now I know that some girls really do find pleasure in toys like..." ("angry", "narrow", "base", "down") + her "But I assure you that I am not one of them, [genie_name]." ("upset", "closed", "base", "mid") + her "But I know a girl who knows a girl who is into things like..." ("open", "base", "base", "R",cheeks="blush") + her "Yes, I shall take these to her..." ("base", "base", "base", "R",cheeks="blush") + call give_gift(">You give the ball gag and cuffs to Hermione...",gift_item) + call her_mood(-9) + elif her_whoring >= 18: # Lv 7+ + her "A ball gag and handcuffs?" ("open", "happy", "base", "mid",cheeks="blush") + her "This is completely inappropriate, [genie_name]." ("angry", "wink", "base", "mid") # :) + her "But a gift is a gift, right?" ("base", "squint", "base", "mid") + call give_gift(">You give the ball gag and cuffs to Hermione...",gift_item) + call her_mood(-15) + + elif gift_item == anal_plugs_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "*Hmm*...?" ("base", "base", "base", "mid") + her "Are those like key chain toys?" ("soft", "base", "base", "mid") + call give_gift(">You give the anal plugs to Hermione...",gift_item) + her "Thank you, [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + call her_mood(-8) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "[genie_name], are those adult toys of some sort?" ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "those are some of those anal things, aren't they?" ("angry", "base", "angry", "mid",cheeks="blush") + her "[genie_name] this is nothing but a weapon meant to oppress women!" + her "Despicable!" ("upset", "closed", "base", "mid") + call her_mood(15) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "Yes, I know that some girls have *uhm*..." ("upset", "closed", "base", "mid") + her "Have use for things such as these..." ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "But not me, [genie_name]." + her "No, thank you." ("upset", "closed", "base", "mid") + call her_mood(0) + elif her_whoring >= 18: # Lv 7+ + her "Anal plugs?" ("angry", "narrow", "base", "down") + her "I have no use for things like that, [genie_name]..." ("angry", "base", "base", "mid") + her "They are so pretty though..." ("angry", "wink", "base", "mid") + her "....................." ("angry", "narrow", "base", "down") + her "Well, alright. I shall take them off your hands if I must, [genie_name]." ("soft", "narrow", "annoyed", "up") + call give_gift(">You give the anal plugs to Hermione...",gift_item) + her "But I shall never use them of course..." ("open", "closed", "base", "mid") + her "................" ("base", "narrow", "worried", "down") + call her_mood(-10) + + elif gift_item == testral_strapon_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "What is that?" ("angry", "wide", "base", "stare") + her "An artefact of some sort or a trophy?" ("open", "base", "base", "mid") + her "So well-crafted..." ("base", "base", "base", "mid") + her "Are you sure that it's alright for me to have it, [genie_name]?" ("base", "base", "base", "mid") + call give_gift(">You give the strap-on to Hermione...",gift_item) + her "Thank you very much, [genie_name]. I promise to take good care of it." ("open", "closed", "base", "mid") + call her_mood(-20) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "!!!" ("angry", "wide", "base", "stare") + her "That is..." ("angry", "narrow", "base", "down") + her "But it doesn't even look... human..." + her "I mean..." ("annoyed", "narrow", "angry", "R") + her "[genie_name], do you have no shame?!" ("scream", "base", "angry", "mid",emote="angry") + her "Presenting a thing like that to a pupil?!" + her ".................." ("open", "narrow", "worried", "down") + her "Please put it away, [genie_name]." ("angry", "base", "angry", "mid") + call her_mood(15) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "That thing..." ("angry", "narrow", "base", "down") + her "Is that the actual size of the... of the real \"thing\"?" ("angry", "base", "base", "mid") + her "I mean..." ("open", "base", "base", "R",cheeks="blush") + her "......................." ("angry", "narrow", "base", "down") + her "Is this like a party prank prop?" ("angry", "base", "base", "mid") + her "It's so well-crafted though..." ("angry", "narrow", "base", "down") + her "I will take it..." ("normal", "happyCl", "worried", "mid") + call give_gift(">You give the strap-on to Hermione...",gift_item) + call her_mood(-10) + elif her_whoring >= 18: # Lv 7+ + her "It's... It's magnificent, [genie_name]..." ("shock", "wide", "base", "stare") + her "Is it really modelled after a thestral?" ("open", "base", "base", "R",cheeks="blush") + her "But the creatures are invisible..." ("open", "happy", "base", "mid",cheeks="blush") + her ".................." ("angry", "narrow", "base", "down") + her "Breathtaking..." ("grin", "narrow", "base", "dead") + her "Not in the way you think, [genie_name]..." ("upset", "closed", "base", "mid") + her "I am merely admiring the craftsmanship..." ("open", "closed", "base", "mid") + call give_gift(">You give the strap-on to Hermione...",gift_item) + her "Thank you for the gift, [genie_name]." ("base", "squint", "base", "mid") + call her_mood(-30) + + elif gift_item == broom_2000_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "A broom...?" ("base", "base", "base", "mid") + her "*Hmm*..." ("normal", "base", "base", "mid") + her "What is that silly-looking thing attached to it?" ("normal", "squint", "angry", "mid") + her "Is it like a saddle...?" ("open", "squint", "base", "mid") + call give_gift(">You give the broom to Hermione...",gift_item) + her "Thank you for the gift, [genie_name]." ("open", "base", "worried", "mid") + call her_mood(-20) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "A broom...?" ("base", "base", "base", "mid") + her "*Hmm*..." ("normal", "squint", "angry", "mid") + her "It's a sex-toy of some sort, isn't it?" ("angry", "base", "angry", "mid") + her "But it is so well crafted..." ("open", "narrow", "worried", "down") + call give_gift(">You give the broom to Hermione...",gift_item) + her "Thank you, [genie_name]." ("upset", "closed", "base", "mid") + call her_mood(-20) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "A broom...?" ("angry", "narrow", "base", "down") + her "*Hmm*..." + her "What kind of saddle is that...?" ("disgust", "narrow", "base", "mid_soft") + her "Well, doesn't matter." ("open", "closed", "base", "mid") + her "Refusing an expensive gift like that would be rude..." + call give_gift(">You give the broom to Hermione...",gift_item) + her "Thank you, [genie_name]." ("upset", "closed", "base", "mid") + call her_mood(-30) + elif her_whoring >= 18: # Lv 7+ + her "A broom..." ("base", "narrow", "worried", "down") + her "*Hmm*..." + her "That saddle, [genie_name]..." ("open", "base", "base", "R",cheeks="blush") + her "It was designed especially for witches, was it not?" ("open", "happy", "base", "mid",cheeks="blush") + her "I am not sure whether this is inappropriate or clever..." ("annoyed", "narrow", "annoyed", "mid") + her "But this is a brilliant piece of engineering either way..." ("base", "squint", "base", "mid") + call give_gift(">You give the broom to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "narrow", "base", "mid_soft") + call her_mood(-30) + + elif gift_item == sexdoll_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "Is this..." ("shock", "wide", "base", "stare") + her "A sex doll?!" ("angry", "happyCl", "worried", "mid",emote="sweat") + her "[genie_name]!!!" ("scream", "happyCl", "worried", "mid") + call her_mood(20) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "A sex doll?" ("shock", "wide", "base", "stare") + her "This is just so unbecoming for an esteemed wizard such as yourself, [genie_name]..." ("upset", "closed", "base", "mid") + call her_mood(20) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "A sex doll..." ("angry", "narrow", "base", "down") + her "This is a little inappropriate..." ("upset", "closed", "base", "mid") + her "But maybe we could use it for a prank or something..." ("base", "narrow", "worried", "down") + call give_gift(">You give the blow-up doll to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "narrow", "worried", "down") + call her_mood(-10) + elif her_whoring >= 18: # Lv 7+ + her "the Joanne sex doll?" ("annoyed", "narrow", "worried", "down") + her "I Can't say that I approve of this..." ("open", "base", "base", "R",cheeks="blush") + her "But I know Harry would love to have a go at it..." ("base", "narrow", "worried", "down") + call give_gift(">You give the blow-up doll to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "base", "base", "R",cheeks="blush") + call her_mood(-30) + + elif gift_item == anal_beads_ITEM: + if her_whoring >= 0 and her_whoring <= 5: # Lv 1-2. + her "*Hmm*...?" ("base", "base", "base", "mid") + her "Is this a necklace?" ("soft", "base", "base", "mid") + call give_gift(">You give the anal beads to Hermione...",gift_item) + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + call her_mood(-8) + elif her_whoring >= 6 and her_whoring <= 11: # Lv 3-4. + her "[genie_name], are those adult toys of some sort?" ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "This is one of those butt... bead things, aren't they?" ("angry", "base", "angry", "mid",cheeks="blush") + her "[genie_name] get them away from me!" + her "Gross!" ("upset", "closed", "base", "mid") + call her_mood(15) + elif her_whoring >= 12 and her_whoring <= 17: # Lv 5-6. + her "That's not a necklace..." ("upset", "closed", "base", "mid") + her "I wouldn't have any use for this..." ("open", "narrow", "annoyed", "mid", cheeks="blush") + her "Thanks but no thanks [genie_name]." ("upset", "closed", "base", "mid") + call her_mood(0) + elif her_whoring >= 18: # Lv 7+ + her "Anal beads?" ("angry", "narrow", "base", "down") + her "Obviously I don't need this sort of thing, [genie_name]..." ("angry", "base", "base", "mid") + her "Although it's got a nice colour..." ("angry", "wink", "base", "mid") + her "....................." ("angry", "narrow", "base", "down") + her "Fine, I'll use them as an armband, [genie_name]." ("soft", "narrow", "annoyed", "up") + call give_gift(">You give the anal beads to Hermione...",gift_item) + her "But I wont use them for their intended purpose..." ("open", "closed", "base", "mid") + her "................" ("base", "narrow", "worried", "down") + call her_mood(-10) + + elif gift_item == wine_ITEM or gift_item == firewhisky_ITEM: + if her_whoring <= 6 and her_whoring <= 11: + her "[genie_name]?! Drinking alcohol on school grounds is forbidden.." ("open", "base", "angry", "mid") + her "And you as a headmaster should know it!" ("upset", "base", "angry", "mid") + call her_mood(10) + elif her_whoring <= 12 and her_whoring <= 17: + her "But, [genie_name].. I can't drink alcohol." ("base", "narrow", "worried", "down") + her "I guess I could use it for some potion mixing though.." ("open", "base", "base", "R") + call give_gift(">You give the "+str(gift_item.name)+" bottle to Hermione...", gift_item) + her "" ("base", "base", "base", "R") + call her_mood(-5) + elif her_whoring >= 18: + her "But, [genie_name].. You know I can't drink.." ("soft","base", "base", "mid", cheeks="blush") + her "I get drunk too fast and I might do something I'll regret later." ("open", "base", "base", "R", cheeks="blush") + her "" ("base", "base", "base", "R", cheeks="blush") + call her_mood(0) + else: + call give_gift(">You give the "+str(gift_item.name)+" bottle to Hermione...", gift_item) + her "Thank you, [genie_name], I'll ask Ginny to drink some with me later." ("soft", "base", "base", "mid", cheeks="blush") + call her_mood(-20) + + her "" (xpos="base",ypos="base") + hide hermione_main + with d5 + + return + +label her_mood(value=0): + show screen blktone + with d3 + + if value > 0: + if value == 1: + "Hermione's mood worsened slightly." + else: + "Hermione's mood just got a whole lot worse!" + elif value < 0: + if value == -1: + "Hermione's mood has improved slightly." + else: + "Hermione's mood has improved significantly." + else: + "Hermione's mood hasn't changed." + + $ was_negative = her_mood > 0 + $ her_mood = max(min(her_mood+value, 100), 0) + + call describe_mood_after_gift(was_negative, her_mood, value) + + hide screen blktone + return diff --git a/game/scripts/characters/hermione/requests.rpy b/game/scripts/characters/hermione/requests.rpy new file mode 100644 index 00000000..747ec77c --- /dev/null +++ b/game/scripts/characters/hermione/requests.rpy @@ -0,0 +1,188 @@ +# Public requests + +default hg_pr_flirt = event_class(title = "Flirt with students!", start_label = "hg_pr_flirt", start_tier = 1, events = [ + [ + ["hg_pr_flirt_T1_E1"], + ["hg_pr_flirt_T1_E2"], + ["hg_pr_flirt_T1_E3"] + ], + + [ + ["hg_pr_flirt_T2_E1"], + ["hg_pr_flirt_T2_E2"], + ["hg_pr_flirt_T2_E3"] + ], + + [ + ["hg_pr_flirt_T3_E1"], + ["hg_pr_flirt_T3_E2"], + ["hg_pr_flirt_T3_E3"] + ] + + ], + icons = [None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"], ["star_empty", "star_yellow"]] + ) + +default hg_pr_flirt_teacher = event_class(title = "Flirt with teachers!", start_label = "hg_pr_flirt_teacher", start_tier = 1, events = [ + [ + ["hg_pr_flirt_teacher_T1_E1"], + ["hg_pr_flirt_teacher_T1_E2"], + ["hg_pr_flirt_teacher_T1_E3"] + ], + + [ + ["hg_pr_flirt_teacher_T2_E1"], + ["hg_pr_flirt_teacher_T2_E2"], + ["hg_pr_flirt_teacher_T2_E3"] + ], + + [ + ["hg_pr_flirt_teacher_T3_E1"], + ["hg_pr_flirt_teacher_T3_E2"], + ["hg_pr_flirt_teacher_T3_E3"] + ] + + ], + icons = [None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"], ["star_empty", "star_yellow"]] + ) + +default hg_pr_grope = event_class(title = "Let them grope you!", start_label = "hg_pr_grope", start_tier = 2, events = [ + [ + ["hg_pr_grope_T2_E1"], + ["hg_pr_grope_T2_E2"], + ["hg_pr_grope_T2_E3"] + ], + + [ + ["hg_pr_grope_T3_E1"], + ["hg_pr_grope_T3_E2"], + ["hg_pr_grope_T3_E3"] + ], + + [ + ["hg_pr_grope_T4_E1"], + ["hg_pr_grope_T4_E2"], + ["hg_pr_grope_T4_E3"] + ] + + ], + icons = [None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"], ["star_empty", "star_yellow"]] + ) + +default hg_pr_flash = event_class(title = "Flash your tits!", start_label = "hg_pr_flash", start_tier = 3, events = [ + [ + ["hg_pr_flash_T3_E1"], + ["hg_pr_flash_T3_E2"], + ["hg_pr_flash_T3_E3"] + ], + + [ + ["hg_pr_flash_T4_E1"], + ["hg_pr_flash_T4_E2"], + ["hg_pr_flash_T4_E3"] + ], + + [ + ["hg_pr_flash_T5_E1"], + ["hg_pr_flash_T5_E2"], + ["hg_pr_flash_T5_E3"] + ] + + ], + icons = [None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"], ["star_empty", "star_yellow"]], + monologue_glass = False # Event specific + ) + +default hg_pr_kiss = event_class(title = "Kiss a girl!", start_label = "hg_pr_kiss", start_tier = 3, events = [ + [ + ["hg_pr_kiss_T3_E1"], + ["hg_pr_kiss_T3_E2"], + ["hg_pr_kiss_T3_E3"] + ], + + [ + ["hg_pr_kiss_T4_E1"], + ["hg_pr_kiss_T4_E2"], + ["hg_pr_kiss_T4_E3"] + ], + + [ + ["hg_pr_kiss_T5_E1"], + ["hg_pr_kiss_T5_E2"] + ] + + ], + icons = [None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"], ["star_empty", "star_yellow"]] + ) + +default hg_pr_handjob = event_class(title = "Give a handjob!", start_label = "hg_pr_handjob", start_tier = 4, events = [ + [ + ["hg_pr_handjob_T4_E1"], + ["hg_pr_handjob_T4_E2"], + ["hg_pr_handjob_T4_E3"] + ], + + [ + ["hg_pr_handjob_T5_E1"], + ["hg_pr_handjob_T5_E2"], + ["hg_pr_handjob_T5_E3"] + ], + + [ + ["hg_pr_handjob_T6_intro_E1"], # Ron + ["hg_pr_handjob_T6_E2"], + ["hg_pr_handjob_T6_E3"] # Ron & Harry + ] + + ], + icons = [None, None, None], # If a tier doesn't need an icon replace with None + iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"], ["star_empty", "star_yellow"]] + ) + +default hg_pr_blowjob = event_class(title = "Give a blowjob!", start_label = "hg_pr_blowjob", start_tier = 5, events = [ + [ + ["hg_pr_blowjob_T5_E1"], + ["hg_pr_blowjob_T5_E2"], + ["hg_pr_blowjob_T5_E3"] + ], + + [ + ["hg_pr_blowjob_T6_intro_E1"], # Ron & Harry + ["hg_pr_blowjob_T6_E2"], # Slytherin + ["hg_pr_blowjob_T6_E3"] # Restroom bukkake :O + ] + + ], + icons = [None, None], # If a tier doesn't need an icon replace with None + iconset = [["star_empty", "star_yellow"], ["star_empty", "star_yellow"]] + ) + + +default hg_pr_sex = event_class(title = "Have sex!", start_label = "hg_pr_sex", start_tier = 6, events = [ + [ + ["hg_pr_sex_T6_intro_E1"], + ["hg_pr_sex_T6_intro_E2"], + ["hg_pr_sex_T6_E3"], + ["hg_pr_sex_T6_E4"] + ] + + ], + icons = [None], # If a tier doesn't need an icon replace with None + iconset = [["star_empty", "star_yellow"]] + ) + +default hg_requests_list = [ + hg_pr_flirt, + hg_pr_flirt_teacher, + hg_pr_grope, + hg_pr_flash, + hg_pr_kiss, + hg_pr_handjob, + hg_pr_blowjob, + hg_pr_sex + ] diff --git a/game/scripts/characters/hermione/shaming.rpy b/game/scripts/characters/hermione/shaming.rpy new file mode 100644 index 00000000..b3dd9765 --- /dev/null +++ b/game/scripts/characters/hermione/shaming.rpy @@ -0,0 +1,18 @@ +default hg_ps_get_panties = shaming_class( + tier = 2, + title = "Panty Thief", + start_label = "hg_ps_get_panties", + complete_label = "hg_ps_get_panties_complete" +) + +default hg_ps_cumslut = shaming_class( + tier = 4, + title = "Wear My Cum", + start_label = "hg_ps_cumslut", + complete_label = "hg_ps_cumslut_complete" +) + +default hg_ps_list = [ + hg_ps_get_panties, + hg_ps_cumslut, +] diff --git a/game/scripts/characters/hermione/summon.rpy b/game/scripts/characters/hermione/summon.rpy new file mode 100644 index 00000000..a2a317ed --- /dev/null +++ b/game/scripts/characters/hermione/summon.rpy @@ -0,0 +1,377 @@ + + +label summon_hermione: + #call play_music("hermione") + #call play_sound("door") + + $ active_girl = "hermione" + $ last_character = "hermione" + + $ hermione_busy = True + + call update_hermione + call update_her_tier + + # Clothes Events + call hermione_summon_setup + + label hermione_requests: + + # Reset + call reset_menu_position + her "" (xpos="base",ypos="base") + + menu: + + "-Talk-" (icon="interface/icons/small/talk.webp"): + if her_mood > 0: + her "I have nothing to say to you sir..." + jump hermione_requests + + call hermione_chitchat + jump hermione_talk + + "-Tutoring-" (icon="interface/icons/small/book.webp") if not game.daytime and her_tutoring < 15: #14 is last level. + if her_mood >=1 and her_mood < 3: + her "I'm sorry, maybe tomorrow..." + jump hermione_requests + elif her_mood >=3 and her_mood < 10: + her "I am not in the mood today..." + jump hermione_requests + elif her_mood >= 10 and her_mood < 20: + her "Absolutely not, [genie_name]." + her "I {i}might{/i} consider it once you've said sorry..." + jump hermione_requests + elif her_mood >=20: + her "After what you did, [genie_name]?" + her "I don't think so..." + jump hermione_requests + else: + jump hg_tutor_start + + "-Tutoring-" (icon="interface/icons/small/book.webp", style="disabled") if game.daytime and her_tutoring < 15: + call nar("> Tutoring is available during the night only.") + jump hermione_requests + + "-Sexual favours-" (icon="interface/icons/small/condom.webp") if hermione_favors: + if her_mood >=1 and her_mood < 3: + her "I'm sorry, [genie_name], Maybe some other time..." ("annoyed", "base", "base", "R") + jump hermione_requests + elif her_mood >= 3 and her_mood < 10: + her "I don't feel like it today..." ("open", "closed", "base", "mid") + her "Maybe some other time..." ("normal", "closed", "base", "mid") + her "" ("normal", "base", "base", "mid") + jump hermione_requests + elif her_mood >= 10 and her_mood < 20: + her "No thank you..." ("angry", "narrow", "base", "mid") + jump hermione_requests + elif her_mood >= 20 and her_mood < 30: + her "After what you did, [genie_name]?" ("angry", "narrow", "annoyed", "mid") + her "I don't think so..." ("disgust", "narrow", "annoyed", "mid") + jump hermione_requests + elif her_mood >= 30 and her_mood < 40: + her "You can't be serious!" ("angry", "narrow", "angry", "mid") + jump hermione_requests + elif her_mood >= 40: + her "Is this some twisted joke to you, sir?!" ("angry", "squint", "angry", "mid") + her "After what you did I don't feel like doing this ever again!" ("disgust", "base", "angry", "mid") + jump hermione_requests + else: + jump hermione_favor_menu + + "-Wardrobe-" (icon="interface/icons/small/wardrobe.webp") if hermione_wardrobe_unlocked: # Unlocks after first summoning her. + hide hermione_main with d1 + call wardrobe + jump hermione_requests + + "-Let's Duel-" (icon="interface/icons/small/cards.webp") if snape_second_win: + jump hermione_cardgame_menu + + "-Give Item-" (icon="interface/icons/small/gift.webp") if hermione_favors: + hide hermione_main with d1 + call gift_menu + jump hermione_requests + + "-Dismiss her-": + stop music fadeout 3.0 + + if game.daytime: + if her_mood >=3 and her_mood < 7: + her "..............................." + elif her_mood >=7: + her "*Humph*!..." + else: + her "Oh, alright. I will go to classes then." + else: + if her_mood >=3 and her_mood < 7: + her "..............................." + elif her_mood >=7: + her "*Tch*..." + else: + her "Oh, alright. I will go to bed then." + + call play_sound("door") + + jump end_hermione_event + + + +label update_her_tier: + if her_tier == 1 and her_whoring >= 3: + # Trigger: None + $ her_level_up = 1 + elif her_tier == 2 and her_whoring >= 9 and hg_jerkoff.trigger == True: + # Trigger: When you get caught jerking off. + $ her_level_up = 2 + elif her_tier == 3 and her_whoring >= 12 and hg_strip.trigger == True: + # Trigger: After she strips for you. + $ her_level_up = 3 + elif her_tier == 4 and her_whoring >= 18 and hg_kiss.trigger == True: + # Trigger: None + $ her_level_up = 4 + elif her_tier == 5 and her_whoring >= 21 and hg_blowjob.trigger == True: + # Trigger: First BJ + $ her_level_up = 5 + + return + + +label hermione_level_up(tier=None): + + call bld + if tier == 1: + show screen blktone + with d3 + ">Hermione's second {i}favour tier{/i} is now available." + ">You can move up {i}favour tiers{/i} by increasing her {i}whoring level{/i}, and by triggering {i}favour milestones{/i}." + ">Each tier unlocks a new set of favours, but favours of the previous tier will no longer be available." + hide screen blktone + with d3 + pause.5 + menu: + "Would you like to increase Hermione's {i}favour tier{/i} now?" + "-Yes, increase her tier-": + pass + "-No, stay on her current tier-": + return + + elif tier == 2: + gen "(I wonder if she's ready for some more advanced favours now...)" ("base", xpos="far_left", ypos="head") + elif tier == 3: + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "(Would she know what a handjob is...?)" ("base", xpos="far_left", ypos="head") + elif tier == 4: + gen "(I wonder if I can get her to suck me off today...)" ("base", xpos="far_left", ypos="head") + gen "(I'm dying to feel that mouth around my cock!)" ("angry", xpos="far_left", ypos="head") + elif tier == 5: + gen "(Yes, I think it's time...)" ("base", xpos="far_left", ypos="head") + gen "(I'm gonna put my \"P\" in her \"V\"!)" ("angry", xpos="far_left", ypos="head") + + $ her_tier = tier+1 + $ her_level_up = None + $ her_mood = 0 + + pause.5 + call nar(">Hermione has reached {i}favour tier{/i} "+str(her_tier)+"!") + + call update_her_tier + + return + +label hermione_favor_menu: + call update_her_favors + call update_her_requests + + if not is_in_lead(gryffindor): + + label silver_requests_root: + menu: + "-Level Up-" (icon="interface/icons/small/levelup.webp") if her_level_up != None: + call hermione_level_up(tier=her_level_up) + jump hermione_favor_menu + + "-Personal favours-" (icon="interface/icons/small/heart_red.webp"): + call tutorial("hearts") + + label .personal: + python: + menu_choices = [] + for i in hg_favor_list: + if i in []: # Not in the game yet. + menu_choices.append(gui.menu_item("-Not available-", "na", style="disabled")) + elif i.start_tier > her_tier: + menu_choices.append(gui.menu_item("-Not Ready-", "vague", style="disabled")) + else: + menu_choices.append(i.get_menu_item()) + + menu_choices.append(("-Never mind-", "nvm")) + result = renpy.display_menu(menu_choices) + + if result == "nvm": + jump silver_requests_root + elif result == "vague": + call favor_not_ready + jump .personal + elif result == "na": + call not_available + jump .personal + else: + $ renpy.jump(result) + + "-Public requests-" (icon="interface/icons/small/star_yellow.webp", style="disabled") if not game.daytime: + call nar(">Public requests are available during the day only.") + jump silver_requests_root + + "-Public requests-" (icon="interface/icons/small/star_yellow.webp") if game.daytime: + if her_reputation >= 16 and not public_whore_ending: + # Public whore ending choice + $ renpy.choice_for_skipping() + $ renpy.music.set_volume(0.5, 1.0) + nar "Attention!{w=1.0} If you continue tarnishing Hermione's reputation you will lock yourself towards certain game ending. (Public route)" + menu: + nar "Do you wish to continue?\n{size=-4}(You won't be asked again){/size}" + "Yes, I do.": + $ renpy.music.set_volume(1.0, 1.0) + $ public_whore_ending = True + "No, go back.": + $ renpy.music.set_volume(1.0, 1.0) + jump silver_requests_root + + label .public: + python: + menu_choices = [] + for i in hg_requests_list: + if i in []: # Not in the game yet. + menu_choices.append(gui.menu_item("-Not available-", "na", style="disabled")) + elif i.start_tier > her_tier: + menu_choices.append(gui.menu_item("-Not Ready-", "vague", style="disabled")) + else: + menu_choices.append(i.get_menu_item()) + + menu_choices.append(("-Never mind-", "nvm")) + result = renpy.display_menu(menu_choices) + + if result == "nvm": + jump silver_requests_root + elif result == "vague": + call favor_not_ready + jump .public + elif result == "na": + call not_available + jump .public + else: + $ renpy.jump(result) + + "-Public Shaming-" (icon="interface/icons/small/star_pink.webp", style="disabled") if not game.daytime: + call nar(">Public Shaming events are available during the day only.") + jump silver_requests_root + + "-Public Shaming-" (icon="interface/icons/small/star_pink.webp")if game.daytime: + label not_now_ps: + python: + menu_choices = [] + for i in hg_ps_list: + if i.tier > her_tier: + menu_choices.append(gui.menu_item("-Vague idea-", "vague", style="disabled")) + else: + menu_choices.append(i.get_menu_item()) + menu_choices.append(("-Never mind-", "nvm")) + result = renpy.display_menu(menu_choices) + + if result == "nvm": + jump silver_requests_root + elif result == "vague": + call favor_not_ready + jump not_now_ps + else: + $ renpy.jump(result) + + "-Never mind-": + jump hermione_requests + else: + if hermione_favors_convinced: + her "We're in the lead already..." ("base", "base", "base", "mid_soft", trans=d3) + if her_whoring >=20 and hermione_favors_convinced == 2: + her "But I'll do anything for you, [genie_name]..." ("smile", "happy", "base", "mid") + jump silver_requests_root + elif her_whoring >=18 and hermione_favors_convinced == 2: + her "I guess you do have a way with words,[genie_name]... I'll do it." ("soft", "wink", "base", "mid") + jump silver_requests_root + elif her_whoring >=16: + her "I have told you before, [genie_name], it was just a one time thing..." ("open", "happy", "base", "mid") + gen "What about tomorrow though?" ("base", xpos="far_left", ypos="head") + her "What about tomorrow?" ("base","squint", "base", "mid") + gen "I made a graph detailing the current daily average points Slytherin gain... doesn't look that great." ("grin", xpos="far_left", ypos="head") + gen "Just think about it." ("base", xpos="far_left", ypos="head") + jump hermione_favors_convinced_check + else: + her "The Gryffindor house is in the lead. I don't need to do this." ("base", "base", "base", "mid_soft", trans=d3) + if her_whoring >= 15: + menu: + "-Change her mind-": + gen "Are you sure it's not within your house best interests?" ("base", xpos="far_left", ypos="head") + her "What do you mean?" ("soft", "happy", "base", "mid") + gen "Think about the future..." ("grin", xpos="far_left", ypos="head") + label hermione_favors_convinced_check: + if her_whoring >=20: + gen "If you do it now it could secu--" ("base", xpos="far_left", ypos="head") + her "I'll do it!" ("angry", "happy", "base", "mid") + gen "Just like that?!" ("base", xpos="far_left", ypos="head") + her "Yes... just like that." ("base", "closed", "base", "mid") + gen "That's my girl!" ("grin", xpos="far_left", ypos="head") + $ hermione_favors_convinced = 2 + jump silver_requests_root + + gen "If you do it, you could secure the win for you household you know..." ("base", xpos="far_left", ypos="head") + + if her_whoring >=18: + her "You really know how to talk me through, [genie_name]." ("soft", "narrow", "worried", "down") + her "Okay I agree." ("open", "narrow", "base", "down") + $ hermione_favors_convinced = 2 + jump silver_requests_root + elif her_whoring >=16 and not hermione_favors_convinced == 1: + her "I guess you're right..." ("open", "happy", "base", "mid_soft") + her "I'll do it... but just this once okay?" ("grin", "happyCl", "base", "mid") + $ hermione_favors_convinced = 1 + jump silver_requests_root + else: + her "I could..." ("soft", "narrow", "base", "mid_soft") + her "But I don't want to." ("normal", "closed", "base", "mid") + jump hermione_requests + "-Forget it-": + pass + else: + if sna_friendship <= 10: + gen "What do you mean in the lead?" ("base", xpos="far_left", ypos="head") + gen "Explain yourself, [hermione_name]!" ("angry", xpos="far_left", ypos="head") + her "With the current points distribution, I am certain getting the house cup for Gryffindor will be just a formality." ("smile", "closed", "base", "mid") + her "Thank you, [genie_name], but I don't need any more points." ("smile", "base", "base", "mid") + + call tutorial("points") + + gen "(That little...)" ("angry", xpos="far_left", ypos="head") + gen "(Perhaps I should hangout with that Snape dude tonight, he might know what to do.)" ("base", xpos="far_left", ypos="head") + her "Do you need anything else, [genie_name]?" ("smile", "base", "base", "mid") + else: + gen "Right..." ("base", xpos="far_left", ypos="head") + + call tutorial("points") + + gen "(I guess another hangout with Snape is in order.)" ("base", xpos="far_left", ypos="head") + jump hermione_requests + + +label update_her_favors: + python: + for i in hg_favor_list: + i.tier = her_tier + + return + + +label update_her_requests: + python: + for i in hg_requests_list: + i.tier = her_tier + + return diff --git a/game/scripts/characters/hermione/talk.rpy b/game/scripts/characters/hermione/talk.rpy new file mode 100644 index 00000000..9176bc49 --- /dev/null +++ b/game/scripts/characters/hermione/talk.rpy @@ -0,0 +1,616 @@ +label hermione_talk: + menu: + "-Working-" (icon="interface/icons/small/gold.webp") if hermione_favors: + label working_menu: + menu: + "-Work as a maid-" if game.daytime and her_outfit_maid.unlocked: + jump job_1 + + "-Work as a maid-" (style="disabled") if game.daytime and not her_outfit_maid.unlocked: + gen "(I'll need an outfit for hermione if I want her to work.)" ("base", xpos="far_left", ypos="head") + jump working_menu + + "-Work as a maid-" (style="disabled") if not game.daytime: + "This job is only available during the day." + jump working_menu + + #"-Work as a cheerleader for Gryffindor-" if game.daytime and (hg_cheer_g_ITEM.unlocked or hg_cheer_g_sexy_ITEM.unlocked): + #jump job_3 + + #"-Work as a cheerleader for Gryffindor-" if game.daytime and not (hg_cheer_g_ITEM.unlocked or hg_cheer_g_sexy_ITEM.unlocked): + #gen "(I'll need an outfit for hermione if I want her to work.)" ("base", xpos="far_left", ypos="head") + #jump working_menu + + #"-Work as a cheerleader for Gryffindor-" (style="disabled") if not game.daytime: + #"This job is only available during the day." + #jump working_menu + + #"-Work as a cheerleader for Slytherin-" if game.daytime and (hg_cheer_s_ITEM.unlocked or hg_cheer_s_sexy_ITEM.unlocked): + #jump job_4 + + #"-Work as a cheerleader for Slytherin-" if game.daytime and not (hg_cheer_s_ITEM.unlocked or hg_cheer_s_sexy_ITEM.unlocked): + #gen "(I'll need a slytherin cheerleader outfit for hermione if I want her to work.)" ("base", xpos="far_left", ypos="head") + #jump working_menu + + #"-Work as a cheerleader for Slytherin-" (style="disabled") if not game.daytime: + #"This job is only available during the day." + #jump working_menu + + "-Hidden-" (style="disabled") if game.daytime and not cardgame_work and not her_outfit_poker.unlocked: + "You haven't unlocked this job opportunity yet." + jump working_menu + + "-Work by advertising the card game-" if game.daytime and cardgame_work and her_outfit_poker.unlocked: + jump job_5 + + "-Work by advertising the card game-" (style="disabled") if game.daytime and cardgame_work and not her_outfit_poker.unlocked: + gen "(I'll need an outfit for hermione if I want her to work.)" ("base", xpos="far_left", ypos="head") + gen "(Maybe the twins have something fitting for her in their stock.)" ("base", xpos="far_left", ypos="head") + jump working_menu + + "-Work by advertising the card game-" (style="disabled") if not game.daytime and cardgame_work: + "This job is only available during the day." + jump working_menu + + "-Never mind-": + jump hermione_talk + + ### Astoria ### + "-Ask her to help Tonks-" (icon="interface/icons/small/tonks.webp") if astoria_intro.E1_complete and not astoria_intro.E3_complete: + if astoria_intro.E2_hermione: + her "I'm still looking for that student, [genie_name]!" ("open", "closed", "base", "mid") + her "Trust in me, I will find that Slytherin scum!" ("angry", "base", "angry", "mid") + jump hermione_talk + + $ hermione_busy = True + $ astoria_intro.E2_hermione = True + $ ag_event_pause = 2 + jump astoria_intro_E2_hermione + + + ### Cho ### + "-Solve the matter with Cho-" (icon="interface/icons/small/cho.webp", style="disabled") if cho_intro.E2_complete and not ss_he.cho_E1: + # Before talking to Snape. + gen "(I should ask Snape what to do about that Cho girl first. Just to be safe.)" ("base", xpos="far_left", ypos="head") + gen "(Might as well have a drink with him...)" ("base", xpos="far_left", ypos="head") + jump hermione_talk + + "-Solve the matter with Cho-" (icon="interface/icons/small/cho.webp") if ss_he.cho_E1 and not cho_intro.E3_complete: + # After talking to Snape. + jump cho_intro_E3 + + "-Ask her to commentate the game-" (icon="interface/icons/small/quidditch.webp") if cho_tier == 1 and cho_quid.E3_complete and not cho_quid.E4_complete: + jump cho_quid_E4 + + "-Ask her to commentate the game-\n{size=-5}again...{/size}" (icon="interface/icons/small/quidditch.webp") if cho_tier == 2 and cho_quid.E6_complete and not cho_quid.E7_complete: + jump cho_quid_E7 + + # General. + "-Address me only as-": + menu: + "-Sir-": + $ genie_name = "Sir" + jump genie_change + "-Dumbledore-": + $ genie_name = "Dumbledore" + jump genie_change + "-Professor-": + $ genie_name = "Professor" + jump genie_change + "-Old man-": + $ genie_name = "Old man" + jump genie_change + "-Genie-": + if her_whoring >=5: + $ genie_name = "Genie" + jump genie_change + else: + jump genie_change_fail + "-My Lord-": + if her_whoring >=7: + $ genie_name = "My Lord" + jump genie_change + else: + jump genie_change_fail + "-Darling-": + if her_whoring >=10: + $ genie_name = "Darling" + jump genie_change + else: + jump genie_change_fail + "-Lord Voldemort-": + if her_whoring >=15: + $ genie_name = "Lord Voldemort" + jump genie_change + else: + jump genie_change_fail + "-Daddy-": + if her_whoring >=19: + $ genie_name = "Daddy" + $ achievements.unlock("daddy") + jump genie_change + else: + jump genie_change_fail + "-Master-": + if her_whoring >=20: + $ genie_name = "Master" + jump genie_change + else: + jump genie_change_fail + "-Custom Input-": + $ temp_name = renpy.input("(Please enter the name.)", genie_name, ALLOWED_CHARACTERS, length=14) + $ temp_name = temp_name.strip() + if temp_name == "": + jump hermione_talk + if her_whoring >=20: + $ genie_name = temp_name + jump genie_change + else: + jump genie_change_fail + "-Never mind-": + jump hermione_talk + + "-From now on I will refer to you as-": + menu: + "-Miss Granger-": + $ temp_name = "Miss Granger" + jump hermione_change + "-Hermione-": + $ temp_name = "Hermione" + jump hermione_change + "-Girl-": + $ temp_name = "Girl" + if her_whoring >=1: + jump hermione_change + else: + jump hermione_change_fail + "-Nerd-": + $ temp_name = "Nerd" + if her_whoring >=3: + jump hermione_change + else: + jump hermione_change_fail + "-Hottie-": + $ temp_name = "Hottie" + if her_whoring >=5: + jump hermione_change + else: + jump hermione_change_fail + "-Angel-": + $ temp_name = "Angel" + if her_whoring >=7: + jump hermione_change + else: + jump hermione_change_fail + "-Minx-": + $ temp_name = "Minx" + if her_whoring >=9: + jump hermione_change + else: + jump hermione_change_fail + "-Princess-": + $ temp_name = "Princess" + if her_whoring >=11: + jump hermione_change + else: + jump hermione_change_fail + "-Pet-": + $ temp_name = "Pet" + if her_whoring >=11: + jump hermione_change + else: + jump hermione_change_fail + "-Bitch-": + $ temp_name = "Bitch" + if her_whoring >=13: + jump hermione_change + else: + jump hermione_change_fail + "-Slut-": + $ temp_name = "Slut" + if her_whoring >=15: + jump hermione_change + else: + jump hermione_change_fail + "-Cumslut-": + $ temp_name = "Cumslut" + if her_whoring >= 17: + jump hermione_change + else: + jump hermione_change_fail + "-Slytherin Whore-": + $ temp_name = "Slytherin Whore" + if her_whoring >= 19: + jump hermione_change + else: + jump hermione_change_fail + "-Mudblood-": + $ temp_name = "Mudblood" + if her_whoring >= 21: + jump hermione_change + else: + jump hermione_change_fail + "-Custom Input-": + $ temp_name = renpy.input("(Please enter the name.)", hermione_name, ALLOWED_CHARACTERS, length=14) + $ temp_name = temp_name.strip() + if temp_name == "": + jump hermione_talk + if her_whoring >=21: + $ hermione_name = temp_name + jump hermione_change + else: + jump hermione_change_fail + "-Never mind-": + jump hermione_talk + + "-Give her the ball dress-" if ball_quest.E4_complete and ball_outfit_ITEM.owned > 0 and not ball_quest.gave_dress: + jump ball_quest_E5 + + "-Start the autumn ball-" if ball_quest.gave_dress and not ball_quest.started: + jump ball_ending_start + + "-Never mind-": + jump hermione_requests + + +label genie_change: + her "Okay, from now on I'll call you [genie_name]." ("base", "base", "base", "mid") + jump hermione_talk + +label genie_change_fail: + her "I'm not calling you that!" ("scream", "closed", "angry", "mid") + jump hermione_talk + +label hermione_change: + if temp_name == "Miss Granger": + if her_whoring <=0: + her "Sure, [genie_name]." ("base", "base", "base", "mid") + else: + her "You don't have to be so formal, [genie_name], you know?" ("base", "closed", "base", "mid") + her "" ("base", "base", "base", "mid") + elif temp_name == "Hermione": + her "Of course [genie_name]." ("base", "base", "base", "mid") + elif temp_name == "Girl": + if her_whoring >=1 and her_whoring < 3: + her "This girl thing again?" ("annoyed", "happy", "base", "mid") + her "*sigh*..." ("soft", "happy", "base", "R") + elif her_whoring >=3: + her "Fine... I don't mind." ("soft", "base", "base", "R") + elif temp_name == "Nerd": + if her_whoring >=3 and her_whoring < 5: + her "*sigh* I just enjoy books, that's all." ("annoyed", "narrow", "worried", "down") + gen "I'm sure you'll find other things to enjoy soon enough..." ("base", xpos="far_left", ypos="head") + her "Like what exactly?" ("normal", "narrow", "base", "mid_soft") + gen "Nothing to worry about, things will work out..." ("base", xpos="far_left", ypos="head") + gen "Nerd..." ("grin", xpos="far_left", ypos="head") + her "*tsk* ..." ("soft", "narrow", "base", "R_soft") + her "" ("normal", "narrow", "base", "R_soft") + elif her_whoring >= 5 and her_whoring < 19: + her "I can be a bit nerdy sometimes I suppose.." ("angry", "happyCl", "base", "mid", emote="sweat") + her "" ("base", "base", "base", "mid") + elif her_whoring >= 19: + her "I don't read as much as I used to anymore." ("grin", "narrow", "base", "R_soft", emote="sweat") + her "" ("base", "narrow", "base", "mid_soft") + elif temp_name == "Hottie": + if her_whoring >=5 and her_whoring < 7: + her "[genie_name]?!" ("angry", "wide", "angry", "mid", cheeks="blush") + gen "What? That's true, you're hot." ("base", xpos="far_left", ypos="head") + her "That's inappropriate." ("annoyed", "base", "worried", "R", cheeks="blush") + her "But I'll let it slide, I guess." + elif her_whoring >=7 and her_whoring < 19: + her "Thank you, [genie_name]." ("soft", "wink", "base", "mid") + her "" ("normal", "base", "base", "mid") + elif her_whoring >=19: + her "... Glad you think so." ("smile", "wink", "base", "mid", cheeks="blush") + her "" ("base","happy", "base", "mid", cheeks="blush") + elif temp_name == "Good Girl": + if her_whoring >=5 and her_whoring < 7: + her "Well, I do try my best, [genie_name]." ("base", "closed", "base", "mid") + her "" ("base", "base", "base", "mid") + elif her_whoring >=7 and her_whoring < 19: + her "I'm not sure if I'd qualify, but fine." ("annoyed", "wink", "base", "mid") + her "" ("normal", "base", "base", "mid") + elif her_whoring >=19: + her "I could act like a good girl if you really want me to..." ("smile", "wink", "base", "mid", cheeks="blush") + her "" ("base","happy", "base", "mid", cheeks="blush") + elif temp_name == "Angel": + if her_whoring >=7 and her_whoring < 9: + her "What's going on with these silly nicknames of yours all of a sudden?" ("normal", "squint", "angry", "mid") + gen "What do you mean by silly?" ("base", xpos="far_left", ypos="head") + her "Ugh, forget I said anything..." ("open", "narrow", "base", "down",cheeks="blush") + her "" ("normal", "base", "base", "R", cheeks="blush") + elif her_whoring >=9 and her_whoring < 19: + her "I like it..." ("soft", "narrow", "base", "R_soft",cheeks="blush") + her "" ("base", "narrow", "base", "R_soft",cheeks="blush") + elif her_whoring >= 19: + her "I'm surprised I didn't grow wings yet." ("base", "narrow", "worried", "mid_soft",cheeks="blush") + elif temp_name == "Little Girl": + if her_whoring >=7 and her_whoring < 9: + her "What's going on with these silly nicknames of yours all of a sudden?" ("normal", "squint", "angry", "mid") + gen "What do you mean by silly?" ("base", xpos="far_left", ypos="head") + her "It makes it sound as if I'm your..." ("soft", "base", "worried", "R") + her "Ugh, forget I said anything..." ("open", "narrow", "base", "down",cheeks="blush") + her "" ("normal", "base", "base", "R", cheeks="blush") + elif her_whoring >=9 and her_whoring < 19: + her "Bit of an odd request but..." ("normal", "narrow", "base", "down") + her "I like it..." ("soft", "narrow", "base", "R_soft",cheeks="blush") + her "" ("base", "narrow", "base", "R_soft",cheeks="blush") + elif her_whoring >= 19: + her "Yes, [genie_name]." ("base", "narrow", "worried", "mid_soft",cheeks="blush") + elif temp_name == "Bad Girl": + if her_whoring >=9 and her_whoring < 11: + her "I guess I am a bit." ("soft", "narrow", "worried", "down") + her "I did fail that test after all..." ("disgust", "narrow", "base", "down") + her "" ("normal", "narrow", "worried", "mid_soft") + her "" ("normal", "base", "base", "mid") + elif her_whoring >=11 and her_whoring < 17: + her "I may be a little bit naughty at times." ("base", "happy", "base", "R",cheeks="blush") + elif her_whoring >=17: + her "I may be a little bit naughty at times." ("base", "happy", "base", "R",cheeks="blush") + her "" ("base", "base", "base", "mid", cheeks="blush") + elif temp_name == "Minx": + if her_whoring >=9 and her_whoring < 11: + her "I guess I am a bit." ("soft", "narrow", "worried", "down") + her "" ("normal", "narrow", "worried", "mid_soft") + elif her_whoring >=11 and her_whoring < 17: + her "I may be a little bit naughty at times." ("base", "happy", "base", "R",cheeks="blush") + elif her_whoring >=17: + her "I may be a little bit naughty at times." ("base", "happy", "base", "R",cheeks="blush") + her "" ("base", "base", "base", "mid", cheeks="blush") + elif temp_name == "Princess": + if her_whoring >= 11 and her_whoring < 13: + her "That would make you my prince wouldn't it?" ("open", "base", "base", "R",cheeks="blush") + her "" ("base", "base", "base", "mid", cheeks="blush") + elif her_whoring >= 13: + her "Yes... My prince." ("smile","happy", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + her "I-I mean, [genie_name]." ("smile", "happyCl", "base", "mid", emote="sweat") + her "" ("base", "base", "base", "mid") + elif temp_name == "Pet": + if her_whoring >= 11 and her_whoring < 13: + her "You want to call me....{w=0.5} a pet?" ("normal", "squint", "angry", "mid") + gen "Yes." ("base", xpos="far_left", ypos="head") + her ".... {w=0.5}.... {w=0.5}.... {w=0.5}...." ("normal", "happy", "base", "mid") + her "" ("normal", "squint", "base", "mid") + gen ".... {w=0.5}.... {w=0.5}...." ("base", xpos="far_left", ypos="head") + her "May I at least know why?" ("open", "squint", "base", "mid") + gen "No." ("base", xpos="far_left", ypos="head") + her "...." ("annoyed", "base", "worried", "mid") + elif her_whoring >= 13: + her "*Meow*" ("smile","happyCl", "base", "mid") + her "" ("smile","happy", "base", "mid") + gen "Don't do that..." ("base", xpos="far_left", ypos="head") + her "Such a party pooper." ("annoyed","happyCl", "base", "mid") + her "" ("base", "base", "base", "mid") + elif temp_name == "Bitch": + if her_whoring >=13 and her_whoring < 15: + her "Isn't this a bit inappropriate [genie_name]?" ("mad", "narrow", "worried", "down") + gen "And doing favours for house points isn't?" ("base", xpos="far_left", ypos="head") + her "Fine..." ("base", "narrow", "base", "down", cheeks="blush") + elif her_whoring >= 15 and her_whoring < 17: + her "..." ("normal", "narrow", "worried", "down", cheeks="blush") + gen "Any objections?" ("base", xpos="far_left", ypos="head") + her "..." ("soft", "base", "worried", "R",cheeks="blush") + gen "Okay then..." ("grin", xpos="far_left", ypos="head") + elif her_whoring >= 17: + her "Alright." ("base", "happyCl", "base", "mid",cheeks="blush") + her "" ("base","happy", "base", "mid", cheeks="blush") + elif temp_name == "Slut": + if her_whoring >=15 and her_whoring < 17: + her "[genie_name]?!" ("shock", "wide", "worried", "stare") + her "You can't just call someone that!" ("mad", "wide", "base", "stare") + gen "It'll just be between us..." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "squint", "base", "mid") + gen "Nothing to add?" ("base", xpos="far_left", ypos="head") + her "" ("clench", "closed", "base", "mid", emote="angry") + gen "So you'll let me call you that or not?" ("base", xpos="far_left", ypos="head") + her "{size=+5}FINE!{/size}" ("clench", "closed", "angry", "mid", emote="angry") + gen "..." ("base", xpos="far_left", ypos="head") + her "" ("normal", "narrow", "angry", "R") + elif her_whoring >= 17: + her "I guess if you have to call me that sure..." ("base", "narrow", "base", "down",cheeks="blush") + elif her_whoring >= 19: + her "I don't mind..." ("smile", "happyCl", "base", "mid",cheeks="blush") + elif temp_name == "Cumslut": + if her_whoring >= 17 and her_whoring < 19: + her "A cumslut?!" ("open", "wide", "worried", "stare") + gen "Something wrong?" ("base", xpos="far_left", ypos="head") + her "You have to even ask?" ("soft", "narrow", "worried", "down", cheeks="blush") + her "This is so degrading..." ("normal", "narrow", "base", "down",cheeks="blush") + her "(But I kinda am a slut begging for cum aren't I...)" ("base", "happyCl", "base", "mid",cheeks="blush") + elif her_whoring >= 19: + her "..." ("soft", "narrow", "base", "up") + her "(When did I start enjoying it so much...)" ("open", "narrow", "base", "up",cheeks="blush") + her "(That taste, the texture...)" ("open", "narrow", "annoyed", "up",cheeks="blush") + her "(So warm, sticky, and--)" ("silly", "narrow", "base", "up",cheeks="blush") + gen "Are you okay there, [temp_name]?" ("base", xpos="far_left", ypos="head") + her "Wha--" ("mad", "wide", "base", "stare") + her "Of course I am!" ("smile", "base", "base", "R",cheeks="blush") + elif temp_name == "Slytherin Whore": + if her_whoring >=19 and her_whoring < 21: + her "Do you really have to call me that, [genie_name]?" ("disgust", "base", "worried", "mid") + her "Referring to me as a bitch or a slut for your own amusement is one thing..." ("mad", "narrow", "worried", "down",cheeks="blush") + her "You're aware of how much I loathe Slytherin." ("open", "narrow", "worried", "mid_soft") + her "And I'm definitely not a whore..." ("soft", "closed", "base", "mid") + her "I refuse!" + menu: + "-Say it's fine-": + gen "Fine, I won't call you that..." ("base", xpos="far_left", ypos="head") + her "You won't?" ("open", "base", "base", "mid") + her "" ("soft", "base", "base", "mid") + gen "Of course..." ("base", xpos="far_left", ypos="head") + her "I am glad we're on the same page on this one, [genie_name]." ("open", "closed", "base", "mid") + her "" ("base", "closed", "base", "mid") + gen "In fact, from this point forward you don't have to call me [genie_name] or exchange any favours..." ("base", xpos="far_left", ypos="head") + her "" ("soft", "base", "base", "mid", emote="confused") + gen "Let's just void this whole... deal of yours shall we." ("base", xpos="far_left", ypos="head") + her "B-but, [genie_name]?!" ("mad", "wide", "base", "mid", emote="shocked") + her "" ("mad", "wide", "base", "mid") + gen "I must apologise {b}Miss Granger{/b}, I thought we had come to some kind of agreeable arrangement by now..." ("base", xpos="far_left", ypos="head") + her "But I--" ("mad", "wide", "worried", "stare") + gen "I should have known better to believe that this sort of thing would work out..." ("base", xpos="far_left", ypos="head") + her "Maybe I coul--" ("clench","happyCl", "worried", "stare") + gen "I thought we both had what we wanted..." ("base", xpos="far_left", ypos="head") + her "Liste--" ("soft", "narrow", "worried", "down") + her "" ("normal", "closed", "angry", "mid") + gen "Might as well hand in my resignation with the ministry and--" ("base", xpos="far_left", ypos="head") + with hpunch + her "{size=+10}I AM A SLYTHERIN WHORE!!!{/size}" ("scream", "closed", "angry", "mid",cheeks="blush") + her "" ("normal", "closed", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + her "Now please, [genie_name]... Let's just forget this conversation ever happened." ("disgust", "base", "worried", "mid") + gen "Are you sure that's what you want, [temp_name]?" ("base", xpos="far_left", ypos="head") + her "... Yes." ("disgust", "narrow", "worried", "down", emote="sweat") + gen "(This girl really is beyond redemption...)" ("base", xpos="far_left", ypos="head") + her "" ("base", "narrow", "worried", "down") + "-Threaten her-": + gen "Either accept my offer or Gryffindor lose five hundred points..." ("angry", xpos="far_left", ypos="head") + with hpunch + her "FIVE HUNDRED?!" ("shock", "wide", "base", "stare") + her "[genie_name]... This is blackmailing!" ("scream", "closed", "angry", "mid") + her "" ("mad", "closed", "angry", "mid") + gen "It is?" ("base", xpos="far_left", ypos="head") + her "What else would it be?" ("mad", "base", "angry", "mid",cheeks="blush") + gen "Negotiations..." ("grin", xpos="far_left", ypos="head") + her "You..." ("clench", "closed", "angry", "mid",cheeks="blush") + gen "That's not an answer..." ("base", xpos="far_left", ypos="head") + her "{size=-10}Okay..{/size}" ("soft", "narrow", "angry", "R",cheeks="blush") + gen "What was that? I didn't hear you." ("base", xpos="far_left", ypos="head") + her "I said yes, you can call me a Slytherin whore... or whatever." ("normal", "narrow", "annoyed", "mid", cheeks="blush") + her "Happy now?!" ("open", "closed", "angry", "mid", cheeks="blush") + gen "Very." ("grin", xpos="far_left", ypos="head") + her "{size=-6}You are the worst.{/size}" ("normal", "narrow", "base", "R_soft", cheeks="blush") + $ her_mood += 15 + elif her_whoring >= 21: + her "Please, [genie_name], couldn't you call me something else instead?" ("open", "base", "worried", "mid") + gen "But where's fun in that?" ("base", xpos="far_left", ypos="head") + her "Why do I even bother... *sigh*" ("soft", "narrow", "base", "R_soft",cheeks="blush") + elif temp_name == "Mudblood": + if her_whoring >= 21: + her "A{w=0.5}...{w=0.5} {size=+6}{b}{cps=20}mud{w=0.5}blood{/cps}{/b}?!{/size}" ("shock", "wide", "base", "stare") + her "Did I hear you right, [genie_name]?!" ("normal", "wide", "base", "mid") + menu: + "-Confirm-": + pass + "-!!!{b}ABORT ABORT ABORT{/b}!!!-": + gen "What? Of course not!" ("angry", xpos="far_left", ypos="head") + gen "I said.." ("base", xpos="far_left", ypos="head") + gen "(I have to think fast)" ("angry", xpos="far_left", ypos="head") + menu: + "-Mass flood-": + gen "I said mass flood!" ("angry", xpos="far_left", ypos="head") + her "Mass flood?" ("soft", "base", "base", "mid") + gen "Are you deaf or something?" ("base", xpos="far_left", ypos="head") + if game.weather == "rain": + her "I was pretty sure you said--" ("open", "base", "base", "mid") + her "" ("normal", "base", "base", "R") + gen "Look outside the window, it's raining is it not?" ("base", xpos="far_left", ypos="head") + her "I{w=0.5}...{w=0.5} Yes, you are right [genie_name]." ("normal", "closed", "base", "mid") + gen "Of course I am." ("base", xpos="far_left", ypos="head") + her "So what did you want to talk about?" ("base", "base", "base", "mid") + else: + her "[genie_name], but it's not raining.." ("normal", "closed", "base", "mid") + her "" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Last time I had my dick in you it felt like a mass flood." ("grin", xpos="far_left", ypos="head") + her "[genie_name]..." ("disgust", "closed", "base", "mid", cheeks="blush") + gen "What? It's true, I swear!" ("grin", xpos="far_left", ypos="head") + her "..." ("soft", "narrow", "worried", "down", cheeks="blush") + "-Mad stud-": + gen "I said mad stud!" ("angry", xpos="far_left", ypos="head") + her "Mad stud?" ("soft", "base", "base", "mid") + gen "My dick, your ass, bud." ("grin", xpos="far_left", ypos="head") + her "really..." ("disgust", "narrow", "base", "mid_soft", cheeks="blush") + her "You can be so childish sometimes, [genie_name]..." ("annoyed", "narrow", "base", "R_soft", cheeks="blush") + #"-Leaf bud-": + # jump hermione_talk + jump hermione_talk + her "Why would you even suggest calling me such a thing.." ("scream", "squint", "angry", "mid") + her "It's like the most offensive thing you could call someone like..." ("shock", "squint", "angry", "mid", tears="soft") + her "like..." ("open", "happyCl", "worried", "mid", tears="soft_blink") + her "Someone like..." ("open", "narrow", "worried", "down", tears="mascara_crying") + her "me..." ("disgust", "narrow", "worried", "down", tears="mascara_soft") + her "" ("disgust", "happyCl", "worried", "mid", tears="mascara") + menu: + "-Try to calm her down-": + her "" ("disgust", "narrow", "worried", "mid_soft", tears="mascara") + gen "Now, now, there's no need to cry." ("base", xpos="far_left", ypos="head") + gen "Do you know why I call you these things miss Granger?" ("base", xpos="far_left", ypos="head") + her "... no?" ("disgust", "narrow", "worried", "mid_soft", tears="mascara") + gen "It's so that you'll come to know that words are just words and they only hurt if you let them." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "worried", "mid_soft", tears="mascara") + gen "Once you truly understand that nothing will hold you back." ("base", xpos="far_left", ypos="head") + gen "And you'll be at your utmost potential." ("grin", xpos="far_left", ypos="head") + her "You really think so?" ("open", "narrow", "worried", "mid_soft", tears="mascara") + her "" ("normal", "narrow", "worried", "mid_soft", tears="mascara") + gen "Yes, in fact I do." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("normal", "closed", "base", "mid", tears="mascara") + her "I can do it, I know I can." ("base", "narrow", "worried", "mid_soft", tears="mascara") + $ her_mood = 0 + "-Tell her she deserves it-": + gen "You deserve to be called a slut, a whore and a mudblood... just look at you." ("angry", xpos="far_left", ypos="head") + her "..." ("scream", "happyCl", "worried", "mid", tears="mascara_soft_blink") + her "" ("disgust", "happyCl", "worried", "mid", tears="mascara_soft") + gen "You walk into my office and sell your body for the sole reason that it will make Gryffindor happy to win the house cup." ("angry", xpos="far_left", ypos="head") + her "..." ("open", "happyCl", "worried", "mid", tears="mascara_soft_blink") + her "" ("disgust", "happyCl", "worried", "mid", tears="mascara_soft") + gen "Bending over onto my desk and let yourself be taken like a some common harlot..." ("angry", xpos="far_left", ypos="head") + her "I..." ("disgust", "narrow", "worried", "mid_soft", tears="mascara_soft") + gen "Letting your headmaster thrust himself upon you and taking my load like your life depended on it..." ("angry", xpos="far_left", ypos="head") + her "..." ("normal", "happyCl", "worried", "mid", tears="mascara_soft") + her "" ("normal", "narrow", "worried", "mid_soft", tears="mascara") + gen "I bet you don't even care about the points anymore..." ("base", xpos="far_left", ypos="head") + her "Well..." ("normal", "narrow", "worried", "down", tears="mascara") + her "" ("normal", "narrow", "annoyed", "up", tears="mascara") + gen "You are nothing more than a whore..." ("base", xpos="far_left", ypos="head") + her "" ("base", "narrow", "annoyed", "up", tears="mascara") + gen "{size=+4}{b}MY{/b}{/size} whore!" ("grin", xpos="far_left", ypos="head") + her "" ("base", "narrow", "base", "up", tears="mascara") + gen "And I {b}will{/b} call you however I want!" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name], I understand." ("silly", "narrow", "base", "up", tears="mascara") + her "I am your toy{w=0.6}, your fuckslut{w=0.6}, your cocksleeve, your--" ("grin", "narrow", "base", "dead", tears="mascara") + gen "Yes, that you are but it's enough..." ("base", xpos="far_left", ypos="head") + her "I fully belong to you... [genie_name]." ("silly", "narrow", "base", "dead", tears="mascara") + her "" ("grin", "narrow", "base", "dead", tears="mascara") + $ her_mood = 0 + else: #Custom/fallback + her "Bit odd but sure, you can call me that..." ("soft", "squint", "base", "mid") + + $ hermione_name = temp_name + jump hermione_talk + +label hermione_change_fail: + if temp_name == "Girl": + her "I would prefer if we kept using our formal names and titles, [genie_name]." ("open", "closed", "base", "mid") + her "" ("normal", "base", "base", "mid") + elif temp_name == "Nerd": + her "I would prefer if you didn't, [genie_name]." ("open", "closed", "angry", "mid") + her "{size=-4}And I'm not a nerd...{/size}" ("annoyed", "base", "worried", "mid") + if her_whoring >= 1: + her "(I think...)" ("annoyed", "base", "worried", "R") + elif temp_name == "Good Girl": + her "I'm not letting you call me that, [genie_name]!" ("open", "closed", "angry", "mid") + if her_whoring >= 3: + her "(Although it's kinda cute he said that...)" ("base", "base", "base", "R") + elif temp_name == "Little Girl": + her "I won't let you call me that, [genie_name]!" ("open", "closed", "angry", "mid") + if her_whoring >= 5: + her "(I hope they'd grow out more...)" ("disgust", "narrow", "worried", "down") + her "*sigh*" ("annoyed", "closed", "base", "mid") + her "" ("normal", "base", "base", "R") + elif temp_name == "Bad Girl": + her "I am not a [temp_name]!" ("open", "base", "angry", "mid") + if her_whoring >= 7: + her "(Or am I...?)" ("disgust", "base", "base", "R") + her "" ("normal", "base", "base", "R") + elif temp_name == "Princess": + her "This is inappropriate, [genie_name]!" ("open", "base", "angry", "mid") + if her_whoring >= 9: + her "(It sounds nice though...)" ("base", "base", "base", "R") + elif temp_name == "Pet": + her "Are you joking, [genie_name]?" ("open", "base", "worried", "mid") + if her_whoring >= 11: + her "(Why would he even suggest that?)" ("annoyed", "base", "base", "R") + else: + her "I won't let you call me that!" ("shock", "closed", "angry", "mid") + her "" ("normal", "base", "angry", "mid") + jump hermione_talk diff --git a/game/scripts/characters/hermione/vars.rpy b/game/scripts/characters/hermione/vars.rpy new file mode 100644 index 00000000..8ebc1fad --- /dev/null +++ b/game/scripts/characters/hermione/vars.rpy @@ -0,0 +1,51 @@ + +# Stats +default her_tier = 1 +default her_whoring = 0 +default her_reputation = 0 +default her_mood = 0 +default her_tutoring = 1 + +# Flags +default hermione_busy = False +default hermione_unlocked = False +default hermione_favors = False +default hermione_tutoring = False +default gave_hermione_gift = False +default hermione_wardrobe_unlocked = False +default her_panties_soaked = False +default forest_BJ_progress = 1 +default hermione_favors_convinced = 0 +default hermione_outfits_schedule = True +default her_level_up = None +default jerked_off_during_hermione_intro = False +default current_job = None +default tutoring_offer_made = False # If you offered her to tutor her (In hermione_intro_E4). Affects conversation in the next event. +default her_shop_help = False +default her_shop_help_first = True +default tentacle_sample = False # Quest "item" flag. +default tentacle_scroll_examined = False + +# Buttplug Events +default buttplug_magic_known = False +default buttplug_2_worn = False +default buttplug_3_worn = False +default buttplug_1_question = False +default buttplug_2_question = False +default buttplug_3_question = False + +# Names +default genie_name = "Sir" +default hermione_name = "Miss Granger" + +# Stats +default her_jerk_off_counter = 0 + +# TODO: Replace with an event tracker. +default hg_kiss = counter_class() +default hg_jerkoff = counter_class() +default hg_strip = counter_class() +default hg_masturbated = counter_class() +default hg_blowjob = counter_class() +default hg_sex = counter_class() +default hg_anal = counter_class() diff --git a/game/scripts/characters/hermione/wardrobe.rpy b/game/scripts/characters/hermione/wardrobe.rpy new file mode 100644 index 00000000..852aab55 --- /dev/null +++ b/game/scripts/characters/hermione/wardrobe.rpy @@ -0,0 +1,559 @@ +############### +## Character ## +############### + +default hermione = Doll(name="hermione", + clothes={"headgear": [None, 15, True], + "hair": [None, 4, True], + "glasses": [None, 12, True], + "earrings": [None, 14, True], + "neckwear": [None, 16, True], + "robe": [None, 22, True], + "gloves": [None, 14, True], + "top": [None, 15, True], + "bra": [None, 9, True], + "bottom": [None, 8, True], + "garterbelt": [None, 7, True], + "panties": [None, 6, True], + "stockings": [None, 5, True], + "buttplug": [None, -1, True], + "pubes": [None, 3, True], + "tattoo0": [None, 1, True], + "tattoo1": [None, 1, True], + "tattoo2": [None, 1, True], + "tattoo3": [None, 1, True], + "tattoo4": [None, 1, True], + "piercing0": [None, 2, True], + "piercing1": [None, 2, True], + "piercing2": [None, 2, True], + "piercing3": [None, 2, True], + "piercing4": [None, 2, True], + "accessory0": [None, 12, True], + "accessory1": [None, 12, True], + "accessory2": [None, 12, True], + "accessory3": [None, 12, True], + "accessory4": [None, 12, True], + "makeup0": [None, 3, True], + "makeup1": [None, 3, True], + "makeup2": [None, 3, True], + "makeup3": [None, 3, True], + "makeup4": [None, 3, True]}, + face={"tears": [None, 12, True], + "cheeks": [None, 7, True], + "eyebrows": ["base", 11, True], + "eyes": ["base", 8, True], + "pupils": ["mid", 9, True], + "mouth": ["base", 13, True]}, + body={"armleft": ["down", 3], + "armright":["down", -1], + "base": ["front", 0], + "breasts": ["normal", 2], + "backside": [None, 1]} + ) + +############### +## Hair ## +############### + +default her_hair_base = DollCloth("hermione", ("head", "hair"), "hair", "base", [[152, 89, 48, 255], [195, 137, 89, 255], [230, 141, 32, 255]], unlocked=True) + +################ +## Schoolgirl ## +################ + +default her_top_school1 = DollCloth("hermione", ("upper body", "shirts"), "top", "top_school_1", [[183, 183, 184, 255], [109, 105, 121, 255], [167, 77, 42, 255], [237, 179, 14, 255]], unlocked=True) +default her_top_school2 = DollCloth("hermione", ("upper body", "shirts"), "top", "top_school_2", [[183, 183, 184, 255], [109, 105, 121, 255], [167, 77, 42, 255], [237, 179, 14, 255]], unlocked=True) +default her_top_school3 = DollCloth("hermione", ("upper body", "shirts"), "top", "top_school_3", [[183, 183, 184, 255], [167, 77, 42, 255], [237, 179, 14, 255]], unlocked=True) +default her_top_school4 = DollCloth("hermione", ("upper body", "shirts"), "top", "top_school_4", [[183, 183, 184, 255], [167, 77, 42, 255], [237, 179, 14, 255]], unlocked=True, level=4) +default her_top_school5 = DollCloth("hermione", ("upper body", "shirts"), "top", "top_school_5", [[183, 183, 184, 255], [167, 77, 42, 255], [237, 179, 14, 255]], unlocked=True, level=10) +default her_top_school6 = DollCloth("hermione", ("upper body", "shirts"), "top", "top_school_6", [[109, 105, 121, 255], [167, 77, 42, 255], [237, 179, 14, 255]], unlocked=True, level=10) +default her_top_school7 = DollCloth("hermione", ("upper body", "shirts"), "top", "top_school_7", [[183, 183, 184, 255], [167, 77, 42, 255], [237, 179, 14, 255]], unlocked=True, level=13) +default her_bottom_school1 = DollCloth("hermione", ("lower body", "skirts"), "bottom", "school_skirt_1", [[103, 90, 108, 255], [232, 177, 13, 255]], unlocked=True) +default her_bottom_school2 = DollCloth("hermione", ("lower body", "skirts"), "bottom", "school_skirt_2", [[103, 90, 108, 255], [232, 177, 13, 255]], unlocked=True, level=4) +default her_bottom_school3 = DollCloth("hermione", ("lower body", "skirts"), "bottom", "school_skirt_3", [[103, 90, 108, 255], [232, 177, 13, 255]], unlocked=True, level=10) +default her_bottom_school4 = DollCloth("hermione", ("lower body", "skirts"), "bottom", "school_skirt_4", [[103, 90, 108, 255], [232, 177, 13, 255]], unlocked=True, level=19) +default her_stockings_base1 = DollCloth("hermione", ("legwear", "socks"), "stockings", "stockings_1", [[219, 165, 13, 255], [146, 63, 30, 255]], unlocked=True) +default her_panties_base1 = DollCloth("hermione", ("lower undergarment", "panties"), "panties", "basic_panties_1", [[232, 232, 232, 255], [202, 60, 1, 255]], unlocked=True) +default her_bra_base1 = DollCloth("hermione", ("upper undergarment", "bras"), "bra", "basic_bra_1", [[232, 232, 232, 255], [202, 60, 1, 255]], unlocked=True) +default her_robe_school_1 = DollCloth("hermione", ("upper body", "robes"), "robe", "robe_school_1", [[96, 96, 96, 255], [206, 206, 209, 255], [167, 77, 42, 255]], unlocked=True, level=0) +default her_robe_school_2 = DollCloth("hermione", ("upper body", "robes"), "robe", "robe_school_2", [[96, 96, 96, 255], [206, 206, 209, 255], [167, 77, 42, 255]], unlocked=True, level=4) +default her_robe_school_3 = DollCloth("hermione", ("upper body", "robes"), "robe", "robe_school_3", [[96, 96, 96, 255], [206, 206, 209, 255], [167, 77, 42, 255]], unlocked=True, level=10) +default her_robe_school_4 = DollCloth("hermione", ("upper body", "robes"), "robe", "robe_school_4", [[96, 96, 96, 255], [206, 206, 209, 255], [167, 77, 42, 255]], unlocked=True, level=13) + +default her_accessory_house_emblem = DollCloth("hermione", ("misc", "accessory"), "accessory0", "house_emblem", [[167, 77, 42, 255], [237, 179, 14, 255]], zorder=16, unlocked=True) +default her_accessory4_reading_glasses = DollCloth("hermione", ("head", "glasses"), "glasses", "reading_glasses", [[240, 240, 241, 255]], unlocked=True) +default her_accessory4_vintage_glasses = DollCloth("hermione", ("head", "glasses"), "glasses", "vintage_glasses", [[255, 255, 255, 50], [36, 36, 36, 255], [116, 116, 116, 255]], unlocked=True, zorder=3) + +default her_outfit_default = DollOutfit([her_hair_base, her_top_school1, her_bottom_school1, her_panties_base1, her_bra_base1, her_stockings_base1], unlocked=True) +default her_outfit_default_no_vest = DollOutfit([her_hair_base, her_top_school3, her_bottom_school1, her_panties_base1, her_bra_base1, her_stockings_base1], hidden=True) +default her_outfit_default_no_tie_open_shirt = DollOutfit([her_hair_base, her_top_school5, her_bottom_school1, her_panties_base1, her_bra_base1, her_stockings_base1], hidden=True) +default her_outfit_last = DollOutfit([her_hair_base], hidden=True) + +######################## +## Rave Bikini Outfit ## +######################## +default her_panties_bikini1 = DollCloth("hermione", ("lower undergarment", "bikini panties"), "panties", "bikini_panties_1", [[138, 0, 0, 255], [252, 135, 0, 255]], level=18) +default her_bra_bikini1 = DollCloth("hermione", ("upper undergarment", "bikini bras"), "bra", "bikini_bra_1", [[138, 0, 0, 255], [252, 135, 0, 255]], level=18) + +default her_outfit_bikini1 = DollOutfit([her_hair_base, her_panties_bikini1, her_bra_bikini1], price=350, name="Rave Bikini Set", desc="A Bunch of straps for a bunch of gold!") + +########################### +## Leather Bikini Outfit ## +########################### + +default her_panties_bikini2 = DollCloth("hermione", ("lower undergarment", "bikini panties"), "panties", "bikini_panties_2", [[55, 55, 55, 255], [197, 142, 35, 255]], level=16) +default her_bra_bikini2 = DollCloth("hermione", ("upper undergarment", "bikini bras"), "bra", "bikini_bra_2", [[55, 55, 55, 255], [197, 142, 35, 255]], level=16) + +default her_outfit_bikini2 = DollOutfit([her_hair_base, her_panties_bikini2, her_bra_bikini2], price=350, name="Leathered Bikini Set", desc="Emits a slight squeaking sound when rubbed.") + +######################### +## Sling Bikini Outfit ## +######################### +default her_panties_bikini3 = DollCloth("hermione", ("lower undergarment", "bikini panties"), "panties", "sling_panties", [[48, 69, 164, 255], [212, 164, 32, 255]], level=17) +default her_bra_bikini3 = DollCloth("hermione", ("upper undergarment", "bikini bras"), "bra", "sling_bra", [[48, 69, 164, 255], [212, 164, 32, 255]], level=17) + +default her_outfit_bikini3 = DollOutfit([her_hair_base, her_panties_bikini3, her_bra_bikini3], price=350, name="Sling Bikini Set", desc="Slingshot your dignity with one simple trick.") + +################# +## Maid Outfit ## +################# + +default her_top_maid1 = DollCloth("hermione", ("upper body", "dresses"), "top", "maid_dress_1", [[40, 51, 61, 255], [236, 243, 244, 255], [53, 63, 84, 255]], level=4) +default her_stockings_maid1 = DollCloth("hermione", ("legwear", "socks"), "stockings", "maid_stockings_1", [[53, 33, 30, 255]], level=4) +default her_hat_maid1 = DollCloth("hermione", ("head", "headgear"), "headgear", "maid_hat_1", [[236, 243, 244, 255]], level=4) +default her_neckwear_maid1 = DollCloth("hermione", ("head", "neckwear"), "neckwear", "maid_choker_1", [[40, 51, 61, 255], [236, 243, 244, 255]], level=4) +default her_neckwear_maid2 = DollCloth("hermione", ("head", "neckwear"), "neckwear", "maid_choker_2", [[236, 243, 244, 255]], level=4) +default her_gloves_maid1 = DollCloth("hermione", ("upper body", "gloves"), "gloves", "maid_gloves_1", [[40, 51, 61, 255], [236, 243, 244, 255], [53, 63, 84, 255]], level=4) + +default her_outfit_maid = DollOutfit([her_hair_base, her_top_maid1, her_stockings_maid1, her_hat_maid1, her_neckwear_maid1, her_gloves_maid1, her_panties_base1, her_bra_base1], addons=[her_neckwear_maid2], price=450, name="French Maid Costume", desc="A classic Maid Outfit for a classy Witch.") + +################## +## Poker Outfit ## +################## + +default her_hat_poker1 = DollCloth("hermione", ("head", "headgear"), "headgear", "poker_hat_1", [[26, 26, 35, 255], [232, 232, 232, 255], [153, 22, 10, 255]], level=4) +default her_hat_poker2 = DollCloth("hermione", ("head", "headgear"), "headgear", "poker_hat_2", [[26, 26, 35, 255], [232, 232, 232, 255], [153, 22, 10, 255]], level=4) +default her_neckwear_poker1 = DollCloth("hermione", ("head", "neckwear"), "neckwear", "poker_bowtie_1", [[232, 232, 232, 255], [153, 22, 10, 255], [255, 179, 3, 255]], level=4) +default her_stockings_poker1 = DollCloth("hermione", ("legwear", "stockings"), "stockings", "poker_stockings_1", [[26, 26, 35, 255], [153, 22, 10, 255]], level=13) +default her_stockings_poker2 = DollCloth("hermione", ("legwear", "stockings"), "stockings", "poker_stockings_2", [[26, 26, 35, 255], [153, 22, 10, 255]], level=13) +default her_panties_poker1 = DollCloth("hermione", ("lower undergarment", "panties"), "panties", "poker_panties_1", [[26, 26, 35, 255], [153, 22, 10, 255], [255, 179, 3, 255]], level=19) +default her_bra_poker1 = DollCloth("hermione", ("upper undergarment", "other"), "bra", "poker_bra_1", [[26, 26, 35, 255], [232, 232, 232, 255], [153, 22, 10, 255], [255, 179, 3, 255]], blacklist=["panties", "top", "bottom"], level=19) +default her_gloves_poker1 = DollCloth("hermione", ("upper body", "gloves"), "gloves", "poker_gloves_1", [[232, 232, 232, 255], [255, 179, 3, 255]], level=4) +default her_earring_poker1 = DollCloth("hermione", ("head", "earrings"), "earrings", "poker_earring_1", [[255, 179, 3, 255]], level=4) +default her_piercing2_poker1 = DollCloth("hermione", ("piercings & tattoos", "piercings"), "piercing2", "poker_belly_1", [[26, 26, 35, 255], [232, 232, 232, 255], [153, 22, 10, 255], [255, 179, 3, 255]]) + +# Unlockable with Tokens only +default her_outfit_poker = DollOutfit([her_hair_base, her_hat_poker1, her_hat_poker2, her_neckwear_poker1, her_stockings_poker1, her_stockings_poker2, her_panties_poker1, her_bra_poker1, her_gloves_poker1, her_earring_poker1, her_piercing2_poker1], name="Poke-her-nips Costume", desc="An outfit that doesn't leave much for the mind's desire, perfect for a lewd card loving girl.") + +################## +## Bunny Outfit ## +################## + +default her_top_bunny1 = DollCloth("hermione", ("upper body", "one-piece suits"), "top", "bunny_top_1", [[48, 48, 48, 255]], blacklist=["panties", "bra"], zorder=7, level=19) +default her_stockings_bunny1 = DollCloth("hermione", ("legwear", "pantyhose"), "stockings", "bunny_stockings_1", [[81, 81, 81, 255]], level=19) +default her_tattoo3_bunny1 = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo3", "bunny_tattoo1", [[0, 0, 1, 255]]) +default her_hat_bunny1 = DollCloth("hermione", ("head", "headgear"), "headgear", "bunny_hat_1", [[48, 48, 48, 255], [232, 232, 232, 255]], level=13) +default her_gloves_bunny1 = DollCloth("hermione", ("upper body", "gloves"), "gloves", "bunny_gloves_1", [[232, 232, 232, 255]], level=4) +default her_neckwear_bunny1 = DollCloth("hermione", ("head", "neckwear"), "neckwear", "bunny_bowtie_1", [[232, 232, 232, 255], [48, 48, 48, 255]], level=4) + +default her_outfit_bunny = DollOutfit([her_hair_base, her_top_bunny1, her_stockings_bunny1, her_tattoo3_bunny1, her_hat_bunny1, her_gloves_bunny1, her_neckwear_bunny1], price=350, name="Sexy Bunny Costume", desc="What's up doc?") + +################ +## Ball Dress ## +################ + +default her_hair_updo = DollCloth("hermione", ("head", "hair"), "hair", "updo", [[152, 89, 48, 255], [195, 137, 89, 255]]) +default her_top_ball1 = DollCloth("hermione", ("upper body", "dresses"), "top", "ball_dress_1", [[255, 140, 174, 255], [242, 218, 255, 255]], blacklist=["bottom"]) +default her_earring_pearls1 = DollCloth("hermione", ("head", "earrings"), "earrings", "pearl_1", [[233, 166, 253, 255]], level=4) +default her_neckwear_pearls1 = DollCloth("hermione", ("head", "neckwear"), "neckwear", "ball_pearls_1", [[233, 166, 253, 255]], level=4) +default her_accessory_ball_sash1 = DollCloth("hermione", ("misc", "accessory"), "accessory4", "ball_sash", [[247, 222, 231, 255], [161, 82, 159, 255]], zorder=16, level=4) + +default her_outfit_ball = DollOutfit([her_hair_updo, her_neckwear_pearls1, her_top_ball1, her_earring_pearls1, her_accessory_ball_sash1, her_panties_base1], price=0, name="Classy Ball Dress", desc="A fancy dress for a fancy witch.") + +##################### +## Yennefer Outfit ## +##################### + +default her_top_yen1 = DollCloth("hermione", ("upper body", "sweaters"), "top", "yen_top", [[9, 32, 47, 255]], level=10) +default her_bottom_yen_skirt1 = DollCloth("hermione", ("lower body", "skirts"), "bottom", "yen_skirt", [[26, 26, 26, 255]], level=4) +default her_stockings_yen1 = DollCloth("hermione", ("legwear", "stockings"), "stockings", "yen_stockings", [[76, 76, 76, 255]], level=10) +default her_accessory_yen_sash1 = DollCloth("hermione", ("misc", "accessory"), "accessory4", "yen_sash", [[25, 25, 25, 255], [51, 51, 51, 255]], zorder=9, level=10) +default her_accessory_yen_belt1 = DollCloth("hermione", ("misc", "accessory"), "accessory3", "yen_belt", [[52, 37, 31, 255], [146, 142, 137, 255]], zorder=10, level=4) +default her_accessory_yen_feathers1 = DollCloth("hermione", ("misc", "accessory"), "accessory2", "yen_feathers", [[42, 190, 199, 255]], zorder=16, level=4) +default her_accessory_yen_scarf1 = DollCloth("hermione", ("misc", "accessory"), "accessory1", "yen_scarf", [[9, 32, 47, 255]], zorder=17, level=4) +default her_accessory_yen_corset1 = DollCloth("hermione", ("misc", "accessory"), "accessory0", "yen_corset", [[37, 27, 27, 255], [19, 14, 11, 255]], zorder=16, level=10) +default her_neckwear_yen_choker1 = DollCloth("hermione", ("head", "neckwear"), "neckwear", "yen_choker", [[30, 29, 28, 255]], level=4) +default her_gloves_yen1 = DollCloth("hermione", ("upper body", "gloves"), "gloves", "yen_gloves", [[52, 37, 31, 255]], zorder=16, level=4) + +default her_outfit_yennefer = DollOutfit([her_hair_base, her_top_yen1, her_bottom_yen_skirt1, her_accessory_yen_sash1, her_stockings_yen1, her_accessory_yen_feathers1, her_accessory_yen_scarf1, her_neckwear_yen_choker1, her_gloves_yen1, her_accessory_yen_corset1, her_accessory_yen_belt1], price=400, name="Yennefer Costume", desc="An outfit that smells of lilac and gooseberries.") + +####################### +## Pizza Slut Outfit ## +####################### + +default her_bottom_pizza = DollCloth("hermione", ("lower body", "skirts"), "bottom", "pizza_skirt", [[180, 50, 10, 255], [235, 199, 44, 255]], level=4) +default her_top_pizza = DollCloth("hermione", ("upper body", "other"), "top", "pizza_top", [[180, 50, 10, 255]], level=19) +default her_panties_pizza = DollCloth("hermione", ("lower undergarment", "other"), "panties", "pizza_panties", [[180, 50, 10, 255]], level=19) + +default her_outfit_pizza = DollOutfit([her_hair_base, her_bottom_pizza, her_top_pizza, her_panties_pizza], price=0) + +##################### +## Bioshock Outfit ## +##################### + +default her_hair_bioshock = DollCloth("hermione", ("head", "hair"), "hair", "bio_hair", [[31, 29, 27, 255], [54, 50, 48, 255]], level=4) +default her_bottom_bioshock = DollCloth("hermione", ("lower body", "skirts"), "bottom", "bioshock_skirt", [[12, 1, 72, 255]], level=4) +default her_top_bioshock = DollCloth("hermione", ("upper body", "other"), "top", "bioshock_corset", [[225, 224, 232, 255], [46, 46, 48, 255], [232, 232, 232, 255]], level=4) +default her_neckwear_bioshock = DollCloth("hermione", ("head", "neckwear"), "neckwear", "bioshock_choker", [[12, 1, 72, 255]], level=4) +default her_robe_bioshock = DollCloth("hermione", ("upper body", "robes"), "robe", "bioshock_robe", [[12, 1, 72, 255], [232, 232, 232, 255]], level=4) + +default her_outfit_bioshock = DollOutfit([her_hair_bioshock, her_robe_bioshock, her_bottom_bioshock, her_top_bioshock, her_neckwear_bioshock, her_panties_base1], price=400, name="Elizabeth Costume", desc="Flick some coins for this shockingly inspirational outfit.") + +############## +## Swimsuit ## +############## + +default her_top_swimsuit_1 = DollCloth("hermione", ("upper body", "one-piece suits"), "top", "swimsuit_top_1", [[22, 27, 48, 255], [224, 198, 16, 255]], blacklist=["panties", "bra"], zorder=7, level=13) + +default her_outfit_swimsuit = DollOutfit([her_hair_base, her_top_swimsuit_1], price=350, name="One-piece Swimsuit", desc="A swimsuit for witches whom love getting wet.") + +##################### +## Egyptian Outfit ## +##################### + +default her_top_egypt = DollCloth("hermione", ("upper body", "other"), "top", "egypt_top", [[240, 237, 250, 255]], blacklist=["bra"], level=19) +default her_bottom_egypt = DollCloth("hermione", ("lower body", "other"), "bottom", "egypt_loincloth", [[240, 237, 250, 255], [227, 182, 101, 255], [47, 151, 255, 255]], blacklist=["panties"], level=13) +default her_gloves_egypt = DollCloth("hermione", ("upper body", "gloves"), "gloves", "egypt_armband", [[227, 182, 101, 255]], level=4) +default her_neckwear_egypt = DollCloth("hermione", ("head", "neckwear"), "neckwear", "egypt_neck", [[227, 182, 101, 255], [94, 209, 236, 255], [47, 151, 255, 255]], level=4) + +default her_outfit_egypt = DollOutfit([her_hair_base, her_neckwear_egypt, her_top_egypt, her_bottom_egypt, her_gloves_egypt], price=400, name="Cleopatra Costume", desc="Become the Cleopatra of your times!") + +####################### +## Latex dress Outfit ## +####################### + +default her_top_latex_dress_1 = DollCloth("hermione", ("upper body", "one-piece suits"), "top", "latex_dress_1", [[250, 139, 241, 255], [255, 173, 22, 255]], blacklist=["bra"], level=19) + +default her_outfit_latex_dress = DollOutfit([her_hair_base, her_top_latex_dress_1], price=350, name="Latex Dress", desc="Something you wouldn't normally find in a regular clothing store.") + +################### +## Pajama Outfit ## +################### + +default her_top_pajama = DollCloth("hermione", ("upper body", "shirts"), "top", "pajama_1", [[228, 216, 193, 255]]) +default her_bottom_pajama = DollCloth("hermione", ("lower body", "trousers"), "bottom", "pajama_1", [[156, 138, 116, 255], [228, 203, 153, 255], [228, 216, 193, 255]]) +default her_bottom_pajama2 = DollCloth("hermione", ("lower body", "trousers"), "bottom", "pajama_2", [[156, 138, 116, 255], [228, 203, 153, 255]]) + +default her_outfit_pajama = DollOutfit([her_hair_base, her_top_pajama, her_bottom_pajama], addons=[her_bottom_pajama2]) # Event Outfit + +#################### +## Nightie Outfit ## +#################### + +default her_top_nightie = DollCloth("hermione", ("upper body", "shirts"), "top", "nightie", [[255, 172, 184, 215]], level=13) + +default her_outfit_nightie = DollOutfit([her_hair_base, her_top_nightie], price=350, name="Nightie", desc="Comfortable alternative for a pyjamas.") + +################## +## Teddy Outfit ## +################## + +default her_top_teddy = DollCloth("hermione", ("upper body", "shirts"), "top", "teddy_top", [[20, 20, 20, 215], [148, 144, 163, 215], [148, 144, 163, 215]], level=16) + +default her_outfit_teddy = DollOutfit([her_hair_base, her_top_teddy], price=350, name="Teddy Nightie", desc="A more airy nightdress leaving not much fabric between you and your bed.") + +################# +## Tifa Outfit ## +################# + +default her_top_tifa = DollCloth("hermione", ("upper body", "shirts"), "top", "tifa_top", [[232, 232, 232, 255]], level=10) +default her_accessory_tifa_belt = DollCloth("hermione", ("misc", "accessory"), "accessory3", "tifa_belt", [[50, 50, 50, 255], [154, 154, 154, 255]], level=4) +default her_accessory_tifa_suspenders = DollCloth("hermione", ("misc", "accessory"), "accessory4", "tifa_suspenders", [[86, 61, 67, 255], [154, 154, 154, 255]], zorder=16, level=4) +default her_gloves_tifa = DollCloth("hermione", ("upper body", "gloves"), "gloves", "tifa_gloves", [[72, 63, 70, 255], [228, 107, 98, 255], [125, 120, 127, 255], [189, 167, 158, 255]], level=4) +default her_bottom_tifa = DollCloth("hermione", ("lower body", "skirts"), "bottom", "tifa_skirt", [[72, 63, 70, 255]], level=10) + +default her_outfit_tifa = DollOutfit([her_hair_base, her_top_tifa, her_accessory_tifa_belt, her_accessory_tifa_suspenders, her_gloves_tifa, her_bottom_tifa, her_panties_base1], price=400, name="Tifa Costume", desc="An outfit for when your sexual fantasies are just getting started.") + +####################### +## Ms. Marvel Outfit ## +####################### + +default her_top_msmarv = DollCloth("hermione", ("upper body", "one-piece suits"), "top", "msmarv_suit", [[64, 70, 99, 255], [123, 136, 181, 255], [255, 236, 134, 255]], zorder=7, blacklist=["panties", "bra"], level=10) +default her_accessory_msmarv_ribbon = DollCloth("hermione", ("misc", "accessory"), "accessory3", "msmarv_ribbon", [[206, 41, 22, 255]], level=4) +default her_gloves_msmarv = DollCloth("hermione", ("upper body", "gloves"), "gloves", "msmarv_gloves", [[64, 70, 99, 255], [123, 136, 181, 255]], level=4) +default her_stockings_msmarv = DollCloth("hermione", ("legwear", "stockings"), "stockings", "msmarv_stockings", [[64, 70, 99, 255], [123, 136, 181, 255]], level=10) + +default her_outfit_msmarv = DollOutfit([her_hair_base, her_top_msmarv, her_accessory_msmarv_ribbon, her_gloves_msmarv, her_stockings_msmarv], price=400, name="Miss Marvel Costume", desc="For the girl that likes the lightning bolt better on her chest than her forehead.") + +####################### +## Heart Slut Outfit ## +####################### + +default her_top_hslut = DollCloth("hermione", ("upper body", "other"), "top", "hslut_top", [[226, 95, 95, 255], [242, 242, 242, 255]], level=19) +default her_gloves_hslut = DollCloth("hermione", ("upper body", "gloves"), "gloves", "hslut_gloves", [[242, 242, 242, 255]], level=10) +default her_stockings_hslut = DollCloth("hermione", ("legwear", "stockings"), "stockings", "hslut_socks", [[242, 242, 242, 255]], level=10) +default her_panties_hslut = DollCloth("hermione", ("lower undergarment", "other"), "panties", "hslut_panties", [[226, 95, 95, 255]], level=19) +default her_bra_hslut = DollCloth("hermione", ("upper undergarment", "other"), "bra", "hslut_pasties", [[226, 95, 95, 255], [226, 95, 95, 255]], level=19) +default her_earring_hslut = DollCloth("hermione", ("head", "earrings"), "earrings", "hslut_earring", [[226, 95, 95, 255]], level=4) +default her_neckwear_hslut = DollCloth("hermione", ("head", "neckwear"), "neckwear", "hslut_choker", [[242, 242, 242, 255], [226, 95, 95, 255]], level=10) +default her_garterbelt_hslut = DollCloth("hermione", ("legwear", "garterbelts"), "garterbelt", "hslut_garter", [[226, 95, 95, 255], [249, 148, 148, 255]], level=10) + +default her_outfit_hslut = DollOutfit([her_hair_base, her_top_hslut, her_gloves_hslut, her_stockings_hslut, her_panties_hslut, her_bra_hslut, her_earring_hslut, her_neckwear_hslut, her_garterbelt_hslut], price=450, name="Hearty Harlot", desc="A sexy dancers outfit with heart-shaped nipple tassels.") + +####################### +## Lara Croft Outfit ## +####################### + +default her_top_croft = DollCloth("hermione", ("upper body", "shirts"), "top", "croft_top", [[163, 201, 152, 255]], level=10) +default her_bottom_croft = DollCloth("hermione", ("lower body", "shorts"), "bottom", "croft_shorts", [[147, 114, 61, 255], [137, 136, 120, 255], [252, 192, 4, 255]],level=10) +default her_accessory_croft_belt = DollCloth("hermione", ("misc", "accessory"), "accessory3", "croft_belt", [[111, 86, 66, 255], [116, 123, 114, 255], [252, 192, 4, 255]], level=4) +default her_accessory_croft_suspenders = DollCloth("hermione", ("misc", "accessory"), "accessory4", "croft_suspenders", [[111, 86, 66, 255], [116, 123, 114, 255]], zorder=16, level=4) + +default her_outfit_croft = DollOutfit([her_hair_base, her_top_croft, her_bottom_croft, her_accessory_croft_belt, her_accessory_croft_suspenders, her_panties_base1], price=400, name="Lora Craft Costume", desc="An outfit perfectly suited for exploring deep, dark and moist caverns.\n{size=-4}Disclaimer: This outfit has no association with a character known as Lara Croft. Totally.{/size}") + +################## +## Witch Outfit ## +################## + +default her_top_witch = DollCloth("hermione", ("upper body", "one-piece suits"), "top", "witch_top", [[71, 51, 102, 255], [252, 180, 112, 255]], blacklist=["panties"], level=10) +default her_stockings_witch = DollCloth("hermione", ("legwear", "stockings"), "stockings", "witch_stockings", [[71, 51, 102, 255], [252, 180, 112, 255]], level=4) +default her_robe_witch = DollCloth("hermione", ("upper body", "robes"), "robe", "witch_cape", [[71, 51, 102, 255], [252, 180, 112, 255], [36, 112, 58, 255]], level=4) + +default her_outfit_witch = DollOutfit([her_hair_base, her_top_witch, her_stockings_witch, her_robe_witch], price=400, name="16th Century Witch Costume", desc="An ancient witch costume coming straight from 16th century. Stay away from the burning stakes!") + +####################### +## Slutty Schoolgirl ## +####################### + +default her_top_slutty1 = DollCloth("hermione", ("upper body", "sweaters"), "top", "open_top_1", [[183, 183, 184, 255], [109, 105, 121, 255], [167, 77, 42, 255], [237, 179, 14, 255]], level=19) +default her_bottom_slutty1 = DollCloth("hermione", ("lower body", "skirts"), "bottom", "open_skirt_1", [[103, 90, 108, 255]], level=19) +default her_stockings_slutty = DollCloth("hermione", ("legwear", "stockings"), "stockings", "stockings_2", [[170, 170, 170, 255]], level=4) + +default her_outfit_slutty_schoolgirl = DollOutfit([her_hair_base, her_top_slutty1, her_bottom_slutty1, her_stockings_slutty], price=500, name="Slutty Schoolgirl outfit", desc="An arguably better version of the regular school outfit.") + +################## +## Latex Outfit ## +################## + +default her_top_latex = DollCloth("hermione", ("upper body", "shirts"), "top", "latex_top", [[55, 55, 55, 255]], level=19) +default her_gloves_latex = DollCloth("hermione", ("upper body", "gloves"), "gloves", "latex_gloves", [[55, 55, 55, 255]], level=13) +default her_stockings_latex = DollCloth("hermione", ("legwear", "stockings"), "stockings", "latex_stockings", [[55, 55, 55, 255]], level=13) +default her_panties_latex = DollCloth("hermione", ("lower undergarment", "bikini panties"), "panties", "latex_panties", [[55, 55, 55, 255]], level=19) +default her_neckwear_latex = DollCloth("hermione", ("head", "neckwear"), "neckwear", "latex_choker", [[55, 55, 55, 255]], level=13) + +default her_outfit_latex = DollOutfit([her_hair_base, her_top_latex, her_gloves_latex, her_stockings_latex, her_panties_latex, her_neckwear_latex], price=350, name="Latex Set", desc="A tight fitting outfit that takes approximately twenty minutes to put on properly.") + +################# +## Fishnet Outfit +################# + +default her_top_fishnet = DollCloth("hermione", ("upper body", "other"), "top", "fishnet_top", [[24, 24, 24, 255]], blacklist=["bra"], level=19) +default her_panties_fishnet = DollCloth("hermione", ("lower undergarment", "other"), "panties", "fishnet_panties", [[24, 24, 24, 255]], level=19) + +default her_outfit_fishnet = DollOutfit([her_hair_base, her_top_fishnet, her_panties_fishnet], price=350, name="Fishnet set", desc="Disclaimer: Not suitable for actual fish catching.") + + +########################### +## Fishnet One-piece Outfit +########################### + +default her_top_fishnet_onepiece = DollCloth("hermione", ("upper body", "one-piece suits"), "top", "fishnet_onepiece", [[0, 0, 0, 255], [0, 0, 0, 255]], blacklist=["panties", "bra"], zorder=7, level=19) +default her_stockings_short_meshed = DollCloth("hermione", ("legwear", "socks"), "stockings", "short_meshed", [[0, 0, 0, 255], [0, 0, 0, 255]], level=13) + +default her_outfit_fishnet_onepiece = DollOutfit([her_hair_base, her_top_fishnet_onepiece, her_stockings_short_meshed], price=350, name="Fishnet Onepiece", desc="Perfect for containing your daily catch.") + +################### +## Winter Outfit ## (Unfinished) # TODO: Add to clothing event once it's been finished. +################### + +default her_top_pullover_1 = DollCloth("hermione", ("upper body", "sweaters"), "top", "pullover_1", [[255, 123, 207, 255]], unlocked=True) +default her_top_pullover_2 = DollCloth("hermione", ("upper body", "sweaters"), "top", "pullover_2", [[255, 123, 207, 255]], unlocked=True, level=8) +default her_top_pullover_3 = DollCloth("hermione", ("upper body", "sweaters"), "top", "pullover_3", [[255, 123, 207, 255]], unlocked=True, level=16) +default her_bottom_winter_1 = DollCloth("hermione", ("lower body", "skirts"), "bottom", "winter_skirt_1", [[192, 31, 30, 255]]) +default her_stockings_pantyhose_1= DollCloth("hermione", ("legwear", "pantyhose"), "stockings", "pantyhose_1", [[177, 144, 131, 255]], unlocked=True, level=4) +default her_stockings_pantyhose_2= DollCloth("hermione", ("legwear", "pantyhose"), "stockings", "pantyhose_2", [[177, 144, 131, 255]], unlocked=True, level=10) +default her_stockings_pantyhose_3= DollCloth("hermione", ("legwear", "pantyhose"), "stockings", "pantyhose_3", [[177, 144, 131, 255]], unlocked=True, level=19) + +################### +## Spring Outfit ## +################### + +default her_top_ruffled = DollCloth("hermione", ("upper body", "shirts"), "top", "ruffled_top", [[235, 223, 163, 255]], unlocked=True, level=4) +default her_bottom_jeans = DollCloth("hermione", ("lower body", "trousers"), "bottom", "jeans_1", [[64, 87, 88, 255], [174, 93, 11, 255], [155, 142, 130, 255]], unlocked=True) + +################### +## Casual Outfit ## TODO: Turn into clothing event once it's been finished. +################### + +default her_top_casual1 = DollCloth("hermione", ("upper body", "sweaters"), "top", "casual_top_1", [[116, 18, 48, 255], [60, 111, 66, 255]], unlocked=True) +default her_top_casual2 = DollCloth("hermione", ("upper body", "sweaters"), "top", "casual_top_2", [[116, 18, 48, 255]], unlocked=True, level=6) + +######################## +## Cheerleader Outfit ## +######################## + +default her_top_cheerleader1 = DollCloth("hermione", ("upper body", "shirts"), "top", "cheerleader_top_1", [[251, 251, 251, 255], [167, 77, 42, 255], [237, 179, 14, 255]], level=10) +default her_top_cheerleader2 = DollCloth("hermione", ("upper body", "other"), "top", "cheerleader_top_2", [[167, 77, 42, 255], [237, 179, 14, 255]], level=16) + +default her_bottom_cheerleader1 = DollCloth("hermione", ("lower body", "skirts"), "bottom", "cheerleader_skirt_1", [[251, 251, 251, 255], [167, 77, 42, 255], [237, 179, 14, 255]], level=10) +default her_bottom_cheerleader2 = DollCloth("hermione", ("lower body", "skirts"), "bottom", "cheerleader_skirt_2", [[232, 232, 232, 255], [167, 77, 42, 255], [237, 179, 14, 255]], level=14) + +default her_gloves_cheerleader = DollCloth("hermione", ("upper body", "gloves"), "gloves", "cheerleader_armband", [[167, 77, 42, 255], [237, 179, 14, 255]]) + +default her_outfit_cheerleader_1 = DollOutfit([her_hair_base, her_top_cheerleader1, her_bottom_cheerleader1, her_gloves_cheerleader, her_panties_base1, her_bra_base1], price=450, name="Gryffindor Cheerleader uniform", desc="So daring and bold, sporting red and gold!") +default her_outfit_cheerleader_2 = DollOutfit([her_hair_base, her_top_cheerleader2, her_bottom_cheerleader2, her_panties_base1, her_bra_base1], price=650, name="Gryffindor Cheerleader Plus uniform", desc="For when your teammates need an extra push.") + +################# ~*~Ä~*~*~*~*~ ################# +## Xmas Stuff ### /%\ ___&__ ### Ho Ho Ho ## +################# /% \ |=I~I=| ################# + +default her_hat_antlers = DollCloth("hermione", ("head", "headgear"), "headgear", "antlers", [[234, 187, 170, 255]], level=8) +default her_hat_elf = DollCloth("hermione", ("head", "headgear"), "headgear", "elf", [[229, 0, 10, 255], [255, 239, 248, 255]], level=8) +default her_neckwear_choker1 = DollCloth("hermione", ("head", "neckwear"), "neckwear", "choker_1", [[229, 0, 10, 255]], level=4) +default her_neckwear_bell1 = DollCloth("hermione", ("head", "neckwear"), "neckwear", "bell_1", [[229, 0, 10, 255], [244, 181, 82, 255]], zorder=16, level=10) + +default her_bra_ribbon = DollCloth("hermione", ("upper undergarment", "other"), "bra", "ribbon", [[229, 0, 10, 255]], blacklist=["top"], level=18) +default her_panties_ribbon = DollCloth("hermione", ("lower undergarment", "other"), "panties", "ribbon", [[229, 0, 10, 255]], blacklist=["bottom"], level=18) + +default her_top_xmas = DollCloth("hermione", ("upper body", "other"), "top", "xmas",[[229, 0, 10, 255], [255, 239, 248, 255], [109, 194, 101, 255]], level=13) +default her_bottom_xmas = DollCloth("hermione", ("lower body", "other"), "bottom", "xmas",[[229, 0, 10, 255], [255, 239, 248, 255]], level=13) +default her_gloves_xmas = DollCloth("hermione", ("upper body", "gloves"), "gloves", "xmas", [[255, 239, 248, 255]]) +default her_stockings_xmas = DollCloth("hermione", ("legwear", "stockings"), "stockings", "xmas",[[255, 255, 255, 255], [255, 255, 255, 255]], level=10) + +default her_outfit_ribbon = DollOutfit([her_hair_base, her_neckwear_choker1, her_bra_ribbon, her_panties_ribbon]) +default her_outfit_xmas = DollOutfit([her_hair_base, her_hat_antlers, her_neckwear_bell1, her_top_xmas, her_bottom_xmas, her_gloves_xmas, her_stockings_xmas, her_panties_base1], addons=[her_hat_elf]) + +##################### +## Wrestling Robes ## +##################### + +default her_robe_wrestling = DollCloth("hermione", ("upper body", "robes"), "robe", "wrestling_robe", [[166, 63, 29, 255], [255, 253, 237, 255]], level=3) +default her_bra_sports = DollCloth("hermione", ("upper undergarment", "bras"), "bra", "sports_bra", [[66, 71, 100, 255], [242, 244, 255, 255]], level=3) +default her_panties_sports = DollCloth("hermione", ("lower undergarment", "panties"), "panties", "sports_panties", [[66, 71, 100, 255], [242, 244, 255, 255]], level=3) +default her_accessory_belt_wrestling = DollCloth("hermione", ("misc", "accessory"), "accessory0", "wrestling_belt", [[60, 71, 91, 255], [240, 251, 117, 255]], zorder=10, level=3) + +default her_outfit_wrestling = DollOutfit([her_hair_base, her_robe_wrestling, her_bra_sports, her_panties_sports, her_accessory_belt_wrestling]) + +########## +## MISC ## +########## + +default her_accessory_gift_wrap = DollCloth("hermione", ("misc", "accessory"), "accessory3", "leg_wrap", [[167, 77, 42, 255], [237, 179, 14, 255]], zorder=7, unlocked=True, level=5) +default her_bra_bandaids = DollCloth("hermione", ("upper undergarment", "other"), "bra", "bandaids", [[233, 187, 149, 255]], unlocked=True, level=19) + +############# +## Tattoos ## +############# + +# Pelvis/crotch (Slot 0) +default her_tattoo0_10g = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "10g_tattoo", [[0, 0, 0, 255]], unlocked=True) +default her_tattoo0_cockhole = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "cockhole_tattoo", [[0, 0, 0, 255]], unlocked=True) +default her_tattoo0_cumhere = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "cumhere_tattoo2", [[0, 0, 0, 255]], unlocked=True) +default her_tattoo0_cumslut = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "cumslut_tattoo", [[0, 0, 0, 255]], unlocked=True) +default her_tattoo0_cunt = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "cunt_tattoo", [[0, 0, 0, 255]], unlocked=True) +default her_tattoo0_deatheater = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "deatheater_tattoo", [[0, 0, 0, 255]], unlocked=True) +default her_tattoo0_deposit = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "deposit_tattoo", [[0, 0, 0, 255]], unlocked=True) +default her_tattoo0_fuckme = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "fuckme_tattoo", [[0, 0, 0, 255]], unlocked=True) +default her_tattoo0_mudblood = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "mudblood_tattoo", [[0, 0, 0, 255]], unlocked=True) +default her_tattoo0_nocondom = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "nocondom_tattoo", [[0, 0, 0, 255]], unlocked=True) +default her_tattoo0_punkblood = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "punkblood_tattoo", [[192, 84, 58, 255], [68, 188, 64, 255]], unlocked=True) +default her_tattoo0_whore = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "whore_tattoo", [[0, 0, 0, 255]], unlocked=True) +default her_tattoo0_womb = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo0", "womb_tattoo", [[0, 0, 0, 255]], unlocked=True) + +# Breasts/Nipples (Slot 1) +default her_tattoo1_twist = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo1", "twist_tattoo", [[0, 0, 0, 255]], unlocked=True) + +# Torso/chest (Slot 2) +default her_tattoo2_cumhere = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo2", "cumhere_tattoo1", [[0, 0, 0, 255]], unlocked=True) + +# Legs/Thighs (Slot 3) +default her_tattoo3_lockhart = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo3", "lockhart_tattoo", [[70, 70, 70, 255]]) +default her_tattoo3_free = DollCloth("hermione", ("piercings & tattoos", "tattoos"), "tattoo3", "free_tattoo", [[0, 0, 0, 255]], unlocked=True) + +############ +## Makeup ## +############ + +# Face (Slot 0) +default her_makeup0_freckles = DollCloth("hermione", ("head", "makeup"), "makeup0", "freckles1", [[185, 124, 81, 255]], unlocked=True) +default her_makeup0_freckles_nonose = DollCloth("hermione", ("head", "makeup"), "makeup0", "freckles1_nonose", [[185, 124, 81, 255]], unlocked=True) + +# Breasts +default her_makeup1_freckles = DollCloth("hermione", ("head", "makeup"), "makeup1", "freckles2", [[185, 124, 81, 255]], unlocked=True) + +# Torso +default her_makeup2_freckles = DollCloth("hermione", ("head", "makeup"), "makeup2", "freckles3", [[185, 124, 81, 255]], unlocked=True) + +# Lipstick (DollLipstick) +default her_makeup4_lipstick = DollLipstick("hermione", ("head", "makeup"), "makeup4", "lipstick", [[255, 70, 70, 255]], unlocked=True) + +################ +## Pubic Hair ## +################ + +default her_pubes_arrow = DollCloth("hermione", ("lower undergarment", "pubes"), "pubes", "arrow", [[152, 89, 48, 255]], unlocked=True) +default her_pubes_beaver = DollCloth("hermione", ("lower undergarment", "pubes"), "pubes", "beaver", [[152, 89, 48, 255]], unlocked=True) +default her_pubes_stuble = DollCloth("hermione", ("lower undergarment", "pubes"), "pubes", "stuble", [[92, 54, 29, 255]], unlocked=True) +default her_pubes_unshaved = DollCloth("hermione", ("lower undergarment", "pubes"), "pubes", "unshaved", [[92, 54, 29, 255]], unlocked=True) + +### Default Schedules ### + +default her_outfit_s_clearday = DollOutfit([her_hair_base, her_top_school3, her_bottom_school1, her_panties_base1, her_bra_base1], True, schedule={"day": True}) +default her_outfit_s_clearnight = DollOutfit([her_hair_base, her_top_casual1, her_bottom_jeans, her_panties_base1, her_bra_base1], True, schedule={"night": True}) +default her_outfit_s_snow = DollOutfit([her_hair_base, her_top_pullover_1, her_bottom_jeans, her_panties_base1, her_bra_base1], True, schedule={"day": True, "night": True, "snowy": True}) +default her_outfit_s_overcast = DollOutfit([her_hair_base, her_top_pullover_1, her_bottom_school1, her_panties_base1, her_bra_base1, her_stockings_base1], True, schedule={"day": True, "night": True, "cloudy": True}) +default her_outfit_s_rain = DollOutfit([her_hair_base, her_robe_school_1, her_top_school1, her_bottom_school1, her_panties_base1, her_bra_base1, her_stockings_base1], True, schedule={"day": True, "night": True, "rainy": True}) + +############################ +## Cat-girl potion outfit ## +############################ + +default her_cat_ears = DollCloth("hermione", ("head", "headgear"), "headgear", "cat_ears", [[209, 123, 67, 255], [232, 232, 232, 255]]) +default her_cat_legs = DollCloth("hermione", ("legwear", "stockings"), "stockings", "cat_legs",[[209, 123, 67, 255]]) +default her_cat_arms = DollCloth("hermione", ("upper body", "gloves"), "gloves", "cat_arms", [[209, 123, 67, 255], [214, 122, 122, 255], [37, 37, 37, 255]]) +default her_cat_tail = DollCloth("hermione", ("misc", "accessory"), "accessory0", "cat_tail", [[209, 123, 67, 255]], zorder=-1) +default her_cat_muzzle = DollCloth("hermione", ("head", "makeup"), "makeup0", "cat_muzzle", [[214, 122, 122, 255]]) + +default her_outfit_cat1 = DollOutfit([her_hair_base, her_cat_ears, her_cat_tail], hidden=True) +default her_outfit_cat2 = DollOutfit([her_hair_base, her_cat_ears, her_cat_tail, her_cat_legs, her_cat_arms, her_pubes_beaver], hidden=True) +default her_outfit_cat3 = DollOutfit([her_hair_base, her_cat_ears, her_cat_tail, her_cat_legs, her_cat_arms, her_pubes_beaver, her_cat_muzzle], hidden=True) + +################### +## Magic Collars ## +################### + +default her_neckwear_basic_collar = DollCloth("hermione", ("head", "neckwear"), "neckwear", "basic_collar", [[182, 114, 91, 255], [255, 0, 0, 255]]) +default her_neckwear_good_girl_collar = DollCloth("hermione", ("head", "neckwear"), "neckwear", "good_girl_collar", [[255, 184, 192, 255], [255, 224, 230, 255], [255, 102, 204, 255]]) +default her_neckwear_whore_collar = DollCloth("hermione", ("head", "neckwear"), "neckwear", "whore_collar", [[59, 59, 59, 255]]) +default her_neckwear_flasher_collar = DollCloth("hermione", ("head", "neckwear"), "neckwear", "flasher_collar", [[233, 64, 240, 255], [245, 219, 104, 255]], blacklist=["top", "bra"]) +default her_neckwear_slut_collar = DollCloth("hermione", ("head", "neckwear"), "neckwear", "slut_collar", [[251, 66, 82, 255], [40, 40, 40, 255]]) +default her_neckwear_slave_collar = DollCloth("hermione", ("head", "neckwear"), "neckwear", "slave_collar", [[170, 169, 173, 255]]) + +################ +## Butt Plugs ## +################ +default her_buttplug_small1 = DollCloth("hermione", ("misc", "accessory"), "accessory0", "buttplug_small_1", [[252, 195, 219, 255], [84, 76, 214, 255]], zorder=-1, level=15) +default her_buttplug_medium1 = DollCloth("hermione", ("misc", "accessory"), "accessory0", "buttplug_medium_1", [[255, 255, 119, 255], [243, 140, 9, 255], [255, 76, 46, 255], [84, 76, 214, 255]], zorder=-1, level=19) +default her_buttplug_large1 = DollCloth("hermione", ("misc", "accessory"), "accessory0", "buttplug_large_1", [[99, 208, 14, 255], [254, 108, 181, 255], [84, 76, 214, 255]], zorder=-1, level=23) + + +############### +## Piercings ## +############### + +default her_piercing0_clit_stud = DollCloth("hermione", ("piercings & tattoos", "piercings"), "piercing0", "clit_stud", [[161, 159, 159, 255]], unlocked=True) +default her_piercing1_nipple_stud = DollCloth("hermione", ("piercings & tattoos", "piercings"), "piercing1", "nipple_stud", [[161, 159, 159, 255]], unlocked=True) +default her_piercing1_nipple_rings = DollCloth("hermione", ("piercings & tattoos", "piercings"), "piercing1", "nipple_rings", [[161, 159, 159, 255]], unlocked=True) +default her_piercing1_nipple_rings2 = DollCloth("hermione", ("piercings & tattoos", "piercings"), "piercing1", "nipple_rings2", [[161, 159, 159, 255]], unlocked=True) +default her_piercing1_nipple_rings3 = DollCloth("hermione", ("piercings & tattoos", "piercings"), "piercing1", "nipple_rings3", [[161, 159, 159, 255]], unlocked=True) +default her_piercing1_nipple_bells = DollCloth("hermione", ("piercings & tattoos", "piercings"), "piercing1", "nipple_bells", [[244, 181, 82, 255]]) + +default her_piercing2_belly_stud = DollCloth("hermione", ("piercings & tattoos", "piercings"), "piercing2", "belly_stud", [[161, 159, 159, 255]], unlocked=True) +default her_piercing2_belly_heart = DollCloth("hermione", ("piercings & tattoos", "piercings"), "piercing2", "belly_heart", [[161, 159, 159, 255]], unlocked=True) +default her_piercing2_belly_dick = DollCloth("hermione", ("piercings & tattoos", "piercings"), "piercing2", "belly_dick", [[161, 159, 159, 255]], unlocked=True) + +############ +## Events ## +############ + +default herq_panties_on_head = DollCloth("hermione", ("head", "headgear"), "headgear", "panties_on_head", [[156, 204, 249, 255]]) diff --git a/game/scripts/characters/hermione/wardrobe_reactions.rpy b/game/scripts/characters/hermione/wardrobe_reactions.rpy new file mode 100644 index 00000000..8c42a488 --- /dev/null +++ b/game/scripts/characters/hermione/wardrobe_reactions.rpy @@ -0,0 +1,2303 @@ +define her_requirements = { + "category upper undergarment": 5, + "category lower undergarment": 5, + "category piercings & tattoos": 16, + "touch head": 4, + "touch breasts": 12, + "touch vagina": 18, + "unequip panties": 15, + "unequip bra": 14, + "unequip top": 3, + "unequip bottom": 3, + } + +define her_responses = { + "category_fail": "her_reaction_category_fail", + "equip": "her_reaction_equip", + "equip_fail": "her_reaction_equip_fail", + "unequip": "her_reaction_unequip", + "unequip_fail": "her_reaction_unequip_fail", + "touch": "her_reaction_touch", + "touch_fail": "her_reaction_touch_fail", + "equip_outfit": "her_reaction_equip_outfit", + "equip_outfit_fail": "her_reaction_equip_outfit_fail", + "blacklist": "her_reaction_blacklist", + "fallback": "her_reaction_fallback", +} + +label her_reaction_category_fail(category): + + if category == "upper undergarment": + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + her "I'd rather keep the underwear I have on already thank you very much..." ("annoyed", "closed", "angry", "mid") + elif random_number == 2: + her "You want me to change my underwear?" ("angry", "wide", "base", "mid") + her "Why on earth would I do that?" ("open", "base", "angry", "R") + elif random_number == 3: + her "Change my--" ("soft", "wide", "base", "mid") + her "I'm not changing my underwear for you..." ("clench", "closed", "angry", "mid") + elif category == "lower undergarment": + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + her "I'm not going to let you ogle at my underwear..." ("angry", "happy", "angry", "mid") + elif random_number == 2: + her "I don't believe there's anything wrong with my current underwear..." ("open", "base", "annoyed", "mid") + elif random_number == 3: + her "[genie_name], I don't think this is part of our arrangement..." ("soft", "base", "annoyed", "mid") + elif category == "piercings & tattoos": + if her_whoring >= 12: + her "*Ehm*... Do I have to?" ("annoyed", "squint", "base", "mid") + her "Isn't it supposed to hurt?" ("upset", "base", "base", "R") + elif her_whoring >= 6: + her "You can look all you want but I will not have such things done to my body..." ("normal", "base", "annoyed", "mid") + else: + #under naked level + her "You want me to what?" ("open", "wide", "base", "mid") + her "I will not put such things on my body..." ("clench", "base", "base", "mid") + + return + +label her_reaction_touch(what): + if what == "head": + $ mouse_headpat() + $ random_number = renpy.random.randint(1, 3) + + if her_whoring >= 20: + #craving it + if random_number == 1: + her "*Mmm*..." ("base", "closed", "base", "mid", cheeks="blush") + elif random_number == 2: + her "Does this mean I've been a good girl, [genie_name]?" ("crooked_smile", "narrow", "base", "mid", cheeks="blush") + elif random_number == 3: + her "Thank you [genie_name]..." ("base", "happy", "base", "mid", cheeks="blush") + elif her_whoring >= 16: + #enjoying it + if random_number == 1: + her "I guess I could get used to this..." ("soft", "closed", "base", "mid", cheeks="blush") + elif random_number == 2: + her "*Hmm*... This does feel kind of nice..." ("open", "closed", "worried", "mid", cheeks="blush") + elif random_number == 3: + her "..." ("base", "closed", "base", "mid", cheeks="blush") + elif her_whoring >= 12: + #enjoying it a bit + if random_number == 1: + her "..." ("normal", "happyCl", "base", "mid", cheeks="blush") + elif random_number == 2: + her "I'm only letting you do this because I have to..." ("open", "squint", "annoyed", "mid", cheeks="blush") + elif random_number == 3: + her "*Ehm*... Do you do this to every student?" ("base", "closed", "base", "mid", cheeks="blush") + elif her_whoring >= 8: + #confused + if random_number == 1: + her "*Ehm*... Isn't petting your student a bit weird?" ("upset", "happyCl", "base", "mid") + elif random_number == 2: + her "Okay then... I guess this is what we're doing now..." ("disgust", "squint", "base", "mid") + elif random_number == 3: + her "Is there something in my hair?" ("soft", "base", "base", "mid") + else: # >= 4 + #annoyed but letting you + if random_number == 1: + her "Are you petting me?" ("disgust", "base", "base", "mid") + elif random_number == 2: + her "Did you just...{w=0.4} Whatever..." ("annoyed", "narrow", "base", "R") + elif random_number == 3: + her "Why are you doing that?" ("clench", "base", "base", "R") + + elif what == "breasts": + $ mouse_heart() + $ random_number = renpy.random.randint(1, 4) + + if her_whoring >= 20: + if random_number == 1: + her "*Mmm*...{w=0.4} Lower..." ("base", "closed", "base", "mid", cheeks="blush") + elif random_number == 2: + her "I'm glad you're enjoying them so much, [genie_name]." ("base", "narrow", "base", "mid", cheeks="blush") + elif random_number == 3: + her "*Ah*..." ("open", "closed", "base", "mid", cheeks="blush") + elif random_number == 4: + her "Please be gentle..." ("soft", "closed", "base", "mid", cheeks="blush") + elif her_whoring >= 16: + if random_number == 1: + her "So, I guess this is part of our arrangement now..." ("base", "narrow", "base", "down", cheeks="blush") + elif random_number == 2: + her "Oh! Hey, at least give me a warning first." ("soft", "squint", "base", "mid", cheeks="blush") + elif random_number == 3: + her "Your hands not good enough anymore?" ("base", "squint", "base", "R", cheeks="blush") + elif random_number == 4: + her "Hey... These things are sensitive you know..." ("grin", "narrow", "base", "down", cheeks="blush") + else: # >= 12 + if random_number == 1: + her "Why are you kissing my..." ("angry", "base", "base", "mid", cheeks="blush") + elif random_number == 2: + her "I didn't say you could...{w=0.4} Never mind..." ("clench", "closed", "base", "mid", cheeks="blush") + elif random_number == 3: + her "I thought I was supposed to get points for this..." ("annoyed", "base", "base", "mid", cheeks="blush") + her "I guess a small kiss is fine..." ("annoyed", "base", "base", "R", cheeks="blush") + elif random_number == 4: + her "That's not my cheek..." ("disgust", "narrow", "base", "mid", cheeks="blush") + elif what == "vagina": + $ mouse_heart() + + if hermione.is_worn("bottom"): + # Bottoms only OR Bottoms AND panties + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + her "Naughty..." ("grin", "narrow", "base", "mid") + elif random_number == 2: + her "*Mmm*... Want to see what's underneath do you?" ("base", "narrow", "base", "mid", cheeks="blush") + elif random_number == 3: + her "Got your eye on something?" ("base", "narrow", "base", "mid") + elif hermione.is_worn("panties"): + # Panties only + $ random_number = renpy.random.randint(1, 2) + if random_number == 1: + her "*Mmm*... Shall I take off my panties?" ("open", "closed", "base", "mid", cheeks="blush") + elif random_number == 2: + her "You're going to make my panties wet if you keep doing that..." ("soft", "narrow", "base", "mid", cheeks="blush") + else: + # NO bottoms AND NO panties + $ random_number = renpy.random.randint(1, 4) + if random_number == 1: + her "*Ah*..." ("open_tongue", "closed", "base", "mid", cheeks="blush") + elif random_number == 2: + her "*Mmm*..." ("soft", "closed", "base", "mid", cheeks="blush") + elif random_number == 3: + her "More..." ("open", "closed", "base", "mid", cheeks="blush") + elif random_number == 4: + her "Keep going [genie_name]..." ("smile", "closed", "base", "mid", cheeks="blush") + ##This could play after touching her enough times this wardrobe session## + #her "*Nnngh*..." ("base", "base", "base", "mid") + #with kissiris + + return + +label her_reaction_touch_fail(what): + $ random_number = renpy.random.randint(1, 5) + + if what == "head": + $ mouse_slap() + if random_number == 1: + her "Stop that!" ("angry", "wide", "angry", "mid") + elif random_number == 2: + her "[genie_name]!" ("open", "narrow", "angry", "L") + elif random_number == 3: + her "Unhand me..." ("mad", "wide", "angry", "mid") + elif random_number == 4: + her "Stop it please..." ("open", "happyCl", "angry", "mid", cheeks="blush") + elif random_number == 5: + her "Hands off me." ("clench", "narrow", "angry", "mid") + elif what == "breasts": + $ mouse_slap() + if random_number == 1: + her "No touching!" ("open", "narrow", "angry", "L") + elif random_number == 2: + her "Bad [genie_name]!" ("annoyed", "happyCl", "angry", "L", cheeks="blush") + elif random_number == 3: + her "Hands to yourself." ("clench", "base", "angry", "R") + elif random_number == 4: + her "Cut it out.." ("open", "narrow", "angry", "mid") + elif random_number == 5: + her "Hands off me." ("mad", "wide", "angry", "mid") + elif what == "vagina": + $ mouse_slap() + if random_number == 1: + her "Stop that!" ("angry", "wide", "angry", "mid") + elif random_number == 2: + her "[genie_name]!" ("open", "narrow", "angry", "L") + elif random_number == 3: + her "Unhand me.." ("mad", "wide", "angry", "mid") + elif random_number == 4: + her "Stop it please.." ("open", "happyCl", "angry", "mid", cheeks="blush") + elif random_number == 5: + her "Hands off me." ("clench", "narrow", "angry", "mid") + return + +label her_reaction_equip(item): + ### Add specific clothing reactions here. + # if item == : + # her "This looks awesome! I'll wear this with pride!" + return + +label her_reaction_equip_fail(item): + ### Add specific clothing reactions here. + # if item == : + # her "I won't wear because!" + # else: + # + + $ random_number = renpy.random.randint(1, 5) + + if random_number == 1: + her "I am not wearing that..." ("annoyed", "base", "angry", "down") + elif random_number == 2: + her "Thanks. but no thanks..." ("annoyed", "happyCl", "angry", "R") + elif random_number == 3: + her "You actually think I'd put on something like that?" ("annoyed", "wide", "angry", "mid") + elif random_number == 4: + her "I'm not some Slytherin skank [genie_name], ask them to humiliate themselves for your amusement..." ("open", "narrow", "angry", "L") + elif random_number == 5: + her "This is too much." ("annoyed", "narrow", "angry", "R") + + return + +label her_reaction_unequip(item): + ### Example + # if item.type == "panties": + # if her_whoring > 15: + # her "You want to see my snatch?" + # her "You got it [genie_name]!" + # + return + +label her_reaction_unequip_fail(item): + $ random_number = renpy.random.randint(1, 3) + + if item.type == "panties": + if random_number == 1: + her "I'm not gonna flash you anything!" ("clench", "narrow", "angry", "mid") + her "{size=-4}Pervert..{/size}" ("annoyed", "narrow", "angry", "R") + elif random_number == 2: + her "Take off my panties?! No way!" ("clench", "narrow", "angry", "mid") + her "" ("annoyed", "narrow", "angry", "down") + elif random_number == 3: + her "I am not taking off my panties!" ("clench", "narrow", "angry", "mid") + her "" ("annoyed", "narrow", "angry", "mid") + + elif item.type == "bra": + if random_number == 1: + her "I'm not gonna flash you anything!" ("clench", "narrow", "angry", "mid") + her "{size=-4}Pervert..{/size}" ("annoyed", "narrow", "angry", "R") + elif random_number == 2: + her "Take off my bra?! No way!" ("clench", "narrow", "angry", "mid") + her "" ("annoyed", "narrow", "angry", "down") + elif random_number == 3: + her "I am not taking off my bra!" ("clench", "narrow", "angry", "mid") + her "" ("annoyed", "narrow", "angry", "mid") + + elif item.type == "top": + her "Take my top off? Are you crazy?" ("annoyed", "narrow", "angry", "L") + + elif item.type == "bottom": + her "Take my bottoms off so you can ogle my ass? No thank you." ("open", "narrow", "angry", "mid") + return + +label her_reaction_equip_outfit(item): + ### Add specific Outfit reactions here. + + ######################## + ## Default Schoolgirl ## + ######################## + if item == her_outfit_default: + gen "Could you put on your regular school uniform?" ("base", xpos="far_left", ypos="head") + if her_whoring < 10: + her "Of course, [genie_name]." ("open", "base", "base", "mid") + her "Let me go and change real quick..." ("soft", "base", "base", "R") + elif her_whoring < 19: + her "Alright, [genie_name]." ("base", "base", "base", "mid") + her "Let me go and change real quick..." ("open", "base", "base", "R") + elif her_whoring < 22: + her "Are you sure, [genie_name]?" ("open", "base", "base", "mid") + her "My regular school uniform..." ("soft", "base", "base", "R") + her "You don't even want me to remove my tie or show off any cleavage?" ("open", "squint", "worried", "mid") + gen "No, [hermione_name]... No cleavage today." ("base", xpos="far_left", ypos="head") + her "(Is he up to something?)" ("normal", "narrow", "base", "R") + her "(Maybe this is a test of some sort...)" ("clench", "squint", "base", "stare") + her "Okay then, let me change it real quick." ("clench", "squint", "base", "R") + else: #22+ + her "That old thing?" ("clench", "base", "base", "mid") + her "Is this some silly joke, [genie_name]?" ("annoyed", "narrow", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(I don't know...{w=0.3} Is it?)" ("base", xpos="far_left", ypos="head") + her "This is unacceptable!" ("open", "closed", "annoyed", "mid") + her "It doesn't even show any skin!" ("clench", "closed", "annoyed", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + her "It's an insult to my breast, [genie_name]!!!" ("open", "squint", "annoyed", "mid") + gen "*Gasps* {w=0.9}I would never... [hermione_name]!" ("angry", xpos="far_left", ypos="head") + + $ temp_word = renpy.random.choice(["marvellous", "magnificent", "breath-taking", "wonderful", "spectacular", "sensational", "glorious", "beautiful", "lovely", "bananas"]) + + gen "Your tits are [temp_word]!" ("angry", xpos="far_left", ypos="head") + + her "And yet you want me to wear those... rags!" ("annoyed", "base", "annoyed", "mid") + gen "You going to wear it or not?" ("base", xpos="far_left", ypos="head") + her "*Ugh*, fine! Let me change it real quick." ("upset", "closed", "annoyed", "mid") + + ############################### + ## Clear Day (School no vest)## + ############################### + elif item == her_outfit_s_clearday: + gen "Could you wear your school uniform for me? But leave the vest off." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "Certainly, [genie_name]." ("open", "squint", "base", "mid") + her "I'd usually only take it off if it's hot outside... When it isn't, I always make a point to wear the vest." ("normal", "closed", "base", "mid") + her "But you are the headmaster, after all, so I'll wear it without the vest if I must." ("open", "closed", "base", "mid") + her "Let me just go and change, [genie_name]." ("open", "base", "base", "R") + elif her_whoring < 13: + her "Alright, [genie_name]." ("open", "squint", "base", "mid") + her "Let me go and change it real quick." ("soft", "base", "base", "R") + elif her_whoring < 22: + her "Of course, [genie_name]." ("base", "squint", "base", "mid") + her "I will just change it right here if you don't mind..." ("open", "closed", "base", "mid") + else: #22+ + her "Just my school shirt and tie?" ("open", "base", "base", "mid") + gen "Yes, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Do you want me to tie the shirt around my breasts?" ("base", "narrow", "base", "mid") + gen "No, put it on properly." ("base", xpos="far_left", ypos="head") + her "Properly, [genie_name]?" ("annoyed", "squint", "worried", "mid") + gen "You know, buttons, and everything." ("base", xpos="far_left", ypos="head") + her "Can I leave some buttons open, [genie_name]?" ("open", "squint", "worried", "mid") + gen "I'm afraid not, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Okay then... Let me just change it real quick." ("annoyed", "narrow", "base", "R") + + ######################################################## + ## Clear Night (Jeans and muggle top with vest) ## + ######################################################## + elif item == her_outfit_s_clearnight: + gen "Could you wear your normal clothing, the one with jeans and the top with the vest?" ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "Of course!" ("base", "happy", "base", "mid") + her "You should've seen the look on Malfoy's face when he saw me buy it in a muggle shop." ("smile", "closed", "base", "mid") + her "It was right outside the leaky cauldron you see." ("crooked_smile", "squint", "base", "R") + her "He looked as if he had bit into a--" ("smile", "happyCl", "base", "mid") + gen "I don't need your life story, just put it on..." ("base", xpos="far_left", ypos="head") + her "*Hmph*... Fine." ("upset", "squint", "base", "mid") + elif her_whoring < 13: + her "OK, [genie_name]." ("base", "base", "base", "mid") + her "Let me put it on." ("open", "happy", "base", "mid") + elif her_whoring < 22: + her "Just my regular muggle clothing, [genie_name]?" ("soft", "squint", "base", "mid") + gen "Indeed." ("base", xpos="far_left", ypos="head") + her "If you say so..." ("open", "base", "base", "R") + else: #22+ + her "My muggle clothing, [genie_name]?" ("open", "squint", "base", "L") + gen "Yeah, that one!" ("base", xpos="far_left", ypos="head") + her "It's a bit... Too normal don't you think?" ("soft", "squint", "base", "mid") + gen "I don't see how that's a bad thing..." ("base", xpos="far_left", ypos="head") + her "Alright then... Let me put it on real quick." ("open", "narrow", "base", "down") + + ################################ + ## Snowy (Jeans and pullover) ## + ################################ + elif item == her_outfit_s_snow: + gen "Could you put on your regular clothing, the one with jeans and pullover?" ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "As you wish, [genie_name]." ("base", "squint", "base", "mid") + her "I do love wearing it." ("base", "happyCl", "base", "mid") + gen "Why's that?" ("base", xpos="far_left", ypos="head") + her "My mother made it for me." ("base", "happy", "base", "R") + gen "I see...{w} Is she as hot--" ("base", xpos="far_left", ypos="head") + her "Let me go and change real quick." ("soft", "happy", "base", "R") + elif her_whoring < 13: + her "Glad you're caring about my health [genie_name]... This office does get a little bit cold sometimes." ("base", "closed", "base", "mid") + gen "Ah yes... Your health is important... I wouldn't be able to summon you if you caught a cold, would I?" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "squint", "base", "mid") + her "I'll just go and change it then... [genie_name]." ("open", "base", "base", "R") + elif her_whoring < 22: + her "My mother made that jumper for me you know..." ("open", "closed", "base", "mid") + her "I wonder what she'd say if she knew I rarely wear it anymore..." ("soft", "closed", "base", "mid") + gen "She'd probably be proud that you're not relying on her giving you clothes anymore." ("base", xpos="far_left", ypos="head") + her "*Hmm*... Somehow I doubt that..." ("normal", "squint", "base", "R") + else: #22+ + her "That old thing?" ("annoyed", "base", "base", "mid") + her "It's a bit boring don't you think?" ("open", "squint", "base", "R") + gen "I think you look great in it!" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Alright then." ("soft", "narrow", "base", "mid") + + ########################################## + ## Overcast (School skirt and pullover) ## + ########################################## + elif item == her_outfit_s_overcast: + gen "Could you put on your regular clothing, the one with the school skirt and pullover?" ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "The pullover does go well with the school skirt don't you think?" ("base", "squint", "base", "mid") + gen "It would look good even without the skirt on in my opinion." ("base", xpos="far_left", ypos="head") + her "How nice, I'll let my mother know you said--" ("base", "closed", "base", "mid", cheeks="blush") + her "Wait, what did you say?" ("soft", "wide", "base", "mid", cheeks="blush") + gen "I said it looks good." ("base", xpos="far_left", ypos="head") + her "Oh... Okay then..." ("open", "happy", "base", "mid") + her "Give me a moment to let me change." ("open", "base", "base", "R") + elif her_whoring < 13: + her "The skirt and pullover?" ("open", "squint", "base", "mid") + gen "That's what I just said..." ("base", xpos="far_left", ypos="head") + her "Okay, just making sure." ("soft", "squint", "base", "mid") + her "One moment please..." ("base", "base", "base", "R") + elif her_whoring < 22: + her "Is it cold in here?" ("open", "squint", "base", "L") + her "I guess I didn't notice..." ("normal", "base", "base", "down") + her "One moment..." ("open", "base", "base", "mid") + else: #22+ + her "Skirt and pullover..." ("normal", "squint", "base", "stare") + her "A little bit of home..." ("normal", "squint", "base", "stare") + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Oh... Sorry!" ("base", "base", "base", "mid") + her "One moment..." ("open", "squint", "base", "mid") + + ##################################### + ## Rainy (School outfit with cloak)## + ##################################### + elif item == her_outfit_s_rain: + gen "Could you put on your regular school outfit, and your cloak as well?" ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "I wanted to talk to you about this actually..." ("open", "closed", "base", "mid") + gen "(Oh, here we go...)" ("base", xpos="far_left", ypos="head") + her "The cloak doesn't cover the head so when it rains it just ends up in your hair." ("annoyed", "squint", "base", "mid") + her "I always end up having to dry it using magic, making it go all frizzy." ("upset", "narrow", "base", "R") + gen "Isn't your hair already--" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "mid") + gen "I mean... great point [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Thank you..." ("base", "closed", "base", "mid") + gen "Now. can you put it on?" ("base", xpos="far_left", ypos="head") + her "...{w=0.4} Fine..." ("normal", "base", "base", "R") + elif her_whoring < 13: + her "Certainly, [genie_name]..." ("base", "base", "base", "mid") + her "Just let me go change real quick." ("open", "base", "base", "R") + elif her_whoring < 22: + her "You suddenly want me to cover up now?" ("angry", "narrow", "base", "R") + menu: + "\"Yes, your body disgusts me and I'm doing everyone a favour...\"": + her "What!?" ("clench", "wide", "base", "mid") + "\"Of course not...\"": + gen "I'd just like you to wear it... Is that so much to ask?" ("base", xpos="far_left", ypos="head") + her "I guess not..." ("upset", "base", "base", "R") + gen "Don't be silly... Just put it on..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "mid") + her "Alright..." ("open", "narrow", "base", "mid") + else: #22+ + her "*Hmm*... I don't really like wearing the cloak..." ("upset", "base", "base", "down") + gen "Why's that?" ("base", xpos="far_left", ypos="head") + gen "(As if I don't know the answer...)" ("base", xpos="far_left", ypos="head") + her "It covers all the good bits!" ("soft", "closed", "annoyed", "mid") + gen "Really? It doesn't look like it does..." ("base", xpos="far_left", ypos="head") + her "What do you mean? You can barely see any--" ("annoyed", "narrow", "annoyed", "mid") + gen "Your face is perfectly visible..." ("base", xpos="far_left", ypos="head") + her "Oh... Such a charmer..." ("base", "squint", "annoyed", "R") + her "Well... Since you're putting it that way..." ("smile", "wink", "base", "mid") + her "" ("smile", "base", "base", "mid") + + ################### + ## Pajama Outfit ## + ################### + elif item == her_outfit_pajama: + gen "Could you put on your Pyjamas for me?" ("base", xpos="far_left", ypos="head") + if game.daytime: + her "My pyjamas?" ("annoyed", "base", "worried", "mid") + her "But it's the middle of the day!" ("clench", "base", "worried", "mid") + gen "So?" ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "base", "base", "mid") + her "Alright fine, I'm not going to argue with you..." ("open", "squint", "worried", "R") + else: + her "My pyjamas?" ("open", "base", "base", "mid") + if her_whoring < 13: + her "You want me to sleep in here?" ("angry", "squint", "base", "mid") + else: #13+ + her "Am I supposed to sleep over tonight?" ("open", "squint", "base", "mid") + gen "Of course not..." ("base", xpos="far_left", ypos="head") + gen "I'd just like you to put it on." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "mid") + her "Alright then..." ("open", "base", "base", "mid") + + ######################## + ## Cheerleader Normal ## + ######################## + elif item == her_outfit_cheerleader_1: #Req 10 whoring + gen "Could you wear the cheerleader outfit for me?" ("base", xpos="far_left", ypos="head") + if her_whoring < 19: + her "Gryffindor colours I presume?" ("open", "closed", "base", "mid") + gen "We'll see..." ("base", xpos="far_left", ypos="head") + her "...{w=0.4} Fine." ("annoyed", "closed", "base", "mid") + elif her_whoring < 22: + her "*Hmm*... Alright then..." ("base", "happy", "worried", "R") + her "I'll just change it here shall I?" ("base", "narrow", "base", "mid") + gen "That's the spirit." ("base", xpos="far_left", ypos="head") + else: #22+ + $ random_number = renpy.random.randint(1, 3) + her "That thing is so silly..." ("base", "squint", "base", "R") + her "You sure you don't want to get a giant lion's head to go with it?" ("crooked_smile", "narrow", "base", "mid") + if random_number == 1: + her "Or perhaps some Raven's feathers?!" ("smile", "narrow", "base", "R") + elif random_number == 2: + her "Or some Snake fangs?!" ("smile", "narrow", "base", "R") + elif random_number == 3: + her "Or face paint, so I could look like a badger?!" ("smile", "narrow", "base", "R") + gen "I mean, if I could find something like that, sure!" ("base", xpos="far_left", ypos="head") + her "You can't be serious, [genie_name]!" ("open", "wide", "worried", "stare") + gen "Wear it, or I will have you go naked!" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "closed", "base", "mid") + her "{size=-5}(How exciting!){/size}" ("base", "closed", "base", "mid", cheeks="blush") + her "I will wear it if I absolutely have to,..." ("open", "squint", "base", "mid", cheeks="blush") + her "{size=-5}Do I?{/size}" ("grin", "base", "base", "L", cheeks="blush") + gen "Yes." ("base", xpos="far_left", ypos="head") + her "*Tzzz--* Your loss..." ("annoyed", "base", "base", "R") + + ###################### + ## Cheerleader Lewd ## + ###################### + elif item == her_outfit_cheerleader_2: #Req 16 whoring (top) + gen "Could you put on the cheerleader outfit for me?" ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "Of course!" ("smile", "base", "base", "mid") + gen "Great, here you go!" ("base", xpos="far_left", ypos="head") + her "[genie_name], did you hand me the wrong outfit?" ("open", "squint", "base", "mid", cheeks="blush") + gen "Let me see..." ("base", xpos="far_left", ypos="head") + gen "Looks correct to me..." ("base", xpos="far_left", ypos="head") + her "[genie_name]... This is not the official cheerleader outfit..." ("soft", "narrow", "base", "mid") + gen "Oh, I see why you were confused then... Yes. this one has indeed had some improvements." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "squint", "base", "R") + gen "So, will you put it on?" ("base", xpos="far_left", ypos="head") + her "Alright, fine..." ("angry", "squint", "base", "mid") + else: #22+ + her "Of course!" ("smile", "happy", "base", "mid") + gen "Excellent, here you are..." ("base", xpos="far_left", ypos="head") + her "How naughty... Although I doubt you'd be able to focus on the match if the cheerleaders wore these..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "Good point..." ("base", xpos="far_left", ypos="head") + gen "I'm sure people would get excited..." ("base", xpos="far_left", ypos="head") + her "I'm sure they would..." ("base", "squint", "base", "R") + her "Go-Go Gryffindor!" ("smile", "squint", "base", "mid") + + ################# + ## Fishnet Outfit + ################# + elif item == her_outfit_fishnet: #Req 19 (panties, top) + gen "Could you please wear--" ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "A fishnet outfit?" ("angry", "squint", "base", "down") + her "[genie_name]... Isn't this a bit..." ("annoyed", "squint", "base", "mid") + gen "A bit what?" ("base", xpos="far_left", ypos="head") + her "Well, it's fetish gear, isn't it?" ("open", "base", "base", "R", cheeks="blush") + gen "I'd say it's closer to lingerie than fetish gear." ("base", xpos="far_left", ypos="head") + her "*Hmm*... Alright fine I'll wear it then..." ("annoyed", "closed", "base", "mid") + else: #22+ + her "A fishnet outfit?" ("soft", "squint", "base", "down") + her "*Hmm*... My nipples would stick right through this..." ("base", "narrow", "base", "down", cheeks="blush") + gen "I think that's the point." ("base", xpos="far_left", ypos="head") + her "Alright, just give me a moment and I'll put it on for you..." ("soft", "base", "base", "mid", cheeks="blush") + + ###################### + ## Fishnet One-Piece ## + ###################### + elif item == her_outfit_fishnet_onepiece: #Req 19 (top) + gen "Could you put on the fishnet one-piece for me?" ("base", xpos="far_left", ypos="head") + her "The fishnet one-piece?" ("angry", "base", "base", "mid", cheeks="blush") + if her_whoring < 22: + her "*Hmm*... Lingerie..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "Yep..." ("base", xpos="far_left", ypos="head") + her "And I suppose I shouldn't ask where you got such an outfit from..." ("open", "narrow", "base", "down", cheeks="blush") + gen "Probably shouldn't..." ("base", xpos="far_left", ypos="head") + her "Alright..." ("soft", "narrow", "base", "down", cheeks="blush") + her "Well I suppose I'll wear it if I have to..." ("base", "closed", "base", "mid", cheeks="blush") + else: #22+ + her "Lingerie?! How dare you [genie_name]!" ("angry", "narrow", "annoyed", "down", cheeks="blush") + gen "..." ("angry", xpos="far_left", ypos="head") + her "Why didn't you ask me to put this on sooner?" ("angry", "narrow", "annoyed", "mid", cheeks="blush") + gen "Listen here you--" ("angry", xpos="far_left", ypos="head") + her "*Giggles*..." ("grin", "squint", "base", "mid", cheeks="blush") + + ################## + ## Latex Outfit ## + ################## + elif item == her_outfit_latex: #Req 19 (top) + gen "Could you put on this latex outfit for me?" ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "Latex outfit?" ("open", "squint", "base", "mid") + her "*Whoa*... This is skin tight!" ("clench", "narrow", "base", "down", cheeks="blush") + gen "I know! Glad you're as excited as I am!" ("base", xpos="far_left", ypos="head") + her "I... How do you put this on?" ("disgust", "base", "base", "mid", cheeks="blush") + gen "Using lots of patience I reckon..." ("base", xpos="far_left", ypos="head") + her "As if you have any of that..." ("open", "base", "annoyed", "R") + her "Well... Here it goes." ("open", "base", "base", "mid", cheeks="blush") + else: #22+ + her "*Hmm*... Well I can't say something as skin tight as this doesn't excite me a little bit..." ("base", "narrow", "base", "mid", cheeks="blush") + her "I might as well not be wearing anything with how little this leaves to the imagination." ("smile", "narrow", "base", "mid", cheeks="blush") + gen "Like that's a bad thing..." ("base", xpos="far_left", ypos="head") + her "I knew you'd say that... Alright then, give me a moment..." ("angry", "base", "base", "R", cheeks="blush") + + ####################### + ## Slutty Schoolgirl ## + ####################### + elif item == her_outfit_slutty_schoolgirl: #Req 19 (top, Bottom) + gen "Could you put on this school uniform for me?" ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "My school uniform?" ("angry", "base", "worried", "mid") + her "Is this some sort of test?" ("clench", "squint", "base", "mid") + gen "No, not a test. I'd just like you to put it on..." ("base", xpos="far_left", ypos="head") + her "(*Hmm*... I feel like he's trying to trick me...)" ("normal", "base", "base", "R") + gen "Just put it on..." ("base", xpos="far_left", ypos="head") + her "Alright then..." ("open", "squint", "base", "mid") + her "Oh... I see... That makes more sense.)" ("open", "base", "base", "down", cheeks="blush") + gen "Is there something wrong?" ("base", xpos="far_left", ypos="head") + her "No, it's all good... Just give me a moment..." ("open", "base", "base", "mid", cheeks="blush") + her "" ("base", "base", "base", "mid", cheeks="blush") + else: #22+ + her "My school uniform?" ("open", "squint", "worried", "mid") + her "But that thing is so boring..." ("clench", "closed", "worried", "mid") + gen "Not this one..." ("base", xpos="far_left", ypos="head") + her "Oh... That one..." ("open", "base", "base", "down", cheeks="blush") + her "Well I suppose I could put that one on..." ("base", "base", "base", "R", cheeks="blush") + her "One moment..." ("base", "base", "base", "mid") + + ################## + ## Witch Outfit ## + ################## + elif item == her_outfit_witch: #Req 10 (top) + gen "Put on this witch outfit for me will you?" ("base", xpos="far_left", ypos="head") + if her_whoring < 13: + her "Witch outfit?" ("open", "squint", "base", "mid") + gen "The one I have right here." ("base", xpos="far_left", ypos="head") + her "Sir, this is not a witch outfit..." ("disgust", "narrow", "base", "mid") + gen "Of course it is... I see this kind of outfit all the time in the shops." ("base", xpos="far_left", ypos="head") + her "In the... What shops exactly?" ("angry", "narrow", "base", "mid") + gen "Next to the nurse outfits." ("base", xpos="far_left", ypos="head") + her "Sir... Are you talking about the Cosplay section?" ("clench", "squint", "base", "mid") + gen "That's the one!" ("base", xpos="far_left", ypos="head") + her "Figures..." ("disgust", "closed", "base", "mid") + her "I would've thought an actual wizard would get mad about the muggle interpretation of a witch..." ("open", "narrow", "base", "R") + gen "I think it's flattering." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "closed", "base", "mid") + gen "So..." ("base", xpos="far_left", ypos="head") + her "So?" ("upset", "base", "base", "mid") + gen "You putting it on or what?" ("base", xpos="far_left", ypos="head") + her "If I have to..." ("normal", "squint", "base", "R", cheeks="blush") + gen "You do." ("base", xpos="far_left", ypos="head") + her "Fine..." ("open", "base", "base", "down", cheeks="blush") + her "Give me a moment to let me change." ("open", "base", "base", "R") + elif her_whoring < 22: + her "Witch outfit?" ("soft", "squint", "base", "mid") + gen "The one I have right here." ("base", xpos="far_left", ypos="head") + her "Oh, I see..." ("angry", "narrow", "base", "down", cheeks="blush") + her "Of course you'd want me to wear something like that..." ("clench", "closed", "base", "mid", cheeks="blush") + her "To think it'd be a regular witches outfit..." ("open", "narrow", "base", "R", cheeks="blush") + her "Well... I suppose I could put it on." ("normal", "base", "base", "down", cheeks="blush") + her "One moment please..." ("normal", "squint", "base", "mid", cheeks="blush") + else: #22+ + her "Witch outfit?" ("open", "squint", "base", "mid") + gen "The one I have right here." ("base", xpos="far_left", ypos="head") + her "Right..." ("grin", "base", "base", "down", cheeks="blush") + her "Well... While real witches' outfits don't look like this I do like this muggle interpretation..." ("crooked_smile", "narrow", "base", "mid", cheeks="blush") + gen "Actually I had this custom made..." ("base", xpos="far_left", ypos="head") + her "*Hmm*... You did, did you?" ("grin", "narrow", "base", "mid", cheeks="blush") + her "Looks like someone's gotten their hands on a particular kind of muggle magazine..." ("crooked_smile", "wink", "base", "mid") + gen "No idea what you're talking about..." ("base", xpos="far_left", ypos="head") + gen "Just put it on will you?" ("base", xpos="far_left", ypos="head") + her "Of course [genie_name], as you wish..." ("base", "narrow", "base", "mid", cheeks="blush") + + ####################### + ## Lara Croft Outfit ## + ####################### + elif item == her_outfit_croft: #Req 10 (top, bottom) + gen "Could you put on this archaeologist outfit for me?" ("base", xpos="far_left", ypos="head") + her "A what?" ("open", "squint", "base", "mid") + gen "This one..." ("base", xpos="far_left", ypos="head") + if her_whoring < 13: + gen "Worn by the great Lara Croft!" ("base", xpos="far_left", ypos="head") + her "Someone you know?" ("soft", "base", "base", "mid") + gen "Indeed... I'm a massive fan." ("base", xpos="far_left", ypos="head") + gen "(Especially of the fan service...)" ("base", xpos="far_left", ypos="head") + her "Must be a great woman then, seeing your reaction." ("base", "closed", "base", "mid") + gen "A great woman indeed! Went cave exploring with her a couple times..." ("grin", xpos="far_left", ypos="head") + gen "Good times..." ("base", xpos="far_left", ypos="head") + her "I wonder why I haven't heard of her..." ("angry", "base", "base", "R") + her "Well... I suppose I could wear it since you speak so highly of her." ("open", "closed", "base", "mid") + her "Give me a moment to let me change." ("open", "base", "base", "R") + elif her_whoring < 22: + gen "Lara Croft looks stunning in it so I think you'd probably fill it just as well." ("base", xpos="far_left", ypos="head") + her "Fill it?" ("angry", "squint", "base", "mid") + gen "Fit it..." ("base", xpos="far_left", ypos="head") + her "I guess I'll have to look up this Archaeologist..." ("open", "happy", "base", "R") + gen "Please do, she's got a lot of material out there for you to enjoy." ("base", xpos="far_left", ypos="head") + gen "\"Goons raid her\" is one of my favourites." ("base", xpos="far_left", ypos="head") + her "Sounds fascinating." ("open", "squint", "base", "mid") + her "Well, hopefully I'll do her clothing justice." ("open", "base", "base", "down") + her "Just give me a minute to put it on..." ("base", "base", "base", "mid") + else: #22+ + gen "I'm sure Lara Croft would love to see someone wear her famous outfit." ("base", xpos="far_left", ypos="head") + gen "Although last time I saw her, she couldn't wait to take it off..." ("base", xpos="far_left", ypos="head") + her "Take it off?" ("open", "squint", "base", "R", cheeks="blush") + gen "Indeed... She's quite famous in certain circles you know." ("base", xpos="far_left", ypos="head") + gen "Let's just say if you're anyone in the world of archaeology you've heard about Lara Croft..." ("base", xpos="far_left", ypos="head") + her "Right..." ("base", "narrow", "base", "down", cheeks="blush") + gen "I'd delve her cavern any--" ("base", xpos="far_left", ypos="head") + her "Okay, okay... Just don't call me Lara once I put it on..." ("clench", "narrow", "base", "mid", cheeks="blush") + + ####################### + ## Heart Slut Outfit ## + ####################### + elif item == her_outfit_hslut: #Req 19 (top, panties, bra) + gen "Put on this burlesque outfit for me will you?" ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "A burlesque outfit?" ("open", "base", "base", "mid", cheeks="blush") + gen "Yes, this one to be exact..." ("base", xpos="far_left", ypos="head") + her "*Hmm*... {w=0.4} Well, I must say it's quite creative..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "You should see those pasties spin..." ("base", xpos="far_left", ypos="head") + her "..." ("clench", "squint", "base", "mid", cheeks="blush") + gen "How 'bout it?" ("base", xpos="far_left", ypos="head") + her "Alright fine... Just give me a moment." ("angry", "squint", "base", "R", cheeks="blush") + her "" ("angry", "squint", "base", "mid", cheeks="blush") + else: #22+ + her "A burlesque outfit?" ("angry", "narrow", "base", "down", cheeks="blush") + her "Strippers wear these, right?" ("open", "closed", "base", "mid", cheeks="blush") + gen "Sometimes..." ("base", xpos="far_left", ypos="head") + her "What do you mean sometimes?" ("soft", "narrow", "base", "mid", cheeks="blush") + gen "Put in on and I'll change that answer to a yes..." ("base", xpos="far_left", ypos="head") + her "How cheeky...{w=0.4} Alright then..." ("base", "narrow", "base", "R", cheeks="blush") + + ####################### + ## Ms. Marvel Outfit ## + ####################### + elif item == her_outfit_msmarv: #Req 10 (top, stockings) + gen "I've got this Cosplay outfit I'd like you to wear." ("base", xpos="far_left", ypos="head") + if her_whoring < 13: + her "Cosplay, [genie_name]?" ("open", "squint", "base", "mid") + gen "Miss Marvel... One of my favourites!" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Well I can certainly see why..." ("disgust", "narrow", "base", "down", cheeks="blush") + her "Alright fine..." ("open", "closed", "worried", "mid", cheeks="blush") + her "Just give me a moment to change." ("normal", "base", "base", "R", cheeks="blush") + elif her_whoring < 22: + her "Cosplay, [genie_name]?" ("angry", "squint", "base", "mid", cheeks="blush") + gen "Yes... A miss Marvel cosplay to be precise." ("base", xpos="far_left", ypos="head") + her "I see..." ("soft", "narrow", "base", "down", cheeks="blush") + her "And why do you want me to wear this cosplay exactly?" ("open", "squint", "base", "R", cheeks="blush") + gen "I believe it would enhance your physical traits." ("base", xpos="far_left", ypos="head") + her "Sorry?" ("annoyed", "squint", "base", "mid") + gen "You heard me..." ("base", xpos="far_left", ypos="head") + her "*Hmm*... Well, I suppose I could put it on..." ("soft", "squint", "base", "R") + her "One moment please..." ("open", "squint", "base", "mid") + her "" ("normal", "squint", "base", "mid") + else: #22+ + her "Cosplay, [genie_name]?" ("base", "squint", "base", "mid") + gen "Yes, this Miss Marvel cosplay..." ("base", xpos="far_left", ypos="head") + her "*Hmm*... My nipples are sure to poke through in this..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "That's the idea..." ("base", xpos="far_left", ypos="head") + her "Well... I guess it can't be helped..." ("open", "closed", "annoyed", "mid", cheeks="blush") + her "I suppose I'll just... *Ehm*... Suit up..." ("open", "squint", "base", "mid", cheeks="blush") + her "" ("base", "squint", "base", "mid", cheeks="blush") + + ################# + ## Tifa Outfit ## + ################# + elif item == her_outfit_tifa: #Req 10 (top, bottom) + gen "Could you put on this Tifa Cosplay outfit?" ("base", xpos="far_left", ypos="head") + if her_whoring < 19: + her "Cosplay, [genie_name]?" ("open", "squint", "base", "mid") + gen "Indeed, a Tifa Lockheart cosplay!" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Can't say I know who that is..." ("normal", "squint", "base", "R") + gen "..." ("base", xpos="far_left", ypos="head") + gen "She's from Final Fantasy..." ("base", xpos="far_left", ypos="head") + her "*Huh*?" ("upset", "happy", "base", "mid") + gen "Sorry... I should've been more specific shouldn't I..." ("base", xpos="far_left", ypos="head") + gen "Final Fantasy Seven is the one you'd probably know her from." ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("clench", "squint", "base", "mid") + gen "Oh... Come on... it was so good it even got a remake!" ("base", xpos="far_left", ypos="head") + gen "And let me tell you... They really did a great job on those assets..." ("base", xpos="far_left", ypos="head") + her "I don't--" ("annoyed", "squint", "base", "mid") + gen "...{w=0.4} Just put it on will you." ("base", xpos="far_left", ypos="head") + her "Oh-- Okay..." ("mad", "squint", "base", "mid") + her "One moment..." ("soft", "squint", "base", "mid") + else: #19+ + her "A Cosplay outfit..." ("base", "squint", "base", "mid") + gen "Indeed, none other than the hottest game babe of 1997!" ("base", xpos="far_left", ypos="head") + her "I see..." ("base", "narrow", "base", "R") + her "Alright then... Just give me a moment to put it on." ("open", "happy", "base", "mid") + + ################################## + ## Teddy Outfit (short nightie) ## + ################################## + elif item == her_outfit_teddy: #Req 16 (top) + gen "Could you put on this nightgown?" ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "This is lingerie..." ("angry", "base", "base", "down", cheeks="blush") + gen "Indeed it is..." ("base", xpos="far_left", ypos="head") + her "Isn't this what couples put on to look sexy for their partner?" ("mad", "narrow", "base", "mid", cheeks="blush") + gen "I mean..." ("base", xpos="far_left", ypos="head") + her "Sir... I'm doing this to help--" ("open", "closed", "annoyed", "mid", cheeks="blush") + gen "Putting this on will help your house." ("base", xpos="far_left", ypos="head") + her "How? You're not exactly giving me any points..." ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "No... But it surely aids with the tasks that do..." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "base", "base", "mid", cheeks="blush") + her "Alright, fine..." ("open", "narrow", "base", "R", cheeks="blush") + her "Just give me a moment to put it on." ("soft", "narrow", "base", "mid", cheeks="blush") + else: #22+ + her "Lingerie..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "Quite observant of you, [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Well I suppose if wearing this helps you build up... *Ehm*..." ("open", "closed", "annoyed", "mid", cheeks="blush") + gen "No, do finish that sentence please." ("base", xpos="far_left", ypos="head") + her "What I meant is... If it means I'll be able to finish my tasks faster..." ("annoyed", "squint", "base", "R", cheeks="blush") + her "Just... I'll just put it on..." ("disgust", "squint", "base", "mid", cheeks="blush") + gen "Good plan..." ("base", xpos="far_left", ypos="head") + her "" ("normal", "squint", "base", "mid", cheeks="blush") + + #################### + ## Nightie Outfit ## + #################### + elif item == her_outfit_nightie: #Req 13 (top) + gen "Can you put on this nightie for me?" ("base", xpos="far_left", ypos="head") + if her_whoring < 19: + her "This is a nightie is it?" ("clench", "narrow", "base", "down", cheeks="blush") + gen "Yep... Completely ordinary nightgown." ("base", xpos="far_left", ypos="head") + her "Nice try... I can see it's see-through." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Oh... Isn't that what they're like normally?" ("base", xpos="far_left", ypos="head") + her "*Sigh*... Whatever... Let's just get this over with..." ("normal", "closed", "annoyed", "mid", cheeks="blush") + her "" ("normal", "base", "annoyed", "mid", cheeks="blush") + elif her_whoring < 22: + her "A nightie you say?" ("open", "squint", "worried", "mid") + gen "Indeed." ("base", xpos="far_left", ypos="head") + her "*Hmm*... Well I suppose I could wear it..." ("normal", "base", "base", "down", cheeks="blush") + her "Just give me a moment to put it on." ("soft", "base", "base", "mid", cheeks="blush") + else: #22+ + her "Not much left for the imagination with this one..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "I mean... We need you to stay modest, don't we?" ("base", xpos="far_left", ypos="head") + gen "Can't be having you stand around naked, that'd be shameful!" ("base", xpos="far_left", ypos="head") + her "Right..." ("normal", "closed", "worried", "mid", cheeks="blush") + her "Well I better put it on then..." ("open", "closed", "base", "mid", cheeks="blush") + her "" ("base", "base", "base", "mid", cheeks="blush") + + ####################### + ## Latex dress Outfit ## + ####################### + elif item == her_outfit_latex_dress: #Req 19 (top) + gen "Put on this latex dress for me." ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "A latex dress?" ("open", "squint", "base", "mid", cheeks="blush") + her "I can't believe you actually want me to wear this..." ("soft", "narrow", "base", "R", cheeks="blush") + her "Fine...{w=0.4} Here it goes..." ("open", "closed", "annoyed", "mid", cheeks="blush") + else: #22+ + her "*Hmm*..." ("base", "narrow", "base", "down", cheeks="blush") + her "And I thought latex gloves were hard to put on..." ("open", "closed", "base", "mid", cheeks="blush") + gen "It's worth it if you don't want to get splashed." ("base", xpos="far_left", ypos="head") + gen "Although maybe you don't mind getting splashed by--" ("base", xpos="far_left", ypos="head") + her "Well...{w=0.4} I suppose I could put it on if you really want me to." ("normal", "squint", "annoyed", "mid", cheeks="blush") + her "One moment...{w=0.4} *Ehm*...{w=0.4} One minute please." ("open", "narrow", "base", "down", cheeks="blush") + + show screen blkfade + with d5 + pause .8 + + her "Alright... Let's see..." + her "It's... Quite tight..." + $ renpy.sound.play("sounds/creaking02.ogg") + pause 1 + her "How am I even supposed to--" + $ renpy.sound.play("sounds/creaking02.ogg") + pause 1 + her "Alright, I think I got it..." + $ renpy.sound.play("sounds/creaking01.ogg") + pause 2 + $ renpy.sound.play("sounds/slap_04.ogg") + her "Ouch!" + + hide screen blkfade + her "" ("angry", "squint", "base", "mid", cheeks="blush") + + ##################### + ## Egyptian Outfit ## + ##################### + elif item == her_outfit_egypt: #Req 19 (top) + gen "Put on this Egyptian-themed outfit for me will you?" ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "Why am I suspecting this is not your ordinary--" ("open", "closed", "worried", "mid") + gen "Here you go..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "squint", "base", "down", cheeks="blush") + her "Why am I not surprised..." ("open", "narrow", "base", "mid", cheeks="blush") + her "Sir, do you actually believe they wear this in Egypt?" ("angry", "narrow", "base", "R") + gen "Of course I do... Quite fashionable when I was there." ("base", xpos="far_left", ypos="head") + gen "I even had a pair of those wristbands myself..." ("base", xpos="far_left", ypos="head") + gen "Couldn't force myself to take them off!" ("base", xpos="far_left", ypos="head") + her "Alright... I guess I'll wear it..." ("open", "closed", "worried", "mid") + her "One moment..." ("soft", "squint", "base", "mid") + else: #22+ + her "Egyptian-themed you say?" ("soft", "happy", "base", "mid") + gen "Yeah, this one right here..." ("base", xpos="far_left", ypos="head") + her "I see..." ("normal", "happy", "base", "down", cheeks="blush") + gen "Cleopatra wore this quite proudly I'll have you know..." ("base", xpos="far_left", ypos="head") + her "Right..." ("soft", "closed", "worried", "mid", cheeks="blush") + her "Well I wouldn't want to displease the great Cleopatra..." ("normal", "base", "base", "R") + her "Hopefully I'll do it justice..." ("open", "squint", "base", "mid", cheeks="blush") + her "One moment please..." ("base", "base", "base", "mid", cheeks="blush") + + ############## + ## Swimsuit ## + ############## + elif item == her_outfit_swimsuit: #Req 13 (top) + gen "I've got this swimsuit I'd like you to wear." ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "A swimsuit..." ("open", "squint", "base", "mid") + her "I guess I could put it on." ("soft", "narrow", "base", "R") + her "Although, it's a bit weird as I assume I'm not going swimming..." ("disgust", "closed", "worried", "mid") + gen "I'm sure we can find a way to get it wet no problem..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "wide", "base", "mid") + her "Why I'm not quite sure what you mean by that..." ("open", "closed", "base", "mid", cheeks="blush") + her "But if I'm expected to put it on for the sake of--" ("soft", "closed", "base", "mid", cheeks="blush") + gen "Just put it on will you?" ("base", xpos="far_left", ypos="head") + her "*Ahem*...{w=0.4} Okay then." ("clench", "narrow", "base", "R", cheeks="blush") + her "Just give me a moment..." ("open", "squint", "base", "mid", cheeks="blush") + else: #22+ + her "A swimsuit..." ("open", "base", "base", "R", cheeks="blush") + her "Are you expecting me to get wet today?" ("open", "closed", "base", "mid", cheeks="blush") + gen "Can never be too careful..." ("base", xpos="far_left", ypos="head") + her "Well... If that's the case then I better put it on..." ("open", "narrow", "base", "R", cheeks="blush") + + ##################### + ## Bioshock Outfit ## + ##################### + elif item == her_outfit_bioshock: #Req 14 (no bra) + gen "Can you put on this Elisabeth Cosplay outfit?" ("base", xpos="far_left", ypos="head") + if her_whoring < 18: + her "A cosplay outfit?" ("open", "base", "base", "mid") + gen "Yep... Ever heard of her?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Can't say that I have." ("upset", "squint", "base", "mid") + gen "She's from a video--" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "mid") + gen "I mean... She's a famous, *ugh*... Witch?" ("base", xpos="far_left", ypos="head") + her "..." ("base", "base", "base", "mid") + gen "(Phew, that was close...)" ("base", xpos="far_left", ypos="head") + her "A corset!" ("clench", "wide", "worried", "down") + gen "*Uh-oh*..." ("base", xpos="far_left", ypos="head") + her "Aren't these supposed to make it really hard to breathe?" ("angry", "closed", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Have you seen your waste-line?" ("base", xpos="far_left", ypos="head") + gen "A corset is hardly going to hinder you from breathing..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "closed", "base", "mid", cheeks="blush") + her "I guess that's true." ("open", "happy", "base", "R", cheeks="blush") + gen "Great... So no complaints then?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... I suppose not..." ("angry", "closed", "base", "mid") + her "..." ("normal", "base", "base", "R") + gen "So... Are you putting it on?" ("base", xpos="far_left", ypos="head") + her "Oh...{w=0.4} Alright..." ("angry", "squint", "base", "mid") + her "" ("base", "squint", "base", "mid") + elif her_whoring < 22: + her "A cosplay..." ("open", "squint", "base", "mid") + her "*Hmm*... I like the necklace." ("soft", "squint", "base", "L") + gen "I like the corset!" ("base", xpos="far_left", ypos="head") + her "Of course you do..." ("normal", "closed", "base", "mid") + her "Alright, I suppose I can put it on..." ("soft", "base", "base", "R") + gen "Wait a second, they forgot the coin purse!" ("base", xpos="far_left", ypos="head") + her "*Huh*?" ("upset", "squint", "base", "mid") + gen "There's supposed to be a coin purse for you to store silver coins in..." ("base", xpos="far_left", ypos="head") + her "Oh... So you don't want me to wear it then?" ("angry", "squint", "base", "mid") + gen "Of course I do... You'll just have to store the coins in a pocket or something..." ("base", xpos="far_left", ypos="head") + her "*Hmm*... There doesn't seem to be any pockets..." ("upset", "narrow", "base", "down") + gen "Well... I'm sure you'll find somewhere to put them." ("base", xpos="far_left", ypos="head") + her "Right..." ("disgust", "narrow", "base", "down") + her "Well... Let's see if I can get into this corset to start with..." ("angry", "squint", "base", "R", cheeks="blush") + her "" ("base", "squint", "base", "mid") + else: #22+ + her "A cosplay..." ("open", "squint", "base", "mid") + gen "Indeed... And she's quite the popular one as well..." ("base", xpos="far_left", ypos="head") + gen "You should see what zone did with her..." ("base", xpos="far_left", ypos="head") + her "Who?" ("soft", "squint", "base", "mid") + gen "*Err*... I meant, you should see the zone she's--" ("base", xpos="far_left", ypos="head") + gen "What I meant to say was..." ("base", xpos="far_left", ypos="head") + gen "Just... Put it on will you?" ("base", xpos="far_left", ypos="head") + her "Alright." ("grin", "narrow", "base", "R") + her "" ("base", "squint", "base", "mid") + + ##################### + ## Yennefer Outfit ## + ##################### + elif item == her_outfit_yennefer: #Req 10 + gen "I got this Yennefer Cosplay that I'd like you to put on." ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "Who?" ("normal", "squint", "base", "mid") + gen "*Sigh*...{w=0.4} Yennefer... {w=0.4} From the witcher." ("base", xpos="far_left", ypos="head") + her "Oh...{w=0.4} Her..." ("open", "squint", "base", "R") + her "(No clue who that is but I better not offend him...)" ("normal", "narrow", "base", "down") + gen "(I guess she picked Triss.)" ("base", xpos="far_left", ypos="head") + her "You... Like this Yennefer character then?" ("clench", "squint", "base", "mid") + gen "(She did pick Triss!)" ("base", xpos="far_left", ypos="head") + gen "I mean... Shouldn't I?" ("base", xpos="far_left", ypos="head") + gen "(I only did the one playthrough... Maybe Triss was the right choice... Should I have save scummed--)" ("base", xpos="far_left", ypos="head") + her "*Err*... No you definitely should..." ("open", "squint", "base", "R") + gen "..." ("base", xpos="far_left", ypos="head") + her "..." ("clench", "narrow", "base", "L") + her "I'll just put it on shall I?" ("angry", "closed", "base", "mid") + gen "*Err*... Yes... You do that..." ("base", xpos="far_left", ypos="head") + her "Okay then." ("base", "closed", "base", "down") + her "" ("base", "base", "base", "down") + else: #22+ + her "This is quite the intricate outfit..." ("angry", "narrow", "base", "down") + gen "A Classy outfit for a classy lady." ("base", xpos="far_left", ypos="head") + her "Oh... Well, thank you..." ("base", "closed", "base", "mid", cheeks="blush") + gen "*Huh*?" ("base", xpos="far_left", ypos="head") + gen "Oh... Yes, put it on for me will you?" ("base", xpos="far_left", ypos="head") + her "As you wish." ("open", "squint", "base", "R", cheeks="blush") + her "One moment..." ("base", "squint", "base", "mid", cheeks="blush") + + ################ + ## Ball Dress ## + ################ + elif item == her_outfit_ball: #Req 14 (no bra) (ball happens on lvl 15) + if not ball_quest.E4_complete: + gen "Could you put on this dress?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... This looks expensive..." ("soft", "squint", "base", "down") + gen "I had it custom made!" ("base", xpos="far_left", ypos="head") + gen "(As if my other purchases haven't been...)" ("base", xpos="far_left", ypos="head") + her "I do like a pearl necklace..." ("soft", "narrow", "base", "down") + gen "I knew it... Well, I'm always happy to give you one as long as you don't tell anyone about it." ("base", xpos="far_left", ypos="head") + gen "We wouldn't want anyone to know the headmaster gave a student a pearl necklace, do we?" ("base", xpos="far_left", ypos="head") + her "Of course." ("open", "closed", "base", "mid") + her "Well, let's put it on then..." ("soft", "happy", "base", "mid") + her "" ("base", "happy", "base", "mid", cheeks="blush") + else: + gen "What did Hermione Granger say when she got to the ball?" ("base", xpos="far_left", ypos="head") + her "{size=-4}This dress...{/size}" ("soft", "narrow", "base", "down", cheeks="blush") + gen "*Gag* *Cough* *Cough*" ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "base", "down", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Well, I thought it was funny..." ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "base", "down", cheeks="blush") + gen "Miss Granger?" ("base", xpos="far_left", ypos="head") + gen "(Looks like she's zoned out...)" ("base", xpos="far_left", ypos="head") + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "*Huh*?" ("angry", "squint", "base", "mid", cheeks="blush") + her "Oh... Sorry sir, let me just put it on..." ("open", "base", "base", "R", cheeks="blush") + gen "Never mind the dress, what about my joke?" ("base", xpos="far_left", ypos="head") + her "Sorry?" ("soft", "base", "base", "mid", cheeks="blush") + gen "...{w=0.4} Whatever... Just put it on..." ("base", xpos="far_left", ypos="head") + her "Alright." ("base", "base", "base", "mid", cheeks="blush") + + ################## + ## Bunny Outfit ## + ################## + elif item == her_outfit_bunny: #Req 19 (top, stockings) + gen "I've got this bunny costume I'd like you to wear." ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "A bunny costume?" ("soft", "squint", "base", "mid") + her "Where do you even get these ideas from?" ("angry", "narrow", "base", "stare") + gen "In some junk mail, showing a mansion full of attractive and scantily clad women." ("base", xpos="far_left", ypos="head") + her "I see..." ("soft", "closed", "base", "mid", cheeks="blush") + her "It does look a little bit tight, but I suppose I'll wear it for you..." ("open", "narrow", "base", "down", cheeks="blush") + gen "(Hugh success!)" ("grin", xpos="far_left", ypos="head") #Like Hugh Hefner + else: # 22+ + her "A bunny costume?" ("open", "base", "base", "mid", cheeks="blush") + gen "I thought we could get it on like rabbits." ("base", xpos="far_left", ypos="head") + her "*Huh*? Get what on?" ("annoyed", "squint", "base", "mid") + gen "*Heh-heh*... You know..." ("grin", xpos="far_left", ypos="head") + her "..." ("annoyed", "base", "base", "mid") + her "..." ("annoyed", "squint", "base", "stare", cheeks="blush") + gen "(She knows...)" ("grin", xpos="far_left", ypos="head") + her "Sir, I'm--" ("open", "closed", "base", "mid", cheeks="blush") + gen "Just put the thing on." ("base", xpos="far_left", ypos="head") + her "Alright..." ("open", "narrow", "base", "down", cheeks="blush") + + ############################### + ## Poker Outfit (token shop) ## + ############################### + elif item == her_outfit_poker: #Req 19 (panties, bra) + gen "I spent some tokens getting this outfit for you..." ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "*Whoa*..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "I know... Quite intricate is it not?" ("base", xpos="far_left", ypos="head") + her "You... you want me to wear this?" ("normal", "closed", "base", "mid", cheeks="blush") + gen "I mean, I am a winner after all..." ("base", xpos="far_left", ypos="head") + her "*Hmm*... I'm not so sure about that..." ("soft", "narrow", "base", "R", cheeks="blush") + gen "Sounds like jealousy to--" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "mid") + gen "*Ahem*... Just put it on will you?" ("base", xpos="far_left", ypos="head") + her "...{w=0.4} Fine." ("base", "narrow", "base", "R", cheeks="blush") + else: #22+ + her "You won this did you?" ("open", "narrow", "base", "down") + gen "Indeed." ("base", xpos="far_left", ypos="head") + her "How do I know you didn't just have it made for me?" ("open", "narrow", "base", "mid", cheeks="blush") + gen "You think I'd be able to come up with something like this?" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "R", cheeks="blush") + gen "Okay... I probably would..." ("base", xpos="far_left", ypos="head") + gen "You're just going to have to trust me on this one..." ("base", xpos="far_left", ypos="head") + her "*Hmm*... Well then, it'd be a shame if the prize went to waste..." ("base", "narrow", "base", "mid", cheeks="blush") + her "Just give me a moment to put it on..." ("open", "base", "base", "mid", cheeks="blush") + + ################# + ## Maid Outfit ## + ################# + elif item == her_outfit_maid: #Req 4 + gen "Could you put on this maid's outfit?" ("base", xpos="far_left", ypos="head") + if her_whoring < 13: + her "You want me to clean your office now too?" ("clench", "narrow", "base", "mid") + gen "Well... Let's just have you wear the outfit for now..." ("base", xpos="far_left", ypos="head") + her "*Ugh*... Maid's outfits are so silly..." ("disgust", "narrow", "base", "mid") + her "Well... Here it goes I guess..." ("disgust", "narrow", "base", "R") + elif her_whoring < 22: + her "*Hmm*..." ("upset", "narrow", "base", "down") + her "I presume your reason for wanting me to put it on isn't related to cleaning..." ("open", "narrow", "base", "mid", cheeks="blush") + gen "I mean..." ("base", xpos="far_left", ypos="head") + her "Figured..." ("open", "closed", "worried", "mid", cheeks="blush") + her "Oh... Well I guess it can't be helped..." ("soft", "narrow", "base", "down", cheeks="blush") + her "One moment please..." ("open", "narrow", "base", "mid", cheeks="blush") + else: #22+ + her "*Hmm*... Is it one of those \"Sexy\" maid's outfits?" ("soft", "narrow", "base", "down", cheeks="blush") + gen "It depends..." ("base", xpos="far_left", ypos="head") + her "What is that supposed to mean?" ("clench", "squint", "base", "mid", cheeks="blush") + gen "It depends on who wears it... I think I'd be able to make a judgment whilst seeing you with it on." ("base", xpos="far_left", ypos="head") + her "Charmed...{w} Alright, just let me get changed so we can find out..." ("base", "narrow", "base", "R", cheeks="blush") + her "" ("base", "squint", "base", "mid", cheeks="blush") + + ######################### + ## Sling Bikini Outfit ## + ######################### + elif item == her_outfit_bikini3: #Req 17 (panties, bra) + gen "Put on this bikini for me will you?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... A bikini you say?" ("normal", "narrow", "base", "R") + gen "Yep, this one right here..." ("base", xpos="far_left", ypos="head") + her "Right...{w} Why would I even expect something normal?" ("angry", "narrow", "base", "down", cheeks="blush") + gen "Looks normal to me..." ("base", xpos="far_left", ypos="head") + her "It's held up by chains, How is that normal to you?" ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "I mean, perhaps you wouldn't see it at the beach exactly..." ("base", xpos="far_left", ypos="head") + her "Then where would you?" ("normal", "narrow", "base", "R", cheeks="blush") + gen "A strip--{w=0.3} I mean... The Vegas strip!" ("base", xpos="far_left", ypos="head") + her "They wear these on the Vegas strip do they?" ("open", "narrow", "annoyed", "mid") + gen "Of course, it's pretty hot there so why wouldn't--" ("base", xpos="far_left", ypos="head") + her "You're lying..." ("open", "closed", "annoyed", "mid") + gen "What?!" ("angry", xpos="far_left", ypos="head") + gen "(She's seen through my clever ruse... Impossible!)" ("angry", xpos="far_left", ypos="head") + her "Give me the real reason why you want me to wear this." ("upset", "base", "annoyed", "mid", cheeks="blush") + gen "*Huh*?" ("base", xpos="far_left", ypos="head") + her "The \"real\" reason... Or I'm not putting it on..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "The--" ("base", xpos="far_left", ypos="head") + gen "(Hold on... This isn't in the script...)" ("base", xpos="far_left", ypos="head") + her "I'm waiting..." ("annoyed", "closed", "annoyed", "mid", cheeks="blush") + gen "One moment..." ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/pageflip.ogg") + gen "(Alright, let's see what's going on here...)" ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/pageflip.ogg") + gen "(\"Genie fights Snape using magic... #TODO add explanation to this later...\")" ("base", xpos="far_left", ypos="head") + gen "(That's the tutorial so it must be further in...)" ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/pageflipback.ogg") + gen "(Genie fucks Hermione in the Ass...)" ("base", xpos="far_left", ypos="head") + + if hg_anal.trigger: + gen "(*Heh-heh*... Why am I not doing this right now exactly?)" ("base", xpos="far_left", ypos="head") + else: + gen "(Whops... Spoilers..)" ("base", xpos="far_left", ypos="head") + + gen "(*Hmm*... I've gone too far... Well... In the script at least.)" ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/pageflip.ogg") + pause .3 + $ renpy.play("sounds/pageflip.ogg") + pause .3 + $ renpy.play("sounds/pageflip.ogg") + pause .3 + gen "(There we go... The wardrobe section...)" ("base", xpos="far_left", ypos="head") + her "Still waiting... I'm going to need a real reason soon or I'm not putting it on..." ("angry", "closed", "annoyed", "mid", cheeks="blush") + gen "(*Aha*! I knew it!)" ("grin", xpos="far_left", ypos="head") + gen "(Genie comes up with another bullshit reason... Hermione thinks for a moment and then accepts it as the truth!)" ("grin", xpos="far_left", ypos="head") + her "Three...{w=1} Two--" ("open", "closed", "annoyed", "mid", cheeks="blush") + gen "Wait a minute, the script says--" ("angry", xpos="far_left", ypos="head") + her "One..." ("open", "narrow", "annoyed", "mid") + gen "*Err*... Your tits would look great in it!" ("angry", xpos="far_left", ypos="head") + her "...{w} Well then..." ("base", "narrow", "annoyed", "mid") + gen "(Ah fuck... I can't believe she's done this...)" ("base", xpos="far_left", ypos="head") + her "In that case--" ("open", "closed", "annoyed", "mid") + $ renpy.play("sounds/magic4.ogg") + with kissiris + her "..." ("normal", "base", "base", "stare") + gen "What the..." ("base", xpos="far_left", ypos="head") + her "They wear these on the Vegas strip do they?" ("open", "base", "base", "mid", cheeks="blush") + gen "*Huh*?" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Well I suppose I'll put it on then..." ("grin", "closed", "base", "mid", cheeks="blush") + gen "(What just...)" ("base", xpos="far_left", ypos="head") + gen "(*Hmm*... The developers must've patched it...{w=0.4} There's my immersion ruined...)" ("base", xpos="far_left", ypos="head") + her "Just give me a moment..." ("open", "base", "base", "mid", cheeks="blush") + her "" ("base", "base", "base", "mid", cheeks="blush") + + ########################### + ## Leather Bikini Outfit ## + ########################### + elif item == her_outfit_bikini2: #Req 16 (panties, bra) + gen "Put on this bikini for me." ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "What kind of bikini are we talking about?" ("open", "narrow", "base", "mid") + gen "This leather one here." ("base", xpos="far_left", ypos="head") + her "Right..." ("open", "narrow", "base", "down", cheeks="blush") + her "Well I guess it has some coverage..." ("normal", "narrow", "base", "down", cheeks="blush") + gen "I'm sure I could adjust it to be smaller if you'd like." ("base", xpos="far_left", ypos="head") + her "*Err*... No, it's fine... I'll just put it on as is..." ("angry", "closed", "base", "mid", cheeks="blush") + gen "You sure? Just say the word and I'll have it--" ("base", xpos="far_left", ypos="head") + her "No, we're good. Just give me a moment to put it on." ("open", "squint", "worried", "R", cheeks="blush") + else: # 22+ + her "A bikini?" ("open", "squint", "base", "R", cheeks="blush") + gen "Yep, I've got this leather one for you to wear today." ("base", xpos="far_left", ypos="head") + her "A leather bikini in the headmasters office..." ("base", "narrow", "base", "down", cheeks="blush") + gen "That's right..." ("base", xpos="far_left", ypos="head") + her "*Hmm*... One moment please..." ("open", "squint", "base", "mid", cheeks="blush") + + + ######################## + ## Rave Bikini Outfit ## + ######################## + elif item == her_outfit_bikini1: #Req 18 (panties, bra) + gen "I've got this bikini for you to wear today." ("base", xpos="far_left", ypos="head") + her "A bikini?" ("open", "base", "base", "mid") + gen "Yep... This one right here." ("base", xpos="far_left", ypos="head") + her "This is supposed to be a bikini is it?" ("open", "narrow", "base", "down", cheeks="blush") + gen "Should fall within that definition, yes." ("base", xpos="far_left", ypos="head") + her "And here I thought bikini's were supposed to protect your modesty..." ("open", "closed", "base", "mid", cheeks="blush") + gen "(Your modesty went out the window a long time ago.)" ("base", xpos="far_left", ypos="head") + her "Well... I suppose it does cover the important bits..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "(Is she trying to convince herself out of it or the other way around?)" ("base", xpos="far_left", ypos="head") + her "Just give me a moment to put it on, [genie_name]..." ("normal", "narrow", "base", "R", cheeks="blush") + + ################################ + ## Pizza Slut Outfit (mirror) ## + ################################ + elif item == her_outfit_pizza: #Req 19 (top, panties) + gen "Put this pizza on." ("base", xpos="far_left", ypos="head") + her "Put it--" ("annoyed", "squint", "base", "mid") + her "..." ("angry", "squint", "base", "mid") + her "Where did you even get something like this?" ("disgust", "narrow", "base", "mid") + her "It's not real pizza, right?" ("angry", "narrow", "base", "mid") + gen "It materialized from a dream." ("base", xpos="far_left", ypos="head") + her "It did what from where?" ("mad", "happy", "base", "mid") + gen "Yeah, better not question it..." ("base", xpos="far_left", ypos="head") + her "But sir, conjuring food breaks the laws of transfiguration!" ("open", "squint", "base", "mid") + gen "What counts as food, really?" ("base", xpos="far_left", ypos="head") + her "What?" ("disgust", "base", "base", "mid") + gen "If you put it on your body then it's not food... it's clothes." ("base", xpos="far_left", ypos="head") + gen "It's the intention of use that matters..." ("base", xpos="far_left", ypos="head") + her "I'm not sure that's how it works..." ("open", "narrow", "base", "R") + gen "..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "squint", "base", "mid") + her "Don't question it?" ("open", "narrow", "base", "mid") + gen "Don't question it." ("base", xpos="far_left", ypos="head") + gen "Now, are you putting on these clothes for me or what?" ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("annoyed", "narrow", "base", "down") + her "I guess I could do it, using a sticking charm..." ("angry", "narrow", "base", "R") + gen "What's a stick going to--" ("base", xpos="far_left", ypos="head") + + # Equips the item early. + call play_sound("magic") + $ hermione.equip(item) + + her "Expoximise!" ("scream", "happy", "base", "mid", trans=flashbulb) + her "" ("normal", "happy", "base", "mid") + + ################### + ## Ribbon Outfit ## + ################### + elif item == her_outfit_ribbon: #Req 18 (bra, panties) + gen "I've got this thing that I'd like you to wrap for me." ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "Is it me?" ("open", "narrow", "base", "mid") + gen "When did you become so good at guessing?" ("angry", xpos="far_left", ypos="head") + her "It wasn't exactly hard..." ("annoyed", "narrow", "base", "mid") + gen "It could be if you put these ribbons on." ("grin", xpos="far_left", ypos="head") + her "*Ugh*..." ("disgust", "narrow", "base", "mid") + her "Alright, fine... Just don't tug at the ends." ("open", "narrow", "base", "R", cheeks="blush") + gen "Of course..." ("grin", xpos="far_left", ypos="head") + her "One moment..." ("open", "narrow", "base", "mid", cheeks="blush") + else: # 22+ + her "Alright, let me just take my clothes off..." ("angry", "narrow", "base", "R", cheeks="blush") + gen "I didn't say it was you!" ("angry", xpos="far_left", ypos="head") + her "It's not?" ("clench", "squint", "base", "mid", cheeks="blush") + gen "...{w=0.4} Alright, it is..." ("base", xpos="far_left", ypos="head") + her "Okay then, just give me a--" ("open", "closed", "base", "mid", cheeks="blush") + gen "Wrap it tight!" ("base", xpos="far_left", ypos="head") + her "Very well..." ("open", "squint", "base", "R", cheeks="blush") + ###################### + ## Christmas Outfit ## + ###################### + elif item == her_outfit_xmas: #Req 13 (top, bottom) + gen "I'm feeling festive today so could you put on the Christmas outfit?" ("base", xpos="far_left", ypos="head") + if her_whoring < 22: + her "A Christmas--" ("open", "squint", "base", "mid") + her "Right..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "Specifically designed to jingle some balls." ("base", xpos="far_left", ypos="head") + her "Charming..." ("open", "narrow", "base", "R", cheeks="blush") + her "Is this really what you imagine a proper Christmas-themed outfit is?" ("angry", "narrow", "base", "down", cheeks="blush") + gen "I mean... Mrs Claus probably doesn't wear it... Although she probably should." ("base", xpos="far_left", ypos="head") + her "Why would I even ask..." ("disgust", "closed", "base", "mid", cheeks="blush") + gen "Because if she did then Santa would probably come more than once a--" ("grin", xpos="far_left", ypos="head") + her "Fine!" ("clench", "narrow", "base", "mid", cheeks="blush") + gen "I wasn't finished..." ("angry", xpos="far_left", ypos="head") + her "I'll put it on..." ("open", "narrow", "base", "R", cheeks="blush") + gen "But... My joke..." ("base", xpos="far_left", ypos="head") + her "" ("base", "narrow", "base", "mid", cheeks="blush") + else: #22+ + her "Looks a bit naughty--" ("soft", "narrow", "base", "down", cheeks="blush") + gen "Yet I'm sure Santa would put you on the good list if you wore it..." ("base", xpos="far_left", ypos="head") + her "*Hmm*... I doubt that..." ("base", "narrow", "base", "R", cheeks="blush") + her "Well... I'm doing this to make my house happy so surely it'd even out." ("open", "closed", "base", "mid", cheeks="blush") + gen "I'm sure it will." ("base", xpos="far_left", ypos="head") + her "Just give me a moment to put it on..." ("base", "narrow", "base", "mid", cheeks="blush") + + ##################### + ## Wrestling Robes ## + ##################### + elif item == her_outfit_wrestling: #Req 3 (robe, bra, panties, misc) + gen "I've got these wrestling robes for you to wear today." ("base", xpos="far_left", ypos="head") + if her_whoring < 13: + her "Wrestling robes?" ("soft", "base", "base", "mid") + her "Why do you want me to wear wrestling robes exactly?" ("disgust", "narrow", "base", "mid") + gen "Wrestle obviously, let me just call for your opponent." ("base", xpos="far_left", ypos="head") + her "What?!" ("mad", "wide", "base", "mid") + gen "No, while that would be fun I'd just like you to wear it." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "mid") + her "Alright, as long as you don't make me wrestle..." ("open", "narrow", "base", "mid") + else: #13+ + her "Wrestling robes?" ("soft", "base", "base", "mid") + gen "Yeah, although you'd take them off when you actually start wrestling." ("base", xpos="far_left", ypos="head") + her "You're not trying to trick me into doing mudwrestling are you?" ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "Well now that you bring it up..." ("base", xpos="far_left", ypos="head") + her "Never mind, forget I said it!" ("angry", "happy", "base", "mid", cheeks="blush") + her "Just let me put these on..." ("soft", "narrow", "base", "down", cheeks="blush") + her "" ("soft", "narrow", "base", "mid", cheeks="blush") + # TODO: Blacklist fallbacks have to be added. + return + +label her_reaction_equip_outfit_fail(item): + ### Add specific Outfit reactions here. + + ######################## + ## Cheerleader Normal ## + ######################## + if item == her_outfit_cheerleader_1: #Req 10 whoring + gen "Could you wear the cheerleader outfit for me?" ("base", xpos="far_left", ypos="head") + + her "Cheerleader outfit?" ("upset", "base", "base", "mid") + her "Sir, I am not some floosy cheerleader..." ("open", "closed", "base", "mid") + her "Their attire shows way to much skin for my liking..." ("open", "squint", "base", "R") + gen "Come on, it's just your stomach..." ("base", xpos="far_left", ypos="head") + her "Sorry [genie_name] but I'll have to decline..." ("normal", "squint", "base", "mid") + + ###################### + ## Cheerleader Lewd ## + ###################### + elif item == her_outfit_cheerleader_2: #Req 16 whoring (top) + gen "Could you put on the cheerleader outfit for me?" ("base", xpos="far_left", ypos="head") + if her_whoring < 10: + her "Cheerleader outfit?" ("upset", "base", "base", "mid") + her "Sir, I am not some floosy cheerleader..." ("open", "closed", "base", "mid") + her "Their attire shows way to much skin for my liking..." ("open", "squint", "base", "R") + gen "Come on, surely it's not that bad." ("base", xpos="far_left", ypos="head") + her "Sorry [genie_name] but I'll have to decline..." ("normal", "squint", "base", "mid") + else: # < 16 + her "Of course!" ("smile", "happyCl", "base", "mid") + her "Go-Go Gryffindor!" ("grin", "squint", "base", "mid") + gen "Here you go!" ("base", xpos="far_left", ypos="head") + her "What on earth..." ("clench", "squint", "base", "down") + her "Sir, this is not the official cheerleading attire!" ("angry", "closed", "base", "mid") + gen "Oh... I could've sworn it was..." ("base", xpos="far_left", ypos="head") + her "I am not wearing this..." ("disgust", "base", "base", "R") + + ################# + ## Fishnet Outfit + ################# + elif item == her_outfit_fishnet: #Req 19 (panties, top) + gen "Could you please wear--" ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "What? Oh, what's this?" ("soft", "squint", "base", "L") + gen "It's a fishnet--" ("base", xpos="far_left", ypos="head") + her "Oh, I get it!" ("open", "wide", "base", "mid") + her "This isn't really a hobby I considered pursuing, [genie_name]..." ("open", "closed", "base", "mid") + her "But if you say it will help me with my grades then I'll try my best." ("smile", "squint", "base", "mid") + gen "Wait what?" ("base", xpos="far_left", ypos="head") + her "I will go down to the lake later and try it out, if that's okay with you, [genie_name]." ("open", "base", "base", "R") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "(Wait, does she want to go fishing with it...?)" ("base", xpos="far_left", ypos="head") + elif her_whoring < 10: + her "What on earth... This top is so revealing!" ("angry", "wide", "angry", "mid") + gen "Yes, glad you noticed! Now if you don't mind just--" ("grin", xpos="far_left", ypos="head") + her "I'm not going to wear it! You can see everything in this! My nipples would poke right through it!!!" ("scream", "base", "angry", "mid") + gen "I wouldn't mind if they did..." ("base", xpos="far_left", ypos="head") + her "That's just... typical!" ("clench", "base", "angry", "R") + her "You disgust me, [genie_name]!" ("disgust", "base", "angry", "mid") + gen "Alright-- Yeesh... Forget I said anything." ("base", xpos="far_left", ypos="head") + else: # < 19 + her "A fishnet outfit?" ("angry", "happy", "base", "mid") + gen "Indeed!" ("base", xpos="far_left", ypos="head") + her "I didn't know they made bottoms like this!" ("disgust", "base", "base", "down") + gen "They don't usually... I had it made custom just for you!" ("base", xpos="far_left", ypos="head") + her "You did, did you?" ("open", "narrow", "base", "mid") + gen "Yes, so if you could just--" ("base", xpos="far_left", ypos="head") + if her_whoring < 13: + her "Well, that's too bad because I won't be wearing it..." ("disgust", "base", "base", "R") + else: + her "This is practically fetish gear, [genie_name]..." ("soft", "happy", "base", "mid") + gen "I mean..." ("base", xpos="far_left", ypos="head") + her "I am not wearing something like this..." ("open", "base", "base", "R", cheeks="blush") + + ###################### + ## Fishnet One-Piece ## + ###################### + elif item == her_outfit_fishnet_onepiece: #Req 19 (top) + gen "Could you put on the fishnet one-piece for me?" ("base", xpos="far_left", ypos="head") + her "The what?" ("angry", "squint", "base", "mid") + if her_whoring < 4: + her "What on earth is this!?" ("scream", "base", "angry", "down") + gen "Fishnet... One-piece?" ("base", xpos="far_left", ypos="head") + her "Are you actually expecting me to wear this?" ("angry", "base", "angry", "mid") + gen "*Err*... No, I wanted to have you convert it into a fishnet for me!" ("angry", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "annoyed", "mid") + her "You literally just asked me to put it on..." ("open", "base", "annoyed", "mid") + gen "Oh... Did I?" ("angry", xpos="far_left", ypos="head") + her "Yes..." ("upset", "base", "angry", "mid") + gen "So..." ("base", xpos="far_left", ypos="head") + her "No!" ("angry", "base", "angry", "mid") + elif her_whoring < 10: + her "Fishnet--" ("soft", "narrow", "base", "down") + her "Sir, I am not wearing something so..." ("angry", "base", "base", "down") + gen "Glamorous?" ("base", xpos="far_left", ypos="head") + gen "Enchanting?" ("base", xpos="far_left", ypos="head") + gen "Alluring?" ("base", xpos="far_left", ypos="head") + her "Revealing..." ("annoyed", "base", "annoyed", "mid") + gen "Right, was just about to say that one." ("base", xpos="far_left", ypos="head") + gen "Just think of yourself as a fish inside a--" ("base", xpos="far_left", ypos="head") + her "No... Just... No..." ("disgust", "base", "annoyed", "R") + else: # < 19 + her "This is Lingerie!" ("angry", "narrow", "base", "down", cheeks="blush") + gen "Well spotted!" ("base", xpos="far_left", ypos="head") + gen "Now if you could just--" ("base", xpos="far_left", ypos="head") + her "I am not putting on lingerie for you..." ("angry", "closed", "base", "mid", cheeks="blush") + + ################## + ## Latex Outfit ## + ################## + elif item == her_outfit_latex: #Req 19 (top) + gen "Could you put on this latex outfit for me?" ("base", xpos="far_left", ypos="head") + if her_whoring < 10: + her "Latex--" ("soft", "happy", "base", "mid") + her "Sir, you can't be serious!" ("angry", "wide", "annoyed", "mid") + gen "I'm not hearing a no." ("base", xpos="far_left", ypos="head") + her "I can't believe I'd even have to--" ("clench", "squint", "angry", "mid") + her "No! I am not putting on this disgusting--" ("scream", "closed", "angry", "mid") + gen "Alright, Alright... A simple no would've sufficed..." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "base", "angry", "mid") + elif her_whoring < 13: + her "Latex?" ("open", "wide", "base", "mid") + her "You actually expect me to wear something like this?" ("clench", "base", "annoyed", "mid") + gen "I don't see why not. You're perfectly fine being naked." ("base", xpos="far_left", ypos="head") + her "But this..." ("disgust", "narrow", "base", "down") + her "This would make me look like some cheap--" ("disgust", "narrow", "annoyed", "down") + gen "Alright, fine... Don't wear it then..." ("base", xpos="far_left", ypos="head") + else: # < 19 + her "Latex?" ("angry", "squint", "base", "mid") + her "How do you even put this on?" ("disgust", "narrow", "annoyed", "down") + gen "No clue, although I'd assume it's no different to a condom..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "wide", "base", "mid", cheeks="blush") + her "Yeah I'm not putting this on..." ("open", "closed", "annoyed", "mid", cheeks="blush") + gen "Did I say condom? I meant... *Err*..." ("angry", xpos="far_left", ypos="head") + her "..." ("upset", "base", "base", "R", cheeks="blush") + gen "Fine... Never mind then..." ("base", xpos="far_left", ypos="head") + + ####################### + ## Slutty Schoolgirl ## + ####################### + elif item == her_outfit_slutty_schoolgirl: #Req 19 (top, Bottom) + gen "Could you put on this school uniform for me?" ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "Most certainly... The school uniform is a staple within this institution and I'll wear it with--" ("open", "closed", "base", "mid") + gen "Here you go." ("base", xpos="far_left", ypos="head") + her "Pride..." ("normal", "squint", "base", "down") + her "What have you done?!" ("shock", "wide", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + her "It's cut all weird... Wait, what's wrong with this skirt?" ("clench", "base", "base", "down", cheeks="blush") + gen "You like it?" ("base", xpos="far_left", ypos="head") + her "What do you mean do I like it?" ("scream", "happy", "angry", "mid") + gen "I knew you would--" ("base", xpos="far_left", ypos="head") + her "You've desecrated our school uniform!" ("mad", "base", "angry", "mid") + gen "..." ("angry", xpos="far_left", ypos="head") + her "I shall not put on this... this--" ("angry", "base", "angry", "down") + gen "Alright fine..." ("base", xpos="far_left", ypos="head") + elif her_whoring < 13: + her "Why would you..." ("clench", "squint", "base", "down") + gen "What?" ("base", xpos="far_left", ypos="head") + her "This is...{w=0.4} You've completely ruined our school uniform!" ("angry", "happyCl", "angry", "mid") + gen "I have?" ("angry", xpos="far_left", ypos="head") + gen "Looks like an improvement to me..." ("base", xpos="far_left", ypos="head") + her "I am not putting this on... It's an insult to our school!" ("clench", "base", "angry", "R") + gen "(Looks like I crossed some arbitrary line with this one...)" ("base", xpos="far_left", ypos="head") + else: # < 19 + her "This..." ("angry", "base", "base", "down") + gen "I know it's great isn't it?" ("base", xpos="far_left", ypos="head") + her "This..." ("mad", "narrow", "base", "down") + her "Why would you do this to our school uniform?" ("soft", "closed", "base", "mid") + her "The students wear this with pride... It's a staple of our great institution." ("normal", "squint", "base", "mid", cheeks="blush") + her "And you've turned it into--" ("upset", "narrow", "base", "down", cheeks="blush") + gen "I know... Quite an improvement, isn't it?" ("grin", xpos="far_left", ypos="head") + her "I'm sorry but I am not putting this on, [genie_name]..." ("open", "closed", "base", "mid") + gen "Suit yourself..." ("base", xpos="far_left", ypos="head") + + ################## + ## Witch Outfit ## + ################## + elif item == her_outfit_witch: #Req 10 (top) + gen "Put on this witch outfit for me will you?" ("base", xpos="far_left", ypos="head") + her "A witch outfit?" ("soft", "base", "base", "mid") + her "Sir, I'm not sure..." ("open", "squint", "base", "R") + her "As a muggle born, I usually only wear casual muggle wear when the school uniform doesn't suffice." ("normal", "squint", "base", "mid") + gen "Perhaps it's time to widen your wardrobe selection then." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "I refuse!" ("open", "closed", "base", "mid") + her "" ("normal", "base", "base", "mid") + else: # < 10 + her "*Hmm*... If you say so..." ("normal", "squint", "base", "mid") + gen "Excellent, here you go..." ("base", xpos="far_left", ypos="head") + her "What on earth is this!?" ("clench", "squint", "worried", "down") + gen "A witch outfit?" ("base", xpos="far_left", ypos="head") + her "This looks like what some muggle bimbo would put on at Halloween..." ("angry", "narrow", "base", "mid") + gen "Excellent! So, since it's muggle wear I assume you'd feel more comfortable putting it--" ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "mid") + her "Did you not hear what I just said?" ("open", "happyCl", "annoyed", "mid") + gen "You usually only wear casual muggle wear when the school uniform--" ("base", xpos="far_left", ypos="head") + her "Yes, but I said this looks like some slutified Halloween outfit!" ("angry", "squint", "angry", "mid") + gen "*He-heh*... Slutified..." ("base", xpos="far_left", ypos="head") + her "I am not wearing it..." ("upset", "base", "annoyed", "mid") + + ####################### + ## Lara Croft Outfit ## + ####################### + elif item == her_outfit_croft: #Req 10 (top, bottom) + gen "Could you put on this archaeologist outfit for me?" ("base", xpos="far_left", ypos="head") + her "A what?" ("soft", "squint", "base", "mid") + gen "This one..." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "What is this?!" ("open", "wide", "base", "down") + gen "An archaeologist outfit?" ("base", xpos="far_left", ypos="head") + gen "Well at least it's an artist representation of what one might look like." ("base", xpos="far_left", ypos="head") + her "What kind of archaeologist would be wearing something like this?" ("clench", "squint", "annoyed", "mid") + gen "Why none other than the great Lara Croft!" ("base", xpos="far_left", ypos="head") + her "Who?" ("disgust", "squint", "base", "mid") + gen "Lara Croft! The worlds most famous Archaeologist!" ("base", xpos="far_left", ypos="head") + her "What kind of archaeologist is she to be wearing this?" ("normal", "slit", "base", "mid") + gen "The kind that delves into ancient temples looking for rare artefacts!" ("base", xpos="far_left", ypos="head") + her "Well I must say that attire such as this is hardly necessary to--" ("open", "closed", "annoyed", "mid") + gen "I'll have you know that she's an expert in her field!" ("base", xpos="far_left", ypos="head") + gen "I've experienced her... *Err*... expertise in taking care of delicate and ancient artefacts first hand!" ("base", xpos="far_left", ypos="head") + her "Oh, sorry [genie_name]!" ("mad", "squint", "base", "mid") + her "I meant no disrespect, I'd just rather wear something a bit more..." ("upset", "squint", "base", "R") + her "*Ehm*..." ("clench", "base", "base", "mid", cheeks="blush") + gen "Whatever you say, [hermione_name]." ("base", xpos="far_left", ypos="head") + else: # < 10 + her "Hmm... When I think of an archaeologist outfit I don't think of something so..." ("soft", "base", "worried", "down") + gen "Triangular?" ("base", xpos="far_left", ypos="head") + her "No, I was going to say revealing..." ("disgust", "squint", "base", "mid") + gen "It's not \"that\" revealing..." ("base", xpos="far_left", ypos="head") + gen "It had to look that way, because... *Err*... She explores volcanoes and stuff..." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "mid") + gen "Limitations of the engine..." ("base", xpos="far_left", ypos="head") + her "The what?" ("upset", "base", "worried", "mid") + gen "Never mind... Forget it..." ("base", xpos="far_left", ypos="head") + + ####################### + ## Heart Slut Outfit ## + ####################### + elif item == her_outfit_hslut: #Req 19 (top, panties, bra) + gen "Put on this burlesque outfit for me will you?" ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "A what?" ("clench", "wide", "worried", "mid") + gen "Burlesque outfit, it's--" ("base", xpos="far_left", ypos="head") + her "What the hell is wrong with you?" ("mad", "base", "angry", "mid") + gen "What do you mean?" ("base", xpos="far_left", ypos="head") + her "Just look at it!" ("scream", "base", "angry", "mid", cheeks="blush") + her "What are these heart things even supposed to be?" ("clench", "base", "annoyed", "down", cheeks="blush") + gen "Oh, they're called pasties. They go on the top of your nipples." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "squint", "worried", "stare", cheeks="blush") + gen "You see, if you move your breasts in a circulation motion these little things spin around." ("base", xpos="far_left", ypos="head") + with hpunch + her "What?!" ("shock", "wide", "angry", "mid", cheeks="blush") + gen "I know!" ("grin", xpos="far_left", ypos="head") + gen "Pretty clever, right?" ("grin", xpos="far_left", ypos="head") + her "Sir, how could you ask me to wear something like this?!" ("angry", "happy", "angry", "R", cheeks="blush") + her "I am not putting this on..." ("clench", "narrow", "annoyed", "mid", cheeks="blush") + elif her_whoring < 13: + her "Burlesque--" ("clench", "base", "base", "mid", cheeks="blush") + her "My word!" ("soft", "base", "annoyed", "down", cheeks="blush") + gen "A piece of art is it not?" ("base", xpos="far_left", ypos="head") + her "You're expecting me to wear this?" ("clench", "wide", "base", "mid", cheeks="blush") + gen "Heck yes!" ("base", xpos="far_left", ypos="head") + her "Well you can take that expectation and.... and..." ("open", "closed", "annoyed", "mid", cheeks="blush") + gen "And what?" ("base", xpos="far_left", ypos="head") + her "I am not wearing this for you..." ("clench", "closed", "base", "mid", cheeks="blush") + her "" ("normal", "base", "base", "mid", cheeks="blush") + else: # < 19 + her "A Burlesque outfit?" ("normal", "squint", "base", "mid", cheeks="blush") + gen "Indeed... And it's got heart shaped pasties and everything!" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "base", "base", "down", cheeks="blush") + her "You actually want me to put this on?" ("open", "squint", "base", "mid", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + her "Of course you do... Why'd I even ask..." ("normal", "narrow", "base", "R", cheeks="blush") + her "But... Isn't this what strippers wear, [genie_name]?" ("open", "closed", "worried", "mid", cheeks="blush") + gen "Well, some do... on occasion. I guess it depends..." ("base", xpos="far_left", ypos="head") + her "... [genie_name], I'm not a stripper..." ("disgust", "squint", "base", "mid", cheeks="blush") + gen "Sure could've fooled me..." ("base", xpos="far_left", ypos="head") + her "I only did that because you paid..." ("open", "closed", "base", "mid", cheeks="blush") + gen "Go on..." ("base", xpos="far_left", ypos="head") + her "I'm sorry sir but it's too much..." ("angry", "squint", "base", "mid", cheeks="blush") + gen "(You're in denial [hermione_name]... Well, I'm sure she'll come around soon enough.)" ("base", xpos="far_left", ypos="head") + + ####################### + ## Ms. Marvel Outfit ## + ####################### + elif item == her_outfit_msmarv: #Req 10 (top, stockings) + gen "I've got this Cosplay outfit I'd like you to wear." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "Cosplay, [genie_name]?" ("clench", "base", "worried", "mid") + gen "Indeed... It's a Miss--" ("base", xpos="far_left", ypos="head") + her "I am not wearing it..." ("open", "closed", "annoyed", "mid") + gen "What? Why not?" ("base", xpos="far_left", ypos="head") + her "Are you actually expecting me to put on a cosplay outfit for you?" ("angry", "base", "annoyed", "mid") + gen "I mean..." ("base", xpos="far_left", ypos="head") + her "I'll stick to normal clothing thank you very much..." ("open", "base", "annoyed", "R") + else: # < 10 + her "Cosplay outfit, [genie_name]?" ("normal", "base", "worried", "mid") + gen "Indeed... It's a Ms Marvel cosplay." ("base", xpos="far_left", ypos="head") + her "*Hmm*... Can't say that I know it..." ("upset", "squint", "base", "R") + gen "Here you go..." ("base", xpos="far_left", ypos="head") + her "Oh My... This thing is skin tight..." ("open", "wide", "worried", "down") + gen "Not too unusual for cosplay..." ("base", xpos="far_left", ypos="head") + her "I can't put this thing on..." ("clench", "squint", "worried", "mid") + gen "Oh come on... Just use some powder and I'm sure it'll slip right--" ("base", xpos="far_left", ypos="head") + her "I \"won't\" put this thing on..." ("angry", "base", "annoyed", "mid") + gen "... Just say so then..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "base", "base", "R") + + ################# + ## Tifa Outfit ## + ################# + elif item == her_outfit_tifa: #Req 10 (top, bottom) + gen "Could you put on this Tifa Cosplay outfit?" ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "Cosplay, [genie_name]?" ("clench", "base", "worried", "mid") + gen "Indeed!" ("base", xpos="far_left", ypos="head") + her "I am not wearing it..." ("open", "closed", "annoyed", "mid") + gen "What? Why not?" ("base", xpos="far_left", ypos="head") + her "Are you actually expecting me to put on a cosplay outfit for you?" ("angry", "base", "annoyed", "mid") + gen "I mean..." ("base", xpos="far_left", ypos="head") + her "I'll stick to normal clothing thank you very much..." ("open", "base", "annoyed", "R") + else: # < 10 + her "What's a Tifa, [genie_name]?" ("soft", "base", "base", "mid") + gen "What's a-- Who doesn't know--" ("base", xpos="far_left", ypos="head") + gen "Tifa Lockheart!" ("base", xpos="far_left", ypos="head") + her "Who?" ("upset", "squint", "worried", "mid") + gen "*sigh*... I can't believe it..." ("base", xpos="far_left", ypos="head") + her "Is that a relative of Gilderoy Lockhart?" ("open", "squint", "base", "mid") + gen "*Huh*?" ("base", xpos="far_left", ypos="head") + her "Gilderoy... One of the teachers..." ("angry", "squint", "base", "mid") + gen "No idea who you're talking about..." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "closed", "worried", "mid") + gen "Are you putting it on or what?" ("base", xpos="far_left", ypos="head") + her "*Err*... It's a bit revealing..." ("disgust", "narrow", "worried", "down") + gen "Come on, it's only your stomach..." ("base", xpos="far_left", ypos="head") + her "That's not what I'm referring to..." ("angry", "narrow", "base", "R") + gen "Alright fine... Don't wear it then..." ("base", xpos="far_left", ypos="head") + + ################################## + ## Teddy Outfit (short nightie) ## + ################################## + elif item == her_outfit_teddy: #Req 16 (top) + gen "Could you put on this nightgown?" ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "This... This is completely transparent!" ("clench", "squint", "annoyed", "down") + gen "Oh come on, it's hardly even translucent." ("base", xpos="far_left", ypos="head") + her "I can see the wrinkles on your hand through it..." ("disgust", "squint", "angry", "mid") + gen "That's just the folds of the fabric." ("base", xpos="far_left", ypos="head") + her "I am not wearing this..." ("angry", "base", "angry", "mid") + elif her_whoring < 13: + her "*Ehm*... Isn't a nightgown supposed to..." ("disgust", "narrow", "base", "down") + gen "Supposed to what, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "You know..." ("clench", "narrow", "base", "down") + her "Cover your body." ("open", "closed", "annoyed", "mid", cheeks="blush") + gen "Isn't it?" ("base", xpos="far_left", ypos="head") + her "It barely covers anything..." ("upset", "narrow", "base", "mid") + her "And what it does cover is almost completely see-through." ("open", "squint", "annoyed", "mid") + gen "I mean, it's lingerie, that's what--" ("base", xpos="far_left", ypos="head") + her "I am not wearing it..." ("mad", "squint", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + else: # < 16 + her "*Err*... You want me to wear lingerie?" ("open", "base", "base", "R", cheeks="blush") + gen "Yes." ("base", xpos="far_left", ypos="head") + her "Can I ask you why?" ("normal", "squint", "base", "mid", cheeks="blush") + gen "Don't you want to look sexy for me?" ("base", xpos="far_left", ypos="head") + her "For you-- Sir, that is not why I'm doing this..." ("clench", "closed", "base", "mid", cheeks="blush") + gen "Did I say for me? I meant--" ("base", xpos="far_left", ypos="head") + her "Too late..." ("angry", "base", "annoyed", "R", cheeks="blush") + gen "(Damn...)" ("base", xpos="far_left", ypos="head") + + #################### + ## Nightie Outfit ## + #################### + elif item == her_outfit_nightie: #Req 13 (top) + gen "Can you put on this nightie for me?" ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "What is this?!" ("angry", "base", "annoyed", "down") + gen "A nightie?" ("base", xpos="far_left", ypos="head") + her "It's see-through!" ("scream", "squint", "base", "mid") + gen "Oh... Is it? I didn't \"see\" that." ("base", xpos="far_left", ypos="head") + her "I am not putting that on..." ("mad", "narrow", "angry", "mid") + else: # < 13 + her "What's supposed to make this piece of garment a nightie exactly?" ("angry", "narrow", "base", "down") + gen "Well... It's a thin soft material that you put on at night." ("base", xpos="far_left", ypos="head") + her "Isn't a nightie meant to cover you?" ("normal", "narrow", "annoyed", "mid") + gen "I mean it sort of does..." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "closed", "annoyed", "mid") + her "Yeah, I'm going to have to decline on this one..." ("clench", "closed", "base", "mid") + her "" ("normal", "base", "base", "mid") + + ####################### + ## Latex dress Outfit ## + ####################### + elif item == her_outfit_latex_dress: #Req 19 (top) + gen "Put on this latex dress for me." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "Latex dress?" ("angry", "squint", "base", "stare") + her "I didn't know you could make a dress out of--" ("open", "squint", "worried", "mid") + gen "Here you go." ("base", xpos="far_left", ypos="head") + her "Are you crazy?!" ("clench", "wide", "base", "down") + her "What's wrong with you, [genie_name]?!" ("scream", "squint", "annoyed", "mid") + gen "What do you--" ("base", xpos="far_left", ypos="head") + her "I am not putting that thing on..." ("disgust", "happyCl", "base", "mid", cheeks="blush") + elif her_whoring < 13: + her "Latex dress?" ("angry", "narrow", "base", "stare") + gen "This one." ("base", xpos="far_left", ypos="head") + her "This..." ("clench", "squint", "base", "down") + gen "Pretty unique isn't it?" ("base", xpos="far_left", ypos="head") + her "This looks like someone ripped an oversized balloon." ("disgust", "squint", "annoyed", "mid") + gen "Baloon? I was going to say it looks more like a--" ("base", xpos="far_left", ypos="head") + her "... {w} Like a what?" ("angry", "squint", "annoyed", "mid") + gen "Never mind..." ("base", xpos="far_left", ypos="head") + gen "So will you wear--" ("base", xpos="far_left", ypos="head") + her "No!" ("scream", "closed", "annoyed", "mid") + her "" ("normal", "squint", "annoyed", "mid") + else: # < 19 + her "[genie_name], this is fetish gear isn't it?" ("annoyed", "base", "base", "R", cheeks="blush") + gen "I mean..." ("base", xpos="far_left", ypos="head") + gen "I wouldn't exactly call it..." ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "From a certain point of view, maybe..." ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Yeah okay, I got nothing..." ("base", xpos="far_left", ypos="head") + her "I am not putting this on..." ("open", "closed", "base", "mid", cheeks="blush") + her "" ("normal", "base", "base", "mid", cheeks="blush") + + ##################### + ## Egyptian Outfit ## + ##################### + elif item == her_outfit_egypt: #Req 19 (top) + gen "Put on this Egyptian-themed outfit for me will you?" ("base", xpos="far_left", ypos="head") + if her_whoring < 13: + her "Egyptian-themed? What's that supposed to mean?" ("upset", "squint", "worried", "mid") + gen "You know... The type of clothing that they'd wear in Egypt." ("base", xpos="far_left", ypos="head") + gen "Well at least back when I was there." ("base", xpos="far_left", ypos="head") + her "You've been to Egypt, [genie_name]?" ("soft", "squint", "base", "mid") + gen "Of course!" ("base", xpos="far_left", ypos="head") + gen "And let me tell you... Cleopatra was quite the sight to behold!" ("base", xpos="far_left", ypos="head") + her "Did you see a bust of her there?" ("base", "base", "worried", "mid") + gen "Quite a bit more than just her bust." ("base", xpos="far_left", ypos="head") + her "A statue?" ("open", "base", "base", "mid") + gen "A what? No, I've met-- I mean... Yes, I saw a statue of her!" ("base", xpos="far_left", ypos="head") + her "I see... Well, let me have a look..." ("base", "squint", "base", "mid") + gen "Here you go." ("base", xpos="far_left", ypos="head") + her "What the--" ("normal", "wide", "base", "down") + her "Surely this can't be what they wore, [genie_name]!" ("clench", "base", "base", "down") + gen "Oh, I'm quite certain they did..." ("base", xpos="far_left", ypos="head") + her "There's barely any material to cover... *Ehm*..." ("disgust", "squint", "base", "mid", cheeks="blush") + gen "I mean, it's quite hot there..." ("base", xpos="far_left", ypos="head") + her "Sorry sir, but this-- I can't-- No offence but--" ("disgust", "squint", "base", "R", cheeks="blush") + gen "Alright... fine." ("base", xpos="far_left", ypos="head") + else: # < 19 + her "Egyptian-themed?" ("soft", "squint", "worried", "mid") + gen "Yeah, this one." ("base", xpos="far_left", ypos="head") + her "Sir... I thought Egyptians covered their skin from the sun..." ("upset", "narrow", "base", "mid") + gen "Poppycock." ("base", xpos="far_left", ypos="head") + gen "If you did then you wouldn't be able to get an even tan." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "base", "mid") + her "Sorry [genie_name] but this is too much..." ("open", "closed", "annoyed", "mid") + her "" ("normal", "base", "annoyed", "mid") + + ############## + ## Swimsuit ## + ############## + elif item == her_outfit_swimsuit: #Req 13 (top) + gen "I've got this swimsuit I'd like you to wear." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "A swimsuit?" ("angry", "happy", "base", "mid") + her "Am I expected to go swimming with you?" ("clench", "squint", "base", "mid") + gen "I just thought you'd look good in one." ("base", xpos="far_left", ypos="head") + her "What?!" ("clench", "squint", "worried", "mid") + her "You want me to wear it in here?" ("disgust", "squint", "base", "mid") + gen "Yes, I'd like you to put it on for when you're--" ("base", xpos="far_left", ypos="head") + her "Why would I stand around in a swimsuit in your office?" ("angry", "happy", "annoyed", "mid") + gen "As I said, I think you'd look good in it..." ("base", xpos="far_left", ypos="head") + her "Well, your opinion on how I'd look isn't going to convince me to put on a swimsuit in here..." ("angry", "squint", "base", "R") + else: # < 13 + her "*Err*... You want me to put on a swimsuit in your office?" ("angry", "squint", "base", "mid") + gen "Yes." ("base", xpos="far_left", ypos="head") + her "Wouldn't that be kind of weird?" ("clench", "narrow", "base", "mid") + gen "I don't see why it would..." ("base", xpos="far_left", ypos="head") + her "I mean... There's not really a pool or anything in here..." ("disgust", "base", "worried", "L") + gen "Yeah... No complimentary chocolate either." ("base", xpos="far_left", ypos="head") + her "*Huh*?" ("upset", "squint", "base", "mid") + gen "Never mind..." ("base", xpos="far_left", ypos="head") + gen "Would you put it on if there was a pool in here?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... Maybe?" ("angry", "squint", "base", "mid") + gen "(*Hmm*... Now where would I fit a pool?)" ("base", xpos="far_left", ypos="head") + gen "(Perhaps it'd be easier just to try and convince her some other time...)" ("base", xpos="far_left", ypos="head") + + ##################### + ## Bioshock Outfit ## + ##################### + elif item == her_outfit_bioshock: #Req 14 (no bra) + gen "Can you put on this Elisabeth Cosplay outfit?" ("base", xpos="far_left", ypos="head") + her "Cosplay, [genie_name]?" ("clench", "base", "worried", "mid") + gen "Indeed!" ("base", xpos="far_left", ypos="head") + her "I am not wearing it..." ("open", "closed", "annoyed", "mid") + gen "What? Why not?" ("angry", xpos="far_left", ypos="head") + her "Firstly... Why would I put on a cosplay outfit in your office?" ("angry", "base", "annoyed", "mid") + gen "I mean..." ("base", xpos="far_left", ypos="head") + her "Secondly... There's not even a bra for this... Cosplay." ("open", "closed", "annoyed", "mid") + gen "There's a corset though... Surely--" ("base", xpos="far_left", ypos="head") + her "I'll stick to normal clothing thank you very much..." ("open", "base", "annoyed", "R") + + ##################### + ## Yennefer Outfit ## + ##################### + elif item == her_outfit_yennefer: #Req 10 + gen "I got this Yennefer Cosplay that I'd like you to put on." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "Cosplay, [genie_name]?" ("clench", "base", "worried", "mid") + gen "Yep, she's from the--" ("base", xpos="far_left", ypos="head") + her "I am not wearing it..." ("open", "closed", "annoyed", "mid") + gen "You didn't even let me finish!" ("angry", xpos="far_left", ypos="head") + her "I am not putting on some random cosplay for you..." ("open", "narrow", "annoyed", "mid") + gen "Whatever... I picked Triss anyway." ("base", xpos="far_left", ypos="head") + her "What?" ("soft", "squint", "base", "mid") + gen "Alright, I didn't..." ("base", xpos="far_left", ypos="head") + else: # < 10 + her "A Cosplay?" ("normal", "base", "base", "mid") + gen "Yep, Yennefer from the Witcher." ("base", xpos="far_left", ypos="head") + her "A witch?" ("soft", "squint", "base", "mid") + her "Well, I suppose I could--" ("open", "closed", "base", "mid") + gen "That's kind of offensive actually." ("base", xpos="far_left", ypos="head") + her "*Huh*?" ("clench", "squint", "base", "mid") + gen "She's a sorceress, not a witch." ("base", xpos="far_left", ypos="head") + her "I see..." ("angry", "narrow", "base", "R") + her "(What is he even talking about...)" ("angry", "narrow", "base", "down") + gen "You better make up for what you just said by wearing this for me..." ("base", xpos="far_left", ypos="head") + her "What?" ("angry", "squint", "base", "mid") + gen "Calling her a witch... Witches are usually old women or hags you know." ("base", xpos="far_left", ypos="head") + her "Sir..." ("disgust", "base", "worried", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "I'm a witch!" ("angry", "base", "annoyed", "mid") + gen "But the video ga-- I mean books... Yes, I've read them you know!" ("angry", xpos="far_left", ypos="head") + her "..." ("annoyed", "base", "annoyed", "mid") + gen "Okay I didn't..." ("base", xpos="far_left", ypos="head") + her "Sir, do I have to wear this?" ("open", "closed", "annoyed", "mid") + gen "No... I don't deserve it..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "mid") + gen "Don't look at me!" ("base", xpos="far_left", ypos="head") + + ################ + ## Ball Dress ## + ################ + elif item == her_outfit_ball: #Req 14 (no bra) (ball happens on lvl 15) + gen "Could you put on this dress?" ("base", xpos="far_left", ypos="head") + her "Sir, this dress has no...{w=0.4} *Ehm*...{w=0.4} Support." ("disgust", "narrow", "base", "down") + gen "Sorry?" ("base", xpos="far_left", ypos="head") + her "You know..." ("clench", "narrow", "worried", "R") + gen "Oh... I see..." ("base", xpos="far_left", ypos="head") + gen "Well your breasts should do shouldn't they?" ("base", xpos="far_left", ypos="head") + her "What?!" ("angry", "wide", "base", "mid") + her "Sir, I'm not putting on some dress without my bra..." ("angry", "squint", "annoyed", "mid") + gen "Why not?" ("base", xpos="far_left", ypos="head") + gen "It's all covered, isn't it?" ("base", xpos="far_left", ypos="head") + her "Yes, but--" ("mad", "closed", "base", "mid") + her "Why am I explaining myself to you?" ("soft", "happyCl", "annoyed", "mid") + her "I am not wearing it..." ("normal", "squint", "annoyed", "mid") + + ################## + ## Bunny Outfit ## + ################## + elif item == her_outfit_bunny: #Req 19 (top, stockings) + gen "I've got this bunny costume I'd like you to wear." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "A what?!" ("disgust", "wide", "base", "mid") + gen "A Bunny costume." ("base", xpos="far_left", ypos="head") + her "Why would you even own such a thing?" ("open", "squint", "annoyed", "mid") + gen "Own? I bought it for you, of course!" ("base", xpos="far_left", ypos="head") + her "You bought me a bunny costume?" ("angry", "narrow", "annoyed", "mid") + gen "...{w=0.4} No?" ("base", xpos="far_left", ypos="head") + gen "It's just a prank, bro! {w=0.3} *Err*....{w=0.3} No!{w=0.3} Snape dared me to try and make you wear it!" ("base", xpos="far_left", ypos="head") + her "Professor Snape did?" ("upset", "squint", "annoyed", "mid") + gen "...{w=0.4} Yes?" ("base", xpos="far_left", ypos="head") + her "Well, that kind of humour is very much like him..." ("soft", "squint", "annoyed", "R") + gen "(When in doubt, blame Snape!)" ("base", xpos="far_left", ypos="head") + elif her_whoring < 13: + her "*Err*... You're joking right?" ("clench", "narrow", "base", "mid") + her "Surely you don't expect me to put on something so--" ("open", "closed", "annoyed", "mid") + gen "*Hah-Ha*... Yeah, I'm a bit of a hop-timist sometimes!" ("base", xpos="far_left", ypos="head") + her "What?" ("clench", "squint", "base", "mid") + gen "*Heh*...{w=0.3} Never mind." ("base", xpos="far_left", ypos="head") + else: # < 19 + her "*Ehm*..." ("annoyed", "squint", "base", "R", cheeks="blush") + her "It's a bit much, don't you think?" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Don't be silly... Just hop right into it." ("base", xpos="far_left", ypos="head") + her "*Hmm*... I think I'll pass." ("angry", "closed", "base", "mid", cheeks="blush") + her "" ("normal", "squint", "base", "R", cheeks="blush") + + ############################### + ## Poker Outfit (token shop) ## + ############################### + elif item == her_outfit_poker: #Req 19 (panties, bra) + gen "I spent some tokens getting this outfit for you..." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "And you're expecting me to just wear this thing because you've won it?" ("open", "narrow", "annoyed", "mid") + her "(Does he think he can play me like he plays games?)" ("clench", "narrow", "base", "R") + gen "But, I won... fair and square..." ("angry", xpos="far_left", ypos="head") + her "Well, I'm not some prize for you to win in a game..." ("open", "narrow", "annoyed", "mid") + gen "Actually--" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "base", "annoyed", "mid") + gen "Alright... Never mind then..." ("base", xpos="far_left", ypos="head") + elif her_whoring < 13: + her "And you winning it means that I'm supposed to wear it?" ("angry", "narrow", "annoyed", "mid") + gen "Pretty sure that's how it works." ("base", xpos="far_left", ypos="head") + her "*Hmm*... I don't think so..." ("disgust", "narrow", "annoyed", "R") + her "You may be a winner [genie_name] but that sure doesn't give you some privilege to make me wear--" ("open", "closed", "annoyed", "mid") + her "Whatever this...{w=0.4} Thing... Is supposed to be." ("angry", "narrow", "annoyed", "mid") + gen "(Damn it...)" ("base", xpos="far_left", ypos="head") + else: # < 19 + her "*Err*... Am I supposed to be some kind of prize for you winning games?" ("clench", "narrow", "base", "R") + gen "I mean, this outfit was practically made for you..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "mid", cheeks="blush") + gen "Come on... Surely you can't resist basking in my glory." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "mid") + her "Well, I'm sorry but looks to me as if you spent your hard earned tokens on a piece of fabric." ("open", "narrow", "base", "R") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(Guess even a smidge of my fame is too much for her...)" ("base", xpos="far_left", ypos="head") + + ################# + ## Maid Outfit ## + ################# + elif item == her_outfit_maid: #Req 4 + gen "Could you put on this maid's outfit?" ("base", xpos="far_left", ypos="head") + her "A maid's outfit?" ("upset", "squint", "base", "mid") + her "Isn't cleaning part of the house elves job?" ("open", "closed", "annoyed", "mid") + her "(Not that I approve of this horrible house elf enslavement...)" ("annoyed", "closed", "annoyed", "mid") + gen "I mean, I'd be fine if you just--" ("base", xpos="far_left", ypos="head") + her "I have no time to clean up your mess, you'll have to do that yourself..." ("open", "happy", "annoyed", "mid") + gen "(I don't think there's enough tissues in this world for that.)" ("base", xpos="far_left", ypos="head") + gen "Very well, Miss Granger..." ("base", xpos="far_left", ypos="head") + + ######################### + ## Sling Bikini Outfit ## + ######################### + elif item == her_outfit_bikini3: #Req 17 (panties, bra) + gen "Put on this bikini for me will you." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "A bikini?!" ("shock", "wide", "base", "mid") + gen "Wow, excited much?" ("grin", xpos="far_left", ypos="head") + gen "Well then, here you go!" ("grin", xpos="far_left", ypos="head") + her "Sir!" ("clench", "wide", "base", "down") + her "What are these chains?!" ("angry", "wide", "base", "down") + gen "Oh, those!" ("base", xpos="far_left", ypos="head") + gen "They are the straps I believe." ("base", xpos="far_left", ypos="head") + gen "Pretty cool, right?" ("base", xpos="far_left", ypos="head") + her "Cool?!" ("angry", "wide", "angry", "mid") + gen "Is that not how you say it anymore?" ("base", xpos="far_left", ypos="head") + gen "I'm not really up to date with the \"lingo\" these days." ("base", xpos="far_left", ypos="head") + her "Are you crazy?!" ("scream", "squint", "annoyed", "mid") + gen "I mean... at least I didn't say \"Tubular\"." ("base", xpos="far_left", ypos="head") + her "Asking me to wear a normal bikini is bad enough, but this..." ("disgust", "closed", "angry", "mid") + gen "*Huh*? Looks pretty normal to me... From where I'm from--" ("base", xpos="far_left", ypos="head") + gen "I mean--" ("angry", xpos="far_left", ypos="head") + her "Then you probably need to get your eyes checked..." ("angry", "base", "angry", "mid") + her "Because this bikini you got me would surely never be an appropriate--" ("angry", "base", "angry", "R") + gen "Fine... Whatever..." ("base", xpos="far_left", ypos="head") + elif her_whoring < 13: + her "A bikini?" ("disgust", "squint", "base", "mid") + gen "Indeed... This one right here..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "wide", "base", "down") + her "[genie_name], You can't be serious!" ("open", "closed", "annoyed", "mid", cheeks="blush") + gen "About what? It's a bikini is it not?" ("base", xpos="far_left", ypos="head") + her "These straps are made of chains! Surely that wouldn't even help to keep them on..." ("angry", "narrow", "annoyed", "down", cheeks="blush") + gen "I'm sure you'll find a way..." ("base", xpos="far_left", ypos="head") + her "I won't!" ("scream", "closed", "annoyed", "mid") + gen "Don't put yourself down like that... I'm sure some spell would--" ("base", xpos="far_left", ypos="head") + her "I won't, because I'm not putting it on..." ("angry", "narrow", "angry", "mid") + gen "Oh...{w=0.4} Right..." ("base", xpos="far_left", ypos="head") + else: # < 17 + her "A bikini?" ("base", "base", "base", "mid") + her "Well, I suppose that wouldn't be too--" ("base", "base", "base", "mid") + gen "This one..." ("base", xpos="far_left", ypos="head") + her "That one?" ("base", "base", "base", "mid") + her "Sir, are you sure this is..." ("base", "base", "base", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... I mean it looks a bit..." ("base", "base", "base", "mid") + gen "A bit what?" ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("base", "base", "base", "mid") + gen "Come on, it's not that bad... Just put it on." ("base", xpos="far_left", ypos="head") + her "I...{w} No, I'm sorry... It's too much..." ("base", "base", "base", "mid") + + ########################### + ## Leather Bikini Outfit ## + ########################### + elif item == her_outfit_bikini2: #Req 16 (panties, bra) + gen "Put on this bikini for me." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "For you?!" ("disgust", "base", "annoyed", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + her "Sir, I'm not some doll for you to dress up!" ("scream", "closed", "annoyed", "mid") + her "Especially not in something like a bikini!" ("angry", "narrow", "angry", "mid") + gen "(She's not? Then what the fuck is this wardrobe UI for?)" ("base", xpos="far_left", ypos="head") + gen "My mistake I guess..." ("base", xpos="far_left", ypos="head") + else: # < 16 + her "You want me to put on a bikini?" ("upset", "squint", "base", "mid", cheeks="blush") + gen "Yeah, this leather one." ("base", xpos="far_left", ypos="head") + her "A leather bikini?!?" ("clench", "narrow", "base", "down", cheeks="blush") + gen "I'm sure it's not real leather..." ("base", xpos="far_left", ypos="head") + her "That... That's not the point!" ("open", "closed", "worried", "mid", cheeks="blush") + gen "Oh... I'm sorry, it usually is with this type of thing..." ("base", xpos="far_left", ypos="head") + her "You actually expect me to--" ("angry", "squint", "base", "mid", cheeks="blush") + gen "I didn't ship it from anywhere, it's made locally." ("base", xpos="far_left", ypos="head") + her "[genie_name], I don't care about where you got it from... It's the fact that--" ("angry", "narrow", "worried", "mid", cheeks="blush") + gen "Jeez, perhaps you need to take a good look at yourself then." ("base", xpos="far_left", ypos="head") + her "What?" ("clench", "squint", "base", "mid", cheeks="blush") + gen "Spending a bit more is worth it if it supports your local community." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "squint", "base", "mid") + gen "Stimulating the economy and all that stuff..." ("base", xpos="far_left", ypos="head") + if her_whoring < 13: + her "I'm not wearing it for the fact that it's a bikini... It's weird..." ("annoyed", "squint", "base", "R", cheeks="blush") + gen "(*Heh-heh*... Stimulating...)" ("grin", xpos="far_left", ypos="head") + gen "Anyway, so you're putting it on or what?" ("base", xpos="far_left", ypos="head") + her "I am not..." ("normal", "narrow", "base", "mid", cheeks="blush") + else: # < 16: + her "I don't want to put on a bikini in your office." ("open", "closed", "base", "mid", cheeks="blush") + her "Standing in my underwear is weird enough..." ("annoyed", "squint", "base", "R", cheeks="blush") + gen "Whatever you say [hermione_name]..." ("base", xpos="far_left", ypos="head") + + ######################## + ## Rave Bikini Outfit ## + ######################## + elif item == her_outfit_bikini1: #Req 18 (panties, bra) + gen "I've got this bikini for you to wear today." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "A bikini?!" ("clench", "wide", "worried", "mid") + gen "Yep, this one right here." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "squint", "base", "down") + gen "Pretty neat, isn't it?" ("base", xpos="far_left", ypos="head") + her "Where's the rest of it?!" ("disgust", "wide", "base", "mid", cheeks="blush") + gen "What do you mean the rest? Isn't a bikini supposed to only come in two pieces?" ("base", xpos="far_left", ypos="head") + her "Isn't a bikini supposed to-- Oh... I don't know..." ("angry", "squint", "annoyed", "mid", cheeks="blush") + with hpunch + her "Cover your privates?!" ("scream", "closed", "annoyed", "mid", cheeks="blush") + gen "Doesn't it do that?" ("base", xpos="far_left", ypos="head") + her "There's barely any fabric to cover anything!" ("disgust", "base", "annoyed", "mid", cheeks="blush") + gen "Very environmentally friendly isn't it?" ("base", xpos="far_left", ypos="head") + her "I am not wearing this..." ("mad", "base", "annoyed", "mid", cheeks="blush") + elif her_whoring < 13: + her "A bikini?" ("clench", "squint", "worried", "mid", cheeks="blush") + gen "This one..." ("base", xpos="far_left", ypos="head") + her "That... That one?!" ("angry", "squint", "base", "down", cheeks="blush") + gen "Yep... Now, if you could just--" ("base", xpos="far_left", ypos="head") + her "I am not wearing this..." ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "Why not?!" ("angry", xpos="far_left", ypos="head") + her "What do you think?" ("angry", "base", "annoyed", "mid", cheeks="blush") + gen "Oh... I see..." ("base", xpos="far_left", ypos="head") + her "Finally, you get it..." ("open", "closed", "annoyed", "mid", cheeks="blush") + gen "I'd gladly help you tie it around your back if you can't reach." ("grin", xpos="far_left", ypos="head") + her "That's not why!" ("annoyed", "base", "annoyed", "mid", cheeks="blush") + her "*Grr*... I can't believe you..." ("clench", "narrow", "base", "R", cheeks="blush") + her "I am not wearing this... This excuse of a bikini..." ("annoyed", "closed", "base", "mid", cheeks="blush") + gen "Well excuuuuuse me, princess..." ("base", xpos="far_left", ypos="head") + else: # < 18 + her "A bikini?" ("open", "squint", "base", "mid", cheeks="blush") + gen "This one." ("base", xpos="far_left", ypos="head") + her "That one?" ("angry", "narrow", "base", "down", cheeks="blush") + gen "Yes, that one." ("base", xpos="far_left", ypos="head") + her "Really?" ("angry", "squint", "base", "mid", cheeks="blush") + gen "Really..." ("base", xpos="far_left", ypos="head") + her "Are you sure--" ("angry", "squint", "base", "mid", cheeks="blush") + gen "I am--...{w=0.4} How long are you going to keep this up?" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "squint", "base", "R", cheeks="blush") + her "Sir, surely this kind of bikini..." ("normal", "closed", "base", "mid", cheeks="blush") + her "Why it looks like something you might wear at..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "At what, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("upset", "narrow", "base", "mid", cheeks="blush") + gen "A porn shoot?" ("base", xpos="far_left", ypos="head") + her "I...{w=0.4} Yes." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "You've watched porn [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "What?!" ("clench", "squint", "base", "mid", cheeks="blush") + gen "You just agreed with what I said... Which means you've watched porn before." ("base", xpos="far_left", ypos="head") + her "I...{w=0.4} I have not!" ("annoyed", "closed", "annoyed", "mid", cheeks="blush") + her "I swear, I've never--" ("open", "closed", "annoyed", "mid", cheeks="blush") + gen "Look, I'm not judging." ("base", xpos="far_left", ypos="head") + her "But..." ("clench", "squint", "worried", "mid", cheeks="blush") + her "You...{w=0.4} Sorry [genie_name], but this outfit is too much..." ("open", "narrow", "worried", "R", cheeks="blush") + + ################################ + ## Pizza Slut Outfit (mirror) ## + ################################ + elif item == her_outfit_pizza: #Req 19 (top, panties) + gen "Put this pizza on." ("base", xpos="far_left", ypos="head") + if her_whoring < 13: + her "Put it on, [genie_name]?" ("normal", "squint", "base", "mid") + gen "Yes, put it on." ("base", xpos="far_left", ypos="head") + her "Do you want me to heat it up?" ("open", "squint", "worried", "mid") + gen "No, I want you to put it on." ("base", xpos="far_left", ypos="head") + her "*Huh*?" ("annoyed", "squint", "base", "mid") + gen "Put... it--" ("base", xpos="far_left", ypos="head") + gen "You know what... Forget it." ("base", xpos="far_left", ypos="head") + else: # < 19 + her "Put it on, [genie_name]?" ("normal", "squint", "base", "mid") + gen "Yes..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "squint", "base", "mid") + her "..." ("normal", "squint", "base", "stare") + her "Surely you can't be serious..." ("disgust", "squint", "base", "mid") + her "You want me to wear...{w=0.4} Pizza?" ("angry", "narrow", "base", "down") + her "Where on earth did you get an idea like this?" ("open", "closed", "worried", "mid") + gen "In a dream." ("base", xpos="far_left", ypos="head") + her "...{w} Then it will stay that way..." ("normal", "narrow", "base", "R") + gen "(Such a pizzawork that one...)" ("base", xpos="far_left", ypos="head") + + ################### + ## Ribbon Outfit ## + ################### + elif item == her_outfit_ribbon: #Req 18 (bra, panties) + gen "I've got this thing that I'd like you to wrap for me." ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "You want me to wrap a gift for you?" ("annoyed", "squint", "base", "mid") + gen "Yes..." ("base", xpos="far_left", ypos="head") + her "I guess I could do that..." ("open", "closed", "base", "mid") + gen "Here's the ribbons..." ("base", xpos="far_left", ypos="head") + her "Thank you." ("base", "base", "base", "mid") + gen "Go on..." ("base", xpos="far_left", ypos="head") + her "[genie_name], you've not provided me any wrapping paper..." ("open", "squint", "base", "mid") + her "Or whatever it is you wanted me to wrap." ("open", "base", "base", "mid") + gen "My mistake... I should've been more clear." ("base", xpos="far_left", ypos="head") + gen "You won't need any paper, the ribbons should do." ("base", xpos="far_left", ypos="head") + her "Right... but what about--" ("angry", "base", "base", "mid") + gen "Now take your clothes off and tie those ribbons around yourself." ("base", xpos="far_left", ypos="head") + her "..." ("clench", "wide", "base", "mid") + her "You want me to what?!" ("disgust", "base", "annoyed", "mid") + gen "Take your clothes--" ("base", xpos="far_left", ypos="head") + her "[genie_name], are you crazy?!" ("scream", "happyCl", "annoyed", "mid") + gen "You've learnt how to tie a knot have you not?" ("base", xpos="far_left", ypos="head") + gen "If it's an issue I suppose I could--" ("base", xpos="far_left", ypos="head") + her "You want me to take my clothes off and only wear a ribbon?!" ("clench", "base", "annoyed", "mid") + gen "Ribbons actually... There's two of them." ("base", xpos="far_left", ypos="head") + her "Oh... Then I suppose it's fine then!" ("disgust", "narrow", "annoyed", "R") + gen "I knew you'd come around sooner rather than--" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "base", "angry", "mid") + gen "Ah... Sarcasm... My most loyal friend yet also my greatest enemy..." ("base", xpos="far_left", ypos="head") + elif her_whoring < 13: + her "And that gift is?" ("open", "narrow", "base", "mid") + gen "It's you!" ("base", xpos="far_left", ypos="head") + her "*Ugh*..." ("disgust", "narrow", "base", "R") + her "You really expect me to gift wrap myself?" ("annoyed", "closed", "annoyed", "mid") + gen "Yep." ("base", xpos="far_left", ypos="head") + gen "But don't worry. I'll unwrap my present myself." ("base", xpos="far_left", ypos="head") + her "Gross..." ("annoyed", "narrow", "base", "R") + gen "Don't put yourself down like that." ("base", xpos="far_left", ypos="head") + her "I am not putting this on..." ("open", "narrow", "annoyed", "mid") + gen "Why not?" ("angry", xpos="far_left", ypos="head") + her "I am not some gift for you to unwrap, [genie_name]..." ("disgust", "narrow", "base", "mid") + gen "Worst birthday ever..." ("base", xpos="far_left", ypos="head") + else: # < 18 + her "It's me isn't it?" ("disgust", "narrow", "base", "mid") + gen "It's--" ("grin", xpos="far_left", ypos="head") + gen "How did you know?" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "mid") + gen "Am I really that predicable?" ("base", xpos="far_left", ypos="head") + her "Yes..." ("normal", "narrow", "base", "mid") + gen "Well... take this for predictable..." ("base", xpos="far_left", ypos="head") + gen "I want you to tie it around your naked body!" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "mid") + gen "Don't tell me you knew that too?" ("base", xpos="far_left", ypos="head") + her "I mean..." ("open", "closed", "base", "mid") + gen "*Hmm*... In that case I want you to..." ("base", xpos="far_left", ypos="head") + gen "Tie it around your tits so hard it squeezes them together!" ("grin", xpos="far_left", ypos="head") + her "..." ("clench", "wide", "base", "mid") + gen "Didn't expect that one did you?" ("grin", xpos="far_left", ypos="head") + her "I am not doing that!" ("open", "base", "annoyed", "mid") + gen "(Aw, shit...)" ("base", xpos="far_left", ypos="head") + gen "What about doing it loosely?" ("base", xpos="far_left", ypos="head") + her "..." ("upset", "base", "annoyed", "mid") + gen "Yeah, yeah... Fine... Not like it's my birthday or anything..." ("base", xpos="far_left", ypos="head") + + ###################### + ## Christmas Outfit ## + ###################### + elif item == her_outfit_xmas: #Req 13 (top, bottom) + gen "I'm feeling festive today so could you put on the Christmas outfit?" ("base", xpos="far_left", ypos="head") + if her_whoring < 4: + her "What is wrong with this outfit?!" ("clench", "squint", "worried", "down", cheeks="blush") + her "Surely this isn't appropriate holiday attire!" ("angry", "narrow", "annoyed", "mid", cheeks="blush") + gen "I don't know... Might jingle a couple of balls..." ("base", xpos="far_left", ypos="head") + her "What did you just say?!" ("clench", "squint", "base", "mid", cheeks="blush") + gen "Bells... I said bells..." ("base", xpos="far_left", ypos="head") + gen "Come on, just put the thing on. I'm sure Santa would give us a white Christmas if you did." ("base", xpos="far_left", ypos="head") + her "I think I'll pass..." ("open", "base", "annoyed", "R", cheeks="blush") + gen "(Balls...)" ("base", xpos="far_left", ypos="head") + else: # < 13 + her "Are those horns?" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "Antlers actually..." ("base", xpos="far_left", ypos="head") + her "Antlers..." ("upset", "narrow", "base", "down", cheeks="blush") + her "And a bell..." ("annoyed", "narrow", "base", "down", cheeks="blush") + her "You trying to make me to look like some sort of reindeer?" ("angry", "closed", "annoyed", "mid", cheeks="blush") + gen "Cute, aren't they?" ("grin", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "annoyed", "mid", cheeks="blush") + gen "You'd be like a sexy reindeer!" ("grin", xpos="far_left", ypos="head") + gen "Actually, that does sound a bit--" ("base", xpos="far_left", ypos="head") + her "I'm not putting this on..." ("angry", "closed", "annoyed", "mid", cheeks="blush") + + ##################### + ## Wrestling Robes ## + ##################### + elif item == her_outfit_wrestling: #Req 3 (robe, bra, panties, misc) + gen "I've got these wrestling robes for you to wear today." ("base", xpos="far_left", ypos="head") + her "Wrestling--" ("angry", "base", "base", "mid") + her "[genie_name], these would show off my underwear!" ("clench", "narrow", "base", "down") + gen "So? You showed off a lot more in the mirror." ("base", xpos="far_left", ypos="head") + her "In the what?" ("angry", "base", "base", "mid") + gen "Oh yeah... You wouldn't know about that..." ("base", xpos="far_left", ypos="head") + gen "Never mind then..." ("base", xpos="far_left", ypos="head") + + else: + $ random_number = renpy.random.randint(1, 5) + + if random_number == 1: + her "I am not wearing that..." ("annoyed", "base", "angry", "down") + elif random_number == 2: + her "Thanks, but no thanks..." ("annoyed", "happyCl", "angry", "R") + elif random_number == 3: + her "You actually think I'd put on something like that?" ("annoyed", "wide", "angry", "mid") + elif random_number == 4: + her "I'm not some Slytherin skank [genie_name], ask them to humiliate themselves for your amusement..." ("open", "narrow", "angry", "L") + elif random_number == 5: + her "This is too much." ("annoyed", "narrow", "angry", "R") + + return + +label her_reaction_blacklist(item): + her "I would have to take off some my clothes to fit into this..." ("disgust", "base", "base", "down") + + if "top" in item.blacklist and hermione.is_worn("top"): + her "My top won't fit at all." ("open", "narrow", "angry", "mid") + + if "bottom" in item.blacklist and hermione.is_worn("bottom"): + her "The bottoms I'm wearing won't be of much use." ("open", "narrow", "angry", "mid") + + if "bra" in item.blacklist and hermione.is_worn("bra"): + her "Wearing a bra with this would be impossible." ("annoyed", "narrow", "angry", "L", cheeks="blush") + + if "panties" in item.blacklist and hermione.is_worn("panties"): + her "And how in the world am I supposed to wear panties with this?" ("angry", "narrow", "angry", "mid", cheeks="blush") + + gen "Pretty please?" ("base", xpos="far_left", ypos="head") + her "Fine, I'll wear it... but I'm putting my old clothes back on once you change your mind." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + return + +label her_reaction_fallback(item): + if her_whoring < get_character_requirement("hermione", "unequip top") and not "top" in hermione.blacklist and not item.type == "top": + $ hermione.equip(her_top_school1) + + if her_whoring < get_character_requirement("hermione", "unequip bottom") and not "bottom" in hermione.blacklist and not item.type == "bottom": + $ hermione.equip(her_bottom_school1) + + if her_whoring < get_character_requirement("hermione", "unequip bra") and not "bra" in hermione.blacklist and not item.type == "bra": + $ hermione.equip(her_bra_base1) + + if her_whoring < get_character_requirement("hermione", "unequip panties") and not "panties" in hermione.blacklist and not item.type == "panties": + $ hermione.equip(her_panties_base1) + + her "Just give me a second, I need to get my clothes back in order." ("open", "base", "base", "R") + her "" ("base", "base", "base", "mid") + return diff --git a/game/scripts/characters/hooch/common.rpy b/game/scripts/characters/hooch/common.rpy new file mode 100644 index 00000000..52688dff --- /dev/null +++ b/game/scripts/characters/hooch/common.rpy @@ -0,0 +1,65 @@ + +label end_hooch_event: + hide hooch_main + with d3 + pause.5 + + $ hooch.xzoom = 1 + $ active_girl = None + $ hooch_busy = True + $ hooch.wear("all") + $ hooch.set_cum(None) + + call music_block + jump main_room_menu + +define character.hooch_say = Character("hooch_name", show_icon="hooch", dynamic=True) + +init python: + def hoo(what, mouth=False, eyes=False, eyebrows=False, pupils=False, cheeks=None, tears=None, + emote=None, face=None, xpos=None, ypos=None, pos=None, flip=None, trans=None, animation=False, **kwargs): + + redraw = False + tag = hooch.tag + layer = hooch.layer + #showing = renpy.showing(name=tag, layer=layer) + + if xpos != None or ypos != None: + xpos = sprite_pos.get("x").get(xpos, xpos) or hooch.pos[0] + ypos = sprite_pos.get("y").get(ypos, ypos) or hooch.pos[1] + hooch.pos = (xpos, ypos) + redraw = True + + head_only = hooch.pos[1] == sprite_pos.get("y").get("head") + + if any((mouth, eyes, eyebrows, pupils, cheeks, tears)): + hooch.set_face(mouth=mouth, eyes=eyes, eyebrows=eyebrows, pupils=pupils, cheeks=cheeks, tears=tears) + redraw = True + + hooch.set_emote(emote) + + if animation != False: + if isinstance(animation, list): + hooch.animation = animation + else: + hooch.animation = [animation] + redraw = True + + if flip != None: + hooch.xzoom = -1 if flip else 1 + redraw = True + + if redraw: + hooch.show() + + if not renpy.in_rollback(): + if trans: + renpy.with_statement(trans) + else: + renpy.with_statement(d2) + + if what: + character.hooch_say(what, **kwargs) + + if head_only: + hooch.hide() diff --git a/game/scripts/characters/hooch/vars.rpy b/game/scripts/characters/hooch/vars.rpy new file mode 100644 index 00000000..78b33fa8 --- /dev/null +++ b/game/scripts/characters/hooch/vars.rpy @@ -0,0 +1,14 @@ + +# Stats +default hoo_tier = 1 +default hoo_whoring = 0 +default hoo_reputation = 0 +default hoo_mood = 0 + +# Flags +default hooch_busy = False +default hooch_unlocked = False + +# Names +default hooch_genie_name = "Sir Dumbledore" +default hooch_name = "Madam Hooch" diff --git a/game/scripts/characters/hooch/wardrobe.rpy b/game/scripts/characters/hooch/wardrobe.rpy new file mode 100644 index 00000000..3795f340 --- /dev/null +++ b/game/scripts/characters/hooch/wardrobe.rpy @@ -0,0 +1,68 @@ +############### +## Character ## +############### + +default hooch = Doll(name="hooch", + clothes={"headgear": [None, 15, True], + "hair": [None, 4, True], + "glasses": [None, 12, True], + "earrings": [None, 14, True], + "neckwear": [None, 16, True], + "robe": [None, 22, True], + "gloves": [None, 14, True], + "top": [None, 15, True], + "bra": [None, 9, True], + "bottom": [None, 8, True], + "garterbelt": [None, 7, True], + "panties": [None, 6, True], + "stockings": [None, 5, True], + "buttplug": [None, -1, True], + "pubes": [None, 3, True], + "tattoo0": [None, 1, True], + "tattoo1": [None, 1, True], + "tattoo2": [None, 1, True], + "tattoo3": [None, 1, True], + "tattoo4": [None, 1, True], + "piercing0": [None, 2, True], + "piercing1": [None, 2, True], + "piercing2": [None, 2, True], + "piercing3": [None, 2, True], + "piercing4": [None, 2, True], + "accessory0": [None, 12, True], + "accessory1": [None, 12, True], + "accessory2": [None, 12, True], + "accessory3": [None, 12, True], + "accessory4": [None, 12, True], + "makeup0": [None, 3, True], + "makeup1": [None, 3, True], + "makeup2": [None, 3, True], + "makeup3": [None, 3, True], + "makeup4": [None, 3, True]}, + face={"tears": [None, 12, True], + "cheeks": [None, 7, True], + "eyebrows": ["base", 11, True], + "eyes": ["base", 8, True], + "pupils": ["mid", 9, True], + "mouth": ["base", 13, True]}, + body={"base": ["front", 0], + "breasts": [None, 2], + "backside": [None, 1]} + ) + +############### +## Hair ## +############### + +default hoo_hair_base = DollCloth("hooch", ("head", "hair"), "hair", "base", [[125, 72, 42, 255]], unlocked=True) +default hoo_panties_sport = DollCloth("hooch", ("lower undergarment", "panties"), "panties", "sport", [[192, 65, 54, 255], [237, 225, 255, 255]], unlocked=True) +default hoo_bra_sport = DollCloth("hooch", ("upper undergarment", "bras"), "bra", "sport", [[192, 65, 54, 255], [237, 225, 255, 255]], unlocked=True) +default hoo_top_sport = DollCloth("hooch", ("upper body", "shirts"), "top", "sport_shirt", [[237, 225, 255, 255], [139, 104, 192, 255]], unlocked=True) +default hoo_bottom_sport = DollCloth("hooch", ("lower body", "skirts"), "bottom", "sport_trousers", [[139, 104, 192, 255], [237, 225, 255, 255]], unlocked=True) +default hoo_gloves_sport = DollCloth("hooch", ("upper body", "gloves"), "gloves", "sport_gloves", [[78, 72, 115, 255]], unlocked=True) +default hoo_robe_sport = DollCloth("hooch", ("upper body", "robes"), "robe", "sport_robe", [[59, 63, 88, 255], [112, 34, 111, 255], [198, 118, 198, 255]], unlocked=True) +default hoo_headgear_sport = DollCloth("hooch", ("head", "headgear"), "headgear", "sport_goggles", [[96, 134, 145, 255], [154, 98, 50, 255], [49, 60, 91, 255]], unlocked=True) +default hoo_accessory_broom = DollCloth("hooch", ("misc", "accessory"), "accessory1", "broom", [[144, 83, 64, 255], [121, 87, 71, 255], [163, 159, 112, 255]], unlocked=True, zorder=22) +default hoo_accessory_broom_dildo = DollCloth("hooch", ("misc", "accessory"), "accessory1", "broom_dildo", [[144, 83, 64, 255], [121, 87, 71, 255], [163, 159, 112, 255]], unlocked=True, zorder=22) + +default hoo_outfit_default = DollOutfit([hoo_hair_base, hoo_panties_sport, hoo_bra_sport, hoo_top_sport, hoo_bottom_sport, hoo_gloves_sport, hoo_robe_sport, hoo_headgear_sport, hoo_accessory_broom], unlocked=True) +default hoo_outfit_last = DollOutfit([hoo_hair_base, hoo_panties_sport, hoo_bra_sport, hoo_top_sport, hoo_bottom_sport, hoo_gloves_sport, hoo_robe_sport, hoo_headgear_sport, hoo_accessory_broom], hidden=True) diff --git a/game/scripts/characters/luna/chibi.rpy b/game/scripts/characters/luna/chibi.rpy new file mode 100644 index 00000000..baccaabf --- /dev/null +++ b/game/scripts/characters/luna/chibi.rpy @@ -0,0 +1,120 @@ +label lun_chibi(action=None, xpos=None, ypos=None, flip=False): + hide screen luna_chibi_scene # screen tag + + $ luna_chibi.position(xpos, ypos, flip) + + if action == "hide": + $ luna_chibi.hide() + return + elif action == "leave": + hide luna_main + hide screen bld1 + hide screen blktone + call play_sound("door") + $ luna_chibi.hide() + with d3 + pause .5 + return + elif action == "reset": + $ luna_chibi.do(None) + return + + $ luna_chibi.do(action) + + return + +label lun_walk(xpos=None, ypos=None, speed=1.0, action=None, reduce=False, path=None, flip=False): + call hide_characters + hide screen bld1 + hide screen blktone + with d3 + + if action == "enter": + call play_sound("door") + call lun_chibi(None, "door", "base", flip) + with d3 + if xpos or ypos: + $ luna_chibi.move((xpos, ypos), speed, reduce) + elif action == "leave": + $ luna_chibi.show() + $ luna_chibi.move(("door", "base"), speed, reduce) + call play_sound("door") + $ luna_chibi.hide() + with d3 + pause .5 + elif path: + $ luna_chibi.show() + $ luna_chibi.move(path, speed, reduce) + else: + $ luna_chibi.show() + $ luna_chibi.move((xpos, ypos), speed, reduce) + + return + +# Chibi definition +default luna_chibi = Chibi("luna", ["base"], update_luna_chibi, actions=luna_chibi_actions) + +define luna_chibi_actions = { + "lie": (False, "chibi_lie", "float_move"), + "float_move": (False, "chibi_float_move", 0) +} + +init python: + def update_luna_chibi(chibi): + if chibi.action == "walk": + if luna.is_worn("robe"): + chibi["base"] = "ch_lun walk_robe" + elif luna.is_worn("top") and luna.is_worn("bottom"): + chibi["base"] = "ch_lun walk_a" + elif luna.is_worn("bottom"): + chibi["base"] = "ch_lun walk_topless" + else: + chibi["base"] = "ch_lun walk_n" + + elif not chibi.action or chibi.action in ("stand", "lie", "float_move"): + if luna.is_worn("robe"): + chibi["base"] = "ch_lun blink_robe" + elif luna.is_worn("top") and luna.is_worn("bottom"): + chibi["base"] = "ch_lun blink_a" + elif luna.is_worn("bottom"): + chibi["base"] = "ch_lun blink_topless" + else: + chibi["base"] = "ch_lun blink_n" + + else: + # Assume chibi action has a matching image definition + chibi_image = "ch_lun {}".format(chibi.action or "stand") + chibi["base"] = chibi_image + + +# Sets up a chibi scene with Luna and Genie in it +label lun_chibi_scene(action="reset", xpos="mid", ypos="base"): + hide screen bld1 + hide screen blkfade + + call lun_chibi("hide") + call gen_chibi("hide") + + if current_room == "main_room": + $ desk_OBJ.hidden = True + $ chair_left_OBJ.hidden = True + + if action == "reset": + $ menu_y = 0.5 + call lun_chibi("stand", xpos, ypos) + call gen_chibi("sit_behind_desk") + + elif action in ("sit_on_lap", "sit_on_lap_grope"): + show screen luna_chibi_scene("ch_lun_scene " + action, pos=(218, 205)) + + elif action in ("inspect_idle", "inspect_idle_naked", "inspect_lean_idle_naked", "inspect_grope_breasts_naked", + "inspect_grope_vagina_naked", "inspect_lean_grope_breasts_naked", "inspect_lean_grope_vagina_naked"): + show screen luna_chibi_scene("ch_lun_scene " + action, pos=(218, 205)) + + return + +screen luna_chibi_scene(img, pos=None): + tag luna_chibi_scene + zorder desk_zorder + + add img pos pos diff --git a/game/scripts/characters/luna/chitchats.rpy b/game/scripts/characters/luna/chitchats.rpy new file mode 100644 index 00000000..34a6fc95 --- /dev/null +++ b/game/scripts/characters/luna/chitchats.rpy @@ -0,0 +1,176 @@ +label luna_chitchat: + + if luna_chatted: + return + + $ luna_chatted = True + + # Story related chitchats + + if luna_intro_E2 and not spectrespecs_E3 and thequibbler_ITEM.owned < 1: + lun "Have you acquired a copy of the magazine yet?" ("open", "base", "raised", "mid") + gen "Not yet." ("base", xpos="far_left", ypos="head") + lun "I'm sure somebody in the castle should have a copy." ("base", "base", "base", "R") + gen "Can't you give me--" ("base", xpos="far_left", ypos="head") + lun "Oh I'm so happy, my daddy will be ecstatic once he hears that {b}the{/b} Albus Dumbledore is buying his magazine." ("smile", "happyCl", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(Guess I should have a gander around the castle and see if anyone can get me a copy....)" ("base", xpos="far_left", ypos="head") + return + + if spectrespecs_E2 and not spectrespecs_E3: + lun "Have you acquired a copy of the magazine yet?" ("open", "base", "raised", "mid") + gen "I have!" ("base", xpos="far_left", ypos="head") + lun "Great!" ("smile", "happyCl", "base", "mid") + lun "What did you think?" ("base", "base", "base", "mid") + gen "Oh, I haven't read it yet." ("base", xpos="far_left", ypos="head") + lun "Oh..." ("soft", "base", "base", "R") + lun "Then let me know what you think once you've read it." ("open", "base", "base", "mid") + return + + if lun_tier == 1: + $ random_number = renpy.random.randint(1, 10) + + if random_number == 1: + lun "During today's potions lesson I remembered reading an article in the quibbler about the Valerian root." ("soft", "base", "base", "mid") + lun "It was talking about its calming properties and how chewing on it would produce the same effect as a Draught of Peace." ("open", "base", "base", "mid") + lun "Since we were brewing a Draught of Peace potion I brought up the article with professor Snape but he just laughed and prompted me to try it." ("normal", "base", "base", "mid") + lun "So I did, and let me tell you... I've never felt so relaxed in my life." ("grin", "base", "base", "mid") + + elif random_number == 2: + lun "I had a strange dream last night..." ("soft", "base", "base", "mid") + lun "I was sitting by a tree when a rabbit carrying a pocket watch jumped by, prompting me to follow it..." ("open", "base", "base", "mid") + lun "Must've been the cheese I ate before going to bed..." ("open", "base", "base", "down") + + elif random_number == 3: + lun "Acid pops are my favourite." ("crooked_smile", "base", "base", "mid") + lun "I always make sure to get some when I'm in Hogsmeade." ("base", "wink", "base", "mid") + lun "" ("base", "base", "base", "mid") + + elif random_number == 4: + lun "I was a bit disappointed when I found out the Thestrals live in the forbidden forest." ("annoyed", "base", "base", "R") + lun "I'm hoping I'll be able to ride one someday..." ("grin", "base", "base", "mid") + + elif random_number == 5: + lun "There something I've been meaning to ask you." ("open", "closed", "base", "mid") + lun "Could we not put up so many mistletoe's during the holiday celebrations?" ("soft", "base", "base", "mid") + lun "It would highly decrease the risk of a Nargle infestation." ("open", "base", "base", "mid") + + elif random_number == 6: + lun "Why are there no school trips at Hogwarts?" ("open", "base", "raised", "mid") + lun "I'd love to take one to Sweden and look for the Crumple-Horned Snorkack." ("grin", "base", "base", "mid") + + elif random_number == 7: + lun "Sir, you really need to do something about Peeves." ("annoyed", "base", "base", "R") + lun "He's been following me around chanting \"Loony Luna, Loony Luna, who would ever do yah\"..." ("open", "base", "base", "R") + + elif random_number == 8: + lun "I spotted some wrackspurts in one of the broom closets the other day." ("open", "closed", "base", "mid") + lun "You might wonder what I was doing in there." ("angry", "closed", "base", "mid") + lun "Inspecting the brooms for wrackspurts of course!" ("angry", "base", "base", "mid") + + elif random_number == 9: + lun "I hope we'll be able to contain this infestation within the school." ("open", "closed", "base", "mid") + lun "I'm a bit worried it might spread on one of our visits to Hogsmeade." ("annoyed", "base", "base", "R") + + elif random_number == 10: + lun "Sir, do you think wrackspurts could spread to animals?" ("open", "wide", "base", "mid") + lun "No, don't say anything... I can't bear the thought of it!" ("open", "happyCl", "base", "mid") + + elif lun_tier == 2: + $ random_number = renpy.random.randint(1, 10) + + if random_number == 1: + lun "My whole idea of wrackspurts got shattered once I found out they don't only attack people." ("open", "happyCl", "base", "mid") + lun "But they also hide in clothes!" ("open", "wide", "base", "mid") + lun "I found a sock completely filled with them once!" ("open", "wide", "base", "mid") + + elif random_number == 2: + lun "I feel like I could've nipped this infestation in the bud if only we had made spectrespecs mandatory years ago." ("open", "closed", "base", "mid") + lun "This school sure is lucky that you're here to help dealing with this, Sir." ("base", "narrow", "base", "mid") + + elif random_number == 3: + lun "I used to think Wrackspurts could only fly small distances." ("open", "base", "base", "mid") + lun "But then I saw some on the ceiling in Tonks' classroom!" ("clench", "wide", "base", "mid") + lun "I wonder if she was trying to fend them off with defensive magic..." ("open", "base", "base", "R") + + elif random_number == 4: + lun "I still can't believe you managed to channel the wrackspurts though your penis, sir." ("grin", "base", "base", "mid") + lun "You've got to teach me how to do that!" ("base", "wink", "base", "mid") + + elif random_number == 5: + lun "Are you able to cast other magic through your penis, sir?" ("open", "base", "raised", "mid") + lun "We should try it sometime!" ("grin", "base", "base", "mid") + + elif random_number == 6: + lun "I can't help but imagine what it'd look like to have a patronus cast through a penis..." ("base", "closed", "base", "mid") + lun "Is that a weird thing to be imagining?" ("soft", "base", "base", "mid") + + elif random_number == 7: + lun "I'm still not so sure I'll ever be able to get rid of these spurts myself..." ("annoyed", "narrow", "base", "down") + lun "If it requires a lot of focus that is... I'm not very good at that." ("soft", "narrow", "base", "R") + + elif random_number == 8: + lun "Are you sure we shouldn't clean your desk, sir?" ("soft", "base", "raised", "mid") + lun "Or are you worried they might spread elsewhere if we move them?" ("open", "base", "base", "mid") + + elif random_number == 9: + lun "Can you inspect my body today, sir?" ("angry", "base", "raised", "mid") + lun "Can you?" ("angry", "wide", "base", "mid") + lun "Please." ("angry", "wide", "base", "mid") + + elif random_number == 10: + lun "Sir, Is it supposed to feel really good when you rub your thighs together?" ("soft", "base", "raised", "mid") + + elif lun_tier == 3: + $ random_number = renpy.random.randint(1, 10) + + if random_number == 1: + lun "*Ehm*... Hypothetically... What would a person do if they got some wrackspurts stuck to their underwear?" ("open", "base", "base", "R") + + elif random_number == 2: + lun "I'm so glad the inspection was successful, I don't know what I'd do if we didn't get anywhere with it..." ("base", "narrow", "base", "R") + + elif random_number == 3: + lun "Is it possible to have magic fingers, sir?" ("soft", "base", "base", "mid", cheeks="blush") + lun "You know how some people are born with innate magic abilities." ("open", "closed", "base", "mid", cheeks="blush") + lun "I was just thinking about when you touched me down there..." ("soft", "narrow", "base", "R", cheeks="blush") + + elif random_number == 4: + lun "That thing I felt on my back when you helped me..." ("open", "base", "base", "R", cheeks="blush") + lun "*Hmm*... Nevermind..." ("base", "narrow", "base", "down") + + elif random_number == 5: + lun "I've been trying to figure out if there's any more sensitive areas on my body." ("open", "base", "base", "down") + lun "But it's not easy when you're ticklish..." ("annoyed", "base", "base", "down") + + elif random_number == 6: + lun "I've been thinking... since my nipples get hard sometime... I wonder if it's possible to rub them to get the wrackspurts out like you do your penis." ("soft", "base", "raised", "mid") + + elif random_number == 7: + lun "The wrackspurts appear to have been building up even faster than normal recently." ("soft", "narrow", "base", "R") + lun "I wonder why..." ("soft", "base", "base", "down") + + elif random_number == 8: + lun "I will become the greatest master baiter ever!" ("smile", "closed", "base", "mid") + lun "You watch me!" ("base", "wink", "base", "mid") + + elif random_number == 9: + lun "You said that my naked body helped you release the spurts, what did you mean by that exactly?" ("soft", "base", "raised", "mid") + lun "They're not flocking over to me are they?!" ("angry", "wide", "base", "mid") + + elif random_number == 10: + lun "How come you're so quick at unhooking a woman's bra, sir?" ("open", "base", "base", "down") + lun "Wait, what am I saying... Of course the great Dumbledore can do anything with ease..." ("angry", "wide", "base", "mid") + + # elif lun_tier == 4: + # $ random_number = renpy.random.randint(1, 10) + + # pass + # $ random_number = renpy.random.randint(1, 10) + # lun "My fingers just aren't big enough to get rid of these spurts properly." + # lun "I hope well be able to find even more ways to get rid of them." + + # lun "I can't believe how slippery it got down there when you had me touch myself." + # lun "A bunch of slimy buggers is what they are!" + + return diff --git a/game/scripts/characters/luna/common.rpy b/game/scripts/characters/luna/common.rpy new file mode 100644 index 00000000..c1a9b70c --- /dev/null +++ b/game/scripts/characters/luna/common.rpy @@ -0,0 +1,122 @@ + +# TODO: Replace values according to Luna's expressions list +define lun_face = { + "mouth": { + "neutral": ["base","open"], + "happy": ["base","grin"], + "naughty": ["soft","base"], + "horny": ["horny","base"], + "annoyed": ["upset","annoyed"], + "disgusted": ["disgust","upset"], + "angry": ["clench","mad","upset"] + }, + + "eyes": { + "neutral": ["base"], + "happy": ["happyCl"], + "naughty": ["narrow"], + "horny": ["narrow"], + "annoyed": ["narrow","base"], + "disgusted": ["base"], + "angry": ["base"] + }, + + "eyebrows": { + "neutral": ["base"], + "happy": ["base","raised"], + "naughty": ["base","raised"], + "horny": ["base","raised"], + "annoyed": ["annoyed"], + "disgusted": ["raised","worried"], + "angry": ["angry"] + }, + + "pupils": { + "neutral": ["mid"], + "happy": ["mid"], + "naughty": ["mid","up","downR"], + "horny": ["mid","stare","down"], + "annoyed": ["mid","downR","R"], + "disgusted": ["mid","down"], + "angry": ["mid"] + } +} + +label end_luna_event: + + call lun_chibi("hide") + hide luna_main + with d3 + pause.5 + + call update_luna + + $ active_girl = None + $ luna_busy = True + $ luna.wear("all") + + $ renpy.stop_predict(luna.get_image()) + $ renpy.stop_predict("characters/luna/face/*.webp") + + call music_block + jump main_room_menu + +label update_luna: + # Chibi Update + $ luna_chibi.update() + $ luna_chibi.position(flip=False) + $ luna.xzoom = 1 + hide screen luna_cloth_pile + + return + +define character.luna_say = Character("luna_name", show_icon="luna", dynamic=True) + +init python: + def lun(what, mouth=False, eyes=False, eyebrows=False, pupils=False, cheeks=None, tears=None, + emote=None, face=None, xpos=None, ypos=None, pos=None, flip=None, trans=None, animation=False, **kwargs): + + redraw = False + tag = luna.tag + layer = luna.layer + #showing = renpy.showing(name=tag, layer=layer) + + if xpos != None or ypos != None: + xpos = luna.pos[0] if xpos == None else sprite_pos.get("x").get(xpos, xpos) + ypos = luna.pos[1] if ypos == None else sprite_pos.get("y").get(ypos, ypos) + luna.pos = (xpos, ypos) + redraw = True + + head_only = luna.pos[1] == sprite_pos.get("y").get("head") + + if any((mouth, eyes, eyebrows, pupils, cheeks, tears)): + luna.set_face(mouth=mouth, eyes=eyes, eyebrows=eyebrows, pupils=pupils, cheeks=cheeks, tears=tears) + redraw = True + + luna.set_emote(emote) + + if animation != False: + if isinstance(animation, list): + luna.animation = animation + else: + luna.animation = [animation] + redraw = True + + if flip != None: + luna.xzoom = -1 if flip else 1 + redraw = True + + if redraw: + luna.show() + + if not renpy.in_rollback(): + if trans: + renpy.with_statement(trans) + else: + renpy.with_statement(d2) + + if what: + character.luna_say(what, **kwargs) + + if head_only: + luna.hide() diff --git a/game/scripts/characters/luna/events/favors/inspect_her_body.rpy b/game/scripts/characters/luna/events/favors/inspect_her_body.rpy new file mode 100644 index 00000000..33e4a779 --- /dev/null +++ b/game/scripts/characters/luna/events/favors/inspect_her_body.rpy @@ -0,0 +1,1359 @@ + + +### Luna Inspect Body ### + +label ll_pf_inspect: + + gen "{size=-4}(I think a physical examination is in order...){/size}" ("base", xpos="far_left", ypos="head") + + if ll_pf_inspect.counter < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump luna_favor_menu + + # Start Event + $ ll_pf_inspect.start() + + # End Event + label .end: + + # Setup + stop music fadeout 2.0 + call hide_characters + + call lun_chibi("stand", flip=False) + call gen_chibi("sit_behind_desk") + + # Increase level + if lun_tier == 2: + if lun_whoring < 6: + $ lun_whoring += 1 + + elif lun_tier == 3: + if lun_whoring < 9: + $ lun_whoring += 1 + + jump end_luna_event + +### Tier 2 ### + +label ll_pf_inspect_T2_E1_intro: + + gen "Ready for your physical, [luna_name]?" ("grin", xpos="far_left", ypos="head") + lun "My Physical, [lun_genie_name]?" ("open", "base", "raised", "mid") + gen "Your inspection!" ("grin", xpos="far_left", ypos="head") + lun "Oooh...{w=0.3} The inspection!" ("grin", "base", "base", "mid") + lun "Yes, I'm ready!" ("base", "base", "base", "mid") + gen "Great...{w=0.4} Then you can begin undressing." ("base", xpos="far_left", ypos="head") + lun "Alright, just give me a--" ("grin", "base", "base", "down") + gen "Wait...{w=0.4} Before you do that." ("base", xpos="far_left", ypos="head") + + $ genie_masturbating = True + $ lun_jerk_off_counter += 1 + hide luna_main + call nar(">You take your cock out of your robes and begin stroking it...") + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + gen "There we go... Might as well." ("base", xpos="far_left", ypos="head") + lun "Good thinking [lun_genie_name]!" ("crooked_smile", "narrow", "base", "mid") + gen "Right... Now to give you a full assessment of your goods...{w=0.4} *Err*...{w=0.4} Orifices." ("base", xpos="far_left", ypos="head") + if luna.is_any_worn("robe", "accessory"): + lun "Of course [lun_genie_name]... Let me just take this off..." ("base", "base", "base", "mid") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("robe", "accessory") + with d3 + pause .5 + + gen "Great." ("base", xpos="far_left", ypos="head") + if luna.is_worn("top"): + gen "Now then..." ("base", xpos="far_left", ypos="head") + gen "Let's start with your breasts." ("base", xpos="far_left", ypos="head") + gen "Take that top off for me will you." ("base", xpos="far_left", ypos="head") + lun "Of course, [lun_genie_name]." ("base", "base", "base", "mid") + + #Luna takes top off + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("top") + with d3 + pause .5 + + gen "Excellent...{w=0.4} And such a lovely pair of breasts as well." ("base", xpos="far_left", ypos="head") + else: + gen "Let's see what we got here..." ("base", xpos="far_left", ypos="head") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + lun "Something wrong [lun_genie_name]?" ("soft", "base", "raised", "mid") + gen "Not at all, [luna_name]!" ("base", xpos="far_left", ypos="head") + gen "I'm just inspecting those lovely breasts of yours!" ("base", xpos="far_left", ypos="head") + lun "*Ehm*...{w=0.3} Lovely, [lun_genie_name]?" ("soft", "base", "raised", "mid") + gen "*Err*...{w=0.4} Healthy! They look very healthy!" ("base", xpos="far_left", ypos="head") + lun "I see...{w=0.4} Thank you [lun_genie_name]!" ("grin", "base", "base", "mid") + gen "But I still need a proper look so you're going to have to take your bra off as well." ("base", xpos="far_left", ypos="head") + lun "Certainly [lun_genie_name]." ("base", "base", "base", "mid") + + #Luna takes bra off (Not available in wardrobe until next tier) + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("bra") + with d3 + pause .5 + + gen "(Nice...)" ("base", xpos="far_left", ypos="head") + + call nar("*Fap* *Fap* *Fap*...") + + lun "So...{w=0.4} Do you think this should work, [lun_genie_name]?" ("open", "base", "raised", "mid") + gen "Oh...{w=0.4} It's working alright." ("grin", xpos="far_left", ypos="head") + + call nar(">Focusing your attention on the girls breasts you feel your cock harden more and more with each stroke...") + + lun "Great! So what do I have to do to get the Wrackspurts out of them?" ("smile", "base", "base", "mid") + gen "*Mmm*...{w=0.4} The what, sorry?" ("base", xpos="far_left", ypos="head") + lun "The Wrackspurts, [lun_genie_name]..." ("open", "base", "raised", "mid") + gen "*Ah*...{w=0.4} Those bloody things." ("base", xpos="far_left", ypos="head") + gen "Let's see..." ("base", xpos="far_left", ypos="head") + gen "Tell...{w=0.4} *Ngh*...{w=0.4} Tell me a bit about them..." ("base", xpos="far_left", ypos="head") + lun "Well... As I said, they're invisible--" ("soft", "closed", "base", "mid") + gen "Not the spurts! Your breasts, [luna_name]!" ("base", xpos="far_left", ypos="head") + lun "Ooooh...{w=0.2} What do you need to know about them, [lun_genie_name]?" ("mad", "base", "base", "mid") + gen "(How much do they jiggle-- How hard can I pull on your-- What do they taste--)" ("grin", xpos="far_left", ypos="head") + + lun "" ("upset", "base", "raised", "mid") #Confused + call nar("*Fap* *Fap* *Fap*...") + call nar(">You pick up the pace whilst staring at her tits... An expression of confusion spreading across Luna's face as she waits for a response...") + + lun "[lun_genie_name]?" ("open", "base", "raised", "mid") + gen "What?!" ("angry", xpos="far_left", ypos="head") + gen "Oh yes...{w=0.3} Your tits!" ("grin", xpos="far_left", ypos="head") + gen "It appears the Spurts gather around sensitive areas..." ("base", xpos="far_left", ypos="head") + gen "So with that in mind..." ("base", xpos="far_left", ypos="head") + gen "Would you say that your breasts fit that description, [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "*Hmm*...{w=0.4} Well, my nipples do get a bit hard and sensitive whenever they bothered me previously..." ("open", "narrow", "base", "downL") + lun "Is that the kind of thing you meant, [lun_genie_name]?" ("soft", "base", "raised", "mid") + gen "*Ah*... Yes, that's exactly it..." ("base", xpos="far_left", ypos="head") + + call nar(">You move your gaze and focus on Lunas erect nipples...{w=0.3} Your cock twitching slightly in your grasp.") + call nar("*Fap* *Fap* *Fap*...") + + gen "*Hmm*...{w=0.4} They do look a bit hard actually..." ("base", xpos="far_left", ypos="head") + lun "They do?" ("disgust", "base", "base", "mid", cheeks="blush") + lun "I've been trying to suppress it the best I can, [lun_genie_name]!" ("clench", "closed", "base", "mid", cheeks="blush") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "Well that wont do." ("base", xpos="far_left", ypos="head") + gen "Fighting it is what's been holding you...{w=0.4} *Err*...{w=0.4} Them back, [luna_name]." ("base", xpos="far_left", ypos="head") + gen "You need to allow that feeling to build up or you--{w=0.2} *Ah*...{w=0.4} You won't be able to expel them." ("base", xpos="far_left", ypos="head") + + call nar(">You keep stroking your cock, thinking about what you'd do to those nipples...") + + lun "Wait...{w=0.4} So I've been doing it wrong the whole time!?" ("angry", "base", "base", "mid", cheeks="blush") + gen "Yes...{w=0.4} *Nghh*...{w=0.4} It appears what you've been feeling is the Spurts trying to get out you see..." ("base", xpos="far_left", ypos="head") + lun "Ooooh..." ("open", "base", "base", "stare") + lun "That makes so much sense!" ("grin", "wide", "base", "mid") + lun "I can't believe I didn't think of that before!" ("angry", "base", "base", "down", cheeks="blush") + + call nar(">Looking up at Luna's face, you notice her expression changed to that of excitement and lust...") + call nar(">After a moment of silence you finally speak up in fear of not being able to finish in time.") + + gen "*Ehm*...{w=0.4} So...{w=0.4} Any other areas that you've noticed being unusually sensitive [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "Oh, yes [lun_genie_name]!" ("mad", "base", "base", "mid", cheeks="blush") + lun "There's this area down here!" ("angry", "base", "base", "down", cheeks="blush") + + call lun_walk("desk", "base", speed=1.75) + pause .5 + call lun_chibi(flip=True) + pause .5 + + #Luna takes her Bottoms, panties and everything else off + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("all") + with d3 + pause .5 + + gen "By the great--" ("angry", xpos="far_left", ypos="head") + + lun "Do you think I'll be able to expel them from here, [lun_genie_name]?" ("open", "base", "raised", "mid", cheeks="blush", flip=True) + + $ camera.set_imagepath("lun_intro/") + $ camera.set_image("CG lun_intro luna bendover naked") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=0.5, pos=(-270, -150), initialize=True) + $ camera.set(zoom=1.0, pos=(-1040, -600), t=30.0) + show screen animatedCG + with fade + + gen "[luna_name]!" + lun "[lun_genie_name]?" + gen "*Ahem*...{w=0.4} Yes, I'd say that area is definitely a contender." + + call nar(">With a full view of the girls naked body, you feel your cock throbbing in your hand and you begin stroking it even faster...") + + lun "I thought it might be...{w=0.4} It does get just as sensitive as my breasts...{w=0.4} Maybe more even!" + + call nar("*Fap* *Fap* *Fap*...") + + gen "*Ah*, Yes...{w=0.4} both those areas appear to be very susceptible...{w=0.4} To spurts." + lun "I knew it!" + + + call hide_characters + call lun_chibi(flip=False) + hide screen animatedCG + with fade + + lun "" ("grin", "base", "base", "mid", cheeks="blush", flip=False, trans=dissolve) + call nar(">Luna turns back around and as you get a full view of her front, you feel yourself getting close to the edge.") + + lun "So that's how you came up with the idea of rubbing your penis, [lun_genie_name]!" ("grin", "wink", "base", "mid", cheeks="blush") + lun "To bait the Wrackspurts to one spot!" ("crooked_smile", "base", "base", "mid", cheeks="blush") + lun "Since your penis is a sensitive area, rubbing it gets the Wrackspurts all excited..." ("smile", "closed", "base", "mid", cheeks="blush") + + call nar("*Fap* *Fap* *Fap*...") + + lun "So when you do it, they all start gathering in there until there's nowhere else for them to go and finally..." ("smile", "narrow", "base", "mid", cheeks="blush") + lun "You expel them right out!" ("grin", "base", "annoyed", "mid", cheeks="blush") + gen "*Ah*...{w=0.4} Yes...{w=0.4} That's it girl, you've cracked it!" ("angry", xpos="far_left", ypos="head") + lun "That's geni--" ("crooked_smile", "base", "base", "mid", cheeks="blush") + gen "{size=+5}I'm cumming!{/size}" ("angry", xpos="far_left", ypos="head") + + call gen_chibi("cum_behind_desk") + call cum_block + + gen "{size=-5}*Argh*! YES!{/size}" ("angry", xpos="far_left", ypos="head") + + call cum_block + + lun "[lun_genie_name], you did it again!" ("grin", "base", "base", "stare", cheeks="blush") + lun "I can't believe it!" ("grin", "base", "base", "mid", cheeks="blush") + + call cum_block + pause .5 + call gen_chibi("cum_behind_desk_done") + + gen "*Ah*...{w=0.4}*Ah*...{w=0.4} What..." ("base", xpos="far_left", ypos="head") + + lun "Cumming...{w=0.4} You came again!" ("base", "happyCl", "base", "mid", cheeks="blush") + gen "*Ah*...{w=0.4} I sure did..." ("base", xpos="far_left", ypos="head") + gen "Your naked body was enough for me to--" ("grin", xpos="far_left", ypos="head") + lun "My naked body helped you release the spurts?" ("mad", "base", "base", "mid", cheeks="blush") + gen "It...{w=0.4} *Ah*...{w=0.4} Yes, it appears so..." ("grin", xpos="far_left", ypos="head") + lun "What did it feel like?" ("mad", "wide", "base", "mid", cheeks="blush") + gen "Like the biggest relief--" ("base", xpos="far_left", ypos="head") + lun "Can I try it now?" ("smile", "wide", "base", "mid", cheeks="blush") + + + menu: + "\"Of course!\"": + lun "Yay!" ("crooked_smile", "happyCl", "base", "mid", cheeks="blush") + gen "Although..." ("base", xpos="far_left", ypos="head") + lun "Although?" ("mad", "narrow", "base", "mid", cheeks="blush") + gen "Well, how would I be sure you're ready for it...{w=0.4} What if you hurt yourself?" ("base", xpos="far_left", ypos="head") + + "\"No!\"": + lun "What?!" ("mad", "base", "base", "mid", cheeks="blush") + lun "Why not!?" ("angry", "narrow", "annoyed", "mid", cheeks="blush") + gen "*Err*...{w=0.5} Because it's dangerous!" ("base", xpos="far_left", ypos="head") + + lun "But [lun_genie_name]! You've done it yourself a couple of times already!" ("angry", "base", "base", "mid", cheeks="blush") + gen "Actually..." ("base", xpos="far_left", ypos="head") + lun "And it didn't look very complicated..." ("annoyed", "narrow", "annoyed", "mid", cheeks="blush") + gen "Well. I can assure you..." ("base", xpos="far_left", ypos="head") + gen "Tricking those spurts is not an easy task!" ("base", xpos="far_left", ypos="head") + gen "As I said, you could end up with some severe burns!" ("base", xpos="far_left", ypos="head") + lun "But didn't you just--" ("angry", "base", "base", "mid", cheeks="blush") + gen "I am a master baiter, [luna_name]!" ("base", xpos="far_left", ypos="head") + lun "..." ("mad", "narrow", "base", "downL", cheeks="blush") #wide eyed + gen "Nobody but I have successfully been able to bait those--" ("base", xpos="far_left", ypos="head") + lun "Then what am I supposed to do?!" ("angry", "base", "base", "mid", cheeks="blush") + lun "If I don't expel them soon..." ("mad", "base", "base", "downL", cheeks="blush") + lun "I'll go crazy!" ("clench", "wide", "base", "mid", cheeks="blush") #Crazy stare + gen "..." ("angry", xpos="far_left", ypos="head") + + call nar(">Luna starts grinding her legs together uncomfortably...") + + gen "Well perhaps--" ("base", xpos="far_left", ypos="head") + lun "I know!" ("smile", "wide", "base", "mid", cheeks="blush") + lun "[lun_genie_name]...{w=0.2} Why don't you teach me?" ("smile", "base", "base", "mid", cheeks="blush") + gen "..." ("grin", xpos="far_left", ypos="head") + gen "Oh, well I don't know [luna_name]..." ("grin", xpos="far_left", ypos="head") + lun "[lun_genie_name], please!" ("mad", "narrow", "base", "mid", cheeks="blush") + hide luna_main + with d3 + + #Luna teleports up to genie + $ renpy.play('sounds/magic4.ogg') + call lun_chibi("stand", 230, 455, flip=True) + with flash + + gen "*Ghk*... How did you--" ("angry", xpos="far_left", ypos="head") + lun "[lun_genie_name], if I can't do it myself then you'll {size=+5}have{/size} to teach me!" ("clench", "wide", "base", "stare", cheeks="blush", xpos="mid", ypos="base", flip=True, trans=dissolve) + gen "Teach you how to masturbate..." ("base", xpos="far_left", ypos="head") + + call nar(">Luna stares into your eyes as she unconsciously begins grinding her pussy on the edge of your desk.") + + lun "Yes, teach me [lun_genie_name]!" ("angry", "wide", "base", "mid", cheeks="blush") + lun "I want to be a master baiter too!" ("angry", "happyCl", "base", "mid", cheeks="blush") + + call nar(">Luna's cheeks burns with red as she keeps grinding on the edge of your desk.") + + gen "(Poor girl is literally edging...)" ("base", xpos="far_left", ypos="head") + gen "Alright, you have convinced me [luna_name]... I'll do it!" ("base", xpos="far_left", ypos="head") + + call nar(">Luna stops her grinding, and begins jumping happily on the spot. Her tits bouncing up and down as she does so.") + + lun "Oh, thank you [lun_genie_name]!" ("grin", "narrow", "base", "mid", cheeks="blush") + lun "I knew I could count on you!" ("grin", "closed", "base", "mid", cheeks="blush") + gen "Certainly..." ("grin", xpos="far_left", ypos="head") + gen "But first things first...{w=0.4} I need something from you, [luna_name]." ("base", xpos="far_left", ypos="head") + lun "Something from me?" ("soft", "narrow", "raised", "mid", cheeks="blush") + gen "Yes, I need a promise." ("base", xpos="far_left", ypos="head") + lun "Oh..." ("angry", "base", "base", "mid", cheeks="blush") + lun "Alright then!" ("soft", "base", "base", "mid", cheeks="blush") + gen "I haven't even told you what it is yet." ("base", xpos="far_left", ypos="head") + lun "Don't worry [lun_genie_name], I trust you!" ("grin", "narrow", "base", "mid", cheeks="blush") + gen "If we're to be able to have you expel these spurts successfully then you're going to have to venture into a completely new venue of magic..." ("base", xpos="far_left", ypos="head") + lun "New venue of magic..." ("angry", "base", "raised", "mid", cheeks="blush") + lun "I'm not sure I understand, [lun_genie_name]." ("soft", "narrow", "base", "mid", cheeks="blush") + gen "As you know... These techniques are untested and go beyond normal boundaries of magical conventions." ("base", xpos="far_left", ypos="head") + lun "Right." ("soft", "narrow", "base", "downL", cheeks="blush") + gen "It's not the type of magic where you'll have a use for a wand..." ("base", xpos="far_left", ypos="head") + gen "(Unless it has a vibrate function.)" ("grin", xpos="far_left", ypos="head") + lun "I understand..." ("open", "narrow", "base", "downL", cheeks="blush") + gen "There will be no use for any incantations!" ("base", xpos="far_left", ypos="head") + gen "Barring a safe word or two." ("base", xpos="far_left", ypos="head") + gen "So you must promise not to tell anyone about what happens in this room, no matter what." ("base", xpos="far_left", ypos="head") + lun "But..." ("clench", "base", "base", "mid", cheeks="blush") + + call nar(">Luna rocks her pelvis awkwardly...") + + gen "That is my only requirement..." ("base", xpos="far_left", ypos="head") + lun "*Nngh*...{w=0.4} Alright then." ("clench", "closed", "base", "downL", cheeks="blush") + lun "I solemnly swear that I will tell no one what happens within these hallowed walls..." ("mad", "closed", "base", "mid", cheeks="blush") + gen "Fantastic!" ("base", xpos="far_left", ypos="head") + lun "So, can we please try your techniques, [lun_genie_name]?" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Another time, [luna_name]... I'll need to recharge--{w=0.4} *Err*...{w=0.4} Contain these spurts first." ("base", xpos="far_left", ypos="head") + lun "But [lun_genie_name]..." ("clench", "base", "base", "mid", cheeks="blush") #Looks down blushing + gen "..." ("base", xpos="far_left", ypos="head") + lun "Alright..." ("upset", "base", "base", "downL", cheeks="blush") + gen "Now- Now... This is a good thing, [luna_name]." ("base", xpos="far_left", ypos="head") + gen "Remember what we've learned... The more excited and sensitive you feel, the easier it'll be to spurt...{w=0.3} *Err*...{w=0.4} Expel the spurts!" ("base", xpos="far_left", ypos="head") + lun "Oh, that is true!" ("soft", "base", "base", "mid") + gen "Now, until next time... I want you to do your best to not suppress that feeling." ("base", xpos="far_left", ypos="head") + gen "Embrace it...{w=0.4} Let it flow over you." ("base", xpos="far_left", ypos="head") + lun "Yes, [lun_genie_name]." ("base", "base", "base", "mid") + gen "Just make sure not to touch yourself." ("base", xpos="far_left", ypos="head") + gen "That will have to wait until I can assist you." ("base", xpos="far_left", ypos="head") + lun "Alright... I'll try..." ("mad", "narrow", "base", "downL") + gen "Trying won't be enough [luna_name]..." ("base", xpos="far_left", ypos="head") + gen "Don't...{w=0.4} Touch...{w=0.4} Yourself..." ("base", xpos="far_left", ypos="head") + lun "Okay, I won't!" ("angry", "base", "base", "mid", cheeks="blush") + gen "Good...{w=0.3} Then I believe we're done here for now..." ("base", xpos="far_left", ypos="head") + lun "Oh...{w=0.2} Of course." ("soft", "base", "base", "downL", cheeks="blush") + + show screen blkfade + with d5 + + call play_sound("equip") + $ luna.wear("all") + call lun_chibi("stand", "desk", "base") + hide luna_main + with fade + pause 2 + + hide screen blkfade + with d5 + + lun "" ("base", "base", "base", "mid", xpos="base", ypos="base", flip=False, trans=dissolve) + pause .2 + + if game.daytime: + gen "You better head back to class, [luna_name]." ("base", xpos="far_left", ypos="head") + lun "Okay." ("open", "base", "base", "mid") + lun "Good day then, [lun_genie_name]!" ("base", "base", "base", "mid") + else: + gen "Now, you better head off to bed." ("base", xpos="far_left", ypos="head") + lun "Okay." ("open", "base", "base", "mid") + lun "Good night, [lun_genie_name]!" ("base", "base", "base", "mid") + gen "Good night [luna_name]." ("base", xpos="far_left", ypos="head") + + call lun_walk(action="leave") + + gen "..." ("base", xpos="far_left", ypos="head") + gen "(Poor girl doesn't even know how to masturbate.)" ("base", xpos="far_left", ypos="head") + gen "(How did this school even function without me...)" ("base", xpos="far_left", ypos="head") + + jump ll_pf_inspect.end + +label ll_pf_inspect_T2_E2_intro: + + gen "Alright, time to give those spurts a run for their money..." ("base", xpos="far_left", ypos="head") + lun "Finally!" ("clench", "narrow", "base", "down") + gen "Now, are you sure you're ready for this--" ("base", xpos="far_left", ypos="head") + + if luna.is_any_worn("robe", "accessory"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("robe", "accessory") + with d3 + pause .5 + + gen "*Err*..." ("base", xpos="far_left", ypos="head") + if luna.is_worn("top"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("top") + with d3 + pause .5 + + gen "Whoa!" ("angry", xpos="far_left", ypos="head") + #Luna takes off Bra (Not available in wardrobe until next tier) + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("bra") + with d3 + pause .5 + + gen "[luna_name]!" ("base", xpos="far_left", ypos="head") + lun "..." ("angry", "narrow", "base", "down") # looks up at genie + gen "Now that's the kind of self determination I've been looking for!" ("grin", xpos="far_left", ypos="head") + gen "Check out those tits!" ("grin", xpos="far_left", ypos="head") + + if luna.is_worn("bottom"): + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("bottom") + with d3 + pause .5 + + gen "*Hmm*... Those panties though...{w=0.4} I'd love to smell them..." ("grin", xpos="far_left", ypos="head") + + #Luna takes of Panties and everything else (Panty strip is not available in wardrobe until next tier) + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("all") + with d3 + pause .5 + + gen "And that pussy... What I'd do to stick my cock in--" ("grin", xpos="far_left", ypos="head") + gen "*Err*..." ("angry", xpos="far_left", ypos="head") + gen "I mean I can't wait to--" ("angry", xpos="far_left", ypos="head") + lun "Please [lun_genie_name], they've been bothering me constantly..." ("angry", "narrow", "worried", "mid", cheeks="blush") + gen "(Oh good, she wasn't listening...)" ("base", xpos="far_left", ypos="head") + gen "Well, I hope you've followed my instructions and that you haven't touched yourself..." ("base", xpos="far_left", ypos="head") + lun "I... I haven't, [lun_genie_name]!" ("soft", "happyCl", "base", "mid", cheeks="blush") + + call nar(">Luna grinds her legs together once more, and you notice a wet streak beginning to run down her leg.") + + gen "Good girl..." ("base", xpos="far_left", ypos="head") + gen "Then come up to me so we can deal with those spurts once and for all." ("base", xpos="far_left", ypos="head") + lun "Thank you [lun_genie_name]..." ("angry", "narrow", "base", "mid", cheeks="blush") + + #Luna quickly walks up towards desk, fades to black + call lun_walk("desk", "base", speed=1.75) + show screen blkfade + with d5 + + call nar(">Luna rushes up to your desk and without any further instructions, plants her cheeks firmly in your lap, waiting for your next move expectantly.") + + #Fades back to Luna in your lap + call lun_chibi_scene("inspect_idle_naked") + hide screen blkfade + with d5 + + call nar(">Before moving on, you can't help but pick up the sounds of her shallow breaths and the unusual warmth, despite her current state of undress coming off her body.") + call nar(">You feel your cock harden slightly beneath your robes, almost at the verge of pressing up in between the girls cheeks.") + gen "*Ahem*...{w=0.4} So...{w} The sensitive areas we discussed previously." ("base", xpos="far_left", ypos="head") + lun "*Mmm*..." ("soft", "closed", "low", "mid", cheeks="blush", xpos="mid", ypos="base", flip=True, trans=dissolve) + gen "[luna_name]?" ("base", xpos="far_left", ypos="head") + lun "(His breath on the back of my neck... It's making me all tingly again...)" ("soft", "closed", "worried", "mid", cheeks="blush") + gen "Luna?" ("base", xpos="far_left", ypos="head") + gen "I guess we'll start with your breasts then..." ("grin", xpos="far_left", ypos="head") + + call lun_chibi_scene("inspect_grope_breasts_naked") + with d3 + pause 2 + call lun_chibi_scene("inspect_idle_naked") + with d3 + + lun "Ooooh!" ("open", "wide", "base", "stare", cheeks="blush") + call nar(">You give Luna's breasts a light squeeze, which causes a shudder to go down her spine...") + gen "How did that feel?" ("base", xpos="far_left", ypos="head") + lun "*Ehm*..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "Good?" ("base", xpos="far_left", ypos="head") + lun "I...{w=0.4} Yes...{w=0.4} I wasn't sure if good was the right word--" ("mad", "base", "base", "down", cheeks="blush") + gen "Excellent...{w=0.4} Then focus on that feeling..." ("base", xpos="far_left", ypos="head") + + call lun_chibi_scene("inspect_grope_breasts_naked") + + call nar(">You begin kneading Luna's breasts... Her nipples firmly locked between your fingers.") + + lun "*Ah*..." ("open", "happyCl", "low", "mid", cheeks="blush") + lun "[lun_genie_name]...{w=0.4} I think it's working...{w=0.4} I feel a lot more sensitive than before..." ("soft", "happyCl", "base", "mid", cheeks="blush") + gen "Good...{w=0.4} That means the spurts are building up." ("base", xpos="far_left", ypos="head") + lun "*Ah*...{w=0.4} Finally...{w=0.4} Keep going, [lun_genie_name]..." ("angry", "happyCl", "base", "stare", cheeks="blush") + + call nar(">As you continue, Luna tightens her thighs around your legs, and subconsciously pushes her ass back towards your abdomen.") + call nar(">Her cheeks lightly grace your hardening cock, and as they do, the tip of your cock manages to wiggle its way out of your robes.") + + lun "*Mmm*...{w=0.4} [lun_genie_name]..." ("base", "closed", "base", "mid", cheeks="blush") + gen "You're doing a great job [luna_name]..." ("base", xpos="far_left", ypos="head") + gen "Make sure to keep focusing on that feeling." ("base", xpos="far_left", ypos="head") + lun "But [lun_genie_name], I think I feel the wrackspurts--" ("mad", "closed", "annoyed", "mid", cheeks="blush") + + call nar(">You stop your kneading and give her another squeeze, just slightly harder than previously.") + + lun "*Ah*..." ("grin", "closed", "base", "L", cheeks="blush") + + call nar(">And as you do, Luna clenches her butt-cheeks around the bottom of your shaft, the tip of your penis now sticking out of your robes right above her tailbone.") + + lun "I--" ("soft", "closed", "base", "mid", cheeks="blush") + + call nar(">You run your fingers along the sides of her breasts, lightly brushing against her.") + + lun "*Ah*...{w=0.4} Yes, it definitely feels a lot more intense than...{w=0.4} *Mmm*..." ("open", "closed", "base", "mid", cheeks="blush") + lun "But I'm not feeling that--{w=0.2} *Ah*...{w=0.4} Relief you mentioned..." ("mad", "closed", "base", "mid", cheeks="blush") + lun "My body still feels as if-- *Ah*...{w=0.4} As if on fire, [lun_genie_name]..." ("angry", "happyCl", "base", "mid", cheeks="blush") + + call nar(">As Luna pleads to you, she starts rubbing her pussy against your legs... The tip of your cock sliding between her ass-cheeks each time.") + + gen "(If she keeps this up then this bitch in heat will make me bust before she does...)" ("angry", xpos="far_left", ypos="head") + lun "It think something is happening...{w=0.4} I feel woozy, [lun_genie_name]..." ("angry", "happyCl", "low", "mid", cheeks="blush") + + call lun_chibi_scene("inspect_lean_grope_breasts_naked") + call nar(">Luna slumps forward slightly...{w=0.4} Her ass-cheeks, now fully embracing the bottom of your shaft.") + + lun "(Is...{w=0.4} Is that his...)" ("clench", "narrow", "base", "downL", cheeks="blush") + + call lun_chibi_scene("inspect_grope_breasts_naked") + call nar(">Arching her back up again, Luna's cheeks slides over your cock once more which is enough to bring you over the edge.") + + gen "*ARGH*!!!" ("angry", xpos="far_left", ypos="head") + lun "" ("clench", "narrow", "base", "stare", cheeks="blush") #surprised + pause .5 + gen "(You've done it now slut!)" ("angry", xpos="far_left", ypos="head") + gen "(Take this!)" ("angry", xpos="far_left", ypos="head") + + call cum_block + + call lun_chibi_scene("inspect_idle_naked") + call nar(">With a rush of pleasure, you unload a torrent of semen across Lunas back, completely covering it with your seed.") + + lun "(What's he--)" ("clench", "narrow", "base", "R", cheeks="blush") #Pleasure/confused + + gen "*Ah*!!!" ("angry", xpos="far_left", ypos="head") + call cum_block + + call nar(">And with a soft groan you let out a final spurt, emptying your entire sack on the girl...") + call nar(">Your semen which reached all the way up onto her hair slowly begins sliding down her back.") + + gen "*Ah*...{w=0.4} *Ah*...{w=0.4} *Ah*..." ("base", xpos="far_left", ypos="head") + lun "[lun_genie_name], I think...{w=0.4} I feel a bit faint..." ("mad", "narrow", "low", "down", cheeks="blush") + gen "*Ah*...{w=0.4} No, you just need to--{w=0.2} *Ah*...{w=0.4} To push through--" ("base", xpos="far_left", ypos="head") + lun "No [lun_genie_name]...{w=0.4} It's as if a chill is going down my spine...{w=0.4} It doesn't feel right." ("clench", "wide", "base", "stare", cheeks="blush") + lun "It's nowhere near the feeling of relief that you described..." ("disgust", "narrow", "base", "stare", cheeks="blush") + gen "*Err*...{w=0.4} Well I--" ("base", xpos="far_left", ypos="head") + lun "I think I need to--" ("disgust", "narrow", "base", "down", cheeks="blush") + gen "No, wait!" ("angry", xpos="far_left", ypos="head") + + show screen blkfade + with d5 + + call nar(">Luna now shaking slightly, stands up and makes her way to the front of your desk, leaving a noticeable wet streak across your robes.") + call nar(">She begins dressing herself, keeping her eyes on the floor the entire time.") + $ luna.wear("all") + hide luna_main + + call lun_chibi("stand", "desk", "base") + call lun_chibi_scene("reset") + hide screen blkfade + with d5 + #Fade back to Luna in front of your desk. + + gen "*Ehm*...{w=0.4} So..." ("base", xpos="far_left", ypos="head") + + call nar(">Luna shuffles uncomfortably and then glances up at you, seemingly unable to find what to say...") + + gen "(Good job me..{w=0.4} I have royally fucked it up this time.)" ("base", xpos="far_left", ypos="head") + gen "Look, accidents happen to the best of--" ("base", xpos="far_left", ypos="head") + lun "I'm sorry [lun_genie_name]!" ("angry", "narrow", "worried", "mid", xpos="base", ypos="base", flip=False, trans=dissolve) + gen "..." ("angry", xpos="far_left", ypos="head") + lun "You were right..." ("upset", "narrow", "worried", "down") + lun "I guess I wasn't ready..." ("open", "closed", "worried", "down") + gen "What are you--" ("base", xpos="far_left", ypos="head") + lun "I was so sure that we'd be able to do it..." ("angry", "narrow", "worried", "down") + gen "*Err*...{w=0.3} Do \"it\", [luna_name]?" ("base", xpos="far_left", ypos="head") + + lun "Cum, [lun_genie_name]..." ("soft", "narrow", "worried", "mid") + gen "Oh!" ("base", xpos="far_left", ypos="head") + gen "Well it was your first time...{w=0.3} It's not that uncommon for it to end prematurely..." ("base", xpos="far_left", ypos="head") + lun "It's not, [lun_genie_name]?" ("angry", "base", "worried", "stare") + gen "Yes...{w=0.3} Actually it's very...{w=0.3} Very common..." ("base", xpos="far_left", ypos="head") + gen "I wasn't expecting you to work it--{w=0.2} *Err*...{w=0.3} For it to work the first time!" ("base", xpos="far_left", ypos="head") + gen "We'll just have to try it again some other time." ("base", xpos="far_left", ypos="head") + lun "So you're not disappointed in me [lun_genie_name]?" ("annoyed", "narrow", "worried", "mid") #Looks down + gen "Of course not." ("base", xpos="far_left", ypos="head") + gen "(Quite the opposite...)" ("base", xpos="far_left", ypos="head") + lun "Oh...{w=0.3} Okay." ("normal", "narrow", "worried", "down") #Looks down + lun "" ("base", "narrow", "worried", "down") #Looks down smile + + call nar(">Luna gives off a hopeful smile whilst still staring at her feet.") + call nar(">After a couple of seconds she looks back up at you with a confused expression across her face.") + + lun "[lun_genie_name]...{w=0.3} What was that cold feeling going down my spine?" ("upset", "narrow", "base", "mid") + gen "Oh...{w=0.3} That." ("angry", xpos="far_left", ypos="head") + gen "*Err*...{w=0.3} I wouldn't worry about that [luna_name], it happens sometimes... Your body can do all sorts of things when you're moments away from spurting." ("angry", xpos="far_left", ypos="head") + lun "So we actually almost did it, [lun_genie_name]?" ("clench", "narrow", "base", "mid") + gen "We almost did \"it\" alright..." ("base", xpos="far_left", ypos="head") + lun "Aww...{w=0.3} Blithering Humdinger..." ("upset", "narrow", "annoyed", "downL") + gen "I'll give you some more pointers next time...{w=0.3} I'm sure we'll get there." ("base", xpos="far_left", ypos="head") + lun "Okay...{w=0.3} Thank you [lun_genie_name]!" ("base", "narrow", "base", "mid") #looks at you smiling + + if game.daytime: + lun "If I may then I'll head back to class for today, [lun_genie_name]." ("soft", "base", "base", "R") + gen "Certainly, [luna_name]." ("base", xpos="far_left", ypos="head") + else: + gen "Now you best be off to bed." ("base", xpos="far_left", ypos="head") + lun "Of course [lun_genie_name]." ("soft", "base", "base", "R") + lun "Good night then..." ("base", "base", "base", "mid") + gen "Good night [luna_name]." ("base", xpos="far_left", ypos="head") + + call lun_walk("door") + lun "(Wait a second...{w=0.3} The thing I felt on my back...)" ("soft", "narrow", "base", "downL", cheeks="blush", xpos="base", ypos="base", flip=True, trans=dissolve) + hide luna_main + with d3 + + #Luna turns to genie + call lun_chibi(flip=False) + + + gen "Yes...{w=0.3} Was there something else [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "Oh...{w=0.3} No that's all, [lun_genie_name]!" ("angry", "narrow", "base", "down", cheeks="blush", xpos="base", ypos="base", flip=False, trans=dissolve) + + + hide luna_main + with d3 + + #Luna turns to door + call lun_chibi(flip=True) + + gen "Off you go then..." ("base", xpos="far_left", ypos="head") + + lun "(Was me rubbing up against him enough to help with his--)" ("soft", "narrow", "base", "down", cheeks="blush", xpos="base", ypos="base", flip=True, trans=dissolve) + lun "(Why am I suddenly so woozy again?)" ("angry", "narrow", "base", "downL", cheeks="blush") + + call lun_walk(action="leave") + + jump ll_pf_inspect.end + +label ll_pf_inspect_T2_E3_intro: + + gen "Ready for another attempt?" ("base", xpos="far_left", ypos="head") + lun "I...{w=0.3} Yes [lun_genie_name], I believe so..." ("open", "narrow", "base", "downL") + + #Luna walks towards desk and it fades to black + call lun_walk("desk") + show screen blkfade + with d5 + + call nar(">Luna absentmindedly walks up and scoots in front of you.") + + if luna.is_any_worn("top", "bottom", "robe"): + call lun_chibi_scene("inspect_idle") + else: + call lun_chibi_scene("inspect_idle_naked") + hide screen blkfade + with d5 + + gen "*Err*...{w=0.3} I think you've forgotten something [luna_name]." ("base", xpos="far_left", ypos="head") + lun "*Huh*?" ("soft", "narrow", "base", "mid", xpos="mid", ypos="base", flip=True, trans=dissolve) + + if luna.is_any_worn("top", "bottom", "robe"): + gen "Your clothes..." ("base", xpos="far_left", ypos="head") + else: + gen "Your underwear..." ("base", xpos="far_left", ypos="head") + + lun "Oh...{w=0.3} Right..." ("angry", "narrow", "base", "down") + gen "You seem awfully distracted today." ("base", xpos="far_left", ypos="head") + lun "*Ehm*...{w=0.3} To tell you the truth...{w=0.3} I'm a bit worried that it's not going to work again, [lun_genie_name]." ("open", "narrow", "base", "downL") + gen "Now I wouldn't worry about that...{w=0.3} I'm confident it will work this time." ("base", xpos="far_left", ypos="head") + lun "But how do you know it will work, [lun_genie_name]?" ("mad", "narrow", "base", "mid") + lun "Maybe girls aren't able to expel the Wrackspurts like boys do." ("angry", "narrow", "base", "mid") + gen "I'm certain that the process isn't too dissimilar...{w=0.3} I'm confident that with my help--" ("base", xpos="far_left", ypos="head") + lun "But how do you know, [lun_genie_name]?" ("angry", "narrow", "base", "mid") + gen "Just trust me on this one [luna_name]." ("base", xpos="far_left", ypos="head") + lun "*Hmm*..." ("upset", "narrow", "base", "downL") + gen "(She doesn't seem convinced.)" ("base", xpos="far_left", ypos="head") + gen "(Oh, wait...{w=0.3} I know!)" ("grin", xpos="far_left", ypos="head") + + gen "*Ahem*...{w=0.3} [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "Yes [lun_genie_name]?" ("upset", "base", "base", "mid") + gen "Tell me...{w=0.3} How were those spratters described in your fathers paper again?" ("base", xpos="far_left", ypos="head") + lun "They're invisible creatures that go inside your ears and make your brain go all fuzzy." ("angry", "base", "base", "mid") + gen "And...{w=0.3} Wasn't there a description on how you were supposed to get rid of them?" ("base", xpos="far_left", ypos="head") + lun "By thinking positive thoughts..." ("soft", "narrow", "base", "mid") + lun "But that's not working [lun_genie_name]...{w=0.3} It's not my brain they're making all fuzzy..." ("clench", "narrow", "base", "mid") + gen "Then tell me...{w=0.3} What else have we learned about them so far?" ("base", xpos="far_left", ypos="head") + lun "*Uhm*..." ("upset", "base", "base", "downR") + lun "We learned that you can bait them to a particularly sensitive area by thinking positive thoughts and rubbing it before finally expelling them..." ("angry", "narrow", "base", "down") + lun "But we tried that [lun_genie_name], and it didn't work!" ("annoyed", "narrow", "base", "R") + gen "I managed to do it...{w=0.3} So I must've done something different..." ("base", xpos="far_left", ypos="head") + lun "*Hmm*..." ("upset", "narrow", "base", "downL") + gen "(Putting the pieces together...{w=0.3} And...)" ("base", xpos="far_left", ypos="head") + lun "Oh! I know!" ("smile", "wide", "base", "stare") + lun "I was thinking too much about the Wrackspurts and how glad I'd be to finally get rid of them." ("mad", "wide", "base", "mid") + lun "What I should have done is project positive thoughts onto the area itself!" ("smile", "narrow", "base", "down") + gen "Exactly!" ("grin", xpos="far_left", ypos="head") + gen "Ignore every intrusive thought that may pop into your mind and just keep focusing on your body and how it feels..." ("base", xpos="far_left", ypos="head") + gen "Let the sensations engulf you completely until your mind is clear..." ("base", xpos="far_left", ypos="head") + gen "The rest should happen by itself..." ("base", xpos="far_left", ypos="head") + lun "Yes [lun_genie_name]..." ("crooked_smile", "narrow", "base", "mid") + gen "Now then... Ready for another try?" ("base", xpos="far_left", ypos="head") + lun "Yes, I'm ready [lun_genie_name]!" ("base", "base", "base", "mid") + + if luna.is_any_worn("robe", "top", "bottom", "accessory"): + gen "Then lets get you out of those clothes shall we..." ("base", xpos="far_left", ypos="head") + else: + gen "Now, let me help you get you out of those pesky underwear..." ("base", xpos="far_left", ypos="head") + + #Fade to black + show screen blkfade + with d5 + + if luna.is_any_worn("robe", "top", "bottom", "accessory"): + call nar(">Luna shuffles around for a bit as she attempts to get out of her clothing, the limited space between you and the desk making it somewhat difficult.") + + lun "It's a bit cramped in here, [lun_genie_name] ...{w=0.4} Should I scoot out and--" ("base", "base", "base", "mid") + gen "No worries [luna_name]...{w=0.4} Let me handle it." + + if luna.is_worn("robe"): + call nar(">You unclasp Luna's robes and let them drop to the ground behind her.") + + if luna.is_worn("top"): + call nar(">You swiftly pull Luna's top over her head...{w=0.4} Her breasts moves up along with it and then drops from the sudden motion as the fabric passes by.") + $ renpy.sound.play("sounds/boing02.ogg") + pause .4 + + lun "Whoa!" ("base", "base", "base", "mid") + + #Luna always wears underwear at this stage + call nar(">You unhook Luna's bra with ease and then let it drop to the floor in front of her.") + call nar(">She glances back at you, cheeks flushed and a look of surprise across her face caused by the unusual speed and dexterity displayed by her headmaster.") + + lun "Have you done this before, [lun_genie_name]?" ("base", "base", "base", "mid") + + if luna.is_worn("bottom", "panties"): + call nar(">Noticing Luna's increasing excitement you put your thumbs on either side of her bottoms and pull both it and her panties down in one singular motion...") + $ luna.strip("bottom", "panties") + if luna.is_worn("bottom"): + call nar(">Noticing Luna's increasing excitement you put your thumbs on either side of her bottoms and pull them down...") + if luna.is_worn("panties"): + call nar(">You eye up Luna's Panties for a moment before swiftly pulling them down, letting them rest just underneath her ankles...") + + + lun "" ("clench", "narrow", "base", "downR", cheeks="blush") + $ luna.strip("all") + pause .2 + hide screen blkfade + + + #Fade back to Naked Luna in front of genie + call lun_chibi_scene("inspect_idle_naked") + with d5 + + + lun "[lun_genie_name]!" ("clench", "narrow", "base", "downR", cheeks="blush") + gen "Yes, [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "*Ehm*...{w=0.4} Never mind..." ("soft", "narrow", "base", "down", cheeks="blush") + gen "Okay, let's begin then shall we?" ("base", xpos="far_left", ypos="head") + lun "..." ("base", "narrow", "base", "down", cheeks="blush") #blush + + call lun_chibi_scene("inspect_grope_breasts_naked") + call nar(">Without hesitation, you reach forward and grab Luna's breasts.") + + call nar(">As you begin silently kneading them, any doubts in Luna's mind appears to slowly wash away as she lets the sensations of your touch overtake any previous feelings of doubt.") + + lun "*Ah*...{w=0.4} [lun_genie_name]..." ("soft", "closed", "base", "mid", cheeks="blush") + + call nar(">You move your attention towards Luna's sensitive areas... Gently sliding your fingers across her nipples, then across the sides of her breasts and back again.") + + lun "*Mmm*..." ("normal", "closed", "base", "mid", cheeks="blush") + + call nar(">You continue massaging Luna's breasts and the silence is only broken by her moans as your fingers pass across her nipples.") + + lun "*Ah*...{w=0.4} *Ah*...{w=0.4} *Mmmm*..." ("soft", "closed", "base", "mid", cheeks="blush") + + call nar(">Luna getting more and more excited by your touch pushes her ass towards you once more.") + + call lun_chibi_scene("inspect_lean_grope_breasts_naked") + call nar(">As it graces your cock, you struggle not to get hard...") + + gen "(Nnnn-{w=0.2} Not today!)" ("angry", xpos="far_left", ypos="head") + + lun "" ("normal", "closed", "base", "mid", cheeks="blush") + call nar(">Determined to keep your composure this time you move your gaze down too see Luna rubbing her thighs together.") + + gen "(Well then...{w=0.4} Looks like she's ready.)" ("grin", xpos="far_left", ypos="head") + + call lun_chibi_scene("inspect_lean_idle_naked") + lun "" ("soft", "narrow", "base", "R", cheeks="blush") + call nar(">As you remove your hands from Luna's breasts she opens her eyes, confused as to why you stopped. Without saying anything, you place your hand across her pussy and give it a gentle rub.") + + lun "Ooooh!" ("crooked_smile", "wide", "base", "stare", cheeks="blush") + + call lun_chibi_scene("inspect_lean_grope_vagina_naked") + call nar(">A shudder passes through Luna's body from your initial touch. You begin moving your forefinger up and down her slit with increasing ease as her pussy becomes wetter and wetter.") + + lun "*Ah*...{w=0.4} [lun_genie_name]...{w=0.4}This feels a lot different to you--{w=0.2} *Ah*...{w=0.4} Touching my breasts..." ("open", "wink", "base", "R", cheeks="blush") + gen "(You ain't seen nothing yet...)" ("base", xpos="far_left", ypos="head") + + call nar(">As you continue rubbing her, the excitement in her voice gnaws at your steadily decreasing patience...") + + lun "*Ah*...{w=0.3} *Ah*...{w=0.3} *Ah*..." ("soft", "narrow", "base", "up", cheeks="blush") + gen "Ready, [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "" ("soft", "narrow", "base", "up", cheeks="blush") #pleasure + pause .8 + gen "[luna_name]?" ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(Fuck it...)" ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/slick_02.ogg") + with kissiris + pause .5 + + call lun_chibi_scene("inspect_lean_idle_naked") + lun "..." ("scream", "wide", "base", "stare", cheeks="blush") #wide eyed + lun "[lun_genie_name]!" ("scream", "base", "base", "mid", cheeks="blush") + + call nar(">As you penetrate Luna with your index finger she clenches her legs together in surprise.") + + lun "[lun_genie_name]...{w=0.4} Your finger slipped inside of me..." ("clench", "wide", "base", "mid", cheeks="blush") + gen "I know..." ("base", xpos="far_left", ypos="head") + lun "What do you--" ("clench", "narrow", "base", "mid", cheeks="blush") + + call lun_chibi_scene("inspect_lean_grope_vagina_naked") + play bg_sounds "sounds/slickloop.ogg" fadein 2 + call nar(">You begin moving your finger inside of Luna, slowly increasing the pace, her words soon replaced by the sounds of increasing pleasure.") + + lun "*Ah*...{w=0.4} My word...{w=0.3} *Ah*...{w=0.4} I never...{w=0.3} *Ah*..." ("soft", "narrow", "base", "stare", cheeks="blush") + gen "(*Hmm*...{w=0.4} Perhaps I shouldn't go so hard on her...)" ("base", xpos="far_left", ypos="head") + + stop bg_sounds fadeout 2 + call nar(">You stop your movement for a second to give Luna some breathing room but as you do she starts moving her hips back and forth on her own.") + + gen "(Never mind then...)" ("grin", xpos="far_left", ypos="head") + gen "*Tsk*... Such impatience with the youths these days..." ("grin", xpos="far_left", ypos="head") + lun "..." ("base", "narrow", "base", "up", cheeks="blush") #Looks back at you + gen "Very well [luna_name]..." ("base", xpos="far_left", ypos="head") + gen "In that case I won't hold back on you." ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/slick_02.ogg") + with kissiris + + lun "*Ah*!!!" ("scream", "wide", "base", "stare", cheeks="blush") #Wide eyed + + play bg_sounds "sounds/slickloopfast.ogg" + call nar(">You insert another finger and begin pumping them in and out, the walls of her pussy clinging onto your fingers with each insertion.") + + lun "*Ah*...{w=0.3} *Ah*...{w=0.3} *Ah*..." ("open", "happyCl", "base", "stare", cheeks="blush") + + call nar(">Luna now completely lost in pleasure begins shaking slightly, prompting you to pick up the pace even further.") + + play bg_sounds "sounds/slickloopveryfast.ogg" + lun "[lun_genie_name]...{w=0.3} This... {w=0.3} is...{w=0.3} amazing...{w=0.3} I... {w=0.3} never...{w=0.3} thought--" ("soft", "happyCl", "base", "stare", cheeks="blush") + gen "Then don't...{w=0.3} Focus on the feeling!" ("angry", xpos="far_left", ypos="head") + lun "*Ah*...{w=0.3} Yes...{w=0.3} [lun_genie_name]." ("soft", "closed", "base", "stare", cheeks="blush") + lun "*N-n-ngh!!!*" ("grin", "closed", "base", "mid", cheeks="blush") + + call nar(">Not showing her any mercy you continue pumping your fingers in and out of her rapidly.") + + lun "*Ah*...{w=0.5} [lun_genie_name]...{w=0.4} I think this is it!" ("mad", "narrow", "base", "stare", cheeks="blush") + lun "I'm...{w=0.3} *Ah*...{w=0.3} I'm--" ("open_tongue", "narrow", "base", "up", cheeks="blush") + gen "Yes girl, let all of it out!" ("angry", xpos="far_left", ypos="head") + + call nar(">You insert your fingers one last time as Luna's body finally gives in, her entire weight dropping onto your hand as your fingers penetrates her down to the base.") + + lun "I'm cumming!!" ("mad", "base", "base", "ahegao", cheeks="blush") + lun "*Nngh*...{w=0.8}{nw}" ("clench", "base", "base", "ahegao", cheeks="blush") + + with kissiris + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/slick_01.ogg") + lun "*Nngh*...{fast} *Ah*!" ("open_wide_tongue", "narrow", "base", "ahegao", cheeks="blush") + + + call lun_chibi_scene("inspect_lean_idle_naked") + gen "(By the great--)" ("angry", xpos="far_left", ypos="head") + + with kissiris + + $ renpy.sound.play("sounds/slick_01.ogg") + lun "*AAAAAH*!!!" ("crooked_smile", "narrow", "base", "ahegao", cheeks="blush") + call nar(">Your fingers now locked inside of Luna, you feel her entire body spasms as wave after wave of pleasure passes through her body.") + lun "Wow...{w=0.5} That was--{w=0.8}{nw}" ("crooked_smile", "narrow", "base", "stare", cheeks="blush") + + with kissiris + $ renpy.sound.play("sounds/slick_01.ogg") + lun "Wow... That was--{fast} *Ah*..." ("open", "narrow", "base", "ahegao", cheeks="blush") + + lun "*Mmm*...{w=0.4} You were right...{w=0.3} That...{w=0.3} That relief..." ("soft", "narrow", "base", "up", cheeks="blush") + + show screen blkfade + with d5 + + call nar(">Luna slumps forward onto your desk. Her grip around your fingers loosening enough for you to free yourself.") + call nar(">You swiftly pull them out of her which causes her to shudder once more before going completely limp on your desk.") + + $ renpy.sound.play("sounds/slick_02.ogg") + lun "*Ah*..." + + call nar(">Admiring your work, you watch as a streak of liquid runs down her leg before settling on the floor.") + + lun "[lun_genie_name]..." ("base", "base", "base", "mid", cheeks="blush", xpos="base", ypos="base", flip=False, trans=dissolve) + + $ luna.wear("all") + + centered "{size=+7}{color=#cbcbcb}Some time later...{/color}{/size}" + + call lun_chibi("stand", "desk", "base") + call lun_chibi_scene("reset") + hide screen blkfade + with d5 + + lun "[lun_genie_name], that was incredible!" ("base", "narrow", "base", "mid") + lun "Did you see how many Wrackspurts I expelled?" ("crooked_smile", "base", "raised", "mid") + gen "Very impressive indeed." ("base", xpos="far_left", ypos="head") + lun "I can't believe we finally did it!" ("crooked_smile", "happyCl", "base", "mid") + lun "Finally a fool proof way of expelling wrackspurts from other areas than your brain!" ("crooked_smile", "narrow", "base", "mid") + gen "Quite the discovery! I'm sure we'll be able to help a lot of backed up people." ("grin", xpos="far_left", ypos="head") + lun "Yes!" ("grin", "base", "base", "mid") + lun "So, what next? We've solved it now right?" ("grin", "base", "raised", "mid") + gen "Solved--" ("angry", xpos="far_left", ypos="head") + gen "Now I think you're getting a bit ahead of yourself Miss Lovegood." ("base", xpos="far_left", ypos="head") + lun "But--" ("angry", "base", "base", "mid") + gen "Masturbation is only a temporary solution, so perfecting it is vital... Until I've come up with a more permanent solution that is..." ("base", xpos="far_left", ypos="head") + lun "Then I'll practice as soon as I get to my dorm!" ("smile", "narrow", "base", "mid") + gen "No!" ("angry", xpos="far_left", ypos="head") + gen "I need to watch--{w=0.2} *Err*...{w=0.4} Instruct you so you can alleviate yourself properly and safely." ("base", xpos="far_left", ypos="head") + lun "Oh, of course [lun_genie_name]!" ("mad", "base", "base", "mid") + lun "Hopefully the Wrackspurts will leave me alone until then..." ("angry", "narrow", "base", "downL") #blush looking down + gen "Hopefully..." ("base", xpos="far_left", ypos="head") + gen "(Although I doubt it.)" ("base", xpos="far_left", ypos="head") + + if game.daytime: + gen "Well then, you've got class to attend [luna_name]." ("base", xpos="far_left", ypos="head") + gen "Off you go." ("base", xpos="far_left", ypos="head") + lun "Yes [lun_genie_name], thank you [lun_genie_name]..." ("base", "wink", "base", "mid") + else: + gen "Well then, it's getting late so you best head to your dorm Miss Lovegood." ("base", xpos="far_left", ypos="head") + gen "Off you go." ("base", xpos="far_left", ypos="head") + lun "Yes [lun_genie_name]." ("base", "base", "base", "mid") + lun "Good night, [lun_genie_name]." ("base", "wink", "base", "mid") + gen "Good night [luna_name]." ("base", xpos="far_left", ypos="head") + + call lun_walk(action="leave") + + gen "(She sure is a eager one...)" ("base", xpos="far_left", ypos="head") + call nar(">You look down and see something's caught onto your robes.") + gen "(*Hmm*... What's this?)" ("base", xpos="far_left", ypos="head") + + $ hair_luna_ITEM.owned = 1 + call give_reward("You found a string of blonde hair!", gift=hair_luna_ITEM) + + gen "(Looks like she's left me a parting gift.)" ("base", xpos="far_left", ypos="head") + if snape_office_intro_E1: + gen "Maybe I could use this for one of my potions..." ("base", xpos="far_left", ypos="head") + else: + gen "Maybe I'll find some use for this later..." ("base", xpos="far_left", ypos="head") + + + jump ll_pf_inspect.end + +label ll_pf_inspect_T2_E4_repeat: + + gen "How are you feeling, [luna_name]?" ("base", xpos="far_left", ypos="head") + gen "Have those spratters been bothering you any more?" ("base", xpos="far_left", ypos="head") + lun "A little bit better, [lun_genie_name]." ("soft", "narrow", "low", "down") + lun "Once I had gotten back to my dorm I got to thinking about our last session and some of them seemed to return though." ("upset", "narrow", "base", "downL") + + gen "Well, that's to be expected." ("base", xpos="far_left", ypos="head") + gen "Until we've found a fool proof way to deal with them I'm afraid this will have make do as a regular treatment." ("base", xpos="far_left", ypos="head") + lun "Alright..." ("soft", "narrow", "base", "downL") + lun "I suppose that's not too bad." ("base", "narrow", "base", "down") + gen "Good to hear..." ("base", xpos="far_left", ypos="head") + gen "Now then, ready for your treatment, [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "Yes [lun_genie_name]..." ("grin", "base", "base", "mid") + gen "Great, then come here and we'll get started." ("base", xpos="far_left", ypos="head") + + #Luna walks towards desk and it fades to black + call lun_walk("desk") + show screen blkfade + with d5 + + $ luna.strip("all") + + #Fades back to Luna in your lap + call lun_chibi_scene("inspect_idle_naked") + hide screen blkfade + with d5 + + gen "Now then..." ("base", xpos="far_left", ypos="head") + gen "Time to get these spratters worked up..." ("base", xpos="far_left", ypos="head") + + call lun_chibi_scene("inspect_grope_breasts_naked") + call nar(">You grab onto Luna's breasts and begin massaging them.") + + lun "*Eeek*!!" ("clench", "wide", "base", "stare", xpos="mid", ypos="base", flip=True, trans=dissolve) + gen "[luna_name]?" ("base", xpos="far_left", ypos="head") + lun "Oh...{w=0.2} Sorry, [lun_genie_name]!" ("angry", "happyCl", "base", "mid") + lun "Your hands are a bit cold." ("angry", "narrow", "base", "stare") + gen "Then let's get them warmed up shall we?" ("base", xpos="far_left", ypos="head") + call nar(">You spread your fingers apart and drag them across the sides of Luna's nipples, increasing your grip around them with each motion.") + lun "*Ah*..." ("soft", "closed", "base", "mid", cheeks="blush") + gen "How's this, [luna_name]?" ("base", xpos="far_left", ypos="head") + gen "Feeling any build up yet?" ("base", xpos="far_left", ypos="head") + lun "*Mmm*...{w=0.4} Yes, [lun_genie_name]..." ("open", "closed", "base", "mid", cheeks="blush") + gen "Good..." ("base", xpos="far_left", ypos="head") + call nar(">You begin moving your hands in a circular motion, squeezing her breasts together and pulling them apart over and over...") + lun "*Mmm*..." ("soft", "closed", "base", "mid", cheeks="blush") + + call nar(">Luna whose thoughts are now enveloped by the sensations of your touch pushes her crotch towards you once again as if desperate to feel you inside of her...") + + call lun_chibi_scene("inspect_lean_idle_naked") + with d3 + + lun "" ("base", "closed", "base", "mid", cheeks="blush") + gen "*Hmm*...{w=0.4} Looks like someone's eager..." ("base", xpos="far_left", ypos="head") + gen "Very well then, [luna_name]." ("base", xpos="far_left", ypos="head") + + call lun_chibi_scene("inspect_lean_grope_vagina_naked") + lun "Ooooh..." ("grin", "narrow", "base", "up", cheeks="blush") + call nar(">Luna shivers slightly as your hand graces her pussy...") + call nar(">You notice that she's already wet as your fingers slide across her with ease...") + gen "Looks like someone's been looking forward to this..." ("base", xpos="far_left", ypos="head") + gen "Better not let you wait any further then." ("base", xpos="far_left", ypos="head") + lun "I--" ("base", "narrow", "base", "up", cheeks="blush") + + call lun_chibi_scene("inspect_lean_idle_naked") + $ renpy.sound.play("sounds/slick_02.ogg") + + with kissiris + lun "{heart}*Ngh*{heart}..." ("crooked_smile", "narrow", "base", "up", cheeks="blush") + gen "There we go..." ("base", xpos="far_left", ypos="head") + lun "You're...{w=0.4} They're inside me again..." ("grin", "narrow", "base", "up", cheeks="blush") + gen "Yes indeed [luna_name]..." ("base", xpos="far_left", ypos="head") + gen "And two fingers already...{w=0.4} Looks like you're getting better at this..." ("base", xpos="far_left", ypos="head") + lun "Oh...{w=0.4} Thank--" ("soft", "narrow", "base", "stare", cheeks="blush") + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + call lun_chibi_scene("inspect_lean_grope_vagina_naked") + + call nar(">You begin pumping your fingers quickly into Luna's pussy...") + lun "*Ah*!!!" ("clench", "base", "base", "stare", cheeks="blush") + call nar(">Taken by surprise, Luna clenches her thighs, which only strengthens her grip around your fingers...") + lun "*Ah*... [lun_genie_name]!" ("angry", "narrow", "base", "R", cheeks="blush") + gen "That's it [luna_name]...{w=0.4} Keep that grip steady and this will be over before you know it..." ("base", xpos="far_left", ypos="head") + lun "*Ah*...{w=0.3} *Ah*...{w=0.3} But [lun_genie_name]--" ("open", "happyCl", "base", "mid", cheeks="blush") + call nar(">As you keep pumping your fingers repeatedly inside of Luna you feel her grip loosen slightly...") + lun "I...{w=0.4} I..." ("upset", "happyCl", "base", "mid", cheeks="blush") + lun "{size=+5}I don't want it to be over!{/size}" ("scream", "narrow", "worried", "stare", cheeks="blush") + gen "Too bad!" ("base", xpos="far_left", ypos="head") + call nar(">Not showing any mercy on the girl, you keep pumping faster and faster in and out of her pussy.") + + play bg_sounds "sounds/slickloopfast.ogg" + + lun "*Ah*...{w=0.4} *Ah*...{w=0.4} No..." ("clench", "narrow", "base", "stare", cheeks="blush") + lun "Not yet!" ("mad", "happyCl", "base", "mid", cheeks="blush") + + play bg_sounds "sounds/slickloopveryfast.ogg" + + call nar(">Luna trying to keep that sensation going, tries to get a hold of herself as not to let herself cum.") + + lun "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("open", "happyCl", "base", "mid", cheeks="blush") + + call nar(">Taking it as a challenge you insert your middle finger all the way in which proves to be enough for the girl.") + + call lun_chibi_scene("inspect_lean_idle_naked") + lun "*Ah*...{w=0.2} No...{w=0.3} I'm cumming!!" ("clench", "happyCl", "worried", "mid", cheeks="blush") + + with kissiris + $ renpy.sound.play("sounds/slick_01.ogg") + + lun "*AAAAAH*!!!" ("clench", "narrow", "base", "up", cheeks="blush") + call nar(">Luna's thighs clenches around you as waves of pleasure hits her.") + + lun "*Ah*...{w=0.2} I'm...{w=0.2} I'm--" ("mad", "narrow", "base", "stare", cheeks="blush") + + with kissiris + $ renpy.sound.play("sounds/slick_01.ogg") + stop bg_sounds fadeout 2 + + lun "*Ah*..." ("grin", "narrow", "base", "up", cheeks="blush") + lun "*Mmm*..." ("base", "happyCl", "low", "up", cheeks="blush") + + show screen blkfade + with d5 + + $ luna.wear("all") + + call nar(">Luna completely exhausted, slumps onto your desk once again.") + call nar(">You pull your chair back to give her some space.") + + lun "*Mmm*..." ("base", "narrow", "base", "down", cheeks="blush", xpos="base", ypos="base", flip=False, trans=dissolve) + + centered "{size=+7}{color=#cbcbcb}Some time later...{/color}{/size}" + + call lun_chibi("stand", "desk", "base") + call lun_chibi_scene("reset") + + hide screen blkfade + with d5 + + gen "Well done, [luna_name]!" ("base", xpos="far_left", ypos="head") + gen "Looks like you managed to get even more out than last time!" ("base", xpos="far_left", ypos="head") + lun "*Mmm*...{w=0.4} Thank you, [lun_genie_name]." ("base", "closed", "base", "mid", cheeks="blush") + gen "Holding them in for as long as possible was very clever!" ("base", xpos="far_left", ypos="head") + lun "Oh-- I...{w=0.3} Yes, thank you!" ("soft", "narrow", "base", "downR", cheeks="blush") + gen "Are you okay, [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "Oh, yes [lun_genie_name]...{w=0.4} I'm...{w=0.3} I feel great!" ("crooked_smile", "narrow", "base", "mid", cheeks="blush") + gen "You look exhausted, you better get some rest..." ("base", xpos="far_left", ypos="head") + + if game.daytime: + lun "*Ehm*...{w=0.4} I've still got classes..." ("soft", "narrow", "base", "R", cheeks="blush") + gen "Right..." ("base", xpos="far_left", ypos="head") + gen "Maybe I should go a bit easier on you during the--" ("base", xpos="far_left", ypos="head") + lun "No, it's fine!" ("mad", "narrow", "base", "mid", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + lun "I mean... I'll be okay [lun_genie_name]..." ("soft", "narrow", "base", "mid", cheeks="blush") + lun "Off I go then..." ("open", "narrow", "base", "R", cheeks="blush") + else: + gen "Off you go." ("base", xpos="far_left", ypos="head") + lun "Alright." ("soft", "narrow", "base", "R", cheeks="blush") + lun "Good night, [lun_genie_name]." ("base", "narrow", "base", "mid", cheeks="blush") + gen "Good night [luna_name]." ("base", xpos="far_left", ypos="head") + + call lun_walk(action="leave") + + + jump ll_pf_inspect.end + +label ll_pf_inspect_T3_E1_repeat: + + gen "Would you like me to help you with--" ("base", xpos="far_left", ypos="head") + lun "Yes please!" ("grin", "base", "base", "stare") + + #Luna walks towards desk and it fades to black + call lun_walk("desk") + show screen blkfade + with d5 + + $ luna.strip("all") + + #Fades back to Luna in your lap + call lun_chibi_scene("inspect_idle_naked") + hide screen blkfade + with d5 + + gen "You didn't even let me finish my sentence..." ("base", xpos="far_left", ypos="head") + lun "Oh...{w=0.4} Was this not what you meant, [lun_genie_name]?" ("angry", "base", "base", "R", xpos="mid", ypos="base", flip=True, trans=dissolve) + gen "That's not the...{w} Well I suppose..." ("base", xpos="far_left", ypos="head") + lun "I hope I'm not too much of a bother, [lun_genie_name]..." ("soft", "narrow", "worried", "downL") + lun "I know your time is valuable." ("open", "narrow", "base", "downL") + gen "Assisting my students is part of my job [luna_name]." ("base", xpos="far_left", ypos="head") + + if game.daytime: + gen "Even if that meant treating you for an entire day then so be it..." ("base", xpos="far_left", ypos="head") + else: + gen "Even if that meant treating you all night then so be it..." ("base", xpos="far_left", ypos="head") + + lun "Really? You'd do that?" ("clench", "base", "base", "mid") + gen "If that's what is required of me..." ("base", xpos="far_left", ypos="head") + lun "*Hmm*..." ("annoyed", "narrow", "base", "downL") + gen "(She's really considering it?)" ("base", xpos="far_left", ypos="head") + lun "I wouldn't want you to feel obligated just because it's part of your job..." ("open", "narrow", "base", "mid") + lun "I think I will still be fine with the amount of time we're spending on the treatment for now." ("base", "narrow", "base", "down") + gen "Good to hear." ("base", xpos="far_left", ypos="head") + gen "(I've got enough wankers cramp as it is...)" ("base", xpos="far_left", ypos="head") + gen "So, are you ready to begin your treatment?" ("base", xpos="far_left", ypos="head") + lun "Yes... Please go ahead [lun_genie_name]..." ("base", "base", "base", "mid") + + gen "Then just relax and let me take care of it." ("base", xpos="far_left", ypos="head") + + call lun_chibi_scene("inspect_grope_breasts_naked") + + call nar(">Grabbing on to Luna's breasts, you begin massaging them gently.") + lun "*Ah*..." ("open", "closed", "base", "mid") + call nar(">Luna immediately shudders and lets out a soft moan as a response to your touch.") + gen "(All day... Such a silly girl, I doubt she'd last an hour...)" ("base", xpos="far_left", ypos="head") + call nar(">You let go of Luna's breasts and give her nipples a quick pinch.") + lun "Ouch!" ("mad", "wide", "base", "up") + gen "Whops." ("base", xpos="far_left", ypos="head") + menu: + "-Pinch her again-": + call nar(">You quickly pinch Luna's nipples again and she jumps slightly by surprise.") + lun "Ow, Ow, Ow!!" ("clench", "happyCl", "base", "mid", cheeks="blush") + lun "[lun_genie_name]!" ("mad", "narrow", "worried", "R", cheeks="blush") + gen "Just give it a moment... It will feel better soon..." ("base", xpos="far_left", ypos="head") + lun "Are you--" ("angry", "closed", "base", "down", cheeks="blush") + + call nar(">You pinch her again, even harder this time and Luna suddenly jerks her body forward.") + call lun_chibi_scene("inspect_lean_idle_naked") + + lun "Stop it [lun_genie_name]...{w=0.4} I can't..." ("mad", "happyCl", "worried", "mid", cheeks="blush") + call nar(">As you let go of her tits Luna's words trail off slightly...") + gen "Can't what, [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "That's odd..." ("mad", "narrow", "base", "down", cheeks="blush") + lun "It feels kind of nice after you let go of them." ("soft", "narrow", "base", "down", cheeks="blush") + gen "More sensitive?" ("base", xpos="far_left", ypos="head") + lun "Yes..." ("soft", "narrow", "base", "mid", cheeks="blush") + lun "Do it again [lun_genie_name]!" ("angry", "base", "base", "mid", cheeks="blush") + gen "Again?" ("base", xpos="far_left", ypos="head") + lun "Yes, again!" ("angry", "base", "base", "R", cheeks="blush") + gen "If you say so..." ("base", xpos="far_left", ypos="head") + + call lun_chibi_scene("inspect_lean_grope_breasts_naked") + call nar(">You pinch Luna's nipples again and being ready for it this time you only hear a short intake of breath.") + lun "" ("soft", "base", "base", "up", cheeks="blush") + call nar(">Releasing your grip of her nipples you begin brushing your fingertips along the sides of her breasts, sliding your fingers along the sides of her nipples as you do so.") + lun "*Ah*...{w=0.4} How...{w=0.4} How strange..." ("open", "closed", "base", "mid", cheeks="blush") + call nar(">Luna now enjoying the heightened sensitivity of her nipples begins to relax, her breathing slowing down more and more.") + lun "..." ("base", "closed", "base", "mid", cheeks="blush") + gen "(Am I just giving her a massage now?)" ("base", xpos="far_left", ypos="head") + "-Don't-": + lun "Please be careful [lun_genie_name]..." ("angry", "narrow", "base", "mid", cheeks="blush") + + call nar(">Trying not to give into the temptation you resume massaging Luna's breasts.") + call nar(">Luna's breathing slows down as she begins feeling more relaxed.") + + lun "..." ("base", "closed", "base", "mid", cheeks="blush") + + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "(Am I just giving her a massage now?)" ("base", xpos="far_left", ypos="head") + + lun "*Ah*....." ("base", "closed", "base", "mid", cheeks="blush") + call nar(">As you continue massaging her, she bends forward to lean on your desk.") + call lun_chibi_scene("inspect_lean_grope_breasts_naked") + with d3 + + gen "*Err*... Are you--" ("base", xpos="far_left", ypos="head") + lun "*Mmm*..." ("base", "closed", "base", "mid", cheeks="blush") + gen "[luna_name]?" ("base", xpos="far_left", ypos="head") + lun "..." ("base", "closed", "base", "mid", cheeks="blush") + gen "[luna_name]?" ("base", xpos="far_left", ypos="head") + + call lun_chibi_scene("inspect_lean_idle_naked") + call nar(">You let go of Luna's breasts and she opens her eyes in confusion.") + + lun "*Huh*?" ("soft", "narrow", "base", "stare", cheeks="blush") + gen "I believe our purpose here isn't for me to massage you until you fall asleep..." ("base", xpos="far_left", ypos="head") + lun "Oh... Right..." ("base", "narrow", "base", "downL", cheeks="blush") + + call lun_chibi_scene("inspect_lean_grope_vagina_naked") + call nar(">You stick your hand down between Luna's legs and begin rubbing your fingers along her slit.") + + lun "*Ah*..." ("soft", "closed", "base", "mid", cheeks="blush") + call nar(">As you brush up against her you notice how wet she is already.") + gen "*Hmm*... Looks like that massage helped after all..." ("base", xpos="far_left", ypos="head") + lun "*Ah*...{w=0.4} *Ah*...{w=0.4} *Ah*..." ("open", "closed", "low", "mid", cheeks="blush") + call nar(">Moving your forefinger up and down against Luna, you hear her breathing becoming more and more erratic and you feel your cock twitch slightly against your robes.") + gen "(Time to bust this thing wide open...)" ("base", xpos="far_left", ypos="head") + call nar(">You stop your movements, giving Luna just a brief moment of anticipation before you push a finger inside.") + + call lun_chibi_scene("inspect_lean_idle_naked") + $ renpy.sound.play("sounds/slick_02.ogg") + + with kissiris + lun "{heart}*Ngh*{heart}..." ("grin", "closed", "base", "stare", cheeks="blush") + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + call lun_chibi_scene("inspect_lean_grope_vagina_naked") + + call nar(">You begin moving your finger inside Luna's pussy, as if playfully searching for her weak spot.") + lun "*Ah*... What are... What are you doing [lun_genie_name]..." ("grin", "narrow", "base", "up", cheeks="blush") + gen "Oh... You know... Just looking for something..." ("base", xpos="far_left", ypos="head") + + lun "*Ah*...{w=0.4} Looking...{w=0.4} *Ah*...{w=0.4} What are you--" ("grin", "narrow", "base", "up", cheeks="blush") + + gen "Why I'll never find it at this rate... Better get some of my friends to help." ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/slick_02.ogg") + play bg_sounds "sounds/slickloopfast.ogg" + call nar(">You push another finger inside her and begin moving them around.") + + lun "*Ah*...{w=0.4} [lun_genie_name]..." ("soft", "narrow", "base", "up", cheeks="blush") + gen "*Hmm*... Some lousy friends they are... I still can't find it..." ("base", xpos="far_left", ypos="head") + lun "*Ah*...{w=0.3} *Ah*...{w=0.3} Are you...{w=0.3} Are you sure..." ("base", "narrow", "base", "up", cheeks="blush") + + call nar(">You keep moving your fingers inside Luna, and as you do you feel her clench around them slightly.") + + gen "Yes...{w=0.3} Although maybe it's just hiding..." ("base", xpos="far_left", ypos="head") + lun "*Ah*...{w=0.3} It...{w=0.3} What is--" ("soft", "narrow", "base", "up", cheeks="blush") + gen "Better call in an expert..." ("base", xpos="far_left", ypos="head") + call nar(">Keeping your fingers moving inside Luna you move your thumb and press it up against her clit.") + lun "*Oooooh*!!!" ("grin", "wide", "base", "up", cheeks="blush") + gen "There it is!" ("base", xpos="far_left", ypos="head") + + play bg_sounds "sounds/slickloopveryfast.ogg" + call nar(">You start rubbing your thumb against Luna's clit as your fingers move rapidly inside her.") + lun "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("grin", "base", "base", "up", cheeks="blush") + call nar(">Luna's moans reverberates around your office and you notice her legs beginning to shake slightly.") + call nar(">Luna's moan suddenly stops and she clenches her thighs tight around your hand.") + + call lun_chibi_scene("inspect_lean_idle_naked") + lun "*Ah*...{w=0.2} I'm...{w=0.3} I'm cumming!!" ("grin", "happyCl", "base", "stare", cheeks="blush") + + with kissiris + $ renpy.sound.play("sounds/slick_01.ogg") + + lun "*AAAAAH*!!!" ("grin", "narrow", "base", "up", cheeks="blush") + call nar(">Your hand locked firmly between her thighs you still manage to keep your fingers going whilst pushing your thumb down on her.") + + lun "*Ah*...{w=0.2} I'm...{w=0.2} I'm--" ("grin", "narrow", "base", "stare", cheeks="blush") + + with kissiris + $ renpy.sound.play("sounds/slick_01.ogg") + stop bg_sounds fadeout 2 + + lun "*Ah*..." ("grin", "narrow", "base", "up", cheeks="blush") + lun "*Mmm*..." ("base", "closed", "low", "up", cheeks="blush") + + show screen blkfade + with d5 + + $ luna.wear("all") + + call nar(">Luna's legs buckle completely as she puts her full weight onto your desk.") + call nar(">You watch her body move up and down for a while, her legs twitching slightly every now and then as liquid runs down her legs.") + call nar(">After some time she manages to push herself up and get off your desk.") + + + hide luna_main + call lun_chibi("stand", "desk", "base") + call lun_chibi_scene("reset") + + hide screen blkfade + with d5 + + gen "How was that, [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "How did you do that [lun_genie_name]?" ("mad", "base", "base", "mid", xpos="base", ypos="base", flip=False, trans=dissolve) + gen "Do what?" ("base", xpos="far_left", ypos="head") + lun "The thing you did with your thumb." ("angry", "base", "base", "mid") + gen "Oh that...{w=0.4} Well I just called in an expert didn't I?" ("base", xpos="far_left", ypos="head") + gen "Nice bloke to have at hand isn't he?" ("base", xpos="far_left", ypos="head") + lun "Very..." ("base", "narrow", "base", "stare") + gen "So, feeling better now?" ("base", xpos="far_left", ypos="head") + lun "Yes, [lun_genie_name]...{w=0.4} Thank you..." ("base", "base", "base", "mid") + + if game.daytime: + gen "Then you better make your way to class, [luna_name]." ("base", xpos="far_left", ypos="head") + else: + gen "Then you best be off to bed, [luna_name]." ("base", xpos="far_left", ypos="head") + + lun "Okay..." ("soft", "base", "base", "R") + lun "Let me know if you want to..." ("open", "narrow", "base", "mid") + lun "*Ehm*... I mean, I'll let you know if I need any more assistance..." ("open", "base", "base", "down") + gen "Certainly..." ("base", xpos="far_left", ypos="head") + + call lun_walk(action="leave") + + + jump ll_pf_inspect.end diff --git a/game/scripts/characters/luna/events/favors/masturbate_for_me.rpy b/game/scripts/characters/luna/events/favors/masturbate_for_me.rpy new file mode 100644 index 00000000..42e5f03c --- /dev/null +++ b/game/scripts/characters/luna/events/favors/masturbate_for_me.rpy @@ -0,0 +1,1091 @@ + + +### Luna Masturbate ### + +label ll_pf_masturbate: + + gen "{size=-4}(*Hmm*... I wonder if I should ask Luna to masturbate in front of me...){/size}" ("base", xpos="far_left", ypos="head") + + if ll_pf_masturbate.counter < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump luna_favor_menu + + # Start Event + call hide_characters + hide screen bld1 + show screen blkfade + with d5 + pause 1 + + $ lun_outfit_last.save() #Save Luna clothing + $ luna.equip(lun_outfit_default) #Equip Luna Default clothing + + hide screen blkfade + with d5 + + $ ll_pf_masturbate.start() + + # End Event + label .end: + + # Setup + stop music fadeout 2.0 + call hide_characters + + call gen_chibi("sit_behind_desk") + + # Reset Luna clothing. + $ luna.equip(lun_outfit_last) + + if lun_tier == 3: + if lun_whoring < 9: + $ lun_whoring += 1 + + elif lun_tier == 4: + if lun_whoring < 16: + $ lun_whoring += 1 + + jump end_luna_event + +### Tier 3 ### + +##Genie teaches Luna how to touch herself. She lifts up and rubs herself under her skirt until cumming and is very pleased that she managed to do it.## + +label ll_pf_masturbate_T3_E1_intro: + + gen "So, have the wickerspats finally left you alone [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "Not at all, [lun_genie_name]... In fact... They've been worse than ever." ("angry", "narrow", "base", "downL", trans=dissolve) + gen "Really?" ("base", xpos="far_left", ypos="head") + call nar(">Luna shifts her thighs together uncomfortably.") + lun "Yes..." ("annoyed", "narrow", "base", "mid") #seductive + gen "That's unfortunate..." ("base", xpos="far_left", ypos="head") + gen "Well in that case I think it's time I teach you how to masturbate." ("base", xpos="far_left", ypos="head") + lun "*Oooh*... I'm finally going to become a master baiter myself, [lun_genie_name]?" ("grin", "base", "raised", "mid") + gen "That's right..." ("base", xpos="far_left", ypos="head") + lun "Marvellous!" ("smile", "base", "base", "mid") + lun "" ("crooked_smile", "narrow", "base", "mid") + call nar(">Luna jumps happily on the spot, looking at you expectantly.") + gen "Let's get going then shall we..." ("base", xpos="far_left", ypos="head") + lun "Thank you so much!" ("crooked_smile", "happyCl", "base", "mid") + gen "No need to thank me, [luna_name], I'm simply doing what is necessary." ("base", xpos="far_left", ypos="head") + gen "Now, come stand in front of my desk." ("base", xpos="far_left", ypos="head") + + hide luna_main + with d3 + + call lun_walk("desk", "base") + + $ luna.set_face(mouth="base", eyes="base", eyebrows="base", pupils="mid") + $ camera.set_imagepath("common/") + $ camera.set_image("CG luna") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=0.95, pos=(-975, -155), initialize=True) + + $ renpy.music.stop(channel="weather", fadeout=4) + + hide screen blkfade + show screen animatedCG + with fade + + $ camera.set(zoom=0.5, pos=(-270, -150), t=5.0) + lun "Is here okay?" ("soft", "narrow", "base", "mid") + gen "Perfect." + gen "I'll have to explain a few things before we get going so pay attention..." + lun "Yes, [lun_genie_name]..." ("base", "base", "base", "mid") + call nar(">Luna stares at you intently.") + gen "Good... Now--" + gen "Remember what we talked about... Locate the affected area then focus positive thoughts onto it.." + lun "Right." ("open", "narrow", "base", "down") + gen "Have you found it?" + lun "Yes..." ("base", "narrow", "base", "down") + gen "Good..." + gen "Now then..." + gen "Let's try some self-applied massage to start with." + lun "A--{w=0.2} Alright." ("soft", "narrow", "base", "down", cheeks="blush") + gen "Don't worry, I'll be here to give you some guidance." + lun "Thank you, [lun_genie_name]." ("base", "narrow", "base", "down", cheeks="blush") + + + show screen blkfade + with d3 + + $ luna.set_pose("masturbate") + + call nar(">Luna puts one of her hands on her nipple and the other one below her skirt, a slight moan escapes her as her fingers reaches the surface of her skin.") + + hide screen blkfade + with d3 + + lun "*Ah*..." ("open", "narrow", "base", "up", cheeks="blush") + gen "Is everything alright, [luna_name]?" + lun "*Ah*...{w=0.3} of course, [lun_genie_name]!" ("soft", "narrow", "base", "stare", cheeks="blush") + lun "My fingers are just a bit cold..." ("normal", "narrow", "base", "mid", cheeks="blush") + gen "That's fine... Just try rubbing yourself and your fingers will warm up in just a moment." + lun "*Ah*...{w=0.3} Yes [lun_genie_name]..." ("angry", "narrow", "low", "stare", cheeks="blush") + gen "..." + + + lun "*Ah*...{w=0.3} is this how it should be done?" ("soft", "base", "base", "mid", cheeks="blush") + gen "As long as it's feeling good then I'm sure it's working. Just keep going and you'll soon be rid of those nasty Wickerspoons." + lun "I'm glad..." ("base", "narrow", "base", "down", cheeks="blush") + lun "Although it feels a bit different compared to when you helped me..." ("annoyed", "narrow", "base", "down", cheeks="blush") + gen "That's to be expected... Another person's touch will always feel different to your own." + lun "Okay..." ("upset", "base", "base", "down", cheeks="blush") + + call nar(">Luna moves her hand around beneath her skirt before stopping again.") + lun "It's just..." ("upset", "narrow", "base", "mid", cheeks="blush") + lun "As nice as this massage feels..." ("soft", "narrow", "base", "mid", cheeks="blush") + lun "It's not really scratching that same itch, [lun_genie_name]..." ("annoyed", "narrow", "base", "mid", cheeks="blush") + gen "I guess I do have that slight magic touch..." + gen "*Hmm*..." + lun "Am I doing it wrong, [lun_genie_name]?" ("upset", "narrow", "base", "down", cheeks="blush") + gen "Certainly not, but this might be trickier than I initially thought..." + lun "Really?" ("soft", "base", "base", "mid", cheeks="blush") + gen "It would seem that those nasty critters are trying to hide!" + lun "Hide? But I thought touching myself would lure them--" ("mad", "narrow", "base", "down", cheeks="blush") + gen "Don't worry [luna_name]... As long as you're still feeling that itch then they can't have gone far." + gen "Although this means you'll have to chase them down." + lun "Chase them down?" ("angry", "narrow", "base", "down", cheeks="blush") + gen "I'll be here to guide you through it of course..." + lun "Okay..." ("soft", "base", "base", "mid", cheeks="blush") + gen "Ready?" + lun "Yes." ("angry", "base", "base", "mid", cheeks="blush") + gen "Close your eyes..." + lun "" ("normal", "closed", "base", "mid", cheeks="blush") #eyes closed + call ctc + gen "Very good...{w} Now I want you to block out everything else." + lun "Alright, [lun_genie_name]..." ("open", "closed", "base", "mid", cheeks="blush") + gen "Imagine standing alone in your bedroom..." + lun "" ("normal", "closed", "base", "mid", cheeks="blush") + call ctc + gen "Empty your mind of all intrusive thoughts..." + lun "" ("normal", "closed", "annoyed", "mid", cheeks="blush") + call ctc + gen "Now... Focus on where the itch is coming from..." + lun "" ("upset", "closed", "annoyed", "mid", cheeks="blush") + call ctc + gen "Then once you've found it, I want you to chase down that feeling with your fingers." + lun "" ("annoyed", "closed", "annoyed", "mid", cheeks="blush") + call ctc + gen "And catch it!" + + lun "I-- I can't... I can't find it..." ("angry", "closed", "base", "mid", cheeks="blush") + + + lun "It's like trying to grab rays of sunlight..." ("angry", "closed", "base", "mid", cheeks="blush") + gen "Don't try to grab a hold of it, just brush against it with the tips of your fingers." + lun "" ("soft", "closed", "annoyed", "mid", cheeks="blush") + call ctc + + lun "" ("normal", "closed", "annoyed", "mid", cheeks="blush") + call ctc + + call nar(">Luna desperately moves her hand around beneath her skirt.") + lun "I... I think I've lost them again, [lun_genie_name]..." ("angry", "closed", "base", "mid", cheeks="blush") + gen "Try moving your hand up a bit more..." + lun "Up a bit--" ("angry", "closed", "low", "mid", cheeks="blush") + + lun "*Ah*..." ("grin", "closed", "worried", "mid", cheeks="blush") + lun "*Mmm*..." ("base", "closed", "base", "mid", cheeks="blush") + call nar(">Luna gives off a soft moan under her breath.") + gen "(There we go...)" + lun "This... This area is even more itchy, [lun_genie_name]..." ("base", "closed", "low", "mid", cheeks="blush") + gen "Excellent... That means you've managed to chase them down." + gen "Just keep your eyes closed and begin gently moving your fingers in a circular motion over the area." + + + lun "Oooh! {heart}" ("grin", "closed", "base", "mid", cheeks="blush") + lun "*Ah*...{w=0.3} Yes...{w=0.3} I think it's working, [lun_genie_name]!" ("grin", "closed", "annoyed", "mid", cheeks="blush") + gen "*Shhh*...{w=0.3} Don't speak...{w=0.3} Just focus." + lun "" ("grin", "closed", "base", "mid", cheeks="blush") + gen "Empty your mind and only think about what makes you feel good..." + lun "Okay..." ("base", "closed", "base", "mid", cheeks="blush") + lun "" ("soft", "closed", "low", "mid", cheeks="blush") + call ctc + lun "*Ah*..." ("open", "closed", "base", "mid", cheeks="blush") + lun "[lun_genie_name]..." ("soft", "closed", "base", "mid", cheeks="blush") + lun "*Ah*...{w=0.3} [lun_genie_name]..." ("soft", "closed", "base", "mid", cheeks="blush") + lun "I think..." ("open", "closed", "base", "mid", cheeks="blush") + lun "*Ah*..." ("open", "closed", "base", "mid", cheeks="blush") + lun "I think I've almost..." ("soft", "closed", "base", "mid", cheeks="blush") + gen "*Shhh*..." + + + call nar(">You see Luna's hand move swiftly beneath her skirt.") + lun "*Mmmm*..." ("base", "closed", "base", "mid", cheeks="blush") + lun "*Ah*..." ("open", "closed", "base", "mid", cheeks="blush") + lun "*A-ah*..." ("grin", "closed", "base", "mid", cheeks="blush") + lun "Yes..." ("grin", "closed", "low", "mid", cheeks="blush") + lun "*Ah*... *Ah*...{heart}" ("grin", "closed", "low", "mid", cheeks="blush") + lun "{size=+4}*Mmm*...{w=0.3} yes...{heart}{/size}" ("crooked_smile", "narrow", "base", "up", cheeks="blush") + lun "{size=+8}*ah*...{w=0.3} *Ah*...{/size}" ("crooked_smile", "narrow", "base", "up", cheeks="blush") + gen "That's it--" + + + call nar(">Luna now desperately trying to cum, moves her hand even faster.") + lun "*Ah*! I think they're attacking me, [lun_genie_name]!" ("crooked_smile", "base", "base", "up", cheeks="blush") + lun "I... I can't stop moving my--" ("grin", "happyCl", "base", "mid", cheeks="blush") + gen "Keep going, you're doing it!" + lun "*Ah*...{w=0.4} Yes [lun_genie_name]...{heart}" ("crooked_smile", "happyCl", "base", "up", cheeks="blush") + lun "*Ah*...{w=0.4} *Ah*...{w=0.4} *Ah*...{w=0.4}" ("soft", "happyCl", "base", "up", cheeks="blush") + lun "*Ngh*... It's... {w=0.3} I'm--" ("grin", "happyCl", "base", "mid", cheeks="blush") + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + lun "*Ah*!" ("grin", "narrow", "base", "ahegao", cheeks="blush") + + lun "*Mmm*..." ("grin", "narrow", "base", "up", cheeks="blush") + gen "Well done--" + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + lun "*Ah*!" ("crooked_smile", "narrow", "base", "up", cheeks="blush") + + lun "..." ("soft", "narrow", "base", "stare", cheeks="blush") + lun "{size=-5}*Sigh*...{/size}" ("base", "closed", "low", "mid", cheeks="blush") + + #end of masturbate section (Cuts to Normal office screen with blkfade) + show screen blkfade + with d3 + + $ luna.set_pose(None) + + hide screen animatedCG + + hide screen blkfade + with d5 + + call weather_sound + + gen "Well, will you look at that... You're a natural..." ("grin", xpos="far_left", ypos="head") + gen "So, the {i}wickspots{/i} have left you alone now I take it?" ("base", xpos="far_left", ypos="head") + lun "I...{w=0.4} I believe so, [lun_genie_name]..." ("open", "narrow", "base", "down", cheeks="blush", xpos="mid", ypos="base", trans=dissolve) + lun "At least that nasty itch appears to have gone away." ("base", "narrow", "base", "down", cheeks="blush") + gen "Excellent!" ("grin", xpos="far_left", ypos="head") + gen "Then my work here is done!" ("base", xpos="far_left", ypos="head") + lun "*Oh*..." ("soft", "base", "base", "mid", cheeks="blush") + lun "You want me to leave already, [lun_genie_name]?" ("open", "base", "base", "mid", cheeks="blush") + gen "If there's nothing else I can help you with?" ("base", xpos="far_left", ypos="head") + lun "*Ehm*...{w=0.4} Well I was just wondering..." ("soft", "narrow", "base", "R", cheeks="blush") + lun "What do I do if the feeling comes back, [lun_genie_name]?" ("angry", "narrow", "base", "mid", cheeks="blush") + lun "Do I just get rid of them myself from now on?" ("soft", "narrow", "base", "mid", cheeks="blush") + gen "Certainly not!" ("base", xpos="far_left", ypos="head") + lun "..." ("base", "base", "base", "mid", cheeks="blush") #happy + gen "I need to supervise every development until you've mastered the art of masturbation." ("base", xpos="far_left", ypos="head") + gen "Preventing this outbreak is now my top priority." ("base", xpos="far_left", ypos="head") + lun "Really? Thank you so much, [lun_genie_name]." ("base", "happyCl", "base", "mid", cheeks="blush") + gen "Certainly." ("base", xpos="far_left", ypos="head") + gen "Bestow shall I in you, my teaching of all, young padawan!" ("base", xpos="far_left", ypos="head") + lun "Sorry?" ("soft", "base", "base", "mid", cheeks="blush") + lun "I'm not sure exactly what you mean, [lun_genie_name]." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Yes, Indeed... You still have more to learn before reaching your true potential..." ("base", xpos="far_left", ypos="head") + lun "*Huh*?" ("upset", "narrow", "base", "mid", cheeks="blush") + gen "Once you've learned how to control the force I shall bestow on you my saber of light." ("base", xpos="far_left", ypos="head") + gen "And as my meta chlorines flow through your body--" ("base", xpos="far_left", ypos="head") + lun "[lun_genie_name]?" ("angry", "base", "base", "mid", cheeks="blush") + gen "Oh yeah, that's not canon anymore is it..." ("base", xpos="far_left", ypos="head") + lun "..." ("annoyed", "base", "base", "mid", cheeks="blush") #Confused + gen "..." ("base", xpos="far_left", ypos="head") + gen "That shall do for today, [luna_name]..." ("base", xpos="far_left", ypos="head") + lun "Okay..." ("base", "narrow", "base", "mid", cheeks="blush") + gen "Off you pop." ("base", xpos="far_left", ypos="head") + lun "Right." ("open", "base", "base", "mid", cheeks="blush") + lun "Bye then..." ("base", "base", "base", "mid", cheeks="blush") + + call lun_walk(action="leave") + + jump ll_pf_masturbate.end + +##Luna takes off her skirt and later on her top. She fingers herself for the first time +##She doesn't squirt in this event but will on the third event. + +label ll_pf_masturbate_T3_E2_intro: + + gen "[luna_name], tell me how you've been." ("base", xpos="far_left", ypos="head") + lun "I've been okay [lun_genie_name]... But it appears the wrackspurts have come back again..." ("open", "narrow", "base", "down", trans=dissolve) + gen "Oh no... Such a shame!" ("base", xpos="far_left", ypos="head") + lun "Every time I think about the things we've done in here..." ("soft", "narrow", "base", "down") + lun "It just makes them feel so much... Stronger..." ("angry", "narrow", "base", "mid") + gen "They must be afraid of my powerful techniques..." ("base", xpos="far_left", ypos="head") + lun "You believe so?" ("angry", "base", "raised", "mid") + gen "I do..." ("base", xpos="far_left", ypos="head") + gen "Why else would they attack you when you're thinking about ridding yourself of them?" ("base", xpos="far_left", ypos="head") + lun "That's true..." ("soft", "narrow", "base", "down") + gen "This just means we need to fight back even harder!" ("base", xpos="far_left", ypos="head") + lun "Harder?" ("mad", "base", "base", "mid") + gen "Yes, and better!" ("base", xpos="far_left", ypos="head") + lun "Better, but last time I--" ("angry", "narrow", "base", "stare") + gen "Faster! Stronger!" ("base", xpos="far_left", ypos="head") + lun "Oh my... Are you sure I'm ready, [lun_genie_name]?" ("angry", "narrow", "base", "mid") + gen "Of course... Why, you've already experienced it before..." ("base", xpos="far_left", ypos="head") + lun "You don't mean..." ("angry", "wide", "base", "mid") #horny + call nar(">Luna starts grinding her thighs together.") + lun "But what if I don't do it right, [lun_genie_name]?" ("upset", "closed", "base", "down", cheeks="blush") + lun "I wouldn't want to hurt myself..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "*Hmm*... In that case, why don't you take your bottoms off this time?" ("base", xpos="far_left", ypos="head") + gen "That way I can see a lot easier and make sure you don't hurt yourself." ("base", xpos="far_left", ypos="head") + + lun "" ("soft", "base", "base", "mid", cheeks="blush") + call nar(">Luna gives you a look of excitement from your proposition...") + + lun "Well, I do feel inclined to take you up on that offer." ("soft", "base", "base", "down", cheeks="blush") + gen "It's not an offer, [luna_name]. If we are to make any progress then I require you to take off your bottoms so I can watch you masturbate." ("base", xpos="far_left", ypos="head") + + lun "" ("base", "narrow", "base", "down", cheeks="blush") + call nar(">Luna's body twitches slightly, looking at her face you get the feeling she's pondering on something.") + + lun "My body appears to think it's the right decision, [lun_genie_name]." ("open", "base", "base", "mid", cheeks="blush") + gen "Your body?" ("base", xpos="far_left", ypos="head") + gen "(What is she on about now?)" ("base", xpos="far_left", ypos="head") + lun "Yes, my body appears to have reacted to your proposition..." ("base", "base", "base", "down", cheeks="blush") + gen "Your body is reacting to--" ("base", xpos="far_left", ypos="head") + gen "I mean, yes that makes perfect sense... Your body does tell you when you're hungry so why wouldn't it try and help you get rid of those spurts too." ("grin", xpos="far_left", ypos="head") + gen "Ten points to Ravenclaw." ("base", xpos="far_left", ypos="head") + $ ravenclaw += 10 + lun "Thank you [lun_genie_name]." ("grin", "closed", "base", "mid", cheeks="blush") + gen "Very well then, let's give your body what it needs... Take your bottoms off--" ("base", xpos="far_left", ypos="head") + lun "..." ("base", "narrow", "base", "mid", cheeks="blush") #Horny + lun "Yes, [lun_genie_name]." ("base", "base", "base", "mid", cheeks="blush") + gen "And do come a bit closer so I can get a proper look..." ("base", xpos="far_left", ypos="head") + lun "Okay." ("open", "base", "base", "mid", cheeks="blush") + + #Luna chibi walks to desk + + call lun_walk("desk", "base") + + $ luna.set_face(mouth="base", eyes="base", eyebrows="base", pupils="mid", cheeks="blush") + $ camera.set_imagepath("common/") + $ camera.set_image("CG luna") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=0.5, pos=(-270, -150), initialize=True) + + $ renpy.music.stop(channel="weather", fadeout=4) + + hide screen blkfade + show screen animatedCG + with fade + + #start of masturbation section (in front of desk CG) + gen "Begin when you're ready, [luna_name]." + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("bottom") + $ luna.set_cum(pussy="wet") + with d3 + + lun "Finally..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "You seem relieved." + gen "(And rather wet...)" + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.set_cum(None) + $ luna.strip("bottom", "panties") + with d3 + + call ctc + + $ luna.set_pose("masturbate") + $ luna.strip("bottom", "panties") + + + lun "*Ah*..." ("grin", "narrow", "base", "up", cheeks="blush") + lun "I've not been able to stop thinking about this since last time..." ("grin", "narrow", "base", "stare", cheeks="blush") + lun "I worry those slimy wrackspurts have infested the dormitories because I'm having trouble sleeping as well..." ("angry", "narrow", "base", "down", cheeks="blush") + gen "That's quite possible..." + lun "It's--{w=0.2} *Ah*...{w=0.3} It's weird...{w=0.3} I almost feel glad I've got them..." ("angry", "closed", "base", "mid", cheeks="blush") + lun "Getting rid of them feels...{w=0.4} so...{w=0.3} so...{w=0.3}{nw}" ("angry", "closed", "low", "mid", cheeks="blush") + lun "Getting rid of them feels... so... so...{fast} good..." ("grin", "narrow", "base", "stare", cheeks="blush") + gen "The positive feelings must be your body telling you that you're doing the right thing expelling them..." + lun "*Ah*..." ("grin", "narrow", "base", "up", cheeks="blush") + lun "I must be...{w=0.3} *Ah*...{w=0.3} Expelling a lot of them then..." ("base", "narrow", "base", "stare", cheeks="blush") + lun "*Ah*... [lun_genie_name], I'm feeling hot all over..." ("angry", "happyCl", "base", "mid", cheeks="blush") + lun "And that itch... It's all over my--" ("angry", "narrow", "base", "down", cheeks="blush") + lun "*Ah*..." ("soft", "happyCl", "base", "down", cheeks="blush") + gen "That means your body is ready for the next step..." + lun "[lun_genie_name]...{w=0.3} *Ah*... I'm not sure I'm ready..." ("angry", "happyCl", "base", "mid", cheeks="blush") + gen "Nonsense..." + gen "Just take it slow and gently push a finger in..." + lun "*Ah*...{w=0.3} *Ah*...{w=0.3} Alright..." ("open", "happyCl", "base", "mid", cheeks="blush") + call nar(">Luna begins rubbing a finger across her slit... Still a little apprehensive about putting it inside...") + lun "*Ah*...{w=0.3} [lun_genie_name]..." ("soft", "happyCl", "base", "mid", cheeks="blush") + gen "Gently..." + lun "Gently...{w=0.4} Okay..." ("angry", "closed", "base", "mid", cheeks="blush") + lun "*Nnnngh*..." ("clench", "happyCl", "base", "mid", cheeks="blush") + + #Finger inserted + $ renpy.sound.play("sounds/slick_02.ogg") + with kissiris + + lun "*Ah*...." ("base", "narrow", "base", "up", cheeks="blush") + lun "I...{w=0.3} I did it, [lun_genie_name]..." ("grin", "narrow", "base", "up", cheeks="blush") + gen "How does it feel?" + lun "It...{w=0.3} Good...{w=0.5} Just a bit strange..." ("soft", "narrow", "base", "stare", cheeks="blush") + gen "Try moving it in and out." + lun "Alright..." ("soft", "narrow", "base", "down", cheeks="blush") + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + #Luna fingering + + call nar(">Luna starts pushing her fingers in and out, the sounds of her moaning becoming more and more shallow as she goes on.") + lun "*Ah*...{w=0.4} *Ah*...{w=0.4} *Ah*..." ("open", "closed", "base", "mid", cheeks="blush") + lun "How--{w=0.2} *Ah*...{w=0.4} How is it looking?" ("soft", "closed", "base", "up", cheeks="blush") + gen "Very good [luna_name]... You're very pretty..." + lun "*Ah*...{w=0.3} I'm... *Ah*...{w=0.3} I'm pretty [lun_genie_name]?" ("angry", "narrow", "base", "stare", cheeks="blush") + gen "Why yes, [luna_name]. Your body is very nice..." + lun "[lun_genie_name]--{w=0.2} *Ah*...{w=0.4} That's not what I--{w=0.4}{nw}" ("angry", "narrow", "base", "mid", cheeks="blush") + lun "[lun_genie_name]-- *Ah*... That's not what I--{fast} *Ah*..." ("angry", "closed", "base", "mid", cheeks="blush") + lun "I merely wanted to know if I was doing it right..." ("soft", "closed", "base", "mid", cheeks="blush") + gen "I know." + lun "*Ah*...{w=0.3} [lun_genie_name]?" ("soft", "narrow", "base", "stare", cheeks="blush") + gen "Take your top off for me will you..." + lun "*Ah*...{w=0.3} *Ah*...{w=0.3} Okay..." ("open", "narrow", "base", "up", cheeks="blush") + lun "" ("base", "narrow", "base", "stare", cheeks="blush") + pause .8 + + #Luna takes out finger + stop bg_sounds fadeout 2 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("top", "bra") + with d5 + + lun "" ("grin", "narrow", "base", "down", cheeks="blush") + pause 1 + lun "" ("grin", "narrow", "base", "mid", cheeks="blush") + call ctc + + gen "Now keep going, [luna_name]..." + lun "Yes [lun_genie_name]..." ("grin", "narrow", "base", "mid", cheeks="blush") + + #Luna rubs herself again + + lun "*Mmm*..." ("base", "closed", "base", "mid", cheeks="blush") + + gen "That's it... Keep rubbing that cute slit of yours..." + lun "*Ah*...{w=0.4} *Ah*...{w=0.4}*Ah*..." ("soft", "closed", "base", "down", cheeks="blush") + gen "Look at me [luna_name]." + lun "*Ah*...{w=0.4} *Ah*...{w=0.4} *Ah*..." ("soft", "narrow", "base", "mid", cheeks="blush") + gen "Show me your tongue..." + lun "*Ah*...{w=0.4} My...{w=0.4} My tongue?" ("angry", "base", "base", "mid", cheeks="blush") + lun "Is this part of our research?" ("angry", "base", "base", "R", cheeks="blush") + gen "Yes... Open your mouth as wide as you can please." + lun "But--" ("open", "base", "base", "mid", cheeks="blush") + gen "Say \"Aaaa\"..." + lun "*Aaaa*...{w=0.1}{nw}" ("open", "closed", "base", "mid", cheeks="blush") + lun "*Aaaa*...{fast}{w=0.1}{nw}" ("open_tongue", "closed", "base", "mid", cheeks="blush") + lun "*Aaaa*...{fast}" ("open_wide_tongue", "closed", "base", "mid", cheeks="blush") + gen "Good..." + gen "I want you to know how much I appreciate that you chose to come to me with this problem of yours [luna_name]..." + + #Luna stops + + lun "" ("soft", "narrow", "base", "mid", cheeks="blush") + call ctc + lun "[lun_genie_name] I--" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Keep going... Put a finger in again..." + lun "Yes [lun_genie_name]..." ("angry", "narrow", "base", "down", cheeks="blush") + + #Luna puts finger in again + $ renpy.sound.play("sounds/slick_02.ogg") + with kissiris + + lun "*Mmm*..." ("soft", "narrow", "base", "up", cheeks="blush") + gen "Good girl... Now get it moving... Get those spurts out..." + lun "" ("base", "narrow", "base", "up", cheeks="blush") + call ctc + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + #Luna fingering + + lun "*Ah*...{w=0.4} *Ah*...{w=0.4} *Ah*..." ("open", "closed", "base", "mid", cheeks="blush") + + $ luna.set_cum(pussy="wet") + with d3 + + lun "[lun_genie_name]... *Ah*...{w=0.3} I feel them building up again..." ("soft", "closed", "base", "mid", cheeks="blush") + gen "Good girl, then try going a bit faster..." + lun "Oh-- Okay..." ("soft", "closed", "base", "mid", cheeks="blush") + + play bg_sounds "sounds/slickloopfast.ogg" + + lun "*Ah*...{w=0.2}*Ah*...{w=0.2}*Ah*..." ("open", "narrow", "base", "up", cheeks="blush") + lun "I think...{w=0.3} *Ah*...{w=0.3} I'm about to...{w=0.3} *Ah*..." ("angry", "narrow", "base", "up", cheeks="blush") + gen "Oh, are you cumming already?" + lun "*Ah*... Yes, I'm--" ("angry", "narrow", "base", "stare", cheeks="blush") + lun "*Ah*...{w=0.3} I'm cumming [lun_genie_name]!!{heart}{heart}" ("grin", "happyCl", "base", "up", cheeks="blush") + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + + lun "*Ah*!{heart}" ("grin", "narrow", "base", "up", cheeks="blush") + + call nar(">You see a flush of red roll over Luna's face as her body twitches from the throes of her orgasm.") + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + + $ luna.set_cum(pussy="squirt_post") + lun "*Ah*...{heart}" ("open_tongue", "narrow", "base", "ahegao", cheeks="blush") + call nar(">Despite this, her fingers remain a flurry of movement until a final wave of pleasure washes over her.") + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + stop bg_sounds fadeout 2 + #Finger stops moving + + lun "*Mmm*...{heart}" ("base", "happyCl", "base", "mid", cheeks="blush") + + hide screen animatedCG + show screen blkfade + with d5 + + call nar(">Luna slowly pulls her finger out and shudders slightly...") + call nar(">She looks at her fingers, which glisten in the light, with a relieved expression on her face...") + + centered "{size=+7}{color=#cbcbcb}Some time later...{/color}{/size}" + + # End of masturbate section + + $ luna.set_pose(None) + $ luna.wear("all") + $ luna.set_cum(None) + hide screen blkfade + with d5 + + call weather_sound + + gen "It seems those Wickedspots have been giving you a fair bit of grief, haven't they?" ("base", xpos="far_left", ypos="head") + lun "*Ah*...{w=0.3} {heart}yes{heart}..." ("base", "narrow", "base", "down", cheeks="blush", xpos="mid", ypos="base", trans=dissolve) + gen "Don't worry, that should sort them out for now..." ("base", xpos="far_left", ypos="head") + gen "Feeling better?" ("base", xpos="far_left", ypos="head") + lun "Yes... I'm feeling much better now... Thank you [lun_genie_name]." ("base", "base", "base", "mid", cheeks="blush") + gen "I take it my words of encouragement were effective?" ("base", xpos="far_left", ypos="head") + lun "I...{w=0.4} Yes [lun_genie_name]..." ("soft", "narrow", "base", "R", cheeks="blush") + gen "Excellent." ("base", xpos="far_left", ypos="head") + lun "*Ehm*..." ("soft", "narrow", "base", "down", cheeks="blush") + lun "So the things you said..." ("open", "narrow", "base", "down", cheeks="blush") + lun "About me being pretty..." ("normal", "narrow", "base", "down", cheeks="blush") + gen "Yes?" ("base", xpos="far_left", ypos="head") + lun "Was that just to help me with..." ("soft", "narrow", "base", "downL", cheeks="blush") + lun "Actually... Forget I asked [lun_genie_name]..." ("angry", "narrow", "base", "downL", cheeks="blush") + lun "I... I'll just head back to my dorms now..." ("angry", "base", "base", "R", cheeks="blush") + gen "Of course, good job today--" ("base", xpos="far_left", ypos="head") + + call lun_walk(action="leave") + + gen "(What an odd girl...)" ("base", xpos="far_left", ypos="head") + + jump ll_pf_masturbate.end + +##Luna masturbates for Genie, naked and squirts## +label ll_pf_masturbate_T3_E3_intro: + gen "Alright then, time for you to--" ("base", xpos="far_left", ypos="head") + lun "Finally..." ("mad", "base", "base", "mid", trans=dissolve) + + call lun_walk("desk", "base") + pause .3 + + show screen blkfade + with d3 + + #Start of masturbate section + + call nar(">Luna quickly whips her clothes off and begins touching herself.") + + $ luna.set_face(mouth="grin", eyes="narrow", eyebrows="base", pupils="mid", cheeks="blush") + $ camera.set_imagepath("common/") + $ camera.set_image("CG luna") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=0.5, pos=(-270, -150), initialize=True) + + $ luna.set_pose("masturbate") + $ luna.set_cum(pussy="wet") + $ luna.strip("all") + + $ renpy.music.stop(channel="weather", fadeout=4) + + hide screen blkfade + show screen animatedCG + with fade + + # hand moving slow + + lun "*Ah*... {heart} Yes..." ("grin", "narrow", "base", "up", cheeks="blush") + gen "By the great desert sands! You're sopping wet!" + lun "I'm sorry [lun_genie_name]... I just...{w=0.3} Need this really bad...{heart}" ("mad", "happyCl", "base", "stare", cheeks="blush") + lun "These Wrackspurts...{w=0.4} *Ah*..." ("upset", "happyCl", "base", "mid", cheeks="blush") + lun "They've been very tiresome..." ("angry", "narrow", "base", "up", cheeks="blush") + + call nar(">Without being prompted, Luna pushes a finger inside her and starts fingering herself.") + + #Luna inserts finger + $ renpy.sound.play("sounds/slick_02.ogg") + with kissiris + + lun "*Ah*...{heart}" ("grin", "narrow", "base", "up", cheeks="blush") + + #Luna fingering + play bg_sounds "sounds/slickloop.ogg" fadein 2 + + lun "" ("grin", "closed", "base", "mid", cheeks="blush") + gen "You're becoming quite the expert at this..." + lun "*Ah*...{w=0.4} I'm just doing--{w=0.2} *Ah*...{w=0.4} What you've taught me [lun_genie_name]..." ("soft", "closed", "base", "mid", cheeks="blush") + gen "Don't be so modest [luna_name]... It takes a lot of willpower and determination to get to where you are." + lun "*Ah*... Really?" ("soft", "narrow", "base", "stare", cheeks="blush") + gen "Absolutely...{w=0.4} You're a natural!" + gen "I'd even go as far to say that you were born to do this." + lun "*Mmm*..." ("base", "narrow", "base", "stare", cheeks="blush") + + lun "Well I'm not so sure about that..." ("base", "closed", "base", "mid", cheeks="blush") + lun "Although I must say...{w=0.4} *Ah*...{w=0.4} I've been enjoying these sessions a fair bit, [lun_genie_name]..." ("open", "closed", "base", "mid", cheeks="blush") + lun "They are starting to become all I can think about..." ("base", "closed", "base", "mid", cheeks="blush") + gen "*Hmm*...{w=0.3} Do you think that's a bad thing?" + lun "*Ah*...{w=0.3} of course not!" ("grin", "closed", "base", "mid", cheeks="blush") + lun "It just...*Hngh*{w=0.3} means that it's working..." ("grin", "happyCl", "base", "mid", cheeks="blush") + lun "If only I could spend all day up here..." ("base", "narrow", "base", "up", cheeks="blush") + gen "Do you think a full day of treatment would get rid of them?" + lun "*Ah*..." ("soft", "narrow", "base", "up", cheeks="blush") + lun "I don't know..." ("open", "narrow", "base", "up", cheeks="blush") + lun "But..." ("upset", "narrow", "base", "up", cheeks="blush") + lun "I think It'd probably feel--{w=0.2} *Ah*..." ("soft", "narrow", "base", "up", cheeks="blush") + lun "Nice...{heart}{heart}{heart}" ("base", "narrow", "base", "stare", cheeks="blush") + call nar(">Luna moans softly under her breath.") + lun "{heart}{heart}{heart}" ("base", "closed", "base", "mid", cheeks="blush") + lun "You, watching me while I do this... For some reason--" ("grin", "narrow", "base", "mid", cheeks="blush") + gen "*Shhh*... Focus [luna_name]..." + lun "Yes [lun_genie_name]..." ("base", "narrow", "base", "down", cheeks="blush") + lun "*Ah*...{w=0.3} *Ah*...{w=0.3} *Ah*..." ("base", "closed", "base", "mid", cheeks="blush") + lun "I think..." ("grin", "closed", "base", "stare", cheeks="blush") + lun "*Ah*..." ("grin", "narrow", "base", "up", cheeks="blush") + lun "I think I've almost got them, [lun_genie_name]..." ("crooked_smile", "narrow", "base", "up", cheeks="blush") + gen "(Already? She's faster than I am!)" + lun "[lun_genie_name]... Please..." ("crooked_smile", "narrow", "base", "up", cheeks="blush") + + play bg_sounds "sounds/slickloopfast.ogg" + + lun "*Ah*...{w=0.3} Tell me...{w=0.3} Tell me I'm pretty." ("mad", "closed", "base", "stare", cheeks="blush") + gen "What?" + + label .choice: + + menu: + "-Tell her-": + gen "You're very pretty, [luna_name]." + lun "*Mmm*..." ("base", "narrow", "base", "up", cheeks="blush") + "-Don't-": + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + gen "You're going to need to learn how to do this without my help [luna_name]..." + lun "Please, [lun_genie_name]..." ("angry", "happyCl", "base", "mid", cheeks="blush") + + elif random_number == 2: + gen "Tell you..." + lun "Tell me I'm pretty, [lun_genie_name]..." ("grin", "narrow", "base", "up", cheeks="blush") + + elif random_number == 3: + lun "Hurry...{w=0.3} I'm...{w=0.3} I'm almost there..." ("grin", "happyCl", "base", "up", cheeks="blush") + + # Menu opens again until you've told her she's pretty + jump ll_pf_masturbate_T3_E3_intro.choice + + play bg_sounds "sounds/slickloopveryfast.ogg" + + lun "" ("grin", "closed", "base", "up", cheeks="blush") + call nar(">Luna revelling in your praise closes her eyes and begins furiously pumping her fingers in and out.") + lun "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*..." ("grin", "closed", "base", "mid", cheeks="blush") #Eyes closed + lun "{size=+4}*Mmm*...{w=0.4}{/size}{nw}" ("base", "closed", "base", "mid", cheeks="blush") + lun "{size=+4}*Mmm*...{fast} Yes...{heart}{/size}" ("crooked_smile", "closed", "base", "mid", cheeks="blush") + lun "*Ah*...{w=0.3}{nw}" ("crooked_smile", "closed", "base", "mid", cheeks="blush") + lun "*Ah*...{fast} [lun_genie_name], I think I'm..." ("crooked_smile", "narrow", "base", "stare", cheeks="blush") + call nar(">Luna's fingers moves in a flurry, as she continues pumping them into her needy slit.") + + lun "*Ah*...{w=0.2} *Ah*...{w=0.2} *Ah*...{heart}" ("crooked_smile", "narrow", "base", "up", cheeks="blush") + gen "Good girl...{w=0.3} Now--" + lun "*AAAAH!!!*" ("scream", "happyCl", "base", "up", cheeks="blush") + + $ renpy.sound.play("sounds/slick_01.ogg") + #Luna Squirts + lun "" ("scream", "wide", "base", "up", cheeks="blush") + $ luna.set_cum(pussy="squirt") + with kissiris + pause .8 + #Non luna squirt + $ luna.set_cum(pussy="squirt_post") + lun "" ("grin", "wide", "base", "up", cheeks="blush") + + gen "By the great--" + lun "{size=+4}*Nnngh*--{/size}" ("angry", "narrow", "base", "up", cheeks="blush") + + $ renpy.sound.play("sounds/slick_01.ogg") + stop bg_sounds fadeout 2 + #Luna Squirts + with kissiris + $ luna.set_cum(pussy="squirt") + lun "{size=+4}*Nnngh*--{fast} *AH*!!{heart}{/size}{w=0.3}{nw}" ("scream", "narrow", "base", "ahegao", cheeks="blush") + #Non luna squirt + $ luna.set_cum(pussy="squirt_post") + lun "{size=+4}*Nnngh*--{fast} *AH*!!{heart}{/size}{fast}" ("scream", "narrow", "base", "ahegao", cheeks="blush") + + lun "*Ah*..." ("base", "narrow", "base", "up", cheeks="blush") + lun "Thank you, [lun_genie_name]..." ("base", "closed", "base", "mid", cheeks="blush") + + hide screen animatedCG + show screen blkfade + with d5 + + call nar(">Luna takes her fingers out and looks up at you with a happy smile spread across her face...") + gen "Well done [luna_name]." + + centered "{size=+7}{color=#cbcbcb}Some time later...{/color}{/size}" + + # End of masturbate section + + $ luna.set_pose(None) + $ luna.wear("all") + $ luna.set_cum(None) + hide screen blkfade + with d5 + + call weather_sound + + gen "Now I didn't take you for a squirter, [luna_name]..." ("grin", xpos="far_left", ypos="head") + lun "..." ("soft", "base", "base", "down", cheeks="blush", xpos="mid", ypos="base", trans=dissolve) + gen "Is everything okay?" ("base", xpos="far_left", ypos="head") + lun "Look at all these wrackspurts!" ("mad", "base", "base", "down", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + lun "I didn't think I'd be able to release this many at once." ("smile", "narrow", "base", "down") + gen "Sure took me by surprise..." ("grin", xpos="far_left", ypos="head") + + lun "Am I a master baiter now?" ("crooked_smile", "base", "base", "mid") + gen "Why yes indeed, [luna_name]." ("grin", xpos="far_left", ypos="head") + gen "I hereby grant you the title of a {i}masturbater{/i}!" ("grin", xpos="far_left", ypos="head") + lun "Yay!" ("crooked_smile", "happyCl", "base", "mid") + + lun "Alright then, off I--" ("crooked_smile", "base", "base", "R") + lun "Hold on..." ("angry", "wide", "base", "mid") + lun "I just realised something, [lun_genie_name]!" ("disgust", "base", "base", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + lun "What you said earlier about you believing I was born to do this." ("grin", "base", "base", "mid") + gen "Do what?" ("base", xpos="far_left", ypos="head") + lun "Master bait." ("crooked_smile", "narrow", "base", "mid") + gen "Oh... What of it?" ("base", xpos="far_left", ypos="head") + lun "I wonder if...{w=0.4} It might be my destiny!" ("smile", "wide", "base", "mid") + gen "(What is she on about now...)" ("base", xpos="far_left", ypos="head") + gen "Why do you ask?" ("base", xpos="far_left", ypos="head") + lun "Professor Trelawney told me during our latest reading!" ("smile", "base", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + gen "(I suppose I'll humour her...)" ("base", xpos="far_left", ypos="head") + lun "She said that I'll soon find something new within me that will propel me forward on the path towards my destiny." ("grin", "base", "base", "mid") + gen "I see..." ("base", xpos="far_left", ypos="head") + lun "Don't you think she meant my fingers, [lun_genie_name]?" ("grin", "base", "base", "mid") + gen "*Err*..." ("base", xpos="far_left", ypos="head") + lun "Hold on that can't be it... My fingers aren't new... I've had them for as long as I can remember." ("angry", "narrow", "base", "downL") + lun "What do you think it is, [lun_genie_name]?" ("soft", "base", "base", "mid") + gen "(Something new within her... Why does future telling always have to be so vague...)" ("base", xpos="far_left", ypos="head") + gen "*Hmm*... Well I can't say that I..." ("base", xpos="far_left", ypos="head") + gen "(Hold on...)" ("grin", xpos="far_left", ypos="head") + lun "*Huh*? Did you have a revelation, [genie_name]?" ("grin", "base", "raised", "mid") + gen "You've just given me a great idea!" ("grin", xpos="far_left", ypos="head") + lun "Oooh! What is it? Is it a new method of dealing with the Wrackspurts?" ("crooked_smile", "base", "base", "mid") + gen "Why yes indeed, [luna_name]!" ("base", xpos="far_left", ypos="head") + lun "Marvellous!" ("smile", "happyCl", "base", "mid") + gen "Although it might be a hard one so I hope you're ready to take it on, [luna_name]." ("base", xpos="far_left", ypos="head") + lun "Of course, as long as you're there to guide me..." ("grin", "wink", "base", "mid") + gen "(I'll be guiding something alright...)" ("base", xpos="far_left", ypos="head") + lun "[lun_genie_name]?" ("soft", "narrow", "base", "mid") + gen "*Huh*?" ("base", xpos="far_left", ypos="head") + gen "*Ahem*... I'll let you know once I'm ready to begin our next set of tests." ("base", xpos="far_left", ypos="head") + lun "Great!" ("base", "base", "base", "mid") + lun "Until next time then, [lun_genie_name]..." ("grin", "base", "base", "mid") + + call lun_walk(action="leave") + + jump ll_pf_masturbate.end + + +label ll_pf_masturbate_T3_E4_repeat: + gen "Ready to avert the spurts?" ("base", xpos="far_left", ypos="head") + lun "Avert them, [lun_genie_name]?" ("soft", "base", "base", "mid", trans=dissolve) + gen "Ready to insert until you spurt and squirt?" ("base", xpos="far_left", ypos="head") + lun "Oh!{w=0.4} Yes, I am ready!" ("base", "base", "base", "mid") + gen "Great, then show me how it's done, master baiter!" ("base", xpos="far_left", ypos="head") + + #Luna chibi walks to desk + call lun_walk("desk", "base") + + $ luna.set_face(mouth="base", eyes="base", eyebrows="base", pupils="mid") + $ camera.set_imagepath("common/") + $ camera.set_image("CG luna") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=0.5, pos=(-270, -150), initialize=True) + + $ renpy.music.stop(channel="weather", fadeout=4) + + hide screen blkfade + show screen animatedCG + with fade + #start of masturbation section (in front of desk CG) + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("top", "bra") + with d3 + + gen "*Mmm*... Impressive..." + lun "[lun_genie_name]?" ("soft", "base", "raised", "mid") + gen "Your nipples, [luna_name]... Are they always this perked up?" + lun "Oh...{w=0.4} *Ehm*...{w=0.4} Kind of?" ("angry", "base", "base", "down") + gen "Very impressive indeed..." + gen "Why don't you give one a bit of a tweak and tell me how it feels?" + lun "Oh...{w=0.4} Okay..." ("base", "base", "base", "mid") + + #Luna hand on nipple. + $ luna.set_pose("masturbate") + $ luna.strip("top", "bra") + + lun "Like this?" ("soft", "base", "base", "mid") + gen "Yes, that's it... Now pinch it with your fingers--" + lun "Ouch!" ("mad", "base", "base", "stare") + gen "... carefully..." + gen "Patience, [luna_name]..." + lun "Sorry [lun_genie_name]..." ("disgust", "narrow", "base", "down") + gen "So, how does it feel now? Any different?" + lun "*Ehm*... It's a bit more hard than before..." ("soft", "narrow", "base", "down") + gen "That's good, now try it a bit more gently and tell me if anything changes..." + lun "Alright..." ("soft", "base", "base", "down") + call nar(">Luna pinches her nipple more carefully this time and an involuntary moan escapes her lips.") + lun "*Ah*..." ("open", "narrow", "base", "up") + gen "So?" + lun "It...{w=0.4} It's more sensitive than before." ("angry", "narrow", "base", "stare") + gen "Excellent." + call nar(">Luna pinches her nipple again, and tries to stifle another moan.") + lun "But--{w=0.2} *Ah*...{w=0.4} I must say it felt a lot better when you did it..." ("normal", "closed", "base", "stare") + gen "You still seem to be enjoying yourself." + lun "Yes... But--" ("annoyed", "closed", "base", "mid") + gen "Aren't we here so that you can find ways to deal with this issue without me, [luna_name]?" + lun "We are?" ("disgust", "narrow", "base", "stare") + gen "As a temporary measure that is... We'll still need to work together to find a way of ridding ourselves of them for good." + lun "Oh... That's what you meant..." ("base", "closed", "base", "down") + lun "I do feel a little bit guilty doing this though..." ("soft", "narrow", "base", "mid") + gen "Guilty, in what way?" + lun "Me doing this on my own in front of you feels a bit selfish now that I know how to do it..." ("open", "narrow", "base", "down") + gen "Oh, I wouldn't worry about that, [luna_name]..." + gen "I'm thoroughly enjoying watching you touch yourself..." + lun "You--{w=0.2} You are, [lun_genie_name]?" ("angry", "narrow", "base", "mid") + gen "Of course!" + gen "Didn't you enjoy watching me?" + lun "Oh...{w=0.4} I suppose I did." ("base", "narrow", "base", "down") + gen "Now undress for me so I can watch you relieve yourself properly..." + lun "Yes, [lun_genie_name]..." ("base", "base", "base", "mid") + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("all") + with d3 + + lun "" ("base", "closed", "base", "mid", cheeks="blush") + call nar(">Luna slides the rest of her clothes off and begins rubbing herself.") + + #Hand on pussy + + gen "That's better, don't you think?" + lun "Much better...{w=0.4} Although they've been building up quite a bit since I started." ("soft", "narrow", "base", "down") + gen "That's a good thing... Now just keep going as you've done before..." + lun "Yes [lun_genie_name]..." ("base", "narrow", "base", "mid") + + call nar(">Luna moves her finger across her slit and then gently begins pushing it inside.") + + $ renpy.sound.play("sounds/slick_02.ogg") + with kissiris + lun "*Ah*..." ("base", "narrow", "base", "up", cheeks="blush") + + #Luna fingering + play bg_sounds "sounds/slickloop.ogg" fadein 2 + + lun "*Mmm*..." ("base", "closed", "base", "mid", cheeks="blush") + gen "Good..." + gen "You sure seem to have found a way to keep yourself focused on the task, [luna_name]..." + lun "*Mmm*... Yes, [lun_genie_name]..." ("open", "closed", "base", "mid", cheeks="blush") + gen "You should feel very proud of your accomplishments." + lun "*Ah*...{w=0.4} Yes...{w=0.4} I feel it inside of me [lun_genie_name]..." ("soft", "closed", "base", "mid", cheeks="blush") + + play bg_sounds "sounds/slickloopfast.ogg" + lun "" ("soft", "narrow", "base", "mid", cheeks="blush") + call nar(">Luna begins moving her fingers faster inside her as she stares at you intently.") + + + gen "I was very impressed with how quickly you got there last time..." + gen "You've got to tell me your tricks, did you think of something in particular?" + $ luna.set_cum(pussy="wet") + lun "*Ah*...{w=0.4} *Ah*...{w=0.4} [lun_genie_name]..." ("base", "narrow", "base", "stare", cheeks="blush") + gen "My apologies, I'll let you get on with it..." + + call nar(">You watch in silence as Luna fingers herself... Her heavy breathing, now being the only thing filling your chambers.") + lun "*Ah*...{w=0.4} *Ah*...{w=0.4} *Ah*...{w=0.4}" ("grin", "narrow", "base", "up", cheeks="blush") + gen "(Look at those fingers go... Now that's a girl with purpose.)" + + play bg_sounds "sounds/slickloopveryfast.ogg" + lun "" ("grin", "narrow", "base", "mid", cheeks="blush") + call nar(">Looking at you once again, Luna starts moving her fingers even faster...") + + lun "*Ah*...{w=0.2} *Ah*...{w=0.2} [lun_genie_name]..." ("grin", "narrow", "base", "mid", cheeks="blush") + gen "Yes, [luna_name]?" + + lun "*Aaaah*!!!" ("crooked_smile", "narrow", "base", "up", cheeks="blush") + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + #Luna Squirts + + $ luna.set_cum(pussy="squirt") + pause .6 + #Non luna squirt + $ luna.set_cum(pussy="squirt_post") + + $ renpy.sound.play("sounds/slick_01.ogg") + with kissiris + #Luna Squirts + $ luna.set_cum(pussy="squirt") + pause .6 + #Non luna squirt + $ luna.set_cum(pussy="squirt_post") + + lun "*[lun_genie_name]*!!{heart}" ("scream", "narrow", "base", "up", cheeks="blush") + + $ renpy.sound.play("sounds/slick_01.ogg") + stop bg_sounds fadeout 2 + with kissiris + #Luna Squirts + $ luna.set_cum(pussy="squirt") + pause .6 + #Non luna squirt + $ luna.set_cum(pussy="squirt_post") + lun "" ("crooked_smile", "narrow", "base", "stare", cheeks="blush") + + lun "*Ah*...{heart}" ("grin", "narrow", "base", "up", cheeks="blush") + + $ camera.set_image("CG luna") + $ camera.set(zoom=0.5, pos=(-270, -150), t=1.5) + $ luna.set_pose(None) + $ luna.strip("all") + #Luna normal doll pose + + lun "*Mmm*..." ("base", "closed", "base", "mid", cheeks="blush") + lun "Did I do good, [lun_genie_name]?" ("soft", "narrow", "base", "up", cheeks="blush") + gen "Very good, [luna_name]..." + lun "*Ah*...{w=0.4} I'm glad..." ("base", "narrow", "base", "up", cheeks="blush") + lun "..." ("base", "narrow", "base", "down", cheeks="blush") #More focused + lun "Oh, no! Look at what has happened to your floor!" ("mad", "narrow", "base", "down", cheeks="blush") + gen "I'm sure it's fine, it has seen worse I'm--" + + $ camera.set_image("CG lun_intro luna bendover naked") + $ camera.set(zoom=1.0, pos=(-1040, -600), t=10.0) + #Luna naked bent over pose + + lun "Now where did I put my spectrespecs..." ("base", "base", "base", "mid") + call nar(">Luna bends down and begins checking around the floor for her glasses.") + + gen "Very fine indeed..." + lun "Do you remember if I brought them or not, [lun_genie_name]?" ("base", "base", "base", "mid") + lun "[lun_genie_name]?" ("angry", "narrow", "base", "mid") + gen "*Huh*?" + lun "My glasses... I can't see them without my glasses." ("base", "base", "base", "mid") + gen "Jinkies..." + lun "Blidgering humdinger...{w=0.4} I was hoping to see if they looked any different up close compared to yours..." ("base", "base", "base", "mid") + gen "Don't worry about them [luna_name], I'm sure you can get a closer look some other time..." + lun "Alright..." ("base", "base", "base", "mid") + + hide screen animatedCG + show screen blkfade + with d5 + + call nar(">Luna turns around to face you and gives you a smile, seemingly still pleased with herself even though she couldn't get a proper look through her glasses...") + + # End of masturbate section + + $ luna.set_pose(None) + $ luna.strip("all") + hide screen blkfade + with d5 + + call weather_sound + + #Luna normal pose + #End of masturbate section (office screen) + #Luna is still naked + + gen "So... How are you feeling?" ("base", xpos="far_left", ypos="head") + lun "As if my mind have been cleared of a thick fog." ("base", "closed", "base", "mid", xpos="mid", ypos="base", trans=dissolve) + gen "Ah yes... The post nut clarity..." ("base", xpos="far_left", ypos="head") + lun "The what? sorry?" ("soft", "base", "base", "mid") + gen "The perfect time to make the big life decisions..." ("base", xpos="far_left", ypos="head") + lun "I'm not sure I understand what you mean, [lun_genie_name]." ("upset", "base", "base", "mid") + gen "It only gets more difficult at this point now that you've mastered the art of masturbation [luna_name]." ("base", xpos="far_left", ypos="head") + lun "Mastered master baiting?" ("annoyed", "base", "raised", "mid") #confused + gen "If we want to get rid of those spurts for good then we need to keep trying new methods." ("base", xpos="far_left", ypos="head") + lun "Oh! Well I'm willing to do anything that it takes to save the school [lun_genie_name]!" ("grin", "narrow", "base", "mid") + gen "That's what I like to hear." ("base", xpos="far_left", ypos="head") + gen "Then that shall be all for today." ("base", xpos="far_left", ypos="head") + lun "Okay, thank you [lun_genie_name]." ("base", "base", "base", "mid") + + hide luna_main + with d3 + + #Luna turns to door + call lun_chibi(flip=True) + pause .5 + + gen "[luna_name]." ("base", xpos="far_left", ypos="head") + gen "Has the post nut clarity already worn off?" ("base", xpos="far_left", ypos="head") + + call lun_chibi(flip=False) + pause .5 + + lun "[lun_genie_name]?" ("soft", "base", "raised", "mid", trans=dissolve) + gen "Your clothes..." ("base", xpos="far_left", ypos="head") + lun "Oh!" ("mad", "narrow", "base", "down") #blush + + $ luna.wear("all") + call play_sound("equip") + $ luna.set_cum(None) + with d3 + pause .5 + + lun "There we go." ("grin", "narrow", "base", "mid") + lun "I'm so used to walking around naked at home so I didn't even realise..." ("grin", "happyCl", "base", "mid") + gen "You walk around naked at home?" ("base", xpos="far_left", ypos="head") + lun "Yes?" ("base", "base", "raised", "mid") + gen "(No wonder she didn't look phased by taking her clothes off...)" ("base", xpos="far_left", ypos="head") + gen "How very progressive..." ("base", xpos="far_left", ypos="head") + lun "It means there's less places for the Nargles to hide in you see." ("grin", "base", "base", "mid") + gen "I see..." ("grin", xpos="far_left", ypos="head") + gen "(Just smile and nod...)" ("grin", xpos="far_left", ypos="head") + gen "Well then... I'll let you know when our next session will be [luna_name]." ("base", xpos="far_left", ypos="head") + lun "Of course... Thank you [lun_genie_name]." ("base", "base", "base", "mid") + if game.daytime: + gen "Now, you best head back to class." ("base", xpos="far_left", ypos="head") + else: + gen "Now, you best head back to your dorm." ("base", xpos="far_left", ypos="head") + lun "Yes [lun_genie_name]." ("grin", "base", "base", "mid") + lun "Until next time..." ("base", "base", "base", "mid") + + call lun_walk(action="leave") + + if lun_whoring < 24: + $ lun_whoring = 24 + call end_of_content + + jump ll_pf_masturbate.end diff --git a/game/scripts/characters/luna/events/favors/talk_to_me.rpy b/game/scripts/characters/luna/events/favors/talk_to_me.rpy new file mode 100644 index 00000000..59ca1e12 --- /dev/null +++ b/game/scripts/characters/luna/events/favors/talk_to_me.rpy @@ -0,0 +1,900 @@ + + +### Luna Talks ### + +label ll_pf_talk: + + gen "{size=-4}(All I'll do is have a little chat with her...){/size}" ("base", xpos="far_left", ypos="head") + + if ll_pf_talk.counter < 1: + menu: + "\"(Yes, let's do it!)\"": + pass + "\"(Not right now.)\"": + jump luna_favor_menu + + # Start Event + $ ll_pf_talk.start() + + # End Event + label .end: + + # Setup + stop music fadeout 2.0 + call hide_characters + + call gen_chibi("sit_behind_desk") + + # Increase level + if lun_tier == 1: + if lun_whoring < 3: + $ lun_whoring += 1 + + elif lun_tier == 2: + if lun_whoring < 6: + $ lun_whoring += 1 + + elif lun_tier == 3: + if lun_whoring < 9: + $ lun_whoring += 1 + + jump end_luna_event + +### Tier 1 ### + +label ll_pf_talk_T1_E1_intro: + + $ genie_masturbating = False + + gen "So... About the infestation..." ("base", xpos="far_left", ypos="head") + lun "*Sniff* *Sniff*" ("soft", "narrow", "base", "L") + gen "[luna_name]?" ("base", xpos="far_left", ypos="head") + lun "*Sniff* *Sniff*" ("soft", "base", "raised", "down") + gen "Are you alright?" ("base", xpos="far_left", ypos="head") + lun "This is such a peculiar smell..." ("open", "base", "base", "mid") + gen "(What's she talking about? What smell?)" ("base", xpos="far_left", ypos="head") + + menu: + "\"The spratters?\"": + lun "Wrackspurts, [lun_genie_name]." ("base", "base", "base", "mid") + lun "I've never smelled them this strongly." ("base", "base", "base", "mid") + lun "Can you not smell them, [lun_genie_name]?" ("base", "base", "base", "mid") + gen "I guess I just got used to the smell..." ("base", xpos="far_left", ypos="head") + lun "*Hmm*..." ("base", "base", "base", "mid") + + "-Sniff your armpits-": + $ renpy.sound.play("sounds/sniff.ogg") + pause .4 + gen "(Good grief, when was the last time I took a shower...)" ("angry", xpos="far_left", ypos="head") + gen "(It's high time I search for a bath in this place...{w} Although...)" ("base", xpos="far_left", ypos="head") + gen "(I did have countless women of Agrabah confess to me that they liked my manly odour.)" ("grin", xpos="far_left", ypos="head") + gen "Do you like this smell, [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "Oh, I find the smell quite interesting, [lun_genie_name]." ("base", "base", "base", "mid") + gen "(That's good enough for me...)" ("base", xpos="far_left", ypos="head") + + gen "So, is there anything more you can tell me about these spurts?" ("base", xpos="far_left", ypos="head") + gen "I'll need some more information before we get started." ("base", xpos="far_left", ypos="head") + lun "Of course, [lun_genie_name]... What would you like to know?" ("grin", "base", "raised", "mid") + gen "Tell me...{w=0.4} Who else knows about it?" ("base", xpos="far_left", ypos="head") + lun "*Hmm*...{w=0.4} Well, there's you and me..." ("soft", "base", "base", "downL") + gen "Apart from us..." ("base", xpos="far_left", ypos="head") + lun "Oh...{w=0.4} Well I did try warning some Slytherin boys about them..." ("open", "narrow", "base", "stare") + lun "But they just laughed and told me that they'll make sure to stay away from any mistletoe..." ("upset", "closed", "base", "mid") + gen "Mistletoe?" ("base", xpos="far_left", ypos="head") + lun "Yes! Can you believe it?" ("open", "narrow", "annoyed", "mid") + lun "Wrackspurts don't care about mistletoe...{w=0.4} Nargles on the other hand!" ("open", "closed", "annoyed", "mid") + gen "What's a--" ("base", xpos="far_left", ypos="head") + gen "Actually... One problem at a time..." ("base", xpos="far_left", ypos="head") + gen "Did you tell anybody else? Seen any further signs of the infestation spreading?" ("base", xpos="far_left", ypos="head") + lun "Oh!" ("soft", "wide", "base", "mid") + lun "There was this one girl who was clearly getting bothered by them!" ("angry", "base", "base", "stare") + lun "I was in the bathroom when I heard her!" ("soft", "base", "base", "mid") + gen "(In the bathroom, huh.)" ("grin", xpos="far_left", ypos="head") + lun "There were some weird noises coming from one of the stalls so I called out to her, asking if she was okay." ("angry", "base", "base", "mid") + gen "Weird noises you say?" ("grin", xpos="far_left", ypos="head") + + menu: + "-Whip it out-": + $ genie_masturbating = True + $ lun_jerk_off_counter += 1 + + hide luna_main + call nar(">You reach under the desk and grab your cock...") + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + "-Pay attention-": + pass + + lun "Indeed." ("angry", "base", "base", "mid") + lun "So of course I had to do my best to reassure her that what she was experiencing was nothing to be afraid of..." ("grin", "closed", "base", "mid") + lun "I told her about my own experiences...." ("open", "base", "base", "down") + lun "But they must've really gotten to her, [lun_genie_name]... She barely paid me any attention..." ("angry", "closed", "base", "mid") + + if genie_masturbating: + gen "You have my full attention, girl... Tell me more!" ("angry", xpos="far_left", ypos="head") + else: + gen "(Sounds like the opposite to me...)" ("base", xpos="far_left", ypos="head") + + lun "I fear the whole school might get overrun, [lun_genie_name]..." ("angry", "narrow", "base", "mid") + lun "The way people are acting..." ("open", "base", "base", "downL", cheeks="blush") + gen "You're seeing similar symptoms as your own?" ("base", xpos="far_left", ypos="head") + lun "Not just that!" ("angry", "base", "base", "mid") + lun "It's Their auras, [lun_genie_name]!" ("clench", "base", "base", "stare") + + if genie_masturbating: + gen "*Ugh*... What? Auras?" ("angry", xpos="far_left", ypos="head") + gen "(Please don't make this weird, girl...)" ("angry", xpos="far_left", ypos="head") + else: + gen "Auras?" ("base", xpos="far_left", ypos="head") + + lun "They're far too red!" ("angry", "wide", "base", "mid") + lun "According to my father's bestiaries, they should only ever produce a grey tinge to an aura..." ("mad", "base", "raised", "mid") + + if genie_masturbating: + gen "Yes, yes... But what about the girl that made those weird noises? Tell me about her!" ("angry", xpos="far_left", ypos="head") + lun "Well, I never saw her, Professor." ("angry", "closed", "base", "mid") + lun "I just observed her aura. It was so fascinating!" ("soft", "closed", "base", "mid") + lun "But... What ever they're doing to be making auras red..." ("normal", "narrow", "base", "downL") + gen "(Come on, say something naughty already!)" ("angry", xpos="far_left", ypos="head") + else: + gen "(*Tsk*... Auras...)" ("base", xpos="far_left", ypos="head") + + lun "[lun_genie_name], we need to warn people... Before it's too late!" ("angry", "base", "base", "mid") + + if genie_masturbating: + gen "(...)" ("base", xpos="far_left", ypos="head") + lun "[lun_genie_name]?" ("upset", "base", "raised", "mid") + gen "(This isn't working...)" ("base", xpos="far_left", ypos="head") + + pause .8 + call gen_chibi("sit_behind_desk") + + gen "Why don't we focus on a cure rather than try to convince people of the existence of something they can't even see." ("base", xpos="far_left", ypos="head") + lun "But [lun_genie_name]..." ("angry", "narrow", "base", "mid") + gen "Once we have a way to properly deal with them then I'm sure we could administer the cure without causing a fuss." ("base", xpos="far_left", ypos="head") + lun "You believe there's a cure for something like this, [lun_genie_name]?" ("soft", "base", "base", "mid") + gen "I have a theory... If it works then it should let us expel those spurty buggers." ("base", xpos="far_left", ypos="head") + lun "You've found a way to expel them on command?" ("clench", "base", "base", "mid") + gen "Well I wouldn't say on command... Now that is beyond even my own capabilities..." ("base", xpos="far_left", ypos="head") + gen "I need to conduct some more tests and once that's' done then I'll put it into practice." ("base", xpos="far_left", ypos="head") + lun "Oh! I can't wait!" ("crooked_smile", "happyCl", "base", "mid") + + if game.daytime: + gen "So for now you better head back to class." ("base", xpos="far_left", ypos="head") + lun "Of course... Good luck [lun_genie_name]." ("grin", "base", "base", "mid") + else: + gen "So for now it'd be best for you to head off to bed." ("base", xpos="far_left", ypos="head") + lun "Of course... Goodnight [lun_genie_name]." ("grin", "base", "base", "mid") + + pause .8 + call lun_walk(action="leave") + + gen "Sure is a loony one..." ("base", xpos="far_left", ypos="head") + gen "Good thing she's hot." ("base", xpos="far_left", ypos="head") + + jump ll_pf_talk.end + +label ll_pf_talk_T1_E2_intro: + + gen "Let's continue with your training." ("base", xpos="far_left", ypos="head") + lun "My training, [lun_genie_name]?" ("soft", "base", "raised", "mid") + gen "*Err*... To become the best and first ever spurt hunter!" ("angry", xpos="far_left", ypos="head") + lun "Oh!" ("grin", "base", "base", "mid") + lun "Okay!" ("grin", "happyCl", "base", "mid") + gen "Today we're going to put that theory of mine into practice." ("base", xpos="far_left", ypos="head") + lun "Finally!" ("smile", "base", "base", "mid") + gen "Now, I need to warn you... This could be quite dangerous." ("base", xpos="far_left", ypos="head") + lun "Dangerous, [lun_genie_name]?" ("soft", "base", "base", "mid") + gen "Yes..." ("base", xpos="far_left", ypos="head") + gen "Very dangerous!" ("base", xpos="far_left", ypos="head") + + lun "" ("soft", "wide", "base", "mid") #Wide eyed + pause .8 + + gen "If you don't do it correctly you could end up with some severe burns..." ("base", xpos="far_left", ypos="head") + gen "(Or mild chafing at the very least.)" ("base", xpos="far_left", ypos="head") + m "Which is why we're going to start by conducting some of the initial testing on myself." + lun "But [lun_genie_name]!" ("angry", "wide", "base", "mid") + lun "You didn't tell me this was going to be dangerous... If I knew you could potentially hurt yourself then I would've never asked you to--" ("angry", "base", "worried", "mid") + gen "Don't worry... I'm sure It'll be worth it for the cause..." ("base", xpos="far_left", ypos="head") + lun "But [lun_genie_name], why not let me do it--" ("angry", "narrow", "base", "mid") + gen "Nonsense!" ("base", xpos="far_left", ypos="head") + gen "I've lived a very long life, you've got it all ahead of you..." ("base", xpos="far_left", ypos="head") + lun "[lun_genie_name]... Surely--" ("mad", "closed", "base", "mid") + gen "Don't you worry, I've been practising these movements for a very long time. I'm certain I'll be able to pull one off no problem..." ("base", xpos="far_left", ypos="head") + lun "Okay..." ("upset", "narrow", "base", "mid") + lun "I assume you won't be needing any of my help..." ("open", "narrow", "base", "down") #Looking down + gen "On the contrary...{w=0.4} Your aid is integral for this to work, [luna_name]." ("base", xpos="far_left", ypos="head") + lun "" ("soft", "base", "base", "mid") #Looks up again, surprised that he wants her help + gen "Now... You just stand there for a bit." ("base", xpos="far_left", ypos="head") + lun "Oh... Of course [lun_genie_name]!" ("soft", "narrow", "base", "stare") + + $ genie_masturbating = True + $ lun_jerk_off_counter += 1 + hide luna_main + + call nar(">You pull out your cock and start stroking it.") + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + gen "There we go..." ("base", xpos="far_left", ypos="head") + lun "" ("grin", "base", "base", "mid") #Excited look + call ctc + lun "" ("base", "base", "raised", "mid") #quizzical look + call ctc + lun "Is it working?" ("open", "base", "raised", "mid") + gen "Give me a moment..." ("base", xpos="far_left", ypos="head") + + call nar(">You move your gaze to the girls chest, rubbing your hardening cock with increasing pace.") + + lun "What is it that you're doing?" ("soft", "base", "raised", "mid") + + call nar(">A quizzical expression spreads across Luna's face as she unbeknownst to her, watch her headmaster masturbate in front of her.") + + lun "Are you casting a spell? I can see your arms moving." ("open", "base", "base", "mid") + gen "*Ah*...{w=0.3} Yes...{w=0.3} I'm waving my wand all right..." ("base", xpos="far_left", ypos="head") + lun "I knew it!" ("grin", "closed", "base", "mid") + + call nar (">As you continue stroking your cock you watch as Luna's moment of excitement turn into confusion once more.") + + lun "Is it supposed to take this long?" ("soft", "narrow", "base", "mid") + gen "*Ah*...{w=0.3} Yes...{w=0.3} Sometimes..." ("base", xpos="far_left", ypos="head") + lun "Sometimes?" ("soft", "base", "raised", "mid") + lun "Isn't this the first time you're trying this?" ("angry", "narrow", "base", "mid") + gen "Well...{w=0.3} *Ah*...{w=0.3} I just need to focus..." ("base", xpos="far_left", ypos="head") + lun "Oooh... So like the Patronus Charm?" ("soft", "wide", "base", "mid") + gen "*Ah*...{w=0.4} The what?" ("base", xpos="far_left", ypos="head") + lun "The Patronus... You focus on a Happy memory and if you succeed, a corporeal shape of your spirit animal bursts out from your wand!" ("grin", "base", "base", "mid") + gen "*Ah*...{w=0.3} Yes, that's it...{w=0.3} Ten points to Ravenclaw!" ("base", xpos="far_left", ypos="head") + $ ravenclaw += 10 + lun "Thank you, [lun_genie_name]!" ("base", "happyCl", "base", "mid") + gen "Now, be quiet and stand there for a bit will you?" ("base", xpos="far_left", ypos="head") + lun "Yes [lun_genie_name]." ("base", "base", "base", "mid") + + call nar(">With great difficulty you work your now softened shaft, staring at the girls heaving chest.") + + lun "" ("base", "base", "base", "downR") #looking away + call ctc + lun "" ("base", "base", "base", "mid") #Looks back + call ctc + lun "[lun_genie_name]?" ("open", "base", "raised", "mid") + + call nar (">You stop rubbing your cock and look up at Luna's face.") + + call gen_chibi("sit_behind_desk") + + lun "What's your patronus?" ("open", "base", "base", "mid") + gen "W-- What?" ("angry", xpos="far_left", ypos="head") + lun "What's your spirit animal, [lun_genie_name]?" ("soft", "base", "base", "mid") + lun "Surely you must've cast a patronus spell before..." ("grin", "base", "base", "mid") + gen "*Err*..." ("base", xpos="far_left", ypos="head") + + menu: + "\"A Rhinoceros...\"": + lun "Really? Why a Rhino of all things?" ("soft", "base", "raised", "mid") + gen "They're kinda Horny aren't they?" ("base", xpos="far_left", ypos="head") + gen "Get it?" ("grin", xpos="far_left", ypos="head") + lun "*Huh*?" ("upset", "base", "base", "mid") + + "\"A Sperm Whale...\"": + lun "Wow, so it must be huge!" ("open", "wide", "base", "mid") + gen "You bet!" ("grin", xpos="far_left", ypos="head") + lun "That makes so much sense from a wizard of your calibre." ("grin", "base", "base", "mid") + + "\"A Sea Cucumber...\"": + lun "A what?" ("soft", "base", "raised", "mid") + gen "A Sea cucumber!" ("base", xpos="far_left", ypos="head") + lun "I heard you... But why a Sea Cucumber?" ("open", "base", "raised", "mid") + gen "Something about the shape I reckon." ("base", xpos="far_left", ypos="head") + + "\"A Blob-fish...\"": + lun "A what?" ("soft", "base", "raised", "mid") + gen "A Blob-fish!" ("base", xpos="far_left", ypos="head") + lun "Why a Blob-fish?" ("mad", "base", "base", "mid") + gen "They look pretty funny don't they?" ("base", xpos="far_left", ypos="head") + lun "How is their appearance enough to manifest as your patronus?" ("open", "narrow", "base", "mid") + + # Patronuses seems to be the correct plural form of Patronus, not Patroni. + lun "Patronuses are supposed to represent a hidden inner self that gets awakened in the time of need... Only a wizard who is obsessed about a particular animal would have it as their Patronus..." ("open", "closed", "base", "mid") + gen "(What on earth is all this drivel?)" ("base", xpos="far_left", ypos="head") + lun "Or are you pulling my leg, [lun_genie_name]?" ("clench", "narrow", "base", "mid") + gen "Pulling-- Hey... You distracted me again!" ("base", xpos="far_left", ypos="head") + lun "Oh... Sorry [lun_genie_name]!" ("soft", "wide", "base", "mid") + lun "The other teachers do keep reminding me not to let my mind wander so much..." ("annoyed", "narrow", "base", "downR") + gen "*Sigh*..." ("base", xpos="far_left", ypos="head") + gen "It's not your fault..." ("base", xpos="far_left", ypos="head") + lun "It's not?" ("mad", "narrow", "base", "mid") + gen "No... We'll just have to try something different next time to keep you engaged..." ("base", xpos="far_left", ypos="head") + lun "Oh... Okay!" ("angry", "base", "base", "mid") #Happy + lun "..." ("base", "base", "base", "down") #Pondering #Blush + gen "What's with that face?" ("base", xpos="far_left", ypos="head") + lun "Oh... It's nothing... I was just thinking..." ("base", "happyCl", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Very well [luna_name]... All things considered I think we've at least done some progress today." ("base", xpos="far_left", ypos="head") + gen "Well done." ("base", xpos="far_left", ypos="head") + lun "We have?" ("soft", "base", "base", "mid", cheeks="blush") + lun "I mean...{w=0.3} Thank you [lun_genie_name]...{w=0.3} I didn't really do much..." ("open", "base", "base", "R", cheeks="blush") #blush #Looks away + gen "(Is she blushing?)" ("base", xpos="far_left", ypos="head") + gen "*Ahem*..." ("base", xpos="far_left", ypos="head") + + lun "" ("normal", "narrow", "base", "mid", cheeks="blush") #Looks back + pause .8 + + gen "I'm sure with your help we'll find a way to get those spurts." ("base", xpos="far_left", ypos="head") + lun "Okay, thank you..." ("open", "base", "base", "down", cheeks="blush") + + if game.daytime: + lun "I'll head back to class then, [lun_genie_name]." ("open", "base", "base", "R", cheeks="blush") + else: + lun "I'll head back to my dorm then, [lun_genie_name]." ("open", "base", "base", "R", cheeks="blush") + + gen "Yes, I'll let you know when I require further...{w=0.3} Assistance." ("base", xpos="far_left", ypos="head") + lun "Okay!" ("base", "base", "base", "mid", cheeks="blush") + lun "*Ehm*... Bye then..." ("soft", "base", "base", "mid", cheeks="blush") + gen "Bye [luna_name]..." ("base", xpos="far_left", ypos="head") + + call lun_walk(action="leave") + + jump ll_pf_talk.end + +label ll_pf_talk_T1_E3_intro: + + gen "Right then... Let's have another crack at this shall we." ("base", xpos="far_left", ypos="head") + lun "We're going to try and expel the wrackspurts again, [lun_genie_name]?" ("soft", "base", "base", "mid") + gen "That's right [luna_name]." ("base", xpos="far_left", ypos="head") + lun "Can I see how you do it this time?" ("grin", "base", "raised", "mid") + gen "*Err*... I'm not sure that's such a good idea..." ("base", xpos="far_left", ypos="head") + lun "*Aw*... Why not?" ("annoyed", "base", "annoyed", "mid") + gen "Well... Let's find out if it works first..." ("base", xpos="far_left", ypos="head") + lun "Okay!" ("base", "base", "base", "mid") + gen "I need to focus so just follow my instructions..." ("base", xpos="far_left", ypos="head") + lun "Of course, [lun_genie_name]!" ("grin", "base", "base", "mid") + gen "Excellent... Just need to take out my wand and then we can begin..." ("base", xpos="far_left", ypos="head") + gen "(Let's see if we can produce some real magic this time...)" ("base", xpos="far_left", ypos="head") + + $ genie_masturbating = True + $ lun_jerk_off_counter += 1 + hide luna_main + call nar(">You take your cock out and begin stroking it...") + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + gen "Now... Tell me a bit more about your experiences with the spratters..." ("base", xpos="far_left", ypos="head") + lun "How's that supposed to--" ("soft", "base", "base", "mid") + gen "Are you questioning my methods [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "Oh! Of course not!" ("mad", "narrow", "base", "mid") + gen "Then answer my question..." ("base", xpos="far_left", ypos="head") + lun "Right...{w=0.4} *Ehm*...{w=0.4} As I said before they bother me at the most inopportune moments..." ("open", "narrow", "base", "R") + + call nar(">As the girl starts talking you continue stroking your now hardening cock, taking in every word of her sexual experiences.") + + lun "And there was that time down at the lake... Now I'd never think they'd be down there, I thought they hated water..." ("soft", "wide", "base", "mid") + + call nar(">As she goes on talking about wrackspurts and how they make her feel you notice that Luna has started grinding her legs together again.") + + lun "*Ah*...{w=0.4} And the worst times are when I'm about to go to sleep...{w=0.4} It must be something with my pyjamas..." ("soft", "narrow", "base", "down", cheeks="blush") + lun "[lun_genie_name]...{w=0.4} They're...{w=0.4} They're bothering me again..." ("base", "base", "base", "mid") + gen "Just keep talking [luna_name], they're sensing the magic..." ("base", xpos="far_left", ypos="head") + lun "Oh... So it's working, [lun_genie_name]?" ("soft", "base", "base", "mid", cheeks="blush") + gen "Yes, just keep talking..." ("base", xpos="far_left", ypos="head") + lun "But [lun_genie_name]..." ("open", "narrow", "base", "mid", cheeks="blush") + + call nar(">You keep stroking your cock as Luna stares at you, shifting her legs uncomfortably...") + + lun "[lun_genie_name], it feels weird... Please..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "How weird does it feel [luna_name]? Describe it to me..." ("base", xpos="far_left", ypos="head") + + call nar(">Luna grinds her legs together even more as she tries to maintain eye contact with you, she then stutter for a moment as a wave of lust washes over her.") + + lun "I... I don't know how to describe it..." ("normal", "narrow", "base", "down", cheeks="blush") + + show screen blkfade + with d5 + call nar(">You close your eyes, listening to the girl... Your cock pulsating in your grasp as you feel yourself getting close to bursting.") + + lun "It's... *Ah*... It's like a tingly sensation spreading from between my legs... Almost as If I'm about to wet myself..." ("base", "base", "base", "mid") + lun "But it's... It's different... It feels really good..." ("base", "base", "base", "mid") + call nar(">An image of the girls wet panties runs across your mind and you feel your cock twitch slightly in your hand.") + lun "[lun_genie_name]... I don't know how long I can endure this... Please tell me it's working..." ("base", "base", "base", "mid") + call nar(">You rub your cock even faster, the sound of Luna's voice fading out of your mind...") + lun "I can't bear it, [lun_genie_name]!" ("base", "base", "base", "mid") + lun "I need--" ("mad", "wide", "base", "L", xpos="mid", ypos="base", flip=True, trans=dissolve) + + call gen_chibi("cum_behind_desk_done") + call lun_chibi("stand", 230, 455, flip=True) + $ renpy.sound.play("sounds/gasp.ogg") + + + call nar(">Your cock pulsates in your hand and with a groan and a sudden rush of relief you unload a torrent of cum all over your desk...") + call nar(">As waves of pleasure spread across your body you slowly begin to feel your other senses return to you...") + + hide screen blkfade + with d9 + + lun "[lun_genie_name]!" ("mad", "wide", "base", "L") + gen "{size=-4}Oh shit!{/size}" ("angry", xpos="far_left", ypos="head") #small text + lun "[lun_genie_name], you--" ("disgust", "wide", "base", "L") + gen "I can explain!" ("base", xpos="far_left", ypos="head") + lun "You've done it!" ("smile", "narrow", "base", "mid") + gen "I was just scratching--" ("angry", xpos="far_left", ypos="head") + gen "Sorry, what did you say?" ("angry", xpos="far_left", ypos="head") + lun "You expelled the Wrackspurts!" ("grin", "happyCl", "base", "mid") + gen "I did?" ("base", xpos="far_left", ypos="head") + lun "And through your penis no less!" ("grin", "base", "base", "downL") + lun "You're a genius!" ("grin", "base", "base", "mid") + gen "Well... *Err*... I suppose--" ("base", xpos="far_left", ypos="head") + lun "You've got to teach me how you did it!" ("angry", "wide", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + gen "I mean... I'd love to!" ("grin", xpos="far_left", ypos="head") + lun "Yay!" ("base", "happyCl", "base", "mid") + lun "So how did you do it? I thought you were using your wand..." ("grin", "narrow", "base", "mid") + lun "Or is that what you call a penis, do you call that a wand too?!" ("open", "wide", "base", "mid") + lun "Did you cast a spell through it?--" ("soft", "wide", "base", "mid") + gen "Slow down [luna_name]..." ("base", xpos="far_left", ypos="head") + lun "Sorry [lun_genie_name]..." ("mad", "base", "base", "mid") + gen "Well you could say it's similar to a spell... I stroke my penis along the shaft and then--" ("base", xpos="far_left", ypos="head") + lun "Can I do it now?" ("grin", "base", "base", "mid") + gen "What? Right now?!" ("angry", xpos="far_left", ypos="head") + lun "Yes!" ("smile", "wide", "base", "mid") + gen "Sure!" ("grin", xpos="far_left", ypos="head") + + #Luna takes off her bottoms + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.strip("bottom") + + + lun "Finally... A way to get rid of--" ("grin", "narrow", "base", "down") + lun "Hold on a minute..." ("normal", "wide", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + lun "[lun_genie_name], I don't think this is going to work out..." ("angry", "base", "base", "mid") + gen "What?! No! Keep going!" ("angry", xpos="far_left", ypos="head") + lun "Well...{w=0.4} I just realised..." ("disgust", "narrow", "base", "down") + lun "I don't have a penis, [lun_genie_name]..." ("angry", "narrow", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "You just realised?" ("base", xpos="far_left", ypos="head") + lun "Yes..." ("annoyed", "base", "base", "R") + lun "I don't have a shaft to stroke...{w=0.2} So how am I supposed to force them out?" ("angry", "narrow", "base", "downL") + + menu: + "\"Are you serious...\"": + pass + "\"....what?\"": + pass + "\"..............\"": + pass + + lun "" ("upset", "base", "base", "mid") #sad + pause 1 + + gen "..." ("base", xpos="far_left", ypos="head") + lun "I'm sorry [lun_genie_name], I got a bit ahead of myself there..." ("angry", "narrow", "base", "mid") + + #Luna puts on her bottoms + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ luna.wear("all") + + gen "No,{w=0.2} wait!" ("base", xpos="far_left", ypos="head") + lun "[lun_genie_name]?" ("soft", "base", "raised", "mid") + gen "*Err*... I'm sure we can think of something..." ("base", xpos="far_left", ypos="head") + + lun "" ("upset", "base", "base", "mid") + pause .8 + + gen "I know!" ("base", xpos="far_left", ypos="head") + + lun "" ("base", "base", "raised", "mid") #expectant + pause .5 + + gen "I'll give your body an inspection!" ("base", xpos="far_left", ypos="head") + lun "An inspection?" ("soft", "base", "raised", "downL") + lun "Is that what you did to figure out how to expel them from yourself?" ("open", "base", "raised", "mid") + gen "Smart girl... That's exactly it!" ("base", xpos="far_left", ypos="head") + gen "I'm sure with a thorough inspection we'll figure out a way for you to expel them as well..." ("base", xpos="far_left", ypos="head") + lun "You truly believe so?" ("grin", "base", "base", "mid") + gen "Of course!" ("grin", xpos="far_left", ypos="head") + gen "We'll have you spurting all over the place in no time, don't you worry!" ("base", xpos="far_left", ypos="head") + lun "Yay!" ("base", "happyCl", "base", "mid") + lun "Thank you [lun_genie_name]!" ("grin", "narrow", "base", "mid") + lun "..." ("base", "base", "base", "R") #glances off + + if game.daytime: + lun "Oh, shoot... I need to go... My lunch break is almost over." ("mad", "base", "base", "stare") + gen "Of course... Off you go!" ("base", xpos="far_left", ypos="head") + else: + gen "But you better get some rest before that..." ("base", xpos="far_left", ypos="head") + gen "(at least I do...)" ("base", xpos="far_left", ypos="head") + lun "Oh... Of course, [lun_genie_name]!" ("mad", "base", "base", "stare") + + lun "Just let me know when you're ready to do the inspection." ("crooked_smile", "base", "base", "mid") + gen "Certainly..." ("base", xpos="far_left", ypos="head") + + call lun_walk(path=[(240, 470),(440, 470),("mid", "base"),("door","base")]) + call lun_walk(action="leave") + + gen "..." ("base", xpos="far_left", ypos="head") + gen "(And now I wake up...)" ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(Okay I guess all that did just happen...)" ("base", xpos="far_left", ypos="head") + + jump ll_pf_talk.end + +label ll_pf_talk_T1_E4_repeat: + + gen "How are you feeling [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "I...{w=0.4} I'm okay..." ("open", "narrow", "base", "down") + lun "But I'm still worried about this burning sensation between my legs, [lun_genie_name]." ("upset", "narrow", "base", "mid") + + gen "I'm sure we'll find a way for you to deal with them once I've had a thorough inspection of your body...." ("base", xpos="far_left", ypos="head") + lun "I do hope we find a solution soon, I've been spotting more and more of them through my spectrespecs by the day..." ("upset", "narrow", "base", "R") + gen "(With Tonks and Snape around that's not surprising...)" ("base", xpos="far_left", ypos="head") + gen "Well I better prepare for that inspection then..." ("base", xpos="far_left", ypos="head") + lun "Yes...{w=0.4} Thank you, [lun_genie_name]." ("open", "base", "base", "mid") + gen "Hold on...{w} Actually we may have a little problem..." ("base", xpos="far_left", ypos="head") + lun "A little problem, [lun_genie_name]?" ("soft", "base", "base", "mid") + gen "No, wait it's a massive problem! A massive problem has arisen!" ("angry", xpos="far_left", ypos="head") + lun "There's a massive problem?! [lun_genie_name], why didn't you tell me at the start!" ("clench", "base", "base", "mid") + gen "It just started happening! Come here quick!" ("angry", xpos="far_left", ypos="head") + lun "On it!" ("mad", "base", "base", "mid") + + $ genie_masturbating = True + $ lun_jerk_off_counter += 1 + hide luna_main + + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + #Luna walks up to beside genie and turns + call lun_walk(path=[(440, 470),(230, 470),(230, 455)]) + call lun_chibi("stand", 230, 455, flip=True) + + call nar(">As Luna rushes up to your desk you pull out your cock and start stroking it.") + + lun "[lun_genie_name]!" ("mad", "base", "base", "downL", xpos="mid", ypos="base", flip=True, trans=dissolve) + lun "Your penis is getting all hard again!" ("angry", "narrow", "base", "downL") + lun "How on earth did this happen so quickly?!" ("clench", "base", "base", "downL") + + gen "That's what I thought!" ("angry", xpos="far_left", ypos="head") + lun "Does it hurt [lun_genie_name]? Your penis looks as if it's about to burst!" ("angry", "base", "base", "downL") + gen "*Ah*...{w=0.4} It...{w=0.4} It's fine but you better keep a close eye on it as I deal with this." ("angry", xpos="far_left", ypos="head") + lun "Yes, [lun_genie_name]!" ("mad", "base", "base", "mid") + + lun "" ("soft", "narrow", "base", "downL") + call nar(">Luna fixes her gaze and stares intently at your cock as you continue stroking it.") + call nar(">Even in her worried state there's still quite a bit of excitement in her eyes.") + + gen "Oh. I can't even look at it, tell me it still looks okay!" ("angry", xpos="far_left", ypos="head") + lun "It's still intact [lun_genie_name]!" ("angry", "narrow", "base", "downL") + lun "Oh my... It's twitching!" ("angry", "narrow", "base", "downL", cheeks="blush") + gen "I feel it, just keep looking at it [luna_name]!" ("angry", xpos="far_left", ypos="head") + lun "Yes, [lun_genie_name]!" ("clench", "base", "base", "downL", cheeks="blush") + + call nar(">You keep stroking your shaft as Luna watches over your every move.") + call nar(">You start stroking it faster and faster, getting closer and closer to the edge by the second.") + + lun "It's pulsating! How many Wrackspurts do you have in there?" ("disgust", "base", "base", "downL", cheeks="blush") + gen "It's...{w=0.4} Filled to the brim!" ("angry", xpos="far_left", ypos="head") + lun "Do you need me to get Madam Pomfrey?" ("mad", "base", "base", "mid", cheeks="blush") + gen "*Ah*...{w=0.4} Who?" ("angry", xpos="far_left", ypos="head") + lun "Oh my, they're making you go delirious!" ("angry", "happyCl", "base", "downL", cheeks="blush") + lun "The Matron [lun_genie_name], should I fetch her?" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Absolutely!" ("grin", xpos="far_left", ypos="head") + call nar(">As the thought of Luna bringing a hot nurse crosses your mind you feel yourself reaching climax.") + lun "I'll be back in just a moment!" ("angry", "happyCl", "base", "mid", cheeks="blush") + + #Luna walks to mid position + call lun_walk(path=[(230, 455),(230, 470),(440, 470),("mid", "base")]) + call lun_chibi("stand", "mid", "base", flip=True) + + gen "*Argh*!!" ("angry", xpos="far_left", ypos="head") + + call lun_chibi("stand", "mid", "base", flip=False) + lun "[lun_genie_name]?" ("mad", "base", "base", "mid", flip=False, trans=dissolve) + + call gen_chibi("cum_behind_desk") + call cum_block + call gen_chibi("jerk_off_behind_desk") + lun "What is--" ("clench", "base", "base", "mid") + call gen_chibi("cum_behind_desk") + call cum_block + gen "*Argh*..." ("angry", xpos="far_left", ypos="head") + call gen_chibi("jerk_off_behind_desk") + lun "[lun_genie_name], are you okay?!" ("angry", "base", "base", "mid") + lun "Are you in pain?" ("angry", "narrow", "base", "mid") + gen "Yes, it pains me that you didn't--" ("angry", xpos="far_left", ypos="head") + call gen_chibi("cum_behind_desk") + call cum_block + gen "*Argh*-- *heavy panting*" ("angry", xpos="far_left", ypos="head") + gen "Fetch the nurse in time..." ("angry", xpos="far_left", ypos="head") + call gen_chibi("cum_behind_desk_done") + with d3 + + lun "[lun_genie_name]?" ("mad", "base", "base", "mid") + gen "*Ah*... That was--" ("base", xpos="far_left", ypos="head") + lun "Are you okay?" ("mad", "narrow", "base", "mid") + gen "So good..." ("base", xpos="far_left", ypos="head") + lun "Do I still need to fetch the matron?" ("angry", "narrow", "base", "mid") + gen "The--{w=0.3} *Err*..." ("base", xpos="far_left", ypos="head") + call nar(">You look around at your cum soiled desk.") + gen "(She might get a heart attack from seeing this battlefield...)" ("base", xpos="far_left", ypos="head") + gen "It's...{w=0.3} I'm fine!" ("base", xpos="far_left", ypos="head") + lun "Are you sure, [lun_genie_name]?" ("upset", "base", "base", "mid") + gen "Yes...{w=0.3} *Ahem*...{w=0.3} Nothing a good nap wont sort out." ("base", xpos="far_left", ypos="head") + lun "*Hmm*...{w=0.3} Okay then..." ("soft", "narrow", "base", "mid") + lun "[lun_genie_name]..." ("mad", "narrow", "base", "mid") + gen "Yes, [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "We'll have that inspection done soon right?" ("angry", "narrow", "base", "mid") + lun "I'm worried what might happen if they attacked me like this." ("disgust", "narrow", "base", "down") + + gen "Of course...{w=0.3} I'll check you out-- *Err*...{w=0.3} I mean I'll have you checked as soon as possible!" ("base", xpos="far_left", ypos="head") + lun "Thank Merlin..." ("open", "closed", "low", "mid") + lun "Then let me know as soon as you're ready [lun_genie_name]." ("angry", "base", "base", "mid") + gen "Certainly..." ("base", xpos="far_left", ypos="head") + + call lun_walk(action="leave") + + jump ll_pf_talk.end + +label ll_pf_talk_T2_E1_repeat: + + gen "Tell me some more about these spurts..." ("base", xpos="far_left", ypos="head") + lun "Again, [lun_genie_name]?" ("open", "base", "raised", "mid") + gen "Yes... I still don't think I'm quite done with my personal research..." ("base", xpos="far_left", ypos="head") + lun "Oh... Okay then..." ("soft", "base", "base", "mid") + gen "One moment please." ("base", xpos="far_left", ypos="head") + + $ genie_masturbating = True + $ lun_jerk_off_counter += 1 + hide luna_main + + call nar(">You pull out your cock and start stroking it.") + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + gen "There we go..." ("base", xpos="far_left", ypos="head") + gen "You may begin." ("base", xpos="far_left", ypos="head") + + lun "*Ehm*...{w=0.4} What would you like to know?" ("grin", "narrow", "base", "down") + gen "Tell me more about how they make you feel." ("base", xpos="far_left", ypos="head") + lun "Okay..." ("open", "base", "base", "mid") + + call nar(">You continue stroking your hardening cock in anticipation as Luna looks at you nervously.") + lun "..." ("normal", "narrow", "base", "downL") + lun "*Ehm*... [lun_genie_name]..." ("open", "narrow", "base", "downL") + gen "Yes?" ("base", xpos="far_left", ypos="head") + lun "Could I...{w} Could I watch you do it?" ("open", "narrow", "base", "mid") + gen "You want to...{w=0.4} Watch me?" ("base", xpos="far_left", ypos="head") + lun "Yes, If I'm supposed to learn about these things then wouldn't it be best if I watched you do it?" ("soft", "narrow", "base", "mid") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + lun "Please, [lun_genie_name]! Even if I'm not ready yet myself, I really want to be able to help you properly once I am!" ("mad", "base", "base", "mid") + gen "Well...{w=0.4} *Ah*...{w=0.4} When you put it that way..." ("base", xpos="far_left", ypos="head") + lun "Oh... Thank you [lun_genie_name], I'm so glad you trust me..." ("grin", "base", "base", "mid") + + #Luna walks up to beside genie and turns + call lun_walk(path=[(440, 470),(230, 470),(230, 455)]) + call lun_chibi("stand", 230, 455, flip=True) + call ctc + + lun "Wow...{w=0.4} It's quite big isn't it?" ("soft", "base", "base", "downL", xpos="mid", ypos="base", flip=True, trans=dissolve) + gen "It gets bigger as I stroke it..." ("base", xpos="far_left", ypos="head") + lun "Really?" ("mad", "base", "base", "mid") + lun "How big is it going to get?" ("open", "base", "base", "downL", cheeks="blush") + gen "Quite...{w=0.4} Quite a fair bit bigger..." ("base", xpos="far_left", ypos="head") + call nar(">You look up at the girl, who's now watching your every stroke with excitement.") + lun "Wow, it's so much bigger now! It's like unicorn horn!" ("open", "narrow", "base", "downL", cheeks="blush") + call nar(">With Luna so close to you, you can't help but notice her reddening cheeks and quickening breath.") + lun "Wait, surely it can't be as hard as a unicorn horn..." ("soft", "base", "raised", "downL", cheeks="blush") + gen "(*Ngh*...{w=0.4} You'd be surprised...)" ("base", xpos="far_left", ypos="head") + lun "It's more like...{w=0.4} like..." ("upset", "base", "base", "downL", cheeks="blush") + gen "*Ah*...{w=0.4} Yes...{w=0.4} Tell me more about how big it is..." ("base", xpos="far_left", ypos="head") + lun "Like a python!" ("angry", "base", "base", "mid", cheeks="blush") + gen "That's...{w=0.4} It...{w=0.4} Watch this python spit!" ("angry", xpos="far_left", ypos="head") + + call gen_chibi("cum_behind_desk") + call lun_chibi("stand", 230, 455, flip=True) + call cum_block + lun "Whoa!" ("open", "wide", "base", "downL") + call cum_block + gen "*Argh*..." ("angry", xpos="far_left", ypos="head") + lun "There's so much of it!" ("grin", "wide", "base", "stare") + gen "(Yes, watch me spurt you airheaded--)" ("angry", xpos="far_left", ypos="head") + call cum_block + gen "*Argh*-- *heavy panting*" ("angry", xpos="far_left", ypos="head") + call gen_chibi("cum_behind_desk_done") + call lun_chibi("stand", 230, 455, flip=True) + with d3 + + gen "*Ah*...{w=0.3} *Ah*...{w=0.4} *Ah*..." ("base", xpos="far_left", ypos="head") + lun "Oh! It's shrinking again, that must mean it worked, right?" ("grin", "base", "base", "downL") + gen "Don't look at that!" ("angry", xpos="far_left", ypos="head") + lun "Oh! Sorry [lun_genie_name]!" ("mad", "base", "base", "mid") + lun "I'll just go over there then!" ("soft", "base", "base", "mid") + + #Luna walks to mid position + call lun_walk(path=[(230, 455),(230, 470),(440, 470),("mid", "base")]) + call lun_chibi("stand", "mid", "base", flip=False) + + lun "...{w} Do you feel better now, [lun_genie_name]?" ("soft", "base", "base", "mid", flip=False, trans=dissolve) + gen "Much better..." ("base", xpos="far_left", ypos="head") + lun "I'm so glad..." ("grin", "closed", "base", "mid") + + if game.daytime: + lun "Well, I better head back to class." ("base", "base", "base", "mid") + gen "Of course... Off you go!" ("base", xpos="far_left", ypos="head") + else: + gen "I'm spent..." ("base", xpos="far_left", ypos="head") + lun "Oh...{w=0.4} Okay!" ("open", "base", "base", "mid") + lun "I'll head off to my dorms then." ("base", "base", "base", "mid") + gen "That'd probably be for the best." ("base", xpos="far_left", ypos="head") + lun "Good night then, [lun_genie_name]." ("grin", "base", "base", "mid") + gen "Good night [luna_name]." ("base", xpos="far_left", ypos="head") + + call lun_walk(action="leave") + + jump ll_pf_talk.end + +label ll_pf_talk_T3_E1_repeat: + + gen "Able to help me deal with those spurts again?" ("base", xpos="far_left", ypos="head") + lun "Of course, what would you need me to do?" ("grin", "base", "raised", "mid") + gen "Just stand there for a bit." ("base", xpos="far_left", ypos="head") + lun "Oh... Okay, [lun_genie_name]." ("base", "happyCl", "base", "mid") + + $ genie_masturbating = True + $ lun_jerk_off_counter += 1 + hide luna_main + + call nar(">You pull out your cock and start stroking it.") + call gen_chibi("jerk_off_behind_desk") + with d3 + pause .8 + + gen "So...{w=0.4} Any news on those spurts?" ("base", xpos="far_left", ypos="head") + lun "*Ehm*..." ("soft", "base", "base", "mid") + lun "Well, to be honest [lun_genie_name] they've not really left me alone at all." ("angry", "narrow", "base", "mid") + gen "Really? I thought we had been taking good care of them." ("base", xpos="far_left", ypos="head") + lun "Oh, don't get me wrong [lun_genie_name]. All our tests have helped me immensely." ("grin", "narrow", "base", "mid") + lun "If it wasn't for you, I think I would've gone completely crazy by now..." ("open", "narrow", "base", "down", cheeks="blush") + gen "(As if you're not already, you nympho!)" ("base", xpos="far_left", ypos="head") + call ctc + + lun "*Ehm*, [lun_genie_name]..." ("soft", "narrow", "base", "mid", cheeks="blush") + gen "*Ah*...{w=0.3} Yes, [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "I can't really see what you're doing from here..." ("open", "narrow", "base", "downL", cheeks="blush") + lun "Wouldn't it be better if I came up and watched you?" ("base", "base", "raised", "mid", cheeks="blush") + gen "I suppose..." ("base", xpos="far_left", ypos="head") + lun "Great!" ("crooked_smile", "base", "base", "mid", cheeks="blush") + + #Luna walks up to beside genie and turns + call lun_walk(path=[(440, 470),(230, 470),(230, 455)]) + call lun_chibi("stand", 230, 455, flip=True) + call ctc + + gen "..." ("base", xpos="far_left", ypos="head") + lun "..." ("grin", "base", "base", "downL", cheeks="blush", xpos="mid", ypos="base", flip=True, trans=dissolve) + gen "You suddenly went quiet..." ("base", xpos="far_left", ypos="head") + gen "I don't think this will work if you just stand there..." ("base", xpos="far_left", ypos="head") + lun "Oh, sorry [lun_genie_name]..." ("mad", "base", "base", "mid", cheeks="blush") + lun "Your penis is quite distracting." ("soft", "narrow", "base", "mid", cheeks="blush") + gen "That's certainly one way to describe it..." ("base", xpos="far_left", ypos="head") + lun "Are they...{w} Would you say your penis is big, [lun_genie_name]?" ("open", "narrow", "raised", "downL", cheeks="blush") + gen "Well..." ("base", xpos="far_left", ypos="head") + + menu: + "-Be modest-": + gen "I'd say it's quite average..." ("base", xpos="far_left", ypos="head") + lun "Really? So they can get bigger than this?" ("clench", "wide", "base", "mid", cheeks="blush") + gen "If you compare it to an elephant trunk that is... Actually when it comes to penis size, mine is absolutely massive!" ("base", xpos="far_left", ypos="head") + gen "That's why I'm such a powerful wizard." ("base", xpos="far_left", ypos="head") + gen "The two are directly related." ("base", xpos="far_left", ypos="head") + "-Overexaggerate-": + gen "It's absolutely massive..." ("base", xpos="far_left", ypos="head") + lun "I knew it!" ("grin", "base", "base", "downL", cheeks="blush") + gen "Actually, I have to use magic to make it smaller than its true size." ("base", xpos="far_left", ypos="head") + lun "Really?" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Oh yes..." ("base", xpos="far_left", ypos="head") + gen "Who do you think designed these robes?" ("base", xpos="far_left", ypos="head") + lun "*Ehm*..." ("soft", "base", "base", "mid", cheeks="blush") + gen "Me of course!" ("base", xpos="far_left", ypos="head") + gen "If everyone has to wear loose fitting clothes then they wouldn't question why I'm always wearing them." ("base", xpos="far_left", ypos="head") + gen "It is a curse... Sporting such a massive phallus..." ("base", xpos="far_left", ypos="head") + lun "I... I'm sorry [lun_genie_name]... I had no idea..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "That's the curse of being such a powerful wizard..." ("base", xpos="far_left", ypos="head") + gen "The more powerful you are the larger it is." ("base", xpos="far_left", ypos="head") + "-Play it down-": + gen "Nah, it's tiny..." ("base", xpos="far_left", ypos="head") + lun "Really?" ("clench", "base", "base", "mid", cheeks="blush") + gen "Yep..." ("base", xpos="far_left", ypos="head") + lun "How do other people even hide theirs then?" ("disgust", "base", "base", "downL", cheeks="blush") + gen "Oh, you mean compared to other people?" ("base", xpos="far_left", ypos="head") + gen "You should've specified then... Size is quite relative you know..." ("base", xpos="far_left", ypos="head") + gen "This planet is tiny compared to the sun, which is tiny compared to the universe." ("base", xpos="far_left", ypos="head") + lun "Then... How big is it compared to the average person?" ("open", "base", "base", "mid", cheeks="blush") + gen "Absolutely massive!" ("grin", xpos="far_left", ypos="head") + lun "I knew it..." ("grin", "base", "base", "downL", cheeks="blush") + gen "I mean, that's to be expected from such a powerful wizard as myself." ("base", xpos="far_left", ypos="head") + gen "Here's some advice for you... If you ever want to find out if a wizard is powerful, just check out his penis." ("base", xpos="far_left", ypos="head") + + lun "Truly?" ("soft", "base", "raised", "mid", cheeks="blush") + gen "Of course!" ("grin", xpos="far_left", ypos="head") + gen "The bigger the wand, the more powerful the wizard." ("base", xpos="far_left", ypos="head") + lun "Wow... I can't believe I didn't know that..." ("angry", "base", "base", "downL", cheeks="blush") + gen "Merlin, Saruman, Gandalf...{w=0.3} Jafar...{w=0.3} What do we all have in common?" ("base", xpos="far_left", ypos="head") + lun "I don't--" ("soft", "narrow", "base", "mid", cheeks="blush") + gen "We all wear robes! To hide our true power you see..." ("base", xpos="far_left", ypos="head") + gen "(Although that last one had a power enlargement...)" ("base", xpos="far_left", ypos="head") + lun "I see..." ("grin", "base", "base", "mid", cheeks="blush") + gen "Now if you excuse me, I need to concentrate on this..." ("base", xpos="far_left", ypos="head") + lun "Of course [lun_genie_name]..." ("crooked_smile", "narrow", "base", "mid", cheeks="blush") + gen "Feel free to talk about how big it is by the way... It might help." ("base", xpos="far_left", ypos="head") + lun "Oh... *Ehm*..." ("mad", "narrow", "base", "mid", cheeks="blush") + call nar(">You continue stroking your cock in anticipation as Luna looks at you, pondering what to say.") + lun "Your penis is so big [lun_genie_name]..." ("soft", "narrow", "base", "downL", cheeks="blush") + gen "Yes, that's it... Keep going, tell me how great I am." ("base", xpos="far_left", ypos="head") + lun "And you're so powerful..." ("grin", "narrow", "base", "downL", cheeks="blush") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "That's it...{w=0.3} *Ah*...{w=0.3} How powerful am I?" ("base", xpos="far_left", ypos="head") + lun "More powerful than merlin!" ("smile", "base", "base", "mid", cheeks="blush") + gen "*Ngh*...{w=0.3} Yeah...{w=0.3} That guy, he's so overrated!" ("base", xpos="far_left", ypos="head") + call nar(">You feel yourself getting closer to the edge as Luna strokes your ego.") + gen "I'm... I'm close, girl keep going..." ("base", xpos="far_left", ypos="head") + lun "Oh... *Ehm*... I'm not sure what to--" ("angry", "narrow", "base", "downL", cheeks="blush") + gen "Tell me I'm better than Jafar!" ("base", xpos="far_left", ypos="head") + lun "*Ehm*... I don't know who--" ("soft", "base", "base", "mid", cheeks="blush") + gen "{size=+4}Tell me!{/size}" ("base", xpos="far_left", ypos="head") + lun "You're better than Jafar!" ("clench", "wide", "base", "mid", cheeks="blush") + gen "That's it girl, feel my power!" ("base", xpos="far_left", ypos="head") + + call gen_chibi("cum_behind_desk") + call lun_chibi("stand", 230, 455, flip=True) + call cum_block + lun "Whoa!" ("open", "wide", "base", "downL", cheeks="blush") + call cum_block + gen "*Argh*..." ("angry", xpos="far_left", ypos="head") + lun "[lun_genie_name]!" ("soft", "wide", "base", "downL") + lun "You truly are power--!" ("grin", "wide", "base", "stare") + gen "I'm not done yet!" ("angry", xpos="far_left", ypos="head") + call cum_block + gen "*Argh*-- *heavy panting*" ("angry", xpos="far_left", ypos="head") + call gen_chibi("cum_behind_desk_done") + call lun_chibi("stand", 230, 455, flip=True) + with d3 + + lun "Wow... It went so far!" ("smile", "wide", "base", "L") + lun "Is that related to your wizard powers too?" ("angry", "base", "base", "mid") + gen "*Ah*...{w=0.3} *Ah*...{w=0.3} That's just sheer willpower..." ("base", xpos="far_left", ypos="head") + lun "Astonishing..." ("soft", "narrow", "base", "downL") + gen "You can stop staring at it now..." ("base", xpos="far_left", ypos="head") + lun "Oh... Of course [lun_genie_name]." ("angry", "narrow", "base", "mid", cheeks="blush") + + #Luna walks to mid position + call lun_walk(path=[(230, 455),(230, 470),(440, 470),("mid", "base")]) + call lun_chibi("stand", "mid", "base", flip=False) + + lun "...{w} [lun_genie_name]?" ("open", "base", "base", "mid", flip=False, trans=dissolve) + gen "Yes?" ("base", xpos="far_left", ypos="head") + lun "Do you mind answering a question?" ("base", "base", "base", "mid") + gen "Shoot." ("base", xpos="far_left", ypos="head") + lun "If a wizard's power is related to the size of his penis..." ("open", "base", "base", "mid") + lun "Does that make you more powerful than normal when you stroke it?" ("soft", "base", "base", "mid") + gen "I suppose..." ("base", xpos="far_left", ypos="head") + gen "I sure feel more powerful when I do it." ("base", xpos="far_left", ypos="head") + lun "Interesting... Thank you for answering." ("grin", "base", "base", "mid") + + if game.daytime: + lun "Well, I better head back to class." ("base", "base", "base", "mid") + gen "Of course... Off you go!" ("base", xpos="far_left", ypos="head") + else: + lun "Well... If that was everything..." ("base", "base", "base", "mid") + gen "Yes, that shall do for tonight [luna_name]." ("base", xpos="far_left", ypos="head") + lun "Good night then, [lun_genie_name]." ("grin", "base", "base", "mid") + gen "Good night [luna_name]." ("base", xpos="far_left", ypos="head") + + call lun_walk(action="leave") + + jump ll_pf_talk.end diff --git a/game/scripts/characters/luna/events/intro.rpy b/game/scripts/characters/luna/events/intro.rpy new file mode 100644 index 00000000..0d86a69f --- /dev/null +++ b/game/scripts/characters/luna/events/intro.rpy @@ -0,0 +1,759 @@ + + +### Luna Intro ### + +### Event 1 ### + +label luna_intro_E1: + + # Setup + $ luna_intro_E1 = True + $ luna_name = "???" + $ d_flag_01 = False + $ d_flag_02 = [False, False, False, False, False] + + # Chibi Z Order. Default 3, (manual reset after event) + $ hermione_chibi.zorder = 2 + $ luna_chibi.zorder = 2 + + # Outfit Equips + $ luna.equip(lun_outfit_default) # Sets this outfit as Luna's default. + + $ lun_outfit_last.save() + $ her_outfit_last.save() + $ ton_outfit_last.save() + + $ luna.equip(lun_outfit_pajama) + $ hermione.equip(her_outfit_pajama) + $ tonks.equip(ton_outfit_dressing_gown) + + call play_music("stop") + show screen blktone + with d3 + + pause .5 + $ renpy.sound.play("sounds/snore1.ogg") + + gen "*Snore*{w=2.0}{nw}" ("base", xpos="far_left", ypos="head") + gen "Yes..." ("base", xpos="far_left", ypos="head") + + pause 1.0 + $ renpy.sound.play("sounds/snore3.ogg") + + gen "*Sn{cps=8}oooooooreeee*{/cps}{w=2.0}{nw}" ("base", xpos="far_left", ypos="head") + gen "Let's weigh those melons then shall we..." ("base", xpos="far_left", ypos="head") + + pause 1.0 + $ renpy.sound.play("sounds/snore2.ogg") + + gen "......{w=0.5}*Snore*{w=1.0}{nw}" ("base", xpos="far_left", ypos="head") + gen "Can't find the scales... will have to use my hands..." ("grin", xpos="far_left", ypos="head") + + stop music fadeout 8.0 + hide screen blktone + with d3 + pause .2 + + call lun_walk(action="enter") + call chibi_emote("thought", "luna") + pause 1 + call chibi_emote("hide", "luna") + call lun_walk("410", speed=0.7) + call play_sound("kick") + show screen gfx_effect(428, 365, img="smoke", zoom=0.25) + with hpunch + + pause 0.5 + + $ renpy.sound.play("sounds/MaleGasp.ogg") + call bld + gen "M-My cabbages!" ("angry", xpos="far_left", ypos="head") + + $ luna.set_face(mouth="soft", eyes="closed", eyebrows="low", pupils="mid") + $ camera.set_imagepath("common/") + $ camera.set_image("CG luna") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=1.0, pos=(-1040, -600), initialize=True) + show screen animatedCG + with fade + + gen "Who is--" + $ camera.set(zoom=1.0, pos=(-1040, -35), t=5.0, pause=True) + + gen "... A girl?" + lun "*Mmh*" + $ camera.set(zoom=0.5, pos=(-270, -150), t=3.0) + + gen "What are you doing in my office?" + gen "Did Snape send you here? Surely--" + lun "I can't find them, daddy..." ("open", "closed", "worried", "mid") + gen "Daddy?!" + lun "My glasses..." ("soft", "closed", "low", "mid") + gen "You're...{w=0.4} looking for your glasses?" + gen "Why would your glasses be in here?" + gen "Hold on..." + + hide screen animatedCG + call gen_chibi("stand", 225, "base") + with fade + + pause 1 + + call gen_walk(path=[(230, 470), (440, 470), (450, 430)]) + call gen_chibi("stand", 450, "base", flip=False) + with d3 + + pause 0.5 + + #Genie walks over behind Luna who doesn't turn around + gen "(Is this girl sleepwalking?)" ("base", xpos="far_left", ypos="head") + + call play_music("luna", fadein=5.0) + lun "" ("soft", "closed", "low", "mid", xpos="mid", ypos="base", trans=dissolve) + gen "Whoa,{w=0.2} check out these melons!" ("grin", xpos="far_left", ypos="head") + gen "(Shit.... I said that out loud.)" ("angry", xpos="far_left", ypos="head") + gen "(Guess she really must be sleepwalking...)" ("base", xpos="far_left", ypos="head") + gen "(Although, maybe I could test it somehow just to be sure...)" ("base", xpos="far_left", ypos="head") + + menu: + gen "(What kind of {i}examination{/i} should I perform?)" ("base", xpos="far_left", ypos="head") + "-Oral examination-": + $ d_flag_01 = True + gen "So... What's your name?" ("base", xpos="far_left", ypos="head") + lun "...{w=0.8}Wrackspurts..." ("open", "closed", "low", "mid") + gen "Charming..." ("base", xpos="far_left", ypos="head") + gen "(I suppose that is a plausible name in this world...)" ("base", xpos="far_left", ypos="head") + $ luna_name = "Miss Backspurts?" + + "-Hands-on examination-": + pause 0.5 + $ mouse_slap() + lun "No!" ("angry", "happyCl", "low", "mid") + gen "..." ("angry", xpos="far_left", ypos="head") + lun "The Nargles..." ("open", "happyCl", "low", "mid") + gen "The what now?" ("base", xpos="far_left", ypos="head") + lun "*Inaudible mumbling*..." ("upset", "closed", "low", "mid") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + "-Shock therapy-": + + call blkfade + call gen_chibi("dick_out", 450, "base", flip=False) + hide luna_main + pause 1 + call hide_blkfade + gen "What do you think about this?" ("grin", xpos="far_left", ypos="head") + lun "...Crumple-Horned Snorkack..." ("disgust", "closed", "low", "mid", trans=dissolve) + gen "...Well, that's just rude..." ("base", xpos="far_left", ypos="head") + pause 0.5 + with d3 + + # Genie walks back to his chair and sits down + gen "(What a strange girl...)" ("base", xpos="far_left", ypos="head") + gen "(Although the crazies usually give the best blowjobs...)" ("base", xpos="far_left", ypos="head") + gen "(Well, now I'm hard...)" ("base", xpos="far_left", ypos="head") + + menu: + "-Jerk off-": + gen "(Even after thousands of years, this is a new one even for me...)" ("base", xpos="far_left", ypos="head") + + call blkfade + call gen_chibi("jerk_off", 450, "base", flip=False) + lun "" ("soft", "closed", "low", "mid") + pause 1 + call nar("*Fap* *Fap* *Fap*") + call hide_blkfade + + gen "..." ("base", xpos="far_left", ypos="head") + gen "Hey, you could at least talk dirty or something." ("base", xpos="far_left", ypos="head") + lun "I feel...{w} tingling..." ("open", "closed", "low", "mid") + gen "Nice..." ("grin", xpos="far_left", ypos="head") + lun "Crawling on my skin..." ("normal", "closed", "low", "mid") + + call gen_chibi("dick_out", 450, "base", flip=False) + gen "..." ("angry", xpos="far_left", ypos="head") + gen "(Yeah, this is not going to work...)" ("base", xpos="far_left", ypos="head") + call blkfade + call gen_chibi("stand", 450, "base", flip=False) + pause 1 + hide luna_main + call hide_blkfade + gen "(Better let someone else deal with this one...)" ("base", xpos="far_left", ypos="head") + + "-Don't-": + call blkfade + call gen_chibi("stand", 450, "base", flip=False) + hide luna_main + call hide_blkfade + pause 1 + gen "(This is so weird, she's just standing there...)" ("base", xpos="far_left", ypos="head") + gen "(I better get someone to deal with this...)" ("base", xpos="far_left", ypos="head") + + call gen_chibi("sit_behind_desk") + with fade + + label luna_intro_E1.choices: + + menu: + "-Summon Snape-" if not d_flag_02[0]: + $ d_flag_02[0] = True + ">You put your palms on your temples, attempting to summon Snape, but nothing happens." # X-Man reference + gen "*Hmm*... He must be dead..." ("base", xpos="far_left", ypos="head") + gen "Dead drunk..." ("angry", xpos="far_left", ypos="head") + + jump .choices + + "-Summon Tonks-" if not d_flag_02[1]: + $ d_flag_02[1] = True + ">You try to summon Tonks." + pause 0.2 + $ renpy.sound.play("sounds/magic3.ogg") + ">The spell fizzles." + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "(Don't think that worked... Is she sleeping?)" ("base", xpos="far_left", ypos="head") + + jump .choices + + "-Summon God-" if not d_flag_02[2]: + $ d_flag_02[2] = True + ">Nothing happened." + gen "Figures..." ("base", xpos="far_left", ypos="head") + + jump .choices + + "-Summon Satan-" if not d_flag_02[3]: + $ d_flag_02[3] = True + + gen "I summon thee... Satan." ("base", xpos="far_left", ypos="head") + pause 1 + gen "*heh*... Just as I exp--" ("base", xpos="far_left", ypos="head") + $ renpy.play('sounds/attack_snape2.ogg') + show pentogram onlayer screens at Position(xpos=690, ypos=250, xanchor="center", yanchor="center") + with d5 + + pause 0.5 + gen "Uh-oh..." ("base", xpos="far_left", ypos="head") + call blkfade + hide pentogram onlayer screens + centered "{size=+7}{color=#cbcbcb}20 minutes later...{/color}{/size}" + + gen "*Ha-ha*... Good one! Alright, talk to you later Beelzebub!" ("grin", xpos="far_left", ypos="head") + "Beelzebub" "Ah, don't be so formal, just call me Bub." + "Beelzebub" "If you ever need some latest {i}hot{/i} news, I'm your guy." + call give_reward(">Satan's phone number has been added to your contacts list.", "interface/icons/phone.webp") + gen "Thanks Bub, will do!" ("grin", xpos="far_left", ypos="head") + + "Bub" "Take care!" + $ renpy.play('sounds/attack_snape2.ogg') + + call hide_blkfade + + gen "..." ("base", xpos="far_left", ypos="head") + gen "He's such a nice guy, I don't understand why people hate him so much." ("base", xpos="far_left", ypos="head") + + if d_flag_02[2]: + gen "(And he at least answered the call, unlike the guy upstairs...)" ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/thunder.ogg") + with flash + gen "!!!" ("angry", xpos="far_left", ypos="head") + gen "...Sorry." ("base", xpos="far_left", ypos="head") + + gen "Anyway... What was I doing?" ("base", xpos="far_left", ypos="head") + + lun "*Snore*..." ("soft", "closed", "low", "mid", trans=dissolve) + gen "Right..." ("base", xpos="far_left", ypos="head") + + jump .choices + + "-Summon Hermione-": + pass + + "-Summon Jafar-" if not d_flag_02[4]: + $ d_flag_02[4] = True + gen "Who the fuck made this an option?!" ("angry", xpos="far_left", ypos="head") + + jump .choices + + call blkfade + hide luna_main + call nar(">You summon Hermione to your office.") + call hide_blkfade + + call her_walk("mid", action="enter") + + gen "Ah, Miss Granger..." ("base", xpos="far_left", ypos="head") + her "[genie_name]... do you know what time it--" ("normal", "happyCl", "base", "down", xpos=500, ypos="base", trans=dissolve) + her "..." ("normal", "narrow", "base", "L") + her "Luna? what are you doing here?!?" ("angry", "base", "worried", "L") #shocked + + if d_flag_01: + gen "(Didn't she say her name was backspurts or something?)" ("base", xpos="far_left", ypos="head") + + $ luna_name = "Miss Luna?" + + her "Don't tell me--" ("clench", "happy", "worried", "mid") + gen "Quiet, girl." ("base", xpos="far_left", ypos="head") + gen "She's sleepwalking..." ("base", xpos="far_left", ypos="head") + her "She's...{w=0.4} Oh, I see..." ("open", "squint", "base", "L") + lun "So warm..." ("open", "closed", "base", "mid", trans=dissolve) + her "..." ("disgust", "squint", "base", "L", cheeks="blush") #weirded out + gen "Can you do something?" ("base", xpos="far_left", ypos="head") + her "Do what exactly? I thought you weren't supposed to wake somebody up when they're sleepwalking..." ("angry", "squint", "base", "mid") + gen "Then just escort her back to her bed..." ("base", xpos="far_left", ypos="head") + her "She's from Ravenclaw, I don't have access to their dormitory, so why me?" ("angry", "narrow", "base", "mid") + + if d_flag_02.count(True) == 0: + # Selected Hermione as the first pick + gen "You were the obvious choice, Miss Granger." ("base", xpos="far_left", ypos="head") + elif d_flag_02[3]: + # Selected Satan (Other choices don't matter) + gen "Nobody else seemed to be picking up my calls..." ("base", xpos="far_left", ypos="head") + gen "Well, except..." ("base", xpos="far_left", ypos="head") + her "Except?" ("upset", "squint", "base", "mid") + gen "Satan." ("base", xpos="far_left", ypos="head") + her "Satan...?" ("clench", "base", "worried", "mid") + gen "Never mind." ("base", xpos="far_left", ypos="head") + her "..........." ("clench", "base", "base", "mid") + else: + gen "Nobody else seemed to be picking up my calls..." ("base", xpos="far_left", ypos="head") + + gen "Anyway,{w=0.2} how am I supposed to know that?" ("base", xpos="far_left", ypos="head") + gen "She's not wearing her school uniform, is she?" ("base", xpos="far_left", ypos="head") + her "I thought our headmaster was supposed to know all of our students..." ("upset", "squint", "base", "mid") + gen "Even my immense knowledge has its limits dear..." ("base", xpos="far_left", ypos="head") + her "(Clearly there's more important things occupying your mind...)" ("normal", "narrow", "base", "R") # Rolls eyes + her "How come you haven't escorted her back yourself, professor?" ("angry", "narrow", "annoyed", "mid") + + menu: + "\"I don't know where this Ravenglove dormitory is...\"": + her "It's Ravenclaw, [genie_name]..." ("disgust", "narrow", "annoyed", "mid") + gen "Yes, that's what I said..." ("base", xpos="far_left", ypos="head") + her "You said--" ("angry", "closed", "angry", "mid") + her "What do you mean you don't know where their dormitory is?" ("clench", "squint", "base", "mid") + gen "Girl, I'm starting to lose my patience..." ("base", xpos="far_left", ypos="head") + gen "Just get this weirdo out of here, will you?" ("base", xpos="far_left", ypos="head") + "-Dismiss the question-": + gen "Just get this weirdo out of here, please." ("base", xpos="far_left", ypos="head") + + her "[genie_name]!" ("angry", "narrow", "worried", "mid") # Gasp + lun "It tickles..." ("grin", "closed", "worried", "mid") + her "......" ("disgust", "squint", "base", "L") # Looks at Luna, puzzled. + her "She...{w=0.4} She's not a weirdo... She's just a bit... Loony..." ("disgust", "squint", "base", "mid") + gen "I don't care what you call it, just escort miss {i}Loony{/i} back to her bed...." ("base", xpos="far_left", ypos="head") + her "I can't!" ("clench", "squint", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + her "As I've already said, professor... I'm not allowed in their dormitory." ("open", "squint", "base", "L") + gen "Bloody hell, there's always {i}something{/i}..." ("angry", xpos="far_left", ypos="head") + + if d_flag_02[1]: + # tonks enters (wearing something sexy) + call ton_walk("mid", 460, action="enter") + + ton "*Yawn* Sorry I'm late, [ton_genie_name]." ("annoyed", "narrow", "shocked", "L", xpos="base", ypos="base", trans=dissolve) + gen "You took your damn time." ("base", xpos="far_left", ypos="head") + ton "I was in the middle of... something important." ("horny", "narrow", "base", "R") + gen "Important, *hmm*..." ("base", xpos="far_left", ypos="head") + else: + her "I suggest you should summon a teacher to escort her back." ("open", "closed", "base", "mid") + gen "Very well... I will summon--" ("base", xpos="far_left", ypos="head") + her "Anyone but Snape!" ("clench", "narrow", "base", "mid") + lun "*Sniff*..." ("soft", "closed", "base", "mid") + her "Shush now... It's okay Luna, professor Snape is not allowed here." ("open", "squint", "base", "L") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Fine. I'll just get Professor Tonks up here..." ("base", xpos="far_left", ypos="head") + + call blkfade + call nar(">You attempt to summon Tonks to your office.") + hide hermione_main + hide luna_main + call hide_blkfade + + call ton_walk("mid", 460, action="enter") + ton "You called..." ("base", "base", "base", "mid", xpos="base", ypos="base", trans=dissolve) + + her "Professor!" ("clench", "squint", "worried", "L", cheeks="blush", flip=True, trans=dissolve) #Wide eyed + ton "*Oooooh* What's this? A slumber party?" ("horny", "narrow", "base", "down") + gen "It is now!" ("grin", xpos="far_left", ypos="head") + gen "Let me search for my bathrobe real quick." ("grin", xpos="far_left", ypos="head") + her "P-Professor, that's not why we asked her here." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Right...{w=0.3} Miss Tonks, we may require your assistance here..." ("base", xpos="far_left", ypos="head") + ton "Assistance? With what--" ("open", "base", "raised", "mid") + lun "Wrackspurts!" + ton "Ah... Miss Lovegood." ("base", "narrow", "raised", "L") + + if d_flag_01: + gen "Luna Love-good... *heh*, that's funny." ("grin", xpos="far_left", ypos="head") + ton "What's funny?" ("base", "base", "base", "mid") + gen "Love...{w=0.4} Good...{w=0.6} Get it?" ("base", xpos="far_left", ypos="head") + ton "..." ("base", "base", "base", "mid") + gen "Anyway..." ("base", xpos="far_left", ypos="head") + + $ luna_name = "Miss Lovegood" + + gen "This so called Miss {i}Lovegood{/i} sleep-walked in here." ("base", xpos="far_left", ypos="head") + ton "How am I not surprised." ("base", "closed", "base", "mid") + her "P-Professor, what are you wearing?!" ("angry", "narrow", "base", "down", cheeks="blush") + gen "Yes, Miss Tonks. What in the great desert sands are you wearing?" ("angry", xpos="far_left", ypos="head") + gen "Is this a school or a brothel?" ("grin", xpos="far_left", ypos="head") + + ton "It's my nightgown... You don't like it?" ("horny", "narrow", "raised", "L", hair="horny") # Flirtatious + # Fun option + menu: + + "\"I love it!\"": + gen "You look like a slut!" ("grin", xpos="far_left", ypos="head") + + "\"You look like a slut!\"": + gen "I love it!" ("grin", xpos="far_left", ypos="head") + + her "Professor!" ("mad", "base", "base", "mid", cheeks="blush") + her "How could you say such a thing!?" ("open", "happyCl", "base", "mid", cheeks="blush") + ton "Yes... Such a rude thing to say to your staff. {heart}" ("soft", "narrow", "annoyed", "mid", hair="horny") + gen "I'm a man of simple truths, I'm only stating the obvious." ("base", xpos="far_left", ypos="head") + ton "So my current attire is too slutty for you, *huh*?" ("base", "narrow", "base", "L", hair="horny") + gen "I didn't say that, Miss Tonks..." ("grin", xpos="far_left", ypos="head") + gen "I said you look like a slut... There's a difference." ("grin", xpos="far_left", ypos="head") + her "What if a student saw you professor?! You can't walk around the castle wearing... This!" ("angry", "narrow", "base", "down", cheeks="blush") + ton "Quit worrying. Nobody is going to see me this late at night." ("open", "narrow", "base", "R") + ton "After all, it's already past curfew..." ("open", "base", "base", "mid") + ton "Students should be in their beds, including you, Miss Granger." ("soft", "base", "raised", "L") + her "But professor Dumbledore asked me to--" ("clench", "squint", "base", "mid", cheeks="blush") + ton "You just head back to bed, and I'll make sure Miss Lovegood gets back safe and sound to her dormitory..." ("base", "narrow", "base", "L") + her "Okay..." ("disgust", "narrow", "base", "down", cheeks="blush") #annoyed + ton "Good girl." ("horny", "narrow", "base", "L") + + call her_walk("door") + + her "Good night then..." ("normal", "squint", "base", "R", cheeks="blush", xpos="base", ypos="base") #annoyed, flipped + ton "Sleep tight, Miss Granger..." ("horny", "narrow", "base", "R", xpos=400, ypos="base", trans=dissolve) # Tongue in cheek + + call her_walk(action="leave") + + # Tonks should maybe talk to Genie about the situation some more here. + + ton "Very well then..." ("soft", "narrow", "raised", "L", xpos="base", ypos="base", trans=dissolve) + ton "Come on, Miss Lovegood, let's get you back to bed..." ("open", "narrow", "base", "L") + + #Tonks walks to the door + + lun "But I'm not tired mummy..." ("annoyed", "closed", "base", "mid", trans=dissolve) + ton "..." ("disgust", "shocked", "base", "mid", hair="horny", cheeks="blush") #wide eyed + gen "What a weirdo..." ("base", xpos="far_left", ypos="head") + ton "Just...{w=0.4} be a good girl and follow me back to bed..." ("upset", "narrow", "worried", "L") + lun "Yes, mummy..." ("base", "closed", "base", "mid") + + call lun_walk("door") + + ton "Don't worry about her, she'll be fine." ("annoyed", "narrow", "base", "downR") + gen "I won't." ("base", xpos="far_left", ypos="head") + + call ton_walk("door", action="leave") + call lun_walk(action="leave") + + call bld + gen "This place never ceases to amaze me..." ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "At least that weirdo isn't my problem anymore..." ("base", xpos="far_left", ypos="head") + gen "Time to get back to sleep." ("base", xpos="far_left", ypos="head") + + # Reset + $ luna.equip(lun_outfit_last) # Equip player outfit. + $ tonks.equip(ton_outfit_last) # Equip player outfit. + $ hermione.equip(her_outfit_last) # Equip player outfit. + + $ hermione_chibi.zorder = 3 + $ luna_chibi.zorder = 3 + + call unlock_clothing(text=">New clothing items for Tonks have been unlocked!", item=ton_outfit_dressing_gown) + call unlock_clothing(text=">New clothing items for Hermione have been unlocked!", item=her_outfit_pajama) + + jump day_start + +### Event 2 ### + +label luna_intro_E2: + + # Setup + $ lun_outfit_last.save() + + $ luna.equip(lun_outfit_default_quirky) + + #Next morning + #Luna knocks on door + stop music fadeout 1.0 + call play_sound("knocking") + "*knock-knock-knock*" + + gen "Who is it?" ("base", xpos="far_left", ypos="head") + lun "Luna." + gen "Who?" ("base", xpos="far_left", ypos="head") + lun "Luna Lovegood, Sir." + gen "Love... good?" ("base", xpos="far_left", ypos="head") + lun "Yes!" + gen "(I don't remember ordering any foreign prostitutes...)" ("base", xpos="far_left", ypos="head") + gen "(Maybe Snape has finally sent one of his Slytherin whores.)" ("grin", xpos="far_left", ypos="head") + + menu: + "-Invite them in-": + $ luna_intro_E2 = True + gen "Enter!" ("grin", xpos="far_left", ypos="head") + + "\"I'm busy!\"": + gen "Come back tomorrow." ("base", xpos="far_left", ypos="head") + lun "Oh, okay." + lun "I'll come back tomorrow then." + $ ll_event_pause += 1 + + jump end_luna_event + + call lun_walk(action="enter") + pause 0.5 + + gen "{size=-4}Oh... It's miss Loony.{/size}" ("base", xpos="far_left", ypos="head") + call play_music("luna") + #lun "Please don't call me that, Sir.." + #gen "My apologies, child." ("base", xpos="far_left", ypos="head") + #gen "Please come closer." ("base", xpos="far_left", ypos="head") + + call lun_walk("desk") + + lun "" ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=dissolve) + pause 1 + + gen "(Whoa!)" ("angry", xpos="far_left", ypos="head") + gen "(Finally someone who knows how to wear a uniform properly!)" ("grin", xpos="far_left", ypos="head") + gen "(Look at those thighs!)" ("grin", xpos="far_left", ypos="head") + + menu: + "-Jerk off-": + gen "(*Argh*... Screw it...)" ("base", xpos="far_left", ypos="head") + call gen_chibi("jerk_off_behind_desk") + with d3 + ">You drop down your pants and start jerking off." + $ genie_masturbating = True + + "-Behave-": + $ genie_masturbating = False + + if genie_masturbating: + gen "Miss-- *Ah*... Love-good. What can I do you for?" ("grin", xpos="far_left", ypos="head") + else: + gen "Miss Lovegood... What can I help you with?" ("base", xpos="far_left", ypos="head") + + lun "*Hmm*..." ("soft", "narrow", "raised", "downL") + + if genie_masturbating: + call nar("*fap-fap-fap*!") + gen "(Look at the tits on this girl, such a lovely profile!)" ("angry", xpos="far_left", ypos="head") + gen "(And that lush blonde hair! I'd love to wrap it around my dick!)" ("grin", xpos="far_left", ypos="head") + else: + gen "Miss Lovegood?" ("base", xpos="far_left", ypos="head") + + call lun_walk(600, 460) + call lun_chibi(flip=True) + call nar(">Luna absent-mindedly starts looking around your office.") + + if not genie_masturbating: + gen "*Uhh* Hello?" ("base", xpos="far_left", ypos="head") + + call lun_walk("mid", "base") + + gen "(What's wrong with this girl?)" ("base", xpos="far_left", ypos="head") + + if genie_masturbating: + gen "(Whatever. As long as I can beat my meat in peace.)" ("grin", xpos="far_left", ypos="head") + call nar("*fap-fap-fap*") + + call lun_walk("desk", "base") + pause 0.25 + call lun_chibi(flip=True) + with d3 + + $ camera.set_imagepath("lun_intro/") + $ camera.set_image("CG lun_intro luna bendover") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=0.5, pos=(-270, -150), initialize=True) + show screen animatedCG + with fade + + call nar(">Luna turns around and bends down slightly, examining the floor tiles, giving you an eyeful of her round butt without realising.") + + if genie_masturbating: + $ camera.set(zoom=1.1, pos=(-1055, -600), t=2.0) + gen "(Holy shit that ass!)" + call nar("{size=+3}*{b}fap{/b}-fap-{b}fap{/b}*{/size}") + gen "*Ugh*... (I'm getting close.)" + + $ camera.set(zoom=0.5, pos=(-270, -150), t=2.0) + lun "There's such a strange aura in here..." + gen "(Yes! It's the aura of me going crazy for you, you fucking slut!)" + call nar("{size=+3}*{b}fap{/b}-fap-{b}fap{/b}*{/size}") + else: + $ camera.set(zoom=0.5, pos=(-270, -150), t=2.0) + lun "There's such a strange aura in here..." + lun "It's like a big hollow tree..." + gen "(Oh, good...{w=0.4} She's a hippie.)" ("base", xpos="far_left", ypos="head") + + call lun_chibi(flip=False) + + call nar(">Luna finally turns to face you.") + + hide screen animatedCG + with fade + + + if genie_masturbating: + gen "(Yes, yes! You little slut! Here it comes!)" ("angry", xpos="far_left", ypos="head") + call gen_chibi("cum_behind_desk") + call cum_block + lun "Whoa!" ("open", "wide", "base", "downL", trans=dissolve) + call cum_block + lun "There's so much!" ("soft", "wide", "base", "downL") + gen "*Argh*... (And it's all yours...)" ("angry", xpos="far_left", ypos="head") + lun "They're flying everywhere! How impressive!" ("grin", "wide", "base", "stare") + gen "Yes! (All because of you, you silly-hot bimbo!)" ("angry", xpos="far_left", ypos="head") + call cum_block + gen "*Argh*-- {size=-4}fuck!{/size} *heavy panting*" ("angry", xpos="far_left", ypos="head") + call gen_chibi("cum_behind_desk_done") + with d3 + else: + lun "Whoa!" ("open", "wide", "base", "downL", trans=dissolve) + gen "What? Is there something on my face?" ("base", xpos="far_left", ypos="head") + gen "Actually, first of all... What are you even wearing?" ("base", xpos="far_left", ypos="head") # Luna ignores him. + pause 1 + lun "This room is full of them!" ("angry", "wide", "base", "L") + gen "(She ignored my question...)" ("base", xpos="far_left", ypos="head") + gen "Full of what?" ("base", xpos="far_left", ypos="head") + lun "Wrackspurts!" ("soft", "wide", "base", "mid") + gen "Not this again..." ("base", xpos="far_left", ypos="head") + + lun "Why, I've never seen anything like this before, and never so clear..." ("soft", "base", "base", "mid") + + if genie_masturbating: + gen "There's more where that came from." ("grin", xpos="far_left", ypos="head") + lun "So you can see {i}them{/i} too Professor?" ("angry", "wide", "base", "mid") + gen "See what?" ("base", xpos="far_left", ypos="head") + lun "*sigh* Just as expected." ("upset", "narrow", "base", "down") + lun "You could see them if you had one of these." ("grin", "base", "base", "mid") + else: + gen "I can't see anything." ("base", xpos="far_left", ypos="head") + lun "Of course you can't, Professor." ("grin", "closed", "base", "mid") + lun "Because you don't have these!" ("grin", "wink", "base", "mid") + + call nar(">Luna points to the oddly shaped glasses on her nose.") + gen "Those goofy looking glasses?" ("base", xpos="far_left", ypos="head") + gen "Are you planning on winning a masquerade ball or something?" ("base", xpos="far_left", ypos="head") + lun "Don't be fooled by their look professor, these glasses are infused with magic." ("grin", "closed", "base", "mid") + lun "They are called {i}Spectrespecs{/i}!" ("base", "wink", "base", "mid") + + menu: + "\"Spectre-- what?\"": + lun "Spectrespecs!" ("crooked_smile", "happyCl", "base", "mid") + lun "They allow the wielder to see things that are there, but hidden." ("grin", "base", "base", "mid") + gen "And that vapor ware thing on your nose is supposed to help you with that?" ("base", xpos="far_left", ypos="head") + lun "*Uh-huh!*" ("grin", "wink", "base", "mid") + gen "Great..." ("base", xpos="far_left", ypos="head") + + "\"Spectres as in ghosts?\"": + gen "*G-G-Ghe* Ghosts!" ("angry", xpos="far_left", ypos="head") + lun "Well, I don't know about ghosts--" ("open", "base", "base", "down") + gen "Quick, I need to call someone..." ("base", xpos="far_left", ypos="head") + lun "Oh, who you gonna call?" ("soft", "base", "base", "R") + gen "Luigi, he's clearly the superior choice when it comes to fighting ghosts." ("grin", xpos="far_left", ypos="head") + lun "Who, sir?" ("open", "narrow", "raised", "mid") + gen "Who... How do you not know... The inventor of the Luigi board?" ("angry", xpos="far_left", ypos="head") + lun "*Huh*?" ("angry", "base", "worried", "mid") + gen "Never mind." ("base", xpos="far_left", ypos="head") + gen "If not ghosts..." ("base", xpos="far_left", ypos="head") + + "\"The theory of the parable fourth dimensional tuples.\"": + lun "I'm sorry, sir?" ("upset", "narrow", "base", "mid") + gen "*sigh* I'm talking about the four-dimensional space, {size=-1}a mathematical{/size} {size=-2}extension of the concept{/size} {size=-3}of three-dimensional or 3D space.{/size} {size=-5}Three-dimensional space{/size}{size=-7} is the simplest possible abstraction of the observation that one only needs three numbers, called dimensions, to describe the sizes or locations of objects in the everyday world.{/size}{size=-10}For example, the volume of a rectangular box is found by measuring and multiplying its length, width, and height (often labeled x, y, and z)...{/size}" ("base", xpos="far_left", ypos="head") + call blkfade + centered "{size=+7}{color=#cbcbcb}5 minutes later...{/color}{/size}" + call hide_blkfade + gen "...and this is how your glasses work, right?" ("base", xpos="far_left", ypos="head") + lun "I... Maybe?" ("angry", "narrow", "base", "down") # Puzzled + gen "Don't they teach you basic physics in this school?" ("base", xpos="far_left", ypos="head") + gen "No matter." ("base", xpos="far_left", ypos="head") + + gen "What are you seeing in this room exactly?" ("base", xpos="far_left", ypos="head") + lun "Wrackspurts, sir, and lots of them too!" ("soft", "narrow", "base", "mid") + gen "Brackspurts?" ("base", xpos="far_left", ypos="head") + lun "Wrackspurt sir..." ("open", "base", "base", "L") + gen "I see...{w=0.2} *Err* I mean I don't." ("base", xpos="far_left", ypos="head") + gen "(Is she making all this shit up, or am I supposed to know about these things?)" ("base", xpos="far_left", ypos="head") + gen "Well I can't say I've ever come across these whackspurs you speak of." ("base", xpos="far_left", ypos="head") + lun "There's a whole section dedicated to them in {i}the quibbler{/i}, it's a quite fascinating read you know." ("grin", "wink", "base", "mid") + gen "Pretend that I don't know..." ("base", xpos="far_left", ypos="head") + lun "{i}The quibbler{/i} is my daddy's magazine, sir." ("grin", "base", "base", "mid") + gen "So is that why you're here?" ("base", xpos="far_left", ypos="head") + gen "To advertise your fathers magazine?" ("base", xpos="far_left", ypos="head") + gen "Now I must say that's quite bold for a student to just waltz into their headmasters office and shill their--" ("base", xpos="far_left", ypos="head") + lun "Oh... No sir!" ("mad", "narrow", "base", "downL") + lun "I'm just worried that we might have an infestation on our hands and--" ("angry", "closed", "base", "mid") + lun "..." ("angry", "narrow", "base", "down") + #Luna eyes down + pause .5 + call nar(">Luna gives you an uncomfortable look and then turns her gaze to floor.") + gen "An infestation?" ("base", xpos="far_left", ypos="head") + lun "Yes sir. I've come across several swarms of them in a fair few places recently." ("mad", "base", "base", "mid") + lun "They appeared quite docile at first but recently they've started to become quite problematic..." ("angry", "narrow", "base", "down") + gen "Well I sure would love to be able to help Miss Lovegood, but as I said this is the first time I even heard about these things..." ("base", xpos="far_left", ypos="head") + lun "Oh... But you can help, sir!" ("soft", "wide", "base", "mid") + lun "You're the most powerful wizard there is so if anyone could deal with them it'd be you..." ("grin", "narrow", "base", "mid") + gen "Well... I'm not usually the person to brag but..." ("base", xpos="far_left", ypos="head") + gen "I am known to have slung some seriously powerful spells around back in the day..." ("grin", xpos="far_left", ypos="head") + lun "Oh thank you sir, I knew you'd be able to help!" ("grin", "happyCl", "base", "mid") + gen "Why of course, anything for a student in--" ("base", xpos="far_left", ypos="head") + gen "Hold on, I didn't actually say yes yet!" ("angry", xpos="far_left", ypos="head") + lun "So I think what would be best is if you'd read my daddy's magazine..." ("grin", "narrow", "base", "downL") + gen "(Is she even listening?)" ("base", xpos="far_left", ypos="head") + lun "I'm sure once you've read through all of it you'll be able to use your immense knowledge to find a solution..." ("grin", "base", "base", "mid") + gen "Of course!" ("grin", xpos="far_left", ypos="head") + gen "I am all knowing after all!" ("grin", xpos="far_left", ypos="head") + gen "(Or am I? I don't even know anymore...)" ("base", xpos="far_left", ypos="head") + gen "(Wait... She did it again!)" ("angry", xpos="far_left", ypos="head") + lun "Thank you sir..." ("base", "base", "base", "mid") + gen "Now hold on for a second..." ("base", xpos="far_left", ypos="head") + lun "Let me know what you think of the paper once you've read it!" ("grin", "wink", "base", "mid") + gen "What paper?" ("base", xpos="far_left", ypos="head") + lun "The quibbler!" ("soft", "base", "base", "mid") + gen "Oh... right..." ("base", xpos="far_left", ypos="head") + lun "I'll leave you to it then." ("grin", "base", "base", "mid") + gen "You do that..." ("base", xpos="far_left", ypos="head") + + call lun_walk("door", "base") + call lun_chibi(flip=False) + with d3 + + lun "See you later, sir." ("base", "base", "base", "mid", xpos="base", ypos="base", trans=dissolve) + + call lun_walk(action="leave") + + gen "(No wonder Miss Granger called her Loony... Her mind might as well be in another dimension...)" ("base", xpos="far_left", ypos="head") + gen "(Where am I even supposed to get that bloody magazine from?)" ("base", xpos="far_left", ypos="head") + + if not item_store_intro_done: + gen "(*Hmm*... I'm sure someone's bound to have it.)" ("base", xpos="far_left", ypos="head") + gen "(Maybe it's time to look around the castle a bit more...)" ("base", xpos="far_left", ypos="head") + else: + gen "(Well... Hopefully the twins have it in stock...)" ("base", xpos="far_left", ypos="head") + + stop music fadeout 1.0 + + $ luna_unlocked = True + $ achievements.unlock("unlocklun", True) + call popup("{size=-4}You can now summon Luna into your office.{/size}", "Character unlocked!", "interface/icons/head/luna.webp") + + # Reset + $ luna.equip(lun_outfit_last) # Equip player outfit. + call gen_chibi("sit_behind_desk") + + jump end_luna_event diff --git a/game/scripts/characters/luna/events/spectrespecs/fx.rpy b/game/scripts/characters/luna/events/spectrespecs/fx.rpy new file mode 100644 index 00000000..580bd055 --- /dev/null +++ b/game/scripts/characters/luna/events/spectrespecs/fx.rpy @@ -0,0 +1,79 @@ +image spectrevision: + contains: + zoom 0.5 + "images/spectrevision/bg_room.webp" + + contains: + "images/spectrevision/bg1.webp" + align (0.5, 0.5) + zoom 0.55 + subpixel True + + parallel: + linear 2.5 yoffset -10 + linear 2.5 yoffset 10 + repeat + + parallel: + linear 5.0 xoffset 20 + linear 5.0 xoffset -20 + repeat + + contains: + "images/spectrevision/bg2.webp" + align (0.5, 0.5) + zoom 0.52 + subpixel True + + parallel: + linear 2.0 yoffset -10 + linear 2.0 yoffset 10 + repeat + + parallel: + linear 2.0 xoffset 20 + linear 2.0 xoffset -20 + repeat + + parallel: + easein 1.0 alpha 0.2 + easein 1.0 alpha 1.0 + repeat + +image wrackspurt: + "images/spectrevision/wrackspurt_0000.webp" + pause 0.12 + "images/spectrevision/wrackspurt_0001.webp" + pause 0.12 + "images/spectrevision/wrackspurt_0002.webp" + pause 0.12 + "images/spectrevision/wrackspurt_0003.webp" + pause 0.12 + "images/spectrevision/wrackspurt_0004.webp" + pause 0.12 + "images/spectrevision/wrackspurt_0005.webp" + pause 0.12 + repeat + +screen spectrevision(): + zorder 16 + tag spectrevision + + for i in xrange(wrackspurts_count): + add "object" at OBJwrackspurt + + add "spectrevision" + +screen spectrevision_cursor(): + zorder 100 + tag cursor + + $ mpos = renpy.get_mouse_pos() + add "OBJwrackspurtplayer": + at transform: + pos mpos + +init python: + config.per_frame_screens.append("spectrevision_cursor") + +default wrackspurts_count = 0 diff --git a/game/scripts/characters/luna/events/spectrespecs/spectrespecs.rpy b/game/scripts/characters/luna/events/spectrespecs/spectrespecs.rpy new file mode 100644 index 00000000..4cbc07aa --- /dev/null +++ b/game/scripts/characters/luna/events/spectrespecs/spectrespecs.rpy @@ -0,0 +1,376 @@ + + +### Spectrespecs Quest ### + +### Event 1 ### + +label spectrespecs_E1: + + $ spectrespecs_E1 = True + $ ll_event_pause = 1 + + gen "*Hmm* let's see...{w=0.3} Witch weekly...{w=0.3} The Daily Prophet...{w=0.3} Now where is The Quibbler?" ("base", xpos="far_left", ypos="head") + fre "Did you just say..." + twi "{size=+4}The Quibbler?!{/size}" + gen "Yes? Do you not carry it?" ("base", xpos="far_left", ypos="head") + ger "Why on earth would we carry the quibbler?" + gen "I don't know... You tell me." ("base", xpos="far_left", ypos="head") + fre "Sir, that pile of rubbish is full of nothing but conspiracy theories and old wives tales." + ger "No offence but nobody in their right mind reads the quibbler..." + gen "Well as it happens I do intend to read the thing." ("base", xpos="far_left", ypos="head") + ger "{size=-4}We're all doomed...{/size}" + fre "Please don't tell me you take that thing seriously, sir..." + gen "*Err*...{w=0.3} Of course not...{w=0.3} It's work related." ("base", xpos="far_left", ypos="head") + fre "*Oh*... Thank Merlin." + fre "Wait...{w=0.3} Work related?" + fre "What on earth would someone in your position need a copy of the quibbler for?" + gen "..." ("base", xpos="far_left", ypos="head") + ger "Fred...{w=0.4} Don't ask our valued customer such questions." + fre "...{w} It's got something to do with Luna Lovegood right?" + ger "Obviously, Fred... But you don't need to--" + gen "If you have to know... I intend on using it to get a better understanding of what that girl's thought process is like..." ("base", xpos="far_left", ypos="head") + ger "...{w} Well, Good luck with that." + ger "Our sister finds her personality endearing but personally I don't really see any good reason to try and humour her." + gen "(I can think of at least two good reasons...)" ("grin", xpos="far_left", ypos="head") + gen "(Two humongous--{w=0.5} Plump,{w=0.2} squishy...{w=0.3} and...{w=0.8} *Err*...)" ("grin", xpos="far_left", ypos="head") + gen "*Oh*... bouncy--" ("grin", xpos="far_left", ypos="head") + fre "Bouncy, sir?" + gen "What?" ("base", xpos="far_left", ypos="head") + fre "You said--" + gen "Can you get a copy for me or not?" ("base", xpos="far_left", ypos="head") + fre "I...{w=0.4} Yes, I suppose we could..." + fre "Although it'd be simpler if you just had it delivered by owl, we could help you set it up--" + gen "I don't want a subscription to the bloody thing... A copy of the latest issue is enough." ("base", xpos="far_left", ypos="head") + fre "Right..." + ger "*Sigh*... Well, as much as it pains me to make a special order for something like this..." + ger "We'll order a copy and have it ready for you to pick up by tomorrow." + gen "Excellent." ("base", xpos="far_left", ypos="head") + ger "Will that be all, sir?" + gen "Yes, that shall do for today..." ("base", xpos="far_left", ypos="head") + twi "Pleasure doing business with you." + + return + +label spectrespecs_E2_reminder: + $ quibbler_stocked = True + call music_block + gen "(The Twins promised to get me a copy of that {i}Quiver{/i} tabloid, I should probably talk to them.)" ("base", xpos="far_left", ypos="head") + + jump main_room_menu + +label spectrespecs_E2: + + $ spectrespecs_E2 = True + + gen "Boys..." ("base", xpos="far_left", ypos="head") + twi "Professor Dumbledore, sir!" + ger "Your order has been processed and is ready for purchase." + fre "Please don't make us order something like this again, sir..." + fre "Our provider almost fell into the fireplace laughing when we said we wanted a copy of the Quibbler..." + gen "No promises..." ("base", xpos="far_left", ypos="head") + twi "*Sigh*..." + + $ thequibbler_ITEM.unlocked = True + + return + +label spectrespecs_E3: + + $ spectrespecs_E3 = True + + call book_start + + gen "The Rotfang conspiracy... A group of individuals set on taking down the ministry of magic using gum disease..." ("base", xpos="far_left", ypos="head") + with fade + gen "Grooming your beard the proper way...{w=0.4} To properly take care of your beard you first need the right tools, the saliva of the spitting..." ("base", xpos="far_left", ypos="head") + with fade + gen "Crumple-Horned Snorkack Sighting spotted in a small Swedish town..." ("base", xpos="far_left", ypos="head") + with fade + gen "Buy your shungite today at bob Barkins rock emporium..." ("base", xpos="far_left", ypos="head") + with fade + gen "Unfuzz the mystery...{w=0.4} Wrackspurts are invisible creatures that go into your ear, by thinking positive thoughts you can..." ("base", xpos="far_left", ypos="head") + with fade + ">After wasting a massive amount of time, you finally close the magazine." + + call book_end + + gen "Now that was some great beard grooming advice..." ("base", xpos="far_left", ypos="head") + gen "(Wait, why did I read the entire thing?!)" ("angry", xpos="far_left", ypos="head") + gen "(Those twins were right... Who even buys this trash?)" ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(Well, I've read it now so might as well check on Miss Lovegood about this supposed infestation...)" ("base", xpos="far_left", ypos="head") + + $ thequibbler_ITEM.owned = 0 + $ thequibbler_ITEM.used = True + + if game.daytime: + jump night_start + else: + jump day_start + +label spectrespecs_E4: + + $ spectrespecs_E4 = True + + gen "Alright, so I read that ridiculous magazine but I still don't know what the hell those spratters are supposed to be..." ("base", xpos="far_left", ypos="head") + lun "My daddy's magazine is not ridiculous, sir..." ("angry", "base", "annoyed", "mid") + gen "I mean... If he's the one who wrote those articles..." ("base", xpos="far_left", ypos="head") + lun "Our magazine is for the people, by the people!" ("smile", "closed", "base", "mid") + lun "Anyone can submit an article to the quibbler." ("crooked_smile", "base", "base", "mid") + gen "So... He just fact checks it?" ("base", xpos="far_left", ypos="head") + lun "He prints it!" ("grin", "base", "base", "mid") + gen "Well even after reading it I still haven't got the faintest clue what those creatures are supposed to be." ("base", xpos="far_left", ypos="head") + gen "The only thing I learnt is that they go into your ear or something..." ("base", xpos="far_left", ypos="head") + lun "That's right...{w=0.5} At least that is what they're supposed to be doing." ("open", "narrow", "base", "down", cheeks="blush") + + lun "" ("angry", "narrow", "base", "mid", cheeks="blush") + call nar(">Luna gives you another uncomfortable look which she then quickly wipes off her face as she continues...") + + lun "Why don't you have a look for yourself sir, there should've been a pair of spectrespecs in the back of the magazine." ("soft", "base", "base", "mid") + gen "(So the magazine comes with toys as well...{w=0.4} How is she actually taking this trash seriously?)" ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/paper_rustle.ogg") + + gen "*Ngh!" ("base", xpos="far_left", ypos="head") + gen "Why aren't they coming out!" ("base", xpos="far_left", ypos="head") + gen "Hold on... These are cut outs! What year is this?" ("base", xpos="far_left", ypos="head") + lun "The severing charm should--" ("soft", "base", "raised", "mid") + gen "Come here you stupid bird!" ("base", xpos="far_left", ypos="head") + lun "Sir, what are you--" ("angry", "base", "raised", "L") + gen "Lazy thing..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("stand", 225, "base") + with fade + + pause .4 + call gen_walk(path=[(230, 470), (410, 470), (417, 426)]) + + pause .4 + call gen_chibi("stand_alt") + + gen "Bird... Cut these out for me will you?" ("base", xpos="far_left", ypos="head") + lun "Sir I doubt the--" ("mad", "narrow", "base", "L") + faw "*Squawk*!" + + call gen_chibi("grab_high", phoenix_OBJ.xpos, phoenix_OBJ.ypos+365, flip=False) + with d3 + + $ renpy.sound.play("sounds/scissors.ogg") + + pause .8 + + lun "My word..." ("soft", "wide", "base", "mid") + gen "Nice...{w=0.4} I knew there had to be a reason for your existence." ("base", xpos="far_left", ypos="head") + + pause .4 + call gen_chibi("stand", 417, 426, flip=False) + pause .4 + + call gen_walk(path=[(417, 426), (410, 470), (230, 470)]) + call gen_chibi("stand", 225, "base") + call gen_chibi("sit_behind_desk") + with fade + + + gen "Right then... So I just put these silly things on?" ("base", xpos="far_left", ypos="head") + lun "Yes sir... Once you've put them on you should be able to see--" ("grin", "base", "raised", "mid") + + $ wrackspurts_count = 0 + + $ renpy.play('sounds/magic1.ogg') + show layer screens at uvlight + show screen spectrevision + if not renpy.mobile: + show screen spectrevision_cursor + with d9 + + pause 0.5 + ">The world around you starts shifting." + + gen "Gah!" ("angry", xpos="far_left", ypos="head") + gen "(Who brought the UV light?)" ("angry", xpos="far_left", ypos="head") + gen "(My desk looks like a Jackson Pollock painting!)" ("angry", xpos="far_left", ypos="head") + lun "Do you see them?!" ("grin", "wide", "base", "mid") + gen "*Err*... No there's nothing in here... Everything just turned purple..." ("base", xpos="far_left", ypos="head") + lun "But... I'm sure I saw some..." ("clench", "narrow", "base", "mid") + gen "Nope... Absolutely no traces of spurts anywhere that I can see..." ("base", xpos="far_left", ypos="head") + lun "Wrackspurts sir..." ("mad", "narrow", "base", "mid") + gen "(All I see is semen...)" ("base", xpos="far_left", ypos="head") + lun "And I fear in these quantities they've proven themselves to be quite the pain, sir." ("normal", "narrow", "base", "down", cheeks="blush") + gen "(I should probably clean this place one of these days...)" ("base", xpos="far_left", ypos="head") + lun "Sir, I had been hoping that you'd find a solution by reading the magazine because I wasn't sure how to tell you this..." ("open", "narrow", "base", "down", cheeks="blush") + gen "(Although if I had somewhere else to release my seed then this wouldn't be a--)" ("base", xpos="far_left", ypos="head") + + lun "..." ("upset", "closed", "base", "down", cheeks="blush") + ">Through the haze you suddenly notice that Luna is rubbing her thighs together." + gen "(What the--)" ("angry", xpos="far_left", ypos="head") + + gen "What are you doing, Miss Lovegood?" ("base", xpos="far_left", ypos="head") + lun "It's the Wrackspurts sir..." ("clench", "narrow", "base", "down", cheeks="blush") + gen "What?" ("base", xpos="far_left", ypos="head") + + lun "They've been bothering me for months..." ("mad", "narrow", "base", "down", cheeks="blush") + lun "And they're just like \"The Quibbler\" says, except..." ("clench", "closed", "base", "mid", cheeks="blush") + ">You can see Luna is rocking her pelvis as if grinding the air." + lun "Except... It's not my brain they're making fuzzy." ("disgust", "base", "base", "mid", cheeks="blush") + gen "So where exactly is this fuzzy feeling coming from, [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "I... I'm not sure I should say, Sir." ("soft", "narrow", "base", "downR", cheeks="blush") + gen "Then I don't see how I'm supposed to be able to--" ("base", xpos="far_left", ypos="head") + lun "Between my legs, Sir..." ("disgust", "happyCl", "base", "mid", cheeks="blush") + gen "!!!" ("angry", xpos="far_left", ypos="head") + + menu: + "-Start Masturbating-": + pass + "-Don't-": + gen "(As if I'd miss an opportunity like this...)" ("base", xpos="far_left", ypos="head") + + call gen_chibi("jerk_off_behind_desk") + + ">You take your cock out and start stroking it..." + + gen "Nice...{w=0.4} I mean...{w=0.4} That's very unfortunate..." ("grin", xpos="far_left", ypos="head") + gen "Tell me about these spurts... When do they usually bother you?" ("base", xpos="far_left", ypos="head") + + lun "At the most inopportune moments, sir!" ("clench", "narrow", "base", "mid", cheeks="blush") + lun "" ("normal", "narrow", "base", "down", cheeks="blush") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "So what were you doing when it first happened?" ("base", xpos="far_left", ypos="head") + gen "I need to know everything, with as much detail as possible." ("base", xpos="far_left", ypos="head") + lun "I believe it was when one of the Slytherin boys hit me with a tickling charm during potions..." ("disgust", "narrow", "base", "down", cheeks="blush") + lun "A swarm of those pesky little wrackspurts flew right in beneath my skirt and started attacking me." ("angry", "base", "base", "down", cheeks="blush") + lun "Buzzing around between my legs..." ("angry", "base", "base", "down", cheeks="blush") + gen "(Sounds like a well aimed tickling charm to me...)" ("grin", xpos="far_left", ypos="head") + + lun "" ("upset", "narrow", "base", "mid", cheeks="blush") + ">Luna looks up at you again, shifting her legs around slightly." + gen "(This girl's been missing out...)" ("base", xpos="far_left", ypos="head") + lun "But it doesn't make sense, Sir..." ("clench", "closed", "base", "mid", cheeks="blush") + lun "I've only heard of people's brain going fuzzy..." ("clench", "narrow", "base", "mid", cheeks="blush") + lun "The way you're supposed to get rid of them is to think positive thoughts." ("disgust", "base", "base", "R", cheeks="blush") + lun "But this is like an unbearable itch I can't scratch!" ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "(Oh there's a way... You just don't know it yet...)" ("grin", xpos="far_left", ypos="head") + gen "Does this happen often?" ("base", xpos="far_left", ypos="head") + lun "Daily!" ("angry", "closed", "base", "mid", cheeks="blush") + lun "They wouldn't leave me alone during today's flying lessons!" ("open", "narrow", "base", "mid", cheeks="blush") + lun "I wasn't wearing my glasses, but I'm sure I must've flown through a whole swarm of them!" ("soft", "base", "annoyed", "mid", cheeks="blush") + lun "My broom suddenly started shaking during a particularly tense training exercise..." ("mad", "base", "base", "mid", cheeks="blush") + lun "And I could feel that fuzzy sensation build up between my legs again." ("angry", "narrow", "base", "down", cheeks="blush") + gen "(Such a horny slut, just like the lot of them...)" ("angry", xpos="far_left", ypos="head") + lun "This was the first time I had ever come across such a large amount in the open..." ("open", "base", "base", "mid", cheeks="blush") + lun "And no matter how much I wriggled, they wouldn't leave me alone for the remainder of the lesson..." ("disgust", "narrow", "low", "down", cheeks="blush") + ">Luna awkwardly continues to grind her legs together in front of you." + gen "(I bet you enjoyed every second of it...)" ("angry", xpos="far_left", ypos="head") + lun "It was... intense... I could barely keep my broom steady..." ("soft", "closed", "low", "mid", cheeks="blush") + lun "But I didn't want to alarm anyone so I managed to pull through." ("soft", "narrow", "base", "down", cheeks="blush") + lun "But..." ("angry", "base", "base", "down", cheeks="blush") + lun "" ("angry", "base", "base", "mid", cheeks="blush") + ">Luna grinds her legs with even more vigour, as she looks into your eyes." + lun "That feeling sir..." ("mad", "narrow", "base", "mid", cheeks="blush") + lun "It was as if something inside of me was building up... Desperate to come out!" ("open", "wide", "base", "mid", cheeks="blush") + + gen "(That's it slut, you asked for it!)" ("angry", xpos="far_left", ypos="head") + gen "*ARGH*!" ("angry", xpos="far_left", ypos="head") + + call gen_chibi("cum_behind_desk") + call cum_block + + $ wrackspurts_count = 15 + lun "Sir, there they are!" ("clench", "wide", "base", "mid", cheeks="blush") + + call cum_block + $ wrackspurts_count = 25 + gen "Yes, take my spurt!" ("angry", xpos="far_left", ypos="head") + + call cum_block + $ wrackspurts_count = 35 + + pause 1.5 + call gen_chibi("cum_behind_desk_done") + pause .8 + + gen "*Ah...*{w=0.4} *Ah...*{w=0.4} *Ah...*" ("base", xpos="far_left", ypos="head") + lun "I saw them!" ("clench", "wide", "base", "mid") + gen "That was awesome." ("base", xpos="far_left", ypos="head") + lun "There are so many of them now!" ("open", "wide", "base", "mid") + + gen "I can see them!" ("grin", xpos="far_left", ypos="head") + lun "I know! Fascinating creatures, aren't they?" ("grin", "base", "raised", "mid") + gen "*Ha-ha*! Look at those buggers go!" ("grin", xpos="far_left", ypos="head") + + lun "And it's not just in here sir, they're everywhere!" ("open", "base", "annoyed", "mid") + lun "The dungeons are full of them!" ("open", "base", "annoyed", "mid") + + $ renpy.play('sounds/magic1.ogg') + show layer screens + hide screen spectrevision + hide screen spectrevision_cursor + with d9 + + ">You quickly remove your glasses and Luna shifts into focus." + + gen "The dungeons you say?" ("base", xpos="far_left", ypos="head") + lun "Yes, the potions classroom especially!" ("clench", "base", "base", "mid") + gen "(How doesn't that surprise me...)" ("base", xpos="far_left", ypos="head") + gen "What about Miss Tonks' classroom?" ("base", xpos="far_left", ypos="head") + lun "It's even worse than the dungeons!" ("soft", "wide", "base", "mid") + gen "Really?" ("angry", xpos="far_left", ypos="head") + lun "Yes... They're everywhere..." ("clench", "base", "base", "mid") + lun "On the desks... On the floor..." ("mad", "base", "base", "mid") + + lun "..." ("normal", "base", "base", "down") + call nar(">Luna shifts her legs again, staring at her feet...") + + gen "Oh my..." ("grin", xpos="far_left", ypos="head") + lun "On the railing going up to professor Tonks' office..." ("clench", "base", "base", "down") + gen "On the railing too!?" ("grin", xpos="far_left", ypos="head") + lun "Yes! I swear I even saw some on Tonks's face!" ("open", "wide", "base", "mid") + gen "On her--" ("grin", xpos="far_left", ypos="head") + lun "You have to help, sir!" ("mad", "happyCl", "base", "mid") + lun "Please, if what I fear is true then it's not just me being bothered by them..." ("angry", "narrow", "base", "mid") + gen "Well... Alright then..." ("base", xpos="far_left", ypos="head") + + lun "You'll do it?" ("clench", "base", "base", "mid") + gen "I'll for sure do something..." ("base", xpos="far_left", ypos="head") + lun "Oh, thank you, Sir!" ("smile", "happyCl", "base", "mid") + + gen "But you're going to have to help me, Miss Lovegood." ("base", xpos="far_left", ypos="head") + lun "Me? Why me?" ("soft", "base", "base", "mid") + gen "I thought you wanted to help?" ("base", xpos="far_left", ypos="head") + lun "Yes but I thought...{w=0.4} *Ehm*...{w=0.4} Usually people don't really include me in these sorts of things." ("soft", "narrow", "base", "downR") + + call nar(">Luna glances away again, and you notice a glimpse of doubt in her eyes for a brief moment.") + + gen "Most certainly Miss Lovegood... You have the most experience with these things after all..." ("base", xpos="far_left", ypos="head") + gen "But if you don't want to be involved then--" ("base", xpos="far_left", ypos="head") + lun "No!" ("angry", "wide", "base", "mid", cheeks="blush") + + call nar("Luna locks her eyes with you as she rubs her legs together once more.") + + lun "I...{w=0.4} just didn't think--" ("angry", "base", "base", "down", cheeks="blush") + lun "Of course, sir! I'll do anything that will help me deal with this..." ("open", "narrow", "base", "mid", cheeks="blush") + gen "Excellent." ("base", xpos="far_left", ypos="head") + gen "Then I shall let you know once I need your assistance." ("base", xpos="far_left", ypos="head") + lun "Yes sir... Thank you sir." ("base", "base", "base", "mid", cheeks="blush") + gen "On your way now, Miss Lovegood." ("base", xpos="far_left", ypos="head") + lun "Oh... Right..." ("grin", "base", "base", "R", cheeks="blush") + + call lun_walk("door", "base") + pause .5 + lun "(I can't believe \"The\" Albus Dumbledore is asking for my assistance...)" ("base", "base", "base", "down", flip=True) + lun "(I never would've thought.)" ("base", "base", "base", "downL") + gen "(Damn... Her ass looks so good.)" ("base", xpos="far_left", ypos="head") + + call lun_walk(action="leave") + + gen "(Hopefully I haven't said yes to crazy...)" ("base", xpos="far_left", ypos="head") + gen "(...{w=0.5}Although the blowjobs might be worth it...)" ("base", xpos="far_left", ypos="head") + + call popup("You have unlocked the ability to buy sexual favours from Luna.", "Congratulations!", "interface/icons/head/luna.webp") + + $ luna_wardrobe_unlocked = True + $ luna_favors = True + + call gen_chibi("sit_behind_desk") + + jump end_luna_event diff --git a/game/scripts/characters/luna/favors.rpy b/game/scripts/characters/luna/favors.rpy new file mode 100644 index 00000000..85d97a9b --- /dev/null +++ b/game/scripts/characters/luna/favors.rpy @@ -0,0 +1,71 @@ + +# Personal favours +default ll_pf_talk = event_class( + title = "Talk to me!", + start_label = "ll_pf_talk", + start_tier = 1, + events = [ + [# Tier 1 + ["ll_pf_talk_T1_E1_intro"], + ["ll_pf_talk_T1_E2_intro"], + ["ll_pf_talk_T1_E3_intro"], + ["ll_pf_talk_T1_E4_repeat"], + ], + + [# Tier 2 + ["ll_pf_talk_T2_E1_repeat"], + ], + + [# Tier 3 + ["ll_pf_talk_T3_E1_repeat"], + ], + ], + iconset = [ + ["heart_empty", "heart_red"], # Tier 1 + ["heart_empty", "heart_red"], # Tier 2 + ], +) + +default ll_pf_inspect = event_class( + title = "Inspect her body!", + start_label = "ll_pf_inspect", + start_tier = 2, + events = [ + [# Tier 2 + ["ll_pf_inspect_T2_E1_intro"], + ["ll_pf_inspect_T2_E2_intro"], + ["ll_pf_inspect_T2_E3_intro"], + ["ll_pf_inspect_T2_E4_repeat"], + ], + + [# Tier 3 + ["ll_pf_inspect_T3_E1_repeat"], + ], + ], + iconset = [ + ["heart_empty", "heart_red"], # Tier 2 + ], +) + +default ll_pf_masturbate = event_class( + title = "Play with yourself!", + start_label = "ll_pf_masturbate", + start_tier = 3, + events = [ + [# Tier 3 + ["ll_pf_masturbate_T3_E1_intro"], + ["ll_pf_masturbate_T3_E2_intro"], + ["ll_pf_masturbate_T3_E3_intro"], + ["ll_pf_masturbate_T3_E4_repeat"], + ], + ], + iconset = [ + ["heart_empty", "heart_red"], # Tier 3 + ], +) + +default ll_favor_list = [ + ll_pf_talk, + ll_pf_inspect, + ll_pf_masturbate, +] diff --git a/game/scripts/characters/luna/gifts.rpy b/game/scripts/characters/luna/gifts.rpy new file mode 100644 index 00000000..b6b2a42a --- /dev/null +++ b/game/scripts/characters/luna/gifts.rpy @@ -0,0 +1,135 @@ +# Luna Gift Responses + +label give_lun_gift(gift_item): + hide luna_main + with d5 + lun "" (xpos="mid",ypos="base",trans=d5) + + $ gave_luna_gift = True + + if gift_item == lollipop_ITEM: + lun "A lollipop?" + call give_gift(">You give the lollipop to Luna...", gift_item) + lun "My father always believed that you should always have something sugary around in case any baby unicorns come to visit." + lun "Thank you, [lun_genie_name]." + + elif gift_item == chocolate_ITEM: + lun "Chocolate?" + call give_gift(">You give the chocolate to Luna...", gift_item) + lun "*Aaah*, I heard these helps with dementia... Or was it Dementors?" + + elif gift_item == plush_owl_ITEM: + lun "A plush owl?" + call give_gift(">You give the owl plushie to Luna...", gift_item) + lun "I love owls... Always had a few around me growing up, delivering the newspaper my father publishes." + + elif gift_item == butterbeer_ITEM: + lun "Butterbeer?" + call give_gift(">You give the bottle to Luna...", gift_item) + lun "How did you know? I didn't wear my cork necklace today." + lun "Thank you, [lun_genie_name]." + + elif gift_item == science_mag_ITEM: + lun "Magical creatures weekly?" + call give_gift(">You give an assortment of educational magazines to Luna...", gift_item) + lun "Thestrals and their link with death..." + lun "Interesting..." + + elif gift_item == girls_mag_ITEM: + call give_gift(">You give the girls magazine to Luna...",gift_item) + #Add text + + elif gift_item == adult_mag_ITEM: + call give_gift(">You give the adult magazine to Luna...",gift_item) + #Add text + + elif gift_item == porn_mag_ITEM: + call give_gift(">You give the porn magazine to Luna...",gift_item) + #Add text + + elif gift_item == krum_poster_ITEM: + call give_gift(">You give the poster to Luna...",gift_item) + #Add text + + elif gift_item == sexy_lingerie_ITEM: + call give_gift(">You give the lingerie to Luna...",gift_item) + #Add text + + elif gift_item == sexy_stockings_ITEM : + call give_gift(">You give the stockings to Luna...",gift_item) + #Add text + + elif gift_item == pink_condoms_ITEM: + call give_gift(">You give the condoms to Luna...",gift_item) + #Add text + + elif gift_item == vibrator_ITEM: + call give_gift(">You give the vibrator to Luna...",gift_item) + #Add text + + elif gift_item == anal_lube_ITEM: + call give_gift(">You give the anal lube to Luna...",gift_item) + #Add text + + elif gift_item == ballgag_and_cuffs_ITEM: + call give_gift(">You give the handcuffs to Luna...",gift_item) + #Add text + + elif gift_item == anal_plugs_ITEM: + call give_gift(">You give the anal plugs to Luna...",gift_item) + #Add text + + elif gift_item == testral_strapon_ITEM: + call give_gift(">You give the strap-on to Luna...",gift_item) + #Add text + + elif gift_item == broom_2000_ITEM: + call give_gift(">You give the broom to Luna...",gift_item) + #Add text + + elif gift_item == sexdoll_ITEM: + call give_gift(">You give the doll to Luna...",gift_item) + #Add text + + elif gift_item == anal_beads_ITEM: + call give_gift(">You give the anal beads to Luna...",gift_item) + #Add text + + elif gift_item == wine_ITEM: + call give_gift(">You give the wine to Luna...", gift_item) + #Add text + + elif gift_item == firewhisky_ITEM: + call give_gift(">You give the firewhisky to Luna...", gift_item) + #Add text + + lun "" (xpos="base",ypos="base") + hide luna_main + with d5 + + return + +label lun_mood(value=0): + show screen blktone + with d3 + + if value > 0: + if value == 1: + "Luna's mood worsened slightly." + else: + "Luna's mood just got a whole lot worse!" + elif value < 0: + if value == -1: + "Luna's mood has improved slightly." + else: + "Luna's mood has improved significantly." + else: + "Luna's mood hasn't changed." + + $ was_negative = lun_mood > 0 + $ lun_mood = max(min(lun_mood+value, 100), 0) + + call describe_mood_after_gift(was_negative, lun_mood, value) + + hide screen blktone + return diff --git a/game/scripts/characters/luna/summon.rpy b/game/scripts/characters/luna/summon.rpy new file mode 100644 index 00000000..5b0906c5 --- /dev/null +++ b/game/scripts/characters/luna/summon.rpy @@ -0,0 +1,331 @@ + +label summon_luna: + + $ active_girl = "luna" + $ last_character = "luna" + + $ luna_busy = True + + call update_luna + call update_lun_tier + + call play_music("luna") + call play_sound("door") + call lun_chibi("stand","mid","base") + with d3 + + lun "[lun_genie_name]..." ("base", "base", "base", "mid", xpos="base", ypos="base") + + if spectrespecs_E3 and not spectrespecs_E4: + jump spectrespecs_E4 + + label luna_requests: + + # Reset + call reset_menu_position + lun "" (xpos="base",ypos="base") + + menu: + + # Talk + "-Talk-" (icon="interface/icons/small/talk.webp"): + if lun_mood > 0: + lun "I have nothing to say to you sir..." + jump luna_requests + + call luna_chitchat + jump luna_talk + + # Personal Favors + "-Sexual Favours-" (icon="interface/icons/small/condom.webp") if luna_favors: + jump luna_favor_menu + + "-Sexual Favours-" (style="disabled") if not luna_favors: + call nar(">You haven't unlocked this feature yet.") + jump luna_requests + + # Wardrobe + "-Wardrobe-" (icon="interface/icons/small/wardrobe.webp") if luna_wardrobe_unlocked: + hide astoria_main with d1 + call wardrobe + jump luna_requests + + "-Wardrobe-" (style="disabled") if not luna_wardrobe_unlocked: + call nar(">You haven't unlocked this feature yet.") + jump luna_requests + + "-Give Item-" (icon="interface/icons/small/gift.webp"): + $ TBA_message() + jump luna_requests + + # hide luna_main with d1 + # call gift_menu + # jump luna_requests + + # Dismiss + "-Dismiss her-": + stop music fadeout 3.0 + + if game.daytime: + if lun_mood >= 3: + lun "Good day..." + else: + lun "Sure thing, [lun_genie_name]. I will head to class." + else: + if lun_mood >= 3: + lun "Good night..." + else: + lun "Sure thing, good night [lun_genie_name]." + + jump end_luna_event + +label update_lun_tier: + if lun_tier == 1 and lun_whoring >= 3: + if not ll_pf_talk.is_event_complete(1, 3): + return + + $ lun_level_up = 1 + elif lun_tier == 2 and lun_whoring >= 6: + if not ll_pf_inspect.is_event_complete(2, 3): + return + $ lun_level_up = 2 + elif lun_tier == 3 and lun_whoring >= 9: + # T4 NOT AVAILABLE + return + + if not ll_pf_masturbate.is_event_complete(3, 3): + return + + $ lun_level_up = 3 + elif lun_tier == 4 and lun_whoring >= 13: + # T5 NOT AVAILABLE + return + + # Requirement: Tier 4 - Blow me T4 E3 + $ lun_level_up = 4 + return + +label luna_level_up(tier=None): + + call bld + if tier == 1: + gen "(I think it's about time to give her a proper inspection...)" ("base", xpos="far_left", ypos="head") + elif tier == 2: + gen "(Let's see if she's ready for some self-care...)" ("base", xpos="far_left", ypos="head") + elif tier == 3: + gen "(I wonder if she'll be able to get the spurts out with her mouth...)" ("base", xpos="far_left", ypos="head") + elif tier == 4: + gen "(Getting the spurts out of two people at the same time...)" ("base", xpos="far_left", ypos="head") + gen "(Now that's going to require some careful timing!)" ("grin", xpos="far_left", ypos="head") + + $ lun_tier = tier+1 + $ lun_level_up = None + $ lun_mood = 0 + + pause.5 + call nar(">Luna has reached {i}favour tier{/i} "+str(lun_tier)+"!") + + call update_lun_tier + + return + +# Luna Favor Menu +label luna_favor_menu: + call update_luna_favors + + menu: + "-Level Up-" (icon="interface/icons/small/levelup.webp") if lun_level_up != None: + call luna_level_up(tier=lun_level_up) + jump luna_favor_menu + + "-Personal Favours-" (icon="interface/icons/small/heart_red.webp"): + call tutorial("hearts") + + label .personal: + python: + menu_choices = [] + for i in ll_favor_list: + if i in []: # Not in the game yet. + menu_choices.append(gui.menu_item("-Not available-", "na", style="disabled")) + elif i.start_tier > lun_tier: + menu_choices.append(gui.menu_item("-Not Ready-", "vague", style="disabled")) + else: + menu_choices.append(i.get_menu_item()) + + menu_choices.append(("-Never mind-", "nvm")) + result = renpy.display_menu(menu_choices) + + if result == "nvm": + jump luna_favor_menu + elif result == "vague": + call favor_not_ready + jump .personal + elif result == "na": + call not_available + jump .personal + else: + $ renpy.jump(result) + + "-Public Requests-" (icon="interface/icons/small/star_yellow.webp", style="disabled"): + call not_available + jump luna_favor_menu + + "-Never mind-": + jump luna_requests + +label update_luna_favors: + python: + for i in ll_favor_list: + i.tier = lun_tier + return + +label luna_talk: + # General. + menu: + "-Ask her to cheer for Ravenclaw-" if cho_quid.gryffindor_failed and not cho_quid.E11_complete: + jump cho_quid_E11 + + "-Address me only as-" if spectrespecs_E4: + menu: + "-Sir-": + $ lun_genie_name = "Sir" + "-Dumbledore-": + $ lun_genie_name = "Dumbledore" + "-Professor-": + $ lun_genie_name = "Professor" + "-Partner-": + $ lun_genie_name = "Partner" + "-Master-" if lun_tier >= 2: + $ lun_genie_name = "Master" + "-Daddy-" if lun_tier >= 2: + $ lun_genie_name = "Daddy" + "-Custom Input-" if lun_tier >= 3: + $ lun_genie_name = renpy.input("(Please enter the name.)", lun_genie_name, ALLOWED_CHARACTERS, length=14).strip() or "Professor" + "-Never mind-": + jump luna_talk + + jump genie_luna_change + + "-From now on I will refer to you as-" if spectrespecs_E4: + menu: + "-Miss Lovegood-": + $ luna_name = "Miss Lovegood" + "-Luna-": + $ luna_name = "Luna" + "-Loony-": + $ luna_name = "Loony" + "-Girl-": + $ luna_name = "Girl" + "-Partner-": + $ luna_name = "Partner" + "-Bimbo-" if lun_tier >= 2: + $ luna_name = "Bimbo" + "-Minx-" if lun_tier >= 3: + $ luna_name = "Minx" + "-Cumslut-" if lun_tier >= 5: + $ luna_name = "Cumslut" + "-Custom Input-" if lun_tier >= 3: + $ luna_name = renpy.input("(Please enter the name.)", luna_name, ALLOWED_CHARACTERS, length=14).strip() or "Miss Lovegood" + "-Never mind-": + jump luna_talk + + jump luna_name + + "-Never mind-": + jump luna_requests + +label genie_luna_change: + # NickName responses + if lun_genie_name == "Sir": + lun "Certainly, [lun_genie_name]." ("base", "base", "base", "mid") + elif lun_genie_name == "Dumbledore": + lun "You want me to call you by your last name?" ("annoyed", "narrow", "base", "mid") + gen "Is that going to be a problem?" ("base", xpos="far_left", ypos="head") + lun "Of course not [lun_genie_name]..." ("angry", "base", "base", "mid") + lun "[lun_genie_name]..." ("angry", "base", "base", "downL") + lun "Don't think I've ever heard anyone call you just [lun_genie_name] before..." ("grin", "base", "base", "mid") + elif lun_genie_name == "Professor": + lun "Yes, [lun_genie_name]." ("base", "base", "base", "mid") + elif lun_genie_name == "Partner": + lun "[lun_genie_name]?" ("soft", "base", "raised", "mid") + gen "Yes, we're working together now so it's only appropriate." ("base", xpos="far_left", ypos="head") + lun "Oh... Of course [lun_genie_name]." ("grin", "base", "base", "mid") + elif lun_genie_name == "Master": + lun "[lun_genie_name]?" ("soft", "narrow", "base", "mid") + lun "What are you a [lun_genie_name] of exactly?" ("angry", "base", "base", "mid") + if lun_tier >= 3: + gen "A master baiter!" ("grin", xpos="far_left", ypos="head") + lun "Oh, right!" ("smile", "base", "base", "mid") + lun "Thank you for allowing me to be your pupil, [lun_genie_name]." ("base", "base", "base", "mid") + else: + gen "*Err*...{w=0.4} Of the arts?" ("base", xpos="far_left", ypos="head") + lun "What arts?" ("angry", "narrow", "base", "mid") + gen "Avoiding confrontation." ("base", xpos="far_left", ypos="head") + lun "*Huh*?" ("mad", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + lun "..." ("annoyed", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + lun "Sir?" ("soft", "narrow", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + lun "[lun_genie_name]?" ("open", "base", "base", "mid") + gen "That's me." ("base", xpos="far_left", ypos="head") + lun "Okay, I'll call you [lun_genie_name] from now on." ("soft", "base", "base", "mid") + gen "(Another confrontation expertly avoided...)" ("base", xpos="far_left", ypos="head") + elif lun_genie_name == "Daddy": + lun "[lun_genie_name]?" ("open", "narrow", "base", "mid") + gen "Yes..." ("base", xpos="far_left", ypos="head") + lun "But wont that be confusing?" ("annoyed", "narrow", "base", "mid") + gen "Would it?" ("base", xpos="far_left", ypos="head") + lun "Yes, that's usually what I call my father..." ("open", "base", "base", "R") + gen "I'm your daddy now..." ("base", xpos="far_left", ypos="head") + lun "*Huh*?" ("angry", "base", "base", "mid") + gen "Call me daddy you naughty girl!" ("angry", xpos="far_left", ypos="head") + lun "Oh...{w=0.3} Yes, I'm sorry [lun_genie_name]!" ("angry", "happyCl", "base", "mid") + else: #custom/fallback + lun "Okay, I'll call you [lun_genie_name] from now on..." ("base", "base", "base", "mid") + jump luna_talk + +label luna_name: + # NickName responses + if luna_name == "Miss Lovegood": + lun "Of course, [lun_genie_name]." ("base", "wink", "base", "mid") + elif luna_name == "Luna": + lun "But that's my first name!" ("angry", "base", "base", "mid") + gen "So?" ("base", xpos="far_left", ypos="head") + lun "Isn't it against the law?" ("mad", "narrow", "base", "mid") + gen "... Is what against the law?" ("base", xpos="far_left", ypos="head") + lun "Teachers and students calling each other by their first name. I read an article about it in the quibbler." ("angry", "narrow", "raised", "mid") + gen "*Err*... No they recently made it legal." ("base", xpos="far_left", ypos="head") + lun "Oh, How progressive!" ("soft", "base", "base", "stare") + lun "Then of course, you can call me that!" ("smile", "base", "base", "mid") + elif luna_name == "Loony": + lun "Do you really need to call me that, [lun_genie_name]?" ("upset", "base", "base", "mid") + lun "Other students call me that to make fun of me." ("upset", "base", "base", "R") + gen "I like it." ("grin", xpos="far_left", ypos="head") + lun "Alright then..." ("annoyed", "base", "base", "mid") + elif luna_name == "Girl": + lun "Just [luna_name]?" ("soft", "base", "raised", "mid") + gen "Yep." ("base", xpos="far_left", ypos="head") + lun "Alright, I suppose I am a girl after all." ("grin", "narrow", "base", "mid") + elif luna_name == "Partner": + lun "[luna_name]?" ("soft", "base", "base", "mid") + gen "Yes, we're partners in venture are we not?" ("base", xpos="far_left", ypos="head") + lun "Oh right!" ("angry", "base", "base", "mid") + lun "Of course, you can call me that!" ("grin", "base", "base", "mid") + elif luna_name == "Bimbo": + lun "A what?" ("soft", "base", "base", "mid") + gen "A Bimbo..." ("base", xpos="far_left", ypos="head") + lun "Oh... Okay..." ("base", "base", "base", "mid") + gen "(...{w} Maybe she doesn't know what that means...)" ("base", xpos="far_left", ypos="head") + elif luna_name == "Minx": + lun "A mink?" ("soft", "base", "base", "mid") + gen "No, a--" ("base", xpos="far_left", ypos="head") + lun "I love minks!" ("smile", "wide", "base", "mid") + gen "...{w=0.3} Great." ("base", xpos="far_left", ypos="head") + elif luna_name == "Cumslut": + lun "Well I do love helping you cum..." ("grin", "narrow", "base", "downL") + lun "Sure, you can call me that." ("grin", "base", "base", "mid") + else: #Custom/fallback + lun "That's not too bad... Sure you can call me that." ("base", "base", "base", "mid") + + jump luna_talk diff --git a/game/scripts/characters/luna/vars.rpy b/game/scripts/characters/luna/vars.rpy new file mode 100644 index 00000000..118cde65 --- /dev/null +++ b/game/scripts/characters/luna/vars.rpy @@ -0,0 +1,31 @@ + +# Stats +default lun_tier = 1 +default lun_whoring = 0 +default lun_mood = 0 +default lun_jerk_off_counter = 0 + +# Flags +default luna_busy = False +default luna_unlocked = False +default luna_favors = False +default luna_wardrobe_unlocked = False +default luna_outfits_schedule = True +default lun_level_up = None + +# Intro +default luna_intro_E1 = False +default luna_intro_E2 = False + +# Spectrespecs event +default spectrespecs_E1 = False +default spectrespecs_E2 = False +default spectrespecs_E3 = False +default spectrespecs_E4 = False +default quibbler_stocked = False + +# Names +default lun_genie_name = "Professor" +default luna_name = "Miss Lovegood" + +default gave_luna_gift = False diff --git a/game/scripts/characters/luna/wardrobe.rpy b/game/scripts/characters/luna/wardrobe.rpy new file mode 100644 index 00000000..9cd96626 --- /dev/null +++ b/game/scripts/characters/luna/wardrobe.rpy @@ -0,0 +1,271 @@ +############### +## Character ## +############### + +default luna = Doll(name="luna", + clothes={"headgear": [None, 15, True], + "hair": [None, 4, True], + "glasses": [None, 12, True], + "earrings": [None, 14, True], + "neckwear": [None, 11, True], + "robe": [None, 28, True], + "gloves": [None, 21, True], + "top": [None, 15, True], + "bra": [None, 9, True], + "bottom": [None, 8, True], + "garterbelt": [None, 7, True], + "panties": [None, 6, True], + "stockings": [None, 5, True], + "buttplug": [None, -1, True], + "pubes": [None, 3, True], + "tattoo0": [None, 1, True], + "tattoo1": [None, 1, True], + "tattoo2": [None, 1, True], + "tattoo3": [None, 1, True], + "tattoo4": [None, 1, True], + "piercing0": [None, 2, True], + "piercing1": [None, 2, True], + "piercing2": [None, 2, True], + "piercing3": [None, 2, True], + "piercing4": [None, 2, True], + "accessory0": [None, 12, True], + "accessory1": [None, 12, True], + "accessory2": [None, 12, True], + "accessory3": [None, 12, True], + "accessory4": [None, 12, True], + "makeup0": [None, 3, True], + "makeup1": [None, 3, True], + "makeup2": [None, 3, True], + "makeup3": [None, 3, True], + "makeup4": [None, 3, True]}, + face={"tears": [None, 12, True], + "cheeks": [None, 7, True], + "eyebrows": ["base", 11, True], + "eyes": ["base", 8, True], + "pupils": ["mid", 9, True], + "mouth": ["base", 13, True]}, + body={"armleft": ["up", 3], + "armright":["up", 1], + "base": ["front", 0], + "breasts": ["normal", 2]}) + +####################### +## Schoolgirl Outfit ## +####################### + +default lun_hair_base = DollCloth("luna", ("head", "hair"), "hair", "base", [[237, 224, 195, 255], [191, 164, 107, 255], [48, 144, 135, 255]], unlocked=True) +default lun_hair_wand = DollCloth("luna", ("head", "hair"), "hair", "wand", [[237, 224, 195, 255], [191, 164, 107, 255], [48, 144, 135, 255]], unlocked=True) + +################ +## Schoolgirl ## +################ + +default lun_top_school1 = DollCloth("luna", ("upper body", "shirts"), "top", "top_school_1", [[183, 183, 184, 255], [109, 105, 121, 255], [89, 116, 194, 255], [216, 163, 10, 255]], unlocked=True) +default lun_top_school2 = DollCloth("luna", ("upper body", "shirts"), "top", "top_school_2", [[183, 183, 184, 255], [109, 105, 121, 255], [89, 116, 194, 255], [216, 163, 10, 255]], unlocked=True) +default lun_top_school3 = DollCloth("luna", ("upper body", "shirts"), "top", "top_school_3", [[183, 183, 184, 255], [109, 105, 121, 255], [89, 116, 194, 255], [216, 163, 10, 255]], unlocked=True) +default lun_top_school4 = DollCloth("luna", ("upper body", "shirts"), "top", "top_school_4", [[183, 183, 184, 255], [89, 116, 194, 255], [216, 163, 10, 255]], unlocked=True) +default lun_top_vest = DollCloth("luna", ("upper body", "shirts"), "top", "top_school_vest", [[109, 105, 121, 255], [89, 116, 194, 255], [216, 163, 10, 255]], unlocked=True, level=4) +default lun_top_school5 = DollCloth("luna", ("upper body", "shirts"), "top", "top_school_5", [[183, 183, 184, 255], [89, 116, 194, 255], [216, 163, 10, 255]], unlocked=True, level=4) +default lun_top_school6 = DollCloth("luna", ("upper body", "shirts"), "top", "top_school_6", [[183, 183, 184, 255], [89, 116, 194, 255], [216, 163, 10, 255]], unlocked=True, level=5) +default lun_top_crop = DollCloth("luna", ("upper body", "shirts"), "top", "top_school_crop", [[183, 183, 184, 255], [89, 116, 194, 255], [216, 163, 10, 255]], unlocked=True, level=7) +default lun_neckwear_tie = DollCloth("luna", ("head", "neckwear"), "neckwear", "tie", [[89, 116, 194, 255], [216, 163, 10, 255]], unlocked = True, zorder=16) # Tie Only + +default lun_bottom_school1 = DollCloth("luna", ("lower body", "skirts"), "bottom", "school_skirt_1", [[103, 90, 108, 255], [232, 177, 13, 255]], unlocked=True) +default lun_bottom_school2 = DollCloth("luna", ("lower body", "skirts"), "bottom", "school_skirt_2", [[103, 90, 108, 255], [232, 177, 13, 255]], unlocked=True) +default lun_bottom_school3 = DollCloth("luna", ("lower body", "skirts"), "bottom", "school_skirt_3", [[103, 90, 108, 255], [232, 177, 13, 255]], unlocked=True, level=4) +default lun_bottom_school4 = DollCloth("luna", ("lower body", "skirts"), "bottom", "school_skirt_4", [[103, 90, 108, 255], [232, 177, 13, 255]], unlocked=True, level=6) + +default lun_stockings_school = DollCloth("luna", ("legwear", "stockings"), "stockings", "short_school_1", [[89, 116, 194, 255], [216, 163, 10, 255]], unlocked=True) +default lun_stockings_school2 = DollCloth("luna", ("legwear", "stockings"), "stockings", "short_school_2", [[89, 116, 194, 255]], unlocked=True) + +default lun_robe_school_1 = DollCloth("luna", ("upper body", "robes"), "robe", "robe_school_1", [[96, 96, 96, 255], [89, 116, 194, 255]], unlocked=True, level=0) +default lun_robe_school_2 = DollCloth("luna", ("upper body", "robes"), "robe", "robe_school_2", [[96, 96, 96, 255], [89, 116, 194, 255]], unlocked=True, level=4) +default lun_robe_school_3 = DollCloth("luna", ("upper body", "robes"), "robe", "robe_school_3", [[96, 96, 96, 255], [89, 116, 194, 255]], unlocked=True, level=5) +default lun_robe_school_4 = DollCloth("luna", ("upper body", "robes"), "robe", "robe_school_4", [[96, 96, 96, 255], [89, 116, 194, 255]], unlocked=True, level=7) + +############### +## Underwear ## +############### + +# Fancy Underwear +default lun_bra_base1 = DollCloth("luna", ("upper undergarment", "bras"), "bra", "basic_bra_1", [[82, 92, 107, 255], [0, 50, 128, 255], [0, 50, 128, 255]], unlocked=True) +default lun_panties_base1 = DollCloth("luna", ("lower undergarment", "panties"), "panties", "basic_panties_1", [[82, 92, 107, 255], [0, 50, 128, 255], [0, 50, 128, 255]], unlocked=True) + +# Plain Underwear +default lun_bra_base2 = DollCloth("luna", ("upper undergarment", "bras"), "bra", "basic_bra_2", [[216, 225, 230, 255], [89, 116, 194, 255]], unlocked=True) +default lun_panties_base2 = DollCloth("luna", ("lower undergarment", "panties"), "panties", "basic_panties_2", [[216, 225, 230, 255], [89, 116, 194, 255]], unlocked=True) + +# Lace Underwear +default lun_bra_lace1 = DollCloth("luna", ("upper undergarment", "bras"), "bra", "lace_bra_1", [[113, 113, 113, 255], [52, 52, 52, 255]], level=7) +default lun_panties_lace1 = DollCloth("luna", ("lower undergarment", "panties"), "panties", "lace_panties_1", [[113, 113, 113, 255], [52, 52, 52, 255]], level=7) + +default lun_panties_lace2 = DollCloth("luna", ("lower undergarment", "panties"), "panties", "lace_panties_2", [[31, 91, 176, 255], [255, 241, 237, 255], [255, 241, 237, 255]], level=7, unlocked=True) + +# Bikini Bra +default lun_bra_bikini3 = DollCloth("luna", ("upper undergarment", "bikini bras"), "bra", "bikini_bra_3", [[0, 82, 198, 255], [173, 152, 126, 255]], level=7) +default lun_panties_bikini3 = DollCloth("luna", ("lower undergarment", "bikini panties"), "panties", "bikini_panties_3", [[0, 82, 198, 255], [173, 152, 126, 255]], level=7) + +################ +## One-Pieces ## +################ + +default lun_top_swimsuit1 = DollCloth("luna", ("upper body", "one-piece suits"), "top", "swimsuit_1", [[255, 172, 184, 215], [238, 117, 114, 255]], blacklist=["panties", "bra"], zorder=7, level=6) + +############## +## Nighties ## +############## + +default lun_top_nightie1 = DollCloth("luna", ("upper body", "shirts"), "top", "nightie_1", [[255, 255, 255, 215]], level=5) +default lun_top_nightie2 = DollCloth("luna", ("upper body", "shirts"), "top", "nightie_2", [[255, 172, 184, 215]], level=6) + +################### +## Pajama Outfit ## +################### + +default lun_top_pajama = DollCloth("luna", ("upper body", "shirts"), "top", "pajama_1", [[249, 126, 197, 255], [182, 23, 16, 255]]) +default lun_bottom_pajama = DollCloth("luna", ("lower body", "trousers"), "bottom", "pajama_1", [[255, 197, 211, 255], [182, 23, 16, 255]]) + + +default lun_glasses_spectrespecs = DollCloth("luna", ("head", "glasses"), "glasses", "spectrespecs", [[227, 102, 130, 255], [61, 110, 140, 255]], unlocked=True) +default lun_glasses_hearts = DollCloth("luna", ("head", "glasses"), "glasses", "sunglasses_2", [[240, 120, 255, 255], [0, 158, 255, 255]], unlocked=True) +default lun_accessory_pin_radish = DollCloth("luna", ("misc", "accessory"), "accessory0", "pin_radish", [[182, 23, 16, 255], [232, 190, 188, 255]], zorder=16, unlocked=True) + +default lun_stockings_pantyhose = DollCloth("luna", ("legwear", "pantyhose"), "stockings", "pantyhose_1", [[177, 144, 131, 255]], unlocked=True) +default lun_stockings_pantyhose_meshed = DollCloth("luna", ("legwear", "pantyhose"), "stockings", "pantyhose_meshed", [[0, 0, 0, 255]], unlocked=True) + +###################### +## Flight Attendant ## +###################### + +default lun_top_flight_attendant_1 = DollCloth("luna", ("upper body", "dresses"), "top", "flight_attendant_1", [[82, 82, 130, 255], [225, 64, 16, 255]]) +default lun_top_flight_attendant_2 = DollCloth("luna", ("upper body", "dresses"), "top", "flight_attendant_2", [[82, 82, 130, 255], [225, 64, 16, 255]], level=6) +default lun_neckwear_neckerchief = DollCloth("luna", ("head", "neckwear"), "neckwear", "neckerchief", [[82, 82, 130, 255]]) +default lun_headgear_flight_attendant = DollCloth("luna", ("head", "headgear"), "headgear", "flight_attendant", [[225, 64, 16, 255]]) +default lun_panties_flight_attendant_1 = DollCloth("luna", ("lower undergarment", "bikini panties"), "panties", "flight_attendant_thongs_1", [[225, 64, 16, 255]], level=7) +default lun_panties_flight_attendant_2 = DollCloth("luna", ("lower undergarment", "bikini panties"), "panties", "flight_attendant_thongs_2", [[225, 64, 16, 255], [232, 183, 123, 255]], level=9) + +############ +## Muggle ## +############ + +default lun_top_muggle_top = DollCloth("luna", ("upper body", "shirts"), "top", "muggle_top", [[127, 109, 140, 255], [231, 131, 186, 255]]) +default lun_robe_muggle_jacket = DollCloth("luna", ("upper body", "robes"), "robe", "muggle_jacket", [[247, 190, 196, 255], [134, 60, 74, 255]], level=4) +default lun_bottom_muggle_skirt = DollCloth("luna", ("lower body", "skirts"), "bottom", "muggle_skirt", [[43, 43, 43, 255], [61, 142, 194, 255], [83, 169, 150 , 255], [243, 243, 243, 255], [226, 148, 150, 255], [245, 210, 132, 255]]) +default lun_stockings_muggle_knee_socks = DollCloth("luna", ("legwear", "stockings"), "stockings", "muggle_knee_socks", [[2, 87, 146, 255], [0, 118, 127, 255], [0, 15, 43, 255]]) + +############ +## Summer ## +############ + +default lun_top_summer_top1 = DollCloth("luna", ("upper body", "shirts"), "top", "summer_top_1", [[255, 154, 205, 255]]) +default lun_top_summer_top2 = DollCloth("luna", ("upper body", "shirts"), "top", "summer_top_2", [[255, 154, 205, 255]], level=7) +default lun_bottom_summer_shorts = DollCloth("luna", ("lower body", "shorts"), "bottom", "summer_shorts", [[47, 150, 136, 255], [175, 220, 191, 255], [247, 152, 38 , 255]]) +default lun_accessory2_bracelets = DollCloth("luna", ("misc", "accessory"), "accessory2", "bracelets", [[36, 184, 45, 255], [58, 176, 212, 255], [194, 49, 15]], zorder=22) + +################# +## Accessories ## +################# + +default lun_neckwear_cork = DollCloth("luna", ("head", "neckwear"), "neckwear", "cork", [[255, 255, 255, 255]], unlocked = True, zorder=16) +default lun_accessory3_hair_bug = DollCloth("luna", ("misc", "accessory"), "accessory3", "hair_bug", [[255, 255, 255, 255]], unlocked = True, zorder=16) + +default lun_accessory4_wand_mouth = DollCloth("luna", ("misc", "accessory"), "accessory4", "wand_mouth", [[255, 255, 255, 255]], unlocked = True, zorder=16) +default lun_accessory4_wand_hand = DollCloth("luna", ("misc", "accessory"), "accessory4", "wand_hand", [[255, 255, 255, 255]], unlocked = True, zorder=16) +default lun_accessory4_wand_breasts = DollCloth("luna", ("misc", "accessory"), "accessory4", "wand_breasts", [[255, 255, 255, 255]], unlocked = True, zorder=16) +default lun_accessory4_wand_pussy = DollCloth("luna", ("misc", "accessory"), "accessory4", "wand_pussy", [[255, 255, 255, 255]], unlocked = True, zorder=7) + +################# +## Party Dress ## +################# + +default lun_top_party_dress = DollCloth("luna", ("upper body", "dresses"), "top", "party_dress", [[248, 168, 0, 255], [172, 94, 27, 255]]) + +############# +## Outfits ## +############# + +# School Uniforms +default lun_outfit_default = DollOutfit([lun_hair_base, lun_top_school1, lun_bottom_school2, lun_bra_base1, lun_panties_base1, lun_stockings_school], unlocked=True) +default lun_outfit_default_quirky = DollOutfit([lun_hair_wand, lun_accessory3_hair_bug, lun_glasses_spectrespecs, lun_accessory_pin_radish, lun_neckwear_tie, lun_top_school3, lun_bottom_school2, lun_bra_base1, lun_panties_base1, lun_stockings_school], unlocked=True) +default lun_outfit_default_no_vest = DollOutfit([lun_hair_base, lun_top_school4, lun_bottom_school2, lun_bra_base1, lun_panties_base1, lun_stockings_school], hidden=True) +default lun_outfit_school_slut = DollOutfit([lun_hair_base, lun_glasses_hearts, lun_top_crop, lun_bottom_school4, lun_panties_lace2, lun_stockings_school])#, hidden=True) + +# Pajamas +default lun_outfit_pajama = DollOutfit([lun_hair_base, lun_accessory_pin_radish, lun_top_pajama, lun_bottom_pajama, lun_bra_base1, lun_panties_base1], unlocked=True) + +# Nighties +default lun_outfit_nightie1 = DollOutfit([lun_hair_base, lun_top_nightie1], price=350, name="Loose-fitting Nightie", desc="The prefect nightie for a girl with her screws loose.") +default lun_outfit_nightie2 = DollOutfit([lun_hair_base, lun_top_nightie2], price=350, name="Nightie", desc="The perfect garment if you're tired of wearing a pyjamas.") + +# Lingerie & Bikinis +default lun_outfit_lace1 = DollOutfit([lun_hair_base, lun_bra_lace1, lun_panties_lace1], price=250, name="Lace Lingerie", desc="For a girl that's feeling a bit lacy.") +default lun_outfit_bikini3 = DollOutfit([lun_hair_base, lun_bra_bikini3, lun_panties_bikini3], price=350, name="Rave Bikini Set", desc="Skilfully assembled from scrapped materials.") + +# One-Pieces & Swimsuits +default lun_outfit_swimsuit = DollOutfit([lun_hair_base, lun_top_swimsuit1], price=350, name="One-piece Swimsuit", desc="Buy this outfit and everything will work out swimmingly.") + +# Dresses +default lun_outfit_flight_attendant = DollOutfit([lun_hair_base, lun_top_flight_attendant_1, lun_neckwear_neckerchief, lun_headgear_flight_attendant, lun_panties_flight_attendant_1], addons=[lun_top_flight_attendant_2, lun_panties_flight_attendant_2], price=350, name="Flight Attendant Costume", desc="An outfit attendants wear in those flying metal things.") + +# Sets +default lun_outfit_muggle = DollOutfit([lun_hair_base, lun_top_muggle_top, lun_robe_muggle_jacket, lun_bottom_muggle_skirt, lun_stockings_muggle_knee_socks, lun_bra_base1, lun_panties_base1], price=300, name="Muggle Outfit", desc="An outfit that probably at least one muggle somewhere would wear.") +default lun_outfit_party = DollOutfit([lun_hair_base, lun_top_party_dress, lun_panties_base1], price=350, name="Party Dress", desc="A weird dress for a weird girl.") +default lun_outfit_summer = DollOutfit([lun_hair_base, lun_top_summer_top1, lun_bottom_summer_shorts, lun_panties_base1, lun_accessory2_bracelets], addons=[lun_top_summer_top2], price=350, name="Summer Set", desc="It's pretty hot.") +default lun_outfit_last = DollOutfit([lun_hair_base], hidden=True) + +################ +## Pubic Hair ## +################ + +default lun_pubes_arrow = DollCloth("luna", ("lower undergarment", "pubes"), "pubes", "arrow", [[228, 201, 145, 255]], unlocked=True) +default lun_pubes_beaver = DollCloth("luna", ("lower undergarment", "pubes"), "pubes", "beaver", [[228, 201, 145, 255]], unlocked=True) +default lun_pubes_stuble = DollCloth("luna", ("lower undergarment", "pubes"), "pubes", "stuble", [[155, 133, 88, 255]], unlocked=True) +default lin_pubes_unshaved = DollCloth("luna", ("lower undergarment", "pubes"), "pubes", "unshaved", [[155, 133, 88, 255]], unlocked=True) + +############# +## Tattoos ## +############# + +default lun_tattoo0_measure = DollCloth("luna", ("piercings & tattoos", "tattoos"), "tattoo0", "measure", [[0, 0, 0, 255], [219, 73, 44, 255]], unlocked=True) +default lun_tattoo0_spurt_here = DollCloth("luna", ("piercings & tattoos", "tattoos"), "tattoo0", "spurt_here", [[0, 0, 0, 255]], unlocked=True) +default lun_tattoo0_loony = DollCloth("luna", ("piercings & tattoos", "tattoos"), "tattoo0", "loony", [[0, 0, 0, 255]], unlocked=True) +default lun_tattoo0_baby_oven = DollCloth("luna", ("piercings & tattoos", "tattoos"), "tattoo0", "baby_oven", [[0, 0, 0, 255], [219, 73, 44, 255]], unlocked=True) + +default lun_tattoo1_lab_rat = DollCloth("luna", ("piercings & tattoos", "tattoos"), "tattoo1", "lab_rat", [[0, 0, 0, 255]], unlocked=True) + +default lun_tattoo3_cumdump = DollCloth("luna", ("piercings & tattoos", "tattoos"), "tattoo3", "cumdump", [[0, 0, 0, 255]], unlocked=True) + +########################### +## Police Officer Outfit ## +########################### + +default lun_stockings_police = DollCloth("luna", ("legwear", "stockings"), "stockings", "police_thigh_highs", [[100, 100, 189, 255]]) +default lun_bottom_police_skirt = DollCloth("luna", ("lower body", "skirts"), "bottom", "police_skirt", [[46, 83, 171, 255], [38, 38, 91, 255], [187, 187, 210, 255]], level=5) +default lun_top_police_shirt = DollCloth("luna", ("upper body", "shirts"), "top", "police_shirt", [[46, 83, 171, 255], [187, 187, 210, 255], [38, 38, 91, 255], [252, 241, 109, 255]], level=5) +default lun_accessory_police_cuffs = DollCloth("luna", ("misc", "accessory"), "accessory1", "police_cuffs", [[187, 187, 210, 255]], zorder=22) + +default lun_outfit_police = DollOutfit([lun_hair_base, lun_stockings_police, lun_bottom_police_skirt, lun_top_police_shirt, lun_panties_base1, lun_accessory_police_cuffs]) + +######################### +## Harley Quinn Outfit ## +######################### + +default lun_hair_harley_quinn = DollCloth("luna", ("head", "hair"), "hair", "harley_quinn", [[237, 224, 195, 255], [191, 164, 107, 255], [228, 55, 19, 255], [19, 101, 228, 255], [255, 91, 248, 255]]) +default lun_pantyhose_harley_quinn = DollCloth("luna", ("legwear", "pantyhose"), "stockings", "harley_quinn", [[174, 53, 18, 255]]) +default lun_top_harley_quinn = DollCloth("luna", ("upper body", "one-piece suits"), "top", "harley_quinn", [[50, 98, 128, 255], [140, 159, 180, 255], [228, 54, 18, 255], [18, 100, 228, 255]]) +default lun_robe_harley_quinn = DollCloth("luna", ("upper body", "robes"), "robe", "harley_quinn", [[216, 252, 255, 255], [140, 159, 180, 255], [88, 213, 50, 255], [228, 78, 20, 255], [234, 72, 192, 255]]) +default lun_gloves_harley_quinn = DollCloth("luna", ("upper body", "gloves"), "gloves", "harley_quinn", [[31, 51, 73, 255]]) +default lun_accessory_harley_quinn_strap = DollCloth("luna", ("misc", "accessory"), "accessory1", "harley_quinn_strap", [[31, 51, 73, 255]], zorder=6) + +default lun_outfit_harley_quinn = DollOutfit([lun_hair_harley_quinn, lun_pantyhose_harley_quinn, lun_top_harley_quinn, lun_robe_harley_quinn, lun_gloves_harley_quinn, lun_accessory_harley_quinn_strap], price=500, name="Harley Quinn Outfit", desc="Attractively crazy.") + +################# +## Lion Outfit ## +################# + +default lun_bottom_casual_jeans = DollCloth("luna", ("lower body", "skirts"), "bottom", "casual_jeans", [[128, 39, 191, 255]]) +default lun_top_casual_sweater = DollCloth("luna", ("upper body", "shirts"), "top", "casual_sweater", [[56, 32, 136, 255], [56, 32, 136, 255]]) +default lun_accessory_lionhead = DollCloth("luna", ("misc", "accessory"), "accessory1", "lionhead", [[0, 0, 0, 255]], zorder=29) + +default lun_outfit_casual= DollOutfit([lun_panties_base1, lun_bra_base1, lun_bottom_casual_jeans, lun_top_casual_sweater], unlocked=True) +default lun_outfit_lion_event = DollOutfit([lun_panties_base1, lun_bra_base1, lun_accessory_lionhead, lun_bottom_casual_jeans, lun_top_casual_sweater], hidden=True) diff --git a/game/scripts/characters/luna/wardrobe_reactions.rpy b/game/scripts/characters/luna/wardrobe_reactions.rpy new file mode 100644 index 00000000..248797f5 --- /dev/null +++ b/game/scripts/characters/luna/wardrobe_reactions.rpy @@ -0,0 +1,779 @@ +define lun_requirements = { + "category upper undergarment": 7, + "category lower undergarment": 7, + "category piercings & tattoos": 13, + # "touch head": + # "touch breasts": + # "touch vagina": + "unequip panties": 7, + "unequip bra": 7, + "unequip top": 4, + "unequip bottom": 4, + } + +define lun_responses = { + "category_fail": "lun_reaction_category_fail", + "equip": "lun_reaction_equip", + "equip_fail": "lun_reaction_equip_fail", + "unequip": "lun_reaction_unequip", + "unequip_fail": "lun_reaction_unequip_fail", + "touch": "lun_reaction_touch", + "touch_fail": "lun_reaction_touch_fail", + "equip_outfit": "lun_reaction_equip_outfit", + "equip_outfit_fail": "lun_reaction_equip_outfit_fail", + "blacklist": "lun_reaction_blacklist", + "fallback": "lun_reaction_fallback", +} + +label lun_reaction_category_fail(category): + + if category == "upper undergarment": + lun "Is this part of our Wrackspurt research [lun_genie_name]?" ("open", "base", "raised", "mid") + gen "*Err*... I just thought maybe you could... Never mind..." ("base", xpos="far_left", ypos="head") + elif category == "lower undergarment": + lun "Is this part of our Wrackspurt research [lun_genie_name]?" ("soft", "base", "base", "mid") + gen "*Err*... I just thought maybe you could... Never mind..." ("base", xpos="far_left", ypos="head") + elif category == "piercings & tattoos": + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + lun "I'm not sure if that's such a good idea [lun_genie_name]..." ("open", "closed", "base", "mid") + gen "Why's that?" ("base", xpos="far_left", ypos="head") + lun "It might attract Nifflers into the castle..." ("normal", "base", "annoyed", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + elif random_number == 2: + lun "Daddy says that ink should only be used on paper and not on your body..." ("open", "closed", "annoyed", "mid") + elif random_number == 3: + lun "Isn't it supposed to hurt?" ("upset", "wide", "base", "mid") + gen "I'm sure there's some magical mumbo jumbo that would make it painless..." ("base", xpos="far_left", ypos="head") + lun "*Hmm*... I'm not sure..." ("annoyed", "base", "base", "R") + return + +label lun_reaction_touch(what): + if what == "head": + $ mouse_headpat() + $ random_number = renpy.random.randint(1, 3) + + if lun_tier == 5: + if random_number == 1: + lun "*Mmm*..." ("soft", "closed", "base", "mid", cheeks="blush") + elif random_number == 2: + lun "*Ah*..." ("open", "closed", "base", "mid", cheeks="blush") + lun "Sorry, you just took me by surprise..." ("base", "narrow", "base", "mid", cheeks="blush") + elif random_number == 3: + lun "*Hmm*... I could've sworn you said that we should focus on more sensitive areas..." ("base", "narrow", "base", "down", cheeks="blush") + elif lun_tier == 4: + if random_number == 1: + lun "*Mmm*... That's strange..." ("annoyed", "base", "base", "mid") + lun "How come I'm feeling good in other places when it's my head you're touching?" ("grin", "narrow", "base", "mid") + elif random_number == 2: + lun "Pat, pat, pat." ("base", "happyCl", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + elif random_number == 3: + lun "Thank you, [lun_genie_name]..." ("soft", "narrow", "base", "downR", cheeks="blush") + lun "I feel like I get a big boost of happiness when you pat me for some reason..." ("base", "narrow", "base", "mid", cheeks="blush") + lun "Maybe that's why animals enjoy it so much too..." ("grin", "base", "base", "mid", cheeks="blush") + elif lun_tier == 3: + if random_number == 1: + lun "Is my head another one of those sensitive areas you spoke about?" ("open", "base", "raised", "mid") + elif random_number == 2: + lun "I don't think there's anywhere for me to release the Wrackspurts from up there, but thank you anyway..." ("base", "narrow", "base", "mid") + elif random_number == 3: + lun "Are you sure this technique is working [lun_genie_name]?" ("annoyed", "base", "raised", "mid") + elif lun_tier == 2: + if random_number == 1: + lun "Thank you [lun_genie_name]." ("crooked_smile", "base", "base", "mid") + lun "I'm so glad you decided to let me help with your research." ("smile", "happyCl", "base", "mid") + elif random_number == 2: + lun "Are you feeling stressed [lun_genie_name]?" ("soft", "base", "base", "mid") + gen "*Huh*?" ("base", xpos="far_left", ypos="head") + lun "Feel free to pet me any time you like if it helps." ("base", "closed", "base", "mid") + gen "*Err*... Thanks..." ("base", xpos="far_left", ypos="head") + elif random_number == 3: + lun "*Hmm*... I'm not getting any of that tingly sensation up there but it does feel kind of nice..." ("soft", "base", "base", "up") + else: #Tier 1 + if random_number == 1: + lun "Thank you [lun_genie_name]." ("grin", "closed", "base", "mid") + lun "Other students look at me weird if I try to pet them so I'm glad I didn't do something weird again..." ("angry", "base", "base", "downR") + elif random_number == 2: + lun "I already checked for Nargles this morning but I suppose you can't be too careful..." ("base", "base", "base", "down") + elif random_number == 3: + lun "I think I lost a pencil up there, let me know if you find it." ("soft", "base", "base", "up") + + elif what == "breasts": + $ mouse_heart() + $ random_number = renpy.random.randint(1, 3) + + if lun_tier == 5: + if random_number == 1: + lun "Don't forget to kiss the other one too! She gets awfully jealous if her sister gets all the attention." ("base", "base", "base", "down", cheeks="blush") + elif random_number == 2: + lun "*Mmm*... Why does something so bad feel so good?" ("grin", "closed", "base", "mid") + gen "The backsprats?" ("base", xpos="far_left", ypos="head") + lun "*Huh*?" ("open", "base", "base", "mid") + lun "Oh... Yes, those pesky little things..." ("soft", "base", "base", "downR", cheeks="blush") + elif random_number == 3: + lun "*Ah*... Thank you for helping me [lun_genie_name]..." ("soft", "closed", "base", "mid", cheeks="blush") + elif lun_tier == 4: + if random_number == 1: + lun "*Mmm*... How come I don't really see any of the Wrackspurts coming out from here?" ("disgust", "narrow", "base", "mid", cheeks="blush") + gen "*Err*..." ("base", xpos="far_left", ypos="head") + lun "It feels really good so why aren't any of them coming out?" ("annoyed", "base", "base", "mid", cheeks="blush") + elif random_number == 2: + lun "*Ah*... {w=0.4} Your methods are quite the something [lun_genie_name]..." ("open", "closed", "base", "mid", cheeks="blush") + lun "I could never have imagined that getting rid of those pest would end up being so..." ("base", "closed", "base", "mid", cheeks="blush") + lun "Enjoyable..." ("grin", "narrow", "base", "mid", cheeks="blush") + elif random_number == 3: + lun "Come... Come out already..." ("soft", "closed", "base", "mid", cheeks="blush") + elif lun_tier == 3: + if random_number == 1: + lun "You really were right about these things being sensitive..." ("open", "base", "base", "down") + lun "Can't believe I hadn't figured this out earlier." ("base", "base", "base", "downR") + elif random_number == 2: + lun "*Ah*... Are everyone this sensitive in around this spot?" ("soft", "closed", "base", "mid", cheeks="blush") + gen "Women are a lot more sensitive than men most of the time..." ("base", xpos="far_left", ypos="head") + lun "Oh... That's so sad..." ("angry", "base", "base", "mid") + elif random_number == 3: + lun "..." ("soft", "base", "base", "mid", cheeks="blush") + gen "How did that feel?" ("base", xpos="far_left", ypos="head") + lun "*Ehm*... It felt very nice [lun_genie_name]..." ("open", "narrow", "base", "downR", cheeks="blush") + #elif lun_tier == 2: This would only be useful if there was another check if you've done event 2 to have it show before T3 + else: # T1 and T2 + if random_number == 1: + lun "*Hi-Hi*..." ("grin", "closed", "base", "mid") + lun "Sorry [lun_genie_name], your beard is tickling me..." ("smile", "base", "base", "mid") + elif random_number == 2: + lun "Are you looking for the Himalayan Lesser Spotted Breast Imp? It's okay [lun_genie_name], it's not their migration season." ("grin", "base", "base", "down") + elif random_number == 3: + lun "..." ("soft", "base", "raised", "mid") + + elif what == "vagina": + $ mouse_heart() + $ random_number = renpy.random.randint(1, 3) + + if lun_tier == 5: + if random_number == 1: + lun "*Ah*... S-so good... How did I ever live without this?" ("normal", "closed", "base", "mid", cheeks="blush") + elif random_number == 2: + lun "*Mmm*... Nasty... Wrackspurts..." ("base", "closed", "base", "mid", cheeks="blush") + elif random_number == 3: + lun "Please... Help me get rid of them again..." ("crooked_smile", "narrow", "base", "mid", cheeks="blush") + elif lun_tier == 4: + if random_number == 1: + lun "*Whoa*... I didn't think just using your mouth could produce such a strong response." ("open", "wide", "base", "mid", cheeks="blush") + elif random_number == 2: + lun "*Ah*... It's almost like a ripple of water... Except running through my body..." ("soft", "closed", "base", "mid", cheeks="blush") + elif random_number == 3: + lun "*Mmm*... Those nasty Wrackspurts... I can feel them getting agitated already..." ("grin", "narrow", "base", "downR", cheeks="blush") + elif lun_tier == 3: + if random_number == 1: + lun "*Ohhhh*... This is going to be my new happy memory when I have to summon a patronus!" ("base", "narrow", "base", "down", cheeks="blush") + elif random_number == 2: + lun "Weren't I supposed to be learning how to do this myself?" ("angry", "base", "raised", "mid") + elif random_number == 3: + lun "*Oohhh*... Why are your lips cold?" ("clench", "wide", "base", "mid") + gen "Why are your lips cold?" ("base", xpos="far_left", ypos="head") + lun "*Huh*?" ("upset", "base", "raised", "mid") + # elif lun_tier == 2:This would only be useful if there was another check if you've done event 2 to have it show before T3 + else: # T1 and T2 + if random_number == 1: + lun "*Hi-Hi*..." ("grin", "happyCl", "base", "mid") + lun "That's not my cheek, silly..." ("crooked_smile", "narrow", "base", "mid") + elif random_number == 2: + lun "Is this a lesson on the dementor's kiss?" ("open", "base", "raised", "mid") + lun "I always thought it was done through the mouth." ("soft", "base", "base", "downR") + elif random_number == 3: + lun "*Ooohh*..." ("grin", "base", "base", "up") + lun "I don't think anyone has ever kissed me there before... How strange..." ("grin", "closed", "base", "mid") + return + +label lun_reaction_touch_fail(what): #Not used + if what == "head": + $ mouse_slap() + + gen "Ouch! Why would you do that?!" ("angry", xpos="far_left", ypos="head") + lun "Oh! I'm terribly sorry, [lun_genie_name], I used to play this game with my father and..." + gen "I don't need to hear it..." ("base", xpos="far_left", ypos="head") + lun "...as you wish [lun_genie_name]." + + elif what == "breasts": + $ mouse_slap() + + lun "*giggles* [lun_genie_name] stop that! It tickles." + + elif what == "vagina": + $ mouse_slap() + + lun "*Ah* [lun_genie_name], please don't tease me, wrackspurts have been terribly active today and I'm barely able to withhold as it is." + + return + +label lun_reaction_equip(item): + ### Add specific clothing reactions here. + # if item == : + # lun "This looks awesome! I'll wear this with pride!" + return + +label lun_reaction_equip_fail(item): + ### Add specific clothing reactions here. + # if item == : + # lun "I won't wear because!" + # else: + # + + lun "*Hmm*..." ("annoyed", "base", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + lun "There's a weird aura surrounding this piece of garment." ("open", "closed", "base", "mid") + lun "It seems to be affecting the Wrackspurts, as if they're multiplying!" ("disgust", "base", "base", "mid") + if lun_whoring < 4: + lun "I'm sorry [lun_genie_name] but I can't wear that... Not until we find a way of dealing with them." ("open", "closed", "base", "mid") + else: + lun "I'm sorry [lun_genie_name] but I can't wear that... Not until we find a better strategy of dealing with them." ("open", "closed", "base", "mid") + gen "(I guess that means she's not ready yet.)" ("base", xpos="far_left", ypos="head") + + return + +label lun_reaction_unequip(item): + ### Example + # if item.type == "panties": + # if lun_whoring > 15: + # lun "You want to see my snatch?" + # lun "You got it [genie_name]!" + # + return + +label lun_reaction_unequip_fail(item): + if item.type == "panties": #probably wont play since category unlocks same level as she can take them off + lun "I'm sorry [lun_genie_name] but my panties are my one and only defence against wrackspurts." ("open", "closed", "base", "mid") + + elif item.type == "bra": #probably wont play since category unlocks same level as she can take them off + lun "*giggles*" ("grin", "closed", "base", "mid") + gen "What's so funny?" ("base", xpos="far_left", ypos="head") + lun "Oh... It's nothing..." ("base", "base", "base", "R") + + elif item.type == "top": + lun "Are we going to continue the research, [lun_genie_name]?" ("open", "base", "raised", "mid") + gen "Not right now..." ("base", xpos="far_left", ypos="head") + lun "Oh... Then let me know when you're ready..." ("base", "base", "base", "R") + + elif item.type == "bottom": + lun "Are we going to continue the research, [lun_genie_name]?" ("upset", "base", "raised", "mid") + gen "Not right now..." ("base", xpos="far_left", ypos="head") + lun "Oh... Then let me know when you're ready..." ("base", "base", "base", "R") + + return + +label lun_reaction_equip_outfit(item): + ### Add specific Outfit reactions here. + + ## Unequip top/bottom, 4. Bra/panties, 7## + ##0-3 Talk, 4-6 inspect, 7-9 masturbate## + + ######################## + ## Default Schoolgirl ## + ######################## + if item == lun_outfit_default: #Req 0 + gen "Can you put on your regular school uniform for me?" ("base", xpos="far_left", ypos="head") + gen "Nice and proper please." ("base", xpos="far_left", ypos="head") + if lun_whoring < 4: + gen "No wands in your hair... No weird stuff..." ("base", xpos="far_left", ypos="head") + lun "Weird stuff, [lun_genie_name]?" ("annoyed", "narrow", "base", "mid") + gen "*Err*... Nothing extra outside the regular uniform I mean..." ("base", xpos="far_left", ypos="head") + lun "What about my underwear?" ("angry", "base", "base", "mid") + gen "Your underwear [luna_name]?" ("base", xpos="far_left", ypos="head") + lun "I didn't get those with the uniform, so can I still wear them?" ("normal", "base", "base", "mid") + gen "(Is this girl for real?)" ("base", xpos="far_left", ypos="head") + lun "[lun_genie_name]?" ("soft", "base", "raised", "mid") + gen "I guess?" ("base", xpos="far_left", ypos="head") + lun "Okay, I'll keep them on then." ("grin", "happyCl", "base", "mid") + gen "(Wait... Taking them off was a real option?)" ("base", xpos="far_left", ypos="head") + elif lun_whoring < 7: + lun "Thank you [lun_genie_name]." ("grin", "base", "base", "mid") + gen "For what?" ("base", xpos="far_left", ypos="head") + lun "Keeping me safe from the wrackspurts!" ("grin", "wink", "base", "mid") + gen "That's not..." ("base", xpos="far_left", ypos="head") + gen "Just put the thing on..." ("base", xpos="far_left", ypos="head") + lun "Yes, [lun_genie_name]!" ("base", "base", "base", "mid") + else: #7+ + lun "Do you mean like how the other students wear theirs [lun_genie_name]?" ("soft", "base", "base", "stare") + gen "... Yes?" ("base", xpos="far_left", ypos="head") + lun "Will that give the Wrackpurts a harder time getting to me?" ("angry", "wink", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + lun "Is the theory that they won't be able to differentiate me from any of the other girls?" ("open", "base", "raised", "mid") + gen "*Err*... Sure..." ("base", xpos="far_left", ypos="head") + lun "Interesting idea [lun_genie_name]... Let's try it." ("base", "base", "base", "mid") + + ####################### + ## Quirky Schoolgirl ## + ####################### + elif item == lun_outfit_default_quirky: #Req 0 + gen "Can you put on your school uniform for me?" ("base", xpos="far_left", ypos="head") + gen "And wear it the way you did the first time we met." ("base", xpos="far_left", ypos="head") + lun "On the day I was sorted into Ravenclaw?" ("open", "base", "raised", "mid") + lun "I'm not sure I remember how I wore it..." ("open", "base", "base", "down") + gen "*Err*... No I meant the one when you came into my office, when you told me about the spurts." ("base", xpos="far_left", ypos="head") + lun "Oh... Then why didn't you say so!" ("grin", "happyCl", "base", "mid") + lun "One moment, [lun_genie_name]." ("base", "base", "base", "mid") + + ####################### + ## Slutty Schoolgirl ## + ####################### + elif item == lun_outfit_school_slut: #Req 7 (no bra) + gen "Put on your school uniform for me will you?" ("base", xpos="far_left", ypos="head") + gen "This one with the tied top and short skirt." ("base", xpos="far_left", ypos="head") + lun "You're so smart [lun_genie_name]!" ("grin", "wink", "base", "mid") + gen "I am?" ("base", xpos="far_left", ypos="head") + lun "This way you'll get to the affected areas so much quicker!" ("base", "wink", "base", "mid", cheeks="blush") + gen "Oh, yes that's it!" ("base", xpos="far_left", ypos="head") + lun "We should make this the standard school uniform!" ("smile", "base", "base", "mid", cheeks="blush") + gen "*Hmm*... I'll think about it..." ("base", xpos="far_left", ypos="head") + + ################### + ## Pyjama Outfit ## + ################### + elif item == lun_outfit_pajama: #Req 0 + gen "Put on your pyjamas for me." ("base", xpos="far_left", ypos="head") + if game.daytime: + lun "You can do that?" ("angry", "wide", "base", "mid") + gen "Do what?" ("base", xpos="far_left", ypos="head") + lun "Wear pyjamas during the day!" ("mad", "narrow", "base", "mid") + gen "Yes? Why wouldn't you be able to? I'm wearing this robe all the time and I'm nowhere near a bath." ("base", xpos="far_left", ypos="head") + lun "If you say so [lun_genie_name]..." ("angry", "base", "base", "mid") + else: + lun "My pyjamas?" ("soft", "base", "raised", "mid") + gen "Yes, [luna_name]... Please put them on for me." ("base", xpos="far_left", ypos="head") + lun "But, there's no bed in here..." ("angry", "narrow", "base", "mid") + gen "No bed?" ("base", xpos="far_left", ypos="head") + lun "Yes, why would I put it on if I'm not going to sleep?" ("angry", "wink", "base", "mid") + gen "I mean, if you put them on now, there's one less thing to do before you go to bed." ("base", xpos="far_left", ypos="head") + lun "That's true!" ("grin", "base", "base", "stare") + lun "I should wear them all the time, then I'd never need to change!" ("base", "base", "base", "mid") + gen "Well... I wouldn't go that far, just put them on for now." ("base", xpos="far_left", ypos="head") + lun "Alright, [lun_genie_name]." ("base", "wink", "base", "mid") + + ################################## + ## Loose-fitting Nightie Outfit ## + ################################## + elif item == lun_outfit_nightie1: #Req 7 (no bra, no panties) + gen "Put on this nightie for me [luna_name]." ("base", xpos="far_left", ypos="head") + gen "And skip the underwear." ("base", xpos="far_left", ypos="head") + lun "No underwear [lun_genie_name]?" ("soft", "base", "worried", "mid") + lun "But what if the wrackspurts get in there?" ("angry", "base", "worried", "mid") + gen "I'm sure we'll be able to deal with them if that happens, don't you think?" ("base", xpos="far_left", ypos="head") + lun "Alright then..." ("grin", "base", "base", "mid", cheeks="blush") + + #################### + ## Nightie Outfit ## + #################### + elif item == lun_outfit_nightie2: #Req 7 (no bra, no panties) + gen "Put on this nightie for me [luna_name]." ("base", xpos="far_left", ypos="head") + gen "And skip the underwear." ("base", xpos="far_left", ypos="head") + lun "No underwear [lun_genie_name]?" ("soft", "base", "worried", "mid") + gen "Yes, this way I'll be able to see if the spurts get in there." ("base", xpos="far_left", ypos="head") + lun "But how are you supposed to see them without the glasses [luna_name]?" ("soft", "base", "base", "mid") + gen "I'm sure I'd be able to tell if they did, even without the glasses." ("base", xpos="far_left", ypos="head") + lun "Alright then..." ("base", "narrow", "base", "mid", cheeks="blush") + + ###################### + ## Lace Lingerie set## + ###################### + elif item == lun_outfit_lace1: #Req 7 (bra, panties) + gen "Put on this lace lingerie for me will you?" ("base", xpos="far_left", ypos="head") + lun "These are pretty..." ("soft", "base", "base", "down") + lun "But don't you think the Nargles would try to hide in them?" ("angry", "base", "base", "mid") + gen "*Err*... Don't you mean the spurts?" ("base", xpos="far_left", ypos="head") + lun "No [lun_genie_name]...{w=0.4} Nargles loves anything with roses on them..." ("soft", "narrow", "base", "mid") + lun "Although now that you mention it, Nargles and Wrackspurts don't like each other so perhaps it's a good time to test that theory." ("grin", "base", "base", "mid") + + ######################## + ## Rave Bikini Outfit ## + ######################## + elif item == lun_outfit_bikini3: #Req 7 (bra, panties) + gen "I've got a bikini with your name on it." ("base", xpos="far_left", ypos="head") + lun "You do?" ("soft", "wide", "base", "mid") + lun "But it's so small... Where does the name even fit?" ("soft", "base", "base", "down") + gen "Figuratively speaking of course." ("base", xpos="far_left", ypos="head") + lun "Oh, I see..." ("soft", "narrow", "base", "mid") + lun "Give me a moment to put it on then..." ("base", "narrow", "base", "mid") + + ############## + ## Swimsuit ## + ############## + elif item == lun_outfit_swimsuit: #Req 7 (no bra, no panties) + gen "Put on this swimsuit for me will you?" ("base", xpos="far_left", ypos="head") + lun "But what about the one eyed trouser snake?" ("angry", "narrow", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + lun "It said in the quibbler that putting on a swimsuit could attract the one eyed trouser snake." ("clench", "base", "base", "mid") + gen "The... Oh I see..." ("base", xpos="far_left", ypos="head") + gen "(Smut writers and their terrible euphemisms...)" ("base", xpos="far_left", ypos="head") + gen "*Err*... Did the magazine not mention that the... *Ahem*... Snake is valuable?" ("base", xpos="far_left", ypos="head") + lun "It is?" ("angry", "base", "base", "stare") + gen "Of course, the spit of the one eyed trouser snake is heavily sought after." ("base", xpos="far_left", ypos="head") + lun "Really?" ("mad", "base", "base", "mid") + gen "Certainly... In fact, some people can't get enough of it." ("base", xpos="far_left", ypos="head") + lun "Oh, I didn't know that!" ("grin", "narrow", "base", "stare") + lun "You think we could extract some?" ("grin", "base", "base", "mid") + gen "I'm sure we could if it shows up..." ("base", xpos="far_left", ypos="head") + lun "Marvellous!" ("smile", "base", "base", "mid") + + ############ + ## Muggle ## + ############ + elif item == lun_outfit_muggle: #No req + gen "Put on this maggle outfit for me..." ("base", xpos="far_left", ypos="head") + lun "Muggle outfit, [lun_genie_name]?" ("soft", "base", "raised", "mid") + gen "Yes that's it!" ("base", xpos="far_left", ypos="head") + lun "I like the skirt!" ("smile", "base", "base", "down") + gen "Is that sarcasm?" ("base", xpos="far_left", ypos="head") + lun "No?" ("soft", "base", "base", "mid") + gen "Then great!" ("base", xpos="far_left", ypos="head") + lun "Let me just put it on..." ("grin", "base", "base", "mid") + + ###################### + ## Flight Attendant ## + ###################### + elif item == lun_outfit_flight_attendant: #Req 7 (No Bra, lewd panties) + gen "Put on this flight attendant outfit for me will you?" ("base", xpos="far_left", ypos="head") + lun "Flight attendant?" ("soft", "base", "raised", "mid") + gen "Yeah, it's a job those muggles do." ("base", xpos="far_left", ypos="head") + lun "There's a job that exists just to attend flying?" ("open", "base", "base", "stare") + gen "No... Attend people during flight." ("base", xpos="far_left", ypos="head") + lun "Sounds dangerous..." ("clench", "base", "base", "down") + gen "(Explaining this to her will probably take all day...)" ("base", xpos="far_left", ypos="head") + gen "Just forget what it's for, it's not important for your education..." ("base", xpos="far_left", ypos="head") + lun "Oh... Alright then." ("angry", "base", "base", "mid") + lun "..." ("base", "base", "base", "R") + gen "I still want you to put it on though..." ("base", xpos="far_left", ypos="head") + lun "Oh, Alright!" ("grin", "base", "base", "mid") + + ############ + ## Summer ## + ############ + elif item == lun_outfit_summer: #Req 7 (No Bra) + gen "I've got this great summer outfit for you to wear!" ("base", xpos="far_left", ypos="head") + gen "It's pretty hot!" ("base", xpos="far_left", ypos="head") + if game.daytime: + lun "It is? I didn't notice!" ("angry", "base", "base", "stare") + gen "Weather's pretty warm too!" ("base", xpos="far_left", ypos="head") + lun "*Huh*?" ("soft", "base", "base", "mid") + gen "Better put this on right away!" ("base", xpos="far_left", ypos="head") + else: + lun "It is? But the sun isn't even out!" ("angry", "base", "base", "L") + gen "What I meant was... Tomorrow might be hot! So better put it on now!" ("base", xpos="far_left", ypos="head") + lun "Oh, alright then!" ("angry", "base", "base", "mid") + + ############ + ## Casual ## + ############ + elif item == lun_outfit_casual: #Req 0 + gen "Could you put on something more casual?" ("base", xpos="far_left", ypos="head") + lun "Casual, [lun_genie_name]?" ("soft", "base", "raised", "mid") + gen "Yeah, something that doesn't show too much skin." ("base", xpos="far_left", ypos="head") + gen "(What the hell is wrong with me?)" ("base", xpos="far_left", ypos="head") + lun "Oh, of course, I could put on my Casual clothing." ("grin", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + + + ################# + ## Party Dress ## + ################# + elif item == lun_outfit_party: #Req 7 (No Bra) + gen "This dress seems odd enough to suit you." ("base", xpos="far_left", ypos="head") + gen "Why don't you put it on?" ("base", xpos="far_left", ypos="head") + lun "Odd [lun_genie_name]?" ("angry", "narrow", "base", "mid") + gen "In a good way..." ("base", xpos="far_left", ypos="head") + lun "I love it!" ("grin", "base", "base", "down") + lun "I've got the same one at home!" ("smile", "happyCl", "base", "mid") + gen "You... You do?" ("base", xpos="far_left", ypos="head") + lun "I do!" ("grin", "wink", "base", "mid") + gen "(Didn't that Mafkin lady make this outfit?)" ("base", xpos="far_left", ypos="head") + gen "(Must've been too hard even for her to create something like this...)" ("base", xpos="far_left", ypos="head") + lun "One moment, let me put it on." ("base", "base", "base", "mid") + + ######################### + ## Harley Quinn Outfit ## + ######################### + elif item == lun_outfit_harley_quinn: # Req 7 (No Bra, No Panties) + gen "I've got this Harley Quinn costume for you to wear." ("base", xpos="far_left", ypos="head") + lun "*Hmm*?" ("soft", "base", "base", "mid") + lun "Harley Quinn?" ("open", "base", "raised", "mid") + gen "Yes, you know, the super villain... *Err*... Villainess." ("base", xpos="far_left", ypos="head") + lun "*Huh*?" ("normal", "base", "raised", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(Guess she's one of those marvel fans...)" ("base", xpos="far_left", ypos="head") + menu: + "\"(Put it on and call me puddin'!)\"": + $ lun_genie_name = "Puddin'" + lun "Puddin'?" ("soft", "base", "base", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + lun "Alright then..." ("base", "base", "base", "mid") + "\"(Just put it on!)\"": + lun "Alright..." ("base", "base", "base", "mid") + + ########################### + ## Police Officer Outfit ## + ########################### + elif item == lun_outfit_police: #Req 7 (No Bra) + gen "Put on the police cosplay uniform will you?" ("base", xpos="far_left", ypos="head") + lun "Police costume?" ("soft", "base", "raised", "mid") + gen "Yeah..." ("base", xpos="far_left", ypos="head") + gen "Gotta maintain some order around here." ("base", xpos="far_left", ypos="head") + lun "Oh... Are police some kind of muggle law enforcer?" ("open", "base", "base", "stare") + gen "Yes they--" ("base", xpos="far_left", ypos="head") + gen "Surely the governmental forces of the world is prevalent enough for you to know what the police are?" ("base", xpos="far_left", ypos="head") + lun "Like, the ministry of magic?" ("upset", "base", "base", "mid") + gen "(This is just plain ignorance at this point...)" ("base", xpos="far_left", ypos="head") + gen "Just put it on will you?" ("base", xpos="far_left", ypos="head") + lun "Alright." ("base", "base", "base", "mid") + + # TODO: Blacklist fallbacks have to be added. + return + +label lun_reaction_equip_outfit_fail(item): + ### Add specific Outfit reactions here. + + ####################### + ## Slutty Schoolgirl ## + ####################### + if item == lun_outfit_school_slut: #Req 7 (no bra) + gen "Put on your school uniform for me will you?" ("base", xpos="far_left", ypos="head") + gen "This one with the tied top and short skirt." ("base", xpos="far_left", ypos="head") + lun "But [lun_genie_name]!" ("angry", "wide", "base", "mid") + lun "This doesn't have a bra!" ("angry", "wide", "base", "mid") + gen "So?" ("base", xpos="far_left", ypos="head") + lun "Surely I shouldn't be standing here without a bra on?" ("mad", "narrow", "base", "mid") + if lun_whoring < 4: + gen "(Maybe I've gone to far...)" ("base", xpos="far_left", ypos="head") + lun "The wrackpurts would most certainly get to me!" ("angry", "closed", "base", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + gen "(Maybe I could convince her once we've found a way to deal with them...)" ("base", xpos="far_left", ypos="head") + else: + gen "Why not?" ("base", xpos="far_left", ypos="head") + lun "If I stood here for too long without a bra I don't doubt they'd get to me!" ("angry", "closed", "worried", "mid") + gen "Who?" ("base", xpos="far_left", ypos="head") + lun "The Wrackspurts!" ("angry", "wink", "base", "mid") + gen "Oh..." ("base", xpos="far_left", ypos="head") + gen "(Maybe I could convince her once she's more confident about dealing with the spurts...)" ("base", xpos="far_left", ypos="head") + + ################################## + ## Loose-fitting Nightie Outfit ## + ################################## + elif item == lun_outfit_nightie1: #Req 7 (no bra, no panties) + gen "Put on this nightie for me [luna_name]." ("base", xpos="far_left", ypos="head") + gen "And skip the underwear." ("base", xpos="far_left", ypos="head") + if lun_whoring < 4: + lun "But [lun_genie_name]!" ("angry", "wide", "base", "mid") + lun "The wrackpurts would be able to get in there if I'm not to wear any underwear." ("clench", "wink", "base", "mid") + gen "I'm sure we'll be able to deal with that if it comes down to it..." ("base", xpos="far_left", ypos="head") + lun "*Hmm*... I'm not so sure about that..." ("disgust", "base", "base", "mid") + else: + lun "Is this part of the inspection?" ("soft", "narrow", "base", "mid") + gen "Yes... Well you see, the spurts... *Err*..." ("base", xpos="far_left", ypos="head") + lun "[lun_genie_name]... I'd rather not make myself a target of those things, standing here without underwear would surely bring them all to attention." ("angry", "wink", "base", "mid") + gen "It'd bring something to attention that's for sure." ("base", xpos="far_left", ypos="head") + lun "Alright, then I better not." ("angry", "narrow", "base", "mid") + gen "Wait, I was only--" ("base", xpos="far_left", ypos="head") + gen "(Damnit...)" ("base", xpos="far_left", ypos="head") + + #################### + ## Nightie Outfit ## + #################### + elif item == lun_outfit_nightie2: #Req 7 (no bra, no panties) + gen "Put on this nightie for me [luna_name]." ("base", xpos="far_left", ypos="head") + gen "And skip the underwear." ("base", xpos="far_left", ypos="head") + if lun_whoring < 4: + lun "But [lun_genie_name]!" ("angry", "wide", "base", "mid") + lun "What about the Wrackspurts?" ("clench", "wink", "base", "mid") + gen "What do you mean, what about the spurts?" ("base", xpos="far_left", ypos="head") + lun "They'll be able to get in there if I'm not wearing any underwear!" ("clench", "base", "base", "mid") + gen "Really?" ("base", xpos="far_left", ypos="head") + gen "(Don't she mean getting out?)" ("base", xpos="far_left", ypos="head") + lun "I think it's probably best if I keep myself protected..." ("disgust", "base", "base", "mid") + else: + lun "Is this part of the inspection?" ("soft", "narrow", "base", "mid") + gen "Yes... Well you see, the spurts... *Err*..." ("base", xpos="far_left", ypos="head") + lun "[lun_genie_name]... Don't you think they'd easily be able to fly in there if I'm not wearing any underwear?" ("angry", "wink", "base", "mid") + gen "I don't see how that's a problem, it feels nice does it not?" ("base", xpos="far_left", ypos="head") + lun "*Ehm*... Does that matter?" ("soft", "narrow", "base", "mid", cheeks="blush") + gen "(Is there even a right answer here?)" ("base", xpos="far_left", ypos="head") + menu: + "\"No.\"": + lun "That's what I thought... I better keep myself safe then..." ("soft", "narrow", "base", "R") + gen "Right... Wait, what was the question?" ("base", xpos="far_left", ypos="head") + lun "..." ("soft", "base", "base", "mid") + "\"Yes.\"": + lun "Are you alright [lun_genie_name]?" ("angry", "narrow", "base", "mid") + gen "Never been better, why?" ("base", xpos="far_left", ypos="head") + lun "*Hmm*... Are you sure the wrackspurts haven't affected your brain perhaps?" ("annoyed", "narrow", "base", "mid") + gen "Doubt it... Although people do tell me I think with my penis sometimes." ("base", xpos="far_left", ypos="head") + lun "Surely it's not a good idea to give them an open landing strip." ("soft", "narrow", "base", "mid") + gen "We'll just deal with it if it happens." ("base", xpos="far_left", ypos="head") + lun "*Hmm*... I'm not so sure about that." ("annoyed", "narrow", "base", "R") + gen "Well, that's your loss [luna_name]..." ("base", xpos="far_left", ypos="head") + gen "(Damn... Maybe I'll be able to convince her once she's more confident about dealing with them.)" ("base", xpos="far_left", ypos="head") + + ###################### + ## Lace Lingerie set## + ###################### + elif item == lun_outfit_lace1: #Req 7 (bra, panties) + gen "Put on this lace lingerie for me will you?" ("base", xpos="far_left", ypos="head") + lun "But [lun_genie_name]!" ("mad", "base", "base", "down") + lun "These got roses on them!" ("angry", "narrow", "base", "down") + gen "So?" ("base", xpos="far_left", ypos="head") + lun "The Nargles would surely try and hide in them if I put this on!" ("clench", "happyCl", "base", "mid") + gen "(How many of these made up things does she believe in?)" ("base", xpos="far_left", ypos="head") + + ######################## + ## Rave Bikini Outfit ## + ######################## + elif item == lun_outfit_bikini3: #Req 7 (bra, panties) + gen "Put on this bikini for me will you?" ("base", xpos="far_left", ypos="head") + lun "I'm sorry [lun_genie_name] but I can't wear this right now." ("upset", "narrow", "base", "down") + gen "Why not?" ("base", xpos="far_left", ypos="head") + lun "Oh... *Ehm*..." ("soft", "narrow", "base", "down", cheeks="blush") + lun "I'd rather we continue with our research..." ("angry", "closed", "base", "mid", cheeks="blush") + call nar(">You watch as Luna grinds her legs together.") + gen "I see... Some other time then perhaps." ("base", xpos="far_left", ypos="head") + + ############## + ## Swimsuit ## + ############## + elif item == lun_outfit_swimsuit: #Req 7 (no bra, no panties) + gen "I've got a swimsuit for you to wear." ("base", xpos="far_left", ypos="head") + lun "Are we going swimming?" ("soft", "narrow", "raised", "mid") + gen "No, I just thought you could wear it in here." ("base", xpos="far_left", ypos="head") + lun "Inside?" ("angry", "base", "base", "stare") + gen "*Err*... Yes?" ("base", xpos="far_left", ypos="head") + lun "..." ("soft", "wide", "base", "stare") + gen "Hello?" ("base", xpos="far_left", ypos="head") + lun "..." ("soft", "wide", "base", "stare") + gen "(I think I just blew her mind...)" ("base", xpos="far_left", ypos="head") + gen "[luna_name]?" ("base", xpos="far_left", ypos="head") + lun "..." ("soft", "wide", "base", "stare") + gen "[luna_name]!" ("base", xpos="far_left", ypos="head") + lun "Oh, sorry [lun_genie_name] what did you say?" ("angry", "wide", "base", "mid") + gen "Nevermind... Forget it." ("base", xpos="far_left", ypos="head") + + ###################### + ## Flight Attendant ## + ###################### + elif item == lun_outfit_flight_attendant: #Req 7 (No Bra) + gen "Put on this flight attendant outfit for me will you?" ("base", xpos="far_left", ypos="head") + lun "But [lun_genie_name], I'd have to take off my bra for this!" ("mad", "wide", "base", "mid") + gen "So?" ("base", xpos="far_left", ypos="head") + lun "Haven't you heard of the nipple biting mouth suckers?!" ("clench", "base", "base", "mid") + gen "Oh, yeah of course!" ("base", xpos="far_left", ypos="head") + gen "Although perhaps you could remind me..." ("base", xpos="far_left", ypos="head") + lun "The plant... Professor Sprout told us to watch out for them as they're quite rowdy this time of year." ("angry", "wink", "base", "mid") + gen "Rowdy you say?" ("base", xpos="far_left", ypos="head") + lun "Yes, she's showed me a great many times how dangerous they can be around nipples." ("angry", "closed", "base", "mid") + gen "I see..." ("base", xpos="far_left", ypos="head") + + ############ + ## Summer ## + ############ + elif item == lun_outfit_summer: #Req 7 (No Bra) + gen "I've got this summer outfit for you to put on." ("base", xpos="far_left", ypos="head") + gen "Since it's pretty hot you should probably wear it without your bra on." ("base", xpos="far_left", ypos="head") + lun "Take off my bra?" ("soft", "base", "base", "mid") + lun "Well that might be a problem..." ("upset", "base", "base", "down") + gen "Why's that?" ("base", xpos="far_left", ypos="head") + lun "Well... It's a bit embarrassing actually..." ("angry", "narrow", "base", "R") + lun "My latch got stuck on it..." ("disgust", "base", "base", "downL") + gen "Your... latch?" ("base", xpos="far_left", ypos="head") + lun "Yes [lun_genie_name]..." ("angry", "base", "worried", "mid") + gen "Sounds more like artificial content gating to me..." ("base", xpos="far_left", ypos="head") + lun "Sorry?" ("angry", "base", "raised", "mid") + gen "Don't worry... They know what I meant..." ("base", xpos="far_left", ypos="head") + lun "*Hmm*..." ("normal", "base", "base", "R") + + ################# + ## Party Dress ## + ################# + elif item == lun_outfit_party: #Req 7 (No Bra) + gen "I've got the perfect dress for you to wear!" ("base", xpos="far_left", ypos="head") + lun "Really? Exciting!" ("grin", "base", "base", "mid") + gen "Yes, I can't wait to see what your nipples will look like in this!" ("base", xpos="far_left", ypos="head") + lun "My... Nipples [lun_genie_name]?" ("soft", "wink", "base", "mid") + gen "Yes, you'd have to take your bra off for this one... It's the only way." ("base", xpos="far_left", ypos="head") + lun "*Hmm*... I'm not sure that's the proper way of wearing a dress..." ("soft", "wink", "base", "mid") + gen "What do you--" ("base", xpos="far_left", ypos="head") + gen "(Since when did she start caring about how to wear clothes properly?)" ("base", xpos="far_left", ypos="head") + + ######################### + ## Harley Quinn Outfit ## + ######################### + elif item == lun_outfit_harley_quinn: # Req 7 (No Bra, No Panties) + gen "I've got this Harley Quinn costume for you to wear." ("base", xpos="far_left", ypos="head") + lun "*Hmm*?" ("soft", "base", "raised", "mid") + lun "Harley Quinn?" ("open", "base", "raised", "mid") + gen "Yes, she's--" ("base", xpos="far_left", ypos="head") + lun "But sir, this costume has no underwear!" ("angry", "wide", "base", "mid") + lun "Surely, I can't go around without any on!" ("mad", "happyCl", "base", "mid") + gen "Why not?" ("base", xpos="far_left", ypos="head") + lun "The wrack--" ("angry", "wide", "base", "mid") + gen "Not those things again!" ("base", xpos="far_left", ypos="head") + + ########################### + ## Police Officer Outfit ## + ########################### + elif item == lun_outfit_police: #Req 7 (No Bra) + gen "Put on the police cosplay uniform will you?" ("base", xpos="far_left", ypos="head") + lun "Police?" ("soft", "base", "raised", "mid") + gen "Yes?" ("base", xpos="far_left", ypos="head") + lun "I'm not sure what that is..." ("upset", "narrow", "raised", "mid") + gen "What do you--" ("base", xpos="far_left", ypos="head") + gen "I'm talking about this kind of uniform..." ("base", xpos="far_left", ypos="head") + lun "Oh!!" ("open", "wide", "base", "mid") + gen "(Now she's got it...)" ("base", xpos="far_left", ypos="head") + lun "But [lun_genie_name]... This outfit doesn't have a bra!" ("clench", "narrow", "base", "mid") + gen "I'm sure the outfit is tight enough to keep them contained, don't you think?" ("base", xpos="far_left", ypos="head") + lun "I'm more worried about what could find its way into it..." ("annoyed", "narrow", "base", "down") + gen "(And here I thought she wanted some hands on experience.)" ("base", xpos="far_left", ypos="head") + lun "(Can't let those wrackspurts get to me...)" ("disgust", "narrow", "base", "R") + + else: + lun "This outfit seems to have wrackspurts all over it!" ("mad", "base", "base", "down") + gen "(I don't remember cumming on this piece of garment...)" ("base", xpos="far_left", ypos="head") + gen "(!!!)" ("angry", xpos="far_left", ypos="head") + gen "(Could it be--...)" ("angry", xpos="far_left", ypos="head") + lun "Are you okay [lun_genie_name]? You look pale." ("angry", "base", "raised", "mid") + gen "Yes, I'm fine. I guess you can stay in your clothes... for now." ("base", xpos="far_left", ypos="head") + + return + +label lun_reaction_blacklist(item): + lun "Will that really help? With the wrackspurts I mean." ("soft", "narrow", "base", "mid") + + if "top" in item.blacklist and luna.is_worn("top"): + lun "I would need to remove my top." ("open", "base", "base", "down") + + if "bottom" in item.blacklist and luna.is_worn("bottom"): + lun "I don't think I could wear bottoms with this..." ("upset", "narrow", "base", "down") + + if "bra" in item.blacklist and luna.is_worn("bra"): + lun "It seems no bra can fit in this garment." ("open", "base", "base", "down") + + if "panties" in item.blacklist and luna.is_worn("panties"): + lun "The Wrackspurts would have a feast as I would not be able to wear panties with this." ("upset", "narrow", "base", "down") + + gen "Trust me, I know what I'm doing." ("base", xpos="far_left", ypos="head") + lun "If you say so [lun_genie_name]." ("base", "base", "base", "mid") + + return + +label lun_reaction_fallback(item): + if lun_whoring < get_character_requirement("luna", "unequip top") and not "top" in luna.blacklist and not item.type == "top": + $ luna.equip(lun_top_school1) + + if lun_whoring < get_character_requirement("luna", "unequip bottom") and not "bottom" in luna.blacklist and not item.type == "bottom": + $ luna.equip(lun_top_school2) + + if lun_whoring < get_character_requirement("luna", "unequip bra") and not "bra" in luna.blacklist and not item.type == "bra": + $ luna.equip(lun_bra_base1) + + if lun_whoring < get_character_requirement("luna", "unequip panties") and not "panties" in luna.blacklist and not item.type == "panties": + $ luna.equip(lun_panties_base1) + + lun "Just give me a second, I need to get my clothes back in order." ("open", "base", "base", "R") + lun "" ("base", "base", "base", "mid") + return diff --git a/game/scripts/characters/snape/chibi.rpy b/game/scripts/characters/snape/chibi.rpy new file mode 100644 index 00000000..adaf9994 --- /dev/null +++ b/game/scripts/characters/snape/chibi.rpy @@ -0,0 +1,77 @@ +label sna_chibi(action=None, xpos=None, ypos=None, flip=False): + $ snape_chibi.position(xpos, ypos, flip) + + if action == "hide": + $ snape_chibi.hide() + return + elif action == "leave": + hide snape_main + hide screen bld1 + hide screen blktone + call play_sound("door") + $ snape_chibi.hide() + with d3 + pause .5 + return + elif action == "reset": + $ snape_chibi.do(None) + return + + $ snape_chibi.do(action) + + return + +label sna_walk(xpos=None, ypos=None, speed=1.0, action=None, reduce=False, path=None, flip=False): + call hide_characters + hide screen bld1 + hide screen blktone + with d3 + + if action == "enter": + call play_sound("door") + call sna_chibi(None, "door", "base", flip) + with d3 + if xpos or ypos: + $ snape_chibi.move((xpos, ypos), speed, reduce) + elif action == "leave": + $ snape_chibi.show() + $ snape_chibi.move(("door", "base"), speed, reduce) + call play_sound("door") + $ snape_chibi.hide() + with d3 + pause .5 + elif path: + $ snape_chibi.show() + $ snape_chibi.move(path, speed, reduce) + else: + $ snape_chibi.show() + $ snape_chibi.move((xpos, ypos), speed, reduce) + + return + +# Screens +screen with_snape(ani=False): + tag hanging_with_snape + zorder 3 + if ani: + if game.daytime: + add "ch_gen toast_goblet_daytime" xpos 435 ypos 200 # Different shadow. + else: + add "ch_gen toast_goblet" xpos 435 ypos 200 + add "snape_toast_goblet" xpos 618 ypos 200 zoom 0.5 + + else: + if game.daytime: + add "characters/genie/chibis/drinking/01_day.webp" xpos 435 ypos 200 zoom 0.5 # Different shadow. + else: + add "characters/genie/chibis/drinking/01.webp" xpos 435 ypos 200 zoom 0.5 + add "characters/snape/chibis/drinking/01.webp" xpos 618 ypos 200 zoom 0.5 + +# Chibi definition +default snape_chibi = Chibi("snape", ["base"], update_snape_chibi) + +init python: + def update_snape_chibi(chibi): + # Assume chibi action has a matching image definition + chibi_image = "ch_sna {}".format(chibi.action or "stand") + chibi["base"] = chibi_image diff --git a/game/scripts/characters/snape/chitchats.rpy b/game/scripts/characters/snape/chitchats.rpy new file mode 100644 index 00000000..3bd3e336 --- /dev/null +++ b/game/scripts/characters/snape/chitchats.rpy @@ -0,0 +1,480 @@ + + +### Snape Chitchat ### + +label snape_chitchat: + + if snape_chatted: + return + + $ snape_chatted = True + + $ random_number = renpy.random.randint(1, 10) + + # Prior to hermione introductions + if not hermione_unlocked: + if random_number <= 5: + sna "I am starting to get worried about Albus.." ("snape_06") + sna "I simply hope he's alright." ("snape_09") + else: + sna "Do you know how much longer will that spell of yours last?" ("snape_05") + sna "I have important matters to discuss with Albus very soon..." ("snape_09") + return + + ### WHORING LEVEL 01 ### + if her_whoring >= 0 and her_whoring <= 2: + if random_number == 1: + sna "Do You really think you can do this?" ("snape_24") + sna "Do You think you can break the girl?" ("snape_25") + + elif random_number == 2: + if game.weather in ("rain", "blizzard"): + sna "Isn't the weather lovely today?" ("snape_02") + sna "I wish it would stay like that forever." ("snape_06") + else: + sna "Don't you just hate this wretched sunny weather?" ("snape_01") + sna "I wish it would rain every day." ("snape_06") + + elif random_number == 3: + sna "I am feeling rather doubtful about our whole plan again..." ("snape_06") + + elif random_number == 4: + sna "Are you sure that you are not Albus Dumbledore?" ("snape_05") + sna "I'm still having a hard time believing this whole thing sometimes..." + + elif random_number == 5: + sna "I killed a pupil once." ("snape_01") + sna "Yes... I strangled the maggot with my bare hands." ("snape_02") + sna "........*low growl*." ("snape_03") + sna "Did that sound believable?" ("snape_05") + sna "The moment those animals stop fearing me, I'm done for." ("snape_06") + sna "Cultivating fear in the hearts of your students is the most important task for every teacher." ("snape_26") + + elif random_number == 6: + sna "Those Weasley maggots..." ("snape_04") + sna "One of these days I'll just snap, I swear." ("snape_07") + + elif random_number == 7: + sna "Don't you think that owl post is a bit ridiculous?" ("snape_05") + sna "I'd much rather use ravens." + + elif random_number == 8: + sna "I'm having the worst day of my life..." ("snape_06") + sna "So I'm really Not in the mood for chit-chats..." + + elif random_number == 9: + sna "Being a wizard is a twenty-four hours a day..." ("snape_04") + sna "seven days a week..." ("snape_03") + sna "365 days a year job." ("snape_04") + sna "We get no vacation days..." + + elif random_number == 10: + sna "Quidditch..." ("snape_04") + sna "What a waste of time and resources!" ("snape_10") + sna "" ("snape_04") + + + ### WHORING LEVEL 02 ### + if her_whoring >= 3 and her_whoring <= 5: + if random_number == 1: + sna "I have yet to notice any changes in miss Granger's behaviour..." ("snape_24") + sna "Are you sure that you know what you're doing?" ("snape_05") + sna "" ("snape_09") + + elif random_number == 2: + sna "It sure feels good to be able to grant house points or take them away whenever I feel like it." ("snape_24") + sna "My authority among the students is growing every day..." + sna "And when I say \"authority\" I mean \"fear\"." ("snape_02") + + elif random_number == 3: + sna "Did you know that the full moon is known to boost male potency?" ("snape_24") + sna "It also makes it easier to focus at a task at hand, making you more proactive." + sna "But who gives a damn about that, am I right?" ("snape_28") + sna "" ("snape_29") + + elif random_number == 4: + sna "My precious Slytherins make all of this torment worth while..." ("snape_06") + sna "Their skirts are getting shorter every week, I swear." ("snape_19") + + elif random_number == 5: + sna "There was a time when I was young and full of hope..." ("snape_06") + sna "Ha-ha... I'm pulling your leg, mate." ("snape_28") + sna "I was never full of hope..." ("snape_29") + + elif random_number == 6: + sna "Someone broke into my personal storage..." ("snape_16") + sna "Only took some Gillyweed... lucky they didn't take any of my amorentia." ("snape_29") + sna "Not that I need or use such things." ("snape_09") + + elif random_number == 7: + sna "A \"Men's rights movement\"...?" ("snape_05") + sna "What's next? A house elves' rights movement?" ("snape_04") + sna "How could a top student be that dumb?" ("snape_06") + + elif random_number == 8: + sna "I don't play favourites with my students." ("snape_05") + sna "I merely tolerate some of them and hate the rest." ("snape_04") + + elif random_number == 9: + sna "There are four student houses at Hogwarts..." ("snape_24") + sna "Slytherin, Ravenclaw, Gryffindor, and..." + sna "... and Huff-something..." ("snape_05") + sna "No one really cares." ("snape_29") + sna "" ("snape_09") + + elif random_number == 10: + sna "Brooms are for kids and witches." ("snape_24") + sna "You'll never see a self-respecting wizard prancing around on a broomstick." ("snape_05") + sna "" ("snape_09") + + + ### WHORING LEVEL 03 ### + if her_whoring >= 6 and her_whoring <= 8: + if random_number == 1: + sna "Any progress on breaking our little ms. know-it-all?" ("snape_24") + sna "" ("snape_09") + + elif random_number == 2: + sna "The other day this one girl sold me her panties for five house points." ("snape_24") + sna "And man, was she excited about that..." ("snape_14") + sna "I think she would've given them away for free just to please me." ("snape_19") + sna "" ("snape_09") + + elif random_number == 3: + sna "I'm having a rather pleasant day so far..." ("snape_23") + sna "Bet you didn't expect to hear me saying that?" ("snape_02") + + elif random_number == 4: + sna "Quidditch seems to steadily gain more and more popularity over the years..." ("snape_24") + sna "How disappointing..." ("snape_04") + + elif random_number == 5: + sna "My life was incredibly dull before your arrival..." ("snape_24") + sna "Nowadays it's..." ("snape_05") + sna "... less dull." ("snape_02") + + elif random_number == 6: + sna "Regrets? I don't know the meaning of the word!" ("snape_05") + sna "I live a very fulfilling life." ("snape_06") + sna "Ha-ha-ha! I'm sorry, I just can't say such nonsense with a straight face." ("snape_28") + sna "" ("snape_26") + + elif random_number == 7: + sna "There is no room for mistakes during class." ("snape_24") + sna "One slip-up and the bloody bastards will tear you to shreds." ("snape_04") + + elif random_number == 8: + sna "You are the only person I have to answer to..." ("snape_04") + sna "So I can almost literally do whatever the bloody hell I want these days..." ("snape_05") + sna "..............." ("snape_09") + sna "So that's what freedom feels like, *huh*?" ("snape_06") + + elif random_number == 9: + sna "Autumn... the most depressing time of the year..." ("snape_06") + sna "I Love it!" ("snape_02") + sna "" ("snape_23") + + elif random_number == 10: + sna "I have a magical portrait of a stripper hanging in my room." ("snape_24") + sna "One of my most precious possessions." ("snape_22") + sna "" ("snape_09") + + + ### WHORING LEVEL 04 ### + if her_whoring >= 9 and her_whoring <= 11: + if random_number == 1: + sna "Lately miss Granger has gotten aggressive almost to the point of open hostility..." ("snape_24") + sna "I hope you know what you're doing..." ("snape_05") + sna "" ("snape_09") + + elif random_number == 2: + sna "I shouldn't feel bad about having sex with my students, right?" ("snape_26") + sna "I mean, you should see the way some of those girls wear their uniforms..." ("snape_05") + sna "They're practically asking for it." ("snape_13") + sna "" ("snape_12") + + elif random_number == 3: + sna "It's been raining a lot lately..." ("snape_23") + sna "I wonder if I enjoy rainy weather so much simply because it makes most people miserable..." ("snape_02") + sna "" ("snape_23") + + elif random_number == 4: + sna "According to a recent study nine out of ten girls secretly fantasise about being abused by their teacher." ("snape_24") + sna "I bet that tenth girl was Hermione Granger." ("snape_03") + sna "" ("snape_01") + + elif random_number == 5: + sna "These days I have to actually make an effort to maintain my usual bad mood." ("snape_24") + sna "" ("snape_23") + + elif random_number == 6: + sna "Do You have a few condoms to spare?" ("snape_24") + sna "I have a whole pack but..." ("snape_25") + sna "... they've expired years ago..." ("snape_06") + sna "The changes you brought into my life, mate." ("snape_02") + sna "" ("snape_23") + + elif random_number == 7: + sna "You think we could turn Hogwarts into a \"girls only\" school?" ("snape_24") + sna "Hogwarts Girls Academy!" ("snape_23") + sna "Now that would be bloody perfect... except for Lockhart maybe." ("snape_13") + + elif random_number == 8: + sna "Why did the teacher cross the road?" ("snape_24") + sna "To get away from his students!" ("snape_25") + sna "Ha-ha-ha! Gets me every time!" ("snape_28") + sna "" ("snape_25") + + elif random_number == 9: + sna "Want to hear a funny story?" ("snape_24") + sna "Well, I don't know any..." ("snape_06") + + elif random_number == 10: + sna "Do you know what a \"royal goblet\" is?" ("snape_05") + sna "You do, don't you?" ("snape_13") + sna "" ("snape_23") + + + ### WHORING LEVEL 05 ### + if her_whoring >= 12 and her_whoring <= 14: + if random_number == 1: + sna "Fifteen points for a blowjob is a fair price, right?" ("snape_24") + sna "" ("snape_23") + + elif random_number == 2: + sna "Have you ever been in love, mate?" ("snape_24") + sna "Have you ever been in love with a schoolgirl?" ("snape_02") + sna "What about half a dozen of them at once?" ("snape_22") + sna "" ("snape_20") + + elif random_number == 3: + sna "Something rather brilliant happened last night between me and this Slytherin minx." ("snape_20") + sna "Long story short, all of my muscles ache and I still feel rather dehydrated..." ("snape_22") + sna "" ("snape_13") + + elif random_number == 4: + sna "It's getting colder lately..." ("snape_24") + sna "Winter is coming..." ("snape_23") + + elif random_number == 5: + sna "Have you ever seen muggle women dressed as witches?" ("snape_24") + sna "So adorable." ("snape_19") + + elif random_number == 6: + sna "Do you know what an \"Internet\" is?" ("snape_24") + sna "Apparently it allows you to go \"on the line\" and see magical photographs of naked muggle women." ("snape_02") # SNAPE SAYS "ON THE LINE" ON PURPOSE. I KNOW THAT WAS REALLY OBVIOUS MAESTRO + sna "Kind of makes me wish we had one here in Hogwarts." ("snape_26") + sna "" ("snape_09") + + elif random_number == 7: + sna "I have two major passions in life..." ("snape_24") + sna "Dark arts..." + sna "......" ("snape_12") + sna "... and sluts." ("snape_13") + + elif random_number == 8: + sna "You think I ought to cut down on my drinking?" ("snape_24") + sna "But my life is so stressful..." ("snape_06") + sna "*Hmm*..." ("snape_09") + sna "I'll try and cut down on the liquor..." ("snape_06") + sna "In favour of sweaty monkey-sex with my students!" ("snape_21") + sna "" ("snape_19") + + elif random_number == 9: + sna "Miss Granger has been suspiciously quiet lately..." ("snape_24") + sna "I bet she is scheming something..." ("snape_03") + sna "" ("snape_01") + + elif random_number == 10: + sna "It's quite easy to write a book and kill off half of the main characters for the sake of dramatic impact..." ("snape_24") + sna "To put your characters against impossible odds and let them make it out alive in a believable manner..." + sna "Now {size=+7}that{/size} requires skill." ("snape_02") + sna "" ("snape_23") + + + ### WHORING LEVEL 06 ### + if her_whoring >= 15 and her_whoring <= 17: + if random_number == 1: + sna "What if the girl is not our pet, but we are hers?" ("snape_11") + sna "" ("snape_26") + + elif random_number == 2: + sna "Have you heard of the \"Slug club\"?" ("snape_24") + sna "What if I start a club of my own?" + sna "I would call it the \"Snape Club\"!" ("snape_23") + sna "I would invite girls over, offer them some tea and muffins..." + sna "Feel them up a little..." ("snape_13") + sna "Bloody brilliant!" ("snape_22") + sna "" ("snape_02") + + elif random_number == 3: + sna "Tell me Genie... Have you ever had your asshole licked clean by a witch?" ("snape_02") + sna "A life changing experience, neither less nor more..." ("snape_21") + sna "" ("snape_02") + + elif random_number == 4: + sna "So, how is the training going?" ("snape_24") + sna "All according to plan I hope?" + sna "" ("snape_05") + + elif random_number == 5: + sna "I can see the thestrals, you know..." ("snape_06") + sna "" ("snape_09") + + elif random_number == 6: + sna "You know what I like about Quidditch?" ("snape_24") + sna "Nothing! Not a single bloody thing!" ("snape_15") + sna "" ("snape_16") + + elif random_number == 7: + sna "Hogwarts benefited greatly from your arrival." ("snape_24") + sna "And when I say \"Hogwarts\" I mean \"me\"." ("snape_02") + sna "" ("snape_23") + + elif random_number == 8: + sna "Real wizards wear black." ("snape_24") + sna "Am I right?" ("snape_02") + sna "" ("snape_23") + + elif random_number == 9: + sna "Some of those Slytherin girls simply adore me these days..." ("snape_24") + sna "Personally I'd much rather be feared..." ("snape_05") + sna "But I am willing to settle for mindless adoration..." ("snape_23") + + elif random_number == 10: + sna "You are being way too generous with those Gryffindor points, mate." ("snape_24") + sna "Lately I can barely keep up with you..." ("snape_25") + sna "" ("snape_29") + + + ### WHORING LEVEL 07 ### + if her_whoring >= 18 and her_whoring <= 20: + if random_number == 1: + sna "Miss Granger really is changing. I can see it clearly now..." ("snape_24") + sna "Her grades went down and even her attendance is far from perfect now..." + sna "But despite that she continues to excel at being a pain in my arse!" ("snape_10") + sna "" ("snape_01") + + elif random_number == 2: + sna "My least favourite colour?" ("snape_05") + sna "Let me give you two: red and gold." ("snape_07") + sna "" ("snape_04") + + elif random_number == 3: + sna "I hear the vampire theme is quite popular among the girls lately." ("snape_24") + sna "I would make a great vampire, don't you think?" ("snape_05") + sna "Maybe I should buy a couple of those fake fangs..." + sna "Just to drive the horny, little sluts completely crazy." ("snape_21") + sna "" ("snape_02") + + elif random_number == 4: + sna "I... hate my life." ("snape_24") + sna "No, wait, let me try this again..." ("snape_16") + sna "I... hate my life." ("snape_17") + sna "Dammit! I'm trying to say \"love\" but it just won't come out..." ("snape_25") + sna "I don't think I've ever used the words \"love\" and \"life\" in one sentence before." ("snape_29") + sna "Let me try this again..." ("snape_06") + sna "I ha...{w} lo... {w}love my life!" ("snape_10") + sna "There you go, I love my life..." ("snape_23") + + elif random_number == 5: + sna "Sunlight, chocolate, Quidditch, cats, and orange juice..." ("snape_01") + sna "That's a list of things I don't care for..." + sna "Here is a short list of things I do care for a great deal..." ("snape_02") + sna "The dark arts, wine, and pussy." ("snape_23") + + elif random_number == 6: + sna "have You ever seen two wizards in a fistfight?" ("snape_02") + sna "Bloody hilarious!" ("snape_28") + sna "" ("snape_23") + + elif random_number == 7: + sna "You know that feeling when you just came in a girl's mouth and she swallows it all and says: \"Thank you, professor\"?" ("snape_14") + sna "Isn't that the best?" ("snape_13") + sna "" ("snape_23") + + elif random_number == 8: + sna "do You think the Hogwarts ghosts sometimes spy on girls taking when they a shower and such?" ("snape_24") + sna "If I were a ghost I know I would." ("snape_13") + sna "" ("snape_23") + + elif random_number == 9: + sna "This one girl confessed to me that she has frequent fantasises about being abused by that squib misterFilch." ("snape_19") + sna "I think I could arrange that. Should I?" ("snape_14") + sna "" ("snape_02") + + elif random_number == 10: + sna "I used to hate my job so much..." ("snape_24") + sna "Hate is clean, simple, and certain..." ("snape_06") + sna "Now, don't get me wrong - I still hate it." ("snape_09") + sna "But I also sort of love it now..." ("snape_05") + sna "How could I not? With all that has been happening lately?" + sna "To both cherish and hate something to an equal degree..." ("snape_06") + sna "It's like being in love again..." ("snape_19") + sna "" ("snape_06") + + + ### WHORING LEVEL 08+ ### + if her_whoring >= 21: + if random_number == 1: + sna "Do you know what a \"bukkake\" is?" ("snape_24") + sna "What about \"deep throating\"?" + sna "And then there is also \"hate-sex\"." + sna "Students these days, mate..." ("snape_05") + sna "They have a special name for everything." + sna "Although \"hate-sex\" has always been around..." ("snape_06") + sna "Back in my days we just called it \"sex\"." ("snape_02") + + elif random_number == 2: + sna "I heard a mysterious ticking noise today..." ("snape_04") + sna "It was kind of catchy..." ("snape_28") + + elif random_number == 3: + sna "I organised a small party the other day..." ("snape_24") + sna "One girl and three boys..." + sna "They fucked her and I watched..." ("snape_13") + sna "........................." ("snape_29") + sna "You think I've been exercising my dark side a bit too often lately?" ("snape_05") + sna "" ("snape_06") + + elif random_number == 4: + sna "I'm all out of condoms, mate." ("snape_24") + sna "You think you could hook me up?" ("snape_02") + sna "" ("snape_01") + + elif random_number == 5: + sna "I am secretly making this special herbal brew that should make her tits lactate..." ("snape_24") + sna "Pretty brilliant, *huh*?" ("snape_13") + sna "" ("snape_23") + + elif random_number == 6: + sna "So, this witch has my cock in her mouth, right?" ("snape_24") + sna "Her hot girlfriend is cleaning my asshole with her tongue..." ("snape_02") + sna "Meanwhile this third girl is on her knees with her mouth open, waiting for me to spit in it..." + sna "And every time I spit, she says: \"Thank you, professor Snape\"." + sna "That was a bloody surreal evening..." ("snape_22") + sna "" ("snape_02") + + elif random_number == 7: + sna "This one girl has been begging me to urinate in her mouth for days, now..." ("snape_06") + sna "Persistent little minx..." + sna "Should I give in?" ("snape_05") + sna "" ("snape_23") + + elif random_number == 8: + sna "I mercilessly dominate both male and female students..." ("snape_04") + sna "But in very different ways." ("snape_22") + sna "" ("snape_23") + + elif random_number == 9: + sna "I love my life!" ("snape_23") + sna "Still hate my job though..." ("snape_16") + sna "I wish I could skip all the teaching, but keep all the fucking." ("snape_14") + sna "" ("snape_23") + + elif random_number == 10: + sna "I almost feel bad for having all the fun." ("snape_24") + sna "Do You want me to send you up some fresh Slytherin slut?" ("snape_14") + sna "" ("snape_23") + + return diff --git a/game/scripts/characters/snape/common.rpy b/game/scripts/characters/snape/common.rpy new file mode 100644 index 00000000..5337de10 --- /dev/null +++ b/game/scripts/characters/snape/common.rpy @@ -0,0 +1,72 @@ +label update_snape: + $ snape_flip = 1 + return + +define character.snape_say = Character("Severus Snape", show_icon="snape") + +init python: + def sna(what, face=None, xpos=None, ypos=None, pos=None, flip=None, trans=None, animation=False, wand=False, **kwargs): + global snape_xpos, snape_ypos, snape_face, snape_animation, snape_zorder, snape_flip, snape_zoom + redraw = False + tag = "snape_main" + layer = "screens" + #showing = renpy.showing(name=tag, layer=layer) + + if xpos != None or ypos != None: + xpos = snape_xpos if xpos == None else sprite_pos.get("x").get(xpos, xpos) + ypos = snape_ypos if ypos == None else sprite_pos.get("y").get(ypos, ypos) + snape_xpos = xpos + snape_ypos = ypos + redraw = True + + head_ypos = sprite_pos.get("y").get("head") + head_only = snape_ypos == head_ypos + + # The easiest way to fix image positions for Snape is to use offsets. + # It's not ideal, but it's better than having to change all calls manually. + if snape_ypos in ("head", head_ypos): + xoffset = -25 + yoffset = 150 + else: + xoffset = -50 + yoffset = 0 + + if face: + snape_face = face + redraw = True + + if animation != False: + if isinstance(animation, list): + snape_animation = animation + else: + snape_animation = [animation] + redraw = True + + if flip != None: + snape_flip = -1 if flip else 1 + redraw = True + + if redraw: + base_transform = doll_transform((snape_xpos + xoffset, snape_ypos + yoffset), snape_zoom, snape_flip) + sprite = Image("characters/snape/main/"+snape_face+".webp") + + if wand: + sprite = Fixed(sprite, "characters/snape/main/wand.webp") + + renpy.show(name=tag, at_list=[base_transform] + snape_animation, layer=layer, what=sprite, zorder=snape_zorder) + + if not renpy.in_rollback(): + if trans: + renpy.with_statement(trans) + else: + renpy.with_statement(d2) + + if what: + character.snape_say(what, **kwargs) + + if head_ypos: + renpy.hide(name=tag, layer=layer) + +screen snape_picture_frame(): + add "characters/snape/main/picture_frame.webp" xpos snape_xpos ypos snape_ypos xzoom snape_flip zoom 0.5 + zorder snape_zorder+1 diff --git a/game/scripts/characters/snape/events/hangouts.rpy b/game/scripts/characters/snape/events/hangouts.rpy new file mode 100644 index 00000000..6a529ad1 --- /dev/null +++ b/game/scripts/characters/snape/events/hangouts.rpy @@ -0,0 +1,664 @@ + + +### Snape Hangout Event ### + +label snape_hangout: + + call setup_fireplace_hangout(char="snape") + + $ ss_he_counter += 1 + + $ ss_he_drink.start() + + label snape_hangout_continue: + hide screen bld1 + hide snape_main + show screen with_snape(ani=False) + with fade + call bld + + + ### Intro Events ### + # Events are located in the character's intro file. + + # Hermione + if hermione_intro.E1_complete and not ss_he.hermione_E1: + jump ss_he_hermione_E1 # Fist discussion about Hermione with Snape. + if hermione_intro.E2_complete and not ss_he.hermione_E2: + jump ss_he_hermione_E2 # Second discussion about Hermione with Snape. + + # Tonks + if tonks_intro.E1_complete and not ss_he.tonks_E1: + jump ss_he_tonks_E1 + if tonks_intro.E3_complete and not ss_he.tonks_E2: + jump ss_he_tonks_E2 + if ss_he.tonks_E2 and not ss_he.tonks_E3: + if her_tier < 2: # Event won't happen at this point in the game anymore. + $ ss_he.tonks_E3 = True + else: + jump ss_he_tonks_E3 + + # Cho + if cho_intro.E2_complete and not ss_he.cho_E1: + jump ss_he_cho_E1 + if cho_quiz.lost and not quidditchguide_ITEM.unlocked and not cho_quiz.complete and not ss_he.cho_E2: + # After failing the Quiz. + jump ss_he_cho_E2 + + + ### General Events ### + # Events are located here. + + # Hermione + if hg_strip.trigger and not ss_he.hermione_strip: #After second dance where Snape entered room. + jump ss_he_hermione_strip # Get to invite Snape to watch. + + # (Quidditch) Ask Snape for help with Slytherins. + if cho_quid.E6_complete and not cho_quid.E9_complete: + jump cho_quid_E9 + + ### Snape Stories ### + # Events are located here. + + if not ss_he_story.is_complete(): + $ ss_he_story.start() + + label end_snape_hangout: + show screen with_snape(ani=True) + call bld + call notes + ">You spend the evening hanging out with Professor Snape.\n>Your relationship with him has improved." + + label end_snape_hangout_points: + + if sna_friendship < 100: + if game.weather in {"rain", "storm"}: + # Rain puts him in a good mood. + $ sna_friendship += 1 + + if game.difficulty == 1: + $ sna_friendship += 5 + elif game.difficulty == 2: + $ sna_friendship += 4 + else: + $ sna_friendship += 3 + + if sna_friendship > 100: + $ sna_friendship = 100 + + $ slytherin += renpy.random.randint(5, 15) + + label end_snape_hangout_no_points: + + $ chair_OBJ.hidden = False + $ fireplace_OBJ.foreground = None + + hide screen with_snape + + if game.daytime: + jump night_start + else: + jump day_start + +label ss_he_wine_intro: + call bld + gen "Look what I've got!" ("base", xpos="far_left", ypos="head") + sna "*Hmm*...?" ("snape_05", ypos="head") + sna "Let me see..." + pause.1 + + # Show wine + call give_gift(">You hand over the bottle you found in the cupboard to professor Snape...", wine_ITEM) + + sna "This one has got to be from Albus' personal stash!" ("snape_24") + sna "Some pricey and incredibly rare stuff." ("snape_06") + gen "Shall we then?" ("base", xpos="far_left", ypos="head") + sna "We most certainly shall!" ("snape_02") + + jump snape_hangout_continue + + +label ss_he_wine_intro_E2: + call bld + gen "Care for another bottle?" ("base", xpos="far_left", ypos="head") + pause.1 + + call give_gift(">You hand over the bottle you found in the cupboard to professor Snape...", wine_ITEM) + + sna "Another bottle of Dumbledore's wine?" ("snape_05", ypos="head") + sna "Did you find Albus' secret stash or was it his personal wine cellar?" ("snape_05") + gen "It's more of a \"wine cabinet\", I'd say." ("base", xpos="far_left", ypos="head") + gen "And I believe there is more where this came from..." ("base", xpos="far_left", ypos="head") + sna "Seriously, how big is that stash?" ("snape_05") + gen "Why don't we find out?" ("grin", xpos="far_left", ypos="head") + sna "It's sure good to be us! let's uncork that bastard!" ("snape_02") + + jump snape_hangout_continue + + +label ss_he_wine_repeat: + call bld + gen "Look what I've got!" ("base", xpos="far_left", ypos="head") + pause.1 + + call give_gift(">You hand over the bottle you found in the cupboard to professor Snape...", wine_ITEM) + + sna "Another one?" ("snape_05", ypos="head") + + $ random_number = renpy.random.randint(1, 6) + if random_number == 1: + sna "Splendid!" ("snape_02") + elif random_number == 2: + sna "Well done, my friend!" ("snape_02") + elif random_number == 3: + sna "Lately I am having a hard time drinking anything but this!" ("snape_02") + elif random_number == 4: + sna "Great! I feel less stressed out already!" ("snape_02") + elif random_number == 5: + sna "This just keeps getting better and better!" ("snape_02") + else: + sna "Let's uncork that bastard!" ("snape_02") + + jump snape_hangout_continue + + + +### Events ### + +label ss_he_hermione_strip: + # TAKES PLACE AFTER Hermione has danced for you and Snape. + sna "So..." ("snape_31", ypos="head") + sna "You got the girl to strip for you..." ("snape_35") + sna "And you didn't even invite me?!" ("snape_08") + gen "Well..." ("base", xpos="far_left", ypos="head") + gen "I don't think the girl would be willing to--" ("base", xpos="far_left", ypos="head") + sna "Those naked, perfectly shaped breasts..." ("snape_40") + sna "Those magnificent long legs..." ("snape_41") + sna "Her ample and tender behind..." ("snape_40") + sna "I've seen everything..." ("snape_41") + sna "I've seen it all!" ("snape_46") + gen "(...)" ("base", xpos="far_left", ypos="head") + sna "As much of a nuisance I think the girl is..." ("snape_43") + sna "{size=+7}I could stare at those tits all day!!!{/size}" ("snape_33") + gen "..." ("base", xpos="far_left", ypos="head") + sna "You've got to invite me next time, my friend!" ("snape_35") + sna "My life depends on it!" ("snape_36") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Sure, why the hell not.\"": + pass + "\"*Uhh*\"": + pass + + sna "Splendid!" ("snape_45") + sna "I can hardly wait, I tell you!" ("snape_37") + sna "Do you think she will let me touch them...?" ("snape_47") + hide snape_main + call blktone + + ">You spend the rest of the evening in Snape's company talking about Hermione's naked breasts." + + call hide_blktone + + $ ss_he.hermione_strip = True + + hide screen bld1 + with d3 + + jump end_snape_hangout_points + + + +### Snape Narrative ### + +label ss_he_story_E1: + call bld + gen "Alright. Teach me your wand-based magic now." ("base", xpos="far_left", ypos="head") + sna "Sure, I could do that..." ("snape_23", ypos="head") + sna "Or I could tell you some more about those ripe slytherin sluts..." ("snape_02") + gen "The latter, please." ("grin", xpos="far_left", ypos="head") + sna "Great... Get a load of this then..." ("snape_13") + hide snape_main + call blktone + + ">You spend the evening by discussing all sorts of inappropriate things with Professor Snape." + ">You feel a faint bond forming between you two..." + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_intro_E2: + call bld + gen "For our little enterprise to succeed..." ("base", xpos="far_left", ypos="head") + gen "You need to be more generous with these house point things..." ("base", xpos="far_left", ypos="head") + sna "Right, of course..." ("snape_09", ypos="head") + sna "Miss Granger will require a strong incentive..." ("snape_09") + sna "So putting my house in the lead is essential..." ("snape_09") + sna "Could take time though..." ("snape_06") + gen "Take time?" ("base", xpos="far_left", ypos="head") + gen "Why not just award a couple of hundred points to Slytherin and be done with it?" ("base", xpos="far_left", ypos="head") + sna "No, we need to be discreet with this..." ("snape_24") + sna "Awarding a whole bunch of points to my house without any reason could draw unwanted attention..." ("snape_05") + gen "*Hmm*... I see your point..." ("base", xpos="far_left", ypos="head") + hide snape_main + call blktone + + ">You spend the evening by conspiring against Hermione with professor Snape..." + ">The faint bond of friendship between you two strengthens." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_intro_E3: + sna "Have you heard of that \"men's rights movement\" nonsense?" ("snape_01", ypos="head") + sna "She is smart, popular, and has a will of iron..." ("snape_01") + sna "Lately I am starting to feel very doubtful about our whole plan..." ("snape_06") + gen "You shouldn't though..." ("base", xpos="far_left", ypos="head") + sna "Is that so..." ("snape_26") + gen "It may take some time, but I {size=+5}will{/size} break her." ("base", xpos="far_left", ypos="head") + gen "Just trust me." ("base", xpos="far_left", ypos="head") + sna "Alright..." ("snape_26") + sna "What choice do I have but to hope for the best...?" ("snape_06") + hide snape_main + call blktone + + ">You spend the evening by dreading the uncertain future with professor Snape." + ">A faint bond of trust is forming between you two." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_intro_E4: + sna "Tell me something, Genie..." ("snape_24", ypos="head") + gen "Yes?" ("base", xpos="far_left", ypos="head") + sna "Do you believe in the theory of parallel worlds?" ("snape_25") + gen "Well, it's hard not to. All things considered." ("base", xpos="far_left", ypos="head") + sna "True..." ("snape_23") + sna "So, you think somewhere out there is another version of me?" ("snape_05") + gen "Probably..." ("base", xpos="far_left", ypos="head") + sna "*Hmm*..." ("snape_23") + sna "Severus Snape - the ever cheerful white mage..." ("snape_23") + gen "Sure, why not?" ("base", xpos="far_left", ypos="head") + sna "What unsettling imagery you put into my mind..." ("snape_03") + gen "How about another version of that Granger girl?" ("base", xpos="far_left", ypos="head") + sna "Yes! Hermione Granger - the repulsive slut without any dignity! Yes, I like it!" ("snape_02") + gen "And what if in that other world the cheerful Severus teams up with some bizarre version of me?" ("base", xpos="far_left", ypos="head") + gen "And maybe together we train the slut Hermione to be a proper girl and a good student?" ("base", xpos="far_left", ypos="head") + sna "Ha-ha-ha! That's hilarious!" ("snape_28") + hide snape_main + call blktone + + ">You spend the evening discussing science, metaphysics, philosophy, and sluts." + ">the bond of friendship between you and Professor Snape strengthens." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + + +label ss_he_story_intro_E5: + sna "So... How is our little plan coming along?" ("snape_05", ypos="head") + sna "Is that wretched girl giving you trouble?" ("snape_05") + + menu: + "\"Yeah. She's stubborn.\"": + sna "No surprise there..." ("snape_06") + "\"No, not really...\"": + sna "Seriously?" ("snape_05") + sna "Interesting..." ("snape_05") + + sna "But you are positive you will be able to break her?" ("snape_01") + gen "Oh, absolutely." ("base", xpos="far_left", ypos="head") + gen "It may take some time though..." ("base", xpos="far_left", ypos="head") + sna "Well, we do have time..." ("snape_06") + sna "You are still pretty much powerless, right?" ("snape_05") + gen "Yeah, pretty much..." ("base", xpos="far_left", ypos="head") + sna "Splendid!" ("snape_02") + gen "......................." ("base", xpos="far_left", ypos="head") + sna "I mean, it is bad for {size=+5}you{/size}, but good for {size=+5}us{/size}, right?" ("snape_29") + gen "Right..." ("base", xpos="far_left", ypos="head") + hide snape_main + call blktone + + ">Professor Snape seems to feel awkward about benefiting from your misery..." + call notes + ">The bond of friendship between you two strengthens slightly..." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_E6: + call bld + gen "So, tell me about those Slytherin sluts some more!" ("base", xpos="far_left", ypos="head") + sna "What can I say? Life's been good to me lately, my friend." ("snape_23", ypos="head") + sna "These days I have a whole harem of skimpy students to choose from." ("snape_22") + gen "Nice!" ("grin", xpos="far_left", ypos="head") + sna "Yes. Thanks to you, I can do whatever the bloody hell I want!" ("snape_02") + sna "And more importantly..." ("snape_02") + sna "Whoever the hell I want!" ("snape_13") + gen "Seriously?" ("base", xpos="far_left", ypos="head") + sna "Well, sort of..." ("snape_09") + sna "Obviously I don't actually walk around and \"do whoever I want\"..." ("snape_09") + sna "But you wouldn't believe what some of those girls are willing to do in exchange for house points!" ("snape_13") + sna "Or even for the mere promise of good grades..." ("snape_22") + hide snape_main + call blktone + + ">Professor Snape's usual cold exterior disintegrates before your eyes..." + ">The bond of your friendship strengthens yet again..." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_intro_E7: + sna "So, back in your world you are some kind of all-powerful being?" ("snape_05", ypos="head") + gen "Yeah, sort of..." ("base", xpos="far_left", ypos="head") + sna "Then how come you do the bidding of that Jasmine woman?" ("snape_05") + gen "Oh... Well..." ("base", xpos="far_left", ypos="head") + gen "... she is a princess." ("base", xpos="far_left", ypos="head") + sna "So?" ("snape_05") + sna "Is she your princess? You are not even human." ("snape_05") + sna "Did you swear your loyalty to her?" ("snape_05") + gen "Not really..." ("base", xpos="far_left", ypos="head") + sna "Why do you even bother then?" ("snape_06") + sna "The way I see it, you are an all-powerful being and she is just some muggle..." ("snape_09") + gen "She's a what?" ("base", xpos="far_left", ypos="head") + sna "A human... She's just a human..." ("snape_25") + sna "So why bother trying to please her?" ("snape_05") + gen "Well it's complicated..." ("base", xpos="far_left", ypos="head") + sna ".............." ("snape_05") + gen ".................." ("base", xpos="far_left", ypos="head") + sna "She's hot, isn't she?" ("snape_02") + gen "Smoking..." ("base", xpos="far_left", ypos="head") + sna "Gotcha." ("snape_23") + hide snape_main + call blktone + + ">You and professor Snape share a bittersweet moment of complete male solidarity." + ">The bond of your friendship strengthens." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_intro_E8: + call bld + sna "Do you think if we wanted to..." ("snape_05", ypos="head") + sna "We could bring the public flogging back?" ("snape_05") + gen "What do you mean?" ("base", xpos="far_left", ypos="head") + sna "Well, years ago flogging was a completely acceptable measure of punishment for the students." ("snape_06") + sna "*Sigh* Simpler times..." ("snape_06") + sna "These days students just completely lack discipline..." ("snape_16") + sna "I would like nothing more than to publicly flog every single one of them..." ("snape_16") + sna "Especially the girls..." ("snape_22") + gen "*Hmm*... Fine by me..." ("base", xpos="far_left", ypos="head") + gen "But won't a reform like that attract unnecessary attention towards us?" ("base", xpos="far_left", ypos="head") + sna "Yes. You are right of course." ("snape_29") + sna "I am getting greedy..." ("snape_29") + sna "I'm getting drunk with power, my friend!" ("snape_28") + sna "And this exquisite wine does not improve my judgment in the slightest either!" ("snape_28") + hide snape_main + call blktone + + ">Professor Snape seems to be completely at ease around you now." + ">The bond of male friendship between you two strengthens even more.\n>Slytherin house point payouts have increased formidably..." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_intro_E9: # Replace this event. + sna "... so, after that I return back to Russia, right?" ("snape_24", ypos="head") + gen "Back to Russia?" ("angry", xpos="far_left", ypos="head") + sna "But wait, it gets worse." ("snape_01") + sna "Apparently I am fluent in Russian now." ("snape_05") + gen "Wait, what?" ("angry", xpos="far_left", ypos="head") + sna "And I am this miserable muggle guy who lives in this shithole of a town full of run-down buildings." ("snape_06") + sna "I try to make a living by drawing comics and creating games with \"Ren'Py\"..." ("snape_06") + sna "And that is so bizarre because I don't even know what a \"Ren'Py\" is!" ("snape_24") + gen "*Hmm*... Then what happened?" ("base", xpos="far_left", ypos="head") + sna "Not much... Mostly worked my ass off for months..." ("snape_05") + sna "Then managed to create a relatively successful game somehow..." ("snape_05") + sna "Eventually began to make decent money with my craft..." ("snape_24") + sna "And then, just when I was about to allow myself to feel hopeful about the future..." ("snape_06") + sna "I woke up..." ("snape_04") + sna "...................." ("snape_09") + gen "......................" ("base", xpos="far_left", ypos="head") + sna "What do you think all of that means?" ("snape_05") + gen "Some form of self insert, probably." ("base", xpos="far_left", ypos="head") + sna "What?" ("snape_05") + gen "Just ignore the whole thing." ("base", xpos="far_left", ypos="head") + gen "A silly dream, nothing more." ("base", xpos="far_left", ypos="head") + sna "Felt more like a nightmare..." ("snape_29") + hide snape_main + call blktone + + ">Professor Snape trusts you more than he used to..." + ">(To the point where he doesn't think twice about sharing his weird-ass dreams with you)." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_intro_E10: + sna "What is the meaning of life, Genie?" ("snape_29", ypos="head") + gen "What?" ("angry", xpos="far_left", ypos="head") + sna "Since you are an all-powerful being, you've got to know things like that, right?" ("snape_05") + gen "Maybe..." ("base", xpos="far_left", ypos="head") + sna "Great. Tell me then." ("snape_06") + gen "*Hmm*... You sure you're ready for this?" ("base", xpos="far_left", ypos="head") + sna "Yes. Lay it on me, friend." ("snape_05") + gen "Alright then..." ("base", xpos="far_left", ypos="head") + sna "................!" ("snape_01") + gen "It's plastic..." ("base", xpos="far_left", ypos="head") + sna "I beg your pardon?" ("snape_05") + gen "it's plastic..." ("base", xpos="far_left", ypos="head") + sna "I don't get it..." ("snape_25") + gen "This planet plans to evolve into something else in a million years or so..." ("base", xpos="far_left", ypos="head") + gen "In order to do that it needs a special kind of material that it can't produce on its own." ("base", xpos="far_left", ypos="head") + gen "So it spawns a new form of life - humans." ("base", xpos="far_left", ypos="head") + sna ".............." ("snape_11") + gen "You wanted to know the purpose of your existence?" ("base", xpos="far_left", ypos="head") + gen "It's to produce plastic. Simple as that." ("base", xpos="far_left", ypos="head") + sna "Are you fucking kidding me?!" ("snape_30") + sna "No, no... That can't be it..." ("snape_26") + gen "*He-he*..." ("grin", xpos="far_left", ypos="head") + sna "Are you pulling my leg?" ("snape_25") + gen "You should've seen your face." ("grin", xpos="far_left", ypos="head") + sna "You really had me worried there, you bloody non-human bastard!" ("snape_15") + gen "I know! It was hard to resist..." ("grin", xpos="far_left", ypos="head") + hide snape_main + call blktone + + ">You spend the evening by skilfully avoiding a whole variety of similar questions." + ">Despite your refusal to co-operate the bond of friendship between you two strengthens yet again." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_intro_E11: + sna "So... Back in your world, do you people have a country named England?" ("snape_05", ypos="head") + gen "We used to..." ("base", xpos="far_left", ypos="head") + sna "What happened?" ("snape_26") + gen "\"The great catastrophe\"..." ("base", xpos="far_left", ypos="head") + gen "It incinerated most of the worlds population in a matter of hours..." ("base", xpos="far_left", ypos="head") + sna "................" ("snape_26") + gen "Turning about eighty percent of the planet's surface into a scorching desert..." ("base", xpos="far_left", ypos="head") + gen "And the remaining twenty percent into an icy wasteland..." ("base", xpos="far_left", ypos="head") + gen "............." ("base", xpos="far_left", ypos="head") + sna "That is..." ("snape_26") + sna "Horrible..." ("snape_06") + sna "Are you sure that you want to return to that place?" ("snape_25") + gen "Of course." ("base", xpos="far_left", ypos="head") + gen "It may be a bit barbaric, but hey... it's home." ("base", xpos="far_left", ypos="head") + hide snape_main + call blktone + + ">Professor Snape finds a new level of respect for you..." + ">The bond of friendship between you two solidifies." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_intro_E12: + sna "I've been thinking about what you've said the other day..." ("snape_09", ypos="head") + sna "About your home world being nothing but a scorched desert and all..." ("snape_09") + gen "Yes?" ("base", xpos="far_left", ypos="head") + sna "Do you think Albus will be alright there?" ("snape_06") + gen "Oh, absolutely!" ("base", xpos="far_left", ypos="head") + gen "Since I quite literally replaced him in his chair..." ("base", xpos="far_left", ypos="head") + gen "He probably replaced me in exactly the same place back in Agrabah." ("base", xpos="far_left", ypos="head") + sna "Agrabah?" ("snape_05") + gen "Yes... A very big city." ("base", xpos="far_left", ypos="head") + gen "One of the few that rose after the great catastrophe." ("base", xpos="far_left", ypos="head") + gen "Probably the biggest of them all as well..." ("base", xpos="far_left", ypos="head") + gen "The heart of the human civilization if you will." ("base", xpos="far_left", ypos="head") + sna "I am relieved to hear that..." ("snape_23") + gen "Sure..." ("base", xpos="far_left", ypos="head") + gen "Although if your Albus friend really materialised in exactly the same spot I occupied before I cast the spell..." ("base", xpos="far_left", ypos="head") + gen "I suppose the princess could have him beheaded..." ("base", xpos="far_left", ypos="head") + sna "WHAT?!" ("snape_01") + gen "But the probability of that happening is very slim..." ("base", xpos="far_left", ypos="head") + gen "About five percent... Maybe ten... Twenty percent tops." ("base", xpos="far_left", ypos="head") + sna "......................................................." ("snape_03") + hide snape_main + call blktone + + ">Professor Snape seems grateful to you for (sort of) putting his concerns about Albus Dumbledore's well-being to rest..." + ">The bond of your friendship strengthens yet again..." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_intro_E13: + sna "You know what?" ("snape_01", ypos="head") + gen "What?" ("base", xpos="far_left", ypos="head") + sna "For the first time in a very long time..." ("snape_01") + sna "I think..." ("snape_03") + sna "I am actually content with the way my life is going." ("snape_25") # 0_0 + sna "What an unsettling feeling..." ("snape_26") + gen "Are you sure that this is not some euphoric trance state caused by all the sex you've been having lately?" ("base", xpos="far_left", ypos="head") + sna "Could be." ("snape_22") + sna "Nonetheless, training that girl had such a great impact on my life..." ("snape_24") + sna "And even the school itself..." ("snape_24") + gen "In other words you are getting less broody and you blame me." ("base", xpos="far_left", ypos="head") + sna "Something like that..." ("snape_23") + sna "I'm losing my dark presence, man." ("snape_28") # :) + hide snape_main + call blktone + + ">Professor Snape really did become a little more cheerful lately..." + ">He even looks younger now than back when you first met him..." + ">Professor Snape's feeling of gratitude fortifies the bond of your friendship." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_E14: + sna "... So she says, \"Sir, could you choke me a little, please\"!" ("snape_02", ypos="head") + sna "And I am happy to oblige of course!" ("snape_13") + sna "So, I choke that little bitch while I'm fucking her, right?" ("snape_19") + sna "And she rolls her eyes up to the point where I can't even see her pupils anymore!" ("snape_19") + sna "Her face turns to a cute tint of purple and she's barely breathing." ("snape_19") + sna "So I think that maybe I should loosen up my grip a little..." ("snape_14") + sna "And that's when the bitch starts to cum!" ("snape_21") + gen "Sweet! And then you woke up?" ("base", xpos="far_left", ypos="head") + sna "What? No, it actually happened." ("snape_05") + sna "I finally nailed that blond witch from Slytherin." ("snape_13") + gen "Nice!" ("grin", xpos="far_left", ypos="head") + sna "I know." ("snape_13") + sna "She is pretty twisted though..." ("snape_25") + sna "And I mean really fucking messed up." ("snape_26") + gen "Our type of girl!" ("grin", xpos="far_left", ypos="head") + sna "Exactly!" ("snape_22") + hide snape_main + call blktone + + ">You and professor Snape bond over the similarities of your taste in women." + ">The bond of your friendship has never been stronger." + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points + + +label ss_he_story_intro_E15: + sna "It's been a while now..." ("snape_05", ypos="head") + gen "What do you mean?" ("base", xpos="far_left", ypos="head") + sna "The spell that brought you here..." ("snape_24") + sna "You said it would wear off in time..." ("snape_24") + sna "Do you feel any different?" ("snape_05") + gen "No... Not really..." ("base", xpos="far_left", ypos="head") + gen "Maybe it needs more time?" ("base", xpos="far_left", ypos="head") + sna "Could be..." ("snape_01") + sna "Or there could be something else..." ("snape_01") + gen "Like what?" ("base", xpos="far_left", ypos="head") + sna "No idea..." ("snape_09") + sna "But I shall give this some more thought..." ("snape_09") + sna "Oh, and one more thing..." ("snape_24") + gen "*Hmm*...?" ("base", xpos="far_left", ypos="head") + sna "This time of the year is usually pretty busy..." ("snape_24") + sna "Even more so now when I need to constantly cover up for Albus' absence." ("snape_24") + gen "..................." ("base", xpos="far_left", ypos="head") + sna "I'm not sure how often I will be able to spend my evenings with leisurely drinking wine anymore..." ("snape_06") + gen "Really?" ("base", xpos="far_left", ypos="head") + sna "Yes..." ("snape_06") + sna "I'll still be around for a quick chat from time to time, but that's about it." ("snape_06") + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "I will have to find another way of spending my evenings from now on then..." ("base", xpos="far_left", ypos="head") + sna "I'm sure miss Granger will be happy to help." ("snape_02") + gen "Yes, for as long as Slytherin is in the lead." ("base", xpos="far_left", ypos="head") + sna "Seriously? She still cares about that?" ("snape_05") + gen "Very much so." ("base", xpos="far_left", ypos="head") + sna "Well in that case I shall personally ensure that the Slytherin house gets as many house points as possible." ("snape_23") + hide snape_main + call blktone + + ">Your friendship level with professor Snape reached its maximum value." + ">Congratulations. If this were a \"Dating Sim\" you would be getting the ending with Severus Snape." + ">The Slytherin house point payout has increased greatly and reached its maximum level as well." + + call hide_blktone + + jump end_snape_hangout_points + +label sly_plus: + call notes + ">The Slytherin house point payout has increased..." + return diff --git a/game/scripts/characters/snape/events/intro.rpy b/game/scripts/characters/snape/events/intro.rpy new file mode 100644 index 00000000..e9ae76bd --- /dev/null +++ b/game/scripts/characters/snape/events/intro.rpy @@ -0,0 +1,853 @@ + + +### Snape Intro ### + +# First time genie meets snape + +label snape_intro_E1: + $ game.weather = "clear" + call weather_sound + + pause 1 + + gen "*Yawn*......." ("base", xpos="far_left", ypos="head") + gen "These old bones seem to be getting tired." ("base", xpos="far_left", ypos="head") + gen "Perhaps I should rest my eyes a bit." ("base", xpos="far_left", ypos="head") + + with fade + + pause 1 + $ renpy.sound.play("sounds/snore2.ogg") + gen "......{w=0.5}*Snore*{w=1.0}{nw}" + + call play_sound("knocking") + "*knock-knock-knock*" + + anon "Albus? Are you in there?" + + $ renpy.sound.play("sounds/snore1.ogg") + gen "*Snore*{w=2.0}{nw}" + anon "Don't ignore me, I know you're in there." + + "............." + anon "I'm coming in either way!" + + call play_music("dark_fog") + call play_sound("door") + + call sna_chibi("stand","door","base", flip=False) + with d3 + pause.3 + + call chibi_emote("thought", "snape") + pause 1 + call chibi_emote("hide", "snape") + + call sna_walk("mid", "base") + pause.2 + + sna "" ("snape_01", xpos="base", ypos="base", trans=d3) + call ctc + + sna "" ("snape_31") + $ renpy.sound.play("sounds/MaleClearThroat.ogg") + anon "Albus... Do you have a moment?" + + sna "" ("snape_01") + $ renpy.sound.play("sounds/MaleGasp.ogg") + gen "!!!" ("angry", xpos="far_left", ypos="head") + gen "{size=-3}(An Indigenous life form!?){/size}" ("angry", xpos="far_left", ypos="head") + gen "{size=-3}(looks human enough...){/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-3}(Maybe if I just act cool he'll leave...?){/size}" ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Actually I'm a bit busy.\"": + sna "" ("snape_04", trans=d3) + anon "Well, aren't you always, Albus?" + "\"Of course. What is it?\"": + sna "" ("snape_06", trans=d3) + "\"And Albus to you too.\"": + sna "" ("snape_05", trans=d3) + anon "What?" + sna "" ("snape_04") + anon "Albus, I'm not in the mood for your... shenanigans." + "\"Take me to your leader.\"": + sna "" ("snape_01", trans=d3) + anon "What?" + anon "*Hmm*...?" + anon "You mean the Minister of Magic?" + sna "" ("snape_03") + anon "I would rather avoid having to deal with that bureaucrat..." + gen "Fine, never mind... How can I be of help?" ("base", xpos="far_left", ypos="head") + + sna "" ("snape_06") + anon "I have something important I need to discuss with you..." + anon "I think we need to revise our admittance policy." + gen "................?" ("base", xpos="far_left", ypos="head") + sna "" ("snape_03") + anon "Half of my... so-called \"pupils\" are nothing but annoying maggots that make my life miserable on a daily basis." + gen "................" ("base", xpos="far_left", ypos="head") + sna "" ("snape_06") + anon "Most of them belong to your precious Gryffindor house of course..." + gen "......?" ("base", xpos="far_left", ypos="head") + sna "" ("snape_03") + anon "The wretched Weasley family, that noisy Granger girl and of course the hero of all the juvenile delinquents around the globe..." + sna "" ("snape_08") + anon "{size=+3}The Potter boy!{/size}" + sna "" ("snape_01") + anon "Mark my words, Albus. The Gryffindor house will become this school's undoing!" + gen "...................." ("base", xpos="far_left", ypos="head") + sna "" ("snape_01") + anon "Nothing but annoying maggots, the lot of them!" + sna "" ("snape_06") + anon "And if that wasn't enough, now they spread all sorts of nasty rumours about the teachers!" + anon "Particularly about yours truly..." + gen "......................" ("base", xpos="far_left", ypos="head") + sna "" ("snape_05") + anon "You don't believe those rumours, do you Albus?" + + menu: + gen ".............." ("base", xpos="far_left", ypos="head") + "\"Well, of course not!\"": + sna "" ("snape_09") + anon "Good..." + anon "You know me better than that. I wouldn't care for such things..." + "\"Where there's smoke, there's fire.\"": + sna "" ("snape_10") + anon "Albus?! You can't be serious!" + anon "Those are nothing but filthy lies, I'm telling you!" + "\"I don't listen to rumours.\"": + sna "" ("snape_03") + anon "Don't play dumb with me Albus." + sna "" ("snape_04") + anon "I know exactly what those \"little birds\" of yours have been doing." + + gen "........................." ("base", xpos="far_left", ypos="head") + sna "" ("snape_06") + anon "Well, those wretched brats left me completely exhausted. I think I will retire for today." + sna "" ("snape_09") + + menu: + "\"Is that all?\"": + sna "" ("snape_04") + anon "It is." + "-Stay silent-": + sna "" ("snape_05") + anon "................" + anon "I'll leave you to it then." + + stop music fadeout 5.0 + call sna_walk("door", "base") + + sna "" ("snape_03", flip=True, trans=d3) + anon "Please reconsider what we discussed earlier." + + call sna_walk(action="leave") + + call bld + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "So that tall, broody dude mistook me for someone else...?" ("base", xpos="far_left", ypos="head") + gen "Which means I must be shrouded in a concealment spell..." ("base", xpos="far_left", ypos="head") + gen "........." ("base", xpos="far_left", ypos="head") + gen "So basically, I'm a genie disguised as a human, who is in turn disguised as another human..." ("base", xpos="far_left", ypos="head") + gen "No, that's not stupid at all..." ("base", xpos="far_left", ypos="head") + call bld("hide") + + $ snape_intro.E1_complete = True + $ ss_event_pause += 1 + + jump day_start + + +# Event 2 + +# Sanpe talks to genie about hermione, snape becomes suspicious + +label snape_intro_E2: + call play_music("night") + + call play_sound("knocking") + "*knock-knock-knock*" + anon "It's me." + gen "{size=-3}(That broody guy again...){/size}" ("base", xpos="far_left", ypos="head") + gen "(Maybe if I stay silent he'll go away...)" ("base", xpos="far_left", ypos="head") + + call play_music("dark_fog") + call sna_walk(action="enter", xpos="mid", ypos="base") + + call bld + + sna "" ("snape_01",xpos="base",ypos="base") + anon "Albus!" + gen "Hey..........{w=0.3} you..." ("base", xpos="far_left", ypos="head") + anon "You need to do something about that Granger girl..." + sna "" ("snape_06") + anon "Honestly... I'm running out of ways to punish that... that..." + sna "" ("snape_04") + anon "That little witch!" + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Granger? Hermione Granger, right?\"": + anon "Yes, her..." + anon " She also happens to be a part of the \"Potter gang\"." + "\"I got your back, Jack, witches be crazy!\"": + anon "What...? Albus you behave oddly lately." + anon "Is everything alright?" + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Yes, I'm fine. Go on.\"": + anon "If you say so..." + "\"You know me. I love my shenanigans.\"": + anon "*Hmm*....." + + "\".....................................................\"": + pass + + anon "Remember how back in the days they used to publicly flog the students?" + anon "I swear if we could bring that back all of our problems would be solved..." + anon "Yes... I would gladly tie that girl to a flogging pole in front of the entire school..." + sna "" ("snape_20") + anon "Then lift her skirt up, and..." + sna "" ("snape_12") + anon "*Ahem*! Sadly, nowadays we teachers are severely limited in the disciplinary measures we have at our disposal..." + anon "I know you are just as powerless as I am in this matter, but I'm telling you, that girl had better stop testing my patience." + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"I'll take care of that brat!\"": + sna "" ("snape_05") + anon "...?!" + anon "Albus..." + anon "What are--" + "\"Nobody ever said this job would be easy.\"": + sna "" ("snape_06") + anon "Sometimes I feel like I would rather deal with a classroom full of Dementors..." + "\"You will feel better tomorrow.\"": + sna "" ("snape_06") + anon "You are probably right..." + + anon "*Hmm*..." + sna "" ("snape_06") + anon "Perhaps I'd better go get some sleep." + anon "I need to be in my top shape every morning..." + anon "You can't show weakness to those brats or they will swallow you whole..." + sna "" ("snape_24") + anon "Good night, Albus." + + call sna_walk("door", "base") + pause.2 + + anon "................." + + call sna_chibi("stand","door","base",flip=False) + with d3 + pause.2 + + anon "One more thing..." + show screen bld1 + sna "" ("snape_24", trans=d3) + anon "You should ignore any lies you hear about me and those slytherin girls..." + hide snape_main + with d3 + gen "Got it." ("base", xpos="far_left", ypos="head") + + hide screen bld1 + call sna_chibi("stand","door","base",flip=True) + with d3 + pause.2 + + call sna_chibi("leave") + + $ snape_intro.E2_complete = True + $ ss_event_pause += 1 + + jump day_start + + +# Event 3 + +# Snape comes in, has a talk with Genie, then the duel starts. + +label snape_intro_E3: + call play_music("dark_fog") + + call sna_walk(action="enter", xpos="mid", ypos="base") + + sna "" ("snape_01",xpos="base",ypos="base") + call ctc + + anon "Good evening, Albus." + anon "I want to talk to you about those damn brats again..." + anon "But first I want to ask you something..." + sna "" ("snape_05") + anon "Have you noticed anything strange going on around here lately?" + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "{size=-2}\"Like you being especially whiny?\"{/size}": + anon "What? B-but..." + sna "" ("snape_06") + anon "Well, perhaps you are right..." + "{size=-2}\"An owl is fetching my mail, man!\"{/size}": + anon "What about it?" + gen "What do you mean, what about it?" ("base", xpos="far_left", ypos="head") + gen "An owl...{w=0.4} Is fetching...{w=0.4} My mail..." ("base", xpos="far_left", ypos="head") + sna "" ("snape_03") + anon "......" + sna "" ("snape_04") + anon "Never mind the owl..." + "{size=-2}\"No, not really. It's just business as usual.\"{/size}": + anon "*Hmm*... Maybe I'm just being paranoid..." + + sna "" ("snape_24") + anon "The reason why I'm here today is the \"Potter Gang\"." + sna "" ("snape_01") + anon "There are only so many points I can subtract from the Gryffindor house, you know..." + anon "And the Granger girl became the worst of them lately..." + sna "" ("snape_06") + anon "She practically leads the onslaught." + sna "" ("snape_05") + anon "Speaking of which, has she been sending you any letters lately?" + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Hermione Granger? No, Nothing from her.\"": + anon "I see... So she's been bluffing then." + sna "" ("snape_16") + anon "What an annoying witch." + "\"Yes...\"": + anon "Really now?" + anon "Did she lie about me in particular in that letter?" + anon "I hope you know better than to listen to the likes of her..." + + sna "" ("snape_03") + anon "She would never admit it, but I know she's been spreading those nasty rumours about me around the school..." + sna "" ("snape_29") + anon "*Tsk*... Noisy little...... witch." + sna "" ("snape_09") + anon "I would never stoop so low as to trade house points in exchange for sexual favours..." + anon "I mean, sure, we use house points to motivate students, but that's completely different..." + anon "I can't speak for the rest of the staff though..." + sna "" ("snape_13") + anon "The stories I hear about Minerva McGonagall and those poor Gryffindor freshmen may be true..." + sna "" ("snape_01") + anon "Well, I just wanted to make sure that you take those rumours about me for what they are..." + anon "Nasty lies made up by a bunch of spoiled--" + + anon "Oh.... Before I go..." + anon "There is one thing I meant to ask you for a while now..." + sna "" ("snape_09") + anon "........................." + sna "" ("snape_05") + anon "What is my name?" + + $ d_points = 0 + $ d_flag_01 = False + $ d_flag_02 = False + $ d_flag_03 = False + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"What? What kind of question is that?\"": + sna "" ("snape_06") + anon "You are right..." + anon "Forgive me... I'm just being paranoid I suppose..." + sna "" ("snape_05") + anon "But you can never be too cautious with rumours about \"you know who\" still being alive and all..." + "\"Tall broody guy?\"": + sna "" ("snape_06") + anon "Albus, lately you adopted a peculiar sense of humour, that I do not care for in a slightest..." + anon "Maybe you should spend a little less time in the company of that big oaf Hagrid." + "-Use magic to get the right answer-": + $ d_flag_01 = True + hide snape_main + with d3 + call nar(">You use your phenomenal cosmic powers to peek into the very fabric of the universe and get the correct answer.") + sna "" ("snape_03") + anon "...!" + gen "What kind of question is this...{w=0.1} Severus?" ("base", xpos="far_left", ypos="head") + anon "Forgive me... I'm just being paranoid I suppose..." + + sna "" ("snape_06") + anon "Well, good night, Albus." + + call sna_walk("door", "base") + pause.2 + + stop music fadeout 1.0 + call bld + anon "........................" + + # Hide Snape chibi and fade to black + hide screen snape_chibi + show screen blkfade + with d3 + + $ renpy.play('sounds/07_run.ogg') + pause 2 + gen "?!" ("angry", xpos="far_left", ypos="head") + + show screen snape_defends + hide screen bld1 + call hide_blkfade + + call play_music("hitman") #TENSE THEME + call ctc + + call bld + if d_flag_01: + sna "Who are you, scum!" ("snape_34", ypos="head", wand=True) + gen "What? It's me... *Ehm*... {i}Abius{/i}! I mean, Albus!" ("angry", xpos="far_left", ypos="head") + sna "You cannot fool me." ("snape_32", wand=True) + sna "Just now, you used some sort of alien magic!" ("snape_32", wand=True) + sna "Reveal your true self to me now, fiend! Who are you?!" ("snape_34", wand=True) + else: + sna "My name is Severus Snape!" (ypos="head", wand=True) + sna "Now, who might you be...?" ("snape_01", wand=True) + + gen "!!!" ("angry", xpos="far_left", ypos="head") + sna "Easy now... Just answer my question." ("snape_01", wand=True) + gen "Alright, alright. Just calm down, would you?" ("base", xpos="far_left", ypos="head") + sna "........" ("snape_01", wand=True) + + label no_wait: + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"I am not your enemy.\"" if not d_flag_01: + $ d_flag_01 = True + $ d_points +=1 + sna "That's the first thing an enemy would say." ("snape_01", wand=True) + "\"I'm just a tourist. I'll be leaving now.\"" if not d_flag_02: + $ d_flag_02 = True + $ d_points +=1 + sna "You are not going anywhere." ("snape_01", wand=True) + "\"I work for {i}Alvin Dombledork{/i}!\"" if not d_flag_03: + $ d_flag_03 = True + $ d_points +=1 + sna "It's Albus Dumbledore, you moron!" ("snape_01", wand=True) + + if d_points == 2: + pass + else: + jump no_wait + + sna "Who sent you here? What did you do with the real \nAlbus?" ("snape_01", wand=True) + sna "Shed your disguise and reveal your true self at once, \nthis is your last warning!" ("snape_01", wand=True) + + $ d_points = 0 + $ d_flag_01 = False + $ d_flag_02 = False + $ d_flag_03 = False + + label no_wait_2: + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"I can't. It's hard to explain...\"" if not d_flag_01: + $ d_flag_01 = True + $ d_points +=1 + sna "I have no interest in your explanations. I wouldn't \nbelieve a single word you'd say anyway!" ("snape_01", wand=True) + "\"Stop threatening me, human!\"" if not d_flag_02: + $ d_flag_02 = True + $ d_points +=1 + sna "\"Human\"?" ("snape_01", wand=True) + sna "Are you implying that you are {size=+5}not{/size} one?" ("snape_01", wand=True) + sna "What are you then?! Dispel your cloaking charm immediately or else!" ("snape_01", wand=True) + "\"I mean you no harm, I swear!\"" if not d_flag_03: + $ d_flag_03 = True + $ d_points +=1 + sna "Is that so?" ("snape_01", wand=True) + sna "Prove it then. Dispel your cloaking charm now!" ("snape_01", wand=True) + + if d_points == 2: + pass + else: + jump no_wait_2 + + sna "I've heard enough!" ("snape_01", wand=True) + gen "By the great desert sands! Would you let me explain, human?!" ("angry", xpos="far_left", ypos="head") + sna "There is nothing left to explain!" ("snape_01", wand=True) + sna "Since you refuse to co-operate, I'll be taking you \ninto custody by force!" ("snape_01", wand=True) + gen "What?! Wait!" ("angry", xpos="far_left", ypos="head") + hide snape_main + with d3 + + $ renpy.choice_for_skipping() + + $ snape_intro.E3_complete = True + if skip_duel == True: + $ snape_intro.duel_complete = True + jump snape_lost + + stop music + play music "music/boss_battle_#2_metal_loop.ogg" fadein 1 fadeout 1 + call play_sound("glass_break") + + pause.1 + + hide screen bld1 + show screen snape_glass + $ renpy.pause(2.3, hard=True) + + jump duel + + +# Event 4 + +# THE TALK AFTER THE DUEL ENDS. + +label snape_intro_E4: + $ potions = 0 #Makes sure there are no potions left in the possessions. + $ renpy.choice_for_skipping() + + stop music fadeout 2.0 + + $ duel_OBJ.genie = "no_magic" + call bld + with d3 + + gen "*Panting*" ("angry", xpos="far_left", ypos="head") + gen "Ready to talk now?!" ("angry", xpos="far_left", ypos="head") + sna "(... i-impossible...)" ("snape_36", ypos="head") + + call play_music("dark_fog") + hide screen duel + hide snape_main + call gen_chibi("stand","desk","base") + call sna_chibi("stand", "door", "base") + with fade + + gen "I told you that you're no match for me..." ("base", xpos="far_left", ypos="head") + gen "You did give me a good run for my money though..." ("base", xpos="far_left", ypos="head") + sna "The way you conjure the spells with your bare hands..." ("snape_01") + sna "No human could do that... who--" ("snape_01") + sna "{size=+5}What are you?{/size}" ("snape_32") + sna "Some sort of shapeshifting demon summoned by \"you know who\"?" ("snape_01") + gen "Summoned by whom?" ("base", xpos="far_left", ypos="head") + sna "By \"you know who\"!" ("snape_31") + gen "What?" ("base", xpos="far_left", ypos="head") + sna "......................" ("snape_35") + gen "............................" ("base", xpos="far_left", ypos="head") + gen "Listen, I'm not a demon..." ("base", xpos="far_left", ypos="head") + gen "And I sure as heck don't work for \"I don't know who\"!" ("base", xpos="far_left", ypos="head") + sna "............................." ("snape_01") + gen "I've been *Ehm*..." ("base", xpos="far_left", ypos="head") + gen "... Conducting an experiment back in my world, during which something went wrong and I ended up here." ("base", xpos="far_left", ypos="head") + gen "That's all..." ("base", xpos="far_left", ypos="head") + sna ".........................." ("snape_01") + sna "What became of the real Albus Dumbledore then?" ("snape_01") + gen "I'm sure he is fine." ("base", xpos="far_left", ypos="head") + gen "He's Probably feeling just as surprised finding himself in my world as I am about finding myself here..." ("base", xpos="far_left", ypos="head") + sna "...................................." ("snape_01") + sna "When did this happen?" ("snape_01") + gen "Three days ago..." ("base", xpos="far_left", ypos="head") + sna "Can you go back?" ("snape_01") + gen "I think so..." ("base", xpos="far_left", ypos="head") + sna "Why didn't you?" ("snape_31") + gen "Not sure..." ("base", xpos="far_left", ypos="head") + gen "The Magic of this world is so bizarre... I just got curious." ("base", xpos="far_left", ypos="head") + sna "..................." ("snape_01") + sna "You need to fix this..." ("snape_01") + gen "Fix what?" ("base", xpos="far_left", ypos="head") + sna "Everything. You need to bring back Albus and leave our world." ("snape_32") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Yes, yes, I know. Off I go then.\"": + gen "Sorry for the ruckus." ("base", xpos="far_left", ypos="head") + sna "No harm done..." ("snape_01") + "\"But I like it here! Can't I stay?\"": + sna "Absolutely not." ("snape_01") + sna "Whoever you are, you are not from this plane of existence." ("snape_01") + sna "Your very presence here upsets the natural order of things." ("snape_01") + sna "And these days this school needs a proper headmaster more than ever." ("snape_01") + "{size=-2}\"I didn't like it here anyway....\"{/size}": + gen "This is the worst resort I have ever visited..." ("base", xpos="far_left", ypos="head") + gen "No air-conditioning, no complimentary chocolate..." ("base", xpos="far_left", ypos="head") + gen "I doubt there's even a pool." ("base", xpos="far_left", ypos="head") + gen "And the attitude of the personnel..." ("base", xpos="far_left", ypos="head") + sna "........" ("snape_05") + + sna "Have a safe trip home now." ("snape_01") + gen "*Ehm*... Thank you, Mr Servus." ("base", xpos="far_left", ypos="head") + sna "My name is {b}Severus{/b}, not Servus.." ("snape_43") + gen "Right..." ("base", xpos="far_left", ypos="head") + gen "Good luck with your students and the \"Potter Gang\"." ("base", xpos="far_left", ypos="head") + sna "\"The potter gang\"?" ("snape_01") + sna "Oh, right, those buggers..." ("snape_35") + hide snape_main + with d3 + + menu: + "-Undo the spell-": + $ renpy.play('sounds/fire_woosh.ogg') + show screen gfx_effect(510, 350, img="smoke", zoom=0.8) + menu: + "-Undo the spell-": + $ renpy.play('sounds/fire_woosh.ogg') + show screen gfx_effect(510, 350, img="smoke", zoom=0.8) + gen "*Huh*?" ("base", xpos="far_left", ypos="head") + menu: + "-Undo the spell-": + $ renpy.play('sounds/fire_woosh.ogg') + show screen gfx_effect(510, 350, img="smoke", zoom=0.8) + + gen "(Something's not right, I can't undo the spell...)" ("base", xpos="far_left", ypos="head") + sna "Did it work? Albus, is that really you?" ("snape_01") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Yeah, that's me. So good to be back!\"": + sna "Glad to have you back, old friend. Are you alright?" ("snape_01") + gen "I'm fine, Severus, thank you." ("base", xpos="far_left", ypos="head") + sna "How was it, in that other world?" ("snape_01") + gen "A lot of sand and very hot, but other than that quite pleasant." ("base", xpos="far_left", ypos="head") + sna "I see... Did you miss your brother?" ("snape_01") + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Yes, I missed you so much!\"": + sna "......................." ("snape_01") + sna "Yeah, right..." ("snape_01") + "\"I don't have a brother, Severus.\"": + sna "........................" ("snape_01") + sna "You may not have one, but the real Albus Dumbledore does." ("snape_01") + "-Use magic to get the right answer-": + call nar(">You use your phenomenal cosmic powers to peek into the very fabric of the universe and get the correct answer.") + gen "My little brother Aberforth? Why would I miss him?" ("base", xpos="far_left", ypos="head") + sna "I can feel it whenever you use your alien magic..." ("snape_01") + + "\"Nope. It's still me. The non-human guy.\"": + pass + + sna "Why are you still here, creature?" ("snape_01") + gen "There's no need to be rude." ("base", xpos="far_left", ypos="head") + gen "And I'm not sure... I tried to undo the spell but nothing happened..." ("base", xpos="far_left", ypos="head") + sna "Marvellous..." ("snape_35") + sna "What does this mean? You're staying here for good?" ("snape_01") + gen "Of course not..." ("base", xpos="far_left", ypos="head") + gen "Me being here at all is only possible because the spell is compensating for the unbalance caused by itself..." ("base", xpos="far_left", ypos="head") + gen "said spell will wear off eventually and I shall be pulled back into my world." ("base", xpos="far_left", ypos="head") + gen "Likewise, your Dumb-le-dork friend shall be pulled back here." ("base", xpos="far_left", ypos="head") + sna "I see..." ("snape_01") + sna "How long until the spell wears off?" ("snape_01") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"A couple of days.\"": + sna "I see..." ("snape_01") + "\"A week or so...\"": + sna "*Hmm*.... A week, huh..." ("snape_01") + "\"Could be months...\"": + sna "That long?" ("snape_01") + sna "Now isn't that just \"perfect\"?" ("snape_01") + "\"I have no clue...\"": + sna "....................." ("snape_01") + sna "Splendid..." ("snape_31") + + gen "Alright, to be honest I'm not sure where to go from here..." ("base", xpos="far_left", ypos="head") + gen "All this time I thought I could undo the spell whenever I wanted to..." ("base", xpos="far_left", ypos="head") + sna "..................................................." ("snape_01") + sna ".................................." ("snape_01") + sna "..................." ("snape_01") + gen "Snape?" ("base", xpos="far_left", ypos="head") + sna "..................................................." ("snape_01") + gen "Severus?" ("base", xpos="far_left", ypos="head") + sna "Yes, yes..." ("snape_34") + sna "Listen, it's very late, and too much has happened already..." ("snape_01") + sna "I need to process all of this." ("snape_35") + sna "I will come to see you tomorrow, after my classes." ("snape_01") + sna "Until then, keep your true identity and our conversation a secret, alright?" ("snape_34") + gen "Not a problem." ("base", xpos="far_left", ypos="head") + sna "Alright then..." ("snape_01") + sna "But before I go, I have one more question..." ("snape_01") + gen "I'm listening..." ("base", xpos="far_left", ypos="head") + sna "........" ("snape_31") + sna "If you are not a human, then..." ("snape_01") + sna "What are you?" ("snape_35") + gen "... I'm a genie." ("base", xpos="far_left", ypos="head") + sna "A genie?" ("snape_01") + gen "Yes, I possess phenomenal cosmic powers and all that..." ("base", xpos="far_left", ypos="head") + sna "Seriously?" ("snape_01") + gen "Oh, yes." ("base", xpos="far_left", ypos="head") + sna "Unbelievable..." ("snape_01") + sna "Well, I'll see you tomorrow.... Genie." ("snape_01") + gen "I'll be here..." ("base", xpos="far_left", ypos="head") + + sna "(A genie? Now that's new...)" ("snape_35") + + hide screen duel + call sna_chibi("hide") + $ snape_intro.E4_complete = True + + jump day_start + + +# Event 5 + +# Snape visits you after the dual (next evening). + +label snape_intro_E5: + call play_music("dark_fog") + + call sna_walk(action="enter", xpos="mid", ypos="base") + + sna "" ("snape_01",xpos="base",ypos="base") + + sna "..................." + gen "Good evening..." ("base", xpos="far_left", ypos="head") + sna "Is the spell still in effect?" + gen "Yes. very much so." ("base", xpos="far_left", ypos="head") + sna "I see..." + sna "Last night I gave our little.... conundrum some thought." + sna "And I think I came up with a solution..." + gen "Really? Great! I'm listening." ("base", xpos="far_left", ypos="head") + + sna "Let's just roll with it..." ("snape_29") + gen "Excuse me?" ("base", xpos="far_left", ypos="head") + sna "Well what else could we do?" ("snape_06") + sna "Normally I would alert the ministry of magic and let them take care of this mess..." + sna "But I'd rather avoid any dealings with those rotten bureaucrats this time..." + sna "Also, losing a headmaster, even temporarily, could hurt the school's reputation..." ("snape_10") + sna "And what if your spell wears off tomorrow, or even tonight?" + sna "I see no reason to start a commotion..." ("snape_09") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + sna "So we shall keep the charade going for now..." ("snape_03") + + gen "By doing what exactly?" ("base", xpos="far_left", ypos="head") + sna "Just act like Albus always does; Never leave this tower and avoid any human contact..." ("snape_05") + gen "That..." ("base", xpos="far_left", ypos="head") + gen "Sounds..." ("base", xpos="far_left", ypos="head") + gen "Incredibly boring!" ("angry", xpos="far_left", ypos="head") + gen "What am I supposed to do here?" ("angry", xpos="far_left", ypos="head") + sna "You are a Genie. Conjure up some sort of entertainment for yourself." ("snape_01") + gen "My magic doesn't seem to be working properly here for some reason..." ("base", xpos="far_left", ypos="head") + gen "And my lamp is literally worlds away..." ("base", xpos="far_left", ypos="head") + sna "Well, what do you expect me to do about that?" ("snape_03") + sna "Send you a couple of girls from Slytherin maybe?" + gen "I have no idea what Slytherin is, but I think that would work..." ("grin", xpos="far_left", ypos="head") + sna "That was a joke, obviously." ("snape_04") + sna "Although..." ("snape_09") + sna "*Hmm*..." + sna "Well, in any case, I don't see how entertaining {size=+7}you{/size} is {size=+7}my{/size} problem." ("snape_01") + gen "Oh, but it is!" ("base", xpos="far_left", ypos="head") + gen "I'm immortal and all-powerful..." ("base", xpos="far_left", ypos="head") + gen "Being bored is one of the worst things that could happen to me!" ("base", xpos="far_left", ypos="head") + gen "And I have a thing against being cooped up in small spaces with nothing to do!" ("angry", xpos="far_left", ypos="head") + gen "I may lose my mind..." ("angry", xpos="far_left", ypos="head") + gen "Oh! Ah! I think it's happening already!" ("angry", xpos="far_left", ypos="head") + sna "......." ("snape_03") + gen "I'm losing my mind! It's getting hard to breathe!" ("angry", xpos="far_left", ypos="head") + sna "...." ("snape_04") + gen "It's so dark..." ("angry", xpos="far_left", ypos="head") + gen "Are you still here?" ("angry", xpos="far_left", ypos="head") + sna "...." ("snape_03") + gen "........." ("base", xpos="far_left", ypos="head") + sna "Are you done?" ("snape_10") + gen "Yes..." ("base", xpos="far_left", ypos="head") + gen "Seriously though, I don't see how this whole affair benefits me at all." ("base", xpos="far_left", ypos="head") + sna "Do you have any choice?" ("snape_01") + gen "I do..." ("base", xpos="far_left", ypos="head") + gen "Instead of sitting here on my ass all day and being quiet I could explore your world..." ("base", xpos="far_left", ypos="head") + sna "*Hmm*..." ("snape_03") + sna "Well, alright, what do you want?" ("snape_01") + + menu: + "\"A chair.\"": + sna "What's wrong with your current chair?" ("snape_05") + gen "Nothing. But I want another one in case I wanted to sit by the fire." ("base", xpos="far_left", ypos="head") + sna "I guess that can be arranged..." ("snape_01") + sna "What else?" + gen "I want to learn more about your magic..." ("base", xpos="far_left", ypos="head") + "\"A maid!\"": + gen "Send me the cutest one!" ("grin", xpos="far_left", ypos="head") + sna "{size=-6}*Hmm*... I guess I could assign a house elf to clean this room.{/size}" ("snape_09") + sna "Alright. Is that all?" ("snape_01") + gen "I want you to teach me your magic..." ("base", xpos="far_left", ypos="head") + "\"I want three wishes.\"": + sna "Three wishes?" ("snape_44") + sna "Who do you think I am? A genie?" ("snape_24") + gen "Three wishes or I'm walking through that door right now." ("base", xpos="far_left", ypos="head") + sna "...Fine." ("snape_31") + sna "What do you want?" ("snape_35") + gen "First, I want a maid!" ("grin", xpos="far_left", ypos="head") + sna "This isn't a motel--" ("snape_08") + sna "{size=-6}*Hmm*... I guess I could assign a house elf to clean this room.{/size}" ("snape_09") + gen "What was that?" ("base", xpos="far_left", ypos="head") + sna "Nothing, go on." ("snape_01") + gen "Second, a chair." ("base", xpos="far_left", ypos="head") + sna "A chair? What do you need the chair for?" ("snape_05") + sna "You're already sitting on one." ("snape_05") + gen "I don't want my guests to just stand." ("base", xpos="far_left", ypos="head") + sna "Guests? You're not supposed to have g--" ("snape_10") + sna "*sigh* It's pointless reasoning with you, isn't it?" ("snape_06") + gen "Yes." ("base", xpos="far_left", ypos="head") + sna "Alright, you'll have your chair." ("snape_03") + gen "and lastly..." ("base", xpos="far_left", ypos="head") + gen "Teach me your magic..." ("base", xpos="far_left", ypos="head") + + sna "My magic?" ("snape_05") + gen "Yes... The way you conjure up your spells is..." ("base", xpos="far_left", ypos="head") + + hide snape_main + call bld("hide") + call sna_chibi(flip=True) + with d3 + + $ renpy.play('sounds/fire_woosh.ogg') + show screen gfx_effect(780, 300, img="smoke", zoom=0.7) + $ chair_OBJ.hidden = False + + "Snape takes out his magic wand and conjures a chair." + + gen "Intriguing..." ("base", xpos="far_left", ypos="head") + call sna_chibi(flip=False) + sna "*Hmm*... I suppose that could be arranged..." ("snape_05", trans=d3) + gen "Oh, and I wouldn't mind if you sent me some of those Slytherin girls as well.." ("base", xpos="far_left", ypos="head") + sna "..............." ("snape_05") + sna "........................." + sna "*Ha-ha-ha*!!!" ("snape_28") + gen "What? What did I say?" ("base", xpos="far_left", ypos="head") + sna "*A-ha-ha-ha-ha*..." ("snape_28") + sna "No, no, my apologies..." ("snape_02") + sna "It's just that to me you still look and sound like Albus..." + sna "To hear Professor Dumbledore say things like \"Send me some of those girls\"..." + sna "It's hysterical..." ("snape_22") + sna "But you wouldn't understand..." ("snape_09") + gen "*Heh*..." ("base", xpos="far_left", ypos="head") + gen "Send those whores up, Severus. I'm feeling lonely tonight." ("grin", xpos="far_left", ypos="head") + sna "*Ha-ha-ha*! Stop it, you're killing me!" ("snape_28") + sna "*A-Ha-ha-ha*!" + gen "No, I'm serious... Is it possible?" ("base", xpos="far_left", ypos="head") + sna "*Hmm*..." ("snape_02") + sna "We'll see..." + sna "You being our new headmaster presents me with interesting possibilities..." + sna "I need some time to figure out how to use this situation to my advantage." + gen "You mean {size=+7}our{/size} advantage, right?" ("base", xpos="far_left", ypos="head") + sna "Oh, yes. Yes, of course..." ("snape_06") + sna "Well, I think we are done for today..." + sna "Good night... genie." ("snape_24") + gen "Yes. Good night, Severus." ("base", xpos="far_left", ypos="head") + + call sna_walk("door", "base") + pause.2 + + sna "................." ("snape_06", ypos="head") + sna "\"Send those whores up, Severus!\" Ha-ha-ha.." ("snape_28") + + call sna_chibi("leave") + + call bld + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "I Suppose I'll just curl up in a ball on top of this desk as usual..." ("base", xpos="far_left", ypos="head") + pause.2 + + $ snape_unlocked = True + # Silently add an achievement, then display a popup message. + $ achievements.unlock("unlocksna", True) + call popup("{size=-4}You can now summon Snape into your office.{/size}", "Character unlocked!", "interface/icons/head/snape.webp") + $ snape_intro.E5_complete = True + + call tutorial("hangouts") + + jump day_start diff --git a/game/scripts/characters/snape/hangouts.rpy b/game/scripts/characters/snape/hangouts.rpy new file mode 100644 index 00000000..6f2b8a52 --- /dev/null +++ b/game/scripts/characters/snape/hangouts.rpy @@ -0,0 +1,33 @@ +default ss_he_drink = event_class(title = "Snape Wine", start_label = "snape_hangout", events = [ + [ + ["ss_he_wine_intro"], + ["ss_he_wine_repeat"], + ["ss_he_wine_intro_E2"] + ] + + ], + iconset = [["star_empty", "star_yellow"]] # You have to add icons at least for first tier, the rest will be copied over automatically. + ) + +default ss_he_story = event_class(title = "Snape Stories", start_label = "snape_hangout", events = [ + [ + ["ss_he_story_E1"], # Teach me wand magic + ["ss_he_story_intro_E2"], # More points for Slytherin + ["ss_he_story_intro_E3"], # M.R.M. nonsense + ["ss_he_story_intro_E4"], # Parallel worlds + ["ss_he_story_intro_E5"], # Progress with Hermione? + ["ss_he_story_E6"], # Those nasty Slytherin Sluts! + ["ss_he_story_intro_E7"], # Jasmine is a muggle + ["ss_he_story_intro_E8"], # Flogging + ["ss_he_story_intro_E9"], # Russian dream (replace this one) + ["ss_he_story_intro_E10"],# The meaning of life + ["ss_he_story_intro_E11"],# The great catastrophe + ["ss_he_story_intro_E12"],# Albus might be dead? + ["ss_he_story_intro_E13"],# Snape is happy + ["ss_he_story_E14"], # Choking Slytherin girls... + ["ss_he_story_intro_E15"] # Busy days + ] + + ], + iconset = [["star_empty", "star_yellow"]] # You have to add icons at least for first tier, the rest will be copied over automatically. + ) diff --git a/game/scripts/characters/snape/nicknames.rpy b/game/scripts/characters/snape/nicknames.rpy new file mode 100644 index 00000000..e5991b19 --- /dev/null +++ b/game/scripts/characters/snape/nicknames.rpy @@ -0,0 +1,120 @@ +label snape_nicknames_genie: + menu: + "-Mister G-": + sna "Genie I presume?" ("snape_05") + gen "Nah.... {i}G{/i} as in gangsta..." ("base", xpos="far_left", ypos="head") + gen "{i}Wuddup it's mister G coming at you from the big Hog.{/i}" ("base", xpos="far_left", ypos="head") + sna "Yeah, no I'm not doing that..." ("snape_04") + "-Big D-": + sna "I don't think that the real Albus Dumbledore would call himself that..." ("snape_03") + gen "I suppose I am much greater than he is." ("base", xpos="far_left", ypos="head") + sna "Greater than the real Albus Dumbledore?!" ("snape_25") + sna "*Hmph*... You might be a Genie but that is taking things too far..." ("snape_03") + "-Master-": + sna "I am not some common house elf..." ("snape_03") + gen "What kind of elf are you then?" ("base", xpos="far_left", ypos="head") + gen "A Dark elf?" ("base", xpos="far_left", ypos="head") + sna "..." ("snape_04") + gen "I knew it..." ("base", xpos="far_left", ypos="head") + "-Daddy-": + sna "What did you just say?" ("snape_03") + gen "(Why did I just say that?)" ("angry", xpos="far_left", ypos="head") + menu: + "-Say it again-": + gen "Err... Daddy?" ("base", xpos="far_left", ypos="head") + sna "Get the hell out of my office!" ("snape_33") + gen "Okay!" ("angry", xpos="far_left", ypos="head") + + call gen_chibi("stand", xpos="400", ypos="460") + with d3 + pause .3 + + #Genie leaves the office + call gen_walk(action="leave", speed=1.5) + + pause 1 + call play_sound("door") + call gen_chibi("stand", "door", "base", flip=False) + with d3 + pause 0.8 + + gen "I thought this was my office." ("base", xpos="far_left", ypos="head") + sna "Sit the hell down in your chair and never say anything like that again!" ("snape_17") + gen "Yes sir!" ("angry", xpos="far_left", ypos="head") + + call gen_walk(action="stand", xpos="400", ypos="460", speed=1.5) + call gen_chibi("sit_behind_desk") + with d3 + "-Don't-": + gen "Nothing. You have heard nothing." ("base", xpos="far_left", ypos="head") + sna "Just as I thought." ("snape_04") + "-Sexy-": + sna "Why on earth would I do that?" ("snape_05") + gen "Because it's true." ("base", xpos="far_left", ypos="head") + sna "You look like an old man." ("snape_03") + gen "Hey, I'm only a sixtyfive thousand years old thank you very much..." ("base", xpos="far_left", ypos="head") + sna "I'm talking about--{w=0.4} You know what, nevermind..." ("snape_03") + "-Lord Voldemort-": + sna "..." ("snape_11") + gen "No?" ("base", xpos="far_left", ypos="head") + sna "Where did you--" ("snape_36") + ">Snape scratches his ass nervously." + sna "How do you know that name?!" ("snape_36") + gen "Alright fine... nevermind..." ("base", xpos="far_left", ypos="head") + "-Custom Input-": + gen "...{w=0.4} Why can't I type anything in?!" ("base", xpos="far_left", ypos="head") + sna "What?" ("snape_05") + gen "*Hmph*...{w=0.4} Must be a bug." ("base", xpos="far_left", ypos="head") + "-Never mind-": + pass + + return + +label snape_nicknames: + menu: + "-Rus-": + sna "What?" ("snape_03") + gen "Rus, like short for Severus." ("base", xpos="far_left", ypos="head") + sna "Doesn't \"Sev\" make more sense?" ("snape_05") #Lilly used to call him this + gen "Oh yeah!" ("base", xpos="far_left", ypos="head") + gen "So, can I call you--" ("base", xpos="far_left", ypos="head") + sna "No." ("snape_04") + "-Tall broody guy-": + sna "What?" ("snape_01") + gen "You like it?" ("base", xpos="far_left", ypos="head") + sna "Sure." ("snape_03") + gen "Really?" ("base", xpos="far_left", ypos="head") + sna "No..." ("snape_04") + "-Snake-": + sna "..." ("snape_39") + gen "A bit too on the nose perhaps..." ("base", xpos="far_left", ypos="head") + "-Dungeon Dweller-": + sna "You think you're some sort of jokester?" ("snape_43") + gen "You can call me erection inhabitant if you like." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_03") + "-Anal Frickman-": + sna "Is that supposed to be funny?" ("snape_03") + gen "I'm sure it would be if anyone got any of my references in this universe." ("base", xpos="far_left", ypos="head") + "-Snivellus-": + sna "How about \"go fuck yourself\"." ("snape_04") + gen "That's a weird nickname but sure." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_06") + "-Master-": + sna "Sure!" ("snape_37") + sna "Finally I'm getting some recognition around this place..." ("snape_23") + gen "..." ("base", xpos="far_left", ypos="head") + sna "...{w=0.6}{nw}" ("snape_02") + sna "...{fast} Oh, you were just doing one of your \"Hilarious\" jokes..." ("snape_01") + "-Pantysniffer-" if snape_office_intro_E2: + sna "I don't sniff panties!" ("snape_18") + gen "Then what do you do with them?!" ("base", xpos="far_left", ypos="head") + sna "I--{w=0.2} I just collect them..." ("snape_12") + gen "Likely story..." ("base", xpos="far_left", ypos="head") + "-Custom Input-": + gen "...{w=0.4} Why can't I type anything in?!" ("base", xpos="far_left", ypos="head") + sna "What?" ("snape_05") + gen "*Hmph*...{w=0.4} Must be a bug." ("base", xpos="far_left", ypos="head") + "-Never mind-": + pass + + return diff --git a/game/scripts/characters/snape/summon.rpy b/game/scripts/characters/snape/summon.rpy new file mode 100644 index 00000000..b30896fc --- /dev/null +++ b/game/scripts/characters/snape/summon.rpy @@ -0,0 +1,111 @@ + + +label summon_snape: + + $ last_character = "snape" + + call play_music("snape") + call play_sound("door") + call sna_chibi("stand","mid","base") + with d3 + + sna "Yes, what is it?" ("snape_01",xpos="base",ypos="base", trans=d3) + + label snape_ready: + pass + + menu: + # Talk + "-Talk-" (icon="interface/icons/small/talk.webp"): + call snape_chitchat + + label .talk: + menu: + "-Ask him to help Tonks-" if astoria_intro.E1_complete and not astoria_intro.E3_complete: + + if astoria_intro.E2_snape: + sna "I'm still on the lookout, Genie." ("snape_01") + sna "If I find the little maggot that casts those spells..." ("snape_10") + jump .talk + + $ snape_busy = True + $ astoria_intro.E2_snape = True + $ ag_event_pause = 2 + jump astoria_intro_E2_snape + + "-Try solving the Quidditch Quarrel-" (icon="interface/icons/small/quidditch.webp") if cho_tier == 2 and cho_quid.E6_complete and not cho_quid.E9_complete and not cho_quid.E8_complete: + if game.daytime: + gen "I wanted to talk to you about the upcoming Quidditch game." ("base", xpos="far_left", ypos="head") + sna "I don't really have time right now..." ("snape_05") + if wine_ITEM.owned >= 1: + gen "I got drinks." ("base", xpos="far_left", ypos="head") + else: + gen "I'll get us drinks." ("base", xpos="far_left", ypos="head") + sna "Tempting, but it'll have to be in the evening... work and all that." ("snape_06") + gen "Fine." ("base", xpos="far_left", ypos="head") + jump .talk + else: + gen "So about that upcoming Quidditch game..." ("base", xpos="far_left", ypos="head") + + if wine_ITEM.owned >= 1: + sna "Whatever it is, it can wait, let's sit down first, shall we." ("snape_01") + call setup_fireplace_hangout(char="snape") + $ ss_he_drink.start() + $ ss_he_counter += 1 + $ wine_ITEM.owned -= 1 + + jump cho_quid_E9 + else: + sna "I hope you have some wine at least?" ("snape_01") + gen "I hoped you'd bring your own for once." ("base", xpos="far_left", ypos="head") + sna "I see.." ("snape_04") + sna "I guess you don't need my help after all." ("snape_31") + gen "(Bloody alcoholic..)" ("base", xpos="far_left", ypos="head") + jump .talk + + "-Address me only as-" if hermione_intro.E6_complete: + call snape_nicknames_genie + jump .talk + + "-From now on I will refer to you as-" if hermione_intro.E6_complete: + call snape_nicknames + jump .talk + + "-Never mind-": + jump snape_ready + + + # Fireplace Chats + "-Let's hang-" (icon="interface/icons/small/toast.webp") if wine_ITEM.owned >= 1 and not game.daytime: + jump snape_hangout + + "-Let's hang-" (icon="interface/icons/small/toast.webp", style="disabled") if wine_ITEM.owned < 1 or game.daytime: + if game.daytime: + gen "(I'm not sharing my booze with Snape while he still has to teach classes...)" ("base", xpos="far_left", ypos="head") + gen "(I better ask him during the evening to get drunk...)" ("base", xpos="far_left", ypos="head") + elif wine_ITEM.owned < 1: + gen "(I don't have any more wine...)" ("base", xpos="far_left", ypos="head") + jump snape_ready + + # Cardgame + "-Let's Duel-" (icon="interface/icons/small/cards.webp") if deck_unlocked: + jump snape_duel_menu + + # Dismiss + "-Never mind-": + stop music fadeout 1.0 + + if game.daytime: + sna "Alright, back to work then..." + else: + sna "Goodnight then." + + call play_sound("door") + + $ snape_busy = True + + hide snape_main + call sna_chibi("hide") + with d3 + + jump main_room_menu diff --git a/game/scripts/characters/snape/vars.rpy b/game/scripts/characters/snape/vars.rpy new file mode 100644 index 00000000..7803a3e4 --- /dev/null +++ b/game/scripts/characters/snape/vars.rpy @@ -0,0 +1,22 @@ +# Main +default snape_xpos = 525 +default snape_ypos = 0 +default snape_zorder = 15 +default snape_flip = 1 +default snape_zoom = 0.5 +default snape_face = "snape_01" +default snape_animation = [] + +# Flags +default snape_busy = False +default snape_unlocked = False + +###SNAPE STATS### + +default sna_friendship = 0 + +# Chitchat with snape +default snape_chatted = False #Prevents you from chitchating more then once a day. Turns back to False every night. + +# Snape hangout events +default ss_he_counter = 0 diff --git a/game/scripts/characters/susan/chibi.rpy b/game/scripts/characters/susan/chibi.rpy new file mode 100644 index 00000000..ddd20122 --- /dev/null +++ b/game/scripts/characters/susan/chibi.rpy @@ -0,0 +1,75 @@ +label sus_chibi(action=None, xpos=None, ypos=None, flip=False): + $ susan_chibi.position(xpos, ypos, flip) + + if action == "hide": + $ susan_chibi.hide() + return + elif action == "leave": + hide susan_main + hide screen bld1 + hide screen blktone + call play_sound("door") + $ susan_chibi.hide() + with d3 + pause .5 + return + elif action == "reset": + $ susan_chibi.do(None) + return + + $ susan_chibi.do(action) + + return + +label sus_walk(xpos=None, ypos=None, speed=1.0, action=None, reduce=False, path=None, flip=False): + call hide_characters + hide screen bld1 + hide screen blktone + with d3 + + if action == "enter": + call play_sound("door") + call sus_chibi(None, "door", "base", flip) + with d3 + if xpos or ypos: + $ susan_chibi.move((xpos, ypos), speed, reduce) + elif action == "leave": + $ susan_chibi.show() + $ susan_chibi.move(("door", "base"), speed, reduce) + call play_sound("door") + $ susan_chibi.hide() + with d3 + pause .5 + elif path: + $ susan_chibi.show() + $ susan_chibi.move(path, speed, reduce) + else: + $ susan_chibi.show() + $ susan_chibi.move((xpos, ypos), speed, reduce) + return + +# Chibi definition +default susan_chibi = Chibi("susan", ["base", "shoes", "top", "bottom", "robe"], update_susan_chibi) + +init python: + def update_susan_chibi(chibi): + # Assume chibi action has a matching image definition + chibi_image = "ch_sus {}".format(chibi.action or "stand") + chibi["base"] = chibi_image + + # Determine clothing state + + if susan.is_any_worn("bottom", "stockings"): + if chibi.action == "walk": + chibi["shoes"] = "ch_sus walk_shoes" + else: + chibi["shoes"] = "sb_walk_01_shoes.webp" + + if susan.is_worn("top"): + chibi["top"] = "sb_cloth_shirt_h.webp" + + if susan.is_worn("bottom"): + chibi["bottom"] = "sb_cloth_skirt.webp" + + if susan.is_worn("robe"): + chibi["robe"] = "sb_cloth_robe_h.webp" diff --git a/game/scripts/characters/susan/chitchat.rpy b/game/scripts/characters/susan/chitchat.rpy new file mode 100644 index 00000000..ea9f02ea --- /dev/null +++ b/game/scripts/characters/susan/chitchat.rpy @@ -0,0 +1,91 @@ + +label susan_chitchat: + + if susan_chatted: + return + + $ susan_chatted = True + + # Note: Susan does not have Tiers yet. + + # if ast_tier == 1: + # # $ random_number = renpy.random.randint(MIN, MAX) + + # pass + # elif ast_tier == 2: + # # $ random_number = renpy.random.randint(MIN, MAX) + + # pass + # elif ast_tier == 3: + # # $ random_number = renpy.random.randint(MIN, MAX) + + # pass + # elif ast_tier == 4: + # $ random_number = renpy.random.randint(1, 11) + + $ random_number = renpy.random.randint(1, 15) + + if random_number == 1: + sus "My favourite subject is Herbology..." ("open", "base", "base", "mid") + sus "But when we're working in groups the other students usually talk over me..." ("base", "closed", "worried", "mid") + + elif random_number == 2: + sus "The Hufflepuff house entrance is hidden in the kitchen corridor." ("open", "base", "base", "mid") + sus "Even though we're so close, I've only seen a house elf once." ("upset", "base", "base", "R") + + elif random_number == 3: + sus "Care for magical creatures is a bit scary sometimes..." ("open", "base", "worried", "mid") + sus "When we were taught how to properly approach Hippogriffs, I was shaking the entire time." ("upset", "base", "worried", "R") + sus "After bowing and letting it approach me, I only pet it a couple of times. I wouldn't dare to ride the thing." ("open", "base", "worried", "mid") + + elif random_number == 4: + sus "Sir, could you... Could you please tell professor Snape not to..." ("open", "base", "worried", "mid") + sus "Never mind..." ("upset", "base", "worried", "down") + + elif random_number == 5: + sus "Does flying have to be mandatory?" ("open", "base", "worried", "mid") + sus "Surely only a piece of wood between you, and falling from the sky can't be safe..." ("upset", "base", "worried", "down") + + elif random_number == 6: + sus "Madame Hooch was keeping a close eye on me during the last flying lesson." ("open", "base", "base", "down") + sus "I hope I'm not disappointing her too much..." ("upset", "base", "base", "R") + + elif random_number == 7: + sus "Madame Pomfrey once prescribed me a \"Draught of peace\" to drink the night before exams so I could get some sleep." ("open", "base", "base", "mid") + sus "But even with her prescription, Snape wouldn't give one to me." ("upset", "base", "base", "R") + + elif random_number == 8: + sus "Why does everyone assume I'm a Weasley just because I've got red hair?" ("upset", "base", "base", "mid") + sus "Some Slytherin boys keep mocking... even though I'm clearly wearing Hufflepuff robes." ("open", "base", "worried", "down") + + elif random_number == 9: + sus "I used to be scared of ghosts before I got to Hogwarts, but the \"Fat Friar\" is so nice it's hard to stay scared of them." ("grin", "base", "base", "mid") + sus "Poltergeists on the other hand..." ("open", "base", "angry", "mid") + + elif random_number == 10: + sus "The \"Defence against the dark arts\" lesson when we had to confront a Boggart was one of my worst days here..." ("upset", "base", "worried", "down") + sus "Professor Tonks had me stay behind after class to make sure I was okay." ("base", "base", "worried", "R") + sus "Once I got back to my dorm, some of the other students were whistling at me for some reason..." ("open", "base", "worried", "R") + + elif random_number == 11: + sus "Whilst most students go home during winter break, I usually stay at Hogwarts." ("open", "base", "base", "R") + sus "The castle is a lot quieter than usual, but I don't really mind." ("base", "base", "base", "mid") + + elif random_number == 12: + sus "How come Professor Snape is allowed to ask us to gather ingredients in the forbidden forest?" ("upset", "base", "worried", "mid") + sus "The students that didn't go got a bad grade and the ones that did got detention..." ("open", "base", "worried", "mid") + sus "How is that fair?" ("upset", "base", "base", "down") + + elif random_number == 13: + sus "I think my school robes must've shrunk in the wash." ("upset", "base", "base", "down") + sus "They're a lot tighter than when I bought them..." ("open", "base", "base", "down") + + elif random_number == 14: + sus "Just because the Hufflepuff house is next to the kitchen, doesn't mean we can get food whenever we like." ("open", "base", "base", "mid") + sus "So why does the Slytherin students keep asking me to show where I hide my melons?" ("upset", "base", "base", "R") + + elif random_number == 15: + sus "Why do people seem to find my surname so funny?" ("open", "base", "angry", "R") + sus "I mean, I guess it's a bit unusual..." ("upset", "base", "base", "mid") + + return diff --git a/game/scripts/characters/susan/common.rpy b/game/scripts/characters/susan/common.rpy new file mode 100644 index 00000000..396f239b --- /dev/null +++ b/game/scripts/characters/susan/common.rpy @@ -0,0 +1,120 @@ + +define sus_face = { + "mouth": { + "neutral": ["base"], + "happy": ["base","grin"], + "naughty": ["base"], + "horny": ["base"], + "annoyed": ["upset"], + "disgusted": ["open"], + "angry": ["upset"] + }, + + "eyes": { + "neutral": ["base", "closed"], + "happy": ["base", "eager"], + "naughty": ["base", "suspicious"], + "horny": ["suspicious"], + "annoyed": ["narrow","base", "suspicious"], + "disgusted": ["wide"], + "angry": ["suspicious"] + }, + + "eyebrows": { + "neutral": ["base"], + "happy": ["base"], + "naughty": ["base","worried"], + "horny": ["base","worried"], + "annoyed": ["angry"], + "disgusted": ["worried"], + "angry": ["angry"] + }, + + "pupils": { + "neutral": ["mid"], + "happy": ["mid","L","R"], + "naughty": ["L","R","down"], + "horny": ["L","R","down"], + "annoyed": ["R","down"], + "disgusted": ["R","wide"], + "angry": ["mid"] + } +} + +label end_susan_event: + call sus_chibi("hide") + hide susan_main + with d3 + pause.5 + + call update_susan + + $ active_girl = None + $ susan_busy = True + $ susan.wear("all") + + $ renpy.stop_predict(susan.get_image()) + $ renpy.stop_predict("characters/susan/face/*.webp") + + call music_block + jump main_room_menu + +label update_susan: + # Chibi Update + $ susan_chibi.update() + $ susan_chibi.position(flip=False) + $ susan.xzoom = 1 + hide screen susan_cloth_pile + + return + +define character.susan_say = Character("susan_name", show_icon="susan", dynamic=True) + +init python: + def sus(what, mouth=False, eyes=False, eyebrows=False, pupils=False, cheeks=None, tears=None, + emote=None, face=None, xpos=None, ypos=None, pos=None, flip=None, trans=None, animation=False, **kwargs): + + redraw = False + tag = susan.tag + layer = susan.layer + #showing = renpy.showing(name=tag, layer=layer) + + if xpos != None or ypos != None: + xpos = susan.pos[0] if xpos == None else sprite_pos.get("x").get(xpos, xpos) + ypos = susan.pos[1] if ypos == None else sprite_pos.get("y").get(ypos, ypos) + susan.pos = (xpos, ypos) + redraw = True + + head_only = susan.pos[1] == sprite_pos.get("y").get("head") + + if any((mouth, eyes, eyebrows, pupils, cheeks, tears)): + susan.set_face(mouth=mouth, eyes=eyes, eyebrows=eyebrows, pupils=pupils, cheeks=cheeks, tears=tears) + redraw = True + + susan.set_emote(emote) + + if animation != False: + if isinstance(animation, list): + susan.animation = animation + else: + susan.animation = [animation] + redraw = True + + if flip != None: + susan.xzoom = -1 if flip else 1 + redraw = True + + if redraw: + susan.show() + + if not renpy.in_rollback(): + if trans: + renpy.with_statement(trans) + else: + renpy.with_statement(d2) + + if what: + character.susan_say(what, **kwargs) + + if head_only: + susan.hide() diff --git a/game/scripts/characters/susan/events/intro.rpy b/game/scripts/characters/susan/events/intro.rpy new file mode 100644 index 00000000..7811a981 --- /dev/null +++ b/game/scripts/characters/susan/events/intro.rpy @@ -0,0 +1,192 @@ + +### Susan Intro ### + +label nt_he_susan_E1: + ton "................." ("annoyed", "base", "shocked", "down", ypos="head", flip=False) + gen "Something on your mind?" ("base", xpos="far_left", ypos="head") + ton "Yes, there's this student in my class. She seems to be having a bad time." ("open", "narrow", "worried", "mid") + gen "Education isn't meant to be enjoyable." ("base", xpos="far_left", ypos="head") + ton "It's not that, she's being bullied by the other students apparently..." ("normal", "base", "worried", "R") + gen "Why is she being singled out?" ("base", xpos="far_left", ypos="head") + ton "For being shy... insecure..." ("upset", "closed", "base", "mid") + gen "About what?" ("base", xpos="far_left", ypos="head") + ton "About her massive tits!" ("open", "wide", "base", "mid") + gen "!!!" ("angry", xpos="far_left", ypos="head") + gen "Why would she be insecure about that?" ("base", xpos="far_left", ypos="head") + gen "Surely that's something most girls would kill for!" ("grin", xpos="far_left", ypos="head") + ton "That's what I said..." ("open", "closed", "shocked", "mid") + ton "She didn't seem to think I was being genuine." ("soft", "base", "worried", "down") + gen "They're probably just jealous of her." ("base", xpos="far_left", ypos="head") + ton "Naturally... Even I'm jealous of those {b}milk-bags{/b} of hers!" ("open", "shocked", "shocked", "mid") + gen "I definitely need to see them!" ("grin", xpos="far_left", ypos="head") + ton "That being said, I'm quite worried about her..." ("open", "closed", "worried", "mid") + ton "Lately she's been too shy to even answer the simplest of questions during my class." ("annoyed", "base", "worried", "R") + ton "She's lost quite a few points for her house that way." ("upset", "base", "worried", "mid") + ton "Not in my lessons, of course. I'd never take points from Hufflepuff!" ("soft", "base", "worried", "R") + gen "Just send her my way and I'll drown her in house points!" ("grin", xpos="far_left", ypos="head") + gen "And show her that her bod--" ("base", xpos="far_left", ypos="head") + gen "*Ahem!* Show her that she's appreciated..." ("angry", xpos="far_left", ypos="head") + ton "That's what I was thinking..." ("open", "closed", "base", "mid") + gen "Wait, you were?" ("angry", xpos="far_left", ypos="head") + ton "Of course, why else would I be telling you about her?" ("open", "wide", "annoyed", "mid") + gen "I don't know... banter?" ("base", xpos="far_left", ypos="head") + gen "Snape sure as hell hasn't sent me any girls..." ("base", xpos="far_left", ypos="head") + ton "I can teach him a thing or two about sharing - if you'd like..." ("soft", "base", "annoyed", "mid") + ton "The more the merrier in my opinion..." ("base", "happyCl", "base", "mid") + gen "You don't mean Snape and I..." ("base", xpos="far_left", ypos="head") + ton "Of course not, don't be silly!" ("base", "narrow", "base", "mid") + ton "Maybe he's afraid you'd steal them from him if you got the chance..." ("horny", "base", "angry", "mid") + gen "I have my doubts those girls he's talking about even exist..." ("base", xpos="far_left", ypos="head") + gen "But don't tell him I said that." ("base", xpos="far_left", ypos="head") + ton "I shall talk to Miss Bones." ("open", "closed", "base", "mid") + + if letter_favors.read: + gen "Bones... I think I've heard that name before..." ("base", xpos="far_left", ypos="head") + ton "Her Aunt works at the ministry." ("open", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + else: + gen "*He-He*... Bones." ("grin", xpos="far_left", ypos="head") + + ton "I'm sure you'll find her less than bony..." ("base", "base", "angry", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + ton "But, you have to promise me that you won't go overboard with her!" ("mad", "base", "base", "mid") + ton "I'd rather not risk having her contact that aunt of hers..." ("open", "base", "base", "R") + gen "I can be slick and subtle when I want to..." ("base", xpos="far_left", ypos="head") + ton "..." ("upset", "base", "worried", "R") + ton "You're making me regret this decision already..." ("open", "closed", "worried", "mid") + + ">As the hours pass, you convince Tonks to describe Susan's {b}massive tits{/b} to you..." + ">It didn't take much convincing..." + + $ nt_he.susan_E1 = True + $ sb_event_pause += 1 # New event the next day. + + jump end_tonks_hangout_points + + +label susan_intro_E1: + stop music fadeout 1.0 + call play_sound("knocking") + call bld + "*knock-knock-knock*" + femv "*Uhm*... Professor Dumbledore, Sir?" + femv "May I come in?" + gen "Another girl?" ("base", xpos="far_left", ypos="head") + + $ d_flag_01 = False + $ d_flag_02 = False + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Come on in.\"": + femv "Thank you, Sir." + + "\"Who's there?\"": + $ d_flag_01 = True # Knows name. + sus "Sus--{w=0.3} Susan Bones, Sir." + gen "Susan Bones who?" ("grin", xpos="far_left", ypos="head") + sus "... I'm sorry?" + gen "*Ha-ha-ha-ha!*" ("grin", xpos="far_left", ypos="head") + show screen blktone + with d1 + gen "I'm a terrible person..." ("base", xpos="far_left", ypos="head") + hide screen blktone + with d1 + sus "Professor?" + gen "Yes, please come on in..." ("base", xpos="far_left", ypos="head") + sus "Thank you, Sir." + + "\"Not now.\"": + $ d_flag_02 = True # Susan walks in anyway. + femv "Okay, Sir." + + call sus_walk(action="enter", xpos="desk", ypos="base") + + call bld + if d_flag_02: + gen "Didn't I say not now--" ("angry", xpos="far_left", ypos="head") + else: + gen "How can I help you--" ("base", xpos="far_left", ypos="head") + + call play_music("susan") + pause.8 + + $ susan.set_face(mouth="base", eyes="base", eyebrows="base", pupils="mid") + $ camera.set_imagepath("common/") + $ camera.set_image("CG susan") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=1.0, pos=(-1045, -390), initialize=True) + show screen animatedCG + with fade + + # Boing sound? + $ renpy.play("sounds/boing03.ogg") + with hpunch + gen "(Damn! Look at them titties...)" + + menu: + "\"Hello, Gorgeous!\"": + $ camera.set(zoom=0.5, pos=(-270, -150), t=3.0) + sus "*Ehm*..." ("upset", "base", "base", "down") # Embarrassed. + sus "H-Hello..." ("open", "base", "worried", "mid") + + "\"Susan! How great to see you!\"" if d_flag_01: + $ camera.set(zoom=0.5, pos=(-270, -150), t=3.0) + gen "Where have you been all my life?" + sus "I've been here at school for a couple of years now, Sir." ("open", "base", "worried", "R") + + "\"My day just got a whole lot brighter!\"": + $ camera.set(zoom=0.5, pos=(-270, -150), t=3.0) + sus "Sir?" ("upset", "base", "worried", "mid") + gen "(Or should say darker?)" + show screen blktone + gen "(Those tits must cast a huge-ass shadow...)" + hide screen blktone + + sus "Professor Tonks said you wanted to see me?" ("base", "base", "base", "mid") + gen "Did she now?" + gen "(I have to get that woman a drink for introducing me to this magnificently voluptuous creature...)" + gen "Well, how nice of her." + sus "Is there anything I can help you with, Professor?" ("grin", "base", "base", "mid") + gen "..." + sus "S-Sir?" ("open", "base", "worried", "mid") + gen "(This must be that girl she wanted me to help with body confidence...)" + gen "Did professor Tonks tell you why I wanted to see you?" + sus "N-no...{w} I'm not in trouble am I?" ("upset", "base", "worried", "down") + gen "Don't worry, I just needed to confirm something - You're free to go..." + sus "C-confirm something?" ("open", "narrow", "worried", "mid") + sus "So I'm not in trouble then?" ("grin", "base", "base", "mid") + gen "(This girl's got some confidence issues for sure...)" + gen "No miss Bones... You're not in any trouble." + sus "Very well..." ("base", "base", "base", "mid") + + if game.daytime: + sus "I shall return to class then." ("open", "base", "base", "R") + sus "Good--{w=0.4} Good day, sir." ("grin", "base", "base", "mid") + else: + sus "I shall return to my dormitory then." ("open", "base", "base", "R") + sus "Good--{w=0.4} Good night, sir." ("grin", "base", "base", "mid") + + hide screen animatedCG + with fade + + call sus_walk(action="leave") + + call bld + gen "..." ("base", xpos="far_left", ypos="head") + gen "Massive tits...{w=0.4} confirmed." ("base", xpos="far_left", ypos="head") + + $ susan_busy = True + + $ susan_unlocked = True + $ achievements.unlock("unlocksus", True) + call popup("{size=-4}You can now summon Susan into your office.{/size}", "Character unlocked!", "interface/icons/head/susan.webp") + + $ susan_intro.E1_complete = True + $ ag_event_pause += 2 # Astoria intro starts in 2 days. + + call music_block + jump main_room_menu diff --git a/game/scripts/characters/susan/gifts.rpy b/game/scripts/characters/susan/gifts.rpy new file mode 100644 index 00000000..7b82d24b --- /dev/null +++ b/game/scripts/characters/susan/gifts.rpy @@ -0,0 +1,128 @@ +# Susan Gift Responses + +label give_sus_gift(gift_item): + hide susan_main + with d5 + sus "" (xpos="mid", ypos="base", trans=d5) + + $ gave_susan_gift = True + + if gift_item == lollipop_ITEM: + call give_gift(">You give the lollipop to Susan...",gift_item) + #Add text + + elif gift_item == chocolate_ITEM: + call give_gift(">You give the chocolate to Susan...",gift_item) + #Add text + + elif gift_item == plush_owl_ITEM: + call give_gift(">You give the plush owl to Susan...",gift_item) + #Add text + + elif gift_item == butterbeer_ITEM: + call give_gift(">You give the butterbeer to Susan...",gift_item) + #Add text + + elif gift_item == science_mag_ITEM: + call give_gift(">You give the educational magazine to Susan...",gift_item) + #Add text + + elif gift_item == girls_mag_ITEM: + call give_gift(">You give the girls magazine to Susan...",gift_item) + #Add text + + elif gift_item == adult_mag_ITEM: + call give_gift(">You give the adult magazine to Susan...",gift_item) + #Add text + + elif gift_item == porn_mag_ITEM: + call give_gift(">You give the porn magazine to Susan...",gift_item) + #Add text + + elif gift_item == krum_poster_ITEM: + call give_gift(">You give the poster to Susan...",gift_item) + #Add text + + elif gift_item == sexy_lingerie_ITEM: + call give_gift(">You give the lingerie to Susan...",gift_item) + #Add text + + elif gift_item == sexy_stockings_ITEM : + call give_gift(">You give the stockings to Susan...",gift_item) + #Add text + + elif gift_item == pink_condoms_ITEM: + call give_gift(">You give the condoms to Susan...",gift_item) + #Add text + + elif gift_item == vibrator_ITEM: + call give_gift(">You give the vibrator to Susan...",gift_item) + #Add text + + elif gift_item == anal_lube_ITEM: + call give_gift(">You give the anal lube to Susan...",gift_item) + #Add text + + elif gift_item == ballgag_and_cuffs_ITEM: + call give_gift(">You give the handcuffs to Susan...",gift_item) + #Add text + + elif gift_item == anal_plugs_ITEM: + call give_gift(">You give the anal plugs to Susan...",gift_item) + #Add text + + elif gift_item == testral_strapon_ITEM: + call give_gift(">You give the strap-on to Susan...",gift_item) + #Add text + + elif gift_item == broom_2000_ITEM: + call give_gift(">You give the broom to Susan...",gift_item) + #Add text + + elif gift_item == sexdoll_ITEM: + call give_gift(">You give the doll to Susan...",gift_item) + #Add text + + elif gift_item == anal_beads_ITEM: + call give_gift(">You give the anal beads to Susan...",gift_item) + #Add text + + elif gift_item == wine_ITEM: + call give_gift(">You give the wine to Susan...", gift_item) + #Add text + + elif gift_item == firewhisky_ITEM: + call give_gift(">You give the firewhisky to Susan...", gift_item) + #Add text + + + sus "" (xpos="base", ypos="base") + hide susan_main + with d5 + + return + +label sus_mood(value=0): + show screen blktone + with d3 + + if value > 0: + if value == 1: + "Susan's mood worsened slightly." + else: + "Susan's mood just got a whole lot worse!" + elif value < 0: + if value == -1: + "Susan's mood has improved slightly." + else: + "Susan's mood has improved significantly." + else: + "Susan's mood hasn't changed." + + $ was_negative = sus_mood > 0 + $ sus_mood = max(min(sus_mood+value, 100), 0) + + call describe_mood_after_gift(was_negative, sus_mood, value) + + hide screen blktone + return diff --git a/game/scripts/characters/susan/summon.rpy b/game/scripts/characters/susan/summon.rpy new file mode 100644 index 00000000..d3b74511 --- /dev/null +++ b/game/scripts/characters/susan/summon.rpy @@ -0,0 +1,213 @@ + +label summon_susan: + + $ active_girl = "susan" + $ last_character = "susan" + + $ susan_busy = True + + call update_susan + + call play_music("susan") + call play_sound("door") + + call sus_chibi("stand","mid","base") + with d3 + + sus "You wanted to see me, [sus_genie_name]?" ("base", "base", "worried", "down",xpos="base",ypos="base") + + label susan_requests: + + sus "" (xpos="base", ypos="base") + + menu: + + # Talk + "-Talk-" (icon="interface/icons/small/talk.webp"): + if sus_mood > 0: + sus "I'm sorry, [sus_genie_name], but I don't want to talk right now." ("base", "base", "base", "down") + jump susan_requests + + call susan_chitchat + jump susan_talk + + "-Sexual favours-" (icon="interface/icons/small/condom.webp", style="disabled") if False: + $ TBA_message() + jump susan_requests + + # Wardrobe + "-Wardrobe-" (icon="interface/icons/small/wardrobe.webp") if susan_wardrobe_unlocked: + hide susan_main with d1 + call wardrobe + jump susan_requests + + "-Hidden-" (style="disabled") if not susan_wardrobe_unlocked: + call nar(">You haven't unlocked this feature yet.") + jump susan_requests + + "-Give Item-" (icon="interface/icons/small/gift.webp"): + $ TBA_message() + jump susan_requests + + # hide susan_main with d1 + # call gift_menu + # jump susan_requests + + + # Dismiss + "-Dismiss her-": + if game.daytime: + sus "I will go back to classes then, [sus_genie_name]." ("base", "base", "base", "down") + else: + sus "*Ehm*... good night then, [sus_genie_name]." ("base", "base", "base", "down") + + call play_sound("door") + + jump end_susan_event + + + +label susan_talk: + menu: + #"--": + "-Address me only as-": + menu: + "-Sir-": + $ sus_genie_name = "Sir" + sus "Very well, [sus_genie_name]." ("base", "base", "base", "mid") + jump susan_talk + "-Dumbledore-": + $ sus_genie_name = "Dumbledore" + sus "Okay, [sus_genie_name]." ("base", "base", "worried", "down") + jump susan_talk + "-Professor-": + $ sus_genie_name = "Professor" + sus "Of course, [sus_genie_name]." ("base", "base", "base", "R") + jump susan_talk + "-Old man-": + $ sus_genie_name = "Old man" + sus "That wouldn't be very polite, Professor." ("open", "closed", "base", "mid") + gen "Don't worry, [susan_name]. I always tell my students to call me silly names." ("base", xpos="far_left", ypos="head") + gen "It helps bonding with them!" ("grin", xpos="far_left", ypos="head") + sus "If you say so... *Ehm*, [sus_genie_name]." ("base", "base", "base", "mid") + gen "And soon I'm going to bond with your tits!" ("angry", xpos="far_left", ypos="head") + jump susan_talk + "-Genie-": + $ sus_genie_name = "Genie" + sus "I... *Ehm*--" ("upset", "base", "base", "L") + sus "Is that something people call you?" ("upset", "narrow", "worried", "mid") + gen "Yes-yes--, everybody!" ("base", xpos="far_left", ypos="head") + gen "It's perfectly normal!" ("base", xpos="far_left", ypos="head") + sus "(...)" ("upset", "base", "worried", "down") + sus "O-- Okay then... [sus_genie_name]." ("base", "base", "worried", "R") + jump susan_talk + "-Lord Voldemort-": + $ sus_genie_name = "Lord Voldemort" + sus "Why would you want me to call you that?" ("open", "closed", "worried", "mid") + sus "We aren't supposed to mention his name!" ("open", "narrow", "worried", "down") + gen "It's only a name, girl..." ("base", xpos="far_left", ypos="head") + sus "It's the name of, you-know-who!" ("upset", "closed", "worried", "mid") + sus "That name really creeps me out, Professor!" ("open", "closed", "worried", "mid") + gen "I don't want my students to be scared of a name, Susan! It's practice." ("base", xpos="far_left", ypos="head") + gen "Come on... say it." ("base", xpos="far_left", ypos="head") + sus "Okay..." ("open", "narrow", "worried", "down") + sus "V-Voldemort..." ("upset", "closed", "worried", "mid") + jump susan_talk + "-Daddy-": + $ sus_genie_name = "Daddy" + sus "Sir, no!" ("scream", "closed", "worried", "mid") + sus "I can't possibly call you that!" ("scream", "wide", "angry", "wide") + gen "But I want you to." ("base", xpos="far_left", ypos="head") + gen "There's no harm in calling me Daddy." ("grin", xpos="far_left", ypos="head") + sus "But that's!--" ("open", "narrow", "angry", "mid") + sus "(This is wrong, Susan!)" ("upset", "narrow", "worried", "down") + sus "Alright... Professor-- *Eeeeh*... D-Daddy." ("base", "closed", "worried", "mid") + jump susan_talk + "-Master-": + $ sus_genie_name = "Master" + sus "M--{w=0.2} Master?" ("upset", "narrow", "base", "mid") + sus "I don't think I should call my teachers that." ("open", "closed", "worried", "mid") + gen "No-no--, that's what you call your teachers nowadays!" ("base", xpos="far_left", ypos="head") + gen "But only call me that!" ("base", xpos="far_left", ypos="head") + sus "*Ehm*... Very well, [sus_genie_name]." ("upset", "narrow", "worried", "R") + jump susan_talk + "-Custom Input-": + $ temp_name = renpy.input("(Please enter the name.)", sus_genie_name, ALLOWED_CHARACTERS, length=14) + $ temp_name = temp_name.strip() + if temp_name == "": + jump susan_talk + else: + $ sus_genie_name = temp_name + sus "*Ehm*... Okay. I will call you [sus_genie_name]." ("upset", "narrow", "base", "L") + jump susan_talk + "-Never mind-": + jump susan_requests + + + "-From now on I will refer to you as-": + menu: + "-Miss Bones-": + $ susan_name = "Miss Bones" + sus "Of course, [sus_genie_name]." ("base", "base", "base", "mid") + jump susan_talk + "-Susan-": + $ susan_name = "Susan" + sus "Of course, [sus_genie_name]." ("base", "base", "base", "mid") + jump susan_talk + "-Girl-": + $ susan_name = "Girl" + sus "I'm okay with that, [sus_genie_name]." ("base", "base", "worried", "R") + jump susan_talk + "-Cow-": + $ susan_name = "Cow" + sus "Why would you want to call me that, [sus_genie_name]?" ("upset", "narrow", "worried", "down") + sus "The other girls already call me that and I hate it..." ("open", "base", "worried", "down") + gen "You poor thing!" ("base", xpos="far_left", ypos="head") + gen "You see, if someone like me would call you that, maybe it wouldn't affect you as much." ("base", xpos="far_left", ypos="head") + sus "I--... You might be right." ("upset", "narrow", "base", "down") + sus "You can call me a Cow, [sus_genie_name]." ("base", "base", "base", "mid") + jump susan_talk + "-Betsy-": + $ susan_name = "Betsy" + sus "But, sir... Isn't that... You know..." ("upset", "narrow", "worried", "down") + gen "You know... What?" ("base", xpos="far_left", ypos="head") + sus "Isn't that a name you'd give to a-- A cow?" ("upset", "narrow", "base", "down") + gen "Oh, is it?" ("base", xpos="far_left", ypos="head") + sus "*Ehm*... Yes, I think so at least..." ("upset", "narrow", "base", "mid") + sus "Some of the other girls shouted it at me before..." ("upset", "narrow", "base", "mid") + gen "That's a shame... I thought you'd like it..." ("base", xpos="far_left", ypos="head") + sus "Oh, Well... I suppose as long as it's not ill meaning..." ("base", "base", "base", "mid") + gen "Of course not!" ("base", xpos="far_left", ypos="head") + sus "Alright then, you can call me that if you like..." ("base", "base", "base", "mid") + jump susan_talk + "-Slut-": + $ susan_name = "Slut" + sus "[sus_genie_name]!" ("scream", "closed", "angry", "R") + sus "You can't be serious!" ("scream", "wide", "base", "wide") + gen "Why not. Nobody has to know..." ("base", xpos="far_left", ypos="head") + sus "How could you even think of me like that!" ("open", "base", "worried", "down") + sus "I'm not a... slut." ("upset", "narrow", "worried", "R") + gen "Of course not. This is just to strengthen your self-esteem." ("base", xpos="far_left", ypos="head") + gen "Trust me, I know what I'm doing." ("base", xpos="far_left", ypos="head") + gen "Being called a slut always boosts a girls confidence!" ("base", xpos="far_left", ypos="head") + sus "R-- Really?" ("open", "base", "base", "mid") + gen "Yes. Now... shall we try it?" ("base", xpos="far_left", ypos="head") + sus "... alright, [sus_genie_name]..." ("upset", "narrow", "worried", "R") + jump susan_talk + "-Custom Input-": + $ temp_name = renpy.input("(Please enter the name.)", susan_name, ALLOWED_CHARACTERS, length=14) + $ temp_name = temp_name.strip() + if temp_name == "": + jump susan_talk + else: + $ susan_name = temp_name + sus "I don't like it, but--" ("open", "closed", "worried", "mid") + sus "Promise you'll only call me that when we are alone." ("upset", "base", "worried", "mid") + gen "Promised!" ("grin", xpos="far_left", ypos="head") + jump susan_talk + "-Never mind-": + jump susan_talk + + + "-Never mind-": + jump susan_requests diff --git a/game/scripts/characters/susan/vars.rpy b/game/scripts/characters/susan/vars.rpy new file mode 100644 index 00000000..894f1ba7 --- /dev/null +++ b/game/scripts/characters/susan/vars.rpy @@ -0,0 +1,18 @@ + +# Stats +default sus_tier = 1 +default sus_whoring = 0 +default sus_mood = 0 + +# Flags +default susan_busy = False +default susan_unlocked = False +default susan_wardrobe_unlocked = False +default susan_chatted = False +default susan_outfits_schedule = True +default gave_susan_gift = False + +# Names +default susan_name = "Miss Bones" +default sus_genie_name = "Sir" + diff --git a/game/scripts/characters/susan/wardrobe.rpy b/game/scripts/characters/susan/wardrobe.rpy new file mode 100644 index 00000000..67d833fa --- /dev/null +++ b/game/scripts/characters/susan/wardrobe.rpy @@ -0,0 +1,127 @@ +############### +## Character ## +############### + +default susan = Doll(name="susan", + clothes={"headgear": [None, 15, True], + "hair": [None, 4, True], + "glasses": [None, 12, True], + "earrings": [None, 14, True], + "neckwear": [None, 11, True], + "robe": [None, 28, True], + "gloves": [None, 21, True], + "top": [None, 15, True], + "bra": [None, 9, True], + "bottom": [None, 8, True], + "garterbelt": [None, 7, True], + "panties": [None, 6, True], + "stockings": [None, 5, True], + "buttplug": [None, -1, True], + "pubes": [None, 3, True], + "tattoo0": [None, 1, True], + "tattoo1": [None, 1, True], + "tattoo2": [None, 1, True], + "tattoo3": [None, 1, True], + "tattoo4": [None, 1, True], + "piercing0": [None, 2, True], + "piercing1": [None, 2, True], + "piercing2": [None, 2, True], + "piercing3": [None, 2, True], + "piercing4": [None, 2, True], + "accessory0": [None, 12, True], + "accessory1": [None, 12, True], + "accessory2": [None, 12, True], + "accessory3": [None, 12, True], + "accessory4": [None, 12, True], + "makeup0": [None, 3, True], + "makeup1": [None, 3, True], + "makeup2": [None, 3, True], + "makeup3": [None, 3, True], + "makeup4": [None, 3, True]}, + face={"tears": [None, 12, True], + "cheeks": [None, 7, True], + "eyebrows": ["base", 11, True], + "eyes": ["base", 8, True], + "pupils": ["mid", 9, True], + "mouth": ["base", 13, True]}, + body={"armleft": ["behind", -1], + "armright":["behind", -1], + "base": ["front", 0], + "breasts": ["normal", 2]}) + +########################### +## Schoolgirl Outfit OLD ## +########################### + +default sus_hair_base = DollCloth("susan", ("head", "hair"), "hair", "base", [[213, 90, 42, 255]], unlocked=True) + +default sus_top_school1 = DollCloth("susan", ("upper body", "shirts"), "top", "school_top_1", [[0, 0, 0, 0]], unlocked=True) +default sus_top_school2 = DollCloth("susan", ("upper body", "shirts"), "top", "school_top_2", [[0, 0, 0, 0]], unlocked=True) +default sus_top_school3 = DollCloth("susan", ("upper body", "shirts"), "top", "school_top_3", [[0, 0, 0, 0]], unlocked=True) +default sus_top_school4 = DollCloth("susan", ("upper body", "shirts"), "top", "school_top_4", [[0, 0, 0, 0]], unlocked=True) +default sus_top_school5 = DollCloth("susan", ("upper body", "shirts"), "top", "school_top_5", [[0, 0, 0, 0]], unlocked=True) +default sus_top_ball = DollCloth("susan", ("upper body", "dresses"), "top", "ball", [[0, 0, 0, 0]], blacklist=["bottom"], unlocked=True) +default sus_top_heart = DollCloth("susan", ("upper body", "dresses"), "top", "heart", [[0, 0, 0, 0]], blacklist=["bottom", "bra", "neckwear"], unlocked=True) +default sus_top_sling1 = DollCloth("susan", ("upper body", "one-piece suits"), "top", "sling", [[0, 0, 0, 0]], unlocked=True) +default sus_top_sling2 = DollCloth("susan", ("upper body", "one-piece suits"), "top", "sling2", [[0, 0, 0, 0]], unlocked=True) + +default sus_bottom_school1 = DollCloth("susan", ("lower body", "skirts"), "bottom", "school_skirt_1", [[103, 90, 108, 255], [232, 177, 13, 255]], unlocked=True) + +default sus_stockings_base1 = DollCloth("susan", ("legwear", "stockings"), "stockings", "base", [[0, 0, 0, 0]], unlocked=True) +default sus_stockings_lace1 = DollCloth("susan", ("legwear", "stockings"), "stockings", "lace", [[0, 0, 0, 0]], unlocked=True) +default sus_stockings_lace2 = DollCloth("susan", ("legwear", "stockings"), "stockings", "lace2", [[0, 0, 0, 0]], unlocked=True) + +default sus_bra_chain = DollCloth("susan", ("upper undergarment", "bras"), "bra", "chain", [[0, 0, 0, 0]], unlocked=True) +default sus_bra_lace = DollCloth("susan", ("upper undergarment", "bras"), "bra", "lace", [[0, 0, 0, 0]], unlocked=True) + +default sus_neckwear_choker = DollCloth("susan", ("head", "neckwear"), "neckwear", "choker", [[0, 0, 0, 0]], unlocked=True) + + +####################### +## Schoolgirl Outfit ## +####################### + +#TBA +#tops +#bottoms +default sus_bra_base1 = DollCloth("susan", ("upper undergarment", "bras"), "bra", "basic_bra_1", [[255, 238, 237, 255], [236, 191, 191, 255], [249, 135, 135, 255]], unlocked=True) +default sus_panties_base1 = DollCloth("susan", ("lower undergarment", "panties"), "panties", "basic_panties_1", [[255, 238, 237, 255], [236, 191, 191, 255], [249, 135, 135, 255]], unlocked=True) +#Robes + +#Adjust when new school pieces are added +default sus_outfit_default = DollOutfit([sus_hair_base, sus_top_school1, sus_bottom_school1, sus_bra_base1, sus_panties_base1, sus_stockings_base1], unlocked=True) +default sus_outfit_last = DollOutfit([sus_hair_base], hidden=True) + + +########################## +## Muggle Casual Outfit ## +########################## + +default sus_top_muggle_casual1 = DollCloth("susan", ("upper body", "sweaters"), "top", "muggle_casual_top_1", [[157, 105, 68, 255]]) +default sus_bottom_jeans1 = DollCloth("susan", ("lower body", "trousers"), "bottom", "jeans_1", [[78, 65, 127, 255]]) +default sus_bra_muggle1 = DollCloth("susan", ("upper undergarment", "bras"), "bra", "muggle_bra_1", [[225, 201, 161, 255], [255, 251, 219, 255]]) +default sus_panties_muggle1 = DollCloth("susan", ("lower undergarment", "panties"), "panties", "muggle_panties_1", [[225, 201, 161, 255], [255, 251, 219, 255]]) + +default sus_outfit_muggle_casual1 = DollOutfit([sus_hair_base, sus_top_muggle_casual1, sus_bottom_jeans1, sus_bra_muggle1, sus_panties_muggle1], unlocked=True) + + +############### +## Underwear ## +############### + + +# Lingerie + +default sus_bra_lace1 = DollCloth("susan", ("upper undergarment", "bras"), "bra", "lace_bra_1", [[246, 243, 216, 255], [206, 123, 231, 100]]) +default sus_panties_lace1 = DollCloth("susan", ("lower undergarment", "panties"), "panties", "lace_panties_1", [[246, 243, 216, 255], [206, 123, 231, 100], [163, 180, 216, 255]]) +default sus_stockings_striped_1 = DollCloth("susan", ("legwear", "stockings"), "stockings", "striped_stockings_1", [[246, 243, 216, 255], [206, 123, 231, 170]]) +default sus_garterbelt_1 = DollCloth("susan", ("legwear", "garterbelts"), "garterbelt", "garter_belt_1", [[206, 131, 231, 255]]) + +default sus_outfit_lace1 = DollOutfit([sus_hair_base, sus_bra_lace1, sus_panties_lace1, sus_stockings_striped_1, sus_garterbelt_1], price=250, name="Lace Lingerie", desc="Perfect for making a girl look even more presentable.") + +# Sport +default sus_bra_sport1 = DollCloth("susan", ("upper undergarment", "bras"), "bra", "sport_bra_1", [[107, 107, 139, 255], [219, 205, 79, 255]], unlocked=True) +default sus_panties_sport1 = DollCloth("susan", ("lower undergarment", "panties"), "panties", "sport_panties_1", [[107, 107, 139, 255], [219, 205, 79, 255]], unlocked=True) + + + diff --git a/game/scripts/characters/susan/wardrobe_reactions.rpy b/game/scripts/characters/susan/wardrobe_reactions.rpy new file mode 100644 index 00000000..57cea497 --- /dev/null +++ b/game/scripts/characters/susan/wardrobe_reactions.rpy @@ -0,0 +1,232 @@ +define sus_requirements = { + "category upper undergarment": 5, + "category lower undergarment": 5, + "category piercings & tattoos": 16, + "touch head": 4, + "touch breasts": 12, + "touch vagina": 18, + "unequip panties": 6, + "unequip bra": 6, + "unequip top": 3, + "unequip bottom": 3, + } + +define sus_responses = { + "category_fail": "sus_reaction_category_fail", + "equip": "sus_reaction_equip", + "equip_fail": "sus_reaction_equip_fail", + "unequip": "sus_reaction_unequip", + "unequip_fail": "sus_reaction_unequip_fail", + "touch": "sus_reaction_touch", + "touch_fail": "sus_reaction_touch_fail", + "equip_outfit": "sus_reaction_equip_outfit", + "equip_outfit_fail": "sus_reaction_equip_outfit_fail", + "blacklist": "sus_reaction_blacklist", + "fallback": "sus_reaction_fallback", +} + +label sus_reaction_category_fail(category): + + if category == "upper undergarment": + sus "M--{w=0.2} my underwear? W-- {w=0.2}Why do you require me to--{w=0.2} *Ehm*..." ("open", "eager", "worried", "R") + elif category == "lower undergarment": + sus "M--{w=0.2} my underwear? W--{w=0.2} Why do you require me to--{w=0.2} *Ehm*..." ("upset", "closed", "worried", "mid") + elif category == "piercings & tattoos": + sus "W--{w=0.2} What would people... Sir, I don't want to be made f--{w=0.2} fun of..." ("upset", "wide", "worried", "mid") + return + +label sus_reaction_touch(what): + if what == "head": + $ mouse_headpat() + else: + $ mouse_heart() + + if what == "head": + $ mouse_headpat() + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + sus "S--{w=0.2} Sir..." ("base", "eager", "base", "up") + elif random_number == 2: + sus "A--{w=0.2} Are you s-sure this is appropriate?" ("grin", "narrow", "base", "down") + elif random_number == 3: + sus "Professor, p--{w=0.2} please..." ("base", "closed", "base", "mid") + + elif what == "breasts": + $ mouse_heart() + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + sus "W--{w=0.2} Why are you..." ("upset", "happyCl", "base", "mid") + elif random_number == 2: + sus "P--{w=0.2} please, it's embarrassing..." ("scream", "closed", "worried", "mid") + elif random_number == 3: + sus "D--{w=0.2} don't... Don't look at me sir..." ("base", "closed", "worried", "mid") + elif what == "vagina": + $ mouse_heart() + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + sus "M--{w=0.2} My..." ("open", "wide", "worried", "down") + elif random_number == 2: + sus "S--{w=0.2} Sir..." ("upset", "happyCl", "base", "mid") + elif random_number == 3: + sus "P--{w=0.2} please sir, it's embarrassing..." ("base", "closed", "worried", "mid") + + return + +label sus_reaction_touch_fail(what): + if what == "head": + $ mouse_slap() + + sus "*Eeek!*" ("scream", "wide", "base", "wide") + sus "I'm sorry sir, you scared me..." ("open", "eager", "worried", "mid") + gen "(Poor thing isn't used to human touch...)" ("base", xpos="far_left", ypos="head") + + elif what == "breasts": + $ mouse_slap() + + sus "Please don't bully me sir..." ("open", "happyCl", "worried", "mid") + + elif what == "vagina": + $ mouse_slap() + + sus "No! Please don't make me do this in front of everyone again..." ("scream", "happyCl", "base", "mid") + gen "Do what?" ("base", xpos="far_left", ypos="head") + sus "N--{w=0.2} nothing, sir, forgive me." ("open", "narrow", "base", "wide") + gen "(...)" ("base", xpos="far_left", ypos="head") + + return + +label sus_reaction_equip(item): + ########################## + ## Muggle Casual Outfit ## + ########################## + if item == sus_outfit_muggle_casual1: + gen "Could you put on your normal clothing for me." ("base", xpos="far_left", ypos="head") + sus "What do you... *Ehm*... Which clothing, sir?" ("open", "narrow", "worried", "mid") + gen "The boring sweater one, and the jeans." ("base", xpos="far_left", ypos="head") + sus "My muggle clothing?" ("base", "eager", "worried", "mid") + gen "Sure!" ("base", xpos="far_left", ypos="head") + sus "Okay then." ("base", "eager", "base", "mid") + + ######################## + ## Lingerie Outfit 1 ## + ######################## + elif item == sus_outfit_lace1: + gen "Could you put on these lingerie for me please?" ("base", xpos="far_left", ypos="head") + sus "Okay... One moment sir." ("base", "eager", "base", "mid") + + # TODO: Blacklist fallbacks have to be added. + return + +label sus_reaction_equip_fail(item): + ######################## + ## Lingerie Outfit 1 ## + ######################## + if item == sus_outfit_lace1: + gen "Could you put on these lingerie for me please?" ("base", xpos="far_left", ypos="head") + sus "L--{w=0.2} Lingerie!?" ("open", "narrow", "worried", "mid") + gen "Yep." ("base", xpos="far_left", ypos="head") + sus "I--{w=0.2} I--{w=0.2} Why would you ask me to--" ("open", "narrow", "worried", "mid") + gen "...{w=0.4} Maybe some other time then." ("base", xpos="far_left", ypos="head") + else: + sus "I--{w=0.2} I..." ("open", "narrow", "worried", "mid") + gen "You don't like it?" ("base", xpos="far_left", ypos="head") + sus "It's not like t-that, I just..." ("open", "happyCl", "base", "mid") + gen "Not comfortable wearing it?" ("base", xpos="far_left", ypos="head") + sus "*Uh-huh*" ("base", "eager", "worried", "mid") + gen "Okay, maybe later then." ("base", xpos="far_left", ypos="head") + + return + +label sus_reaction_unequip(item): + ### Example + # if item.type == "panties": + # if sus_whoring > 15: + # sus "You want to see my snatch?" + # sus "You got it [genie_name]!" + # + return + +label sus_reaction_unequip_fail(item): + if item.type == "panties": + sus "I'm N--{w=0.2} not comfortable with that, sir..." ("open", "happyCl", "base", "mid") + + elif item.type == "bra": + sus "P--{w=0.2} please, I can't be W--{w=0.2} wearing this sir.." ("open", "closed", "worried", "mid") + + elif item.type == "top": + sus "I don't know if this is a good idea..." ("open", "narrow", "worried", "mid") + gen "You have nothing to be ashamed of." ("base", xpos="far_left", ypos="head") + sus "S--{w=0.2} Sorry, I can't..." ("open", "closed", "worried", "mid") + + elif item.type == "bottom": + sus "I can't..." ("open", "happyCl", "base", "mid") + gen "It's okay, we'll work on your confidence first." ("base", xpos="far_left", ypos="head") + sus "Thank you..." ("base", "eager", "worried", "mid") + return + +label sus_reaction_equip_outfit(item): + ### Add specific Outfit reactions here. + # if item == : + # sus "This looks awesome! I'll wear this with pride!" + + # TODO: Blacklist fallbacks have to be added. + return + +label sus_reaction_equip_outfit_fail(item): + ### Add specific Outfit reactions here. + # if item == : + # sus "I won't wear because!" + # else: + # + + sus "Oh wow... It's... *Ehm*..." ("open", "narrow", "worried", "mid") + gen "You like it? How about you wear it?" ("base", xpos="far_left", ypos="head") + sus "I couldn't, I..." ("open", "happyCl", "base", "mid") + gen "(Perhaps I'm being a little too forward for something that.)" ("base", xpos="far_left", ypos="head") + + return + +label sus_reaction_blacklist(item): + sus "B--{w=0.2} but..." ("base", "base", "base", "mid") + gen "But what?" ("base", xpos="far_left", ypos="head") + + if "top" in item.blacklist and susan.is_worn("top"): + sus "I would feel cold without my top..." ("open", "happyCl", "base", "mid") + + if "bottom" in item.blacklist and susan.is_worn("bottom"): + sus "I c--{w=0.2} can't take off my skirt." ("open", "narrow", "worried", "mid") + gen "Can't or won't?" ("base", xpos="far_left", ypos="head") + sus "Won't..." ("open", "happyCl", "base", "mid") + + if "bra" in item.blacklist and susan.is_worn("bra"): + gen "Let me guess, you aren't comfortable without a bra?" ("base", xpos="far_left", ypos="head") + sus "*uh-huh*" ("base", "eager", "worried", "mid") + + if "panties" in item.blacklist and susan.is_worn("panties"): + sus "The panties are e-essential for me..." ("open", "happyCl", "base", "mid") + + gen "How about just giving it a try?" ("base", xpos="far_left", ypos="head") + gen "If you don't like it you can always change back, that okay?" ("base", xpos="far_left", ypos="head") + sus "Alright..." ("base", "eager", "worried", "mid") + + return + +label sus_reaction_fallback(item): + if sus_whoring < get_character_requirement("susan", "unequip top") and not "top" in susan.blacklist and not item.type == "top": + $ susan.equip(sus_top_school1) + + if sus_whoring < get_character_requirement("susan", "unequip bottom") and not "bottom" in susan.blacklist and not item.type == "bottom": + $ susan.equip(sus_bottom_school1) + + if sus_whoring < get_character_requirement("susan", "unequip bra") and not "bra" in susan.blacklist and not item.type == "bra": + $ susan.equip(sus_bra_base1) + + if sus_whoring < get_character_requirement("susan", "unequip panties") and not "panties" in susan.blacklist and not item.type == "panties": + $ susan.equip(sus_panties_base1) + + sus "Just give me a second, I need to get my clothes back in order." ("open", "base", "base", "R") + sus "" ("base", "base", "base", "mid") + return diff --git a/game/scripts/characters/tonks/chibi.rpy b/game/scripts/characters/tonks/chibi.rpy new file mode 100644 index 00000000..45cf2ed1 --- /dev/null +++ b/game/scripts/characters/tonks/chibi.rpy @@ -0,0 +1,181 @@ +label ton_chibi(action=None, xpos=None, ypos=None, flip=False): + $ tonks_chibi.position(xpos, ypos, flip) + + if action == "hide": + $ tonks_chibi.hide() + return + elif action == "leave": + hide tonks_main + hide screen bld1 + hide screen blktone + call play_sound("door") + $ tonks_chibi.hide() + with d3 + pause .5 + return + elif action == "reset": + $ tonks_chibi.do(None) + return + + $ tonks_chibi.do(action) + + return + +label ton_walk(xpos=None, ypos=None, speed=1.0, action=None, reduce=False, path=None, flip=False): + call hide_characters + hide screen bld1 + hide screen blktone + with d3 + + if action == "enter": + call play_sound("door") + call ton_chibi(None, "door", "base", flip) + with d3 + if xpos or ypos: + $ tonks_chibi.move((xpos, ypos), speed, reduce) + elif action == "leave": + $ tonks_chibi.show() + $ tonks_chibi.move(("door", "base"), speed, reduce) + call play_sound("door") + $ tonks_chibi.hide() + with d3 + pause .5 + elif path: + $ tonks_chibi.show() + $ tonks_chibi.move(path, speed, reduce) + else: + $ tonks_chibi.show() + $ tonks_chibi.move((xpos, ypos), speed, reduce) + + return + +# Screens +screen ton_cloth_pile(position=(440, 425)): # Default position: Right of desk, below feet. + tag ton_cloth_pile + zorder tonks_chibi.zorder + add "characters/chibis/cloth_pile_r.webp" pos position zoom 0.5 + +label ton_sit(xpos=nxpos, ypos=nypos, flip=None, chair=True): # TODO: replace this with the regular chibi call and add a sitting pose/action -- call ton_chibi("sit", chair=False) + + # call ton_sit(chair=False, xpos=0, ypos=0) + # Quidditch stands position: xpos=-140, ypos=125 + + python: + + xpos = nxpos + ypos = nypos + + if flip != None: + tonks.xzoom = -1 if flip else 1 + + show screen tonks_sit_ani(nxpos, nypos, chair) + + return + +screen tonks_sit_ani(xpos=nxpos, ypos=nypos, chair=True): # TODO: use Tonks' regular chibi position for this -- tonks_chibi.pos + tag ton_chibi + zorder tonks_chibi.zorder + + if chair == True: + add "ch_ton sit_chair" xpos nxpos ypos nypos xzoom tonks.xzoom + + add "ch_ton sit" xpos nxpos ypos nypos xzoom tonks.xzoom + + if tonks.is_worn("bottom"): + add "ch_ton sit_trousers" xpos nxpos ypos nypos xzoom tonks.xzoom + if tonks.is_any_worn("bottom", "stockings"): + add "ch_ton sit_shoes" xpos nxpos ypos nypos xzoom tonks.xzoom + if tonks.is_worn("top"): + add "ch_ton sit_top" xpos nxpos ypos nypos xzoom tonks.xzoom + +screen with_tonks_animated(): + tag ton_chibi + zorder tonks_chibi.zorder + + if game.daytime: + add "ch_gen toast_goblet_daytime" xpos 435 ypos 200 + else: + add "ch_gen toast_goblet" xpos 435 ypos 200 + + add "ch_ton sit_chair" xpos 610 ypos 175 + add "ch_ton sit" xpos 610 ypos 175 + + if tonks.is_worn("bottom"): + add "ch_ton sit_trousers" xpos 610 ypos 175 + if tonks.is_any_worn("bottom", "stockings"): + add "ch_ton sit_shoes" xpos 610 ypos 175 + if tonks.is_worn("top"): + add "ch_ton sit_top" xpos 610 ypos 175 + if tonks.is_worn("neckwear"): + add "ch_ton sit_choker" xpos 610 ypos 175 + + +# Chibi definition +default tonks_chibi = Chibi("tonks", ["fix", "base", "bottom", "shoes", "top", "robe", "gloves", "neck"], update_tonks_chibi) + +init python: + def update_tonks_chibi(chibi): + # Assume chibi action has a matching image definition + chibi_image = "ch_ton {}".format(chibi.action or "stand") + chibi["base"] = chibi_image + + # Determine clothing state + + if tonks.is_worn("top"): + chibi["top"] = "nt_top.webp" + + if tonks.is_worn("bottom"): + if chibi.action == "walk": + chibi["bottom"] = "ch_ton walk trousers" + else: + chibi["bottom"] = "nt_trousers.webp" + + if tonks.is_worn("gloves"): + chibi["gloves"] = "nt_gloves.webp" + + if tonks.is_worn("robe"): + chibi["robe"] = "nt_robe.webp" + + if tonks.is_worn("bottom") or tonks.is_worn("stockings"): + if chibi.action == "walk": + chibi["shoes"] = "ch_ton walk shoes" + else: + chibi["shoes"] = "nt_shoes.webp" + + if tonks.is_worn("neckwear"): + chibi["neck"] = "nt_choker.webp" + +# Sets up a chibi scene with Tonks and Genie in it +label ton_chibi_scene(action="reset", xpos="mid", ypos="base", trans=None): + if trans != None: + call hide_characters + + if trans: # Not sure if this part is needed, depends on context? + hide screen bld1 + hide screen blkfade + + call ton_chibi("hide") + call gen_chibi("hide") + + $ menu_y = 0.75 + + if action == "reset": + $ menu_y = 0.5 + call ton_chibi("stand", xpos, ypos) + call gen_chibi("sit_behind_desk") + + # Blowjob + elif action in ('bj_desk', 'bj_desk_shocked'): + show screen tonks_chibi_desk(action) + + if trans: + with trans + + return + +screen tonks_chibi_desk(action): + tag tonks_chibi_scene + zorder desk_zorder + + # Works with any image that matches the desk area + add "ch_ton [action]" xpos 370 ypos 336 xanchor 0.5 yanchor 0.5 diff --git a/game/scripts/characters/tonks/chitchats.rpy b/game/scripts/characters/tonks/chitchats.rpy new file mode 100644 index 00000000..1fb561c2 --- /dev/null +++ b/game/scripts/characters/tonks/chitchats.rpy @@ -0,0 +1,176 @@ + +label tonks_chitchat: + + if tonks_chatted: + return + + label .reroll: + + $ tonks_chatted = True + + # Note: Tonks doesn't use tiers yet. + + # if ton_tier == 1: + # # $ random_number = renpy.random.randint(MIN, MAX) + + # pass + # elif ton_tier == 2: + # # $ random_number = renpy.random.randint(MIN, MAX) + + # pass + # elif ton_tier == 3: + # # $ random_number = renpy.random.randint(MIN, MAX) + + # pass + # elif ton_tier == 4: + # $ random_number = renpy.random.randint(1, 11) + + $ random_number = renpy.random.randint(1, 11) + + # Chitchats #TODO 3, 10 should check if you've done some amount of public favours + if random_number == 1: + ton "Teaching has been so much fun!" ("grin", "base", "raised", "mid") + ton "It's so much better than working at the Ministry." ("open", "closed", "annoyed", "mid") + ton "I can't believe how much time I spent in that shit-hole..." ("base", "base", "angry", "R") + + elif random_number == 2: + ton "I spotted another cute girl in my class today..." ("soft", "base", "base", "R") + ton "I hope she's into points as much as the rest." ("horny", "narrow", "raised", "mid") + + elif random_number == 3: + ton "Don't tell professor McGonagall, but I once used her appearance to search one of the student's underwear drawer..." ("grin", "closed", "worried", "mid") + ton "They didn't suspect a thing." ("soft", "wink", "base", "mid") + + elif random_number == 4: + ton "Being a teacher sure has its perks. If I was caught with firewhisky as a student I would've gotten expelled." ("soft", "closed", "annoyed", "mid") + ton "Now I can have as much as I like, even share some every once in a while." ("grin", "wink", "base", "mid") + + elif random_number == 5: + ton "I sometimes wonder if I should have gone into the medicine field..." ("open", "narrow", "base", "R") + ton "I could've had Madam Pomfrey's job by now..." ("normal", "base", "base", "mid") + ton "Maybe I could ask her if she needs any assistance on my off hours." ("soft", "base", "base", "R") + + elif random_number == 6: + ton "I feel like I have a lot more in common with the students than the other teachers..." ("open", "base", "base", "R") + ton "They're all so old..." ("normal", "base", "base", "up") + ton "Madam Hooch is cool though, she, and I roll the same way... in more ways than one." ("soft", "base", "base", "mid") + + elif random_number == 7: + ton "I had to keep one of the students after class for special tutoring." ("open", "base", "base", "R") + ton "As a defence against the dark arts teacher it is my job to protect them against both outside threats and inner demons..." ("open", "base", "base", "L") + ton "She has a lot to learn but it's getting there." ("horny", "base", "raised", "L") + + elif random_number == 8: + ton "Snape doesn't seem to like me much..." ("base", "base", "base", "R") + ton "First I thought it was because I stole a girding potion in my youth..." ("open", "base", "base", "L") + ton "But it seems to be more because he wants my job..." ("open", "base", "raised", "mid") + ton "The sunlight could probably do him some good." ("base", "base", "angry", "mid") + + elif random_number == 9: + ton "When I first saw Snape I thought he must be a vampire..." ("open", "base", "base", "mid") + ton "Turns out he's just a normal dude with pale skin..." ("open", "base", "base", "R") + ton "If he were a vampire I would have been all over him..." ("horny", "base", "raised", "R") + + elif random_number == 10: + ton "Good students get a little star from me in the corner on each test." ("open", "base", "base", "mid") + ton "That doesn't necessarily mean good grades though..." ("base", "base", "base", "mid") + + elif random_number == 11: + ton "We had an accident involving pixies in class today. I can't believe they haven't been taken out of the curriculum." ("open", "base", "base", "R") + ton "One of the students had her clothes completely destroyed..." ("open", "base", "base", "mid") + ton "Actually, maybe the pixies aren't that bad..." ("base", "base", "base", "down") + + elif random_number == 12: + ton "I'm not going to throw any of the other teachers under the broom about their teaching methods, but..." ("open", "base", "base", "down") + ton "I try to not take away points for simple mistakes, I was pretty clumsy myself..." ("soft", "base", "shocked", "downR") + ton "I like to reward my students rather than punishing them..." ("base", "narrow", "shocked", "mid") + + elif random_number == 13: + ton "There's a secret passage to Honeydukes right outside my classroom..." ("soft", "base", "base", "mid") + ton "Having free access to the sweetshop has been a real benefit to reward my students." ("base", "base", "base", "R") + + elif random_number == 14: + ton "I hope I'll have enough time to have a positive influence on this school and the students..." ("open", "base", "base", "L") + ton "If I can't make a mark in the school I should at least be able to make one on the students." ("horny", "narrow", "base", "mid") + + elif random_number == 15: + ton "Becoming an auror is extremely difficult and the job is almost entirely dominated by men..." ("upset", "narrow", "worried", "R") + ton "I think I made the right choice of becoming a teacher." ("open", "closed", "shocked", "mid") + + elif random_number == 16: + ton "My mother was a pure-blood but was burned off the Black family tree after marrying a muggle-born..." ("open", "base", "base", "down") + ton "Some people won't understand but I think you should be allowed to love whoever you want..." ("open", "base", "base", "mid") + + elif random_number == 17: + ton "Don't tell anyone but I must have spent a fortune on Tolipan Blemish Blitzer in my time studying at Hogwarts..." ("open", "narrow", "base", "downR") + ton "My parents thought I was just being clumsy and needed replacement materials but most of the money they sent me was spent on beauty and hair products..." ("annoyed", "base", "base", "R") + + elif random_number == 18: + ton "I only really chased after boys during school because all the other girls did..." ("open", "base", "raised", "down") + ton "Secretly I just wanted them to chase after me instead..." ("normal", "base", "base", "L") + + elif random_number == 19: + ton "I learned a lot being tutored by Alastor Moody..." ("soft", "base", "base", "mid") + ton "Never thought I'd end up being a teacher myself..." ("open", "base", "raised", "down") + ton "Though my methods are slightly different to his..." ("soft", "base", "base", "downR") + + elif random_number == 20: + ton "I don't like when people call me Nymphadora... It's Tonks!" ("annoyed", "base", "annoyed", "mid") + ton "Last time someone called me that, I used an engorgement charm on them." ("open", "base", "angry", "R") + ton "Don't ask me what I aimed at..." ("crooked_smile", "base", "base", "up") + + elif random_number == 21: + ton "My favourite creature has to be the were-wolf..." ("open", "closed", "base", "mid") + ton "their beast-like nature excites me..." ("soft", "narrow", "base", "mid") + ton "In another lifetime maybe..." ("base", "base", "raised", "down") + + elif random_number == 22: + ton "The students laughed when I accidentally tripped during my last lesson..." ("open", "base", "base", "R") + ton "Little did they know I got a good view whilst on the ground..." ("horny", "narrow", "raised", "stare") + + elif random_number == 23: + ton "One of the girls had their boggart turn into a student pointing and laughing at her..." ("open", "base", "base", "R") + ton "I'm going to teach her to not be ashamed of her body." ("soft", "narrow", "base", "mid") + + elif random_number == 24: + ton "Today I taught the students about the {i}Tanglepest{/i}..." ("open", "base", "base", "mid") + ton "A foul creature that is drawn to footwear..." ("open", "base", "base", "R") + ton "It doesn't actually exist, I just wanted an excuse to have the students show me their feet." ("horny", "base", "base", "mid") + + elif 25 <= random_number <= 31 and tonks_morph_known: + # Note: dictionary would work better for this use case. + $ random_number = renpy.random.randint(1, 6) + + if random_number == 1: + ton "Since Metamorphmagi can change their skin, I sometimes just don't bother wearing any clothes." ("soft", "base", "shocked", "mid") + ton "I once changed the colour of my skin and made it look like a tight shirt..." ("grin", "narrow", "base", "R") + ton "I might have worked topless once or twice..." ("horny", "base", "raised", "mid") + elif random_number == 2: + ton "I often got detentions by morphing into prefects..." ("normal", "base", "base", "R") + ton "It was worth it though as I had free range to the prefects' bathroom..." ("base", "wide", "base", "mid") + elif random_number == 3: + ton "Most of my abilities are based around emotions..." ("open", "base", "base", "mid") + ton "My hair can go red when I'm upset or angry..." ("upset", "base", "base", "mid") + ton "Don't tell anyone but my natural hair colour is actually more brown..." ("open", "base", "base", "R") + ton "People think it's pink but that's because I'm horny all the time." ("base", "base", "base", "down") + elif random_number == 4: + ton "There are rumours that Snape has set up an Age Line to keep students away from his private stash..." ("normal", "narrow", "base", "R") + ton "Won't stop me borrowing some polyjuice potions though... Not that I need them..." ("open", "base", "base", "R") + ton "But maybe I can find a girl that doesn't mind drinking it and have some fun." ("horny", "base", "raised", "R") + elif random_number == 5: + ton "I'm a metamorphmagus. I can change my appearance at will..." ("open", "base", "base", "mid") + ton "Makes spying on the other teachers and students a lot easier..." ("grin", "base", "raised", "mid") + elif random_number == 6: + ton "I can change the shape and length of my tongue any way I want." ("open", "base", "base", "mid") + ton "Imagine the possibilities..." ("open_wide_tongue2", "narrow", "base", "mid") + + elif random_number == 32 and susan_unlocked: + ton "Susan is such a lovely girl..." ("open", "base", "base", "mid") + ton "But she really isn't very confident in her body..." ("open", "base", "raised", "R") + ton "I do hope your little games can help her open up a bit..." ("base", "base", "base", "mid") + else: + # Either tonks_morph_known or susan_unlocked flags weren't True, let's re-roll the dialogue. + # This workaround wouldn't be necessary if we've used a dictionary. + jump .reroll + + return diff --git a/game/scripts/characters/tonks/clothing_upgrades_NOT_IN_USE.txt b/game/scripts/characters/tonks/clothing_upgrades_NOT_IN_USE.txt new file mode 100644 index 00000000..07f3e80e --- /dev/null +++ b/game/scripts/characters/tonks/clothing_upgrades_NOT_IN_USE.txt @@ -0,0 +1,273 @@ +label clothing_upgrades: + + call upgrades + + if _return is False: + jump tonks_talk + + gen "[tonks_name]..." ("base", xpos="far_left", ypos="head") + gen "Do you think you could change this outfit?" ("base", xpos="far_left", ypos="head") + gen "You know..." ("base", xpos="far_left", ypos="head") + gen "Make it sluttier!" ("grin", xpos="far_left", ypos="head") + ton "Let me see..." ("base", "base", "base", "down") + + show screen blkfade + with d3 + + ton "Oh I really like this one." ("open", "base", "raised", "down") + call play_sound("cloth_upgrade") + ton "I could make some adjustments here..." ("base", "base", "raised", "down") + ton "Maybe make this a bit shorter and..." ("horny", "base", "base", "down") + call play_sound("giggle") + + hide screen blkfade + with d3 + + ton "There you go, [ton_genie_name], all done." ("base", "base", "base", "mid") + + gen "Nice!" ("grin", xpos="far_left", ypos="head") + gen "Thanks a ton!" ("base", xpos="far_left", ypos="head") + ton "Don't mention it, [ton_genie_name]." ("base", "base", "base", "mid") + jump tonks_talk + + return + +init python: + def upgrades_sortfilter(item, sortby=False): + return item + +default upgrades_show_locked = False +default upgrades_show_complete = True +default item_bought = False # TEMP var - Used as a return value out of context. + +default her_upgrade_school2 = DollOutfit([her_hair_base, her_top_school2, her_bottom_school2, her_panties_base1, her_bra_base1, her_stockings_base1], hidden=True) +default her_upgrade_school3 = DollOutfit([her_hair_base, her_top_school3, her_bottom_school3, her_panties_base1, her_bra_base1, her_stockings_base1], hidden=True) +default her_upgrade_school4 = DollOutfit([her_hair_base, her_top_school4, her_bottom_school4, her_panties_base1, her_bra_base1, her_stockings_base1], hidden=True) + +### + +default her2_upgrade_school2 = DollOutfit([her_hair_base, her_top_school2, her_bottom_school2, her_panties_base1, her_bra_base1, her_stockings_base1], hidden=True) +default her2_upgrade_school3 = DollOutfit([her_hair_base, her_top_school3, her_bottom_school3, her_panties_base1, her_bra_base1, her_stockings_base1], hidden=True) +default her2_upgrade_school4 = DollOutfit([her_hair_base, her_top_school4, her_bottom_school4, her_panties_base1, her_bra_base1, her_stockings_base1], hidden=True) + +### + +default her3_upgrade_school2 = DollOutfit([her_hair_base, her_top_school2, her_bottom_school2, her_panties_base1, her_bra_base1, her_stockings_base1], hidden=True) +default her3_upgrade_school3 = DollOutfit([her_hair_base, her_top_school3, her_bottom_school3, her_panties_base1, her_bra_base1, her_stockings_base1], hidden=True) +default her3_upgrade_school4 = DollOutfit([her_hair_base, her_top_school4, her_bottom_school4, her_panties_base1, her_bra_base1, her_stockings_base1], hidden=True) + +label upgrades: + python: + her_upgrade_school2.price = 50 + her_upgrade_school3.price = 75 + her_upgrade_school4.price = 100 + # + her2_upgrade_school2.price = 15 + her2_upgrade_school3.price = 30 + her2_upgrade_school4.price = 45 + # + her3_upgrade_school2.price = 100 + her3_upgrade_school3.price = 100 + her3_upgrade_school4.price = 100 + + $ gui.in_context("upgrades_menu") + return item_bought + +label upgrades_menu(xx=150, yy=90): + + $ upgrades_dict = { + "Tonks": {"ico": "tonks", "flag": tonks_unlocked, "outfits": {"school": []}}, + "Hermione": {"ico": "hermione", "flag": hermione_unlocked, "outfits": {"school": [her_outfit_default, her_upgrade_school2, her_upgrade_school3, her_upgrade_school4], "other": [her_outfit_default, her2_upgrade_school2, her2_upgrade_school3, her2_upgrade_school4], "other2": [her_outfit_default, her3_upgrade_school2, her3_upgrade_school3, her3_upgrade_school4], "other3": [her_outfit_default, her_upgrade_school2, her_upgrade_school3, her_upgrade_school4]}}, + "Cho": {"ico": "cho", "flag": cho_unlocked, "outfits": {"school": []}}, + "Luna": {"ico": "luna", "flag": luna_unlocked, "outfits": {"school": []}}, + "Astoria": {"ico": "astoria", "flag": astoria_unlocked, "outfits": {"school": []}}, + "Susan": {"ico": "susan", "flag": susan_unlocked, "outfits": {"school": []}} + } + + $ upgrades_categories_sorted = ["Tonks", "Hermione", "Cho", "Luna", "Astoria", "Susan"] + $ upgrades_categories_sorted_length = len(upgrades_categories_sorted) + + $ current_category = last_character.capitalize() if last_character else upgrades_categories_sorted[0] + $ current_item = 0 + $ current_subcategory = "overview" + $ current_sorting = upgrades_show_locked + + $ category_items = [] + $ menu_items = category_items + $ menu_items_length = len(menu_items) + + $ item_bought = False + + show screen upgrades_menu(xx, yy) + show screen upgrades_menuitem(xx, yy) + with d3 + + label .after_init: + $ _choice = ui.interact() + + if _choice[0] == "category": + $ current_category = _choice[1] + $ category_items = 0 + $ menu_items = upgrades_sortfilter([], current_sorting) + $ menu_items_length = len(menu_items) + $ current_item = 0 + elif _choice[0] == "subcat": + if _choice[1] != current_subcategory: + $ current_subcategory = _choice[1] + elif _choice[0] == "buy": + if game.gold >= _choice[1] and ton_friendship >= _choice[3]*25: + python: + renpy.play('sounds/money.ogg') + + game.gold -= _choice[1] + _list = _choice[2] + _iter = _choice[3] + + item_bought = True + + for i in xrange(1, min(_iter+1, len(_list))): + if not _list[i].unlocked: + _list[i].unlock() + ton_clothing_upgrades += 1 + elif ton_friendship < _choice[4]: + $ renpy.play('sounds/fail.ogg') + "> Tonks doesn't like you enough." + else: + $ renpy.play('sounds/fail.ogg') + "> You don't have enough gold." + else: + hide screen upgrades_menu + hide screen upgrades_menuitem + return + + jump .after_init + +screen upgrades_menu(xx, yy): + tag upgrades_menu + zorder 30 + modal True + + use close_button + frame: + style "empty" + pos (xx, yy) + xsize 207 + ysize 454 + + add gui.format("interface/achievements/{}/panel_left.webp") + + vbox: + pos (6, 384) + button action NullAction() style "empty" xsize 195 ysize 32 + frame: + style "empty" + textbutton "Show locked:": + style gui.theme("overlay_button") + xsize 195 ysize 32 + text_align (0.4, 0.5) + text_size 12 + action ToggleVariable("upgrades_show_locked", True, False) + add gui.theme("check_{}").format(str(upgrades_show_locked).lower()) xalign 0.8 ypos 4 + vbox: + pos (6, 6) + for category in upgrades_categories_sorted: + if upgrades_dict[category]["flag"]: + frame: + style "empty" + xysize (195, 50) + vbox: + textbutton category: + style "empty" + xysize (195, 46) + text_align (0.6, 0.5) + text_xanchor 0.5 + text_size 20 + if current_category == category: + background gui.format("interface/achievements/{}/highlight_left_b.webp") + else: + hover_background gui.format("interface/achievements/{}/highlight_left_b.webp") + action Return(["category", category]) + + add gui.format("interface/achievements/{}/spacer_left.webp") + + $ image_zoom = crop_image_zoom("interface/icons/head/"+upgrades_dict.get(category).get("ico")+".webp", 42, 42) + + button: + style gui.theme("overlay_button") + background gui.format("interface/achievements/{}/iconbox.webp") + foreground "interface/achievements/glass_iconbox.webp" + xysize (48, 48) + add image_zoom align (0.5, 0.5) + +screen upgrades_menuitem(xx, yy): + tag upgrades_menuitem + zorder 30 + + frame: + style "empty" + style_prefix gui.theme() + pos (xx+217, yy-53) + xysize (560, 507) + + add gui.format("interface/achievements/{}/panel.webp") + + text "Outfit Upgrades" size 22 xalign 0.5 ypos 65 + + hbox: + spacing 5 + pos (18, 70) + add "interface/icons/small/gold.webp" + text str(game.gold) size 15 ypos 4 + add "interface/icons/small/tonks.webp" + text str(ton_friendship) size 15 ypos 4 + + + vpgrid: + cols 1 + xysize (548, 400) + pos (6, 101) + draggable True + mousewheel "change" + scrollbars "vertical" + xfill True + yfill True + + # TODO: Reduce the clutter and optimize the code. + for i in upgrades_dict[current_category]["outfits"].itervalues(): + $ linear_price = 0 + + if len(i) > 0 and (i[0].unlocked or upgrades_show_locked): + vbox: + hbox: + spacing 0 + for x in xrange(len(i)): + if x < len(i)-1: + if not i[x+1].unlocked: + $ linear_price += i[x+1].price + $ actual_price = linear_price-i[x+1].price + $ favor_req = (x)*25 + elif x == len(i)-1: + $ actual_price = linear_price + $ favor_req = 75 + frame: + style "empty" + xysize (95, 130) + xpos 10 + if x < len(i): + add Flatten(i[x].get_image()) align (1.0, 1.0) zoom 0.125 alpha (1.0 if ((game.gold >= actual_price and ton_friendship >= favor_req) or i[x].unlocked) else 0.5) + if i[x].unlocked: + add "interface/topbar/icon_check.webp" zoom 0.5 align (0.85, 1.0) + else: + button: + style gui.theme("overlay_button") + xysize (76, 130) + action Return(["buy", actual_price, i, x, favor_req]) + if x < len(i)-1: + frame: + style "empty" + xysize (50, 50) + yalign 0.5 + text ("" if (linear_price <= 0) else str(favor_req+25)+"{unicode}\u2764{/unicode}") color ("#b20000" if (ton_friendship < favor_req+25) else "#402313") size 14 align (0.5, 0.25) + text (str(linear_price)+"g" if linear_price > 0 else "Sold!") color ("#b20000" if (0 < linear_price > game.gold) else "#402313") size 14 align (0.5, 0.7) + text "{unicode}\u0362{/unicode}" size 65 align (1.0, 0.5) xoffset 5 + add gui.format("interface/achievements/{}/spacer.webp") yalign 1.0 xpos 274 xanchor 0.5 diff --git a/game/scripts/characters/tonks/common.rpy b/game/scripts/characters/tonks/common.rpy new file mode 100644 index 00000000..097e97e4 --- /dev/null +++ b/game/scripts/characters/tonks/common.rpy @@ -0,0 +1,148 @@ +define ton_face = { + "mouth": { + "neutral": ["base","open"], + "happy": ["base","grin"], + "naughty": ["soft","base"], + "horny": ["horny","base"], + "annoyed": ["upset","annoyed"], + "disgusted": ["disgust","upset"], + "angry": ["clench","mad","upset"] + }, + + "eyes": { + "neutral": ["base"], + "happy": ["happyCl"], + "naughty": ["narrow"], + "horny": ["narrow"], + "annoyed": ["narrow","base"], + "disgusted": ["base"], + "angry": ["base"] + }, + + "eyebrows": { + "neutral": ["base"], + "happy": ["base","raised"], + "naughty": ["base","raised"], + "horny": ["base","raised"], + "annoyed": ["annoyed"], + "disgusted": ["raised","worried"], + "angry": ["angry"] + }, + + "pupils": { + "neutral": ["mid"], + "happy": ["mid"], + "naughty": ["mid","up","downR"], + "horny": ["mid","stare","down"], + "annoyed": ["mid","downR","R"], + "disgusted": ["mid","down"], + "angry": ["mid"] + } +} + +label update_tonks: + + # Chibi Update + $ tonks_chibi.update() + $ tonks_chibi.position(flip=False) + $ tonks.xzoom = 1 + hide screen ton_cloth_pile + + $ tonks.get_equipped("hair").set_color(tonks_haircolor) + return + +label end_tonks_event: + call ton_chibi("hide") + hide tonks_main + with d3 + pause.5 + + call update_tonks + + $ active_girl = None + $ tonks_busy = True + $ tonks.wear("all") + $ tonks.set_cum(None) + + $ renpy.stop_predict(tonks.get_image()) + $ renpy.stop_predict("characters/tonks/face/*.webp") + + call music_block + jump main_room_menu + +define character.tonks_say = Character("tonks_name", show_icon="tonks", dynamic=True) + +init python: + def ton(what, mouth=False, eyes=False, eyebrows=False, pupils=False, cheeks=None, tears=None, + emote=None, face=None, xpos=None, ypos=None, pos=None, flip=None, trans=None, animation=False, hair=None, **kwargs): + + redraw = False + tag = tonks.tag + layer = tonks.layer + #showing = renpy.showing(name=tag, layer=layer) + + if xpos != None or ypos != None: + xpos = tonks.pos[0] if xpos == None else sprite_pos.get("x").get(xpos, xpos) + ypos = tonks.pos[1] if ypos == None else sprite_pos.get("y").get(ypos, ypos) + tonks.pos = (xpos, ypos) + redraw = True + + head_only = tonks.pos[1] == sprite_pos.get("y").get("head") + + if any((mouth, eyes, eyebrows, pupils, cheeks, tears)): + tonks.set_face(mouth=mouth, eyes=eyes, eyebrows=eyebrows, pupils=pupils, cheeks=cheeks, tears=tears) + redraw = True + + tonks.set_emote(emote) + + if hair: + if isinstance(hair, list): + target_color = hair + elif hair in ("neutral", "basic", "reset"): + target_color = tonks_haircolor + elif hair in ("red", "angry", "furious"): + target_color = [[164, 34, 34, 255], [219, 83, 83, 255]] + elif hair in ("orange", "upset", "annoyed"): + target_color = [[228, 93, 34, 255], [246, 193, 170, 255]] + elif hair in ("yellow", "happy", "cheerful"): + target_color = [[255, 213, 23, 255], [255, 239, 167, 255]] + elif hair in ("green", "disgusted"): + target_color = [[111, 205, 75, 255], [200, 237, 186, 255]] + elif hair in ("blue", "sad"): + target_color = [[64, 75, 205, 255], [182, 186, 237, 255]] + elif hair == "purple": + target_color = [[205, 75, 205, 255], [237, 186, 237, 255]] + elif hair in ("white", "scared"): + target_color = [[238, 238, 241, 255], [249, 249, 250, 255]] + elif hair in ("pink", "horny"): + target_color = [[255, 105, 180, 255], [251, 205, 222, 255]] + + if target_color != tonks.get_equipped("hair").color: + tonks.get_equipped("hair").set_color(target_color) + redraw = True + + if animation != False: + if isinstance(animation, list): + tonks.animation = animation + else: + tonks.animation = [animation] + redraw = True + + if flip != None: + tonks.xzoom = -1 if flip else 1 + redraw = True + + if redraw: + tonks.show() + + if not renpy.in_rollback(): + if trans: + renpy.with_statement(trans) + else: + renpy.with_statement(d2) + + if what: + character.tonks_say(what, **kwargs) + + if head_only: + tonks.hide() diff --git a/game/scripts/characters/tonks/events/clothing.rpy b/game/scripts/characters/tonks/events/clothing.rpy new file mode 100644 index 00000000..c6d2cc19 --- /dev/null +++ b/game/scripts/characters/tonks/events/clothing.rpy @@ -0,0 +1,202 @@ +label tonks_summon_setup: + + # Reset doll state + $ tonks.wear("all") + $ tonks.set_cum(None) + $ tonks.animation = [] + + if not tonks_strip_happened and cc_pf_strip.is_event_complete(3, 3) and ton_friendship >= 20 and tonks.is_any_worn("top", "bottom", "bra", "panties"): + $ tonks_strip_happened = True #TODO use to make event not repeat + + $ tonks.strip("all") + call ton_walk(action="enter", xpos="mid", ypos="base") + + call play_sound("scratch") + with hpunch + gen "!!!" ("angry", xpos="far_left", ypos="head") + + ton "" ("grin", "base", "base", "mid", hair="horny", cheeks="heavy_blush", xpos="mid", ypos="base", trans=d5) + call ctc + + ton "Hello, [ton_genie_name]." ("soft", "narrow", "raised", "mid", hair="horny", cheeks="heavy_blush") + gen "You're naked!" ("grin", xpos="far_left", ypos="head") + ton "I am?" ("soft", "narrow", "raised", "mid", hair="horny", cheeks="heavy_blush") + ton "Oh... Yes it appears so..." ("grin", "narrow", "shocked", "down", hair="horny", cheeks="heavy_blush") + ton "Is that a problem, [ton_genie_name]?" ("annoyed", "narrow", "raised", "mid", hair="horny", cheeks="heavy_blush") + ton "Am I going to get fired for inappropriate behaviour?" ("annoyed", "narrow", "base", "down", hair="horny", cheeks="heavy_blush") + ton "Are you going to report me to the ministry?" ("base", "narrow", "raised", "down", hair="horny", cheeks="heavy_blush") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Have you been drinking Wine?" ("base", xpos="far_left", ypos="head") + + call play_sound("giggle") + ton "*Giggles*" ("grin", "narrow", "base", "stare", hair="horny", cheeks="heavy_blush") + ton "Maybe..." ("grin", "wink", "base", "mid", hair="horny", cheeks="heavy_blush") + + gen "One of the students could have seen you..." ("base", xpos="far_left", ypos="head") + ton "Oh, I would love for them to see me like this..." ("horny", "narrow", "shocked", "R", hair="horny", cheeks="heavy_blush") + ton "Why don't you invite one to your office?" ("soft", "narrow", "shocked", "mid", hair="horny", cheeks="heavy_blush") + + if ag_st_imperio.counter > 0: + gen "You'd like that wouldn't you..." ("base", xpos="far_left", ypos="head") + ton "Very much!" ("base", "narrow", "base", "mid", hair="horny", cheeks="heavy_blush") + gen "Like that Astoria girl you're so infatuated with?" ("base", xpos="far_left", ypos="head") + gen "Want me to call her up here to have her shame you on your bad behaviour?" ("base", xpos="far_left", ypos="head") + ton "Oh, yes please!" ("horny", "base", "base", "mid", hair="horny", cheeks="heavy_blush") + gen "But this sudden behaviour isn't about her is it?" ("base", xpos="far_left", ypos="head") + ton "*Hmm*... Is it that obvious?" ("base", "narrow", "base", "R", hair="horny", cheeks="heavy_blush") + + gen "Miss Chang?" ("base", xpos="far_left", ypos="head") + ton "*Mmm*..." ("base", "narrow", "base", "stare", hair="horny", cheeks="heavy_blush") + gen "Would you like me to bring her up here so you could rub your bodies together some more?" ("base", xpos="far_left", ypos="head") + ton "Yes please!" ("grin", "narrow", "base", "stare", hair="horny", cheeks="heavy_blush") + gen "You sure you're ready to find out just how flexible she is?" ("base", xpos="far_left", ypos="head") + ton "Yes!" ("crooked_smile", "base", "base", "stare", hair="horny", cheeks="heavy_blush") + + gen "(Although that's probably not the best idea in her current state...)" ("base", xpos="far_left", ypos="head") + gen "(Doesn't mean I can't tease her a bit though...)" ("grin", xpos="far_left", ypos="head") + gen "I bet you'd love that..." ("base", xpos="far_left", ypos="head") + + menu: + "-Play nice-": + gen "How about a bonus instead?" ("grin", xpos="far_left", ypos="head") + ton "A bonus? For showing off my body to my own boss?" ("soft", "narrow", "raised", "mid", hair="horny", cheeks="heavy_blush") + gen "That's right." ("base", xpos="far_left", ypos="head") + + call play_sound("giggle") + ton "*giggles*" ("grin", "narrow", "raised", "stare", hair="horny", cheeks="heavy_blush") + + ton "I've always wanted to find out my worth." ("grin", "base", "base", "stare", hair="horny", cheeks="heavy_blush") + gen "Alright then... Let's see, how much are you worth to me..." ("base", xpos="far_left", ypos="head") + + menu: + "-Zero gold-" if game.gold <= 0: + gen "Zero gold." ("base", xpos="far_left", ypos="head") + ton "Seriously?" ("soft", "narrow", "raised", "mid", hair="horny", cheeks="heavy_blush") + gen "Yes, I'm a cheap bastard." ("base", xpos="far_left", ypos="head") + ton "Clearly..." ("upset", "narrow", "base", "mid", hair="horny", cheeks="heavy_blush") + + "-One gold-" if game.gold > 0: + gen "A single gold coin, if anything..." ("base", xpos="far_left", ypos="head") + ton "(Bastard... How humiliating.)" ("soft", "narrow", "worried", "up", hair="horny", cheeks="heavy_blush") + gen "Well?" ("base", xpos="far_left", ypos="head") + ton "Yes?" ("disgust", "narrow", "raised", "mid", hair="horny", cheeks="heavy_blush") + gen "Shouldn't you be thanking me for this generous valuation?" ("base", xpos="far_left", ypos="head") + ton "Oh... Thank you so much, [ton_genie_name]." ("annoyed", "narrow", "base", "stare", hair="horny", cheeks="heavy_blush") + gen "Don't mention it, [tonks_name]." ("base", xpos="far_left", ypos="head") + $ game.gold -= 1 + + "-Twenty gold-" if game.gold >= 20: + gen "How does twenty gold sound?" ("base", xpos="far_left", ypos="head") + ton "(*Hmm*... I kind of expected more.)" ("annoyed", "narrow", "raised", "downR", hair="horny", cheeks="heavy_blush") + ton "Thank you, [ton_genie_name]." ("soft", "narrow", "base", "mid", hair="horny", cheeks="heavy_blush") + gen "No, [tonks_name]... Thank you." ("grin", xpos="far_left", ypos="head") + $ game.gold -= 20 + + "-A hundred gold-" if game.gold >= 100: + gen "Does one hundred gold sound nice to you?" ("base", xpos="far_left", ypos="head") + gen "With a body like that, you could earn a fortune at a strip club!" ("grin", xpos="far_left", ypos="head") + ton "Really..." ("horny", "narrow", "shocked", "mid", hair="horny", cheeks="heavy_blush") + ton "You think a noble teacher and auror like me, would quit her highly regarded job to become a cheap stripper?" ("grin", "narrow", "shocked", "mid", hair="horny", cheeks="heavy_blush") + gen "Well, no. I still want to keep you as a teacher." ("base", xpos="far_left", ypos="head") + gen "I merely suggested that you could." ("base", xpos="far_left", ypos="head") + ton "Maybe the duelling stage could find some extra use..." ("base", "narrow", "shocked", "stare", hair="horny", cheeks="heavy_blush") + ton "Perhaps some extra curricular activities for a couple of my favourite students could be arranged..." ("horny", "narrow", "raised", "up", hair="horny", cheeks="heavy_blush") + gen "I'm sure they would all love to watch their perverted teacher strip!" ("grin", xpos="far_left", ypos="head") + $ game.gold -= 100 + + gen "Now..." ("base", xpos="far_left", ypos="head") + + "-Scold her-": + gen "But you know what I have to do, [tonks_name]..." ("base", xpos="far_left", ypos="head") + gen "What were you thinking, walking into your boss' office, completely naked?" ("base", xpos="far_left", ypos="head") + ton "I'm terribly sorry, [ton_genie_name]..." ("open", "narrow", "base", "down", hair="horny", cheeks="heavy_blush") + gen "How's this befitting for a teacher..." ("angry", xpos="far_left", ypos="head") + gen "That surely calls for some punishment, don't you think?" ("grin", xpos="far_left", ypos="head") + ton "You are so right, [ton_genie_name]!" ("horny", "narrow", "base", "stare", hair="horny", cheeks="heavy_blush") + + # This section will be under some public check + # gen "I should make you the school's cum-dumpster instead. How would you like that position?" ("base", xpos="far_left", ypos="head") + # gen "Boys lining up in front of the school toilets, waiting their turn to dump their cum into their teacher's mouth, day after day!" ("base", xpos="far_left", ypos="head") + # ton "You're making me so wet, [ton_genie_name]!" ("base", "base", "base", "ahegao") + # ton "Maybe some day I'll get bored of my current position here at Hogwarts... you never know..." ("horny", "base", "raised", "mid") + # gen "I'm not done with your punishment, Miss [tonks_name]!" ("base", xpos="far_left", ypos="head") + gen "You went to this school, didn't you? Which house were you in?" ("base", xpos="far_left", ypos="head") + ton "My house? I was in Hufflepuff, but why--" ("disgust", "base", "raised", "mid", hair="horny", cheeks="heavy_blush") + gen "Very well then..." ("base", xpos="far_left", ypos="head") + gen "Minus ten points from Hufflepuff!" ("base", xpos="far_left", ypos="head") + $ hufflepuff -=10 + ton "What? But [ton_genie_name]! I'm not even a student--" ("disgust", "base", "base", "mid", hair="upset", cheeks="heavy_blush", trans=hpunch) + gen "Also--" ("base", xpos="far_left", ypos="head") + + menu: + "-Those clothes stay off!-": + $ tonks.unequip("all") + + ton "*Hmm*?" ("soft", "narrow", "raised", "down", hair="horny", cheeks="heavy_blush") + gen "That's right... If they're so bothersome, why bother wearing them at all?" ("base", xpos="far_left", ypos="head") + gen "When you're in here with me I want you on full display!" ("base", xpos="far_left", ypos="head") + ton "Of course [ton_genie_name]..." ("soft", "narrow", "base", "down", hair="horny", cheeks="heavy_blush") #Horny + ton "If you would allow me to put my clothes back on at any time, just let me know..." ("soft", "narrow", "base", "downR", hair="horny", cheeks="heavy_blush") + + "-Get dressed!-": + gen "No teacher of mine will strut around naked...{w} unless I say so!" ("base", xpos="far_left", ypos="head") + ton "Yes [ton_genie_name]..." ("open", "narrow", "shocked", "down", hair="horny", cheeks="heavy_blush") + gen "Now, put your clothes back on..." ("base", xpos="far_left", ypos="head") + ton "*Ehm*... Okay..." ("soft", "base", "base", "down", hair="horny", cheeks="heavy_blush") + + call play_sound("magic") + $ tonks.wear("all") + ton "" (trans=morph) + ton "" ("soft", "narrow", "base", "mid", hair="horny", cheeks="heavy_blush") + + if tonks_morph_known: + gen "...{w} You used your meta-whatsit ability just then didn't you?" ("base", xpos="far_left", ypos="head") + ton "You can tell?" ("soft", "narrow", "base", "down", hair="horny", cheeks="heavy_blush") + gen "Whatever, just wear your actual clothing next time..." ("base", xpos="far_left", ypos="head") + else: + gen "Much better..." ("base", xpos="far_left", ypos="head") + ton "..." ("soft", "narrow", "base", "downR", hair="horny", cheeks="heavy_blush") + + gen "Now, get back to your room and think about what you've done..." ("base", xpos="far_left", ypos="head") + ton "Yes [ton_genie_name]..." ("open", "narrow", "base", "down", hair="horny", cheeks="heavy_blush") #look down, blush + + #Tonks leaves + call ton_walk(action="leave") + + gen "(Hold on... Didn't I call her here for another reason...)" ("base", xpos="far_left", ypos="head") + gen "(I suppose it'll have to wait till tomorrow...)" ("base", xpos="far_left", ypos="head") + + jump end_tonks_event + + if tonks_outfits_schedule: + $ tonks.equip_random_outfit() + + call play_sound("door") + call ton_chibi("stand","mid","base") + with d3 + + #Tonks greeting. + call play_music("tonks") + + if ton_mood > 0: + if 5 > ton_mood >= 1: + ton "Yes, [ton_genie_name]?" ("open", "base", "base", "R", xpos="base", ypos="base", trans=d3) + ton "" ("base", "base", "base", "R") + elif 10 > ton_mood >= 5: + ton "I have classes to teach, please be quick." ("upset", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + elif 20 > ton_mood >= 10: + ton "Make it quick, [ton_genie_name]..." ("upset", "base", "base", "R", xpos="base", ypos="base", trans=d3) + elif 30 > ton_mood >= 20: + ton "What do you want, \"[ton_genie_name]\", I'm busy." ("mad", "base", "angry", "mid", xpos="base", ypos="base", trans=d3) + elif 40 > ton_mood >= 30: + ton "..............." ("upset", "base", "angry", "mid", xpos="base", ypos="base", trans=d3) + elif 50 > ton_mood >= 40: + ton "Please stop wasting my time." ("upset", "closed", "angry", "mid", xpos="base", ypos="base", trans=d3) + elif ton_mood >= 50: + ton "You have the nerve to call me here after what you did." ("upset", "base", "angry", "mid", xpos="base", ypos="base", trans=d3) + + call describe_mood("Tonks", ton_mood) + call tutorial("moodngifts") + else: + ton "You called, [ton_genie_name]?" ("base", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + return diff --git a/game/scripts/characters/tonks/events/clothing_old.txt b/game/scripts/characters/tonks/events/clothing_old.txt new file mode 100644 index 00000000..3fb2ca4d --- /dev/null +++ b/game/scripts/characters/tonks/events/clothing_old.txt @@ -0,0 +1,219 @@ +label tonks_summon_setup: + + #TODO I was thinking this event could trigger after certain events for now: some days after Astoria imperio training and some days after Cho/Tonks strip event (would that mess up with other story stuff happening around that time?) + #TODO add a variable for which event it has triggered from (for dialog variation in this event) + #TODO remove friendship check (not really relevant to her lewdness level atm plus it could mess up other checks) + #TODO Added a choice if she should stay naked or put on clothes, move wardrobe functions to each option + $ tonks_wardrobe_unlocked = True + + # Reset doll state + $ tonks.wear("all") + $ tonks.set_cum(None) + $ tonks.animation = [] + + $ random_number = renpy.random.randint(1, 20) + if 5 > random_number > 0 and tonks.is_worn("top") and ton_friendship >= 50: + + if not tonks_strip_happened: #First time. + $ tonks_strip_happened = True + + $ tonks.strip("all") + call ton_walk(action="enter", xpos="mid", ypos="base") + + call play_sound("scratch") + with hpunch + gen "!!!" ("angry", xpos="far_left", ypos="head") + + ton "" ("base", "base", "base", "mid", hair="horny", xpos="mid", ypos="base", trans=d5) + call ctc + + ton "Hi, [ton_genie_name]." ("horny", "base", "raised", "mid") + gen "You're naked!" ("grin", xpos="far_left", ypos="head") + ton "Indeed I am." ("open", "base", "raised", "mid") + ton "Is that a problem, [ton_genie_name]?" ("horny", "base", "raised", "mid") + ton "Am I going to get fired for inappropriate behaviour?" ("open", "base", "base", "R") + ton "Are you going to report me to the ministry?" ("horny", "base", "raised", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Have you been drinking?" ("base", xpos="far_left", ypos="head") + ton "Maybe..." ("base", "base", "base", "mid") + + else: #Repeated Event. + + $ tonks.strip("all") + call ton_walk(action="enter", xpos="mid", ypos="base") + + call play_music("chipper_doodle") + ton "" ("base", "base", "base", "mid", hair="horny", xpos="mid", ypos="base", trans=d5) + call ctc + + ton "Hi, [ton_genie_name]." ("horny", "base", "raised", "mid") + gen "You're naked again." ("grin", xpos="far_left", ypos="head") + ton "Yes... I just felt like it." ("base", "base", "raised", "stare") + gen "(She's smashed...)" ("base", xpos="far_left", ypos="head") + gen "Miss Tonks, you should be more careful." ("base", xpos="far_left", ypos="head") + + gen "One of the students could have seen you..." ("base", xpos="far_left", ypos="head") + ton "Oh, I would love for them to see me like this..." ("horny", "base", "raised", "mid") + ton "Why don't you invite one to your office?" ("horny", "base", "base", "mid") + + if ag_st_imperio.counter > 0: + gen "You'd like that wouldn't you..." ("base", xpos="far_left", ypos="head") + ton "Very much!" + gen "Like that Astoria girl you're so infatuated with?" ("base", xpos="far_left", ypos="head") + gen "Want me to call her up here to have her shame you on your bad behaviour?" ("base", xpos="far_left", ypos="head") + ton "Oh, yes please!" + + #TODO if triggered after last Cho strip favour with tonks done (Gryffindor tier) + # Note: No such event exists in the game yet (?) + #gen "Would you like me to bring Miss Chang up here so you rub your bodies together?" ("base", xpos="far_left", ypos="head") + #ton "Yes please!" + #gen "You sure you're ready to find out just how flexible she is?" ("base", xpos="far_left", ypos="head") + #ton "Yes!" + + gen "I bet you'd love that..." ("base", xpos="far_left", ypos="head") + gen "(Although that's probably not the best idea in her current state...)" ("base", xpos="far_left", ypos="head") + gen "(Doesn't mean I can't tease her a bit though...)" ("grin", xpos="far_left", ypos="head") + + menu: + "-Play nice-": + gen "How about a bonus instead?" ("grin", xpos="far_left", ypos="head") + ton "A bonus? For showing my body to my own boss?" ("open", "base", "raised", "mid") + ton "How much am I worth to you, [ton_genie_name]?" ("base", "base", "raised", "mid") + + menu: + "-Zero gold-" if game.gold <= 0: + gen "Zero gold." ("base", xpos="far_left", ypos="head") + ton "Seriously?" ("angry", "base", "raised", "mid") + gen "Yes, I'm a cheap bastard." ("base", xpos="far_left", ypos="head") + ton "I can see that..." ("upset", "base", "base", "mid") + + "-One gold-" if game.gold > 0: + gen "A single gold coin, if anything..." ("base", xpos="far_left", ypos="head") + ton "(Bastard... How humiliating.)" ("base", "base", "raised", "ahegao") + ton "Thank you so much, [ton_genie_name]." ("base", "base", "base", "mid") + gen "Don't mention it, [tonks_name]." ("base", xpos="far_left", ypos="head") + $ game.gold -= 1 + + "-Twenty gold-" if game.gold >= 20: + gen "How does twenty gold sound?" ("base", xpos="far_left", ypos="head") + ton "(*Hmm*... I kind of expected more.)" ("base", "base", "base", "R") + ton "Thank you, [ton_genie_name]." ("base", "base", "base", "mid") + gen "No, [tonks_name]... Thank you." ("grin", xpos="far_left", ypos="head") + $ game.gold -= 20 + + "-A hundred gold-" if game.gold >= 100: + gen "Does one hundred gold sound nice to you?" ("base", xpos="far_left", ypos="head") + gen "With a body like that, you could earn a fortune at a strip club!" ("grin", xpos="far_left", ypos="head") + ton "Really..." ("horny", "base", "raised", "mid") + ton "You think a noble teacher like me, an ex-auror, would quit her highly regarded job to become a cheap stripper?" ("open", "base", "base", "mid") + gen "Well, no. I still want to keep you as a teacher." ("base", xpos="far_left", ypos="head") + gen "I merely suggested that you could." ("base", xpos="far_left", ypos="head") + ton "Maybe the duelling stage could find some extra use..." ("base", "base", "base", "R") + ton "Perhaps some extra curricular activities for a couple of my favourite students could be arranged..." ("open", "base", "raised", "mid") + gen "I'm sure they would all love to watch their perverted teacher strip!" ("grin", xpos="far_left", ypos="head") + $ game.gold -= 100 + + gen "Now..." ("base", xpos="far_left", ypos="head") + + "-Scold her-": + gen "You know I have to, Miss [tonks_name]." ("base", xpos="far_left", ypos="head") + gen "Walking into your boss' office, completely naked?" ("base", xpos="far_left", ypos="head") + gen "Behaviour like that from a teacher... that's just unspeakable!" ("base", xpos="far_left", ypos="head") + ton "I'm terribly sorry, [ton_genie_name]..." ("open", "base", "base", "down") + gen "What will you do next? Climb under my desk and suck my cock?" ("base", xpos="far_left", ypos="head") + gen "Spread your legs for one of your students?" ("angry", xpos="far_left", ypos="head") + ton "..." ("base", "base", "raised", "stare") + gen "How's this befitting for a teacher... strutting into the headmaster's office in your birthday suit." ("angry", xpos="far_left", ypos="head") + gen "That surely calls for some punishment, don't you think?" ("grin", xpos="far_left", ypos="head") + ton "You are so right, [ton_genie_name]!" ("base", "base", "worried", "mid") + + #TODO This section will be under some whoring check later + # gen "I should make you the school's cum-dumpster instead. How would you like that position?" ("base", xpos="far_left", ypos="head") + # gen "Boys lining up in front of the school toilets, waiting their turn to dump their cum into their teacher's mouth, day after day!" ("base", xpos="far_left", ypos="head") + # ton "You're making me so wet, [ton_genie_name]!" ("base", "base", "base", "ahegao") + # ton "Maybe some day I'll get bored of my current position here at Hogwarts... you never know..." ("horny", "base", "raised", "mid") + # gen "I'm not done with your punishment, Miss [tonks_name]!" ("base", xpos="far_left", ypos="head") + if not tonks_strip_happened: + gen "You went to this school, didn't you? Which house were you in?" ("base", xpos="far_left", ypos="head") + ton "Me? I was in Hufflepuff." ("open", "base", "raised", "mid") + gen "Very well then." ("base", xpos="far_left", ypos="head") + gen "Minus ten points from Hufflepuff!" ("base", xpos="far_left", ypos="head") + $ hufflepuff -=10 + ton "What? But [ton_genie_name]! I'm not even a student--" ("open", "wide", "shocked", "mid", trans=hpunch) + else: + gen "Then that's another minus ten points from Hufflepuff!" ("base", xpos="far_left", ypos="head") + ton "Again? But please, sir!" + ton "What will they say once I get back to the common room?" + gen "What?" ("base", xpos="far_left", ypos="head") + ton "Oh... I'm a teacher now aren't I... silly me." + + gen "Also--" ("base", xpos="far_left", ypos="head") + + menu: + "-Those clothes stay off!-": + $ tonks.unequip("all") + + ton "*Hmm*?" + gen "That's right... since they're so bothersome, why bother wearing them at all?" ("base", xpos="far_left", ypos="head") + gen "When you're in here with me I want you on full display!" ("base", xpos="far_left", ypos="head") + ton "Of course sir..." #Horny + ton "If you want me to put my clothes back on at any time, just let me know..." ("base", "base", "base", "mid") + + "-Get dressed!-": + gen "No teacher of mine will strut around naked...{w} unless I say so!" ("base", xpos="far_left", ypos="head") + ton "Yes sir..." + gen "Now, put your clothes back on..." ("base", xpos="far_left", ypos="head") + ton "*Ehm*... Okay..." + + call play_sound("magic") + $ tonks.wear("all") + ton "" (trans=morph) + + if tonks_morph_known: + gen "...{w} You used your meta-whatsit ability just then didn't you?" ("base", xpos="far_left", ypos="head") + ton "You can tell?" + gen "Whatever, just wear your actual clothing next time..." ("base", xpos="far_left", ypos="head") + else: + gen "Much better..." ("base", xpos="far_left", ypos="head") + ton "..." #smirks #looking down (She's just morphed so she looks like she has clothes) + + gen "Now, get back to your room and think about what you've done..." ("base", xpos="far_left", ypos="head") + ton "Of course sir..." #look down, blush + gen "On second thought, stay here, we're not done yet." ("base", xpos="far_left", ypos="head") + + ton "" (xpos="base", ypos="base", trans=fade) + + return + + if tonks_outfits_schedule: + $ tonks.equip_random_outfit() + + call play_sound("door") + call ton_chibi("stand","mid","base") + with d3 + + #Tonks greeting. + call play_music("tonks") + + if ton_mood > 0: + if 5 > ton_mood >= 1: + ton "Yes, [ton_genie_name]?" ("open", "base", "base", "R", xpos="base", ypos="base", trans=d3) + ton "" ("base", "base", "base", "R") + elif 10 > ton_mood >= 5: + ton "I have classes to teach, please be quick." ("upset", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + elif 20 > ton_mood >= 10: + ton "Make it quick, [ton_genie_name]..." ("upset", "base", "base", "R", xpos="base", ypos="base", trans=d3) + elif 30 > ton_mood >= 20: + ton "What do you want, \"[ton_genie_name]\", I'm busy." ("mad", "base", "angry", "mid", xpos="base", ypos="base", trans=d3) + elif 40 > ton_mood >= 30: + ton "..............." ("upset", "base", "angry", "mid", xpos="base", ypos="base", trans=d3) + elif 50 > ton_mood >= 40: + ton "Please stop wasting my time." ("upset", "closed", "angry", "mid", xpos="base", ypos="base", trans=d3) + elif ton_mood >= 50: + ton "You have the nerve to call me here after what you did." ("upset", "base", "angry", "mid", xpos="base", ypos="base", trans=d3) + + call describe_mood("Tonks", ton_mood) + call tutorial("moodngifts") + else: + ton "You called, [ton_genie_name]?" ("base", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + return diff --git a/game/scripts/characters/tonks/events/hangout.rpy b/game/scripts/characters/tonks/events/hangout.rpy new file mode 100644 index 00000000..e3c38449 --- /dev/null +++ b/game/scripts/characters/tonks/events/hangout.rpy @@ -0,0 +1,766 @@ + + +### Tonks Hangout Event ### + +label tonks_hangout: + + call setup_fireplace_hangout(char="tonks")## + + $ tonks.strip("robe") # Takes off robe + + if firewhisky_ITEM.owned >= 1: + $ firewhisky_ITEM.owned -= 1 + + $ nt_he_drink.start() + + label tonks_hangout_continue: + hide screen bld1 + with fade + call bld + + ### Intro Events ### + + # Hermione + if hermione_intro.E5_complete and not nt_he.hermione_E1: + jump nt_he_hermione_E1 # Persuade Hermione to sell favors. + + # Susan + if her_tier >= 2 and ton_friendship >= 20 and not nt_he.susan_E1: + $ ag_event_pause += 2 # Astoria intro happens in 2 days. + jump nt_he_susan_E1 # Starts Susan/Astoria intro. + + # Astoria + if astoria_intro.E3_complete and not nt_he.astoria_E1: + jump nt_he_astoria_E1 + + # (Quidditch) Ask Tonks for help with Slytherins. + if cho_quid.E6_complete and not cho_quid.E8_complete: + jump cho_quid_E8 + + ### General Events ### + + if her_tier >= 2 and not nt_he.favors_E1: + jump nt_he_favors_E1 # Unlocks Public Requests. + if ton_reputation >= 4 and ton_friendship >= 20 and not nt_he.favors_E2: + jump nt_he_favors_E2 # Tonks Tier 2 available. + + + ### Snape Stories ### + + if not nt_he_story.is_complete(): + $ nt_he_story.start() + + label end_tonks_hangout: + + $ d_flag_01 = "afternoon" if game.daytime else "evening" + + if ton_friendship < 100: + call notes + ">You spend the [d_flag_01] hanging out with Tonks.\n>Your relationship with her has improved." + else: + ">You spend the [d_flag_01] hanging out with Tonks." + + label end_tonks_hangout_points: + + if ton_friendship < 100: # max + if fire_in_fireplace: # Tonks is feeling hot. + $ ton_friendship += 2 + + if game.difficulty < 2: #Easy difficulty + $ ton_friendship += 5 + elif game.difficulty == 2: #Normal + $ ton_friendship += 4 + else: #Hardcore + $ ton_friendship += 3 + + if ton_friendship > 100: + $ ton_friendship = 100 + + $ hufflepuff += renpy.random.randint(5, 15) + + $ tonks.wear("all") + $ chair_OBJ.hidden = False + $ fireplace_OBJ.foreground = None + + hide screen with_tonks_animated + + if game.daytime: + jump night_start + else: + jump day_start + + +label nt_he_wine_intro: + call bld + gen "Care for a drink?" ("base", xpos="far_left", ypos="head") + ton "Of course, [ton_genie_name]." ("base", "base", "shocked", "mid", cheeks="blush", ypos="head", flip=False) + ton "Hit me!" ("horny", "base", "base", "down") + pause.1 + + # Show wine + call give_gift(">You hand over the bottle you found in the cupboard to professor Tonks...", wine_ITEM) + + ton "Wine?" ("open", "base", "raised", "down") + ton "Don't you have anything stronger?" ("upset", "base", "base", "R") + gen "Like what?" ("base", xpos="far_left", ypos="head") + ton "How about firewhisky? Got any of that?" ("open", "base", "base", "mid") + gen "I'm afraid not..." ("base", xpos="far_left", ypos="head") + ton "What a bummer. I guess wine will do for today." ("upset", "base", "worried", "down") + gen "(Maybe there is some of that other stuff stored in the cupboard as well...)" ("base", xpos="far_left", ypos="head") + + # Make firewhisky available in the cupboard and store + $ firewhisky_ITEM.unlocked = True + + jump tonks_hangout_continue + + +label nt_he_firewhisky_intro: + call bld + gen "Look what I've got!" ("grin", xpos="far_left", ypos="head") + pause.1 + + # Show firewhisky + call give_reward(">You hand over a bottle of firewhisky to Tonks...", gift="interface/icons/firewhisky.webp", sound=False) + + ton "Finally, the good stuff!" ("horny", "base", "base", "down", ypos="head", flip=False) + ton "I'm glad you brought out some firewhisky this time..." ("base", "base", "base", "down") + ton "Wine makes me giggly, and hinders my judgment." ("base", "base", "base", "L") + gen "..." ("base", xpos="far_left", ypos="head") + ton "Got a frog in your throat?" ("open", "base", "raised", "mid") + gen "No, I was just waiting for an opening." ("base", xpos="far_left", ypos="head") + ton "Sorry, I guess I talk a lot once I get going..." ("mad", "base", "shocked", "R") + ton "Bottoms up." ("horny", "base", "base", "down") + call play_sound("gulp") + ton "*Gulp*{w=0.6}{nw}" ("base", "closed", "worried", "mid", trans=hpunch) + ton "*Cough* *Cough*" ("open", "happyCl", "shocked", "stare") + ton "Yeah, that was a mistake." ("mad", "base", "base", "down") + gen "I don't drink whisky that often, but even I know not to down it in one..." ("base", xpos="far_left", ypos="head") + ton "*Mmm*... that's the stuff." ("horny", "narrow", "base", "down") + gen "Are you even listening?" ("base", xpos="far_left", ypos="head") + + jump tonks_hangout_continue + + +label nt_he_firewhisky_E1: + call bld + gen "Another glass of firewhisky?" ("base", xpos="far_left", ypos="head") + ton "Fill 'er up." ("horny", "base", "base", "up", ypos="head", flip=False) + ton "..." ("base", "base", "shocked", "down") + ton "A little bit more..." ("open", "base", "raised", "down") + ton "A bit more..." ("horny", "base", "angry", "down") + ton "That's it, cheers." ("base", "base", "base", "mid") + + if nt_he_drink.counter <= 3: # First time only. + if game.daytime: + gen "Boring lessons ahead?" ("base", xpos="far_left", ypos="head") + ton "Not particularly, why?" ("open", "base", "base", "mid") + gen "You might regret going back to classes after drinking this much." ("base", xpos="far_left", ypos="head") + ton "Oh don't you worry, [ton_genie_name]." ("silly", "happyCl", "base", "mid") + ton "I could down this entire bottle without anybody being able to notice a thing." ("horny", "base", "base", "L") + gen "You're one glass in and swaying like a buoy..." ("base", xpos="far_left", ypos="head") + ton "*Hic* Oh well..." ("open", "base", "base", "ahegao", trans=hpunch) + ton "No risk, no fun!" ("horny", "base", "base", "mid") + else: + gen "Long day?" ("base", xpos="far_left", ypos="head") + ton "Not in particular, why?" ("open", "wide", "raised", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "No reason..." ("base", xpos="far_left", ypos="head") + + jump tonks_hangout_continue + + +label nt_he_firewhisky_E2: + call bld + gen "More firewhisky?" ("base", xpos="far_left", ypos="head") + ton "Thought you'd never ask..." ("horny", "base", "base", "down", ypos="head", flip=False) + + jump tonks_hangout_continue + + +label nt_he_firewhisky_E3: + call bld + gen "Want to get drunk?" ("base", xpos="far_left", ypos="head") + + ton "Of course." ("base", "narrow", "shocked", "down", ypos="head", flip=False) + if game.daytime: + ton "I'm not going to regret this, am I?" ("clench", "base", "raised", "downR") + ton "Hopefully my students won't notice..." ("grin", "narrow", "base", "downR") + else: + ton "I'd never say no to that!" ("horny", "base", "base", "down") + + jump tonks_hangout_continue + + +label nt_he_firewhisky_E4: + ton "Bottoms up." ("base", "narrow", "base", "mid", ypos="head", flip=False) + call play_sound("gulp") + ton "*Gulp*{w=0.8}{nw}" ("scream", "closed", "base", "mid") + call play_sound("gulp") + ton "*Gulp*{w=0.8}{nw}" ("scream", "closed", "worried", "mid") + call play_sound("gulp") + ton "*Gulp*{w=0.8}{nw}" ("scream", "closed", "worried", "mid") + ton "*Aaaaaaaahhhh!!!*..." ("silly", "closed", "base", "ahegao", trans=vpunch_repeat) + gen "....................." ("base", xpos="far_left", ypos="head") + + jump tonks_hangout_continue + + + +### Events ### + +label nt_he_favors_E1: + ton "So, [ton_genie_name]... what's the going rate around here then?" ("open", "base", "raised", "mid", ypos="head", flip=False) + gen "Going rate?" ("base", xpos="far_left", ypos="head") + ton "How much do you pay your students to fool around?" ("base", "narrow", "annoyed", "mid") + gen "Oh... It depends on what you want them to do." ("base", xpos="far_left", ypos="head") + ton "How much for a lap dance?" ("soft", "narrow", "raised", "mid") + gen "Again, it depends on the student." ("base", xpos="far_left", ypos="head") + ton "..." ("upset", "base", "base", "R") + gen "But if I had to guess, I'd say about twenty-five points." ("base", xpos="far_left", ypos="head") + ton "Unbelievable that you've managed to convince these girls to offer themselves up to you, for a bunch of imaginary points..." ("base", "narrow", "annoyed", "R") + gen "Works for the internet..." ("base", xpos="far_left", ypos="head") + ton "The what?" ("open", "base", "raised", "mid") + gen "A place you go when you want to procrastinate..." ("base", xpos="far_left", ypos="head") + gen "Or you happen to be sitting on the toilet..." ("base", xpos="far_left", ypos="head") + gen "Anyway, you can't just ask for a lap dance straight away, You have to butter them up first." ("base", xpos="far_left", ypos="head") + ton "How so?" ("mad", "base", "raised", "mid") + gen "Well most of them aren't going to do whatever you say from the get go..." ("base", xpos="far_left", ypos="head") + gen "You have to slowly earn their trust over time and start out small..." ("base", xpos="far_left", ypos="head") + ton "*Awww*... really? Can't I just cheat a bit?" ("upset", "base", "worried", "L") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Just take it slow, I'm sure you'll find a cute boy who'll be willing to do whatever you want anyway." ("base", xpos="far_left", ypos="head") + ton "..." ("upset", "base", "base", "R") + ton "But what if I want a girl?" ("horny", "base", "raised", "mid") + gen "(...!)" ("angry", xpos="far_left", ypos="head") + gen "Whatever floats your boat." ("base", xpos="far_left", ypos="head") + + $ tonks_requests_unlocked = True + call popup("You can now ask Tonks to do \"Public Requests\" with her students!", "Congratulations!", "interface/icons/head/tonks.webp") + + $ nt_he.favors_E1 = True + + jump end_tonks_hangout_points + + +label nt_he_favors_E2: + ton "You know, [ton_genie_name]... I overheard a couple of students whispering about me..." ("open", "base", "raised", "mid", ypos="head", flip=False) + gen "Finally..." ("grin", xpos="far_left", ypos="head") + ton "I walked past a group of boys the other day..." ("open", "base", "base", "R") + ton "One straight up called me a slut, whilst the others snickered at me..." ("open", "base", "base", "down") + gen "Oh?" ("base", xpos="far_left", ypos="head") + ton "So, I turned around and told him that such behaviour could earn him detention..." ("base", "wink", "base", "mid") + ton "Of course, word has it that detention with me is rather enjoyable..." ("horny", "base", "base", "mid") + ton "And I believe that group of boys knew that fact as well..." ("base", "base", "angry", "R") + gen "Sounds like it's about time we step it up a notch." ("base", xpos="far_left", ypos="head") + ton "And behave even riskier?" ("open", "shocked", "shocked", "mid") + ton "Who do you think you're asking exactly?" ("open", "closed", "base", "mid") + gen "So...{w=0.3} Is that a yes?" ("base", xpos="far_left", ypos="head") + ton "Fuck yes!" ("grin", "narrow", "shocked", "mid") + ton "I want those boys to call me all sorts of names... And do it straight to my face!" ("horny", "base", "angry", "mid") + gen "Promise me you'll reward them if they do." ("grin", xpos="far_left", ypos="head") + ton "I promise, [ton_genie_name]." ("base", "wink", "base", "mid") + + call popup("Tonks can now reach the next level!", "Congratulations!", "interface/icons/head/tonks.webp", sound=False) + + $ nt_he.favors_E2 = True + + jump end_tonks_hangout_points + + + +### Tonks Auror Stories ### + +label nt_he_story_intro_E1: + ton "Thanks for accepting my job application by the way." ("base", "base", "base", "mid", ypos="head", flip=False) + gen "I didn't really have that much choice in the matter." ("base", xpos="far_left", ypos="head") + ton "Oh, yeah..." ("grin", "narrow", "base", "downR") + ton "..." ("annoyed", "base", "base", "R") + ton "I'll do well...{w=0.4} you'll see." ("open", "base", "base", "down") + ton "After all, I was taught by one of the best aurors there is." ("base", "base", "raised", "mid") + ton "So, don't get me wrong... I do wish to teach those students a couple of useful things while I'm here..." ("annoyed", "base", "shocked", "mid") + ton "Teaching a class of beginners should be a breeze." ("base", "narrow", "base", "mid") + gen "I never said I doubted your abilities." ("base", xpos="far_left", ypos="head") + ton "Maybe I'll give you a demonstration some day..." ("horny", "base", "raised", "mid") + ton "And I'm not talking about my intellectual abilities..." ("horny", "base", "base", "down") + gen "I'm a well for all kinds of knowledge!" ("grin", xpos="far_left", ypos="head") + + if game.daytime: + ton "Anyway, I have to go prepare for classes." ("open", "base", "base", "R") + else: + ton "Anyway, I think I'm gonna go hit the sack." ("open", "base", "base", "R") + + if nt_he_drink.is_event_complete(1, 2): # We're past the wine intro + gen "There's more firewhisky where this came from, so feel free to stop by any time to talk about your progress." ("base", xpos="far_left", ypos="head") + ton "I'll never say no to a free drink." ("base", "base", "base", "down") + else: + gen "There's more wine where this came from, so feel free to stop by any time to talk about your progress." ("base", xpos="far_left", ypos="head") + ton "Please, no more wine! You better have some firewhisky next time." ("open", "base", "worried", "mid") + gen "Oh, right. I'll make sure to get some." ("base", xpos="far_left", ypos="head") + ton "Good!" ("base", "base", "base", "mid") + + ton "And I'll keep you updated on the academics as usual." ("base", "base", "base", "mid") + gen "(That's not the kind of progress I meant...)" ("base", xpos="far_left", ypos="head") + + jump end_tonks_hangout + + +label nt_he_story_intro_E2: + call bld + gen "You mentioned an auror last time if I'm not mistaken." ("base", xpos="far_left", ypos="head") + ton "Moody?" ("annoyed", "wide", "shocked", "mid", ypos="head", flip=False) + gen "Not in particular." ("base", xpos="far_left", ypos="head") + ton "What?" ("mad", "base", "raised", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + ton "You talking about Mad-eye?" ("upset", "base", "raised", "mid") + gen "I can see perfectly fine, dear." ("base", xpos="far_left", ypos="head") + ton "Alastor Moody is the auror that taught me." ("open", "narrow", "annoyed", "mid") + gen "Oh, of course." ("base", xpos="far_left", ypos="head") + gen "(His parents must have hated him...)" ("base", xpos="far_left", ypos="head") + #gen "(What's wrong with a normal name... like Will Smith, or Robin Williams?)" ("base", xpos="far_left", ypos="head") + gen "Anything you'd like to tell me about him?" ("base", xpos="far_left", ypos="head") + ton "Well, he's a bit of a weirdo, but he knows his stuff." ("open", "closed", "annoyed", "mid") + ton "I guess if you're as paranoid as him, you'll end up knowing everything there is about the craft..." ("open", "base", "base", "R") + gen "Paranoid of what?" ("base", xpos="far_left", ypos="head") + ton "Dark wizards." ("mad", "narrow", "base", "mid") + gen "So...{w=0.3} He's a racist?" ("base", xpos="far_left", ypos="head") + ton "No, but he's old... I think he should just retire to be honest." ("open", "base", "base", "downR") + ton "His methods have gotten progressively more nefarious..." ("open", "narrow", "annoyed", "R") + ton "Some would argue he should be locked up himself, for all the things that he did to catch his targets..." ("mad", "narrow", "base", "down") + gen "And you?" ("grin", xpos="far_left", ypos="head") + ton "Me? What about me?" ("upset", "narrow", "annoyed", "mid") + gen "You wouldn't say what we do is unethical as well?" ("base", xpos="far_left", ypos="head") + ton "Did you start drinking before I got here?" ("open", "narrow", "annoyed", "L") + gen "I never stop..." ("base", xpos="far_left", ypos="head") + ton "..." ("annoyed", "closed", "base", "up") + + jump end_tonks_hangout + + +label nt_he_story_intro_E3: + ton "Do you always happen to have a bottle ready for me?" ("base", "base", "raised", "down") + gen "For you, always." ("grin", xpos="far_left", ypos="head") + ton "I don't even have to visit the Hog's Head to get a drink anymore..." ("base", "narrow", "annoyed", "R") + gen "Why go anywhere when you've got a magic cupboard that fills itself with alcohol." ("base", xpos="far_left", ypos="head") + ton "It does?" ("open", "wide", "raised", "mid") + gen "At least I think that's how it works..." ("base", xpos="far_left", ypos="head") + gen "I may be a Genie, but I can't just turn water into wine... or whisky." ("base", xpos="far_left", ypos="head") + gen "(At least not in this world...)" ("base", xpos="far_left", ypos="head") + ton "Yeah, that would be impressive." ("silly", "happyCl", "base", "mid") + ton "I haven't found a single wizard that could do that." ("open", "closed", "shocked", "mid") + gen "Ah yes. Because all those cunning bachelors are already taken...{w} or gay..." ("base", xpos="far_left", ypos="head") + ton "No. Single as in... no one can do it." ("open", "narrow", "base", "mid") + ton "It's almost impossible to summon drinks and food out of thin air." ("open", "base", "base", "R") + ton "Best they can do is conjure water out of the surrounding humidity." ("upset", "base", "base", "R") + gen "If only I had my powers... I could do it with a snap of a finger." ("base", xpos="far_left", ypos="head") + ton "I'm sure you could..." ("silly", "happyCl", "base", "mid") + + ">You brag about your almighty powers in front of the witch..." + ">If only you hadn't lost them..." + + #gen "(What kind of shit wizard can't even make food...)" ("base", xpos="far_left", ypos="head") + #gen "What about water though, doesn't that count as a drink?" ("base", xpos="far_left", ypos="head") + #ton "..." ("base", "base", "base", "mid") + #ton "You know what, I never thought of that." ("base", "base", "base", "mid") + #gen "What even counts as food or drink... sound pretty arbitrary to me." ("base", xpos="far_left", ypos="head") + #ton "I don't think we're supposed to think about it too hard." ("base", "base", "base", "mid") + #gen "Less obvious plot-holes that way I suppose..." ("base", xpos="far_left", ypos="head") + #ton "Less what, sorry?" ("base", "base", "base", "mid") + #gen "No matter, just thinking out loud is all." ("base", xpos="far_left", ypos="head") + + jump end_tonks_hangout + + +label nt_he_story_intro_E4: + ton "I've been so busy lately... The days here fly by faster than a Firebolt." ("open", "closed", "worried", "mid", ypos="head", flip=False) + gen "I'm not sure I know that... spell?" ("base", xpos="far_left", ypos="head") + ton "It's a broom..." ("upset", "base", "base", "mid") + gen "Oh, I see... I'm not really that into brooms." ("base", xpos="far_left", ypos="head") + gen "Or anything that is inconveniently stiff and long to ride on..." ("base", xpos="far_left", ypos="head") + ton "Well I don't mind that... Most witches don't." ("grin", "base", "base", "R") + gen "You should ask me about my knowledge of flying carpets instead!" ("grin", xpos="far_left", ypos="head") + gen "I can tell you everything about the newest model." ("grin", xpos="far_left", ypos="head") + ton "Do you own one yourself? A flying carpet?" ("silly", "base", "base", "mid") + gen "No... But a friend of mine does." ("base", xpos="far_left", ypos="head") + gen "It's more of a pet, actually." ("base", xpos="far_left", ypos="head") + gen "Technically they are sentient beings..." ("base", xpos="far_left", ypos="head") + ton "Yes, I've heard of that... How interesting." ("silly", "happyCl", "base", "mid") + ton "So...{w=0.4} Would you like that? Own a pet, that is..." ("base", "base", "angry", "mid") + gen "Sure. Why do you ask?" ("base", xpos="far_left", ypos="head") + ton "Just out of curiosity..." ("horny", "base", "base", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + + ">You keep thinking about what Tonks meant by that, whilst she eyes you up expectantly..." + + jump end_tonks_hangout + + +label nt_he_story_intro_E5: + call bld + gen "You still haven't told me anything about your time as an auror..." ("base", xpos="far_left", ypos="head") + ton "Well, what would you like to know?" ("open", "wide", "raised", "mid", ypos="head", flip=False) + gen "That \"moody\" guy taught you, you said. You could start there." ("base", xpos="far_left", ypos="head") + ton "Well, the job of an auror is a bit different now than how it was ten or so years ago." ("open", "base", "base", "R") + ton "I studied to become an auror with the hopes of taking down evil wizards." ("annoyed", "base", "annoyed", "down") + gen "Sounds like a nineties B movie to me." ("base", xpos="far_left", ypos="head") + ton "A what?" ("normal", "shocked", "raised", "mid") + gen "Never mind... continue." ("base", xpos="far_left", ypos="head") + ton "In any case... That's not at all how the job is anymore." ("mad", "base", "base", "R") + gen "Was it ever?" ("base", xpos="far_left", ypos="head") + ton "That's what they told me..." ("annoyed", "base", "annoyed", "R") #'tell' to 'told' + ton "But right now, it's mostly droves of paperwork." ("open", "closed", "annoyed", "mid") + ton "Back in the day, they never used to bother with it." ("upset", "base", "base", "mid") + gen "Don't you have people for that sort of thing?" ("base", xpos="far_left", ypos="head") + ton "We're our own division, and are supposed to follow strict guidelines set by the ministry." ("open", "closed", "base", "mid") + ton "There was too much bad stuff happening for anyone to lecture the aurors though..." ("normal", "base", "annoyed", "R") + gen "Then why did you stay?" ("base", xpos="far_left", ypos="head") + ton "I'm here, aren't I?" ("upset", "base", "raised", "mid") + ton "Why do you think I jumped on the opportunity to teach here?" ("open", "base", "base", "mid") + gen "(You kind of created that opportunity yourself...)" ("base", xpos="far_left", ypos="head") + ton "I learned a lot, though, and I always wanted to use that knowledge to teach others..." ("base", "narrow", "base", "mid") + ton "I just didn't think I was up for it yet. Not until I stepped through these halls again..." ("open", "base", "base", "mid") + ton "It made me realise how much I've missed being here." ("grin", "wide", "shocked", "mid") + + jump end_tonks_hangout + + +label nt_he_story_E6: + ton "Did I ever tell you about the time we arrested a vampire?" ("open", "wide", "base", "mid", ypos="head", flip=False) + gen "You haven't even told me about your \"defence against the dark arts\" training yet, but sure, go ahead..." ("base", xpos="far_left", ypos="head") + ton "Right... Well, there was this vampire guy." ("soft", "base", "base", "R") + ton "We spent ages looking for him, and found that he had been disguising himself as a headmaster of a muggle school." ("mad", "narrow", "base", "downR") + gen "..." ("base", xpos="far_left", ypos="head") + ton "It was quite disgusting what he was doing to the students actually..." ("annoyed", "closed", "angry", "mid") + ton "He even brought over some of the teachers... They're never going to be the same..." ("disgust", "closed", "angry", "R") + gen "..." ("base", xpos="far_left", ypos="head") + ton "Corrupted... Forever..." ("soft", "closed", "angry", "mid") + gen "(Not sure if I should feel bad at this point...)" ("base", xpos="far_left", ypos="head") + ton "Kind of hot, though... don't you think?" ("horny", "wink", "angry", "mid") + gen "(Never mind...)" ("base", xpos="far_left", ypos="head") + ton "The immense power vampires have over their prey..." ("horny", "base", "raised", "ahegao") + ton "It's a shame that they're slaves to their own urges." ("open", "closed", "worried", "mid") + gen "(Well... there's that bad feeling I felt before.)" ("base", xpos="far_left", ypos="head") + ton "I get it though. Some aspects of it at least..." ("upset", "base", "base", "R") + + jump end_tonks_hangout + + +label nt_he_story_intro_E7: + call bld + gen "Now, I'm starting to feel like you've been avoiding the subject of your auror training." ("base", xpos="far_left", ypos="head") + ton "Is it that obvious?" ("mad", "base", "base", "R", ypos="head", flip=False) + gen "You brought up vampires last time without even saying hello." ("base", xpos="far_left", ypos="head") + ton "Vampires are interesting..." ("soft", "base", "worried", "downR") + gen "..." ("base", xpos="far_left", ypos="head") + ton "Fine, I didn't want to talk about some of Moody's teaching methods..." ("open", "closed", "base", "mid") + ton "They tend to be quite... unconventional." ("clench", "base", "base", "R") + gen "Like how?" ("base", xpos="far_left", ypos="head") + ton "Well..." ("upset", "base", "shocked", "down") + ton "Moody very much believed in learning by doing." ("open", "base", "base", "mid") + gen "Sounds reasonable enough..." ("base", xpos="far_left", ypos="head") + ton "This is defence against dark magic we're speaking of..." ("open", "base", "raised", "mid") + ton "Some of the spells and situations he put me in are borderline -- if not completely -- illegal." ("open", "base", "angry", "mid") + gen "Surely in a controlled environment where there's no harm to both parties..." ("base", xpos="far_left", ypos="head") + ton "Well... That was true most of the time..." ("clench", "base", "base", "R") + ton "(I can't believe I'm talking about this...)" ("upset", "base", "worried", "down") + ton "(The ministry will kick Moody out faster than a Blast-ended Skrewt going off if I'm not careful...)" ("mad", "base", "worried", "R") + + jump end_tonks_hangout + + +label nt_he_story_E8: + ton "I'll tell you about this one time where Moody went a bit too far." ("normal", "base", "base", "downR", ypos="head", flip=False) + gen "Where did this sudden urge of sharing come from?" ("base", xpos="far_left", ypos="head") + ton "Oh, I've been wanting to spill the beans about this for ages. I just didn't want to get anyone in trouble at the ministry..." ("normal", "closed", "base", "mid") + gen "What's to say I won't get you into trouble?" ("base", xpos="far_left", ypos="head") + ton "You won't... Would you?" ("open", "shocked", "worried", "mid") + gen "No..." ("base", xpos="far_left", ypos="head") + ton "Right..." ("upset", "closed", "base", "mid") + ton "Anyway, he once brought in this werewolf that we had put in custody." ("mad", "base", "base", "down") + gen "He did what?!?" ("angry", xpos="far_left", ypos="head") + ton "See, I knew you'd react like that." ("disgust", "narrow", "shocked", "down") + gen "No, I was just taken by surprise... I didn't know they existed." ("base", xpos="far_left", ypos="head") + ton "Of course they do, silly!" ("soft", "narrow", "annoyed", "R") + ton "So, he brought in this werewolf... apparently quite harmless comparatively." ("open", "base", "base", "R") + gen "Compared to what? A dog?" ("base", xpos="far_left", ypos="head") + ton "Compared to werewolves like Fenrir Greyback..." ("upset", "closed", "angry", "L") + gen "Oh yeah..." ("base", xpos="far_left", ypos="head") + gen "That...{w=0.4} Guy..." ("base", xpos="far_left", ypos="head") + ton "Moody had worked out a deal with this guy..." ("open", "base", "base", "mid") + ton "To see how I would react in a real life situation where he would turn." ("annoyed", "base", "angry", "mid") + gen "Turn where?" ("base", xpos="far_left", ypos="head") + ton "Into a werewolf." ("clench", "closed", "angry", "mid") + gen "Of course." ("base", xpos="far_left", ypos="head") + ton "So, the thing is... we hadn't taken into account that it was mating season for them..." ("mad", "narrow", "base", "down") + gen "You don't say!" ("grin", xpos="far_left", ypos="head") + ton "The guy wasn't that interested in biting me that's for sure." ("soft", "base", "base", "downR") + ton "So you can see why I wasn't so keen on reporting it. More of an embarrassing situation sort of thing than anything else." ("open", "base", "base", "R") + ton "And it was totally our fault, I should've recognised the signs straight away... when they're turned they're largely driven by their instincts." ("open", "base", "shocked", "down") + gen "I see." ("base", xpos="far_left", ypos="head") + ton "Dated him for a while..." ("horny", "base", "base", "R") + gen "You did what?" ("angry", xpos="far_left", ypos="head") + ton "Satiated my need for a dominant male relationship for a couple of months, that's for sure..." ("base", "narrow", "angry", "down") + gen "(That explains a few things...)" ("base", xpos="far_left", ypos="head") + + jump end_tonks_hangout + + +label nt_he_story_intro_E9: + ton "Being an auror was quite a stressful job you know." ("open", "closed", "shocked", "mid", ypos="head", flip=False) + gen "I--" ("base", xpos="far_left", ypos="head") + ton "The ministry was mostly concerned about the criminals making up for their crimes." ("open", "base", "angry", "mid") + ton "But I was more concerned about the victims involved." ("open", "closed", "base", "mid") + ton "So, sometimes there would be a situation that I'd take into my own hands." ("open", "closed", "shocked", "mid") + gen "Such as?" ("base", xpos="far_left", ypos="head") + ton "Well, there was this one guy that used a love potion..." ("normal", "narrow", "base", "R") + gen "A love potion, too bad they aren't real..." ("base", xpos="far_left", ypos="head") + ton "Of course they're real, and quite effective as well." ("open", "wide", "base", "mid") + ton "Also... highly illegal." ("soft", "closed", "base", "mid") + gen "Oh, of course..." ("base", xpos="far_left", ypos="head") + ton "Anyway..." ("open", "base", "base", "L") + ton "He could've ended up in prison... but law isn't black and white like that." ("open", "base", "base", "mid") + gen "So you're saying that his intentions were good?" ("base", xpos="far_left", ypos="head") + ton "In this instance, the woman in question was in an abusive relationship." ("open", "base", "base", "R") + ton "And the guy knew that the boyfriend was the jealous type..." ("open", "base", "base", "mid") + gen "I see, so he fed her the potion to get her out of it." ("base", xpos="far_left", ypos="head") + ton "Right... I mean jealousy isn't that bad in a playful relationship. But it wasn't like that." ("normal", "base", "base", "downR") + gen "Wait a second, how did you even know the guy wasn't just saying this because the potion is illegal?" ("base", xpos="far_left", ypos="head") + ton "Because I used truth serum." ("grin", "base", "raised", "mid") + gen "And that isn't illegal or regulated as well?" ("base", xpos="far_left", ypos="head") + ton "As I said... Law is more complicated than that, and in certain instances using a truth serum would be the right thing to do." ("mad", "base", "base", "mid") + ton "And to be honest, who was he going to tell... It's not like he had the moral high ground." ("annoyed", "closed", "base", "mid") + gen "I see, then how did the situation end up?" ("base", xpos="far_left", ypos="head") + ton "The girl got out of the abusive relationship and requested to have her memory adjusted." ("open", "wide", "shocked", "mid") + gen "And that's--" ("base", xpos="far_left", ypos="head") + ton "That's fine if the person in question is okay with it." ("open", "base", "base", "R") + ton "They have to sign a form and all that..." ("base", "base", "base", "mid") + gen "Obviously..." ("base", xpos="far_left", ypos="head") + gen "(Where do these people draw the line... making someone fall in love with you just like that?)" ("base", xpos="far_left", ypos="head") + gen "(...)" ("base", xpos="far_left", ypos="head") + + jump end_tonks_hangout + + +label nt_he_story_intro_E10: + call bld + gen "Settled in okay?" ("base", xpos="far_left", ypos="head") + ton "Yes, I finally feel like I've found some sort of daily routine." ("grin", "wide", "base", "mid", ypos="head", flip=False) + ton "This school brings back so many memories. It's like, every time I turn a corner I expect to see one of my old classmates." ("open", "base", "shocked", "R") + gen "So, good memories?" ("base", xpos="far_left", ypos="head") + ton "Mostly, it's a bit different now." ("base", "narrow", "shocked", "down") + gen "In what way?" ("base", xpos="far_left", ypos="head") + ton "Well, there wasn't any of this favour business going on for one." ("horny", "base", "base", "R") + ton "But the students and teachers were pretty much the same." ("base", "base", "raised", "down") + gen "So, what was the real old man like?" ("base", xpos="far_left", ypos="head") + ton "Unobtrusive..." ("open", "base", "raised", "R") + gen "What does that mean?" ("base", xpos="far_left", ypos="head") + ton "I only really saw him during larger festivities, he mostly spent his time in this office." ("open", "base", "base", "down") + gen "So that's why Snape wanted me to stay put..." ("base", xpos="far_left", ypos="head") + + jump end_tonks_hangout + + +label nt_he_story_E11: + $ tonks_morph_known = True + call bld + gen "Tell me more about your time at Hogwarts, as a student..." ("base", xpos="far_left", ypos="head") + ton "Of course, [ton_genie_name]." ("base", "base", "base", "mid", ypos="head", flip=False) + ton "Well, as you may or may not know. I'm a metamorphmagus." ("open", "base", "base", "R") #metamorphmagus is a latin based word, therefore "-us" is the singular version and "-i" is the plural + ton "It means I can change my physical appearance at will." ("base", "base", "raised", "mid") + gen "Sounds useful." ("base", xpos="far_left", ypos="head") + ton "It can be." ("base", "base", "base", "L") + ton "Since you can't reprimand me about it, I might as well tell you a bit about it." ("open", "base", "raised", "mid") + gen "I'm still your boss." ("base", xpos="far_left", ypos="head") + ton "You gonna put me in detention?" ("horny", "base", "base", "mid") + ton "Or put me over your knee and spank me?" ("horny", "base", "angry", "mid") + gen "Don't tempt me." ("grin", xpos="far_left", ypos="head") + ton "There was this time where I changed into professor Snape." ("grin", "narrow", "base", "mid") + gen "Why Snape?" ("base", xpos="far_left", ypos="head") + ton "Well, he was the most likely not to be in the staff room. Which is where I wanted to get in." ("grin", "narrow", "base", "R") + gen "Why's that?" ("base", xpos="far_left", ypos="head") + ton "He never leaves the dungeons does he?" ("open", "wide", "raised", "mid") #pretty sure in the books they always refer to it as multiple dungeons but could be wrong + ton "Just take one look at his pasty face and you'll see..." ("mad", "base", "base", "downR") + ton "Don't tell him I said that..." ("clench", "base", "base", "mid") + gen "..." ("grin", xpos="far_left", ypos="head") #[Smirk] + ton "So... I changed into professor Snape and went towards the staff room..." ("base", "base", "annoyed", "R") + gen "Isn't the staff room just full of boring old teachers?" ("base", xpos="far_left", ypos="head") + #ton "Have you used a mirror lately?" ("open", "base", "raised", "mid") + ton "My goal wasn't to talk with the teachers..." ("open", "closed", "base", "mid") + ton "I was trying to get a key to the prefects' bathroom." ("base", "base", "angry", "mid") + gen "And you couldn't just turn into a prefect, and get in there that way?" ("base", xpos="far_left", ypos="head") + ton "Well, that would've been the clever thing to do..." ("open", "base", "raised", "R") + ton "Although like everything else in this school, the bathroom has a password and not a key..." ("normal", "closed", "annoyed", "mid") + ton "Of course I didn't know that... I had just heard rumours about the bathroom." ("clench", "narrow", "worried", "R") + gen "So did you manage to get in there in the end?" ("base", xpos="far_left", ypos="head") + ton "Oh yeah, it was easy!" ("base", "wink", "base", "mid") + ton "Once I knew about the password I just had to pretend to be one of the prefects, and ask another for it." ("open", "wide", "base", "mid") + gen "Smart..." ("base", xpos="far_left", ypos="head") + + jump end_tonks_hangout + + +label nt_he_story_E12: + call bld + gen "Tell me more about that shapeshifting ability of yours..." ("base", xpos="far_left", ypos="head") + ton "Of course..." ("base", "wide", "shocked", "mid", ypos="head", flip=False) + ton "Most of my escapades were kind of one trick ponies." ("open", "base", "base", "R") + gen "Sounds pretty foolproof to me..." ("base", xpos="far_left", ypos="head") + gen "I mean how many other students could change their appearance?" ("base", xpos="far_left", ypos="head") + ton "None, that's why. Process of elimination." ("upset", "base", "raised", "downR") + gen "So you got punished without any sort of proof?" ("base", xpos="far_left", ypos="head") + ton "No, but they set up countermeasures after the time when..." ("open", "base", "raised", "R") + ton "I shouldn't really talk about it. They never confronted me about it so fessing up now isn't going to do me any good." ("mad", "narrow", "worried", "down") + gen "Not a word leaves this office." ("base", xpos="far_left", ypos="head") + ton "Do you think I'm weird?" ("open", "narrow", "shocked", "down") + gen "Everyone is a bit... weird..." ("base", xpos="far_left", ypos="head") + ton "Fine, I'll tell you." ("base", "closed", "shocked", "down") + ton "You might have noticed that I'm a bit more comfortable with my sexuality than most people." ("open", "base", "base", "mid") + gen "(Oh, here we go!)" ("grin", xpos="far_left", ypos="head") + ton "I already told you about the whole werewolf thing, and the power play fantasies with the vampire..." ("open", "base", "base", "R") + gen "Well, you didn't phrase it that bluntly before but I got the gist." ("base", xpos="far_left", ypos="head") + ton "Well, just like many weird or odd sexual preferences they're often deeply embedded with experiences from your youth." ("open", "base", "worried", "L") + ton "So for me, there was this one time where I pretended to be a teacher..." ("open", "base", "worried", "mid") + ton "As in, I literally took over their lesson when they were ill." ("mad", "base", "base", "down") + gen "How did you manage that, weren't the students notified of their leave beforehand?" ("base", xpos="far_left", ypos="head") + ton "No. There was just a note on the door, so I ripped it off before the class got there." ("open", "closed", "base", "mid") + gen "Seems like a flawed system..." ("base", xpos="far_left", ypos="head") + ton "Yeah, afterwards a lot of the teachers changed the way they do it. Not the new ones though..." ("grin", "base", "base", "downR") + gen "You haven't told me which class this was. Did you turn into Snape and teach potions?" ("base", xpos="far_left", ypos="head") + ton "Of course not! Snape would've made my life hell, and I wasn't going to make someone hurt themself." ("open", "base", "annoyed", "down") + ton "It was charms..." ("mad", "base", "base", "down") + gen "Right..." ("base", xpos="far_left", ypos="head") + ton "I had been practising some charms, and taught myself a couple on my own, like the one for invisibility..." ("crooked_smile", "base", "base", "down") + gen "Impressive." ("base", xpos="far_left", ypos="head") + ton "Thanks... Normally you wouldn't learn that one until much later, so you'd easily be able to dispel it." ("silly", "happyCl", "base", "mid") + gen "But you decided it was a good idea to teach it anyway?" ("base", xpos="far_left", ypos="head") + ton "I didn't say it was a good idea." ("mad", "base", "base", "mid") + ton "It didn't end up working anyway..." ("upset", "base", "worried", "R") + ton "Instead of the charm making the students' whole body transparent, it just made their clothes vanish!" ("open", "closed", "base", "mid") + ton "Whilst it wasn't intentional, the memory of it still excites me a bit." ("base", "base", "base", "down") + ton "And that's where that particular fetish came from..." ("soft", "base", "base", "mid") + gen "Hold on, there's a spell to make only the clothes invisible?" ("angry", xpos="far_left", ypos="head") + ton "That's what you focus on?" ("open", "base", "raised", "mid") + gen "Well, yeah! Sound to me like you invented a new spell that no one's ever heard of..." ("base", xpos="far_left", ypos="head") + gen "And it can make people's clothing invisible?! That's kind of a big deal!" ("angry", xpos="far_left", ypos="head") + ton "It's not a new spell... it was just novice wizards and witches not being powerful enough to cast it properly..." ("upset", "wide", "shocked", "mid") + ton "Similarly to splinching." ("clench", "base", "raised", "R") + gen "(That sounds disgusting...)" ("base", xpos="far_left", ypos="head") + ton "Anyway, the teachers played it off as an accident... though poor Flitwick had his magical abilities questioned by the students for a while." ("upset", "base", "shocked", "down") + ton "And they tried to set up some more countermeasures towards my abilities at that point." ("open", "base", "annoyed", "R") + ton "Not that they worked that well... After that I was a bit more selective with my usage, and actually thought about the consequences a bit before using it." ("mad", "narrow", "annoyed", "R") + gen "Well, you do start thinking more about others as you get older..." ("base", xpos="far_left", ypos="head") + ton "Yeah well, my sexual drive started to take the upper hand on my decisions from that point on, so it evened out." ("base", "happyCl", "base", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + + jump end_tonks_hangout + + + +### Centaur Story ### + +# Will be something other than a hangout event as you can't have a jerk-off interaction during them. +# Substitute Teacher for Care for Magical Creatures maybe? + +label nt_he_story_centaur: # Not in use. + ton "..." ("upset", "base", "worried", "mid") + ton "Very well, Professor.{w} I think I can make an exception for you." ("open", "base", "base", "R") + gen "And spare no details." ("grin", xpos="far_left", ypos="head") + ton "I have your word that you will not tell a soul about any of this?" ("open", "base", "base", "mid") + gen "Yes... now tell me!" ("angry", xpos="far_left", ypos="head") + + ton "Very well..." ("upset", "base", "worried", "down") + ton "First you should know, there aren't many witches that could take on and calm a large group of wild centaurs..." ("open", "base", "worried", "mid") + ton "Most would foolishly try to intimidate or threaten them, and rely on their wands and spells to keep them at bay, which would only make matters worse..." ("open", "base", "worried", "R") + ton "But that's not how I handle \"conflict\" with those beastly creatures..." ("base", "base", "base", "mid") + gen "Yes?!" ("grin", xpos="far_left", ypos="head") + gen "(I like where this is going!)" ("base", xpos="far_left", ypos="head") + + call nar(">*Fap!* *Fap!* *Fap!*") + ton "Centaurs don't do well with Ministry personnel{w} Even less so with female witches such as myself..." ("open", "base", "raised", "mid") + ton "Making them a compelling offer so they'd peacefully return to their assigned territory was quite...{w} challenging {heart}" ("horny", "base", "base", "R") + gen "Go on..." ("angry", xpos="far_left", ypos="head") + ton "All I did was do them a small favour.{w} A little service the Ministry would never even think of providing them with." ("mad", "base", "worried", "down") + ton "But I did it anyway..." ("base", "base", "angry", "mid") + gen "*Argh!* What did you do?" ("angry", xpos="far_left", ypos="head") + ton "Well, I simply helped them release some of their stored up tension..." ("open", "base", "base", "R") + ton "And stroked their manhoods with my hands..." ("horny", "base", "base", "mid") + + gen "Yes! How filthy!" ("grin", xpos="far_left", ypos="head") + ton "*Hmph?!* You believe what I did was filthy, Professor?!" ("base", "wide", "shocked", "stare") + ton "*Ehm*... I mean, it depends on how you look at it..." ("upset", "base", "worried", "down") + ton "It's by far the simplest way to calm down a group of wild centaurs..." ("open", "base", "worried", "R") + ton "As far as I could tell, they didn't have any females within their group..." ("open", "base", "base", "mid") + ton "You can imagine the amount of tension that gets built up as a result of that..." ("mad", "base", "base", "mid") + ton "(Inside those heavy, cum-filled balls!)" ("horny", "base", "base", "ahegao", hair="horny") # ahegao + gen "So your idea was to jerk them off?" ("base", xpos="far_left", ypos="head") + + ton "Well, yes.{w} They can't easily reach around to do it themselves now, can they?" ("horny", "base", "base", "mid") + gen "(Those poor bastards!)" ("base", xpos="far_left", ypos="head") + + gen "Must have been a real...{w}*argh*!- relief for them!" ("angry", xpos="far_left", ypos="head") + ton "I believe so too, Sir." ("base", "base", "base", "mid") + ton "You should know, I never shy away from getting my hands dirty!" ("horny", "base", "raised", "mid", hair="horny") + gen "*Agh!* Fuck! I'm getting close..." ("angry", xpos="far_left", ypos="head") + ton "Most of the Ministry view Centaurs as \"lesser\" beings... As animals." ("open", "base", "base", "R") + ton "But not me. To me they're all powerful, and magnificent creatures." ("base", "base", "angry", "mid") + ton "And it's known that above all they embody strength, dominance, and lust..." ("open", "base", "base", "mid") + ton "(And they are so{w} fucking{w} hung!!!)" ("horny", "base", "base", "ahegao", hair="horny") # Ahegao + + #Genie cums + stop music fadeout 1.0 + gen "Yes! Here it comes!" ("angry", xpos="far_left", ypos="head") + + call cum_block + call gen_chibi("cum_behind_desk") + with d3 + pause 1 + + ton "For a Ministry person to submit the way I did was quite the shock to them..." ("open", "base", "raised", "R", hair="horny") + + call cum_block + gen "*Argh* You horse-cock-loving whore!" ("base", xpos="far_left", ypos="head") + ton "I have to say, Professor, now that I've told you.{w} I feel quite embarrassed about it!" ("mad", "closed", "worried", "mid") + + call cum_block + gen "You dirty slut!" ("angry", xpos="far_left", ypos="head") + + ton "(I'd better not tell him what I had to do for their chieftain...)" ("mad", "base", "worried", "L", hair="horny") + ton "(I can still taste him) {heart} {heart} {heart}" ("horny", "base", "base", "ahegao", hair="horny") + + call hide_characters + hide screen bld1 + with d3 + + call gen_chibi("cum_behind_desk_done") + with d3 + pause.5 + + call bld + gen "(Fuck me, that felt great!)" ("angry", xpos="far_left", ypos="head") + + ton "A remarkable wizard such as yourself would never even consider solutions of such..." ("open", "base", "base", "mid") + ton "Depravity..." ("horny", "base", "base", "R", hair="horny") + gen "Are you asking me whether or not I'd jerk of a Centaur?..." ("base", xpos="far_left", ypos="head") + gen "Because that would be a clear \"no\" from me..." ("base", xpos="far_left", ypos="head") + + ton "Professor, I've never told anybody about my experiences as an Auror..." ("mad", "base", "worried", "down") + gen "Are there more \"experiences\" you could tell me about?" ("base", xpos="far_left", ypos="head") + ton "Well... I have been an Auror for quite a while now, so... I do have a couple." ("open", "base", "worried", "R") + gen "Great! I'd love to hear them!" ("grin", xpos="far_left", ypos="head") + + jump end_tonks_hangout + + + #(Not in use. Can be written into a Hangout event.) + #ton "In fact I caught one of your teachers engaged in rather...{w=0.3} adulterous activities with a couple of students." + #gen "A couple...{w} Like, at the same time?" ("base", xpos="far_left", ypos="head") + #ton "Panty pictures!" + #gen "What!" ("base", xpos="far_left", ypos="head") + #ton "Well, I'm fine with any photographs really, ankles, butts, underwear..." + #m "I see...{nw} + #ton "Feet!" + #gen "Feet?" ("angry", xpos="far_left", ypos="head") + #ton "Well, anything I can get really." + #gen "(This lady's a pervert...)" ("base", xpos="far_left", ypos="head") + #ton "There seems to be a great opportunity here..." + #gen "I'd rather keep my shoes on thank you!" ("base", xpos="far_left", ypos="head") + #ton "Not that, silly." diff --git a/game/scripts/characters/tonks/events/intro.rpy b/game/scripts/characters/tonks/events/intro.rpy new file mode 100644 index 00000000..d0882d60 --- /dev/null +++ b/game/scripts/characters/tonks/events/intro.rpy @@ -0,0 +1,916 @@ + + +### Tonks Intro ### + +label tonks_intro_E1: + stop music fadeout 1.0 + call play_sound("knocking") + call bld + "*Knock-knock-knock*" + gen "(...)" ("base", xpos="far_left", ypos="head") + + call play_sound("knocking") + "*Knock-knock-knock*" + gen "(Can't I even have one quiet day here?...)" ("base", xpos="far_left", ypos="head") + gen "Who is it?" ("base", xpos="far_left", ypos="head") + ton "It's Tonks--" + ton "*Ugh*..." + gen "..................." ("base", xpos="far_left", ypos="head") + ton "I meant, Nymphadora Tonks, Sir." + gen "(Nympho...{w=0.6} what?)" ("base", xpos="far_left", ypos="head") + ton "Ministry of Magic, Auror division.{w=0.8} May I come in, Sir?" + + if letter_favors.read: + gen "(Oh shit, the fuzz!!!)" ("angry", xpos="far_left", ypos="head") + gen "(I thought they would have forgotten about those damn letters by now...)" ("base", xpos="far_left", ypos="head") + ton "Sir, I'm here to discuss an important matter with you regarding your students." + gen "(Governments are all the same with their bloody rules.)" ("base", xpos="far_left", ypos="head") + ton "Sir?" + gen "(...)" ("base", xpos="far_left", ypos="head") + else: + gen "(Another female?)" ("base", xpos="far_left", ypos="head") + gen "(She sounds a bit too old to be a student...)" ("base", xpos="far_left", ypos="head") + gen "(...)" ("base", xpos="far_left", ypos="head") + + menu: + gen "(Should I let her in?)" ("base", xpos="far_left", ypos="head") + "\"Please, come on in.\"": + call bld + gen "(Better to just let my charm play...)" ("grin", xpos="far_left", ypos="head") + "\"Not right now.\"": + call bld + ton "But, Sir..." + ton "I've travelled across half the country just to get here." + gen "........................." ("base", xpos="far_left", ypos="head") + ton "Via apparition, of course. It only took me a couple of seconds..." + ton "But still, it's quite a long walk up here from Hogsmeade..." + ton "I'd just like to get this over with. May I come in, Sir?" + gen "(I wouldn't mind having a look at her...)" ("base", xpos="far_left", ypos="head") + gen "(There is something special about women in uniform...)" ("base", xpos="far_left", ypos="head") + ton "Sir?" + gen "*Uhm* Yes, you may enter..." ("base", xpos="far_left", ypos="head") + + #Tonks walks in + call bld("hide") + pause.2 + + call play_sound("door") + call ton_chibi("stand","door","base") + call chibi_emote("hearts", "tonks") + with d3 + pause.5 + + call chibi_emote("hide", "tonks") + with d3 + pause.1 + + call bld + gen "*Hmm*?" ("base", xpos="far_left", ypos="head") + + call ton_walk("desk", "base") + pause.5 + + $ tonks.set_face(mouth="base", eyes="base", eyebrows="base", pupils="mid") + $ camera.set_imagepath("common/") + $ camera.set_image("CG tonks") + if game.daytime: + $ camera.set_overlay("day_overlay") + else: + $ camera.set_overlay("night_overlay") + $ camera.set(zoom=1.0, pos=(-1040, -35), initialize=True) + show screen animatedCG + with fade + + call play_music("tonks") + ton "Thank you, Professor." ("base", "base", "base", "mid", xpos="right", ypos="base", trans=d3) + + $ camera.set(zoom=1.0, pos=(-1040, -600), t=5.0) + gen "(Oh shit,{w=0.1} she's hot...)" + + $ camera.set(zoom=0.5, pos=(-270, -150), t=3.0) + ton "I apologise for arriving unannounced...{w=0.8} And a couple of days late..." ("open", "base", "base", "R") + gen "Please, I'm glad you could make it." + ton "I was occupied with some unfinished ministry business. Took me a lot longer to solve than I had anticipated..." ("normal", "narrow", "base", "mid") + + ton "I had quite the \"pleasant\" encounter with a group of centaurs." ("soft", "wide", "raised", "R") + gen "Centaurs?!" + ton "*Mhmm*..." ("base", "base", "base", "mid", hair="horny") + ton "As usual, they ignored the boundaries of their allocated territory." ("open", "closed", "base", "mid") + ton "I had to get them to comply with our rules, to the best of my abilities..." ("soft", "base", "base", "mid") + gen "Is that so?..." + + menu: + "-Start jerking off!-": + $ genie_masturbating = True + $ jerked_off_during_tonks_intro = True + call gen_chibi("jerk_off_behind_desk") + hide screen animatedCG + with fade + + call nar(">You take out your cock and start jerking off.") + + gen "Tell me more!" ("grin", xpos="far_left", ypos="head") + + "-Pay attention-": + $ genie_masturbating = False + $ jerked_off_during_tonks_intro = False + hide screen animatedCG + with fade + gen "Tell me about it..." ("base", xpos="far_left", ypos="head") + + if genie_masturbating: + ton "Oh... about the centaurs?" ("annoyed", "base", "raised", "mid") + gen "Yes, centaurs!" ("base", xpos="far_left", ypos="head") + gen "Half of a man, and the other half that of a horse?" ("angry", xpos="far_left", ypos="head") + ton "Yes?" ("normal", "narrow", "raised", "mid") + gen "With the bottom half being that of a{w=0.2}.{w=0.2}.{w=0.2}.{w=0.6} horse?!" ("base", xpos="far_left", ypos="head") + ton "Of course, Sir." ("base", "base", "shocked", "mid") + gen "(Sweet!)" ("grin", xpos="far_left", ypos="head") + gen "Just wanted to check if I still knew my mythology..." ("base", xpos="far_left", ypos="head") + gen "(And it wasn't just dudes with horse heads...)" ("angry", xpos="far_left", ypos="head") + gen "(That would have been weird...)" ("base", xpos="far_left", ypos="head") + + ton "They are fascinating creatures, aren't they, Professor?" ("soft", "base", "base", "R", trans=dissolve) + gen "What?{w} Oh yes, very fascinating..." ("base", xpos="far_left", ypos="head") + + call nar("*Fap-Fap-Fap*!") + gen "Don't mind me... Please continue..." ("base", xpos="far_left", ypos="head") + gen "I'd like to hear more about the things you did with those centaurs!" ("grin", xpos="far_left", ypos="head") + ton "I'm sorry Professor, but that's classified information." ("open", "closed", "shocked", "mid") + ton "The Ministry would be furious if they knew I had told you!" ("upset", "wide", "raised", "mid") + ton "(Not that I would mention any of it... They'd probably sack me on the spot for that...)" ("mad", "base", "worried", "R", cheeks="blush") + ton "(I did the job. That's all that should matter to them...)" ("upset", "base", "base", "down") + gen "Come on! ..." ("angry", xpos="far_left", ypos="head") + ton "I'm sorry, Professor, but I really shouldn't!" ("open", "base", "base", "mid") + ton "Anyway, sharing stories is not why I came here." ("normal", "base", "base", "R") + gen "(Balls...)" ("base", xpos="far_left", ypos="head") + + # Stop Masturbating + $ genie_masturbating = False + call gen_chibi("sit_behind_desk") + with d3 + pause.8 + + else: + ton "Of course, Sir." ("base", "base", "base", "mid") + ton "I had to make a compelling offer so they'd peacefully return to their assigned territory, which isn't easy..." ("open", "base", "base", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + ton "You'd never be able to guess how I did it, it's quite the story." ("horny", "base", "base", "R", hair="horny") + ton "Unfortunately, I cannot tell you...{w} Strictly confidential Ministry information..." ("soft", "base", "raised", "mid") + gen "(Why? Did she suck them off?)" ("base", xpos="far_left", ypos="head") + ton "Okay then, let's get this over with." ("open", "narrow", "base", "R") + + ton "Professor Dumbledore, are you aware of why the Ministry has sent me here?" ("open", "wide", "raised", "mid", trans=dissolve) + + if letter_favors.read: + gen "More or less..." ("base", xpos="far_left", ypos="head") + ton "We have received a letter from a Miss named \"Hermione Granger\", about the trading of... \"favours\" between staff and students at this school." ("open", "base", "base", "mid") #not sure if it's better to put miss in quotations or not. My logic is that the fact that she is a "miss" is a given, the name however is something the ministry may not know hence the quotations + gen "Yes she very much enjoys doing that..." ("base", xpos="far_left", ypos="head") + ton "Trading favours?" ("soft", "base", "raised", "mid") + gen "(I wish...)" ("base", xpos="far_left", ypos="head") + gen "No. She enjoys writing letters...{w} lots of 'em..." ("base", xpos="far_left", ypos="head") + else: + gen "I can't say that I am." ("base", xpos="far_left", ypos="head") + ton "So you haven't had any complaints from students in regards to \"favour trading\"?" ("open", "base", "raised", "mid") + gen "(Oh, fuck...)" ("angry", xpos="far_left", ypos="head") + gen "That depends...{w=0.3} What sort of favours are you referring to?" ("grin", xpos="far_left", ypos="head") + ton "..." ("base", "base", "angry", "mid") + ton "Well, we've received a letter from a Miss \"Hermione Granger\"." ("open", "base", "base", "L") #same here as line 159 + gen "Oh, good..." ("base", xpos="far_left", ypos="head") + gen "..." ("angry", xpos="far_left", ypos="head") + + ton "I take it that you're acquainted with Miss Granger?" ("open", "base", "base", "mid") + gen "You could say that..." ("base", xpos="far_left", ypos="head") + ton "Fantastic! Let's get right to it then!" ("grin", "base", "base", "mid") #the second line was superfluous. You already established the point of the meeting earlier, so the reader knows what "let's get right to it" means + gen "..." ("base", xpos="far_left", ypos="head") + show screen blktone + with d5 + gen "(I need to be smart about this...)" ("base", xpos="far_left", ypos="head") + hide screen blktone + with d5 + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"I had no sexual relations with that woman!\"": + ton "Sir?" ("upset", "wide", "shocked", "stare") + ton "I'm sorry Professor, I wasn't accusing you of--" ("soft", "base", "worried", "downR") + gen "I repeat, I had no sexual relations with that woman." ("base", xpos="far_left", ypos="head") + ton "Professor! I wasn't implying that--..." ("mad", "base", "raised", "mid") + ton "In the letter she wrote, Miss Granger never accused you of selling favours to your students..." ("mad", "base", "raised", "L") + ton "Nonetheless, she was very persistent that certain other teachers weren't behaving as adequately..." ("soft", "base", "base", "mid") + + "\"What did she want?\"": + ton "Miss Granger wrote about several students, most commonly girls of the Slytherin House, that were inclined to do favours for their male teachers." ("open", "base", "base", "R") #Tonks is a hogwarts graduate. Slytherin doesn't need to be in quotations, she knows what it is. + gen "So what?" ("base", xpos="far_left", ypos="head") + ton "According to her letter, those favours tend to be very...{w=0.1} \"sexual\" in nature..." ("soft", "base", "raised", "mid", hair="horny") + + gen "(Shit...)" ("base", xpos="far_left", ypos="head") + ton "Professor, this is a very serious allegation, don't you agree that the ministry is under an obligation to investigate?" ("open", "wide", "raised", "mid") + gen "..........................................{w} No?" ("base", xpos="far_left", ypos="head") + ton "I'm sorry?" ("upset", "base", "raised", "mid") + gen "Well, I can't say I'm very well versed in these...{w=0.8} very,{w=0.6} very rare occurrences." ("angry", xpos="far_left", ypos="head") + gen "I was actually just about to begin my own investigation in the matter." ("base", xpos="far_left", ypos="head") + ton "The Ministry has sent me specifically to determine if there is any truth to Miss Granger's concerns..." ("open", "base", "base", "L") + ton "I'll be happy to look into this for you." ("soft", "base", "base", "mid") + gen "Now, now. I wouldn't want you to waste your time with this." ("base", xpos="far_left", ypos="head") + ton "Don't worry, Professor. {i}Investigation{/i} is in my job description." ("base", "base", "angry", "mid") + ton "I'll just stay for a little while, just to examine these claims and question the students." ("open", "base", "base", "R") + gen "That won't be necessary." ("base", xpos="far_left", ypos="head") + ton "Do have some confidence in me, Professor. This is what I was trained for..." ("horny", "base", "base", "mid") + gen "................................." ("base", xpos="far_left", ypos="head") + ton "I've already gotten a room down in Hogsmeade." ("open", "base", "base", "R") + ton "I'll be staying there, so no need to worry about accommodation." ("base", "base", "base", "mid") + gen "Great..." ("base", xpos="far_left", ypos="head") + ton "I shall start right away!" ("base", "happyCl", "base", "mid") + ton "Good day, Sir." ("base", "base", "base", "mid") + + # Tonks leaves. + call ton_walk(action="leave") + + call bld + gen "This can't be good..." ("base", xpos="far_left", ypos="head") + + $ snape_busy = True + $ tonks_intro.E1_complete = True + + jump end_tonks_event + + +label tonks_intro_E2: + stop music fadeout 1.0 + call play_sound("knocking") + call bld + "*Knock-knock-knock*" + ton "Professor, it's Tonks." + ton "May I come in?" + gen "(Her again...)" ("base", xpos="far_left", ypos="head") + + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"Come in...\"": + pass + + "\"Not now, I'm busy!\"": + call bld + gen "That will have to wait, I'm afraid..." ("base", xpos="far_left", ypos="head") + ton "But Sir, I need to update you on the investigation!" + ton "Please, hear me out, Professor!" + ton "The students have been reluctant to even speak about the \"favour trading\" in my presence, which raises red flags." #idk I like this phrase more but that's subjective + ton "You'd think that if those girls were innocent, they'd be telling me about it." + gen "....................." ("base", xpos="far_left", ypos="head") + ton "Be that as it may, I will keep pushing them till they open up to me..." + gen "Good for you..." ("base", xpos="far_left", ypos="head") + ton "And they will, as soon as I can get my hands on some Veritaserum!" + ton "But Professor Snape has been very reluctant to provide me with a vial of his..." + ton "{size=-4}Very suspicious if you ask me... Very suspicious indeed...{/size}" + ton "Either way, it's only a matter of time until this will all be cleared up!" + gen "Great! I can't wait to hear about it..." ("base", xpos="far_left", ypos="head") + ton "Of course, Sir." + ton "I'll gladly spare some of my time and tell you right now, if you don't mind." + gen "Wait, what?" ("base", xpos="far_left", ypos="head") + ton "I'm coming in..." + gen "(Shit!)" ("angry", xpos="far_left", ypos="head") + + call ton_walk(action="enter", xpos="mid", ypos="base") + + call play_music("tonks") + ton "Professor." ("soft", "base", "base", "mid", xpos="right", ypos="base", trans=dissolve) + gen "Hey! If it isn't..." ("base", xpos="far_left", ypos="head") + + menu: + gen "(What was her name again?...)" ("base", xpos="far_left", ypos="head") + "\"Tonks!\"": + pass + "\"Nymphadora!\"": + ton "Sir?" ("annoyed", "base", "base", "R") + gen "What? Isn't that your name, or did I get it wrong again?" ("base", xpos="far_left", ypos="head") + ton "I'm sorry, Sir.{w=0.3} I thought that, when I was a student here, I made it very clear that I wouldn't want to be called Nymphadora--" ("normal", "closed", "annoyed", "down") + ton "Please, just call me Tonks, Professor." ("annoyed", "wide", "base", "mid") + gen "Fine..." ("base", xpos="far_left", ypos="head") + "\"Nympho-whora!\"": + ton "What?!" ("clench", "wide", "shocked", "stare") + ton "I'm sorry, Professor. I clearly must have misheard you..." ("disgust", "narrow", "annoyed", "down") + ton "What did you just call me?" ("mad", "base", "angry", "mid") + gen "*Uhm*...{w=0.5} isn't that your name?" ("base", xpos="far_left", ypos="head") + ton "My name is \"Tonks\", Professor!" ("upset", "base", "angry", "mid") + ton "You of all people should know this..." ("annoyed", "base", "angry", "R") + gen ".............." ("base", xpos="far_left", ypos="head") + gen "(Tonks...)" ("base", xpos="far_left", ypos="head") + gen "(Still a weird fucking name...)" ("base", xpos="far_left", ypos="head") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Found any evidence yet?\"": + ton "Sadly no, Professor." ("open", "base", "base", "mid") + gen "(Sadly...?)" ("base", xpos="far_left", ypos="head") + "\"How's the investigation going?\"": + pass + ton "I haven't gotten a chance to do my job properly so far." ("upset", "base", "base", "R") + ton "I've been rather preoccupied listening to Miss Granger's own {i}investigations{/i}..." ("open", "narrow", "base", "R") + ton "That girl sure is something, isn't she?" ("open", "base", "raised", "mid") + ton "Not that I mind listening to her." ("soft", "base", "shocked", "R", hair="horny") + ton "She gave me a very long report that went well into the evening, whilst I enjoyed a glass of firewhisky..." ("open", "base", "base", "mid") + ton "She has been very thorough in documenting all the happenings she's witnessed..." ("base", "base", "base", "mid") + gen "I can imagine that..." ("base", xpos="far_left", ypos="head") + ton "Anyhow... She had no proof of any illicit activities.{w} It's all just hearsay." ("open", "closed", "base", "R") + ton "As much as I wish it were true..." ("horny", "closed", "base", "R", hair="horny") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + ton "So I could conclude this whole business sooner, of course..." ("base", "narrow", "base", "downR") + ton "And bring this favour trading business to an end, once, and for all." ("open", "base", "base", "mid") + gen "Best of luck with that..." ("base", xpos="far_left", ypos="head") + ton "Thank you, Professor." ("base", "wide", "shocked", "mid") + ton "I really should get going.{w} Lots that needs to be taken care of." ("open", "base", "base", "R") + gen "Don't overwork yourself..." ("base", xpos="far_left", ypos="head") + ton "I won't Professor.{w} Have a good night." ("base", "base", "base", "mid") + + # Tonks leaves. + call ton_walk(action="leave") + + call bld + gen "Shit..." ("base", xpos="far_left", ypos="head") + gen "I better talk to Snape about this..." ("base", xpos="far_left", ypos="head") + + $ tonks_intro.E2_complete = True + + jump end_tonks_event + + +### Snape Hangout Event 1 ### +# You discuss Tonks and the Ministry with Snape. + +label ss_he_tonks_E1: + sna "........................." ("snape_31", ypos="head") + sna "That bloody wench has outdone herself, once again!" ("snape_35") + gen "Granger?" ("base", xpos="far_left", ypos="head") + sna "Yes! She and her cursed letters!" ("snape_08") + sna "I'm certain she was the one who informed the Ministry about our little escapades..." ("snape_16") + sna "And now we have an Auror breathing down our necks... All thanks to that mischievous little whore!" ("snape_15") + gen "................." ("base", xpos="far_left", ypos="head") + sna "...................." ("snape_31") + gen "On the subject of that Auror..." ("base", xpos="far_left", ypos="head") + sna "Nymphadora?" ("snape_39") + gen "Yes, the Nympho." ("base", xpos="far_left", ypos="head") + gen "She came by the other day..." ("base", xpos="far_left", ypos="head") + sna "What?!" ("snape_36") + gen "Twice, actually..." ("base", xpos="far_left", ypos="head") + sna "And you're telling me about this... now?" ("snape_32") + sna "I'm surprised you didn't blow our cover right there and then..." ("snape_16") + gen "What can I say. I'm very good with the ladies!" ("grin", xpos="far_left", ypos="head") + sna "Or you are just too lucky for your own good, more likely..." ("snape_43") + gen "That too, to a lesser extent..." ("base", xpos="far_left", ypos="head") + + if jerked_off_during_hermione_intro: + + sna "Please tell me you didn't jerk off in front of her as well..." ("snape_03") + gen "Well..." ("base", xpos="far_left", ypos="head") + sna "Did you?" ("snape_01") + + if jerked_off_during_tonks_intro: + gen "No..." ("base", xpos="far_left", ypos="head") + sna "*glares*" ("snape_04") + gen "Yes...? But I didn't finish this time..." ("base", xpos="far_left", ypos="head") + sna "What you mean by \"I didn't fin--" ("snape_08") + else: + gen "Not this time." ("base", xpos="far_left", ypos="head") + + sna "Listen, we have to be even more cautious, now that there's an Auror making her rounds..." ("snape_10") + sna "They are the ministry's private investigators." ("snape_35") + sna "One slip-up and they will have us locked up in no time!" ("snape_24") + gen "\"Us?\"..." ("base", xpos="far_left", ypos="head") + gen "What wrong did I do?" ("base", xpos="far_left", ypos="head") + sna "You snapped the most talented, clever, and most beloved wizard that's ever lived out of existence!" ("snape_10") + gen "Oh right...{w=0.3} Who was it again?" ("base", xpos="far_left", ypos="head") + sna "Albus{w=0.2} Percival{w=0.2} Wulfric{w=0.2} Brian{w=0.2} Dumbledore!" ("snape_34") + gen "..........................." ("base", xpos="far_left", ypos="head") + gen "I thought I traded places with just one person..." ("base", xpos="far_left", ypos="head") + sna "That {b}is{/b} one person!" ("snape_30", trans=hpunch) + sna "It's our headmaster's full name. And it's your name now!{w} You best make sure to remember it." ("snape_34") + gen "Yeah...{w=0.5} I'm not even going to try..." ("base", xpos="far_left", ypos="head") + sna "Let's just hope this whole Ministry situation will solve itself..." ("snape_31") + + sna "Thankfully, out of all the people the ministry could have sent..." ("snape_06") + sna "They brought that clumsy, good-for-nothing hufflepuff..." ("snape_35") + sna "As long as we keep our heads down and act as if we've nothing to hide..." ("snape_03") + sna "There will be nothing to worry about." ("snape_09") + gen "I have my doubts about that." ("base", xpos="far_left", ypos="head") + sna "Let her continue her little investigation. And you can be as unhelpfully helpful as usual..." ("snape_04") + + menu: + gen "................." ("base", xpos="far_left", ypos="head") + "{size=-2}\"That's a bit uncalled for, don't you think?\"{/size}": + sna "Maybe you're right." ("snape_06") + sna "My apologies." ("snape_09") + gen "Apologies accepted." ("base", xpos="far_left", ypos="head") + + "-Let it slide-": + pass + + gen "So..." ("base", xpos="far_left", ypos="head") + gen "What if she's not going to leave that easily?" ("base", xpos="far_left", ypos="head") + gen "Can you think of any spell, or potion to help us with that?" ("base", xpos="far_left", ypos="head") + sna "And what would this potion or spell achieve exactly?" ("snape_05") + gen "I don't know... Send her to the shadow realm or something?" ("base", xpos="far_left", ypos="head") + sna "What on earth..." ("snape_03") + sna "Actually, I'd rather not know..." ("snape_06") + sna "No, and even if there was one... we're still dealing with a trained Auror here." ("snape_01") + sna "We should keep everything running as normal." ("snape_35") + sna "Or as normal as can be, without the real Albus..." ("snape_09") + gen ".................." ("base", xpos="far_left", ypos="head") + sna "Even if she finds any concrete proof of something going on, any involvement on our part should be kept quiet at all cost." ("snape_01") + sna "And as soon as she is out of here, I'll go back to drinking wine, whilst enjoying my students' company..." ("snape_40") + gen "And Granger? What do you suggest we do with her?" ("base", xpos="far_left", ypos="head") + sna "*Tzzzgh*-{w=0.6} Like that annoying brat can do any harm to us..." ("snape_25") + sna "A girl her age would do anything for attention, is what I'd say..." ("snape_09") + sna "Do you think some student's word would be as good as the headmaster's?" ("snape_02") + sna "The Headmaster of the most respected educational institution in the country, no less..." ("snape_37") + gen "I'm the headmaster of the most respected institution in the country!?!" ("angry", xpos="far_left", ypos="head") + sna "It is also the only magical institution..." ("snape_09") + gen "...................................." ("base", xpos="far_left", ypos="head") + + ">You spend the remainder of the day with Snape, drenching your worries in plenty of wine..." + + #gen "So, what are your thoughts on this whole ministry situation?" ("base", xpos="far_left", ypos="head") + #sna "I can't say I have a very high opinion on how those fools run the place." + #sna "The Department of Magical Law Enforcement are a joke." + #sna "The only decent auror they have is Alistair Moody and he's more concerned dealing with dark magic than petty rumours to get involved with this investigation." + #sna "The minister for magic himself is a fool." + #sna "He might bring a good smile and spirits to the people during times of rebuilding after great loss." + #sna "But when it comes to making any worthwhile decisions or recognizing potential threats or misconduct..." + #gen "I was talking mostly about our current predicament rather thant he ministry at large..." ("base", xpos="far_left", ypos="head") + #sna "I know..." + #gen "..." ("base", xpos="far_left", ypos="head") + #gen "Surely you must be slightly worried." ("base", xpos="far_left", ypos="head") + #sna "I have committed many crimes much worse than chatting up some students, all of which I should've been incarcerated for." + #sna "As I said, the current ministry is a shamble of what it once was... no change will come from this." + #sna "Cornelius fudge is more interested in how the ministry looks from the outside rather than expose existing issues and dealing with them." + #gen "Such as?" ("base", xpos="far_left", ypos="head") + #sna "Well, apart from leaving Hogwarts completely in the hands of the headmaster..." + #sna "Corruption, illegal trades of magical artefacts and creatures. The list goes on..." + #sna "The only one showing any interest in the schools business is the Head of the Department of Magical law Enforcement herself." + #gen "And that's not a problem because?" ("base", xpos="far_left", ypos="head") + #sna "Because in the end you'd see a dementor getting frisky with a human before any of these things aren't getting swept under the carpet." + #sna "You could put the tooth fairy in front of the minister and he'd still deny her existence if he were to have held that stance." + #sna "And the other fools at the ministry would do so as well even if they witnessed it themselves." + + $ ss_he.tonks_E1 = True + $ ss_event_pause += 1 + + $ chair_OBJ.hidden = False + $ fireplace_OBJ.foreground = None + + jump end_snape_hangout_points + + +label tonks_intro_E3: + stop music fadeout 1.0 + call play_sound("knocking") + call bld + "*Knock-knock-knock*" + + call play_sound("knocking") + "*Knock-knock-knock*" + + gen "............" ("base", xpos="far_left", ypos="head") + + ton "Professor Dumbledore, may I come in?" + gen "(It's that hot Ministry chick again...)" ("base", xpos="far_left", ypos="head") + + menu: + "\"Yes, please come on in.\"": + pass + "\"Not right now.\"": + ton "But it's urgent, Sir. I need to talk to you about Miss Granger's favour trading accusations..." + gen "(Shit. That can't be good.)" ("angry", xpos="far_left", ypos="head") + gen "Do you mind coming another time, I'm very busy...{w} watering the bird." ("base", xpos="far_left", ypos="head") + ton "Watering what?" + ton "Sir, I'm coming in." + "\"Who is it?\"": + ton "It's Tonks." + gen "Who?" ("base", xpos="far_left", ypos="head") + ton "..." + ton "Nymphadora Tonks..." + gen "(That {i}Nympho{/i} again...)" ("base", xpos="far_left", ypos="head") + ton "Sir, I'm coming in." + + #Tonks enters the office + call ton_walk(action="enter", xpos="desk", ypos="base") + + call play_music("tonks") + ton "Professor..." ("soft", "base", "base", "mid", xpos="mid", ypos="base", trans=dissolve) + gen "How's the investigation going? Nothing to report I gather?" ("base", xpos="far_left", ypos="head") + ton "On the contrary..." ("open", "wide", "shocked", "stare") + ton "It's worse than I could have ever imagined!" ("open", "wide", "angry", "mid", hair="angry") + gen "(........)" ("angry", xpos="far_left", ypos="head") + ton "This school truly has changed since I was a student here." ("mad", "base", "base", "mid") + ton "I never thought I would see Hogwarts in a state such as this..." ("open", "base", "annoyed", "down") + ton "Corrupted! Right down to the core!" ("mad", "base", "angry", "mid", hair="angry") + gen "(What's the matter with her hair?!)" ("angry", xpos="far_left", ypos="head") + ton "You don't have to search for too long to uncover the vile debaucheries that are happening at this school..." ("open", "base", "annoyed", "mid", hair="angry") + gen "(Snape you fucking idiot! You blew it!!!)" ("angry", xpos="far_left", ypos="head") + ton "Teachers taking advantage of their students, promising house points in return for sexual acts..." ("open", "base", "angry", "R", hair="angry") #in a sexual favour, the sex act is the favour + ton "While they abuse their authority and power to do the most despicable things to them..." ("open", "base", "annoyed", "R", hair="horny") + ton "But the Dumbledore I know would never allow such disgracefulness at his school..." ("mad", "base", "angry", "mid", hair="angry") + gen "(...)" ("base", xpos="far_left", ypos="head") + + stop music fadeout 1.0 + ton "I had this suspicion... Since the very day I got here..." ("open", "wide", "angry", "mid", hair="angry") + # Tonks threatens Genie. + # Maybe have her chibi point her wand at him? + call play_music("hitman") + ton "Now tell me, who are you?{w} And you better tell the truth!" ("mad", "base", "angry", "mid", hair="angry") + gen "(Shit, how often is this going to happen to me?)" ("angry", xpos="far_left", ypos="head") + + menu: + gen "I am..." ("angry", xpos="far_left", ypos="head") + "\"Albus Dumbledore!\"": + ton "You are most certainly {b}not{/b} Albus Dumbledore!" ("upset", "base", "angry", "mid") + gen "No wait, it was {i}Albertus Dumblerdore{/i}! That's it!" ("angry", xpos="far_left", ypos="head") + gen "(Yes, that was probably it...)" ("base", xpos="far_left", ypos="head") + "\"You know who!\"": + ton "What?" ("open", "wide", "angry", "mid") + gen "You...{w=0.8} know...{w=0.8} who..." ("base", xpos="far_left", ypos="head") + ton "That can't be true!" ("open", "base", "annoyed", "mid") + gen "You know who I am. You said it yourself earlier." ("base", xpos="far_left", ypos="head") + gen "(If only I could remember what she called me...)" ("base", xpos="far_left", ypos="head") + #"The danger!": + # ton "What?" ("base", "wide", "shocked", "stare") + # gen "I am the one who knocks..." ("angry", xpos="far_left", ypos="head") + + ton "I've had enough of this!" ("mad", "base", "angry", "mid") + ton "Reveal your true identity, dark wizard!" ("open", "base", "angry", "mid") + gen "I'm not a dark wizard, you racist twat!" ("angry", xpos="far_left", ypos="head") + ton "How dare you call me a racist!" ("mad", "shocked", "angry", "mid", hair="angry") + gen "Bring it! Do your worst, witch!" ("angry", xpos="far_left", ypos="head") + call hide_characters + hide screen bld1 + with d3 + + # Glass break animation. + # Duel won't happen and Tonks just casts a spell. + + play music "music/boss_battle_#2_metal_loop.ogg" fadein 1 fadeout 1 + call play_sound("glass_break") + pause.1 + + show screen snape_glass + pause 2.3 + + hide screen snape_glass + with irisout + pause.1 + + call gen_chibi("hide") + $ desk_OBJ.idle = "desk_dumbledore" + $ chair_left_OBJ.hidden = True + call cast_spell("revelio") + ton "Revelio!" ("open_wide", "shocked", "annoyed", "mid", hair="angry", ypos="head", flip=False) + call bld("hide") + pause.6 + + $ desk_OBJ.idle = "ch_gen sit_behind_desk" + with d9 + pause.6 + + ton "" ("disgust", "shocked", "shocked", "stare", xpos="right", ypos="base") + gen "(...)" ("base", xpos="far_left", ypos="head") + $ renpy.music.play("music/Under-the-Radar by PhobyAk.ogg") + ton "No way!" ("soft", "shocked", "base", "mid") + gen "What just happened?" ("base", xpos="far_left", ypos="head") + ton "What... are you...?" ("mad", "shocked", "raised", "mid") + gen "(Can she see through the illusion?)" ("base", xpos="far_left", ypos="head") + ton "Wait a minute... Are you...{w=0.5} {size=+4}a Genie?{/size}" ("open", "shocked", "raised", "mid") + gen "(This witch knows her shit!)" ("angry", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + + gen "Some people would say I'm {b}the{/b} Genie, actually!" ("grin", xpos="far_left", ypos="head") + gen "The most powerful being in the entire universe... Multiple universes even..." ("base", xpos="far_left", ypos="head") + gen "Glad my reputation precedes me..." ("base", xpos="far_left", ypos="head") + ton "How curious. I've never had a Genie before..." ("horny", "wide", "base", "down", hair="horny") # Tonks looks horny. + gen "I'm sorry-- what?" ("base", xpos="far_left", ypos="head") + ton "I meant, I've never had the pleasure of meeting a Genie before. This is brilliant!" ("grin", "shocked", "shocked", "mid") + gen "(Is she hitting on me?!)" ("base", xpos="far_left", ypos="head") + gen "I'm flattered... But how were you able to tell?" ("base", xpos="far_left", ypos="head") + ton "I'm an Auror. It's my job to identify and catch magical beings..." ("soft", "wide", "shocked", "mid") + ton "But, if you are here, what happened to Professor Dumbledore?{w} Did he use one of your wishes and wish himself away?" ("mad", "wide", "shocked", "R") + gen "No... I don't do that anymore." ("base", xpos="far_left", ypos="head") + gen "I'm what you would call a \"free\" Genie..." ("base", xpos="far_left", ypos="head") + ton "So? What happened to him?" ("upset", "base", "raised", "mid") + gen "I believe we traded places when one of my magical inventions went wrong..." ("base", xpos="far_left", ypos="head") + ton "Really?! Is he okay?" ("mad", "wide", "base", "mid") + gen "I think so.{w} He travelled to my universe, and I'm stuck in this dull place..." ("base", xpos="far_left", ypos="head") + gen "Believe me, there are a lot more brothels in Agrabah.{w} I bet he's having the time of his life..." ("base", xpos="far_left", ypos="head") + ton "So, you just {i}*poofed*{/i} in here and decided to turn this school into your own private brothel..." ("open", "narrow", "angry", "mid") + ton "Because you were bored?!" ("upset", "base", "angry", "mid") + gen "Hey! I'm an immortal being... boredom is my worst enemy." ("base", xpos="far_left", ypos="head") + gen "And I didn't do much, just a nudge in the right direction..." ("base", xpos="far_left", ypos="head") + ton "You need to bring him back, the real Dumbledore, immediately!" ("mad", "base", "angry", "mid", hair="angry") + gen "I don't know how, ... yet.{w} We're still working on it..." ("base", xpos="far_left", ypos="head") + ton "We? Who else knows about this?" ("open", "narrow", "annoyed", "mid") + + menu: + gen "(Crap...)" ("base", xpos="far_left", ypos="head") + "\"You know who...\"": + ton "{size=+4}What?!{/size}" ("open", "wide", "worried", "mid", hair="scared") + gen "(Why do they keep freaking out whenever I say this...)" ("base", xpos="far_left", ypos="head") + gen "That Snape guy." ("base", xpos="far_left", ypos="head") + + "\"Nobody...\"": + ton "You mean Professor Snape is in on this?!" ("open", "wide", "shocked", "mid") + gen "What? But I didn't--" ("base", xpos="far_left", ypos="head") + + ton "But of course!{w} After all he was mentioned in Miss Granger's letter as one of the main offenders." ("disgust", "wide", "shocked", "stare") + ton "That sleazy, vile snake...{w} Naturally he'd be all over an opportunity such as this." ("mad", "base", "angry", "R", hair="angry") + gen "(Snake? Have I been saying his name wrong this entire time?...)" ("base", xpos="far_left", ypos="head") + gen "(I hate when that happens...)" ("base", xpos="far_left", ypos="head") + ton "And to think I believed that creep when I questioned him about it." ("mad", "closed", "angry", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + ton "He's a very skilled liar, I'll give him that." ("upset", "narrow", "angry", "down") + gen "Are you going to lock us up now?" ("base", xpos="far_left", ypos="head") + ton "I very well should! It would be the moral thing to do." ("open", "base", "angry", "mid") + gen "(Shit...)" ("base", xpos="far_left", ypos="head") + ton "You and Professor Snape should be locked in Azkaban for what you've done..." ("mad", "base", "angry", "mid") + ton "And stay there for the rest of your lives..." ("open", "base", "angry", "mid") + gen "You can't do that to me, I'm immortal! I'd go insane!" ("angry", xpos="far_left", ypos="head") + ton "You should have thought about that before deciding to fuck your own students!" ("mad", "base", "angry", "mid") + gen "But I haven't even gotten to that part yet!" ("angry", xpos="far_left", ypos="head") + ton "And you never will!" ("open", "wide", "angry", "mid") + ton "I'm going to put you in the smallest cell Azkaban has to offer..." ("open", "base", "angry", "mid") + gen "No, please! I hate confined spaces!" ("angry", xpos="far_left", ypos="head") + # fake game over + $ renpy.music.stop(fadeout=4) + $ renpy.music.stop(channel="weather", fadeout=4) + $ renpy.play('sounds/level_failed.ogg') + show screen cartoon_zoom + gen "...{w=6.0}{nw}" ("angry", xpos="far_left", ypos="head") + call gameover() + # back from game over + + call weather_sound + stop music fadeout 1.5 + + $ renpy.play('sounds/scratch.ogg') + ton "Unless..." ("upset", "narrow", "annoyed", "downR", trans=hpunch) + + gen "Unless?" ("angry", xpos="far_left", ypos="head") + call play_music("tonks") + ton "You let me join in on the fun!" ("grin", "base", "raised", "mid", hair="horny") + gen "..." ("base", xpos="far_left", ypos="head") + gen "What?" ("angry", xpos="far_left", ypos="head") #screenshake + ton "The ministry sent me to investigate what they assumed to be a silly rumour a student made up..." ("base", "base", "angry", "R") + ton "And whilst I could just squash the rumour and go back to a dull, quiet desk job." ("disgust", "base", "raised", "mid") #rule of 3 + ton "I simply couldn't pass up an opportunity like this..." ("horny", "narrow", "base", "mid", hair="horny") #now that she's not being official and talking ministry business, she should slip back into more casual language + ton "Keeping quiet would be far more... \"exciting\"." ("soft", "base", "base", "stare", hair="horny") + gen "How so?" ("base", xpos="far_left", ypos="head") + ton "I know for a fact that the Ministry has been trying to plant an inside man here at Hogwarts." ("normal", "base", "base", "R") + gen "Then what are you suggesting?" ("base", xpos="far_left", ypos="head") + ton "Hire me as a teacher." ("base", "base", "base", "mid") + ton "I could teach the students a thing or two about the \"Defence against the Dark Arts\"..." ("open", "base", "base", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + ton "And if you and Snape want this favour trading to continue, you'll need somebody who can keep things quiet with the ministry." ("base", "closed", "base", "mid") + gen "Do I even have a choice?" ("base", xpos="far_left", ypos="head") + ton "The alternative would be me informing the ministry, and locking you both up." ("soft", "base", "base", "mid") #formal language here for the 'official procedure' + gen "Then welcome aboard!" ("grin", xpos="far_left", ypos="head") + ton "Don't worry. I'm not here to spoil your little act." ("base", "base", "raised", "mid") + gen "That's a relief..." ("base", xpos="far_left", ypos="head") + ton "I'll inform the other teachers about my stay." ("open", "base", "base", "R") + ton "And the Ministry too of course. I'll be their inside man at Hogwarts, here at the request of Professor Dumbledore himself, no less." ("base", "base", "base", "mid") + ton "If only they knew..." ("horny", "narrow", "base", "mid", hair="horny") + ton "In any case, Profess--" ("open", "base", "base", "R") + ton "I'm sorry, what would you like me to call you?" ("mad", "base", "raised", "mid") + + menu: + gen "You can call me..." ("base", xpos="far_left", ypos="head") + "\"Professor is fine.\"": + $ ton_genie_name = "Professor" + ton "Very well." ("base", "base", "base", "mid") + "\"You can call me Genie.\"": + $ ton_genie_name = "Genie" + ton "Very well, Genie." ("base", "base", "base", "mid") + "\"Call me Daddy...\"": + $ ton_genie_name = "Daddy" + ton "What? Are you serious?!" ("open", "wide", "shocked", "stare") + ton "*Ha-Ha-Ha!*...{w=0.3} you're too funny!" ("silly", "happyCl", "raised", "mid", hair="happy") + gen "(What?-- Now it's yellow!)" ("angry", xpos="far_left", ypos="head") + ton "Are all Genies this desperate?" ("crooked_smile", "base", "raised", "mid", hair="happy") + gen "Desperate? Why Desperate? ..." ("base", xpos="far_left", ypos="head") + ton "Nothing..." ("base", "base", "base", "down", hair="happy") + ton "Very well... \"Daddy\"! {heart}{heart}{heart}" ("horny", "narrow", "base", "mid", hair="horny") + gen "*He*-*He*-*He*-He*..." ("grin", xpos="far_left", ypos="head") + + ton "Call me to your office whenever you require my help, [ton_genie_name]." ("base", "base", "base", "mid") #would it be better to have her call him by the requested name here, since later on we have the bit where Tonks submits to genie and calls him sir + gen "I most certainly will..." ("base", xpos="far_left", ypos="head") + + #Tonks leaves + call ton_walk(action="leave") + + call bld + gen "What an interesting turn of events..." ("base", xpos="far_left", ypos="head") + gen "Who would've guessed that she's such a pervert?!" ("grin", xpos="far_left", ypos="head") + + $ tonks_unlocked = True + $ achievements.unlock("unlockton", True) + call popup("{size=-4}You can now summon Tonks into your office.{/size}", "Character unlocked!", "interface/icons/head/tonks.webp") + + $ tonks_busy = True + + $ tonks_intro.E3_complete = True + $ nt_event_pause += 1 + + call music_block + jump main_room_menu + + +### Snape Hangout Event 2 ### +# You inform Snape that Tonks is now an ally and has been made a teacher. + +label ss_he_tonks_E2: + sna "........................." ("snape_31", ypos="head") + sna "So, here is the plan..." ("snape_03") + sna "You get a shovel and a body-bag ready, and I'll do the \"Avada Kedavra\"!" ("snape_01") + gen "\"Avra-ka--\"{w} What the fuck are you talking about?" ("base", xpos="far_left", ypos="head") + sna "Tonks! We need to get rid of her! Immediately!" ("snape_10") + sna "Otherwise things will never go back to how they were!" ("snape_03") + gen "Have you lost your mind again?" ("base", xpos="far_left", ypos="head") + sna "No, but I'm about to!" ("snape_01") + #sna "I haven't had a mouth on my cock in so long..." ("snape_29") + #sna "Please, Genie. I need a fix!" ("snape_19") # Weird look + #gen "..................." ("base", xpos="far_left", ypos="head") + #sna "..................." ("snape_19") # Weird look + #gen "Would you stop looking at me like that!!!" ("angry", xpos="far_left", ypos="head") + #sna "What? Don't be ridiculous..." ("snape_14") + gen "..................." ("base", xpos="far_left", ypos="head") + sna "What a fool I was to believe that she'd be gone by now..." ("snape_31") + sna "But of course not!" ("snape_32") + sna "{size=+5}Instead they made that mischievous {b}cunt{/b} a teacher!{/size}" ("snape_33", trans=hpunch) # Screaming + gen "Actually, that was--" ("base", xpos="far_left", ypos="head") + sna "The whole universe has turned against me!" ("snape_43") + sna "That bloody Ministry! Curse them!" ("snape_35") + sna "Of course it was only a matter of time until they got themselves involved..." ("snape_06") + sna "We had something good, Genie. And now it's over..." ("snape_26") + + gen "Well, lucky for us, it isn't over just yet..." ("base", xpos="far_left", ypos="head") + sna "What's that supposed to mean? Are you concocting something?!" ("snape_25") + gen "It's like you've said..." ("base", xpos="far_left", ypos="head") + gen "The situation solved itself!" ("grin", xpos="far_left", ypos="head") + gen "She's going to join us." ("base", xpos="far_left", ypos="head") + + sna "Join us? Doing what?" ("snape_05") + gen "Corrupting those precious students of ours, of course!" ("grin", xpos="far_left", ypos="head") + sna "And according to you, Tonks wants to help us break that Gryffindor bitch as well?" ("snape_34") + gen "Yep." ("base", xpos="far_left", ypos="head") + sna "*Ha-ha-ha*!{w} That's just fucking silly!" ("snape_28") + gen "................" ("base", xpos="far_left", ypos="head") + sna "Good one..." ("snape_45") + sna "No seriously. What's going on?" ("snape_03") + gen "She asked me if she could join us..." ("base", xpos="far_left", ypos="head") + sna "*A-ha-ha-ha-ha*..." ("snape_28") + gen "Who do you think made her a teacher in the first place?" ("base", xpos="far_left", ypos="head") + sna "Stop it, please!!!" ("snape_42") + gen "You don't believe me..." ("base", xpos="far_left", ypos="head") + sna "Not a single word! *A-Ha-ha-ha*..." ("snape_28") + gen "Fair enough..." ("base", xpos="far_left", ypos="head") + sna "*Ha-ha-ha*--" ("snape_42") + sna "*cough* {w=0.4}*cough* {w=0.4}*cough*..." ("snape_17", trans=hpunch) + gen "..............." ("base", xpos="far_left", ypos="head") + sna "..................." ("snape_31") + + sna "But none of this makes any sense!" ("snape_03") + gen "Well, as it turns out..." ("base", xpos="far_left", ypos="head") + sna "She's a pervert!" ("snape_36") # Revelation + gen "She's a-- wait, how did you know?" ("base", xpos="far_left", ypos="head") + sna "How could I've been so ignorant!" ("snape_08") + gen "Am I missing something here, you're not a mind reader, are you?" ("base", xpos="far_left", ypos="head") + sna "I'm a very skilled Occlumens, but no..." ("snape_31") + gen "(Occlu-what?)" ("base", xpos="far_left", ypos="head") + gen "Could you stop making up words..." ("base", xpos="far_left", ypos="head") + sna "It's quite obvious in hindsight..." ("snape_35") + gen "It...{w=0.4} is?" ("base", xpos="far_left", ypos="head") + sna "Why would the Ministry have sent a full-fledged Auror, to deal with some eccentric insinuations made by some petty student..." ("snape_16") + gen "Shouldn't they?" ("base", xpos="far_left", ypos="head") + sna "Just because of some silly rumour about teachers having sexual intercourse with their students?" ("snape_34") + gen "And that's not a reasonable enough concern to send somebody to look into?" ("base", xpos="far_left", ypos="head") + sna "It's the Ministry we're talking about...{w=0.8} They don't give a shit..." ("snape_30") + sna "They wouldn't even believe it if \"you-know-who\" were to make a return..." ("snape_31") + gen "Who?" ("base", xpos="far_left", ypos="head") + sna "That Tonks had to be the only Ministry personnel that saw some truth in Granger's letters..." ("snape_35") + sna "What if she specifically requested to be sent here to investigate?" ("snape_03") + gen "She might have..." ("base", xpos="far_left", ypos="head") + sna "So...{w=0.4} what does she want?" ("snape_04") + sna "Surely she's taking the position for a reason..." ("snape_01") + gen "It appears that she'd like to be part of this whole favour trading business, which is also why she asked to be made a teacher..." ("base", xpos="far_left", ypos="head") + gen "And in return she'll keep things quiet with the ministry." ("base", xpos="far_left", ypos="head") + + sna "*Hmm*... Not having to worry about the Ministry anymore, you say..." ("snape_38") + sna "And I'm supposed to believe that she'd be willing to do that for us?" ("snape_25") + sna "How exactly did you end up in this situation with her?" ("snape_04") + gen "I don't know... It just... happened." ("base", xpos="far_left", ypos="head") + gen "She pretty much figured everything out by herself." ("base", xpos="far_left", ypos="head") + gen "Straight away even guessed that I'm a Genie..." ("base", xpos="far_left", ypos="head") + sna "So she knows everything? How did she--" ("snape_03") + gen "It appears the \"illusion charm\" wasn't perfect. She momentarily got a glimpse through it..." ("base", xpos="far_left", ypos="head") + sna "That's impressive... perhaps I didn't give her enough credit..." ("snape_01") + + sna "If what you're telling me about her intentions are true..." ("snape_03") + sna "Maybe she could even be persuaded to help with the Granger situation..." ("snape_05") + + #if nt_he.hermione_E1: + # gen "Way ahead of you!" ("grin", xpos="far_left", ypos="head") + # gen "She's already offered to help with Granger." ("base", xpos="far_left", ypos="head") + #else: + gen "Oh, I'm sure there's little to no persuasion needed." ("base", xpos="far_left", ypos="head") + gen "I have no doubt that she'd be well into the idea of convincing Granger to sell favours herself..." ("base", xpos="far_left", ypos="head") + + sna "What a wicked bitch!" ("snape_13") + sna "If only we were selling favours back then..." ("snape_46") + sna "You know what they say about students from Hufflepuff..." ("snape_20") + sna "They are quite the \"hard-working\" bunch!" ("snape_21") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "I'm calling dibs on her!" ("base", xpos="far_left", ypos="head") + sna "You do what?" ("snape_14") + gen "Dibs, she's mine. I said it first..." ("base", xpos="far_left", ypos="head") + sna "Are you twelve or something?" ("snape_04") + gen "Over twelve thousand, actually." ("base", xpos="far_left", ypos="head") + + pause.1 + call blktone + + ">You and professor Snape keep discussing various staff members of Hogwarts." + ">The bond between you two grows stronger." + + call sly_plus + call hide_blktone + + $ ss_he.tonks_E2 = True + $ ss_event_pause += 1 + + jump end_snape_hangout_points + + +### Snape Hangout Event 3 ### +# You tell Snape that you made Tonks the teacher for 'DAtDA' + +label ss_he_tonks_E3: + call bld + gen "Our new partner in crime, is she getting on well?" ("base", xpos="far_left", ypos="head") + sna "Tonks? I haven't seen her since last time we talked..." ("snape_09", ypos="head") + sna "Shouldn't you know what that witch is up to? You made her a teacher, after all..." ("snape_01") + gen "I'm sure she's still just settling down..." ("base", xpos="far_left", ypos="head") + sna "Probably drinking booze down at Hogsmeade, more likely..." ("snape_35") + sna "What subject is she even supposed to teach? What did you give her?" ("snape_03") + gen "I have not the slightest clue..." ("base", xpos="far_left", ypos="head") + sna "................" ("snape_38") + sna "You know, I've been teaching \"Potions\" at this school for as long as I can remember..." ("snape_06") + sna "Of course I'm the best they have.{w=0.8} And they don't call me \"Master of Potions\" for nothing!" ("snape_17") + sna "But if we're honest, even a \"dim-witted Demiguise\" could teach potions to those simpletons..." ("snape_35") + + menu: + gen "..............." ("base", xpos="far_left", ypos="head") + "\"Are the students really that bad?\"": + sna "*sigh* You have no idea, even an ape would show more learning abilities." ("snape_06") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + "\"... Demiguise?\"": + gen "What the fuck is that?" ("base", xpos="far_left", ypos="head") + sna "*sigh* I keep forgetting you're not from around here..." ("snape_06") + sna "It's a magical beast that can make itself invisible and has precognitive sight." ("snape_24") + gen "... Sounds boring, forget I asked." ("base", xpos="far_left", ypos="head") + sna "..........." ("snape_05") + sna "Anyway, back to the topic at hand--" ("snape_04") + + sna "When it comes to \"Defence against the dark arts\"..." ("snape_03") + sna "That's a subject that requires skill and cunning!" ("snape_02") + sna "And a very competent and skilled teacher, to guide those hopeless souls through their lessons..." ("snape_40") + sna "Now, If you were to assign me for that, and give Tonks my old subject to teach..." ("snape_20") + gen "Yeah, about that...{w=0.4} I think I might have given that role to her..." ("base", xpos="far_left", ypos="head") + sna "{size=+5}You did what?!{/size}" ("snape_33", trans=hpunch) + gen "\"Defence against... something-something\"..." ("base", xpos="far_left", ypos="head") + sna "You should have given me the \"defence against the dark arts\" position!" ("snape_34") + sna "And she could've had something else... like \"muggle studies\", or something." ("snape_16") + gen "First come, first served, I suppose..." ("base", xpos="far_left", ypos="head") + gen "And I am not making her teach any \"smuggle studies\", who do you take me for?" ("base", xpos="far_left", ypos="head") + sna "Curse you..." ("snape_08") + gen "There wasn't really any room for me to argue with her..." ("base", xpos="far_left", ypos="head") + gen "It was either that, or prison." ("base", xpos="far_left", ypos="head") + sna ".................." ("snape_31") + + sna "I can't say that I trust her just yet..." ("snape_35") + sna "Not before I get to slip in a couple drops of \"Veritaserum\" into her drink..." ("snape_03") + gen "\"Veritaserum\"?" ("base", xpos="far_left", ypos="head") + sna "Truth potion!{w=0.4} I oftentimes use some on my \"very attractive Slytherins\"..." ("snape_02") + sna "Only a single drop, and they'll tell me everything I want to know." ("snape_41") + sna "Very handy should you need information to blackmail someone..." ("snape_46") + sna "Or learn everything about their secret fetishes..." ("snape_20") + gen "Neat!" ("grin", xpos="far_left", ypos="head") + + pause.1 + call blktone + + ">You take some time to muse about the fetishes Tonks might have..." + ">For blackmailing... or to have some fun..." + + $ ss_he.tonks_E3 = True + $ ss_event_pause += 1 + + call sly_plus + call hide_blktone + + jump end_snape_hangout_points diff --git a/game/scripts/characters/tonks/events/requests/detention_with_tonks.rpy b/game/scripts/characters/tonks/events/requests/detention_with_tonks.rpy new file mode 100644 index 00000000..5db48d05 --- /dev/null +++ b/game/scripts/characters/tonks/events/requests/detention_with_tonks.rpy @@ -0,0 +1,750 @@ + + +### Tonks Teaching ### + +# Detention with Tonks +# (Tonks gives students detention or lets them stay after class) +# (Gets to see the boy's dicks, the girl's panties, punishs them...) +# (Gives hours points to each of the students) + +#TODO Add Tonks chibi to all her public request nightly reports + +label nt_pr_teach_start: + ton "" ("base", "base", "base", "mid", xpos="right", ypos="base", trans=fade) + + if ton_tier == 1: + + if nt_pr_teach.points == 0: + ton "So, what's the plan?" ("open", "base", "base", "mid") + gen "The plan?" ("base", xpos="far_left", ypos="head") + ton "You know, how does this go down?" ("soft", "base", "base", "mid") + ton "I'm hardly a regular when it comes to this stuff." ("open", "base", "base", "R") + gen "It would be best if we start small, don't you think?" ("base", xpos="far_left", ypos="head") + gen "You should build up a bit of a reputation for yourself, before we start trying anything crazy." ("base", xpos="far_left", ypos="head") + ton "A reputation?" ("normal", "base", "raised", "mid") + ton "Think I'll get a nickname?{w} Maybe they'll call me touchy tonks?" ("soft", "narrow", "shocked", "mid") + gen "Maybe..." ("base", xpos="far_left", ypos="head") + ton "What did you do with Hermione on her first favour?" ("open", "narrow", "shocked", "down") + gen "*Ugh*... I think I got her to make \"a silly face\", or something..." ("base", xpos="far_left", ypos="head") + ton "You paid her for that? I expected something a little more...{w=0.4} Perverse." ("crooked_smile", "base", "base", "R") + if hg_pf_admire_panties.counter != 0: + gen "In that case, the first \"real\" favour I bought was getting her to lift her skirt for me." ("base", xpos="far_left", ypos="head") + ton "That's more like it!" ("horny", "base", "base", "mid") + ton "But, even though we're in Scotland, none of the boys are wearing skirts..." ("open", "base", "base", "L") + elif hg_pf_admire_breasts.counter != 0: + gen "In that case, the first \"real\" favour I bought was getting her to show me her bra." ("base", xpos="far_left", ypos="head") + ton "That's more like it!" ("horny", "base", "base", "mid") + ton "Although it's not a big deal for boys to show you their chests..." ("open", "base", "base", "L") + else: + gen "Yes, Granger is greedy when it comes to points..." ("base", xpos="far_left", ypos="head") + ton "I'm not interested in just chatting with my Students! I get to do that all day..." ("annoyed", "base", "raised", "downR") + gen "Just get them to show you their dicks then." ("base", xpos="far_left", ypos="head") + ton "Oh, wow! Are you serious?" ("crooked_smile", "wide", "shocked", "stare") + gen "I don't see why not." ("base", xpos="far_left", ypos="head") + gen "It isn't such a big deal for a boy to show a girl his wiener..." ("base", xpos="far_left", ypos="head") + ton "Seeing their dicks... That does sound good..." ("soft", "happyCl", "base", "mid", cheeks="blush") + ton "Can I touch them?" ("horny", "narrow", "raised", "mid") + gen "Let's stick with looking for now..." ("base", xpos="far_left", ypos="head") + ton "Fine... So how many am I allowed to look at?" ("annoyed", "base", "base", "down") + gen "As many as you like..." ("base", xpos="far_left", ypos="head") + ton "And how many points am I allowed to give out?" ("soft", "base", "base", "L") + gen "Look, I'm not really convinced these points are real..." ("base", xpos="far_left", ypos="head") + gen "I just say \"Ten points to Gryffindor!\" And these girls do whatever I want for some reason..." ("base", xpos="far_left", ypos="head") + $ gryffindor += 10 + gen "So as far as I'm concerned, hand out as many as you want." ("base", xpos="far_left", ypos="head") + ton "All right... Well, I better get to class." ("base", "base", "base", "R") + ton "I've got some boys to \"teach\"..." ("horny", "narrow", "raised", "mid", hair="neutral") + gen "Don't forget to come back here after classes to fill me in." ("base", xpos="far_left", ypos="head") + ton "Will do..." ("base", "happyCl", "base", "mid") + + else: # Repeat + gen "Ready to help the boys earn some points?" ("base", xpos="far_left", ypos="head") + ton "And reward them for showing me their dicks?" (face="horny") + gen "Yes. Return to me after class..." ("base", xpos="far_left", ypos="head") + ton "*Mhmm*... Don't worry if I'm a little late though..." (face="horny") + + elif ton_tier >= 2: + + if nt_pr_teach.points == 0: # Tell her to be even lewder for the next level of favors. + gen "Would you like to give some boys detention again?" ("base", xpos="far_left", ypos="head") + ton "And what would you suggest I do with them?" (face="horny") + ton "Make them show me their dicks?" (face="horny") + ton "Or can we move on to something a little more... progressive?" (face="horny") + gen "If that's what you want..." ("base", xpos="far_left", ypos="head") + ton "*Hmm*...{w=0.4} Yes...{w=0.3} I wouldn't mind seeing the {b}hard cocks{/b} of some of my favourites." (face="horny") + ton "Might even have them jerk off for me... I would love to see that!" ("horny", "base", "base", "ahegao") + gen "And make sure they remember it." ("base", xpos="far_left", ypos="head") + ton "Yes, [ton_genie_name]. Don't wait for me..." ("base", "base", "base", "mid") + + else: # Repeat + gen "Ready to give some boys detention again?" ("base", xpos="far_left", ypos="head") + ton "Yes. I'm very much in the mood for some {b}hard cocks{/b}!" (face="horny") + gen "Go on then... Teach them a lesson..." ("grin", xpos="far_left", ypos="head") + ton "I shall see you later, [ton_genie_name]..." ("base", "base", "base", "mid") + + # Tonks leaves + + $ nt_pr_teach.inProgress = True + + call ton_walk(action="leave") + jump end_tonks_event + + + +### Tier 1 ### + +label nt_pr_teach_T1_E1: #Tier 1 - Event 1 - Slytherin boy + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hello, [ton_genie_name]." ("base", "base", "base", "mid", xpos="mid", ypos="base", trans=fade) + ton "I'm back with my report..." ("horny", "narrow", "base", "mid") + + if ton_reputation <= 3: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"How was your day?\"": + pass + "\"Make it quick!\"": + ton "I had some fun with that Slytherin boy again..." ("horny", "base", "angry", "mid") + ton "Gave him a couple of points for his house." ("open", "base", "base", "R") + gen "Well done, [tonks_name]... We'll talk next time." ("base", xpos="far_left", ypos="head") + ton "Yes, [ton_genie_name]. Have a good night." ("base", "base", "base", "mid") + call increase_house_points("s", 20) + if ton_reputation < 4: # Points til 4. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "How were your... \"extra curricular activities\" today?" ("base", xpos="far_left", ypos="head") + ton "It's such a rush!" ("grin", "happyCl", "base", "mid") + ton "I can't believe how naughty I feel!" ("soft", "base", "base", "ahegao") + gen "So I take it you managed to sneak a peek?" ("base", xpos="far_left", ypos="head") + ton "Sort of... I didn't really see it." ("mad", "base", "base", "R") + ton "But it was still incredible..." ("base", "happyCl", "base", "mid") + ton "*Ugh*... that look on his face..." ("mad", "base", "base", "ahegao") + gen "What did you see then?" ("base", xpos="far_left", ypos="head") + ton "Well, this sweet little Slytherin student had been staring at my breasts all lesson..." ("base", "base", "base", "down") + ton "So, naturally, I get him to stay behind after class." ("open", "closed", "base", "mid") + ton "I couldn't tell if he was angry about it, or just scared..." ("soft", "base", "base", "R") + ton "But, as his teacher, I insisted that he should write out some lines to correct his behaviour..." ("open", "closed", "base", "mid") + gen "Do I need to ask what he had to write?" ("base", xpos="far_left", ypos="head") + ton "\"I shall not stare at my teacher's big, beautiful breasts\"..." ("soft", "base", "base", "ahegao") + gen "Was the \"big\" and \"beautiful\" part really necessary?" ("base", xpos="far_left", ypos="head") + ton "Oh, that's not the best bit..." ("horny", "wide", "base", "mid") + ton "I went on to lecture him just how \"naughty\" and \"wrong\" it is for a student to peek at his teacher's tits......" ("soft", "wink", "annoyed", "mid") + ton "Oh, and I made him pull down his trousers while he wrote his lines!" ("silly", "narrow", "base", "mid") + gen "So you did see it!" ("base", xpos="far_left", ypos="head") + ton "He still had his underwear on..." ("open", "base", "base", "R") + ton "If I had pushed him any further... he probably would've snapped!" ("soft", "base", "base", "downR") + ton "Besides, I could still see how {b}hard{/b} he was..." ("base", "closed", "annoyed", "mid") + ton "It was crazy..." ("silly", "base", "base", "stare") + ton "I started to really tease him at the end... while he wrote out the last of his lines..." ("grin", "narrow", "shocked", "mid") + gen "That poor boy..." ("base", xpos="far_left", ypos="head") + ton "Don't worry, I just whispered in his ear a little..." ("horny", "narrow", "base", "R") + ton "Told him what a naughty boy he'd been..." ("horny", "base", "shocked", "mid") + ton "While my boobs dug into him... and my nipples poked into his back..." ("soft", "narrow", "base", "stare") + ton "His underwear was practically {b}soaked{/b} in pre-cum." ("horny", "narrow", "shocked", "stare") + gen "And do you think he'll spread the word about you?" ("base", xpos="far_left", ypos="head") + ton "I sure hope so..." ("base", "base", "base", "down") + ton "He earned twenty whole points from me today!" ("base", "happyCl", "base", "down") + ton "Certainly he won't be able to keep his eyes off me anymore..." ("soft", "narrow", "shocked", "mid") + gen "Very good." ("base", xpos="far_left", ypos="head") + gen "And try to reward those \"evil Slytherins\" with at least double the amount of points." ("base", xpos="far_left", ypos="head") + ton "If you say so, [ton_genie_name]..." ("soft", "narrow", "base", "R") + ton "It's so... iniquitous... what we are doing.{w} I fucking love it!" ("base", "base", "shocked", "stare") + gen "That'll be all now..." ("base", xpos="far_left", ypos="head") + ton "Thank you, [ton_genie_name]." ("horny", "wink", "base", "mid") + ton "Sweet dreams." ("grin", "narrow", "base", "mid") + + # Tonks leaves + + call increase_house_points("s", 20) + + if ton_reputation < 4: # Points til 4. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + +label nt_pr_teach_T1_E2: # Tier 1 - Event 2 - Racenclaw boy + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if ton_reputation <= 3: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"How was your day?\"": + pass + "\"Make it quick!\"": + ton "I was fooling around with my favourite Ravenclaw boy again..." ("horny", "base", "angry", "mid") + ton "And he earned a bunch of points from me." ("base", "happyCl", "base", "mid") + gen "Well done, [tonks_name]... We'll talk next time." ("base", xpos="far_left", ypos="head") + ton "Yes, [ton_genie_name]. Have a good night." ("base", "base", "base", "mid") + call increase_house_points("r", 10) + if ton_reputation < 4: # Points til 4. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "How were your classes today?" ("base", xpos="far_left", ypos="head") + ton "*Mmmm*... Long and hard..." ("soft", "base", "base", "stare") + ton "Just how I like them..." ("grin", "base", "shocked", "mid") + gen "I take it you were able to steal a few glances?" ("base", xpos="far_left", ypos="head") + ton "It was even better than I thought it'd be!" ("grin", "closed", "base", "mid") + ton "Who knew they'd be so nervous!" ("base", "wide", "base", "mid") + gen "What happened?" ("base", xpos="far_left", ypos="head") + ton "Well, I figured I'd have to be alone with a student, to convince them to whip it out for me..." ("base", "base", "base", "R") + ton "So I gave the cutest little thing I could find detention..." ("grin", "base", "shocked", "mid") + ton "Poor boy... I'm not sure he'd ever even been in trouble before." ("grin", "base", "raised", "R") + ton "So, when the bell rang, he immediately began babbling about how sorry he was for speaking in class, and that he'd never do it again..." ("base", "closed", "shocked", "mid") + ton "*Ugh*... I had to hold myself back from jumping on him right then and there..." ("horny", "closed", "angry", "stare") + ton "Anyway, I eventually managed to calm him down and tell him it'll be okay." ("soft", "base", "base", "stare") + ton "I even let him know that, if he was a good boy, he could earn some points for his house." ("base", "narrow", "base", "mid") + gen "Did he like the sound of that?" ("base", xpos="far_left", ypos="head") + ton "You should have seen his eyes light up! Like a kid on Christmas!" ("grin", "base", "base", "R") + gen "You fooled around with a kid?" ("base", xpos="far_left", ypos="head") + ton "What? No of course not.{w} Every student is of age here..." ("open", "shocked", "angry", "mid") + ton "And he didn't look like a kid at all down there..." ("grin", "base", "base", "stare") + ton "(He was so fucking hung!)" ("horny", "base", "shocked", "ahegao") + ton "It was child's play... Getting what I wanted from him." ("soft", "base", "angry", "R") + gen "..................." ("base", xpos="far_left", ypos="head") + ton "*Mmmm*, I even had him play with himself for a little bit..." ("horny", "base", "base", "stare") + ton "Fuck, he looked tasty..." ("open_wide_tongue", "narrow", "base", "ahegao") + gen "*Ahem*... So did you award him his points or just tease him?" ("base", xpos="far_left", ypos="head") + ton "Don't worry, I made sure Ravenclaw was paid handsomely." ("base", "happyCl", "base", "mid") + gen "And did he look like the kind to talk?" ("base", xpos="far_left", ypos="head") + ton "Probably not..." ("upset", "base", "base", "R") + gen "Well, try and get a talker next time..." ("base", xpos="far_left", ypos="head") + gen "We're trying to build your reputation, remember?" ("base", xpos="far_left", ypos="head") + ton "I'll try..." ("annoyed", "happyCl", "base", "mid") + ton "(Although, I'll have to play with this one a few more times...)" ("horny", "narrow", "base", "stare") + gen "That will be all for now, [tonks_name]." ("base", xpos="far_left", ypos="head") + ton "Thanks, [ton_genie_name]." ("base", "base", "base", "mid") + + # Tonks leaves + + call increase_house_points("r", 10) + + if ton_reputation < 4: # Points til 4. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + +label nt_pr_teach_T1_E3: # Tier 1 - Event 3 - Two Gryffindor boys. Guess who... + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if ton_reputation <= 3: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"How was your day?\"": + pass + "\"Make it quick!\"": + ton "I had some fun with those two Gryffindor boys again..." ("horny", "base", "base", "R") + ton "Of course I didn't give them any points..." ("open", "closed", "base", "mid") + ton "I wouldn't want Gryffindor to have an unfair advantage." ("horny", "base", "angry", "mid") + ton "They practically begged me if they could do it for free anyway..." ("open", "base", "base", "R") + gen "Well done, [tonks_name]... Until next time." ("base", xpos="far_left", ypos="head") + ton "Have a good night, [ton_genie_name]." ("base", "happyCl", "base", "mid") + if ton_reputation < 4: # Points til 4. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "How'd it go?" ("base", xpos="far_left", ypos="head") + ton "Great! I even managed to convince two boys to show me their dicks..." ("grin", "base", "base", "mid") + ton "At the same time!" ("horny", "wink", "base", "mid") + gen "Two at once? Congratulations!" ("grin", xpos="far_left", ypos="head") + ton "Yep... To be honest, they probably would have done it for free." ("crooked_smile", "happyCl", "base", "mid") + ton "Not that they turned down the offer of points, though..." ("base", "base", "base", "mid") + gen "Care to elaborate?" ("base", xpos="far_left", ypos="head") + ton "Alright then... you old perv..." ("base", "base", "shocked", "R") + ton "Normally I'd just have the cutest thing that takes my eye stay behind after class..." ("open", "base", "base", "R") + ton "For a little one-on-one time..." ("horny", "base", "base", "stare") + ton "But I actually had to punish these two idiots for real." ("upset", "closed", "annoyed", "mid") + gen "What did they do?" ("base", xpos="far_left", ypos="head") + ton "*Ugh*... They just wouldn't shut up during the whole lesson!" ("upset", "base", "base", "mid") + ton "And then they tried to lift a girl's skirt with \"wingardium leviosa\"..." ("mad", "base", "base", "R") + gen "A classic." ("grin", xpos="far_left", ypos="head") + ton "They reminded me of my younger self..." ("horny", "narrow", "base", "R") + ton "Which probably meant that they were going too far..." ("upset", "base", "base", "mid") + ton "So... I kept them after class... Gave them the whole lecture about \"responsibility\" and \"respect\"..." ("open", "closed", "base", "mid") + gen "................" ("base", xpos="far_left", ypos="head") + ton "Then I told them that I'd pay them both ten points, to show me their cocks... {heart}" ("grin", "closed", "base", "mid", cheeks="blush") + gen "Just like that?" ("base", xpos="far_left", ypos="head") + ton "Well, there's a lot more subtlety to it in practice..." ("soft", "base", "base", "stare") + ton "Not that I think I needed subtlety, given how horny they were..." ("crooked_smile", "base", "shocked", "mid") + ton "I think those poor buggers actually thought I was going to jerk them both off..." ("horny", "narrow", "base", "stare") + ton "Still, I think they had a fun time." ("soft", "wink", "base", "mid") + gen "Any chance they'll tell their friends about it?" ("base", xpos="far_left", ypos="head") + ton "Oh yes! The Gryffindor common room is probably a buzz already!" ("grin", "closed", "shocked", "mid") + ton "It wouldn't surprise me if I start getting asked to give more boys detention..." ("horny", "base", "shocked", "mid") + gen "Fooling around with Gryffindors and rewarding them isn't too helpful for our situation..." ("base", xpos="far_left", ypos="head") + gen "But great work nonetheless..." ("base", xpos="far_left", ypos="head") + ton "Thank you, [ton_genie_name]. That means a lot coming from you." ("base", "happyCl", "base", "mid") + gen "Even if it is encouragement for seducing your students?" ("base", xpos="far_left", ypos="head") + ton "Even then." ("base", "narrow", "base", "mid") + ton "Well, I better get back to work, these halls aren't safe unless there's a teacher on patrol." ("horny", "base", "base", "R") + gen "(I'm not sure they're safe with her on patrol...)" ("base", xpos="far_left", ypos="head") + + # Tonks leaves + + call increase_house_points("g", 20) + if ton_reputation < 4: # Points til 4. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + +label nt_pr_teach_T1_E4: # Tier 1 - Event 4 - Slytherin girl + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if ton_reputation <= 3: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"How was your day?\"": + pass + "\"Make it quick!\"": + ton "I confronted that little Slytherin girl again..." ("horny", "base", "base", "mid") + ton "Although, I kept myself in check with her... didn't want to scare her away again..." ("open", "base", "base", "R") + ton "But she was very happy about the points." ("base", "base", "angry", "mid") + gen "Well done, [tonks_name]..." ("base", xpos="far_left", ypos="head") + ton "Yes, [ton_genie_name]. Good night." ("silly", "happyCl", "base", "mid") + call increase_house_points("s", 20) + if ton_reputation < 4: # Points til 4. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "Did you manage to sneak a peek today?" ("base", xpos="far_left", ypos="head") + ton "*Umm*... I'm afraid not..." ("open", "narrow", "base", "R") + gen "Oh..." ("base", xpos="far_left", ypos="head") + ton "But I do have a story for you!" ("base", "happyCl", "base", "mid") + gen "Why didn't you just start with that? You had me worried for a moment!" ("base", xpos="far_left", ypos="head") + ton "Are you that desperate to hear about me \"fooling around\" with my students?" ("horny", "narrow", "annoyed", "mid") + gen "I'm desperate to hear {b}anything{/b}..." ("base", xpos="far_left", ypos="head") + gen "This office isn't exactly riveting to listen to..." ("base", xpos="far_left", ypos="head") + ton "In that case, I'll try and add some flair to it." ("base", "closed", "base", "mid") + ton "Once upon a time--" ("open", "wide", "base", "R") + gen "*Ahem*..." ("base", xpos="far_left", ypos="head") + ton "Too much?" ("crooked_smile", "happyCl", "base", "mid") + gen "Just a tad." ("base", xpos="far_left", ypos="head") + ton "So, I know my job is to try and balance out the favour trading a little..." ("soft", "narrow", "base", "R") + ton "But I just couldn't help myself today..." ("normal", "base", "worried", "R") + gen "Help yourself? You mean..." ("base", xpos="far_left", ypos="head") + ton "*Ugh*... I don't normally mess around with girls..." ("open", "base", "base", "down", cheeks="blush") + ton "(Not since I left here anyway...)" ("mad", "base", "raised", "R") + ton "But today there was {b}the tastiest morsel{/b} I have ever seen in my class!" ("horny", "wide", "base", "stare") + gen "...................." ("base", xpos="far_left", ypos="head") + ton "Now, I know when I'm being checked out, I can feel anyone's eyes on me..." ("open", "closed", "shocked", "mid") + gen "...................." ("base", xpos="far_left", ypos="head") + call nar(">You nod, unconsciously... Gazing directly at her tits...") + ton "And most of the time I don't mind... I might even encourage it from time to time..." ("base", "narrow", "shocked", "mid") + with hpunch + pause.8 + call nar(">Tonks gives her boobs a subtle little shake.") + gen ".................." ("grin", xpos="far_left", ypos="head") + ton "So, when I felt a pair of cute little eyes struggling their hardest not to stare at me..." ("horny", "base", "annoyed", "down") + ton "I just {b}had{/b} to play with her!" ("horny", "base", "base", "ahegao") + gen "*Mmmm*... what happened?" ("base", xpos="far_left", ypos="head") + ton "Nothing much... I'm pretty sure she would have freaked if I tried anything..." ("soft", "base", "base", "stare") + ton "So I just asked her to stay after class for a little... \"chat\"." ("base", "base", "shocked", "mid") + gen "What did that chat involve?" ("base", xpos="far_left", ypos="head") + ton "Well, what do you think?" ("horny", "base", "shocked", "mid") + ton "I just sat directly in front of her desk..." ("open", "base", "base", "mid") + ton "Asked her if she was doing well in class..." ("normal", "base", "base", "R") + ton "If anything was making her feel... distracted..." ("base", "closed", "annoyed", "mid") + ton "All the while I was playing with the buttons on my shirt..." ("soft", "base", "shocked", "down") + ton "*Ugh*... I've never seen someone so flustered..." ("horny", "base", "base", "stare") + ton "Eventually, it got too much for her, so she just yelled that I was wasting her time and ran off in typical Slytherin fashion." ("open", "closed", "base", "mid") + gen "Do you really think she was looking at you?" ("base", xpos="far_left", ypos="head") + ton "After that? There's no doubt... She's hooked." ("base", "narrow", "annoyed", "mid") + ton "Now I've just got to reel her in." ("grin", "base", "base", "R") + ton "If that's all right with you, sir!" ("soft", "base", "base", "mid") + gen "You're asking for my permission?" ("base", xpos="far_left", ypos="head") + ton "Well, I was only supposed to buy favours from the boys..." ("open", "closed", "base", "mid") + gen "Eat your heart out!" ("grin", xpos="far_left", ypos="head") + gen "Just make sure you keep me in the loop..." ("base", xpos="far_left", ypos="head") + ton "Thanks, [ton_genie_name]." ("base", "base", "base", "mid") + gen "Did she receive any points for it?" ("base", xpos="far_left", ypos="head") + ton "Well, not this time..." ("open", "base", "shocked", "R") + gen "I think you should give her some anyway." ("base", xpos="far_left", ypos="head") + gen "For being a tease!" ("grin", xpos="far_left", ypos="head") + ton "Very well..." ("grin", "base", "base", "mid") + ton "Twenty points for Slytherin!" ("open", "closed", "base", "mid") + ton "Now, if you don't mind... It's getting a bit late..." ("open", "base", "base", "R") + gen "Yes. You may leave..." ("base", xpos="far_left", ypos="head") + ton "Good night, [ton_genie_name]." ("base", "happyCl", "base", "mid") + gen "Good night, [tonks_name]." ("base", xpos="far_left", ypos="head") + + # Tonks leaves + + call increase_house_points("s", 20) + + if ton_reputation < 4: # Points til 4. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + + +### Tier 2 ### + +label nt_pr_teach_T2_E1: # Tier 2 - Event 1 - Hufflepuff girl + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Guess what happened, [ton_genie_name]!" ("base", "happyCl", "base", "mid", xpos="mid", ypos="base", trans=fade) + + if nt_pr_teach.points <= 4 and ton_reputation <= 8: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"................\"": + pass + "\"You made that Hufflepuff girl squirt again?\"": + ton "Yes! Right on point! I'm impressed..." ("open", "base", "raised", "mid") + ton "I just got done cleaning my desk..." ("horny", "base", "base", "down") + ton "And I didn't use my wand to clean it..." ("horny", "base", "angry", "mid") + gen "Very good, [tonks_name]..." ("base", xpos="far_left", ypos="head") + ton "Thank you, [ton_genie_name]. Until next time..." ("base", "base", "base", "mid") + call increase_house_points("h", 40) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "*Umm*... You found the golden ticket?" ("base", xpos="far_left", ypos="head") + ton "Better! I had a student come to me to sell a favour!" ("grin", "base", "base", "mid") + gen "And you haven't bought a favour from them before?" ("base", xpos="far_left", ypos="head") + ton "Not one! They're not even in any of my classes!" ("grin", "base", "base", "R") + gen "Very good! Word must be getting around that you're... \"purchasing\"." ("base", xpos="far_left", ypos="head") + gen "So what house is he in?" ("base", xpos="far_left", ypos="head") + ton "Oh... *Umm*... it wasn't a he..." ("base", "base", "base", "down") + ton "I hope that's fine... I know I'm supposed to be balancing out the favours for the boys..." ("mad", "base", "shocked", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + gen "(I'd forgotten about Miss Granger's dumb \"M.R.M.\" thing...)" ("base", xpos="far_left", ypos="head") + gen "(Does she even still run that?)" ("base", xpos="far_left", ypos="head") + gen "I wouldn't worry about that too much... As long as you're also buying from the boys, I don't think it should matter." ("base", xpos="far_left", ypos="head") + ton "Good... Because there was no way I could turn down this cute little Hufflepuff..." ("grin", "closed", "base", "mid") + ton "Poor thing must have spent hours building up the courage..." ("base", "wink", "base", "mid") + gen "So what did you buy from her?" ("base", xpos="far_left", ypos="head") + ton "Well... I asked her what sort of favour she wanted to sell me..." ("soft", "narrow", "base", "R") + ton "She was so flustered... And probably didn't plan this far ahead at all..." ("grin", "happyCl", "base", "mid") + ton "She started babbling on and on, so I calmed her down by letting her know what favour I wanted..." ("soft", "narrow", "base", "L") + gen "Was it something naughty?" ("grin", xpos="far_left", ypos="head") + ton "Naturally..." ("horny", "closed", "base", "mid") + ton "She just sort of stood there after I told her, stunned for a little bit..." ("soft", "closed", "base", "mid") + ton "I rushed to the door and made sure it was locked." ("soft", "base", "base", "R") + ton "After that, I sat down in the front row of the class, and told her to sit on my desk..." ("grin", "base", "shocked", "mid") + gen "*Mmm*, now that's a front row seat to die for." ("base", xpos="far_left", ypos="head") + ton "All that was missing was a bucket of popcorn..." ("horny", "wide", "annoyed", "mid") + ton "Eventually, she was able to muster up enough courage to pull up her skirt..." ("base", "base", "angry", "mid") + ton "Poor thing only thought to ask how many points she'd be paid after she lifted her skirt though." ("silly", "happyCl", "base", "mid") + ton "I told her five for showing me her panties..." ("soft", "base", "base", "R") + gen "Only five?" ("base", xpos="far_left", ypos="head") + ton "She said the same. I explained that showing her plain white panties only gets five points." ("base", "closed", "annoyed", "mid") + ton "If she were to take those panties off though... Then that might get Hufflepuff an extra twenty..." ("horny", "base", "angry", "mid") + gen "Did she say yes?" ("base", xpos="far_left", ypos="head") + ton "She didn't say anything... but she pulled them down all the same..." ("soft", "closed", "base", "mid") + ton "" ("base", "base", "angry", "mid") + gen "Nice! Getting a student to strip on the first favour is hard work!" ("grin", xpos="far_left", ypos="head") + ton "Oh, we're not done yet..." ("open", "closed", "base", "mid") + ton "After soaking in the view for a while, I started to notice she was soaking as well..." ("horny", "base", "angry", "mid") + ton "So... I offered her forty points to play with herself... for me..." ("open", "closed", "base", "mid") + gen "*Mmmm*... Go on..." ("base", xpos="far_left", ypos="head") + ton "*Ugh*... It was amazing!{w} She was so nervous... the expression on her face looked incredible..." ("horny", "base", "base", "ahegao") + ton "That, and the soft mewling while she did it..." ("horny", "base", "angry", "mid") + ton "It was that perfect combination of \"slutty need\" and \"statuesque beauty\"..." ("base", "base", "base", "ahegao") + ton "I wanted to taste her so badly..." ("open_wide_tongue", "wide", "base", "ahegao") + gen "..................." ("grin", xpos="far_left", ypos="head") + ton "It was a struggle to hold myself back... I don't think she would've been ready for that just yet..." ("open", "closed", "worried", "mid") + gen "...................." ("base", xpos="far_left", ypos="head") + ton "But she was more than ready to squirt all over my table..." ("silly", "happyCl", "base", "mid") + gen "She did what?!" ("angry", xpos="far_left", ypos="head") + ton "*Ugh*... I had to spend ten whole minutes scourgifying the desk afterwards..." ("mad", "base", "shocked", "down") + gen "*Ah*... Very good..." ("base", xpos="far_left", ypos="head") + ton "" ("base", "base", "base", "mid") + gen "I think that should be all for now..." ("base", xpos="far_left", ypos="head") + gen "Much more of this, and I'll need to \"scour-ify\" my own desk as well..." ("angry", xpos="far_left", ypos="head") + ton "I can help you with that." ("horny", "base", "angry", "mid") + gen "Maybe some other time..." ("base", xpos="far_left", ypos="head") + ton "*Mmmm*... okay then, [ton_genie_name]." ("base", "base", "annoyed", "mid") + ton "I better be on my way as well now..." ("open", "base", "base", "R") + ton "(Fuck knows, I could use a bit of \"alone time\" myself...)" ("base", "base", "base", "stare") + + # Tonks leaves + + call increase_house_points("h", 40) + + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + +label nt_pr_teach_T2_E2: # Tier 2 - Event 2 - Ravenclaw boy + #TODO Have a few drops of cum on her clothes when she comes in + $ tonks.set_cum(legs="light") + $ tonks.set_cum(pussy="light") + + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hello, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if nt_pr_teach.points <= 4 and ton_reputation <= 8: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"How was your day?\"": + pass + "\"Make it quick!\"": + ton "Remember that cute boy?" ("open", "base", "base", "mid") + ton "Every time he shot out some cum for me I gave him five points..." ("horny", "base", "angry", "mid") + gen "I bet he earned quite a lot today. Well done, [tonks_name]..." ("base", xpos="far_left", ypos="head") + ton "That he did, [ton_genie_name]... See you next time..." ("base", "base", "base", "mid") + call increase_house_points("r", 20) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "How did your day go?" ("base", xpos="far_left", ypos="head") + ton "The teaching was a little dull..." ("upset", "base", "base", "stare") + ton "Simple wards, hex-detection, basic stuff..." ("soft", "base", "base", "stare") + ton "Not that anyone else would think so, with how much they all struggled with it..." ("upset", "base", "annoyed", "R") + gen "I was more interested in hearing about your... \"extracurricular\" activities..." ("base", xpos="far_left", ypos="head") + ton "I know, I just wanted to get that off my chest." ("upset", "closed", "base", "mid") + ton "I'd complain to someone else, but I'm not that fond of the other teachers..." ("annoyed", "base", "base", "down") + gen "Like who?" ("base", xpos="far_left", ypos="head") + ton "Well, McGonagall is as stuck-up as ever and Slughorn is a gross weirdo..." ("open", "closed", "shocked", "R") + ton "Anyway, let's get on with the story, shall we?" ("grin", "wink", "base", "mid") + + menu: + "-Let her know about the cum-": + $ choice_flag=True + gen "You do know that you've got some cum on you?" ("base", xpos="far_left", ypos="head") + ton "*Hmm*?..." ("base", "base", "base", "down") + ton "Oh..." ("mad", "base", "shocked", "down") + ton "That cheeky bugger! I can't believe he actually shot it that far..." ("open", "base", "base", "down") + gen ".................." ("base", xpos="far_left", ypos="head") + ton "Best to start from the beginning..." ("soft", "closed", "base", "mid") + "-Ignore it-": + $ choice_flag=False + pass + + ton "So, I spent a little time with my favourite Ravenclaw student today..." ("soft", "narrow", "base", "down") + gen "Another detention session after class?" ("base", xpos="far_left", ypos="head") + ton "I don't need to resort to detention anymore... He's learned what a wink in class means." ("grin", "wink", "base", "mid") + ton "Plus, I think a few of the other students have worked out what it means as well." ("base", "narrow", "base", "R") + ton "There were a few whispers today... Hopefully that helps get the word out..." ("soft", "base", "base", "mid") + gen "I bet." ("base", xpos="far_left", ypos="head") + ton "So, after class, I locked the door like normal and went over to him..." ("open", "base", "base", "R") + ton "Let him know that I wanted another favour..." ("open", "closed", "base", "mid") + ton "He wanted to sell me a kiss today... I almost took him up on it..." ("horny", "base", "base", "stare") + ton "I think he was a little disappointed when I told him I wanted another look..." ("grin", "base", "shocked", "R") + ton "So I told him I didn't {b}just{/b} want to look at it..." ("soft", "narrow", "shocked", "mid") + ton "But watch him play with it..." ("horny", "narrow", "annoyed", "mid") + gen "Make him an offer he can't refuse..." ("base", xpos="far_left", ypos="head") + ton "His eyes truly lit up after that..." ("base", "happyCl", "base", "mid", hair="horny") + ton "He just kept on staring at me, while he started stroking it..." ("horny", "narrow", "base", "mid") + ton "Getting it hard for his teacher..." ("horny", "base", "base", "ahegao") + ton "*Mmmm*... The way he was staring at my tits... with such hunger..." ("soft", "closed", "shocked", "mid") + ton "I just {b}had{/b} to get them out for him..." ("silly", "base", "shocked", "mid") + gen "Nice!" ("grin", xpos="far_left", ypos="head") + ton "They got him even more excited..." ("horny", "base", "base", "ahegao", cheeks="blush") + ton "He even started to speak after that..." ("base", "closed", "base", "mid", cheeks="blush") + gen "What did he say?" ("base", xpos="far_left", ypos="head") + ton "The usual stuff..." ("soft", "base", "base", "R") + ton "How pretty I was, how nice my tits looked..." ("crooked_smile", "base", "base", "down") + ton "You know how guys are..." ("base", "base", "annoyed", "mid") + ton "What was weird was... when he started to call me mommy again..." ("upset", "closed", "base", "mid") + gen "What a wimp." ("base", xpos="far_left", ypos="head") + ton "Don't be cruel, [ton_genie_name]! It's just a little dirty talk..." ("soft", "base", "raised", "R") + ton "And you have to admit, it's kinda hot... I even joined in on it." ("base", "narrow", "base", "mid") + gen "Really?" ("base", xpos="far_left", ypos="head") + ton "What do you think made him fire his load across the room?" ("horny", "narrow", "base", "mid") + ton "All it took was me saying \"cum for Mommy\"... and he had shot the biggest load towards me." ("horny", "closed", "base", "mid") + ton "" ("base", "base", "angry", "mid") + gen "Fuck... That {b}is{/b} pretty hot..." ("base", xpos="far_left", ypos="head") + ton "I know..." ("crooked_smile", "narrow", "base", "mid") + ton "*Ugh*... I definitely have to go rub one out after this..." ("mad", "base", "base", "ahegao") + ton "See you, [ton_genie_name]." ("base", "narrow", "base", "L") + + if choice_flag: + gen "Are you going to do anything about the cum?" ("base", xpos="far_left", ypos="head") + ton "*Hmm*?... The cum?" ("upset", "base", "worried", "down") + ton "Oh... Why bother..." ("soft", "base", "base", "down") + ton "It was already there on my way over here." ("soft", "closed", "shocked", "mid") + ton "Besides, it'll be good for spreading the word, don't you think?" ("horny", "narrow", "base", "mid") + gen "Whatever you say..." ("base", xpos="far_left", ypos="head") + + gen "Goodbye, [tonks_name]." ("base", xpos="far_left", ypos="head") + + # Tonks leaves + + call increase_house_points("r", 20) + + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + +label nt_pr_teach_T2_E3: # Tier 2 - Event 3 - Slytherin boy + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "[ton_genie_name]..." (face="horny", xpos="mid", ypos="base", trans=fade) + + if nt_pr_teach.points <= 4 and ton_reputation <= 8: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"How was your day?\"": + pass + "\"Make it quick!\"": + ton "This Slytherin dickhead was asking for trouble again!" ("mad", "base", "angry", "R") + ton "I did my best to punish him... thoroughly..." ("horny", "base", "angry", "mid") + gen "Very good, [tonks_name]..." ("base", xpos="far_left", ypos="head") + ton "*Mhmm*... Until next time, [ton_genie_name]..." ("base", "happyCl", "base", "mid") + call increase_house_points("s", 20) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "How'd your favour go today?" ("base", xpos="far_left", ypos="head") + ton "It was all right..." ("open", "base", "base", "R") + ton "I was able to kill two birds with one stone, though." ("base", "closed", "annoyed", "mid") + gen "I'm intrigued." ("base", xpos="far_left", ypos="head") + ton "So, I had some cocky little brat from Slytherin cause all sorts of trouble in class." ("open", "narrow", "annoyed", "downR") + ton "Talking... letting a chocolate frog loose... forgetting to lock his \"Monster Book of Monsters\"..." ("open", "closed", "base", "mid") + gen "(His what?)" ("base", xpos="far_left", ypos="head") + ton "Just being a general pain in the ass." ("open", "base", "angry", "R") + gen "Sounds like a hassle." ("base", xpos="far_left", ypos="head") + ton "Slytherins always are." ("upset", "base", "base", "stare") + ton "Anyway, I let him know he'd earned himself detention after class." ("open", "closed", "base", "mid") + ton "Little bastard cursed me out for that... Disrespected me in front of the entire class..." ("upset", "base", "angry", "mid") + ton "Once the class had emptied out, I proceeded to lock the door... to scare him a little..." ("soft", "base", "annoyed", "R") + ton "After that I let him know that his \"Punishment\" was going to be selling me a favour." ("soft", "closed", "base", "mid") + + ton "I made him pull down his pants and whip his cock out..." ("open", "base", "shocked", "mid") + ton "At first the idiot thought I was going to jerk him off..." ("disgust", "base", "shocked", "R") + ton "I might have, if he'd played his cards right..." ("open", "narrow", "base", "mid") + ton "Instead, his favour wouldn't be nearly as fun." ("soft", "narrow", "shocked", "R") + ton "I demanded of him to start jacking it..." ("soft", "base", "annoyed", "mid") + ton "It was actually pretty cute at first..." ("open", "closed", "base", "mid") + ton "Then just as he was about to blow his load..." ("soft", "closed", "base", "mid") + ton "Boom! Petrficus Totalus!" ("scream", "shocked", "angry", "mid", trans=vpunch_repeat) + gen "{i}Petrifi{/i}-{w} {i}Petrifico{/i}?-{w} {i}Petrificato{/i}--" ("base", xpos="far_left", ypos="head") + ton "I petrified him!" ("open", "wide", "angry", "mid") + gen "*Ahh*..." ("base", xpos="far_left", ypos="head") + ton "*Ha-ha-ha*... You should have seen his look on his face!" ("silly", "happyCl", "base", "mid") + ton "That's what he gets, the little shit!" ("mad", "base", "angry", "down") + ton "Not only did I leave him blue balled... I also left him pants down in the class." ("base", "base", "angry", "mid") + gen "Forever?" ("base", xpos="far_left", ypos="head") + ton "No, just until the spell wears off..." ("open", "closed", "base", "mid") + ton "In an hour or so..." ("upset", "base", "angry", "R") + ton "That, or someone else finds him..." ("upset", "base", "base", "up") + ton "Either way, he learned his lesson about not screwing around in my class." ("open", "closed", "base", "mid") + gen "Very good..." ("base", xpos="far_left", ypos="head") + ton "Thank you, Sir..." ("base", "base", "base", "mid") + ton "See you..." ("base", "happyCl", "base", "mid") + + # Tonks leaves + + call bld + gen "(This bitch might be crazier than I thought...)" ("base", xpos="far_left", ypos="head") + + call increase_house_points("s", 20) + + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + +label nt_pr_teach_T2_E4: # Tier 2 - Event 4 - Slytherin girl + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if nt_pr_teach.points <= 4 and ton_reputation <= 8: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"How was your day?\"": + pass + "\"Make it quick!\"": + ton "This cute Slytherin girl earned herself a couple of points from me today..." ("open", "base", "base", "R") + ton "She's really starting to get into it!" ("base", "base", "angry", "mid") + gen "Good work, [tonks_name]..." ("base", xpos="far_left", ypos="head") + ton "Thank you... Have a good night, [ton_genie_name]..." ("base", "base", "base", "mid") + call increase_house_points("s", 20) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "Anything interesting happen today, [tonks_name]?" ("base", xpos="far_left", ypos="head") + ton "Oh yes!... I broke new ground today..." ("silly", "base", "shocked", "mid") + gen "That's very promising... So what happened?" ("base", xpos="far_left", ypos="head") + ton "Remember that cute little Slytherin?" ("horny", "base", "base", "mid") + ton "The one that's still coming to grips with her budding sexuality?" ("base", "base", "angry", "mid") + gen "The girl that you're turning into a lesbian?" ("base", xpos="far_left", ypos="head") + ton "Well, I had her stay back after class today..." ("horny", "closed", "base", "mid") + ton "For someone who supposedly hates selling favours... she was surprisingly keen today..." ("base", "base", "shocked", "mid") + gen "Maybe she's finally coming around..." ("base", xpos="far_left", ypos="head") + ton "I got her to give me a little peek under her skirt, for twenty house points..." ("base", "narrow", "base", "down") + ton "And, after she'd pulled up her skirt, I did the old... \"offer more points for something else\" trick..." ("grin", "base", "base", "mid") + ton "Had her drop her panties as well." ("base", "narrow", "base", "down") + ton "I was expecting her to at least argue at least a bit about the amount of points she would receive for it..." ("open", "base", "base", "R") + ton "But she dropped them in an instant, without even hearing my offer." ("horny", "base", "annoyed", "mid") + ton "Next, she just looked at me as if to ask, \"what next\"?" ("open", "base", "base", "mid") + ton "*Ugh*... It was so fucking hot..." ("soft", "base", "base", "stare", hair="horny") + gen "And?... What did happen \"next\"?" ("grin", xpos="far_left", ypos="head") + ton "I had her play with herself..." ("grin", "closed", "shocked", "mid") + ton "But... that cute face of hers... and all the teasing..." ("open", "closed", "shocked", "R", cheeks="blush") + ton "I decided to take matters into my own hands..." ("grin", "base", "base", "stare", cheeks="blush") + ton "Specifically her matter..." ("horny", "base", "base", "mid") + gen "You couldn't help yourself, could you?" ("base", xpos="far_left", ypos="head") + ton "Can you blame me for wanting to \"finger\" that cute little slut?" ("soft", "base", "annoyed", "mid", cheeks="blush") + gen "You're a bad teacher, you know that?" ("grin", xpos="far_left", ypos="head") + ton "Tell me about it..." ("horny", "narrow", "base", "up") + gen "What did she have to say about the whole thing?" ("base", xpos="far_left", ypos="head") + ton "Not much..." ("soft", "narrow", "base", "R") + ton "She just looked up at me, with those puppy-dog eyes... whispering \"wow\" and \"don't stop\" to me..." ("base", "narrow", "shocked", "up") + ton "To think only a couple of days ago she tried pretending not to be into me..." ("open", "closed", "base", "mid") + gen "Think she'll start talking now?" ("base", xpos="far_left", ypos="head") + ton "Not unless she's ready to out herself as bi..." ("annoyed", "base", "base", "R") + ton "But there are already some whispers going around school..." ("base", "base", "annoyed", "down") + ton "And I may or may not have contributed to that..." ("grin", "base", "base", "R") + gen "Very good work." ("base", xpos="far_left", ypos="head") + gen "That'll be all then..." ("base", xpos="far_left", ypos="head") + ton "Thank you, [ton_genie_name]..." ("base", "happyCl", "base", "mid") + ton "See you next time..." ("base", "base", "base", "mid") + + # Tonks leaves + + call increase_house_points("s", 20) + + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event diff --git a/game/scripts/characters/tonks/events/requests/hands-on_lessons.rpy b/game/scripts/characters/tonks/events/requests/hands-on_lessons.rpy new file mode 100644 index 00000000..f3eeb6c3 --- /dev/null +++ b/game/scripts/characters/tonks/events/requests/hands-on_lessons.rpy @@ -0,0 +1,386 @@ + + +### Grope me ### + +# (Tonks lets her students play with her tits, ass...) + +#TODO Add Tonks chibi to all her public request nightly reports + +label nt_pr_grope_start: + ton "" ("base", "base", "base", "mid", xpos="right", ypos="base", trans=fade) + + if ton_tier == 2: + + if nt_pr_grope.points == 0: + gen "Ready for the next step?" ("base", xpos="far_left", ypos="head") + ton "*Mmmm*... You make it sound so ominous." ("soft", "narrow", "base", "mid") + ton "What shall I do next with my students..." ("soft", "narrow", "shocked", "R") + if nt_pr_kiss.counter == 0: + ton "Want me to make out with them?" ("horny", "narrow", "base", "mid") + gen "Maybe, but not right now..." ("base", xpos="far_left", ypos="head") + else: + ton "Want me to make out with them again?" ("horny", "base", "angry", "mid") + gen "I was thinking you could take a few of these boys to second base." ("base", xpos="far_left", ypos="head") + ton "Second base?! Already?" ("open", "shocked", "shocked", "up") + gen "We're trying to earn you a reputation as a favour trader." ("base", xpos="far_left", ypos="head") + gen "Making your students write lines in their underwear isn't going to cut it..." ("base", xpos="far_left", ypos="head") + ton "I suppose you might be right..." ("base", "base", "base", "up") + ton "I'm not sure if the students will be ready for it though..." ("mad", "base", "shocked", "R") + gen "Please, you sound like you're talking about a pop-quiz." ("base", xpos="far_left", ypos="head") + gen "All you have to do is get them to grope your chest a little..." ("base", xpos="far_left", ypos="head") + ton "My breasts?" ("horny", "happyCl", "shocked", "up") + gen "I can't imagine any of them saying no to that..." ("grin", xpos="far_left", ypos="head") + ton "*Mmm*... Well if you say so...{w} You are the expert." ("base", "narrow", "base", "down") + gen "That I am." ("base", xpos="far_left", ypos="head") + gen "Now get out there and buy some favours!" ("base", xpos="far_left", ypos="head") + ton "Yes, sir!" ("grin", "closed", "base", "mid") + ton "(This is way better than being an auror!)" ("horny", "base", "base", "stare", cheeks="blush") + + else: + gen "Think you're up for messing around with your students again?" ("base", xpos="far_left", ypos="head") + gen "Let them cop a feel?" ("base", xpos="far_left", ypos="head") + ton "Consider it done, [ton_genie_name]." (face="horny") + gen "I'll see you after class..." ("base", xpos="far_left", ypos="head") + + elif ton_tier >= 3: + + if nt_pr_grope.points == 0: # Tell her to be even lewder for the next level of favors. + + "Dev Note" "Not in 1.37 - Write 2nd intro." + + else: # Repeat + gen "Would you like to mess around with your students again?" ("base", xpos="far_left", ypos="head") + ton "And let them grope their teacher?" ("base", "base", "base", "mid") + gen "Any way they like!" ("grin", xpos="far_left", ypos="head") + ton "That sounds perfect!" ("base", "base", "base", "mid") + gen "I'll see you after class..." ("base", xpos="far_left", ypos="head") + ton "Yes, [ton_genie_name]...{heart}" ("base", "base", "base", "mid") + + # Tonks leaves + + $ nt_pr_grope.inProgress = True + + call ton_walk(action="leave") + jump end_tonks_event + + + +### Tier 1 ### + +label nt_pr_grope_T1_E1: # Tier 1 - Event 1 - Slytherin boy + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if ton_reputation <= 7 and nt_pr_grope.points < 4: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"You are back!\"": + pass + "\"Make it quick!\"": + ton "Remember that Slytherin boy?..." ("horny", "base", "angry", "mid") + ton "I let him play with his favourite pair of tits again..." ("base", "base", "angry", "mid") + gen "Well done, [tonks_name]... We'll talk next time." ("base", xpos="far_left", ypos="head") + ton "Yes, [ton_genie_name]. Have a good night." ("base", "base", "base", "mid") + call increase_house_points("s", 40) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "How were classes today, [tonks_name]?" ("base", xpos="far_left", ypos="head") + gen "Taught your students some valuable lessons?" ("base", xpos="far_left", ypos="head") + ton "I'm not sure about valuable..." ("base", "narrow", "base", "downR") + ton "But I do know that he isn't going to forget it any time soon!" ("soft", "wink", "shocked", "mid") + gen "That's what I like to hear!" ("base", xpos="far_left", ypos="head") + ton "Remember that Slytherin cutie I held back to write lines?" ("base", "wide", "base", "R") + gen "Vaguely." ("base", xpos="far_left", ypos="head") + ton "Well, I decided to hold him back after class again." ("open", "closed", "base", "mid") + ton "He tried to put on a proud Slytherin facade, claiming that I had no right to hold him back." ("base", "base", "annoyed", "downR") + ton "Saying I was lucky he didn't \"report me\" for making him pull down his pants..." ("soft", "base", "annoyed", "mid") + ton "It was all empty words, of course..." ("open", "closed", "base", "mid") + ton "And I could tell by the {b}bulge{/b} in his pants that he {b}wanted{/b} to be there - more than anything." ("horny", "closed", "annoyed", "mid") + ton "Still, I let him act tough... just so he wouldn't run away..." ("soft", "narrow", "base", "down") + gen "So? How did you manage to get him to grab a handful?" ("base", xpos="far_left", ypos="head") + ton "I let him know today wasn't a \"punishment\"." ("base", "narrow", "annoyed", "mid") + ton "Asked what kept him distracted in class..." ("open", "base", "base", "R") + ton "What he was constantly staring at..." ("soft", "narrow", "annoyed", "downR") + ton "He didn't want to say it at first..." ("soft", "narrow", "base", "mid") + ton "So I leaned in closer...{w} Let him feel my breath on his neck..." ("base", "closed", "annoyed", "mid") + ton "And then I whispered the truth into his ear..." ("soft", "narrow", "annoyed", "stare") + ton "That he's a dirty little \"tit addict\"!" ("crooked_smile", "base", "angry", "up", hair="neutral") + gen "You naughty girl!" ("grin", xpos="far_left", ypos="head") + ton "*Ugh*... He went redder than a tomato when I said that." ("horny", "closed", "base", "mid", hair="horny") + ton "And as both you and I know there's only one cure for that..." ("open", "closed", "base", "mid") + ton "So I grabbed his wrist and forced it up to my chest!" ("open", "closed", "annoyed", "mid") + gen "Just like that?" ("base", xpos="far_left", ypos="head") + ton "He was hardly going to grab them himself!" ("crooked_smile", "narrow", "base", "downR") + ton "Besides, grabbing them is the only way to get them off his mind..." ("soft", "narrow", "base", "R") + ton "Or at least that's what I told him..." ("horny", "base", "base", "mid") + gen "And he believed you?" ("base", xpos="far_left", ypos="head") + ton "Maybe... Maybe not..." ("base", "base", "base", "R") + ton "All I know is that he wasn't afraid to give it a go." ("grin", "happyCl", "base", "mid") + gen "I gather that he enjoyed himself?" ("base", xpos="far_left", ypos="head") + ton "He just sat there, silently groping my tits for several minutes..." ("soft", "narrow", "shocked", "down") + ton "*Ugh*... It took everything I had not to hold him down and jump his bone..." ("horny", "base", "base", "up", hair="horny") + gen "[tonks_name]..." ("base", xpos="far_left", ypos="head") + ton "Right, well after letting him play with them for a little while, I sent him back to class." ("mad", "narrow", "base", "down") + gen "Think you'll gain any reputation from this encounter?" ("base", xpos="far_left", ypos="head") + ton "*Hmm*... I'm not sure if he'll talk..." ("annoyed", "narrow", "base", "R") + ton "But the fact I ask students to stay behind after class should start spreading some rumours." ("base", "wink", "base", "mid") + gen "Good to hear. That'll be all then, [tonks_name]." ("base", xpos="far_left", ypos="head") + ton "Thank you, [ton_genie_name]." ("base", "base", "base", "mid") + + # Tonks leaves + + call increase_house_points("s", 40) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + +label nt_pr_grope_T1_E2: # Tier 1 - Event 2 - Ravenclaw boy + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if ton_reputation <= 7 and nt_pr_grope.points < 4: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"You are back!\"": + pass + "\"Make it quick!\"": + ton "That shy Ravenclaw boy stayed behind in class again..." ("base", "base", "base", "mid") + ton "He almost suffocated himself in between my cleavage..." ("silly", "happyCl", "base", "mid") + gen "Well done, [tonks_name]... We'll talk next time." ("base", xpos="far_left", ypos="head") + ton "Yes, [ton_genie_name]. Have a good night." ("base", "base", "base", "mid") + call increase_house_points("r", 20) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "So, how are you finding the education industry?" ("base", xpos="far_left", ypos="head") + ton "Fun!" ("grin", "happyCl", "base", "mid") + ton "I never thought lesson planning and marking tests would actually be enjoyable, but there's something rather cathartic to it..." ("base", "base", "base", "mid") + gen "And your... other tasks?" ("base", xpos="far_left", ypos="head") + ton "Oh, of course messing around with our students is a nice bonus!" ("grin", "narrow", "base", "mid") + gen "Speaking of..." ("base", xpos="far_left", ypos="head") + ton "Don't worry, I've got a story for you, old man." ("base", "base", "annoyed", "mid") + ton "Remember that shy Ravenclaw boy I had touch himself for me the other day?" ("base", "narrow", "base", "R") + gen "Maybe, but go on..." ("base", xpos="far_left", ypos="head") + ton "He stayed behind after class today..." ("open", "closed", "base", "mid") + gen "He asked you to buy a favour from him?" ("base", xpos="far_left", ypos="head") + ton "No... he's too shy. He wouldn't have the courage to do that..." ("soft", "base", "worried", "down") + ton "He just - sort of - stayed in his seat after class... while looking down at his desk." ("soft", "narrow", "base", "down") + ton "I waited until every other student had left, and then locked the door..." ("open", "closed", "base", "mid") + gen "Who wouldn't want to be locked-up together with you!" ("grin", xpos="far_left", ypos="head") + ton "It's more to keep the other students out..." ("soft", "base", "raised", "R") + ton "But that doesn't mean he didn't gasp a little when I did it." ("horny", "wink", "annoyed", "mid") + ton "So, after that, I went over and asked if there was anything wrong." ("base", "narrow", "base", "mid") + ton "He just began mumbling about being sorry I had to give him detention..." ("soft", "base", "base", "downR") + ton "And promised he'd never do anything bad in class again..." ("open", "base", "base", "R") + ton "Those poor Ravenclaws sure do care about school!" ("silly", "happyCl", "base", "mid") + ton "I made sure to let him know he was forgiven..." ("base", "wide", "base", "down") + gen "How very wholesome of you..." ("base", xpos="far_left", ypos="head") + ton "However... after this was done, he didn't give any inclination he wanted to get up from his seat..." ("soft", "closed", "base", "mid") + ton "So, I figured he wanted to fool around again..." ("base", "narrow", "shocked", "down") + ton "And boy was I right!" ("horny", "base", "base", "stare") + ton "His face lit right up, when I asked if he wanted to buy another favour..." ("base", "base", "base", "mid") + ton "Perhaps cupping a feel of his teacher's tits!" ("horny", "wide", "annoyed", "mid") + gen "Naughty!" ("grin", xpos="far_left", ypos="head") + ton "He had such an awe-struck look on his face... looking pretty nervous at first..." ("grin", "base", "base", "up") + ton "It made it difficult for me to tell where his mind was going, that cheeky bugger!" ("mad", "closed", "shocked", "mid") + gen "Which was?" ("base", xpos="far_left", ypos="head") + ton "Straight in for the motorboat!" ("soft", "shocked", "annoyed", "mid") + gen "Good on him..." ("base", xpos="far_left", ypos="head") + gen "Did he do the noise as well?" ("grin", xpos="far_left", ypos="head") + ton "No...{w} it was more like a hug if I'm being honest." ("annoyed", "base", "shocked", "up") + ton "He just went in, face first into my cleavage, while locking his hands together behind my back." ("open", "closed", "shocked", "mid") + ton "I thought he would've needed a lot more coaxing-into..." ("silly", "narrow", "base", "mid") + gen "I suppose guys might be a bit different in that regard..." ("base", xpos="far_left", ypos="head") + gen "So where did it go from there?" ("base", xpos="far_left", ypos="head") + ton "Nowhere, really...{w} He just stared nuzzling his face into my tits..." ("annoyed", "narrow", "shocked", "R") + ton "Grinding himself against my thigh, while giving me the tightest hug of his life..." ("base", "narrow", "base", "R") + gen "Sounds like heaven..." ("base", xpos="far_left", ypos="head") + ton "It was pretty cute if you ask me." ("grin", "happyCl", "base", "mid") + gen "How long did this \"hug\" last exactly?" ("base", xpos="far_left", ypos="head") + ton "*Pfff*... Five... maybe ten minutes..." ("annoyed", "base", "raised", "downR") + ton "Eventually, it all got a bit too much... and he broke-off the hug..." ("annoyed", "closed", "base", "mid") + ton "Stammered a thanks, and ran off." ("base", "base", "raised", "down") + gen "Did you even get to reward any points?" ("base", xpos="far_left", ypos="head") + ton "I did, even if he wasn't there to hear it..." ("silly", "closed", "base", "mid") + gen "Very good. That'll be all then." ("base", xpos="far_left", ypos="head") + ton "Have a good night, [ton_genie_name]." ("base", "base", "shocked", "mid") + + # Tonks leaves + + call increase_house_points("r", 20) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + +label nt_pr_grope_T1_E3: # Tier 1 - Event 3 - Two Gryffindor boys + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if ton_reputation <= 7 and nt_pr_grope.points < 4: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"You are back!\"": + pass + "\"Make it quick!\"": + ton "I let those two Gryffindors feel me up again..." ("open", "base", "base", "R") + ton "Of course they didn't get any points for it..." ("base", "base", "angry", "mid") + gen "Great job, [tonks_name]..." ("base", xpos="far_left", ypos="head") + ton "Thank you, [ton_genie_name]. Have a good night." ("base", "base", "base", "mid") + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "I didn't notice any extra points today..." ("base", xpos="far_left", ypos="head") + gen "Does that mean what I think it does?" ("base", xpos="far_left", ypos="head") + ton "Perhaps..." ("soft", "closed", "raised", "mid") + gen "So... you went for one of the Gryffindor students?" ("base", xpos="far_left", ypos="head") + ton "Kind of..." ("grin", "base", "base", "R") + ton "It might have been \"two boys\" today..." ("open", "wide", "base", "R") + gen "Nice, selling two favours in one day should get the word around..." ("base", xpos="far_left", ypos="head") + ton "Well... it wasn't exactly two favours..." ("mad", "base", "base", "down") + gen "Oh... Wait, Oh...{w} I see..." ("base", xpos="far_left", ypos="head") + ton "They're such good friends! I don't think I could manage splitting them apart..." ("grin", "happyCl", "base", "mid") + ton "Besides, I've already fooled around a little with them, so there was barely any convincing involved..." ("base", "base", "annoyed", "down") + gen "I'm sure there wasn't... so how was it?" ("base", xpos="far_left", ypos="head") + ton "Honestly? Pretty fucking hot..." ("horny", "base", "angry", "mid") + ton "Having four hands grabbing at you at once is {b}intense{/b}..." ("horny", "base", "annoyed", "up") + gen "I bet...{w=0.3} So did they just play with your tits?" ("base", xpos="far_left", ypos="head") + ton "They did at first...{w} But then I quickly found one of their hands somewhere else..." ("base", "base", "shocked", "mid") + ton "Pretty soon after that, they each moved the other onto my ass as well..." ("soft", "base", "base", "stare") + ton "*Ugh*... I had to draw the line once they tried groping me under my shirt..." ("mad", "base", "base", "ahegao") + gen "*Mmmm*... did you?" ("base", xpos="far_left", ypos="head") + ton "I don't think I would have been able to stop them at all if I didn't..." ("open", "closed", "base", "mid") + ton "Or myself, for that matter..." ("upset", "base", "base", "up") + ton "Not that it would have been the worst thing in the world to let them touch my tits directly..." ("base", "base", "base", "R") + ton "Anyhow, I offered them some house points for it... but to my surprise they both kindly refused..." ("open", "closed", "base", "mid") + ton "Said they'd much rather have a \"go at it\" again..." ("base", "base", "angry", "mid") + gen "Think they'll spread the word this time?" ("base", xpos="far_left", ypos="head") + ton "They were both pitching a pretty big tent when they left class... that was noticeable to say the least..." ("silly", "happyCl", "base", "mid") + gen "Very good, [tonks_name], very good..." ("base", xpos="far_left", ypos="head") + ton "Thank you, sir." ("base", "happyCl", "base", "mid") + ton "Now, if you don't mind... I think I better head to my room for some...{w} \"unwinding\"..." ("mad", "narrow", "base", "R") + gen "Have a good night then..." ("base", xpos="far_left", ypos="head") + ton "Night, [ton_genie_name]!" ("silly", "happyCl", "base", "mid") + + # Tonks leaves + + # No points for Gryffindor. + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + +label nt_pr_grope_T1_E4: # Tier 1 - Event 4 - Slytherin girl + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if ton_reputation <= 7 and nt_pr_grope.points < 4: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"You are back!\"": + pass + "\"Make it quick!\"": + ton "I tried my luck with that Slytherin girl again..." ("open", "base", "base", "mid") + ton "She's the hardest nut to crack, I tell you..." ("open", "base", "worried", "R") # hardest instead of tough in the UK. + gen "You will have better luck next time, [tonks_name]..." ("base", xpos="far_left", ypos="head") + ton "I hope so too, [ton_genie_name]... Have a good night." ("base", "base", "worried", "mid") + call increase_house_points("s", 40) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "How's my favourite teacher doing today?" ("base", xpos="far_left", ypos="head") + ton "Never been better!" ("silly", "happyCl", "base", "mid") + gen "I take it you were able to buy a favour then?" ("base", xpos="far_left", ypos="head") + ton "You bet! Even if she might not have wanted to sell it at first..." ("base", "wink", "shocked", "mid") + gen "A She?" ("grin", xpos="far_left", ypos="head") + ton "Remember that naive Slytherin that couldn't keep her eyes off me?" ("grin", "base", "raised", "mid") + gen "I think so..." ("base", xpos="far_left", ypos="head") + ton "Well, I held her back after class again." ("base", "closed", "base", "mid") + ton "Of course she made a fit about it... Not that she made any efforts to leave, though..." ("base", "narrow", "shocked", "R") + ton "So, I sat her down, and had a little conversation with her." ("soft", "base", "base", "mid") + gen "About what?" ("base", xpos="far_left", ypos="head") + ton "You know... girl talk..." ("grin", "closed", "base", "mid") + ton "How it's okay to be a little - \"sexually confused\" sometimes..." ("open", "closed", "base", "mid") + ton "And that - maybe - she just needed to get it all out of her system..." ("base", "narrow", "base", "mid") + gen "How did she take that?" ("base", xpos="far_left", ypos="head") + ton "She kept insisting of not having the slightest idea of what I was talking about." ("soft", "narrow", "raised", "R") + ton "Even though her eyes were glued to my chest as she spoke..." ("base", "base", "base", "down") + gen "*Mhmm*................" ("base", xpos="far_left", ypos="head") + ton "Eventually, I just grabbed her wrist and pulled it up to meet my chest..." ("open", "closed", "shocked", "mid") + gen "Just like that?" ("base", xpos="far_left", ypos="head") + ton "*Mhmm*... It was fantastic!" ("base", "base", "base", "stare") + ton "You should have seen the war-of-emotions taking place behind her eyes!" ("horny", "base", "annoyed", "stare") + ton "It was incredible! I love seeing Slytherins get all flustered like that." ("grin", "happyCl", "annoyed", "mid") + gen "Sweet... What happened next?" ("base", xpos="far_left", ypos="head") + ton "She calmed down a bit once I offered her points for this little favour..." ("base", "narrow", "base", "mid") + gen "That calmed her down?" ("base", xpos="far_left", ypos="head") + ton "Apparently. After all, this wasn't the first favour I bought off her..." ("base", "narrow", "raised", "R") + gen "Did she start playing with you after that?" ("base", xpos="far_left", ypos="head") + ton "Not exactly, she just sat there face bright-red, whilst she let me hold her hands against my breasts..." ("open", "base", "shocked", "downR") + ton "And I let her go a couple of seconds after that..." ("normal", "base", "base", "down") + gen "Do you think she'll spread the word that you're buying favours?" ("base", xpos="far_left", ypos="head") + ton "I can't say... I think she's still pretty conflicted about the whole thing..." ("annoyed", "base", "raised", "down") + gen "Do you really think she's a lesbian?" ("base", xpos="far_left", ypos="head") + ton "Maybe... she does seem a little {b}curious{/b}..." ("open", "closed", "base", "mid") + ton "Couple that with her being a stubborn Slytherin..." ("open", "base", "base", "R") + ton "She's a whole mix of confused emotions... but she'll figure it out." ("base", "base", "base", "mid") + gen "Let's hope this isn't a hopeless cause..." ("base", xpos="far_left", ypos="head") + ton "Don't be silly... she's perfect!{w} Just the way I like them." ("horny", "wink", "raised", "mid") + gen "........................" ("base", xpos="far_left", ypos="head") + gen "Well, keep me informed... That should be all for now..." ("base", xpos="far_left", ypos="head") + ton "Yes, [ton_genie_name]!" ("base", "base", "base", "mid") + + # Tonks leaves + + call increase_house_points("s", 40) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + + +### Tier 2 ### + +label nt_pr_grope_T2_E1: # Tier 2 - Event 1 + #Begrudgingly talks about how pretty tonks is + + +label nt_pr_grope_T2_E2: # Tier 2 - Event 2 - Ravenclaw boy again + #breastfeeding and mommy play + + + +label nt_pr_grope_T2_E3: # Tier 2 - Event 3 + #hufflepuff girl comes in asking for another favour + #ends up sucking tonks boobs + + + +label nt_pr_grope_T2_E4: # Tier 2 - Event 4 - + #Tonks has her a slyhterin girl sit there and do work while she has no top on diff --git a/game/scripts/characters/tonks/events/requests/oral_practice.rpy b/game/scripts/characters/tonks/events/requests/oral_practice.rpy new file mode 100644 index 00000000..a82c28d4 --- /dev/null +++ b/game/scripts/characters/tonks/events/requests/oral_practice.rpy @@ -0,0 +1,447 @@ + + +### Kissing ### + +# ([tonks_name] makes out with her students...) + +#TODO Add Tonks chibi to all her public request nightly reports + +label nt_pr_kiss_start: + ton "" ("base", "base", "base", "mid", xpos="right", ypos="base", trans=fade) + + if ton_tier == 2: + + if nt_pr_kiss.points == 0: + gen "Ready to try something a little different?" ("base", xpos="far_left", ypos="head") + ton "*Mmmm*... Absolutely! This is the most fun I've had in years!" ("horny", "base", "base", "mid") + ton "What did you have in mind?" ("base", "base", "shocked", "mid") + gen "What do you think?" ("base", xpos="far_left", ypos="head") + if nt_pr_grope.points == 0: + ton "I think making out with them would be really fucking hot..." ("horny", "base", "base", "R") + gen "Just kissing?" ("base", xpos="far_left", ypos="head") + ton "You don't understand...{w} The way I make out..." ("soft", "base", "base", "mid") + ton "It's way more intense than anything these students will have ever experienced..." ("base", "base", "annoyed", "stare") + else: + ton "I know you shot it down earlier... but I think a little making out would be really fucking hot..." ("horny", "base", "angry", "mid") + gen "*Pfft*... you're such a bad girl..." ("base", xpos="far_left", ypos="head") + gen "You've already gotten to second base! Let's not jump back to first!" ("base", xpos="far_left", ypos="head") + ton "You don't get it...{w} The way I make out..." ("horny", "base", "base", "R") + ton "It's way more intense than anything these students will have ever experienced..." ("base", "base", "angry", "mid") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "So you're not just going to give them a peck on the cheek, are you?" ("grin", xpos="far_left", ypos="head") + ton "Oh no..." ("crooked_smile", "narrow", "base", "mid") + ton "They'll be lucky if they can talk straight after I'm done with them..." ("crooked_smile", "closed", "base", "mid") + gen "You've set my expectations in you quite high, you know that right?" ("base", xpos="far_left", ypos="head") + ton "I'll make sure you get your money's worth, don't worry..." ("soft", "wink", "base", "mid") + gen "Just see me after class." ("base", xpos="far_left", ypos="head") + ton "Yes, sir!" ("grin", "base", "base", "R") + + else: + + gen "Fancy another student-snog-session?" ("base", xpos="far_left", ypos="head") + ton "*Mmmm*... You bet... Teaching is my job..." ("horny", "base", "base", "R", hair="horny") + ton "Even if that lesson is \"French Kissing\"..." ("soft", "wink", "shocked", "mid") + gen "Well, don't let me stop you." ("base", xpos="far_left", ypos="head") + ton "Thank you, sir..." ("grin", "base", "base", "mid") + + elif ton_tier >= 3: # Not in 1.37 + + if nt_pr_kiss.points == 0: # Tell her to be even lewder for the next level of favors. + + gen "Would you like to help your students with their oral skills again?" ("base", xpos="far_left", ypos="head") + ton "*Mmmm*, yes... Some of them are in dire need of some practice..." ("horny", "base", "raised", "mid") + gen "Then go give them some practice!" ("grin", xpos="far_left", ypos="head") + ton "I will, [ton_genie_name]..." ("base", "base", "base", "mid") + + else: # Repeat + + gen "How would you feel about French kissing your students again?" ("base", xpos="far_left", ypos="head") + ton "*Mmmm*... Pretty good if the last few times are anything to go by..." ("horny", "base", "base", "R", hair="horny") + ton "I'll see you after class..." ("base", "base", "angry", "mid") + + # Tonks leaves + + $ nt_pr_kiss.inProgress = True + + call ton_walk(action="leave") + jump end_tonks_event + + + +### Tier 1 ### + +label nt_pr_kiss_T1_intro_E1: # Tier 1 - Event 1 - Slytherin boy + #Gentle kissing + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if ton_reputation <= 7 and nt_pr_kiss.points < 4: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"You are back!\"": + pass + "\"Make it quick!\"": + ton "I made out with my favourite Slytherin boy again..." ("open", "base", "base", "R") + ton "He's getting quite good at it..." ("horny", "base", "base", "up") + gen "Well done, [tonks_name]... We'll talk next time." ("base", xpos="far_left", ypos="head") + ton "Have a good night, [ton_genie_name]." ("base", "happyCl", "base", "mid") + call increase_house_points("s", 40) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "Fun day?" ("base", xpos="far_left", ypos="head") + ton "It was!" ("crooked_smile", "happyCl", "base", "mid") + ton "I got to show some students a Boggart for the first time...{w} That was pretty entertaining!" ("silly", "base", "base", "mid") + gen ".................." ("base", xpos="far_left", ypos="head") + ton "Not to mention that I got to take a boy's first kiss..." ("soft", "narrow", "annoyed", "mid") + gen "A first for everybody!" ("grin", xpos="far_left", ypos="head") + ton "*Mmmm*... I know which one I preferred..." ("crooked_smile", "base", "base", "up") + gen "Care to fill me in?" ("base", xpos="far_left", ypos="head") + ton "I'd love to!" ("base", "base", "shocked", "stare") + ton "So, today I had class with my favourite little \"Slytherin boy\"..." ("open", "closed", "base", "mid") + ton "I didn't really have much to do after classes, so I figured I may as well hold him back..." ("grin", "base", "base", "R") + ton "He was expecting me to buy a favour straight away..." ("soft", "closed", "base", "mid") + ton "However, I was in the mood for a little conversation today..." ("base", "narrow", "base", "mid") + ton "Some rather unimportant banter... Such as his performance in class..." ("open", "base", "base", "down") + ton "Then I asked if he had a girlfriend, to maybe help with him at school..." ("base", "happyCl", "base", "mid") + ton "He answered {b}no{/b}, of course... so I showed him some sympathy..." ("soft", "narrow", "base", "R") + ton "Saying how {b}hard{/b} it must be - trying your best to concentrate on school with so many pretty girls running around..." ("soft", "narrow", "shocked", "mid") + gen "(I should go for a walk as well some day...)" ("base", xpos="far_left", ypos="head") + ton "Then I asked if he'd ever made out with any of the girls..." ("base", "base", "raised", "mid") + ton "And of course he hadn't..." ("soft", "base", "shocked", "up") + ton "So, obviously, I just had to buy this little favour from him..." ("open", "closed", "shocked", "mid") + ton "It's my duty as a teacher of this school - to see to my students education!" ("soft", "wink", "shocked", "mid") + gen "How noble..." ("base", xpos="far_left", ypos="head") + ton "He was so excited by the whole thing." ("crooked_smile", "base", "base", "down") + ton "You should have seen his face... It was precious." ("base", "happyCl", "base", "mid") + gen "Was it as intense as you promised?" ("base", xpos="far_left", ypos="head") + ton "Not that intense, per se... I wanted to take it slow for his first time..." ("soft", "narrow", "base", "downR") + ton "I just sat next to him, and slowly peppered a few kisses on his lips..." ("soft", "narrow", "base", "mid") + ton "After the initial excitement died down, we eventually got into a nice rhythm of kissing... and some light tongue-play..." ("horny", "base", "base", "stare") + ton "He was very inexperienced, but definitely eager to learn." ("horny", "wink", "annoyed", "mid") + ton "Then, after five minutes or so, I awarded him some house points... and sent him on his way..." ("base", "narrow", "base", "R") + gen "And that was all?" ("base", xpos="far_left", ypos="head") + ton "I don't think it's the last I'll see of him... Besides, I don't want to push him too far." ("soft", "closed", "base", "mid") + ton "This favour trading might actually be a good way to address student behaviour!" ("crooked_smile", "base", "raised", "mid") + gen "Oh... How so?" ("base", xpos="far_left", ypos="head") + ton "His behaviour has really started to improve after I began buying favours from him!" ("base", "narrow", "base", "mid") + gen "Maybe you should consider dealing with all your troublemakers this way?" ("base", xpos="far_left", ypos="head") + ton "*Hmm*... Don't tempt me..." ("horny", "base", "base", "R") + gen "That'll be all then." ("base", xpos="far_left", ypos="head") + ton "Right, see you, [ton_genie_name]." ("base", "base", "base", "mid") + + # Tonks leaves. + + call increase_house_points("s", 40) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + +label nt_pr_kiss_T1_E2: # Tier 1 - Event 2 - Ravenclaw boy + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if ton_reputation <= 7 and nt_pr_kiss.points < 4: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"You are back!\"": + pass + "\"Make it quick!\"": + ton "Sorry I'm a bit late today..." ("open", "base", "base", "R") + ton "I was \"occupied\" kissing that little Ravenclaw boy again..." ("horny", "base", "angry", "mid") + gen "Very good, [tonks_name]." ("base", xpos="far_left", ypos="head") + ton "Thank you, [ton_genie_name]. Have a good night." ("base", "base", "base", "mid") + call increase_house_points("r", 20) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "You're a bit late..." ("base", xpos="far_left", ypos="head") + gen "Got caught up having too much fun with your students?" ("grin", xpos="far_left", ypos="head") + ton "*Mmmm*... and then some..." ("horny", "base", "base", "R") + gen "I like the sound of that!" ("grin", xpos="far_left", ypos="head") + gen "Now, care to elaborate?" ("base", xpos="far_left", ypos="head") + ton "Alright then, you old perv..." ("soft", "wink", "annoyed", "mid") + ton "Today's event was with my favourite little Ravenclaw boy..." ("open", "closed", "base", "down") + gen "That shy one?" ("base", xpos="far_left", ypos="head") + ton "Yes, the cute one!{w} He made a classic mistake today..." ("crooked_smile", "wide", "base", "mid") + gen "Which is?" ("base", xpos="far_left", ypos="head") + ton "Calling your teacher \"Mommy\"." ("open", "base", "shocked", "down") + gen "*ha-ha-ha*!... Really?" ("grin", xpos="far_left", ypos="head") + gen "I bet the students had a field day with that one!" ("base", xpos="far_left", ypos="head") + ton "Surprisingly not... Everyone just sort of went quiet." ("annoyed", "narrow", "base", "R") + gen "I know that {b}I{/b} would have given him hell for that..." ("base", xpos="far_left", ypos="head") + ton "I might have blushed as much as him - after he said it..." ("upset", "base", "base", "down") + ton "Anyhow... I decided that it was reason enough to hold him back..." ("open", "closed", "base", "mid") + ton "Not that I needed to... He seemed almost paralysed for the rest of the lesson..." ("crooked_smile", "base", "raised", "R") + ton "He just sat there with his head down... waiting for everyone to leave the classroom..." ("soft", "closed", "base", "mid") + ton "So, I figured I'd indulge him..." ("soft", "narrow", "base", "mid") + ton "I walked over - and plonked myself onto his lap, facing him..." ("grin", "base", "base", "mid") + gen "Bet that woke him up!" ("grin", xpos="far_left", ypos="head") + ton "Yes... However I wouldn't say it bothered him too much..." ("open", "base", "base", "R") + ton "He just looked up at me with those big puppy eyes..." ("soft", "base", "base", "mid") + ton "And then I broke our gaze and kissed him..." ("horny", "wink", "base", "mid") + gen "How did he take it?" ("base", xpos="far_left", ypos="head") + ton "Great! That kiss must have awoken something in him..." ("crooked_smile", "base", "shocked", "mid") + ton "He really got into it after a while..." ("base", "happyCl", "base", "mid") + ton "*Ugh*!... I've never had someone attack me with their tongue like that..." ("horny", "base", "base", "up") + ton "It was intense! And neither of us wanted it to end..." ("soft", "base", "shocked", "ahegao", hair="horny") + gen "Is that why you were late today?" ("grin", xpos="far_left", ypos="head") + ton "*Hmm*... Can you blame me?" ("crooked_smile", "base", "base", "up") + gen "So you spent all afternoon French kissing one of your students?" ("grin", xpos="far_left", ypos="head") + ton "Yes, [ton_genie_name]..." ("soft", "closed", "base", "mid") + ton "I guess I fucking did!" ("crooked_smile", "base", "shocked", "mid", hair="neutral") + gen "I'm very proud!" ("grin", xpos="far_left", ypos="head") + gen "Great work, [tonks_name]." ("base", xpos="far_left", ypos="head") + ton "..." ("crooked_smile", "base", "base", "up", hair="horny") + ton "Thank you, [ton_genie_name]. Have a good night." ("base", "wink", "base", "mid") + + # Tonks leaves. + + call increase_house_points("r", 20) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + +label nt_pr_kiss_T1_E3: # Tier 1 - Event 3 - Slytherin girls + #Tonks pays two best friends to make out + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if ton_reputation <= 7 and nt_pr_kiss.points < 4: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"You are back!\"": + pass + "\"Make it quick!\"": + ton "I gave those two Slytherin sluts detention again..." ("open", "base", "base", "R") + ton "Fuck, I came so hard watching them kiss!" ("base", "base", "base", "mid") + gen "You wouldn't believe how jealous I am!" ("base", xpos="far_left", ypos="head") + ton "You have no idea, [ton_genie_name]!" ("base", "base", "angry", "mid") + ton "I better get going. Until next time!" ("base", "happyCl", "base", "mid") + call increase_house_points("s", 40) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + gen "How was your day?" ("base", xpos="far_left", ypos="head") + ton "Better than most... You'll love this one!" ("base", "wink", "base", "mid") + gen "Don't let me stop you then..." ("grin", xpos="far_left", ypos="head") + ton "As always, there were a few Slytherins messing around in class..." ("base", "base", "base", "mid") + ton "With an especially annoying pair of girls that wouldn't shut up!" ("open", "closed", "raised", "mid") + ton "So... I gave them detention... which thankfully got them to quiet down a little." ("soft", "base", "base", "L") + gen "So far so good..." ("base", xpos="far_left", ypos="head") + ton "Normally, I only try and buy favours from one person at a time..." ("normal", "closed", "base", "mid") + ton "But then I figured, why not give both those Slytherin sluts a shot." ("crooked_smile", "base", "base", "mid") + gen "So you took turns kissing the girls?" ("grin", xpos="far_left", ypos="head") + ton "No, but I could have..." ("soft", "base", "base", "R") + ton "I gave them the option of staying behind - for a full hour of detention..." ("open", "closed", "base", "mid") + ton "Or... have them do their teacher a little favour..." ("base", "base", "base", "mid") + gen "Which was?" ("grin", xpos="far_left", ypos="head") + ton "*Mmmm*... They had to make out with each other!" ("horny", "base", "shocked", "down") + ton "And they had to do it properly. For at least ten minutes." ("soft", "closed", "base", "mid") + ton "*Ugh*... It was the hottest thing to witness, I tell you..." ("horny", "base", "base", "stare") + gen "Don't spare any details!" ("grin", xpos="far_left", ypos="head") + ton "Well, they were a bit hesitant at first... which I can't even blame them for..." ("soft", "base", "base", "mid") + ton "It doesn't happen often that you have a teacher watch you make out... and savouring every second of it!" ("horny", "narrow", "base", "mid") + ton "But, I have a feeling that wasn't their first time kissing another girl..." ("crooked_smile", "closed", "base", "mid") + ton "Maybe not even each other..." ("base", "narrow", "annoyed", "mid") + gen "Ought to be young again..." ("base", xpos="far_left", ypos="head") + ton "I couldn't help myself, [ton_genie_name]!" ("crooked_smile", "base", "base", "stare") + ton "I simply {b}had{/b} to play around while they did it..." ("horny", "happyCl", "shocked", "mid", hair="horny") + gen "Did they care?" ("base", xpos="far_left", ypos="head") + ton "Not one bit!" ("horny", "base", "base", "down", hair="horny") + ton "They'd just take it in waves..." ("soft", "base", "base", "L") + ton "Making out... Calling me a pervert..." ("horny", "base", "base", "up", cheeks="blush") + ton "Locking their mouths together, only to break apart again to tease me more..." ("base", "base", "base", "ahegao", cheeks="blush") + ton "*Ugh*... It was so {b}bloody hot!{/b}..." ("open_wide_tongue", "base", "base", "ahegao", cheeks="blush") + gen "I take your word for it..." ("base", xpos="far_left", ypos="head") + ton "This really is the best job ever!" ("grin", "wide", "shocked", "mid") + gen "Very good! That shall be all for now, [tonks_name]." ("base", xpos="far_left", ypos="head") + ton "Have a good night, [ton_genie_name]." ("base", "happyCl", "base", "mid") + + # Tonks leaves. + + call increase_house_points("s", 40) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + +label nt_pr_kiss_T1_E4: #Level 1 Event 4 + #Tender make-out session with a Slytherin lesbian + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + + if ton_reputation <= 7 and nt_pr_kiss.points < 4: # First time. + pass + else: # Repeat. + menu: + gen "(...)" ("base", xpos="far_left", ypos="head") + "\"You are back!\"": + pass + "\"Make it quick!\"": + ton "I kissed that cute little Slytherin girl..." ("open", "base", "base", "mid") + ton "She getting there!" ("base", "happyCl", "base", "mid") + gen "Very good, [tonks_name]." ("base", xpos="far_left", ypos="head") + ton "Thank you, [ton_genie_name]. Have a good night." ("base", "base", "base", "mid") + call increase_house_points("s", 40) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + call ton_walk(action="leave") + jump end_tonks_event + + ton "I have a story for you!" ("grin", "base", "shocked", "mid") + gen "Let's hear it!" ("grin", xpos="far_left", ypos="head") + ton "This is so good, I feel I should write it down and turn it into a novel..." ("base", "happyCl", "base", "mid") + gen "About a boy snogging his teacher?" ("grin", xpos="far_left", ypos="head") + ton "No.{w} About a tender and confused girl..." ("crooked_smile", "closed", "base", "mid") + ton "Who's coming to terms with her sexuality, thanks to her stunningly intelligent teacher." ("soft", "wink", "annoyed", "mid") + + ton "That little Slytherin girl is starting to come around to me more often - as of late..." ("crooked_smile", "narrow", "base", "mid") + ton "So, I figured now might be a good time to take it to the next level..." ("base", "base", "base", "R") + ton "Getting her to stay after class is easy enough now..." ("open", "closed", "base", "mid") + ton "I just brush her hand as I walk past her... and throw her a subtle wink." ("horny", "narrow", "base", "mid") + gen "You're getting brazen!" ("grin", xpos="far_left", ypos="head") + ton "Wasn't that the plan?" ("upset", "base", "shocked", "R") + gen "I never said it was a bad thing..." ("base", xpos="far_left", ypos="head") + ton "Good!{w} Because I don't intend on slowing down..." ("crooked_smile", "closed", "annoyed", "mid") + ton "Not after what happened today!" ("horny", "base", "angry", "mid") + ton "She was so cute!..." ("open", "happyCl", "worried", "mid") + ton "Still nervous, but not nearly as cocky..." ("soft", "base", "shocked", "R") + ton "Today, she simply let her reddened cheeks do most of the talking... Until the end of my lessons..." ("grin", "narrow", "base", "mid") + ton "And, once the classroom had emptied out, I offered to purchase another favour from her." ("base", "closed", "base", "mid") + ton "It's not as if she'd say no at this stage." ("soft", "wink", "base", "mid") + ton "I believe she wasn't expecting me to ask for a kiss though... It really threw her for a loop..." ("crooked_smile", "narrow", "base", "mid") + gen "....................." ("base", xpos="far_left", ypos="head") + ton "She couldn't quite work out whether it was too extreme of a favour... or too mild..." ("annoyed", "base", "shocked", "R") + gen "Well, it all depends on how you kiss..." ("base", xpos="far_left", ypos="head") + ton "*Hmm*... Yes!" ("horny", "base", "base", "ahegao") + ton "For an emotionally charged schoolgirl, she really didn't let me down one bit..." ("horny", "base", "annoyed", "up") + ton "Her lips kept quivering...{w} And I'm not sure if it was because of fear... or anticipation..." ("soft", "narrow", "base", "R") + ton "And she gazed at me like a stunned deer... Waiting for me to make the first move..." ("soft", "narrow", "base", "mid") + ton "*Mmmm*... Her lips were so soft!" ("soft", "base", "base", "up") + gen "This is good!" ("grin", xpos="far_left", ypos="head") + gen "Did you slip in some tongue?" ("grin", xpos="far_left", ypos="head") + ton "*Mhmm*... More than some..." ("horny", "base", "base", "stare") + ton "I was surprised just how easily she opened her mouth for me..." ("grin", "base", "shocked", "mid") + ton "Once my tongue was in there - it was game-over for her!" ("soft", "closed", "base", "mid") + ton "I just softly cradled her head - and spent the next five minutes teaching her how to \"french\"..." ("soft", "base", "shocked", "up") + ton "They can't offer you an experience like that at the Ministry!" ("grin", "wink", "base", "mid") + gen "Consider yourself lucky then." ("grin", xpos="far_left", ypos="head") + ton "Oh, I do!{w} Believe me!" ("crooked_smile", "closed", "shocked", "mid", hair="horny") + gen "That shall be all for now..." ("base", xpos="far_left", ypos="head") + ton "Thank you, [ton_genie_name]." ("soft", "narrow", "base", "mid") + + # Tonks leaves. + + call increase_house_points("s", 40) + if ton_reputation < 9: # Points til 9. + $ ton_reputation += 1 + + call ton_walk(action="leave") + jump end_tonks_event + + + +### Tier 2 ### + +label nt_pr_kiss_T2_E1: # Tier 2 Event 1 # Not in use. + call ton_walk(action="enter", xpos="mid", ypos="base") + ton "Hi, [ton_genie_name]." (face="horny", xpos="mid", ypos="base", trans=fade) + gen "How did your extracurricular activities pan out today?" ("base", xpos="far_left", ypos="head") + ton "Honestly? I don't think I've ever been as turned on in my life..." ("base", "base", "base", "mid") + ton "Fuck... It was incredible... the power I felt over him... it was intoxicating..." ("base", "base", "base", "mid") + gen "Care to elaborate?" ("base", xpos="far_left", ypos="head") + ton "Well, you know that stuck up little Slytherin I've been fooling around with?" ("base", "base", "base", "mid") + gen "The guy or the girl?" ("base", xpos="far_left", ypos="head") + ton "The boy." ("base", "base", "base", "mid") + gen "Yep, I think I remember them..." ("base", xpos="far_left", ypos="head") + ton "I asked them to stay back after classes again... Even if it was by staring at them during class..." ("base", "base", "base", "mid") + ton "Either way... He knew he had to stay behind to play with \"auntie\" Tonks..." ("base", "base", "base", "mid") + gen "Kinky..." ("base", xpos="far_left", ypos="head") + ton "Mmmm, I walked over to him slowly... Making sure I savoured that frightened look on his face..." ("base", "base", "base", "mid") + ton "Then, I got to his desk... I was half expecting him to blabber on about not deserving to be there..." ("base", "base", "base", "mid") + ton "But today he just looked up at me with a delectable mix of fear and anticipation..." ("base", "base", "base", "mid") + + # Genie starts jerking off + + #">Unable to help yourself any longer, you start to inconspicuously stroke your cock under your desk." + #ton "*tsk* *tsk* *tsk*...{w} Couldn't help yourself, could you?" + #gen "Can you blame me?" ("base", xpos="far_left", ypos="head") + #ton "I suppose not..." + #ton "Anyway, back to that cute little thing..." + + ton "Eventually I'd had enough of his eager expression..." ("base", "base", "base", "mid") + ton "I pounced upon him... Sitting down on his lap, pinning him to his chair and forcing my chest into his..." ("base", "base", "base", "mid") + ton "I could feel his heartbeat... It was so fast... Like a mouse..." ("base", "base", "base", "mid") + ton "Whispering in his ear I asked if he wanted a little kiss..." ("base", "base", "base", "mid") + ton "Making sure to let him know that I'd pay him plenty of points..." ("base", "base", "base", "mid") + ton "Just for a kiss..." ("base", "base", "base", "mid") + gen "*Mmmmm*..." ("base", xpos="far_left", ypos="head") + ton "Of course he said yes... Even if it was so faint I could barely hear it..." ("base", "base", "base", "mid") + ton "But once he said it... I was on him..." ("base", "base", "base", "mid") + ton "I pinned him down as I held his head in place..." ("base", "base", "base", "mid") + ton "Ugh... My tongue was going crazy..." ("base", "base", "base", "mid") + ton "I'm not sure if you remember this from school, sir, but I'm an Metamorphmagus..." ("base", "base", "base", "mid") # Note: I'd wait with adding Tonks' abilities and reserve them for the 2nd level of favors (longer tongue, bigger breasts...) + ton "Normally I just use that to blend in or for jokes..." ("base", "base", "base", "mid") + ton "But sometimes I use it to... Play around..." ("base", "base", "base", "mid") + ton "And all the excitement today may have caused me to lose control of my tongue..." ("base", "base", "base", "mid") + gen "Lose control of your tongue?" ("base", xpos="far_left", ypos="head") + ton "Ugh... it was so long..." ("base", "base", "base", "mid") + ton "It was like I was fucking that poor boys mouth with it..." ("base", "base", "base", "mid") # Note: This section is a bit too extreme for the first level. + ton "I wrapped his tongue in mine... stuck it down his throat..." ("base", "base", "base", "mid") + ton "Ugh... I even licked his face clean..." ("base", "base", "base", "mid") + ton "By the time I was done there wasn't a dry spot on his face..." ("base", "base", "base", "mid") + gen "*Argh*..." ("base", xpos="far_left", ypos="head") + ton "Poor thing... I think I broke him if I'm being honest..." ("base", "base", "base", "mid") + gen "That's it..." ("base", xpos="far_left", ypos="head") + ton "I thought he'd like it... but there were so many tears--" ("base", "base", "base", "mid") + + #gen "UGH... THERE IT IS!!!" ("grin", xpos="far_left", ypos="head") + # Genie cums + #">You begin firing a load of under your desk, making a dull thud with each blast hitting against the backboard..." + + ton "*Mmmm*, looks like you enjoyed our little lesson as well..." ("base", "base", "base", "mid") + gen "Ugh... can you blame me? That was... Ugh..." ("base", xpos="far_left", ypos="head") + ton "I told you I knew how to kiss..." ("base", "base", "base", "mid") + gen "I believe you... that'll be all for now..." ("base", xpos="far_left", ypos="head") + gen "I need to clean up..." ("base", xpos="far_left", ypos="head") + ton "Very well... Thank you, sir." ("base", "base", "base", "mid") + + call ton_walk(action="leave") + jump end_tonks_event + +label tonks_teacher_event_3_6: #Level 2 Event 2 + #Spends afternoon making out with ravenclaw, topless + + return + +label tonks_teacher_event_3_7: #Level 2 Event 3 + #Tonks has two best friends make out while she plays with herself + + return + +label tonks_teacher_event_3_8: #Level 2 Event 4 + #Another make out sesh with slytherin involving tonks fingering the student + + call ton_walk(action="leave") + jump end_tonks_event diff --git a/game/scripts/characters/tonks/gifts.rpy b/game/scripts/characters/tonks/gifts.rpy new file mode 100644 index 00000000..6546b8ee --- /dev/null +++ b/game/scripts/characters/tonks/gifts.rpy @@ -0,0 +1,186 @@ +### Give Tonks Gift ### + +label give_ton_gift(gift_item): + hide tonks_main + with d5 + ton "" (xpos="mid", ypos="base", trans=d5) + + $ gave_tonks_gift = True + + if gift_item == lollipop_ITEM: + ton "A lollipop?" (face="neutral", xpos="mid", ypos="base", trans=d5) + call give_gift(">You give the lollipop to Tonks...", gift_item) + ton "I know the perfect student to give this to." (face="happy") + call ton_friendship(1) + + elif gift_item == chocolate_ITEM: + ton "*Mhmm*, Chocolate!" (pupils="down", face="happy", xpos="mid", ypos="base", trans=d5) + call give_gift(">You give the chocolate to Tonks...", gift_item) + ton "It's said that chocolate is a very effective mood enhancer after a Dementor attack." (mouth="open", face="happy") + ton "That's because chocolate is considered to be a great aphrodisiac..." (face="horny") + ton "I'll keep this for one of my private lessons." (face="happy") + call ton_friendship(1) + + elif gift_item == plush_owl_ITEM: + ton "An Owl?" (face="neutral", xpos="mid", ypos="base", trans=d5) + ton "Oh, it's a toy... Haven't seen one of these in a while." (face="disgusted") + call give_gift(">You give the stuffed owl to Tonks...",gift_item) + ton "Okay, for nostalgias sake then..." (face="neutral") + call ton_friendship(0) + + elif gift_item == butterbeer_ITEM: + ton "Butterbeer?" (face="disgusted", xpos="mid", ypos="base", trans=d5) + ton "Don't you have anything stronger?" (mouth="open", face="annoyed") + call give_gift(">You give the bottle to Tonks...", gift_item) + ton "Just joking, I'll save it for when I've got company." (face="happy") + call ton_friendship(1) + + elif gift_item == science_mag_ITEM: + ton "Jinxes and sphinxes? These could help for some of my lessons." (mouth="open", face="neutral", xpos="mid", ypos="base", trans=d5) + call give_gift(">You give an assortment of educational magazines to Tonks...", gift_item) + ton "Thank you, [ton_genie_name]." (face="neutral") + call ton_friendship(0) + + elif gift_item == girls_mag_ITEM: + ton "Some girl magazines? I could definitely put these in my classroom." (mouth="open", face="neutral", xpos="mid", ypos="base", trans=d5) + call give_gift(">You give an assortment of rather girly magazines to Tonks...", gift_item) + ton "The girls do love staying after hours to socialise." (face="happy") + call ton_friendship(0) + + elif gift_item == adult_mag_ITEM: + ton "Adult magazines?" (face="disgusted", xpos="mid", ypos="base", trans=d5) + ton "Wont be the first time I've slipped one in the stack of magazines in my classroom." (face="horny") + call give_gift(">You give an assortment of adult magazines to Tonks...", gift_item) + ton "Thank you, [ton_genie_name]." (face="happy") + call ton_friendship(1) + + elif gift_item == porn_mag_ITEM: + ton "Porn magazines?" (face="disgusted", xpos="mid", ypos="base", trans=d5) + ton "I already know most positions in this book already of course..." (face="happy") + call give_gift(">You give an assortment of pornographic magazines to Tonks...", gift_item) + ton "Although..." (face="horny") + ton "I'll keep them. Thank you, [ton_genie_name]." (face="happy") + call ton_friendship(1) + + elif gift_item == krum_poster_ITEM: + ton "That's that Krum boy is it?" (face="horny", xpos="mid", ypos="base", trans=d5) + call give_gift(">You give the poster to Tonks...", gift_item) + ton "Nice figure, could set a good mood in the classroom... Or my office." (pupils="down", face="happy") + ton "Thank you, [ton_genie_name]." (face="happy") + call ton_friendship(1) + + elif gift_item == sexy_lingerie_ITEM: + ton "Oh, I see you're a man with a sense of style." (mouth="open", pupils="down", face="happy", xpos="mid", ypos="base", trans=d5) + call give_gift(">You give the sexy lingerie to Tonks...", gift_item) + ton "If it were up to me these would be part of the school uniform..." (face="happy") + call ton_friendship(1) + + elif gift_item == sexy_stockings_ITEM : + ton "Nice, I have a pair just like these..." (mouth="open", pupils="down", face="happy", xpos="mid", ypos="base", trans=d5) + ton "Although another pair without holes in them wont hurt..." (face="happy") + call give_gift(">You give the sexy stockings to Tonks...", gift_item) + call ton_friendship(1) + + elif gift_item == pink_condoms_ITEM: + ton "Some condoms?" (face="neutral", xpos="mid", ypos="base", trans=d5) + call give_gift(">You give some condoms to Tonks...", gift_item) + ton "Safe sex is important..." (face="neutral") + ton "I don't remember taking sex ed when I was in school... maybe I was too busy experimenting it myself that day..." (face="horny") + call ton_friendship(1) + + elif gift_item == vibrator_ITEM: + ton "A vibra-- back massager?" (face="disgusted", xpos="mid", ypos="base", trans=d5) + ton "Mm, Mine seemingly went missing from my desk. This should do if it doesn't turn up again." (face="annoyed") + call give_gift(">You give the vibrator to Tonks...", gift_item) + ton "Thank you, [ton_genie_name]." (face="neutral") + call ton_friendship(1) + + elif gift_item == anal_lube_ITEM: + ton "That's one big jar of Anal lube you have there." (face="disgusted", xpos="mid", ypos="base", trans=d5) + call give_gift(">You give the jar of lube to Tonks...", gift_item) + ton "What's the difference between this and regular lube?" (mouth="open", face="disgusted") + ton "Seems like it might be enough to cover the whole body..." (mouth="open", face="happy") + ton "Thank you, [ton_genie_name]." (face="neutral") + call ton_friendship(1) + + elif gift_item == ballgag_and_cuffs_ITEM: + ton "Ball gag and cuffs?" (pupils="down", face="happy", xpos="mid", ypos="base", trans=d5) + call give_gift(">You give the ball gag and cuffs to Tonks...", gift_item) + ton "These are pretty cute. Should come in handy during my.... private lessons." (face="horny") + call ton_friendship(1) + + elif gift_item == anal_plugs_ITEM: + ton "Some anal plugs?" (face="disgusted", xpos="mid", ypos="base", trans=d5) + ton "Wow, this is what they use these days? Very colourful..." (face="happy") + call give_gift(">You give an assortment of anal plugs to Tonks...", gift_item) + ton "I think I might leave some in one of the desks..." (face="horny") + call ton_friendship(1) + + elif gift_item == testral_strapon_ITEM: + ton "Is that a strap-on?" ("open", "wide", "shocked", "stare", xpos="mid",ypos="base",trans=d5) + call give_gift(">You give the thestral strap-on to Tonks...", gift_item) + ton "This will be a perfect addition to my collection..." (face="angry") + ton "Thank you, [ton_genie_name]." (face="happy") + call ton_friendship(2) + + elif gift_item == broom_2000_ITEM: + ton "I don't remember the brooms looking like this when I took flying lessons..." (face="angry", xpos="mid", ypos="base", trans=d5) + call give_gift(">You give the broom to Tonks...", gift_item) + ton "Seems like a good way to stay put on the broom though... unless you lose focus." (mouth="open", face="happy") + ton "Which you probably will with this..." (face="horny") + call ton_friendship(3) + + elif gift_item == sexdoll_ITEM: + ton "a sex doll?" (face="horny", xpos="mid", ypos="base", trans=d5) + ton "Not too useful for me, but I might put it in one of our secret gift exchanges." (mouth="open", face="horny") + call give_gift(">You give the sex doll to Tonks...", gift_item) + ton "They'll gossip for weeks wondering who it's from." (face="horny") + call ton_friendship(1) + + elif gift_item == anal_beads_ITEM: + ton "anal beads?" (face="disgusted", xpos="mid", ypos="base", trans=d5) + ton "It's a bit short but I'll take it..." (face="happy") + call give_gift(">You give the anal beads to Tonks...", gift_item) + ton "Thanks..." (face="horny") + call ton_friendship(1) + + elif gift_item == wine_ITEM: + if not firewhisky_ITEM.unlocked: + ton "A bottle of wine?" (face="neutral", xpos="mid", ypos="base", trans=d5) + ton "I was hoping for something with a bit more \'punch\'." (mouth="open", pupils="R", face="neutral") + call ton_friendship(0) + else: + ton "I had told you before I don't particularly like wine.." (mouth="open", pupils="R", face="neutral", xpos="mid", ypos="base", trans=d5) + call ton_friendship(-1) + + elif gift_item == firewhisky_ITEM: + ton "Firewhisky?" (face="happy", xpos="mid", ypos="base", trans=d5) + ton "*Mmm*.. My favourite. But let's save it for later, shall we?" (face="horny") + call ton_friendship(0) + + ton "" (xpos="base",ypos="base") + hide tonks_main + with d5 + + return + +label ton_friendship(value=0): + show screen blktone + with d3 + + if value > 0: + if value == 1: + "Tonks likes you a bit more now." + else: + "Tonks likes you more now." + elif value < 0: + if value == -1: + "Tonks didn't seem to like that." + else: + "Tonks likes you a bit less now." + else: + "Tonks' friendship towards you hasn't changed much." + + $ ton_friendship = max(min(ton_friendship+value, 100), 0) + hide screen blktone + return diff --git a/game/scripts/characters/tonks/hangouts.rpy b/game/scripts/characters/tonks/hangouts.rpy new file mode 100644 index 00000000..2484ab02 --- /dev/null +++ b/game/scripts/characters/tonks/hangouts.rpy @@ -0,0 +1,36 @@ + +default nt_he_drink = event_class( + title = "Tonks Firewhisky", start_label = "tonks_hangout", + events = [ + [ + ["nt_he_wine_intro"], + ["nt_he_firewhisky_intro"], + ["nt_he_firewhisky_E1"], + ["nt_he_firewhisky_E2"], + ["nt_he_firewhisky_E3"], + ["nt_he_firewhisky_E4"] + ] + ], + iconset = [["star_empty", "star_pink"]] # You have to add icons at least for first tier, the rest will be copied over automatically. +) + +default nt_he_story = event_class( + title = "Tonks Stories", start_label = "tonks_hangout", + events = [ + [ + ["nt_he_story_intro_E1"], # Intro + ["nt_he_story_intro_E2"], # Moody + ["nt_he_story_intro_E3"], # Brooms and flying carpets + ["nt_he_story_intro_E4"], # Turning water into wine + ["nt_he_story_intro_E5"], # Lots of paperwork + ["nt_he_story_E6"], # Vampire story + ["nt_he_story_intro_E7"], # Moody's teaching methods + ["nt_he_story_E8"], # Werewold story + ["nt_he_story_intro_E9"], # Illegal love potion + ["nt_he_story_intro_E10"], # Dumb game mechanics + ["nt_he_story_E11"], # Metamorphmagi + ["nt_he_story_E12"] # Invisible clothing charm + ] + ], + iconset = [["star_empty", "star_pink"]] # You have to add icons at least for first tier, the rest will be copied over automatically. +) diff --git a/game/scripts/characters/tonks/requests.rpy b/game/scripts/characters/tonks/requests.rpy new file mode 100644 index 00000000..e9b10ae4 --- /dev/null +++ b/game/scripts/characters/tonks/requests.rpy @@ -0,0 +1,66 @@ + +# Public requests +default nt_pr_teach = event_class( + title = "Detention with Tonks.", start_label = "nt_pr_teach_start", start_tier = 1, + events = [ + [ + ["nt_pr_teach_T1_E1"], # Slytherin boy + ["nt_pr_teach_T1_E2"], # Ravenclaw boy + ["nt_pr_teach_T1_E3"], # Potter & Weasley + ["nt_pr_teach_T1_E4"] # Slytherin girl + ], + [ + ["nt_pr_teach_T2_E1"], # Hufflepuff girl + ["nt_pr_teach_T2_E2"], # Ravenclaw boy + ["nt_pr_teach_T2_E3"], # Slytherin boy + ["nt_pr_teach_T2_E4"] # Slytherin girl + ] + ], + iconset = [["star_empty", "star_pink"]] # You have to add icons at least for first tier, the rest will be copied over automatically. +) + +default nt_pr_grope = event_class( + title = "Hands-on lessons!", start_label = "nt_pr_grope_start", start_tier = 2, + events = [ + [ + ["nt_pr_grope_T1_E1"], # Slytherin boy + ["nt_pr_grope_T1_E2"], # Ravenclaw boy + ["nt_pr_grope_T1_E3"], # Potter & Weasley + ["nt_pr_grope_T1_E4"] # Slytherin girl + ]# , + # [ + # ["nt_pr_grope_T2_E1"], # + # ["nt_pr_grope_T2_E2"], # + # ["nt_pr_grope_T2_E3"], # + # ["nt_pr_grope_T2_E4"] # + # ] + ], + iconset = [["star_empty", "star_pink"]] # You have to add icons at least for first tier, the rest will be copied over automatically. +) + +default nt_pr_kiss = event_class( + title = "Oral practice!", start_label = "nt_pr_kiss_start", start_tier = 2, + events = [ + [ + ["nt_pr_kiss_T1_intro_E1"], # Ravenclaw boy + ["nt_pr_kiss_T1_E2"], # + ["nt_pr_kiss_T1_E3"], # Slytherin girls + ["nt_pr_kiss_T1_E4"] # Slytherin girl + ]# , + # [ + # ["nt_pr_kiss_T2_E1"], # Slytherin boy + # ["nt_pr_kiss_T2_E2"], # + # ["nt_pr_kiss_T2_E3"], # + # ["nt_pr_kiss_T2_E4"] # + # ] + ], + iconset = [["star_empty", "star_pink"]] # You have to add icons at least for first tier, the rest will be copied over automatically. +) + +# Idea for "blowjob pr" name: "Stress Mitigation." + +default nt_requests_list = [ + nt_pr_teach, + nt_pr_grope, + nt_pr_kiss +] diff --git a/game/scripts/characters/tonks/summon.rpy b/game/scripts/characters/tonks/summon.rpy new file mode 100644 index 00000000..e00981e6 --- /dev/null +++ b/game/scripts/characters/tonks/summon.rpy @@ -0,0 +1,192 @@ + +label summon_tonks: + + $ active_girl = "tonks" + $ last_character = "tonks" + + $ tonks_busy = True + + call update_ton_tier + call update_tonks + + call play_music("tonks") + call play_sound("door") + + # Clothes Events + call tonks_summon_setup + + label tonks_requests: + + # Reset + call reset_menu_position + ton "" (xpos="base",ypos="base") + + menu: + + # Talk + "-Talk-" (icon="interface/icons/small/talk.webp"): + if ton_mood > 0: + ton "I have a headache right now, let's talk later." + jump tonks_requests + + call tonks_chitchat + jump tonks_talk + + + # Favours + "-Sexual favours-" (icon="interface/icons/small/condom.webp"): + jump tonks_favor_menu + + # Fireplace Chats + "-Let's hang-" (icon="interface/icons/small/toast.webp") if (wine_ITEM.owned > 0 and nt_he_drink.counter == 0) or (firewhisky_ITEM.owned > 0 and nt_he_drink.counter > 0): + jump tonks_hangout + + "-Let's hang-" (icon="interface/icons/small/toast.webp", style="disabled") if (firewhisky_ITEM.owned < 1 and nt_he_drink.counter > 0): + gen "(I don't have any firewhisky...)" ("base", xpos="far_left", ypos="head") + jump tonks_requests + + "-Let's hang-" (icon="interface/icons/small/toast.webp", style="disabled") if (wine_ITEM.owned < 1 and nt_he_drink.counter == 0): + gen "(I don't have any wine...)" ("base", xpos="far_left", ypos="head") + jump tonks_requests + + # Wardrobe + "-Wardrobe-" (icon="interface/icons/small/wardrobe.webp") if tonks_wardrobe_unlocked: + hide tonks_main with d1 + call wardrobe + + # Hair fix + $ tonks_haircolor = tonks.get_equipped("hair").color + jump tonks_requests + + "-Hidden-" (style="disabled") if not tonks_wardrobe_unlocked: + call nar(">You haven't unlocked this feature yet.") + jump tonks_requests + + "-Give Item-" (icon="interface/icons/small/gift.webp"): + hide tonks_main with d1 + call gift_menu + jump tonks_requests + + # Dismiss + "-Never mind-": + stop music fadeout 3.0 + + if game.daytime: + ton "Alright, back to work then..." + else: + ton "Sweet dreams, [ton_genie_name]." + + call play_sound("door") + + jump end_tonks_event + + +# Tonks level up +label update_ton_tier: + if ton_tier == 1 and nt_he.favors_E2: + $ ton_level_up = 1 + + return + +label tonks_level_up(tier=None): + + call bld + if tier == 1: + gen "(Time to teach those students something useful!)" ("grin", xpos="far_left", ypos="head") + + $ ton_tier = tier+1 + $ ton_level_up = None + + pause.5 + call nar(">Tonks has reached level "+str(ton_tier)+"!") + + call update_ton_tier + + return + + +# Tonks Requests Menu +label tonks_favor_menu: + # call update_tonks_favors + + menu: + "-Level Up-" (icon="interface/icons/small/levelup.webp") if ton_level_up != None: + call tonks_level_up(tier=ton_level_up) + jump tonks_requests + + "-Personal Favours-" (icon="interface/icons/small/heart_red.webp", style="disabled"): + call not_available + jump tonks_favor_menu + # + # Uncomment once favours are ready + # + + # label .personal: + # python: + # menu_choices = [] + # for i in nt_favor_list: + # if i in []: # Not in the game yet. + # menu_choices.append(gui.menu_item("-Not available-", "na", style="disabled")) + # elif i.start_tier > ton_tier: + # menu_choices.append(gui.menu_item("-Not ready-", "vague", style="disabled")) + # else: + # menu_choices.append(i.get_menu_item()) + + # menu_choices.append(("-Never mind-", "nvm")) + # result = renpy.display_menu(menu_choices) + # if result == "nvm": + # jump tonks_favor_menu + # elif result == "vague": + # call favor_not_ready + # jump .personal + # elif result == "na": + # call not_available + # jump .personal + # else: + # $ renpy.jump(result) + + "-Public Requests-" (icon="interface/icons/small/star_yellow.webp") if game.daytime and tonks_requests_unlocked: + jump tonks_requests_menu + + "-Public Requests-" (icon="interface/icons/small/star_yellow.webp", style="disabled") if not game.daytime or not tonks_requests_unlocked: + if not tonks_requests_unlocked: + call nar(">You haven't unlocked this feature yet.") + elif not game.daytime: + call nar(">Public requests are available during the day only.") + jump tonks_favor_menu + + "-Never mind-": + jump tonks_requests + +label tonks_requests_menu: + call update_ton_requests + python: + menu_choices = [] + for i in nt_requests_list: + if i in []: # Not in the game yet. + menu_choices.append(gui.menu_item("-Not available-", "na", style="disabled")) + elif i.start_tier > ton_tier: + menu_choices.append(gui.menu_item("-Not ready-", "vague", style="disabled")) + else: + menu_choices.append(i.get_menu_item()) + menu_choices.append(("-Never mind-", "nvm")) + result = renpy.display_menu(menu_choices) + + if result == "nvm": + jump tonks_favor_menu + elif result == "vague": + call favor_not_ready + jump tonks_requests_menu + elif result == "na": + call not_available + jump tonks_requests_menu + else: + $ renpy.jump(result) + +label update_ton_requests: + # Set event tier to current Tonks tier if they are different + python: + for i in nt_requests_list: + i.tier = ton_tier + + return diff --git a/game/scripts/characters/tonks/talk.rpy b/game/scripts/characters/tonks/talk.rpy new file mode 100644 index 00000000..1f37565e --- /dev/null +++ b/game/scripts/characters/tonks/talk.rpy @@ -0,0 +1,282 @@ +label tonks_talk: + menu: + "-Ask for help with Quidditch-" (icon="interface/icons/small/quidditch.webp") if cho_tier == 2 and cho_quid.E6_complete and not cho_quid.E8_complete: + gen "Got a moment?" ("base", xpos="far_left", ypos="head") + ton "Sure, just make it quick..." ("open", "base", "base", "mid") + gen "I have a problem with--" ("base", xpos="far_left", ypos="head") + ton "[ton_genie_name], aren't you forgetting about something?" ("open", "closed", "base", "mid") + ton "You should offer a lady a drink, before burdening her with your problems..." ("base", "base", "base", "mid") + gen "(Is there {b}any{/b} teacher in this school that has no problems with alcohol...?)" ("base", xpos="far_left", ypos="head") + + if firewhisky_ITEM.owned >= 1: + gen "I got drinks." ("base", xpos="far_left", ypos="head") + ton "What are we waiting for then?" ("horny", "base", "base", "mid") + + jump tonks_hangout + else: + gen "I'm out of firewhisky." ("base", xpos="far_left", ypos="head") + ton "That's a shame, I guess our talk will have to wait." ("open", "base", "base", "R") + ton "" ("base", "base", "base", "R") + + jump tonks_talk + + "-Get naked!-" if tonks_strip_happened and tonks.is_any_worn("top", "bottom", "robe"): + gen "Get naked, [tonks_name]!" ("base", xpos="far_left", ypos="head") + ton "Of course, [ton_genie_name]." ("horny", "base", "base", "mid") + hide tonks_main + with d3 + + $ tonks.strip("all") + pause.8 + + ton "Do you like it, [ton_genie_name]?" ("horny", "base", "raised", "mid") + ton "The exposed body of one of your subordinates?" ("open", "base", "raised", "mid") + gen "I do, [tonks_name]!" ("angry", xpos="far_left", ypos="head") + gen "You should teach like that!" ("grin", xpos="far_left", ypos="head") + ton "*Hmm*..." ("base", "base", "base", "R") + ton "I like the way you think, [ton_genie_name]!" ("horny", "base", "base", "mid") + jump tonks_talk + + "-Get dressed-" if tonks_strip_happened and not tonks.is_any_worn("top", "bottom", "robe"): + gen "Put on some clothes, would you..." ("base", xpos="far_left", ypos="head") + gen "This is a school, after all." ("base", xpos="far_left", ypos="head") + ton "Do I have to?" ("annoyed", "narrow", "base", "mid") + gen "If you consider yourself a proper teacher..." ("base", xpos="far_left", ypos="head") + hide tonks_main + with d3 + + $ tonks.wear("all") + pause.8 + + ton "..." ("base", "narrow", "base", "R") + jump tonks_talk + + "-Address me only as-": + menu: + "-Sir-": + label .sir: # Local label unavailable from global scope + $ ton_genie_name = "Sir" + ton "Of course, [ton_genie_name]." ("base", "base", "base", "mid") + jump tonks_talk + "-Dumbledore-": + label .dumbledore: + $ ton_genie_name = "Dumbledore" + ton "Sure thing, [ton_genie_name]." ("base", "base", "base", "mid") + jump tonks_talk + "-Professor-": + label .professor: + $ ton_genie_name = "Professor" + ton "Alright, [ton_genie_name]." ("base", "base", "base", "mid") + jump tonks_talk + + "-Old man-": + label .old_man: + $ ton_genie_name = "Old man" + ton "I have to say, for your age you're in really great shape..." ("soft", "base", "base", "down") + gen "That's part of the benefits of being immortal...{w=0.4} Your body doesn't age." ("base", xpos="far_left", ypos="head") + ton "You're lucky then... I've had men that were a couple hundred years old, whose bodies were quite fragile..." ("open", "base", "base", "R") + gen "All mortals? How did they get that old?" ("base", xpos="far_left", ypos="head") + ton "Ever heard of the \"Philosopher's stone\"?" ("base", "narrow", "base", "mid") + gen "Is it a tiny, red, stone-looking gem, that lengthens the owner's life?" ("base", xpos="far_left", ypos="head") + gen "It's called the \"sorcerer's stone\" in my world, however." ("base", xpos="far_left", ypos="head") + ton "Really? Why is that?" ("open", "base", "raised", "mid") + gen "I have no clue..." ("base", xpos="far_left", ypos="head") + ton "Didn't you say you were an \"all knowing\" being?" ("open", "base", "angry", "mid") + ton "I guess you really are an \"old man\", Genie..." ("base", "base", "base", "mid") + gen "..............." ("base", xpos="far_left", ypos="head") + jump tonks_talk + + "-Genie-": + label .genie: + $ ton_genie_name = "Genie" + ton "Of course." ("base", "base", "base", "mid") + gen "Sweet." ("grin", xpos="far_left", ypos="head") + ton "Will I get my three wishes too?" ("open", "base", "base", "mid") + ton "Or would I have to rub your \"thing\" first?" ("horny", "base", "base", "mid", hair="horny") + gen "My lamp?" ("base", xpos="far_left", ypos="head") + ton "I was talking about your--" ("base", "base", "base", "R") + with hpunch + gen "My lamp!!!" ("angry", xpos="far_left", ypos="head") + gen "Shit, where even is that thing?" ("angry", xpos="far_left", ypos="head") + gen "I must have lost it when I got to this place!" ("angry", xpos="far_left", ypos="head") + ton "Do you even need it? Didn't you say you were a free Genie now?" ("open", "base", "raised", "mid") + gen "Of course I still need it! What sort of question is that, woman?!" ("angry", xpos="far_left", ypos="head") + ton "(................)" ("mad", "base", "base", "down") + gen "How would you like to suddenly be robbed of your house?!" ("angry", xpos="far_left", ypos="head") + ton "(I guess I can jerk him off some other time...)" ("mad", "base", "worried", "R") + gen "If you find a golden, shiny looking lamp, return it to me..." ("base", xpos="far_left", ypos="head") + ton "Sure, [ton_genie_name]..." ("upset", "base", "base", "R") + jump tonks_talk + + "-Lord Voldemort-": + label .lord_voldemort: + $ ton_genie_name = "Lord Voldemort" + ton "Bold of you to say his name out loud... Who even told you about the dark lord?" ("open", "base", "angry", "mid") + gen "I've read the stories..." ("base", xpos="far_left", ypos="head") + ton "So you know this wizard did some terrible things in his lifetime?" ("open", "base", "angry", "R") + gen "Did he corrupt young witches for his own twisted pleasure?" ("base", xpos="far_left", ypos="head") + ton "You could say that... He corrupted many witches and wizards alike." ("upset", "base", "base", "mid") + gen "....................." ("base", xpos="far_left", ypos="head") + gen "So he was \"Bi\" is what you're saying?" ("base", xpos="far_left", ypos="head") + ton "What? No." ("open", "wide", "shocked", "stare") + ton "I mean, I'm not really sure if someone like him would have even be capable of loving anything..." ("mad", "base", "worried", "R") + ton "All that mattered to him was power, and achieving his own immortality..." ("open", "base", "angry", "mid") + gen "Both fairly overrated once you have it, if you ask me..." ("base", xpos="far_left", ypos="head") + ton "You don't say..." ("base", "base", "raised", "mid") + gen "I bet all he secretly wanted was to have a wife, and a kid that loved him..." ("base", xpos="far_left", ypos="head") + ton "Voldemort, having a child? Are you serious?" ("open", "wide", "shocked", "stare") + gen "Of course not." ("base", xpos="far_left", ypos="head") + gen "Once you're immortal, the last thing you need is some annoying brat on your mind..." ("base", xpos="far_left", ypos="head") + gen "All we really want to do is waste a majority of our existence with mindless sex!" ("grin", xpos="far_left", ypos="head") + ton "Oh my..." ("horny", "base", "base", "mid", hair="horny") + gen "And sometimes a bit of kinky role-play..." ("base", xpos="far_left", ypos="head") + gen "Are you going to call me \"Lord Voldemort\" now or what?" ("base", xpos="far_left", ypos="head") + ton "Fine... I will call you, [ton_genie_name], if it makes you happy..." ("base", "base", "base", "mid") + gen "Yippee!" ("grin", xpos="far_left", ypos="head") + jump tonks_talk + + "-Daddy-": + label .daddy: + $ ton_genie_name = "Daddy" + ton "Well, you do look about thrice as old as me..." ("base", "base", "raised", "mid") + ton "Crazy to think you geezers get to bang all those young, sexy, innocent witches here..." ("open", "base", "base", "R") + gen "(Geezers?)" ("base", xpos="far_left", ypos="head") + gen "But I thought you didn't mind it?" ("base", xpos="far_left", ypos="head") + ton "Oh, I don't mind at all, [ton_genie_name]!" ("horny", "base", "base", "mid") + jump tonks_talk + + "-Master-" (style="disabled") if ton_friendship < 60: + label .master_fail: + ton "No." ("base", "base", "base", "R") + gen "What?- Why not?" ("base", xpos="far_left", ypos="head") + ton "Because... that title has to be earned!" ("horny", "base", "angry", "mid") + gen "Seriously?" ("base", xpos="far_left", ypos="head") + ton "Yes. Show me that you're worth to be my master, and I'll gladly become your bitch!" ("open", "base", "angry", "mid") + gen "!!!" ("angry", xpos="far_left", ypos="head") + ton "Until then you can forget about it..." ("base", "base", "base", "mid") + gen "...................." ("base", xpos="far_left", ypos="head") + jump tonks_talk + "-Master-" if ton_friendship >= 60: + label .master: + $ ton_genie_name = "Master" + ton "Yes, [ton_genie_name]." ("open", "base", "base", "mid") + gen "(...)" ("base", xpos="far_left", ypos="head") + ton "" ("base", "base", "raised", "mid") + call ctc + gen "(...?)" ("base", xpos="far_left", ypos="head") + gen "You have permission to speak?" ("base", xpos="far_left", ypos="head") + ton "Thank you, [ton_genie_name]." ("base", "base", "base", "down") + gen "(I could get used to that.)" ("grin", xpos="far_left", ypos="head") + jump tonks_talk + + "-Custom Input--" (style="disabled") if ton_friendship < 60: + gen "(I don't think she's yet ready for that)" ("base", xpos="far_left", ypos="head") + jump tonks_talk + + "-Custom Input-" if ton_friendship >= 60: + $ temp_name = renpy.input("(Please enter the name.)", ton_genie_name, ALLOWED_CHARACTERS, length=14) + $ temp_name = temp_name.strip() + + if temp_name.lower() in ("sir", "dumbledore", "professor", "old man", "genie", "lord voldemort", "daddy", "master"): + if temp_name.lower() == "master" and ton_friendship < 60: + jump tonks_talk.master_fail + $ renpy.jump("tonks_talk."+temp_name.lower().replace(" ", "_")) # Jump to local label + elif temp_name == "": + jump tonks_talk + else: + $ ton_genie_name = temp_name + ton "*Hmm*... [ton_genie_name]... I like it." ("horny", "base", "raised", "mid") + jump tonks_talk + + "-Never mind-": + jump tonks_talk + + + "-From now on I will address you as-": + menu: + "-Tonks-": + label .tonks: # Local label unavailable from global scope. + $ tonks_name = "Tonks" + ton "Sure, [ton_genie_name]." ("base", "base", "base", "mid") + jump tonks_talk + "-Nymphadora-": + $ tonks_name = "Nymphadora" + label .nymphadora: + ton "*Ugh*--" ("mad", "base", "angry", "R") + ton "Really, [ton_genie_name]?" ("open", "base", "angry", "mid") + ton "I hate that name..." ("open", "base", "worried", "R") + gen "Well you better get used to hearing it then, [tonks_name]..." ("base", xpos="far_left", ypos="head") + ton "................" ("upset", "base", "angry", "R") + jump tonks_talk + "-Nympho-": + label .nympho: + $ tonks_name = "Nympho" + ton "You think I'm a nympho, [ton_genie_name]?" ("horny", "base", "raised", "mid") + ton "Like a filthy, sex craved maniac? Who wouldn't shy away from fulfilling every single one of her fantasies?" ("grin", "base", "shocked", "mid") + ton "It fits quite well, actually." ("base", "base", "base", "R") + jump tonks_talk + "-Fuck Puppet-": + label .fuck_puppet: + $ tonks_name = "Fuck Puppet" + ton "A fuck puppet?" ("open", "base", "raised", "mid") + ton "So you want me to be your personal toy?" ("horny", "base", "base", "mid") + gen "Wouldn't anyone." ("base", xpos="far_left", ypos="head") + ton "Such a charmer..." ("base", "base", "raised", "R") + ton "Of course, [ton_genie_name]... you can call me that if you like." ("horny", "base", "base", "mid") + jump tonks_talk + "-Bitch-": + label .bitch: + $ tonks_name = "Bitch" + ton "*Hi-hi*" ("base", "base", "base", "R") + ton "If only you knew..." ("horny", "base", "raised", "R") + gen "(...)" ("base", xpos="far_left", ypos="head") + gen "(What does she mean by that?)" ("angry", xpos="far_left", ypos="head") + jump tonks_talk + + "-Cunt-" (style="disabled") if ton_friendship < 60: + label .cunt_fail: + ton "[ton_genie_name], I'm used to getting insulted by my many previous lovers..." ("base", "base", "raised", "mid") + ton "Truth be told I bloody love it!" ("open_wide_tongue", "base", "base", "ahegao") + ton "But we aren't close enough for that yet, don't you think?" ("open", "base", "worried", "mid") + ton "Maybe we should wait with that until we know each other a bit better." ("base", "base", "worried", "R") + gen "Of course.{w} And I will respect that." ("base", xpos="far_left", ypos="head") + ton "I'm glad.{w} You are a very polite man, [ton_genie_name]..." ("base", "base", "base", "mid") + gen "..........................." ("base", xpos="far_left", ypos="head") + jump tonks_talk + "-Cunt-" if ton_friendship >= 60: + label .cunt: + $ tonks_name = "Cunt" + ton "*Uuuh*, [ton_genie_name]..." ("base", "base", "raised", "mid") + ton "You better not call me that in front of a student..." ("open", "base", "base", "mid") + gen "What if I do?" ("grin", xpos="far_left", ypos="head") + ton "Do it, I dare you!" ("horny", "base", "base", "mid", hair="horny") + jump tonks_talk + + "-Custom Input--" (style="disabled") if ton_friendship < 60: + gen "(I don't think she's yet ready for that)" ("base", xpos="far_left", ypos="head") + jump tonks_talk + + "-Custom Input-" if ton_friendship >= 60: + $ temp_name = renpy.input("(Please enter the name.)", tonks_name, ALLOWED_CHARACTERS, length=14) + $ temp_name = temp_name.strip() + if temp_name.lower() in ("tonks", "nymphadora", "nympho", "fuck puppet", "bitch", "cunt"): + if temp_name.lower() == "cunt" and ton_friendship < 60: + jump tonks_talk.cunt_fail + $ renpy.jump("tonks_talk."+temp_name.lower().replace(" ", "_")) # Jump to local label + elif temp_name == "": + jump tonks_talk + else: + $ tonks_name = temp_name + ton "*Hmm*..." ("base", "base", "base", "R") + ton "Alright." ("base", "base", "base", "mid") + gen "Really? You don't mind?" ("base", xpos="far_left", ypos="head") + ton "Not at all, [ton_genie_name]." ("horny", "base", "raised", "mid") + ton "I've been called quite many things by my lovers!" ("base", "base", "base", "R") + gen "I'm your lover now?" ("grin", xpos="far_left", ypos="head") + ton "Never say never." ("base", "base", "base", "mid") + jump tonks_talk + "-Never mind-": + jump tonks_talk + + "-Never mind-": + jump tonks_requests diff --git a/game/scripts/characters/tonks/vars.rpy b/game/scripts/characters/tonks/vars.rpy new file mode 100644 index 00000000..603bb751 --- /dev/null +++ b/game/scripts/characters/tonks/vars.rpy @@ -0,0 +1,27 @@ +# Stats +default ton_tier = 1 +default ton_friendship = 0 #Max is 100. +default ton_reputation = 0 +default ton_clothing_level = 100 +default ton_mood = 0 + +# Flags +default tonks_busy = False +default tonks_unlocked = False +default tonks_favors_unlocked = False +default tonks_requests_unlocked = False +default tonks_shaming_unlocked = False +default tonks_wardrobe_unlocked = True # Note: Tonks wardrobe is unlocked by default. +default tonks_chatted = False +default tonks_strip_happened = False # Tonks random clothing event +default tonks_morph_known = False # Genie knows about Tonks being a Metamorphmagus +default tonks_outfits_schedule = True +default ton_level_up = None +default gave_tonks_gift = False +default tonks_mail_list = [] +default tonks_haircolor = [[255, 146, 185, 255], [254, 218, 238, 255]] + +# Names +default tonks_name = "Tonks" +default ton_genie_name = "Professor" +default ton_astoria_name = "Cutie" diff --git a/game/scripts/characters/tonks/wardrobe.rpy b/game/scripts/characters/tonks/wardrobe.rpy new file mode 100644 index 00000000..0c298dcd --- /dev/null +++ b/game/scripts/characters/tonks/wardrobe.rpy @@ -0,0 +1,310 @@ +############### +## Character ## +############### + +default tonks = Doll(name="tonks", + clothes={"headgear": [None, 15, True], + "hair": [None, 4, True], + "glasses": [None, 12, True], + "earrings": [None, 14, True], + "neckwear": [None, 11, True], + "robe": [None, 28, True], + "gloves": [None, 21, True], + "top": [None, 15, True], + "bra": [None, 9, True], + "bottom": [None, 8, True], + "garterbelt": [None, 7, True], + "panties": [None, 6, True], + "stockings": [None, 5, True], + "buttplug": [None, -1, True], + "pubes": [None, 3, True], + "tattoo0": [None, 1, True], + "tattoo1": [None, 1, True], + "tattoo2": [None, 1, True], + "tattoo3": [None, 1, True], + "tattoo4": [None, 1, True], + "piercing0": [None, 2, True], + "piercing1": [None, 2, True], + "piercing2": [None, 2, True], + "piercing3": [None, 2, True], + "piercing4": [None, 2, True], + "accessory0": [None, 12, True], + "accessory1": [None, 12, True], + "accessory2": [None, 12, True], + "accessory3": [None, 12, True], + "accessory4": [None, 12, True], + "makeup0": [None, 3, True], + "makeup1": [None, 3, True], + "makeup2": [None, 3, True], + "makeup3": [None, 3, True], + "makeup4": [None, 3, True]}, + face={"tears": [None, 12, True], + "cheeks": [None, 7, True], + "eyebrows": ["base", 11, True], + "eyes": ["base", 8, True], + "pupils": ["mid", 9, True], + "mouth": ["base", 13, True]}, + body={"armleft": ["on_hips", 3], + "armright":["on_hips", 1], + "base": ["front", 0], + "breasts": ["normal", 2]}) + +################## +## Auror Outfit ## +################## + +default ton_hair_base = DollCloth("tonks", ("head", "hair"), "hair", "base", [[255, 146, 185, 255], [254, 218, 238, 255]], unlocked=True) +default ton_hair_base_new = DollCloth("tonks", ("head", "hair"), "hair", "new", [[255, 146, 185, 255], [254, 218, 238, 255]], unlocked=True) +default ton_neckwear_beads = DollCloth("tonks", ("head", "neckwear"), "neckwear", "choker_beads",[[45, 45, 48, 255], [177, 168, 172, 255]], unlocked=True) +default ton_gloves_auror = DollCloth("tonks", ("upper body", "gloves"), "gloves", "auror_gloves",[[45, 45, 48, 255]], armfix=True, unlocked=True) +default ton_top_auror = DollCloth("tonks", ("upper body", "shirts"), "top", "auror",[[28, 27, 31, 255], [124, 42, 50, 255]], armfix=True, unlocked=True) +default ton_top_auror2 = DollCloth("tonks", ("upper body", "shirts"), "top", "auror2",[[124, 42, 50, 255]], armfix=True, unlocked=True) +default ton_robe_auror = DollCloth("tonks", ("upper body", "robes"), "robe", "auror_coat",[[40, 40, 41, 255], [174, 165, 169, 255]], armfix=True, unlocked=True) +default ton_bottoms_leggings = DollCloth("tonks", ("lower body", "leggings"), "bottom", "leggings",[[45, 45, 48, 255]], armfix=True, unlocked=True) +default ton_bottoms_leggings_hole = DollCloth("tonks", ("lower body", "leggings"), "bottom", "leggings_hole",[[45, 45, 48, 255]], level=60, armfix=True, unlocked=True) +default ton_stockings_auror = DollCloth("tonks", ("legwear", "stockings"), "stockings", "auror",[[45, 45, 48, 255], [177, 168, 172, 255]], armfix=True, unlocked=True) + +default ton_outfit_default = DollOutfit([ton_hair_base_new, ton_neckwear_beads, ton_gloves_auror, ton_top_auror, ton_robe_auror, ton_bottoms_leggings, ton_stockings_auror], unlocked=True) +default ton_outfit_last = DollOutfit([ton_hair_base_new], hidden=True) + +################### +## School Outfit ## +################### + +#default ton_bottom_school1 = DollCloth("tonks", ("lower body", "skirts"), "bottom", "school_skirt_1", [[103, 90, 108, 255], [232, 177, 13, 255]], unlocked=True) # Not implemented +default ton_top_tied = DollCloth("tonks", ("upper body", "other"), "top", "tied_top",[[183, 183, 184, 255]], blacklist=["bra"]) +default ton_bottom_school2 = DollCloth("tonks", ("lower body", "skirts"), "bottom", "school_skirt_2", [[103, 90, 108, 255], [232, 177, 13, 255]], armfix=True, level=20) +default ton_bottom_school3 = DollCloth("tonks", ("lower body", "skirts"), "bottom", "school_skirt_3", [[103, 90, 108, 255], [232, 177, 13, 255]], armfix=True, level=40) +default ton_bottom_school4 = DollCloth("tonks", ("lower body", "skirts"), "bottom", "school_skirt_4", [[103, 90, 108, 255], [232, 177, 13, 255]], armfix=True, level=60) + +default ton_outfit_school = DollOutfit([ton_hair_base_new, ton_top_tied, ton_bottom_school2], price=350, name="Oldschool School Uniform", desc="A very tight school outfit back from 1995!") + +############################# +## Stockings & Garterbelts ## +############################# + +default ton_stockings_long = DollCloth("tonks", ("legwear", "stockings"), "stockings", "long_basic_1",[[255, 255, 255, 255]], unlocked=True) +default ton_stockings_long2 = DollCloth("tonks", ("legwear", "stockings"), "stockings", "long_basic_2",[[0, 0, 0, 255], [16, 16, 16, 255]]) # Skimpy Outfit +default ton_stockings_long_meshed = DollCloth("tonks", ("legwear", "stockings"), "stockings", "long_meshed",[[0, 0, 0, 255], [0, 0, 0, 255]]) # Referee Outfit - SOON +default ton_stockings_long_sports = DollCloth("tonks", ("legwear", "stockings"), "stockings", "long_sports",[[255, 255, 255, 255], [23, 23, 23, 255]], unlocked=True) +default ton_stockings_long_striped = DollCloth("tonks", ("legwear", "stockings"), "stockings", "long_striped",[[255, 233, 246, 255], [180, 18, 36, 255]]) # Elf Outfit +default ton_garterbelt_long_basic = DollCloth("tonks", ("legwear", "garterbelts"), "garterbelt", "long_basic_1", [[255, 255, 255, 255]], armfix=True) + +################## +## Flag Bikinis ## +################## + +default ton_bra_bikini_1 = DollCloth("tonks", ("upper undergarment", "bikini bras"), "bra", "bikini_bra_1", [[255, 255, 255, 255], [255, 255, 255, 255]]) +default ton_bra_bikini_1_striped = DollCloth("tonks", ("upper undergarment", "bikini bras"), "bra", "bikini_bra_1_striped", [[255, 255, 255, 255], [139, 0, 0, 255], [255, 255, 255, 255]]) +default ton_bra_bikini_1_UK = DollCloth("tonks", ("upper undergarment", "bikini bras"), "bra", "bikini_bra_1_UK", [[255, 255, 255, 255], [200, 16, 46, 255], [1, 33, 105, 255], [255, 255, 255, 255]]) +default ton_bra_bikini_1_USA = DollCloth("tonks", ("upper undergarment", "bikini bras"), "bra", "bikini_bra_1_USA", [[255, 255, 255, 255], [139, 0, 0, 255], [12, 99, 216, 255], [255, 255, 255, 255]]) + +default ton_panties_bikini_1 = DollCloth("tonks", ("lower undergarment", "bikini panties"), "panties", "bikini_panties_1", [[255, 255, 255, 255], [255, 255, 255, 255]]) +default ton_panties_bikini_1_jock = DollCloth("tonks", ("lower undergarment", "bikini panties"), "panties", "bikini_panties_1_jock", [[255, 255, 255, 255]]) +default ton_panties_bikini_1_striped = DollCloth("tonks", ("lower undergarment", "bikini panties"), "panties", "bikini_panties_1_striped", [[255, 255, 255, 255], [139, 0, 0, 255]]) +default ton_panties_bikini_1_UK = DollCloth("tonks", ("lower undergarment", "bikini panties"), "panties", "bikini_panties_1_UK", [[255, 255, 255, 255], [200, 16, 46, 255], [1, 33, 105, 255]]) + +default ton_outfit_bikini_1 = DollOutfit([ton_hair_base_new, ton_bra_bikini_1, ton_panties_bikini_1], price=250, name="Simple Bikini set", desc="It ain't much, but it at least covers the important bits.") +default ton_outfit_bikini_2 = DollOutfit([ton_hair_base_new, ton_bra_bikini_1_striped, ton_panties_bikini_1_striped], price=250, name="Striped Bikini set", desc="It ain't much, but it at least covers the important bits. Did I mention the stripes?") +default ton_outfit_bikini_3 = DollOutfit([ton_hair_base_new, ton_bra_bikini_1_UK, ton_panties_bikini_1_UK], price=250, name="\"For the queen!\" bikini set", desc="This is the way.") +default ton_outfit_bikini_4 = DollOutfit([ton_hair_base_new, ton_bra_bikini_1_USA, ton_panties_bikini_1_jock], price=250, name="American bikini set", desc="Fuck yeah!") + +##################### +## Skimpy Swimsuit ## +##################### + +default ton_swimsuit_1 = DollCloth("tonks", ("upper body", "one-piece suits"), "top", "swimsuit_1", [[197, 42, 110, 255]], zorder=7, level=40) +default ton_swimsuit_1_striped = DollCloth("tonks", ("upper body", "one-piece suits"), "top", "swimsuit_1_striped", [[255, 245, 231, 255], [168, 0, 0, 255]], zorder=7, level=40) +default ton_swimsuit_1_USA = DollCloth("tonks", ("upper body", "one-piece suits"), "top", "swimsuit_1_USA", [[255, 255, 255, 255], [168, 0, 0, 255], [12, 64, 216, 255], [255, 255, 255, 255]], zorder=7, level=40) + +default ton_outfit_swimsuit_1 = DollOutfit([ton_hair_base_new, ton_swimsuit_1], price=260, name="Skimpy Swimsuit", desc="Disclaimer: Translucent swimsuits should not be worn in merman inhabited waters under any circumstance.") +default ton_outfit_swimsuit_2 = DollOutfit([ton_hair_base_new, ton_swimsuit_1_striped], price=260, name="Striped Skimpy Swimsuit", desc="A Translucent swimsuit with vertical stripes to make you look even thinner! Or maybe it's the other way around...") +default ton_outfit_swimsuit_3 = DollOutfit([ton_hair_base_new, ton_swimsuit_1_USA], price=260, name="Freedom Swimsuit", desc="May attract eagles.") + +################### +## Casual Outfit ## +################### + +default ton_top_crop_casual = DollCloth("tonks", ("upper body", "shirts"), "top", "crop_top",[[200, 8, 45, 255]]) +default ton_bottoms_leggings_casual = DollCloth("tonks", ("lower body", "leggings"), "bottom", "latex_leggings",[[32, 32, 32, 255], [25, 24, 24, 255]], armfix=True) + +default ton_outfit_casual = DollOutfit([ton_hair_base_new, ton_top_crop_casual, ton_bottoms_leggings_casual], price=350, name="Sexy Casual Outfit", desc="Leggings make squeaky sounds when rubbed together.") + +############# +## Nightie ## +############# + +default ton_top_nightie_1 = DollCloth("tonks", ("upper body", "shirts"), "top", "nightie_1", [[153, 38, 96, 255]], armfix=True) + +default ton_outfit_nightie = DollOutfit([ton_hair_base_new, ton_top_nightie_1], price=350, name="Nightie", desc="Doesn't leave much for the imagination.") + +################## +## Bunny outfit ## +################## + +default ton_top_bunny1 = DollCloth("tonks", ("upper body", "one-piece suits"), "top", "bunnysuit", [[48, 48, 48, 255]], blacklist=["panties", "bra"], zorder=7, level=40) +default ton_stockings_bunny1 = DollCloth("tonks", ("legwear", "pantyhose"), "stockings", "bunny_stockings_1", [[81, 81, 81, 255]], armfix=True, level=40) +default ton_hat_bunny1 = DollCloth("tonks", ("head", "headgear"), "headgear", "bunny", [[48, 48, 48, 255], [232, 232, 232, 255]], level=20) +default ton_neckwear_bunny1 = DollCloth("tonks", ("head", "neckwear"), "neckwear", "bunny_bowtie_1", [[232, 232, 232, 255], [48, 48, 48, 255]], level=10) + +default ton_outfit_bunny = DollOutfit([ton_hair_base_new, ton_top_bunny1, ton_stockings_bunny1, ton_hat_bunny1, ton_neckwear_bunny1], price=350, name="Sexy bunny outfit", desc="Vewy sexy :3") + +################### +## Dressing Gown ## +################### + +default ton_dressing_gown = DollCloth("tonks", ("upper body", "robes"), "robe", "dressing_gown", [[13, 0, 76, 255], [31, 41, 171, 255]], armfix=True) + +default ton_outfit_dressing_gown = DollOutfit([ton_hair_base_new, ton_dressing_gown]) + +################# +## Silky Dress ## +################# + +default ton_top_silk_dress = DollCloth("tonks", ("upper body", "dresses"), "top", "silk_dress", [[240, 237, 250, 255], [234, 234, 234, 255]], blacklist=["bra", "bottom"], armfix=True) +default ton_robe_silk = DollCloth("tonks", ("upper body", "robes"), "robe", "silk_robe", [[240, 237, 250, 255]], armfix=True) + +default ton_outfit_silky = DollOutfit([ton_hair_base_new, ton_top_silk_dress, ton_robe_silk], price=350, name="Silky Dress", desc="{size=-4}Disclaimer: Madam Mafkin isn't responsible for damaged nipples.{/size}") + +############################## +## Skimpy Dress & Club Dress## +############################## + +default ton_top_skimpy_dress = DollCloth("tonks", ("upper body", "dresses"), "top", "skimpy_dress", [[147, 1, 1, 255]], blacklist=["bottom"], armfix=True, level=40) +default ton_top_skimpy_dress2 = DollCloth("tonks", ("upper body", "dresses"), "top", "skimpy_dress_2", [[108, 0, 105, 255]], blacklist=["bottom"], armfix=True, level=20) + +default ton_outfit_skimpy_dress = DollOutfit([ton_hair_base_new, ton_top_skimpy_dress, ton_stockings_long2], price=300, name="Very Revealing Dress", desc="This dress shows quite a bit of cleavage... All of it in fact.") +default ton_outfit_club_dress = DollOutfit([ton_hair_base_new, ton_top_skimpy_dress2, ton_stockings_long_meshed], price=300, name="Club Dress", desc="A sultry muggle dress like this will turn heads at any wizard pub.") + +##################### +## Succubus Outfit ## +##################### + +default ton_hat_succubus = DollCloth("tonks", ("head", "headgear"), "headgear", "horns", [[62, 51, 57, 255], [106, 63, 67, 255]]) +default ton_neckwear_succubus = DollCloth("tonks", ("head", "neckwear"), "neckwear", "succubus_colar", [[62, 51, 57, 255]]) + +default ton_gloves_succubus = DollCloth("tonks", ("upper body", "gloves"), "gloves", "succubus_gloves", [[62, 51, 57, 255]]) +default ton_top_succubus = DollCloth("tonks", ("upper body", "other"), "top", "succubus_corset",[[62, 51, 57, 255], [181, 86, 84, 255], [136, 134, 134, 255]], blacklist=["bra"]) +default ton_top_succubus2 = DollCloth("tonks", ("upper body", "other"), "top", "succubus_corset_2",[[62, 51, 57, 255], [181, 86, 84, 255], [136, 134, 134, 255]]) +default ton_panties_succubus = DollCloth("tonks", ("lower undergarment", "bikini panties"), "panties", "succubus_panties", [[62, 51, 57, 255], [136, 134, 134, 255]], armfix=True) + +default ton_accessory0_succubus = DollCloth("tonks", ("misc", "accessory"), "accessory0", "succubus_wings", [[62, 51, 57, 255], [181, 86, 84, 255], [136, 134, 134, 255]], zorder=-160, blacklist=["robe"]) +default ton_accessory1_succubus = DollCloth("tonks", ("misc", "accessory"), "accessory1", "succubus_tail", [[62, 51, 57, 255], [181, 86, 84, 255]], zorder=-1) + +default ton_outfit_succubus = DollOutfit([ton_hair_base_new, ton_hat_succubus, ton_neckwear_succubus, ton_gloves_succubus, ton_top_succubus, ton_panties_succubus, ton_accessory0_succubus, ton_accessory1_succubus], addons=[ton_top_succubus2], name="Succubus Costume", desc="Hot as hell.") + +##################### +## Cavegirl Outfit ## +##################### + +default ton_earring_pearls = DollCloth("tonks", ("head", "earrings"), "earrings", "pearls", [[223, 240, 255, 255]]) +default ton_neckwear_pearls = DollCloth("tonks", ("head", "neckwear"), "neckwear", "pearls_1", [[223, 240, 255, 255]], zorder=16) +default ton_top_cavegirl = DollCloth("tonks", ("upper body", "dresses"), "top", "cavegirl_dress", [[223, 240, 255, 255]], armfix=True) + +default ton_outfit_cavegirl = DollOutfit([ton_hair_base_new, ton_top_cavegirl, ton_earring_pearls, ton_neckwear_pearls], price=200, name="Cavegirl Dress", desc="A stone age inspired dress that brings you back to the age of rocking knockers.") + +################# ~*~Ä~*~*~*~*~ ################# +## Xmas Stuff ### /%\ ___$__ ### Elf Outfit ## +################# /% \ |=I~I=| ################# + +# Accessories +default ton_makeup3_elf_ears = DollCloth("tonks", ("head", "makeup"), "makeup3", "elf_ears", [[255, 255, 255, 255]], zorder=5) +default ton_hat_antlers = DollCloth("tonks", ("head", "headgear"), "headgear", "antlers", [[234, 187, 170, 255]]) +default ton_hat_elf = DollCloth("tonks", ("head", "headgear"), "headgear", "elf", [[2, 116, 71, 255], [255, 239, 248, 255]]) +default ton_neckwear_choker1 = DollCloth("tonks", ("head", "neckwear"), "neckwear", "choker_1", [[255, 43, 149, 255]]) +default ton_neckwear_bell1 = DollCloth("tonks", ("head", "neckwear"), "neckwear", "bell_1", [[2, 116, 71, 255], [244, 181, 82, 255]], zorder=16) +default ton_accessory4_bells = DollCloth("tonks", ("misc", "accessory"), "accessory4", "bells_1", [[244, 181, 82, 255]], zorder=16) +default ton_accessory3_belt1 = DollCloth("tonks", ("misc", "accessory"), "accessory3", "belt_1", [[42, 42, 42, 255], [185, 135, 73, 255]], zorder=16) +default ton_earring_bells = DollCloth("tonks", ("head", "earrings"), "earrings", "bells", [[244, 181, 82, 255]]) +default ton_piercing1_nipple_bells = DollCloth("tonks", ("piercings & tattoos", "piercings"), "piercing1", "nipple_bells", [[244, 181, 82, 255]]) +# Main Clothing +default ton_top_elf = DollCloth("tonks", ("upper body", "dresses"), "top", "elf_dress",[[2, 116, 71, 255]], armfix=True) +default ton_bra_ribbon = DollCloth("tonks", ("upper undergarment", "other"), "bra", "ribbon", [[255, 43, 149, 255]], blacklist=["top", "piercing1"]) +default ton_panties_ribbon = DollCloth("tonks", ("lower undergarment", "other"), "panties", "ribbon", [[255, 43, 149, 255]], blacklist=["bottom"], armfix=True) +default ton_bra_pasties = DollCloth("tonks", ("upper undergarment", "other"), "bra", "pasties_1",[[255, 43, 149, 255]], unlocked=True) +default ton_bra_pasties2 = DollCloth("tonks", ("upper undergarment", "other"), "bra", "pasties_2",[[2, 116, 71, 255], [244, 181, 82, 255]]) +default ton_bottom_xmas = DollCloth("tonks", ("lower body", "other"), "bottom", "xmas",[[2, 116, 71, 255], [255, 239, 248, 255]], armfix=True) +default ton_gloves_xmas = DollCloth("tonks", ("upper body", "gloves"), "gloves", "xmas", [[255, 239, 248, 255]]) +default ton_stockings_xmas = DollCloth("tonks", ("legwear", "stockings"), "stockings", "xmas",[[255, 255, 255, 255], [255, 255, 255, 255]], armfix=True) + +default ton_outfit_elf = DollOutfit([ton_hair_base_new, ton_makeup3_elf_ears, ton_earring_bells, ton_hat_elf, ton_neckwear_bell1, ton_top_elf, ton_accessory3_belt1, ton_accessory4_bells, ton_garterbelt_long_basic, ton_stockings_long_striped]) +default ton_outfit_ribbon = DollOutfit([ton_hair_base_new, ton_neckwear_choker1, ton_bra_ribbon, ton_panties_ribbon]) +default ton_outfit_xmas = DollOutfit([ton_hair_base_new, ton_hat_antlers, ton_earring_bells, ton_neckwear_bell1, ton_bra_pasties2, ton_bottom_xmas, ton_gloves_xmas, ton_stockings_xmas], addons=[ton_piercing1_nipple_bells, ton_bra_pasties2]) + +################### +## Lady D Outfit ## +################### + +default ton_hat_classy = DollCloth("tonks", ("head", "headgear"), "headgear", "classy_hat", [[82, 82, 94, 255]], zorder=3) +default ton_neckwear_pearls2 = DollCloth("tonks", ("head", "neckwear"), "neckwear", "pearls_2", [[220, 200, 139, 255]]) +default ton_earring_pearls2 = DollCloth("tonks", ("head", "earrings"), "earrings", "pearls_2", [[220, 200, 139, 255]]) + +default ton_accessory2_flower = DollCloth("tonks", ("misc", "accessory"), "accessory2", "flower", [[92, 92, 92, 255]], zorder=16) +default ton_gloves_leather = DollCloth("tonks", ("upper body", "gloves"), "gloves", "leather_gloves", [[79, 73, 64, 255]], armfix=True) +default ton_top_classy_dress = DollCloth("tonks", ("upper body", "other"), "top", "classy_dress",[[203, 201, 184, 255]], armfix=True, blacklist=["bra"]) + +default ton_outfit_lady_D = DollOutfit([ton_hair_base_new, ton_hat_classy, ton_neckwear_pearls2, ton_earring_pearls2, ton_accessory2_flower, ton_gloves_leather, ton_top_classy_dress], price=400, name="Lady D Costume", desc="This outfit was once worn by a very tall and scary lady.") + +################## +## Police Woman ## #Unlocked in not_so_great_escape mirror story +################## + +default ton_headgear_police = DollCloth("tonks", ("head", "headgear"), "headgear", "police", [[126, 126, 192, 255], [72, 101, 183, 255], [235, 209, 101, 255]]) +default ton_glasses_police = DollCloth("tonks", ("head", "glasses"), "glasses", "police", [[181, 199, 214, 255], [177, 77, 116, 255]]) + +default ton_top_police1 = DollCloth("tonks", ("upper body", "shirts"), "top", "police1", [[126, 126, 192, 255], [72, 101, 183, 255], [235, 209, 101, 255]], armfix=True) +default ton_top_police2 = DollCloth("tonks", ("upper body", "shirts"), "top", "police2", [[72, 101, 183, 255], [235, 209, 101, 255]], armfix=True) +default ton_top_police3 = DollCloth("tonks", ("upper body", "shirts"), "top", "police3", [[126, 126, 192, 255]], armfix=True) +default ton_bottom_police = DollCloth("tonks", ("lower body", "shorts"), "bottom", "police",[[72, 101, 183, 255], [126, 126, 192, 255]], armfix=True) +default ton_accessory0_police = DollCloth("tonks", ("misc", "accessory"), "accessory3", "police_badge", [[238, 209, 101, 255]], zorder=16) + +default ton_outfit_police = DollOutfit([ton_hair_base_new, ton_headgear_police, ton_accessory0_police, ton_glasses_police, ton_top_police1, ton_bottom_police], addons=[ton_top_police2, ton_top_police3]) + +##################### +## Wrestling Coach ## #Unlocked in a_white_christmas mirror story +##################### +default ton_neckwear_whistle = DollCloth ("tonks", ("head", "neckwear"), "neckwear", "whistle", [[110, 64, 37, 255], [134, 160, 169, 255]]) +default ton_top_sweatshirt = DollCloth("tonks", ("upper body", "shirts"), "top", "sweatshirt", [[243, 240, 216, 255]]) +default ton_bottom_sweatpants = DollCloth("tonks", ("lower body", "trousers"), "bottom", "sweatpants", [[163, 53, 48, 255], [243, 240, 216, 255]], armfix=True) +default ton_accessory0_neck_towel = DollCloth("tonks", ("misc", "accessory"), "accessory0", "neck_towel", [[255, 252, 216, 255]], zorder=16) + +default ton_outfit_wrestling_coach = DollOutfit([ton_hair_base_new, ton_neckwear_whistle, ton_top_sweatshirt, ton_bottom_sweatpants, ton_accessory0_neck_towel]) + + +### Add badge! + +########## +## Misc ## +########## + +default ton_top_corset = DollCloth("tonks", ("upper body", "other"), "top", "corset",[[247, 206, 146, 255]], blacklist=["bra", "piercing1"], armfix=True, unlocked=True) +default ton_bottoms_jeans = DollCloth("tonks", ("lower body", "trousers"), "bottom", "jeans",[[51, 104, 105, 255]], armfix=True, unlocked=True) +default ton_panties_base = DollCloth("tonks", ("lower undergarment", "bikini panties"), "panties", "base",[[228, 250, 255, 255], [228, 55, 20, 255]], armfix=True, unlocked=True) +default ton_bra_base = DollCloth("tonks", ("upper undergarment", "bikini bras"), "bra", "bikini",[[228, 250, 255, 255], [228, 55, 20, 255]], unlocked=True) +default ton_ruffled_top = DollCloth("tonks", ("upper body", "shirts"), "top", "ruffled_top",[[213, 173, 219, 255]], level=25, unlocked=True) + +default ton_earring_cartilege = DollCloth("tonks", ("head", "earrings"), "earrings", "cartilege", [[161, 159, 159, 255]], unlocked=True) +default ton_earring_hoops = DollCloth("tonks", ("head", "earrings"), "earrings", "hoops", [[161, 159, 159, 255]], unlocked=True) +default ton_earring_industrial = DollCloth("tonks", ("head", "earrings"), "earrings", "industrial", [[161, 159, 159, 255]], unlocked=True) + +default ton_piercing0_clit_stud = DollCloth("tonks", ("piercings & tattoos", "piercings"), "piercing0", "clit_stud", [[161, 159, 159, 255]], unlocked=True) +default ton_piercing1_nipple_stud = DollCloth("tonks", ("piercings & tattoos", "piercings"), "piercing1", "nipple_stud", [[161, 159, 159, 255]], unlocked=True) +default ton_piercing1_nipple_rings = DollCloth("tonks", ("piercings & tattoos", "piercings"), "piercing1", "nipple_rings", [[161, 159, 159, 255]], unlocked=True) +default ton_piercing1_nipple_rings2 = DollCloth("tonks", ("piercings & tattoos", "piercings"), "piercing1", "nipple_rings2", [[161, 159, 159, 255]], unlocked=True) +default ton_piercing1_nipple_rings3 = DollCloth("tonks", ("piercings & tattoos", "piercings"), "piercing1", "nipple_rings3", [[161, 159, 159, 255]], unlocked=True) + +default ton_piercing2_belly_stud = DollCloth("tonks", ("piercings & tattoos", "piercings"), "piercing2", "belly_stud", [[161, 159, 159, 255]], unlocked=True) +default ton_piercing2_belly_heart = DollCloth("tonks", ("piercings & tattoos", "piercings"), "piercing2", "belly_heart", [[161, 159, 159, 255]], unlocked=True) +default ton_piercing2_belly_dick = DollCloth("tonks", ("piercings & tattoos", "piercings"), "piercing2", "belly_dick", [[161, 159, 159, 255]], unlocked=True) + +################ +## Pubic Hair ## +################ + +default ton_pubes_arrow = DollCloth("tonks", ("lower undergarment", "pubes"), "pubes", "arrow", [[255, 146, 185, 255]], unlocked=True) +default ton_pubes_beaver = DollCloth("tonks", ("lower undergarment", "pubes"), "pubes", "beaver", [[255, 146, 185, 255]], unlocked=True) +default ton_pubes_stuble = DollCloth("tonks", ("lower undergarment", "pubes"), "pubes", "stuble", [[132, 64, 89, 255]], unlocked=True) +default ton_pubes_unshaved = DollCloth("tonks", ("lower undergarment", "pubes"), "pubes", "unshaved", [[132, 64, 89, 255]], unlocked=True) + +# Lipstick (DollLipstick) +default ton_makeup4_lipstick = DollLipstick("tonks", ("head", "makeup"), "makeup4", "lipstick", [[255, 70, 70, 255]], unlocked=True) diff --git a/game/scripts/characters/tonks/wardrobe_reactions.rpy b/game/scripts/characters/tonks/wardrobe_reactions.rpy new file mode 100644 index 00000000..269e5ea0 --- /dev/null +++ b/game/scripts/characters/tonks/wardrobe_reactions.rpy @@ -0,0 +1,691 @@ +define ton_requirements = { + "category upper undergarment": 10, + "category lower undergarment": 10, + "category piercings & tattoos": 60, + "touch head": 50, + "touch breasts": 20, + "touch vagina": 40, + #"unequip panties": 6, # Tonks does not use panties unequip limits. + #"unequip bra": 6, # Tonks does not use bra unequip limits. + "unequip top": 20, + "unequip bottom": 20, + } + +define ton_responses = { + "category_fail": "ton_reaction_category_fail", + "equip": "ton_reaction_equip", + "equip_fail": "ton_reaction_equip_fail", + "unequip": "ton_reaction_unequip", + "unequip_fail": "ton_reaction_unequip_fail", + "touch": "ton_reaction_touch", + "touch_fail": "ton_reaction_touch_fail", + "equip_outfit": "ton_reaction_equip_outfit", + "equip_outfit_fail": "ton_reaction_equip_outfit_fail", + "blacklist": "ton_reaction_blacklist", + "fallback": "ton_reaction_fallback", +} + +label ton_reaction_category_fail(category): + + $ random_number = renpy.random.randint(1, 4) + if category == "upper undergarment": + if random_number == 1: + ton "*Hmm*... You'd like that wouldn't you?" ("horny", "narrow", "base", "mid") + elif random_number == 2: + ton "If you behave maybe I'll let you take a peek later, [ton_genie_name]..." ("soft", "narrow", "base", "mid") + elif random_number == 3: + ton "Patience dear..." ("grin", "wink", "raised", "mid") + elif random_number == 4: + ton "These crystal orbs are yet to predict that I would ever allow you to ask such a thing..." ("open", "closed", "shocked", "mid") + gen "They might just need a good dusting..." ("base", xpos="far_left", ypos="head") + ton "Perhaps... But not right now..." ("soft", "narrow", "base", "mid") + elif category == "lower undergarment": + if random_number == 1: + ton "You want me to put on underwear? Now that's asking a bit much don't you think?" ("crooked_smile", "narrow", "base", "mid") + elif random_number == 2: + ton "Like the Scottish say, I'd rather let it feel the breeze." ("grin", "narrow", "base", "mid") + elif random_number == 3: + ton "Underwear? Don't make me laugh..." ("base", "base", "base", "down") + elif random_number == 4: + ton "You'd have to do better than that if you want this kitty to come out and play..." ("base", "narrow", "base", "mid") + elif category == "piercings & tattoos": + if random_number == 1: + ton "I decide where such things go..." ("open", "base", "base", "mid") + elif random_number == 2: + ton "You'd like that wouldn't you? I think I'd keep such decisions for myself thank you." ("soft", "base", "base", "R") + elif random_number == 3: + ton "*Hmm*... I'd be such a bad girl if I let you do that..." ("annoyed", "closed", "base", "mid") + elif random_number == 4: + ton "What would you think of me if I let you do that?" ("horny", "narrow", "base", "down") + return + +label ton_reaction_touch(what): + if what == "head": + $ mouse_headpat() + $ random_number = renpy.random.randint(1, 5) + + if random_number == 1: + ton "Is this what you do to our students? A bit tame don't you think?" ("soft", "narrow", "base", "mid") + elif random_number == 2: + ton "Surely this is not an appropriate method of rewarding your subordinate..." ("horny", "narrow", "base", "R") + elif random_number == 3: + ton "Does this mean I'm your favourite student?" ("grin", "base", "raised", "mid") + ton "Teacher, I mean..." ("base", "narrow", "base", "downR") + elif random_number == 4: + ton "How naughty... How could I ever have allowed such indecent behaviour..." ("disgust", "narrow", "base", "mid") + ton "Don't you dare touch my elbows next..." ("soft", "narrow", "base", "mid") + elif random_number == 5: + ton "Such a weird custom but I'll allow it..." ("horny", "closed", "base", "mid") + elif what == "breasts": + $ mouse_heart() + $ random_number = renpy.random.randint(1, 4) + + if random_number == 1: + ton "*Mmm*..." ("base", "narrow", "base", "up") + elif random_number == 2: + ton "Trying to get put in detention are we?" ("grin", "narrow", "base", "mid") + elif random_number == 3: + ton "*Tsk*... How naughty... And with an employee no less." ("horny", "narrow", "base", "mid") + elif random_number == 4: + ton "I don't remember this being part of the job description..." ("horny", "narrow", "shocked", "down") + ton "But I'll look the other way for now..." ("grin", "closed", "base", "mid") + elif what == "vagina": + $ mouse_heart() + $ random_number = renpy.random.randint(1, 4) + + if random_number == 1: + ton "A gentleman usually doesn't kiss on the lips but I'll allow it..." ("soft", "closed", "base", "mid") + elif random_number == 2: + ton "*Hmm*...{w=0.3} Did I feel some tongue? Must've been my imagination..." ("horny", "narrow", "base", "down") + elif random_number == 3: + ton "Is this one part of the extra curricular activities in my work contract?" ("grin", "narrow", "raised", "mid") + elif random_number == 4: + ton "I didn't expect to receive a bonus today... What a nice surprise..." ("grin", "narrow", "raised", "mid") + return + +label ton_reaction_touch_fail(what): + if what == "head": + $ mouse_slap() + $ random_number = renpy.random.randint(1, 5) + + if random_number == 1: + ton "Stop that." (face="annoyed") + elif random_number == 2: + ton "Do you know how long it takes to model my hair like that?" (face="neutral") + elif random_number == 3: + ton "There's two things a man shouldn't touch, her wallet and her hair." (face="angry") + elif random_number == 4: + ton "Don't get any funny ideas." (face="horny") + elif random_number == 5: + ton "Hey, don't do that!" (face="annoyed") + ton "Let me pet you instead." (face="neutral") + $ mouse_headpat() + pause 0.35 + $ mouse_headpat() + pause 0.35 + $ mouse_headpat() + ton "Good boy!" (face="happy") + + elif what == "breasts": + $ mouse_slap() + $ random_number = renpy.random.randint(1, 6) + + if random_number == 1: + ton "That's not how a headmaster should treat their subordinates." (face="annoyed") + elif random_number == 2: + ton "It's inappropriate, let's keep it civil okay?" (face="annoyed") + elif random_number == 3: + ton "Someone fancy themselves a bit of a bad boy?" (face="annoyed", mouth="base") + elif random_number == 4: + ton "Hey, those are my fun bags... Don't be naughty." (face="annoyed", mouth="horny") + elif random_number == 5: + ton "Hey now, someone's getting a bit ahead of themselves." (face="annoyed") + elif random_number == 6: + ton "Those aren't for you to play with..." (face="annoyed") + + elif what == "vagina": + $ mouse_slap() + $ random_number = renpy.random.randint(1, 5) + + if random_number == 1: + ton "You have to earn it first." (face="annoyed") + elif random_number == 2: + ton "If you'd like to keep these hands intact I suggest you stop it right now, [ton_genie_name]." (face="annoyed") + elif random_number == 3: + ton "Hey, who said you had permission to approach the chamber of secrets?" (face="annoyed", eyebrows="angry", mouth="grin") + elif random_number == 4: + ton "That place is reserved for good boys and girls..." (face="annoyed", eyebrows="angry", mouth="grin") + elif random_number == 5: + ton "That forest is forbidden entry for first years... Let's get to know each other a bit better first..." (face="annoyed", eyebrows="angry", mouth="grin") + + return + +label ton_reaction_equip(item): + ### Add specific clothing reactions here. + # if item == : + # ton "This looks awesome! I'll wear this with pride!" + return + +label ton_reaction_equip_fail(item): + ### Add specific clothing reactions here. + # if item == : + # ton "I won't wear because!" + # else: + # + + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + ton "Not yet big boy, perhaps once this scheme of ours comes more into fruition..." (face="annoyed", eyebrows="angry", mouth="grin") + elif random_number == 2: + ton "It does look nice but you need to deserve it..." (face="annoyed", eyebrows="angry", mouth="grin") + else: + ton "*Hmm*... What would you think of me if I wore this?... Later perhaps." (face="annoyed", eyebrows="raised", mouth="horny") + + + return + +label ton_reaction_unequip(item): + ### Example + # if item.type == "panties": + # if ton_friendship > 15: + # ton "You want to see my snatch?" + # ton "You got it [genie_name]!" + # + return + +label ton_reaction_unequip_fail(item): + + ### Bra and panties checks are not in use as Tonks doesn't mind NOT wearing underwear. + # if item.type == "panties": + # ton "I'm n-not comfortable with that, sir..." + + # elif item.type == "bra": + # ton "P-please I don't want to.." + + if item.type == "top": + ton "Someone's being naughty... I might have to give you a spanking for that." (face="annoyed", eyebrows="angry", mouth="grin") + ton "Just kidding! Sure, have a quick look, [ton_genie_name]." (face="annoyed", eyebrows="raised", mouth="horny") + $ char_active.strip("top", "robe") + ton "" (face="happy") + pause 1.0 + ton "" (face="happy") + pause 1.0 + ton "" (face="happy") + $ char_active.wear("top", "robe") + gen "What gives?!" ("angry", xpos="far_left", ypos="head") + ton "Time's up." (face="annoyed", eyebrows="angry", mouth="grin") + gen "......" ("base", xpos="far_left", ypos="head") + + elif item.type == "bottom": + $ random_number = renpy.random.randint(1, 4) + if random_number == 1: + ton "I thought patience came with old age..." ("base", "base", "raised", "R") + elif random_number == 2: + ton "What's the point in that? You already know what's under there don't you?" ("soft", "narrow", "base", "mid") + elif random_number == 3: + ton "You could do with learning some restraint... Perhaps I need to teach you a thing or two..." ("grin", "narrow", "base", "mid") + elif random_number == 4: + ton "Eager are we? Well I can't say I blame you..." ("open", "closed", "base", "mid") + return + +label ton_reaction_equip_outfit(item): + ### Add specific Outfit reactions here. + + ################## + ## Auror Outfit ## + ################## + if item == ton_outfit_default: + gen "Could you put on your regular clothing for me?" ("base", xpos="far_left", ypos="head") + ton "You mean my Auror uniform?" ("open", "base", "raised", "mid") + gen "Is that what it is?" ("base", xpos="far_left", ypos="head") + ton "Well... It meets all of the requirements of an Auror uniform." ("base", "narrow", "base", "R") + ton "Of course I made my own adjustments to it..." ("horny", "narrow", "base", "down") + gen "Like not wearing underwear?" ("base", xpos="far_left", ypos="head") + ton "Well... The ministry didn't mention any underwear requirements so..." ("base", "narrow", "base", "mid") + gen "Perverts the lot of them..." ("base", xpos="far_left", ypos="head") + ton "I'll just put it on then shall I." ("base", "base", "base", "mid") + + ################### + ## School Outfit ## + ################### + elif item == ton_outfit_school: + gen "Feeling like revisiting your student days for a bit?" ("base", xpos="far_left", ypos="head") + ton "Are you planning on spanking me over your knee, headmaster?" ("soft", "narrow", "base", "mid") + gen "I--{w=0.4} Was that something that happened during your school days?" ("base", xpos="far_left", ypos="head") + ton "I wish..." ("base", "narrow", "base", "R") + gen "No, what I meant was..." ("base", xpos="far_left", ypos="head") + gen "I've got this school uniform for you to wear today." ("base", xpos="far_left", ypos="head") + ton "Is it a sexy school uniform?" ("base", "narrow", "raised", "mid") + gen "You know me too well..." ("base", xpos="far_left", ypos="head") + ton "Alright, let me just put it on for you then... Headmaster..." ("horny", "narrow", "base", "mid") + + ################## + ## Flag Bikinis ## + ################## + elif item == ton_outfit_bikini_1: + gen "You know what would be kinda crazy?" ("base", xpos="far_left", ypos="head") + ton "what?" ("base", "base", "base", "mid") + gen "If you like... Just stood in my office wearing this bikini..." ("base", xpos="far_left", ypos="head") + ton "Are you asking or is this a hypothetical?" ("base", "narrow", "base", "R") + gen "What if I'm hypothetically asking?" ("base", xpos="far_left", ypos="head") + ton "Well if you were then I'd probably say yes, that is a pretty crazy thing to ask." ("soft", "base", "base", "mid") + gen "But you'd still do it right?" ("base", xpos="far_left", ypos="head") + ton "Sure, why not..." ("base", "base", "base", "mid") + elif item == ton_outfit_bikini_2: + gen "Do you believe what they say about stripes making you look slimmer?" ("base", xpos="far_left", ypos="head") + ton "I've never really had the need to think about that." ("base", "base", "base", "mid") + gen "I was thinking we could give it a test and see if those big titties of yours would look any different." ("base", xpos="far_left", ypos="head") + ton "*Hmm*?" ("soft", "base", "base", "mid") + gen "With this striped bikini!" ("base", xpos="far_left", ypos="head") + ton "You could just have asked me in a normal way to put it on." ("soft", "base", "base", "mid") + gen "Well... That's not as fun..." ("base", xpos="far_left", ypos="head") + elif item == ton_outfit_bikini_3: + gen "I've got this bikini with the UK flag on it for you to wear." ("base", xpos="far_left", ypos="head") + ton "Oh? Any particular reason." ("base", "base", "raised", "mid") + gen "I think you'd look quite spiffing in it..." ("base", xpos="far_left", ypos="head") + ton "I guess that's a good enough reason..." ("base", "narrow", "base", "R") + elif item == ton_outfit_bikini_4: + gen "Miss Tonks, have you ever experienced true freedom?" ("base", xpos="far_left", ypos="head") + ton "Every time I take my bra off." ("grin", "narrow", "base", "R") + gen "Well today--" ("grin", xpos="far_left", ypos="head") + gen "*Err*... Well this is awkward." ("base", xpos="far_left", ypos="head") + gen "I got this Bikini with the US flag on it for you to wear." ("base", xpos="far_left", ypos="head") + ton "A bikini? Why not body paint?" ("soft", "narrow", "base", "mid") + gen "*Hmm*... Maybe next time, but this will have to do for now..." ("base", xpos="far_left", ypos="head") + ton "Alright then." ("base", "base", "base", "mid") + + ###################### + ## Skimpy Swimsuits ## + ###################### + elif item == ton_outfit_swimsuit_1: + gen "Did anyone tell you how good you look in a swimsuit?" ("base", xpos="far_left", ypos="head") + ton "Yes, why?" ("soft", "base", "raised", "mid") + gen "Why you're about to hear it again once you put this on." ("base", xpos="far_left", ypos="head") + ton "*Hmm*... Clever boy..." ("base", "narrow", "base", "R") + elif item == ton_outfit_swimsuit_2: + gen "I've got this striped swimsuit for you to wear." ("base", xpos="far_left", ypos="head") + ton "In here?" ("soft", "base", "raised", "mid") + gen "Yes, unless today is the day of the beach episode." ("base", xpos="far_left", ypos="head") + ton "Beach episode?" ("open", "base", "base", "mid") + gen "Yes please..." ("base", xpos="far_left", ypos="head") + ton "*Huh*?" ("upset", "base", "raised", "mid") + gen "... For the fan service." ("base", xpos="far_left", ypos="head") + ton "Okay then..." ("soft", "narrow", "base", "down") + ton "I'll just put this on shall I?" ("base", "base", "base", "mid") + elif item == ton_outfit_swimsuit_3: + gen "How about you put on this swimsuit for me?" ("base", xpos="far_left", ypos="head") + ton "*Hmm*?" ("base", "narrow", "raised", "down") + ton "Is this the American flag?" ("soft", "base", "base", "down") + gen "Fuck yes it is..." ("base", xpos="far_left", ypos="head") + gen "Now put this on and make your country proud!" ("base", xpos="far_left", ypos="head") + ton "But I'm not..." ("soft", "base", "base", "down") + gen "For your country!" ("base", xpos="far_left", ypos="head") + ton "Alright then." ("base", "closed", "base", "mid") + ton "" ("base", "base", "base", "mid") + + ################### + ## Casual Outfit ## + ################### + elif item == ton_outfit_casual: + gen "Could you put on this sexy casual outfit?" ("base", xpos="far_left", ypos="head") + ton "Most certainly..." ("grin", "wink", "base", "mid") + ton "These leggings are very much my style I must say." ("grin", "narrow", "base", "mid") + gen "Is it because they show off every single curve of your body?" ("base", xpos="far_left", ypos="head") + ton "How did you know?" ("soft", "wide", "shocked", "mid") + gen "Lucky guess..." ("base", xpos="far_left", ypos="head") + + ############# + ## Nightie ## + ############# + elif item == ton_outfit_nightie: + gen "I've got this nightie for you to wear." ("base", xpos="far_left", ypos="head") + ton "Why not just ask me to take all of my clothes off?" ("open", "base", "base", "down") + gen "Why because that would be indecent!" ("base", xpos="far_left", ypos="head") + call play_sound("giggle") + ton "*giggles*" ("base", "closed", "base", "mid") + ton "I suppose I'll have to wear it then..." ("base", "wink", "base", "mid") + ton "In the name of decency." ("grin", "base", "base", "mid") + + ################## + ## Bunny outfit ## + ################## + elif item == ton_outfit_bunny: + gen "I've got this sexy bunny outfit for you to wear today." ("base", xpos="far_left", ypos="head") + ton "What's with you boys and bunny costumes?" ("soft", "narrow", "raised", "R") + gen "Do you even have to ask?" ("base", xpos="far_left", ypos="head") + ton "*Hmm*... I suppose the ears are kind of--" ("open", "narrow", "base", "down") + gen "It highlights the shape of the ass!" ("base", xpos="far_left", ypos="head") + ton "Of course that's why." ("soft", "narrow", "base", "down") + ton "Very well..." ("base", "base", "base", "mid") + + ################### + ## Dressing Gown ## + ################### + elif item == ton_outfit_dressing_gown: + gen "You looked pretty hot in that dressing gown last time." ("base", xpos="far_left", ypos="head") + ton "Why thank you... I usually sleep naked, but I thought I should probably not be as casual outside my office..." ("soft", "narrow", "base", "mid") + gen "I'd like for you to wear it inside my office." ("base", xpos="far_left", ypos="head") + ton "Of course you do..." ("soft", "narrow", "base", "R") + ton "Well I suppose wearing it more often wont hurt." ("soft", "base", "base", "mid") + + ################# + ## Silky Dress ## + ################# + elif item == ton_outfit_silky: + gen "I've got you one of the most splendid and luxurious outfits that I could find." ("base", xpos="far_left", ypos="head") + ton "Luxurious you say?" ("soft", "base", "raised", "mid") + gen "Why yes... Made by the finest silk no less." ("base", xpos="far_left", ypos="head") + ton "Silk? Now that's--" ("grin", "wide", "base", "mid") + ton "Oh, I see why you've got it..." ("soft", "narrow", "base", "down") + gen "To spoil my favourite teacher?" ("base", xpos="far_left", ypos="head") + ton "..." ("soft", "narrow", "base", "mid") + gen "Don't tell Snape." ("base", xpos="far_left", ypos="head") + ton "It's pretty much see-through." ("soft", "narrow", "base", "mid") + gen "Is it? I had no idea!" ("base", xpos="far_left", ypos="head") + ton "..." ("base", "narrow", "base", "R") + gen "And here I spent so much money on it!" ("base", xpos="far_left", ypos="head") + ton "I didn't say that was a bad thing." ("base", "narrow", "base", "mid") + ton "Give me a moment to put it on." ("base", "base", "base", "mid") + + ################## + ## Skimpy Dress ## + ################## + elif item == ton_outfit_skimpy_dress: + gen "I've got a dress for you to wear today." ("base", xpos="far_left", ypos="head") + ton "Oh?" ("soft", "base", "base", "mid") + gen "This one." ("base", xpos="far_left", ypos="head") + ton "*Hmm*... I can see why you picked it." ("base", "narrow", "base", "down") + ton "It might be hard to keep my nipples covered in this one, but I'll try." ("base", "base", "base", "mid") + gen "Please don't." ("base", xpos="far_left", ypos="head") + + ################ + ## Club Dress ## + ################ + elif item == ton_outfit_club_dress: + gen "I've got this club dress for you to wear." ("base", xpos="far_left", ypos="head") + ton "*Hmm*... You planning on taking me out to dance?" ("soft", "narrow", "base", "mid") + gen "These hips are meant for pushing, not dancing I'm afraid..." ("base", xpos="far_left", ypos="head") + gen "No, I got you this one purely because of how sexy you'd look in it." ("base", xpos="far_left", ypos="head") + ton "As if you'd get me an outfit for any other purpose..." ("base", "narrow", "base", "R") + call play_sound("giggle") + ton "*giggles*" ("grin", "narrow", "base", "R") + ton "Well, you could try, but I'm sure I'll look sexy in it either way." ("base", "closed", "base", "mid") + gen "Is that a challenge?" ("base", xpos="far_left", ypos="head") + ton "*Hmm*... Go ahead." ("soft", "base", "base", "mid") + ton "But first, let's judge the sexyness factor of this one..." ("base", "base", "base", "mid") + + ##################### + ## Succubus Outfit ## + ##################### + elif item == ton_outfit_succubus: + gen "Could you put on the succubus outfit?" ("base", xpos="far_left", ypos="head") + ton "Outfit? What on earth do you mean?" ("soft", "base", "raised", "mid") + gen "The one with the wings and stuff." ("base", xpos="far_left", ypos="head") + ton "Oh... Why something like that can't be done with an outfit, I'll have to grow some wings myself." ("grin", "wink", "base", "mid") + gen "You will have to what?!" ("base", xpos="far_left", ypos="head") + call play_sound("giggle") + ton "*giggles*" ("grin", "narrow", "base", "mid") + gen "Oh, you're just messing with me..." ("base", xpos="far_left", ypos="head") + ton "..." ("grin", "base", "base", "R") + gen "You are...{w=0.4} Aren't--" ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/magic3.ogg") + $ tonks.equip(item) + ton "" ("horny", "narrow", "base", "mid") + with flash + + ##################### + ## Cavegirl Outfit ## + ##################### + elif item == ton_outfit_cavegirl: + gen "I've got the perfect outfit for you to wear when clubbing." ("base", xpos="far_left", ypos="head") + gen "Here..." ("base", xpos="far_left", ypos="head") + ton "Clubbing? Are you sure?" ("upset", "narrow", "base", "down") + gen "As in smash things with a club." ("base", xpos="far_left", ypos="head") + ton "What?" ("clench", "narrow", "base", "mid") + gen "Trust me, you'd be on the floor laughing if you had watched the cartoon." ("base", xpos="far_left", ypos="head") + ton "Did the person in this cartoon also have one of their breasts exposed?" ("soft", "base", "raised", "down") + gen "I wish..." ("base", xpos="far_left", ypos="head") + ton "So I'll just be fullfilling some fantasy of yours then?" ("soft", "narrow", "base", "mid") + gen "Pretty much..." ("base", xpos="far_left", ypos="head") + ton "Alright then..." ("horny", "narrow", "base", "mid") + + ################# + ### Elf Outfit ## + ################# + elif item == ton_outfit_elf: + gen "You've been so helpful lately so I've got you an outfit." ("base", xpos="far_left", ypos="head") + ton "That's very--" ("base", "wide", "base", "mid") + ton "What's this?" ("soft", "base", "raised", "down") + gen "Why, it's an elf costume of course." ("base", xpos="far_left", ypos="head") + gen "For santa's sexy little helper." ("base", xpos="far_left", ypos="head") + ton "*Hmm*... And you're supposed to be santa I suppose?" ("base", "narrow", "raised", "mid") + gen "Why of course... Although you're free to handle santas sack if you like." ("base", xpos="far_left", ypos="head") + + #################### + ### Ribbon Outfit ## + #################### + elif item == ton_outfit_ribbon: + gen "Ever wrapped yourself up tightly before?" ("base", xpos="far_left", ypos="head") + ton "Of course... Although I usually have another person do it for me." ("grin", "wink", "base", "mid") + gen "Well today I'd like you to wrap yourself up for me like a present!" ("base", xpos="far_left", ypos="head") + ton "You sure you'd want that?" ("soft", "base", "raised", "mid") + gen "Of course!" ("base", xpos="far_left", ypos="head") + ton "But what if you've been to naughty this year for you to unwrap me?" ("soft", "narrow", "raised", "mid") + gen "I'll just have you unwrap yourself in thas case." ("base", xpos="far_left", ypos="head") + ton "*Hmph*... That's cheating..." ("soft", "base", "base", "R") + + ################## + ### Xmas Outfit ## + ################## + elif item == ton_outfit_xmas: + gen "Miss Tonks, you know what the best thing about christmas is?" ("base", xpos="far_left", ypos="head") + ton "The presents?" ("base", "base", "raised", "mid") + gen "After that." ("base", xpos="far_left", ypos="head") + ton "The food?" ("soft", "base", "base", "mid") + gen "Not that." ("base", xpos="far_left", ypos="head") + ton "The company?" ("grin", "base", "raised", "mid") + gen "The sexy Christmas outfits!" ("base", xpos="far_left", ypos="head") + ton "I should've guessed... So you've got me something like that to wear I assume?" ("horny", "narrow", "base", "mid") + gen "Yes, put this on for me will you?" ("base", xpos="far_left", ypos="head") + ton "Very well..." ("base", "base", "base", "mid") + + ################### + ## Lady D Outfit ## + ################### + elif item == ton_outfit_lady_D: + gen "I've got this Lady D outfit for you to wear." ("base", xpos="far_left", ypos="head") + ton "Lady D?" ("soft", "base", "raised", "mid") + ton "Does it come with a strap-on or something?" ("horny", "narrow", "base", "mid") + gen "What... No, it's a fictional character..." ("base", xpos="far_left", ypos="head") + ton "A fictional character... With a strap-on?" ("grin", "narrow", "base", "mid") + gen "What's with you and... Oh, I see the confusion..." ("base", xpos="far_left", ypos="head") + gen "No, it's this outfit." ("base", xpos="far_left", ypos="head") + ton "*Hmm*... Very imposing..." ("base", "narrow", "base", "down") + ton "Although it would've been even more so with a strap-on..." ("grin", "base", "base", "mid") + gen "..." ("angry", xpos="far_left", ypos="head") + call play_sound("giggle") + ton "*Giggles*" ("grin", "wink", "base", "mid") + + ######################### + ## Police Woman Outfit ## + ######################### + elif item == ton_outfit_police: + gen "Remember that time when you showed up in a sexy Police outfit and I thought you were the magic police?" ("base", xpos="far_left", ypos="head") + ton "No?" ("soft", "base", "raised", "mid") + gen "Maybe that was a dream..." ("base", xpos="far_left", ypos="head") + gen "Anyway, It would be pretty sweet if you put this on for me." ("base", xpos="far_left", ypos="head") + ton "*Hmm*..." ("base", "narrow", "base", "down") + ton "Why not..." ("soft", "base", "base", "mid") + + ##################### + ## Wrestling Coach ## + ##################### + elif item == ton_outfit_wrestling_coach: + gen "Could you put on this sports coach outfit for me?" ("base", xpos="far_left", ypos="head") + ton "Sports coach? There's other sports than Quidditch?" ("soft", "base", "raised", "mid") + gen "...{w=0.4} Excuse me?" ("base", xpos="far_left", ypos="head") + ton "I'm just joking, I know there's other sports." ("base", "base", "base", "R") + ton "Although I'm not that of a big fan of Gobstones and Wizard Chess myself." ("open", "narrow", "base", "mid") + ton "They don't have any sexy uniforms." ("horny", "narrow", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "I'm talking about real sports... Like Football and Basketball." ("base", xpos="far_left", ypos="head") + ton "Never heard of it." ("open", "base", "base", "mid") + gen "Volleyball?" ("base", xpos="far_left", ypos="head") + ton "Nope." ("annoyed", "base", "base", "mid") + gen "Tennis?" ("base", xpos="far_left", ypos="head") + ton "No clue." ("upset", "base", "base", "mid") + gen "You're missing out..." ("base", xpos="far_left", ypos="head") + gen "Beach Volleyball is a sight to behold." ("base", xpos="far_left", ypos="head") + ton "Do you wear swimsuits?" ("soft", "base", "base", "mid") + gen "Hell yeah!" ("base", xpos="far_left", ypos="head") + ton "I might need to look it up then..." ("horny", "narrow", "base", "R") + gen "So, could you put on the outfit?" ("base", xpos="far_left", ypos="head") + ton "The what?" ("soft", "base", "base", "mid") + ton "Oh, yes... Certainly." ("base", "base", "base", "mid") + + # TODO: Blacklist fallbacks have to be added. + return + +label ton_reaction_equip_outfit_fail(item): + ### Add specific Outfit reactions here. + + ################### + ## School Outfit ## + ################### + # if item == ton_outfit_school: + + ################## + ## Flag Bikinis ## + ################## + # elif item == ton_outfit_bikini_1: + # elif item == ton_outfit_bikini_2: + # elif item == ton_outfit_bikini_3: + # elif item == ton_outfit_bikini_4: + + ##################### + ## Skimpy Swimsuit ## + ##################### + # elif item == ton_outfit_swimsuit_1: + # elif item == ton_outfit_swimsuit_2: + # elif item == ton_outfit_swimsuit_3: + + ################### + ## Casual Outfit ## + ################### + # elif item == ton_outfit_casual: + + ############# + ## Nightie ## + ############# + # elif item == ton_outfit_nightie: + + ################## + ## Bunny outfit ## + ################## + # elif item == ton_outfit_bunny: + + ################### + ## Dressing Gown ## + ################### + # elif item == ton_outfit_dressing_gown: + + ################# + ## Silky Dress ## + ################# + # elif item == ton_outfit_silky: + + ################## + ## Skimpy Dress ## + ################## + # elif item == ton_outfit_skimpy_dress: + + ################ + ## Club Dress ## + ################ + # elif item == ton_outfit_club_dress: + + ##################### + ## Succubus Outfit ## + ##################### + # elif item == ton_outfit_succubus: + + ##################### + ## Cavegirl Outfit ## + ##################### + # elif item == ton_outfit_cavegirl: + + ################# + ### Elf Outfit ## + ################# + # elif item == ton_outfit_elf: + + #################### + ### Ribbon Outfit ## + #################### + # elif item == ton_outfit_ribbon: + + ################## + ### Xmas Outfit ## + ################## + # elif item == ton_outfit_xmas: + + ################### + ## Lady D Outfit ## + ################### + # elif item ==ton_outfit_lady_D: + + ##################### + ## Wrestling Coach ## + ##################### + #elif item == ton_outfit_wrestling_coach: + #gen "Could you put on this sports coach outfit for me?" ("base", xpos="far_left", ypos="head") + #ton "Something wrong with my current clothes?" + #gen "*Err*..." ("base", xpos="far_left", ypos="head") + #ton "Sorry but this doesn't show off my figure enough." + #gen "Yeah, I didn't know what I was--" ("base", xpos="far_left", ypos="head") + #gen "(Wait, did she say it doesn't show it off enough?)" ("base", xpos="far_left", ypos="head") + # + + ton "It looks lovely, but you'd have to prove yourself a bit more before I put that on..." (face="annoyed", eyebrows="angry", mouth="grin") + + return + +label ton_reaction_blacklist(item): + ton "*oooh* that's racy!" + + if "top" in item.blacklist and tonks.is_worn("top"): + ton "I'd need to take off my top." + + if "bottom" in item.blacklist and tonks.is_worn("bottom"): + ton "It would be very unfashionable wearing bottom garment with that." + + if "bra" in item.blacklist and tonks.is_worn("bra"): + ton "My girls would definitely appreciate me letting them breathe." + gen "Your tits you mean." ("grin", xpos="far_left", ypos="head") + ton "Now, now, don't get needy my dear headmaster." + + if "panties" in item.blacklist and tonks.is_worn("panties"): + ton "There's not a single pair of panties in the world that would fit this." + + gen "Well, what's the verdict?" ("base", xpos="far_left", ypos="head") + ton "Simply put-- I love it." + gen "Jackpot!" ("grin", xpos="far_left", ypos="head") + + return + +label ton_reaction_fallback(item): + if ton_friendship < get_character_requirement("tonks", "unequip top") and not "top" in tonks.blacklist and not item.type == "top": + $ tonks.equip(ton_top_auror) + + if ton_friendship < get_character_requirement("tonks", "unequip bottom") and not "bottom" in tonks.blacklist and not item.type == "bottom": + $ tonks.equip(ton_bottoms_leggings) + + # if ton_friendship < get_character_requirement("tonks", "unequip bra") and not "bra" in tonks.blacklist and not item.type == "bra": + # $ tonks.equip(None) + + # if ton_friendship < get_character_requirement("tonks", "unequip panties") and not "panties" in tonks.blacklist and not item.type == "panties": + # $ tonks.equip(None) + + ton "Just give me a second, I need to get my clothes back in order." ("open", "base", "base", "R") + ton "" ("base", "base", "base", "mid") + return diff --git a/game/scripts/chibis/classes.rpy b/game/scripts/chibis/classes.rpy new file mode 100644 index 00000000..2980aed2 --- /dev/null +++ b/game/scripts/chibis/classes.rpy @@ -0,0 +1,370 @@ + +# Screen used by chibi class (each chibi object derives its own uniquely tagged screen from this one) +screen chibi(chibi_object): + zorder chibi_object.zorder + sensitive False + fixed: + at chibi_object.transform + fit_first True + for d in chibi_object.displayables(): + add d + # frame: # Debug frame + # background "#00ff0055" + +screen chibi_emote(emote, chibi_object): + zorder chibi_object.zorder + sensitive False + add "emo_{}".format(emote): + at emote_effect + anchor (0.5, 1.0) + pos chibi_object.pos + zoom ChibiRoom.get().scale + xzoom (-1 if chibi_object.flip else 1) + if chibi_object.tag in ("genie", "snape"): + offset (int(75*ChibiRoom.get().scale), int(-200*ChibiRoom.get().scale)) + else: + offset (int(50*ChibiRoom.get().scale), int(-170*ChibiRoom.get().scale)) + +label chibi_emote(emote, name): + python: + if emote == "hide": + emote = None + get_chibi_object(name).emote(emote) + return + +default chibi_moves = {} + +init -1 python: + def update_chibi(name): + """Update the chibi object for a given character.""" + # TODO: Remove once chibi is ready. + if "hooch" == name: + return + + get_chibi_object(name).update() + + def get_chibi_object(name): + """Get a chibi object by its character's name.""" + name = "{}_chibi".format(name) + c = getattr(renpy.store, name, None) + if c and isinstance(c, Chibi): + return c + else: + raise Exception("Chibi object not found. {}".format(name)) + + def complete_chibi_moves(**elapsed): + """Resume old chibi action after (multiple) reduced move calls.""" + q = [] + for chibi, (t, a) in chibi_moves.iteritems(): + et = elapsed.get(chibi, 0) + t -= et + q.append((chibi, t, a)) + + q.sort(key=lambda x: x[1]) # Sort by time + pt = 0 + for chibi, t, a in q: + renpy.pause(t - pt) + pt += t + get_chibi_object(chibi).do(a) + + chibi_moves.clear() + + class Chibi(object): + """ Manages a character's chibi. + + Actions: + * Represent what a chibi is doing. + * Determine which transform is applied. + * Allow layers to be changed to the relevant images (via update callback). + + There are two types of actions, one is used in place and the other while moving. + + Actions are defined in the `actions` dict as a tuple: (special, transform, move_action|loop_time). + * `special` (bool) specifies whether layer images should come from a folder with the same name as the action. + This can be useful to prevent repetitive code in update callbacks. + * `transform` (string) is the name of the transform that is used for this action. + It will be combined with a base transform. + * `move_action` (string) if set, it's the action that will be used when the chibi starts moving after the current action. + It should not be set for move actions. + * `loop_time` (float) if set, it's the time in seconds for one animation loop of this action. Used to calculate movement time. + It should only be set for move actions. Set to zero to disable time adjustments. + + Layers: + A chibi is made up of one or more named layers. These are cleared on update and should be set by a callback function. + * Layers can be accessed as `chibi_object[key]`. + * A layer can be set to either a filename or any kind of displayable. + * When setting an image filename, this class will look for it in `image_path` (or `image_path/action` if the action is special). + * Adding `~` as a prefix to a filename will ignore the special action folder. + This can be useful for images that are compatible with multiple actions. + * Layers are updated whenever the action changes by calling `update_callback`, which is expected to set the layers again. + """ + + actions = { + None: (False, None, "walk"), + "walk": (False, "chibi_walk", 0.32), + "run": (False, "chibi_walk", 0), + "fly": (True, "chibi_fly", "fly_move"), + "fly_move": (True, "chibi_fly_move", 0), + "wand": (True, "chibi_wand", "walk"), + } + + def __init__(self, tag, layers, update_callback, zorder=3, speed=100, image_path=None, actions=None, places=None): + self.tag = tag + + # Use a tuple/list to specify the order of layers in a dict + self.layers_order = layers + self.layers = dict([(k, None) for k in layers]) + + self.update_callback = update_callback + + if image_path: + self.image_path = image_path + else: + self.image_path = "characters/{}/chibis".format(tag) + + if actions: + # Override class variable for this instance + self.actions = dict(Chibi.actions) + self.actions.update(actions) + + self.zorder = zorder + self.speed = speed # pixels/sec + + self.pos = (0,0) + self.flip = False + self.action = None + self.action_info = self.resolve_action(None) + self.special = None + self.transform = None + + # Define a screen for the chibi + self.screen_tag = "{}_chibi".format(tag) + renpy.define_screen(self.screen_tag, Chibi._screen, tag=self.screen_tag, zorder="chibi_object.zorder") + + # Define a screen for the chibi emote + self.emote_tag = "{}_chibi_emote".format(tag) + renpy.define_screen(self.emote_tag, Chibi._emote_screen, tag=self.emote_tag, zorder="chibi_object.zorder") + + @staticmethod + def _screen(chibi_object, **kwargs): + # Emulate a Ren'py `use` statement to derive a chibi screen from the generic one + renpy.use_screen("chibi", chibi_object, _name=kwargs["_name"], _scope=kwargs["_scope"]) + + @staticmethod + def _emote_screen(emote, chibi_object, **kwargs): + # Emulate a Ren'py `use` statement to derive a chibi_emote screen from the generic one + renpy.use_screen("chibi_emote", emote, chibi_object, _name=kwargs["_name"], _scope=kwargs["_scope"]) + + def show(self): + renpy.show_screen(self.screen_tag, chibi_object=self) + + def hide(self): + renpy.hide_screen(self.screen_tag) + renpy.hide_screen(self.emote_tag) + + def emote(self, emote=None): + if renpy.get_screen(self.emote_tag): + renpy.hide_screen(self.emote_tag) + renpy.pause(0.2) # Pause for duration of emote_effect + if emote: + renpy.show_screen(self.emote_tag, emote=emote, chibi_object=self) + + def update(self): + self.clear() + if self.update_callback: + self.update_callback(self) + + def move(self, path=None, speed=1.0, reduce=False, action=None): + """ Moves to a certain point or along a path. + Movement takes into account the action, direction, time and transitions. + Flipping is not possible mid-path, so the character should always face the same way. + """ + if isinstance(path, tuple): + path = [path] + + real_path = [self.pos] + for x, y in path: + pos = self.resolve_position(x,y) + real_path.append(pos) + path = real_path + + flip = self.pos[0] <= path[-1][0] + if self.flip != flip: + self.flip = flip + self.do(self.action) # Do a flip! + renpy.with_statement(d3) + + # Resolve the move action + old_action = self.action + if action: + move_action = action + elif isinstance(self.action_info[2], basestring): + # Action info provides a move action + move_action = self.action_info[2] + else: + # Current action is already a move action + move_action = self.action + + _, trans_name, loop_time = self.resolve_action(move_action) + + # Calculate movement time + times = [] + for i in xrange(len(path) - 1): + dist = math.sqrt((path[i][0] - path[i+1][0])**2 + (path[i][1] - path[i+1][1])**2) + time = dist / (float(self.speed) * speed) + if loop_time > 0: + # Round to nearest multiple of loop time to end on the right frame + time = loop_time * round(time/loop_time) + times.append(time) + + time = sum(times) + + # Apply the action with a transform + trans = self.resolve_transform(trans_name, path, times) + self.do(move_action, trans) + self.position(*path[-1]) + + if reduce: + # Reduce the pause and don't do the old action + if reduce == "all": + reduce = time + elif isinstance(reduce, bool): + reduce = 0 + + time -= float(reduce) + chibi_moves[self.tag] = (reduce, old_action) + + if time > 0: + renpy.pause(time) + else: + # Pause while moving and then do the old action + renpy.pause(time) + if old_action != move_action: + self.do(old_action) + renpy.with_statement(None) + + def do(self, action=None, trans=None): + """Performs an action. Applies a transform and updates the chibi.""" + self.set_action(action) + + # Set the transform (static version by default) + if trans is None: + trans = self.resolve_transform(self.action_info[1]) + + # Hide the screen so transform is reset properly + self.hide() + self.transform = trans + self.update() + self.show() + + def set_action(self, action): + """Set the action state (no screen update).""" + self.action = action + self.action_info = self.resolve_action(action) + self.special = self.action_info[0] + + def position(self, x=None, y=None, flip=None): + """Set the position to be used on next update.""" + (x,y) = self.resolve_position(x,y) + if flip is not None: + self.flip = flip + self.pos = (x,y) + + def resolve_position(self, x=None, y=None): + """Compute new position from place keywords (or just ints) for one or both of the coordinates.""" + return ChibiRoom.place((x,y), self.pos) + + def resolve_transform(self, name, *args): + """Get transform from the store by name and apply arguments.""" + if name: + trans = getattr(renpy.store, name, None) + if isinstance(trans, renpy.display.transform.ATLTransform): + # Combine with base transform + return combine_transforms(self.base_transform(), trans(*args)) + elif config.developer: + raise Exception("Expected a transform: {}".format(name)) + # No transform was given or found + return self.base_transform() + + def base_transform(self): + scale = ChibiRoom.get().scale + return chibi_base(self.pos, self.flip, scale) + + def resolve_action(self, name): + """Get action info by name (falling back to "parent" action or default).""" + while True: + if name in self.actions: + return self.actions[name] + elif '_' in name: + name = name.rsplit('_', 1)[0] + else: + return self.actions[None] + + def displayables(self): + """Yields non-empty layers in an iterable manner.""" + for k in self.layers_order: + d = self.layers.get(k, None) + if d is not None: + yield d + + def clear(self): + for k in self.layers.iterkeys(): + self.layers[k] = None + + def __getitem__(self, key): + return self.layers[key] + + def __setitem__(self, key, value): + if key not in self.layers: + # Layer must be defined at init + raise KeyError(key) + + if isinstance(value, basestring) and '.' in value: + # Assume value is a filename and resolve it + if value.startswith('~') or not self.special: + # Avoid special directory + value = self.image_path + "/" + value.lstrip("~/") + else: + value = self.image_path + "/" + self.action + "/" + value + + self.layers[key] = value + + class ChibiRoom(object): + """Defines chibi scale factor and named positions (places) for a room.""" + + # Rooms by name + rooms = dict() + + def __init__(self, name, scale, places): + self.name = name + self.scale = scale + self.places = places + + ChibiRoom.rooms[self.name] = self + + def resolve(self, p, d, x_or_y): + """Resolve p as coordinate, if None return d, else return p as integer.""" + if not isinstance(p, int): + if p is None: + return d + elif p in self.places: + return self.places[p][int(x_or_y)] or d + else: + return int(p) + return p + + @staticmethod + def get(room=None): + room = room or renpy.store.current_room + chibi_room = ChibiRoom.rooms.get(room, None) + if not chibi_room: + raise Exception("Chibi room is not defined for {}".format(room)) + return chibi_room + + @staticmethod + def place(place, position, room=None): + """Resolve place coordinates in the current room, or a given room (by name).""" + chibi_room = ChibiRoom.get(room) + x = chibi_room.resolve(place[0], position[0], False) + y = chibi_room.resolve(place[1], position[1], True) + return (x,y) diff --git a/game/scripts/chibis/rooms.rpy b/game/scripts/chibis/rooms.rpy new file mode 100644 index 00000000..2e4b416c --- /dev/null +++ b/game/scripts/chibis/rooms.rpy @@ -0,0 +1,77 @@ +init python: + ChibiRoom("main_room", 1.0, { + "base": (None, 430), + "back": (None, 400), + "mid": (540, None), + "desk": (440, None), + "right": (620, None), + "by_desk": (335, None), + "on_desk": (350, 365), + "behind_desk": (210, 440), + "door": (750, None), + + # for genie + "left": (100, None), + "fireplace": (550, 410), + "cupboard": (260, None), + + # for snape + "desk_close": (425, 435), + }) + + ChibiRoom("quidditch_pitch", 1.4, { + "base": (None, 500), + "left": (300, None), + "mid": (450, None), + "right": (600, None), + "stairs_base": (800, 500), + "stairs_up": (1000, 370), + }) + + ChibiRoom("quidditch_stands", 1.0, {}) + ChibiRoom("quidditch_stands2", 1.0, {}) + + ChibiRoom("room_of_requirement", 1.0, { + "door": (750, None), + "left": (200, None), + "base": (None, 430), + }) + + ChibiRoom("weasley_store", 1.0, { + "left": (100, None), + "base": (None, 430), + }) + + ChibiRoom("clothing_store", 1.0, { + "left": (100, None), + "base": (None, 430), + }) + + ChibiRoom("seventh_floor", 1.0, { + "base": (None, 430), + "right": (750, None), + "left_mid": (200, None), + "left": (120, None), + "door": (-100, None), + }) + + ChibiRoom("snape_office", 1.0, { + "base": (None, 430), + "mid": (450, None), + "desk": (465, None), + "door": (165, None), + "shelves": (730, 405), + "station": (255, 410), + "statue": (360, 420), + "candelabra": (400, 410), + "painting": (730, 430), + "beside_chair": (695, 460) + }) + + ChibiRoom("boxing_ring", 1.0, { + "base": (None, 445), + "left": (400, None), + "right": (550, None), + "far_left": (25, None), + "far_right": (720, None), + }) diff --git a/game/scripts/chibis/test.rpy b/game/scripts/chibis/test.rpy new file mode 100644 index 00000000..08e890ed --- /dev/null +++ b/game/scripts/chibis/test.rpy @@ -0,0 +1,8 @@ +label path_test: + call her_walk(action="enter") + call cho_walk(action="enter") + call her_walk("desk", "base", reduce="all") + pause 0.5 + call cho_walk("desk", "base", reduce="all") + $ complete_chibi_moves(hermione=1.1) + diff --git a/game/scripts/chibis/transforms.rpy b/game/scripts/chibis/transforms.rpy new file mode 100644 index 00000000..a6606f75 --- /dev/null +++ b/game/scripts/chibis/transforms.rpy @@ -0,0 +1,89 @@ + +# Transforms used by the chibi class or chibi images + +transform combine_transforms(one, two): + one + two + +transform chibi_base(position, flip, scale): + pos position + anchor (0.0, 1.0) + xzoom (-1 if flip else 1) + zoom (0.5 * scale) + +transform chibi_walk(path, times): + function renpy.partial(chibi_path_move, path, times, _warper.linear) + +transform chibi_fly: + block: + yoffset absolute(0) + ease 2 yoffset absolute(-10) + ease 2 yoffset absolute(10) + ease 2 yoffset absolute(0) + repeat + +transform chibi_fly_move(path, times): + parallel: + function renpy.partial(chibi_path_move, path, times, _warper.ease_quad) + + parallel: + yoffset absolute(0) + ease 2 yoffset absolute(-10) + ease 2 yoffset absolute(10) + ease 2 yoffset absolute(0) + repeat + +transform chibi_wand: + xoffset -72 # Note: Offset seems to be applied after zoom + +transform chibi_lie: + rotate 90 + transform_anchor True + anchor (0.5, 0.65) + xzoom 1 # Negate flip + +transform chibi_float_move(path, times): + combine_transforms(chibi_lie, chibi_fly_move(path, times)) + +transform random_blink(close_image, open_image=Null()): + close_image + pause .08 + open_image + choice: + pause 6 + choice: + pause 3 + choice: + # Double blink + close_image + pause .08 + open_image + pause 5 + repeat + +transform emote_effect(): + alpha 0.0 + on show: + zoom 0.8 + linear .2 zoom 1.0 alpha 1.0 + on hide: + linear .2 zoom 1.2 alpha 0.0 + +init python: + def chibi_path_move(path, times, warp, trans, st, at): + if st >= sum(times): + trans.pos = path[-1] + return None + + it = 0 + seg = 0 + for i in xrange(len(times)): + if it + times[i] > st: + seg = i + break + it += times[i] + + segt = (st - it) / times[seg] + segt = warp(segt) + trans.pos = renpy.atl.interpolate(segt, path[seg], path[seg + 1], renpy.atl.PROPERTIES["pos"]) + return 0 diff --git a/game/scripts/constants.rpy b/game/scripts/constants.rpy new file mode 100644 index 00000000..63dd59fc --- /dev/null +++ b/game/scripts/constants.rpy @@ -0,0 +1,4 @@ + +define CHARACTERS = {"hermione", "tonks", "astoria", "cho", "luna", "susan", "hooch"} +define SAYERS = {i[:3]:i for i in CHARACTERS} +define ALLOWED_CHARACTERS = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz " diff --git a/game/scripts/doll/body.rpy b/game/scripts/doll/body.rpy new file mode 100644 index 00000000..1e17f794 --- /dev/null +++ b/game/scripts/doll/body.rpy @@ -0,0 +1,83 @@ +init python: + class DollBody(DollMethods): + zorder_skin = 5 + + def __init__(self, obj, body): + self.char = obj + self.name = self.char.name + self.body = body + self.hue = 0 + self.imagepath = "characters/{}/body/".format(self.name) + + def build_image(self): + sprites = [] + + # Add body parts and skin layers from clothes, face, cum + sprites.extend(("{}{}/{}.webp".format(self.imagepath, k, v[0]), v[1]) for k, v in self.body.iteritems() if v[0]) # Body parts + sprites.extend((o[0].skin, self.zorder_skin) for o in self.char.clothes.itervalues() if o[0] and o[0].skin and o[2]) # Clothes skin + sprites.extend((x, self.zorder_skin) for x in self.char.face.get_skin()) # Face skin + sprites.extend((x, self.zorder_skin) for x in self.char.cum.get_skin()) # Cum skin + + sprites.sort(key=itemgetter(1)) + + if self.hue: + sprites = tuple(Transform(x[0], matrixcolor=HueMatrix(self.hue)) for x in sprites) + else: + sprites = tuple(x[0] for x in sprites) + + return sprites + + def build_mannequin(self, group=None): + sprites = [] + + # Add body parts and skin layers from clothes + sprites.extend(("{}{}/{}.webp".format(self.imagepath, k, v[0]), v[1]) for k, v in self.body.iteritems() if v[0]) + if group: + sprites.extend((o.skin, self.zorder_skin) for o in group if o and o.skin) + + sprites.sort(key=itemgetter(1)) + sprites = tuple(gray_tint(x[0]) for x in sprites) + return sprites + + def get_mannequin(self, group=None): + mannequin = self.build_mannequin(group) + return Fixed(*mannequin, fit_first=True) + + def get_part(self, arg): + return self.body[arg][0] + + def set_body(self, **kwargs): + """Takes keyword argument(s) with the string name of body part file(s). Returns True if image is changed.""" + changed = False + + for arg, value in kwargs.iteritems(): + if value != self.body[str(arg)][0]: + self.body[str(arg)][0] = value + changed = True + + if changed: + self.rebuild_image() + + return changed + + def set_pose(self, pose): + if pose is None: + self.imagepath = "characters/{}/body/".format(self.name) + else: + self.imagepath = "characters/{}/poses/{}/body/".format(self.name, pose) + self.rebuild_image() + return + + def set_zorder(self, **kwargs): + """Takes keyword argument(s) with the string name of body type(s) and int value(s). Returns True if image is changed.""" + changed = False + + for arg, value in kwargs.iteritems(): + if value != self.body[str(arg)][1]: + self.body[str(arg)][1] = value + changed = True + + if changed: + self.rebuild_image() + + return changed diff --git a/game/scripts/doll/chibi.rpy b/game/scripts/doll/chibi.rpy new file mode 100644 index 00000000..c3db8ca9 --- /dev/null +++ b/game/scripts/doll/chibi.rpy @@ -0,0 +1,239 @@ +init 5 python: + # def pairwise(iterable): + # a = iter(iterable) + # return zip(a, a) + + class DollChibi(renpy.Displayable): + def __init__(self, name, doll, pose="stand", layer="screens", zorder=12, zoom=0.28, *args, **properties): + + super(DollChibi, self).__init__(**properties) + + self.name = name + self.doll = doll + self.pose = pose + self.layer = layer + self.zorder = zorder + self.zoom = zoom + + self.pos = (0,0) + self.xzoom = 1 + + # Animation + self.anim_speed = 1.0 + self.anim_fps = 8.0 + self.anim_trans = None + self.anim_interval = None + self.anim_interval_total = None + self.anim_path = None + + self.anim_constructor() + + # ATL + self.atl_time = 0 + self.atl_time_total = 0 + self.atl_partial = None + + def anim_constructor(self): + """This function is responsible for creating an animation out of raw image files.""" + + path = "characters/{}/chibi/{}/".format(self.name, self.pose) + images = [] + + # Base model + for fn in renpy.list_files(): + if not fn.startswith(path): + continue + + basename = os.path.basename(fn) + base, ext = os.path.splitext(basename) + + if not ext.lower() in [ ".jpg", ".jpeg", ".png", ".webp" ]: + continue + + images.append(renpy.displayable(fn)) + + if not images: + raise IndexError("Animation Constructor could not find any images inside directory:\n\n\"{}\"".format(path)) + + # For singular images it's optimal to halt the animation, + # instead of replaying the same frame over and over again. + frames = len(images) + if frames > 1: + interval = self.anim_speed / self.anim_fps + else: + interval = (365.25 * 86400.0) # About one year + + self.anim_path = path + self.anim_frames = frames + self.anim_interval = interval + self.anim_interval_total = (frames * interval) + self.anim_images = images + self.anim_prev_images = [ images[-1] ] + images[:-1] + + def render(self, width, height, st, at): + + # Animation Renderer + t = st % self.anim_interval_total + + trans = self.anim_trans + interval = self.anim_interval + + # Trigger event after animation time elapses + if st > self.atl_time_total: + renpy.timeout(0) + + for image, prev in zip(self.anim_images, self.anim_prev_images): + if t < interval: + if not renpy.game.less_updates: + renpy.redraw(self, interval - t) + + if trans and st >= interval: + image = trans(old_widget=prev, new_widget=image) + + im = renpy.render(image, width, height, t, at) + width, height = im.get_size() + rv = renpy.Render(width, height) + rv.blit(im, (0, 0)) + + return rv + else: + t = t - interval + + def event(self, ev, x, y, st): + # Determine pose change if show time exceeds animation time. + # Looping animations ignore this check because they are rebuilt every loop. + + if st > self.atl_time_total: + self.set_pose("stand") + + def set_pose(self, pose): + if self.pose == pose: + return + + self.pose = pose + self.anim_constructor() + + def move(self, path, speed=1.0, pause=False, loop=False, warper="linear", at_list=[], pose="walk"): + """Makes chibi move""" + if isinstance(path, tuple): + path = [path] + + # If 'A' position is not supplied for A -> B movement, use last known position instead. + if len(path) < 2: + path = [self.pos] + path + + self.set_pose(pose) + + # Note: Warper names and their count can change over time, + # so it's easier to just evaluate the input. + # List of available warpers: + # https://www.renpy.org/doc/html/atl.html?#warpers + warper = eval("_warper.{}".format(warper)) + + distances = [] + times = [] + + if loop: + # Append first position as last to create a looped path. + path.append(path[0]) + + # Calculate distances and timings using euclidean distance algorithm. + for xy1, xy2 in zip(path, path[1:]): + x1, y1 = xy1 + x2, y2 = xy2 + + distance = math.hypot(x2 - x1, y2 - y1) + time = distance / (100.0 * speed) + + distances.append(distance) + times.append(time) + + # Calculate total ATL time required to reach the destination + total_time = sum(times) + self.atl_time_total = total_time + + # Recalculate animation intervals when necessary, including speed factors. + frames = self.anim_frames + if frames > 1: + interval = (self.anim_speed / self.anim_fps) / speed + interval_total = (frames * interval) + + self.anim_interval = interval + self.anim_interval_total = interval_total + + # renpy.partial allows us to pass arguments into a transform function. + partial = renpy.partial(self.move_atl, path, times, loop, warper) + self.atl_partial = partial + + self.restart_atl() + + if pause: + renpy.pause(total_time) + + return (distances, times) + + def move_atl(self, path, times, loop, warper, trans, st, at): + """Animations are time based, so each segment will happen at a specific frame time.""" + if loop: + timer = st % self.atl_time_total + else: + timer = st + + if timer > self.atl_time_total: + return None + + internal_time = 0 + current_segment = 0 + + # TODO: This loop feels unnecessary, need to find a better way. + for i, t in enumerate(times): + if (internal_time + t) > timer: + current_segment = i + break + + internal_time += t + + segment_time = (timer - internal_time) / times[current_segment] + next_segment = current_segment + 1 + + # Adjust XY position + trans.pos = renpy.atl.interpolate(warper(segment_time), path[current_segment], path[next_segment], renpy.atl.PROPERTIES["pos"]) + self.pos = trans.pos + + # Adjust X zoom based on target X position + # 1 = Facing Right, -1 = Facing Left + trans.xzoom = -1 if (path[current_segment][0] > path[next_segment][0]) else 1 + self.xzoom = trans.xzoom + + # Adjust zoom + trans.zoom = self.zoom + + # Adjust Z position based on Y axis + # TODO: Add room support with bottom, middle, and top vanishing points. + # room_scale = 0.5 + # zpos1 = ((path[current_segment][1] / 600.0) * 1000.0) * room_scale + # zpos2 = ((path[next_segment][1] / 600.0) * 1000.0) * room_scale + # trans.zpos = renpy.atl.interpolate(warper(segment_time), zpos1, zpos2, renpy.atl.PROPERTIES["zpos"]) + # self.zpos = trans.zpos + + # TODO: Using zorders is suboptimal and expensive, using 3D staging would be preferable. + zpos = self.zorder + self.pos[1] / config.screen_height + renpy.change_zorder(self.layer, self.name, zpos) + return 0 + + def restart_atl(self): + # The safest way to restart the transform is to rebuild it. + # Other methods proved to be too finicky... + + transform = Transform(function=self.atl_partial, anchor=(0.5, 1.0)) + image = At(self, transform) # IMPORTANT: Enable perspective and gl_depth for 3D staging + + if not renpy.is_init_phase(): + renpy.show(self.name, at_list=[], layer=self.layer, what=image, zorder=self.zorder) + + # def dynamic(self, st, at): + # return self.image, None + +init offset = 5 + +default hooch_chibi = DollChibi(name="hooch", doll=hooch) diff --git a/game/scripts/doll/clothes.rpy b/game/scripts/doll/clothes.rpy new file mode 100644 index 00000000..5ae77d1a --- /dev/null +++ b/game/scripts/doll/clothes.rpy @@ -0,0 +1,278 @@ +init python: + class DollCloth(DollMethods): + def __init__(self, name, categories, type, id, color, zorder=None, unlocked=False, level=0, blacklist=[], parent=None, armfix=False, modpath=None): + self.name = name + self.char = eval(name) + self.categories = categories + self.type = type + self.id = id + self.color = color + self.color_default = [x[:] for x in color] + self.unlocked = unlocked + self.layers = len(color) + self.parent = parent + self.ico = Null() + self.blacklist = blacklist + self.level = level + self.modpath = posixpath.normpath(modpath) if modpath else "" + self.armfix = armfix + self.back_outline = None + self.front_outline = None + + # Inherit zorder from character if needed + self.zorder = zorder or self.char.clothes[type][1] + + self.seen = self.unlocked + self.cached_icon = False + + self.set_imagepath() + self.set_layers() + + # Add to character wardrobe and unordered list + if not parent: + self.char.wardrobe.setdefault(self.categories[0], {}).setdefault(self.categories[1], []).append(self) + self.char.wardrobe_list.append(self) + + def set_imagepath(self): + if any(x in self.type for x in self.multislots): + subpath = self.type[:-1] + else: + subpath = self.type + + path = "{}/characters/{}/clothes/{}/{}/".format(self.modpath, self.name, subpath, self.id) + + if renpy.loadable(path + "0.webp"): + self.imagepath = path + return + raise IOError("Couldn't find file \"{}/characters/{}/clothes/{}/{}/0.webp\"".format(self.modpath, self.name, subpath, self.id)) + + def set_layers(self): + for x in self.layers_special: + path = "{}{}.webp".format(self.imagepath, x) + self.__dict__[x] = path if renpy.loadable(path) else None + + for x in self.layers_additional: + self.__dict__[x] = [] + + for i in xrange(self.layers): + path = "{}{}_{}.webp".format(self.imagepath, i, x) + if renpy.loadable(path): + self.__dict__[x].append(path) + + path = "{}outline_{}.webp".format(self.imagepath, x) + self.__dict__[x+"_outline"] = path if renpy.loadable(path) else None + + def build_image(self): + sprites = [(self.apply_color("{}{}.webp".format(self.imagepath, x), x), x) for x in xrange(self.layers)] + + # Add extra layers if exist + for n, x in enumerate(self.layers_extra): + path = "{}{}.webp".format(self.imagepath, x) + if renpy.loadable(path): + sprites.append((path, self.layers+n)) + + sprites.sort(key=itemgetter(1)) + sprites = tuple(x[0] for x in sprites) + return sprites + + def build_mannequin(self): + sprites = [ + self.get_back(), + self.get_mannequin(), + self.get_front(), + (self.get_image(), self.zorder), + self.get_armfix(mannequin=True) + ] + + sprites.sort(key=itemgetter(1)) + + # Apply Alpha mask + if self.mask: + mask_zorder = self.zorder-1 + + for i, s in enumerate(sprites): + sprite, sprite_zorder = s + + if mask_zorder > sprite_zorder >= 0: + continue + + c = tuple(x[0] for x in sprites[:i] if not isinstance(x[0], Null)) + masked = AlphaMask(Fixed(*c, fit_first=True), self.mask) + sprites = sprites[i:] + sprites.insert(0, (masked, mask_zorder)) + break + + + bounds = "{}outline.webp".format(self.imagepath) if renpy.loadable("{}outline.webp".format(self.imagepath)) else "{}0.webp".format(self.imagepath) + + sprites = tuple(x[0] for x in sprites) + return (sprites, bounds) + + def make_icon(self): + thread = DollThread(target=self.build_icon) + thread.daemon = True + thread.start() + + sprite = thread.join() + + self.ico = DollDisplayable(sprite) + + def build_icon(self): + sprites, bounds = self.build_mannequin() + + wmax, hmax = self.sizes + wmin = hmin = 96 + + x, y, w, h = crop_whitespace(bounds) + xoffset, yoffset = w/2, h/2 + + w = h = max(w, h, wmin, hmin) + + w = max(wmin, w + w/2) + h = max(hmin, h + h/2) + + x = clamp( (x - w/2) + xoffset, 0, wmax) + y = clamp( (y - h/2) + yoffset, 0, hmax) + + # Forbid exceeding the image height. + if y+h > hmax: + y = hmax-h + + return Transform(Fixed(*sprites, fit_first=True), crop=(x, y, w, h)) + + def rebuild_icon(self): + # Defers rebuild until next time get_image is called + self.cached_icon = False + + def get_back(self): + """Returns a list of layers displayed in the back of object/character""" + back_outline = [self.back_outline] if self.back_outline else [] + sprites = [self.apply_color(x, n) for n, x in enumerate(self.back)] + back_outline + if sprites: + return (Fixed(*sprites, fit_first=True), -100+self.zorder) + + w, h = self.sizes + return (Null(width=w, height=h), -100+self.zorder) + + def get_front(self): + """Returns a list of layers displayed in the front of object/character""" + front_outline = [self.front_outline] if self.front_outline else [] + sprites = [self.apply_color(x, n) for n, x in enumerate(self.front)] + front_outline + if sprites: + return (Fixed(*sprites, fit_first=True), 100+self.zorder) + + w, h = self.sizes + return (Null(width=w, height=h), 100+self.zorder) + + def get_armfix(self, mannequin=False): + if self.armfix: + if mannequin: + armleft = gray_tint("{}armleft/{}_fix.webp".format(self.char.body.imagepath, self.char.body.get_part("armleft"))) + armright = gray_tint("{}armright/{}_fix.webp".format(self.char.body.imagepath, self.char.body.get_part("armright"))) + else: + armleft = Transform("{}armleft/{}_fix.webp".format(self.char.body.imagepath, self.char.body.get_part("armleft")), matrixcolor=HueMatrix(self.char.body.hue)) + armright = Transform("{}armright/{}_fix.webp".format(self.char.body.imagepath, self.char.body.get_part("armright")), matrixcolor=HueMatrix(self.char.body.hue)) + return (Fixed(armleft, armright, fit_first=True), 0.5+self.zorder) + + w, h = self.sizes + return (Null(width=w, height=h), 0.5+self.zorder) + + def get_mannequin(self): + return (self.char.body.get_mannequin(group=[self]), 0) + + def get_icon(self): + """Returns cropped Fixed displayable""" + if not renpy.is_skipping(): + if not self.cached_icon: + self.cached_icon = True + self.make_icon() + return self.ico + + def apply_color(self, img, n): + """Takes image and int layer number. Used internally.""" + c = TintMatrix(tuple(self.color[n])) + return Transform(img, matrixcolor=c) + + def set_color(self, n): + """Takes int layer number for manual color picking or a list to replace the cloth color in its entirety.""" + if isinstance(n, int): + # Transarency slider boolean + is_cheating = config.developer or cheat_wardrobe_alpha + is_blacklisted = self.type.startswith(tuple(self.blacklist_unequip)) + is_allowed = self.type.startswith(("makeup", "tattoo")) + + transparency = not is_blacklisted and (is_allowed or is_cheating) + + self.color[n] = color_picker(self.color[n], transparency, "Colour channel {}".format(n+1), pos_xy=(40, 85), color_default=self.color_default[n]) + self.char.override, self.override = False, False + elif isinstance(n, list): + self.color = [x[:] for x in n] + self.rebuild_image() + self.char.rebuild_image() + self.rebuild_icon() + + def reset_color(self, n=None): + """Reset cloth color. Takes optional int layer number to reset only specific layer color.""" + if n: + self.color[n] = [x for x in self.color_default] + else: + self.color = [x[:] for x in self.color_default] + self.rebuild_image() + self.char.rebuild_image() + self.rebuild_icon() + + def clone(self): + """Creates a clone of this cloth object. Since it requires a parent object it should be used internally only to avoid object depth issue.""" + return DollCloth(self.name, self.categories, self.type, self.id, [x[:] for x in self.color], self.zorder, self.unlocked, self.level, self.blacklist, self, self.armfix, self.modpath) + + def set_pose(self, pose): + compatible = False + + for x in (self.categories[0], self.categories[1], self.type): + if pose is None: + path = "{}/characters/{}/clothes/{}/{}/".format(self.modpath, self.name, x, self.id) + if renpy.loadable(path + "0.webp"): + self.imagepath = path + self.char.wear(self.type) + compatible = True + break + else: + path = "{}/characters/{}/poses/{}/clothes/{}/{}/".format(self.modpath, self.name, pose, x, self.id) + if renpy.loadable(path + "0.webp"): + self.imagepath = path + self.char.wear(self.type) + compatible = True + break + + if not compatible: + self.char.strip(self.type) + return + + self.set_layers() + self.rebuild_image() + return + + def is_compatible(self): + return + + def is_modded(self): + """Returns True if item comes from a mod.""" + if self.modpath: + return True + return False + + def get_modname(self): + """Return the name of the mod directory if exists.""" + return self.modpath.split("/")[1] if self.is_modded() else None + + def mark_as_seen(self): + self.seen = True + + def is_multislot(self): + return any(x in self.type for x in self.multislots) + + def unlock(self): + self.unlocked = True + + if self.parent: + self.parent.unlock() diff --git a/game/scripts/doll/common.rpy b/game/scripts/doll/common.rpy new file mode 100644 index 00000000..63693d1c --- /dev/null +++ b/game/scripts/doll/common.rpy @@ -0,0 +1,107 @@ + +init -1 python: + + ### Global Functions ### + + def get_character_emote(char, emote): + return "characters/{}/emotes/{}.webp".format(char, emote) if emote else None + + def get_character_pos(char): + global sprite_pos + + flip = getattr(renpy.store, char+"_flip", None) + use_head = getattr(renpy.store, "use_"+char+"_head", None) + + # Resolve X position for head state + if use_head: + xpos = sprite_pos["x"]["far_right"] if flip == 1 else sprite_pos["x"]["far_left"] + else: + xpos = getattr(renpy.store, char+"_xpos", None) + ypos = getattr(renpy.store, char+"_ypos", None) + + return (xpos, ypos) + + ### Classes ### + + class DollDisplayable(renpy.Displayable): + def __init__(self, child, **properties): + super(DollDisplayable, self).__init__(**properties) + self.focusable = None + self.child = child + + def render(self, width, height, st, at): + rv = renpy.Render(width, height) + c = self.child + cr = renpy.render(c, width, height, st, at) + + # We need to find the 'true' size of the displayable + # otherwise it may end up being the size of a null, + # or any other irrelevant element. + + xsize, ysize = cr.get_size() + xoffset, yoffset = c.place(rv, 0, 0, width, height, cr) + + width = max(xoffset + xsize, width) + height = max(yoffset + ysize, height) + + rv.width = width + rv.height = height + + return rv + + def event(self, ev, x, y, st): + return None + #raise renpy.IgnoreEvent() # Seems to work similar to NullAction + + def focus(self, default=False): + raise Exception("Not Implemented") + + def unfocus(self, default=False): + raise Exception("Not Implemented") + + def is_focused(self): + return False + + def visit_all(self, callback, seen=None): + return + + def visit(self): + return [] + + class DollMethods(object): + """Container class for commonly used methods and attributes""" + sprite = Null() + cached = False + threadlock = False + icon_threadlock = False + + layers_extra = {"extra", "outline", "overlay"} + layers_special = {"skin", "mask", "wind_mask"} + layers_additional = {"back", "front"} + + blacklist_toggles = ("hair", "glasses", "pubes", "piercing", "makeup", "tattoo", "earrings") + blacklist_unequip = {"hair"} + multislots = ("makeup", "accessory", "piercing", "tattoo") + + sizes = (1010, 1200) # Default sizes used for defining rare cases + + def rebuild_image(self): + # Defers rebuild until next time get_image is called + self.cached = False + + def make_image(self): + thread = DollThread(target=self.build_image) + thread.daemon = True + thread.start() + + sprites = thread.join() + + self.sprite = DollDisplayable(Fixed(*sprites, fit_first=True)) + + def get_image(self): + if not renpy.is_skipping(): + if not self.cached: + self.cached = True + + self.make_image() + return self.sprite diff --git a/game/scripts/doll/cum.rpy b/game/scripts/doll/cum.rpy new file mode 100644 index 00000000..1c4f0c90 --- /dev/null +++ b/game/scripts/doll/cum.rpy @@ -0,0 +1,45 @@ +init python: + class DollCum(DollMethods): + zorder_cum = 100 + + def __init__(self, obj): + self.char = obj + self.name = self.char.name + self.imagepath = "characters/{}/cum/".format(self.name) + + self.cum = dict((k, None) for k in {"hair", "face", "breasts", "body", "crotch", "pussy", "legs"}) + + def build_image(self): + sprites = tuple("{}{}/{}.webp".format(self.imagepath, k, v) for k, v in self.cum.iteritems() if v != None) + return sprites + + def get_skin(self): + return ["{}{}/{}_skin.webp".format(self.imagepath, k, v) for k, v in self.cum.iteritems() if renpy.loadable("{}{}/{}_skin.webp".format(self.imagepath, k, v))] + + def set_cum(self, *args, **kwargs): + """Takes keyword argument(s) containing string name(s) of cum layers to apply or None. Returns True if image is changed.""" + changed = False + + if args: + for k, v in self.cum.iteritems(): + if v != args[0]: + self.cum[k] = args[0] + changed = True + + for arg, value in kwargs.iteritems(): + if str(arg) != value: + self.cum[str(arg)] = value + changed = True + + if changed: + self.rebuild_image() + + return changed + + def set_pose(self, pose): + if pose is None: + self.imagepath = "characters/{}/cum/".format(self.name) + else: + self.imagepath = "characters/{}/poses/{}/cum/".format(self.name, pose) + self.rebuild_image() + return diff --git a/game/scripts/doll/face.rpy b/game/scripts/doll/face.rpy new file mode 100644 index 00000000..60d9e507 --- /dev/null +++ b/game/scripts/doll/face.rpy @@ -0,0 +1,92 @@ +init python: + class DollFace(DollMethods): + + blacklist_blink = {"closed", "happyCl", "wink"} + + def __init__(self, obj, face): + self.char = obj + self.name = self.char.name + self.face = face + self.imagepath = "characters/{}/face/".format(self.name) + + def build_image(self): + sprites = [] + ### TODO: This piece of code needs to be simplified. + + # Add facial expressions + for k, v in self.face.iteritems(): + if v[0] and k not in ("eyes", "pupils"): + sprites.append(("{}{}/{}.webp".format(self.imagepath, k, v[0]), v[1])) + + eyes = self.face["eyes"][0] + + if eyes not in self.blacklist_blink: + blink_path = "{}eyes/closed.webp".format(self.imagepath) + eyes_path = "{}eyes/{}.webp".format(self.imagepath, eyes) + mask_path = "{}eyes/{}_mask.webp".format(self.imagepath, eyes) + pupils_path = "{}pupils/{}.webp".format(self.imagepath, self.face["pupils"][0]) + + if renpy.loadable(blink_path): + normal = Fixed(eyes_path, AlphaMask(pupils_path, mask_path)) + sprites.append( (doll_blink(normal, blink_path), self.face["eyes"][1]) ) + else: + sprites.append((eyes_path, self.face["eyes"][1])) + + if renpy.loadable(mask_path): + sprites.append((AlphaMask(pupils_path, mask_path), self.face["pupils"][1])) + else: + eyes_path = "{}eyes/{}.webp".format(self.imagepath, eyes) + sprites.append((eyes_path, self.face["eyes"][1])) + + mask_path = "{}eyes/{}_mask.webp".format(self.imagepath, eyes) + if renpy.loadable(mask_path): + pupils_path = "{}pupils/{}.webp".format(self.imagepath, self.face["pupils"][0]) + sprites.append((AlphaMask(pupils_path, mask_path), self.face["pupils"][1])) + + sprites.sort(key=itemgetter(1)) + sprites = tuple(x[0] for x in sprites) + return sprites + + def get_skin(self): + for k, v in self.face.iteritems(): + skin_path = "{}{}/{}_skin.webp".format(self.imagepath, k, v[0]) + if renpy.loadable(skin_path): + yield skin_path + + def get_face(self): + return dict((k, v[0]) for k, v in self.face.iteritems()) + + def set_face(self, **kwargs): + """Takes keyword argument(s) with the string name of expression file(s). Returns True if image is changed.""" + changed = False + for arg, value in kwargs.iteritems(): + if value not in (self.face[str(arg)][0], False): + self.face[str(arg)][0] = value + changed = True + + if changed: + self.rebuild_image() + + return changed + + def set_pose(self, pose): + if pose is None: + self.imagepath = "characters/{}/face/".format(self.name) + else: + self.imagepath = "characters/{}/poses/{}/face/".format(self.name, pose) + + self.rebuild_image() + return + + def set_zorder(self, **kwargs): + """Takes keyword argument(s) with the string name of face type(s) and int value(s). Returns True if image is changed.""" + changed = False + for arg, value in kwargs.iteritems(): + if value != self.face[str(arg)][1]: + self.face[str(arg)][1] = value + changed = True + + if changed: + self.rebuild_image() + + return changed diff --git a/game/scripts/doll/init.rpy b/game/scripts/doll/init.rpy new file mode 100644 index 00000000..dffba943 --- /dev/null +++ b/game/scripts/doll/init.rpy @@ -0,0 +1,13 @@ +# To add new doll character just add it to this named set inside your mod file +init offset = 2 +init python: + def wardrobe_init(): + for c in CHARACTERS: + char = get_character_object(c) + + outfit_default = get_character_outfit(c, type="default") + char.equip(outfit_default) + + outfit_last = outfit = get_character_outfit(c, type="last") + outfit_last.save() + diff --git a/game/scripts/doll/lipstick.rpy b/game/scripts/doll/lipstick.rpy new file mode 100644 index 00000000..cd7ce07c --- /dev/null +++ b/game/scripts/doll/lipstick.rpy @@ -0,0 +1,65 @@ +init python: + class DollLipstick(DollCloth): + + def set_imagepath(self): + self.imagepath = "{}/characters/{}/clothes/makeup/lipstick/".format(self.modpath, self.name) + + def set_layers(self): + for x in self.layers_special: + self.__dict__[x] = None + + for x in self.layers_additional: + self.__dict__[x] = [] + for i in xrange(self.layers): + path = "{}{}_{}.webp".format(self.imagepath, i, x) + if renpy.loadable(path): + self.__dict__[x].append(path) + self.__dict__[x+"_outline"] = None + + return + + def build_image(self): + mouth = self.char.face.face["mouth"][0] + sprites = ((self.apply_color("{}{}.webp".format(self.imagepath, mouth), 0)), ) + return sprites + + def build_icon(self): + mouth = "base" #HARDCODED + sprites = (self.char.body.get_mannequin([self]), self.apply_color("{}{}.webp".format(self.imagepath, mouth), 0), ) + bounds = "{}{}.webp".format(self.imagepath, mouth) + + wmax, hmax = self.sizes + wmin = hmin = 96 + + x, y, w, h = crop_whitespace(bounds) + xoffset, yoffset = w/2, h/2 + + w = h = max(w, h, wmin, hmin) + + w = max(wmin, w + w/2) + h = max(hmin, h + h/2) + + x = clamp( (x - w/2) + xoffset, 0, wmax) + y = clamp( (y - h/2) + yoffset, 0, hmax) + + # Forbid exceeding the image height. + if y+h > hmax: + y = hmax-h + + return Transform(Fixed(*sprites, fit_first=True), crop=(x, y, w, h)) + + def set_pose(self, pose): + if pose is None: + path = "{}/characters/{}/clothes/makeup/lipstick/".format(self.modpath, self.name) + self.imagepath = path + else: + path = "{}/characters/{}/poses/{}/clothes/makeup/lipstick/".format(self.modpath, self.name, pose) + if renpy.loadable(path + "base.webp"): + self.imagepath = path + + self.rebuild_image() + return + + def clone(self): + """Creates a clone of this lipstick object. Since it requires a parent object it should be used internally only to avoid object depth issue.""" + return DollLipstick(self.name, self.categories, self.type, self.id, [x[:] for x in self.color], self.zorder, self.unlocked, self.level, self.blacklist, self, self.armfix, self.modpath) diff --git a/game/scripts/doll/main.rpy b/game/scripts/doll/main.rpy new file mode 100644 index 00000000..6b7a6112 --- /dev/null +++ b/game/scripts/doll/main.rpy @@ -0,0 +1,410 @@ +init python: + class Doll(DollMethods): + def __init__(self, name, clothes, face, body): + self.wardrobe = {} + self.wardrobe_list = [] + self.blacklist = [] + self.outfits = [] + self.name = name + self.clothes = clothes + self.face = DollFace(self, face) + self.body = DollBody(self, body) + self.cum = DollCum(self) + self.pose = None + self.emote = Null() + + # Image properties + self.zorder = 15 + self.layer = "screens" + self.animation = [] + self.tag = get_character_tag(name) + + # Transform properties + self.pos = (0, 0) + self.zoom = 0.5 + self.xzoom = 1 + self.align = (0.5, 1.0) + + def rebuild(self): + """Rebuild character image cache.""" + self.body.rebuild_image() + self.face.rebuild_image() + self.cum.rebuild_image() + for o in self.wardrobe_list: + o.rebuild_image() + o.rebuild_icon() + for o in self.outfits: + o.rebuild_image() + self.rebuild_image() + + def rebuild_image(self): + self.cached = False + + if renpy.showing(get_character_tag(self.name), layer=self.layer): + self.show() + + def show(self): + if renpy.get_screen(("wardrobe", "animatedCG", "studio")): + return + + base_transform = doll_transform(self.pos, self.zoom, self.xzoom) + + renpy.show(name=self.tag, at_list=[base_transform] + self.animation, layer=self.layer, what=self.get_image(), zorder=self.zorder) + + def hide(self): + renpy.hide(name=self.tag, layer=self.layer) + + def build_image(self): + # Add body, face, cum, clothes, masks + masks = [] + sprites = [ + (self.body.get_image(), 0), + (self.face.get_image(), 1), + (self.cum.get_image(), self.cum.zorder_cum), + (self.emote, 1000), + ] + + for i in self.clothes.itervalues(): + clothing, _, is_worn = i + + if not clothing is None and is_worn: + zorder = clothing.zorder + + sprites.extend([ + (clothing.get_image(), zorder), + clothing.get_back(), + clothing.get_front(), + clothing.get_armfix(), + ]) + + if clothing.mask: + masks.append((clothing.mask, zorder-1)) + + sprites.sort(key=itemgetter(1)) + masks.sort(key=itemgetter(1)) + + back_sprites = [x for x in sprites if x[1] < 0] + sprites = [x for x in sprites if x[1] >= 0] + + # Apply alpha mask + for m in masks: + mask, mask_zorder = m + + for i, s in enumerate(sprites): + sprite, sprite_zorder = s + + if i < 1 or mask_zorder > sprite_zorder: + continue + + c = tuple(x[0] for x in sprites[:i] if not isinstance(x[0], Null)) + masked = AlphaMask(Fixed(*c, fit_first=True), mask) + sprites = sprites[i:] + sprites.insert(0, (masked, mask_zorder)) + break + + sprites = back_sprites + sprites + return tuple(x[0] for x in sprites) + + def equip(self, obj, remove_old=True): + """Takes DollCloth or DollOutfit object to equip.""" + if isinstance(obj, DollCloth): + self.clothes[obj.type][0] = obj + self.clothes[obj.type][2] = True + + if self.is_blacklisted(obj.type): + self.unequip(*self.get_blacklister(obj.type)) + + if obj.blacklist: + self.unequip(*obj.blacklist) + + if self.pose: + obj.set_pose(self.pose) + elif isinstance(obj, DollOutfit): + if remove_old: + self.unequip("all") + + for i in obj.group: + self.clothes[i.type][0] = i.parent + self.clothes[i.type][0].set_color(i.color) + if self.pose: + i.parent.set_pose(self.pose) + self.body.rebuild_image() + self.rebuild_image() + self.rebuild_blacklist() + update_chibi(self.name) + + def unequip(self, *args): + """Takes argument(s) containing string cloth type(s) to unequip.""" + if "all" in args: + for k, v in self.clothes.iteritems(): + if not k in self.blacklist_unequip: + if self.pose and v[0]: + v[0].set_pose(None) + v[0], v[2] = None, True + else: + for arg in args: + if not arg in self.blacklist_unequip: + if self.pose and self.clothes[arg][0]: + self.clothes[arg][0].set_pose(None) + self.clothes[arg][0] = None + + self.body.rebuild_image() + self.rebuild_image() + self.rebuild_blacklist() + update_chibi(self.name) + + def get_equipped(self, type): + """Takes argument containing string cloth type. Returns equipped object for cloth type.""" + return self.clothes[type][0] + + def get_equipped_item(self, items): + """Returns first equipped item from a list or None.""" + for i in items: + if self.is_equipped_item(i): + return i + return None + + def strip(self, *args): + """Takes argument(s) containing string cloth type(s) to temporarily displace (hide).""" + if "all" in args: + for k, v in self.clothes.iteritems(): + if not k.startswith(self.blacklist_toggles): + v[2] = False + else: + for arg in args: + if arg in self.multislots: + for k, v in self.clothes.iteritems(): + if k.startswith(arg): + v[2] = False + else: + self.clothes[arg][2] = False + self.body.rebuild_image() + self.rebuild_image() + update_chibi(self.name) + + def wear(self, *args): + """Takes argument(s) containing string cloth type(s) to put on (unhide).""" + if "all" in args: + if self.is_worn("all"): + return + + for v in self.clothes.itervalues(): + v[2] = True + else: + for arg in args: + if arg in self.multislots: + for k, v in self.clothes.iteritems(): + if k.startswith(arg): + v[2] = True + else: + self.clothes[arg][2] = True + self.body.rebuild_image() + self.rebuild_image() + update_chibi(self.name) + + def is_equipped(self, *args): + """Takes argument containing string cloth type. Returns True if slot is occupied, False otherwise.""" + for arg in args: + if arg in self.multislots: + return any(bool(v[0]) for k, v in self.clothes.iteritems() if k.startswith(arg)) + else: + if not self.clothes[arg][0]: + return False + return True + + def is_any_equipped(self, *args): + """Takes arguments containing string cloth types. Returns True if ANY of them is equipped, False otherwise.""" + if "clothes" in args: + for k, v in self.clothes.iteritems(): + if not k.startswith(self.blacklist_toggles): + if self.is_equipped(k): + return True + else: + for arg in args: + if self.is_equipped(arg): + return True + return False + + def is_equipped_item(self, item): + """Takes DollCloth object or list of objects. Returns True if item is equipped, False otherwise.""" + return self.get_equipped(item.type) == item + + def is_worn(self, *args): + """Takes argument(s) containing string cloth type(s). Returns True if worn, False otherwise.""" + if "all" in args: + for v in self.clothes.itervalues(): + if not v[2]: + return False + else: + for arg in args: + if arg in self.multislots: + return any( (v[0] and v[2]) for k, v in self.clothes.iteritems() if k.startswith(arg)) + else: + if not self.clothes[arg][0] or not self.clothes[arg][2]: + return False + return True + + def is_any_worn(self, *args): + """Takes arguments containing string cloth types. Returns True if ANY of them is worn, False otherwise.""" + if "clothes" in args: + for k, v in self.clothes.iteritems(): + if not k.startswith(self.blacklist_toggles): + if self.is_worn(k): + return True + else: + for arg in args: + if self.is_worn(arg): + return True + return False + + def set_face(self, **kwargs): + """Takes keyword argument(s) with the string name of expression file(s).""" + if self.face.set_face(**kwargs): + self.body.rebuild_image() + + # Rebuild lipstick + lipstick = self.clothes.get("makeup4", [None, 1, True])[0] + if isinstance(lipstick, DollLipstick): + lipstick.rebuild_image() + self.rebuild_image() + + def get_face(self): + """Returns a dictionary containing currently set facial expressions. Used in character studio.""" + return self.face.get_face() + + def set_body(self, **kwargs): + """Takes keyword argument(s) with the string name of body part file(s).""" + if self.body.set_body(**kwargs): + self.rebuild_image() + + def set_body_hue(self, arg): + """Takes integer between 0 - 359, rotates the character body colour by given amount.""" + self.body.hue = arg + self.body.rebuild_image() + self.rebuild_image() + + def set_body_zorder(self, **kwargs): + """Takes keyword argument(s) with the name(s) of body part(s) and integer value(s)""" + if self.body.set_zorder(**kwargs): + self.rebuild_image() + + def set_cum(self, *args, **kwargs): + """Takes keyword argument(s) containing string name(s) of cum layers to apply or None.""" + if self.cum.set_cum(*args, **kwargs): + self.body.rebuild_image() + self.rebuild_image() + + def set_pose(self, pose): + if pose is None or renpy.loadable("characters/{}/poses/{}/loadable.webp".format(self.name, pose)): + self.pose = pose + self.face.set_pose(pose) + self.body.set_pose(pose) + self.cum.set_pose(pose) + for v in self.clothes.itervalues(): + if v[0]: + v[0].set_pose(pose) + self.rebuild_image() + else: + raise Exception("'{}' pose doesn't exist for character named '{}'.".format(pose, self.name)) + + def rebuild_blacklist(self): + blacklist = [] + for v in self.clothes.itervalues(): + if v[0]: + blacklist.extend(v[0].blacklist) + self.blacklist = list(set(blacklist)) + + def is_blacklisted(self, type): + """Takes string cloth type. Returns True if cloth type is blacklisted.""" + return True if type in self.blacklist else False + + def get_blacklister(self, type): + """Takes string cloth type. Returns a list of clothing types that report incompatibility.""" + return [x[0].type for x in self.clothes.itervalues() if x[0] and type in x[0].blacklist] + + def create_outfit(self, temp=False): + """Creates a copy of the current character clothes and stores it.""" + return DollOutfit([x[0] for x in self.clothes.itervalues() if x[0]], True, temp=temp) + + def import_outfit(self, path, fromfile=True): + """Imports outfit from .png file or clipboard text.""" + # Grab data + if fromfile: + try: + imported = image_payload.decode(path) + except: + if image_payload._file: + image_payload._file.close() + renpy.notify("Import failed: Corrupted file.") + return None + else: + imported = get_clipboard() + + # Evaluate data + if imported: + try: + imported = make_revertable(evaluate(imported)) + except: + renpy.notify("Import failed: Corrupted outfit data.") + renpy.block_rollback() + return None + + group = [] + + for i, x in enumerate(imported): + if i == 0 and not x == self.name: + renpy.notify("Import failed: Wrong character.") + return None + + for o in self.wardrobe_list: + if x[0] == o.id: + if not o.unlocked and not game.cheats: + renpy.notify("Import failed: You don't own these items. Buy them first.") + return None + + x[0] = o.clone() + x[0].set_color(x[1]) + group.append(x[0]) + + if group: + renpy.notify("Import successful!") + return DollOutfit(group, True) + renpy.notify("Import failed: Unknown error.") + return None + + def get_schedule(self): + """Returns a list of outfits available for current time of day and weather conditions.""" + schedule = [] + + for o in self.outfits: + if o.unlocked and o.schedule["day" if game.daytime else "night"]: + if game.weather == "overcast" and o.schedule["cloudy"]: + schedule.append(o) + elif game.weather in {"storm", "rain"} and o.schedule["rainy"]: + schedule.append(o) + elif game.weather in {"snow", "blizzard"} and o.schedule["snowy"]: + schedule.append(o) + elif game.weather in {"clear", "cloudy"} and not (o.schedule["cloudy"] or o.schedule["rainy"] or o.schedule["snowy"]): + schedule.append(o) + return schedule + + def equip_random_outfit(self): + """Equips random outfit based on Outfits Schedule.""" + schedule = self.get_schedule() + + if schedule: + self.equip(renpy.random.choice(schedule)) + + def set_emote(self, emote): + + if not emote and not isinstance(emote, Null): + self.emote = Null() + return + + if self.pose: + path = "characters/{}/poses/{}/emote/{}.webp".format(self.name, self.pose, emote) + else: + path = "characters/{}/emote/{}.webp".format(self.name, emote) + + self.emote = DollDisplayable(Image(path)) + diff --git a/game/scripts/doll/outfits.rpy b/game/scripts/doll/outfits.rpy new file mode 100644 index 00000000..b7e6ec1e --- /dev/null +++ b/game/scripts/doll/outfits.rpy @@ -0,0 +1,179 @@ +init python: + class DollOutfit(DollMethods): + default_schedule = {"day": False, "night": False, "cloudy": False, "rainy": False, "snowy": False} + + def __init__(self, group, unlocked=False, name="", desc="", price=0, temp=False, schedule={}, hidden=False, addons=[]): + self.group = [x.clone() if not x.parent else x for x in group] + self.name = name + self.desc = desc + self.price = price + self.char = self.group[0].char + self.unlocked = unlocked + self.schedule = dict(self.default_schedule.items() + schedule.items()) + self.hash = self.generate_hash() + self.temp = temp + self.hidden = hidden + self.addons = addons + + if not self.temp: + + if unlocked: + self.unlock() + + if not self.hidden and not self in self.char.outfits: + self.char.outfits.append(self) + + # if config.developer: + # def __del__(self): + # print("Outfit with hash: {} has been garbage collected.".format(self.hash)) + + def __eq__(self, obj): + if not isinstance(obj, DollOutfit): + return NotImplemented + return self.hash == obj.hash + + def generate_hash(self): + salt = str( sorted([ sorted([x.name, x.type, x.id, x.color]) for x in self.group ]) ) + return hash(salt) + + def delete(self): + if self in self.char.outfits: + self.char.outfits.remove(self) + + def build_image(self): + masks = [] + sprites = [ + (self.char.body.get_mannequin(self.group), 0) + ] + + for i in self.group: + sprites.append([i.get_image(), i.zorder]) + + sprites.extend([ + (i.get_image(), i.zorder), + i.get_back(), + i.get_front(), + i.get_armfix(mannequin=True), + ]) + + if i.mask: + masks.append((i.mask, i.zorder-1)) + + sprites.sort(key=itemgetter(1)) + masks.sort(key=itemgetter(1)) + + back_sprites = [x for x in sprites if x[1] < 0] + sprites = [x for x in sprites if x[1] >= 0] + + # Apply alpha mask + for m in masks: + mask, mask_zorder = m + + for i, s in enumerate(sprites): + sprite, sprite_zorder = s + + if i < 1 or mask_zorder > sprite_zorder: + continue + + c = tuple(x[0] for x in sprites[:i] if not isinstance(x[0], Null)) + masked = AlphaMask(Fixed(*c, fit_first=True), mask) + sprites = sprites[i:] + sprites.insert(0, (masked, mask_zorder)) + break + + sprites = back_sprites + sprites + return tuple(x[0] for x in sprites) + + def exists(self): + return (self in self.char.outfits) + + def export_data(self, filename, tofile=True): + """Exports outfit to .png file or clipboard text.""" + exported = [self.group[0].name] + exported.extend([x.id, x.color] for x in self.group) + + # Encode data + if tofile: + path = "{}/game/outfits/".format(config.basedir) + fn = "{}.png".format(filename) + + if not os.path.exists(path): + os.makedirs(path) + + d = Transform(self.get_image(), crop=(210, 200, 700, 1000), anchor=(0.5, 1.0), align=(0.5, 1.0), xsize=310, ysize=470, fit="contain") + d = Fixed( + "interface/wardrobe/export_background.webp", + d, + "interface/wardrobe/export_frame.webp", + Text(active_girl, align=(0.5, 0.995)), + Text("Ver. {}".format(config.version), size=10, align=(0.99, 0.99)) + ) + + displayable_to_file(d, path+fn, size=(310, 470) ) + image_payload.encode(filename, str(exported)) + else: + set_clipboard(exported) + renpy.notify("Export successful!") + + def unlock(self): + """Unlocks outfit and respective clothing objects from which they were cloned.""" + self.unlocked = True + for i in self.group: + i.unlock() + + for i in self.addons: + i.unlock() + + def save(self): + """Overwrites this outfit with clothes currently equipped by the character.""" + self.group = [] + for v in self.char.clothes.itervalues(): + if v[0]: + self.group.append(v[0].clone()) + self.rebuild_image() + return + + def is_modded(self): + """Returns True if one of the group items comes from a mod.""" + for i in self.group: + if i.is_modded(): + return True + return False + + def get_modname(self): + """Returns a list of mods contained within the outfit group.""" + return list(set([i.get_modname() for i in self.group if i.is_modded()])) + + def get_schedule(self): + """Returns a dictionary with the current schedule.""" + return self.schedule + + def set_schedule(self, **kwargs): + for k, v in kwargs.iteritems(): + self.schedule[k] = v + + def has_type(self, *args): + """Takes argument(s) containing string cloth type(s). Returns True if worn, False otherwise.""" + types = set(x.type for x in self.group) + + for arg in args: + if arg in self.multislots: + if not any(x.startswith(arg) for x in types): + return False + else: + if not arg in types: + return False + return True + + def has_any_type(self, *args): + """Takes arguments containing string cloth types. Returns True if ANY of them is worn, False otherwise.""" + if "clothes" in args: + for k in self.char.clothes.iterkeys(): + if not k.startswith(self.blacklist_toggles): + if self.has_type(k): + return True + else: + for arg in args: + if self.has_type(arg): + return True + return False diff --git a/game/scripts/doll/threading.rpy b/game/scripts/doll/threading.rpy new file mode 100644 index 00000000..694e50b5 --- /dev/null +++ b/game/scripts/doll/threading.rpy @@ -0,0 +1,23 @@ +init python: + import threading + + class DollThread(threading.Thread, NoRollback): + def __init__(self, group=None, target=None, name=None, args=(), kwargs={}, Verbose=None): + super(DollThread, self).__init__(group, target, name, args, kwargs, Verbose) + self._return = None + + def run(self): + try: + self._return = self._Thread__target(*self._Thread__args, **self._Thread__kwargs) + except: + import traceback + traceback.print_exc() + + if config.developer: + raise Exception("Thread just pooped itself.") + + renpy.restart_interaction() + + def join(self, timeout=1): + threading.Thread.join(self, timeout=timeout) + return self._return diff --git a/game/scripts/doll/transforms.rpy b/game/scripts/doll/transforms.rpy new file mode 100644 index 00000000..a9984b58 --- /dev/null +++ b/game/scripts/doll/transforms.rpy @@ -0,0 +1,5 @@ +transform doll_transform(pos, zoom, xzoom): + pos pos + zoom zoom + xzoom xzoom + #align align Need to recalculate base positions diff --git a/game/scripts/events/DayNight.rpy b/game/scripts/events/DayNight.rpy new file mode 100644 index 00000000..2f9f8bf3 --- /dev/null +++ b/game/scripts/events/DayNight.rpy @@ -0,0 +1,257 @@ + +label day_start: + show screen blkfade + hide snape_main + hide genie_main + hide tonks_main + hide cho_main + hide hermione_main + hide astoria_main + hide susan_main + hide luna_main + with dissolve + + # Reset room objects + $ candleL_OBJ.foreground = None + $ candleR_OBJ.foreground = None + $ fire_in_fireplace = False + $ fireplace_OBJ.foreground = None + $ phoenix_is_fed = False + $ phoenix_is_petted = False + $ phoenix_OBJ.foreground = None # Removes seeds image + $ owl_away = False + $ cupboard_searched = False + + # Reset gift flags + $ gave_tonks_gift = False + $ gave_hermione_gift = False + $ gave_luna_gift = False + $ gave_cho_gift = False + $ gave_astoria_gift = False + $ gave_susan_gift = False + + # Reset chit-chat flags + $ snape_chatted = False + $ tonks_chatted = False + $ hermione_chatted = False + $ luna_chatted = False + $ cho_chatted = False + $ astoria_chatted = False + $ susan_chatted = False + + # Tick Event timers + $ ss_event_pause = max(ss_event_pause-1, 0) + $ ss_summon_pause = max(ss_summon_pause-1, 0) + $ nt_event_pause = max(nt_event_pause-1, 0) + $ nt_summon_pause = max(nt_summon_pause-1, 0) + $ hg_event_pause = max(hg_event_pause-1, 0) + $ hg_summon_pause = max(hg_summon_pause-1, 0) + $ ll_event_pause = max(ll_event_pause-1, 0) + $ ll_summon_pause = max(ll_summon_pause-1, 0) + $ cc_event_pause = max(cc_event_pause-1, 0) + $ cc_summon_pause = max(cc_summon_pause-1, 0) + $ ag_event_pause = max(ag_event_pause-1, 0) + $ ag_summon_pause = max(ag_summon_pause-1, 0) + $ sb_event_pause = max(sb_event_pause-1, 0) + $ sb_summon_pause = max(sb_summon_pause-1, 0) + + # Reset busy flags (Based on current tick) + $ snape_busy = bool(ss_summon_pause) + $ tonks_busy = bool(nt_summon_pause) + $ hermione_busy = bool(hg_summon_pause) + $ luna_busy = bool(ll_summon_pause) + $ cho_busy = bool(cc_summon_pause) + $ astoria_busy = bool(ag_summon_pause) + $ susan_busy = bool(sb_summon_pause) + + # Improve Mood + if game.difficulty == 1: # Easy difficulty + $ val = 3 + elif game.difficulty == 2: # Normal difficulty + $ val = 2 + elif game.difficulty == 3: # Hardcore difficulty + $ val = 1 + + $ ton_mood = max(ton_mood-val, 0) + $ her_mood = max(her_mood-val, 0) + $ lun_mood = max(lun_mood-val, 0) + $ cho_mood = max(cho_mood-val, 0) + $ ast_mood = max(ast_mood-val, 0) + $ sus_mood = max(sus_mood-val, 0) + + # Game flags + $ game.day += 1 + $ game.weather = "random" + $ game.daytime = True + + # Randomisers + $ random_gold = renpy.random.randint(8, 40) + $ random_map_loc = renpy.random.randint(1, 5) + + # Send salary every 7th day + if game.day % 7 == 0: + if reports_finished >= 1: + $ letter_work_report.send() + if not first_random_twins: + $ twins_interest = True + + # Deliver mail + $ mailbox.tick() + + # Update map locations + call set_her_map_location() + call set_lun_map_location() + call set_cho_map_location() + call set_ast_map_location() + call set_sus_map_location() + #TODO: Add Tonks map location + #TODO: Add Snape map location + + # Reset appearances and sprites + call update_luna + call update_astoria + call update_hermione + call update_susan + call update_cho + call update_tonks + call update_snape + call update_genie + + # Reset and update interface + call update_interface_color + + call room(current_room, stop_sound=False, hide_screens=False) + + # Equip scheduled outfits + if luna_outfits_schedule: + $ luna.equip_random_outfit() + if astoria_outfits_schedule: + $ astoria.equip_random_outfit() + if hermione_outfits_schedule: + $ hermione.equip_random_outfit() + if susan_outfits_schedule: + $ susan.equip_random_outfit() + if cho_outfits_schedule: + $ cho.equip_random_outfit() + if tonks_outfits_schedule: + $ tonks.equip_random_outfit() + + hide screen blkfade + hide screen bld1 + hide screen blktone + with dissolve + + # Points gains + call points_changes + call update_ui_points + + $ renpy.force_autosave(True) + + label day_resume: + + # Start Quests + jump quests + + $ renpy.choice_for_skipping() + + call screen room_menu + +label night_start: + + show screen blkfade + hide snape_main + hide genie_main + hide tonks_main + hide cho_main + hide hermione_main + hide astoria_main + hide susan_main + hide luna_main + with dissolve + + # Reset room objects + if not candleL_OBJ.foreground: + $ candleL_OBJ.get_action()() + if not candleR_OBJ.foreground: + $ candleR_OBJ.get_action()() + $ cupboard_searched = False + + # Reset chit-chat flags + $ snape_chatted = False + $ tonks_chatted = False + $ hermione_chatted = False + $ luna_chatted = False + $ cho_chatted = False + $ astoria_chatted = False + $ susan_chatted = False + + # Reset busy flags (Based on current tick) + $ snape_busy = bool(ss_summon_pause) + $ tonks_busy = bool(nt_summon_pause) + $ hermione_busy = bool(hg_summon_pause) + $ luna_busy = bool(ll_summon_pause) + $ cho_busy = bool(cc_summon_pause) + $ astoria_busy = bool(ag_summon_pause) + $ susan_busy = bool(sb_summon_pause) + + # Game flags + $ game.weather = "random" + $ game.daytime = False + + # Randomisers + $ random_gold = renpy.random.randint(8, 40) + $ random_map_loc = renpy.random.randint(1, 5) + + # Update map locations + call set_her_map_location() + call set_lun_map_location() + call set_cho_map_location() + call set_ast_map_location() + call set_sus_map_location() + #TODO: Add Tonks map location + #TODO: Add Snape map location + + # Reset appearances and sprites + call update_luna + call update_astoria + call update_hermione + call update_susan + call update_cho + call update_tonks + call update_snape + call update_genie + + # Reset and update interface + call update_interface_color + + call room(current_room, stop_sound=False, hide_screens=False) + + # Equip scheduled outfits + if luna_outfits_schedule: + $ luna.equip_random_outfit() + if astoria_outfits_schedule: + $ astoria.equip_random_outfit() + if hermione_outfits_schedule: + $ hermione.equip_random_outfit() + if susan_outfits_schedule: + $ susan.equip_random_outfit() + if cho_outfits_schedule: + $ cho.equip_random_outfit() + if tonks_outfits_schedule: + $ tonks.equip_random_outfit() + + hide screen blkfade + hide screen bld1 + hide screen blktone + with dissolve + + $ renpy.force_autosave(True) + + label night_resume: + + # Start Quests + jump quests + + $ renpy.choice_for_skipping() + + call screen room_menu diff --git a/game/scripts/events/Quests.rpy b/game/scripts/events/Quests.rpy new file mode 100644 index 00000000..f3c609fc --- /dev/null +++ b/game/scripts/events/Quests.rpy @@ -0,0 +1,510 @@ + +### Quests ### + +# Add any event triggers to this list. +# Only one event can play for each day/night (this might change.) +# Add date specific events at the start of the list (create the date if it's not there.) + +label quests: + + $ renpy.choice_for_skipping() + + if current_room == "main_room": + # + # DAY-BASED EVENTS + # + + if game.day >= 1: + if game.daytime: + if not genie_intro.E2_complete and bird_examined and desk_examined and cupboard_examined and door_examined and fireplace_examined: + jump genie_intro_E2 + else: + if not snape_intro.E1_complete: + jump snape_intro_E1 + + if game.day >= 2: + if game.daytime: + if not genie_intro.E3_complete: + jump genie_intro_E3 + else: + if ss_event_pause == 0 and not snape_intro.E2_complete: + # Snape's second visit. + jump snape_intro_E2 + + if game.day >= 3: + if game.daytime: + if not genie_intro.E4_complete: + jump genie_intro_E4 + else: + if ss_event_pause == 0 and not snape_intro.E3_complete: + # Day of the duel. + jump snape_intro_E3 + + + if game.day >= 4: + if game.daytime: + pass + else: + if ss_event_pause == 0 and not snape_intro.E5_complete: + # You bother decide to just "roll with it"... Snape summon unlocked. + jump snape_intro_E5 + + if game.day >= 5: + if game.daytime: + if hg_event_pause == 0 and not hermione_intro.E1_complete: + # Hermione shows up for the first time. + jump hermione_intro_E1 + + if game.day >= 6: + if game.daytime: + if hg_event_pause == 0 and ss_he.hermione_E1 and not hermione_intro.E2_complete: + # Second visit from Hermione. Says she sent a letter to the Ministry. + jump hermione_intro_E2 + else: + pass + + if game.day >= 7: + if game.daytime: + pass + else: + if hg_event_pause == 0 and ss_he.hermione_E2 and not hermione_intro.E3_complete: + # Takes place after first special event with Snape, where he just complains about Hermione. + # Hermione might have failed a test... + jump hermione_intro_E3 + + if game.day >= 8: + if game.daytime: + pass + else: + if hg_event_pause == 0 and hermione_intro.E3_complete and not hermione_intro.E4_complete: + # She failed a test and cries. + jump hermione_intro_E4 + + if game.day >= 9: + if game.daytime: + if hg_event_pause == 0 and hermione_intro.E4_complete and not hermione_intro.E5_complete: + # Hermione asks to be tutored. Summon unlocked! + jump hermione_intro_E5 + + if game.day >= 10: + if game.daytime: + if nt_event_pause == 0 and hermione_intro.E5_complete and not tonks_intro.E1_complete: + # Tonks visits for the first time. + jump tonks_intro_E1 + else: + if tonks_intro.E1_complete and not tonks_intro.E2_complete: + # Tonks has found no evidence so far. + jump tonks_intro_E2 + + if game.day >= 11: + if game.daytime: + pass + else: + if nt_event_pause == 0 and ss_he.tonks_E1 and not tonks_intro.E3_complete: + # Tonks becomes a teacher. Summon unlocked! + jump tonks_intro_E3 + + if game.day >= 13: + if game.daytime: + if hg_event_pause == 0 and hermione_intro.E5_complete and ss_he.tonks_E1 and nt_he.hermione_E1 and not hermione_intro.E6_complete: + # Hermione wants to buy favours. Favours unlocked! + jump hermione_intro_E6 + + if is_puzzle_box_in_fireplace(): + $ fire_in_fireplace = False + $ fireplace_OBJ.foreground = "glow_effect_fireplace" + elif fireplace_OBJ.foreground == "glow_effect_fireplace": + $ fireplace_OBJ.foreground = None + + # + # CARDGAME - EVENTS + # + + if game.day >= twins_cards_delay: + if deck_unlocked and twins_first_win and not twins_cards_stocked: + if not game.daytime: + $ letter_cards_store.send() + + if geniecard_level < 2 and snape_third_win and her_third_win and twins_second_win: + if not game.daytime: + $ letter_cards_tier2.send() + + # + # CHO CHANG - EVENTS + # + + if cc_event_pause == 0: + if game.daytime: + + if not cho_intro.E1_complete and her_tier >= 2: + # Cho intro + jump cho_intro_E1 + + if hufflepuff_match == "start": + $ game.weather = "clear" + stop weather + $ hufflepuff_match = "return" + jump hufflepuff_match + elif slytherin_match == "start": + $ game.weather = "clear" + stop weather + $ slytherin_match = "return" + jump slytherin_match + elif gryffindor_match == "start": + $ game.weather = "clear" + stop weather + $ gryffindor_match = "return" + jump gryffindor_match + + if cho_tier == 1: + # Lee Jordan gets knocked out cold + if cho_quid.hufflepuff_training and not cho_quid.E3_complete: + jump cho_quid_E3 + + elif cho_tier == 2: + # Hermione refuses to commentate for Slytherin match. + if cho_quid.slytherin_failed and not cho_quid.E6_complete: + jump cho_quid_E6 + + elif cho_tier == 3: + # Genie decides to get the broom. + if cho_quid.gryffindor_training and not cho_quid.E12_complete: + jump cho_quid_E12 + + # Informs the player that all preparations are complete + if cho_quid.E11_complete and cho_quid.E12_complete and not cho_quid.E13_complete: + jump cho_quid_E13 + + else: + # Introduction + if cho_intro.E1_complete and not cho_intro.E2_complete: + jump cho_intro_E2 + + # Quidditch training matches + if cho_quid.in_progress: + $ cho_quid.in_progress = False + + if cho_tier == 1: + # Hufflepuff + jump cc_ht_return + elif cho_tier == 2: + # Slytherin + jump cc_st_return + elif cho_tier == 3: + # Gryffindor + jump cc_gt_return + + # Note: The return events now get jumped to right after the main match events. + + python: + for i in cc_requests_list: + if i.inProgress: + i.inProgress = False + i.start() + + $ play_potion_return("cho") + + # + # SUSAN BONES - EVENTS + # + + if sb_event_pause == 0: + if game.daytime: + # Introduction + if nt_he.susan_E1 and not susan_intro.E1_complete: + jump susan_intro_E1 + + $ play_potion_return("susan") + + # + # ASTORIA GREENGRASS - EVENTS + # + + # Astoria events not triggered by a date. + if ag_event_pause == 0: + if game.daytime: + # Introduction + if astoria_intro.E2_hermione and astoria_intro.E2_snape and not astoria_intro.E3_complete: + jump astoria_intro_E3 + if nt_he.astoria_E1 and not astoria_intro.E4_complete: + jump astoria_intro_E4 + else: + # Introduction + if susan_intro.E1_complete and not astoria_intro.E1_complete: + jump astoria_intro_E1 + + python: + for i in ag_spell_list: # Spell Training + if i.inProgress: + i.inProgress = False + i.start() + + $ play_potion_return("astoria") + + # + # SEVERUS SNAPE - EVENTS + # + + if ss_event_pause == 0: + if game.daytime: + # Ending events + if her_whoring >= 15 and ball_quest.E1_complete and not ball_quest.E2_complete: + # Snape complains that appointing Hermione in the Autumn Ball committee was a mistake. + jump ball_quest_E2 + + else: + # Ending events + if ball_quest.started and not ball_quest.completed: + jump ball_ending_E1 + + # + # NYMPHADORA TONKS - EVENTS + # + + # Tonks events not triggered by a date. + if nt_event_pause == 0: + if game.daytime: + python: + for i in tonks_mail_list: + if i == "poster_1_gift": + letter_nt_1.send() + tonks_mail_list.remove(i) + else: + python: + for i in nt_requests_list: + if i.inProgress: + i.inProgress = False + i.start() + + $ play_potion_return("tonks") + + # + # HERMIONE GRANGER - EVENTS + # + + if hg_event_pause == 0: + if game.daytime: + # Ending events + if her_whoring >= 15 and not ball_quest.E1_complete: + # Hermione wants to be in the Autumn Ball committee. + jump ball_quest_E1 + + if her_whoring >= 18 and ball_quest.E2_complete and not ball_quest.E3_complete: + # Hermione cries about having no proper dress for the Ball. + jump ball_quest_E3 + + if her_whoring >= 18 and ball_quest.E3_complete and not ball_quest.E4_complete: + # Hermione apologizes for the day (event) before. + jump ball_quest_E4 + + if hg_pr_sex.is_event_complete(6, 1) and not hg_pr_sex.is_event_complete(6, 2): + # Hermione missed the debriefing + $ hg_pr_sex.start() + else: + if current_job == "maid": + jump maid_responses + elif current_job == "barmaid": + jump barmaid_responses + elif current_job == "gryffindor_cheerleader": + jump gryffindor_cheer_responses + elif current_job == "slytherin_cheerleader": + jump slytherin_cheer_responses + elif current_job == "promoter": + jump hermione_helping_selling_cards + + python: + for i in hg_requests_list: + if i.inProgress: + i.start() + + for i in hg_ps_list: #Call any public shaming event if it's in progress + if i.inProgress: + renpy.jump(i.complete_label) + + $ play_potion_return("hermione") + + # + # LUNA LOVEGOOD - EVENTS + # + + if ll_event_pause == 0: + if not luna_intro_E1 and her_tier >= 3: + if not game.daytime: + # Luna barges into your office sleepwalking. + jump luna_intro_E1 + + if luna_intro_E1 and not luna_intro_E2: + if game.daytime: + jump luna_intro_E2 + + if spectrespecs_E1 and not quibbler_stocked: + if game.daytime: + jump spectrespecs_E2_reminder + + $ play_potion_return("luna") + elif current_room == "snape_office": + + if game.daytime: + if not snape_office_intro_E1: + # Genie searches the office + jump potions_intro_E1 + + if not snape_office_intro_E2 and snape_office_intro_E1: + # Genie gets caught by the painting. + jump potions_intro_E2 + else: + if not snape_office_intro_E2: + # (Optional) Genie gets caught by Snape. (E0 can play either before or after E1) + jump potions_intro_E0 + + + # All quest events should somehow end with a jump to the main room day/night cycle + # If no quest event is triggered, resume normally from the main room + call music_block + call screen room_menu + + +### Quests flags ### + +# Genie +default genie_intro = quest_class( + E1_complete = False, + E2_complete = False, + E3_complete = False, + E4_complete = False, +) + +# Snape +default snape_intro = quest_class( + E1_complete = False, # 1st visit + E2_complete = False, # 2nd visit + E3_complete = False, # 3rd visit, before the duel. + duel_complete = False, # Duel + E4_complete = False, # After the duel. + E5_complete = False, # 4th visit, summon unlocked. +) + +# Hermione +default hermione_intro = quest_class( + E1_complete = False, # 1st visit + E2_complete = False, # 2nd visit, MRM + informed the Ministry. + E3_complete = False, # 3rd visit, did she fail a test? + E4_complete = False, # 4th visit, she's crying. Failed a test. + E5_complete = False, # 5th visit, asks to be tutored, summon unlocked. + E6_complete = False, # 6th visit, asks to buy favours, favours unlocked. +) + +# Tonks +default tonks_intro = quest_class( + E1_complete = False, # 1st visit + E2_complete = False, # 2nd visit + E3_complete = False, # 3rd visit, summon unlocked. +) + +# Cho +default cho_intro = quest_class( + E1_complete = False, # 1st visit + E2_complete = False, # 2nd visit + E3_intro = False, # You talked to Hermione once, but event failed. + E3_complete = False, # 3rd visit, summon unlocked. +) + +default cho_quid = quest_class( + E1_complete = False, # Hufflepuff - Intro 1 + E2_complete = False, # Hufflepuff - Intro 2 + E3_complete = False, # Lee Jordan gets hit by a bludger + E4_complete = False, # Genie asks Hermione to commentate + E5_complete = False, # Slytherin - Intro 1 + E6_complete = False, # Hermione refuses to commentate. + E7_complete = False, # Blackmail Hermione. + E8_complete = False, # Ask Tonks for help (Hangout) + E9_complete = False, # Ask Snape for help (Hangout)(Optional) + E10_complete = False, # Gryffindor - Intro 1 + E11_complete = False, # Ask Luna for help (Talk) + E12_complete = False, # Acquire new broom + E13_complete = False, # Notify the player that all preparations are complete + + hufflepuff_prepared = False, # Ready for practice match? (Requirements: tactic) + hufflepuff_training = False, # Finished Hufflepuff practice match? + hufflepuff_complete = False, # Finished Hufflepuff event chain? + + slytherin_failed = False, # Has failed first training match? + slytherin_prepared = False, # Ready for practice match? (Requirements: tactic, blackmail Hermione, Tonks' help) + slytherin_training = False, # Finished Slytherin practice match? + slytherin_complete = False, # Finished Slytherin event chain? + + gryffindor_failed = False, # Found a cheerleader? (Requirements: Ask Luna) + gryffindor_prepared = False, # Ready for practice match? (Requirements: tactic) + gryffindor_training = False, # Finished Gryffindor practice match? + gryffindor_complete = False, # Finished Gryffindor event chain? + + position = "", # Valid choices: "front", "above", "close" + + lock_training = False, + lock_practice = True, + lock_tactic = False, + in_progress = False, +) + +default cho_quiz = quest_class( + E1_complete = False, + E2_complete = False, + + correct_answers = 0, + checkpoint = False, + lost = False, + complete = False, + + hint = "" # Set after reading Quidditch Book +) + +# Susan +default susan_intro = quest_class( + E1_complete = False, # Susan visits. +) + +# Astoria +default astoria_intro = quest_class( + E1_complete = False, # Tonks visits. + E2_hermione = False, # Tell Hermione to look for her. + E2_snape = False, # Tell Snape to look for her. + E3_complete = False, # Hermione finds her. + E4_complete = False, # Unlock Astoria. +) + +# Ball Quest +default ball_quest = quest_class( + E1_complete = False, + E2_complete = False, + E3_complete = False, + E4_complete = False, + gave_dress = False, + started = False, + completed = False, +) + + +### Hangout Events ### + +# Snape +default ss_he = quest_class( + hermione_E1 = False, # I hate her! + hermione_E2 = False, # Let's ruin her! + tonks_E1 = False, # Discuss Tonks with Snape. + tonks_E2 = False, # Inform him that Tonks has joined you both. + tonks_E3 = False, # Tonks is teaching DAtDA. Snape might use Veritaserum on her... + cho_E1 = False, # You tell Snape that you have met Cho. + cho_E2 = False, # Get some help with Quidditch. + + hermione_strip = False, # You invite Snape to watch Hermione strip. +) + +# Tonks +default nt_he = quest_class( + hermione_E1 = False, # Help with/unlock Hermione's favours. + susan_E1 = False, # Tonks is worried about Susan. + astoria_E1 = False, # Tonks suggests to teach Astoria the Imperius curse. + + favors_E1 = False, # Unlock Public Requests. + favors_E2 = False, # Advance to Tier 2. +) diff --git a/game/scripts/events/Start.rpy b/game/scripts/events/Start.rpy new file mode 100644 index 00000000..3a15f9cd --- /dev/null +++ b/game/scripts/events/Start.rpy @@ -0,0 +1,205 @@ +label start_wt: + $ disable_game_menu() + + show screen blkfade + with d3 + show image "images/rooms/_bg_/castle.webp" + call update_interface_color("gray") + hide screen blkfade + with d3 + show screen close_button(action=MainMenu()) + + menu: + "Difficulty" ">How difficult do you want the game to be?" + "-Easy-{size=-8}\nIncreased gold, item drop rate and Slytherin-points gains.\nMood will improve faster.\nCheats are available.{/size}": + $ game.difficulty = 1 + $ game.cheats = True + "-Normal-{size=-8}\nBalanced gold, item drop rate and Slytherin-points gains.\nMood will improve normally.\nCheats are available.{/size}": + $ game.difficulty = 2 + $ game.cheats = True + "-Hardcore-{size=-8}\nReduced gold, item drop rate and Slytherin-points gains.\nMood will not improve over time.\nNo cheats.{/size}": + $ game.difficulty = 3 + $ game.cheats = False + + if persistent.game_complete: + menu: + "NEW GAME+" ">Would you like to carry over your hard earned gold from your previous playthrough?" + "-Yes please-": + $ game.gold += (persistent.gold or 0) + ">[persistent.gold] gold has been added to your funds." + + "-No need-": + pass + + menu: + "Skip content" ">Would you like to skip early sections of the game?" + "-Play the intro-": + pass + "-Skip the intro-": + $ map_unlocked = True + $ sna_friendship = 5 + $ ton_friendship = 5 + jump skip_to_hermione + + hide image "images/rooms/_bg_/castle.webp" + hide screen close_button + $ enable_game_menu() + + jump genie_intro_E1 + +label genie_intro_E1: + $ game.weather = "clear" + $ game.daytime = False + $ game.day = 0 + call send_letters + + stop bg_sounds + stop weather + + call update_interface_color + call room("main_room") + call gen_chibi("hide") + call play_music("intro") + $ desk_OBJ.idle = "desk_dumbledore" + $ desk_OBJ.foreground = "letter_on_desk" + $ chair_OBJ.hidden = True + $ chair_left_OBJ.hidden = True + hide screen blkfade + with d5 + + pause 0.5 + $ renpy.block_rollback() + + $ dumbledore_name = "Old Bearded Man" + + $ renpy.sound.play("sounds/snore1.ogg") + dum1 "*Sounds of an old man sleeping like a baby*" + pause 1 + $ renpy.sound.play("sounds/thunder_2.ogg") + $ game.weather = "storm" + call weather_sound + with flashbulb + dum3 "Oh my!" + dum2 "A storm at this hour?" + dum2 "How peculiar... My pocket watch usually tells me when--" + dum1 "Hold on... I'm sensing something--" + dum1 "Strange...{w=0.4} No...{w=0.4} Unfamiliar..." + dum3 "Magic." + dum1 "How curious." + dum2 "*Yawn*...{w=0.4} Well... It begins to dawn." + + # Swap to day seamlessly + call update_interface_color("gold") + $ game.daytime = True + $ game.day = 1 + $ mailbox.tick() + with d9 + + dum2 "Perhaps I should--" + + $ dumbledore_name = "Albus Dumbledore" + + $ renpy.play("sounds/magic4.ogg") + $ desk_OBJ.idle = "ch_gen sit_behind_desk" + $ game.weather = "rain" + call weather_sound + with flash + + pause 1.0 + + call bld + gen "Your majesty! Don't touch--" ("angry", xpos="far_left", ypos="head") + gen "............................." ("base", xpos="far_left", ypos="head") + gen "I did it again, didn't I?" ("base", xpos="far_left", ypos="head") + gen "Teleported myself to who knows where..." ("angry", xpos="far_left", ypos="head") + gen "Those magical ingredients must have been way more potent than I thought..." ("base", xpos="far_left", ypos="head") + gen "Well... Whatever this place is I have no business here." ("base", xpos="far_left", ypos="head") + gen "Better to undo the spell and return to my magic shop before Princess Jasmine gets angry with me again..." ("base", xpos="far_left", ypos="head") + gen "....................." ("base", xpos="far_left", ypos="head") + gen "Although..." ("base", xpos="far_left", ypos="head") + gen "There is something odd about this place..." ("base", xpos="far_left", ypos="head") + gen "It's almost brimming with..." ("base", xpos="far_left", ypos="head") + gen "{size=+5}MAGIC?!{/size}" ("angry", xpos="far_left", ypos="head") + gen "Yes... magic, I can feel it. So powerful and yet somehow..." ("base", xpos="far_left", ypos="head") + gen "... alien." ("base", xpos="far_left", ypos="head") + gen "Interesting..." ("base", xpos="far_left", ypos="head") + gen "I think I will stick around for a little bit..." ("base", xpos="far_left", ypos="head") + + # Highlight important objects + $ fireplace_OBJ.idle = At("fireplace_idle_shadow", pulse_hover) + $ cupboard_OBJ.idle = At("cupboard_idle", pulse_hover) + $ phoenix_OBJ.idle = At("phoenix_idle", pulse_hover) + $ door_OBJ.idle = At("door_idle", pulse_hover) + $ desk_OBJ.idle = At("ch_gen sit_behind_desk", pulse_hover) + + $ achievements.unlock("start") + $ genie_intro.E1_complete = True + + jump main_room_menu + +label genie_intro_E2: + call bld + gen "It's getting darker already..." ("base", xpos="far_left", ypos="head") + gen "Did I just spend an entire day examining this room?" ("base", xpos="far_left", ypos="head") + call bld("hide") + + $ genie_intro.E2_complete = True + + # Next is Snape intro E1 + + jump night_start + +# TIme pass intro. +label genie_intro_E3: + call play_music("day") + + call bld + gen ".............." ("base", xpos="far_left", ypos="head") + gen "Another boring day in the office." ("base", xpos="far_left", ypos="head") + gen "All I can do here is sleep or jerk off..." ("angry", xpos="far_left", ypos="head") + gen "..........." ("base", xpos="far_left", ypos="head") + gen "Yet still... This magic... There's something strange going on here." ("base", xpos="far_left", ypos="head") + call bld("hide") + + call tutorial("time") + + $ genie_intro.E3_complete = True + + jump main_room_menu + +# Owl intro. +label genie_intro_E4: + call play_music("day") + + call bld + gen "An owl? Here?" ("base", xpos="far_left", ypos="head") + call bld("hide") + + call tutorial("mail") + + $ genie_intro.E4_complete = True + + jump main_room_menu + +label skip_to_hermione: + $ renpy.block_rollback() + + hide image "images/rooms/_bg_/castle.webp" + hide screen close_button + $ enable_game_menu() + + call send_letters + call cheats.hermione_skip_intro + + python: + for letter in mailbox.letters: + letter.wait -= 13 + + jump day_start + +label send_letters: + $ letter_hg_2.send() # Arrives on day 2 + $ letter_work_unlock.send() # Arrives on day 4 + $ letter_favors.send() # Arrives on day 8 + $ letter_cards_unlock.send() # Arrives on day 24 + return diff --git a/game/scripts/events/classes.rpy b/game/scripts/events/classes.rpy new file mode 100644 index 00000000..519b8999 --- /dev/null +++ b/game/scripts/events/classes.rpy @@ -0,0 +1,36 @@ + +init -1 python: + + class shaming_class(object): + #TODO This class should be replaced by event_class after the events have been restructured into tiers + """ + Represents a shaming event. + + `counter` (int): The number of times this event has been completed. + `points` (int): The number of times that count as progress. + """ + def __init__(self, **kwargs): + self.title = "" + self.tier = 0 + self.start_label = "" + self.complete_label = "" + self.counter = 0 + self.points = 0 + self.hint = False + self.inProgress = False + + self.__dict__.update(**kwargs) + + def get_menu_item(self, disabled=False): + menu_text = "" + + if self.hint: + menu_text += "{{image={}_check_True}}".format(gui.theme()) + + if self.title: + menu_text += "\"{}\"".format(self.title) + + if disabled: + return gui.menu_item(menu_text, "block") + else: + return gui.menu_item(menu_text, self.start_label) diff --git a/game/scripts/events/ending.rpy b/game/scripts/events/ending.rpy new file mode 100644 index 00000000..9c49c153 --- /dev/null +++ b/game/scripts/events/ending.rpy @@ -0,0 +1,2953 @@ +### Yule Ball Ending ### + +label ball_ending_start: + gen "[hermione_name], that ball you've mentioned..." ("base", xpos="far_left", ypos="head") + gen "When did you say it would start again?" ("base", xpos="far_left", ypos="head") + her "The autumn ball?!" ("grin", "base", "base", "mid") + her "I'm so excited!!! I can't wait for it!" ("grin", "happyCl", "base", "mid") + her "Just two more days, [genie_name]." ("base", "narrow", "base", "mid_soft") + gen "That soon, *huh*?" ("base", xpos="far_left", ypos="head") + her "Yep! I still have a tonne of preparation to do, though." ("soft", "base", "base", "R") + gen "Well then I better not keep you occupied any longer..." ("base", xpos="far_left", ypos="head") + gen "Unless..." ("base", xpos="far_left", ypos="head") + gen "Maybe we could..." ("grin", xpos="far_left", ypos="head") + her "Have some fun?" ("soft", "narrow", "base", "mid_soft") + gen "You read my mind, girl." ("grin", xpos="far_left", ypos="head") + + $ ball_quest.started = True + $ ss_event_pause += 2 + + jump hermione_favor_menu + + +screen genie_snape_shake_hands(shake=False): + if shake: + add "characters/snape/chibis/handshake/hand_01.webp" pos (220, 205) zoom 0.5 + else: + add "characters/snape/chibis/handshake/hand_00.webp" pos (220, 205) zoom 0.5 + +label ball_ending_E1: + stop music fadeout 1.0 + + call sna_walk(action="enter", xpos="desk", ypos="base") + pause.8 + + call play_music("snape") + sna "Genie..." ("snape_01", xpos="base", ypos="base") + gen "Severus?" ("base", xpos="far_left", ypos="head") + sna "I think I may have figured out why your magic does not work the way it should..." ("snape_05") + gen "Seriously?!" ("angry", xpos="far_left", ypos="head") + sna "Yes..." ("snape_23") + sna "It's quite obvious actually... I'm surprised that it didn't cross my mind before." + sna "You see, the thing is that every building in Hogwarts is enchanted with all kinds of protection spells..." ("snape_24") + gen "Protection spells, *huh*?" ("base", xpos="far_left", ypos="head") + sna "Yes..." ("snape_23") + sna "Very powerful, old, and nasty magic..." + sna "Even the land itself is heavily enchanted for miles in every direction..." ("snape_24") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + sna "Basically, any number of spells could be interfering with your powers around here..." ("snape_25") + gen "Wait, then how come you have no problems casting {i}your{/i} spells?" ("base", xpos="far_left", ypos="head") + sna "Well, you see, my magic is \"Hogwarts magic\"..." ("snape_05") + sna "But I suspect your powers are alien enough to be perceived as a threat." + gen "Interesting..." ("base", xpos="far_left", ypos="head") + sna "I think if you manage to get away far enough from the school grounds--" ("snape_24") + gen "I will be able to go home!{w=0.5} finally..." ("base", xpos="far_left", ypos="head") + sna "Yes, and the best time to do that would be tonight." ("snape_02") + sna "While everyone is preoccupied with that bloody Autumn ball, you could sneak out unnoticed..." ("snape_23") + + ### SHAKE HANDS WITH SNAPE ### + hide snape_main + call blkfade + + hide screen bld1 + call gen_chibi("hide") + call sna_chibi("hide") + show screen genie_snape_shake_hands(False) + + play music "music/machinations-by-kevin-macleod.ogg" fadein 1 fadeout 1 + pause 1 + call hide_blkfade + + gen "Right, today is the night of the Autumn ball..." ("base", xpos="far_left", ypos="head") + gen "So it ends tonight then..." ("base", xpos="far_left", ypos="head") + sna "Seems like it..." ("snape_09") + call hide_blkfade + pause.5 + + sna "So... Just in case I will never see you again..." ("snape_05") + gen "Right..." ("base", xpos="far_left", ypos="head") + + show screen genie_snape_shake_hands(True) + with d3 + pause 2 + + sna "The past several month were the best months of my life, Genie..." ("snape_26") + sna "Thank you for that...{w=0.3} you incredible traveller from another world..." + sna "Thank you, my friend..." + gen "I don't know what to say, Severus..." ("base", xpos="far_left", ypos="head") + sna "Then don't say anything..." ("snape_06") + sna "Just move on to your next adventure..." + sna "Our world has stalled you long enough..." + gen "Thank you for keeping me company and being my only friend here, Severus." ("base", xpos="far_left", ypos="head") + sna "Thank you for being mine..." ("snape_27") + sna "I'd better go now..." ("snape_06") + + # Goes to the door, stops and turns around. + call blkfade + + hide snape_main + hide screen genie_snape_shake_hands + call gen_chibi("sit_behind_desk") + call sna_chibi("stand","desk","base") + hide screen bld1 + call hide_blkfade + pause.5 + + call sna_walk("door", "base") + pause.5 + + call sna_chibi("stand","door","base", flip=False) + pause.5 + + sna "One more thing though..." ("snape_01", ypos="head") + gen "Yes?" ("base", xpos="far_left", ypos="head") + sna "If it all goes well..." ("snape_24") + sna "Will I find the real Albus Dumbledore in that chair tomorrow?" + gen "I believe so..." ("base", xpos="far_left", ypos="head") + sna "*Hmm*..." ("snape_04") + sna "Albus can't know that I was aware of his absence..." ("snape_03") + sna "Is there a way to tell you guys apart?" ("snape_01") + gen ".............." ("base", xpos="far_left", ypos="head") + gen "How about a secret password?" ("base", xpos="far_left", ypos="head") + sna "A password?" ("snape_05") + gen "Yes... just ask me tomorrow: \"Who rules\"?" ("base", xpos="far_left", ypos="head") + sna "\"Who rules\"?" ("snape_01") + gen "\"Robin Williams\"!" ("grin", xpos="far_left", ypos="head") + sna "Robin Wil--... *Err*...{w=0.3} I'm sorry, who?" ("snape_05") + gen "You didn't see the \"Flubber\"? Great movie. Just came out." ("base", xpos="far_left", ypos="head") + sna "Can't say that I have..." ("snape_02") + sna "Alright then..." ("snape_06") + sna "Have a safe trip home..." + gen "Thank you. Have fun hosting the ball..." ("base", xpos="far_left", ypos="head") + sna "*Sigh*" ("snape_06") + + call hide_characters + + pause.3 + + stop music fadeout 1.0 + + call sna_chibi("stand","door","base", flip=True) + with d3 + pause.3 + + call sna_chibi("leave") + with d3 + pause.8 + + gen "............................" ("base", xpos="far_left", ypos="head") + gen "So this is it then..." ("base", xpos="far_left", ypos="head") + + call play_music("despair") + gen "Seems like my time in this world has come to an end..." ("base", xpos="far_left", ypos="head") + gen "......................." ("base", xpos="far_left", ypos="head") + + if not public_whore_ending: + # Personal whore ending + # Writing a letter + gen "That Means I'll probably never see the girl again..." ("base", xpos="far_left", ypos="head") + gen "..........." ("base", xpos="far_left", ypos="head") + gen "When I first met her she was so annoying..." ("base", xpos="far_left", ypos="head") + gen "to be honest, all the training I put her through changed very little in that regard..." ("base", xpos="far_left", ypos="head") + gen "But we did have a few special moments together..." ("base", xpos="far_left", ypos="head") + gen ".............." ("base", xpos="far_left", ypos="head") + gen "......................" ("base", xpos="far_left", ypos="head") + gen "It doesn't feel right to leave her without saying goodbye properly..." ("base", xpos="far_left", ypos="head") + gen "And yet I don't want to miss my chance to sneak out unnoticed..." ("base", xpos="far_left", ypos="head") + gen "I don't like long goodbyes..." ("base", xpos="far_left", ypos="head") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "I suppose I could leave her a note or something..." ("base", xpos="far_left", ypos="head") + + gen "Let's see..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("paperwork") + with d3 + gen "\"Dear\"..." ("base", xpos="far_left", ypos="head") + call gen_chibi("paperwork_idle") + with d3 + gen "*Hmm*... How should I address her?" ("base", xpos="far_left", ypos="head") + + menu: + gen "Dear..." ("base", xpos="far_left", ypos="head") + "\"Miss Granger\"": + $ word_01 = "Hermione Granger" + "\"Nasty whore\"": + $ word_01 = "Nasty whore" + "\"Slut\"": + $ word_01 = "Slut" + "\"Cumbucket\"": + $ word_01 = "Cumbucket" + "\"Human female\"": + $ word_01 = "Human female" + "\"friend\"": + $ word_01 = "Friend" + + call gen_chibi("paperwork") + with d3 + gen "Yes, \"Dear [word_01]\" fits perfectly..." ("base", xpos="far_left", ypos="head") + "*scribble-scribble-scribble*" + "*scribble-scribble-scribble*" + gen "...{w=0.4} \" it is time for me to go back\"..." ("base", xpos="far_left", ypos="head") + call gen_chibi("paperwork_idle") + with d3 + gen "What should I write now?" ("base", xpos="far_left", ypos="head") + + menu: + gen "... time to go back..." ("base", xpos="far_left", ypos="head") + "\"home\"": + $ word_02 = "home" + "\"to the mother-ship\"": + $ word_02 = "to the mother-ship" + "\"to Dimension \"X\"": + $ word_02 = "to Dimension \"X\"" + "\"to my world\"": + $ word_02 = "to my world" + "\"To my Home Planet - Krypton\"": + $ word_02 = "to my Home Planet - Krypton" + + call gen_chibi("paperwork") + with d3 + gen "Yes, \"Time to go back [word_02]\" that will do..." ("base", xpos="far_left", ypos="head") + "*scribble-scribble-scribble*" + "*scribble-scribble-scribble*" + gen "...{w=0.4} \"farewell my little\"..." ("base", xpos="far_left", ypos="head") + call gen_chibi("paperwork_idle") + with d3 + gen "What should I write now?" ("base", xpos="far_left", ypos="head") + + menu: + gen "... farewell my little..." ("base", xpos="far_left", ypos="head") + "\"cock-hungry slut\"": + $ word_03 = "cock-hungry slut" + "\"cum receptacle\"": + $ word_03 = "cum receptacle" + "\"Girl\"": + $ word_03 = "girl" + "\"Witch\"": + $ word_03 = "witch" + + call gen_chibi("paperwork") + with d3 + gen "Yes, \"farewell my little [word_03]\" sounds about right..." ("base", xpos="far_left", ypos="head") + "*scribble-scribble-scribble*" + "*scribble-scribble-scribble*" + call gen_chibi("paperwork_idle") + with d3 + gen "And now to sign it as..." ("base", xpos="far_left", ypos="head") + + label stupid_kent: + pass + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Genie\"": + $ word_04 = "Genie" + "\"Clark Kent\"": + $ word_04 = "Clark Kent" + call gen_chibi("paperwork") + with d3 + gen "Yes, \"sincerely yours, [word_04]\"..." ("base", xpos="far_left", ypos="head") + call gen_chibi("paperwork_idle") + with d3 + gen "..........." ("base", xpos="far_left", ypos="head") + gen "No, that doesn't make any sense..." ("base", xpos="far_left", ypos="head") + jump stupid_kent + "\"Lord Voldemort\"": + $ word_04 = "Lord Voldemort" + "\"Traveller\"": + $ word_04 = "Traveller" + + call gen_chibi("paperwork") + with d3 + gen "Yes, \"[word_04]\"..." ("base", xpos="far_left", ypos="head") + call gen_chibi("sit_behind_desk") + with d3 + gen "........................" ("base", xpos="far_left", ypos="head") + gen "Yes, this should do..." ("base", xpos="far_left", ypos="head") + + gen "Well, off I go then..." ("base", xpos="far_left", ypos="head") + + call blkfade + + call gen_chibi("stand","desk","base") + hide screen bld1 + call hide_blkfade + + call gen_walk("door", "base") + pause.5 + + gen "...................." ("base", xpos="far_left", ypos="head") + gen "Agrabah... here I come..." ("base", xpos="far_left", ypos="head") + pause .5 + + call gen_chibi("leave") + pause 1 + call blkfade + + stop music fadeout 1.0 + stop bg_sounds + stop weather + + # Outskirts of Hogwarts + centered "{size=+7}{color=#cbcbcb}Outskirts of Hogwarts{/color}{/size}" + + call play_music("night_outside") + + $ dynamic_cg("ball", "173") + + pause.3 + call hide_blkfade + call ctc + + pause.5 + call play_sound("walking_on_grass") + + $ dynamic_cg("ball", "171", "172") + + gen "Severus was right..." ("base", xpos="far_left", ypos="head") + gen "The farther away I get from the school grounds..." ("base", xpos="far_left", ypos="head") + gen "The more powerful I'm starting to feel..." ("base", xpos="far_left", ypos="head") + + $ dynamic_cg("ball", "171", "172", "173") + pause.5 + + gen "I think this is far enough..." ("base", xpos="far_left", ypos="head") + gen "Time to undo the spell and go back home..." ("base", xpos="far_left", ypos="head") + gen ".........." ("base", xpos="far_left", ypos="head") + gen "...................." ("base", xpos="far_left", ypos="head") + gen "Agrabah, here I come..." ("base", xpos="far_left", ypos="head") + + if not persistent.game_complete: + # First play-through + # Fake early ending + call ctc + + show screen blkfade + with d9 + pause .5 + + play music "music/Plaint.ogg" fadein 1 fadeout 1 #SAD CREDITS MUSIC. + + centered """{size=+7}{color=#cbcbcb}Congratulations on completing the game!{/color}{/size}\n\n + {size=+5}{color=#cbcbcb}This is ending \"00\" out of \"02\".{/color}{/size}""" + + centered "{size=+7}{color=#cbcbcb}Thank you for playing!{/color}{/size}\n\n" + + $ renpy.play('sounds/scratch.ogg') + stop music + with hpunch + gen "Wait, I'm still here!" ("angry", xpos="far_left", ypos="head") + + centered "{size=+7}{color=#cbcbcb}WHAT?!{/color}{/size}" + + gen "I said I am still here, dammit!" ("angry", xpos="far_left", ypos="head") + + centered "{size=+7}{color=#cbcbcb}Oh... :({/color}{/size}" + + $ dynamic_cg("ball", "171", "172") + hide screen blkfade + with d9 + + play music "sounds/night.ogg" fadein 1 fadeout 1 #NIGHT SOUNDS. + + gen "....................." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball", "171", "172") + gen "No, I can't just leave like this!" ("base", xpos="far_left", ypos="head") + gen "I must see the girl one last time..." ("base", xpos="far_left", ypos="head") + + call play_sound("walking_on_grass") + + $ dynamic_cg("ball", "171") + + call ctc + + hide screen dynamic_cg + call blkfade + stop music fadeout 1.0 + + if not persistent.game_complete: + # First play-through + centered "{size=+7}{color=#cbcbcb}Fine whatever...{/color}{/size}" + + jump ball_ending_E2 + + +label ball_ending_E2: + # Main part of the ball event + # Event replay starts here + + call blkfade + play music "music/court-of-the-queen-by-kevin-macleod.ogg" fadein 1 fadeout 1 + + centered "{size=+7}{color=#cbcbcb}The Annual Hogwarts Autumn Ball{/color}{/size}" + + # Scene Setup + $ game.daytime = True + call update_interface_color + + hide screen bld1 + hide screen blktone + call her_chibi("hide") + + $ dynamic_cg("ball", "background") + + #Setting up Hermione's outfit. + $ hermione.equip(her_outfit_ball) + + hide hermione_main + hide screen room # MAIN BG (DAY). + + hide screen notes + with fade + pause.1 + + hide screen bld1 + hide screen blktone + call hide_blkfade + call ctc + + + gen "I better make sure to avoid being noticed..." ("base", xpos="far_left", ypos="head") + gen "......................" ("base", xpos="far_left", ypos="head") + gen "That's a whole lot of people out there..." ("base", xpos="far_left", ypos="head") + gen "How big is this school?!" ("base", xpos="far_left", ypos="head") + gen ".................." ("base", xpos="far_left", ypos="head") + gen ".................................." ("base", xpos="far_left", ypos="head") + gen "I don't see the girl anywhere..." ("base", xpos="far_left", ypos="head") + gen ".............." ("base", xpos="far_left", ypos="head") + gen "......................" ("base", xpos="far_left", ypos="head") + gen "She has got to be here somewhere..." ("base", xpos="far_left", ypos="head") + gen "................" ("base", xpos="far_left", ypos="head") + gen "................................." ("base", xpos="far_left", ypos="head") + + call blktone_top + + if public_whore_ending: + # Public whore ending + # Students talking + mal "Have you heard that rumour about Hermione Granger?" + mal2 "That she is a major slut?" + mal "*huh*? No, that's not a rumour, that's a fact." + mal "The rumour was that she is being paid in house points to whore herself out." + mal2 "*Hmm*... I don't believe that. I think she is just a slut." + fem "Who's a slut?" ("base", xpos="far_left", ypos="head") + mal "Oh, hey you..." + fem "So, who's a slut?" ("base", xpos="far_left", ypos="head") + mal2 "Hermione Granger..." + fem "*Tsk*! You, guys are talking about that whore again?" ("base", xpos="far_left", ypos="head") + fem "That girl jerks off a couple of dicks, gives a few blowjobs and suddenly she is the school's new sensation." ("base", xpos="far_left", ypos="head") + fem "Pathetic little muggle-born..." ("base", xpos="far_left", ypos="head") + mal "You should not be jealous of--" + fem "Jealous? Of her? Puh-lease!" ("base", xpos="far_left", ypos="head") + fem "I have no use for popularity that comes from putting cocks in my mouth!" ("base", xpos="far_left", ypos="head") + mal "Well, if you ever change your mind..." + fem "*huh*?" ("base", xpos="far_left", ypos="head") + mal "Feel free to use me as a stepping stone on your road to fame!" + fem "You wish!" ("base", xpos="far_left", ypos="head") + mal2 "Hey, guys, I think that's Hermione over there!" + mal "You're right!" + mal2 "Do you think if I ask her to the dance, I might get lucky later?" + mal "Not if I ask her first!" + call play_sound("walking") + pause 2 + mal2 "Hey, wait up! That was my idea!" + call play_sound("running") + pause 2 + fem "Guys...?" ("base", xpos="far_left", ypos="head") + fem "........................." ("base", xpos="far_left", ypos="head") + fem "*Tsk*... Men......" ("base", xpos="far_left", ypos="head") + + else: + # Personal whore ending + # Students talking + mal "{size=-4}Have you heard the rumours?{/size}" + mal2 "{size=-4}Yeah, they say Hermione took one for the team.{/size}" + fem "{size=-4}Whoring herself out for house points!{/size}" ("base", xpos="far_left", ypos="head") + fem "{size=-4}How disgraceful!{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}Those are just rumours!{/size}" + fem "{size=-4}I think it's more than just that...{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}Oh, shut up! You are just jealous.{/size}" + mal2 "{size=-4}Yeah, you wish you had Hermione's courage!{/size}" + mal "{size=-4}Exactly! No one is more loyal to Gryffindor than she is!{/size}" + mal "{size=-4}Even if the rumours are true, what does it matter?{/size}" + mal "{size=-4}Thanks to her sacrifice our house will be getting the cup this year!{/size}" + mal2 "{size=-4}Yeah, and what did you ever do for our house?{/size}" + fem "{size=-4}I..... But....{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}Exactly! So don't you bad-mouth Hermione!{/size}" + mal2 "{size=-4}You said it, man.{/size}" + fem "{size=-4}*Pouting*{/size}" ("base", xpos="far_left", ypos="head") + + hide screen bld1 + call hide_blktone_top + call ctc + + $ dynamic_cg("ball/intro", "background", "bloom", "foreground", "overlay") + pause 1.0 + gen "(*Hmm*... I don't see her...)" ("base", xpos="far_left", ypos="head") + pause 1.0 + $ dynamic_cg("ball/intro", "background", "bloom", "hermione", "foreground", "overlay") + pause 0.5 + gen "(There she is!)" ("grin", xpos="far_left", ypos="head") + + mal "Hermione, hey..." + her "Oh, hello." ("base", "base", "base", "mid", ypos="head", flip=False) + mal "You look... so beautiful tonight, Hermione." + her "Thank you, you are too sweet." ("base", "closed", "base", "mid") + mal2 "Can I have the next dance?" + mal "What? Back off buddy, I was here first!" + mal2 "Like hell you were!" + mal "Alright, pal! That does it!" + mal2 "I'm not your \"pal\", buddy!" + her ".............." ("open", "wide", "worried", "stare") + + call blktone_top + stop music fadeout 3.0 + gen "(Here is my chance!)" ("base", xpos="far_left", ypos="head") + gen "Psst! Girl!" ("base", xpos="far_left", ypos="head") + her "???" ("upset", "base", "base", "mid") + gen "Girl, it's me! Over here!" ("base", xpos="far_left", ypos="head") + her "[genie_name]?" ("open", "base", "base", "mid") + gen "Shush! Keep your voice down and follow me." ("base", xpos="far_left", ypos="head") + her "Oh?" ("open", "base", "base", "mid") + + $ dynamic_cg("ball/bj", "background") + call hide_blktone_top + call ctc + + her "Sir, what is going on? Why are you... lurking in the shadows?" ("upset", "base", "base", "mid") + gen "Just be quiet and listen for a second! Can you do that for me?" ("base", xpos="far_left", ypos="head") + call play_music("playful_tension") # SEX THEME. + her "Yes, sir..." ("upset", "base", "base", "mid") + gen "Well, here is the thing..." ("base", xpos="far_left", ypos="head") + gen "There is something you need to kn--" ("base", xpos="far_left", ypos="head") + her "Of course sir!" ("grin", "happy", "base", "mid",cheeks="blush") + gen "What?" ("base", xpos="far_left", ypos="head") + her "Let's just make this quick, alright?" ("soft", "narrow", "base", "R_soft",cheeks="blush") + gen "Let's make what quick?" ("angry", xpos="far_left", ypos="head") + her "You want me to thank you for the dress, don't you, sir?" ("base", "narrow", "base", "mid_soft",cheeks="blush") + gen "The dress? No, no that's not why I am here." ("base", xpos="far_left", ypos="head") + her "It is fine, sir. I do not mind." ("soft", "narrow", "base", "R_soft",cheeks="blush") + gen "Listen to me, girl! I am not who you think--" ("base", xpos="far_left", ypos="head") + her "Please, sir, let me suck on your cock a little." ("open_tongue", "narrow", "worried", "mid_soft",cheeks="blush") + gen "*Gh*--!!!" ("angry", xpos="far_left", ypos="head") + her "Just a little will do. Please? I'm begging you..." ("open_tongue", "narrow", "worried", "mid_soft",cheeks="blush") + gen "Damn you, you damn witch!" ("angry", xpos="far_left", ypos="head") + gen "Stop this! I really need to talk to you!" ("angry", xpos="far_left", ypos="head") + her "Well of course, sir." ("base", "narrow", "base", "mid_soft",cheeks="blush") + her "Put your dick in my mouth and talk to me." ("open_tongue", "narrow", "worried", "mid_soft",cheeks="blush") + her "Talk dirty to me..." + gen "*growl*!" ("angry", xpos="far_left", ypos="head") + gen "*Sigh*...." ("base", xpos="far_left", ypos="head") + gen "Fine, have it your way..." ("base", xpos="far_left", ypos="head") + gen "But you are abusing your power, girl!" ("base", xpos="far_left", ypos="head") + her "*Giggle*!" ("crooked_smile", "happyCl", "worried", "mid",cheeks="blush") + gen "And after we're done, we'll have that talk!" ("base", xpos="far_left", ypos="head") + + show screen blkfade + with d7 + + her "*Slurp*! *Slurp*! *Slurp*!" + gen "................." ("base", xpos="far_left", ypos="head") + + hide screen bld1 + hide screen blkfade + $ dynamic_cg("ball/bj", "background", "base", "sweat") + call ctc + + her "*Slurp*! *Gulp*! *Slurp*!" + her "*Slurp*--" + $ dynamic_cg("ball/bj", "background", "base2", "sweat2") + her "*huh*.........." + her "...................." + $ dynamic_cg("ball/bj", "background", "base", "sweat") + her "*Slurp*! *Gulp*! *Slurp*!" + gen "Yes... Like that.... oh... yes..." ("base", xpos="far_left", ypos="head") + her "*Gulp*! *Slurp*! *Slurp*!" + her "*Gulp*--" + $ dynamic_cg("ball/bj", "background", "base2", "sweat2") + her "...................." #LOOKING BACK + gen "Just keep going girl." ("base", xpos="far_left", ypos="head") + gen "I will let you know if I see someone coming..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base2", "eyes_up2", "mouth_open2", "sweat2") + her "Oh... I'm not worried about that, sir..." + gen "*Hmm*?" ("base", xpos="far_left", ypos="head") + her "They are supposed to make the announcement soon..." + $ dynamic_cg("ball/bj", "background", "base", "sweat") + her "*Slurp*! *Gulp*! *Slurp*!" + gen "The announcement?" ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Slurp*!" + her "*Slurp*--" + $ dynamic_cg("ball/bj", "background", "base2", "eyes_up2", "mouth_open2", "sweat2") + her "Yes. About the coronation..." + $ dynamic_cg("ball/bj", "background", "base", "sweat") + her "*Gulp*! *Slurp*! *Gulp*!" + gen "What...?" ("base", xpos="far_left", ypos="head") + her "*Slurp*--" + $ dynamic_cg("ball/bj", "background", "base2", "eyes_closed2", "mouth_open2", "sweat2") + her "The Hogwarts autumn ball queen coronation, sir." + gen "Oh... Is that a thing?" ("base", xpos="far_left", ypos="head") + gen "Any chance you might be chosen?" ("base", xpos="far_left", ypos="head") + her "A chance?" + her "It's already been decided, sir." + gen "What?" ("base", xpos="far_left", ypos="head") + her "Oh, I mean I hope I will win..." + her "But since I am the one who organised the whole thing, it is only fair..." + her "Wouldn't you agree, sir?" + gen "Well... Sounds like cheat--" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base", "eyes_up", "sweat") + her "*Slurp*! *Slurp*! *Slurp*!" + $ dynamic_cg("ball/bj", "background", "base2", "eyes_up2", "mouth_smile2", "sweat2") + her "Wouldn't you agree, sir?" + gen "*Err*..." ("base", xpos="far_left", ypos="head") + her "Wouldn't you?" + with hpunch + $ dynamic_cg("ball/bj", "background", "base3", "blush3") + her "{size=+7}*gobble*!{/size}" #DEEPTHROATING + gen "{size=+7}Oh, yes!!!{/size}" ("angry", xpos="far_left", ypos="head") + her "*gobble-gobble-gobble*!" + her "*gobble*" + $ dynamic_cg("ball/bj", "background", "base2", "eyes_up2", "mouth_smile2", "sweat2") + her "Good. I knew you would approve." + $ dynamic_cg("ball/bj", "background", "base", "eyes_up", "sweat") + her "*Slurp*! *Slurp*! *Gulp*!" + gen "Oh... This is amazing..." ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Gulp*!" + + sna "*Ahem*!" + sna "Attention, maggots!" + gen "(Snape?)" ("base", xpos="far_left", ypos="head") + sna "Quiet down everyone!" + sna "It is time to announce who will be this year's queen of the annual Hogwarts autumn ball." + + her "*Slurp*--" + $ dynamic_cg("ball/bj", "background", "base2", "sweat2") + her "Oh no! I think they are about to start..." + $ dynamic_cg("ball/bj", "background", "base2", "eyes_up2", "mouth_open2", "sweat2") + her "But I can't just leave you in this...{w=0.5} condition, sir." + + $ dynamic_cg("ball/bj", "background", "base2", "eyes_down2", "sweat2") + her "What should I do?" + gen "Just go, girl. We can finish this up later." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base2", "eyes_up2", "mouth_open2", "sweat2") + her "But... But you got me this dress, sir, and..." + her ".........." + $ dynamic_cg("ball/bj", "background", "base2", "eyes_closed2", "mouth_open2", "sweat2") + her "No, I can't just leave you like this, sir." + $ dynamic_cg("ball/bj", "background", "base2", "eyes_closed2", "mouth_smile2", "sweat2") + gen "Fine! Finish the job then." ("base", xpos="far_left", ypos="head") + gen "If you put some effort into this we'll be done in no time." ("base", xpos="far_left", ypos="head") + gen "I believe in you, girl." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base2", "eyes_closed2", "sweat2") + her "*Hmm*..." + $ dynamic_cg("ball/bj", "background", "base2", "eyes_up2", "mouth_open2", "sweat2") + her "Then you must promise me something, sir." + gen "Yes, what is it?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base2", "eyes_up2", "mouth_happy2", "sweat2") + her "Please, do not restrain yourself." + gen "Heh... I rarely do, girl." ("grin", xpos="far_left", ypos="head") + + $ dynamic_cg("ball/bj", "background", "base2", "sweat2") + sna "This year's Hogwarts Autumn Ball queen is..." + sna "Let's see... Can't open the damn envelope..." + $ dynamic_cg("ball/bj", "background", "base2", "eyes_closed2", "sweat2") + her "Alright, sounds like we have no time to lose." + + if public_whore_ending: + # Public whore ending + $ dynamic_cg("ball/bj", "background", "base", "sweat") + her "*Slurp*! *Gulp*! *Slurp*!" + gen "Yes! That's the spirit!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base", "lashes", "sweat", "sperm") + her "*Gulp*! *Slurp*! *Gulp*!" + her "*Slurp*--" + $ dynamic_cg("ball/bj", "background", "base2", "mouth_open2", "eyes_up2", "blush2", "sweat2") + her "Sir, is this really the proper way to treat one of your students?" + gen "*huh*?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base", "lashes", "sweat", "sperm") + her "*Slurp*! *Gulp*! *Gulp*!" + her "*Slurp*--" + $ dynamic_cg("ball/bj", "background", "base2", "eyes_closed2", "blush2", "sweat2") + her "I am like a fragile and impressionable little dove..." + her "Entrusted to your care by my parents..." + $ dynamic_cg("ball/bj", "background", "base2", "mouth_grimmace2", "eyes_up2", "brows2", "blush2", "sweat2") + her "You were supposed to treat me {i}right{/i}, sir..." + her "And what did you do instead?" + gen "*Ahem*! Let me repeat my previous statement..." ("base", xpos="far_left", ypos="head") + gen "{size=+7}\"*huh*?\"{/size}" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base2", "mouth_happy2", "eyes_down2", "brows2", "blush2", "sweat2") + her "You put your penis in my innocent mouth, sir!" + $ dynamic_cg("ball/bj", "background", "base", "eyes_closed", "blush", "sweat") + her "*Slurp*! *Slurp*! *Slurp*!" + gen "Oh, I see! Yes, I like this innocent girl act!" ("grin", xpos="far_left", ypos="head") + her "*Slurp*--" + $ dynamic_cg("ball/bj", "background", "base2", "mouth_open2", "eyes_up2", "blush2", "sweat2") + her "You pretended to be kind to me..." + her "You bought me this dress..." + $ dynamic_cg("ball/bj", "background", "base2", "eyes_closed2", "blush2", "sweat2") + her "And then........." + $ dynamic_cg("ball/bj", "background", "base", "eyes_up", "sweat") + her "*Slurp*! *Gulp*! *Gulp*!" + her "*Slurp*--" + $ dynamic_cg("ball/bj", "background", "base2", "eyes_closed2", "blush2", "sweat2") + her "You took advantage of me, sir!" + her "Tricked me into sucking your big cock!" + gen "Oh... Yes! You're good!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base2", "mouth_grimmace2", "lashes2", "blush2") + her "I'm supposed to be enjoying the ball with my classmates right now..." + $ dynamic_cg("ball/bj", "background", "base2", "mouth_grimmace2", "brows2", "blush2") + her "But what am I doing instead?" + $ dynamic_cg("ball/bj", "background", "base", "eyes_up") + her "*Slurp*! *Slurp*! *Slurp*!" + gen "Oh..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base", "eyes_closed", "brows", "blush") + her "*Slurp*! *Gulp*! *Slurp*! *Slurp*! *Slurp*!" + her "*Slurp*--" + $ dynamic_cg("ball/bj", "background", "base2", "eyes_closed2", "mouth_open2", "brows2", "blush2") + her "I'm on my knees, sucking off my headmaster!" + $ dynamic_cg("ball/bj", "background", "base", "eyes_closed", "brows", "blush") + her "*Slurp*! *Slurp*! *Gulp*!" + gen "Oh, yes you are, you little slut!" ("base", xpos="far_left", ypos="head") + her "*Slurp*! *Slurp*! *Slurp*!" + her "*Slurp*! *Slurp*! *Gulp*!" + gen "You are really good at this dirty talk stuff..." ("angry", xpos="far_left", ypos="head") + gen "You should try writing a fairy tale, or something..." ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base", "eyes_up", "blush") + her "*Slurp*--" + $ dynamic_cg("ball/bj", "background", "base2", "mouth_open2", "eyes_up2", "blush2") + her "Oh, but I wouldn't know how, sir..." + $ dynamic_cg("ball/bj", "background", "base2", "eyes_closed2", "blush2") + gen "You nasty little thing!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base", "eyes_closed", "brows", "blush") + her "*Slurp*! *Slurp*! *Gulp*! *Slurp*! *Slurp*!" + + sna "Miss Granger?" + sna "{size=-4}(Where is that girl?){/size}" + ">A murmur starts running through the crowd of students." + + her "*Slurp*! *Slurp*! *Gulp*!" + her "*Gulp*--" + $ dynamic_cg("ball/bj", "background", "base2", "mouth_open2", "eyes_up2", "blush2") + her "Sir, am I being an obedient little slut?" + gen "Yes you are, girl!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base2", "mouth_grimmace2", "brows2", "blush2") + her "Would you say that I am a good student?" + gen "I would say that you are an excellent student, girl!" ("grin", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base2", "eyes_closed2", "blush2") + her "Good..." + $ dynamic_cg("ball/bj", "background", "base2", "mouth_smile2", "eyes_down2", "brows2", "blush2") + her "I'm making my mommy and my daddy proud!" + $ dynamic_cg("ball/bj", "background", "base", "eyes_closed", "blush") + her "*Slurp*! *Slurp*! *Gulp*!" + gen "Oh, girl, you are killing me!" ("angry", xpos="far_left", ypos="head") + her "*Slurp-slurp-slurp-slurp*!!!" + gen "Oh, yes! Like that!" ("angry", xpos="far_left", ypos="head") + her "*Slurp*--" + $ dynamic_cg("ball/bj", "background", "base2", "mouth_grimmace2", "brows2", "blush2") + her "Do I deserve a reward, sir?" + $ dynamic_cg("ball/bj", "background", "base2", "mouth_happy2", "eyes_up2", "blush2") + her "I would like you to reward me with your cum, please." + gen "*Grh*!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base", "eyes_closed", "brows", "blush") + her "*Slurp*! *Slurp*! *Slurp*!" + gen "*Geh*! Almost...!" ("angry", xpos="far_left", ypos="head") + her "{size=+5}*Slurp-gulp-slurp-slurp*!!!{/size}" + gen "{size=+5}Here it com--{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base", "eyes_down", "brows", "blush") + her "*Slurp*.........................." + her "!!!" + call ctc + + call blkfade + $ dynamic_cg("ball/bj", "background", "base4", "lashes4", "brows4", "blush4") + gen "{size=+5}What the...!? Why did you stop?!{/size}" ("angry", xpos="far_left", ypos="head") + gen "{size=+5}What the hell are you doing--{/size}" ("angry", xpos="far_left", ypos="head") + call hide_blkfade + call ctc + + her "{size=+5}Cum for me, sir! Cum for me!{/size}" + with hpunch + gen "{size=+5}What the hell is this?!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base4", "eyes_up4", "mouth_smile4", "brows4", "blush4") + her "{size=+5}Cum for me, sir! I want your hot cum on me!{/size}" + gen "*Argh*! You whore!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base4", "eyes_up4", "lashes4", "brows4", "blush4") + her "{size=+5}Yes I am!{/size}" + her "{size=+5}Nothing but a cum hungry whore, sir!{/size}" + with hpunch + gen "{size=+7}*Argh*!!!{/size}" ("angry", xpos="far_left", ypos="head") + gen "{size=+7}Take this, then!!!{/size}" ("angry", xpos="far_left", ypos="head") + + show screen white + pause .1 + hide screen white + with hpunch + + gen "{size=+7}*ARGH*!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base4", "eyes_up4", "lashes4", "blush4") + her "{size=+5}*Ah*! Yes, sir! Yes! cum for me!{/size}" + + show screen white + pause.1 + hide screen white + pause.2 + show screen white + pause .1 + hide screen white + with hpunch + + gen "{size=+7}*ARGH*!{/size}" ("angry", xpos="far_left", ypos="head") + gen "{size=+7}*Argh*!!! YES!!!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base4", "lashes4", "blush4") + her "*Ah*... yes... *ah*..." + gen "Oh... *ght*... *panting*" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base4", "eyes_up4", "lashes4", "blush4") + her "Thank you sir..." + $ dynamic_cg("ball/bj", "background", "base4", "mouth_smile4", "sperm4", "lashes4", "blush4") + her "..........................................." + call ctc + + call blkfade + pause.5 + + gen "What on earth just happened, girl?!" ("base", xpos="far_left", ypos="head") + her "What do you mean, sir?" ("soft", "narrow", "base", "R_soft",cheeks="blush", ypos="head", flip=False) + $ dynamic_cg("ball/bj", "background") + call hide_blkfade + + gen "Do I really need to point this out to you?" ("base", xpos="far_left", ypos="head") + gen "{size=+5}Do I really?{/size}" ("angry", xpos="far_left", ypos="head") + her "Oh... You mean the hair thing...?" ("soft", "narrow", "base", "R_soft",cheeks="blush") + gen "Yes... \"the hair thing\"..." ("base", xpos="far_left", ypos="head") + her "Well, what did you expect me to do, sir?" ("crooked_smile", "happyCl", "worried", "mid",cheeks="blush") + gen "Literally anything..." ("base", xpos="far_left", ypos="head") + gen "... but {size=+7}THAT!{/size}" ("angry", xpos="far_left", ypos="head") + her "But... I need to look my best for the coronation..." ("open", "base", "base", "mid") + gen "And a hairdo full of cum is supposed to ensure that?" ("base", xpos="far_left", ypos="head") + her "Well... yes..." ("soft", "narrow", "base", "R_soft",cheeks="blush") + her "You see, cum is a great hair fixative and--" ("open", "base", "base", "mid") + + stop music fadeout 1.0 + sna "Miss Granger..................?" + sna "You are about to miss your own coronation, girl!" + sna "{size=-4}Not that I care...{/size}" + + her "The coronation! I must go now!" ("open", "wide", "worried", "stare") + call play_sound("running") + pause 3 + + gen ".............................." ("base", xpos="far_left", ypos="head") + gen "................" ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + with hpunch + gen "{size=+9}WHAT THE HELL...?!!{/size}" ("angry", xpos="far_left", ypos="head") + call ctc + + call blkfade + + else: + $ dynamic_cg("ball/bj", "background", "base3", "blush3") + with hpunch + her "{size=+5}*GOBBLE*!{/size}" + gen "{size=+5}Yeeeeeeeeeees!{/size}" ("angry", xpos="far_left", ypos="head") + + sna "There! *Hmm*...?" + sna "(Well of course... Why am I not surprised?)" + $ dynamic_cg("ball/bj", "background", "base3", "blush3", "eyes_stare3") + sna "Miss Hermione Granger of the Gryffindor house..." + ">Loud applause and cheering erupts from the crowd." + $ dynamic_cg("ball/bj", "background", "base3", "blush3") + sna "Miss Granger, if you would be so kind to grace us with your presence..." + + her "*gobble-gobble-gobble*!" + gen "Yes! That's a good slut!" ("base", xpos="far_left", ypos="head") + her "{size=+5}*gobble-gobble-gobble*!!!{/size}" + gen "Yes. Now, move your tongue..." ("base", xpos="far_left", ypos="head") + gen "Lick my balls, girl. Come on!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3", "eyes_closed3", "blush3") + her "*gobble*! *Lick*! *Lick*! *gobble*!" + gen "Yes... Like that." ("base", xpos="far_left", ypos="head") + gen "What a good whore you are..." ("base", xpos="far_left", ypos="head") + her "*Lick*! *Lick*! *gobble*! *Lick*!" + gen "Now look up at me whore." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3", "eyes_up3", "blush3") + her "???................" + + call play_sound("spitting") + show screen white + pause.3 + hide screen white + with vpunch + $ dynamic_cg("ball/bj", "background", "base3", "eyes_stare3", "blush3", "spit_base3") + call ctc + + her "*gobble*??!" + gen "No, don't you stop now!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3", "blush3", "brows_angry3", "spit_base3") + her "*gobble-gobble-gobble*!" + gen "Yes, whore! Yes!" ("base", xpos="far_left", ypos="head") + + sna "Miss Granger?" + sna "If you would, please..." + sna "Miss Granger?" + + call play_sound("spitting") + show screen white + pause.3 + hide screen white + with vpunch + $ dynamic_cg("ball/bj", "background", "base3", "eyes_stare3", "blush3", "spit_base3", "spit_forehead3") + call ctc + + her "!!!!!!!!!!!" + her "......................................?" + gen "What's the matter, my little spit bucket?" ("base", xpos="far_left", ypos="head") + gen "Keep sucking my cock!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3", "blush3", "tears_base3", "brows_angry3", "spit_base3", "spit_forehead3") + her "*gobble-gobble-gobble*!" + gen "Yes. Good whore." ("base", xpos="far_left", ypos="head") + her "*gobble-gobble-gobble*!" + gen "Keep deep throating me like that, yes!" ("base", xpos="far_left", ypos="head") + her "*gobble*! *gobble*! *gobble*!" + gen "The balls, girl! Don't forget to work your tongue!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3", "blush3", "tears_base3", "spit_base3", "spit_forehead3") + her "*gobble*! *Lick*! *Lick*!" + gen "Yes! Keep at it and we will be done here in no time!" ("base", xpos="far_left", ypos="head") + gen "Oh, I almost forgot..." ("base", xpos="far_left", ypos="head") + call play_sound("spitting") + pause.3 + with vpunch + $ dynamic_cg("ball/bj", "background", "base3", "blush3", "eyes_stare3", "tears_base3", "brows_angry3", "spit_base3", "spit_forehead3", "spit_nose3") + call ctc + + her "..........................." + her ".................." + $ dynamic_cg("ball/bj", "background", "base3", "blush3", "eyes_happycl3", "tears_base3", "brows_angry3", "spit_base3", "spit_forehead3", "spit_nose3") + her "*gobble*! *gobble*! *Lick*... *gobble*!" + gen "you just look so pretty with your face all covered in my spit!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3", "blush3", "tears_base3", "brows_angry3", "spit_base3", "spit_forehead3", "spit_nose3") + her "*gobble*! *gobble*! *Lick*... *gobble*!" + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + her "*gobble*! *gobble*! *Lick*... *gobble*!" + gen "Maybe we should show your pretty face to everyone?" ("base", xpos="far_left", ypos="head") + gen "Should I call some of your classmates over?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3", "blush3", "eyes_stare3", "tears_base3", "brows_angry3", "spit_base3", "spit_forehead3", "spit_nose3") + her "!!!!!!!!!!!!!!!" + gen "Relax..." ("base", xpos="far_left", ypos="head") + gen "I want to get caught as much as you do." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3", "blush3", "tears_base3", "brows_angry3", "spit_base3", "spit_forehead3", "spit_nose3") + + sna "Miss Granger?" + sna "{size=-4}Where is that girl?{/size}" + ">A murmur starts running through the crowd of students." + + gen "Alright, listen up, whore." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3", "blush3", "eyes_squintup3", "tears_base3", "spit_base3", "spit_forehead3", "spit_nose3") + her "*gobble*?" + gen "I need you to stay still now." ("base", xpos="far_left", ypos="head") + her "???" + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "eyes_up3", "tears_base3", "spit_base3", "spit_forehead3", "spit_nose3") + gen "Yes, just like that." ("base", xpos="far_left", ypos="head") + her "................" + + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "eyes_dead3", "tears_base3", "spit_base3", "spit_forehead3", "spit_nose3") + her "....................................." + gen "I plan to choke you a little bit with my cock..." ("base", xpos="far_left", ypos="head") + gen "It'll be fun... just relax..." ("base", xpos="far_left", ypos="head") + her "......................................" + gen "Your throat is the best, girl." ("base", xpos="far_left", ypos="head") + her "..........." + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "eyes_squintdead3", "tears_base3", "spit_base3", "spit_forehead3", "spit_nose3") + gen "So warm and tight..." ("base", xpos="far_left", ypos="head") + her "............................................." + her "...................." + her "......." + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "eyes_up3", "tears_base3", "brows3", "spit_base3", "spit_forehead3", "spit_nose3") + with hpunch + her "!!!" + gen "I know, I know, you can't really breathe..." ("base", xpos="far_left", ypos="head") + gen "But that's what makes this so much fun!" ("grin", xpos="far_left", ypos="head") + + with hpunch + her "{size=+7}!!!!!!!!!!!!!!!!{/size}" + gen "Stop struggling, slut. You are not going anywhere!" ("base", xpos="far_left", ypos="head") + with hpunch + her "{size=+9}!!!!!!!!!!!!!!!!{/size}" + + sna "Miss Granger..................?" + sna "You are about to miss your own coronation, girl!" + + gen "Heh..." ("grin", xpos="far_left", ypos="head") + gen "Your queen is right here..." ("grin", xpos="far_left", ypos="head") + gen "Choking on my engorged cock!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "eyes_happycl3", "tears_base3", "brows3", "spit_base3", "spit_forehead3", "spit_nose3") + her "{size=+7}!!!!!!!!!!!!!!!!{/size}" + gen "Oh. You are turning blue, love." ("base", xpos="far_left", ypos="head") + gen "Will you be alright?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "tears_base3", "brows3", "spit_base3", "spit_forehead3", "spit_nose3") + her "{size=+9}!!!!!!!!!!!!!!!!........................{/size}" + gen "Look up whore!" ("base", xpos="far_left", ypos="head") + her "{size=+3}........................{/size}" + gen "I said, look at me!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "eyes_up3", "tears_base3", "brows3", "spit_base3", "spit_forehead3", "spit_nose3") + her "{size=+9}??!.....................{/size}" + + call play_sound("spitting") + pause.5 + + with vpunch + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "eyes_up3", "tears_base3", "brows3", "spit_base3", "spit_forehead3", "spit_nose3", "spit_on_eye3") + her "{size=+9}!!!!!!!!!!!!!!!!!!{/size}" + + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "eyes_closed3", "tears_base3", "brows3", "spit_base3", "spit_forehead3", "spit_nose3", "spit_eye3") + her "...................................................................................." + gen "There you go! You wear it well!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "eyes_closed3", "tears_crying3", "brows3", "spit_base3", "spit_forehead3", "spit_nose3", "spit_eye3") + her "...........................................................*SOB!*" + with hpunch + gen "*Gght*!" ("angry", xpos="far_left", ypos="head") + gen "Here it comes!" ("angry", xpos="far_left", ypos="head") + gen "I know you are fighting for air down there..." ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "eyes_dead3", "tears_crying3", "brows3", "spit_base3", "spit_forehead3", "spit_nose3", "spit_eye3") + gen "But all you will get from me is a load of hot cum!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3_alt", "cheeks3", "blush3", "eyes_stare3", "tears_crying3", "brows3", "spit_base3", "spit_forehead3", "spit_nose3", "spit_eye3") + with hpunch + her "{size=+9}*GHT*!!!!!!!!!!!!!!!!{/size}" + with hpunch + gen "{size=+9}*ARGH*!{/size}" ("angry", xpos="far_left", ypos="head") + with hpunch + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "eyes_dead3", "tears_crying3", "brows3", "spit_base3", "spit_forehead3", "spit_nose3", "spit_eye3", "sperm3") + her "{size=+9}*GULP-GULP-GULP-GULP-GULP*!!!{/size}" + gen "{size=+5}Yes, whore! Drink my cum!{/size}" ("angry", xpos="far_left", ypos="head") + her "*GULP-GULP-GULP-GULP*......" + with hpunch + gen "Not done yet!{w=0.3} Not... done... *Argh!*" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "tears_crying3", "brows3", "spit_base3", "spit_forehead3", "spit_nose3", "spit_eye3", "sperm3") + her "{size=-4}*Gulp*! *Gulp*! *Gulp...*{/size}" + gen "Oh, yes..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/bj", "background", "base3_alt", "blush3", "mascara3", "tears_crying3", "brows3", "spit_base3", "spit_forehead3", "spit_nose3", "spit_eye3") + her "...................................................." + gen "Well, I think that was the last of it--" ("base", xpos="far_left", ypos="head") + with hpunch + gen "{size=+5}*huh*?!{/size}" ("angry", xpos="far_left", ypos="head") + call blkfade + + stop music fadeout 1.0 + gen "Hey, what are you--" ("angry", xpos="far_left", ypos="head") + ">Hermione gets up abruptly and runs off without saying a word..." + call play_sound("running") + pause 3 + gen "*Hmm*...?" ("base", xpos="far_left", ypos="head") + gen "Oh, that's right... The coronation thing..." ("base", xpos="far_left", ypos="head") + gen "............." ("base", xpos="far_left", ypos="head") + + pause 1.5 + + if public_whore_ending: + # Public whore ending + sna "Miss Granger...?" ("snape_03", ypos="head") + sna "So you decided to show up after all." ("snape_04") + sna "What an unpleasant surprise..." ("snape_03") + + her "Professor..." ("upset", "base", "base", "mid", ypos="head", flip=False) + sna "Well, go ahead then..." ("snape_10") + sna "Here is the tiara..." + + her "Professor..." ("upset", "base", "base", "mid") + + sna "And the stage is yours..." + her "Thank you, professor." ("base", "closed", "base", "mid") + pause.7 + + hide screen blkfade + $ dynamic_cg("ball/speech", "background", "base", "overlay") + + call play_sound("applause") + call ctc + + her "..............." + her ".................................." + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "eyes_closed", "overlay") + + play music "music/court-of-the-queen-by-kevin-macleod.ogg" fadein 1 fadeout 1 + her "Hello, everyone!" + her "Thank you for making me your ball queen for two years in a row!" + + show screen blktone + gen "!!!" ("base", xpos="far_left", ypos="head") + gen "Her hairdo looks perfect!" ("base", xpos="far_left", ypos="head") + gen "I suppose I was wrong and--" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "eyes_closed", "cum0", "overlay") + gen "Nope, there it is!" ("angry", xpos="far_left", ypos="head") + gen "Dripping down behind her ear!" ("angry", xpos="far_left", ypos="head") + hide screen blktone + + her "I would like to dedicate my speech to every girl in this room..." + + show screen blktone + gen "What was she thinking pulling a stunt like that?" ("angry", xpos="far_left", ypos="head") + hide screen blktone + + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "eyes_squint", "cum1", "overlay") + her "I shall not go as far as to say that I do not deserve this honour..." + her "Because I think I do..." + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "cum2", "overlay") + her "But I am still very grateful to stand here before all of you tonight..." + + show screen blktone + mal "{size=-4}*huh*?{/size}" + mal "{size=-4}What's that stuff on her forehead you wager?{/size}" + mal2 "{size=-4}Sweat...?{/size}" + mal "{size=-4}*Hmm*... Probably...{/size}" + hide screen blktone + + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "eyes_squint", "cum3", "overlay") + her "I would especially like to thank our esteemed teachers for their hard work." + + show screen blktone + gen "Doesn't she feel it by now?!" ("angry", xpos="far_left", ypos="head") + gen "She'd better cut her speech short!" ("angry", xpos="far_left", ypos="head") + hide screen blktone + + her "Hogwarts truly did become a second home for all of us..." + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "eyes_squint", "cum4", "overlay") + her "I know that I speak for every student in this building when I say this." + show screen blktone + + mal "{size=-4}That doesn't look like sweat though...{/size}" + mal2 "{size=-4}Yeah...{/size}" + mal2 "{size=-4}Some weird goo seeping out of her hair...{/size}" + fem "{size=-4}Are you guys really {i}that{/i} dim?{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}What?{/size}" + fem "{size=-4}That's cum... obviously.{/size}" ("base", xpos="far_left", ypos="head") + mal2 "{size=-4}What? Bullshit, girl!{/size}" + fem "{size=-4}I think I know cum when I see it.{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}I bet you do. *Chuckle*{/size}" + fem "{size=-4}Whatever. Just take a better look...{/size}" ("base", xpos="far_left", ypos="head") + fem "{size=-4}She must've let some guy bury his cock in her hair and pump it full of semen.{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}*Hmm*... Hair fucking then? Is that a thing now?{/size}" + mal2 "{size=-4}You girls do the craziest things.{/size}" + fem "{size=-4}*Humph*! Not all of us are sluts, you know.{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}Unfortunately not...{/size}" + fem "{size=-4}\"Unfortunately\"?!{/size}" ("base", xpos="far_left", ypos="head") + fem "{size=-4}*Tsk*! You, men are so clueless about everything!{/size}" ("base", xpos="far_left", ypos="head") + fem "{size=-4}You could never build a meaningful relationship with a slut!{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}What's a \"meaningful relationship\"?{/size}" + fem "{size=-4}It's when your girl is also your best friend.{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}Oh, I don't need {i}that{/i}!{/size}" + mal "{size=-4}I already have a best friend, this ugly bugger right here.{/size}" + mal2 "{size=-4}Right back at you, mate!{/size}" + mal "{size=-4}But I sure could use a slut in my life!{/size}" + mal2 "{size=-4}What he said!{/size}" + fem "{size=-4}you guys are...{/size}" ("base", xpos="far_left", ypos="head") + fem "Such Idiots!!!" ("base", xpos="far_left", ypos="head") + hide screen blktone + + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "eyes_closed", "cum4", "overlay") + her "I remember when I was just a little girl..." + + show screen blktone + gen "*Huh*?" ("base", xpos="far_left", ypos="head") + hide screen blktone + + her "Frightened of my power... confused..." + + show screen blktone + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "There... She did it again..." ("base", xpos="far_left", ypos="head") + hide screen blktone + + her "Who knows what would have become of me if not for Hogwarts!" + + show screen blktone + gen "And again..." ("base", xpos="far_left", ypos="head") + gen "Why does she keep on jerking her shoulder in that awkward manner...?" ("base", xpos="far_left", ypos="head") + hide screen blktone + + her "I am so lucky to be a student here..." + call ctc + + # Reveal titty + stop music + $ dynamic_cg("ball/speech", "background", "base2", "mouth_open", "eyes_closed", "cum4", "overlay") + $ renpy.sound.play("sounds/boing02.ogg") + call ctc + + show screen blktone + with hpunch + gen "!!!" ("angry", xpos="far_left", ypos="head") + sna "!!!" ("snape_11") + hide screen blktone + + play music "music/court-of-the-queen-by-kevin-macleod.ogg" fadein 1 fadeout 1 + her "Thank you, everyone..." + her "Let me say this again..." + her "Thank you for making me your ball queen this year..." + $ dynamic_cg("ball/speech", "background", "base2", "mouth_open", "eyes_closed", "cum5", "overlay") + call ctc + + call blktone_top + mal "{size=-4}Am I hallucinating?{/size}" + mal2 "{size=-4}No, it's really happening... I see it too...{/size}" + mal "{size=-4}Hermione... Granger's... tit...{/size}" + mal "{size=-4}Major wardrobe malfunction, mate!{/size}" + fem "{size=-4}Oh no! Poor thing! We must let her know!{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}Don't you dare to take this away from us, girl!{/size}" + fem "{size=-4}But...!!{/size}" ("base", xpos="far_left", ypos="head") + call hide_blktone_top + call ctc + + her "And most of all I am thankful to my parents..." + her "The people who raised me..." + her "Mommy... Daddy..." + $ dynamic_cg("ball/speech", "background", "base2", "mouth_open", "eyes_squint", "brows", "cum6", "overlay") + her "I wish you could see how much Hogwarts changed me..." + her "I wish you could see what has happened to that little girl you raised..." + her "{size=-5}*Ah*...{/size}{heart}" + call ctc + + call blktone_top + gen "The whore is blushing! She is well aware of what's going on!" ("angry", xpos="far_left", ypos="head") + gen "Nasty slut!" ("angry", xpos="far_left", ypos="head") + gen "(She planned the whole thing??!)" ("angry", xpos="far_left", ypos="head") + gen "(By the great desert sands... What have I unleashed!?)" ("base", xpos="far_left", ypos="head") + call hide_blktone_top + + $ dynamic_cg("ball/speech", "background", "base2", "eyes_squint", "brows", "cum6", "overlay") + her "..............................." + her ".................." + call ctc + + call blktone_top + mal "{size=-4}Now she just sort of stands there...{/size}" + mal2 "{size=-4}Giving us a better look...?{/size}" + mal "{size=-4}Do You think she is aware of her tit being visible at all?{/size}" + fem "{size=-4}What a shameless display...{/size}" ("base", xpos="far_left", ypos="head") + fem "{size=-4}And to think that I almost felt sorry for that slut...{/size}" ("base", xpos="far_left", ypos="head") + fem "........................" ("base", xpos="far_left", ypos="head") + with hpunch + fem "{size=+5}Cover up, you shameless slut!!!{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}!!!{/size}" + mal2 "{size=-4}Have you lost your mind, yelling like that?!{/size}" + with hpunch + fem "{size=+5}Gryffindor whore!!!{/size}" ("base", xpos="far_left", ypos="head") + call hide_blktone_top + + $ dynamic_cg("ball/speech", "background", "base2", "mouth_open", "eyes_closed", "brows", "cum6", "overlay") + her "{size=-3}*Ah*...{/size}{heart}" + her "...............................*a-ha*...{heart}{heart}{heart}" + call ctc + + "Somebody from the crowd" "Show us both of them, Hermione!" + "Another voice from the crowd" "Look! Her face is all covered in cum!" + "Somebody from the crowd" "Have you no shame anymore, Hermione?!" + "Another voice from the crowd" "Cover up, you slut!" + + $ dynamic_cg("ball/speech", "background", "base2", "mouth_open", "cum6", "overlay") + her "Oh... That's right..." + her "I almost forgot..." + $ dynamic_cg("ball/speech", "background", "base2", "mouth_open", "eyes_closed", "cum6", "overlay") + her "{size=+5}Go Gryffindor!{/size}" + call play_sound("applause") + ">The crowd starts whistling and cheering wildly." + $ dynamic_cg("ball/speech", "background", "base2", "eyes_squint", "brows", "cum6", "overlay") + her "......................................" + her ".........................................................." + call ctc + + sna "Quiet down everyone!" ("snape_12", ypos="head") + sna "As for you, miss Granger..." ("snape_12") + sna "I think that's enough." ("snape_12") + sna "Cover up and get off the stage... Go..." ("snape_12") + pause.1 + + $ dynamic_cg("ball/speech", "background", "base2", "mouth_open", "cum6", "overlay") + her "\"Cover up\", sir?" + $ dynamic_cg("ball/speech", "background", "base2", "mouth_open", "eyes_squint", "brows", "cum6", "overlay") + her "Oh? What is this? One of my breasts is completely exposed..." + $ dynamic_cg("ball/speech", "background", "base2", "eyes_squint", "brows", "cum6", "overlay") + her "How embarrassing..." + $ dynamic_cg("ball/speech", "background", "base2", "mouth_open", "eyes_closed", "brows", "cum6", "overlay") + her "*Ah*...{heart}{heart}{heart}" + call ctc + + "Somebody from the crowd" "Whore!" + "Another voice from the crowd" "Gryffindor slut!" + "Somebody from the crowd" "I love you, Hermione!" + "Another voice from the crowd" "Gryffindor rules!!!" + + sna "Miss Granger, I said that's enough!" ("snape_18", ypos="head") + pause.1 + + her "As you say, professor..." + sna "And wipe your face, girl. You look repulsive." ("snape_12", ypos="head") + pause.1 + + $ dynamic_cg("ball/speech", "background", "base2", "mouth_open", "cum6", "overlay") + her "Oh, this? This is just my--" + sna "Don't care! Get off the stage already!" ("snape_18", ypos="head") + sna "Now!" ("snape_18") + pause.1 + + $ dynamic_cg("ball/speech", "background", "base2", "eyes_squint", "brows", "cum6", "overlay") + call ctc + + call blkfade + call play_sound("applause") + ">Wild whistling and cheering continues as Hermione descends from the stage." + pause 1 + stop music fadeout 3.0 + + # Back in the alcove + $ dynamic_cg("ball", "background") + call hide_blkfade + call ctc + + her "[genie_name]..." ("soft", "narrow", "base", "R_soft",cheeks="blush", ypos="head", flip=False) + her "There was something you wanted to discuss with me?" + gen "Not right now, whore!" ("angry", xpos="far_left", ypos="head") + call blkfade + + her "Sir?!" ("base", "narrow", "base", "mid_soft",cheeks="blush") + gen "I want to fuck you so badly! Come over here!" ("angry", xpos="far_left", ypos="head") + call play_music("playful_tension") + her "Of course, sir..." ("silly", "squint", "worried", "up",cheeks="blush") + + # Insertion + call play_sound("insert") + with hpunch + with kissiris + pause.5 + gen "{size=+7}OH YEEEES!{/size}" ("angry", xpos="far_left", ypos="head") + + $ dynamic_cg("ball/sex", "background", "base", "mouth_open", "blush") + show screen bld1 + call hide_blkfade + call ctc + + her "*Aaah*!!!" + gen "Your acceptance speech was a disgrace, girl!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "mouth_smile", "eyes_closed", "brows", "blush") + her "I thought it went rather well..." + gen "Showing off your tits like that?!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "mouth_smile", "eyes_closed", "blush") + her "Only one... *ah*..." + gen "What?" ("angry", xpos="far_left", ypos="head") + her "Only one tit, sir..." + gen "Whatever happened to that idealistic and self-righteous girl you once were?!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "lashes", "blush") + her "You fucked her out of me, sir!" + gen "You're damn right I did!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "brows", "blush") + her "You fucked her out of me with your enormous cock, sir!" + gen "*Argh*! You whore!" ("angry", xpos="far_left", ypos="head") + + call play_sound("slap") + show screen white + pause.1 + hide screen white + with hpunch + + $ dynamic_cg("ball/sex", "background", "base", "eyes_wide", "blush") + her "Ah!!!" + gen "Quiet, whore! Someone will hear you!" ("angry", xpos="far_left", ypos="head") + + call play_sound("slap") + show screen white + pause.1 + hide screen white + with hpunch + + her "Ah! [genie_name]!" + gen "I said be quiet!" ("angry", xpos="far_left", ypos="head") + + call play_sound("slap") + show screen white + pause.1 + hide screen white + with hpunch + + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "blush") + her "Ah! [genie_name]!" + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "brows", "blush") + her "Yes! Fuck me harder!" + gen "Are you raising your voice on purpose, whore?" ("base", xpos="far_left", ypos="head") + gen "Do you want to get caught like this?" ("angry", xpos="far_left", ypos="head") + gen "On your professor's cock?" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_r", "mouth_open_tongue", "blush") + her "Ah! Maybe..." + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "brows", "blush") + + her "Call me a mudblood, sir!" + gen "What?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "mouth_open", "blush") + her "Call me a mudblood, please!" + gen "A \"mudblood\"?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_wide", "blush") + her "Ah! Yes! Yes! I am a mudblood whore!" + gen "Whatever!" ("angry", xpos="far_left", ypos="head") + + call play_sound("slap") + show screen white + pause.5 + hide screen white + with hpunch + + call play_sound("slap") + show screen white + pause.4 + hide screen white + with hpunch + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + + $ dynamic_cg("ball/sex", "background", "base", "spank", "eyes_stare", "tears", "blush") + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + + call play_sound("slap") + show screen white + pause.2 + hide screen white + with hpunch + + call play_sound("slap") + show screen white + pause.1 + hide screen white + with hpunch + + $ dynamic_cg("ball/sex", "background", "base", "eyes_stare", "tears2", "blush") + her "*AAAAAAAhH*!" + her "Yes!!! Yeeees! Ah!" + $ dynamic_cg("ball/sex", "background", "base", "mouth_open_tongue", "eyes_stare", "tears2", "brows", "blush") + her "Fuck me [genie_name]! Fuck me harder!!!" + gen "*Grh*! Harder than this, whore?!" ("angry", xpos="far_left", ypos="head") + gen "!!!" ("angry", xpos="far_left", ypos="head") + gen "Crap! Someone's coming!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_stare", "tears2", "blush") + her "No, sir, not yet. But if you keep spanking me--" + gen "No, whore! I mean a bunch of students are coming this way!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "mouth_smile", "tears2", "blush") + her "What?!" + + # Students join + $ dynamic_cg("ball/sex", "background", "base", "eyes_stare", "mouth_open", "tears", "blush", "dudes") + sly1 "Well, well, well... What do we have here?" + her "!!!" + sly1 "I thought it could be you, Gryffindor filth..." + sly1 "Moaning like a whore..." + sly1 "Getting fucked by... Oh..." + with hpunch + sly1 "Professor Dumbledore!?" + gen "Hello, boys..." ("base", xpos="far_left", ypos="head") + her ".........................." + sly1 "Oh... *Ehm*... We didn't know..." + sly1 "We'll be leaving now..." + gen "What? Don't be silly, boys." ("base", xpos="far_left", ypos="head") + gen "You are more than welcome to stay." ("base", xpos="far_left", ypos="head") + sly1 "We are?" + $ dynamic_cg("ball/sex", "background", "base", "eyes_wide", "mouth_open", "blush", "dudes") + her "What?!" + gen "Of course." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "mouth_open", "blush", "dudes") + + her "Professor!!!?" + gen "The girl's front side is completely at your disposal." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "mouth_open", "blush", "brows", "dudes") + her "Professor! No!" + gen "What's wrong, slut?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "mouth_open", "blush", "dudes") + her "Sir, don't call me that in front of them, please..." + gen "What's the matter? Why are you Acting shy all of a sudden?" ("base", xpos="far_left", ypos="head") + her "Can't you see that they are from Slytherin?!" + gen "So what?" ("base", xpos="far_left", ypos="head") + her "Our two houses... we have a history." + gen "Oh..." ("base", xpos="far_left", ypos="head") + gen "Well, then you shall become the bridge between Slytherin and Gryffindor." ("base", xpos="far_left", ypos="head") + gen "Hermione Granger, the ambassador of peace!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "mouth_open", "blush", "brows", "dudes") + her "No, sir! I refuse!" + her "And stop moving your hips while we're talking, sir!" + gen "Boys, what is taking you so long?" ("base", xpos="far_left", ypos="head") + gen "I said, the whore is yours!" ("base", xpos="far_left", ypos="head") + her "Professor Dumbled--" + sly1 "Shut up, filth!" + + # Spit on face + call play_sound("spit") + show screen white + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "mouth_open", "blush", "dudes", "dudes_spit") + pause.2 + hide screen white + with hpunch + call ctc + + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "mouth_open", "blush", "spit_on_face", "dudes") + her "!!!" + gen "There you go!" ("base", xpos="far_left", ypos="head") + sly2 "*Ha-ha-ha*! Nice one! Look at her stupid face!" + $ dynamic_cg("ball/sex", "background", "base", "eyes_stare", "mouth_open", "blush", "spit_on_face", "brows", "dudes") + her "You... You...!" + sly1 "We really enjoyed your speech, Gryffindor slut." + sly2 "Yeah... Sure did..." + her "That wasn't meant for you, you Slytherin scum!" + sly1 "Wasn't meant for us? What are you, stupid?" + sly1 "You bared your filthy, muggle-born flesh on stage! In front of the entire school!" + sly1 "{size=+7}Of course it was for everyone, you dumb cunt!{/size}" + $ dynamic_cg("ball/sex", "background", "base", "eyes_down", "mouth_open", "blush", "spit_on_face", "brows", "dudes") + her "Sir! Stop fucking me!" + gen "*huh*? You mean, like this?" ("base", xpos="far_left", ypos="head") + with hpunch + pause.3 + + her "*Ah-aha*! No, professor, stop it!" + gen "Stop? I think I will fuck you harder instead!" ("base", xpos="far_left", ypos="head") + with hpunch + pause.3 + with hpunch + pause.3 + with hpunch + pause.3 + + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "mouth_open", "blush", "spit_on_face", "dudes") + her "*Ah-ah*!!!" + sly1 "Yes... You are ours now, slut!" + call ctc + + # Dicks out + $ dynamic_cg("ball/sex", "background", "base", "mouth_open", "blush", "spit_on_face", "dudes2") + her "What?! What are you doing?!" + her "Put your filthy dicks away immediately!" + with hpunch + pause.3 + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "mouth_open", "blush", "spit_on_face", "dudes2") + her "*Ah*... *Ah-a*..." + sly1 "Yes... I wanted to do this for quite some time now..." + her "Professor!" + gen "*huh*? Oh, don't you mind me girl." ("base", xpos="far_left", ypos="head") + gen "Imagine that I'm not even here..." ("base", xpos="far_left", ypos="head") + + call play_sound("spit") + show screen white + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "mouth_open", "blush", "spit_on_face", "dudes2", "dudes_spit") + pause.2 + hide screen white + with hpunch + call ctc + + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "mouth_open", "blush", "brows", "spit_on_face", "dudes2") + her "Stop it! Stop spitting in my face, you bastards!" + sly1 "Make us, whore!" + her "I am warning--" + + call play_sound("spit") + show screen white + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "mouth_open_tongue", "blush", "brows", "spit_on_face", "dudes2", "dudes_spit_mouth") + pause.2 + hide screen white + with hpunch + call ctc + + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "mouth_smile", "blush", "brows", "spit_on_face", "dudes2") + call play_sound("gulp") + her "{size=+5}*Gulp*!{/size}" + sly2 "*Ha-ha-ha*! Right in the mouth! Good one, mate!" + sly1 "And she swallowed it too!" + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "mouth_open", "blush", "brows", "spit_on_face", "dudes2") + her "That's was an accident!" + sly1 "Was it? Let's see." + her "*huh*?" + + call play_sound("spit") + show screen white + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "mouth_open_tongue", "blush", "brows", "spit_on_face", "dudes2", "dudes_spit_mouth") + pause.2 + hide screen white + with hpunch + call ctc + + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "mouth_smile", "blush", "brows", "spit_on_face", "dudes2") + call play_sound("gulp") + her "{size=+5}*Gulp*!{/size}" + + sly2 "She did it again!" + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "mouth_open", "blush", "brows", "spit_on_face", "dudes2") + her "That's because I didn't expect it... It's just a reflex!" + sly1 "That's one hot reflex!" + gen "Oh... yes..." ("angry", xpos="far_left", ypos="head") + with hpunch + pause.3 + with hpunch + pause.3 + her "*Ah*... *Ah-aha*..." + her "You will pay for this, you spineless slytheri--" + sly1 "Shut it, mudblood!" + with vpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "blush", "spit_on_face", "dudes2", "dude_bj") + call ctc + + # Dick in mouth + her "!!!........................................................." + sly2 "Cool! I'm next!" + her "*Gulp*!" + sly1 "Suck my cock, bitch! Suck it!" + gen "Do what the boy tells you, girl." ("base", xpos="far_left", ypos="head") + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + + gen "Come on!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "blush", "spit_on_face", "dudes2", "dude_bj") + her "*Slurp*..." + sly1 "She's doing it! Hermione Granger sucking me off, lads!" + sly2 "Awesome! Can't wait to give it a go myself!" + sly1 "Oh... wow... she's good..." + her "*Slurp*! *Slurp*! *Gulp*!" + sly1 "Oh yes... Yes..." + sly1 "Oh... You are so good at this, whore!" + sly1 "It's... I..." + + show screen white + pause.1 + hide screen white + pause.2 + show screen white + pause .1 + hide screen white + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "blush", "spit_on_face", "dudes2", "dude_bj", "cheeks") + her "{size=+7}*gobble*?!?{/size}" + sly1 "{size=+5}Yes, yes! Swallow it all!!!{/size}" + + # Swallowing cum + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "blush", "brows", "spit_on_face", "dudes2", "dude_bj") + call play_sound("gulp") + her "{size=+5}*Gulp-gulp-gulp-gulp*!{/size}" + call play_sound("gulp") + her "*{size=+3}Gulp-gulp-gulp*...{/size}" + call play_sound("gulp") + her "*Gulp-gulp-gulp*..." + call play_sound("gulp") + her "{size=-3}*Gulp* *Gulp*{/size}" + her "{size=-5}*Gulp*..................{/size}" + her "........................................" + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "blush", "brows", "spit_on_face", "dudes2") + her "*Gu-aha*..." + her "Is this all you got? Pathetic!" + sly2 "Oh... Shut up whore... You sucked me dry..." + $ dynamic_cg("ball/sex", "background", "base", "blush", "brows", "spit_on_face", "dudes2") + her "Come on! Who's next?!" + sly2 "Me! I'm next!" + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "blush", "brows", "spit_on_face", "dudes2", "dude_bj") + call ctc + + $ dynamic_cg("ball/sex", "background", "base", "eyes_closed", "blush", "brows", "spit_on_face", "dudes2", "dude_bj") + her "*Slurp*! *Slurp*! *Slurp*!" + gen "Oh... Yes... Yes!" ("angry", xpos="far_left", ypos="head") + with hpunch + pause.3 + with hpunch + pause.3 + her "*Slurp*! *Slurp*! *Slurp*!" + sly2 "Oh! Her mouth is so slippery and warm!" + her "*Slurp*! *Slurp*! *Slurp*!" + gen "Yes! Suck that cock, you whore!" ("angry", xpos="far_left", ypos="head") + with hpunch + pause.3 + with hpunch + pause.3 + her "*Gulp*! Gulp!* *Slurp*!" + sly2 "I don't know... *gh*... How much longer..." + sly2 "... I could keep up like that." + her "*Slurp-Slurp-Slurp-slurp*!" + her "*Slurp-Gulp-Slurp-Slurp-gulp*!!!" + sly2 "Oh, man... Oh man..." + her "*Slurp-Slurp-Slurp-Slurp-Slurp*!!" + sly2 "I... I..." + sly2 "..................." + her "*Slurp-Slurp-Slurp-Slurp-Slurp*!!" + with hpunch + sly2 "{size=+7}I'm cummiiiiiiiiing!{/size}" + + show screen white + pause.1 + hide screen white + pause.2 + show screen white + pause .1 + hide screen white + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "blush", "brows", "spit_on_face", "dudes2", "dude_bj") + her "{size=+7}*gobble*?!?{/size}" + $ dynamic_cg("ball/sex", "background", "base", "eyes_closed", "blush", "brows", "spit_on_face", "dudes2", "dude_bj") + call play_sound("gulp") + her "{size=+5}*Gulp-gulp-gulp-gulp*!{/size}" + call play_sound("gulp") + her "{size=+3}*Gulp-gulp*...{/size}" + call play_sound("gulp") + her "*Gulp..." + sly2 "*Argh*... my cock..." + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "blush", "brows", "spit", "spit_on_face", "dudes2") + her "*Gu-aha*..." + $ dynamic_cg("ball/sex", "background", "base", "blush", "brows", "spit", "spit_on_face", "dudes2") + her "Next! Come on! Is this all you got?" + sly1 "I'm next, mudblood!" + $ dynamic_cg("ball/sex", "background", "base", "mouth_open", "blush", "lashes", "brows", "spit", "spit_on_face", "dudes2") + her "{size=-5}*Ah*... Don't call me that, you bastard...{/size}{heart}" + sly1 "Gonna fuck your face real good, whore!" + sly1 "And after I fill your mouth with my cum, you're gonna thank me!" + sly1 "Aren't you, mudblood whore?" + $ dynamic_cg("ball/sex", "background", "base", "mouth_open", "blush", "brows", "spit", "spit_on_face", "dudes2") + her "Fuck you!" + + call play_sound("spit") + show screen white + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "mouth_open_tongue", "blush", "brows", "spit_on_face", "dudes2", "dudes_spit_mouth") + pause.2 + hide screen white + with hpunch + call ctc + + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "mouth_smile", "blush", "brows", "spit_on_face", "dudes2") + call play_sound("gulp") + her "{size=+5}*Gulp*!{/size}" + + sly1 "That's what I thought!" + $ dynamic_cg("ball/sex", "background", "base", "mouth_open", "blush", "lashes", "brows", "spit", "spit_on_face", "dudes2") + her "You worthless... slythe--" + $ dynamic_cg("ball/sex", "background", "base", "eyes_down", "blush", "lashes", "brows", "spit_on_face", "dudes2", "dude_bj3") + her "!!?" + $ dynamic_cg("ball/sex", "background", "base", "eyes_closed", "blush", "lashes", "brows", "spit_on_face", "dudes2", "dude_bj3") + her "*Slurp*! *Slurp*! *Slurp*!" + sly1 "Yes! Yes, you mudblood filth! Suck my cock! Suck it!" + gen "This is quite extraordinary..." ("base", xpos="far_left", ypos="head") + sly1 "Sir?" + gen "It's just..." ("base", xpos="far_left", ypos="head") + gen "Her pussy..." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_down", "blush", "lashes", "brows", "spit_on_face", "dudes2", "dude_bj3") + her "*Slurp*?" + gen "It tightens every time you call the girl a \"mudblood\"..." ("base", xpos="far_left", ypos="head") + gen "Try calling her that again, boy." ("base", xpos="far_left", ypos="head") + sly1 "Gladly, sir." + $ dynamic_cg("ball/sex", "background", "base", "eyes_closed", "blush", "lashes", "brows", "spit_on_face", "dudes2", "dude_bj3") + her "*Slurp*! *Slurp*! *Slurp*!" + sly1 "Yes, whore! I love fucking your {i}mudblood{/i} face!" + sly1 "And you're loving every moment of this, aren't you?" + sly1 "Aren't you, {i}mudblood{/i}?" + her "*Slurp*! *Slurp*! *Gulp*!" + gen "Yup... Every time you say that..." ("base", xpos="far_left", ypos="head") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + gen "What is this? Her legs are shaking!" ("base", xpos="far_left", ypos="head") + gen "Are you cumming, girl?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "lashes", "blush", "lashes", "spit_on_face", "dudes2", "dude_bj3") + her "..............................................." + gen "I think you are!" ("base", xpos="far_left", ypos="head") + gen "Come on, boy, let's speed this thing up a little!" ("base", xpos="far_left", ypos="head") + gen "Let's fuck her from both ends while she is cumming like a dirty slut!" ("base", xpos="far_left", ypos="head") + sly1 "Of course, sir." + + sly1 "Take this, you mudblood whore!" + with vpunch + pause.3 + with vpunch + pause.3 + with vpunch + pause.3 + + gen "And this!!!" ("angry", xpos="far_left", ypos="head") + with hpunch + pause.3 + with hpunch + pause.3 + with hpunch + pause.3 + + her "{size=+7}!!!!!!!!{/size}" + gen "Yes! Her pussy is flooded with juice!" ("angry", xpos="far_left", ypos="head") + sly1 "*Agh*! Her mouth as well, sir." + sly1 "I don't know how much longer I... oh..." + sly1 "*Argh*!" + sly1 "{size=+3}Take this, whore!{/size}" + + show screen white + pause.1 + hide screen white + pause.2 + show screen white + pause.1 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "blush", "lashes", "dudes2", "dude_bj3", "cum_nose") + her "{size=+7}*gobble*?!?{/size}" + sly1 "{size=+5}Yes, yes! Swallow it all!!!{/size}" + + # Swallowing cum + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "lashes", "tears", "blush", "lashes", "dudes2", "dude_bj3", "dude_bj_cum", "spit_on_face") + call play_sound("gulp") + her "{size=+5}*Gulp-gulp-gulp-gulp!*{/size}" + call play_sound("gulp") + her "*{size=+3}Gulp-gulp-gulp...*{/size}" + call play_sound("gulp") + her "*Gulp-gulp-gulp*..." + call play_sound("gulp") + her "{size=-3}*Gulp* *Gulp*{/size}" + her "{size=-5}*Gulp*..................{/size}" + her "........................................" + her "....................." + $ dynamic_cg("ball/sex", "background", "base", "mouth_open", "blush", "lashes", "brows", "spit", "spit_on_face", "dudes2") + her "*Gu-aha*..." + sly2 "You drained my balls, bitch..." + gen "Alright, boys! Let's bring this little party to a worthy conclusion." ("base", xpos="far_left", ypos="head") + her "{size=+7}I'm cumming!{/size}" + gen "Yeah, whatever, whore." ("base", xpos="far_left", ypos="head") + gen "So, rest of you boys, you can just jerk off on her face now, alright?" ("base", xpos="far_left", ypos="head") + sly1 "Of course, sir." + sly2 "Yes, sir!" + gen "Yes, just plaster her face with cum. She loves that shit!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "mouth_smile", "eyes_dead", "tears2", "blush", "lashes", "spit", "spit_on_face", "dudes2") + her "{size=+3}No! I am already cumming... Stop!{/size}" + sly1 "Heh... Hermione Granger... What a whore!" + sly2 "Yeah! Nothing but a mudblood cunt!" + her "{size=+9}AAAAAH!!!!!{/size}" + her "{size=+3}Yes! I'm a whore! I'm a whore!{/size}" + sly1 "She even admits it!" + sly2 "I don't think I can last much longer!" + sly1 "Me neither!" + sly2 "*ARGH*!" + + show screen white + pause.1 + hide screen white + pause.2 + show screen white + pause .1 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "tears2", "blush", "spit", "spit_on_face", "dudes2", "dudes_cum") + call ctc + + her "{size=+8}AAAAAAAAAAAAH!{/size}" + her "{size=+3}My face!!{/size}" + sly1 "Take this, whore!" + + show screen white + pause.1 + hide screen white + pause.2 + show screen white + pause .1 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "tears2", "blush", "spit", "spit_on_face", "dudes2", "dudes_cum2") + call ctc + + her "{size=+5}*AAAAAAAAAAAAH*!{/size}" + sly2 "*Argh*! Here! Me too!" + + show screen white + pause.1 + hide screen white + pause.2 + show screen white + pause .1 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "tears2", "blush", "spit", "spit_on_face", "dudes2", "dudes_cum3") + call ctc + + $ dynamic_cg("ball/sex", "background", "base", "eyes_closed", "tears2", "blush", "spit", "spit_on_face", "dudes2", "dudes_cum3", "bukkake") + call ctc + + her "{size=+4}I'm cumming!{/size}" + gen "Well, don't mind if I do!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "tears2", "blush", "spit", "spit_on_face", "dudes2", "dudes_cum3", "bukkake") + her "{size=+3}No professor, I............!{/size}" + gen "*Argh*!" ("angry", xpos="far_left", ypos="head") + + show screen white + pause.1 + hide screen white + pause.2 + show screen white + pause .1 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "tears2", "blush", "spit", "spit_on_face", "dudes2", "dudes_cum3", "bukkake", "cum_anal", "cum_pussy") + call ctc + + her "{size=+8}*AAAAAAAAAAAAH*!{/size}" + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "tears2", "blush", "spit", "spit_on_face", "dudes2", "cum_after", "bukkake", "cum_anal", "cum_pussy") + her "{size=+5}No! My face! My pussy! Ah! I can't stop cumming!!!{/size}" + sly1 "What a slut!" + sly2 "Whore!" + sly1 "Mudblood!" + her "{size=+8}*AAAAAAAAAAAAH*!{/size}" + + call play_sound("spit") + show screen white + pause.3 + hide screen white + with vpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "tears2", "blush", "spit", "spit_on_face", "dudes2", "cum_after", "bukkake", "cum_anal", "cum_pussy", "dudes_spit_mouth") + call ctc + + $ dynamic_cg("ball/sex", "background", "base", "mouth_smile", "eyes_happycl", "tears2", "blush", "spit", "spit_on_face", "dudes2", "cum_after", "bukkake", "cum_anal", "cum_pussy", ) + call play_sound("gulp") + her "{size=+8}*Gulp*!{/size}" + + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "tears2", "blush", "spit", "spit_on_face", "dudes2", "cum_after", "bukkake", "cum_anal", "cum_pussy") + her "{size=+8}I'll go insane!{/size}" + call ctc + + show screen white + with d9 + pause 1 + hide screen white + show screen blkfade + with d9 + + call ctc + + gen "Well, thank you for your cooperation, boys." ("base", xpos="far_left", ypos="head") + sly1 "Of course, professor Dumbledore." + sly2 "Glad to be of help, sir." + sly1 "Thank you, professor." + sly2 "Alright, let's go back to the ball." + sly1 "Yeah, let's go!" + sly2 "Bye, mudblood whore!" + sly1 "Yeah, thank you for being such a slut!" + her ".........................." ("soft", "narrow", "annoyed", "up", cheeks="blush", tears="mascara_soft", ypos="head", flip=False) + + call play_sound("footsteps") + $ dynamic_cg("ball/sex", "background") + pause 2 + + hide screen blkfade + with d9 + + sly1 "{size=-4}Man, professor Dumbledore sure is one cool dude.{/size}" + sly2 "{size=-4}Yeah... Who would have thought...{/size}" + sly1 "{size=-4}True. I can't help but respect the man...{/size}" + gen "(*Aww*... Such nice boys...)" ("base", xpos="far_left", ypos="head") + sly2 "{size=-4}Yeah... I hope I will be as agile as he is when I am that ancient.{/size}" + gen "(I'm not ancient, you punks!)" ("angry", xpos="far_left", ypos="head") + gen "(Although I suppose in some way I am...)" ("base", xpos="far_left", ypos="head") + + #TODO Cum layer on Hermione doll (and ball ending CG?) + + her ".........................." ("soft", "narrow", "annoyed", "up",cheeks="blush",tears="mascara_soft") + gen "Whore! Why are you so quiet?" ("base", xpos="far_left", ypos="head") + her "I..." ("silly", "narrow", "annoyed", "up",cheeks="blush",tears="mascara_soft") + her "I am... not sure..." (cheeks="blush",tears="mascara_soft") + her "What...? What is..." ("soft", "narrow", "annoyed", "up",cheeks="blush",tears="mascara_soft") + gen "Come on, girl. Pull yourself together!" ("base", xpos="far_left", ypos="head") + her "I... I... What?" ("open", "narrow", "worried", "mid_soft",cheeks="blush",tears="mascara_soft") + her "I don't understand... I..." (cheeks="blush",tears="mascara_soft") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "I will be leaving now." ("base", xpos="far_left", ypos="head") + her "Leaving...?" ("soft", "narrow", "annoyed", "up",cheeks="blush",tears="mascara_soft") + gen "Yes. Maybe you should too..." ("base", xpos="far_left", ypos="head") + gen "Go clean yourself up and rest or something." ("base", xpos="far_left", ypos="head") + her "But I can't leave... No... I must..." ("open", "narrow", "worried", "mid_soft",cheeks="blush",tears="mascara_soft") + her "The formal dance... I must..." (cheeks="blush",tears="mascara_soft") + gen "A dance? You can't dance in this condition." ("base", xpos="far_left", ypos="head") + her "No! I am the ball queen! I must..." ("soft", "narrow", "annoyed", "up",cheeks="blush",tears="mascara_soft") + gen "Well, suit yourself." ("base", xpos="far_left", ypos="head") + gen "I'm leaving..." ("base", xpos="far_left", ypos="head") + her "Goodbye... sir..." ("soft", "narrow", "annoyed", "up",cheeks="blush",tears="mascara_soft") + gen "............." ("base", xpos="far_left", ypos="head") + gen "Farewell, girl." ("base", xpos="far_left", ypos="head") + call ctc + + call blkfade + $ dynamic_cg("ball/intro", "background", "bloom", "hermione2", "foreground", "overlay") + pause.5 + call hide_blkfade + + play music "music/Brandenburg No4-1 BWV1049 Kevin-McKleod.ogg" fadein 1 fadeout 1 + call ctc + + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Maybe I should stay and watch Hermione's post-multiple-orgasm dancing?" ("base", xpos="far_left", ypos="head") + gen "No... This ball is almost over. This is my only chance to sneak out unnoticed." ("base", xpos="far_left", ypos="head") + call ctc + + call blkfade + pause.5 + + else: + # Personal whore ending + sna "Miss Granger...?" ("snape_03", ypos="head") + sna "You decided to show up after all? What an unpleasant surprise..." ("snape_04") + her "..............................." ("full", "narrow", "annoyed", "up",cheeks="blush",tears="mascara", ypos="head", flip=False) + sna "What happened to your face, girl?" ("snape_13") + her "......................................." ("full", "narrow", "worried", "down",cheeks="blush",tears="mascara") + sna "*Hmm*... Well, go ahead then..." ("snape_13") + sna "Here is the tiara..." ("snape_13") + her "......................................." ("full", "narrow", "worried", "down",cheeks="blush",tears="mascara") + + sna "And the stage is yours..." ("snape_13") + pause.7 + + $ dynamic_cg("ball/speech", "background", "base", "cheeks", "blush", "cum_nose", "brows", "mascara", "sweat", "overlay") + hide screen bld1 + call hide_blkfade + + call play_sound("applause") + call ctc + + her "..............." + her ".................................." + her ".........................................................................." + + play music "music/court-of-the-queen-by-kevin-macleod.ogg" fadein 1 fadeout 1 + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "blush", "cum_mouth", "eyes_squint", "brows", "mascara", "sweat", "overlay") + her "*Ah-a*........." + + gen "Is that...?" ("base", xpos="far_left", ypos="head") + gen "are Leftovers of my cum still in her mouth?" ("base", xpos="far_left", ypos="head") + gen "What the hell is she doing?" ("angry", xpos="far_left", ypos="head") + + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "blush", "cum_mouth", "eyes_closed", "brows", "mascara", "sweat", "overlay") + her "...................................." + her "*{i}Helwo eweruone{/i}*..." #Misspelled on purpose. + + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "blush", "cum_mouth", "eyes_closed", "brows", "mascara", "sweat", "overlay") + her "{i}Fenk you for being heah today{/i}..." #Misspelled on purpose. + gen "I can barely understand a word she is saying..." ("base", xpos="far_left", ypos="head") + her "{i}Fifst of all I would like foo fenk Profeffor Dumblefore...{/i}" #Misspelled on purpose. + gen "Me?" ("base", xpos="far_left", ypos="head") + her "................" + + $ dynamic_cg("ball/speech", "background", "base", "cheeks", "blush", "cum_nose", "brows", "mascara", "sweat", "overlay") + stop music fadeout 1.0 + her ".................................................." + call ctc + + $ dynamic_cg("ball/speech", "background", "base", "blush", "cum_nose2", "eyes_closed", "mascara", "sweat", "overlay") + call play_sound("gulp") + her "{size=+5}*GULP*!!!{/size}" + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "blush", "cum_nose2", "eyes_squint", "mascara", "brows", "sweat", "overlay") + her "*Gua-ha*..." + her "Thank you, professor." + with hpunch + gen "YOU WHORE!!!" ("angry", xpos="far_left", ypos="head") + gen "When did you get this nasty!?" ("angry", xpos="far_left", ypos="head") + + play music "music/court-of-the-queen-by-kevin-macleod.ogg" fadein 1 fadeout 1 + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "blush", "cum_nose2", "mascara", "brows", "sweat", "overlay") + her "I would also like to thank my parents..." + her "And I would like to thank my fellow students!" + + call play_sound("applause") + ">Loud cheering and whistling erupts from the crowd." + + her "As well as the teachers, of course..." + $ dynamic_cg("ball/speech", "background", "base", "blush", "cum_nose2", "mascara", "brows", "sweat", "overlay") + ">A few people can be heard clapping their hands." + call ctc + + call blktone_top + mal "{size=-4}So it's Hermione Granger again this year...{/size}" + fem "{size=-4}*Tsk*... Why am I not surprised?{/size}" ("base", xpos="far_left", ypos="head") + mal2 "{size=-4}Maybe because she deserves it?{/size}" + mal "{size=-4}Yeah! Stop hating on Hermione!{/size}" + fem "{size=-4}*Tch*... Whatever.{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}By the way, when Hermione went on stage-{/size}" + mal2 "{size=-4}Yeah, there was something in her mouth. I noticed it too.{/size}" + fem "{size=-4}I bet it was someone's cum!{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}WHAT?!!{/size}" + mal2 "{size=-4}Get your head out of the gutter, girl!{/size}" + fem "{size=-4}Why not?{/size}" ("base", xpos="far_left", ypos="head") + fem "{size=-4}Everyone knows she is sleeping with Professor Dumbledore!{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}No, not your gossips again.{/size}" + mal2 "{size=-4}Wait, I want to hear this one. Tell us more.{/size}" + fem "{size=-4}What is there to tell?{/size}" ("base", xpos="far_left", ypos="head") + fem "{size=-4}Hermione Granger is a whore. She enjoys sucking cocks....{/size}" ("base", xpos="far_left", ypos="head") + fem "{size=-4}Yes, she loves to suck cocks but she loves sperm even more!{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}....{/size}" + fem "{size=-4}She is a sperm addict! She must swallow half a cup of sperm every day...{/size}" ("base", xpos="far_left", ypos="head") + fem "{size=-4}Because if she doesn't she goes into a sex-craze...{/size}" ("base", xpos="far_left", ypos="head") + mal2 "{size=-4}.....{/size}" + fem "{size=-4}And when that happens she cannot control herself and will gladly sleep with the first man she sees.{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}.............{/size}" + mal2 "{size=-4}.....................{/size}" + fem "{size=-4}*Hmm*? Why are you staring at me like that?{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}What? We're not staring.{/size}" + mal2 "{size=-4}Yes, keep talking. You are good at this!{/size}" + fem "{size=-4}Good at what?!{/size}" ("base", xpos="far_left", ypos="head") + fem "{size=-4}Wait a second, are you guys getting off on this?{/size}" ("base", xpos="far_left", ypos="head") + mal "{size=-4}Heh... Look at the crow calling the raven black!{/size}" + fem "{size=-4}What do you mean?{/size}" ("base", xpos="far_left", ypos="head") + mal2 "{size=-4}You are blushing like crazy, girl! And your eyes are all misty!{/size}" + mal "{size=-4}Yeah! You enjoy this as much as we do!{/size}" + fem "{size=-4}!!!?{/size}" ("base", xpos="far_left", ypos="head") + fem "{size=-4}You guys are idiots!{/size}" ("base", xpos="far_left", ypos="head") + + call play_sound("running") + pause 3 + mal "{size=-4}What? What did I say?{/size}" + mal2 "{size=-4}Who knows, bro? Witches be crazy...{/size}" + mal "{size=-4}They do be crazy...{/size}" + call hide_blktone_top + + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "blush", "cum_nose2", "mascara", "brows", "sweat", "overlay") + her "Thank you, everyone, for being such a big help in organising tonight's event." + her "And thank you for choosing me as your queen again this year..." + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "eyes_closed", "blush", "cum_nose2", "mascara", "brows", "sweat", "overlay") + her "What a pleasant and completely unexpected surprise...!" + her "And one more thing..." + $ dynamic_cg("ball/speech", "background", "base", "mouth_open", "blush", "cum_nose2", "mascara", "brows", "sweat", "overlay") + her "{size=+5}Go Gryffindor!{/size}" + + call play_sound("applause") + ">The crowd explodes with loud cheers and whistles, interspersed by occasional booing..." + + call ctc + + call blkfade + pause.7 + + stop music fadeout 1.0 + gen "Great speech..." ("base", xpos="far_left", ypos="head") + gen "Very arousing... *Ehm*... I mean inspiring." ("base", xpos="far_left", ypos="head") + her "Thank you, sir." ("soft", "narrow", "base", "R_soft",cheeks="blush", ypos="head", flip=False) + gen "Swallowing my load in front of the entire school?" ("base", xpos="far_left", ypos="head") + gen "A very nice touch." ("grin", xpos="far_left", ypos="head") + her "........................................................" ("crooked_smile", "happyCl", "worried", "mid", cheeks="blush") + + call play_music("playful_tension") # SEX THEME. + + $ dynamic_cg("ball/sex", "background") + show screen bld1 + call hide_blkfade + + gen "Alright, girl. Let's have that talk now..." ("base", xpos="far_left", ypos="head") + her "...................." ("upset", "base", "base", "mid") + gen "There is something I need to tell you..." ("base", xpos="far_left", ypos="head") + gen "Not sure where to start though..." ("base", xpos="far_left", ypos="head") + gen "........................................" ("base", xpos="far_left", ypos="head") + gen "Well, first of all I am--" ("base", xpos="far_left", ypos="head") + her "Sir, I think I know exactly what you are about to say." ("open", "base", "base", "mid") + gen "You do?" ("base", xpos="far_left", ypos="head") + her "Of course." ("open", "base", "base", "mid") + her "One hasty blowjob is not nearly enough to repay my debt to you, am I right?" ("base", "narrow", "base", "mid_soft",cheeks="blush") + gen "What? No, that's not what I--" ("base", xpos="far_left", ypos="head") + her "It's fine, sir. Really." ("base", "narrow", "base", "mid_soft",cheeks="blush") + her "Let me just pull my panties down a little..." ("soft", "narrow", "base", "R_soft",cheeks="blush") + gen "Damn you girl! Will you let me finish!?" ("angry", xpos="far_left", ypos="head") + her "Of course sir..." ("base", "narrow", "base", "mid_soft",cheeks="blush") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + her "Just make sure you don't hit my dress, alright?" ("open_tongue", "narrow", "worried", "mid_soft",cheeks="blush") + gen "*growl*!" ("angry", xpos="far_left", ypos="head") + gen "Come here, whore!" ("angry", xpos="far_left", ypos="head") + gen "Suppose I might as well fuck you one last time!" ("angry", xpos="far_left", ypos="head") + her "(One last time?)" ("upset", "base", "base", "mid") + call ctc + + call blkfade + call play_sound("insert") + with hpunch + with kissiris + + her "{size=+5}Ahh!!!{/size}" ("open", "wide", "worried", "stare",cheeks="blush",tears="soft") + gen "Oh, yes!" ("angry", xpos="far_left", ypos="head") + + $ dynamic_cg("ball/sex", "background", "base", "blush") + hide screen bld1 + call hide_blkfade + call ctc + + her "*Ah-ah*..." + gen "*Hmm*? Your pussy..." ("base", xpos="far_left", ypos="head") + gen "It's dripping wet, girl." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_down", "mouth_smile", "blush") + her "*Ah*...{heart} It is, sir?" + her "That's probably from before..." + gen "From before?" ("base", xpos="far_left", ypos="head") + gen "You mean when you were choking on my cock?" ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart} Yes, sir..." + gen "Did it make you cum?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_closed", "mouth_open", "blush") + her "A little..." + gen "Well, you're just precious then, aren't you?" ("base", xpos="far_left", ypos="head") + her "*ah*......" + gen "Aren't you, whore?!" ("base", xpos="far_left", ypos="head") + her "*Ah*... Whatever you say, sir." + gen "Yes, you are precious, you slut!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_closed", "mouth_smile", "blush") + her "............." + gen "Squeezing my cock with your little pussy!" ("base", xpos="far_left", ypos="head") + her "......................" + gen "*Hmm*...?" ("base", xpos="far_left", ypos="head") + gen "Why are you being so quiet?" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "mouth_open", "blush") + her "Oh... I'm just afraid that someone would--" + gen "I think that's because you want to get spanked!" ("base", xpos="far_left", ypos="head") + her "What!?" + + call play_sound("slap") + show screen white + pause.1 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_stare", "mouth_open", "brows", "blush", "tears") + + her "*EEeeeeeeeegh*!" + gen "Quiet, whore! Someone could hear you!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "mouth_open", "brows", "blush", "tears") + her "Sir, I--" + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_stare", "mouth_smile", "brows", "blush", "tears") + + her "{size=+7}*EEghh*!!!{/size}" + gen "Be quiet, I said!" ("base", xpos="far_left", ypos="head") + gen "Or do you want to get caught like this, on your headmaster's cock?" ("base", xpos="far_left", ypos="head") + gen "Do you, Miss queen of the autumn ball?" ("base", xpos="far_left", ypos="head") + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "blush", "tears") + + her "*Ah*..." + gen "Yes, you're liking this aren't you?!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_happycl", "mouth_smile", "blush") + her ".............." + gen "Answer me, slut!" ("angry", xpos="far_left", ypos="head") + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "blush", "tears") + + her "Yes, sir! I love it!!!" + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "mouth_open", "brows", "blush", "tears") + her "Spank me harder, sir! I deserve it!" + gen "That's the spirit!" ("base", xpos="far_left", ypos="head") + call ctc + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "blush", "tears") + call ctc + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "blush", "tears") + call ctc + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "blush", "tears", "spank") + call ctc + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "blush", "tears", "spank") + call ctc + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "mouth_open_tongue2", "lashes", "blush", "tears", "spank") + call ctc + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background", "base", "eyes_dead", "mouth_open_tongue2", "lashes", "blush", "tears", "spank") + call ctc + + her "{size=+7}*Aaaaaah*............................{/size}" + + call blktone_top + sna "Attention, maggots!" + sna "The formal dance of the Hogwarts Autumn Ball is about to begin..." + call hide_blktone_top + + $ dynamic_cg("ball/sex", "background", "base", "eyes_wide", "mouth_open", "blush", "tears", "spank") + her "!!!" + her "The dance! I completely forgot!!!" + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "mouth_open", "blush", "tears", "spank") + her "Sir, excuse me, but you have to let me go..." + gen "*Ah*... Your pussy is something else!" ("angry", xpos="far_left", ypos="head") + her "Sir-- *Ah*...{w=0.3} I am serious." + her "As the queen I am expected to lead the dance." + gen "Yes... Like that, just like that... Oh, yes..." ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "mouth_open", "brows", "blush", "tears", "spank") + her "Sir, are you even listening?" + gen "Oh, I hear you alright... But let me make you a counteroffer." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_up", "mouth_open", "blush", "tears", "spank") + her "Sir?" + gen "Instead of letting you go..." ("base", xpos="far_left", ypos="head") + gen "I will stick my cock up your ass." ("base", xpos="far_left", ypos="head") + gen "How about that?" ("base", xpos="far_left", ypos="head") + her "What? B-but..." + gen "I think that is a great plan!" ("base", xpos="far_left", ypos="head") + her "Sir, no! I--" + gen "One sec, one sec..." ("base", xpos="far_left", ypos="head") + call blkfade + + gen "Let me take my dick out of your pussy first..." ("base", xpos="far_left", ypos="head") + + call play_sound("plop") + with hpunch + pause.3 + + # Insertion + her "*Ah*..." ("open", "wide", "worried", "stare",cheeks="blush",tears="soft", ypos="head", flip=False) + her "Sir, no. You must listen to me--" ("open_tongue", "narrow", "worried", "mid_soft",cheeks="blush") + $ renpy.play('sounds/gltch.ogg') + with hpunch + with kissiris + + her "{size=+7}!!!!!!!!!!!!!!!!!{/size}" ("scream", "wide", "worried", "stare",cheeks="blush",tears="soft") + her "My...{w} My...{w} My..." + gen "Shut it, girl! You are being loud." ("base", xpos="far_left", ypos="head") + with hpunch + her "{size=+7}My anus!!!!!!!!!!!!!{/size}" ("scream", "wide", "worried", "stare",cheeks="blush",tears="soft") + gen "Dammit, girl. I said be quiet." ("angry", xpos="far_left", ypos="head") + + $ dynamic_cg("ball/sex", "background", "base", "eyes_stare", "mouth_open_tongue", "brows", "blush", "tears2") + call hide_blkfade + + her "{size=+7}I can't! I don't care! It hurts!!!{/size}" + gen "Maybe you don't care, but I do, you whore!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base", "eyes_stare", "blush", "tears2") + her "{size=+5}Your cock is so huge!{/size}" + gen "We'll get caught because of you, you stupid slut!" ("angry", xpos="far_left", ypos="head") + gen "Maybe this will help you shut up..." ("base", xpos="far_left", ypos="head") + + # Fishhooking + $ dynamic_cg("ball/sex", "background", "base2", "blush2") + her "!!!............" + gen "That's right, you slut. Keep quiet!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base2", "open_tongue2", "blush2") + her "*Ah*... *Blah*..." + gen "Your butthole... It's so damn tight..." ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background", "base2", "open_tongue2", "blush2", "spit") + her "*Ah*... *blah*... *ah*..." + gen "You are drooling all over my hand, you nasty slut!" ("angry", xpos="far_left", ypos="head") + her "*Ah*... *Blah-blhah*... *ah*... *bla-ah*..." + + call blktone_top + stop music fadeout 1.0 + sna "Well, we are about to start..." + sna "Get into pairs now..." + sna "No! Male-female pairs, you dull creatures. What do you think this is? A laboratory assignment?" + + call hide_blktone_top + $ dynamic_cg("ball/sex", "background2", "base", "mouth_open_tongue2", "eyes_r", "lashes", "blush", "spit") + + play music "music/Brandenburg No4-1 BWV1049 Kevin-McKleod.ogg" fadein 1 fadeout 1 + gen "Don't you worry about missing out on your dance, whore." ("base", xpos="far_left", ypos="head") + gen "We will do a little bit of dancing of our own..." ("base", xpos="far_left", ypos="head") + her "*Ah*..." + gen "Yes, this year's ball queen is performing a complicated pirouette with a dick buried deep in her tiny asshole!" ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background2", "base", "mouth_open_tongue2", "eyes_stare", "lashes", "blush", "spit") + her "*Ah*... I am *ahh*..." + gen "Did you say something, your majesty?" ("base", xpos="far_left", ypos="head") + her "*Ah*... I am the autumn ball queen... *ah*..." + gen "Well of course you are!" ("base", xpos="far_left", ypos="head") + gen "But you're also a whore!" ("base", xpos="far_left", ypos="head") + her "I'm a whore..." + $ dynamic_cg("ball/sex", "background2", "base", "mouth_open_tongue2", "eyes_stare", "lashes", "brows", "blush", "spit") + her "{size=+7}I'm a whore!!!{/size}" + $ dynamic_cg("ball/sex", "background2", "base", "mouth_open_tongue2", "eyes_stare", "blush", "spit") + her "{size=+10}I'm a whoooooooore!!!{/size}" + gen "Yes you are!" ("angry", xpos="far_left", ypos="head") + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background2", "base", "mouth_open_tongue2", "eyes_wide", "brows", "blush", "spit") + + her "{size=+5}I'm a whore!!!{/size}" + gen "Yes you are!" ("angry", xpos="far_left", ypos="head") + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + her "{size=+5}I'm a whore!!!{/size}" + gen "Yes you are!" ("angry", xpos="far_left", ypos="head") + + call play_sound("slap") + show screen white + pause.3 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background2", "base", "eyes_dead", "blush", "spit") + her "{size=+5} I'm cumming!!!{/size}" + + with hpunch + gen "*Argh*! My cock!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background2", "base", "eyes_dead", "brows", "blush", "spit") + her "{size=+10}I'M CUMMING! I'm a whore!{/size}" + gen "I can't fucking move it anymore!" ("angry", xpos="far_left", ypos="head") + her "{size=+10}I'm CUMMING!{/size}" + + gen "My cock is stuck in your asshole, slut!" ("angry", xpos="far_left", ypos="head") + her "{size=+10}I'm a whooore!!!{/size}" + gen "Relax your muscles a little, dammit!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background2", "base", "eyes_dead", "blush", "spit") + her "{size=+7}I can't! I'm cumming!!!{/size}" + gen "Fine! Have it your way. I am switching back to your pussy..." ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background2", "base", "eyes_up", "blush", "spit") + her "*Huh*?" + call blkfade + + gen "Can't pull out!" ("angry", xpos="far_left", ypos="head") + gen "Relax your damn anus, girl! ..." ("angry", xpos="far_left", ypos="head") + + call play_sound("plop") + with hpunch + pause.3 + + her "..........." ("angry", "narrow", "annoyed", "up",cheeks="blush",tears="messy", ypos="head", flip=False) + gen "There..." ("base", xpos="far_left", ypos="head") + + + ### INSERTING ### + + call play_sound("insert") + with hpunch + with kissiris + pause.5 + + hide screen bld1 + hide screen blkfade + $ dynamic_cg("ball/sex", "background2", "base", "blush", "mascara", "spit") + her "{size=+10}*AAAAAAAAAAAH*!!{/size}" + her "It's in my pussy again..." + gen "Yes it is, slut!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background2", "base", "mouth_open", "eyes_up", "lashes", "blush", "mascara", "spit") + her "But I'm still cumming!" + her "What is happening to me, sir!?" + gen "Relax girl, I know what I'm doing!" ("base", xpos="far_left", ypos="head") + gen "This is normal for a slut." ("base", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background2", "base", "eyes_up", "lashes", "blush", "mascara", "spit") + her "{size=+5}No! I will go insane!!!{/size}" + gen "You will not. Just ride the wave." ("angry", xpos="far_left", ypos="head") + gen "Enjoy the sensation while I keep on pounding your pussy!" ("angry", xpos="far_left", ypos="head") + her "{size=+5}*Ah*!!!{/size}" + + $ dynamic_cg("ball/sex", "background2", "base", "mouth_open", "eyes_down", "lashes", "brows", "blush", "mascara", "spit") + her "{size=+5}*Ah*!!!{/size}" + her "{size=+5}I'm a whore!!!{/size}" + gen "Yes you are!" ("angry", xpos="far_left", ypos="head") + her "{size=+5}I'm a slut!!!{/size}" + gen "Yes you are!" ("angry", xpos="far_left", ypos="head") + gen "*Ah*... I think I am getting close myself..." ("angry", xpos="far_left", ypos="head") + gen "*Argh*!" ("angry", xpos="far_left", ypos="head") + + menu: + "-Cum inside Hermione's pussy-": + $ d_flag_01 = True # Came into pussy + + gen "You think your pussy is ready for this, whore?" ("angry", xpos="far_left", ypos="head") + her "Sir?!" + gen "Then take this!" ("angry", xpos="far_left", ypos="head") + + show screen white + pause.1 + hide screen white + pause.2 + show screen white + pause .1 + hide screen white + with hpunch + $ dynamic_cg("ball/sex", "background2", "base", "eyes_wide", "blush", "mascara", "spit", "cum_pussy") + + her "{size=+5}*Ah*! *AAaaah*!!{/size}" + gen "{size=+15}*ARGH*!!!!!!!!!!!!!!!!{/size}" ("angry", xpos="far_left", ypos="head") + + her "{size=+5}*Ah*! I can feel it! It's so hot!{/size}" + gen "*Argh*! Yes!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background2", "base", "eyes_up", "lashes", "blush", "mascara", "spit", "cum_pussy", "cum_extra") + + her "{size=+5}It's filling me up! It's filling me up!!!{/size}" + gen "Yes! You whore! I'll pump your witch cunt full of my cum!" ("angry", xpos="far_left", ypos="head") + + $ dynamic_cg("ball/sex", "background2", "base", "eyes_down", "mouth_open_tongue2", "blush", "mascara", "spit", "cum_pussy", "cum_extra") + her "[genie_name]! My dress!" + gen "What?" ("angry", xpos="far_left", ypos="head") + her "Make sure you don't get any on my dress!" + gen "Shut up about your dress, whore! You are ruining the moment!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background2", "base", "eyes_up", "lashes", "blush", "mascara", "spit", "cum_pussy", "cum_extra") + her "{size=+5}I'm sorry! Your whore is sorry!!!!{/size}" + gen "Yes! Much better!" ("angry", xpos="far_left", ypos="head") + gen "*Ah*......." ("angry", xpos="far_left", ypos="head") + + "-Cum inside Hermione's butt-": + $ d_flag_01 = False # Came into asshole + + gen "Your butthole better be ready for this, whore!" ("angry", xpos="far_left", ypos="head") + her "What?!" + + call play_sound("insert") + pause.5 + her "*Ah*..." + + call play_sound("plop") + with hpunch + with kissiris + $ dynamic_cg("ball/sex", "background2", "base", "eyes_stare", "mouth_open", "blush", "brows", "mascara", "spit") + her "{size=+10}*AAaaaahhhhh*!!!{/size}" + her "{size=+5}It's in my butthole again!{/size}" + $ dynamic_cg("ball/sex", "background2", "base", "eyes_up", "mouth_open", "blush", "brows", "mascara", "spit") + her "{size=+5}No, sir, please! Don't cum in my butt!{/size}" + her "{size=+5}No, I will die!!!{/size}" + gen "You will not die, you silly girl." ("angry", xpos="far_left", ypos="head") + gen "You will orgasm like crazy, maybe even pass out for a while, but that's all..." ("angry", xpos="far_left", ypos="head") + her "No, sir, please... I'm scared..." + gen "Take this, whore!" ("angry", xpos="far_left", ypos="head") + show screen white + pause.1 + hide screen white + pause.2 + show screen white + pause .1 + hide screen white + with hpunch + + gen "{size=+15}*ARGH*!!!!!!!!!!!!!!!!{/size}" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background2", "base", "eyes_stare", "mouth_open", "blush", "brows", "mascara", "spit") + her "{size=+5}*Ah*! I can feel it!!!{/size}" + gen "*Argh*! Yes!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background2", "base", "eyes_stare", "blush", "brows", "mascara", "spit", "cum_anal") + her "{size=+5}It's filling me up! It's filling me up!!!{/size}" + gen "Yes! You whore! I'll pump you full of my cum!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background2", "base", "eyes_down", "blush", "mascara", "spit", "cum_anal") + her "[genie_name]! My dress!" + gen "What?" ("angry", xpos="far_left", ypos="head") + her "Make sure you don't get any on my dress!" + gen "Shut up about your dress, whore! You are ruining the moment!" ("angry", xpos="far_left", ypos="head") + $ dynamic_cg("ball/sex", "background2", "base", "eyes_up", "blush", "lashes", "mascara", "spit", "cum_anal") + her "{size=+5}I'm sorry! Your whore is sorry!!!!{/size}" + gen "Yes! Much better!" ("angry", xpos="far_left", ypos="head") + + call ctc + + show screen blkfade + with d9 + + stop music fadeout 1.0 + her "*Ah*..." ("silly", "narrow", "annoyed", "up",cheeks="blush",tears="mascara_soft", ypos="head", flip=False) + her "I can... barely... stand..." + gen "I know what you mean, girl." ("angry", xpos="far_left", ypos="head") + gen "This was our most intense fucking session yet!" ("angry", xpos="far_left", ypos="head") + her "Yes... I never knew I could..." ("silly", "narrow", "annoyed", "up",cheeks="blush",tears="mascara_soft") + her "orgasm so hard..." + her "Sir... That thing you wanted to discuss with me..." ("soft", "narrow", "annoyed", "up",cheeks="blush",tears="mascara_soft") + gen "Yeah... You know what? I actually wrote you a little letter on the matter..." ("base", xpos="far_left", ypos="head") + her "A letter?" ("open", "narrow", "worried", "mid_soft",cheeks="blush",tears="mascara_soft") + gen "Yeah... It should explain a couple of things..." ("base", xpos="far_left", ypos="head") + her "Oh... Alright..." ("silly", "narrow", "annoyed", "up",cheeks="blush",tears="mascara_soft") + gen "Just come and pick it up from my office tomorrow morning..." ("base", xpos="far_left", ypos="head") + gen "Or whenever..." ("base", xpos="far_left", ypos="head") + gen "Or don't pick it up, I don't care..." ("base", xpos="far_left", ypos="head") + gen "............." ("angry", xpos="far_left", ypos="head") + her "Sir...?" ("base", "base", "worried", "mid", cheeks="blush",tears="mascara") + gen "Stop it with the eyes! You're making me feel uncomfortable..." ("base", xpos="far_left", ypos="head") + gen "I wrote you a letter, so what?" ("base", xpos="far_left", ypos="head") + her "I think it's sweet........." ("base", "base", "worried", "mid", cheeks="blush",tears="mascara") + gen "I said stop gawking at me girl. I thought you were late for your dance or something!" ("angry", xpos="far_left", ypos="head") + her "{size=+5}THE DANCE!{/size}" ("open", "wide", "base", "stare",cheeks="blush",tears="mascara") + her "I'm sorry, I have to go!" + her "I will see you later, sir!" + + call play_sound("running") + pause 3 + gen "......................" ("base", xpos="far_left", ypos="head") + gen "No you won't..." ("base", xpos="far_left", ypos="head") + gen "Farewell...{w=0.3} Hermione..." ("base", xpos="far_left", ypos="head") + + pause 2 + + play music "music/court-of-the-queen-by-kevin-macleod.ogg" fadein 1 fadeout 1 + + $ dynamic_cg("ball/intro", "background", "bloom", "hermione2", "foreground", "overlay") + + ">You linger in the alcove for a short while longer..." + ">And watch Hermione participate in the formal dance." + hide screen bld1 + call hide_blkfade + call ctc + + ">There is no doubt that she is tired and exhausted, but she hides it well..." + + gen "(*Hmm*... The girl really is strong...)" ("base", xpos="far_left", ypos="head") + gen "(In all sorts of ways...)" ("base", xpos="far_left", ypos="head") + + + if d_flag_01: # Came into pussy + ">You see a tiny stream of glistening liquid dripping down her inner thighs, going unnoticed by the crowd." + else: # Came into asshole + ">You notice that she sort of clenches her buttocks together every now and then..." + ">Probably doing her best to keep in the enormous load you deposited up her butthole just a moment ago..." + + + gen "................................................." ("base", xpos="far_left", ypos="head") + gen "..............." ("base", xpos="far_left", ypos="head") + gen "(I'd better go now...)" ("base", xpos="far_left", ypos="head") + + call ctc + + $ renpy.end_replay() + + label test_final_scene: + + # Genie is leaving + call blkfade + pause 1 + stop music fadeout 1.0 + + centered "{size=+7}{color=#cbcbcb}Outskirts of hogwarts{/color}{/size}" + + $ game.daytime = False + call update_interface_color + + hide screen cg + + $ dynamic_cg("ball", "171") + pause.3 + call hide_blkfade + + call play_music("night_outside") + call ctc + + call play_sound("walking_on_grass") + pause 2 + + $ dynamic_cg("ball", "171", "172") + pause 1 + gen "Well, now it is really time for me to go..." ("base", xpos="far_left", ypos="head") + + $ dynamic_cg("ball", "171", "172", "173") + pause.5 + + gen "Goodbye, world of bizarre magic..." ("base", xpos="far_left", ypos="head") + gen "Goodbye, my whores..." ("base", xpos="far_left", ypos="head") + gen "Goodbye, smart cumslut Hermione..." ("base", xpos="far_left", ypos="head") + if cho_unlocked: + gen "and my token asian Cho..." ("base", xpos="far_left", ypos="head") + if astoria_unlocked: + gen "and my sassy blonde Astoria..." ("base", xpos="far_left", ypos="head") + if luna_unlocked: + gen "and my {i}wackspit-sucking{/i} queen Luna..." ("base", xpos="far_left", ypos="head") + if susan_unlocked: + gen "and my big-titted redhead Susan..." ("base", xpos="far_left", ypos="head") + gen "and of course, goodbye to my favourite nympho, Tonks..." ("base", xpos="far_left", ypos="head") + gen "....................." ("base", xpos="far_left", ypos="head") + gen "..........." ("base", xpos="far_left", ypos="head") + "......" + + call play_sound("magic") + with hpunch + + $ dynamic_cg("ball", "171", "174") + pause.2 + + $ dynamic_cg("ball", "171", "175") + pause.2 + + $ dynamic_cg("ball", "171") + call ctc + + show screen blktone + with d7 + + $ achievements.unlock("ending") + stop music fadeout 1.0 + + if public_whore_ending: + centered "{size=+7}{color=#cbcbcb}Congratulations on completing the game!{/color}{/size}\n\n{color=#cbcbcb}This is one of two possible endings (public whore){/color}" + else: + centered "{size=+7}{color=#cbcbcb}Congratulations on completing the game!{/color}{/size}\n\n{color=#cbcbcb}This is one of two possible endings (personal whore){/color}" + + show screen blkfade + with d7 + + if not persistent.game_complete: + call original_credits + + pause.5 + + # Dumbledore is back at Hogwarts + centered "{size=+7}{color=#cbcbcb}The next morning...{/color}{/size}" + + $ game.daytime = True + call update_interface_color + + $ hermione.equip(her_outfit_default) + + hide screen dynamic_cg + hide screen blktone + stop bg_sounds + stop weather + hide screen notes + hide screen bld1 + + $ game.weather = "random" + call weather_sound + show screen weather + + show screen main_room + $ chair_OBJ.hidden = False + + call gen_chibi("hide") + $ owl_OBJ.hidden = True + hide screen with_snape + + $ chair_OBJ.hidden = False + $ desk_OBJ.idle = "desk_dumbledore" + + hide screen blkfade + with d9 + + if public_whore_ending: + call play_sound("door") + call sna_chibi("stand","door","base", flip=False) + with d3 + pause.8 + call sna_walk("mid", "base") + pause.8 + + call play_music("snape") + dum1 "Good morning, Severus." + sna "......................................." ("snape_09", xpos="base", ypos="base") + dum1 "I have the most extraordinary tale to share with you, old friend." + sna "......................................" + dum1 "But before I do..." + sna "........................................" + dum2 "*Ehm*... Severus?" + sna "........................................." + sna "Who rules?" ("snape_06") + dum2 "I beg your pardon?" + sna "Who rules?" ("snape_26") + dum2 "... who rules what?" + sna "R...?" + dum2 "R?" + sna "Robin....?" ("snape_27") + dum2 "You don't make any sense, Severus." + sna "Ah, bloody hell........." ("snape_29") + pause.5 + call ctc + + stop music fadeout 1.0 + + hide snape_main + hide screen bld1 + show screen blkfade + with d7 + pause.1 + + else: + # Personal whore ending + call play_sound("door") + call her_chibi("stand","door","base", flip=False) + pause.8 + + call her_walk("mid", "base") + pause.8 + + call play_music("hermione") + her "Sir, if this is about yesterday..." ("upset", "closed", "base", "mid", xpos="right", ypos="base") + dum1 "Good morning, Miss Granger." + her "It's not like I actually enjoyed it or anything, you know..." ("annoyed", "narrow", "annoyed", "mid") + dum1 "Miss Granger, I found this letter on my desk..." + dum1 "It's addressed to you..." + her "A letter, sir?" ("soft", "base", "base", "mid") + her "Oh, of course! The one you wrote for me, sir." ("grin", "happyCl", "worried", "mid",emote="sweat") + dum1 "This letter is not from me, miss Granger." + her "It is not?" ("annoyed", "squint", "base", "mid") + her "Oh, I see..." ("grin", "happyCl", "worried", "mid",emote="sweat") + her "There is no need to be so shy about this, sir. It's alright." + dum1 "*Ahem*... here it is." + her "Thank you, sir." ("base", "base", "base", "mid") + her "Let's see..." ("annoyed", "narrow", "worried", "down") + hide hermione_main + with d3 + stop music fadeout 7.0 + pause.1 + + # Read letter from Genie + $ letter = Letter(text="""{size=-5}To: Hermione Granger{/size} + +{size=-4}Dear [word_01], + +I am not who you think I am... I'm not even human, so to speak. For months I have been posing as a person known to you as Professor Dumbledore. But now it is time for me to go back [word_02], where I belong. +By the time you will read this letter I shall be long gone. We shall never cross paths again, but I promise you that I will cherish the memories of my brief time in your strange world. + +Farewell, my little [word_03].{/size} + +{size=-5}-Yours truly,\n[word_04]-{/size}""" + ) + + $ letter.open() + + her "..........................................................................................................." ("disgust","wide","worried","shocked",cheeks="blush") + dum1 "I assume you were expecting to meet with that \"[word_04]\" fellow?" + dum1 "The one who has been impersonating me for the past several months?" + her "..........................................................................................................." ("disgust","wide","worried","shocked",cheeks="blush") + dum1 "Well, now that I am back..." + dum1 "I will be putting an end to all that \"favour selling business\", of course." + her "" ("scream", "base", "angry", "mid",emote="angry") + pause.1 + with hpunch + call play_music("hermione") + her "{size=+7}What?!!{/size}" + her "How am I supposed to win any points then?" ("disgust", "narrow", "base", "mid_soft") + dum1 "The same way you always did, miss Granger." + her "Huh...?" ("open", "narrow", "annoyed", "mid",cheeks="blush") + dum1 "With hard work." + her "That's just stupid!" ("angry", "base", "angry", "mid",cheeks="blush") + dum2 "Miss Granger, would you mind to guard your tongue when--" + + ### TITS ### + $ hermione.strip("robe", "accessory") + $ hermione.strip("top", "bra") + her "" ("annoyed", "narrow", "annoyed", "mid") + stop music + call ctc + + dum3 "{size=+4}!!!{/size}" + her "Or would you rather see my pussy, sir?" ("scream", "base", "angry", "mid",emote="angry") + her "" ("annoyed", "base", "angry", "mid") + + $ hermione.strip("bottom", "panties") + call ctc + + with hpunch + dum5 "{size=+7}*GHT*!!!{/size}" + her "I am willing to do anything to get those points, sir!" + + her "And I mean {size=+9}ANYTHING!!!{/size}" ("scream", "base", "angry", "mid",emote="angry", trans=hpunch) + call her_walk("desk", "base", reduce=0.8) + call blkfade + + call play_sound("climb_desk") + pause.7 + + dum4 "Oh, dear... {heart}" + pause 1 + + + $ renpy.play('sounds/win2.ogg') + + centered "{color=#cbcbcb}This concludes the original Witch Trainer ending{fast}\n\n{size=+7}-\{Thank you for playing!\}-{/size}{/color}" + + pause 2 + + $ ball_quest.completed = True + $ persistent.game_complete = True + $ persistent.gold = game.gold + + if public_whore_ending: + $ persistent.ending_02 = True + else: + $ persistent.ending_01 = True + + # But wait, there's even more + jump ending_after + +label original_credits: + play music "music/Only 115 (Electro Loop)_125 BPM.ogg" fadein 1 fadeout 1 + + centered """{cps=20}{size=+5}{color=#ea91b0}-Witch Trainer-{/color}{/size}\n\n + {size=+5}{color=#cbcbcb}The following credits are the creators of the original game, Witch Trainer,\nand did not take part in creating, or are affiliated in any way with the Silver mod.{/color}{/size}\n\n + {color=#e5e297}-\{Written and directed by\}-{/color}\n{size=+5}{color=#cbcbcb}AKABUR{/color}{/size}\n\n + {color=#e5e297}-\{Head programmer\}-{/color}\n {size=+5}{color=#cbcbcb}AKABUR{/color}{/size}\n\n + {color=#e5e297}-\{Artwork by\}-{/color}\n {size=+5}{color=#cbcbcb}AKABUR{/color}{/size}\n\n + {color=#e5e297}-\{Additional Artwork\}-{/color}\n {size=+5}{color=#cbcbcb}DAHR{/color}{/size}\n\n + {color=#e5e297}-\{Texts proofread and edited by\}-{/color}\n {size=+5}{color=#cbcbcb}LYK.D9{/color}{/size}\n\n + {color=#e5e297}-\{Technical advisor\}-{/color}\n {size=+5}{color=#cbcbcb}XALJIO{/color}{/size}\n\n + {color=#e5e297}-\{Game testers\}-{/color}\n {size=+5}{color=#cbcbcb}XALJIO\nLYK.D9\nDAHR\nAKABUR{/color}{/size}\n\n{/cps}""" + + centered """{cps=40} + {size=+2}{color=#e5e297}-\{CREATOR OF THIS GAME WOULD ALSO LIKE TO PERSONALLY THANK\}-{/color}{/size}\n\n + {size=+5}{color=#cbcbcb}Dahr{/color}{/size}\n + {color=#e5e297}for still working for me pretty much free of charge, for inspiring me to keep on going and simply for being a good friend and colleague. {/color}\n\n + {size=+5}{color=#cbcbcb}Xaljio{/color}{/size}\n + {color=#e5e297} for not only being my personal \"Ren'Py\" consultant but also an extremely thorough game-tester.\n\n{/color} + {size=+5}{color=#cbcbcb}Lyk.D9 (a.k.a. Silentchill){/color}{/size}\n + {color=#e5e297}for toiling tirelessly over my texts full of typos and broken grammar.{/color}\n\n + {size=+5}{color=#cbcbcb}Bookfisher{/color}{/size}\n + {color=#e5e297}For everything.\n\n{/color} + {size=+5}{color=#cbcbcb}The fate (universe or higher power){/color}{/size}\n + {color=#e5e297}For giving me an opportunity to release another game while retaining complete creative freedom.{/color}\n\n\n + {size=-1}{color=#cbcbcb}A whole bunch of other people who helped me with development of this game in one way or another,\n but whom I forgot to mention.{/color}\n + {color=#cbcbcb}And of course to everyone else who supports\nme and my work.{/color}{/size}{/cps}""" + + centered """{cps=70} + {color=#cbcbcb}This is not a commercial video game. The entire project was independently founded solely through\nhttp://www.patreon.com/ and\nby \"Hentai United\" subscribers.{/color}\n\n\n + {color=#e5e297}{size=-1}-People who supported development of this game with extraordinary amount of money-{/size}{/color}\n + {color=#cbcbcb}Lawrence Dash, Wirefull, Dorago, Benoit Yan Larose, Talisca{/color}\n\n + {size=-1}{color=#e5e297}-\"INVESTOR\" pledges-{/color}{/size}\n + {color=#cbcbcb}Ace, Linus Furtenbach (Bluue), Eduardo Pereira Carneiro, Vicente Sampedro Burgos, Morning Dawnstar, Wolo, John Layon, stefan mitrano, Gavin Spears, sergio.{/color}\n\n + {size=-1}{color=#e5e297}-\"AGENT\" pledges-{/color}{/size}\n + {color=#cbcbcb}Cameron MacDowell, Zarsher, Guynonymous, Nerzha, Silvanus2004, Xipomus, Carpy Rex, Adler, Deitan-Baruch St-Amand, Martin Neal, wetrx, mark howard, Kenneth Aguilar, alt, David McClellan, Leo H Wilkin, Thorn, TheDudeAbides, Alexandre Rouleau, thomas taylor, Alexander, Redmoonx22, Valdee, Alexander Lykke Landkildehus, Lucas Ferrari, Dom, derek zhang,Charlatan, Preston C T, waylan, Forrest, Loopy, JohnnyBB, Phantom Void, Kyaa, Stephen Richardson, mark herzog, will newton, Sascha Klug, Joshua McDonald, Undying S, John Cawley III, KitsuneEyes, Slingthatcat, Kieran James, Homod saleh al-shammri, randomuser89, Paul Keating, Antonio B, Marko, Tobias, Akhil Chokshi, Smiling_Jack, Clif Morgan, Derek Heynsbergen, Jack Cartwright, Damien Zaid, callmemusashi Mozambiqued, Nemesis Valentine Vanyar, Stalker, Jason, 4nubis, Curtis, Michael Simon, AB, The Wanderer (Mark Hawker), paul, JEB, Voe, Aselobar, Elgrangato82, froste, YllegaL, Bisongun, Skye Tomlinson, Parad0x, Eric Chen, Destiny, Podchamawa Petrovitch, Will, lc, Sathyan Mathai, Lisandro Gil, bill tedd, Tommy Turner, Marcel Kral, Oric13, Ren Ashjiro, anthony donihee, Honey Withers, Christopher, TofuCats, Drake King, Bookfisher Herring, Dustpan, dusty parrott, Bjorn, Robert Jolly, wilson yang, Tudor G, Arzaz, Etienne Ngo, xazathothx, Robert L Schliff, RO, DavidB, Daedilus, david green, Matt, Ketil, ALEXANDER KOVALEV, Oa, John, PG, largo_leet, David, Artemsgvozdem, heyPert.{/color}{/cps}""" + + centered """{cps=70}{size=-1}{color=#e5e297}-\"REBEL\" pledges-{/color}{/size}\n + {size=-4}{color=#cbcbcb}1234ghumm, A. R., AJ Ferolie, Catalyst Greenhorn, Abraham Benitio, Actafool812, Adam, Casax5, Adam, FearTheDee, Akasection, Alejandro Luna, Aleksandr, Alex Odoul, Alex P., Alexander Randolph, Maidaniuk Yurii, Alexander, Alexei, Alkosh, Allan Pineda, Altagar, Andreas Janning, Andrei Kuz, Andrey Nikolaev, Anton Belyankin, Anton Tropicflames, Antonio Jos Mucoz Gonzalez, Antonio Rivera, Artur Kevorkov, Baran, BearPerson, BeepBep, Benjamin Drew, Bernard Winters, Bob Mannaro, Boyko, Brad, Brandon Gauthier, Brandon Mirr, Brent, Brett Williams, Bruce Gates, Byakuya36, Cirrus, Calmea, Carez, Carnosaur, Chad Dunkerley, Charles Able, Chemmy, Chris, Christopher Coulter, Christopher Woo, Christopher, Conner Owen, Conrad Boucher, Cruise Russo, Cyanide Sam, DMetal, Dakota Rude, Damian Boggs, Daniel Beard, Daniel Nathans, Daniel Smith, Daniel Szczuka, Daniel Torres, Danno, Danny Johansson, Danny Nguyen, Darkflame256, David Lestina, David Ruskin, David, Dean, Devin Barr, Dirk Delva, Donaj88, Donoth Aveano, DoornailsAreJealous, Demodraken, Double A, Drity, Edward le coyte, Eldar Scum, Eric Hsu, Evan waleske, Fabian, Faux, Fetsch Sebastian, Finrock, Fix, Formless, FoxPrince623, Frank Pietsch, Fraziel, Frederic Chen, Garrett Smith, Geoff Levario, Georgika, Gregc, Greg Hartley, Gregory G, Gunderson, Harm Harm, Harry Tizard, Hooverspleen, Ian W, Innes French, Jacob Thompson, Jacob, Jake Smith, Janis Feldbergs, Janus, Jared Whisenand, Jarred Leverton, Jason Buisman, Jason Chong, Jeff Abrams, Jeff, Jeremiah, John F, John S, John doe, John, Jonathan Backer, Jonathan, Joseph Balbuena, Joseph Oliveira, Josh Stegmaier, Juan Gomez, Jurdia, Justin Golden, Karl Stevenson, Karolis, Kenneth Guevarra, Kenneth Jackson, Kenny Huang, Kimo Linder-Fattah, Kolkina, Kristian Lund Jensen, Kryssler, Kurrel, Kyle Sarty, Kyuubi43, LIndy, Levone W., Jonathan Liu, Lockkaliber, Lord G, Lord Rayek, Lothvarthian Malik, Lukas Vystup, Luke Arrowsmith, Magmanox, Majushi, Mario Mueller, Mark Walrusburg, Martino Livio Martinello, Mason Davis, Matt Sullivan, Matthew Young, Michael Klepper, Michael McPherson, Michael O'Hara, Michael, Mike M., Mike Orlando, MinoCrossing, Miran, Mitchell Goodwin, Monky of Space, Morten Brunebjerg Hansen, Myers, N Metso, Naintoxe, Nairolf, Nathan S, Neo Savoric, Niels T, NugLord, Number37, Nym Nemo, Oliver Pirie, Oscar Lan, PS, Passionately Odd Syntax, Patrick Fochler, Patrick, Paul Allen, Peter Grnlykke, Professor Snape, PuddingPowder, Pel-Tore, Rabe, Raglan Strom, Randolph Carter, Random, Reaver78, Rekoar, Reny Frederiksen, Richard Buettner, RickRub, Rightmind, Rob, Robert Doughty, Robert Simmons, Rodrigo Das Flores, Rune Daugaard Lundsteen, Runkle, Russell, SJ M, SYukito, Sane 300, Sayting, Sinedd, Scorch289, Sean Carstensen, Sebastian Tauch, Sehad, Shane Fitzsimons, Shawn Aiken, Skellman, Skull616, SlaveToTheSound, Smaug, Some Guy, Steffen Nissen, Stephen Krieger, Steve Jones, Steven Cunningham, Syr, TGriz, Talon Grant, Teemu, Thae, The Masked Masturbator, This Isntmahname, Thomas Frobish, Thomas Grimes, Thomas Vazquez, Timmothy Firewood, Tom Arne Vestby2, Tony Taylor, Tony Veliz, Truvor, Tuki, Tyler, Venron, Vervalsen, Vi9, Visp, Wanderer, Weenie Beenie, Wesley Gamble, XDrakeX, Xev, YummyTiger, Yuu Yi, Zach Rzepiela, Zakmonster, Zeath, Zenzard, Zim outside, Zoggy, alvin suryaputra, am1tg3, andrew gardiner, artisticMink, barry r king, bloodangel99, butts, caleb4532, charles turnbull, cvonsuela28, dingo egret, dingo1489, eXotic, fernando frias, gliph13, ippherita, izys, jabix, jassem dashti, john smith, josiah richter, karkazin, kyle mock, lia sven, lucas2684, n1ghtfox, nobody, potatohead, progste, randellspec, retchedegg, robster, silvarius2000, srt20022003, strider19, tehcalipwnt, terribleplan, thegreatbambe, timmy turner, varoksa, xenus, ziric.{/color}{/size}\n\n{/cps}""" + + centered """{cps=70} + {size=-1}{color=#e5e297}-\"ACTIVIST\" pledges-{/color}{/size}\n + {size=-4}{color=#cbcbcb}Adam, Alvin, AmateurArtist98, Anders Sandahl, Naqqash Chaudhry, Andre, Andrew E., Bayushi, Ben Belcastro, Brandon Louie, Brandon Robinet, Brian Wilson, Carmen Williams, Chad Bennett, Dan George, Darklogic, Darknezzz, Dave Shevlin, David Crosby, David Sparkes, Douglas Jones, Draconic Paragon, DragonTamer, Ervin, Francis Dixson, Fredinator, Gene Boglin, George Craig, Greg, Guillaume Mroz, Gustaf Johansson, Hirin, Ian Lindop, IanDasein, Inge, Izzy Sabur, JBTClown, JP, Jack, Jacob Kain, Jan Hanenkamp, Jan M., Jan, Johannes Uwer, John Turner, Joshua Baadsgaard, KiSwordsman, Krux2022, L, Legio 20th, Marconi Ribeiro, Mike, Marius L, Mathias Frandsen, Matthew Marqueta, Max, Michael Webb, Miha Antauer, Mikhail V. Platonov, Mitch, Mountainj6, MrDurper, Sean Hill, Sam, Muirewedd, Neogeta, Nick Foronda, Nick, Noah Gerhards, Oren Barzilai, Pashike, Peeves, Phil Fairbanks, Philip G Honore, Riu Bas, Robert, Reinis Aleksejevs, Rougespartan181, Robert Lesundak, SO, SYH, Sacs, Sapherin, Sayyid, Sean, Shawn MacInnis, Simanith, Soda Zero, Speculations, Stephen Evans, Stonedrake, TRONboy, Tamenund Jones, Tintron, Victor Jd, Vincent McCool, Vitaliy Kasianenko, Vorcai0, Wolfcub, X.p., X39, Yan Luong, Zaker, chippy, joesco726, kurorol2, lambroll, ljennia, matthew lampell, moonwalkin, nh, raaq, six2make4, zack, Andry Sidorov.{/color}{/size}\n\n + {size=-1}{color=#e5e297}-\"SUPPORTER\" pledges-{/color}{/size}\n + {size=-4}{color=#cbcbcb}AS84, Aaron Gregory, Gianfranco Calzoni, Aarvil Kemph, Aestus, Alex Martin, Andrea, Andreas, Andrew, Antilles, Antonboeg, Aran, Armando Soto, Azuliar, Batman, Balint Sule, Ben Rog-Wilhelm, Benjamin Cathey, Beth, Brad Hingston, Brandon Grant, Brendan, Brian Borden, Bru, Canyon, Capperroff, Chaintan, Christian Wong, Colton Clayton, Corey S., D, Damian Paradis, Daniel Chai, Daniel Geach, Daniel, Danny Mullay, Darpy, Dave doedry, David Leitner, Dax, Doctor Worm, Dragonman, Edd Holmes, Erebe, Eric Speaker, Fattycakes, FearTheDee, FeyOne, Filip Jaromin, Florian Eberle, FooldiverDX, Fortifel, Frank Bull, G V, Gaetano, Gary Tinsley, Gerald, Gerald, Gerhalt, Gregoire Fauconnier, Gregory, Happy Days, Hellomellowyellow, Hurf durf, Ian Sayer, Ilya, Ivan Nadasaki, J Solomon, Jack Simons, Jack Trebles, James Brown, James Do, Jan-Kristoffer Brekke, Jayro Zipzapili, Jesse Doerksen, Jim, John Jon'zz, John Smith, Jonas Högman, Jose Gonzalez, Joshua West, Julian Silva, KC maps, Kabuto, Kasper Nohr, Kenny Bailey, Kevin McKie, Kuroguma, Lanthanio, Louie Castro, MaiconMM, Majinken, Malcom Reynolds, Marc Voigt, Marcel Muller, Marius Thomassen, MarkAurel, Martin Ax, Matri, Matt, Matthew Lam, Max Robitzsch, MehMonkeys, MercuryTwins, Messor Marra, Michael Troseth, Michael, Michael, Michael, Mike Bow, Mike Jones, Mike Moperz, Mikhail, N0body, NalfeinDoUrden, Nate A, Nicholas Alan McGuire, Nikuss, Nils Harder, Nitrat, Nordicberserk, Notsutos, Oberon, Onyxdime, Oxion1988, Ozzy, Paradosi, Pasi Huttunen, Patrick Gill, Paul Coad, patrick welsh, Paul, Pshenitsyn, PeeM, Peter Nikolas, Peter Ryskin, Pitt85, Preator, Pulimanne, Randall Lively, Richard Dumont, Richard Heying, Richard Soderberg, Riley Heffernan, Robert Bodo, Robert Davis, Rodrigo Rosado, Ronald, Roy Zimmermann, Ryan Bossard, Ryan Calhoun, Salvadore Broadfoot, Scott Barrie, Sebastien Elie, Sebastien Jalbert, SgtAfro, Shadefalcon, Stefano Sottocorna, SilverAxe, Sixxiie, Sky Valverde, Sodajuice, Steffen Sloth, TK, TP Samblanet, Taylor Patton, Taylor, Tenebrys Hentai Flash Games, Matthew Pruter, John Stanko, craig chadwick, TheOriginalJ, Thomas, Timeyy, Tony Li, TonyNinja, Tracy Scops, Travis Haapala, TrikJoker, Tyler Jones, Tyson, Urza Viderico, VC, Vasder, Vay Jay, Victor Sarosi, Warren P Nelson, Wayne Chattillon, William Farris, William Golding, Wlodzimierz Donatowicz, Xaljio, Xisis, brett, bronzeRanger, clerk4470, ghosti1, gillen, ismael torres, jaron uecker, levi tibbals, oakland, otakuguy01, rip_cpu, severin, sirpoffalot, teh_cabbage, tenko, trajor white, wilhelm, winsloven, Arkadii Terentiev, xxx, DAHR.{/color}{/size}\n\n + {color=#e5e297}{size=-4}-\{Thank you, Joseph Antoni, for organizing all these 750+ names for me.\}-{/size}{/color}{/cps}""" + + pause 1 + call ctc + stop music fadeout 3.0 + return diff --git a/game/scripts/events/ending_after.rpy b/game/scripts/events/ending_after.rpy new file mode 100644 index 00000000..a130f354 --- /dev/null +++ b/game/scripts/events/ending_after.rpy @@ -0,0 +1,350 @@ + +# After the ending when Dumbledore has returned and the original credits have played +# the player gets a choice to either end the game or return to before the ending happened + +# Genie gets stuck in the cosmos not being able to go anywhere +label ending_after: + $ game.daytime = False + call update_interface_color + + call blkfade + call hide_screens + centered "{size=+7}{color=#cbcbcb}Somewhere outside of time and space...{/color}{/size}\n\n" + play music "music/epic-unease-by-kevin-macleod.ogg" fadein 1 fadeout 1 # noloop + pause 3 + g2 "Where... where am I...?" with d5 + g2 "Am I dead... is this the end...?" + g2 "Genies aren't supposed to die are they?" + g12 "No wait... this is different...{w=0.4} what is this feeling?" + g12 "I feel..." + show screen white + pause .1 + hide screen white + g14 "Everything!" with hpunch + g14 "The...{w=0.4} The cosmic power is running through me!" + g14 "I can see it, the universe... No...{w=0.4} Multiple universes... all around me." + g14 "But... Why?" + g14 "Why am I not back yet!?" + show screen white + pause .1 + hide screen white + $ renpy.sound.play("sounds/thunder_2.ogg") + play bg_sounds "sounds/pulse.ogg" + g15 "*ARGH*!" with hpunch + g15 "My form is being pulled in multiple directions!" + g15 "If I don't get out of here I'll be torn apart!" + stop bg_sounds fadeout 4 + show screen white + pause .1 + hide screen white + g14 "Wait...{w=0.8} I know..." with d3 + g14 "This... it must be my magic!" + g14 "I need to focus where I want to be... Or I'll be stuck... stuck here forever!" + g14 "Stupid... life choices!" + play bg_sounds "sounds/pulse.ogg" + g14 "Focus..." + g14 "I just left a bunch of Sluts at that school!" + g14 "But... I need to get home!" + + # Choose to end the game or continue playing + menu: + g14 "What should I do?" + "-Go home, to Agrabah!\n{size=-4}(exit to main menu){/size}-": + g14 "Yes, that is probably for the best..." + show screen white + pause .1 + hide screen white + $ renpy.sound.play("sounds/thunder_2.ogg") + g15 "Agrabah... here I come! You better prepare yourself..." with hpunch + + stop bg_sounds fadeout 4 + stop music fadeout 10 + call big_bang + + $ renpy.full_restart() + + "-Cause a time paradox at Hogwarts-": + g14 "On the other hand..." + g14 "Who doesn't love..." + show screen white + pause .1 + hide screen white + $ renpy.sound.play("sounds/thunder_2.ogg") + g15 "Who doesn't love...{fast} a good old time paradox!" with hpunch + g15 "It better be worth it...{w=0.4} Here I go!" + + stop bg_sounds fadeout 4 + stop music fadeout 10 + call big_bang + + # Genie stands in the forest before he's about to leave + $ dynamic_cg("ball", "171", "172", "173") + call play_music("night_outside") + pause.5 + call hide_blkfade + + gen "Goodbye, world of bizarre magic..." ("base", xpos="far_left", ypos="head") + gen "Goodbye, my whor--" ("base", xpos="far_left", ypos="head") + gen "Wait..." ("base", xpos="far_left", ypos="head") + + # Record scratch, music stops + $ dynamic_cg("ball", "171", "172") + stop music fadeout 1.5 + $ renpy.play('sounds/scratch.ogg') + with hpunch + + gen "What the fuck am I doing..." ("angry", xpos="far_left", ypos="head") + gen "Why leave now when I'm the king of a castle filled with women ready to serve!?" ("angry", xpos="far_left", ypos="head") + + # Heading back to the castle + call play_music("night_outside") + call blkfade + hide screen dynamic_cg + call hide_screens + call play_sound("walking_on_grass") + pause .5 + + ">You hastily make your way back to the castle, wondering what kind of impulse made you want to leave in the first place..." + stop music fadeout 3 + + if public_whore_ending: + play music "music/court-of-the-queen-by-kevin-macleod.ogg" fadein 1 fadeout 1 + ">Arriving at the great hall you glance through the doors and spot Hermione who's currently enjoying the attention she's receiving from some of the other students." + ">You decide it's probably best to head back to your office. But before you get the chance to slip into the shadows Hermione has already begun making her way in your direction." + ">As she steps through the door you notice some Slytherin students looking in your direction, smirks spreading across their faces." + + $ hermione.equip(her_outfit_ball) + her "Back so soon?" ("base", "happy", "base", "L", cheeks="blush", ypos="head", flip=False) + gen "I um...{w=0.4} had a change of heart." ("base", xpos="far_left", ypos="head") + her "Cold outside?" ("base", "base", "base", "mid") + gen "Yes...{w=0.5} that's it." ("base", xpos="far_left", ypos="head") + + ">Standing there in silence, looking at Hermione, you can't help but struggle with what to say." + ">Hermione looks at you expectantly and breaks the silence by extending one of her arms to you." + + her "Care for a dance?" ("open", "squint", "base", "mid", cheeks="blush") + gen "I...{w=0.5} of course!" ("grin", xpos="far_left", ypos="head") + her "..." ("base", "base", "base", "mid", cheeks="blush") + ">With your arms wrapped around Hermione's waist the two of you begin moving along with the music." + ">As some time passes it's very clear that the Slytherin students are looking at you both through the doorway." + gen "Miss Granger..." ("base", xpos="far_left", ypos="head") + her "Yes?" ("base", "narrow", "base", "stare_soft", cheeks="blush") + call play_sound("slap_3") + her "..." ("soft", "happyCl", "base", "up", cheeks="blush") + her "Hey! At least warn me!" ("clench", "narrow", "annoyed", "L", cheeks="blush") + ">Swiftly taking your hand away from Hermione's butt, you give a quick smirk towards your audience." + her "I didn't say stop..." ("soft", "narrow", "base", "L", cheeks="blush") + gen "Of course..." ("grin", xpos="far_left", ypos="head") + ">Without a moments hesitation you lift her skirt up, holding it against her back and leaving her panties exposed." + her "Sir..." ("crooked_smile", "base", "base", "down", cheeks="blush") #could change the sirs here to the name that the player has set for hermione to call you + ">Now firmly gripping her butt with your other hand, you begin to massage her cheeks whilst moving along with the music." + her "..." ("grin", "narrow", "worried", "up", cheeks="blush") #Look of pleasure + ">Your hand finds its way back down, pulling Hermione's panties down with it." + her "Sir...{w=0.4} what are you doing?" ("open", "happyCl", "base", "stare", cheeks="blush") + gen "You seem a little bit tense... just giving you a hand..." ("base", xpos="far_left", ypos="head") + her "But... What if someone notices..." ("annoyed", "base", "base", "R", cheeks="blush") + ">Ignoring her pleas you begin rubbing your fingers between her thighs, not bothering to be discreet." + her "*Ah*...{w} Sir..." ("open", "happyCl", "base", "mid", cheeks="blush") + ">As you move your hand higher up her thighs, Hermione's breathing quickens and a wetness begins to spread across the side of your hand, her legs shaking slightly as she tries to keep it together." + her "Sir...{w=0.4} I..." ("open", "happyCl", "base", "down", cheeks="blush") + ">With the music soon coming to a close you shift your hand and begin stroking against her vagina with even more vigour than before." + her "Sir...{w=0.3} *Ah*...{w=0.5} they'll...{w=0.2} they'll hear me..." ("mad", "happyCl", "base", "L", cheeks="blush") + gen "You better \"come\" quietly then..." ("base", xpos="far_left", ypos="head") + her "Sir... this isn't the time for..." ("open", "happyCl", "base", "mid", cheeks="blush") + ">As the music reaches it's peak, Hermione moves one of her hands off your back and puts it against her mouth to quickly try and stifle herself." + her "*Mmmmf*..." + with hpunch + with kissiris + stop music fadeout 6 #It's a bit sudden and quiet but not sure what to do instead + ">Hermione shudders in your arms and then quickly lets go as the music comes to an end." + her "*Ah*...{w=0.8}*Ah*...{w=0.8}*Ah*..." ("soft", "happyCl", "base", "mid", cheeks="blush") + ">With a quick glance towards the doorway you notice some Slytherin students have blocked it with their backs towards you." + gen "You look tired girl, you'd better pull yourself together..." ("base", xpos="far_left", ypos="head") + her "Yes...{w=0.3} *Ah*...{w=0.6} I just need to...{w=0.3} catch my breath..." ("open", "squint", "worried", "L", cheeks="blush") + gen "Perhaps sooner rather than later, the music has stopped..." ("base", xpos="far_left", ypos="head") + her "Oh...{w=0.3} *Ah*...{w=0.3} I didn't even notice..." ("open", "happy", "worried", "mid", cheeks="blush") + ">Hermione moves to stand up but stumbles as she tries to compose herself..." + ">As she gets on her feet she looks up and notices the backs of the Slytherins in the doorway. She spins around to look at you, a red colour quickly spreading across her cheeks." + her "I...{w=0.3} I think I'd better head off to bed then..." ("mad", "squint", "base", "stare_soft", cheeks="blush") #Worried #Sheepish looking + gen "Sounds like a good idea..." ("base", xpos="far_left", ypos="head") + her "Okay then..." ("soft", "squint", "worried", "R", cheeks="blush") # smiles + her "Good night..." ("base", "squint", "worried", "mid", cheeks="blush") + gen "Good night Miss Granger." ("base", xpos="far_left", ypos="head") + + + # Back in the office + call room("main_room") + call gen_chibi("hide") + call hide_blkfade + pause 1.0 + call play_sound("door") + call gen_chibi("stand","door","base",flip=False) + with d3 + pause 0.3 + + gen "Good night princess..." ("base", xpos="far_left", ypos="head") + + call blkfade + + # Next day + $ game.daytime = True + call update_interface_color + call music_block + + centered "{size=+7}{color=#cbcbcb}The next morning...{/color}{/size}" + call hide_blkfade + + # Snape enters and walks up to desk + call sna_walk(action="enter", xpos="desk") + gen "What did I tell you about knocking!" ("angry", xpos="far_left", ypos="head") + sna "Who rule..." ("snape_03", ypos="head") + sna "You mother fucker..." ("snape_01") + sna "I knew it!" ("snape_02") + sna "I knew you couldn't make yourself leave yet." ("snape_02") + gen "Hey, it's not my fault this place has so many..." ("grin", xpos="far_left", ypos="head") + gen "I have urges okay!" ("angry", xpos="far_left", ypos="head") + sna "How very uncharacteristic of you..." ("snape_01") + sna "But good news nonetheless..." ("snape_02") + sna "So I take it you have... unfinished business before you depart?" ("snape_37") + gen "A headmaster can't just up and leave before the school year is over can he?" ("base", xpos="far_left", ypos="head") + gen "Also I'm getting quite fond of the place... Not that I want to pick out curtains or anything." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_45") + sna "Very well... our little scheme continues." ("snape_02") + sna "Although at the moment I've got a class to attend to." ("snape_01") + call sna_walk("door") + gen "Yes... I also have very important business to get on with..." ("base", xpos="far_left", ypos="head") + sna "Sure you do..." ("snape_01") + call sna_walk(action="leave") + + jump main_room + else: + play music "music/court-of-the-queen-by-kevin-macleod.ogg" fadein 1 fadeout 1 + ">Arriving at the great hall you decide to take a quick glance through the doors before heading back to your office." + ">Hermione is currently occupied looking out one of the windows and doesn't notice your presence." + ">You glance over at the teachers table and lock eyes with Snape who hastily stands up and quickly slides towards you." + sna "Good evening sir...{w=0.5} I...{w=0.8} I didn't expect you so soon." ("snape_29", ypos="head") + gen "Hello again Severus." ("base", xpos="far_left", ypos="head") + gen "I have returned..." ("base", xpos="far_left", ypos="head") + sna "*Ahem...*{w=0.4} I see..." ("snape_06") + sna "Well...{w=0.5} Here it goes..." ("snape_04") + sna "Who...{w=0.5} who rules?" ("snape_09") + gen "..." ("base", xpos="far_left", ypos="head") + sna "............." ("snape_25") + sna "..." ("snape_26") + gen "Robin Williams." ("grin", xpos="far_left", ypos="head") + sna "You mother fucker!" ("snape_20") #Epic handshake meme (jk) + gen "..." ("grin", xpos="far_left", ypos="head") + sna "..." ("snape_12") + sna "About the thing I said earlier." ("snape_12") + gen "yes?" ("base", xpos="far_left", ypos="head") + sna "The whole friend thing..." ("snape_14") + gen "*Ah*... yes..." ("base", xpos="far_left", ypos="head") + gen "I mean, I was leaving and all that--" ("base", xpos="far_left", ypos="head") + sna "No...{w=0.4} Even that being the case... I did mean it...{w=0.4} good ones are hard to come by." ("snape_24") + gen "Well... even if you didn't mean it, I bet you ain't never had a friend like me." ("grin", xpos="far_left", ypos="head") + sna "Ain't that true...{w=0.3}" ("snape_45") + sna "So...{w=0.4} You're staying then?" ("snape_46") + gen "Can't just leave in the middle of the school year can I? What kind of headmaster would do that?" ("grin", xpos="far_left", ypos="head") + sna "Is that so..." ("snape_47") + gen "There are still plenty of girls that haven't seen me at my best!" ("grin", xpos="far_left", ypos="head") + sna "There it is..." ("snape_02") + sna "Well then...{w=0.4} Business as usual tomorrow?" ("snape_05") + gen "Business as usual..." ("base", xpos="far_left", ypos="head") + sna "{size=-4}Fuck yes!{/size}" ("snape_47") + gen "What did you say?" ("base", xpos="far_left", ypos="head") + sna "Nothing..." ("snape_38") + gen "Okay then..." ("base", xpos="far_left", ypos="head") + gen "In that case I'll head back to my office." ("base", xpos="far_left", ypos="head") + + $ hermione.equip(her_outfit_ball) + ">As Snape slides back towards the teachers table, Hermione notices your presence and quickly starts walking towards you." + ">Before you can even attempt to slip into the shadows again, she's already come through the doorway with one of her arms held out in front of her." + her "Care for a dance?" ("base", "happy", "base", "L", cheeks="blush", ypos="head", flip=False) # smiles + gen "I...{w=0.4} Oh, what the hell... why not." ("base", xpos="far_left", ypos="head") + her "..." ("base", "narrow", "base", "down", cheeks="blush") # smiles + ">With your arms wrapped around Hermione's waist, the two of you begin moving along with the music." + ">After some time passes you can't help but look down on Hermione's butt sticking out below your hands." + gen "Miss Granger..." ("base", xpos="far_left", ypos="head") + her "Yes?" ("open", "base", "base", "L", cheeks="blush") + ">Hands now wandering down towards Hermione's butt she smiles and tightens her grip around you." + ">Gently resting your hands against her cheeks you return to slowly moving along with the music." + her "Sir..." ("base", "base", "base", "mid", cheeks="blush") + gen "Yes Miss Granger?" ("base", xpos="far_left", ypos="head") + her "Could..." ("normal", "closed", "base", "mid", cheeks="blush") + her "Why can't this moment go on forever?" ("soft", "base", "worried", "mid", cheeks="blush") + gen "We both know that everything has to come to an end..." ("base", xpos="far_left", ypos="head") + gen "But hopefully I've been able to teach you how to cherish every moment." ("base", xpos="far_left", ypos="head") + ">Hermione tightens her arms even more as you continue the dance in silence." + ">After a while, her grip loosens slightly as she shifts her head to look up at you." + her "I..." ("open", "squint", "base", "mid", cheeks="blush") + her "I just wanted to say that...{w=0.5} I'm glad I have you." ("open", "happyCl", "worried", "mid", cheeks="blush") + gen "Where's this suddenly coming from Miss Granger?" ("base", xpos="far_left", ypos="head") + her "I don't know... it's just..." ("upset", "happy", "base", "L", cheeks="blush") + her "I couldn't help having this bad feeling in my stomach the entire day." ("soft", "closed", "base", "stare", cheeks="blush") + her "It's stayed there up until now...{w} But now it's finally feeling as if the pain has started to go away..." ("upset", "happy", "base", "R", cheeks="blush") + ">Not knowing how to respond, you stand there in silence for a moment until Hermione pulls you towards her and you both begin moving along with the music once more." + ">After what only feels like seconds the music comes to a close and Hermione takes a step back to look up at you." + gen "You look tired girl, you'd better head off to bed...{w=0.4} there's always tomorrow." ("base", xpos="far_left", ypos="head") + her "Oh, yes... I suppose so..." ("soft", "base", "base", "mid", cheeks="blush") + her "Good night then..." ("base", "happy", "base", "R", cheeks="blush") + gen "Good night." ("base", xpos="far_left", ypos="head") + her "Oh... wait,{w=0.3} before you go..." ("open", "happyCl", "base", "mid", cheeks="blush") + gen "Yes?" ("base", xpos="far_left", ypos="head") + call play_sound("kiss") + with kissiris + #Heart animation on screen? + her "..." ("base", "narrow", "worried", "mid", cheeks="blush") + gen "What was that for?" ("grin", xpos="far_left", ypos="head") + her "Nothing, I just felt like you earned it." ("base", "base", "base", "R", cheeks="blush") + her "See you tomorrow..." ("base", "base", "worried", "mid", cheeks="blush") + gen "Good night Miss Granger." ("base", xpos="far_left", ypos="head") + + stop music fadeout 1 + call blkfade + pause 3.0 + # Back in the office + call room("main_room") + call gen_chibi("hide") + call hide_blkfade + pause 1.0 + call play_sound("door") + call gen_chibi("stand","door","base",flip=False) + with d3 + pause 0.3 + + gen "Good night princess..." ("base", xpos="far_left", ypos="head") + + call blkfade + + jump day_start + +label big_bang: + show screen big_bang + with Fade(0.7, 0.5, 0.7, color='#fff') + play bg_sounds "sounds/rumble.ogg" fadein 2 + pause 3 + show screen big_bang(True) + $ renpy.sound.play("sounds/bang.ogg") + pause 1.5 + #with Move((0, 25), (0, -25), 0.2, bounce=True, repeat=True, delay=1.0) + pause 12 + stop bg_sounds fadeout 2 + hide screen big_bang + with d5 + return + +screen big_bang(bang=False): + zorder 10 + + add Solid("#000") + + if bang: + add "images/misc/bang.webp": + at transform: + zoom 0.0 + anchor (0.5, 0.5) + pos (540, 300) + on show: + easeout 15.0 zoom 3 + else: + add "glow_effect" zoom 0.2 anchor (0.5, 0.5) align (0.5, 0.5) diff --git a/game/scripts/events/event_class.rpy b/game/scripts/events/event_class.rpy new file mode 100644 index 00000000..0d6247ec --- /dev/null +++ b/game/scripts/events/event_class.rpy @@ -0,0 +1,256 @@ +init python: + class quest_class(object): + def __init__(self, **kwargs): + self.title = "" + self.hint = "" + + self.__dict__.update(kwargs) + + def status(self): + return list(self.__dict__) + + class counter_class(object): + def __init__(self, **kwargs): + self.title = "" + self.bool = False # Can me switched to 'True' and 'False' for events + self.trigger = False # Can only be switched to 'True' + self.counter = 0 + + self.hg_counter = 0 # Hermione + self.gw_counter = 0 # Ginny + self.cc_counter = 0 # Cho + self.ll_counter = 0 # Luna + self.sb_counter = 0 # Susan + self.ag_counter = 0 # Astoria + self.dg_counter = 0 # Daphne + self.pp_counter = 0 # Pansy + self.ss_counter = 0 # Snape + self.nt_counter = 0 # Tonks + + self.__dict__.update(kwargs) + + def status(self): + return list(self.__dict__) + + def triggered(self): + self.trigger = True + self.counter += 1 + return + + class event_class(object): + """ + Handles and tracks event progression. + + Event labels ending with "_intro" are treated as one-time events. Otherwise the event can be repeated. + + `tier` (int): The current tier number, which determines the set of events to run. + `counter` (int): The number of successfully completed events. + `points` (int): The number of successfully completed events in the current tier. + """ + + def __init__(self, **kwargs): + self.title = "" + self.hint = "" + self.counter = 0 + + self.start_label = "" + self.start_tier = 1 + self.inProgress = False + + self.events = [] + + self.icons = [] + self.iconset = [] + + self.__dict__.update(kwargs) + + # _tier is relative to start_tier + self._tier = 0 + self._points = 0 + + if not self.events: + raise Exception('Events: "events" list was not defined for "{}".'.format(self.title)) + + self._max_tiers = len(self.events) + + if not self.iconset: + raise Exception('Events: "iconset" list was not defined for "{}". You need to add at least one set of icons.'.format(self.title)) + elif len(self.iconset) < self._max_tiers: + for i in xrange(self._max_tiers-len(self.iconset)): + self.iconset.append([self.iconset[0][0], self.iconset[0][1]]) + + if self.icons and len(self.icons) < self._max_tiers: + raise Exception('Events: "icons" list does not match the number of events for "{}".'.format(self.title)) + + for i in xrange(self._max_tiers): + for j in xrange(len(self.events[i])): + self.events[i][j] += [False] + + def start(self): + self.counter += 1 + + for i in xrange(len(self.events[self._tier])): + if self.events[self._tier][i][1] == False: + self.events[self._tier][i][1] = True + self.points += 1 + return renpy.jump(self.events[self._tier][i][0]) + + self.start_random() + + def start_advance(self): + self.counter += 1 + + for i in xrange(self._max_tiers): + for j in xrange(len(self.events[i])): + if self.events[i][j][1] == False: + self.events[i][j][1] = True + self._tier = i + self.points += 1 + return renpy.jump(self.events[i][j][0]) + + self.start_random() + + def start_random(self): + events_filtered = filter(lambda x: '_intro' not in x[0], self.events[self._tier]) + random_event = events_filtered[random.randint(0, len(events_filtered)-1)][0] + return renpy.jump(random_event) + + def change_icon(self, a="heart_half", b="heart_red"): + for icon in self.iconset: + if icon[1] == a: + icon[1] = b + + def get_menu_item(self, disabled=False): + menu_text = "" + + if self.hint: + menu_text += "{{image={}_check_True}}".format(gui.theme()) + + if self.title: + menu_text += "\"{}\"".format(self.title) + + imagepath = "interface/icons/small/" + + icon = None + if len(self.icons) > 0 and self.icons[self._tier]: + icon = imagepath + self.icons[self._tier] + ".webp" + + progress = [] + for i, ev in enumerate(self.events[self._tier]): + is_complete = ev[1] + + if is_complete: + if self.iconset[self._tier][1] == "heart_half": + if i == len(self.events[self._tier])-1: + progress.append(imagepath + self.iconset[self._tier][1] + ".webp") + else: + progress.append(imagepath + "heart_red.webp") + else: + progress.append(imagepath + self.iconset[self._tier][1] + ".webp") + else: + progress.append(imagepath + self.iconset[self._tier][0] + ".webp") + + if disabled: + return gui.menu_item(menu_text, "block", icon=icon, progress=progress, style="disabled") + else: + return gui.menu_item(menu_text, self.start_label, icon=icon, progress=progress) + + def fail(self): + self.counter = max(0, self.counter-1) + self.points -= 1 + self.events[self._tier][self._points][1] = False + return + + def fail_intentional(self): + self.counter = max(0, self.counter-1) + self.points -= 1 + return + + # Reset the event completely + def reset(self): + for i in xrange(self._max_tiers): + for j in xrange(len(self.events[i])): + self.events[i][j][1] = False + self._tier = 0 + self._points = 0 + self.counter = 0 + self.inProgress = False + + def status(self, value): + status_list = [] + for item in self.events[value-1]: + status_list += [item[1]] + return status_list + + def is_complete(self, ignore_in_progress=False): + is_last_tier = (self._tier == self._max_tiers - 1) + return is_last_tier and self.is_tier_complete(ignore_in_progress=ignore_in_progress) + + def is_tier_complete(self, ignore_in_progress=False): + event_count = len(self.events[self._tier]) + return self.points == event_count and (not self.inProgress or ignore_in_progress) + + def is_event_complete(self, tier, event): + relative_tier = tier - self.start_tier + try: + return bool(self.events[relative_tier][event-1][1]) + except IndexError: + return False + + @property + def points(self): + return self._points + + @points.setter + def points(self, value): + self._points = max(0, min(value, len(self.events[self._tier]))) + + @property + def tier(self): + return self._tier + self.start_tier + + @tier.setter + def tier(self, value): + relative_tier = max(0, min(value - self.start_tier, self._max_tiers - 1)) + if relative_tier != self._tier: + # Change tier and reset progress + self._points = 0 + self._tier = relative_tier + + class stats_class(dict): + + def __delitem__(self, key): + """Override delitem method to delete inner dictionary key.""" + del self[key] + + def __missing__(self, key): + """Return zero if key does not exist in the inner dictionary.""" + return 0 + + def __setattr__(self, name, value): + """Override setattr method to add attributes as keys and values in the inner dictionary.""" + self[name] = value + + def __getattr__(self, name): + """Override getattr method to return a value of the key from the inner dictionary.""" + # Skip protected attributes and/or injected Ren'py methods + if not name.startswith("_"): + return self[name] + raise AttributeError("'"+self.__class__.__name__+"' has no attribute '"+name+"'") + + def status(self): + """Print currently defined keys and values in the console.""" + for key, value in self.iteritems(): + print key + " == " + str(value) + return + + def reset(self): + """Reset all key values back to default values depending on the value type.""" + for key in self.iterkeys(): + if isinstance(self[key], (float, int)): + self[key] = 0 + elif isinstance(self[key], bool): + self[key] = False + else: + pass + return diff --git a/game/scripts/events/final_events.rpy b/game/scripts/events/final_events.rpy new file mode 100644 index 00000000..bfeabd1a --- /dev/null +++ b/game/scripts/events/final_events.rpy @@ -0,0 +1,731 @@ + +#hermione asks genie about who will be in-charge of the ball +label ball_quest_E1: + stop music fadeout 1.0 + + call her_walk(action="enter", xpos="mid", ypos="base") + + call play_music("chipper_doodle") + her "[genie_name]?" ("soft", "base", "base", "mid", xpos="right", ypos="base") + gen "[hermione_name], how can I help you?" ("base", xpos="far_left", ypos="head") + her "[genie_name], have you made your decision yet on who will be in charge of the \"ABOC\" this year?" ("open", "base", "base", "mid") + gen "\"ABOC\"?" ("base", xpos="far_left", ypos="head") + her "The \"Autumn Ball Organization Committee\", [genie_name]..." ("open", "closed", "base", "mid") + gen "*Ehm*... Sure..." ("base", xpos="far_left", ypos="head") + her "Please excuse me if I am being too direct with this, [genie_name]..." ("normal", "squint", "angry", "mid") + her "But I think you should put {b}me{/b} in charge." ("open", "closed", "angry", "mid") + her "I did it last year and it was the best organised \"autumn ball\" Hogwarts has had in years." ("open", "closed", "base", "mid") + her "You said so yourself, [genie_name]. Do you remember?" ("normal", "base", "base", "mid") + gen "Right, of course..." ("base", xpos="far_left", ypos="head") + her "So, is this a yes?" ("base", "base", "base", "mid") + her "Does this mean I will be in charge again this year?" ("base", "base", "base", "mid") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"You shall be in charge, [hermione_name].\"": + her "Thank you, [genie_name]." ("base", "base", "base", "mid") + + "\"No. Professor Snape shall be in charge!\"": + her "Professor Snape, [genie_name]?" ("open", "squint", "angry", "mid") + her "But, traditionally organizing and hosting the ball is the responsibility of the students..." ("normal", "base", "angry", "mid") + her "Teachers are only present as the guests of honour..." ("open", "closed", "angry", "mid") + gen "Of course...{w=0.4} I was just kidding." ("base", xpos="far_left", ypos="head") + gen "You shall be in charge, [hermione_name]..." ("base", xpos="far_left", ypos="head") + + gen "There is one condition, though..." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("normal", "squint", "angry", "mid") + + $ d_flag_01 = False + $ d_flag_02 = False + $ d_flag_03 = False # Masturbation flag + + label .choices: + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Take some of those clothes off\"" if hermione.is_any_worn("top", "bottom", "bra", "panties"): + $ her_mood += 5 + $ d_flag_01 = True + + "\"Just stand right there for a moment\"" if not hermione.is_worn("top", "bottom", "bra", "panties"): + if hermione.is_any_worn("clothes"): + gen "And take off those things you're wearing." ("base", xpos="far_left", ypos="head") + her "Alright..." ("open", "squint", "base", "R") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("all") + else: + her "Just stand right here?" ("base", "base", "base", "R") + gen "Yes, just stand right there for me..." ("base", xpos="far_left", ypos="head") + her "..." ("base", "base", "base", "mid") + her "Is that all?" ("open", "squint", "base", "mid") + jump ball_quest_E1.after_strip + + "\"You will have to sleep with me.\"" if not d_flag_02 and not hg_pf_sex.counter > 0: + $ her_mood += 10 + $ d_flag_02 = True + + her "I will have to... sleep...?" ("angry", "wide", "base", "mid") + her "..................." ("angry", "base", "angry", "mid", cheeks="blush") + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "I am not stupid, [genie_name]... Quite the opposite in fact." ("angry", "closed", "angry", "mid", cheeks="blush") + her "And I understand that the nature of the favours I have been selling you lately..." ("open", "base", "angry", "R", cheeks="blush") + her "... Might have led you to believe that I would be willing to..." ("open", "squint", "angry", "mid", cheeks="blush") + her "... To let you have your way with me eventually, [genie_name]..." ("disgust", "squint", "angry", "L_soft", cheeks="blush") + gen "Whaaa--? I would never--" ("base", xpos="far_left", ypos="head") + her "Please, let me finish, [genie_name]." ("scream", "base", "angry", "mid",emote="angry", cheeks="blush") + gen "Right..." ("base", xpos="far_left", ypos="head") + her "I know that you are a rather wise man yourself, [genie_name]." ("angry", "base", "angry", "mid", cheeks="blush") + her "So, please... understand this..." ("disgust", "narrow", "base", "L_soft", cheeks="blush") + her "I may be willing to sacrifice my pride and even my dignity for the sake of my house..." ("open", "closed", "angry", "mid", cheeks="blush") + her "But sleeping with my headmaster?" ("open", "squint", "annoyed", "mid", cheeks="blush") + her "That is where I draw the line, [genie_name]." ("angry", "base", "angry", "mid", cheeks="blush") + gen "Fine... in that case..." ("base", xpos="far_left", ypos="head") + + jump ball_quest_E1.choices + + "\"Never mind. the Position is yours.\"": + $ her_mood = 0 + + her "Really?" ("smile", "base", "base", "mid") + gen "Yes." ("base", xpos="far_left", ypos="head") + + jump ball_quest_E1.end + + if d_flag_02: + her "Do I have to?" ("annoyed", "base", "annoyed", "R", cheeks="blush") + gen "No [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "You don't have to take any clothes off..." ("base", xpos="far_left", ypos="head") + her "Finally you're being reasonable." ("open", "closed", "base", "mid") + if hermione.is_worn("panties"): + gen "I only need you to pull those panties aside for easy access." ("grin", xpos="far_left", ypos="head") + else: + gen "I only need you to bend over my desk for easy access." ("grin", xpos="far_left", ypos="head") + her "[genie_name]! I thought I established this already... I'm not going to sleep with you!" ("angry", "narrow", "angry", "mid", cheeks="blush") + gen "Then the answer is yes..." ("base", xpos="far_left", ypos="head") + gen "If you want to be in charge of My balls--" ("base", xpos="far_left", ypos="head") + her "The \"Autumn Ball\", [genie_name]..." ("upset", "squint", "annoyed", "mid", cheeks="blush") + her "But this isn't a favour... this is THE Autumn Ball we're talking about..." ("open", "squint", "angry", "mid") + gen "Then would you say the job of organizing it is... an honour?" ("base", xpos="far_left", ypos="head") + her "It is!" ("open", "closed", "base", "mid") + gen "And you believe that you should be the one to do it?" ("base", xpos="far_left", ypos="head") + her "I do!" ("open", "base", "base", "mid") + gen "Well then..." ("base", xpos="far_left", ypos="head") + gen "Show me what you're prepared to do for the privilege!" ("base", xpos="far_left", ypos="head") + else: + her "What?!" ("open", "base", "base", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + her "[genie_name]!" ("angry", "base", "angry", "mid") + gen "What?" ("base", xpos="far_left", ypos="head") + her "You are abusing your power, [genie_name]. Again!" ("disgust", "narrow", "base", "mid_soft") + gen "Seriously? After all those favours you sold me?" ("base", xpos="far_left", ypos="head") + her "Those were for the sake of my house, [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + gen "Well this one is for the sake of the \"Autumn prom\"." ("base", xpos="far_left", ypos="head") + her "It's the \"Autumn Ball\", [genie_name]..." ("upset", "closed", "base", "mid") + gen "Oh, come on..." ("base", xpos="far_left", ypos="head") + gen "Entrusting the thing to somebody else would be a crime, you know that." ("base", xpos="far_left", ypos="head") + her ".........." ("annoyed", "narrow", "angry", "R") + gen "Don't you care about your classmates at all?" ("base", xpos="far_left", ypos="head") + her "What?" ("open", "base", "base", "mid") + gen "Put your selfishness aside for once, would you?" ("base", xpos="far_left", ypos="head") + her "My... selfishness?" ("annoyed", "base", "worried", "R") + gen "Your classmates deserve the best organised ball possible!" ("base", xpos="far_left", ypos="head") + gen "And only {size=+5}YOU{/size} can give them that!" ("base", xpos="far_left", ypos="head") + her "... that is true actually." ("angry", "narrow", "base", "down") + gen "People depend on you, girl!" ("base", xpos="far_left", ypos="head") + her "You... maybe you're right, [genie_name]." ("open", "narrow", "worried", "down") + her "I must do this... Everyone depends on me." ("upset", "closed", "base", "mid") + + her "Just give me a second please." ("annoyed", "narrow", "base", "R") + hide hermione_main + with d5 + + gen "............" ("base", xpos="far_left", ypos="head") + + call play_music("playful_tension") # SEX THEME. + + hide screen bld1 + hide hermione_main + with d5 + + #Walks to the door + call her_walk("door", "base") + + #Locks the door + pause.5 + call chibi_emote("thought","hermione") + pause.5 + + call chibi_emote("hide", "hermione") + $ renpy.play('sounds/09_lock.ogg') + pause 1.5 + + #Returns from the door + gen "......?" ("base", xpos="far_left", ypos="head") + + call her_walk("mid", "base") + pause.2 + + her "Just in case..." ("annoyed", "narrow", "angry", "R", cheeks="blush") + + $ d_flag_01 = False + $ d_flag_02 = False + + gen ".........................." ("base", xpos="far_left", ypos="head") + her "Okay then... what would you have me do?" ("normal", "base", "worried", "mid") + + label .choices2: + + if d_flag_01 and d_flag_02: + if hermione.is_any_worn("clothes"): + gen "Now take off everything else you're wearing." ("base", xpos="far_left", ypos="head") + $ hermione.strip("all") + + jump ball_quest_E1.after_strip + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "\"Take your top off.\"" if not d_flag_01: + $ d_flag_01 = True + + call play_music("playful_tension") # SEX THEME. + + if not hermione.is_worn("top"): + her "Take off my what? I'm not exactly clothed, you know!" ("angry", "base", "annoyed", "R") + if not hermione.is_worn("bra"): + her "Can't you see that my breasts are already on display?" ("annoyed", "squint", "angry", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + + jump ball_quest_E1.choices2 + else: + gen "You are still wearing a bra, aren't you?" ("base", xpos="far_left", ypos="head") + + jump ball_quest_E1.bra + + her "............" ("annoyed", "base", "worried", "R_soft", cheeks="blush") + + pause.3 + + # TODO Animation doesn't work if this option is chosen second. + # The standing chibi will reflect clothing state (once we have a topless chibi, that is) + # call her_chibi("lift_top","mid","base") + # with d3 + # pause 2.0 + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("robe", "accessory") + $ hermione.strip("top") + + call ctc + + if hermione.is_worn("bra"): + pause 2.0 + gen "And your bra..." ("base", xpos="far_left", ypos="head") + + label .bra: + + her "..." ("annoyed", "base", "angry", "R_soft", cheeks="blush") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bra") + pause.5 + + her "" ("soft", "base", "base", "R_soft", cheeks="blush") + call ctc + + gen "Very good [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "Your ample tits are always a welcome sight..." ("base", xpos="far_left", ypos="head") + her "...................." ("disgust", "narrow", "base", "down", cheeks="blush") + her "" ("normal", "base", "worried", "R_soft", cheeks="blush") + + jump ball_quest_E1.choices2 + + "\"Take your bottoms off.\"" if not d_flag_02: + $ d_flag_02 = True + + call play_music("playful_tension") # SEX THEME. + $ hermione.strip("robe", "accessory") + if not hermione.is_worn("bottom"): + her "I would if you'd let me wear any!" ("angry", "base", "angry", "mid") + if not hermione.is_worn("panties"): + her "You have no idea how cold Hogwarts can be this time of year!" ("annoyed", "base", "worried", "R") + gen "......." ("base", xpos="far_left", ypos="head") + + jump ball_quest_E1.choices2 + else: + gen "You don't need any, in fact, you don't need your panties either!" ("grin", xpos="far_left", ypos="head") + gen "Take them off..." ("base", xpos="far_left", ypos="head") + + jump ball_quest_E1.panties + + pause.3 + + # TODO Animation doesn't work if this option is chosen second. Just use the standing chibi (ie. remove the commented code) + # call her_chibi("lift_skirt","mid","base") + # with d3 + # pause 2.0 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("bottom") + + call ctc + + if hermione.is_worn("panties"): + pause 2.0 + gen "And your panties..." ("base", xpos="far_left", ypos="head") + + label .panties: + + her "..." ("normal", "base", "low", "R_soft", cheeks="blush") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + $ hermione.strip("panties") + pause.5 + + her "" ("annoyed", "base", "base", "R_soft", cheeks="blush") + call ctc + + her ".............................." ("annoyed", "base", "angry", "R_soft", cheeks="blush") + + gen "What are you doing, girl?!" ("angry", xpos="far_left", ypos="head") with hpunch + gen "I am your headmaster! Do you have no shame?!" ("angry", xpos="far_left", ypos="head") + her "What?! But--" ("angry", "base", "angry", "mid", cheeks="blush") + gen "*He-he*... Relax, [hermione_name]. I'm just kidding." ("grin", xpos="far_left", ypos="head") + her "[genie_name], that was just mean." ("scream", "happyCl", "angry", "mid", cheeks="blush") + gen "*He-he*..." ("grin", xpos="far_left", ypos="head") + her "....................................." ("annoyed", "base", "worried", "R_soft", cheeks="blush") + gen "I do like your cute little pussy though..." ("base", xpos="far_left", ypos="head") + her "..... Thank you, [genie_name]." ("disgust", "base", "angry", "R_soft", cheeks="blush") + + jump ball_quest_E1.choices2 + + "\"Never mind. The position is yours.\"" if d_flag_01 or d_flag_02: + her "Really?" ("smile", "base", "base", "mid") + + jump ball_quest_E1.end + + label .after_strip: + + call her_chibi("stand") + with d5 + pause 1.0 + + gen "Looking good [hermione_name]..." ("grin", xpos="far_left", ypos="head") + her "Happy now?" ("annoyed", "base", "worried", "R", cheeks="blush") + her "Will you let me have the \"privilege\" of being in charge of the \"ABOC\" this year?" ("normal", "base", "worried", "mid") + + menu: + "\"Of course... the Position is yours.\"": + her "Really?" ("smile", "base", "base", "mid") + + jump ball_quest_E1.end + + "\"Touch yourself for me first...\"": + $ hg_masturbated.triggered() + $ d_flag_03 = True + $ her_mood += 5 + + her "You want me to..." ("shock", "wide", "base", "stare") + gen "Flick the bean..." ("base", xpos="far_left", ypos="head") + gen "Fondle those puppies..." ("base", xpos="far_left", ypos="head") + her "I..." ("angry", "wide", "worried", "mid", cheeks="blush") + gen "Or did you not want to be in charge?" ("base", xpos="far_left", ypos="head") + her "Of... of course I do!" ("angry", "base", "worried", "down", cheeks="blush") + gen "Then get on with it..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "happyCl", "worried", "down", cheeks="blush") + her "Fine..." ("disgust", "squint", "worried", "down", cheeks="blush") + + show screen blkfade + with d5 + $ renpy.play("sounds/slick_02.ogg") + with hpunch + with kissiris + $ hermione.set_pose("masturbate") + $ hermione.set_body(armleft="on_pussy") + her "" ("open", "squint", "worried", "mid", xpos=270) + hide screen blkfade + with d5 + + pause 0.5 + + her "*Ah*..." ("open", "squint", "worried", "R", cheeks="blush") + gen "Ni-i-i-ce!" ("grin", xpos="far_left", ypos="head") + play bg_sounds "sounds/slickloop.ogg" fadein 2 + her "*mmmh*..." ("open", "happyCl", "worried", "R", cheeks="blush") + pause 0.4 + her "" ("soft", "closed", "base", "R", cheeks="blush") + pause 0.4 + call ctc + her "*Sob*!" ("soft", "squint", "worried", "R_soft", cheeks="blush", tears="soft") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + her "Oh, please,{w=0.4} don't mind me, [genie_name]." ("open", "base", "base", "R", cheeks="blush", tears="crying") + her "Just enjoy the... {w=0.5}the view..." ("upset", "happy", "base", "R", cheeks="blush", tears="soft") + gen "Are you... crying?" ("base", xpos="far_left", ypos="head") + stop bg_sounds + + # Hand down + $ hermione.set_body(armleft="down") + + her "*Sob*! No, [genie_name]... *sob*!..." ("angry", "happyCl", "worried", "mid", cheeks="blush", tears="crying_blink") + her "I... I enjoy touching myself...{w=0.5} In front of my headmaster *SOB*!" ("angry", "squint", "worried", "R_soft", cheeks="blush", tears="crying") + + # Hands on pussy, tits + $ hermione.set_body_zorder(armright=3) + $ hermione.set_body(armleft="on_pussy", armright="on_tits") + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + her "*Ah*..." ("open", "squint", "worried", "R", cheeks="blush") + her "These...{w=0.4} *Ah*...{w=0.5} are happy tears, [genie_name]." ("open", "narrow", "low", "R", cheeks="blush", tears="messy") + her "I...{w=0.5} *Ah*...{w=0.5}... I'm sorry...{w=0.5} I can't help it! *Sob*!" ("angry", "happyCl", "worried", "mid_soft", cheeks="blush", tears="messy") + gen "Are you sure that you are okay with this?" ("base", xpos="far_left", ypos="head") + her "Yes...{w=0.4} *Ah*...{w=0.5} yes, sir, please.... *Sob*!" ("soft", "squint", "worried", "mid", cheeks="blush", tears="messy") + her "Please keep looking as I...{w=0.3} pleasure myself *Sob*!" ("open", "narrow", "base", "mid_soft", cheeks="blush", tears="messy") + her "" ("open", "narrow", "angry", "stare_soft", cheeks="blush", tears="messy") + pause.2 + + gen "(What the...?)" ("angry", xpos="far_left", ypos="head") + with hpunch + her "[genie_name], I am begging you!" ("soft", "narrow", "angry", "mid", cheeks="blush", tears="messy") + gen "Kind of sounds like an order--" ("base", xpos="far_left", ypos="head") + play bg_sounds "sounds/slickloopfast.ogg" + her "I need it!" ("open", "narrow", "worried", "up_soft", cheeks="blush", tears="messy") + her "... I need to shamelessly present my naked body before you like this!" ("soft", "narrow", "base", "up_soft", cheeks="blush", tears="messy") + with hpunch + gen ".............?" ("base", xpos="far_left", ypos="head") + her "I need to feel this embarrassment and humiliation! *SOB*!" ("silly", "narrow", "angry", "dead", cheeks="blush", tears="messy") + play bg_sounds "sounds/slickloopveryfast.ogg" + her "The fate of the \"Autumn ball\" depends on this..." ("silly", "base", "worried", "mid_soft", cheeks="blush", tears="messy") + her "So... [genie_name], please..." + her "Keep looking at my naked breasts, and my pussy..." ("silly", "narrow", "worried", "mid", cheeks="blush", tears="messy") + her "Look at me as I get wet for you..." + her "*mmmh*..." ("open", "happyCl", "worried", "R", cheeks="blush", tears="messy") #disgusted #blushing + call ctc + + + with hpunch + her "*Ah*...{w=0.5} Yes! Make my skin burn with shame, [genie_name]... *Sob*!" ("open", "narrow", "base", "up", cheeks="blush", tears="messy") + gen "*Ehm*... right... Okay..." ("base", xpos="far_left", ypos="head") + gen "Listen, I think this will do..." ("base", xpos="far_left", ypos="head") + + play bg_sounds "sounds/slickloop.ogg" fadein 2 + her "*Ah*...{w=0.5} Are you sure, [genie_name]?" ("open", "narrow", "base", "mid", cheeks="blush", tears="messy") + her "Are you sure that you've humiliated me enough, [genie_name]?" ("base", "narrow", "worried", "mid_soft", cheeks="blush", tears="messy") + gen "...................." ("base", xpos="far_left", ypos="head") + gen "(Is she getting off on this or is she being sarcastic? I don't get it...)" ("base", xpos="far_left", ypos="head") + her "*mmmh*............" ("open", "happyCl", "worried", "R", cheeks="blush", tears="messy") + call ctc + + gen "That's enough..." ("base", xpos="far_left", ypos="head") + her "" ("annoyed", "base", "base", "mid", cheeks="blush", tears="messy") + gen "Just put your clothes back on, [hermione_name]. You're making me feel uncomfortable." ("base", xpos="far_left", ypos="head") + stop bg_sounds fadeout 4 + her "..." + + # Reset pose + $ hermione.set_body_zorder(armright=0) + $ hermione.set_body(armleft="down", armright="down") + $ hermione.set_pose(None) + $ hermione.strip("all") + + her "As you wish, [genie_name]..." ("annoyed", "narrow", "angry", "R", cheeks="blush", tears="messy") + + stop music fadeout 3.0 + + label .end: + + show screen blkfade + with d5 + call her_chibi("stand","mid","base") + her "" ("base", "happyCl", "base", "mid", xpos="right", ypos="base") + $ hermione.wear("all") + pause 2.0 + hide screen blkfade + with d5 + + call play_music("chipper_doodle") + + her "So... does this mean I'm officially in charge of this year's \"Autumn Ball Organization Committee\" now?" ("base", "happyCl", "base", "mid", xpos="right", ypos="base") + gen "That you are." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]! You will not regret this, I promise!" + if d_flag_03: + call blktone + gen "(That was weird... she sure changed her mood quick.)" ("base", xpos="far_left", ypos="head") + gen "(Maybe she gets off on being humiliated...)" ("base", xpos="far_left", ypos="head") + gen "(Guess I'll have to find out.)" ("base", xpos="far_left", ypos="head") + call hide_blktone + else: + call blktone + gen "{size=-4}(Why would I?){/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-4}(I couldn't care less about the whole thing...){/size}" ("base", xpos="far_left", ypos="head") + call hide_blktone + her "Well, I'd better go now. I have so many arrangements to make!" ("grin", "base", "base", "R") + gen "By all means, [hermione_name]. Have a nice day." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + pause.5 + + call bld + gen "........................................" ("base", xpos="far_left", ypos="head") + gen "A ball, *huh*?" ("base", xpos="far_left", ypos="head") + gen "I wonder if I will have to show up for that..." ("base", xpos="far_left", ypos="head") + + $ ball_quest.E1_complete = True + + $ hermione_busy = True + $ ss_event_pause += 2 # Next event happens in 2 days. + + jump end_hermione_event + + +#Snape confronts genie about his ABOC decision + +label ball_quest_E2: + stop music fadeout 1.0 + + call sna_walk(action="enter", xpos="mid", ypos="base") + pause.2 + + call play_music("snape") + sna "Are you bloody insane?!" ("snape_01", xpos="base", ypos="base") + gen "You know, sometimes I think I may be..." ("base", xpos="far_left", ypos="head") + + sna "You appointed {b}that{/b} girl as the head of the \"Autumn Ball Organization Committee\"?!!" ("snape_01") + gen "I'm guessing that's bad?" ("base", xpos="far_left", ypos="head") + sna "Bad?{w} {size=+5}BAD?!{/size}" ("snape_10") + sna "{size=+5}That's a catastrophe!{/size}" ("snape_15") + sna "last year's ball was completely horrible!" ("snape_16") + gen "Was it? I heard differently..." ("base", xpos="far_left", ypos="head") + sna "Oh really? And who told you that?" ("snape_10") + gen "not a very reliable source apparently..." ("base", xpos="far_left", ypos="head") + sna "Dammit... Dammit all to hell..." ("snape_08") + sna "I had big plans for the thing..." ("snape_07") + gen "Really? Like what?" ("base", xpos="far_left", ypos="head") + sna "Oh, that doesn't matter now..." ("snape_06") + #sna "The girl is a complete control freak..." + sna "Now the girl will use the prefects or the ghosts to keep an eye on me throughout entire thing..." + gen "Right, that reminds me..." ("base", xpos="far_left", ypos="head") + gen "Am I supposed to show up as well?" ("base", xpos="far_left", ypos="head") + sna "Show up?" ("snape_03") + sna "You are expected to host the bloody thing!" + sna "But don't you worry! I'll figure something out!" ("snape_09") + sna "*Hmm*... I'll Probably have to host the ball instead..." ("snape_06") + gen "............" ("base", xpos="far_left", ypos="head") + sna "Well, the Autumn ball is about to happen and Hermione Granger is in charge..." ("snape_09") + sna "There is no changing it now..." + sna "Sorry for the outburst..." ("snape_05") + sna "That girl brings out the worst in me..." ("snape_16") + gen "Don't sweat it..." ("base", xpos="far_left", ypos="head") + sna "You know what...?" ("snape_06") + sna "I don't feel like working today..." + sna "Do we still have any of Dumbledore's wine left?" ("snape_05") + gen "I believe so..." ("base", xpos="far_left", ypos="head") + sna "Great! Pour me some..." ("snape_02") + gen "Seriously? You're just gonna bail on your class like that?" ("base", xpos="far_left", ypos="head") + sna "Yeah, big news -- I hate my job." ("snape_03") + sna "And since you are my boss..." + sna "I don't know why I even bother teaching those so-called students..." ("snape_06") + gen "To maintain the charade?" ("base", xpos="far_left", ypos="head") + gen "for the Same reason why I never leave this room...?" ("base", xpos="far_left", ypos="head") + sna "Right..." ("snape_05") + sna "But you know what else could endanger our little enterprise?" + sna "Me losing it during class and strangling a couple of Gryffindor maggots with my bare hands..." ("snape_07") + gen "*Hmm*... I see your point..." ("base", xpos="far_left", ypos="head") + sna "Seriously, man... I need a drink..." ("snape_06") + + hide snape_main + call blkfade + + call gen_chibi("hide") + show screen with_snape(ani=False) + $ chair_OBJ.hidden = True + + $ fire_in_fireplace = True + $ fireplace_OBJ.foreground = "fireplace_fire" + call sna_chibi("hide") + hide screen bld1 + call hide_blkfade + + call bld + call nar(">Professor Snape spends the day in your chamber, drinking the stress away.") + + if sna_friendship < 100: + call nar(">Your relationship with him has improved.") + $ sna_friendship +=1 + + $ ss_event_pause += 2 + $ hg_event_pause += 1 + + $ ball_quest.E2_complete = True + $ chair_OBJ.hidden = False + $ fireplace_OBJ.foreground = None + + jump end_snape_hangout_no_points + +label ball_quest_E3: + stop music fadeout 1.0 + + call her_walk(action="enter", xpos="mid", ypos="base") + + call play_music("chipper_doodle") + her "My parents sent me the wrong dress!" ("angry", "base", "base", "mid", tears="soft", xpos="right", ypos="base") + gen "Are You kidding me!?" ("base", xpos="far_left", ypos="head") + her "They sent me the dress I wore to the ball last year..." ("angry", "base", "base", "mid", tears="soft") + gen "Those inconsiderate bastards!" ("base", xpos="far_left", ypos="head") + her "Are you making fun of me [genie_name]?" ("mad", "base", "worried", "mid", tears="soft") + gen "Can you blame me?" ("base", xpos="far_left", ypos="head") + her "I will become the laughingstock of Hogwarts! *Sob*!" ("clench", "base", "worried", "mid", cheeks="blush", tears="soft") + her "My reputation is as good as ruined! *Sob*!" ("angry", "narrow", "base", "dead", cheeks="blush", tears="crying") + gen "Seriously? After all the favours you sold me you care about a thing like this?" ("base", xpos="far_left", ypos="head") + her "Wearing the same dress to the \"Autumn Ball\" for two years in a row would be more humiliating than any favour I sold you so far, [genie_name]." ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + with hpunch + gen "You've gotta be kidding me..." ("angry", xpos="far_left", ypos="head") + her "Oh, you wouldn't understand..." ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + her "You're just like my father!" ("scream", "base", "angry", "mid", cheeks="blush", tears="messy") + gen "I beg your pardon?" ("base", xpos="far_left", ypos="head") + her "I mean... *Ehm*..." ("open", "wide", "worried", "stare", cheeks="blush", tears="messy") + her "Forgive me [genie_name]..." + her "I don't know why I am telling you all of this..." ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + gen "................" ("base", xpos="far_left", ypos="head") + her "......................*sob*!" ("angry", "narrow", "base", "dead", cheeks="blush", tears="crying") + her "I think I'd better go now...*sob*" ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + gen "Well, don't let me keep you a moment longer, [hermione_name]..." ("base", xpos="far_left", ypos="head") + + call her_walk("door", "base") + pause.3 + + her "(My life is ruined...)" ("angry", "squint", "base", "mid", cheeks="blush", tears="messy", ypos="head", flip=False) + pause.1 + + call her_chibi("leave") + + call bld + gen "*Hmm*... I don't remember ever seeing the girl this desperate..." ("base", xpos="far_left", ypos="head") + gen "And that says a lot, all things considered..." ("base", xpos="far_left", ypos="head") + gen "I suppose Whoring herself out for house points is a significantly smaller problem than not having a proper prom dress..." ("base", xpos="far_left", ypos="head") + gen ".............." ("base", xpos="far_left", ypos="head") + gen "Schoolgirls..." ("base", xpos="far_left", ypos="head") + + $ hermione_busy = True + $ hg_event_pause += 1 + + $ ball_quest.E3_complete = True + + jump end_hermione_event + + +label ball_quest_E4: + stop music fadeout 1.0 + + call her_walk(action="enter", xpos="mid", ypos="base") + + call play_music("chipper_doodle") + call bld + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Sorry to disturb you [genie_name]..." ("open", "base", "worried", "mid", xpos="right", ypos="base") + her "I came to apologise for my..." ("open", "base", "worried", "R") + her "... My hysterical behaviour yesterday." + gen "Sure thing, don't worry about it." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("open", "base", "base", "mid") + her "Still, I cannot help but feel awful for causing a scene..." ("open", "closed", "angry", "mid") + gen "So the issue has been resolved then?" ("base", xpos="far_left", ypos="head") + her "Not really..." ("open", "base", "worried", "mid") + her "Not at all actually..." ("annoyed", "narrow", "angry", "R") + gen "*Hmm*...?" ("base", xpos="far_left", ypos="head") + her "But it is not really a big deal..." ("annoyed", "narrow", "worried", "down") + her "I'm just overreacting..." + + call play_music("despair") + her "I won't be able to attend the ball this year... so what?" ("annoyed", "narrow", "worried", "down") + her "I spent countless hours organising the event..." ("normal", "happyCl", "worried", "mid") + her "I worked so hard... and..." ("open", "base", "worried", "mid", tears="soft") + her "And now I will not even be able to...{w=0.3} to...{w=0.4} *Sob*!" ("shock", "base", "base", "R", cheeks="blush", tears="soft") + her "To... *SOB*!" ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + her "Excuse me [genie_name]!" ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + hide hermione_main + hide screen bld1 + with d3 + call gen_chibi("sit_behind_desk") + with d1 + + call her_walk(action="run", xpos="door", speed=2, reduce=True) + call her_chibi("leave") + + call bld + gen "......................................." ("base", xpos="far_left", ypos="head") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + + if clothing_store_intro_done: + gen "Maybe I should pay Madam Mafkin a visit and ask for a dress..." ("base", xpos="far_left", ypos="head") + else: + gen "Maybe I should look around the castle and see if I can procure a dress for her." ("base", xpos="far_left", ypos="head") + + $ hermione_busy = True + $ hg_event_pause += 1 + + $ ball_quest.E4_complete = True + $ her_outfit_ball.price = 1000 # Unlocks it in the store + + jump end_hermione_event + +label ball_quest_E5: + hide hermione_main + with d5 + + stop music fadeout 1.0 + gen "Here... This is for you..." ("base", xpos="far_left", ypos="head") + + call give_reward(">You give the ball dress to Hermione...","interface/icons/box_red_1.webp") + + her "*Hmm*...? What is this?" ("base", "base", "base", "mid") + her "{size=+7}A DRESS?!{/size}" ("angry", "wide", "base", "stare") + with hpunch + gen "I thought that you--" ("base", xpos="far_left", ypos="head") + + call play_music("chipper_doodle") # HERMIONE'S THEME. + her "[genie_name]!" ("angry", "base", "base", "mid", tears="soft") + gen "What? What happened? Don't tell me it's the wrong colour or something!" ("angry", xpos="far_left", ypos="head") + her "It's perfect, [genie_name]...*sob*!" ("angry", "base", "base", "mid", tears="soft") + her "It's perfect... *sob*!... I love it." + gen "You sure don't look like it..." ("base", xpos="far_left", ypos="head") + her "I am sorry, [genie_name]... *Sob*!" + her "I... I am just..." ("clench", "base", "worried", "mid", cheeks="blush", tears="soft") + her "I am so happy..." ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + her "Thank you, [genie_name]. Thank you so much." + her "I cannot believe that you would do something like that for me..." ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + gen "Well, I did. Now stop crying." ("base", xpos="far_left", ypos="head") + her "I can't, [genie_name]. I am so happy and so grateful..." ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="messy") + her "Do you want me to suck your cock, [genie_name]?" ("open", "wide", "worried", "stare", cheeks="blush", tears="messy") + gen "What?" ("base", xpos="far_left", ypos="head") + her "Because I will do it!" ("open", "wide", "worried", "stare", cheeks="blush", tears="messy") + her "And I will swallow and everything!" + her "And you wouldn't have to pay me a single house point!" ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + gen "*Uhm*... Maybe some other time..." ("base", xpos="far_left", ypos="head") + gen "This is not the type of crying I find arousing..." ("base", xpos="far_left", ypos="head") + her "I'm sorry, [genie_name]. I'm such a mess..." ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + her "But this is so unexpected..." ("shock", "narrow", "base", "down", cheeks="blush", tears="crying") + her "You made me so happy, [genie_name]... *sob*!" + her "Thank you [genie_name]! *SOB*! Thank you! *SOB*!" ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + gen "Well... *Err*... There, there..." ("base", xpos="far_left", ypos="head") + gen "Better stop crying before you stain that new dress of yours with those tears..." ("base", xpos="far_left", ypos="head") + her "My new dress! *SOB*!" ("scream", "happyCl", "worried", "mid", cheeks="blush", tears="messy") + gen "Alright, you know what? Just get out of my office." ("base", xpos="far_left", ypos="head") + gen "Just take your dress and leave." ("base", xpos="far_left", ypos="head") + her "Of course... I am sorry, [genie_name]!" ("angry", "squint", "base", "mid", cheeks="blush", tears="messy") + hide hermione_main + hide screen bld1 + with d3 + pause.1 + + call her_chibi("stand","mid","base") + pause.3 + call her_chibi("stand","mid","base",flip=True) + pause.2 + + call her_walk(action="leave") + + call bld + gen "......................" ("base", xpos="far_left", ypos="head") + gen "Women..." ("base", xpos="far_left", ypos="head") + + $ hg_event_pause += 2 + + $ ball_quest.gave_dress = True + $ ball_outfit_ITEM.used = True + + jump end_hermione_event diff --git a/game/scripts/events/labels.rpy b/game/scripts/events/labels.rpy new file mode 100644 index 00000000..2130ac59 --- /dev/null +++ b/game/scripts/events/labels.rpy @@ -0,0 +1,176 @@ +label setup_fireplace_hangout(char=None): + + if not game.daytime: # Night time + show screen blkfade + + $ fire_in_fireplace = True + $ fireplace_OBJ.foreground = "fireplace_fire" + + call hide_characters + call gen_chibi("hide") + call sna_chibi("hide") + call ton_chibi("hide") + + else: # game.daytime + stop bg_sounds + show screen blkfade + + call hide_characters + call gen_chibi("hide") + call sna_chibi("hide") + call ton_chibi("hide") + + # Proceed as usual + if char == "snape": + show screen with_snape(ani=True) + elif char == "tonks": + show screen with_tonks_animated + + $ chair_OBJ.hidden = True + $ chair_left_OBJ.hidden = True + + hide screen bld1 + hide screen blkfade + with fade + + return + +label slap_her: + call play_sound("slap") #SLAP! + show screen white + with hpunch + pause.08 + hide screen white + + return + +label kiss_her: + call play_sound("kiss") #Kiss! + with hpunch + pause.08 + + return + +label spit_on_her: + call play_sound("spit") #Kiss! + show screen white + pause.2 + hide screen white + with hpunch + pause.08 + + return + +label cast_spell(spell=""): + if spell in ["revelio","imperio"]: + + stop music fadeout 2.0 + call play_sound("spell") + show screen white + pause.1 + hide screen white + with hpunch + + return + +label cum_block: + show screen white + pause.1 + hide screen white + pause.2 + show screen white + pause.1 + hide screen white + with hpunch + + return + +label increase_house_points(house, points): + call bld + call notes + if house.startswith("g"): + $ gryffindor += points + ">Gryffindor has received {number=points} house points today!" + elif house.startswith("h"): + $ hufflepuff += points + ">Hufflepuff has received {number=points} house points today!" + elif house.startswith("r"): + $ ravenclaw += points + ">Ravenclaw has received {number=points} house points today!" + else: + $ slytherin += points + ">Slytherin has received {number=points} house points today!" + return + +#TODO Check and fix teleport/heal effect position (chibis are now anchored bottom-left) +label teleport(position=None,effect=True,poof_label=None): + if position == "genie": + $ teleport_xpos = genie_chibi.pos[0]+75 + $ teleport_ypos = genie_chibi.pos[1] + $ teleport_zorder = 3 + elif position == "hermione": + $ teleport_xpos = hermione_chibi.pos[0]+45 + $ teleport_ypos = hermione_chibi.pos[1] + $ teleport_zorder = 3 + elif position == "cho": + $ teleport_xpos = cho_chibi.pos[0]+45 + $ teleport_ypos = cho_chibi.pos[1] + $ teleport_zorder = 3 + elif position == "astoria": + $ teleport_xpos = astoria_chibi.pos[0]+45 + $ teleport_ypos = astoria_chibi.pos[1] + $ teleport_zorder = 3 + elif position == "desk": + $ teleport_xpos = 320 + $ teleport_ypos = 450 + $ teleport_zorder = 5 + else: + $ teleport_xpos = position[0] + $ teleport_ypos = position[1] + $ teleport_zorder = 2 + + if effect == True: + $ renpy.play('sounds/magic4.ogg') + show screen whitefade + with d1 + + hide screen whitefade + with d1 + + show screen blkfade + with d1 + + hide screen blkfade + show screen heal_animation + with d3 + + #stop music fadeout 1 + + hide screen heal_animation + if poof_label != None: + $ renpy.call(poof_label) + show screen teleport_animation + with d5 + + hide screen teleport_animation + with d5 + + if effect == True: + pause 1 + + return + +screen teleport_animation(): + add "teleport_ani" anchor (0.5, 0.7) xpos teleport_xpos ypos teleport_ypos zoom 0.5 + zorder teleport_zorder + +screen heal_animation(): + add "heal_ani" anchor (0.5, 1.0) xpos teleport_xpos ypos teleport_ypos zoom 0.5 + zorder teleport_zorder + +# Dummy labels. To prevent crashes. # TODO: Remove later. +default hermione_action = None + +label set_her_action(action=None, update=None): + $ hermione_action = action + return diff --git a/game/scripts/events/map.rpy b/game/scripts/events/map.rpy new file mode 100644 index 00000000..db8aa4c6 --- /dev/null +++ b/game/scripts/events/map.rpy @@ -0,0 +1,286 @@ + +label map_attic: + if tentacle_sample: + gen "(I have no reason to go there anymore.)" ("base", xpos="far_left", ypos="head") + + jump desk + else: + $ tentacle_sample = True + + call blkfade + gen "(The attic huh...)" ("base", xpos="far_left", ypos="head") + gen "(I guess I could check it out.)" ("base", xpos="far_left", ypos="head") + + stop music fadeout 3.0 + stop weather fadeout 3.0 + + pause 1.0 + call play_sound("walking") + play weather "sounds/wind_long_loop.ogg" fadein 2 fadeout 2 + + ">You find your way through the winding staircases to the attic door." + gen "*Hmm*... hopefully this is the right place to use that key." ("base", xpos="far_left", ypos="head") + play bg_sounds "sounds/pulse.ogg" + ">As you approach the door the lock begins to glow..." + ">Looking down at the key in your hand you notice the same glow around the key..." + gen "Well, this has to be it then..." ("base", xpos="far_left", ypos="head") + stop bg_sounds fadeout 2.0 + call play_sound("lock") + pause 2.0 + call play_sound("door") + ">After unlocking the door you're presented to a dusty room filled with random junk and knick-knacks." + $ renpy.sound.play("sounds/cough_male.ogg") + g16 "...*cough* *cough*..." + gen "This room is just filled with random junk and knick-knacks!" ("angry", xpos="far_left", ypos="head") + gen "(So now what... I'm supposed to take a piece of something and use with this scroll?)" ("base", xpos="far_left", ypos="head") + gen "(I don't even know what the scroll is supposed to do, how am I going to find what it wants me to use!)" ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(Screw it... I'm just going to cheat and check the item description in my inventory.)" ("base", xpos="far_left", ypos="head") + gen "(Let's see what it says...)" ("base", xpos="far_left", ypos="head") + gen "(Turns the user into a magical tentacle plant with the usage of living plant material.)" ("base", xpos="far_left", ypos="head") + gen "Well, well... that could be useful..." ("base", xpos="far_left", ypos="head") + gen "So I guess this tentacle plant should be here somewhe--" ("base", xpos="far_left", ypos="head") + ">As you scan the room you notice a slender piece of vine poking out from behind some crates, as if to avoid the light." + gen "This must be it." ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/slash.ogg") + ">You make a clean cut just when..{nw}" + $ renpy.play("sounds/mondead.ogg") + ">You make a clean cut just when..{fast}" + gen "I better get the fuck out of here." ("angry", xpos="far_left", ypos="head") + $ renpy.play("sounds/mon.ogg") + ">As you shut the door you hear the room erupt in a series of loud crashes and growling." + + call play_sound("walking") + "> You hastily make your way towards your office." + + call gen_walk(action="enter") + call hide_blkfade + + stop weather + call music_block + + gen "(A tentacle plant and a body-bending magical scroll huh...)" ("base", xpos="far_left", ypos="head") + gen "(Maybe I could use it to have some fun with Granger...)" ("grin", xpos="far_left", ypos="head") + + menu: + gen "(Question is... Should I use it now or save it for later?)" ("base", xpos="far_left", ypos="head") + "-Use it now-": + if game.daytime: + if not hermione_busy: + gen "Yes, there's no time like the present..." ("grin", xpos="far_left", ypos="head") + gen "I'll just grab a seat first." ("base", xpos="far_left", ypos="head") + + call blkfade + call gen_chibi("sit_behind_desk") + call hide_blkfade + + jump tentacle_scene_intro + else: + gen "(On second thought... she's probably busy right now.)" ("base", xpos="far_left", ypos="head") + else: + gen "(It's a bit late... Miss granger wont be having any classes right now...)" ("base", xpos="far_left", ypos="head") + "-Save for later-": + pass + + gen "(I'll just store this in my inventory for now...)" ("base", xpos="far_left", ypos="head") + + call blkfade + call gen_chibi("sit_behind_desk") + call hide_blkfade + + jump main_room_menu + +label map_forest: + if game.daytime: + gen "I shouldn't be leaving the castle during the day. It's too risky..." ("base", xpos="far_left", ypos="head") + jump desk + + call outskirts_of_hogwarts + + gen "Let's see what I can find out here..." ("base", xpos="far_left", ypos="head") + + menu: + "-Search the area-": + $ ran = renpy.random.random() + if ran < 0.3: + ">You search around the forest and manage to find an odd-looking herb." + gen "This must be wormwood." ("base", xpos="far_left", ypos="head") + menu: + "-Take the wormwood-": + ">You gain 1 wormwood." + $ potion_inv.add("ing_wormwood") + "-Leave it-": + pass + ">Finding nothing else of interest you return to your office." + jump return_office + elif ran < 0.6: + ">You search around the forest and manage to find an odd-looking herb." + gen "This must be Knotgrass." ("base", xpos="far_left", ypos="head") + menu: + "-Take the Knotgrass-": + ">You gain 1 Knotgrass." + $ potion_inv.add("ing_knotgrass") + "-Leave it-": + pass + ">Finding nothing else of interest you return to your office." + jump return_office + else: + ">You search around the forest but find nothing of interest." + jump return_office + + +label map_lake: + if game.daytime: + gen "I shouldn't be leaving the castle during the day. It's too risky..." ("base", xpos="far_left", ypos="head") + jump desk + + call outskirts_of_hogwarts + + gen "Let's see what I can find out here..." ("base", xpos="far_left", ypos="head") + + menu: + "-Search the area-": + $ ran = renpy.random.random() + if ran < 0.3: + ">You search around the lake and manage to find an slender, green vine." + gen "This must be Niffler's fancy." ("base", xpos="far_left", ypos="head") + menu: + "-Take the Niffler's fancy-": + ">You gain 1 Niffler's fancy." + $ potion_inv.add("ing_niffler_fancy") + "-Leave it-": + pass + ">Finding nothing else of interest you return to your office." + jump return_office + elif ran < 0.6: + ">You search around the lake and manage to find an exposed root that looks similar to ginger." + gen "This must be Root of Aconite." ("base", xpos="far_left", ypos="head") + menu: + "-Take the Root of Aconite-": + ">You gain 1 Root of Aconite." + $ potion_inv.add("ing_aconite_root") + "-Leave it-": + pass + ">Finding nothing else of interest you return to your office." + jump return_office + else: + ">You search around the lake but find nothing of interest." + jump return_office + + +label gryffindor_dormitories: + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}Gryffindor's Dormitory{/color}{/size}" + + menu: + "-Search the area-":#Cat Hair + $ ran = renpy.random.random() + if ran < 0.3: + ">You search around the dorms and manage to find a clump of bright orange fur." + gen "This must belong to some sort of animal." ("base", xpos="far_left", ypos="head") + menu: + "-Take the Fur-": + ">You gain 1 Cat Fur." + $ potion_inv.add("ing_cat_hair") + "-Leave it-": + pass + ">Finding nothing else of interest you return to your office." + jump return_office + else: + ">You search around the dorms but find nothing of interest." + jump return_office + + +label ravenclaw_dormitories: + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}Ravenclaw's Dormitory{/color}{/size}" + + menu: + "-Search the area-":#Luna's Hair + $ ran = renpy.random.random() + if ran < 0.3: + ">You search around the dorms and manage to find an comb with some hair in it." + gen "This must be someone's hair." ("base", xpos="far_left", ypos="head") + menu: + "-Take the hair-": + ">You gain 1 Luna's Hair." + $ potion_inv.add("ing_luna_hair") + "-Leave it-": + pass + ">Finding nothing else of interest you return to your office." + jump return_office + else: + ">You search around the dorms but find nothing of interest." + jump return_office + +label map_pitch: + if pitch_open: + hoo "Hello Professor Dumbledore, nice to see you out of your office today." + hoo "What brings you down to the Quidditch pitch today?" + gen "Quidditch, what sort of name is that?" ("base", xpos="far_left", ypos="head") #put in low talking tone + hoo "What was that?" + gen "Nothing, just commenting about the weather." ("base", xpos="far_left", ypos="head") #Maybe change this + hoo "Well I'm glad that you're here. I wanted to have words with you about a problem that I'm having at the moment." + gen "What's wrong?" ("base", xpos="far_left", ypos="head") + hoo "Attendance at quidditch matches has slowly been declining over the last couple of months." + hoo "Students just don't seem to want to turn up to watch their teams play. It's affecting team morale." + gen "And how would you like to fix this?" ("base", xpos="far_left", ypos="head") + hoo "Perhaps we could make attendance to the match mandatory." + gen "I don't think that that would work. If I did that you would just end up with a lot of disgruntled students booing your own team." ("base", xpos="far_left", ypos="head") + gen "If poor attendance is affecting morale I would hate to think what that would do to the players." ("base", xpos="far_left", ypos="head") + hoo "Well then what do you suggest?" + gen "You need a way to attract and excite the crowd. To get the students here and to get them cheering." ("base", xpos="far_left", ypos="head") + gen "What you need is a cheerleading team." ("base", xpos="far_left", ypos="head") + hoo "A what?" + gen "A team of girls to dance and cheer for their team. To get their fellow students brimming with enthusiasm." ("base", xpos="far_left", ypos="head") + hoo "I'm not sure Sir, Hogwarts has always been a traditional school." + hoo "Something like this goes in the face of that legacy." + gen "Well if you feel that way then I think you might just have to accept the declining number of students watching the game." ("base", xpos="far_left", ypos="head") + hoo "Fine, but I'm not comfortable with a team of these \"\Cheerleaders\"\. At most I'd be comfortable with one girl dancing." #Maybe adjust this so that there is a team + gen "Well I think I have the perfect candidate. I'll send her over next practice session to try out." ("base", xpos="far_left", ypos="head") + hoo "Okay, just make sure she's wearing something appropriate." + $ pitch_first = False + jump return_office + else: + ">You look around the open field but can't see any students or teachers" + gen "Mustn't be a practice day." ("base", xpos="far_left", ypos="head") + jump return_office + +label outskirts_of_hogwarts: + call blkfade + call gen_chibi("stand","desk","base") + call hide_blkfade + + call gen_walk(action="leave") + call blkfade + + stop music fadeout 1.0 + + centered "{size=+7}{color=#cbcbcb}Outskirts of Hogwarts{/color}{/size}" + + call hide_screens + + play music "sounds/night.ogg" fadein 1 fadeout 1 #NIGHT SOUNDS. + + $ dynamic_cg("ball", "171") + pause.3 + call hide_blkfade + pause.8 + call play_sound("walking_on_grass") + $ dynamic_cg("ball", "171", "172") + + return + +label return_office: + call hide_characters + show screen blkfade + with d3 + + call update_interface_color + pause.8 + + jump main_room diff --git a/game/scripts/events/potions/intro.rpy b/game/scripts/events/potions/intro.rpy new file mode 100644 index 00000000..00edf736 --- /dev/null +++ b/game/scripts/events/potions/intro.rpy @@ -0,0 +1,465 @@ +default snape_office_intro_E0 = False +default snape_office_intro_E1 = False +default snape_office_intro_E1_stage = 0 +default snape_office_intro_E2 = False + +default snape_station_examined = False +default snape_shelves_examined = False +default snape_picture_examined = False +default snape_statue_examined = False +default snape_desk_examined = False +default snape_candelabra_examined = False + +label potions_intro_E0: + # (Optional) Genie gets caught by Snape, happens only during night time + $ snape_office_discovered = True + + if not snape_office_intro_E0: + # First time + $ snape_office_intro_E0 = True + + pause .5 + $ snape_office_desk_OBJ.set_image("snape_desk_work_idle") + with d3 + + sna "... Genie?" ("snape_01", ypos="head", trans=d3) + + gen "(Oh shit...)" ("angry", xpos="far_left", ypos="head") + + pause .5 + $ snape_office_desk_OBJ.set_image("snape_desk_idle") + with d3 + + if mirror_intro_done: + sna "Didn't I tell you not to leave your office?" ("snape_04") + else: + sna "A bit far from your office don't you think?" ("snape_03") + sna "Are you sure it's wise for you to wander the dungeons?" ("snape_04") + + gen "*Err*...{w=0.4} So this isn't my office?" ("base", xpos="far_left", ypos="head") + sna "No... This is my office... As I'm sure you're aware." ("snape_01") + gen "Oh... I must've been sleepwalking!" ("base", xpos="far_left", ypos="head") + sna "Sleepwalking?" ("snape_05") + sna "I didn't think genies needed sleep." ("snape_03") + gen "Of course we do!" ("base", xpos="far_left", ypos="head") + gen "(Wait...{w=0.4} Do we?{w} Why do I sleep so much?)" ("base", xpos="far_left", ypos="head") + sna "*Sigh*..." ("snape_06") + sna "Did anyone see you?" ("snape_01") + gen "Oh yeah, lots of people." ("base", xpos="far_left", ypos="head") + gen "A bunch of weirdos were staring at me on the way here." ("base", xpos="far_left", ypos="head") + sna "Bloody hell..." ("snape_08") + sna "This is why I told you not to leave your office..." ("snape_07") + sna "Any students?" ("snape_10") + gen "Well, there was this weird knight." ("base", xpos="far_left", ypos="head") + sna "A knight?" ("snape_36") + gen "Yeah! He was getting a blowjob from some lady!" ("base", xpos="far_left", ypos="head") + sna "What are you--{w=0.2}{nw}" ("snape_25") + sna "What are you--{fast} Oh I see..." ("snape_01") + sna "You're talking about the paintings..." ("snape_03") + sna "That would be Sir Cadogan and the fat lady." ("snape_24") + gen "..." ("base", xpos="far_left", ypos="head") + gen "That's a bit rude don't you think?" ("base", xpos="far_left", ypos="head") + sna "That's her name." ("snape_03") + gen "Oh..." ("base", xpos="far_left", ypos="head") + sna "Did you need something?" ("snape_04") + sna "You could just call for me you know." ("snape_05") + gen "Oh... Yes, Well I thought that it was a bit unfair to have you walk all the way to my office every time." ("base", xpos="far_left", ypos="head") + sna "Is that so?" ("snape_44") + gen "Yes..." ("base", xpos="far_left", ypos="head") + sna "And my other question..." ("snape_03") + gen "Which was?" ("base", xpos="far_left", ypos="head") + sna "..." ("snape_04") + gen "Oh! *Err*..." ("base", xpos="far_left", ypos="head") + + menu: + "\"I was just looking around.\"": + sna "Are you done sightseeing then?" ("snape_03") + menu: + "\"Not yet.\"": + sna "..." ("snape_01") + call gen_walk(xpos="mid", ypos="base") + call ctc + call gen_chibi(flip=False) + call ctc + call gen_chibi("stand_alt", flip=False) + call ctc + call gen_chibi(flip=True) + call gen_chibi("stand_alt") + pause .5 + sna "... {w=0.4} Well?" ("snape_04") + call gen_chibi("stand") + gen "Okay, now I'm done." ("base", xpos="far_left", ypos="head") + sna "Good..." ("snape_04") + "\"Yes.\"": + gen "I'll just go then shall I?" ("base", xpos="far_left", ypos="head") + sna "That would be for the best..." ("snape_04") + "\"I just came to visit a friend.\"": + if sna_friendship <= 25: + sna "A friend? In here? Who are you--" ("snape_03") + sna "*Oh*...{w=0.4} I see..." ("snape_04") + gen "(That was cold...)" ("base", xpos="far_left", ypos="head") + else: + gen "I wanted to see how he's doing." ("base", xpos="far_left", ypos="head") + sna "*Hmm*...{w=0.4} Well, I appreciate it, but I'm quite busy right now." ("snape_09") + sna "Being a teacher is not an easy job." ("snape_06") + gen "I know something about it." ("base", xpos="far_left", ypos="head") + sna "You do?" ("snape_05") + gen "Yeah. I might tell you about it someday, but for now I'll leave you to it." ("base", xpos="far_left", ypos="head") + sna "Right... In that case..." ("snape_04") + "\"I like your office!\"": + gen "Way nicer than the one I have." ("base", xpos="far_left", ypos="head") + sna "Thanks. I always had a thing for interior design--" ("snape_23") + sna "Hold up. You're doing it again!" ("snape_17") + gen "Doing what?" ("base", xpos="far_left", ypos="head") + sna "Trying to talk your way out things and changing subjects!" ("snape_32") + + if sna_friendship <= 25: + sna "If you don't have anything important to report I think you should leave." ("snape_31") + gen "... Alright. I see how it is." ("base", xpos="far_left", ypos="head") + else: + sna "*Sigh*..." ("snape_06") + "\"Can I borrow your brewing station?\"" if snape_office_intro_E1: + gen "I thought I could use it to make some potions." ("base", xpos="far_left", ypos="head") + sna "Hell no!" ("snape_03") + gen "Why not?" ("base", xpos="far_left", ypos="head") + sna "Well, I don't know, maybe so you don't explode the castle?" ("snape_01") + gen "So... That's a maybe..." ("base", xpos="far_left", ypos="head") + sna "It's a hard {b}NO{/b}." ("snape_31") + gen "(... I guess I will need more convincing arguments.)" ("base", xpos="far_left", ypos="head") + gen "(Better not mention snooping in his office though, he would definitely kill me...)" ("base", xpos="far_left", ypos="head") + "\"What's the Wi-Fi password?\"": + sna "Sorry?" ("snape_05") + #check day counter + if game.day > 35: + gen "I've been here for ages and I still don't know the password..." ("base", xpos="far_left", ypos="head") + else: + gen "I know I've only been here for a little bit. But it's boring up there." ("base", xpos="far_left", ypos="head") + + $ random_number = renpy.random.randint(1, 4) + + if random_number == 1: + gen "Where am I supposed to watch \"Great British bake off\"?" ("base", xpos="far_left", ypos="head") + elif random_number == 2: + gen "I sleep so much better with \"Friends\" on in the background." ("base", xpos="far_left", ypos="head") + elif random_number == 3: + gen "I need to know what the Kardashians are up to." ("base", xpos="far_left", ypos="head") + elif random_number == 4: + gen "I was just about to start season six of \"Lost\", I need to know how it ends!" ("base", xpos="far_left", ypos="head") + + sna "I don't know what a \"Wife-I\" is, so I assume it's some muggle thing... Muggle electronics do not work at Hogwarts..." ("snape_03") + gen "Oh shit, so you've bricked my phone?" ("base", xpos="far_left", ypos="head") + sna "..." ("snape_04") + gen "I don't have a phone..." ("base", xpos="far_left", ypos="head") + + sna "I need to get back to grading these papers..." ("snape_01") + sna "Just call for me if you need me next time." ("snape_39") + gen "Noted..." ("base", xpos="far_left", ypos="head") + + else: + # Repeat + + sna "Genie... Didn't I tell you to call for me if you needed anything?" ("snape_03") + gen "Ah, yes... My bad." ("base", xpos="far_left", ypos="head") + + if not snape_office_intro_E1: + gen "(Why is he always in his office?)" ("base", xpos="far_left", ypos="head") + gen "(Maybe I should try snooping around when he's busy teaching...)" ("base", xpos="far_left", ypos="head") + else: + gen "I'll be going then." ("base", xpos="far_left", ypos="head") + sna "Don't let the door hit you on your way out." ("snape_04") + gen "(If I want to brew potions, I need to get here during the day when Snape's busy teaching.)" ("base", xpos="far_left", ypos="head") + + jump return_office + +label potions_intro_E1: + # Plays when you first enter the office and Snape is not there + $ snape_office_discovered = True + + if snape_office_intro_E1_stage == 0: + # Before examination + $ snape_office_intro_E1_stage = 1 + + if snape_office_intro_E0: + gen "(Great... No Snape in sight this time.)" ("base", xpos="far_left", ypos="head") + else: + pause .5 + gen "...Hello?" ("base", xpos="far_left", ypos="head") + gen "(Snape must be busy teaching...)" ("base", xpos="far_left", ypos="head") + + gen "(Let's have a look around...)" ("base", xpos="far_left", ypos="head") + + $ snape_office_brewing_station_OBJ.idle = At("snape_office_brewing_station_off", pulse_hover) + $ snape_office_shelves_OBJ.idle = At("snape_office_shelves", pulse_hover) + $ snape_office_picture_OBJ.idle = At("snape_office_picture", pulse_hover) + $ snape_office_statue_OBJ.idle = At("snape_office_statue", pulse_hover) + $ snape_office_desk_OBJ.idle = At("snape_office_desk", pulse_hover) + $ snape_office_candelabra_OBJ.idle = At("snape_office_candelabra_on", pulse_hover) + + jump snape_office_menu + + elif (snape_office_intro_E1_stage == 1 and + snape_station_examined and + snape_shelves_examined and + snape_picture_examined and + snape_statue_examined and + snape_desk_examined and + snape_candelabra_examined): + + # After examination + + with fade + + gen "(Well, I've found some recipes... I doubt there's many more useful things in here...)" ("base", xpos="far_left", ypos="head") + gen "(*Hmm*... I might be pushing my luck if I stay too long...)" ("base", xpos="far_left", ypos="head") + gen "(Better head back to my office for now.)" ("base", xpos="far_left", ypos="head") + + call popup("You can now brew potions when Snape's not around!", "Congratulations!", "interface/icons/head/snape.webp") + + $ game.daytime = False + $ snape_office_intro_E1 = True + $ snape_office_intro_E1_stage = 2 + + jump return_office + + jump snape_office_menu + +label potions_intro_E2: + # Genie gets caught by the painting + $ snape_office_intro_E2 = True + + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Looks like the coast is clear..." ("base", xpos="far_left", ypos="head") + + #Genie walks into the room + call gen_walk(xpos="mid", ypos="base") + + "The Painting" "{i}Alarm!{/i} Alarm! {b}ALARM!{/b}" + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + + "\"Shut it Van Gogh...\"": + # Fun fact: This is a rare insult as Van Gogh has sold only but a single painting in his life time, he got famous only after his passing. + pass + "\"These bloody paintings...\"": + gen "Whoever thought it was a good idea to make paintings talk should be drowned in paint..." ("angry", xpos="far_left", ypos="head") + "\"...\"": + pass + + "The Painting" "Alarm! Major asshole detected!" + gen "How do I shut this thing off..." ("base", xpos="far_left", ypos="head") + + #Snape walks in + call sna_walk(action="enter", xpos="door", ypos="base", flip=True) + + sna "Genie!" + if snape_office_intro_E0: + gen "Quiet you, Only my friends get to call me that!" ("base", xpos="far_left", ypos="head") + else: + gen "Wait, how do you know my name?" ("base", xpos="far_left", ypos="head") + # gen "The simulation must be failing..." ("base", xpos="far_left", ypos="head") + gen "Darn painting... If only there was some paint thinner around here..." ("base", xpos="far_left", ypos="head") + gen "Water will have to do I suppose..." ("base", xpos="far_left", ypos="head") + + #Genie turns around towards door + call gen_chibi(flip=False) + pause .5 + call gen_chibi("stand_shocked", flip=False) + play sound "sounds/malegasp.ogg" volume 0.40 + gen "..." ("angry", xpos="far_left", ypos="head") + + if snape_office_intro_E0: + sna "I thought I told you to call for me if you needed anything." ("snape_04", ypos="head", trans=d3) + call gen_chibi("stand", flip=False) + gen "That's weird..." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_04") + gen "This isn't my office!" ("angry", xpos="far_left", ypos="head") + sna "Your office couldn't be further away from here Genie, you're not fooling me with that one again..." ("snape_03") + gen "*Err*..." ("base", xpos="far_left", ypos="head") + else: + sna "What the hell are you doing in my office this time of day?" ("snape_03") + call gen_chibi("stand", flip=False) + gen "*Err*..." ("base", xpos="far_left", ypos="head") + gen "Sightseeing?" ("base", xpos="far_left", ypos="head") + sna "In the dungeon?" ("snape_03") + gen "Yes?" ("base", xpos="far_left", ypos="head") + sna "I somehow find that hard to believe..." ("snape_01") + + #Snape walks past genie and sits down at his desk + call sna_walk(xpos="mid", ypos="base") + call sna_chibi("hide") + $ snape_office_desk_OBJ.set_image("snape_desk_idle") + with d3 + + call gen_chibi(flip=True) + with d3 + + pause 0.5 + + gen "Well I can assure you--" ("base", xpos="far_left", ypos="head") + + sna "If this is going to work then I expect you to be more careful." ("snape_01", trans=d3) + sna "It appears you're not the only one who's been snooping around..." ("snape_35") + gen "Spies?" ("base", xpos="far_left", ypos="head") + sna "No... Not spies..." ("snape_43") + + $ random_number = renpy.random.randint(1, 3) + + if random_number == 1: + sna "Someone's been rummaging around in my office." ("snape_39") + gen "Really? Now that's--" ("base", xpos="far_left", ypos="head") + "The Painting" "That's him!" + sna "Be quiet you--" ("snape_43") + "The Painting" "But, that's the asshole that snooped around here!" + sna "..." ("snape_25") + gen "Bugger..." ("base", xpos="far_left", ypos="head") + elif random_number == 2: + sna "Someone's gone through my desk drawers." ("snape_01") + gen "Gross!" ("base", xpos="far_left", ypos="head") + sna "Excuse me?" ("snape_05") + gen "I mean--{w=0.2} That's not good!" ("base", xpos="far_left", ypos="head") + sna "Quite..." ("snape_03") + sna "That's where I keep my list of the more...{w=0.4} Slutty Slytherins." ("snape_01") + gen "Wait, there was a list under those panties?--" ("base", xpos="far_left", ypos="head") + sna "" ("snape_04") + gen "..." ("angry", xpos="far_left", ypos="head") + elif random_number == 3: + sna "Someone's gone through my desk." ("snape_03") + gen "And? Did they take anything?" ("base", xpos="far_left", ypos="head") + sna "It's not really about what they took but what I have in there..." ("snape_31") + gen "..." ("base", xpos="far_left", ypos="head") + sna "It'd be a bit embarrassing if my purchase history got spread around..." ("snape_35") + sna "Knockturn alley provides some fairly..." ("snape_41") + sna "Unorthodox pleasure devices." ("snape_40") + gen "Stop!" ("angry", xpos="far_left", ypos="head") + sna "What?" ("snape_25") + gen "I don't want to hear about your basi-lick or whatever you call it!" ("angry", xpos="far_left", ypos="head") + + sna "So it was you!" ("snape_10") + sna "Why have you been snooping around my office?" ("snape_01") + gen "I wasn't snooping. I just wanted to brew some potions!" ("base", xpos="far_left", ypos="head") + sna "You wanted to brew potions?" ("snape_05") + gen "Yes?" ("base", xpos="far_left", ypos="head") + sna "Are you insane?" ("snape_10") + gen "I'm quite adept at potion making, I'll have you know!" ("base", xpos="far_left", ypos="head") + gen "It's what got me here in the first place!" ("base", xpos="far_left", ypos="head") + sna "Right... And that effect was deliberate was it?" ("snape_03") + gen "..." ("base", xpos="far_left", ypos="head") + sna "You're lucky I caught you before you did anything stupid!" ("snape_01") + gen "Like what? It's just potions..." ("base", xpos="far_left", ypos="head") + sna "Like caving this whole room in!" ("snape_10") + gen "I'm immortal, why would I care..." ("base", xpos="far_left", ypos="head") + sna "Do you phase through debris as well?" ("snape_03") + gen "Good point..." ("base", xpos="far_left", ypos="head") + + gen "So... Will you teach me how to brew your potions then?" ("base", xpos="far_left", ypos="head") + sna "..." ("snape_03") + sna "*Hah-Hah-Hah!*" ("snape_28") + gen "*Heh-Heh*..." ("grin", xpos="far_left", ypos="head") + sna "Hell no!" ("snape_03") + gen "{size=+3}WHY NOT?{/size}" ("angry", xpos="far_left", ypos="head") + + if sna_friendship > 50: + sna "Because...{w=0.4} I...{w=0.2} know...{w=0.2} You..." ("snape_10") + gen "You do?" ("base", xpos="far_left", ypos="head") + sna "I {i}know{/i} that you would mess it up I should say..." ("snape_03") + else: + sna "Because...{w=0.4} I...{w=0.2} Don't...{w=0.2} Trust...{w=0.2} You..." ("snape_10") + gen "You don't?" ("base", xpos="far_left", ypos="head") + sna "I don't trust that you wont mess it up I should say..." ("snape_03") + + gen "Come on! Those recipes I found in your desk looks simple enough..." ("base", xpos="far_left", ypos="head") + sna "You read that?" ("snape_14") + gen "Of course I did!" ("grin", xpos="far_left", ypos="head") + gen "They're quite genius actually..." ("base", xpos="far_left", ypos="head") + sna "Oh... Why I wouldn't say--" ("snape_23") + gen "A lot of them appeared to be derivatives from other potions, is that correct?" ("base", xpos="far_left", ypos="head") + sna "*Ahem*...{w=0.4} Yes." ("snape_25") + sna "They weren't really useful for what I wanted so I changed them a bit..." ("snape_37") + + if mirror_intro_done: + gen "Much like that mirror..." ("base", xpos="far_left", ypos="head") + sna "Actually, about that...{w=0.4} I can't seem to be able to get into that room again..." ("snape_38") + + gen "I noticed you've got some of the base liquids already." ("base", xpos="far_left", ypos="head") + gen "I must say I am very much a fan of using breast milk in my own concoctions." ("base", xpos="far_left", ypos="head") + sna "Hold on... You're saying you've used it in potion brewing already?" ("snape_25") + gen "All the time!" ("base", xpos="far_left", ypos="head") + sna "*Hmm*... Maybe you have more potential than I first thought..." ("snape_04") + sna "These recipes are still in an experimental stage..." ("snape_03") + sna "{size=-3}And it does mean I wouldn't have to put myself in any danger...{/size}" ("snape_09") + sna "...{w} Fine." ("snape_01") + sna "You can use my brewing station..." ("snape_01") + sna "I have a spare one if you somehow manage to burn a hole through it..." ("snape_37") + gen "Great!" ("base", xpos="far_left", ypos="head") + sna "But only during the day... I'd rather not be bothered in the evenings as I need to--" ("snape_01") + sna "*Ahem*...{w=0.4} Grade tests..." ("snape_35") + gen "Right..." ("base", xpos="far_left", ypos="head") + menu: + "-Ask about ingredients-": + gen "So...{w} *Err*..." ("base", xpos="far_left", ypos="head") + gen "The recipe's mentioned some additional ingredients..." ("base", xpos="far_left", ypos="head") + sna "Yes?" ("snape_05") + gen "Well, I didn't really see a ingredient cupboard or anything in here..." ("base", xpos="far_left", ypos="head") + sna "Right?" ("snape_03") + gen "So, where do you keep your... *Err*..." ("base", xpos="far_left", ypos="head") + sna "Keep {size=+5}my{/size} what?" ("snape_04") + gen "You know what, I think I'll probably manage to find some on my own..." ("base", xpos="far_left", ypos="head") + sna "*Hmm*..." ("snape_04") + gen "Drinks later?" ("angry", xpos="far_left", ypos="head") + gen "On me obviously." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_04") + gen "*Hah-hah*... See you later then buddy!" ("grin", xpos="far_left", ypos="head") + gen "*Ahem*..." ("base", xpos="far_left", ypos="head") + call gen_chibi("stand", flip=False) + "-Indirectly ask about ingredients-": + gen "I'll just go now then shall I?" ("base", xpos="far_left", ypos="head") + sna "You do that..." ("snape_01") + call gen_walk(xpos="station", ypos="station", flip=False) + pause .5 + call gen_chibi("stand_alt", flip=True) + gen "Unless there's anything else that I'll need to brew these potions?" ("base", xpos="far_left", ypos="head") + sna "Well, obviously you wouldn't be able to brew them with just the base liquids..." ("snape_05") + gen "*Hah-Hah*... Yeah..." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_04") + gen "See you later then!" ("base", xpos="far_left", ypos="head") + call gen_chibi("stand", flip=False) + + gen "(I guess I'll just have to find any additional ingredients that I'll need on my own...)" ("base", xpos="far_left", ypos="head") + call gen_walk(action="leave") + + sna "..." + + $ snape_office_desk_OBJ.set_image("snape_office_desk") + + call sna_chibi("stand", xpos="beside_chair", ypos="beside_chair", flip=True) + + call sna_walk(path=[(745, 438), (730, 405)]) + + call sna_chibi("stand", xpos="shelves", ypos="shelves", flip=False) + with d3 + + pause 0.5 + + sna "As If I'd let anyone have my ingredients..." ("snape_03", trans=d3) + sna "Revelio!" ("snape_10", wand=True) + + hide snape_main + hide screen bld1 + with d3 + + pause 0.5 + $ renpy.play('sounds/magic1.ogg') + $ snape_office_shelves_OBJ.set_image("snape_office_shelves_alt") + $ snape_office_shelves_OBJ.foreground = None + with d9 + pause 2.0 + + sna "*Heh-Heh*..." ("snape_37", wand=True, trans=d1) + sna "... W-- Where's my fluxweed?!" ("snape_25", wand=True, trans=d1) + + #Back to office screen + + $ snape_office_shelves_OBJ.set_image("snape_office_shelves") + $ snape_office_shelves_OBJ.foreground = "snape_office_shelves_anim" + jump return_office diff --git a/game/scripts/gui/_gui_.rpy b/game/scripts/gui/_gui_.rpy new file mode 100644 index 00000000..1ab8c550 --- /dev/null +++ b/game/scripts/gui/_gui_.rpy @@ -0,0 +1,139 @@ +# +# GUI configuration +# + +init offset = -2 + +init python in gui: + import store + from store import settings, ScreenshotImage + + init(1080, 600) + + def is_dark(): + theme = settings.get("theme") + + if theme == "auto": + return not renpy.store.game.daytime + return (theme == "dark") + + def is_light(): + return not is_dark() + + def theme(name=None): + """ + Returns a style name or prefix that accounts for dark/light theme. + The returned form is "{theme}_{name}", so styles can fall back on parent styles. + """ + theme = "dark" if is_dark() else "light" + return "{}_{}".format(theme, name) if name else theme + + def format(template): + """ + Formats a string using the current theme. + Note: Theme name follows folder naming, so "gray/gold" instead of "dark/light". + """ + return template.format("gray" if is_dark() else "gold") + + def rebuild_styles(): + """ + Evaluates and rebuilds styles. + """ + for s in renpy.translation.deferred_styles: + s.apply() + + renpy.style.rebuild() + + def menu_item(label, value, **kwargs): + """ + Creates a menu item with arguments. + """ + location = renpy.game.context().current + action = renpy.ui.ChoiceReturn(label, value, location, kwargs=kwargs) + return (label, action) + + def in_context(label, *args, **kwargs): + """ + Calls label in a new context with captured background. + """ + + renpy.store.disable_game_menu() + renpy.choice_for_skipping() + renpy.pause(0.001) # Give renderer the chance to catch up with transitions + bg = ScreenshotImage.capture() + renpy.call_in_new_context("gui_init_context", bg, label, *args, **kwargs) + +label gui_init_context(bg, label, *args , **kwargs): + $ renpy.show("screenshot", what=bg, at_list=[Transform(size=(config.screen_width, config.screen_height))]) + $ renpy.call(label, *args, **kwargs) + return + +# Colors +define gui.text_color = "#fff" +define gui.interface_text_color = "#fff" + +# An accent color used throughout the interface to label and highlight text. +define gui.accent_color = "#f9a001" # "#ee7700" # "#cc6600" + +# The color used for a text button when it is neither selected nor hovered. +define gui.idle_color = Color("#000", alpha=0.5) + +# The small color is used for small text, which needs to be brighter/darker to achieve the same effect. +define gui.idle_small_color = Color("#000", alpha=0.5) + +# The color that is used for buttons and bars that are hovered. +define gui.hover_color = "#000" + +# The color used for a text button when it is selected but not focused. +define gui.selected_color = "#000" + +# The color used for a text button when it cannot be selected. +define gui.insensitive_color = Color("#000", alpha=0.3) + +# Colors used for the portions of bars that are not filled in. +define gui.muted_color = "#88888844" # "#512800" +define gui.hover_muted_color = "#ee770044" # "#7a3d00" + +# Fonts +define gui.text_font = "gui/CreativeBlockRegular.ttf" +define gui.bold_font = "gui/CreativeBlockBold.ttf" +define gui.glyph_font = "DejaVuSans.ttf" + +# Main and game menus +define gui.main_menu_background = "main_menu" +define gui.game_menu_background = "game_menu" + +# Save slot size +define gui.slot_width = 350 +define gui.slot_height = 50 + +define gui.page_button_borders = Borders(9, 4, 9, 4) + +# Menu navigation +define gui.navigation_padding = 34 +define gui.navigation_spacing = 4 + +# Save thumbnail size +define config.thumbnail_width = 94 +define config.thumbnail_height = 50 + +# Save slots table +define gui.file_slot_cols = 2 +define gui.file_slot_rows = 6 + +# Spacing +define gui.pref_spacing = 9 +define gui.pref_button_spacing = 0 +define gui.page_spacing = 0 +define gui.slot_spacing = 9 + +# Sliders and Bars +define gui.bar_size = 20 +define gui.scrollbar_size = 12 +define gui.slider_size = 20 +define gui.thumb_size = 12 + +define gui.slider_tile = False +define gui.slider_borders = Borders(10, 10, 10, 10) + +define gui.unscrollable = "hide" diff --git a/game/scripts/gui/_images_.rpy b/game/scripts/gui/_images_.rpy new file mode 100644 index 00000000..f39e36cd --- /dev/null +++ b/game/scripts/gui/_images_.rpy @@ -0,0 +1,301 @@ +# +# GUI images +# + +image gui_fade: + Solid("#000") + alpha 0.0 + + on appear: + alpha 0.5 + on show: + linear 0.1 alpha 0.5 + on hide: + linear 0.1 alpha 0.0 + +image game_menu: + contains: + zoom 0.5 + "gui/main_menu/00.webp" + pause 3 + "gui/main_menu/01.webp" + pause.1 + "gui/main_menu/02.webp" + pause.1 + "gui/main_menu/01.webp" + pause.1 + "gui/main_menu/00.webp" + pause 6 + "gui/main_menu/01.webp" + pause.1 + "gui/main_menu/02b.webp" + pause.1 + "gui/main_menu/01b.webp" + pause.1 + "gui/main_menu/00b.webp" + pause 3 + "gui/main_menu/01b.webp" + pause.1 + "gui/main_menu/02b.webp" + pause.1 + "gui/main_menu/01b.webp" + pause.1 + "gui/main_menu/00b.webp" + pause 6 + "gui/main_menu/01b.webp" + pause.1 + "gui/main_menu/02b.webp" + pause.1 + "gui/main_menu/02.webp" + pause.1 + "gui/main_menu/01.webp" + pause.1 + repeat + + contains: + xpos -17 + ypos -151 + zoom 2.0 + "candle_fire" + + contains: + xpos -255 + ypos 100 + zoom 0.8 + "gui/main_menu/fire00.webp" + pause.1 + "gui/main_menu/fire01.webp" + pause.1 + "gui/main_menu/fire02.webp" + pause.1 + "gui/main_menu/fire03.webp" + pause.1 + "gui/main_menu/fire04.webp" + pause.1 + "gui/main_menu/fire05.webp" + pause.1 + "gui/main_menu/fire06.webp" + pause.1 + "gui/main_menu/fire07.webp" + pause.1 + repeat + +image main_menu: + contains: + "game_menu" + + # contains: + # xalign 1.0 + # yalign 0.5 + # xoffset -210 + # "game_title" + +image game_title: + size (339, 242) + + contains: + #zoom 0.9 + "gui/logos/title.webp" + + #TODO Add sparkle to game logo + # #sparkle + contains: + subpixel True + xpos 50 + ypos 200 + xanchor 0.5 + yanchor 0.5 + zoom 0.0 + "gui/main_menu/sparkle.webp" + linear 0.8 zoom 1.0 + linear 0.5 zoom 0.0 + pause 5 + repeat + + # #shine silver (synchronized) + contains: + subpixel True + xpos 115 + ypos 222 + xanchor 0.5 + yanchor 0.5 + zoom 0.0 + "images/title/sparkle.webp" + pause 1.3 + linear 0.5 zoom 1.0 + linear 0.5 zoom 0.0 + + xpos 135 + ypos 192 + linear 0.5 zoom 1.0 + linear 0.5 zoom 0.0 + + xpos 186 + ypos 217 + linear 0.5 zoom 1.0 + linear 0.5 zoom 0.0 + + xpos 220 + ypos 223 + linear 0.5 zoom 1.0 + linear 0.5 zoom 0.0 + + xpos 275 + ypos 220 + linear 0.5 zoom 1.0 + linear 0.5 zoom 0.0 + pause 12.6 + repeat + +image candle_fire: + "gui/main_menu/candle/fire_01.webp" + pause.1 + "gui/main_menu/candle/fire_02.webp" + pause.1 + "gui/main_menu/candle/fire_03.webp" + pause.1 + "gui/main_menu/candle/fire_04.webp" + pause.1 + "gui/main_menu/candle/fire_05.webp" + pause.1 + "gui/main_menu/candle/fire_06.webp" + pause.1 + "gui/main_menu/candle/fire_07.webp" + pause.1 + "gui/main_menu/candle/fire_08.webp" + pause.1 + "gui/main_menu/candle/fire_09.webp" + pause.1 + "gui/main_menu/candle/fire_10.webp" + pause.1 + repeat + +image discord_idle: + "gui/logos/discord.webp" + +image patreon_idle: + "gui/logos/patreon.webp" + +image silverstudiogames_idle: + "gui/logos/silverstudiogames.webp" + +# Sliders + +image slider_horizontal_idle_thumb = Transform("gui/dark_frame.png", alpha=0.5) +image slider_horizontal_selected_idle_thumb = "slider_horizontal_idle_thumb" +image slider_horizontal_hover_thumb = "gui/dark_frame.png" +image slider_horizontal_selected_hover_thumb = "slider_horizontal_hover_thumb" +image slider_horizontal_idle_bar = Solid(gui.muted_color) +image slider_horizontal_selected_idle_bar = "slider_horizontal_idle_bar" +image slider_horizontal_hover_bar = Solid(gui.hover_muted_color) +image slider_horizontal_selected_hover_bar = "slider_horizontal_hover_bar" + +image slider_vertical_idle_thumb = Solid(gui.idle_color, ysize=gui.thumb_size) +image slider_vertical_selected_idle_thumb = "slider_vertical_idle_thumb" +image slider_vertical_hover_thumb = Solid(gui.hover_color, ysize=gui.thumb_size) +image slider_vertical_selected_hover_thumb = "slider_vertical_hover_thumb" +image slider_vertical_idle_bar = Solid(gui.muted_color) +image slider_vertical_selected_idle_bar = "slider_vertical_idle_bar" +image slider_vertical_hover_bar = Solid(gui.hover_muted_color) +image slider_vertical_selected_hover_bar = "slider_vertical_hover_bar" + +image dark_slider_empty = "gui/slider/dark_empty.png" +image light_slider_empty = "gui/slider/light_empty.png" + +image dark_slider_full = "gui/slider/dark_full.png" +image light_slider_full = "gui/slider/light_full.png" + +# Scrollbars + +image scrollbar_horizontal_idle_thumb = "gui/scrollbar/vertical_idle_bar.png" #Solid(gui.accent_color) +image scrollbar_horizontal_hover_thumb = image_hover("gui/scrollbar/vertical_idle_bar.png") #Solid(gui.hover_color) +image scrollbar_horizontal_insensitive_thumb = "scrollbar_horizontal_idle_thumb" +image scrollbar_horizontal_selected_hover_thumb = "scrollbar_horizontal_hover_thumb" +image scrollbar_horizontal_idle_bar = Solid(gui.muted_color) +image scrollbar_horizontal_selected_idle_bar = "scrollbar_horizontal_idle_bar" +image scrollbar_horizontal_hover_bar = Solid(gui.hover_muted_color) +image scrollbar_horizontal_selected_hover_bar = "scrollbar_horizontal_hover_bar" +image scrollbar_horizontal_insensitive_bar = "scrollbar_horizontal_idle_bar" +image scrollbar_horizontal_selected_insensitive_bar = "scrollbar_horizontal_idle_bar" + +image scrollbar_vertical_idle_thumb = "gui/scrollbar/horizontal_idle_bar.png" #Solid("#3d3535") +image scrollbar_vertical_insensitive_thumb = "gui/scrollbar/horizontal_idle_bar.png" +image scrollbar_vertical_selected_idle_thumb = "scrollbar_vertical_idle_thumb" +image scrollbar_vertical_selected_insensitive_thumb = "scrollbar_vertical_idle_thumb" +image scrollbar_vertical_hover_thumb = image_hover("gui/scrollbar/horizontal_idle_bar.png") #Solid("#3d3535") +image scrollbar_vertical_selected_hover_thumb = "scrollbar_vertical_hover_thumb" +image scrollbar_vertical_idle_bar = Solid("#726363") +image scrollbar_vertical_selected_idle_bar = "scrollbar_vertical_idle_bar" +image scrollbar_vertical_hover_bar = Solid("#726363") +image scrollbar_vertical_selected_hover_bar = "scrollbar_vertical_hover_bar" + + + +# Bars + +image bar_idle_fill = Solid(gui.idle_color) +image bar_hover_fill = Solid(gui.hover_color) +image bar_idle_empty = Solid(gui.muted_color) +image bar_hover_empty = Solid(gui.hover_muted_color) + +image light_check_true: + zoom 0.5 + offset (2, 1) + "interface/frames/gold/check_true.webp" + +image light_check_false: + zoom 0.5 + offset (2, 1) + "interface/frames/gold/check_false.webp" + +image light_check_none: + zoom 0.5 + offset (2, 1) + "interface/frames/gold/check_none.webp" + +image dark_check_true: + zoom 0.5 + offset (2, 1) + "interface/frames/gray/check_true.webp" + +image dark_check_false: + zoom 0.5 + offset (2, 1) + "interface/frames/gray/check_false.webp" + +image dark_check_none: + zoom 0.5 + offset (2, 1) + "interface/frames/gray/check_none.webp" + +### Radio + +image light_radio_true: + zoom 0.5 + offset (2, 2) + "interface/frames/gold/radio_true.webp" + +image light_radio_false: + zoom 0.5 + offset (2, 2) + "interface/frames/gold/radio_false.webp" + +image light_radio_none: + zoom 0.5 + offset (2, 2) + "interface/frames/gold/radio_none.webp" + +image dark_radio_true: + zoom 0.5 + offset (2, 2) + "interface/frames/gray/radio_true.webp" + +image dark_radio_false: + zoom 0.5 + offset (2, 2) + "interface/frames/gray/radio_false.webp" + +image dark_radio_none: + zoom 0.5 + offset (2, 2) + "interface/frames/gray/radio_none.webp" diff --git a/game/scripts/gui/_styles_.rpy b/game/scripts/gui/_styles_.rpy new file mode 100644 index 00000000..3366f3aa --- /dev/null +++ b/game/scripts/gui/_styles_.rpy @@ -0,0 +1,283 @@ +# +# Common styles +# + +init offset = -1 + +style default: + language 'unicode' + font gui.bold_font + color "#402313" + size 16 + outline_scaling "linear" + +style input: + adjust_spacing False + +style hyperlink_text: + underline False + hover_color "#4cf" + idle_color "#08f" + +style gui_text: + font gui.text_font + color "#000" + +style dark_gui_text: + color settings.get('text_color_night') + +style light_gui_text: + color settings.get('text_color_day') + +style gui_button: + padding (4, 4, 4, 4) + background None + +style gui_button_text is gui_text: + yalign 0.5 + idle_color gui.idle_color + hover_color gui.hover_color + selected_color gui.selected_color + insensitive_color gui.insensitive_color + +style label_text is gui_text: + # font gui.bold_font + color gui.accent_color + +style dark_label_text is dark_gui_text: + font gui.bold_font + +style light_label_text is light_gui_text: + font gui.bold_font + +style prompt_text is gui_text + +style bar: + unscrollable gui.unscrollable + ysize gui.scrollbar_size + base_bar Frame("scrollbar_horizontal_[prefix_]bar", gui.slider_borders, tile=gui.slider_tile) + thumb Frame("scrollbar_horizontal_[prefix_]thumb", gui.slider_borders, tile=gui.slider_tile) + +style vbar: + unscrollable gui.unscrollable + xsize gui.scrollbar_size + base_bar "scrollbar_horizontal_[prefix_]bar" #Frame("scrollbar_vertical_[prefix_]bar", gui.slider_borders, tile=gui.slider_tile) + thumb "scrollbar_vertical_[prefix_]thumb" #Frame("scrollbar_vertical_[prefix_]thumb", gui.slider_borders, tile=gui.slider_tile) + +style scrollbar: + unscrollable gui.unscrollable + ysize gui.scrollbar_size + base_bar Frame("scrollbar_horizontal_[prefix_]bar", gui.slider_borders, tile=gui.slider_tile) + thumb Frame("scrollbar_horizontal_[prefix_]thumb", gui.slider_borders, tile=gui.slider_tile) + +style vscrollbar: + unscrollable gui.unscrollable + xsize gui.scrollbar_size + base_bar Frame("scrollbar_vertical_[prefix_]bar", gui.slider_borders, tile=gui.slider_tile) + thumb Frame("scrollbar_vertical_[prefix_]thumb", gui.slider_borders, tile=gui.slider_tile) + +style dark_vscrollbar: + unscrollable gui.unscrollable + xsize gui.scrollbar_size + base_bar Frame(Solid("#FFFFFF16"), gui.slider_borders, tile=gui.slider_tile) + thumb Frame("gui/scrollbar/dark_vertical_idle_bar.png", gui.slider_borders, tile=gui.slider_tile) + hover_thumb Frame(image_hover("gui/scrollbar/dark_vertical_idle_bar.png"), gui.slider_borders, tile=gui.slider_tile) + +style light_vscrollbar: + unscrollable gui.unscrollable + xsize gui.scrollbar_size + base_bar Frame(Solid("#FFFFFF16"), gui.slider_borders, tile=gui.slider_tile) + thumb Frame("gui/scrollbar/vertical_idle_bar.png", gui.slider_borders, tile=gui.slider_tile) + hover_thumb Frame(image_hover("gui/scrollbar/vertical_idle_bar.png"), gui.slider_borders, tile=gui.slider_tile) + +style slider: + ysize gui.slider_size + base_bar Frame(Solid(gui.muted_color)) + thumb Frame("slider_horizontal_[prefix_]thumb", gui.slider_borders, tile=gui.slider_tile, xsize=gui.thumb_size) + +style dark_slider: + left_bar Frame("dark_slider_full", gui.slider_borders, tile=gui.slider_tile) + right_bar Frame("dark_slider_empty", gui.slider_borders, tile=gui.slider_tile) + thumb Frame(Transform("gui/dark_frame.png", alpha=0.5), gui.slider_borders, tile=gui.slider_tile, xsize=gui.thumb_size) + hover_thumb Frame("gui/dark_frame.png", gui.slider_borders, tile=gui.slider_tile, xsize=gui.thumb_size) + +style light_slider: + left_bar Frame("light_slider_full", gui.slider_borders, tile=gui.slider_tile) + right_bar Frame("light_slider_empty", gui.slider_borders, tile=gui.slider_tile) + thumb Frame(Transform("gui/light_frame.png", alpha=0.5), gui.slider_borders, tile=gui.slider_tile, xsize=gui.thumb_size) + hover_thumb Frame("gui/light_frame.png", gui.slider_borders, tile=gui.slider_tile, xsize=gui.thumb_size) + + + +style vslider: + xsize gui.slider_size + base_bar Frame("slider_vertical_[prefix_]bar", gui.slider_borders, tile=gui.slider_tile) + thumb "slider_vertical_[prefix_]thumb" + +# Button + +style imagemap: + activate_sound "sounds/click3.ogg" + +style button: + activate_sound "sounds/click3.ogg" + insensitive_background "#463b3be6" + selected_background "#766a6ae6" + padding (5, 5, 5, 5) + +style dark_button: + background "#5d5151e6" + hover_background "#897e75" + insensitive_background "#3e3636" + +style light_button: + background "#ac8d5ae6" + hover_background "#97681f" + insensitive_background "#d1a02eb3" + +style button_text: + hover_color "#fff" + insensitive_color "#50443c" + selected_color "#eedfd5" + selected_hover_color "#fff" + outlines [(1, "#00000080", 1, 0)] + +style dark_button_text: + color "#9b8d84" + hover_color "#d7d1cd" + +style light_button_text: + color "#f9d592" + hover_color "#fefaf4" + +style dark_overlay_button is empty: + hover_foreground "#7d75aa40" + +style light_overlay_button is empty: + hover_foreground "#e3ba7140" + +style dark_overlay_button_text is dark_button_text +style light_overlay_button_text is light_button_text + +# Frame + +style frame: + padding (4, 4, 4, 4) + +style dark_frame is dark_gui_frame + +style light_frame is light_gui_frame + +style gui_frame: + padding (6, 6, 6, 6) + +style dark_gui_frame: + background Transform(Frame("gui/dark_frame.png", 8, 8)) + +style light_gui_frame: + background Transform(Frame("gui/light_frame.png", 8, 8)) + +# Tabs + +style tab_hbox: + spacing gui.pref_spacing + margin (-6, -6) + +style tab_button is gui_button: + padding (12, 12) + +style dark_tab_button: + take dark_gui_frame + selected_background Frame("gui/dark_frame_tab_selected.png", 8, 8) + +style light_tab_button: + take light_gui_frame + selected_background Frame("gui/light_frame_tab_selected.png", 8, 8) + +style tab_button_text is gui_button_text + +# Say label + +style say_label is default: + bold False + text_align 0.5 + align (0.5, 0.5) + #outlines [(1, settings.get('text_outline'), 1, 0)] + +style dark_say_label: + color settings.get('text_color_night') + +style light_say_label: + color settings.get('text_color_day') + +# Say dialogue + +style say_dialogue is default: + outlines [(1, settings.get('text_outline'), 1, 0)] + +style dark_say_dialogue: + color settings.get('text_color_night') + +style light_say_dialogue: + color settings.get('text_color_day') + +style say_thought is say_dialogue +style dark_say_thought is dark_say_dialogue +style light_say_thought is light_say_dialogue + +# Window + +style window is gui_frame: + xalign 0.5 + xfill True + # yalign gui.textbox_yalign + # ysize gui.textbox_height + +style dark_window is dark_gui_frame: + take window + +style light_window is light_gui_frame: + take window + +# Say window + +style say_window: + ysize 143 + padding (250, 40, 250, 0) + top_margin 22 + yalign 1.0 + +style dark_say_window is dark_window: + take say_window + background "interface/frames/gray/frame.webp" + +style light_say_window is light_window: + take say_window + background "interface/frames/gold/frame.webp" + +# Namebox + +style namebox is gui_frame: + xpadding 15 + pos (-15, -50) + ysize 32 + xminimum 164 + text_align 0.5 + +style dark_namebox is dark_gui_frame: + take namebox + # background Transform(Frame("gui/dark_namebox.png", 8, 8)) + +style light_namebox is light_gui_frame: + take namebox + # background Transform(Frame("gui/light_namebox.png", 8, 8)) + +# Text + +style dark_text: + color settings.get('text_color_night') + outlines [(1, settings.get('text_outline'), 1, 0)] + +style light_text: + color settings.get('text_color_day') + outlines [(1, settings.get('text_outline'), 1, 0)] diff --git a/game/scripts/gui/about.rpy b/game/scripts/gui/about.rpy new file mode 100644 index 00000000..b3ccb8ec --- /dev/null +++ b/game/scripts/gui/about.rpy @@ -0,0 +1,59 @@ +## About screen ################################################################ +## +## This screen gives credit and copyright information about the game and Ren'Py. +## +## There's nothing special about this screen, and hence it also serves as an +## example of how to make a custom screen. + +init offset = -1 + +# Not in use +screen about(): + + tag menu + + ## This use statement includes the game_menu screen inside this one. The + ## vbox child is then included inside the viewport inside the game_menu + ## screen. + use game_menu(_("About"), scroll="viewport"): + + style_prefix gui.theme("about") + + vbox: + spacing gui.pref_spacing + + if config.window_title: + label "[config.window_title]" + else: + label "[config.name!t]" + #text _("Version [config.version!t]\n") + + ## gui.about is usually set in options.rpy. + if gui.about: + text "[gui.about!t]\n" + + text _("Made with {a=https://www.renpy.org/}Ren'Py{/a} [renpy.version_only].\n\n[renpy.license!t]") size 12 + + +style about_label is gui_label +style about_label_text is gui_label_text +style dark_about_label_text is dark_label_text +style light_about_label_text is light_label_text + +style about_text is gui_text +style dark_about_text is dark_gui_text +style light_about_text is light_gui_text + +style smallcredits is about_text: + color '#000' + size 14 + kerning 0.7 + +style about_name is about_text: + font gui.bold_font + color "#f9a001" + outlines [(2, "#000", 0, 0)] + +define gui.about = """{b}Witch Trainer: Silver{/b} is a complete rework of the popular game known as Witch Trainer. + +The mod is developed by {a=https://www.silverstudiogames.com/}Silver Studio Games{/a} -- a group of people from around the world who work on this project in their free time.""" diff --git a/game/scripts/gui/help.rpy b/game/scripts/gui/help.rpy new file mode 100644 index 00000000..916eb0bd --- /dev/null +++ b/game/scripts/gui/help.rpy @@ -0,0 +1,168 @@ + +init offset = -1 + +screen help(page='tutorials'): + tag menu + + use game_menu(_("Help"), scroll="viewport"): + + style_prefix "help" + + vbox: + spacing 8 + null # Tab margin + + if page == 'tutorials': + use tutorials_help + elif page == "controls": + use controls_help + elif page == "gamepad": + use gamepad_help + elif page == "about": + use about_help + + hbox: + style_prefix gui.theme("tab") + pos (25 + 15, 100) + yanchor 0.5 + + textbutton _("Tutorials") action [SelectedIf(page == 'tutorials'), Show("help", config.intra_transition, "tutorials")] + if not renpy.mobile: + textbutton _("Controls") action [SelectedIf(page == 'controls'), Show("help", config.intra_transition, "controls")] + if GamepadExists(): + textbutton _("Gamepad") action [SelectedIf(page == 'gamepad'), Show("help", config.intra_transition, "gamepad")] + textbutton _("About") action [SelectedIf(page == 'about'), Show("help", config.intra_transition, "about")] + +screen tutorials_help(): + for entry, tutorial in tutorial_dict.iteritems(): + $ title = tutorial[0] + + textbutton "[title]": + action Function(renpy.call_in_new_context, 'tutorials_help', entry) + # action ShowTransient('tutorial', None, entry) + # sensitive tutorial_is_done(entry) + +label tutorials_help(entry): + show screen help('tutorials') + $ renpy.play("sounds/pop01.ogg") + $ renpy.music.set_volume(0.5, 3.0) + call screen tutorial(entry) + $ renpy.music.set_volume(1.0, 3.0) + return + +screen controls_help(): + + hbox: + label _("Interaction") + text _("Space, Enter or Left Mouse Button") + + hbox: + label _("Navigate Interface") + text _("Arrow keys or mouse") + + hbox: + label _("Cancel/Menu") + text _("Escape or Right Mouse Button") + + hbox: + label _("Skipping") + text _("Ctrl") + + hbox: + label _("Toggle Skipping") + text _("Tab") + + hbox: + label _("Roll Back") + text _("Page Up or Mouse Wheel Up") + + hbox: + label _("Roll Forward") + text _("Page Down or Mouse Wheel Down") + + hbox: + label "Hide Interface" + text _("H or Middle Mouse Button") + + hbox: + label "Screenshot" + text _("Print Screen") + + hbox: + label "Sleep" + text _("s") + + hbox: + label "Map" + text _("m") + + hbox: + label "Stats" + text _("c") + + hbox: + label "Inventory" + text _("i") + + hbox: + label "Fap-Fap-Fap" + text _("f") + + hbox: + label "Summon" + text _("d") + +screen gamepad_help(): + + hbox: + label _("Right Trigger\nA/Bottom Button") + text _("Advances dialogue and activates the interface.") + + hbox: + label _("Left Trigger\nLeft Shoulder") + text _("Rolls back to earlier dialogue.") + + hbox: + label _("Right Shoulder") + text _("Rolls forward to later dialogue.") + + + hbox: + label _("D-Pad, Sticks") + text _("Navigate the interface.") + + hbox: + label _("Start, Guide") + text _("Accesses the game menu.") + + hbox: + label _("Y/Top Button") + text _("Hides the user interface.") + + textbutton _("Calibrate") action GamepadCalibrate() + +screen about_help(): + vbox: + spacing gui.pref_spacing + + if gui.about: + text "[gui.about!t]\n" + + text _("Made with {a=https://www.renpy.org/}Ren'Py{/a} [renpy.version_only].\n\n[renpy.license!t]") size 12 + +style help_button is gui_button: + background None + xmargin 7 + +style help_button_text is gui_button_text + +style help_label is gui_label: + xsize 209 + right_padding 17 + +style help_label_text is gui_label_text: + xalign 1.0 + text_align 1.0 + outlines [(2, "#000", 0, 0)] + +style help_text is gui_text diff --git a/game/scripts/gui/history.rpy b/game/scripts/gui/history.rpy new file mode 100644 index 00000000..ca8e03cc --- /dev/null +++ b/game/scripts/gui/history.rpy @@ -0,0 +1,116 @@ +# +# History screen +# +# This is a screen that displays the dialogue history to the player. While +# there isn't anything special about this screen, it does have to access the +# dialogue history stored in _history_list. +# +# https://www.renpy.org/doc/html/history.html + +init offset = -1 + +screen history(): + + tag menu + + # Avoid predicting this screen, as it can be very large + predict False + + use game_menu(_("History"), scroll=("vpgrid" if gui.history_height else "viewport"), yinitial=1.0): + + style_prefix gui.theme("history") + + has vbox + spacing 12 + + default last_who = None + + # Group consecutive entries by same character (convert to list to avoid multiple enumeration problems) + default groups = [(k, list(g)) for k, g in itertools.groupby(_history_list, key=lambda h: h.who or h.show_args.get("icon", None))] + + for k, g in groups: + vbox: + xfill True + spacing 12 + + add gui.format("interface/achievements/{}/spacer.webp") align (0.5, 1.0) + hbox: + spacing 12 + + $ g = list(g) + if "icon" in g[0].show_args: + $ icon = g[0].show_args["icon"] + add Fixed(gui.format("interface/achievements/{}/iconbox.webp"), Transform("interface/icons/head/{}.webp".format(icon), xzoom=-1, size=(40, 40), align=(0.5, 0.5)), fit_first=True) + elif g[0].who: + label g[0].who: + style "history_name" + substitute False + + if "color" in g[0].who_args: + text_color g[0].who_args["color"] + + vbox: + spacing 6 + + for h in g: + $ what = renpy.filter_text_tags(h.what, allow=gui.history_allow_tags) + text what: + substitute False + + if not _history_list: + label _("The dialogue history is empty.") + + +# Tags that are allowed to be displayed on the history screen +define gui.history_allow_tags = ("number", "heart", "unicode") + +# Height of a history screen entry, or None for variable height at the cost of performance +define gui.history_height = None #117 + +style history_name is gui_label +style history_name_text is gui_label_text +style history_text is gui_text + +style history_text is gui_text + +style history_label is gui_label +style history_label_text is gui_label_text: + color "#402313" + +style history_window is empty: + xfill True + ysize gui.history_height + padding (0,6) + +style history_name: + xanchor 1.0 + +style history_name_text: + text_align 1.0 + +style history_text: + text_align 0.0 + # layout ("subtitle" if gui.history_text_xalign else "tex") + +style history_label: + xfill True + +style history_label_text: + xalign 0.5 + +init 1 python: + # Substitute variables when history is added + def substitute_history_entry(h): + if h.what: + for p in history_match_tags: + h.what = p.sub('{\g<1>=[\g<2>]}', h.what) + + h.what = renpy.substitute(h.what) + + config.history_callbacks.append(substitute_history_entry) + + # Match variables in tags and make them substitutable + history_match_tags = [] + for t in gui.history_allow_tags: + p = re.compile('\{(' + t + ')=([a-z_]+)\}', re.IGNORECASE) + history_match_tags.append(p) diff --git a/game/scripts/gui/main_menu.rpy b/game/scripts/gui/main_menu.rpy new file mode 100644 index 00000000..228f49ec --- /dev/null +++ b/game/scripts/gui/main_menu.rpy @@ -0,0 +1,292 @@ +# +# Main/game menu screens +# + +init offset = -1 + +# Main menu screen +# +# Used to display the main menu when Ren'Py starts. +# +# https://www.renpy.org/doc/html/screen_special.html#main-menu + +screen main_menu(): + + # This ensures that any other menu screen is replaced + tag menu + + style_prefix "main_menu" + + add gui.main_menu_background + + # This empty frame darkens the main menu + frame: + pass + + vbox: + spacing gui.navigation_spacing * 2 + yoffset gui.navigation_padding + align (1.0, 0.0) + xsize 300 + + add "game_title" zoom 0.75 xalign 0.5 + + vbox: + spacing gui.navigation_spacing * 2 + yoffset -gui.navigation_padding + align (1.0, 1.0) + + fixed: + xysize (300, 75) + + imagebutton: + idle Transform("discord_idle", alpha=0.5, zoom=0.5) + hover Transform("discord_idle", alpha=0.75, zoom=0.55) + focus_mask None + pos (0.333, 0.5) + anchor (0.5, 0.5) + action OpenURL("https://discord.gg/UbQeTCJ5RW") + tooltip "Discord" + + imagebutton: + idle Transform("patreon_idle", alpha=0.5, zoom=0.5) + hover Transform("patreon_idle", alpha=0.75, zoom=0.55) + focus_mask None + pos (0.666, 0.5) + anchor (0.5, 0.5) + action OpenURL("https://www.patreon.com/SilverStudioGames") + tooltip "Patreon" + + fixed: + xysize (300, 30) + + text "[config.version]": + style "main_menu_version" + xoffset -320 - gui.navigation_padding + yalign 0.5 + at transform: + alpha 0.6 + + imagebutton: + idle Transform("silverstudiogames_idle", alpha=0.5, zoom=0.5) + hover Transform("silverstudiogames_idle", alpha=0.75, zoom=0.55) + focus_mask None + align (0.5, 0.5) + action OpenURL("https://www.silverstudiogames.org") + + use navigation + +image main_menu_bg: + alpha 0.5 + "#000" + +style main_menu_frame is empty +style main_menu_vbox is vbox + +style main_menu_frame: + xalign 1.0 + xsize 300 # 234 + yfill True + background "main_menu_bg" + +style main_menu_text is gui_text: + color gui.accent_color + xalign 1.0 + +style main_menu_title is main_menu_text: + size 42 + +style main_menu_version is main_menu_text: + color "#fff" + outlines [(1, "#000000", 1, 0)] + + +# Game menu screen +# +# This lays out the basic common structure of a game menu screen. It's called +# with the screen title, and displays the background, title, and navigation. +# +# The scroll parameter can be None, or one of "viewport" or "vpgrid". When +# this screen is intended to be used with one or more children, which are +# transcluded (placed) inside it. + +screen game_menu(title, scroll=None, yinitial=0.0): + + style_prefix "game_menu" + + add gui.game_menu_background + + frame: + style "game_menu_outer_frame" + + if gui.theme() == "light": + background "#00000040" + else: + background "#00000080" + + hbox: + box_reverse True + spacing 25 + + # Reserve space for the navigation section + frame: + style "game_menu_navigation_frame" + + frame: + # Content frame uses GUI theme + style gui.theme("game_menu_content_frame") + style_prefix gui.theme() + + if scroll == "viewport": + viewport: + yinitial yinitial + scrollbars "vertical" + mousewheel True + draggable True + pagekeys True + side_yfill True + frame: + style "empty" + padding (15, 15, 15, 15) + transclude + + elif scroll == "vpgrid": + vpgrid: + cols 1 + yinitial yinitial + scrollbars "vertical" + mousewheel True + draggable True + pagekeys True + side_yfill True + transclude + + else: + frame: + style "empty" + padding (15, 15, 15, 15) + transclude + + use navigation(title) + + label title anchor (0.5, 0.5) align (0.86, 0.15) + + if main_menu: + key "game_menu" action ShowMenu("main_menu") + +style game_menu_outer_frame is empty: + padding (25, 100, 25, 25) + xfill True + yfill True + +style game_menu_navigation_frame is empty: + xsize 250 + yfill True + +style game_menu_content_frame is empty: + xsize 755 + +style dark_game_menu_content_frame is dark_gui_frame: + take game_menu_content_frame + +style light_game_menu_content_frame is light_gui_frame: + take game_menu_content_frame + +style game_menu_viewport is gui_viewport + +style game_menu_scrollbar is gui_vscrollbar + +style game_menu_vscrollbar: + unscrollable gui.unscrollable + +style game_menu_side is gui_side: + spacing 9 + +style game_menu_label is gui_label: + xpos 50 + ysize 100 + +style game_menu_label_text is gui_label_text: + color gui.accent_color + size 42 + yalign 0.5 + +# Navigation screen +# +# This screen is included in the main and game menus, and provides navigation +# to other menus, and to start the game. + +screen navigation(title=None): + + default show_quick_start = False + default show_dev_start = False + + key "keydown_K_LSHIFT" action SetLocalVariable("show_quick_start", True) + key "keyup_K_LSHIFT" action SetLocalVariable("show_quick_start", False) + + if config.developer: + key "keydown_K_LCTRL" action SetLocalVariable("show_dev_start", True) + key "keyup_K_LCTRL" action SetLocalVariable("show_dev_start", False) + + vbox: + style_prefix "navigation" + + if main_menu: + yalign 1.0 + yoffset -105 - gui.navigation_padding * 2 + else: + yalign 0.5 + + transclude + + null height 14 # Half button height + + if main_menu: + + if not title: + if show_quick_start: + textbutton _("Quick Start") action Start("start_quick") + elif show_dev_start: + textbutton _("Developer Start") action Start("start_dev") + else: + textbutton _("Start") action Start() + else: + textbutton _("Return") action Return() + + else: + textbutton _("Return") action Return() + textbutton _("History") action ShowMenu("history") + textbutton _("Save") action ShowMenu("save") + + textbutton _("Load") action ShowMenu("load") + textbutton _("Preferences") action ShowMenu("preferences") + + if main_menu: + textbutton _("Mods") sensitive bool(mods_list) action ShowMenu("mods") + textbutton _("Credits") action Jump("credits") + if not renpy.mobile: + textbutton _("Quit") action Quit(confirm=not main_menu) + else: + textbutton _("Help") action ShowMenu("help") + textbutton _("Main Menu") action MainMenu() + +style navigation_vbox: + xsize 250 + spacing gui.navigation_spacing + xoffset -150 + xpos 1.0 + xanchor 0.5 + +style navigation_button is gui_button: + # size_group "navigation" + background None + xalign 0.5 + +style navigation_button_text is gui_button_text: + background None + size 19 + xalign 0.5 + idle_color Color('#888') + hover_color '#fff' + selected_color '#fff' + insensitive_color Color('#888', alpha=0.5) diff --git a/game/scripts/gui/misc.rpy b/game/scripts/gui/misc.rpy new file mode 100644 index 00000000..6d8c957a --- /dev/null +++ b/game/scripts/gui/misc.rpy @@ -0,0 +1,122 @@ +# +# Additional screens +# + +init offset = -1 + +# Confirm screen +# +# The confirm screen is called when Ren'Py wants to ask the player a yes or no +# question. +# +# https://www.renpy.org/doc/html/screen_special.html#confirm + +screen confirm(message, yes_action=Return(True), no_action=Return(False)): + modal True + + zorder 200 + + style_prefix gui.theme() + + add "confirm_fade" + + frame: + padding (34, 34, 34, 34) + xalign 0.5 + yalign 0.5 + + vbox: + spacing 25 + + text _(message): + xalign 0.5 + text_align 0.5 + + hbox: + xalign 0.5 + spacing 84 + + textbutton _("Yes") action yes_action + textbutton _("No") action no_action + + ## Right-click and escape answer "no". + key "game_menu" action no_action + +image confirm_fade: + Solid("#000") + alpha 0.0 + + on appear: + alpha 0.5 + on show: + linear 0.3 alpha 0.5 + on hide: + linear 0.3 alpha 0.0 + +style confirm_frame is gui_frame: + padding (34, 34, 34, 34) + xalign 0.5 + yalign 0.5 + +style dark_confirm_frame is dark_gui_frame: + take confirm_frame + +style light_confirm_frame is light_gui_frame: + take confirm_frame + +# Skip indicator screen +# +# The skip_indicator screen is displayed to indicate that skipping is in +# progress. +# +# https://www.renpy.org/doc/html/screen_special.html#skip-indicator + +screen skip_indicator(): + zorder 100 + + text "{unicode}{size=66}▶▶{/size}{/unicode}\nSkipping": + at blink + style "skip_text" + +style skip_text is default: + size 22 + text_align 0.5 + pos (50, 50) + color "#fff" + outlines [(1, "#00000080", 1, 0)] + +# Notify screen +# +# The notify screen is used to show the player a message. (For example, when +# the game is quicksaved or a screenshot has been taken.) +# +# https://www.renpy.org/doc/html/screen_special.html#notify-screen + +screen notify(message): + layer "interface" + sensitive False + + frame at notify_appear: + align (0.0, 1.0) + text message: # or "[message!tq]" + color "#fff" + outlines [(1, "#00000080", 1, 0)] + + timer 3.25 action Hide("notify") + +transform notify_appear: + on show: + alpha 0 + linear .25 alpha 1.0 + on hide: + linear .5 alpha 0.0 + + +style notify_text is gui_text + +style notify_frame is empty: + background Frame("gui/notify.png") + padding (4, 4, 4, 4) + +style notify_text: + size 14 diff --git a/game/scripts/gui/mods.rpy b/game/scripts/gui/mods.rpy new file mode 100644 index 00000000..f0379a10 --- /dev/null +++ b/game/scripts/gui/mods.rpy @@ -0,0 +1,110 @@ + +init offset = -1 + +screen mods(): + tag menu + + use game_menu("Mods"): + + default selection = next(iter(mods_list.iterkeys())) + default checkbox_enabled = gui.theme("check_true") + default checkbox_disabled = gui.theme("check_false") + + fixed: + + ## The grid of file slots. + hbox: + spacing 5 + vpgrid: + cols 1 + scrollbars "vertical" + mousewheel True + draggable True + pagekeys True + side_yfill True + spacing gui.slot_spacing + + style_prefix gui.theme("slot") + + for mod in mods_list.itervalues(): + $ name = mod["Name"] + $ desc = mod["Description"] + $ author = mod["Author"] + $ version = mod["Version"] + $ compat = float(mod["GameVer"]) + #$ order = mod["LoadOrder"] + $ logo = mod["Logo"] + $ enabled = bool(name in persistent.mods_enabled) + $ selected = (name == selection) + + if selected: + $ action = Function(toggle_mod, name) + else: + $ action = SetScreenVariable("selection", name) + + button: + action action + selected selected + sensitive main_menu + + has fixed + + add logo pos (0, 0) size (70, 50) + + vbox: + xpos config.thumbnail_width + xsize gui.slot_width - config.thumbnail_width - gui.slot_height + yalign 0.5 + + text "[name]": + style "mods_text" + size 16 + if not compat >= compatible_version: + color "#ff8000" + + text "[version]": + style "mods_text" + + if enabled: + add checkbox_enabled align (0.95, 0.5) + else: + add checkbox_disabled align (0.95, 0.5) + + + frame: + style gui.theme("frame") + xfill True + ymaximum 400 + + $ name = mods_list[selection]["Name"] + $ desc = mods_list[selection]["Description"] + $ author = mods_list[selection]["Author"] + $ version = mods_list[selection]["Version"] + $ compat = float(mods_list[selection]["GameVer"]) + #$ order = mods_list[selection]["LoadOrder"] + $ logo = mods_list[selection]["Logo"] + + vbox: + spacing 3 + xpos 3 + + frame: + style gui.theme("frame") + xoffset -3 + ysize 252 + add logo xalign 0.5 size (320, 240) + text "[name]\n[version]" offset (6, 6) + + if not compat >= compatible_version: + text "{color=#ff8000}[compat]{/color}" align (1.0, 1.0) offset (-6, -3) + else: + text "{color=#228B22}[compat]{/color}" align (1.0, 1.0) offset (-6, -3) + + text "Author:\n{size=-4}[author]{/size}" size 14 + text "Description:\n{size=-4}[desc]{/size}" size 14 + +style mods_text is slot_button_text: + selected_color "#000" + +style mods_text_desc: + xalign 0.5 diff --git a/game/scripts/gui/preferences.rpy b/game/scripts/gui/preferences.rpy new file mode 100644 index 00000000..7570a8d9 --- /dev/null +++ b/game/scripts/gui/preferences.rpy @@ -0,0 +1,481 @@ +# +# Preferences screen +# +# The preferences screen allows the player to configure the game to better suit +# themselves. +# +# https://www.renpy.org/doc/html/screen_special.html#preferences + +init offset = -1 + +screen preferences(page="general"): + tag menu + + use game_menu(_("Preferences"), scroll="viewport"): + style_prefix gui.theme("pref") + + vbox: + spacing gui.pref_spacing + null # Tab margin + + if page == "general": + use preferences_general + elif page == "visuals": + use preferences_visuals + elif page == "sound": + use preferences_sound + elif page == "accessibility": + use preferences_accessibility + + hbox: + style_prefix gui.theme("tab") + pos (25 + 15, 100) + yanchor 0.5 + + textbutton "General": + selected (page == "general") + action Show("preferences", config.intra_transition, "general") + + textbutton "Visuals": + selected (page == "visuals") + action Show("preferences", config.intra_transition, "visuals") + + textbutton "Sound": + selected (page == "sound") + action Show("preferences", config.intra_transition, "sound") + + textbutton "Accessibility": + selected (page == "accessibility") + action Show("preferences", config.intra_transition, "accessibility") + +screen preferences_general(): + hbox: + box_wrap True + + vbox: + style_prefix gui.theme("check") + + label _("Interface") + textbutton _("Animations") action settings.Toggle("animations") + textbutton _("Tutorials") action settings.Toggle("tutorials") + + if not renpy.mobile: + textbutton _("Tooltips") action settings.Toggle("tooltip") + textbutton _("System Cursor") action Preference("system cursor", "toggle") + + default trans = config.intra_transition + + vbox: + style_prefix gui.theme("radio") + + label "Theme" + textbutton "Auto" action [ + settings.Set("theme", "auto"), + Function(renpy.transition, trans), + Function(renpy.restart_interaction) + ] + textbutton "Day" action [ + settings.Set("theme", "light"), + Function(renpy.transition, trans), + Function(renpy.restart_interaction) + ] + textbutton "Night" action [ + settings.Set("theme", "dark"), + Function(renpy.transition, trans), + Function(renpy.restart_interaction) + ] + + # Broken. + # + # vbox: + # style_prefix gui.theme("pref") + + # $ text_color_day = settings.get("text_color_day") + # $ text_color_night = settings.get("text_color_night") + + # label _("Text Colour") + # default color_square = "{font=[gui.glyph_font]}❖{/font}" + + # hbox: + # textbutton "Day" size_group "text_color" action [ + # Function(renpy.invoke_in_new_context, pick_color_setting, "text_color_day", "Day text colour"), + # Function(renpy.transition, trans), + # Function(gui.rebuild_styles) + # ] + # textbutton "{color=[text_color_day]}[color_square!i]{/color}" yalign 0.5 style "empty" background "#d1a261" + # textbutton "Reset" text_size 14 yalign 0.5 padding (0, 0) action [ + # settings.Reset("text_color_day"), + # Function(renpy.transition, trans), + # Function(gui.rebuild_styles) + # ] + + # hbox: + # textbutton "Night" size_group "text_color" action [ + # Function(renpy.invoke_in_new_context, pick_color_setting, "text_color_night", "Night text colour"), + # Function(renpy.transition, trans), + # Function(gui.rebuild_styles) + # ] + # textbutton "{color=[text_color_night]}[color_square!i]{/color}" yalign 0.5 style "empty" background "#5b4f4f" + # textbutton "Reset" text_size 14 yalign 0.5 padding (0, 0) action [ + # settings.Reset("text_color_night"), + # Function(renpy.transition, trans), + # Function(gui.rebuild_styles) + # ] + + # hbox: + # textbutton "Outline" size_group "text_color" action Function(print, "text_shadow") + + vbox: + style_prefix gui.theme("check") + label _("Skipping") + textbutton _("Skip Unseen Text") action Preference("skip", "toggle") + textbutton _("Until dialog menu") action InvertSelected(Preference("after choices", "toggle")) + + hbox: + box_wrap True + + vbox: + style_prefix gui.theme("slider") + spacing gui.pref_spacing / 2 + + label _("Text Speed") + bar value Preference("text speed") + + label _("Auto-Forward Time") + bar value Preference("auto-forward time") + + hbox: + box_wrap True + + vbox: + style_prefix gui.theme("check") + +screen preferences_visuals(): + hbox: + box_wrap True + + if renpy.variant("pc") or renpy.variant("web"): + vbox: + style_prefix gui.theme("radio") + label _("Display") + textbutton _("Fullscreen") action Preference("display", "fullscreen") + textbutton _("Windowed") action Preference("display", "any window") + textbutton _("V-Sync") action [ InvertSelected(ToggleField(_preferences, "gl_tearing")), _DisplayReset() ] style gui.theme("check_button") + + # Probably redundant now that we have aspect ratio preservation. + # if not preferences.fullscreen: + # textbutton _("Reset window"): + # action Preference("display", "window") + # sensitive (renpy.get_physical_size() != (config.screen_width, config.screen_height)) + + + vbox: + style_prefix gui.theme("radio") + + default fps_msg = "Framerate preference may take effect after restarting the game" + + label "Framerate" + + textbutton ("{} fps".format(int(renpy.get_refresh_rate()))) action [Preference("gl framerate", None), Notify(fps_msg)] + if renpy.get_refresh_rate() > 60: + textbutton "60 fps" action [Preference("gl framerate", 60), Notify(fps_msg)] + textbutton "30 fps" action [Preference("gl framerate", 30), Notify(fps_msg)] + + if not renpy.mobile: + vbox: + style_prefix gui.theme("radio") + + label "Renderer" + + default renderer_used = renpy.get_renderer_info()["renderer"] + + textbutton _("OpenGL"): + selected renderer_used == "gl2" + action Confirm("Changing renderer requires a full restart, do it now?\nUnsaved progress will be lost.", Function(set_renderer, "gl2")) + textbutton _("DirectX"): + sensitive renpy.windows + selected renderer_used == "angle2" + action Confirm("Changing renderer requires a full restart, do it now?\nUnsaved progress will be lost.", Function(set_renderer, "angle2")) + + vbox: + style_prefix gui.theme("check") + + label "Advanced" + + textbutton _("Transitions") action Preference("transitions", "toggle") + textbutton _("Videos") action InvertSelected(Preference("video sprites", "toggle")) + textbutton _("Power-saving") action Preference("gl powersave", "toggle") + #if not renpy.mobile: + #textbutton _("Preserve Aspect Ratio") action [settings.Toggle("preserve_aspect_ratio"), _DisplayReset()] + + text get_gpu_info() yalign 1.0 size 10 + +screen preferences_sound(): + hbox: + box_wrap True + + vbox: + style_prefix gui.theme("slider") + spacing gui.pref_spacing / 2 + + if config.has_music: + label _("Music Volume") + hbox: + bar value Preference("music volume") + + if config.has_sound: + label _("Sound Volume") + hbox: + bar value Preference("sound volume") + if config.sample_sound: + textbutton _("Test") action Play("sound", config.sample_sound) + + label _("Weather Volume") + hbox: + bar value Preference("weather volume") + if config.sample_sound: + textbutton _("Test") action Play("weather", config.sample_sound) + + if config.has_voice: + label _("Voice Volume") + hbox: + bar value Preference("voice volume") + if config.sample_voice: + textbutton _("Test") action Play("voice", config.sample_voice) + + if config.has_music or config.has_sound or config.has_voice: + null height gui.pref_spacing + + textbutton _("Mute All"): + action Preference("all mute", "toggle") + style gui.theme("check_button") + +screen preferences_accessibility(): + + text "Disclaimer" size 18 xalign 0.5 + text "These menu options are intended to improve accessibility and may not work well in all cases where text might overflow. When changing font, text size or spacing try to keep it close to the default size." size 14 + + hbox: + box_wrap True + + vbox: + style_prefix gui.theme("radio") + + label _("Text Font") + + textbutton _("Default"): + action Preference("font transform", None) + + textbutton _("DejaVu Sans"): + action Preference("font transform", "dejavusans") + + textbutton _("Opendyslexic"): + action Preference("font transform", "opendyslexic") + + vbox: + + label _("Text Scaling") + + hbox: + style_prefix gui.theme("radio") + + textbutton "V. small" action Preference("font size", 0.7) + textbutton "Small" action Preference("font size", 0.9) + textbutton "Normal" action Preference("font size", 1.0) + textbutton "Large" action Preference("font size", 1.2) + textbutton "V. Large" action Preference("font size", 1.4) + + label _("Vertical Text Spacing") + + hbox: + style_prefix gui.theme("radio") + + textbutton "V. small" action Preference("font line spacing", 0.7) + textbutton "Small" action Preference("font line spacing", 0.9) + textbutton "Normal" action Preference("font line spacing", 1.0) + textbutton "Large" action Preference("font line spacing", 1.2) + textbutton "V. Large" action Preference("font line spacing", 1.4) + + if not renpy.mobile: + vbox: + style_prefix gui.theme("check") + + label _("Text-to-speech") + + textbutton _("Text-to-speech"): + action Preference("self voicing", "toggle") + + vbox: + style_prefix gui.theme("slider") + + label _("Text-to-speech Accentuation") + + bar value Preference("self voicing volume drop") + + vbox: + label _("Advanced") + + textbutton "Delete persistent data ({color=#f00}!{/color})": + style gui.theme("pref_button") + action Confirm(gui.CONFIRM_DELETE_PERSISTENT, Function(delete_persistent)) + + textbutton "Delete save files ({color=#f00}!{/color})": + style gui.theme("pref_button") + action Confirm(gui.CONFIRM_DELETE_SAVES, Function(delete_saves)) + +define gui.CONFIRM_DELETE_PERSISTENT = """{color=#7a0000}Warning!{/color} +{size=-4}You are about to reset all persistent data, including +achievements, seen text, and preferences.{/size}\n +Are you sure?""" + +define gui.CONFIRM_DELETE_SAVES = """{color=#7a0000}Warning!{/color} +{size=-4}You are about to delete all save files, including +auto saves, quick saves, and manual saves.{/size}\n +Are you sure?""" + +init python: + def delete_persistent(): + renpy.loadsave.location.unlink_persistent() + renpy.persistent.should_save_persistent = False + renpy.quit(relaunch=True) + + def delete_saves(): + for fn in renpy.list_saved_games(fast=True): + renpy.unlink_save(fn) + + def pick_color_setting(setting_name, title): + renpy.show_screen("preferences") + color = settings.get(setting_name) + r, g, b, _ = color_picker(get_rgb_list(color), False, title) + color = get_hex_string(r/255.0, g/255.0, b/255.0) + settings.set(setting_name, color) + + def set_renderer(s): + preferences.renderer = s if s in ("gl2", "angle2") else "auto" + renpy.quit(relaunch=True) + +style mute_all_button is check_button +style mute_all_button_text is check_button_text + +# Preference + +style pref_label is gui_label: + top_margin gui.pref_spacing + bottom_margin 2 + +style pref_label_text is gui_label_text: + yalign 1.0 + +style dark_pref_label_text is dark_label_text +style light_pref_label_text is light_label_text + +style pref_button is gui_button: + padding (18, 4, 4, 4) + +style pref_button_text is gui_button_text + +style pref_vbox is vbox: + xminimum (245 - 30 - 60) / 2 + +style pref_hbox: + spacing 30 + box_wrap_spacing 2 * gui.pref_spacing + +# Radio button + +style radio_label is pref_label +style radio_label_text is pref_label_text +style dark_radio_label_text is dark_pref_label_text +style light_radio_label_text is light_pref_label_text + +style radio_vbox is pref_vbox: + spacing gui.pref_button_spacing + +style radio_button is gui_button: + background None + padding (18, 4, 4, 4) + +style dark_radio_button is dark_gui_button: + take radio_button + foreground "dark_radio_false" + selected_foreground "dark_radio_true" + insensitive_foreground "dark_radio_none" + +style light_radio_button is light_gui_button: + take radio_button + foreground "light_radio_false" + selected_foreground "light_radio_true" + insensitive_foreground "light_radio_none" + +style radio_button_text is gui_button_text: + first_indent 6 + +# Check button + +style check_label is pref_label +style check_label_text is pref_label_text +style dark_check_label_text is dark_pref_label_text +style light_check_label_text is light_pref_label_text + +style check_vbox is pref_vbox: + spacing gui.pref_button_spacing + +style check_button is gui_button: + background None + padding (18, 4, 4, 4) + +style dark_check_button is dark_gui_button: + take check_button + foreground "dark_check_false" + selected_foreground "dark_check_true" + insensitive_foreground "dark_check_none" + +style light_check_button is light_gui_button: + take check_button + foreground "light_check_false" + selected_foreground "light_check_true" + insensitive_foreground "light_check_none" + +style check_button_text is gui_button_text: + first_indent 6 + +# Slider + +style slider_label is pref_label +style slider_label_text is pref_label_text +style dark_slider_label_text is dark_pref_label_text +style light_slider_label_text is light_pref_label_text + +style slider_slider is gui_slider: + xsize 320 + +style dark_slider_slider is dark_slider +style light_slider_slider is light_slider + +style slider_button is gui_button: + background None + yalign 0.5 + left_margin 9 + +style slider_button_text is gui_button_text + +style slider_vbox is pref_vbox: + xsize 320 + +screen _self_voicing(): + zorder 1500 + + if _preferences.self_voicing == "clipboard": + $ message = _("Clipboard voicing enabled. Press 'shift+C' to disable.") + elif _preferences.self_voicing == "debug": + $ message = _("Text-to-speech would say \"[renpy.display.tts.last]\". Press 'alt+shift+V' to disable.") + else: + $ message = _("Text-to-speech enabled. Press 'shift+v' to disable.") + + text message: + alt "" + + xpos 10 + ypos 35 + color "#fff" + outlines [ (1, "#0008", 0, 0)] diff --git a/game/scripts/gui/save_files.rpy b/game/scripts/gui/save_files.rpy new file mode 100644 index 00000000..c22b06ca --- /dev/null +++ b/game/scripts/gui/save_files.rpy @@ -0,0 +1,190 @@ +# +# Load/save screens +# +# These screens are responsible for letting the player save the game and load +# it again. Since they share nearly everything in common, both are implemented +# in terms of a third screen, file_slots. +# +# https://www.renpy.org/doc/html/screen_special.html#save +# https://www.renpy.org/doc/html/screen_special.html#load + +init offset = -1 + +screen save(): + + tag menu + + use file_slots(_("Save")) + + +screen load(): + + tag menu + + use file_slots(_("Load")) + + +screen file_slots(title): + + default page_name = FilePageNameInputValue(pattern=_("Page {}"), auto=_("Auto Saves"), quick=_("Quick Saves")) + default page_modifier = 0 + + use game_menu(title): + + fixed: + + # This ensures the input will get the enter event before any of the buttons do + order_reverse True + + # The page name, which can be edited by clicking on a button + button: + style gui.theme("page_label") + + key_events True + xalign 0.5 + action page_name.Toggle() + + hbox: + spacing 9 + input: + style gui.theme("page_label_text") + value page_name + + if page_name.editable: + text "{size=-4}{font=[gui.glyph_font]}✎{/font}{/size}" + + ## The grid of file slots. + grid gui.file_slot_cols gui.file_slot_rows: + style_prefix gui.theme("slot") + + xalign 0.5 + yalign 0.5 + + spacing gui.slot_spacing + + transpose True + + for i in xrange(gui.file_slot_cols * gui.file_slot_rows): + + $ slot = i + 1 + + button: + action FileAction(slot) + + has fixed + + if FileLoadable(slot): + add FileScreenshot(slot) + + vbox: + style_prefix "slot_button" + xpos config.thumbnail_width + xsize gui.slot_width - config.thumbnail_width - gui.slot_height + yalign 0.5 + + if FileCompatible(slot): + default slot_time_format = "{#file_time}%#d %B, %Y, %#H:%M" if renpy.windows else "{#file_time}%-d %B, %Y, %-H:%M" + $ day = FileJson(slot, "day", missing="Unknown") + $ playtime = FileJson(slot, "playtime", missing=0) + $ minutes, seconds = divmod(int(playtime), 60) + $ hours, minutes = divmod(minutes, 60) + + text FileTime(slot, format=_(slot_time_format)) + text "Day: {}".format(day) + text "Playtime: {}H {}M {}S".format(hours, minutes, seconds) + else: + text "INCOMPATIBLE" color "#f00" + + textbutton "{font=[gui.glyph_font]}✘{/font}": + style "slot_delete_button" + action FileDelete(slot) + + key "save_delete" action FileDelete(slot) + else: + text "Empty Slot {}.".format(FileSlotName(slot, gui.file_slot_cols * gui.file_slot_rows)) style "slot_button_text" + + ## Buttons to access other pages. + hbox: + style_prefix gui.theme("page") + + align (0.5, 1.0) + yoffset 8 + + spacing gui.page_spacing + + textbutton _("<") action FilePagePrevious() + + if config.has_autosave: + textbutton _("{#auto_page}A") action FilePage("auto") keysym "K_a" + + if config.has_quicksave: + textbutton _("{#quick_page}Q") action FilePage("quick") keysym + + + $ page_modifier = max(0, int(FilePageName(str(page_modifier+9), str(page_modifier+9)))-9) + + for page in xrange(1+page_modifier, 10+page_modifier): + textbutton "[page]": + xminimum 40 + action FilePage(page) + if page < 10: + keysym "K_{}".format(page) + + textbutton _(">") action FilePageNext() + + key ["mousedown_4", "K_RIGHT", "repeat_K_RIGHT"] action FilePageNext() + key ["mousedown_5", "K_LEFT", "repeat_K_LEFT"] action FilePagePrevious() + + +style page_label is gui_label + +style page_label_text is gui_label_text: + text_align 0.5 + layout "subtitle" + hover_color gui.hover_color + +style dark_page_label_text is dark_label_text: + take page_label_text + +style light_page_label_text is light_label_text: + take page_label_text + +style page_button is gui_button: + background None + padding (9, 4, 9, 4) + +style page_button_text is gui_button_text: + size 20 + xalign 0.5 + +style slot_button is gui_button: + # background gui.muted_color + xsize gui.slot_width + ysize gui.slot_height+4 + padding (2, 2, 2, 2) + +style dark_slot_button: + take dark_gui_frame + insensitive_background Fixed(Transform(Frame("gui/dark_frame.png", 8, 8)), "#00000040") + +style light_slot_button: + take light_gui_frame + insensitive_background Fixed(Transform(Frame("gui/light_frame.png", 8, 8)), "#00000040") + +style slot_button_text is gui_button_text: + size 14 + xalign 0.5 + text_align 0.5 + idle_color gui.idle_small_color + selected_idle_color gui.selected_color + selected_hover_color gui.hover_color + +style slot_delete_button is gui_button: + background None + idle_background None + xsize gui.slot_height + ysize gui.slot_height + xalign 1.0 + +style slot_delete_button_text is slot_button_text: + size 24 diff --git a/game/scripts/gui/say.rpy b/game/scripts/gui/say.rpy new file mode 100644 index 00000000..f8472706 --- /dev/null +++ b/game/scripts/gui/say.rpy @@ -0,0 +1,235 @@ +# +# Narration screens +# + +init offset = -1 + +screen nvl(dialogue, items=None): + null + +# Say screen +# +# The say screen is used to display dialogue to the player. It takes two +# parameters, who and what, which are the name of the speaking character and +# the text to be displayed, respectively. (The who parameter can be None if no +# name is given.) +# +# This screen must create a text displayable with id "what", as Ren'Py uses +# this to manage text display. It can also create displayables with id "who" +# and id "window" to apply style properties. +# +# https://www.renpy.org/doc/html/screen_special.html#say + +screen say(who, what, side_image=None, icon=None): + zorder 31 + + if _windows_hidden: + use invisible_button(action=SetVariable("_windows_hidden", False)) + else: + if not renpy.get_screen("choice"): + use invisible_button(action=Function(ui.saybehavior), keysym="dismiss") + + #if side_image: + add SideImage() + + window id "window": + style gui.theme("say_window") + + if _windows_hidden: + ypos 1000 + + if _game_menu_screen: + use quick_menu + + if who: + window: + id "namebox" + style gui.theme("namebox") + text who: + style gui.theme("say_label") + + text what: + id "what" + style gui.theme("say_dialogue") + + if renpy.android: + button: + style "empty" + + xysize (235, 100) + align (0.0, 1.0) + action Rollback() + + insensitive_child Transform(gui.format("interface/frames/{}/arrow.webp"), xalign=1.0, alpha=0.5) + add Transform(gui.format("interface/frames/{}/arrow.webp"), xalign=1.0) + + button: + style "empty" + + xysize (235, 100) + align (1.0, 1.0) + action Skip(fast=True, confirm=True) + + add Transform(gui.format("interface/frames/{}/arrow.webp"), xzoom=-1.0) + +# Quick menu screen +# +# The quick menu is displayed in-game to provide easy access to the out-of-game menus. + +screen quick_menu(): + hbox: + style_prefix "quick" + xalign 1.0 + yoffset -30 + + textbutton _("Q.Save") action QuickSave() + textbutton _("Q.Load") action QuickLoad() + textbutton _("Skip") action Skip() + textbutton _("Auto") action Preference("auto-forward", "toggle") + textbutton _("Preferences") action ShowMenu("preferences") + +style quick_button is default: + activate_sound "sounds/click3.ogg" + background None + xpadding 8 + ypadding 8 + +style quick_button_text is default: + size 10 + idle_color "#8888" + hover_color "#ccc" + selected_idle_color "#cc08" + selected_hover_color "#cc0" + insensitive_color "#4448" + +# Choice screen +# +# This screen is used to display the in-game choices presented by the menu +# statement. The one parameter, items, is a list of objects, each with caption +# and action fields. +# +# https://www.renpy.org/doc/html/screen_special.html#choice + +screen choice(items): + tag menu + modal True + zorder 30 + + style_prefix gui.theme("menu") + + default blacklist_screens = {"say", "letter", "bld1"} # Combine sets + default blacklist_tags = set(get_character_tag(x) for x in CHARACTERS) + + # Dont add the fade if character or saybox is present (They have their own triggers for fading) + if not any(renpy.get_screen(x) for x in blacklist_screens) and not any(renpy.showing(x, layer="screens") for x in blacklist_tags): + add "interface/bld.webp" at fade_hide(0.15) + + window at fade_show_hide(0.15): + style "empty" + align (menu_x, menu_y) + + vbox: + spacing 0 + $ choice_width = int(config.screen_width/2) + + $ max_progress = max([len(e.kwargs.get("progress", [])) for e in items]) + + for i, entry in enumerate(items, 1): + $ style_part = entry.kwargs.get("style", None) + button: + xsize choice_width + ypadding 5 + action entry.action + sensitive bool(entry.action) + if i < 10 and entry.action: + keysym (str(i), "K_KP"+str(i)) + + fixed: + style "empty" + + if style_part: + style_prefix gui.theme("{}_menu".format(style_part)) + + fit_first "height" + + text entry.caption: + xsize choice_width-120 # Leave enough margin for number and icon + align (0.5, 0.5) + + if i < 10 and entry.action: + text "{size=-2}[i].{/size}" xpos 5 yalign 0.5 + + $ icon = entry.kwargs.get("icon", None) + if icon: + add icon xcenter 40 yalign 0.5 + + $ progress = entry.kwargs.get("progress", None) + if progress: + hbox: + spacing 2 + xpos choice_width - 5 + align (1.0, 0.5) + for i in xrange(0, max_progress): + if i < len(progress): + add progress[i] + else: + null width 21 # Assume icon width + +style menu_text is default: + hover_color "#fff" + text_align 0.5 + outlines [(1, "#00000080", 1, 0)] + +style dark_menu_text: + color "#9b8d84" + insensitive_color "#6c625c" + +style light_menu_text: + color "#f9d592" + insensitive_color "#ae9566" + +style dark_disabled_menu_text: + color "#6c625c" + +style light_disabled_menu_text: + color "#ae9566" + +style menu_button is default: + activate_sound "sounds/click3.ogg" + +style dark_menu_button: + background "#5d5151e6" + hover_background "#897e75" + insensitive_background "#9e8449" + +style light_menu_button: + background "#ac8d5ae6" + hover_background "#97681f" + insensitive_background "#d1a02eb3" + +# Input screen +# +# This screen is used to display renpy.input. The prompt parameter is used to +# pass a text prompt in. +# +# This screen must create an input displayable with id "input" to accept the +# various input parameters. +# +# https://www.renpy.org/doc/html/screen_special.html#input + +screen input(prompt): + zorder 30 + + style_prefix "say" + window: + id "window" + style gui.theme("say_window") + + if prompt: + window: + style gui.theme("namebox") + text prompt: + style gui.theme("say_label") + + input id "input": + style gui.theme("say_dialogue") diff --git a/game/scripts/interface/achievements.rpy b/game/scripts/interface/achievements.rpy new file mode 100644 index 00000000..e05ac788 --- /dev/null +++ b/game/scripts/interface/achievements.rpy @@ -0,0 +1,450 @@ +define achievements_dict = { + "unlockher": ["Characters", "Granger Danger", "Awarded for unlocking Hermione Granger.", False, "interface/icons/head/hermione.webp", False], + "unlockcho": ["Characters", "Chang Dynasty", "Awarded for unlocking Cho Chang.", False, "interface/icons/head/cho.webp", False], + "unlocklun": ["Characters", "Looney Tunes", "Awarded for unlocking Luna Lovegood.", False, "interface/icons/head/luna.webp", False], + "unlockast": ["Characters", "Green Peas", "Awarded for unlocking Astoria Greengrass.", False, "interface/icons/head/astoria.webp", False], + "unlockton": ["Characters", "Nymphadoreador", "Awarded for unlocking Nymphadora Tonks.", False, "interface/icons/head/tonks.webp", False], + "overwhored": ["Characters", "Overwhored", "Awarded for fully corrupting Hermione.", False, "interface/icons/head/hermione.webp", False], + "unlocksus": ["Characters", "Boner", "Awarded for unlocking Susan Bones.", False, "interface/icons/head/susan.webp", False], + "unlocksna": ["Characters", "Strictly colleagues", "Awarded for unlocking Severus Snape.", False, "interface/icons/head/snape.webp", False], + "mirror": ["Mirror", "Mirror, mirror on the wall..", "Awarded for unlocking the Room of Requirement.", False, "images/rooms/room_of_requirement/mirror_hover.webp", False], + "gold": ["General", "Gold Digger", "Awarded for having 10,000 gold in total.", False, "interface/icons/gold.webp", False], + "drunkard": ["General", "Drunken Master", "Awarded for collecting 25 bottles of wine.", False, "interface/icons/wine.webp", True], + "workaholic": ["General", "Workaholic", "Awarded for completing five full reports.", False, "interface/icons/generic_scroll.webp", False], + "fireplace": ["General", "Feel the Heat", "Awarded for lighting the fireplace 5 times or more.", False, "images/rooms/objects/fireplace/fireplace_idle.webp", True], + "peta": ["General", "I think I forgot something...", "Awarded for not feeding the bird for 50 days.... \nYou monster.\n{size=-4}Disclaimer: No real nor fictional animals were harmed in the process.{/size}", False, "images/rooms/objects/phoenix/phoenix_01.webp", True], + "petpal": ["General", "Regular stroking", "Awarded for petting the bird 25 times.", False, "images/rooms/objects/phoenix/phoenix_01.webp", False], + "postman": ["Cardgame", "Poster Boy", "Awarded for buying all posters from the token shop.", False, "interface/icons/agrabah_poster.webp", False], + "hats": ["Cardgame", "Mad Hatter", "Awarded for buying all hat decorations from the token shop.", False, "interface/icons/icon_gambler_hat.webp", False], + "daddy": ["Characters", "Who's your daddy?", "Awarded for letting Hermione call you a {size=-5}(sugar){/size} daddy.", False, "interface/icons/head/hermione.webp", True], + "pantiesfap": ["Characters", "I sneezed on them...", "Awarded for rubbing one out on Hermione's panties.", False, "characters/genie/chibis/jerk_off/02.webp", False], + "pantiesfapcho": ["Characters", "Exercise is important", "Awarded for rubbing one out on Cho's panties.", False, "characters/genie/chibis/jerk_off/02.webp", False], + "bros": ["Characters", "Bros before hoes", "Awarded for becoming best pals with Snape.", False, "interface/icons/head/snape.webp", False], + "knock": ["Characters", "*Knock* *knock*", "Awarded for telling Hermione to go away during her introductory events.", False, "images/rooms/objects/doors/door_idle.webp", True], + "decorator": ["Cardgame", "Decorator", "Awarded for decorating the office for the first time.", False, "interface/icons/stag_trophy.webp", False], + "flashback": ["Cardgame", "Flashback", "Awarded for retelling what actually happened...", False, "interface/icons/cards.webp", True], + "start": ["General", "Welcome to Hogwarts!", "Awarded for finishing the intro.", False, "interface/icon.webp", False], + "export": ["General", "Sharing is caring", "Awarded for exporting an outfit through the wardrobe menu.", False, "interface/wardrobe/icons/load.webp", False], + "Credits": ["General", "New game, who this?", "Awarded for checking out the Credits Menu.", False, "interface/icons/silver_scroll.webp", False], + "Cardwin": ["Cardgame", "Time to duel", "Awarded for winning your first Card game duel.", False, "interface/icons/cards.webp", False], + "puzzle": ["General", "Down the hatch!", "Awarded for wasting a bottle of unbelievably rare phoenix tears by drinking it.", False, "interface/icons/item_potion.webp", True], + "ending": ["General", "Bittersweet Farewell", "Awarded for reaching the original ending.", False, "interface/icons/silver.webp", True], + #1.37 HG achievements + "busted": ["Characters", "BUSTED!", "Awarded for getting busted by Hermione when busting a nut.", False, "interface/icons/head/hermione.webp", False], + "herstrip": ["Characters", "Dance lessons", "Awarded for having Hermione dance naked in front of you... and Snape.", False, "interface/icons/head/hermione.webp", False], + "herkiss": ["Characters", "First Kiss", "Awarded for having Hermione make out with you-- r... cock...", False, "interface/icons/head/hermione.webp", False], + "hertits": ["Characters", "Boobs Lover", "Awarded for sticking it between Hermione's fun bags.", False, "interface/icons/head/hermione.webp", False], + "headlib": ["Characters", "Head Librarian", "Awarded for releasing your seed in Hermione's mouth.", False, "interface/icons/head/hermione.webp", False], + "nerdgasm": ["Characters", "Nerdgasm", "Awarded for doing the deed with Hermione.", False, "interface/icons/head/hermione.webp", False] +} + +init python: + if persistent.achievements == None: + persistent.achievements = achievements_dict.copy() + + class Achievements(object): + + def __init__(self): + self.achievements = persistent.achievements + self.attempt_repair() + + if config.developer: + self.validate() + + def validate(self): + """Check if icons are loadable at init""" + for i in self.achievements.itervalues(): + if not renpy.loadable(i[4]): + raise IOError("\"{}\"".format(i[4])) + + def attempt_repair(self): + """Achievements are kept in a persistent state which is shared across versions, + because of that, they occassionally might need to be checked + if the set values are equal to the pre-defined values. + + Attempted repair will try to fix the mismatched values without resetting the completion status.""" + + # Save unlock states + unlock_states = {k: v[3] for k, v in self.achievements.iteritems()} + # Keys that should not exist in the persistent state anymore + orphans = self.achievements.viewkeys() - achievements_dict.viewkeys() + + # Making some K-pop + for k in orphans: + self.achievements.pop(k, None) + + self.achievements.update(achievements_dict) + + # Reapply unlock states + for k, v in self.achievements.iteritems(): + v[3] = unlock_states.get(k, False) + + def status(self, id): + return self.achievements.get(id)[3] + + def unlock(self, id, silent=False): + if persistent.achievements[id][3] == False: + self.achievements[id][3] = True + persistent.achievements[id][3] = True + + if not silent: + renpy.play('sounds/achievement.ogg') + renpy.show_screen("achievement_window", string=persistent.achievements[id][1], title="Achievement unlocked!", icon=persistent.achievements[id][4]) + + def lock(self, id): + self.achievements[id][3] = False + persistent.achievements[id][3] = False + + def achievement_sortfilter(item, sortby="A-z", filtering=None): + if filtering == "Locked": + item = filter(lambda x: x[1][3] is False, item) + elif filtering == "Unlocked": + item = filter(lambda x: x[1][3] is True, item) + elif filtering == "Secret": + item = filter(lambda x: x[1][5] is True, item) + + # Always sort alphabetically first. + item = sorted(item, key=lambda x: natsort_key(x[1][1])) + + if sortby == "z-A": + item = sorted(item, key=lambda x: natsort_key(x[1][1]), reverse=True) + elif current_sorting == "Unlocked": + item = sorted(item, key=lambda x: x[1][3] is False) + elif current_sorting == "Locked": + item = sorted(item, key=lambda x: x[1][3] is True) + + return item + +default achievements = Achievements() + +### + +label popup(string="", title="", icon=None, xpos=0, ypos=60, sound=True, soundfile='sounds/achievement.ogg'): + if sound: + $ renpy.play(soundfile) + hide screen achievement_window + show screen achievement_window(string=string, title=title, icon=icon, xpos=xpos, ypos=ypos) + return + +screen achievement_window(string="", title="", icon=None, xpos=0, ypos=60): + tag popup_window + layer "interface" + + frame: + style "empty" + at popup_animation(time=5.0, xx=-410) + pos (xpos, ypos) + xsize 410 + ysize 96 + + add gui.format("interface/achievements/{}/box.webp") + if icon: + frame: + style "empty" + pos (6, 6) + xsize 84 + ysize 84 + $ image_zoom = crop_image_zoom(icon, 84, 84) + if 'head' in icon: + add image_zoom align (0.5, 1.0) yoffset -1 + else: + add image_zoom align (0.5, 0.5) + + add "interface/achievements/glass.webp" + frame: + style "empty" + xpos 96 + xsize 314 + vbox: + ypos 12 + spacing 10 + xalign 0.5 + text title size 18 xalign 0.5 xanchor 0.5 + text string size 14 xalign 0.5 xanchor 0.5 + timer 6.0 action Hide("achievement_window") + +transform rotate_circular(): + on show, appear, start: + rotate 0 + linear 7.0 rotate 360 + repeat + +#################################### +############# Menu ################# +#################################### + +label achievement: + $ gui.in_context("achievement_menu") + jump main_room_menu + +label achievement_menu(xx=150, yy=90): + + $ achievement_categories_sorted = ["All", "General", "Characters", "Cardgame", "Mirror"] + + $ items_shown = 36 + $ current_page = 0 + $ current_category = achievement_categories_sorted[0] + $ current_filter = None + $ current_sorting = "Unlocked" + + $ category_items = list(persistent.achievements.iteritems()) + $ menu_items = achievement_sortfilter(category_items, current_sorting, current_filter) + $ menu_items_length = len(menu_items) + $ current_item = next(iter(menu_items), None) + + show screen achievements(xx, yy) + + label .after_init: + $ _choice = ui.interact() + + if _choice[0] == "select": + $ current_item = _choice[1] + elif _choice[0] == "category": + $ current_category = _choice[1] + if current_category == "All": + $ category_items = list(persistent.achievements.iteritems()) + else: + $ category_items = filter(lambda x: current_category in x[1][0], list(persistent.achievements.iteritems())) + $ menu_items = achievement_sortfilter(category_items, current_sorting, current_filter) + $ menu_items_length = len(menu_items) + $ current_page = 0 + $ current_item = next(iter(menu_items), None) + elif _choice == "inc": + $ current_page += 1 + elif _choice == "dec": + $ current_page += -1 + elif _choice == "filter": + if current_filter == None: + $ current_filter = "Locked" + elif current_filter == "Locked": + $ current_filter = "Unlocked" + elif current_filter == "Unlocked": + $ current_filter = "Secret" + else: + $ current_filter = None + $ menu_items = achievement_sortfilter(category_items, current_sorting, current_filter) + $ menu_items_length = len(menu_items) + $ current_page = 0 + $ current_item = next(iter(menu_items), None) + elif _choice == "sort": + if current_sorting == "A-z": + $ current_sorting = "z-A" + elif current_sorting == "z-A": + $ current_sorting = "Unlocked" + elif current_sorting == "Unlocked": + $ current_sorting = "Locked" + else: + $ current_sorting = "A-z" + $ menu_items = achievement_sortfilter(category_items, current_sorting, current_filter) + $ menu_items_length = len(menu_items) + $ current_page = 0 + $ current_item = next(iter(menu_items), None) + else: + hide screen achievements + return + + jump .after_init + +screen achievements(xx, yy): + tag achievements + zorder 15 + modal True + + add "gui_fade" + + if renpy.mobile: + use close_button_background + + use close_button + + fixed: + if settings.get("animations"): + at gui_animation + use achievement_menu(xx, yy) + use achievement_menuitem(xx, yy) + +screen achievement_menu(xx, yy): + window: + style "empty" + style_prefix gui.theme('achievements') + pos (xx, yy) + xysize (207, 454) + + use invisible_button() + + add gui.format("interface/achievements/{}/panel_left.webp") + + vbox: + style_prefix gui.theme('achievements_categories') + pos (6, 41) + for category in achievement_categories_sorted: + vbox: + textbutton category: + selected (current_category == category) + action Return(["category", category]) + + add gui.format("interface/achievements/{}/spacer_left.webp") + vbox: + style_prefix gui.theme('achievements_filters') + pos (6, 384) + if current_filter == None: + textbutton "Show: All" action Return("filter") + else: + textbutton "Show: [current_filter]" action Return("filter") + textbutton "Sort by: [current_sorting]" action Return("sort") + +screen achievement_menuitem(xx, yy): + window: + style "empty" + pos (xx+217, yy-53) + xysize (560, 507) + + use invisible_button() + + add "interface/achievements/star.webp" + add gui.format("interface/achievements/{}/panel.webp") + + text "Achievements" size 22 xalign 0.5 ypos 65 + + text "Unlocked: "+str(len(filter(lambda x: x[1][3] is True, menu_items)))+"/[menu_items_length]" size 12 pos (24, 70) + + # Page counter + if menu_items_length > items_shown: + hbox: + xanchor 1.0 + pos (540, 24) + spacing 5 + add "interface/page.webp" yanchor 0.5 ypos 53 + text str(current_page+1)+"/"+str(int(math.ceil(menu_items_length/items_shown))+1) ypos 44 size 16 + vbox: + pos (570, 186) + spacing 10 + + imagebutton: + idle gui.format("interface/frames/{}/arrow_up.webp") + if not current_page <= 0: + hover image_hover(gui.format("interface/frames/{}/arrow_up.webp")) + action Return("dec") + + imagebutton: + idle Transform(gui.format("interface/frames/{}/arrow_up.webp"), yzoom = -1.0) + if current_page < math.ceil((menu_items_length-1)/items_shown): + hover Transform(image_hover(gui.format("interface/frames/{}/arrow_up.webp")), yzoom = -1.0) + action Return("inc") + + # Add items + for i in xrange(current_page*items_shown, (current_page*items_shown)+items_shown): + if i < menu_items_length: + $ row = (i // 9) % 4 + $ col = i % 9 + frame: + style "empty" + xsize 48 + ysize 48 + pos (24+58*(col), 113+58*(row)) + add gui.format("interface/achievements/{}/iconbox.webp") + + if current_item and current_item[0] == menu_items[i][0]: + add "interface/achievements/glow.webp" align (0.5, 0.5) zoom 0.105 alpha 0.7 at rotate_circular + + if menu_items[i][1][4]: + if menu_items[i][1][3]: + $ image_zoom = crop_image_zoom(menu_items[i][1][4], 42, 42) + elif not menu_items[i][1][5]: + $ image_zoom = crop_image_zoom(menu_items[i][1][4], 42, 42, True) + else: + $ image_zoom = crop_image_zoom("interface/achievements/secret.webp", 35, 35, True) + + if menu_items[i][1][0] == "Characters" and not (menu_items[i][1][5] is True and not menu_items[i][1][3] is True): + add image_zoom align (0.5, 1.0) yoffset -3 + else: + add image_zoom align (0.5, 0.5) + + button: + style gui.theme("overlay_button") + background "interface/achievements/glass_iconbox.webp" + xsize 48 ysize 48 + action Return(["select", menu_items[i]]) + if menu_items[i][1][5] and not menu_items[i][1][3]: + tooltip "???" + else: + tooltip str(menu_items[i][1][1]) + + if current_item: + frame: + style "empty" + xsize 96 + ysize 96 + pos (24, 375) + add gui.format("interface/achievements/{}/icon_selected.webp") + if current_item[1][4]: + if current_item[1][3]: + $ image_zoom = crop_image_zoom(current_item[1][4], 84, 84) + else: + if current_item[1][5]: + $ image_zoom = crop_image_zoom("interface/achievements/secret.webp", 70, 70, True) + else: + $ image_zoom = crop_image_zoom(current_item[1][4], 84, 84, True) + if current_item[1][0] == "Characters" and not (current_item[1][5] is True and not current_item[1][3] is True): + add image_zoom align (0.5, 1.0) yoffset -7 + else: + add image_zoom align (0.5, 0.5) + add "interface/achievements/glass_selected.webp" pos (6, 6) + + add gui.format("interface/achievements/{}/highlight.webp") pos (112, 375) + add gui.format("interface/achievements/{}/spacer.webp") pos (120, 398) + hbox: + spacing 5 + xalign 0.5 + text current_item[1][1] ypos 380 size 16 xoffset 45 + if current_item[1][3]: + add "interface/unlocked_True.webp" xoffset 45 ypos 377 + else: + add "interface/unlocked_False.webp" xoffset 45 ypos 377 + hbox: + pos (132, 407) + xsize 410 + if current_item[1][3]: + text current_item[1][2] size 12 + else: + if current_item[1][5]: + text "???" size 12 + else: + text current_item[1][2] size 12 + +# Category styles +style achievements_categories_button is empty: + xysize (195, 16) + +style dark_achievements_categories_button: + hover_background "interface/achievements/gray/highlight_left.webp" + selected_background "interface/achievements/gray/highlight_left.webp" + +style light_achievements_categories_button: + hover_background "interface/achievements/gold/highlight_left.webp" + selected_background "interface/achievements/gold/highlight_left.webp" + +style achievements_categories_button_text is text: + xalign 0.5 + outlines [] + +# style dark_achievements_categories_button_text: +# take dark_button_text + +# style light_achievements_categories_button_text: +# take light_button_text + +# Filter styles +style achievements_filters_button is empty: + xysize (195, 32) + +style dark_achievements_filters_button: + hover_background "#7d75aa40" + +style light_achievements_filters_button: + hover_background "#e3ba7140" + +style achievements_filters_button_text is default: + align (0.5, 0.5) + size 12 + outlines [] diff --git a/game/scripts/interface/book.rpy b/game/scripts/interface/book.rpy new file mode 100644 index 00000000..0f6fd9ad --- /dev/null +++ b/game/scripts/interface/book.rpy @@ -0,0 +1,218 @@ +init python: + class book_readable_class(object): + def __init__(self, title, contents=[], **kwargs): + self.title = title + self.page = 0 + self.overflow=None + + self.title = title + self.contents = contents + self.__dict__.update(**kwargs) + + self.pages = len(self.contents)-1 + + def open(self, page=0): + self.page = max(0, min(page, self.pages)) + self.refresh() + return + + def close(self): + self.page = 0 + renpy.hide_screen("book_menu") + return + + def next(self): + self.page = min(self.page+2, self.pages) + self.refresh() + return + + def prev(self): + self.page = max(self.page-2, 0) + self.refresh() + return + + # Max 882 characters per page. + def get_text(self): + if self.pages >= self.page+1: + return (self.contents[self.page][1][0:880], self.contents[self.page+1][1][0:880]) + return (self.contents[self.page][1][0:880], None) + + def get_title(self): + if self.pages >= self.page+1: + return (self.contents[self.page][0], self.contents[self.page+1][0]) + return (self.contents[self.page][0], None) + + def refresh(self): + renpy.show_screen("book_menu", page=self.page, pages=self.pages, title=self.title, page_title=self.get_title(), page_text=self.get_text(), page_overflow=self.overflow) + return + + def append(self, new_page): + self.contents.append(new_page) + self.pages = len(self.contents)-1 + return + + class diary_class(book_readable_class): + def __init__(self, title, dictionary): + super(diary_class, self).__init__(self) + + self.title = title + self.dictionary = dictionary + + def append(self, entry, id, branches=None): + for i in self.contents: + if i[2] == id: + return + + entry = list(self.dictionary[entry]) + + if branches: + branches = tuple(self.dictionary[str(x)] for x in branches) + entry = [entry[0], entry[1].format(*branches)] + + self.contents.append(["Day {}\n{}".format(game.day, entry[0]), str(entry[1]), id]) + self.pages = len(self.contents)-1 + return + +label book_handle(book=None): + $ book.open() + $ renpy.play('sounds/bookopen.ogg') + show screen book_animator("book_page_next", 0.5) + label .after_init: + + $ _choice = ui.interact() + + if _choice == "next": + $ book.next() + $ renpy.play('sounds/pageflip.ogg') + show screen book_animator("book_page_next", 0.5) + with d1 + elif _choice == "prev": + $ book.prev() + $ renpy.play('sounds/pageflip.ogg') + show screen book_animator("book_page_prev", 0.5) + with d1 + elif _choice == "back": + $ book.open() + $ renpy.play('sounds/pageflipback.ogg') + show screen book_animator("book_page_start", 0.5) + with d1 + elif _choice == "Close": + $ book.close() + $ renpy.play('sounds/bookclose.ogg') + return + jump .after_init + +screen book_menu(page, pages, title, page_title, page_text, page_overflow): + tag book_menu + zorder 30 + + button style "empty" action NullAction() + + add Color("#000", alpha=0.5) + add "interface/book/book_open.webp" + + frame: + style "empty" + pos (280, 130) + xsize 250 + ysize 300 + text page_title[0] ypos -20 size 16 xalign 0.5 + text page_text[0] size 12 ypos 40 + text "{b}"+str(page+1)+"{/b}" xalign 0.5 ypos 350 size 11 # fix page calc + + frame: + style "empty" + xpos 600 ypos 130 + xsize 250 + ysize 300 + if page_title[1] != None: + text page_title[1] ypos -20 size 16 xalign 0.5 + if page_text[1] != None: + text page_text[1] size 12 ypos 40 + text "{b}"+str(page+2)+"{/b}" xalign 0.5 ypos 350 size 11 + + imagebutton: + pos (878, 100) + ysize 400 + xalign 1.0 + # Next + if page < pages: + idle im.Alpha("interface/book/hover.webp", 0) + hover "interface/book/hover.webp" + action Return("next") + # Fast Back to start + else: + idle "interface/book/back.webp" + hover "interface/book/back.webp" + action Return("back") + + # Previous + if page > 0: + imagebutton: + pos (242, 100) + ysize 400 + idle im.Alpha(Transform("interface/book/hover.webp", xzoom=-1.0), 0) + hover Transform("interface/book/hover.webp", xzoom=-1.0) + action Return("prev") + + use close_button + +screen book_animator(img, timer): + tag animator + zorder 31 + + add img + button style "empty" action [Hide("book_animator"), With(Dissolve(0.05))] + timer timer action [Hide("book_animator"), With(Dissolve(0.1))] + +image book_page_next: + contains: + "interface/book/book_open.webp" + contains: + #"interface/book_of_secrets/book_anim_01.webp" + #pause.1 + "interface/book/page_02.webp" + pause.08 + "interface/book/page_03.webp" + pause.08 + "interface/book/page_04.webp" + pause.08 + "interface/book/page_05.webp" + pause.08 + "interface/book/page_06.webp" + pause.08 + "interface/book/page_07.webp" + pause.08 + "blank" + +image book_page_prev: + contains: + "interface/book/book_open.webp" + contains: + xoffset 40 + #"interface/book_of_secrets/book_anim_01.webp" + #pause.1 + Transform("interface/book/page_02.webp", xzoom=-1.0) + pause.08 + Transform("interface/book/page_03.webp", xzoom=-1.0) + pause.08 + Transform("interface/book/page_04.webp", xzoom=-1.0) + pause.08 + Transform("interface/book/page_05.webp", xzoom=-1.0) + pause.08 + Transform("interface/book/page_06.webp", xzoom=-1.0) + pause.08 + Transform("interface/book/page_07.webp", xzoom=-1.0) + pause.08 + "blank" + +image book_page_start: + contains: + "interface/book/book_open.webp" + contains: + "interface/book/reverse_01.webp" + pause.07 + "interface/book/reverse_02.webp" + pause.07 + "blank" + repeat 3 #book_page_max was too slow diff --git a/game/scripts/interface/brewing.rpy b/game/scripts/interface/brewing.rpy new file mode 100644 index 00000000..bb519922 --- /dev/null +++ b/game/scripts/interface/brewing.rpy @@ -0,0 +1,269 @@ +init python: + def brewing_sortfilter(item, sortby="A-z", filtering=None): + # if filtering == "Locked": + # item = filter(lambda x: x.is_unlocked(), item) + # elif filtering == "Unlocked": + # item = filter(lambda x: x.is_unlocked() is True, item) + + # Always sort alphabetically first. + item = sorted(item, key=lambda x: natsort_key(x.name)) + + if sortby == "z-A": + item = sorted(item, key=lambda x: natsort_key(x.name), reverse=True) + + return item + +label brewing: + $ gui.in_context("brewing_menu") + return + +label brewing_menu(xx=150, yy=90): + + $ items_shown = 36 + $ current_filter = "Unlocked" + $ current_sorting = "A-z" + + $ menu_items = brewing_sortfilter(inventory.get_instances_of_type("potion"), current_sorting, current_filter) + $ menu_items_length = len(menu_items) + $ current_item = next(iter(menu_items), None) + + show screen brewing(xx, yy) + + label .after_init: + $ _choice = ui.interact() + + if _choice[0] == "select": + $ current_item = _choice[1] + elif _choice == "filter": + if current_filter == "Unlocked": + $ current_filter = None + elif current_filter == None: + $ current_filter = "Unlocked" + + $ menu_items = brewing_sortfilter(inventory.get_instances_of_type("potion"), current_sorting, current_filter) + $ menu_items_length = len(menu_items) + $ current_item = next(iter(menu_items), None) + elif _choice == "sort": + if current_sorting == "A-z": + $ current_sorting = "z-A" + else: + $ current_sorting = "A-z" + + $ menu_items = brewing_sortfilter(inventory.get_instances_of_type("potion"), current_sorting, current_filter) + $ menu_items_length = len(menu_items) + #$ current_item = next(iter(menu_items), None) + elif _choice[0] == "make": + if _choice[1].has_ingredients(): + $ renpy.play("sounds/bubble.ogg") + $ _choice[1].make() + else: + gen "It appears I'm missing some key ingredients..." ("base", xpos="far_left", ypos="head") + else: + $ enable_game_menu() + hide screen brewing + return + + jump .after_init + +screen brewing(xx, yy): + tag brewing + zorder 15 + modal True + + add "gui_fade" + + if renpy.mobile: + use close_button_background + + use close_button + + fixed: + if settings.get("animations"): + at gui_animation + use brewing_menu(xx, yy) + use brewing_menuitem(xx, yy) + +screen brewing_menu(xx, yy): + window: + style "empty" + style_prefix gui.theme('achievements') + pos (xx, yy) + xysize (207, 454) + + use invisible_button() + + add gui.format("interface/achievements/{}/panel_left.webp") + + vpgrid: + rows 1 + yfill True + + vbox: + style_prefix gui.theme('achievements_categories') + pos (6, 6) + for i in menu_items: + frame: + style "empty" + xysize (195, 50) + + vbox: + textbutton i.name: + xysize (195, 46) + text_align (0.6, 0.5) + text_xanchor 0.5 + text_size 12 + if current_item == i: + background gui.format("interface/achievements/{}/highlight_left_b.webp") + else: + hover_background gui.format("interface/achievements/{}/highlight_left_b.webp") + selected (current_item == i) + action Return(["select", i]) + + add gui.format("interface/achievements/{}/spacer_left.webp") + + $ image_zoom = crop_image_zoom(i.get_image(), 42, 42) + + button: + style gui.theme("overlay_button") + background gui.format("interface/achievements/{}/iconbox.webp") + foreground "interface/achievements/glass_iconbox.webp" + xysize (48, 48) + add image_zoom align (0.5, 0.5) + + if i.owned > 0: + text str(i.owned) size 10 align (0.02, 0.1) color "#ffffff" outlines [ (1, "#000", 0, 0) ] + vbox: + style_prefix gui.theme('achievements_filters') + pos (6, 384) + + if current_filter == None: + textbutton "Show: All" action Return("filter") + else: + textbutton "Show: [current_filter]" action Return("filter") + textbutton "Sort by: [current_sorting]" action Return("sort") + +screen brewing_menuitem(xx, yy): + default turned_on = False + default drop_ingredients = False + + window: + style "empty" + pos (xx+217, yy-53) + xysize (560, 507) + use invisible_button() + + #add "interface/achievements/star.webp" + add gui.format("interface/achievements/{}/panel.webp") + + if turned_on: + add "interface/brewing/bg_on.webp" align (0.5, 1.0) xsize 548 fit "contain" yoffset -6 + else: + add "interface/brewing/bg_off.webp" align (0.5, 1.0) xsize 548 fit "contain" yoffset -6 + + text "Brewing Station" size 22 xalign 0.5 ypos 65 + + if current_item: + vbox: + xsize 560 + pos (24, 113) + spacing 5 + + text "[current_item.desc]" size 12 + text "Usable on:" size 12 + hbox: + for c in current_item.usable_on: + add "interface/icons/head/{}.webp".format(c) size (24, 24) + + hbox: + spacing 10 + pos (24, 270) + + for ingredient in current_item.recipe: + frame: + style "empty" + xysize (48, 48) + add gui.format("interface/achievements/{}/iconbox.webp") + + if ingredient.owned > 0: + $ image_zoom = crop_image_zoom(ingredient.get_image(), 42, 42) + else: + $ image_zoom = crop_image_zoom(ingredient.get_image(), 42, 42, True) + + add image_zoom align (0.5, 0.5) + + button: + style gui.theme("overlay_button") + background "interface/achievements/glass_iconbox.webp" + xsize 46 ysize 46 + action NullAction() + tooltip ingredient.name + + if ingredient.owned > 0: + if ingredient.infinite: + text "{unicode}∞{/unicode}" size 20 align (0.1, 0.1) offset(-1, -9) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + else: + text str(ingredient.owned) size 10 align (0.1, 0.1) color "#ffffff" outlines [ (1, "#000", 0, 0) ] + else: + text str(ingredient.owned) size 10 align (0.1, 0.1) color "#ff0000" outlines [ (1, "#000", 0, 0) ] + + frame: + style "empty" + xysize (64, 64) + pos (464, 254) + + add gui.format("interface/achievements/{}/iconbox.webp") size (64, 64) + + if current_item.owned > 0: + $ image_zoom = crop_image_zoom(current_item.get_image(), 52, 52) + else: + $ image_zoom = crop_image_zoom(current_item.get_image(), 52, 52, True) + + add image_zoom align (0.5, 0.5) + + button: + style gui.theme("overlay_button") + background Transform("interface/achievements/glass_iconbox.webp", size=(64, 64)) + xysize (64, 64) + action NullAction() + tooltip current_item.name + + if current_item.owned > 0: + text str(current_item.owned) size 14 align (0.1, 0.1) color "#ffffff" outlines [ (1, "#000", 0, 0) ] + + imagebutton: + if current_item.has_ingredients(): + at transform: + subpixel True + + on hover: + easeout_bounce 0.77 rotate 2 xoffset 3 + easeout_bounce 0.77 rotate -2 xoffset -3 + repeat + + on idle: + linear 0.33 rotate 0 xoffset 0 + + idle "cauldron_off" + focus_mask None + pos (381, 311) + anchor (0.5, 0.5) + action Return(["make", current_item]) + if current_item.has_ingredients(): + hover image_hover("cauldron_on") + hovered [Play("bg_sounds", "sounds/brewing_idle.ogg"), SetLocalVariable("turned_on", True)] + unhovered [Stop("bg_sounds"), SetLocalVariable("turned_on", False)] + else: + hover image_hover("cauldron_off") + + if turned_on: + add "interface/brewing/glow.webp": + at transform: + align (0.5, 1.0) + xsize 548 + fit "contain" + yoffset -6 + + alpha 0.1 + linear 2.0 alpha 1.0 + linear 1.5 alpha 0.1 + repeat diff --git a/game/scripts/interface/cheats.rpy b/game/scripts/interface/cheats.rpy new file mode 100644 index 00000000..d5638091 --- /dev/null +++ b/game/scripts/interface/cheats.rpy @@ -0,0 +1,511 @@ + +default cheat_wardrobe_alpha = False + +default skip_duel = False +default experimental_cheats = False + +label cheats: + + if not renpy.seen_label("cheats"): + "Uncle Good Advice" "{b}Attention!{/b}\nSome cheats can cause bugs and writing inconsistencies, use at your own risk." + + menu: + "Inventory": + label .general: + + menu: + "-Add 500 Gold-" (icon="interface/icons/small/gold.webp"): + $ game.gold += 500 + jump cheats.general + "-Get all gifts-" (icon="interface/icons/small/gift.webp"): + python: + for i in inventory.get_instances_of_type("gift"): + i.owned = i.limit + ">Added 100 of each gift item to the inventory." + "-Get all potions-" (icon="interface/icons/small/potion.webp"): + python: + for i in inventory.get_instances_of_type("potion"): + i.owned = i.limit + ">Added 100 of each potion item to the inventory." + "-Get all ingredients-" (icon="interface/icons/small/potion.webp"): + python: + for i in inventory.get_instances_of_type("ingredient"): + i.owned = i.limit + ">Added 100 of each ingredient item to the inventory." + "-Get all scrolls-" (icon="interface/icons/small/spell.webp"): + python: + for i in inventory.get_instances_of_type("scroll"): + i.owned = i.limit + ">Added all scrolls to the inventory." + "-Get all books-" (icon="interface/icons/small/book.webp"): + python: + for i in inventory.get_instances_of_type("book"): + i.owned = i.limit + ">Added all books to the inventory." + "-Get all decorations-" (icon="interface/icons/small/gold.webp"): + python: + for i in inventory.get_instances_of_type("decoration"): + i.owned = i.limit + ">Added all decorations to the inventory." + "-Get all quest items-" (icon="interface/icons/small/potion.webp"): + menu: + "Uncle Good Advice" "{color=#ff8000}Attention!{/color} You may receive items that are not intended to be used in your time line, or may be experimental. Do you still wish to proceed?" + + "Yes": + pass + "No": + jump cheats.general + python: + for i in inventory.get_instances_of_type("quest"): + i.owned = i.limit + + ">Added all quest items to the inventory." + "-Get all outfits-" (icon="interface/icons/small/wardrobe.webp"): + menu: + "Uncle Good Advice" "{color=#ff8000}Attention!{/color} You may receive outfits that are not intended to be used in your time line, may be experimental, or are duplicates of the already existing outfits. Do you still wish to proceed?" + + "Yes": + pass + "No": + jump cheats.general + + python: + for i in CHARACTERS: + for x in getattr(renpy.store, i).outfits: + if not x.hidden: + x.unlock() + + # Add relevant quest items to the inventory + $ poker_outfit_ITEM.owned = 1 + $ ball_outfit_ITEM.owned = 1 + $ maid_outfit_ITEM.owned = 1 + + ">Added all outfits to the wardrobe." + "-Back-": + jump cheats + jump cheats.general + + "Characters": + label .characters: + + menu: + "-Tonks-" (icon="interface/icons/small/tonks.webp") if tonks_unlocked: + label .tonks: + menu: + "-Reset mood- ([ton_mood])" if ton_mood != 0: + $ ton_mood = 0 + ">Tonks is no longer mad at you." + "-Increase Friendship- ([ton_friendship])" if ton_friendship < 100: + $ ton_friendship += 5 + ">Tonks likes you more..." + "-Decrease Friendship- ([ton_friendship])" if ton_friendship > 0: + $ ton_friendship -= 5 + ">Tonks likes you less..." + "-Back-": + jump cheats.characters + jump cheats.tonks + + "-Hermione-" (icon="interface/icons/small/hermione.webp") if hermione_unlocked: + label .hermione: + menu: + "-Reset mood- ([her_mood])" if her_mood != 0: + $ her_mood = 0 + ">Hermione is no longer mad at you." + "-Increase Whoring- ([her_whoring])" (icon="interface/icons/small/heart_red.webp") if her_whoring < 24: + $ her_whoring += 1 + ">Hermione became more depraved..." + "-Decrease Whoring- ([her_whoring])" (icon="interface/icons/small/heart_black.webp") if her_whoring > 0: + $ her_whoring += -1 + ">Hermione recovered some of her dignity." + "-Increase Reputation- ([her_reputation])" (icon="interface/icons/small/star_yellow.webp") if her_reputation < 24: + $ her_reputation += 1 + ">Hermione became more depraved..." + "-Decrease Reputation- ([her_reputation])" (icon="interface/icons/small/star_empty.webp") if her_reputation > 0: + $ her_reputation += -1 + ">Hermione recovered some of her dignity." + "-Back-": + jump cheats.characters + jump cheats.hermione + + "-Cho-" (icon="interface/icons/small/cho.webp") if cho_unlocked: + label .cho: + menu: + "-Reset mood- ([cho_mood])" if cho_mood != 0: + $ cho_mood = 0 + ">Cho is no longer mad at you." + "-Increase Whoring- ([cho_whoring])" (icon="interface/icons/small/heart_red.webp") if cho_whoring < 24: + $ cho_whoring += 1 + ">Cho became more depraved..." + "-Decrease Whoring- ([cho_whoring])" (icon="interface/icons/small/heart_black.webp") if cho_whoring > 0: + $ cho_whoring += -1 + ">Cho recovered some of her dignity." + "-Increase Reputation- ([cho_reputation])" (icon="interface/icons/small/star_yellow.webp") if cho_reputation < 24: + $ cho_reputation += 1 + ">Cho became more depraved..." + "-Decrease Reputation- ([cho_reputation])" (icon="interface/icons/small/star_empty.webp") if cho_reputation > 0: + $ cho_reputation += -1 + ">Cho recovered some of her dignity." + "-Back-": + jump cheats.characters + jump cheats.cho + + "-Luna-" (icon="interface/icons/small/luna.webp") if luna_unlocked: + label .luna: + menu: + "-Reset mood- ([cho_mood])" if lun_mood != 0: + $ lun_mood = 0 + ">Luna is no longer mad at you." + "-Increase Whoring- ([lun_whoring])" (icon="interface/icons/small/heart_red.webp") if lun_whoring < 24: + $ lun_whoring += 1 + ">Luna became more depraved..." + "-Decrease Whoring- ([lun_whoring])" (icon="interface/icons/small/heart_black.webp") if lun_whoring > 0: + $ lun_whoring += -1 + ">Luna recovered some of her dignity." + # "-Increase Reputation- ([lun_reputation])" (icon="interface/icons/small/star_yellow.webp") if lun_reputation < 24: + # $ lun_reputation += 1 + # ">Luna became more depraved..." + # "-Decrease Reputation- ([lun_reputation])" (icon="interface/icons/small/star_empty.webp") if lun_reputation > 0: + # $ lun_reputation += -1 + # ">Luna recovered some of her dignity." + "-Back-": + jump cheats.characters + jump cheats.luna + + "-Astoria-" (icon="interface/icons/small/astoria.webp") if astoria_unlocked: + label .astoria: + menu: + "-Reset mood-" if ast_mood != 0: + $ ast_mood = 0 + ">Astoria is no longer mad at you." + "-Increase Whoring-" (icon="interface/icons/small/heart_red.webp") if ast_whoring < 24: + $ ast_whoring += 1 + ">Astoria likes you more..." + "-Decrease Whoring-" (icon="interface/icons/small/heart_black.webp") if ast_whoring > 0: + $ ast_whoring += -1 + "Astoria likes you less..." + # "-Increase Reputation- ([ast_reputation])" (icon="interface/icons/small/star_yellow.webp") if ast_reputation < 24: + # $ ast_reputation += 1 + # ">Astoria became more depraved..." + # "-Decrease Reputation- ([ast_reputation])" (icon="interface/icons/small/star_empty.webp") if ast_reputation > 0: + # $ ast_reputation += -1 + # ">Astoria recovered some of her dignity" + "-Back-": + jump cheats.characters + jump cheats.astoria + + "-Susan-" (icon="interface/icons/small/huff.webp") if susan_unlocked: + label .susan: + menu: + "-Reset mood- ([cho_mood])" if sus_mood != 0: + $ sus_mood = 0 + ">Susan is no longer mad at you." + "-Increase Whoring- ([sus_whoring])" (icon="interface/icons/small/heart_red.webp") if sus_whoring < 24: + $ sus_whoring += 1 + ">Susan became more depraved..." + "-Decrease Whoring- ([sus_whoring])" (icon="interface/icons/small/heart_black.webp") if sus_whoring > 0: + $ sus_whoring += -1 + ">Susan recovered some of her dignity." + # "-Increase Reputation- ([sus_reputation])" (icon="interface/icons/small/star_yellow.webp") if sus_reputation < 24: + # $ sus_reputation += 1 + # ">Susan became more depraved..." + # "-Decrease Reputation- ([sus_reputation])" (icon="interface/icons/small/star_empty.webp") if sus_reputation > 0: + # $ sus_reputation += -1 + # ">Susan recovered some of her dignity." + "-Back-": + jump cheats.characters + jump cheats.susan + + "-Back-": + jump cheats + + "House Points": + label .points: + + menu: + "-Add 200 Slytherin Points-" (icon="interface/icons/small/slyt.webp"): + $ slytherin = clamp(slytherin+200, 1, 999999) + call update_ui_points + ">Added 200 points to Slytherin!" + "-Remove 200 Slytherin Points-" (icon="interface/icons/small/slyt.webp"): + $ slytherin = clamp(slytherin-200, 1, 999999) + call update_ui_points + ">Removed 200 points from Slytherin!" + "-Add 200 Gryffindor Points-" (icon="interface/icons/small/gryf.webp"): + $ gryffindor = clamp(gryffindor+200, 1, 999999) + call update_ui_points + ">Added 200 points to Gryffindor!" + "-Remove 200 Gryffindor Points-" (icon="interface/icons/small/gryf.webp"): + $ gryffindor = clamp(gryffindor-200, 1, 999999) + call update_ui_points + ">Removed 200 points from Gryffindor!" + "-Add 200 Ravenclaw Points-" (icon="interface/icons/small/rave.webp"): + $ ravenclaw = clamp(ravenclaw+200, 1, 999999) + call update_ui_points + ">Added 200 points to Ravenclaw!" + "-Remove 200 Ravenclaw Points-" (icon="interface/icons/small/rave.webp"): + $ ravenclaw = clamp(ravenclaw-200, 1, 999999) + call update_ui_points + ">Removed 200 points from Ravenclaw!" + "-Add 200 Hufflepuff Points-" (icon="interface/icons/small/huff.webp"): + $ hufflepuff = clamp(hufflepuff+200, 1, 999999) + call update_ui_points + ">Added 200 points to Hufflepuff!" + "-Remove 200 Hufflepuff Points-" (icon="interface/icons/small/huff.webp"): + $ hufflepuff = clamp(hufflepuff-200, 1, 999999) + call update_ui_points + ">Removed 200 points from Hufflepuff!" + "-Reset all points-": + $ slytherin = 1 + $ gryffindor = 1 + $ ravenclaw = 1 + $ hufflepuff = 1 + call update_ui_points + ">House points reset!" + "-Back-": + jump cheats + jump cheats.points + + "Progression": + label .progression: + + menu: + "-Unlock all Mirror Stories-": + python: + for i in mirror.items: + i.unlocked = True + ">Unlocked all mirror stories." + + # "-Hermione-": + # jump cheats.progression + + # "-Cho-" if her_tier >= 2: + # jump cheats.progression + + "-Back-": + jump cheats + jump cheats.progression + + "Experimental": + label .experimental: + + if not config.developer and not experimental_cheats: + "Uncle Good Advice" "{color=#7a0000}Warning!{/color} These cheats are highly experimental and are not supposed to be used during a normal playthrough, there's a high chance they {u}will break the game{/u}, but you're the boss." + + menu: + "Uncle Good Advice" "Will you take full responsibility for your actions?\n(You will receive no technical support if you encounter any issues)" + + "Yes": + $ experimental_cheats = True + ">Experimental cheats have been unlocked." + "No": + "Uncle Good Advice" "Smart choice." + jump cheats + + menu: + "{size=-4}-Wardrobe Transparency Slider- (Is enabled: [cheat_wardrobe_alpha]){/size}" (icon="interface/icons/small/wardrobe.webp"): + $ cheat_wardrobe_alpha = not cheat_wardrobe_alpha + + "-Unequip all clothes-": + python: + for i in CHARACTERS: + getattr(renpy.store, i).unequip("all") + + ">All characters are now naked." + + "-Unlock all characters-" (icon="interface/icons/small/talk.webp"): + $ snape_unlocked = True + $ tonks_unlocked = True + $ hermione_unlocked = True + $ cho_unlocked = True + $ astoria_unlocked = True + $ susan_unlocked = True + $ luna_unlocked = True + # ginny_unlocked = True + # voldermort_unlocked = True + # hagrid_unlocked = True + + ">All characters have been unlocked." + + "-Unlock all wardrobes-" (icon="interface/icons/small/wardrobe.webp"): + $ tonks_wardrobe_unlocked = True + $ hermione_wardrobe_unlocked = True + $ cho_wardrobe_unlocked = True + $ astoria_wardrobe_unlocked = True + $ susan_wardrobe_unlocked = True + $ luna_wardrobe_unlocked = True + # ginny_wardrobe_unlocked = True + # voldemort_wardrobe_unlocked = True + # hagrid_wardrobe_unlocked = True + + ">All wardrobes have been unlocked." + + "-Permanent body alteration-": + label .alteration: + + $ _curr_breast_type = hermione.body.body["breasts"][0] + $ _curr_ass_type = hermione.body.body["backside"][0] or "normal" + + # Note: itertools.cycle breaks Ren'py so we have to rely on a good 'ol if statement + # *Sigh* I wish we had match statement in python 2 :( + + menu: + "Hermione Breasts ([_curr_breast_type])" (icon="interface/icons/small/hermione.webp"): + if _curr_breast_type == "normal": + $ hermione.set_body(breasts="big1") + elif _curr_breast_type == "big1": + $ hermione.set_body(breasts="big2") + elif _curr_breast_type == "big2": + $ hermione.set_body(breasts="big3") + else: + $ hermione.set_body(breasts="normal") + + jump cheats.alteration + + "Hermione Ass ([_curr_ass_type])" (icon="interface/icons/small/hermione.webp"): + if _curr_ass_type == "normal": + $ hermione.set_body(backside="big1") + elif _curr_ass_type == "big1": + $ hermione.set_body(backside="big2") + elif _curr_ass_type == "big2": + $ hermione.set_body(backside="big3") + else: + $ hermione.set_body(backside=None) # This is intended. + + jump cheats.alteration + + "-Back-": + jump cheats.experimental + + "-Back-": + jump cheats + jump cheats.experimental + + "-Never mind-": + jump main_room_menu + + +### Hermione ### + +label .hermione_skip_intro: + + $ bird_examined = True + $ desk_examined = True + $ cupboard_examined = True + $ door_examined = True + $ fireplace_examined = True + + $ wine_ITEM.owned = 5 + $ firewhisky_ITEM.owned = 5 + + $ rum_times = 6 + $ game.day = 13 + + $ achievements.unlock("start", True) + + $ genie_intro.E1_complete = True + $ genie_intro.E2_complete = True + $ genie_intro.E3_complete = True + $ genie_intro.E4_complete = True + + $ snape_intro.E1_complete = True + $ snape_intro.E2_complete = True + $ snape_intro.E3_complete = True + $ snape_intro.duel_complete = True + $ snape_intro.E4_complete = True + $ snape_intro.E5_complete = True + + $ ss_he.hermione_E1 = True + $ ss_he.hermione_E2 = True + $ ss_he.tonks_E1 = True + $ ss_he.tonks_E2 = True + $ ss_he.tonks_E3 = True + + $ tonks_intro.E1_complete = True + $ tonks_intro.E2_complete = True + $ tonks_intro.E3_complete = True + + $ nt_he.hermione_E1 = True + + $ hermione_intro.E1_complete = True + $ hermione_intro.E2_complete = True + $ hermione_intro.E3_complete = True + $ hermione_intro.E4_complete = True + $ hermione_intro.E5_complete = True + $ hermione_intro.E6_complete = True + + $ letter_hg_1.open(silent=True) + $ letter_hg_2.open(silent=True) + $ letter_work_unlock.open(silent=True) + $ letter_favors.open(silent=True) + + $ snape_unlocked = True + $ achievements.unlock("unlocksna", True) + + $ tonks_unlocked = True + $ achievements.unlock("unlockton", True) + + $ hermione_unlocked = True + $ achievements.unlock("unlockher", True) + $ tutoring_hermione_unlocked = True + $ hermione_favors = True + $ hermione_wardrobe_unlocked = True + + # Simulate points gains + $ slytherin = gryffindor + $ gryffindor = int(slytherin*0.5) + $ hufflepuff = int(gryffindor*1.1) + $ ravenclaw = int(gryffindor*1.3) + + return + +# label .hermione_skip_T1: +# $ her_tier = 2 +# $ her_whoring = 1 +# return + +# label .hermione_skip_T2: +# $ her_tier = 3 +# $ her_whoring = 9 +# $ hg_jerkoff.trigger = True +# return + +# label .hermione_skip_T3: +# $ her_tier = 4 +# $ her_whoring = 12 +# $ hg_strip.trigger = True +# return + +# label .hermione_skip_T4: +# $ her_tier = 5 +# $ her_whoring = 18 +# $ hg_kiss.trigger = True +# return + +# label .hermione_skip_T5: +# $ her_tier = 6 +# $ her_whoring = 21 +# $ hg_blowjob.trigger = True +# return + + +# ### Cho ### + +# label .cho_skip_intro: +# if game.day < 16: +# $ game.day = 16 +# $ cho_intro.E1_complete = True +# $ cho_intro.E2_complete = True +# $ ss_he.cho_E1 = True +# $ cho_intro.E3_complete = True +# $ achievements.unlock("unlockcho", True) +# $ cho_unlocked = True +# return + +# label .cho_skip_quiz: +# $ cho_quiz.complete = True +# $ cho_quid.E1_complete = True +# $ cho_quid.E2_complete = True +# $ cho_quid.position = "above" +# $ cho_quid.lock_training = False +# $ cho_favors_unlocked = True +# return diff --git a/game/scripts/interface/color_picker.rpy b/game/scripts/interface/color_picker.rpy new file mode 100644 index 00000000..684529b9 --- /dev/null +++ b/game/scripts/interface/color_picker.rpy @@ -0,0 +1,456 @@ +default color_history = [] +default color_favorites = [[167, 77, 42, 255], [237, 179, 14, 255], [89, 116, 194, 255], [216, 163, 10, 255], [58, 115, 75, 255], [205, 205, 206, 255], [251, 198, 10, 255], [51, 43, 54, 255]] + +screen color_picker(color, alpha, title, pos_xy, color_default): + tag color_picker + zorder 25 + modal True + + # Screen variables + default rgba = color + default rgba_old = color + default hue = 0 + default sat = 0 + default val = 0 + default _alpha = 0 # Avoid name conflict with 'alpha' screen variable in other active screens + default edit_mode = False + default preview_old = Solid(rgba) + $ preview_new = Solid(rgba) + $ gradient_map = SVGradientButton( + color_picker_clicked, + Fixed( + Color( tuple( x * 255 for x in colorsys.hsv_to_rgb(1 - hue, 1, 1) ) ), + Frame("interface/color_picker/saturation_value_gradient.webp") + ), + xysize=(255, 255), + #area=(25, 25, 255, 255), + focus_mask=None, + keyboard_focus=False, + key_events=False + ) + + default icon_frame = Frame(gui.format("interface/frames/{}/iconframe.webp"), 6, 6) + default icon_transparent = Frame("interface/color_picker/checker.webp", tile=True) + default slider_thumb = Image(gui.format("interface/color_picker/{}/cursor_h.webp"), xalign=0.5) + + # Set HSVA variables based on RGBA when screen shows + on "show" action Function(color_picker_update_hsva) + + if not renpy.get_screen("wardrobe"): + add "confirm_fade" + + frame: + style_prefix gui.theme() + if pos_xy and False: + pos pos_xy + else: + align (0.5, 0.5) + padding (18, 18) + + vbox: + spacing 12 + + # Colour swatches + hbox: + ysize 80 + spacing 12 + vbox: + spacing 12 + #pos (0,0) + + hbox: + spacing 12 + text "Colour swatches" + textbutton "Edit": + yoffset -4 + text_size 12 + action [SelectedIf(edit_mode),ToggleScreenVariable("edit_mode", True, False)] + hbox: + spacing 2 + for i in range(8): + $ is_valid = (i < len(color_favorites)) + $ background = Fixed(icon_transparent, Color(tuple(color_favorites[i])), icon_frame) if is_valid else icon_frame + + if edit_mode: + if is_valid: + $ action = Return(["rem_swatch", i]) + $ icon = Text("X", color="#b20000", align=(0.5, 0.5), outlines=[(1, "#000", 0, 0)]) + $ tooltip = "Remove" + else: + $ action = Return(["add_swatch", list(rgba)]) + $ icon = Image("interface/icons/small/star_yellow.webp", align=(0.5, 0.5)) + $ tooltip = "Add" + elif is_valid: + $ action = Return(["use_swatch", color_favorites[i]]) + $ icon = None + $ tooltip = "Select" + + button: + xysize (32, 32) + background background + hover_foreground "#ffffff80" + tooltip tooltip + action action + add icon + + vbox: + text "History" + frame: + xsize 140 + background icon_frame + viewport id "history": + scrollbars "vertical" + mousewheel True + draggable False + pagekeys True + side_yfill True + vbox: + for c in color_history[::-1]: + textbutton rgba_to_hex(c): + style "empty" + xfill True + ysize 16 + text_size 11 + text_color "#000" + text_hover_color "#fff" + text_outlines [(1, "#fff", 0, 0)] + text_hover_outlines [(1, "#000", 0, 0)] + text_align (0.5, 0.5) + background Color(tuple(c)) + action Return(["history", c]) + + # Colour picker + text title xalign 0.5 text_align 0.5 + + hbox: + spacing 12 + + fixed: + xysize (255, 255) + fit_first True + add gradient_map + + add icon_frame + + draggroup: + # Allow cursor to extend 8 pixels outside map + area (-8, -8, 255 + 16, 255 + 16) + drag: + pos (int(sat * 253), int((1 - val) * 253)) + anchor (0, 0) + child gui.format("interface/color_picker/{}/cursor_sq.webp") + focus_mask None + dragged color_picker_dragged + + # Hue slider + # frame: + # margin (-6, -6) + fixed: + fit_first True + add hue_gradient_image + vbar: + xysize (30, 255) + value ScreenVariableValue("hue", range=1.0, action=Function(color_picker_update_rgba)) + base_bar icon_frame + thumb slider_thumb + thumb_offset 0 + top_gutter 0 + bottom_gutter 0 + + vbox: + xysize (110, 255) + fixed: + yfill False + fit_first True + + # TODO: Merge RGB(A) input into a single action, add HEX(A) and add copy/paste functionality + vbox: + textbutton "Red: " + str(int(rgba[0])): + xfill True + size_group "rgba" + text_size 12 + clicked Return(["input", 0]) + textbutton "Green: " + str(int(rgba[1])): + size_group "rgba" + text_size 12 + clicked Return(["input", 1]) + textbutton "Blue: " + str(int(rgba[2])): + size_group "rgba" + text_size 12 + clicked Return(["input", 2]) + if alpha: + textbutton "Alpha: " + str(int(rgba[3])): + size_group "rgba" + text_size 12 + clicked Return(["input", 3]) + if color_default: + textbutton "Reset": + size_group "rgba" + text_size 12 + text_xalign 0.5 + clicked Return("reset") + add icon_frame + + # Selected color + fixed: + fit_first True + xysize (110, 110) + yalign 1.0 + add Frame("interface/color_picker/checker.webp", tile=True, ) + frame: + area (0, 0, 55, 110) + background preview_new + text "New" xalign 0.5 color "#fff" outlines [(1, "#00000080", 1, 0)] + frame: + area (55, 0, 55, 110) + background preview_old + text "Old" xalign 0.5 color "#fff" outlines [(1, "#00000080", 1, 0)] + add icon_frame + + if alpha: + # Opacity slider + fixed: + xysize (255, 30) + fit_first True + add Fixed(Frame("interface/color_picker/checker.webp", tile=True), + Transform(alpha_gradient_image, matrixcolor=ColorizeMatrix(rgba, rgba))) + bar: + xysize (255, 30) + value ScreenVariableValue("_alpha", range=1.0, action=NullAction()) # Function(color_picker_update_rgba) + base_bar icon_frame + thumb Image(gui.format("interface/color_picker/{}/cursor_v.webp"), xalign=0.5) + thumb_offset 0 + top_gutter 0 + bottom_gutter 0 + + # Window buttons + hbox: + align (1.0, 1.0) + spacing 6 + textbutton "Cancel" action Return("cancel") + textbutton "Apply" action Return(["apply", rgba]) + +default picking_color = None + +define alpha_gradient_image = AlphaSlider() +define hue_gradient_image = HueSlider() + +init -1 python: + + def color_picker(color=[0,0,0,0], alpha=True, title="Pick a colour", pos_xy=(240, 130), color_default=None): + # TODO: Remove external dependencies and utilise built-in Color class instead. + + global picking_color + picking_color = color # Color object (list) to be updated live + start_color = list(color) # Keep a copy + + renpy.show_screen("color_picker", tuple(color), alpha, title, pos_xy, color_default) + while True: + _return = ui.interact() + + if _return[0] == "input": + color_picker_input(_return[1]) + + elif _return == "reset": + scope = renpy.get_screen("color_picker").scope + scope["rgba"] = tuple(color_default) + color_picker_update_hsva() + update_picking_color(color_default) + + elif _return[0] == "use_swatch": + scope = renpy.get_screen("color_picker").scope + scope["rgba"] = tuple(_return[1]) + color_picker_update_hsva() + update_picking_color(_return[1]) + + elif _return[0] == "add_swatch": + color_picker_add(_return[1]) + + elif _return[0] == "rem_swatch": + color_picker_rem(_return[1]) + + elif _return[0] == "history": + scope = renpy.get_screen("color_picker").scope + scope["rgba"] = tuple(_return[1]) + color_picker_update_hsva() + update_picking_color(_return[1]) + + elif _return == "cancel": + hide_color_picker() + update_picking_color(start_color) # Reset live color object + picking_color = None + return start_color + + elif _return[0] == "apply": + hide_color_picker() + picking_color = None + return color # Return live color object instead of _return tuple + + def hide_color_picker(): + renpy.hide_screen("color_picker") + + def update_picking_color(rgba): + global picking_color + for (i, x) in enumerate(rgba): + picking_color[i] = x + + def color_picker_input(comp): + scope = renpy.get_screen("color_picker").scope + x = renpy.input(["Red", "Green", "Blue", "Alpha"][comp], str(scope["rgba"][comp]), "0123456789", length=3) + x = max(0, min(255, int(x))) + tuplist = list(scope["rgba"]) + tuplist[comp] = x + scope["rgba"] = tuple(tuplist) + color_picker_update_hsva() + update_picking_color(scope["rgba"]) + + def color_picker_update_hsva(): + scope = renpy.get_screen("color_picker").scope + (r, g, b, a) = scope["rgba"] + (h, s, v) = colorsys.rgb_to_hsv(r / 255.0, g / 255.0, b / 255.0) + scope["hue"] = 1 - h + scope["sat"] = s + scope["val"] = v + scope["_alpha"] = a / 255.0 + + def color_picker_update_rgba(): + scope = renpy.get_screen("color_picker").scope + (r, g, b) = colorsys.hsv_to_rgb(1 - scope["hue"], scope["sat"], scope["val"]) + r = int(r * 255) + g = int(g * 255) + b = int(b * 255) + a = int(scope["_alpha"] * 255) + scope["rgba"] = (r, g, b, a) + update_picking_color(scope["rgba"]) + renpy.restart_interaction() + + #def color_picker_clicked(offset, size): + def color_picker_clicked(x, y, size): + # Mouse screen position to local position + # (x, y) = renpy.get_mouse_pos() + # x = max(0, min(x - offset[0], size[0])) + # y = max(0, min(y - offset[1], size[1])) + # Update screen variables + scope = renpy.get_screen("color_picker").scope + scope["sat"] = float(x) / size[0] + scope["val"] = 1 - float(y) / size[1] + color_picker_update_rgba() + color_picker_history() + + def color_picker_dragged(drags, drop=None): + # Compensate for draggable area + width = drags[0].parent_width - drags[0].w + height = drags[0].parent_height - drags[0].h + x = drags[0].x + y = drags[0].y + # Update screen variables + scope = renpy.get_screen("color_picker").scope + scope["sat"] = float(x) / width + scope["val"] = 1 - float(y) / height + color_picker_update_rgba() + color_picker_history() + + def color_picker_history(): + global color_history + scope = renpy.get_screen("color_picker").scope + color_history.append(scope["rgba"]) + if len(color_history) > 30: + del color_history[0] + + def color_picker_add(item): + global color_favorites + color_favorites.append(item) + + def color_picker_rem(item): + global color_favorites + del color_favorites[item] + + def rgba_to_hex(c): + return '#%02x%02x%02x%02x' % (c[0], c[1], c[2], c[3]) + + class HueSlider(renpy.Displayable, NoRollback): + def __init__(self, size=(30,255), **properties): + super(HueSlider, self).__init__(**properties) + self.size = size + + def render(self, width, height, st, at): + w, h = self.size + rv = renpy.Render(w, h) + canvas = rv.canvas() + surf = canvas.get_surface() + + for x in xrange(w): + for y in xrange(h): + hue = float(y) / h + r, g, b = Color(hsv=(hue, 1.0, 1.0)).rgb + color = (r * 255, g * 255, b * 255) + surf.set_at((x, y), color) + + #surf = renpy.display.scale.smoothscale(surf, (w, h)) + + rv.blit(surf, (0, 0)) + + return rv + + def event(self, ev, x, y, st): + return + + class AlphaSlider(renpy.Displayable, NoRollback): + def __init__(self, size=(255,30), **properties): + super(AlphaSlider, self).__init__(**properties) + self.size = size + + def render(self, width, height, st, at): + w, h = self.size + rv = renpy.Render(w, h) + canvas = rv.canvas() + surf = canvas.get_surface() + + for x in xrange(w): + for y in xrange(h): + hue = float(y) / h + color = (255.0, 255.0, 255.0, x) + surf.set_at((x, y), color) + + #surf = pygame.transform.scale(surf, (w, h)) + + rv.blit(surf, (0, 0)) + + return rv + + def event(self, ev, x, y, st): + return + + class GradientImageBase(im.ImageBase): + def __init__(self, **properties): + super(GradientImageBase, self).__init__(**properties) + self.size = properties.get('size') + self.cached_surf = None + + class SVGradientButton(ImageButton): + + def __init__(self, on_click, idle_image, *args, **kwargs): + kwargs['sensitive'] = True + kwargs['action'] = NullAction() + super(SVGradientButton, self).__init__(idle_image, *args, **kwargs) + self.width = 0 + self.height = 0 + self.on_click = on_click + + def render(self, width, height, st, at): + rv = super(SVGradientButton, self).render(width, height, st, at) + self.width, self.height = rv.get_size() + return rv + + def event(self, ev, x, y, st): + if ev.type == pygame.MOUSEBUTTONUP and 0 <= x <= self.width and 0 <= y <= self.height: + self.on_click(x, y, (self.width, self.height)) + + return super(SVGradientButton, self).event(ev, x, y, st) + +# image testsurface = HueSlider() + +# screen testzone(): +# tag testzone +# zorder 1000 +# add "testsurface" #align (0.5, 0.5) diff --git a/game/scripts/interface/credits.rpy b/game/scripts/interface/credits.rpy new file mode 100644 index 00000000..ea86d4cf --- /dev/null +++ b/game/scripts/interface/credits.rpy @@ -0,0 +1,143 @@ +init python: + def credits_title(title): + return "{k=5.0}{size=+15}{outlinecolor=#842500}{color=#f9a001}{{" + title + "}{/color}{/outlinecolor}{/size}{/k}\n" + + def credits_group(*lines): + return "".join(map(lambda x: "{k=1.5}"+x+"{/k}\n", lines)) + +define credits_text = "\n".join([ + "{image=credits_title}\n{vspace=200}", + credits_title("Artwork"), + credits_group("Soggy", "DostojevskijSTG", "LoafyLemon", "Noodle", "perniciousducks", "KitsuneArts", "BopJp"), + credits_title("Writing"), + credits_group("Johnny", "MadMerlin", "Livvypoo", "Mo"), + credits_title("Programming"), + credits_group("Asease1", "LoafyLemon", "TropeCode"), + credits_title("Music"), + credits_group( + "Kevin MacLeod\n{size=-5}{color=#808080}{k=0.7}\"Anguish\"\n\"Awkward Meeting\"\n\"Deadly Roulette\"\n\"Brittle Rille\"\n\"Firebrand\"\n\"Chipper Doodle v2\"\n\"Dark Fog\"\n\"Despair\"\n\"Game Over Theme\"\n\"Boss Theme\"\n\"Hitman\"\n\"Music for Manatees\"\n\"Plaint\"\n\"Fuzzball Parade\"\n\"Teddy Bear Waltz\"\n\"Scheming Weasel (Slower version)\"\n\"Open Those Bright Eyes\"\n\"Wallpaper\"\n\"Hidden Agenda\"\n\"Aquarium\"\n\"Court of the Queen\"\n\"Machinations\"\n\"Brandenburg Concerto No. 4 in G, Movement I (Allegro), BWV 1049\"\n\"March of the spoons\"\n\"The other side of the door\"{/k}{/color}{/size}\n", + "PhobyAk\n{size=-5}{color=#808080}{k=0.7}\"Under-the-radar\"{/k}{/color}{/size}\n", + "Shadow16nh\n{size=-5}{color=#808080}{k=0.7}\"Playful Tension (Orchestral)\"{/k}{/color}{/size}\n", + "controllerhead\n{size=-5}{color=#808080}{k=0.7}\"Item Shop\"{/k}{/color}{/size}\n", + "jrayteam6\n{size=-5}{color=#808080}{k=0.7}\"Grape Soda is Fucking Raw\"{/k}{/color}{/size}\n", + "Juhani Junkala\n{size=-5}{color=#808080}{k=0.7}Retro Game Music Pack:\n\"Title Screen\"\n\"Level 1\"\n\"Level 3\"{/k}{/color}{/size}\n", + "Snabisch\n{size=-5}{color=#808080}{k=0.7}Only 115 (Dance Loop){/k}{/color}{/size}\n", + "Nene\n{size=-5}{color=#808080}{k=0.7}Boss Battle #2{/k}{/color}{/size}\n" + ), + credits_title("Special Thanks"), + credits_group( + "{size=+4}Akabur{/size}", + "{color=#808080}{size=-5}{k=0.7}Creator of the original Witch Trainer and other awesome games! {a=https://www.patreon.com/akabur}PATREON{/a}{/size}{/color}{/k}\n", + "Dr. Lupin", "Lineup", "MaiL", "MedicBear", "STG Anon", "Booom313", "Sandmaster", "Pinguino", "UE Crew", "Catbug", "CaptainNemo", "Artguy", "Linear", "Amadan", "Anons", "Heretic", "Maverick", "Cleanzo", "Techy", "Zuel32", "Darwin7", "Ven" + ), +"""{vspace=100} +\n\n +Special thanks\n +to the fans, discord moderators\n +and {a=https://www.patreon.com/SilverStudioGames/}patreon supporters{/a} {image=images/misc/heart.webp} +\n\n +{image=credits_logo}\n +{vspace=100} +\n\n +Thank you for playing! +\n\n +{image=credits_genie}""" +]) + +define credits_width = 700 + +define credits_duration = 45 + +define credits_chibis = ( + (Transform("ch_sna wand_defend", xzoom=-1), 1, 12, True), + ("ch_sna jerk_off", 15, 8, False), + ("ch_hem run", 17, 6, True), + (Transform("hj", zoom=2, crop=(225,200,200,235)), 25, 8, True), +) + +label credits: + if not _menu: + play music "music/Only 115 (Electro Loop)_125 BPM.ogg" fadein 1 fadeout 1 + call hide_screens + show screen credits(credits_text) + with dissolve + call update_interface_color("gray") + $ achievements.unlock("Credits") + pause credits_duration + if not _menu: + stop music fadeout 3 + call ctc + hide screen credits + with dissolve + + if _menu: + # play music config.main_menu_music fadein 1 fadeout 3 + jump main_menu_screen + else: + return + +# Workaround for centered images, because text_align doesn't work + +image credits_title: + size (credits_width, 200) + contains: + "images/logo/title.webp" + fit "contain" + xalign 0.5 + +image credits_logo: + size (credits_width, 50) + contains: + "images/logo/silverstudiogames.webp" + fit "contain" + xalign 0.5 + +image credits_genie: + size (credits_width, 300) + contains: + "characters/genie/mage9.webp" + fit "contain" + xalign 0.5 + +transform credits_chibi_fade(start, duration): + alpha 0 + pause start + linear 0.5 alpha 1.0 + pause duration + linear 0.5 alpha 0.0 + +transform credits_scroll(duration): + subpixel True + + xalign 0.5 + yanchor 0.0 + ypos (config.screen_height / 2 - 125) + pause 1 + parallel: + linear (duration - 1) yanchor 1.0 + parallel: + linear (duration - 1) ypos (config.screen_height + 50) + +screen credits(credits=credits_text, duration=credits_duration, chibis=credits_chibis): + tag credits + zorder 20 + + add Solid("#000") + + for img, t, d, left in chibis: + add img: + at credits_chibi_fade(t, d) + zoom 0.5 + if left: + pos (20, config.screen_height - 20) + align (0.0, 1.0) + else: + pos (config.screen_width - 20, config.screen_height - 20) + align (1.0, 1.0) + + text credits: + at credits_scroll(duration) + xsize credits_width + text_align 0.5 + color "#fff" + outlines [(2, "#000", 0, 0)] diff --git a/game/scripts/interface/door.rpy b/game/scripts/interface/door.rpy new file mode 100644 index 00000000..9b1c696e --- /dev/null +++ b/game/scripts/interface/door.rpy @@ -0,0 +1,142 @@ +#################################### +############# Menu ################# +#################################### + +default summon_show_busy = True + +label summon: + $ gui.in_context("summon_menu") + jump main_room_menu + +label summon_menu(xx=723, yy=90): + + call update_stats + + $ map_transcript_loc = {"library": "Library", "room_g": "Gryffindor Dormitory", "room_s": "Slytherin Dormitory", "room_r": "Ravenclaw Dormitory", "room_h": "Hufflepuff Dormitory", "great_hall": "Great Hall", "courtyard": "Courtyard", "forest": "Forest", "greenhouse": "Greenhouse", "defense": "D.A.D.A Classroom", "training_grounds": "Training Grounds", "Lake": "Lake", "randomstudent": renpy.random.choice(["Classroom", "Bathroom", "Hagrid's Hut", "Weasley's Store", "Mafkin's Store", "Broom Cupboard", "Attic"]), "randomsnape": renpy.random.choice(["Classroom", "Boathouse", "Bathroom", "Snape's Office", "Hall", "Slytherin Dormitory", "Library", "Attic", "Forest", "Lake", "Dungeons", "Quidditch Cave", "Staircase", "Behind your door", "Room of Doom"]), "randomtonks": renpy.random.choice(["Classroom", "Bathroom", "Hall", "Gryffindor Dormitory", "Slytherin Dormitory", "Hufflepuff Dormitory", "Ravenclaw Dormitory", "Training Grounds", "Tonks' Room", "Quidditch Pitch", "Infirmary", "Sex Dungeon", "Hospital Wing", "Forest", "Lake", "Greenhouse", "Mafkin's Store"])} + + # Door dictionary + $ summon_dict = { + "Snape": {"ico": "snape", "flag": snape_unlocked, "busy": snape_busy, "loc": "randomsnape"}, + "Tonks": {"ico": "tonks", "flag": tonks_unlocked, "busy": tonks_busy, "loc": "randomtonks"}, + "Hermione": {"ico": "hermione", "flag": hermione_unlocked, "busy": hermione_busy, "loc": her_map_location}, + "Cho": {"ico": "cho", "flag": cho_unlocked, "busy": cho_busy, "loc": cho_map_location}, + "Luna": {"ico": "luna", "flag": luna_unlocked, "busy": luna_busy, "loc": lun_map_location}, + "Astoria": {"ico": "astoria", "flag": astoria_unlocked, "busy": astoria_busy, "loc": ast_map_location}, + "Susan": {"ico": "susan", "flag": susan_unlocked, "busy": susan_busy, "loc": sus_map_location} + } + + $ summon_categories_sorted = ["Snape", "Tonks", "Hermione", "Cho", "Luna", "Astoria", "Susan"] #"Ginny", "Daphne", "Padma", "Patil", "Myrtle", "Mafkin" + $ summon_categories_sorted_length = len(summon_categories_sorted) + + $ current_sorting = summon_show_busy + + label .after_init: + + show screen summon(xx, yy) + + $ _choice = ui.interact() + + if _choice[0] == "summon": + hide screen summon + if not _choice[2]: + $ enable_game_menu() + $ renpy.jump_out_of_context("summon_"+_choice[1].lower()) + else: + if game.daytime or _choice[1] in ["Tonks", "Snape"]: + call nar(">"+_choice[1]+" is currently busy. Try again later.") + else: + call nar(">"+_choice[1]+" is currently asleep. Try again tomorrow.") + else: + hide screen summon + return + + jump .after_init + +screen summon(xx, yy): + tag summon + zorder 15 + modal True + + add "gui_fade" + + if renpy.mobile: + use close_button_background + use close_button(key=["summon", "game_menu"]) + + fixed: + if settings.get("animations"): + at gui_animation + use summon_menu(xx, yy) + +screen summon_menu(xx, yy): + tag summon_menu + modal True + zorder 15 + + window: + style "empty" + pos (xx, yy) + xysize (207, 454) + + use invisible_button() + + add gui.format("interface/achievements/{}/panel_left.webp") + + vbox: + pos (6, 384) + spacing 32 + + null + frame: + style "empty" + textbutton "Show Busy:": + style gui.theme("overlay_button") + xsize 195 ysize 32 + text_align (0.4, 0.5) + text_size 12 + action ToggleVariable("summon_show_busy", True, False) + add gui.theme("check_{}").format(str(summon_show_busy).lower()) xalign 0.7 ypos 4 + + vbox: + pos (6, 6) + $ tmp_x = 0 + for char in summon_categories_sorted: + if summon_dict[char]["flag"]: + if summon_show_busy or not summon_dict[char]["busy"]: + $ tmp_x += 1 + frame: + style "empty" + xsize 195 + ysize 50 + vbox: + textbutton char: + style "empty" + xsize 195 ysize 46 + hover_background gui.format("interface/achievements/{}/highlight_left_b.webp") + text_xalign 0.6 text_yalign 0.5 + text_xanchor 0.5 + text_size 20 + if not summon_dict[char]["busy"]: + action Return(["summon", char, False]) + else: + text_color "#8C8C70" + action Return(["summon", char, True]) + + add gui.format("interface/achievements/{}/spacer_left.webp") + + $ image_zoom = crop_image_zoom("interface/icons/head/"+summon_dict[char]["ico"]+".webp", 42, 42, summon_dict[char]["busy"]) + + button: + style gui.theme("overlay_button") + background gui.format("interface/achievements/{}/iconbox.webp") + foreground "interface/achievements/glass_iconbox.webp" + xysize (48, 48) + add image_zoom align (0.5, 0.5) + + text map_transcript_loc[summon_dict[char]["loc"]] size 10 xalign 0.625 yalign 0.9 xanchor 0.5 + + if not snape_unlocked: + text "You don't know anyone" size 12 at truecenter + else: + if tmp_x <= 0: + text "All characters are busy" size 12 at truecenter diff --git a/game/scripts/interface/gameover.rpy b/game/scripts/interface/gameover.rpy new file mode 100644 index 00000000..64f83b8a --- /dev/null +++ b/game/scripts/interface/gameover.rpy @@ -0,0 +1,120 @@ +label gameover(fake=False, autohide=True): + + # Fade to black + $ renpy.pause(0.5, hard=True) + + hide screen cartoon_zoom + show screen gameover + hide screen blkfade + with d9 + + $ renpy.pause(0.5, hard=True) + $ renpy.play('sounds/jail_door.ogg') + $ renpy.pause(1.2, hard=True) + with hpunch + $ renpy.pause(1.3, hard=True) + $ renpy.play('sounds/killswitch_on.ogg') + + if autohide: + $ renpy.pause(4.0, hard=True) + + if fake: + show screen blkfade + with d9 + + $ renpy.pause(0.9, hard=True) + + play music "music/Only 115 (Electro Loop)_125 BPM.ogg" fadein 0.5 fadeout 1 + + hide screen gameover + hide screen blkfade + show screen credits(fake_credits_text, 30) + with blinds + + $ renpy.pause(12, hard=True) + + hide screen credits + with None + + if autohide: + hide screen gameover + return + +define fake_credits_text = "\n".join([ + "{image=images/logo/title.webp}{vspace=200}", + credits_title("Director"), + credits_group("The Orchestrator of Sex"), + credits_title("Artists"), + credits_group("A Professional Pervert", "The Purveyor of Pencils", "The Deviant Drawer", "A Painter of Filth"), + credits_title("Writers"), + credits_group("The Scribbler of smut", "The Lore keeper of Whores"), + credits_title("Programmers"), + credits_group("The Engineer of ecstasy", "A Tits Techie", "A guy that gets erect from calculator spelling boobs"), + credits_title("Music"), + credits_group( + "Happy Rooster OST\n{size=-5}{color=#808080}{k=0.7}\"Shanghai Honey\"\n\"Introducing Colin\"{/k}{/color}{/size}\n", + "Music Dude#1\n{size=-5}{color=#808080}{k=0.7}\"Anguish\"\n\"Awkward Meeting\"\n\"Brittle Rille\"\n\"Chipper Doodle v2\"\n\"Dark Fog\"\n\"Despair\"\n\"Game Over Theme\"\n\"Boss Theme\"\n\"Hitman\"\n\"Music for Manatees\"\n\"Plaint\"\n\"Fuzzball Parade\"\n\"Teddy Bear Waltz\"\n\"Scheming Weasel (Slower version)\"\n\"Open Those Bright Eyes\"{/k}{/color}{/size}\n", + "Music Dude#2\n{size=-5}{color=#808080}{k=0.7}\"Under-the-radar\"{/k}{/color}{/size}\n", + "Music Dude#3\n{size=-5}{color=#808080}{k=0.7}\"Playful Tension (Orchestral)\"{/k}{/color}{/size}\n", + "Music Dude#4\n{size=-5}{color=#808080}{k=0.7}\"Item Shop\"{/k}{/color}{/size}\n", + "Music Dude#5\n{size=-5}{color=#808080}{k=0.7}\"Grape Soda is Fucking Raw\"{/k}{/color}{/size}\n", + "Music Dude#5\n{size=-5}{color=#808080}{k=0.7}Retro Game Music Pack:\n\"Title Screen\"\n\"Level 1\"\n\"Level 3\"{/k}{/color}{/size}" + ), + credits_title("Special Thanks"), + credits_group("{size=+4}Pervert#1{/size}\n{color=#808080}{size=-5}{k=0.7}Creator of the original Witch Trainer and other awesome games! {a=https://www.patreon.com/akabur}PATREON{/a}{/size}{/color}\n{/k}", "Pervert#2", "Pervert#3", "Pervert#4", "Pervert#5", "Pervert#6", "Pervert#7", "Pervert#8", "Pervert#9", "Pervert#10", "Pervert#11", "Pervert#12", "Pervert#13", "Pervert#14", "Pervert#15", "Pervert#16", "Pervert#17", "Pervert#18", "Pervert#19", "Pervert#20", "Pervert#21"), + "\nSpecial thanks to our pervs, discord perverators and {a=https://www.patreon.com/SilverStudioGames/}perverted supporters{/a} {image=images/misc/heart.webp}\n\n", + "{image=images/logo/silverstudiogames.webp}\n" + "\n{space=220}{image=characters/genie/mage9.webp}{rb}{space=-60}Thanks for cumin!{/rb}" +]) + +screen cartoon_zoom(): + tag gameover + zorder 32 # Above saybox + + button style "empty" action NullAction() + + add "images/misc/circle_cartoon.webp": + at transform: + xanchor 0.1 + yanchor 0.9 + xpos 108 + ypos 540 + yoffset 1300 + xzoom 24.0 + yzoom 24.0 + easein_quart 5.0 xzoom 1.0 yzoom 1.0 yoffset 0 + + add Solid("#000000"): + at transform: + alpha 0.0 + pause 5.0 + linear 1.0 alpha 1.0 + +screen gameover(): + tag gameover + zorder 20 + + button style "empty" action NullAction() + + add Solid("#000000") + add "images/misc/gameover.webp": + at transform: + alpha 0.0 + pause 1.0 + linear 2.0 alpha 1.0 + add Solid("#000000"): + at transform: + alpha 0.5 + pause 4.8 + alpha 0.0 + add "images/misc/light.webp": + at transform: + alpha 0.0 + pause 4.8 + alpha 1.0 + + add "images/misc/folks.webp": + at transform: + alpha 0.0 + pause 4.8 + alpha 1.0 diff --git a/game/scripts/interface/gifts.rpy b/game/scripts/interface/gifts.rpy new file mode 100644 index 00000000..7dd08adf --- /dev/null +++ b/game/scripts/interface/gifts.rpy @@ -0,0 +1,21 @@ +label gift_menu: + $ inventory_mode = 1 + $ gui.in_context("inventory_menu") + $ inventory_mode = 0 + return + +label give_gift(text, gift): + show screen gift(gift) + with d3 + "[text]" + hide screen gift + with d3 + $ gift.owned -= 1 + +screen gift(gift): + zorder 30 + + if isinstance(gift, Item): + add gift.get_image() align (0.5, 0.4) zoom get_zoom(gift.get_image(), (320, 320)) + else: + add gift align (0.5, 0.4) zoom get_zoom(gift, (320, 320)) diff --git a/game/scripts/interface/hotkeys.rpy b/game/scripts/interface/hotkeys.rpy new file mode 100644 index 00000000..7387865f --- /dev/null +++ b/game/scripts/interface/hotkeys.rpy @@ -0,0 +1,174 @@ + +init -100 python: + # Custom hotkeys + + config.keymap = dict( + + # Custom + + map = ["K_m"], + work = ["K_w"], + stats = ["K_c"], + inventory = ["K_i"], + sleep = ["K_s"], + fap = ["K_f"], + summon = ["K_d"], + + # Bindings present almost everywhere, unless explicitly disabled. + rollback = ["K_PAGEUP", "repeat_K_PAGEUP", "K_AC_BACK", "mousedown_4"], + screenshot = ["K_PRINT"], + #toggle_afm = [], + toggle_fullscreen = ["alt_K_RETURN", "alt_K_KP_ENTER", "K_F11"], + game_menu = ["K_ESCAPE", "K_MENU", "K_PAUSE", "mouseup_3"], + hide_windows = ["mouseup_2", "h", "noshift_K_h"], + help = ["K_F1", "meta_shift_/"], + choose_renderer = ["alt_shift_K_g", "shift_K_g"], + progress_screen = ["alt_shift_K_p", "meta_shift_K_p", "K_F2"], + accessibility = ["shift_K_a"], + + # Accessibility. + self_voicing = ["shift_K_v"], + clipboard_voicing = ["alt_shift_K_c", "shift_K_c"], + debug_voicing = ["alt_shift_K_v", "meta_shift_K_v"], + + # Say. + rollforward = ["mousedown_5", "K_PAGEDOWN", "repeat_K_PAGEDOWN"], + dismiss = ["mouseup_1", "K_RETURN", "K_SPACE", "K_KP_ENTER", "K_SELECT"], + dismiss_unfocused = [], + + # Focus. + focus_left = ["K_LEFT", "repeat_K_LEFT"], + focus_right = ["K_RIGHT", "repeat_K_RIGHT"], + focus_up = ["K_UP", "repeat_K_UP"], + focus_down = ["K_DOWN", "repeat_K_DOWN"], + + # Button. + button_ignore = ["mousedown_1"], + button_select = ["mouseup_1", "K_RETURN", "K_KP_ENTER", "K_SELECT"], + button_alternate = ["mouseup_3"], + button_alternate_ignore = ["mousedown_3"], + + # Input. + input_backspace = ["K_BACKSPACE", "repeat_K_BACKSPACE"], + input_enter = ["K_RETURN", "K_KP_ENTER"], + input_left = ["K_LEFT", "repeat_K_LEFT"], + input_right = ["K_RIGHT", "repeat_K_RIGHT"], + input_up = ["K_UP", "repeat_K_UP"], + input_down = ["K_DOWN", "repeat_K_DOWN"], + input_delete = ["K_DELETE", "repeat_K_DELETE"], + input_home = ["K_HOME"], + input_end = ["K_END"], + input_copy = ["ctrl_noshift_K_INSERT", "ctrl_noshift_K_c"], + input_paste = ["shift_K_INSERT", "ctrl_noshift_K_v"], + + # Viewport. + viewport_leftarrow = ["K_LEFT", "repeat_K_LEFT"], + viewport_rightarrow = ["K_RIGHT", "repeat_K_RIGHT"], + viewport_uparrow = ["K_UP", "repeat_K_UP"], + viewport_downarrow = ["K_DOWN", "repeat_K_DOWN"], + viewport_wheelup = ["mousedown_4"], + viewport_wheeldown = ["mousedown_5"], + viewport_drag_start = ["mousedown_1"], + viewport_drag_end = ["mouseup_1"], + viewport_pageup = ["K_PAGEUP", "repeat_K_PAGEUP"], + viewport_pagedown = ["K_PAGEDOWN", "repeat_K_PAGEDOWN"], + + # These keys control skipping. + skip = ["K_LCTRL", "K_RCTRL"], + stop_skipping = [], + toggle_skip = ["K_TAB"], + fast_skip = [">", "shift_K_PERIOD"], + + # Bar. + bar_activate = ["mousedown_1", "K_RETURN", "K_KP_ENTER", "K_SELECT"], + bar_deactivate = ["mouseup_1", "K_RETURN", "K_KP_ENTER", "K_SELECT"], + bar_left = ["K_LEFT", "repeat_K_LEFT"], + bar_right = ["K_RIGHT", "repeat_K_RIGHT"], + bar_up = ["K_UP", "repeat_K_UP"], + bar_down = ["K_DOWN", "repeat_K_DOWN"], + + # Delete a save. + save_delete = ["K_DELETE"], + + # Draggable. + drag_activate = ["mousedown_1"], + drag_deactivate = ["mouseup_1"], + + # Debugging and development. + editor = ["K_F5"], + reload_game = ["shift_K_r"], + console = ["shift_K_o", "alt_shift_K_o", "K_BACKQUOTE"], + console_older = ["K_UP", "repeat_K_UP"], + console_newer = ["K_DOWN", "repeat_K_DOWN"], + #director = ["noshift_K_d"], + #launch_editor = ["E", "shift_K_e"], + #dump_styles = [], + #developer = ["shift_K_d", "alt_shift_K_d"], + #quit = [], + #iconify = [], + #inspector = ["I", "shift_K_i"], + full_inspector = ["alt_shift_K_i"], + dismiss_hard_pause = ["K_PAUSE", "K_BREAK"], + + # Ignored (kept for backwards compatibility). + toggle_music = ["m"], + viewport_up = ["mousedown_4"], + viewport_down = ["mousedown_5"], + + # Profile commands. + performance = ["K_F3"], + image_load_log = ["K_F4"], + profile_once = ["K_F8"], + memory_profile = ["K_F7"], + ) + + def _hide_windows(): + global _windows_hidden + _windows_hidden = not _windows_hidden + renpy.restart_interaction() + + _default_keymap = renpy.Keymap( + rollback = renpy.rollback, + screenshot = _screenshot, + toggle_fullscreen = renpy.toggle_fullscreen, + #toggle_afm = _keymap_toggle_afm, + toggle_skip = _keymap_toggle_skipping, + fast_skip = _fast_skip, + game_menu = _invoke_game_menu, + hide_windows = _hide_windows, + #launch_editor = _launch_editor, + reload_game = _reload_game, + #developer = _developer, + quit = renpy.quit_event, + #iconify = renpy.iconify, + help = _help, + choose_renderer = ShowMenu("preferences", page="visuals"), + console = _console.enter, + profile_once = _profile_once, + memory_profile = _memory_profile, + self_voicing = Preference("self voicing", "toggle"), + clipboard_voicing = Preference("clipboard voicing", "toggle"), + debug_voicing = Preference("debug voicing", "toggle"), + progress_screen = _progress_screen, + #director = director.Start(), + performance = ToggleScreen("_performance"), + accessibility = ShowMenu("preferences", page="accessibility"), + editor = ToggleScreen("editor"), + ) + + config.underlay = [ _default_keymap ] + +# Add hotkeys to main_room screen (_main_room_.rpy) +screen hotkeys_main(): + tag hotkeys_main + + if map_unlocked: + key "map" action Jump("desk") + if letter_work_unlock.read: + key "work" action Jump("paperwork") + + key "stats" action Jump("stats") + key "inventory" action Jump("inventory") + key "fap" action Jump("jerk_off") + key "summon" action Jump("door") + key "sleep" action If(game.daytime, Jump("night_start"), Jump("day_start")) diff --git a/game/scripts/interface/house_points.rpy b/game/scripts/interface/house_points.rpy new file mode 100644 index 00000000..bb60d2d6 --- /dev/null +++ b/game/scripts/interface/house_points.rpy @@ -0,0 +1,58 @@ +### House-Points ### + +label points_changes: # Gets called every day/night. + + python: + progress_factor = max(1, int(math.log(game.day) * 5)) + + # Bonuses based on Tonks and Snape friendship stat + # Tonks' is lower since you can do events with her directly to increase points. + bonus_g = her_tier # Passive bonus + bonus_h = int((ton_friendship/100.0) * (progress_factor*0.7)) + bonus_s = int((sna_friendship/100.0) * progress_factor*0.7) + bonus_r = cho_tier + lun_tier # Passive bonus + + leader = max(hufflepuff, ravenclaw, slytherin, gryffindor) + + difference_factor_g = min(leader, round((progress_factor + bonus_g) * max(hufflepuff, ravenclaw, slytherin)/float(gryffindor))) + difference_factor_h = min(leader, round((progress_factor + bonus_h) * max(gryffindor, ravenclaw, slytherin)/float(hufflepuff))) + difference_factor_r = min(leader, round((progress_factor + bonus_r) * max(gryffindor, hufflepuff, slytherin)/float(ravenclaw))) + difference_factor_s = min(leader, round((progress_factor + bonus_s) * max(hufflepuff, ravenclaw, gryffindor)/float(slytherin))) + + points_g = renpy.random.randint(difference_factor_g//2, difference_factor_g) + points_h = renpy.random.randint(difference_factor_h//2, difference_factor_h) + points_r = renpy.random.randint(difference_factor_r//2, difference_factor_r) + points_s = renpy.random.randint(difference_factor_s//2, difference_factor_s) + + gryffindor += points_g + hufflepuff += points_h + ravenclaw += points_r + slytherin += points_s + + hide screen points_changes + show screen points_changes(points_s, points_g, points_r, points_h) + return + +screen points_changes(points_s, points_g, points_r, points_h): + tag points_changes + zorder 35 + + hbox: + spacing 15 + align (0.5, 0.1) + at transform: + on start: + alpha 0.0 + on show: + yoffset 0 + alpha 1.0 + easein 3.0 yoffset -50 alpha 0.0 + + text "+[points_s]" outlines [(1, "#000000BF", 1, 0)] size 24 color "#3A734B" + text "+[points_g]" outlines [(1, "#000000BF", 1, 0)] size 24 color "#A74D2A" + text "+[points_r]" outlines [(1, "#000000BF", 1, 0)] size 24 color "#5974C2" + text "+[points_h]" outlines [(1, "#000000BF", 1, 0)] size 24 color "#FBC60A" + + timer 3.0 action Hide("points_changes") + + diff --git a/game/scripts/interface/inventory.rpy b/game/scripts/interface/inventory.rpy new file mode 100644 index 00000000..916f294b --- /dev/null +++ b/game/scripts/interface/inventory.rpy @@ -0,0 +1,427 @@ +init python: + def inventory_sortfilter(item, sortby="A-z", filtering=None): + if filtering == "Owned": + item = filter(lambda x: x.owned > 0, item) + + # Always sort alphabetically first. + item = sorted(item, key=lambda x: natsort_key(x.name)) + + if sortby == "z-A": + item = sorted(item, key=lambda x: natsort_key(x.name), reverse=True) + elif current_sorting == "Available": + item = sorted(item, key=lambda x: x.owned, reverse=True) + elif current_sorting == "Unavailable": + item = sorted(item, key=lambda x: x.owned) + + return item + +default inventory_mode = 0 # 0 - Inventory, 1 - gifts + +#################################### +############# Menu ################# +#################################### + +label inventory: + $ gui.in_context("inventory_menu") + jump main_room_menu + +label inventory_menu(xx=150, yy=90): + # Inventory dictionary + + if inventory_mode == 0: + $ inventory_dict = { + "Gifts": inventory.get_instances_of_type("gift"), + "Books": inventory.get_instances_of_type("book"), + "Scrolls": inventory.get_instances_of_type("scroll"), + "Ingredients": inventory.get_instances_of_type("ingredient"), + "Potions": inventory.get_instances_of_type("potion"), + "Decorations": inventory.get_instances_of_type("decoration"), + "Quest Items": inventory.get_instances_of_type("quest"), + } + elif inventory_mode == 1: + $ inventory_dict = { + "Gifts": inventory.get_instances_of_type("gift"), + "Potions": inventory.get_instances_of_type("potion"), + "Quest Items": inventory.get_instances_of_type("quest"), + } + + $ items_shown = 36 + $ current_page = 0 + $ current_category = next(iter(inventory_dict.iterkeys())) + $ current_filter = "Owned" + $ current_sorting = "Available" + + $ category_items = inventory_dict[current_category] + $ menu_items = inventory_sortfilter(category_items, current_sorting, current_filter) + $ menu_items_length = len(menu_items) + $ current_item = next(iter(menu_items), None) + + show screen inventory(xx, yy) + + label .after_init: + $ _choice = ui.interact() + + if _choice[0] == "select": + $ current_item = _choice[1] + elif _choice[0] == "category": + $ current_category = _choice[1] + $ category_items = inventory_dict[current_category] + $ menu_items = inventory_sortfilter(category_items, current_sorting, current_filter) + $ menu_items_length = len(menu_items) + + if current_category == "Decorations": + $ menu_items = sorted(menu_items, key=lambda x: x.placement.id) + + $ current_page = 0 + $ current_item = next(iter(menu_items), None) + elif _choice == "inc": + $ current_page += 1 + elif _choice == "dec": + $ current_page += -1 + elif _choice == "sort": + if current_sorting == "A-z": + $ current_sorting = "z-A" + elif current_sorting == "z-A": + $ current_sorting = "Available" + elif current_sorting == "Available": + $ current_sorting = "Unavailable" + else: + $ current_sorting = "A-z" + $ menu_items = inventory_sortfilter(category_items, current_sorting, current_filter) + $ menu_items_length = len(menu_items) + + if current_category == "Decorations": + $ menu_items = sorted(menu_items, key=lambda x: x.placement.id) + + $ current_page = 0 + + if not current_item or not menu_items_length: + $ current_item = next(iter(menu_items), None) + elif _choice == "filter": + if current_filter == None: + $ current_filter = "Owned" + else: + $ current_filter = None + $ menu_items = inventory_sortfilter(category_items, current_sorting, current_filter) + $ menu_items_length = len(menu_items) + + if current_category == "Decorations": + $ menu_items = sorted(menu_items, key=lambda x: x.placement.id) + + $ current_page = 0 + + if not current_item or not menu_items_length: + $ current_item = next(iter(menu_items), None) + elif _choice == "use": + $ enable_game_menu() + $ current_item.use() + elif _choice == "give": + + if current_item.type == "gift": + if getattr(renpy.store, "gave_{}_gift".format(active_girl)): + show screen blktone + with d3 + gen "I already gave her a gift today. Don't want to spoil her too much..." ("base", xpos="far_left", ypos="head") + hide screen blktone + with d3 + else: + hide screen inventory + $ renpy.call(get_character_gift_label(active_girl), current_item) + show screen inventory(xx, yy) + elif current_item.type == "potion": + if not active_girl in current_item.usable_on: + show screen blktone + with d3 + gen "(Something tells me this potion won't work on [active_girl].)" ("base", xpos="far_left", ypos="head") + nar "Perhaps in the future..." + hide screen blktone + with d3 + elif not game.daytime: + show screen blktone + with d3 + gen "(Some grander force tells me I should give it to her during daytime only.)" ("base", xpos="far_left", ypos="head") + hide screen blktone + with d3 + elif get_character_mood(active_girl) > 0: + show screen blktone + with d3 + gen "(I don't think it's a good idea to give it to her when she's still upset with me...)" ("base", xpos="far_left", ypos="head") + gen "(I should wait for her to calm down first.)" ("base", xpos="far_left", ypos="head") + hide screen blktone + with d3 + elif active_girl == "hermione" and not hermione_favors_convinced == 2 and is_in_lead(gryffindor): + show screen blktone + with d3 + + gen "[hermione_name], what would you say--" ("base", xpos="far_left", ypos="head") + her "I'm sorry professor but I don't need your help at the moment." + her "My house is already in the lead points wise." + gen "Figures..." ("base", xpos="far_left", ypos="head") + + call tutorial("points") + + hide screen blktone + with d3 + else: + $ enable_game_menu() + $ inventory_mode = 0 + $ current_item.give(active_girl) + elif current_item.type == "quest": + if not active_girl in current_item.usable_on: + show screen blktone + with d3 + gen "(Something tells me I cannot give this item to [active_girl].)" ("base", xpos="far_left", ypos="head") + nar "Perhaps in the future..." + hide screen blktone + with d3 + #TODO Add daytime check for buttplug give item event + #show screen blktone + #with d3 + #gen "(Some grander force tells me I should give it to her during daytime only.)" ("base", xpos="far_left", ypos="head") + #hide screen blktone + #with d3 + elif get_character_mood(active_girl) > 0: + show screen blktone + with d3 + gen "(I don't think it's a good idea to give it to her when she's still upset with me...)" ("base", xpos="far_left", ypos="head") + gen "(I should wait for her to calm down first.)" ("base", xpos="far_left", ypos="head") + hide screen blktone + with d3 + elif active_girl == "hermione" and not hermione_favors_convinced == 2 and is_in_lead(gryffindor): + show screen blktone + with d3 + + gen "[hermione_name], I have something for you--" ("base", xpos="far_left", ypos="head") + her "I'm sorry professor but I don't need your help at the moment." + her "My house is already in the lead points wise." + gen "Figures..." ("base", xpos="far_left", ypos="head") + + call tutorial("points") + + hide screen blktone + with d3 + else: + $ enable_game_menu() + $ inventory_mode = 0 + $ current_item.give(active_girl) + + else: + hide screen inventory + return + + jump .after_init + +screen inventory(xx, yy): + tag inventory + zorder 15 + modal True + + add "gui_fade" + + if renpy.mobile: + use close_button_background + use close_button(key=["inventory", "game_menu"]) + + fixed: + if settings.get("animations"): + at gui_animation + use inventory_menu(xx, yy) + use inventory_menuitem(xx, yy) + +screen inventory_menu(xx, yy): + window: + style "empty" + style_prefix gui.theme('achievements') + pos (xx, yy) + xysize (207, 454) + + use invisible_button() + + add gui.format("interface/achievements/{}/panel_left.webp") + + vbox: + pos (6, 41) + for category in inventory_dict.iterkeys(): + vbox: + textbutton category: + style "empty" + xsize 195 ysize 16 + text_xalign 0.5 + if current_category == category: + background gui.format("interface/achievements/{}/highlight_left.webp") + else: + hover_background gui.format("interface/achievements/{}/highlight_left.webp") + action Return(["category", category]) + add gui.format("interface/achievements/{}/spacer_left.webp") + + # Gold & Tokens + null height 16 + text "{color=#daa520}Gold{/color} {outlinecolor=#ffffff00}[game.gold]{/outlinecolor}" size 12 outlines [ (2, "#000", 0, 0) ] xalign 0.1 xanchor 0 + add gui.format("interface/achievements/{}/spacer_left.webp") + text "{color=#2055da}Tokens{/color} {outlinecolor=#ffffff00}[tokens]{/outlinecolor}" size 12 outlines [ (2, "#000", 0, 0) ] xalign 0.1 xanchor 0 + add gui.format("interface/achievements/{}/spacer_left.webp") + + vbox: + style_prefix gui.theme('achievements_filters') + pos (6, 384) + if current_filter == None: + textbutton "Show: All" action Return("filter") + else: + textbutton "Show: [current_filter]" action Return("filter") + textbutton "Sort by: [current_sorting]" action Return("sort") + +screen inventory_menuitem(xx, yy): + window: + style "empty" + style_prefix gui.theme() + pos (xx+217, yy-53) + xysize (560, 507) + + use invisible_button() + + add "interface/achievements/inventory.webp" + add gui.format("interface/achievements/{}/panel.webp") + + #Western Egg + button xsize 90 ysize 60 action Function(renpy.play, "sounds/plushie.ogg") xalign 0.5 style "empty" + + text "Inventory" size 22 xalign 0.5 ypos 65 + + #text "Unlocked: "+str(len(filter(lambda x: x[1][3] is True, menu_items)))+"/[menu_items_length]" size 12 pos (24, 70) + + # Page counter + if menu_items_length > items_shown: + hbox: + xanchor 1.0 + pos (540, 24) + spacing 5 + add "interface/page.webp" yanchor 0.5 ypos 53 + text str(current_page+1)+"/"+str(int(math.ceil(menu_items_length/items_shown))+1) ypos 44 size 16 + vbox: + pos (570, 186) + spacing 10 + + imagebutton: + idle gui.format("interface/frames/{}/arrow_up.webp") + if not current_page <= 0: + hover image_hover(gui.format("interface/frames/{}/arrow_up.webp")) + action Return("dec") + + imagebutton: + idle Transform(gui.format("interface/frames/{}/arrow_up.webp"), xzoom=-1) + if current_page < math.ceil((menu_items_length-1)/items_shown): + hover Transform(image_hover(gui.format("interface/frames/{}/arrow_up.webp")), xzoom=-1) + action Return("inc") + + # Add items + for i in xrange(current_page*items_shown, (current_page*items_shown)+items_shown): + if i < menu_items_length: + $ row = (i // 9) % 4 + $ col = i % 9 + frame: + style "empty" + xsize 48 + ysize 48 + pos (24+58*(col), 113+58*(row)) + add gui.format("interface/achievements/{}/iconbox.webp") + + if not current_item == None and current_item.id == menu_items[i].id: + add "interface/achievements/glow.webp" align (0.5, 0.5) zoom 0.105 alpha 0.7 at rotate_circular + + if menu_items[i].owned > 0: + $ image_zoom = crop_image_zoom(menu_items[i].get_image(), 42, 42) + else: + $ image_zoom = crop_image_zoom(menu_items[i].get_image(), 42, 42, True) + + add image_zoom align (0.5, 0.5) + + button: + style gui.theme("overlay_button") + background "interface/achievements/glass_iconbox.webp" + xsize 46 ysize 46 + action Return(["select", menu_items[i]]) + tooltip menu_items[i].name + + if menu_items[i].limit > 1 and menu_items[i].owned > 0: + if menu_items[i].infinite: + text "{unicode}∞{/unicode}" size 20 align (0.1, 0.1) offset(-1, -9) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + else: + text str(menu_items[i].owned) size 10 align (0.1, 0.1) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + elif current_category == "Decorations": + if menu_items[i].in_use: + add "interface/topbar/icon_check.webp" anchor (1.0, 1.0) align (1.0, 1.0) offset (-3, -3) zoom 0.5 + elif current_category in ("Books", "Quest Items"): + if menu_items[i].used: + add "interface/topbar/icon_check.webp" anchor (1.0, 1.0) align (1.0, 1.0) offset (-3, -3) zoom 0.5 + + if inventory_mode == 1 and (not menu_items[i].givable or not active_girl in menu_items[i].usable_on): + add "#b2000040" + + if menu_items_length <= 0: + text "Nothing here yet" align (0.5, 0.5) anchor (0.5, 0.5) size 24 + + if current_item: + frame: + style "empty" + xsize 96 + ysize 96 + pos (24, 375) + add gui.format("interface/achievements/{}/icon_selected.webp") + if current_item.owned > 0: + $ image_zoom = crop_image_zoom(current_item.get_image(), 84, 84) + else: + $ image_zoom = crop_image_zoom(current_item.get_image(), 84, 84, True) + add image_zoom align (0.5, 0.5) + add "interface/achievements/glass_selected.webp" pos (6, 6) + + if current_category in {"Gifts", "Ingredients", "Potions"}: + if current_item.owned > 0: + if current_item.infinite: + text "{unicode}∞{/unicode}" size 30 align (0.1, 0.1) offset(-2, -10) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + else: + text str(current_item.owned) size 14 align (0.1, 0.1) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + elif current_category == "Decorations": + if current_item.in_use: + add "interface/topbar/icon_check.webp" anchor (1.0, 1.0) align (1.0, 1.0) offset (-6, -6) + elif current_category in ("Books", "Quest Items"): + if current_item.used: + add "interface/topbar/icon_check.webp" anchor (1.0, 1.0) align (1.0, 1.0) offset (-6, -6) + + if inventory_mode == 1 and (not current_item.givable or not active_girl in current_item.usable_on): + add "#b2000040" + + add gui.format("interface/achievements/{}/highlight.webp") pos (112, 375) + add gui.format("interface/achievements/{}/spacer.webp") pos (120, 398) + hbox: + spacing 5 + xalign 0.5 + text current_item.name ypos 380 size 16 xoffset 45 + + $ frame = Frame(gui.format("interface/frames/{}/iconframe.webp"), 6, 6) + + if (inventory_mode == 0 and current_item.usable) or (inventory_mode == 1 and current_item.givable): + textbutton "[current_item.caption]": + style "inventory_button" + background frame + xalign 0.89 + xoffset 45 + ypos 374 + sensitive (current_item.owned > 0) + if inventory_mode == 0: + action Return("use") + elif inventory_mode == 1: + action Return("give") + + hbox: + pos (132, 407) + xsize 410 + text current_item.desc size 12 + +style inventory_button: + xysize (90, 26) + hover_foreground "#ffffff1F" + +style inventory_button_text: + outlines [] + align (0.5, 0.5) + size 16 diff --git a/game/scripts/interface/letter.rpy b/game/scripts/interface/letter.rpy new file mode 100644 index 00000000..305529df --- /dev/null +++ b/game/scripts/interface/letter.rpy @@ -0,0 +1,264 @@ + +### Init ### + +# Hermione Granger Letters +default letter_hg_1 = Letter( + text = "{size=-7}From: Hermione Granger\nTo: Professor Dumbledore\n\n{/size}{size=-4}I am sure that you remember the reason why I'm writing you this letter from my last one, sir.\n\nI beg of you, please hear my plea this time. This injustice simply cannot go on...\nNot in this day and age, not in our school.\n\nPlease take action.{/size}\n\n{size=-7}With deepest respect,\nHermione Granger{/size}" +) + +default letter_hg_2 = Letter( + text = "{size=-7}From: Hermione Granger\nTo: Professor Dumbledore\n\n{/size}{size=-4}I am sorry to disturb you again, professor. I just want to make sure that you take this problem seriously.\n\nLast night another classmate confided in me... I gave my word to keep it a secret, so I cannot go into any details.\n\nAll I can say is that one of the Professors was involved.\n\nPlease take action soon.{/size}\n\n{size=-7}With deepest respect,\nHermione Granger.{/size}", + label = "letter_hg_2", + wait = 3, +) + +label letter_hg_2: + gen "This again?" ("base", xpos="far_left", ypos="head") + gen "..........." ("base", xpos="far_left", ypos="head") + return + +# Ministry of Magic Letters +default letter_work_unlock = Letter( + text = "{size=-7}From: Ministry of Magic\nTo: Professor Albus Dumbledore\n\n{/size}{size=-4}Dear professor Dumbledore,\nWe remind you that only upon providing us with a completed report will we be able to make a payment in your name.{/size}\n\n{size=-7}With deepest respect,\nThe Ministry of Magic.{/size}", + label = "letter_work_unlock", + wait = 4, +) + +label letter_work_unlock: + gen "Payments? *Hmm*..." ("base", xpos="far_left", ypos="head") + call give_reward(">From now on you can do paperwork at your desk in order to earn additional gold...","interface/icons/gold.webp") + call tutorial("workngold") + return + +default letter_work_report = Letter( + text = "{size=-7}From:Ministry of Magic\nTo: Professor Dumbledore\n\n{/size}{size=-4}Thank you for completing a report this week.\n\nYou will find your payment of\n\n{/size}{b}-[reports_gold] gold-{/b}{size=-4}\n\nin the attached purse.{/size}\n\n{size=-7}With deepest respect,\nThe Ministry of Magic.{/size}", + label = "letter_work_report", + func = calc_reports_gold +) + +init python: + def calc_reports_gold(): + global reports_gold, reports_finished + + progress_factor = math.log(game.day) + progress_flat = (her_tier + cho_tier + ton_tier + lun_tier) * 16 + # Note: random_gold global var is set at the start of the day and evening + + reports_gold = reports_finished * (int(progress_factor * max(random_gold, progress_flat)) + progress_flat) + + if game.difficulty <= 1: # Easy + reports_gold = int(reports_gold * 1.2) + elif game.difficulty == 2: # Normal + pass + else: # Hardcore + reports_gold = int(reports_gold * 0.9) + +label letter_work_report: + python: + game.gold += reports_gold + + # Reset + reports_finished = 0 + reports_gold = 0 + return + +default letter_favors = Letter( + text = "{size=-7}From:Ministry of Magic\nTo: Professor Dumbledore\n\n{/size}{size=-4}Dear professor Dumbledore,\nit has come to the ministry's attention from an anonymous letter, that there has been illicit activities going on between staff members and students within your halls.\n\nAn Auror has been dispatched and will arrive shortly to begin the investigation.{/size}\n\n{size=-7}Yours sincerely,\nAmelia Bones, Department of Magical Law Enforcement.{/size}", + label = "letter_favors", + wait = 8, +) + +label letter_favors: + gen "Amelia...{w=1.0} Bones?" ("base", xpos="far_left", ypos="head") + gen "*He-he-he-he-he*..." ("grin", xpos="far_left", ypos="head") + gen "Wait a second..." ("base", xpos="far_left", ypos="head") + gen "Does that mean I'm in trouble?" ("base", xpos="far_left", ypos="head") + return + +# Card Game Letters +default letter_cards_unlock = Letter( + text = "{size=-3}Sir Albus Dumbledore{/size}\n\n{size=-7}We would like to present to you a great opportunity to become a Wizard Cards champion. Included in this letter is a starter pack to our card game in the hopes that you will consider any of our resellers to stock our cards for your students to purchase and play.\n\nHere's a little bit of information about our cards:\nEvery Wizard card has an enchantment that will personalise its look just for you and show something of your own favourite interest.\n\nDo you like Quidditch? Every card will look like a famous Quidditch player or a sport related print.\nInterested in magical creatures? The cards will have magical creatures on them.\nFind out your unique illustrations today with this starter pack, we don't even know what it is!{/size}\n\n{space=110}{size=-5}Wizard cards inc{/size}", + label = "letter_cards_unlock", + wait = 24 +) + +label letter_cards_unlock: + $ deck_unlocked = True + + gen "That last bit just sounds like a scam to me..." ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "I guess I'll have a look at the starter pack at least..." ("base", xpos="far_left", ypos="head") + + show screen blktone + show screen start_deck + with d3 + + pause + + hide screen start_deck + hide screen blktone + with d3 + + # A stupid hack to fix the initial card unlocks. + # TODO: Refactor. + python: + for i in playerdeck: + i.copies = -1 + + gen "Hell yes I'm playing this..." ("grin", xpos="far_left", ypos="head") + call give_reward(">You've unlocked Wizard cards.\n\nUse the deck builder available on your desk to learn the rules and edit your deck.","interface/icons/cards.webp") + return + +default letter_cards_store = Letter( + text = "{size=-7}Weasley's Wizard Wheezes shop emporium is now officially partnering with Wizard cards.\nVisit our shop for the best deals on card packs in all of Hogwarts!{/size}", + label = "letter_cards_store" +) + +label letter_cards_store: + $ twins_cards_stocked = True + $ poker_outfit_ITEM.unlocked = True + $ lootbox_ITEM.unlocked = True + gen "Great, let's see how they're doing." ("base", xpos="far_left", ypos="head") + + call give_reward(">New items have been unlocked in the store.", "interface/icons/gold.webp") + + return + +default letter_cards_tier2 = Letter( + text = "{size=-3}Congratulations!{/size}\n\n{size=-7}You've beaten your first 3 challenges of Wizard Cards.\nWe're currently working on expanding our business and are recruiting even more challengers so that in the future you'll be able to challenge even more people.\nIn the meanwhile, you'll be able to earn even more tokens by making wagers with the ones you've already beaten to complete your collection of items.\nFor wagers both participant needs to be fine with the prize/forfeit before the wager is made, good luck!\n\nYours truly,\nWeasley's Wizard Wheeze's and Team Silver{/size}", + label = "letter_cards_tier2" +) + +label letter_cards_tier2: + gen "Sweet..." ("grin", xpos="far_left", ypos="head") + gen "Fucking love prizes." ("grin", xpos="far_left", ypos="head") + $ advance_tier(2) + + return + +# Tonks +default letter_nt_1 = Letter( + text = "{size=-7}From: Tonks\nTo: My beloved headmaster\n\n{/size}{size=-4}As promised, here is a very lewd picture of me.{heart}\n\nI had so much fun making this for you.\nPlease jerk off to it as much as you like! {heart} {heart} {heart}{/size}\n\n{size=-7}With love,\nTonks. {heart}{/size}", + label = "letter_nt_1" +) + +label letter_nt_1: + gen "Well now I'm curious..." ("base", xpos="far_left", ypos="head") + call nar(">You slowly roll out the piece of parchment.") + pause.2 + call kiss_her + pause.5 + + gen "Cute..." ("base", xpos="far_left", ypos="head") + call play_sound("scroll") + call nar(">You roll out the poster completely - getting a good look of it.") + gen "Nice!" ("grin", xpos="far_left", ypos="head") + + call give_reward(text="{heart} {heart} {heart}", gift="interface/icons/tonks_poster.webp", sound=True) + $ tonks_poster_ITEM.owned = 1 + + gen "I'll definitely hang this one up!" ("grin", xpos="far_left", ypos="head") + + return + +### Main ### + +init python: + class Letter(object): + """ + text - Contents of the letter. + label - Call label called after the letter was read. + func - A setup function called before the letter is being shown to the player. + + Queue is universal for all instanced objects. + """ + + def __init__(self, text="Add Text", wait=0, label=None, func=None): + self.mailed = False + self.read = False + self.text = text + self.wait = wait + self.label = label + self.func = func + self.queue = mailbox.letters + + def send(self): + self.mailed = True + + if not self in self.queue: + self.queue.append(self) + + def open(self, silent=False): + self.mailed = True + self.read = True + + if self in self.queue: + self.queue.remove(self) + + if self.func: + self.func() + + if not silent: + renpy.call("letter", self.text, self.label) + +label letter(text, label): + show screen bld1 + show screen blktone + show screen letter(text) + with d3 + + $ menu_x, menu_y = 0.5, 0.9 + + menu: + "-Done reading-": + pass + + call reset_menu_position + + hide screen letter + hide screen blktone + hide screen bld1 + with d3 + + if label: + $ renpy.call(label) + + return + +screen letter(text): + zorder 26 + tag letter + + add "interface/letter.webp" align (0.5, 0.2) zoom 0.5 + hbox: + spacing 40 + pos (410, 80) + xmaximum 250 + text text + +label letter_open_all: + while mailbox.get_letters(): + $ mailbox.get_letters()[0].open() + + $ owl_OBJ.hidden = True + + jump main_room_menu + +label letter_delay: + call gen_chibi("stand_alt", 420, 410, flip=False) + with d5 + pause.2 + + $ renpy.say(g4, renpy.random.choice(["fuck off", "bug off", "get out", "get the hell out of here", "go away", "away with you", "don't you even dare shit on my floor"])+", you"+renpy.random.choice([" stupid", " silly", " annoying", "", " idiotic", " bloody"])+renpy.random.choice([" flying rat!", " bird!", " poor excuse for a pigeon!", " pigeon!", " idiot!"])) + pause.1 + + call gen_chibi("rummage", 360, 429, flip=False) + call play_sound("owl") + $ owl_OBJ.hidden = True + with hpunch + pause.8 + + $ owl_away = True + $ owl_away_counter += 1 + + jump main_room diff --git a/game/scripts/interface/map.rpy b/game/scripts/interface/map.rpy new file mode 100644 index 00000000..a9ea6a3a --- /dev/null +++ b/game/scripts/interface/map.rpy @@ -0,0 +1,506 @@ +default UI_xpos_offset = 230 +default UI_ypos_offset = 150 + +default map_unlocked = False + +default her_map_location = "library" +default lun_map_location = "room_r" +default ast_map_location = "room_s" +default sus_map_location = "room_h" +default cho_map_location = "training_grounds" + +default sna_map_location = "room_potions" +default ton_map_location = "room_defense" + +default first_time_7th = True +default pitch_open = True + +default map_animated = "once" + +define map_scale = 0.35 +define map_ani_time = 1.5 + +transform map_fadein: + alpha 0 + pause (map_ani_time) + linear 1 alpha 1 + +image map_unfold: + "interface/map/anim/map_03.webp" + pause map_ani_time/3 + "interface/map/anim/map_02.webp" with Dissolve(map_ani_time/3) + pause map_ani_time/3 + "interface/map/anim/map_01.webp" with Dissolve(map_ani_time/3) + pause map_ani_time/3 + "interface/map/map.webp" with Dissolve(1) + pause 1 + "interface/map/map.webp" + +screen map_screen(): + tag map + zorder 4 + + # Default avoids changing the screen if the animation is toggled quickly + default unfold = map_animated + + # Disable animation after first time (can still be toggled) + if map_animated == "once": + timer map_ani_time+1 action SetVariable("map_animated", False) + + if unfold: + add "map_unfold" xpos UI_xpos_offset ypos UI_ypos_offset zoom map_scale # 588x420 + else: + add "interface/map/map.webp" xpos UI_xpos_offset ypos UI_ypos_offset zoom map_scale # 588x420 + + fixed: + if unfold: + at map_fadein + use map_buttons + use map_screen_characters + +screen map_buttons(): + tag map + zorder 4 + #Office + imagebutton: + xpos UI_xpos_offset +112 + ypos UI_ypos_offset +234 + idle "interface/map/room_office_idle.webp" + hover "interface/map/room_office_hover.webp" + hovered SetVariable("ball_hint", "office") + unhovered SetVariable("ball_hint", None) + action Return("main_room_menu") + + #Gryffindor + imagebutton: + xpos UI_xpos_offset +148 + ypos UI_ypos_offset +214 + idle "interface/map/room_gryffindor_idle.webp" + # hover "interface/map/room_gryffindor_hover.webp" + # hovered SetVariable("ball_hint", "dorm_gryffindor") + # unhovered SetVariable("ball_hint", None) + # action Return("gryffindor_dormitories") + + #Ravenclaw + imagebutton: + xpos UI_xpos_offset +286 + ypos UI_ypos_offset +256 + idle "interface/map/room_ravenclaw_idle.webp" + # hover "interface/map/room_ravenclaw_hover.webp" + # hovered SetVariable("ball_hint", "dorm_ravenclaw") + # unhovered SetVariable("ball_hint", None) + # action Return("ravenclaw_dormitories") + + #Hufflepuff + imagebutton: + xpos UI_xpos_offset +76 + ypos UI_ypos_offset +295 + idle "interface/map/room_hufflepuff_idle.webp" + #hovered SetVariable("ball_hint", "dorm_hufflepuff") + #unhovered SetVariable("ball_hint", None) + #hover "interface/map/room_hufflepuff_hover.webp" + #action Return("hufflepuff_dormitories") + + #Slytherin + imagebutton: + xpos UI_xpos_offset +214 + ypos UI_ypos_offset +136 + idle "interface/map/room_slytherin_idle.webp" + #hovered SetVariable("ball_hint", "dorm_slytherin") + #unhovered SetVariable("ball_hint", None) + #hover "interface/map/room_slytherin_hover.webp" + #action Return("slytherin_dormitories") + + #Weasley Store 15 x 15 + if not item_store_intro_done: + add "interface/achievements/glow.webp" pos (UI_xpos_offset+246, UI_ypos_offset+231) align (0.5, 0.5) offset (15, 15) zoom 0.15 alpha 0.5 at rotate_circular + imagebutton: + xpos UI_xpos_offset +246 + ypos UI_ypos_offset +231 + idle "interface/map/room_weasley_store_idle.webp" + hover "interface/map/room_weasley_store_hover.webp" + hovered SetVariable("ball_hint", "weasley_store") + unhovered SetVariable("ball_hint", None) + action Return("item_store") + + #Clothing Store + if not clothing_store_intro_done: + add "interface/achievements/glow.webp" pos (UI_xpos_offset+462, UI_ypos_offset+231) align (0.5, 0.5) offset (15, 15) zoom 0.15 alpha 0.5 at rotate_circular + imagebutton: + xpos UI_xpos_offset +462 + ypos UI_ypos_offset +231 + idle "interface/map/room_clothing_store_idle.webp" + hover "interface/map/room_clothing_store_hover.webp" + hovered SetVariable("ball_hint", "clothing_store") + unhovered SetVariable("ball_hint", None) + action Return("clothing_store") + + # Snape's Office + if not snape_office_discovered: + add "interface/achievements/glow.webp" pos (UI_xpos_offset+314, UI_ypos_offset+331) align (0.5, 0.5) offset (15, 15) zoom 0.15 alpha 0.5 at rotate_circular + imagebutton: + xpos UI_xpos_offset +314 + ypos UI_ypos_offset +331 + idle "interface/map/room_potions_idle.webp" + hover "interface/map/room_potions_hover.webp" + hovered SetVariable("ball_hint", "potions") + unhovered SetVariable("ball_hint", None) + action Return("snape_office") + + #Room of Requirement + if unlocked_7th: + if not mirror_intro_done: + add "interface/achievements/glow.webp" pos (UI_xpos_offset+116, UI_ypos_offset+160) align (0.5, 0.5) offset (15, 15) zoom 0.15 alpha 0.5 at rotate_circular + imagebutton: + xpos UI_xpos_offset +116 + ypos UI_ypos_offset +160 + unhovered SetVariable("ball_hint", None) + hovered SetVariable("ball_hint", "room_of_req") + action Return("seventh_floor") + if first_time_7th == True: + idle "interface/map/room_ror_empty_idle.webp" + hover "interface/map/room_ror_empty_hover.webp" + else: + idle "interface/map/room_ror_idle.webp" + hover "interface/map/room_ror_hover.webp" + + #Lake + imagebutton: + xpos UI_xpos_offset +131 + ypos UI_ypos_offset +367 + idle "interface/map/room_boat_house_idle.webp" + # hover "interface/map/room_boat_house_hover.webp" + # hovered SetVariable("ball_hint", "lake") + # unhovered SetVariable("ball_hint", None) + # action Return("map_lake") + + #Forest + imagebutton: + xpos UI_xpos_offset +103 + ypos UI_ypos_offset +12 + idle "interface/map/room_north_courtyard_idle.webp" + # hover "interface/map/room_north_courtyard_hover.webp" + # hovered SetVariable("ball_hint", "forest") + # unhovered SetVariable("ball_hint", None) + # action Return("map_forest") + + #Attic + if tentacle_scroll_examined: + if not tentacle_sample: + add "interface/achievements/glow.webp" pos (UI_xpos_offset+340, UI_ypos_offset+226) align (0.5, 0.5) offset (15, 15) zoom 0.15 alpha 0.5 at rotate_circular + imagebutton: + xpos UI_xpos_offset +340 + ypos UI_ypos_offset +226 + idle "interface/map/room_attic_closed_idle.webp" + hover "interface/map/room_attic_closed_hover.webp" + hovered SetVariable("ball_hint", "attic") + unhovered SetVariable("ball_hint", None) + action Return("map_attic") + else: + imagebutton: + xpos UI_xpos_offset +340 + ypos UI_ypos_offset +226 + idle "interface/map/room_attic_open_idle.webp" + hover "interface/map/room_attic_open_hover.webp" + hovered SetVariable("ball_hint", "attic") + unhovered SetVariable("ball_hint", None) + action Return("map_attic") + + # Map animation toggle + textbutton "Animation": + style gui.theme("check_button") + pos (700, 530) + selected map_animated + tooltip "Toggles map folding animation" + action ToggleVariable("map_animated", True, False) + +label set_her_map_location(location=""): + + if location != "": + if location == "library": + $ her_map_location = "library" + elif location in ["gryffindor_room","gryff_room","room_g"]: + $ her_map_location = "room_g" + elif location in ["slytherin_room","slyth_room","room_s"]: + $ her_map_location = "room_s" + elif location == "great_hall": + $ her_map_location = "great_hall" + elif location == "courtyard": + $ her_map_location = "courtyard" + + else: #Random + if her_whoring < 11: + if random_map_loc in [1,2]: #Library + $ her_map_location = "library" + elif random_map_loc in [3]: #Great Hall + $ her_map_location = "great_hall" + else: #Gryff Room + $ her_map_location = "room_g" + else: + if her_reputation < 12: + if random_map_loc == 1: #Great Hall + $ her_map_location = "great_hall" + elif random_map_loc == 2: #Courtyard + $ her_map_location = "courtyard" + else: #Gryff Room + $ her_map_location = "room_g" + else: + if random_map_loc == 1: #Slytherin Room + $ her_map_location = "room_s" + elif random_map_loc == 2: #Courtyard + $ her_map_location = "courtyard" + else: #Gryff Room + $ her_map_location = "room_g" + + if hg_blowjob.trigger == True and game.weather in ("clear", "cloudy") and not game.daytime and not hermione_busy: + $ her_map_location = "forest" + + call update_character_map_locations + + return + +label set_lun_map_location(location = ""): + + if location != "": + if location == "greenhouse": + $ lun_map_location = "greenhouse" + elif location == "forest": + $ lun_map_location = "forest" + elif location in ["ravenclaw_room","raven_room","room_r"]: + $ lun_map_location = "room_r" + + else: #Random + if random_map_loc in [1]: + $ lun_map_location = "greenhouse" + elif random_map_loc in [2,3]: + $ lun_map_location = "forest" + else: #Ravenclaw Room + $ lun_map_location = "room_r" + + call update_character_map_locations + + return + +label set_ast_map_location(location = ""): + if location != "": + if location == "courtyard": + $ ast_map_location = "courtyard" + elif location in ["slytherin_room","slyth_room","room_s"]: + $ ast_map_location = "room_s" + elif location in ["defense_classroom"]: + $ ast_map_location = "defense" + + else: #Random + if random_map_loc in [1,2]: + $ ast_map_location = "courtyard" + else: #Slytherin Room + $ ast_map_location = "room_s" + + call update_character_map_locations + + return + +label set_sus_map_location(location = ""): + if location != "": + if location == "great_hall": + $ sus_map_location = "great_hall" + elif location in ["hufflepuff_room","huffl_room","room_h"]: + $ sus_map_location = "room_r" + + else: #Random + if random_map_loc in [1,2]: + $ sus_map_location = "great_hall" + else: #Hufflepuff Room + $ sus_map_location = "room_h" + + call update_character_map_locations + + return + +label set_cho_map_location(location = ""): + if location != "": + if location == "training_grounds": + $ cho_map_location = "training_grounds" + elif location in ["ravenclaw_room","raven_room","room_r"]: + $ cho_map_location = "room_r" + + else: #Random + if random_map_loc in [1,2]: + $ cho_map_location = "training_grounds" + else: #Ravenclaw Room + $ cho_map_location = "room_r" + + call update_character_map_locations + + return + +label update_character_map_locations: + if her_map_location == "library": + $ her_map_xpos = 685 + $ her_map_ypos = 94 + if her_map_location == "room_g": + $ her_map_xpos = 340 + $ her_map_ypos = 212 + if her_map_location == "room_s": + $ her_map_xpos = 440 + $ her_map_ypos = 184 + if her_map_location == "great_hall": + $ her_map_xpos = 300 + $ her_map_ypos = 240 + if her_map_location == "courtyard": + $ her_map_xpos = 674 + $ her_map_ypos = 216 + if her_map_location == "forest": + $ her_map_xpos = 290 + $ her_map_ypos = 40 + + #Luna + if lun_map_location == "room_r": + $ lun_map_xpos = 536 + $ lun_map_ypos = 242 + if lun_map_location == "forest": + $ lun_map_xpos = 430 + $ lun_map_ypos = 50 + if lun_map_location == "greenhouse": + $ lun_map_xpos = 680 + $ lun_map_ypos = 320 + + #Astoria + if ast_map_location == "room_s": + $ ast_map_xpos = 476 + $ ast_map_ypos = 118 + if ast_map_location == "courtyard": + $ ast_map_xpos = 634 + $ ast_map_ypos = 254 + if ast_map_location == "defense": #Event + $ ast_map_xpos = 530 + $ ast_map_ypos = 190 + + #Susan + if sus_map_location == "room_h": + $ sus_map_xpos = 360 + $ sus_map_ypos = 320 + if sus_map_location == "great_hall": + $ sus_map_xpos = 300 + $ sus_map_ypos = 280 + + #Cho + if cho_map_location == "room_r": + $ cho_map_xpos = 494 + $ cho_map_ypos = 276 + if cho_map_location == "training_grounds": + $ cho_map_xpos = 750 + $ cho_map_ypos = 50 + + #Tonks + $ ton_map_xpos = 548 + $ ton_map_ypos = 156 + + #Snape + if game.daytime: + $ sna_map_xpos = 595 + $ sna_map_ypos = 270 + else: + $ sna_map_xpos = 598 + $ sna_map_ypos = 348 + + return + +screen map_screen_characters(): + tag map + zorder 5 + + $ UI_xpos_offset = 0 + + #Hermione + if hermione_unlocked: + if her_map_location == "forest": # Mark forest event. + add "interface/achievements/glow.webp" pos (UI_xpos_offset+her_map_xpos, UI_ypos_offset+her_map_ypos) align (0.5, 0.5) zoom 0.15 alpha 0.5 at rotate_circular + imagebutton: + xpos +UI_xpos_offset +her_map_xpos + ypos +UI_ypos_offset +her_map_ypos + xalign 0.5 + yalign 0.5 + idle "interface/map/name_hermione.webp" + hover "interface/map/name_hermione_hover.webp" + hovered SetVariable("ball_hint", "summon_hermione") + unhovered SetVariable("ball_hint", None) + action Return("hermione") + + #Luna + if luna_unlocked: + imagebutton: + xpos UI_xpos_offset+ lun_map_xpos + ypos UI_ypos_offset+ lun_map_ypos + xalign 0.5 + yalign 0.5 + idle "interface/map/name_luna.webp" + hover "interface/map/name_luna_hover.webp" + hovered SetVariable("ball_hint", "summon_luna") + unhovered SetVariable("ball_hint", None) + action Return("luna") + + #Astoria + if astoria_unlocked: + imagebutton: + xpos UI_xpos_offset +ast_map_xpos + ypos UI_ypos_offset +ast_map_ypos + xalign 0.5 + yalign 0.5 + idle "interface/map/name_astoria.webp" + hover "interface/map/name_astoria_hover.webp" + hovered SetVariable("ball_hint", "summon_astoria") + unhovered SetVariable("ball_hint", None) + action Return("astoria") + + #Susan + if susan_unlocked: + imagebutton: + xpos UI_xpos_offset +sus_map_xpos + ypos UI_ypos_offset +sus_map_ypos + xalign 0.5 + yalign 0.5 + idle "interface/map/name_susan.webp" + hover "interface/map/name_susan_hover.webp" + hovered SetVariable("ball_hint", "summon_susan") + unhovered SetVariable("ball_hint", None) + action Return("susan") + + #Cho + if cho_unlocked: + imagebutton: + xpos UI_xpos_offset +cho_map_xpos + ypos UI_ypos_offset +cho_map_ypos + xalign 0.5 + yalign 0.5 + idle "interface/map/name_cho.webp" + hover "interface/map/name_cho_hover.webp" + hovered SetVariable("ball_hint", "summon_cho") + unhovered SetVariable("ball_hint", None) + action Return("cho") + + #Snape + if snape_unlocked: + imagebutton: + xpos UI_xpos_offset +sna_map_xpos + ypos UI_ypos_offset +sna_map_ypos + xalign 0.5 + yalign 0.5 + idle "interface/map/name_snape.webp" + hover "interface/map/name_snape_hover.webp" + hovered SetVariable("ball_hint", "summon_snape") + unhovered SetVariable("ball_hint", None) + action Return("snape") + + #Tonks + if tonks_unlocked: + imagebutton: + xpos UI_xpos_offset +ton_map_xpos + ypos UI_ypos_offset +ton_map_ypos + xalign 0.5 + yalign 0.5 + idle "interface/map/name_tonks.webp" + hover "interface/map/name_tonks_hover.webp" + hovered SetVariable("ball_hint", "summon_tonks") + unhovered SetVariable("ball_hint", None) + action Return("tonks") diff --git a/game/scripts/interface/menus.rpy b/game/scripts/interface/menus.rpy new file mode 100644 index 00000000..8997682f --- /dev/null +++ b/game/scripts/interface/menus.rpy @@ -0,0 +1,242 @@ + +# Maps title + toggle names to menu state (current page and toggles) +default menu_states = {} + +init python: + def store_menu_states(menu_id, scope): + menu_states[menu_id] = scope + +#List Menu #Customizable +screen list_menu(menu_id, title, toggle_names=tuple(), menu_groups=[]): + zorder 5 + + use close_button_background + use close_button + + # Store screen variables while hidden + default old_scope = menu_states.get(menu_id, None) + on ("hide","replaced") action Function(store_menu_states, menu_id, _scope) + + default current_page = 0 if old_scope is None else old_scope["current_page"] + default toggles = set([i for i in xrange(0,max(len(toggle_names), len(menu_groups)))]) if old_scope is None else old_scope["toggles"] + + # Menu items from enabled groups + default menu_items = [] + $ menu_items = list(itertools.chain.from_iterable([menu_groups[i] for i in sorted(toggles) if i < len(menu_groups)])) + + default items_shown = 4 + default max_page = 0 + $ max_page = max(0, (len(menu_items)-1)/items_shown) + $ current_page = min(current_page, max_page) + + # Page up + imagebutton: + xpos 825 + ypos 240 + idle gui.format("interface/general/{}/button_arrow_up.webp") + hover gui.format("interface/general/{}/button_arrow_up_hover.webp") + action SetScreenVariable("current_page", max(0, current_page-1)) + + # Page down + imagebutton: + xpos 825 + ypos 292 + idle gui.format("interface/general/{}/button_arrow_down.webp") + hover gui.format("interface/general/{}/button_arrow_down_hover.webp") + action SetScreenVariable("current_page", min(max_page, current_page+1)) + + # Main window + imagemap: + xsize 638 + ysize 544 + xalign 0.5 + yalign 0.5 + + use invisible_button() + + ground gui.format("interface/panels/{}/items_panel.webp") + hover gui.format("interface/panels/{}/items_panel_hover.webp") + + # Header + hbox: + pos (11,30) + xysize (265,45) + text title align (0.5,0.5) size 16 bold 0.2 + + # Toggles + grid 2 2: + pos (319,31) + for i in xrange(0,4): + if i < len(toggle_names): + $ toggle_names[i] + if i in toggles: + $ toggle_image = gui.theme("check_true") + else: + $ toggle_image = gui.theme("check_false") + button: + style "empty" + xysize (110,22) + left_margin 5 + clicked [ToggleSetMembership(toggles, i),SetScreenVariable("current_page", 0),Return(("toggle"+str(i), i in toggles))] + add toggle_image zoom 0.8 + text "{size=10}" + toggle_names[i] + "{/size}" xpos 22 yalign 0.5 + else: + null + + # Items + $ page_offset = current_page*items_shown + for i in xrange(page_offset, page_offset+items_shown): + if i < len(menu_items): + $ item_ypos = 85+90*(i-page_offset) + if not menu_items[i].unlockable: # Unlockables are shown but aren't clickable + hotspot (16, item_ypos, 528, 87) clicked Return(menu_items[i]) + use list_menu_item(menu_items[i], item_ypos) + +screen list_menu_item(menu_item, ypos=0): + frame: + style "empty" + xpos 16 + ypos ypos + xsize 528 + ysize 87 + + $ item_image = menu_item.get_image() + if isinstance(item_image, im.ImageBase): + $ item_image = crop_image_zoom(item_image, 83, 83) + $ image_zoom = 1.0 + else: + $ image_zoom = get_zoom(item_image, (83, 83)) + + fixed: + pos (6,2) + xysize (83, 83) + add item_image align (0.5, 0.5) zoom image_zoom + + fixed: + pos (100, 0) + xysize (420, 24) + text menu_item.get_name() size 16 yalign 1.0 + + if store_menu: # Displays item's gold value + text menu_item.get_cost() size 16 text_align 1.0 align (1.0,1.0) + + fixed: + pos (100, 32) + xysize (420, 50) + text menu_item.get_description() size 12 + + text menu_item.get_annotation() align (1.0,1.0) offset (-2,-2) + +screen bottom_menu(menu_id, group_names, menu_groups, func_btn=None): + zorder 30 + + use close_button_background + use close_button + + # Store screen variables while hidden + default old_scope = menu_states.get(menu_id, None) + on ("hide","replaced") action Function(store_menu_states, menu_id, _scope) + + default current_page = 0 if old_scope is None else old_scope["current_page"] + default current_group = 0 if old_scope is None else old_scope["current_group"] + $ current_group = min(len(menu_groups)-1, current_group) + + # Menu items from enabled groups + default menu_items = [] + $ menu_items = menu_groups[current_group] + + default items_shown = 9 + default max_page = 0 + $ max_page = max(0, (len(menu_items)-1)/items_shown) + $ current_page = min(current_page, max_page) + + # Main window + imagemap: + xpos 0 + ypos 475 + xysize (1080, 548) + + use invisible_button() + + ground gui.format("interface/panels/{}/bottom_panel.webp") + hover gui.format("interface/panels/{}/bottom_panel_hover.webp") + + # Menu name + $ title = group_names[current_group][0] + add gui.format("interface/general/{}/button_wide.webp") xpos 130 ypos 0 + text title xalign 0.5 yalign 0.5 xpos 130+70 ypos 0+18 size 12 + + # Categories + for i in xrange(0,len(menu_groups)): + $ group_icon = group_names[i][1] + imagebutton: + xpos 300+(33*i) + ypos 0 + idle gui.format("interface/topbar/buttons/{}/")+group_icon+".webp" + hover image_hover(gui.format("interface/topbar/buttons/{}/")+group_icon+".webp") + sensitive current_group != i + action [SetScreenVariable("current_group", i), SetScreenVariable("current_page", 0)] + + if func_btn: + imagebutton: + xpos 300+(33*(len(menu_groups)+1)) + ypos 0 + idle gui.format("interface/topbar/buttons/{}/")+func_btn+".webp" + hover image_hover(gui.format("interface/topbar/buttons/{}/")+func_btn+".webp") + action Return("func") + + # Items + $ page_offset = current_page*items_shown + for i in xrange(page_offset, page_offset+items_shown): + if i < len(menu_items): + $ col = i % 5 + $ row = i % 1 + hotspot ( 140+(90*(i-page_offset)), 34, 90, 90) clicked Return((current_group, menu_items[i])) + use icon_menu_item(menu_items[i], 140+(90*(i-page_offset)), 34 ) + + # Page left + imagebutton: + xpos 80 + ypos 475+50 + idle gui.format("interface/general/{}/button_arrow_left.webp") + hover gui.format("interface/general/{}/button_arrow_left_hover.webp") + sensitive current_page > 0 + action SetScreenVariable("current_page", max(0, current_page-1)) + + # Page right + imagebutton: + xpos 880+80 + ypos 475+50 + idle gui.format("interface/general/{}/button_arrow_right.webp") + hover gui.format("interface/general/{}/button_arrow_right_hover.webp") + sensitive current_page <= max_page + action SetScreenVariable("current_page", min(max_page, current_page+1)) + +screen icon_menu_item(menu_item, xpos=0, ypos=0): + frame: + background None + xpos xpos + ypos ypos + xsize 90 + ysize 90 + + $ item_image = menu_item.get_image() + if isinstance(item_image, im.ImageBase): + $ item_image = crop_image_zoom(item_image, 80, 80) + $ image_zoom = 1.0 + else: + $ image_zoom = get_zoom(item_image, (80, 80)) + + fixed: + xsize 80 + ysize 80 + if menu_item.owned > 0 or menu_item.unlocked == True: + add item_image xalign 0.5 yalign 0.5 zoom image_zoom + else: + add gray_tint(item_image) xalign 0.5 yalign 0.5 zoom image_zoom + + if menu_item.owned > 0: + text "{color=#ffffff}" +str(menu_item.owned)+ "{/color}" + + if menu_item.active: + add "interface/topbar/icon_check.webp" align (1.0, 1.0) zoom 0.5 diff --git a/game/scripts/interface/parcel.rpy b/game/scripts/interface/parcel.rpy new file mode 100644 index 00000000..b857b92a --- /dev/null +++ b/game/scripts/interface/parcel.rpy @@ -0,0 +1,93 @@ + +init python: + class Parcel(object): + """ + contents - Contents of the parcel, has to be a list of tuples + containing an item object and integer quantity [ (lollipop_ITEM, 5) ]. + wait - Wait time required for the item to be delivered. + label - Call label called after the parcel was opened. + func - A setup function called before the parcel contents is being shown to the player. + + Queue is universal for all instanced objects. + """ + + def __init__(self, contents, wait=1, label=None, func=None): + self.mailed = False + self.delivered = False + self.contents = contents + self.wait = wait + self.label = label + self.func = func + self.queue = mailbox.parcels + + def send(self): + self.mailed = True + + if not self in self.queue: + self.queue.append(self) + + def open(self, silent=False): + self.mailed = True + self.delivered = True + + if self in self.queue: + self.queue.remove(self) + + if self.func: + self.func() + + for i in self.contents: + item, quantity = i + + if isinstance(item, Item): + item.owned += quantity + else: + item.unlock() + + if not silent: + renpy.call("parcel", self, self.label) + + def type(self): + return self.contents[0][0].type + + def get_caption(self): + if len(self.contents) == 1: + item, quantity = self.contents[0] + icon = item.get_image() + + if quantity == 1: + text = "You have received one {}.".format(item.name) + else: + text = "You have received {} pieces of {}.".format(num_to_word(quantity), item.name) + else: + items = ", ".join( [" ".join( [str(x[1]), x[0].name] ) for x in self.contents] ) + icon = "interface/icons/box_brown_"+str(random.randint(1, 4))+".webp" + text = "You have received your ordered items:\n{size=-4}"+items+"{/size}" + + return (text, icon) + +label parcel(parcel, label): + show screen bld1 + show screen blktone + + $ renpy.checkpoint() + + $ renpy.call("give_reward", *parcel.get_caption()) + + hide screen blktone + hide screen bld1 + with d3 + + if label: + $ renpy.call(label) + + return + +label parcel_open_all: + while mailbox.get_parcels(): + $ mailbox.get_parcels()[0].open() + + $ parcel_OBJ.hidden = True + call tutorial("inventory") + + jump main_room_menu diff --git a/game/scripts/interface/popup.rpy b/game/scripts/interface/popup.rpy new file mode 100644 index 00000000..ddedf200 --- /dev/null +++ b/game/scripts/interface/popup.rpy @@ -0,0 +1,75 @@ +transform popup_animation(time=4.0, xx=-200): + on start: + xoffset xx + on show: + xoffset xx + linear 0.5 xoffset absolute(0) + pause time + linear 0.5 xoffset absolute(xx) + +screen popup_window(string="", xpos=0, ypos=60): + tag popup_window + zorder 100 + + style_prefix gui.theme() + + timer 5.0 action Hide("popup_window") + frame: + at popup_animation + pos (xpos, ypos) + + text string align (0.5, 0.5) size 12 + +label give_reward(text="You found something!", gift="interface/icons/box_blue_2.webp", sound=True): + if sound: + $ renpy.play("sounds/win2.ogg") + + show screen gift(gift) + show screen blktone + show screen notes + with d3 + + # It has to be a renpy.say function in order to evaluate text tags i.e "You found [item.name]". + $ renpy.say(None, text) + + hide screen gift + hide screen blktone + hide screen notes + with d3 + + return + +label modal_popup(title, entry, img=None, confirm="Ok"): + $ disable_game_menu() + $ renpy.play("sounds/pop01.ogg") + call screen modal_popup(title, entry, img, confirm) + $ enable_game_menu() + return + +screen modal_popup(title, entry, img, confirm): + modal True + + add "gui_fade" + + frame: + style_prefix gui.theme() + xsize 518 + align (0.5, 0.5) + padding (12 + 6, 6, 12 + 6, 12 + 6) + + vbox: + spacing 12 + first_spacing 0 + + fixed: + ysize 24 + add gui.format("interface/achievements/{}/highlight.webp") xalign 0.5 + add gui.format("interface/achievements/{}/spacer.webp") align (0.5, 1.0) + text title size 16 xalign 0.5 yalign 0.5 + + if img and renpy.loadable(img): + add img xalign 0.5 + + text entry size 12 + + textbutton confirm align (1.0, 1.0) action Return(True) diff --git a/game/scripts/interface/screens.rpy b/game/scripts/interface/screens.rpy new file mode 100644 index 00000000..0419b668 --- /dev/null +++ b/game/scripts/interface/screens.rpy @@ -0,0 +1,79 @@ +screen dropdown_menu(pos=(0, 0), name="", spacing=0, items_offset=(0, 0), background="#00000080", style="empty", iconset=["▾", "▴"]): + tag dropdown + modal True + default visible = False + default iconset = iconset + default icon = iconset[0] + + if visible: + use invisible_button(action=[SetLocalVariable("visible", False), SetLocalVariable("icon", iconset[0])]) + + window: + style "empty" + pos pos + + textbutton "[name] {unicode}{size=+1}[icon]{/size}{/unicode}": + style style + ysize 24 + text_yalign 0.5 + text_size 12 + text_hover_color "#FFF" + action [ToggleLocalVariable("visible", True, False), ToggleLocalVariable("icon", iconset[0], iconset[1])] + if visible: + frame: + pos (0, 24) + style "empty" + offset items_offset + background background + padding (5, 5, 5, 5) + vbox: + spacing spacing + transclude + +#Close Button +screen close_button(xoffset=0, yoffset=0, action=Return("Close"), key=["game_menu"]): + zorder 32 + + # Restore menu access if we're leaving nested context + if renpy.context_nesting_level() == 1: + $ action = [Function(enable_game_menu), action] + + imagebutton: + keyboard_focus False + xalign 1.0 + xanchor 1.0 + offset (xoffset, yoffset) + idle gui.format("interface/topbar/buttons/{}/ui_close.webp") + hover image_hover(gui.format("interface/topbar/buttons/{}/ui_close.webp")) + action action + + key key action action + + + +screen close_button_background(action=Return("Close"), keysym=None): + + # Restore menu access if we're leaving nested context + if renpy.context_nesting_level() == 1: + $ action = [Function(enable_game_menu), action] + + # Note: Actions cannot be passed as transclude, separate parameter is required. + button style "empty": + action action + keysym keysym + transclude + +# Animation effect controller +screen gfx_effect(start_x=None, start_y=None, target_x=None, target_y=None, img=None, xanchor=0.5, yanchor=0.5, zoom=0.5, duration=1.0, timer=0.5): + tag gfx + zorder 30 + + if target_x: + add img xanchor xanchor yanchor yanchor zoom zoom at move_to(start_x, start_y, target_x, target_y, duration) + else: + add img xanchor xanchor yanchor yanchor zoom zoom xpos start_x ypos start_y + timer timer action Hide("gfx_effect") + +screen ctc(): + zorder 30 + add "ctc" diff --git a/game/scripts/interface/splash.rpy b/game/scripts/interface/splash.rpy new file mode 100644 index 00000000..4a24ff33 --- /dev/null +++ b/game/scripts/interface/splash.rpy @@ -0,0 +1,38 @@ +label splashscreen: + scene black + + call screen splashscreen with dissolve + + $ persistent.consent = True + return + +screen splashscreen(): + tag splashscreen + style_prefix "splash" + + default consent = persistent.consent or False + + add "gui/splash/legal.webp" at splashcreen_zoomin + + vbox: + align (0.5, 0.9) + text "The game contains strong language, nudity, explicit scenes, drinkin', smokin', bangin', use of drugs, and just about everything your mother ever told you not to do." + text "{color=#ff0000}{b}NOT SUITABLE FOR CHILDREN{/b}{/color}!" size 22 + + timer 7.0 action Return() + + if consent: + use invisible_button(action=Return()) + +style splash_text: + color "#ffffff" + outlines [(2, "#000", 1, 1)] + xsize 580 + xalign 0.5 + +transform splashcreen_zoomin: + subpixel True + transform_anchor True + zoom 0.5 + align (0.5, 0.5) + linear 100.0 zoom 1.0 diff --git a/game/scripts/interface/stats.rpy b/game/scripts/interface/stats.rpy new file mode 100644 index 00000000..219b2f69 --- /dev/null +++ b/game/scripts/interface/stats.rpy @@ -0,0 +1,462 @@ +init python: + def stats_sortfilter(item, sortby=False): + return item + +default stats_show_locked = False + +label update_stats: + + ### Hermione ### + + # Whoring + $ her_whoring_word_list = ["Pure", "Naive", "Curious", "Naughty", "Perverse", "Immoral", "Slutty", "Shameless", "Cumslut", "Total Cumslut", "Shameless Cumslut"] + $ her_whoring_word = her_whoring_word_list[int(min(her_whoring, 24)/2.4)] + + # Reputation + $ her_reputation_word_list = ["Teacher's pet", "School star", "good girl", "minx", "slutty schoolgirl", "easy lay", "whore", "slut for sex", "gryffindor whore", "school cumdump", "mudblood cumdump"] + #$ slutWords = ["Teacher's pet", "School star", "good girl", "headmaster's pet", "slutty schoolgirl", "slut", "headmaster's slut", "daddy's girl", "gryffindor slut", "Dumbledore's whore", "Dumbledore's cumdump"] + $ her_reputation_word = her_reputation_word_list[int(min(her_reputation, 24)/2.4)] + + # Tutoring + $ her_tutoring_word_list = ["Not started", "naive", "tempted", "curious", "tainted", "eager", "sinful", "perverted", "corrupted", "depraved", "shattered"] + $ her_tutoring_word = her_tutoring_word_list[int(her_tutoring/1.5)] + + # Mood + $ her_mood_word_list = ["Cheerful", "Reluctant", "Gloomy", "Stern", "Slightly Annoyed", "Annoyed", "Upset", "Outraged", "Mad", "Angry", "Very Angry"] + $ her_mood_word = her_mood_word_list[int(min(her_mood, 10)/1.0)] + + ### Astoria ### + #call astoria_clothing_level + #$ ast_cuteness_word_list = ["Ugly Duckling", "Swot", "", "", "", "", "", "Cutypie", "", "", ""] + #$ ast_cuteness_word = ast_cuteness_word_list[int(ast_clothing_level/10)] + # Mood + $ ast_mood_word_list = ["Cheerful", "Reluctant", "Gloomy", "Stern", "Slightly Annoyed", "Annoyed", "Upset", "Outraged", "Mad", "Angry", "Very Angry"] + $ ast_mood_word = ast_mood_word_list[int(min(ast_mood, 10)/1.0)] + + ### Cho ### + + # Whoring + $ cho_whoring_word_list = ["Incorruptible", "Focused", "Resilient", "Bi-Curious", "Naughty", "Immoral", "Perverse", "Slutty", "Shameless", "Cumslut", "Shameless Cumslut"] + $ cho_whoring_word = cho_whoring_word_list[int(min(cho_whoring, 24)/2.4)] + + # Reputation + $ cho_reputation_word_list = ["Tomboy", "Team Player", "Quidditch Star", "Flying Ace", "Minx", "Manipulative", "Exploiting", "Cheater", "Team's Cumdump", "Quidditch Whore", "Cheating Slut"] + $ cho_reputation_word = cho_reputation_word_list[int(min(cho_reputation, 24)/2.4)] + + # Mood + $ cho_mood_word_list = ["Cheerful", "Reluctant", "Gloomy", "Stern", "Slightly Annoyed", "Annoyed", "Upset", "Outraged", "Mad", "Angry", "Very Angry"] + $ cho_mood_word = cho_mood_word_list[int(min(cho_mood, 10)/1.0)] + + ### Snape ### + + # # Support + # $ sna_support_word_list = ["Tight-Arse", "Miser", "Stingy", "Sparing", "Adequate", "Loose", "Easy", "Generous", "Frivolous", "Excessive", "Exorbitant"] + # $ sna_support_word = sna_support_word_list[int(min(sna_support, 15)/1.5)] + + # Friendship + $ sna_friendship_word_list = ["Unknown", "Colleague", "Confidant", "Trusted", "Acquaintance", "Friend", "Good friend", "Homie", "If I had to pick a dude...", "BFF", "Bros"] + $ sna_friendship_word = sna_friendship_word_list[int(min(sna_friendship, 100)/10)] + + ### Tonks ### + + # Reputation + $ ton_reputation_word_list = ["Teacher", "Bore", "Weirdo", "A Bit Nutty", "Easy Going", "Tart", "Naughty Teacher", "Slutty Teacher", "Slag", "Shameful", "Disgrace"] + $ ton_reputation_word = ton_reputation_word_list[int(min(ton_reputation, 24)/2.4)] + + # Support + # $ ton_support_word_list = ["Undecided", "Modest", "Candid", "Unbiased", "Positive", "Fair", "Neutral", "Biased", "Scummy", "Cruel", "Heartless"] + # $ ton_support_word = ton_support_word_list[int(min(ton_support, 12)/1.2)] + + # Friendship + $ ton_friendship_word_list = ["Unknown", "inferior", "employee", "advisor", "trusted advisor", "Acquaintance", "friend", "Girlfriend", "Partner in crime", "Bonnie & Clyde", "Master & Slave"] + $ ton_friendship_word = ton_friendship_word_list[int(min(ton_friendship, 100)/10)] + + #$ ton_sluttiness_word_list = ["Masochist", "Disgrace", "Street Whore", "Harlot", "Tart", "Sexually open", "Naughty Teacher", "Easy Going", "Professor", "Bore", "Nun"] + #$ ton_sluttiness_word = ton_sluttiness_word_list[int(ton_clothing_level/10)] + + return + +label stats: + $ gui.in_context("stats_menu") + jump main_room_menu + +label stats_menu(xx=150, yy=90): + + call update_stats + + # Stats dictionary + $ stats_dict = { + "Genie": {"ico": "genie", "flag": True, "name": "Genie", "sex": "Yes", "height": "6.2ft", "weight": "200lb", "job": "Headmaster", "hates": "Lamps", "likes": "Tits"}, + "Snape": {"ico": "snape", "flag": snape_unlocked, "name": "Severus Snape", "sex": "Male", "height": "5.9ft", "weight": "155lb", "job": "Teacher", "hates": "Everyone", "likes": "Rain"}, + "Tonks": {"ico": "tonks", "flag": tonks_unlocked, "name": "Nymphadora Tonks", "sex": "Fluid", "height": "5.6ft", "weight": "130lb", "job": "Teacher", "hates": "Pineapple Pizza", "likes": "Girls"}, + "Hermione": {"ico": "hermione", "flag": hermione_unlocked, "name": "Hermione Granger", "sex": "Female", "height": "5.2ft", "weight": "126lb", "job": "Student", "hates": "Slytherin", "likes": "Books"}, + "Cho": {"ico": "cho", "flag": cho_unlocked, "name": "Cho Chang", "sex": "Female", "height": "5.1ft", "weight": "122lb", "job": "Student", "hates": "Hermione", "likes": "Winning"}, + "Luna": {"ico": "luna", "flag": luna_unlocked, "name": "Luna Lovegood", "sex": "Female", "height": "5.2ft", "weight": "117lb", "job": "Student", "hates": "Wrackspurts", "likes": "{size=-2}Magical creatures{/size}"}, + "Astoria": {"ico": "astoria", "flag": astoria_unlocked, "name": "Astoria Greengrass", "sex": "Female", "height": "5.0ft", "weight": "102lb", "job": "Student", "hates": "Rules", "likes": "Breaking them"}, + "Susan": {"ico": "susan", "flag": susan_unlocked, "name": "Susan Bones", "sex": "Female", "height": "5.1ft", "weight": "135lb", "job": "Student", "hates": "Chores", "likes": "You {size=-4}Secretly..{/size}"} + } + + $ stats_categories_sorted = ["Genie", "Snape", "Tonks", "Hermione", "Cho", "Luna", "Astoria", "Susan"] #"Ginny", "Daphne", "Padma", "Patil", "Myrtle", "Mafkin" + $ stats_categories_sorted_length = len(stats_categories_sorted) + + $ current_category = last_character.capitalize() if last_character else stats_categories_sorted[0] + $ current_item = stats_dict[current_category] + $ current_subcategory = "overview" + $ current_sorting = stats_show_locked + + $ category_items = stats_dict[current_category] + $ menu_items = category_items + $ menu_items_length = len(menu_items) + + show screen stats(xx, yy) + + label .after_init: + $ _choice = ui.interact() + + if _choice[0] == "category": + $ current_category = _choice[1] + $ category_items = stats_dict[current_category] + $ menu_items = stats_sortfilter(category_items, current_sorting) + $ menu_items_length = len(menu_items) + $ current_item = stats_dict[current_category] + #$ current_subcategory = "overview" + elif _choice[0] == "subcat": + if _choice[1] != current_subcategory: + $ current_subcategory = _choice[1] + else: + hide screen stats + return + + jump .after_init + +screen stats(xx, yy): + tag stats + zorder 30 + modal True + + add "gui_fade" + + if renpy.mobile: + use close_button_background + use close_button(key=["stats", "game_menu"]) + + fixed: + if settings.get("animations"): + at gui_animation + use stats_menu(xx, yy) + use stats_menuitem(xx, yy) + +screen stats_menu(xx, yy): + tag stats_menu + zorder 30 + modal True + + window: + style "empty" + style_prefix gui.theme('achievements') + pos (xx, yy) + xysize (207, 454) + + use invisible_button() + + add gui.format("interface/achievements/{}/panel_left.webp") + + vbox: + style_prefix gui.theme('achievements_filters') + pos (6, 384) + button action NullAction() style "empty" xsize 195 ysize 32 + frame: + style "empty" + textbutton "Show locked:" action ToggleVariable("stats_show_locked", True, False) + add gui.theme("check_{}").format(str(stats_show_locked).lower()) xalign 0.8 ypos 4 + vbox: + pos (6, 6) + for category in stats_categories_sorted: + if not stats_show_locked and not stats_dict[category]["flag"]: + pass + else: + frame: + style "empty" + xysize (195, 50) + vbox: + textbutton (category if stats_dict[category]["flag"] else "???"): + style "empty" + xysize (195, 46) + text_align (0.6, 0.5) + text_xanchor 0.5 + text_size 20 + if current_category == category: + background gui.format("interface/achievements/{}/highlight_left_b.webp") + else: + hover_background gui.format("interface/achievements/{}/highlight_left_b.webp") + action Return(["category", category]) + + add gui.format("interface/achievements/{}/spacer_left.webp") + + if stats_dict[category]["flag"]: + $ image_zoom = crop_image_zoom("interface/icons/head/"+stats_dict.get(category).get("ico")+".webp", 42, 42) + else: + $ image_zoom = crop_image_zoom("interface/icons/head/"+stats_dict.get(category).get("ico")+"_locked.webp", 42, 42) + + button: + style gui.theme("overlay_button") + background gui.format("interface/achievements/{}/iconbox.webp") + foreground "interface/achievements/glass_iconbox.webp" + xysize (48, 48) + add image_zoom align (0.5, 0.5) + +screen stats_menuitem(xx, yy): + tag stats_menuitem + zorder 30 + + window: + style "empty" + style_prefix gui.theme() + pos (xx+217, yy-53) + xysize (560, 507) + + use invisible_button() + + add gui.format("interface/achievements/{}/panel.webp") + add "interface/achievements/markup.webp" + + text "Characters" size 22 xalign 0.5 ypos 65 + + hbox: + style_prefix gui.theme("tab") + pos (15, 52) + yanchor 0.5 + + textbutton "Overview": + action [Return(["subcat", "overview"]), SelectedIf(current_subcategory=="overview")] + textbutton "Details": + action [Return(["subcat", "details"]), SelectedIf(current_subcategory=="details")] + + # Character sprites + frame: + style "empty" + xysize (200, 406) + align (1.0, 1.0) + offset (-10, -4) + + if current_category == "Genie": + add "genie" zoom 0.2 align (1.0, 1.0) xzoom -1 + elif current_category == "Snape": + if current_item["flag"]: + add "characters/snape/main/snape_09.webp" zoom 0.34 align (0.9, 1.0) xzoom 1 + else: + add "interface/characters/snape_locked.webp" zoom 0.34 align (0.9, 1.0) xzoom 1 + elif current_category == "Tonks": + if current_item["flag"]: + add tonks.get_image() zoom 0.4 align (0.7, 1.0) xzoom 1 + else: + add "interface/characters/tonks_locked.webp" zoom 0.4 align (0.7, 1.0) xzoom 1 + elif current_category == "Hermione": + if current_item["flag"]: + add hermione.get_image() zoom 0.4 align (0.7, 1.0) xzoom 1 + else: + add "interface/characters/hermione_locked.webp" zoom 0.38 align (0.65, 1.0) xzoom 1 + elif current_category == "Cho": + if current_item["flag"]: + add cho.get_image() zoom 0.4 align (0.65, 1.0) xzoom 1 + else: + add "interface/characters/cho_locked.webp" zoom 0.4 align (0.65, 1.0) xzoom 1 + elif current_category == "Luna": + if current_item["flag"]: + add luna.get_image() zoom 0.38 align (0.75, 1.0) xzoom 1 + else: + add "interface/characters/luna_locked.webp" zoom 0.38 align (0.75, 1.0) xzoom 1 + elif current_category == "Astoria": + if current_item["flag"]: + add astoria.get_image() zoom 0.4 align (0.7, 1.0) xzoom 1 + else: + add "interface/characters/astoria_locked.webp" zoom 0.38 align (0.7, 1.0) xzoom 1 + elif current_category == "Susan": + if current_item["flag"]: + add susan.get_image() zoom 0.385 align (0.65, 1.0) xzoom 1 + else: + add "interface/characters/susan_locked.webp" zoom 0.385 align (0.65, 1.0) xzoom 1 + + frame: + style "empty" + xysize (360, 406) + yalign 1.0 xoffset 6 + + if current_subcategory == "overview": + if current_item["flag"]: + text current_item["name"] size 20 xalign 0.5 xanchor 0.5 ypos 5 + else: + text "???" size 20 xalign 0.5 xanchor 0.5 ypos 5 + + vbox: + xoffset 10 + hbox: + spacing 20 + pos (10, 36) + + vbox: + text "Sex:" size 15 + text "Height:" size 15 + text "Weight:" size 15 + + vbox: + spacing 3 + if current_item["flag"]: + text current_item["sex"] size 12 + text current_item["height"] size 12 + text current_item["weight"] size 12 + else: + text "unknown" size 12 + text "unknown" size 12 + text "unknown" size 12 + + vbox: + text "Job:" size 15 + text "Hates:" size 15 + text "Likes:" size 15 + + vbox: + spacing 3 + if current_item["flag"]: + text current_item["job"] size 12 + text current_item["hates"] size 12 + text current_item["likes"] size 12 + else: + text "unknown" size 12 + text "unknown" size 12 + text "unknown" size 12 + + if current_item["flag"]: + vbox: + yoffset 35 + xoffset 50 + at transform: + zoom 0.62 + + if current_category == "Genie": + use stat_bar(int(100/10), "-Lust-", "", 100) + use stat_bar(int(0/10), "-Sanity-", "", 0) + #use stat_bar(int(speed_writing/0.25), "-Speed Writing-", "", speed_writing) + #text "Jerked off -"+str(phoenix_fed_counter)+"- times" + elif current_category == "Snape": + use stat_bar(int(3/1.0), "-Mood-" , "Grumpy", 3) + #use stat_bar(int(sna_support/1.5), "-Support-", sna_support_word, sna_support) # sna_support between 0 and 15. + use stat_bar(int(sna_friendship/10), "-Friendship-", sna_friendship_word, sna_friendship) + elif current_category == "Tonks": + use stat_bar(int(10/1.0), "-Mood-" , "Content", 10) + use stat_bar(int(ton_tier/0.2), "-Favour Tier-", "", ton_tier) # 4 will be max. + use stat_bar(int(ton_reputation/2.4), "-Reputation-", ton_reputation_word, ton_reputation) # Current max is 9. + #use stat_bar(int(ton_support/1.2), "-Support-", ton_support_word, ton_support) # ton_support between 0 and 12. + use stat_bar(int(ton_friendship/10), "-Relationship-", ton_friendship_word, ton_friendship) + elif current_category == "Hermione": + use stat_bar(int(10-her_mood/1.0), "-Mood-" , her_mood_word, her_mood) + use stat_bar(int(her_tier/0.6), "-Favour Tier-", "", her_tier) # 6 will be max. + use stat_bar(int(her_whoring/2.4), "-Whoring-", her_whoring_word, her_whoring) + use stat_bar(int(her_reputation/2.4), "-Reputation-", her_reputation_word, her_reputation) + use stat_bar(int(her_tutoring/1.5), "-Tutoring-" , her_tutoring_word, her_tutoring) + elif current_category == "Cho": + use stat_bar(int(10-cho_mood/1.0), "-Mood-" , cho_mood_word, cho_mood) + use stat_bar(int(cho_tier/0.3), "-Favour Tier-", "", cho_tier) # 4 will be max. + use stat_bar(int(cho_whoring/0.9), "-Recklessness-", cho_whoring_word, cho_whoring) + use stat_bar(int(cho_reputation/0.9), "-Reputation-", cho_reputation_word, cho_reputation) + # TODO: Re-enable after Quidditch fixes + #use stat_bar(int((cc_ht.win_counter+cc_st.win_counter)/0.6), "{size=-10}-Quidditch Training-{/size}" , "Not started", cc_ht.win_counter+cc_st.win_counter) # TODO: Add word list # TODO: Add cc_gt.match_counter & cc_gt.win_counter + elif current_category == "Luna": + use stat_bar(int(10-lun_mood/1.0), "-Mood-" , "Cheerful", lun_mood) # TODO: Add word list + use stat_bar(int(lun_tier/0.4), "-Favour Tier-", "", lun_tier) # 4 is max. + use stat_bar(int(lun_whoring/0.9), "-Corruption-", "Naive", lun_whoring) # TODO: Add word list + use stat_bar(int(10/0.9), "-Reputation-", "Total Weirdo", 10) # Joke stat + #use stat_bar(int(0), "{size=-10}-Wrackspurts Therapy-{/size}" , "Not started", 0) # TODO: Add word list and variable + elif current_category == "Astoria": + use stat_bar(int(10-ast_mood/1.0), "-Mood-" , ast_mood_word, ast_mood) + use stat_bar(int(1/1), "-Favour Tier-", "", 1) + use stat_bar(int(ast_whoring/0.8), "-Affection-", "", ast_whoring) # TODO: Add word list + use stat_bar(int(3/0.9), "-Reputation-", "Mischievous", 4) # TODO: Add word list and variable, starts at level 4 + #use stat_bar(int(ast_training_counter/0.9), "-Spell training-" , "Not started", ast_training_counter) # TODO: Add word list + elif current_category == "Susan": + use stat_bar(int(10-sus_mood/1.0), "-Mood-" , "Cheerful", sus_mood) # TODO: Add word list + use stat_bar(int(1/0.9), "-Favour Tier-", "", 1) # TODO: Add Susan tier + use stat_bar(int(sus_whoring/0.9), "-Confidence-", "Non-existent", sus_whoring) # TODO: Add word list + use stat_bar(int(0/0.9), "-Reputation-", "Invisible", 0) # TODO: Add word list and variable + use stat_bar(int(0), "{size=-10}-Assertiveness Training-{/size}" , "Not started", 0) # TODO: Add word list + else: + if current_item["flag"]: + vbox: + if current_category == "Genie": + use text_stat("Bird fed:") + use text_stat("- ", " times -", phoenix_fed_counter) + use text_stat("Bird petted:") + use text_stat("- ", " times -", phoenix_petted_counter) + use text_stat("You missed feeding your bird for:") + use text_stat("- ", " days...", (game.day - phoenix_fed_counter) ) + use text_stat("If you were a Quidditch player, you'd be a:") + use text_stat("- \"", "\" -", genie_quid_position) + + elif current_category == "Snape": + use text_stat("Hung out with Snape:") + use text_stat("- ", " times -", ss_he_drink.counter) + + elif current_category == "Tonks": + use text_stat("Hung out with Tonks:") + use text_stat("- ", " times -", nt_he_drink.counter) + + elif current_category == "Hermione": + # Tier 1 + use text_stat("You Jerked off in front of her:") + use text_stat("- ", " times -", her_jerk_off_counter) + use text_stat("You saw her panties:") + use text_stat("- ", " times -", hg_pf_admire_panties.counter) + use text_stat("You admired her tits:") + use text_stat("- ", " times -", hg_pf_admire_breasts.counter) + # Tier 2 + use text_stat("You groped her:") + use text_stat("- ", " times -", hg_pf_grope.counter) + # Tier 3 + use text_stat("Hermione has \"danced\" for you:") + use text_stat("- ", " times -", hg_pf_strip.counter) + # Tier 4 + use text_stat("Hermione has given you:") + use text_stat("- ", " Handjobs -", hg_pf_handjob.counter) + # Tier 5 + use text_stat("Hermione has given you:") + use text_stat("- ", " Blowjobs -", hg_pf_blowjob.counter) + use text_stat("Hermione has given you:") + use text_stat("- ", " Tit jobs -", hg_pf_titjob.counter) + # Tier 6 + use text_stat("You've had sex with her:") + use text_stat("- ", " times -", hg_pf_sex.counter) + + elif current_category == "Cho": + use text_stat("You Jerked off in front of her:") + use text_stat("- ", " times -", cho_jerk_off_counter) + elif current_category == "Luna": + pass + elif current_category == "Astoria": + pass + elif current_category == "Susan": + use text_stat("Cursed with Imperio:") + use text_stat("- ", " times -", ag_se_imperio_sb.counter) + +screen stat_bar(steps, top_text, bottom_text, stat_number, top_padding=20): + sensitive False + + frame: + background "#0000" + ysize top_padding + + text top_text xalign 0.5 size 30 + + frame: + background "#0000" + xalign 0.5 + ysize 30 + xsize 360 + add Crop((0, 0, steps*36, 600), gui.format("interface/stats/{}/bar_full.webp")) + add gui.format("interface/stats/{}/bar_empty.webp") + + text bottom_text+" (lvl " +str(stat_number)+ ")" xalign 0.5 size 20 + +screen text_stat(startText="", endText="", amount="", top_padding = 20): + sensitive False + + text (startText +str(amount)+ endText) xpos 20 size 14 diff --git a/game/scripts/interface/tooltip.rpy b/game/scripts/interface/tooltip.rpy new file mode 100644 index 00000000..438ec131 --- /dev/null +++ b/game/scripts/interface/tooltip.rpy @@ -0,0 +1,58 @@ +screen tooltip(): + layer "interface" + tag tooltip + zorder 5 + style_prefix "tooltip" + + default last_tooltip = "" + + if settings.get("tooltip"): + $ mouseclick = any(pygame.mouse.get_pressed()[:3]) + + # Do not remove the empty string from the statement below, + # it is a rare case when the save file gets updated but the old tooltip + # and its scope defaults last_tooltip to None value + # because it was previously unknown at the runtime, + # and we cannot hide the screen fast enough, causing a hard crash. + # This ensures it never happens. + $ tooltip = GetTooltip() or last_tooltip or "" + $ last_tooltip = tooltip + + showif GetTooltip() and not mouseclick: + $ x, y = renpy.get_mouse_pos() + $ xflip = x > 980 + $ yflip = y > 500 + $ xanchor = 1.0 if xflip else 0.0 + $ yanchor = 1.0 if yflip else 0.0 + $ xoffset = 11 if xflip else 0 + $ yoffset = 14 if yflip else 0 + + window: + id tooltip + at tooltip_follow((x+xoffset, y+yoffset), (xanchor, yanchor)) + text "[tooltip]" + +style tooltip_window is empty: + background "#00000080" + padding (12, 6) + xmaximum 300 + +style tooltip_text is default: + color "#fff" + size 10 + outlines [(1, "#00000080", 1, 0)] + +init python: + config.per_frame_screens.append("tooltip") + +transform tooltip_follow(pos, anchor): + on start: + alpha 0.0 + + on show: + anchor anchor + pos pos + linear 0.1 alpha 1.0 + + on hide: + linear 0.1 alpha 0.0 diff --git a/game/scripts/interface/topbar.rpy b/game/scripts/interface/topbar.rpy new file mode 100644 index 00000000..339da0f2 --- /dev/null +++ b/game/scripts/interface/topbar.rpy @@ -0,0 +1,256 @@ +init python: + def text_points(points): + if points < 1000: + return str(points) + else: + return str(round(points/1000.0, 1))+"{size=-2}k{/size}" + +label update_ui_points: + # Debug + + # Temp variables + $ toggle_points = False + $ toggle_menu = False + + # Outline settings + #TODO Refactor interface_color dependent styles to definitions + $ points_outline = [ (1, "#000", 0, 0) ] + + #If points variable value exceedes one thousand make it a decimal number instead and round to x.x + #Remember, "slytherin_points" is a string! If you need points integer use i.e. "slytherin" variable instead. + $ slytherin_points = text_points(slytherin) + $ gryffindor_points = text_points(gryffindor) + $ ravenclaw_points = text_points(ravenclaw) + $ hufflepuff_points = text_points(hufflepuff) + + #Check who's in the lead + $ housepoints = [slytherin, gryffindor, ravenclaw, hufflepuff] + $ housepoints_sorted = sorted(housepoints, reverse=True) + + $ slytherin_place = housepoints_sorted.index(housepoints[0])+1 + $ gryffindor_place = housepoints_sorted.index(housepoints[1])+1 + $ ravenclaw_place = housepoints_sorted.index(housepoints[2])+1 + $ hufflepuff_place = housepoints_sorted.index(housepoints[3])+1 + + # Set banners yanchor depending on the placement (ascending) + $ housepoints_y = [None, 0.0, 0.25, 0.5, 0.75] + + return + +screen ui_top_bar(): + tag ui + zorder 2 + + if toggle_menu: + use ui_menu + + add gui.format("interface/topbar/{}/bar.webp") zoom 0.5 + use ui_stats + use ui_points + + # Don't display buttons in certain rooms or on the first day + if current_room == "main_room" and game.day > 1: + # Menu button + imagebutton: + xpos 0 + idle gui.format("interface/topbar/buttons/{}/ui_menu.webp") + if room_menu_active: + hover image_hover(gui.format("interface/topbar/buttons/{}/ui_menu.webp")) + if toggle_menu: + tooltip "Close menu" + else: + tooltip "Open menu" + action ToggleVariable("toggle_menu", True, False) + + # Sleep button + imagebutton: + xpos 1080 + xanchor 1.0 + idle gui.format("interface/topbar/buttons/{}/ui_sleep.webp") + if room_menu_active: + hover image_hover(gui.format("interface/topbar/buttons/{}/ui_sleep.webp")) + if game.daytime: + action Jump("night_start") + tooltip "Doze Off (s)" + else: + action Jump("day_start") + tooltip "Sleep (s)" + + hbox: + if renpy.android: + spacing 10 + xpos 800 + else: + xpos 900 + + # Achievements button + imagebutton: + idle gui.format("interface/topbar/buttons/{}/ui_achievements.webp") + if room_menu_active: + hover image_hover(gui.format("interface/topbar/buttons/{}/ui_achievements.webp")) + tooltip "Achievements" + action Jump("achievement") + + # Stats button + imagebutton: + idle gui.format("interface/topbar/buttons/{}/ui_stats.webp") + if room_menu_active: + hover image_hover(gui.format("interface/topbar/buttons/{}/ui_stats.webp")) + tooltip "Characters (c)" + action Jump("stats") + + # Inventory button + imagebutton: + idle gui.format("interface/topbar/buttons/{}/ui_inv.webp") + if room_menu_active: + hover image_hover(gui.format("interface/topbar/buttons/{}/ui_inv.webp")) + tooltip "Inventory (i)" + action Jump("inventory") + + # Work button + if letter_work_unlock.read: + imagebutton: + idle gui.format("interface/topbar/buttons/{}/ui_work.webp") + if room_menu_active: + hover image_hover(gui.format("interface/topbar/buttons/{}/ui_work.webp")) + tooltip "Work (w)" + action Jump("paperwork") + +screen ui_points(): + tag ui + + fixed: + xalign 0.5 + xsize 162 + ysize 64 + xanchor 0.5 + + if not persistent.toggle_points and not toggle_points: + add "interface/topbar/slytherin.webp" yanchor housepoints_y[slytherin_place] + add "interface/topbar/gryffindor.webp" yanchor housepoints_y[gryffindor_place] + add "interface/topbar/ravenclaw.webp" yanchor housepoints_y[ravenclaw_place] + add "interface/topbar/hufflepuff.webp" yanchor housepoints_y[hufflepuff_place] + else: + # Add empty banners + add "interface/topbar/slytherin_empty.webp" yanchor 0 + add "interface/topbar/gryffindor_empty.webp" yanchor 0 + add "interface/topbar/ravenclaw_empty.webp" yanchor 0 + add "interface/topbar/hufflepuff_empty.webp" yanchor 0 + # Show points + text "{size=-5}{color=#FFF}[slytherin_points]{/color}{/size}" outlines points_outline xpos 17 ypos 30 xanchor 0.5 + text "{size=-5}{color=#FFF}[gryffindor_points]{/color}{/size}" outlines points_outline xpos 58 ypos 30 xanchor 0.5 + text "{size=-5}{color=#FFF}[ravenclaw_points]{/color}{/size}" outlines points_outline xpos 98 ypos 30 xanchor 0.5 + text "{size=-5}{color=#FFF}[hufflepuff_points]{/color}{/size}" outlines points_outline xpos 139 ypos 30 xanchor 0.5 + # Show placement number + text "{size=16}{color=#FFF}[slytherin_place]{/color}{/size}" outlines points_outline xpos 17 ypos 10 xanchor 0.5 + text "{size=16}{color=#FFF}[gryffindor_place]{/color}{/size}" outlines points_outline xpos 58 ypos 10 xanchor 0.5 + text "{size=16}{color=#FFF}[ravenclaw_place]{/color}{/size}" outlines points_outline xpos 98 ypos 10 xanchor 0.5 + text "{size=16}{color=#FFF}[hufflepuff_place]{/color}{/size}" outlines points_outline xpos 139 ypos 10 xanchor 0.5 + + if room_menu_active: + imagebutton: + idle "interface/topbar/hover_zone.webp" + tooltip "House Points\n{size=-2}Click to toggle style display{/size}" + hovered SetVariable("toggle_points", True) + unhovered SetVariable("toggle_points", False) + action ToggleVariable("persistent.toggle_points", True, False) + +screen ui_stats(): + tag ui + fixed: + xpos 200 + frame: + style "empty" + style_prefix gui.theme("ui_stats") + xsize 217 + ysize 26 + + add gui.format("interface/topbar/{}/stats.webp") xalign 0.5 yalign 1.0 + + hbox: + xpos 40 ypos 11 + text "{size=-4}[game.day]{/size}" + hbox: + xpos 140 ypos 11 + # Display tokens in token shop + text "{size=-4}[game.gold]{/size}" + +style light_ui_stats_text: + color "#000" + outlines [(1, "#e4ba7080", 0, 0)] + +style dark_ui_stats_text: + color "#fff" + outlines [(1, "#00000080", 0, 0)] + +screen ui_menu(): + tag ui + + button style "empty" action SetVariable("toggle_menu", False) keysym "game_menu" + + button: + ypos 34 + xsize 102 + ysize 204 + action NullAction() + style "empty" + frame: + style "empty" + style_prefix gui.theme() + ypos 34 + xsize 102 + ysize 204 + + add gui.format("interface/topbar/{}/menu.webp") + + vbox: + xanchor 0.5 + xalign 0.5 + ypos 15 + textbutton "Save" action ShowMenu("save") background None xalign 0.5 text_outlines [ (2, "#00000080", 1, 0) ] + textbutton "Load" action ShowMenu("load") background None xalign 0.5 text_outlines [ (2, "#00000080", 1, 0) ] + if game.cheats and game.difficulty <= 2 and game.day > 1: + textbutton "Cheats" action [SetVariable("toggle_menu", False), Jump("cheats")] background None xalign 0.5 text_outlines [ (2, "#00000080", 1, 0) ] + if game.day > 1 and renpy.android: + textbutton "Preferences" action ShowMenu("preferences") background None xalign 0.5 text_outlines [ (2, "#00000080", 1, 0) ] + if game.day > 1 and persistent.game_complete: + textbutton "Gallery" action [SetVariable("toggle_menu", False), Jump("scene_gallery")] background None xalign 0.5 text_outlines [ (2, "#00000080", 1, 0) ] + + #if game.day > 1 and config.developer: + # textbutton "{size=-11}Show Chars{/size}" action [SetVariable("toggle_menu", False), Jump("summon_characters")] background "#000" + + hbox: + pos (50, 185) + anchor (0.5, 0.5) + spacing 10 + # Discord + imagebutton: + idle Transform("interface/topbar/icon_discord.webp", alpha=0.5) + hover "interface/topbar/icon_discord.webp" + tooltip "Visit {color=#c1c1c1}SilverStudioGames{/color}\ndiscord" + action OpenURL("https://discord.gg/UbQeTCJ5RW") + yanchor 0.5 + # Patreon + imagebutton: + idle Transform("interface/topbar/icon_patreon.webp", alpha=0.5) + hover "interface/topbar/icon_patreon.webp" + tooltip "Visit {color=#c1c1c1}SilverStudioGames{/color}\npatreon" + action OpenURL("https://www.patreon.com/SilverStudioGames") + yanchor 0.5 + # Bugfixes + imagebutton: + idle Transform("interface/topbar/icon_bug.webp", alpha=0.5) + hover "interface/topbar/icon_bug.webp" + tooltip "PLACEHOLDER" + action NullAction() + yanchor 0.5 + +label scene_gallery: + menu: + "-Watch Ball Ending 1-" if persistent.ending_01: + $ renpy.call_replay("ball_ending_E2", { "public_whore_ending": False }) + "-Watch Ball Ending 2-" if persistent.ending_02: + $ renpy.call_replay("ball_ending_E2", { "public_whore_ending": True }) + "-Never mind-": + pass + jump main_room_menu diff --git a/game/scripts/interface/tutorials.rpy b/game/scripts/interface/tutorials.rpy new file mode 100644 index 00000000..4b1da488 --- /dev/null +++ b/game/scripts/interface/tutorials.rpy @@ -0,0 +1,63 @@ +default tutorial_dict = { + "hearts": ["Favours", "Hearts indicate your current status towards a personal favour.\n\n{color=#FFFFFF80}{b}Empty Heart{/b}{/color}{size=-2} indicates the event hasn't been seen yet.{/size}\n{color=#bf5649}{b}Red Heart{/b}{/color}{size=-2} indicates completion of the event.{/size}\n{color=#333333}{b}Black Heart{/b}{/color}{size=-2} indicates failure of the event and you should try it again at a higher character level.{/size}\n{b}{color=#FFFFFF80}Half{/color} {color=#bf5649}Heart{/color}{/b}{size=-2} indicates there's a hidden path inside the event you should follow, in order to progress further.{/size}", False], + "moodngifts": ["Mood & Gifts", "Sometimes your choices may upset some characters, just like in life. You can try and avoid picking options that you think would upset them, but if you mess up, buy them some nice {color=#204997}{b}gift{/b}{/color} and they might forgive you. Keep in mind that every character has their own gift preferences.\n\nAlternatively, you can wait until they calm down but who knows how long that would take.", False], + "hangouts": ["Hangouts", "Getting to know your accomplices is an important aspect of progressing through the game. Hanging out with Snape for example improves your friendship and support which has various benefits such as story and character related unlockables.\n\nYou can check your current relationship status in the {color=#204997}{b}characters menu{/b}{/color}.", False], + "workngold": ["Working & Gold", "Gold is a universal currency in the magical world. To earn gold you must complete at least one full report for the ministry. You can start working by clicking on the {color=#204997}{b}work button{/b}{/color} or clicking on the desk and papers.\n\nYou might find other work opportunities as you progress through the game.", False], + "inventory": ["Inventory & Items", "The inventory screen allows you to examine items you possess. You can access it by clicking on the {color=#204997}{b}inventory button{/b}{/color} located on the top right part of the screen. The inventory is split into two main categories:\n{color=#204997}{b}Gifts{/b}{/color} - Items that can be given to other characters.\n{color=#204997}{b}Quest Items{/b}{/color} - Important items related to game progression. Some of them can be used by clicking on the {b}USE{/b} button next to the item name when it's selected.", False], + "schedule": ["Outfits Schedule", "Outfits can be assigned into a set schedule, which will allow the girls to pick what they are going to wear next time you summon them, based on time of day and weather conditions.\n\nYou can assign schedules inside the Wardrobe's Outfits Manager section, by clicking on the icon represented above. \n\nThis feature can be disabled at any time in the wardrobe options menu.", False], + "points": ["House Points", "House points are awarded to students for excelling in their assignments. You can manipulate the points system directly by awarding points to students for completing their tasks, or by befriending the teachers.\n\nSome characters may care about house points more than others so keep that in mind.", False], + "map": ["Navigation", "The map allows you to traverse the castle by clicking on one of the icons. Highlighted areas indicate a new event on that location. You can access the map from within the desk menu.", False], + "time": ["Passing Time", "There's various things that you can spend your time doing at Hogwarts, but sometimes you may end up with not much to do.\nIf this is the case then you can pass time by clicking on the {color=#204997}{b}pass time button{/b}{/color} located in the top-right corner. \n\n{size=-2}Or you could always rub one out for old time's sake. The choice is yours.{/size}", False], + "mail": ["Mail", "Owls will occasionally bring you letters or parcels. Click on the owl or parcel to interact with it.\n\nUnlike mail pidgeons, owls are tidy creatures and won't shit all over your floor... Probably.", False], + "brewing": ["Potions Brewing", "Brewing potions wasn't always an easy task, but thanks to Magic Cauldron incorporated (TM), the entire process became automated. Once you have the required ingredients in your inventory, simply click on the {color=#204997}{b}cauldron{/b}{/color} to make the desired potion.", False], +} + +init python: + def tutorial_is_done(entry): + if not settings.get('tutorials'): + return True + return tutorial_dict[entry][2] + +label tutorial(entry): + if not tutorial_dict[entry][2] and settings.get('tutorials'): + $ tutorial_dict[entry][2] = True + $ renpy.play("sounds/pop01.ogg") + $ renpy.music.set_volume(0.5, 3.0) + $ gui.in_context("tutorial.display", entry) + $ renpy.music.set_volume(1.0, 3.0) + $ enable_game_menu() + return + + label .display(entry): + show screen tutorial(entry) + $ _choice = ui.interact() + return + +screen tutorial(entry): + modal True + + add "gui_fade" + + frame: + style_prefix gui.theme() + xsize 518 + align (0.5, 0.5) + padding (12 + 6, 6, 12 + 6, 12 + 6) + + vbox: + spacing 12 + first_spacing 0 + + fixed: + ysize 24 + add gui.format("interface/achievements/{}/highlight.webp") xalign 0.5 + add gui.format("interface/achievements/{}/spacer.webp") align (0.5, 1.0) + text "Tutorial" size 10 yalign 0.5 + text tutorial_dict[entry][0] size 16 xalign 0.5 yalign 0.5 + + if renpy.loadable("interface/tutorials/{}.webp".format(entry)): + add "interface/tutorials/{}.webp".format(entry) xalign 0.5 + + text tutorial_dict[entry][1] size 12 + + textbutton "Ok" align (1.0, 1.0) action Return(True) diff --git a/game/scripts/inventory/books.rpy b/game/scripts/inventory/books.rpy new file mode 100644 index 00000000..ab586b7c --- /dev/null +++ b/game/scripts/inventory/books.rpy @@ -0,0 +1,539 @@ + +default galadriel1_ITEM = Item("galadriel1_book", "book", "Tome 1: The Tale of Galadriel", 100, "This book tells the story of an elven princess who defies the traditions of her people and chooses to forge her own destiny.\nEffect: Improves imagination.", label="galadriel1_book", limit=1, caption="Read") +default galadriel2_ITEM = Item("galadriel2_book", "book", "Tome 2: The Tale of Galadriel", 200, "This is a continuation on the story of the elven princess who defies the tradition, with a twist.\nEffect: Improves imagination.", label="galadriel2_book", limit=1, caption="Read") +default gameofchairs1_ITEM = Item("game_of_chairs1_book", "book", "Tome 1: Game of Chairs", 50, "An epic tale of betrayal, murder and rape. Then some more murder, some more betrayal and some more rape.", label="game_of_chairs1_book", limit=1, caption="Read") +default gameofchairs2_ITEM = Item("game_of_chairs2_book", "book", "Tome 2: Game of Chairs", 100, "An epic tale of betrayal, murder and rape. Then some more murder, some more betrayal and some more rape.", label="game_of_chairs2_book", limit=1, caption="Read") +default gameofchairs3_ITEM = Item("game_of_chairs3_book", "book", "Tome 3: Game of Chairs", 150, "An epic tale of betrayal, murder and rape. Then some more murder, some more betrayal and some more rape.", label="game_of_chairs3_book", limit=1, caption="Read") +default my_dear_waifu_ITEM = Item("my_dear_waifu_book", "book", "My Dear Waifu", 250, "Relive the glory of your high school days and find your ultimate \"waifu\".{size=-3}\n\nEnding 01 {unicode}✘{/unicode}\nEnding 02 {unicode}✘{/unicode}\nEnding 03 {unicode}✘{/unicode}\nEnding 04 {unicode}✘{/unicode}\nEnding 05 {unicode}✘{/unicode}{/size}", label="waifu_book", limit=1, caption="Read") + +label book_start: + call weather_sound + call play_music("stop") + call play_sound("bookopen") + + if fire_in_fireplace: + call gen_chibi("read_near_fire") + with d3 + else: + call gen_chibi("read") + with d3 + return + +label book_end: + call play_sound("bookclose") + + if fire_in_fireplace: + call gen_chibi("read_near_fire_done") + else: + call gen_chibi("read_done") + return + +label galadriel1_book: + call book_start + + nar "Galadriel - a gentle and gracious elven princess is introduced into the story." + nar "Galadriel's father - King Methis, and his childhood friend Mofothelis are introduced into the story." + nar "King Methis makes an announcement. His daughter, princess Galadriel is to be wed to chancellor Mofothelis." + nar "Galadriel refuses to marry a man who is thrice her age and whom, up until now, she considered only as her uncle." + nar "King Methis dismisses her daughter's {i}foolish{/i} complaints. Galadriel decides to run away." + nar "Galadriel manages to leave the royal residence at night unnoticed..." + nar "King Methis is furious about his daughter's escape. He decides to personally lead the search party." + nar "Galadriel rides her mare named {i}white dove{/i} through the forest. The Princess enjoys her freedom..." + nar "After a while she meets a rather handsome human nobleman on a horse..." + nar "Galadriel rides alongside the nobleman. They exchange meaningless pleasantries, occasionally interrupted with laughter." + nar "Suddenly the nobleman attacks the princess and knocks her out!" + nar "When Galadriel comes to, to her horror, she realises that the nobleman is having his way with her." + nar "Galadriel is screaming for help but the man only laughs at her." + nar "Galadriel tries to fight the nobleman off. Only now she notices that about half a dozen men are surrounding them. The men are sneering viciously." + nar "After the nobleman is done with Galadriel, every one of his men in turn has a go at the elven princess. Galadriel cries and begs them to stop." + nar "Galadriel finds herself in a cage at some sort of market. Her hands are tied, Her noble garments are ripped to shreds and her hair is full of twigs and dry semen." + nar "A fat, rich looking man buys Galadriel and brings her to his house. The princess does not cry anymore. She is happy to be out of the cage." + nar "Galadriel is allowed to take a bath after which a servant brings her clean clothes and some food." + nar "Galadriel is starting to feel hopeful but it does not last. Soon she realises what kind of establishment this is: a whorehouse." + nar "The elven princess is forced to work as a whore. She detests her new life but has very little choice." + nar "Galadriel gains popularity quickly. Humans, Dark Elves and even the occasionally dwarfs - she spreads her legs for everyone." + nar "The fame of the young and beautiful elven whore spreads. Galadriel accepts her new life in the brothel." + nar "Suddenly and abruptly everything changes. Galadriel finds out that she is pregnant." + nar "The end." + + call book_end + + gen "What the fuck did I just read?" ("base", xpos="far_left", ypos="head") + + if game.daytime: + jump night_start + else: + jump day_start + +label galadriel2_book: + call book_start + + nar "Galadriel has been pregnant for several months now. To the princess' own surprise her popularity grows seemingly in direct correlation to the size of her belly." + nar "Although Galadriel maintains the appearance of an obedient whore, in truth she contemplates her escape from the brothel." + nar "The Elven Royal-Whore knows nothing of the life outside the walls of the brothel. But it does not affect her determination to escape." + nar "It takes a lot of preparation and careful planning but Galadriel manages to successfully escape from the brothel." + nar "Galadriel soon gets lost in the vast city and is forced to spend the night on the street." + nar "Food is hard to come by on the streets. Galadriel fights a pack of stray dogs over some scraps and one of them bites her hand badly." + nar "The now pregnant Galadriel offers her {i}company{/i} to a couple of filthy-looking homeless men in exchange for food. She spends the night with them." + nar "Galadriel realises that her life back in the brothel wasn't so bad compared to the live she's been leading for the past several days. She decides to return." + nar "Galadriel's owner - the fat, wealthy man does not punish Galadriel for escaping. He is happy to have one of his most popular girls back." + nar "Galadriel is, yet again, warm, fed, and full of cum. She is glad to be back and as popular as ever." + nar "Galadriel keeps servicing the clients throughout the rest of her pregnancy. The baby is due any day now..." + nar "A wealthy man wearing a mask booked Galadriel for an entire day. Galadriel is wondering about the man's true identity rather lazily while pleasuring him." + nar "The mystery man spends the entire day by having his way with Galadriel. Her engorged breasts drip milk heavily as the man fucks her." + nar "The masked man splatters Galadriel's face with cum for the second time today. He then chooses to reveal his identity and takes his mask off." + nar "Galadriel recognises the man as her father - King Methis. Only now he realises that the pregnant whore he fucked for hours is his long lost daughter." + nar "The man embraces his speechless child. Galadriel's eyes have a vacant look in them as her father's semen drips down her face..." + nar "Galadriel screams in terror. To her surprise she finds herself back in the royal residence and in her own bed." + nar "It takes the elven princess several minutes to realise that she never was pregnant. The entire adventure was nothing but a dream." + nar "Galadriel rushes to her father's chambers and embraces him. The girl is relived to have her old life \"back\". She happy agrees to marry chancellor Mofothelis." + nar "Galadriel is at the altar. She is content and happy. Suddenly she notices something that fills her heart with horror. There is a scar on her hand. The mark of a dog's bite." + nar "The end." + + call book_end + + gen "..." ("base", xpos="far_left", ypos="head") + + if game.daytime: + jump night_start + else: + jump day_start + +label game_of_chairs1_book: + call book_start + + nar "A new race of half-frozen undead monsters is introduced into the story." + nar "A family of noble northmen is introduced into the story." + nar "A group of people known as Watchmen are introduced into the story." + nar "Half-frozen undead attack the Watchmen killing everyone but one man who flees the massacre." + nar "The survivor is captured and executed for desertion." + nar "A bitch gives birth to six pups, later they are given to the children of the Nobles in the north." + nar "The royal family of the south and the king are introduced into the story." + nar "The right hand of the south king suddenly dies." + nar "South King travels North with intention of marrying his son to a Northmen noble." + nar "Children of the Northmen Nobles send their mother a letter pertaining the sudden demise of the King's right hand." + nar "The mother believes Southmen plot against the South King." + nar "South King and his family arrive at the capital of the Northmen." + nar "South Queen is having sex with her own brother. A little boy is traumatised for life after catching them in the act." + nar "The little boy is traumatised further after attempted child murder takes place. The kid barely survives and is now in a coma." + nar "A new family from across the sea is introduced into the story." + nar "The exiled prince from across the sea plans to forcefully trade his sister in exchange for the army from the local barbarians." + nar "The child-murdering, sister-fucker brags about killing the previous South King, earning himself a king-slayer title." + nar "The sister of the exiled prince from across the sea is given three ostrich-like eggs as a wedding gift." + nar "Noble Northman is appointed the new right hand of the South King." + nar "Child-murdering, king-slaying, sister-fucker sends an assassin to finish the job, but the mother and his dog kill off the attacker." + nar "The mother is not amused and suspects the Southmen are at fault." + nar "Noble Northman sends off his bastard son to serve as a Watchman up North for the rest of his days." + nar "He's also forced to take a vow of chastity." + + gen "Damn. Serving someone for eternity is one thing, but not being able to fuck is just cruel." ("base", xpos="far_left", ypos="head") + + nar "The bastard gives his tomboy sister a sword the size of a needle." + nar "A dwarf is introduced into the story." + nar "South Queen's oldest son, The Bratty Prince, kills a Northmen Commoner and threatens to kill Noble Northmen tomboy." + nar "Tomboy's overgrown dog bites the Bratty Prince." + nar "South Queen demands the dog to be killed, but Tomboy releases it to the wild." + nar "South Queen demands tomboy's sister dog is killed instead." + nar "The very traumatised boy wakes up from comma and learns that he will be crippled for life, deepening his trauma." + nar "In the meantime the exiled princess from across the sea friendzones a disgraced knight. Then she gets raped by her newly wed barbarous husband." + nar "South king laments about his debt issues." + nar "Mother of the traumatised child plans on telling her husband about the ordeal but is stopped when she meets her old friend with a peculiar nickname, Littletoe." + + gen "*He-he-he*" ("grin", xpos="far_left", ypos="head") + + nar "The virgin bastard struggles to find his place among Watchmen." + nar "The exiled princess is now pregnant and experiences a Stockholm syndrome." + nar "The princess threatens her brother." + nar "The dwarf brother of the king-slayer gives a horse saddle to the crippled boy his brother tried to kill." + nar "The new right hand of the South King investigates the demise of his predecessor, finding that his king has a bastard child." + nar "A tournament takes place." + nar "The Bastard Virgin befriends a certain chubby Watchman." + nar "Across the sea, the exiled prince has a fight with his sister." + nar "One of the Noble Northwomen daydreams about becoming a queen while her tomboy sister dreams of becoming a boy." + nar "Crippled boy's mother plans to arrest the dwarf because she believes he's responsible for the traumatic experiences of her child." + nar "A man with no balls is introduced into the story. He turns out to be a spy of the South King." + nar "South king learns that the exiled princess is pregnant and plans killing her, but his advisor talks him out of it." + nar "Right hand of the South King hands in his resignation, angering the king." + nar "Queen's brother, the sister-fucker, learns that their dwarf brother is being kept captive by the mother of the child they tried murdering." + nar "Sister-fucker wounds the king's advisor who just resigned." + nar "The king rips the letter of resignation, forcing his advisor to remain." + nar "Some execution takes place." + nar "King's advisor discovers that two sons of the king are not his." + nar "The traumatised boy learns how to ride a horse, but is attacked by North-Northmen." + nar "Noble Northmen rally the lands of the king who's fallen to the rebels, rescue him and enslave a random North-Northwoman." + nar "The dwarf bargains his life for freedom through a fair trial." + nar "The dwarf and the mother appoint their fighters, the dwarf's fighter wins." + + gen "*Gah* Nobles.. Always asking someone else to do their bidding." ("base", xpos="far_left", ypos="head") + + nar "The exiled prince grows inpatient waiting for his barbarous troops and threatens to kill his sister's barbarous unborn child." + nar "His sister's newly wed husband kills him by pouring molten gold on his head." + + gen "*heh* That's just golden." ("base", xpos="far_left", ypos="head") + + nar "King's advisor confronts the Queen about her incestuous love." + nar "The king gets wounded by a boar and dies." + nar "Dead King's advisor sends a letter to Dead King's brother, informing him about his brother's unfaithful wife." + nar "Dead King's advisor confronts the Queen and the Bratty Prince and gets taken prisoner as a result." + + gen "It's as if he's looking to get beheaded." ("base", xpos="far_left", ypos="head") + + nar "Dead King's assassin is caught by the friendzoned knight while he was trying to poison the pregnant exiled princess from across the sea." + nar "The barbarous soon-to-be daddy is not amused and vows to conquer them all." + nar "The tomboy and her sister flee north but one of them gets captured." + nar "Noble Northmen prepare the armies in attempt to free their sister." + nar "The traumatised, crippled boy is left behind to rule the North." + nar "Mother of the traumatised boy visits her sister and her milk-drinker of a son." + nar "The dwarf while heading back South is captured by the local tribesmen." + nar "Watchmen discover how half-frozen undead are born." + nar "Barbarous soon-to-be daddy does barbarous things but gets wounded in the process." + nar "Bratty prince appoints his grandpa as new King's Advisor." + nar "Daughter of the Dead King's Imprisoned Advisor begs the Bratty Prince for the life of her father." + nar "An entire nation of Seamen is introduced into the story." + nar "Mother of the crippled boy asks Seamen for help, in exchange offers her two daughters." + nar "The virgin bastard receives praise for his service and is given a steel sword." + nar "Barbarian husband is on the brink of death, his wife tries some slave magic to save him." + nar "The wife goes into labour and is being assisted by her friendzoned knight." + nar "A lot of Northmen die in a fight with the Southmen, and the king-slayer gets captured by Northmen." + nar "Northmen plan to trade the sister-fucker for their people, but South Queen turns them down." + nar "Dead King's Imprisoned Advisor swears loyalty to the Bratty Prince, hoping to not lose his head." + + gen "Finally the man has seen reason." ("base", xpos="far_left", ypos="head") + + nar "He gets beheaded anyway and his children are forced to watch." + + gen "Well, fuck." ("base", xpos="far_left", ypos="head") + + nar "Northmen rebel against other kingdoms and proclaim independence. Headless man's son is appointed as King of the North." + nar "Usurpers fight over the South Throne." + nar "King's Advisor appoints his son, the dwarf as the new advisor." + nar "The virgin bastard attempts escaping from the Watchmen but his virgin brothers convince him to stay." + nar "The tomboy escapes the South Kingdom disguised as a boy." + + gen "Surprise, surprise..." ("base", xpos="far_left", ypos="head") + + nar "The Bratty Prince plans on marrying the daughter of the man he just executed." + nar "Exiled princess gives birth, but her child is born deformed and dead. The slave magic backfired, leaving her husband in a vegetative state." + nar "She decides to end her husband's life." + nar "A funeral pyre is prepared, the princess hides her three ostrich-sized eggs inside." + nar "The witch is captured by barbarians and placed on the funeral pyre alive and set afire." + nar "Despite the pleas of the friendzoned knight, the mourning wife walks into the flames herself." + nar "When the embers die the following morning, the princess is found in the ashes, unharmed, flanked by three newly-hatched baby dragons." + nar "Friendzoned knight and other barbarians pay tribute to their new Queen of Dragons." + nar "\"This is the way.\" They say unanimously." + + nar "The end." + + call book_end + + gen "The author of this book has some serious issues." ("base", xpos="far_left", ypos="head") + gen "I wonder if it's even worth picking up the continuation..." ("base", xpos="far_left", ypos="head") + + if game.daytime: + jump night_start + else: + jump day_start + +label game_of_chairs2_book: + call book_start + + nar "A very hot sorceress is introduced into the story." + nar "The brother of the South King murdered by a boar, The Usurper King, is planning to take the South Throne for himself, with the help of his sexy sorceress." + nar "The Bratty Prince wants all bastard sons of his father dead, unbeknown of his own bastardly blood." + nar "The King of the North offers peace to the Southmen in exchange for legal independence and his sisters' safety." + nar "The King of the North sends his mum and his friend to seek alliance with another royal usurper." + nar "Some Watchmen take shelter in a house whose owner is having sexual relationship with his many daughters." + nar "Virgin Watchmen are unamused." + nar "Newly titled Queen of Dragons struggles keeping her people fed and alive." + nar "North King's friend reaches the kingdom of Seamen." + nar "North King's friend is finally reunited with his father and sister." + nar "The father shames his son by saying he's not worthy of being called a Seaman any more." + nar "South Queen rejects the peace treaty proposed by the North King and new King's Advisor, the dwarf, exiles the head of the guards to become a Watchman." + nar "The tomboy disguised as a boy admits her true identity to a boy she likes." + nar "Chubby Watchman is approached by one of the daughters that sleeps with her father, explaining she's afraid for her unborn child." + nar "Chubby Watchman asks The Bastard for help, but in his virginal jealousness he refuses." + nar "Queen of Dragons receives a severed head as a gift from an unknown party." + nar "A servant of The Usurper King recruits a pirate fleet to aid them." + nar "The Usurper King tries his luck in siring an heir with the hot sorceress, after his wife fails to produce a son." + nar "The Bastard uncovers the morbid mystery of the lack of male lineage in his host's house." + nar "Shortly after, The Bastard gets knocked out cold by the host." + nar "North King's mum arrives at yet another usurper's camp to negotiate alliance. The usurper turns out to be recently wed." + nar "A bad-ass female warrior is introduced into the story." + nar "The Married Usurper refuses to consummate his marriage because he turns out to be gay." + nar "The Gay but Married Usurper is shown banging his wife's brother in graphic details." + + gen "Poor wife." ("base", xpos="far_left", ypos="head") + + nar "Father of the North King's friend plans an attack on the Northmen with his daughter." + nar "North King's friend decides to end the friendship by joining his father and sister's vendetta against Northmen." + nar "The dwarf appoints his favourite whore as Headless Man's daughter handmaiden." + nar "The Watchmen are forced to leave their shelter because the host is 'in the mood' and needs space." + nar "When heading south to reach the North Kingdom, Watchmen are attacked by Southmen." + nar "Someone dies. Tomboy disguised as a boy and the bastard friend she likes are taken prisoner." + nar "North King's mum attempts to reunite all usurpers but they bicker about the throne." + nar "Littletoe visits North King's mum and offers her her daughters' lives for the sister-fucker." + nar "Out of nowhere, the hot sorceress gives birth to a demon baby." + + gen "What the fuck?" ("base", xpos="far_left", ypos="head") + + nar "The Bratty Prince publicly abuses his betrothed and shames her dead father." + nar "The dwarf, King's Advisor, sends two prostitutes to his chamber, in order to calm his temper." + nar "The Bratty king makes the prostitutes brutally beat each other or be killed, but the dwarf intervenes." + + gen "How dare he! That little shit!" ("angry", xpos="far_left", ypos="head") # Genie obviously means the prince. + + nar "The dwarf discovers that his sister is having an incestuous relationship with their cousin." + nar "The dwarf blackmails the cousin into spying on his lover." + nar "The tomboy disguised as a boy and her friend, the bastard child of the dead king, are taken to a local torture chamber." + nar "The grandpa of the Bratty soon-to-be King visits the torture chambers and recognizes the tomboy disguised as a boy, as just tomboy and makes her his servant." + nar "After forty days of wandering the desert, the Queen of Dragons and her sickly barbarians find shelter at a desert city." + nar "The Tomboy Servant frees three men from the torture chambers." + nar "One of the rescued men promises to kill three men she fingers, the first choice is the torturer." + nar "The hot sorceresses' demon baby kills the Usurper King's Gay Usurper brother." + nar "Dead Gay Usurper's army decides to join the killer of their leader. Except his wife and mother-in-law." + + gen "Damn. I was not expecting that." ("base", xpos="far_left", ypos="head") + + nar "The bad-ass female warrior swears fealty to North King's mum." + nar "North King's treacherous friend, against his sister's orders plans to capture the Northmen's Capital during the absence of the North King." + nar "The dwarf learns that barrels filled with oil float on water and make a great water minefield." + nar "A group of Watchmen arrives at an ancient fortress called 'Fisting of the First Men' with the intention of raiding it." + nar "Some council member proposes marriage to the Queen of Dragons, in exchange for his wealth." + nar "The friendzoned knight is unamused and advises her to gain the trust of the people another way." + nar "Against South Queen's wishes, her dwarf brother sends his niece to France for safety." + nar "North King's treacherous friend captures the Northmen's capital and executes one of his old friends." + nar "The long ago captured North-Northwoman helps the crippled boy, his challenged servant, and his friend escape." + nar "The Virgin Bastard captures himself a North-Northwoman but she escapes." + nar "The Bratty soon-to-be King incites a riot in which he almost dies, and his betrothed almost gets raped." + + gen "What did he want to achieve? Stupid." ("base", xpos="far_left", ypos="head") + + nar "Bratty soon-to-be King's grandpa allows Littletoe to seek alliance abroad, in France." + nar "An officer who suspected the Tomboy Servant's true identity now lays dead. That was her second wish." + nar "North King receives news about his treacherous friend's doing and sends men to retake the capital." + nar "Queen of Dragons starts building herself an Ark for the money borrowed from the wealthy noble who proposed to her." + nar "In the meantime someone steals her dragons, making her a Queen of Stolen Dragons." + nar "Treacherous friend is looking for brothers of the friend he betrayed and plans on killing them." + nar "The grandpa of the Bratty soon-to-be king is looking for the killer of the officer that was recently found." + nar "The Virgin Bastard recaptures the North-Northwoman but she escapes his clutches again, leading him to a trap." + nar "South Queen warns her son's betrothed that she should love no one else but her own children." + nar "Sister-fucker escapes from North King's prison but has left a trail." + nar "Some highly regarded warlock admits to Queen of the Stolen Dragons that he stole the dragons and offers them back." + nar "The city council gets slaughtered and the noble who proposed marriage to the Queen of Dragons is made King." + nar "The treacherous friend burns two children of the local commoners and presents them as the brothers of the friend he betrayed." + nar "North King learns that his own mum secretly freed the sister-fucker, escorted by the bad-ass female warrior, in order to exchange him for his sisters." + nar "North King gives his mum house arrest." + nar "North King seeks a medic to heal his boner. He succeeds." + nar "Sister of the treacherous friend arrives at Northmen's Seized Capital and criticises him for it." + nar "Grandpa of the Bratty soon-to-be King leaves the capital with his army." + nar "The Tomboy Servant, her friend, the man that kills for her, and Hot Pie escape." + + gen "Hot pie? What?" ("base", xpos="far_left", ypos="head") + + nar "South Queen blackmails her dwarf brother by abducting one of the local whores." + nar "The Bratty soon-to-be king ridicules the man with no balls, who happens to be his spy and plans on attacking the Usurper King." + nar "The North-Northmen capture the Virgin Bastard and lead him to the North-North King." + nar "The watchmen whom raided the ancient fortress find a stash full of weapons made of glass." + nar "The friendzoned Knight accompanies the Queen of Stolen Dragons in order to retrieve the stolen dragons." + nar "The Usurper's king fleet attacks Southmen's Capital." + nar "The betrothed of the bratty soon-to-be king convinces him to lead the defence forces, hoping he gets killed." + nar "The Bratty soon-to-be King chickens out." + + gen "Well. I can't blame her for trying." ("base", xpos="far_left", ypos="head") + + nar "The dwarf takes over the forces and leads the defense." + nar "The oil barrel minefield turns out to be very effective." + nar "One of the defence leaders calls the Bratty soon-to-be King a coward and resigns." + nar "The Usurper's forces rally the castle, the Bratty, cowardly soon-to-be King holds on his mum's skirt in fear." + nar "South Queen takes her other, younger son, and plans to kill him to save him from being captured." + + gen "What was it again? 'Love her children more than anything' she said *huh*?" ("base", xpos="far_left", ypos="head") + + nar "The whore handmaiden of cowardly soon-to-be king's betrothed and the betrothed herself hide in the castle." + nar "A rather ugly Southman soldier offers to take the girl home, but she refuses." + nar "The dwarf lies wounded. Cowardly soon-to-be king's grandpa comes to the rescue, forcing the usurper king to retreat." + nar "The Cowardly soon-to-be King decides that he's bored of his betrothed, breaking their engagement as he plans to marry one of the French girls." + nar "The dwarf is worried for his whores when his father is appointed as King's Advisor again." + nar "The Usurper King is being comforted by the hot sorceress." + nar "The bad-ass female warrior protects the sister-fucker from his demise." + nar "North King's mum fails to talk her son out of marrying one of the local girls." + nar "The Queen of Stolen Dragons gets high and sees her dead husband and her dead child." + nar "One of the dragons had a gastric reflux and burnt the warlock. The warlock and the noble were planning on betraying her anyway. The noble is locked up." + nar "Treacherous friend of the North King demands his men to bring the fight to the North King, so they knock him out cold." + nar "Northmen's Capitol is burnt to the ground." + nar "After the Tomboy, her friend, the man who kills for her, and Hot Pie escape..." + + gen "This Hot Pie again...?" ("base", xpos="far_left", ypos="head") + + nar "...The tomboy is given a worthless coin by the killer, that will allow her to be led to him." + nar "Before the man departs, his face magically changes to the face of another man." + nar "The Virgin Bastard is forced to kill one of his friends to prove himself to the North-Northmen." + nar "An army of half-frozen undead surrounds the ancient fortress named 'Fisting of the First Men'." + nar "The chubby watchman pisses himself as he sees them pass." + nar "The end." + + call book_end + + gen "There's so much going on I don't even know how to describe it all." ("base", xpos="far_left", ypos="head") + gen "I doubt that's the last book in the series though." ("base", xpos="far_left", ypos="head") + + if game.daytime: + jump night_start + else: + jump day_start + +label game_of_chairs3_book: + call book_start + + nar "A massacre takes place." + nar "Chubby Watchman and the rest of his friends that survived the attack of the half-frozen undead decide to retreat." + nar "After his imprisonment, The Virgin bastard decides to switch sides and joins North-Northmen." + nar "Littletoe offers the dwarf's betrothed to return her to her lands but she again refuses." + nar "The Usurper King's servant tries to kill the hot sorceress and gets imprisoned." + nar "Queen of Dragons plans to expand her army." + nar "South Queen's brother and his bad-ass female warrior companion travel south but get captured by Seamen." + nar "A funeral takes place." + nar "The Tomboy disguised as a boy, her friend and Hot Pie rest at a local inn." + nar "Burnt-faced man discovers the identity of the tomboy disguised as a boy." + nar "Dwarf's betrothed gossips about the Bratty soon-to-be King with his soon-to-be mother-in-law." + nar "Treacherous friend gets tortured by unknown captors." + nar "The cripple, his challenged servant and North-Northwoman encounter other children nobles." + nar "One of the noble children tells the cripple that he can enter the minds of animals." + nar "Littletoe is sent with the intention that he marry milk-drinker's mum." + nar "Hot Pie is employed by the Inn. The tomboy disguised as a boy and her friend split up with Hot Pie." + + gen "I still have no damn clue who that Hot Pie is, but I'm happy for them. I guess." ("base", xpos="far_left", ypos="head") + + nar "The Virgin Bastard plans on attacking the Watchmen with North-Northmen." + nar "The North-Northwoman stolen by the chubby watchman is carrying a child of her own father and soon enough gives birth." + nar "The Treacherous Friend is being freed by an unknown man." + nar "Hot sorceress travels south, looking for more royal blood." + + gen "She must be thirsty." ("base", xpos="far_left", ypos="head") + + nar "Queen of Dragons wants to trade one of her dragons for 8,000 eunuchs and an interpreter." + nar "Sister-fucker bets his right hand that his travel companion won't get raped by their captors." + nar "She's safe, but sister-fucker loses a hand anyway, earning himself a new title." + nar "The Treacherous Friend's rescuer betrays him, puts him in a cell and starts torturing him again." + nar "One-handed Sister-fucker child-murdering king-slayer and his bad-ass female warrior companion try escaping but fail." + nar "A man with no balls tells the dwarf a story how he lost his jewels." + nar "Watchmen are at war with Watchmen." + nar "A chubby watchman decides to adopt the North-Northwoman's incest child and flee south with them." + nar "The tomboy disguised as a boy and her friend are taken to a cave by the brotherhood." + nar "Dwarf's betrothed is given a proposition to marry another man but it turns out the man is gay, and French." + nar "Queen of Dragons after acquiring her eunuch army, tricks the slavers she traded with and kills them." + nar "One of the eunuchs is appointed as leader of the eunuch army." + nar "The Dwarf is concerned about his family's financial debts." + nar "The dwarf discovers that his betrothed is planning to marry a gay man, so he sets his sister -- The Queen -- to marry the gay man instead." + nar "Dwarf's betrothed tells Littletoe that she wants to remain in South Kingdom and asks for a green card." + nar "The father of the dwarf discovers that his son's betrothed was planning to marry the gay French man." + nar "The Usurper King tells his wife he's been unfaithful to her. She tells him that she's happy for him." + nar "The Usurper King's daughter teaches his attempted-murderer of a servant how to read." + nar "In the caves of the brotherhood, two people have a duel to death, one of them dies." + nar "The man that died during the duel is resurrected." + + gen "Bloody cheater." ("base", xpos="far_left", ypos="head") + + nar "When sister-fucker and his bad-ass companion reach the city of Seamen, he brags about how he killed the previous-previous South King with one hand." + nar "North King gets bored and executes some of his men." + nar "The Virgin Bastard is seduced by the woman he was chasing all this time." + nar "The Bastard is no longer a virgin." + nar "The grandpa of the Bratty soon-to-be King coerces future mother-in-law to marry The Queen, his daughter, to mother-in-law's son." + nar "The dwarf informs his betrothed and her whore of a handmaiden that they're now engaged. She acts surprised." + nar "South Queen tells her dwarf brother, that her son was hoping to see him dead during the last siege." + nar "Littletoe tells the man with no balls about the dead informant that the Bratty soon-to-be King has killed." + nar "The hot sorceress stops by the brotherhood and decides to buy herself a young boy, who happens to be tomboy's friend." + nar "North King tries to reconcile with the Seamen." + nar "Treacherous Tortured Friend is still being tortured." + nar "A cripple starts looking for a multi-eyed bird." + nar "The no-longer-a-virgin bastard is still with the North-Northwoman, their loud relationship angers the locals." + nar "Treacherous Tortured Friend gets gelded, losing his family jewels in the process." + + gen "That's fucked up man..." ("base", xpos="far_left", ypos="head") + + nar "The tomboy escapes the brotherhood but is captured in the process." + nar "Hot sorceress tells tomboy's friend that he is a son of the king who was killed by a boar." + nar "The handmaiden whore threatens the dwarf that their relationship will end if he marries his betrothed." + nar "The bratty soon-to-be king and his Grandpa joke about rumoured Queen of Dragons." + nar "Queen of Dragons sieges another city." + nar "One-handed sister-fucker waves goodbye after attending an unimportant wedding ceremony." + nar "Bad-ass female warrior is fighting in a pit, one-handed sister-fucker decides to lend her a hand." + nar "The dwarf and his betrothed get married." + nar "Father of the dwarf demands he sire an heir, and soon, but the dwarf's new wife has a permanent migraine." + nar "The captured tomboy is prepared to be sold to her brother for ransom." + nar "The attempted-murderer of a servant is let free." + nar "Hot sorceress seduces her boy-toy and puts leeches on him to suck out his royal blood." + + gen "First birthing demons now sucking some poor boy, and not in the fun way. That bitch is out of her mind." ("base", xpos="far_left", ypos="head") + + nar "The Usurper King throws the leeches into the fire and curses other usurpers." + nar "Queen of Dragons seduces the enemy's lieutenant, making him switch sides." + nar "Chubby Watchman, his step-son and his lover get attacked by half-frozen undead." + nar "Chubby Watchman trips over and stabs the half-frozen undead with a glass dagger and kills it. They flee back north." + nar "Meanwhile the crippled boy has learnt magic and decides to practice it on his challenged servant." + nar "The bastard refuses to kill an innocent man, but his girlfriend has no such moral dilemmas." + nar "The bastard is being labelled a coward and is forced to flee, with the help of his step-brother's overgrown dog." + nar "His girlfriend becomes his ex-girlfriend." + nar "Queen of Dragons infiltrates the city, asking the slaves she's found to join her, which they do." + nar "North King once again tries to reconcile with the Seamen." + nar "Seamen in return kill his mother, his friends and finally they kill him too." + nar "Dead North King's sister appears at the time of the massacre but is rescued to safety by a man with burnt face." + nar "Seamen are rewarded by the South Queen for killing the North King." + nar "The now Gelded, Tortured, Treacherous friend learns that his own men traded him for a free passage." + + gen "Balls. It's almost as if the book author had a personal vendetta against that poor guy..." ("base", xpos="far_left", ypos="head") + + nar "Sister of the Gelded, Tortured, Treacherous friend plans on freeing her brother." + nar "The tomboy and her burnt-faced rescuer go rampage." + nar "The one-handed sister-fucker is finally reunited with his Queen. They shake hands." + nar "Chubby Watchman and his family meet the now magically fluent crippled boy and his companions." + nar "The family decides to give them their glass weapon." + nar "Chubby Watchman warns other kingdoms about half-frozen undead." + nar "The Bastard's ex-girlfriend finds him and shoots him three times with an arrow at point-blank range." + + gen "Shouldn't have put your dick in crazy." ("base", xpos="far_left", ypos="head") + + nar "The Bastard says it's just a flesh wound and walks it off." + + gen "Right..." ("base", xpos="far_left", ypos="head") + + nar "The attempted-murderer of a servant tries freeing the hot sorceresses boy-toy to prevent him from being sucked to death." + nar "Queen of Dragons wins the battle and basks in her glory." + nar "The end." + + call book_end + + gen "I don't know what's with the frequent mentions of balls removal, tortures, and death but colour me morbidly curious." ("base", xpos="far_left", ypos="head") + + if game.daytime: + jump night_start + else: + jump day_start + +label quidditch_guide_book: + call book_start + + nar "Quidditch - One of the most popular sports in the wizarding world is a team based sport played on broomsticks..." + nar "Two opposing teams with seven people making up each team go up against each other..." + nar "The game is played using four balls... One quaffle, two bludgers and one snitch.\nThe beginning of the match is signalled by the quaffle being thrown into the air by the referee..." + nar "Quidditch, unlike many other sports is played on an oval shaped pitch with a scoring area on each end..." + nar "Much like other sports, you're not allowed to go outside the boundary lines with the quaffle or you'd have to hand it over to the opposing team..." + nar "When the game is set in motion each player takes their assigned positions.\nThere's three chasers, two beaters, one keeper and one seeker..." + nar "The chasers purpose is to score the Quaffle. Beaters on the other hand is to hit them with the bludgers as to knock the ball out of their grasp... The keeper blocks the goal and the seeker needs to catch the snitch." + nar "As most injuries are easily remedied through magical means there's nothing to stop a player from knocking into one another as to get a hold of the Quaffle. Distraction tactics are also common even during official matches..." + nar "The way scoring is done is when the chaser has a hold of the quaffle they need to get to the opponent's side of the pitch and score it by getting it through a hoop..." + nar "The winning team is decided once the snitch is caught which is worth 150 points to the team of which seeker caught it. Therefore a match could technically go on forever... The longest Quidditch match went on for about 3 months..." + + call book_end + + if quidditchguide_ITEM.used: + gen "I already knew all of that nonsense..." ("base", xpos="far_left", ypos="head") + else: + gen "Bludgers and quaffles?" ("base", xpos="far_left", ypos="head") + gen "This is even more stupid than I imagined." ("base", xpos="far_left", ypos="head") + + $ quidditchguide_ITEM.used = True + if game.daytime: + jump night_start + else: + jump day_start diff --git a/game/scripts/inventory/books_waifu.rpy b/game/scripts/inventory/books_waifu.rpy new file mode 100644 index 00000000..c51c949a --- /dev/null +++ b/game/scripts/inventory/books_waifu.rpy @@ -0,0 +1,342 @@ +default waifu_progression = { + "generic_ending" : False, + "shea_ending": False, + "stevens_ending": False, + "leena_ending": False, + "harem_ending": False, +} + +define waifu_chapters = { + + # Each number represents a day spent in school. + 1: "You are a male student who is sharing his home with his cute step-sister Shea.", + 2: "During classes Ms Stevens is droning away about something. You admire her chest to stay awake. She's way too hot to be a teacher.", + 3: "You meet your step-sister at school. Unlike you, Shea is quite popular among her classmates, but She all but denies your existence.", + 4: "You bump into a girl in the hallway, She is wearing thick glasses and acts very shy. afterwards She apologises and quickly runs off, is she even a student of this school?", + 5: "Ms Stevens is organizing extracurricular activities today. You decide to show up in hopes of extra credit.", + 6: "A bully takes your lunch money today. Later Shea shows up and brings the bully with her, He apologises and returns you your money. Shea can be scary...", + 7: "Another boring class. You ignore the teacher completely and daydream about getting a degree in art and becoming a professional hentai-manga artist.", + 8: "Another terribly generic school day, Ms Stevens' modest green suit does little to conceal her attractive figure. You couldn't care less about the topic of her class though." , + 9: "You ditch your classes and roam through the deserted school corridors, pretending to be the sole survivor of some deadly virus. The janitor spots you, He's infected! You run for your life." , + 10: "The same bully takes your money again. An hour later an ambulance parks before school, Some guy broke his hand. You recognise your bully... Did Shea do this to him?", + 11: "Another day in school. After the incident with the bully, people are looking at you funnily, but they seem to adore Shea more than ever. How is she doing it?", + 12: "You have no classes with Ms Stevens today. So why even bother? You fall asleep behind your desk.", + 13: "Your classmates all seem to be very excited about the upcoming prom, but You couldn't care less for the stupid thing.", + 14: "Another boring class. You gaze out of the window and notice a suspicious looking black van with tinted windows parked nearby the school library building. Why?", + 15: "You overhear one of your classmates talking about starting a secret \"Ms Stevens fan club\". Not very surprising, considering how attractive she is.", + 16: "Everyone's excitement about the upcoming prom grows with every day. You toy with an idea of asking someone to the prom, but decide to save yourself the awkwardness." , + 17: "Ms Stevens is wearing her skintight business suit again today. All the guys in your class look very eager to learn, while many of the girls are pouting.", + 18: "The graduation ceremony is tomorrow. Everyone is very excited, but You just want this day to end.", + 19: "Today is your graduation day. You see your classmates getting emotional during the ceremony, but you don't care much.", + 20: "The prom will take place tonight. You have nothing to do today, No chores, no homework... So this is how it feels to be free!?", + + # The number of dates is equal to the number of maximum character points. + "shea_dates": [ + "You return home and walk in on Shea taking a bath. You stare at her tits until she knocks you out cold with one of her trademark punches.", + "At home, Shea cooks supper for you. You catch a glimpse of her panties and she knocks you out cold again with one of her trademark punches.", + "You return home and The house is empty, so You decide to watch an adult movie in the living room. Shea walks in on you... and knocks you out with one of her trademark punches.", + "It's a stormy night with rain and thunder. Frightened, Shea crawls into your bed. Your manhood gets hard and Shea knocks you out with one of her trademark punches.", + "As a peace offering you decide to clean Shea's room. She doesn't appreciate such an invasion of privacy and dishes out another one of her trademark punches, which knocks you out cold.", + "The house is empty. You decide to watch an adult movie in the living room, but Shea walks in on you again. You expect another punch but she just runs off.", + "You come to Shea's room to apologise for the last time. She is wearing her pyjamas. You get a little hard during your apology. She accepts your apology blushing." , + "It's raining again, so Shea sneaks into your bed at night. She kisses you and asks you to take her anal virginity. You have anal sex with your little step sister.", + "Shea sneaks into your room after supper. While your parents finish eating downstairs, you drill your sister's little asshole with your cock while she moans enthusiastically.", + ], + + # Only the ending [A] is the 'true ending' for each character, other variants belong to the generic ending. + "shea_ending": { + "a": [ + "You decide to stay home and, To your surprise, Shea does the same. Then, out of nowhere she asks you out for the prom.", + "The prom night goes by in a generic way. You dance with your step-sister and Everybody thinks it's because she took pity on you.", + "When the prom is over you and Shea return home. That night you take your little step-sister's virginity. And then she asks you to stick it up her butt as well.", + "It's been a year. Both you and Shea are students at the same university, You choose completely different majors, but you are still together and very happy.", + "{size=+5}-Ending 02 of 05-{/size}" + ], + + "b": [ + "You decide to stay home and to your surprise, Shea does the same. You toy with the idea of asking her out to the prom but then decide against it.", + "Shea goes to the prom with some other guy, while you stay home.", + "It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future.", + "{size=+5}-Ending 01 of 05-{/size}" + ], + + "c": [ + "You decide to stay home and bail on the prom.", + "It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future.", + "{size=+5}-Ending 01 of 05-{/size}" + ], + }, + + "stevens_dates": [ + "You decide to roam around the school for a while. Ms Stevens is sitting behind a desk in one of the classrooms, working and you end up secretly watching her.", + "You find Ms Stevens working in one of the empty classrooms again. This time She notices you and You have to lie your way out of it. She gives you a big home assignment.", + "Ms Stevens finds you roaming around in some deserted school corridors. You haven't completed the assignment she gave you yet. She treats you with contempt for some reason.", + "You bump into your teacher Ms Stevens again. Is she stalking your or something? It's the assignment thing again. You start to really dislike the woman.", + "You try to avoid Ms Stevens but fail. Your assignment is not completed yet and You grow tired of her droning on about \"how terrible pupils like you fail at life\".", + "Ms Stevens lectures you again. While doing so she Accidentally spills her tea on your lap. Afterwards She uses a tissue to rub it off, even though You get aroused by that she pretends not to notice.", + "Ms Stevens lectures you once again. Suddenly she kisses your lips, apologises and asks you to keep this a secret. You return home very confused.", + "You decide to roam the school after your classes again in hopes of running into Ms Stevens, but you can't find her anywhere...", + "Ms Stevens invites you to her office. She grabs your crotch and fondles your hard cock for a while, but then just sends you on your way. You return home in a daze.", + ], + + "stevens_ending": { + "a": [ + "The School gym is full of all sorts of decorations for tonight's prom. Ms Stevens is the head of the decorating committee, she seems very busy.", + "You tell Ms Stevens about your plan to skip the prom. She gets mad, then grabs your crotch and whispers that she will let you cum on her face if you change your mind.", + "Later that night you show up for the prom. You dance with Ms Stevens, she then takes you to the janitor's closet and let's you jerk off on her face. You plaster it with cum.", + "It's been a year... You tried to stay in touch with Ms Stevens, but it seems like the moment you stopped being one of her pupils she lost all of her interest in you.", + "But your experience with her motivated you to follow your dream of becoming an adult comics artist. Now you attend a prestigious art-school and are actually quite happy.", + "{size=+5}-Ending 03 of 05-{/size}" + ], + + "b": [ + "The School gym is full of all sorts of decorations for tonight's prom. Ms Stevens is the head of the decorating committee, she seems very busy.", + "She notices you. You tell her about your plan to bail on the prom, but it Doesn't look like she cares.", + "You return home and go to bed early.", + "It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future.", + "{size=+5}-Ending 01 of 05-{/size}" + ], + + "c": [ + "School gym is full of all sorts of declarations for tonight's prom. What of time the whole thing is...", + "You return home and go to sleep early.", + "It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future.", + "{size=+5}-Ending 01 of 05-{/size}" + ], + }, + + "leena_dates": [ + "You go to the school library. Apart from an unfamiliar dark haired girl in the corner you are the only visitor. You spend some time with reading a sci-fi novel.", + "You're at the library. There is that girl with the glasses again. You read your sci-fi book and catch the girl staring at you A couple of times. What's her problem?", + "Seems like the girl is always here. You look at her properly for the first time: long dark hair, glasses, with a well-formed body. She is sort of cute, but this time she catches you staring.", + "The girl is here, just as always. She looks very shy, so You decide to talk to her, but she just ignores you at first and then simply leaves. She's a weird one.", + "The silent, dark haired girl is absent today, so You just take your usual seat. But There is a note from her in which She apologises, then says that she actually likes you and apologises again.", + "It's just you again. The girl is not here, there's No note either. You can't remember ever seeing her in school apart from that one time. Who the hell is that silent beauty?", + "You try to read your sci-fi novel, but you just can't concentrate. Suddenly The girl takes a seat next to you. You wait for an explanation but she just pretends to read her book.", + "You pretend to read while you wait for the girl. She takes the seat beside you again and starts rubbing your crotch under the desk. What's the matter with her?!", + "As soon as you show up the girl drags you behind a bookshelf and begs you to fuck her. You comply, cum inside of her and she returns to her desk, while you just keep on standing there, confused and speechless.", + ], + + "leena_ending": { + "a": [ + "You ignore the prom and head towards the library. It's deserted, so You take your usual seat. You're surprised to see the dark haired girl crouching under your desk.", + "Two men in black suits appear just as she puts your dick into her mouth. They take her away and you just stand there stupefied and confused with your trousers down. What the heck?", + "The girl shows up at your doorstep Early on the next morning. She says that she's in the witness protection program, and that her cover has now been compromised because of you...", + "It's been two years now. You and the \"library girl\" got married. You live in a beach-house at a secret location with new names.", + "You are very much in love with her and left your past behind for her. she's so grateful that, more often than not, you find your cock deep down her throat.", + "{size=+5}-Ending 04 of 05-{/size}" + ], + + "b": [ + "You ignore the prom and head towards the library. It's deserted, so You take your usual seat. A girl appears out of nowhere and sits beside you.", + "She starts talking to you and says her name is Leena, but Suddenly two men in black suits appear. You see fear on her face as They take her away. You wish you could do something...", + "It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future.", + "{size=+5}-Ending 01 of 05-{/size}" + ], + + "c": [ + "You ignore the prom and head towards the library. It's deserted, so you take your usual seat. After a while you return home and go to bed." + "It's been a year. You attend a university abroad and actually enjoy learning for a change, so you seldom think about the past and have high hopes for your future.", + "{size=+5}-Ending 01 of 05-{/size}" + ], + }, + + # This ending is unlocked only after you reach every other character ending. (Generic ending isn't necessary) + "harem_ending": [ + "You decide to go to the prom and you're surprised to see the \"library girl\" there. She invites you to a dance and kisses you. You notice Shea staring at you incredulously.", + "The \"library girl\" leads you outside. She kisses you, takes your dick out and starts jerking it. Shea appears from behind the corner of the building.", + "Shea gets mad and starts yelling at the girl who continues to jerk you off. Alarmed by all the yelling Ms Stevens shows up and You still have your trousers down.", + "You pull your trousers up, completely embarrassed. Ms Stevens stays calm and simply leaves to bring her car around. Afterwards She orders all of you in the car and takes you to a motel.", + "In the motel room she grabs your crotch, takes your cock out and starts jerking it off. Shea is in shock but the \"library girl\" is already kissing you.", + "Reluctantly Shea joins the girls. You fuck your step sister first, up her butt of course. The \"library girl\" is next in line, Then Ms Stevens.", + "When you wake up everyone but Shea is gone. Your step-sister is asleep, You spread her buttcheeks and slide your morning wood up her tight asshole.", + "It's been a year. Ms Stevens is still working at your school and in regards to the dark haired girl... you have no idea what has become of her.", + "Both you and Shea are students at the same university...", + "You've been together since that night in the motel, but you still keep it a secret from everyone. Your only worry these days is Shea's insane appetite for the anal sex.", + "{size=+5}-Ending 05 of 05-{/size}" + ], + + # Random fluff that can happen. It's not important to the plot. + "random_school": [ + "You go to the school stadium and relax on the bleachers, while you watch cheerleaders practise in the distance...", + "You sneak to your secret place: the school building's rooftop and watch heavy clouds creep closer slowly high above, hoping that it's gonna rain tonight.", + "You roam through the deserted school hallways and run into the janitor. He gives you the stink eye and goes on about his business. You head home." , + "You buy a chocolate bar from a vending machine, then sneak into one of the empty classrooms and spend a couple of hours with reading one of your favourite sci-fi novels.", + "You roam through the deserted school hallways for a while. It's starting to rain. Your step-sister Shea is terrified of thunder so You hope for a stormy night.", + ], + + "random_home": [ + "You return home. The house is empty. You decide to play some video games till the evening.", + "You return home. The house is empty. You decide to watch an adult movie in the living room.", + "You return home. Your father is home early. You decide to go for a jog to avoid his awkward questions about your personal life.", + "You return home. Your step-mother is home early. You listen to her going on and on about something trivial and wonder why your father decided to marry her.", + "You return home. The house is empty. You decide to use this precious moment of solitude to take a nap.", + ], + + "random_library": [ + "You head towards the school library and notice a man in a black suit near the entrance, half expecting him to prevent you from entering, but he ignores you.", + "You spend the rest of the day at the school library, read your sci-fi book, take a nap, buy candy from the vending machine and then read some more. Life is great!", + "You browse through ancient-looking bookshelves, hoping to stumble on a long forgotten book of spells or something, but You just get bored soon and decide to head home.", + "The library is deserted, so You hide behind a bookshelf and jerk off while imagining Ms Stevens giving a lecture in her underwear.", + "You hear voices and hide behind a bookshelf. From there you see one of the cheerleader girls making out with two of the jocks at once, so You decide to leave before you get in trouble.", + ], +} + +label waifu_book: + + # Setup + $ day = 1 + + $ shea_points = 0 + $ stevens_points = 0 + $ leena_points = 0 + + $ generic_ending = waifu_progression["generic_ending"] + $ shea_ending = waifu_progression["shea_ending"] + $ stevens_ending = waifu_progression["stevens_ending"] + $ leena_ending = waifu_progression["leena_ending"] + $ harem_ending = waifu_progression["harem_ending"] + + $ shea_dates = waifu_chapters["shea_dates"] + $ stevens_dates = waifu_chapters["stevens_dates"] + $ leena_dates = waifu_chapters["leena_dates"] + + call book_start + + if not shea_ending and not stevens_ending and not leena_ending: + "Dear reader. This is not one of your typical books--" + + gen "Looks typical to me..." ("base", xpos="far_left", ypos="head") + + "Dear reader. This is not one of your typical books{fast} it's a \"choose your own adventure\" gamebook. Your choices will determine the book's ending. Have fun!" + + gen "Oh, it's one of \"those\" books." ("base", xpos="far_left", ypos="head") + gen "Let's see..." ("base", xpos="far_left", ypos="head") + + # DAY LOOP + label .day_start: + + $ chapter = waifu_chapters[day] + + $ renpy.say("\"Day [day]\"", chapter, what_prefix="{size=-2}", what_suffix="{/size}") + + menu: + "\"Day [day]\"" "{size=-2}What would you like to do after school today?{/size}" + + "-Hang at the school building-": + if day in {1,4,6,7,10,13,15,16,18,20}: + $ chapter = stevens_dates[stevens_points] + $ stevens_points = min(stevens_points+1, len(stevens_dates)-1) + else: + $ chapter = renpy.random.choice(waifu_chapters["random_school"]) + + "-Go home-": + if day in {1,2,6,9,10,12,14,15,17,20}: + $ chapter = shea_dates[shea_points] + $ shea_points = min(shea_points+1, len(shea_dates)-1) + else: + $ chapter = renpy.random.choice(waifu_chapters["random_home"]) + + "-Go to the library-": + if day in {4,6,7,8,10,12,13,16,18,20}: + $ chapter = leena_dates[leena_points] + $ leena_points = min(leena_points+1, len(leena_dates)-1) + else: + $ chapter = renpy.random.choice(waifu_chapters["random_library"]) + + $ renpy.say("\"Day [day]\"", chapter, what_prefix="{size=-2}", what_suffix="{/size}") + + "{size=+5}-End of day [day]-{/size}" + + $ day += 1 + + if day < 20: + jump .day_start + + # ENDING CHOICE + label .end_choice: + + $ chapter = waifu_chapters[day] + + $ renpy.say("\"Day [day]\"", chapter, what_prefix="{size=-2}", what_suffix="{/size}") + + menu: + "\"Day [day]\"" "What would you like to do for the rest of the day?" + + "-Hang around the school building-": + $ flag = stevens_points + $ ending_choice = "stevens_ending" + + "-Stay home-": + $ flag = shea_points + $ ending_choice = "shea_ending" + + "-Hang around the library-": + $ flag = leena_points + $ ending_choice = "leena_ending" + + "-Go to the prom-" if shea_ending and stevens_ending and leena_ending: + $ ending_choice = "harem_ending" + $ epilogue = waifu_chapters[ending_choice] + + jump .end + + $ ending = waifu_chapters[ending_choice] + + if flag >= 7: + $ epilogue = list(ending["a"]) + elif flag >= 4: + $ epilogue = list(ending["b"]) + else: + $ epilogue = list(ending["c"]) + + # EPILOGUE + label .end: + + while epilogue: + $ renpy.say("\"Epilogue\"", epilogue.pop(0), what_prefix="{size=-2}", what_suffix="{/size}") + + call book_end + + if ending_choice == "harem_ending": + $ waifu_progression[ending_choice] = True + + gen "That was unexpected, and hot!" ("grin", xpos="far_left", ypos="head") + gen "I guess that's all the book has to offer." ("base", xpos="far_left", ypos="head") + gen "Maybe I should contact the author and ask for more." ("base", xpos="far_left", ypos="head") + else: + if not waifu_progression[ending_choice]: + if flag > 7: + $ waifu_progression[ending_choice] = True + + if ending_choice == "stevens_ending": + gen "Ms Stevens turned out to be one dirty slut..." ("grin", xpos="far_left", ypos="head") + + if tonks_unlocked: + gen "Now that I think of it, she kind of reminds me of Tonks..." ("base", xpos="far_left", ypos="head") + elif ending_choice == "shea_ending": + gen "Not bad. I really grew to care about that Shea girl..." ("base", xpos="far_left", ypos="head") + gen "Well, her, and her anal virginity..." ("grin", xpos="far_left", ypos="head") + elif ending_choice == "leena_ending": + gen "Sweet! I love happy endings!" ("grin", xpos="far_left", ypos="head") + else: + $ waifu_progression["generic_ending"] = True + + gen "*Hmm*... What an anticlimactic ending..." ("base", xpos="far_left", ypos="head") + gen "Maybe I should read it again sometime and pick different choices." ("base", xpos="far_left", ypos="head") + else: + gen "So I ended up with the same chick again?" ("base", xpos="far_left", ypos="head") + gen "*Hmm*... Maybe I should try and make different choices next time...?" ("base", xpos="far_left", ypos="head") + + # Modify item description to show seen endings. + + python: + # Note: making 'waifu_progression' an instance of OrderedDict would be ideal, but it's saved by Ren'py and may cause issues. + endings = ["generic_ending", "shea_ending", "stevens_ending", "leena_ending", "harem_ending"] + seen_endings = ["Ending 0"+str(i+1)+" {unicode}✔{/unicode}" if waifu_progression[j] is True else "Ending 0"+str(i+1)+" {unicode}✘{/unicode}" for i, j in enumerate(endings)] + my_dear_waifu_ITEM.desc = "Relive the glory of your high school days and find your ultimate \"waifu\".{size=-3}\n\n" + "\n".join(seen_endings) + "{/size}" + + if game.daytime: + jump night_start + else: + jump day_start diff --git a/game/scripts/inventory/classes.rpy b/game/scripts/inventory/classes.rpy new file mode 100644 index 00000000..6369f030 --- /dev/null +++ b/game/scripts/inventory/classes.rpy @@ -0,0 +1,247 @@ +init python: + + class Inventory(object): + def __init__(self): + self.items = set() + + def add(self, item): + self.items.add(item) + + def remove(self, item): + self.items.remove(item) + + def get_instances(self): + return self.items + + def get_instances_of_type(self, type): + return filter(lambda x: x.type == type, self.get_instances()) + + class Item(object): + def __init__(self, id, type, name, price=0, desc="", unlocked=True, func=None, label=None, limit=100, image="default", givable=False, currency="gold", caption="use", owned=0, infinite=False, give_label=None, usable_on=[]): + self.id = id + self.type = type + self.name = name + self.price = price + self.desc = desc + self.unlocked = unlocked + self.func = func + self.label = label + self.limit = limit + self.image = "interface/icons/{}.webp".format(self.id) if image == "default" else image + self.currency = currency + self.caption = caption + + self.givable = givable + self.usable = bool(self.func or self.label) + self.used = False + self._owned = owned + self.infinite = infinite + self.give_label = give_label + self.usable_on = usable_on + + inventory.add(self) + + def use(self): + if not self.usable: + raise Exception("Item '{}' is not usable as it does not have any function or a label.".format(self.name)) + + if self.owned == 0: + raise Exception("Item '{}' owned count is equal to zero.".format(self.name)) + + if not self.type == "quest": + # Quest items require manual triggers, it's more convenient. + self.used = True + + if self.func: + self.func() + + if self.label: + if renpy.context_nesting_level() > 0: + renpy.jump_out_of_context(self.label) + else: + renpy.jump(self.label) + + def give(self, who): + if not self.givable: + raise Exception("Item '{}' is not marked as givable.".format(self.name)) + + if self.owned == 0: + raise Exception("Item '{}' owned count is equal to zero.".format(self.name)) + + if not self.type == "quest": + # Quest items require manual triggers, it's more convenient. + self.used = True + + if self.func: + self.func() + + if self.give_label: + if renpy.context_nesting_level() > 0: + renpy.jump_out_of_context(self.give_label) + else: + renpy.jump(self.give_label) + + def get_image(self): + if isinstance(self.image, basestring): + return self.image + else: + return self.image() + + @property + def owned(self): + return self._owned + + @owned.setter + def owned(self, value): + if not self.unlocked: + self.unlocked = True + + self._owned = max(min(value, self.limit), 0) + + class Decoration(Item): + room_scale = 0.5 + + def __init__(self, id, type, name, placement, price=0, desc="", unlocked=True, image="default", room_image="default", room_image_hover=None, owned=0, replaces=False, use_action=None, replace_action=None, replace_anchor=None, replace_pos=None): + super(Decoration, self).__init__(id, type, name, price, desc, unlocked, None, None, 1, image, False, "tokens", "Apply", owned) + + self.room_image = Transform("images/rooms/objects/decorations/{}.webp".format(self.id), zoom=self.room_scale) if room_image == "default" else Transform(room_image, zoom=self.room_scale) + self.room_image_hover = Transform(room_image_hover, zoom=self.room_scale) if room_image_hover else self.room_image + self.usable = True + self.placement = placement + self.in_use = False + self.replaces = replaces + self.use_action = use_action + self.replace_action = replace_action + self.replace_anchor = replace_anchor + self.replace_pos = replace_pos + + if not isinstance(self.placement, RoomObject): + raise TypeError("Placement must be a RoomObject instance reference.") + + def use(self): + if self.owned == 0: + raise Exception("Decoration '{}' owned count is equal to zero.".format(self.name)) + + target = self.placement + + if not target.decoration is None: + target.decoration.in_use = False + + if self.use_action: + self.use_action() + + # Toggle + if not target.decoration == self: + target.set_decoration(self) + self.in_use = True + else: + target.set_decoration(None) + self.in_use = False + + class Potion(Item): + def __init__(self, id, type, name, price=0, desc="", unlocked=True, label=None, limit=100, image="default", currency="gold", caption="give", owned=0, recipe=None, usable_on=[], levels={}): + super(Potion, self).__init__(id, type, name, price, desc, unlocked, None, label, limit, image, True, currency, caption, owned) + + # self.givable = bool(self.give_label) + self.label = label + self.recipe = recipe + self.usable_on = usable_on + self.levels = levels + + self.make_intro = False + self.in_progress = {i: False for i in usable_on} + + self.usable = bool( renpy.has_label("{}_use".format(self.label)) ) + + if self.recipe is None: + raise Exception("Potion '{}' recipe is empty!".format(self.name)) + + def has_ingredients(self): + return all(x.owned > 0 for x in self.recipe) + + def set_active(self, who): + """Marks the event as 'in progress' and will trigger a return event in the morning/evening.""" + if not who in self.in_progress.keys(): + raise Exception("Potion '{}' is not marked as usable on '{}'.".format(self.name, who)) + + self.in_progress[who] = True + + def make(self): + if not self.has_ingredients(): + return + + for i in self.recipe: + if not i.infinite: + i.owned -= 1 + + self.owned += 1 + label = "{}_make".format(self.label) + + if renpy.has_label(label) and not self.make_intro: + self.make_intro = True + self.jump(label) + + def check_progression(self, who): + """Check if progression is eligible to play this event""" + progression = get_character_progression(who) + + return (progression >= self.levels.get(who)) + + def give(self, who): + """Use potion on """ + + give_label = "{}_{}_give".format(who[:3], self.label) + check_label = "{}_potion_check".format(who[:3]) + + if not renpy.has_label(give_label): + raise Exception("Potion '{}' give label doesn't exist.".format(self.name)) + + if not renpy.has_label(check_label): + raise Exception("Potion '{}' check label doesn't exist for '{}'.".format(self.name, who)) + + if self.owned == 0: + raise Exception("Potion '{}' owned count is equal to zero.".format(self.name)) + + if not self.check_progression(who): + self.jump(check_label) + + self.owned -= 1 + self.jump(give_label) + + def use(self): + """Use potion on Genie""" + + label = "{}_use".format(self.label) + + if not renpy.has_label(label): + raise Exception("Potion '{}' has no use label.".format(self.name)) + + if self.owned == 0: + raise Exception("Potion '{}' owned count is equal to zero.".format(self.name)) + + self.owned -= 1 + self.jump(label) + + def ret(self, who): + """Play the return event for """ + + if not self.in_progress[who]: + raise Exception("Potion '{}' is not marked as in progress.".format(self.name)) + + label = "{}_{}_return".format(who[:3], self.label) + + if not renpy.has_label(label): + raise Exception("Potion '{}' has no return label.".format(self.name)) + + self.in_progress[who] = False + self.jump(label) + + def jump(self, label): + if renpy.context_nesting_level() > 0: + renpy.jump_out_of_context(label) + else: + renpy.jump(label) + +init offset = -5 + +default inventory = Inventory() diff --git a/game/scripts/inventory/decorations.rpy b/game/scripts/inventory/decorations.rpy new file mode 100644 index 00000000..31966646 --- /dev/null +++ b/game/scripts/inventory/decorations.rpy @@ -0,0 +1,46 @@ + +init offset = 2 + +default agrabah_poster_ITEM = Decoration("agrabah_poster", "decoration", "Agrabah Poster", poster_OBJ, 2, "A remnant of a distant land and memories about different times. A reminder for when you just want to ponder about what could've been.") +default gryffindor_poster_ITEM = Decoration("gryffindor_poster", "decoration", "Gryffindor Poster", poster_OBJ, 2, "Make your stance that you support the house of Gryffindor with this themed poster.") +default ravenclaw_poster_ITEM = Decoration("ravenclaw_poster", "decoration", "Ravenclaw Poster", poster_OBJ, 2, "Make your stance that you support the house of Ravenclaw with this themed poster.") +default hufflepuff_poster_ITEM = Decoration("hufflepuff_poster", "decoration", "Hufflepuff Poster", poster_OBJ, 2, "Make your stance that you support the house of Hufflepuff with this themed poster.") +default slytherin_poster_ITEM = Decoration("slytherin_poster", "decoration", "Slytherin Poster", poster_OBJ, 2, "Make your stance that you support the house of Slytherin with this themed poster.") +default hermione_poster_ITEM = Decoration("hermione_poster", "decoration", "Hermione Poster", poster_OBJ, 2, "A little lewdness for the office. Don't worry, with a special illusion charm no one but you will notice a thing...") +default harlot_poster_ITEM = Decoration("harlot_poster", "decoration", "Hogwarts' Harlot Poster", poster_OBJ, 2, "Hogwarts' Harlot showing off her true colours at last with this special poster... illusion charm included...") +default stripper_poster_ITEM = Decoration("stripper_poster", "decoration", "Stripper Poster", poster_OBJ, 2, "Hermione showing off how to work the pole... illusion charm included...") +default wanted_poster_ITEM = Decoration("wanted_poster", "decoration", "Wanted Poster", poster_OBJ, 2, "A Wild West styled Wanted poster depicting our dear headmaster...") +default tonks_poster_ITEM = Decoration("tonks_poster", "decoration", "Tonks Poster", poster_OBJ, 2, "Professor Tonks in her early twenties.") + +default stag_trophy_ITEM = Decoration("stag_trophy", "decoration", "Stag Trophy", trophy_OBJ, 3, "A perfect decoration over your mantelpiece to add a sense of masculinity to the office.") +default crest_trophy_ITEM = Decoration("crest_trophy", "decoration", "Hogwarts Crest", trophy_OBJ, 3, "A perfect decoration for the headmaster.") + +default hat_phoenix_ITEM = Decoration("hat_phoenix", "decoration", "Phoenix Hat", phoenix_OBJ, 3, "A little something to make your pet look less depressing.") +default xmas_phoenix_ITEM = Decoration("xmas_phoenix", "decoration", "Phoenix Christmas Set", phoenix_OBJ, 3, "Spreads the Christmas spirit around.") +default halloween_phoenix_ITEM = Decoration("halloween_phoenix", "decoration", "Phoenix Halloween Set", phoenix_OBJ, 3, "A Halloween themed set for your favourite bird!") + +default hat_owl_ITEM = Decoration("hat_owl", "decoration", "Owl Hat", owl_OBJ, 3, "A hat for an owl. Don't ask, just accept it...") +default xmas_owl_ITEM = Decoration("xmas_owl", "decoration", "Owl Christmas Set", owl_OBJ, 3, "Spreads the christmas spirit around.") + +default hat_fireplace_ITEM = Decoration("hat_fireplace", "decoration", "Fireplace Hat", fireplace_OBJ, 3, "Don't let Johnny get a cold!") +default xmas_fireplace_ITEM = Decoration("xmas_fireplace", "decoration", "Fireplace Christmas Set", fireplace_OBJ, 3, "Spreads the Christmas spirit around.") +default halloween_fireplace_ITEM = Decoration("halloween_fireplace", "decoration", "Fireplace Halloween set #1", fireplace_OBJ, 3, "Adds a spooky pumpkin near your fireplace!") + +default halloween_cupboard = Decoration("halloween_cupboard", "decoration", "Cupboard Pumpkin", cupboard_OBJ, 3, "Get in the Halloween spirit with this pumpkin, nobody's eating them so might as well decorate with them!") + +default halloween_rug_ITEM = Decoration("halloween_rug", "decoration", "Witch's Rug", rug_OBJ, 5, "Not to be used for unregulated summoning rituals!") +default halloween_chandelier_ITEM = Decoration("halloween_chandelier", "decoration", "Haunted mansion chandelier", chandelier_OBJ, 5, "Adds that haunted mansion vibe...", room_image="halloween_chandelier") +default halloween_fireplace2_ITEM = Decoration("halloween_fireplace2", "decoration", "Jack-Off-Lanterns", fireplace_OBJ, 3, "Spooky scary pumpkins!", room_image="halloween_fireplace_jackolanterns") +default halloween_window_monster = Decoration("halloween_monster", "decoration", "Halloween Peeper", window_OBJ, 5, "Adds a friendly little visitor outside your window, I assure you they don't bite... much.", room_image="halloween_window_monster") +default halloween_cupboard_caskets = Decoration("halloween_cupboard2", "decoration", "Cupboard Halloween Casket", cupboard_OBJ, 3, "A casket decoration, not even big enough to fit your ego.", room_image="halloween_cupboard_caskets") +default halloween_chair_caskets = Decoration("halloween_chair", "decoration", "Chair Halloween Casket", chair_OBJ, 3, "A casket decoration, not even big enough to fit your ego.", room_image="halloween_chair_caskets") +default halloween_bat_trophy_ITEM = Decoration("bats_trophy", "decoration", "Wall Bats Decorations", trophy_OBJ, 3, "Decorate your walls with these envirnomental-friendly paper bat stickers!", room_image="halloween_bats_trophy") +default halloween_lampL_ITEM = Decoration("halloween_lampL", "decoration", "Stolen Graveyard Lamp (Left)", candleL_OBJ, 4, "Replace those candles with a spooky looking lamp.", room_image="halloween_lamp_left", replaces=True, use_action=SetVariable("candleL_OBJ.foreground", None), replace_action=ToggleVariable("candleL_OBJ.foreground", "halloween_lamp_left_glow", None)) +default halloween_lampR_ITEM = Decoration("halloween_lampR", "decoration", "Stolen Graveyard Lamp (Right)", candleR_OBJ, 4, "Replace those candles with a spooky looking lamp.", room_image="halloween_lamp_right", replaces=True, use_action=SetVariable("candleR_OBJ.foreground", None), replace_action=ToggleVariable("candleR_OBJ.foreground", "halloween_lamp_right_glow", None)) + +default snow_owl_ITEM = Decoration("snow_owl", "decoration", "Snow Owl", owl_OBJ, 3, "A trusty snow owl that can travel through the worst of storms.", replaces=True, room_image="snow_owl_letter", room_image_hover="snow_owl_letter_hover") +default small_owl_ITEM = Decoration("small_owl", "decoration", "Small Owl", owl_OBJ, 3, "A cute little owl to deliver cute little parcels.", replaces=True, room_image="small_owl_letter", room_image_hover="small_owl_letter_hover") + +default xmas_lights_ITEM = Decoration("xmas_lights", "decoration", "Christmas Lights", chandelier_OBJ, 5, "A programmable set of LED lights. Remote control batteries not included.", replaces=True, room_image="xmas_lights_alternate", replace_action=Jump("xmas_lights_settings"), replace_anchor=(0.0, 0.0), replace_pos=(0, 0)) +default xmas_wreaths_ITEM = Decoration("xmas_wreaths", "decoration", "Christmas Wreaths", door_OBJ, 5, "Chrismtas Wreaths to spread the christmas cheer.", room_image="xmas_wreaths") +default xmas_giftchair_ITEM = Decoration("xmas_giftchair", "decoration", "Christmas Wreaths", chair_OBJ, 5, "A baby-sized gift-wrapped box. I wonder what's inside?", room_image="xmas_giftchair") diff --git a/game/scripts/inventory/game.rpy b/game/scripts/inventory/game.rpy new file mode 100644 index 00000000..1e36c956 --- /dev/null +++ b/game/scripts/inventory/game.rpy @@ -0,0 +1,91 @@ +init python: + def show_gold(st, at, old, new): + if st > 1.0: + return Text("G {}".format(new)), None + else: + if new > old: + value = int( (new-old)*(1.0-st) ) + 1 + d = Text("G {}\n+{}".format(old + int((new-old)*st), value)) + else: + value = int( (old-new)*(1.0-st) ) + 1 + d = Text("G {}\n-{}".format(old - int((old-new)*st), value)) + return d, 0.01 + + class Game(object): + weather_types = ("clear", "cloudy", "overcast", "blizzard", "snow", "storm", "rain") + weather_weights = (35, 35, 20, 5, 10, 10, 15) + + def __init__(self, gold=0, day=0): + # Protected values + self._gold = gold + self._day = day + self._gryf = 0 + self._slyt = 0 + self._rave = 0 + self._huff = 0 + self._weather = "clear" + + # Normal values + self.daytime = True + self.difficulty = 2 + self.cheats = False + self.moon = True + + @property + def gold(self): + return self._gold + + @gold.setter + def gold(self, value): + old = self._gold + self._gold = max(0, min(value, 99999)) + + if not renpy.in_rollback(): + renpy.hide_screen("gold") + renpy.show_screen("gold", old, self._gold) + + @property + def day(self): + return self._day + + @day.setter + def day(self, value): + self._day = max(0, min(value, 99999)) + + @property + def weather(self): + return self._weather + + @weather.setter + def weather(self, value): + if value == "random": + value = random_choices(self.weather_types, weights=self.weather_weights)[0] + + if not value in self.weather_types: + raise ValueError("Unsupported weather type: '{}'".format(value)) + + self._weather = value + + moon_cycle = renpy.random.randint(5, 9) + self.moon = (self.day % moon_cycle == 0) + +screen gold(old, new): + tag gold + zorder 50 + + frame: + xpadding 10 + ysize 44 + xminimum 80 + background Frame(gui.format("interface/frames/{}/iconmed.webp"), 6, 6) + pos (50, 50) + + add DynamicDisplayable(show_gold, old, new) yoffset 3 + + timer 3.0 action Hide("gold") + +default game = Game() + +# Points change displayable +# Day change displayable +# Add one of X generator diff --git a/game/scripts/inventory/gifts.rpy b/game/scripts/inventory/gifts.rpy new file mode 100644 index 00000000..6d6e354a --- /dev/null +++ b/game/scripts/inventory/gifts.rpy @@ -0,0 +1,24 @@ + +default lollipop_ITEM = Item("lollipop", "gift", "Lollipop Candy", 20, "A lollipop candy. An adult candy for kids or kids candy for adults?", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default chocolate_ITEM = Item("chocolate", "gift", "Chocolate", 40, "The recipe for this delicious milk chocolate is kept a secret. (Rumoured to contain dried faeries).", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default plush_owl_ITEM = Item("plush_owl", "gift", "Plush owl", 35, "A Toy owl stuffed with feathers of an actual owl. It's so cuddly!", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default butterbeer_ITEM = Item("butterbeer", "gift", "Butterbeer", 50, "Girls can't resist this beverage's buttery texture. Therefore it's always in high demand among the boys.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default science_mag_ITEM = Item("science_mag", "gift", "Educational Magazines", 30, "Educational magazines.\nthe Trusty companions of every social outcast.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default girls_mag_ITEM = Item("girls_mag", "gift", "Girly Magazines", 45, "Girly magazines.\nAll cool girls are reading these.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default adult_mag_ITEM = Item("adult_mag", "gift", "Adult magazines", 60, "Your boyfriend is turning into a nice guy?\nYour husband won't abuse you anymore?\nAll you wanted to know about relationships, love and sex. Mostly about sex.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default porn_mag_ITEM = Item("porn_mag", "gift", "Porn magazines", 80, "Give these to your girlfriend to test her, to your wife to shame her and to your daughter to avoid \"the talk\".", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default krum_poster_ITEM = Item("krum_poster", "gift", "Viktor Krum Poster", 25, "A skilled Quidditch Seeker, Viktor has been selected to play for the Bulgarian National Quidditch team despite still going to school, and is widely regarded as one of the best players in the world.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default sexy_lingerie_ITEM = Item("sexy_lingerie", "gift", "Sexy Lingerie", 75, "Sexy lingerie \"Fairy Godmother\". Charm your wizard in bed or empress your sisters at a Sabbath.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default sexy_stockings_ITEM = Item("sexy_stockings", "gift", "Sexy Stockings", 50, "Somewhere between now and the dark-ages came the invention of stockings, when you want to show some skin but not too much.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default pink_condoms_ITEM = Item("condoms", "gift", "A Pack Of Condoms", 50, "Unleash the one-horned beast!\n{size=-4}May contain traces of actual unicorn saliva.{/size}", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default vibrator_ITEM = Item("vibrator", "gift", "Vibrator", 55, "A magnificent, magically enhanced vibrator made of vine wood, with a dragon heartstring core.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default anal_lube_ITEM = Item("lube", "gift", "Jar of lubricant", 60, "A Jar full of lube, Buy this for your loved one - show that you care.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default ballgag_and_cuffs_ITEM = Item("ballgag_and_cuffs", "gift", "Ball gag and cuffs", 70, "Ball gag and cuffs, Turn your soulmate into your cellmate.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default anal_plugs_ITEM = Item("buttplugs", "gift", "Anal plugs", 85, "Anal plugs decorated with actual tails. Sizes vary to satisfy expert practitioners and beginner alike.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default testral_strapon_ITEM = Item("strapon", "gift", "Thestral Strap-on", 200, "Thestral strap-on.\nWhen you see it, you'll shit bricks.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default broom_2000_ITEM = Item("broom", "gift", "Lady Speed Stick-2000", 500, "{size=-2}The \"Lady Speed Stick-2000\", an elegant way of transportation for passionate witches. The trademarked saddle guarantees full satisfaction. Get one for your witch and she won't use her boring old broom ever again!{/size}", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default sexdoll_ITEM = Item("sexdoll", "gift", "Sex doll \"Joanne\"", 350, "It's so realistic. Almost looks like a real human under the influence of a spell of some sort.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default anal_beads_ITEM = Item("beads", "gift", "Anal beads", 65, "Anal beads engraved with a strange inscription \"Property of L.C.\".", givable=True, caption="Give", usable_on=list(CHARACTERS)) + +default wine_ITEM = Item("wine", "gift", "Wine", 60, "For the more refined palate.", givable=True, caption="Give", usable_on=list(CHARACTERS)) +default firewhisky_ITEM = Item("firewhisky", "gift", "Firewhisky", 80, "Great taste with a fiery burn.", givable=True, caption="Give", unlocked=False, usable_on=list(CHARACTERS)) diff --git a/game/scripts/inventory/ingredients.rpy b/game/scripts/inventory/ingredients.rpy new file mode 100644 index 00000000..5a1daaf3 --- /dev/null +++ b/game/scripts/inventory/ingredients.rpy @@ -0,0 +1,15 @@ + +default bat_spleen_ITEM = Item("bat_spleen", "ingredient", "Bat Spleen", 20, "It has a beautiful pink colour and a nasty smell.") +default hair_animal_ITEM = Item("animal_hair", "ingredient", "Animal Hair", 25, "A bunch of animal hair of unknown origin.") +default dried_nettle_ITEM = Item("dried_nettle", "ingredient", "Dried Nettle", 30, "Not so stingy in its current form.") +default bicorn_horn_ITEM = Item("bicorn_horn", "ingredient", "Bicorn Horn", 20, "One of the horns that belonged to a bi-horned bicorn.") +default fluxweed_ITEM = Item("fluxweed", "ingredient", "Fluxweed", 20, "Can make a good substitute for mustard.") +default knotgrass_ITEM = Item("knotgrass", "ingredient", "Knotgrass", 15, "Often used in distillery of alcohol.") +default leeches_ITEM = Item("leeches", "ingredient", "Leeches", 30, "A jar full of little blood suckers.") +default pufferfish_eyes_ITEM = Item("pufferfish_eyes", "ingredient", "Pufferfish Eyes", 45, "Description says that the fish were fed with carrot.") + +## Only Obtainable outside shop ## +default hair_luna_ITEM = Item("hair_luna", "ingredient", "Luna's Hair", 0, "A lock of Luna Lovegood's hair.", infinite=True) + +## Unobtainable ## +default hair_hermione_ITEM = Item("hair_hermione", "ingredient", "Hermione's Hair", 0, "A lock of Hermione Granger's hair.", infinite=True) diff --git a/game/scripts/inventory/mailbox.rpy b/game/scripts/inventory/mailbox.rpy new file mode 100644 index 00000000..12e4e341 --- /dev/null +++ b/game/scripts/inventory/mailbox.rpy @@ -0,0 +1,28 @@ + +init python: + class Mailbox(object): + def __init__(self): + self.parcels = [] + self.letters = [] + + def get_parcels(self, raw=False): + return self.parcels if raw else [x for x in self.parcels if x.wait < 1] + def get_letters(self, raw=False): + return self.letters if raw else [x for x in self.letters if x.wait < 1] + + def tick(self): + """Causes time to pass.""" + for i in self.parcels: + i.wait -= 1 + + for i in self.letters: + i.wait -= 1 + + def type_in_parcels(self, type): + """Returns true if item type found in any of the parcel contents.""" + if type == "outfit": + return any( isinstance(y[0], DollOutfit) for x in self.parcels for y in x.contents ) + return any( (y[0].type == type) for x in self.parcels for y in x.contents ) + +init offset = -1 +default mailbox = Mailbox() diff --git a/game/scripts/inventory/potions.rpy b/game/scripts/inventory/potions.rpy new file mode 100644 index 00000000..61c3eea1 --- /dev/null +++ b/game/scripts/inventory/potions.rpy @@ -0,0 +1,8 @@ + +init offset = 5 + +default breast_potion_ITEM = Potion("breast_potion", "potion", "Breast Expansion", 0, "Enlarges the chest of the consumer. \nDisclaimer: May cause nipple sensitivity.", recipe=[bat_spleen_ITEM, dried_nettle_ITEM, pufferfish_eyes_ITEM], usable_on=["hermione"], label="potion_breasts", levels={"hermione": 13}) +default ass_potion_ITEM = Potion("ass_potion", "potion", "Ass Expansion", 0, "Enlarges the buttocks of the consumer.", recipe=[bat_spleen_ITEM, dried_nettle_ITEM, pufferfish_eyes_ITEM], usable_on=["hermione"], label="potion_ass", levels={"hermione": 13}) +default cat_potion_ITEM = Potion("cat_potion", "potion", "Cat Potion", 0, "Turns the consumer into another person. \nDisclaimer: Polyjuice potions may only contain human ingredients or unknown effects may occur.", recipe=[knotgrass_ITEM, fluxweed_ITEM, leeches_ITEM, bicorn_horn_ITEM, hair_animal_ITEM], usable_on=["hermione"], label="potion_cat", levels={"hermione": 13}) +default luna_potion_ITEM = Potion("luna_potion", "potion", "Luna Potion", 0, "Turns the consumer into another person. \nThis potion requires a strand of Luna's hair.", recipe=[knotgrass_ITEM, fluxweed_ITEM, leeches_ITEM, bicorn_horn_ITEM, hair_luna_ITEM], usable_on=["hermione"], label="potion_luna", levels={"hermione": 13}) +#default airhead_potion_ITEM = Potion("airhead_potion", "potion", "Airhead Cockoction", 0, "ADD DESCRIPTION", recipe=[]) diff --git a/game/scripts/inventory/potions/_potions_.txt b/game/scripts/inventory/potions/_potions_.txt new file mode 100644 index 00000000..9eef3503 --- /dev/null +++ b/game/scripts/inventory/potions/_potions_.txt @@ -0,0 +1,458 @@ +# base potions: +# Polyjuice potion (Luna, Cat, Lamia) +# Expanding Elixir (Breast, Ass) +# Moreish mead (cum) +# Transparent tincture (Transparency potion) +# Coloring concoction (hair colors) + +# Cum addiction = Moreish mead? + wormwood + your cum +# Ass expansion = Expanding Elixir + knotgrass +# Breast expansion = Expanding Elixir + Root of aconite +# Cat potion = Polyjuice + Cat hair +# Luna potion = Polyjuice + Luna's hair +# Lamia potion = Polyjuice + Basilisk scale +# Transparency potion = Transparent tincture + Niffler's fancy + +# Cum addiction: wormwood+your cum (jerk off into it) +# Ass expansion: knotgrass +# Breast expansion: Root of aconite +# Luna potion: Luna's hair +# Transparency potion: Niffler's fancy +# Lamia potion: Basilisk scale + + +# wormwood = forbidden forest +# knotgrass = ? +# root_of_aconite =? +# cat_hair +# luna_hair = brush from room? +# basilisk_scale = ? + + +# all the metadata for the objects is stored statically any information +# that needs to be persistent is stored in a separate known dict value +default potion_lib = PotionCollection( + lib = [ + PotionIngredient( + id = "ing_wormwood", + name = "Wormwood", + effect = "", + description = "Wormwood is sometimes found in the forbidden forest.", + picture = "" + ), + PotionIngredient( + id = "ing_knotgrass", + name = "Knotgrass", + effect = "", + description = "You can sometimes find Knotgrass by the forbidden forest.", + picture = "" + ), + PotionIngredient( + id = "ing_aconite_root", + name = "Root of Aconite", + effect = "", + description = "Root of Aconite can be found down by the lake.", + picture = "" + ), + PotionIngredient( + id = "ing_niffler_fancy", + name = "Niffler's fancy", + effect = "", + description = "*Hmm*... I think I heard that it's found by the lake.", + picture = "" + ), + PotionIngredient( + id = "ing_luna_hair", + name = "Luna's Hair", + effect = "", + description = "The hair of Luna Lovegood.", + picture = "" + ), + PotionIngredient( + id = "ing_cat_hair", + name = "Cat Hair", + effect = "", + description = "The hair of a common cat.", + picture = "" + ), + PotionIngredient( + id = "ing_basilisk_scale", + name = "Basilisk Scale", + effect = "", + description = "The scale of what appears to be a large snake.", + picture = "" + ), + Potion( + id = "p_transparent_tincture", + cost = 20, + whoring_rec = 3, + name = "Transparent Tincture", + effect = "", + description = "" + ), + Potion( + id = "p_polyjuice_potion", + cost = 40, + whoring_rec = 5, + name = "Polyjuice Potion", + effect = "", + description = "" + ), + Potion( + id = "p_expanding_elixir", + cost = 30, + whoring_rec = 8, + name = "Expanding Elixir", + effect = "", + description = "" + ), + Potion( + id = "p_imperius_potion", + cost = 45, + whoring_rec = 14, + name = "Imperius Potion", + effect = "", + description = "" + ), + Potion( + id = "p_moreish_mead", + cost = 60, + whoring_rec = 14, + name = "Moreish Mead", + effect = "", + description = "" + ), + Potion( + id = "p_cum_addiction", + ingredients = ["ing_wormwood","p_moreish_mead"], + name = "Cum Addiction Potion", + effect = "Cum Addiction", + start_label = "potion_scene_3_1_1", + description = "" + ), + Potion( + id = "p_ass_expansion", + ingredients = ["ing_knotgrass","p_expanding_elixir"], + name = "Ass Expansion Potion", + effect = "Ass Expansion", + start_label = "potion_scene_2_2", + description = "" + ), + Potion( + id = "p_breast_expansion", + ingredients = ["ing_aconite_root","p_expanding_elixir"], + name = "Breast Expansion Potion", + effect = "Breast Expansion", + start_label = "potion_scene_2_1_1", + description = "" + ), + Potion( + id = "p_cat_transformation", + ingredients = ["ing_cat_hair","p_polyjuice_potion"], + name = "Cat Transformation Potion", + effect = "Cat Ears", + start_label = "potion_scene_1_1_1", + description = "" + ), + Potion( + id = "p_luna_transformation", + ingredients = ["ing_luna_hair","p_polyjuice_potion"], + name = "Luna Transformation Potion", + effect = "Luna Potion", + start_label = "potion_scene_1_2", + description = "" + ), + Potion( + id = "p_lamia_transformation", + ingredients = ["ing_basilisk_scale","p_polyjuice_potion"], + name = "Lamia Transformation Potion", + start_label = "potion_scene_1_3", + effect = "Snek", + description = "" + ), + Potion( + id = "p_transparency", + ingredients = ["ing_niffler_fancy","p_transparent_tincture"], + name = "Transparency Potion", + effect = "Transparent Clothes", + start_label = "potion_scene_4", + description = "" + ), + Potion( + id = "p_hypno", + ingredients = ["ing_aconite_root","p_imperius_potion"], + name = "Hypno Potion", + effect = "Hypno Potion", + start_label = "potion_scene_3_3_1", + description = "" + ), + Potion( + id = "p_clone", + ingredients = ["p_polyjuice_potion","p_imperius_potion"], + name = "Clone Potion", + effect = "Clone Potion", + start_label = "potion_scene_1_4", + description = "" + ), + Potion( + id = "p_milk_potion", + name = "Lactantium", + effect = "Lactantium", + start_label = "potion_scene_11", + description = "" + ), + Potion( + id = "p_veritaserum", + name = "Veritaserum", + effect = "", + description = "" + ), + Potion( + id = "p_voluptatem", + name = "Voluptatem", + effect = "Voluptatem", + start_label = "potion_scene_3_4_1", + description = "" + ) + ] +) + +default potion_inv = PotionInventory() +default p_inv = {} # this stores the id and quantity of items the player has persistently + +### Potions Room ### + +screen potions_room(): + tag room_screen + + if game.daytime: + add "images/rooms/_bg_/corridor.webp" #Need day image. + else: + add "images/rooms/_bg_/corridor.webp" + + zorder 0 + +label potions_room: + show screen blkfade + with d3 + + call room("potions_room") + call gen_chibi("hide") + + if store_intro_done: + call gen_chibi("stand", "left", "base") + call hide_blkfade + else: + call gen_chibi("stand", 0, "base") + call hide_blkfade + call gen_walk("left", "base") + pause.2 + jump potions_menu + +label potions_menu: + python: + items_menu = [] + for potion in potion_lib.get_craftables(): + if potion_inv.can_craft(potion): + items_menu.append(potion.get_craft_menu_item()) + else: + items_menu.append(potion.get_craft_menu_item(True)) + + items_menu.append(("-Never mind-", "nvm")) + potion_choice = renpy.display_menu(items_menu) + + if potion_choice == "nvm": + jump return_office + elif isinstance(potion_choice, Potion): + $ renpy.say( None, potion_choice.get_mix_text() ) + if potion_choice.id == "p_cum_addiction": + ">... but it's missing the most important part." + menu: + "-Cum into the Potion-": + # TODO: add jerk_off here at some point + ">you cum into the potion" + $ renpy.say(None,">You received the item: \""+potion_choice.name+"\".") + python: + for ingredient in potion_choice.ingredients: + potion_inv.remove(ingredient) + $ potion_inv.add(potion_choice.id) + else: + show screen blktone + ">You lack the required materials to make this." + $ missing_items = [] + $ tmp_txt = "You still need " + python: + for item in potion_choice: + if not potion_inv.has(item): + missing_items.append(item) + for i in xrange(len(missing_items)): + tmp_txt += "{size=+5}{b}"+potion_lib.get_name_by_id(missing_items[i])+"{/b}{/size}" + if len(missing_items) > 1: + if i < len(missing_items)-2: + tmp_txt += ", " + if i == len(missing_items)-2: + tmp_txt += " and " + $ tmp_txt += " to craft this" + $ renpy.say(None, tmp_txt) + #$ renpy.say(None,"You need {size=+5}{b}"+potion_lib.get_name_by_id(potion_choice[0])+"{/b}{/size} and {size=+5}{b}"+potion_lib.get_name_by_id(potion_choice[1])+"{/b}{/size} to craft this") + hide screen blktone + jump potions_menu + + +init -1 python: + + class PotionBase(object): + id = "" + + def __init__(self, **kwargs): + self.__dict__.update(**kwargs) + + def __repr__(self): + return self.id + + def __eq__(self, other): + if isinstance(other, self.__class__): + return self.id == other.id + else: + return False + def __ne__(self, other): + return not self.__eq__(other) + + class Potion(PotionBase): + id = "" + cost = 0 + ingredients = [] + name = "" + effect = "" + description = "" + picture = "" + whoring_rec = 0 + start_label = None + + def get_store_menu_item(self, disabled=False): + if disabled: + return gui.menu_item('-{}-'.format(self.name), None, style="disabled") + else: + return gui.menu_item('-{}-'.format(self.name), self) + + def get_craft_menu_item(self, disabled=False): + if disabled: + return gui.menu_item('-Craft: "{}"-'.format(self.name), self.ingredients, style="disabled") + else: + return gui.menu_item('-Craft: "{}"-'.format(self.name), self.id) + + def get_mix_text(self): + return ">You mix the {i}" + potion_lib.get_name_by_id(self.ingredients[0]) \ + + "{/i} with the {i}" + potion_lib.get_name_by_id(self.ingredients[1]) + "{/i}" + + + class PotionIngredient(PotionBase): + id = "" + cost = 0 + name = "" + effect = "" + description = "" + picture = "" + + + class PotionCollection(object): + lib = [] + + def __init__(self, **kwargs): + self.__dict__.update(**kwargs) + + def get_name_by_id(self,id): + for item in self.lib: + if item.id == id: + return item.name + return None + + def is_valid_id(self, id): + for item in self.lib: + if item.id == id: + return True + return False + + def get_id_by_name(self, name): + for item in self.lib: + if item.name == name: + return item.id + return None + + def get_craftables(self): + craftable = [] + for item in self.lib: + if hasattr(item, 'ingredients') and len(item.ingredients) > 0: + craftable.append(item) + return craftable + + def get_buyables(self): + buyable = [] + for item in self.lib: + if hasattr(item, 'cost') and item.cost > 0: + buyable.append(item) + return buyable + + def get_start_label(self, id): + for item in self.lib: + if hasattr(item, 'start_label') and item.id == id: + return item.start_label + return None + + def get_playables(self): + requests = [] + for item in self.lib: + if hasattr(item, 'start_label') and item.start_label != None: + requests.append(item) + return requests + + + + class PotionInventory(object): + + def can_craft(self, potion): + global p_inv + for ing_id in potion.ingredients: + if ing_id in p_inv.keys(): + if p_inv[ing_id] < 1: + return False + else: + return False + return True + + def has(self, potion): + global p_inv + if isinstance(potion, Potion): + potion = potion.id + return potion in p_inv.keys() + + def add(self, potion, quant=1): + global p_inv, potion_lib + if isinstance(potion, Potion): + potion = potion.id + if potion_lib.get_id_by_name(potion) != None: + potion = potion_lib.get_id_by_name(potion) + if potion_lib.is_valid_id(potion): + if potion in p_inv.keys(): + p_inv[potion] = p_inv[potion] + quant + else: + p_inv[potion] = quant + return True + else: + return False + + def extend(self, list): + for item in list: + self.add(item) + + def remove(self, potion, quant=1): + global p_inv + if isinstance(potion, Potion): + potion = potion.id + if potion in p_inv.keys(): + p_inv[potion] = p_inv[potion] - quant + if p_inv[potion] < 1: + p_inv.pop(potion, None) + return True + else: + return False diff --git a/game/scripts/inventory/potions/addictive_potion.txt b/game/scripts/inventory/potions/addictive_potion.txt new file mode 100644 index 00000000..c3f5c5bc --- /dev/null +++ b/game/scripts/inventory/potions/addictive_potion.txt @@ -0,0 +1,1067 @@ + +# Cum addiction - work in progress, has some scenes adjusted for it +label potion_scene_3_1_1: + gen "[hermione_name], today I have a very special potion that I would like you to drink." ("base", xpos="far_left", ypos="head") + if not her_potions_drunk: + her "A potion?" + her "What is it going to do?" + gen "Well, that's going to be a surprise..." ("base", xpos="far_left", ypos="head") + if her_whoring <= 17: #Under when she stops caring about points too Much + her "And you'll pay me if I drink this?" + gen "Of course...{w} I'll give you thirty points for the Gryffindor house." ("base", xpos="far_left", ypos="head") + else: + her "What does this one do?" ("normal", "squint", "angry", "mid") + gen "As always, it's going to be a surprise." ("base", xpos="far_left", ypos="head") + if her_whoring <= 17: #Under when she stops caring about points too Much + her "And you'll pay me if I drink this?" + gen "Of course...{w} I'll give you thirty points for the Gryffindor house." ("base", xpos="far_left", ypos="head") + + #TODO There are many more potions she could mention + if "cat_polyjuice" in her_potions_drunk: + her "You're not going to try to transform me into a cat again are you [genie_name]?" ("normal", "squint", "angry", "mid") + her "" ("normal", "squint", "angry", "mid") + gen "Of course not, now would you kindly drink the potion?" ("base", xpos="far_left", ypos="head") + elif "breast_expansion" in her_potions_drunk: + her "You're not going to make my breasts expand again are you [genie_name]?" ("normal", "squint", "angry", "mid") + her "" ("normal", "squint", "angry", "mid") + gen "Of course not, now would you kindly drink the potion?" ("base", xpos="far_left", ypos="head") + else: + gen "Now would you kindly drink the potion?" ("base", xpos="far_left", ypos="head") + her "Fine..." + + $ renpy.sound.play("sounds/bottle.ogg") + + her "..." ("annoyed", "narrow", "angry", "R") + + if her_whoring <= 12 and her_cum_potion_fail == 0: #Too low + call her_chibi("drink_potion","mid","base") + call nar(">Hermione cautiously takes a small sip of the potion.") + her "" ("cum", "happyCl", "worried", "mid") + pause .5 + call her_chibi("stand","mid","base") + + her "This isn't a potion! This is just a bottle full of your cum!" ("scream", "closed", "angry", "mid") + gen "Wait, how could you tell if there's cum in there?" ("base", xpos="far_left", ypos="head") + her "So you did put cum in there!" + gen "I didn't say that..." ("base", xpos="far_left", ypos="head") + gen "Although, if I did... what did you think of the taste?" ("base", xpos="far_left", ypos="head") + her "Are you crazy? You came in a bottle and served it to me and then has the audacity to ask if I liked the taste?" + her "What's wrong with you?" + her "I'm leaving..." + call her_walk(action="leave") + gen "(Damn, looks like she didn't drink enough for the effect to kick in. I guess she has to trust me more before drinking this one...)" ("base", xpos="far_left", ypos="head") + $ her_cum_potion_fail += 1 + $ her_mood += 10 + $ hermione_busy = True + jump main_room + # End scene + elif her_whoring <= 12 and her_cum_potion_fail > 0: # Too low and failed previously + call nar(">Hermione takes a whiff of the potion contents.") + $ renpy.play('sounds/sniff.ogg') + pause 0.5 + her "*Ughhh*{w=0.5}{nw}" ("disgust", "slit", "low", "stare") + with hpunch + her "This isn't a potion! This is just a bottle full of your cum!" ("scream", "closed", "angry", "mid") + gen "How did you know?" ("angry", xpos="far_left", ypos="head") + her "It reeks of semen " ("angry", "base", "angry", "mid") + her "I can't believe you were going to make me drink that..." + her "I'm leaving..." + call her_walk(action="leave") + gen "(Damn, looks like she won't even consider tasting it. I guess she has to trust me more before drinking this one...)" ("base", xpos="far_left", ypos="head") + $ her_cum_potion_fail += 1 + $ her_mood += 10 + $ hermione_busy = True + jump main_room + # End scene + else: + if "cum_addiction" not in her_potions_drunk: # First time + call her_chibi("drink_potion","mid","base") + call nar(">Hermione cautiously takes a small sip of the potion.") + her "" ("cum", "happyCl", "worried", "mid") + pause .5 + call her_chibi("stand","mid","base") + + her "Is this bottle full of your cum?" ("disgust", "closed", "angry", "mid") + her "Ughhh and it's cold as well." ("disgust", "slit", "low", "stare") + gen "So it just tastes like cum to you?" ("base", xpos="far_left", ypos="head") + her "Of course it does, what else would it taste like?" ("angry", "base", "angry", "mid") + call nar(">Hermione starts unconsciously licking her lips.") + her "I can't believe you were going to make me drink that..." + call nar(">Without thinking of what she's doing she downs the rest of the potion.") + else: #Tried and drank the potion successfully before + #TODO Johnny add writing here please :) + pass + + $ renpy.sound.play("sounds/gulp.ogg") + call her_chibi("drink_potion","mid","base") + her "" ("cum", "happyCl", "worried", "mid") + pause .5 + call her_chibi("stand","mid","base") + + her "At least warn me next time you make me drink your cum, [genie_name]." ("open", "base", "worried", "R") + gen "What do you mean next time?" ("base", xpos="far_left", ypos="head") + her "Well, you're such a pervert you'll probably try and do this again. At least warn me so it's not such a shock." ("annoyed", "narrow", "annoyed", "mid") + gen "Ok, [hermione_name], I'll make sure to warn you next time." ("base", xpos="far_left", ypos="head") + her "Is that all then, [genie_name]?" ("annoyed", "narrow", "angry", "R") + gen "Yes [hermione_name], that will be all." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("open", "squint", "base", "mid") + call nar(">Hermione hurriedly leaves the room with the remainder of the potion firmly in her grasp.") + + hide hermione_main + call her_walk(action="leave") + + $ her_potions_drunk.add("addiction") + $ her_potions_drunk.add("cum_addiction") + + $ her_cum_potion_return = True + $ hermione_busy = True + jump main_room + +# Scene where Hermione comes back addicted to your cum +label hg_pp_cumaddict_intro: + $ her_cum_potion_return = False + + call her_walk(action="enter", xpos="mid", ypos="base") + pause.2 + her "What the hell did you do to me?" ("scream", "happyCl", "worried", "mid", xpos="mid", ypos="base", trans=hpunch) + gen "Whatever are you talking about, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Ughh, it doesn't matter, just let me suck it." ("annoyed", "base", "worried", "R") + gen "Why on earth would you want to do that? You're a top student, that doesn't sound appropriate." ("base", xpos="far_left", ypos="head") + her "You know exactly what you did to me. Now let me suck your filthy old cock." ("angry", "base", "angry", "mid") + + menu: + "-Let her suck your dick-": + gen "Well if you insist, [hermione_name]." ("base", xpos="far_left", ypos="head") + "-Make her beg-": + gen "I don't think that you deserve to after calling it filthy and old." ("base", xpos="far_left", ypos="head") + gen "Perhaps if you asked nicely..." ("base", xpos="far_left", ypos="head") + her "Fine. Please let me suck your dick [genie_name]." ("upset", "wink", "base", "mid") + gen "*Hmm*... I don't think that was sincere enough." ("base", xpos="far_left", ypos="head") + her "Please [genie_name], let me suck your big, thick dick. Pretty please." ("angry", "happyCl", "worried", "mid",emote="sweat") + gen "Much better." ("base", xpos="far_left", ypos="head") + label hg_pp_cumaddict_sucking: + + call blkfade + pause 1 + hide hermione_main + show screen chair_left + call her_chibi_scene("bj_pause") + hide screen blkfade + with d5 + + show screen bld1 + call her_chibi_scene("bj") + call nar(">As soon as you remove your cock from your robe Hermione is on top of you.") + her "" ("disgust", "narrow", "base", "mid_soft") + call her_chibi_scene("bj_pause") + her "Do you have any idea how hard it was sitting through classes today?" + hide hermione_main + call her_chibi_scene("bj") + her "*Slurp!* *Slurp!* *Slurp!*" ###start sucking etc.... + her "" ("annoyed", "narrow", "angry", "R") + call her_chibi_scene("bj_pause") + her "Being this aroused." + hide hermione_main + call her_chibi_scene("bj") + her "*Slurp!* *Gobble!* *Slurp!*" + her "" ("grin", "base", "base", "R") + call her_chibi_scene("bj_pause") + her "With no way to relieve myself." + her "I tried everything." + hide hermione_main + call her_chibi_scene("bj") + her "*Gobble!* *Slurp!* *Slurp!*" + her "" ("smile", "narrow", "base", "mid_soft") + call her_chibi_scene("bj_pause") + her "I even masturbated in the girls' bathroom." + hide hermione_main + call her_chibi_scene("bj") + her "*Gobble!!* *Gltch!!* *Gobble!!!*" + her "" ("annoyed", "narrow", "annoyed", "mid") + call her_chibi_scene("bj_pause") + her "But nothing worked." + hide hermione_main + call her_chibi_scene("bj") + her "*Slurp!* *Gulp!* *Slurp!*" + her "" ("base", "narrow", "base", "up") + call her_chibi_scene("bj_pause") + her "All I could think about was the taste of your filthy cum." + hide hermione_main + call her_chibi_scene("bj") + her "*Slurp!* *Gulp!* *Gulp!*" + gen "My my, someone is becoming quite the slut, wouldn't you say [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "*Slurp!* *Gulp!* *Slurp!*" + her "" ("open_tongue", "narrow", "base", "mid_soft") + call her_chibi_scene("bj_pause") + her "You know why this is happening to me." + hide hermione_main + call her_chibi_scene("bj") + her "*Slurp!* *Slurp!* *Gulp!*" + her "" ("smile", "narrow", "base", "mid_soft") + call her_chibi_scene("bj_pause") + her "Whatever was in that delicious potion you made me drink this morning." + hide hermione_main + call her_chibi_scene("bj") + gen "Delicious? I thought you said it was just a bottle full of my cum?" ("base", xpos="far_left", ypos="head") + gen "Are you sure that you're just not a little slut who's become addicted to her Headmaster's semen?" ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause") + her "I'm sure there was something else in there." ("angry", "wink", "base", "mid") + hide hermione_main + call her_chibi_scene("bj") + gen "Whatever you say [hermione_name]. Now if you want your reward you better get back to work." ("base", xpos="far_left", ypos="head") + her "" ("base", "squint", "base", "mid") + call her_chibi_scene("bj_pause") + her "..." + hide hermione_main + call her_chibi_scene("bj") + her "*Slurp!* *Slurp!* *Gulp!*" + call nar(">She is incredibly enthusiastic. You can feel your load building.") + + menu: + "-Cum down her throat-": + gen "Here it comes, slut!" ("base", xpos="far_left", ypos="head") + call nar(">Hermione quickly swallows the majority of your shaft. You can feel the tip of your head pressed against the entrance to her throat.") + gen "You'll have to do better than that if you want your reward [hermione_name]." ("base", xpos="far_left", ypos="head") + call nar(">You place your hands on the back of her head pull her head into you.") + her "{size=+7}!!!{/size}" ("scream", "happyCl", "worried", "mid") + with vpunch + hide hermione_main + call nar(">The sensation of entering her throat sends you over the edge.") + gen "Better start swallowing slut!" ("base", xpos="far_left", ypos="head") + call nar(">You start pumping your thick load directly into her stomach.") + call cum_block + call her_chibi_scene("bj_cum_in") + call nar(">Hermione's eyes widen and tears form as she senses your semen enter her.") + call cum_block + her "hhaanooo hhhheerrr" ("scream", "wide", "base", "stare") + hide hermione_main + call nar(">Her hands shoot down into her panties as she starts violently orgasming.","start") + call nar(">The sight of her pleasuring herself as you use her throat only prolongs your orgasm.","end") + gen "You dirty little slut. Getting off on your headmaster sticking his cock down your throat." ("base", xpos="far_left", ypos="head") + gen "I bet you're loving this, being used as nothing more than a toy." ("base", xpos="far_left", ypos="head") + call nar(">She says nothing but quickens the pace of her masturbation.","start") + call nar(">You finally pull out of her eager mouth with a satisfactory pop.","end") + call her_chibi_scene("bj_pause") + her "It won't stop!" ("shock", "happyCl", "worried", "mid") + hide hermione_main + gen "What won't?" ("base", xpos="far_left", ypos="head") + her "I-I can't stop cumming [genie_name]..." ("angry", "base", "base", "mid") + hide hermione_main + call nar(">The stimulation proves too much and she passes out.") + + "-Cum in her mouth-": + gen "This is it, girl! Get ready!" ("base", xpos="far_left", ypos="head") + call nar(">Hermione starts swirling her tongue and focusing on the tip of your shaft.") + gen "That's done it slut! Start swallowing!" ("angry", xpos="far_left", ypos="head") + call nar(">You explode into her mouth.") + call cum_block + call her_chibi_scene("bj_cum_in") + her "mmmmmmm... *gulp* *gulp*" ("full_cum", "narrow", "base", "dead") + hide hermione_main + call nar(">Hermiones eyes go blank as she starts swallowing down your load.") + call cum_block + gen "That's it, swallow it down like a good girl. You earned your prize." ("base", xpos="far_left", ypos="head") + her "*gulp* *gulp* *gulp* *gulp*" ("cum", "happyCl", "worried", "mid") + hide hermione_main + call nar(">As she swallows you notice her legs start to convulse as she starts to orgasm.") + her "*gulp* *gulp* *gulp* " ("full_cum", "narrow", "base", "dead") + hide hermione_main + call nar(">You finally remove your shaft from her hungry mouth.") + call her_chibi_scene("bj_pause") + gen "Very good girl. Almost entirely clean... except for a bit of cum on the tip." ("base", xpos="far_left", ypos="head") + gen "I can't dirty my robes now can I? Better wipe this off." ("base", xpos="far_left", ypos="head") + call nar(">You wipe yourself clean on the tip of her nose.") + her "..." ("cum", "happyCl", "worried", "mid") + hide hermione_main + gen "There, much better." ("base", xpos="far_left", ypos="head") + call nar(">Her legs have not stopped quivering since you first came.") + gen "Well aren't you going to say anything [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Thank you maste--" ("silly", "narrow", "base", "dead") + hide hermione_main + call nar(">She collapses into a heap on the ground with her legs still shaking.") + + "-Cum on her face-": + gen "Get ready, girl! here it comes!" ("base", xpos="far_left", ypos="head") + call nar(">Hermione increases her efforts and starts focusing on the head of your penis.") + gen "Not so quick [hermione_name]." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause") + call nar(">You quickly pull your penis out from her mouth.") + her "What are you doing [genie_name]?" ("shock", "wide", "base", "stare") + hide hermione_main + gen "Giving you your well earned reward." ("base", xpos="far_left", ypos="head") + call cum_block + call her_chibi_scene("bj_cum_out") + $ uni_sperm = True + call nar(">You start pumping your cock quickly and explode all over the witch's face") + gen "Take it you filthy cum slut!" ("base", xpos="far_left", ypos="head") + call cum_block + her "{size=+5}!!!{/size}" ("soft", "narrow", "annoyed", "up") + hide hermione_main + call nar(">Hermione immediately starts masturbating shamelessly in front of you.") + her "{size=+5}I'm cumming{/size}" ("angry", "base", "base", "mid") + with vpunch + hide hermione_main + gen "What was that [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "I-I'm cumming again?!" ("scream", "wide", "base", "stare") + with hpunch + hide hermione_main + gen "Just from a facial? What sort of cumslut have you become Miss Granger?" ("base", xpos="far_left", ypos="head") + gen "What would your parents think? Looking at you covered in some old man's cum." ("base", xpos="far_left", ypos="head") + her "No. Please stop, I'll--" ("angry", "happyCl", "worried", "mid", emote="sweat") + with vpunch + hide hermione_main + gen "They'd be ashamed at what you've become. A whore who gets off on being used as a toy." ("base", xpos="far_left", ypos="head") + her "I-I'm cumming again [genie_name]. It won't stop..." ("scream", "happyCl", "worried", "mid") + hide hermione_main + call nar(">Hermione's voice trails off as she passes out from overstimulation.") + + "-Cum on the floor-": + gen "I'm cumming, whore!" ("base", xpos="far_left", ypos="head") + her "mmmmmmmm..." ("open_wide_tongue", "base", "base", "mid") + hide hermione_main + call nar(">She attempts to bury her face into your crotch but you put your palm on her forehead and push her away.") + call her_chibi_scene("bj_pause") + her "[genie_name], what are you doing?" ("angry", "wide", "base", "stare") + hide hermione_main + gen "giving you your reward!" ("base", xpos="far_left", ypos="head") + call nar(">After a few quick pumps you point your dick at the floor and explode.") + call cum_block + #TODO Add chibi animation: Genie cums on floor in front of Hermione + her "PROFESSOR! Why would you waste that?" ("angry", "narrow", "base", "down") + hide hermione_main + gen "It's not wasted [hermione_name], your reward is right there waiting for you." ("base", xpos="far_left", ypos="head") + her "I'm not going to eat that. The floor in here is disgusting." ("angry", "base", "base", "mid") + hide hermione_main + gen "Well you can always wait until tomorrow morning then." ("base", xpos="far_left", ypos="head") + her "TOMORROW MORNING!? I can't wait that long! Can't you just cum again?" ("angry", "wide", "base", "stare") + hide hermione_main + gen "No [hermione_name], I'm a tired old man and it's time for me to go to sleep." ("base", xpos="far_left", ypos="head") + gen "You can either eat off the floor or you can come back tomorrow." ("base", xpos="far_left", ypos="head") + her "... Fine." ("upset", "closed", "base", "mid") + hide hermione_main + call nar(">She begrudgingly starts scooping your cum off the floor with her fingers.") + #TODO Add chibi animation (?): Hermione eats cum off the floor + + menu: + "-Watch her-": + her "" ("full_cum", "narrow", "base", "dead") + call nar(">She scoops up as much as she can into her palm and quickly moves it to her mouth.","start") + "-Make her lick it up-": + gen "Not with your fingers [hermione_name]." ("base", xpos="far_left", ypos="head") + her "What do you mean not with my fingers? How else am I supposed to eat it?" ("angry", "base", "base", "mid") + hide hermione_main + gen "You have a perfectly good tongue, I suggest that you put it to use." ("base", xpos="far_left", ypos="head") + her "You expect me to LICK your old cum off the floor?" ("angry", "narrow", "base", "down") + hide hermione_main + gen "I do. Unless of course you would prefer to go back to your room hungry and unsatisfied." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "base", "base", "mid") + hide hermione_main + call nar(">She bends over with her head to the floor.") + her "(This is so degrading...)" ("open_wide_tongue", "base", "angry", "mid") + hide hermione_main + call nar(">She puts her tongue out licks your cum.","start") + + call nar(">The effect is instantaneous.","end") + her "{size=-4}I-I'm cumming...{/size}" ("cum", "happyCl", "worried", "mid") + hide hermione_main + gen "What was that?" ("base", xpos="far_left", ypos="head") + her "I'm cumming!" ("silly", "narrow", "base", "dead") + with vpunch + hide hermione_main + call nar(">Hermione's hand shoots under her skirt as she starts violently orgasming.") + her "What's wrong with me [genie_name]?" ("silly", "narrow", "annoyed", "up") + hide hermione_main + gen "A lot of things [hermione_name], considering you just ate my cum off the ground." ("base", xpos="far_left", ypos="head") + her "I can't stop cumming..." ("shock", "base", "base", "R",cheeks="blush",tears="soft") + hide hermione_main + call nar(">Hermione loses conciousness.") + + hide hermione_main + call blkfade + + menu: + "-Carry her back to her room as is-": + call nar(">You pick her limp body up and carry her to her room.","start") + call nar(">As you enter the dormitory you hear her talk in her sleep.","end") + her "Of course I swallow... just form a line..." ("open", "happyCl", "worried", "mid") + hide hermione_main + call nar(">You place her carefully back into her bed.") + gen "Sleep tight, slut." ("base", xpos="far_left", ypos="head") + + "-Clean her up and take her back to her room-": + $ uni_sperm = False + call nar(">You pick her limp body up and carry her to her room.","start") + call nar(">As you enter the dormitory you hear her mumble in her sleep.","end") + her "You want a kiss [genie_name]? Of course I don't mind..." ("open", "closed", "base", "mid") + hide hermione_main + call nar(">You place her carefully back into her bed.") + gen "Sleep tight, [hermione_name]." ("base", xpos="far_left", ypos="head") + + if her_whoring <= 17: #When she still cares about points (Defined at the start) + gen "Thirty points to Gryffindor..." ("base", xpos="far_left", ypos="head") + $ gryffindor += 30 + + hide hermione_main + hide screen ctc + call gen_chibi("sit_behind_desk") + hide screen blktone + + call hide_blkfade + + $ hermione_busy = True + jump main_room + +label hg_pp_cumaddict_E1: #Repetitive version where she doesn't faint after the event maybe? + + call her_walk(action="enter", xpos="mid", ypos="base") + pause.2 + + her "Take off your pants! No questions!" ("scream", "happyCl", "worried", "mid", xpos="mid", ypos="base", trans=hpunch) + gen "Hold on a minute, what are you--" ("base", xpos="far_left", ypos="head") + her "Shut it, just let me suck it." ("annoyed", "base", "worried", "R") + gen "...." ("base", xpos="far_left", ypos="head") + + menu: + "-Let her suck your dick-": + gen "Be my guest, [hermione_name]." ("grin", xpos="far_left", ypos="head") + "-Make her apologise first-": + gen "I don't think that you deserve to suck my dick after being this rude." ("base", xpos="far_left", ypos="head") + gen "Maybe if you apologised..." ("base", xpos="far_left", ypos="head") + her "......" ("upset", "wink", "base", "mid") + gen "No? Well in that case...{w=0.5}{nw}" ("base", xpos="far_left", ypos="head") + her "{size=+5}I'm sorry!{/size}" ("scream", "closed", "angry", "mid") + her "Please let me suck your dick [genie_name]..." ("annoyed", "closed", "base", "mid") + gen "*Hmm*... I don't think that was sincere enough." ("base", xpos="far_left", ypos="head") + her "Please [genie_name], let me suck your big, thick dick. Pretty please." ("soft", "base", "worried", "mid") + gen "Much better." ("base", xpos="far_left", ypos="head") + jump hg_pp_cumaddict_sucking # <-- Jumps to blowjob section from the intro, you can replace it with new writing if you'd like. + + + + +label potion_scene_7: #TODO hyper sensitivity potion + gen "I'd like you to drink a potion today." ("base", xpos="far_left", ypos="head") + her "Alright then." + gen "Just like that? No putting up a fight or demanding to know what it is?" ("base", xpos="far_left", ypos="head") + her "Would you tell me what it is?" + gen "No, probably not." ("base", xpos="far_left", ypos="head") + her "Then why ask?" + gen "Fair enough, here it is." ("base", xpos="far_left", ypos="head") + menu: + "-Drop it on her chest-": + pass + #jump potion_scene_7_1 <- label does not exist + "-Hand it to her-": + pass + #jump potion_scene_7_2 <- label does not exist + "-Drop it on her skirt-": + pass + #jump potion_scene_7_3 <- label does not exist + + + +### HYPER SENITIVITY POTION ### + +label potion_scene_3_2_1: #TODO Hyper sensitive breasts potion + call nar(">You fumble with the potion, spilling it over Hermione's front, soaking her shirt through.") + her "Professor! What were you thinking?" + call nar(">You place the still half full bottle back on your desk in front of you.") + gen "It was an accident, my hands aren't what they once were." ("base", xpos="far_left", ypos="head") + her "Ughhh, now I'm going to have to go change before classes." + her "I expect to be compensated accordingly." + gen "Ok, ok. How about I give you a nice massage to calm you down." ("base", xpos="far_left", ypos="head") + her "A massage? That's hardly fair compensation!" + gen "Are you sure?" ("base", xpos="far_left", ypos="head") + her "Positive." + gen "Ok, I'll make a bet with you then." ("base", xpos="far_left", ypos="head") + her "... Go on..." + gen "I'll start massaging you. If you don't like it after two minutes then you can tell me to stop." ("base", xpos="far_left", ypos="head") + her "And what do I get for telling you to stop?" + gen "two hundred points." ("base", xpos="far_left", ypos="head") + her "two hundred points!" + gen "But if you don't ask me to stop I get to massage you for as long as I like, wherever I like." ("base", xpos="far_left", ypos="head") + her "Deal." + gen "Are you sure?" ("base", xpos="far_left", ypos="head") + her "No offence [genie_name], but I think I can resist a massage for two hundred points." + gen "you sound confident. Care to raise the stakes?" ("base", xpos="far_left", ypos="head") + her "Are you saying that I can earn more than two hundred points?" + gen "five hundred." ("base", xpos="far_left", ypos="head") + her "{size=+10}Five HUNDRED!{/size}" #size up + her "Deal." + gen "I haven't even told you what happens if you lose." ("base", xpos="far_left", ypos="head") + her "it doesn't matter. For five hundred points I would turn down a massage from Viktor Krum himself." + gen "Well for the sake of the bet I'll explain anyway." ("base", xpos="far_left", ypos="head") + gen "I expect you to strip naked if you want to be massaged after your two minutes are up." ("base", xpos="far_left", ypos="head") + her "Naked!" + gen "Only if you lose." ("base", xpos="far_left", ypos="head") + her "Well I suppose that's OK then, it's not like I'll have to do it." + gen "well are you ready?" ("base", xpos="far_left", ypos="head") + her "Yes, let's make it quick. I have to go back to the dorms and change after this. My shirt is soaked through." + call nar(">Hermione walks over and stands in front of you.") + her "So what's your plan? Do you expect me to give in just because you rub my shoulders?" + gen "Shoulders? Who said anything about shoulders?" ("base", xpos="far_left", ypos="head") + her "Are you going to grope my butt again?" + gen "No, no. Today we're sticking with the fundamentals." ("base", xpos="far_left", ypos="head") + call nar(">You grab her breasts through her soaked shirt.") + her "!!!" + gen "There we are. I'll start the time now shall I?" ("base", xpos="far_left", ypos="head") + her "What is wrong with me?" + gen "Nothing, apart from underestimating your elders." ("base", xpos="far_left", ypos="head") + her "My breasts... they're on fire." + gen "If they were I think I would know." ("base", xpos="far_left", ypos="head") + call nar(">You gently roll her nipples between your thumbs and forefingers.") + her "!!!" + her "Please [genie_name], you have to stop." + gen "You're not allowed to ask me to stop until the two minutes are up." ("base", xpos="far_left", ypos="head") + gen "And by my count there's still over a minute and a half to go." ("base", xpos="far_left", ypos="head") + call nar(">You kneed her breasts firmly.") + her "I'm calling off the bet..." + gen "Now now, no one likes a quitter." ("base", xpos="far_left", ypos="head") + her "This isn't a joke, it feels like..." + her "It feels amazing..." + gen "I told you I'm good." ("base", xpos="far_left", ypos="head") + her "No [genie_name], this is the best thing I've ever felt." + her "" + +label potion_scene_3_2_2: #TODO Hyper sensitive mouth/throat potion + +label potion_scene_3_2_3: #TODO Hyper sensitive pussy potion + + +# Hypno potion +label potion_scene_3_3_1: + gen "[hermione_name], I have another special potion for you today." ("base", xpos="far_left", ypos="head") + her "Who are you even buying these off?" ("normal", "squint", "angry", "mid") + gen "A good magician never tells." ("base", xpos="far_left", ypos="head") + her "Magician? You're a wizard, and this better not have any long-term side effects." ("normal", "squint", "angry", "mid") + if "cat_polyjuice" in her_potions_drunk: + her "I'm still coughing up fur balls every now again from that polyjuice potion." ("normal", "squint", "angry", "mid") + gen "Of course it won't, now would you kindly drink the potion." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "angry", "R") + call her_chibi("drink_potion","mid","base") + with d3 + call nar(">Hermione cautiously starts drinking the potion.") + her "" ("cum", "happyCl", "worried", "mid") + pause .5 + call her_chibi("stand","mid","base") + + her "This isn't bad at all." ("base", "happy", "base", "mid") + her "I feel..." ("base", "happyCl", "base", "mid") + gen "You feel what?" ("base", xpos="far_left", ypos="head") + her "I-I feel grea--" ("annoyed", "narrow", "worried", "down") + call nar(">Hermione's eyes go blank and she stares forward blankly.") + her "What am I?" ("grin", "narrow", "base", "dead") + gen "*Uhm*..." ("base", xpos="far_left", ypos="head") + gen "(Should have thought of something. At least the potion seems to work. Let's see...)" ("base", xpos="far_left", ypos="head") + + #TODO Reconsider the use of menu here, there is only one option + menu: + "-You're an airheaded bimbo-": + show screen blktone + #call set_h_hair(hair_style="B",color=2) + her "I am an airheaded bimbo who only wants to make people happy..." ("soft", "narrow", "base", "dead") + menu: + "-You love being covered in my cum-": + pass + + her "I love being covered in your cum..." ("soft", "narrow", "base", "dead") + menu: + "-Your breasts are incredibly sensitive to pleasure-": + pass + her "My breasts are incredibly sensitive to pleasure......" ("soft", "narrow", "base", "dead") + pause.5 + + hide screen blktone + call nar(">Hermione closes her eyes and appears to nod off.") + her "......" ("base", "closed", "base", "mid") + her "Where am I?" ("upset", "wink", "base", "mid") + gen "You're in my office." ("base", xpos="far_left", ypos="head") + her "I am?" ("upset", "wink", "base", "mid") + her "How did I get here?" ("upset", "wink", "base", "mid") + gen "You walked in here about two minutes ago." ("base", xpos="far_left", ypos="head") + her "Huh, I must have forgotten, silly old me." ("base", "happy", "base", "mid") + her "So professor, what am I doing here?" ("base", "narrow", "worried", "down") + her "Aaaaaaah!!!!" ("shock", "happyCl", "worried", "mid",cheeks="blush") + her "What happened to my outfit?!" ("shock", "narrow", "base", "down") + her "I can't be seen wearing all this stuff!!!" ("disgust", "narrow", "worried", "down") + $ hermione.strip("robe", "accessory") + + if hermione.is_worn("top"): + call set_her_action("lift_top") + pause .5 + + $ hermione.strip("top") + call set_her_action("none","skip_update") + pause .5 + + her "That's soooooo much better!" ("soft", "narrow", "annoyed", "up") + + if hermione.is_worn("bottom"): + her "It really suuuuucks that I have to wear anything at all in this boring nunnery..." ("annoyed", "narrow", "annoyed", "up") + her "(Why can't I wear something shorter. A skirt, but...)" + her "(A reeealy short one!!!{heart}{heart}{heart})",face="horny" + + call set_her_action("lift_bottom") + pause.5 + + $ hermione.strip("bottom") + call set_her_action("none","skip_update") + pause.5 + + her "I bet you like watching me strip mistah{heart}" ("smile", "narrow", "base", "mid_soft") + + her "I'm not sure what under-thingies I should wear though..." ("annoyed", "narrow", "base", "down") + her "Definitely something in pink!!!" ("smile", "happyCl", "base", "mid") + hide hermione_main + call blkfade + + call nar(">Hermione pulls out her wand and casts a spell...") + + # TODO: Hermione's bimbo clothes should be temporary for this potion. revamp this event. + # Setting up Bimbo clothes + # Blonde hair + # Override body? + # add special face layer? + + pause.5 + her "" ("base", "narrow", "base", "mid_soft") + call hide_blkfade + call ctc + + her "Do you like it mistah?" ("grin", "happyCl", "base", "mid") + + menu: + g9"!!!" + "-You look amazing!-": + her "Thank youuuuu!!!{heart}{heart}{heart}" ("grin", "narrow", "annoyed", "up") + her "Aaaaanyway..." ("open", "base", "base", "R") + her "Is there anything you want from me mistah... I'll do anything!{heart}" ("soft", "narrow", "base", "mid_soft") + "-Where is your badge, cumslut?!-": + her "Oh no I forgot that!" ("soft", "wide", "base", "stare") + her "I'm soooo sorry!!!" ("shock", "happyCl", "worried", "mid", cheeks="blush") + her "It's this one, isn't it..." ("soft", "narrow", "worried", "down") + call nar(">Hermione conjures an \"I {heart} Cum\" badge, which magically attaches itself to her breasts.") + + # TODO: Uncomment once badges have been added. + # hermione.equip(cumslut_badge) + + her "Yay! Do you like it?" ("grin", "happyCl", "base", "mid") + her "Anything else you want from me mistah?... I'll do anything!{heart}" ("soft", "narrow", "base", "mid_soft") + + gen "I'm just going to ask you a few questions." ("base", xpos="far_left", ypos="head") + her "(...)" ("annoyed", "base", "angry", "mid") + her "(And here I was hoping he'd just ask to fuck...)" ("annoyed", "narrow", "angry", "R") + her "(Questions are so boooring! I hope they are at least naughty...)" ("annoyed", "narrow", "annoyed", "up") + her "Are those questions going to be hard, mistah?" ("grin", "base", "worried", "mid", emote="sweat") + her "I don't like hard questions." ("grin", "happyCl", "worried", "mid") + gen "Don't worry they'll be nice and easy for you." ("base", xpos="far_left", ypos="head") + her "yay!" ("smile", "happyCl", "base", "mid") + gen "First question, Who are you?" ("base", xpos="far_left", ypos="head") + her "That's an easy one! I'm Hermione Granger, the prettiest girl in the whole school!" ("smile", "happyCl", "base", "mid",emote="happy") + gen "And what are your hobbies?" ("base", xpos="far_left", ypos="head") + her "Doing my makeup{heart}, dancing{heart} and dressing happy{heart}!" ("base", "happyCl", "base", "mid") + gen "Dressing happy?" ("base", xpos="far_left", ypos="head") + her "You know, wearing nice things to make other people happy!{heart}" ("base", "narrow", "base", "up") + gen "You like making people happy?" ("base", xpos="far_left", ypos="head") + her "Of course mistah professor, making people happy{heart} makes me happy{heart}!" ("smile", "happyCl", "base", "mid") + her "Once I finish school I want to get a job where all I do is make people happy{heart}!" ("base", "happyCl", "base", "mid") + gen "Ok, final question" ("base", xpos="far_left", ypos="head") + gen "How would you like to make yourself happy?" ("base", xpos="far_left", ypos="head") + her "Make myself happy?" ("annoyed", "narrow", "worried", "down") + her "But I'm already happy, silly!" ("base", "happyCl", "base", "mid") + gen "Even happier." ("base", xpos="far_left", ypos="head") + her "Even happier? {size=+10}YAY!{/size}" ("smile", "happyCl", "base", "mid",emote="happy") + her "So how am I going to be happier? Am I going to get naked?" ("grin", "base", "base", "R") + gen "That'd be a good start." ("base", xpos="far_left", ypos="head") + $ hermione.strip("robe", "accessory") + her "{heart}AAAAAAWWWEEESOOOOOOOOMMME!{heart}" ("grin", "narrow", "annoyed", "up") + + call set_her_action("lift_top") + pause .5 + + $ hermione.strip("top") + $ hermione.strip("bra") + call set_her_action("none","skip_update") + pause.5 + + her "You know they don't let us walk around naked at school?" ("annoyed", "narrow", "angry", "R") + gen "Really? I can't imagine why not." ("base", xpos="far_left", ypos="head") + her "I know right? It's like so dumb! Everyone would just be happier{heart} if they got to be naked." ("soft", "narrow", "annoyed", "up") + + call set_her_action("lift_skirt") + pause.5 + + $ hermione.strip("bottom") + $ hermione.strip("panties") + call set_her_action("none","skip_update") + pause.5 + + her "I know everyone who sees me naked is happy!" ("base", "narrow", "base", "mid_soft") + gen "You've certainly made me happy." ("base", xpos="far_left", ypos="head") + her "Thanks mistah professor sir! That makes me so happy{heart}!" ("grin", "happyCl", "worried", "mid") + gen "(I don't think I can stand her saying the word happy much more...)" ("base", xpos="far_left", ypos="head") + gen "Now Hermione, I want you to touch your breasts." ("base", xpos="far_left", ypos="head") + call nar(">Hermione moves her hands up to her breasts") + call set_her_action("lift_breasts") + + her "Like this? This feels sooooo gooood!" ("base", "narrow", "worried", "down") + her "It's like mah hands are moving on their own..." ("soft", "narrow", "annoyed", "up") + her "It's soooo goodd but It's weeeiiird... I need something... anything..." ("open", "happyCl", "worried", "mid") + gen "Would you like to touch yourself down there?" ("base", xpos="far_left", ypos="head") + her "Yes mistah [genie_name]. please." ("shock", "happyCl", "worried", "mid") + + menu: + "-make her beg-": + gen "I want you to beg." ("base", xpos="far_left", ypos="head") + her "Please mistah sir..." ("shock", "happyCl", "worried", "mid") + gen "Please what?" ("base", xpos="far_left", ypos="head") + her "Ohmigawd Please let me touch myself down there... I'll do anything..." ("clench", "base", "worried", "mid", cheeks="blush",tears="soft") + gen "Anything?" ("base", xpos="far_left", ypos="head") + her "Anything. I just need to feel happy..." ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + gen "Tell me what you are and I'll let you." ("base", xpos="far_left", ypos="head") + her "I'm Hermione, the school slut." ("grin", "narrow", "annoyed", "up") + gen "More." ("base", xpos="far_left", ypos="head") + her "geez, I'm a dumb bimbo fuckbunny... that just wants to feel happy..." ("silly", "narrow", "annoyed", "up") + gen "And what makes you happy?" ("base", xpos="far_left", ypos="head") + her "Making you happy{heart} [genie_name]." ("silly", "narrow", "base", "dead") + gen "Good girl." ("base", xpos="far_left", ypos="head") + "-let her touch herself-": + gen "Go on then." ("base", xpos="far_left", ypos="head") + her "Thank you soooo{heart} much [genie_name]!" ("silly", "narrow", "annoyed", "up") + + call set_her_action("covering") + her "This is soooo goood" ("grin", "narrow", "annoyed", "up") + her "Mistah [genie_name] can you please do something for me?" ("grin", "wink", "base", "mid",cheeks="blush") + gen "What's that?" ("base", xpos="far_left", ypos="head") + her "If it's not tooo much trouble could you..." ("silly", "narrow", "annoyed", "up") + call nar(">Hermione starts pinching her nipple.") + call set_her_action("pinch") + her "could you please cum on me?" ("open_tongue", "narrow", "base", "up",cheeks="blush") + gen "Well if it makes you happy." ("base", xpos="far_left", ypos="head") + call nar(">you stand up and head towards her.") + her "thank you, thank you thank you! You're the best headmaster {size=+5}EVER!{/size}" ("smile", "happyCl", "base", "mid",emote="happy") + + hide hermione_main + call blkfade + + call gen_chibi("jerk_off","desk","base") + show screen chair_left + show screen desk + + hide screen blktone + hide screen bld1 + call hide_blkfade + call ctc + + call set_her_action("covering") + her "..." ("base", "narrow", "base", "up") + call set_her_action("pinch") + her "I don't know how other girls do it..." ("annoyed", "narrow", "worried", "down") + gen "Do what?" ("base", xpos="far_left", ypos="head") + her "Stop themselves from coming here and getting you to cover them in yummy cummy!" ("annoyed", "narrow", "worried", "down") + call set_her_action("covering") + her "I mean I can barely stop mahself coming here everyday!" ("smile", "happyCl", "base", "mid") + gen "That's it..." ("base", xpos="far_left", ypos="head") + call set_her_action("pinch") + her "*Hmmm*... I just luv playin' with mah boobies{heart}{heart}{heart}" ("base", "narrow", "base", "up") + her "They're just so soft..." ("open", "narrow", "base", "up",cheeks="blush") + call set_her_action("covering") + her "And they feel soo good. They're really sensi--" ("base", "narrow", "base", "up",cheeks="blush") + her "Sensi--" ("base", "narrow", "base", "up",cheeks="blush") + call set_her_action("pinch") + her "What's the word?" ("annoyed", "narrow", "base", "up",cheeks="blush") + gen "Sensitive." ("base", xpos="far_left", ypos="head") + call set_her_action("covering") + her "That's right they're really sensitive!" ("silly", "narrow", "base", "up",cheeks="blush") + gen "So am I..." ("base", xpos="far_left", ypos="head") + her "Are you going to cum?" ("open_tongue", "narrow", "base", "up",cheeks="blush") + call set_her_action("pinch") + her "Please do it on my face!" ("open_tongue", "narrow", "base", "up",cheeks="blush") + her "No wait my tits..." ("scream", "happyCl", "worried", "mid",cheeks="blush") + call set_her_action("covering") + her "No wait my face!" ("silly", "narrow", "base", "up",cheeks="blush") + + #TODO Fix: Chibi cumshot position in the following segment + menu: + "-Cum on her face-": + gen "Here it comes slut!" ("angry", xpos="far_left", ypos="head") + her "{heart}!!!{heart}" ("shock", "wide", "base", "stare",cheeks="blush") + call gen_chibi("cum","desk","base") + $ u_sperm = "characters/hermione/face/auto_07.webp" + $ uni_sperm = True + gen "that's it, all over your face." ("angry", xpos="far_left", ypos="head") + call set_her_action("pinch") + her "...{heart}{heart}{heart}" ("silly", "narrow", "base", "up",cheeks="blush") + "-Cum on her tits-": + gen "Here it comes fuckbunny!" ("angry", xpos="far_left", ypos="head") + her "{heart}{heart}{heart}" ("shock", "wide", "base", "stare",cheeks="blush") + call gen_chibi("cum","desk","base") + $ u_sperm = "characters/hermione/face/auto_02.webp" + $ uni_sperm = True + gen "All over your tits." ("angry", xpos="far_left", ypos="head") + call set_her_action("pinch") + her "It's so warm...{heart}{heart}{heart}" ("silly", "narrow", "base", "up",cheeks="blush") + "-cover her in cum-": + gen "Here it comes whore!" ("angry", xpos="far_left", ypos="head") + her "{heart}{heart}{heart}" ("shock", "wide", "base", "stare",cheeks="blush") + call gen_chibi("cum","desk","base") + $ u_sperm = "characters/hermione/face/auto_05.webp" + $ uni_sperm = True + gen "that's right slut, All over you." ("angry", xpos="far_left", ypos="head") + call set_her_action("pinch") + her "{heart}{heart}{heart}" ("silly", "narrow", "base", "up",cheeks="blush") + + call gen_chibi("hold_dick","desk","base") + her "..." ("grin", "narrow", "annoyed", "up") + $ hermione_dribble = True + her "That felt {size=+5}SOOOOO!{/size} good!" ("silly", "narrow", "annoyed", "up") + call set_her_action("lift_breasts") + + her "Can we do it again! Please! Pretty please! Pretty please with cum on top!" ("silly", "narrow", "base", "dead") + gen "Not today." ("base", xpos="far_left", ypos="head") + her "Awwwwww." ("shock", "happyCl", "worried", "mid") + + hide hermione_main + call blkfade + + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + call hide_blkfade + + her "Well ok... I suppose I'll head to class then." ("open", "narrow", "worried", "down") + gen "About that. I think it'd be better if you went back to your dorm." ("base", xpos="far_left", ypos="head") + her "Why's that mistah [genie_name] sir?" ("annoyed", "base", "base", "mid") + gen "I think you need to have a little nap and let this wear off." ("base", xpos="far_left", ypos="head") + her "whatever you say sir!" ("annoyed", "closed", "base", "mid") + call set_her_action("none","skip_update") + her "And thanks again!{heart} You're the best!" ("smile", "happyCl", "base", "mid",emote="happy") + + call her_walk(action="leave") + + call bld + gen "(Maybe I should have told her to get dressed first...)" ("base", xpos="far_left", ypos="head") + + # Note: these items can also be bought + $ cum_badge_ITEM.unlocked = True + $ lipstick_pink_ITEM.unlocked = True + call give_reward(">Hermione can now use pink lipstick and wear the \'cum\' badge!","interface/icons/lipstick_pink.webp") + + call reset_hermione + + $ her_potions_drunk.add("hypno") + + $ hermione_busy = True + jump main_room + + +### AHEGAO POTION ### +#TODO Ahegao potion is incomplete (only a sex scene with broken CG) +label potion_scene_3_4_1: + gen "How long until your next class [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "about fifteen minutes sir." ("open", "base", "base", "mid") + gen "in that case I think you might have to be a little late." ("base", xpos="far_left", ypos="head") + her "what? why?" ("open", "base", "worried", "mid") + gen "Well, it might be a bit hard for you to attend class with my cock buried in your tight little pussy." ("angry", xpos="far_left", ypos="head") + her "Oh..." ("soft", "happy", "base", "R") + gen "That's not going to be a problem is it [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "of course not [genie_name]! Let me just take my clothes off..." ("grin", "narrow", "annoyed", "up") + + show screen blkfade + with d3 + hide screen bld1 + call her_chibi("hide") + #SEX + $ renpy.play('sounds/gltch.ogg') + with hpunch + with kissiris + her "ahhhhhhhhh....{heart}" ("scream", "wide", "base", "stare") + hide hermione_main + call gen_chibi("hide") + $ ccg_folder = "herm_sex" + $ ccg1 = "blank" + $ ccg3 = "blank" + $ ccg2 = 1 + show screen ccg + hide screen blkfade + with d3 + her "*Ah*...{heart}" + gen "*mmmm*, you like that don't you slut?" ("angry", xpos="far_left", ypos="head") + $ ccg2 = 2 + her "yes...{heart}" + $ ccg2 = 3 + her "even though I have to miss class..." + $ ccg2 = 4 + her "I Honestly don't care...{heart}" + $ ccg2 = 5 + her "This just feels too goooood..." + pause + ">You quietly pull out the small vial from your pocket and pull the stopper out." + $ ccg2 = 6 + her "Mmmm, don't slow down [genie_name]..." + gen "You asked for it!" ("angry", xpos="far_left", ypos="head") + ">You speed up the pace as you go to pour a drop onto her ass, your hand barely managing to stay stable..." + $ ccg2 = 7 + her "Harder [genie_name]!!!" + pause + ">You feel hermione suddenly push her pussy back towards you, causing you to spill about a quarter of the vial onto her ass..." + $ ccg3 = "p1" + gen "..." ("base", xpos="far_left", ypos="head") + $ ccg2 = 8 + her "What was that?" + gen "*Ugh*... nothing... just a bit of spit. Keep going slut." ("base", xpos="far_left", ypos="head") + $ ccg2 = 9 + her "*Ah*...{heart} alright then..." + ">You quickly put the stopper back into the vial and slip it back into your robes." + $ ccg2 = 10 + her "*Ah*... *ah*... *ah*..." + pause + $ ccg2 = 11 + her "[genie_name], you think you could... *ah*..." + gen "What is it slut?" ("angry", xpos="far_left", ypos="head") + $ ccg2 = 12 + her "Could you please... spank me... *ah*...?" + gen "of course!" ("angry", xpos="far_left", ypos="head") + $ renpy.play('sounds/slap.ogg') + show screen white + pause.1 + hide screen white + with hpunch + ">You give her ass a hard spank, accidentally causing the potion to explode out from underneath your hand, coating her even more." + $ ccg3 = "p2" + $ ccg2 = 13 + pause + her "{size=+10}!!!{/size}" + ">Hermione's sopping cunt starts contracting around your cock uncontrollably." + gen "Mmmm, cumming already slut?" ("angry", xpos="far_left", ypos="head") + $ ccg2 = 14 + her "Y-yes...{heart}{heart}{heart}{heart}{heart}{heart}" + $ ccg2 = 15 + her "I{heart} can't{heart} stop..........{heart}{heart}{heart}" + ">True to her word, you don't feel an end to her relentless spasming." + gen "I love it when cum on my cock whore!" ("angry", xpos="far_left", ypos="head") + $ ccg2 = 16 + pause + her "no...{heart} sir...{heart} you...{heart} don't...{heart} understand...{heart}" + $ ccg2 = 17 + her "It...{heart} won't...{heart} stop...{heart}" + gen "I don't see how that's my problem!" ("angry", xpos="far_left", ypos="head") + $ renpy.play('sounds/slap.ogg') + show screen white + pause.1 + hide screen white + with hpunch + ">You give her ass another hard slap, savoring the feeling of another orgasm flowing through the witch." + $ ccg2 = 18 + her "{size=+10}!!!{/size}" + $ ccg2 = 19 + her "it's......{heart} {heart} " + $ ccg2 = 20 + pause + her "my{heart} whole{heart} body...{heart}{heart}{heart} " + gen "Speak up slut!" ("angry", xpos="far_left", ypos="head") + $ ccg2 = 21 + her "My body's...{heart} {heart} on fire..." + $ ccg2 = 22 + her "I can't...{heart}" + $ ccg2 = 23 + her "why...{heart}" + $ ccg2 = 24 + her "Why {heart}does {heart}it {heart}feel {heart}this {heart}goooooooooood...{heart}{heart}{heart}" + gen "enjoying yourself are we?" ("angry", xpos="far_left", ypos="head") + $ ccg2 = 25 + her "No...{heart} *ah*... yesssss....{heart}" + $ ccg2 = 26 + her "it's like...{heart}" + $ ccg2 = 27 + her "each time you thrust...{heart}{heart} that big fat {heart}cock{heart} in me...{heart}" + $ ccg2 = 28 + pause + her "it's like I {heart}{heart}cum{heart}{heart}..." + her "But it never resets..." + $ ccg2 = 29 + her "Each time is just another stronger {heart}orgasm{heart}..." + $ ccg2 = 30 + her "{size=+10}AND{heart} THEY{heart} NEVER{heart} STOOO{heart}OOOP!!!!!!{/size}" + gen "Sounds nice... and what about when I give your fat ass a nice... slap?" ("angry", xpos="far_left", ypos="head") + $ renpy.play('sounds/slap.ogg') + show screen white + pause.1 + hide screen white + with hpunch + ">You give her ass another hard slap, holding your hand against her warm flesh, swirling the potion around underneath it." + $ ccg2 = 31 + her "{size=+20}{heart}{heart}!!!{heart}{heart}{/size}" + $ ccg2 = 32 + her "{heart}my{heart} {heart}brain...{heart}" + $ ccg2 = 33 + her "You're{heart} going{heart} to{heart} kill{heart} me...{heart}" + gen "Stop being so overdramatic..." ("angry", xpos="far_left", ypos="head") + pause + $ ccg2 = 34 + her "I'm not...{heart}" + her "*Ah*.....{heart} some....{heart} thing....{heart} is....{heart} wrong....{heart}" + ">Hermione's words start to slow, eventually only being able to mutter a squeak of a word every time you thrust into her." + gen "Maybe it was the potion I poured all over your ass earlier?" ("angry", xpos="far_left", ypos="head") + $ ccg2 = 35 + her "{size=+20}{heart}{heart}what?{heart}{heart}{/size}" + gen "Don't worry, the effects should wear off in about an hour..." ("angry", xpos="far_left", ypos="head") + $ ccg2 = 36 + her "{size=+20}!!!!!!!{/size}" + gen "In the mean time, why don't you just sit back and enjoy the ride." ("angry", xpos="far_left", ypos="head") + $ ccg2 = 37 + her "{heart}e-e-enjoy....{heart}" + $ renpy.play('sounds/slap.ogg') + show screen white + pause.1 + hide screen white + with hpunch + $ ccg2 = 38 + pause + her "{size=+20}!!!!!!!{/size}" + $ ccg2 = 39 + her "Pleeeease...{heart}{heart}{heart}" + $ ccg2 = 40 + her "my...{heart}mind...{heart}is...{heart}breaking...{heart}" + ">You start to pick up the pace, treating her as nothing more than your mewling fuckmeat..." + gen "MMMM, you always know what to say to get me going!!" ("angry", xpos="far_left", ypos="head") + $ ccg2 = 41 + her "...{heart}{heart}{heart}" + ">Eventually the endless spasming of her drenched pussy around your cock proves too much." + gen "Ah!!! Here It comes whore!" ("angry", xpos="far_left", ypos="head") + $ ccg2 = 42 + pause + her "{heart}........{heart}" + ">You start firing cum directly into her womb." + $ ccg3 = "s4" + $ ccg2 = 43 + pause + her "{heart}!!!{heart}" + gen "TAKE THIS!!!" ("angry", xpos="far_left", ypos="head") + $ renpy.play('sounds/slap.ogg') + show screen white + pause.1 + hide screen white + with hpunch + ">You give her ass one last slap, stinging your hand as you shoot the last rope into her waiting cunt." + $ ccg3 = "s5" + $ ccg2 = 44 + pause + her "{heart}........{heart}" + her "{heart}...............{heart}" + $ ccg2 = 45 + pause + her "{heart}.......................{heart}" + show screen blkfade + with d3 + ">Eventually hermione's eyes roll back into her head as she collapses forward onto your desk." + ">you carry her unconscious body back to her room to sleep the last of the potion off." + hide screen ccg + hide hermione_main + call her_chibi("hide") + call gen_chibi("sit_behind_desk") + hide screen blkfade + with d3 + + $ hermione_busy = True + call music_block + jump main_room diff --git a/game/scripts/inventory/potions/clothing_potion.txt b/game/scripts/inventory/potions/clothing_potion.txt new file mode 100644 index 00000000..ab88f4af --- /dev/null +++ b/game/scripts/inventory/potions/clothing_potion.txt @@ -0,0 +1,154 @@ + + +### TRANSPARENCY POTION ### + +label potion_scene_4: #Transparent uniform + if her_potions_drunk: + gen "[hermione_name], I have another potion for you." ("base", xpos="far_left", ypos="head") + her "I'm not sure that I like these potions, [genie_name]." ("normal", "squint", "angry", "mid") + + if "cat_polyjuice" in her_potions_drunk: + her "Especially after the time you tried to turn me into a cat." ("annoyed", "squint", "angry", "mid") + gen "To be fair I was trying to turn you into another girl..." ("base", xpos="far_left", ypos="head") + her "That's not much better [genie_name]." ("angry", "base", "angry", "mid") + gen "Isn't it?" ("base", xpos="far_left", ypos="head") + + her "At least promise me that this one isn't going to embarrass me in the middle of class." ("open", "closed", "angry", "mid") + her "My reputation is suffering enough as it is. I don't need these constant potions causing me to transform in front of my peers." ("annoyed", "narrow", "angry", "R") + else: + gen "[hermione_name], I have a potion for you." ("base", xpos="far_left", ypos="head") + her "I'm not sure I like the idea of drinking a random potion, [genie_name]." ("normal", "squint", "angry", "mid") + + gen "I promise that this potion won't affect your body in any way." ("base", xpos="far_left", ypos="head") + her "Well then what on earth is it going to do?" ("angry", "base", "angry", "mid") + + if her_potions_drunk: + gen "As always [hermione_name], you'll ha--" ("base", xpos="far_left", ypos="head") + her "Have to wait and see. I know." ("normal", "squint", "angry", "mid") + else: + gen "You'll just have to wait and see..." ("base", xpos="far_left", ypos="head") + her "*Hmmph*" ("normal", "squint", "angry", "mid") + + call her_chibi("drink_potion","mid","base") + + call nar(">Hermione quickly drinks the potion.") #new + her "" ("open", "closed", "angry", "mid") + + call her_chibi("stand","mid","base") + + her "Can I go now?" + gen "Yes you may. Twenty points to Gryffindor" ("base", xpos="far_left", ypos="head") + + $ gryffindor += 20 + + her "Thank you [genie_name]." ("open", "closed", "base", "mid") + + call her_walk(action="leave") + + $ hermione_busy = True + + # TODO: Revamp transparency potion scenario logic, do we keep it a wardrobe feature or? + + #if her_whoring <= 7: + # call set_her_transparency(top=0.8, bottom=0.9) + #elif her_whoring <= 13: + # call set_her_transparency(top=0.5, bottom=0.6) + #elif her_whoring <= 20: + # call set_her_transparency(top=0.3, bottom=0.4, bra=0.6, onepiece=0.6, panties=0.6) + #else: + # call set_her_transparency(top=0.2, bottom=0.2, bra=0.4, onepiece=0.4, panties=0.4) + + $ transparent_quest = True + + $ her_potions_drunk.add("transparency") + + jump main_room + + +label potion_scene_4_2: #Scene where Hermione comes back after classes angry and confused at having her uniform made transparent + $ transparent_quest = False + + call her_walk(action="enter", xpos="mid", ypos="base") + + show screen bld1 + if her_whoring <= 7: #Very angry and embarrassed + call nar(">Hermione bursts into your office.") + her "How could you [genie_name]!" ("angry", "base", "base", "mid",tears="soft") + her "I am the laughing stock of the entire school!" ("angry", "base", "base", "mid",tears="soft") + her "Now everyone knows what I look like naked!" ("mad", "happyCl", "worried", "mid",tears="soft_blink") + gen "Tell me about what happened." ("base", xpos="far_left", ypos="head") + her "Tell you about what happened? I'm never speaking to you again." ("angry", "base", "base", "mid",tears="soft") + $ her_mood += 20 + + elif her_whoring <= 13: #Mildly aggravated + call nar(">Hermione comes into your office quickly without knocking.") + her "Again?" ("angry", "happyCl", "worried", "mid",emote="sweat") + gen "What's this about [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Why would you make my clothes invisible again?" ("open", "base", "base", "mid") + gen "Why not?" ("base", xpos="far_left", ypos="head") + her "Ugh, you're such a pig." ("annoyed", "base", "worried", "R") + gen "Tell me about what happened." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "happyCl", "worried", "mid") + her "Fine, but I expect an extra ten points." ("open", "base", "base", "mid") + gen "As you wish." ("base", xpos="far_left", ypos="head") + her "Well I started off with potions class as usual when I started to feel like all eyes were on me." ("disgust", "narrow", "base", "mid_soft") + gen "I wonder why." ("base", xpos="far_left", ypos="head") + her "As I was saying I was completing potions class and felt like everyone wouldn't take their eyes off of me." ("annoyed", "narrow", "angry", "R") + her "I didn't think anything of it until I was approached by Professor Snape at the end of the lesson." ("annoyed", "narrow", "annoyed", "mid") + her "He normally criticises me during potions class. Stuff like getting dosages wrong, things that I know are correct." ("annoyed", "base", "worried", "R") + gen "Back to the story [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Well when he commented that he liked my outfit I was suspicious. I thought that perhaps he was talking about my shirt until I looked down and saw that everything was see through." ("disgust", "narrow", "base", "mid_soft") + her "But I just ignored him, finished class and ran here." ("annoyed", "narrow", "angry", "R") + gen "You just finished class?" ("base", xpos="far_left", ypos="head") + her "Of course, I can't afford to miss potions class. I'm doing poorly enough without missing class." ("annoyed", "narrow", "annoyed", "mid") + gen "Well fair enough. You may go now." ("base", xpos="far_left", ypos="head") + her "Hmmph. Goodbye [genie_name]." ("annoyed", "base", "worried", "R") + + elif her_whoring <= 20: #Slightly aroused + call nar(">Hermione enters your office") + her "Can you at least warn me next time?" ("open", "squint", "base", "mid") + gen "Well, that'd take away from the suspense wouldn't it?" ("base", xpos="far_left", ypos="head") + her "Hmmmm, well at least ask what I'm doing before you give me the potion." ("open", "base", "worried", "R") + gen "Why, what did you have to do today that was so important?" ("base", xpos="far_left", ypos="head") + her "I had to give a speech for languages!" ("angry", "base", "worried", "mid") + her "Do you have any idea how inappropriate it was giving a speech on morality in front of the entire class--" ("open", "closed", "base", "mid") + her "{size=+5}As my clothes became transparent!{/size}" ("angry", "base", "worried", "mid") + gen "Well I imagine it depends on what side of morality you were arguing." ("base", xpos="far_left", ypos="head") + her "It doesn't matter." ("open", "closed", "base", "mid") + gen "Are you sure that you didn't enjoy it?" ("base", xpos="far_left", ypos="head") + her "How could I. I had to stand there as my friends and peers all saw me naked." ("annoyed", "squint", "base", "mid") + gen "You finished your speech?" ("base", xpos="far_left", ypos="head") + her "Certainly, I had to make sure that everyone knew my views on morality." ("soft", "base", "base", "mid") + gen "Well I'm sure they have a crystal clear view of it now." ("base", xpos="far_left", ypos="head") + her "Hmmph, are you done?" ("annoyed", "narrow", "angry", "R") + gen "Yes, you may go now." ("base", xpos="far_left", ypos="head") + her "Goodbye [genie_name]." ("open", "base", "base", "mid") + + else: #Highly aroused (doesn't even acknowledge that her clothes are see-through) + call nar(">Hermione enters the office casually.") + gen "Hello [hermione_name], how was your day today?" ("base", xpos="far_left", ypos="head") + her "Fine [genie_name]. Why do you ask?" ("base", "base", "base", "mid") + gen "No reason. Anything unusual happen today?" ("base", xpos="far_left", ypos="head") + her "Hmmmm, now that you mention it I suppose that boys in class were a little more forward than usual." ("open", "base", "worried", "R") + gen "How so?" ("base", xpos="far_left", ypos="head") + her "Well nothing serious, just small stuff like calling me names, groping me." ("soft", "base", "base", "R") + gen "Groping you? What on earth could have provoked them to do that?" ("base", xpos="far_left", ypos="head") + her "I don't know [genie_name]. I can't imagine any reason that I would be attracting attention today..." ("base", "base", "base", "mid") + gen "You're getting off on this aren't you?" ("base", xpos="far_left", ypos="head") + her "..." ("smile", "base", "base", "R") + her "I've never been so turned on in my life. Having all eyes on me. Having every boy imagine doing unspeakable things to me." ("soft", "narrow", "annoyed", "up") + her "Snape made me stand in front of the class after I talked back to him." ("base", "narrow", "worried", "down") + her "I think that I orgasmed just from the looks people gave me." ("grin", "narrow", "base", "dead") + gen "Well done [hermione_name]. You're becoming quite the slut." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]. Is that all?" ("base", "narrow", "base", "mid_soft") + gen "Yes, you can go now slut." ("base", xpos="far_left", ypos="head") + her "{heart}" ("smile", "base", "base", "R") + + # TODO: Fix once scenario issues have been resolved. + #call reset_her_transparency + + call her_walk(action="leave") + + $ hermione_busy = True + + jump main_room diff --git a/game/scripts/inventory/potions/expanding_potion.txt b/game/scripts/inventory/potions/expanding_potion.txt new file mode 100644 index 00000000..5039d483 --- /dev/null +++ b/game/scripts/inventory/potions/expanding_potion.txt @@ -0,0 +1,441 @@ +# Breast expansion - Until chibis are added for it tifucking won't be written (ayylmao) +label potion_scene_2_1_1: + gen "Guess what I have for you today." ("base", xpos="far_left", ypos="head") + her "Is it another foul tasting potion that will try transform me into a hideous animal?" ("open", "closed", "angry", "mid") + gen "Well I mean this one smells nice." ("base", xpos="far_left", ypos="head") + her "Will it taste nice though?" ("open", "base", "base", "mid") + gen "Only one way to find out." ("base", xpos="far_left", ypos="head") + call nar(">You hand her the potion and she brings it up to her nose.") + her "Well you're right, it does smell good. Let's find out if it tastes good..." ("base", "base", "base", "mid") + call her_chibi("drink_potion","mid","base") + + call nar(">She drinks the potion at a leisurely pace.") + her "Ahhh." ("base", "happyCl", "base", "mid") + her "" ("smile", "narrow", "base", "mid_soft") + call her_chibi("stand","mid","base") + + her "That wasn't actually that bad." + her "So, now that I've had the potion, will you tell me what it's supposed to do?" ("angry", "wink", "base", "mid") + gen "No need to ruin the fun, it should take effect relatively quickly." ("base", xpos="far_left", ypos="head") + her "Well what am I supposed to do until then?" ("base", "narrow", "base", "mid_soft") + gen "You could show me your tits." ("base", xpos="far_left", ypos="head") + her "I don't think so [genie_name], you're only paying me for drinking the potion." ("open", "closed", "base", "mid") + her "If you expect to see me without my shirt on then you'll have to try a little harder." ("base", "squint", "base", "mid") + gen "Oh I wouldn't be so sure of that." ("base", xpos="far_left", ypos="head") + her "So is that what it does? Makes me show you my breasts? Is it some sort of mind control potion?" ("base", "base", "base", "mid") + gen "Mind control? Where's the fun in that? No, this is something much more entertaining." ("base", xpos="far_left", ypos="head") + her "Well it better happen soon otherwise I'm lea--" ("annoyed", "narrow", "angry", "R") + call nar(">You notice her breasts start to expand ever so slightly.") #Start using facial expressions mixed with Captain Nemo art + her "..." ("annoyed", "narrow", "annoyed", "mid") + her "As I said, something better happen soon or I'm leaving." ("annoyed", "base", "worried", "R") + gen "I wouldn't worry about it, from the looks of it, it's already started." ("base", xpos="far_left", ypos="head") + her "Why, what's wrong with me?" ("open", "base", "base", "mid") + gen "There's nothing wrong with you. If anything, it's an improvement." ("base", xpos="far_left", ypos="head") + her "What is?" ("annoyed", "narrow", "annoyed", "mid") + call nar(">She starts patting down her body. Checking to see if she has grown any new ears or a tail.") + her "I don't see what you could be..." ("open", "narrow", "worried", "down") + call nar(">She grabs her breasts to check them.") + her "!!!" ("angry", "narrow", "base", "down") + her "Have my breasts gotten bigger?" ("angry", "wide", "base", "stare") + gen "About time you noticed." ("base", xpos="far_left", ypos="head") + her "Why would you make my breasts bigger? They're already big enough!" ("angry", "base", "base", "mid") + gen "You know what they say, can't have too much of a good thing." ("base", xpos="far_left", ypos="head") + her "It's the other way around [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + gen "Is it? Well I prefer my version." ("base", xpos="far_left", ypos="head") + her "Well how big are they supposed to--" ("angry", "narrow", "base", "down") + call nar(">Her breast swell up again.") + her "You can't be serious. At this rate they're going to rip my shirt." ("angry", "wide", "base", "stare") + gen "Well they should stop there." ("base", xpos="far_left", ypos="head") + her "Good, they're big enough as is." ("angry", "base", "angry", "mid") + + menu: + "-Send her to class-": + gen "You're right, I suppose they are big enough." ("base", xpos="far_left", ypos="head") + gen "Well that's all for today, twenty points to Gryffindor." ("base", xpos="far_left", ypos="head") + her "That's all? You're not going to make me do something else?" ("shock", "wide", "base", "stare") + gen "Why would I, I asked you to drink a potion and you drank it. You're free to leave." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name], I'll head back to my room." ("smile", "base", "base", "R") + gen "Room? It's time for class [hermione_name]. What do you think Professor Snape will say once he hears that you skipped class?" ("base", xpos="far_left", ypos="head") + her "Well I can't be expected to go like this." ("disgust", "narrow", "base", "mid_soft") + gen "Why not? Everything is covered." ("base", xpos="far_left", ypos="head") + her "Barely. And what will people think of me." ("angry", "narrow", "base", "down") + gen "Just tell them that you are still developing. I'm sure that they're used to enormous breasts anyway, what's a few extra sizes." ("base", xpos="far_left", ypos="head") + her "... Fine. Just promise me that they won't get any bigger." ("upset", "closed", "base", "mid") + gen "I can't promise that, you're still in school. A lot of girls don't stop growing until they're thirty." ("base", xpos="far_left", ypos="head") + her "You know what I mean [genie_name]." ("scream", "base", "angry", "mid", emote="angry") + gen "I'm afraid that I don't, [hermione_name], now you'd best hurry if you don't want to be late." ("base", xpos="far_left", ypos="head") + her "... Yes [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + + call her_walk(action="leave") + + $ hermione_busy = True + + call set_her_action("expand_breasts") + + jump main_room + # End scene + + "-Play with her breasts-": #TODO Whoring check + pass + + gen "Well that's a matter of personal opinion." ("base", xpos="far_left", ypos="head") + gen "Now how would you like to earn some additional points?" ("base", xpos="far_left", ypos="head") + her "I want an extra 40." ("annoyed", "narrow", "annoyed", "mid") + gen "I haven't even told you what I want to--" ("base", xpos="far_left", ypos="head") + her "If you want to touch my breasts it will be an extra forty points." ("annoyed", "narrow", "angry", "R") + gen "Deal." ("base", xpos="far_left", ypos="head") + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + call nar(">Hermione walks over to behind your desk, her breasts swaying rhythmically as she moves.") + pause .8 + + hide hermione_main + # call set_her_action("lift_top") + call her_chibi_scene("grope_tits") + call hide_blkfade + + her "Well..." ("upset", "wink", "base", "mid",xpos="mid",ypos="base") + call nar(">You reach out and grab her breasts through her stretched shirt.") + her "!!!" ("angry", "wide", "base", "stare") + her "Please be gentle [genie_name]. They seem to be much more sensitive than usual, it must be the potion." ("angry", "base", "base", "mid") + gen "Well I'll take that into account..." ("base", xpos="far_left", ypos="head") + call nar(">You take a breast in each hand and start kneading them with your fingers.") + her "..." ("open", "closed", "base", "mid") + gen "They're certainly much larger than usual." ("base", xpos="far_left", ypos="head") + her "... yes" ("soft", "narrow", "annoyed", "up") + call nar(">You continue massaging them gently through her shirt. Pulling them apart and then pressing them into one another.") + her "... It feels like they're getting--" ("angry", "narrow", "base", "down") + call ctc + + call set_her_action("expand_breasts") + with vpunch + + her "!!!" ("angry", "wide", "base", "stare") + her "You said that they wouldn't get any bigger! Now how would you explain this?!" ("scream", "base", "angry", "mid",emote="angry") + gen "Don't worry about that [hermione_name], worry about earning your forty points." ("base", xpos="far_left", ypos="head") + her "Just hurry up." ("annoyed", "narrow", "annoyed", "mid") + menu: # TODO Add titfuck writing here + # "-Suck her nipples-": + # pass + # "-Titfuck her-": + # gen "Well come here then!" ("base", xpos="far_left", ypos="head") + # hide hermione_main + # call blkfade + # jump start_titfuck + "-Play with her nipples-": + pass + + call nar(">You take her exposed breasts back into your hands and continue massaging") + + her "sir... they seem to have become more sensitive..." ("base", "narrow", "base", "up") + her "Please don't do anything sudden." ("soft", "narrow", "annoyed", "up") + gen "Like this?" ("base", xpos="far_left", ypos="head") + call nar(">You take both nipples between your thumb and index finger.") + her "!!!" ("scream", "wide", "base", "stare") + her "Please stop... it's too much, it's like my nipples are on fire." ("shock", "happyCl", "worried", "mid") + gen "Shhhh, just be still, it'll all be over soon." ("base", xpos="far_left", ypos="head") + call nar(">You start rolling her nipples in between your fingers.") + her "..." ("open", "happyCl", "worried", "mid") + call nar(">You feel her push her crotch against your thigh.") + gen "Feeling a little aroused are we?" ("base", xpos="far_left", ypos="head") + call nar(">You start to pinch and pull her nipples.") + her "Ohhh..." ("soft", "narrow", "annoyed", "up") + call nar(">She starts grinding herself against your thigh.") + gen "Well, well, well, you are sensitive now aren't you? Trying to grind out an orgasm on your headmaster's leg, how shameless." ("base", xpos="far_left", ypos="head") + her "..." ("grin", "narrow", "base", "dead") + gen "Well let's see if we can do something about that." ("base", xpos="far_left", ypos="head") + call nar(">You start alternating pinching and pulling her nipples hard, pulling the nipples out as far as you can and then pushing them back into her breast.") + her "!!!" ("scream", "wide", "base", "stare") + her "I-I-I'm cumming!" + call nar(">She starts grinding hard against your leg as a wet spot starts to form on her skirt.") + gen "What a naughty little slut." ("base", xpos="far_left", ypos="head") + call nar(">She breathes heavily as she rests against you") + + call blkfade + pause 1 + hide hermione_main + hide screen blktone + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + hide screen bld1 + hide screen blktone + call hide_blkfade + pause.5 + + her "Will... that be all [genie_name]?" ("soft", "narrow", "annoyed", "up") + gen "Yes [hermione_name]. You can go now." ("base", xpos="far_left", ypos="head") + pause.2 + + call her_walk(action="leave") + + $ her_potions_drunk.add("expansion") + $ her_potions_drunk.add("breast_expansion") + + $ hermione_busy = True + + jump main_room + +# Breast expansion return +label potion_scene_2_1_2: + #TODO Event: Hermione comes back after having her breasts expand in class + + +# Ass expansion +label potion_scene_2_2: + gen "[hermione_name], I have another potion for you to try today." ("base", xpos="far_left", ypos="head") + her "Another one? Where are you getting these?" ("open", "squint", "base", "mid") + gen "That's of no concern to you. What should concern you is the twenty points that you are able to earn should you drink it." ("base", xpos="far_left", ypos="head") + her "... Fine, give me the bottle." ("normal", "squint", "angry", "mid") + call nar(">She takes a quizzical smell of the bottle.") + her "At least this one smells good." ("base", "base", "base", "mid") + + call her_chibi("drink_potion","mid","base") + pause 2 + + call nar(">She drinks the whole potion over a series of gulps.") + + call her_chibi("stand","mid","base") + pause.5 + + her "Ahhh, that was good! So what was it?" ("grin", "happyCl", "worried", "mid",emote="sweat") + gen "The effects should be visible soon enough." ("base", xpos="far_left", ypos="head") + her "Well can you at least give me a hint?" ("open", "base", "base", "mid") + gen "Let's just say that it's a redistribution of ass{w}ets." ("base", xpos="far_left", ypos="head") ###Added {w} instead of your ... + her "What do you mean by--" ("annoyed", "narrow", "angry", "R") + call nar(">Hermione turns pale as she starts to feel her body churn.") + her "What's going on. It feels like my insides are moving." ("angry", "wide", "base", "stare") + her "And my ass, it feels so... good." ("soft", "narrow", "annoyed", "up") + call nar(">You start to notice her ass increase in size.") #Use bigger butt from Captain Nemo + her "It feels too sensitive... I have to take my skirt off" ("angry", "wide", "base", "stare") + + $ hermione.strip("robe", "accessory") + $ hermione.strip("panties") + call set_her_action("lift_skirt") + pause.5 + + $ hermione.strip("bottom") + call set_her_action("none","skip_update") + + her "" ("silly", "slit", "worried", "ahegao",cheeks="blush") + pause.8 + + her "" ("soft", "wide", "base", "stare") + call ctc + + her "Something is happening with my body, [genie_name]!" ("open", "narrow", "base", "down") + call ctc + + call set_her_action("expand_ass") + with vpunch + + her "" ("angry", "narrow", "base", "down") + call ctc + + + her "ughhh, my ass has gotten bigger!" ("angry", "narrow", "base", "down") + her "Is that what this potion's supposed to do? Making my ass big?" ("upset", "closed", "base", "mid") + gen "Evidently." ("base", xpos="far_left", ypos="head") + her "Why does my ass feel so good?" ("soft", "narrow", "annoyed", "up") #new + call nar(">Hermione keeps rubbing her ass, rolling her fingers across her expanded buttocks.") + gen "*Hmm*... It's not supposed to, but I guess every case is different." ("base", xpos="far_left", ypos="head") + her "It's just so sensitive... [genie_name] do you think that you could... massage me?" ("grin", "narrow", "base", "dead") + gen "Well I mean I'm hardly going to say no am I." ("base", xpos="far_left", ypos="head") + hide hermione_main + hide screen bld1 + with d3 + + call her_walk("desk", "base", reduce=0.8) + call blkfade + + call nar(">Hermione hops over to your desk, her ass bouncing as she moves, and presents herself to you.") + pause 1 + + call her_chibi_scene("behind_desk_back") + call hide_blkfade + call ctc + + show screen bld1 + show screen blktone + her "Please [genie_name]... please take advantage of me..." ("open", "happyCl", "worried", "mid",xpos="mid",ypos="base") + gen "As you command." ("base", xpos="far_left", ypos="head") + call nar(">You take her engorged buttocks in your hands. Each one is now much larger than before.") + + call her_chibi_scene("grope_ass_back") + with d3 + + gen "Well this potion certainly is effective." ("base", xpos="far_left", ypos="head") + call nar(">You start firmly stroking her ass cheeks. Pulling them apart to reveal her asshole and then squishing them together.","start") + call nar(">Seeing her tight asshole gives you an idea.","end") + + menu: #Thought about adding a rimming option here but the chibis don't really support it + "-Finger her asshole-": + call nar(">You pull her asscheeks open again to show her puckered hole.") + gen "Let's see how sensitive you really are." ("base", xpos="far_left", ypos="head") + call nar(">You start teasing the entrance with your finger, circling the entrance slowly.") + her "!!!" ("shock", "happyCl", "worried", "mid") + her "[genie_name] please... I'm too sensitive. If you do that, \nI'm not sure I'll be able to control myself." ("soft", "narrow", "annoyed", "up") + hide hermione_main + gen "Well in that case..." ("base", xpos="far_left", ypos="head") + call nar(">You slowly pull your finger away from her asshole.") + her "Thank you--" ("soft", "narrow", "annoyed", "up") + call nar(">And then fully insert it.") + her "..." ("angry", "wide", "base", "stare") + her "..." + her "..." + her "{size=-10}I'm cumming{/size}" ("scream", "wide", "base", "stare") + hide hermione_main + gen "What was that?" ("base", xpos="far_left", ypos="head") + call nar(">You start turning your finger.") + her "{size=+10}I'm cumming!{/size}" ("scream", "happyCl", "worried", "mid") + call nar(">Her asshole starts quivering around your finger.") + hide hermione_main + gen "What a little anal slut. I wonder what you'll do once I try this." ("base", xpos="far_left", ypos="head") + call nar(">You start pumping your finger in and out of her shivering asshole.") + her "!!!" ("shock", "happyCl", "worried", "mid") + her "I'm cumming again!" ("open", "happyCl", "worried", "mid") + gen "So soon?" ("base", xpos="far_left", ypos="head") + her "I can't stop! Please [genie_name], please, no more!" ("angry", "wide", "base", "stare") + + menu: + "-Stop-": + gen "Well, I suppose that's enough for now..." ("base", xpos="far_left", ypos="head") + call nar(">You pull your finger out of her asshole and she immediately slumps over your desk.") + her "That was... great..." ("grin", "narrow", "base", "dead") + call nar(">She lies on your desk, breathing heavily.") + "-Keep Going-": + gen "What was that [hermione_name]? It almost sounded like you asked me to stop." ("base", xpos="far_left", ypos="head") ###Or would it be better if she start to tear up and cry a bit? + call nar(">You increase the pace.") + her "Please..." ("open", "happyCl", "worried", "mid") + gen "Please what?" ("base", xpos="far_left", ypos="head") + call nar(">You insert a second finger.") + her "Please... stop... you'll break me..." ("angry", "narrow", "base", "down") + call nar(">You grab her hip with one hand and keep finger fucking her asshole.") + her "..." ("shock", "happyCl", "worried", "mid") + her "..." ("scream", "happyCl", "worried", "mid") + call nar(">You feel her body go limp as her asshole relentlessly quivers around your fingers.") + gen "There, wasn't that nice?" ("base", xpos="far_left", ypos="head") + call nar(">You slow down and pull out of her asshole.") + her "... yeeess...[genie_name]..." ("grin", "narrow", "base", "dead") + gen "Good girl." ("base", xpos="far_left", ypos="head") + + gen "Well you best be off to class." ("base", xpos="far_left", ypos="head") + her "... With my butt looking like this?" ("angry", "narrow", "base", "down") + gen "I'm sure no one will be able to tell \nwith your skirt on. Now hurry up \nI have things to attend to." ("base", xpos="far_left", ypos="head") + call blkfade + pause 1 + + hide screen bld1 + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + + hide screen blktone + hide screen bld1 + call hide_blkfade + pause.5 + + show screen bld1 + her "Yes [genie_name]." ("base", "narrow", "worried", "down") + gen "Oh I almost forgot, twenty points to Gryffindor!" ("base", xpos="far_left", ypos="head") + $ gryffindor += 20 + her "Oh... right, the points. Thank you." ("grin", "narrow", "base", "dead") + call nar(">Hermione picks up her skirt and attempts to put it on. Her ass is so huge that it barely covers half of it.") + her "..." ("open", "narrow", "worried", "down") + + "-Hot dog her-" if her_whoring >= 17: + gen "Bend over [hermione_name]." ("base", xpos="far_left", ypos="head") + call nar(">Before she even has a chance to react you push her forward over your desk.") + call her_chibi_scene("sex_hotdog") + with d3 + her "!!!" ("angry", "wide", "base", "stare") + her "What are you going to do [genie_name]?" ("angry", "wink", "base", "mid") + hide hermione_main + gen "Well seeing as how your ass has become so fucking huge I thought I may as well put it to good use." ("base", xpos="far_left", ypos="head") + call nar(">You pull you cock out from your robes and place it on top of her ass crack.") + her "Your not going to fuck my asshole are you [genie_name]?" ("grin", "narrow", "base", "dead") + hide hermione_main + gen "Not your asshole, [hermione_name], I intend to fuck your entire ass!" ("base", xpos="far_left", ypos="head") + call nar(">You grab a firm hold of her cheeks and pull them apart, allowing your shaft to rest in between, on top of her asshole.") + gen "A perfect fit wouldn't you say?" ("base", xpos="far_left", ypos="head") + her "What do you--" ("angry", "base", "base", "mid") + hide hermione_main + call nar(">You squeeze her ass-cheeks back together around your cock and start pumping in between them.") + her "!!!" ("grin", "narrow", "annoyed", "up") + hide hermione_main + gen "Fuck, your ass is so soft. It's like fucking a pillow." ("base", xpos="far_left", ypos="head") + her "Ahhh..." ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + her "Please, [genie_name]..." ("silly", "narrow", "annoyed", "up") + hide hermione_main + gen "Ughh, this feels so good, we might have to make this permanent." ("base", xpos="far_left", ypos="head") + her "Permanent?" ("shock", "base", "base", "R",cheeks="blush",tears="soft") + hide hermione_main + gen "You wouldn't mind, would you?" ("base", xpos="far_left", ypos="head") + gen "Having me use your ass as a sex-toy everyday." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "squint", "base", "mid",cheeks="blush") + hide hermione_main + gen "I asked you a question, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "... no [genie_name]..." ("silly", "narrow", "base", "dead") + hide hermione_main + call nar(">You feel her asshole starts to quiver as you glide over it.") + gen "Of course you wouldn't, you're enjoying this more than I am, aren't you?" ("base", xpos="far_left", ypos="head") + her "... yes... I'm loving... you using my ass as your toy..." ("silly", "narrow", "annoyed", "up") + hide hermione_main + gen "That's it girl, here I come!" ("base", xpos="far_left", ypos="head") + call nar(">With one final thrust you cum, covering her fat ass with your seed.") + + call her_chibi_scene("sex_cum_out") + call cum_block + call ctc + + $ uni_sperm = True + $ u_sperm = "characters/hermione/face/auto_08.webp" + gen "Ughhh" ("base", xpos="far_left", ypos="head") + gen "All over your fucking back." ("base", xpos="far_left", ypos="head") + call nar(">You fall back into your chair, spent.") + gen "You may go now [hermione_name]." ("base", xpos="far_left", ypos="head") + call blkfade + pause 1 + + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + + hide screen blktone + hide screen bld1 + call hide_blkfade + pause.5 + + show screen bld1 + her "... With my butt looking like this?" ("angry", "squint", "base", "mid",cheeks="blush") + gen "I'm sure no one will be able to tell with your skirt on. Now hurry up, I feel like a nap." ("base", xpos="far_left", ypos="head") + #her "Yes [genie_name]." ("angry", "squint", "base", "mid",cheeks="blush") + gen "Oh I almost forgot, twenty points to Gryffindor!" ("base", xpos="far_left", ypos="head") + $ gryffindor += 20 + her "Oh... right, the points. Thank you." ("grin", "narrow", "annoyed", "up") + call nar(">Hermione picks up her skirt and attempts to put it on. Her ass is so huge that it barely covers half of it.") + + call nar(">Your cum is still visible on her ass.") + her "..." ("open", "closed", "base", "mid") + + + hide hermione_main + $ uni_sperm = False + hide screen chair_left + hide screen desk + call gen_chibi("sit_behind_desk") + call her_chibi("stand","desk","base") + with d3 + + call her_walk(action="leave") + + $ her_potions_drunk.add("expansion") + $ her_potions_drunk.add("ass_expansion") + + $ hermione_busy = True + + call update_her_uniform + + jump main_room + + #will add this later + #"-Fuck her ass-" if her_whoring >= 22: diff --git a/game/scripts/inventory/potions/milking_potion.txt b/game/scripts/inventory/potions/milking_potion.txt new file mode 100644 index 00000000..e83c4b8e --- /dev/null +++ b/game/scripts/inventory/potions/milking_potion.txt @@ -0,0 +1,1143 @@ + +#TODO Fix: ways to modify appearance during milking potion events (instead of using the deleted variables) + + +# Potion Menu +label snape_potion_menu: + hide snape_main + with fade + + sna "I notice you're making a bit of progress on Miss Granger." ("snape_37", ypos="head") + sna "I've got some potions here that normally aren't available to students." ("snape_47") + sna "These might help speed up the process..." ("snape_47") + + menu: + "-Lactantium-" if potion_inv.has("p_milk_potion"): + ">You already have a Lactantium potion." + jump snape_ready + "-Lactantium-" if not potion_inv.has("p_milk_potion"): + if potion_scene_11_progress == 0: + sna "Ah yes, a unique concoction of mine. I have a bottle on hand at all times." ("snape_37") + sna "Just in case..." ("snape_41") + sna "Here, take it!" ("snape_02") + ">Snape quickly pushes the milky potion into your hands." + ">Milking potion received!" + $ potion_inv.add("p_milk_potion") + elif potion_scene_11_progress == 1: + sna "Good work on getting her to take it." ("snape_37") + sna "Her breasts did look magnificently full in class." ("snape_41") + sna "*mmmm*, and I think she was even leaking a little..." ("snape_41") + sna "Get her to take another!" ("snape_46") + sna "Here, I'll even give you a milker for the slut!" ("snape_02") + ">Snape hands you an odd leather and metal harness." + gen "What is--" ("base", xpos="far_left", ypos="head") + ">Snape quickly pushes another milky potion into your hands." + ">Milking potion received!" + sna "Don't worry about it, just get her to put it on. It's enchanted so it will handle the rest..." ("snape_40") + sna "but I want it back before you leave!" ("snape_34") + sna "I spent a fortune on the self cleaning model..." ("snape_46") + $ potion_inv.add("p_milk_potion") + else: + sna "*Mmmm*, I wish I could be there to see you milk her..." ("snape_41") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(That's probably not a good idea...)" ("base", xpos="far_left", ypos="head") + sna "All that {b}delicious{/b} milk..." ("snape_40") + gen "(definitely not a good idea.)" ("base", xpos="far_left", ypos="head") + sna "..." ("snape_41") + sna "Well anyway, I was wondering..." ("snape_37") + sna "Want me to augment the potion?" ("snape_37") + gen "Augmented?" ("base", xpos="far_left", ypos="head") + gen "I never asked for this..." ("base", xpos="far_left", ypos="head") + sna "I know... I'm offering it..." ("snape_34") + gen "Oh yeah, sorry. What sort of augmentation?" ("base", xpos="far_left", ypos="head") + sna "Well I can leave the potion as it is..." ("snape_38") + sna "Or I can add an extra little something to it." ("snape_40") + gen "Such as?" ("base", xpos="far_left", ypos="head") + sna "Well..." ("snape_37") + label snape_potion_choice: + pass + menu: + "-Normal potion-": + $ potion_version = 1 + sna "Here you are mister Adventurous..." ("snape_35") + + "-Futa potion-": + sna "What? Are you sure you want this one?" ("snape_44") + sna "I mean I figured you were a bit of a pervert..." ("snape_02") + sna "but I didn't think..." ("snape_45") + sna "Oh well, if you want it, it's yours..." ("snape_02") + menu: + "-give it to me-": + $ potion_version = 2 + sna "really?" ("snape_44") + sna "you're more Adventurous than I thought!" ("snape_02") + sna "Here, I'll even give you an extra attachment for the milker!" ("snape_46") + ">Snape hands you a different cannister with a soft plastic opening in the bottom. It looks almost like an anus." + sna "I also put an undetectable extension charm on the cannister... Promise to tell me what happens!" ("snape_45") + "-no-": + sna "Too bad..." ("snape_35") + jump snape_potion_choice + + "-Permanent breast expansion-": + sna "The milk production will still only last a day..." ("snape_02") + sna "But her big boobs will be permanent..." ("snape_37") + if hermione_perm_expand_breasts: + sna "Drinking this potion again will undo the permanent effect" ("snape_02") + sna "Are you sure you want this?" ("snape_02") + sna "She might not like it..." ("snape_46") + menu: + "-yes-": + $ potion_version = 3 + sna "Fantastic!!!" ("snape_45") + "-no-": + sna "Too bad..." ("snape_35") + jump snape_potion_choice + + ">Snape quickly pushes the milky potion into your hands." + ">Milking potion received!" + $ potion_inv.add("p_milk_potion") + jump snape_ready + + "-Veritaserum-" if potion_inv.has("p_veritaserum"): + ">You already have a Veritaserum potion." + jump snape_ready + "-Veritaserum-" if not potion_inv.has("p_veritaserum"): + sna "Truth potion." ("snape_01") + sna "This is dangerous stuff Genie..." ("snape_01") + sna "Use it to make anyone tell the truth." ("snape_47") + sna "Just not me!" ("snape_36") + ">Snape hands you the tiny vial filled with a strange gold liquid." + ">Veritaserum received!" + $ potion_inv.add("p_veritaserum") + jump snape_ready + + "-Voluptatem-" if potion_inv.has("p_voluptatem"): + ">You already have a bottle of Voluptatem." + jump snape_ready + "-Voluptatem-" if not potion_inv.has("p_voluptatem"): + gen "Volupwhatem?" ("base", xpos="far_left", ypos="head") + sna "This is actually an experimental potion of mine..." ("snape_01") + sna "I'm not sure if this is ready for testing on humans yet." ("snape_35") + ">Snape hands you the small bottle filled with a swirling pink and purple liquid." + ">Voluptatem received!" + $ potion_inv.add("p_voluptatem") + jump snape_ready + + "\"Never mind.\"": + jump snape_ready + + +# Milking potion +label potion_scene_11: + if potion_scene_11_progress == 0 or her_whoring < 13: + $ potion_scene_11_progress = 1 + jump potion_scene_11_1 + elif potion_scene_11_progress == 1 or her_whoring < 18: + $ potion_scene_11_progress = 2 + jump potion_scene_11_2 + else: + $ potion_scene_11_progress = 3 + jump potion_scene_11_3 + +# First milking potion scene +label potion_scene_11_1: + gen "[hermione_name], how would you like to try a nice little potion?" ("base", xpos="far_left", ypos="head") + her "..." ("open", "closed", "angry", "mid") + her "If I had the option I'd prefer not to..." ("open", "base", "base", "mid") + gen "well--" ("base", xpos="far_left", ypos="head") + her "but unfortunately, Slytherin winning the house cup this year isn't an option!" ("scream", "closed", "angry", "mid") + gen "So you'll drink the potion then?" ("base", xpos="far_left", ypos="head") + her "Yes [genie_name], I'll drink your potion." ("annoyed", "squint", "base", "mid") + gen "Fantastic!" ("base", xpos="far_left", ypos="head") + call nar(">You hand her the cloudy potion.","start") + call nar(">Hermione cautiously smells the mixture.","end") + her "Is this milk?" ("annoyed", "narrow", "angry", "R") + her "..." ("annoyed", "squint", "angry", "mid") + her "I guess it doesn't matter..." ("open", "squint", "base", "mid") + + call her_chibi("drink_potion","mid","base") + + call nar(">Hermione quickly drinks the potion.") + + call her_chibi("stand","mid","base") + + her "*Ah*..." ("cum", "happyCl", "worried", "mid") + her "It was milk!" ("smile", "base", "base", "R") + gen "Yes. Apparently it's a special kind of milk." ("base", xpos="far_left", ypos="head") + her "Apparently?" ("open", "squint", "base", "mid") + her "Do you even know where this came from?" ("annoyed", "squint", "angry", "mid") + gen "O-Of course I do." ("base", xpos="far_left", ypos="head") + gen "I'm the great dingledoor after all!" ("base", xpos="far_left", ypos="head") + her "..." ("open", "squint", "base", "mid") + her "If you don't want to say what it is that's fine sir..." ("open", "closed", "angry", "mid") + her "But there's no need to insult me." ("normal", "squint", "angry", "mid") + gen "(what did I say?)" ("base", xpos="far_left", ypos="head") + gen "Yes, well, you should notice the effects starting to manifest soon enough." ("base", xpos="far_left", ypos="head") + her "Hmmm..." ("base", "narrow", "base", "mid_soft") + her "And what sort of \"effects\" would that be?" ("open", "squint", "base", "mid") + gen "You may notice a some minor swelling in those nice tits of yours." ("base", xpos="far_left", ypos="head") + her "..." ("base", "base", "base", "mid") + her "Is this milk going to make by breasts bigger [genie_name]?" ("annoyed", "squint", "angry", "mid") + gen "That's one half of it." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "squint", "angry", "mid") + her "And the other half?" ("annoyed", "narrow", "angry", "R") + gen "Well you might start to notice a little milk coming from your--" ("base", xpos="far_left", ypos="head") + her "What???" ("shock", "wide", "base", "stare") + her "Professor, Do you mean to say that this potion is going to cause me to lactate?" ("annoyed", "squint", "angry", "mid") + gen "That's one way to put it." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "squint", "angry", "mid") + her "Well how long is it supposed to last? I do have classes today." ("annoyed", "narrow", "angry", "R") + her "I'm falling behind enough as it is..." ("annoyed", "base", "worried", "R") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "Yes... I think it's all this fooling around sir." ("normal", "happyCl", "worried", "mid") + her "I nearly got a \"b\" in biology the other day..." ("angry", "base", "worried", "mid") + gen "Well speaking of biology..." ("base", xpos="far_left", ypos="head") + call nar(">You notice Hermione's breasts start to swell slightly.") + her "!!!" ("open", "wide", "base", "stare") + her "[genie_name], they're growing rather quickly!" ("angry", "base", "worried", "mid") + gen "This is all perfectly normal." ("base", xpos="far_left", ypos="head") + her "..." ("open", "squint", "base", "mid") + call nar(">Hermione's breasts start to visibly swell again.") + her "Ugh... it feels like my organs are sliding into my chest..." ("angry", "base", "worried", "mid") + her "This isn't going to cause any ongoing issues is it?" ("annoyed", "squint", "angry", "mid") + gen "O-o-of course not..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "squint", "angry", "mid") + her "That wasn't very inspiring..." ("annoyed", "squint", "angry", "mid") + gen "Just focus on the matter at hand." ("base", xpos="far_left", ypos="head") + + $ hermione_expand_breasts = True + + call update_her_uniform #Updates body. + with hpunch + + her "!!!" ("angry", "wide", "base", "stare") + + if hermione_wear_top: + call nar(">You hear a faint popping as Hermione's shirt fails to hold back her rapidly expanding breasts.") + else: + if hermione_wear_bra: + call nar(">You hear a faint popping as Hermione's bra fails to hold back her rapidly expanding breasts.") + else: + call nar(">You watch in awe as Hermione's breasts start to rapidly expand!") + + her "[genie_name], this is ridiculous!" ("angry", "base", "worried", "mid") + her "I can't be expected to go to class looking like this!" ("annoyed", "base", "worried", "R") + gen "Why not? I don't think they're that much bigger than normal." ("base", xpos="far_left", ypos="head") + her "Are you kidding me?" ("disgust", "narrow", "base", "mid_soft") + her "They're {size=+5}humongous!{/size}" ("angry", "base", "angry", "mid") + gen "Well if you want them to go back to normal..." ("base", xpos="far_left", ypos="head") + her "What? Do you have an antidote?" ("grin", "base", "base", "R") + gen "Not an antidote, but I do have a method that would alleviate the swelling." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "base", "angry", "mid") + her "I'm listening..." ("annoyed", "squint", "angry", "mid") + gen "Well as far as I can tell, your breasts are swelling due to an excess supply of milk." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "base", "angry", "mid") + gen "If we somehow got it all out of there, I'm sure they'd revert to normal size in no time at all." ("base", xpos="far_left", ypos="head") + her "..." ("scream", "wide", "base", "mid") + her "You can't be serious!" ("annoyed", "narrow", "annoyed", "mid") + her "Are you suggesting that I be milked! Like some sort of animal!" ("annoyed", "narrow", "annoyed", "mid") + gen "I'm simply offering a way to fix your problem." ("base", xpos="far_left", ypos="head") + gen "If you don't want my help then I'm afraid you'll have to go to class in your current condition." ("base", xpos="far_left", ypos="head") + her "*hmph*" ("annoyed", "squint", "angry", "mid") + her "It can't be any worse than being milked." ("open", "squint", "base", "mid") + her "Honestly, [genie_name], I'm shocked that you would even suggest something so completely ridiculous." ("normal", "squint", "angry", "mid") + her "I think I better get going..." ("annoyed", "narrow", "angry", "R") + gen "Well, twenty points to gryffindor" ("base", xpos="far_left", ypos="head") + $ gryffindor += 20 + her "Thanks..." ("annoyed", "squint", "base", "mid") + + call her_walk(action="leave") + + $ her_potions_drunk.add("milk") + $ her_milk_potion_return = True + + $ hermione_busy = True + + jump main_room + +# Second milking potion scene (with machine) +label potion_scene_11_2: + #Genie offers hermione the potion again + #She reluctantly accepts, but says that she expects to be paid double. + #takes potion + #comments on taste + #wait + #breasts expand + #Genie offers milking + #Hermione reluctantly accepts + #Pulls out machine + #Hermione shocked, expected to be by hand + #Tries to refuse + #Genie says she has already agreed + #Upset, she puts on the milker + #Slowly starts to work + #Hermione is Cautious at first but gradually starts to enjoy it + #starts to enjoy it a little too much + #starts moaning, gets close to cumming + #milking stops + #she is somewhat upset but goes to class wearing expanded clothes + + $ milking = 0 + + gen "[hermione_name], how would you like to try some nice milk?" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "squint", "angry", "mid") + her "is this the damn milk potion again sir?" ("scream", "closed", "angry", "mid") + gen "maybe..." ("base", xpos="far_left", ypos="head") + call nar(">You hand her the cloudy potion.","start") + call nar(">Hermione cautiously smells the mixture.","end") + her "It is!" ("annoyed", "narrow", "angry", "R") + her "..." ("annoyed", "squint", "angry", "mid") + her "well..." ("open", "squint", "base", "mid") + her "if you want me to drink this damn potion again..." ("open", "squint", "base", "mid") + her "I have two conditions..." ("annoyed", "narrow", "angry", "R") + gen "Name them." ("base", xpos="far_left", ypos="head") + her "One!" ("scream", "closed", "angry", "mid") + her "I demand to be paid one hundred points!" ("scream", "closed", "angry", "mid") + her "Two!" ("scream", "closed", "angry", "mid") + her "I expect you to make the milking stop..." ("scream", "happyCl", "worried", "mid") + gen "Deal!" ("base", xpos="far_left", ypos="head") + her "Well alright then..." ("angry", "happyCl", "worried", "mid",emote="sweat") + call nar(">Hermione takes one last look at the potion before closing her eyes...") + + call her_chibi("drink_potion","mid","base") + + her "..." ("full_cum", "narrow", "base", "dead") + call nar(">Hermione quickly gulps down the potion.") + + call her_chibi("stand","mid","base") + + her "*Ah*..." ("cum", "happyCl", "worried", "mid") + her "That doesn't actually taste too bad." ("smile", "base", "base", "R") + gen "Is it just like cows milk?" ("base", xpos="far_left", ypos="head") + her "Sort of..." ("open", "squint", "base", "mid") + her "It's a little sweeter..." ("upset", "wink", "base", "mid") + her "but not in a bad way..." ("base", "base", "base", "R") + her "It also looks a little more yellow." ("annoyed", "narrow", "worried", "down") + gen "Yes, well, you should notice it start to affect you soon." ("base", xpos="far_left", ypos="head") + her "*Hmmm*..." ("annoyed", "narrow", "worried", "down") + her "well how are you going to solve the milk problem, [genie_name]?" ("open", "narrow", "worried", "down") + her "Am I going to have to stand here..." ("base", "narrow", "base", "up") + $ hermione.strip("robe", "accessory") + her "With my shirt off..." ("soft", "happy", "base", "R") + + call set_her_action("lift_top") + pause.5 + + $ hermione.strip("top") + $ hermione.strip("bra") + call set_her_action("none","skip_update") + pause.5 + + call nar(">Hermione quickly removes her top.") + her "while you use your rough hands to milk me..." ("grin", "narrow", "annoyed", "up") + her "like some sort of animal!" ("grin", "narrow", "base", "dead") + gen "Not quite..." ("base", xpos="far_left", ypos="head") + call nar(">YOu hand her the milking harness.") + her "What's this???" ("scream", "wide", "base", "stare") + gen "A milker." ("base", xpos="far_left", ypos="head") + her "Professor, Do you really expect me to put this on?" ("open", "happyCl", "worried", "mid") + gen "unless you want to go to class with those puppies full of milk." ("base", xpos="far_left", ypos="head") + her "but..." ("shock", "happyCl", "worried", "mid") + her "Can't you just do it by hand..." ("soft", "narrow", "annoyed", "up") + her "I though it would be just like when you play with them normally..." ("angry", "wink", "base", "mid") + gen "No can do. I don't think I'd be able to get it all out before your classes anyway" ("base", xpos="far_left", ypos="head") + her "I'm sure there's time--" ("base", "happyCl", "worried", "mid") + + if hermione_perm_expand_breasts or hermione_expand_breasts: + pass + else: + $ hermione_breasts = "characters/hermione/body/breasts/breasts_expanded.webp" + + her "" ("shock", "wide", "base", "stare",cheeks="blush",trans=hpunch) + pause.5 + + her "!!!" ("angry", "happyCl", "worried", "mid",cheeks="blush") + call nar(">You notice hermione's breasts slight to swell slightly.") + her "[genie_name], they're growing rather quickly!" ("angry", "happyCl", "worried", "mid",cheeks="blush",emote="sweat") + gen "This is all perfectly normal." ("base", xpos="far_left", ypos="head") + her "please..." ("disgust", "wide", "worried", "shocked",cheeks="blush") + + $ hermione_breasts = "characters/hermione/body/breasts/breasts_expanded_large.webp" + with hpunch + pause.5 + + call nar(">Hermione's breasts start to visibly swell again.") + her "ughhh..." ("grin", "narrow", "annoyed", "up") + + $ hermione_breasts = "characters/hermione/body/breasts/breasts_expanded_xlarge.webp" + with hpunch + pause.5 + + $ ccg_folder = "herm_boob" + $ ccg1 = 1 + $ ccg2 = "blank" + $ ccg3 = "blank" + show screen ccg + with d3 + + call nar(">You notice hermione's breasts swell for the final time.") + her "!!!" ("upset", "happyCl", "worried", "mid",cheeks="blush", ypos="head", flip=False) + pause + $ ccg1 = 2 + her "[genie_name], this is ridiculous!" ("open", "happyCl", "worried", "mid",cheeks="blush") + her "do they have to be so big?" ("angry", "base", "angry", "mid",cheeks="blush") + gen "Yes." ("base", xpos="far_left", ypos="head") + $ ccg1 = 3 + her "..." ("annoyed", "narrow", "annoyed", "mid") + $ ccg1 = 4 + her "pervert." ("open", "narrow", "annoyed", "mid", cheeks="blush") + gen "Well seeing as how they've reached full size..." ("base", xpos="far_left", ypos="head") + pause + $ ccg1 = 2 + her "*hmph* Fine!" ("annoyed", "narrow", "annoyed", "mid") + $ ccg1 = 1 + her "Let me just put on your weird milking device that you own for some reason!" ("annoyed", "narrow", "angry", "R") + gen "Well technically I'm just borrowing it, so if you could make sure not to break it..." ("base", xpos="far_left", ypos="head") + $ ccg1 = 2 + pause + her "..." ("annoyed", "squint", "angry", "mid") + her "Ugh... the things I put up with for this house." ("annoyed", "squint", "base", "mid") + hide screen ccg + with d3 + call nar(">hermione slowly slips the harness on.") + + $ milking = 1 + call set_her_action("milk_breasts") + + her "There! Happy now!" ("disgust", "slit", "low", "stare",xpos="right",ypos="base") + gen "I mean if you could moo that would really Complete the picture..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "base", "angry", "mid") + her "can we just get this over with..." ("annoyed", "narrow", "angry", "R") + gen "Um... It's enchanted..." ("base", xpos="far_left", ypos="head") + "(Does it have an on switch)" + her "Wait... This is an enchanted item? Please don't turn it on--" ("angry", "base", "base", "mid") + call nar(">You hear a faint noise as the harness on hermione's chest springs to life.") + + $ milking = 2 + call set_her_action("milk_breasts") + + her "!!!" ("base", "narrow", "base", "up",cheeks="blush") + her "{size=+5}OFF! TURN OFF!{/size}" ("shock", "happyCl", "worried", "mid") + gen "I think you need to wait until it's done." ("base", xpos="far_left", ypos="head") + her "Ugh..." ("open_tongue", "narrow", "base", "up",cheeks="blush") + her "I can't..." ("open", "happyCl", "worried", "mid") + her "It's too much..." ("open", "happyCl", "worried", "mid") + gen "What's wrong?" ("base", xpos="far_left", ypos="head") + her "Ugh... it's the sucking..." ("open", "happyCl", "worried", "mid") + her "It's too intense!" ("shock", "happyCl", "worried", "mid") + gen "Can't you just ride it out?" ("base", xpos="far_left", ypos="head") + her "Ugh.... maybe...{w=0.8} I'll try." ("silly", "narrow", "annoyed", "up") + call nar(">You wait a few more minutes as hermione is milked in front of you.") + + $ milking = 3 + call set_her_action("milk_breasts") + + her "..." ("open_wide_tongue", "narrow", "annoyed", "up") + call nar(">Her expression slowly fades from discomfort to pleasure.") + her "..." ("silly", "narrow", "base", "dead") + + $ milking = 4 + call set_her_action("milk_breasts") + + call nar(">The machine makes a pleasant sounding click as it looks to turn off.") + gen "Alright, well, looks like you're good to head off to class." ("base", xpos="far_left", ypos="head") + her "What?" ("annoyed", "narrow", "angry", "R") + her "Can't you leave it on..." ("open", "happyCl", "worried", "mid") + gen "I'm afraid not." ("base", xpos="far_left", ypos="head") + gen "(I don't even know how it turns on...)" ("base", xpos="far_left", ypos="head") + her "But I was so close..." ("shock", "happyCl", "worried", "mid") + her "..." ("annoyed", "narrow", "angry", "R") + her "Fine... I better get to potions class then..." ("annoyed", "narrow", "worried", "down") + + hide hermione_main + call blkfade + call nar(">Hermione takes off the harness. You see a passing look of regret on her face.") + $ hermione_expand_breasts = True + call set_her_action("none", "update") #Resets clothes. + call update_her_uniform + pause.5 + hide screen bld1 + call hide_blkfade + + gen "Feel better?" ("base", xpos="far_left", ypos="head") + her "Surprisingly yes..." ("annoyed", "base", "base", "mid") + her "They even seem like they've shrunk a little bit." ("open", "narrow", "worried", "down") + her "So you're sure they're not going to leak anymore?" ("open", "squint", "base", "mid") + gen "oh um, no of course not..." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "squint", "angry", "mid") + her "well I'd like to be paid now [genie_name]..." ("annoyed", "narrow", "angry", "R") + + + gen "Oh yes, quite right. One hundred points to gryffindor!" ("base", xpos="far_left", ypos="head") + $ gryffindor += 100 + + her "Thank you sir..." ("open", "squint", "base", "mid") + her "(Although I still have to head to class with these huge things...)" ("annoyed", "narrow", "angry", "R") + her "(not that I mind the extra attention...)" ("soft", "happy", "base", "R") + + $ milking = 0 + + call her_walk(action="leave") + + $ hermione_busy = True + + jump main_room + +# Third milking potion scene (with machine and futa/permanent options) +label potion_scene_11_3: + $ milking = 0 + #Genie offers hermione the potion + #Agrees on the condition that she milks him + #Genie agrees + #option to add extra ingredient + #Hermione drinks potion + #Comments that the milk tastes sweeter than regular milk + #wait + #Breasts expand + #takes her top off + + #option 1 (futa) + + #option 2 (Permanent expansion) + gen "[hermione_name], feel like a milkshake?" ("base", xpos="far_left", ypos="head") + her "Really? Strawberry, please!" ("smile", "happyCl", "base", "mid",emote="happy") + gen "I've only got vanilla, sorry..." ("base", xpos="far_left", ypos="head") + call nar(">You hand her the cloudy potion.","start") + call nar(">Hermione cautiously smells the mixture.","end") + her "This is that damn milk again!" ("angry", "wide", "base", "stare") + her "..." ("annoyed", "squint", "angry", "mid") + her "I wanted a milkshake..." ("annoyed", "narrow", "worried", "down") + gen "I'm sure if you shake the bottle it'll go frothy." ("base", xpos="far_left", ypos="head") + her "It's not the same!" ("scream", "closed", "angry", "mid") + her "There's no sugar or flavouring!" ("annoyed", "squint", "angry", "mid") + + if potion_version > 1: + gen "well, this one does have an extra ingredient..." ("base", xpos="far_left", ypos="head") + her "Really?" ("angry", "wink", "base", "mid") + her "Is it Strawberry?" ("soft", "narrow", "annoyed", "up") + gen "WHy don't you have a taste and find out?" ("base", xpos="far_left", ypos="head") + her "Alright then..." ("open", "squint", "base", "mid") + her "(I hope it's Strawberry!)" ("smile", "happyCl", "base", "mid",emote="happy") + else: + gen "Just drink it..." ("base", xpos="far_left", ypos="head") + her "*hmph* fine..." ("open", "squint", "base", "mid") + her "(At the very least he should have added chocolate flavouring...)" ("open", "squint", "base", "mid") + + call nar(">Hermione takes one last look at the potion before closing her eyes...") + + call her_chibi("drink_potion","mid","base") + + call nar(">Hermione quickly gulps down the potion.") + + call her_chibi("stand","mid","base") + + her "*Ah*..." ("cum", "happyCl", "worried", "mid") + her "That wasn't Strawberry!" ("annoyed", "narrow", "annoyed", "mid") + gen "Did you really think it would be?" ("base", xpos="far_left", ypos="head") + her "I mean... Sort of?" ("annoyed", "narrow", "worried", "down") + her "you are a wizard after all..." ("annoyed", "narrow", "worried", "down") + her "the house-elves make me a milkshake whenever i ask..." ("annoyed", "base", "angry", "mid") + gen "Speaking of milkshakes!" ("base", xpos="far_left", ypos="head") + call nar(">You notice hermione's breasts start to swell...") + her "Ugh... this always feels so weird..." ("angry", "narrow", "base", "down") + $ hermione.strip("robe", "accessory") + + if hermione.is_worn("top"): + her "I better take my shirt off before it rips..." ("normal", "squint", "angry", "mid") + else: + if hermione.is_worn("bra"): + her "I better take my bra off before it rips..." ("normal", "squint", "angry", "mid") + + call set_her_action("lift_top") + pause.5 + + $ hermione.strip("top") + $ hermione.strip("bra") + call set_her_action("none","skip_update") + pause.5 + + if hermione_perm_expand_breasts or hermione_expand_breasts: + pass + else: + $ hermione_breasts = "characters/hermione/body/breasts/breasts_expanded.webp" + with hpunch + pause.5 + + her "!!!","angry","wide" + call nar(">You notice hermione's breasts start to grow a little more.") + her "ugh..." ("grin", "narrow", "annoyed", "up") + gen "mmmm, just like that." ("base", xpos="far_left", ypos="head") + her "(this is so weird...)" ("angry", "narrow", "base", "down") + + $ hermione_breasts = "characters/hermione/body/breasts/breasts_expanded_large.webp" + with hpunch + pause.5 + + her "!!!" ("angry", "wide", "base", "stare") + call nar(">Hermione's breasts start to visibly swell again.") + + $ hermione_breasts = "characters/hermione/body/breasts/breasts_expanded_xlarge.webp" + with hpunch + pause.5 + + her "!!!" ("angry", "narrow", "base", "down") + call nar(">You notice Hermione's breasts swell for the final time.") + her "[genie_name], this is ridiculous!" ("annoyed", "narrow", "annoyed", "mid") + her "Did you make the potion stronger this time?" ("annoyed", "narrow", "angry", "R") + + if not potion_version == 2: #Orgasms while milking + gen "What are you talking about, they're the same size as always." ("base", xpos="far_left", ypos="head") + her "are you sure..." ("annoyed", "squint", "angry", "mid") + call nar(">Hermione jiggles her boobs side to side.") + her "They just feel so much... heavier... than before." ("annoyed", "narrow", "worried", "down") + gen "Well seeing as how you emptied them of their milk last time, maybe they made more..." ("base", xpos="far_left", ypos="head") + her "they better not have..." ("shock", "happyCl", "worried", "mid") + her "just hand me the milker so I can get to class..." ("annoyed", "narrow", "annoyed", "mid") + gen "Is that the only reason you want it?" ("base", xpos="far_left", ypos="head") + her "What? Why else would I want it?" ("open", "base", "base", "R") + gen "I seem to remember you enjoying yourself with it last time." ("base", xpos="far_left", ypos="head") + her "You really are disgusting sometimes, [genie_name]..." ("annoyed", "narrow", "angry", "R") + gen "Whatever you say..." ("base", xpos="far_left", ypos="head") + call nar(">You hand hermione the harness.","start") + call nar(">hermione takes it from your hands and slowly slips it on, taking care to make sure the cups fit.","end") + + $ milking = 1 + call set_her_action("milk_breasts") + + her "..." ("upset", "happyCl", "worried", "mid",cheeks="blush") + gen "are you sure you can't moo?..." ("base", xpos="far_left", ypos="head") + her "..." ("soft", "happy", "base", "R") + her "{size=-5}moo...{/size}" ("open", "base", "base", "R") + gen "what was that?" ("base", xpos="far_left", ypos="head") + her "I'm not saying it again, [genie_name]... {size=-5}once is enough...{/size}" ("annoyed", "narrow", "angry", "R") + her "..." ("annoyed", "narrow", "worried", "down") + her "on!" ("open", "happyCl", "worried", "mid") + call nar(">You hear a faint noise as the harness on hermione's chest springs to life.") + + $ milking = 2 + call set_her_action("milk_breasts") + + her "!!!" ("soft", "happy", "base", "R") + her "*Ugh*... it feels different this time..." ("open", "happyCl", "worried", "mid") + her "like there's so much more in my breasts..." ("shock", "happyCl", "worried", "mid") + her "and it all wants to come out..." ("silly", "narrow", "base", "dead") + her "It's too much..." ("silly", "narrow", "annoyed", "up") + gen "What's wrong?" ("base", xpos="far_left", ypos="head") + her "*ah*... it's the sucking..." ("grin", "narrow", "annoyed", "up") + her "It's not like before!" ("silly", "narrow", "annoyed", "up") + gen "is it hurting you?" ("base", xpos="far_left", ypos="head") + her "*ah*.... no... It's not bad..." ("silly", "narrow", "base", "dead") + + $ milking = 3 + call set_her_action("milk_breasts") + + her "*ah*...{heart}{heart}{heart}" ("grin", "narrow", "base", "dead") + call nar(">You notice the canister in front of her fill with milk at an alarming rate...") + her "*ah*... it's so good..." ("grin", "narrow", "annoyed", "up") + + $ milking = 4 + call set_her_action("milk_breasts") + + call nar(">The machine makes a pleasant sounding click as it looks to turn off.") + gen "Alright, well, looks like you're good to head off to class." ("base", xpos="far_left", ypos="head") + her "What? but sir..." ("open", "happyCl", "worried", "mid") + her "they're still so full..." ("shock", "happyCl", "worried", "mid") + gen "it looks like the machine is full, I'm afraid." ("base", xpos="far_left", ypos="head") + her "(But I was so close...)" ("open", "happyCl", "worried", "mid") + her "*ah*... and if I go to class like this I'll leak everywhere!" ("shock", "happyCl", "worried", "mid") + gen "well, if you empty the cannister It'll probably turn back on." ("base", xpos="far_left", ypos="head") + her "empty it..." ("angry", "wink", "base", "mid") + call nar(">Hermione takes a look at the full milk cannister.") + her "Can I just pour it out on the floor then?" ("annoyed", "narrow", "worried", "down") + gen "And waste all that nutritious milk?" ("base", xpos="far_left", ypos="head") + + menu: + "-make her drink it-": + her "Do you want to drink it then, [genie_name]?" ("angry", "wink", "base", "mid") + gen "Um, I'm afraid not... I just had a big bowl of cereal." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "worried", "down") + her "Then do you have a bottle for me to store it in..." ("angry", "wink", "base", "mid") + gen "fresh out..." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "angry", "R") + gen "I'm afraid you'll have to drink it yourself." ("base", xpos="far_left", ypos="head") + her "..." ("soft", "happy", "base", "R") + her "{size=-5}alright...{/size}" ("open", "base", "base", "R") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "It's not like I can go to class leaking milk again..." ("annoyed", "narrow", "angry", "R") + her "and besides, it's not the worst feeling in the world..." ("angry", "narrow", "base", "down") + her "I wouldn't mind giving the machine another go..." ("soft", "narrow", "annoyed", "up") + gen "Well, bottoms up!" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "worried", "down") + + $ milking = 5 + call set_her_action("milk_breasts") + + call nar(">Hermione gives the cannister one final look before unscrewing it and putting it to her lips.") + her "(For gryffindor!)" ("scream", "closed", "angry", "mid") + call nar(">She takes a mouthful of her own milk.") + her "..." ("full_cum", "narrow", "base", "dead") + her "*gulp*" ("cum", "happyCl", "worried", "mid") + call nar(">She takes the last half into her mouth.") + her "..." ("full_cum", "narrow", "base", "dead") + her "*gulp*" ("cum", "happyCl", "worried", "mid") + her "*ah*..." ("grin", "narrow", "base", "dead") + her "I think I'll need to skip a meal after all this milk..." ("angry", "wink", "base", "mid") + call nar(">She slowly screws the cannister back into milker.") + + $ milking = 1 + call set_her_action("milk_breasts") + + her "..." ("base", "narrow", "worried", "down") + her "on!" ("open", "closed", "base", "mid") + call nar(">The milker once again comes to life as it starts to milk Hermione for a second time.") + + "-drink it yourself-": + her "Do you want to drink it then, [genie_name]?" ("angry", "wink", "base", "mid") + gen "Waste not, want not!" ("base", xpos="far_left", ypos="head") + her "..." ("angry", "wide", "base", "stare") + her "well, here you are then..." ("angry", "base", "base", "mid") + + $ milking = 5 + call set_her_action("milk_breasts") + + call nar(">Hermione gives the cannister one final look before unscrewing it and handing it to you.") + her "(weirdo...)" ("angry", "narrow", "base", "down") + call nar(">you take a mouthful of her milk.") + gen "Mmmmmm... Delicious!" ("base", xpos="far_left", ypos="head") + her "..." ("angry", "wink", "base", "mid") + her "really? You liked my milk?" ("open", "base", "base", "R") + gen "More than water from an oasis!" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "angry", "R") + her "well..." ("soft", "happy", "base", "R") + her "Are you going to finish it?" ("smile", "base", "angry", "mid") + call nar(">You finish the cannister in one final mouthful.") + her "..." ("smile", "happyCl", "base", "mid") + call nar(">She slowly screws the cannister back into milker.") + + $ milking = 1 + call set_her_action("milk_breasts") + + her "(I can't believe he liked it...)" ("smile", "base", "base", "R") + her "(maybe it does taste good...)" ("grin", "base", "base", "R") + her "..." ("base", "narrow", "worried", "down") + her "on!" ("open", "closed", "base", "mid") + call nar(">The milker once again comes to life as it starts to milk Hermione for a second time.") + + + her "!!!" ("grin", "narrow", "base", "dead") + her "ugh... it's so gooood..." ("grin", "narrow", "annoyed", "up") + $ hermione_dribble = True + + $ milking = 2 + call set_her_action("milk_breasts") + + her "*ah*... it's like the straps are massaging me while it sucks..." ("silly", "narrow", "base", "dead") + her "*mmmm*... it's amazing..." ("silly", "narrow", "annoyed", "up") + call nar(">Hermione lets the machine continue its work.") + + $ milking = 3 + call set_her_action("milk_breasts") + + her "*ah*... I think that's all of it, [genie_name]..." ("annoyed", "narrow", "worried", "down") + call nar(">You notice the amount of milk coming from hermione's breasts has almost stopped.") + gen "How was it?" ("base", xpos="far_left", ypos="head") + her "it felt amazing..." ("grin", "narrow", "annoyed", "up") + her "it even almost made me cum..." ("base", "narrow", "worried", "down") + her "but you can turn it off now..." ("angry", "wink", "base", "mid") + gen "Um..." ("base", xpos="far_left", ypos="head") + call nar(">The machine struggles to suck any more milk from hermione's heaving chest.") + gen "I'm not sure how... I think it only shuts off when it's full?" ("base", xpos="far_left", ypos="head") + her "well I don't think it's going to be able to get much more--" ("upset", "closed", "base", "mid") + call nar(">You hear the harness start to whir, like a vacuum cleaner caught on carpet.") + her "!!!" ("disgust", "wide", "worried", "shocked",cheeks="blush") + call nar(">You hear a strange click come from the harness.") + "*Zzzzkkk*" + + call cum_block + $ hermione_squirt = True + + her "Ah!!!" ("grin", "base", "angry", "up",cheeks="blush") + call nar(">You see a small squirt of milk come out of hermione's nipples.") + $ hermione_squirt = False + + call nar(">The cannister is still barely more than half full.") + "*Zzzzkkk*" + + call cum_block + $ hermione_squirt = True + + her "{size=+5}Ah!!!{/size}" ("silly", "narrow", "annoyed", "up") + call nar(">Another small squirt of milk comes out of hermione's nipples.") + $ hermione_squirt = False + + her "{size=+5}It's making me cum!{/size}" ("shock", "happyCl", "worried", "mid") + her "{size=+5}why is it-{/size}" ("open", "happyCl", "worried", "mid") + "*Zzzzkkk*" + + call cum_block + $ hermione_squirt = True + + her "{size=+5}{heart}{heart}{heart}{/size}" ("silly", "narrow", "base", "dead") + $ hermione_squirt = False + "*Zzzzkkk*" + + call cum_block + $ hermione_squirt = True + + her "{size=+5}{heart}{heart}{heart}{/size}" ("grin", "narrow", "annoyed", "up") + $ hermione_squirt = False + + hide hermione_main + call blkfade + + call nar(">The machine continues for another couple of minutes. Each crack is accompanied by a small squirt of milk into the cups...") + + $ milking = 4 + call set_her_action("milk_breasts") + pause.5 + call hide_blkfade + + her "..." ("open_wide_tongue", "narrow", "annoyed", "up") + call nar(">Hermione stands before you, unable to speak.") + gen "Oh um... twenty points to gryffindor!" ("base", xpos="far_left", ypos="head") + $ gryffindor += 20 + her "..." ("open_wide_tongue", "narrow", "annoyed", "up") + gen "And I'll be needing this back." ("base", xpos="far_left", ypos="head") + her "..." ("open_wide_tongue", "narrow", "annoyed", "up") + call blkfade + + call nar(">You slowly remove the milk filled harness. There are red marks, surrounding her tender-looking nipples, where the cups were.") + call set_her_action("none","skip_update") + $ hermione_breasts = "characters/hermione/body/breasts/breasts_expanded_xlarge.webp" + gen "Hmmm... maybe we overdid it a little today." ("base", xpos="far_left", ypos="head") + call hide_blkfade + + her "..." ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + gen "Why don't you head back to your room... I think you've earned a day off." ("base", xpos="far_left", ypos="head") + her "yes..." ("silly", "narrow", "base", "dead") + her "I'll go now..." ("silly", "narrow", "annoyed", "up") + gen "Maybe you should get dressed first..." ("base", xpos="far_left", ypos="head") + her "..." ("grin", "narrow", "annoyed", "up") + call blkfade + + call nar(">Hermione slowly dresses herself, fumbling at every point.") + + $ hermione_expand_breasts = True + call set_her_action("none", "update") #Resets clothing. + call hide_blkfade + + her "Goodbye, sir..." ("silly", "narrow", "base", "dead") + + else: # Futa version + gen "Well there was an extra ingredient in there..." ("base", xpos="far_left", ypos="head") + her "What? are my boobs going to get even bigger?" ("annoyed", "narrow", "angry", "R") + call nar(">Hermione jiggles her boobs side to side.") + her "I don't think I'd be able to stand!" ("annoyed", "narrow", "worried", "down") + gen "Your breasts shouldn't grow any bigger..." ("base", xpos="far_left", ypos="head") + her "Oh..." ("base", "narrow", "worried", "down") + gen "You may notice something else start to grow however." ("base", xpos="far_left", ypos="head") + her "What? Not cat ears again please..." ("annoyed", "narrow", "angry", "R") + gen "Don't worry, it's-- *uhm*... it's something else..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "wide", "base", "stare") + her "wait..." ("angry", "narrow", "base", "down") + her "you don't mean..." ("disgust", "narrow", "base", "down") + her "you wouldn't... would you?" ("annoyed", "narrow", "angry", "R") + gen "We'll just have to wait and see..." ("base", xpos="far_left", ypos="head") + her "You really are a disgusting pervert [genie_name]..." ("open", "narrow", "annoyed", "mid", cheeks="blush") + gen "Whatever you say..." ("base", xpos="far_left", ypos="head") + her "Please tell me I'm not going to grow a damn di--" ("angry", "narrow", "base", "down") + + hide hermione_main + $ hermione.strip("robe", "accessory") + call set_her_action("lift_skirt") + $ hermione_breasts = "characters/hermione/body/breasts/breasts_expanded_xlarge.webp" + show screen hermione_main + with d3 + pause.5 + + hide hermione_main + $ hermione.strip("bottom") + $ hermione.strip("panties") + call set_her_action("none","skip_update") + $ hermione_breasts = "characters/hermione/body/breasts/breasts_expanded_xlarge.webp" + show screen hermione_main + with d3 + pause.5 + + her "..." ("angry", "wide", "base", "stare") + + $ hermione_futa = True + + her "" ("shock", "narrow", "base", "down",trans=hpunch) + pause.8 + + her "You damn {size=+10}pervert!{/size}" ("shock", "happyCl", "worried", "mid",cheeks="blush") + gen "Woah! Nice..." ("grin", xpos="far_left", ypos="head") + her "Nice? How is this nice?" ("scream", "base", "angry", "mid",emote="angry") + her "I have a damn {size=+10}cock!{/size}" ("angry", "base", "angry", "mid",emote="angry") + gen "Come on [hermione_name]... where's your sense of adventure?" ("base", xpos="far_left", ypos="head") + her "Adventure?" ("annoyed", "narrow", "annoyed", "mid") + her "Going into the chamber of secrets was an adventure sir..." ("open", "squint", "base", "mid") + her "Standing in my headmaster's office while he makes me drink some random potion he probably found in the gutter--" ("scream", "closed", "angry", "mid") + her "-That makes me have huge, {size=+3}lactating{/size}, {size=+5}tits{/size} and a giant {size=+10}{b}DICK{/b}{/size} is {size=+2}not {size=+2}an {size=+4}adventure!{/size}" ("scream", "base", "angry", "mid",emote="angry") + gen "Don't forget about the magical milking machine..." ("base", xpos="far_left", ypos="head") + call nar(">You hand hermione the milking harness.") + gen "Surely this makes it an adventure..." ("base", xpos="far_left", ypos="head") + her "What do you expect me to do with this?" ("annoyed", "squint", "angry", "mid") + her "It's hardly going to be able to get rid of this {size=+10}DICK{/size} now is it." ("angry", "base", "angry", "mid") + gen "Actually, it should." ("base", xpos="far_left", ypos="head") + gen "(I hope it does anyway... Snape did say it was magic.)" ("base", xpos="far_left", ypos="head") + her "really?" ("annoyed", "narrow", "annoyed", "mid") + gen "Really, really." ("base", xpos="far_left", ypos="head") + her "Ugh, fine... (the stuff I put up with)" ("annoyed", "narrow", "angry", "R") + call nar(">hermione takes it from your hands and puts it on.") + her "Where's my stupid dick supposed to go..." ("angry", "base", "base", "mid") + her "It's in the way of the cannister." ("angry", "narrow", "base", "down") + gen "Try sticking it into the bottom of the cannister." ("base", xpos="far_left", ypos="head") + her "What... why would that--" ("annoyed", "narrow", "annoyed", "mid") + + $ milking = 1 + call set_her_action("milk_breasts") + + her "!!!" ("silly", "narrow", "base", "dead") + gen "how's that?" ("base", xpos="far_left", ypos="head") + her "I'm sorry about being angry before [genie_name]..." ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + her "I didn't know it would feel like this..." ("grin", "narrow", "annoyed", "up") + gen "like what?" ("base", xpos="far_left", ypos="head") + her "It's so fricking good..." ("silly", "narrow", "annoyed", "up") + her "I never though sex could be like this..." ("silly", "narrow", "base", "dead") + her "being inside something..." ("silly", "narrow", "annoyed", "up") + her "It's the best!" ("grin", "narrow", "annoyed", "up") + her "At this rate I'll cum before we even have to turn the thing on--" ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + call nar(">You hear a faint noise as the harness on Hermione's chest springs to life.") + + $ milking = 2 + call set_her_action("milk_breasts") + + her "!!!" ("grin", "narrow", "base", "dead") + her "no!" ("clench", "base", "worried", "mid", cheeks="blush",tears="soft") + her "Stop it!" ("angry", "squint", "base", "mid",cheeks="blush") + her "{size=+5}I'm serious!!!{/size}" ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + her "{size=+10}It's too much... TURN it off!!!{/size}" ("scream", "wide", "base", "stare") + gen "What's wrong?" ("base", xpos="far_left", ypos="head") + her "*ah*... it's sucking {b}everything{/b}..." ("silly", "narrow", "annoyed", "up") + her "*ah*... and the milk is splashing on my {heart}dick{heart}......" ("grin", "narrow", "annoyed", "up") + gen "is it hurting you?" ("base", xpos="far_left", ypos="head") + her "*ah*.... no... It's just too good...{heart}" ("grin", "narrow", "base", "dead") + + $ milking = 3 + call set_her_action("milk_breasts") + + her "*ah*...{heart}{heart}{heart}" ("silly", "narrow", "base", "dead") + call nar(">You notice the canister in front of her fill with milk at an alarming rate...") + her "*ah*... please [genie_name]..." ("angry", "squint", "base", "mid",cheeks="blush") + her "*ah*... you have to turn it off..." ("shock", "narrow", "base", "down",cheeks="blush",tears="crying") + her "{size=-2}i'll {size=-2}go {size=-2}insane {size=-2}if {size=-2}you {size=-2}don't...{/size}" ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + + $ milking = 4 + call set_her_action("milk_breasts") + + call nar(">You notice the cannister fill, yet the machine keeps working.") + her "What? but it's full..." ("annoyed", "narrow", "worried", "down") + her "it should turn off..." ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + her "please... let it turn off..." ("angry", "squint", "base", "mid",cheeks="blush",tears="messy") + gen "(What did snape say again? untellable extension ham?)" ("base", xpos="far_left", ypos="head") + gen "Well i should have mentioned something about that cannister being extended invisibly..." ("base", xpos="far_left", ypos="head") + her "Did you put an undetectable extension charm on this cannister?" ("open", "wide", "worried", "stare",cheeks="blush",tears="messy") + her "{size=+5}did you?!{/size}" ("scream", "squint", "base", "mid",cheeks="blush",tears="messy") + gen "Possibly." ("base", xpos="far_left", ypos="head") + her "no..." ("scream", "happyCl", "worried", "mid",cheeks="blush",tears="messy") + call nar(">Hermione takes a look at the full milk cannister.") + her "Will it ever stop?" ("shock", "narrow", "base", "down",cheeks="blush",tears="crying") + gen "*ahhhh*..." ("base", xpos="far_left", ypos="head") + her "!!!" ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + her "ugh... {heart}it's so{heart} gooood..." ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + + $ hermione_dribble = True + her "*ah*... the straps are massaging me while it sucks my dick..." ("silly", "narrow", "annoyed", "up") + her "*mmmm*... it's amazing...{heart}{heart}" ("grin", "narrow", "annoyed", "up") + call nar(">Hermione lets the machine continue its work.") + her "..." ("open_wide_tongue", "narrow", "annoyed", "up") + call nar(">You notice the amount of milk coming from hermione's breasts has almost stopped.") + her "it feels amazing..." ("grin", "narrow", "annoyed", "up") + her "it's made me cum so much..." ("silly", "narrow", "annoyed", "up") + call nar(">The machine struggles to suck any more milk from hermione's heaving chest.") + gen "Well hopefully it has a safety mechanism for when you're out of milk..." ("base", xpos="far_left", ypos="head") + her "well that should be soon--" ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + call nar(">You hear the harness start to whir, like a vacuum cleaner caught on carpet.") + her "!!!" ("angry", "wide", "base", "stare") + call nar(">You hear a strange click come from the harness.") + "*Zzzzkkk*" + + call cum_block + $ hermione_squirt = True + + her "{size=+15}!!!{heart}{heart}{heart}!!!{/size}" ("grin", "narrow", "base", "dead") + call nar(">You see a small squirt of milk come out of hermione's nipples.") + $ hermione_squirt = False + + call nar(">The cannister still looks completely full.") + "*Zzzzkkk*" + + call cum_block + $ hermione_squirt = True + + her "{size=+5}{heart}{heart}{heart}{/size}" ("grin", "narrow", "base", "dead") + call nar(">Another small squirt of milk comes out of hermione's nipples.") + $ hermione_squirt = False + + her "{size=+5}It's making me cum so {b}hard{/b}...{/size}" ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + her "{size=+5}why is it-{/size}" ("shock", "base", "base", "R",cheeks="blush",tears="soft") + "*Zzzzkkk*" + + call cum_block + $ hermione_squirt = True + + her "{size=+5}{heart}{heart}{heart}{/size}" ("grin", "narrow", "annoyed", "up") + $ hermione_squirt = False + + "*Zzzzkkk*" + + call cum_block + $ hermione_squirt = True + + her "{size=+5}{heart}{heart}{heart}{/size}" ("silly", "narrow", "annoyed", "up") + $ hermione_squirt = False + call blkfade + + call nar(">The machine continues for another couple of minutes. Each crack is accompanied by a small squirt of milk into the cups and a pulse of her cock into the cannister...") + + $ milking = 4 + call set_her_action("milk_breasts") + call nar(">You let it continue for a little longer before it finally stops.") + call hide_blkfade + + her "{size=-10}t-turn it...{/size}" ("angry", "squint", "base", "mid",cheeks="blush") + call nar(">Hermione stands before you, barely able to speak.") + her "{size=-8}t-turn it...{/size}" ("angry", "squint", "base", "mid",cheeks="blush") + her "{size=-6}t-turn it...{/size}" ("angry", "squint", "base", "mid",cheeks="blush") + her "{size=-4}t-turn it... up...{/size}" ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + gen "I think you've had enough... twenty points to gryffindor!" ("base", xpos="far_left", ypos="head") + $ gryffindor += 20 + + her "..." ("angry", "squint", "base", "mid",cheeks="blush") + call nar(">And I'll be needing this back.") + her "..." ("shock", "narrow", "base", "down",cheeks="blush",tears="crying") + call blkfade + + call nar(">You slowly remove the milk filled harness. There are red marks, surrounding her tender-looking nipples, where the cups were.") + call set_her_action("none","skip_update") + + $ hermione_futa = False + $ hermione_dribble = False + + call nar(">As you pull the heavy cannister off her cock it flops down before wilting away into nothingness.") + gen "(eww...)" ("base", xpos="far_left", ypos="head") + gen "Hmmm, I think you probably overdid it a little today." ("base", xpos="far_left", ypos="head") + call hide_blkfade + + her "{size=-6}more...{/size}" ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + gen "Why don't you head back to your room... I think you've earned another day off." ("base", xpos="far_left", ypos="head") + her "yes..." ("angry", "squint", "base", "mid",cheeks="blush") + her "I'll go now..." ("shock", "narrow", "base", "down",cheeks="blush",tears="crying") + gen "Maybe you should get dressed first..." ("base", xpos="far_left", ypos="head") + her "..." ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + + call blkfade + call nar(">Hermione slowly dresses herself, fumbling at every point.") + + $ hermione_expand_breasts = True + call set_her_action("none", "update") #Resets clothes. + call hide_blkfade + + her "goodbye sir..." ("shock", "narrow", "base", "down",cheeks="blush",tears="crying") + + call her_walk(action="leave") + + $ milking = 0 + + $ hermione_busy = True + + $ hermione_expand_breasts = True + + if potion_version == 3: + if hermione_perm_expand_breasts: + $ hermione_perm_expand_breasts = False + call nar(">Hermione's permanent breast enlargement has been undone thanks to Snape's added ingredient.") + else: + $ hermione_perm_expand_breasts = True + call nar(">Hermione's breasts will now be permanently large thanks to Snape's added ingredient.","start") + call nar(">However, making her take the potion again will undo the permanent effect...","end") + + jump main_room + + +# First milking potion scene return event +label potion_scene_11_1_2: + $ her_milk_potion_return = False + + call her_walk(action="enter", xpos="desk", ypos="base") + + $ hermione_wet_clothes = True + + her "Professor! why didn't you warn me about this!" ("angry", "base", "angry", "mid", xpos="right", ypos="base") + + gen "About what? I told you your breasts would expand." ("base", xpos="far_left", ypos="head") + her "Look at my shirt!" ("angry", "base", "angry", "mid",emote="angry") + gen "Hmmm, seems like you had a bit of an accident." ("base", xpos="far_left", ypos="head") + her "An accident?" ("open", "squint", "base", "mid") + her "I've been leaking milk all day!" ("scream", "base", "angry", "mid",emote="angry") + gen "It doesn't seem that bad..." ("base", xpos="far_left", ypos="head") + her "This is the third shirt that I've had to wear today!" ("open", "closed", "angry", "mid") + her "All the others are soaked through!" ("angry", "base", "angry", "mid") + her "Even my vest is soaked..." ("annoyed", "squint", "angry", "mid") + gen "Well I did offer to relieve your issue..." ("base", xpos="far_left", ypos="head") + her "by milking me like some sort of... animal!" ("angry", "base", "angry", "mid") + her "I'm upset you'd even think that would be a possibility." ("angry", "narrow", "annoyed", "mid", emote="angry") + gen "Well it would have solved your \"problem\"." ("base", xpos="far_left", ypos="head") + her "..." ("open", "squint", "base", "mid") + her "Well I expect to be paid extra after this humiliation." ("annoyed", "narrow", "annoyed", "mid") + gen "how much?" ("base", xpos="far_left", ypos="head") + her "Thirty points." ("annoyed", "base", "angry", "mid") + gen "Fine, thirty points to gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 30 + her "*hmph*" ("annoyed", "narrow", "annoyed", "mid") + her "So when are these \"things\" going to go away? Or do I have to go get one of the nurses to shrink them?" ("angry", "narrow", "annoyed", "mid", emote="angry") + gen "They should go back to normal Sometime tonight." ("base", xpos="far_left", ypos="head") + her "good..." ("open", "squint", "base", "mid") + her "but don't think I've forgiven you!" ("open", "closed", "angry", "mid") + call nar(">Hermione storms out in a huff.") + + call her_walk(action="leave") + + call bld + gen "(bitches... you'd think she'd be happy to get some {size=+5}big kahunas{/size} for free!)" ("base", xpos="far_left", ypos="head") + + $ her_mood += 10 + + $ hermione_wet_clothes = False + + $ hermione_busy = True + jump main_room + + #comes back after class + #shirt covered in milk stains + #furious at genie + #Genie responds saying he should have let him milk her + #Hermione is angry again at him for suggesting it + #demands more points + #asks when they're going to go away + #genie says she has to get the milk out of them + #offers to milk her again + #refuses and says she can take care of it herself + #leaves + +#label potion_scene_11_2_2: + #Milking potion part 2 night time + #comes back after class + #breasts still expanded + #genie asks her how her day was + #She had a good day + #Appreciates the attention from everyone + #Milking prevented her from leaking + #Says she wouldn't mind taking the potion again some time diff --git a/game/scripts/inventory/potions/misc_potion.txt b/game/scripts/inventory/potions/misc_potion.txt new file mode 100644 index 00000000..81e68eaa --- /dev/null +++ b/game/scripts/inventory/potions/misc_potion.txt @@ -0,0 +1,18 @@ +###POTION SCENES + +#label potion_scene_10: #Time stop potion +# gen "Do you ever feel conflicted about what we do in here [hermione_name]?" ("base", xpos="far_left", ypos="head") + + #Paralyze/time stop Hermione + #Have genie molest her + #Have options to molest breast/ass/pussy (required to do all 3) + #Have her resume time and lose her mind from the cumulative amount of pleasure she felt + #Have genie carry her back to her dorm in a semi-conscious state. + + + +# call her_walk(action="leave") + +# $ hermione_busy = True + +# jump main_room diff --git a/game/scripts/inventory/potions/polyjuice_potion.txt b/game/scripts/inventory/potions/polyjuice_potion.txt new file mode 100644 index 00000000..6ead375b --- /dev/null +++ b/game/scripts/inventory/potions/polyjuice_potion.txt @@ -0,0 +1,853 @@ +#TODO Fix posing/positioning and CG in polyjuice events +#All scenes (cat/Luna) needs posing, add ending where it fails, whoring level requirements. +#Character is incorectly positioned in some segments (infront of textbox) - done +#The image segment changing when she swallows looks a bit weird + +# Cat polyjuice start +label potion_scene_1_1_1: + # Genie is trying to transform her into another girl, but... + gen "[hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base", "base", "base", "mid") + if not her_potions_drunk: + gen "So, are you ready to try out one of my potions?" ("base", xpos="far_left", ypos="head") + her "As ready as I'll ever be..." + gen "great!" ("base", xpos="far_left", ypos="head") + gen "I have this potion for you to try out." ("base", xpos="far_left", ypos="head") + else: + gen "I have another potion for you to try out today..." ("base", xpos="far_left", ypos="head") + if "polyjuice" in her_potions_drunk: + her "Is this another polyjuice potion?" + gen "...{w}no?" ("base", xpos="far_left", ypos="head") + if her_whoring < 12: + her "I'm not drinking another one... I remember what happened last time." + gen "(Damn, looks like she wont be as keen now that she knows what she's drinking...)" ("base", xpos="far_left", ypos="head") + jump hermione_requests + else: + her "You're lying..." + her "Do I have to?" + gen "You don't have to do anything [hermione_name]..." ("base", xpos="far_left", ypos="head") + gen "But if you do decide to, it would make me very happy..." ("base", xpos="far_left", ypos="head") + her "..." + gen "And there's some points in it for you as well..." ("base", xpos="far_left", ypos="head") + else: + if her_whoring >= 12: + her "If it makes you happy, [genie_name]." ("smile", "base", "base", "mid") + her "..." ("annoyed", "narrow", "base", "down") + elif her_whoring >= 6: + her "And what kind of potion is it? It looks gross..." ("normal", "squint", "angry", "mid") + gen "Well, wouldn't it spoil half the enjoyment of it if I told you?" ("base", xpos="far_left", ypos="head") + her "Depends whose enjoyment you're talking about..." ("open", "squint", "base", "mid") + gen "Twenty points." ("base", xpos="far_left", ypos="head") + her "Hmmm, can't you tell me what kind of potion it is?" ("annoyed", "squint", "base", "mid") + her "Polyjuice? Amortentia? Babbling Beverage? Felix Felicis?" ("grin", "happyCl", "worried", "mid",emote="sweat") + gen "That's going to have to stay a secret [hermione_name]." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "worried", "down") + gen "Well [hermione_name], what do you say? Will you drink a harmless little potion?" ("base", xpos="far_left", ypos="head") + gen "For Gryffindor?" ("base", xpos="far_left", ypos="head") + her "Fine..." ("open", "closed", "base", "mid") + else: #Fail + her "And what kind of potion is it? It looks gross..." ("normal", "squint", "angry", "mid") + gen "Well, wouldn't it spoil half the enjoyment of it if I told you?" ("base", xpos="far_left", ypos="head") + her "I'm not going to drink some random potion for your amusement." + gen "There's some points in it for you of course." ("base", xpos="far_left", ypos="head") + her "..." + her "No thanks..." + jump hermione_requests + + $ renpy.sound.play("sounds/sniff.ogg") + call nar(">Hermione takes a whiff of the thick potion.") + her "It smells disgusting. Like mud and wet dog fur." ("disgust", "slit", "low", "stare") + her "Do I really have to drink this?" ("open", "base", "worried", "mid") + gen "You do. I suggest holding your nose if the smell is too much." ("base", xpos="far_left", ypos="head") + her "For Gryffindor." ("mad", "happyCl", "worried", "mid",tears="soft_blink") + + hide hermione_main + with d3 + pause.2 + + $ renpy.sound.play("sounds/gulp.ogg") + call her_chibi("drink_potion","mid","base") + pause 2 + call nar(">She downs the thick potion.") + pause.5 + call her_chibi("stand","mid","base") + pause.2 + her "Blehgh." ("disgust", "slit", "low", "stare") + gen "Well done." ("base", xpos="far_left", ypos="head") + + if "polyjuice" in her_potions_drunk: + her "Here we go again I suppose..." + her "Nothing's happening..." + gen "You'll just have to wait a minute remember?" ("base", xpos="far_left", ypos="head") + her "In that case I'll be back after class..." + her "Can't wait for the effects to kick in... it was bad enough the first time..." + gen "I'm sure another extra ten points should make it worth it, [hermione_name], thirty points to Gryffindor." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]." ("base", "base", "base", "mid") + call nar(">Hermione heads off to class.") + $ gryffindor += 30 + else: + her "Now will you at least tell me what this potion does?" ("angry", "base", "base", "mid",tears="soft") + gen "It should be noticeable any second now..." ("base", xpos="far_left", ypos="head") + her "Well? Is it supposed to make my breasts bigger? They don't feel any bigger." ("annoyed", "narrow", "worried", "down") + gen "No. Hmmmm, it mustn't have worked." ("base", xpos="far_left", ypos="head") + her "What was it supposed to do?" ("annoyed", "narrow", "annoyed", "up") + gen "There's no point in telling you now. It was going to be a surprise." ("base", xpos="far_left", ypos="head") + her "Is that all [genie_name]?" ("soft", "base", "base", "mid") + gen "Yes, [hermione_name], twenty points to Gryffindor." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]." ("base", "base", "base", "mid") + call nar(">Hermione heads off to class.") + $ gryffindor += 20 + + call her_walk(action="leave") + + #TODO Fix: setting cat appearance + # Equip cat ears + $ h_ears = "cat_ears" + $ h_request_wear_ears = True + $ hermione_wear_ears = True + call update_her_uniform + + # Note: potion drinking flags are set in the return event + + $ her_cat_polyjuice_return = True + $ hermione_busy = True + + jump main_room + +# Cat polyjuice return event +label potion_scene_1_1_2: + $ her_cat_polyjuice_return = False + call her_walk(action="enter", xpos="mid", ypos="base") + + her "How could you do this to me [genie_name]?" ("angry", "base", "angry", "mid", xpos="mid", ypos="base", trans=hpunch) + her "Try and turn me into a cat!" + her "In the middle of class!" ("annoyed", "base", "worried", "R") + gen "I didn't try and turn you into a cat [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Then why do I have ears and a tail?" ("scream", "closed", "angry", "mid") + gen "I have no idea. The potion I gave you was supposed to turn you into a different girl." ("base", xpos="far_left", ypos="head") + her "What!? You didn't use polyjuice potion did you [genie_name]?" ("shock", "wide", "base", "stare") + gen "What's that?" ("base", xpos="far_left", ypos="head") + her "There's no point playing dumb [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + her "Well at least I know that it will wear off by morning." ("annoyed", "narrow", "angry", "R") + + if her_whoring >= 17: + call her_walk("door") + "You see Hermione reaching for the door knob but an idea strikes you." + menu: + "-Make her suck you off-": + gen "Wait, [hermione_name]!" ("base", xpos="far_left", ypos="head") + call her_chibi("stand","door",flip=False) + with d3 + her ".......?" + call her_walk("desk") + her "What is it, [genie_name]?" ("upset", "base", "angry", "mid") + her "Haven't you humiliated me enough?" ("annoyed", "closed", "base", "mid") + her "" ("annoyed", "base", "base", "R") + gen "Would you like to earn seventy-five additional points?" ("base", xpos="far_left", ypos="head") + her "Seventy-five points? How?" ("annoyed", "squint", "base", "mid") + + gen "By sucking my cock, obviously." ("grin", xpos="far_left", ypos="head") + her "Right now? I look like a cat! Why would you ask me at a time like this?" ("angry", "wide", "base", "stare") + her "You're not some sort of pervert who likes animals are you?" ("angry", "base", "base", "mid") + gen "Of course not, I just think that you have a very unique look at the moment and that it would be a shame not to do anything with it." ("base", xpos="far_left", ypos="head") + her "Fine, just promise me you aren't going to do anything weird." ("upset", "closed", "base", "mid") + gen "I promise. Now, kneel." ("base", xpos="far_left", ypos="head") + + #Fade to black + show screen blkfade with d3 + pause.5 + ">Hermione walks over and kneels before you." + + show screen chair_left + call her_chibi_scene("bj_pause") + hide hermione_main + hide screen blkfade + with d5 + + gen "Good girl." ("base", xpos="far_left", ypos="head") + gen "Now open wide." ("base", xpos="far_left", ypos="head") + her "..." ("open_wide_tongue", "base", "base", "mid") + call her_chibi_scene("bj") + + ">Hermione takes you into her mouth" + hide hermione_main + call ctc + gen "Good god what is with your tongue?! It feels like velcro." ("base", xpos="far_left", ypos="head") + her "*Slurp?*" + + call her_chibi_scene("bj_pause") + + her "It's because of your stupid potion, it made my tongue all rough." ("open_wide_tongue", "base", "angry", "mid") + her "Do you want to stop?" ("grin", "base", "base", "R") + hide hermione_main + gen "No, keep going, just try not to focus on the tongue work too much." ("base", xpos="far_left", ypos="head") + her "Okay, [genie_name]." ("annoyed", "narrow", "angry", "R") + hide hermione_main + + call her_chibi_scene("bj") + + call nar(">Hermione swallows your cock again, taking care not to apply too much pressure with her tongue.") #start sucking scene. might insert more sucking noises for a little while or add pauses + gen "So...{w=1.0} did you attend all your classes today?" ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("bj_pause") + + her "Of course [genie_name]." ("base", "narrow", "base", "mid_soft") + + hide hermione_main + call her_chibi_scene("bj") + + gen "Even looking like this?" ("base", xpos="far_left", ypos="head") + gen "What would everyone have thought? Would they just assume that you were a victim of a prank?" ("base", xpos="far_left", ypos="head") + gen "Or would they think that slutty little Miss Granger was just begging for attention again." ("base", xpos="far_left", ypos="head") + gen "Wearing skimpy outfits and trying to look like a pussycat." ("base", xpos="far_left", ypos="head") + call nar(">You try to place your hand on the back of her head but her new ears are in the way.") + gen "These are quite soft." ("base", xpos="far_left", ypos="head") + call nar(">You start feeling and petting her brand new ears.","start") + call nar(">Hermione starts purring involuntarily..","end") + # + # Add a purr sound? :D + # + pause 1.0 + gen "Oh good heavens!" ("angry", xpos="far_left", ypos="head") + gen "It's like your whole mouth has become a vibrator." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause") + her "I can't help it [genie_name], when someone touches my ears I just purr." ("base", "happyCl", "base", "mid") + hide hermione_main + gen "It feels amazing, now cock back in the mouth girl." ("base", xpos="far_left", ypos="head") + her "Yes [genie_name]." ("smile", "happyCl", "base", "mid",emote="happy") + call her_chibi_scene("bj") + hide hermione_main + with d3 + call nar(">You immediately put your hands back on her ears and start stroking them as she sucks you off.") + her "*Slurp!* *Purr* *Slurp!*" + gen "Oh god yes. This is Fantastic." ("base", xpos="far_left", ypos="head") + her "*Purr* *Slurp!* *Purr*" + gen "Get ready girl... Here it comes." ("base", xpos="far_left", ypos="head") + her "*Purr* *Purr* *Purr*" + call nar(">You grab her ears and pull her head into you causing the tip of your cock to rest in her vibrating throat.") + gen "{size=+10}ARGH!!!!!!!!!!!!!!!!{/size}" ("angry", xpos="far_left", ypos="head") + + call her_chibi_scene("bj_cum_in") + call cum_block + her "*Purr* *Purr* *Purr*" + call nar(">You shoot you load directly down her throat.") + call ctc + + with d3 + her "" ("full_cum", "narrow", "base", "dead") + pause .1 + her "*gulp* *Purr* *Purr*" ("cum", "happyCl", "worried", "mid") + her "" ("full_cum", "narrow", "base", "dead") + pause .1 + her "*gulp* *Purr* *gulp*" ("cum", "happyCl", "worried", "mid") + her "" ("full_cum", "narrow", "base", "dead") + pause .1 + her "*Purr* *gulp* *gulp*" ("cum", "happyCl", "worried", "mid") + + call her_chibi_scene("bj_pause") + call nar(">You pull your cock out of her purring mouth.") + her "Mmmmm, it might be this potion but that tasted good..." ("base", "narrow", "base", "mid_soft") + hide hermione_main + gen "Well, you certainly earned your seventy-five points." ("base", xpos="far_left", ypos="head") + $ gryffindor += 75 + with d3 + her "Thank you [genie_name]. Will that be all?" ("base", "narrow", "base", "up") + gen "One last thing." ("base", xpos="far_left", ypos="head") + gen "Who's a good girl?" ("base", xpos="far_left", ypos="head") + her ".........." ("annoyed", "base", "worried", "R") + her "I am..." ("smile", "base", "base", "R") + + show screen blkfade with d3 + + call hide_characters + call her_chibi(xpos="desk") + call gen_chibi("sit_behind_desk") + + hide screen blkfade + with d5 + pause 1.0 + "-Let her go-": + gen "Maybe next time.." ("base", xpos="far_left", ypos="head") + #TODO Fix: Chibi flips and walks when choosing this option, it should just exit the room + + call her_walk(action="leave") + + # Unequip cat ears + $ h_ears = "blank" + $ h_request_wear_ears = False + $ hermione_wear_ears = False + call update_her_uniform + + # Set flags + $ her_potions_drunk.add("polyjuice") + $ her_potions_drunk.add("cat_polyjuice") + + $ hermione_busy = True + jump main_room + +# Alternative cat polyjuice return scene, not used +#TODO This event needs to be checked before/if it is going to be used again +label potion_scene_1_1_2_alt: + $ her_cat_polyjuice_return = False + + call her_walk(action="enter", xpos="mid", ypos="base") + + if "cat_polyjuice" in her_potions_drunk: + her "I can't believe you had me drink this again..." + gen "What's the problem? I think you look cute..." ("base", xpos="far_left", ypos="head") + if her_whoring < 6: + her "The problem?" + her "People kept making fun of me and pulling my tail!" + gen "And how did that make you feel?" ("base", xpos="far_left", ypos="head") + her "Humiliated!" + her "They kept asking if I was a good kitty and if I wanted scratches..." + her "And you know the worst thing?" + gen "What?" ("base", xpos="far_left", ypos="head") + her "The darn potion sort of made me want scratches..." + gen "I see...{w} then we at least learnt something new here today." ("base", xpos="far_left", ypos="head") + else: + her "My class members had very similar thoughts..." + her "One of the boys were entranced by the motion of my tail..." + her "It seemed to have its own mind..." + gen "And how did that make you feel?" ("base", xpos="far_left", ypos="head") + her "I'm not sure..." + else: + her "How could you do this to me [genie_name]?" ("angry", "base", "angry", "mid", xpos="mid", ypos="base", trans=hpunch) + her "Try and turn me into a cat!" + her "In the middle of class!" ("annoyed", "base", "worried", "R") + gen "I didn't try and turn you into a cat [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Then why do I have ears and a tail?" ("scream", "closed", "angry", "mid") + gen "I have no idea. The potion I gave you was supposed to turn you into a different girl." ("base", xpos="far_left", ypos="head") + her "What!? You didn't use polyjuice potion did you [genie_name]?" ("shock", "wide", "base", "stare") + gen "What's that?" ("base", xpos="far_left", ypos="head") + her "There's no point playing dumb [genie_name]." ("annoyed", "narrow", "annoyed", "mid") + her "Well at least I know that it will wear off by morning." ("annoyed", "narrow", "angry", "R") + + menu: + "-Let her go-": + gen "Goodnight [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Goodnight [genie_name]." ("upset", "closed", "base", "mid") + + call her_walk(action="leave") + + $ h_request_wear_ears = False + $ hermione_wear_ears = False + call update_her_uniform + + # Set flags + $ her_potions_drunk.add("polyjuice") + $ her_potions_drunk.add("cat_polyjuice") + + $ hermione_busy = True + + jump main_room + + "-Make her suck you off-" if her_whoring >= 17: + pass + + gen "Wait [hermione_name], how would you like to earn seventy-five additional points?" ("base", xpos="far_left", ypos="head") + her "Seventy-five points? How?" ("annoyed", "squint", "base", "mid") + gen "By sucking my cock." ("base", xpos="far_left", ypos="head") + if "cat_polyjuice" in her_potions_drunk: + her "Again?" + her "I thought you found my tongue way to rough in this state?" + gen "Well, the purring certainly made well up for that aspect." ("base", xpos="far_left", ypos="head") + her "Okay then..." + else: + her "Like this? I look like a cat! Why would you ask me at a time like this?" ("angry", "wide", "base", "stare") + her "You're not some sort of pervert who likes animals are you?" ("angry", "base", "base", "mid") + gen "Of course not, I just think that you have a very unique look at the moment and that it would be a shame not to do anything with it." ("base", xpos="far_left", ypos="head") + her "Fine, just promise me you aren't going to do anything weird." ("upset", "closed", "base", "mid") + gen "I promise. Now, kneel." ("base", xpos="far_left", ypos="head") + call blkfade + pause.5 + + ">Hermione walks over and kneels before you." + call her_chibi_scene("bj_pause") + gen "Good girl." ("base", xpos="far_left", ypos="head") + her "..." ("open_wide_tongue", "base", "base", "mid") + ">Hermione takes you into her mouth" + hide hermione_main + + show screen chair_left + call her_chibi_scene("bj") + + hide screen blkfade + hide screen blktone + hide screen bld1 + with fade + call ctc + + if "cat_polyjuice" in her_potions_drunk: + call bld + her "*Lick*" + gen "There's that tongue again...{w} could you try using your throat a bit more?" ("base", xpos="far_left", ypos="head") + her "*Slurp*" #annoyed eyes + call her_chibi_scene("bj_pause") + with d3 + her "You sure you want me to continue?" + gen "Yes!" ("base", xpos="far_left", ypos="head") + + else: + call bld + gen "Good god what is with your tongue?! It feels like velcro." ("base", xpos="far_left", ypos="head") + her "*Slurp?*" + call her_chibi_scene("bj_pause") + with d3 + her "It's because of your stupid potion, it's made my tongue all rough." ("open_wide_tongue", "base", "angry", "mid") + her "Do you want to stop?" ("grin", "base", "base", "R") + hide hermione_main + gen "No, keep going, just try not to focus on the tongue work too much." ("base", xpos="far_left", ypos="head") + + her "Of course [genie_name]." ("annoyed", "narrow", "angry", "R") + hide hermione_main + call her_chibi_scene("bj") + with d3 + + call nar(">Hermione swallows your cock again, taking care\nnot to apply too much pressure with her tongue.") #start sucking scene. might insert more sucking noises for a little while or add pauses + gen "So you still went to all your classes?" ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause") + with d3 + her "Of course [genie_name]." ("base", "narrow", "base", "mid_soft") + hide hermione_main + call her_chibi_scene("bj") + with d3 + gen "Even looking like this?" ("base", xpos="far_left", ypos="head") ###start sucking + if "cat_polyjuice" in her_potions_drunk: + her "You had me do it before... at least I knew what to expect this time..." + gen "Slutty little Miss Granger... begging for attention..." ("base", xpos="far_left", ypos="head") + gen "making herself look like a cat for attention..." ("base", xpos="far_left", ypos="head") + call nar(">You place your hands on her ears once again and give them a soft patting.","start") + call nar(">Hermione starts purring as her pupils expands looking into yours.","end") + gen "There it is!" ("base", xpos="far_left", ypos="head") + gen "Keep going girl, this feels amazing..." ("base", xpos="far_left", ypos="head") + call nar(">You momentarily stop patting her as you close your eyes with pleasure.") + gen "Don't stop!" ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause") + with d3 + her "You stopped patting me!" + gen "Oh, sorry..." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj") + with d3 + hide hermione_main + with d3 + call nar(">You gently stroke the back of Hermiones ears as she begins purring once again.") + + else: + gen "What would everyone have thought? Would they just assume that you were under an evil slytherin spell?" ("base", xpos="far_left", ypos="head") + gen "Or would they just think that slutty little Miss Granger was just begging for attention again." ("base", xpos="far_left", ypos="head") + gen "Wearing skimpy outfits and trying to look like a cat." ("base", xpos="far_left", ypos="head") + call nar(">You go to place your hand on the back of her head but her new ears block the way.") + gen "These are quite soft." ("base", xpos="far_left", ypos="head") + call nar(">You start feeling and patting the ears.","start") + call nar(">Hermione starts involuntary purring","end") + gen "Oh good heavens!" ("base", xpos="far_left", ypos="head") + gen "It's like your whole mouth has become a vibrator." ("base", xpos="far_left", ypos="head") + call her_chibi_scene("bj_pause") + with d3 + her "I can't help it [genie_name], whenever \nanything touches my ears I just purr." ("base", "happyCl", "base", "mid") + hide hermione_main + gen "It feels amazing, now cock back in the mouth girl." ("base", xpos="far_left", ypos="head") + her "Yes [genie_name]." ("smile", "happyCl", "base", "mid",emote="happy") + call her_chibi_scene("bj") + with d3 + hide hermione_main + with d3 + call nar(">You immediately put your hands back on her ears and start stroking them as she sucks you.")### start sucking + + her "*Slurp!* *Purr* *Slurp!*" + gen "Oh god yes. This is Fantastic." ("base", xpos="far_left", ypos="head") + her "*Purr* *Slurp!* *Purr*" + gen "Get ready girl... Here it comes." ("base", xpos="far_left", ypos="head") + her "*Purr* *Purr* *Purr*" + call nar(">You grab her ears and pull her head into you causing the tip of your cock to rest on her purring throat.") #show genie climax scene + gen "{size=+10}ARGH!!!!!!!!!!!!!!!!{/size}" ("angry", xpos="far_left", ypos="head") + her "*Purr* *Purr* *Purr*" + call nar(">You shoot you load directly down her throat.") + call ctc + + #This scene looks a bit weird + call her_chibi_scene("bj_cum_in") + with d3 + her "" ("full_cum", "narrow", "base", "dead") + pause .1 + her "*gulp* *Purr* *Purr*" ("cum", "happyCl", "worried", "mid") + her "" ("full_cum", "narrow", "base", "dead") + pause .1 + her "*gulp* *Purr* *gulp*" ("cum", "happyCl", "worried", "mid") + her "" ("full_cum", "narrow", "base", "dead") + pause .1 + her "*Purr* *gulp* *gulp*" ("cum", "happyCl", "worried", "mid") + call nar(">You pull your cock out of her purring mouth.") + call her_chibi_scene("bj_pause") + with d3 + her "Mmmmm, it might be this potion but that tasted \ngood..." ("base", "narrow", "base", "mid_soft") + hide hermione_main + with d3 + gen "Well, you certainly earned your seventy-five points." ("base", xpos="far_left", ypos="head") + $ gryffindor += 75 + + her "Thank you [genie_name]. Will that be all." ("base", "narrow", "base", "up") + gen "One last thing." ("base", xpos="far_left", ypos="head") + gen "Who's a good girl?" ("base", xpos="far_left", ypos="head") + her ".........." ("annoyed", "base", "worried", "R") + her "I am..." ("smile", "base", "base", "R") + + call hide_characters + call her_chibi("hide") + call gen_chibi("sit_behind_desk") + hide screen bld1 + hide screen blktone + with fade + + $ her_cat_polyjuice_return = False #Triggers Hermione return + $ hermione_wear_ears = False + call update_her_uniform + + $ hermione_busy = True + + jump main_room + + #Tick that adds that she has drunk any sort of polyjuice potion so she will now recognize it. + +# Luna transformation +label potion_scene_1_2: + #TODO Some of Hermione's lines still need posing + gen "Might I offer you a drink?" ("base", xpos="far_left", ypos="head") + her "You're not trying to get me drunk on Butterbeer again are you?" ("normal", "base", "base", "mid",xpos="right",ypos="base") + gen "Nothing of the sort, just a harmless little potion." ("base", xpos="far_left", ypos="head") + call nar(">You hand her the potion bottle.") + + if not her_potions_drunk: + her "I can't believe you're making me drink random potions..." + else: + her "Another of your mysterious potions?" ("open", "squint", "base", "mid") + + if "polyjuice" in her_potions_drunk: + her "Yuck... another polyjuice potion..." + her "Do I really have to drink it again?" + gen "If you'd like to continue our favour trading it would certainly be in your best interest [hermione_name]." ("base", xpos="far_left", ypos="head") + her "..." + her "Can you at least tell me what you've put in it?" + gen "What's the fun in that? You're going to have to drink it and find out..." ("base", xpos="far_left", ypos="head") + if her_whoring <= 12: + her "I'm not going to drink it again, especially since I have no idea who... or what it might turn me into." + her "You know what... I think I'd better leave." + call her_walk(action="leave") + $ her_mood += 10 + $ hermione_busy = True + jump main_room + # End Scene + else: + her "Well, I might be a little bit curious..." + her "Okay then..." + else: + her "Let me guess, you won't tell me what it does and I'll embarrass myself in front of the whole class?" + gen "Not at all." ("base", xpos="far_left", ypos="head") + her "That's new." ("annoyed", "squint", "base", "mid") + her "... and somehow worrying" + her "So what exactly is it then?" + gen "It's your regular, run-off-the-mill Polyjuice Potion." ("base", xpos="far_left", ypos="head") + her "Ugh. Those taste like muck." ("normal", "happyCl", "worried", "mid") + her "... and what will it turn me into?" + gen "That, Miss Granger, is a secret." ("base", xpos="far_left", ypos="head") + her "Typical." ("base", "base", "worried", "R",tears="soft") + gen "It'll taste a lot sweeter if you imagine all the points you'll earn for Gryffindor." ("base", xpos="far_left", ypos="head") + gen "How much of a lead did Slytherin have on you again?" ("base", xpos="far_left", ypos="head") + her "You're right, [genie_name]. I can't let Gryffindor down!" + hide hermione_main + with d3 + pause.2 + + $ renpy.sound.play("sounds/gulp.ogg") + call her_chibi("drink_potion","mid","base") + pause 2 + + call nar(">She downs the thick potion.") + pause.5 + + call her_chibi("stand","mid","base") + pause.2 + + her "Blehgh.","disgust","narrow" + if "polyjuice" in her_potions_drunk: + her "Pinching my nose barely helps..." + her "So, do I leave or?" + gen "No, just wait here for a moment..." ("base", xpos="far_left", ypos="head") + gen "Why don't you tell me a little bit about how your day's been going." ("base", xpos="far_left", ypos="head") + her "Okay..." + if her_whoring <= 13: + her "Well, there's not much to tell you that you don't already know." + her "Lately I've been questioning my previous outlook on life in general." + gen "In what way exactly?" ("base", xpos="far_left", ypos="head") + her "Well, since we started our... mutually beneficial... what ever we call this..." + her "The general atmosphere in our common room has been in an all time high because of how many house points we're racking in." + gen "That's good, you must feel a great sense of pride and accomplishment..." ("base", xpos="far_left", ypos="head") + her "Of course, the only issue is that I would never be able to tell them I'm the one to thank for it..." + her "If they just had one look of my face they'd be able to tell what was up." + gen "Speaking of face..." ("base", xpos="far_left", ypos="head") + else: + her "Well, generally it's been quite dull up until now." + her "I would be lying if I said I wasn't a little bit excited when you called on me." + gen "Oh, you'll be getting your fair share of excitement soon enough... Well, not this version of you." ("base", xpos="far_left", ypos="head") + her "What version of me will be..." + else: + her "I was wrong, not muck. Snot. It's as thick as Trollsnot." + gen "As long as you keep it down, you'll earn Gryffindor a great deal of points." ("base", xpos="far_left", ypos="head") + her "And I will." + her "So what now? I just go to class?" ("upset", "wink", "base", "mid") + gen "Not yet, tell me something about yourself." ("base", xpos="far_left", ypos="head") + her "Well, ever since I started my \"Extracurricular activities\" with you my attendance and grades have started slipping." ("open", "closed", "base", "mid") + gen "Troubling indeed." ("base", xpos="far_left", ypos="head") + + if her_whoring <= 13: + her "It is! [genie_name], I used to be at the top of the class. My scores were impeccable." ("scream", "closed", "angry", "mid") + gen "And how are your scores now?" ("base", xpos="far_left", ypos="head") + her "Well I'm still at the top... Just not by as much." ("annoyed", "narrow", "angry", "R") + gen "Well, there are times when academic excellence shouldn't be your primary concern." ("base", xpos="far_left", ypos="head") + her "Hmmph, and what /should/ be my primary concern then?" ("annoyed", "squint", "base", "mid") + gen "Currently. I'd say your face is pretty high on the list" ("base", xpos="far_left", ypos="head") + her "Excuse me. That is hardly appropriate for a headmaster." ("open_tongue", "narrow", "base", "mid_soft") + gen "No, I'm serious. You should really see the look on your face." ("base", xpos="far_left", ypos="head") + else: + her "Not really. I realise there are other things I can excel in." ("base", "base", "base", "mid") + gen "Like sucking cocks for house points" ("base", xpos="far_left", ypos="head") + her "Professor!" ("scream", "closed", "angry", "mid") + gen "Oh don't be so modest. If sucking dick was a class, you'd be Magna Cum Laude." ("base", xpos="far_left", ypos="head") + her "Thank you professor. You know, there's time to earn some more points before class. If you're feeling generous I could..." ("scream", "closed", "angry", "mid") + gen "I'd have to know on whose face I'll be cumming though " ("base", xpos="far_left", ypos="head") + her "What do you mean?... My face of course... I mean... *urp*" ("scream", "closed", "angry", "mid") + + hide hermione_main + with hpunch + call her_chibi("hide") + call lun_chibi("stand","base","base") + pause.5 + + "*POOF*" + + $ luna_xpos = 400 #400 = "right" + $ changeLuna("base","base","sad","mid") + show screen luna_main + with d3 + + if "luna_polyjuice" in her_potions_drunk: + her "*urgh*... Every time..." + her "Did it work?" + gen "Perfectly..." ("base", xpos="far_left", ypos="head") + call nar(">Hermione starts examining herself, feeling out her outfit and pausing at her breasts.") + $ changeLuna("base","seductive","raised","mid") + her "Well, At least I appear to be a girl.... A ravenclaw." + gen "I'm surprised you expected something different." ("base", xpos="far_left", ypos="head") + call nar(">Hermione grabs a lock of her hair") + $ changeLuna("pout","base","base","crossed") + her "Hmm, a blonde... that narrows things down. Not a good sign..." + gen "And why might that be?" ("base", xpos="far_left", ypos="head") + call nar(">Hermione reaches up into her fair and finds a thin wooden object lodge in the mess.") + $ changeLuna("base","wide","angry","mid") + her "..." + her "I'm...{w} You...{w} You turned me into Luna Lovegood again?" + gen "Yeah!" ("base", xpos="far_left", ypos="head") + $ changeLuna("pout","wide","angry","mid") + her "What is your obsession with this crazy blonde girl?" + gen "Now now, you're the one looking like her remember." ("base", xpos="far_left", ypos="head") + gen "Unless you're referring to yourself there's nothing wrong with the way she looks." ("base", xpos="far_left", ypos="head") + $ changeLuna("pout","base","sad","mid") + her "..." + gen "Now, I'd like to see those great assets of hers..." ("base", xpos="far_left", ypos="head") + if her_whoring <= 13:# Lowish + her "This again? I already told you, I'm not going to flaunt another students... assets." + gen "Then why would you drink the potion?" ("base", xpos="far_left", ypos="head") + her "You didn't tell me what it was going to do [genie_name]." + gen "Oh, yeah..." ("base", xpos="far_left", ypos="head") + her "I'm not going bare my... her chest... for you." + gen "Well you wont be receiving any of those points..." ("base", xpos="far_left", ypos="head") + her "..." + her "Yeah, that's still going to be a no, bye [genie_name]." + call her_walk(action="leave") + $ her_mood += 10 + $ hermione_busy = True + jump main_room + # End Scene + else: + her "Ughhh... I feel like I'm going to throw up! Did the Polyjuice work??" + gen "Like a charm." ("base", xpos="far_left", ypos="head") + call nar(">Hermione starts examining herself, feeling out her outfit and pausing at her breasts.") + $ changeLuna("base","seductive","raised","mid") + her "Apparently I'm still a girl. Someone from Ravenclaw?" + gen "Keen powers of observation, Miss Granger" ("base", xpos="far_left", ypos="head") + call nar(">Hermione grabs a lock of her hair") + $ changeLuna("pout","base","base","crossed") + her "Definitely a blonde, though she could absolutely use a comb" + $ changeLuna("base","base","base","crossed") + call nar(">Suddenly Hermione feels something stuck in the mess of blonde. On closer examination it appears to be a wand.") + $ changeLuna("base","wide","angry","mid") + her "..." + her "You turned me into Loony... I mean Luna Lovegood!?!" + gen "Very astute, [hermione_name]." ("base", xpos="far_left", ypos="head") + if not luna_known: + # Do not set luna_known here, it could prevent her normal intro sequence + gen "(No idea who that is, but she looks good.)" ("base", xpos="far_left", ypos="head") + $ changeLuna("pout","wide","angry","mid") + her "Why on earth would you want me to look like Luna? She's completely mental!" + gen "I'm not seeing anything wrong with her." ("base", xpos="far_left", ypos="head") + $ changeLuna("pout","base","sad","mid") + her "She has... imaginary friends and believes in things that can't possibly exist [genie_name]. She is absolutely mad." + gen "Fortunately, I'm not really interested in her mental health. I am interested in her impressive, and quite real, chest." ("base", xpos="far_left", ypos="head") + if her_whoring <= 13: # Lowish + her "I can't believe what you're suggesting, you're asking me to show off another students breasts?" + gen "Well, what else would you have me do? Look at your face?" ("base", xpos="far_left", ypos="head") + her "That's crossing the line [genie_name], I might not think very highly of Loony... Luna..." + her "But I'm not going bare my... her chest... for you." + gen "Then you wont be receiving any of those points..." ("base", xpos="far_left", ypos="head") + her "..." + her "Yeah, that's still going to be a no, bye [genie_name]." + call her_walk(action="leave") + $ her_mood += 10 + $ hermione_busy = True + jump main_room + # End scene + else: + $ changeLuna("base","seductive","raised","mid") + her "You can't possibly be interested in that... that girl's paltry breasts." + gen "Currently they're yours. And they don't look so paltry from where I'm sitting [hermione_name]. Do I detect a hint of jealousy?" ("base", xpos="far_left", ypos="head") + $ changeLuna("base","base","angry","mid") + her "Not at all, I suppose it is only natural that someone of your advanced age has trouble with their eyesight." + gen "(definitely struck a nerve there.) Is that any way to talk to your elders, [hermione_name]? Perhaps you need a good spanking to remind you of your manners. We old people are good at giving those." ("base", xpos="far_left", ypos="head") + $ changeLuna("disgust","base","sad","mid") + her "I..I apologise, [genie_name]. I don't know what came over me." + gen "Apology accepted. I'm sure they can't hold a candle to the brilliance of your boobs." ("base", xpos="far_left", ypos="head") + $ changeLuna("pout","base","base","R") + her "I'd like to think I'm more than just a pair of breasts... but thank you [genie_name]. That was flattering. In a way." + gen "If you want to dispel all doubt, we could compare. Why don't you lift your shirt and show me what you... err... She's got under that sweater." ("base", xpos="far_left", ypos="head") + $ changeLuna("pout","wide","angry","R") + her "I'm still not entirely comfortable with this..." + call nar(">Hermione quickly strips off her Ravenclaw top, followed by her bra.") + hide luna_main + with d3 + + #$ luna_wear_top = False + #$ luna_wear_bra = False + call lun_chibi("stand","base","base") + pause.5 + + $ changeLuna("base","seductive","raised","R") + show screen luna_main + with d3 + + if "luna_polyjuice" in her_potions_drunk: + her "I assume you'd like a closer look like last time?" + gen "Of course, get those cute pink nipples up here." ("base", xpos="far_left", ypos="head") + else: + her "There, see. Perfectly ordinary breasts. Absolutely no need to keep looking at them." + gen "I'm not quite convinced, the soft pale skin, the cute pink nipples and they look like quite a handful. I think you might have some serious competition here [hermione_name]." ("base", xpos="far_left", ypos="head") + $ changeLuna("upset","seductive","angry","mid") + her "You can't be serious! They're saggy and couldn't even fill a first-year's palm!" + gen "Hmmm, I'm not sure. I think a closer examination is required." ("base", xpos="far_left", ypos="head") + hide luna_main + with d3 + + #call lun_walk("desk") #TODO Needs walking chibi that is topless. + call lun_chibi("stand","desk","base") #Temporary! + + call nar(">In a huff, Hermione walks over and presents her new set of breasts") + show screen luna_main + with d3 + + if "luna_polyjuice" in her_potions_drunk: + gen "You look a bit flustered [hermione_name]." ("base", xpos="far_left", ypos="head") + $ changeLuna("pout","seductive","angry","mid") + her "You're staring directly at my chest [genie_name] and I can't help but feel a bit guilty as it's not my own..." + gen "Well, hopefully this should take your mind off that... twenty points to Gryffindor." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]...." + else: + gen "Yes yes, upon closer inspection it seems I was wrong. Luna's breasts are indeed second to your own." ("base", xpos="far_left", ypos="head") + $ changeLuna("pout","seductive","angry","mid") + her "I'm glad you came to your senses. Thank you, If you're completely satisfied, I'll cover these hideous things up now." + gen "Completely, [hermione_name]. Twenty points to Gryffindor." ("base", xpos="far_left", ypos="head") + hide luna_main + with d3 + + #$ luna_wear_top = True + #$ luna_wear_bra = True + call lun_chibi("stand","desk","base") + pause.5 + + $ changeLuna("base","closed","base","mid") + show screen luna_main + with d3 + + her "Well I best be off to classes." + gen "You're going to class looking like a fellow classmate?" ("base", xpos="far_left", ypos="head") + $ changeLuna("base","base","raised","mid") + her "It's not going to be a problem. Luna's barely in class as it is, I can just pretend to be her. Maybe I'll even improve her test scores. You'll notify the teachers I can't attend class right?" + gen "Absolutely. (Not a chance) But, what if you bump into her in the halls?" ("base", xpos="far_left", ypos="head") + $ changeLuna("pout","seductive","base","mid") + her "Believe me [genie_name], Luna will probably think I'm some kind of Wrackspurt that's messing with her head." + hide luna_main + with d3 + + call lun_walk(action="leave") + + $ hermione_busy = True + + $ her_potions_drunk.add("polyjuice") + $ her_potions_drunk.add("luna_polyjuice") + + jump main_room + +# #Lamia transformation. + +# label potion_scene_1_3: #Lamia potion + # her "That's dumb." ("scream", "happyCl", "worried", "mid") + # gen "I literally don't know." ("base", xpos="far_left", ypos="head") + # jump main_room + + +# #Clone transformation. + +# label potion_scene_1_4: #Clone potion + # gen "Do you ever feel conflicted about what we do in here [hermione_name]?" ("base", xpos="far_left", ypos="head") + # her "Conflicted? I suppose I do... why do you ask?" + # gen "because I have a new potion that can help you come to terms with this internal conflict." ("base", xpos="far_left", ypos="head") + # her "What? How?" + # gen "It splits your mind into two parts, allowing you to confront yourself and address the problem." ("base", xpos="far_left", ypos="head") + # her "Splits my mind?! That doesn't sound very safe!" + # gen "It only splits your mind metaphorically. I ensure you it's as safe as can be." ("base", xpos="far_left", ypos="head") + # her "Well if you made it yourself then I trust it. I mean it's not like the weasley twins made it." + # gen "Of course not... Now if you'd kindly drink it we can get to the bottom of your conflicted nature." ("base", xpos="far_left", ypos="head") + # her "..." + # her "Well here goes..." + # call nar(">Hermione drinks the potion.") + # her "Mmmmmm it's so sweet..." + # her "Ughhhh, it's so sour..." + + # #Hermione split into two versions of herself, one slutty, one prudish + # #Slutty one wants to have sex with Genie + # #Genie obliges + # #Slutty Hermione enjoying it immensely + # #Genie trying to convince pruddy Hermione to join in + # #Prude Hermione wants no part in it, although she is slightly aroused + # #Slut Hermione + # #Genie cums in Hermione + # #Slut Hermione wants to go again + # #Slut Hermione offers to suck Genie to get him hard + # #Genie says why don't we get prude Hermione to do it + # #Slut Hermione says that's a great idea + # #Prude Hermione refuses + # #Slut Hermione and Genie force her to her knees + # #Genie talks dirty to Prude Hermione while Slutty Hermione encourages her + # #Genie ends up covering her in cum + # #Prude Hermione partially speechless + # #Slutty Hermione wants to go again but Genie is spent + # #Hermione reforms into one person + # #Genie ridicules her, saying that even the most prudish and reseverved version of herself ended up sucking him off + # #Hermione feels both shame and pride + # #THE END + + + # call her_walk(action="leave") + + # $ hermione_busy = True + + # jump main_room diff --git a/game/scripts/inventory/qitems.rpy b/game/scripts/inventory/qitems.rpy new file mode 100644 index 00000000..6e0230c3 --- /dev/null +++ b/game/scripts/inventory/qitems.rpy @@ -0,0 +1,16 @@ + +default puzzle_box_ITEM = Item("puzzle_box", "quest", "Puzzle Box", 0, "A wooden box with a slide puzzle located on top of it. It was found hidden behind one of the loose bricks in the fireplace. Who knows what's inside.", limit=1, label="puzzle_minigame", unlocked=False, caption="Open") +default collar_ITEM = Item("collar", "quest", "Magic Collar", 500, "{size=-2}A collar made out of metal. It has an inscription on the back.\n\n{/size}{size=-2}{i}\"Transforms to show the wearers true self.\n WARNING: May cause harm to adjacent clothing during transformation.\"{/i}{/size}", givable=True, give_label="collar_scene", usable_on=["hermione"], caption="Give") +default buttplugs_ITEM = Item("buttplugs", "quest", "Set of Butt Plugs", 500, "An assortment of butt plugs in various themes and sizes.", limit=1, infinite=True, givable=True, give_label="hg_ps_buttplug", usable_on=["hermione"], caption="Give") +default lootbox_ITEM = Item("cards", "quest", "Pack of Cards", 50, "A pack of wizard cards. You won't know what's inside until you open it.", label="card_lootbox", unlocked=False, caption="Open") +default sealed_scroll_ITEM = Item("sealed_scroll", "quest", "Sealed Scroll", 500, "The scroll can be used to transmute one-self into.. something.\n{size=-4}Hint: The user can't be a virgin.{/size}", limit=1, label="tentacle_scene_intro", caption="Read") +default quidditchguide_ITEM = Item("quidditch_book", "quest", "Quidditch Guide", 100, "This book contains the basic knowledge of Quidditch.", label="quidditch_guide_book", limit=1, image="interface/icons/generic_book.webp", unlocked=False, caption="Read") +default thequibbler_ITEM = Item("quibbler", "quest", "The Quibbler #NO. 24027", 15, "This tabloid includes conspiracy theories and discussions of imaginary creatures and other weirdness.", label="spectrespecs_E3", limit=1, image="interface/icons/the_quibbler.webp", unlocked=False, caption="Read") +default experimental_recipes_ITEM = Item("recipes", "quest", "Experimental Potion Recipes", 0, "This piece of paper has Snape's handwriting all over it.", limit=1, image="interface/icons/generic_scroll.webp", unlocked=False) + +#default time_turner_ITEM = Item("time_turner", "quest", "Time Turner", 5000, "May only be used with explicit permission from the ministry of magic.\nChanges to established lore are strictly prohibited.", limit=1, label="not_implemented", unlocked=False) + +# Outfits related quest items +default poker_outfit_ITEM = Item("her_outfit_poker", "quest", "Poke-her-nips Outfit", 15, "An outfit that doesn't leave much for the mind's desire, perfect for a lewd card loving girl.", limit=1, image="interface/icons/icon_gambler_hat.webp", unlocked=False, currency="tokens") +default ball_outfit_ITEM = Item("her_outfit_ball", "quest", "Classy Ball Dress", 0, "A fancy dress for a fancy witch.", limit=1, image="interface/icons/icon_gambler_hat.webp", unlocked=False) +default maid_outfit_ITEM = Item("her_outfit_maid", "quest", "French Maid Costume", 0, "A classic Maid Outfit for a classy Witch.", limit=1, image="interface/icons/feather_duster.webp", unlocked=False) diff --git a/game/scripts/inventory/scrolls.rpy b/game/scripts/inventory/scrolls.rpy new file mode 100644 index 00000000..876755a2 --- /dev/null +++ b/game/scripts/inventory/scrolls.rpy @@ -0,0 +1,518 @@ + +# Legacy +default leg1_scroll_ITEM = Item("leg1_scroll", "scroll", "Scroll 1: The room", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg1_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg2_scroll_ITEM = Item("leg2_scroll", "scroll", "Scroll 2: The Callendar", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg2_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg3_scroll_ITEM = Item("leg3_scroll", "scroll", "Scroll 3: The Girl", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg3_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg4_scroll_ITEM = Item("leg4_scroll", "scroll", "Scroll 4: Deepthroating", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg4_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg5_scroll_ITEM = Item("leg5_scroll", "scroll", "Scroll 5: Poster 1", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg5_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg6_scroll_ITEM = Item("leg6_scroll", "scroll", "Scroll 6: Poster 2", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg6_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg7_scroll_ITEM = Item("leg7_scroll", "scroll", "Scroll 7: Chibi Dancing", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg7_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg8_scroll_ITEM = Item("leg8_scroll", "scroll", "Scroll 8: Game Items", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg8_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg9_scroll_ITEM = Item("leg9_scroll", "scroll", "Scroll 9: Panties-no-Panties", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg9_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg10_scroll_ITEM = Item("leg10_scroll", "scroll", "Scroll 10: A lot of pegs", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg10_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg11_scroll_ITEM = Item("leg11_scroll", "scroll", "Scroll 11: House-Elf Brothel", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg11_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg12_scroll_ITEM = Item("leg12_scroll", "scroll", "Scroll 12: Me and Lola", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg12_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg13_scroll_ITEM = Item("leg13_scroll", "scroll", "Scroll 13: Hard Training", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg13_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg14_scroll_ITEM = Item("leg14_scroll", "scroll", "Scroll 14: Wizard's Chess", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg14_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg15_scroll_ITEM = Item("leg15_scroll", "scroll", "Scroll 15: Tutoring Books", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg15_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg16_scroll_ITEM = Item("leg16_scroll", "scroll", "Scroll 16: Extra Gifts 1", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg16_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg17_scroll_ITEM = Item("leg17_scroll", "scroll", "Scroll 17: Extra Gifts 2", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg17_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg18_scroll_ITEM = Item("leg18_scroll", "scroll", "Scroll 18: Fiction Books", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg18_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg19_scroll_ITEM = Item("leg19_scroll", "scroll", "Scroll 19: Singer Whore", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg19_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg20_scroll_ITEM = Item("leg20_scroll", "scroll", "Scroll 20: Casting", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg20_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg21_scroll_ITEM = Item("leg21_scroll", "scroll", "Scroll 21: Witch Robes 1", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg21_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg22_scroll_ITEM = Item("leg22_scroll", "scroll", "Scroll 22: Witch Robes 2", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg22_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg23_scroll_ITEM = Item("leg23_scroll", "scroll", "Scroll 23: Witch Robes 3", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg23_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg24_scroll_ITEM = Item("leg24_scroll", "scroll", "Scroll 24: Witch Robes 4", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg24_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg25_scroll_ITEM = Item("leg25_scroll", "scroll", "Scroll 25: The Walk", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg25_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg26_scroll_ITEM = Item("leg26_scroll", "scroll", "Scroll 26: Durmstrang", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg26_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg27_scroll_ITEM = Item("leg27_scroll", "scroll", "Scroll 27: Ball Gag", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg27_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg28_scroll_ITEM = Item("leg28_scroll", "scroll", "Scroll 28: New Clothes 1", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg28_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg29_scroll_ITEM = Item("leg29_scroll", "scroll", "Scroll 29: New Clothes 2", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg29_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") +default leg30_scroll_ITEM = Item("leg30_scroll", "scroll", "Scroll 30: The Gang", 30, "Scroll showcasing various development stages from the original version of the game and concept art.", label="leg30_scroll", limit=1, image="interface/icons/generic_scroll.webp", caption="Read") + +label leg1_scroll: + show screen blktone + show image "images/scrolls/1.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "This is a first ever draft of the Dumbledore's office." + "Akabur" "Not a very exciting thing to look at, sure. But holds great historical value." + call ctc + + hide screen blktone + hide image "images/scrolls/1.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg2_scroll: + show screen blktone + show image "images/scrolls/2.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "The calendar..." + "Akabur" "On the early stages of development I toyed with an idea of implementing an actual in-game calendar into the gameplay..." + "Akabur" "I soon realised how much more difficult it would be to create a game like that..." + "Akabur" "And since I personally believe that any time limits in any game always work against the fun factor I decided to abandon the idea..." + "Akabur" "Later on I used this drawing as a parchment paper for letters to be written on..." + call ctc + + hide screen blktone + hide image "images/scrolls/2.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg3_scroll: + show screen blktone + show image "images/scrolls/3.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "A couple of very early drawings of Hermione..." + call ctc + + hide screen blktone + hide image "images/scrolls/3.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg4_scroll: + show screen blktone + show image "images/scrolls/4.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "The deepthroating scene..." + "Akabur" "My first attempt." + "Akabur" "Been deemed unworthy and ended up here." + call ctc + + hide screen blktone + hide image "images/scrolls/4.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg5_scroll: + show screen blktone + show image "images/scrolls/5.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "The game poster..." + "Akabur" "Hermione is Dahr's work. The rest is me..." + call ctc + + hide screen blktone + hide image "images/scrolls/5.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg6_scroll: + show screen blktone + show image "images/scrolls/6.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "Alternative game poster." + "Akabur" "This one has never been released." + call ctc + + hide screen blktone + hide image "images/scrolls/6.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg7_scroll: + show screen blktone + show image "images/scrolls/7.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "Some chibi close-ups." + "Akabur" "The one on the left never made it into the final game..." + call ctc + + hide screen blktone + hide image "images/scrolls/7.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg8_scroll: + show screen blktone + show image "images/scrolls/8.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "A bunch of items that I ended up not using..." + "Akabur" "I blame Dahr and his awesome artwork." + call ctc + + hide screen blktone + hide image "images/scrolls/8.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg9_scroll: + show screen blktone + show image "images/scrolls/9.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "The drawing of Hermione from the poster. (by Dahr)" + "Akabur" "I like one on the right with her panties still on." + call ctc + + hide screen blktone + hide image "images/scrolls/9.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg10_scroll: + show screen blktone + show image "images/scrolls/10.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "Another thing that never made it into the final game..." + "Akabur" "The idea here was that the more you level up Hermione the more pegs she would let you to put on her..." + "Akabur" "And the nipple chain was supposed to be worn to class under the uniform." + call ctc + + hide screen blktone + hide image "images/scrolls/10.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg11_scroll: + show screen blktone + show image "images/scrolls/11.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "The house-elf brothel... Just another thing that never happened." + call ctc + + hide screen blktone + hide image "images/scrolls/11.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg12_scroll: + show screen blktone + show image "images/scrolls/12.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "A drawing featuring yours truly as a Durmstrung mage and Lola as a student..." + call ctc + + hide screen blktone + hide image "images/scrolls/12.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg13_scroll: + show screen blktone + show image "images/scrolls/13.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "Another one of those side-quests that never happened..." + "Akabur" "This one was about--" + "Akabur" "No, I better not. Who knows, maybe I will get to adding those quests eventually." + call ctc + + hide screen blktone + hide image "images/scrolls/13.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg14_scroll: + show screen blktone + show image "images/scrolls/14.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "Another sub-quest..." + "Akabur" "This one involving the school's wizard chess club." + call ctc + + hide screen blktone + hide image "images/scrolls/14.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg15_scroll: + show screen blktone + show image "images/scrolls/15.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "There is more then one way for a pretty girl to carry her books around." + "Akabur" "I thought it would be cool to change the way Hermione carries the books as she progresses with her training." + "Akabur" "Since the whole tutoring arc got cancelled I am showing it here..." + call ctc + + hide screen blktone + hide image "images/scrolls/15.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg16_scroll: + show screen blktone + show image "images/scrolls/16.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "A couple of items that didn't make it into the final game..." + "Akabur" "The one on the left is an actual live house-elf to give as a present." + "Akabur" "The one on the right is a portrait of a pervy but wise wizard. Supposed to be helping with studying..." + call ctc + + hide screen blktone + hide image "images/scrolls/16.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg17_scroll: + show screen blktone + show image "images/scrolls/17.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "Few more items..." + "Akabur" "A newspaper, a bottle of perfume and a magical hat that says things you want to hear..." + call ctc + + hide screen blktone + hide image "images/scrolls/17.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg18_scroll: + show screen blktone + show image "images/scrolls/18.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "The fiction books..." + "Akabur" "The top row are my sketches, the bottom row are finalised drawings by Dahr." + call ctc + + hide screen blktone + hide image "images/scrolls/18.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg19_scroll: + show screen blktone + show image "images/scrolls/19.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "A drawing of a famous singer." + "Akabur" "Has no connection to this game and is here for no reason whatsoever." + call ctc + + hide screen blktone + hide image "images/scrolls/19.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg20_scroll: + show screen blktone + show image "images/scrolls/20.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "It took me a while to come up with a proper look for Hermione..." + "Akabur" "Version \"A\" was my first attempt. And I liked it up until the moment when I started to hate it..." + "Akabur" "Version \"B\" was my second attempt. And it's good. But her confident and semi-aggressive facial features didn't fit the character well..." + "Akabur" "Version \"C\" is the one that got the role. The Hermione that we all grew to care for by now, I'm sure." + call ctc + + hide screen blktone + hide image "images/scrolls/20.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg21_scroll: + show screen blktone + show image "images/scrolls/21.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "Sub-quests that never happened." + "Akabur" "You are allowed to feel bad for rushing me." + "Akabur" "If you did not rush me you are allowed to feel angry at people who did." + call ctc + + hide screen blktone + hide image "images/scrolls/21.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg22_scroll: + show screen blktone + show image "images/scrolls/22.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "Hermione presenting her body to Genie..." + "Akabur" "This would have been a quite memorable scene..." + call ctc + + hide screen blktone + hide image "images/scrolls/22.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg23_scroll: + show screen blktone + show image "images/scrolls/23.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "Didn't expect this one, did you?" + "Akabur" "In case you're wondering this is still Hermione." + call ctc + + hide screen blktone + hide image "images/scrolls/23.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg24_scroll: + show screen blktone + show image "images/scrolls/24.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "................................." + "Akabur" "Sub-quests of course..." + call ctc + + hide screen blktone + hide image "images/scrolls/24.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg25_scroll: + show screen blktone + show image "images/scrolls/25.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "Another sub-quest..." + "Akabur" "I had a rather lengthy discussion with Dahr about this one..." + "Akabur" "I was sort of against it, but then Dahr sent me this picture and it made me shut up." + call ctc + + hide screen blktone + hide image "images/scrolls/25.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg26_scroll: + show screen blktone + show image "images/scrolls/26.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "One the very early stages of development I had an idea of representing outcomes of your failed or successfully completed sub quests with a simplistic plates, or photographs..." + "Akabur" "At first many of the sub-quests involved deciding on how to spend the Hogwarts budget..." + "Akabur" "Spend your money to finance the school quidditch team, or to hire new teachers and such..." + call ctc + + hide screen blktone + hide image "images/scrolls/26.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg27_scroll: + show screen blktone + show image "images/scrolls/27.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "Isn't she adorable?" + call ctc + + hide screen blktone + hide image "images/scrolls/27.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg28_scroll: + show screen blktone + show image "images/scrolls/28.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "Another (rather lengthy) sub-quest..." + call ctc + + hide screen blktone + hide image "images/scrolls/28.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg29_scroll: + show screen blktone + show image "images/scrolls/29.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" ".........." + call ctc + + hide screen blktone + hide image "images/scrolls/29.webp" onlayer screens zorder 25 + with d3 + + jump inventory + +label leg30_scroll: + show screen blktone + show image "images/scrolls/30.webp" onlayer screens zorder 25 + with d3 + pause 1 + + "Akabur" "One of the very early sketches related to the quidditch sub-quests..." + call ctc + + hide screen blktone + hide image "images/scrolls/30.webp" onlayer screens zorder 25 + with d3 + + jump inventory diff --git a/game/scripts/minigames/cardgame/__card_game_init__.rpy b/game/scripts/minigames/cardgame/__card_game_init__.rpy new file mode 100644 index 00000000..f9de5475 --- /dev/null +++ b/game/scripts/minigames/cardgame/__card_game_init__.rpy @@ -0,0 +1,881 @@ +default selectcard = -1 +default selectenemycard = -1 +default currentpage = 0 +#Shown Cards is a integer for how many cards should be hidden +# +#Sudden Death is where when there is draw then a new round will begin +#Where you take all card of you color up in you hand +# +#Reverse is where the take over is reverse so instead of > it is < +# +#Dobelt_number +# Rules(Shown Cards, Sudden Death, Reverse, Dobelt_number) +default standard_rules = [0, False, False, False] + +default playercolor_rgb = (51, 92, 147, 255) +default enemycolor_rgb = (116, 0, 0, 255) + +default geniecard_level = 1 +default tokens = 0 +default cardgame_eoc = False # End of content flag + +default table_cards = [[None for x in xrange(0,3)] for y in xrange(0,3)] + +#Special Cards + +default card_genie = Card( imagepath="images/cardgame/t1/special/genie_v1.webp", + topvalue = 2, + bottomvalue = 2, + rightvalue = 5, + leftvalue = 3, + title="Genie", + description = "It's you, looking sexy as fuck. As always.") + +default card_snape = Card( imagepath="images/cardgame/t1/special/snape_v1.webp", + topvalue = 4, + bottomvalue = 1, + rightvalue = 4, + leftvalue = 2, + title="Severus Snape", + description = "The potions master at Hogwarts. Known to many by his slithering walk and greasy appearance.") + +default card_dumbledore = Card( imagepath="images/cardgame/t1/special/dumbledore_v1.webp", + topvalue = 6, + bottomvalue = 1, + rightvalue = 3, + leftvalue = 1, + title="Albus Dumbledore", + description = "Some old dude, you have no idea who this is.") + +default card_fred = Card( imagepath="images/cardgame/t1/special/fred_v1.webp", + topvalue = 3, + bottomvalue = 2, + rightvalue = 4, + leftvalue = 1, + title="Fred Weasley", + description = "One of the Weasley twins, I think it might be George.") + +default card_george = Card( imagepath="images/cardgame/t1/special/george_v1.webp", + topvalue = 2, + bottomvalue = 3, + rightvalue = 1, + leftvalue = 4, + title="George Weasley", + description = "One of the Weasley twins, I think it might be Fred.") + +#Special Cards - Alternative + +default card_jasmine = Card( imagepath="images/cardgame/t1/genie_realm/jas_v%s.webp" % str(geniecard_level), + topvalue = 2, + bottomvalue = 3, + rightvalue = 2, + leftvalue = 4, + title="Princess Jasmine", + description = "One of your favourite sluts, I mean, princesses.") + +default card_iris = Card( imagepath="images/cardgame/t1/genie_realm/iri_v%s.webp" % str(geniecard_level), + topvalue = 3, + bottomvalue = 2, + rightvalue = 4, + leftvalue = 2, + title="Iris", + description = "Your most devoted fangirl.") + +default card_azalea = Card( imagepath="images/cardgame/t1/genie_realm/azalea_v%s.webp" % str(geniecard_level), + topvalue = 4, + bottomvalue = 2, + rightvalue = 2, + leftvalue = 3, + title="Azalea", + description = "Your dreamgirl.") + +default card_dahlia = Card( imagepath="images/cardgame/t1/genie_realm/dahlia_v1.webp", + topvalue = 3, + bottomvalue = 3, + rightvalue = 1, + leftvalue = 2, + title="Dahlia", + description = "She's very (s)experienced.") + +default card_aladdin = Card( imagepath="images/cardgame/t1/genie_realm/aladdin_v1.webp", + topvalue = 4, + bottomvalue = 2, + rightvalue = 1, + leftvalue = 4, + title="Aladdin", + description = "The biggest cuck in the whole multiverse.") + +default card_lilly = Card( imagepath="images/cardgame/t1/genie_realm/lilly_v1.webp", + topvalue = 1, + bottomvalue = 5, + rightvalue = 5, + leftvalue = 5, + title="Lilly", + description = "Who's your momma?") + +default card_maslab = Card( imagepath="images/cardgame/t1/genie_realm/maslab_v1.webp", + topvalue = 2, + bottomvalue = 3, + rightvalue = 4, + leftvalue = 4, + title="Maslab", + description = "\"If you hurt my precious daughter I'll find you!\"") + +default card_rasul = Card( imagepath="images/cardgame/t1/genie_realm/rasul_v1.webp", + topvalue = 6, + bottomvalue = 2, + rightvalue = 2, + leftvalue = 2, + title="Rasul", + description = "Loyalty has its price.") + +default card_jafar = Card( imagepath="images/cardgame/t1/genie_realm/jafar_v1.webp", + topvalue = 4, + bottomvalue = 1, + rightvalue = 4, + leftvalue = 2, + title="Jafar", + description = "That silver-tongued motherfucker..") + +default card_santa = Card( imagepath="images/cardgame/t1/special/santa_v1.webp", + topvalue = 2, + bottomvalue = 2, + rightvalue = 5, + leftvalue = 1, + title="Santa", + description = "Some guy that's been stealing your style. I'll put him on my naughty list.") + +#Tier 1 cards + +default card_her_schoolgirl = Card( imagepath="images/cardgame/t1/hermione/her_schoolgirl_v%s.webp" % str(geniecard_level), + topvalue = 4, + bottomvalue = 3, + rightvalue = 2, + leftvalue = 1, + title="Hermione Granger", + description = "The Granger girl wearing her normal school uniform.") + +default card_her_librarian = Card( imagepath="images/cardgame/t1/hermione/her_librarian_v%s.webp" % str(geniecard_level), + topvalue = 5, + bottomvalue = 2, + rightvalue = 1, + leftvalue = 4, + title="Hermione Granger", + description = "The Granger girl clutching a real page turner.") + +default card_sus_schoolgirl = Card( imagepath="images/cardgame/t1/susan/sus_schoolgirl_v%s.webp" % str(geniecard_level), + topvalue = 3, + bottomvalue = 4, + rightvalue = 1, + leftvalue = 2, + title="Susan Bones", + description = "Miss Bones, barely contained within her school uniform.") + +default card_cho_schoolgirl = Card( imagepath="images/cardgame/t1/cho/cho_schoolgirl_v%s.webp" % str(geniecard_level), + topvalue = 2, + bottomvalue = 4, + rightvalue = 3, + leftvalue = 1, + title="Cho Chang", + description = "Miss Chang, sporting her school uniform.") + +default card_lun_schoolgirl = Card( imagepath="images/cardgame/t1/luna/lun_schoolgirl_v%s.webp" % str(geniecard_level), + topvalue = 1, + bottomvalue = 2, + rightvalue = 4, + leftvalue = 3, + title="Luna Lovegood", + description = "Miss Lovegood, wearing her normal school uniform.") + +#Item cards + +default card_item_badge = Card( imagepath="images/cardgame/t1/other/badge_v1.webp", + topvalue = 3, + bottomvalue = 1, + rightvalue = 1, + leftvalue = 3, + title="SPEW Badge", + description="The S.P.E.W Badge, I think it might stand for Sluts for the Pleasuring of Excited Wizards...") + +default card_item_barbell = Card( imagepath="images/cardgame/t1/other/barbell_v1.webp", + topvalue = 4, + bottomvalue = 2, + rightvalue = 1, + leftvalue = 1, + title="Barbell piercing", + description="A nipple piercing a female student might wear... after some convincing.") + +default card_item_beads = Card( imagepath="images/cardgame/t1/other/beads_v1.webp", + topvalue = 2, + bottomvalue = 4, + rightvalue = 1, + leftvalue = 1, + title="Anal beads", + description="Some beads, I'm sure you already know where these go... Hogwarts express to brown town.") + +default card_item_bird = Card( imagepath="images/cardgame/t1/other/bird_v1.webp", + topvalue = 4, + bottomvalue = 3, + rightvalue = 1, + leftvalue = 1, + title="Phoenix", + description="A bird that was here when I arrived. It doesn't say or do much... I like it.") + +default card_item_bookchairs = Card( imagepath="images/cardgame/t1/other/bookchairs_v1.webp", + topvalue = 1, + bottomvalue = 2, + rightvalue = 2, + leftvalue = 2, + title="Book of Chairs", + description="A book with seemingly sharp pages. I've not dared to open it.") + +default card_item_bookgala = Card( imagepath="images/cardgame/t1/other/bookgala_v1.webp", + topvalue = 1, + bottomvalue = 2, + rightvalue = 3, + leftvalue = 1, + title="Book of Galadrier (Light ED)", + description="One of the books, waste of printing paper.") + +default card_item_bookgala2 = Card( imagepath="images/cardgame/t1/other/bookgala2_v1.webp", + topvalue = 1, + bottomvalue = 4, + rightvalue = 2, + leftvalue = 1, + title="Book of Galadriel (Hardcore ED)", + description="One of the books, a culture shock and a half.") + +default card_item_bookwaifu = Card( imagepath="images/cardgame/t1/other/bookwaifu_v1.webp", + topvalue = 3, + bottomvalue = 2, + rightvalue = 1, + leftvalue = 2, + title="Waifu Book", + description="One of the books, a culture shock and a half.") + +default card_item_broom = Card( imagepath="images/cardgame/t1/other/broom_v1.webp", + topvalue = 1, + bottomvalue = 4, + rightvalue = 2, + leftvalue = 2, + title="Modified Nimbus 2000", + description="Highly modified broom. I'd call it, \"The Thundersnatch.\"") + +default card_item_bdsm = Card( imagepath="images/cardgame/t1/other/bdsm_v1.webp", + topvalue = 3, + bottomvalue = 2, + rightvalue = 3, + leftvalue = 1, + title="BDSM Kit", + description="Fetish gear, I like it for the peace and quiet.") + +default card_item_condoms = Card( imagepath="images/cardgame/t1/other/condoms_v1.webp", + topvalue = 3, + bottomvalue = 2, + rightvalue = 1, + leftvalue = 3, + title="Pack of condoms", + description="Some condoms, I don't need them.") + +default card_item_desk = Card( imagepath="images/cardgame/t1/other/desk_v1.webp", + topvalue = 3, + bottomvalue = 3, + rightvalue = 3, + leftvalue = 1, + title="Office desk", + description="My desk, with an underside way more glazed than before I arrived.") + +default card_item_dildo = Card( imagepath="images/cardgame/t1/other/dildo_v1.webp", + topvalue = 3, + bottomvalue = 3, + rightvalue = 1, + leftvalue = 2, + title="Magical Dildo", + description="A Dildo, the perfect gift for any female student.") + +default card_item_doll = Card( imagepath="images/cardgame/t1/other/doll_v1.webp", + topvalue = 1, + bottomvalue = 3, + rightvalue = 2, + leftvalue = 2, + title="Sex Doll", + description="A sex doll. Wished I had one of these in my lamp...") + +default card_item_elf = Card( imagepath="images/cardgame/t1/other/elf_v1.webp", + topvalue = 3, + bottomvalue = 3, + rightvalue = 2, + leftvalue = 2, + title="House-Elf", + description="Disgusting creature... Apparently they clean underneath my desk though.") + +default card_item_eromag = Card( imagepath="images/cardgame/t1/other/eromag_v1.webp", + topvalue = 4, + bottomvalue = 2, + rightvalue = 1, + leftvalue = 1, + title="Erotic Magazine", + description="Perfect way to teach any girl about the more important things in life.") + +default card_item_girlmag = Card( imagepath="images/cardgame/t1/other/girlmag_v1.webp", + topvalue = 2, + bottomvalue = 3, + rightvalue = 1, + leftvalue = 1, + title="Girly Magazine", + description="A good gift to make you seem hip. Whatever that means.") + +default card_item_hat = Card( imagepath="images/cardgame/t1/other/hat_v1.webp", + topvalue = 6, + bottomvalue = 1, + rightvalue = 1, + leftvalue = 1, + title="Sorting Hat", + description="One of the weird items in my office. I swear it talked to me once.") + +default card_item_lingerie = Card( imagepath="images/cardgame/t1/other/lingerie_v1.webp", + topvalue = 2, + bottomvalue = 4, + rightvalue = 2, + leftvalue = 2, + title="Lingerie", + description="If a girl needs to wear any undergarments at all these would be my preferred choice.") + +default card_item_lipstick = Card( imagepath="images/cardgame/t1/other/lipstick_v1.webp", + topvalue = 1, + bottomvalue = 2, + rightvalue = 1, + leftvalue = 2, + title="Lipstick (Red)", + description="For when a girl wants to feel less naked. Comes in a variety of unnatural colours.") + +default card_item_lube = Card( imagepath="images/cardgame/t1/other/lube_v1.webp", + topvalue = 1, + bottomvalue = 5, + rightvalue = 1, + leftvalue = 1, + title="Jar of lubricant", + description="A Jar full of lube, I should get a subscription for these.") + +default card_item_owl = Card( imagepath="images/cardgame/t1/other/owl_v1.webp", + topvalue = 3, + bottomvalue = 3, + rightvalue = 1, + leftvalue = 1, + title="Stuffed Owl", + description="An Owl plush, very popular among the girls.") + +default card_item_plugs = Card( imagepath="images/cardgame/t1/other/plugs_v1.webp", + topvalue = 2, + bottomvalue = 2, + rightvalue = 3, + leftvalue = 3, + title="Set of anal plugs", + description="A selection of plugs... Bit weird, even for me. ") + +default card_item_pornmag = Card( imagepath="images/cardgame/t1/other/pornmag_v1.webp", + topvalue = 4, + bottomvalue = 3, + rightvalue = 1, + leftvalue = 1, + title="Porno Magazine", + description="Some porn mags. Perfect gift for the more sophisticated lady. ") + +default card_item_potions = Card( imagepath="images/cardgame/t1/other/potions_v1.webp", + topvalue = 3, + bottomvalue = 2, + rightvalue = 3, + leftvalue = 2, + title="Batch of Potions", + description="A set of potions. None of my favourites...") + +default card_item_scroll = Card( imagepath="images/cardgame/t1/other/scroll_v1.webp", + topvalue = 1, + bottomvalue = 4, + rightvalue = 2, + leftvalue = 3, + title="Forbidden Scroll", + description="One of the scrolls from the Weasley's shop.") + +default card_item_stockings = Card( imagepath="images/cardgame/t1/other/stockings_v1.webp", + topvalue = 1, + bottomvalue = 2, + rightvalue = 3, + leftvalue = 3, + title="Pair of stockings", + description="Pair of stockings, looks great with a short skirt.") + +default card_item_strapon = Card( imagepath="images/cardgame/t1/other/strapon_v1.webp", + topvalue = 2, + bottomvalue = 3, + rightvalue = 1, + leftvalue = 4, + title="Thestral Strap-on", + description="Don't have any use for these but they're great practice for the ladies.") + +default card_item_sweets = Card( imagepath="images/cardgame/t1/other/sweets_v1.webp", + topvalue = 1, + bottomvalue = 1, + rightvalue = 2, + leftvalue = 3, + title="Pack of Sweets", + description="Some of the most popular sweets. Including Butter beer, not alcoholic enough in my opinion.") + +default card_item_wine = Card( imagepath="images/cardgame/t1/other/wine_v1.webp", + topvalue = 4, + bottomvalue = 2, + rightvalue = 1, + leftvalue = 2, + title="Bottle of wine", + description="That wine I keep finding in this cupboard. Not sure if the wine is magically infused or the cupboard.") + +default deck_unlocked = False +default enemy_deck = [] +default duel_win_label = "" +default duel_loss_label = "" + +default snape_know_cards = False +default snape_first_win = False +default snape_second_win = False +default snape_third_win = False +default snape_wager_talk = False +default random_snape_win = False + +default her_know_cards = False +default her_cards_stocked_talk = False +default her_first_win = False +default her_second_win = False +default her_third_win = False +default her_random_win = False +default cardgame_work = False +default first_time_cardgame_work = True + +default twins_know_cards = False +default twins_first_win = False +default twins_second_win = False +default twins_cards_delay = 7 +default twins_cards_stocked = False +default twins_cards_stocked_talk = False +default twins_interest = False +default first_random_twins = True +default twins_random_win = True +default twins_profit = 1.0 + +default card_rand_realm = renpy.random.choice([card_iris, card_jasmine, card_azalea]) +default card_rand_girl = renpy.random.choice([card_her_schoolgirl, card_sus_schoolgirl, card_cho_schoolgirl, card_lun_schoolgirl]) +default card_rand_item1 = renpy.random.choice([card_item_desk, card_item_bird]) +default card_rand_item2 = renpy.random.choice([card_item_beads, card_item_dildo, card_item_doll, card_item_condoms, card_item_plugs]) +default card_rand_item3 = renpy.random.choice([card_item_barbell, card_item_lingerie, card_item_stockings, card_item_badge, card_item_bdsm, card_item_lipstick]) +default card_rand_item4 = renpy.random.choice([card_item_bookchairs, card_item_bookgala, card_item_bookgala2, card_item_bookwaifu, card_item_hat]) +default card_rand_item5 = renpy.random.choice([card_item_eromag, card_item_pornmag, card_item_girlmag, card_item_scroll, card_item_sweets]) +default unlocked_cards = [card_genie, card_rand_realm, card_rand_girl, card_rand_item1, card_rand_item2, card_rand_item3, card_rand_item4, card_rand_item5] + +default playerdeck = [card_genie, card_rand_realm, card_rand_girl, card_rand_item1, card_rand_item2] + +default card_rule_reverse = CardGameRule(name="Reverse", description="Instead of a higher number, you need to have the lowest number to take over a card.", icon="images/cardgame/rule_reverse.webp") +default card_rule_hidden = CardGameRule(name="Hidden", description="The hidden rule means that a certain amount of cards in your enemies deck will be hidden.", icon="images/cardgame/rule_hidden.webp") +default card_rule_death = CardGameRule(name="Death", description="If your game ends in a draw you pick up the cards that are shown in your colour and play again.", icon="images/cardgame/rule_death.webp") +default card_rule_double = CardGameRule(name="Double", description="If the card you put down has the same number facing at least 2 other cards (Rather than higher/lower) you'll take over those cards.", icon="images/cardgame/rule_double.webp") +default card_rule_random = CardGameRule(name="Random", description="Your deck is selected randomly from the available cards.", icon="images/cardgame/rule_random.webp") + +default cards_realm = [card_genie, card_iris, card_jasmine, card_azalea, card_dahlia, card_maslab, card_aladdin, card_lilly, card_rasul, card_jafar] +default cards_hogwarts = [card_her_schoolgirl, card_her_librarian, card_lun_schoolgirl, card_sus_schoolgirl, card_cho_schoolgirl, card_fred, card_george, card_snape, card_dumbledore] +default cards_other = [card_santa] +default cards_items = [card_item_badge, card_item_barbell, card_item_beads, card_item_bird, card_item_bookchairs, card_item_bookgala, card_item_bookgala2, card_item_bookwaifu, card_item_broom, card_item_bdsm, card_item_condoms, card_item_desk, card_item_dildo, card_item_doll, card_item_elf, card_item_eromag, card_item_girlmag, card_item_hat, card_item_lingerie, card_item_lipstick, card_item_lube, card_item_owl, card_item_plugs, card_item_pornmag, card_item_potions, card_item_scroll, card_item_stockings, card_item_strapon, card_item_sweets, card_item_wine] +default cards_all = list(cards_realm) + list(cards_hogwarts) + list(cards_other) + list(cards_items) + +default cards_dynamic = [card_iris, card_jasmine, card_azalea, card_her_schoolgirl, card_her_librarian, card_lun_schoolgirl, card_sus_schoolgirl, card_cho_schoolgirl] + +default snape_first_deck = [card_snape.clone(), card_item_potions.clone(), card_item_elf.clone(), card_item_wine.clone(), card_item_lipstick.clone()] +default snape_second_deck = [card_snape.clone(), card_item_potions.clone(), card_item_elf.clone(), card_item_elf.clone(), card_item_eromag.clone()] +default snape_third_deck = [card_snape.clone(), card_item_potions.clone(), card_item_elf.clone(), card_item_elf.clone(), card_item_elf.clone()] + +default twins_first_deck = [card_fred.clone(), card_item_sweets.clone(), card_item_beads.clone(), card_item_sweets.clone(), card_item_condoms.clone()] +default twins_second_deck = [card_george.clone(), card_fred.clone(), card_item_doll.clone(), card_item_sweets.clone(), card_item_broom.clone()] + +default her_first_deck = [card_her_schoolgirl.clone(), card_item_girlmag.clone(), card_item_bookgala.clone(), card_item_bookgala2.clone(), card_item_bookchairs.clone()] +default her_second_deck = [card_her_schoolgirl.clone(), card_item_eromag.clone(), card_item_bookgala.clone(), card_item_bookgala2.clone(), card_item_bookchairs.clone()] +default her_third_deck = [card_her_librarian.clone(), card_item_pornmag.clone(), card_item_bookgala.clone(), card_item_bookgala2.clone(), card_item_bookchairs.clone()] + +define card_non_spec_char = ["I see you've been practising... so have I!", + "You've activated my trap card... wait... it's in my other deck!", + "You think you're so good, but this school has never seen a player of the likes of me! In this particular office...", + "Aha, you've walked right into my trap. Take this!", + "You'll never beat me! I will give you the reward though... in your dreams!", + "That's impossible... that card is legendary... wait, it doesn't have a shimmering effect, never mind.", + "I was sure my cards used to be good...", + "Wait, you've got that card... I've been such a fool! This is a witchmasters deck!", + "We're playing reverse rules right? Lowest amount of cards win?", + "If only slight of hand was taught at Hogwarts...", + "Wait, this can't be right. I must have put my good cards in my other robes.", + "You should be happy that they banned one of the cards that came in a cereal box promotion... that one was overpowered.", + "This one's a board sweeper!", + "I'll just burn this card... oh yeah, I got better cards coming.", + "This is a control deck. I'll win in the end don't you worry.", + "Maybe I should have made less of a filler deck... I'll get you in the end.", + "Your loss is inevitable. It's all in the heart of the cards.", + "Have you been Netdecking? Did those damn spiders in the forest tell you what cards to play?", + "I've been metagaming the crap out of you... I know exactly what cards you're going to play... except for that last one.", + "Oh, it's my turn? I was just thinking about how I'm going to celebrate after your inevitable loss.", + "I've been slowrolling you this whole time. My last card is a mega ultimate legendary.", + "What kind of deck is this... don't you even care about synergy?", + "I see what kind of player you are now... perhaps a more offensive approach is in order.", + "I was born to play card games... you merely adopted your liking of them.", + "Hahah, you don't even know that I have a card with powers that has been locked away for centuries... unfortunately I lost the key...", + "Prepare for a total wipe... your tears when I beat you that is.", + "You want to know what's shown on my cards? What do I like the most? Winning, which is why this card is going to guarantee my victory.", + "Life is like a game of Wizard Cards. If you don't win... you lose.", + "Quitters never win, winners never quit, but those who never win and never quit are idiots... I'm not sure which I am.", + "Go fish...", + "Do you have any spells to make you better at Wizard Cards? Didn't think so...", + "You can smell the roses as much as you want, while I smell the aroma of victory", + "Do you see any stars yet, because you're getting beaten pretty badly.", + "Well, your performance in this round is certainly a divine comedy.", + "The forecast today is calling for my victory, so I'm not worried.", + "Are you out of juice already?", + "Couldn't you see from your own fortune that you're bound to lose?", + "Looks like you fell right into your own trap... now look at this!! KAPOW", + "I don't need luck potion to beat you. That's how confident I am in my deck.", + "I know my deck like the back of my hand... wait, when did that mole get there?", + "Fool, you'll soon see my finishing move... but before that, UNO!", + "I'm so confident in my card collection I just shuffled and picked some at random before this game.", + "Great cards doesn't ensure a win. Right moves do.", + "The game balance of this game has been broken for centuries... and I have the winning cards.", + "The ministry of magic considered banning this game as they thought it all mattered what cards you had... something about gambling for children.", + "If I said that I picked my cards blindfolded would you believe me? Yes, they're all that good.", + "I tried to use transfiguration on one of my cards but it burnt up instead... I probably wasn't the first one who tried that.", + "Wait! Isn't that card banned? No, the stats aren't the same... phew", + "Why does that card of yours look so sticky?", + "Oh nice a shiny... wait, why has it stuck to the board?", + "That's nowhere near the best move you could've done. Check this out!", + "Even a troll would play better than you at this point... no offence.", + "Some people are half blood and some pure-blood. But I'm purely a Card playing genius.", + "That must be a new card. Why haven't I seen that one before?", + "Wait, my numbers must have changed. Did you put a spell on my cards?", + "Hit me... I mean, give me another card.", + "Ah, that one. Too bad I have the perfect counter.", + "So, when do I get to draw a card again?", + "Someone replaced one of my cards with a joker... I bet it was peeves.", + "I was told that face cards was the best ones to get... but they were talking about poker.", + "By Merlin's beard, where did you get that card?", + "Next time you should let me use the cards I drew. Their numbers are a lot better than these ones."] + +define snape_speech_card = ["You may have lived for hundreds of years but my superior intellect will outweigh your otherworldly powers.", + "When this is over I think I'll celebrate my victory with one of your nice bottles of alcohol.", + "You should stick to charming women... wizard cards is my game.", + "You said you were from a different world, another reality? Maybe in that reality you'd beat me at cards. But not this one!", + "We don't stop playing because we grow old, we grow old because we stop playing.", + "Where did you even find your trash cards? In a promotional pamphlet?", + "Why are my cards so much greasier than yours?"] + card_non_spec_char + +define twins_speech_card = ["Our cards are fresher than fresh. They were printed last night so they must be good.", + "Giving you a percentage of our profit was an easy bet, because we know you'll never win.", + "We weighed our packs before opening them so our cards must be rare.", + "Activate twin psychic link.", + "Some people wouldn't duel a duo because they can't maintain eye contact during play... or eye to card contact.", + "We're a two player team, so we get double the cards to chose from right?", + "We're not going easy on you just so you wont shut our shop down.", + "What's on our cards? Sweet, sweet profit of course.", + "Hey, that percentage we promised you... you mind lowering it a bit? I mean, a deal is a deal... but still.", + "You better open up the trade routes a bit more if you beat us. We don't want to deal with Filch if he finds where these cards came from.", + "We probably should have opened a few of our boosters but where's the fun without a bit of risk?"] + card_non_spec_char + +define her_speech_card = ["You should double the points you give me if I win... or at least consider it.", + "I'm great at wizards chess so beating you at this shouldn't be a problem...", + "I should have asked for house points if I beat you... oh well, too late now.", + "Have you been looking at my deck? That's cheating, you better whip yours out..."] + card_non_spec_char + + +init python: + + def card_exist(unlockedlist, cardobj): + for elm in unlockedlist: + if cardobj.title == elm.title: + return True + return False + replace_index = 0 + new_deck = [] + def create_random_deck(min, max, card_pool): + new_deck = [] + smalles_func = lambda elm1, elm2 : elm1.get_total_value() > elm2.get_total_value() + gretest_func = lambda elm1, elm2 : elm1.get_total_value() < elm2.get_total_value() + temp_pool = [] + temp_pool.extend(card_pool) + for card in xrange(0,5): + random_choice = renpy.random.choice(temp_pool) + + new_deck.append(random_choice) + del temp_pool[temp_pool.index(random_choice)] + + while min > get_deck_score(new_deck) or max < get_deck_score(new_deck): + replace_index = 0 + if new_deck < min: + replace_index = find_index_func(temp_pool, smalles_func) + else: + replace_index = find_index_func(temp_pool, gretest_func) + + + replace_index = clamp(replace_index,0,4) + random_choice = renpy.random.choice(temp_pool) + + temp_pool.append(new_deck[replace_index]) + new_deck[replace_index] = (random_choice) + del temp_pool[temp_pool.index(random_choice)] + + return new_deck + def find_index_func(seq, func): + func_index = 0 + for i in xrange(0, len(seq)): + if func(seq[func_index], seq[i]): + func_index = i + return func_index + + def get_deck_score(deck): + score = 0 + for card in deck: + score += card.get_total_value() + return score + + def get_image_size(image): + myDisplayable = im.Image(image) + myRender = renpy.render(myDisplayable, 800, 600, 0, 0) + sizes = myRender.get_size() + x = sizes[0] + y = sizes[1] + + return (x,y) + + def get_hex_string(red, green, blue, alpha=1.0): + red = str(hex( int( math.ceil( red*255))))[2:] + if not len(red) == 2: + red = "0"+red + green = str(hex(int(math.ceil( green * 255))))[2:] + if not len(green) == 2: + green = "0"+green + blue = str(hex(int(math.ceil( blue * 255))))[2:] + if not len(blue) == 2: + blue = "0"+blue + alpha = str(hex(int(math.ceil( alpha * 255))))[2:] + if not len(alpha) == 2: + alpha = "0"+alpha + + return "#" + red + green + blue + alpha + + def get_hex_string_tuple(color): + return get_hex_string(color[0], color[1], color[2], color[3]) + + def get_rgb_tuple(hex): + rgb = get_rgb_list(hex) + return tuple(rgb) + + def get_rgb_list(hex): + hex = hex.lstrip('#') + hex_len = len(hex) + rgb = list(int(hex[i:i + hex_len // 3], 16) for i in xrange(0, hex_len, hex_len // 3)) + if len(rgb) < 4: + rgb.append(255) # Add alpha + return rgb + + def get_width(image): + return get_image_size(image)[0] + + def get_height(image): + return get_image_size(image)[1] + + def reset_table_cards(): + global table_cards + + for y in xrange(0,3): + for x in xrange(0,3): + table_cards[x][y] = None + return + + def check_winner(player_deck): + global table_cards + playerpoints = len(player_deck) + + for y in xrange(0,3): + for x in xrange(0,3): + if table_cards[x][y] and table_cards[x][y].playercard: + playerpoints += 1 + if playerpoints > 5: + return "win" + elif playerpoints == 5: + return "draw" + else: + return "loss" + + def update_table(x, y, reverse, dobelt_number): + global table_cards + if reverse: + take_over = lambda a, b : a < b + else: + take_over = lambda a, b : a > b + + + if not y == 0 and not table_cards[x][y-1] == None and take_over(table_cards[x][y].topvalue, table_cards[x][y-1].bottomvalue): + table_cards[x][y-1].playercard = table_cards[x][y].playercard + + if not y == 2 and not table_cards[x][y+1] == None and take_over(table_cards[x][y].bottomvalue, table_cards[x][y+1].topvalue): + table_cards[x][y+1].playercard = table_cards[x][y].playercard + + if not x == 0 and not table_cards[x-1][y] == None and take_over(table_cards[x][y].leftvalue, table_cards[x-1][y].rightvalue): + table_cards[x-1][y].playercard = table_cards[x][y].playercard + + if not x == 2 and not table_cards[x+1][y] == None and take_over(table_cards[x][y].rightvalue, table_cards[x+1][y].leftvalue): + table_cards[x+1][y].playercard = table_cards[x][y].playercard + + if dobelt_number: + dobelt_found = [] + if not y == 0 and not table_cards[x][y-1] == None: + if table_cards[x][y].topvalue == table_cards[x][y-1].bottomvalue: + dobelt_found.append([x,y-1]) + + if not y == 2 and not table_cards[x][y+1] == None: + if table_cards[x][y].bottomvalue == table_cards[x][y+1].topvalue: + dobelt_found.append([x,y+1]) + + if not x == 0 and not table_cards[x-1][y] == None: + if table_cards[x][y].leftvalue == table_cards[x-1][y].rightvalue: + dobelt_found.append([x-1,y]) + + + if not x == 2 and not table_cards[x+1][y] == None: + if table_cards[x][y].rightvalue == table_cards[x+1][y].leftvalue: + dobelt_found.append([x+1,y]) + + if len(dobelt_found) > 1: + for card in dobelt_found: + table_cards[card[0]][card[1]].playercard = table_cards[x][y].playercard + + def add_card_to_deck(title): + for card in unlocked_cards: + if title == card.title: + card.copies += 1 + + class CardGameRule(object): + def __init__(self, **kwargs): + self.name = None + self.description = None + self.icon = None + self.__dict__.update(**kwargs) + + class Card(object): + sizes = (320, 480) + + def __init__(self, **kwargs): + self.playercard = True + self.textcolor = "{color=#ffffff}" + self.copies = 0 + self.description = "Description" + self.title = "Title" + self.imagepath = "images/cardgame/card.webp" + self.backside = "images/cardgame/t1/backside/gryffindor.webp" + + self.topvalue = 0 + self.bottomvalue = 1 + self.rightvalue = 2 + self.leftvalue = 3 + self.__dict__.update(**kwargs) + + def get_image(self, backside=False): + return self.backside if backside else self.imagepath + + def get_border(self): + if self.playercard: + return Transform("images/cardgame/border.webp", matrixcolor=TintMatrix(playercolor_rgb)) + return Transform("images/cardgame/border.webp", matrixcolor=TintMatrix(enemycolor_rgb)) + + def get_title(self): + return self.textcolor+self.title+"{/color}" + def get_amount(self): + return self.textcolor+"amount: " + str(self.copies+1)+"{/color}" + def get_totalvalue(self): + return self.textcolor+str(self.topvalue+self.bottomvalue+self.leftvalue+self.rightvalue)+"{/color}" + def get_total_value(self): + return self.topvalue+self.bottomvalue+self.leftvalue+self.rightvalue + + def get_description(self): + return self.textcolor+self.description+"{/color}" + + def clone(self): + return Card(title = self.title,imagepath=self.imagepath, topvalue=self.topvalue, bottomvalue=self.bottomvalue, rightvalue=self.rightvalue, leftvalue=self.leftvalue, playercard = self.playercard) + + def get_ai_score(self, table_of_cards, reverse, dobelt_number): + high_score = -1000 + position = (0,0) + wallscore = 3 + getcardscore = 12 + if reverse: + score_func = lambda a : 10 - a + take_over = lambda a, b : a < b + else: + score_func = lambda a : a + take_over = lambda a, b : a > b + + for y in xrange(0,3): + for x in xrange(0,3): + score = 0 + if table_cards[x][y] == None: + if not y == 0 and not table_cards[x][y-1] == None and table_cards[x][y-1].playercard: + if take_over(self.topvalue, table_cards[x][y-1].bottomvalue): + score += getcardscore + else: + score += score_func(self.topvalue) + else: + score += wallscore + + if not y == 2 and not table_cards[x][y+1] == None and table_cards[x][y+1].playercard: + if take_over(self.bottomvalue, table_cards[x][y+1].topvalue): + score += getcardscore + else: + score += score_func(self.bottomvalue) + else: + score += wallscore + + if not x == 0 and not table_cards[x-1][y] == None and table_cards[x-1][y].playercard: + if take_over(self.leftvalue, table_cards[x-1][y].rightvalue): + score += getcardscore + else: + score += score_func(self.leftvalue) + else: + score += wallscore + + if not x == 2 and not table_cards[x+1][y] == None and table_cards[x+1][y].playercard: + if take_over(self.rightvalue, table_cards[x+1][y].leftvalue): + score += getcardscore + else: + score += score_func(self.rightvalue) + else: + score += wallscore + + if dobelt_number: + dobelt_found = [] + if not y == 0 and not table_cards[x][y-1] == None: + if self.topvalue == table_cards[x][y-1].bottomvalue: + dobelt_found.append(table_cards[x][y-1]) + + if not y == 2 and not table_cards[x][y+1] == None: + if self.bottomvalue == table_cards[x][y+1].topvalue: + dobelt_found.append(table_cards[x][y+1]) + + if not x == 0 and not table_cards[x-1][y] == None: + if self.leftvalue == table_cards[x-1][y].rightvalue: + dobelt_found.append(table_cards[x-1][y]) + + + if not x == 2 and not table_cards[x+1][y] == None: + if self.rightvalue == table_cards[x+1][y].leftvalue: + dobelt_found.append(table_cards[x+1][y]) + + if len(dobelt_found) > 1: + for card in dobelt_found: + if card.playercard: + high_score += getcardscore + + if score > high_score: + high_score = score + position = (x, y) + + + return [high_score, position] diff --git a/game/scripts/minigames/cardgame/_card_game_.rpy b/game/scripts/minigames/cardgame/_card_game_.rpy new file mode 100644 index 00000000..b2394e55 --- /dev/null +++ b/game/scripts/minigames/cardgame/_card_game_.rpy @@ -0,0 +1,358 @@ +init python: + + def start_duel(opppent_deck, after_enemy = None, rules = None, duel_player_deck = None): + global standard_rules + global playerdeck + if rules == None: + rules = standard_rules + if duel_player_deck == None: + duel_player_deck = playerdeck + + backside_list = [] + for i in xrange(0, rules[0]): + backside_list.append(True) + for i in xrange(rules[0], len(opppent_deck)): + backside_list.append(False) + + ## Setup Deck ## + player_deck = [] + for card in duel_player_deck: + card.playercard = True + player_deck.append(card.clone()) + + enemy_deck = [] + for card in opppent_deck: + card.playercard = False + enemy_deck.append(card.clone()) + + # Display rules + game_rules_list = convert_rules(rules, player_deck) + if len(game_rules_list) > 0: + renpy.choice_for_skipping() + renpy.show_screen("rules_display", game_rules_list) + renpy.pause() + renpy.hide_screen("rules_display") + + ## Clean the table from last fight ## + reset_table_cards() + + ## Random check to see who start ## + coin_flip = renpy.random.randint(0,1) + if coin_flip == 0: + enemy_turn(enemy_deck, backside_list, rules[2], rules[3]) + + ## Game Loop ## + response_card = "" + while not(response_card == "win" or response_card == "loss"): + response_card = cardgame(enemy_deck, player_deck, backside_list, rules[2], rules[3]) + if response_card == "AfterEnemy" and not after_enemy == None: + after_enemy() + elif response_card == "Close": + return "Close" + elif response_card == "draw" and rules[1]: + for list_elm in table_cards: + for elm in list_elm: + if elm.playercard: + player_deck.append(elm) + else: + enemy_deck.append(elm) + + backside_list = [] + for i in xrange(0, rules[0]): + backside_list.append(True) + for i in xrange(rules[0], len(opppent_deck)): + backside_list.append(False) + reset_table_cards() + + elif response_card == "draw": + break + + return response_card + + + def cardgame(enemy_deck, player_deck, shown_backside, reverse, dobelt_number): + global selectcard + global selectenemycard + global table_cards + + renpy.hide_screen("main_room_menu") + renpy.show_screen("card_battle", player_deck, enemy_deck, shown_backside) + renpy.music.stop("weather") #Stop playing weather SFX + + _return = ui.interact() + + if _return in player_deck: + selectcard = player_deck.index(_return) + return "NewTurn" + elif _return in enemy_deck: + selectenemycard = enemy_deck.index(_return) + return "NewTurn" + + elif _return == "Close": + selectcard = -1 + selectenemycard = -1 + renpy.hide_screen("card_battle") + return _return + + elif _return == "unselect": + selectcard = -1 + selectenemycard = -1 + return "NewTurn" + + else: + if not selectcard == -1: + renpy.sound.play("sounds/card.ogg") + y = int(math.floor(int(_return)/3)) + x = int(_return)-(y*3) + + table_cards[x][y] = player_deck[selectcard] + table_cards[x][y].playercard = True + del player_deck[selectcard] + selectcard = -1 + selectenemycard = -1 + update_table(x,y,reverse, dobelt_number) + + renpy.pause(0.7) # Autoplay enemy card + if (len(player_deck) == 0 or len(enemy_deck) == 0): + response_card = check_winner(player_deck) + if response_card == "win": + renpy.show_screen("card_end_message", "You win!") + renpy.sound.play("sounds/card_win.ogg") #Fanfare + elif response_card == "draw": + renpy.show_screen("card_end_message", "Draw") + else: + renpy.show_screen("card_end_message", "You lost...") + renpy.pause(3.0) # Pause before end + renpy.hide_screen("card_end_message") + renpy.hide_screen("card_battle") + renpy.transition(dissolve) + return response_card + + enemy_turn(enemy_deck, shown_backside, reverse, dobelt_number) + renpy.sound.play("sounds/card.ogg") + if (len(player_deck) == 0 or len(enemy_deck) == 0): + response_card = check_winner(player_deck) + if response_card == "win": + renpy.show_screen("card_end_message", "You win!") + renpy.sound.play("sounds/card_win.ogg") + elif response_card == "draw": + renpy.show_screen("card_end_message", "Draw") + else: + renpy.show_screen("card_end_message", "You lost...") + renpy.pause(3.0) # Pause before end + renpy.hide_screen("card_end_message") + renpy.hide_screen("card_battle") + renpy.transition(dissolve) + return response_card + return "AfterEnemy" + else: + return "NewTurn" + + def enemy_turn(enemy_deck, shown_backside, reverse, dobelt_number): + global table_cards + high_score = 0 + high_score_card = None + high_score_pos = (0,0) + + #Fix for not finding a card + tuple_my = enemy_deck[0].get_ai_score(table_cards, reverse, dobelt_number) + high_score = tuple_my[0] + high_score_pos = tuple_my[1] + high_score_card = enemy_deck[0] + + for card in enemy_deck: + tuple_my = card.get_ai_score(table_cards, reverse, dobelt_number) + if tuple_my[0] > high_score: + high_score = tuple_my[0] + high_score_pos = tuple_my[1] + high_score_card = card + + x = high_score_pos[0] + y = high_score_pos[1] + del shown_backside[enemy_deck.index(high_score_card)] + del enemy_deck[enemy_deck.index(high_score_card)] + table_cards[x][y] = high_score_card + table_cards[x][y].playercard = False + update_table(x,y, reverse, dobelt_number) + return + + def convert_rules(rules, player_deck): + rules_list = [] + if rules[0] > 0: + rules_list.append(card_rule_hidden) + if rules[1]: + rules_list.append(card_rule_death) + if rules[2]: + rules_list.append(card_rule_reverse) + if rules[3]: + rules_list.append(card_rule_double) + is_random_deck = True + for x in xrange(len(player_deck)): + is_random_deck = is_random_deck and (player_deck[x].title is playerdeck[x].title) + if not is_random_deck: + rules_list.append(card_rule_random) + return rules_list + + def advance_tier(tier): + global geniecard_level + + renpy.show_screen("blktone") + renpy.show_screen("advance_deck") + renpy.transition(Dissolve(0.3)) + renpy.pause(1.0) + + renpy.play("sounds/magic4.ogg") + renpy.transition(Fade(0.2, 0.0, 0.8, color='#fff')) + geniecard_level = tier + # Change card image for each respective card. + for card in cards_dynamic: + card.imagepath = card.imagepath.split("_v")[0] + "_v{}.webp".format(geniecard_level) + renpy.show_screen("advance_deck") + + renpy.pause() + renpy.hide_screen("blktone") + renpy.hide_screen("advance_deck") + renpy.transition(Dissolve(0.3)) + + return + +screen card_battle(l_playerdeck, l_enemydeck, shown_cards): + zorder 13 + imagebutton idle "images/cardgame/card_table.webp" action Return("unselect") + + #fix card error when you select the last card + if not selectenemycard < len(l_enemydeck): + $ selectenemycard = -1 + + imagemap: + ground "images/cardgame/card_table.webp" + + for y in xrange(0,3): + for x in xrange(0,3): + if table_cards[x][y] == None: + hotspot (353+124*x, 25+184*y, 125, 182) clicked Return(str(x+y*3)) + else: + use cardrender(table_cards[x][y], 353+124*x, 25+184*y, cardzoom=0.375, animated=True) + + for i in xrange(0, len(l_playerdeck)): + if not selectcard == i: + use cardrender(l_playerdeck[i], 18,17+80*i, True) + + if not selectcard == -1: + use cardrender(l_playerdeck[selectcard], 54,17+80*selectcard) + + for i in xrange(0, len(l_enemydeck)): + if not selectenemycard == i: + use cardrender(l_enemydeck[i], 898,17+80*i, True, backside=shown_cards[i]) + + if not selectenemycard == -1: + use cardrender(l_enemydeck[selectenemycard], 860,17+80*selectenemycard, backside= shown_cards[selectenemycard]) + + use close_button + +transform cardrender_move(xpos_card, ypos_card, start_xy): + on start, show: + pos start_xy + linear 0.2 xpos absolute(xpos_card) ypos absolute(ypos_card) + +transform cardrender(pos, zoom): + pos pos + zoom zoom + +screen cardrender(card, xpos_card, ypos_card, interact=False, return_value=None, cardzoom=0.5, color=None, backside=False, animated=False): + zorder 14 + if return_value == None: + $ return_value = card + + $ img = card.get_image(backside=backside) + $ img_border = card.get_border() + + fixed: + xysize card.sizes + at cardrender((xpos_card, ypos_card), cardzoom) + + imagebutton: + style "empty" + + if not color is True and (color is False or (card.copies < 0)): + idle gray_tint(img) + hover gray_tint(image_hover(img)) + foreground gray_tint(img_border) + else: + idle img + hover image_hover(img) + foreground img_border + + if interact: + action Return(return_value) + + if not backside: + text str(card.topvalue) style "cardrender_text" pos (160, 35) + text str(card.bottomvalue) style "cardrender_text" pos (160, 445) + text str(card.leftvalue) style "cardrender_text" pos (35, 240) + text str(card.rightvalue) style "cardrender_text" pos (285, 240) + + #Total Value + text str(card.get_totalvalue()) style "cardrender_text" pos (60, 57) + +style cardrender_text: + color "#ffffff" + anchor (0.5, 0.5) + size 26 + +screen start_deck(): + zorder 26 + + for i in xrange(len(unlocked_cards)): + use cardrender(unlocked_cards[i],40+125*i,200, interact=False, cardzoom=0.375) + +screen advance_deck(): + tag advance_deck + zorder 26 + + for i in xrange(len(cards_dynamic)): + use cardrender(cards_dynamic[i],40+125*i,200, interact=False, cardzoom=0.375) + + text "Tier [geniecard_level]" size 32 color "#fff" ypos 100 xalign 0.5 outlines [ (2, "#000", 0, 0) ] + + use ctc + + +screen card_end_message(message): + zorder 15 + + text "{color=#FFF}{size=+40}[message]{/size}{/color}" xpos 540 ypos 300 xalign 0.5 yalign 0.5 outlines [ (5, "#000", 0, 0) ] + +screen rules_display(game_rules_list): + tag rules + zorder 16 + + add "interface/bld.webp" at fade_show_hide(0.15) + + vbox: + ypos 40 + spacing 20 + xalign 0.5 + xsize 640 + text "{color=#ffffff}Custom rules{/color}"size 32 xalign 0.5 + text "{color=#ffffff}This game uses some extra rules, it is recommended if it's your first time playing to read the description for the active rules.{/color}" xalign 0.5 + + frame: + xalign 0.5 + background "#7c716a" + vbox: + spacing 5 + for i in xrange(len(game_rules_list)): + hbox: + add game_rules_list[i].icon + text game_rules_list[i].name yalign 0.5 + frame: + background "#625954" + xfill True + text game_rules_list[i].description yalign 0.5 size 12 + add "images/cardgame/spacer.webp" + +label start_duel(opppent_deck, after_enemy = None, rules = None, duel_player_deck = None): + $ duel_response = start_duel(opppent_deck, after_enemy, rules, duel_player_deck) + call weather_sound + return diff --git a/game/scripts/minigames/cardgame/_deck_builder_.rpy b/game/scripts/minigames/cardgame/_deck_builder_.rpy new file mode 100644 index 00000000..9110ca37 --- /dev/null +++ b/game/scripts/minigames/cardgame/_deck_builder_.rpy @@ -0,0 +1,304 @@ +label deck_builder: + python: + for card in playerdeck: + card.playercard = True + label deck_builder_jump: + show screen deck_builder_screen + $ renpy.block_rollback() + $ _choice = ui.interact() + + if _choice in unlocked_cards: + $ selectcard = unlocked_cards.index(_choice) + jump deck_builder_jump + elif _choice == "gallery": + hide screen deck_builder_screen + show screen deck_builder_gallery + elif _choice == "back": + hide screen deck_builder_gallery + show screen deck_builder_screen + elif _choice == "Close": + $ selectcard = -1 + hide screen deck_builder_screen + jump main_room_menu + elif _choice == "guide": + $ selectcard = -1 + hide screen deck_builder_screen + jump deck_builder_guide + elif _choice == "inc": + $ currentpage += 1 + $ selectcard = -1 + jump deck_builder_jump + elif _choice == "dec": + $ currentpage -= 1 + $ selectcard = -1 + jump deck_builder_jump + elif _choice == "unselect": + $ selectcard = -1 + jump deck_builder_jump + else: + if not selectcard == -1: + python: + if unlocked_cards[selectcard].copies > -1: + unlocked_cards[selectcard].copies -= 1 + add_card_to_deck(playerdeck[int(_choice)].title) + playerdeck[int(_choice)] = unlocked_cards[selectcard] + selectcard = -1 + pass + jump deck_builder_jump + + else: + jump deck_builder_jump + +screen deck_builder_screen(): + zorder 8 + $ card_shown=5 + imagebutton idle "images/cardgame/deck_builder.webp" action Return("unselect") + + for i in xrange(0, clamp(card_shown, 0, (len(unlocked_cards))-(card_shown*currentpage))): + use cardrender(unlocked_cards[clamp(i+(currentpage*card_shown), 0, len(unlocked_cards))], 18,17+80*i, True) + + if not selectcard == -1: + use cardrender(unlocked_cards[selectcard], 885, 316) + #add im.Scale(unlocked_cards[selectcard].imagepath, card_width*0.5, card_height*0.5) xpos 885 ypos 316 + + vbox: + xpos 560 + ypos 320 + xsize 340 + ysize 33 + text "{size=-3}"+unlocked_cards[selectcard].get_title()+"{/size}" xalign 0 yalign 0.5 size 22 + + vbox: + xpos 760 + ypos 520 + xsize 112 + ysize 33 + text unlocked_cards[selectcard].get_amount() xalign 1 yalign 0.5 + + vbox: + xpos 560 + ypos 520 + xsize 112 + ysize 33 + text "{color=#ffffff}Value:{/color}"+unlocked_cards[selectcard].get_totalvalue() xalign 0 yalign 0.5 + + vbox: + xpos 560 + ypos 350 + xsize 300 + ysize 500 + text "{size=-5}"+unlocked_cards[selectcard].get_description()+"{/size}" + + for i in xrange(0,5): + use cardrender(playerdeck[i], 223+165*i, 17, True, return_value=i, color=True) + + imagebutton: + xpos 200 + ypos 380 + idle "images/cardgame/scrollup.webp" + if not currentpage <= 0: + hover "images/cardgame/scrollup_hover.webp" + action Return("dec") + + imagebutton: + xpos 200 + ypos 430 + idle "images/cardgame/scrolldown.webp" + if currentpage < math.ceil((len(unlocked_cards)-1)/card_shown): + hover "images/cardgame/scrolldown_hover.webp" + action Return("inc") + + #Page info + $ str_currentpage = currentpage+1 + $ str_currentpage_max = int(math.ceil((len(unlocked_cards)-1)/card_shown)+1.0) + text "{color=#FFFFFF}{size=-5}Page [str_currentpage]/[str_currentpage_max]{/size}{/color}" xpos 215 ypos 360 text_align 0.5 xalign 0.5 + + #Gallery button + imagebutton: + xpos 274 + ypos 310 + idle "images/cardgame/gallery.webp" + hover "images/cardgame/gallery_hover.webp" + action [Show("deck_builder_gallery"), Hide("deck_builder_screen")] + + #Guide button + imagebutton: + xpos 274 + ypos 400 + idle "images/cardgame/guide.webp" + hover "images/cardgame/guide_hover.webp" + action Return("guide") + + #Exit button + imagebutton: + xpos 274 + ypos 502 + idle "images/cardgame/exit.webp" + hover "images/cardgame/exit_hover.webp" + action Return("Close") + keysym "game_menu" + + #Easter egg + hbox: + xpos 1020 + ypos 296 + xsize 40 + ysize 40 + button action Jump("color_change") background "#ffffff00" + #add Solid(get_hex_string(playercolor_rgb)) + +screen deck_builder_gallery(): + zorder 8 + imagebutton idle "interface/desk/_bg_.webp" action NullAction() + + text "{size=+15}Gallery{/size}" ypos 15 xalign 0.5 + + for i, card in enumerate(cards_all): + + $ col = (i // 4) % 13 + $ row = i % 4 + + use cardrender(card, 18+80*col, 67+125*row, False, cardzoom=0.25, color=card_exist(unlocked_cards, card)) + + imagebutton: + anchor (1.0, 0.0) + ypos 18 + xalign 0.98 + + idle "images/cardgame/back.webp" + hover "images/cardgame/back_hover.webp" + action [Show("deck_builder_screen"), Hide("deck_builder_gallery")] + keysym "game_menu" + +label color_change: + python: + playercolor_rgb = tuple(color_picker(list(playercolor_rgb), False, "Player border")) + enemycolor_rgb = tuple(color_picker(list(enemycolor_rgb), False, "Enemy border")) + + jump deck_builder + +label deck_builder_guide: + $ deck_guide_page = 0 + $ deck_guide_zone = "" + $ deck_guide_helper = "" + call play_music("grape_soda") + show screen deck_builder_tutorial + with dissolve + + ">The goal of Wizard cards is to own the most cards on the playing field until all 9 slots are filled." + ">To win the game you have to pay attention to your deck but also enemy deck." + + # Sides guide + $ deck_guide_zone = "player_zone" + ">This is your deck." + ">You can have a maximum of five cards in your active deck." + $ deck_guide_zone = "enemy_zone" + ">This is your opponents deck." + ">Your opponents deck is also limited to five cards." + + # Inspection guide + $ deck_guide_zone = "" + $ deck_guide_page = 1 + ">You can inspect cards by clicking on them." + $ deck_guide_page = 2 + ">In the current version of the game you can also inspect enemy cards." + ">This might change later on if we feel like the game is not difficult enough." + + # Card guide + $ deck_guide_page = 1 + ">To place down a card simply select it and click on any of the empty fields." + $ deck_guide_page = 3 + ">You can place only one card per turn.\"" + $ deck_guide_zone = "card_zone" + $ deck_guide_helper = "border_guide" + ">Every card you place down is displayed with a Blue border and signifies that you own the card." + ">Your opponents cards are displayed in red." + + $ deck_guide_helper = "numbers_guide" + ">Numbers on the sides, top, and bottom indicate the power of the card in specific direction." + $ deck_guide_helper = "tier_guide" + ">This is what we call a card tier." + ">The shape and colour of it indicated rarity of the card while the number tells you the overall power of it." + $ deck_guide_helper = "" + ">The card currently displayed is a special card." + ">Special cards are unique and cannot be obtained more than once." + $ deck_guide_page = 33 + ">This card for example is simply called a girl card." + $ deck_guide_helper = "cho_stage2" + ">They also cannot be obtained more than once but the picture changes depending on how many challenges you have won." + ">You'll learn more about those as you play but the gist is..." + $ deck_guide_helper = "cho_stage3" + ">The more challenges you beat, the less clothes a character wears." + ">Cool, right?" + gen "Hell yes!" ("grin", xpos="far_left", ypos="head") + + $ deck_guide_helper = "" + $ deck_guide_page = 3 + ">Moving on." + gen "..." ("base", xpos="far_left", ypos="head") + # + $ deck_guide_zone = "fight_zone" + $ deck_guide_helper = "fight_guide" + $ deck_guide_page = 4 + ">Once a card is played, it can be taken by the other player when they place a card with a number higher than the side of the card facing that number." + $ deck_guide_helper = "border_guide" + ">When a card is taken its border changes colour." + $ deck_guide_zone = "" + $ deck_guide_helper = "" + $ deck_guide_page = 5 + ">The player with the most cards of their colour by the end wins the game." + + if not snape_know_cards: + gen "(Seems simple enough....)" ("base", xpos="far_left", ypos="head") + gen "(Wait... who the fuck do I play against?)" ("angry", xpos="far_left", ypos="head") + gen "(Maybe I should ask my good ole pal Snape if he has any cards...)" ("grin", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "(*Shudders*)" ("base", xpos="far_left", ypos="head") + gen "(Well... might as well...)" ("base", xpos="far_left", ypos="head") + + #$ _choice = ui.interact() + + #if _choice == "back": + call music_block + + hide screen deck_builder_tutorial + jump deck_builder + +screen deck_builder_tutorial(): + zorder 4 + #imagebutton idle "interface/desk/_bg_.webp" action None + + add "images/cardgame/guide/[deck_guide_page].webp" + + if not deck_guide_zone == "": + add "images/cardgame/guide/[deck_guide_zone].webp" + + if deck_guide_helper == "border_guide": + add "images/cardgame/guide/[deck_guide_helper].webp" xpos 600 ypos 250 + + if deck_guide_helper == "numbers_guide": + add "images/cardgame/guide/[deck_guide_helper].webp" xpos 540 ypos 300 xalign 0.5 yalign 0.5 + + if deck_guide_helper == "tier_guide": + add "images/cardgame/guide/[deck_guide_helper].webp" xpos 500 ypos 200 xalign 0.5 + + if deck_guide_helper == "cho_stage2": + add "images/cardgame/guide/[deck_guide_helper].webp" xpos 540 ypos 300 xalign 0.5 yalign 0.5 + + if deck_guide_helper == "cho_stage3": + add "images/cardgame/guide/[deck_guide_helper].webp" xpos 540 ypos 300 xalign 0.5 yalign 0.5 + + if deck_guide_helper == "cho_stage4": + add "images/cardgame/guide/[deck_guide_helper].webp" xpos 540 ypos 300 xalign 0.5 yalign 0.5 + + if deck_guide_helper == "fight_guide": + add "images/cardgame/guide/[deck_guide_helper].webp" xpos 540 ypos 360 xalign 0.5 + + ##Back button + #imagebutton: + # xpos 930 + # ypos 480 + # idle "images/cardgame/back.webp" + # hover "images/cardgame/back_hover.webp" + # action Return("back") + # keysym "game_menu" diff --git a/game/scripts/minigames/cardgame/_hermione_card_game_.rpy b/game/scripts/minigames/cardgame/_hermione_card_game_.rpy new file mode 100644 index 00000000..fd40b846 --- /dev/null +++ b/game/scripts/minigames/cardgame/_hermione_card_game_.rpy @@ -0,0 +1,370 @@ + + +# Hermione Duel Menu + +label hermione_cardgame_menu: + if her_know_cards == False: + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("base","base") + gen "Are you familiar with Wizard Cards?" ("base", xpos="far_left", ypos="head") + her "I've heard of it... it used to be a popular card game a decade or so ago." ("annoyed","squint") + gen "So, would you like to play it?" ("grin", xpos="far_left", ypos="head") + her "Do they even make the cards still? I don't think there's anyone in Hogsmeade stocking them." ("normal", "squint", "base", "mid") + her "So I wouldn't be able to play against you..." ("base","base") + her "Unless Fred and Geo..." ("clench","wide") + gen "Unless... who now?" ("base", xpos="far_left", ypos="head") + her "(Hermione... learn to keep your mouth shut.)" ("mad", "wide", "base", "R") + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "I'm sorry sir, I should have told you..." ("open", "base", "worried", "mid") + her "Fred and George have a secret shop set up in the school." ("normal", "base", "worried", "R") + gen "I see..." ("base", xpos="far_left", ypos="head") + her "Please don't tell them I told you." ("open","happyCl") + gen "So you say they might have some cards?" ("base", xpos="far_left", ypos="head") + her "Wha... yes, maybe." ("mad", "narrow", "base", "mid") + her "You're not going to shut them down are you?" ("angry", "squint", "base", "mid") + gen "Why should I? It's a free market is it not?" ("base", xpos="far_left", ypos="head") + gen "A little bit of competition with Hoemead is good for consumers." ("grin", xpos="far_left", ypos="head") + her "But...{w=0.3} I mean, yes of course." ("annoyed", "base", "worried", "mid") + gen "So you'll play if they stock some cards?" ("base", xpos="far_left", ypos="head") + her "I mean..." ("soft", "narrow", "base", "down") + gen "If they don't get shut down I mean." ("base", xpos="far_left", ypos="head") + her "Oh! Yes of course I'll play!" ("shock","wide") + her "..." ("soft", "wide", "worried", "stare") + her "Anything else you needed or am I free to go?" ("base", "base", "worried", "mid") + $ her_know_cards = True + jump hermione_requests + + elif her_know_cards and twins_know_cards == False: + gen "(I should talk to Fred and George about wizard cards first.)" ("base", xpos="far_left", ypos="head") + jump hermione_requests + + elif her_know_cards and twins_know_cards and not twins_cards_stocked: + gen "(I have to convince Fred and George to start stocking up cards in their shop first.)" ("base", xpos="far_left", ypos="head") + jump hermione_requests + + elif twins_cards_stocked_talk and not her_cards_stocked_talk: + gen "Hello again [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Hello [genie_name]." ("base","base") + gen "I wanted to thank you for mentioning the Weasley shop." ("base", xpos="far_left", ypos="head") + her "You're not shutting them down are you?" ("soft", "narrow", "worried", "down") + gen "Of course not, where else am I supposed to get my supplies from?" ("base", xpos="far_left", ypos="head") + her "Oh, yes... where." ("normal", "narrow", "base", "down") + gen "I hope you've picked up some cards because we're playing today!" ("grin", xpos="far_left", ypos="head") + her "Yes, I did pick up some earlier..." ("normal", "base", "base", "mid_soft") + her "I had to go make sure that you hadn't shut them down and somehow ended up with a deck of cards." ("mad", "closed", "angry", "mid") + gen "(Sounds like even I could learn some bartering tricks from those two.)" ("grin", xpos="far_left", ypos="head") + gen "So, how about some practice rounds then?" ("base", xpos="far_left", ypos="head") + her "*Ehm*... I've only recently started playing so I'm not that good yet." ("base", "narrow", "base", "mid_soft") + gen "Don't worry, after a few practice rounds you'll get up to speed, when you're ready we'll play the real challenge..." ("base", xpos="far_left", ypos="head") + $ her_cards_stocked_talk = True + jump hermione_duel_menu + + else: + if geniecard_level < 2: + label hermione_duel_menu: + menu: + "-First Duel-": + jump hermione_first_duel + "-Second Duel-" if her_first_win: + jump hermione_second_duel + "-You need to beat the first duel-" (style="disabled") if not her_first_win: + jump hermione_duel_menu + "-Challenge-" if her_second_win: + jump hermione_third_duel + "-You need to beat the second duel-" (style="disabled") if not her_second_win: + jump hermione_duel_menu + "-Never mind-": + jump hermione_requests + else: + jump hermione_random_duel + +label hermione_first_duel: + call play_music("grape_soda") + + $ renpy.call_in_new_context("start_duel", her_first_deck) + + if duel_response == "Close": + jump her_duel_cancel + + elif not duel_response == "win": + jump her_duel_lost + + hide screen blkfade + stop music fadeout 1 + if not her_first_win: + her "Well, that's interesting. I was sure that my deck would've been balanced enough..." ("angry", "closed", "angry", "mid") + gen "It's just a practice round, I'm sure you'll do better next time." ("grin", xpos="far_left", ypos="head") + her "Your smile says otherwise." ("mad", "narrow", "angry", "R") + gen "..." ("base", xpos="far_left", ypos="head") + $ her_first_win = True + pass + else: + her "This game is stupid, I'm leaving!" ("angry", "closed", "angry", "mid") + pass + + $ tokens += 1 + + call her_walk(action="leave") + jump end_hermione_event + +label hermione_second_duel: + call play_music("grape_soda") + + $ renpy.call_in_new_context("start_duel", her_second_deck) + + if duel_response == "Close": + jump her_duel_cancel + + elif not duel_response == "win": + jump her_duel_lost + + hide screen blkfade + stop music fadeout 1 + if not her_second_win: + her "I got 5 boosters, how isn't that enough to build a better deck than yours?" ("mad", "narrow", "annoyed", "mid") + gen "It's more important where you place those cards..." ("base", xpos="far_left", ypos="head") + her "I know what I'm doing..." ("open", "closed", "angry", "mid") + gen "So, do you want to take a break?" ("grin", xpos="far_left", ypos="head") + her "No, I'm ready..." ("soft", "narrow", "worried", "mid_soft") + gen "You sure?" ("base", xpos="far_left", ypos="head") + her "I said I'm ready." ("clench", "base", "angry", "mid") + $ her_second_win = True + jump hermione_duel_menu + pass + else: + her "This game is stupid, I'm leaving!" ("angry", "closed", "angry", "mid") + pass + + $ tokens += 1 + + call her_walk(action="leave") + jump end_hermione_event + +label hermione_third_duel: + her "I'll make my house proud, you'll see." ("grin","happy") + her "Wait, I should have asked for point for this." ("shock", "wide", "worried", "shocked") + gen "Too late, here we go." ("grin", xpos="far_left", ypos="head") + hide hermione_main + call play_music("cardgame") + play sound "sounds/Genie_VS_Hermione4.ogg" + show screen genie_vs_hermione + show screen move_genie + pause 1 + show screen versus + pause 1 + show screen move_hermione + pause 3 + hide screen move_genie + hide screen move_hermione + show screen genie_vs_hermione_smile + with hpunch + stop music fadeout 0 + pause + hide screen versus + hide screen genie_vs_hermione + hide screen genie_vs_hermione_smile + play music "music/vs_hermione.ogg" + + $ renpy.call_in_new_context("start_duel", her_third_deck, her_after) + + if duel_response == "Close": + jump her_duel_cancel + + elif not duel_response == "win": + jump her_duel_lost + + #Won third match + stop music fadeout 1 + hide screen blkfade + + if her_third_win == False: + her "Nooo, how's this even possible?" ("clench", "wide", "worried", "shocked") + her "I'm supposed to be the smartest girl in my year..." ("mad", "wide", "worried", "stare") + gen "Looks like Wisdom beats intelligence..." ("grin", xpos="far_left", ypos="head") + her "You don't have to patronise me, I'll get you next time. You'll see." ("upset", "squint", "base", "mid") + gen "You seem to have forgotten something..." ("grin", xpos="far_left", ypos="head") + her "Fine..." ("angry", "narrow", "base", "mid_soft") + her "Here..." ("mad", "narrow", "base", "mid_soft") + $ unlocked_cards += [card_her_librarian] + call give_reward("You have received a card!", "images/cardgame/t1/hermione/her_librarian_v1.webp") + $ her_third_win = True + $ tokens += 3 + else: + $ tokens += 1 + + her "I'll be going now, goodbye." + call her_walk(action="leave") + jump end_hermione_event + +label hermione_random_duel: + gen "Ready for another game of cards?" ("base", xpos="far_left", ypos="head") + + if her_whoring < 8: + her "You've already challenged me though..." ("open", "happy", "base", "R") + her "and I lost." ("annoyed", "narrow", "worried", "down") + gen "What if we made it a wager..." ("grin", xpos="far_left", ypos="head") + her "Like gambling? No thank you!" ("clench", "narrow", "annoyed", "mid") + gen "It's not gambling, just a friendly house point wager..." ("base", xpos="far_left", ypos="head") + her "Sounds like gambling to me..." ("normal", "squint", "base", "mid") + gen "So, how about it?" ("base", xpos="far_left", ypos="head") + her "I'll pass, [genie_name]..." ("open", "base", "worried", "R") + + gen "(Seems like she's a bit to pure minded to accept any kind of wager right now...)" ("base", xpos="far_left", ypos="head") + jump hermione_requests + else: + her "You've already challenged me though..." ("open", "happy", "base", "R") + her "and I lost." ("annoyed", "narrow", "worried", "down") + gen "What if we made it a wager?" ("grin", xpos="far_left", ypos="head") + her "Gambling you mean?" ("open", "base", "worried", "mid") + gen "Not for money obviously." ("base", xpos="far_left", ypos="head") + her "What are you suggesting then?" ("base","happy", cheeks="blush") + gen "Well, I was thinking house points." ("base", xpos="far_left", ypos="head") + her "House points..." ("normal", "happy", "base", "R") + her "How would this work then?" ("open", "happy", "base", "mid") + gen "Well, if you win I'll give you ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + her "Only ten?" ("annoyed", "narrow", "base", "mid_soft") + gen "Twenty then..." ("base", xpos="far_left", ypos="head") + her "And if I lose?" ("open", "happy", "base", "R") + gen "I'll take the same amount away." ("base", xpos="far_left", ypos="head") + gen "(As if she's going to let that happen...)" ("base", xpos="far_left", ypos="head") + her "..." ("normal","happyCl", cheeks="blush") + her "Okay... In that case to make it fair, let's add these extra rules..." ("open", "happy", "base", "mid_soft") + + label hermione_random_duel_rematch: + + call play_music("cardgame") + + $ random_player_deck = create_random_deck(0,150,unlocked_cards) + + $ random_enemy_deck = create_random_deck(get_deck_score(random_player_deck)-2, get_deck_score(random_player_deck)+8, cards_all) + + $ renpy.call_in_new_context("start_duel", random_enemy_deck, her_after, [5, False, False, True], random_player_deck) + + if duel_response == "Close": + jump her_duel_cancel + elif duel_response == "draw": + jump her_duel_draw + elif not duel_response == "win": + jump her_duel_lost + + #Won third match + stop music fadeout 1 + hide screen blkfade + + if not her_random_win: + $ her_random_win = True + $ tokens += 3 + else: + $ tokens += 1 + + gen "Seems like I've won this one [hermione_name]." ("base", xpos="far_left", ypos="head") + her "I noticed..." ("normal", "base", "worried", "R") + gen "You do know what this means, don't you?" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "base", "worried", "mid") + gen "This means I'm going to have to deduct twenty points from the Gryffindor house." ("grin", xpos="far_left", ypos="head") + her "Please, don't. I don't want the others to wake up tomorrow wondering why there's twenty house points missing..." ("open", "happyCl", "worried", "mid") + gen "Well, in that case..." ("base", xpos="far_left", ypos="head") + + menu: + "-Send Hermione to work, promoting the card game-" if not cardgame_work: + $ cardgame_work = True + gen "In that case, I think I have a good idea for a job..." ("grin", xpos="far_left", ypos="head") + her "A job?" ("open", "happy", "base", "mid") + gen "Yes, I'd like you to start helping the twins promote the card game..." ("base", xpos="far_left", ypos="head") + her "I can do that..." ("base", "base", "worried", "mid", cheeks="blush") + her "But not today if that's okay with you." ("open", "narrow", "worried", "down") + gen "That's fine, wouldn't want you to go there looking as defeated as you are at the moment." ("grin", xpos="far_left", ypos="head") + her "..." ("normal", "happy", "base", "R", cheeks="blush") + her "Did you need anything else?" ("open", "base", "base", "mid_soft", cheeks="blush") + call give_reward("Hermione can now work by helping the twins promote the card game.", "interface/icons/icon_gambler_hat.webp") + jump hermione_requests + "-Ask for a blowjob instead-": + jump hg_wager_bj + "-Deduct the points-": + pass + + gen "No, sorry miss Granger... Minus twenty points from Gryffindor..." ("base", xpos="far_left", ypos="head") + her "..." ("disgust", "narrow", "worried", "down") + her "Fine, that's fair..." ("open", "narrow", "base", "down") + her "But I'm done playing for today..." ("normal", "happyCl", "worried", "mid", cheeks="blush") + $ gryffindor -= 20 + + call her_walk(action="leave") + jump end_hermione_event + +label her_duel_draw: + stop music fadeout 1 + + menu: + "-Rematch-": + if geniecard_level == 1: + jump hermione_duel_menu + else: + jump hermione_random_duel_rematch + "-Stop playing-": + pass + + her "Okay, another time then..." + + call her_walk(action="leave") + jump end_hermione_event + +label her_duel_lost: + stop music fadeout 1 + + if geniecard_level > 1: + her "Hah, told you I'd do it!" + her "I'll take those points now." + gen "Fine, twenty to gryffindor." ("base", xpos="far_left", ypos="head") + $ gryffindor += 20 + + menu: + "-Rematch-": + if geniecard_level == 1: + jump hermione_duel_menu + else: + jump hermione_random_duel + "-Be a loser-": + pass + her "Cards not in your favour [genie_name]? Maybe next time..." + + call her_walk(action="leave") + jump end_hermione_event + +label her_duel_cancel: + show screen blkfade + with dissolve + stop music fadeout 1 + #jump return_office + hide screen blkfade + with dissolve + her "Cards not in your favour [genie_name]? Maybe next time..." + + call her_walk(action="leave") + jump end_hermione_event + +screen genie_vs_hermione(): + zorder 15 + add "images/cardgame/VS/background_twins.webp" xalign 0.5 yalign 0.5 +screen move_hermione(): + zorder 16 + add "images/cardgame/VS/hermione_01.webp" at move_in(300, 0.5) + +screen genie_vs_hermione_smile(): + zorder 16 + add "images/cardgame/VS/genie_03.webp" + add "images/cardgame/VS/hermione_02.webp" + text "Click to continue" xalign 0.5 yalign 1.0 + +init python: + def her_after(): + renpy.music.set_volume(0.5) + s_punch = renpy.random.randint(1, 4) + renpy.sound.play("sounds/card_punch%s.ogg" % s_punch) + # Prevents volume to change again when using rollback + renpy.block_rollback() + her_speech = her_speech_card[renpy.random.randint(0,len(her_speech_card)-1)] + renpy.say(her, her_speech) + renpy.hide_screen("hermione_main") + renpy.music.set_volume(1.0) + return diff --git a/game/scripts/minigames/cardgame/_loot_box_.rpy b/game/scripts/minigames/cardgame/_loot_box_.rpy new file mode 100644 index 00000000..110b661c --- /dev/null +++ b/game/scripts/minigames/cardgame/_loot_box_.rpy @@ -0,0 +1,53 @@ +screen card_lootbox(): + tag card_lootbox + zorder 9 + + use blktone + + for i in xrange(len(card_loot)): + if card_loot[i] in cards_realm: + frame: + style "empty" + xpos 110+125*i + ypos 116 + add "interface/achievements/glow.webp" align (0.5, 0.5) zoom 0.5 alpha 0.7 at rotate_circular + use cardrender(card_loot[i],228+125*i,200, interact=False, cardzoom=0.375) + + use ctc + +label card_lootbox: + python: + card_loot = [] + + cards_choice = [card_iris, card_jasmine, card_azalea, card_dahlia, card_aladdin, card_maslab, card_lilly, card_rasul, card_jafar, card_her_schoolgirl, card_lun_schoolgirl, card_sus_schoolgirl, card_cho_schoolgirl] + rand_card = None + + for i in xrange(5): + rand_card = random.choice(cards_items) + + if i == 4: + if random.randint(0, 103) <= 24: # 22.5% chance + rand_card = random.choice(cards_choice) + + if not card_exist(unlocked_cards, rand_card): + unlocked_cards += [rand_card] + else: + rand_card.copies += 1 + card_loot.append(rand_card) + + $ lootbox_ITEM.owned -= 1 + + show screen card_lootbox + with d3 + pause + hide screen card_lootbox + with d3 + + if lootbox_ITEM.owned > 0: + menu: + "-Open another pack-": + jump card_lootbox + "-Enough is enough-": + jump main_room_menu + + jump main_room_menu diff --git a/game/scripts/minigames/cardgame/_snape_card_game_.rpy b/game/scripts/minigames/cardgame/_snape_card_game_.rpy new file mode 100644 index 00000000..235efde1 --- /dev/null +++ b/game/scripts/minigames/cardgame/_snape_card_game_.rpy @@ -0,0 +1,612 @@ + + +# Snape Duel Menu + +label snape_duel_menu: + if geniecard_level == 1: + if not snape_know_cards: + gen "Ever heard of Wizard Cards?" ("base", xpos="far_left", ypos="head") + sna "What about them?" ("snape_05") + gen "Do you have any?" ("grin", xpos="far_left", ypos="head") + sna "I do, I collected some when I was younger... Never played though." ("snape_09") + gen "Why not?" ("base", xpos="far_left", ypos="head") + sna "Didn't really have anyone to play with so I stopped buying them." ("snape_06") + gen "Up for a game or two?" ("base", xpos="far_left", ypos="head") + sna "..." ("snape_03") + sna "Why not?" ("snape_02") + gen "What do I get if I win?" ("base", xpos="far_left", ypos="head") + sna "What do you mean? There never used to be prizes in Wizard Cards..." ("snape_01") + gen "What..." ("angry", xpos="far_left", ypos="head") + gen "No wonder this game never took off..." ("base", xpos="far_left", ypos="head") + gen "Let's just play a few practice rounds for now then." ("base", xpos="far_left", ypos="head") + sna "And then?" ("snape_05") + gen "..." ("base", xpos="far_left", ypos="head") + gen "And then we'll think about prizes." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_01") + sna "Fine, I'm confident enough to beat a beginner." ("snape_06") + sna "But first a bit of practice..." ("snape_02") + gen "Let's play." ("grin", xpos="far_left", ypos="head") + $ snape_know_cards = True + + menu: + "-First Duel-": + jump snape_first_duel + "-Second Duel-" if snape_first_win: + jump snape_second_duel + "-You need to beat the first duel-" (style="disabled") if not snape_first_win: + jump snape_duel_menu + "-Challenge-" if snape_second_win: + jump snape_third_duel + "-You need to beat the second duel-" (style="disabled") if not snape_second_win: + jump snape_duel_menu + "-Never mind-": + jump snape_ready + + else: + gen "Up for another game?" ("base", xpos="far_left", ypos="head") + if not snape_wager_talk: + sna "With you?" + sna "..." + + if sna_friendship < 30: + sna "no..." ("snape_03") + gen "Why not?" ("angry", xpos="far_left", ypos="head") + gen "What if we did a game as a part of a wager?" ("base", xpos="far_left", ypos="head") + sna "A wager..." ("snape_09") + sna "No, I have better things to do right now..." ("snape_06") + gen "(He doesn't seem that keen, maybe I should ask again when we know each other a bit better.)" ("base", xpos="far_left", ypos="head") + call nar(">Improve your relationship with Snape before trying again.") + jump snape_ready + + sna "Do you know how hard it is to progress with this game with no one to play against?" ("snape_03") + sna "I even traded some of my potion ingredients to some weird guy in Knockturn alley for one of the old booster packs..." ("snape_01") + sna "Turns out... That card I gave you, whilst not very powerful was quite rare." ("snape_08") + gen "Sounds like a you problem." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_29") + gen "How about we do a wager?" ("base", xpos="far_left", ypos="head") + sna "A wager?" ("snape_05") + gen "Yes, how about just one token and a wager on top of that to make it interesting." ("grin", xpos="far_left", ypos="head") + sna "..." ("snape_04") + sna "Fine, but only if it's on equal terms..." ("snape_10") + gen "What does that mean?" ("angry", xpos="far_left", ypos="head") + sna "It means, you set your prize and I'll set mine accordingly." ("snape_03") + gen "Okay, so..." ("base", xpos="far_left", ypos="head") + gen "If you win I'll give you some wine." ("base", xpos="far_left", ypos="head") + sna "Don't you provide me with plenty of wine anyway?" ("snape_05") + gen "I mean, I could stop doing it. The office has my name on it after all and last I checked that means whatever is in it belong to me as well." ("base", xpos="far_left", ypos="head") + sna "..." + gen "In a figurative way obviously. It doesn't actually have my name on the door." ("grin", xpos="far_left", ypos="head") + sna "Obviously..." ("snape_03") + gen "It's not like this office came with any of those Slytherin sluts you have yet to share with me..." ("base", xpos="far_left", ypos="head") + sna "Fine, if that's your only proposal. If you win then I'll give you something from my personal collection." ("snape_03") + gen "Like what?" ("angry", xpos="far_left", ypos="head") + sna "You'll see..." ("snape_02") + gen "(Must be something good if he's not going to tell me...)" ("base", xpos="far_left", ypos="head") + gen "I'm in." ("grin", xpos="far_left", ypos="head") + + $ snape_wager_talk = True + if wine_ITEM.owned < 1: + sna "Show me the bottle." + gen "What?" ("base", xpos="far_left", ypos="head") + sna "I want to see the wine first." + gen "I don't have one, right now..." ("base", xpos="far_left", ypos="head") + sna "That's a shame, the wager will have to wait then." + gen "Damn..." ("base", xpos="far_left", ypos="head") + gen "(I should see if I could find some more wine in that cupboard, or perhaps check the local store...)" ("base", xpos="far_left", ypos="head") + jump snape_ready + + else: + if wine_ITEM.owned < 1: + sna "Do you have it?" + gen "What?" ("base", xpos="far_left", ypos="head") + sna "The wine of course!" + gen "I don't..." ("base", xpos="far_left", ypos="head") + sna "That's a shame... Our wager will have to wait then." + gen "Can't we just duel anyway? I'm not intending to lose..." ("base", xpos="far_left", ypos="head") + sna "Neither am I." + sna "No wine, no duel." + gen "Damn!" ("base", xpos="far_left", ypos="head") + gen "(I should see if I could find some more wine in that cupboard, or perhaps check the local store...)" ("base", xpos="far_left", ypos="head") + jump snape_ready + + $ random_number = renpy.random.randint(1, 10) + + if random_number == 1: + sna "Sure, let's do it!" ("snape_02") + elif random_number == 2: + sna "Is there another bottle in it for me?" ("snape_05") + gen "If you win..." ("grin", xpos="far_left", ypos="head") + sna "Good." ("snape_02") + sna "Then let's begin..." ("snape_02") + elif random_number == 3: + sna "Same wager?" ("snape_05") + gen "Sure." ("base", xpos="far_left", ypos="head") + sna "Okay then..." ("snape_01") + sna "Let's do it." ("snape_02") + elif random_number == 4: + sna "Always!" ("snape_02") + sna "I'll make sure you lose this time Genie..." ("snape_01") + elif random_number == 5: + sna "My stock is filled so why not?" ("snape_03") + gen "Great." ("grin", xpos="far_left", ypos="head") + sna "Good luck... You'll need it." ("snape_02") + elif random_number == 6: + sna "You don't have to ask me twice." ("snape_02") + elif random_number == 7: + sna "Prepare to lose!" ("snape_10") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Let's just play..." ("base", xpos="far_left", ypos="head") + elif random_number == 8: + sna "I've been practising... there's no way I'll lose!" ("snape_10") + gen "Are you sure about that?" ("base", xpos="far_left", ypos="head") + sna "Yes, I came here to win..." ("snape_08") + elif random_number == 9: + sna "You're going to lose this time..." ("snape_04") + gen "In your dreams..." ("grin", xpos="far_left", ypos="head") + else: + sna "Of course!" ("snape_02") + sna "But I think we should up our wager a bit..." ("snape_02") + gen "In what way?" ("base", xpos="far_left", ypos="head") + sna "I was thinking maybe you could send the Granger girl to my room tonight if I win." ("snape_20") + if hg_pr_kiss.counter >= 3 or her_reputation >= 21: + gen "We'll see about that." ("base", xpos="far_left", ypos="head") + else: + gen "I doubt she would agree to that." ("base", xpos="far_left", ypos="head") + gen "Let's just stick to the original bet for now..." ("base", xpos="far_left", ypos="head") + sna "Fine..." ("snape_06") + + jump snape_random_duel + + + +label snape_first_duel: + sna "A bit dusty but this should do!" ("snape_03") + gen "You, or the deck?" ("base", xpos="far_left", ypos="head") + sna "I...{w=0.3} The deck, obviously." ("snape_14") + sna "Let's do this." ("snape_17") + + call play_music("grape_soda") + + $ renpy.call_in_new_context("start_duel", snape_first_deck) + + if duel_response == "Close": + jump snape_duel_cancel + + elif not duel_response == "win": + jump snape_duel_lost + + stop music fadeout 1 + hide screen blkfade + sna "Maybe I should've gone over the rules a bit more before trying this game again..." ("snape_05") + sna "Well played though." ("snape_04") + + call play_sound("door") + call hide_characters + call sna_chibi("hide") + with d3 + + $ snape_busy = True + + $ achievements.unlock("Cardwin") + $ snape_first_win = True + $ tokens += 1 + + jump main_room_menu + + + +label snape_second_duel: + sna "That first one was just a warm up, there's no way you'll beat me this time!" ("snape_16") + gen "Time to get our decks out." ("grin", xpos="far_left", ypos="head") + sna "...." ("snape_25") + sna "Let's just play." ("snape_04") + + call play_music("grape_soda") + + $ renpy.call_in_new_context("start_duel", snape_second_deck) + + if duel_response == "Close": + jump snape_duel_cancel + + elif not duel_response == "win": + jump snape_duel_lost + + stop music fadeout 1 + hide screen blkfade + sna "Not again... I swear these cards used to be good when I bought them." ("snape_07") + sna "They must've made them obsolete to get you to buy more." ("snape_04") + sna "So deliciously mischievous." ("snape_02") + + call play_sound("door") + call hide_characters + call sna_chibi("hide") + with d3 + + if not her_know_cards: + call bld + gen "This is awesome, I wonder if Miss Granger would want to play against me..." ("grin", xpos="far_left", ypos="head") + + $ snape_busy = True + + $ snape_second_win = True + $ tokens += 1 + + jump main_room_menu + + + +label snape_third_duel: + if not her_know_cards: + gen "(I should probably see if Hermione is interested and practise some more before challenging Snape.)" ("base", xpos="far_left", ypos="head") + jump snape_duel_menu + + if not twins_cards_stocked_talk: + gen "(I should wait for an owl from Fred and George and train with Hermione first.)" ("base", xpos="far_left", ypos="head") + jump snape_duel_menu + + gen "So, how about that prize?" ("base", xpos="far_left", ypos="head") + sna "Again with the prize..." ("snape_01") + gen "I'm bored okay... and I like prizes..." ("base", xpos="far_left", ypos="head") + sna "Fine, I challenge you!!" ("snape_10") + gen "..." ("base", xpos="far_left", ypos="head") + sna "You don't say it like that anymore?" ("snape_05") + gen "No, that's lame." ("base", xpos="far_left", ypos="head") + sna "You're not going to beat me again genie, I've practised with the greatest Wizard cards player there is!" ("snape_02") + gen "Me?" ("base", xpos="far_left", ypos="head") + sna "I... no, of course not." ("snape_14") + sna "Let's do this." ("snape_17") + sna "Show me what you got genie... Beat me and I'll give you a card from my collection and 3 tokens." ("snape_18") + gen "Bring it." ("base", xpos="far_left", ypos="head") + + call play_music("cardgame") + play sound "sounds/Genie_VS_Snape.ogg" + show screen genie_vs_snape + show screen move_genie + pause 1 + show screen versus + pause 1 + show screen move_snape + pause 2.5 + hide screen move_genie + hide screen move_snape + show screen genie_vs_snape_smile + pause + hide screen versus + hide screen genie_vs_snape + hide screen genie_vs_snape_smile + + $ renpy.call_in_new_context("start_duel", snape_third_deck, snape_after) + + if duel_response == "Close": + jump snape_duel_cancel + + elif not duel_response == "win": + jump snape_duel_lost + + #Won third match + stop music fadeout 1 + hide screen blkfade + + if snape_third_win == False: + sna "Impossible... There must be something wrong with my cards!" ("snape_05") + gen "They're old, that's what." ("base", xpos="far_left", ypos="head") + gen "Now to the prize..." ("base", xpos="far_left", ypos="head") + sna "Fine... Here's your tokens and one of my precious cards." ("snape_05") + sna "(You were a good card my boy. But it's time to grow up.)" ("snape_05") + $ snape_third_win = True + $ unlocked_cards += [card_snape] + call give_reward("You have received a special card!", "images/cardgame/t1/special/snape_v1.webp") + $ tokens += 3 + else: + $ tokens += 1 + + call play_sound("door") + call hide_characters + call sna_chibi("hide") + with d3 + + $ snape_busy = True + + jump main_room_menu + +label snape_random_duel: + call play_music("cardgame") + + $ random_player_deck = create_random_deck(0,150,unlocked_cards) + + $ random_enemy_deck = create_random_deck(get_deck_score(random_player_deck)-2, get_deck_score(random_player_deck)+8, cards_all) + + $ renpy.call_in_new_context("start_duel", random_enemy_deck, snape_after, [renpy.random.randint(0,3), False, True, False], random_player_deck) + + if duel_response == "Close": + $ wine_ITEM.owned -= 1 + jump snape_duel_cancel + elif duel_response == "draw": + jump snape_duel_draw + elif not duel_response == "win": + $ wine_ITEM.owned -= 1 + jump snape_duel_lost + + stop music fadeout 1 + hide screen blkfade + + python: + ingredients = filter(lambda x: x.price > 0, inventory.get_instances_of_type("ingredient")) + item = renpy.random.choice(ingredients) + + if not random_snape_win: + $ random_snape_win = True + + gen "Yes!" ("base", xpos="far_left", ypos="head") + gen "No wine for you.." ("grin", xpos="far_left", ypos="head") + sna "..." ("snape_04") + gen "Now, how about that prize we discussed." ("grin", xpos="far_left", ypos="head") + sna "Ah, yes... something from my collection." ("snape_05") + + $ item.owned += 1 + call give_reward("You've received [item.name] from Snape!", item) + + gen "What the fuck is this?" ("angry", xpos="far_left", ypos="head") + sna "As I said..." ("snape_01") + sna "Something from my collection..." ("snape_02") + gen "..." ("base", xpos="far_left", ypos="head") + sna "I'm the potions master, what did you think it was going to be?" ("snape_03") + gen "I don't know... Like a whip or something?" ("base", xpos="far_left", ypos="head") + sna "Hey, just because I reside in the dungeon it doesn't mean I--" ("snape_07") + gen "I bet you do have a whip..." ("grin", xpos="far_left", ypos="head") + sna "Well..." ("snape_12") + gen "Whatever, I'll take it." ("base", xpos="far_left", ypos="head") + + if not snape_office_intro_E2: + gen "Maybe I can find some use for it later..." ("base", xpos="far_left", ypos="head") + + sna "What, the whip--" ("snape_18") + sna "*Ohh*, the potion ingredient..." ("snape_14") + sna "There's plenty more where that came from if you want another game..." ("snape_24") + gen "I'll think about it." ("base", xpos="far_left", ypos="head") + + else: + $ random_choice = renpy.random.randint(0, 3) + if random_choice == 0: + gen "Another victory in the bag." ("grin", xpos="far_left", ypos="head") + sna "I don't get it..." ("snape_03") + sna "You must've been cheating." ("snape_04") + gen "Skill...{w=0.3} It's called skill." ("base", xpos="far_left", ypos="head") + elif random_choice == 1: + sna "Not again... Did you look at my cards before the game?" ("snape_10") + gen "How would I have done that?" ("base", xpos="far_left", ypos="head") + sna "I don't know..." ("snape_08") + sna "Some kind of Genie hocus pocus?" ("snape_07") + gen "..." ("base", xpos="far_left", ypos="head") + sna "*Hmm*... Perhaps that comment might've been a bit..." ("snape_25") + gen "Yeah, a just a little..." ("base", xpos="far_left", ypos="head") + sna "I'm just going to leave this here." ("snape_14") + elif random_choice == 2: + gen "Sweet, another win for me!" ("grin", xpos="far_left", ypos="head") + sna "I let you win that one..." ("snape_03") + gen "Sure you did." ("base", xpos="far_left", ypos="head") + elif random_choice == 3: + sna "Damn it!" ("snape_17") + gen "Hey, chill out... It's just a game." ("angry", xpos="far_left", ypos="head") + sna "Just a game?!" ("snape_18") + sna "Do you know what students from House Slytherin are known for, Genie?" ("snape_07") + gen "Well, from what you've told me... Being massive sluts?" ("grin", xpos="far_left", ypos="head") + sna "{size=+4}YES!{/size}" ("snape_08") + sna "Wait... No!" ("snape_16") + sna "We're known for being cunning..." ("snape_17") + gen "..." ("base", xpos="far_left", ypos="head") + sna "Cunning...{w=0.3} Genie." ("snape_18") + gen "Yeah, I got you." ("base", xpos="far_left", ypos="head") + gen "Hey, I could just give you another bottle..." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_12") + sna "No... I'll beat you next time." ("snape_16") + gen "That's the spirit." ("grin", xpos="far_left", ypos="head") + elif random_choice == 4: + sna "Maybe I should've gone over the rules a bit more before trying this game again..." ("snape_05") + sna "Well played though." ("snape_04") + + $ item.owned += 1 + call give_reward("You've received [item.name] from Snape!", item) + + if not snape_office_intro_E2: + gen "(I still don't have any use for it, but I won't turn down free shit.)" ("base", xpos="far_left", ypos="head") + + call play_sound("door") + call hide_characters + call sna_chibi("hide") + with d3 + + $ snape_busy = True + $ tokens += 1 + + jump main_room_menu + + + +label snape_special_duel: + call play_music("cardgame") + + $ random_enemy_deck = create_random_deck(get_deck_score(playerdeck)-2, get_deck_score(playerdeck)+8, cards_all) + + $ renpy.call_in_new_context("start_duel", random_enemy_deck) + + stop music fadeout 1 + hide screen blkfade + + if duel_response == "draw": + gen "Not another fucking--" ("angry", xpos="far_left", ypos="head") + her "*Gltch*, *Slurp*, *Gobble*" + gen "Draaaaaaw!" ("angry", xpos="far_left", ypos="head") + return "draw" + + elif not duel_response == "win" or duel_response == "Close": + sna "Well, well.. It appears I've--" + gen "{size=+4}Fuuuuuuuuck!{/size}" ("base", xpos="far_left", ypos="head") + return "loss" + + else: + gen "Yeeeeees!" ("grin", xpos="far_left", ypos="head") + gen "That's it you whore! Take it!" ("angry", xpos="far_left", ypos="head") + return "win" + + +label snape_duel_draw: + stop music fadeout 1 + + menu: + "-Rematch-": + if geniecard_level == 1: + jump snape_duel_menu + else: + jump snape_random_duel + "-Stop playing-": + pass + + sna "Alright, another time then..." + + jump main_room_menu + + +label snape_duel_lost: + hide screen blkfade + stop music fadeout 1 + + menu: + "-Rematch-": + if geniecard_level == 1: + jump snape_duel_menu + else: + gen "I demand a rematch!" ("base", xpos="far_left", ypos="head") + if wine_ITEM.owned < 1: + sna "It appears you've lost all of your bottles, maybe next time." + gen "You evil creature..." ("angry", xpos="far_left", ypos="head") + pass + else: + sna "Fine." + sna "More wine for me!" + jump snape_random_duel + "-Be a loser-": + pass + + if geniecard_level == 1: + sna "Cards not in your favour today? Maybe next time..." + else: # Rub it in + $ random_number = renpy.random.randint(1, 7) + if random_number == 1: + sna "Thanks for the bottle... Genie." + gen "...." ("angry", xpos="far_left", ypos="head") + elif random_number == 2: + gen "..." ("base", xpos="far_left", ypos="head") + gen "Good game..." ("base", xpos="far_left", ypos="head") + sna "Forgetting something?" + gen "Fine, here's your bottle..." ("base", xpos="far_left", ypos="head") + elif random_number == 3: + sna "Another win for me..." ("snape_02") + gen "And your last..." ("base", xpos="far_left", ypos="head") + sna "Sorry, can't hear you over the sound of my victory." ("snape_01") + gen "..." ("base", xpos="far_left", ypos="head") + elif random_number == 4: + sna "Child's play..." ("snape_02") + gen "I'm hundreds of years old you know..." ("base", xpos="far_left", ypos="head") + sna "And I beat you..." ("snape_02") + gen "just shows how luck based the game is honestly..." ("base", xpos="far_left", ypos="head") + elif random_number == 5: + sna "..." ("snape_02") + gen "Just take your prize and go." ("base", xpos="far_left", ypos="head") + elif random_number == 6: + sna "Nice one..." ("snape_02") + gen "Hey, don't be a bad winner." ("base", xpos="far_left", ypos="head") + sna "Hey, I was just--" ("snape_03") + sna "I see what you're doing..." ("snape_04") + sna "I'll have that wine now..." ("snape_02") + else: + sna "Hah!" + sna "I mean...{w=0.3} Good game." + gen "You're allowed to show enthusiasm you know..." ("base", xpos="far_left", ypos="head") + sna "I know, but it's bad for my image..." + gen "..." ("base", xpos="far_left", ypos="head") + gen "Whatever you say, here's your bottle." ("base", xpos="far_left", ypos="head") + + call play_sound("door") + call hide_characters + call sna_chibi("hide") + with d3 + + $ snape_busy = True + + jump main_room_menu + + +label snape_duel_cancel: + show screen blkfade + with dissolve + stop music fadeout 1 + hide screen blkfade + with dissolve + + if geniecard_level == 1: + sna "Cards not in your favour today? Maybe next time..." + else: + sna "In that case, it's a forfeit." + sna "I'll take that wine now." + gen "Wait a minute..." ("base", xpos="far_left", ypos="head") + sna "I don't make the rules, I just play by them." + gen "Fine..." ("base", xpos="far_left", ypos="head") + + call play_sound("door") + call hide_characters + call sna_chibi("hide") + with d3 + + $ snape_busy = True + + jump main_room_menu + + + +screen genie_vs_snape(): + zorder 16 + add "images/cardgame/VS/background_snape.webp" xalign 0.5 yalign 0.5 +screen move_genie(): + zorder 16 + add "images/cardgame/VS/genie_01.webp" at move_in(-300, 0.5) +screen versus(): + zorder 15 + add "images/cardgame/VS/vs.webp" +screen move_snape(): + zorder 16 + add "images/cardgame/VS/snape_01.webp" at move_in(300, 0.5) + +screen genie_vs_snape_smile(): + zorder 16 + add "images/cardgame/VS/genie_02.webp" + add "images/cardgame/VS/snape_02.webp" + text "Click to continue" xalign 0.5 yalign 1.0 + +init python: + def snape_after(): + renpy.music.set_volume(0.5) + s_punch = renpy.random.randint(1, 4) + renpy.sound.play("sounds/card_punch%s.ogg" % s_punch) + # Prevents volume to change again when using rollback + renpy.block_rollback() + renpy.say(sna,snape_speech_card[renpy.random.randint(0,len(snape_speech_card)-1)]) + renpy.music.set_volume(1.0) + return + + # Unused? + # def snape_after_special(): + # renpy.call("sna_main", "It's my time to shine, I'm counting on an explosive victory.", face="snape_02") + # renpy.call("her_main", "*Slurp*, *Slurp*, *Gobble*") + # renpy.say(g4, "*Ngh*... Not on my watch... I'll do my best to prevent any unwarranted explosions during the current circumstance...") + # renpy.call("sna_main", "Now you're talking! Usually I'm the one doing all the trash talk...", face="snape_28") + # renpy.say(m, "I feel like today especially it's important to keep the conversation going...") + # renpy.call("her_main", "*Gltch*, *Slurp*, *Gobble*") + # renpy.say(g4, "...") + # renpy.call("sna_main", "Great, I can't wait to see your face as I destroy you...", face="snape_22") + # renpy.say(m, "Surely you'd know by now I'm not the kind of person to lose--") + # renpy.call("her_main", "*Slurp*, *Slurp*, *Gobble*") + # renpy.say(g4, "My composure that easily...") + # renpy.call("sna_main", "I'll make you bust this time for sure... I can already taste victory...", face="snape_21") + # renpy.say(m, "That's not the only thing that someone will be tasting in a second...") + # return diff --git a/game/scripts/minigames/cardgame/_twins_card_game_.rpy b/game/scripts/minigames/cardgame/_twins_card_game_.rpy new file mode 100644 index 00000000..c43f5b7c --- /dev/null +++ b/game/scripts/minigames/cardgame/_twins_card_game_.rpy @@ -0,0 +1,293 @@ +label twins_first_duel: + call play_music("grape_soda") + + $ renpy.call_in_new_context("start_duel", twins_first_deck) + + if duel_response == "Close": + jump twins_duel_cancel + elif not duel_response == "win": + jump twins_duel_lost + + hide screen blkfade + stop music fadeout 1 + + if not twins_first_win: + twi "No way!" + ger "You must've been cheating." + gen "It's all in the cards boys." ("base", xpos="far_left", ypos="head") + ger "I can certainly see that..." + ger "Are you thinking what I'm thinking Fred?" + fre "I believe I am, George!" + fre "If the cards you have play such a big role..." + ger "You'd need to buy more and more just to stay competitive." + fre "And we..." + twi "We'll be rich!" + gen "So you'll stock some then?" ("base", xpos="far_left", ypos="head") + ger "Absolutely!" + ger "We'll send you an owl when we've set things up." + fre "So you better get ready for a rematch!" + twi "Because we'll win next time!" + gen "We'll see about that... I can't have students going around showing up to their headmaster can I?" ("base", xpos="far_left", ypos="head") + $ twins_first_win = True + $ twins_cards_delay = twins_cards_delay+game.day + pass + else: + twi "Not again.." + gen "Tough luck boys." ("base", xpos="far_left", ypos="head") + pass + + "You return to your office." + + $ tokens += 1 + + jump main_room + +label twins_second_duel: + if twins_cards_stocked == False: + gen "(I need to wait for an owl from them before we can duel again)" ("base", xpos="far_left", ypos="head") + jump twins_duel_menu + + fre "Good luck." + ger "You'll need it." + + play music "music/vs_twins.ogg" fadein 1.0 + play sound "sounds/Genie_VS_Twins_Teleport.ogg" + show screen genie_vs_twins + show screen move_genie + pause 1 + show screen move_twins + pause 3.5 + hide screen move_twins + hide screen move_genie + show screen genie_vs_twins_smile + with flash + pause + hide screen genie_vs_twins_smile + hide screen genie_vs_twins + + $ renpy.call_in_new_context("start_duel", twins_second_deck, twins_after) + + if duel_response == "Close": + jump twins_duel_cancel + + elif not duel_response == "win": + jump twins_duel_lost + + hide screen blkfade + stop music fadeout 1 + if not twins_second_win: + fre "I feel like we should have foreseen this." + ger "I blame Trelawney on this, she said that luck would be on our side today..." + fre "Well... A promise is a promise." + fre "Here's your reward." + ger "And we also heard about your wins against Snape so here's some extra tokens." + fre "Make sure to come back and spend those tokens in our token shop." + $ card_rand_twins = renpy.random.choice([[card_fred, "fred"], [card_george, "george"]]) + $ unlocked_cards += [card_rand_twins[0]] + call give_reward("You have received a special card!", "images/cardgame/t1/special/%s_v1.webp" % str(card_rand_twins[1])) + $ twins_second_win = True + $ tokens += 3 + else: + twi "Not again.." + gen "Tough luck boys." ("base", xpos="far_left", ypos="head") + $ tokens += 1 + + "You return to your office." + jump main_room + +label twins_random_duel: + if first_random_twins: + $ first_random_twins = False + gen "How about another game?" ("base", xpos="far_left", ypos="head") + twi "Sure, why not?" + fre "But let's make it a bit interesting." + gen "I was going to suggest something similar but go on..." ("base", xpos="far_left", ypos="head") + ger "Let's make a wager." + gen "Interesting... So what kind of wager are you boys suggesting?" ("base", xpos="far_left", ypos="head") + ger "How about a monetary one?" + gen "Of course, what else is there in this world other than monetary rewards?" ("base", xpos="far_left", ypos="head") + twi "Exactly!" + ger "Okay, how about..." + ger "If you win then we'll give you a cut from our weekly profits." + gen "That confident are we?" ("base", xpos="far_left", ypos="head") + twi "Always!" + gen "Well, if it's a monetary reward you're looking for..." ("base", xpos="far_left", ypos="head") + gen "Then how about if I lose, I'll give you ten gold?" ("base", xpos="far_left", ypos="head") + ger "Let me just do some maths real quick." + ger "..." + ger "... Carry the one..." + gen "Finished?" ("base", xpos="far_left", ypos="head") + ger "Just a second..." + ger "Done!" + if game.gold < 10: + ger "Unfortunately we will have to refuse." + gen "Why?" ("angry", xpos="far_left", ypos="head") + fre "{size=-2}The further extension to fractional values of your current income in the first instance on the establishment of a method of algebraical evolution which bears the same relation to arithmetical evolution that algebraical division bears to arithmetical division gives unsatisfactory results.{/size}" + gen "........... what?" ("base", xpos="far_left", ypos="head") + ger "It means you're broke, sir." + fre "Come back with your offer when you have more gold, professor." + gen "Fine.." ("base", xpos="far_left", ypos="head") + "You return to your office." + jump main_room + ger "Yes, that is quite satisfactory..." + fre "This deal is only until we leave Hogwarts by the way..." + gen "Obviously..." ("base", xpos="far_left", ypos="head") + fre "Just making sure that we have all grounds covered." + gen "Let's begin then..." ("base", xpos="far_left", ypos="head") + elif twins_profit == 0.2: + gen "Ready for another wager?" ("base", xpos="far_left", ypos="head") + ger "No, I think we've had quite enough of a dent in our profit margin..." + fre "We're almost half way to where we were before we introduced the card game." + gen "Only half?" ("angry", xpos="far_left", ypos="head") + ger "Yes, we still need to think about growth." + gen "(I should've asked for a cut to begin with.)" ("base", xpos="far_left", ypos="head") + gen "(Well, hopefully if I can get Miss Granger to help them promote their shop I'll see some more profit that week...)" ("base", xpos="far_left", ypos="head") + jump twins_menu + else: + gen "Ready for another wager?" ("base", xpos="far_left", ypos="head") + twi "Always!" + ger "Remember, after your first win we'll give you another 1%% from our weekly profits on your every subsequent victory." + gen "Is there a limit?" ("base", xpos="far_left", ypos="head") + fre "There is... But no offence sir, I doubt you're going to reach it." + gen "(We'll see about that...)" ("base", xpos="far_left", ypos="head") + gen "Okay then... If you two win then I'll give you ten gold." ("base", xpos="far_left", ypos="head") + ger "One second, professor." + ">George takes out a calculator and starts calculating something." + if game.gold < 10: + ger "We have to refuse." + gen "Why?" ("base", xpos="far_left", ypos="head") + fre "Long explanation or short?" + menu: + "-Long-": + fre "{size=-2}The further extension to fractional values of your current income in the first instance on the establishment of a method of algebraical evolution which bears the same relation to arithmetical evolution that algebraical division bears to arithmetical division gives unsatisfactory results.{/size}" + "-Short-": + ger "You are broke, sir." + fre "Come back with your offer when you have more gold, professor." + gen "Fine.." ("base", xpos="far_left", ypos="head") + "> You return to your office." + jump main_room + ger "Acceptable..." + twi "Let's play." + + call play_music("cardgame") + + $ random_player_deck = create_random_deck(0,150,unlocked_cards) + + $ random_enemy_deck = create_random_deck(get_deck_score(random_player_deck)-2, get_deck_score(random_player_deck)+8, cards_all) + + $ renpy.call_in_new_context("start_duel", random_enemy_deck, twins_after, [0, True, True, False], random_player_deck) + + if duel_response == "Close": + jump twins_duel_cancel + + elif not duel_response == "win": + jump twins_duel_lost + + hide screen blkfade + stop music fadeout 1 + if twins_random_win: + twi "Impossible!" + ger "How did you even do that? we weighed these packs for a reason..." + gen "You did what, sorry?" ("base", xpos="far_left", ypos="head") + fre "Don't mind him, he doesn't know what he's saying when he's angry." + gen "..." ("base", xpos="far_left", ypos="head") + gen "So... We had a deal." ("base", xpos="far_left", ypos="head") + fre "Yes, about that..." + gen "You're not backing out are you?" ("base", xpos="far_left", ypos="head") + fre "Of course not, I just wanted to make sure we're on the same page about this." + fre "You can come pick up your cut once a week." + ger "The amount may vary obviously." + fre "It all depends of how many sales we get that week." + fre "We're always looking to have someone help with promoting the shop and card game." + gen "(Sounds like something Hermione might be able to do.)" ("base", xpos="far_left", ypos="head") + gen "(After some convincing...)" ("base", xpos="far_left", ypos="head") + ger "I guess you're a part owner now, congratulations!" + gen "I suppose I am." ("base", xpos="far_left", ypos="head") + fre "Anything else?" + gen "No." ("base", xpos="far_left", ypos="head") + gen "Unless..." ("base", xpos="far_left", ypos="head") + twi "Unless?" + gen "Unless you're willing to do another wager?" ("base", xpos="far_left", ypos="head") + fre "We're not giving you another cut that big again..." + gen "Well, how about a lower percentage? I'll adjust my wager as well." ("base", xpos="far_left", ypos="head") + ger "We'll think about it..." + + call give_reward("You have received 5%% of the twins profits!", "interface/icons/cards.webp") + $ twins_profit += 0.05 + $ twins_random_win = False + $ tokens += 3 + elif twins_profit >= 1.2: + fre "Nice job but you've reached the cap I'm afraid." + ger "Yeah, don't want to go minus do we?" + $ tokens += 1 + else: + twi "Not again..." + gen "Time to pay up, boys." ("base", xpos="far_left", ypos="head") + ger "Fine... We'll up your profits by 1%%..." + $ tokens += 1 + $ twins_profit += 0.01 + + "You return to your office." + jump main_room + +label twins_duel_lost: + stop music fadeout 1 + if geniecard_level == 2: + gen "..." ("base", xpos="far_left", ypos="head") + gen "It would appear that I may have lost this one..." ("base", xpos="far_left", ypos="head") + twi "It appears so." + gen "Well then, here's your reward..." ("base", xpos="far_left", ypos="head") + $ game.gold -= 10 + + menu: + "-Rematch-": + jump twins_duel_menu + "-Be a loser-": + pass + + ger "Cards not in your favour professor? Maybe next time..." + "You return to your office." + + jump main_room + +label twins_duel_cancel: + show screen blkfade + with dissolve + stop music fadeout 1 + #jump return_office + hide screen blkfade + with dissolve + ger "Cards not in your favour professor? Maybe next time..." + "You return to your office." + + jump main_room + +screen genie_vs_twins(): + zorder 15 + add "images/cardgame/VS/background_twins.webp" xalign 0.5 yalign 0.5 +screen move_twins(): + zorder 16 + add "images/cardgame/VS/twins_01.webp" at move_in(300, 1) + +screen genie_vs_twins_smile(): + zorder 16 + add "images/cardgame/VS/genie_04.webp" + add "images/cardgame/VS/twins_02.webp" + text "Click to continue" xalign 0.5 yalign 1.0 + +init python: + def twins_after(): + renpy.music.set_volume(0.5) + s_punch = renpy.random.randint(1, 4) + renpy.sound.play( "sounds/card_punch%s.ogg" % s_punch) + # Prevents volume to change again when using rollback + renpy.block_rollback() + rnd_text = twins_speech_card[renpy.random.randint(0,len(twins_speech_card)-1)] + #$ rnd_twin = renpy.random.choice = [fre, goe] + + if renpy.random.randint(0, 1) == 0: + renpy.say(fre, rnd_text) + else: + renpy.say(ger, rnd_text) + renpy.music.set_volume(1.0) + return diff --git a/game/scripts/minigames/dueling/classes.rpy b/game/scripts/minigames/dueling/classes.rpy new file mode 100644 index 00000000..2b6c22af --- /dev/null +++ b/game/scripts/minigames/dueling/classes.rpy @@ -0,0 +1,181 @@ +# init python: +# # TODO: Optimize the render functions, they seem to be too resource heavy. + +# class class_draw_sign(renpy.Displayable): +# def __init__(self, width, height, shape): +# super(class_draw_sign, self).__init__(self) + +# self.width = width +# self.height = height + +# self.shape = shape + +# def render(self, width, height, st, at): +# render = renpy.Render(self.width, self.height) + +# for i in self.shape: +# render.canvas().circle((0, 0, 0), i, 10, 0) +# return render + +# class class_draw_shape(renpy.Displayable): +# def __init__(self, color, width, height, mode): +# super(class_draw_shape, self).__init__(self) + +# self.color = color +# self.mode = mode + +# self.width = width +# self.height = height + +# self.shape = [] + +# self.drawing = False +# self.active = True +# self.cached = False + +# def render(self, width, height, st, at): +# render = renpy.Render(self.width, self.height) + +# if self.mode == 0: +# for i in self.shape: +# render.canvas().circle(self.color, i, 5, 0) +# elif self.mode == 1: +# if self.shape: +# render.canvas().lines(self.color, False, self.shape, 10) +# return render + +# def event(self, ev, x, y, st): +# if self.active: +# if renpy.map_event(ev, 'mousedown_1'): +# self.drawing = True +# elif renpy.map_event(ev, 'mouseup_1'): +# self.drawing = False +# self.cached = False + +# if self.drawing: +# if ev.type == pygame.MOUSEMOTION: +# self.shape.append((x, y)) +# if self.mode == 1: +# renpy.redraw(self, 0) + +# else: +# if not self.cached: +# self.cached = True +# renpy.redraw(self, 0) + + +# class class_draw_canvas(renpy.Displayable): +# _precision = 10 +# interactive = True +# mode = 1 # 0 Precise, 1 fast + +# color = (211, 211, 211) # Green + +# def __init__(self, width, height, sign): +# super(class_draw_canvas, self).__init__(self) + +# self.width = width +# self.height = height +# self.sign = class_draw_sign(self.width, self.height, sign) + +# self.children = [] +# self.current_child = None + +# self.score = 0 + +# self.set_boundries() + +# def render(self, width, height, st, at): +# render = renpy.Render(self.width, self.height) +# render.place(self.sign, 0, 0) +# for child in self.children: +# render.place(child, 0, 0) +# return render + +# def event(self, ev, x, y, st): +# if self.width > x > 0 and self.height > y > 0: +# if self.interactive: +# if renpy.map_event(ev, 'mousedown_1'): +# #self.clear() +# new_child = class_draw_shape(self.color, self.width, self.height, self.mode) +# self.children.append(new_child) +# self.current_child = new_child +# renpy.redraw(self, 0) + +# if renpy.map_event(ev, 'mouseup_1'): +# self.current_child.cached = False +# self.current_child.active = False +# self.check_shape() + +# for child in self.children: +# child.event(ev, x, y, st) + +# def clear(self): +# for i in self.children: +# del i +# self.children = [] +# self.score = 0 +# renpy.redraw(self, 0) + +# def visit(self): +# return self.children + +# def check_shape(self): +# global _sign_value, _sign_max +# max_score = len(self.sign.shape) +# score = 0 +# temp = [] + +# if self.current_child.shape != []: +# for t in self.sign.shape: +# if t in temp: +# continue +# for i in self.current_child.shape: +# if t[0]-self.precision <= i[0] <= t[0]+self.precision and t[1]-self.precision <= i[1] <= t[1]+self.precision: +# temp.append(t) +# score += 1 +# break + +# for i in self.current_child.shape: +# if not self.boundries[0] <= i[0] <= self.boundries[2] or not self.boundries[1] <= i[1] <= self.boundries[3]: +# score -= 1 + +# if len(temp) < max_score: +# score -= max_score-len(temp) + +# print "scored %s out of %s" % (score, max_score) +# print "boundries = %s" % self.boundries +# if score > 0: +# self.score = round(100 * float(score)/float(max_score), 2) +# else: +# self.score = 0.0 +# _sign_value = 0.0 +# _sign_max = self.score + +# renpy.end_interaction(("result", self.score)) +# return + +# def set_boundries(self): +# self.boundries = [1000, 1000, -1000, -1000] + +# for i in self.sign.shape: +# self.boundries[0] = min(self.boundries[0], i[0]) +# self.boundries[1] = min(self.boundries[1], i[1]) +# self.boundries[2] = max(self.boundries[2], i[0]) +# self.boundries[3] = max(self.boundries[3], i[1]) +# self.boundries[0], self.boundries[1], self.boundries[2], self.boundries[3] = self.boundries[0]-self.precision, self.boundries[1]-self.precision, self.boundries[2]+self.precision, self.boundries[3]+self.precision +# return + +# @property +# def precision(self): +# return self._precision + +# @precision.setter +# def precision(self, value): +# self._precision = value +# self.set_boundries() + +# def force_redraw(self): +# renpy.redraw(self, 0) +# return +# diff --git a/game/scripts/minigames/dueling/signs.rpy b/game/scripts/minigames/dueling/signs.rpy new file mode 100644 index 00000000..cc174993 --- /dev/null +++ b/game/scripts/minigames/dueling/signs.rpy @@ -0,0 +1,151 @@ +# init 1 python: +# _sign_value = 0.0 +# _sign_max = 0.0 + +# s_shape = ((235, 129), (235, 128), (235, 125), (235, 123), (235, 122), (235, 120), (235, 118), (235, 117), (235, 114), (235, 113), (234, 111), (234, 108), (233, 106), (233, 104), (232, 103), (232, 102), (231, 100), (231, 99), (230, 96), (230, 95), (228, 93), (227, 90), (224, 88), (224, 86), (223, 84), (222, 84), (220, 83), (219, 82), (217, 80), (216, 80), (215, 79), (213, 77), (211, 76), (208, 75), (206, 74), (204, 74), (201, 74), (200, 74), (198, 74), (194, 74), (191, 74), (190, 74), (188, 74), (186, 74), (182, 74), (179, 75), (178, 76), (176, 76), (174, 76), (169, 78), (164, 80), (163, 80), (158, 82), (152, 84), (148, 86), (146, 87), (143, 89), (141, 90), (139, 92), (137, 93), (134, 95), (133, 96), (129, 100), (127, 103), (124, 107), (122, 109), (120, 112), (120, 113), (119, 116), (118, 119), (117, 123), (117, 126), (117, 130), (118, 132), (120, 136), (120, 137), (123, 141), (127, 144), (130, 148), (135, 152), (136, 153), (140, 155), (141, 156), (145, 158), (147, 159), (152, 163), (157, 166), (164, 168), (168, 172), (170, 172), (175, 176), (176, 176), (179, 179), (186, 183), (191, 188), (196, 191), (200, 195), (201, 196), (205, 200), (208, 203), (209, 204), (212, 208), (215, 212), (217, 215), (220, 218), (220, 219), (220, 221), (220, 223), (221, 224), (221, 226), (222, 228), (222, 231), (222, 234), (222, 236), (222, 239), (222, 241), (222, 245), (222, 246), (221, 248), (221, 250), (220, 252), (218, 255), (218, 256), (216, 259), (215, 263), (212, 265), (212, 269), (211, 270), (209, 272), (208, 272), (207, 275), (206, 275), (204, 277), (200, 280), (199, 282), (198, 282), (196, 284), (195, 284), (193, 285), (192, 285), (188, 286), (186, 287), (185, 287), (182, 287), (179, 288), (176, 288), (175, 288), (172, 288), (171, 288), (168, 287), (167, 287), (164, 286), (162, 285), (159, 284), (155, 281), (150, 278), (149, 277), (146, 275), (144, 275), (140, 272), (136, 268), (134, 267), (131, 265), (128, 263), (128, 262), (125, 260), (124, 260), (122, 257), (122, 256), (120, 255), (120, 254), (118, 253), (118, 252), (117, 252), (116, 251)) + +# tutorial_shape = [(228.0, 132.0), (229.0, 132.0), (230.0, 131.0), (232.0, 129.0), (232.0, 128.0), (232.0, 127.0), (233.0, 126.0), (233.0, 122.0), (234.0, 117.0), (234.0, 113.0), (234.0, 109.0), (233.0, 104.0), (230.0, 99.0), (228.0, 96.0), (228.0, 94.0), (226.0, 92.0), (226.0, 92.0), (222.0, 88.0), (221.0, 86.0), (219.0, 84.0), (217.0, 83.0), (216.0, 81.0), (215.0, 81.0), (212.0, 80.0), (212.0, 80.0), (210.0, 79.0), (207.0, 77.0), (204.0, 76.0), (201.0, 75.0), (196.0, 75.0), (196.0, 75.0), (192.0, 75.0), (191.0, 75.0), (186.0, 75.0), (180.0, 75.0), (175.0, 76.0), (169.0, 78.0), (165.0, 80.0), (160.0, 81.0), (154.0, 82.0), (150.0, 83.0), (146.0, 84.0), (145.0, 84.0), (143.0, 85.0), (139.0, 87.0), (138.0, 87.0), (136.0, 88.0), (132.0, 90.0), (130.0, 92.0), (127.0, 93.0), (124.0, 95.0), (122.0, 97.0), (122.0, 98.0), (120.0, 100.0), (120.0, 100.0), (119.0, 103.0), (117.0, 105.0), (116.0, 108.0), (116.0, 109.0), (116.0, 112.0), (116.0, 113.0), (116.0, 116.0), (118.0, 119.0), (118.0, 119.0), (120.0, 122.0), (121.0, 125.0), (124.0, 128.0), (126.0, 131.0), (127.0, 132.0), (130.0, 135.0), (132.0, 137.0), (134.0, 140.0), (136.0, 142.0), (139.0, 144.0), (143.0, 148.0), (145.0, 152.0), (148.0, 155.0), (149.0, 155.0), (152.0, 157.0), (152.0, 158.0), (156.0, 161.0), (156.0, 162.0), (160.0, 164.0), (164.0, 167.0), (168.0, 170.0), (172.0, 173.0), (177.0, 176.0), (178.0, 177.0), (180.0, 179.0), (185.0, 180.0), (189.0, 183.0), (192.0, 186.0), (195.0, 188.0), (198.0, 189.0), (201.0, 192.0), (204.0, 196.0), (206.0, 199.0), (208.0, 200.0), (211.0, 203.0), (212.0, 204.0), (213.0, 205.0), (213.0, 206.0), (215.0, 208.0), (216.0, 208.0), (216.0, 211.0), (217.0, 213.0), (219.0, 215.0), (220.0, 216.0), (221.0, 219.0), (221.0, 221.0), (221.0, 222.0), (222.0, 225.0), (223.0, 228.0), (223.0, 232.0), (223.0, 236.0), (223.0, 236.0), (223.0, 239.0), (223.0, 240.0), (223.0, 243.0), (223.0, 244.0), (223.0, 248.0), (223.0, 252.0), (222.0, 253.0), (222.0, 258.0), (221.0, 261.0), (220.0, 264.0), (219.0, 267.0), (217.0, 269.0), (216.0, 272.0), (216.0, 272.0), (214.0, 274.0), (212.0, 277.0), (209.0, 280.0), (207.0, 282.0), (204.0, 284.0), (204.0, 284.0), (202.0, 285.0), (201.0, 285.0), (198.0, 286.0), (195.0, 287.0), (192.0, 287.0), (189.0, 287.0), (188.0, 287.0), (186.0, 288.0), (183.0, 288.0), (182.0, 288.0), (179.0, 288.0), (176.0, 288.0), (172.0, 288.0), (169.0, 288.0), (168.0, 288.0), (165.0, 288.0), (164.0, 288.0), (162.0, 287.0), (159.0, 287.0), (156.0, 285.0), (153.0, 285.0), (153.0, 284.0), (151.0, 284.0), (150.0, 283.0), (149.0, 281.0), (148.0, 280.0), (146.0, 279.0), (144.0, 276.0), (140.0, 274.0), (138.0, 272.0), (137.0, 272.0), (132.0, 268.0), (132.0, 267.0), (132.0, 266.0), (128.0, 265.0), (127.0, 264.0), (125.0, 264.0), (124.0, 263.0), (123.0, 261.0), (121.0, 260.0), (120.0, 260.0), (120.0, 258.0), (119.0, 256.0), (118.0, 256.0), (117.0, 255.0), (116.0, 255.0), (116.0, 254.0)] + +# def lerp_sign_power(st, at): +# """Animate the text string value each fraction of a second""" +# # TODO: Find out if global vars can be replaced with class attributes instead. +# global _sign_value, _sign_max + +# if _sign_value < 25.0: +# val = _sign_value/25.0 +# col = Color("#FFFFFF").interpolate("#0000FF", val) +# elif 50.0 > _sign_value >= 25.0: +# val = max(_sign_value-25.0, 0.0)/25.0 +# col = Color("#0000FF").interpolate("#008000", val) +# elif 75.0 > _sign_value >= 50.0: +# val = max(_sign_value-50.0, 0.0)/25.0 +# col = Color("#008000").interpolate("#FFFF00", val) +# else: +# val = max(_sign_value-75.0, 0.0)/25.0 +# col = Color("#FFFF00").interpolate("#ff0000", val) + +# if _sign_value < _sign_max: +# _sign_value = min(_sign_value+1.11, _sign_max) + +# return Text("%.2f%%" % _sign_value, color=col, size=32, outlines=[(2, "#000", 0, 0)]), .01 +# else: +# return anim.Blink(Text("%.2f%%" % _sign_value, color=col, size=32, outlines=[(2, "#000", 0, 0)])), None + +# test_sign = class_draw_canvas(400, 400, s_shape) + +# screen draw_magic(): +# tag draw +# zorder 4 + +# use bld1 + +# frame: +# #background "#FFF" +# style "empty" +# padding (0, 0) +# xsize 400 +# ysize 400 +# xanchor 0.5 +# yanchor 0.5 +# align (0.5, 0.5) + +# add test_sign + +# add DynamicDisplayable(lerp_sign_power) xalign 0.5 yalign 0.9 + +# label magic_tutorial: +# "Magician" "Welcome to the very first prototype version of magic dueling!" +# menu: +# "Magician" "Would you like to read the rules and play the tutorial?" +# "Yes please!": +# pass +# "No, fuck off..": +# "Magician" "Rude.. but whatever." +# jump draw_magic + +# "Magician" "Draw shapes with mouse to get high score, high score lets you win, the point of the game is to win. Now go get them tiger!" +# gen "..............." ("base", xpos="far_left", ypos="head") +# "Magician" "Fine. I'll try to be more descriptive." +# $ test_sign.interactive = False +# show screen draw_magic +# "Magician" "The black shape you see on the screen is called a guideline shape." +# "Magician" "Your goal is to map the shape with your mouse pointer while holding left mouse button. You can start either from top or the bottom." +# $ _trash = class_draw_shape((51, 153, 0), 400, 400, 1) +# $ _trash.shape = tutorial_shape +# $ test_sign.children.append(_trash) +# $ test_sign.force_redraw() +# "Magician" "The closer you get to the original shape the more points you gain which translates to higher spell damage your pokem-- subordinate student will deal to their opponent." +# "Magician" "Now try drawing a shape with your mouse and score at least 50%%, unless you want to be stuck in this tutorial forever." + +# label .in_tutorial: + +# $ _sign_value = 0.0 +# $ _sign_max = 0.0 +# $ test_sign.clear() + +# $ test_sign.interactive = True + +# $ _choice = ui.interact() + +# if _choice[0] == "result": +# $ test_sign.interactive = False +# pause 3.0 +# if _choice[1] >= 50.0: +# "Magician" "Congratulations, you have passed the test with the score of [_sign_max]%%, I am proud of you!" +# menu: +# "Magician" "Would you like to keep playing?" +# "Yes": +# pass +# "No": +# hide screen draw_magic +# with d3 +# jump cheats.devroom +# else: +# "Magician" "You scored [_sign_max]%% Better luck next time." +# jump magic_tutorial.in_tutorial + +# jump draw_magic + +# label draw_magic: +# $ _sign_value = 0.0 +# $ _sign_max = 0.0 +# $ test_sign.clear() + +# label .after_init: +# $ test_sign.interactive = True + +# show screen draw_magic + +# $ _choice = ui.interact() + +# if _choice[0] == "result": +# $ test_sign.interactive = False +# pause 3.0 + +# if _choice[1] == 0.0: +# "Magician" "You suck." +# elif 25.0 > _choice[1] > 0.0: +# "Magician" "You still suck." +# elif 50.0 > _choice[1] > 25.0: +# "Magician" "You're average." +# elif 75.0 > _choice[1] > 50.0: +# "Magician" "You're above average." +# elif 100.0 > _choice[1] > 75.0: +# "Magician" "You're good." +# else: +# "Magician" "Holy shit! CRITICAL HIT!" + +# menu: +# "Magician" "Try again?" +# "Yes": +# $ _sign_value = 0.0 +# $ _sign_max = 0.0 +# $ test_sign.clear() +# jump draw_magic.after_init +# "No, I'm done playing your stupid games!": +# "{size=-5}Magician{/size}" ":(" +# pass + +# hide screen draw_magic +# with d3 +# jump cheats.devroom diff --git a/game/scripts/minigames/dueling/snape_duel.rpy b/game/scripts/minigames/dueling/snape_duel.rpy new file mode 100644 index 00000000..20ed4c59 --- /dev/null +++ b/game/scripts/minigames/dueling/snape_duel.rpy @@ -0,0 +1,550 @@ +define genie_max_hp = 1000 +define snape_max_hp = 2000 + +default genie_hp = genie_max_hp +default snape_hp = snape_max_hp + +default blocking = False +default snape_blocking = False + +default pentogram = False + +default duel_OBJ = silver_duel() + +init python: + class silver_duel(object): + in_progress = False + snape = "" + genie = "" + + def show(self,image=None,x=720,y=250,z=5): + renpy.show(image,at_list=[Position(xpos=x, ypos=y, xanchor="center", yanchor="center")],layer="screens",zorder=z) + def hide(self,image=None): + renpy.hide(image,layer="screens") + +label duel: + ### DUEL ### + $ d_flag_01 = False #Turns True after conversation triggered when Genie's HP runs low. + $ d_flag_02 = False #Turns True after conversation triggered when Snape's HP runs low. + + # Hide all the screens. + + hide screen notes #A bunch of notes poping out with a "win" sound effect. + hide screen ui_top_bar + hide screen ctc + hide screen snape_defends + call gen_chibi("hide") + hide screen blkfade + + + ### Set Duel Defaults ### + $ genie_hp = genie_max_hp + $ snape_hp = snape_max_hp + + $ blocking = False #True when "block" command is chosen, when Gennie turn into a guard. + $ snape_blocking = False #True when Snape goes into defensive stance. + $ pentogram = False #True when pentagram been casted an is displayed on the floor. + $ used_tease = False + $ in_action = False + + show screen duel + show screen hp_bar + + hide screen snape_glass + hide screen bld1 + with fade + + call bld + gen "This is foolish... You are no match for me..." ("base", xpos="far_left", ypos="head") + sna "Amusing..." ("snape_01", ypos="head", wand=True) + gen "{size=-4}(Actually my human body is quite weak...){/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-4}(But I should still be way more powerful than any human wizard...){/size}" ("base", xpos="far_left", ypos="head") + sna "Let the duel begin!" ("snape_01", wand=True) + hide screen bld1 + hide snape_main + + $ duel_OBJ.in_progress = True + with d3 + + jump duel_main + +label duel_main: + if blocking: + $ duel_OBJ.show("smoke",x=520, y=318,z=5) + $ duel_OBJ.genie = "" + $ blocking = False + + if genie_hp <= 300 and not d_flag_01: + $ d_flag_01 = True + sna "Ready to give up yet?" ("snape_01", ypos="head", wand=True) + gen "*Tsk*..." ("angry", xpos="far_left", ypos="head") + hide snape_main + with d3 + + if snape_hp <= 400 and not d_flag_02: + $ d_flag_02 = True + gen "{size=-4}(He is getting weaker, I can feel it!){/size}" ("angry", xpos="far_left", ypos="head") + sna "*Panting*" ("snape_01", ypos="head", wand=True) + hide snape_main + with d3 + + hide screen bld1 + call screen duel_buttons + + +screen duel_buttons(): + zorder 3 + + imagebutton: # tease + xpos 726 + yalign 1.0 + focus_mask True + if not used_tease and not in_action: + idle "images/dueling/snape/attack_tease.webp" + hover image_hover("images/dueling/snape/attack_tease.webp") + action [Jump("main_tease")] + else: + idle gray_tint("images/dueling/snape/attack_tease.webp") + if not in_action: + hover image_hover(gray_tint("images/dueling/snape/attack_tease.webp")) + action [Jump("main_tease")] + imagebutton: # attack + xpos 802 + yalign 1.0 + focus_mask True + if not in_action: + idle "images/dueling/snape/attack_melee.webp" + hover image_hover("images/dueling/snape/attack_melee.webp") + action [Jump("main_attack")] + else: + idle gray_tint("images/dueling/snape/attack_melee.webp") + if not in_action: + hover image_hover(gray_tint("images/dueling/snape/attack_melee.webp")) + action [Jump("main_attack")] + imagebutton: # aguard + xpos 868 + yalign 1.0 + focus_mask True + if not in_action: + idle "images/dueling/snape/attack_defend.webp" + hover image_hover("images/dueling/snape/attack_defend.webp") + action [Jump("main_defend")] + else: + idle gray_tint("images/dueling/snape/attack_defend.webp") + if not in_action: + hover image_hover(gray_tint("images/dueling/snape/attack_defend.webp")) + action [Jump("main_defend")] + imagebutton: # item + xpos 954 + yalign 1.0 + focus_mask True + if potions > 0 and not in_action: + idle "images/dueling/snape/attack_item.webp" + hover image_hover("images/dueling/snape/attack_item.webp") + action [Jump("main_potion")] + else: + idle gray_tint("images/dueling/snape/attack_item.webp") + if not in_action: + hover image_hover(gray_tint("images/dueling/snape/attack_item.webp")) + action [Jump("main_potion")] + +label main_tease: + $ in_action = True + + if not used_tease: + $ used_tease = True + call nar(">You turn around and start shaking your buttocks violently.") + sna "What the hell are you doing?" ("snape_05", wand=True) + gen ".......{w=1.0} teasing you?" ("base", xpos="far_left", ypos="head") + sna "........." ("snape_14", wand=True) + sna "Stop mocking me!" ("snape_08", wand=True) + sna "Prepare to die!" ("snape_15", wand=True) + gen "shit!" ("angry", xpos="far_left", ypos="head") + hide screen bld1 + hide snape_main + with d3 + pause 1 + #$ in_action = False + jump snapes_turn + else: + gen "No way I'm doing THAT again..." ("base", xpos="far_left", ypos="head") + $ in_action = False + jump duel_main + +label main_attack: + $ in_action = True + + if snape_blocking: + $ snape_blocking = False + pause 1 + jump snape_defends + else: + jump genie_attack + +label main_defend: + $ in_action = True + $ blocking = True + $ renpy.play('sounds/magic4.ogg') + $ duel_OBJ.show("smoke",x=520, y=318,z=5) + $ duel_OBJ.genie = "defend" + pause 1 + jump snapes_turn + +label main_potion: + $ in_action = True + if potions > 0: + jump potion + else: + gen "Crap! I'm out of healing potions!" ("base", xpos="far_left", ypos="head") + $ in_action = False + jump duel_main + +### SNAPE DEFENDS ### (Snape -0 HP) +label snape_defends: + $ renpy.play('sounds/magic4.ogg') + $ duel_OBJ.show("smoke",x=520, y=318,z=5) + $ duel_OBJ.show("snape_defend",x=720, y=250,z=4) + $ duel_OBJ.snape = "block" + pause 1 + $ renpy.play('sounds/attack_axe.ogg') + + pause 1.3 + hide screen duel_damage + show screen duel_damage(0) + + $ duel_OBJ.hide("snape_defend") + $ duel_OBJ.snape = "" + $ duel_OBJ.genie = "barb" + pause 1 + + $ duel_OBJ.show("smoke",x=520, y=318, z=5) + $ duel_OBJ.genie = "" + pause 1 + + jump snapes_turn + +### GENIE ATTACK ### (Snape -100 HP) +label genie_attack: + $ renpy.play('sounds/magic4.ogg') + $ duel_OBJ.show("smoke",x=520, y=318, z=5) + $ duel_OBJ.show("genie_attack",x=720,y=250,z=4) + $ duel_OBJ.genie = "attack" + pause 1 + $ renpy.play('sounds/attack_axe.ogg') + pause 1.8 + + if pentogram: + hide screen duel_damage + if game.difficulty <= 1: #Easy + show screen duel_damage(500) + $ snape_hp -= 500 + elif game.difficulty == 2: #Normal + show screen duel_damage(500) + $ snape_hp -= 500 + else: #Hardcore + show screen duel_damage(500) + $ snape_hp -= 500 + else: + hide screen duel_damage + if game.difficulty <= 1: #Easy + show screen duel_damage(300) + $ snape_hp -= 300 + elif game.difficulty == 2: #Normal + show screen duel_damage(200) + $ snape_hp -= 200 + else: #Hardcore + show screen duel_damage(100) + $ snape_hp -= 100 + + pause 1 + if snape_hp <= 100: #Check for gameover + jump snape_lost + + $ duel_OBJ.show("smoke",x=520, y=318,z=5) + $ duel_OBJ.hide("genie_attack") + $ duel_OBJ.genie = "" + pause 1 + + jump snapes_turn + + +### SNAPE'S TURN ### +label snapes_turn: + if pentogram: + $ pentogram = False + $ duel_OBJ.snape = "hand" + $ duel_OBJ.show("hand",x=720, y=250,z=4) + $ renpy.play('sounds/attack_snape3.ogg') + pause 1.5 + $ renpy.play('sounds/attack_snape4.ogg') + + if blocking: # GENIE BLOCKS AGAINST THE HAND.(Genie -50 HP) + $ duel_OBJ.hide("hand") + $ duel_OBJ.genie = "hand" + $ duel_OBJ.show("hand_guard",x=720, y=250,z=4) + pause 1.8 + $ duel_OBJ.hide("hand_guard") + $ duel_OBJ.snape = "" + + hide screen duel_damage + if game.difficulty <= 1: #Easy + show screen duel_damage(0, False) + elif game.difficulty == 2: #Normal + show screen duel_damage(100, False) + $ genie_hp -= 100 + else: #Hardcore #Shouldn't increase the penalty if you blocked correctly... + show screen duel_damage(100, False) + $ genie_hp -= 100 + + if genie_hp < 50: #Check for gameover + jump genie_lost + + $ duel_OBJ.show("smoke",x=520, y=318,z=5) + $ duel_OBJ.genie = "" + $ in_action = False + jump duel_main + + + else: # GENIE DOESN'T BLOCK AGAINST THE HAND. (Genie -400 HP) + $ duel_OBJ.hide("hand") + $ duel_OBJ.genie = "hand" + $ duel_OBJ.show("hand_genie") + pause 1.3 + $ duel_OBJ.hide("hand_genie") + $ duel_OBJ.snape = "" + + hide screen duel_damage + if game.difficulty <= 1: #Easy + show screen duel_damage(300, False) + $ genie_hp -= 300 + elif game.difficulty == 2: #Normal + show screen duel_damage(400, False) + $ genie_hp -= 400 + else: #Hardcore + show screen duel_damage(500, False) + $ genie_hp -= 500 + + if genie_hp < 50: #Check for gameover + jump genie_lost + + $ duel_OBJ.genie = "" + $ in_action = False + jump duel_main + + + else: + if snape_blocking: + $ snape_blocking = False + if blocking: + jump snape_attack_guard + else: + jump snape_attack + + $ snape_decides = renpy.random.randint(1, 2) + + if snape_decides in [1]: #BLOCK + $ snape_blocking = True + $ duel_OBJ.snape = "defend" + pause 1 + $ in_action = False + jump duel_main + + elif snape_decides in [2]: #MAGIC. CASTS THE PICTOGRAM. + $ duel_OBJ.snape = "hand" + $ duel_OBJ.show("snape_summon",720,250,4) + $ renpy.play('sounds/attack_snape2.ogg') + pause.8 + $ pentogram = True + pause 1 + $ duel_OBJ.hide("snape_summon") + $ duel_OBJ.snape = "" + $ in_action = False + jump duel_main + + +### GENIE DRINKS POTION ### (-300 HP) +label potion: + pause.5 + $ duel_OBJ.show("heal_02",500,330,4) + $ renpy.play('sounds/attack_heal.ogg') + pause 1 + + hide screen duel_heal + show screen duel_heal(300) + pause 1 + $ potions -= 1 + $ genie_hp += 300 + pause.5 + + $ duel_OBJ.hide("heal_02") + + jump snapes_turn + + + +### SNAPE ATTACK ### (Genie -100 HP) +label snape_attack: + hide screen duel_damage + $ duel_OBJ.show("snape_attack",x=720, y=250,z=5) + $ duel_OBJ.snape = "attack" + $ renpy.play('sounds/attack_snape.ogg') + pause 0.45 + $ duel_OBJ.hide("snape_attack") + $ duel_OBJ.snape = "" + + hide screen duel_damage + if game.difficulty <= 1: #Easy + show screen duel_damage(100, False) + $ genie_hp -= 100 + elif game.difficulty == 2: #Normal + show screen duel_damage(100, False) + $ genie_hp -= 100 + else: #Hardcore + show screen duel_damage(300, False) + $ genie_hp -= 300 + + if genie_hp < 50: #Check for gameover + jump genie_lost + $ in_action = False + jump duel_main + +### SNAPE ATTACKS GUARD ### (-0 HP) +label snape_attack_guard: + $ duel_OBJ.show("snape_attack_guard",x=720, y=250,z=5) + $ duel_OBJ.snape = "attack" + $ renpy.play('sounds/attack_snape.ogg') + pause 0.5 + hide screen duel_damage + show screen duel_damage(0, False) + $ duel_OBJ.hide("snape_attack_guard") + $ duel_OBJ.snape = "" + pause 1 + $ in_action = False + jump duel_main + +### DUEL ### +screen duel(): + zorder 2 + + if pentogram: + add "pentogram" at Position(xpos=720, ypos=250, xanchor="center", yanchor="center") + + if duel_OBJ.genie in ["attack"] or duel_OBJ.snape in ["attack","block"]: + pass + else: + if duel_OBJ.genie == "hand": + pass + elif duel_OBJ.genie == "no_magic": + add "genie_no_magic" at Position(xpos=720, ypos=250, xanchor="center", yanchor="center") + elif duel_OBJ.genie == "defend": + add "ch_gen guard" at Position(xpos=720, ypos=250, xanchor="center", yanchor="center") + elif duel_OBJ.genie == "barb": + add "ch_gen barb" at Position(xpos=720, ypos=250, xanchor="center", yanchor="center") + else: + add "ch_gen duel_01" at Position(xpos=720, ypos=250, xanchor="center", yanchor="center") + + if duel_OBJ.snape == "hand": + pass + elif duel_OBJ.snape == "lost": + add "snape_lost" at Position(xpos=720, ypos=250, xanchor="center", yanchor="center") + elif duel_OBJ.snape == "defend": + add "ch_sna defend" at Position(xpos=720, ypos=250, xanchor="center", yanchor="center") + else: + add "ch_sna duel_01" at Position(xpos=720, ypos=250, xanchor="center", yanchor="center") + + +screen hp_bar(): + zorder 3 + + ### health bar is 271 px wide ### + add "images/dueling/snape/hp_bar_02.webp" xpos int((genie_hp-genie_max_hp)/(genie_max_hp/271.0)) ypos 0 + add "images/dueling/snape/hp_bar.webp" #Genie avatr pic. + + ### health bar is 727 px wide ### + add "images/dueling/snape/hp_bar_11.webp" #Black background for HP bar. + add "images/dueling/snape/hp_bar_12.webp" xpos int((snape_max_hp-snape_hp)/(snape_max_hp/727.0)) ypos 0 + add "images/dueling/snape/hp_bar_10.webp" #Snape avatr pic. + + use duel_buttons + +screen snape_defends(xx=0): + add "ch_sna defend" at Position(xpos=-90+140+xx, ypos=-5) + zorder 2 + +transform damage_transform: + alpha 1.0 + linear 1.5 yoffset -100 alpha 0.0 + +screen duel_damage(value=0, attacking=True): + tag damage + frame: + style "empty" + at damage_transform + if attacking: + xpos 780 + ypos 120 + else: + xpos 450 + ypos 120 + add "images/dueling/damage/"+str(value)+".webp" + +screen duel_heal(value=300, player=True): + tag damage + frame: + style "empty" + at damage_transform + if not player: + xpos 780 + ypos 120 + else: + xpos 450 + ypos 120 + add "images/dueling/damage/plus_"+str(value)+".webp" + +### SNAPE LOSES ### +label snape_lost: + $ pentogram = False + $ duel_OBJ.show("smoke",x=520, y=318,z=5) + $ duel_OBJ.hide("genie_attack") + $ duel_OBJ.genie = "" + $ duel_OBJ.snape = "lost" + $ duel_OBJ.in_progress = False + hide screen hp_bar + hide screen duel_damage + show screen ui_top_bar + with flashbulb + pause 1 + $ snape_intro.duel_complete = True + jump snape_intro_E4 + +### GENIE LOSES ### +label genie_lost: + $ renpy.music.stop(fadeout=4) + $ renpy.music.stop(channel="weather", fadeout=4) + $ renpy.play('sounds/level_failed.ogg') + + call gameover(autohide=False) + hide screen duel + hide screen hp_bar + hide screen duel_damage + + pause 3 + + menu: + "-Try again-": + $ renpy.play('sounds/glass_break.ogg') + play music "music/boss_battle_#2_metal_loop.ogg" fadein 1 fadeout 1 + show screen snape_glass + pause 2.3 + hide screen gameover + $ potions = 3 # Give healing potions to make the fight less frustrating + $ duel_OBJ.genie = "" + jump duel + + "-Give up-": + hide screen gameover + jump credits + +screen snape_glass(): + add "glass" + zorder 21 diff --git a/game/scripts/minigames/mirror/classes.rpy b/game/scripts/minigames/mirror/classes.rpy new file mode 100644 index 00000000..9bcbfcb8 --- /dev/null +++ b/game/scripts/minigames/mirror/classes.rpy @@ -0,0 +1,77 @@ + +init 5 python: + + class Mirror(object): + def __init__(self): + self.items = set() + + def add(self, item): + self.items.add(item) + + def remove(self, item): + self.items.remove(item) + + def get_instances(self): + return self.items + + def get_instances_of_tag(self, tag): + tag = tag.capitalize() + + if tag == "All": + return self.get_instances() + + return filter(lambda x: tag in x.tags, self.get_instances()) + + def get_tags(self): + return sorted({"All"} | {tag for x in self.get_instances() for tag in x.tags}) + + class MirrorEvent(object): + def __init__(self, id, name, cast=[], desc="", unlocked=False, label=None, label_rewards=None, image="default", req=None, authors=[], tags=[]): + self.id = id + self.name = name + self.cast = cast + self.desc = desc + self.unlocked = unlocked + self.label = label + self.label_rewards = label_rewards + self.image = "interface/icons/{}.webp".format(self.id) if image == "default" else image + self.req = self.validate_req(req) + self.authors = authors + self.tags = tags + + mirror.add(self) + + def is_unlocked(self): + if self.unlocked: + return True + + cast = all(get_character_unlock(x) for x in self.cast) + req = eval(self.req) if self.req else True + + return (cast and req) + + def validate_req(self, req): + # Validate requirements at init phase to reduce number of possible bugs + if req is None: + return None + + if not isinstance(req, str): + raise TypeError("MirrorEvent '{}' requirement has to be a string, got '{}'.".format(self.id, type(req))) + + output = eval(req) + + if not isinstance(output, bool): + raise TypeError("MirrorEvent '{}' requirement must evaluate to a boolean type, got '{}'.".format(self.id, type(output))) + return req + + def play(self): + if self.label: + renpy.call_replay(self.label) + + if self.label_rewards: + if renpy.context_nesting_level() > 0: + renpy.call_in_new_context(self.label_rewards) + else: + renpy.call(self.label_rewards) + +default mirror = Mirror() diff --git a/game/scripts/minigames/mirror/events/a_bad_time_to_disrobe.rpy b/game/scripts/minigames/mirror/events/a_bad_time_to_disrobe.rpy new file mode 100644 index 00000000..fb9a3488 --- /dev/null +++ b/game/scripts/minigames/mirror/events/a_bad_time_to_disrobe.rpy @@ -0,0 +1,358 @@ + +# Mirror story: A bad time to disrobe +label a_bad_time_to_disrobe: + + with d5 + centered "{size=+7}{color=#cbcbcb}A bad time to disrobe{/color}{/size}" + + nar "In this story the genie has found an invisibility cloak." + nar "And with the cloak come great opportunities." + + label .choices: + + # Setup + $ hermione.equip(her_outfit_default) + $ game.daytime = True + $ game.weather = "clear" + stop weather + call room("main_room") + call play_music("stop") + show screen blkfade + with d5 + + menu: + "-Part 1-": + jump a_bad_time_to_disrobe_part_1 + "-Part 2-": + jump a_bad_time_to_disrobe_part_2 + "-Return-": + $ renpy.end_replay() + +label a_bad_time_to_disrobe_part_1: + + call her_chibi("stand","desk","base") + + hide screen blkfade + with d5 + + call music_block + call bld + gen "Miss Granger. Have you ever been excited about the thought of being caught?" ("base", xpos="far_left", ypos="head") + + her "Caught?" ("soft", "base", "base", "mid", xpos="right",ypos="base", trans=d3) + her "In what way professor?" ("base", "base", "base", "mid") + + gen "Well, for today's favour I have a prop for you to use." ("base", xpos="far_left", ypos="head") + + her "A prop sir?" ("base", "base", "base", "mid") + + gen "Yes, I'd like you to put this invisibility cloak on and sneak into one of the boy only areas of the school." ("base", xpos="far_left", ypos="head") + + her "Well, I guess that would be fine..." ("base", "base", "base", "mid") + her "Seems a bit different than your usual requests." ("soft", "base", "base", "R", cheeks="blush") + + gen "You'd be naked of course." ("base", xpos="far_left", ypos="head") + + her "Naked!?! But what if someone saw me?" ("open", "wide", "base", "stare") + + gen "You'll be wearing the cloak..." ("base", xpos="far_left", ypos="head") + gen "No one would even know you were there." ("base", xpos="far_left", ypos="head") + + her "{size=-7}Thirty-five points...{/size}" ("annoyed", "closed", "angry", "mid") + + gen "Twenty-five points you said? sounds good to me." ("base", xpos="far_left", ypos="head") + + call her_chibi("stand","desk","base",flip=True) + her "{size=-7}You heard what I said...{/size}" ("disgust", "closed", "base", "mid", flip=True, trans=dissolve) + + call her_walk("door", "base") + call her_chibi("leave") + + gen "(Some of that bartering skill put to good use...)" ("grin", xpos="far_left", ypos="head") + + show screen blkfade + with d5 + + $ game.daytime = False + call update_interface_color + call music_block + + call her_chibi("stand","desk","base") + + nar "Later that evening, Hermione returns." + with d3 + + hide screen blkfade + with d5 + + call bld + gen "I'll take that cloak back if you don't mind." ("grin", xpos="far_left", ypos="head") + her "Certainly." ("base", "base", "base", "mid", xpos="right", ypos="base", flip=False) + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + pause .8 + + gen "Now, spill the beans." ("base", xpos="far_left", ypos="head") + her "I.. I don't have any beans on me sir." ("soft", "slit", "low", "stare") + gen "(Is this girl for real?)" ("base", xpos="far_left", ypos="head") + gen "It's just an expression, tell me... did you complete your assignment?" ("base", xpos="far_left", ypos="head") + her "I did sir. I snuck into the boys dormitory using the cloak as you suggested." ("soft", "happyCl", "base", "mid") + gen "Naked?" ("base", xpos="far_left", ypos="head") + her "Naked... --ish." ("disgust", "base", "base", "R") + gen "How can you be naked... -ish?" ("base", xpos="far_left", ypos="head") + her "Well, I had my underwear on, I'd be cold otherwise." ("base", "base", "base", "mid") + gen "Cold? You'd have the cloak on you..." ("base", xpos="far_left", ypos="head") + gen "What happened next then?" ("base", xpos="far_left", ypos="head") + her "Well, a few of the boys were in there." ("base", "base", "base", "mid") + her "They were playing wizards chess..." ("base", "base", "base", "mid") + her "Pretty poorly in fact." ("disgust", "wink", "base", "mid") + + gen "..." ("base", xpos="far_left", ypos="head") + gen "I'm sorry miss Granger but you're going to have to do better than this." ("base", xpos="far_left", ypos="head") + gen "I expect better from you by now." ("base", xpos="far_left", ypos="head") + her "So, no points then?" ("angry", "narrow", "annoyed", "mid") + gen "No, I know you can do better." ("base", xpos="far_left", ypos="head") + her "Fine! I'll do better next time. Double points! I'll show you!" ("angry", "narrow", "angry", "R") + gen "That's the spirit. Your house will thank you when you beat the Slytherins by the end of the year." ("base", xpos="far_left", ypos="head") + her "Thank you professor... I'll remember that for next time." ("grin", "happy", "base", "mid_soft") + + show screen blkfade + with d3 + + show screen quistion_pop_up("{color=#cbcbcb}Hermione will remember that{/color}") + nar "Hermione returns the next morning, looking nervous but more determined than yesterday." + + $ game.daytime = True + call update_interface_color + call music_block + + hide screen quistion_pop_up + call her_chibi("stand","desk","base") + + hide screen blkfade + with d3 + + her "I see that you have the cloak ready for me sir." ("base", "base", "base", "R",xpos="right",ypos="base") + gen "Indeed, I'm expecting better from you today, girl." ("base", xpos="far_left", ypos="head") + her "I won't disappoint you sir!" ("grin", "base", "base", "mid") + gen "I'll be the judge of that..." ("base", xpos="far_left", ypos="head") + + hide hermione_main + show screen blkfade + with d5 + + $ game.daytime = False + call update_interface_color + call music_block + + nar "Later that evening a distraught-looking Hermione enters the office." + + call her_chibi("top_naked","desk","base") + $ hermione.strip("robe", "accessory") + $ hermione.strip("top") + + hide screen blkfade + with d5 + + her "..." ("upset", "base", "base", "mid", tears="mascara_soft",xpos="right",ypos="base") + gen "What happened? Where's your shirt?" ("base", xpos="far_left", ypos="head") + her "What does it look like?" ("upset", "base", "base", "mid", tears="mascara_soft") + gen "Well, I know what it looks like..." ("base", xpos="far_left", ypos="head") + her "I didn't want to disappoint, sir, so I did what you asked..." ("soft", "base", "base", "mid", tears="mascara_soft") + her "I went into the girls changing room at the quidditch pitch and put my clothes in one of the lockers." ("base", "base", "base", "mid", tears="mascara_soft") + gen "Well done. And then?" ("base", xpos="far_left", ypos="head") + her "I took the cloak and snuck into the boys changing room..." ("soft", "squint", "base", "R", tears="mascara") + her "I stood next to the doorway so that they wouldn't bump into me." ("open", "base", "base", "mid", tears="mascara") + gen "Great idea... and no one noticed?" ("base", xpos="far_left", ypos="head") + her "Well, at first... This damn cloak is too small." ("angry", "base", "base", "mid", tears="mascara") + her "I thought I would be short enough to fit under it..." ("disgust", "base", "base", "down", tears="mascara") + her "I didn't notice that my feet were visible..." ("upset", "base", "angry", "mid", tears="mascara") + gen "(Well, that's a shame.)" ("base", xpos="far_left", ypos="head") + her "One of the boys saw me shuffle and moved to see what it was so I tried to get away but I slipped... and... and." ("upset", "wide", "base", "shocked", tears="mascara") + g11 "And what?" + her "And I slipped and my butt fell out!" ("scream", "wide", "worried", "stare", tears="mascara") + + gen "{size=18}Thirty points to....{/size}" ("grin", xpos="far_left", ypos="head") + + her "I'm not done!" ("open", "narrow", "worried", "down", tears="mascara") + gen "Sorry, you carry on my dear!" ("base", xpos="far_left", ypos="head") + her "I ran out and grabbed what I could of my clothes... I think the boy may have seen me." ("soft", "narrow", "worried", "mid_soft", tears="mascara") + her "Professor.... I'm beginning to have second thoughts about this cloak idea." ("soft", "narrow", "worried", "mid_soft", tears="mascara") + gen "The boy didn't see your face, that's what matters." ("base", xpos="far_left", ypos="head") + gen "You could've draped the cloak around your head and it would be enough." ("base", xpos="far_left", ypos="head") + her "Professor!" ("shock", "wide", "base", "mid", tears="mascara") + gen "Just trying to lighten the mood." ("base", xpos="far_left", ypos="head") + gen "Here's an extra five points for a job well done, miss Granger." ("base", xpos="far_left", ypos="head") + gen "Thirty-five points to Gryffindor!" ("grin", xpos="far_left", ypos="head") + her "Thank you professor..." ("grin", "base", "base", "mid", tears="mascara") + + call her_walk ("door", "base") + + her "(He's right, they wouldn't recognise me if I didn't show my face...)" ("base", "base", "base", "mid", cheeks="blush", tears="mascara", ypos="head", flip=False) + her "(would they?)" ("base", "base", "base", "mid", cheeks="blush", tears="mascara") + + call her_chibi("leave") + + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}End of part one.{/color}{/size}" + + jump a_bad_time_to_disrobe.choices + +label a_bad_time_to_disrobe_part_2: + + call her_chibi("stand","desk","base") + + hide screen blkfade + with d5 + + call music_block + call bld + gen "Good afternoon miss Granger." ("base", xpos="far_left", ypos="head") + her "Good afternoon professor, what can I do for you today?" ("base", "base", "base", "mid",xpos="right",ypos="base") + gen "Glad you asked, I've got another task for you." ("base", xpos="far_left", ypos="head") + her "And what task may that be professor." ("soft", "base", "base", "R") + gen "Well miss Granger, I think somebody owes me a invisibility cloak." ("base", xpos="far_left", ypos="head") + her "Oh, do you want me to collect it from somebody?" ("open", "base", "base", "mid") + gen "That somebody is you miss Granger..." ("base", xpos="far_left", ypos="head") + gen "You left my cloak at the scene of the crime." ("base", xpos="far_left", ypos="head") + her "What crime professor, what have you gotten me into?" ("upset", "narrow", "annoyed", "mid") + gen "I'm talking about when you went to visit the boys changing room." ("base", xpos="far_left", ypos="head") + gen "Or have you forgotten already?" ("base", xpos="far_left", ypos="head") + her "{size=-7}I've tried to.{/size}" ("upset", "base", "worried", "R") + gen "Sorry?" ("base", xpos="far_left", ypos="head") + her "I said, I do remember." ("normal", "base", "base", "R") + gen "Right, well. Good invisibility cloaks are pretty hard to come by..." ("base", xpos="far_left", ypos="head") + gen "(I think...)" ("base", xpos="far_left", ypos="head") + her "No they're not... they're mass produced as far as I know." ("annoyed", "base", "base", "mid") + her "By house elves I bet..." ("disgust", "closed", "angry", "mid") + gen "Hey now, I know they might be small but I wouldn't call them elves." ("base", xpos="far_left", ypos="head") + gen "In any case, the cloak has more of a sentimental value to me... lots of memories." ("base", xpos="far_left", ypos="head") + gen "(Like the time where your butt fell out of it.)" ("grin", xpos="far_left", ypos="head") + gen "Oh, the memories... you must retrieve it for me." ("grin", xpos="far_left", ypos="head") + her "Fine, I'll do it... even though I hold you partly responsible for the situation that lead to me dropping it." ("annoyed", "closed", "angry", "mid") + gen "Great, let's not dwell on the past then." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "annoyed", "mid") + her "Do you happen to have any idea of where it is?" ("open", "base", "base", "mid") + gen "Well, it hasn't been reported as found so unless someone stole it there's only one place it could be." ("base", xpos="far_left", ypos="head") + her "The boys changing room?" ("base", "narrow", "worried", "down") + gen "The boys changing room." ("grin", xpos="far_left", ypos="head") + her "And how many house points?" ("base", "base", "base", "mid") + gen "For what exactly?" ("base", xpos="far_left", ypos="head") + her "Retrieving the cloak of course." ("annoyed", "base", "base", "mid") + gen "You're demanding house points, for your own mistakes miss Granger?" ("base", xpos="far_left", ypos="head") + her "But I thought..." ("upset", "base", "worried", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + her "..." ("upset", "narrow", "worried", "down") + gen "Fine, but only if we continue where we left of." ("base", xpos="far_left", ypos="head") + her "With my butt out?!?" ("disgust", "wide", "worried", "stare") + gen "With your bu--" ("base", xpos="far_left", ypos="head") + gen "No, well... yes, but this time you'll be prepared." ("base", xpos="far_left", ypos="head") + her "But... what if they recognise me sir?" ("open", "base", "worried", "mid") + gen "You'd already know if they had recognised you..." ("base", xpos="far_left", ypos="head") + her "(That's true...)" ("soft", "base", "base", "mid_soft", cheeks="blush") + her "And then what, you want me to just walk away?" ("base", "base", "base", "mid", cheeks="blush") + gen "You can figure it out yourself miss Granger. Once you have the cloak it shouldn't be an issue getting away." ("base", xpos="far_left", ypos="head") + her "And I want--" ("open", "base", "base", "mid") + gen "I'll give you forty house points for it." ("base", xpos="far_left", ypos="head") + her "(I was going to ask for thirty.)" ("soft", "happy", "base", "R", cheeks="blush") + her "I'll do it..." ("base", "base", "base", "mid") + gen "Great, you're doing a great service to your house and making an old man very happy." ("grin", xpos="far_left", ypos="head") + her "By getting your cloak back right?" ("base", "base", "worried", "mid") + gen "Right..." ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + show screen blkfade + with d3 + + $ game.daytime = False + call update_interface_color + call music_block + + nar "Later that evening." + + call her_chibi("stand","door","base") + + hide screen blkfade + with d3 + + call her_walk("desk", "base") + pause.5 + + her "..." ("normal", "narrow", "base", "dead", cheeks="blush",xpos="right",ypos="base") + gen "Mission success?" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "base", "dead", cheeks="blush") + gen "Miss Granger?" ("base", xpos="far_left", ypos="head") + her "Oh, hello professor, yes. Here's your cloak back." ("base", "narrow", "worried", "down") + gen "..." ("base", xpos="far_left", ypos="head") + gen "And?" ("base", xpos="far_left", ypos="head") + her "And what?" ("normal", "happyCl", "worried", "mid") + gen "And what about your assignment. How did it go?" ("base", xpos="far_left", ypos="head") + her "Oh... yes, it went very well thank you... no hurdles in any way." ("soft", "base", "worried", "R", cheeks="blush") + gen "Your face is glowing miss Granger, I can tell when you're being untruthful." ("base", xpos="far_left", ypos="head") + her "It is? I didn't even notice..." ("normal", "narrow", "base", "down", cheeks="blush") + gen "You're going to have to elaborate if you'd like those house points." ("base", xpos="far_left", ypos="head") + her "Oh... okay, I'l just go ahead then..." ("mad", "base", "base", "mid") + gen "Let me get the popcorn." ("base", xpos="far_left", ypos="head") + her "popcorn? Where would you get popcorn from in this office?" ("annoyed", "base", "base", "mid") + gen "Magic cupboard." ("grin", xpos="far_left", ypos="head") + her "Right... well, I'll just start in that case shall I?" ("base", "narrow", "base", "R_soft") + her "..." ("base", "base", "base", "mid", cheeks="blush") + her "So... I went to the boys changing room when they were in quidditch practice." ("open", "narrow", "worried", "down") + gen "*CRUNCH*" ("base", xpos="far_left", ypos="head") + her "It's very messy in there... I thought the girls changing room was bad..." ("base", "narrow", "base", "down") + gen "*CRUNCH* *Chew* *Chew*" ("base", xpos="far_left", ypos="head") + gen "*CRUNCH*" ("base", xpos="far_left", ypos="head") + her "Anyway... so I rummaged around in that mess..." ("annoyed", "base", "worried", "mid") + her "I knew it had to have been somewhere between the showers and the doorway..." ("base", "base", "base", "mid") + her "After looking around for a while I noticed that the cloak had been pushed under one of the benches lining the wall." ("open", "narrow", "worried", "down") + her "So I grabbed it and I thought I might as well disrobe and hide in the shower room with the cloak on." ("base", "narrow", "base", "down") + her "But as I was stuffing my clothes in one of the lockers a boy walked in." ("clench", "base", "worried", "mid") + gen "*CRUNCH*" ("base", xpos="far_left", ypos="head") + her "Professor!" ("scream", "base", "angry", "mid") + gen "*Cough* *Cough*... sorry." ("angry", xpos="far_left", ypos="head") + her "It is hard to talk about this as it is without your chewing distracting me." ("annoyed", "base", "angry", "mid") + her "Anyhow..." ("base", "narrow", "angry", "R") + her "I expected the team to be going for at least another thirty minutes." ("open", "base", "base", "mid") + her "But that's when the boy walked in..." ("normal", "closed", "base", "mid") + her "And I panicked and threw the cloak over myself and hid in one of the toilets." ("open", "base", "worried", "R") + gen "Smart." ("base", xpos="far_left", ypos="head") + her "..." ("base", "base", "base", "mid", cheeks="blush") + her "Well, it would've been if I had remembered to lock it." ("base", "narrow", "base", "down") + gen "Not that smart..." ("grin", xpos="far_left", ypos="head") + her "Do you want me to continue or not?" ("annoyed", "narrow", "annoyed", "mid") + gen "You're the one receiving the points here, I'm just providing the means of earning them." ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "worried", "down") + her "As I was saying..." ("base", "narrow", "base", "down") + her "I went into one of the toilets and I heard the boy shuffling outside." ("base", "closed", "base", "mid") + her "The room was so small so I tried to back into a corner, but as he came in I knew it wasn't going to work..." ("base", "narrow", "base", "down", cheeks="blush") + her "So I prayed he wasn't about to sit down and instead I positioned myself above the toilet with my legs around the base." ("clench", "happyCl", "worried", "mid") + gen "And did he sit down or not?" ("base", xpos="far_left", ypos="head") + her "No, but he was close enough for me to feel his..." ("mad", "squint", "worried", "up") + her "His..." ("base", "slit", "worried", "ahegao") + gen "His what? miss Granger..." ("base", xpos="far_left", ypos="head") + her "Well... His Penis brushed up against my butt." ("annoyed", "closed", "base", "mid", cheeks="blush") + gen "How did he manage that?" ("base", xpos="far_left", ypos="head") + her "The boy wasn't in there to relieve himself in the way I assumed..." ("open", "closed", "angry", "mid", cheeks="blush") + her "I guess he wasn't paying attention to what sensation he was feeling on the tip of his..." ("normal", "base", "worried", "mid", cheeks="blush") + her "Anyway..." ("open", "base", "worried", "R", cheeks="blush") + gen "..." ("base", xpos="far_left", ypos="head") + her "I'd like my points now." ("base", "narrow", "worried", "down") + gen "Certainly miss Granger..." ("base", xpos="far_left", ypos="head") + gen "Forty points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "Thank you professor..." ("soft", "base", "base", "mid_soft") + + call her_walk("door", "base") + + her "(I'm glad I had time to clean the cloak before walking in here...)" ("base", "narrow", "base", "dead", cheeks="blush", flip=True) + her "(That thing was massive...)" ("normal", "narrow", "worried", "down", cheeks="blush") + her "(What am I thinking? snap out of it...)" ("base", "happyCl", "worried", "mid", cheeks="blush") + + call her_chibi("leave") + + call blkfade + centered "{size=+10}{color=#cbcbcb}The end{/color}{/size}" + + jump a_bad_time_to_disrobe.choices diff --git a/game/scripts/minigames/mirror/events/a_christmas_tale.rpy b/game/scripts/minigames/mirror/events/a_christmas_tale.rpy new file mode 100644 index 00000000..57b029c3 --- /dev/null +++ b/game/scripts/minigames/mirror/events/a_christmas_tale.rpy @@ -0,0 +1,192 @@ +label a_christmas_tale_rewards: + if not card_exist(unlocked_cards, card_santa): + call give_reward("You have received a special card as a gift!", "images/cardgame/t1/special/santa_v1.webp") + $ unlocked_cards += [card_santa] + + if not xmas_phoenix_ITEM.owned: + $ xmas_phoenix_ITEM.owned = 1 + $ xmas_owl_ITEM.owned = 1 + $ xmas_fireplace_ITEM.owned = 1 + $ xmas_lights_ITEM.owned = 1 + $ xmas_wreaths_ITEM.owned = 1 + $ xmas_giftchair_ITEM.owned = 1 + + call give_reward("Christmas decorations have been unlocked!", gift="interface/icons/xmas_wreaths.webp") + + return + +label a_christmas_tale: + + # Setup + $ fireplace_OBJ.foreground = "fireplace_fire" + $ phoenix_OBJ.decoration = xmas_phoenix_ITEM + $ owl_OBJ.decoration = xmas_owl_ITEM + $ fireplace_OBJ.decoration = xmas_fireplace_ITEM + stop weather + $ game.daytime = False + $ game.weather = "snow" + call room("main_room") + call play_music("stop") + call gen_chibi("hide") + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}A Christmas tale{/color}{/size}" + + hide screen blkfade + with d5 + + call play_music("anguish") + show screen bld1 + with d3 + nar "It was the night before Christmas, with excitement at the school." + nar "But the headmaster's room empty, now where is that fool?" + nar "The stockings were hung by the chimney with care." + nar "But no genie to be found. As if he'd never been there." + hide screen bld1 + with d3 + pause.8 + + call play_sound("door") + call sna_chibi("stand","door","base") + with d5 + pause.8 + + show screen bld1 + with d3 + nar "Severus then entered, all flustered and spent." + + call sna_walk("mid", "base") + pause.2 + + sna "Genie? Where are you... I came here, to vent..." (face="snape_03", ypos="head") + nar "He wondered if the genie had found a way home..." + sna "Seems like a normal Christmas, spent all alone..." (face="snape_06") + + nar "But then a crash and a bang from the chimney was heard." + call play_sound("bump") + + call sna_chibi("stand","mid","base",flip=True) + with d3 + pause.2 + + sna "What the fuck was that, some kind of bird?" (face="snape_14") + nar "With a snap and a crackle, and a strong blinding light." + + call play_sound("bump") + $ fireplace_OBJ.foreground = None + # Teleport Santa Genie into the fireplace + show screen genie_santa_chibi(620, 150) + call teleport((620+75, 420)) + pause.8 + + nar "A figure appeared, in the most silent of nights." + pause.2 + + # Turn around + show screen genie_santa_chibi(620, 150, True) + with d3 + pause.2 + + show screen bld1 + with d3 + san1 "Oh hello there my friend." + nar "Said the figure at last." + san1 "I thought you might be here, but where's that genie?" + sna "..." (face="snape_25") + san1 "Blast..." + + sna "Genie..." (face="snape_24") + nar "Said the teacher." + sna "You're not fooling me." (face="snape_24") + sna "Have you been drinking again?" (face="snape_25") + sna "And I don't mean drinking tea." (face="snape_29") + + san1 "I don't know what you mean." + nar "Said the large bearded man..." + san2 "I'm Santa of course." + san2 "I bring presents..." + san2 "That's the plan!" + pause.8 + + nar "After silence and confusion then Severus said..." + sna "Well, just get it over with so I can go back to bed." (face="snape_09") + san1 "Now boy where's your spirit, it's Christmas is it not?" + sna "Now genie, look here..." (face="snape_24") + nar "But then he froze on the spot." + + hide screen bld1 + # Teleport away + call gen_chibi("hide") + call teleport((620+75, 420)) + with d3 + pause.5 + + show screen bld1 + with d3 + nar "The man had then vanished, without even a trace.." + hide screen bld1 + with d3 + + pause.2 + call sna_chibi("stand","mid","base",flip=False) + with d3 + pause.5 + call sna_chibi("stand","mid","base",flip=True) + with d3 + pause.8 + + sna "I thought he couldn't use magic..." (face="snape_05") + nar "You should've seen the look on Snape's face." + hide screen bld1 + with d3 + + call sna_chibi("hide") + with d3 + call sna_chibi("stand",570,190+250,flip=True) + with d3 + pause.5 + + show screen bld1 + with d3 + nar "With only a gift left where he had stood, should he open or should he wait?" + sna "My first present since childhood..." (face="snape_04") + nar "As he peeled back the wrapping he just stood there in shock." + sna "Where on earth did he get this?" (face="snape_03") + nar "Then suddenly..." + call play_sound("knocking") + nar "A knock." + + "Snape are you in there, I think I lost my keys." + sna "The door is open, you fool." (face="snape_08", xpos="base", ypos="base") + nar "His voice... now just a wheeze." + + call play_sound("knocking") + nar "The genie knocked again. The mutter, he hadn't heard." + sna "" (face="snape_06") + nar "Now Snape saying nothing, not even a word." + show screen snape_picture_frame + with d5 + nar "A picture we then see as it's our time to depart." + sna "" (face="snape_23") + nar "As sadness turned to joy in the cold teachers heart." + call ctc + + hide screen snape_picture_frame + hide snape_main + with d5 + pause.8 + + san4 "Happy Holidays." + + show screen blkfade + with d9 + pause 2 + + $ renpy.end_replay() + +# Screen with Genie dressed as Santa (only used in Christmas tale) +screen genie_santa_chibi(x, y, flip=False): + tag genie_chibi + zorder 2 + add "characters/misc/santa/santa_chibi.webp" pos (x,y) zoom 0.5 xzoom (-1 if flip else 1) diff --git a/game/scripts/minigames/mirror/events/a_christmas_tale2.rpy b/game/scripts/minigames/mirror/events/a_christmas_tale2.rpy new file mode 100644 index 00000000..335a0b55 --- /dev/null +++ b/game/scripts/minigames/mirror/events/a_christmas_tale2.rpy @@ -0,0 +1,303 @@ +label a_christmas_tale2_rewards: + # Unlock outfit message. Should only appear once. + + if not her_outfit_ribbon.unlocked: + call unlock_clothing(text=">New clothing items for Hermione have been unlocked!", item=her_outfit_ribbon) + call unlock_clothing(text=">Several new clothing items for Hermione have been unlocked!", item=her_outfit_xmas) + call unlock_clothing(text=">New clothing items for Tonks have been unlocked!", item=ton_outfit_ribbon) + call unlock_clothing(text=">New clothing items for Tonks have been unlocked!", item=ton_outfit_elf) + call unlock_clothing(text=">New clothing items for Tonks have been unlocked!", item=ton_outfit_xmas) + + call give_reward("Some lesser clothing items have been unlocked as well. *Ho-ho-ho!*") + + if not xmas_phoenix_ITEM.owned: + $ xmas_phoenix_ITEM.owned = 1 + $ xmas_owl_ITEM.owned = 1 + $ xmas_fireplace_ITEM.owned = 1 + $ xmas_lights_ITEM.owned = 1 + $ xmas_wreaths_ITEM.owned = 1 + $ xmas_giftchair_ITEM.owned = 1 + + call give_reward("Christmas decorations have been unlocked!", gift="interface/icons/xmas_wreaths.webp") + + return + +label a_christmas_tale2(): + + # Setup + $ fireplace_OBJ.foreground = "fireplace_fire" + $ phoenix_OBJ.decoration = xmas_phoenix_ITEM + $ owl_OBJ.decoration = xmas_owl_ITEM + $ fireplace_OBJ.decoration = xmas_fireplace_ITEM + $ tonks.equip(ton_outfit_elf) + $ hermione.equip(her_outfit_ribbon) + $ hermione_chibi.zorder = 4 + stop weather + $ game.daytime = False + $ game.weather = "snow" + call room("main_room") + call play_music("stop") + call gen_chibi("hide") + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}Santa's Little Helper{/color}{/size}" + + hide screen blkfade + with d5 + + play weather "sounds/wind_long_loop.ogg" fadein 2 fadeout 2 + call play_music("anguish") + + show screen bld1 + with d3 + + nar "T'was the night before Christmas on a cold winter night." + nar "We see the headmasters room but there's no one in sight." + nar "No sound but the wind as the storm outside roars." + nar "But then a man enters, as he never knocks on any doors." + + call sna_walk(action="enter") + pause 0.5 + sna "Genie I wanted--" ("snape_06", trans=d3) + hide snape_main + with d3 + nar "Said the man as he entered." + call sna_walk("desk", "base") + sna "Never here when you need him..." ("snape_01", trans=d3) + sna "Are genies always this self-centred?" ("snape_29") + sna "Another walk to the pub if I want to get pissed..." ("snape_06") + sna "Another--" ("snape_04") + + hide snape_main + hide screen bld1 + with d3 + + nar "Interrupted dialogue as the room filled with mist." + nar "With three booming ho's, Santa Claus appeared." + + $ renpy.sound.play("sounds/fire_woosh.ogg") + $ fireplace_OBJ.foreground = None + stop bg_sounds + show screen genie_santa_chibi(620, 170, flip=True) + call teleport((620+75, 440)) + call sna_chibi(flip=True) + with d3 + sna "Genie of course... You think I'd fall for that fake beard?" ("snape_05", trans=d3) + + san1 "I think you must be mistaken." + hide snape_main + hide screen bld1 + with d3 + nar "Said Santa to the man." + show screen bld1 + with d3 + san1 "I'm not Genie, I'm Santa!" + san1 "I deliver presents!" + san2 "That's the plan!" + + san1 "I bring cheers and presents, to all across the land." + sna "Are you sure about that? I don't see a sack in your hand..." ("snape_01", trans=d3) + hide snape_main + with d3 + san1 "Be patient dear boy... Don't you give me that face." + san1 "Your gift will get here soon through this office fireplace." + hide screen bld1 + with d3 + + nar "With a big puff of smoke and a whiz and a whirl, an elf stood before them." + + show ch_ton elf zorder tonks_chibi.zorder at Transform(pos=(750, 430)) + show screen xmas_bag((750, 290)) + call teleport((680+75, 460)) + + show screen bld1 + with d3 + san2 "Now check out this girl!" + + ton "" ("horny", "narrow", "base", "mid", hair="happy", xpos="mid", trans=d3) + call ctc + hide tonks_main + sna "Now that is a present!" ("snape_13", trans=d3) + sna "You've outdone yourself." ("snape_20") + hide snape_main + san1 "That's not your present, that's my sexy helper elf..." + + ton "Eye's up here boy..." ("base", "base", "base", "mid", hair="happy", trans=dissolve) + ton "Your present is in this sack..." ("soft", "narrow", "base", "down", hair="happy") + ton "These milkers belong to Santa!" ("horny", "narrow", "base", "L", hair="horny") + san2 "They're my after-work Christmas snack!" + + hide tonks_main + hide screen bld1 + + show ch_ton elf zorder tonks_chibi.zorder at Transform(pos=(750, 430), xzoom=-1) + with d3 + + nar "And with a swish of her wand his present was revealed." + + hide screen xmas_bag + show screen xmas_bagfloor((750, 290)) + show ch_hem ribbon zorder hermione_chibi.zorder at Transform(pos=(785, 450), xzoom=1) + #call her_chibi(xpos=750, ypos=460) + call play_sound("magic") + with flash + + show ch_ton elf zorder tonks_chibi.zorder at Transform(pos=(750, 430), xzoom=1) + with d3 + + her "" ("soft", "base", "base", "mid", cheeks="blush", trans=dissolve) + nar "In front of him a girl, no longer concealed." + nar "With a bow around her pussy and ribbons around her tits." + + hide hermione_main + with d3 + + sna "Now that's a proper present!" ("snape_13", trans=d3) + hide snape_main + with d3 + san2 "Now unwrap those naughty bits!" + + ton "Wait, I just remembered, don't unwrap the present yet!" ("mad", "shocked", "base", "L", hair="happy", trans=dissolve) + ton "If he's not been good this year then a gift he cannot get." ("open", "closed", "shocked", "mid", hair="happy") + hide tonks_main + with d3 + + san2 "I'm certain he's been good... Now unwrap her I insist!" + + ton "I'm not so sure myself... His offences fill this list." ("upset", "narrow", "base", "down", hair="happy", trans=dissolve) + hide tonks_main + with d3 + + san1 "Then read it for me elf... I'm sure it will be quick..." + hide screen bld1 + with d3 + nar "The elf then unrolled it... A scroll six inches thick." + + ton "Inflating the points gained to put the Slytherins in the lead..." ("open", "base", "raised", "down", hair="happy", trans=dissolve) + hide tonks_main + with d3 + + her "What?" ("clench", "happy", "angry", "mid", trans=dissolve) + hide hermione_main + with d3 + + san1 "That can't be true!" + sna "Mere fabrications that, indeed..." ("snape_35", trans=d3) + hide snape_main + with d3 + + ton "Teaching plenty of classes despite that he's blind drunk." ("upset", "base", "shocked", "down", hair="happy", trans=dissolve) + sna "I can't believe they bought that it was {i}\"Essence du Skunk\"{/i}..." ("snape_45", trans=d3) + hide snape_main + with d3 + + ton "Punishing students for talking in class..." ("open", "closed", "base", "mid", hair="happy") + sna "They were breaking the rules!" ("snape_07", trans=d3) + hide snape_main + with d3 + + ton "So is slapping their ass..." ("disgust", "narrow", "base", "mid", hair="happy") + san1 "Well I'm sure they're all right... It was only a slap..." + ton "I'm not done yet santa, there's more..." ("annoyed", "narrow", "base", "L", hair="happy") + san1 "What the crap..." + + ton "Stealing mounds of sweets and sniffing girls hair..." ("normal", "base", "raised", "down", hair="happy") + sna "Now let's be reasonable for a minute, this list isn't fair!" ("snape_18", trans=d3) + hide snape_main + with d3 + + san1 "I think he's got a point, at least he didn't curse..." + ton "You say that but now, is when the list is getting worse..." ("disgust", "base", "base", "mid", hair="happy") + + ton "He's bought blowjobs with house points... Now that doesn't sound great..." ("open", "narrow", "base", "down", hair="happy") + san2 "A misprint I'm sure!" + ton "The list says thirty-eight..." ("mad", "wide", "base", "down", hair="happy") + + ton "Wrapped around his finger... This is making me sick..." ("upset", "base", "base", "down", hair="upset") + ton "This list is massive!" ("clench", "wide", "annoyed", "down", hair="angry") + san1 "Then just skim it real quick..." + + ton "Taking girls books and replacing it with smut..." ("disgust", "narrow", "base", "down", hair="happy") + ton "Then punishing them for it by spanking their butt..." ("annoyed", "narrow", "annoyed", "mid", hair="happy") + + sna "She had it coming I tell you... That girl was a whore..." ("snape_12", trans=d3) + hide snape_main + with d3 + + ton "See what I mean Santa?" ("disgust", "base", "base", "L", hair="disgusted") + ton "And this list has even more..." ("upset", "base", "base", "down", hair="happy") + + ton "Confiscating panties... Cumming on floors..." ("soft", "base", "annoyed", "down", hair="happy") + ton "Spying in the toilets..." ("disgust", "narrow", "base", "down", hair="disgusted") + ton "Never knocks on any doors..." ("open", "closed", "base", "mid", hair="happy") + + san1 "Never knocks on any doors?!" + nar "Said Santa at last." + san1 "Now that's a big offence!" + ton "You really think so Santa?" ("annoyed", "wide", "raised", "mid", hair="happy") + sna "Blast..." ("snape_11", trans=d3) + hide snape_main + with d3 + + san1 "Sexual acts is one thing... But not knocking on doors!" + san1 "A man without manners is what Santa Claus abhors." + san1 "I can't give you a gift but I offer this advice." + san1 "Most things I will ignore but good manners deem you nice." + + san1 "Now ladies it's time to leave, it is a busy time of year..." + san1 "Let us empty this sack and spread my Christmas cheer." + ton "This meeting took way too long so we better spread it quick..." ("mad", "base", "base", "L", hair="happy") + ton "I hope I get overtime for this..." ("annoyed", "base", "base", "R", hair="happy") + hide tonks_main + with d3 + san2 "I'll let you ride my magic di--" + + call gen_chibi("hide") + #call ton_chibi("hide") + #call her_chibi("hide") + hide ch_hem ribbon + hide ch_ton elf + call play_sound("magic") + show screen xmas_smoke + with flash + + #Effect and then they're gone + + nar "Smoke then filled the room and then slowly dispersed, his present now gone..." + sna "Santa, You're the worst..." ("snape_03", trans=d3) + nar "With the man's final words left echoing across the halls." + nar "He had to spend another Christmas with the bluest of blue balls..." + + call hide_characters + with d5 + + $ renpy.end_replay() + +screen xmas_bag(pos): + zorder 5 + add "images/misc/bag.webp" zoom 0.5 pos pos + +screen xmas_bagfloor(pos): + zorder 2 + add "images/misc/bag_floor.webp" zoom 0.5 pos pos + +screen xmas_smoke(): + zorder 10 + add "xmas_smoke" + +image xmas_smoke: + "images/misc/smoke.webp" + align (0.5, 0.5) + zoom 0.55 + subpixel True + + parallel: + linear 2.5 yoffset -10 + linear 2.5 yoffset 10 + repeat + + parallel: + linear 5.0 xoffset 20 + linear 5.0 xoffset -20 + repeat diff --git a/game/scripts/minigames/mirror/events/a_dark_room.rpy b/game/scripts/minigames/mirror/events/a_dark_room.rpy new file mode 100644 index 00000000..666e9f0b --- /dev/null +++ b/game/scripts/minigames/mirror/events/a_dark_room.rpy @@ -0,0 +1,976 @@ + +default DRgame = DarkRoomGame() + +default DRplayer = DarkRoomCharacter(name="You", hp=8, skills=["strength"], unskilled=["cooking","hunting","sewing"], inventory=["axe"]) +default DRstranger = DarkRoomCharacter(name="The Stranger", hp=7, skills=["hunting"], unskilled=["sewing"], inventory=["knife"]) +default DRmaid = DarkRoomCharacter(name="The Maiden", hp=3, skills=["sewing"], unskilled=["hunting","strength"]) +# default DRmaid = DarkRoomCharacter(name="The Maiden", hp=3, skills=["cooking"], unskilled=["hunting"], inventory=[]) +default DRhunter = DarkRoomCharacter(name="The Hunter", hp=7, skills=["hunting","sewing"], unskilled=["cooking"], inventory=["knife","rifle"]) + +label reset_dark_room_init: + $ reset_variables( + "DRgame", + "DRplayer", + "DRstranger", + "DRmaid", + "DRhunter" + ) + return + +### A Dark Room ### + +label start_dark_room_game: + call play_music("stop") + show screen blkfade + with d9 + + $ temp_time = game.daytime + + $ game.daytime = False + call update_interface_color + + call hide_screens + pause 2 + + centered "{size=+7}{color=#cbcbcb}A Dark Room{/color}{/size}" + + pause 2 + + label dark_room_game_start_menu: + menu: + "-Start a new Game-": + call reset_dark_room_init + jump dark_room_main + "-Continue-" if DRgame.day > 1 and not DRgame.game_over: + jump dark_room_load_save + "-Get coin rewards-" if DRgame.day > 1 and not DRgame.game_over: + ">You'll get gold for each day you have survived in the game.\n>This will delete your current Save!" + menu: + "Would you like to delete your save and get gold coins for it?" + "-Yes-": + $ current_payout = DRgame.day*2 + $ game.gold += current_payout + ">You have received {number=current_payout} gold.\n>Thank you for playing \"A Dark Room\"." + call reset_dark_room_init + jump dark_room_game_start_menu + "-No-": + jump dark_room_game_start_menu + jump dark_room_load_save + "-Never mind-": + $ renpy.end_replay() + +label dark_room_main: + show screen blkfade + with d9 + + #Reset + $ fire_in_fireplace = False + $ fireplace_OBJ.foreground = None + $ DRgame.time = "morning" + $ DRgame.fire = 0 + $ read_book = False + call update_DRgame_random_number + call update_DRgame_meat_spoiling + call update_DRgame_needs + + label dark_room_load_save: + + call play_music("stop") + + stop bg_sounds #Stops playing the fire SFX. + stop weather #Stops playing the rain SFX. + if DRgame.day in [1,2,3,6,7]: + $ game.weather = "storm" + elif DRgame.day in [4,5]: + $ game.weather = "clear" + else: + $ game.weather = "random" + call weather_sound + + pause 2 + centered "{size=+7}{color=#cbcbcb}Day [DRgame.day]{/color}{/size}" + pause 1 + + label DRgame_resume: + if DRgame.game_over: + show screen blkfade + with d5 + pause 1 + centered "{size=+7}{color=#cbcbcb}Game Over...{/color}{/size}" + pause 1 + centered "{size=+7}{color=#cbcbcb}You made it to day [DRgame.day]!{/color}{/size}" + pause 1 + jump dark_room_game_start_menu + + show screen weather + show screen dark_room + if DRgame.fire >= 1: + $ fire_in_fireplace = True + $ fireplace_OBJ.foreground = "fireplace_fire" + else: + $ fire_in_fireplace = False + $ fireplace_OBJ.foreground = None + hide screen DRgame_blktone + show screen DRgame_blktone + call DRgame_chibis #Sets up character chibis & positions. + hide screen blkfade + with d9 + + if DRgame.time == "morning": + call DRgame_random_event + call screen DRgame_menu #Do something. + + if DRgame.time == "noon": + call DRgame_leave_for_task #Characters Leave + call DRgame_random_event + call screen DRgame_menu #Do another thing. + + if DRgame.time == "afternoon": + call DRgame_return_from_task #Characters Return + call update_DRgame_hunger #Eating + call DRgame_random_event + + if DRgame.time == "night": + call update_DRgame_sickness + call DRgame_random_event + + if DRgame.game_over: + show screen blkfade + with d5 + pause 1 + centered "{size=+7}{color=#cbcbcb}Game Over...{/color}{/size}" + pause 1 + centered "{size=+7}{color=#cbcbcb}You made it to day [DRgame.day]!{/color}{/size}" + pause 1 + jump dark_room_game_start_menu + + #Jump next day + call nar(">Night gathers...\nAnd a new day begins.") + $ DRgame.day += 1 + jump dark_room_main + + + +label update_DRgame_random_number: + python: + for i in DRgame.characters: + i.random_number = renpy.random.randint(1, 4) #1 is lucky, 4 is not + return + + +label DRgame_chibis: + + call gen_chibi("hide") + call sna_chibi("hide") + + #Player + $ genie_chibi.zorder = 1 + if DRplayer in DRgame.characters: + call gen_chibi("stand",710,165+250,flip=False) + + #Stranger + $ snape_chibi.zorder = 1 + if DRstranger in DRgame.characters: + if DRstranger.location != "outside": + call sna_chibi("stand",450,180+250,flip=True) + + return + + +label update_DRgame_needs: + python: + for i in DRgame.characters: + i.hunger -= 1 + if i.task == "" and i.hp < 10 and i != DRplayer: + i.hp += 1 + + for i in DRgame.characters: + if i.sick == False: + if (i.hunger < 5 and i.hp < 6 and i.random_number in [4]) or i.hp < 2: + i.sick = True + if i.name == "You": + renpy.say(None,"You have gotten ill.") + else: + renpy.say(None,"[i.name] has gotten ill.") + if i.sick: + i.force_task = False + i.task = "" + + return + + +label update_DRgame_sickness: + python: + for i in DRgame.characters: + if i.sick: + if i.hp >= 6 and i.hunger >= 3 and DRgame.fire >= 1: + i.sick = False + renpy.say(None,"[i.namse] looks to be a lot healthier. Their sickness seems to be gone.") + + return + + +label update_DRgame_meat_spoiling: + $ random_number = renpy.random.randint(1, 5) + if random_number in [1]: + $ DRgame.meat -= 5 + if random_number in [2]: + $ DRgame.meat -= 3 + if DRgame.meat < 0: + $ DRgame.meat = 0 + return + + +label update_DRgame_hunger: + if DRgame.meals <= 0: + "There was no food left to eat." + "If this continues, you will starve..." + return + if DRgame.fire <= 0 and DRgame.wood >= 1: + "There was no fire to heat up the meal..." + menu: + "-Stoke the fire-": + $ DRgame.fire = 1 + $ DRgame.wood -= 1 + $ fire_in_fireplace = True + $ fireplace_OBJ.foreground = "fireplace_fire" + with d5 + if DRgame.fire <= 0 and DRgame.wood <= 0: + "You had no more wood to heat up the fire..." + "You turn back to your tasks hungry..." + return + + python: + for i in DRgame.characters: + if DRgame.meals >= 1: + if i.sick: #Priority + if i.hunger < 7: + i.hunger += 1 + DRgame.meals -= 1 + else: + if i.hunger < 7: + i.hunger += 1 + DRgame.meals -= 1 + for i in DRgame.characters: + if DRgame.meals >= 1: + if i.sick: #Priority + if i.hunger < 10: + i.hunger += 1 + DRgame.meals -= 1 + else: + if i.hunger < 10: + i.hunger += 1 + DRgame.meals -= 1 + + if DRgame.time in ["afternoon"]: + "A long day of work... it was time to eat..." + if DRgame.meals <= 0: + "All food that was left got eaten..." + + return + + +label DRgame_leave_for_task: + python: + for i in DRgame.characters: + if i.task in ["wood_cutting","hunting"]: + if game.weather in ("clear", "cloudy", "overcast"): + i.location = "outside" + elif i.force_task == True: + i.location = "outside" + else: + i.location = "room" + + call DRgame_chibis + with d5 + + return + +label DRgame_return_from_task: #renpy.say(None,"[i.name] has gotten ill.") + python: + for i in DRgame.characters: + if i.location == "outside": + i.location = "room" + + call DRgame_chibis + with d5 + + python: + for i in DRgame.characters: + + #Hunting + if i.task == "hunting" and game.weather in ("clear", "cloudy", "overcast") or i.force_task == True: #They were hunting. + temp_item = 2 + if game.weather in ("blizzard", "snow", "storm", "rain"): + temp_item -= 1 + if i.hp > 1: + i.hp -= 1 + if "hunting" in i.unskilled: + temp_item -= 1 + if "hunting" in i.skills: + temp_item += 1 + if temp_item == 3 or (temp_item == 2 and "knife" in i.inventory): + temp_item += 1 + + #Deer + if "bow" in i.inventory and "arrows" in i.inventory and "hunting" not in i.unskilled: + if i.random_number in [1,2]: + temp_item = 5 #Deer + else: + temp_item = 4 #Fox + + DRgame.meat += temp_item + renpy.say(None,"[i.name] came back from the hunt, hungry and freezing.") + if game.weather in ("blizzard", "snow", "storm", "rain"): + renpy.say(None,"The cold rains have shown its mark on them...") + if temp_item >= 5: + renpy.say(None,"A large deer on their back. This will last a couple of days.") + renpy.say(None,"Its leather seems almost untouched.") + DRgame.leather += renpy.random.randint(2, 3) + elif temp_item in [3,4]: + renpy.say(None,"They found a small fox. Should be good enough to eat...") + renpy.say(None,"Its fur will help with the cold.") + DRgame.fur += renpy.random.randint(1, 2) + elif temp_item == 2: + renpy.say(None,"They found a wild chicken.") + renpy.say(None,"The feathers will make good arrows") + DRgame.feathers += renpy.random.randint(4, 8) + elif temp_item == 1: + renpy.say(None,"They only caught a small rabbit. There won't be much to eat it seems...") + else: + renpy.say(None,"They were unsuccessful and couldn't find any wild animals in the thick snow.") + + #Wood Chopping/Gathering + if i.task == "chopping_wood" and game.weather in ("clear", "cloudy", "overcast") or i.force_task == True: #They were gathering wood/chopping wood. + temp_item = 3 + if game.weather in ("blizzard", "snow", "storm", "rain"): + temp_item -= 1 + if i.hp > 1: + i.hp -= 1 + if "strength" in i.unskilled: + temp_item -= 1 + if "strength" in i.skills: + temp_item += 1 + if "axe" in i.inventory: + temp_item += 1 + + DRgame.wood += temp_item + if "axe" in i.inventory: + renpy.say(None,"[i.name] came back from chopping wood.") + renpy.say(None,"They chopped [temp_item] piles with their axe.") + else: + renpy.say(None,"[i.name] came back from gathering wood.") + if temp_item == 1: + renpy.say(None,"They gathered [temp_item] pile of wood out in the forest.") + else: + renpy.say(None,"They gathered [temp_item] piles of wood out in the forest.") + + return + +label DRgame_random_event: + if DRgame.day == 1: + if DRgame.time in ["morning"]: + if "intro" not in DRgame.events: + $ DRgame.events.append("intro") + call play_music("night_outside") + pause 2 + "Wind howls throughout the night." + "A merciless cold, creeps into every part of your bones..." + "You've been walking through a raging blizzard for what felt like hours, the cold biting deep into your skin..." + pause 2 + "And then you finally found it..." + "An empty wood cabin. No lights. No sound. Not a soul." + pause 1 + "Shelter, at last..." + pause 2 + call play_music("stop") + call play_sound("door") + pause.5 + call gen_chibi("stand","door","base",flip=False) + with d5 + pause.8 + "The cabin, its walls strong against the harsh winds... but still as cold as the outside..." + "You need to take action... Fast..." + $ DRgame.characters.append(DRplayer) + + if DRgame.day in [3,5]: + if DRgame.time in ["noon"]: + if "stranger_intro" not in DRgame.events: + if DRgame.day == 3: + call play_sound("knocking") + pause.2 + call gen_chibi("hide") + with d3 + call gen_chibi("stand","mid","base") + with d5 + pause.5 + "A strong knocking halls through the nearly empty cabin." + "It's a man. Stranger, he calls himself..." + "The cold has been taking its toll on him." + "He promises you help, for shelter..." + pause.8 + "Will you let him in?" + menu: + "-Let him in-": + $ DRgame.events.append("stranger_intro") + $ DRgame.characters.append(DRstranger) + $ DRstranger.location = "room" + pause.5 + call play_sound("door") + call sna_chibi("stand","door","base") + with d5 + pause.8 + "The stranger is more than thankful to you." + "He'd be happy to help gather wood or hunt meat." + "-Tell him to leave-": + "The stranger reluctantly leaves." + $ DRgame.time = "afternoon" + return + elif DRgame.day == 5: + call play_sound("knocking") + pause.2 + call gen_chibi("hide") + with d3 + call gen_chibi("stand","mid","base") + with d5 + pause.5 + "Another loud knocks at the sturdy cabin door." + "Once again, it's the stranger..." + "He has no more food, no more water, so he says..." + "He is making a threat. You will regret this, he tells you..." + pause.8 + menu: + "-Let him in-": + $ DRgame.events.append("stranger_intro") + $ DRgame.characters.append(DRstranger) + $ DRstranger.location = "room" + pause.5 + call play_sound("door") + call sna_chibi("stand","door","base") + with d5 + pause.8 + "The stranger is more than thankful to you." + "He'd be happy to help gather wood or hunt for meat." + "-Let him starve-": + "He quietly leaves." + $ DRgame.time = "afternoon" + return + #Afternoon + if DRgame.time in ["afternoon"]: + + #Fire goes out. + $ random_number = renpy.random.randint(1, 5) + if random_number in [1,2] and DRgame.fire in [1]: + $ DRgame.fire = 0 + stop bg_sounds + hide screen DRgame_blktone + show screen DRgame_blktone + $ fire_in_fireplace = False + $ fireplace_OBJ.foreground = None + with d9 + pause.8 + call nar(">The fire wasn't strong enough.\nIt failed fighting the bitter cold, and went out...") + pause.8 + + $ DRgame.time = "night" + + #Night + if DRgame.time in ["night"]: + + if DRgame.day == 6 and "stranger_intro" not in DRgame.events: + call play_music("night_outside") + show screen blkfade + with d5 + pause .8 + "In the night, you quietly woke up." + "You thought someone was moving outside of the cabin." + "You heard a clashing sound of metal hitting stone..." + "Followed closely by a sound that was only too familiar..." + call play_music("stop") + pause.8 + "The sound that had been the only comfort in the last few days in this cold winter, now made you feel dread..." + "It was fire! The cabin was slowly burning from every side, more, and more." + call play_music("hitman") + "You hurried across the empty room towards the only way that went outside." + "You unhinged the metal locks on the heavy door." + call play_sound("bump") + "But the large door wouldn't move... It was barricaded from the outside..." + call play_sound("bump") + pause.8 + call play_sound("bump") + pause.6 + call play_sound("bump") + "With no way out, you grabbed your axe and started tearing down the wooden door..." + pause.5 + call play_sound("bump") + pause.6 + call play_sound("bump") + pause.8 + call play_sound("bump") + call play_music("stop") + "The heat grew unbearable. At last, you dropped your axe and sank to the floor." + "The cabin burned down over the night, into a pile of ash and snow..." + "You didn't make it out..." + $ DRgame.game_over = True + + if not DRgame.game_over: + $ temp_name = "" + python: + for i in DRgame.characters: + if i.sick: + if i.random_number in [4] and DRgame.fire == 0: + DRgame.characters.remove(i) + temp_name = i.name + if temp_name != "": + show screen blkfade + with d9 + "A long-fought battle against illness has been lost..." + pause 2 + if DRplayer not in DRgame.characters: + "You died in the night..." + $ DRgame.game_over = True + else: + "[temp_name], has died in the night." + + $ DRgame.time = "morning" + + return + + +screen dark_room(): + add "images/rooms/_bg_/main_room_night.webp" + + add "images/rooms/objects/doors/door_idle_night.webp" at Position(xpos=898, ypos=315, xanchor="center", yanchor="center") + add "images/rooms/objects/fireplace/fireplace_w_shadow.webp" at Position(xpos=693, ypos=277, xanchor="center", yanchor="center") + if read_book: + if DRgame.fire == 0: + add "ch_gen read" xpos 350 ypos 205 + else: + add "ch_gen read_near_fire" xpos 350 ypos 205 + #else: + #use chair_left + add "images/rooms/main_room/desk_empty.webp" xpos 370 ypos 336 xanchor 0.5 yanchor 0.5 + + zorder 0 + +screen DRgame_blktone(): #Use this instead of "blktone", or it will cause issues with chibis. + tag DRgame_blktone + if DRgame.fire <= 0: + add Color("#000", alpha=0.7) + elif DRgame.fire == 1: + add Color("#000", alpha=0.3) + zorder 4 + +screen DRgame_menu(): + tag DRgame_menu + + #Door + imagebutton: + xpos 898 + ypos 315 + focus_mask True + xanchor "center" + yanchor "center" + idle "images/rooms/objects/doors/door_idle.webp" + hover "images/rooms/objects/doors/door_hover.webp" + action [Hide("DRgame_menu"), Jump("DRgame_door")] + + #Fireplace + imagebutton: + xpos 693 + ypos 277 + focus_mask True + xanchor "center" + yanchor "center" + idle "images/rooms/objects/fireplace/fireplace_idle.webp" + hover "images/rooms/objects/fireplace/fireplace_hover.webp" + action [Hide("DRgame_menu"), Jump("DRgame_fireplace")] + + #Chair left chair_left + imagebutton: + xpos 332 + ypos 300 + focus_mask True + xanchor "center" + yanchor "center" + idle "images/rooms/main_room/chair_left_no_shadow.webp" + hover yellow_tint("images/rooms/main_room/chair_left_no_shadow.webp") + action [Hide("DRgame_menu"), Jump("dark_room_chair_left")] + + #Desk + imagebutton: + xpos 360 + ypos 330 + focus_mask True + xanchor "center" + yanchor "center" + idle "images/rooms/main_room/desk_no_shadow.webp" + hover yellow_tint("images/rooms/main_room/desk_no_shadow.webp") + action [Hide("DRgame_menu"), Jump("dark_room_desk")] + + #Player + imagebutton: + xpos genie_chibi.pos[0] + ypos genie_chibi.pos[1] + focus_mask True + #xanchor "center" + #yanchor "center" + if not genie_chibi.flip: + idle "ch_gen stand" + hover yellow_tint("ch_gen stand") + else: + idle Transform("ch_gen stand", xzoom=-1.0) + hover yellow_tint( Transform("ch_gen stand", xzoom=-1.0) ) + action [Hide("DRgame_menu"), Jump("dark_room_player")] + + #Stranger + if DRstranger in DRgame.characters and DRstranger.location not in ["outside"]: + imagebutton: + pos sna_chibi.pos + focus_mask True + #xanchor "center" + #yanchor "center" + if not snape_chibi.flip: + idle "ch_sna stand" + hover yellow_tint("ch_sna stand") + else: + idle Transform("ch_sna stand", xzoom=-1.0) + hover yellow_tint( Transform("ch_sna stand", xzoom=-1.0) ) + action [Hide("DRgame_menu"), Jump("dark_room_stranger")] + + if DRmaid in DRgame.characters and DRmaid.location in ["room","desk","fireplace"]: + imagebutton: + pos hermione_chibi.pos + focus_mask True + xanchor "center" + yanchor "center" + idle hermione_chibi_blink + hover yellow_tint(hermione_chibi_blink) + action [Hide("DRgame_menu"), Jump("dark_room_maid")] + + zorder 1 + + +#Fireplace +label DRgame_fireplace: + if DRgame.wood >= 1 and DRgame.fire <= 0: + $ DRgame.fire += 1 + $ DRgame.wood -= 1 + $ fire_in_fireplace = True + $ fireplace_OBJ.foreground = "fireplace_fire" + with d9 + pause 1 + "The fire is burning..." + jump DRgame_fireplace + elif DRgame.wood <= 0 and DRgame.fire <= 0: + call nar(">You don't have any more wood to burn.\nSoon you will all freeze to death.") + jump DRgame_resume + + menu: + "-Stoke the fire-" if DRgame.wood >= 1 and DRgame.fire < 2: + $ DRgame.fire += 1 + $ DRgame.wood -= 1 + pause .2 + $ fire_in_fireplace = True + $ fireplace_OBJ.foreground = "fireplace_fire" + with d9 + pause 1 + if DRgame.fire == 1: + "The fire is burning..." + if DRgame.fire == 2: + "The fire is roaring..." + "It will burn until night falls." + "-Stoke the fire-" (style="disabled") if DRgame.wood < 1 or DRgame.fire >= 2: + if DRgame.fire >= 2: + call nar(">The fire burns more than enough.") + else: + call nar(">You don't have any more wood to burn.\nSoon you will all freeze to death.") + "-Cook some meat-" if DRgame.fire >= 1 and DRgame.meat >= 1: + jump DRgame_cook_meat + "-Cook some meat-" (style="disabled") if DRgame.fire >= 1 and DRgame.meat < 1: + call nar(">You don't have any meat to cook.") + "-Leave the fireplace-": + jump DRgame_resume + jump DRgame_fireplace + +label DRgame_cook_meat: + call DRgame_advance_time + + $ temp_number = 1 + if DRgame.meat == 1: + $ temp_number = 1 + elif DRgame.meat == 2: + $ temp_number = 2 + elif DRgame.meat >= 3: + $ temp_number = 3 + + $ DRgame.meat -= temp_number + $ DRgame.meals += temp_number + + if temp_number in [1]: + "With barely any meat left, you were able to cook a small stew..." + if temp_number in [2]: + "There was enough meat to cook a decent stew..." + if temp_number in [3]: + "You were able to cook a rather large stew with meat." + jump DRgame_resume + + +#Door +label DRgame_door: + menu: + "-Chop Wood-": + jump DRgame_chop_wood + "-Hunt for Animals-": + jump DRgame_hunt_animals + "-Leave the door-": + jump DRgame_resume + + +label DRgame_chop_wood: + call DRgame_advance_time + + call play_sound("door") + call gen_chibi("hide") + with d5 + pause.2 + call play_music("night") + pause.8 + + + $ temp_number = 1 + if DRplayer.random_number in [1]: + $ temp_number += 2 + if DRplayer.random_number in [2]: + $ temp_number += 1 + if DRplayer.random_number in [4]: + $ temp_number -= 1 + if "strength" in DRplayer.skills: + $ temp_number += 1 + + $ DRgame.wood += temp_number + + call gen_chibi("stand","door","base",flip=False) + with d5 + + "Exhausted you return to the cabin..." + "You were able to gather and chop [temp_number] pieces of wood." + + if game.weather in ("blizzard", "snow", "storm", "rain"): + $ DRplayer.hp -= 1 + "The ruthless weather has shown its mark on you. You shouldn't have gone out there." + "But there was no other choice..." + + jump DRgame_resume + + +label DRgame_hunt_animals: + call DRgame_advance_time + + call play_sound("door") + call gen_chibi("hide") + with d5 + pause.2 + call play_music("night") + pause.8 + + $ temp_number = 1 + if DRplayer.random_number in [1]: + $ temp_number += 2 + if DRplayer.random_number in [2]: + $ temp_number += 1 + if DRplayer.random_number in [4]: + $ temp_number -= 1 + if game.weather in ("blizzard", "snow", "storm", "rain"): + $ temp_number -= 1 + + $ DRgame.meat += temp_number + + call gen_chibi("stand","door","base",flip=False) + with d5 + + "You returned from the hunt..." + if temp_number <= 0: + "You were unsuccessful, and couldn't find any wild animals in the thick snow." + elif temp_number == 1: + "You only caught a small rabbit." + elif temp_number == 2: + "You found a wild chicken." + else: + "You found a small fox. Should be good enough to eat..." + + if game.weather in ("blizzard", "snow", "storm", "rain"): + $ DRplayer.hp -= 1 + "The ruthless weather has shown its mark on you. You shouldn't have gone out there." + "But there was no other choice..." + + jump DRgame_resume + +#Chair Left +label dark_room_chair_left: + call gen_chibi("hide") + hide screen dark_room + $ read_book = True + show screen dark_room + with d5 + pause.8 + "In a drawer, you found a dusty old book...\nYou decide to read it..." + if DRgame.fire <= 0: + "The words written on the pages, merge with the long darkness of the night." + "For a minute, you stare into the dark, cold, and empty room, wondering if you will ever leave this place alive..." + "You place the book back to where it was..." + else: + "You read through the pages, glued to every word." + if DRgame.characters == [DRplayer]: + "It helps you cope with your new found loneliness..." + if DRplayer.hp < 10: + $ DRplayer.hp += 1 + "You feel a bit better..." + + hide screen dark_room + $ read_book = False + show screen dark_room + + call DRgame_advance_time + jump DRgame_resume + + +#Player +label dark_room_player: + menu: + "You": + pass + "-Hunger-": + if DRplayer.hunger in [7,8,9,10]: + "You aren't hungry." + elif DRplayer.hunger in [6,5,4]: + "You could do with another meal." + else: + "You feel hungry." + "-Health-": + if DRplayer.sick == True: + "You are sick. Eat enough, leave work to others, and make sure that the fire is always warm..." + "You will die if you don't." + else: + if DRplayer.hp in [6,7,8,9,10]: + "You feel healthy enough." + else: + "You health is fading. You might become sick." + jump DRgame_resume + +#Stranger +label dark_room_stranger: + menu: + "Stranger": + pass + "-Hunger-": + if DRstranger.hunger in [7,8,9,10]: + "They aren't hungry." + elif DRstranger.hunger in [6,5,4]: + "They could do with another meal." + else: + "They feel hungry." + "-Health-": + if DRstranger.sick == True: + "They are sick. They will need food and a warm bed..." + "They will die if they don't get help." + else: + if DRstranger.hp in [6,7,8,9,10]: + "They are healthy." + else: + "Their health is fading. They might become sick." + "-Task-": + menu: + "Give them a task." + "-Chopping Wood-": + $ DRstranger.task = "chopping_wood" + "-Hunting-": + $ DRstranger.task = "hunting" + "-Force to do task-" if DRstranger.task in ["chopping_wood","hunting"]: + $ DRstranger.force_task = True + "The stranger reluctantly agreed do their tasks even in bad weather..." + jump DRgame_resume + "-Get better-" if DRstranger.hp < 6: + $ DRstranger.task = "" + $ DRstranger.force_task = False + "You give them their task..." + "They nod." + + jump DRgame_resume + +#Desk +label dark_room_desk: + menu: + "Resources" + "Day [DRgame.day]": + pass + "-[DRgame.wood] pieces of firewood-": + "Gather some more when the weather allows it." + "-[DRgame.meat] pieces of raw meat-": + "Cook them or they will spoil." + "-[DRgame.meals] cooked meals-": + "Meals don't spoil, but they take time to cook." + "-[DRgame.leather] pieces of leather-": + "Leather from hunting deer." + "Craft a bow and some arrows to hunt them." + "-[DRgame.fur] pieces of fur-": + "Leather from hunting small animals like foxes." + "They can be caught easier with a knife, or by laying out traps." + "-[DRgame.feathers] feathers-": + "Feathers are required to craft arrows." + "-Return to the start menu-": + jump dark_room_game_start_menu + jump DRgame_resume + + +label DRgame_advance_time: + if DRgame.time == "morning": + $ DRgame.time = "noon" + elif DRgame.time == "noon": + $ DRgame.time = "afternoon" + elif DRgame.time == "afternoon": + $ DRgame.time = "night" + return + + +init -1 python: + + class DarkRoomGame(object): + day = 1 + time = "" + characters = [] + events = [] + fire = 0 + wood = 23 + meat = 5 + meals = 0 + leather = 0 + fur = 0 + feathers = 0 + water = 20 + gold = 0 + game_over = False + + def __init__(self, **kwargs): + self.__dict__.update(**kwargs) + + def getChar(self): + return self.characters + + class DarkRoomCharacter(object): + name = "" + hp = 10 + hunger = 5 + sick = False + random_number = 1 + days_here = 0 + friendship = 0 + task = "" #chopping_wood, hunting, sewing, cooking, woodworking, + force_task = False #You can tell them to go out in bad weather. + location = "" + skills = [] + unskilled = [] + inventory = [] + + def __init__(self, **kwargs): + self.__dict__.update(**kwargs) diff --git a/game/scripts/minigames/mirror/events/a_spaced_out_conversation.rpy b/game/scripts/minigames/mirror/events/a_spaced_out_conversation.rpy new file mode 100644 index 00000000..6abf402c --- /dev/null +++ b/game/scripts/minigames/mirror/events/a_spaced_out_conversation.rpy @@ -0,0 +1,221 @@ +label a_spaced_out_conversation: + + # Setup + $ fireplace_OBJ.foreground = "fireplace_fire" + $ game.daytime = False + $ game.weather = "clear" + $ chair_OBJ.hidden = True + stop weather + call room("main_room") + call play_music("stop") + call gen_chibi("hide") + show screen with_snape(ani=False) + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}A spaced out conversation.{/color}{/size}" + + hide screen blkfade + with d5 + + call play_music("anguish") + + nar "The flames flickered higher up the fireplace." + nar "Licking in greedy hunger, as if wanting to taste the wine the two men sedately drank just out of the fire's reach." + nar "The men took no notice of the flames, except to silently acknowledge the warmth it provided." + nar "They were an odd pair, these two, sitting as they frequently did, beside the old fireplace sipping wine." + nar "One, dressed all in black, with matching flowing black hair, stared sullenly at his glass." + nar "Perhaps it was the darkness surrounding him that made his skin look so pale." + nar "And maybe it was only the voluminous robes wrapped loosely across his body that made him appear gaunt." + nar "The other was even more mysterious..." + nar "Draped in gray-white costume, he had a long, flowing beard and a curious aura of both age and vitality." + nar "Sometimes, if the flames flickered just so, he almost appeared entirely different, as a burly, cowled man with a short curled beard." + nar "They sat in front of the fire as they did on many nights and talked of worlds upon worlds. And of magic. The dark man was first to speak." + + sna "So, let me try to understand this..." ("snape_05", ypos="head", trans=d3) + nar "Snape said slowly." + sna "You live in a little bottle?" ("snape_05") + nar "The gray figure nodded." + sna "How does that work?" ("snape_05") + gen "I believe it's based on tessaracted space." ("base", xpos="far_left", ypos="head") + nar "Said Genie, his tone becoming akin to a professor lecturing a class." + gen "The whole process is very Loki." ("base", xpos="far_left", ypos="head") + show screen a_spaced_out_conversation_horns + with d9 + nar "Snape didn't hear the last words as a flicker and shadow from the flames made Genie appear different." + nar "Almost as if gleaming golden horns arose from his head." + sna "Come again?" ("snape_03") + hide screen a_spaced_out_conversation_horns + with d9 + nar "Snape asked, gaping at the sight before it was gone so fast that he was left unsure he had seen anything." + gen "I said, they keep the whole thing low key." ("base", xpos="far_left", ypos="head") + nar "Genie repeated." + gen "Keeps most people from knowing how they make it bigger on the inside." ("base", xpos="far_left", ypos="head") + sna "Most people?" ("snape_05") + nar "Snape asked." + gen "Well, Who knows..." ("base", xpos="far_left", ypos="head") + nar "Genie answered." + sna "Do you know?" ("snape_24") + nar "Snape asked." + gen "Who knows." ("base", xpos="far_left", ypos="head") + nar "Genie repeated." + sna "So, who knows?" ("snape_08") + nar "Snape asked again, getting a little irritated." + nar "Patience was not a trait Snape had ever cared to master." + gen "Yes, Who knows!" ("base", xpos="far_left", ypos="head") + nar "Genie said." + show screen with_snape(ani=True) + nar "Snape flicked his hands impatiently and just decided to move on." + show screen with_snape(ani=False) + nar "Determining when Genie was serious or not was still beyond his ability." + nar "Plus, there had been another one of those weird flickers and he could have sworn he had seen a multicoloured scarf around Genie's neck." + sna "And, you then grant the summoner three wishes?" ("snape_01") + nar "Snape continued." + sna "Anything they want? You can make anything come true?" ("snape_05") + gen "Those are the rules of my existence, yes." ("base", xpos="far_left", ypos="head") + nar "Genie replied, thinking, not for the first time, how limited his real life was." + sna "That seems stupid." ("snape_09") + nar "Snape said bluntly." + nar "Genie smiled. Snape was never much for niceties." + nar "Genie found it refreshing to talk with someone whose disdain for others so matched his own." + nar "Snape frowned at that smile. He got along almost perfectly with Genie." + nar "Their lusts and passions were quite similar..." + nar "It's just Genie's sense of humour that made Snape doubt his seriousness sometimes." + sna "You've got the power of a god." ("snape_06") + nar "Snape pushed forward." + sna "Can't you just \"wish\" yourself free?" ("snape_05") + gen "It doesn't work that way." ("base", xpos="far_left", ypos="head") + nar "Genie said with sadness." + gen "I can only grant wishes to others." ("base", xpos="far_left", ypos="head") + nar "Snape shook his head." + sna "It still seems stupid..." ("snape_06") + sna "What if I were to visit you in your world and make one of my wishes that you be free to use your magic however you should please?" ("snape_09") + nar "Genie stared at Snape with something like wonder." + nar "It takes quite a bit to make an ageless being like Genie gape in awe." + g5 "That's... {w=1.0}That's brilliant!" + nar "Genie shouted." + g6 "Great Gods, man, that could actually work!" + nar "Snape was taken aback by Genie's enthusiastic shout, but quickly recovered." + nar "He was happy for his friend's excitement, but puzzled." + sna "Haven't you ever thought of that before?" ("snape_05") + nar "Snape asked." + gen "Well, no..." ("base", xpos="far_left", ypos="head") + nar "Said Genie, and if ageless beings could blush, one would assume that's what Genie would be doing." + gen "It's not something that ever came up." ("base", xpos="far_left", ypos="head") + sna "No one suggested it to you?" ("snape_01") + nar "Snape asked, hoping to skip past Genie's discomfort." + gen "Surprisingly, when given three opportunities at your fondest dreams, helping others doesn't seem to come up very often." ("base", xpos="far_left", ypos="head") + nar "Genie said with a sarcastic edge that relieved Snape." + sna "Well, then..." ("snape_01") + nar "Snape said." + sna "After we find a way to get you back to your home, maybe I could come visit you and we could work something out." ("snape_28") + nar "Genie eyed him curiously and then, with a bit of his usual humour then asked." + gen "Are you sure you could resist the urge to use all three on yourself?" ("grin", xpos="far_left", ypos="head") + nar "Snape chuckled. He momentarily considered how rarely he chuckled." + nar "Not with humour, at least. He hadn't really done that since..." + sna "Yes." ("snape_28") + nar "Snape said with sudden certainty." + sna "There is really only one wish I would really want." ("snape_23") + nar "Genie raised an eyebrow at that, but let it stand." + gen "What would be your wish, my friend?" ("base", xpos="far_left", ypos="head") + nar "He asked Snape kindly." + sna "I wish I could go back and have wooed Lily for my own..." ("snape_23") + nar "Snape said dreamily. In his mind's eye, he remembered the flaming red hair that lit a fire in his own heart." + sna "I sometimes wonder if that would have made all the difference." ("snape_29") + nar "Snape mused." + sna "If I would have been a better, a kinder man than I am today." ("snape_06") + gen "But would you have been as popular?" ("grin", xpos="far_left", ypos="head") + nar "Genie asked." + gen "you were central in every book and movie. Everyone loves you." ("base", xpos="far_left", ypos="head") + sna "What?" ("snape_05") + nar "Snape snapped from his reverie. He looked at Genie in confusion." + gen "I mean, would you have been as powerful." ("base", xpos="far_left", ypos="head") + nar "Genie said hastily." + gen "Wasn't that rejection what drove you to your studies and your mastery?" ("base", xpos="far_left", ypos="head") + nar "Snape eyed Genie suspiciously, but let the matter pass." + sna "Yes, but I would sacrifice all that to be rid of this loneliness." ("snape_06") + nar "Snape returned to his imaginings." + gen "Well, even if you didn't stay together..." ("base", xpos="far_left", ypos="head") + nar "Genie said mischievously." + gen "you could at least have had a little fun with her. Maybe even take her on her wedding night." ("base", xpos="far_left", ypos="head") + nar "Snape's head snapped up angrily. How dare Genie sully the memory of Lily." + nar "But then, a wicked thought entered his head." + sna "*Hmm*... What if the boy wasn't really James' after all?" ("snape_02") + nar "Snape said, and the smile that formed on his face could have frozen the dancing fire beside them." + sna "Then, one day, I could reach out to that insipid boy, with his foolish fantasies about Potter and say, \"Harry, I am your father!\"" ("snape_28") + nar "Genie nodded." + gen "It could work. You've got the black robes already. You just need the helmet." ("grin", xpos="far_left", ypos="head") + nar "Snape cocked an eyebrow in confusion. The flames leapt and danced and Genie flickered once again." + gen "No mind pay you." ("grin", xpos="far_left", ypos="head") + nar "Genie said." + gen "Darkness that path, take you it will." ("grin", xpos="far_left", ypos="head") + sna "Um?" ("snape_29") + nar "Snape stammered." + gen "What?" ("base", xpos="far_left", ypos="head") + nar "Genie asked." + sna "For a moment there, I thought you..." ("snape_01") + nar "Snape trailed off, reluctant to go on." + gen "You thought {b}I{/b} what?" ("base", xpos="far_left", ypos="head") + nar "Genie prodded." + gen "Out with it man!" ("base", xpos="far_left", ypos="head") + sna "I thought you looked all shrunken, like a deformed house elf." ("snape_06") + nar "Snape finally managed to say." + nar "Genie laughed." + gen "Muppet?" ("base", xpos="far_left", ypos="head") + sna "No thanks, I'll just have the wine." ("snape_05") + nar "Snape replied." + gen "I'm afraid that's the last of it." ("base", xpos="far_left", ypos="head") + nar "Genie said, looking mournfully at the bottle." + nar "He eyed Snape through the red droppings of wine still remaining in his glass. It looked like Snape was bleeding." + nar "The image disturbed him and he put his glass down." + gen "So..." ("base", xpos="far_left", ypos="head") + nar "Genie coughed once, cleared his throat and continued." + gen "Did you mean it?" ("base", xpos="far_left", ypos="head") + sna "About the wishes?" ("snape_05") + nar "Snape asked." + gen "Yes." ("base", xpos="far_left", ypos="head") + nar "Genie said, unable to keep the excitement from his voice." + gen "Would you really come to my world and set me free with a wish." ("base", xpos="far_left", ypos="head") + sna "Why not?" ("snape_06") + nar "Snape said." + sna "Assuming we can find a way to send you back." ("snape_09") + gen "Right." ("base", xpos="far_left", ypos="head") + nar "Genie said, sobering up." + gen "There's that." ("base", xpos="far_left", ypos="head") + nar "Snape looked at his friend and sensed his growing gloom." + sna "Cheer up, Genie." ("snape_23") + nar "He said, clapping the image of his old wizard master on the shoulder." + sna "We just need to be careful. We don't want to make a mistake and send you somewhere crazy." ("snape_05") + gen "Like a space station?" ("base", xpos="far_left", ypos="head") + nar "Genie asked, his humour returning with his hope." + sna "Exactly." ("snape_28") + nar "Snape replied." + nar "Not sure what a ‘space station' was." + sna "We don't want you to end up far, far away." ("snape_24") + gen "In the final frontier?" ("base", xpos="far_left", ypos="head") + nar "Genie asked, with a wink that to Snape always meant some kind of inside joke Snape never understood." + nar "He decided to ignore it as he had many other times." + sna "Let me continue to research why your powers of transdimensional travel are muted here and we'll find a way to fix your problem." ("snape_05") + gen "Both our problems." ("base", xpos="far_left", ypos="head") + nar "Genie suggested and this time, both of them laughed together." + sna "You know, Genie, this could be the start of a beautiful friendship." ("snape_23") + nar "Snape said, standing to leave." + hide snape_main + with d3 + gen "Well, you know what the game devs say." ("base", xpos="far_left", ypos="head") + nar "Genie replied, causing the dark man to pause and look back quizzically." + gen "Play it again, Snape." ("base", xpos="far_left", ypos="head") + + show screen blkfade + with d9 + + stop music fadeout 3.0 + + centered "{size=+7}{color=#cbcbcb}The end.{/color}{/size}" + + $ renpy.end_replay() + +screen a_spaced_out_conversation_horns(): + zorder 4 + + add "images/rooms/room_of_requirement/horns.webp" xpos 435 ypos 200 zoom 0.5 diff --git a/game/scripts/minigames/mirror/events/a_white_christmas.rpy b/game/scripts/minigames/mirror/events/a_white_christmas.rpy new file mode 100644 index 00000000..a04f08ea --- /dev/null +++ b/game/scripts/minigames/mirror/events/a_white_christmas.rpy @@ -0,0 +1,374 @@ +label a_white_christmas_rewards: + + if not ton_outfit_wrestling_coach.unlocked: + call unlock_clothing(text=">New clothing items for Tonks have been unlocked!", item=ton_outfit_wrestling_coach) + call unlock_clothing(text=">New clothing items for Hermione have been unlocked!", item=her_outfit_wrestling) + + if not xmas_lights_ITEM.owned: + $ xmas_phoenix_ITEM.owned = 1 + $ xmas_owl_ITEM.owned = 1 + $ xmas_fireplace_ITEM.owned = 1 + $ xmas_lights_ITEM.owned = 1 + $ xmas_wreaths_ITEM.owned = 1 + $ xmas_giftchair_ITEM.owned = 1 + + call give_reward("Christmas decorations have been unlocked!", gift="interface/icons/xmas_wreaths.webp") + + return + +label a_white_christmas: + + # Setup + $ xmas_phoenix_ITEM.owned = 1 + $ xmas_owl_ITEM.owned = 1 + $ xmas_fireplace_ITEM.owned = 1 + $ xmas_lights_ITEM.owned = 1 + $ xmas_wreaths_ITEM.owned = 1 + $ xmas_giftchair_ITEM.owned = 1 + + $ xmas_phoenix_ITEM.use() + $ xmas_owl_ITEM.use() + $ xmas_fireplace_ITEM.use() + $ xmas_lights_ITEM.use() + $ xmas_wreaths_ITEM.use() + $ xmas_giftchair_ITEM.use() + + $ fireplace_OBJ.foreground = "fireplace_fire" + $ tonks.equip(ton_outfit_wrestling_coach) + $ hermione.equip(her_outfit_wrestling) + stop weather + $ game.daytime = False + $ game.weather = "snow" + call room("main_room") + call gen_chibi("sit_behind_desk") + call play_music("stop") + + $ hermione.strip("accessory") + + + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}A white Christmas{/color}{/size}" + + hide screen blkfade + with d5 + + play weather "sounds/wind_long_loop.ogg" fadein 2 fadeout 2 + call play_music("anguish") + + nar "'Twas a night like any other in the headmaster's room." + nar "Bored out of his mind, Genie felt a bit of gloom." + + gen "And here I thought this day was special..." ("base", xpos="far_left", ypos="head") + nar "As Christmas Day is what it was." + nar "But he was all alone... Like the wife of Mr. Claus..." + + gen "Stuck in here again, whilst everyone's having fun..." ("base", xpos="far_left", ypos="head") + gen "Perhaps I should join the students..." ("base", xpos="far_left", ypos="head") + gen "But if I'm caught, my days are done..." ("base", xpos="far_left", ypos="head") + + gen "Where's that Snape guy, or Miss Tonks?" ("base", xpos="far_left", ypos="head") + gen "Do they only visit when I have drinks?" ("base", xpos="far_left", ypos="head") + gen "Some friends they are..." ("base", xpos="far_left", ypos="head") + gen "Man, this place stinks..." ("base", xpos="far_left", ypos="head") + + nar "He then let out a sigh and slouched down in his chair..." + nar "As if loneliness was new to him." + gen "Suck my dick, narrator." ("base", xpos="far_left", ypos="head") + nar "As if in total despair..." + + nar "With nothing to do, his Christmas was looking quite grey." + gen "I guess I'll do what I always did... Stuck in that lamp all day." ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/paper_rustle.ogg") + nar "Hold on, that's not in the script..." + gen "I don't care anymore...{w=0.4} Just rewrite the script and add a couple whores." ("base", xpos="far_left", ypos="head") + + nar "You know, I can't do that, this is a Christmas tale..." + gen "Chris mah nuts." ("base", xpos="far_left", ypos="head") + gen "Leave me alone, the cheque's in the mail." ("base", xpos="far_left", ypos="head") + + nar "No, this isn't right, we can't leave it at that." + gen "Then what do you want from me? You narrating twat..." ("base", xpos="far_left", ypos="head") + + gen "Do you expect me to play a tune? Perhaps you want me to sing?" ("base", xpos="far_left", ypos="head") + nar "Anything wholesome at this point..." + gen "Just let me do my thing..." ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/zipper.ogg") + call gen_chibi("jerk_off_behind_desk") + with d3 + pause.8 + + nar "Whipping out his... instrument... He started, \"Playing a tune\"." + gen "Is that what they call it now?" ("grin", xpos="far_left", ypos="head") + nar "Stop doing that, you buffoon!" + + gen "Narrate this, bitch! You don't have a choice!" ("base", xpos="far_left", ypos="head") + gen "If you want to get paid for this job." ("base", xpos="far_left", ypos="head") + nar "...{w=0.4} I'll send you an invoice." + + nar "*Ahem*..." + nar "Stroking his dick in a rhythmical fashion..." + gen "*Heh-heh*" ("grin", xpos="far_left", ypos="head") + nar "(Screw this, I'll change this tale...)" + gen "Now where's that narrative passion?" ("base", xpos="far_left", ypos="head") + + nar "Smirking to himself, Genie forgot just one thing..." + nar "That I'm in charge of this story." + gen "What?" ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/MaleClearThroat.ogg") + nar "Now...{w=0.8}{nw}" + nar "Now...{fast} Entering the ring!" with hpunch + + stop music fadeout 2 + + show screen blkfade + with d5 + + nar "The office disappeared, and he got trapped in the void." + gen "What the fuck have you done to me?" ("angry", xpos="far_left", ypos="head") + nar "The narrative thread broken, now completely destroyed." + + call room("boxing_ring") + $ renpy.sound.play("sounds/microphone_feedback.ogg") + call gen_chibi("dick_out", xpos="left", ypos="base") + + hide screen blkfade + with d3 + nar "But then the void went away{nw}" + $ renpy.sound.play("sounds/killswitch_on.ogg") + $ boxing_ring_lights = True + play bg_sounds "sounds/crowd.ogg" fadein 10 + nar "But then the void went away{fast} as a flash of light appeared!" + + nar "And with that, there was music and an audience who loudly cheered!" + + $ renpy.sound.play("sounds/crowd_cheer.ogg") + play music "music/Under-the-Radar by PhobyAk.ogg" fadein 1 fadeout 1 + + nar "As genie's vision came back into focus, he saw where he was stood." + call gen_chibi("dick_out_shocked") + nar "In a wrestling ring, with his cock out... Everyone checking out his wood." + + nar "Frozen on the spot, the only thing he could do was shout." + gen "I'll kill you for this!" (face="open", base="hard", xpos=100, trans=d3) + nar "The match now beginning." + nar "The opponents, walking out." + + call gen_chibi("dick_out_normal") + gen "So much for the Christmas theme." (face="angry", base="hard") + + call her_chibi("stand", xpos="right", ypos="base") + with d3 + + nar "Genie said as his opponent entered the ring..." + her "" ("smile", "narrow", "base", "L", xpos="right", ypos="base", trans=d3) + nar "With a smirk spread across their face...{w=0.4} Her eyes fixed on Genie's thing." + + nar "Her coach then appeared and jumped over the rope." + + call ton_chibi("stand", xpos="far_right", ypos="base") + with d3 + + ton "I want a clean match... No trickery!" ("open", "base", "annoyed", "L", ypos="base", trans=d3) + ton "Don't you dare to even grope!" ("soft", "narrow", "annoyed", "L") + + $ renpy.sound.play("sounds/crowd_stomping.ogg") + nar "The audience was ecstatic, stomping loudly on the floor." + nar "Until the opponents' coach raised their hand, and the stomping was no more." + + nar "Genie held his breath until there was a shout." + ton "Now lets do this thing...{w=0.4} {size=+2}Let's start...{/size} {w=0.4}{size=+3}this...{/size} {w=0.4}{size=+4}silly...{/size} {w=0.4}{size=+5}bout!{/size}" ("mad", "base", "annoyed", "L") + + $ renpy.sound.play("sounds/crowd_cheer.ogg") + + gen "That's not fair at all, I can't fight her like this!" (face="open", base="hard", trans=d3) + gen "" (face="angry", base="hard", trans=d3) + her "" ("smile", "narrow", "base", "R", trans=d3) + ton "Oh, you've got this all wrong, my dear..." ("base", "narrow", "base", "L") + ton "Hermione... Get out those tits!" ("horny", "base", "base", "L") + + her "" ("base", "narrow", "base", "L", cheeks="blush") + pause .8 + + $ hermione.strip("robe") + $ renpy.sound.play("sounds/crowd_cheer.ogg") + + gen "What kind of fight is this?" (face="base", base="hard", trans=d3) + nar "Genie said, his cock twitching from the sight." + gen "This is a wrestling ring, is it not? Are we not supposed to fight?" (face="angry", base="hard", trans=d3) + + ton "" ("base", "narrow", "base", "L") + her "Fighting in your condition? Please don't make me laugh..." ("angry", "narrow", "base", "L", cheeks="blush") + + $ hermione.strip("bra") + + her "This is a test of will...{w=0.4} Fingers against staff..." ("smile", "narrow", "base", "L", cheeks="blush") + + $ hermione.strip("all") + call ctc + $ hermione.set_pose("masturbate") + $ hermione.set_body(armleft="on_pussy") + $ hermione.set_cum(pussy="wet") + call her_chibi("masturbate_pause") + #Finger inserted + $ renpy.sound.play("sounds/slick_02.ogg") + her "" ("soft", "closed", "worried", "mid", trans=d3) + with kissiris + with d3 + + nar "Hermione's panties then dropped and slid down to the floor, as she plunged her fingers inside her pussy, faster than she'd ever done before." + + ton "First to cum will win, now get to stroking that dick!" ("grin", "narrow", "base", "L", cheeks="blush") + ton "Keep your eyes on your opponent." ("grin", "base", "base", "L", cheeks="blush") + her "" ("soft", "base", "worried", "L", trans=d3) + ton "Show who's the master of cumming quick!" ("horny", "base", "base", "L", cheeks="blush") + + call gen_chibi("dick_out") + gen "Then you've picked the wrong opponent." (face="grin", base="hard", trans=d3) + her "" ("soft", "happy", "base", "L") + gen "You'll never have me beat." (face="grin", base="hard") + gen "I've had hundreds of years of practice, of stroking this precious meat." (face="grin", base="hard", trans=d3) + + ton "Then hurry up will you, she's already begun." ("open", "base", "shocked", "L", cheeks="blush") + ton "Start stroking that meat of yours, in five...{w=0.4} four...{w=0.4} three...{w=0.4} two...{w=0.4} one!" ("grin", "narrow", "annoyed", "L", cheeks="blush") + + play music "music/firebrand-by-kevin-macleod.ogg" fadein 1 + $ renpy.sound.play("sounds/wrestling_bell.ogg") + + call gen_chibi("hold_dick") + gen "" (face="grin", base="grab_dick") + with d3 + her "" ("grin", "narrow", "base", "L") + nar "Genie followed Hermione's lead, and grabbed a hold of his member." + call her_chibi("masturbate") + call gen_chibi("jerk_off") + with d3 + nar "Then began stroking like a mad man, as if he had just finished No Nut November." + + $ renpy.sound.play("sounds/crowd_cheer.ogg") + her "" ("crooked_smile", "narrow", "base", "L", cheeks="blush") + nar "Hermione moaned loudly for the audience and flushed across her face." + gen "Real crowd pleaser that one..." (face="angry", base="grab_dick") + her "" ("soft", "narrow", "base", "R", cheeks="blush") + ton "Remember our practice, girl! Keep a steady pace!" ("open", "base", "annoyed", "L") + + her "" ("grin", "narrow", "base", "L", cheeks="blush") + gen "You've met your match girl, I have an endless supply!" (face="open", base="grab_dick") + ton "" ("grin", "base", "base", "L") + gen "There's enough cum in these balls to stop the desert from being dry." (face="grin", base="grab_dick") + + her "" ("grin", "narrow", "base", "stare", cheeks="blush") + nar "Hermione started shaking... As she loved being in the spotlight." + her "" ("open_wide_tongue", "narrow", "base", "up", cheeks="blush") + gen "" (face="open", base="grab_dick") + nar "Then she pushed her fingers deep inside her, her pussy gripping oh so tight..." + + gen "" (face="angry", base="grab_dick") + ton "That's it, Miss Granger! Just make sure you don't get hurt!" ("mad", "narrow", "shocked", "L") + ton "Show him who is boss, move those fingers until you squirt!" ("grin", "wink", "base", "L") + + ton "" ("grin", "base", "base", "L") + nar "Genie tried to keep up--" + gen "Fuck you, I'm close to ejaculating!" (face="angry", base="grab_dick") + gen "She can't beat me at this! I will cover her like a painting!" (face="angry", base="grab_dick") + + her "" ("grin", "narrow", "base", "up", cheeks="blush") + $ renpy.sound.play("sounds/slick_02.ogg") + nar "Hermione shook even more when she pushed deep into her gash..." + ton "" ("horny", "narrow", "base", "down", cheeks="blush") + nar "Genie loss imminent--" + gen "NO!" (face="open", base="grab_dick") + nar "As she pulled them out with a--" + $ renpy.sound.play("sounds/slick_01.ogg") + #Hermione Squirts + her "" ("open_wide_tongue", "wide", "base", "up", cheeks="blush") + $ hermione.set_cum(pussy="squirt") + with kissiris + pause .8 + $ hermione.set_cum(pussy="squirt_post") + her "" ("smile", "happyCl", "base", "mid", cheeks="blush") + gen "" (face="angry", base="grab_dick") + ton "" ("grin", "base", "base", "L", cheeks="blush") + "{size=+4}*Splash!*{/size}" #Big text + stop music fadeout 2 + call gen_chibi("hold_dick") + call her_chibi("masturbate_pause") + + $ hermione.set_body(armleft="down") + $ hermione.set_cum(None) + with d5 + her "I...{w=0.4} I won!" ("grin", "happy", "base", "stare", cheeks="blush") + + play sound "sounds/crowd_applause.ogg" + $ hermione.wear("accessory") + + her "" ("grin", "happy", "base", "L", cheeks="blush") + nar "Said the girl, as the crowd erupted with a roar." + her "" ("base", "happy", "base", "R", cheeks="blush") + nar "The genie finally defeated, like never seen--" + play music "music/firebrand-by-kevin-macleod.ogg" fadein 1 + her "" ("angry", "base", "base", "L", cheeks="blush") + ton "" ("clench", "wide", "base", "L", cheeks="blush") + call gen_chibi("jerk_off") + with hpunch + gen "{size=+4}You fucking whore!{/size}" (face="open", base="grab_dick") + + nar "Oh, no you don't!" + nar "The girl is the winner!" + gen "That slut started before I did!" (face="angry", base="grab_dick") + gen "That slut started before I did!{fast} Now eat this semen...{w=0.4} {size=+4}Dinner!{/size}" (face="grin", base="grab_dick") + + nar "And with a yell and a grunt, genie emptied his balls." + show screen blkfade + with d5 + nar "As the arena faded away, shifting back to Hogwarts halls." + + stop music fadeout 2 + stop bg_sounds fadeout 2 + + play weather "sounds/wind_long_loop.ogg" fadein 2 fadeout 2 + + gen "What the hell happened?" ("angry", xpos="far_left", ypos="head") + nar "Genie said, as his vision went black." + nar "Now what shall we do, dear audience... Where did he empty that pulsing sack?" + + nar "Oh yes... I know!" + gen "Don't you dare." ("angry", xpos="far_left", ypos="head") + nar "Back to the office, we go!" + nar "His vision now returning." + gen "Please let it be some sexy hoe..." ("angry", xpos="far_left", ypos="head") + + call room("main_room") + call gen_chibi("cum_close", xpos="mid", ypos="base") + call sna_chibi("snape_jizz_covered", xpos="right", ypos="base") + + hide screen blkfade + with d9 + + call gen_chibi("cum_close_done") + pause .8 + play sound "sounds/malegasp.ogg" + call gen_chibi("dick_out_shocked") + with d3 + nar "Too shocked to even speak, and glazed like a cake." + sna "" (face="snape_cum", xpos="base", ypos="base", trans=d3) + nar "Snape stood covered in semen." + gen "I've made the gravest of mistakes..." ("base", xpos="far_left", ypos="head") + + show screen blkfade + with d5 + $ renpy.sound.play("sounds/card_punch4.ogg") + + nar "Genie then learned that day to never fuck with the narration." + nar "As he then endured the most terrible of spells..." + $ renpy.sound.play("sounds/magic2.ogg") + with flash + gen "Aaaah!" + nar "Ball disintegration." + + san4 "Happy Holidays." + + $ renpy.end_replay() diff --git a/game/scripts/minigames/mirror/events/an_odd_circumstance.rpy b/game/scripts/minigames/mirror/events/an_odd_circumstance.rpy new file mode 100644 index 00000000..579389af --- /dev/null +++ b/game/scripts/minigames/mirror/events/an_odd_circumstance.rpy @@ -0,0 +1,203 @@ +# Mirror story: An odd circumstance +label an_odd_circumstance: + + stop weather + $ game.daytime = False + $ game.weather = "clear" + $ game.day = 69 + $ game.gold = 420 + $ hermione.equip(her_outfit_default) + call room("main_room") + call play_music("stop") + show screen add_overlay + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}An odd circumstance{/color}{/size}" + + hide screen blkfade + show layer screens at sepia + with d5 + + call play_music("jazz") + + "It was a normal night..." + "I was sitting in my office as usual, slowly chipping away at some left over paperwork..." + "Leaning back in my chair, I closed my eyes for a moment, thinking back on recent events." + "It has been a weird few days for sure... Not just my appearing in this office, but also the whole situation in general..." + "I sat back up and hunched myself over the parchment." + "Well, I guess it could be worse... Weather is... acceptable." + "Why do I have to do this stuff again? Surely there should be some kind of secretary around..." + "Suddenly the door opened as if my wishes had come true...{w=0.5} Something about this felt backwards somehow." + + call her_walk(action="enter") + her "Mister D." + "Said the figure at the door, appearing as merely a shadow in the low light..." + gen "(Mister... what?)" ("base", xpos="far_left", ypos="head") + "I thought...{w=0.3} Now trying my best to focus on the figure in front of me." + "Mister D?" + "After hearing the urgent tone in the voice, I responded... seemingly out of reflex..." + gen "Yes?" ("base", xpos="far_left", ypos="head") + "The figure shifted their posture in a relieved fashion, as if they had been trying to get a hold of me for hours, and said..." + her "Mister D... I've been trying to contact you for hours. But it looks like your phone may be off..." + gen "My phone?" ("base", xpos="far_left", ypos="head") + "I said in a puzzled manner..." + "I never had a phone in here... in fact, there's not a single electronic device in this office..." + "After a few moments the figure stepped into the light, illuminating a girl's face." + call her_walk("desk") + her "..." ("base", "base", "base", "mid", xpos="base", ypos="base", trans=d3) + "Her hazel coloured flowing hair reminded me of a leather bound book, filled to the brim with the secrets of the girl in front of me..." + "I felt myself becoming lost in her mysterious brown eyes, which provoked a sense of great pain and suffering." + hide hermione_main + with d3 + her "I'm so glad I found you... I've been trying to locate you for ages, you're not an easy man to find..." + "Lost in thought, my mouth seemed to move on its own as I replied to the girl..." + gen "Of course..." ("base", xpos="far_left", ypos="head") + "Taken aback by my own automatic response, I thought to myself..." + gen "(What am I doing, this girl seems to think I'm someone called... mister D?)" ("base", xpos="far_left", ypos="head") + "Surely that can't be me... unless this is some other secret alias of mine... It appears she may know me though, I better press further..." + her "I knew you were good, but I didn't think you'd manage to do it as discretely as you did..." + her "How professional..." + her "And such a looker too... I can't believe we've just met..." + "The only thing I could gather so far is that I must've helped her with some sort of delicate matter..." + "I looked down at my papers again, trying to find some kind of clue what this might be..." + "Tax fraud?" + her "..." + "The girl stood there for a minute, looking as if she wanted to say something but being unsure how to go about doing so..." + "My eyes met with hers again, as I looked back up from my desk." + her "..." + "She blushed, now with a slightly guilty expression, fidgeting, and clearly out of her comfort zone..." + "As I was about to open my mouth and speak, a voice that came from no specific direction chimed in before I even got a word out..." + + $ renpy.sound.play("sounds/magic4.ogg") + hide screen add_overlay + show screen white + with d1 + $ hermione_chibi.zorder = desk_zorder - 1 + call her_chibi("stand",210, 450, flip=True) + hide screen white + show screen add_overlay + with d1 + + her "Silencio." + pause 1 + "A few seconds later I tried to ask where that voice and bright light had come from... But as I did, I could only feel my lips moving with no sound emerging..." + call gen_chibi("stand_by_desk", -8, 614, flip=False) + with d3 + "Taken aback by this, I jumped out of my chair while clutching at my vocal cords..." + "I turned around, now feeling slightly worried, looking for the source of the voice." + her "Don't say anything else... you know why I'm here, we had a deal remember?" + "The girl had moved behind me in a flash!" + "Was this it... did I break a deal of ours?" + "Was this girl here to kill me, is that why she sounded so worried?" + "Feeling rather dizzy I steadied myself on my desk, trying to compose myself..." + "Suddenly I felt a sharp tug and I knew this must be it..." + gen "..." ("base", xpos="far_left", ypos="head") + "I waited a few moments for the pain to begin..." + gen "..." ("base", xpos="far_left", ypos="head") + "But it never came..." + + hide hermione_main + $ hermione_chibi.zorder = 3 + + call her_chibi_scene("bj_pause") + $ desk_OBJ.hidden = True + with d3 + + her "I hope this should suffice... I couldn't stand the thought of discussing this any further..." + her "I have a reputation to uphold after all..." + "After regaining my focus I looked down and found the girl kneeling in front of me, her hand wrapped around my shaft." + "Even if I were able to respond, I had but a seconds notice before her lips had wrapped themselves around my cock." + + call her_chibi_scene("bj") + with d3 + + her "*Slurp!* *Gulp!* *Slurp!*" + "Her head now bobbing back and forth as if her life depended on it..." + "I felt myself growing harder in her mouth as her lips pressed against my skin..." + her "*Slurp!* *Gobble!*" + "What was it that I had done for this girl, in exchange for her degrading herself in such a manner?" + "The girl then glanced up into my eyes seeing my confused look..." + "Interpreting this expression as her efforts being unsatisfactory, she then concentrated on the task she had set for herself and pushed her head forwards, taking the whole length down her throat." + her "*Gulp!* *Gobble!* *Gobble!*" + "Since I couldn't make a sound I let out a heavy breath of air and closed my eyes for a few seconds..." + show screen blkfade + with d3 + "After a few moments I opened my eyes and turned my head down again to observe the scene playing out in front of me." + hide screen blkfade + with d3 + "The girl suddenly pulled her mouth away..." + + call her_chibi_scene("bj_pause") + with d3 + + her "*G-g-gah...*" + "A string of saliva still attached between her mouth and my penis slowly found itself moving down and then disconnected, resting across the front of her chest." + "Smiling up at me, the girl started massaging my cock with a mixture of pre-cum and her saliva..." + "Feeling more relaxed about the whole situation, I couldn't help but forget about any consequences and began to just enjoy myself." + + call her_chibi_scene("bj") + with d3 + + "Without warning, her lips wrapped themselves back around my now throbbing cock..." + her "*Slurp!* *Gulp!* *Slurp!*" + "Her head yet again found itself further and further down my shaft, easily taking in the whole thing this time, as her tongue slowly moved across the bottom." + her "*Slurp!* *Slurp!* *Slurp!*" + "For a moment I could feel her forehead pressed against my torso as my cock reached the bottom of her throat... it seemed as if time had stopped..." + her "..." + "Suddenly she looked up into my eyes as she started to move her tongue, massaging the underside of my cock..." + her "*Gobble!* *Gltch!* *Slurp!*" + "My eyes closed and I felt a sudden rush of ecstasy come over me." + "Right after I let out an inaudible groan, my pelvic muscles tightened as I began cumming down her throat." + + call her_chibi_scene("bj_cum_in") + with hpunch + + "I opened my eyes as hers locked with mine in surprise from the sudden overwhelming amount of semen hitting the back of her throat." + call play_sound("gulp") + her "*Gulp!*" + call play_sound("gulp") + her "*Gulp!*" + "Her eyes watered, and she looked as if she was about to pass out, but she kept her mouth wrapped around my shaft as she tried to swallow it all, a couple of bubbles now forming around her nose." + her "*Aahh!*" + + call her_chibi_scene("bj_cum_out") + with d3 + + "She then pulled away, satisfied with her deed, just as another spurt came out from my seemingly bottomless balls and coated her surprised face..." + + call her_chibi_scene("bj_cum_out_done") + with d3 + + "As the fluids started flowing down her cheeks, she wiped some off with her finger and let it slide into her open mouth..." + her "Looks like I've made a mess again..." + show screen blkfade + with d3 + call gen_chibi("sit_behind_desk") + call her_chibi("stand","mid",flip=False) + "The girl stood up and walked around the desk." + hide screen blkfade + with d3 + her "I guess that's what I get for using the silencing charm." + "Still being unable to say anything I just stood there, my chest moving up and down as my breathing slowed down." + "The girl, adjusting herself and still slightly covered in semen, made her way to the door, only turning around once more..." + her "I hope that was satisfactory..." + her "Let it be known that Hermione never backs down on a deal..." + call her_walk(action="leave") + "My breathing slowly returned to normal, as the pinching feeling in my vocal cords began to fade away." + show screen blkfade + with d3 + call gen_chibi("sit_behind_desk") + "After clearing my throat and composing myself. I sat back down in my chair, trying to wrap my head around what had just transpired." + hide screen blkfade + with d3 + "\"Hermione\" she said..." + "It was the only clue I had gotten on who this mysterious girl was, and I still did not know what kind of favour I had granted her..." + "But it didn't matter, the favour I had just received in return was more than enough to make up for anything I might have assisted her with..." + "Or at least that's what I hoped..." + + hide screen add_overlay + show screen blkfade + with d9 + + $ renpy.end_replay() diff --git a/game/scripts/minigames/mirror/events/anal_pirate_event.rpy b/game/scripts/minigames/mirror/events/anal_pirate_event.rpy new file mode 100644 index 00000000..068e198e --- /dev/null +++ b/game/scripts/minigames/mirror/events/anal_pirate_event.rpy @@ -0,0 +1,675 @@ + +label anal_pirate_rewards: + if not card_exist(unlocked_cards, card_maslab): + call give_reward("Ye plundered a special card from 'er cavern.", "images/cardgame/t1/genie_realm/maslab_v1.webp") + $ unlocked_cards += [card_maslab] + return + +label anal_pirate_event: + # Mirror story: A booty at sea + # TODO: Add pirate outfit + + with d5 + centered "{size=+7}{color=#cbcbcb}Booty at sea{/color}{/size}" + + "This story is a rewrite of the \"Time for anal\" personal favour. And the genie is a pirate? Who knows... Enjoy." + + label .choices: + + # Setup + $ hermione.equip(her_outfit_default) + $ game.daytime = True + $ game.weather = "clear" + stop weather + call room("main_room") + call play_music("stop") + show screen blkfade + with d5 + + menu: + "-Part one-": + $ d_flag_01 = 0 + "-Part two-": + $ d_flag_01 = 1 + "-Part three-": + $ d_flag_01 = 2 + "-Return-": + $ renpy.end_replay() + + call music_block + call her_chibi("stand","mid","base") + call hide_blkfade + + if d_flag_01 == 0: + call anal_pirate_event_1 + elif d_flag_01 == 1: + call anal_pirate_event_2 + elif d_flag_01 == 2: + call anal_pirate_event_3 + + hide hermione_main + call blkfade + + stop music fadeout 1.0 + stop bg_sounds + + call her_chibi("stand","desk","base") + call gen_chibi("sit_behind_desk") + call hide_blkfade + + her "Thank you, captain..." ("grin", "base", "base", "mid",xpos="right",ypos="base", cheeks="blush") + call her_walk(action="leave") + + call blkfade + call her_chibi("hide") + hide screen main_room + + jump anal_pirate_event.choices + +label anal_pirate_event_1: + gen "lass... I'd like you to role-play with me." ("base", xpos="far_left", ypos="head") + her "captain...?" ("annoyed", "squint", "base", "mid") + gen "How familiar ye be wit' th' term \"Swabbing ye poop deck\"?" ("base", xpos="far_left", ypos="head") + + her "Ninety galleon points..." ("annoyed", "narrow", "annoyed", "mid") + gen "Wha'?" ("base", xpos="far_left", ypos="head") + her "............................." ("disgust", "narrow", "base", "mid_soft") + gen "Ah, well then lass. Ninety galleon points 'tis." ("base", xpos="far_left", ypos="head") + + call anal_pirate_event_common_1_2 + + return + +label anal_pirate_event_2: + gen "lass?" ("base", xpos="far_left", ypos="head") + her "captain?" ("soft", "base", "base", "mid") + gen "I shall be takin' ye on another voyage today..." ("base", xpos="far_left", ypos="head") + her "............." ("open", "squint", "base", "mid") + gen "Care t' guess wha' th' destination will be?" ("base", xpos="far_left", ypos="head") + gen "You have t' guess three times to find out." ("base", xpos="far_left", ypos="head") + her "..........." ("annoyed", "squint", "angry", "mid") + her "Booty plundering?" ("disgust", "narrow", "base", "mid_soft") + gen "Wha..........?!" ("angry", xpos="far_left", ypos="head") + gen "How did ye...?" ("angry", xpos="far_left", ypos="head") + her "You seem like a booty pirate kind of a man. captain..." ("angry", "base", "angry", "mid") + gen "I'm not sure you know what that means, lass..." ("base", xpos="far_left", ypos="head") + + + call anal_pirate_event_common_1_2 + + return + +label anal_pirate_event_common_1_2: + + her "..........." ("annoyed", "base", "worried", "R") + gen "Time to get me ole cannon out..." ("base", xpos="far_left", ypos="head") + her "................." ("angry", "happyCl", "worried", "mid",emote="sweat") + call blkfade + $ desk_OBJ.hidden = True + call play_sound("climb_desk") + pause 2 + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + $ renpy.play('sounds/boing02.ogg') + her "!!!" ("angry", "wide", "base", "stare", ypos="head", flip=False) + call play_sound("slap") + gen "Blistering barnacles!" ("angry", xpos="far_left", ypos="head") + her "Ouch!" ("mad", "happyCl", "worried", "mid",tears="soft_blink") + gen "Jus' try t' loosen up a wee, would ye?" ("base", xpos="far_left", ypos="head") + her "I be tryin'!" ("angry", "base", "base", "mid",tears="soft") + gen "Aye, wha' if I do this...?" ("base", xpos="far_left", ypos="head") + $ renpy.play('sounds/boing03.ogg') + her "Ouch! Wha' are ye doin', captain?" ("mad", "happyCl", "worried", "mid",tears="soft_blink") + gen "Aye, this won't work either..." ("base", xpos="far_left", ypos="head") + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Har har, I reckon I know wha' we should do." ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + menu: + "{size=-3}\"I reckon I'll raise the anchor 'n jus' set sail!\"{/size}": + play music "music/pirate.ogg" fadein 1 fadeout 1 + play bg_sounds "sounds/CreakingShip.ogg" + + her "Just set sail, captain?!" ("angry", "wide", "base", "stare", ypos="head", flip=False) + $ renpy.play('sounds/spit.ogg') + gen "*SPIT!*" ("angry", xpos="far_left", ypos="head") + her "What are ye doing you Seadog!" ("scream", "happyCl", "worried", "mid") + her "No, cap'n, Belay that! Ye're nah in open waters--" ("open", "base", "base", "mid") + gen "No needs, raise the anchor! Heave Ho!" ("base", xpos="far_left", ypos="head") + $ renpy.play('sounds/gltch.ogg') + with hpunch + her "ARGH!" ("angry", "base", "base", "mid",tears="soft") + her "Ouch! Ouch! Ouch!" ("mad", "happyCl", "worried", "mid",tears="soft_blink") + gen "Nigh-on in! Me ship has left ye harbour lass!" ("angry", xpos="far_left", ypos="head") + her "No, ye're hurtin' me! Ye be hurtin' me!" ("scream", "happyCl", "worried", "mid") + gen "Yo Ho Ho!" ("angry", xpos="far_left", ypos="head") + her "Blisterin' Barnacles! It hurts!" ("scream", "happyCl", "worried", "mid") + gen "Shut it, lass! I be approaching ye secret cavern!" ("angry", xpos="far_left", ypos="head") + gen "Yer cavern be so tight 'tis completely un-plunderable!" ("angry", xpos="far_left", ypos="head") + her "Then stop, Scallywag!" ("mad", "happyCl", "worried", "mid",tears="soft_blink") + gen "Neigh! We needs t' excavate yer cavern a wee!" ("base", xpos="far_left", ypos="head") + her "But I don't wants ye t'!" ("mad", "happyCl", "worried", "mid",tears="soft_blink") + gen "Aye? How do ye expect scallywags t' farrg ye up yer arse then?" ("base", xpos="far_left", ypos="head") + her "Wha' scallywags?" ("shock", "happyCl", "worried", "mid") + gen "Ye know... scallywags." ("angry", xpos="far_left", ypos="head") + gen "Argh, Blimey... Me cannon be to wide now." ("angry", xpos="far_left", ypos="head") + her "Stop then! Avast, captain!" ("open", "happyCl", "worried", "mid") + her "Change course captain, I've changed me mind! I don't needs ninety galleon points!" + gen "I reckon I be right on course..." ("angry", xpos="far_left", ypos="head") + + $ renpy.play('sounds/gltch.ogg') + with hpunch + with kissiris + her "{size=+5}AAAAAAAAhhhhh!!!{/size}" ("scream", "wide", "base", "stare") + gen "Yo Ho Ho!!!" ("angry", xpos="far_left", ypos="head") + + call her_chibi_scene("sex_slow") + with d5 + + her "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARGH!" ("scream", "wide", "base", "stare") + gen "Let us pump this wee cavern full o' seamen then, savvy?" ("angry", xpos="far_left", ypos="head") + her "Aye... , I jus' wants this t' end..." ("scream", "happyCl", "worried", "mid",cheeks="blush",tears="crying") + gen "Agh... Ye wants this voyage t' end sooner?" ("angry", xpos="far_left", ypos="head") + gen "I smell mutiny, do ye want to walk the plank?" ("angry", xpos="far_left", ypos="head") + her "*sob!* How?" ("shock", "base", "base", "R",cheeks="blush",tears="soft") + gen "Ye know..." ("angry", xpos="far_left", ypos="head") + her "Aye..." ("shock", "base", "base", "R",cheeks="blush",tears="soft") + her "I be a wench??" ("clench", "base", "worried", "mid", cheeks="blush",tears="soft") + gen "Yes ye be!" ("grin", xpos="far_left", ypos="head") + her "*Sob!* I be a wench..." ("angry", "squint", "base", "mid",cheeks="blush") + her "I love t' suck ye pegleg..." + her "'n now me wee asshole be gettin' ripped t' pieces... *Sob!*" ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + gen "Shiver Me Timbers!" ("angry", xpos="far_left", ypos="head") + gen "Agrh! Thar She Blows!" ("angry", xpos="far_left", ypos="head") + her "No! Be it gettin' bigger?! I be like a harpoon!" ("open", "wide", "worried", "stare",cheeks="blush",tears="messy") + gen "ARGH!" ("angry", xpos="far_left", ypos="head") + + "{size=-3}\"Lather me cannon balls first. Lubricate me pegleg!\"{/size}": + her "Oh... Alright..." ("open", "base", "base", "mid", ypos="head", flip=False) + play music "music/pirate.ogg" fadein 1 fadeout 1 + play bg_sounds "sounds/CreakingShip.ogg" + + call her_chibi_scene("bj") + + hide screen blktone + hide screen bld1 + call hide_blkfade + call ctc + + her "*Slurp!* *Slurp!* *Slurp!*" + gen "Aye... good..." ("base", xpos="far_left", ypos="head") + her "*Slurp!* *Slurp!* *Slurp!*" + gen "Yarr, I reckon that be enough. Back on th' ship now." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("sex_pause", trans=fade) + + # On the desk + her "............." ("open", "base", "base", "mid") + gen "Aye! Sail, Ho!!" ("angry", xpos="far_left", ypos="head") + her "Ouch!" ("scream", "happyCl", "worried", "mid") + gen "Relax lass. Approaching harbour." ("base", xpos="far_left", ypos="head") + + pause.2 + + $ renpy.play('sounds/gltch.ogg') + with hpunch + with kissiris + her "{size=+5}AAAAAAAAhhhhh!!!{/size}" ("scream", "wide", "base", "stare") + + call her_chibi_scene("sex_slow", trans=d5) + with d5 + + gen "Argh!!!" ("angry", xpos="far_left", ypos="head") + her "Ye... ye..." ("scream", "wide", "base", "stare") + her "Ye ship be to great!" ("shock", "happyCl", "worried", "mid") + gen "Let us pump this wee cavern full o' seamen then, savvy?" ("angry", xpos="far_left", ypos="head") + her "....................." ("angry", "squint", "base", "mid",cheeks="blush") + call ctc + + her "....................." ("shock", "base", "base", "R",cheeks="blush",tears="soft") + gen "Ye be fine thar, wench?" ("base", xpos="far_left", ypos="head") + her "Blisterin' Barnacles... Ye be... turnin' me folds inside out... captain." ("clench", "base", "worried", "mid", cheeks="blush",tears="soft") + her "Me stitches be breaking..." ("angry", "squint", "base", "mid",cheeks="blush") + gen "Aye..." ("base", xpos="far_left", ypos="head") + gen "Maybe me cannon needs swabbin'...?" ("base", xpos="far_left", ypos="head") + gen "Go below deck, lass. swabb me cannon some more." ("base", xpos="far_left", ypos="head") + her "Wha'? But..." ("clench", "base", "worried", "mid", cheeks="blush",tears="soft") + her "But it be rusty... 'tis been in me bilge." ("shock", "base", "base", "R",cheeks="blush",tears="soft") + gen "Aye, 'tis been abaft, but that's nah nigh ye bilge." ("base", xpos="far_left", ypos="head") + gen "Heave ho landlubber or me ship be sinkin', lass. Swab me cannon some more." ("base", xpos="far_left", ypos="head") + her "..........." ("shock", "base", "base", "R",cheeks="blush",tears="soft") + + # Sucking + call her_chibi_scene("bj") + with fade + call ctc + + her "*Slurp!* *Slurp!* *Slurp!*" (ypos="head", flip=False) + gen "Aye... good lass..." ("base", xpos="far_left", ypos="head") + her "*Slurp!* *Slurp!* *Slurp!*" + gen "Can ye taste yer arse on me cannon?" ("base", xpos="far_left", ypos="head") + her "*Slurp!* *Slurp!* *Slurp!*" + gen "Aye, Maybe that be enough." ("base", xpos="far_left", ypos="head") + + call her_chibi_scene("sex_slow") + with fade + call ctc + + her "*Ah*..." ("shock", "base", "base", "R",cheeks="blush",tears="soft") + gen "We be smooth sailing lass?" ("base", xpos="far_left", ypos="head") + her "It still be hurting..." ("clench", "base", "worried", "mid", cheeks="blush",tears="soft") + her "But th' storm has passed." + gen "I'll adjust th' sails fer now..." ("base", xpos="far_left", ypos="head") + her "*Ah*... I be greatful, captain." ("angry", "squint", "base", "mid",cheeks="blush") + gen "Oh... aye... ye secret cavern be great..." ("base", xpos="far_left", ypos="head") + her "..........." ("shock", "base", "base", "R",cheeks="blush",tears="soft") + gen "Oh... Ye cavern be perfect, lass..." ("base", xpos="far_left", ypos="head") + her "................" ("shock", "narrow", "base", "down",cheeks="blush",tears="crying") + gen "Why are ye bein' so quiet lass?" ("base", xpos="far_left", ypos="head") + her "'cause 'tis cavern be too shallow for ye ship..." ("clench", "base", "worried", "mid", cheeks="blush",tears="soft") + her "'n I jus' wants ye t' cum sooner, captain..." + gen "So ye stifle yer cries o' pain?" ("base", xpos="far_left", ypos="head") + her "Aye captain. *Sob!*" ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + gen "Nah on me ship lass." ("base", xpos="far_left", ypos="head") + gen "Sob, scream 'n cry as much as ye wish!" ("base", xpos="far_left", ypos="head") + her "B-but--" ("clench", "base", "worried", "mid", cheeks="blush",tears="soft") + gen "That shall make me cannon ready t' fire in ye broadside." ("base", xpos="far_left", ypos="head") + her "be this true? *Sob!*" ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + her "*Sob!* Me hull! *Sob!* It be taking in water! *Sob!*" ("shock", "base", "base", "R",cheeks="blush",tears="soft") + gen "Aye, ye ship be sinking... ye booty be mine." ("base", xpos="far_left", ypos="head") + her "*SOB!*" ("angry", "squint", "base", "mid",cheeks="blush",tears="messy") + gen "Ye poor wee sprog..." ("base", xpos="far_left", ypos="head") + gen "A grand, wicked pirate be plunderin' yer booty!" ("base", xpos="far_left", ypos="head") + her "*SOB!* Yeees! *SOB!*" ("scream", "squint", "base", "mid",cheeks="blush",tears="messy") + gen "Take me seamen!" ("angry", xpos="far_left", ypos="head") + her "No, I'm scared! *SOB!*" ("scream", "happyCl", "worried", "mid",cheeks="blush",tears="messy") + + "{size=-3}\"Let me oil ye up.\"{/size}": + play music "music/pirate.ogg" fadein 1 fadeout 1 + call her_chibi_scene("sex_pause", trans=fade) + her "oil, cap'n?!" ("angry", "wide", "base", "stare") + gen "Blimey! Just stay still." ("base", xpos="far_left", ypos="head") + "*Squeeze!*" + her "Ahhh! Shiver me timbers, tis cold!" ("scream", "happyCl", "worried", "mid") + call nar(">Ye thoroughly oil 'er cavern.") + gen "Sail ho!" ("base", xpos="far_left", ypos="head") + her "Nay, cap'n, wait! Maybe--" ("angry", "base", "worried", "mid") + call nar(">Alas! Ye align thee tip of yer cannon with 'er slimey winky cavern and push fore.") + + pause.2 + + $ renpy.play('sounds/gltch.ogg') + with hpunch + with kissiris + her "ARGH!" ("shock", "base", "base", "mid", tears="soft") + call nar(">Yer ship fully docked in her as thee oil does its job.") + gen "Farrg me!" ("angry", xpos="far_left", ypos="head") + + + call her_chibi_scene("sex_slow", trans=d5) + + her "Ouch! Ouch! Ouch!" ("mad", "happyCl", "worried", "mid",tears="soft_blink") + her "No, ye're hurtin' me! Ye be hurtin' me!" ("scream", "happyCl", "worried", "mid") + gen "*Argh* Farrg, I can nah pull out!" ("angry", xpos="far_left", ypos="head") + her "Sink me! It hurts!" ("scream", "happyCl", "worried", "mid") + gen "Then stop clenching on me so hard, ye wench!" ("angry", xpos="far_left", ypos="head") + gen "Yer cavern be so tight I can nah even move!" ("angry", xpos="far_left", ypos="head") + her "Do somethin'!" ("mad", "happyCl", "worried", "mid",tears="soft_blink") + gen "I be tryin', wench!" ("angry", xpos="far_left", ypos="head") + her "Then try harder!" ("scream", "base", "angry", "mid",tears="soft") + call slap_her + her "..........!" ("scream", "wide", "worried", "mid",tears="soft") + gen "Shut th' Davy Jones' locker up, strumpet!" ("angry", xpos="far_left", ypos="head") + gen "'tis..." ("angry", xpos="far_left", ypos="head") + call slap_her + gen "'tis...{fast} yer..." ("angry", xpos="far_left", ypos="head") + call slap_her + gen "'tis... yer...{fast} bloody..." ("angry", xpos="far_left", ypos="head") + call slap_her + gen "'tis... yer... bloody... {fast}fault!" ("angry", xpos="far_left", ypos="head") + call slap_her + pause 1.0 + call play_sound("plop") + with hpunch + + call her_chibi_scene("sex_pause", trans=d5) + pause 1.0 + gen "Oh, 'tis worked." ("base", xpos="far_left", ypos="head") + + her "*sob!*" ("mad", "base", "angry", "down",cheeks="blush",tears="soft") + her "... me cavern... me poor cavern... *sob*" ("mad", "base", "angry", "mid",cheeks="blush",tears="soft") + gen "In that case, let's try it again." ("grin", xpos="far_left", ypos="head") + her "No! Avast! Cap'n!" ("open", "wide", "worried", "mid",cheeks="blush",tears="soft") + her "I 'ave changed me mind!" (cheeks="blush",tears="soft") + gen "'twill be fine this time, trust me..." ("base", xpos="far_left", ypos="head") + + $ renpy.play('sounds/gltch.ogg') + with hpunch + with kissiris + her "{size=+5}AAAAAAAAhhhhh!!!{/size}" ("scream", "wide", "base", "stare") + gen "YARR!!!" ("angry", xpos="far_left", ypos="head") + + call her_chibi_scene("sex_slow", trans=d5) + + her "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAARGH!" ("scream", "wide", "base", "stare") + gen "I shall pump this wee cavern full o' seamen then, savvy?" ("angry", xpos="far_left", ypos="head") + her "Aye... , I jus' wants this t' end..." ("scream", "happyCl", "worried", "mid",cheeks="blush",tears="crying") + gen "Agh... Ye wants 'tis t' end sooner?" ("angry", xpos="far_left", ypos="head") + gen "Help me out then!" ("angry", xpos="far_left", ypos="head") + her "*sob!* How?" ("shock", "base", "base", "R",cheeks="blush",tears="soft") + gen "Ye know..." ("angry", xpos="far_left", ypos="head") + her "Oh..." ("shock", "base", "base", "R",cheeks="blush",tears="soft") + her "I be a wench??" ("clench", "base", "worried", "mid", cheeks="blush",tears="soft") + gen "Aye ye be!" ("grin", xpos="far_left", ypos="head") + her "*Sob!* I be a wench..." ("angry", "squint", "base", "mid",cheeks="blush") + her "I love t' suck pegleg..." + her "'n now me wee cavern be gettin' ripped apart... *Sob!*" ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + gen "Aye! Aye!" ("angry", xpos="far_left", ypos="head") + gen "Agrh! AYE!" ("angry", xpos="far_left", ypos="head") + her "No! Be it gettin' bigger?! I be yellow-bellied!" ("open", "wide", "worried", "stare",cheeks="blush",tears="messy") + gen "ARGH!" ("angry", xpos="far_left", ypos="head") + + menu: + "-Sink her vessel, fill her up-": + gen "Argh!" ("angry", xpos="far_left", ypos="head") + $ renpy.play('sounds/fuse.ogg') + her "No! AH!" ("scream", "wide", "base", "stare", ypos="head", flip=False) + $ renpy.play('sounds/cannon.ogg') + call cum_block + gen "{size=+15}ARGH!!!!!!!!!!!!!!!!{/size}" ("angry", xpos="far_left", ypos="head") + + call her_chibi_scene("sex_cum_in", trans=d5) + + $ renpy.play('sounds/cannon.ogg') + call cum_block + call ctc + + her "AH! ME BILGE IS FILLING UP! Sink Me!{heart}{heart}{heart}" ("open", "wide", "worried", "stare",cheeks="blush",tears="messy") + gen "Aye, ye wench! I be shooting me cannons!" ("angry", xpos="far_left", ypos="head") + her "Me hull is splintering, spare me Captain!" ("angry", "squint", "base", "mid",cheeks="blush",tears="messy") + gen "Ye're nah sunk yet!" ("angry", xpos="far_left", ypos="head") + $ renpy.play('sounds/cannon.ogg') + with hpunch + her "No, I be already full! Stop cummin', ye bastard!" ("scream", "wide", "worried", "stare",cheeks="blush",tears="messy") + gen "Shut th' farrg up, wench! Ye still be afloat!" ("angry", xpos="far_left", ypos="head") + her "No! Me stomach! Me ship will capsize!" ("scream", "squint", "base", "mid",cheeks="blush",tears="messy") + $ renpy.play('sounds/cannon.ogg') + with hpunch + gen "ARGH!" ("angry", xpos="far_left", ypos="head") + her "No! I reckon me bilge be flooded... I must get t' me pumps." ("open", "wide", "worried", "stare",cheeks="blush",tears="messy") + $ renpy.play('sounds/cannon.ogg') + with hpunch + play sound "sounds/burp.ogg" + her "{size=+7}*BURP!*!!!!!{/size}" ("full", "wide", "worried", "stare",tears="messy") + her "......................." ("full", "base", "base", "mid",tears="messy") + her "............." + $ renpy.play('sounds/gulp.ogg') + her "{size=+7}*GULP!*{/size}" ("cum", "happyCl", "worried", "mid") + her "*SOB!* I HATE YOU..." ("angry", "squint", "base", "mid",cheeks="blush",tears="messy") + her "{size=+5}I HATE YE'N AND YER RUSTY OLE CANNON!{/size}" ("scream", "base", "angry", "mid",cheeks="blush",tears="messy") + her "{size=+5}I HATE YE'N! YE HEAR ME?!{/size}" + gen "Agh... Dead men tell no tales, wench!" ("angry", xpos="far_left", ypos="head") + her "*sob!* *Sob!*..." ("angry", "squint", "base", "mid",cheeks="blush",tears="messy") + + # After cum inside + call her_chibi_scene("sex_cum_in_done", trans=d5) + + her "*Sob!*..." ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + gen "Whew!... I reckon me gunpowder needs restocking in the next harbour.' it be." ("base", xpos="far_left", ypos="head") + gen "Ye afloat lass?" ("base", xpos="far_left", ypos="head") + her "Aye... *Sob!*" ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + gen "Is that sea water in ye eyes?" ("base", xpos="far_left", ypos="head") + her "Me bilge is flooded, but me pumps be workin, captain..." ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + gen "Aye, ye took me cannonfire broadside, Ye be a well built vessel..." ("base", xpos="far_left", ypos="head") + her "Thank ye captain..." ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + hide screen bld1 + with d3 + call ctc + + call her_chibi_scene("sex_cum_in_done", trans=d5) + pause.8 + + $ hermione.zorder = 15 # Reset zorder + $ hermione.set_cum(pussy="light") + + her "I apologise for saying that I hate you, captain..." ("base", "base", "base", "R",cheeks="blush",tears="mascara", ypos="head", flip=False) + her "And your cannon is not rusty..." (cheeks="blush",tears="mascara") + her "I don't know what's gotten into me..." ("grin", "narrow", "worried", "mid_soft",cheeks="blush",tears="mascara") + gen "My cannonfire!" ("grin", xpos="far_left", ypos="head") + her "I suppose it's when you call me a \"wench\". I know that it's just roleplay..." ("grin", "narrow", "worried", "mid_soft",cheeks="blush",tears="mascara") + gen "Aye, sure..." ("base", xpos="far_left", ypos="head") + gen "Does it still hurt?" ("base", xpos="far_left", ypos="head") + her "A little..." ("open", "narrow", "worried", "mid_soft",cheeks="blush",tears="mascara") + her "I also feel full and warm inside..." ("grin", "closed", "base", "mid",cheeks="blush",tears="mascara") + gen "You plan to keep it in? My cum I mean." ("base", xpos="far_left", ypos="head") + her "Aye.." ("grin", "narrow", "base", "mid_soft",cheeks="blush",tears="mascara") + her "I hope I won't spring a leak during my classes..." (cheeks="blush",tears="mascara") + gen "Well, good luck on your voyage." ("base", xpos="far_left", ypos="head") + her "Can I get paid now please?" ("grin", "closed", "base", "mid",cheeks="blush",tears="mascara") + + "-Spread yer cannon fire o'er er hull-": + $ renpy.play('sounds/fuse.ogg') + gen "*argh*" ("angry", xpos="far_left", ypos="head") + gen "{size=+6}Fire!{/size}" ("angry", xpos="far_left", ypos="head") + hide screen bld1 + with d3 + + call cum_block + $ renpy.play('sounds/cannon.ogg') + with hpunch + + call her_chibi_scene("sex_cum_out", trans=d5) + + call cum_block + $ hermione.set_cum(crotch="light") + call ctc + + her "*Ah*...{heart}{heart}{heart}" ("silly", "narrow", "base", "dead", ypos="head", flip=False) + gen "Aye!!! All over yer hold!" ("angry", xpos="far_left", ypos="head") + her "*Ah*... No, me hull!" ("silly", "narrow", "annoyed", "up") + hide screen bld1 + with d3 + $ renpy.play('sounds/cannon.ogg') + call cum_block + with hpunch + call ctc + + call her_chibi_scene("sex_cum_in_done", trans=d5) + pause.8 + + gen "Well, I'm done... You can get off my ship now." ("base", xpos="far_left", ypos="head") + her "Yes, captain..." ("silly", "base", "worried", "mid", cheeks="blush",tears="soft", ypos="head", flip=False) + gen "You feeling alright?" ("base", xpos="far_left", ypos="head") + her "Yes, captain. It still hurts a little, but..." ("shock", "base", "base", "R",cheeks="blush",tears="soft") + gen "But what?" ("base", xpos="far_left", ypos="head") + her "But in a good way... captain." ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + gen "In a good way, *huh*?" ("base", xpos="far_left", ypos="head") + gen "Heh... You naughty, little pirate." ("grin", xpos="far_left", ypos="head") + her "Can I my get my share of the booty now, captain?" ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + + return + +label anal_pirate_event_3: + + gen "How about another booty plunderin, lass?" ("base", xpos="far_left", ypos="head") + her "Of course, captain." ("base", "narrow", "base", "up") + gen "Raise anchor, you little tart!" ("grin", xpos="far_left", ypos="head") + + stop music fadeout 1.0 + hide hermione_main + call blkfade + $ desk_OBJ.hidden = True + + her "........" ("annoyed", "base", "worried", "R", ypos="head", flip=False) + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + her "..........." ("open", "base", "base", "mid") + $ renpy.play('sounds/gltch.ogg') + with hpunch + with kissiris + her "Ooooohhhhhhhhhhhh....{heart}" ("scream", "wide", "base", "stare") + + call her_chibi_scene("sex_slow", trans=d5) + + gen "Oh, ye-es!" ("angry", xpos="far_left", ypos="head") + her "*Ah*..." ("soft", "narrow", "annoyed", "up") + gen "It seems like yer cavern be a bit more welcomin', lass." ("base", xpos="far_left", ypos="head") + her "*Ah*... It still be a bit tight." ("base", "narrow", "base", "mid_soft") + her "'n , jus' call me \"wench\", captain." ("base", "squint", "base", "mid") + gen "*Agh*! Ye wench! Ye always get me wit' yer words!" ("angry", xpos="far_left", ypos="head") + + play music "music/pirate.ogg" fadein 1 fadeout 1 + play bg_sounds "sounds/CreakingShip.ogg" + her "*Ah*... *Ah*..." ("open", "closed", "base", "mid") + her "*Ah*..." + her "captain?" ("base", "narrow", "base", "mid_soft") + gen "Aye, wench?" ("base", xpos="far_left", ypos="head") + her "*Ehm*..." ("angry", "base", "base", "mid") + her "Would ye settle down fer me, captain?" ("angry", "narrow", "base", "down") + with hpunch + gen "{size=+9} WHAT?!{/size}" ("angry", xpos="far_left", ypos="head") + gen "Don't tell me ye're expecting cargo, lass!" ("angry", xpos="far_left", ypos="head") + her "Ye seamen don't put no cargo in me bilge, captain..." ("angry", "wink", "base", "mid") + gen "Wha' be this natter o' settlin down then?" ("base", xpos="far_left", ypos="head") + her "Ye misunderstood me captain." ("angry", "base", "base", "mid") + her "I meant t' say, would ye stop plunderin for a lass {size=+5}like{/size} me?" ("angry", "narrow", "base", "down") + her "I would ne'er propose t' a scallywag wit' his pegleg in me arse, captain..." ("angry", "happyCl", "worried", "mid",emote="sweat") + gen "Good. 'cause I don't reckon any scallywag would be able t' say \"neigh\" to you lassie." ("base", xpos="far_left", ypos="head") + her "*Ah*{heart}..." ("open", "closed", "base", "mid") + her "Wha' I meant-- *Ah*{heart}... {w}t' say was-- *Ah*{heart}... {w}do ye reckon any pirate would ever-- *Ah*{heart}... {w}leave th' sea fer a lass like me?" ("angry", "narrow", "base", "down") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + her "I mean, wit' all that booty plunderin happenin' lately... *ah*{heart}..." ("angry", "narrow", "base", "down") + her "I can nah help but feel like me hull is scratched... leakin even." + her "'n in a no way untarnished..." + her "Who would wants t' settle fer a lass like that." ("angry", "base", "base", "mid") + + menu: + gen "..." ("base", xpos="far_left", ypos="head") + "{size=-3}\"I would leave me ship in a heartbeat!\"{/size}": + her "What?" ("open", "base", "base", "mid", ypos="head", flip=False) + gen "Aye, if only a lass like ye would board me ship..." ("base", xpos="far_left", ypos="head") + her "... Aye...{heart}" ("base", "base", "base", "R") + her ".............." ("base", "happy", "base", "mid") + her "Aye if only a lass like I, cap'n? So, why neigh me?" ("soft", "base", "base", "mid") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + gen "Wha' do ye mean \"why\", wench?" ("base", xpos="far_left", ypos="head") + gen "Ye be right out of harbour 'n ye only just set sail..." ("base", xpos="far_left", ypos="head") + gen "Tight cabin, shimering tits, 'n wet wee powder pan..." ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart}" ("open", "closed", "base", "mid") + gen "Ye will make some lucky scallywag a mighty happy one, some day, wench." ("base", xpos="far_left", ypos="head") + gen "*Ehm*, I mean, lass." ("base", xpos="far_left", ypos="head") + her "No, \"wench\" be good. you be calling me that more, captain." ("silly", "narrow", "annoyed", "up") + gen "Thar, ye see? Ye be a great catch, I be tellin' ye, wench." ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart} Thank you, captain." ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + gen "*huh*?" ("base", xpos="far_left", ypos="head") + gen "Ye helm be leakin." ("base", xpos="far_left", ypos="head") + + "{size=-3}\"A pirate not plunderin t' be wit' ye be o' th' picture\"{/size}": + her "I be thinkin that..." ("shock", "narrow", "base", "down",cheeks="blush",tears="crying", ypos="head", flip=False) + gen "Oh... I jus' love that wee cavern o' yers!" ("base", xpos="far_left", ypos="head") + her "....................." ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + her "Aye... Aft all th' thin's I had t' do fer me crew..." + her "... nah one we pirate would leave th' sea fer me..." ("angry", "squint", "base", "mid",cheeks="blush",tears="messy") + gen "Oh, they be leavin th's sea fer ye alright!" ("base", xpos="far_left", ypos="head") + her "Wha'? But ye said..." ("open", "wide", "worried", "stare",cheeks="blush",tears="messy") + gen "T' plunder yer cave, lass. But they'd go back t' sea." ("base", xpos="far_left", ypos="head") + gen "But as a cannon swabber ye be a great catch!" ("base", xpos="far_left", ypos="head") + her "Aye?" ("open", "wide", "worried", "stare",cheeks="blush",tears="messy") + gen "Ye pullin' me pegleg?!" ("base", xpos="far_left", ypos="head") + gen "Young, hot 'n slutty. Ye could 'ave any scallywag ye wants!" ("base", xpos="far_left", ypos="head") + gen "Or a landlubber or whatever ye be after..." ("base", xpos="far_left", ypos="head") + her "I reckon ye may be right, captain." ("base", "narrow", "worried", "mid_soft",cheeks="blush",tears="soft") + gen "I always be right, wench." ("base", xpos="far_left", ypos="head") + gen "Now wiggle that wee arse o' yers a wee." ("base", xpos="far_left", ypos="head") + her "Like this?" ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + m "Aye, that be a good wench." + her "I be a wench, aren't I?" ("silly", "narrow", "base", "dead") + gen "Ye jus' sold me yer asshole fer ninety galleon points. What ye be calling that?" ("base", xpos="far_left", ypos="head") + her "Yes, yes...{heart} I be nothing but a wench...{heart}" ("silly", "base", "worried", "mid", cheeks="blush",tears="soft") + gen "Ye helm be leakin." ("base", xpos="far_left", ypos="head") + + her "Not only me helm, captain...{heart}{heart}{heart}" ("silly", "narrow", "base", "dead") + gen "Not just ye helm?" ("base", xpos="far_left", ypos="head") + her "I'm cumming captain...{heart}{heart}{heart}" ("open_wide_tongue", "narrow", "annoyed", "up") + gen "Agh! My cock!" ("angry", xpos="far_left", ypos="head") + gen "Relax your muscles a little, would you?" ("angry", xpos="far_left", ypos="head") + her "BUT I'M CUMMING!{heart}{heart}{heart}" ("open", "happyCl", "worried", "mid") + gen "Fine! 'ave it yer way wench!" ("angry", xpos="far_left", ypos="head") + with hpunch + her "{size=+7}*Ah-ah-aha*!!! I'm cumming!!!{/size}" ("scream", "wide", "base", "stare") + gen "{size=+7}Argh!{/size}" ("angry", xpos="far_left", ypos="head") + + $ renpy.play('sounds/fuse.ogg') + gen "!!!" ("angry", xpos="far_left", ypos="head") + menu: + "-Sink her vessel, fill her up-": + + call her_chibi_scene("sex_cum_in", trans=d5) + + $ renpy.play('sounds/cannon.ogg') + call cum_block + with hpunch + $ hermione.set_cum(pussy="light") + call ctc + + her "!!!" ("scream", "wide", "base", "stare", ypos="head", flip=False) + gen "Shiver me timbers! Argh!" ("base", xpos="far_left", ypos="head") + her "*Ah*!{heart} 'tis fillin' me up!{heart} me bilge is takin in water!{heart}" ("silly", "narrow", "annoyed", "up") + gen "'tis nah water, wench!" ("base", xpos="far_left", ypos="head") + $ renpy.play('sounds/cannon.ogg') + call cum_block + with hpunch + her "Ah! I BE A WENCH!!!!{heart}{heart}{heart}" ("scream", "happyCl", "worried", "mid",cheeks="blush",tears="crying") + $ renpy.play('sounds/cannon.ogg') + with hpunch + gen "*Agh*!" ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart} yer seamen, captain...{heart}" ("open", "wide", "worried", "stare",cheeks="blush",tears="messy") + gen "Aye, my seamen..." ("base", xpos="far_left", ypos="head") + her "*Ah*...{heart}" ("angry", "squint", "base", "mid",cheeks="blush",tears="messy") + gen "......" ("base", xpos="far_left", ypos="head") + + "-Spread yer cannon fire o'er er hull-": + hide screen bld1 + with d3 + + $ renpy.play('sounds/cannon.ogg') + + call her_chibi_scene("sex_cum_out", trans=d5) + + call cum_block + with hpunch + $ hermione.set_cum(crotch="light") + call ctc + + her "*Ah-aha*! Ye're cummin'! {heart}{heart}{heart}" ("silly", "narrow", "base", "dead", ypos="head", flip=False) + gen "{size=+7}Aye I do, wench{/size}" ("angry", xpos="far_left", ypos="head") + $ hermione.set_cum(crotch="heavy") + her "Blisterin' Barnacles, me too! Me too!" ("scream", "happyCl", "worried", "mid",cheeks="blush",tears="messy") + gen "{size=+7}FARRRGIN' WENCH!{/size}" ("angry", xpos="far_left", ypos="head") + $ renpy.play('sounds/cannon.ogg') + call cum_block + with hpunch + her "*Ah*...{heart} yer cum...{heart}" ("angry", "narrow", "base", "dead",cheeks="blush",tears="crying") + her "Ye covered me whole deck{heart}{heart}{heart}" + gen "Aye!!! All o'er yer hull!" ("angry", xpos="far_left", ypos="head") + $ renpy.play('sounds/cannon.ogg') + with hpunch + $ hermione.set_cum(body="heavy") + her "Shiver me timbers... 'tis so hot!" ("silly", "narrow", "annoyed", "up") + + #Ending + call hide_characters + show screen blkfade + with d7 + + call her_chibi_scene("sex_pause", trans=fade) + + gen "Well, tis been intense..." ("base", xpos="far_left", ypos="head") + her "*Ah-ha*...{heart} *Ah*...{heart}" ("grin", "narrow", "base", "dead",cheeks="blush",tears="messy", ypos="head", flip=False) + gen "Ye be fine lass?" ("base", xpos="far_left", ypos="head") + her "I reckon so... I be nah sure..." ("grin", "narrow", "base", "dead",cheeks="blush",tears="messy") + her "I reckon I may still be leakin', captain." ("grin", "narrow", "base", "dead",cheeks="blush",tears="messy") + her "Or maybe nah..." ("grin", "narrow", "base", "dead",cheeks="blush",tears="messy") + her "Everythin' be in a daze... 'n me legs feel so weak..." + her "Can I jus' get paid now, captain?" + + stop music fadeout 1.0 + + return diff --git a/game/scripts/minigames/mirror/events/biggus_dickus.rpy b/game/scripts/minigames/mirror/events/biggus_dickus.rpy new file mode 100644 index 00000000..744c4882 --- /dev/null +++ b/game/scripts/minigames/mirror/events/biggus_dickus.rpy @@ -0,0 +1,235 @@ + +label biggus_dickus: + + # Setup + $ hermione.equip(her_outfit_default) + $ game.daytime = False + $ game.weather = "clear" + stop weather + call room("main_room") + call play_music("night") + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}Biggus Dickus{/color}{/size}" + + hide screen blkfade + with d5 + + call her_walk(action="enter", xpos="desk", ypos="base") + + her "Professor, I need a favour..." ("soft", "closed", "base", "down", xpos="mid", ypos="base", trans=dissolve) + her "I understand it's supposed to be the other way around, but I do think with everything that I've done lately...." ("open", "base", "base", "mid") + + + her "..." ("normal", "squint", "base", "mid") + her "Professor?" ("clench", "narrow", "base", "mid") + her "Are you even listening?" ("angry", "base", "base", "mid") + + $ renpy.play('sounds/card.ogg') + pause .8 + gen "{size=-4}Hold on... How is Maslab's card a thirteen when I'm only a twelve!?{/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-4}He's not even in this universe!{/size}" ("base", xpos="far_left", ypos="head") + gen "{size=-4}Shit... Is he in this universe!? I should look into that...{/size}" ("base", xpos="far_left", ypos="head") + her "Professor, could you please pay attention?" ("disgust", "narrow", "base", "mid") + gen "Miss Granger? When did you get here?" ("base", xpos="far_left", ypos="head") + her "Finally..." ("disgust", "closed", "base", "mid") + her "I need to ask you a favour." ("open", "squint", "base", "mid") + gen "Oh... Is it that time already? Very well." ("base", xpos="far_left", ypos="head") + gen "I suppose I can spare Twenty five points if you flash me." ("base", xpos="far_left", ypos="head") + her "That isn't what I meant." ("angry", "narrow", "base", "R") + her "I'm not here to do you a favour, I need you to do me one." ("angry", "narrow", "base", "mid") + her "I mean. I would like you to do me one, that is..." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "Ah...{w=0.4} Some quid pro quo eh?" ("base", xpos="far_left", ypos="head") + gen "Very well... Let it never be said that I don't reciprocate a girl going down on me!" ("base", xpos="far_left", ypos="head") + her "Professor! I just need you to buy me something!" ("clench", "squint", "base", "mid") + gen "Oh...{w=0.4} Well that's much less exciting." ("base", xpos="far_left", ypos="head") + gen "Alright, you want some lollipops? Maybe some of that fairy chocolate?" ("base", xpos="far_left", ypos="head") + gen "Though I don't know what I've done to annoy you this time." ("base", xpos="far_left", ypos="head") + her "No professor...{w=0.4} I'm after something a bit more...{w=0.4} Adult." ("angry", "closed", "base", "down") + gen "Very well...{w=0.4} Butterbeer then? Or Are we being daring enough to try some wine for once?" ("base", xpos="far_left", ypos="head") + + + her "No, Professor...{w=0.4} I would like you to buy..." ("open", "squint", "base", "mid") + her "Three thestral strap-ons, please." ("soft", "squint", "base", "mid") + gen "Is that all?{w=0.4} A little boring, but whatever you need I suppose." ("base", xpos="far_left", ypos="head") + her "What? I--{w=0.4} Sir, I'm worried you didn't quite hear me." ("clench", "base", "base", "mid", cheeks="blush") + her "I'm asking you to acquire three strap-ons...{w=0.4} Modelled after Thestrals." ("angry", "squint", "base", "mid", cheeks="blush") + her "For me...{w=0.4} Your student." ("angry", "narrow", "base", "mid", cheeks="blush") + gen "I heard you the first time, girl. I may be old but I'm not deaf." ("base", xpos="far_left", ypos="head") + gen "Do you need them immediately?" ("base", xpos="far_left", ypos="head") + her "I-- yes.... Fastest delivery possible, please." ("angry", "closed", "base", "mid", cheeks="blush") + her "If you don't mind that is..." ("open", "squint", "base", "mid", cheeks="blush") + gen "Certainly not, I'll put in the order tonight." ("base", xpos="far_left", ypos="head") + gen "Can't very well have one of my students going without her study materials." ("base", xpos="far_left", ypos="head") + her "Thank you sir." ("soft", "squint", "base", "R", cheeks="blush") + gen "Don't mention it. They should be here sometime tomorrow." ("base", xpos="far_left", ypos="head") + gen "I assume you don't need them for one of your morning classes?" ("base", xpos="far_left", ypos="head") + her "No sir. I certainly won't be using these during my morning classes." ("angry", "narrow", "base", "R", cheeks="blush") + gen "Very good. Is that all then?" ("base", xpos="far_left", ypos="head") + her "I...{w=0.4} I mean...{w=0.4} Could you also buy me some of those cute plush owls?" ("base", "narrow", "base", "down", cheeks="blush") + + + her "I know I'm asking a lot..." ("angry", "closed", "base", "mid", cheeks="blush") + gen "Some owl plushies, and three strap-ons." ("base", xpos="far_left", ypos="head") + gen "Got it all written down, here." ("base", xpos="far_left", ypos="head") + gen "If that is all Miss Granger, then I suggest you head to your dorms." ("base", xpos="far_left", ypos="head") + her "Yes sir...{w=0.4} Thank you again." ("grin", "squint", "base", "R", cheeks="blush") + her "Good night." ("base", "base", "base", "mid", cheeks="blush") + gen "Good night, girl. Pleasant dreams." ("base", xpos="far_left", ypos="head") + + call her_walk("door") + her "" ("normal", "squint", "base", "R", cheeks="blush", xpos="base", ypos="base", flip=True) + call ctc + + gen "Anything else Miss Granger?" ("base", xpos="far_left", ypos="head") + her "Oh... No that's all... Bye then." ("angry", "base", "base", "L", cheeks="blush") + + call her_walk(action="leave") + + gen "Well... Now that that's over with." ("base", xpos="far_left", ypos="head") + $ renpy.play('sounds/card.ogg') + pause .8 + gen "What's this now, a sixteen?!" ("angry", xpos="far_left", ypos="head") + gen "This game is a scam!" ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "She wants me to buy what!?" ("angry", xpos="far_left", ypos="head") + + show screen blkfade + with d3 + + centered "{size=+7}{color=#cbcbcb}One hefty purchase and a day later...{/color}{/size}" + + hide screen blkfade + with d3 + + + call her_walk(action="enter", xpos="desk", ypos="base") + + her "Good evening Professor." ("base", "base", "base", "mid", xpos="mid", ypos="base", flip=False, trans=dissolve) + gen "Miss Granger...{w=0.4} I assume you are here for your gifts?" ("base", xpos="far_left", ypos="head") + her "Yes Professor." ("grin", "base", "base", "mid") + her "I mean, if you've acquired them already." ("open", "squint", "base", "mid") + gen "Before I say anything else, I think I need to make some things clear." ("base", xpos="far_left", ypos="head") + gen "I understand that our current...{w=0.4} Arrangement, might have led you to believe that you can rely on me for certain things." ("base", xpos="far_left", ypos="head") + gen "I feel I need to remind you however that I am still your Headmaster." ("base", xpos="far_left", ypos="head") + gen "There are some limits to what I am willing to do for you." ("base", xpos="far_left", ypos="head") + gen "I have indeed acquired what you asked for, but against my better judgement." ("base", xpos="far_left", ypos="head") + her "I understand Professor." ("angry", "narrow", "base", "down", cheeks="blush") + her "I would never have asked you to buy them for me if I thought I could get them myself!" ("angry", "squint", "base", "mid", cheeks="blush") + her "I assure you, I won't tell anyone where I got them from!" ("open", "squint", "base", "mid", cheeks="blush") + gen "Very well." ("base", xpos="far_left", ypos="head") + gen "Now that things have been made clear..." ("base", xpos="far_left", ypos="head") + gen "Why the hell did you ask me to buy you three fluffy owl plushies!?" ("base", xpos="far_left", ypos="head") + her "The...{w=0.4} Owl plushies, sir?" ("clench", "squint", "base", "mid", cheeks="blush") + her "That's what you have an issue with?" ("disgust", "squint", "base", "mid", cheeks="blush") + gen "Yes, I thought you had gotten past liking such silly things." ("base", xpos="far_left", ypos="head") + her "But...{w=0.4} What about the thestral strap-ons?" ("angry", "squint", "worried", "mid", cheeks="blush") + her "You do remember me asking you for those, right?" ("disgust", "narrow", "worried", "mid", cheeks="blush") + gen "Yes-yes, don't worry...{w=0.4} I got you your huge purple cocks." ("base", xpos="far_left", ypos="head") + her "So...{w=0.4} just to be clear." ("open", "closed", "worried", "mid", cheeks="blush") + her "You're not upset with the strap-ons...{w=0.4} But you are upset about the owls?" ("angry", "narrow", "base", "mid", cheeks="blush") + gen "That is the situation...{w=0.4} Well done Miss Granger." ("base", xpos="far_left", ypos="head") + her "{size=+5}WHY!?{/size}" ("angry", "happyCl", "annoyed", "mid", cheeks="blush") + gen "Your hormones are obviously going wild." ("base", xpos="far_left", ypos="head") + gen "It's no wonder you need some relief from time to time." ("base", xpos="far_left", ypos="head") + gen "But the owls!? What kind of girl your age asks for plush owls!?" ("base", xpos="far_left", ypos="head") + + + her "*Sigh*...{w=0.4} If you'll just hand over the things I asked you to buy, then I'll make things clear." ("angry", "closed", "annoyed", "mid", cheeks="blush") + gen "I'm still not sure I should be allowing you to have these things..." ("base", xpos="far_left", ypos="head") + her "" ("angry", "narrow", "annoyed", "mid") + call ctc + gen "But since I know you're a good student however, here you go!{fast}" ("base", xpos="far_left", ypos="head") + + call nar(">You hand Hermione the items.") + + her "Thank you Professor..." ("grin", "narrow", "base", "mid") + her "Now if you'll give me just a moment." ("base", "narrow", "base", "mid") + + call play_sound("equip_inventory") + pause .8 + + her "There we go! All done!" ("grin", "happyCl", "base", "mid") + + hide hermione_main + with d3 + + call give_reward(">Hermione hands over her creation to you.", "interface/icons/plush_owl_strapon.webp") + + her "What do you think?" ("grin", "wink", "base", "mid", xpos="mid", ypos="base", trans=dissolve) + gen "What the hell am I looking at!?" ("angry", xpos="far_left", ypos="head") + her "Don't you like it?" ("annoyed", "base", "base", "mid") + her "I think he's cute!" ("crooked_smile", "narrow", "base", "down", cheeks="blush") + gen "You've just Macgyvered together an owl that's as hung as a horse..." ("base", xpos="far_left", ypos="head") + gen "And you think it's cute?" ("base", xpos="far_left", ypos="head") + her "He, sir!" ("annoyed", "base", "annoyed", "mid") + her "And yes, I do think he's cute..." ("base", "narrow", "base", "down") + her "Of course, I'm not really interested in him for his looks." ("base", "narrow", "base", "down", cheeks="blush") + gen "Good, because he looks like an abomination unto the gods." ("base", xpos="far_left", ypos="head") + her "Don't be so mean!" ("angry", "narrow", "worried", "mid", cheeks="blush") + her "I love him!" ("grin", "narrow", "base", "down", cheeks="blush") + her "I think I'm going to name him...{w=0.4} Jeff!" ("grin", "closed", "base", "mid", cheeks="blush") + gen "His name...{w=0.4} Is Jeff?" ("base", xpos="far_left", ypos="head") + gen "And what exactly is it this...{w=0.4} \"Jeff\", is going to do?" ("base", xpos="far_left", ypos="head") + her "Oh, that's easy!" ("grin", "happyCl", "base", "mid") + her "He's going to fuck me silly of course!" ("crooked_smile", "narrow", "base", "mid", cheeks="blush") + gen "Wait...{w=0.4} {size=+5}What?{/size}" ("angry", xpos="far_left", ypos="head") + gen "How? It's an inanimate object!" ("angry", xpos="far_left", ypos="head") + gen "I mean sure, he's certainly big enough for it..." ("base", xpos="far_left", ypos="head") + her "Oh don't worry about that!" ("grin", "narrow", "base", "mid", cheeks="blush") + her "I'll just use magic of course..." ("smile", "closed", "base", "mid", cheeks="blush") + gen "Right...{w=0.4} Of course..." ("base", xpos="far_left", ypos="head") + gen "So it's just glorified masturbation--" ("base", xpos="far_left", ypos="head") + her "I'll use a spell I just learned to bring little Jeffy here to life!" ("crooked_smile", "narrow", "base", "mid", cheeks="blush") + gen "I see...{w=0.4} And what about the other two?" ("base", xpos="far_left", ypos="head") + + her "Well, when I found out about this spell in the library the other day...." ("base", "narrow", "base", "R", cheeks="blush") + her "I also came across this thing called \"airtight\"." ("grin", "narrow", "base", "R", cheeks="blush") + her "The girl in the pictures seemed to be enjoying herself!" ("crooked_smile", "narrow", "base", "mid", cheeks="blush") + gen "I bet she was...." ("base", xpos="far_left", ypos="head") + gen "Wait, they have stuff like that in the library?" ("angry", xpos="far_left", ypos="head") + her "So my plan is to strap these huge purple cocks to my plushies, bring them to life, and then let them have their way with me." ("grin", "narrow", "base", "down", cheeks="blush") #lust filled gaze + gen "You little slut!" ("base", xpos="far_left", ypos="head") + gen "Twenty points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "What? But I'm not even selling you a favour." ("angry", "base", "base", "mid", cheeks="blush") + gen "I don't care! For that plan alone you deserve some points." ("base", xpos="far_left", ypos="head") + gen "Especially for saying it out loud!" ("base", xpos="far_left", ypos="head") + her "Oh! Well thank you, sir!" ("grin", "closed", "base", "mid", cheeks="blush") + her "Now... If you don't mind, I'd like to head back to my dorm." ("base", "squint", "base", "R", cheeks="blush") + gen "I bet you do...{w=0.4} Very well, off you go Miss Granger." ("base", xpos="far_left", ypos="head") + gen "Have fun with...{w=0.4} \"Jeff\"." ("base", xpos="far_left", ypos="head") + her "Oh, I will..." ("base", "base", "base", "mid") + her "Goodnight, sir!" ("base", "base", "base", "R") + gen "Goodnight Miss Granger." ("base", xpos="far_left", ypos="head") + + show screen blkfade + with d5 + + pause 1.0 + + call play_sound("door") + pause .8 + $ renpy.play('sounds/giggle2.ogg') + pause .5 + her "Now then Jeff, show me what you're made of..." + $ renpy.play('sounds/sit_on_bed.ogg') + pause .8 + her "Piertotum Locomotor!" + $ renpy.play('sounds/magic4.ogg') + pause .8 + her "It worked!" + her "Now then... Come here and--" + $ renpy.play('sounds/gasp2.ogg') + her "Jeffrey!" + $ renpy.play('sounds/gltch.ogg') + with kissiris + pause .8 + play bg_sounds "sounds/sexloop.ogg" + her "*Ah*...{w=0.4} *Ah*...{w=0.4} *Ah*...{heart}{heart}{heart}" with vpunch_repeat + pause 1 + centered "{size=+7}{color=#cbcbcb}The end{/color}{/size}" + + $ renpy.end_replay() + + #end of story diff --git a/game/scripts/minigames/mirror/events/class_masturbate_event.txt b/game/scripts/minigames/mirror/events/class_masturbate_event.txt new file mode 100644 index 00000000..840a2cee --- /dev/null +++ b/game/scripts/minigames/mirror/events/class_masturbate_event.txt @@ -0,0 +1,420 @@ + +label class_masturbation_event: #LV.8 (Whoring = 21 - 23) + + call room("main_room") + show screen blkfade + with d3 + + nar "This event is written by WaxerRed." + + menu: + "-Part 1-": + $ pathvalue = 0 + "-Part 2-": + $ pathvalue = 1 + "-Part 3-": + $ pathvalue = 2 + "-Part 4-": + $ pathvalue = 3 + "-Return-": + $ renpy.end_replay() + + call hide_blkfade + + #First Level + if pathvalue == 0: + call her_walk(action="enter", xpos="mid", ypos="base") + + call bld + gen "[hermione_name] There is another task I have in mind for you." ("base", xpos="far_left", ypos="head") + her "I assume this is a new way to humiliate myself in front of you. Or will it be in front of my peers this time?" ("open", "narrow", "annoyed", "mid") + gen "[hermione_name] you should know that when you 'Assume', you make and ass out of you..." ("base", xpos="far_left", ypos="head") + her "... and me?" ("shock", "base", "base", "mid") + gen "Yep, you make an ass out of you and you." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "annoyed", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + her "... The favour?" ("open", "narrow", "annoyed", "mid") + gen "The wha-- Oh Right! I want you to masturbate during class." ("base", xpos="far_left", ypos="head") + her "[genie_name]!" ("shock", "wide", "base", "stare") + her "I was right to assume that this would be humiliating!" ("angry", "base", "angry", "mid") + gen "you know what they say about assuming, you make an" ("base", xpos="far_left", ypos="head") + call her_walk(action="leave") + + show screen blkfade + call hide_blkfade + + call her_walk(action="enter", xpos="mid", ypos="base") + + call bld + gen "..." ("base", xpos="far_left", ypos="head") + her "..." ("upset", "narrow", "worried", "down") + gen "... So" ("base", xpos="far_left", ypos="head") + her "I did it." ("clench", "squint", "angry", "mid") + gen "Excellent work!" ("base", xpos="far_left", ypos="head") + her "I feel like I'm going to be sick." ("upset", "narrow", "worried", "down") + gen "Really? That shouldn't be happening. Are you sure you know what masturbating is?" ("base", xpos="far_left", ypos="head") + her "May I just have the points now." ("angry", "closed", "angry", "mid") + her "And possibly the obliviate curse?" ("clench", "base", "base", "mid") + her "Because I want my memory of this day gone!" ("scream", "wide", "base", "stare") + her "" ("normal", "narrow", "annoyed", "mid") + gen "Obliviate? I think you are thinking of Roofies." ("base", xpos="far_left", ypos="head") + her "POINTS!" ("angry", "base", "angry", "mid") + gen "Now hold your horses [hermione_name] We need to verify you did your task correctly." ("base", xpos="far_left", ypos="head") + her "Sir!" ("scream", "base", "angry", "mid") + her "" ("normal", "base", "angry", "mid") + gen "Just give me a quick little run down and you're done." ("base", xpos="far_left", ypos="head") + her "I'd really rather not." ("upset", "narrow", "annoyed", "mid") + gen "Come on, you masturbated during class, is this really so hard in comparison?" ("base", xpos="far_left", ypos="head") + her "I did it during Professor Flitwick's class." ("annoyed", "narrow", "annoyed", "mid") + her "He's... well he's a sweet short old man but not a very good teacher." ("open", "base", "base", "mid") + her "He might be the SECOND most senile person at Hogwarts." ("smile", "slit", "low", "stare") + gen "Who's the first?" ("base", xpos="far_left", ypos="head") + her "" ("clench", "slit", "low", "stare") + gen "*Ahem*... Back to the story of flicking your flaps, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Professor Flitwick was giving the same lecture on levitation charms." ("disgust", "base", "worried", "mid") + her "For the third time this week, might I add. And no one was paying attention." ("open", "base", "base", "mid") + her "I found myself a quiet desk in the back of the room." ("soft", "base", "base", "mid_soft") + her "I'd never sat anywhere but the front before!" ("shock", "wide", "base", "stare") + gen "The horror." ("base", xpos="far_left", ypos="head") + her "And then I placed my hand over my..." ("soft", "narrow", "worried", "down") + gen "My?" ("base", xpos="far_left", ypos="head") + her "Over my..." ("open", "narrow", "worried", "down") + gen "Meat curtains." ("base", xpos="far_left", ypos="head") + her "blegh." ("disgust", "narrow", "annoyed", "mid") + gen "Did you cum?" ("base", xpos="far_left", ypos="head") + her "{size=-5}(Swallow it down, just swallow it down you can do this.){/size} Yes." ("clench", "narrow", "worried", "down") + gen "Really?" ("base", xpos="far_left", ypos="head") + her "Only because I knew you wouldn't give me points If I didn't!" ("scream", "base", "angry", "mid") + gen "What were you thinking about?" ("base", xpos="far_left", ypos="head") + her "None of your fricking business!" ("angry", "wide", "base", "stare") + gen "Woah there, language. Miss Granger remember, I am Head Master FumbleSnore." ("base", xpos="far_left", ypos="head") + her "If you don't give me points right now, I'm leaving!" ("mad", "base", "angry", "mid") + + menu: + "\"Here's eighty points.\"": + gen "Party Pooper. Eighty points to Gryffindor." ("base", xpos="far_left", ypos="head") + her "Thank you, professor. Good Day!" ("open", "slit", "low", "stare") + her "{size=-5}(Was that even worth it? I'd rather have just sucked his cock twice then try that again.){/size}" ("annoyed", "narrow", "annoyed", "mid") + her "{size=-5}(Did I really just think that?){/size}" ("open", "narrow", "worried", "down") + + "\"Nah.\"": + + gen "Points? What points?" ("base", xpos="far_left", ypos="head") + her "Sir..." ("clench", "squint", "angry", "mid") + gen "If you remember you left before we could discuss any form of points." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "annoyed", "mid") + gen "Ah, is it you assumed I'd give you points for this?" ("base", xpos="far_left", ypos="head") + gen "Well, you know what they say about assuming it makes an ass out of you--" ("base", xpos="far_left", ypos="head") + her "*AGGGH*!" ("scream", "base", "angry", "mid") + + call her_walk(action="leave",2.5) + + #Second Level + if pathvalue == 1: + call her_walk(action="enter", xpos="mid", ypos="base") + + call bld + gen "'Morning, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "Good morning [genie_name]" ("smile", "happy", "base", "mid_soft") + gen "Did I ever tell you of the time I saved Christmas?" ("base", xpos="far_left", ypos="head") + her "Can we just skip to the part where you tell me to do something disgusting." ("clench", "squint", "angry", "mid") + gen "... Go masturbate during class. Eighty points." ("base", xpos="far_left", ypos="head") + her "Fine." ("annoyed", "narrow", "annoyed", "mid") + + call her_walk(action="leave") + + call bld + gen "I would have given you two hundred for listening to my story!" ("base", xpos="far_left", ypos="head") + + call her_walk(action="enter", xpos="mid", ypos="base") + + gen "Why hello there [hermione_name] you loo--" ("base", xpos="far_left", ypos="head") + her "[genie_name] I demand the expulsion of all those Slytherin Harlots!" ("angry", "base", "angry", "mid") + gen "What happened this time?" ("base", xpos="far_left", ypos="head") + her "THEY HAVE GROWN TOO BOLD!" ("scream", "wide", "base", "stare") + gen "Perhaps you should just start from the beginning." ("base", xpos="far_left", ypos="head") + her "THEY-I" ("scream", "wide", "base", "stare") + her "It was in Snape's class, I was sitting in the back again. Masturbating in class like you made me" ("annoyed", "narrow", "annoyed", "mid") + her "Snape's lesson was pointlessly infuriating, as per his usual." ("open", "base", "base", "mid") + her "Talking down at us, like we don't know how to brew a Pepperup Potion. What does he think we are? Mewling first years?" ("annoyed", "narrow", "annoyed", "mid") + gen "I'm pretty sure Snape thinks of you as a cu--" ("base", xpos="far_left", ypos="head") + her "And that Slytherin troublemaker Daphne Greengrass comes over! Says she can't concentrate with my moaning!" ("angry", "wide", "base", "stare") + gen "Were you moaning?" ("base", xpos="far_left", ypos="head") + her "Shut up! That's not important!" ("scream", "wide", "base", "stare") + gen "{size=-5}Jeez.{/size}" ("base", xpos="far_left", ypos="head") + her "That two faced Slytherin has the nerve to call me a slut! ME!" ("angry", "base", "angry", "mid") + her "But as soon as we started to argue professor Snape called us both to the front of the class." ("upset", "base", "base", "mid_soft") + her "Of course he asked Daphne for her side of the story first." ("annoyed", "base", "base", "mid") + her "She pretended to act all innocent and embarrassed at first." ("open", "base", "base", "mid_soft") + her "But when Snape asked her again, she might as well have screamed that I was 'playing with myself.'" ("annoyed", "happy", "base", "mid") + her "When I tried to deny it, Proff-- That disgusting pig Snape just grabbed my hand and sniffed it." ("clench", "base", "worried", "mid") + her "The face he made had the whole class laughed at me! I was--" ("open", "wide", "base", "stare", cheeks="blush") + her "I was-- They-- *aghh*!" ("angry", "base", "angry", "mid") + gen "Just let it out [hermione_name]" ("base", xpos="far_left", ypos="head") + her "Those... THose... THOSE!" ("scream", "wide", "base", "stare") + her "THOSE DISGUSTING WORMS! TALK TO ME LIKE THAT? TWO FACED HYPOCRITES! FUCK THEM!" ("scream", "wide", "base", "stare") + gen "Feel better?" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "base", "base", "mid") + her "... No, no I do not. Not until those Slytherins pay." ("open", "slit", "low", "stare") + her "[genie_name] I don't care about my points for this. I just want you to do something about Slytherin." ("open", "base", "base", "mid_soft") + menu: + "-Give eighty points to Gryffindor-": + gen "Sorry [hermione_name], but there isn't much I can do." ("base", xpos="far_left", ypos="head") + gen "But here, these should cheer you up. Eighty house points to Gryffindor." ("base", xpos="far_left", ypos="head") + her "*Ugh*... It's like you don't even listen to me." ("annoyed", "narrow", "annoyed", "mid") + + "-Take two hundred points from Slytherin-": + gen "*Hmm*... While I doubt I can do anything official just yet..." ("base", xpos="far_left", ypos="head") + gen "Two hundred house points from Slytherin!" ("base", xpos="far_left", ypos="head") + her "Serves them right. Heh, heh heh." ("grin", "happy", "base", "mid_soft") + her "You know I understand now why I rushed here to talk to you." ("smile", "happy", "base", "mid_soft") + her "You always know just what to say to make me feel good. [genie_name]" ("open", "happy", "base", "mid_soft") + gen "Glad to be appreciated [hermione_name]" ("base", xpos="far_left", ypos="head") + her "In this case I don't think I'd mind 'showing you some of that appreciate--" ("soft", "base", "base", "mid_soft") + her "*Ahem*... I mean... *Ehm*... It's getting time for dinner. So, goodnight [genie_name]" ("open", "narrow", "worried", "down", cheeks="blush") + gen "See you tomorrow [hermione_name]" ("base", xpos="far_left", ypos="head") + her "Yes! I mean... if I must." ("open", "narrow", "base", "mid_soft") + her "{size=-5}Totally worth it.{/size}" ("smile", "happy", "base", "mid_soft") + + "-Humiliate her-": + gen "I'm sorry can you say that again?" ("base", xpos="far_left", ypos="head") + her "Agh! For the hundredth time, DO SOMETHING about Slytherin!" ("annoyed", "narrow", "annoyed", "mid") + gen "... For?" ("base", xpos="far_left", ypos="head") + her "For embarrassing me during class!" ("upset", "slit", "low", "stare") + gen "And how did they embarrass you?" ("base", xpos="far_left", ypos="head") + her "They told the whole class I was masturbating!" ("annoyed", "narrow", "annoyed", "mid") + gen "Why'd they do that?" ("base", xpos="far_left", ypos="head") + her "Garr! I don't know, because they are petty unintelligent brutes?" ("angry", "base", "angry", "mid") + gen "Is that the only reason?" ("base", xpos="far_left", ypos="head") + her "I don't know what motivates those Slytherin harl--" ("clench", "base", "base", "mid") + gen "Are you sure it wasn't FOR masturbating during class?" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "narrow", "worried", "mid_soft") + gen "Which you were." ("base", xpos="far_left", ypos="head") + gen "And not for the first time." ("base", xpos="far_left", ypos="head") + her "That's that-- You're making me!" ("annoyed", "narrow", "annoyed", "mid") + gen "Making? All I did was offer you some house points. And not that many, what eighty? I'm sure you could have done a little book report and gotten that many." ("base", xpos="far_left", ypos="head") + gen "Instead you choose to ignore your lesson in favour of pleasuring yourself in class." ("base", xpos="far_left", ypos="head") + gen "Are you sure that you aren't you the..." ("base", xpos="far_left", ypos="head") + her "Stop it... please." ("upset", "narrow", "worried", "down") + gen "The hypocritical harlot?" ("base", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + # Third Level + elif pathvalue == 2: + call her_walk(action="enter", xpos="mid", ypos="base") + + call bld + gen "POP QUIZ!" ("base", xpos="far_left", ypos="head") + her "{size=-5}(my ears!){/size}" ("annoyed", "narrow", "annoyed", "mid") + gen "Question one, if you wanted to earn eighty points, you'd need to..." ("base", xpos="far_left", ypos="head") + gen "A. Kiss a girl? B. Flash your Tits. C. Masturbate during class. D. Eat a wand." ("base", xpos="far_left", ypos="head") + her "C? And you aren't actually going to make me eat a wand one day, are you?" ("open", "narrow", "worried", "mid_soft") + gen "For seventy-five house points I might." ("base", xpos="far_left", ypos="head") + her "I feel like it should be a lot more than that." ("open", "base", "base", "mid") + gen "For sucking a dick? Nah seems fair." ("base", xpos="far_left", ypos="head") + her "Suck a--? But you said eat a wand." ("clench", "squint", "angry", "mid") + her "Oh. I guess I walked into that one [genie_name]." ("smile", "happy", "base", "mid_soft", cheeks="blush") + gen "Hey you got it in the end! That's progress from before!" ("base", xpos="far_left", ypos="head") + her "*Hmm*... Good point. Anyway, you wanted me to masturbate during class?" ("open", "base", "base", "mid") + gen "Up for it?" ("base", xpos="far_left", ypos="head") + her "Sure why not... though I wish you had asked yesterday." ("annoyed", "narrow", "annoyed", "mid") + her "Snape gave a 2-hour lecture on the 'Rich and Pure' History of Slytherin." ("open", "base", "base", "mid") + gen "You don't ALWAYS need my permission to masturbate [hermione_name]" ("base", xpos="far_left", ypos="head") + her "Oh trust me, I know." ("soft", "base", "base", "mid_soft", cheeks="blush") + + call her_walk(action="leave") + + show screen blkfade + call hide_blkfade + + call her_walk(action="enter", xpos="mid", ypos="base") + + call bld + gen "Everything alright [hermione_name]? I usually expect you a bit earlier." ("base", xpos="far_left", ypos="head") + her "Uh.. yeah, yeah." ("upset", "narrow", "worried", "down") + gen "..." ("base", xpos="far_left", ypos="head") + her "..." ("clench", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + her "[genie_name] I promise I won't be mad. I just need you to tell me something." ("open", "base", "base", "mid") + gen "Alright? {size=-5}(oh god, I hope she didn't learn it was me who rubbed my dick in her--){/size}" ("base", xpos="far_left", ypos="head") + her "Did you-- Did you ever put a curse or something on me? Or give me some secret potion?" ("soft", "narrow", "annoyed", "mid") + gen "... No?" ("base", xpos="far_left", ypos="head") + her "..." ("normal", "base", "base", "mid") + gen "What are you trying to ask [hermione_name]" ("base", xpos="far_left", ypos="head") + her "I..." ("upset", "slit", "low", "stare") + her "I was masturbating in class like you asked, Flitwick again." ("open", "base", "base", "mid_soft", cheeks="blush") + her "And I was doing \"well\" but I couldn't-- *uh*... finish." ("upset", "narrow", "worried", "down", cheeks="blush") + her "I don't know why! It's never happened before!" ("scream", "wide", "base", "stare") + her "Class was nearly over and I just couldn't do it no matter how much I tried." ("annoyed", "narrow", "annoyed", "mid") + gen "Maybe you weren't trying hard enough." ("base", xpos="far_left", ypos="head") + her "Not trying hard enough? [genie_name] to put it delicately... *Hmm*..." ("open", "base", "base", "R") + her "How would you put shoving three fingers down my slit, rubbing my clit with my thumb, and using my free hand to pinch my nipples delicately?" ("soft", "base", "base", "mid_soft", cheeks="blush") + gen "Sounds plenty delicate to me! But maybe it was just nerves." ("base", xpos="far_left", ypos="head") + her "I mean people were staring but... I'm pretty used to that by now." ("upset", "squint", "angry", "mid") + gen "Maybe it was--" ("base", xpos="far_left", ypos="head") + her "Can I just tell you what it was?" ("open", "base", "angry", "mid") + gen "Oh, fine." ("base", xpos="far_left", ypos="head") + her "Class was nearly over and I was really going at it..." ("soft", "base", "base", "mid_soft", cheeks="blush") + her "Friction must have rubbed of a layer of skin at least." ("open", "base", "base", "mid_soft", cheeks="blush") + her "But nothing was happening. In my head I just kept telling myself to cum, again and again and again but it wasn't enough" ("clench", "narrow", "annoyed", "mid", cheeks="blush") + her "... And then..." ("soft", "base", "base", "mid_soft") + gen "And then?" ("base", xpos="far_left", ypos="head") + her "...." ("upset", "narrow", "worried", "down", cheeks="blush") + her "I imagined 'you' telling me to cum [genie_name]" ("soft", "base", "base", "mid_soft", cheeks="blush") + gen "And?" ("base", xpos="far_left", ypos="head") + her "I came." ("smile", "base", "base", "mid_soft", cheeks="blush") + her "I came really really hard." ("grin", "wide", "base", "stare", cheeks="blush") + gen "Sounds pretty standard to me." ("base", xpos="far_left", ypos="head") + her "Does it? I guess. I just--" ("open", "narrow", "worried", "down") + her "I was wondering if you put the imperio curse on me, or some potion... Something that MADE me follow your orders." ("open", "base", "base", "mid") + her "I was just-- Sorry I was being s--" ("clench", "narrow", "worried", "mid_soft") + gen "[hermione_name]" ("base", xpos="far_left", ypos="head") + gen "I've never made you do anything. I've just offered you a reason." ("base", xpos="far_left", ypos="head") + gen "The choice to do all this has ALWAYS been yours. If you need ‘my voice' in order to find completion there's no one to blame but yourself." ("base", xpos="far_left", ypos="head") + her "Ah." ("upset", "narrow", "worried", "down", cheeks="blush") + her "... Thinking about something like that would've used upset me... but now." ("open", "base", "base", "mid") + her "Well the only person who doesn't seem to like the new me, is the old me." ("clench", "narrow", "base", "mid_soft") + her "And I think the new me is starting to listen to the old me less and less." ("smile", "happy", "base", "mid_soft", cheeks="blush") + her "Does that make sense?" ("open", "base", "base", "mid") + gen "Yes, I think it does. Eighty house points." ("base", xpos="far_left", ypos="head") + her "{size=-5}Really?{/size} For what? Oh right masturbating during class. *Hah-ha*, I already forgot." ("silly", "happy", "base", "mid_soft") + gen "Have a good night [hermione_name]" ("base", xpos="far_left", ypos="head") + her "You too [genie_name]" ("open", "base", "base", "mid") + + call her_walk(action="leave") + + #Fourth Level + elif pathvalue == 3: + call her_walk(action="enter", xpos="mid", ypos="base") + + call bld + gen "How are you doing this fine, beautiful morning my little, wittle [hermione_name]" ("base", xpos="far_left", ypos="head") + her "How sweet of you to ask, I'm quite well my handsome, bandsome [genie_name]. And yourself?" ("smile", "happy", "base", "mid_soft") + gen "Every day with you in it is quite fine, my cutesy, dutesy [hermione_name]" ("base", xpos="far_left", ypos="head") + her "Oh you're incorrigible old caddy, daddy [genie_name] and how did you sleep?" ("open", "happy", "base", "mid_soft") + gen "I found this chair to be quite hospitable last night my slutty, dutty [hermione_name]" ("base", xpos="far_left", ypos="head") + her "That chair there? My word, my glamorous, amorous [genie_name] you deserve so much more!" ("shock", "wide", "base", "stare") + her "In fact, I know a quite warm bed in the girl's dormitory that would love to have you." ("soft", "base", "base", "mid_soft", cheeks="blush") + gen "Really? Well my whorish, shoaris-- no, my whorish, boari-- no. Ah whatever. Let's get to business." ("base", xpos="far_left", ypos="head") + her "Of course, sir. {size=-5}(Yes! 1 conversation point to [hermione_name]){/size}" ("smile", "happy", "base", "mid_soft") + her "{size=-5}(Score is... [hermione_name] 1 - [genie_name]...58){/size}" ("clench", "base", "worried", "mid") + gen "... Paying attention?" ("base", xpos="far_left", ypos="head") + her "Yes, yes of course gorgeous, dorg-- I mean [genie_name]" ("open", "base", "base", "mid", cheeks="blush") + gen "Right, well as I was saying for today's favour, I want you to masturbate during class." ("base", xpos="far_left", ypos="head") + her "Can there be bonus points?" ("open", "base", "base", "mid") + her "" ("base", "base", "base", "mid") + gen "Bonus points?" ("base", xpos="far_left", ypos="head") + her "You know... for masturbating during more than one class, or masturbating more than once per class..." ("open", "base", "base", "mid_soft", cheeks="blush") + her "... for smuggling in and using a dildo." + her ".... Or getting caught on purpose." + her "" ("soft", "base", "base", "mid_soft", cheeks="blush") + gen "Oh you gorgeous little, teasing minx!" ("base", xpos="far_left", ypos="head") + her "I thought we were done with the nicknames." ("annoyed", "base", "base", "mid") + gen "*Hmm*... Yes... Well unfortunately according to the official rules, I may only give eighty points per day for masturbation related favours." ("base", xpos="far_left", ypos="head") + her "Oh I see, that's too bad." ("upset", "narrow", "worried", "down") + gen "A real shame... but there nothing preventing you from doing those 'bonus' acts on your own." ("grin", xpos="far_left", ypos="head") + her "I guess..." ("upset", "squint", "angry", "mid") + gen "I'd certainly be happy about it... And perhaps my happiness will be its own reward?" ("base", xpos="far_left", ypos="head") + her "Heh. Yes, maybe it will. Well I better get to work then." ("smile", "base", "base", "mid") + + call her_walk(action="leave") + + show screen blkfade + call hide_blkfade + + call her_walk(action="enter", xpos="mid", ypos="base") + + her "[genie_name]" ("open", "base", "base", "mid") + gen "Did you complete your task?" ("base", xpos="far_left", ypos="head") + her "Of course, was there ever any doubt?" ("smile", "base", "base", "mid") + + menu: + "-Just give her the points-": + gen "Well I trust you at your word, [hermione_name]. Eighty points." ("base", xpos="far_left", ypos="head") + her "Oh really? Are you sure you don't want me to give you the details to be sure?" ("upset", "squint", "angry", "mid") + gen "No no, it's quite alright you deserve my trust. I'm sure you have some studying or some such to get to" ("base", xpos="far_left", ypos="head") + her "I suppose. Well goodnight [genie_name]" ("annoyed", "narrow", "annoyed", "mid") + + "\"Tell me about it.\"": + gen "Well [hermione_name], how was your day exactly?" ("base", xpos="far_left", ypos="head") + her "Let's just say it was..." ("open", "base", "base", "R") + her "Busy." ("soft", "base", "base", "mid_soft", cheeks="blush") + her "Do you want to hear about my class with Slughorn, or my class with mad eye moody?" ("open", "base", "base", "mid_soft") + gen "Go ahead and pick your favourite." ("base", xpos="far_left", ypos="head") + her "I definitely preferred Mad Eyes. Today we had a written exam and well--" ("open", "base", "base", "mid") + gen "Go on." ("base", xpos="far_left", ypos="head") + her "And well I didn't use to pay attention to my classmates whining about the written exams in that class before but..." ("open", "closed", "base", "mid") + her "I think they might have a point. Written tests there are just stupid." ("annoyed", "narrow", "annoyed", "mid") + gen "Gasp." ("base", xpos="far_left", ypos="head") + her "I know it's rich coming from me, but I want to think my time with you is giving me a more practical view of the world and--" ("open", "happy", "base", "mid_soft") + her "Well come on, it's a defence against the dark arts class. What's the point of a 'written exam'?" ("smile", "happy", "base", "mid_soft") + her "Am I going to send a letter to the dementors and bogarts asking them to stop?" ("open", "happyCl", "base", "mid") + gen "{size=-5}(I don't think I want to know what those are.){/size}" ("base", xpos="far_left", ypos="head") + gen "Indeed, so encouraging to hear our sessions are making you a better person, but I think we are getting off track here." ("base", xpos="far_left", ypos="head") + her "*Hmm*?" ("clench", "base", "base", "mid") + gen "Masturbating in bad lipped Mike's class?" ("base", xpos="far_left", ypos="head") + her "{size=-4}(Bad lipp--?){/size} Oh, Professor Moody's class." ("open", "slit", "low", "stare") + her "Right, there was an exam and I didn't study at all for it!" ("upset", "squint", "angry", "mid") + gen "Second gasp!" ("base", xpos="far_left", ypos="head") + her "You don't have to say \"gasp\" you can just gasp." ("annoyed", "narrow", "annoyed", "mid") + her "And who do you think is responsible for my lack of study time?" ("angry", "base", "angry", "mid") + her "But anyway, I was staring at a test not knowing a thing, my worst nightmare." ("upset", "narrow", "worried", "down") + her "And then I might have got a naughty Idea..." ("soft", "base", "base", "mid_soft", cheeks="blush") + gen "Oh?" ("base", xpos="far_left", ypos="head") + her "I thought if I was going to fail no matter what..." ("upset", "narrow", "worried", "down") + her "Then I needed to make sure everyone else did too!" ("grin", "happy", "base", "mid_soft") + gen "And how did you accomplish that?" ("base", xpos="far_left", ypos="head") + her "Oh you know... I might have offered a bit of a distraction." ("soft", "base", "base", "mid_soft") + her "At first, I just began with some light rubbing, but when that wasn't enough, I knew I needed to step up my performance." ("soft", "base", "base", "mid_soft", cheeks="blush") + her "I started to make a little noise. You know, sneezing, squeaking my chair, complaining how hot the room was for some reason..." ("soft", "base", "base", "mid_soft", cheeks="blush") + gen "Moaning?" ("base", xpos="far_left", ypos="head") + her "Maybe just a bit... mmmmh." ("grin", "base", "base", "mid_soft", cheeks="blush") + her "And it started to work, one after another students would start to glance up." ("smile", "base", "base", "mid_soft", cheeks="blush") + her "Hehehehe. Their reactions were all the same and funny every time." ("grin", "happy", "base", "mid_soft") + her "They'd glance up annoyed at the noise, and do the biggest double take at me." ("grin", "base", "base", "mid_soft", cheeks="blush") + her "All the desks have a bottom covering unfortunately, but I think they could quite clearly see my hand moving." ("soft", "base", "base", "mid_soft", cheeks="blush") + her "I could see the doubt in their eyes, telling themselves I was just itching my legs and they were imagining things..." ("smile", "closed", "base", "mid", cheeks="blush") + her "Then they'd look up... see my grin, the look in my eyes... mphhh..and let's say they wouldn't look at their own tests again." ("grin", "narrow", "annoyed", "up", cheeks="blush") + gen "Need to take care of something, [hermione_name]?" ("base", xpos="far_left", ypos="head") + hide hermione_main + with d3 + + $ hermione.strip("robe", "accessory") + $ hermione.strip("stockings") + $ hermione.strip("bottom") + $ hermione.strip("panties") + + call set_her_action("fingering") + her "Thank you, [genie_name] But I wouldn't mind if you did this, your hands are much stronger then mine and so much better at finding my nhhh sensitive spots" ("soft", "base", "base", "mid_soft", cheeks="blush") + gen "No No, you're doing fine on your own. And don't forget your story." ("base", xpos="far_left", ypos="head") + her "Oh [genie_name] I really felt like a storybook witch then. Casting a charm over a whole village. Hagh Hagh, wrapping them around my finger." ("grin", "wide", "base", "stare", cheeks="blush") + gen "Or maybe a succubus!" ("base", xpos="far_left", ypos="head") + her "Yesssss-- *Ah*... I'm Cumming! {heart}{heart}{heart}" ("open_tongue", "wide", "worried", "ahegao", cheeks="blush") + $ hermione_squirt = True + her "God, never in my whole life have I ever felt that wanted, all those eyes on me. Thinking {b}ME{/b} more important to look at then their tests. Ngh!" ("grin", "narrow", "annoyed", "up", cheeks="blush") + her "And I was sure to grab the attention of the Slytherins first." ("smile", "narrow", "annoyed", "up", cheeks="blush") + gen "Oh why's that?" ("base", xpos="far_left", ypos="head") + $ hermione_squirt = False + her "I needed to make sure they failed the tests in particular. Of course, *mhh* No other reasons *mhhh*..." ("soft", "slit", "worried", "ahegao", cheeks="blush") + her "But There was no need, by the time the bell rang there wasn't a single person not staring at me *mhhhh-ah*..." ("smile", "narrow", "annoyed", "up", cheeks="blush") + $ hermione_squirt = True + her "And from the looks on some of their faces... and the dripping down the desks... I wasn't the only one getting 'hot' in that room." ("open", "narrow", "annoyed", "up", cheeks="blush") + gen "And Rad nose Booty didn't mind his entire class watching you get off?" ("base", xpos="far_left", ypos="head") + her "Oh him. *Ha-ha* Let's just say his eye wasn't doing much spinning that class. I hear it can even see through walls to so--" ("soft", "base", "base", "mid_soft", cheeks="blush") + her "and *ah-ah-ah*, that was the best part. I got an owl delivering my graded test back, before coming here. *ah-ah*" ("smile", "narrow", "annoyed", "up", cheeks="blush") + her "A+ 100%% no questions answered." ("grin", "wide", "base", "stare", cheeks="blush") + her "*AGGGH*! {heart}{heart}{heart}" ("open_wide_tongue", "narrow", "annoyed", "up", cheeks="blush") + gen "Well it certainly sounds like you had a fun day." ("base", xpos="far_left", ypos="head") + her "*Pant* *Pant*, *heh*... and I didn't even tell you about my other classes." ("smile", "happy", "base", "mid_soft", cheeks="blush") + gen "[hermione_name] I'm going to repeal the rule about not giving bonus points, you'll get double for today." ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]" ("smile", "base", "base", "mid") + + call her_walk(action="leave") + + call blkfade + # $ hermione.equip(her_outfit_last) + call her_chibi("hide") + hide screen main_room + + jump class_masturbation_event.choices diff --git a/game/scripts/minigames/mirror/events/eating_for_pleasure.rpy b/game/scripts/minigames/mirror/events/eating_for_pleasure.rpy new file mode 100644 index 00000000..a35441ac --- /dev/null +++ b/game/scripts/minigames/mirror/events/eating_for_pleasure.rpy @@ -0,0 +1,293 @@ +label eating_for_pleasure_rewards: + call unlock_clothing(text=">New clothing items for Hermione have been unlocked!", item=her_outfit_pizza) + return + +label eating_for_pleasure: + + # Setup + $ hermione.equip(her_outfit_default) + $ game.daytime = False + $ game.weather = "clear" + stop weather + call room("main_room") + call play_music("stop") + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}Eating for Pleasure{/color}{/size}" + + narrator "This story is best played when drunk...{w=0.4} or not at all...{w=0.4} it's the worst...{w=0.4} enjoy!" + + hide screen blkfade + + $ renpy.music.play("music/fluffing-a-duck-by-kevin-macleod.ogg") + + gen "*Gah*... this place is so dull..." ("base", xpos="far_left", ypos="head") + gen "Not a single gambling den or a whore house..." ("base", xpos="far_left", ypos="head") + gen "And even if I don't need to eat I'd do anything for a pizza right about now..." ("base", xpos="far_left", ypos="head") + hat "Just call a pizza place then..." + + $ renpy.play("sounds/MaleGasp.ogg") + gen "Did that hat just speak?!" ("angry", xpos="far_left", ypos="head") with vpunch + hat "Of course I speak!" + hat "Not only that... I know who you are..." + g5 "You do?" + gen "Then why haven't you said anything until now!" ("angry", xpos="far_left", ypos="head") + gen "I've been sitting here alone for months!" ("angry", xpos="far_left", ypos="head") + hat "A wise man told me not to speak unless you have something to say." + gen "Wait..." ("base", xpos="far_left", ypos="head") + gen "The real Dumbledore told you to shut the fuck up?" ("grin", xpos="far_left", ypos="head") + hat "..." + gen "Anyway, what did you mean by \"call\"?" ("base", xpos="far_left", ypos="head") + + gen "I haven't seen a single phone in this place!" ("base", xpos="far_left", ypos="head") + hat "Just use the floo-network." + gen "The floo... is that like a sewer network or something?" ("base", xpos="far_left", ypos="head") + gen "You guys got magic turtle pizza deliverers?" ("base", xpos="far_left", ypos="head") + hat "No, I'm talking about the fireplace." + hat "Wizards use it as a form of communication and travel." + gen "Wait, so like a portal?" ("base", xpos="far_left", ypos="head") + gen "I've been able to just travel to any ole fireplace this whole time?!" ("angry", xpos="far_left", ypos="head") + hat "Hogwarts fireplaces are limited to voice communication or we'd have all sorts of dark wizards roaming this place..." + gen "(Sounds like discrimination to me...)" ("base", xpos="far_left", ypos="head") + gen "How does it work then?" ("base", xpos="far_left", ypos="head") + hat "There should be some powder in one of the drawers, take it and throw some in the fire and say out loud who you want to call." + gen "Gimme a sec." ("base", xpos="far_left", ypos="head") + + pause 0.5 + call gen_chibi("jerk_off_behind_desk") + with d5 + $ renpy.sound.play("sounds/drawer_open.ogg") + pause 0.75 + call gen_chibi("sit_behind_desk") + with d5 + + gen "Oh, that powder!" ("base", xpos="far_left", ypos="head") + gen "I was wondering what it was for..." ("base", xpos="far_left", ypos="head") + gen "Okay, let's do this!" ("base", xpos="far_left", ypos="head") + show screen blkfade + with d5 + $ renpy.play('sounds/08_hop_on_desk.ogg') + pause 1.4 + call gen_chibi("stand", "desk", "base", flip=True) + hide screen blkfade + with d5 + pause 0.3 + call gen_walk(560, "base") + pause 2.0 + gen "..." ("base", xpos="far_left", ypos="head") + call gen_chibi("stand", flip=False) + with d3 + gen "So I just throw it in and say who I'm calling?" ("base", xpos="far_left", ypos="head") + hat "Yes... make sure you get right up next to it..." + gen "Okay then..." ("base", xpos="far_left", ypos="head") + call gen_chibi("stand_alt", flip=True) + with d3 + pause 1.0 + call gen_chibi("grab_low") + pause 0.5 + $ renpy.sound.play("sounds/fire_woosh.ogg") + $ fire_in_fireplace = True + show screen gfx_effect(690, 320, img="smoke", zoom=0.5) + pause 0.1 + $ fireplace_OBJ.foreground = "fireplace_greenfire" + with d5 + pause 1.0 + $ renpy.sound.play("sounds/cough_male.ogg") + gen "*Cough* *Cough*" ("base", xpos="far_left", ypos="head") + hat "Say the name!" + $ renpy.play('sounds/sniff.ogg') + gen "*Ah* Piz-- *Ah-a*" ("base", xpos="far_left", ypos="head") + $ renpy.play('sounds/sniff.ogg') + pause 0.5 + $ renpy.play('sounds/sniff.ogg') + pause 0.5 + call gen_chibi("sneeze") + with d2 + $ renpy.play('sounds/glass_break.ogg') + pause 0.4 + call gen_chibi("stand_alt") + with d2 + "Pizza Hu--*shoo*lut!!!{fast}" with hpunch + pause 1.0 + hat "Did you say Pizza--?" + $ renpy.sound.play("sounds/microphone_feedback.ogg") + "*static*... Welcome to Pizza slut, may I take your order?" + hat "Well I'll be damned..." + gen "{size=+8}Yes! Hello, is this thing on?{/size}" ("base", xpos="far_left", ypos="head") + "Sir, I can hear you... No need to shout." + + $ flag = None + menu: + "What will be your order, sir?" + + "-Meat Eater-": + $ flag = 0 + g16 "{size=+16}I'll have the pepperoni!{/size}" with vpunch + "*Sigh* One pepperoni... anything else?" + $ her_outfit_pizza.group[2].set_color([[180, 50, 10, 255]]) + $ her_outfit_pizza.group[3].set_color([[180, 50, 10, 255]]) + "-Vegan Delight-": + $ flag = 1 + g16 "{size=+16}I'll have the vegetariana!{/size}" with vpunch + "*Sigh* One vegetariana... anything else?" + $ her_outfit_pizza.group[2].set_color([[73, 226, 53, 255]]) + $ her_outfit_pizza.group[3].set_color([[73, 226, 53, 255]]) + + $ hermione.equip(her_outfit_pizza) + gen "{size=+8}Hold on...{/size}" ("base", xpos="far_left", ypos="head") + call gen_chibi("stand", flip=False) + with d3 + gen "Did you want anything?" ("base", xpos="far_left", ypos="head") + hat "...{w=0.4}I'm a hat." + gen "Oh... right." ("base", xpos="far_left", ypos="head") + call gen_chibi("stand_alt", flip=True) + with d3 + g16 "{size=+16}That's all, thanks!{/size}" with hpunch + "And your address?" + gen "{size=+8}Headmaster's office, Hogwash!{/size}" ("base", xpos="far_left", ypos="head") + "Hogwarts sir?" + if flag == 0: + g16 "{size=+8}No, just pepperoni thanks!{/size}" with vpunch + else: + g16 "{size=+8}No meat please, just olives!{/size}" with vpunch + "..." + "Okay then..." + gen "{size=+8}Ten minutes or pizza's free?{/size}" ("base", xpos="far_left", ypos="head") + "Of course, sir... we've never been late using the floo..." + "hold on a second..." + "It seems like your floo-network fireplace has blocked incoming travel." + gen "{size=+8}What a shame... I guess you'll have to make your way here the old fashioned way.{/size}" ("grin", xpos="far_left", ypos="head") + gen "{size=+8}Headmaster's office is on the seventh floor, enjoy the moving staircases!{/size}" ("grin", xpos="far_left", ypos="head") + "But sir..." + $ renpy.sound.play("sounds/microphone_feedback.ogg") + g16 "{size=+16}Clock's ticking...{/size}" with hpunch + "Okay then, your delivery will be as soon as... humanly possible..." + pause 1.0 + call gen_chibi("stand", flip=False) + with d3 + pause 0.5 + gen "Hat, how do I hang up?" ("base", xpos="far_left", ypos="head") + hat "Just extinguish the fire." + call gen_chibi("stand", flip=True) + with d3 + gen "(A phone would have been so much easier...)" ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/spit.ogg") + gen "..." ("base", xpos="far_left", ypos="head") + hat "No just use the..." + gen "Don't worry, I got this..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("stand_alt") + with d3 + pause 0.3 + show screen blkfade + with d5 + gen "..." ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/zipper.ogg") + hat "Wait... what are you..." + $ renpy.sound.play("sounds/fuse.ogg") + gen "Ah...{w=0.4} Must've been at least a hundred years..." ("grin", xpos="far_left", ypos="head") + pause 1.0 + hide screen blkfade + pause 1.0 + $ renpy.sound.play("sounds/fire_woosh.ogg") + $ fireplace_OBJ.foreground = None + with d5 + $ fire_in_fireplace = False + pause 1.0 + + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}Some time later...{/color}{/size}" + + call gen_chibi("sit_behind_desk") + + hide screen blkfade + with d5 + + gen "They sure are taking their goddamn time!" ("angry", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Maybe I could jerk off a little..." ("base", xpos="far_left", ypos="head") + call gen_chibi("jerk_off_behind_desk") + with d5 + pause 1.2 + hat "Eww!" + call gen_chibi("sit_behind_desk") + with d5 + $ renpy.play('sounds/MaleGasp.ogg') + gen "Ah fuck!" ("angry", xpos="far_left", ypos="head") + gen "You're still here..." ("base", xpos="far_left", ypos="head") + gen "How am I supposed to jerk off in peace... It will never be the same with a pervert hat ogling me!" ("angry", xpos="far_left", ypos="head") + hat "{size=-4}..... It never seemed to bother you before......{/size}" + gen "Because I wasn't aware of your existence!" ("angry", xpos="far_left", ypos="head") + pause 1.0 + + call play_sound("knocking") + "*Knock-knock-knock*" + pause 1.0 + g16 "{size=+4}Who's there?{/size}" + "{size=+5}Pizza!{/size}" + gen "{size=+4}Pizza who?{/size}" ("base", xpos="far_left", ypos="head") + "{cps=8}..........{/cps}" + "{size=+5}Pizza slut,{w=0.5} sir........{/size}" + gen "*he-he-heh*" ("grin", xpos="far_left", ypos="head") + gen "Finally..." ("base", xpos="far_left", ypos="head") + g16 "{size=+4}Come in!{/size}" + pause 0.5 + call her_walk(action="enter", xpos="desk", ypos="base") + her "Your order, sir!" ("smile", "happyCl", "base", "mid", trans=d3) + g5 "What...{w=0.3} the hell...{w=0.3} is this!" + her "What do you mean... Did we get the wrong toppings?" ("annoyed", "base", "worried", "mid") + gen "Toppings?!" ("angry", xpos="far_left", ypos="head") + gen "There's only two slices! And they're on your body!" ("angry", xpos="far_left", ypos="head") + her "A-Actually,{w=0.5} sir,{w=0.5} there are three slices..." ("open", "base", "base", "R", cheeks="blush") + gen "Don't lie to me, I can clearly see just tw--" ("angry", xpos="far_left", ypos="head") + + pause 0.5 + $ hermione.strip("bottom") + $ renpy.sound.play("sounds/cloth_sound3.ogg") + + her "" ("grin", "base", "base", "mid", cheeks="blush") + pause 1.0 + g5 "{cps=3}..............{/cps}" + gen "You expect me to eat this?" ("angry", xpos="far_left", ypos="head") + her "Sir, you ordered from pizza slut. A slut and a pizza!" ("annoyed", "base", "worried", "mid") + her "Our slogan is \"Enjoy a nice pizza ass with every slice\"!" ("open", "closed", "base", "mid") + her "" ("base", "wink", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "But there's only three..." ("base", xpos="far_left", ypos="head") + gen ".........." ("base", xpos="far_left", ypos="head") + gen "Give me the pizza..." ("base", xpos="far_left", ypos="head") + her "Of course!" + $ hermione.strip("all") + pause 1.0 + her "Now, what else would you like to--" ("smile", "wink", "base", "mid") + gen "Get out..." ("base", xpos="far_left", ypos="head") + her "Sir, the payme--" ("open", "base", "worried", "mid") + gen "I said, get out!" ("angry", xpos="far_left", ypos="head") + her "Okay..." ("disgust", "base", "worried", "down") + call her_walk(action="leave") + gen "..." ("base", xpos="far_left", ypos="head") + gen "These wizard customs... ruining something as holy as pizza..." ("base", xpos="far_left", ypos="head") + gen "Mmm... Come to genie you beautiful temptress..." ("grin", xpos="far_left", ypos="head") + + show screen blkfade + with d5 + + "{cps=5}.........{/cps}{nw}" + pause 1.0 + $ renpy.play('sounds/gltch.ogg') + "Genie" "Yes.... *Mhmmmmmmm*... Just like that." + hat "By Merlins beard, that's disgusting!" + "Genie" "Shut up hat! Don't judge me!" + + centered "{size=+7}{color=#cbcbcb}{cps=1}...{/cps}End?{/color}{/size}" + + $ renpy.end_replay() + +### Fireplace ### +image fireplace_greenfire: #Fireplace fire. + matrixcolor HueMatrix(100) + + "fireplace_fire" diff --git a/game/scripts/minigames/mirror/events/genie_house_elf.rpy b/game/scripts/minigames/mirror/events/genie_house_elf.rpy new file mode 100644 index 00000000..dc1f4e53 --- /dev/null +++ b/game/scripts/minigames/mirror/events/genie_house_elf.rpy @@ -0,0 +1,91 @@ + +# Mirror story: The genie, the desk and the door +label genie_house_elf: + + # Setup + $ game.daytime = True + $ game.weather = "clear" + stop weather + call room("main_room") + call play_music("stop") + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}The Genie, the Desk and the Door{/color}{/size}" #Play on "The Lion, the Witch and the Wardrobe" + + hide screen blkfade + with d5 + + nar "This story takes place after the introduction of Snape and before meeting Hermione." + gen "(How does that door work?)" ("base", xpos="far_left", ypos="head") + nar "The genie thought." + gen "(How do the people know I've summoned them? I don't have a secretary... that I know of anyway.)" ("base", xpos="far_left", ypos="head") + gen "Have they been keeping a secretary from me? I should ask Sn..." ("base", xpos="far_left", ypos="head") + nar "Snape then opened the door, his pointy nose protruding under his silky hair." + + call sna_walk(action="enter", xpos="mid", ypos="base") + + sna "You called?" ("snape_23", xpos="base", ypos="base") + nar "Snape said with a smirk, doing his best to hide his amusement." + g11 "How did you, how do you..." + gen "This door, how does it work?" ("base", xpos="far_left", ypos="head") + nar "The genie said, now even more frustrated." + nar "The genie wasn't used to this... this unfamiliar magic." + nar "He was used to knowing the ins and outs of the universe. But this world, it was too alien to him..." + nar "At least he knew things about aliens..." + sna "Well, you're the headmaster are you not?" ("snape_06", xpos="base", ypos="base") + nar "Snape said as if that meant anything." + nar "A look of confusion spread across the genie's face which only made Snape smirk even more." + nar "He then composed himself after seeing this unusual expression on the headmaster's face." + sna "I keep forgetting that you don't know these things." ("snape_01", xpos="base", ypos="base") + sna "students learn it on day one." ("snape_01", xpos="base", ypos="base") + sna "The headmaster is in control of the school and its inhabitants." ("snape_24", xpos="base", ypos="base") + nar "Snape said in a matter of fact sort of way." + gen "I know that, we have schools in my world too." ("base", xpos="far_left", ypos="head") + gen "But generally we don't wave wooden sticks around yelling random words." ("base", xpos="far_left", ypos="head") + nar "Snape flinched, as if the notion of magic consisting of waving a wand and yelling random words was utterly absurd." + sna "No. You're literally in control of the school... look." ("snape_08", xpos="base", ypos="base") + nar "Snape said, pulling his wand out and waving it." + + sna "Revelio!" ("snape_01", xpos="base", ypos="base") + hide snape_main + hide screen bld1 + nar "After a flash of light and a small pop, a house elf appeared in the corner of the room." + helf "..." + g5 "What the hell is that?" + nar "The genie said, jumping onto the desk as if things appearing out of thin air was new to him." + + sna "That... is a house elf." ("snape_01", xpos="base", ypos="base") + gen "A house... elf?" ("base", xpos="far_left", ypos="head") + g10 "Is that like Santa's elves?" + nar "The genie said, now climbing down to sit on his chair." + sna "Sort of, they don't get paid so they do have that in common..." ("snape_05", xpos="base", ypos="base") + nar "Snape muttered under his breath..." + sna "The houses elves here can send us messages so we can go where we're needed." ("snape_05", xpos="base", ypos="base") + sna "He just sits here invisible during the day and cleans and eats at night." ("snape_01", xpos="base", ypos="base") + gen "The house elf cleans?" ("base", xpos="far_left", ypos="head") + gen "I thought I had some sort of magic self cleaning desk..." ("base", xpos="far_left", ypos="head") + nar "The genie said sheepishly." + hide snape_main + hide screen bld1 + helf "No sir..." + nar "Said the elf, trying its hardest to bite his tongue, but failing." + helf "I see it all, I clean it all... every... last... bit of it." + sna "..." ("snape_08", xpos="base", ypos="base") + + nar "After a few moments Snape turned around, started walking towards the door and said." + sna "If that is all, I'll be in the dungeons." ("snape_01", xpos="base", ypos="base") + sna "I've been working on a new cleaning solution." ("snape_01", xpos="base", ypos="base") + sna "It might come in handy sooner than I thought." ("snape_02", xpos="base", ypos="base") + + call sna_walk(action="leave") + + nar "The door shut and silence spread across the room, only interrupted after a few minutes by the house elf." + helf "So, should I turn invisible again sir?" + gen "Yes... yes that would be for the best." ("base", xpos="far_left", ypos="head") + + call blkfade + + centered "{size=+7}{color=#cbcbcb}The end{/color}{/size}" + + $ renpy.end_replay() diff --git a/game/scripts/minigames/mirror/events/not_so_great_escape.rpy b/game/scripts/minigames/mirror/events/not_so_great_escape.rpy new file mode 100644 index 00000000..cbb78c3c --- /dev/null +++ b/game/scripts/minigames/mirror/events/not_so_great_escape.rpy @@ -0,0 +1,471 @@ + +# Mirror story: The not so great escape +#Office night + +label not_so_great_escape_rewards: + if not ton_outfit_police.unlocked: + call unlock_clothing(text=">New clothing items for Tonks have been unlocked!", item=ton_outfit_police) + call unlock_clothing(text=">New clothing items for Cho have been unlocked!", item=cho_outfit_police) + call unlock_clothing(text=">New clothing items for Luna have been unlocked!", item=lun_outfit_police) + + $ halloween_rug_ITEM.owned = 1 + $ halloween_chandelier_ITEM.owned = 1 + $ halloween_fireplace2_ITEM.owned = 1 + $ halloween_window_monster.owned = 1 + $ halloween_cupboard_caskets.owned = 1 + $ halloween_chair_caskets.owned = 1 + $ halloween_bat_trophy_ITEM.owned = 1 + $ halloween_lampL_ITEM.owned = 1 + $ halloween_lampR_ITEM.owned = 1 + + call give_reward(text=">You have received a bunch of new room decorations!", gift="interface/icons/halloween_chandelier.webp") + return + +label not_so_great_escape: + + # Setup + $ tonks.equip(ton_outfit_police) + $ cho.equip(cho_outfit_police) + $ luna.equip(lun_outfit_police) + $ game.daytime = False + $ game.weather = "clear" + stop weather + call room("main_room") + call play_music("stop") + show screen blkfade + with d5 + + $ halloween_rug_ITEM.owned = 1 + $ halloween_chandelier_ITEM.owned = 1 + $ halloween_fireplace2_ITEM.owned = 1 + $ halloween_window_monster.owned = 1 + $ halloween_cupboard_caskets.owned = 1 + $ halloween_chair_caskets.owned = 1 + $ halloween_bat_trophy_ITEM.owned = 1 + $ halloween_lampL_ITEM.owned = 1 + $ halloween_lampR_ITEM.owned = 1 + + $ halloween_rug_ITEM.use() + $ halloween_chandelier_ITEM.use() + $ halloween_fireplace2_ITEM.use() + $ halloween_window_monster.use() + $ halloween_cupboard_caskets.use() + $ halloween_chair_caskets.use() + $ halloween_bat_trophy_ITEM.use() + $ halloween_lampL_ITEM.use() + $ halloween_lampR_ITEM.use() + + $ candleL_OBJ.get_action()() + $ candleR_OBJ.get_action()() + + centered "{size=+7}{color=#cbcbcb}A not so great escape{/color}{/size}" + + hide screen blkfade + with d5 + + call music_block + + call bld + $ renpy.sound.play("sounds/snore1.ogg") + gen "*Snore*{w=2.0}{nw}" ("base", xpos="far_left", ypos="head") + pause 1.0 + $ renpy.sound.play("sounds/snore3.ogg") + gen "*Sn{cps=8}oooooooreeee*{/cps}{w=2.0}{nw}" ("base", xpos="far_left", ypos="head") + pause 1.0 + $ renpy.sound.play("sounds/snore2.ogg") + gen "......{w=0.5}*Snore*{w=1.0}{nw}" ("base", xpos="far_left", ypos="head") + stop music fadeout 6.0 + + call play_sound("knocking") + "*knock-knock-knock*" + + $ renpy.sound.play("sounds/snore1.ogg") + gen "*Snore*{w=2.0}{nw}" ("base", xpos="far_left", ypos="head") + pause 1.0 + + "Commanding Voice" "This is Ministry of Magic Enforcement Division, please open the door." + + $ renpy.sound.play("sounds/knocking_loud.ogg") + "*knock-knock-knock*" + + $ renpy.sound.play("sounds/snore1.ogg") + pause .4 + stop sound fadeout 6.0 + gen "Zzzz... W--{w=0.3} what?" ("base", xpos="far_left", ypos="head") + + "Commanding Voice" "{size=+4}Police! Open the door this instant!{/size}" + + play music "music/Hitman.ogg" fadein 1 fadeout 1 + gen "(The fuzz!)" ("angry", xpos="far_left", ypos="head") + gen "(What do I do?!)" ("angry", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/knocking_loud.ogg") + "Commanding Voice" "{size=+4}Open the door or we'll have to bring it down!{/size}" + + call gen_chibi("stand", 210, "base") + call gen_walk(230, 470, speed=2.0) + gen "(Oh Fuck-fuck-fuck!)" ("angry", xpos="far_left", ypos="head") + + call gen_walk(380, 470, speed=2.0) + + gen "(Shit-shit-SHIT!)" ("angry", xpos="far_left", ypos="head") + + call gen_walk(420, "base", speed=2.0) + pause 0.5 + call gen_chibi(flip=False) + with d3 + + gen "(Where do I--{w=0.3} The window!)" ("angry", xpos="far_left", ypos="head") + gen "(Wait, I'd die if I jumped from up here.)" ("angry", xpos="far_left", ypos="head") + + "Commanding Voice" "{size=+4}Take the door down, girls!{/size}" + + $ renpy.play("sounds/door_down.ogg") + with hpunch + + pause 0.3 + + call gen_chibi(flip=True) + with d3 + + gen "(Crap, they're knocking the door down!)" ("angry", xpos="far_left", ypos="head") + + + call chibi_emote("exclaim", "genie") + pause 0.5 + call chibi_emote("hide", "genie") + + gen "(The fireplace! No... I'll ruin my robes.)" ("angry", xpos="far_left", ypos="head") + + $ renpy.play("sounds/door_down.ogg") + with hpunch + + "Commanding Voice" "Come on girls, you can do better than this!" + "Another Voice" "This door must have some sort of protective enchantment on it!" + "Commanding Voice" "Don't be silly, let me show you how it's done!" + $ renpy.sound.play("sounds/gulp.ogg") + + gen "..." ("base", xpos="far_left", ypos="head") + gen "(I suppose there isn't much choice...)" ("base", xpos="far_left", ypos="head") + + call gen_walk(565, "base") + call gen_chibi("stand_alt") + with d3 + + pause 0.5 + + call gen_chibi("hide") + show screen blkfade + with d3 + + $ renpy.sound.play("sounds/cloth_sound3.ogg") + nar ">You crawl up the chimney's shaft..." + + gen "(Shit, I can't see a thing...)" ("base", xpos="far_left", ypos="head") + gen "(Hold on, I'm immortal... Why didn't I just jump out the--)" ("angry", xpos="far_left", ypos="head") + + "Commanding Voice" "One last push, we're almost in!" + + $ renpy.play("sounds/door_down.ogg") + with hpunch + + call play_music("stop") + + pause 2 + + hide screen blkfade + with d3 + + #Tonks, Luna and Cho enters in police costumes. Tonks stands next to fireplace looking left. The other two next to her. + + $ luna_chibi.zorder = 1 + $ tonks_chibi.zorder = 2 + $ cho_chibi.zorder = 3 + call lun_chibi("stand", 790, 420) + call ton_chibi("stand", 810, 440) + call cho_chibi("stand", 830, 460) + with d3 + + play bg_sounds "sounds/wind_long_loop.ogg" fadein 2 fadeout 2 + + $ cho_name = "Officer Cho?" + $ tonks_name = "Officer Tonks?" + $ luna_name = "Officer Luna?" + + call cho_walk("right", 460, speed=1.5) + + cho "Put your hands where I can--" ("scream", "base", "base", "mid", xpos="mid", ypos="base", trans=d5) + + call chibi_emote("thought", "cho") + cho "...?" ("mad", "base", "base", "mid") + call chibi_emote("hide", "cho") + + hide cho_main + with d3 + + call cho_chibi(flip=True) + with d3 + + cho "Miss! He's gone!" ("angry", "base", "base", "mid", cheeks="blush", flip=True, trans=d3) + ton "Yes, I can see that rookie..." ("open", "narrow", "base", "L", xpos=500, ypos="base", trans=d5) + + call ton_walk("mid", "base") + call cho_chibi(flip=False) + with d3 + + lun "Then where is he Miss? Is he invisible?" ("angry", "base", "raised", "mid", xpos="base", ypos="base", trans=d5) + + $ renpy.play("sounds/crunch.ogg") + "*Rustle*" #Sound from fireplace + gen "(Oh fuck, my foot almost slipped!)" ("angry", xpos="far_left", ypos="head") + + call chibi_emote("exclaim", "cho") + pause 0.3 + call chibi_emote("hide", "cho") + # Skyrim reference + + call cho_chibi(flip=True) + with d3 + cho "What was that?" ("soft", "base", "base", "mid", xpos=500, ypos="base", trans=d5) + lun "Huh?" ("mad", "narrow", "base", "L") + cho "Never mind, must have been the wind..." ("annoyed", "base", "base", "mid") + # + + call ton_chibi(flip=True) + with d3 + ton "*Hmm*..." ("soft", "narrow", "raised", "L", xpos="mid", ypos="base", flip=True, trans=d5) + + call lun_walk(620, 420) + call cho_chibi(flip=False) + with d3 + call lun_walk("desk", 420) + + cho "What are you doing, waving your arms like that?" ("disgust", "base", "base", "mid", xpos="base", ypos="base", flip=False, trans=d5) + + call lun_chibi(flip=True) + with d3 + + lun "If I can't see him then I'll have to search for him some other way!" ("mad", "base", "base", "L", xpos="mid", ypos="base", flip=True, trans=d5) + cho "*Sigh*..." ("disgust", "base", "base", "mid") + ton "Well he's here somewhere, that's for sure." ("base", "narrow", "base", "L", xpos=500, ypos="base", trans=d5) + cho "Really?" ("angry", "base", "base", "mid") + gen "(How does she know?)" ("angry", xpos="far_left", ypos="head") + cho "How do you know, miss?" ("angry", "base", "base", "mid") + gen "(That's my line!)" ("angry", xpos="far_left", ypos="head") + + hide tonks_main + with d3 + + call ton_chibi(flip=False) + with d3 + ton "Why don't you help your partner to search the place?" ("open", "base", "base", "R", xpos=450, ypos="base", flip=False, trans=d5) + + ton "I'm sure the chief would be really happy if we brought that scumbag in." ("soft", "base", "base", "R") + gen "(Now that's just rude...)" ("base", xpos="far_left", ypos="head") + cho "Oh! Of course, miss! We'll find him!" ("mad", "base", "base", "mid") + + call cho_walk("desk_close", 460) + + stop bg_sounds + show screen blkfade + with d3 + + centered "{size=+7}{color=#cbcbcb}Some time later...{/color}{/size}" + + $ luna_chibi.zorder = 3 + $ cho_chibi.zorder = 1 + call lun_chibi("stand", 240, 460, flip=True) + call cho_chibi("stand", 760, 420) + + hide screen blkfade + with d3 + + play bg_sounds "sounds/wind_long_loop.ogg" fadein 2 fadeout 2 + + cho "Where the hell is he?" ("angry", "base", "base", "mid", trans=d5) + lun "Miss... We've been searching for hours... I'm starting to get tired." ("disgust", "narrow", "base", "L", trans=d5) + gen "({b}You're{/b} starting to get tired? Huh?)" ("angry", xpos="far_left", ypos="head") + cho "Are you sure he's still in here, miss?" ("upset", "base", "base", "mid") + ton "Giving up already?" ("open", "narrow", "raised", "mid", trans=d5) + lun "" ("upset", "base", "base", "down", cheeks="blush") + cho "" ("annoyed", "base", "base", "mid", cheeks="blush") + call ctc + ton "Very well then..." ("upset", "closed", "base", "mid") + gen "(Finally...)" ("base", xpos="far_left", ypos="head") + ton "{w=0.6}{nw}" ("grin", "base", "base", "mid") + + $ renpy.play("sounds/punch01.ogg") + pause .5 + + $ renpy.play("sounds/door_down.ogg") + with hpunch + + show screen blkfade + with d3 + + $ renpy.play("sounds/falling_stairs.ogg") + + call ton_chibi(flip=True) + call hide_characters + call lun_chibi("stand", 440, 460, flip=True) + call cho_chibi("stand", 690, 420) + call gen_chibi("stand", 585, "base", flip=False) + pause 2 + + hide screen blkfade + with d3 + + gen "Bloody hell!" ("angry", xpos="far_left", ypos="head") + + lun "Wow! Was he in there this entire time?" ("angry", "wide", "base", "mid", trans=d5) + cho "How did you know, miss?" ("mad", "base", "base", "mid", cheeks="blush", trans=d5) + ton "Years of experience, girls... You'll get there some day..." ("base", "wink", "base", "mid", xpos=500, ypos="base", flip=True, trans=d5) + ton "Now... Time to put this filth where it belongs..." ("mad", "narrow", "annoyed", "mid") + gen "No, wait!" ("angry", xpos="far_left", ypos="head") + + $ renpy.music.stop(fadeout=4) + stop bg_sounds fadeout 3 + $ renpy.play("sounds/level_failed.ogg") + show screen cartoon_zoom + gen "...{w=6.0}{nw}" ("angry", xpos="far_left", ypos="head") + show screen blkfade + with d3 + call ton_chibi("hide") + call cho_chibi("hide") + call lun_chibi("hide") + + # pre-sets expressions for later # + lun "" ("soft", "narrow", "base", "mid", cheeks="blush", xpos=400, ypos="base", flip=False) + cho "" ("smile", "base", "base", "mid", cheeks="blush") + ton "" ("grin", "base", "base", "mid", xpos=500, ypos="base", flip=False) + + # Hides decorations + $ halloween_rug_ITEM.use() + $ halloween_chandelier_ITEM.use() + $ halloween_fireplace2_ITEM.use() + $ halloween_window_monster.use() + $ halloween_cupboard_caskets.use() + $ halloween_chair_caskets.use() + $ halloween_bat_trophy_ITEM.use() + $ halloween_lampL_ITEM.use() + $ halloween_lampR_ITEM.use() + + $ candleL_OBJ.get_action()() + $ candleR_OBJ.get_action()() + + call hide_characters + call gen_chibi("sit_behind_desk") + call gameover(fake=True) + + stop music fadeout 1 + $ game.daytime = True + + call play_sound("knocking") + "*knock-knock-knock*" + + $ renpy.sound.play("sounds/snore1.ogg") + gen "zzz... No... I swear, I had no sexual relations..." ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/snore2.ogg") + gen "zzz... With that woman..." ("base", xpos="far_left", ypos="head") + + "Another Female Voice" "Maybe he isn't in..." + "Commanding Voice" "Don't be silly, when does he ever leave the office?" + "Another Female Voice" "That's true..." + + call play_sound("knocking") + "*knock-knock-knock*" + + $ renpy.sound.play("sounds/snore2.ogg") + gen "zzz...." ("base", xpos="far_left", ypos="head") + + "Another Female Voice" "*Hmm*... Perhaps he's sleeping." + "Yet Another Female Voice" "Aww... But I really wanted him to see our Halloween costumes..." + "Commanding Voice" "Don't worry girls, I know how to deal with this..." + + $ renpy.sound.play("sounds/knocking_loud.ogg") + "*knock-knock-knock*" + + $ renpy.sound.play("sounds/snore1.ogg") + pause .4 + stop sound fadeout 6.0 + gen "zzz-- W-- What the..." ("base", xpos="far_left", ypos="head") + + femv "Hold on, the door's open." + + play music "music/Hitman.ogg" fadein 1 fadeout 1 + gen "(No, this can't be happening AGAIN!)" ("angry", xpos="far_left", ypos="head") + + call play_sound("door") + $ luna_chibi.zorder = 1 + $ tonks_chibi.zorder = 2 + $ cho_chibi.zorder = 3 + $ luna.zorder = 14 + $ cho.zorder = 15 + $ tonks.zorder = 16 + call lun_chibi("stand", 790, 420) + call ton_chibi("stand", 810, 440) + call cho_chibi("stand", 830, 460) + with d3 + + pause 0.3 + + $ renpy.sound.play("sounds/MaleGasp.ogg") + call gen_chibi("stand", 210, "base") + with d3 + + gen "Oh shit!" ("angry", xpos="far_left", ypos="head") + + lun "" (trans=d3) + cho "" (trans=d3) + ton "" (trans=d3) + with d5 + + ton "Looks like someone's been a naughty boy!" ("grin", "base", "base", "mid") + + + $ renpy.play('sounds/magic4.ogg') + call gen_chibi("stand", 370, 295) + call teleport(position="genie", effect=False) + + stop music fadeout 3 + gen "You'll never catch me alive!" ("angry", xpos="far_left", ypos="head") + cho "" ("angry", "base", "base", "up") + lun "" ("clench", "base", "base", "up") + ton "What are you--" ("clench", "base", "base", "up") + + + $ renpy.sound.play("sounds/boing05.ogg") + call gen_chibi("hide") + with d3 + + pause 1 + $ renpy.sound.play("sounds/falling.ogg") + + pause 2.0 + + $ renpy.sound.play("sounds/gasp.ogg") + lun "" ("disgust", "base", "base", "R") + ton "" ("normal", "closed", "base", "R") + cho "Did he just jump out the window?!" ("mad", "base", "base", "mid") + ton "Appears so..." ("open", "closed", "base", "mid") + cho "Is he okay?" ("angry", "base", "base", "mid", cheeks="blush") + lun "Did he not like our Halloween costumes?" ("annoyed", "base", "worried", "down") + cho "" ("disgust", "base", "base", "mid") + ton "" ("disgust", "narrow", "base", "L") + call ctc + lun "" ("annoyed", "base", "worried", "R") + call ctc + lun "Oh... I mean, Is he okay?!" ("angry", "wide", "base", "R") + + call ton_walk(415, 400, speed=1.2) + + call nar(">Tonks leans over the window and sees Genie lying face down in a rose bush.") + + g8 "Bloody hell..." + ton "*Sigh*... He'll be fine..." ("soft", "closed", "base", "mid", xpos="mid", ypos="base", trans=d5) + + call blkfade + centered "{size=+10}{color=#cbcbcb}Happy Halloween!{/color}{/size}" + + $ renpy.end_replay() diff --git a/game/scripts/minigames/mirror/events/panty_raid.rpy b/game/scripts/minigames/mirror/events/panty_raid.rpy new file mode 100644 index 00000000..c2e64d2c --- /dev/null +++ b/game/scripts/minigames/mirror/events/panty_raid.rpy @@ -0,0 +1,750 @@ + +# Mirror story: Panty raid +label panty_raid: + + with d5 + centered "{size=+7}{color=#cbcbcb}Panty Raid{/color}{/size}\n\n{color=#cbcbcb}Based on a story written by {size=+4}WaxerRed{/size}\n{size=-4}Proofreading & Editing by Lineup, Johnny and LoafyLemon\nImplementation by Lineup and LoafyLemon{/size}{/color}" + + label .choices: + + # Setup + $ hermione.equip(her_outfit_default) + $ game.daytime = True + $ game.weather = "clear" + stop weather + call room("main_room") + call play_music("stop") + show screen blkfade + with d5 + + menu: + "For the best experience it is recommended to play the story in chronological order." + "{size=-4}Part one{/size}\n-Defiance-": + $ pathvalue = 0 + "{size=-4}Part two{/size}\n-Acceptance-": + $ pathvalue = 1 + "{size=-4}Part three{/size}\n-Realization-": + $ pathvalue = 2 + "{size=-4}Part four{/size}\n-Obedience-": + $ pathvalue = 3 + "-Return-": + $ renpy.end_replay() + + call music_block + + if pathvalue == 0: + # Part 1 + call her_chibi("stand","mid","base") + call hide_blkfade + + her "Hello [genie_name]." ("open", "base", "base", "mid", flip=False) + her "" ("base") + gen "Good day [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "How would you feel about going out and earning thirty-five points for your house today?" ("base", xpos="far_left", ypos="head") + her "I would love to...{w=0.3} as long as it doesn't involve me humiliating myself in front of my peers." ("open", "base", "base", "R", cheeks="blush") + her "" ("normal", cheeks="blush") + gen "Well then, perhaps today is your lucky day." ("grin", xpos="far_left", ypos="head") + her "Really?" ("open", "base", "base", "mid", cheeks="blush") + her "" ("soft", cheeks="blush") + gen "Yes, in fact you may wish to remain as unseen as possible during your activities today." ("base", xpos="far_left", ypos="head") + her "(That doesn't sound suspicious at all...)" ("disgust", "narrow", "worried", "down", cheeks="blush") + her "" ("normal", "base", "base", "mid", cheeks="blush") + gen "I would very much like for you to recover one of the most revered and sacred objects in this academy...{w=0.5} No, in the world!" ("grin", xpos="far_left", ypos="head") + her "Oh! You want me to recover a magical artifact?" ("open", "base", "base", "mid") + her "" ("normal", "base", "base", "mid") + gen "Something like that..." ("base", xpos="far_left", ypos="head") + her "" ("normal", "base", "base", "mid") + her "I am glad you're finally asking me to properly utilise my abilities as one of Hogwarts' top students." ("open", "closed", "base", "mid") + her "{size=-4}I only wish you would have asked this of me sooner...{/size}" ("open", "narrow", "base", "R_soft") + her "You can count on me, [genie_name]! I am happy to perform a task such as this one." ("smile", "base", "base", "mid") + her "" ("base", "base", "base", "mid") + gen "Great! Now all the information I have for this \"artifact\" is an ancient riddle..." ("base", xpos="far_left", ypos="head") + gen "Are you ready?" ("base", xpos="far_left", ypos="head") + her "Of course, [genie_name]." ("open", "base", "base", "mid_soft") + her "" ("base") + gen "Good, here we go..." ("base", xpos="far_left", ypos="head") + gen "\"I am sought by many,{w=0.2} yet the same number already possess me\"." ("base", xpos="far_left", ypos="head") + her "" ("soft", "happy", "base", "mid") + gen "\"The more I am used, the more valuable I become\"." ("base", xpos="far_left", ypos="head") + her "The sword of Gryffindor..." ("open", "closed", "base", "mid") + her "no, wait..." ("angry", "wide", "worried", "shocked") + her "... the elder wand?" ("base", "base", "base", "mid") + her "" ("disgust") + gen "I am not done yet [hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Sorry..." ("soft", "narrow", "worried", "down") + her "" ("normal", "base", "base", "mid") + gen "\"The only thing man covet more than my form is the secret I hid\"." ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("upset", "base", "base", "R") + her "" ("normal", "base", "base", "mid") + gen "... \"Sometimes I am plain and white, but I look my best when skimpy and black\"." ("base", xpos="far_left", ypos="head") + her "" ("normal", "happy", "base", "mid") + gen "No wait! \"skimpy and pink\"." ("angry", xpos="far_left", ypos="head") + her "This is an ancient riddle...?" ("open", "squint", "angry", "mid") + her "" ("upset", "base", "base", "R") + gen "Hush girl..." ("base", xpos="far_left", ypos="head") + gen "\"In order to find me you must get close to earth, then look up to the heavens\"." ("base", xpos="far_left", ypos="head") + her "..." ("upset", "base", "base", "mid") + gen "..." ("base", xpos="far_left", ypos="head") + gen "\"No schoolgirl fetish would be complete without me\"." ("base", xpos="far_left", ypos="head") + her "[genie_name]...?!" ("open", "squint", "angry", "mid") + gen "\"The answer is on page 74, Spell {i}seitnaP{/i} backwards\"." ("grin", xpos="far_left", ypos="head") + her "PROFESSOR!" ("scream", "squint", "angry", "mid") + her "" ("angry", "squint", "angry", "mid") + gen "Yes?{w=0.5} Did you figure it out?" ("base", xpos="far_left", ypos="head") + her "If you wanted to see my...{w=0.3} *ahem*{w=0.3} {i}undergarments{/i}, you could have just asked..." ("disgust", "squint", "base", "mid", cheeks="blush") + her "{size=-4}You didn't have to make the whole story up to grab my attention...{/size}" ("upset", "narrow", "base", "R_soft", cheeks="blush") + gen "By Merlin's beard! I think you've got it girl...{w=0.5} {size=-4}for the most part at least.{/size}" ("grin", xpos="far_left", ypos="head") + her "[genie_name], my classes start soon, can we just get it over with so I can get my points and leave?" ("open", "closed", "base", "mid", cheeks="blush") + her "" ("upset", "narrow", "base", "mid_soft") + gen "Such eagerness...{w=0.3} but where's the challenge in handing me your own?" ("grin", xpos="far_left", ypos="head") + her "Sorry, you wanted me to hand you a pair?" ("open", "wide", "base", "mid", cheeks="blush") + gen "Of course, but not yours silly girl..." ("base", xpos="far_left", ypos="head") + her "" ("angry", cheeks="blush") + gen "This is meant to be a treasure hunt! Go find someone's panties out in the world and then bring them to me." ("grin", xpos="far_left", ypos="head") + her "But, [genie_name]?!" ("shock", "squint", "angry", "mid", cheeks="blush") + her "" ("angry", cheeks="blush") + gen "You're a bright young gal, I'm sure you'll think of something... Make haste!" ("base", xpos="far_left", ypos="head") + her "......." ("disgust", cheeks="blush") + pause 1.0 + her "" ("soft", "narrow", "worried", "down") + gen "What are you standing there for?" ("base", xpos="far_left", ypos="head") + her "Isn't there any other way I coul--" ("soft", "narrow", "base", "mid_soft", cheeks="blush") + gen "No." ("base", xpos="far_left", ypos="head") + her "{size=-4}... fine.{/size}" ("soft", "narrow", "worried", "down") + + call her_walk(action="leave") + + show screen blkfade + with d3 + + stop music fadeout 1.0 + centered "{size=+7}{color=#cbcbcb}Three hours later...{/color}{/size}" + + $ game.daytime = False + call update_interface_color + call music_block + + pause 1.0 + call hide_blkfade + + call play_sound("knocking") + "*Knock-knock-knock*" + pause 1.0 + gen "Enter!" ("base", xpos="far_left", ypos="head") + + call her_walk(action="enter", xpos="mid", ypos="base") + + her "Good evening, [genie_name]." ("open", "base", "base", "R") + her "" ("normal", "base", "base", "R") + gen "Hello again, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "" (cheeks="blush") + gen "Did you finish your assignment?" ("base", xpos="far_left", ypos="head") + her "about that..." ("soft", "narrow", "base", "R_soft", cheeks="blush") + + call her_walk("desk", "base") + + "She elegantly drops a pair of frilly pink panties on your desk." + her "And for extra credit..." ("soft", "narrow", "worried", "down", cheeks="blush") + hide screen bld1 + hide hermione_main + with d3 + "She adds a matching pink lingerie bra to the spoils on your desk." + show screen bld1 with d3 + gen "You absolute minx!" ("grin", xpos="far_left", ypos="head") + her "" ("normal", "base", "base", "R", cheeks="blush") + gen "You've outdone yourself [hermione_name], how did you manage this feat?" ("grin", xpos="far_left", ypos="head") + her "I would prefer not to talk about it..." ("disgust", "narrow", "worried", "down", cheeks="blush") + gen "Well you can certainly colour me impressed." ("grin", xpos="far_left", ypos="head") + her "Does that mean I've earned some extra house points?" ("open", "base", "base", "R") + gen "I think the situation calls for it..." ("base", xpos="far_left", ypos="head") + her "" ("smile", "base", "base", "R") + gen "Ninety points to Gryffi--{w=0.5}{nw}" ("grin", xpos="far_left", ypos="head") + gen "Ninety points to Gryffi--{fast} wait a second..." ("angry", xpos="far_left", ypos="head") + her "" ("smile", "base", "base", "mid") + "> You take another look at the panties and notice something unusual." + her "" ("base", "base", "base", "mid") + "> Both panties and bra have a small piece of paper tied to them." + her "" ("normal", "base", "base", "mid") + "> You reach out and grab the closest pair of panties, then study the paper." + her "" ("normal", "base", "base", "R") + "8.99$\n{size=-3}Thank you for shopping with us and hope to see you back soon!{/size}\nMadam Mafkin" + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + her "Yes, [genie_name]?" ("crooked_smile", "closed", "base", "mid") + gen "Why is there a price tag on these?" ("base", xpos="far_left", ypos="head") + her "...!" ("angry", "wide", "base", "stare") + her "Uh.... Well, the person I bough--{w=0.3} *ahem*{w=0.2} {size=+2}BORROWED{/size} these from must have forgotten to take the price tag off." ("open", "happy", "base", "mid") + her "" ("normal") + gen "I see...{w=0.3} Well whoever you took them from must be a bit slow to forget something like that, don't you agree?" ("base", xpos="far_left", ypos="head") + her "Uhh..." ("normal", "narrow", "worried", "down") + gen "I would even dare to call them...{w=0.2} a moron." ("base", xpos="far_left", ypos="head") + her "..." ("upset") + her "" ("upset", "base", "worried", "R") + gen "A bloated...{w=0.2} Scatterbrained,{w=0.2} moron!" ("grin", xpos="far_left", ypos="head") + her "{size=+4}[genie_name]!{/size}" ("open", "squint", "angry", "mid") + her "" ("normal") + gen "Yes, [hermione_name]?" ("base", xpos="far_left", ypos="head") + her "Fine..." ("annoyed", "narrow", "annoyed", "mid") + her "it was me!" ("angry", "narrow", "worried", "down") + her "I couldn't do it, so I bought them at the shop..." ("disgust") + gen "So...{w=0.5} You're the bloated, scatterbrained moron then?" ("base", xpos="far_left", ypos="head") + her "Sir, this has been embarrassing enough...{w=0.5} Can I just go back to my dormitory please?" ("disgust", "narrow", "base", "mid_soft") + gen "[hermione_name]..." ("base", xpos="far_left", ypos="head") + + menu: + "-Cheaters never prosper-": + gen "I must say I am disappointed with your actions, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "I am so sorry [genie_name]..." ("disgust", "narrow", "worried", "down") + her "" ("disgust", "narrow", "base", "mid_soft") + gen "Not only did you disobey me, but you also tried to trick me - your headmaster - into thinking these belonged to some colleague of yours." ("base", xpos="far_left", ypos="head") + her "it won't happen again..." ("disgust", "narrow", "worried", "down") + her "" ("disgust", "narrow", "base", "mid_soft") + gen "For your own sake it better doesn't, or I will have to take action." ("angry", xpos="far_left", ypos="head") + her "" ("disgust", "narrow", "worried", "down") + gen "Dismissed." ("base", xpos="far_left", ypos="head") + her "Yes sir." + + "-Yes, they do-": + gen "I must say...{w=0.3} I am impressed with your courage, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "I am sorry [genie_name]. I wo--" ("disgust", "narrow", "worried", "down") + her "Wait what?" ("shock", "base", "worried", "mid") + her "" ("soft", "base", "worried", "mid") + gen "I never imagined you'd possess such \"out of the box\" problem solving!" ("base", xpos="far_left", ypos="head") + her "Really?" ("open", "base", "worried", "mid") + her "" ("soft", "base", "worried", "mid") + gen "You fumbled the landing, but otherwise cheated like a pro!" ("grin", xpos="far_left", ypos="head") + her "Thank you..." ("soft", "base", "worried", "mid") + her "(I guess...?)" ("soft", "narrow", "base", "R_soft") + her "" ("soft", "base", "worried", "R") + gen "Now, I won't overburden you with compliments..." ("base", xpos="far_left", ypos="head") + her "" ("soft", "base", "worried", "mid") + gen "Take your house points and go...{w=0.5} Thirty-five points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "{size=+4}Really?!{/size}{w=0.2} Thank you so much [genie_name]!" ("smile", "base", "base", "mid", cheeks="blush") + + call her_walk("mid", "base") + + gen "I hope next time you do better though." ("base", xpos="far_left", ypos="head") + her "(Next time...?!)" ("shock", "wide", "worried", "shocked", cheeks="blush", flip=True) + her "(Think about the points Hermione, the points......)" ("angry", "happyCl", "worried", "mid", cheeks="blush", flip=True) + + call her_walk(action="leave") + + show screen blkfade with d3 + stop music fadeout 1.0 + centered "{size=+7}{color=#cbcbcb}End of part one{/color}{/size}" + jump panty_raid.choices + + if pathvalue == 1: + # Part 2 + call hide_blkfade + pause 1.5 + call play_sound("knocking") + "*Knock-knock-knock*" + pause 1.0 + gen "Come in!" ("base", xpos="far_left", ypos="head") + + call her_walk(action="enter", xpos="mid", ypos="base") + + her "Hello [genie_name], you called?" ("open", "base", "base", "mid", flip=False) + her "" ("base") + gen "Hello to you too, [hermione_name]." ("base", xpos="far_left", ypos="head") + gen "Say...{w=0.3} would you like to earn some points today girl?" ("grin", xpos="far_left", ypos="head") + her "Possibly..." ("open") + her "But that depends on the task required of me." ("open", "closed", "base", "mid") + her "" ("soft", "base", "base", "R") + gen "I would like you to try yourself at that \"treasure hunt\" again." ("base", xpos="far_left", ypos="head") + her "*sigh* I knew that sooner or later you would ask me about it, [genie_name]..." ("open", "closed", "base", "mid") + her "Do I have a choice?" ("upset", "base", "worried", "mid") + gen "Certainly, if you don't mind those \"Slytherin Harlots\" taking the house cup!" ("grin", xpos="far_left", ypos="head") + her "I Do mind..." ("upset", "narrow", "base", "down") + her "" ("upset", "base", "worried", "mid") + gen "Then you'd better head on out and steal some girl's panties!" ("grin", xpos="far_left", ypos="head") + her "{size=-4}... one hundred points{/size}" ("open", "base", "worried", "R") + her "" ("upset") + gen "Thirty-five." ("base", xpos="far_left", ypos="head") + her "... seventy-five points" ("open", "happyCl", "worried", "mid") + her "" ("upset") + gen "Forty..." ("base", xpos="far_left", ypos="head") + her "... fifty points" ("upset") + gen "Forty-five..." ("base", xpos="far_left", ypos="head") + her "Fine." ("disgust", "narrow", "base", "R_soft") + her "" ("upset", "base", "base", "R") + gen "We got a deal then, splendid!" ("grin", xpos="far_left", ypos="head") + her "" ("normal", "base", "base", "mid") + gen "You're free to go now." ("base", xpos="far_left", ypos="head") + her "Thank you [genie_name]." ("open", "base", "base", "mid") + + call her_walk("door", "base") + + call bld + gen "Oh and one more thing..." ("base", xpos="far_left", ypos="head") + her "Yes?" ("soft", "base", "base", "R", flip=True) + gen "Make sure they're not new this time." ("base", xpos="far_left", ypos="head") + her "... okay." ("disgust", "narrow", "worried", "down", flip=True) + hide hermione_main + hide screen bld1 + with d3 + pause 0.5 + + call play_sound("door") + call her_chibi("hide") + with d3 + pause 1.0 + + show screen blkfade + with d3 + stop music fadeout 1.0 + centered "{size=+7}{color=#cbcbcb}Four hours later...{/color}{/size}" + $ game.daytime = False + call update_interface_color + call music_block + + pause 1.0 + + call hide_blkfade + pause.5 + + call her_walk(action="enter", xpos="desk", ypos="base") + + call play_sound("bump") + "She drops a slightly used pair of plain panties on your desk." + her "" ("soft", "base", "base", "R", cheeks="blush", flip=False) + gen "I don't see any tags, that's good. Did you learn from your previous error?" ("base", xpos="far_left", ypos="head") + her "Yes sir..." ("disgust", "narrow", "worried", "down", cheeks="blush") + her "" ("soft", "narrow", "worried", "down", cheeks="blush") + + menu: + "-Let her Go-": + gen "Well, quality leaves a bit to be desired, but it's a good step forward." ("base", xpos="far_left", ypos="head") + her "" ("soft", "base", "base", "mid", cheeks="blush") + gen "Forty-five points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "Thank you, [genie_name]." ("open", "base", "base", "mid", cheeks="blush") + her "Am I free to go now?" ("soft", "base", "base", "mid", cheeks="blush") + gen "Yes, you are free to go." ("base", xpos="far_left", ypos="head") + + call her_walk("mid", "base") + + $ renpy.play('sounds/sniff.ogg') + gen "{size=-4}Such nice fragrance, I wonder to whom these belong?{/size}" ("grin", xpos="far_left", ypos="head") + her ".........(I'm sorry Ginny)........." ("disgust", "narrow", "worried", "down", cheeks="blush", flip=True) + + call her_walk(action="leave") + + "-Ask for details-": + gen "So, who was the lucky lady?" ("base", xpos="far_left", ypos="head") + her "No one." ("open", "base", "worried", "R", cheeks="blush") + her "" ("soft", cheeks="blush") + gen "Come on now." ("base", xpos="far_left", ypos="head") + her "Umm...{w=0.3} Does that really matter?" ("open", "base", "base", "mid", cheeks="blush") + her "" ("soft", cheeks="blush") + gen "It does to me." ("base", xpos="far_left", ypos="head") + her "*sigh*" ("soft", "happyCl", "worried", "mid", cheeks="blush") + her "It was Ginny, sir..." ("open", "base", "worried", "mid", cheeks="blush") + her "" ("soft", cheeks="blush") + gen "Interesting...{w=0.5} I don't know who that is." ("base", xpos="far_left", ypos="head") + her "She's a sister of one of my friends..." ("open", "base", "worried", "R", cheeks="blush") + her "" ("normal", cheeks="blush") + gen "Is she hot? Or cute?" ("base", xpos="far_left", ypos="head") + her "..." ("soft", "narrow", "worried", "down") + gen "Well?" ("base", xpos="far_left", ypos="head") + her "I guess she is kind of both..." ("soft", cheeks="blush") + gen "(Splendid! Maybe she can introduce her to me sometimes)" ("grin", xpos="far_left", ypos="head") + her "" ("soft", "base", "base", "mid", cheeks="blush") + gen "So, how did you do it?" ("base", xpos="far_left", ypos="head") + her "I offered to do her laundry along with mine this week..." ("open", "narrow", "worried", "down", cheeks="blush") + her "" ("soft", cheeks="blush") + gen "And?" ("base", xpos="far_left", ypos="head") + her "And whilst I was working, I grabbed one of her...{w=0.4} panties...{w=0.3} and shoved them in my pocket." ("soft", "narrow", "base", "R_soft", cheeks="blush") + gen "And?" ("base", xpos="far_left", ypos="head") + her "If she asks what happened to them... I will just say that they had gotten lost in the wash." ("soft", "narrow", "base", "mid_soft", cheeks="blush") + her "" ("normal", cheeks="blush") + gen "And?" ("base", xpos="far_left", ypos="head") + her " And... that's really it." ("open", "base", "base", "mid") + her "" ("normal") + gen "How dull.{w=0.5} forty-five stupid house points to Gryffindor." ("angry", xpos="far_left", ypos="head") + her "Do those count the same as regular points?" ("annoyed") + gen "I suppose..." ("base", xpos="far_left", ypos="head") + her "Goodnight then sir." ("open", "base", "base", "mid") + + call her_walk("door", "base") + + gen "{size=-4}Ginny...{w=1.0} it's time for you to meet {i}George{/i}.{/size}{w=0.2}{nw}" ("base", xpos="far_left", ypos="head") + call gen_chibi("jerk_off_behind_desk") + $ renpy.play('sounds/zipper.ogg') + gen "{size=-4}Ginny... It's time for you to meet {i}George{/i}.{/size}{fast}" ("grin", xpos="far_left", ypos="head") + her "" ("angry", "wide", "worried", "shocked", cheeks="blush", flip=True) + pause 0.8 + her "(I'd better leave now...)" ("disgust", "base", "base", "R", cheeks="blush", flip=True) + hide hermione_main + hide screen bld1 + with d3 + pause 0.5 + + call her_chibi("leave") + + call blkfade + + stop music fadeout 1.0 + + call gen_chibi("sit_behind_desk") + centered "{size=+7}{color=#cbcbcb}End of part two{/color}{/size}" + jump panty_raid.choices + + elif pathvalue == 2: + # Part 3 + call hide_blkfade + pause 1.0 + call play_sound("knocking") + "*Knock-knock-knock*" + pause 0.5 + her "I'm coming in." + + call her_walk(action="enter", xpos="mid", ypos="base") + + gen "Well, well, well... if it isn't my favourite minx!" ("grin", xpos="far_left", ypos="head") + her "Good morning to you too, [genie_name]." ("open", "closed", "base", "mid", flip=False) + her "" ("base", "base", "base", "mid") + gen "What brings you here this time?" ("base", xpos="far_left", ypos="head") + her "Well... I..." ("open", "base", "base", "R", cheeks="blush") + her "" ("upset", cheeks="blush") + gen "Don't you worry, I'm just teasing you." ("base", xpos="far_left", ypos="head") + her "" ("normal", "base", "base", "mid", cheeks="blush") + gen "But we've made it quite a habit by now, didn't we?" ("base", xpos="far_left", ypos="head") + gen "You coming here every morning and asking for points..." ("base", xpos="far_left", ypos="head") + her "" ("normal", "base", "worried", "mid", cheeks="blush") + gen "... for which in return you bring me panties of that colleague of yours..." ("base", xpos="far_left", ypos="head") + her "" ("normal", "narrow", "base", "down", cheeks="blush") + gen "... I wonder if she realised by now that a washing machine can only eat so many panties." ("grin", xpos="far_left", ypos="head") + her "" ("soft", "narrow", "base", "R_soft", cheeks="blush") + gen "but surely that's something worth risking your reputation over, am I right?" ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", "narrow", "base", "R_soft") + gen "I'll take that as a yes." ("grin", xpos="far_left", ypos="head") + gen "You know what to do, off you go." ("base", xpos="far_left", ypos="head") + her "Fine." ("open", "closed", "base", "mid") + her "" ("annoyed", "narrow", "base", "mid_soft") + gen "That a girl." ("grin", xpos="far_left", ypos="head") + + call her_walk(action="leave") + + call blkfade + + stop music fadeout 1.0 + centered "{size=+7}{color=#cbcbcb}A few hours later...{/color}{/size}" + $ game.daytime = False + call update_interface_color + call music_block + + pause 1.0 + call hide_blkfade + + call her_walk(action="enter", xpos="mid", ypos="base") + + gen "Hello [hermione_name], looking good." ("grin", xpos="far_left", ypos="head") + her "Uh-huh... Sir, if I'm not mistaken... {w=0.3}Hogwarts does not have a \"linguistics\" class, do we?" ("open", "narrow", "worried", "mid_soft") + her "" ("upset") + gen "(Why is she asking me?{w=0.3} Oh Right, \"headmaster Rumbleboar\")" ("base", xpos="far_left", ypos="head") + gen "Do you really think we have a class you wouldn't know about?" ("base", xpos="far_left", ypos="head") + her "True... Then, do you know of how many \"Connies\" attend Hogwarts?" ("open", "base", "base", "mid") + her "" ("normal") + her "There aren't any in Gryffindor or Ravenclaw I believe, but I'm not sure for some of the other houses." ("open", "base", "base", "mid_soft") + her "" ("normal") + gen "I feel as though there's some context missing." ("base", xpos="far_left", ypos="head") + her "*Ehm*... alright, so...{w=0.5} I was in the Gryffindor girl's dorm, working on my \"task.\"" ("open") + her "" ("normal") + gen "The perfect hunting grounds." ("base", xpos="far_left", ypos="head") + her "I am astonished that I'll have to agree with you, but yes... I had the pick of the litter with no absence of choice.{w=0.3} Speaking of..." ("open", "closed", "base", "mid") + + call her_walk("desk", "base") + + $ renpy.play('sounds/cloth_sound.ogg') + "She drops a bunched-up ball of about half a dozen girls' panties on your desk, coming in an array of different sizes, designs, and colours." + her "I usually don't conduct such a shotgun approach to work, although..." ("open", "base", "base", "mid", cheeks="blush") + her "" ("soft", cheeks="blush") + gen "In this instance it appears to have served you well. Full marks for stealing panties from your schoolmates." ("grin", xpos="far_left", ypos="head") + her "It would have flustered me if I hadn't told my dorm mates time and time again that it is all of our responsibilities to keep our dorm tidy." ("annoyed", "base", "base", "R", cheeks="blush") + her "Loss of their undergarments is expected when leaving said property strewn around as if a hurricane blew through their drawers." ("open", "base", "base", "mid") + her "" ("soft") + gen "Yes, Yes... But how does this connect back to a Connie?" ("base", xpos="far_left", ypos="head") + her "Right... Well, I obviously chose a time at which I believed all my dorm mates would be gone." ("open", "happyCl", "worried", "mid") + her "But just as I was shoving the last pair into my bag, Katie Bell walked in..." ("angry", "narrow", "base", "down", cheeks="blush") + her "She caught me red handed!" ("disgust", "narrow", "worried", "down", cheeks="blush") + her "" ("normal", "narrow", "worried", "mid_soft") + gen "Or silky handed!{w=1.0}{nw}" ("grin", xpos="far_left", ypos="head") + gen "Or silky handed!{fast}... panty handed?" ("base", xpos="far_left", ypos="head") + her "" ("normal", "narrow", "worried", "down") + gen "..." ("base", xpos="far_left", ypos="head") + gen "Sounded better in my head...{w=0.5} give me a minute and I'll come up with something that works..." ("base", xpos="far_left", ypos="head") + her "I've never been more embarrassed in my entire life!" ("normal", "narrow", "worried", "mid_soft", cheeks="blush") + her "" ("annoyed", "narrow", "base", "R_soft") + gen "Pff, as if you've never said {i}that{/i} before." ("base", xpos="far_left", ypos="head") + her "I mean it! I was mortified standing there clutching her panties while stumbling over my words for an excuse." ("open", "narrow", "worried", "mid_soft", cheeks="blush") + her "" ("upset", cheeks="blush") + gen "And what did she do?" ("base", xpos="far_left", ypos="head") + her "Well... that's the odd thing, while I was floundering like a fish she was just grinning at me. Then she said, and I quote..." ("open", "base", "base", "mid") + her "\"I always had a feeling about you Granger... But if you want them, you'll need to do me a favour. Meet me tonight and we can help with Connie's Linguistics homework.\"" ("open", "base", "base", "R") + her "" ("base", "base", "base", "mid") + gen "Connie's linguist?-{w=1.0}{nw}" ("base", xpos="far_left", ypos="head") + gen "Connie's linguist?-{fast} oh I see..." ("grin", xpos="far_left", ypos="head") + her "As embarrassing as the circumstances were, I would never turn down a request to help a student with homework! But I don't think we have a linguistics class or what Connie she was--" ("open", "narrow", "worried", "mid_soft") + her "" ("soft", "base", "base", "mid") + gen "{i}Cunnilingus{/i} [hermione_name]... She was asking for Cunnilingus." ("grin", xpos="far_left", ypos="head") + her "*huh*? But she said she wanted study help." + gen "It was a metaphor... She was assuming you were a bit more worldly than you really are." ("base", xpos="far_left", ypos="head") + her "I am plenty worldly!" ("angry", "base", "angry", "mid") + her "..." ("upset", "narrow", "angry", "R") + her "" ("upset", "base", "worried", "mid") + pause 0.5 + her "... What's Cunnilingus?" ("open", "base", "worried", "mid") + her "" ("upset") + gen "*Sigh*, she was asking for Dinner beneath the bridge." ("base", xpos="far_left", ypos="head") + her "Dinner? But if she wanted to eat with me why didn't she--" ("open", "base", "base", "mid") + her "" ("upset") + gen "Metaphor, [hermione_name]... She wanted you to sip from her furry cup." ("base", xpos="far_left", ypos="head") + her "*huh*?" ("open", "narrow", "worried", "mid_soft") + her "" ("upset") + gen "Muff Diving..." ("base", xpos="far_left", ypos="head") + her "" ("upset", "base", "worried", "mid") + gen "Munch her carpet..." ("base", xpos="far_left", ypos="head") + her "" ("clench", "closed", "angry", "mid") + gen "Deluxe wash..." ("base", xpos="far_left", ypos="head") + her "Stop not making any sense!" ("clench", "base", "angry", "mid") + her "" ("annoyed") + gen "Are you really supposed to be this school's top student? She was asking you to eat her out." ("base", xpos="far_left", ypos="head") + her "Eat her what out?" ("open") + her "" ("annoyed", "narrow", "angry", "R") + gen "Alright... work with me. She wanted you...{w=1.0} Still with me here?" ("base", xpos="far_left", ypos="head") + her "Yes obviously..." ("open", "closed", "angry", "mid") + her "(Does he think I'm an idiot?)" ("annoyed", "narrow", "angry", "R") + gen "Okay then repeat after me." ("base", xpos="far_left", ypos="head") + her "" ("annoyed", "base", "base", "mid_soft") + gen "She wanted you..." ("base", xpos="far_left", ypos="head") + her "She wanted me..." ("open", "base", "base", "mid_soft") + her "" ("normal") + gen "To take your tongue..." ("base", xpos="far_left", ypos="head") + her "Thake myh tonghue?" ("open_tongue") + her "" ("open_wide_tongue", "squint", "base", "mid") + pause 1.0 + gen "And stick it in her vagina!" ("grin", xpos="far_left", ypos="head") + her "{size=+8}WHAT?!{/size}" ("shock", "wide", "base", "stare", cheeks="blush") + her "Why would she want that?!" ("shock", "wide", "base", "mid", cheeks="blush") + her "" ("angry", cheeks="blush") + gen "Because in my experience it feels awesome...{w=0.5}{nw}" ("grin", xpos="far_left", ypos="head") + gen "Because in my experience it feels awesome...{fast} Wait, did that make it sound like I have a vagin--" ("base", xpos="far_left", ypos="head") + her "You're wrong! She-- She--" ("shock", "closed", "angry", "mid", cheeks="blush") + her "" ("angry", "happyCl", "worried", "mid", cheeks="blush") + gen "What? Never done it before?" ("base", xpos="far_left", ypos="head") + her "{size=+4}OF COURSE NOT!{/size}" ("angry", "base", "angry", "mid", cheeks="blush") + gen "I mean, I assumed you didn't have any real friends... But to get to your age and never eat another girl out? How shameful." ("grin", xpos="far_left", ypos="head") + her "Not everyone in this school is as gross as you!" ("angry", "narrow", "annoyed", "mid", cheeks="blush") + gen "well, there's one way to prove me wrong. Go find Katie and ask her yourself." ("grin", xpos="far_left", ypos="head") + her "" ("annoyed", "narrow", "annoyed", "mid", cheeks="blush") + her "Maybe I will..." ("open", "closed", "angry", "mid") + her "" ("upset", "narrow", "annoyed", "mid") + her "She will surely--" ("open", "closed", "base", "mid") + her "{size=+4}HOLD ON!{/size}" ("scream", "wide", "base", "stare") + her "" ("shock") + gen "What?" ("base", xpos="far_left", ypos="head") + her "I-I-I-I-I..." ("angry", "wide", "base", "mid", cheeks="blush") + gen "Just spit it out!" ("base", xpos="far_left", ypos="head") + her "I was so nervous with her that I just said yes! She'll be expecting me soon!" ("mad", "narrow", "base", "down", cheeks="blush") + gen "You better get to it then, [hermione_name]!" ("grin", xpos="far_left", ypos="head") + her "But I-- But I-- I couldn't--" ("shock", "narrow", "worried", "down", cheeks="blush") + her "" ("angry", cheeks="blush") + her "I'll just have to inform her that it was a misunderstanding, yes that will have to do." ("shock", "narrow", "base", "mid_soft", cheeks="blush") + her "" ("angry", "narrow", "base", "mid_soft", cheeks="blush") + gen "Sure, and risk her spilling the beans to your entire dorm that the proud Hermione Granger steals girls' panties." ("grin", xpos="far_left", ypos="head") + her "..." ("soft", "narrow", "worried", "down") + her "" ("soft", "closed", "angry", "mid", cheeks="blush") + gen "Hey, for sixty points would you let me watch--" ("grin", xpos="far_left", ypos="head") + her "Absolutely not!" ("scream", "base", "angry", "mid", cheeks="blush") + her "" ("angry", "base", "angry", "mid", cheeks="blush") + gen "That's a bummer..." ("base", xpos="far_left", ypos="head") + her "" ("angry", "narrow", "angry", "R", cheeks="blush") + gen "You can go then." ("base", xpos="far_left", ypos="head") + her "..." ("annoyed", cheeks="blush") + her "......" ("annoyed", "base", "worried", "mid", cheeks="blush") + her "What about the points sir?" ("open", "narrow", "worried", "mid_soft", cheeks="blush") + her "" ("annoyed", "base", "worried", "mid", cheeks="blush") + gen "Oh yes, right..." ("base", xpos="far_left", ypos="head") + gen "Forty-five points to Gryffindor!" ("base", xpos="far_left", ypos="head") + her "Thank you sir..." ("open", "narrow", "worried", "mid_soft") + her "" ("upset", "base", "base", "R") + pause 0.5 + + call her_walk("mid", "base") + + gen "{i}Bon appetit!{/i}" ("grin", xpos="far_left", ypos="head") + her "" ("open", "base", "base", "R", flip=True) + pause 0.5 + her "..." ("angry", "base", "base", "mid", flip=True) + her "(What did I get myself into this time...?)" ("angry", "narrow", "base", "down", cheeks="blush", flip=True) + + call her_walk(action="leave") + + call blkfade + + stop music fadeout 1.0 + + pause 1.0 + call play_sound("knocking") + "*Knock-knock-knock*" + pause 1.0 + fem "Who is it?" ("base", xpos="far_left", ypos="head") + pause 0.5 + her "It's me... Hermione granger." + call play_sound("door") + her "Hello Katie I--" + $ renpy.play('sounds/giggle2.ogg') + "Katie" "Hey there sweet cheeks. {heart}{w=0.5} I have been waiting for you. {heart}{heart}{heart}" + her "We need to talk--" + "Katie" "I know exactly what we need. {heart}" + $ renpy.play('sounds/slap_03.ogg') + "> Katie grabs Hermione and pulls her in the room{nw}" + $ renpy.play('sounds/door2.ogg') + "> Katie grabs Hermione and pulls her in the room{fast}, then shuts the door." + pause 1.0 + $ renpy.play('sounds/09_lock.ogg') + pause 0.5 + her "Why did you lock the door...?!" + $ renpy.play('sounds/cloth_sound.ogg') + "> Katie starts taking off her clothes." + her "Wha-wha-what-t-t are you d-doing?!" + $ renpy.play('sounds/giggle.ogg') + "Katie" "Aren't you talkative today?{w=0.5} I would save my breath if I were you. {heart}{heart}{heart}" + "Katie" "I'm quite{w=0.2} {heart}horny{heart}{w=0.2} so you might be stuck here for a while." + $ renpy.play('sounds/push_on_bed.ogg') + "> She pushes Hermione onto the bed." with vpunch + her "{size=+4}W-wait?!{/size}" + $ renpy.play('sounds/sit_on_bed.ogg') + "> Then she swiftly straddles her face in cowgirl position." with hpunch + $ renpy.play('sounds/gltch.ogg') + her "..........!!!" + her "*Hmph*" + $ renpy.play('sounds/gasp2.ogg') + "Katie" "Ahh!{heart} {w=0.5}So much better... {heart}{heart}{heart}" + "Katie" "I'll start moving now.{w=0.5} You ready?" + her "*nwh*!!!" + $ renpy.play('sounds/giggle3.ogg') + "Katie" "I'll take that as a yes. {heart}{heart}{heart}" + $ renpy.play('sounds/jump_on_bed.ogg') + her "*Hmph{cps=10}hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh{/cps}*{nw}" with vpunch_repeat + pause 1.0 + centered "{size=+7}{color=#cbcbcb}End of part three{/color}{/size}" + jump panty_raid.choices + + elif pathvalue == 3: + # Part 4 + centered "{size=+7}{color=#cbcbcb}A couple of months after the \"linguistics\" incident...{/color}{/size}" + call hide_blkfade + pause 1.0 + + call her_walk(action="enter", xpos="mid", ypos="base") + + her "Hello, [genie_name].{heart}" ("smile", "wink", "base", "mid", flip=False) + her "" ("smile", "base", "base", "mid") + gen "[hermione_name]! My favourite slut." ("grin", xpos="far_left", ypos="head") + gen "I have another riddle for you." ("base", xpos="far_left", ypos="head") + her "Oh, this ought to be fun." ("grin") + her "Could you make it a {i}hard one{/i} [genie_name]?" ("open_wide_tongue") + her "" ("smile") + gen "You'll enjoy this one for sure...{w=0.5} Ready?" ("grin", xpos="far_left", ypos="head") + her "Ready!" ("smile", "happyCl", "base", "mid") + her "" ("base", "base", "base", "mid") + gen "\"I am as soft and pure as a kitten, though far more desirable.\"" ("base", xpos="far_left", ypos="head") + her "*Hmm*..." ("base", "base", "base", "R") + her "Boobs?{w=0.5} Titjob?" ("soft", "base", "base", "mid") + her "" ("smile", "base", "base", "mid") + gen "No. In this case, contrary to a titjob, it being both small and tight is usually preferred." ("base", xpos="far_left", ypos="head") + her "Sex?" ("grin", "narrow", "base", "mid_soft") + her "" ("base", "narrow", "base", "mid_soft") + gen "Nope...{w=0.5} \"While boys may want me, they wouldn't be caught dead ever just buying me for themselves.\"" ("base", xpos="far_left", ypos="head") + her "Well that definitely rules out sex." ("open", "base", "base", "R") + her "" ("base") + gen "\"The less of me there is, the more... desirable... I become to behold.\"" ("base", xpos="far_left", ypos="head") + her "Oh! Oh! Panties!" ("crooked_smile", "closed", "base", "mid") + her "" ("base", "base", "base", "mid") + gen "Spot on." ("grin", xpos="far_left", ypos="head") + her "Mine or someone else's?" ("smile", "happy", "base", "mid_soft") + gen "Someone else's if you don't mind, [hermione_name]." ("base", xpos="far_left", ypos="head") + her "On it! I'll be back soon..." ("base", "base", "base", "mid") + + call her_walk(action="leave") + + call blkfade + + stop music fadeout 1.0 + centered "{size=+7}{color=#cbcbcb}Some time later...{/color}{/size}" + $ game.daytime = False + call update_interface_color + call music_block + + pause 1.0 + call hide_blkfade + + call her_walk(action="enter", xpos="mid", ypos="base") + + her "Hello [genie_name], I hope I didn't keep you waiting for too long..." ("smile", "happy", "base", "mid_soft") + + call her_walk("desk", "base") + + her "I had a little...{w=0.3} \"setback\"{w=0.3} if you know what I mean..." ("grin", "narrow", "base", "mid_soft", cheeks="blush") + her "" ("base", cheeks="blush") + pause 0.5 + hide screen bld1 + hide hermione_main + with d3 + "She drops a pair of laced white panties on your desk." + show screen bld1 with d3 + gen "No trouble at all [hermione_name]...{w=0.5} And you have excellent taste as always." ("base", xpos="far_left", ypos="head") + $ renpy.play('sounds/sniff.ogg') + gen "These smell fantastic!" ("grin", xpos="far_left", ypos="head") + her "You're too kind [genie_name]." ("grin", "happy", "base", "mid_soft", cheeks="blush") + hide screen bld1 + hide hermione_main + with d3 + pause 1.0 + call gen_chibi("jerk_off_behind_desk") + $ renpy.play('sounds/zipper.ogg') + ">You take your cock out and start stroking it..." + call gen_chibi("jerk_off_behind_desk") + her "Mmmm, [genie_name] need any help with that?" ("base", "squint", "base", "mid", cheeks="blush") + gen "These already feel a little damp in the middle. Why don't you tell me why that is?" ("base", xpos="far_left", ypos="head") + her "Oh you know, girls will be girls and all." ("grin", "narrow", "base", "mid_soft", cheeks="blush") + gen "You know, charming the panties off someone is just a figure of speech." ("grin", xpos="far_left", ypos="head") + her "Not anymore... I'd like to think Katie was quite pleased with me." ("smile", "narrow", "base", "mid_soft", cheeks="blush") + gen "Katie? Katie Bell? The same delicious dyke that wanted you to clam joust with her?" ("base", xpos="far_left", ypos="head") + her "Maybe..." ("smile", "narrow", "base", "R_soft", cheeks="blush") + her "Although, Katie keeps raising the fee every time I ask." ("smile", "happyCl", "base", "mid", cheeks="blush") + her "" ("open", cheeks="blush") + her "Not that I mind, but my tongue can get quite sore sometimes." ("open_tongue", cheeks="blush") + her "Especially since we've started the \"linguistics\" thing." ("open_wide_tongue", "squint", "worried", "up", cheeks="blush") + her "" ("open_wide_tongue", "squint", "worried", "up", cheeks="blush") + gen "Ugh!" ("angry", xpos="far_left", ypos="head") + call cum_block + call gen_chibi("cum_behind_desk") + her "" ("open_wide_tongue", "narrow", "base", "mid_soft", cheeks="blush") + pause 1.5 + call gen_chibi("cum_behind_desk_done") + her "Oh, poor [genie_name], I had no idea you were so pent up. You can start calling me out more than twice a day if that isn't enough." ("soft", "narrow", "worried", "mid_soft", cheeks="blush") + gen "During the day? But what about your classes?" ("base", xpos="far_left", ypos="head") + her "*Hmm*? Oh well, missing one or two wouldn't hurt... Especially if the headmaster has an important \"assignment\" for me." ("base", "narrow", "base", "mid_soft", cheeks="blush") + gen "I'll consider it... Now let's circle back to you, Katie and your binge of her minge." ("base", xpos="far_left", ypos="head") + her "Professor... How dare you... I would never even think to shamelessly do something so heinous with a classmate and give you all the juicy details..." ("annoyed", "base", "base", "R") + her "For less than forty house points." ("grin", "wink", "base", "mid", cheeks="blush") + her "" ("base", "narrow", "base", "mid_soft", cheeks="blush") + gen "Maybe next time [hermione_name]. I'm a little... spent for tonight." ("base", xpos="far_left", ypos="head") + her "We both know you could go for longer if you wanted to..." ("soft", "narrow", "base", "mid_soft", cheeks="blush") + her "but you're right, we'll leave it for later." ("base", "happy", "base", "mid_soft", cheeks="blush") + her "See you tomorrow [genie_name]." ("smile", "wink", "base", "mid", cheeks="blush") + + call her_walk(action="leave") + + pause 1.0 + gen "... *Hmm*...{w=1.0} I don't think I ever gave her points." ("base", xpos="far_left", ypos="head") + pause 0.5 + + show screen blkfade with d9 + stop music fadeout 5.0 + + call gen_chibi("sit_behind_desk") + centered "{size=+7}{color=#cbcbcb}End of part four{/color}{/size}" + jump panty_raid.choices diff --git a/game/scripts/minigames/mirror/events/previously_at_hogwarts.rpy b/game/scripts/minigames/mirror/events/previously_at_hogwarts.rpy new file mode 100644 index 00000000..278fc24a --- /dev/null +++ b/game/scripts/minigames/mirror/events/previously_at_hogwarts.rpy @@ -0,0 +1,106 @@ +label prev_at_hogwarts: + #Story Unlock requirements: Finish the first 3 Wizard Cards challenges. + + # Setup + $ hermione.equip(her_outfit_default) + $ game.daytime = True + $ game.weather = "clear" + $ game.day = 1 + $ game.gold = 0 + $ desk_OBJ.idle = "desk_dumbledore" + stop weather + call room("main_room") + call play_music("stop") + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}Previously, at Hogwarts{w=1.0}\nschool of Witchcraft and Wizardry...{/color}{/size}" + + call play_music("day") + hide screen blkfade + with d5 + + pause 3.0 + call play_sound("knocking") + "*Knock-knock-knock*" + pause.8 + + dum3 "Please, come in..." + pause.2 + + call sna_walk(action="enter", xpos="mid", ypos="base") + pause.5 + + dum1 "Ah, Severus..." + sna "You called, sir?" ("snape_01",xpos="base",ypos="base") + dum2 "Indeed, I wanted to talk to you about last night." + sna "Last night, sir?" ("snape_03") + dum1 "Yes, last night... Don't think that I had forgotten already..." + sna "..." ("snape_04") + sna "I might have had a few. I hope I didn't say something inappropriate..." ("snape_05") + dum2 "Quite... Do you remember why I hired you, Severus?" + sna "For my excellent potion making skills?" ("snape_25") + dum1 "For your excellent potion making skills..." + dum5 "{size=-6}And your piercing black eyes...{/size}" + sna "What?" ("snape_05") + dum4 "What?" + dum2 "I said, you're fierce and wise." + sna "..." ("snape_05") + sna "Why did you call me here again?" ("snape_03") + dum1 "Ah yes, my apologies.... I got distracted." + dum2 "How much do you remember from our previous discussion?" + sna "Not a lot... it's all a bit of a haze..." ("snape_04") + dum1 "..." + sna "I think I mentioned a student spilling some flobberworm mucus down themselves which halted the whole lesson..." ("snape_01") + sna "And that Potter boy..." ("snape_08") + dum3 "There it is..." + sna "The Potter boy?" ("snape_25") + dum1 "Yes, I've noticed you've been quite stressed lately about this... Potter situation of yours for the lack of a better term." + sna "And your point?" ("snape_09") + dum2 "Ah yes... my point." + dum1 "Where was I again..." + dum2 "Ah yes, your stress situation..." + sna "(You're not really helping old man...)" ("snape_08") + dum1 "Have you tried a draught of peace?" + sna "What?" ("snape_03") + dum2 "A draught of peace, it's a potion you know..." + sna "Are you joking with me right now?" ("snape_04") + dum1 "I'm being quite serious... stress can be quite taxing on your body." + sna "I..." ("snape_01") + sna "I need a moment... I'll talk to you later Albus." ("snape_06") + dum1 "I thought we were getting somewhere..." + sna "..." ("snape_01") + hide snape_main + hide screen bld1 + with d3 + pause.2 + + call sna_chibi("hide") + call sna_chibi("stand","mid","base",flip=True) + with d3 + pause.2 + + call sna_walk(action="leave") + + call play_music("stop") + + dum2 "\"I don't think I'll ever understa\"--" + + $ renpy.play("sounds/magic4.ogg") + $ desk_OBJ.idle = "ch_gen sit_behind_desk" + $ game.weather = "rain" + call weather_sound + with flash + + pause.8 + call bld + gen "Your majesty! Don't touch--" ("angry", xpos="far_left", ypos="head") + gen "............................." ("base", xpos="far_left", ypos="head") + gen "I did it again, didn't I?" ("base", xpos="far_left", ypos="head") + pause.2 + + show screen blkfade + with d9 + pause.8 + + $ renpy.end_replay() diff --git a/game/scripts/minigames/mirror/events/suck_and_run.rpy b/game/scripts/minigames/mirror/events/suck_and_run.rpy new file mode 100644 index 00000000..1d901123 --- /dev/null +++ b/game/scripts/minigames/mirror/events/suck_and_run.rpy @@ -0,0 +1,368 @@ +label suck_and_run_rewards: + # Unlock outfit message. Should only appear once. + if not ton_outfit_succubus.unlocked: + call unlock_clothing(text=">New clothing items for Tonks have been unlocked!", item=ton_outfit_succubus) + return + +# Mirror story: Suck and Run +label suck_and_run: + + with d5 + centered "{size=+7}{color=#cbcbcb}Suck & Run{/color}{/size}" + + label .choices: + + # Setup + $ tonks.equip(ton_outfit_default) + $ game.daytime = False + $ game.weather = "clear" + stop weather + call room("main_room") + call play_music("stop") + show screen blkfade + with d5 + + menu: + "For the best experience it is recommended to play the story in chronological order." + "-Part one-": + $ pathvalue = 0 + "-Part two-": + $ pathvalue = 1 + "-Part three-": + $ pathvalue = 2 + "-Return-": + $ renpy.end_replay() + + stop music fadeout 1.0 + pause 1.0 + + if pathvalue == 0: + call music_block + + call setup_fireplace_hangout(char="snape") + + sna "*Ah*... Been looking forward to this..." ("snape_23", ypos="head") + gen "Rough day I take it?" ("base", xpos="far_left", ypos="head") + sna "Bloody slackers, all of them!" ("snape_17") + gen "..." ("angry", xpos="far_left", ypos="head") + sna "What's the point of me teaching them anything if they can't even bother staying awake?" ("snape_32") + gen "Are we talking about your Slytherin sluts again?" ("base", xpos="far_left", ypos="head") + gen "Surely that's on you if anything." ("base", xpos="far_left", ypos="head") + gen "Maybe you need to spice things up a bit." ("base", xpos="far_left", ypos="head") + sna "What? No! I'm perfectly capable in that capacity!" ("snape_04") + sna "... Unless you've heard something?" ("snape_03") + sna "No, these students in particular are some Hufflepuff boys." ("snape_16") + sna "Now they're lazy at the best of times, but catching someone sleeping in my class... That's a first." ("snape_07") + sna "I wish I could hang them up by their ankles, like in the old days! That would show them!" ("snape_08") + gen "Come on man, it's Halloween!" ("base", xpos="far_left", ypos="head") + gen "Cheer up a little, will you." ("base", xpos="far_left", ypos="head") + sna "*Mmm*... The time of year when girls will put on any type of outfit with the word \"slutty\" written in front of it." ("snape_23") + gen "Exactly!" ("grin", xpos="far_left", ypos="head") + sna "Wait a minute..." ("snape_01") + sna "Do genies even celebrate Holidays?" ("snape_04") + sna "I'd think the novelty of it would wear off rather quickly." ("snape_01") + gen "You kidding me?" ("base", xpos="far_left", ypos="head") + gen "The time these Holiday celebrations have been around has been but a blip of my entire existence." ("base", xpos="far_left", ypos="head") + gen "I was around when they burnt your kind at the stake... And that wasn't even that long ago to me." ("base", xpos="far_left", ypos="head") + sna "Right..." ("snape_31") + gen "Besides... Nightmare before Christmas is like my favourite Halloween movie..." ("base", xpos="far_left", ypos="head") + sna "*Uhm*... What?" ("snape_05") # Snape doesn't know what a movie is + gen "Christmas movie... Whatever." ("base", xpos="far_left", ypos="head") + sna "You're such a mystery to me sometimes, Genie..." ("snape_06") + gen "Come on, you must have seen it! At least heard of it." ("angry", xpos="far_left", ypos="head") + sna "I'm afraid I have not seen this Nightmare {i}moo-wee{/i} thing." ("snape_09") + gen "Okay so there's this guy... Jack Skellington, and he's the \"Pumpkin King\" of Halloween Town." ("base", xpos="far_left", ypos="head") + gen "Which kind of makes him the boss of the place. Only there's a mayor. Look, I don't know enough about the politics." ("base", xpos="far_left", ypos="head") + gen "Anyway... He decides he wants to be Santa Claus, so he kidnaps him in order to take over his position." ("base", xpos="far_left", ypos="head") + gen "Only then the Americans shoot him down and Jack has to release Santa in order to save Christmas." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_03") + gen "Actually, maybe it is a Christmas movie after all..." ("base", xpos="far_left", ypos="head") + sna "..." ("snape_04") + gen "Yeah, you're right... In that case Die Hard would easily take the top spot." ("base", xpos="far_left", ypos="head") + gen "Now that I think of it, the villain kind of looks like--" ("base", xpos="far_left", ypos="head") + sna "Die... Hard?" ("snape_05") + gen "Don't you dare tell me it's not A Christmas movie!" ("base", xpos="far_left", ypos="head") + sna "Whatever it is you're on about sounds dreadfully boring." ("snape_03") + + call nar("You and Snape continue drinking long into the night. You exchange tales of the skimpiest outfits you've seen girls wearing, and the issues with sticking your dick in crazy.") + + show screen blkfade with d3 + stop music fadeout 1.0 + hide screen with_snape + + centered "{size=+7}{color=#cbcbcb}End of part one{/color}{/size}" + + jump suck_and_run.choices + + elif pathvalue == 1: + call play_music("tonks") + + call setup_fireplace_hangout(char="tonks") + + call bld + gen "Getting into the Halloween spirit?" ("base", xpos="far_left", ypos="head") + ton "Of course!" ("grin", "wide", "base", "mid", ypos="head", flip=False) + ton "I've been looking forward to the Halloween feast ever since I got here." ("crooked_smile", "closed", "base", "mid") + ton "Brings back memories." ("base", "base", "base", "downR") + gen "*Ha-hah*, yeah... That food thing that I do all the time. Love it!" ("base", xpos="far_left", ypos="head") + ton "It also gives me a great excuse to dress down!" ("base", "happyCl", "base", "mid") + gen "Don't you mean dress up?" ("base", xpos="far_left", ypos="head") + ton "Same thing..." ("horny", "narrow", "base", "mid") + gen "So, what will it be this year then?" ("base", xpos="far_left", ypos="head") + ton "*Hmm*... Why don't you have a guess..." ("crooked_smile", "base", "base", "mid") + + menu: + "\"A Slutty Nurse?\"": + ton "Ohhh... that'd be fun. Do you have a fever?" ("horny", "wink", "base", "mid") + ton "I could take your temperature." ("grin", "narrow", "raised", "mid") + ton "Orally, of course." ("soft", "narrow", "shocked", "mid") + gen "You naughty--" ("grin", xpos="far_left", ypos="head") + gen "Wait, what do you mean about that exactly?" ("angry", xpos="far_left", ypos="head") + ton "Wouldn't you like to know..." ("soft", "base", "raised", "downR") + ton "But no, that's not it..." ("base", "narrow", "base", "mid") + "\"A Slutty School girl?\"": + ton "Someone's getting greedy." ("base", "narrow", "base", "mid") + ton "Don't you have enough of those already?" ("horny", "base", "raised", "mid") + gen "Never." ("base", xpos="far_left", ypos="head") + "\"A Slutty Witch?\"": + ton "Isn't that just my normal clothing?" ("soft", "base", "base", "down") + gen "That's true..." ("base", xpos="far_left", ypos="head") + + gen "So... What is it then?" ("base", xpos="far_left", ypos="head") + ton "*Hmm*... Not sure I should ruin the surprise." ("horny", "wink", "base", "mid") + ton "I'm sure you'll find out soon enough..." ("base", "narrow", "base", "R", hair="horny") #Glance #hornyhair + gen "Looking forward to it." ("grin", xpos="far_left", ypos="head") + ton "Anyway..." ("open", "base", "shocked", "mid") + ton "Anything else going on that I should know of?" ("soft", "base", "base", "mid") + gen "*Err*... I had a little chat with Severus the other night." ("base", xpos="far_left", ypos="head") + ton "*Hmm*... Not really the kind of thing I was talking about..." ("annoyed", "base", "base", "mid") + ton "Although I'm always up for gossip." ("crooked_smile", "narrow", "shocked", "mid") + ton "I assume you weren't talking about Halloween... Since I doubt Snape would care about it in the slightest." ("open", "narrow", "base", "mid") + gen "Oh no, he absolutely loves it." ("base", xpos="far_left", ypos="head") + ton "Really?" ("disgust", "wide", "shocked", "mid") + ton "Well... Colour me surprised..." ("open", "closed", "base", "mid") + gen "Yes... He seemed quite eager to find out what the girls will be wearing this year in fact." ("base", xpos="far_left", ypos="head") + ton "Oh, so it's like that is it?" ("base", "narrow", "raised", "mid") + gen "He also mentioned that some Hufflepuff boys have been falling asleep during his lessons... What do you think--" ("base", xpos="far_left", ypos="head") + ton "What?! Why do you think I'd know anything about Hufflepuff boys falling asleep in class!?" ("silly", "happyCl", "worried", "mid", cheeks="heavy_blush", hair="horny") + ton "Are you implying that I'm sneaking into their room to fuck them? That I'm draining their cocks dry every night!?" ("scream", "base", "angry", "mid", cheeks="blush", hair="horny") + gen "What? I was just going to ask if you thought they'd been staying up late partying or something." ("base", xpos="far_left", ypos="head") + ton "Oh... No, I don't think they're doing anything like that." ("soft", "base", "base", "R", cheeks="blush", hair="horny") + gen "What was that about sucking them dry at night?" ("base", xpos="far_left", ypos="head") + ton "Did I say that? Are you sure you didn't just hear what you wanted to hear, Genie?" ("disgust", "narrow", "base", "mid", cheeks="blush", hair="horny") + gen "I'm pretty sure I heard you ask if I thought you were fucking your students at night." ("base", xpos="far_left", ypos="head") + ton "Then you must've misheard me..." ("normal", "closed", "base", "mid", hair="horny") + gen "... Are you drooling?" ("base", xpos="far_left", ypos="head") + ton "*Mhmm*?" ("normal", "wide", "base", "down") + ton "Oh, this?" ("mad", "base", "raised", "mid") + ton "I was just thinking about what I'll be having for dinner tonight..." ("soft", "closed", "base", "R") + ton "Creamy mushroom soup... Delicious!" ("horny", "narrow", "shocked", "up", cheeks="blush", hair="horny") + gen "I see...{w=0.3} Very well." ("base", xpos="far_left", ypos="head") + gen "Please keep an eye on those Hufflepuff boys, alright?" ("base", xpos="far_left", ypos="head") + ton "Of course.... I'll make sure to inspect their dorms thoroughly." ("open", "closed", "base", "mid") + ton "I'll even give them a little pat down. Make sure they're not smuggling alcohol up there." ("grin", "narrow", "base", "mid") + ton "Maybe a strip search or two." ("soft", "narrow", "base", "mid") #drooling ahegao face + gen "I don't think that will be necessary." ("base", xpos="far_left", ypos="head") + gen "Just make sure they're not staying up all night, alright?" ("base", xpos="far_left", ypos="head") + ton "*Aww*, You're no fun at all." ("annoyed", "narrow", "base", "mid") #pout + gen "*glares*" ("base", xpos="far_left", ypos="head") + ton "*Sigh* Fiiiiiine... Goodnight [ton_genie_name]." ("annoyed", "base", "base", "mid") + gen "Goodnight [tonks_name]." ("base", xpos="far_left", ypos="head") + + show screen blkfade with d3 + stop music fadeout 1.0 + hide screen with_tonks_animated + + centered "{size=+7}{color=#cbcbcb}End of part two{/color}{/size}" + + jump suck_and_run.choices + + elif pathvalue == 2: + hide screen bld1 + + call gen_chibi("sit_behind_desk") + call play_music("night_outside") + + show screen add_overlay + hide screen blkfade + with d5 + + $ renpy.sound.play("sounds/snore1.ogg") + gen "*Snore*...{w=0.4}" ("base", xpos="far_left", ypos="head") + + call ton_walk(action="enter") + call chibi_emote("exclaim", "tonks") + pause 1.0 + call ton_walk("desk", "base") + call chibi_emote("hearts", "tonks") + pause 0.5 + + #Black screen + show screen blkfade + with d3 + + pause 1.5 + $ renpy.sound.play("sounds/zipper.ogg") + pause 0.5 + call play_sound("giggle") + pause 1.0 + + call ton_chibi_scene("bj_desk") + hide screen blkfade + with d9 + + pause 1.0 + play bg_sounds "sounds/slickloop.ogg" fadein 2 + "*Slurp* *Slurp* *Slurp*" + gen "*Mmm*...{w=0.3} Yes...{w=0.3} That's it, princess...{w=0.4} *Snore*..." ("base", xpos="far_left", ypos="head") + "*Slurp* *Slurp* *Gulp*" + gen "*Nghh*...{w=0.3} I'm almost...{w=0.3} There...{w=0.4} Princess." ("base", xpos="far_left", ypos="head") + "*Slurp* *Slurp* *Gulp*" + gen "*Snore*... *Sn--*" ("base", xpos="far_left", ypos="head") + gen "Princess--" ("base", xpos="far_left", ypos="head") + call ton_chibi_scene("bj_desk_shocked") + g16 "Tonks?!" + + call play_music("tonks") + ton "*Slurp* *Slurp* *Gulp*!" (face="horny", mouth="open_wide_tongue", xpos="far_right", ypos=200, trans=d3) # Explicit positions to avoid hiding the doll + + call ton_chibi_scene("bj_desk") + gen "am I still dreaming?" ("angry", xpos="far_left", ypos="head") + ton "*Slurp* *Slurp* *slurp*!" ("open_wide_tongue", "narrow", "shocked", "stare") + gen "*Ngh*... But it feels so real!" ("angry", xpos="far_left", ypos="head") + stop bg_sounds + ton "..." ("base", "closed", "annoyed", "up", hair="angry") #Hair turns red + call ton_chibi_scene("bj_desk_shocked") + gen "*Ah*... T-Tonks?!" ("base", xpos="far_left", ypos="head") + + stop music fadeout 0.5 + ton "" ("base", "narrow", "base", "mid", xpos="mid", ypos="base") + with fade + pause .5 + + $ renpy.sound.play("sounds/magic3.ogg") + $ tonks.equip(ton_outfit_succubus) + ton "" ("horny", "narrow", "base", "mid", trans=flash) + + pause 0.8 + call play_sound("giggle") + ton "*giggles*" + + $ renpy.music.play("music/determined_pursuit_loop.ogg") + hide tonks_main + with d3 + pause .5 + + gen "*ARGH*!" ("angry", xpos="far_left", ypos="head") + call play_sound("punch01") + with vpunch + gen "Unhand me, foul demon!" ("angry", xpos="far_left", ypos="head") + ton "Of course, Sir..." ("grin", "base", "base", "L", hair="angry", ypos="head", flip=False) + call play_sound("giggle") + pause .8 + ton "Right away, Sir..." ("crooked_smile", "base", "angry", "mid", hair="angry") + ton "Once I've gotten what I want..." ("soft", "narrow", "shocked", "up", hair="angry") + + gen "You may not have my life essence, you foul--" ("angry", xpos="far_left", ypos="head") + + + stop music fadeout 1.0 + ton "" ("horny", "base", "angry", "mid", hair="angry") + $ renpy.sound.play("sounds/spit.ogg") + pause 1 + gen "Temptress?" ("angry", xpos="far_left", ypos="head") + call play_sound("giggle") + ton "*giggles*" ("grin", "base", "angry", "up", hair="angry") + ton "Just close your eyes and relax..." ("normal", "narrow", "angry", "stare", hair="angry") + call ton_chibi_scene("bj_desk") + gen "*Ehm*..." ("base", xpos="far_left", ypos="head") + gen "So you don't want my soul?" ("base", xpos="far_left", ypos="head") + ton "Me? Want a soul as tainted and corrupt as yours?" ("silly", "happyCl", "shocked", "stare", hair="angry", cheeks="blush") + ton "Don't make me laugh..." ("normal", "base", "angry", "mid", hair="angry") + gen "Then what do you--" ("base", xpos="far_left", ypos="head") + ton "{heart}" ("soft", "narrow", "base", "up", hair="angry") + gen "I see..." ("base", xpos="far_left", ypos="head") + ton "Now just relax and enjoy it...{heart}" ("horny", "narrow", "base", "mid", hair="angry") + gen "Well I guess that could be arranged..." ("base", xpos="far_left", ypos="head") + call play_sound("giggle") + pause 1 + gen "Excellent..." ("base", xpos="far_left", ypos="head") + play bg_sounds "sounds/slickloopfast.ogg" fadein 2 + ton "*Slurp* *Slurp* *slurp*!" ("open_wide_tongue", "narrow", "base", "up", hair="angry") + gen "*Argh*!" ("angry", xpos="far_left", ypos="head") + gen "So...{w=0.4} *Ah*... What is it then?" ("angry", xpos="far_left", ypos="head") + ton "*Slurp*?" ("open_wide_tongue", "base", "base", "mid", hair="angry") + gen "What kind of foul creature am I dealing with?" ("base", xpos="far_left", ypos="head") + ton "*Slurp*?" ("open_wide_tongue", "base", "raised", "mid", hair="angry") + gen "Oh! Let me guess!" ("base", xpos="far_left", ypos="head") + gen "Are you a--" ("base", xpos="far_left", ypos="head") + + call play_music("tonks") + + stop bg_sounds + ton "A succubus?" ("crooked_smile", "base", "angry", "mid", hair="angry") + gen "*Argh*... You're no fun, I was just about to--" ("base", xpos="far_left", ypos="head") + play bg_sounds "sounds/slickloopveryfast.ogg" fadein 2 + ton "*Slurp* *Slurp* *Slurp*" ("open_wide_tongue2", "narrow", "base", "up", hair="horny", cheeks="blush") + gen "*Nghh*...{w=0.4} To..." ("base", xpos="far_left", ypos="head") + ton "*Slurp*! *Slurp*! *Slurp*!" ("open_wide_tongue2", "closed", "base", "up", cheeks="blush") + gen "Cum down your throat!" ("base", xpos="far_left", ypos="head") + ton "*Slurp* *Slurp* *Slurp*" ("open_wide_tongue", "happyCl", "shocked", "mid", cheeks="blush") + gen "You asked for it!" ("angry", xpos="far_left", ypos="head") + gen "Take this, foul demon!" ("angry", xpos="far_left", ypos="head") #large text? + stop bg_sounds + $ renpy.sound.play("sounds/slick_02.ogg") + ton "*mmhf*!" ("open_wide_tongue", "wide", "shocked", "mid", cheeks="blush") + + with hpunch + + gen "May the seed of an immortal--" ("angry", xpos="far_left", ypos="head") #large text? + $ renpy.sound.play("sounds/slick_02.ogg") + ton "*Mmm*! *Gulp* *Gulp*" ("open_wide_tongue", "shocked", "shocked", "stare") + + with hpunch + + gen "Quench your lust filled desires!" ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/slick_02.ogg") + ton "*Gulp*...{w=0.4} *Gulp*...{w=0.6} *Gulp*" ("open_wide_tongue", "happyCl", "shocked", "mid", cheeks="blush") + ton "*Ah*..." ("open_wide_tongue_cum", "base", "base", "down", cheeks="blush") + $ renpy.sound.play("sounds/gulp.ogg") + ton "*Gulp*..." ("normal", "closed", "base", "mid", cheeks="blush") + ton "Now that hit the--" ("grin", "base", "base", "mid", cheeks="blush") + + $ renpy.sound.play("sounds/magic3.ogg") + $ tonks.equip(ton_outfit_default) + with flash + + ton "Spot..." ("open", "closed", "base", "mid") + gen "..." ("grin", xpos="far_left", ypos="head") + ton "Hey!" ("clench", "wide", "base", "down") + ton "How did you do that?" ("clench", "wide", "base", "mid") + gen "Do what?" ("base", xpos="far_left", ypos="head") + ton "My form changed..." ("disgust", "narrow", "base", "down") + gen "Nice, It worked!" ("grin", xpos="far_left", ypos="head") + gen "My seed actually did quench your--" ("grin", xpos="far_left", ypos="head") + ton "You idiot!" ("open", "wide", "angry", "mid") + gen "What?!" ("angry", xpos="far_left", ypos="head") + ton "Halloween is the only time I can get away with this..." ("clench", "base", "annoyed", "down") + ton "And now you've ruined it!" ("annoyed", "closed", "worried", "mid", hair="sad") + gen "Surely it is not my fault that my semen contains such immeasurable--" ("base", xpos="far_left", ypos="head") + ton "..." ("annoyed", "narrow", "base", "down", hair="sad") #sad + gen "*Ahem*..." ("base", xpos="far_left", ypos="head") + gen "So... A Succubus... *eh*?" ("base", xpos="far_left", ypos="head") + ton "Obviously..." ("open", "narrow", "shocked", "downR", hair="sad") + gen "A sexual deviant that can't hold in their own desires..." ("base", xpos="far_left", ypos="head") + gen "Not sure why I didn't figure it out sooner..." ("grin", xpos="far_left", ypos="head") + ton "Don't you dare tell anybody..." ("annoyed", "base", "annoyed", "mid") + gen "Tell anybody that there's a lust filled creature hiding in plain sight?" ("base", xpos="far_left", ypos="head") + gen "Who are we talking about again?" ("grin", xpos="far_left", ypos="head") + call play_sound("giggle") + ton "*giggles*" ("base", "happyCl", "base", "mid") + + show screen blkfade with d3 + stop music fadeout 1.0 + hide screen add_overlay + + centered "{size=+7}{color=#cbcbcb}End of part three{/color}{/size}" + + jump suck_and_run.choices diff --git a/game/scripts/minigames/mirror/events/whose_points.rpy b/game/scripts/minigames/mirror/events/whose_points.rpy new file mode 100644 index 00000000..ec9d5cb2 --- /dev/null +++ b/game/scripts/minigames/mirror/events/whose_points.rpy @@ -0,0 +1,244 @@ + +# Mirror story: Whose points is it anyway? +label whose_points: + + # Setup + $ hermione.equip(her_outfit_default) + $ astoria.equip(ast_outfit_default) + $ luna.equip(lun_outfit_default) + $ game.daytime = True + $ game.weather = "clear" + stop weather + call room("main_room") + call play_music("stop") + show screen blkfade + with d5 + + call ast_chibi("stand", 380, 420) + call her_chibi("stand", 450, 426) + call lun_chibi("stand", 530, 430) + + $ luna.zorder = 16 + $ astoria.zorder = 14 + + centered "{size=+7}{color=#cbcbcb}Whose points is it anyway?{/color}{/size}" + + show screen whose_points_screen + hide screen blkfade + with d5 + + stop music + $ renpy.play("sounds/epic_intro.ogg") + call bld + + gen "Hello and welcome to \"whose points is it anyway?\"" ("grin", xpos="far_left", ypos="head") + gen "The show where everything is made up and the points don't matter." ("grin", xpos="far_left", ypos="head") + gen "Just like at Hogwarts." ("grin", xpos="far_left", ypos="head") + $ renpy.play("sounds/applause01.ogg") + her "(I hope I win! I need those house points.)" ("base", "happy", "base", "R", ypos="head", flip=False) + + play music "music/Under-the-Radar by PhobyAk.ogg" fadein 1 fadeout 1 + + gen "First, let me introduce today's contestants." ("base", xpos="far_left", ypos="head") + gen "The curly haired harlot we all know and love. Give it up for Hermione!" ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/applause01.ogg") + her "..." ("grin", "base", "worried", "mid", cheeks="blush", xpos=500, ypos="base") + $ renpy.sound.play("sounds/wolf_whistle.ogg") + her "..." ("base", "base", "worried", "mid", cheeks="blush") + + gen "The ravishing Ravenclaw who will rock your socks off... Luna!" ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/applause01.ogg") + lun "..." ("base", "wink", "base", "mid", xpos=650, ypos="base") + $ renpy.play("sounds/giggle2_loud.ogg") + lun "*heh*... hello." ("grin", "narrow", "base", "mid") + + gen "And the small girl with a big personality. Astoria!" ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/applause01.ogg") + gen "..." ("grin", xpos="far_left", ypos="head") + $ renpy.play("sounds/gasp3.ogg") + ast "Hey!" ("scream", "base", "angry", "mid", xpos=380, ypos="base") + + pause.5 + hide hermione_main + hide luna_main + hide astoria_main + with d5 + pause.5 + + gen "Today we're playing scenes from a hat." ("base", xpos="far_left", ypos="head") + + with hpunch + $ renpy.play("sounds/MaleGasp.ogg") + hat "What!? Stay the fuck away from me!" + + gen "But the notes are already inside you...{w=0.5} I put them in there last night." ("angry", xpos="far_left", ypos="head") + + hat "You put notes inside me without my consent?" + $ renpy.play("sounds/burp.ogg") + hat "*Burp*" + hat "Pardon me." + + gen "Looks like we have our first prompt." ("base", xpos="far_left", ypos="head") + gen "\"Things you might say in potions class, but also in your bedroom\"." ("base", xpos="far_left", ypos="head") + + her "This cauldron hasn't been used for years. It's all mouldy and full of muck!" ("grin", "base", "worried", "mid", cheeks="blush", xpos="right", ypos="base") + + $ renpy.play("sounds/applause01.ogg") + hat "Boo! There's no cauldrons in the bedroom!" + + gen "Quiet now, it was a good euphemism. Ten points to Gryffindor." ("base", xpos="far_left", ypos="head") + hide hermione_main + with d3 + + ast "Snape! Get your gross hands off my shoulders, you creep!" ("clench", "narrow", "angry", "mid", xpos="right", ypos="base") + + $ renpy.sound.play("sounds/cough_male.ogg") + mal "..." + gen "I'm not sure you got the idea of the game there..." ("base", xpos="far_left", ypos="head") + hide astoria_main + with d3 + + lun "Oops... I was supposed to squeeze the mucus out with my hands and not crush it." ("mad", "base", "raised", "L", xpos="right", ypos="base") + + $ renpy.play("sounds/applause01.ogg") + gen "Sounds painful... Fifteen points to Ravenclaw." ("base", xpos="far_left", ypos="head") + hide luna_main + with d3 + + her "(How's that worth more than mine?)" ("annoyed", "base", "worried", "mid") + hide hermione_main + with d3 + + gen "Any more?{w=0.5} On to the next prompt then... Hat?" ("base", xpos="far_left", ypos="head") + hat "Sorry, what did you *cough* call me? That's {i}Sorting Hat{/i} to you..." + $ renpy.play("sounds/burp.ogg") + hat "*Burp*" + hat "That one was spicy..." + gen "Ah, this one..." ("base", xpos="far_left", ypos="head") + gen "\"Things you might do in Quidditch, but also with your lover\"..." ("grin", xpos="far_left", ypos="head") + + ast "I'm going first this time! I have a good one!" ("smile", "base", "base", "mid") + gen "Go on..." ("base", xpos="far_left", ypos="head") + ast "Madam Hooch! Get your gross hands off my quidditch robes, you creep!" ("clench", "narrow", "angry", "mid") + gen "Again, I don't think you understand the game..." ("base", xpos="far_left", ypos="head") + ast "Give me the points!" ("scream", "narrow", "angry", "mid", trans=hpunch) + gen "Disqualified!" ("base", xpos="far_left", ypos="head") + ast "Wait, you can't do that!" ("clench", "base", "base", "mid") + gen "It's my game, I make the rules." ("grin", xpos="far_left", ypos="head") + ast "(We'll see about that...)" ("annoyed", "narrow", "angry", "R") + hide astoria_main + with d3 + + her "My turn." + her "I love the feeling of a hard wooden object between my legs.{w=0.5} I tend to tense up during the climax." ("grin", cheeks="blush") + + $ renpy.play("sounds/applause01.ogg") + gen "A bit direct, but I like it.{w=0.5} Fifteen points to Gryffindor." ("base", xpos="far_left", ypos="head") + hide hermione_main + with d3 + + lun "It's quite exciting but also a bit hard. You need to make sure not to end up with one of the balls in your throat." ("angry", "closed", "low", "mid") + + gen "(I don't mind having you end up with one of mine in your throat one day, if you know what I mean...)" ("grin", xpos="far_left", ypos="head") + + $ renpy.play("sounds/applause01.ogg") + gen "Twenty points to Ravenclaw." ("base", xpos="far_left", ypos="head") + hide luna_main + with d3 + + her "(Seems like pleasing the judge is the way to go. Only one round left...)" ("annoyed", "base", "worried", "mid") + hide hermione_main + with d3 + + gen "Last round ladies. You better make it a good one. It's still all to play for." ("base", xpos="far_left", ypos="head") + gen "The last note, if you please!" ("base", xpos="far_left", ypos="head") + + hat "..." + gen "If you please..." ("base", xpos="far_left", ypos="head") + hat "I'm all out, looks like you only wrote two after all." + + gen "That can't be right..." ("angry", xpos="far_left", ypos="head") + + ast "Let me check professor!" ("smile", "base", "base", "mid") + $ renpy.play("sounds/cloth_sound.ogg") + ast "*Hmm*...{w} It has to be here somewhere..." ("annoyed", "base", "base", "down") + ast "There it is! It was stuck under one of the folds!" ("smile", "base", "base", "mid") + hide astoria_main + with d3 + + $ renpy.sound.play("sounds/MaleGasp.ogg") + hat "Are you calling me fat, young lady?!" + + ast "I'll read it for you, shall I?" ("smile", "closed", "base", "mid") + + gen "Go ahead..." ("base", xpos="far_left", ypos="head") + + ast "\"Things that you would not share with your classmates, but would share with... \"what do you call him again? ah yes, \"[lun_genie_name]\"." ("open", "base", "base", "down") + hide astoria_main + with d3 + + gen "(I don't remember writing that one...)" ("base", xpos="far_left", ypos="head") + + lun "I see invisible creatures... but people don't believe--" ("upset", "closed", "worried", "downR") + hide luna_main + hide screen bld1 + with d3 + pause.1 + + stop music + call her_chibi("lift_top", 450, 426) + with d5 + pause.8 + + $ hermione.strip("bra", "top") + + $ renpy.sound.play("sounds/crowd_gasp.ogg") + her "..." ("grin", "squint", "worried", "mid", cheeks="blush") + + gen "Five hundred points to Gryffindor!" ("grin", xpos="far_left", ypos="head") + hide hermione_main + with d3 + + lun "That's cheating, I didn't even get to finish!" ("disgust", "wide", "annoyed", "mid") + hide luna_main + + gen "Well, that's all for this episode of \"whose points is it anyway\"?" ("base", xpos="far_left", ypos="head") + + her "I win, all the points for me!" ("crooked_smile", "closed", "base", "mid") + hide hermione_main + with d3 + + play music "music/Under-the-Radar by PhobyAk.ogg" fadein 1 fadeout 1 + lun "Don't end now! This game is rigged!" ("scream", "narrow", "annoyed", "L") + hide luna_main + with d3 + + gen "And remember, the points don't matter!" ("base", xpos="far_left", ypos="head") + + her "Wait, they don't?! I thought they were house points!" ("annoyed", "base", "worried", "mid") + hide hermione_main + with d3 + + ast "Harlot! Harlot! Harlot!" ("grin", "closed", "base", "mid", xpos="400", ypos="base") + + lun "How do those points taste now?" ("silly", "narrow", "annoyed", "L", xpos=600, ypos="base") + lun "The whole wizarding world is going see your tits!" ("smile", "happyCl", "base", "mid") + hide luna_main + hide astoria_main + with d3 + + her "Oh no, I forgot about that!" ("shock", "base", "worried", "mid", tears="crying") + + $ renpy.play("sounds/epic_intro.ogg") + $ renpy.play("sounds/applause01.ogg") + gen "Good night!" ("grin", xpos="far_left", ypos="head") + + show screen blkfade + with d5 + + centered "{size=+7}{color=#cbcbcb}To be continued?{/color}{/size}" + + $ renpy.end_replay() + +screen whose_points_screen(): + add "images/rooms/room_of_requirement/whose_points.webp" diff --git a/game/scripts/minigames/mirror/init.rpy b/game/scripts/minigames/mirror/init.rpy new file mode 100644 index 00000000..f20a3193 --- /dev/null +++ b/game/scripts/minigames/mirror/init.rpy @@ -0,0 +1,182 @@ +default mirror_intro_done = False + +default mr_ev_WPIIA = MirrorEvent( + id="mr_ev_WPIIA", + name="Whose points is it anyway?", + cast =["luna", "astoria", "hermione"], + desc="Parody of the famous game show, \"Whose points is it anyway?\".", + label="whose_points", + authors=["SilverStudioGames"], + tags=["Humorous","Sexual"], +) + +default mr_ev_GHE = MirrorEvent( + id="mr_ev_GHE", + name="The Genie, the desk, and the door", + cast=[], + desc="You try to figure out how people know when you call for them.", + label="genie_house_elf", + authors=["SilverStudioGames"], + tags=["Humorous"], + unlocked=True, +) + +default mr_ev_AOC = MirrorEvent( + id="mr_ev_AOC", + name="An odd circumstance", + cast=["hermione"], + desc="You find yourself being confronted by a mysterious girl that seemingly seems to know you.", + label="an_odd_circumstance", + authors=["SilverStudioGames"], + tags=["Humorous","Sexual","Noir"], + req="hg_blowjob.trigger", +) + +default mr_ev_ABTTD = MirrorEvent( + id="mr_ev_ABTTD", + name="A bad time to disrobe", + cast=["hermione"], + desc="You get a hold of a invisibility cloak and put it to good use.", + label="a_bad_time_to_disrobe", + authors=["SilverStudioGames"], + tags=["Sexual","Flashing"], + req="hg_pf_admire_breasts.points > 1", +) + +default mr_ev_ASOC = MirrorEvent( + id="mr_ev_ASOC", + name="A spaced out conversation", + cast=[], + desc="You and Snape get real for a little bit.", + label="a_spaced_out_conversation", + authors=["Ignatz"], + tags=["Noir"], + req="sna_friendship > 60", +) + +default mr_ev_ABAS = MirrorEvent( + id="mr_ev_ABAS", + name="Booty at sea", + cast=["hermione"], + desc="You imagine yourself a great pirate and replay your most intimate times with Hermione.", + label="anal_pirate_event", + label_rewards="anal_pirate_rewards", + authors=["SilverStudioGames"], + tags=["Humorous", "Sexual"], + req="hg_anal.trigger", +) + +# BROKEN +# +# default mr_ev_ADR = MirrorEvent( +# id="mr_ev_ADR", +# name="A Dark Room", +# cast=[], +# desc="A minigame inspired by the text-based game \"A Dark Room\".\n>It is currently incomplete but in a playable state.", +# label="start_dark_room_game", +# authors=["SilverStudioGames"], +# tags=["Minigame", "Noir"], +# unlocked=True, +# ) + +default mr_ev_AXmasTale = MirrorEvent( + id="mr_ev_AXmasTale", + name="A Christmas Tale", + cast=[], + desc="A surprise visit in the time of need.", + label="a_christmas_tale", + label_rewards="a_christmas_tale_rewards", + authors=["SilverStudioGames"], + tags=["Seasonal", "Noir"], + unlocked=True, +) + +default mr_ev_AXmasTale2 = MirrorEvent( + id="mr_ev_AXmasTale2", + name="Santa's Little Helper", + cast=[], + desc="The tall broody guy is about to get his present.", + label="a_christmas_tale2", + label_rewards="a_christmas_tale2_rewards", + authors=["SilverStudioGames"], + tags=["Seasonal", "Noir"], + unlocked=True, +) + +default mr_ev_PaH = MirrorEvent( + id="mr_ev_PaH", + name="Previously at Hogwarts", + cast=[], + desc="Snape tries to find a solution to stifle his anger and finds himself yet again in the headmaster's office.", + label="prev_at_hogwarts", + authors=["SilverStudioGames"], + tags=["Noir"], + unlocked=True, +) + +default mr_ev_PR = MirrorEvent( + id="mr_ev_PR", + name="Panty Raid", + cast=["hermione"], + desc="You ask Hermione to go out and collect other girls panties.", + label="panty_raid", + authors=["WaxerRed"], + tags=["Sexual", "Fetish"], + req="her_whoring > 15", +) + +default mr_ev_EFP = MirrorEvent( + id="mr_ev_EFP", + name="Eating for pleasure", + cast=["hermione"], + desc="You get hungry and decide to get something to eat.", + label="eating_for_pleasure", + label_rewards="eating_for_pleasure_rewards", + authors=["SilverStudioGames"], + tags=["Humorous", "Sexual", "Fetish"], +) + +default mr_ev_SNR = MirrorEvent( + id="mr_ev_SNR", + name="Suck & Run", + cast=["tonks"], + desc="Someone or {i}something{/i} is sucking the life force out of the students.", + label="suck_and_run", + label_rewards="suck_and_run_rewards", + authors=["SilverStudioGames"], + tags=["Seasonal", "Sexual", "Fetish"], +) + +default mr_ev_BD = MirrorEvent( + id="mr_ev_BD", + name="Biggus Dickus", + cast=["hermione"], + desc="Hermione comes to you with an odd request.", + label="biggus_dickus", + authors=["Livvypoo"], + tags=["Humorous","Sexual"], +) + +default mr_ev_NSGE = MirrorEvent( + id="mr_ev_NSGE", + name="A not so great escape", + cast=["tonks", "cho", "luna"], + desc="You find yourself in a bit of a pickle.", + label="not_so_great_escape", + label_rewards="not_so_great_escape_rewards", + authors=["SilverStudioGames"], + tags=["Seasonal", "Humorous"], + unlocked=True, +) + +default mr_ev_WC = MirrorEvent( + id="mr_ev_WC", + name="A white Christmas", + cast=["tonks", "hermione"], + desc="Genie is not so happy with the narration and decides to take it into his own hands.", + label="a_white_christmas", + label_rewards="a_white_christmas_rewards", + authors=["SilverStudioGames"], + tags=["Seasonal", "Humorous", "Sexual"], + unlocked=True, +) diff --git a/game/scripts/minigames/mirror/menu.rpy b/game/scripts/minigames/mirror/menu.rpy new file mode 100644 index 00000000..6f5e8d75 --- /dev/null +++ b/game/scripts/minigames/mirror/menu.rpy @@ -0,0 +1,206 @@ +init python: + def mirror_sortfilter(item, sortby="A-z", filtering=None): + if filtering == "Locked": + item = filter(lambda x: x.is_unlocked(), item) + elif filtering == "Unlocked": + item = filter(lambda x: x.is_unlocked() is True, item) + + # Always sort alphabetically first. + item = sorted(item, key=lambda x: natsort_key(x.name)) + + if sortby == "z-A": + item = sorted(item, key=lambda x: natsort_key(x.name), reverse=True) + + return item + +label mirror: + $ gui.in_context("mirror_menu") + call screen room_menu + +label mirror_menu(xx=150, yy=90): + + $ mirror_categories = mirror.get_tags() + + $ items_shown = 36 + $ current_page = 0 + $ current_category = mirror_categories[0] + $ current_filter = "Unlocked" + $ current_sorting = "A-z" + + $ menu_items = mirror_sortfilter(mirror.get_instances_of_tag(current_category), current_sorting, current_filter) + $ menu_items_length = len(menu_items) + $ current_item = next(iter(menu_items), None) + + show screen mirror(xx, yy) + + label .after_init: + $ _choice = ui.interact() + + if _choice[0] == "select": + $ current_item = _choice[1] + elif _choice[0] == "category": + $ current_category = _choice[1] + + $ menu_items = mirror_sortfilter(mirror.get_instances_of_tag(current_category), current_sorting, current_filter) + $ menu_items_length = len(menu_items) + $ current_page = 0 + $ current_item = next(iter(menu_items), None) + elif _choice == "inc": + $ current_page += 1 + elif _choice == "dec": + $ current_page += -1 + elif _choice == "filter": + if current_filter == "Unlocked": + $ current_filter = None + elif current_filter == None: + $ current_filter = "Unlocked" + + $ menu_items = mirror_sortfilter(mirror.get_instances_of_tag(current_category), current_sorting, current_filter) + $ menu_items_length = len(menu_items) + $ current_page = 0 + $ current_item = next(iter(menu_items), None) + elif _choice == "sort": + if current_sorting == "A-z": + $ current_sorting = "z-A" + else: + $ current_sorting = "A-z" + + $ menu_items = mirror_sortfilter(mirror.get_instances_of_tag(current_category), current_sorting, current_filter) + $ menu_items_length = len(menu_items) + $ current_page = 0 + $ current_item = next(iter(menu_items), None) + elif _choice[0] == "play": + $ _choice[1].play() + $ renpy.jump_out_of_context("mirror") + else: + $ enable_game_menu() + hide screen mirror + return + + jump .after_init + +screen mirror(xx, yy): + tag mirror + zorder 30 + modal True + + add "gui_fade" + + if renpy.mobile: + use close_button_background + + use close_button + + fixed: + if settings.get("animations"): + at gui_animation + use mirror_menu(xx, yy) + use mirror_menuitem(xx, yy) + +screen mirror_menu(xx, yy): + window: + style "empty" + style_prefix gui.theme('achievements') + pos (xx, yy) + xysize (207, 454) + + use invisible_button() + + add gui.format("interface/achievements/{}/panel_left.webp") + + vbox: + style_prefix gui.theme('achievements_categories') + pos (6, 41) + for category in mirror_categories: + vbox: + textbutton category: + selected (current_category == category) + action Return(["category", category]) + + add gui.format("interface/achievements/{}/spacer_left.webp") + vbox: + style_prefix gui.theme('achievements_filters') + pos (6, 384) + + if current_filter == None: + textbutton "Show: All" action Return("filter") + else: + textbutton "Show: [current_filter]" action Return("filter") + textbutton "Sort by: [current_sorting]" action Return("sort") + +screen mirror_menuitem(xx, yy): + window: + style "empty" + pos (xx+217, yy-53) + xysize (560, 507) + use invisible_button() + + #add "interface/achievements/star.webp" + add gui.format("interface/achievements/{}/panel.webp") + + text "Mirror of Erised" size 22 xalign 0.5 ypos 65 + + # Add items + viewport: + style_prefix gui.theme() + draggable True + mousewheel "vertical" + scrollbars "vertical" + maximum (512, 290) + pos (24, 113) + vbox: + style_prefix "mirror" + for ev in menu_items: + $ authors = ", ".join(ev.authors) + button: + ysize 30 + selected_background Transform(gui.format("interface/achievements/{}/highlight.webp"), ysize=26) + selected (current_item == ev) + sensitive ev.is_unlocked() + xfill True + action Return(["select", ev]) + vbox: + text ev.name + text "By {}".format(authors) size 10 + add gui.format("interface/achievements/{}/spacer_left.webp") + + + if menu_items_length <= 0: + text "Nothing here yet" align (0.5, 0.5) anchor (0.5, 0.5) size 24 + + if current_item: + frame: + xalign 0.5 + ypos 412 + + vbox: + xalign 0.5 + add gui.format("interface/achievements/{}/highlight.webp") + add gui.format("interface/achievements/{}/spacer.webp") + vbox: + yoffset 6 + xmaximum 400 + text "[current_item.desc]" size 12 + text "Tags:{}".format(", ".join(current_item.tags)) size 10 + + text "[current_item.name]" xalign 0.5 ypos 3 size 16 + + textbutton "Play": + xalign 0.95 + text_size 16 + sensitive current_item.is_unlocked() + action Return(["play", current_item]) + +style mirror_button is empty + +style mirror_button_text: + color "#402313" + insensitive_color "#40231380" + hover_color "#FFF" + outlines [] + +style mirror_text is mirror_button_text: + color "#402313" + insensitive_color "#40231380" + hover_color "#FFF" + outlines [] diff --git a/game/scripts/minigames/mirror/screens.rpy b/game/scripts/minigames/mirror/screens.rpy new file mode 100644 index 00000000..678632b4 --- /dev/null +++ b/game/scripts/minigames/mirror/screens.rpy @@ -0,0 +1,24 @@ +image dark_overlay: + "images/rooms/room_of_requirement/dark_overlay_1.webp" with d3 + pause 0.4 + "images/rooms/room_of_requirement/dark_overlay_2.webp" with d3 + pause 0.4 + "images/rooms/room_of_requirement/dark_overlay_3.webp" with d3 + pause 0.4 + repeat + +screen quistion_pop_up(content=""): + zorder 33 + + add "interface/room_of_req/quistion_mark.webp" xpos 10 ypos 10 zoom 0.5 + text content xpos 40 ypos 15 + +screen day_to_night(): + use blkfade + add "images/rooms/room_of_requirement/day_to_night.webp" xalign 0.5 yalign 0.5 + zorder 5 + +screen add_overlay(): + add "dark_overlay" xpos 0 ypos 0 + zorder 6 + diff --git a/game/scripts/minigames/puzzle.rpy b/game/scripts/minigames/puzzle.rpy new file mode 100644 index 00000000..5f821924 --- /dev/null +++ b/game/scripts/minigames/puzzle.rpy @@ -0,0 +1,161 @@ +init python: + + def generate_puzzle(grid, difficulty, blank): + tiles = grid*grid + difficulty = difficulty * tiles + + puzzle = list(xrange(tiles)) + renpy.random.shuffle(puzzle) + + def is_valid(): + inversions = 0 + + for x in xrange(tiles): + for y in xrange(x+1, tiles): + if not (puzzle[x] == blank or puzzle[y] == blank) and puzzle[x] > puzzle[y]: + inversions += 1 + + # If the grid width is odd, then every solvable state has an even number of inversions. + # If the grid width is even, then every solvable state has: + # an even number of inversions if the blank is on an odd numbered row counting from the bottom OR + # an odd number of inversions if the blank is on an even numbered row counting from the bottom + + if (grid % 2 == 1): + is_solvable = (inversions % 2 == 0) + else: + blank_row = grid - (puzzle.index(blank) / grid) + is_solvable = (inversions % 2 != blank_row % 2) + + too_difficult = (inversions <= difficulty) + return (is_solvable and not too_difficult) + + while not is_valid(): + renpy.random.shuffle(puzzle) + + return puzzle + +screen puzzle_minigame(): + tag puzzle + zorder 30 + + default tries = 0 + default tiles = generate_puzzle(grid=4, difficulty=game.difficulty, blank=15) + default hint = False + $ score = 0 + + add "gui_fade" + use close_button() + use meter(fill=100-tries) + + frame: + align (0.5, 0.5) + background Transform("interface/puzzle/background.webp", align=(0.5, 0.5)) + + grid 4 4: + for i, tile in enumerate(tiles): + $ img = "interface/puzzle/{}.webp".format(tile) + $ empty = tiles.index(15) + $ is_valid = (i in (empty-1, empty+1, empty-4, empty+4) + and not ( (empty % 4 == 3) and (i % 4 == 0) ) + and not ( (empty % 4 == 0) and (i % 4 == 3) ) ) + $ action = None + $ hover = None + + if i is empty: + $ idle = Null() + elif not is_valid: + $ idle = img + else: + $ action = [SetScreenVariable("tries", tries+1), Function(list_swap_values, tiles, empty, i)] + $ idle = At(img, pulse_hover(pause=3.0, strength=0.075)) + $ hover = image_hover(idle) + + if i == tile: + $ score += 1 + + imagebutton: + xysize (94, 94) + idle idle + hover hover + action action + if hint: + button: + style "empty" + align (0.5, 0.5) + background Transform("interface/puzzle/background.webp", align=(0.5, 0.5)) + add "interface/puzzle/puzzle.webp" + action NullAction() + + if score >= 15: + timer 0.1 action Return(True) + + vbox: + yanchor 0.0 + align (0.5, 0.85) + textbutton "-Hint-" xalign 0.5 action ToggleScreenVariable("hint", True, False) + if tries >= 75: + textbutton "-Force it open-" xalign 0.5 action Return(False) at pulse_hover + if config.developer: + textbutton "-Solve it-" xalign 0.5 action SetScreenVariable("tiles", list(xrange(16))) + +label puzzle_minigame: + call screen puzzle_minigame() + $ renpy.block_rollback() + + if _return == True: + gen "Finally..." ("base", xpos="far_left", ypos="head") + gen "What is this?" ("base", xpos="far_left", ypos="head") + gen "Sweet, phoenix tears! Down the hatch we go." ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/pop03.ogg") + $ renpy.play("sounds/gulp.ogg") + pause 1 + $ renpy.play("sounds/gulp.ogg") + gen "...." ("base", xpos="far_left", ypos="head") + gen "I feel no difference..." ("base", xpos="far_left", ypos="head") + $ achievements.unlock("puzzle") + elif _return == False: + gen "Fuck it..." ("angry", xpos="far_left", ypos="head") + $ renpy.play('sounds/door_down.ogg') + with hpunch + "{size=32}*Smash*{/size}" + $ renpy.play('sounds/glass_shatter.ogg') + gen "A broken bottle..." ("base", xpos="far_left", ypos="head") + gen "Oh well, too late now. Back to my usual--" ("base", xpos="far_left", ypos="head") + else: # Closed + gen "(Maybe next time...)" ("base", xpos="far_left", ypos="head") + jump main_room_menu + + gen "Hold on a second, there's a book in here..." ("base", xpos="far_left", ypos="head") + gen "Seems to be some sort of notebook, I'll skim through it..." ("base", xpos="far_left", ypos="head") + + call book_start + + gen "\"My dear phoenix has been losing his feathers lately, I think it's time soon\"..." ("base", xpos="far_left", ypos="head") + gen "(Time for what?)" ("base", xpos="far_left", ypos="head") + gen "\"That Potter boy is mighty cute, looks just like his father\"..." ("base", xpos="far_left", ypos="head") + gen "(Well, well...)" ("grin", xpos="far_left", ypos="head") + gen "\"Severus gave me a weird look today, I wonder what he thinks about my\"..." ("base", xpos="far_left", ypos="head") + gen "(This is all trash...)" ("angry", xpos="far_left", ypos="head") + gen "(Wait a minute... this seems interesting.)" ("base", xpos="far_left", ypos="head") + gen "\"I was walking around in the seventh floor corridor looking for a bathroom\"..." ("base", xpos="far_left", ypos="head") + gen "\"Whilst searching, a room that I had never seen before appeared, filled with chamber pots... But when I returned later, it was gone\"." ("base", xpos="far_left", ypos="head") + + call book_end + + gen "(I've seen enough magic to know where this is going... I should investigate that corridor on the seventh floor.)" ("base", xpos="far_left", ypos="head") + call give_reward("You've unlocked something on the 7th floor, check your map to get there.","/images/rooms/room_of_requirement/mirror.webp") + + if deck_unlocked: + gen "What's this?" ("base", xpos="far_left", ypos="head") + call give_reward("You have found a card at the bottom of the box!", "images/cardgame/t1/other/elf_v1.webp") + $ unlocked_cards += [card_item_elf] + $ unlocked_7th = True + $ puzzle_box_ITEM.owned = 0 + $ puzzle_box_ITEM.used = True + + $ chair_OBJ.hidden = False + + if game.daytime: + jump night_start + else: + jump day_start diff --git a/game/scripts/options.rpy b/game/scripts/options.rpy new file mode 100644 index 00000000..6aa5f3dd --- /dev/null +++ b/game/scripts/options.rpy @@ -0,0 +1,161 @@ + +# Preferences +# https://www.renpy.org/doc/html/preferences.html + +# Note: Only use default keyword for renpy preferences. Use settings.default for custom ones. +default preferences.text_cps = 40 +default preferences.afm_time = 15 +default preferences.pad_enabled = False +default preferences.renderer = "angle2" if renpy.windows else "gl2" +default preferences.gl_powersave = False + +python early: + if renpy.android: + os.environ["RENPY_LESS_MEMORY"] = "1" + +init python: + settings.default('theme', 'auto') + settings.default('text_color_day', '#402313ff') + settings.default('text_color_night', '#341c0fff') + settings.default('text_outline', '#00000000') + settings.default('tooltip', True) + settings.default('tutorials', True) + settings.default('preserve_aspect_ratio', True) + settings.default('animations', True) + +# Configuration +# https://www.renpy.org/doc/html/config.html + +# Pre-Release related flags and variables +define config.searchpath = [os.environ["ANDROID_PUBLIC"]] if renpy.android else [config.gamedir, config.commondir] +define config.autoreload = False +define config.developer = "auto" +define config.console = True + +# Game version and naming +define config.version = "1.42.2" +define compatible_version = 1.40 +define config.name = "WT Silver" + +# Application window settings +define config.window_title = "Witch Trainer: Silver (v{}) ({}) ({}-bit)".format(config.version, get_renderer(), renpy.bits) +define config.window_icon = "gui/icon.webp" +define config.screen_width = 1080 +define config.screen_height = 600 +define config.save_physical_size = True + +# User interface settings +define config.layers = ["master", "transient", "screens", "overlay"] +define config.default_tag_layer = "screens" +define config.top_layers = ["interface"] +define config.transparent_tile = False +define config.narrator_menu = True +define config.hard_rollback_limit = 100 +define config.history_length = 250 +define config.mouse = {"default": [("interface/cursor.webp", 0, 0)]} +define config.help = None +define config.side_image_only_not_showing = True +define config.allow_underfull_grids = True +define config.crop_relative_default = False + +# Graphics and cache settings +define config.gl2 = True +define config.gl_enable = True +define config.gl_resize = True +define config.gl_clear_color = "#000" +define config.hw_video = True +define config.nearest_neighbor = False +define config.atl_start_on_show = False # Enables compatibility for ATL behaviour after Ren'py 7.4.7 +define config.use_drawable_resolution = (not renpy.android) +define config.drawable_resolution_text = True +define config.cache_surfaces = False +define config.image_cache_size = None +define config.image_cache_size_mb = 350 +define config.load_before_transition = True +define config.imagemap_cache = True +define config.optimize_texture_bounds = True +define config.debug_image_cache = False +#define config.atl_one_frame = False +define config.mipmap_movies = (not renpy.android) +define config.mipmap_text = (not renpy.android) +define config.mipmap_dissolves = (not renpy.android) +define config.predict_screen_statements = False +define config.predict_screens = False + +# Disable automatic image scanning +define config.automatic_images = None +define config.images_directory = None +init -1: + define config.late_images_scan = True + +# Saving and loading +define config.save_directory = "WT SILVER" +define config.has_autosave = True +define config.autosave_on_quit = True +define config.autosave_on_choice = True +define config.autosave_frequency = 200 +define config.autosave_slots = 12 + +# Sound and music +define config.has_sound = True +define config.has_music = True +define config.has_voice = False +define config.sound_sample_rate = 48000 +define config.main_menu_music = "music/aquarium-by-kevin-macleod.ogg" + +# Transitions +define config.enter_transition = f3 +define config.exit_transition = f3 +define config.intra_transition = d1 +define config.main_game_transition = f3 +define config.game_main_transition = f3 +define config.end_splash_transition = d3 +define config.end_game_transition = fade +define config.after_load_transition = fade +define config.window_show_transition = d3 +define config.window_hide_transition = d3 +define config.adv_nvl_transition = d3 +define config.nvl_adv_transition = d3 +define config.enter_yesno_transition = None +define config.exit_yesno_transition = None +define config.enter_replay_transition = None +define config.exit_replay_transition = None +define config.say_attribute_transition = d3 + +# Garbage Collector +define config.manage_gc = True +define config.gc_thresholds = (25000, 10, 10) +define config.idle_gc_count = 10000 +define config.gc_print_unreachable = False + +################################################ +## Build configuration ## +## For information please refer to: ## +## https://www.renpy.org/doc/html/build.html ## +################################################ + +init python: + build.directory_name = "WTS" + build.executable_name = "WT Silver" + build.include_update = False # If True, include update information into packages (allows the updater to run) + build.exclude_empty_directories = False + + build.classify("game/images.whitespace", "all") + build.classify('**~', None) + build.classify("**.exe", None) + build.classify("**.psd", None) + build.classify("**.old", None) + build.classify('**.bak', None) + build.classify("**.kra", None) + build.classify("**.txt", None) + build.classify("**.xml", None) + build.classify('**/thumbs.db', None) + build.classify("game/saves/**", None) + build.classify("game/outfits/**", None) + build.classify("game/music/not_used/**", None) + build.classify("build/", None) + build.classify("build-*", None) + build.classify("README.md", None) + build.classify("build_patch.py", None) + + build.allow_integrated_gpu = True # Only affects MacOS diff --git a/game/scripts/rooms/boxing_ring/images.rpy b/game/scripts/rooms/boxing_ring/images.rpy new file mode 100644 index 00000000..92289504 --- /dev/null +++ b/game/scripts/rooms/boxing_ring/images.rpy @@ -0,0 +1,126 @@ +image boxing_ring crowd_back: + subpixel True + "images/rooms/boxing_ring/crowd_back.webp" + anchor (0.5, 0.0) + xoffset 540 + linear 2.0 xzoom 0.99 yzoom 1.04 + linear 2.0 xzoom 1.0 yzoom 1.0 + repeat + +image boxing_ring crowd_front: + subpixel True + "images/rooms/boxing_ring/crowd_front.webp" + anchor (0.5, 0.0) + xoffset 540 + linear 2.0 xzoom 0.99 yzoom 1.02 + linear 2.0 xzoom 1.0 yzoom 1.0 + repeat + +image boxing_ring microphone: + subpixel True + transform_anchor True + anchor (0.5, 0.0) + yoffset -100 + xoffset 618 + + "images/rooms/boxing_ring/microphone.webp" + + parallel: + ease_quad 2.0 rotate -4 + ease_quad 2.0 rotate 4 + + repeat + + parallel: + ease_quad 3.0 yoffset 0 + +image boxing_ring flash_back: + subpixel True + + pos (300, 200) + anchor (0.5, 0.5) + zoom 0.0 + alpha 0.12 + "gui/main_menu/sparkle.webp" + easeout 0.1 zoom 3.0 + easeout 0.1 zoom 0.0 + + pause 1 + + pos (500, 100) + anchor (0.5, 0.5) + zoom 0.0 + easeout 0.1 zoom 2.0 + easeout 0.1 zoom 0.0 + + pause 1.5 + + pos (800, 400) + anchor (0.5, 0.5) + zoom 0.0 + easeout 0.1 zoom 2.5 + easeout 0.1 zoom 0.0 + + pause 2 + + pos (700, 150) + anchor (0.5, 0.5) + zoom 0.0 + easeout 0.1 zoom 2.0 + easeout 0.1 zoom 0.0 + + pause 1.5 + + pos (900, 250) + anchor (0.5, 0.5) + zoom 0.0 + easeout 0.1 zoom 2.0 + easeout 0.1 zoom 0.0 + + pause 1 + + repeat + +image boxing_ring flash_front: + subpixel True + + pos (320, 600) + anchor (0.5, 0.5) + zoom 0.0 + alpha 0.24 + "gui/main_menu/sparkle.webp" + easeout 0.1 zoom 5.0 + easeout 0.1 zoom 0.0 + + pause 4 + + pos (900, 550) + anchor (0.5, 0.5) + zoom 0.0 + alpha 0.24 + "gui/main_menu/sparkle.webp" + easeout 0.1 zoom 5.0 + easeout 0.1 zoom 0.0 + + pause 1 + + repeat + +image boxing_ring dust: + subpixel True + + "images/rooms/boxing_ring/dust.webp" + anchor (0.5, 0.0) + xoffset 540 + alpha 0.25 + ytile 3 + + parallel: + ease_quad 3.0 xoffset 520 + ease_quad 3.0 xoffset 540 + repeat + + parallel: + ease_quad 7.0 yoffset -25 + ease_quad 7.0 yoffset 0 + repeat diff --git a/game/scripts/rooms/boxing_ring/init.rpy b/game/scripts/rooms/boxing_ring/init.rpy new file mode 100644 index 00000000..0a14e273 --- /dev/null +++ b/game/scripts/rooms/boxing_ring/init.rpy @@ -0,0 +1,64 @@ + +default boxing_ring = Room("boxing_ring") +default boxing_ring_lights = False + +screen boxing_ring(): + tag room + zorder 0 + sensitive False + + # default objects = sorted(boxing_ring.objects, key=lambda x: x.zorder) + + add "images/rooms/boxing_ring/bg.webp" zoom 0.5 + add "boxing_ring crowd_back" zoom 0.5 + add "images/rooms/boxing_ring/stands.webp" zoom 0.5 + add "boxing_ring flash_back" + add "images/rooms/boxing_ring/ring.webp" zoom 0.5 + + # for obj in objects: + # imagebutton: + # anchor obj.get_anchor() + # pos obj.get_pos() + # idle obj.get_idle() + # hover obj.get_hover() + # foreground obj.foreground + # background obj.background + # focus_mask obj.focus_mask + # tooltip obj.tooltip + # hovered obj.hovered + # unhovered obj.unhovered + # action obj.action + +screen boxing_ring_overlay(): + tag room_overlay + zorder 7 + + add "boxing_ring microphone" zoom 0.5 + add "images/rooms/boxing_ring/vignette.webp" zoom 0.5 + add "boxing_ring dust" zoom 0.5 + + if boxing_ring_lights: + add "images/rooms/boxing_ring/lights.webp" zoom 0.5 + + add "boxing_ring flash_front" + add "boxing_ring crowd_front" zoom 0.5 + + if not boxing_ring_lights: + add "black" alpha 0.5 + +# label snape_office: +# call room("snape_office") +# call play_music("snape_office") + +# if game.daytime: +# $ snape_office_desk_OBJ.set_image("snape_office_desk") +# $ snape_office_brewing_station_OBJ.set_image("snape_office_brewing_station_off") +# $ snape_office_brewing_station_OBJ.foreground = None +# else: +# $ snape_office_desk_OBJ.set_image("snape_desk_work") +# $ snape_office_brewing_station_OBJ.set_image("snape_office_brewing_station_on") +# $ snape_office_brewing_station_OBJ.foreground = "snape_office_brewing_station_anim" + +# call gen_walk(action="enter", xpos="door", ypos="base", speed=1.5, flip=True) + +# jump quests diff --git a/game/scripts/rooms/init.rpy b/game/scripts/rooms/init.rpy new file mode 100644 index 00000000..3fcc9d7d --- /dev/null +++ b/game/scripts/rooms/init.rpy @@ -0,0 +1,106 @@ + +init -1 python: + + class Room(object): + def __init__(self, id): + self.id = id + self.objects = set() + + def add(self, obj): + self.objects.add(obj) + + def remove(self, obj): + self.objects.remove(obj) + + class RoomObject(object): + + def __init__(self, room, id, pos, idle, hover=None, foreground=None, background=None, anchor=(0.5, 0.5), focus_mask=True, action=NullAction(), hovered=None, unhovered=None, tooltip=None, decoration=None, zorder=0, hidden=False): + self.room = room + self.id = id + self.pos = pos + self.idle = idle + self.hover = hover or self.idle + self.foreground = foreground + self.background = background + self.anchor = anchor + self.focus_mask = focus_mask + self.action = action + self.hovered = hovered + self.unhovered = unhovered + self.tooltip = tooltip + self.decoration = decoration + self.zorder = zorder + self.hidden = hidden + + # Add to the main room if room was specified + if self.room: + self.room.add(self) + + # Backwards compatibility, to be resolved if possible. + self.xpos, self.ypos = self.pos + + def set_image(self, idle, hover=None): + self.idle = idle + self.hover = hover or idle + + def get_idle(self): + if self.hidden: + return Null() + + if self.decoration: + if self.decoration.replaces: + return Fixed(self.decoration.room_image, fit_first=True) + else: + return Fixed(self.idle, self.decoration.room_image, fit_first=True) + return Fixed(self.idle, fit_first=True) + + def get_hover(self): + if self.hidden: + return Null() + + if self.decoration: + if self.decoration.replaces: + return At(Fixed(self.decoration.room_image_hover, fit_first=True), pulse_hover) + else: + return At(Fixed(self.hover, self.decoration.room_image_hover, fit_first=True), pulse_hover) + return At(Fixed(self.hover, fit_first=True), pulse_hover) + + ### Shader needs more work. + # if self.decoration: + # return Transform(Fixed(self.hover, self.decoration.room_image, fit_first=True), shader="outline_shader") + # return Transform(self.hover, shader="outline_shader") + + def set_decoration(self, decoration): + if not isinstance(decoration, (Decoration, NoneType)): + raise TypeError("Decoration must be a Decoration instance reference or a NoneType") + + self.decoration = decoration + + def get_action(self): + deco = self.decoration + + if deco and deco.replace_action: + return deco.replace_action + + return self.action + + def get_anchor(self): + deco = self.decoration + + if deco and deco.replace_anchor: + return deco.replace_anchor + return self.anchor + + def get_pos(self): + deco = self.decoration + + if deco and deco.replace_pos: + return deco.replace_pos + return self.pos + +default room_menu_active = False + +screen room_menu(): + tag room_menu + on "show" action SetVariable("room_menu_active", True) + on "hide" action SetVariable("room_menu_active", False) diff --git a/game/scripts/rooms/labels.rpy b/game/scripts/rooms/labels.rpy new file mode 100644 index 00000000..ddb673de --- /dev/null +++ b/game/scripts/rooms/labels.rpy @@ -0,0 +1,64 @@ +# Set the scene for a given room +label room(room=None, hide_screens=True, stop_sound=True): + + # Hide all screens (only room related screens are shown) + if hide_screens: + call hide_screens + + # Stop sound effects (necessary when changing rooms) + if stop_sound: + call stop_sound_effects + + $ renpy.stop_predict("images/rooms/{}/*.webp".format(current_room)) + $ current_room = room + $ renpy.start_predict("images/rooms/{}/*.webp".format(current_room)) + + if room == "main_room": + # Update sound effects + call weather_sound + + show screen main_room + + if mailbox.get_letters() and not owl_away: + $ owl_OBJ.hidden = False + call play_sound("owl") + + if mailbox.get_parcels(): + $ parcel_OBJ.hidden = False + + # User interface + call update_ui_points + show screen ui_top_bar + + elif room == "weasley_store": + show screen weasley_store_room + + elif room == "clothing_store": + show screen clothing_store + + elif room == "seventh_floor": + show screen seventh_floor + + elif room == "room_of_requirement": + show screen room_of_requirement + show screen room_of_requirement_overlay + + elif room == "quidditch_pitch": + show screen quid_pitch_back + show screen quid_pitch_mid + show screen quid_pitch_front + + elif room == "quidditch_stands": + call quidditch_stands(reset=True) + + elif room == "quidditch_stands2": + call quidditch_stands2(reset=True) + + elif room == "snape_office": + show screen snape_office + + elif room == "boxing_ring": + show screen boxing_ring + show screen boxing_ring_overlay + + return diff --git a/game/scripts/rooms/main_room/images.rpy b/game/scripts/rooms/main_room/images.rpy new file mode 100644 index 00000000..ddcf6817 --- /dev/null +++ b/game/scripts/rooms/main_room/images.rpy @@ -0,0 +1,670 @@ + +image fireplace_fire: + offset (-24, -6) + "images/rooms/objects/fireplace/fireplace_fire_01.webp" + pause.1 + "images/rooms/objects/fireplace/fireplace_fire_02.webp" + pause.1 + "images/rooms/objects/fireplace/fireplace_fire_03.webp" + pause.1 + "images/rooms/objects/fireplace/fireplace_fire_04.webp" + pause.1 + "images/rooms/objects/fireplace/fireplace_fire_05.webp" + pause.1 + "images/rooms/objects/fireplace/fireplace_fire_06.webp" + pause.1 + "images/rooms/objects/fireplace/fireplace_fire_07.webp" + pause.1 + "images/rooms/objects/fireplace/fireplace_fire_08.webp" + pause.1 + repeat + +image glow_effect: + "images/animation/glow_effect/glow_1.webp" + pause.1 + "images/animation/glow_effect/glow_2.webp" + pause.1 + "images/animation/glow_effect/glow_3.webp" + pause.1 + "images/animation/glow_effect/glow_4.webp" + pause.2 + "images/animation/glow_effect/glow_3.webp" + pause.1 + "images/animation/glow_effect/glow_2.webp" + pause.1 + "images/animation/glow_effect/glow_4.webp" + pause.2 + "images/animation/glow_effect/glow_3.webp" + pause.1 + "images/animation/glow_effect/glow_2.webp" + pause.1 + "images/animation/glow_effect/glow_1.webp" + pause.1 + repeat + +image glow_effect_fireplace: + zoom 0.5 + align (0.5, 0.5) + offset (0, 30) + alpha 0.5 + + "glow_effect" + +image candle_fire_01: + "images/rooms/objects/candles/fire_01.webp" + pause.1 + "images/rooms/objects/candles/fire_02.webp" + pause.1 + "images/rooms/objects/candles/fire_03.webp" + pause.1 + "images/rooms/objects/candles/fire_04.webp" + pause.1 + "images/rooms/objects/candles/fire_05.webp" + pause.1 + "images/rooms/objects/candles/fire_06.webp" + pause.1 + "images/rooms/objects/candles/fire_07.webp" + pause.1 + "images/rooms/objects/candles/fire_08.webp" + pause.1 + "images/rooms/objects/candles/fire_09.webp" + pause.1 + "images/rooms/objects/candles/fire_10.webp" + choice: + pause.1 + choice: + pause.2 + choice: + pause.15 + repeat + +image candle_fire_02: + "images/rooms/objects/candles/fire_01.webp" + pause.1 + "images/rooms/objects/candles/fire_04.webp" + pause.1 + "images/rooms/objects/candles/fire_03.webp" + pause.1 + "images/rooms/objects/candles/fire_02.webp" + pause.1 + "images/rooms/objects/candles/fire_08.webp" + pause.1 + "images/rooms/objects/candles/fire_06.webp" + pause.1 + "images/rooms/objects/candles/fire_07.webp" + pause.1 + "images/rooms/objects/candles/fire_05.webp" + pause.1 + "images/rooms/objects/candles/fire_10.webp" + pause.1 + "images/rooms/objects/candles/fire_09.webp" + choice: + pause.1 + choice: + pause.2 + choice: + pause.15 + repeat + +image phoenix_idle: + zoom 0.5 + + "images/rooms/objects/phoenix/phoenix_01.webp" + pause 2 + "images/rooms/objects/phoenix/phoenix_02.webp" + pause.15 + "images/rooms/objects/phoenix/phoenix_03.webp" + pause.15 + "images/rooms/objects/phoenix/phoenix_02.webp" + pause.15 + "images/rooms/objects/phoenix/phoenix_01.webp" + pause.15 + "images/rooms/objects/phoenix/phoenix_02.webp" + pause.15 + "images/rooms/objects/phoenix/phoenix_03.webp" + pause.15 + "images/rooms/objects/phoenix/phoenix_02.webp" + pause.15 + "images/rooms/objects/phoenix/phoenix_01.webp" + pause 10 + repeat + +image phoenix_hover: + zoom 0.5 + + "images/rooms/objects/phoenix/phoenix_hover.webp" + +image phoenix_feather: + zoom 0.5 + pause 10 + alpha 1.0 + "images/rooms/objects/phoenix/feather_ani/pho_01.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_02.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_03.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_04.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_05.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_06.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_07.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_08.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_09.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_10.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_11.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_12.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_13.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_14.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_15.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_16.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_17.webp" + pause.15 + "images/rooms/objects/phoenix/feather_ani/pho_18.webp" + pause 10 + linear .5 alpha 0.0 + repeat + +image phoenix_food: + zoom 0.5 + + "images/rooms/objects/phoenix/food.webp" + +image door_idle: + zoom 0.5 + + "images/rooms/objects/doors/door_idle.webp" + +image door_hover: + zoom 0.5 + + "images/rooms/objects/doors/door_hover.webp" + +image fireplace_idle: + zoom 0.5 + + "images/rooms/objects/fireplace/fireplace_idle.webp" + +image fireplace_idle_shadow: + zoom 0.5 + + "images/rooms/objects/fireplace/fireplace_w_shadow.webp" + +image fireplace_hover: + zoom 0.5 + + "images/rooms/objects/fireplace/fireplace_hover.webp" + +image owl_idle: + zoom 0.5 + + "images/rooms/objects/mail/owl_idle_01.webp" + pause.1 + "images/rooms/objects/mail/owl_idle_02.webp" + pause.1 + "images/rooms/objects/mail/owl_idle_03.webp" + pause.15 + "images/rooms/objects/mail/owl_idle_02.webp" + pause.1 + "images/rooms/objects/mail/owl_idle_01.webp" + pause 7 + repeat + +image owl_letter: + zoom 0.5 + + "images/rooms/objects/mail/owl_01.webp" + pause.1 + "images/rooms/objects/mail/owl_02.webp" + pause.1 + "images/rooms/objects/mail/owl_03.webp" + pause.15 + "images/rooms/objects/mail/owl_02.webp" + pause.1 + "images/rooms/objects/mail/owl_01.webp" + pause 7 + repeat + +image owl_letter_hover: + zoom 0.5 + + "images/rooms/objects/mail/owl_hover.webp" + +image parcel: + "images/rooms/objects/parcel/idle.webp" + +image cupboard_idle: + zoom 0.5 + "images/rooms/objects/cupboard/cupboard_w_shadow.webp" + +image cupboard_open: + zoom 0.5 + "images/rooms/objects/cupboard/cupboard_open.webp" + +image main_room_idle_day: + zoom 0.5 + "images/rooms/_bg_/main_room_day.webp" + +image main_room_idle_night: + zoom 0.5 + "images/rooms/_bg_/main_room_night.webp" + +image candle_left: + zoom 0.5 + + "images/rooms/objects/candles/candleM.webp" + +image candle_right: + zoom 0.5 + + "images/rooms/objects/candles/candle.webp" + +image candle_fire: #Candle fire. + "images/rooms/objects/candles/fire_01.webp" + pause.1 + "images/rooms/objects/candles/fire_04.webp" + pause.1 + "images/rooms/objects/candles/fire_03.webp" + pause.1 + "images/rooms/objects/candles/fire_02.webp" + pause.1 + "images/rooms/objects/candles/fire_08.webp" + pause.1 + "images/rooms/objects/candles/fire_06.webp" + pause.1 + "images/rooms/objects/candles/fire_07.webp" + pause.1 + "images/rooms/objects/candles/fire_05.webp" + pause.1 + "images/rooms/objects/candles/fire_10.webp" + pause.1 + "images/rooms/objects/candles/fire_09.webp" + pause.1 + repeat + +image desk_empty: + zoom 0.5 + + "images/rooms/main_room/desk_empty.webp" + +image chair_right: + zoom 0.5 + + "images/rooms/main_room/chair_right.webp" + +image chair_left: + zoom 0.5 + + "images/rooms/main_room/chair_left.webp" + +image letter_on_desk: + zoom 0.5 + + "/images/rooms/objects/desk/letter.webp" + +image plant_on_desk: + zoom 0.5 + + "/images/rooms/objects/desk/plant.webp" + +image letter_and_plant_on_desk: + + contains: + zoom 0.5 + + "/images/rooms/objects/desk/letter.webp" + + contains: + zoom 0.5 + + "/images/rooms/objects/desk/plant.webp" + +image desk_dumbledore: + zoom 0.5 + + "images/rooms/main_room/dum.webp" + +image halloween_chandelier: + + contains: + anchor (0.5, 0.0) + "images/rooms/objects/decorations/halloween_chandelier.webp" + + contains: + offset (-266, 6) + "candle_fire_01" + + contains: + offset (-102, 51) + "candle_fire_02" + + contains: + offset (62, 4) + "candle_fire_02" + + ease_quad 6.0 rotate 18 + ease_quad 6.0 rotate -18 + + repeat + +image halloween_fireplace_jackolanterns: + offset (36, 78) + "images/rooms/objects/decorations/halloween_fireplace2.webp" + +image halloween_window_monster: + "images/rooms/objects/decorations/halloween_monster/0.webp" + pause 3 + "images/rooms/objects/decorations/halloween_monster/1.webp" + pause 0.1 + "images/rooms/objects/decorations/halloween_monster/2.webp" + pause 0.1 + "images/rooms/objects/decorations/halloween_monster/3.webp" + pause 0.25 + "images/rooms/objects/decorations/halloween_monster/2.webp" + pause 0.1 + "images/rooms/objects/decorations/halloween_monster/1.webp" + pause 0.25 + "images/rooms/objects/decorations/halloween_monster/2.webp" + pause 0.1 + "images/rooms/objects/decorations/halloween_monster/3.webp" + pause 0.5 + "images/rooms/objects/decorations/halloween_monster/2.webp" + pause 0.1 + "images/rooms/objects/decorations/halloween_monster/1.webp" + pause 0.1 + + repeat + +image halloween_cupboard_caskets: + offset (12, 318) + + "images/rooms/objects/decorations/halloween_cupboard2.webp" + +image halloween_chair_caskets: + offset (55, 105) + "images/rooms/objects/decorations/halloween_chair.webp" + +image halloween_bats_trophy: + offset (-74, -34) + "images/rooms/objects/decorations/bats_trophy.webp" + +image halloween_lamp_left: + offset (-10, -6) + "images/rooms/objects/decorations/halloween_lamp/left.webp" + +image halloween_lamp_left_glow: + zoom 0.5 + offset (-111, -81) + + contains: + alpha 0.9 + + "images/rooms/objects/decorations/halloween_lamp/glow.webp" + + pause 2.0 + ease_bounce 3.0 alpha 0.75 + ease_bounce 1.0 alpha 0.9 + + repeat + + contains: + "images/rooms/objects/decorations/halloween_lamp/filament.webp" + +image halloween_lamp_right: + offset (-10, -6) + "images/rooms/objects/decorations/halloween_lamp/right.webp" + +image halloween_lamp_right_glow: + zoom 0.5 + offset (-111, -81) + + contains: + alpha 0.9 + + "images/rooms/objects/decorations/halloween_lamp/glow.webp" + + choice: + pause 2.0 + choice: + pause 3.0 + choice: + pause 1.5 + + ease_bounce 3.0 alpha 0.75 + ease_bounce 1.0 alpha 0.9 + + repeat + + contains: + "images/rooms/objects/decorations/halloween_lamp/filament.webp" + +image snow_owl_idle: + zoom 0.5 + offset (-3, -3) + + "images/rooms/objects/decorations/snow_owl/idle_0.webp" + pause.1 + "images/rooms/objects/decorations/snow_owl/idle_1.webp" + pause.1 + "images/rooms/objects/decorations/snow_owl/idle_2.webp" + pause.15 + "images/rooms/objects/decorations/snow_owl/idle_1.webp" + pause.1 + "images/rooms/objects/decorations/snow_owl/idle_0.webp" + pause 7 + repeat + +image snow_owl_letter: + zoom 0.5 + offset (-3, -3) + + "images/rooms/objects/decorations/snow_owl/letter_0.webp" + pause.1 + "images/rooms/objects/decorations/snow_owl/letter_1.webp" + pause.1 + "images/rooms/objects/decorations/snow_owl/letter_2.webp" + pause.15 + "images/rooms/objects/decorations/snow_owl/letter_1.webp" + pause.1 + "images/rooms/objects/decorations/snow_owl/letter_0.webp" + pause 7 + repeat + +image snow_owl_letter_hover: + zoom 0.5 + offset (-3, -3) + + "images/rooms/objects/decorations/snow_owl/letter_hover.webp" + +image small_owl_idle: + zoom 0.5 + offset (-1, -3) + + "images/rooms/objects/decorations/small_owl/idle_0.webp" + pause.1 + "images/rooms/objects/decorations/small_owl/idle_1.webp" + pause.1 + "images/rooms/objects/decorations/small_owl/idle_2.webp" + pause.15 + "images/rooms/objects/decorations/small_owl/idle_1.webp" + pause.1 + "images/rooms/objects/decorations/small_owl/idle_0.webp" + pause 7 + repeat + +image small_owl_letter: + zoom 0.5 + offset (-1, -3) + + "images/rooms/objects/decorations/small_owl/letter_0.webp" + pause.1 + "images/rooms/objects/decorations/small_owl/letter_1.webp" + pause.1 + "images/rooms/objects/decorations/small_owl/letter_2.webp" + pause.15 + "images/rooms/objects/decorations/small_owl/letter_1.webp" + pause.1 + "images/rooms/objects/decorations/small_owl/letter_0.webp" + pause 7 + repeat + +image small_owl_letter_hover: + zoom 0.5 + offset (-1, -3) + + "images/rooms/objects/decorations/small_owl/letter_hover.webp" + +image xmas_lights_static: + + contains: + alpha 0.5 + "images/rooms/objects/decorations/xmas_lights/underlay.webp" + + contains: + "xmas_lights_set1_bulbs" + + contains: + "xmas_lights_set2_bulbs" + + contains: + "images/rooms/objects/decorations/xmas_lights/base.webp" + + contains: + "xmas_lights_set1_glow" + + contains: + "xmas_lights_set2_glow" + +image xmas_lights_alternate: + contains: + alpha 0.5 + "images/rooms/objects/decorations/xmas_lights/underlay.webp" + + contains: + alpha 1.0 + "xmas_lights_set1_bulbs" + linear 0.5 alpha 0.5 + linear 0.5 alpha 1.0 + repeat + + contains: + alpha 0.5 + "xmas_lights_set2_bulbs" + linear 0.5 alpha 1.0 + linear 0.5 alpha 0.5 + repeat + + contains: + "images/rooms/objects/decorations/xmas_lights/base.webp" + + contains: + alpha 1.0 + "xmas_lights_set1_glow" + linear 0.5 alpha 0.0 + linear 0.5 alpha 1.0 + repeat + + contains: + alpha 0.0 + "xmas_lights_set2_glow" + linear 0.5 alpha 1.0 + linear 0.5 alpha 0.0 + repeat + +image xmas_lights_cycle: + contains: + alpha 0.5 + "images/rooms/objects/decorations/xmas_lights/underlay.webp" + + contains: + matrixcolor HueMatrix(0) + "xmas_lights_set1_bulbs" + linear 18.0 matrixcolor HueMatrix(360) + repeat + + contains: + matrixcolor HueMatrix(0) + "xmas_lights_set2_bulbs" + linear 18.0 matrixcolor HueMatrix(360) + repeat + + contains: + "images/rooms/objects/decorations/xmas_lights/base.webp" + + contains: + matrixcolor HueMatrix(0) + "xmas_lights_set1_glow" + linear 18.0 matrixcolor HueMatrix(360) + repeat + + contains: + matrixcolor HueMatrix(0) + "xmas_lights_set2_glow" + linear 18.0 matrixcolor HueMatrix(360) + repeat + +image xmas_lights_pulse: + contains: + alpha 0.5 + "images/rooms/objects/decorations/xmas_lights/underlay.webp" + + contains: + alpha 1.0 + "xmas_lights_set1_bulbs" + easeout 3.5 alpha 0.0 + pause 3 + easein 3.5 alpha 1.0 + pause 3 + repeat + + contains: + alpha 1.0 + "xmas_lights_set2_bulbs" + easeout 3.5 alpha 0.0 + pause 3 + easein 3.5 alpha 1.0 + pause 3 + repeat + + contains: + "images/rooms/objects/decorations/xmas_lights/base.webp" + + contains: + alpha 1.0 + "xmas_lights_set1_glow" + easeout 3.5 alpha 0.0 + pause 3 + easein 3.5 alpha 1.0 + pause 3 + repeat + + contains: + alpha 1.0 + "xmas_lights_set2_glow" + easeout 3.5 alpha 0.0 + pause 3 + easein 3.5 alpha 1.0 + pause 3 + repeat + +image xmas_wreaths: + pos (35, -65) + + "images/rooms/objects/decorations/xmas_wreaths.webp" + +image xmas_giftchair: + pos (35, 108) + + "images/rooms/objects/decorations/xmas_giftchair.webp" diff --git a/game/scripts/rooms/main_room/init.rpy b/game/scripts/rooms/main_room/init.rpy new file mode 100644 index 00000000..6b0a6b43 --- /dev/null +++ b/game/scripts/rooms/main_room/init.rpy @@ -0,0 +1,79 @@ +default main_room = Room("main_room") + +default fireplace_OBJ = RoomObject(main_room, "fireplace", pos=(693, 277), idle="fireplace_idle_shadow", focus_mask="fireplace_hover", foreground=None, action=Jump("fireplace"), tooltip="Light/Extinguish") +default cupboard_OBJ = RoomObject(main_room, "cupboard", pos=(260, 280), idle="cupboard_idle", action=Jump("cupboard"), tooltip="Rummage") +default phoenix_OBJ = RoomObject(main_room, "phoenix", pos=(557, 272), idle="phoenix_idle", hover="phoenix_hover", focus_mask="phoenix_idle", background="phoenix_feather", action=Jump("phoenix"), tooltip="Interact") +default door_OBJ = RoomObject(main_room, "door", pos=(898, 315), idle="door_idle", focus_mask="door_hover", action=Jump("door"), tooltip="Summon") +default candleL_OBJ = RoomObject(main_room, "candle_left", pos=(350, 160), idle="candle_left", foreground=None, action=ToggleVariable("candleL_OBJ.foreground", "candle_fire", None), zorder=3) +default candleR_OBJ = RoomObject(main_room, "candle_right", pos=(833, 225), idle="candle_right", foreground=None, action=ToggleVariable("candleR_OBJ.foreground", "candle_fire", None), zorder=3) +default desk_OBJ = RoomObject(main_room, "desk", pos=(370, 336), idle="ch_gen sit_behind_desk", hover="ch_gen sit_behind_desk_hover", focus_mask="ch_gen sit_behind_desk", action=Jump("desk"), hovered=Show("gui_tooltip", img="emo_exclaim", xx=335, yy=210), unhovered=Hide("gui_tooltip"), tooltip="Desk", zorder=1) +default poster_OBJ = RoomObject(main_room, "poster", pos=(364, 285), idle=Null(127, 166), action=Jump("enlarge_poster"), zorder=-1) +default trophy_OBJ = RoomObject(main_room, "trophy", pos=(650, 120), idle=Null(), action=None, zorder=-1) +default chair_OBJ = RoomObject(main_room, "chair", pos=(793, 300), idle="chair_right", action=None, zorder=0) +default chair_left_OBJ = RoomObject(main_room, "chair", pos=(333, 300), idle="chair_left", action=None, zorder=0, hidden=True) + +default owl_OBJ = RoomObject(main_room, "owl", pos=(455, 289), idle="owl_letter", hover="owl_letter_hover", action=Jump("letter_open_all"), tooltip="Check Mail", hidden=True, anchor=(0.5, 1.0)) +default parcel_OBJ = RoomObject(main_room, "parcel", pos=(402, 290), idle="parcel", action=Jump("parcel_open_all"), tooltip="Check Parcel", hidden=True, anchor=(0.5, 1.0)) + +default rug_OBJ = RoomObject(main_room, "rug", pos=(482, 392), idle=Null(), action=None, zorder=0) +default chandelier_OBJ = RoomObject(main_room, "chandelier", pos=(536, 24), idle=Null(), action=None, zorder=5) +default window_OBJ = RoomObject(main_room, "window", pos=(459, 192), idle=Null(), action=None, zorder=0) + +screen main_room(): + tag room + zorder 0 + sensitive room_menu_active + + default objects = sorted(main_room.objects, key=lambda x: x.zorder) + + # Hotkeys + if room_menu_active and game.day > 1 and not renpy.android: + use hotkeys_main + + use weather + + # Walls + if game.daytime: + add "main_room_idle_day" + else: + add "main_room_idle_night" + + for obj in objects: + imagebutton: + anchor obj.get_anchor() + pos obj.get_pos() + idle obj.get_idle() + hover obj.get_hover() + foreground obj.foreground + background obj.background + focus_mask obj.focus_mask + tooltip obj.tooltip + hovered obj.hovered + unhovered obj.unhovered + action obj.get_action() + +label main_room: + call room("main_room", stop_sound=False) + call reset_menu_position + call music_block + call gen_walk(action="enter", xpos="desk", ypos="base", speed=1.5) + call gen_chibi("sit_behind_desk") + with d3 + + if game.daytime: + jump day_resume + else: + jump night_resume + +# Return to main_room at menu point (after quests and events) +# Used to return from main room interactions +label main_room_menu: + hide screen bld1 + with d3 + + call reset_menu_position + + if game.daytime: + jump day_resume + else: + jump night_resume diff --git a/game/scripts/rooms/main_room/objects/cupboard.rpy b/game/scripts/rooms/main_room/objects/cupboard.rpy new file mode 100644 index 00000000..bb0fc4f4 --- /dev/null +++ b/game/scripts/rooms/main_room/objects/cupboard.rpy @@ -0,0 +1,168 @@ + +default cupboard_searched = False + +label cupboard: + if game.day == 1: + if not cupboard_examined: + $ cupboard_examined = True + $ cupboard_OBJ.idle = "cupboard_idle" + call gen_chibi("stand","behind_desk","base", flip=False) + with d5 + pause.2 + + call bld + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "A cupboard..." ("base", xpos="far_left", ypos="head") + gen "Maybe I should rummage through this one later..." ("base", xpos="far_left", ypos="head") + call gen_chibi("sit_behind_desk") + else: + gen "Looks like any other cupboard, maybe a bit dustier." ("base", xpos="far_left", ypos="head") + + if bird_examined and desk_examined and cupboard_examined and door_examined and fireplace_examined: + jump genie_intro_E2 + else: + jump main_room_menu + + if cupboard_searched: + if game.daytime: + ">You have already searched the cupboard today." + else: + ">You have already searched the cupboard tonight." + jump main_room_menu + + $ cupboard_searched = True # Resets every day/night. + $ rum_times += 1 # Stat counter. + + $ cupboard_OBJ.idle = "cupboard_open" + call gen_chibi("rummage", 160, 459, flip=False) # Note: Flip is inconsistent + with d3 + show screen bld1 + with d3 + + ">You rummage through the cupboard for a while..." + + $ random_percent = renpy.random.randint(1, 100) + + # Dueling potion + if game.day <= 3 and rum_times in [1,2]: + $ potions += 1 + call give_reward(">You found some sort of healing potion...","interface/icons/item_potion.webp") + $ cupboard_OBJ.idle = "cupboard_idle" + call gen_chibi("sit_behind_desk") + jump main_room_menu + + # Dumbledore card + if game.day >= 26 and deck_unlocked and random_percent <= 40 and not card_exist(unlocked_cards,card_dumbledore) : + call give_reward("You have found a special card!", "images/cardgame/t1/special/dumbledore_v1.webp") + $ unlocked_cards += [card_dumbledore] + $ cupboard_OBJ.idle = "cupboard_idle" + call gen_chibi("sit_behind_desk") + jump main_room_menu + + # Map + if not map_unlocked and hermione_favors: + $ map_unlocked = True + call give_reward(">You found a map of the school grounds.", "interface/icons/generic_scroll.webp") + + gen "What's this? A map?" ("base", xpos="far_left", ypos="head") + $ cupboard_OBJ.idle = "cupboard_idle" + call gen_chibi("sit_behind_desk") + + call tutorial("map") + + gen "Sweet! That will be useful." ("grin", xpos="far_left", ypos="head") + jump main_room_menu + + # Randomly drop something + call rum_block(drop_item_from_cupboard(random_percent)) + $ cupboard_OBJ.idle = "cupboard_idle" + call gen_chibi("sit_behind_desk") + jump main_room_menu + +label rum_block(item): + if isinstance(item, int): + $ game.gold += item + call give_reward(">You found [item] gold...", "interface/icons/gold.webp") + + elif item == "nothing": + ">You found nothing of value..." + + else: + $ item.owned += 1 + + if item == wine_ITEM: + call give_reward(">You found a bottle of wine from professor Dumbledore's personal stash...", item) + elif item == firewhisky_ITEM: + call give_reward(">You found a bottle of firewhisky from professor Dumbledore's personal stash...", item) + else: + call give_reward(">You found [item.name]...", item) + + call tutorial("inventory") + + hide screen gift + with d3 + + return + +init python: + def drop_item_from_cupboard(random_percent): + drop_list = [item for item in inventory.get_instances_of_type("gift") if item.unlocked] + + dr = max(rum_times - game.day, 0) * 2 # Frequent rummaging penalty + progress_factor = math.log(her_tier + cho_tier + ton_tier + lun_tier + game.day) + + if firewhisky_ITEM.unlocked and firewhisky_ITEM.owned < 1: + return firewhisky_ITEM + elif wine_ITEM.owned < 1: + return wine_ITEM + + if game.difficulty == 1: + # Easy + # Soft diminishing returns, more rubber banding. Guaranteed item drop. + if game.gold < int(170 * math.log(game.day)) and random_percent <= 56 - dr: + return int(progress_factor * random_gold) + else: + filtered_list = filter(lambda x: x.owned <= 5, drop_list) + random_item = renpy.random.choice(filtered_list if filtered_list else drop_list) + return random_item + + elif game.difficulty == 2: + # Normal + # Fair diminishing returns, soft rubber banding. High chance for item drop. (Recommended) + if game.gold < int(120 * math.log(game.day)) and random_percent <= 38 - dr: + return int(progress_factor * random_gold) + else: + filtered_list = filter(lambda x: x.owned <= 3, drop_list) + random_item = renpy.random.choice(filtered_list if filtered_list else drop_list) + + if int(120 * math.log(game.day)) / 3 < random_item.price: + chance = max(6 - (random_item.owned * 5), 1) + elif game.gold > random_item.price: + chance = max(65 - (random_item.owned * 15), 5) + else: + chance = max(95 - (random_item.owned * 10), 15) + + if random_percent <= chance - dr: + return random_item + else: + return "nothing" + + elif game.difficulty == 3: + # Hard + # Harsh diminishing returns, no rubber banding. Chance for item drop. + if game.gold < int(90 * math.log(game.day)) and random_percent <= 33 - dr: + return int(progress_factor * random_gold) + else: + random_item = renpy.random.choice(drop_list) + + if int(90 * math.log(game.day)) / 3 < random_item.price: + chance = max(3 - (random_item.owned * 5), 1) + elif game.gold > random_item.price: + chance = max(40 - (random_item.owned * 15), 0) + else: + chance = max(75 - (random_item.owned * 10), 5) + + if random_percent <= chance - dr: + return random_item + else: + return "nothing" diff --git a/game/scripts/rooms/main_room/objects/desk.rpy b/game/scripts/rooms/main_room/objects/desk.rpy new file mode 100644 index 00000000..d569c996 --- /dev/null +++ b/game/scripts/rooms/main_room/objects/desk.rpy @@ -0,0 +1,345 @@ + +label desk: + if game.day == 1: + if not desk_examined: + $ desk_examined = True + $ desk_OBJ.idle = "ch_gen sit_behind_desk" + call bld + gen "A desk of some sort..." ("base", xpos="far_left", ypos="head") + gen "And a letter..." ("base", xpos="far_left", ypos="head") + gen "Mailed to a certain \"Albus Dumbledore\"." ("base", xpos="far_left", ypos="head") + + menu: + gen "Should I open it?" ("base", xpos="far_left", ypos="head") + "-Read the letter-": + call bld + gen "Of course I will!" ("grin", xpos="far_left", ypos="head") + "-Leave it be-": + call bld + gen "Hell no!" ("angry", xpos="far_left", ypos="head") + gen "Of course I will read it!" ("grin", xpos="far_left", ypos="head") + + # First letter from Hermione + $ desk_OBJ.foreground = None + $ letter_hg_1.open() + + gen "*Ehm*........." ("base", xpos="far_left", ypos="head") + gen "What?" ("base", xpos="far_left", ypos="head") + gen "................................." ("base", xpos="far_left", ypos="head") + else: + gen "I've already checked the desk." ("base", xpos="far_left", ypos="head") + + if bird_examined and desk_examined and cupboard_examined and door_examined and fireplace_examined: + jump genie_intro_E2 + else: + jump main_room_menu + + #Define hints variable + $ ball_hint = None + + # TODO: Refactor. Low priority. + + call update_character_map_locations + + + #Screens + call play_sound("scroll") + show screen desk_menu + with d1 + + $ _choice = ui.interact() + + hide screen desk_menu + #Do NOT add a transition here! + + + #Hermione + if _choice == "hermione" and hermione_busy: + if game.daytime: + call nar(">Hermione is taking classes.") + jump main_room_menu + else: + call nar(">Hermione is already asleep.") + jump main_room_menu + elif _choice == "hermione" and not hermione_busy: + if her_map_location == "forest": + call nar(">Hermione is currently at the Forbidden Forest.\n>Would you like to go there?") + menu: + "-Yes, pay her a visit-": + jump hermione_map_BJ + "-No, summon her to your office-": + pass + + jump summon_hermione + + #Luna + elif luna_unlocked and _choice == "luna" and luna_busy: + if game.daytime: + call nar(">Luna is taking classes.") + jump main_room_menu + else: + call nar(">Luna is already asleep.") + jump main_room_menu + elif luna_unlocked and _choice == "luna" and not luna_busy: + jump summon_luna + + #Astoria + elif astoria_busy and _choice == "astoria": + if game.daytime: + call nar(">Astoria is taking classes.") + jump main_room_menu + else: + call nar(">Astoria is already asleep.") + jump main_room_menu + elif not astoria_busy and _choice == "astoria": #Summoning after intro events done. + jump summon_astoria + + #Susan + elif _choice == "susan" and susan_busy: + if game.daytime: + call nar(">Susan is taking classes.") + jump main_room_menu + else: + call nar(">Susan is already asleep.") + jump main_room_menu + elif _choice == "susan" and not susan_busy: + jump summon_susan + + #Cho + elif _choice == "cho" and cho_busy: + if game.daytime: + call nar(">Cho is taking classes.") + jump main_room_menu + else: + call nar(">Cho is already asleep.") + jump main_room_menu + elif _choice == "cho" and not cho_busy: + jump summon_cho + + #Snape + elif _choice == "snape" and snape_busy: + call nar(">Professor Snape is unavailable.") + if game.daytime: + jump main_room_menu + else: + jump main_room_menu + elif _choice == "snape" and not snape_busy: + jump summon_snape + + #Tonks + elif _choice == "tonks" and tonks_busy: + call nar(">Tonks is unavailable.") + if game.daytime: + jump main_room_menu + else: + jump main_room_menu + elif _choice == "tonks" and not tonks_busy: + jump summon_tonks + + #Close + elif _choice == "Close": + jump main_room_menu + elif _choice in {"snape_office", "seventh_floor", "map_lake", "map_forest", "map_attic", "clothing_store", "item_store", "ravenclaw_dormitories", "gryffindor_dormitories"}: + call gen_chibi("stand", "desk", "base") + with d3 + call gen_walk(action="leave", speed=1.5) + + $ renpy.jump(_choice) + +screen desk_menu(): + tag desk_interface + + zorder 5 + + #Background + add "interface/desk/_bg_.webp" + + if map_unlocked: + use map_screen + + # Ugly hands + # add "interface/desk/_hands_.webp" xpos 0 ypos -30 + + use crystal_ball + use watch + + #Book + if item_store_intro_done: + add "interface/desk/book.webp" xalign 1.0 xpos 1080 ypos 0 + imagebutton: + xpos 1080 + ypos 0 + xalign 1.0 + idle "interface/desk/book.webp" + hover "interface/desk/book_hover.webp" + hovered SetVariable("ball_hint", "book") + keysym "inventory" + unhovered SetVariable("ball_hint", None) + action Return("inventory") + + #Tissue Box + add "interface/desk/tissues.webp" xalign 1.0 xpos 1080 ypos 320 + imagebutton: + xpos 1080 + ypos 320 + xalign 1.0 + idle "interface/desk/tissues.webp" + hover "interface/desk/tissues_hover.webp" + hovered SetVariable("ball_hint", "jerk_off") + keysym "fap" + unhovered SetVariable("ball_hint", None) + action Return("jerk_off") + + #Work + if letter_work_unlock.read: + imagebutton: + xpos -10 + ypos 0 + xalign 0.0 + idle "interface/desk/work.webp" + hover "interface/desk/work_hover.webp" + hovered SetVariable("ball_hint", "work") + keysym "work" + unhovered SetVariable("ball_hint", None) + action Return("paperwork") + + #Cards + if deck_unlocked: #Or letter_cards_unlock.read #Day 26+ + imagebutton: + xpos 0 + ypos 600 + xalign 0.0 + yalign 1.0 + idle "interface/desk/cards.webp" + hover "interface/desk/cards_hover.webp" + hovered SetVariable("ball_hint", "cards") + unhovered SetVariable("ball_hint", None) + action Return("deck_builder") + + #exit + imagebutton: + xanchor 0.5 + yanchor 1.0 + xpos 510 + ypos 600 + idle "interface/desk/exit_mask.webp" + hover "interface/desk/exit.webp" + hovered SetVariable("ball_hint", "exit") + unhovered SetVariable("ball_hint", None) + action Return("Close") + + #Night Overlay + if not game.daytime: + add "interface/desk/_night_overlay_.webp" + + use close_button + + +screen crystal_ball(): + tag desk_interface + + zorder 8 + + add "interface/desk/crystal_ball.webp" xpos 268 ypos 0 + if not ball_hint == None: + add "interface/desk/hints/glow.webp" xpos 268+40 + add "interface/desk/hints/"+str(ball_hint)+ ".webp" xpos 268+125 xanchor 0.5 + +screen watch(): + #Day/Night Clock + add "interface/desk/watch.webp" xpos 603 ypos 0 + imagebutton: + xpos 603 + ypos 0 + idle "interface/desk/watch.webp" + hover "interface/desk/watch_hover.webp" + unhovered SetVariable("ball_hint", None) + keysym "sleep" + hovered If(game.daytime, SetVariable("ball_hint", "doze_off"), SetVariable("ball_hint", "sleep")) + action If(game.daytime, Return("night_start"), Return("day_start")) + + $ watch_x = 603 +67 + $ watch_y = 35 + + if game.weather == "rain": + add "interface/desk/watch/rain.webp" xpos watch_x ypos watch_y + elif game.weather in ("snow", "blizzard"): + add "interface/desk/watch/snow.webp" xpos watch_x ypos watch_y + elif game.weather == "storm": + add "interface/desk/watch/storm.webp" xpos watch_x ypos watch_y + else: + if game.daytime: + add "interface/desk/watch/sun.webp" xpos watch_x ypos watch_y + else: + add "interface/desk/watch/moon.webp" xpos watch_x ypos watch_y + + if game.daytime: + add "interface/desk/watch/day.webp" xpos watch_x+40 ypos watch_y+6 xanchor 0.5 + else: + add "interface/desk/watch/night.webp" xpos watch_x+40 ypos watch_y+6 xanchor 0.5 + +label paperwork: + if letter_work_report in mailbox.get_letters(): + gen "I need to get paid first." ("base", xpos="far_left", ypos="head") + jump main_room_menu + + call weather_sound + + if not renpy.music.is_playing("weather"): + call music_block + else: + stop music fadeout 1.0 + + call gen_chibi("paperwork") + with d3 + ">You do some paperwork." + + call paperwork_progress_chapter + + if not game.daytime and game.moon: + call paperwork_full_moon + + call gen_chibi("sit_behind_desk") + + if game.daytime: + jump night_start + else: + jump day_start + +label paperwork_report_check: + # Check if a report was completed + if report_chapters >= 4: + ">You've completed a report." + $ report_chapters = 0 + $ reports_finished += 1 + $ stat_reports_counter += 1 + + return + +label paperwork_progress_chapter(message = ""): + $ report_chapters += 1 + call notes + + if report_chapters == 1: + "[message]>You finished one chapter so far." + else: + "[message]>You finished {number=report_chapters} chapters so far." + + call paperwork_report_check + return + +label paperwork_full_moon: + call paperwork_progress_chapter(">The Full moon makes you feel more productive.\n") + return + +label paperwork_concentration: + call paperwork_progress_chapter(">You maintain perfect concentration during your work and finish another chapter of the report.\n") + return + +label paperwork_speedwriting: + call paperwork_progress_chapter(">You use your Speedwriting skills and finish another chapter of the report.\n") + return + +screen gui_tooltip(img=None, xx=335, yy=210): + add img xpos xx ypos yy + zorder 3 diff --git a/game/scripts/rooms/main_room/objects/door.rpy b/game/scripts/rooms/main_room/objects/door.rpy new file mode 100644 index 00000000..af2dd174 --- /dev/null +++ b/game/scripts/rooms/main_room/objects/door.rpy @@ -0,0 +1,66 @@ +label door: + if game.day == 1: + if not door_examined: + $ door_examined = True + $ door_OBJ.idle = "door_idle" + call gen_chibi("stand","door","base") + with d5 + + gen "A sturdy-looking door..." ("base", xpos="far_left", ypos="head") + gen "I wonder what's behind it." ("base", xpos="far_left", ypos="head") + label examining_the_door: + menu: + "-Knock on the door-": + show screen blktone + with d3 + call play_sound("knocking") + "*Knock-knock-knock*" + "..................." + hide screen blktone + with d3 + gen "No reply..." ("base", xpos="far_left", ypos="head") + "-Put your ear on it-": + show screen blktone + with d3 + ">You put your ear on the door and listen intently..." + gen "I don't hear anything." ("base", xpos="far_left", ypos="head") + hide screen blktone + with d3 + "-Kick the door-": + show screen blktone + with d3 + $ renpy.play('sounds/kick.ogg') + pause.2 + with hpunch + "*Thump!*" + $ renpy.sound.play("sounds/MaleGasp.ogg") + gen "Blimey! That hurts!" ("angry", xpos="far_left", ypos="head") + ".............................." + hide screen blktone + with d3 + gen "This door could take a thousand kicks and it still wouldn't break..." ("base", xpos="far_left", ypos="head") + "-Smell the door-": + show screen blktone + with d3 + $ renpy.sound.play("sounds/sniff.ogg") + gen "...{w} Smells like a door..." ("base", xpos="far_left", ypos="head") + hide screen blktone + with d3 + "-Leave it alone-": + gen "Who knows what kind of dangers could be lurking behind that door?" ("base", xpos="far_left", ypos="head") + gen "I think I'll let it be for now..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("sit_behind_desk") + with d3 + else: + gen "I should leave this door alone for now." ("base", xpos="far_left", ypos="head") + + if bird_examined and desk_examined and cupboard_examined and door_examined and fireplace_examined: + jump genie_intro_E2 + else: + jump main_room_menu + + call update_character_map_locations + + call play_sound("scroll") + jump summon diff --git a/game/scripts/rooms/main_room/objects/fireplace.rpy b/game/scripts/rooms/main_room/objects/fireplace.rpy new file mode 100644 index 00000000..6884ae0a --- /dev/null +++ b/game/scripts/rooms/main_room/objects/fireplace.rpy @@ -0,0 +1,60 @@ +label fireplace: + if game.day == 1: + if not fireplace_examined: + $ fireplace_examined = True + $ fireplace_OBJ.idle = "fireplace_idle_shadow" + call gen_chibi("stand","mid","base") + with d5 + gen "*Hmm*... Looks like an ordinary fireplace..." ("base", xpos="far_left", ypos="head") + call gen_chibi("sit_behind_desk") + with d5 + else: + gen "Looks like a normal fireplace to me." ("base", xpos="far_left", ypos="head") + + if bird_examined and desk_examined and cupboard_examined and door_examined and fireplace_examined: + jump genie_intro_E2 + else: + jump main_room_menu + + if is_puzzle_box_in_fireplace(): + call gen_chibi("stand", "fireplace", "fireplace") + with d3 + gen "(*Hmm*... There's something glimmering in the fireplace.)" ("base", xpos="far_left", ypos="head") + + $ fireplace_OBJ.foreground = None + + gen "(A loose brick... If only I could--{nw}{w=1.0})" ("base", xpos="far_left", ypos="head") + $ renpy.play('sounds/brick_scrape.ogg') + gen "(A loose brick... If only I could--{fast} *Hhng*... There we go.)" ("base", xpos="far_left", ypos="head") + call give_reward("A puzzle box has been added to your inventory!", "interface/icons/puzzle_box.webp") + + $ puzzle_box_ITEM.owned = 1 + + gen "Seems straight forward enough." ("base", xpos="far_left", ypos="head") + gen "Maybe I should give it a try?" ("base", xpos="far_left", ypos="head") + menu: + "-Try solving the puzzle-": + call gen_chibi("sit_behind_desk") + with d3 + $ puzzle_box_ITEM.use() + "-Save it for later-": + gen "I don't have time for this now." ("base", xpos="far_left", ypos="head") + + call gen_chibi("sit_behind_desk") + with d3 + + jump main_room_menu + + if fire_in_fireplace: + $ fire_in_fireplace = False + $ fireplace_OBJ.foreground = None + else: + $ fire_in_fireplace = True + $ fireplace_OBJ.foreground = "fireplace_fire" + $ stat_fireplace_counter += 1 + + jump main_room_menu + +init python: + def is_puzzle_box_in_fireplace(): + return game.day >= 25 and not game.daytime and game.moon and not puzzle_box_ITEM.unlocked and not unlocked_7th diff --git a/game/scripts/rooms/main_room/objects/jerk_off.rpy b/game/scripts/rooms/main_room/objects/jerk_off.rpy new file mode 100644 index 00000000..d3e65910 --- /dev/null +++ b/game/scripts/rooms/main_room/objects/jerk_off.rpy @@ -0,0 +1,91 @@ + +default jerk_off_choice = None # Last jerk-off fantasy + +label jerk_off: + hide screen bld1 + call gen_chibi("jerk_off_behind_desk") + with d3 + pause 1 + + call bld + gen "How should I finish this thing?" ("base", xpos="far_left", ypos="head") + + label how_to_finish: + menu: + "-Hermione's panties-" if hg_ps_get_panties.inProgress: + $ jerk_off_choice = "hermione" + $ her_panties_soaked = True + + "-LOCKED-" (style="disabled") if not hg_ps_get_panties.inProgress: + ">You lack the item required for this option." + jump how_to_finish + + "-Cho's panties-" if has_cho_panties: + $ jerk_off_choice = "cho" + $ cho_panties_soaked = True + + "-LOCKED-" (style="disabled") if not has_cho_panties: + ">You lack the item required for this option." + jump how_to_finish + + "-On the floor!-": + $ jerk_off_choice = renpy.random.choice(["jasmine", "lara"]) + + hide screen bld1 + show screen blktone + call nar(">You decide to spend some time by jerking off...") + pause.5 + + if jerk_off_choice == "hermione": + call nar(">You fantasise about Hermione...") + elif jerk_off_choice == "cho": + call nar(">You fantasise about Cho...") + elif jerk_off_choice == "jasmine": + call nar(">You fantasise about Princess Jasmine...") + elif jerk_off_choice == "lara": + call nar(">You fantasise about Lara Croft...") + + gen "Yes... that's a good slut!" ("angry", xpos="far_left", ypos="head") + pause.5 + + call nar(">You are ready to cum...") + pause.2 + + if jerk_off_choice == "hermione": + gen "Suck my almighty cock, you little whore!!!" ("angry", xpos="far_left", ypos="head") + elif jerk_off_choice == "cho": + gen "Suck my almighty cock, you exotic goddess!!!" ("angry", xpos="far_left", ypos="head") + elif jerk_off_choice == "jasmine": + gen "Suck my almighty cock, you princess-whore!!!" ("angry", xpos="far_left", ypos="head") + elif jerk_off_choice == "lara": + gen "Suck my almighty cock, you whore!!!" ("angry", xpos="far_left", ypos="head") + + hide screen blktone + call gen_chibi("cum_behind_desk") + with hpunch + pause 1 + + if jerk_off_choice == "hermione": + call nar(">You cum all over Hermione's panties, and then use them to wipe the cum off the floor...") + call gen_chibi("cum_behind_desk_done") + elif jerk_off_choice == "cho": + call nar(">You cum all over Cho's panties, and then use them to wipe the cum off the floor...") + call gen_chibi("cum_behind_desk_done") + else: + call nar(">You cum on the floor.") + + call gen_chibi("cum_behind_desk_done") + pause.2 + + call bld + gen "..." ("base", xpos="far_left", ypos="head") + gen "This was a pretty sweet jerk-off session..." ("base", xpos="far_left", ypos="head") + gen "Back to being productive!" ("base", xpos="far_left", ypos="head") + + call gen_chibi("sit_behind_desk") + hide screen bld1 + + if game.daytime: + jump night_start + else: + jump day_start diff --git a/game/scripts/rooms/main_room/objects/phoenix.rpy b/game/scripts/rooms/main_room/objects/phoenix.rpy new file mode 100644 index 00000000..d02b9af7 --- /dev/null +++ b/game/scripts/rooms/main_room/objects/phoenix.rpy @@ -0,0 +1,66 @@ +label phoenix: + + if game.day == 1: + if not bird_examined: + $ bird_examined = True + $ phoenix_OBJ.idle = "phoenix_idle" + call gen_chibi("stand","mid","base",flip=False) + with d5 + gen "*Hmm*..." ("base", xpos="far_left", ypos="head") + gen "Even this weird-looking bird radiates magic..." ("base", xpos="far_left", ypos="head") + call gen_chibi("sit_behind_desk") + with d5 + else: + gen "It's just a bird. Nothing more to say." ("base", xpos="far_left", ypos="head") + + if bird_examined and desk_examined and cupboard_examined and door_examined and fireplace_examined: + jump genie_intro_E2 + else: + jump main_room_menu + + if not phoenix_is_fed: + $ phoenix_is_fed = True + $ phoenix_fed_counter += 1 + + call gen_chibi("grab_high", phoenix_OBJ.xpos, phoenix_OBJ.ypos+365, flip=False) # Note: Flip is inconsistent + with d3 + pause .5 + + $ phoenix_OBJ.foreground = "phoenix_food" + with d3 + + $ random_number = renpy.random.randint(1, 3) + if random_number == 1: + gen "There you go..." ("base", xpos="far_left", ypos="head") + elif random_number == 2: + gen "Eat up, buddy." ("base", xpos="far_left", ypos="head") + else: + pause .8 + + call gen_chibi("sit_behind_desk") + jump main_room_menu + + if not phoenix_is_petted: + $ phoenix_is_petted = True + $ phoenix_petted_counter += 1 + call gen_chibi("petting", phoenix_OBJ.xpos, phoenix_OBJ.ypos+270, flip=False) # Note: Flip is inconsistent + with d3 + pause .5 + + $ random_number = renpy.random.randint(1, 5) + if random_number == 1: + gen "Who's a good bird?" ("base", xpos="far_left", ypos="head") + elif random_number == 2: + "*Pat *Pat *Pat..." + elif random_number == 3: + "Glad you aren't as noisy as Iago..." + else: + pause 2.4 + + call gen_chibi("sit_behind_desk") + jump main_room_menu + + gen "I have already fed and petted it today." ("base", xpos="far_left", ypos="head") + gen "Wouldn't want to overdo it." ("base", xpos="far_left", ypos="head") + + jump main_room_menu diff --git a/game/scripts/rooms/main_room/objects/poster.rpy b/game/scripts/rooms/main_room/objects/poster.rpy new file mode 100644 index 00000000..16b80350 --- /dev/null +++ b/game/scripts/rooms/main_room/objects/poster.rpy @@ -0,0 +1,18 @@ +label enlarge_poster: + show screen blktone + show screen poster + with d3 + + call ctc + + hide screen blktone + hide screen poster + with d3 + + jump main_room_menu + +screen poster(): + zorder 25 + tag poster + + add poster_OBJ.decoration.image align (0.5, 0.5) diff --git a/game/scripts/rooms/main_room/objects/weather.rpy b/game/scripts/rooms/main_room/objects/weather.rpy new file mode 100644 index 00000000..55896a22 --- /dev/null +++ b/game/scripts/rooms/main_room/objects/weather.rpy @@ -0,0 +1,179 @@ + +label weather_sound: + if game.weather == "blizzard": + play weather "sounds/blizzard.ogg" fadeout 0.5 fadein 0.5 if_changed + elif game.weather == "storm": + play weather "sounds/storm.ogg" fadeout 0.5 fadein 0.5 if_changed + elif game.weather == "rain": + play weather "sounds/storm.ogg" fadeout 0.5 fadein 0.5 if_changed # TODO: Rain sound (without thunder) + else: + stop weather fadeout 0.5 + return + +screen weather(): + zorder -1 + sensitive False + + if game.daytime: + if game.weather in ("clear", "cloudy"): + add "images/rooms/_weather_/sky.webp" pos (430, 218) anchor (0.5, 0.5) + + if game.weather == "cloudy": + add "images/rooms/_weather_/cloud_small.webp" at cloud_move + + if game.weather in ("overcast", "blizzard", "snow", "storm", "rain"): + add "images/rooms/_weather_/sky_overcast.webp" pos (430, 218) anchor (0.5, 0.5) + + elif game.moon: + if game.weather in ("clear", "cloudy"): + add "images/rooms/_weather_/night_sky_moon.webp" pos (430, 218) anchor (0.5, 0.5) + + if game.weather == "cloudy": + add "images/rooms/_weather_/night_cloud_02.webp" at cloud_night_move_01 + add "images/rooms/_weather_/night_cloud_01.webp" at cloud_night_move_02 + add "images/rooms/_weather_/night_cloud_03.webp" at cloud_night_move_03 + + if game.weather in ("overcast", "blizzard", "snow", "storm", "rain"): + add "images/rooms/_weather_/night_sky_moon_overcast.webp" pos (430, 218) anchor (0.5, 0.5) + + else: + if game.weather in ("clear", "cloudy"): + add "images/rooms/_weather_/night_sky.webp" pos (430, 218) anchor (0.5, 0.5) + + if game.weather == "cloudy": + add "images/rooms/_weather_/night_cloud_02.webp" at cloud_night_move_01 + add "images/rooms/_weather_/night_cloud_01.webp" at cloud_night_move_02 + add "images/rooms/_weather_/night_cloud_03.webp" at cloud_night_move_03 + + if game.weather in ("overcast", "blizzard", "snow", "storm", "rain"): + add "images/rooms/_weather_/night_sky_overcast.webp" pos (430, 218) anchor (0.5, 0.5) + + if game.weather in ("blizzard", "snow", "storm", "rain"): + add game.weather pos (430, 218) anchor (0.5, 0.5) + + if game.weather == "storm": + add "rain" pos (430, 218) anchor (0.5, 0.5) + + +transform cloud_move: + xpos 520 + choice: + ypos 150 + choice: + ypos 160 + choice: + ypos 170 + choice: + ypos 190 + choice: + ypos 200 + + linear 15.0 xpos 237 + pause 7 + repeat + +transform cloud_night_move_01: + xpos 520 + choice: + ypos 130 + choice: + ypos 150 + choice: + ypos 150 + linear 30.0 xpos 280 + pause 2 + repeat + +transform cloud_night_move_02: + xpos 520 + choice: + ypos 150 + choice: + ypos 170 + linear 70.0 xpos 280 + pause 2 + repeat + +transform cloud_night_move_03: + xpos 520 + ypos 160 + linear 50.0 xpos 280 + pause 2 + repeat + +image rain: + "images/rooms/_weather_/rain_01.webp" + pause.1 + "images/rooms/_weather_/rain_02.webp" + pause.1 + "images/rooms/_weather_/rain_03.webp" + pause.1 + repeat + +image snow: + "images/rooms/_weather_/snow_01.webp" + pause.07 + "images/rooms/_weather_/snow_02.webp" + pause.07 + "images/rooms/_weather_/snow_03.webp" + pause.07 + "images/rooms/_weather_/snow_04.webp" + pause.07 + "images/rooms/_weather_/snow_05.webp" + pause.07 + "images/rooms/_weather_/snow_06.webp" + pause.07 + "images/rooms/_weather_/snow_07.webp" + pause.07 + "images/rooms/_weather_/snow_08.webp" + pause.07 + "images/rooms/_weather_/snow_09.webp" + pause.07 + "images/rooms/_weather_/snow_10.webp" + pause.07 + repeat + +image blizzard: + "images/rooms/_weather_/blizzard_01.webp" + pause.05 + "images/rooms/_weather_/blizzard_02.webp" + pause.05 + "images/rooms/_weather_/blizzard_03.webp" + pause.05 + "images/rooms/_weather_/blizzard_04.webp" + pause.05 + "images/rooms/_weather_/blizzard_05.webp" + pause.05 + "images/rooms/_weather_/blizzard_06.webp" + pause.05 + "images/rooms/_weather_/blizzard_07.webp" + pause.05 + "images/rooms/_weather_/blizzard_08.webp" + pause.05 + "images/rooms/_weather_/blizzard_09.webp" + pause.05 + "images/rooms/_weather_/blizzard_10.webp" + pause.05 + repeat + +image storm: + pause 20 + "images/rooms/_weather_/lightning_01.webp" + pause.1 + "images/rooms/_weather_/lightning_02.webp" + pause.1 + "images/rooms/_weather_/lightning_03.webp" + pause.1 + "images/rooms/_weather_/lightning_04.webp" + pause.1 + "images/rooms/_weather_/lightning_05.webp" + pause.1 + "images/rooms/_weather_/lightning_06.webp" + pause.1 + "images/rooms/_weather_/lightning_05.webp" + pause.1 + "images/rooms/_weather_/lightning_06.webp" + pause.1 + "images/rooms/_weather_/lightning_05.webp" + pause 20 + repeat diff --git a/game/scripts/rooms/main_room/objects/xmas_lights.rpy b/game/scripts/rooms/main_room/objects/xmas_lights.rpy new file mode 100644 index 00000000..47f1a5ec --- /dev/null +++ b/game/scripts/rooms/main_room/objects/xmas_lights.rpy @@ -0,0 +1,108 @@ +############################################ +### Programmable Xmas Lights ### +### - Because why the fock not Edition - ### +############################################ + +default xmas_lights_hue1 = 0 +default xmas_lights_hue2 = 0 +default xmas_lights_brightness = 0.0 +default xmas_lights_alpha = 1.0 + +label xmas_lights_settings: + + menu: + "Set Animation": + label .animation: + + menu: + "Static": + $ xmas_lights_ITEM.room_image = Transform("xmas_lights_static", zoom=xmas_lights_ITEM.room_scale) + $ xmas_lights_ITEM.room_image_hover = xmas_lights_ITEM.room_image + "Alternate": + $ xmas_lights_ITEM.room_image = Transform("xmas_lights_alternate", zoom=xmas_lights_ITEM.room_scale) + $ xmas_lights_ITEM.room_image_hover = xmas_lights_ITEM.room_image + "Cycle": + $ xmas_lights_ITEM.room_image = Transform("xmas_lights_cycle", zoom=xmas_lights_ITEM.room_scale) + $ xmas_lights_ITEM.room_image_hover = xmas_lights_ITEM.room_image + "Pulse": + $ xmas_lights_ITEM.room_image = Transform("xmas_lights_pulse", zoom=xmas_lights_ITEM.room_scale) + $ xmas_lights_ITEM.room_image_hover = xmas_lights_ITEM.room_image + "Back": + jump xmas_lights_settings + + jump .animation + + "Set Hue": + label .hue: + + menu: + "Default": + $ xmas_lights_hue1 = 0 + $ xmas_lights_hue2 = 0 + "Blue and Red": + $ xmas_lights_hue1 = 160 + $ xmas_lights_hue2 = 280 + "Orange and Blue": + $ xmas_lights_hue1 = 330 + $ xmas_lights_hue2 = 160 + "Red and Green": + $ xmas_lights_hue1 = 280 + $ xmas_lights_hue2 = 20 + "Custom": + $ input_val1 = renpy.input("(Enter first hue rotation value between 0 - 360)", xmas_lights_hue1, "1234567890", length=3) + $ xmas_lights_hue1 = clamp(int(input_val1), 0, 360) + $ input_val2 = renpy.input("(Enter second hue rotation value between 0 - 360)", xmas_lights_hue2, "1234567890", length=3) + $ xmas_lights_hue2 = clamp(int(input_val2), 0, 360) + "Back": + jump xmas_lights_settings + + jump .hue + + "Set Brightness": + label .brightness: + + menu: + "100%%": + $ xmas_lights_brightness = 0.0 + $ xmas_lights_alpha = 1.0 + "80%%": + $ xmas_lights_brightness = -0.1 + $ xmas_lights_alpha = 0.8 + "60%%": + $ xmas_lights_brightness = -0.2 + $ xmas_lights_alpha = 0.6 + "40%%": + $ xmas_lights_brightness = -0.3 + $ xmas_lights_alpha = 0.4 + "30%%": + $ xmas_lights_brightness = -0.4 + $ xmas_lights_alpha = 0.2 + "Back": + jump xmas_lights_settings + + jump .brightness + + "Exit": + jump main_room_menu + +init python: + def xmas_lights_set1_bulbs(st, at): + d = Transform("images/rooms/objects/decorations/xmas_lights/bulbset_1.webp", matrixcolor=HueMatrix(xmas_lights_hue1)*BrightnessMatrix(xmas_lights_brightness)) + return d, 1.0 + + def xmas_lights_set2_bulbs(st, at): + d = Transform("images/rooms/objects/decorations/xmas_lights/bulbset_2.webp", matrixcolor=HueMatrix(xmas_lights_hue2)*BrightnessMatrix(xmas_lights_brightness)) + return d, 1.0 + + def xmas_lights_set1_glow(st, at): + d = Transform("images/rooms/objects/decorations/xmas_lights/glowset_1.webp", alpha=xmas_lights_alpha, matrixcolor=HueMatrix(xmas_lights_hue1)*BrightnessMatrix(xmas_lights_brightness)) + return d, 1.0 + + def xmas_lights_set2_glow(st, at): + d = Transform("images/rooms/objects/decorations/xmas_lights/glowset_2.webp", alpha=xmas_lights_alpha, matrixcolor=HueMatrix(xmas_lights_hue2)*BrightnessMatrix(xmas_lights_brightness)) + return d, 1.0 + +image xmas_lights_set1_bulbs = DynamicDisplayable(xmas_lights_set1_bulbs) +image xmas_lights_set2_bulbs = DynamicDisplayable(xmas_lights_set2_bulbs) +image xmas_lights_set1_glow = DynamicDisplayable(xmas_lights_set1_glow) +image xmas_lights_set2_glow = DynamicDisplayable(xmas_lights_set2_glow) diff --git a/game/scripts/rooms/quidditch_pitch/init.rpy b/game/scripts/rooms/quidditch_pitch/init.rpy new file mode 100644 index 00000000..ee361749 --- /dev/null +++ b/game/scripts/rooms/quidditch_pitch/init.rpy @@ -0,0 +1,21 @@ + +screen quid_pitch_back(): + sensitive False + zorder 0 + add "images/rooms/quidditch_pitch/back.webp" zoom 0.5 + if game.weather == "cloudy": + for i in xrange(random.randint(2, 5)): + add "object" at OBJcloud + add "images/rooms/quidditch_pitch/back_overlay.webp" zoom 0.5 + +screen quid_pitch_mid(): + sensitive False + zorder 2 + add "images/rooms/quidditch_pitch/mid.webp" zoom 0.5 + +screen quid_pitch_front(): + sensitive False + zorder 5 + add "images/rooms/quidditch_pitch/front.webp" zoom 0.5 + for i in xrange(random.randint(1, 3)): + add "object" at OBJbutterfly diff --git a/game/scripts/rooms/quidditch_stands/init.rpy b/game/scripts/rooms/quidditch_stands/init.rpy new file mode 100644 index 00000000..af8f97aa --- /dev/null +++ b/game/scripts/rooms/quidditch_stands/init.rpy @@ -0,0 +1,164 @@ + +# Quidditch stands + +default quidditch_stands = { + "weather": "sun_high", + "rain": False, + "puddles": False, + "crowd": [], + "crowd_react": [None, None, None], + "spotlight": False, + "hole": False, + "tree_fire": False +} + +# Crowd density presets +define crowd_few = ["low_1"] +define crowd_mid = ["low_1", "low_2", "tower_1"] +define crowd_full = ["low_1", "low_2", "low_3", "low_4", "tower_1", "tower_2"] + +image quidditch_stands rain_heavy: + "images/rooms/quidditch_stands/rain/heavy_0.webp" + pause 0.125 + "images/rooms/quidditch_stands/rain/heavy_1.webp" + pause 0.125 + "images/rooms/quidditch_stands/rain/heavy_2.webp" + pause 0.125 + repeat + +image quidditch_stands rain_heavy_surface_top: + "images/rooms/quidditch_stands/rain/heavysurf_top_0.webp" + pause 0.125 + "images/rooms/quidditch_stands/rain/heavysurf_top_1.webp" + pause 0.125 + "images/rooms/quidditch_stands/rain/heavysurf_top_2.webp" + pause 0.125 + repeat + +image quidditch_stands rain_heavy_surface: + "images/rooms/quidditch_stands/rain/heavysurf_0.webp" + pause 0.125 + "images/rooms/quidditch_stands/rain/heavysurf_1.webp" + pause 0.125 + "images/rooms/quidditch_stands/rain/heavysurf_2.webp" + pause 0.125 + repeat + +image crowd_bj: + "images/rooms/quidditch_stands/crowd_bj0.webp" + pause 0.5 + "images/rooms/quidditch_stands/crowd_bj1.webp" + pause 0.5 + repeat + +label quidditch_stands(hidden=False, reset=False, **kwargs): + # Update and show the area. + # Pass `hidden=True` to update only, `reset=True` to reset the area before applying arguments. + if reset: + $ reset_variables("quidditch_stands") + $ quidditch_stands.update(kwargs) + if not hidden: + show screen quidditch_stands_back(**quidditch_stands) + show screen quidditch_stands_mid(**quidditch_stands) + show screen quidditch_stands_front(**quidditch_stands) + return + + +screen quidditch_stands_back(weather, rain=False, crowd=[], crowd_bj=False, crowd_react=[None, None, None], tree_fire=False, puddles=False, **kwargs): + zorder 0 + + add "images/rooms/quidditch_stands/bg_{}.webp".format(weather) zoom 0.5 + + if tree_fire: + add "quid_stands_fire" pos (870, -15) + + for c in set(crowd): + add "images/rooms/quidditch_stands/crowd_{}.webp".format(c) zoom 0.5 + + if crowd_bj: + add "crowd_bj" zoom 0.5 + + if rain: + add "quidditch_stands rain_heavy_surface" zoom 0.5 + + add crowd_react[0] pos (570, 140) + add crowd_react[1] pos (720, 90) + add crowd_react[2] pos (960, 60) + + #TODO Add rain/puddle graphics + +screen quidditch_stands_mid(weather, **kwargs): + zorder 8 + + add "images/rooms/quidditch_stands/podium_{}.webp".format(weather) zoom 0.5 + + +screen quidditch_stands_front(weather, spotlight=False, hole=False, rain=False, **kwargs): + zorder 8 + + add "images/rooms/quidditch_stands/fg_{}.webp".format(weather) zoom 0.5 + + if hole: + add "images/rooms/quidditch_stands/hole.webp" zoom 0.5 + + if spotlight: + add "images/rooms/quidditch_stands/spotlight.webp" zoom 0.5 + + if rain: + add "quidditch_stands rain_heavy_surface_top" zoom 0.5 + + if rain: + add "quidditch_stands rain_heavy" zoom 0.5 + +#TODO Align bludger movement to new tower design +screen bludger_flying(start, end, t=1.0): + zorder 4 + tag bludger + + add "images/rooms/quidditch_stands/bludger.webp": + at transform: + anchor (0.5, 0.5) + align (0.5, 0.5) + pos start + ease t xpos end[0] ypos end[1] + + +image quid_stands_fire: + zoom 0.5 + "images/rooms/quidditch_stands/fire/0.webp" with d3 + pause 0.3 + "images/rooms/quidditch_stands/fire/1.webp" with d3 + pause 0.3 + repeat + + +label test_stands: + call ctc + call quidditch_stands(hole=False) + pause 1.5 + call quidditch_stands(weather="sun_low") + pause 1.5 + call quidditch_stands(crowd=["low_1"]) + pause 0.5 + call quidditch_stands(crowd=["low_1", "low_2"]) + pause 0.5 + call quidditch_stands(crowd=["low_1", "low_2", "low_3"]) + pause 0.5 + call quidditch_stands(weather="sun_high", crowd=["low_1", "low_2", "low_3", "low_4"]) + pause 0.5 + call quidditch_stands(crowd=["low_1", "low_2", "low_3", "low_4", "tower_2"]) + pause 0.5 + call quidditch_stands(crowd=["low_1", "low_2", "low_3", "low_4", "tower_1", "tower_2"]) + pause 0.5 + call quidditch_stands(crowd=["low_1", "low_2", "low_3", "low_4", "tower_1", "tower_2"]) + pause 1.5 + call quidditch_stands(spotlight=True) + pause 1.5 + call quidditch_stands(spotlight=False) + pause 1.5 + call quidditch_stands(hole=True) + pause 1 + call quidditch_stands(weather="overcast", crowd=["bj"]) + pause 1 + jump test_stands + diff --git a/game/scripts/rooms/quidditch_stands2/init.rpy b/game/scripts/rooms/quidditch_stands2/init.rpy new file mode 100644 index 00000000..e2b04830 --- /dev/null +++ b/game/scripts/rooms/quidditch_stands2/init.rpy @@ -0,0 +1,34 @@ + +# Quidditch stands + +default quidditch_stands2 = { + "weather": "sun_high", + "crowd": [], + "crowd_react": [None, None, None], +} + +label quidditch_stands2(hidden=False, reset=False, **kwargs): + if reset: + $ reset_variables("quidditch_stands2") + $ quidditch_stands2.update(kwargs) + if not hidden: + show screen quidditch_stands_back2(**quidditch_stands2) + show screen quidditch_stands_front2(**quidditch_stands2) + return + +screen quidditch_stands_back2(weather, crowd=[], crowd_react=[None, None, None], **kwargs): + zorder 0 + + add "images/rooms/quidditch_stands2/bg_{}.webp".format(weather) zoom 0.5 + + for c in set(crowd): + add "images/rooms/quidditch_stands2/crowd_{}.webp".format(c) zoom 0.5 + + add crowd_react[0] pos (570, 140) + add crowd_react[1] pos (720, 90) + add crowd_react[2] pos (960, 60) + +screen quidditch_stands_front2(weather, **kwargs): + zorder 8 + + add "images/rooms/quidditch_stands2/fg_{}.webp".format(weather) zoom 0.5 diff --git a/game/scripts/rooms/room_of_requirement/images.rpy b/game/scripts/rooms/room_of_requirement/images.rpy new file mode 100644 index 00000000..84426695 --- /dev/null +++ b/game/scripts/rooms/room_of_requirement/images.rpy @@ -0,0 +1,11 @@ + +image mirror: + "images/rooms/room_of_requirement/mirror.webp" + +image mirror_hover: + "images/rooms/room_of_requirement/mirror_hover.webp" + +image door_idle_night: + zoom 0.5 + + "images/rooms/objects/doors/door_idle_night.webp" diff --git a/game/scripts/rooms/room_of_requirement/init.rpy b/game/scripts/rooms/room_of_requirement/init.rpy new file mode 100644 index 00000000..b718ce8e --- /dev/null +++ b/game/scripts/rooms/room_of_requirement/init.rpy @@ -0,0 +1,167 @@ +default room_of_requirement = Room("room_of_requirement") + +default ror_door_OBJ = RoomObject(room_of_requirement, "door", pos=(897, 315), idle="door_idle_night", action=Jump("main_room"), tooltip="Return to office") +default ror_mirror_OBJ = RoomObject(room_of_requirement, "mirror", pos=(180, 492), anchor=(0.5, 1.0), idle="mirror", hover="mirror_hover", action=Jump("mirror"), tooltip="Look into the mirror") + +default mirror_image = Null() + +screen room_of_requirement(): + tag room + zorder 0 + sensitive room_menu_active + + default objects = sorted(room_of_requirement.objects, key=lambda x: x.zorder) + + add "images/rooms/room_of_requirement/corridor.webp" xzoom -1.0 + + # Show a copy of chibi screen in the mirror + $ mirror_chibi = renpy.get_screen("genie_chibi") + if mirror_chibi: + add mirror_chibi.copy() xzoom -1 xoffset 450-config.screen_width + + add mirror_image + + add "images/rooms/room_of_requirement/bg.webp" + + for obj in objects: + imagebutton: + anchor obj.get_anchor() + pos obj.get_pos() + idle obj.get_idle() + hover obj.get_hover() + foreground obj.foreground + background obj.background + focus_mask obj.focus_mask + tooltip obj.tooltip + hovered obj.hovered + unhovered obj.unhovered + action obj.action + +screen room_of_requirement_overlay(): + zorder 5 + add "images/rooms/room_of_requirement/foreground.webp" + +label room_of_requirement: + show screen blkfade + with d3 + + call music_block + + call room("room_of_requirement") + + if not mirror_intro_done: + $ mirror_intro_done = True + + call gen_chibi("stand","door","base",flip=False) + hide screen blkfade + with d3 + + stop music fadeout 1.0 + $ renpy.music.stop("weather") + $ renpy.sound.play( "sounds/door.ogg") + gen "..." ("base", xpos="far_left", ypos="head") + $ renpy.music.play("music/RoomOfReqIntro.ogg") + call gen_chibi("stand","door","base") + gen "It's just a room filled with a bunch of crap..." ("angry", xpos="far_left", ypos="head") + call gen_chibi("stand","door","base",flip=False) + gen "And a mirror?" ("base", xpos="far_left", ypos="head") + + call gen_walk("left", "base") + + call bld + gen "..." ("base", xpos="far_left", ypos="head") + gen "Odd, it appears the source of the magic is emanating from this mirror..." ("base", xpos="far_left", ypos="head") + + # Single line, doesn't deserve a defined character speaker. + "Male Voice" "So you've found the mirror of Erised..." + + $ renpy.sound.play( "sounds/MaleGasp.ogg") + stop music fadeout 1.0 + gen "Dumbledore!" ("angry", xpos="far_left", ypos="head") + $ renpy.sound.play( "sounds/soft_wind.ogg") + call sna_chibi("stand","door","base") + call gen_chibi("stand", flip=True) + gen "*Cough* I mean... Yes Severus, it is I...{w} \"Dumbledore\"." ("grin", xpos="far_left", ypos="head") + gen "I'm so glad to be back..." ("base", xpos="far_left", ypos="head") + sna "....." ("snape_05") + gen "Worth a shot..." ("base", xpos="far_left", ypos="head") + play music "music/song18.ogg" fadein 4 fadeout 1 + sna "I'm quite certain I told you to stay in your office... For how long have you been roaming the school grounds?" ("snape_06") + gen "This is the first time... hence why I was so lost." ("base", xpos="far_left", ypos="head") + sna "....." ("snape_05") + gen "Only for the past week or so..." ("base", xpos="far_left", ypos="head") + sna "....." ("snape_07") + gen "Yeah pretty much since the moment I got here." ("base", xpos="far_left", ypos="head") + sna "*Sigh* Well, at least it doesn't appear you've been caught...{w} yet." ("snape_06") + sna "So I wont stop you as long as you refrain from any of your...{w=0.6} weird requests or comments to other staff members." ("snape_05") + gen "...." ("base", xpos="far_left", ypos="head") + + if clothing_store_intro_done: + sna "....." ("snape_03") + gen "I might have ordered a few oddities from Madam Mafkin..." ("base", xpos="far_left", ypos="head") + sna "Hahahah... That old hag?" ("snape_28") + sna "She's nuts, she can sew that's for damn sure but she'd never know nor care... do whatever you want with her." ("snape_01") + gen "(I'd rather not...)" ("base", xpos="far_left", ypos="head") + sna "Continuing where I left off." ("snape_09") + + sna "Now, this mirror that you've found..." ("snape_01") + sna "I thought Albus would've moved it out of the school after the last incident..." ("snape_22") + call gen_chibi("stand", flip=False) + with d3 + show screen bld1 + + gen "What kind of incident? It's just some dusty old mirror... why would Dumbledore care about it? And what's going on with this room?" ("base", xpos="far_left", ypos="head") + sna "I don't know about the room, I'm more concerned by this mirror. Why don't you have a look in it and tell me what you see?" ("snape_01") + gen "*Squints* Just seems like an old mirror to me, a bit dusty and cloudy thou... hold on a minute." ("base", xpos="far_left", ypos="head") + + $ mirror_image = "images/rooms/room_of_requirement/agrabah.webp" + + sna "....." ("snape_23") + gen "... I see myself... I've won the house cup!" ("angry", xpos="far_left", ypos="head") + sna "Really?" ("snape_05") + gen "No, I can see myself in Agrabah. I'm surrounded by a harem of women all dedicated to pleasing me." ("base", xpos="far_left", ypos="head") + sna "You really are nothing more than a sexual deviant are you?" ("snape_02") + gen "Pretty much." ("base", xpos="far_left", ypos="head") + sna "The mirror is known as the mirror of Erised, or Desire backwards..." ("snape_09") + gen "Very clever..." ("grin", xpos="far_left", ypos="head") + sna "Quite... in short, it's designed to show you your deepest desire... but by your comment I'm sure you already got that." ("snape_05") + gen "Your magic might be foreign to me but this seems like nothing more than a party trick, I already know what I desire." ("base", xpos="far_left", ypos="head") + sna "Well, it would be quite dull... if you didn't include the changes I made that had it locked up in the first place." ("snape_20") + gen "I could probably make a good guess already but please, do tell..." ("base", xpos="far_left", ypos="head") + sna "The intended purpose was far too boring, so I modified the enchantment. This would be incredibly difficult for a lesser wizard, but genius like I am..." ("snape_23") + gen "Booooring." ("base", xpos="far_left", ypos="head") + sna "It's a porn creator..." ("snape_03") + + $ mirror_image = Null() + + call gen_chibi("stand", flip=True) + g5 "A what?!" + sna "A porn creator. Well, technically it's used to let you live out your fantasies, be they impure or not. So not necessarily porn." ("snape_01") + g5 "And you didn't tell me a thing like this existed?" + sna "Well, it didn't exist until I made it... and I thought it was moved or destroyed." ("snape_26") + gen "Get out." ("angry", xpos="far_left", ypos="head") + sna "What?" ("snape_05") + gen "I said get out, I found it so I get to keep it." ("grin", xpos="far_left", ypos="head") + sna "But, I thought maybe I could move..." ("snape_06") + gen "It's staying right where it is, I've been getting incredibly bored lately and might consider roaming the school a bit more... actually, I feel the urge to take a trip to the girls dormitory right now." ("angry", xpos="far_left", ypos="head") + sna "Fine, it stays. Please don't... just remember that it will take time for it to reshape and create imagery so check back every now and then." ("snape_06") + gen "Noted... Out. Now." ("base", xpos="far_left", ypos="head") + + hide snape_main + hide screen bld1 + call give_reward("You've unlocked the room of requirement","images/rooms/room_of_requirement/mirror_hover.webp") + $ achievements.unlock("mirror") + call sna_chibi("hide") + call gen_chibi("hide") + else: + $ mirror_image = Null() + play music "music/song18.ogg" fadein 4 fadeout 1 + call gen_chibi("stand", "door", "base", flip=False) + call hide_blkfade + + call gen_walk(200, "base") + + $ mirror_image = "images/rooms/room_of_requirement/agrabah.webp" + call gen_chibi("stand", "left", "base", flip=False) + call hide_blkfade + call screen room_menu diff --git a/game/scripts/rooms/seventh_floor/images.rpy b/game/scripts/rooms/seventh_floor/images.rpy new file mode 100644 index 00000000..53fa429f --- /dev/null +++ b/game/scripts/rooms/seventh_floor/images.rpy @@ -0,0 +1,29 @@ +image seventh_door: + zoom 0.5 + + "images/rooms/seventh_floor/door.webp" + +image seventh_fire_basin: + zoom 0.5 + + contains: + "images/rooms/seventh_floor/fire_basin.webp" + + contains: + "images/rooms/seventh_floor/fire0.webp" + pause.12 + "images/rooms/seventh_floor/fire1.webp" + pause.12 + "images/rooms/seventh_floor/fire2.webp" + pause.12 + "images/rooms/seventh_floor/fire3.webp" + pause.12 + "images/rooms/seventh_floor/fire4.webp" + pause.12 + "images/rooms/seventh_floor/fire5.webp" + pause.12 + repeat + +image seventh_fire_basin_right: + xzoom -1 + "seventh_fire_basin" diff --git a/game/scripts/rooms/seventh_floor/init.rpy b/game/scripts/rooms/seventh_floor/init.rpy new file mode 100644 index 00000000..ec34b502 --- /dev/null +++ b/game/scripts/rooms/seventh_floor/init.rpy @@ -0,0 +1,65 @@ +default seventh_floor = Room("seventh_floor") + +default seventh_door_OBJ = RoomObject(seventh_floor, "door", pos=(540, 374), anchor=(0.5, 1.0), idle="seventh_door", action=Jump("room_of_requirement"), tooltip="Enter", hidden=True) +default seventh_fire_basin_OBJ = RoomObject(seventh_floor, "fire_basin", pos=(478, 434), anchor=(0.5, 1.0), idle="seventh_fire_basin", action=None) +default seventh_fire_basin_right_OBJ = RoomObject(seventh_floor, "fire_basin", pos=(602, 434), anchor=(0.5, 1.0), idle="seventh_fire_basin_right", action=None) + +screen seventh_floor(): + tag room + zorder 0 + sensitive room_menu_active + + default objects = sorted(seventh_floor.objects, key=lambda x: x.zorder) + + add "images/rooms/seventh_floor/bg.webp" zoom 0.5 + + for obj in objects: + imagebutton: + anchor obj.get_anchor() + pos obj.get_pos() + idle obj.get_idle() + hover obj.get_hover() + foreground obj.foreground + background obj.background + focus_mask obj.focus_mask + tooltip obj.tooltip + hovered obj.hovered + unhovered obj.unhovered + action obj.action + +label seventh_floor: + call room("seventh_floor") + call reset_menu_position + call play_music("intro", fadein=1, fadeout=3) + call gen_chibi("stand", -100, "base") + call gen_walk(xpos="left_mid", ypos="base", speed=1.5) + + if first_time_7th: + $ first_time_7th = False + + gen "So... The diary mentioned he was walking around here." ("base", xpos="far_left", ypos="head") + + call gen_walk("right", speed=1.5) + + gen "I can definitely sense a strong magical energy in this place..." ("base", xpos="far_left", ypos="head") + + call gen_walk("left_mid", speed=1.5) + + gen "Maybe if I... or I could..." ("base", xpos="far_left", ypos="head") + + call gen_walk("right", speed=1.5) + pause .6 + call gen_chibi(flip=False) + + gen "..." ("base", xpos="far_left", ypos="head") + gen "I could be in my office jacking off right now!" ("angry", xpos="far_left", ypos="head") + + $ seventh_door_OBJ.hidden = False + with d5 + + call gen_chibi("stand_alt", flip=False) + pause.8 + + gen "Well... will you look at that!" ("grin", xpos="far_left", ypos="head") + + call screen room_menu diff --git a/game/scripts/rooms/snape_office/images.rpy b/game/scripts/rooms/snape_office/images.rpy new file mode 100644 index 00000000..3c2042ef --- /dev/null +++ b/game/scripts/rooms/snape_office/images.rpy @@ -0,0 +1,206 @@ + +image snape_office_desk: + zoom 0.5 + + "images/rooms/snape_office/desk.webp" + +image snape_office_statue: + zoom 0.5 + + "images/rooms/snape_office/statue.webp" + +image snape_office_picture: + zoom 0.5 + + "images/rooms/snape_office/picture.webp" + +image snape_office_shelves: + zoom 0.5 + size (300, 350) + + "images/rooms/snape_office/shelves.webp" + +image snape_office_shelves_anim: + zoom 0.5 + pos (3, 10) + yoffset 0 + alpha 1.0 + + "images/rooms/snape_office/drip/01.webp" + pause .2 + "images/rooms/snape_office/drip/02.webp" + pause .2 + "images/rooms/snape_office/drip/03.webp" + pause .2 + "images/rooms/snape_office/drip/04.webp" + easeout_quart 1.25 yoffset 140 + linear 0.33 alpha 0.0 + pause 3.5 + repeat + +image snape_office_shelves_alt: + zoom 0.5 + size (300, 350) + + contains: + "images/rooms/snape_office/shelves_alt.webp" + +image snape_office_brewing_station_off: + zoom 0.5 + + "images/rooms/snape_office/brewing_station_off.webp" + +image snape_office_brewing_station_on: + zoom 0.5 + size (372, 248) + + "images/rooms/snape_office/brewing_station_on.webp" + +image snape_office_brewing_station_smoke: + zoom 0.5 + pos (104, -50) + alpha 0.33 + + "images/rooms/snape_office/smoke/01.webp" + pause .15 + "images/rooms/snape_office/smoke/02.webp" + pause .1 + "images/rooms/snape_office/smoke/03.webp" + pause .1 + "images/rooms/snape_office/smoke/04.webp" + pause .1 + "images/rooms/snape_office/smoke/05.webp" + pause .1 + "images/rooms/snape_office/smoke/06.webp" + pause .1 + "images/rooms/snape_office/smoke/07.webp" + pause .1 + "images/rooms/snape_office/smoke/08.webp" + pause .1 + "images/rooms/snape_office/smoke/09.webp" + pause .11 + "images/rooms/snape_office/smoke/10.webp" + pause .12 + "images/rooms/snape_office/smoke/11.webp" + pause .13 + "images/rooms/snape_office/smoke/12.webp" + pause .14 + "images/rooms/snape_office/smoke/13.webp" + pause .15 + repeat + +image snape_office_brewing_station_bloom: + zoom 0.5 + pos (65, -20) + alpha 0.2 + "images/rooms/snape_office/brewing_station_bloom.webp" + easein 2.5 alpha 0.7 + easeout 2.5 alpha 0.2 + repeat + +image snape_office_brewing_station_anim = Fixed("snape_office_brewing_station_smoke", "snape_office_brewing_station_bloom") + +image snape_office_candelabra_off: + zoom 0.5 + + "images/rooms/snape_office/candelabra.webp" + +image snape_office_candelabra_on: + zoom 0.5 + size (141, 392) + + "images/rooms/snape_office/candelabra.webp" + +image snape_office_candelabra_anim = Fixed("snape_office_candelabra_wax", "snape_office_candelabra_fire")#: + +image snape_office_candelabra_wax: + #contains: + zoom 0.5 + alpha 1.0 + yoffset 0 + "images/rooms/snape_office/wax/01.webp" + pause .2 + "images/rooms/snape_office/wax/02.webp" + pause .2 + "images/rooms/snape_office/wax/03.webp" + pause .2 + "images/rooms/snape_office/wax/04.webp" + pause .2 + "images/rooms/snape_office/wax/05.webp" + easeout_quart 1.0 yoffset 140 + linear 0.33 alpha 0.0 + pause 4 + repeat + +image snape_office_candelabra_fire: + zoom 0.5 + alpha 0.66 + + Composite( + (141, 392), + (-32, -99), "candle_fire_01", + (-64, -99), "candle_fire_02", + (1, -99), "candle_fire_02", + (-73, -77), "candle_fire_01", + (10, -77), "candle_fire_01", + (28, -76), "candle_fire_02", + (-93, -76), "candle_fire_02", + (-12, -78), "candle_fire_01", + (-56, -78), "candle_fire_01", + ) + +image snape_office_door: + zoom 0.5 + + "images/rooms/snape_office/door.webp" + +image cauldron_off: + size (114, 114) + fit "contain" + + "interface/brewing/cauldron_off.webp" + +image cauldron_on: + size (114, 114) + yoffset 5 + + contains: + fit "contain" + + "interface/brewing/cauldron_on.webp" + + contains: + xalign 0.5 + ypos 5 + anchor (0.5, 1.0) + zoom 1.5 + yzoom 0.7 + alpha 0.11 + + "images/rooms/snape_office/smoke/01.webp" + pause .15 + "images/rooms/snape_office/smoke/02.webp" + pause .1 + "images/rooms/snape_office/smoke/03.webp" + pause .1 + "images/rooms/snape_office/smoke/04.webp" + pause .1 + "images/rooms/snape_office/smoke/05.webp" + pause .1 + "images/rooms/snape_office/smoke/06.webp" + pause .1 + "images/rooms/snape_office/smoke/07.webp" + pause .1 + "images/rooms/snape_office/smoke/08.webp" + pause .1 + "images/rooms/snape_office/smoke/09.webp" + pause .11 + "images/rooms/snape_office/smoke/10.webp" + pause .12 + "images/rooms/snape_office/smoke/11.webp" + pause .13 + "images/rooms/snape_office/smoke/12.webp" + pause .14 + "images/rooms/snape_office/smoke/13.webp" + pause .15 + repeat diff --git a/game/scripts/rooms/snape_office/init.rpy b/game/scripts/rooms/snape_office/init.rpy new file mode 100644 index 00000000..5172e999 --- /dev/null +++ b/game/scripts/rooms/snape_office/init.rpy @@ -0,0 +1,59 @@ + +default snape_office_discovered = False +default snape_office = Room("snape_office") + +default snape_office_brewing_station_OBJ = RoomObject(snape_office, "snape_office_brewing_station", pos=(367, 325), idle="snape_office_brewing_station_off", focus_mask=None, action=Jump("brewing_station"), tooltip="Brewing Station", zorder=-1) +default snape_office_shelves_OBJ = RoomObject(snape_office, "snape_office_shelves", pos=(695, 240), idle="snape_office_shelves", foreground="snape_office_shelves_anim", focus_mask=None, action=Jump("shelves"), tooltip="Shelves", zorder=-1) +default snape_office_picture_OBJ = RoomObject(snape_office, "snape_office_picture", pos=(879, 219), idle="snape_office_picture", action=Jump("snape_picture"), tooltip="Picture", zorder=-1) +default snape_office_statue_OBJ = RoomObject(snape_office, "snape_office_statue", pos=(541, 137), idle="snape_office_statue", action=Jump("snake_statue"), tooltip="Snake Head", zorder=-1) +default snape_office_desk_OBJ = RoomObject(snape_office, "snape_office_desk", pos=(737, 369), idle="snape_office_desk", action=Jump("snape_at_desk"), tooltip="Snape's Desk", zorder=0) +default snape_office_candelabra_OBJ = RoomObject(snape_office, "snape_office_candelabra", pos=(540, 300), idle="snape_office_candelabra_on", foreground="snape_office_candelabra_anim", focus_mask=None, action=Jump("candelabra"), tooltip="Examine", zorder=0) +default snape_office_door_OBJ = RoomObject(snape_office, "snape_office_door", pos=(185, 307), idle="snape_office_door", action=Jump("snape_office_door"), tooltip="Return to office", zorder=0) + +screen snape_office(): + tag room + zorder 0 + sensitive room_menu_active + + default objects = sorted(snape_office.objects, key=lambda x: x.zorder) + + add "images/rooms/snape_office/bg.webp" zoom 0.5 + + for obj in objects: + imagebutton: + anchor obj.get_anchor() + pos obj.get_pos() + idle obj.get_idle() + hover obj.get_hover() + foreground obj.foreground + background obj.background + focus_mask obj.focus_mask + tooltip obj.tooltip + hovered obj.hovered + unhovered obj.unhovered + action obj.action + + add "images/rooms/snape_office/vignette.webp" zoom 0.5 + +label snape_office: + call room("snape_office") + call play_music("snape_office") + + if game.daytime: + $ snape_office_desk_OBJ.set_image("snape_office_desk") + $ snape_office_brewing_station_OBJ.set_image("snape_office_brewing_station_off") + $ snape_office_brewing_station_OBJ.foreground = None + else: + $ snape_office_desk_OBJ.set_image("snape_desk_work") + $ snape_office_brewing_station_OBJ.set_image("snape_office_brewing_station_on") + $ snape_office_brewing_station_OBJ.foreground = "snape_office_brewing_station_anim" + + call gen_walk(action="enter", xpos="door", ypos="base", speed=1.5, flip=True) + + jump quests + +label snape_office_menu: + hide screen bld1 + with d3 + + call screen room_menu diff --git a/game/scripts/rooms/snape_office/objects/brewing_station.rpy b/game/scripts/rooms/snape_office/objects/brewing_station.rpy new file mode 100644 index 00000000..d35df2fe --- /dev/null +++ b/game/scripts/rooms/snape_office/objects/brewing_station.rpy @@ -0,0 +1,50 @@ + +label brewing_station: + + if game.daytime: + if not snape_station_examined: + $ snape_station_examined = True + $ snape_office_brewing_station_OBJ.set_image("snape_office_brewing_station_off") + + call gen_chibi("stand_alt", xpos="station", ypos="station") + with d5 + + gen "Brewing supplies...{w=0.4} Feels like home." ("base", xpos="far_left", ypos="head") + gen "Looks like it just has some base liquids for potions..." ("base", xpos="far_left", ypos="head") + gen "Water... Breastmilk... The usual stuff..." ("base", xpos="far_left", ypos="head") + gen "I'll probably need to bring some more ingredients if I want to brew anything here..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("stand", xpos="door", ypos="base") + with d5 + + jump quests + + elif not snape_office_intro_E1: + gen "(I've already examined it, I should leave it for now.)" ("base", xpos="far_left", ypos="head") + else: + $ experimental_recipes_ITEM.used = True + call tutorial("brewing") + call brewing + jump snape_office_menu + else: + # Genie is talking about alcohol, while Snape thinks he's talking about Madam Hooch + + if not snape_office_intro_E1: + gen "(*Hmm*... I didn't know Snape was into distillery. Let's see if I can guess the type of booze by the smell.)" ("base", xpos="far_left", ypos="head") + "*Sniff* *Sniff*" + gen "*Ugh*! It smells like wet hair mixed with cat poo or something!" ("angry", xpos="far_left", ypos="head") + sna "*Snickers* What did you expect? Lillies?" + gen "I thought you were soaking some hooch in here." ("base", xpos="far_left", ypos="head") + sna "W-What?!" # blushing + sna "Madam Hooch is not my type." # blushing, eyes closed + gen "Figures. I had a feeling you're more into old wines." ("base", xpos="far_left", ypos="head") + sna "Huh? What is that supposed to--" # annoyed + sna "*Tsk* You know what, forget it, just let me work in peace." + gen "(His alcoholism is a touchy subject I guess...)" ("base", xpos="far_left", ypos="head") + elif snape_office_intro_E2: + sna "What did I tell you?" + sna "You can use my brewing station when I'm not in the office..." + sna "I don't want to smell your failure." # grin + gen "Asshole..." ("base", xpos="far_left", ypos="head") + + jump snape_office_menu diff --git a/game/scripts/rooms/snape_office/objects/candelabra.rpy b/game/scripts/rooms/snape_office/objects/candelabra.rpy new file mode 100644 index 00000000..2dd7d431 --- /dev/null +++ b/game/scripts/rooms/snape_office/objects/candelabra.rpy @@ -0,0 +1,50 @@ + +label candelabra: + + if game.daytime: + + if not snape_candelabra_examined: + $ snape_candelabra_examined = True + $ snape_office_candelabra_OBJ.set_image("snape_office_candelabra_on") + + call gen_chibi("stand_alt", xpos="candelabra", ypos="candelabra") + with d5 + + gen "That's a lot of candles..." ("base", xpos="far_left", ypos="head") + gen "Yet it doesn't make the room look any more inviting." ("base", xpos="far_left", ypos="head") + + call gen_chibi("stand", xpos="door", ypos="base") + with d5 + + jump quests + + else: + $ snape_office_candelabra_OBJ.set_image("snape_office_candelabra_off") + show screen blkfade + with d2 + $ renpy.sound.play("sounds/fire_woosh.ogg") + + if not snape_office_intro_E1: + gen "..." ("base", xpos="far_left", ypos="head") + gen "I don't know what I expected to happen." ("base", xpos="far_left", ypos="head") + else: + gen "..." ("base", xpos="far_left", ypos="head") + gen "What an unexpected turn of events." ("base", xpos="far_left", ypos="head") + + $ renpy.sound.play("sounds/fire_woosh.ogg") + $ snape_office_candelabra_OBJ.set_image("snape_office_candelabra_on") + hide screen blkfade + with d9 + else: + $ snape_office_candelabra_OBJ.set_image("snape_office_candelabra_off") + show screen blkfade + with d2 + $ renpy.sound.play("sounds/fire_woosh.ogg") + sna "Why did you do that...?" + gen "Sorry..." ("base", xpos="far_left", ypos="head") + $ renpy.sound.play("sounds/fire_woosh.ogg") + $ snape_office_candelabra_OBJ.set_image("snape_office_candelabra_on") + hide screen blkfade + with d9 + + jump snape_office_menu diff --git a/game/scripts/rooms/snape_office/objects/desk.rpy b/game/scripts/rooms/snape_office/objects/desk.rpy new file mode 100644 index 00000000..ae555eb8 --- /dev/null +++ b/game/scripts/rooms/snape_office/objects/desk.rpy @@ -0,0 +1,45 @@ + +label snape_at_desk: + + if game.daytime: + if not snape_desk_examined: + $ snape_desk_examined = True + $ snape_office_desk_OBJ.set_image("snape_office_desk") + $ experimental_recipes_ITEM.owned = 1 + + call gen_chibi("stand", xpos="beside_chair", ypos="beside_chair", flip=False) + with d5 + + play sound "sounds/drawer_open.ogg" volume 0.25 + pause 1.5 + + gen "So much junk..." ("base", xpos="far_left", ypos="head") + gen "What even are these scrolls?" ("base", xpos="far_left", ypos="head") + gen "*Hmm*... Looks like invoices." ("base", xpos="far_left", ypos="head") + gen "{i}The Basilick{/i}..." ("base", xpos="far_left", ypos="head") + gen "What the hell is a {i}basi{/i}...{i}lick{/i}?" ("base", xpos="far_left", ypos="head") + gen "There has to be something useful in here..." ("base", xpos="far_left", ypos="head") + gen "What the--" ("base", xpos="far_left", ypos="head") + gen "This drawer is full of panties!" ("angry", xpos="far_left", ypos="head") + gen "And they're all labelled..." ("base", xpos="far_left", ypos="head") + gen "I knew he was a perv but what the hell does he need all these for?" ("base", xpos="far_left", ypos="head") + gen "Why hasn't he shared any of them with me!" ("base", xpos="far_left", ypos="head") + gen "Hold on, there's something else..." ("base", xpos="far_left", ypos="head") + gen "Looks like potion recipes!" ("base", xpos="far_left", ypos="head") + gen "Let's see now...{w=0.3} Experimental...{w=0.3} Untested...{w=0.3} Theoretical..." ("base", xpos="far_left", ypos="head") + gen "Sounds like these were made just for me!" ("grin", xpos="far_left", ypos="head") + + call gen_chibi("stand", xpos="door", ypos="base") + with d5 + + call give_reward(">You have acquired experimental potion recipes!", experimental_recipes_ITEM) + + jump quests + elif not snape_office_intro_E1: + gen "(I have already checked the desk and got the recipes.)" ("base", xpos="far_left", ypos="head") + else: + gen "I'd better leave his desk alone." ("base", xpos="far_left", ypos="head") + else: + sna "Can't you see that I'm busy, Genie?" + + jump snape_office_menu diff --git a/game/scripts/rooms/snape_office/objects/door.rpy b/game/scripts/rooms/snape_office/objects/door.rpy new file mode 100644 index 00000000..15847630 --- /dev/null +++ b/game/scripts/rooms/snape_office/objects/door.rpy @@ -0,0 +1,9 @@ + +label snape_office_door: + + if not snape_office_intro_E1: + gen "(I have to finish snooping around before leaving.)" ("base", xpos="far_left", ypos="head") + else: + jump return_office + + jump snape_office_menu diff --git a/game/scripts/rooms/snape_office/objects/picture.rpy b/game/scripts/rooms/snape_office/objects/picture.rpy new file mode 100644 index 00000000..75b8b237 --- /dev/null +++ b/game/scripts/rooms/snape_office/objects/picture.rpy @@ -0,0 +1,103 @@ + +label snape_picture: + + if game.daytime: + + if not snape_picture_examined: + $ snape_picture_examined = True + $ snape_office_picture_OBJ.set_image("snape_office_picture") + + call gen_chibi("stand_alt", xpos="painting", ypos="painting") + with d5 + + gen "Is that a self-portrait?" ("base", xpos="far_left", ypos="head") + sna "Fuck yeah it is!" + + #Genie turns around towards the door + call gen_chibi(flip=False) + play sound "sounds/malegasp.ogg" volume 0.40 + + gen "Severus! I can explain..." ("angry", xpos="far_left", ypos="head") + gen "Wait..." ("base", xpos="far_left", ypos="head") + gen "Are you invisible?" ("base", xpos="far_left", ypos="head") + "Severus Snape" "Of course not! I'm here you blithering buffoon!" + gen "Where?" ("base", xpos="far_left", ypos="head") + "Severus Snape" "On the wall! Where else would I be, you dimwit?" + gen "On the--" ("base", xpos="far_left", ypos="head") + + #Genie turns around to the Painting + call gen_chibi(flip=True) + with d3 + pause .2 + call gen_chibi("stand_alt") + with d3 + + gen "Oh, of course..." ("base", xpos="far_left", ypos="head") + gen "You're another one of those weirdo paintings..." ("base", xpos="far_left", ypos="head") + "The Painting" "Who are you calling weird... You old goat!" + gen "And seemingly an asshole as well." ("base", xpos="far_left", ypos="head") + "The Painting" "Hey, I am but an artist's interpretation. That's not my fault!" + gen "Right..." ("base", xpos="far_left", ypos="head") + gen "Could you tell me if there's anything useful in this office?" ("base", xpos="far_left", ypos="head") + "The Painting" "Fuck no!" + gen "Didn't think so..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("stand", xpos="door", ypos="base", flip=True) + with d5 + + jump quests + + elif not snape_office_intro_E1: + gen "(I don't have anything more to say to this asshole.)" ("base", xpos="far_left", ypos="head") + else: + $ random_number = renpy.random.randint(1, 7) + + if random_number == 1: + gen "So... What does Snape do on his free time?" ("base", xpos="far_left", ypos="head") + "The Painting" "Crossword puzzles." + gen "Really?" ("base", xpos="far_left", ypos="head") + "The Painting" "Of course not, what are you some kind of idiot?" + elif random_number == 2: + gen "How many girls has Snape brought in here?" ("base", xpos="far_left", ypos="head") + "The Painting" "More than I could count!" + gen "Can paintings count?" ("base", xpos="far_left", ypos="head") + "The Painting" "Wouldn't you like to know!" + elif random_number == 3: + gen "I thought Snape would be more organized than this..." ("base", xpos="far_left", ypos="head") + "The Painting" "Those panties are perfectly organized and labelled I'll have you know!" + gen "I was talking about the shelves..." ("base", xpos="far_left", ypos="head") + elif random_number == 4: + gen "The \"S\" on the chair stands for \"Slytherin\", right?" ("base", xpos="far_left", ypos="head") + "The Painting" "No..." + gen "Don't tell me it--" ("base", xpos="far_left", ypos="head") + "The Painting" "It stands for, \"Stop asking stupid questions\"." + gen "I don't think that's how it works..." ("base", xpos="far_left", ypos="head") + "The Painting" "Pretty sure it does." + elif random_number == 5: + gen "So, what is a \"basi-lick\" anyway?" ("base", xpos="far_left", ypos="head") + "The Painting" "It's this creature that slathers your--" + gen "Stop!" ("angry", xpos="far_left", ypos="head") + gen "Forget I asked!" ("angry", xpos="far_left", ypos="head") + elif random_number == 6: + gen "How come Snape has his office in the Dungeon?" ("base", xpos="far_left", ypos="head") + "The Painting" "He's a vampire!" + gen "I knew it!" ("base", xpos="far_left", ypos="head") + "The Painting" "..." + gen "Oh, you're just messing with me..." ("base", xpos="far_left", ypos="head") + elif random_number == 7: + gen "Where does Snape store his ingredients?" ("base", xpos="far_left", ypos="head") + "The Painting" "There's a compartment behind me..." + gen "Really?" ("base", xpos="far_left", ypos="head") + "The Painting" "Just touch my hairy nut-sack and it will open for you." + gen "... {w=0.4} I think I'll get my own ingredients for now..." ("base", xpos="far_left", ypos="head") + elif random_number == 8: + gen "So, what's it like being a painting anyway?" ("base", xpos="far_left", ypos="head") + "The Painting" "You're asking what it's like to be stuck in the same small space that the artist decided to draw for you?" + "The Painting" "For years?" + gen "{size=-3}Try centuries why don't you...{/size}" ("base", xpos="far_left", ypos="head") + "The Painting" "What was that?" + gen "Never mind..." ("base", xpos="far_left", ypos="head") + else: + gen "(I don't think Snape would appreciate me shit-talking to his portrait...)" ("base", xpos="far_left", ypos="head") + + jump snape_office_menu diff --git a/game/scripts/rooms/snape_office/objects/shelves.rpy b/game/scripts/rooms/snape_office/objects/shelves.rpy new file mode 100644 index 00000000..2ebfe2f7 --- /dev/null +++ b/game/scripts/rooms/snape_office/objects/shelves.rpy @@ -0,0 +1,40 @@ + +label shelves: + + if game.daytime: + + if not snape_shelves_examined: + $ snape_shelves_examined = True + $ random_number = renpy.random.randint(1, 4) + $ snape_office_shelves_OBJ.set_image("snape_office_shelves") + + call gen_chibi("stand_alt", xpos="shelves", ypos="shelves", flip=False) + with d5 + + if random_number == 1: + gen "Who keeps a skull as decoration." ("base", xpos="far_left", ypos="head") + gen "..." ("base", xpos="far_left", ypos="head") + elif random_number == 2: + gen "A cactus..." ("base", xpos="far_left", ypos="head") + gen "Hopefully the only living thing here." ("base", xpos="far_left", ypos="head") + elif random_number == 3: + gen "What a slob..." ("base", xpos="far_left", ypos="head") + gen "Doesn't he know it's dangerous to have potions mix like this?" ("base", xpos="far_left", ypos="head") + else: + gen "A wine bottle..." ("base", xpos="far_left", ypos="head") + gen "Wait a minute, why is he always coming to my place to drink?" ("base", xpos="far_left", ypos="head") + gen "There's plenty in here already..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("stand", xpos="door", ypos="base", flip=True) + with d5 + + jump quests + + elif not snape_office_intro_E1: + gen "(Already checked the shelves, there's nothing of value.)" ("base", xpos="far_left", ypos="head") + else: + gen "There's nothing useful to me on the shelves." ("base", xpos="far_left", ypos="head") + else: + gen "(And here I thought my office was dirty...)" ("base", xpos="far_left", ypos="head") + + jump snape_office_menu diff --git a/game/scripts/rooms/snape_office/objects/statue.rpy b/game/scripts/rooms/snape_office/objects/statue.rpy new file mode 100644 index 00000000..9b1bf42b --- /dev/null +++ b/game/scripts/rooms/snape_office/objects/statue.rpy @@ -0,0 +1,31 @@ + +label snake_statue: + + if game.daytime: + + if not snape_statue_examined: + $ snape_statue_examined = True + $ snape_office_statue_OBJ.set_image("snape_office_statue") + + call gen_chibi("stand_alt", xpos="statue", ypos="statue") + with d5 + + gen "Creepy..." ("base", xpos="far_left", ypos="head") + gen "There appears to be a slight hissing sound emanating from it..." ("base", xpos="far_left", ypos="head") + gen "Hopefully it's just an air vent to suck up any fumes or smells." ("base", xpos="far_left", ypos="head") + gen "I should probably install one of those for my office..." ("base", xpos="far_left", ypos="head") + + call gen_chibi("stand", xpos="door", ypos="base") + with d5 + + jump quests + + elif not snape_office_intro_E1: + gen "(Nothing here, it's just a fancy ventilation shaft.)" ("base", xpos="far_left", ypos="head") + else: + gen "(Looks like this snake head statue acts as a ventilation shaft.)" ("base", xpos="far_left", ypos="head") + else: + gen "That's a solid snake statue you have there." ("base", xpos="far_left", ypos="head") + sna "Thanks." + + jump snape_office_menu diff --git a/game/scripts/script.rpy b/game/scripts/script.rpy new file mode 100644 index 00000000..eff1979d --- /dev/null +++ b/game/scripts/script.rpy @@ -0,0 +1,97 @@ + +# The game starts here +label start: + call game_init + jump start_wt + +label start_quick: + call game_init + + python: + game.difficulty = 2 + ton_friendship = 5 + sna_friendship = 5 + map_unlocked = True + game.cheats = True + + jump skip_to_hermione + +# Quickstart for developer mode +label start_dev: + call game_init + + python: + game.difficulty = 2 + game.cheats = True + game.gold = 100000 + snape_unlocked = True + tonks_unlocked = True + hermione_unlocked = True + cho_unlocked = True + astoria_unlocked = True + susan_unlocked = True + luna_unlocked = True + tonks_wardrobe_unlocked = True + hermione_wardrobe_unlocked = True + cho_wardrobe_unlocked = True + astoria_wardrobe_unlocked = True + susan_wardrobe_unlocked = True + luna_wardrobe_unlocked = True + her_whoring = cho_whoring = lun_whoring = ast_whoring = sus_whoring = 24 + sna_friendship = 100 + ton_friendship = 100 + + ball_quest.E1_complete = True + ball_quest.E2_complete = True + ball_quest.E3_complete = True + ball_quest.E4_complete = True + + mirror_intro_done = True + unlocked_7th = True + first_time_7th = False + seventh_door_OBJ.hidden = False + + snape_office_discovered = True + + snape_station_examined = True + snape_shelves_examined = True + snape_picture_examined = True + snape_statue_examined = True + snape_desk_examined = True + snape_candelabra_examined = True + + snape_office_intro_E0 = True + snape_office_intro_E1 = True + snape_office_intro_E1_stage = 2 + snape_office_intro_E2 = True + + cho_intro.E1_complete = True + cho_intro.E2_complete = True + cho_intro.E3_complete = True + ss_he.cho_E1 = True + + for i in mirror.items: + i.unlocked = True + + for i in inventory.items: + i.owned = i.limit + + for i in CHARACTERS: + for x in getattr(renpy.store, i).outfits: + if not x.hidden: + x.unlock() + + jump skip_to_hermione + +label game_init: + $ version = version_float() + $ wardrobe_init() + $ parse_mods() + + if not renpy.android: + show screen tooltip + return + +init python: + renpy.music.register_channel("bg_sounds", "sfx", True) + renpy.music.register_channel("weather", "weather", True) diff --git a/game/scripts/shaders.rpy b/game/scripts/shaders.rpy new file mode 100644 index 00000000..70e3dea4 --- /dev/null +++ b/game/scripts/shaders.rpy @@ -0,0 +1,17 @@ +init python: + renpy.register_shader("outline_shader", fragment_300=""" + const float THICKNESS = 1.0 / 128.0; + vec4 col = texture2D(tex0, v_tex_coord); + + if (col.a <= 0.5) { + float a = texture2D(tex0, vec2(v_tex_coord.x + THICKNESS, v_tex_coord.y)).a + + texture2D(tex0, vec2(v_tex_coord.x, v_tex_coord.y - THICKNESS)).a + + texture2D(tex0, vec2(v_tex_coord.x - THICKNESS, v_tex_coord.y)).a + + texture2D(tex0, vec2(v_tex_coord.x, v_tex_coord.y + THICKNESS)).a; + + if (col.a < 1.0 && a > 0.0) + gl_FragColor = vec4(0.0, 1.0, 0.0, 0.8); + else + gl_FragColor = col; + } + """) diff --git a/game/scripts/shops/dress/chitchats.rpy b/game/scripts/shops/dress/chitchats.rpy new file mode 100644 index 00000000..a8494406 --- /dev/null +++ b/game/scripts/shops/dress/chitchats.rpy @@ -0,0 +1,816 @@ +label purchase_outfit(item): + # + # Hermione Granger + # + + if item == her_outfit_maid: + $ maid_outfit_ITEM.owned = 1 + + gen "I'd like to order a maid outfit." ("base", xpos="far_left", ypos="head") + maf "A maid outfit, what on earth for? Surely the house elves are keeping your office tidy." + gen "The what?" ("base", xpos="far_left", ypos="head") + gen "No, you got this all wrong... It's going to be a present." ("base", xpos="far_left", ypos="head") + maf "For whom?" + gen "I'm afraid I can't say." ("base", xpos="far_left", ypos="head") + maf "Well as long as it's not for a student..." + maf "Did you have any style in mind?" + gen "Preferably a French maid." ("base", xpos="far_left", ypos="head") + maf "..." + maf "Well I should have it available for pick-up in a few days after I get the materials in." + gen "Thank you." ("base", xpos="far_left", ypos="head") + elif item == her_outfit_nightie: + gen "I'd like to order a custom outfit today." ("base", xpos="far_left", ypos="head") + maf "Certainly honey... Repairing these conservative school clothes all day has been quite dull to say the least." + gen "Well, I can assure you that this outfit is not conservative." ("base", xpos="far_left", ypos="head") + maf "*Hmm*?" + gen "I'd like to order a girls Nightgown." ("base", xpos="far_left", ypos="head") + maf "Well, that doesn't seem overly--" + gen "And make it out of silk!" ("base", xpos="far_left", ypos="head") + maf "*Ahh*... So I assume that you also want it transparent?" + gen "If that is possible." ("base", xpos="far_left", ypos="head") + maf "Of course it is possible, who do you take me for?" + maf "I just have to order in the materials, although silks not cheap." + gen "Don't worry about the cost." ("base", xpos="far_left", ypos="head") + maf "As you wish sweetie, it should be ready shortly." + gen "Thank you." ("base", xpos="far_left", ypos="head") + elif item == her_outfit_ball: + $ ball_outfit_ITEM.owned = 1 + + if not ball_quest.E4_complete: + gen "Could you make a dress for me?" ("base", xpos="far_left", ypos="head") + maf "A dress? Do you mean something like a ball dress, or more burlesque?" + gen "*Hmm*... A ball dress does sound good, actually." ("base", xpos="far_left", ypos="head") + maf "How surprising..." + gen "I was thinking that I could have a custom one made. For a very good girl of mine." ("base", xpos="far_left", ypos="head") + else: + gen "Do you sell Ball dresses?" ("base", xpos="far_left", ypos="head") + maf "*Hmm*... I suppose I do although they're nothing special... Why do you ask?" + gen "A 'girl' approached me with a problem. Apparently she's unable to acquire a dress for this years autumn ball." ("base", xpos="far_left", ypos="head") + maf "How tragic.... Well I'm sure that one of these cheap ones will suffice." + gen "I was thinking I could have a custom one made... She is a very good girl." ("base", xpos="far_left", ypos="head") + maf "Very well! I'll make her the best dress this school's ever seen. If you say she's been such a good girl..." + maf "It should be ready in about a week." + gen "A week? Why so long?" ("base", xpos="far_left", ypos="head") + maf "I'm ordering my next batch of material in a couple of days to keep the cost down..." + maf "Or I could order it now if you pay a bit extra..." + elif item == her_outfit_msmarv: + gen "Tell me Madam Mafkin, have you ever heard of superheroes?" ("base", xpos="far_left", ypos="head") + maf "Yes yes, those people in the comic books. My grandson is quite fond of them." + gen "Fantastic, I was wondering if it would be possible for you to make me a costume." ("base", xpos="far_left", ypos="head") + maf "Certainly, who did you have in mind?" + gen "Do you know Ms Marvel?" ("base", xpos="far_left", ypos="head") + maf "I'm afraid not..." + maf "But I'm sure that my grandson has a comic of hers. I'm set to visit him this tonight so I can take a look." + gen "Thank you very much." ("base", xpos="far_left", ypos="head") + maf "No need to thank me honey. Payment will suffice." + elif item == her_outfit_hslut: + gen "Have you ever seen a burlesque show Madam?" ("base", xpos="far_left", ypos="head") + maf "I've done more than that, I've designed a few of the outfits for them!" + gen "Splendid, in that case I'd love to commission one." ("base", xpos="far_left", ypos="head") + maf "Most Certainly, any particular colour in mind?" + gen "Red!" ("base", xpos="far_left", ypos="head") + maf "As you wish." + gen "Thank you very much." ("base", xpos="far_left", ypos="head") + maf "You're quite welcome, sir." + # elif item == hg_costume_power_girl_ITEM: + # gen "I was wondering if it would be possible for you to make me a super hero costume." ("base", xpos="far_left", ypos="head") + # maf "Certainly, who did you have in mind?" + # gen "Do you know Power Girl?" ("base", xpos="far_left", ypos="head") + # maf "I'm afraid not..." + # maf "But I'm sure that my grandson has a comic of hers. I'm set to visit him this weekend so I can take a look." + # gen "Thank you very much." ("base", xpos="far_left", ypos="head") + # maf "No need to thank me sir. Payment will suffice." + elif item == her_outfit_croft: + gen "Would you be able to make me a cosplay costume?" ("base", xpos="far_left", ypos="head") + maf "Certainly, what are you after?" + gen "Do you happen to know Lara croft?" ("base", xpos="far_left", ypos="head") + maf "I'm afraid not..." + gen "She's a video game character..." ("base", xpos="far_left", ypos="head") + maf "Well, my little squib grandson loves video games. I'm sure he can show me what she looks like." + gen "Thank you very much." ("base", xpos="far_left", ypos="head") + maf "You're welcome. I'm seeing him tonight so I should be able to complete this one slightly faster than usual." + gen "Fantastic." ("base", xpos="far_left", ypos="head") + # elif item == hg_outfit_christmas_ITEM: + # gen "I was wondering if it would be possible for you to make me a festive costume." ("base", xpos="far_left", ypos="head") + # maf "Certainly, what what holiday are you looking to \"celebrate\"?" + # gen "Christmas." ("base", xpos="far_left", ypos="head") + # maf "At this time of year?" + # gen "It's never to early to start the festivities..." ("base", xpos="far_left", ypos="head") + # maf "Evidently not. I'll have it done as soon as I can. " + # gen "Thank you very much." ("base", xpos="far_left", ypos="head") + # maf "You're welcome. I'll even give you a special price. Consider it my Christmas gift to you.." + # gen "Thank you." ("base", xpos="far_left", ypos="head") + # elif item == hg_outfit_pirate_ITEM: + # gen "I want a pirate outfit" ("base", xpos="far_left", ypos="head") + # maf "ok" + elif item == her_outfit_bioshock: + gen "Have you ever heard of Bioshock infinite?" ("base", xpos="far_left", ypos="head") + maf "Biology what now?" + gen "..." ("base", xpos="far_left", ypos="head") + gen "It's a video game..." ("base", xpos="far_left", ypos="head") + maf "I assume you want the costume from it?" + gen "If it's not too much..." ("base", xpos="far_left", ypos="head") + maf "Consider it done!" + gen "Thank you very much." ("base", xpos="far_left", ypos="head") + maf "You're welcome." + elif item == her_outfit_yennefer: + gen "Have you ever heard of the sorceress Yennefer?" ("base", xpos="far_left", ypos="head") + maf "Of course! The mother of a universe hopper isn't quickly forgotten..." + gen "Think you could make me a version of her outfit?" ("base", xpos="far_left", ypos="head") + maf "Certainly." + gen "Thank you very much." ("base", xpos="far_left", ypos="head") + maf "Toss a coin to your tailor." + elif item == her_outfit_bikini1: + gen "I'd like to order a bikini." ("base", xpos="far_left", ypos="head") + maf "A bikini sir? Isn't that a bit cold in this climate?" + gen "A leather bikini!" ("base", xpos="far_left", ypos="head") + maf "Are you even--" + gen "You think you could make something like that for me?" ("base", xpos="far_left", ypos="head") + maf "Of course sir, as you wish..." + elif item == her_outfit_bikini2: + gen "I'd like to order a bikini." ("base", xpos="far_left", ypos="head") + maf "Of course, what kind of bikini would you like?" + gen "One that covers the important bits!" ("base", xpos="far_left", ypos="head") + maf "And who is this bikini for if you don't mind me asking?" + gen "I do mind..." ("base", xpos="far_left", ypos="head") + maf "Alright then..." + maf "Your bikini shall be ready shortly." + gen "Excellent..." ("base", xpos="far_left", ypos="head") + elif item == her_outfit_bunny: + gen "Could you make me a bunny costume?" ("base", xpos="far_left", ypos="head") + maf "A bunny costume? Do you mean something like the Easter bunny?" + gen "No, like the ones you might see in Vegas!" ("base", xpos="far_left", ypos="head") + maf "I'll see what I can--" + gen "With big bunny ears!" ("base", xpos="far_left", ypos="head") + maf "Okay then..." + elif item == her_outfit_swimsuit: + gen "I need a swimsuit." ("base", xpos="far_left", ypos="head") + maf "Swimming at your age?" + gen "Hey, you're only as old as you feel..." ("base", xpos="far_left", ypos="head") + gen "And no, it's not for me... I need a woman's swimsuit." ("base", xpos="far_left", ypos="head") + maf "I see, well it's about time you set up some swimming lessons..." + maf "Are you looking for a design to fit the school colours?" + gen "No thank you, something sporty shall suffice." ("base", xpos="far_left", ypos="head") + maf "..." + maf "I'll have to look through some of those muggle magazines then..." + maf "It will be ready shortly." + elif item == her_outfit_egypt: + gen "I'd like something that one of my old flames used to wear..." ("base", xpos="far_left", ypos="head") + maf "An old what, sir?" + gen "Cleopatra..." ("base", xpos="far_left", ypos="head") + gen "Ah... What a looker she was..." ("base", xpos="far_left", ypos="head") + maf "Sweetie, are you okay? Do you want me to fetch the nurse?" + gen "Would you be able to make me something Egyptian themed?" ("base", xpos="far_left", ypos="head") + gen "Like the outfits Cleopatra used to wear..." ("base", xpos="far_left", ypos="head") + maf "..." + gen "I'll trade you two camels for it." ("base", xpos="far_left", ypos="head") + maf "Cleopatra you said?" + gen "Yes..." ("base", xpos="far_left", ypos="head") + maf "That would require some metal work... Perhaps one of my contacts in Diagon alley..." + gen "So... up for the challenge?" ("base", xpos="far_left", ypos="head") + maf "*Hmm*..." + gen "Or is this too much for {b}the{/b} Mafkin?" ("base", xpos="far_left", ypos="head") + maf "It most certain isn't!" + maf "I'll have it ready for you in no time!" + maf "Although I'd prefer to be paid in gold rather than in camels." + gen "Ask and you shall receive!" ("base", xpos="far_left", ypos="head") + elif item == her_outfit_latex_dress: + gen "Ready to work with some latex?" ("base", xpos="far_left", ypos="head") + maf "Latex... now that's something I don't get to work with often..." + maf "Anything particular in mind?" + if pink_condoms_ITEM.owned > 0: + gen "Yes... something like this." ("base", xpos="far_left", ypos="head") + maf "Is that a condo--" + gen "But you'd cut a heart shape here..." ("base", xpos="far_left", ypos="head") + maf "..." + gen "And a hole for the head obviously." ("base", xpos="far_left", ypos="head") + else: + gen "It needs to be tight that's for sure." ("base", xpos="far_left", ypos="head") + maf "Naturally..." + gen "Pink would look good I think!" ("base", xpos="far_left", ypos="head") + maf "Noted..." + gen "An make a heart shaped--" ("base", xpos="far_left", ypos="head") + maf "I'll get it done shortly." + gen "But I wasn't finished!" ("base", xpos="far_left", ypos="head") + maf "I think I got the gist of it." + maf "One latex outfit--" + maf "With a heart shaped cut-out..." + maf "I'll have to sharpen my scissors for this one..." + gen "So you'll make it?" ("base", xpos="far_left", ypos="head") + maf "Certainly." + gen "Fantastic!" ("base", xpos="far_left", ypos="head") + elif item == her_outfit_tifa: + gen "I'd like a cosplay costume." ("base", xpos="far_left", ypos="head") + maf "Good idea! Who are we thinking, Gandalf the grey or--" + gen "Not for me!" ("angry", xpos="far_left", ypos="head") + maf "Oh... I should've realised..." + gen "No, I'd like a Tifa cosplay!" ("base", xpos="far_left", ypos="head") + maf "Ti-fa? Sir?" + gen "Yes, she's from a video game." ("base", xpos="far_left", ypos="head") + maf "I'll have to ask my squib grandson about that one... Hopefully he knows who she is." + gen "Oh, he'll know her, even if he's never played it... could even be his final fantasy." ("base", xpos="far_left", ypos="head") + maf "Okay then, I shall floo him and then I'll get that outfit ready for you." + gen "(She'll do what to him?)" ("base", xpos="far_left", ypos="head") + maf "Anything else?" + elif item == her_outfit_witch: + gen "Do you have time to make a cosplay costume?" ("base", xpos="far_left", ypos="head") + maf "A cosplay costume?" + gen "Well, it's more of a Halloween costume." ("base", xpos="far_left", ypos="head") + gen "One of those witch outfits muggle girls would wear during Halloween." ("base", xpos="far_left", ypos="head") + maf "Oh... those..." + gen "Any problem?" ("base", xpos="far_left", ypos="head") + maf "Those costumes look nothing like a real witch's costume..." + maf "Oh Well... If I'm to make one, it's going to be the best of the best..." + gen "Great!" ("base", xpos="far_left", ypos="head") + elif item == her_outfit_latex: + gen "I'd like an outfit... a latex one!" ("base", xpos="far_left", ypos="head") + maf "Latex?" + maf "Now you do know what kind of outfits are known to be made by latex don't you, honey?" + gen "Of course... And I'd like one of those very much." ("base", xpos="far_left", ypos="head") + maf "Okay then... just making sure." + elif item == her_outfit_teddy: + gen "I need a teddy nightgown." ("base", xpos="far_left", ypos="head") + maf "A teddy--" + gen "It's a gift..." ("base", xpos="far_left", ypos="head") + maf "Is this \"gift\" for one of the teachers?" + gen "I--" ("base", xpos="far_left", ypos="head") + maf "Oh... don't tell me... Is it miss Tonks?" + gen "It's--" ("base", xpos="far_left", ypos="head") + maf "No... that'd be silly... McGonagall perhaps?" + maf "No... I shouldn't pry..." + maf "So, you want it in green then? It's her favourite colour." + gen "Black shall do fine..." ("base", xpos="far_left", ypos="head") + maf "Black?! Is it for Professor Sn..." + gen "Madam..." ("base", xpos="far_left", ypos="head") + maf "My apologies... I'll get going on this as soon as possible! Can't let a lady wait can we?" + elif item == her_outfit_fishnet: + gen "Could you make me a fishnet outfit?" ("base", xpos="far_left", ypos="head") + maf "A fishnet... outfit, sir?" + gen "Yes, like the stockings but a whole outfit..." ("base", xpos="far_left", ypos="head") + gen "Actually, just a top and underwear shall do." ("base", xpos="far_left", ypos="head") + maf "Underwear--? surely something like that wouldn't be very effective as underwear, sir?" + gen "Effective enough to catch a fish..." ("base", xpos="far_left", ypos="head") + maf "What?" + gen "So, could you make this for me?" ("base", xpos="far_left", ypos="head") + maf "..." + maf "Of course, sir." + gen "Excellent..." ("base", xpos="far_left", ypos="head") + elif item == her_outfit_fishnet_onepiece: + gen "I'm looking to require a one-piece fishnet outfit." ("base", xpos="far_left", ypos="head") + maf "A fishnet outfit?" + gen "Yes, one-piece please Madame." ("base", xpos="far_left", ypos="head") + maf "I see." + gen "Not the sea... For the bedroom." ("base", xpos="far_left", ypos="head") + maf "Right... Well, you're the boss..." + elif item == her_outfit_bikini3: + gen "Madam, I require your finest bikini!" ("base", xpos="far_left", ypos="head") + maf "Oh my, aren't you a quick one, at least buy me a dinner first." + gen "...!" ("angry", xpos="far_left", ypos="head") + gen "You got it wrong... I want to buy a custom made bikini." ("base", xpos="far_left", ypos="head") + maf "Oh..." + maf "Are you looking for anything specific?" + gen "How about a sling bikini?" ("base", xpos="far_left", ypos="head") + maf "Are you asking me? You're the one making the order." + gen "Sling bikini it is! Great idea Madam!" ("base", xpos="far_left", ypos="head") + maf "Of course, sir..." + maf "I'll get to it then..." + elif item == her_outfit_cheerleader_1: + gen "Could you make me a Gryffindor cheerleader outfit?" ("base", xpos="far_left", ypos="head") + maf "You're not showing favouritism towards Gryffindor's Quidditch team again are you, sir?" + gen "Of course not..." ("angry", xpos="far_left", ypos="head") + maf "*Hmm*..." + gen "You have my word that there's no favouritism towards Gryffindor's team going on here." ("base", xpos="far_left", ypos="head") + maf "Alright then..." + elif item == her_outfit_cheerleader_2: + gen "Could you make me a Gryffindor cheerleader outfit?" ("base", xpos="far_left", ypos="head") + maf "You're not showing favouritism towards--" + gen "Although could you make it more like this *scribbles*." ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/scribble.ogg") + maf "Oh...{w=0.6} Oh I see..." + maf "You're not planning for this to be used during an actual Quidditch match then I assume." + gen "I have no idea what you're talking about..." ("base", xpos="far_left", ypos="head") + maf "Well, we all do have our fantasies..." + gen "I thought this was a respectable establishment." ("base", xpos="far_left", ypos="head") + gen "I didn't come here to be accused of such foul--" ("base", xpos="far_left", ypos="head") + maf "Very well, sir." + maf "I shall get to work on it shortly." + gen "..." ("base", xpos="far_left", ypos="head") + + # + # Cho Chang + # + + elif item == cho_outfit_sailor: + gen "I'd like a sailors outfit today." ("base", xpos="far_left", ypos="head") + maf "A sailors outfit? We're a bit far from the sea are we not?" + gen "True, I was just thinking about something in that style." ("base", xpos="far_left", ypos="head") + maf "The style of a sailors outfit and what else?" + gen "Something that doesn't cover all of the hull!" ("base", xpos="far_left", ypos="head") + maf "Doesn't cover the hull? What do you--" + maf "Oh, I see what you mean..." + maf "Yes... that could be done." + gen "Perfect." ("base", xpos="far_left", ypos="head") + elif item == cho_outfit_misty: + gen "I'd like a cosplay outfit please." ("base", xpos="far_left", ypos="head") + maf "Yes?" + gen "Do you know Pokemon?" ("base", xpos="far_left", ypos="head") + maf "Of course!" + gen "I... wait you do?" ("base", xpos="far_left", ypos="head") + maf "No, I have no clue what you just said..." + gen "...{w}I'd like a Misty outfit..." ("base", xpos="far_left", ypos="head") + maf "A misty outfit? I'm good, but I don't think even I could make an outfit out of mist!" + gen "She's a character from Pokemon..." ("base", xpos="far_left", ypos="head") + maf "Oh... I see, maybe my grandson will know." + gen "I'm sure he will..." ("base", xpos="far_left", ypos="head") + elif item == cho_outfit_j_school: + gen "Can you make me a school girl uniform?" ("base", xpos="far_left", ypos="head") + maf "Make you one? Don't you mean repair a uniform?" + gen "No, I'd like a Japanese school girl uniform." ("base", xpos="far_left", ypos="head") + maf "I see..." + gen "One of the Japanese wizarding schools require a new design." ("base", xpos="far_left", ypos="head") + maf "Is that so?" + maf "So why did they contact you about it?" + gen "*Err*... Their headmaster liked your work!" ("base", xpos="far_left", ypos="head") + maf "Really? What did he say?" + gen "*Eh*... {i}Sugoi!{/i}" ("base", xpos="far_left", ypos="head") + maf "..." + maf "I didn't know you spoke Japanese..." + gen "*Ha-Hah*, Yeah... {i}Subarashii pantsu!{/i}" ("base", xpos="far_left", ypos="head") + maf "What does that mean?" + gen "Nice pants!" ("base", xpos="far_left", ypos="head") + maf "Pants?!" + gen "*Ehm*... American English..." ("base", xpos="far_left", ypos="head") + maf "Oh, I see..." + gen "So... Can you make the outfit?" ("base", xpos="far_left", ypos="head") + maf "Certainly... I'll get started right away." + gen "{i}Domo Arigato Mr Roboto.{/i}" ("base", xpos="far_left", ypos="head") + elif item == cho_outfit_dress1: + gen "Could you make me a traditional Chinese dress?" ("base", xpos="far_left", ypos="head") + maf "Now, who on earth could this dress be for?" + gen "It's a gift I'll be sending to one of the Chinese wizarding schools." ("base", xpos="far_left", ypos="head") + maf "Really? Any particular reason to be sending them a dress?" + gen "Yes... *Ehm*... It's important to be on good terms with the other wizarding schools is it not?" ("base", xpos="far_left", ypos="head") + gen "So what better gift than a traditional Chinese dress?" ("base", xpos="far_left", ypos="head") + maf "Something that they don't have already perhaps..." + gen "Sorry?" ("base", xpos="far_left", ypos="head") + maf "Nothing... Of course I'll make it for something this important!" + gen "Great!" ("base", xpos="far_left", ypos="head") + elif item == cho_outfit_lacelingerie: + gen "I'd like to order some lace lingerie please." ("base", xpos="far_left", ypos="head") + maf "lingerie..." + maf "Well I sure don't keep any of that in stock... I'll have to order some." + maf "*Hmm*... There's this shop in Knockturn alley." + maf "Not that I've ever been..." + gen "Of course..." ("base", xpos="far_left", ypos="head") + maf "Yes, I should be able to procure some for you." + gen "Excellent." ("base", xpos="far_left", ypos="head") + elif item == cho_outfit_bikini: + gen "Bikini please!" ("base", xpos="far_left", ypos="head") + maf "Straight to the point..." + gen "Just straps and some fabric to cover up the goods should do..." ("base", xpos="far_left", ypos="head") + maf "I see..." + maf "And should I even ask who this is for?" + gen "If you'd like my continued patronage I'd prefer if you didn't." ("base", xpos="far_left", ypos="head") + maf "I suppose the extra income does help with my retirement fund..." + maf "Okay then... micro bikini coming right up..." + elif item == cho_outfit_toon: + gen "Ever heard of Space Jam?" ("base", xpos="far_left", ypos="head") + maf "Space... Jam, sir?" + gen "Yes." ("base", xpos="far_left", ypos="head") + maf "Is that what the youths are eating these days?" + gen "No, it's not an actual--" ("base", xpos="far_left", ypos="head") + gen "Nevermind..." ("base", xpos="far_left", ypos="head") + gen "I need an outfit made." ("base", xpos="far_left", ypos="head") + maf "Right..." + gen "This is what I'm talking about..." ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/scribble.ogg") + maf "Oh... Oh I see..." + maf "This is one of those muggle sports uniforms." + maf "Why didn't you just say so?" + gen "..." ("base", xpos="far_left", ypos="head") + gen "Could you make one like this?" ("base", xpos="far_left", ypos="head") + maf "Certainly, sir." + elif item == cho_outfit_chun_li: + gen "Miss Mafkin, ever heard of street fighter?" ("base", xpos="far_left", ypos="head") + maf "I'd rather not talk about it if you don't mind, sir." + maf "I left those days behind me a long time ago..." + gen "What are you-- I meant the video game." ("base", xpos="far_left", ypos="head") + maf "Oh..." + gen "What were you talking about?" ("base", xpos="far_left", ypos="head") + maf "Nothing... So you want an outfit made from this game?" + gen "I... Yes, something Chun-Li inspired if you please..." ("base", xpos="far_left", ypos="head") + maf "Alright then, I'll ask my grandson to give me some reference material." + + # + # Astoria Greengrass + # + + elif item == ast_outfit_ann: + gen "I'd love if you could make me a cosplay outfit." ("base", xpos="far_left", ypos="head") + maf "Certainly, sir... as long as you could point me to some reference material." + gen "Of course, it's Ann Takamaki from Persona 5." ("base", xpos="far_left", ypos="head") + maf "What is a Ann Takamaki?" + maf "Is it one of them {i}vidya{/i} games?" + gen "Yes, she's from one of them... {i}vidya{/i} games." ("base", xpos="far_left", ypos="head") + maf "I'll ask my grandson about it, he's constantly in front of those flat muggle crystal balls." + gen "You mean a monitor?" ("base", xpos="far_left", ypos="head") + maf "Sorry?" + gen "Never mind..." ("base", xpos="far_left", ypos="head") + maf "Once I've asked him I'll get that {i}souvlaki{/i} costume ready for you as soon as possible!" + gen "Takama--{w=0.4} I'm sure he'll know what you mean..." ("base", xpos="far_left", ypos="head") + + # + # Luna Lovegood + # + + elif item == lun_outfit_nightie1: + gen "I need a nightie." ("base", xpos="far_left", ypos="head") + maf "A nightie, sir?" + gen "Yes...{w=0.4} one of the girls had theirs stolen." ("base", xpos="far_left", ypos="head") + maf "Right... So what kind of nightie did she have stolen?" + gen "I believe it was loose fitting... And translucent!" ("base", xpos="far_left", ypos="head") + maf "Don't you mean Opaque, sir?" + gen "No... Pretty sure I'm correct on this one." ("base", xpos="far_left", ypos="head") + maf "...{w=0.4} Alright then... I'll get started on it now then shall I?" + gen "That'd be great, I mean we can't let her sleep naked can we?" ("base", xpos="far_left", ypos="head") + maf "..." + elif item == lun_outfit_nightie2: + gen "Could you make me a nightie?" ("base", xpos="far_left", ypos="head") + maf "Certainly... Any specifications?" + gen "Translucent please." ("base", xpos="far_left", ypos="head") + maf "Right... I meant more about the shape." + gen "Oh..." ("base", xpos="far_left", ypos="head") + maf "Although from that comment I think I see what you're going for..." + maf "I'll get started on it as soon as possible." + gen "Excellent." ("base", xpos="far_left", ypos="head") + elif item == lun_outfit_lace1: + gen "I need some lace underwear." ("base", xpos="far_left", ypos="head") + maf "Right... Is this a gift for someone?" + gen "Nah, just thought I'd experiment a bit... You're never too old to pick up a new hobby." ("base", xpos="far_left", ypos="head") + maf "Really?" + gen "No, of course it's a gift." ("base", xpos="far_left", ypos="head") + maf "Of course, sir." + maf "A set of lace underwear as a gift it is." + elif item == lun_outfit_bikini3: + gen "Could you make me a bikini, Madame?" ("base", xpos="far_left", ypos="head") + maf "I can make anything, I'm an expert tailor." + gen "Great, then I'd like one that only covers what it needs to." ("base", xpos="far_left", ypos="head") + maf "Oh, I'm not sure I have enough material sir..." + gen "What, you don't have--" ("base", xpos="far_left", ypos="head") + gen "Oh I see what you're doing..." ("base", xpos="far_left", ypos="head") + maf "I think I have some old scraps lying around which would be perfect for this..." + gen "Great!" ("base", xpos="far_left", ypos="head") + elif item == lun_outfit_swimsuit: + gen "I need a swimsuit." ("base", xpos="far_left", ypos="head") + maf "Going to the lake for a swim are we?" + gen "It's for one of the students." ("base", xpos="far_left", ypos="head") + maf "I see..." + gen "Gotta stay in shape and all that, you know how it is..." ("base", xpos="far_left", ypos="head") + maf "Alright, so something sporty then?" + gen "..." ("base", xpos="far_left", ypos="head") + gen "Yeah I suppose that will have to do." ("base", xpos="far_left", ypos="head") + elif item == lun_outfit_flight_attendant: + gen "I need a flight attendant outfit." ("base", xpos="far_left", ypos="head") + maf "A flight attendant outfit? Is that a muggle thing?" + gen "Yes, it's what the staff wears inside of a plane." ("base", xpos="far_left", ypos="head") + maf "A plain what, sir?" + gen "Yes a... Surely you must've seen a plane before?" ("base", xpos="far_left", ypos="head") + maf "..." + gen "Big metal thing in the sky..." ("base", xpos="far_left", ypos="head") + maf "Oh! The giant metal birds!" + gen "I suppose you could call them that..." ("base", xpos="far_left", ypos="head") + gen "Some people use them to travel." ("base", xpos="far_left", ypos="head") + maf "How silly..." + gen "I know right..." ("base", xpos="far_left", ypos="head") + gen "...{w} Anyway, you think you could make an outfit like that?" ("base", xpos="far_left", ypos="head") + maf "I suppose... I'll have to ask my grandson what it looks like but it shouldn't be a problem." + gen "Excellent." ("base", xpos="far_left", ypos="head") + elif item == lun_outfit_party: + if not ball_quest.E4_complete: #If the ball hasn't been brought up yet + gen "Could you make a dress for me?" ("base", xpos="far_left", ypos="head") + maf "Certainly, what type of dress would you like?" + gen "Something weird would do well I think..." ("base", xpos="far_left", ypos="head") + gen "Something completely out there and non modern..." ("base", xpos="far_left", ypos="head") + gen "Something--" ("base", xpos="far_left", ypos="head") + maf "Are you trying to wind me up, sir?" + gen "I'm deadly serious..." ("base", xpos="far_left", ypos="head") + maf "Okay then, well... in that case I'll have to throw fashion out the window..." + elif not ball_quest.started: #If the ball has been brought up but not happened + gen "One of the students needs a dress for the upcoming ball." ("base", xpos="far_left", ypos="head") + maf "Weren't they required to bring an outfit at the start of the school year?" + gen "Yes, although you know how scatter-brained students can be." ("base", xpos="far_left", ypos="head") + maf "And what kind of style of dress would she like?" + gen "Something eccentric and weird is what she'd normally go for, I believe..." ("base", xpos="far_left", ypos="head") + maf "So this student is the kind of person that just likes to be different then?" + gen "Yes... she's quite the odd ball..." ("base", xpos="far_left", ypos="head") + maf "Okay then, well... in that case I'll have to throw fashion out the window..." + else: #After the ball + gen "I need a ball dress..." ("base", xpos="far_left", ypos="head") + maf "A ball dress?" + maf "Didn't the ball already take place?" + gen "Oh yeah..." ("base", xpos="far_left", ypos="head") + maf "So..." + gen "So I need something odd, like this..." ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/scribble.ogg") + maf "That..." + maf "Well I guess we're lucky the ball already happened." + gen "Why is that?" ("base", xpos="far_left", ypos="head") + maf "Well... Nevermind... I'll make this for you then, shall I?" + gen "As soon as possible please." ("base", xpos="far_left", ypos="head") + maf "I'll see what I can do..." + gen "Good luck!" ("base", xpos="far_left", ypos="head") + elif item == lun_outfit_muggle: + gen "I need some custom clothing done, something like this..." ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/scribble.ogg") + gen "You think you could make that?" ("base", xpos="far_left", ypos="head") + maf "Shouldn't be a problem..." + maf "Isn't that skirt is a bit odd though?" + gen "I'm sure she'll love it." ("base", xpos="far_left", ypos="head") + maf "If you say so..." + elif item == lun_outfit_summer: + gen "Could you make me something good for the summer?" ("base", xpos="far_left", ypos="head") + maf "You're going to need to be more specific I'm afraid." + gen "Oh... Some shorts, and a crop top!" ("base", xpos="far_left", ypos="head") + maf "Alright then. That shouldn't be that--" + gen "And make the crop top very tight please!" ("base", xpos="far_left", ypos="head") + maf "Tight, sir?" + maf "But if I do that, it won't stay down very easy." + gen "Gives the puppies an easier time to breathe." ("base", xpos="far_left", ypos="head") + maf "Puppies, sir? I'm not sure I follow." + gen "Trust me, it's for their own good." ("base", xpos="far_left", ypos="head") + maf "... Alright then, sir... A tight crop top it is." + elif item == lun_outfit_harley_quinn: + gen "I need super villain costume." ("base", xpos="far_left", ypos="head") + maf "Headmaster by day, villain by night is it?" + gen "..." ("base", xpos="far_left", ypos="head") + maf "Or is it for somebody else?" + gen "You got it." ("base", xpos="far_left", ypos="head") + maf "Alright then, so who is this villain then?" + gen "Do you know Harley Quinn?" ("base", xpos="far_left", ypos="head") + maf "I'm afraid not..." + gen "She's that crazy chick who's in love with the joker." ("base", xpos="far_left", ypos="head") + maf "I see... so a villainess then?" + gen "Sorry?" ("base", xpos="far_left", ypos="head") + maf "Like a female villain." + gen "I don't think anyone ever calls it that." ("base", xpos="far_left", ypos="head") + maf "In any case, I'm sure that my grandson has a comic with her. I'll just have to wrestle it out of his grubby little hands." + gen "Thank you very much." ("base", xpos="far_left", ypos="head") + maf "You're quite welcome." + # gen "Could you make me a Ravenclaw Cheerleader outfit?" ("base", xpos="far_left", ypos="head") + # maf "You're not showing favouritism towards Ravenclaw's Quidditch team are you?" + # gen "I'm merely looking to see if it'd be worth to bring cheerleading to this country." ("base", xpos="far_left", ypos="head") + # maf "If that's the case then I want some royalties in case these designs are supposed to be wide spread." + # gen "Oh they'll be wide spread alright..." ("base", xpos="far_left", ypos="head") + # maf "Great then that's settled." + # gen "(Wait, what did she say?)" ("base", xpos="far_left", ypos="head") + # maf "I'll get it done as soon as possible." + # elif item == ll_lingerie_silk_ITEM: + # gen "I need some silk underwear... Do you happen to have any on hand?" ("base", xpos="far_left", ypos="head") + # maf "Male or female?" + # gen "*Err*..." ("base", xpos="far_left", ypos="head") + # maf "Female it is..." + # maf "Well, it shouldn't take that much material so I'll have them done for you rather quickly." + # gen "Great." ("base", xpos="far_left", ypos="head") + # maf "And I'll be sure to keep this transaction our little secret..." + # gen "Right..." ("base", xpos="far_left", ypos="head") + # maf "As long as you're wearing the robes it shouldn't be an issue." + # gen "That's good to know..." ("base", xpos="far_left", ypos="head") + # gen "Wait, what?" ("angry", xpos="far_left", ypos="head") + + # + # Nymphadora Tonks + # + + elif item == ton_outfit_school: + gen "Do you have any spare school uniforms?" ("base", xpos="far_left", ypos="head") + maf "There should be a couple lying around..." + maf "Did one of the students spill a potion on theirs again?" + gen "Not exactly... it's for a friend." ("base", xpos="far_left", ypos="head") + gen "And they'd probably go for something closer to this sketch..." ("base", xpos="far_left", ypos="head") + maf "Let me see..." + maf "Right...{w=0.4} So what kind of friend is this again?" + gen "A very good one." ("base", xpos="far_left", ypos="head") + maf "Alright then, I'll see what I can do." + gen "Excellent." ("base", xpos="far_left", ypos="head") + elif item == ton_outfit_casual: + gen "I'm looking for something casual and tight-fitting." ("base", xpos="far_left", ypos="head") + maf "That's pretty vague... could you be more specific of what you had in mind?" + gen "Well... it should be modern..." ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/scribble.ogg") + maf "Right... *scribbles*." + maf "What else?" + gen "How about... One of those tied tops." ("base", xpos="far_left", ypos="head") + maf "Tied top... got it." + gen "And latex leggings!" ("grin", xpos="far_left", ypos="head") + maf "Latex--" + maf "Now how is this supposed to be modern?" + gen "*Err*..." ("base", xpos="far_left", ypos="head") + maf "No matter... I'll get to work on it as soon as possible." + elif item == ton_outfit_nightie: + gen "I'm looking to acquire a nightgown." ("base", xpos="far_left", ypos="head") + maf "Right, any specifications?" + gen "It should be the type you'd wear on hot summer nights." ("base", xpos="far_left", ypos="head") + maf "So, something see-through... got it." + gen "..." ("base", xpos="far_left", ypos="head") + maf "Is that all?" + gen "Yes, that should be all." ("base", xpos="far_left", ypos="head") + maf "One see-through... nightgown coming right up." + elif item == ton_outfit_bunny: + gen "I need a bunny suit, something similar to what they'd wear at a casino." ("base", xpos="far_left", ypos="head") + maf "*Hmm*...{w=0.3} Not sure what casino's you've been to but I think I know what you mean..." + gen "With big bunny ears!" ("grin", xpos="far_left", ypos="head") + maf "Alright..." + maf "If that's all, I need to go source the materials for these...{w=0.3} ears." + gen "Yes, that will be all." ("base", xpos="far_left", ypos="head") + elif item == ton_outfit_silky: + gen "I'm looking for something Greek... like a toga." ("base", xpos="far_left", ypos="head") + maf "A toga, sir?" + gen "Yes, although maybe more of a modern take on it." ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/scribble.ogg") + maf "Right... *scribbles*..." + maf "so, something like this then?" + gen "*Hmm*... close, but maybe you should remove some of this material and replace it with something like this... *scribbles*." ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/scribble.ogg") + maf "Oh...{w=0.8}Oh my..." + gen "Is that doable?" ("base", xpos="far_left", ypos="head") + maf "Doable certainly... although it's a bit..." + gen "A bit, what?" ("base", xpos="far_left", ypos="head") + maf "Never mind... I'll do it." + gen "Excellent..." ("base", xpos="far_left", ypos="head") + elif item == ton_outfit_bikini_1: + gen "Could you make be a simple bikini-bra?" ("base", xpos="far_left", ypos="head") + maf "Certainly, looking for any particular pattern?" + gen "A Plain one should be fine." ("base", xpos="far_left", ypos="head") + maf "Alright then, I'll get to work on it shortly." + gen "Thank you very much!" ("base", xpos="far_left", ypos="head") + elif item == ton_outfit_bikini_2: + gen "Could you make be a simple bikini-bra?" ("base", xpos="far_left", ypos="head") + maf "Certainly, looking for any particular pattern?" + gen "A Striped one would be great." ("base", xpos="far_left", ypos="head") + maf "Alright then, I'll get to work on it shortly." + gen "Thank you very much!" ("base", xpos="far_left", ypos="head") + elif item == ton_outfit_bikini_3: + gen "Could you make be a bikini-bra?" ("base", xpos="far_left", ypos="head") + maf "Certainly, looking for any particular pattern?" + gen "Something to show off our national heritage." ("base", xpos="far_left", ypos="head") + maf "So a Scottish flag?" + gen "What, no.. I meant the union jack." ("base", xpos="far_left", ypos="head") + maf "Oh... {i}righto{/i}..." + maf "One union jack bikini-bra it is..." + gen "(Scottish... As if I wouldn't know straight away that we were in Scotland...)" ("base", xpos="far_left", ypos="head") + elif item == ton_outfit_bikini_4: + gen "Could you make be a bikini-bra?" ("base", xpos="far_left", ypos="head") + maf "Certainly, looking for any particular pattern?" + gen "How about the American flag?" ("base", xpos="far_left", ypos="head") + maf "Are you sure? I thought you weren't meant to put it on clothing." + gen "You're not?" ("base", xpos="far_left", ypos="head") + maf "I'm fairly sure I read that somewhere..." + gen "Well, I think if it's being made into something meant to contain immense greatness we could make an exception." ("base", xpos="far_left", ypos="head") + maf "I'm not sure what you mean, sir..." + gen "Don't worry about it..." ("base", xpos="far_left", ypos="head") + maf "Okay then..." + maf "One United states of America patterned bikini-bra coming up." + elif item == ton_outfit_swimsuit_1: + gen "Got any swimsuits?" ("base", xpos="far_left", ypos="head") + maf "Not in stock but I could make you one." + gen "Fair enough, I doubt you would've carried what I need anyway." ("base", xpos="far_left", ypos="head") + maf "Is that so?" + gen "Yes, I'd like something a bit more skimpy than what you'd normally make." ("base", xpos="far_left", ypos="head") + maf "Skimpier than normal... I see..." + gen "Oh! Could you also make it a bit translucent?" ("base", xpos="far_left", ypos="head") + maf "Certainly..." + maf "Anything else?" + gen "*Err*... Did I mention that I wanted it to be skimpy?" ("base", xpos="far_left", ypos="head") + maf "I was more wondering if you wanted a certain pattern or similar." + gen "A plain one should be fine." ("base", xpos="far_left", ypos="head") + maf "Okay then, one transparent swimsuit coming--" + gen "Transparent and skimpy!" ("base", xpos="far_left", ypos="head") + maf "One transparent and skimpy swimsuit coming up." + elif item == ton_outfit_swimsuit_2: + gen "I need a swimsuit." ("base", xpos="far_left", ypos="head") + maf "Don't you mean swim trunks, sir?" + gen "Not for me, obviously." ("base", xpos="far_left", ypos="head") + maf "Right." + gen "I need a striped, translucent swimsuit." ("base", xpos="far_left", ypos="head") + maf "Translucent? Doesn't that defeat the purpose a bit?" + gen "Depends what the purpose is..." ("base", xpos="far_left", ypos="head") + maf "Well, you'd think that you could just go to a nudist beach." + gen "You seen any around here?" ("base", xpos="far_left", ypos="head") + maf "Can't you just Apparate to one, sir?" + gen "Do what?" ("base", xpos="far_left", ypos="head") + maf "Apparate." + gen "..." ("base", xpos="far_left", ypos="head") + maf "Teleport..." + gen "Oh... Why didn't you just say that?" ("base", xpos="far_left", ypos="head") + gen "Why do wizards keep making up these silly words when teleportation is already a well established term." ("base", xpos="far_left", ypos="head") + maf "..." + maf "So?" + gen "So, what?" ("base", xpos="far_left", ypos="head") + maf "Why couldn't you just--" + gen "..." ("base", xpos="far_left", ypos="head") + maf "Never mind... What is I to question the headmaster..." + elif item == ton_outfit_swimsuit_3: + gen "I need a swimsuit." ("base", xpos="far_left", ypos="head") + maf "Right, any specifications?" + gen "Put the American flag on it!" ("base", xpos="far_left", ypos="head") + maf "The American flag, sir?" + gen "Yeah!" ("base", xpos="far_left", ypos="head") + maf "Any particular reason?" + gen "Would I need a reason to want to put the American flag on things?" ("base", xpos="far_left", ypos="head") + maf "... I suppose not." + gen "And make it translucent!" ("base", xpos="far_left", ypos="head") + maf "Any particular--" + maf "..." + maf "Of course headmaster, I'll get started on it then." + elif item == ton_outfit_cavegirl: + gen "I'm looking for something primal." ("base", xpos="far_left", ypos="head") + maf "Primal, sir?" + gen "Yes... Ever watched the Flintstones?" ("base", xpos="far_left", ypos="head") + maf "The what, sorry?" + gen "*Sigh*..." ("base", xpos="far_left", ypos="head") + $ renpy.play("sounds/scribble.ogg") + gen "Could you make me something like this? *Scribbles*" ("base", xpos="far_left", ypos="head") + maf "I see..." + maf "Are you sure you've drawn it correctly?" + maf "There seem to be some fabric missing." + gen "Positive." ("base", xpos="far_left", ypos="head") + maf "Okay then." + maf "One... Flintstone outfit it is." + gen "Yabadababoob!" ("grin", xpos="far_left", ypos="head") + + elif item == ton_outfit_club_dress: + gen "Have you ever been out clubbing Miss Mafkin?" ("base", xpos="far_left", ypos="head") + maf "By merlin no... I wouldn't dare hurt an animal." + gen "Not that... Clubbing Is when you go to a club, listen to music whilst moving your arms around awkwardly." ("base", xpos="far_left", ypos="head") + maf "Oh... In that case yes, although it's been a while." + maf "They used to call me the dancing queen--" + gen "Yes yes, very interesting... Loud music with no way of chatting anyone up... Love it." ("base", xpos="far_left", ypos="head") + gen "Anyway..." ("base", xpos="far_left", ypos="head") + maf "..." + gen "You think you could provide me with something a woman might wear when going clubbing?" ("base", xpos="far_left", ypos="head") + maf "Something tight-fitting I assume." + gen "Wow, you really do know your craft!" ("base", xpos="far_left", ypos="head") + maf "Certainly sir, I'll start working on it as soon as I can." + + elif item == ton_outfit_skimpy_dress: + gen "Could you make me something skimpy?" ("base", xpos="far_left", ypos="head") + maf "Skimpy, sir?" + gen "Yes, something with loose hanging fabric." ("base", xpos="far_left", ypos="head") + gen "Something that makes the nipples part of the integral structure of the piece." ("base", xpos="far_left", ypos="head") + maf "..." + maf "This is for a lady I assume?" + gen "I mean my nipples could probably cut glass when hard but yes it's for a lady..." ("base", xpos="far_left", ypos="head") + maf "Was that extra information necessary, sir?" + gen "Is it normal or do I need to get them checked?" ("base", xpos="far_left", ypos="head") + maf "I'm not a medical expert, sir... I'm a tailor." + gen "Ever had to repair a piece of clothing due to nipple damage?" ("base", xpos="far_left", ypos="head") + maf "Can't say that I have..." + gen "..." ("base", xpos="far_left", ypos="head") + gen "Then forget what I just said." ("base", xpos="far_left", ypos="head") + maf "I'll just get to it then, shall I?" + gen "Yes please..." ("base", xpos="far_left", ypos="head") + + elif item == ton_outfit_lady_D: + gen "Could you make me a cosplay outfit?" ("base", xpos="far_left", ypos="head") + maf "Of course, as long as I know it." + gen "Well you should know this one." ("base", xpos="far_left", ypos="head") + gen "It's none other than lady Dimitrescu." ("base", xpos="far_left", ypos="head") + maf "*Hmm*... Well I can't say that I've heard of her." + gen "She's a video game character." ("base", xpos="far_left", ypos="head") + maf "I see... In that case I'll have to ask my grandson..." + gen "I'm sure if your grandson has spent any time online, he'll know who she is." ("base", xpos="far_left", ypos="head") + maf "On line, sir?" + gen "..." ("base", xpos="far_left", ypos="head") + gen "Just ask him and I'm sure he'll know." ("base", xpos="far_left", ypos="head") + + # + # Susan Bones + # + + elif item == sus_outfit_lace1: + gen "I'm looking to acquire some lingerie, do you have something like that in stock?" ("base", xpos="far_left", ypos="head") + maf "Not currently... Although I have some business coming up in Knockturn alley so I could procure some materials for it." + gen "I see..." ("base", xpos="far_left", ypos="head") + maf "Oh, it's nothing sinister I assure you sir, no need to worry." + gen "So is it going to take long?" ("base", xpos="far_left", ypos="head") + maf "Sorry?" + gen "Will it take long to acquire these materials." ("base", xpos="far_left", ypos="head") + maf "Oh, no I should have it done before you can say floo powder." + gen "Great!" ("base", xpos="far_left", ypos="head") + + + # + # Universal + # + + else: + gen "Could you make an outfit for me?" ("base", xpos="far_left", ypos="head") + maf "Certainly... got something specific in mind?" + gen "Yes... I sketched something out for you..." ("base", xpos="far_left", ypos="head") + maf "Let's have a look..." + maf "..." + gen "Thoughts?" ("base", xpos="far_left", ypos="head") + maf "That should be quite doable..." + gen "Excellent." ("base", xpos="far_left", ypos="head") + maf "I'll get it done as soon as I can." + return diff --git a/game/scripts/shops/dress/menu.rpy b/game/scripts/shops/dress/menu.rpy new file mode 100644 index 00000000..42febda2 --- /dev/null +++ b/game/scripts/shops/dress/menu.rpy @@ -0,0 +1,281 @@ + +init python: + def shop_dress_sortfilter(item, sortby="Price (Asc)", filtering=None): + # Always sort alphabetically first. + item = sorted(item, key=lambda x: natsort_key(x.name)) + + if sortby == "Price (Asc)": + item = sorted(item, key=lambda x: x.price, reverse=False) + elif current_sorting == "Price (Desc)": + item = sorted(item, key=lambda x: x.price, reverse=True) + if sortby == "Lewdness (Asc)": + item = sorted(item, key=lambda x: get_outfit_score(x), reverse=False) + elif current_sorting == "Lewdness (Desc)": + item = sorted(item, key=lambda x: get_outfit_score(x), reverse=True) + return item + +label shop_dress: + $ gui.in_context("shop_dress_menu") + return + +label shop_dress_menu: + + python: + current_sorting = "Price (Asc)" + category_items = {"hermione": hermione.outfits, "tonks": tonks.outfits, "cho": cho.outfits, "luna": luna.outfits, "astoria": astoria.outfits, "susan": susan.outfits} + current_category = "hermione" + store_cart = set() + menu_items = shop_dress_sortfilter(filter(lambda x: bool(x.unlocked == False and x.price > 0 and not x in store_cart), category_items.get(current_category, [])), current_sorting) + current_item = next(iter(menu_items), None) + + show screen shop_dress() + + label .after_init: + + $ _choice = ui.interact() + + if _choice[0] == "category": + $ current_category = _choice[1] + $ menu_items = shop_dress_sortfilter(filter(lambda x: bool(x.unlocked == False and x.price > 0 and not x in store_cart), category_items.get(current_category, [])), current_sorting) + $ current_item = next(iter(menu_items), None) + elif _choice[0] == "buy": + show screen blktone + with d3 + if game.gold < _choice[1].price: + gen "(I don't have enough gold.)" ("base", xpos="far_left", ypos="head") + else: + if len(store_cart) < 5: + $ renpy.call("purchase_outfit", _choice[1]) + + $ renpy.play("sounds/money.ogg") + $ game.gold -= _choice[1].price + $ store_cart.add(_choice[1]) + $ menu_items = shop_dress_sortfilter(filter(lambda x: bool(x.unlocked == False and x.price > 0 and not x in store_cart), category_items.get(current_category, [])), current_sorting) + $ current_item = next(iter(menu_items), None) + + if len(store_cart) < 5: + maf "Anything else?" + else: + maf "That was your fifth order, sir, I'm afraid it will have to be your last one." + else: + maf "I'm sorry luv but that's as much as you can order for now." + hide screen blktone + with d3 + + elif _choice == "sort": + if current_sorting == "Price (Asc)": + $ current_sorting = "Price (Desc)" + elif current_sorting == "Price (Desc)": + $ current_sorting = "Lewdness (Asc)" + elif current_sorting == "Lewdness (Asc)": + $ current_sorting = "Lewdness (Desc)" + elif current_sorting == "Lewdness (Desc)": + $ current_sorting = "Price (Asc)" + + $ menu_items = shop_dress_sortfilter(filter(lambda x: bool(x.unlocked == False and x.price > 0 and not x in store_cart), category_items.get(current_category, [])), current_sorting) + else: # Close + if len(store_cart) < 5: + show screen blktone + with d3 + menu: + maf "Are you finished shopping, dearie?" + + "-Yes, I'm done-": + pass + "-Not yet-": + hide screen blktone + with d3 + jump .after_init + + if store_cart: + $ transit_time = len(store_cart)+1 + $ packaging_fee = 45 + ( (len(store_cart)-1) * 20 ) + + menu: + maf "If you pay extra, I could hire a bunch of elves to speed things up..." + "\"Fine. ([packaging_fee] gold)\"" if game.gold >= packaging_fee: + $ game.gold -= packaging_fee + $ transit_time = int(transit_time/2) + "\"Fine. ([packaging_fee] gold)\"" (style="disabled") if game.gold < packaging_fee: + maf "Sorry luv, but it appears you have no gold left." + "-No thanks-": + pass + + hide screen shop_dress + hide screen blktone + + $ _tmp = "tomorrow." if transit_time == 1 else "in about {} days.".format(str(transit_time)) + maf "You can expect a parcel [_tmp]." + + $ Parcel(contents=[(k, 1) for k in store_cart], wait=transit_time).send() + return + else: + gen "Nothing has caught my eye I'm afraid." ("base", xpos="far_left", ypos="head") + maf "Maybe next time." + return + + + jump .after_init + +screen shop_dress(): + tag shop_dress + zorder 15 + modal True + + add "gui_fade" + + if renpy.mobile: + use close_button_background + use close_button + + fixed: + if settings.get("animations"): + at gui_animation + + use shop_dress_menu() + use shop_dress_menuitem() + +screen shop_dress_menu(): + tag shop_menu + zorder 15 + style_prefix "shop" + + default icon_bg = gui.format("interface/achievements/{}/iconbox.webp") + default icon_frame = Frame(gui.format("interface/frames/{}/iconframe.webp"), 6, 6) + default panel = gui.format("interface/frames/{}/panel_left.webp") + default highlight = gui.format("interface/achievements/{}/highlight_left_b.webp") + + window: + pos (150, 90) + xysize (207, 454) + background panel + + use invisible_button() + + vbox: + pos (6, 6) + for category in category_items.iterkeys(): + if getattr(renpy.store, category+"_unlocked"): + $ icon = Fixed(icon_bg, Frame( Transform("interface/icons/head/{}.webp".format(category), fit="contain"), xysize=(42, 42), offset=(3, 3)), "interface/achievements/glass_iconbox.webp") + + vbox: + textbutton category: + style "empty" + xysize (195, 48) + text_align (0.6, 0.5) + text_xanchor 0.5 + text_size 20 + + foreground icon + hover_background highlight + selected_background highlight + selected (current_category == category) + action Return(["category", category]) + + add gui.format("interface/frames/{}/spacer_left.webp") + + vbox: + style_prefix gui.theme('achievements_filters') + + pos (6, 384) + button action None + textbutton "Sort by: [current_sorting]" action Return("sort") + +screen shop_dress_menuitem(): + + tag shop_menuitem + zorder 16 + style_prefix "shop" + + default icon_size = (144, 288) + default icon_frame = Frame(gui.format("interface/frames/{}/iconframe.webp"), 6, 6) + default panel = gui.format("interface/frames/{}/panel.webp") + + window: + pos (367, 37) + xysize (560, 501) + background panel + + use invisible_button() + + text "Shop" size 22 xalign 0.5 ypos 65 + + if current_item: + + frame: + xalign 0.5 + ypos 412 + + vbox: + xalign 0.5 + add gui.format("interface/achievements/{}/highlight.webp")# pos (112, 375) + add gui.format("interface/achievements/{}/spacer.webp")# pos (120, 398) + text "[current_item.desc]" size 12 yoffset 6 + + text "[current_item.name]" xalign 0.5 ypos 3 size 16 + + $ frame = Frame(gui.format("interface/frames/{}/iconframe.webp"), 6, 6) + + textbutton "Buy": + style "inventory_button" + background frame + xalign 0.95 + action Return(["buy", current_item]) + + vpgrid: + rows 1 + xspacing 5 + yspacing 2 + draggable True + mousewheel "horizontal" + scrollbars "horizontal" + xmaximum 512 + ypos 106 + xalign 0.5 + + at transform: + mesh True + + for item in menu_items: + $ icon = Transform(item.get_image(), crop=(215, 0, 680, 1200), mesh=True, gl_pixel_perfect=True) + $ is_modded = item.is_modded() + $ is_affordable = bool(game.gold >= item.price) + + button: + style "shop_outfit_button" + xysize icon_size + background Transform(icon, xsize=144, ysize=288, fit="contain", anchor=(0.5, 1.0), align=(0.5, 1.0), yoffset=-6) + selected (current_item == item) + action SetVariable("current_item", item) + + add icon_frame + + if is_affordable: + text "{color=#daa520}G{/color} [item.price]" xalign 0.5 ypos 10 color "#ffffff" outlines [ (1, "#000", 0, 0) ] style "shop_outfit_text" + else: + text "{color=#daa520}G{/color} {color=#ff0000}[item.price]{/color}" xalign 0.5 ypos 10 color "#ffffff" outlines [ (1, "#000", 0, 0) ] style "shop_outfit_text" + + if config.developer: + $ outfit_score = get_outfit_score(item) + text "{color=#fff}score{/color} [outfit_score]" align (0.1, 0.98) color "#ffffff" outlines [ (1, "#000", 0, 0) ] size 8 + + hbox: + offset (5, -5) + align (0.0, 1.0) + + if is_modded: + text "M" color "#00b200" + +style shop_window is empty + +style shop_outfit_button is empty: + foreground None + hover_foreground "#ffffff80" + selected_foreground "#ffffff40" + activate_sound "sounds/click.ogg" + +style shop_outfit_button_text is default: + size 14 + +style shop_outfit_text: + size 20 diff --git a/game/scripts/shops/dress/room.rpy b/game/scripts/shops/dress/room.rpy new file mode 100644 index 00000000..e96ebca4 --- /dev/null +++ b/game/scripts/shops/dress/room.rpy @@ -0,0 +1,47 @@ +label clothing_store: + call room("clothing_store") + call play_music("clothing_store") + + if mailbox.type_in_parcels("outfit"): + maf "I'm sorry luv, but I'm still quite busy working on your previous order." + maf "Come back once you received my package." + jump return_office + + if not clothing_store_intro_done: + $ clothing_store_intro_done = True + + ">You enter to see an old woman sewing together two pieces of long dark fabric." + ">The woman is dressed almost entirely in pink and has a warm, approachable air to her." + gen "Hello." ("base", xpos="far_left", ypos="head") + maf "Hello, Professor Dumbledore." + maf "What can I do for you? Would you like a new cloak, or do you require some alterations to an existing item?" + gen "Neither thank you, I'm just here to make a few inquiries." ("base", xpos="far_left", ypos="head") + maf "Of course sir, what could I help you with?" + gen "Firstly, what type of items do you sell?" ("base", xpos="far_left", ypos="head") + maf "Well, I'm a tailor. I make uniforms for the staff and students." + maf "I also perform alterations to existing items. This is mainly when a student goes through a growth spurt or gets a hole in their cloak." + gen "I see. Do you ever make custom orders?" ("base", xpos="far_left", ypos="head") + maf "Not really, although it is my passion. Most of what I'm asked to make are standard black robes." + gen "So you're interested in making unique outfits?" ("base", xpos="far_left", ypos="head") + maf "Absolutely, although I would have to order the fabrics in. I don't really have a range of colours at the moment." + maf "What did you have in mind?" + gen "A few things. I haven't decided on anything specific yet." ("base", xpos="far_left", ypos="head") + maf "Well, while you're making up your mind, feel free to browse the store." + else: + maf "What can I get you today?" + + call shop_dress + + gen "Thank you very much." ("base", xpos="far_left", ypos="head") + maf "You're welcome, sir. Come back any time." + + jump return_office + +screen clothing_store(): + tag room_screen + zorder 0 + + if game.daytime: + add "images/rooms/_bg_/corridor.webp" #Need day image. + else: + add "images/rooms/_bg_/corridor.webp" diff --git a/game/scripts/shops/init.rpy b/game/scripts/shops/init.rpy new file mode 100644 index 00000000..42e2bcfc --- /dev/null +++ b/game/scripts/shops/init.rpy @@ -0,0 +1,2 @@ +default clothing_store_intro_done = False +default item_store_intro_done = False diff --git a/game/scripts/shops/item/chitchats.rpy b/game/scripts/shops/item/chitchats.rpy new file mode 100644 index 00000000..cc870132 --- /dev/null +++ b/game/scripts/shops/item/chitchats.rpy @@ -0,0 +1,93 @@ +label purchase_item(item): + + if item.currency == "tokens": + if tokens < item.price: + gen "(I don't have enough tokens.)" ("base", xpos="far_left", ypos="head") + return + else: + if game.gold < item.price: + gen "(I don't have enough gold.)" ("base", xpos="far_left", ypos="head") + return + + if item == sealed_scroll_ITEM: + show screen blktone + with d3 + if not hg_sex.trigger: + gen "What's in this scroll?" ("base", xpos="far_left", ypos="head") + ger "Don't worry about it." + gen "Why?" ("base", xpos="far_left", ypos="head") + fre "You're not ready for what's in this scroll." + gen "Well, that just makes me want it more." ("base", xpos="far_left", ypos="head") + ger "Too bad, professor." + gen "(Perhaps I should check it out later...)" ("base", xpos="far_left", ypos="head") + hide screen blktone + with d3 + return + + gen "I'd like to buy this scroll." ("base", xpos="far_left", ypos="head") + ger "Five hundred gold coins." + gen "Five hundred!? Why on earth is it so expensive?" ("angry", xpos="far_left", ypos="head") + fre "Forbidden magic is quite a risky and expensive endeavour Professor, We'll sell it for no less than five hundred." + gen "What's it for anyway?" ("base", xpos="far_left", ypos="head") + fre "It is one of the components needed for a forbidden spell." + ger "Acquired completely legitimately I might add!" + gen "What does it do?" ("base", xpos="far_left", ypos="head") + fre "It transforms you into... something." + gen "Like what?" ("base", xpos="far_left", ypos="head") + fre "We don't know, it could be anything." + ger "A powerful phoenix, a terrifying gorgon, a deadly basilisk or an awe inspiring dragon." + gen "Not sure I'd really want to transform into any of those..." ("base", xpos="far_left", ypos="head") + ger "Well... those are just theories, we've not been able to use the scroll to find the second component ourselves." + gen "Really? Now that's is surprising." ("base", xpos="far_left", ypos="head") + fre "Yes, although it's blank for some reason... not really anything new to us as we used to have a ma--" + ger "massive amounts of scrolls just like this one!" + ger "Yep... lot's of them, shame they all burnt." + fre "What are you-- *HHNG*" + fre "Oh! I see... Yes, very unfortunate..." + gen "That is unfortunate... Well I'm sure I'll manage." ("base", xpos="far_left", ypos="head") + hide screen blktone + with d3 + + if item == collar_ITEM and not her_magic_collar_worn and item.owned == 0: + show screen blktone + with d3 + gen "A Magic collar..." ("base", xpos="far_left", ypos="head") + fre "Oh yes... That thing." + ger "I'd be careful with that one if I were you." + gen "How come?" ("base", xpos="far_left", ypos="head") + fre "Well... It might reveal some secrets that most people would want to keep to themselves." + gen "Such as?" ("base", xpos="far_left", ypos="head") + twi "Their true self!" + gen "..." ("base", xpos="far_left", ypos="head") + gen "Colour me intrigued..." ("base", xpos="far_left", ypos="head") + gen "And it works?" ("base", xpos="far_left", ypos="head") + fre "Of course it does, we tested it on ourselves!" + ger "Just know that the collar loses its magic once it is put one's neck." + ger "So you'll have to buy another collar if you want to test if anything's changed..." + # ger "So you'll have to buy multiple collars if you want to test it on multiple subjects..." + # fre "Or multiple times on one subject to see if anything's changed..." + gen "I see." ("base", xpos="far_left", ypos="head") + gen "So, what did the collar say when you guys put it on?" ("base", xpos="far_left", ypos="head") + fre "Voyeu--" + ger "Thrifty!" + ger "Wait, what did you just say Fred?" + fre "..." + gen "Alright then, I'll take it..." ("base", xpos="far_left", ypos="head") + fre "*Ahem*... It's a pleasure doing business with you, sir!" + hide screen blktone + with d3 + + elif item == poker_outfit_ITEM: + $ item.used = True + + call unlock_clothing(">Congratulations! You have unlocked a new outfit!", her_outfit_poker) + + $ renpy.play("sounds/money.ogg") + + if item.currency == "tokens": + $ tokens -= item.price + else: + $ game.gold -= item.price + $ item.owned += 1 + + return diff --git a/game/scripts/shops/item/menu.rpy b/game/scripts/shops/item/menu.rpy new file mode 100644 index 00000000..c742ff2f --- /dev/null +++ b/game/scripts/shops/item/menu.rpy @@ -0,0 +1,291 @@ +init python: + def shop_item_sortfilter(item, sortby="Price (Asc)", filtering=None): + # Always sort alphabetically first. + item = sorted(item, key=lambda x: natsort_key(x.name)) + + if sortby == "Price (Asc)": + item = sorted(item, key=lambda x: x.price, reverse=False) + elif current_sorting == "Price (Desc)": + item = sorted(item, key=lambda x: x.price, reverse=True) + return item + +label shop_item: + $ gui.in_context("shop_item_menu") + return + +label shop_item_menu(xx=150, yy=90): + $ inventory_dict = { + "Gifts": inventory.get_instances_of_type("gift"), + "Books": inventory.get_instances_of_type("book"), + "Scrolls": inventory.get_instances_of_type("scroll"), + "Ingredients": inventory.get_instances_of_type("ingredient"), + "Decorations": inventory.get_instances_of_type("decoration"), + "Quest Items": inventory.get_instances_of_type("quest"), + } + + $ items_shown = 36 + $ current_page = 0 + $ current_category = next(iter(inventory_dict.iterkeys())) + $ current_sorting = "Price (Asc)" + + if current_category in {"Gifts", "Ingredients"}: + $ category_items = filter(lambda x: bool(x.price > 0 and x.unlocked), inventory_dict[current_category]) + elif current_category in {"Books", "Scrolls", "Decorations", "Quest Items"}: + $ category_items = filter(lambda x: bool(x.price > 0 and x.owned < x.limit and x.unlocked), inventory_dict[current_category]) + + $ menu_items = shop_item_sortfilter(category_items, current_sorting) + $ menu_items_length = len(menu_items) + + $ current_item = next(iter(menu_items), None) + + show screen shop_item(xx, yy) + + label .after_init: + $ _choice = ui.interact() + + if _choice[0] == "select": + $ current_item = _choice[1] + elif _choice[0] == "category": + $ current_category = _choice[1] + if current_category in {"Gifts", "Ingredients"}: + $ category_items = filter(lambda x: bool(x.price > 0 and x.unlocked), inventory_dict[current_category]) + elif current_category in {"Books", "Scrolls", "Decorations", "Quest Items"}: + $ category_items = filter(lambda x: bool(x.price > 0 and x.owned < x.limit and x.unlocked), inventory_dict[current_category]) + $ menu_items = shop_item_sortfilter(category_items, current_sorting) + $ menu_items_length = len(menu_items) + $ current_page = 0 + $ current_item = next(iter(menu_items), None) + pass + elif _choice == "inc": + $ current_page += 1 + elif _choice == "dec": + $ current_page += -1 + elif _choice == "sort": + if current_sorting == "Price (Asc)": + $ current_sorting = "Price (Desc)" + elif current_sorting == "Price (Desc)": + $ current_sorting = "Price (Asc)" + + $ menu_items = shop_item_sortfilter(category_items, current_sorting) + elif _choice == "buy": + $ renpy.call("purchase_item", current_item) + + if current_category in {"Gifts", "Ingredients"}: + $ category_items = filter(lambda x: bool(x.price > 0 and x.unlocked), inventory_dict[current_category]) + elif current_category in {"Books", "Scrolls", "Decorations", "Quest Items"}: + $ category_items = filter(lambda x: bool(x.price > 0 and x.owned < x.limit and x.unlocked), inventory_dict[current_category]) + $ menu_items = shop_item_sortfilter(category_items, current_sorting) + $ menu_items_length = len(menu_items) + + if not current_item in menu_items: + # We should avoid changing currently selected item when it's still possible to obtain it. + $ current_item = next(iter(menu_items), None) + else: + show screen blktone + with d3 + menu: + ger "Are you done shopping, sir?" + + "-Yes, I'm done-": + hide screen shop_item + hide screen blktone + return + "-Not yet-": + hide screen blktone + with d3 + + jump .after_init + +screen shop_item(xx, yy): + tag shop_item + zorder 15 + modal True + + add "gui_fade" + + if renpy.mobile: + use close_button_background + use close_button + + fixed: + if settings.get("animations"): + at gui_animation + use shop_item_menu(xx, yy) + use shop_item_menuitem(xx, yy) + +screen shop_item_menu(xx, yy): + window: + style "empty" + style_prefix gui.theme('achievements') + pos (xx, yy) + xysize (207, 454) + + use invisible_button() + + add gui.format("interface/achievements/{}/panel_left.webp") + + vbox: + pos (6, 41) + for category in inventory_dict.iterkeys(): + vbox: + textbutton category: + style "empty" + xsize 195 ysize 16 + text_xalign 0.5 + if current_category == category: + background gui.format("interface/achievements/{}/highlight_left.webp") + else: + hover_background gui.format("interface/achievements/{}/highlight_left.webp") + action Return(["category", category]) + add gui.format("interface/achievements/{}/spacer_left.webp") + vbox: + style_prefix gui.theme('achievements_filters') + pos (6, 384) + button action NullAction() style "empty" xsize 195 ysize 32 + textbutton "Sort by: [current_sorting]" action Return("sort") + +screen shop_item_menuitem(xx, yy): + window: + style "empty" + style_prefix gui.theme() + pos (xx+217, yy-53) + xysize (560, 507) + + use invisible_button() + + add "interface/achievements/inventory.webp" + add gui.format("interface/achievements/{}/panel.webp") + + #Western Egg + button xsize 90 ysize 60 action Function(renpy.play, "sounds/plushie.ogg") xalign 0.5 style "empty" + + text "Store" size 22 xalign 0.5 ypos 65 + + if current_item is None or current_item.currency == "gold": + text "{color=#daa520}G{/color} {outlinecolor=#ffffff00}[game.gold]{/outlinecolor}" size 16 pos (24, 70) outlines [ (2, "#000", 0, 0) ] + else: + text "{color=#2055da}T{/color} {outlinecolor=#ffffff00}[tokens]{/outlinecolor}" size 16 pos (24, 70) outlines [ (2, "#000", 0, 0) ] + + # Page counter + if menu_items_length > items_shown: + hbox: + xanchor 1.0 + pos (540, 24) + spacing 5 + add "interface/page.webp" yanchor 0.5 ypos 53 + text str(current_page+1)+"/"+str(int(math.ceil(menu_items_length/items_shown))+1) ypos 44 size 16 + vbox: + pos (570, 186) + spacing 10 + + imagebutton: + idle gui.format("interface/frames/{}/arrow_up.webp") + if not current_page <= 0: + hover image_hover(gui.format("interface/frames/{}/arrow_up.webp")) + action Return("dec") + + imagebutton: + idle Transform(gui.format("interface/frames/{}/arrow_up.webp"), xzoom=-1) + if current_page < math.ceil((menu_items_length-1)/items_shown): + hover Transform(image_hover(gui.format("interface/frames/{}/arrow_up.webp")), xzoom=-1) + action Return("inc") + + # Add items + for i in xrange(current_page*items_shown, (current_page*items_shown)+items_shown): + + if i < menu_items_length: + $ price = menu_items[i].price + + $ row = (i // 9) % 4 + $ col = i % 9 + frame: + style "empty" + xsize 48 + ysize 48 + pos (24+58*(col), 113+58*(row)) + add gui.format("interface/achievements/{}/iconbox.webp") + + if not current_item == None and current_item.id == menu_items[i].id: + add "interface/achievements/glow.webp" align (0.5, 0.5) zoom 0.105 alpha 0.7 at rotate_circular + + if (menu_items[i].currency == "tokens" and tokens >= menu_items[i].price) or (menu_items[i].owned < 99 and game.gold >= menu_items[i].price): + $ image_zoom = crop_image_zoom(menu_items[i].get_image(), 42, 42) + else: + $ image_zoom = crop_image_zoom(menu_items[i].get_image(), 42, 42, True) + + add image_zoom align (0.5, 0.5) + + button: + style gui.theme("overlay_button") + background "interface/achievements/glass_iconbox.webp" + xsize 46 ysize 46 + action Return(["select", menu_items[i]]) + tooltip menu_items[i].name + + if menu_items[i].owned > 0: + text str(menu_items[i].owned) size 10 align (0.1, 0.1) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + + if menu_items[i].currency == "tokens": + if tokens >= menu_items[i].price: + text "{color=#2055da}T{/color} [price]" size 10 align (0.95, 0.95) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + else: + text "{color=#2055da}T{/color} {color=#ff0000}[price]{/color}" size 10 align (0.95, 0.95) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + else: + if game.gold >= menu_items[i].price: + text "{color=#daa520}G{/color} [price]" size 10 align (0.95, 0.95) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + else: + text "{color=#daa520}G{/color} {color=#ff0000}[price]{/color}" size 10 align (0.95, 0.95) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + + if menu_items_length <= 0: + text "Nothing here yet" align (0.5, 0.5) anchor (0.5, 0.5) size 24 + + if current_item: + frame: + style "empty" + xsize 96 + ysize 96 + pos (24, 375) + add gui.format("interface/achievements/{}/icon_selected.webp") + + if (current_item.currency == "tokens" and tokens >= current_item.price) or (current_item.owned < 99 and game.gold >= current_item.price): + $ image_zoom = crop_image_zoom(current_item.get_image(), 84, 84) + else: + $ image_zoom = crop_image_zoom(current_item.get_image(), 84, 84, True) + + add image_zoom align (0.5, 0.5) + add "interface/achievements/glass_selected.webp" pos (6, 6) + + if current_item.owned > 0: + text "[current_item.owned]" size 14 align (0.1, 0.1) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + + if current_item.currency == "tokens": + if tokens >= current_item.price: + text "{color=#2055da}T{/color} [current_item.price]" size 14 align (0.9, 0.9) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + else: + text "{color=#2055da}T{/color} {color=#ff0000}[current_item.price]{/color}" size 14 align (0.90, 0.90) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + else: + if game.gold >= current_item.price: + text "{color=#daa520}G{/color} [current_item.price]" size 14 align (0.9, 0.9) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + else: + text "{color=#daa520}G{/color} {color=#ff0000}[current_item.price]{/color}" size 14 align (0.90, 0.90) anchor (1.0, 1.0) color "#FFFFFF" outlines [ (1, "#000", 0, 0) ] + + add gui.format("interface/achievements/{}/highlight.webp") pos (112, 375) + add gui.format("interface/achievements/{}/spacer.webp") pos (120, 398) + hbox: + spacing 5 + xalign 0.5 + text current_item.name ypos 380 size 16 xoffset 45 + + textbutton "Buy": + xysize (90, 26) + xalign 0.89 + xoffset 45 + ypos 374 + text_size 16 + sensitive ((current_item.currency == "tokens" and tokens >= current_item.price) or (current_item.owned < 99 and game.gold >= current_item.price)) + action Return("buy") + + hbox: + pos (132, 407) + xsize 410 + text current_item.desc size 12 diff --git a/game/scripts/shops/item/room.rpy b/game/scripts/shops/item/room.rpy new file mode 100644 index 00000000..9b14988d --- /dev/null +++ b/game/scripts/shops/item/room.rpy @@ -0,0 +1,222 @@ +screen weasley_store_room(): + tag room_screen + + if game.daytime: + add "images/rooms/weasley_store/store_day.webp" + else: + add "images/rooms/weasley_store/store_night.webp" + + use ui_top_bar + + zorder 0 + +label item_store: + show screen blkfade + with d3 + + call room("weasley_store") + call gen_chibi("stand", 0, "base") + call gen_walk(xpos="left", ypos="base") + call play_music("weasley_store") + + hide screen blkfade + with d3 + + if not item_store_intro_done: + $ item_store_intro_done = True + + fre "Professor Dumbledore? What are you doing here? I thought you didn't leave your office anymore." + ger "You're not here to shut us down are you?" + gen "Shut you down? What for?" ("base", xpos="far_left", ypos="head") + fre "NOTHING!" + ger "We certainly aren't selling potion ingredients that we stole from Snape." + fre "No prohibited goods being sold here." + ger "None at all!" + fre "But if we did sell them--" + ger "--Which we don't--" + fre "They would be sold at the best prices in the school." + ger "Unbeatable." + gen "I see..." ("base", xpos="far_left", ypos="head") + gen "What sort of items are you \"not selling\"?" ("base", xpos="far_left", ypos="head") + ger "We have books, treats, and knick-knacks for sale." + fre "Take a look." + elif twins_interest: + $ twins_interest = False + + twi "Greetings Dumbledore, sir!" + gen "Hello boys." ("base", xpos="far_left", ypos="head") + gen "I'm here to pick up my weekly cut of profits." ("base", xpos="far_left", ypos="head") + twi "Of course!" + + $ her_help = 0 + if her_shop_help: + ger "Miss Granger has helped us with promotions this week so that means more profits." + $ her_help = 200 + $ her_shop_help = False + + $ shop_profit = renpy.random.randint(50+her_help, 300) + ger "Here, your weekly cut." + call give_reward("You've received "+str(int(shop_profit*twins_profit))+" gold.", "interface/icons/gold.webp") + + $ game.gold += int(shop_profit*twins_profit) + ger "..." + twi "Did you need anything else?" + else: + twi "Hello Professor! Came here to buy?" + + ##Any quest that could play directly after intro can't have introductory dialogue## + if ss_he.cho_E1 and not quidditchguide_ITEM.unlocked and not cho_quiz.complete: + $ quidditchguide_ITEM.unlocked = True + # After talking to Snape about Cho. + # If you haven't yet beaten the Quiz. + gen "Let's see..." ("base", xpos="far_left", ypos="head") + twi "How can we help you?" + gen "Just having a look around at your fine merchandise..." ("base", xpos="far_left", ypos="head") + fre "No need to be concerned, sir!" + fre "Everything is completely above board and procured from totally legitimate sources!" + ger "No stolen goods here!" + gen "I wasn't looking out for stolen goods in particular...{w=0.4} should I be?" ("base", xpos="far_left", ypos="head") + ger "Oh, well..." + fre "Of course you weren't!" + gen "Seems like I can't find what I'm looking for anyway..." ("base", xpos="far_left", ypos="head") + fre "Well, if you're looking for something in particular then we could always look into procuring said item." + ger "What type of object are you looking for?" + gen "Well... As you boys may know, the Quidditch season is starting soon." ("base", xpos="far_left", ypos="head") + fre "Yes?" + gen "Well, I realised that I haven't actually gone in depth with the sport yet." ("base", xpos="far_left", ypos="head") + ger "Really? You're telling me that {b}the{/b} Dumbledore doesn't know anything about--{nw}" + call play_sound("kick") + ger "Really? You're telling me that {b}the{/b} Dumbledore doesn't know anything about--{fast} {size=+4}*Hngh*!!{/size}" + fre "{size=-4}Quiet, George!{/size}" + fre "What he meant to say was, If you're looking to acquire something to touch up on your Quidditch knowledge then you've come to the right place!" + ger "{size=-4}I suppose it explains why he's always staring out in the distance, clapping politely during the--{/size}" + fre "{size=-4}George!{/size}" + gen "Yes, a guidebook should be enough for me to be able to touch up the players--{w=0.2} I mean refresh my memory on the rules." ("base", xpos="far_left", ypos="head") + ger "Touch up the--" + gen "It's like Basketball right?" ("base", xpos="far_left", ypos="head") + fre "Basket ball? Well, I wouldn't know anything about that, I always tune out whenever dad drones on about muggle sports." + ger "Did he say touch up--" + gen "So, do you have such a book in stock?" ("base", xpos="far_left", ypos="head") + fre "Of course!" + ger "We do?" + fre "Yes George... We've got our own guidebook book, since we're on the Gryffindor team." + ger "Oh yeah!" + gen "You are?" ("base", xpos="far_left", ypos="head") + fre "Yep!" + ger "Don't they note the Quidditch players names down in their records Fred?" + fre "..." + ger "Not that we'd know anything about those of course..." + gen "Now, I wouldn't want you to part with your personal belongings if it's for school." ("base", xpos="far_left", ypos="head") + ger "No worries, sir! We already know all the rules so you can have it for fr--" + call play_sound("kick") + fre "Blimey!" + ger "What Fred wanted to say is--" + ger "You can have it, for a hundred gold coins." + gen "......" ("base", xpos="far_left", ypos="head") + gen "Great, thanks again boys..." ("base", xpos="far_left", ypos="head") + ger "Don't mention it..." + fre "...Make sure to take notes!" + gen "Are you assuming your headmaster doesn't know how studying works?" ("base", xpos="far_left", ypos="head") + + call play_sound("kick") + with hpunch + + fre "*Cries out like a hurt puppy*" + ger "Of course not, professor, Fred was just joking, right Fred?" + fre "....Yes sir, just kidding..." + gen "Right..." ("base", xpos="far_left", ypos="head") + ger "We've put the book in \"Quest Items\" section, can't miss it." + + elif deck_unlocked and her_know_cards and not twins_know_cards: + gen "Let's see..." ("base", xpos="far_left", ypos="head") + twi "Looking for something in particular, sir?" + gen "I'm looking to acquire some Wizard cards." ("base", xpos="far_left", ypos="head") + call play_sound("spit") + fre "Wizard cards....*spit*" + ger "Why would you want any of those?" + gen "What does one do with playing cards... Play the game of course." ("base", xpos="far_left", ypos="head") + fre "Well, we got some of our own to see if it was worth stocking them, but none for sale." + ger "The profit margin was way to low... Something about import tax." + ger "We would have to sell a lot of them to make good profit." + gen "I see... So there's no way you'd stock them?" ("base", xpos="far_left", ypos="head") + fre "Wizard cards haven't been popular in ages..." + ger "It does have potential though, not everyone at Hogwarts is going to be into duelling... Or chess." + fre "How about this... We did acquire a set of cards to try the game out." + gen "So..." ("base", xpos="far_left", ypos="head") + ger "If you beat us we'll do a trial run and stock some cards for the students." + twi "(There's no way this\nold man would ever beat us.)" + $ twins_know_cards = True + jump twins_duel_menu + + elif twins_cards_stocked and not twins_second_win and not twins_cards_stocked_talk: + gen "Well, well... Looking good as always boys!" ("base", xpos="far_left", ypos="head") + twi "..." + gen "In a professional sense that is... Don't you worry." ("base", xpos="far_left", ypos="head") + gen "So, How are things going?" ("base", xpos="far_left", ypos="head") + ger "You were right sir! We've seemed to have struck gold with Wizard Cards." + gen "Glad to hear it." ("grin", xpos="far_left", ypos="head") + fre "We've gone ahead and put up an official unofficial tier system ladder." + gen "Unofficial... Official, you say?" ("base", xpos="far_left", ypos="head") + ger "Yes, as we mentioned... There isn't really any official tournament rules." + fre "We've sort of kept it that way in that we'll let the people playing set their own wagers and challenges to climb the ladder." + fre "Any normal game will make you one token richer and once the agreed upon winning conditions for a challenge is achieved then you'll get three tokens!" + fre "Three challenges won will let you climb to the next tier." + ger "Which lets you challenge even higher skilled players." + + call nar(">Only first tier with Snape, Hermione and Twins is available for now.") + + gen "And by skilled you mean players with better cards?" ("base", xpos="far_left", ypos="head") + fre "Something like that." + gen "I see..." ("base", xpos="far_left", ypos="head") + # gen "How do I know which players are currently in my tier?" ("base", xpos="far_left", ypos="head") + # fre "Ah yes, there's a notice board behind us. You should see some people that you know on it." + ger "I must say, the game has really taken off... Even Snape came to pick up some tokens earlier." + gen "Really? I'd think he would disapprove of your business." ("base", xpos="far_left", ypos="head") + fre "He was using a Polyjuice potion to disguise himself as a student." + ger "But that weird walk of his where he sort of slides across the floor gives him away a mile off." + fre "Tell you what, let's set a wager right now." + fre "We'd usually make it a bit more difficult but since you gave us the idea for this." + ger "Beat us again and we'll give you three tokens and a card." + gen "That's it? Sounds a bit out of character for you guys to make it this easy." ("base", xpos="far_left", ypos="head") + fre "Let's call it an insurance so that we can continue our business." + ger "There's no way you'll beat us again anyway." + $ twins_cards_stocked_talk = True + jump twins_duel_menu + + elif luna_unlocked and not spectrespecs_E1: + call spectrespecs_E1 + + call gen_walk(xpos=0, ypos="base", speed=1.5) + + jump main_room + elif quibbler_stocked and not spectrespecs_E2: + call spectrespecs_E2 + elif twins_know_cards: + twi "Perhaps a game of cards?" + label twins_menu: + menu: + "-Buy something-": + pass + "-Let's duel- {image=interface/icons/small/cards.webp}": + label twins_duel_menu: + if geniecard_level < 2: + menu: + "-First Duel-": + jump twins_first_duel + "-Challenge-" if twins_first_win: + jump twins_second_duel + "-You need to beat the first duel-" (style="disabled") if not twins_first_win: + jump twins_duel_menu + "-Never mind-": + twi "Your loss professor." + pass + else: + jump twins_random_duel + + call shop_item + + twi "Come again!" + + call gen_walk(xpos=0, ypos="base", speed=1.5) + + jump main_room diff --git a/game/scripts/theme.rpy b/game/scripts/theme.rpy new file mode 100644 index 00000000..f353c943 --- /dev/null +++ b/game/scripts/theme.rpy @@ -0,0 +1,109 @@ + +# Legacy styles (still in use) + +style yesno_button: + size_group "yesno" + +style yesno_label_text: + text_align 0.5 + layout "subtitle" + +style soundtest_button: + xalign 1.0 + +style gm_nav_button: + size_group "gm_nav" + +style mm_button: + size_group "mm" + +# Common control styles +# style default: +# font "fonts/CREABBB.TTF" +# size 16 +# color "#402313" +# outline_scaling "linear" + +# style button: +# activate_sound "sounds/click3.ogg" +# background "#5d5151e6" +# hover_background "#897e75" +# insensitive_background "#463b3be6" +# selected_background "#766a6ae6" +# selected_hover_background "#897e75" +# #padding (5, 5, 5, 5) + +# style button_text: +# color "#9b8d84" +# hover_color "#fff" +# insensitive_color "#50443c" +# selected_color "#eedfd5" +# selected_hover_color "#fff" +# outlines [(1, "#00000080", 1, 0)] + +# style input: +# color "#5c321b" + +# # Day/night button styles +# style day_button: +# background "#ac8d5ae6" +# hover_background "#97681f" +# insensitive_background "#d1a02eb3" +# padding (5, 5, 5, 5) + +# style night_button: +# background "#5d5151e6" +# hover_background "#897e75" +# insensitive_background "#9e8449" +# padding (5, 5, 5, 5) + +# style day_button_text is default: # Don't inherit from button_text +# color "#f9d592" +# outlines [(1, "#00000080", 1, 0)] +# hover_color "#fff" +# insensitive_color "#50443c" +# selected_color "#eedfd5" +# selected_hover_color "#fff" + +# style night_button_text is default: # Don't inherit from button_text +# color "#9b8d84" +# outlines [(1, "#00000080", 1, 0)] +# hover_color "#fff" +# insensitive_color "#50443c" +# selected_color "#eedfd5" +# selected_hover_color "#fff" + +style dropdown: + ysize 24 + focus_mask None + +style light_dropdown: + insensitive_background "light_check_none" + selected_background "light_check_true" + background "light_check_false" + +style dark_dropdown: + insensitive_background "dark_check_none" + selected_background "dark_check_true" + background "dark_check_false" + +style dropdown_text: + yalign 0.5 + first_indent 26 + size 12 + hover_color "#FFF" + outlines [(1, "#00000080", 1, 0)] + +style light_dropdown_text: + color "#f9d592" + insensitive_color "#ae9566" + +style dark_dropdown_text: + color "#9b8d84" + insensitive_color "#6c625c" + +# Hyperlinks +style hyperlink_text: + underline False + hover_color "#4cf" + idle_color "#08f" diff --git a/game/scripts/utility/common_functions.rpy b/game/scripts/utility/common_functions.rpy new file mode 100644 index 00000000..c43c41dd --- /dev/null +++ b/game/scripts/utility/common_functions.rpy @@ -0,0 +1,210 @@ +init -1 python: + # Import commonly used python modules + import time + import datetime + import math + import random + import pygame + import colorsys + import itertools + import fnmatch + import posixpath + import re + from bisect import bisect + from operator import itemgetter + from operator import add as _add + from collections import OrderedDict + + get_volume_preference = renpy.game.preferences.get_volume + + def num_to_word(n, readable=True): + """Transcript numbers (integers) into readable words.""" + n = int(n) + units = ("","one","two","three","four","five","six","seven","eight","nine") + teens = ("","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen") + tens = ("","ten","twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety") + thousands = ("","thousand","million","billion","trillion","quadrillion","quintillion","sextillion","septillion","octillion","nonillion","decillion","undecillion","duodecillion","tredecillion","quattuordecillion","sexdecillion","septendecillion","octodecillion","novemdecillion","vigintillion") + + output = [] + if n == 0: + output.append("zero") + else: + s = str(n) + groups = (len(s)+2)/3 + s = s.zfill(groups*3) + + for i in xrange(0, groups*3, 3): + h,t,u = int(s[i]), int(s[i+1]), int(s[i+2]) + g = groups-(i/3+1) + + if h > 0: + output.append(units[h]+" hundred") + if t > 1: + if u > 0: + output.append(tens[t]+"-"+units[u]) + else: + output.append(tens[t]) + elif t == 1: + if u > 0: + output.append(teens[u]) + else: + output.append(tens[t]) + else: + if u > 0: + output.append(units[u]) + + if g > 0 and (h+t+u) > 0: + if i == (groups*3)-6: + output.append(thousands[g]+" and") + else: + output.append(thousands[g]+",") + + if readable: + output = " ".join(output) + return output + + def clamp(n, smallest, largest): + return max(smallest, min(n, largest)) + + def white_tint(image): + return Transform( image, matrixcolor=TintMatrix((1.1, 1.1, 1.1)) ) + + def gray_tint(image): + return Transform( image, matrixcolor=SaturationMatrix(0.0) ) + + def yellow_tint(image): + return Transform( image, matrixcolor=TintMatrix((1.2, 1.1, 0.7)) ) + + def image_hover(image, brightness=0.12): + """Returns slightly brighter image used during hover events""" + return Transform( image, matrixcolor=BrightnessMatrix(brightness) ) + + def image_alpha(image, alpha=0.5): + """Returns an image with changed alpha 0 - fully transparent 1 - fully visible""" + return Transform( image, matrixcolor=OpacityMatrix(alpha) ) + + def set_clipboard(txt): + txt = str(txt) + pygame.scrap.put(pygame.scrap.SCRAP_TEXT, txt.encode("utf-8")) + + def get_clipboard(): + clipboard = pygame.scrap.get(pygame.scrap.SCRAP_TEXT) + if clipboard: + return clipboard + return None + + def evaluate(txt): + return __import__('ast').literal_eval(txt) + + def reset_variables(*args): + """Resets the given variables to their default values.""" + # Refer to renpy.ast.Default.set_default for implementation details + defaults_set = renpy.store._defaults_set + changed_set = renpy.store.__dict__.ever_been_changed + for arg in args: + if arg in defaults_set: + if arg in changed_set: + defaults_set.remove(arg) + changed_set.remove(arg) + elif config.developer: + raise Exception("The variable `{}` was not previously set with a default value.".format(arg)) + renpy.execute_default_statement(False) + + def disable_game_menu(): + setattr(renpy.store, "_game_menu_screen", None) + + def enable_game_menu(): + setattr(renpy.store, "_game_menu_screen", "save_screen") + + def make_revertable(obj): + if isinstance(obj, _list): + return [make_revertable(x) for x in obj] + elif isinstance(obj, _dict): + return dict([(make_revertable(k), make_revertable(v)) for (k,v) in obj.iteritems()]) + else: + return obj + + def is_integer(s): + def zero(s): + return (len(s) > 1 and s.startswith("0")) + + s = str(s) + + if s and s[0] in ("-", "+"): + return (not zero(s[1:]) and s[1:].isdigit()) + return (not zero(s) and s.isdigit()) + + def timeit(func, loops=10000, args=(), kwargs={}): + start = time.time() + for i in xrange(loops): + func(*args, **kwargs) + end = time.time() + print("The task has taken {} seconds to finish".format(end-start)) + + def list_swap_values(l, val1, val2): + """Mutates the original list.""" + l[val1], l[val2] = l[val2], l[val1] + + def random_choices(population, weights=None, cum_weights=None, k=1): + """Backported from python 3.6 + + Return a k sized list of population elements chosen with replacement. + If the relative weights or cumulative weights are not specified, + the selections are made with equal probability. + """ + + def accumulate(iterable, func=_add, initial=None): + it = iter(iterable) + total = initial + if initial is None: + try: + total = next(it) + except StopIteration: + return + yield total + for element in it: + total = func(total, element) + yield total + + random = renpy.random.random + if cum_weights is None: + if weights is None: + _int = int + total = len(population) + return [population[_int(random() * total)] for i in range(k)] + cum_weights = list(accumulate(weights)) + elif weights is not None: + raise TypeError('Cannot specify both weights and cumulative weights') + + if len(cum_weights) != len(population): + raise ValueError('The number of weights does not match the population') + + #bisect = _bisect.bisect + total = cum_weights[-1] + hi = len(cum_weights) - 1 + return [population[bisect(cum_weights, random() * total, 0, hi)] for i in range(k)] + + def natsort_key(s, pattern=re.compile("([0-9]+)")): + return [int(t) if t.isdigit() else t.lower() for t in pattern.split(str(s))] + + def tts(s): + renpy.display.tts.tts(str(s)) + + def is_in_lead(house): + if isinstance(house, basestring): + house = getattr(renpy.store, house) + + return (house == max(gryffindor, slytherin, ravenclaw, hufflepuff)) + + def play_potion_return(who): + if game.daytime: + return + + for i in inventory.get_instances_of_type("potion"): + if not who in i.usable_on: + continue + + if not i.in_progress[who]: + continue + + i.ret(who) diff --git a/game/scripts/utility/common_labels.rpy b/game/scripts/utility/common_labels.rpy new file mode 100644 index 00000000..501a09c0 --- /dev/null +++ b/game/scripts/utility/common_labels.rpy @@ -0,0 +1,356 @@ +# Hide all character images (not chibi) +label hide_characters: + hide hermione_main + hide luna_main + hide cho_main + hide astoria_main + hide susan_main + hide tonks_main + hide snape_main + hide screen genie_main + # Do not add transitions. Use one after return. + return + +label hide_screens: + # Remove all displayables on layer 'screens' + $ renpy.scene("screens") + return + +label update_interface_color(color=None): + if color in ["gold", "gray"]: + $ interface_color = color + elif game.daytime: + $ interface_color = "gold" + else: + $ interface_color = "gray" + + return + +label stop_sound_effects: + stop bg_sounds fadeout 0.5 + stop weather fadeout 0.5 + return + +# Reset menu +label reset_menu_position: + + $ menu_x = 0.5 + $ menu_y = 0.6 + + return + +label bld(action=None): + if action == "hide": + hide screen bld1 + else: + show screen bld1 + with d3 + + return + +label blktone: + show screen bld1 # blktone looks stupid without bld1 + show screen blktone + with d5 + + return + +label hide_blktone: + hide screen blktone + with d5 + + return + +label blktone_top: + show screen bld1 # blktone looks stupid without bld1 + show screen blktone # Has higher zorder than normal blktone + with d5 + + return + +label hide_blktone_top: + hide screen blktone + with d5 + + return + +label blkfade: + hide screen bld1 + hide screen blktone + show screen blkfade + with d5 + pause.2 + + return + +label hide_blkfade: + hide screen blkfade + with d5 + + return + +label ctc: + show screen ctc + with d3 + pause + hide screen ctc + with d1 + + return + +label play_sound(sound=""): + + # Objects + if sound in ["knock", "knocking"]: # knocking + $ renpy.play('sounds/knocking.ogg') + elif sound in ["knock2", "knocking2"]: # knocking + $ renpy.play('sounds/knocking2.ogg') + elif sound == "door": + $ renpy.play('sounds/door.ogg') + elif sound in ["lock","unlock"]: # lock + $ renpy.play('sounds/09_lock.ogg') + elif sound in ["desk","climb_desk"]: # climb_desk + $ renpy.play('sounds/08_hop_on_desk.ogg') + elif sound == "owl": + play sound "sounds/owl.ogg" + + # Ambience + elif sound == "applause": + $ renpy.play('sounds/applause01.ogg') + + # Affection + elif sound in ["gulp", "gulping", "swallow", "swallowing"]: # gulp + $ renpy.play('sounds/gulp.ogg') + elif sound == "slap_1": + $ renpy.play('sounds/slap.ogg') + elif sound == "slap": # slap_2 + $ renpy.play('sounds/slap_02.ogg') + elif sound == "slap_3": + $ renpy.play('sounds/slap_03.ogg') + elif sound in ["spit", "spitting"]: # spit + $ renpy.play('sounds/spit.ogg') + elif sound in ["kick", "kicking", "bump"]: # kick + $ renpy.play('sounds/kick.ogg') + elif sound in ["kiss", "kissing"]: # kiss + $ renpy.play('sounds/kiss.ogg') + elif sound in ["insert", "inserting", "goo"]: # insert + $ renpy.play('sounds/gltch.ogg') + elif sound == "plop": + $ renpy.play('sounds/plop.ogg') + elif sound in ["pop", "bottle"]: # pop + $ renpy.play('sounds/bottle.ogg') + elif sound == "snore": + $ renpy.play('sounds/snore1.ogg') + elif sound == "snore_quiet": + $ renpy.play('sounds/snore2.ogg') + elif sound == "snore_loud": + $ renpy.play('sounds/snore3.ogg') + elif sound == "giggle": + $ renpy.sound.play("sounds/giggle2_loud.ogg") + elif sound == "gasp": + $ renpy.sound.play("sounds/MaleGasp.ogg") + + # Magic + elif sound == "spell": + $ renpy.play('sounds/magic2.ogg') + elif sound == "morph": + $ renpy.sound.play("sounds/magic3.ogg") + elif sound == "magic": + $ renpy.play('sounds/magic4.ogg') + + # Movement + elif sound == "footsteps": + $ renpy.play('sounds/footsteps.ogg') + elif sound == "walking": + $ renpy.play('sounds/run_04.ogg') + elif sound == "running": + $ renpy.play('sounds/run_03.ogg') + elif sound == "sprinting": + $ renpy.play('sounds/run_02.ogg') + elif sound in ["walking_on_grass", "grass"]: # walking_grass + $ renpy.play('sounds/steps_grass.ogg') + + # Interface + elif sound == "scroll": + $ renpy.play('sounds/scroll.ogg') + elif sound in ["equip", "equip_inventory", "cloth"]: # equip + $ renpy.play('sounds/cloth_sound.ogg') + + # Misc + elif sound == "scratch": + $ renpy.play('sounds/scratch.ogg') + elif sound == "shatter": + $ renpy.play('sounds/glass_shatter.ogg') + elif sound in ["glass_break","glass"]: + $ renpy.play('sounds/glass_break.ogg') + + # Undefined sounds fallback + elif renpy.loadable("sounds/{}.ogg".format(sound)): + $ renpy.play("sounds/{}.ogg".format(sound)) + + return + +#TODO One keyword per theme (maybe define everything in a dictionary to simplify code further?) +label play_music(music="", fadein=1.0, fadeout=1.0): + if music == "stop": + stop music fadeout fadeout + return + + + # Character Music + if music in ["snape", "dark_fog"]: # snape + play music "music/Dark Fog.ogg" fadein fadein fadeout fadeout if_changed + elif music in ["hermione", "chipper_doodle"]: # hermione + play music "music/Chipper Doodle v2.ogg" fadein fadein fadeout fadeout if_changed + elif music == "cho": + play music "music/fuzzball-parade-by-kevin-macleod.ogg" fadein fadein fadeout fadeout if_changed + elif music == "astoria": + play music "music/KMcL_OpenThoseBrightEyes.ogg" fadein fadein fadeout fadeout if_changed + elif music == "susan": + play music "music/teddy-bear-waltz-by-kevin-macleod.ogg" fadein fadein fadeout fadeout if_changed + elif music == "tonks": + play music "music/scheming-weasel-slower-version-by-kevin-macleod.ogg" fadein fadein fadeout fadeout if_changed + elif music == "luna": + play music "music/wallpaper-by-kevin-macleod.ogg" fadein fadein fadeout fadeout if_changed + elif music == "playful_tension": + play music "music/(Orchestral) Playful Tension by Shadow16nh.ogg" fadein fadein fadeout fadeout if_changed + elif music == "silly": + play music "music/silly_fun_loop.ogg" fadein fadein fadeout fadeout if_changed + + # Store Music + elif music == "weasley_store": + play music "music/weasley_store.ogg" fadein fadein fadeout fadeout if_changed + elif music == "clothing_store": + play music "music/clothing_store.ogg" fadein fadein fadeout fadeout if_changed + + # Background Music + elif music == "day": + play music "music/Brittle Rille.ogg" fadein fadein fadeout fadeout if_changed + elif music == "night": + play music "music/Music for Manatees.ogg" fadein fadein fadeout fadeout if_changed + elif music == "night_outside": + play music "sounds/night.ogg" fadein fadein fadeout fadeout if_changed + elif music == "jazz": + play music "sounds/jazz take 2.ogg" fadein fadein fadeout fadeout if_changed + + # Interface + elif music == "wardrobe": + play music "music/Spring_In_My_Step.ogg" fadein fadein fadeout fadeout if_changed + + # Misc + elif music == "hitman": + play music "music/hitman.ogg" fadein fadein fadeout fadeout if_changed + elif music == "cardgame": + play music "music/Juhani_Junkala.ogg" fadein fadein fadeout fadeout if_changed + elif music in ["sad","grape_soda"]: # sad + play music "music/GrapeSodaIsFuckingRawbyjrayteam6.ogg" fadein fadein fadeout fadeout if_changed + elif music == "anguish": + play music "music/Anguish.ogg" fadein fadein fadeout fadeout if_changed + elif music == "trance": + play music "music/Under-the-Radar by PhobyAk.ogg" fadein fadein fadeout fadeout if_changed + elif music == "despair": + play music "music/Despair_by_erenik.ogg" fadein fadein fadeout fadeout if_changed + elif music == "agenda": + play music "music/hidden-agenda-by-kevin-macleod.ogg" fadein fadein fadeout fadeout if_changed + elif music == "intro": + play music "music/the-chamber-by-kevin-macleod.ogg" fadein fadein fadeout fadeout if_changed + elif music == "snape_office": + play music "music/the-other-side-of-the-door-by-kevin-macleod-from-filmmusic-io.ogg" fadein fadein fadeout fadeout if_changed + + # Fallback + else: + python: + try: + renpy.music.play(filenames="music/"+music+".ogg", channel="music", loop=True, fadeout=1.0, fadein=1.0) + except IOError: + if config.developer: + raise Exception("Music not found: {}".format(music)) + return + +# Play day/night theme +label music_block: + if game.daytime: + call play_music("day") + else: + call play_music("night") + return + +label unlock_clothing(text="", item="interface/icons/box_blue_1.webp"): + + $ menu_x = 0.5 + $ menu_y = 0.75 #makes the menu lower so it isn't writing over the image. + + show screen clothing_unlock(item) + show screen blktone + with d3 + + menu: + "[text]" + "-Done Reading-": + pass + + hide screen clothing_unlock + hide screen blktone + with d3 + + $ item.unlock() + + call reset_menu_position + + return + + +label describe_mood(name, value): + call blktone + if 5 > value >= 1: + ">[name] is a little upset with you..." + elif 10 > value >= 5: + ">[name] is upset with you." + elif 20 > value >= 10: + ">[name] is very upset with you." + elif 30 > value >= 20: + ">[name] is mad at you." + elif 40 > value >= 30: + ">[name] is very mad at you." + elif 50 > value >= 40: + ">[name] is furious at you." + elif value >= 50: + ">[name] hates your guts." + else: + ">[name] is calm." + call hide_blktone + + return + + +label describe_mood_after_gift(was_negative, mood, change): + if was_negative and mood == 0: + call notes + "She's no longer upset with you." + elif was_negative and change < 0: + "But she's still upset with you." + elif was_negative: + "She's still upset with you." + + return + + +label notes(): + $ renpy.play('sounds/win_04.ogg') #Not loud. + hide screen notes + show screen notes + return + +label not_implemented(): + "Not implemented." + return + +label end_of_content(): + $ renpy.choice_for_skipping() + + "SilverStudioGames" "This concludes story progression for this character as of version [config.version].\nThere still may be side events and activities that you have missed, but main story won't progress past this point." + "SilverStudioGames" "We hope you have enjoyed yourself. Stay tuned for more in the future." + call notes + "> All stats have been maxed out. You can now use all of the wardrobe options." + + return diff --git a/game/scripts/utility/common_screens.rpy b/game/scripts/utility/common_screens.rpy new file mode 100644 index 00000000..0f6865ad --- /dev/null +++ b/game/scripts/utility/common_screens.rpy @@ -0,0 +1,54 @@ +screen blkfade(): + tag blkfade + zorder 25 + add Color("#000") + +screen whitefade(): + tag whitefade + zorder 25 + add Color("#fff") + +screen blktone(alpha=0.5): + tag blktone + zorder 25 + add Color("#000", alpha=alpha) + +screen white(): + zorder 20 + add Color("#fff") + +screen bld1(): + zorder 10 + tag bld1 + + add "interface/bld.webp" + +screen bld2(): + zorder 10 + add Transform("interface/bld.webp", yzoom=-1.0) + +screen notes(): + add "notes" xpos 320+140 ypos 330 + zorder 1 + +screen clothing_unlock(item): + zorder 30 + modal True + + use notes + on "show" action Play("sound", "sounds/win2.ogg") + + if isinstance(item, DollCloth): + add item.get_icon() align (0.5, 0.5) zoom 0.5 + elif isinstance(item, DollOutfit): + add item.get_image() align (0.5, 0.0) yoffset -50 zoom 0.4 + +screen invisible_button(action=NullAction(), keysym=None, alternate=None): + + # Note: Actions cannot be passed as transclude, separate parameter is required. + button style "empty": + keyboard_focus False + action action + keysym keysym + alternate alternate + transclude diff --git a/game/scripts/utility/devtools.rpy b/game/scripts/utility/devtools.rpy new file mode 100644 index 00000000..f56bc175 --- /dev/null +++ b/game/scripts/utility/devtools.rpy @@ -0,0 +1,122 @@ + +init python early: + if renpy.version_tuple < (7,4,0,1006): + raise RuntimeWarning("Your Ren'Py launcher is outdated, the current minimal requirement is 7.4.0.1006+\nPlease perform an update and try launching the game again.") + + from renpy.uguu import glGetString, GL_VENDOR, GL_RENDERER, GL_VERSION + + def get_gpu_info(): + try: + info = "\n".join([glGetString(GL_VENDOR), glGetString(GL_RENDERER), glGetString(GL_VERSION)]) + except: + info = "ERR: Unknown or incompatible driver." + return info + + def get_renderer(): + return "DirectX" if preferences.renderer == "angle2" else "OpenGL" + +init python: + config.missing_image_callback = missing_image_func + + if config.developer: + renpy.arguments.register_command("whitespace", save_whitespace) + else: + config.missing_label_callback = missing_label_func + config.return_not_found_label = "missing_return" + +init -1 python: + + def missing_image_func(path): + global systemerror + systemerror = ["Missing image", path] + file, ext = os.path.splitext(path) + + if renpy.loadable(file + ".png"): + return Image(file + ".png") + + if config.developer: + raise IOError("Missing image: {}".format(path)) + return Image("images/blank.webp") + + + def missing_label_func(name): + global systemerror + systemerror = ["Missing label", name] + return "missing_label" + + + def TBA_message(msg="Currently unavailable, check in later versions of the game."): + renpy.show_screen("blktone") + renpy.with_statement(d3) + renpy.say(nar, msg) + renpy.hide_screen("blktone") + renpy.with_statement(d3) + return + + def save_whitespace(refresh=False): + """ + Generates a whitespace information file. + """ + global whitespace_dict + + ap = renpy.arguments.ArgumentParser("Generates a whitespace information file.", require_command=False) + ap.add_argument("--refresh", action="store_true", help="Recalculate for all images.") + args = ap.parse_args() + if args.refresh or refresh: + whitespace_dict = {} + + path = os.path.normpath(config.gamedir) + images = [] + for root, dirs, files in os.walk(path): + for file in fnmatch.filter(files, "*.webp"): + img = os.path.join(root, file).replace("\\", "/").split("/game/")[1] + images.append(img) + + c = len(images) + for i, img in enumerate(images): + # stdout causes issues on Windows + + # sys.stdout.write("\rCalculating whitespace... {:3.0f}%".format(i / float(c - 1) * 100.0)) + # sys.stdout.flush() + crop_whitespace(img) + + file = os.path.normpath(config.gamedir + "/images.whitespace") + with open(file, "w") as f: + for img, box in sorted(whitespace_dict.iteritems()): + f.write(u"{}:{},{},{},{}\n".format(img, *box)) + + print "\rCalculating whitespace... Done!" + return False + +label missing_label(): + $ renpy.choice_for_skipping() + $ err_msg1 = systemerror[0] + $ err_msg2 = systemerror[1] + "{color=#7a0000}System{/color}" "Uh-oh. Looks like you've encountered a bug. Don't worry, we will try to return you back to the office after displaying the error message, your save file won't be affected." + "{color=#7a0000}System{/color}" "{color=#7a0000}Error:{/color} [err_msg1] '{color=#7a0000}[err_msg2]{/color}'\n\n\n{size=-4}You can report this bug on our {a=https://discord.gg/7PD57yt}discord{/a}.{/size}" + $ active_girl = None + $ systemerror = [None, None] + jump main_room + +label missing_return(): + $ renpy.choice_for_skipping() + "{color=#7a0000}System{/color}" "Uh-oh. Looks like you've encountered a bug. Don't worry, we will try to return you back to the office after displaying the error message, your save file won't be affected." + "{color=#7a0000}System{/color}" "{color=#7a0000}Error:{/color} Point of no return.\n\n\n{size=-4}You can report this bug on our {a=https://discord.gg/7PD57yt}discord{/a}.{/size}" + $ active_girl = None + jump main_room + +screen placeholder(): + tag cg + zorder 16 # above dolls + + add Placeholder("bg") + add Placeholder("girl") + + +init 2000 python hide: + def set_screen_layer(layer, *screens): + for scr_name in screens: + for _, scr in renpy.display.screen.get_all_screen_variants(scr_name): + scr.layer = layer + + set_screen_layer("interface", "_performance", "_image_load_log") diff --git a/game/scripts/utility/dialogue.rpy b/game/scripts/utility/dialogue.rpy new file mode 100644 index 00000000..e8f296de --- /dev/null +++ b/game/scripts/utility/dialogue.rpy @@ -0,0 +1,32 @@ + +# Handling of doll transitions in dialogue + +define sprite_pos = { + "x": { + "base": 640, + "default": 640, + "far_right": 650, + "mid": 300, + "left": 200, + "far_left": 25, + "right": 400, + "wardrobe": 540, + "close": 540 + }, + + "y": { + "base": 0, + "default": 0, + "head": 200, + "low": 170 + } +} + +init -1 python: + + def replace_text(s): + s = s.replace('--', u'\u2014') # em dash + return s + + config.replace_text = replace_text + diff --git a/game/scripts/utility/editor.rpy b/game/scripts/utility/editor.rpy new file mode 100644 index 00000000..10c0f8bf --- /dev/null +++ b/game/scripts/utility/editor.rpy @@ -0,0 +1,555 @@ +# init python: +# def catch_character_call(label, called): +# if called: +# if label.startswith(("her_main", "cho_main", "ast_main", "ton_main", "sus_main", "lun_main", "hoo_main")): +# editor.catch(label) + +# def lookup(what): +# if isinstance(what, (int, str, float, bool)): +# return None + +# for k, v in store.__dict__.iteritems(): +# if k.startswith("_"): +# continue + +# if v == what: +# return k +# return None + +# class ExpressionEditor(NoRollback): +# transforms = ("move_fade", "sprite_fly_idle") + +# char = {"her_main": "hermione", +# "ton_main": "tonks", +# "ast_main": "astoria", +# "cho_main": "cho", +# "sus_main": "susan", +# "lun_main": "luna", +# "hoo_main": "hooch", +# } + +# def __init__(self): +# self.label = None +# self.line = None +# self.line_contents = None +# self.args = None + +# self._file = None +# self._file_contents = None + +# self.define_expressions() +# self.changes = _dict() + +# def launch_editor(self, file=None, line=None): +# """Launches external text editor.""" +# if renpy.in_rollback() or renpy.in_fixed_rollback(): +# return + +# renpy.launch_editor([file], line) +# return + +# def overwrite_statement(self): + +# # Backup file contents +# with open(self._file, "r") as f: +# self._file_contents = f.readlines() + +# found = False + +# try: +# new = self.get_new_statement() +# old = self.line_contents + +# # Overwrite the file contents +# with open(self._file, "w") as f: +# for n, l in enumerate(self._file_contents, 1): +# if n == self.line and l.partition("#")[0].strip() == old: +# found = True + +# f.writelines(l.replace(old, new)) + +# # Is it a new line, or have we already edited it? +# if n not in self.changes.get(self._file, _list()): +# self.changes.setdefault(self._file, _dict()).setdefault(n, [old, new, self.args, self.char[self.label], None]) +# else: +# self.changes[self._file][n] = [old, new, self.args, self.char[self.label], None] + +# self.line_contents = new +# else: +# f.writelines(l) + +# if not found: +# renpy.notify("Line {} contents changed unexpectedly, no changes were made.".format(self.line)) +# return +# except: +# # Restore backup +# with open(self._file, "w") as f: +# for l in self._file_contents: +# f.writelines(l) +# renpy.notify("An error occurred, no changes were made.") +# return + +# renpy.notify("Saved.") +# return + +# def get_new_statement(self): +# text = "\"\", " if not self.args["text"] else "\"{}\", ".format(self.args["text"].replace("\"", "\\\"")) + +# mouth = "" if self.args["mouth"] == False else "\"{}\", ".format(self.args["mouth"]) +# eyes = "" if self.args["eyes"] == False else "\"{}\", ".format(self.args["eyes"]) +# eyebrows = "" if self.args["eyebrows"] == False else "\"{}\", ".format(self.args["eyebrows"]) +# pupils = "" if self.args["pupils"] == False else "\"{}\", ".format(self.args["pupils"]) +# hair = "" if self.label != "ton_main" or self.args["hair"] in (None, "(No change)") else "hair=\"{}\", ".format(self.args["hair"]) + +# cheeks = "" if self.args["cheeks"] in (None, "(No change)") else "cheeks=\"{}\", ".format(self.args["cheeks"]) +# tears = "" if self.args["tears"] in (None, "(No change)") else "tears=\"{}\", ".format(self.args["tears"]) +# emote = "" if self.args["emote"] == None else "emote=\"{}\", ".format(self.args["emote"]) +# face = "" if self.args["face"] == None else "face=\"{}\", ".format(self.args["face"]) + +# xpos = self.args["xpos"] +# if xpos == None: +# xpos = "" +# else: +# xpos = "xpos={}, ".format(xpos) if is_integer(xpos) else "xpos=\"{}\", ".format(xpos) + +# ypos = self.args["ypos"] +# if ypos == None: +# ypos = "" +# else: +# ypos = "ypos={}, ".format(ypos) if is_integer(ypos) else "ypos=\"{}\", ".format(ypos) + +# flip = "" if self.args["flip"] == None else "flip={}, ".format(self.args["flip"]) +# trans = "" if self.args["trans"] == None else "trans={}, ".format(self.args["trans"]) +# animation = "" if self.args["animation"] == False else "animation={}".format(self.args["animation"]) + +# new = "call {}({}{}{}{}{}{}{}{}{}{}{}{}{}{}{})".format(self.label, text, mouth, eyes, eyebrows, pupils, hair, cheeks, tears, emote, face, xpos, ypos, flip, trans, animation) + +# new = new.replace(", )", ")") +# return new + +# def catch(self, label): +# # Get file and line number +# stack = renpy.get_return_stack()[-1] +# node = renpy.game.script.namemap.get(stack, None) + +# # Console call fallback +# if node.filename == "": +# return + +# self._file = config.basedir+"/"+node.filename +# self.line = node.linenumber +# self.label = label + + +# if self.changes.get(self._file, _dict()).get(self.line, None): +# # Get arguments from cache +# self.args = self.changes[self._file][self.line][2] +# else: +# # Get arguments from node +# node = renpy.game.script.lookup_or_none(self.label) +# self.args = _dict([(k, getattr(store, k)) for k in node.parameters.apply(None, None).iterkeys()]) + +# if self.args["cheeks"] == None: +# self.args["cheeks"] = "(No change)" +# if self.args["tears"] == None: +# self.args["tears"] = "(No change)" +# if self.label == "ton_main": +# if self.args["hair"] == None: +# self.args["hair"] = "(No change)" + +# # Lookup transition name (Reverse lookup) +# trans_arg = self.args["trans"] + +# if trans_arg: +# self.args["trans"] = lookup(trans_arg) + +# #_transitions = _dict([(obj.callable, name) for (name, obj) in store.__dict__.iteritems() if name in self.transitions]) +# #self.args["trans"] = _transitions[self.args["trans"].callable] + +# # Lookup transform name +# anim_arg = self.args["animation"] + +# if not anim_arg in (False, None): +# #self.args["animation"] = lookup(anim_arg) + +# _transforms = _dict([(obj, name) for (name, obj) in store.__dict__.iteritems() if isinstance(obj, renpy.atl.ATLTransformBase)]) +# self.args["animation"] = _transforms[anim_arg] + +# # Check for already made changes and hijack the line. +# if self.changes.get(self._file, _dict()).get(self.line, None): +# self.line_contents = self.changes[self._file][self.line][1] +# else: +# # Read file and find the line in question +# with open(self._file, "U") as f: +# for n, l in enumerate(f, 1): +# if n == self.line: +# l = l.partition("#")[0].strip() # Ignore comments and strip spaces +# if l.startswith("call {}".format(self.label)): +# self.line_contents = l +# break +# return + +# def set_data(self, arg, val): +# if not isinstance(val, basestring): +# return + +# if self.args[arg] != val: +# self.args[arg] = val +# self.overwrite_statement() + +# def get_tooltip(self, file, line): + +# if self.changes[file][line][4] == None: +# imagepath = config.basedir.replace("\\", "/") +# args = self.changes[file][line][2] +# char = self.changes[file][line][3] + +# if char == "hermione": +# hair = her_hair_base +# box = (450, 275, 320, 240) +# elif char == "tonks": +# hair = ton_hair_base_new +# box = (450, 275, 320, 240) +# elif char == "astoria": +# hair = ast_hair_base +# box = (450, 320, 280, 240) +# elif char == "cho": +# hair = cho_hair_ponytail1 +# box = (450, 310, 280, 240) +# elif char == "susan": +# hair = sus_hair_base +# box = (450, 310, 280, 240) +# elif char == "luna": +# hair = lun_hair_base +# box = (450, 310, 280, 240) +# elif char == "hooch": +# hair = hoo_hair_base +# box = (370, 240, 280, 240) + +# sprites = [imagepath+"/game/characters/"+char+"/body/base/front.webp"] + +# if not "No change" in args["cheeks"]: +# sprites.append(imagepath+"/game/characters/"+char+"/face/cheeks/"+args["cheeks"]+".webp") +# sprites.append(imagepath+"/game/characters/"+char+"/face/eyes/"+args["eyes"]+".webp") +# if not any(x in args["eyes"] for x in ("closed", "happyCl")): +# m = imagepath+"/game/characters/"+char+"/face/eyes/"+args["eyes"]+"_mask.webp" +# sprites.append(AlphaMask(imagepath+"/game/characters/"+char+"/face/pupils/"+args["pupils"]+".webp", m)) +# sprites.append(imagepath+"/game/characters/"+char+"/face/eyebrows/"+args["eyebrows"]+".webp") +# if not "No change" in args["tears"]: +# sprites.append(imagepath+"/game/characters/"+char+"/face/tears/"+args["tears"]+".webp") +# sprites.append(imagepath+"/game/characters/"+char+"/face/mouth/"+args["mouth"]+".webp") + +# # Hair +# sprites.append(hair.get_back()[0]) +# if hair.back_outline: +# sprites.append(hair.back_outline) +# sprites.append(hair.get_image()) + +# sprites = tuple(itertools.chain.from_iterable(((0,0), x) for x in sprites)) + +# self.changes[file][line][4] = At(Crop(box, Composite((1010, 1200), *sprites)), Transform(zoom=0.5)) +# return self.changes[file][line][4] + +# def set_expressions(self): +# if not self.char or not self.label: +# return + +# c = getattr(renpy.store, self.char[self.label]) + +# cheeks = None if self.args["cheeks"] in (None, "(No change)") else self.args["cheeks"] +# tears = None if self.args["tears"] in (None, "(No change)") else self.args["tears"] + +# if self.label == "ton_main": +# hair = None if self.args["hair"] in (None, "(No change)") else self.args["hair"] + +# # Hardcoded for tonks +# if hair: +# if hair in ("neutral", "basic", "reset"): +# target_color = tonks_haircolor +# elif hair in ("red", "angry", "furious"): +# target_color = [[164, 34, 34, 255], [219, 83, 83, 255]] +# elif hair in ("orange", "upset", "annoyed"): +# target_color = [[228, 93, 34, 255], [246, 193, 170, 255]] +# elif hair in ("yellow", "happy", "cheerful"): +# target_color = [[255, 213, 23, 255], [255, 239, 167, 255]] +# elif hair in ("green", "disgusted"): +# target_color = [[111, 205, 75, 255], [200, 237, 186, 255]] +# elif hair in ("blue", "sad"): +# target_color = [[64, 75, 205, 255], [182, 186, 237, 255]] +# elif hair == "purple": +# target_color = [[205, 75, 205, 255], [237, 186, 237, 255]] +# elif hair in ("white", "scared"): +# target_color = [[238, 238, 241, 255], [249, 249, 250, 255]] +# elif hair in ("pink", "horny"): +# target_color = [[255, 105, 180, 255], [251, 205, 222, 255]] + +# tonks.get_equipped("hair").set_color(target_color) + +# c.set_face(mouth=self.args["mouth"], eyes=self.args["eyes"], eyebrows=self.args["eyebrows"], pupils=self.args["pupils"], cheeks=cheeks, tears=tears) + +# def get_expressions(self, type): +# return sorted(self.expressions[self.char[self.label]][type]) + +# def define_expressions(self): +# def scan_files(char): +# dirs = { +# "mouth": None, +# "eyes": None, +# "eyebrows": None, +# "pupils": None, +# "cheeks": None, +# "tears": None, +# "hair": ["(No change)", "neutral", "angry", "upset", "happy", "disgusted", "sad", "purple", "scared", "horny"], +# } + +# for k, v in dirs.iteritems(): +# if k == "hair": +# continue + +# path = "{}/game/characters/{}/face/{}/".format(config.basedir, char, k) + +# if not os.path.exists(path): +# os.makedirs(path) + +# dirs[k] = list(x.rsplit(".webp")[0] for x in os.listdir(path) if x.endswith(".webp") and not "_mask" in x and not "_skin" in x) + +# dirs["cheeks"] += ["(No change)"] +# dirs["tears"] += ["(No change)"] + +# return _dict(dirs) + +# self.expressions = _dict([(x, scan_files(x)) for x in self.char.itervalues()]) + +# def editor_reset(): +# editor.changes = _dict() + +# if config.developer and not renpy.mobile: +# editor = ExpressionEditor() + +# config.label_callback = catch_character_call +# config.after_load_callbacks.append(editor_reset) +# config.interact_callbacks.append(editor.set_expressions) + +# screen editor(): +# layer "interface" +# tag editor +# zorder 0 +# style_prefix "editor" + +# default minimised = False +# default minimised_history = False +# default minimised_cg = False +# default frame_size = (250, 500) + +# default expressions = ("mouth", "eyes", "eyebrows", "pupils", "cheeks", "tears", "hair") + +# if config.developer and not _menu: + +# # Editor +# drag: +# drag_name "editor" +# draggable True +# drag_offscreen False +# drag_handle (0, 0, 1.0, 26) +# pos (50, 50) + +# window: +# background "#00000080" +# xysize (frame_size if not minimised else (250, 28)) + +# button action NullAction() style "empty" ypos 18 + +# text "Expression Editor {size=-2}ver 0.2{/size}" size 10 color "#FFF" outlines [(1, "#00000080", 1, 0)] + +# textbutton "_" ysize 28 offset (-32, -7) text_size 15 text_yalign 0.5 xalign 1.0 action [ToggleScreenVariable("minimised", True, False), SelectedIf(None)] tooltip ("Maximise" if minimised else "Minimise") +# textbutton "x" ysize 28 offset (6, -7) text_size 15 text_yalign 0.5 xalign 1.0 action Hide("editor") tooltip "Close editor" + +# frame: +# style "empty" +# xysize (236, 2) +# pos (0, 18) +# background "#FFFFFF80" + +# if not minimised: +# if editor.label: +# $ f = editor._file.split("/")[-1] +# $ l = editor.line + +# vbox: +# ypos 24 + +# for i in expressions: +# if i == "hair" and not editor.label == "ton_main": +# pass +# else: +# text i size 14 color "#fff" outlines [(1, "#00000080", 1, 0)] + +# hbox: +# xpos 12 +# box_wrap True + +# for j in editor.get_expressions(i): +# textbutton j: +# selected (j == editor.args[i]) +# action Function(editor.set_data, i, j) +# text_size 8 +# text_selected_color "#009900" +# text_xalign 0.5 +# xminimum 32 + +# # History +# drag: +# drag_name "editor_history" +# draggable True +# drag_offscreen False +# drag_handle (0, 0, 1.0, 26) +# pos (300, 50) +# frame: +# background "#00000080" +# xysize (frame_size if not minimised_history else (250, 28)) +# button action NullAction() style "empty" xysize (frame_size if not minimised_history else (250, 28)) ypos 18 + +# text "History" size 10 color "#FFF" outlines [(1, "#00000080", 1, 0)] + +# textbutton "_" ysize 28 offset (-32, -7) text_size 15 text_yalign 0.5 xalign 1.0 action [ToggleScreenVariable("minimised_history", True, False), SelectedIf(None)] tooltip ("Maximise" if minimised_history else "Minimise") +# textbutton "x" ysize 28 offset (6, -7) text_size 15 text_yalign 0.5 xalign 1.0 action Hide("editor") tooltip "Close editor" + +# frame: +# style "empty" +# xysize (236, 2) +# pos (0, 18) +# background "#FFFFFF80" + +# if not minimised_history: +# if editor.changes: +# $ n = 0 +# $ nn = 0 +# for k, v in editor.changes.iteritems(): +# $ n += 1 +# $ nn += len(v) +# text "[nn] changes in [n] files" size 10 color "#FFF" xalign 0.5 ypos 26 outlines [(1, "#00000080", 1, 0)] + +# frame: +# style "empty" +# xsize 236 +# ymaximum 400 +# yfill True +# ypos 42 + +# side "c r": +# area (0, 0, 236, 400) + +# viewport id "editor_history": +# draggable False +# mousewheel True + +# vbox: +# for fn in editor.changes.iterkeys(): +# text (fn.split("/")[-1]) size 10 color "#FFF" xalign 0.5 outlines [(1, "#00000080", 1, 0)] +# frame style "empty" xysize (236, 2) background "#FFFFFF80" + +# for l in editor.changes[fn].iterkeys(): +# textbutton "Line [l]": +# text_size 10 +# text_color "#FFF" +# text_outlines [(1, "#00000080", 1, 0)] +# if editor.line == l: +# background "#FFFFFF80" +# tooltip editor.get_tooltip(fn, l) +# action Function(editor.launch_editor, file=fn, line=l) +# vbar value YScrollValue("editor_history") xsize 10 +# else: +# text "No history." size 15 color "#FFF" align (0.5, 0.5) outlines [(1, "#00000080", 1, 0)] + +# # CG poser + +# if renpy.get_screen("animatedCG"): +# drag: +# drag_name "editor_cg" +# draggable True +# drag_offscreen False +# drag_handle (0, 0, 1.0, 26) +# pos (550, 50) +# frame: +# background "#00000080" +# xysize (frame_size if not minimised_cg else (250, 28)) +# button action NullAction() style "empty" xysize (frame_size if not minimised_cg else (250, 28)) ypos 18 + +# text "CG Poser" size 10 color "#FFF" outlines [(1, "#00000080", 1, 0)] + +# textbutton "_" ysize 28 offset (-32, -7) text_size 15 text_yalign 0.5 xalign 1.0 action [ToggleScreenVariable("minimised_cg", True, False), SelectedIf(None)] tooltip ("Maximise" if minimised_history else "Minimise") +# textbutton "x" ysize 28 offset (6, -7) text_size 15 text_yalign 0.5 xalign 1.0 action Hide("editor") tooltip "Close editor" + +# frame: +# style "empty" +# xysize (236, 2) +# pos (0, 18) +# background "#FFFFFF80" + +# if not minimised_cg: + +# $ x, y = camera.pos +# $ zoom = camera.zoom +# $ rotate = camera.rotate +# default pos_step = 5 +# default zoom_step = 0.05 +# default rotate_step = 5 +# vbox: +# text "Pos Step ({})".format(pos_step) color "#fff" +# hbox: +# textbutton "-": +# action SetScreenVariable("pos_step", max(pos_step-5, 5)) +# textbutton "+": +# action SetScreenVariable("pos_step", min(pos_step+5, 100)) +# text "Pos (x={}, y={})".format(x, y) color "#fff" +# hbox: +# textbutton "X-": +# action [SetVariable("camera.pos", (x-pos_step, y)), Function(camera.redraw, 0)] +# textbutton "X+": +# action [SetVariable("camera.pos", (x+pos_step, y)), Function(camera.redraw, 0)] +# hbox: +# textbutton "Y-": +# action [SetVariable("camera.pos", (x, y-pos_step)), Function(camera.redraw, 0)] +# textbutton "Y+": +# action [SetVariable("camera.pos", (x, y+pos_step)), Function(camera.redraw, 0)] + +# null height 20 + +# text "Zoom Step ({})".format(zoom_step) color "#fff" +# hbox: +# textbutton "-": +# action SetScreenVariable("zoom_step", max(zoom_step-0.01, 0.01)) +# textbutton "+": +# action SetScreenVariable("zoom_step", min(zoom_step+0.01, 0.25)) +# text "Zoom (zoom={})".format(zoom) color "#fff" +# hbox: +# textbutton "-": +# action [SetVariable("camera.zoom", zoom-zoom_step), Function(camera.redraw, 0)] +# textbutton "+": +# action [SetVariable("camera.zoom", zoom+zoom_step), Function(camera.redraw, 0)] + +# null height 20 + +# text "Rotate Step ({})".format(rotate_step) color "#fff" +# hbox: +# textbutton "-": +# action SetScreenVariable("rotate_step", max(rotate_step-1, 1)) +# textbutton "+": +# action SetScreenVariable("rotate_step", min(rotate_step+1, 1)) +# text "Rotate ({})".format(rotate) color "#fff" +# hbox: +# textbutton "-": +# action [SetVariable("camera.rotate", rotate-rotate_step), Function(camera.redraw, 0)] +# textbutton "+": +# action [SetVariable("camera.rotate", rotate+rotate_step), Function(camera.redraw, 0)] + +# null height 50 +# textbutton "Copy to Clipboard" action [Function(set_clipboard, "$ camera.set(zoom={}, pos=({}, {}), rotate={}, t=1.0)".format(zoom, x, y, rotate)), Notify("Copied!")] + +# style editor_button is empty: +# margin (3, 3) + +# style editor_button_text: +# color "#cccccc" +# hover_color "#ffffff" +# outlines [(1, "#00000080", 1, 0)] diff --git a/game/scripts/utility/image_crop.rpy b/game/scripts/utility/image_crop.rpy new file mode 100644 index 00000000..d30ac0a3 --- /dev/null +++ b/game/scripts/utility/image_crop.rpy @@ -0,0 +1,35 @@ +init python: + whitespace_dict = {} + with renpy.file("images.whitespace") as fp: + line = fp.readline() + while line: + path, area = line.strip("\r\n").split(':') + whitespace_dict[path] = map(int, area.split(',')) + line = fp.readline() + + def crop_whitespace(path): + # Return box from whitespace_dict, or calculate and store it + if path in whitespace_dict: + box = whitespace_dict[path] + else: + surf = Image(path).load() + box = tuple(surf.get_bounding_rect()) + whitespace_dict[path] = box + return box + + def crop_image_zoom(path, xsize, ysize, grayscale=False): + x, y, w, h = crop_whitespace(path) + matrix = SaturationMatrix(0) if grayscale else None + sprite = Image(path) + + return Transform(sprite, crop=(x, y, w, h), xsize=xsize, ysize=ysize, fit="contain", matrixcolor=matrix, subpixel=True) + + def get_zoom(image, size): + if isinstance(image, basestring): + image = Image(image) + + r = renpy.render(image, 800, 800, 0, 0) + x, y = r.get_size() + xsize, ysize = size + + return min(ysize / y, xsize / x) diff --git a/game/scripts/utility/lint.rpy b/game/scripts/utility/lint.rpy new file mode 100644 index 00000000..b9e48098 --- /dev/null +++ b/game/scripts/utility/lint.rpy @@ -0,0 +1,272 @@ +init: + if config.developer: + # Dummy code used to stop lint from reporting false errors. + image snape_main = Null() + image genie_main = Null() + image tonks_main = Null() + image hermione_main = Null() + image cho_main = Null() + image luna_main = Null() + image astoria_main = Null() + image susan_main = Null() + image hooch_main = Null() + image hooch = Null() + +init -1 python: + if config.developer: + + def lint_characters(): + + def strip(s): + # We need a custom strip implementation because we cannot tell + # if the raw argument isn't encapsulated in double, or triple quotes + if s.startswith(('"', "'")) and s.endswith(('"', "'")): + return s[1:-1] + return s + + renpy.execute_default_statement(False) + + # Add images to linting list to avoid undefined errors + for i in CHARACTERS: + prefix = "{}_main".format(i) + renpy.lint.image_prefixes[prefix] = True + + nodes = [i for i in renpy.game.script.all_stmts if isinstance(i, (renpy.ast.Say, renpy.ast.Menu))] + nodes.sort(key=lambda x: (x.filename, x.linenumber)) + + SELF_CLOSING_TAGS = re.compile(r'(\{\{)|(\{(p|w|nw|fast|done|image|space)(?:\=([^}]*))?\})', re.S) + + EXPRESSIONS = ["mouth", "eyes", "eyebrows", "pupils", "cheeks", "tears"] + POSITIONS = ["xpos", "ypos", "pos"] + OTHER = ["flip", "trans", "animation", "hair", "emote"] + KEYS = EXPRESSIONS + POSITIONS + OTHER + INTERPUNCT = (".", "!", "?", "--", "*", ")", "}") + + RE_SPACES = re.compile(r"\s+\s+") + RE_COMMA = re.compile(r"\w+, \w+ and") + RE_BRACKET = re.compile(r"\([^)]*$") + RE_REPEATED = re.compile(r"\b(\w+)\b \b\1\b") + RE_QUOTES = re.compile(r"[.,]\\\"") + RE_ARTICLES = re.compile(r" a [aeiou][^uni|eu|ur|usa]") + + for node in nodes: + + if isinstance(node, renpy.ast.Say): + who = node.who + what = [node.what] + file = node.filename + line = node.linenumber + args = node.arguments + code = node.get_code() + type = "say" + elif isinstance(node, renpy.ast.Menu): + who = None + what = [x[0] for x in node.items] + file = node.filename + line = node.linenumber + args = None + code = None + type = "menu" + + has_failed = False + has_xpos = False + has_ypos = False + uses_ypos_head = False + + if args: + kwargs = dict.fromkeys(KEYS) + + args = args.arguments + + for i, arg in enumerate(args): + key, val = arg + + if key is None: + kwargs[KEYS[i]] = val + else: + kwargs[key] = val + + for key, val in kwargs.iteritems(): + # Validate facial expressions + if key in EXPRESSIONS and who in SAYERS.iterkeys(): + + if val is None: + continue + + if not val.startswith(("\"", "'")) and not val.endswith(("\"", "'")): # Ignore variables + continue + + # Node argument values are (fucking) raw + val = strip(val) + + msg = "'{}'".format(key) + fn = "characters/{}/face/{}/{}.webp".format(SAYERS.get(who), key, val) + + if not has_failed: + # Avoid repeating node destination + renpy.lint.report_node = node + has_failed = True + + renpy.lint.check_file(msg, fn) + + # Validate positional arguments + if key in POSITIONS: + if val is None: + continue + + # Node argument values are (fucking) raw + val = strip(val) + + # Skip integers + try: + int(val) + continue + except: + pass + + if key == "xpos": + has_xpos = True + + val = sprite_pos.get("x").get(val, val) + + elif key == "ypos": + has_ypos = True + + if val == "head": + uses_ypos_head = True + + val = sprite_pos.get("y").get(val, val) + + if not isinstance(val, int): + if not has_failed: + # Avoid repeating node destination + renpy.lint.report_node = node + has_failed = True + + msg = "'{}' requires an integer, or a pre-defined named position, not '{}'".format(key, val) + renpy.lint.report(msg) + + # This would require fixing hundreds of calls. Might postpone it... + + # if uses_ypos_head and not has_xpos: + # if not has_failed: + # # Avoid repeating node destination + # renpy.lint.report_node = node + # has_failed = True + + # msg = "'ypos' uses pre-defined 'head' position, but is lacking 'xpos'" + # renpy.lint.report(msg) + + if key in OTHER: + + if val is None: + continue + + # Node argument values are (fucking) raw + val = strip(val) + + if key == "emote": + msg = "'{}'".format(key) + fn = "characters/{}/emote/{}.webp".format(SAYERS.get(who), val) + + if not has_failed: + # Avoid repeating node destination + renpy.lint.report_node = node + has_failed = True + + renpy.lint.check_file(msg, fn) + + for string in what: + + if not string: + continue + + if string.startswith("[") and string.endswith("]"): # Ignore string interpolation + continue + + # Check for multiple spaces inside 'what' string + match = re.search(RE_SPACES, string.strip()) + + if match: + if not has_failed: + # Avoid repeating node destination + renpy.lint.report_node = node + has_failed = True + + msg = type + " string contains multiple spaces" + renpy.lint.report(msg) + + # Check for the (lack of) oxford comma inside 'what' string + match = re.search(RE_COMMA, string.strip()) + + if match: + if not has_failed: + # Avoid repeating node destination + renpy.lint.report_node = node + has_failed = True + + msg = type + " string is missing oxford comma(s)" + renpy.lint.report(msg) + + # Check for missing brackets inside 'what' string + match = re.search(RE_BRACKET, string.strip()) + + if match: + if not has_failed: + # Avoid repeating node destination + renpy.lint.report_node = node + has_failed = True + + msg = type + " string is missing a closing bracket" + renpy.lint.report(msg) + + # Check for repeated words words inside 'what' string + match = re.search(RE_REPEATED, string.strip()) + + if match: + if not has_failed: + # Avoid repeating node destination + renpy.lint.report_node = node + has_failed = True + + msg = type + " string contains repeated words" + renpy.lint.report(msg) + + # Check for punctuation inside quotes, inside 'what' string + match = re.search(RE_QUOTES, string.strip()) + + if match: + if not has_failed: + # Avoid repeating node destination + renpy.lint.report_node = node + has_failed = True + + msg = type + " string contains non-british punctuation for quotes" + renpy.lint.report(msg) + + # Check for wrong articles inside 'what' string + match = re.search(RE_ARTICLES, string.strip()) + + if match: + if not has_failed: + # Avoid repeating node destination + renpy.lint.report_node = node + has_failed = True + + msg = type + " string contains wrong articles" + renpy.lint.report(msg) + + if type == "menu" and string.startswith(("-", "\"")) and string.endswith(("-", "\"")): + continue + + # Check punctuation errors + if not string.endswith(INTERPUNCT): + if not has_failed: + # Avoid repeating node destination + renpy.lint.report_node = node + has_failed = True + + msg = type + " string punctuation is not adhering to the set text styling" + renpy.lint.report(msg) + + config.lint_hooks.append(lint_characters) diff --git a/game/scripts/utility/load_fix.rpy b/game/scripts/utility/load_fix.rpy new file mode 100644 index 00000000..fa56b40e --- /dev/null +++ b/game/scripts/utility/load_fix.rpy @@ -0,0 +1,51 @@ + +# Must be appended AFTER update_patcher +init 2 python: + config.load_failed_label = "load_failed" + #config.after_load_callbacks.append(load_fix) + +# load_fix function breaks saves compatiblity in Ren'py 7.4.9 onward, +# in fact, Ren'py will clear its own callstack and find correct label to jump to. + +# init -1 python: +# def load_fix(): +# # Scan the call stack for missing labels +# # If a label is missing, assume a fatal error will occur eventually +# # Then wipe the stack and jump to config.load_failed_label to prevent the error + +# context = renpy.game.context() +# script = renpy.game.script +# for i in xrange(-1, -len(context.return_stack)-1, -1): +# node = None + +# if script.has_label(context.return_stack[i]): +# node = script.lookup(context.return_stack[i]) +# elif script.has_label(context.call_location_stack[i]): +# node = script.lookup(context.call_location_stack[i]).next + +# if node is None: +# # Clean up similar to RollbackLog.load_failed +# while renpy.exports.call_stack_depth(): +# renpy.exports.pop_call() + +# renpy.game.contexts[0].force_checkpoint = True +# renpy.game.contexts[0].goto_label(renpy.config.load_failed_label) + +# raise renpy.game.RestartTopContext() +# return + +label load_failed: + python: + # Clear all screens and stop all sound + renpy.scene("screens") + for c in ["music", "bg_sounds", "weather"]: + renpy.music.stop(c, 0.5) + active_girl = None + + $ renpy.block_rollback() # Prevent rollback to broken past + show screen blktone + "Something went wrong while loading your save, but all is not lost! You will be back in the office with the same progress as when you saved the game. However, you can't rollback to a time before that moment." + hide screen blktone + with d5 + $ renpy.block_rollback() # Prevent rollback to this message + jump main_room diff --git a/game/scripts/utility/periodic_functions.rpy b/game/scripts/utility/periodic_functions.rpy new file mode 100644 index 00000000..15707a89 --- /dev/null +++ b/game/scripts/utility/periodic_functions.rpy @@ -0,0 +1,32 @@ +init python: + def periodic_achievements(): + if _in_replay is None: + if not achievements.status('gold') and game.gold >= 10000: + achievements.unlock("gold") + + if not achievements.status('drunkard') and wine_ITEM.owned >= 25: + achievements.unlock("drunkard") + + if not achievements.status('peta') and (game.day-phoenix_fed_counter) >= 50: + achievements.unlock("peta") + + if not achievements.status('petpal') and phoenix_petted_counter >= 25: + achievements.unlock("petpal") + + if not achievements.status('bros') and sna_friendship >= 100: + achievements.unlock("bros") + + if not achievements.status('overwhored') and her_whoring >= 24: + achievements.unlock("overwhored") + + if not achievements.status('fireplace') and stat_fireplace_counter >= 5: + achievements.unlock("fireplace") + + if not achievements.status('workaholic') and stat_reports_counter >= 5: + achievements.unlock("workaholic") + + def periodic_callbacks(): + """Call functions that need to be checked periodically (i.e. achievement unlocks) at around 20Hz""" + periodic_achievements() + +define config.periodic_callback = periodic_callbacks diff --git a/game/scripts/utility/punk.rpy b/game/scripts/utility/punk.rpy new file mode 100644 index 00000000..8a573f69 --- /dev/null +++ b/game/scripts/utility/punk.rpy @@ -0,0 +1,137 @@ +##################################### +## Created by briandeheus ## +## https://github.com/briandeheus ## +## Implementation and changes ## +## LoafyLemon ## +##################################### +init python: + import binascii + import struct + + class ImagePayload(object): + + _END_CHUNK_TYPE = 'IEND' + _PUNK_CHUNK_TYPE = 'wtSi' + _MAX_BYTES = 2147483647 + _chunks = dict() + + def __init__(self): + self._mode = None + self._file = None + self._output = None + self._bytes_to_hide = None + + self._bytes_read = 0 + + def decode(self, input_file): + self.__init__() + self._mode = 'decode' + self._file = open("{}/outfits/{}".format(config.gamedir, input_file), 'rb+') + #self._output = open(config.basedir+'/game/'+output_file+'.txt', 'wb+') + + # First move cursor past the signature + self._read_bytes(8) + + # Start reading chunks + self._read_next_chunk() + return self._output + + def encode(self, input_file, bytes_to_hide): + self.__init__() + self._mode = 'encode' + self._file = open("{}/outfits/{}.png".format(config.gamedir, input_file), 'rb+') + self._bytes_to_hide = bytes_to_hide.encode('utf-8') + + # First move cursor past the signature + self._read_bytes(8) + + # Start reading chunks + self._read_next_chunk() + + def _read_bytes_as_hex(self, position): + return self._read_bytes(position).encode('hex') + + def _read_bytes_as_ascii(self, position): + return self._read_bytes(position).encode('ascii') + + def _read_bytes_as_int(self, position): + return int(self._read_bytes_as_hex(position), 16) + + def _read_bytes(self, byte_count): + self._bytes_read += byte_count + return self._file.read(byte_count) + + def _rewind_bytes(self, byte_count): + self._bytes_read -= byte_count + self._file.seek(self._bytes_read) + + def _inject_punk_chunk(self): + # Move back 8 bytes. + self._rewind_bytes(8) + + chunk_size = len(self._bytes_to_hide) + print 'Hiding', (chunk_size / 1024), 'kB (', chunk_size, 'bytes)' + + # Create a temporary byte array for the CRC check. + tmp_bytes = bytearray() + + # First write the chunk type + tmp_bytes.extend(bytearray(self._PUNK_CHUNK_TYPE)) + + # Now write the bytes of whatever we're trying to hide + tmp_bytes.extend(self._bytes_to_hide) + + #print 'Injecting punk chunk' + + # Write the chunk size + self._file.write(bytearray(struct.pack('!i', chunk_size))) + + # And the type + self._file.write(bytearray(self._PUNK_CHUNK_TYPE)) + + self._file.write(self._bytes_to_hide) + + crc = binascii.crc32(tmp_bytes) + self._file.write(bytearray(struct.pack('!i', crc))) + + # Write the end chunk. Start with the size. + self._file.write(bytearray(struct.pack('!i', 0))) + # Then the chunk type. + self._file.write(bytearray(self._END_CHUNK_TYPE)) + + crc = binascii.crc32(bytearray(self._END_CHUNK_TYPE)) + self._file.write(bytearray(struct.pack('!i', crc))) + + #print 'Punk chunk injected' + + def _read_next_chunk(self): + chunk_size = self._read_bytes_as_int(4) + print 'Chunk size:', chunk_size + + chunk_type = self._read_bytes_as_ascii(4) + print 'Chunk type:', chunk_type + + if self._mode == 'encode' and chunk_type == self._END_CHUNK_TYPE: + self._inject_punk_chunk() + + #print 'Reached EOF' + self._file.close() + return + + content = self._read_bytes(chunk_size) + + crc = self._read_bytes_as_hex(4) + print 'CRC:', crc + + if self._mode == 'decode' and chunk_type == self._PUNK_CHUNK_TYPE: + print "Found a chunk data", len(content), "bytes. Importing.." + #self._output.write(bytearray(content)) + #self._output.close() + self._output = content.decode('utf-8') + self._file.close() + print "Done." + return True + + self._read_next_chunk() + + image_payload = ImagePayload() diff --git a/game/scripts/utility/saves.rpy b/game/scripts/utility/saves.rpy new file mode 100644 index 00000000..3ef1919a --- /dev/null +++ b/game/scripts/utility/saves.rpy @@ -0,0 +1,14 @@ +init python: + def FileJsonSave(d): + d["day"] = game.day + d["playtime"] = renpy.get_game_runtime() + d["version"] = version_float() + + config.save_json_callbacks.append(FileJsonSave) + + def FileCompatible(slot, page=None): + version = FileJson(slot, "version", missing=1.0, page=page) + + if version is not None: + return version >= compatible_version + return False diff --git a/game/scripts/utility/scaling.rpy b/game/scripts/utility/scaling.rpy new file mode 100644 index 00000000..71460dec --- /dev/null +++ b/game/scripts/utility/scaling.rpy @@ -0,0 +1,17 @@ +init python: + # TODO: Buggy. + def preserve_aspect_ratio(target_w, target_h): + if ( not renpy.mobile and pygame.display.get_init() and renpy.display.draw + and settings.get('preserve_aspect_ratio') and not preferences.fullscreen ): + aspect_ratio = target_w / target_h + + if aspect_ratio != 1.8: + if target_w > target_h: + target_h = int(target_w / 1.8) + else: + target_w = int(target_h * 1.8) + + renpy.set_physical_size((target_w, target_h)) + return (target_w, target_h) + + #config.adjust_view_size = preserve_aspect_ratio diff --git a/game/scripts/utility/screenshot_image.rpy b/game/scripts/utility/screenshot_image.rpy new file mode 100644 index 00000000..23f8a28c --- /dev/null +++ b/game/scripts/utility/screenshot_image.rpy @@ -0,0 +1,38 @@ + +init -10 python: + class ScreenshotImage(im.ImageBase): + def __init__(self, root, **properties): + super(ScreenshotImage, self).__init__(root, **properties) + self.root = root + # self.cache = False + # Sometimes causes segfault, maybe only if cache = True? + + def load(self): + sw, sh = config.screen_width, config.screen_height + render = renpy.display.render.render_screen(self.root, sw, sh) + return renpy.display.draw.screenshot(render) + + @staticmethod + def capture(retain=True): + if retain: + # Prevent the image from being recaptured after load + renpy.retain_after_load() + + root = renpy.display.core.scene_lists().make_layer("screens", {}) + return ScreenshotImage(root) + + def displayable_to_file(d, path, size=(config.screen_width, config.screen_height), crop=None, coloralpha=(0, 255, 0)): + crop = crop or (0, 0, size[0], size[1]) + gl_clear = renpy.config.gl_clear_color + renpy.config.gl_clear_color = coloralpha + + d = d.render(size[0], size[1], 0, 0) + surf = renpy.display.draw.screenshot(d) + surf = pygame.transform.smoothscale(surf, (config.screen_width, config.screen_height)).convert() + surf.set_colorkey(coloralpha) + + psurf = pygame.Surface(size, pygame.SRCALPHA).convert_alpha() + psurf.blit(surf, (0, 0), crop) + + pygame.image.save(psurf, path, 9) + renpy.config.gl_clear_color = gl_clear diff --git a/game/scripts/utility/settings.rpy b/game/scripts/utility/settings.rpy new file mode 100644 index 00000000..3e022954 --- /dev/null +++ b/game/scripts/utility/settings.rpy @@ -0,0 +1,72 @@ + +# Custom settings store + +init offset = -10 + +default persistent.custom_settings = {} +default persistent.custom_settings_default = {} + +init python in settings: + from store import persistent, Action, DictEquality + + not_set = object() + + prefs = persistent.custom_settings + defaults = persistent.custom_settings_default + + def default(name, default): + value = defaults.get(name, not_set) + if value == not_set or value != default: + defaults[name] = default + set(name, default) + + def get(name): + return prefs[name] + + def set(name, value): + prefs[name] = value + + def toggle(name, a, b): + value = prefs.get(name, not_set) + prefs[name] = a if value != a else b + + def reset(name): + default = defaults.get(name, not_set) + if default != not_set: + prefs[name] = default + + class Set(Action, DictEquality): + def __init__(self, name, value): + self.name = name + self.value = value + + def __call__(self): + set(self.name, self.value) + renpy.restart_interaction() + + def get_selected(self): + return prefs.get(self.name, not_set) == self.value + + class Reset(Action, DictEquality): + def __init__(self, name): + self.name = name + + def __call__(self): + reset(self.name) + renpy.restart_interaction() + + def get_sensitive(self): + return prefs.get(self.name, not_set) != defaults.get(self.name, not_set) + + class Toggle(Action, DictEquality): + def __init__(self, name, true_value=True, false_value=False): + self.name = name + self.true_value = true_value + self.false_value = false_value + + def __call__(self): + toggle(self.name, self.true_value, self.false_value) + renpy.restart_interaction() + + def get_selected(self): + return prefs[self.name] == self.true_value diff --git a/game/scripts/utility/text_tags.rpy b/game/scripts/utility/text_tags.rpy new file mode 100644 index 00000000..2909b46b --- /dev/null +++ b/game/scripts/utility/text_tags.rpy @@ -0,0 +1,43 @@ + +# Custom text tags +# https://www.renpy.org/doc/html/custom_text_tags.html + +init python: + @renpy.pure + def text_tag_unicode(tag, argument, contents): + """Render contents using a font that supports all/most Unicode characters. Usage {unicode}☺{/unicode}""" + # DejaVuSans is included by default in Ren'py + return [(renpy.TEXT_TAG, "font=DejaVuSans.ttf")] + contents + [(renpy.TEXT_TAG, "/font")] + + def text_tag_name(tag, argument): + """Use the name provided by a variable, or a contextual name. Usage {name=genie_name|Dude}""" + name_var, context_name = argument.split("|", 1) + name = getattr(renpy.store, name_var, None) + #TODO Contextual name logic + return [(renpy.TEXT_TEXT, name)] + + @renpy.pure + def text_tag_heart(tag, argument): + """Insert a unicode heart symbol. Usage {heart}""" + return [ + (renpy.TEXT_TAG, "unicode"), (renpy.TEXT_TAG, "size=-2"), + (renpy.TEXT_TEXT, "❤"), + (renpy.TEXT_TAG, "/size"), (renpy.TEXT_TAG, "/unicode") + ] + + @renpy.pure + def text_tag_number(tag, argument): + """Convert a number to words if lower than 100 or a multiple of 100. Usage {number=expression}""" + num = int(renpy.store.eval(argument)) + words = num_to_word(num) if num < 100 or num % 100 == 0 else str(num) + return [(renpy.TEXT_TEXT, words)] + +define config.custom_text_tags = { + "unicode": text_tag_unicode, +} + +define config.self_closing_custom_text_tags = { + "name": text_tag_name, + "heart": text_tag_heart, + "number": text_tag_number, +} diff --git a/game/scripts/utility/updatechecker.rpy b/game/scripts/utility/updatechecker.rpy new file mode 100644 index 00000000..a7bda691 --- /dev/null +++ b/game/scripts/utility/updatechecker.rpy @@ -0,0 +1,591 @@ + +init python early: + import zipfile + import json + import os + import ctypes + import shutil + + def is_admin(): + try: + return bool(ctypes.windll.shell32.IsUserAnAdmin()) + except: + return False + + def ask_admin(): + """We only need admin privileges if we fail deleting a file.""" + try: + ctypes.windll.shell32.ShellExecuteW(None, u"runas", unicode(sys.executable), unicode(" ".join(sys.argv)), None, 1) + return True + except: + return False + + def remove_file(f): + f = os.path.join(config.basedir, f) + + if not os.path.isfile(f): + return 0 + + try: + os.remove(f) + except OSError as e: + print "Cannot delete '{}'".format(f) + print "Error: {}".format(e) + return 2 + else: + print "'{}' deleted".format(f) + return 1 + + def copytree(src, dst, symlinks=False, ignore=None): + for item in os.listdir(src): + s = os.path.join(src, item) + d = os.path.join(dst, item) + if os.path.isdir(s): + shutil.copytree(s, d, symlinks, ignore) + else: + shutil.copy2(s, d) + + def version_float(): + control, major, minor = config.version.split(" ")[0].split(".") + return float("{}.{}{}".format(control, major, minor)) + + # This function is no longer being used to check for potential updates. + + # def version_check(): + # if config.developer: + # return False + + # import urllib2 + + # request = urllib2.Request(binascii.unhexlify("68747470733a2f2f706173746562696e2e636f6d2f7261772f424e354261647639")) + + # try: + # response = urllib2.urlopen(request) + # except URLError as e: + # if hasattr(e, "reason"): + # print "Cannot check for updates. Server cannot be reached." + # print "Reason: {}".format(e.reason) + # elif hasattr(e, "code"): + # print "Cannot check for updates. Server cannot fulfill the request." + # print "Error: {}".format(e.code) + # return False + + # current = version_float() + # latest = response.read() + + # return current >= float(latest) + + def version_patch(): + if renpy.is_init_phase(): + # Don't update save files from when game recovers from a crash. + return + + latest = version_float() + + if not hasattr(renpy.store, "version"): + if hasattr(renpy.store, "save_internal_version"): + raise Exception("Loaded save file is incompatible. (Save Version: {}, Game Version: {})".format(getattr(renpy.store, "save_internal_version")), latest) + raise Exception("Loaded save file is incompatible. (Save Version: Unknown, Game Version: {})".format(latest)) + + current = version + + if current > latest: + raise Exception("Loaded save file is incompatible. (Save Version: {}, Game Version: {})".format(current, latest)) + + if current < latest: + setattr(renpy.store, "version", latest) + message = "Have fun!" + + achievements.attempt_repair() + + if current < 1.401: + + global inventory_mode, time_turner_ITEM, imagination, bdsm_imagination, cheat_reading, birthday_happened + + inventory_mode=0 + inventory.remove(time_turner_ITEM) + del time_turner_ITEM + del imagination + del bdsm_imagination + del cheat_reading + del birthday_happened + + if renpy.get_screen("blkfade"): + renpy.hide_screen("blkfade") + + if not ball_quest.E4_complete: + her_outfit_ball.price = 0 + + if current < 1.402: + + global mr_ev_ADR, hg_pr_sex_skip + + mirror.remove(mr_ev_ADR) + del mr_ev_ADR + ton_hat_classy.zorder=3 + ton_hat_classy.set_layers() + tonks.rebuild() + del hg_pr_sex_skip + + if renpy.music.get_playing(channel="bg_sounds") == "sounds/fire02.ogg": + renpy.music.stop(channel="bg_sounds") + + if current < 1.41: + + reset_variables("tutorial_dict") + + cho_outfit_cheerleader.name = "Ravenclaw Cheerleader Uniform" + cho_outfit_party.name = "Clubslut Outfit" + cho_outfit_bikini.name = "Micro Bikini Set" + her_outfit_bikini2.name = "Leathered Bikini Set" + her_outfit_bikini3.name = "Sling Bikini Set" + her_outfit_witch.name = "16th Century Witch Costume" + her_outfit_slutty_schoolgirl.name = "Slutty Schoolgirl Outfit" + her_outfit_fishnet.name = "Fishnet Set" + her_outfit_cheerleader_1.name = "Gryffindor Cheerleader Uniform" + her_outfit_cheerleader_2.name = "Gryffindor Cheerleader Plus Uniform" + lun_outfit_bikini3.name = "Rave Bikini Set" + ton_outfit_bikini_1.name = "Simple Bikini set" + ton_outfit_bikini_2.name = "Striped Bikini set" + + quidditchguide_ITEM.price = 100 + + for i in inventory.items: + if hasattr(i, "infinite"): + continue + + setattr(i, "infinite", False) + i.infinite = False + + ### Start Update 'Admire Panties' event + + # Store states + ev_tier = hg_pf_admire_panties.tier + ev_in_progress = hg_pf_admire_panties.inProgress + ev_counter = hg_pf_admire_panties.counter + + # Remove old pointer from favour list + hg_favor_list.remove(hg_pf_admire_panties) + + # Re-run default statement + reset_variables("hg_pf_admire_panties") + + # Restore state + hg_pf_admire_panties.tier = ev_tier + hg_pf_admire_panties.inProgress = ev_in_progress + hg_pf_admire_panties.counter = ev_counter + + # Mark events from tier below as completed + if ev_tier > 1: + for i in xrange(ev_tier): + for ev in hg_pf_admire_panties.events[i]: + ev[1] = True + + # Add new pointer to favour list + hg_favor_list.append(hg_pf_admire_panties) + + ### End Update 'Admire Panties' event + + leg2_scroll_ITEM.label = "leg2_scroll" + + global sna_support, ton_support + + del sna_support + del ton_support + + preferences.renderer = "angle2" if renpy.windows else "gl2" + + # Update tooltip scope + + renpy.hide_screen("tooltip") + renpy.show_screen("tooltip") + + # Reset house points (Required to ensure balance isn't affected) + global gryffindor, slytherin, ravenclaw, hufflepuff + + gryffindor, slytherin, ravenclaw, hufflepuff = 400, 500, 500, 500 + + # Update Outfits Addons + her_outfit_pajama.group = [her_hair_base.clone(), her_top_pajama.clone(), her_bottom_pajama.clone()] + her_outfit_pajama.addons = [her_bottom_pajama2] + + her_outfit_maid.group = [her_hair_base.clone(), her_top_maid1.clone(), her_stockings_maid1.clone(), her_hat_maid1.clone(), her_neckwear_maid1.clone(), her_gloves_maid1.clone(), her_panties_base1.clone(), her_bra_base1.clone()] + her_outfit_maid.addons = [her_neckwear_maid2] + + her_outfit_xmas.group = [her_hair_base.clone(), her_hat_antlers.clone(), her_neckwear_bell1.clone(), her_top_xmas.clone(), her_bottom_xmas.clone(), her_gloves_xmas.clone(), her_stockings_xmas.clone(), her_panties_base1.clone()] + her_outfit_xmas.addons = [her_hat_elf] + + ton_outfit_succubus.group = [ton_hair_base_new.clone(), ton_hat_succubus.clone(), ton_neckwear_succubus.clone(), ton_gloves_succubus.clone(), ton_top_succubus.clone(), ton_panties_succubus.clone(), ton_accessory0_succubus.clone(), ton_accessory1_succubus.clone()] + ton_outfit_succubus.addons = [ton_top_succubus2] + + ton_outfit_xmas.group = [ton_hair_base_new.clone(), ton_hat_antlers.clone(), ton_earring_bells.clone(), ton_neckwear_bell1.clone(), ton_bra_pasties2.clone(), ton_bottom_xmas.clone(), ton_gloves_xmas.clone(), ton_stockings_xmas.clone()] + ton_outfit_xmas.addons = [ton_piercing1_nipple_bells, ton_bra_pasties2] + + # Update tonks' bikini + ton_panties_base.color_default = [[228, 250, 255, 255], [228, 55, 20, 255]] + ton_bra_base.color_default = [[228, 250, 255, 255], [228, 55, 20, 255]] + + ton_panties_base.set_layers() + ton_bra_base.set_layers() + + for i in CHARACTERS: + char = getattr(renpy.store, i) + + for outfit in char.outfits: + if hasattr(outfit, "addons"): + continue + + setattr(outfit, "addons", []) + + char.rebuild() + + # Add new backside layer for Hermione, and update zorders + hermione.body.body.update({"backside": [None, 1],}) + hermione.body.set_zorder(armright=-1, base=0) + + # Update CG camera object + camera.min_zoom = 0.1 + + # Didn't we remove that in last patch? + if hasattr(renpy.store, "hg_pr_sex_skip"): + delattr(renpy.store, "hg_pr_sex_skip") + + # Update room objects + fireplace_OBJ.tooltip = "Light/Extinguish" + trophy_OBJ.pos = (650, 120) + + if current < 1.411: + ton_gloves_leather.armfix = True + ton_gloves_leather.set_layers() + + for i in CHARACTERS: + char = getattr(renpy.store, i) + + char.rebuild() + + setattr(renpy.store, "inventory_mode", 0) + + if ll_pf_inspect.is_event_complete(2, 3): + hair_luna_ITEM.owned = 1 + + if current < 1.412: + message = "Happy halloween!" + + # Fix luna levels + setattr(cho_hat_catears, "level", 10) + setattr(lun_top_crop, "level", 7) + setattr(lun_panties_lace2, "level", 7) + setattr(lun_stockings_muggle_knee_socks, "categories", ("legwear", "stockings")) + + for i in inventory.items: + # Fix general items + if not hasattr(i, "give_label"): + setattr(i, "give_label", None) + if not hasattr(i, "usable_on"): + setattr(i, "usable_on", []) + + # Fix decorations + if i.type == "decoration": + if not hasattr(i, "replaces"): + setattr(i, "replaces", False) + if not hasattr(i, "use_action"): + setattr(i, "use_action", None) + if not hasattr(i, "replace_action"): + setattr(i, "replace_action", None) + if not hasattr(i, "room_image_hover"): + setattr(i, "room_image_hover", i.room_image) + + elif i.type == "gift": + setattr(i, "usable_on", list(CHARACTERS)) + + setattr(collar_ITEM, "name", "Magic Collar") + setattr(collar_ITEM, "price", 500) + setattr(collar_ITEM, "givable", True) + setattr(collar_ITEM, "give_label", "collar_scene") + setattr(collar_ITEM, "caption", "Give") + setattr(collar_ITEM, "usable_on", ["hermione"]) + setattr(collar_ITEM, "unlocked", True) + setattr(collar_ITEM, "label", None) + setattr(collar_ITEM, "usable", False) + setattr(collar_ITEM, "desc", "{size=-2}A collar made out of metal. It has an inscription on the back.\n\n{/size}{size=-2}{i}\"Transforms to show the wearers true self.\n WARNING: May cause harm to adjacent clothing during transformation.\"{/i}{/size}") + setattr(collar_ITEM, "limit", 100) + + setattr(halloween_phoenix_ITEM, "name", "Phoenix Halloween Set") + setattr(halloween_phoenix_ITEM, "desc", "A Halloween themed set for your favourite bird!") + setattr(halloween_fireplace_ITEM, "desc", "Adds a spooky pumpkin near your fireplace!") + setattr(halloween_cupboard, "name", "Cupboard Pumpkin") + setattr(halloween_cupboard, "desc", "Get in the Halloween spirit with this pumpkin, nobody's eating them so might as well decorate with them!") + + # Fix room objects + setattr(candleL_OBJ, "focus_mask", True) + setattr(candleR_OBJ, "focus_mask", True) + setattr(candleL_OBJ, "zorder", 3) + setattr(candleR_OBJ, "zorder", 3) + + # Rebuild models + for i in CHARACTERS: + char = getattr(renpy.store, i) + + char.rebuild() + + if current < 1.413: + message = "Happy halloween!" + + if getattr(renpy.store, "room_menu_active"): + renpy.hide_screen("with_snape") + renpy.hide_screen("with_tonks_animated") + renpy.hide_screen("tonks_sit_ani") + renpy.hide_screen("tonks_sit_ani") + renpy.hide_screen("snape_chibi") + + if current < 1.414: + message = "Happy Holidays!" + + for i in inventory.items: + if i.type == "decoration": + if not hasattr(i, "replace_anchor"): + setattr(i, "replace_anchor", None) + setattr(i, "replace_pos", None) + + # To fix hover images we need to dive into children of the hover transform displayable, + # and see if the child is None, in which case it should be replaced with the base room image. + # Animations (blink) are added on show events so it's irrevelant. + + if i.room_image_hover and i.room_image_hover.child is None: + i.room_image_hover = i.room_image + + ton_panties_succubus.armfix = True + tonks.rebuild() + + # Power saving results in flickering on Intel Xe graphics units and low performance on some android devices. (probably a symptom rather than a cause) + preferences.gl_powersave = False + + if current < 1.42: + message = "Happy April 1st! \n{size=-4}Disclaimer: This update is no joke, it's totaly real!{/size}" + + # Update Cho clothes + + choq_cloth_robequidditch1.armfix = False + choq_cloth_robequidditch1.color_default = [[60, 78, 131, 255], [186, 141, 11, 255]] + choq_cloth_robequidditch1.reset_color() + choq_cloth_topsweater1.armfix = False + choq_cloth_topsweater1.color_default = [[60, 78, 131, 255], [186, 141, 11, 255]] + choq_cloth_topsweater1.reset_color() + choq_cloth_pantslong2.armfix = False + choq_cloth_pantsshort4.armfix = False + cho_outfit_quidditch.group = [choq_cloth_topsweater1, choq_cloth_pantslong2, choq_cloth_robequidditch1, choq_bra_sports1, choq_panties_sport1] + cho_outfit_quidditch_hufflepuff.group = [choq_cloth_topsweater1, choq_cloth_schoolskirt2, choq_cloth_robequidditch1, choq_accessory_protectors, choq_bra_sports1, choq_panties_sport1] + cho_outfit_quidditch_slytherin.group = [choq_cloth_topsweater1, choq_cloth_pantslong2, choq_accessory_protectors2, choq_bra_sports1, choq_panties_sport1] + cho_outfit_quidditch_gryffindor.group = [choq_cloth_topsweater1, choq_cloth_schoolskirt3, choq_accessory_protectors, choq_bra_sports1, choq_panties_sport1] + + # Update chitchat states and delete old vars from memory. + setattr(renpy.store, "snape_chatted", chitchated_with_snape) + setattr(renpy.store, "tonks_chatted", chitchated_with_tonks) + setattr(renpy.store, "hermione_chatted", chitchated_with_hermione) + setattr(renpy.store, "luna_chatted", chitchated_with_luna) + setattr(renpy.store, "cho_chatted", chitchated_with_cho) + setattr(renpy.store, "astoria_chatted", chitchated_with_astoria) + setattr(renpy.store, "susan_chatted", chitchated_with_susan) + + delattr(renpy.store, "chitchated_with_snape") + delattr(renpy.store, "chitchated_with_tonks") + delattr(renpy.store, "chitchated_with_hermione") + delattr(renpy.store, "chitchated_with_luna") + delattr(renpy.store, "chitchated_with_cho") + delattr(renpy.store, "chitchated_with_astoria") + delattr(renpy.store, "chitchated_with_susan") + + # Quidditch + setattr(cho_quid, "E10_complete", False) + setattr(cho_quid, "E11_complete", False) + setattr(cho_quid, "E12_complete", False) + setattr(cho_quid, "E13_complete", False) + setattr(cho_quid, "gryffindor_failed", False) + setattr(cho_quid, "gryffindor_prepared", False) + setattr(cho_quid, "gryffindor_training", False) + setattr(cho_quid, "gryffindor_complete", False) + + # Tonks + + setattr(renpy.store, "tonks_wardrobe_unlocked", True) + + ### Start Update 'Talk To Me' events + + # Store states + ev_tier = cc_pf_talk.tier + ev_in_progress = cc_pf_talk.inProgress + ev_counter = cc_pf_talk.counter + + # Remove old pointer from favour list + cc_favor_list.remove(cc_pf_talk) + + # Re-run default statement + reset_variables("cc_pf_talk") + + # Restore state + cc_pf_talk.tier = ev_tier + cc_pf_talk.inProgress = ev_in_progress + cc_pf_talk.counter = ev_counter + + # Mark events from tier below as completed + + # TODO: This might cause some events from current tier to be skipped. + # It would be better to use deepcopy on the list instead. + + if ev_tier > 1: + for i in xrange(ev_tier): + for ev in cc_pf_talk.events[i]: + ev[1] = True + + # Add new pointer to favour list + cc_favor_list.append(cc_pf_talk) + cho.rebuild() + + # Reverse whoring cheat, otherwise the player would be locked out of some paths. + if getattr(renpy.store, "cho_whoring") >= 12: + setattr(renpy.store, "cho_whoring", 12) + + # Update camera + camera.max_zoom = 5.0 + + ### End Update 'Talk To Me' event + + if current < 1.421: + message = "Happy April 1st!" + + hooch.equip(hoo_outfit_default) + + cho_outfit_quidditch.group = [choq_cloth_topsweater1.clone(), choq_cloth_pantslong2.clone(), choq_cloth_robequidditch1.clone(), choq_bra_sports1.clone(), choq_panties_sport1.clone()] + cho_outfit_quidditch_hufflepuff.group = [choq_cloth_topsweater1.clone(), choq_cloth_schoolskirt2.clone(), choq_cloth_robequidditch1.clone(), choq_accessory_protectors.clone(), choq_bra_sports1.clone(), choq_panties_sport1.clone()] + cho_outfit_quidditch_slytherin.group = [choq_cloth_topsweater1.clone(), choq_cloth_pantslong2.clone(), choq_accessory_protectors2.clone(), choq_bra_sports1.clone(), choq_panties_sport1.clone()] + cho_outfit_quidditch_gryffindor.group = [choq_cloth_topsweater1.clone(), choq_cloth_schoolskirt3.clone(), choq_accessory_protectors.clone(), choq_bra_sports1.clone(), choq_panties_sport1.clone()] + + if current < 1.422: + message = "" + + hooch.equip(hoo_outfit_default) + + cho_outfit_quidditch.group = [cho_hair_ponytail1.clone(), choq_cloth_topsweater1.clone(), choq_cloth_pantslong2.clone(), choq_cloth_robequidditch1.clone(), choq_bra_sports1.clone(), choq_panties_sport1.clone()] + cho_outfit_quidditch_hufflepuff.group = [cho_hair_ponytail1.clone(), choq_cloth_topsweater1.clone(), choq_cloth_schoolskirt2.clone(), choq_cloth_robequidditch1.clone(), choq_accessory_protectors.clone(), choq_bra_sports1.clone(), choq_panties_sport1.clone()] + cho_outfit_quidditch_slytherin.group = [cho_hair_ponytail1.clone(), choq_cloth_topsweater1.clone(), choq_cloth_pantslong2.clone(), choq_accessory_protectors2.clone(), choq_bra_sports1.clone(), choq_panties_sport1.clone()] + cho_outfit_quidditch_gryffindor.group = [cho_hair_ponytail1.clone(), choq_cloth_topsweater1.clone(), choq_cloth_schoolskirt3.clone(), choq_accessory_protectors.clone(), choq_bra_sports1.clone(), choq_panties_sport1.clone()] + + cho.rebuild() + + + renpy.call_in_new_context("modal_popup", "Update Successful", "\nYour save file has been successfully updated to version {{b}}{}{{/b}}.\n\n{}".format(config.version, message), None, "Hurray!") + renpy.block_rollback() + return + + def version_upgrade(): + + if config.developer: + return + + if renpy.mobile: + return + + def get_patch(files, deep=False): + prefix = config.gamedir if deep else config.basedir + archives = [os.path.join(prefix, x) for x in files if x == "patch.zip"] + + if not archives: + return None + + file = max(archives, key=os.path.getmtime) + return file + + def get_progress(files): + for i, _ in enumerate(files): + print i + + print "Searching for an archive..." + + # Base search + files = [x for x in os.listdir(config.basedir) if os.path.isfile(x)] + patch = get_patch(files) + + # Deep search + if not patch: + files = renpy.list_files() + patch = get_patch(files, deep=True) + + if not patch: + print "No update packages detected. Skipping." + return + + print "Archive found.\n{}".format(patch) + + with zipfile.ZipFile(patch, "r") as zip: + print "Testing archive..." + corrupted = zip.testzip() + + if corrupted: + print "Cannot perform an upgrade. File is corrupted." + return + + print "Checking manifest..." + contents = zip.namelist() + + if not "manifest.json" in contents: + print "Cannot perform an upgrade. Manifest not found." + return + + with zip.open("manifest.json") as manifest: + data = json.load(manifest) + target = data.get("Target", None) + + if not target: + print "Cannot perform an upgrade. Manifest is missing a target." + return + + current = version_float() + + if current >= float(target): + print "Cannot perform an upgrade. Equal or higher version already installed." + return + + delete = data.get("Delete", []) + + for f in delete: + status = remove_file(f) + if status == 2: + # Lacking permissions + if renpy.windows and not is_admin(): + ask_admin() + renpy.quit() + + print "Backing up files..." + src = os.path.join(config.basedir, "game/scripts/") + dest = os.path.join(config.basedir, "old-game/scripts/") + + if os.path.isdir(dest): + shutil.rmtree(dest) + copytree(src, dest) + + print "Unpacking..." + zip.extractall(config.basedir, members=get_progress(contents)) + + remove_file("instructions.txt") + remove_file("DO NOT EXTRACT!") + remove_file("hotfix.zip") + + src = patch + dest = os.path.join(config.basedir, "old_patch.zip") + + if os.path.isfile(dest): + remove_file(dest) + + os.rename(src, dest) + print "Done." + print "Restarting..." + renpy.quit(relaunch=True) + + version_upgrade() + +init python: + config.after_load_callbacks.append(version_patch) + +label before_main_menu(): + # Add screen + return diff --git a/game/scripts/variables.rpy b/game/scripts/variables.rpy new file mode 100644 index 00000000..7fb33203 --- /dev/null +++ b/game/scripts/variables.rpy @@ -0,0 +1,77 @@ +#TODO Move variable defaults to appropriate files, leave common ones here (and rename this file to _Variables_.rpy or something) +init offset = -1 + +# Menu placement +default menu_x = 0.5 +default menu_y = 0.5 + +# Summoned character +default active_girl = None +default last_character = None + +# GUI color scheme +default interface_color = "gold" + +default rum_times = 0 # Counts how many times have you rummaged the cupboard. +default current_payout = 0 + +default public_whore_ending = False # If TRUE the game will end with "Public Whore Ending". + +# House points +default slytherin = 35 +default gryffindor = 122 +default hufflepuff = 25 +default ravenclaw = 31 + +# Duel +default potions = 0 # Amount of healing potions Genie has in stock. + +# Used to pause events/summons for a number of days +default ss_event_pause = 0 +default ss_summon_pause = 0 +default nt_event_pause = 0 +default nt_summon_pause = 0 +default hg_event_pause = 0 +default hg_summon_pause = 0 +default cc_event_pause = 0 +default cc_summon_pause = 0 +default ll_event_pause = 0 +default ll_summon_pause = 0 +default ag_event_pause = 0 +default ag_summon_pause = 0 +default sb_event_pause = 0 +default sb_summon_pause = 0 + +default owl_away = False +default owl_away_counter = 0 + +# Sprite positioning +default nxpos = 0 +default nypos = 0 +default desk_zorder = 2 + +default unlocked_7th = False + +# Phoenix +default phoenix_is_fed = False +default phoenix_is_petted = False +default phoenix_fed_counter = 0 +default phoenix_petted_counter = 0 + +# Paperwork related flags +default report_chapters = 0 # Number of chapters of current report completed so far. Resets to zero when report is finished. +default reports_finished = 0 # Number of completed reports. +default stat_reports_counter = 0 + +# Fireplace +default fire_in_fireplace = False +default stat_fireplace_counter = 0 + +# Examine room flags +default desk_examined = False +default cupboard_examined = False +default bird_examined = False +default door_examined = False +default fireplace_examined = False + +default current_room = "main_room" diff --git a/game/scripts/wardrobe/functions.rpy b/game/scripts/wardrobe/functions.rpy new file mode 100644 index 00000000..55425d02 --- /dev/null +++ b/game/scripts/wardrobe/functions.rpy @@ -0,0 +1,175 @@ +init python: + def get_character_progression(key): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + if key == "tonks": + return ton_friendship + return getattr(store, "{}_whoring".format(key[:3])) + + def get_character_requirement(key, type): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + return getattr(renpy.store, key[:3]+"_requirements").get(type, 0) + + def get_character_response(key, type): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + return getattr(renpy.store, key[:3]+"_responses").get(type) + + def get_character_object(key): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + return getattr(store, key) + + def get_character_outfit(key, type="default"): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + return getattr(store, "{}_outfit_{}".format(key[:3], type)) + + def get_character_outfit_req(key, item): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + + if not isinstance(item, DollOutfit): + raise TypeError("'{}' is not a DollOutfit instance.".format(item)) + + req = ["{}: {}".format(i.type, i.level) for i in item.group] + has_bra = any(i.type == "bra" for i in item.group) + has_panties = any(i.type == "panties" for i in item.group) + + if not has_bra: + req += ["NO BRA: {}".format(get_character_requirement(key, "unequip bra"))] + + if not has_panties: + req += ["NO PANTIES: {}".format(get_character_requirement(key, "unequip panties"))] + print "\n".join(req) + + def get_character_outfit_hash(key): + ### Untested ### + char = get_character_object(key) + clothes = [x[0] for x in char.clothes.itervalues() if x[0]] + salt = str( sorted([ sorted([x.name, x.type, x.id, x.color]) for x in clothes ]) ) + return hash(salt) + + def get_character_tag(key): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + return "{}_main".format(key) + + def get_character_sayer(key): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + return getattr(store, key[:3]) + + def get_character_gift_label(key): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + return "give_{}_gift".format(key[:3]) + + def get_character_potion_check_label(key): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + return "{}_potion_check".format(key[:3]) + + def get_character_potion_check(key): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + return getattr(store, "{}_potion_check".format(key[:3])) + + def get_character_unlock(key): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + return getattr(store, "{}_unlocked".format(key)) + + def get_character_mood(key): + if not key in CHARACTERS: + raise KeyError("'{}' character is undefined.".format(key)) + return getattr(store, "{}_mood".format(key[:3])) + + def get_outfit_score(outfit): + """Returns outfit 'lewdness' score""" + + score = 0 + + for i in outfit.group: + score += i.level//2 + + if not outfit.has_type("bra"): + score += 3 + + if not outfit.has_type("top"): + score += 6 + + if not outfit.has_type("panties"): + score += 6 + + if not outfit.has_type("bottom"): + score += 12 + + if not outfit.has_type("top"): + score += 4 + + if not outfit.has_type("bottom"): + score += 4 + + if outfit.has_type("buttplug"): + score += 9 + + if outfit.has_type("makeup"): + score += 1 + + if outfit.has_type("tattoo"): + score += 2 + + if outfit.has_type("piercing"): + score += 3 + + return score + + def mouse_slap(): + """Causes the mouse to be moved away from current position and displays a smoke effect""" + renpy.play('sounds/slap.ogg') + renpy.stop_predict_screen("gfx_effect") + x, y = renpy.get_mouse_pos() + xx = x+random.randint(-100, 100) + yy = y+random.randint(-100, 100) + renpy.show_screen("gfx_effect", start_x=x, start_y=y, target_x=xx, target_y=yy, img="smoke", xanchor=0.1, yanchor=0.7, zoom=0.2, duration=0.15) + renpy.set_mouse_pos(xx, yy, duration=0.1) + + def mouse_headpat(): + """Causes the mouse to be moved away from current position and displays a heart effect""" + renpy.play('sounds/slap_03.ogg') + renpy.stop_predict_screen("gfx_effect") + x, y = renpy.get_mouse_pos() + xx, yy = x, y-15 + img = At(Text("*pat*", size=16, color="#000000CC", outlines=[(1, "#FFFFFFCC", 0, 0)]), random_rotation) + renpy.hide_screen("gfx_effect") + renpy.show_screen("gfx_effect", start_x=x, start_y=y, target_x=xx, target_y=yy, img=img, xanchor=0.5, yanchor=0.65, zoom=1.0, timer=0.35) + + def mouse_heart(): + """Causes the mouse to be moved away from current position and displays a heart effect""" + renpy.play('sounds/kiss.ogg') + renpy.stop_predict_screen("gfx_effect") + x, y = renpy.get_mouse_pos() + renpy.show_screen("gfx_effect", start_x=x, start_y=y, target_x=x, target_y=y, img="love_heart", xanchor=0.45, yanchor=0.65, zoom=0.2, timer=0.45) + + def wardrobe_fail_hint(value): + """Displays required whoring/friendship/affection level.""" + word_list = {"tonks": "friendship", "astoria": "affection", "susan": "confidence", "luna": "corruption", "cho": "recklessness", "hermione": "whoring"} + word = word_list.get(active_girl, "whoring") + + if game.cheats or game.difficulty <= 2: + renpy.show_screen("blktone") + renpy.with_statement(d3) + renpy.say(None, "{size=+6}> Try again at "+word+" level {color=#7a0000}"+str(value)+"{/color}.{/size}") + renpy.hide_screen("blktone") + renpy.with_statement(d3) + return + + def list_outfit_files(): + path = "{}/outfits/".format(config.gamedir) + + if not os.path.exists(path): + os.makedirs(path) + + return [f for f in os.listdir(path) if os.path.isfile(os.path.join(path, f)) and f.endswith(".png")] diff --git a/game/scripts/wardrobe/reactions.rpy b/game/scripts/wardrobe/reactions.rpy new file mode 100644 index 00000000..bd931acc --- /dev/null +++ b/game/scripts/wardrobe/reactions.rpy @@ -0,0 +1,69 @@ +init python: + def wardrobe_check_category(category): + req = get_character_requirement(active_girl, "category {}".format(category)) + flag = get_character_progression(active_girl) + + return (flag >= req) + + def wardrobe_check_touch(what): + req = get_character_requirement(active_girl, "touch {}".format(what)) + flag = get_character_progression(active_girl) + + return (flag >= req) + + def wardrobe_check_equip(item): + req = item.level + flag = get_character_progression(active_girl) + + return (flag >= req) + + def wardrobe_check_unequip(item): + req = get_character_requirement(active_girl, "unequip {}".format(item.type)) + flag = get_character_progression(active_girl) + + return (flag >= req) + + def wardrobe_check_equip_outfit(item): + req = max((i.level for i in item.group)) + flag = get_character_progression(active_girl) + + has_bra = any(i.type == "bra" for i in item.group) + has_panties = any(i.type == "panties" for i in item.group) + + if not has_bra: + req = max(req, get_character_requirement(active_girl, "unequip bra")) + + if not has_panties: + req = max(req, get_character_requirement(active_girl, "unequip panties")) + + if any(i.type.startswith(("piercing", "tattoo")) for i in item.group): + req = max(req, get_character_requirement(active_girl, "category piercings & tattoos")) + + return (flag >= req) + + def wardrobe_check_blacklist(item): + if not item.blacklist: + return True + + req = max( ( get_character_requirement(active_girl, "unequip {}".format(i)) for i in item.blacklist ) ) + flag = get_character_progression(active_girl) + + return (flag >= req) + + def wardrobe_fallback_required(item): + fallbacks = {"top", "bottom", "bra", "panties"} + char = get_character_object(active_girl) + req = [get_character_requirement(active_girl, "unequip {}".format(i)) for i in fallbacks if not char.is_equipped(i) and not i in char.blacklist] + + if not req: + return False + + req = max(req) + flag = get_character_progression(active_girl) + + return not (flag >= req) + + def wardrobe_react(what, arg): + if wardrobe_chitchats: + renpy.call(get_character_response(active_girl, what), arg) + return diff --git a/game/scripts/wardrobe/studio.rpy b/game/scripts/wardrobe/studio.rpy new file mode 100644 index 00000000..a269a2d2 --- /dev/null +++ b/game/scripts/wardrobe/studio.rpy @@ -0,0 +1,392 @@ +init offset = 3 + +default studio.faces = None +default studio.choices = None +default studio.drags = None + +init python in studio: + Transform = renpy.store.Transform + Flatten = renpy.store.Flatten + Drag = renpy.store.Drag + CHARACTERS = renpy.store.CHARACTERS + + def get_faces(): + filters = ("_mask", "_skin") + d = {} + + for i in CHARACTERS: + d[i] = {} + for j in ("eyebrows", "eyes", "mouth", "pupils", "cheeks", "tears"): + path = "characters/{}/face/{}/".format(i, j) + d[i][j] = [x.split(path)[1].split(".webp")[0] for x in renpy.list_files() if x.startswith(path) and x.endswith(".webp") and not any(f in x for f in filters)] + + if j in ("cheeks", "tears"): + d[i][j].insert(0, None) + elif renpy.config.developer: + d[i][j].insert(0, None) + return d + + def get_choices(): + d = {} + + for i in CHARACTERS: + d[i] = {} + d[i]["eyebrows"] = faces[i]["eyebrows"].index("base") + d[i]["eyes"] = faces[i]["eyes"].index("base") + d[i]["mouth"] = faces[i]["mouth"].index("base") + d[i]["pupils"] = faces[i]["pupils"].index("mid") + d[i]["cheeks"] = faces[i]["cheeks"].index(None) + d[i]["tears"] = faces[i]["tears"].index(None) + d[i]["zoom"] = 0.5 + d[i]["flip"] = 1 + d[i]["alpha"] = 1.0 + + d["background"] = { + "image": 0, + "alpha": 1.0, + "hue": 0, + "saturation": 1.0, + "brightness": 0.0, + "blur": 0.0, + "list": ["wall_day", "castle", "forest", "quidditch_pitch", "highlight", "versus", "corridor", "custom"] + } + + d["overlay"] = { + "image": 0, + "alpha": 1.0, + "hue": 0, + "saturation": 1.0, + "brightness": 0.0, + "blur": 0.0, + "list": [None, "curtains", "card", "g_bottom", "g_left", "g_circular"] + } + return d + + def get_drags(): + active_girl = renpy.store.active_girl + d = {} + + for i in CHARACTERS: + d[i] = [drag_init(getattr(renpy.store, i)), (i == active_girl)] + return d + + def get_face(char): + eyebrows = choices[char]["eyebrows"] + eyes = choices[char]["eyes"] + mouth = choices[char]["mouth"] + pupils = choices[char]["pupils"] + cheeks = choices[char]["cheeks"] + tears = choices[char]["tears"] + + d = { + "eyebrows": faces[char]["eyebrows"][eyebrows], + "eyes": faces[char]["eyes"][eyes], + "mouth": faces[char]["mouth"][mouth], + "pupils": faces[char]["pupils"][pupils], + "cheeks": faces[char]["cheeks"][cheeks], + "tears": faces[char]["tears"][tears], + } + return d + + def drag_init(obj): + char_obj = obj + char_name = char_obj.name + + d = Transform(Flatten(char_obj.get_image()), zoom=choices[char_name]["zoom"], xzoom=choices[char_name]["flip"], alpha=choices[char_name]["alpha"]) + pos = (250, 0) + + drag = Drag(d, activated=drag_activated, drag_offscreen=True, focus_mask=True) + drag.char_obj = char_obj + drag.char_name = char_name + drag.initial_pos = pos + drag.style.pos = pos + + return drag + + def drag_activated(drag): + drag = drag[0] + + renpy.store.char_active = drag.char_obj + renpy.store.active_girl = drag.char_name + + drag.top() + renpy.restart_interaction() + return + + def drag_update(drag): + drag.char_obj.set_face(**get_face(drag.char_name)) + + zoom = choices[drag.char_name]["zoom"] + flip = choices[drag.char_name]["flip"] + alpha = choices[drag.char_name]["alpha"] + + d = Flatten(drag.char_obj.get_image()) + d = Transform(d, zoom=zoom, xzoom=flip, alpha=alpha) + drag.set_child(d) + return + + def drag_reset(drag): + choices[drag.char_name]["eyebrows"] = faces[drag.char_name]["eyebrows"].index("base") + choices[drag.char_name]["eyes"] = faces[drag.char_name]["eyes"].index("base") + choices[drag.char_name]["mouth"] = faces[drag.char_name]["mouth"].index("base") + choices[drag.char_name]["pupils"] = faces[drag.char_name]["pupils"].index("mid") + choices[drag.char_name]["cheeks"] = faces[drag.char_name]["cheeks"].index(None) + choices[drag.char_name]["tears"] = faces[drag.char_name]["tears"].index(None) + choices[drag.char_name]["zoom"] = 0.5 + choices[drag.char_name]["flip"] = 1 + choices[drag.char_name]["alpha"] = 1.0 + + drag.char_obj.set_face(**get_face(drag.char_name)) + + x, y = drag.initial_pos + drag.snap(x, y, 0) + + drag_update(drag) + return + +label studio(char): + + # TODO: Finish adding presets saving. + # Add character drag offset based on zoom. + + python: + last_char = char_active + last_girl = active_girl + last_face = last_char.get_face() + + studio.faces = studio.get_faces() + studio.choices = studio.get_choices() + char_active.set_face(**studio.get_face(active_girl)) + studio.drags = studio.get_drags() + + call screen studio + + # Reset + $ char_active = last_char + $ active_girl = last_girl + $ char_active.set_face(**last_face) + + return + +screen studio(): + tag studio + zorder 30 + style_prefix "studio" + predict False + + default icon_size = (32, 32) + default take_screenshot = False + + $ bg_hue = HueMatrix(studio.choices["background"]["hue"]) + $ bg_saturation = SaturationMatrix(studio.choices["background"]["saturation"]) + $ bg_brightness = BrightnessMatrix(studio.choices["background"]["brightness"]) + $ bg_blur = studio.choices["background"]["blur"] + $ bg_matrix = bg_hue*bg_saturation*bg_brightness + $ bg_image = studio.choices["background"]["list"][studio.choices["background"]["image"]] + $ bg_image = "images/rooms/_bg_/{}.webp".format(bg_image) + $ bg = Transform(bg_image, matrixcolor=bg_matrix, blur=bg_blur) + + $ ov_hue = HueMatrix(studio.choices["overlay"]["hue"]) + $ ov_saturation = SaturationMatrix(studio.choices["overlay"]["saturation"]) + $ ov_brightness = BrightnessMatrix(studio.choices["overlay"]["brightness"]) + $ ov_blur = studio.choices["overlay"]["blur"] + $ ov_alpha = studio.choices["overlay"]["alpha"] + $ ov_matrix = ov_hue*ov_saturation*ov_brightness + $ ov_image = studio.choices["overlay"]["list"][studio.choices["overlay"]["image"]] + + if not ov_image is None: + $ ov_image = "images/rooms/overlays/{}.webp".format(ov_image) + $ ov = Transform(ov_image, matrixcolor=ov_matrix, blur=ov_blur, alpha=ov_alpha) + else: + $ ov = None + + $ active_drag = studio.drags[active_girl][0] + + add bg + + draggroup: + for i in studio.drags.itervalues(): + if i[1]: + add i[0] + + add ov + + if not _windows_hidden: + use close_button(action=Confirm("Exit Photo Studio?\n{size=-4}All changes will be lost.{/size}", Return("Close"))) + + hbox: + pos (25, 25) + + style_prefix gui.theme("studio") + + vbox: + label (active_girl) + $ drag_update = Function(studio.drag_update, active_drag) + $ drag_reset = Function(studio.drag_reset, active_drag) + + hbox: + add "interface/studio/eyebrows.webp" size icon_size + bar value DictValue(studio.choices[active_girl], "eyebrows", len(studio.faces[active_girl]["eyebrows"])-1, False, step=1, force_step=True, action=drag_update) tooltip "Character eyebrows" + hbox: + add "interface/studio/eyes.webp" size icon_size + bar value DictValue(studio.choices[active_girl], "eyes", len(studio.faces[active_girl]["eyes"])-1, False, step=1, force_step=True, action=drag_update) tooltip "Character eyes" + hbox: + add "interface/studio/pupils.webp" size icon_size + bar value DictValue(studio.choices[active_girl], "pupils", len(studio.faces[active_girl]["pupils"])-1, False, step=1, force_step=True, action=drag_update) tooltip "Character pupils" + hbox: + add "interface/studio/mouth.webp" size icon_size + bar value DictValue(studio.choices[active_girl], "mouth", len(studio.faces[active_girl]["mouth"])-1, False, step=1, force_step=True, action=drag_update) tooltip "Character mouth" + hbox: + add "interface/studio/blush.webp" size icon_size + bar value DictValue(studio.choices[active_girl], "cheeks", len(studio.faces[active_girl]["cheeks"])-1, False, step=1, force_step=True, action=drag_update) tooltip "Character blush" + hbox: + add "interface/studio/tears.webp" size icon_size + bar value DictValue(studio.choices[active_girl], "tears", len(studio.faces[active_girl]["tears"])-1, False, step=1, force_step=True, action=drag_update) tooltip "Character tears" + hbox: + add "interface/studio/scale.webp" size icon_size + bar value DictValue(studio.choices[active_girl], "zoom", 1.0, False, step=0.1, force_step=True, action=drag_update) tooltip "Character Scale" + hbox: + add "interface/studio/opacity.webp" size icon_size + bar value DictValue(studio.choices[active_girl], "alpha", 1.0, False, step=0.1, force_step=True, action=drag_update) tooltip "Character Opacity" + + textbutton "Flip" action [ToggleDict(studio.choices[active_girl], "flip", -1, 1), drag_update] xpos 4 + textbutton "Reset" action drag_reset xpos 4 + + vbox: + label "Background" + default bg_dict = studio.choices["background"] + hbox: + add "interface/studio/background.webp" size icon_size + bar value DictValue(bg_dict, "image", len(bg_dict["list"])-1, False, step=1, force_step=True) tooltip "Background Image" + hbox: + add "interface/studio/hue.webp" size icon_size + bar value DictValue(bg_dict, "hue", 360.0, False, step=1.0, force_step=True) tooltip "Background Hue" + hbox: + add "interface/studio/saturation.webp" size icon_size + bar value DictValue(bg_dict, "saturation", 1.0, False, step=0.1, force_step=False) tooltip "Background Saturation" + hbox: + add "interface/studio/brightness.webp" size icon_size + bar value DictValue(bg_dict, "brightness", 1.0, False, step=0.1, force_step=False) tooltip "Background Brightness" + hbox: + add "interface/studio/blur.webp" size icon_size + bar value DictValue(bg_dict, "blur", 50.0, False, step=1.0, force_step=True) tooltip "Background Blur" + + vbox: + label "Overlay" + default ov_dict = studio.choices["overlay"] + $ ov_active = bool(ov_dict["image"] > 0) + + hbox: + add "interface/studio/overlay.webp" size icon_size + bar value DictValue(ov_dict, "image", len(ov_dict["list"])-1, False, step=1, force_step=True) tooltip "Overlay Image" + + if ov_active: + hbox: + add "interface/studio/hue.webp" size icon_size + bar value DictValue(ov_dict, "hue", 360.0, False, step=1.0, force_step=True) tooltip "Overlay Hue" + hbox: + add "interface/studio/saturation.webp" size icon_size + bar value DictValue(ov_dict, "saturation", 1.0, False, step=0.1, force_step=False) tooltip "Overlay Saturation" + hbox: + add "interface/studio/brightness.webp" size icon_size + bar value DictValue(ov_dict, "brightness", 1.0, False, step=0.1, force_step=False) tooltip "Overlay Brightness" + hbox: + add "interface/studio/blur.webp" size icon_size + bar value DictValue(ov_dict, "blur", 50.0, False, step=1.0, force_step=True) tooltip "Overlay Blur" + hbox: + add "interface/studio/opacity.webp" size icon_size + bar value DictValue(ov_dict, "alpha", 1.0, False, step=0.1, force_step=True) tooltip "Overlay Opacity" + + vbox: + label "Characters" + vbox: + for k, v in studio.drags.iteritems(): + $ active = (active_girl == k and v[1]) + $ unlocked = getattr(renpy.store, k+"_unlocked") + + if not v[1]: + $ action = [ SetDict(studio.drags[k], 1, True), Function(studio.drag_activated, [v[0]]), renpy.restart_interaction ] + elif not active_girl == k: + $ action = [ Function(studio.drag_activated, [v[0]]), renpy.restart_interaction] + else: + $ action = [ SetDict(studio.drags[k], 1, False), renpy.restart_interaction ] + + if unlocked: + textbutton k: + action action + selected v[1] text_color ("#009900" if active else "#f9d592") + text_hover_color "#fff" + text_first_indent 20 + background Transform("interface/icons/head/{}.webp".format(k), size=(16, 16), offset=(22, 3)) + + vbox: + align (1.0, 1.0) + xoffset -12 + + label "Actions" + hbox: + imagebutton: + idle Transform(image_alpha("interface/studio/screenshot.webp"), size=icon_size) + hover Transform("interface/studio/screenshot.webp", size=icon_size) + action [Function(_hide_windows), SetScreenVariable("take_screenshot", True)] + tooltip "Screenshot (Prnt Scrn)" + imagebutton: + idle Transform(image_alpha("interface/studio/hide.webp"), size=icon_size) + hover Transform("interface/studio/hide.webp", size=icon_size) + action Function(_hide_windows) + tooltip "Hide interface (H)" + + if _windows_hidden: + use invisible_button(action=Function(_hide_windows)) + + if take_screenshot: + timer 0.2 action [_screenshot, Function(_hide_windows), SetScreenVariable("take_screenshot", False)] + +style studio_hbox: + spacing 25 + +style studio_label_text: + color "#f9d592" + outlines [ (2, "#00000080", 0, 0) ] + +style studio_bar: + xsize 112 + xalign 0.5 + +style studio_button: + xsize 106 + xalign 0.5 + +style studio_button_text: + size 12 + +style dark_studio_bar is dark_slider: + xsize 160 + yalign 0.5 + +style light_studio_bar is light_slider: + xsize 160 + yalign 0.5 + +style light_studio_hbox is studio_hbox +style dark_studio_hbox is studio_hbox + +style studio_hbox: + spacing 5 + +style light_studio_button is light_radio_button +style dark_studio_button is dark_radio_button + +style light_studio_button_text: + first_indent 6 + size 10 + color "#f9d592" + hover_color "#fff" + outlines [ (2, "#00000080", 0, 0) ] + +style dark_studio_button_text: + first_indent 6 + size 10 + color "#9b8d84" + hover_color "#fff" + outlines [ (2, "#00000080", 0, 0) ] diff --git a/game/scripts/wardrobe/wardrobe.rpy b/game/scripts/wardrobe/wardrobe.rpy new file mode 100644 index 00000000..3d0a65e4 --- /dev/null +++ b/game/scripts/wardrobe/wardrobe.rpy @@ -0,0 +1,881 @@ + +default wardrobe_music = False +default wardrobe_chitchats = True +default wardrobe_autosave = False +default wardrobe_loaded = False +default wardrobe_suppress_warnings = False +default wardrobe_randomise_color = False +default wardrobe_global_color = False + +# Used as custom order for the sorting +define wardrobe_subcategories_sorted = { + "hair": 5, "shirts": 5, "skirts": 5, "pantyhose": 5, "slot1": 5, "panties": 5, "save": 5, + "earrings": 4, "sweaters": 4, "trousers": 4, "stockings": 4, "bikini panties": 4, "load": 4, + "neckwear": 3, "dresses": 3, "shorts": 3, "socks": 3, "schedule": 3, + "one-piece suits": 2, "import": 2, + "robes": 1, "export": 1, + "gloves": 0, "pubes": 0, "delete": 0, + "other": -1, +} + +define wardrobe_categories = ("head", "piercings & tattoos", "upper body", "upper undergarment", "lower body", "lower undergarment", "legwear", "misc") +define wardrobe_outfit_schedule = ("day", "night", "cloudy", "rainy", "snowy") + +label wardrobe: + $ gui.in_context("wardrobe_menu") + return + +screen wardrobe(xx, yy): + tag wardrobe + zorder 24 + modal True + predict False + + add "gui_fade" + + if renpy.mobile: + use close_button_background + use close_button + + fixed: + # TODO: Wardrobe doesn't work well with the gui animation + # if settings.get("animations"): + # at gui_animation + + use wardrobe_menu(xx, yy) + if current_category == "outfits": + use wardrobe_outfit_menuitem(20, 50) + elif current_subcategory != None: + use wardrobe_menuitem(20, 50) + +label wardrobe_menu(): + python: + char_active = get_character_object(active_girl) + char_outfit = get_character_outfit(active_girl, type="last") + char_outfit.save() + + wardrobe_subcategories = char_active.wardrobe + + if renpy.android: + wardrobe_subcategories.update( { "outfits": { k:char_active.outfits for k in {"load", "save", "delete", "schedule"} } } ) + else: + wardrobe_subcategories.update( { "outfits": { k:char_active.outfits for k in {"load", "save", "delete", "schedule", "import", "export"} } } ) + + # Defaults + current_category = "head" + category_items = OrderedDict(sorted(wardrobe_subcategories.get(current_category, {}).iteritems(), key=lambda x: wardrobe_subcategories_sorted.get(x[0], 0), reverse=True)) + current_subcategory = category_items.keys()[0] if category_items else "" + menu_items = filter(lambda x: x.unlocked==True, category_items.get(current_subcategory, [])) + current_item = char_active.get_equipped_item(menu_items) + + if wardrobe_music: + call play_music("wardrobe") + + show screen wardrobe(662, 50) + + label .after_init: + + $ _choice = ui.interact() + + if _choice[0] == "category": + if not current_category == _choice[1]: + if wardrobe_check_category(_choice[1]): + $ wardrobe_loaded = False + $ current_category = _choice[1] + + $ category_items = OrderedDict(sorted(wardrobe_subcategories.get(current_category, {}).iteritems(), key=lambda x: wardrobe_subcategories_sorted.get(x[0], 0), reverse=True)) + $ current_subcategory = category_items.keys()[0] if category_items else "" + $ menu_items = filter(lambda x: x.unlocked==True, category_items.get(current_subcategory, [])) + + if current_category == "outfits": + $ _outfit = char_active.create_outfit(temp=True) + $ current_item = next( (x for x in char_active.outfits if _outfit == x), None) + else: + $ current_item = char_active.get_equipped_item(menu_items) + + $ char_active.wear("all") + if current_category in ("lower undergarment", "upper undergarment"): + $ char_active.strip("top", "bottom", "robe", "accessory") + elif current_category == "piercings & tattoos": + $ char_active.strip("top", "bottom", "robe", "accessory", "bra", "panties", "stockings", "gloves") + else: + $ wardrobe_react("category_fail", _choice[1]) + + elif _choice[0] == "subcategory": + if not current_subcategory == _choice[1]: + $ wardrobe_loaded = False + $ current_subcategory = _choice[1] + + if current_subcategory == "import": + $ menu_items = list_outfit_files() + else: + $ menu_items = filter(lambda x: x.unlocked==True, category_items.get(current_subcategory)) + + if current_category == "outfits": + $ _outfit = char_active.create_outfit(temp=True) + $ current_item = next( (x for x in char_active.outfits if _outfit == x), None) + else: + $ current_item = char_active.get_equipped_item(menu_items) + + elif _choice[0] == "equip": + ### CLOTHING ### + if isinstance(_choice[1], DollCloth): + if _choice[1].type == "hair" and char_active.is_equipped_item(_choice[1]): + $ renpy.play("sounds/fail.ogg") + $ renpy.notify("Hair cannot be removed.") + else: + if char_active.is_equipped_item(_choice[1]): + # UNEQUIP + if wardrobe_check_unequip(_choice[1]): + $ wardrobe_react("unequip", _choice[1]) + $ char_active.unequip(_choice[1].type) + $ current_item = None + else: + $ wardrobe_react("unequip_fail", _choice[1]) + else: + # EQUIP + if wardrobe_check_equip(_choice[1]): + $ wardrobe_react("equip", _choice[1]) + + # Blacklist handling + if not wardrobe_check_blacklist(_choice[1]): + $ wardrobe_react("blacklist", _choice[1]) + + $ char_active.equip(_choice[1]) + $ current_item = _choice[1] + + if wardrobe_fallback_required(_choice[1]): + # Has to be called regardless of player preference. + $ renpy.call(get_character_response(active_girl, "fallback"), _choice[1]) + + # Lipstick Fix - Synchronize image with the current mouth after equipping. + if isinstance(_choice[1], DollLipstick): + $ _choice[1].rebuild_image() + else: + $ wardrobe_react("equip_fail", _choice[1]) + + ### OUTFIT ### + elif isinstance(_choice[1], DollOutfit): + $ _outfit = char_active.create_outfit(temp=True) + + if _outfit == _choice[1]: + $ renpy.notify("Load failed: Outfit already equipped.") + else: + if wardrobe_check_equip_outfit(_choice[1]): + + if not _outfit.exists(): + $ _confirmed = wardrobe_suppress_warnings or renpy.call_screen("confirm", "Discard unsaved changes and load this outfit?") + + if _confirmed: + $ wardrobe_react("equip_outfit", _choice[1]) + $ char_active.equip(_choice[1]) + $ current_item = _choice[1] + else: + $ renpy.notify("Load failed: Cancelled by user.") + else: + $ wardrobe_react("equip_outfit", _choice[1]) + $ char_active.equip(_choice[1]) + $ current_item = _choice[1] + else: + $ wardrobe_react("equip_outfit_fail", _choice[1]) + + elif _choice[0] == "setcolor": + $ current_item.set_color(_choice[1]) + + python: + if wardrobe_global_color: + for outfit in char_active.outfits: + rebuild = False + + for i in outfit.group: + if not i.id == current_item.id: + continue + + i.set_color(current_item.color) + rebuild = True + + if rebuild: + outfit.rebuild_image() + + elif _choice[0] == "resetcolor": + $ current_item.reset_color() + + python: + if wardrobe_global_color: + for outfit in char_active.outfits: + rebuild = False + + for i in outfit.group: + if not i.id == current_item.id: + continue + + i.set_color(current_item.color) + rebuild = True + + if rebuild: + outfit.rebuild_image() + + elif _choice[0] == "touch": + if wardrobe_check_touch(_choice[1]): + $ wardrobe_react("touch", _choice[1]) + else: + $ wardrobe_react("touch_fail", _choice[1]) + + elif _choice[0] == "addoutfit": + $ _outfit = char_active.create_outfit(temp=True) + + if _outfit.exists(): + $ renpy.notify("Save failed: Outfit already exists.") + else: + if _choice[1]: + $ _index = char_active.outfits.index(_choice[1]) + $ _confirmed = wardrobe_suppress_warnings or renpy.call_screen("confirm", "Overwrite this outfit?") + + if _confirmed: + $ _old_outfit = char_active.outfits[_index] + $ _old_schedule = _old_outfit.schedule.copy() + + $ _outfit = char_active.create_outfit() + $ _outfit.delete() # Removes it from list only + $ _outfit.schedule = _old_schedule + + $ char_active.outfits[_index] = _outfit + $ renpy.notify("Overwritten.") + else: + $ renpy.notify("Save failed: Cancelled by user.") + + else: + $ char_active.create_outfit() + $ renpy.notify("Outfit Saved.") + + $ menu_items = filter(lambda x: x.unlocked==True, category_items.get(current_subcategory)) + $ current_item = next( (x for x in char_active.outfits if _outfit == x), None) + + elif _choice[0] == "deloutfit": + $ _confirmed = wardrobe_suppress_warnings or renpy.call_screen("confirm", "Delete this outfit?") + + if _confirmed: + $ _choice[1].delete() + $ menu_items = filter(lambda x: x.unlocked==True, category_items.get(current_subcategory)) + $ renpy.notify("Outfit Deleted.") + + elif _choice[0] == "export": + $ _choice[1].export_data(datetime.datetime.now().strftime("%d %b %Y-%H%M%S")) + $ achievements.unlock("export") + + elif _choice[0] == "import": + $ _outfit = char_active.import_outfit(_choice[1]) + + elif _choice[0] == "schedule": + $ renpy.call_screen("wardrobe_schedule_menuitem", _choice[1]) + + elif _choice == "music": + if wardrobe_music: + $ wardrobe_music = False + $ renpy.call("play_music", active_girl) + $ get_character_sayer(active_girl)("", face="happy") + else: + $ wardrobe_music = True + $ renpy.call("play_music", "wardrobe") + $ get_character_sayer(active_girl)("", face="happy") + + elif _choice == "randomise": + $ _confirmed = False + + $ _outfit = char_active.create_outfit(temp=True) + + if not _outfit.exists(): + $ _confirmed = wardrobe_suppress_warnings or renpy.call_screen("confirm", "Randomise Outfit?\n{size=-6}Unsaved changes will be lost.{/size}") + + if not _confirmed: + $ renpy.notify("Advice: If you want to keep an outfit, save it.") + jump .after_init + + python: + progress = get_character_progression(active_girl) + + for k in char_active.clothes.iterkeys(): + valid_choices = filter(lambda x: (x.type == k and x.unlocked and progress >= x.level), char_active.wardrobe_list) + + if k == "panties": + if not progress >= get_character_requirement(active_girl, "category lower undergarment"): + continue + + if progress >= get_character_requirement(active_girl, "unequip panties"): + valid_choices += [None] + elif k == "bra": + if not progress >= get_character_requirement(active_girl, "category upper undergarment"): + continue + + if progress >= get_character_requirement(active_girl, "unequip bra"): + valid_choices += [None] + elif k == "top": + if progress >= get_character_requirement(active_girl, "unequip top"): + valid_choices += [None] + elif k == "bottom": + if progress >= get_character_requirement(active_girl, "unequip bottom"): + valid_choices += [None] + elif any(k.startswith(type) for type in ("piercing", "tattoo")): + if not progress >= get_character_requirement(active_girl, "category piercings & tattoos"): + continue + + valid_choices += [None] + elif k == "hair": + pass + else: + valid_choices += [None] + + if valid_choices: + cloth = random.choice(valid_choices) + + if not cloth is None: + + if wardrobe_randomise_color: + col = [] + + for i in xrange(cloth.layers): + col.append([random.randint(0, 255), random.randint(0, 255), random.randint(0, 255), 255]) + + cloth.set_color(col) + + if wardrobe_global_color: + for outfit in char_active.outfits: + rebuild = False + + for i in outfit.group: + if not i.id == cloth.id: + continue + + i.set_color(cloth.color) + rebuild = True + + if rebuild: + outfit.rebuild_image() + + if isinstance(cloth, DollLipstick): + cloth.rebuild_image() + + char_active.equip(cloth) + else: + char_active.unequip(k) + + + else: #_choice == "Close": + $ _confirmed = False + + if wardrobe_autosave: + $ _outfit = char_active.create_outfit() + else: + $ _outfit = char_active.create_outfit(temp=True) + + if not _outfit.exists(): + $ renpy.notify("Advice: If you want to keep an outfit, save it.") + $ _confirmed = wardrobe_suppress_warnings or renpy.call_screen("confirm", "Exit without saving?\n{size=-6}Unsaved changes will be lost.{/size}") + + if not _confirmed: + jump .after_init + + $ char_active.equip(char_outfit) + + python: + if wardrobe_global_color: + for cloth in char_outfit.group: + for outfit in char_active.outfits: + rebuild = False + + for i in outfit.group: + if not i.id == cloth.id: + continue + + i.set_color(cloth.color) + rebuild = True + + if rebuild: + outfit.rebuild_image() + + hide screen wardrobe + $ char_active.wear("all") + $ renpy.play('sounds/door2.ogg') + if wardrobe_music: + $ renpy.call("play_music", active_girl) + $ enable_game_menu() + $ wardrobe_loaded = False + return + + jump .after_init + +screen wardrobe_menu(xx, yy): + tag wardrobe + zorder 24 + style_prefix "wardrobe" + predict False + modal True + + default icon_bg = Frame(gui.format("interface/frames/{}/iconmed.webp"), 6, 6) + default icon_frame = Frame(gui.format("interface/frames/{}/iconframe.webp"), 6, 6) + default panel = gui.format("interface/frames/{}/wardrobe.webp") + + window: + pos (xx, yy) + xysize (344, 507) + #background panel + + use invisible_button() + + # Main Categories + grid 2 4: + ypos 108 + xoffset -36 + xspacing 200 + 72 + yspacing 18 + + for i, category in enumerate(wardrobe_categories): + if wardrobe_check_category(category): + $ icon = Fixed(icon_bg, Transform("interface/wardrobe/icons/categories/{}/{}.webp".format(active_girl, category), zoom=0.45, anchor=(0.5, 0.5), align=(0.5, 0.5)), icon_frame) + else: + $ icon = Fixed(icon_bg, Transform("interface/wardrobe/icons/categories/{}/{}.webp".format(active_girl, category), zoom=0.45, anchor=(0.5, 0.5), align=(0.5, 0.5), matrixcolor=SaturationMatrix(0.0)), icon_frame) + $ icon_xoffset = -18 if (i % 2) == 0 else 18 + + button: + focus_mask None + xysize (72, 72) + background icon + activate_sound "sounds/scroll.ogg" + tooltip category + action Return(["category", category]) + if current_category == category: + xoffset icon_xoffset + + # Outfits and Studio + hbox: + $ icon_yoffset = -18 + + pos (92, 18) + spacing 18 + # Outfits Manager + button: + focus_mask None + xysize (72, 72) + background Fixed(icon_bg, Transform("interface/wardrobe/icons/categories/outfits.webp", zoom=0.45, anchor=(0.5, 0.5), align=(0.5, 0.5)), icon_frame) + tooltip "Outfits Manager" + action Return(["category", "outfits"]) + if current_category == "outfits": + yoffset icon_yoffset + + # Studio + if not renpy.android: + button: + focus_mask None + xysize (72, 72) + background Fixed(icon_bg, Transform("interface/wardrobe/icons/categories/studio.webp", zoom=0.45, anchor=(0.5, 0.5), align=(0.5, 0.5)), icon_frame) + tooltip "Photo Studio" + action Function(renpy.call_in_new_context, "studio", active_girl) + + add panel + + # Character image cut to the size of the wardrobe + add char_active.get_image(): + yoffset -6 + corner1 (184, 218) + corner2 (924, 1200) + zoom 0.45 + anchor (0.5, 1.0) + align (0.5, 1.0) + + at transform: + mesh True + gl_pixel_perfect True + + # Easter Egg (Headpats, boobs, pussy) + button style "empty" xysize (120, 80) xalign 0.525 ypos 60 action Return(["touch", "head"]) + button style "empty" xysize (120, 60) xalign 0.525 ypos 238 action Return(["touch", "breasts"]) + button style "empty" xysize (120, 60) xalign 0.525 ypos 360 action Return(["touch", "vagina"]) + + button: + focus_mask None + xysize (72, 72) + align (0.0, 1.0) + offset (10, -10) + background Transform("interface/wardrobe/icons/random.webp", size=(72,72)) + tooltip "Randomise Outfit" + action Return("randomise") + + use dropdown_menu(name="Options", pos=(12, 56)): + textbutton "Music": + style gui.theme("dropdown") + tooltip "My immortal." + selected wardrobe_music + action Return("music") + textbutton "Chit-chats": + style gui.theme("dropdown") + tooltip "{color=#35aae2}[active_girl]{/color} will make comments regarding your poor fashion tastes." + action ToggleVariable("wardrobe_chitchats", True, False) + textbutton "Outfits Scheduling": + style gui.theme("dropdown") + tooltip "{color=#35aae2}[active_girl]{/color} will automatically wear outfits\nbased on set schedule, time of day and weather." + action [ToggleVariable(active_girl+"_outfits_schedule", True, False), If((current_category == "outfits" and current_subcategory == "schedule"), Return(["subcategory", "save"]))] + textbutton "Outfits Autosave": + style gui.theme("dropdown") + tooltip "Outfits will be automatically saved upon exit." + action ToggleVariable("wardrobe_autosave", True, False) + textbutton "Colour Synchronisation": + style gui.theme("dropdown") + tooltip "When changing colours of an item, apply it to all outfits with the same item." + action ToggleVariable("wardrobe_global_color", True, False) + textbutton "Colour Randomisation": + style gui.theme("dropdown") + tooltip "When randomising outfits, randomise colours as well." + action ToggleVariable("wardrobe_randomise_color", True, False) + textbutton "Prompts Supression": + style gui.theme("dropdown") + tooltip "Disables warnings and prompts asking you to confirm certain actions. (Not recommended)" + action ToggleVariable("wardrobe_suppress_warnings", True, False) + +screen wardrobe_menuitem(xx, yy): + tag wardrobe_menuitem + zorder 24 + style_prefix "wardrobe" + predict False + modal True + + default icon_size = (96, 96) + default icon_frame = Frame(gui.format("interface/frames/{}/iconframe.webp"), 6, 6) + default icon_transparent = Frame("interface/color_picker/checker.webp", tile=True) + default panel = gui.format("interface/frames/{}/panel.webp") + + window: + pos (xx, yy) + xysize (560, 454) + background panel + + use invisible_button() + + text "[current_category]" size 22 xalign 0.5 ypos 65 + + # Colours + if current_item: + hbox: + spacing 2 + xanchor 1.0 + pos (552, 61) + + for i in xrange(current_item.layers): + button: + focus_mask None + xysize (32, 32) + background Fixed(icon_transparent, Color(tuple(current_item.color[i]))) + tooltip "Change colour ("+str(i+1)+")" + action Return(["setcolor", i]) + add icon_frame + # Reset Button + button: + focus_mask None + xysize (32, 32) + background "#d3d3d3" + tooltip "Reset all colours" + action Return(["resetcolor"]) + text "R" align (0.5, 0.5) + add icon_frame + + # Subcategory icons + hbox: + spacing 5 + pos (12, 108) + + for subcategory in category_items.keys(): + $ icon = "interface/wardrobe/icons/{}.webp".format(subcategory) + + button: + focus_mask None + xysize (72, 72) + background Transform(icon, size=(72, 72), fit="contain", alpha=0.65) + selected_background Transform(icon, size=(72, 72), fit="contain", ) + selected (subcategory == current_subcategory) + tooltip subcategory + action Return(["subcategory", subcategory]) + + # Item icons + if not menu_items: + text "Nothing here yet" size 24 align (0.5, 0.6) + # elif not wardrobe_loaded: + # text "Loading..." size 24 align (0.5, 0.6) + + # for i in menu_items: + # $ i.rebuild_image() + # $ i.rebuild_icon() + # #$ renpy.invoke_in_thread(i.rebuild_icon) + + # $ wardrobe_loaded = True + # $ renpy.restart_interaction() + else: + vpgrid: + cols 5 + spacing 5 + pos (28, 192) + xysize (507, 308) + mousewheel True + scrollbars "vertical" + + at transform: + mesh True + gl_pixel_perfect True + + for item in menu_items: + $ icon = item.get_icon() + $ is_seen = item.seen + $ is_equipped = char_active.is_equipped_item(item) + $ is_inadequate = bool(get_character_progression(active_girl) < item.level) + $ is_blacklisted = char_active.is_blacklisted(item.type) + $ is_blacklister = any(char_active.is_equipped(x) for x in item.blacklist) + $ is_modded = bool(item.modpath) + $ is_multislot = item.is_multislot() + $ warnings = [] + + if is_blacklisted or is_blacklister: + $ blacklisted = [x for x in item.blacklist if char_active.is_equipped(x)] # Offender (List currently blacklisted clothing types by this item) + $ blacklister = char_active.get_blacklister(item.type) # Victim (List clothing types blacklisting this item ) + $ warnings.append("Incompatible with:{size=-4}\n" + "\n".join(set(blacklisted + blacklister)) + "{/size}") + + if is_inadequate: + $ warnings.append("Character level too low") + + if is_modded: + $ warnings.append("Item belongs to a mod:\n{size=-4}{color=#35aae2}" + item.get_modname() + "{/color}{/size}") + + if is_multislot: + $ slot = str(int(item.type[-1])+1) + $ warnings.append("Occupies " + item.type[:-1] + " slot number " + slot) + + button: + focus_mask None + xysize icon_size + background Transform(icon, xsize=icon_size[0], fit="contain", anchor=(0.5, 0.5), align=(0.5, 0.5)) + action Return(["equip", item]) + tooltip ("\n".join(warnings)) + if is_inadequate: + foreground "#b2000040" + hover_foreground "#CD5C5C40" + if not is_seen: + unhovered Function(item.mark_as_seen) + + add icon_frame + + hbox: + offset (5, 5) + + if is_modded: + text "M" color "#00b200" + + if is_blacklisted or is_blacklister: + text "!" color "#b20000" + + if config.developer: + text "\nReq. {}".format(item.level) size 10 color "#00ffff" outlines [(1, "#000000", 1, 1)] + + # Bottom-Right + if is_equipped: + add "interface/topbar/icon_check.webp" anchor (1.0, 1.0) align (1.0, 1.0) offset (-5, -5) zoom 0.5 + + # Bottom-Right + if not is_seen: + text "NEW" style "wardrobe_item_caption" anchor (1.0, 1.0) align (1.0, 1.0) offset (-5, -5) + + # Bottom-Left + if is_multislot: + text "[slot]" style "wardrobe_item_caption" anchor (0.0, 1.0) align (0.0, 1.0) offset (5, -5) + +screen wardrobe_outfit_menuitem(xx, yy): + tag wardrobe_menuitem + zorder 24 + style_prefix "wardrobe" + predict False + + default icon_size = (96, 168) + default icon_frame = Frame(gui.format("interface/frames/{}/iconframe.webp"), 6, 6) + default panel = gui.format("interface/frames/{}/panel.webp") + + window: + pos (xx, yy) + xysize (560, 454) + background panel + + use invisible_button() + + text "[current_category]" size 22 xalign 0.5 ypos 65 + + # Subcategory icons + hbox: + spacing 5 + pos (8, 108) + + for subcategory in category_items.keys(): + $ icon = "interface/wardrobe/icons/{}.webp".format(subcategory) + $ action = Return(["subcategory", subcategory]) + + if subcategory == "schedule" and not getattr(renpy.store, active_girl+"_outfits_schedule"): + $ icon = gray_tint(icon) + $ action = Confirm("Outfit scheduling is currently disabled,\nwould you like to turn it on?", [SetVariable(active_girl+"_outfits_schedule", True), Return(["subcategory", subcategory])]) + + button: + focus_mask None + xysize (72, 72) + background Transform(icon, alpha=0.65, xsize=72, fit="contain") + selected_background Transform(icon, xsize=72, fit="contain") + selected (subcategory == current_subcategory) + tooltip subcategory + action action + + # Outfit icons + if not wardrobe_loaded: + text "Loading..." size 24 align (0.5, 0.6) + $ wardrobe_loaded = True + $ renpy.restart_interaction() + #timer 0.001 action SetVariable("wardrobe_loaded", True) + else: + vpgrid: + cols 5 + spacing 5 + pos (28, 192) + xysize (507, 308) + + # if renpy.android: + # mousewheel "horizontal" + # scrollbars "horizontal" + # else: + mousewheel True + scrollbars "vertical" + + # at transform: + # mesh True + # gl_pixel_perfect True + # events False + + # Add empty slot + if current_subcategory == "save": + textbutton "Save": + focus_mask None + xysize icon_size + idle_background "#00000033" + text_align (0.5, 0.5) + action Return(["addoutfit", None]) + + for item in reversed(menu_items): + if current_subcategory == "import": + $ icon = "/outfits/{}".format(item) + $ is_modded = False + $ is_equipped = False + else: + $ icon = Transform(item.get_image(), crop=(220, 0, 680, 1200)) + $ is_modded = item.is_modded() + $ is_equipped = bool(current_item == item) + $ is_inadequate = (current_subcategory in {"save", "load", "schedule"} and not wardrobe_check_equip_outfit(item)) + $ icon = Transform(icon, size=icon_size, fit="contain", anchor=(0.5, 1.0), align=(0.5, 1.0), yoffset=-6) + + $ warnings = [] + + if is_modded: + $ warnings.append("Outfit contains items from these mods:\n{size=-4}{color=#35aae2}"+ "\n".join(item.get_modname()) + "{/color}{/size}") + + $ alternate = None + if current_subcategory == "delete": + $ action = Return(["deloutfit", item]) + elif current_subcategory == "load": + $ action = Return(["equip", item]) + elif current_subcategory == "save": + $ action = Return(["addoutfit", item]) + elif current_subcategory == "import": + $ action = Return(["import", item]) + elif current_subcategory == "export": + $ action = Return(["export", item]) + elif current_subcategory == "schedule": + + if is_inadequate: + $ action = NullAction() + $ alternate = None + else: + $ action = Return(["schedule", item]) + $ alternate = Return(["schedule", item]) + + $ warnings = "\n".join(warnings) + + button: + focus_mask None + xysize icon_size + background icon + tooltip warnings + action action + alternate alternate + if is_inadequate: + foreground "#b2000040" + hover_foreground "#CD5C5C40" + selected_foreground "#CD5C5C40" + + add icon_frame + + hbox: + offset (5, 5) + + if is_modded: + text "M" color "#00b200" + + if not current_subcategory in {"import", "export"} and getattr(renpy.store, active_girl+"_outfits_schedule"): + vbox: + pos (6, 6) + spacing 1 + for i in wardrobe_outfit_schedule: + if item.schedule[i]: + add Transform("interface/wardrobe/icons/outfits/{}.webp".format(i), size=(16, 16)) + + if is_equipped: + add "interface/topbar/icon_check.webp": + anchor (1.0, 1.0) + align (1.0, 1.0) + offset (-5, -5) + zoom 0.5 + +screen wardrobe_schedule_menuitem(item): + tag dropdown + zorder 24 + modal True + predict False + + default mpos = renpy.get_mouse_pos() + + use invisible_button(action=Return(), alternate=Show("wardrobe_schedule_menuitem", item=item)) + + window: + style "empty" + pos mpos + #use invisible_button(action=NullAction(), alternate=Return()) + + frame: + style "empty" + background "#00000080" + padding (5, 5, 5, 5) + + vbox: + spacing 0 + for i in wardrobe_outfit_schedule: + $ boolean = "" if item.schedule[i] else "Not " + $ caption = "{}worn during the {}".format(boolean, i) if i in ("day", "night") else "{}worn in {} weather".format(boolean, i) + textbutton i: + style gui.theme("dropdown") + tooltip caption + action ToggleDict(item.schedule, i, True, False) + +style wardrobe_window is empty + +style wardrobe_button is empty: + foreground None + hover_foreground "#ffffff80" + activate_sound "sounds/click.ogg" + +style wardrobe_button_text: + color "#fff" + size 20 + outlines [ (1, "#000", 0, 0) ] + +style wardrobe_item_caption: + color "#fff" + size 14 + outlines [ (1, "#000", 0, 0) ] diff --git a/game/sounds/07_run.ogg b/game/sounds/07_run.ogg new file mode 100644 index 00000000..e9cc40cc --- /dev/null +++ b/game/sounds/07_run.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9f1d2e66016d37dcfd38567fdc3008fe53ae4f6301197cd5e2aa71cc0947ff0 +size 25306 diff --git a/game/sounds/08_hop_on_desk.ogg b/game/sounds/08_hop_on_desk.ogg new file mode 100644 index 00000000..d2cdb543 --- /dev/null +++ b/game/sounds/08_hop_on_desk.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c92b7d82eb9fa85e732dc92d7eba7f42706bb0408dc6c7915979d86175e59229 +size 57464 diff --git a/game/sounds/09_lock.ogg b/game/sounds/09_lock.ogg new file mode 100644 index 00000000..61ea76b6 --- /dev/null +++ b/game/sounds/09_lock.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9578493d1e050b9b9997b3806b0354f8c1295f47c7638e365994f1aa2baaab1a +size 14839 diff --git a/game/sounds/Ball_Hit.ogg b/game/sounds/Ball_Hit.ogg new file mode 100644 index 00000000..f2d15b46 --- /dev/null +++ b/game/sounds/Ball_Hit.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4cd972b3a190dc6e0548b3f3ab34b79c4bd787eeac2d8b5cbf4dddca834636b1 +size 10674 diff --git a/game/sounds/Cliffcore.ogg b/game/sounds/Cliffcore.ogg new file mode 100644 index 00000000..48065b62 --- /dev/null +++ b/game/sounds/Cliffcore.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4413b5fa005882c2159e40c74bf82ddb4d7703cf8b652ffceb65ca4507b30ddc +size 3192704 diff --git a/game/sounds/CreakingShip.ogg b/game/sounds/CreakingShip.ogg new file mode 100644 index 00000000..eceaa1af --- /dev/null +++ b/game/sounds/CreakingShip.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:854941e785f80e5909153de6e8b6c1f140d44fd809871b21e7fe03d15b803ad6 +size 629774 diff --git a/game/sounds/Epic_Intro.ogg b/game/sounds/Epic_Intro.ogg new file mode 100644 index 00000000..19c94425 --- /dev/null +++ b/game/sounds/Epic_Intro.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:55a507b3017ce8482a73502843f2b07746b0808f56a007d0688b8dc19fb9c3c4 +size 160687 diff --git a/game/sounds/Fire01.ogg b/game/sounds/Fire01.ogg new file mode 100644 index 00000000..0639b627 --- /dev/null +++ b/game/sounds/Fire01.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3846b43295a5965cc2345a05596bd830c9860d75fcdbea74b867a53588531d31 +size 264167 diff --git a/game/sounds/Genie VS HermioneNormalUseotherone.ogg b/game/sounds/Genie VS HermioneNormalUseotherone.ogg new file mode 100644 index 00000000..e0f88342 --- /dev/null +++ b/game/sounds/Genie VS HermioneNormalUseotherone.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe6f4f2af6111c9c53c42515443b050fe3b564e4d835bef57ac798e110eeb499 +size 77809 diff --git a/game/sounds/Genie_VS_Hermione.ogg b/game/sounds/Genie_VS_Hermione.ogg new file mode 100644 index 00000000..e7b45a21 --- /dev/null +++ b/game/sounds/Genie_VS_Hermione.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:346f55c65946e59bebb726012235cda4228ef83c323f0378c0ccd0ac952ef66f +size 59774 diff --git a/game/sounds/Genie_VS_Hermione2.ogg b/game/sounds/Genie_VS_Hermione2.ogg new file mode 100644 index 00000000..4c65204a --- /dev/null +++ b/game/sounds/Genie_VS_Hermione2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ec2b8149b874771d762fa14dc4e17538c7beff80b86e4500c943fba4692795e +size 73297 diff --git a/game/sounds/Genie_VS_Hermione3.ogg b/game/sounds/Genie_VS_Hermione3.ogg new file mode 100644 index 00000000..4ac1f55f --- /dev/null +++ b/game/sounds/Genie_VS_Hermione3.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:33aa38a8ea3bcb66f19ceb6fd7cf9a0dc5b11398c6dce2e830c97f1db29cfeeb +size 67689 diff --git a/game/sounds/Genie_VS_Hermione4.ogg b/game/sounds/Genie_VS_Hermione4.ogg new file mode 100644 index 00000000..0eee59df --- /dev/null +++ b/game/sounds/Genie_VS_Hermione4.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8a0babc30321fa44fe68fc6e154ece4842a3a8620f6cf7d57f75544ac3491d8 +size 78533 diff --git a/game/sounds/Genie_VS_Snape.ogg b/game/sounds/Genie_VS_Snape.ogg new file mode 100644 index 00000000..5e992fa4 --- /dev/null +++ b/game/sounds/Genie_VS_Snape.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:01ede15b17f92b4f7fdc51879a10322a0d8ed1a3715054bc749d1d552641e718 +size 67320 diff --git a/game/sounds/Genie_VS_Twins.ogg b/game/sounds/Genie_VS_Twins.ogg new file mode 100644 index 00000000..1683f381 --- /dev/null +++ b/game/sounds/Genie_VS_Twins.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:48637c6a4c0b9f0c89983df44eb9441185aa2cbe3f97725ce89690ab381d7148 +size 59584 diff --git a/game/sounds/Genie_VS_Twins_Teleport.ogg b/game/sounds/Genie_VS_Twins_Teleport.ogg new file mode 100644 index 00000000..1dfb8a36 --- /dev/null +++ b/game/sounds/Genie_VS_Twins_Teleport.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eda8627707dd00d28e36de2fcb5aaa6c27cbef7bf3327dd79a723cf0aff09117 +size 61394 diff --git a/game/sounds/MaleClearThroat.ogg b/game/sounds/MaleClearThroat.ogg new file mode 100644 index 00000000..8736db49 --- /dev/null +++ b/game/sounds/MaleClearThroat.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:123a5e821942e9d1463406a1912f76fe72284e33b415f49be1a70810f7b9c830 +size 13575 diff --git a/game/sounds/MaleGasp.ogg b/game/sounds/MaleGasp.ogg new file mode 100644 index 00000000..cf37aadb --- /dev/null +++ b/game/sounds/MaleGasp.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d855ca9135fbf3bd07e316d6c2de7dac859e187282c4e23525d300fe76dbbfb +size 12233 diff --git a/game/sounds/Referee.ogg b/game/sounds/Referee.ogg new file mode 100644 index 00000000..5688dc12 --- /dev/null +++ b/game/sounds/Referee.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2efd75ac41eb690fefaae8265c43094001db8d213d0fedd413c5fe2ad51366db +size 15682 diff --git a/game/sounds/achievement.ogg b/game/sounds/achievement.ogg new file mode 100644 index 00000000..4d1c4bb3 --- /dev/null +++ b/game/sounds/achievement.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:37b8a5f91597ab6ac0eca30bec5e6adbe13f824172746e0af458217d459bfd00 +size 18670 diff --git a/game/sounds/applause01.ogg b/game/sounds/applause01.ogg new file mode 100644 index 00000000..337f6a73 --- /dev/null +++ b/game/sounds/applause01.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4afb4b3f9b8143f095e1cae1426b6475136637b59babeb153175755f97936b07 +size 66946 diff --git a/game/sounds/arcade.ogg b/game/sounds/arcade.ogg new file mode 100644 index 00000000..39cd367c --- /dev/null +++ b/game/sounds/arcade.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c571567705ed1f3182837872bddd12b0f2d4e4e9e0f269330574fdd3bf9725f +size 6153 diff --git a/game/sounds/attack_axe.ogg b/game/sounds/attack_axe.ogg new file mode 100644 index 00000000..a1495a74 --- /dev/null +++ b/game/sounds/attack_axe.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5864aa040515cfb1c09e63d98b9a4d8467f6e9c114c0fa534e06716ae7215e0a +size 10218 diff --git a/game/sounds/attack_heal.ogg b/game/sounds/attack_heal.ogg new file mode 100644 index 00000000..b7cc7e67 --- /dev/null +++ b/game/sounds/attack_heal.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:948d74764844058ed5961f85c1d80ce61784d45c0b032990438abbc932c50612 +size 19857 diff --git a/game/sounds/attack_snape.ogg b/game/sounds/attack_snape.ogg new file mode 100644 index 00000000..d8fc5bc8 --- /dev/null +++ b/game/sounds/attack_snape.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bbf3e7c46800a61d63c3a18171a93e46f1e6cc9ccdc7c5965a3cede36807f0ed +size 11985 diff --git a/game/sounds/attack_snape2.ogg b/game/sounds/attack_snape2.ogg new file mode 100644 index 00000000..5459c18f --- /dev/null +++ b/game/sounds/attack_snape2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d584d9a97ae8d6e7c45480f09128f97ddf2a39c0b931cca660ba81611f9ff8e0 +size 16494 diff --git a/game/sounds/attack_snape3.ogg b/game/sounds/attack_snape3.ogg new file mode 100644 index 00000000..f944b52d --- /dev/null +++ b/game/sounds/attack_snape3.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d26dc6f98a8bfe23d52ac9629009903531b066bed208ca199bc5e1c54172e5ad +size 46502 diff --git a/game/sounds/attack_snape4.ogg b/game/sounds/attack_snape4.ogg new file mode 100644 index 00000000..66b3ccab --- /dev/null +++ b/game/sounds/attack_snape4.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1899987db7ab7a8da84cb0bc6048f2d1c2ed6ccef91a720a4ee4ef2f4323d437 +size 28048 diff --git a/game/sounds/bang.ogg b/game/sounds/bang.ogg new file mode 100644 index 00000000..c532b697 --- /dev/null +++ b/game/sounds/bang.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1b3297d95e64d51462326ad86efe01af30bf286c7e66db5b85ff52e1d86eb588 +size 149881 diff --git a/game/sounds/beep2.ogg b/game/sounds/beep2.ogg new file mode 100644 index 00000000..ecdea444 --- /dev/null +++ b/game/sounds/beep2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1f8696cf03850420e402ba210d7ac510bbad505849abc029415eddff21d6af3 +size 28627 diff --git a/game/sounds/beep3.ogg b/game/sounds/beep3.ogg new file mode 100644 index 00000000..fb12750f --- /dev/null +++ b/game/sounds/beep3.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7185b1db5e08a698301bef77cf9ae26a8dc50a1886930d7a3d1d751a6e40b4e1 +size 4407 diff --git a/game/sounds/beep4.ogg b/game/sounds/beep4.ogg new file mode 100644 index 00000000..f2ac309d --- /dev/null +++ b/game/sounds/beep4.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:99eb4207a82ac0fcb9c2f84809054dc1378f6e0dd40cc6c9706a123dd2e40713 +size 3871 diff --git a/game/sounds/beep5.ogg b/game/sounds/beep5.ogg new file mode 100644 index 00000000..d8c9ad54 --- /dev/null +++ b/game/sounds/beep5.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a9327c4af6558ce4c369c7a66aaa0201cbf279a6a637d8d6bca4a955dc465b5 +size 3918 diff --git a/game/sounds/bjloop.ogg b/game/sounds/bjloop.ogg new file mode 100644 index 00000000..1e8c38c7 --- /dev/null +++ b/game/sounds/bjloop.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f3bd26e8cf1f75500a17f7bdb04f0509ecfcbc5cd78ac6403ca2c28cc342736 +size 8481 diff --git a/game/sounds/blizzard.ogg b/game/sounds/blizzard.ogg new file mode 100644 index 00000000..b914bec2 --- /dev/null +++ b/game/sounds/blizzard.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2db0ae6613c03a9f7d591a9b88032b27155f8def9b8b350078aa43c7924ad7a8 +size 954824 diff --git a/game/sounds/boing02.ogg b/game/sounds/boing02.ogg new file mode 100644 index 00000000..9c95df8f --- /dev/null +++ b/game/sounds/boing02.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60611c4c78935cee315ff2d80f11072bb1ffaa2a5818f11e24a5927cdfd64b5e +size 12465 diff --git a/game/sounds/boing03.ogg b/game/sounds/boing03.ogg new file mode 100644 index 00000000..8ec46cd6 --- /dev/null +++ b/game/sounds/boing03.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a152f5555c0708fd12b134a206d0d290fbc11c67078ca9e44d57a42d146f5069 +size 12788 diff --git a/game/sounds/boing04.ogg b/game/sounds/boing04.ogg new file mode 100644 index 00000000..c0fb2482 --- /dev/null +++ b/game/sounds/boing04.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:efee1e79f6499309676f700f55f2ac8a359d910a8aff554579e19895ee287ef8 +size 17154 diff --git a/game/sounds/boing05.ogg b/game/sounds/boing05.ogg new file mode 100644 index 00000000..724cb11c --- /dev/null +++ b/game/sounds/boing05.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3195e2ef750b7dd049d2fdb135b2e01f2956f3817c51a66b867bf7ac7e4c8b2 +size 22491 diff --git a/game/sounds/bookclose.ogg b/game/sounds/bookclose.ogg new file mode 100644 index 00000000..3a7bb7cf --- /dev/null +++ b/game/sounds/bookclose.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d35c291b0ac7a1a4e6620fc24f5ef82ec12537d8660cc70e31590db5a6a946d1 +size 7829 diff --git a/game/sounds/bookopen.ogg b/game/sounds/bookopen.ogg new file mode 100644 index 00000000..f774e966 --- /dev/null +++ b/game/sounds/bookopen.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c31ecc17ad5467014f636b84a2fea21c4d7804cf604e08e411d0c5ab06b7187f +size 11833 diff --git a/game/sounds/bottle.ogg b/game/sounds/bottle.ogg new file mode 100644 index 00000000..b1b4656a --- /dev/null +++ b/game/sounds/bottle.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ca10bf4c357d75601b535928294732ba53b1ecc772c7b4abf78853768cd160c +size 10728 diff --git a/game/sounds/brewing_idle.ogg b/game/sounds/brewing_idle.ogg new file mode 100644 index 00000000..531e6632 --- /dev/null +++ b/game/sounds/brewing_idle.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a956336daf5eb598e5fa40921b2b843215a1f78a96007003b4ca55c3603fd5fe +size 299492 diff --git a/game/sounds/brick_scrape.ogg b/game/sounds/brick_scrape.ogg new file mode 100644 index 00000000..213d5f36 --- /dev/null +++ b/game/sounds/brick_scrape.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:42168c32c336d636a322167280f1bc30faf214ddc3182073de5835744972675c +size 14795 diff --git a/game/sounds/bubble.ogg b/game/sounds/bubble.ogg new file mode 100644 index 00000000..d30d93d0 --- /dev/null +++ b/game/sounds/bubble.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7fe87266dfead71b871bc16e262d657c4670a2e82cff7e7ba3557543292cb62d +size 15898 diff --git a/game/sounds/burp.ogg b/game/sounds/burp.ogg new file mode 100644 index 00000000..d489674a --- /dev/null +++ b/game/sounds/burp.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5017ef439d3f021ed3a53ca3321d8b3e96ee863f77fb1596dfefbabec1a0aad2 +size 9490 diff --git a/game/sounds/cannon.ogg b/game/sounds/cannon.ogg new file mode 100644 index 00000000..88520aa3 --- /dev/null +++ b/game/sounds/cannon.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4d55a26f6ed1fa1126fffad3f1228998d691fbb047450a3832a5997b675d60f +size 14245 diff --git a/game/sounds/card.ogg b/game/sounds/card.ogg new file mode 100644 index 00000000..61f30404 --- /dev/null +++ b/game/sounds/card.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:160d82168be30b0670a756ffb82444b73ebb625cacc50c8f2154368f93fb88a7 +size 8602 diff --git a/game/sounds/card_punch.ogg b/game/sounds/card_punch.ogg new file mode 100644 index 00000000..10e4d997 --- /dev/null +++ b/game/sounds/card_punch.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a200f06cda7a5c5fd11fd51e114d6e53ca733e0d6f9bba5f7dda61b3cf4575f7 +size 11724 diff --git a/game/sounds/card_punch1.ogg b/game/sounds/card_punch1.ogg new file mode 100644 index 00000000..821eeabd --- /dev/null +++ b/game/sounds/card_punch1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6274c7589d5bef85f615d8da4d76890e0720403e992bf2ad3b6700778f8f282b +size 17969 diff --git a/game/sounds/card_punch2.ogg b/game/sounds/card_punch2.ogg new file mode 100644 index 00000000..e0d7c11b --- /dev/null +++ b/game/sounds/card_punch2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9898284aba004c784d4ffa5fd670b89502fa952ae69df290b594d5c71397845b +size 15530 diff --git a/game/sounds/card_punch3.ogg b/game/sounds/card_punch3.ogg new file mode 100644 index 00000000..f5625c97 --- /dev/null +++ b/game/sounds/card_punch3.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dedaee3fcf18d50cbbb4e9ccff0f94b549e749e8bf7442a748074d8368c90f77 +size 13576 diff --git a/game/sounds/card_punch4.ogg b/game/sounds/card_punch4.ogg new file mode 100644 index 00000000..b2cedd1f --- /dev/null +++ b/game/sounds/card_punch4.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b20c2f1dc674cb99d0569f37732d4bc96d50bf05845ae95a55f0bc7438849d03 +size 14730 diff --git a/game/sounds/card_win.ogg b/game/sounds/card_win.ogg new file mode 100644 index 00000000..64747ef9 --- /dev/null +++ b/game/sounds/card_win.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb82da81fad0d8e685185d8738926cb6a7dad8004a867bd1e1948057a75d83c1 +size 27667 diff --git a/game/sounds/cat_scream.ogg b/game/sounds/cat_scream.ogg new file mode 100644 index 00000000..d38a85e1 --- /dev/null +++ b/game/sounds/cat_scream.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45ddf985eceaebc969faa7d734b8218b40fc9aff5af2c7849db30c47d4d80397 +size 26040 diff --git a/game/sounds/click.ogg b/game/sounds/click.ogg new file mode 100644 index 00000000..eb8e967b --- /dev/null +++ b/game/sounds/click.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:15679905d73229f671ba67a907fd2b4937bbab32adc58b967e9a48623cdfe60f +size 4901 diff --git a/game/sounds/click3.ogg b/game/sounds/click3.ogg new file mode 100644 index 00000000..a27b799f --- /dev/null +++ b/game/sounds/click3.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09adbafa5fb06a08edce89bb0f343b5c932487ca2c77781b678e66750ee6f717 +size 6177 diff --git a/game/sounds/cloth_rip.ogg b/game/sounds/cloth_rip.ogg new file mode 100644 index 00000000..558066ae --- /dev/null +++ b/game/sounds/cloth_rip.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f9fde6efa164ab3793e3b203dfb99a8a695bec61140dd3bfaf1e5e6d1391c581 +size 11308 diff --git a/game/sounds/cloth_sound.ogg b/game/sounds/cloth_sound.ogg new file mode 100644 index 00000000..6ced676c --- /dev/null +++ b/game/sounds/cloth_sound.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:92cc9bbc06b03e88e1c2d51157f603beeb09a093effd01901f0bc9e77e5ebf80 +size 26797 diff --git a/game/sounds/cloth_sound2.ogg b/game/sounds/cloth_sound2.ogg new file mode 100644 index 00000000..a718eeff --- /dev/null +++ b/game/sounds/cloth_sound2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:954cae3d81b767c0282c8cd22465af854f7c4ffc8cdc22b35dd4b90ef95799c8 +size 16440 diff --git a/game/sounds/cloth_sound3.ogg b/game/sounds/cloth_sound3.ogg new file mode 100644 index 00000000..0cea7232 --- /dev/null +++ b/game/sounds/cloth_sound3.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:351f55fd3515cd04930695d5213fb594eeea489da56d9b43b8eef15910c36caf +size 17995 diff --git a/game/sounds/cloth_sound4.ogg b/game/sounds/cloth_sound4.ogg new file mode 100644 index 00000000..9e8ec8c6 --- /dev/null +++ b/game/sounds/cloth_sound4.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2246cba11e5979f919729af705dfdb7ede0332804082289ecc20716ee06f74ac +size 10951 diff --git a/game/sounds/cloth_upgrade.ogg b/game/sounds/cloth_upgrade.ogg new file mode 100644 index 00000000..27279e9b --- /dev/null +++ b/game/sounds/cloth_upgrade.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a654882562074d4a0a735f74ed2628bd328c27e2a520cacaae70fe75cf5e631 +size 96365 diff --git a/game/sounds/coins.ogg b/game/sounds/coins.ogg new file mode 100644 index 00000000..7e088594 --- /dev/null +++ b/game/sounds/coins.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04a7ce5e2dd06ebe0f3d1de307d77aacbe1f1c2211df4bb694e21a3f90c68286 +size 14436 diff --git a/game/sounds/collar_click.ogg b/game/sounds/collar_click.ogg new file mode 100644 index 00000000..4c199183 --- /dev/null +++ b/game/sounds/collar_click.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6cf5ce547b36bd0803c419171a3e15c096a41ae77dc48116e2c078f91837c6b2 +size 7085 diff --git a/game/sounds/cough_Male.ogg b/game/sounds/cough_Male.ogg new file mode 100644 index 00000000..2fc63ede --- /dev/null +++ b/game/sounds/cough_Male.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:848b4d926cc36dbf0c2208c8e6b029c9e1851da903f544e238b277555f43ad60 +size 19058 diff --git a/game/sounds/crash.ogg b/game/sounds/crash.ogg new file mode 100644 index 00000000..6df373fe --- /dev/null +++ b/game/sounds/crash.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca1d141dfcaa466c623c10b45adac62d37036f5007b98ff4e20c8cbe511d1c58 +size 79723 diff --git a/game/sounds/creaking.ogg b/game/sounds/creaking.ogg new file mode 100644 index 00000000..c2cb1b3a --- /dev/null +++ b/game/sounds/creaking.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6979d1a77ea98708ed4b88e371613e3729f8aaa3706b55a19c51a519d60dfeaa +size 70092 diff --git a/game/sounds/creaking01.ogg b/game/sounds/creaking01.ogg new file mode 100644 index 00000000..bb002e3c --- /dev/null +++ b/game/sounds/creaking01.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83add932d1b621b05c054b9966422d4a4b794bad8e583abcf22a12cdd3ee1cb0 +size 22036 diff --git a/game/sounds/creaking02.ogg b/game/sounds/creaking02.ogg new file mode 100644 index 00000000..052e39bf --- /dev/null +++ b/game/sounds/creaking02.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:559bdd7544a2a7e5407fd84741330fe01040dbae8a767020731b8ea2bc0e4973 +size 24070 diff --git a/game/sounds/crowd.ogg b/game/sounds/crowd.ogg new file mode 100644 index 00000000..821b2f25 --- /dev/null +++ b/game/sounds/crowd.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9d6bd14778401ad895c9d38314b70d8431a333e532a4d1ea513c83ac688b17fc +size 695013 diff --git a/game/sounds/crowd_applause.ogg b/game/sounds/crowd_applause.ogg new file mode 100644 index 00000000..6ee7b8cb --- /dev/null +++ b/game/sounds/crowd_applause.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4c5aeb809ea6e30ad7ef15d3d07f5a7eebc8e190e251d5cc8df24140b2140483 +size 223210 diff --git a/game/sounds/crowd_cheer.ogg b/game/sounds/crowd_cheer.ogg new file mode 100644 index 00000000..224d8040 --- /dev/null +++ b/game/sounds/crowd_cheer.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2bf31c616312a084e0258352713e4447b564f733e416c4d6c4dc0b39cd8d3007 +size 72444 diff --git a/game/sounds/crowd_cheer2.ogg b/game/sounds/crowd_cheer2.ogg new file mode 100644 index 00000000..3965d9e7 --- /dev/null +++ b/game/sounds/crowd_cheer2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4d14f450acba6901fb8989e0b68a9d1aaf3b3c6b34367629899b436dacf385ff +size 80276 diff --git a/game/sounds/crowd_gasp.ogg b/game/sounds/crowd_gasp.ogg new file mode 100644 index 00000000..b9422c14 --- /dev/null +++ b/game/sounds/crowd_gasp.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:91c801bf0e1e1113af0eabd0ad80c8620b7ca261dc9f76c7442f240dbb5571b2 +size 13170 diff --git a/game/sounds/crowd_low.ogg b/game/sounds/crowd_low.ogg new file mode 100644 index 00000000..80f51b1b --- /dev/null +++ b/game/sounds/crowd_low.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e357b184ecc3e7d93c03fc523baf45c270b07411baa7edfe7b185b24bf1c48d +size 685721 diff --git a/game/sounds/crowd_ouch.ogg b/game/sounds/crowd_ouch.ogg new file mode 100644 index 00000000..8f5abe4d --- /dev/null +++ b/game/sounds/crowd_ouch.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e8690594935f1f4c53647df44b7ed4b7cafde7dfe9dcfdceb4c3bc7559850496 +size 22137 diff --git a/game/sounds/crowd_stomping.ogg b/game/sounds/crowd_stomping.ogg new file mode 100644 index 00000000..18fcde4e --- /dev/null +++ b/game/sounds/crowd_stomping.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aed025066fb9ec22a2cddf4602d9b30e0dd3168024113ef5ec56947dbd9c1d23 +size 59785 diff --git a/game/sounds/crowd_very_low.ogg b/game/sounds/crowd_very_low.ogg new file mode 100644 index 00000000..7c5f42e1 --- /dev/null +++ b/game/sounds/crowd_very_low.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7da4f432ac6fe90e6e91db30f25759b379ec7f2ff1d0c1735fe365f223065bba +size 658360 diff --git a/game/sounds/crunch.ogg b/game/sounds/crunch.ogg new file mode 100644 index 00000000..34b3dba6 --- /dev/null +++ b/game/sounds/crunch.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d3044f79eaee04d71fa09221b4e4cd64bfbd2f6153003f0937d58c62aecc7a7 +size 7534 diff --git a/game/sounds/day.ogg b/game/sounds/day.ogg new file mode 100644 index 00000000..17a77ff6 --- /dev/null +++ b/game/sounds/day.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc9a654f6b077b1fea1e25d1649fd491347af36751b39563236ab8e3e5361d7d +size 355772 diff --git a/game/sounds/day_original.ogg b/game/sounds/day_original.ogg new file mode 100644 index 00000000..294d74ce --- /dev/null +++ b/game/sounds/day_original.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:43b78c18f1653fd5a1adc004663664abbe280f43b7aa9efe45fd5b331538b334 +size 325403 diff --git a/game/sounds/deep-voice-evil-machine.ogg b/game/sounds/deep-voice-evil-machine.ogg new file mode 100644 index 00000000..5f54a3f6 --- /dev/null +++ b/game/sounds/deep-voice-evil-machine.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:76c089407106f0b11c750c5408a1451f4c299b76ff167d5e9ab5a35a05395c3a +size 24860 diff --git a/game/sounds/dice01.ogg b/game/sounds/dice01.ogg new file mode 100644 index 00000000..74a1ba2f --- /dev/null +++ b/game/sounds/dice01.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c90fe436511868126aca4f029d86cc465615318130afbddbb29da4b848f497c +size 25050 diff --git a/game/sounds/dice02.ogg b/game/sounds/dice02.ogg new file mode 100644 index 00000000..0c0d1d48 --- /dev/null +++ b/game/sounds/dice02.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:571082b45d0ccd653309afc2916fb2a52f70af5ebf4a1e52e3d866c5d85c6f2b +size 25220 diff --git a/game/sounds/dizzy.ogg b/game/sounds/dizzy.ogg new file mode 100644 index 00000000..c4db8adf --- /dev/null +++ b/game/sounds/dizzy.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9e032da47cc994a84ab0aed033cce874ad99f79c9cfe12c334146808107937e +size 31539 diff --git a/game/sounds/door.ogg b/game/sounds/door.ogg new file mode 100644 index 00000000..c8d169c9 --- /dev/null +++ b/game/sounds/door.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d67c5a8a70b33d41ec4845e931ab116c3cc18bd13a8bd6b1f4c71f3beb6ca3b6 +size 10842 diff --git a/game/sounds/door2.ogg b/game/sounds/door2.ogg new file mode 100644 index 00000000..2166b38e --- /dev/null +++ b/game/sounds/door2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8fd8ef6c678ccc150fdcac1b4b373a4a8fc878306ebaf4798ab1a61ab51cf8a +size 18194 diff --git a/game/sounds/door3.ogg b/game/sounds/door3.ogg new file mode 100644 index 00000000..c8270e84 --- /dev/null +++ b/game/sounds/door3.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8061130d5a1767e03246df1f230602f7b7a451c17eac2d943879335d10674d64 +size 11100 diff --git a/game/sounds/door_down.ogg b/game/sounds/door_down.ogg new file mode 100644 index 00000000..7a8daea5 --- /dev/null +++ b/game/sounds/door_down.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c958519689f8db4488c40cfa38b361b5eb0c5293afe2008a8225a54db9a911ff +size 11806 diff --git a/game/sounds/drawer_open.ogg b/game/sounds/drawer_open.ogg new file mode 100644 index 00000000..8c0799e8 --- /dev/null +++ b/game/sounds/drawer_open.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fbc91e072b86128e4706f18808805ab65bd4300bc4d000d4946df6a56797a41d +size 19329 diff --git a/game/sounds/drop.ogg b/game/sounds/drop.ogg new file mode 100644 index 00000000..49466dc2 --- /dev/null +++ b/game/sounds/drop.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bf3689df612f3ff56681ee4513e2ec6613910a917416fa5775887f74b23385b +size 22424 diff --git a/game/sounds/equip.ogg b/game/sounds/equip.ogg new file mode 100644 index 00000000..f8815bc7 --- /dev/null +++ b/game/sounds/equip.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:34b6c846e677865ae688dc02be54d142f59f1716af47a27ae5b0a012b86e68ee +size 7695 diff --git a/game/sounds/exp_add.ogg b/game/sounds/exp_add.ogg new file mode 100644 index 00000000..eccacd9f --- /dev/null +++ b/game/sounds/exp_add.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:904ccc08550b74ddbd218b660896be1ecd770173df81c94dd4ec1a82263d6bba +size 13072 diff --git a/game/sounds/exp_del.ogg b/game/sounds/exp_del.ogg new file mode 100644 index 00000000..7facaf50 --- /dev/null +++ b/game/sounds/exp_del.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad41ab03e180aa3cfa42e647ad3c2051a9db7e663bd2aaaa47613efcc5b89caa +size 15470 diff --git a/game/sounds/fail.ogg b/game/sounds/fail.ogg new file mode 100644 index 00000000..f8e6dc28 --- /dev/null +++ b/game/sounds/fail.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d89441c65169c6ea010845066bf87fd983ceb63377cd9e1953c6b20d53f97708 +size 6351 diff --git a/game/sounds/fall.ogg b/game/sounds/fall.ogg new file mode 100644 index 00000000..d5acff60 --- /dev/null +++ b/game/sounds/fall.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3a727c9a69f9122d790e05f8e8824f99f0db65ffc6a7aeb126b09f4ab2af454a +size 9221 diff --git a/game/sounds/falling.ogg b/game/sounds/falling.ogg new file mode 100644 index 00000000..ea68801f --- /dev/null +++ b/game/sounds/falling.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06c1a642612dc7df6887c40d7d06b867b7f498441773e5245dc8cb9336fd771a +size 36303 diff --git a/game/sounds/falling_stairs.ogg b/game/sounds/falling_stairs.ogg new file mode 100644 index 00000000..0befc5c4 --- /dev/null +++ b/game/sounds/falling_stairs.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83ca41dbe32831e589fc6eef63511757114361b0ca302a3c2e243e3ca36fa1be +size 24781 diff --git a/game/sounds/fire02.ogg b/game/sounds/fire02.ogg new file mode 100644 index 00000000..65c2a367 --- /dev/null +++ b/game/sounds/fire02.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09cc2e447a081ee418cf4c2402ba109b9173d58473c07aa016615f1981267a54 +size 126271 diff --git a/game/sounds/fire02_original.ogg b/game/sounds/fire02_original.ogg new file mode 100644 index 00000000..83920b48 --- /dev/null +++ b/game/sounds/fire02_original.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2cd4d25d495ee1400d8b05f9264a8f81720e6d4ebb104bd08538af5642df6520 +size 131518 diff --git a/game/sounds/fire_woosh.ogg b/game/sounds/fire_woosh.ogg new file mode 100644 index 00000000..7f6caffd --- /dev/null +++ b/game/sounds/fire_woosh.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c4456f69f840283dfb3455275785ab26f9b43e2769b019bad510c699b7c0dd13 +size 13920 diff --git a/game/sounds/flashbang.ogg b/game/sounds/flashbang.ogg new file mode 100644 index 00000000..eca3e6d8 --- /dev/null +++ b/game/sounds/flashbang.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5ba042f89be0dcf4761b2490d161d36a6190f9876197fc4a4dab0fe8f6f46df +size 19272 diff --git a/game/sounds/footsteps.ogg b/game/sounds/footsteps.ogg new file mode 100644 index 00000000..00eaf08d --- /dev/null +++ b/game/sounds/footsteps.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbf68b8b49d47dac2a57aa2b21b6d78c0bdb7e4af2f5c7d40bf8a9aa1c3416de +size 28442 diff --git a/game/sounds/fuse.ogg b/game/sounds/fuse.ogg new file mode 100644 index 00000000..943b872b --- /dev/null +++ b/game/sounds/fuse.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7e13778fd3ff6343ab44f4fe2abf5dc539a276736c55c1b5c23e1c9272041f97 +size 19120 diff --git a/game/sounds/gasp.ogg b/game/sounds/gasp.ogg new file mode 100644 index 00000000..a468b806 --- /dev/null +++ b/game/sounds/gasp.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fae3204600feceba8aeb3c83ba38b11f0e33239dd65b5d9e9edee5b84697444b +size 8413 diff --git a/game/sounds/gasp2.ogg b/game/sounds/gasp2.ogg new file mode 100644 index 00000000..ca3ac210 --- /dev/null +++ b/game/sounds/gasp2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f7eabecce45085bc03d0348fe6316e274cb7b808ca1158752555360ae70a717 +size 8989 diff --git a/game/sounds/gasp3.ogg b/game/sounds/gasp3.ogg new file mode 100644 index 00000000..cfd5afa8 --- /dev/null +++ b/game/sounds/gasp3.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5e557dd31ebb15ed55a6453a7d8fe81deafcade24f539140adea8a8ae95cf69b +size 9832 diff --git a/game/sounds/ghost1.ogg b/game/sounds/ghost1.ogg new file mode 100644 index 00000000..2835d5fd --- /dev/null +++ b/game/sounds/ghost1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b72f676a2042245a0da9d1157183fdc23900fedd4aaab0b94db2af188d27d91 +size 56130 diff --git a/game/sounds/ghost2.ogg b/game/sounds/ghost2.ogg new file mode 100644 index 00000000..2643ef8e --- /dev/null +++ b/game/sounds/ghost2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab4776fd0d81255e223b49e16d2a77a5124ca663fa0f8142f148de01eb80469d +size 38337 diff --git a/game/sounds/giggle.ogg b/game/sounds/giggle.ogg new file mode 100644 index 00000000..ec8e0061 --- /dev/null +++ b/game/sounds/giggle.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:605126d0aa516b77b6d26b2df6cfdf2c5d01a51377afdaa792a4bc81172077b8 +size 17237 diff --git a/game/sounds/giggle2.ogg b/game/sounds/giggle2.ogg new file mode 100644 index 00000000..617ad7e5 --- /dev/null +++ b/game/sounds/giggle2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5fda45262d0c0a5db68926ebf25884b51b2eefb9770ab6d0229ee5de709bea03 +size 15065 diff --git a/game/sounds/giggle2_loud.ogg b/game/sounds/giggle2_loud.ogg new file mode 100644 index 00000000..6b6c3a05 --- /dev/null +++ b/game/sounds/giggle2_loud.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3c27f59ff80247af39f0397b4f26c6d36e54a9be9e3afd223b1619ddcf5bc30 +size 16605 diff --git a/game/sounds/giggle3.ogg b/game/sounds/giggle3.ogg new file mode 100644 index 00000000..26681705 --- /dev/null +++ b/game/sounds/giggle3.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:88292ad7d84dd839e8901b1e5cc98c85a25d8a917c430951f3d3ea2c78f68b85 +size 17651 diff --git a/game/sounds/glass_break.ogg b/game/sounds/glass_break.ogg new file mode 100644 index 00000000..59988ee5 --- /dev/null +++ b/game/sounds/glass_break.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:490c09c81ee6a9718b0bee95073f126130eb96f60dc0b5bb50cd09566bfa6eeb +size 18769 diff --git a/game/sounds/glass_shatter.ogg b/game/sounds/glass_shatter.ogg new file mode 100644 index 00000000..9d97dec8 --- /dev/null +++ b/game/sounds/glass_shatter.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c419ecf1ee1edcd8cab408467cc26ccc06306ddb237143f8fdef30ffe5f75798 +size 13330 diff --git a/game/sounds/gltch.ogg b/game/sounds/gltch.ogg new file mode 100644 index 00000000..329ae387 --- /dev/null +++ b/game/sounds/gltch.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c88f961c5fc52e589811017646e01afc93fcfd67dd6270fa8da8225a7e8b8bad +size 15518 diff --git a/game/sounds/groan.ogg b/game/sounds/groan.ogg new file mode 100644 index 00000000..7a8aabbd --- /dev/null +++ b/game/sounds/groan.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3280d884ba67d03edebd6a277a3d24594f80b39a4565ef2af4a64f3ecdc2452 +size 19389 diff --git a/game/sounds/gulp.ogg b/game/sounds/gulp.ogg new file mode 100644 index 00000000..85217e83 --- /dev/null +++ b/game/sounds/gulp.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a15c19af1fecf716b942f2cc92a3784d16bebd280b6d3571b20c447c66805990 +size 5788 diff --git a/game/sounds/hiccup_fem.ogg b/game/sounds/hiccup_fem.ogg new file mode 100644 index 00000000..5870eddd --- /dev/null +++ b/game/sounds/hiccup_fem.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:937d091c5c7cd4070a5588bed7915c05bbc74ee506ae7cafa3ec2555d90c64b1 +size 16666 diff --git a/game/sounds/hiss_girl.ogg b/game/sounds/hiss_girl.ogg new file mode 100644 index 00000000..0a209a79 --- /dev/null +++ b/game/sounds/hiss_girl.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:561fc63dca67858d0a2f73002a22cbbd4639fe9689e0e0cf42e7ed9a6e74ecac +size 8876 diff --git a/game/sounds/hiss_girl_fail.ogg b/game/sounds/hiss_girl_fail.ogg new file mode 100644 index 00000000..dc00a4eb --- /dev/null +++ b/game/sounds/hiss_girl_fail.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:58c172b483b73ed7a8220c264c21679f276b374bbc63c2a74737ac8c531d5bac +size 9050 diff --git a/game/sounds/hmm1.ogg b/game/sounds/hmm1.ogg new file mode 100644 index 00000000..042f2875 --- /dev/null +++ b/game/sounds/hmm1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d7f6abbb06a530f96014c25861d0f6521ae6cb0e7ee82f8e42f177fea668576e +size 9942 diff --git a/game/sounds/hmm2.ogg b/game/sounds/hmm2.ogg new file mode 100644 index 00000000..310b4bef --- /dev/null +++ b/game/sounds/hmm2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1af6f283f162769716d8acbf070073c2cfd052730588187bda0954b11f01ddf3 +size 12191 diff --git a/game/sounds/hmm3.ogg b/game/sounds/hmm3.ogg new file mode 100644 index 00000000..b3c9cf01 --- /dev/null +++ b/game/sounds/hmm3.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7d0cffdc045aa5be61b8eb6526fb5ffd7a156062d2ea70eeb07a29358ac397ff +size 9917 diff --git a/game/sounds/iris_run.ogg b/game/sounds/iris_run.ogg new file mode 100644 index 00000000..c6814494 --- /dev/null +++ b/game/sounds/iris_run.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28067edbe264984efbb8057d2e088b93ccdd631fabf5d8b347854c1d7a12ad8e +size 33084 diff --git a/game/sounds/jail_door.ogg b/game/sounds/jail_door.ogg new file mode 100644 index 00000000..cd6abce1 --- /dev/null +++ b/game/sounds/jail_door.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:066da7467caab49dac25fa679c264d366e667cd0297ab562b82ae2c15ca2c45d +size 62109 diff --git a/game/sounds/jazz take 2.ogg b/game/sounds/jazz take 2.ogg new file mode 100644 index 00000000..c7a200d4 --- /dev/null +++ b/game/sounds/jazz take 2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b634657caa88aaaae29b929ca8291581beff8525bff0e660ae699c7790c7f4d7 +size 2122501 diff --git a/game/sounds/jump_on_bed.ogg b/game/sounds/jump_on_bed.ogg new file mode 100644 index 00000000..fca452f8 --- /dev/null +++ b/game/sounds/jump_on_bed.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:945541b7726097190cffa0ed552f5219b33bcb65aa6179f4945d564f4c9ff9c0 +size 66661 diff --git a/game/sounds/jump_shoes.ogg b/game/sounds/jump_shoes.ogg new file mode 100644 index 00000000..4cfeb7d3 --- /dev/null +++ b/game/sounds/jump_shoes.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:93e8a84c4fabdd514af19187a06baa09211f052366b89756e96efed35e8a01d6 +size 10532 diff --git a/game/sounds/kettle.ogg b/game/sounds/kettle.ogg new file mode 100644 index 00000000..5222de5d --- /dev/null +++ b/game/sounds/kettle.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d3f3086cd838a68db412e44ff406b07992453d6a422bc600586f4e774d955a88 +size 75410 diff --git a/game/sounds/kick.ogg b/game/sounds/kick.ogg new file mode 100644 index 00000000..4529859b --- /dev/null +++ b/game/sounds/kick.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b5d7fc3447d36bf4d358cc642aef3401dd4de6cffeacfde3d3b0dd714799dfae +size 13202 diff --git a/game/sounds/killswitch_off.ogg b/game/sounds/killswitch_off.ogg new file mode 100644 index 00000000..9cefc480 --- /dev/null +++ b/game/sounds/killswitch_off.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94c027f2b8018aa782b9ad01900b52e25ee5c2fa82edfb968d53c87be1e1fb5d +size 8923 diff --git a/game/sounds/killswitch_on.ogg b/game/sounds/killswitch_on.ogg new file mode 100644 index 00000000..7a2ebd0b --- /dev/null +++ b/game/sounds/killswitch_on.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2027e1643ef4c1fa9f688585d1eec49ce5e9668f1d44fbb1f1f60a105427dba0 +size 32857 diff --git a/game/sounds/kiss.ogg b/game/sounds/kiss.ogg new file mode 100644 index 00000000..2f9ffaaa --- /dev/null +++ b/game/sounds/kiss.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5a8ba0894799c1845c3c7d6561f2184583b1af6f4e689dc143f17eba52d60a0b +size 17146 diff --git a/game/sounds/knocking.ogg b/game/sounds/knocking.ogg new file mode 100644 index 00000000..fd10a518 --- /dev/null +++ b/game/sounds/knocking.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e83c6abb15b009dc53b50f8656c15856511ab375966037725039d0ffde11f87c +size 11100 diff --git a/game/sounds/knocking2.ogg b/game/sounds/knocking2.ogg new file mode 100644 index 00000000..66d31b29 --- /dev/null +++ b/game/sounds/knocking2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:04e12b9f35b13e832758dab46324e759be644b08bd52bbb1e04461e75b0c8139 +size 8913 diff --git a/game/sounds/knocking_loud.ogg b/game/sounds/knocking_loud.ogg new file mode 100644 index 00000000..4840ea1d --- /dev/null +++ b/game/sounds/knocking_loud.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f595ec46812e529aa7cb3f2dc82e6c31e50cc379e90de0ecb92b41e2f068d5a2 +size 9552 diff --git a/game/sounds/kung-fu-punch.ogg b/game/sounds/kung-fu-punch.ogg new file mode 100644 index 00000000..6baf3211 --- /dev/null +++ b/game/sounds/kung-fu-punch.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ec6ac15c5151ece97ae44f55754ae58d58f3bef8f06ac28e909ce52ca3bd1c1 +size 9057 diff --git a/game/sounds/level_failed.ogg b/game/sounds/level_failed.ogg new file mode 100644 index 00000000..cab7d10d --- /dev/null +++ b/game/sounds/level_failed.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:bac3782a49b98ac1442a5b079514df10902d12f8d98980306f6dffd942563819 +size 143084 diff --git a/game/sounds/locked.ogg b/game/sounds/locked.ogg new file mode 100644 index 00000000..ac4eb18f --- /dev/null +++ b/game/sounds/locked.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a82b4050496c44978ecdb37dbe432fd3e8c64f1dac8d02d2a47d32892c414ba +size 16885 diff --git a/game/sounds/magic1.ogg b/game/sounds/magic1.ogg new file mode 100644 index 00000000..4828a7e3 --- /dev/null +++ b/game/sounds/magic1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6be6b7a010632f02a3ed431496c4592465757bb03ced48c9964707754265b41b +size 83721 diff --git a/game/sounds/magic2.ogg b/game/sounds/magic2.ogg new file mode 100644 index 00000000..ed2e6f82 --- /dev/null +++ b/game/sounds/magic2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3996abb4b9367a6c497598f950fc1ec928d4bc9a30f406dfa0a9ac94434e8b5a +size 12302 diff --git a/game/sounds/magic3.ogg b/game/sounds/magic3.ogg new file mode 100644 index 00000000..1c9daf68 --- /dev/null +++ b/game/sounds/magic3.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c42b5f6bf6ce4bbcd0f98105cc527b7ef64b9cf9556e254ac37f8f2696db5283 +size 36164 diff --git a/game/sounds/magic4.ogg b/game/sounds/magic4.ogg new file mode 100644 index 00000000..3c8f1afd --- /dev/null +++ b/game/sounds/magic4.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e9acc14074717938dfdc3160951e99862f78b8edde19c17b6c0a7b3c2716223 +size 103419 diff --git a/game/sounds/masturbate.ogg b/game/sounds/masturbate.ogg new file mode 100644 index 00000000..48bbf66b --- /dev/null +++ b/game/sounds/masturbate.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b53d524f5717a8650e824ee1a28a07cd855c67402be7142808895c67017f3c5c +size 23795 diff --git a/game/sounds/meow.ogg b/game/sounds/meow.ogg new file mode 100644 index 00000000..b843c555 --- /dev/null +++ b/game/sounds/meow.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:19cb89785e28d2854de6cb6e6bb8d83878af0eb57a0e0b1630ea11cb501ca7a9 +size 7092 diff --git a/game/sounds/microphone_feedback.ogg b/game/sounds/microphone_feedback.ogg new file mode 100644 index 00000000..3615db84 --- /dev/null +++ b/game/sounds/microphone_feedback.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b20de525762c2e247b5ef18a6f3fb18fbab7da47a0068ad7fe94fb549a26243f +size 38185 diff --git a/game/sounds/microphone_feedback2.ogg b/game/sounds/microphone_feedback2.ogg new file mode 100644 index 00000000..25cbaba2 --- /dev/null +++ b/game/sounds/microphone_feedback2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:493b7120fef16db5ab4a7c1f6d929108e2d4bf11df3533e4e54a3221dee5c94d +size 27791 diff --git a/game/sounds/mon.ogg b/game/sounds/mon.ogg new file mode 100644 index 00000000..db3a0c4b --- /dev/null +++ b/game/sounds/mon.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89b7714bb48798146faa5675fc0a8149c16a70027fcd046dbe9a9936b3cecb73 +size 40164 diff --git a/game/sounds/mondead.ogg b/game/sounds/mondead.ogg new file mode 100644 index 00000000..d0a9c39e --- /dev/null +++ b/game/sounds/mondead.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dac621a1996e13bd59c54d4c50cde5b7eaeead9e9011e7521a705b340e732590 +size 24654 diff --git a/game/sounds/money.ogg b/game/sounds/money.ogg new file mode 100644 index 00000000..f8bde642 --- /dev/null +++ b/game/sounds/money.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2de002d2b63ccfae4e5cd7b4d6780230ecaa21ccebe2d3db07a13c24c6240d7 +size 14374 diff --git a/game/sounds/money_thud.ogg b/game/sounds/money_thud.ogg new file mode 100644 index 00000000..8c667aea --- /dev/null +++ b/game/sounds/money_thud.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:382bdf2e899749983d3bf1d1566fb2c4615f5bc31bac3873a50fd9e26c8cb086 +size 18790 diff --git a/game/sounds/murmur.ogg b/game/sounds/murmur.ogg new file mode 100644 index 00000000..e82af3a7 --- /dev/null +++ b/game/sounds/murmur.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3d4b8acb448fac7569084a622d66be203d6210efa1c535887b33270cfc31590e +size 93270 diff --git a/game/sounds/night.ogg b/game/sounds/night.ogg new file mode 100644 index 00000000..e00ff54f --- /dev/null +++ b/game/sounds/night.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ce967cd4391904f59bfd04890d342f4d5f0f35825492f9c8e02667b56e8d7f9e +size 347592 diff --git a/game/sounds/opp.ogg b/game/sounds/opp.ogg new file mode 100644 index 00000000..a98ffb68 --- /dev/null +++ b/game/sounds/opp.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:82ec75aa5ad6f049d257fc5c19bae82ece6fec5b7be32c662a4904c5142eabe1 +size 32220 diff --git a/game/sounds/outskirts.ogg b/game/sounds/outskirts.ogg new file mode 100644 index 00000000..5e77061b --- /dev/null +++ b/game/sounds/outskirts.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89f46516fb799e03d1359c5200e5ff03c244c1591438b9fa46443619d20948cb +size 1477277 diff --git a/game/sounds/outskirts_tower.ogg b/game/sounds/outskirts_tower.ogg new file mode 100644 index 00000000..d98b32a7 --- /dev/null +++ b/game/sounds/outskirts_tower.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c518e6d923b73d9e56876450977e0ac0560bc979bfb3f04d8edd8ebedd4756f2 +size 304348 diff --git a/game/sounds/owl.ogg b/game/sounds/owl.ogg new file mode 100644 index 00000000..9cf9281c --- /dev/null +++ b/game/sounds/owl.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b153ebd9bd00a34051ebd0b3aa16b8fcf85563dac1d484fc3858588a02ab0caa +size 52496 diff --git a/game/sounds/pageflip.ogg b/game/sounds/pageflip.ogg new file mode 100644 index 00000000..0d9a4994 --- /dev/null +++ b/game/sounds/pageflip.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f88c91a3e4e1c1ded2a4276c8f163014f6ec00744caad2dfb24110d1a28a79d +size 11140 diff --git a/game/sounds/pageflipback.ogg b/game/sounds/pageflipback.ogg new file mode 100644 index 00000000..14dc0828 --- /dev/null +++ b/game/sounds/pageflipback.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3c4b1e77cfd1d530727c0fc2bc4611221f5ddc822ba2f02a80a8fc976c014a5 +size 19999 diff --git a/game/sounds/paper_rustle.ogg b/game/sounds/paper_rustle.ogg new file mode 100644 index 00000000..3a3340ed --- /dev/null +++ b/game/sounds/paper_rustle.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5ffcfb20c7681dcd5f17226d00e9c1c3a228d0f44d63936414e1c00a30164f02 +size 38750 diff --git a/game/sounds/pistol1.ogg b/game/sounds/pistol1.ogg new file mode 100644 index 00000000..7f30131f --- /dev/null +++ b/game/sounds/pistol1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:106813c9b9d9badfde7bad53c92832765947c91ee7c84549711c1aa437322250 +size 70908 diff --git a/game/sounds/pistol2.ogg b/game/sounds/pistol2.ogg new file mode 100644 index 00000000..622fb030 --- /dev/null +++ b/game/sounds/pistol2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e1fd0db18afcdef08a6d87b94891c6aa7c93eb02491f2211bd413107313b4c48 +size 51811 diff --git a/game/sounds/plant_burst.ogg b/game/sounds/plant_burst.ogg new file mode 100644 index 00000000..e006680d --- /dev/null +++ b/game/sounds/plant_burst.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2df2bb09bfc52adfabf11f21841a543480d39135fcc705b8726ef2b6d521ae20 +size 32428 diff --git a/game/sounds/plant_grab.ogg b/game/sounds/plant_grab.ogg new file mode 100644 index 00000000..0a03ac3e --- /dev/null +++ b/game/sounds/plant_grab.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b68d518835c9bb5979294c0937d4b397bd467404a6e194a367b7ff4e1f78b17a +size 20548 diff --git a/game/sounds/plant_slithering.ogg b/game/sounds/plant_slithering.ogg new file mode 100644 index 00000000..9126b73a --- /dev/null +++ b/game/sounds/plant_slithering.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7af09a2c1f826771e9bdb2000d8ea12e25e4230d170db790c7b0a3bfffea3e52 +size 24583 diff --git a/game/sounds/plop.ogg b/game/sounds/plop.ogg new file mode 100644 index 00000000..85eb6dfb --- /dev/null +++ b/game/sounds/plop.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7b3ecd41642e490ff18da3c3ff9e4924ca4db78add2bef6078c104e195ce8fb +size 9024 diff --git a/game/sounds/plushie.ogg b/game/sounds/plushie.ogg new file mode 100644 index 00000000..3106d1c1 --- /dev/null +++ b/game/sounds/plushie.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57ed9d6fdfacd7c2f84d532f3c111978f9a7640cba817c7bccf8ca5546fbd837 +size 14855 diff --git a/game/sounds/pop01.ogg b/game/sounds/pop01.ogg new file mode 100644 index 00000000..0987e376 --- /dev/null +++ b/game/sounds/pop01.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5762ff59c53148c0c4a2fdb0703546cdadc1d191df7c3e568525f4c427c3344 +size 7247 diff --git a/game/sounds/pop02.ogg b/game/sounds/pop02.ogg new file mode 100644 index 00000000..84bed6b0 --- /dev/null +++ b/game/sounds/pop02.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca2578e9782846ad4cb28fcef68019ee862c7bd889d078c36f09a24dcfdac256 +size 7632 diff --git a/game/sounds/pop03.ogg b/game/sounds/pop03.ogg new file mode 100644 index 00000000..48d05c1a --- /dev/null +++ b/game/sounds/pop03.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:802724c0a71f7dad9839414a896b28b5662b07361e61a5fe58f6393862a61abe +size 8991 diff --git a/game/sounds/pulse.ogg b/game/sounds/pulse.ogg new file mode 100644 index 00000000..1d01bfb1 --- /dev/null +++ b/game/sounds/pulse.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d11ef9ae25eee9ce1ca148cb1301be9f8048b22adcbb961444d39a00536b3822 +size 8921 diff --git a/game/sounds/punch01.ogg b/game/sounds/punch01.ogg new file mode 100644 index 00000000..9551ca59 --- /dev/null +++ b/game/sounds/punch01.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3c0afd304dadf228d0954662daa6d5b252b31af05c2ae88750c82974cfd5177 +size 10577 diff --git a/game/sounds/punch02.ogg b/game/sounds/punch02.ogg new file mode 100644 index 00000000..11600ec6 --- /dev/null +++ b/game/sounds/punch02.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:abedf8278be2e076530cf8edf0318e82eeb69c75a8de229a0d1eda09de76d2f6 +size 11693 diff --git a/game/sounds/push_on_bed.ogg b/game/sounds/push_on_bed.ogg new file mode 100644 index 00000000..ae4b5f19 --- /dev/null +++ b/game/sounds/push_on_bed.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d6eed071c479ed647cd064b45684b539dac35ce24491cc94a27433bd90e535a6 +size 22774 diff --git a/game/sounds/remedy01.ogg b/game/sounds/remedy01.ogg new file mode 100644 index 00000000..0a295784 --- /dev/null +++ b/game/sounds/remedy01.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7a680e8805006b565897355eac90eaf744f8c7a475a31de917fc26ab66642e3 +size 17039 diff --git a/game/sounds/remedy02.ogg b/game/sounds/remedy02.ogg new file mode 100644 index 00000000..857e2666 --- /dev/null +++ b/game/sounds/remedy02.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a3c6f4da407913a760b03c74bb7bce8c1356c50e5c27ad6efe7187efcde983f2 +size 21537 diff --git a/game/sounds/rumble.ogg b/game/sounds/rumble.ogg new file mode 100644 index 00000000..c4996f78 --- /dev/null +++ b/game/sounds/rumble.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aaf9075f81d277d589e0bfc9cf2fcde1f12bc1b47ccfe7b71c9ddf80fd635b04 +size 44693 diff --git a/game/sounds/run.ogg b/game/sounds/run.ogg new file mode 100644 index 00000000..cd3143fc --- /dev/null +++ b/game/sounds/run.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a1819e62b3706a6dcbca97733bf65feca53d04a4e27763f04384d2a0369280f +size 33084 diff --git a/game/sounds/run_02.ogg b/game/sounds/run_02.ogg new file mode 100644 index 00000000..c99e912e --- /dev/null +++ b/game/sounds/run_02.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f75e0fb63a94c06ecd0de6f8a6bd32823bc81a68e2873949c747c0d291fd9f54 +size 19725 diff --git a/game/sounds/run_03.ogg b/game/sounds/run_03.ogg new file mode 100644 index 00000000..d19a03ef --- /dev/null +++ b/game/sounds/run_03.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f6edabdc1e9626df8c6280b0907b1b04470067a7b0b10088ac07f5bb926ccfb +size 32799 diff --git a/game/sounds/run_04.ogg b/game/sounds/run_04.ogg new file mode 100644 index 00000000..1242ed67 --- /dev/null +++ b/game/sounds/run_04.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:64dc84c67111917cf475c878914b237d948552468008a99919e03aa0378c6b31 +size 35018 diff --git a/game/sounds/rustling.ogg b/game/sounds/rustling.ogg new file mode 100644 index 00000000..03c8117a --- /dev/null +++ b/game/sounds/rustling.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9aadc801203d17235943ae63a908c7f46d7c61b9402e15256236f43a8e95aea0 +size 44904 diff --git a/game/sounds/scissors.ogg b/game/sounds/scissors.ogg new file mode 100644 index 00000000..d41bf5e2 --- /dev/null +++ b/game/sounds/scissors.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e6dd7e6a1c67b1f7f3768a66992c03bddc430abc99f1f4078cad406df4652fdd +size 16226 diff --git a/game/sounds/scratch.ogg b/game/sounds/scratch.ogg new file mode 100644 index 00000000..80430578 --- /dev/null +++ b/game/sounds/scratch.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f25b2a48685869e60d73b4b0b84488da6aadeece782d7de122c72c2c9f46c8a0 +size 13784 diff --git a/game/sounds/scribble.ogg b/game/sounds/scribble.ogg new file mode 100644 index 00000000..019f0b01 --- /dev/null +++ b/game/sounds/scribble.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:02fe6523d13c65201cd65fae9515be90376328172afcf1b20dd0940e8cdbd9b0 +size 18283 diff --git a/game/sounds/scroll.ogg b/game/sounds/scroll.ogg new file mode 100644 index 00000000..4399477f --- /dev/null +++ b/game/sounds/scroll.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4e6ac895cc2ebe5d2ba37a81cdf8bbacc8b2f3b54964e2d4c64d6ca8a3b2e9b +size 16474 diff --git a/game/sounds/sexloop.ogg b/game/sounds/sexloop.ogg new file mode 100644 index 00000000..bb138e17 --- /dev/null +++ b/game/sounds/sexloop.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:717eb6ad3ec1c7718f078810e842df6fbf7b445fd8471c1f5f21c683a51ae1d6 +size 10178 diff --git a/game/sounds/sexloopfast.ogg b/game/sounds/sexloopfast.ogg new file mode 100644 index 00000000..c7e4576d --- /dev/null +++ b/game/sounds/sexloopfast.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6abe74b5cdc5d6889fae8e26378cd9885d3c2df563f156fef439c6407ce3c394 +size 8938 diff --git a/game/sounds/sexloopveryfast.ogg b/game/sounds/sexloopveryfast.ogg new file mode 100644 index 00000000..6bd730f7 --- /dev/null +++ b/game/sounds/sexloopveryfast.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a46a6241e2c3d59819c9859e8ab164445f4d6111d46e0e04391a1e0587ae8432 +size 7774 diff --git a/game/sounds/shush.ogg b/game/sounds/shush.ogg new file mode 100644 index 00000000..80c738e8 --- /dev/null +++ b/game/sounds/shush.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fb7552be47a684da8029ee9944a6c0d088bcba713508f626a5ced8dae587190 +size 10493 diff --git a/game/sounds/sit_on_bed.ogg b/game/sounds/sit_on_bed.ogg new file mode 100644 index 00000000..ae55d390 --- /dev/null +++ b/game/sounds/sit_on_bed.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf78bbd24b18064f8a7cba439c48100347a6d4f74dc641479a8f97782c1cc7e1 +size 18118 diff --git a/game/sounds/slap.ogg b/game/sounds/slap.ogg new file mode 100644 index 00000000..037187ac --- /dev/null +++ b/game/sounds/slap.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75bb711ecaf0b49b111b4130aa5b79783c1b19f0fe6734c8c030e04102dee50a +size 11302 diff --git a/game/sounds/slap_02.ogg b/game/sounds/slap_02.ogg new file mode 100644 index 00000000..a8d01ca7 --- /dev/null +++ b/game/sounds/slap_02.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b35201fad13cb1eebf8248e9a74e33b9d368c1de4b51ed6d39fb56e1f9f31701 +size 19416 diff --git a/game/sounds/slap_03.ogg b/game/sounds/slap_03.ogg new file mode 100644 index 00000000..4796d919 --- /dev/null +++ b/game/sounds/slap_03.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ab42dc7ab119325f3212f42dd4b1e24a64717fa997c232ccc25c4605cb2d6e3f +size 6513 diff --git a/game/sounds/slap_04.ogg b/game/sounds/slap_04.ogg new file mode 100644 index 00000000..1a5bcc40 --- /dev/null +++ b/game/sounds/slap_04.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d86f43aac6ef03e6c14bb9524f86f65d18456e5fd14bea0566bbeaf6091a50a +size 5530 diff --git a/game/sounds/slash.ogg b/game/sounds/slash.ogg new file mode 100644 index 00000000..00f1fd83 --- /dev/null +++ b/game/sounds/slash.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3ea34a6d97a4151f3c5642a3dff56cb1a879f85486a51df217c3f924b4aa2d30 +size 9957 diff --git a/game/sounds/slick_01.ogg b/game/sounds/slick_01.ogg new file mode 100644 index 00000000..32ebf524 --- /dev/null +++ b/game/sounds/slick_01.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d36cfbfa46e3f551d242174509fc361af9a28dd357f604b6f0caa82d683f3f96 +size 10815 diff --git a/game/sounds/slick_02.ogg b/game/sounds/slick_02.ogg new file mode 100644 index 00000000..3d1f1c70 --- /dev/null +++ b/game/sounds/slick_02.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:917e0c50f29927f9a7eb4c3995c3cfcb5e753db70e5139aeee1c781f268ee4b1 +size 11777 diff --git a/game/sounds/slick_pop.ogg b/game/sounds/slick_pop.ogg new file mode 100644 index 00000000..bb3c0226 --- /dev/null +++ b/game/sounds/slick_pop.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9193e6d11eb0735369a1ae1101074fdcd0dcc94d221c1c85bcbc7c8d1c68e869 +size 5973 diff --git a/game/sounds/slickloop.ogg b/game/sounds/slickloop.ogg new file mode 100644 index 00000000..18f868af --- /dev/null +++ b/game/sounds/slickloop.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:66db6a54bb51b7b52207b12f8ac7229a931b3489e7cb8a6d49db59b36b1a0197 +size 9280 diff --git a/game/sounds/slickloopfast.ogg b/game/sounds/slickloopfast.ogg new file mode 100644 index 00000000..ea5baf15 --- /dev/null +++ b/game/sounds/slickloopfast.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3f04bed61cd4082697de1433c04846303b57f9413c1c16db42c4c49cad19f263 +size 7864 diff --git a/game/sounds/slickloopveryfast.ogg b/game/sounds/slickloopveryfast.ogg new file mode 100644 index 00000000..e6f36a9e --- /dev/null +++ b/game/sounds/slickloopveryfast.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a45775568ef8baa69ead42c22521f1e9659bea4619b0398262275b31dda6be1 +size 6994 diff --git a/game/sounds/sniff.ogg b/game/sounds/sniff.ogg new file mode 100644 index 00000000..1999663b --- /dev/null +++ b/game/sounds/sniff.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c15b14b9f2697c94f2eada3382775c0643bc481782a9be4a6e68ca5aa3f75a6f +size 9607 diff --git a/game/sounds/snitchloop.ogg b/game/sounds/snitchloop.ogg new file mode 100644 index 00000000..c5cbdfb9 --- /dev/null +++ b/game/sounds/snitchloop.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ab52802775fc67c50b5b172b257012879cd65d15f465d02bcf01c66686b6369 +size 539889 diff --git a/game/sounds/snore1.ogg b/game/sounds/snore1.ogg new file mode 100644 index 00000000..14d7b5cd --- /dev/null +++ b/game/sounds/snore1.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:053002255adbe00f71f20f58b891712a6460122b5d6b8f499ab9933e2d3cba2f +size 33094 diff --git a/game/sounds/snore2.ogg b/game/sounds/snore2.ogg new file mode 100644 index 00000000..cb8f6514 --- /dev/null +++ b/game/sounds/snore2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dc9d2cd6be581b775c7baa54c577b3e9952f8ae77d0254f7ca1721eb6b886d83 +size 38666 diff --git a/game/sounds/snore3.ogg b/game/sounds/snore3.ogg new file mode 100644 index 00000000..3e5e9211 --- /dev/null +++ b/game/sounds/snore3.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0a085b65838ee9f5cb96b71db60ca328cb0ad566befee03343ffd5a3cf30af4b +size 34582 diff --git a/game/sounds/soft_wind.ogg b/game/sounds/soft_wind.ogg new file mode 100644 index 00000000..531324bc --- /dev/null +++ b/game/sounds/soft_wind.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a01af506be9161dc81bcbdee76ca62b1dcd5837968163fe2950088d9ff9d8cd +size 410985 diff --git a/game/sounds/spit.ogg b/game/sounds/spit.ogg new file mode 100644 index 00000000..1865a229 --- /dev/null +++ b/game/sounds/spit.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ff7a5f94e803cce40b7de672d8db76a68538e4c41f9e386922baac6ff02e2873 +size 13501 diff --git a/game/sounds/squelch.ogg b/game/sounds/squelch.ogg new file mode 100644 index 00000000..6228f4aa --- /dev/null +++ b/game/sounds/squelch.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:24307e06a1bac4ed155025376dcbe842db1dbd1229a540ce7a0f2143b8e8781c +size 12146 diff --git a/game/sounds/start.ogg b/game/sounds/start.ogg new file mode 100644 index 00000000..d7d1e82b --- /dev/null +++ b/game/sounds/start.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2053221e57ad66547dd41ca817fa5c02abe0329f6dadbd15bce0db0879a4df25 +size 68989 diff --git a/game/sounds/steps_grass.ogg b/game/sounds/steps_grass.ogg new file mode 100644 index 00000000..b1403af9 --- /dev/null +++ b/game/sounds/steps_grass.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:af8ce321b70a8f2159f89a6d8573beebd845c37191a3423489d3a9ac303b021a +size 104761 diff --git a/game/sounds/storm.ogg b/game/sounds/storm.ogg new file mode 100644 index 00000000..cc5c9923 --- /dev/null +++ b/game/sounds/storm.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4420bdf2fc0c7bb091732f1f6a98b39fa1a2e069c6764ee43f25712625b0683b +size 588961 diff --git a/game/sounds/tension.ogg b/game/sounds/tension.ogg new file mode 100644 index 00000000..8bf56cbd --- /dev/null +++ b/game/sounds/tension.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7a446dbefdfcbb731c35f83b22180d9e13444eed6a359ff3e185c4c8743665dc +size 36649 diff --git a/game/sounds/thunder.ogg b/game/sounds/thunder.ogg new file mode 100644 index 00000000..faf36b84 --- /dev/null +++ b/game/sounds/thunder.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:06d3cb3ac2b44b10aeb584ec35a7932997c17e8e7ffd2ecd3221b51326b9729c +size 185547 diff --git a/game/sounds/thunder_2.ogg b/game/sounds/thunder_2.ogg new file mode 100644 index 00000000..7146ed7d --- /dev/null +++ b/game/sounds/thunder_2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e2df4abe9af3eca8d4b4231ac3e71d46cb56bcc43df8a39cb474e6bd52a689f1 +size 36085 diff --git a/game/sounds/tiger.ogg b/game/sounds/tiger.ogg new file mode 100644 index 00000000..ff18eee4 --- /dev/null +++ b/game/sounds/tiger.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b9bea3b1c8b5094f5daabcb3ad9bf8f3a153a5f970ac51d6f6db01e251569b7 +size 30729 diff --git a/game/sounds/vs_hermione.ogg b/game/sounds/vs_hermione.ogg new file mode 100644 index 00000000..93910dbe --- /dev/null +++ b/game/sounds/vs_hermione.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:51f64bd7e6146a667a4d6bf8126bf7c0d83519d7c494daa52ebfc4c02f3c8f65 +size 197792 diff --git a/game/sounds/wand_drop.ogg b/game/sounds/wand_drop.ogg new file mode 100644 index 00000000..dfa17d85 --- /dev/null +++ b/game/sounds/wand_drop.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:83e9d3381f1e33e883d0460664d2d924857f59ea379cccb5c15055073b64d83a +size 11093 diff --git a/game/sounds/whistle.ogg b/game/sounds/whistle.ogg new file mode 100644 index 00000000..061a91d4 --- /dev/null +++ b/game/sounds/whistle.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fb04043e06a3ee2fd3f399822c97361d0b2feed3e85ff653b394f9c7fffe36f +size 9791 diff --git a/game/sounds/win.ogg b/game/sounds/win.ogg new file mode 100644 index 00000000..311222d1 --- /dev/null +++ b/game/sounds/win.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0c5ae8fb500ec2ba798a0ef55ca85aec0002d8fa7c4e11bf5a18c989502caee9 +size 44672 diff --git a/game/sounds/win2.ogg b/game/sounds/win2.ogg new file mode 100644 index 00000000..97abcd4e --- /dev/null +++ b/game/sounds/win2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f79a6b2edb6a07ca7efcf386e35c5c289c0745c45d79d520ad7b809da07871b +size 44524 diff --git a/game/sounds/win_03.ogg b/game/sounds/win_03.ogg new file mode 100644 index 00000000..71a95f52 --- /dev/null +++ b/game/sounds/win_03.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e0cc63ec077c85bbeddd6e25cd190bda8ca405cb6607cc06106b7354bbb17174 +size 14800 diff --git a/game/sounds/win_04.ogg b/game/sounds/win_04.ogg new file mode 100644 index 00000000..0926dfe6 --- /dev/null +++ b/game/sounds/win_04.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f74924b71306a02a8cba5d2407b13917439cdc3c02f7f89957dc2e7d6a9bd3e7 +size 8271 diff --git a/game/sounds/wind_long_loop.ogg b/game/sounds/wind_long_loop.ogg new file mode 100644 index 00000000..e68dde28 --- /dev/null +++ b/game/sounds/wind_long_loop.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1efac145072213d6dd31884100ff8abc69b39fc6c08b622c19f530006fb45af0 +size 2150549 diff --git a/game/sounds/wolf_whistle.ogg b/game/sounds/wolf_whistle.ogg new file mode 100644 index 00000000..aa39247c --- /dev/null +++ b/game/sounds/wolf_whistle.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e688d429bc05d2f47ffa9a44f91e3dbb48d05b530a899c9095cc7151a511fa8f +size 24776 diff --git a/game/sounds/wolf_whistle2.ogg b/game/sounds/wolf_whistle2.ogg new file mode 100644 index 00000000..be9ddf30 --- /dev/null +++ b/game/sounds/wolf_whistle2.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4db88b63ec05ae9a3ce6b701784c9a1ea64567d76f0a3415cb8134405ff5f73b +size 10598 diff --git a/game/sounds/woosh.ogg b/game/sounds/woosh.ogg new file mode 100644 index 00000000..98ac3d77 --- /dev/null +++ b/game/sounds/woosh.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:05dde58399c686713ff2a18ce1c65bd0c2a864d4f7dd16807012f58a433d81cb +size 10102 diff --git a/game/sounds/wrestling_bell.ogg b/game/sounds/wrestling_bell.ogg new file mode 100644 index 00000000..c8685f19 --- /dev/null +++ b/game/sounds/wrestling_bell.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:537e22185e9f73b79d22f2b4e0b4c35174bd6c5ffeca458168f06bbecb691061 +size 81474 diff --git a/game/sounds/zipper.ogg b/game/sounds/zipper.ogg new file mode 100644 index 00000000..8485f58d --- /dev/null +++ b/game/sounds/zipper.ogg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08b6ae7e254bed3399a2325768d3b3085eb24326f28ec65d83d519dc8c12079c +size 14983 diff --git a/icon.icns b/icon.icns new file mode 100644 index 00000000..54a9e36d --- /dev/null +++ b/icon.icns @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5c99e06f2bd7f947b1021a1423e73f8d141c0b90314723945955a535237a330 +size 137889 diff --git a/icon.ico b/icon.ico new file mode 100644 index 00000000..40524dae --- /dev/null +++ b/icon.ico @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5dd2eaec2f74c7288452aeb848f7719835a6ef2459f84fbf41fe9e9a3d8cd01a +size 327240